Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-12604

Concurrent Modification Exceptions showing up in build and startup

    Details

    • Type: Bug Fix Bug Fix
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Cannot Reproduce
    • Affects Version/s: 2.5
    • Fix Version/s: 2.6
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Labels:
    • Similar issues:
      KULRICE-13371ActionList load test: 10 concurrent users
      KULRICE-3276changelog 8050 - Modifications for ServiceDelegatingLifecycle
      KULRICE-1756When Suite Lifecycle startup fails, already started lifecycles are not stopped
      KULRICE-4593Rice wont startup under Java 5
      KULRICE-6509Synchronize with remote services on KSB startup
      KULRICE-4022Concurrency issues in RouteDocumentMessageService
      KULRICE-8619Examine modifications made to support InitiatedDocumentView
      KULRICE-12988KC app startup time really slow with the latest rice 2.5 revision
      KULRICE-559Route Queue failing on startup
      KULRICE-9147Toggling the show/hide active button on collections causes an exception
    • Sprint:
      2.5.0-m3 Sprint 1, Middleware 2.5.2 Sprint 5, Rice Sprint 2015-02-18
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Code Review Status:
      Not Required
    • Story Points:
      13

      Description

      In several places, we have seen the Concurrent Modification Exception showing up now during builds and environment startups. Sometimes they actually go away after a rebuild, so it's a mystery as to why they are occurring as they were not seen in 2.4.

      Unit Test Stack Trace:

      [ERROR] Failed to execute goal org.kuali.maven.plugins:spring-maven-plugin:3.0.4:load (project-augment) on project rice-development-tools: Execution project-augment of goal org.kuali.maven.plugins:spring-maven-plugin:3.0.4:load failed: Error creating bean with name 'getExecutable' defined in class org.kuali.maven.plugins.spring.config.MojoExecutableConfig: Invocation of init method failed; nested exception is java.lang.IllegalStateException: java.lang.reflect.InvocationTargetException: Error creating bean with name 'projectPropertySource' defined in class org.kuali.common.util.spring.ProjectPropertySourceConfig: Instantiation of bean failed; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public org.springframework.core.env.PropertiesPropertySource org.kuali.common.util.spring.ProjectPropertySourceConfig.projectPropertySource()] threw exception; nested exception is java.util.ConcurrentModificationException -> [Help 1]
      

      Environment 12 (Rice Sample App) Startup Stack Trace:

      2014-05-01 15:34:58,242 [pool-2-thread-1] u:/d: INFO  org.kuali.rice.krad.datadictionary.DataDictionary - Completed DD XML File Load
      2014-05-01 15:34:58,243 [pool-2-thread-1] u:/d: INFO  org.kuali.rice.krad.datadictionary.DataDictionary - Starting Data Dictionary Post Processing
      2014-05-01 15:34:58,544 [pool-2-thread-1] u:/d: INFO  org.kuali.rice.krad.datadictionary.DictionaryBeanFactoryPostProcessor - Beginning dictionary bean post processing
      2014-05-01 15:35:00,921 [pool-2-thread-1] u:/d: INFO  org.kuali.rice.krad.datadictionary.DictionaryBeanFactoryPostProcessor - Finished dictionary bean post processing
      2014-05-01 15:35:00,924 [pool-2-thread-1] u:/d: INFO  org.kuali.rice.krad.datadictionary.uif.UifBeanFactoryPostProcessor - Beginning post processing of bean factory for UIF expressions
      2014-05-01 15:35:01,126 [notificationScheduler_Worker-3] u:/d: FATAL org.kuali.rice.core.framework.persistence.jta.KualiTransactionInterceptor - Exception caught by Transaction Interceptor, this will cause a rollback at the end of the transaction.
      org.springframework.orm.jpa.JpaSystemException: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException; nested exception is javax.persistence.PersistenceException: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:321)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:533)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:324)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.handles(JpaPersistenceProvider.java:264)
      	at sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at $Proxy55.handles(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderRegistryImpl.getPersistenceProvider(ProviderRegistryImpl.java:147)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.persistenceProviderForType(ProviderBasedDataObjectService.java:193)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.findMatching(ProviderBasedDataObjectService.java:90)
      	at org.kuali.rice.ken.dao.impl.NotificationDaoJpa.findMatchedNotificationsForResolution(NotificationDaoJpa.java:62)
      	at org.kuali.rice.ken.service.impl.NotificationServiceImpl.takeNotificationsForResolution(NotificationServiceImpl.java:276)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at net.bull.javamelody.MonitoringSpringInterceptor.invoke(MonitoringSpringInterceptor.java:74)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at $Proxy317.takeNotificationsForResolution(Unknown Source)
      	at org.kuali.rice.ken.service.impl.NotificationMessageDeliveryResolverServiceImpl.takeAvailableWorkItems(NotificationMessageDeliveryResolverServiceImpl.java:80)
      	at org.kuali.rice.ken.service.impl.ConcurrentJob$1.doInTransaction(ConcurrentJob.java:140)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ken.service.impl.ConcurrentJob.run(ConcurrentJob.java:137)
      	at org.kuali.rice.ken.service.impl.NotificationMessageDeliveryResolverServiceImpl.resolveNotificationMessageDeliveries(NotificationMessageDeliveryResolverServiceImpl.java:215)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at net.bull.javamelody.MonitoringSpringInterceptor.invoke(MonitoringSpringInterceptor.java:74)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at $Proxy322.resolveNotificationMessageDeliveries(Unknown Source)
      	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.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
      	at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:311)
      	at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:113)
      	at org.quartz.core.JobRunShell.run(JobRunShell.java:216)
      	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)
      Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:547)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:204)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getMetamodel(EntityManagerFactoryDelegate.java:637)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getMetamodel(EntityManagerFactoryImpl.java:548)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.invokeProxyMethod(AbstractEntityManagerFactoryBean.java:376)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler.invoke(AbstractEntityManagerFactoryBean.java:519)
      	at $Proxy43.getMetamodel(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:177)
      	at $Proxy53.getMetamodel(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:268)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:264)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:321)
      	... 54 more
      Caused by: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.exceptions.EntityManagerSetupException.cannotDeployWithoutPredeploy(EntityManagerSetupException.java:190)
      	... 72 more
      Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.createDeployFailedPersistenceException(EntityManagerSetupImpl.java:820)
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:760)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:204)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getMetamodel(EntityManagerFactoryDelegate.java:637)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getMetamodel(EntityManagerFactoryImpl.java:548)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.invokeProxyMethod(AbstractEntityManagerFactoryBean.java:376)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler.invoke(AbstractEntityManagerFactoryBean.java:519)
      	at $Proxy43.getMetamodel(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:177)
      	at $Proxy53.getMetamodel(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:268)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:264)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:321)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.handles(JpaPersistenceProvider.java:264)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      	... 52 more
      Caused by: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.exceptions.EntityManagerSetupException.deployFailed(EntityManagerSetupException.java:238)
      	... 74 more
      Caused by: java.util.ConcurrentModificationException
      	at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:819)
      	at java.util.ArrayList$Itr.next(ArrayList.java:791)
      	at org.springframework.instrument.classloading.WeavingTransformer.transformIfNecessary(WeavingTransformer.java:93)
      	at org.springframework.instrument.classloading.WeavingTransformer.transformIfNecessary(WeavingTransformer.java:78)
      	at org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader.findResourceInternal(TomcatInstrumentableClassLoader.java:118)
      	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2771)
      	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
      	at java.lang.ClassLoader.defineClass1(Native Method)
      	at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
      	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
      	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2836)
      	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
      	at java.lang.ClassLoader.defineClass1(Native Method)
      	at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
      	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
      	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2836)
      	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
      	at java.lang.Class.getDeclaredMethods0(Native Method)
      	at java.lang.Class.privateGetDeclaredMethods(Class.java:2442)
      	at java.lang.Class.getDeclaredMethods(Class.java:1808)
      	at org.eclipse.persistence.internal.security.PrivilegedAccessHelper.getDeclaredMethods(PrivilegedAccessHelper.java:324)
      	at org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListenerMetadata.getDeclaredMethods(EntityListenerMetadata.java:254)
      	at org.eclipse.persistence.internal.jpa.metadata.listeners.EntityClassListenerMetadata.process(EntityClassListenerMetadata.java:89)
      	at org.eclipse.persistence.internal.jpa.metadata.accessors.classes.EntityAccessor.processListeners(EntityAccessor.java:1220)
      	at org.eclipse.persistence.internal.jpa.metadata.MetadataProcessor.addEntityListeners(MetadataProcessor.java:138)
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:591)
      	... 72 more
      2014-05-01 15:35:01,145 [notificationScheduler_Worker-3] u:/d: ERROR org.kuali.rice.ken.service.impl.NotificationMessageDeliveryResolverServiceImpl - Error taking work items
      org.springframework.orm.jpa.JpaSystemException: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException; nested exception is javax.persistence.PersistenceException: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:321)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:533)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:324)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.handles(JpaPersistenceProvider.java:264)
      	at sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at $Proxy55.handles(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderRegistryImpl.getPersistenceProvider(ProviderRegistryImpl.java:147)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.persistenceProviderForType(ProviderBasedDataObjectService.java:193)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.findMatching(ProviderBasedDataObjectService.java:90)
      	at org.kuali.rice.ken.dao.impl.NotificationDaoJpa.findMatchedNotificationsForResolution(NotificationDaoJpa.java:62)
      	at org.kuali.rice.ken.service.impl.NotificationServiceImpl.takeNotificationsForResolution(NotificationServiceImpl.java:276)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at net.bull.javamelody.MonitoringSpringInterceptor.invoke(MonitoringSpringInterceptor.java:74)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at $Proxy317.takeNotificationsForResolution(Unknown Source)
      	at org.kuali.rice.ken.service.impl.NotificationMessageDeliveryResolverServiceImpl.takeAvailableWorkItems(NotificationMessageDeliveryResolverServiceImpl.java:80)
      	at org.kuali.rice.ken.service.impl.ConcurrentJob$1.doInTransaction(ConcurrentJob.java:140)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ken.service.impl.ConcurrentJob.run(ConcurrentJob.java:137)
      	at org.kuali.rice.ken.service.impl.NotificationMessageDeliveryResolverServiceImpl.resolveNotificationMessageDeliveries(NotificationMessageDeliveryResolverServiceImpl.java:215)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at net.bull.javamelody.MonitoringSpringInterceptor.invoke(MonitoringSpringInterceptor.java:74)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at $Proxy322.resolveNotificationMessageDeliveries(Unknown Source)
      	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.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
      	at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:311)
      	at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:113)
      	at org.quartz.core.JobRunShell.run(JobRunShell.java:216)
      	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)
      Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:547)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:204)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getMetamodel(EntityManagerFactoryDelegate.java:637)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getMetamodel(EntityManagerFactoryImpl.java:548)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.invokeProxyMethod(AbstractEntityManagerFactoryBean.java:376)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler.invoke(AbstractEntityManagerFactoryBean.java:519)
      	at $Proxy43.getMetamodel(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:177)
      	at $Proxy53.getMetamodel(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:268)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:264)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:321)
      	... 54 more
      Caused by: Exception [EclipseLink-28013] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Unable to deploy PersistenceUnit [kim] in invalid state [DeployFailed].
      Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.exceptions.EntityManagerSetupException.cannotDeployWithoutPredeploy(EntityManagerSetupException.java:190)
      	... 72 more
      Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.createDeployFailedPersistenceException(EntityManagerSetupImpl.java:820)
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:760)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:204)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getMetamodel(EntityManagerFactoryDelegate.java:637)
      	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getMetamodel(EntityManagerFactoryImpl.java:548)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.invokeProxyMethod(AbstractEntityManagerFactoryBean.java:376)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler.invoke(AbstractEntityManagerFactoryBean.java:519)
      	at $Proxy43.getMetamodel(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:177)
      	at $Proxy53.getMetamodel(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:268)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$6.call(JpaPersistenceProvider.java:264)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:321)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.handles(JpaPersistenceProvider.java:264)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      	... 52 more
      Caused by: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.EntityManagerSetupException
      Exception Description: Deployment of PersistenceUnit [kim] failed. Close all factories for this PersistenceUnit.
      Internal Exception: java.util.ConcurrentModificationException
      	at org.eclipse.persistence.exceptions.EntityManagerSetupException.deployFailed(EntityManagerSetupException.java:238)
      	... 74 more
      Caused by: java.util.ConcurrentModificationException
      	at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:819)
      	at java.util.ArrayList$Itr.next(ArrayList.java:791)
      	at org.springframework.instrument.classloading.WeavingTransformer.transformIfNecessary(WeavingTransformer.java:93)
      	at org.springframework.instrument.classloading.WeavingTransformer.transformIfNecessary(WeavingTransformer.java:78)
      	at org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader.findResourceInternal(TomcatInstrumentableClassLoader.java:118)
      	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2771)
      	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
      	at java.lang.ClassLoader.defineClass1(Native Method)
      	at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
      	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
      	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2836)
      	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
      	at java.lang.ClassLoader.defineClass1(Native Method)
      	at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
      	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
      	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2836)
      	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
      	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
      	at java.lang.Class.getDeclaredMethods0(Native Method)
      	at java.lang.Class.privateGetDeclaredMethods(Class.java:2442)
      	at java.lang.Class.getDeclaredMethods(Class.java:1808)
      	at org.eclipse.persistence.internal.security.PrivilegedAccessHelper.getDeclaredMethods(PrivilegedAccessHelper.java:324)
      	at org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListenerMetadata.getDeclaredMethods(EntityListenerMetadata.java:254)
      	at org.eclipse.persistence.internal.jpa.metadata.listeners.EntityClassListenerMetadata.process(EntityClassListenerMetadata.java:89)
      	at org.eclipse.persistence.internal.jpa.metadata.accessors.classes.EntityAccessor.processListeners(EntityAccessor.java:1220)
      	at org.eclipse.persistence.internal.jpa.metadata.MetadataProcessor.addEntityListeners(MetadataProcessor.java:138)
      	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:591)
      	... 72 more
      2014-05-01 15:35:01,270 [pool-2-thread-1] u:/d: INFO  org.kuali.rice.krad.datadictionary.uif.UifBeanFactoryPostProcessor - Finished post processing of bean factory for UIF expressions
      

        Issue Links

          Activity

          Hide
          Peter Giles (Inactive) added a comment -

          I shared the first issue w/ Jeff Caddel via chat. That one seems to be happening either in DevOps' or in some Maven code, but it's hard to say for sure with just the log statement in the Jira.

          Show
          Peter Giles (Inactive) added a comment - I shared the first issue w/ Jeff Caddel via chat. That one seems to be happening either in DevOps' or in some Maven code, but it's hard to say for sure with just the log statement in the Jira.
          Hide
          Peter Giles (Inactive) added a comment - - edited

          It was a bit of fun to get something like this issue (the second one) to happen in the debugger. I'm attaching a screenshot of my two breakpoint configurations in case we need to repro it again at a later date.

          The trick is to get two threads paused on those breakpoints at once. Keep an eye on the Threads view, and keep continuing when the debugger breaks until you see two threads with red dots on the icons indicating they are stopped. Then you can force the iteration to start, and immediately switch threads and add the transformer which will cause a ConcurrentModificationException to fly the next time through the transformers loop.

          Show
          Peter Giles (Inactive) added a comment - - edited It was a bit of fun to get something like this issue (the second one) to happen in the debugger. I'm attaching a screenshot of my two breakpoint configurations in case we need to repro it again at a later date. The trick is to get two threads paused on those breakpoints at once. Keep an eye on the Threads view, and keep continuing when the debugger breaks until you see two threads with red dots on the icons indicating they are stopped. Then you can force the iteration to start, and immediately switch threads and add the transformer which will cause a ConcurrentModificationException to fly the next time through the transformers loop.
          Hide
          Peter Giles (Inactive) added a comment -

          I posted a message on the Spring container forum this afternoon seeing if I can get any confirmation that this is a bug and not a configuration issue on our side: http://forum.spring.io/forum/spring-projects/container/748692-thread-safety-issue-with-weavingtransformer-when-using-a-schedulerfactorybean

          Show
          Peter Giles (Inactive) added a comment - I posted a message on the Spring container forum this afternoon seeing if I can get any confirmation that this is a bug and not a configuration issue on our side: http://forum.spring.io/forum/spring-projects/container/748692-thread-safety-issue-with-weavingtransformer-when-using-a-schedulerfactorybean
          Hide
          Peter Giles (Inactive) added a comment -

          env5 failed to start up today with this exception in the log. Attaching the full catalina.out

          Show
          Peter Giles (Inactive) added a comment - env5 failed to start up today with this exception in the log. Attaching the full catalina.out
          Hide
          Peter Giles (Inactive) added a comment -

          Note that I have created DEVOPS-32 for the build time CME that we're seeing, it's linked to this jira now.

          Show
          Peter Giles (Inactive) added a comment - Note that I have created DEVOPS-32 for the build time CME that we're seeing, it's linked to this jira now.
          Hide
          Peter Giles (Inactive) added a comment -

          env14 failed to start up today with the same old exception and stack trace.

          Show
          Peter Giles (Inactive) added a comment - env14 failed to start up today with the same old exception and stack trace.
          Hide
          Kristina Taylor (Inactive) added a comment -

          Looks like Spring has closed their forums and moved to Stack Overflow. You will probably have to repost the question with the Spring tag.

          Show
          Kristina Taylor (Inactive) added a comment - Looks like Spring has closed their forums and moved to Stack Overflow. You will probably have to repost the question with the Spring tag.
          Hide
          Eric Westfall added a comment -

          For this item, research and try to see if we can duplicate the problem. If we can't reproduce the problem, then we can close this issue.

          Show
          Eric Westfall added a comment - For this item, research and try to see if we can duplicate the problem. If we can't reproduce the problem, then we can close this issue.
          Hide
          Shannon Hess added a comment -

          I've tried to duplicate this problem with no luck. Sona saw this when she had kc running locally a few weeks ago, but I was not able to reproduce the issue with KC running locally. She tried as well today and did not see the issue either. I'm going to close this as Cannot Reproduce. If anyone does see this again, please re-open the issue with what you were doing at the time it occurred.

          Thanks,
          Shannon

          Show
          Shannon Hess added a comment - I've tried to duplicate this problem with no luck. Sona saw this when she had kc running locally a few weeks ago, but I was not able to reproduce the issue with KC running locally. She tried as well today and did not see the issue either. I'm going to close this as Cannot Reproduce. If anyone does see this again, please re-open the issue with what you were doing at the time it occurred. Thanks, Shannon

            People

            • Assignee:
              Shannon Hess
              Reporter:
              Kristina Taylor (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - Not Specified
                Not Specified
                Logged:
                Time Spent - 6 hours
                6h

                  Agile

                    Structure Helper Panel