com.atlassian.crowd.exception.OperationFailedException: Java heap space

Atlassian JIRA | Michael Heemskerk | 5 years ago
  1. 0

    The logging of error messages that are received in the REST response from Crowd by the RestCrowdClient doesn't make it clear that the error message is coming from the remote system. This is confusing and is leading to issues in support where it's hard to figure out what exactly is going on in which system. An example from a recent FishEye support case. The customer opened a support issue with FishEye logs in which it appears that FishEye has run out of heap space: {noformat} com.atlassian.crowd.exception.OperationFailedException: Java heap space at com.atlassian.crowd.integration.rest.service.RestCrowdClient.handleCommonExceptions(RestCrowdClient.java:1084) at com.atlassian.crowd.integration.rest.service.RestCrowdClient.getNamesOfNestedUsersOfGroup(RestCrowdClient.java:677) at com.cenqua.fisheye.user.crowd.CrowdAuth$6.call(CrowdAuth.java:405) at com.cenqua.fisheye.user.crowd.CrowdAuth$6.call(CrowdAuth.java:403) at com.cenqua.fisheye.user.crowd.CrowdAuth.withTimer(CrowdAuth.java:92) at com.cenqua.fisheye.user.crowd.CrowdAuth.getUsersInGroup(CrowdAuth.java:403) at com.cenqua.fisheye.user.DefaultUserManager$16.write(DefaultUserManager.java:1057) at com.cenqua.fisheye.user.DefaultUserManager$16.write(DefaultUserManager.java:1050) at com.cenqua.fisheye.config.DB0Handle$2.write(DB0Handle.java:122) at com.cenqua.fisheye.config.DB0Handle.write(DB0Handle.java:96) at com.cenqua.fisheye.config.DB0Handle.write(DB0Handle.java:120) at com.cenqua.fisheye.user.DefaultUserManager.getUsersInGroup(DefaultUserManager.java:1050) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196) at $Proxy25.getUsersInGroup(Unknown Source) {noformat} While it is actually Crowd that has run out of heap space and is letting FishEye know what is wrong. A lot of confusion could have been avoided if the log had simply said: *Error message from Crowd: Java heap space*

    Atlassian JIRA | 5 years ago | Michael Heemskerk
    com.atlassian.crowd.exception.OperationFailedException: Java heap space
  2. 0

    The logging of error messages that are received in the REST response from Crowd by the RestCrowdClient doesn't make it clear that the error message is coming from the remote system. This is confusing and is leading to issues in support where it's hard to figure out what exactly is going on in which system. An example from a recent FishEye support case. The customer opened a support issue with FishEye logs in which it appears that FishEye has run out of heap space: {noformat} com.atlassian.crowd.exception.OperationFailedException: Java heap space at com.atlassian.crowd.integration.rest.service.RestCrowdClient.handleCommonExceptions(RestCrowdClient.java:1084) at com.atlassian.crowd.integration.rest.service.RestCrowdClient.getNamesOfNestedUsersOfGroup(RestCrowdClient.java:677) at com.cenqua.fisheye.user.crowd.CrowdAuth$6.call(CrowdAuth.java:405) at com.cenqua.fisheye.user.crowd.CrowdAuth$6.call(CrowdAuth.java:403) at com.cenqua.fisheye.user.crowd.CrowdAuth.withTimer(CrowdAuth.java:92) at com.cenqua.fisheye.user.crowd.CrowdAuth.getUsersInGroup(CrowdAuth.java:403) at com.cenqua.fisheye.user.DefaultUserManager$16.write(DefaultUserManager.java:1057) at com.cenqua.fisheye.user.DefaultUserManager$16.write(DefaultUserManager.java:1050) at com.cenqua.fisheye.config.DB0Handle$2.write(DB0Handle.java:122) at com.cenqua.fisheye.config.DB0Handle.write(DB0Handle.java:96) at com.cenqua.fisheye.config.DB0Handle.write(DB0Handle.java:120) at com.cenqua.fisheye.user.DefaultUserManager.getUsersInGroup(DefaultUserManager.java:1050) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196) at $Proxy25.getUsersInGroup(Unknown Source) {noformat} While it is actually Crowd that has run out of heap space and is letting FishEye know what is wrong. A lot of confusion could have been avoided if the log had simply said: *Error message from Crowd: Java heap space*

    Atlassian JIRA | 5 years ago | Michael Heemskerk
    com.atlassian.crowd.exception.OperationFailedException: Java heap space
  3. 0

    h3. Summary All users with Confluence Application Access get a "Not Permitted" error when navigating to Confluence Cloud. !not permitted.jpeg! h3. Environment *New* Confluence Cloud Site h3. Steps to Reproduce # Create a Confluence Cloud site (could be with or without JIRA) # Create a user with Application Access to Confluence # Login with user # Navigate to instance.atlassian.net/wiki h5. Expected Results: Confluence Dashboard loads normally as user has Application Access and belongs to the confluence-users group that is granted Global Permission to view Confluence by default. h5. Actual Results The user is shown a "Not Permitted" error. Confluence logs show: {noformat}INFO [ajp-bio-127.0.0.101-8009-exec-8] [embedded.admin.list.DirectoriesController] sync User directory synchronisation requested: [ Crowd Repository ], type: [ CROWD ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteDirectory] synchroniseCache INCREMENTAL synchronisation for directory [ 65537 ] starting INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteDirectory] synchroniseCache Attempting INCREMENTAL synchronisation for directory [ 65537 ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteDirectory] synchroniseCache Incremental synchronisation for directory [ 65537 ] was not completed, falling back to a full synchronisation INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteDirectory] synchroniseCache INCREMENTAL synchronisation for directory [ 65537 ] was not successful, attempting FULL INFO [scheduler_Worker-3] [directory.ldap.cache.RemoteDirectoryCacheRefresher] findAllRemoteUsers found [ 2 ] remote users in [ 67 ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] deleteCachedUsersNotIn scanned and compared [ 2 ] users for delete in DB cache in [ 1ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] deleteCachedUsersNotIn scanned for deleted users in [ 2ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] getUsersToAddAndUpdate scanning [ 2 ] users to add or update INFO [scheduler_Worker-3] [atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations] addOrUpdateCachedUsers scanned and compared [ 2 ] users for update in DB cache in [ 2ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations] addOrUpdateCachedUsers synchronised [ 2 ] users in [ 2ms ] INFO [scheduler_Worker-3] [directory.ldap.cache.RemoteDirectoryCacheRefresher] findAllRemoteGroups found [ 15 ] remote groups in [ 59 ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] deleteCachedGroupsNotIn scanned and compared [ 15 ] groups for delete in DB cache in [ 1ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations] addOrUpdateCachedGroups scanning [ 15 ] groups to add or update INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] findGroupsToUpdate scanned and compared [ 15 ] groups for update in DB cache in [ 1ms ] WARN [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions SQL Error: 0, SQLState: 23505 [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions Batch entry 0 insert into cwd_group (group_name, lower_group_name, active, local, created_date, updated_date, description, group_type, directory_id, id) values ('administrators', 'administrators', 'T', 'F', '2015-09-24 01:56:49.073000 -04:00:00', '2015-09-24 01:56:49.073000 -04:00:00', 'Grants access to all applications and their administration features (excluding Site administration)', 'GROUP', 65537, 688324) was aborted. Call getNextException to see the cause. WARN [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions SQL Error: 0, SQLState: 23505 [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions ERROR: duplicate key value violates unique constraint "cwd_group_name_dir_id" WARN [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions SQL Error: 0, SQLState: 23505 [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions Batch entry 0 insert into cwd_group (group_name, lower_group_name, active, local, created_date, updated_date, description, group_type, directory_id, id) values ('administrators', 'administrators', 'T', 'F', '2015-09-24 01:56:49.073000 -04:00:00', '2015-09-24 01:56:49.073000 -04:00:00', 'Grants access to all applications and their administration features (excluding Site administration)', 'GROUP', 65537, 688324) was aborted. Call getNextException to see the cause. WARN [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions SQL Error: 0, SQLState: 23505 [scheduler_Worker-3] [sf.hibernate.util.JDBCExceptionReporter] logExceptions ERROR: duplicate key value violates unique constraint "cwd_group_name_dir_id" [scheduler_Worker-3] [sf.hibernate.impl.SessionImpl] execute Could not synchronize database state with session WARN [scheduler_Worker-3] [persistence.hibernate.batch.AbstractBatchProcessor] processBatch batch failed falling back to individual processing java.lang.RuntimeException: could not flush session at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.flushSession(Hibernate2BatchProcessor.java:178) at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.commitTransaction(Hibernate2BatchProcessor.java:115) at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.afterProcessBatch(Hibernate2BatchProcessor.java:46) at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:159) at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:132) at com.atlassian.crowd.embedded.hibernate2.HibernateGroupDao.addAll(HibernateGroupDao.java:135) at com.atlassian.confluence.user.crowd.CachedCrowdGroupDao.addAll(CachedCrowdGroupDao.java:144) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.atlassian.spring.interceptors.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:16) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at com.sun.proxy.$Proxy113.addAll(Unknown Source) at com.atlassian.crowd.directory.CachingDirectory.addAllGroups(CachingDirectory.java:115) at com.atlassian.crowd.directory.DbCachingRemoteChangeOperations.addGroups(DbCachingRemoteChangeOperations.java:569) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at com.atlassian.crowd.directory.$Proxy1723.addGroups(Unknown Source) at com.atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations.addOrUpdateCachedGroups(DirectoryCacheImplUsingChangeOperations.java:90) at com.atlassian.crowd.directory.ldap.cache.RemoteDirectoryCacheRefresher.synchroniseAllGroups(RemoteDirectoryCacheRefresher.java:114) at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAll(AbstractCacheRefresher.java:91) at com.atlassian.crowd.directory.ldap.cache.EventTokenChangedCacheRefresher.synchroniseAll(EventTokenChangedCacheRefresher.java:67) at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCache(DbCachingRemoteDirectory.java:1122) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchronise(DirectorySynchroniserImpl.java:76) at com.atlassian.crowd.directory.DbCachingDirectoryPoller.pollChanges(DbCachingDirectoryPoller.java:50) at com.atlassian.crowd.manager.directory.monitor.poller.DirectoryPollerJobRunner.runJob(DirectoryPollerJobRunner.java:93) at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153) at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118) at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97) at com.atlassian.scheduler.quartz1.Quartz1Job.execute(Quartz1Job.java:32) at org.quartz.core.JobRunShell.run(JobRunShell.java:223) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool.lambda$runInThread$311(ConfluenceQuartzThreadPool.java:19) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool$$Lambda$170/31222255.run(Unknown Source) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) Caused by: net.sf.hibernate.exception.ConstraintViolationException: could not insert: [com.atlassian.crowd.model.group.InternalGroup#688338] at net.sf.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:62) at net.sf.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) at net.sf.hibernate.persister.AbstractEntityPersister.convert(AbstractEntityPersister.java:1331) at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:472) at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:436) at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37) at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2476) at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2462) at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2419) at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2288) at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.flushSession(Hibernate2BatchProcessor.java:174) ... 48 more Caused by: java.sql.BatchUpdateException: Batch entry 0 insert into cwd_group (group_name, lower_group_name, active, local, created_date, updated_date, description, group_type, directory_id, id) values ('administrators', 'administrators', 'T', 'F', '2015-09-24 01:56:49.073000 -04:00:00', '2015-09-24 01:56:49.073000 -04:00:00', 'Grants access to all applications and their administration features (excluding Site administration)', 'GROUP', 65537, 688324) was aborted. Call getNextException to see the cause. at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2746) at org.postgresql.core.v3.QueryExecutorImpl$1.handleError(QueryExecutorImpl.java:457) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1887) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405) at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2893) at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297) at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297) at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297) at net.sf.hibernate.impl.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:54) at net.sf.hibernate.impl.BatchingBatcher.addToBatch(BatchingBatcher.java:34) at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:462) ... 55 more caused by: org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "cwd_group_name_dir_id" at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2157) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1886) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405) at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2893) at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297) at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297) at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297) at net.sf.hibernate.impl.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:54) at net.sf.hibernate.impl.BatchingBatcher.addToBatch(BatchingBatcher.java:34) at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:462) at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:436) at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37) at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2476) at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2462) at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2419) at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2288) at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.flushSession(Hibernate2BatchProcessor.java:174) at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.commitTransaction(Hibernate2BatchProcessor.java:115) at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.afterProcessBatch(Hibernate2BatchProcessor.java:46) at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:159) at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:132) at com.atlassian.crowd.embedded.hibernate2.HibernateGroupDao.addAll(HibernateGroupDao.java:135) at com.atlassian.confluence.user.crowd.CachedCrowdGroupDao.addAll(CachedCrowdGroupDao.java:144) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.atlassian.spring.interceptors.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:16) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at com.sun.proxy.$Proxy113.addAll(Unknown Source) at com.atlassian.crowd.directory.CachingDirectory.addAllGroups(CachingDirectory.java:115) at com.atlassian.crowd.directory.DbCachingRemoteChangeOperations.addGroups(DbCachingRemoteChangeOperations.java:569) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at com.atlassian.crowd.directory.$Proxy1723.addGroups(Unknown Source) at com.atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations.addOrUpdateCachedGroups(DirectoryCacheImplUsingChangeOperations.java:90) at com.atlassian.crowd.directory.ldap.cache.RemoteDirectoryCacheRefresher.synchroniseAllGroups(RemoteDirectoryCacheRefresher.java:114) at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAll(AbstractCacheRefresher.java:91) at com.atlassian.crowd.directory.ldap.cache.EventTokenChangedCacheRefresher.synchroniseAll(EventTokenChangedCacheRefresher.java:67) at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCache(DbCachingRemoteDirectory.java:1122) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchronise(DirectorySynchroniserImpl.java:76) at com.atlassian.crowd.directory.DbCachingDirectoryPoller.pollChanges(DbCachingDirectoryPoller.java:50) at com.atlassian.crowd.manager.directory.monitor.poller.DirectoryPollerJobRunner.runJob(DirectoryPollerJobRunner.java:93) at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153) at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118) at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97) at com.atlassian.scheduler.quartz1.Quartz1Job.execute(Quartz1Job.java:32) at org.quartz.core.JobRunShell.run(JobRunShell.java:223) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool.lambda$runInThread$311(ConfluenceQuartzThreadPool.java:19) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool$$Lambda$170/31222255.run(Unknown Source) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) ... truncated log. It repeats last error for every group. see full log attached to issue .... [scheduler_Worker-3] [persistence.hibernate.batch.AbstractBatchProcessor] processIndividual Could not process class com.atlassian.crowd.model.group.InternalGroup: com.atlassian.crowd.model.group.InternalGroup@26bfb4[id=688338,name=site-admins,type=GROUP,active=true,description=Grants access to all applications, their administration features and Site administration, which includes managing users and bills,lowerName=site-admins,createdDate=Thu Sep 24 01:56:49 EDT 2015,updatedDate=Thu Sep 24 01:56:49 EDT 2015,directoryId=65537] java.lang.RuntimeException: Confluence does not support individual processing at com.atlassian.crowd.embedded.hibernate2.batch.Hibernate2BatchProcessor.beforeProcessIndividual(Hibernate2BatchProcessor.java:58) at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processIndividual(AbstractBatchProcessor.java:182) at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:167) at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:132) at com.atlassian.crowd.embedded.hibernate2.HibernateGroupDao.addAll(HibernateGroupDao.java:135) at com.atlassian.confluence.user.crowd.CachedCrowdGroupDao.addAll(CachedCrowdGroupDao.java:144) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.atlassian.spring.interceptors.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:16) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at com.sun.proxy.$Proxy113.addAll(Unknown Source) at com.atlassian.crowd.directory.CachingDirectory.addAllGroups(CachingDirectory.java:115) at com.atlassian.crowd.directory.DbCachingRemoteChangeOperations.addGroups(DbCachingRemoteChangeOperations.java:569) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at com.atlassian.crowd.directory.$Proxy1723.addGroups(Unknown Source) at com.atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations.addOrUpdateCachedGroups(DirectoryCacheImplUsingChangeOperations.java:90) at com.atlassian.crowd.directory.ldap.cache.RemoteDirectoryCacheRefresher.synchroniseAllGroups(RemoteDirectoryCacheRefresher.java:114) at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAll(AbstractCacheRefresher.java:91) at com.atlassian.crowd.directory.ldap.cache.EventTokenChangedCacheRefresher.synchroniseAll(EventTokenChangedCacheRefresher.java:67) at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCache(DbCachingRemoteDirectory.java:1122) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchronise(DirectorySynchroniserImpl.java:76) at com.atlassian.crowd.directory.DbCachingDirectoryPoller.pollChanges(DbCachingDirectoryPoller.java:50) at com.atlassian.crowd.manager.directory.monitor.poller.DirectoryPollerJobRunner.runJob(DirectoryPollerJobRunner.java:93) at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153) at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118) at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97) at com.atlassian.scheduler.quartz1.Quartz1Job.execute(Quartz1Job.java:32) at org.quartz.core.JobRunShell.run(JobRunShell.java:223) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool.lambda$runInThread$311(ConfluenceQuartzThreadPool.java:19) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool$$Lambda$170/31222255.run(Unknown Source) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll The following groups could not be processed: INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll administrators INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll _no-one-at-all INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll atlassian-addons INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll _licensed-jira INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll confluence-users INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll balsamiq-mockups-editors INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll jira-developers INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll _licensed-confluence INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll jira-administrators INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll _licensed-fecru INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll _licensed-bamboo INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll jira-users INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll system-administrators INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll confluence-administrators INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll site-admins INFO [scheduler_Worker-3] [crowd.embedded.hibernate2.HibernateGroupDao] addAll Please try to resolve any errors with these groups, and try again. WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: administrators WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: _no-one-at-all WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: atlassian-addons WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: _licensed-jira WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: confluence-users WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: balsamiq-mockups-editors WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: jira-developers WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: _licensed-confluence WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: jira-administrators WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: _licensed-fecru WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: _licensed-bamboo WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: jira-users WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: system-administrators WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: confluence-administrators WARN [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] logFailures Could not add the following entity to the directory [ Crowd Internal Directory ]: site-admins INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteChangeOperations] addGroups added [ 0 ] groups successfully in [ 50ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations] addOrUpdateCachedGroups synchronized [ 15 ] groups in [ 52ms ] INFO [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingRemoteDirectory] synchroniseCache failed synchronisation complete for directory [ 65537 ] in [ 198ms ] [scheduler_Worker-3] [atlassian.crowd.directory.DbCachingDirectoryPoller] pollChanges Error occurred while refreshing the cache for directory [ 65537 ]. com.atlassian.crowd.exception.OperationFailedException: Failed to synchronize directory group attributes for missing group: jira-administrators at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAllGroupAttributes(AbstractCacheRefresher.java:129) at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAll(AbstractCacheRefresher.java:94) at com.atlassian.crowd.directory.ldap.cache.EventTokenChangedCacheRefresher.synchroniseAll(EventTokenChangedCacheRefresher.java:67) at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCache(DbCachingRemoteDirectory.java:1122) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchronise(DirectorySynchroniserImpl.java:76) at com.atlassian.crowd.directory.DbCachingDirectoryPoller.pollChanges(DbCachingDirectoryPoller.java:50) at com.atlassian.crowd.manager.directory.monitor.poller.DirectoryPollerJobRunner.runJob(DirectoryPollerJobRunner.java:93) at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153) at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118) at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97) at com.atlassian.scheduler.quartz1.Quartz1Job.execute(Quartz1Job.java:32) at org.quartz.core.JobRunShell.run(JobRunShell.java:223) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool.lambda$runInThread$311(ConfluenceQuartzThreadPool.java:19) at com.atlassian.confluence.schedule.quartz.ConfluenceQuartzThreadPool$$Lambda$170/31222255.run(Unknown Source) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) {noformat} full log attached: [^sync_error.txt] h3. Notes * System Administrator and the default administrator have access to Confluence but no other user does. * It only affects new Cloud sites * It may last from 1 to 4 hours until it is automatically fixed * Once the initial sync is done, this problem doesn't happen again on the same site. h3. Cause User Directory hasn't synced correctly with Confluence yet so no other user group memberships are passed from the User Management database to the Confluence Database. h3.Workaround # Flush all caches in Confluence # Manually sync Confluence directory from /wiki/plugins/servlet/embedded-crowd/directories/list # Access the user's profile page: https://instance.atlassian.net/wiki/display/~username Some of these operations are restricted to sysadmin users only. Please log a request at https://support.atlassian.com The sync may require several attempts until is synced.

    Atlassian JIRA | 1 year ago | Mauro Fernandez Badii [Atlassian]
    com.atlassian.crowd.exception.OperationFailedException: Failed to synchronize directory group attributes for missing group: jira-administrators
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    h3. Summary There is a known compatibility issue that prevents the user management synchronisation between JIRA 6.4 and Stash 3.9.1. This will only affect you if you use JIRA to manage your Stash users. The bug in JIRA was tracked at JRA-42566. h3. Steps to Reproduce # Set up Stash 3.9.1 with JIRA 6.4 configured as its User Management Server. To perform that, please refer to [Connecting Stash to JIRA for user management|https://confluence.atlassian.com/display/STASH/Connecting+Stash+to+JIRA+for+user+management] # Perform Synchronisation h3. Expected Results Synchronisation should work just fine. h3. Actual Results The below exception is thrown in the {{atlassian-stash.log}} file: {noformat} ERROR [clusterScheduler_Worker-4] c.a.c.d.DbCachingDirectoryPoller Error occurred while refreshing the cache for directory [ 229377 ]. com.atlassian.crowd.exception.OperationFailedException: Error from Crowd server propagated to here via REST API (check the Crowd server logs for details): Class type for return values ('interface com.atlassian.crowd.model.group.GroupWithAttributes') is not 'String' or 'Group' at com.atlassian.crowd.integration.rest.service.RestCrowdClient.handleCommonExceptions(RestCrowdClient.java:1501) ~[crowd-integration-client-rest-2.8.1-m3.jar:na] at com.atlassian.crowd.integration.rest.service.RestCrowdClient.searchGroupsWithAttributes(RestCrowdClient.java:574) ~[crowd-integration-client-rest-2.8.1-m3.jar:na] at com.atlassian.crowd.directory.RemoteCrowdDirectory.searchGroups(RemoteCrowdDirectory.java:547) ~[crowd-remote-2.8.1-m3.jar:na] at com.atlassian.crowd.directory.ldap.cache.RemoteDirectoryCacheRefresher.findAllRemoteGroups(RemoteDirectoryCacheRefresher.java:80) ~[crowd-ldap-2.8.1-m3.jar:na] at com.atlassian.crowd.directory.ldap.cache.RemoteDirectoryCacheRefresher.synchroniseAllGroups(RemoteDirectoryCacheRefresher.java:109) ~[crowd-ldap-2.8.1-m3.jar:na] at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAll(AbstractCacheRefresher.java:91) ~[crowd-ldap-2.8.1-m3.jar:na] at com.atlassian.crowd.directory.ldap.cache.EventTokenChangedCacheRefresher.synchroniseAll(EventTokenChangedCacheRefresher.java:67) ~[crowd-ldap-2.8.1-m3.jar:na] at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCache(DbCachingRemoteDirectory.java:1122) ~[crowd-core-2.8.1-m3.jar:na] at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchronise(DirectorySynchroniserImpl.java:76) ~[crowd-core-2.8.1-m3.jar:na] at com.atlassian.crowd.directory.DbCachingDirectoryPoller.pollChanges(DbCachingDirectoryPoller.java:50) ~[crowd-core-2.8.1-m3.jar:na] at com.atlassian.crowd.manager.directory.monitor.poller.DirectoryPollerJobRunner.runJob(DirectoryPollerJobRunner.java:93) [crowd-core-2.8.1-m3.jar:na] at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153) [atlassian-scheduler-core-1.5.0.jar:na] at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118) [atlassian-scheduler-core-1.5.0.jar:na] at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97) [atlassian-scheduler-core-1.5.0.jar:na] at com.atlassian.scheduler.quartz2.Quartz2Job.execute(Quartz2Job.java:32) [atlassian-scheduler-quartz2-1.5.0.jar:na] at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [quartz-2.2.1.jar:na] at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [quartz-2.2.1.jar:na] ... 13 frames trimmed Caused by: com.atlassian.crowd.integration.rest.service.CrowdRestException: Class type for return values ('interface com.atlassian.crowd.model.group.GroupWithAttributes') is not 'String' or 'Group' at com.atlassian.crowd.integration.rest.service.RestExecutor$MethodExecutor.throwError(RestExecutor.java:660) ~[crowd-integration-client-rest-2.8.1-m3.jar:na] at com.atlassian.crowd.integration.rest.service.RestExecutor$MethodExecutor.andReceive(RestExecutor.java:489) ~[crowd-integration-client-rest-2.8.1-m3.jar:na] at com.atlassian.crowd.integration.rest.service.RestCrowdClient.searchGroupsWithAttributes(RestCrowdClient.java:570) ~[crowd-integration-client-rest-2.8.1-m3.jar:na] ... 16 common frames omitted {noformat} h3. Workaround Upgrade JIRA to version 6.4.1+

    Atlassian JIRA | 2 years ago | Ben Stuart [Atlassian]
    com.atlassian.crowd.exception.OperationFailedException: Error from Crowd server propagated to here via REST API (check the Crowd server logs for details): Class type for return values ('interface com.atlassian.crowd.model.group.GroupWithAttributes') is not 'String' or 'Group'
  6. 0

    h3. Description In this bug, a read timeout exception is thrown before the timeout has passed, as can be seen in the logs below: {noformat} 2014-01-29 07:36:47,601 QuartzScheduler_Worker-2 INFO ServiceRunner [atlassian.crowd.directory.DbCachingRemoteDirectory] synchronisation for directory [ 10000 ] starting 2014-01-29 07:36:57,975 QuartzScheduler_Worker-2 INFO ServiceRunner [atlassian.crowd.directory.DbCachingRemoteDirectory] failed synchronisation complete for directory [ 10000 ] in [ 10374ms ] 2014-01-29 07:36:58,084 QuartzScheduler_Worker-2 ERROR ServiceRunner [atlassian.crowd.directory.DbCachingDirectoryPoller] Error occurred while refreshing the cache for directory [ 10000 ]. com.atlassian.crowd.exception.OperationFailedException: org.springframework.ldap.CommunicationException: avengers-the-initiative.net:389; nested exception is javax.naming.CommunicationException: avengers-the-initiative.net:389 [Root exception is java.net.SocketTimeoutException: connect timed out] at com.atlassian.crowd.directory.SpringLDAPConnector.pageSearchResults(SpringLDAPConnector.java:400) at com.atlassian.crowd.directory.SpringLDAPConnector.searchEntitiesWithRequestControls(SpringLDAPConnector.java:435) at com.atlassian.crowd.directory.MicrosoftActiveDirectory.findTombstonesSince(MicrosoftActiveDirectory.java:882) at com.atlassian.crowd.directory.MicrosoftActiveDirectory.findUserTombstonesSince(MicrosoftActiveDirectory.java:824) {noformat} h3. Expected Behaviour The LDAP connection does not timeout before the *Read Timeout (seconds)* is reached in the User Directory Configuration, for example [Connecting to an LDAP Directory|https://confluence.atlassian.com/display/JIRA/Connecting+to+an+LDAP+Directory#ConnectingtoanLDAPDirectory-ServerSettings]. h3. Actual Behaviour The connection times out before the *Read Timeout (seconds)* interval is met. h3. Verification Review when the synchronisation started in the logs, for example in the below snippet it's {{07:36:47,601}}: {noformat} 2014-01-29 07:36:47,601 QuartzScheduler_Worker-2 INFO ServiceRunner [atlassian.crowd.directory.DbCachingRemoteDirectory] synchronisation for directory [ 10000 ] starting {noformat} And compare that to when the timeout occurs: {noformat} 2014-01-29 07:36:58,084 QuartzScheduler_Worker-2 ERROR ServiceRunner [atlassian.crowd.directory.DbCachingDirectoryPoller] Error occurred while refreshing the cache for directory [ 10000 ]. com.atlassian.crowd.exception.OperationFailedException: org.springframework.ldap.CommunicationException: avengers-the-initiative.net:389; nested exception is javax.naming.CommunicationException: avengers-the-initiative.net:389 [Root exception is java.net.SocketTimeoutException: connect timed out] {noformat} Here we can see the timeout occurred at {{07:36:58,084}} which is around 11 seconds, and the *Read Timeout (seconds)* was set to 60. It's highly likely this is a result of the Java bug. If the timeout occurs after the interval, this is normal and expected behaviour. For example if the timeout occurred at {{07:37:47,684}} this would be expected behaviour. h3. Cause This bug is triggered randomly in some environments, when the Read Timeout field in LDAP directory properties has been set to non-zero value. This bug is caused by a known [bug (#6968459)|http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6968459] affecting Java SE. h3. Workaround Normally these exceptions can be safely ignored as the synchronisation is self-correcting. That is, problems encountered in one synchronisation round will get fixed in the following synchronisation round. If the synchronisation fails to complete successfully repeatedly, a known workaround is to disable read timeout by setting the Read Timeout field in LDAP directory properties to 0. A side-effect of this change is that Crowd will not be able to recover automatically from LDAP requests that take too long to run, which might cause Crowd to stop communicating with LDAP directories until it is restarted. h4. For JIRA 6.3.x customers If you have confirmed that you are experiencing the aforementioned Java bug, we have developed a temporary fix until Oracle fixes the issue in the JDK itself. This is in the form of 2 JARs, a [new version of Crowd for JIRA|https://maven.atlassian.com/service/local/repositories/atlassian-public/content/com/atlassian/crowd/crowd-ldap/2.8.0-OD-6-JIRA-06/crowd-ldap-2.8.0-OD-6-JIRA-06.jar] and a [patched+shaded version of the JDK's LDAP JNDI provider|https://maven.atlassian.com/3rdparty/shaded/atlassian/com/sun/jndi/ldap/atlassian-ldap-jndi-provider/1.8.1-atlassian/atlassian-ldap-jndi-provider-1.8.1-atlassian.jar]. Source for the patched+shaded version of the JDK's LDAP JNDI provider is available at https://bitbucket.org/atlassian/atlassian-ldap-jndi-provider To install these files and apply them as a workaround: - Stop yourJIRA instance - Navigate to JIRA's {{webapp/WEB-INF/lib}} directory. - Replace the existing `crowd-ldap-???.jar` with [crowd-ldap-2.8.0-OD-6-JIRA-06.jar|https://maven.atlassian.com/service/local/repositories/atlassian-public/content/com/atlassian/crowd/crowd-ldap/2.8.0-OD-6-JIRA-06/crowd-ldap-2.8.0-OD-6-JIRA-06.jar] - Add the [atlassian-ldap-jndi-provider-1.8.1-atlassian.jar|https://maven.atlassian.com/3rdparty/shaded/atlassian/com/sun/jndi/ldap/atlassian-ldap-jndi-provider/1.8.1-atlassian/atlassian-ldap-jndi-provider-1.8.1-atlassian.jar] file to this directory as well. - Start your JIRA instance. *IMPORTANT*: This will only work if the you are running Java 8 and a version of JIRA that uses crowd-ldap-2.8.0-OD-6 or compatible (JIRA 6.3.x)

    Atlassian JIRA | 3 years ago | Mark Lassau [Atlassian]
    com.atlassian.crowd.exception.OperationFailedException: org.springframework.ldap.CommunicationException: avengers-the-initiative.net:389; nested exception is javax.naming.CommunicationException: avengers-the-initiative.net:389 [Root exception is java.net.SocketTimeoutException: connect timed out]

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. com.atlassian.crowd.exception.OperationFailedException

      Java heap space

      at com.atlassian.crowd.integration.rest.service.RestCrowdClient.handleCommonExceptions()
    2. com.atlassian.crowd
      RestCrowdClient.getNamesOfNestedUsersOfGroup
      1. com.atlassian.crowd.integration.rest.service.RestCrowdClient.handleCommonExceptions(RestCrowdClient.java:1084)
      2. com.atlassian.crowd.integration.rest.service.RestCrowdClient.getNamesOfNestedUsersOfGroup(RestCrowdClient.java:677)
      2 frames
    3. com.cenqua.fisheye
      DefaultUserManager.getUsersInGroup
      1. com.cenqua.fisheye.user.crowd.CrowdAuth$6.call(CrowdAuth.java:405)
      2. com.cenqua.fisheye.user.crowd.CrowdAuth$6.call(CrowdAuth.java:403)
      3. com.cenqua.fisheye.user.crowd.CrowdAuth.withTimer(CrowdAuth.java:92)
      4. com.cenqua.fisheye.user.crowd.CrowdAuth.getUsersInGroup(CrowdAuth.java:403)
      5. com.cenqua.fisheye.user.DefaultUserManager$16.write(DefaultUserManager.java:1057)
      6. com.cenqua.fisheye.user.DefaultUserManager$16.write(DefaultUserManager.java:1050)
      7. com.cenqua.fisheye.config.DB0Handle$2.write(DB0Handle.java:122)
      8. com.cenqua.fisheye.config.DB0Handle.write(DB0Handle.java:96)
      9. com.cenqua.fisheye.config.DB0Handle.write(DB0Handle.java:120)
      10. com.cenqua.fisheye.user.DefaultUserManager.getUsersInGroup(DefaultUserManager.java:1050)
      10 frames
    4. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      4. java.lang.reflect.Method.invoke(Method.java:597)
      4 frames
    5. Spring AOP
      JdkDynamicAopProxy.invoke
      1. org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
      2. org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196)
      2 frames
    6. Unknown
      $Proxy25.getUsersInGroup
      1. $Proxy25.getUsersInGroup(Unknown Source)
      1 frame