Sorry I do not understand your response. From the stacktrace T5 is building your service. In the constructor of the service currently created you are spawning a new thread which again needs services from the T5 app in the run method, right?
Can't you defer thread creation to a method in your module class annotated by @Startup ? Jens Sent from my iPhone On 18.04.2013, at 19:02, Arunas F <arun...@gmail.com> wrote: > No, not at all. New Thread is spawned at some moment while initializing T5 > app. And there is nothing special about a code: > > > new Thread(new Runnable() { > > @Override > public void run() { > if (logger.isDebugEnabled()) logger.debug(etlName + " > initializing... "); > > try { > > for (EtlAbstractJob job : jobs.getJobs()) { > job.initialize(); > } > > } catch (EtlJobException e) { > logger.error(e.toString()); > e.printStackTrace(); > } > > if (logger.isDebugEnabled()) logger.debug(etlName + " finished > initialization... "); > } > > }).start(); > > > And in the code at line "job.initialize();" the var job are T5 IOC services > and these services depend on MongoDB service at some deeper level. > > public class ReportStorageImpl implements ReportStorage { > > ..... > > private MongoDB mongoDB; > > public ReportStorageImpl(MongoDB mongoDB) { > this.mongoDB = mongoDB; > } > > ...... > > @Override > public MongoDB getMongoDB() { > return mongoDB; > } > } > > About MongoDB also nothing special. The module is taken from > https://github.com/mlusetti/tapestry-mongodb-core (look at earlier revisions). > > > BR, > Arunas > > > On 18/04/2013 18:53, mailingl...@j-b-s.de wrote: >> Are you spawning a new thread in your MongoDBImpl.java:30 which makes use of >> T5 services, too? From the Stacktrace you are (well T5 IOC is) building the >> mongodb service right now. What happens in the ctor of your class? Can you >> paste some code?? >> >> Jens >> >> Sent from my iPhone >> >> On 18.04.2013, at 17:31, Arunas F <arun...@gmail.com> wrote: >> >>> Hi, >>> >>> We are using T5 version 5.3.6. I found that Tapestry runs into a dead lock >>> while building registry (initializing) if I start a new Thread what uses >>> some T5 services. >>> Right now we have disabled multi threading while initializing app. But I >>> would like to know, is it a T5 bug and I should file it into JIRA or this >>> is an expected behavior and it is a T5 limitation. >>> >>> >>> Problem description: If the T5 registry and new Thread tries to create same >>> service (from proxy) simultaneously sometimes you can run into deadlock and >>> T5 app wont initialize. In the stacktrace dump below, you can find that >>> both threads tried to create MongoDB instance and ran into a deadlock. >>> >>> >>> Found one Java-level deadlock: >>> ============================= >>> "Thread-10": >>> waiting for ownable synchronizer 0x00000007c27e65f0, (a >>> java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync), >>> which is held by "Thread-4" >>> "Thread-4": >>> waiting to lock monitor 0x00007fdf5b91c658 (object 0x00000007eda35c20, a >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator), >>> which is held by "Thread-10" >>> >>> Java stack information for the threads listed above: >>> =================================================== >>> "Thread-10": >>> at sun.misc.Unsafe.park(Native Method) >>> - parking to wait for <0x00000007c27e65f0> (a >>> java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync) >>> at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) >>> at >>> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834) >>> at >>> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireShared(AbstractQueuedSynchronizer.java:964) >>> at >>> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared(AbstractQueuedSynchronizer.java:1282) >>> at >>> java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock(ReentrantReadWriteLock.java:731) >>> at >>> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:75) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl.findOrCreate(ModuleImpl.java:213) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl.getService(ModuleImpl.java:109) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:421) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:868) >>> at >>> org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:57) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:257) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:50) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:289) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:286) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:293) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1488) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1483) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1480) >>> at >>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52) >>> at >>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) >>> at >>> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29) >>> at >>> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46) >>> at >>> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63) >>> at >>> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54) >>> at >>> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) >>> at >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66) >>> - locked <0x00000007eda35c20> (a >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator) >>> at >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54) >>> at $MongoDBSource_12f60d9b0a6e8bb2.delegate(Unknown Source) >>> at $MongoDBSource_12f60d9b0a6e8bb2.getMongo(Unknown Source) >>> at >>> org.apache.tapestry5.internal.mongodb.MongoDBImpl.<init>(MongoDBImpl.java:30) >>> at >>> org.apache.tapestry5.mongodb.MongoDBModule.buildMongoDB(MongoDBModule.java:46) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:601) >>> at >>> org.apache.tapestry5.ioc.internal.util.MethodInvoker.invoke(MethodInvoker.java:50) >>> at >>> org.apache.tapestry5.ioc.internal.util.LoggingInvokableWrapper.invoke(LoggingInvokableWrapper.java:42) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.ConstructionPlan.createObject(ConstructionPlan.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) >>> at >>> org.apache.tapestry5.ioc.internal.services.PerThreadServiceCreator.createObject(PerThreadServiceCreator.java:47) >>> * at $MongoDB_12f60d9b0a6e8bb1.delegate(Unknown Source) >>> at $MongoDB_12f60d9b0a6e8bb1.getMongoDb(Unknown Source) >>> at $MongoDB_12f60d9b0a6e8b77.getMongoDb(Unknown Source)* >>> at >>> eu.openg.colibri.reporting.service.etl.job.EtlAbstractJob.getCollection(EtlAbstractJob.java:142) >>> at >>> eu.openg.colibri.reporting.service.etl.job.EtlAbstractJob.ensureIndex(EtlAbstractJob.java:117) >>> at >>> eu.openg.colibri.reporting.service.etl.job.EtlAbstractJob.ensureIndex(EtlAbstractJob.java:112) >>> at >>> eu.openg.colibri.reporting.service.etl.job.pcr.common.PcrFormSingleRowJob.initialize(PcrFormSingleRowJob.java:52) >>> at >>> eu.openg.colibri.reporting.service.etl.job.pcr.MissionBook.initialize(MissionBook.java:55) >>> at >>> eu.openg.colibri.reporting.service.etl.EtlManager$1.run(EtlManager.java:38) >>> at java.lang.Thread.run(Thread.java:722) >>> "Thread-4": >>> at >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:61) >>> - waiting to lock <0x00000007eda35c20> (a >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator) >>> at >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54) >>> at $MongoDBSource_12f60d9b0a6e8bb2.delegate(Unknown Source) >>> at $MongoDBSource_12f60d9b0a6e8bb2.getMongo(Unknown Source) >>> at >>> org.apache.tapestry5.internal.mongodb.MongoDBImpl.<init>(MongoDBImpl.java:30) >>> at >>> org.apache.tapestry5.mongodb.MongoDBModule.buildMongoDB(MongoDBModule.java:46) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:601) >>> at >>> org.apache.tapestry5.ioc.internal.util.MethodInvoker.invoke(MethodInvoker.java:50) >>> at >>> org.apache.tapestry5.ioc.internal.util.LoggingInvokableWrapper.invoke(LoggingInvokableWrapper.java:42) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.ConstructionPlan.createObject(ConstructionPlan.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) >>> at >>> org.apache.tapestry5.ioc.internal.services.PerThreadServiceCreator.createObject(PerThreadServiceCreator.java:47) >>> * at $MongoDB_12f60d9b0a6e8bb1.delegate(Unknown Source) >>> at $MongoDB_12f60d9b0a6e8bb1.getMongoDb(Unknown Source) >>> at $MongoDB_12f60d9b0a6e8b77.getMongoDb(Unknown Source)* >>> at >>> eu.openg.colibri.reporting.service.miner.Miner.ensureIndex(Miner.java:41) >>> at >>> eu.openg.colibri.reporting.service.miner.Miner.ensureIndex(Miner.java:35) >>> at >>> eu.openg.colibri.reporting.service.miner.sources.dekbera.TeamStatusMiner.initialize(TeamStatusMiner.java:61) >>> at eu.openg.colibri.reporting.service.miner.Miner.<init>(Miner.java:23) >>> at >>> eu.openg.colibri.reporting.service.miner.sources.dekbera.TeamStatusMiner.<init>(TeamStatusMiner.java:42) >>> at >>> eu.openg.colibri.reporting.service.ReportMinerModule.buildDekberaTeamStatusMiner(ReportMinerModule.java:84) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:601) >>> at >>> org.apache.tapestry5.ioc.internal.util.MethodInvoker.invoke(MethodInvoker.java:50) >>> at >>> org.apache.tapestry5.ioc.internal.util.LoggingInvokableWrapper.invoke(LoggingInvokableWrapper.java:42) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.ConstructionPlan.createObject(ConstructionPlan.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl$4.invoke(ModuleImpl.java:284) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl.create(ModuleImpl.java:332) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl.access$100(ModuleImpl.java:39) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl$1.invoke(ModuleImpl.java:191) >>> at >>> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withWrite(ConcurrentBarrier.java:140) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl$2.invoke(ModuleImpl.java:207) >>> at >>> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl.findOrCreate(ModuleImpl.java:213) >>> at >>> org.apache.tapestry5.ioc.internal.ModuleImpl.getService(ModuleImpl.java:109) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:421) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.extractServiceFromMatches(RegistryImpl.java:925) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.findServiceByMarkerAndType(RegistryImpl.java:909) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:863) >>> at >>> org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:57) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:257) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:50) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:289) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:286) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:293) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParametersForMethod(InternalUtils.java:264) >>> at >>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:117) >>> at >>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:80) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl$9.run(RegistryImpl.java:633) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.addToOrderedConfiguration(RegistryImpl.java:629) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.getOrderedConfiguration(RegistryImpl.java:483) >>> at >>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:110) >>> at >>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:107) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getOrderedConfiguration(ServiceResourcesImpl.java:105) >>> at >>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.getOrderedConfiguration(AbstractServiceCreator.java:123) >>> at >>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.access$200(AbstractServiceCreator.java:35) >>> at >>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator$1.findResource(AbstractServiceCreator.java:103) >>> at >>> org.apache.tapestry5.ioc.internal.util.DelegatingInjectionResources.findResource(DelegatingInjectionResources.java:38) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:231) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:50) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:289) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:286) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:293) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1488) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1483) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1480) >>> at >>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52) >>> at >>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) >>> at >>> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29) >>> at >>> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46) >>> at >>> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63) >>> at >>> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54) >>> at >>> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74) >>> at >>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124) >>> at >>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) >>> at >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66) >>> - locked <0x00000007ed2637e8> (a >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator) >>> at >>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54) >>> at $Runnable_12f60d9b0a6e8bac.delegate(Unknown Source) >>> at $Runnable_12f60d9b0a6e8bac.run(Unknown Source) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:325) >>> at >>> org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80) >>> at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:118) >>> at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97) >>> at >>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) >>> - locked <0x00000007c277d608> (a java.lang.Object) >>> at >>> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:662) >>> at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) >>> at >>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1272) >>> at >>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) >>> at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:489) >>> at >>> org.gradle.api.plugins.jetty.internal.JettyPluginWebAppContext.doStart(JettyPluginWebAppContext.java:112) >>> at >>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) >>> - locked <0x00000007c253f860> (a java.lang.Object) >>> at >>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152) >>> at >>> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156) >>> at >>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) >>> - locked <0x00000007c253fec0> (a java.lang.Object) >>> at >>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152) >>> at >>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) >>> - locked <0x00000007c253f918> (a java.lang.Object) >>> at >>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) >>> at org.mortbay.jetty.Server.doStart(Server.java:224) >>> at >>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) >>> - locked <0x00000007c253f8d0> (a java.lang.Object) >>> at >>> org.gradle.api.plugins.jetty.internal.Jetty6PluginServer.start(Jetty6PluginServer.java:111) >>> at >>> org.gradle.api.plugins.jetty.AbstractJettyRunTask.startJettyInternal(AbstractJettyRunTask.java:247) >>> at >>> org.gradle.api.plugins.jetty.AbstractJettyRunTask.startJetty(AbstractJettyRunTask.java:198) >>> at >>> org.gradle.api.plugins.jetty.AbstractJettyRunTask.start(AbstractJettyRunTask.java:169) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:601) >>> at >>> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) >>> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) >>> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047) >>> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877) >>> at >>> org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:216) >>> at >>> org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:122) >>> at >>> org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:147) >>> at org.gradle.api.plugins.jetty.JettyRun_Decorated.invokeMethod(Unknown >>> Source) >>> at groovy.lang.GroovyObject$invokeMethod.call(Unknown Source) >>> at org.gradle.util.ReflectionUtil.invoke(ReflectionUtil.groovy:23) >>> at >>> org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$4.execute(AnnotationProcessingTaskFactory.java:161) >>> at >>> org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$4.execute(AnnotationProcessingTaskFactory.java:156) >>> at >>> org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:510) >>> at >>> org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:499) >>> at >>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:64) >>> at >>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:49) >>> at >>> org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:34) >>> at >>> org.gradle.api.internal.changedetection.CacheLockHandlingTaskExecuter$1.run(CacheLockHandlingTaskExecuter.java:34) >>> at org.gradle.internal.Factories$1.create(Factories.java:22) >>> at >>> org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:179) >>> at >>> org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:232) >>> at >>> org.gradle.cache.internal.DefaultPersistentDirectoryStore.longRunningOperation(DefaultPersistentDirectoryStore.java:142) >>> at >>> org.gradle.api.internal.changedetection.DefaultTaskArtifactStateCacheAccess.longRunningOperation(DefaultTaskArtifactStateCacheAccess.java:83) >>> at >>> org.gradle.api.internal.changedetection.CacheLockHandlingTaskExecuter.execute(CacheLockHandlingTaskExecuter.java:32) >>> at >>> org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:55) >>> at >>> org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:57) >>> at >>> org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:41) >>> at >>> org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51) >>> at >>> org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:52) >>> at >>> org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:42) >>> at >>> org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:275) >>> at >>> org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.executeTask(DefaultTaskPlanExecutor.java:52) >>> at >>> org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.processTask(DefaultTaskPlanExecutor.java:38) >>> at >>> org.gradle.execution.taskgraph.ParallelTaskPlanExecutor$TaskExecutorWorker$1.run(ParallelTaskPlanExecutor.java:113) >>> at org.gradle.internal.Factories$1.create(Factories.java:22) >>> at >>> org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124) >>> at >>> org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112) >>> at >>> org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134) >>> at >>> org.gradle.api.internal.changedetection.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79) >>> at >>> org.gradle.execution.taskgraph.ParallelTaskPlanExecutor$TaskExecutorWorker.executeTaskWithCacheLock(ParallelTaskPlanExecutor.java:110) >>> at >>> org.gradle.execution.taskgraph.ParallelTaskPlanExecutor$TaskExecutorWorker.run(ParallelTaskPlanExecutor.java:100) >>> at java.lang.Thread.run(Thread.java:722) >>> >>> Found 1 deadlock. >>> >>> Heap >>> PSYoungGen total 286272K, used 56115K [0x00000007eaab0000, >>> 0x00000007febe0000, 0x0000000800000000) >>> eden space 269504K, 20% used >>> [0x00000007eaab0000,0x00000007ee17cdf0,0x00000007fb1e0000) >>> from space 16768K, 0% used >>> [0x00000007fdb80000,0x00000007fdb80000,0x00000007febe0000) >>> to space 20800K, 0% used >>> [0x00000007fc340000,0x00000007fc340000,0x00000007fd790000) >>> ParOldGen total 100864K, used 55724K [0x00000007c0000000, >>> 0x00000007c6280000, 0x00000007eaab0000) >>> object space 100864K, 55% used >>> [0x00000007c0000000,0x00000007c366b120,0x00000007c6280000) >>> PSPermGen total 77120K, used 40052K [0x00000007b0000000, >>> 0x00000007b4b50000, 0x00000007c0000000) >>> object space 77120K, 51% used >>> [0x00000007b0000000,0x00000007b271d388,0x00000007b4b50000) >>> >>> 2013-04-18 17:18:42 >>> Full thread dump Java HotSpot(TM) 64-Bit Server VM (23.0-b21 mixed mode): >>> >>> >>> Best regards, >>> Arunas F >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org >> For additional commands, e-mail: users-h...@tapestry.apache.org >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > For additional commands, e-mail: users-h...@tapestry.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org