Could not get table metadata hibernate exception

1,107 views
Skip to first unread message

Nando

unread,
Mar 30, 2010, 11:35:01 AM3/30/10
to cf-orm-dev
I'm completely stuck behind a hibernate error as below

************
could not get table metadata: Client

(org.hibernate.exception.GenericJDBCException)

ErrorCode: 1033

Message: Incorrect information in file: './puli/Client.frm'

SQLState:  HY000

StackTrace: java.sql.SQLException: Incorrect information in file:
'./puli/Client.frm' at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055) at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956) at
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515) at
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447) at
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951) at
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101) at
com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2548) at
com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2477) at
com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1422) at
com.mysql.jdbc.DatabaseMetaData$2.forEach(DatabaseMetaData.java:2487)
at com.mysql.jdbc.IterateBlock.doForAll(IterateBlock.java:50) at
com.mysql.jdbc.DatabaseMetaData.getColumns(DatabaseMetaData.java:2361)
at org.hibernate.tool.hbm2ddl.TableMetadata.initColumns(TableMetadata.java:169)
at org.hibernate.tool.hbm2ddl.TableMetadata.<init>(TableMetadata.java:55)
at org.hibernate.tool.hbm2ddl.DatabaseMetadata.getTableMetadata(DatabaseMetadata.java:113)
at org.hibernate.cfg.Configuration.generateSchemaUpdateScript(Configuration.java:981)
at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:187)
at coldfusion.orm.hibernate.HibernateConfiguration.exportSchema(HibernateConfiguration.java:383)
at coldfusion.orm.hibernate.HibernateConfiguration.initHibernateConfiguration(HibernateConfiguration.java:221)
at coldfusion.orm.hibernate.HibernateConfiguration.<init>(HibernateConfiguration.java:141)
at coldfusion.orm.hibernate.ConfigurationManager.initConfiguration(ConfigurationManager.java:69)
at coldfusion.orm.hibernate.HibernateProvider.InitializeORMForApplication(HibernateProvider.java:182)
at coldfusion.orm.hibernate.HibernateProvider.beforeApplicationStart(HibernateProvider.java:85)
at coldfusion.filter.ApplicationFilter.fireBeforeAppStartEvent(ApplicationFilter.java:475)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:221)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:87) at
coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70) at
coldfusion.filter.BrowserDebugFilter.invoke(BrowserDebugFilter.java:74)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38) at
coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46) at
coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) at
coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) at
coldfusion.filter.CachingFilter.invoke(CachingFilter.java:53) at
coldfusion.CfmServlet.service(CfmServlet.java:200) at
coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86) at
com.intergral.fusionreactor.filter.FusionReactorFilter.b(FusionReactorFilter.java:376)
at com.intergral.fusionreactor.filter.FusionReactorFilter.c(FusionReactorFilter.java:254)
at com.intergral.fusionreactor.filter.FusionReactorFilter.doFilter(FusionReactorFilter.java:164)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) at
coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) at
jrun.servlet.FilterChain.service(FilterChain.java:101) at
jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106) at
jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42) at
jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)
at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)

************

My client wanted to begin to work with the app and I put it up on
CrystalTech quickly and temporarily until I could get the permanent
cf9 server set up on Rackspace (which I knew was probably going to be
a mistake of some sort). There's been a lot of trouble with the mySQL
server this app is on - I think they might have restored it from
backup this afternoon but I'm not sure. Anyone have an idea what I can
do to restore functionality? I have dbcreate set to "update".
ORMReload() doesn't help.

When I look in the information_schema database, the tables are listed
in the TABLES table, but nearly all the fields are null. I suspect
this may be the root of the problem. My thought is to back the
database up, delete the tables, and run ORMReload() to create the
tables again from the entity definitions.

I'd normally just try it, but I thought I might ask if anyone has an
insight first.

Thanks

--
Nando

Nando

unread,
Mar 30, 2010, 5:39:35 PM3/30/10
to cf-orm-dev
Nevermind ... it turned out to be corrupted data and a complete
restore from an earlier backup solved it.

--
Nando M. Breiter
The CarbonZero Project
CP 234
6934 Bioggio
Switzerland

+41 91 606 6372

na...@carbonzero.ch
www.carbonzero.ch

Reply all
Reply to author
Forward
0 new messages