{"action":"created","issue":{"url":"https://api.github.com/repos/IQSS/dataverse/issues/2453","labels_url":"https://api.github.com/repos/IQSS/dataverse/issues/2453/labels{/name}","comments_url":"https://api.github.com/repos/IQSS/dataverse/issues/2453/comments","events_url":"https://api.github.com/repos/IQSS/dataverse/issues/2453/events","html_url":"https://github.com/IQSS/dataverse/issues/2453","id":100789945,"number":2453,"title":"Async index all doesn't \"just work\", leaves thread in RUNNABLE (waiting) state","user":{"login":"pdurbin","id":21006,"avatar_url":"https://avatars.githubusercontent.com/u/21006?v=3","gravatar_id":"","url":"https://api.github.com/users/pdurbin","html_url":"https://github.com/pdurbin","followers_url":"https://api.github.com/users/pdurbin/followers","following_url":"https://api.github.com/users/pdurbin/following{/other_user}","gists_url":"https://api.github.com/users/pdurbin/gists{/gist_id}","starred_url":"https://api.github.com/users/pdurbin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pdurbin/subscriptions","organizations_url":"https://api.github.com/users/pdurbin/orgs","repos_url":"https://api.github.com/users/pdurbin/repos","events_url":"https://api.github.com/users/pdurbin/events{/privacy}","received_events_url":"https://api.github.com/users/pdurbin/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/IQSS/dataverse/labels/Status:%20Dev","name":"Status: Dev","color":"66cc66"},{"url":"https://api.github.com/repos/IQSS/dataverse/labels/Type:%20Bug","name":"Type: Bug","color":"fef2c0"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-08-13T14:48:22Z","updated_at":"2015-08-13T16:01:59Z","closed_at":null,"body":"When upgrading https://apitest.dataverse.org from 4.0.1 to 4.1 and afterwards running regular \"index all\" (by hitting http://localhost:8080/api/admin/index with curl) indexing iterates through all the dataverses but then always stops at the second dataset (server.log shows indexing dataset 2 of 24).\r\n\r\nIf I stop and start Glassfish (kill -9 may be necessary) and index the second dataset by itself it works fine so I think there's something wrong with the async processing that was introduced in #702.\r\n\r\nI can easily reproduce the problem on my laptop at commit 845b4e9 which is part of the 4.2 branch. The line numbers in the `jstack` below correspond to that commit as do the full `jstack` I uploaded (along with the apitest database) to Google Drive: https://docs.google.com/a/harvard.edu/document/d/1KTfK7wFN8woimIDoEykL_6A_8neb_2psuoSclgH_ImM/edit?usp=sharing\r\n\r\n> \"Thread state for a runnable thread. A thread in the runnable state is executing in the Java virtual machine but it may be waiting for other resources from the operating system such as processor.\" -- http://docs.oracle.com/javase/7/docs/api/java/lang/Thread.State.html#RUNNABLE\r\n\r\n```\r\n2015-08-13 10:26:29\r\nFull thread dump Java HotSpot(TM) 64-Bit Server VM (25.25-b02 mixed mode):\r\n\r\n\"__ejb-thread-pool1\" #164 daemon prio=5 os_prio=31 tid=0x00007fc1abe3e000 nid=0xdc0f runnable [0x0000000123e85000]\r\n   java.lang.Thread.State: RUNNABLE\r\n\tat java.net.SocketInputStream.socketRead0(Native Method)\r\n\tat java.net.SocketInputStream.read(SocketInputStream.java:150)\r\n\tat java.net.SocketInputStream.read(SocketInputStream.java:121)\r\n\tat org.postgresql.core.VisibleBufferedInputStream.readMore(VisibleBufferedInputStream.java:143)\r\n\tat org.postgresql.core.VisibleBufferedInputStream.ensureBytes(VisibleBufferedInputStream.java:112)\r\n\tat org.postgresql.core.VisibleBufferedInputStream.read(VisibleBufferedInputStream.java:71)\r\n\tat org.postgresql.core.PGStream.ReceiveChar(PGStream.java:272)\r\n\tat org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1659)\r\n\tat org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)\r\n\t- locked <0x00000007453c5978> (a org.postgresql.core.v3.QueryExecutorImpl)\r\n\tat org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:510)\r\n\tat org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:386)\r\n\tat org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:332)\r\n\tat sun.reflect.GeneratedMethodAccessor484.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat org.postgresql.ds.jdbc23.AbstractJdbc23PooledConnection$StatementHandler.invoke(AbstractJdbc23PooledConnection.java:453)\r\n\tat com.sun.proxy.$Proxy215.executeUpdate(Unknown Source)\r\n\tat com.sun.gjc.spi.base.PreparedStatementWrapper.executeUpdate(PreparedStatementWrapper.java:125)\r\n\tat org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:890)\r\n\tat org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeNoSelect(DatabaseAccessor.java:962)\r\n\tat org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:631)\r\n\tat org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:558)\r\n\tat org.eclipse.persistence.internal.sessions.AbstractSession.basicExecuteCall(AbstractSession.java:2002)\r\n\tat org.eclipse.persistence.sessions.server.ClientSession.executeCall(ClientSession.java:298)\r\n\tat org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:242)\r\n\tat org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:228)\r\n\tat org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.updateObject(DatasourceCallQueryMechanism.java:797)\r\n\tat org.eclipse.persistence.internal.queries.StatementQueryMechanism.updateObject(StatementQueryMechanism.java:435)\r\n\tat org.eclipse.persistence.internal.queries.DatabaseQueryMechanism.updateObjectForWriteWithChangeSet(DatabaseQueryMechanism.java:1079)\r\n\tat org.eclipse.persistence.queries.UpdateObjectQuery.executeCommitWithChangeSet(UpdateObjectQuery.java:84)\r\n\tat org.eclipse.persistence.internal.queries.DatabaseQueryMechanism.executeWriteWithChangeSet(DatabaseQueryMechanism.java:301)\r\n\tat org.eclipse.persistence.queries.WriteObjectQuery.executeDatabaseQuery(WriteObjectQuery.java:58)\r\n\tat org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:899)\r\n\tat org.eclipse.persistence.queries.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:798)\r\n\tat org.eclipse.persistence.queries.ObjectLevelModifyQuery.executeInUnitOfWorkObjectLevelModifyQuery(ObjectLevelModifyQuery.java:108)\r\n\tat org.eclipse.persistence.queries.ObjectLevelModifyQuery.executeInUnitOfWork(ObjectLevelModifyQuery.java:85)\r\n\tat org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2896)\r\n\tat org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1804)\r\n\tat org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1786)\r\n\tat org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1737)\r\n\tat org.eclipse.persistence.internal.sessions.CommitManager.commitChangedObjectsForClassWithChangeSet(CommitManager.java:267)\r\n\tat org.eclipse.persistence.internal.sessions.CommitManager.commitAllObjectsWithChangeSet(CommitManager.java:130)\r\n\tat org.eclipse.persistence.internal.sessions.AbstractSession.writeAllObjectsWithChangeSet(AbstractSession.java:4207)\r\n\tat org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabase(UnitOfWorkImpl.java:1441)\r\n\tat org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabaseWithPreBuiltChangeSet(UnitOfWorkImpl.java:1587)\r\n\tat org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.writeChanges(RepeatableWriteUnitOfWork.java:452)\r\n\tat org.eclipse.persistence.internal.jpa.EntityManagerImpl.flush(EntityManagerImpl.java:863)\r\n\tat org.eclipse.persistence.internal.jpa.QueryImpl.performPreQueryFlush(QueryImpl.java:963)\r\n\tat org.eclipse.persistence.internal.jpa.QueryImpl.executeReadQuery(QueryImpl.java:207)\r\n\tat org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:469)\r\n\tat edu.harvard.iq.dataverse.DataverseRoleServiceBean.rolesAssignments(DataverseRoleServiceBean.java:185)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)\r\n\tat com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)\r\n\tat com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:46)\r\n\tat org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)\r\n\tat sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)\r\n\tat sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)\r\n\tat com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)\r\n\tat com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:88)\r\n\tat com.sun.proxy.$Proxy246.rolesAssignments(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.__EJB31_Generated__DataverseRoleServiceBean__Intf____Bean__.rolesAssignments(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.search.SearchPermissionsServiceBean.findDvObjectPerms(SearchPermissionsServiceBean.java:88)\r\n\tat edu.harvard.iq.dataverse.search.SearchPermissionsServiceBean.findDatasetVersionPerms(SearchPermissionsServiceBean.java:81)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)\r\n\tat com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)\r\n\tat com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:46)\r\n\tat org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)\r\n\tat sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)\r\n\tat sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)\r\n\tat com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)\r\n\tat com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:88)\r\n\tat com.sun.proxy.$Proxy227.findDatasetVersionPerms(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.search.__EJB31_Generated__SearchPermissionsServiceBean__Intf____Bean__.findDatasetVersionPerms(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.search.SolrIndexServiceBean.constructDatafileSolrDocs(SolrIndexServiceBean.java:175)\r\n\tat edu.harvard.iq.dataverse.search.SolrIndexServiceBean.reindexFilesInBatches(SolrIndexServiceBean.java:442)\r\n\tat edu.harvard.iq.dataverse.search.SolrIndexServiceBean.indexPermissionsOnSelfAndChildren(SolrIndexServiceBean.java:408)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)\r\n\tat com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)\r\n\tat com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:46)\r\n\tat org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)\r\n\tat sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)\r\n\tat sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)\r\n\tat com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)\r\n\tat com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:88)\r\n\tat com.sun.proxy.$Proxy237.indexPermissionsOnSelfAndChildren(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.search.__EJB31_Generated__SolrIndexServiceBean__Intf____Bean__.indexPermissionsOnSelfAndChildren(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.search.IndexServiceBean.indexDatasetPermissions(IndexServiceBean.java:568)\r\n\tat edu.harvard.iq.dataverse.search.IndexServiceBean.indexDataset(IndexServiceBean.java:384)\r\n\tat edu.harvard.iq.dataverse.search.IndexServiceBean.indexDatasetInNewTransaction(IndexServiceBean.java:225)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)\r\n\tat com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)\r\n\tat com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:46)\r\n\tat org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)\r\n\tat sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)\r\n\tat sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)\r\n\tat com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)\r\n\tat com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)\r\n\tat com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:88)\r\n\tat com.sun.proxy.$Proxy319.indexDatasetInNewTransaction(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.search.__EJB31_Generated__IndexServiceBean__Intf____Bean__.indexDatasetInNewTransaction(Unknown Source)\r\n\tat edu.harvard.iq.dataverse.search.IndexAllServiceBean.indexAllOrSubset(IndexAllServiceBean.java:117)\r\n\tat edu.harvard.iq.dataverse.search.IndexAllServiceBean.indexAllOrSubset(IndexAllServiceBean.java:45)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)\r\n\tat org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)\r\n\tat com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)\r\n\tat com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:55)\r\n\tat org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)\r\n\tat sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)\r\n\tat com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)\r\n\tat sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:483)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)\r\n\tat com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)\r\n\tat com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)\r\n\tat com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)\r\n\tat com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)\r\n\tat com.sun.ejb.containers.EjbAsyncTask.call(EjbAsyncTask.java:101)\r\n\tat java.util.concurrent.FutureTask.run(FutureTask.java:266)\r\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)\r\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)\r\n\tat java.lang.Thread.run(Thread.java:745)\r\n```"},"comment":{"url":"https://api.github.com/repos/IQSS/dataverse/issues/comments/130739719","html_url":"https://github.com/IQSS/dataverse/issues/2453#issuecomment-130739719","issue_url":"https://api.github.com/repos/IQSS/dataverse/issues/2453","id":130739719,"user":{"login":"pdurbin","id":21006,"avatar_url":"https://avatars.githubusercontent.com/u/21006?v=3","gravatar_id":"","url":"https://api.github.com/users/pdurbin","html_url":"https://github.com/pdurbin","followers_url":"https://api.github.com/users/pdurbin/followers","following_url":"https://api.github.com/users/pdurbin/following{/other_user}","gists_url":"https://api.github.com/users/pdurbin/gists{/gist_id}","starred_url":"https://api.github.com/users/pdurbin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pdurbin/subscriptions","organizations_url":"https://api.github.com/users/pdurbin/orgs","repos_url":"https://api.github.com/users/pdurbin/repos","events_url":"https://api.github.com/users/pdurbin/events{/privacy}","received_events_url":"https://api.github.com/users/pdurbin/received_events","type":"User","site_admin":false},"created_at":"2015-08-13T16:01:59Z","updated_at":"2015-08-13T16:01:59Z","body":"I'm able to reproduce this issue with an even smaller database that I can make public: http://danceb.in/Xq8dbtRB5RGsGM6xDMIysQ/raw\r\n\r\n@michbarsinai suggested returning void rather than Future: http://irclog.iq.harvard.edu/dataverse/2015-08-13#i_23017"}}