Javassist Enhancement failed

View: New views
9 Messages — Rating Filter:   Alert me  

Javassist Enhancement failed

by Jesse O'Neill-Oine-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I'm getting inconsistent failures in Javassist in my application during indexing with Searchable. It's been very tough to diagnose what's wrong, because it only happens every 5-10 server starts. The error that comes up is: Failed to index the database org.hibernate.HibernateException: Javassist Enhancement failed: profile.Channel

Does anyone have any ideas what I may be able to do to work around this? I've seen a few other messages regarding this, but haven't come up with a solid solution.

Thanks,
Jesse

Here's the full stacktrace:
[2009-09-17 09:19:15.645] indexer.ScrollableHibernateIndexEntitiesIndexer {hibernate}: Failed to index the database
org.hibernate.HibernateException: Javassist Enhancement failed: profile.Channel
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:146)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory.getProxy(GroovyAwareJavassistProxyFactory.java:66)
at org.codehaus.groovy.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister.createProxy(GroovyAwareSingleTableEntityPersister.java:49)
at org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:298)
at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:219)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:873)
at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:590)
at org.hibernate.type.EntityType.resolve(EntityType.java:412)
at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:139)
at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:877)
at org.hibernate.loader.Loader.doQuery(Loader.java:752)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
at org.hibernate.loader.Loader.loadEntity(Loader.java:1881)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:121)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:863)
at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:95)
at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.invoke(GroovyAwareJavassistLazyInitializer.java:196)
at profile.Profile_$$_javassist_47.getAccountId(Profile_$$_javassist_47.java)
at profile.ProfileMethodReflectioninvoke59.invoke(Unknown Source)
at org.compass.core.accessor.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:124)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:198)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
at org.compass.core.converter.mapping.osem.ComponentMappingConverter.doMarshall(ComponentMappingConverter.java:32)
at org.compass.core.converter.mapping.osem.AbstractRefAliasMappingConverter.marshall(AbstractRefAliasMappingConverter.java:48)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:202)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
at org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:154)
at org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:361)
at org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:350)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.flush(ScrollableHibernateIndexEntitiesIndexer.java:212)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.close(ScrollableHibernateIndexEntitiesIndexer.java:206)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer.performIndex(ScrollableHibernateIndexEntitiesIndexer.java:151)
at org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1$1.doInCompassWithoutResult(ConcurrentParallelIndexExecutor.java:105)
at org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
at org.compass.core.CompassTemplate.execute(CompassTemplate.java:130)
at org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:162)
at org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1.call(ConcurrentParallelIndexExecutor.java:103)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:637)
Caused by: java.lang.NullPointerException
at javassist.util.proxy.RuntimeSupport$DefaultMethodHandler.invoke(RuntimeSupport.java:37)
at profile.Channel_$$_javassist_37.$getStaticMetaClass(Channel_$$_javassist_37.java)
at profile.Channel.<init>(Channel.groovy)
at profile.Channel_$$_javassist_37.<init>(Channel_$$_javassist_37.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:143)
... 51 more


--
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Jesse O'Neill-Oine // jesse@...
Refactr LLC // http://refactr.com
mobile // 612-670-5037
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Re: Javassist Enhancement failed

by Jesse O'Neill-Oine-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

It may also be worth noting that the class that Javassist fails on is not always the same one. It sometimes happens on my Channel class (a very simple class), sometimes happens on my Profile class (a more complex class that is also the one that is searchable), sometimes on my Business class, etc. It's basically a group of about 4 or 5 classes that seem to be the ones that consistently have the problem, but they are quite varied in what they do. The only common thread is that they all hang off of my main Profile class that is searchable.

Any help or insight would be greatly appreciated!

Thanks,
Jesse

On Thu, Sep 17, 2009 at 9:24 AM, Jesse O'Neill-Oine <jesse@...> wrote:
I'm getting inconsistent failures in Javassist in my application during indexing with Searchable. It's been very tough to diagnose what's wrong, because it only happens every 5-10 server starts. The error that comes up is: Failed to index the database org.hibernate.HibernateException: Javassist Enhancement failed: profile.Channel

Does anyone have any ideas what I may be able to do to work around this? I've seen a few other messages regarding this, but haven't come up with a solid solution.

Thanks,
Jesse

Here's the full stacktrace:
[2009-09-17 09:19:15.645] indexer.ScrollableHibernateIndexEntitiesIndexer {hibernate}: Failed to index the database
org.hibernate.HibernateException: Javassist Enhancement failed: profile.Channel
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:146)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory.getProxy(GroovyAwareJavassistProxyFactory.java:66)
at org.codehaus.groovy.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister.createProxy(GroovyAwareSingleTableEntityPersister.java:49)
at org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:298)
at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:219)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:873)
at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:590)
at org.hibernate.type.EntityType.resolve(EntityType.java:412)
at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:139)
at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:877)
at org.hibernate.loader.Loader.doQuery(Loader.java:752)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
at org.hibernate.loader.Loader.loadEntity(Loader.java:1881)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:121)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:863)
at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:95)
at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.invoke(GroovyAwareJavassistLazyInitializer.java:196)
at profile.Profile_$$_javassist_47.getAccountId(Profile_$$_javassist_47.java)
at profile.ProfileMethodReflectioninvoke59.invoke(Unknown Source)
at org.compass.core.accessor.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:124)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:198)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
at org.compass.core.converter.mapping.osem.ComponentMappingConverter.doMarshall(ComponentMappingConverter.java:32)
at org.compass.core.converter.mapping.osem.AbstractRefAliasMappingConverter.marshall(AbstractRefAliasMappingConverter.java:48)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:202)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
at org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:154)
at org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:361)
at org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:350)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.flush(ScrollableHibernateIndexEntitiesIndexer.java:212)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.close(ScrollableHibernateIndexEntitiesIndexer.java:206)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer.performIndex(ScrollableHibernateIndexEntitiesIndexer.java:151)
at org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1$1.doInCompassWithoutResult(ConcurrentParallelIndexExecutor.java:105)
at org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
at org.compass.core.CompassTemplate.execute(CompassTemplate.java:130)
at org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:162)
at org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1.call(ConcurrentParallelIndexExecutor.java:103)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:637)
Caused by: java.lang.NullPointerException
at javassist.util.proxy.RuntimeSupport$DefaultMethodHandler.invoke(RuntimeSupport.java:37)
at profile.Channel_$$_javassist_37.$getStaticMetaClass(Channel_$$_javassist_37.java)
at profile.Channel.<init>(Channel.groovy)
at profile.Channel_$$_javassist_37.<init>(Channel_$$_javassist_37.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:143)
... 51 more


--
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Jesse O'Neill-Oine // jesse@...
Refactr LLC // http://refactr.com
mobile // 612-670-5037
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::



--
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Jesse O'Neill-Oine // jesse@...
Refactr LLC // http://refactr.com
mobile // 612-670-5037
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Re: Javassist Enhancement failed

by Maricel Quesada :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I am having the exact same issue and this exception is becoming more and more frequent.

Any idea?


Jesse O'Neill-Oine-2 wrote:
It may also be worth noting that the class that Javassist fails on is not
always the same one. It sometimes happens on my Channel class (a very simple
class), sometimes happens on my Profile class (a more complex class that is
also the one that is searchable), sometimes on my Business class, etc. It's
basically a group of about 4 or 5 classes that seem to be the ones that
consistently have the problem, but they are quite varied in what they do.
The only common thread is that they all hang off of my main Profile class
that is searchable.
Any help or insight would be greatly appreciated!

Thanks,
Jesse

On Thu, Sep 17, 2009 at 9:24 AM, Jesse O'Neill-Oine <jesse@refactr.com>wrote:

> I'm getting inconsistent failures in Javassist in my application during
> indexing with Searchable. It's been very tough to diagnose what's wrong,
> because it only happens every 5-10 server starts. The error that comes up
> is: Failed to index the database org.hibernate.HibernateException: Javassist
> Enhancement failed: profile.Channel
> Does anyone have any ideas what I may be able to do to work around this?
> I've seen a few other messages regarding this, but haven't come up with a
> solid solution.
>
> Thanks,
> Jesse
>
> Here's the full stacktrace:
> [2009-09-17 09:19:15.645] indexer.ScrollableHibernateIndexEntitiesIndexer
> {hibernate}: Failed to index the database
> org.hibernate.HibernateException: Javassist Enhancement failed:
> profile.Channel
>  at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:146)
> at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory.getProxy(GroovyAwareJavassistProxyFactory.java:66)
>  at
> org.codehaus.groovy.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister.createProxy(GroovyAwareSingleTableEntityPersister.java:49)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:298)
> at
> org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:219)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>  at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:873)
> at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:590)
>  at org.hibernate.type.EntityType.resolve(EntityType.java:412)
> at
> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:139)
>  at
> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:877)
> at org.hibernate.loader.Loader.doQuery(Loader.java:752)
>  at
> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
> at org.hibernate.loader.Loader.loadEntity(Loader.java:1881)
>  at
> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
> at
> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
>  at
> org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
> at
> org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
> at
> org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:121)
> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>  at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:863)
> at
> org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:95)
>  at
> org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
> at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.invoke(GroovyAwareJavassistLazyInitializer.java:196)
>  at
> profile.Profile_$$_javassist_47.getAccountId(Profile_$$_javassist_47.java)
> at profile.ProfileMethodReflectioninvoke59.invoke(Unknown Source)
>  at
> org.compass.core.accessor.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:124)
> at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:198)
>  at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
> at
> org.compass.core.converter.mapping.osem.ComponentMappingConverter.doMarshall(ComponentMappingConverter.java:32)
>  at
> org.compass.core.converter.mapping.osem.AbstractRefAliasMappingConverter.marshall(AbstractRefAliasMappingConverter.java:48)
> at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:202)
>  at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
> at
> org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:154)
>  at
> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:361)
> at
> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:350)
>  at
> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.flush(ScrollableHibernateIndexEntitiesIndexer.java:212)
>  at
> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.close(ScrollableHibernateIndexEntitiesIndexer.java:206)
>  at
> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer.performIndex(ScrollableHibernateIndexEntitiesIndexer.java:151)
>  at
> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1$1.doInCompassWithoutResult(ConcurrentParallelIndexExecutor.java:105)
> at
> org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
>  at org.compass.core.CompassTemplate.execute(CompassTemplate.java:130)
> at
> org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:162)
>  at
> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1.call(ConcurrentParallelIndexExecutor.java:103)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>  at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:637)
> Caused by: java.lang.NullPointerException
> at
> javassist.util.proxy.RuntimeSupport$DefaultMethodHandler.invoke(RuntimeSupport.java:37)
> at
> profile.Channel_$$_javassist_37.$getStaticMetaClass(Channel_$$_javassist_37.java)
>  at profile.Channel.<init>(Channel.groovy)
> at profile.Channel_$$_javassist_37.<init>(Channel_$$_javassist_37.java)
>  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>  at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>  at java.lang.Class.newInstance0(Class.java:355)
> at java.lang.Class.newInstance(Class.java:308)
>  at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:143)
> ... 51 more
>
>
> --
> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
> Jesse O'Neill-Oine // jesse@refactr.com
> Refactr LLC // http://refactr.com
> mobile // 612-670-5037
> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
>



--
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Jesse O'Neill-Oine // jesse@refactr.com
Refactr LLC // http://refactr.com
mobile // 612-670-5037
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Re: Javassist Enhancement failed

by Daniel Honig :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Are you indexing to disk?

Does it happen if you manually delete the index before starting the server?

Are you developing and changing domain classes.

I've seen this error quite a bit during development and deleting the index usually helps.  (This is assuming you've left auto mirroring on).

On Thu, Sep 17, 2009 at 10:24 AM, Jesse O'Neill-Oine <jesse@...> wrote:
I'm getting inconsistent failures in Javassist in my application during indexing with Searchable. It's been very tough to diagnose what's wrong, because it only happens every 5-10 server starts. The error that comes up is: Failed to index the database org.hibernate.HibernateException: Javassist Enhancement failed: profile.Channel

Does anyone have any ideas what I may be able to do to work around this? I've seen a few other messages regarding this, but haven't come up with a solid solution.

Thanks,
Jesse

Here's the full stacktrace:
[2009-09-17 09:19:15.645] indexer.ScrollableHibernateIndexEntitiesIndexer {hibernate}: Failed to index the database
org.hibernate.HibernateException: Javassist Enhancement failed: profile.Channel
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:146)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory.getProxy(GroovyAwareJavassistProxyFactory.java:66)
at org.codehaus.groovy.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister.createProxy(GroovyAwareSingleTableEntityPersister.java:49)
at org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:298)
at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:219)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:873)
at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:590)
at org.hibernate.type.EntityType.resolve(EntityType.java:412)
at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:139)
at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:877)
at org.hibernate.loader.Loader.doQuery(Loader.java:752)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
at org.hibernate.loader.Loader.loadEntity(Loader.java:1881)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:121)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:863)
at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:95)
at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.invoke(GroovyAwareJavassistLazyInitializer.java:196)
at profile.Profile_$$_javassist_47.getAccountId(Profile_$$_javassist_47.java)
at profile.ProfileMethodReflectioninvoke59.invoke(Unknown Source)
at org.compass.core.accessor.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:124)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:198)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
at org.compass.core.converter.mapping.osem.ComponentMappingConverter.doMarshall(ComponentMappingConverter.java:32)
at org.compass.core.converter.mapping.osem.AbstractRefAliasMappingConverter.marshall(AbstractRefAliasMappingConverter.java:48)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:202)
at org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
at org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:154)
at org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:361)
at org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:350)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.flush(ScrollableHibernateIndexEntitiesIndexer.java:212)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.close(ScrollableHibernateIndexEntitiesIndexer.java:206)
at org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer.performIndex(ScrollableHibernateIndexEntitiesIndexer.java:151)
at org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1$1.doInCompassWithoutResult(ConcurrentParallelIndexExecutor.java:105)
at org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
at org.compass.core.CompassTemplate.execute(CompassTemplate.java:130)
at org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:162)
at org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1.call(ConcurrentParallelIndexExecutor.java:103)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:637)
Caused by: java.lang.NullPointerException
at javassist.util.proxy.RuntimeSupport$DefaultMethodHandler.invoke(RuntimeSupport.java:37)
at profile.Channel_$$_javassist_37.$getStaticMetaClass(Channel_$$_javassist_37.java)
at profile.Channel.<init>(Channel.groovy)
at profile.Channel_$$_javassist_37.<init>(Channel_$$_javassist_37.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:143)
... 51 more


--
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Jesse O'Neill-Oine // jesse@...
Refactr LLC // http://refactr.com
mobile // 612-670-5037
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


Re: Javassist Enhancement failed

by Maricel Quesada :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

No, I am indexing to a DB, but I remember that before indexing to a DB I was using the file system and occasionally got the same issue, so I don't think it is related to the db. It happens if I manually delete the index or if I don't, it is pretty random.

Right now, I am not changing the domain classes, they have been the same for a quite a while now. But I am getting this error more frequently, specially when deploying to Tomcat, if I run the app locally using grails run-app it doesn't happen that often.

I have several domain classes that are searchable, but these errors only happen with 3 of them and something I noticed today is that these three have the tablePerHierarchy set to false, it is the only thing that is common between these 3 and different from the rest of the domain classes. By any chance, do you have the same?

Thanks!!

Daniel Honig wrote:
Are you indexing to disk?

Does it happen if you manually delete the index before starting the server?

Are you developing and changing domain classes.

I've seen this error quite a bit during development and deleting the index
usually helps.  (This is assuming you've left auto mirroring on).

On Thu, Sep 17, 2009 at 10:24 AM, Jesse O'Neill-Oine <jesse@refactr.com>wrote:

> I'm getting inconsistent failures in Javassist in my application during
> indexing with Searchable. It's been very tough to diagnose what's wrong,
> because it only happens every 5-10 server starts. The error that comes up
> is: Failed to index the database org.hibernate.HibernateException: Javassist
> Enhancement failed: profile.Channel
>
> Does anyone have any ideas what I may be able to do to work around this?
> I've seen a few other messages regarding this, but haven't come up with a
> solid solution.
>
> Thanks,
> Jesse
>
> Here's the full stacktrace:
> [2009-09-17 09:19:15.645] indexer.ScrollableHibernateIndexEntitiesIndexer
> {hibernate}: Failed to index the database
> org.hibernate.HibernateException: Javassist Enhancement failed:
> profile.Channel
>  at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:146)
> at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory.getProxy(GroovyAwareJavassistProxyFactory.java:66)
>  at
> org.codehaus.groovy.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister.createProxy(GroovyAwareSingleTableEntityPersister.java:49)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:298)
> at
> org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:219)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>  at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:873)
> at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:590)
>  at org.hibernate.type.EntityType.resolve(EntityType.java:412)
> at
> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:139)
>  at
> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:877)
> at org.hibernate.loader.Loader.doQuery(Loader.java:752)
>  at
> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
> at org.hibernate.loader.Loader.loadEntity(Loader.java:1881)
>  at
> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
> at
> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
>  at
> org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
> at
> org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
> at
> org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
>  at
> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:121)
> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>  at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:863)
> at
> org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:95)
>  at
> org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
> at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.invoke(GroovyAwareJavassistLazyInitializer.java:196)
>  at
> profile.Profile_$$_javassist_47.getAccountId(Profile_$$_javassist_47.java)
> at profile.ProfileMethodReflectioninvoke59.invoke(Unknown Source)
>  at
> org.compass.core.accessor.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:124)
> at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:198)
>  at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
> at
> org.compass.core.converter.mapping.osem.ComponentMappingConverter.doMarshall(ComponentMappingConverter.java:32)
>  at
> org.compass.core.converter.mapping.osem.AbstractRefAliasMappingConverter.marshall(AbstractRefAliasMappingConverter.java:48)
> at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:202)
>  at
> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
> at
> org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:154)
>  at
> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:361)
> at
> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:350)
>  at
> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.flush(ScrollableHibernateIndexEntitiesIndexer.java:212)
>  at
> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.close(ScrollableHibernateIndexEntitiesIndexer.java:206)
>  at
> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer.performIndex(ScrollableHibernateIndexEntitiesIndexer.java:151)
>  at
> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1$1.doInCompassWithoutResult(ConcurrentParallelIndexExecutor.java:105)
> at
> org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
>  at org.compass.core.CompassTemplate.execute(CompassTemplate.java:130)
> at
> org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:162)
>  at
> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1.call(ConcurrentParallelIndexExecutor.java:103)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>  at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:637)
> Caused by: java.lang.NullPointerException
> at
> javassist.util.proxy.RuntimeSupport$DefaultMethodHandler.invoke(RuntimeSupport.java:37)
> at
> profile.Channel_$$_javassist_37.$getStaticMetaClass(Channel_$$_javassist_37.java)
>  at profile.Channel.<init>(Channel.groovy)
> at profile.Channel_$$_javassist_37.<init>(Channel_$$_javassist_37.java)
>  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>  at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>  at java.lang.Class.newInstance0(Class.java:355)
> at java.lang.Class.newInstance(Class.java:308)
>  at
> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:143)
> ... 51 more
>
>
> --
> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
> Jesse O'Neill-Oine // jesse@refactr.com
> Refactr LLC // http://refactr.com
> mobile // 612-670-5037
> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
>

Re: Javassist Enhancement failed

by Daniel Honig :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Thu, Nov 5, 2009 at 7:15 PM, Maricel Quesada <mquesada@...> wrote:

No, I am indexing to a DB, but I remember that before indexing to a DB I was
using the file system and occasionally got the same issue, so I don't think
it is related to the db. It happens if I manually delete the index or if I



Regardless of where you index to, if you change the domain class and try to load that
indexed form into a domain class that is not the same you would have the same issue? 


Re: Javassist Enhancement failed

by Maricel Quesada :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Yeah it happens either way!! I checked removing the tablePerHierarchy property and I still get the problem.

The strange thing is that the error happens always with one of these 3 classes, not any of the rest.

Daniel Honig wrote:
On Thu, Nov 5, 2009 at 7:15 PM, Maricel Quesada <mquesada@backcountry.com>wrote:

>
> No, I am indexing to a DB, but I remember that before indexing to a DB I
> was
> using the file system and occasionally got the same issue, so I don't think
> it is related to the db. It happens if I manually delete the index or if I
>
>
>
Regardless of where you index to, if you change the domain class and try to
load that
indexed form into a domain class that is not the same you would have the
same issue?

RE: Re: Javassist Enhancement failed

by okomba@yahoo.com :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi.

I am also experiencing same problem. If anybody has a clue please assist.

Thanks.

Mugoma,
Yengas.



Maricel Quesada wrote:

> No, I am indexing to a DB, but I remember that before indexing to a DB I was
> using the file system and occasionally got the same issue, so I don't think
> it is related to the db. It happens if I manually delete the index or if I
> don't, it is pretty random.
> Right now, I am not changing the domain classes, they have been the same for
> a quite a while now. But I am getting this error more frequently, specially
> when deploying to Tomcat, if I run the app locally using grails run-app it
> doesn't happen that often.
> I have several domain classes that are searchable, but these errors only
> happen with 3 of them and something I noticed today is that these three have
> the tablePerHierarchy set to false, it is the only thing that is common
> between these 3 and different from the rest of the domain classes. By any
> chance, do you have the same?
> Thanks!!
> Daniel Honig wrote:
>>
>> Are you indexing to disk?
>>
>> Does it happen if you manually delete the index before starting the
>> server?
>>
>> Are you developing and changing domain classes.
>>
>> I've seen this error quite a bit during development and deleting the index
>> usually helps.  (This is assuming you've left auto mirroring on).
>>
>> On Thu, Sep 17, 2009 at 10:24 AM, Jesse O'Neill-Oine
>> <jesse@...>wrote:
>>
>>> I'm getting inconsistent failures in Javassist in my application during
>>> indexing with Searchable. It's been very tough to diagnose what's wrong,
>>> because it only happens every 5-10 server starts. The error that comes up
>>> is: Failed to index the database org.hibernate.HibernateException:
>>> Javassist
>>> Enhancement failed: profile.Channel
>>>
>>> Does anyone have any ideas what I may be able to do to work around this?
>>> I've seen a few other messages regarding this, but haven't come up with a
>>> solid solution.
>>>
>>> Thanks,
>>> Jesse
>>>
>>> Here's the full stacktrace:
>>> [2009-09-17 09:19:15.645] indexer.ScrollableHibernateIndexEntitiesIndexer
>>> {hibernate}: Failed to index the database
>>> org.hibernate.HibernateException: Javassist Enhancement failed:
>>> profile.Channel
>>>  at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:146)
>>> at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory.getProxy(GroovyAwareJavassistProxyFactory.java:66)
>>>  at
>>> org.codehaus.groovy.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister.createProxy(GroovyAwareSingleTableEntityPersister.java:49)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:298)
>>> at
>>> org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:219)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
>>> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>>>  at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:873)
>>> at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:590)
>>>  at org.hibernate.type.EntityType.resolve(EntityType.java:412)
>>> at
>>> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:139)
>>>  at
>>> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:877)
>>> at org.hibernate.loader.Loader.doQuery(Loader.java:752)
>>>  at
>>> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
>>> at org.hibernate.loader.Loader.loadEntity(Loader.java:1881)
>>>  at
>>> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
>>> at
>>> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
>>>  at
>>> org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
>>> at
>>> org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
>>> at
>>> org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:121)
>>> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>>>  at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:863)
>>> at
>>> org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:95)
>>>  at
>>> org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
>>> at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.invoke(GroovyAwareJavassistLazyInitializer.java:196)
>>>  at
>>> profile.Profile_$$_javassist_47.getAccountId(Profile_$$_javassist_47.java)
>>> at profile.ProfileMethodReflectioninvoke59.invoke(Unknown Source)
>>>  at
>>> org.compass.core.accessor.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:124)
>>> at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:198)
>>>  at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
>>> at
>>> org.compass.core.converter.mapping.osem.ComponentMappingConverter.doMarshall(ComponentMappingConverter.java:32)
>>>  at
>>> org.compass.core.converter.mapping.osem.AbstractRefAliasMappingConverter.marshall(AbstractRefAliasMappingConverter.java:48)
>>> at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:202)
>>>  at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
>>> at
>>> org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:154)
>>>  at
>>> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:361)
>>> at
>>> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:350)
>>>  at
>>> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.flush(ScrollableHibernateIndexEntitiesIndexer.java:212)
>>>  at
>>> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.close(ScrollableHibernateIndexEntitiesIndexer.java:206)
>>>  at
>>> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer.performIndex(ScrollableHibernateIndexEntitiesIndexer.java:151)
>>>  at
>>> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1$1.doInCompassWithoutResult(ConcurrentParallelIndexExecutor.java:105)
>>> at
>>> org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
>>>  at org.compass.core.CompassTemplate.execute(CompassTemplate.java:130)
>>> at
>>> org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:162)
>>>  at
>>> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1.call(ConcurrentParallelIndexExecutor.java:103)
>>> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>>>  at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>  at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>> at java.lang.Thread.run(Thread.java:637)
>>> Caused by: java.lang.NullPointerException
>>> at
>>> javassist.util.proxy.RuntimeSupport$DefaultMethodHandler.invoke(RuntimeSupport.java:37)
>>> at
>>> profile.Channel_$$_javassist_37.$getStaticMetaClass(Channel_$$_javassist_37.java)
>>>  at profile.Channel.<init>(Channel.groovy)
>>> at profile.Channel_$$_javassist_37.<init>(Channel_$$_javassist_37.java)
>>>  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>>> at
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>>>  at
>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>>> at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>>>  at java.lang.Class.newInstance0(Class.java:355)
>>> at java.lang.Class.newInstance(Class.java:308)
>>>  at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:143)
>>> ... 51 more
>>>
>>>
>>> --
>>> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
>>> Jesse O'Neill-Oine // jesse@...
>>> Refactr LLC // http://refactr.com
>>> mobile // 612-670-5037
>>> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
>>>
>>
>>
> --
> View this message in context: http://old.nabble.com/Javassist-Enhancement-failed-tp25492491p26224786.html
> Sent from the grails - user mailing list archive at Nabble.com.
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>     http://xircles.codehaus.org/manage_email


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email



RE: Re: Javassist Enhancement failed

by Maricel Quesada :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

This sounds like a bug to me, however I haven't been able to determine the causes and since it is pretty random it is hard to create a test app to reproduce it.

It would be great to have someone from the plug in developers to try and reproduce it and since they know their code better maybe they could determine the causes more easily.

okomba@yahoo.com wrote:
Hi.

I am also experiencing same problem. If anybody has a clue please assist.

Thanks.

Mugoma,
Yengas.



Maricel Quesada wrote:
> No, I am indexing to a DB, but I remember that before indexing to a DB I was
> using the file system and occasionally got the same issue, so I don't think
> it is related to the db. It happens if I manually delete the index or if I
> don't, it is pretty random.
> Right now, I am not changing the domain classes, they have been the same for
> a quite a while now. But I am getting this error more frequently, specially
> when deploying to Tomcat, if I run the app locally using grails run-app it
> doesn't happen that often.
> I have several domain classes that are searchable, but these errors only
> happen with 3 of them and something I noticed today is that these three have
> the tablePerHierarchy set to false, it is the only thing that is common
> between these 3 and different from the rest of the domain classes. By any
> chance, do you have the same?
> Thanks!!
> Daniel Honig wrote:
>>
>> Are you indexing to disk?
>>
>> Does it happen if you manually delete the index before starting the
>> server?
>>
>> Are you developing and changing domain classes.
>>
>> I've seen this error quite a bit during development and deleting the index
>> usually helps.  (This is assuming you've left auto mirroring on).
>>
>> On Thu, Sep 17, 2009 at 10:24 AM, Jesse O'Neill-Oine
>> <jesse@refactr.com>wrote:
>>
>>> I'm getting inconsistent failures in Javassist in my application during
>>> indexing with Searchable. It's been very tough to diagnose what's wrong,
>>> because it only happens every 5-10 server starts. The error that comes up
>>> is: Failed to index the database org.hibernate.HibernateException:
>>> Javassist
>>> Enhancement failed: profile.Channel
>>>
>>> Does anyone have any ideas what I may be able to do to work around this?
>>> I've seen a few other messages regarding this, but haven't come up with a
>>> solid solution.
>>>
>>> Thanks,
>>> Jesse
>>>
>>> Here's the full stacktrace:
>>> [2009-09-17 09:19:15.645] indexer.ScrollableHibernateIndexEntitiesIndexer
>>> {hibernate}: Failed to index the database
>>> org.hibernate.HibernateException: Javassist Enhancement failed:
>>> profile.Channel
>>>  at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:146)
>>> at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory.getProxy(GroovyAwareJavassistProxyFactory.java:66)
>>>  at
>>> org.codehaus.groovy.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister.createProxy(GroovyAwareSingleTableEntityPersister.java:49)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:298)
>>> at
>>> org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:219)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
>>> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>>>  at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:873)
>>> at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:590)
>>>  at org.hibernate.type.EntityType.resolve(EntityType.java:412)
>>> at
>>> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:139)
>>>  at
>>> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:877)
>>> at org.hibernate.loader.Loader.doQuery(Loader.java:752)
>>>  at
>>> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
>>> at org.hibernate.loader.Loader.loadEntity(Loader.java:1881)
>>>  at
>>> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
>>> at
>>> org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
>>>  at
>>> org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
>>> at
>>> org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
>>> at
>>> org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
>>>  at
>>> org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:121)
>>> at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
>>>  at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:863)
>>> at
>>> org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:95)
>>>  at
>>> org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
>>> at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.invoke(GroovyAwareJavassistLazyInitializer.java:196)
>>>  at
>>> profile.Profile_$$_javassist_47.getAccountId(Profile_$$_javassist_47.java)
>>> at profile.ProfileMethodReflectioninvoke59.invoke(Unknown Source)
>>>  at
>>> org.compass.core.accessor.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:124)
>>> at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:198)
>>>  at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
>>> at
>>> org.compass.core.converter.mapping.osem.ComponentMappingConverter.doMarshall(ComponentMappingConverter.java:32)
>>>  at
>>> org.compass.core.converter.mapping.osem.AbstractRefAliasMappingConverter.marshall(AbstractRefAliasMappingConverter.java:48)
>>> at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.doMarshall(ClassMappingConverter.java:202)
>>>  at
>>> org.compass.core.converter.mapping.osem.ClassMappingConverter.marshall(ClassMappingConverter.java:88)
>>> at
>>> org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:154)
>>>  at
>>> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:361)
>>> at
>>> org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:350)
>>>  at
>>> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.flush(ScrollableHibernateIndexEntitiesIndexer.java:212)
>>>  at
>>> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer$RowBuffer.close(ScrollableHibernateIndexEntitiesIndexer.java:206)
>>>  at
>>> org.compass.gps.device.hibernate.indexer.ScrollableHibernateIndexEntitiesIndexer.performIndex(ScrollableHibernateIndexEntitiesIndexer.java:151)
>>>  at
>>> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1$1.doInCompassWithoutResult(ConcurrentParallelIndexExecutor.java:105)
>>> at
>>> org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
>>>  at org.compass.core.CompassTemplate.execute(CompassTemplate.java:130)
>>> at
>>> org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:162)
>>>  at
>>> org.compass.gps.device.support.parallel.ConcurrentParallelIndexExecutor$1.call(ConcurrentParallelIndexExecutor.java:103)
>>> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>>>  at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>  at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>> at java.lang.Thread.run(Thread.java:637)
>>> Caused by: java.lang.NullPointerException
>>> at
>>> javassist.util.proxy.RuntimeSupport$DefaultMethodHandler.invoke(RuntimeSupport.java:37)
>>> at
>>> profile.Channel_$$_javassist_37.$getStaticMetaClass(Channel_$$_javassist_37.java)
>>>  at profile.Channel.<init>(Channel.groovy)
>>> at profile.Channel_$$_javassist_37.<init>(Channel_$$_javassist_37.java)
>>>  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>>> at
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>>>  at
>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>>> at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>>>  at java.lang.Class.newInstance0(Class.java:355)
>>> at java.lang.Class.newInstance(Class.java:308)
>>>  at
>>> org.codehaus.groovy.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer.getProxy(GroovyAwareJavassistLazyInitializer.java:143)
>>> ... 51 more
>>>
>>>
>>> --
>>> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
>>> Jesse O'Neill-Oine // jesse@refactr.com
>>> Refactr LLC // http://refactr.com
>>> mobile // 612-670-5037
>>> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
>>>
>>
>>
> --
> View this message in context: http://old.nabble.com/Javassist-Enhancement-failed-tp25492491p26224786.html
> Sent from the grails - user mailing list archive at Nabble.com.
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>     http://xircles.codehaus.org/manage_email


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email