Hello:
For a time this evening, the errors here were very much like those
Amy Roh encountered on her way to successfully an earlier version of
Roller a home on GlassFish.
The fact that one of the error messages I saw was superficially the
same one does not offer me the same solution, however, and matters
got worse.
The last stack trace recorded here amid the install's deterioration was:
--------------------------------
Stack trace below
______________________________________
INFO 2007-05-25 02:15:06,671 IndexManagerImpl:<init> - index dir: /
Users/georgefrink/roller_data2/search-index
WARN 2007-05-25 02:15:06,712 JDBCExceptionReporter:logExceptions -
SQL Error: 1054, SQLState: 42S22
ERROR 2007-05-25 02:15:06,713 JDBCExceptionReporter:logExceptions -
Unknown column 'this_.autoenabled' in 'field list'
FATAL 2007-05-25 02:15:06,718 RollerContext:contextInitialized -
RollerContext initialization failed
org.apache.roller.RollerException
at
org.apache.roller.business.hibernate.HibernatePingTargetManagerImpl.getC
ommonPingTargets(HibernatePingTargetManagerImpl.java:209)
at
org.apache.roller.config.PingConfig.initializeCommonTargets
(PingConfig.java:194)
at
org.apache.roller.ui.core.RollerContext.initializePingFeatures
(RollerContext.java:283)
at org.apache.roller.ui.core.RollerContext.contextInitialized
(RollerContext.java:185)
at org.apache.catalina.core.StandardContext.listenerStart
(StandardContext.java:3764)
at org.apache.catalina.core.StandardContext.start
(StandardContext.java:4216)
at org.apache.catalina.core.ContainerBase.addChildInternal
(ContainerBase.java:760)
at org.apache.catalina.core.ContainerBase.addChild
(ContainerBase.java:740)
at org.apache.catalina.core.StandardHost.addChild
(StandardHost.java:544)
at org.apache.catalina.startup.HostConfig.deployDescriptor
(HostConfig.java:626)
at org.apache.catalina.startup.HostConfig.deployDescriptors
(HostConfig.java:553)
at org.apache.catalina.startup.HostConfig.deployApps
(HostConfig.java:488)
at org.apache.catalina.startup.HostConfig.start
(HostConfig.java:1138)
at org.apache.catalina.startup.HostConfig.lifecycleEvent
(HostConfig.java:311)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent
(LifecycleSupport.java:120)
at org.apache.catalina.core.ContainerBase.start
(ContainerBase.java:1022)
at org.apache.catalina.core.StandardHost.start
(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start
(ContainerBase.java:1014)
at org.apache.catalina.core.StandardEngine.start
(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start
(StandardService.java:448)
at org.apache.catalina.core.StandardServer.start
(StandardServer.java:700)
at org.apache.catalina.startup.Catalina.start(Catalina.java:
552)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start
(Bootstrap.java:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:
433)
--- ROOT CAUSE ---
org.hibernate.exception.SQLGrammarException: could not execute query
at org.hibernate.exception.SQLStateConverter.convert
(SQLStateConverter.java:65)
at org.hibernate.exception.JDBCExceptionHelper.convert
(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.doList(Loader.java:2148)
at org.hibernate.loader.Loader.listIgnoreQueryCache
(Loader.java:2029)
at org.hibernate.loader.Loader.list(Loader.java:2024)
at org.hibernate.loader.criteria.CriteriaLoader.list
(CriteriaLoader.java:94)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1552)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283)
at
org.apache.roller.business.hibernate.HibernatePingTargetManagerImpl.getC
ommonPingTargets(HibernatePingTargetManagerImpl.java:207)
at
org.apache.roller.config.PingConfig.initializeCommonTargets
(PingConfig.java:194)
at
org.apache.roller.ui.core.RollerContext.initializePingFeatures
(RollerContext.java:283)
at org.apache.roller.ui.core.RollerContext.contextInitialized
(RollerContext.java:185)
at org.apache.catalina.core.StandardContext.listenerStart
(StandardContext.java:3764)
at org.apache.catalina.core.StandardContext.start
(StandardContext.java:4216)
at org.apache.catalina.core.ContainerBase.addChildInternal
(ContainerBase.java:760)
at org.apache.catalina.core.ContainerBase.addChild
(ContainerBase.java:740)
at org.apache.catalina.core.StandardHost.addChild
(StandardHost.java:544)
at org.apache.catalina.startup.HostConfig.deployDescriptor
(HostConfig.java:626)
at org.apache.catalina.startup.HostConfig.deployDescriptors
(HostConfig.java:553)
at org.apache.catalina.startup.HostConfig.deployApps
(HostConfig.java:488)
at org.apache.catalina.startup.HostConfig.start
(HostConfig.java:1138)
at org.apache.catalina.startup.HostConfig.lifecycleEvent
(HostConfig.java:311)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent
(LifecycleSupport.java:120)
at org.apache.catalina.core.ContainerBase.start
(ContainerBase.java:1022)
at org.apache.catalina.core.StandardHost.start
(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start
(ContainerBase.java:1014)
at org.apache.catalina.core.StandardEngine.start
(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start
(StandardService.java:448)
at org.apache.catalina.core.StandardServer.start
(StandardServer.java:700)
at org.apache.catalina.startup.Catalina.start(Catalina.java:
552)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start
(Bootstrap.java:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:
433)
Caused by: java.sql.SQLException: Unknown column 'this_.autoenabled'
in 'field list'
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2975)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1600)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1695)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3026)
at com.mysql.jdbc.PreparedStatement.executeInternal
(PreparedStatement.java:1137)
at com.mysql.jdbc.PreparedStatement.executeQuery
(PreparedStatement.java:1231)
at
org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery
(DelegatingPreparedStatement.java:92)
at org.hibernate.jdbc.AbstractBatcher.getResultSet
(AbstractBatcher.java:139)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1669)
at org.hibernate.loader.Loader.doQuery(Loader.java:662)
at
org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections
(Loader.java:224)
at org.hibernate.loader.Loader.doList(Loader.java:2145)
... 33 more
INFO 2007-05-25 02:15:06,732 IPBanFilter:init - INIT IPBanFilter
INFO 2007-05-25 02:15:06,735 CompressionFilter:init - Compressed
Output ENABLED
INFO 2007-05-25 02:15:06,743 RequestMappingFilter:init - Request
mapping filter initialized, 1 mappers configured.
INFO 2007-05-25 02:15:07,423 PageServlet:init - Initializing
PageServlet
INFO 2007-05-25 02:15:07,426 WeblogPageCache:<init> - {timeout=3600,
enabled=true, size=400, id=cache.weblogpage}
INFO 2007-05-25 02:15:07,431 CacheManager:<clinit> - Cache Manager
Initialized.
INFO 2007-05-25 02:15:07,432 CacheManager:<clinit> - Cache Factory =
org.apache.roller.util.cache.ExpiringLRUCacheFactoryImpl
INFO 2007-05-25 02:15:07,436 FuturePostingsInvalidationJob:input -
Peeking 3 minutes into the future each pass
INFO 2007-05-25 02:15:07,437 ContinuousWorkerThread:run - future
invalidations thread Started.
INFO 2007-05-25 02:15:07,447 SiteWideCache:<init> - {timeout=1800,
enabled=true, size=50, id=cache.sitewide}
INFO 2007-05-25 02:15:07,448 PageServlet:init - Referrer processing
enabled = true
INFO 2007-05-25 02:15:07,453 FeedServlet:init - Initializing
FeedServlet
INFO 2007-05-25 02:15:07,455 WeblogFeedCache:<init> - {timeout=3600,
enabled=true, size=200, id=cache.weblogfeed}
INFO 2007-05-25 02:15:07,460 ResourceServlet:init - Initializing
ResourceServlet
INFO 2007-05-25 02:15:07,468 SearchServlet:init - Initializing
SearchServlet
INFO 2007-05-25 02:15:07,483 CommentServlet:init - Initializing
CommentServlet
INFO 2007-05-25 02:15:07,485 CommentServlet:init - Comment
Throttling DISABLED
INFO 2007-05-25 02:15:07,488 RSDServlet:init - Initializing RSDServlet
INFO 2007-05-25 02:15:07,493 PlanetFeedServlet:init - Initializing
PlanetRssServlet
INFO 2007-05-25 02:15:07,502 PlanetCache:<init> - Planet cache =
{timeout=1800, enabled=true, size=10, id=cache.planet}
INFO 2007-05-25 02:15:07,506 PreviewResourceServlet:init -
Initializing PreviewResourceServlet
INFO 2007-05-25 02:15:07,519 PreviewServlet:init - Initializing
PreviewServlet
------------------------------------------------------------------------
--------------------------------
Interpretations and recommendations would be appreciated.
Respectfully,
George Frink
On May 24, 2007, at 9:23 AM, Dave wrote:
On 5/24/07, George Frink <[EMAIL PROTECTED]> wrote:
Hello:
Thank you again for the help, Dave.
All is now well.
Just in case someone might benefit from them, a summary of
the
solutions follows.
I'm glad you were able to figure that out. Thanks for writing up
your solution.
(2) Restoring the contents of the "folderassoc" table to
its state
at the time of still-unexplained deletion.
That deletion is pretty frightening. Nobody else has reported that
problem, so I hope it is a one-time fluke or user-error on your part.
Any ideas how it could have happened?
In retrospect, I should have devoted more time to reading and
enjoying the source code which emitted the two errors which
confounded me.
Had I done so as my first recourse, I would have
understood each
error and its associated stack trace as a meaningful error message.
No excuse.
It does occur to me, and perhaps I am being unreasonable
here, that
those who have not been programming in Java for a few years might
perhaps benefit from error messages which are somewhat more
expressive in a literary sense.
Better error messages would definitely be helpful everywhere in
Roller. Users should never have to resort to reading the source code.
But database corruption is non a common event with Roller (or at least
with post 1.x Roller), they're hard to recover from and hard to
explain via error messages.
One reasonable rejoinder would be that if I feel strongly
enough to
voice that sentiment in public, I should offer code (which would be
accepted or discarded as appropriate). Not talk. Point taken (falls
silent ... turns to keyboard).
Specific suggestions for improving error messages would also be
helpful.
- Dave