bug #7576
Set Publish Flag for Subtree Dialog - Problems with Progressmonitor
100%
Description
Setzen des Publish-Flags auf der kompletten Cichorienklassifikation:
Die Prozentanzeige bleibt bei 54.95% stehen obwohl der Prozess im Server weiterläuft:
ca 5 minuten später immer noch keine Aktualisierung des Dialogs
nochmal später
Der Prozess ist fertig aber der Dialog hat's nicht mitbekommen.
Und nun hängt der Server:
es gibt einen blockierten Thread der mit dem Setzen des Publishflags zu tun hat:
Thread 2829: (state = BLOCKED) - java.util.HashMap.keySet() @bci=9, line=907 (Compiled frame) - java.util.HashSet.iterator() @bci=4, line=172 (Compiled frame) - com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.close() @bci=22, line=1688 (Compiled frame) - org.hibernate.resource.jdbc.internal.ResourceRegistryStandardImpl.close(java.sql.Statement) @bci=74, line=169 (Compiled frame) - org.hibernate.resource.jdbc.internal.ResourceRegistryStandardImpl.release(java.sql.Statement) @bci=81, line=82 (Compiled frame) - org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader.executeLoad(org.hibernate.engine.spi.SessionImplementor, org.hibernate.engine.spi.QueryParameters, org.hibernate.loader.plan.exec.spi.LoadQuer yDetails, boolean, org.hibernate.transform.ResultTransformer, java.util.List) @bci=243, line=144 (Compiled frame) - org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader.executeLoad(org.hibernate.engine.spi.SessionImplementor, org.hibernate.engine.spi.QueryParameters, org.hibernate.loader.plan.exec.spi.LoadQuer yDetails, boolean, org.hibernate.transform.ResultTransformer) @bci=19, line=86 (Compiled frame) - org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.initialize(java.io.Serializable, org.hibernate.engine.spi.SessionImplementor) @bci=103, line=88 (Compiled frame) - org.hibernate.persister.collection.AbstractCollectionPersister.initialize(java.io.Serializable, org.hibernate.engine.spi.SessionImplementor) @bci=8, line=682 (Compiled frame) - org.hibernate.event.internal.DefaultInitializeCollectionEventListener.onInitializeCollection(org.hibernate.event.spi.InitializeCollectionEvent) @bci=165, line=75 (Compiled frame) - org.hibernate.internal.SessionImpl.initializeCollection(org.hibernate.collection.spi.PersistentCollection, boolean) @bci=57, line=1991 (Compiled frame) - org.hibernate.collection.internal.AbstractPersistentCollection$4.doWork() @bci=15, line=550 (Compiled frame) - org.hibernate.collection.internal.AbstractPersistentCollection.withTemporarySessionIfNeeded(org.hibernate.collection.internal.AbstractPersistentCollection$LazyInitializationWork) @bci=209, line=248 (Compiled fr ame) - org.hibernate.collection.internal.AbstractPersistentCollection.initialize(boolean) @bci=18, line=546 (Compiled frame) - org.hibernate.collection.internal.AbstractPersistentCollection.read() @bci=2, line=133 (Compiled frame) - org.hibernate.collection.internal.PersistentSet.iterator() @bci=1, line=163 (Compiled frame) - org.hibernate.search.engine.spi.DocumentBuilderIndexedEntity.buildDocumentFieldsForEmbeddedObjects(org.apache.lucene.document.Document, org.hibernate.search.engine.impl.FacetHandling, org.hibernate.search.engin e.metadata.impl.TypeMetadata, java.util.Map, java.util.Set, org.hibernate.search.bridge.spi.ConversionContext, org.hibernate.search.spi.InstanceInitializer, float, java.lang.Object, boolean) @bci=229, line=484 (Co mpiled frame) - org.hibernate.search.engine.spi.DocumentBuilderIndexedEntity.buildDocumentFields(java.lang.Object, org.apache.lucene.document.Document, org.hibernate.search.engine.impl.FacetHandling, org.hibernate.search.engin e.metadata.impl.TypeMetadata, java.util.Map, java.util.Set, org.hibernate.search.bridge.spi.ConversionContext, org.hibernate.search.spi.InstanceInitializer, float, boolean) @bci=72, line=429 (Compiled frame) - org.hibernate.search.engine.spi.DocumentBuilderIndexedEntity.buildDocumentFieldsForEmbeddedObjects(org.apache.lucene.document.Document, org.hibernate.search.engine.impl.FacetHandling, org.hibernate.search.engin e.metadata.impl.TypeMetadata, java.util.Map, java.util.Set, org.hibernate.search.bridge.spi.ConversionContext, org.hibernate.search.spi.InstanceInitializer, float, java.lang.Object, boolean) @bci=375, line=517 (Co mpiled frame) - org.hibernate.search.engine.spi.DocumentBuilderIndexedEntity.buildDocumentFields(java.lang.Object, org.apache.lucene.document.Document, org.hibernate.search.engine.impl.FacetHandling, org.hibernate.search.engin e.metadata.impl.TypeMetadata, java.util.Map, java.util.Set, org.hibernate.search.bridge.spi.ConversionContext, org.hibernate.search.spi.InstanceInitializer, float, boolean) @bci=72, line=429 (Compiled frame) - org.hibernate.search.engine.spi.DocumentBuilderIndexedEntity.getDocument(java.lang.String, java.lang.Object, java.io.Serializable, java.util.Map, org.hibernate.search.spi.InstanceInitializer, org.hibernate.sear ch.bridge.spi.ConversionContext, java.lang.String[]) @bci=281, line=351 (Compiled frame) - org.hibernate.search.engine.spi.DocumentBuilderIndexedEntity.createUpdateWork(java.lang.String, java.lang.Class, java.lang.Object, java.io.Serializable, java.lang.String, org.hibernate.search.spi.InstanceInitia lizer, org.hibernate.search.bridge.spi.ConversionContext) @bci=21, line=266 (Compiled frame) - org.hibernate.search.engine.spi.DocumentBuilderIndexedEntity.addWorkToQueue(java.lang.String, java.lang.Class, java.lang.Object, java.io.Serializable, boolean, boolean, java.util.List, org.hibernate.search.brid ge.spi.ConversionContext) @bci=130, line=208 (Compiled frame) - org.hibernate.search.engine.impl.WorkPlan$PerEntityWork.enqueueLuceneWork(java.lang.String, java.lang.Class, java.io.Serializable, org.hibernate.search.engine.spi.AbstractDocumentBuilder, java.util.List, org.hi bernate.search.bridge.spi.ConversionContext) @bci=35, line=521 (Compiled frame) - org.hibernate.search.engine.impl.WorkPlan$PerClassWork.enqueueLuceneWork(java.util.List) @bci=184, line=283 (Interpreted frame) - org.hibernate.search.engine.impl.WorkPlan.getPlannedLuceneWork() @bci=42, line=155 (Interpreted frame) - org.hibernate.search.backend.impl.WorkQueue.prepareWorkPlan() @bci=18, line=114 (Interpreted frame) - org.hibernate.search.backend.impl.BatchedQueueingProcessor.prepareWorks(org.hibernate.search.backend.impl.WorkQueue) @bci=1, line=55 (Interpreted frame) - org.hibernate.search.backend.impl.PostTransactionWorkQueueSynchronization.beforeCompletion() @bci=40, line=64 (Interpreted frame) - org.hibernate.search.backend.impl.EventSourceTransactionContext$DelegateToSynchronizationOnBeforeTx.doBeforeTransactionCompletion(org.hibernate.engine.spi.SessionImplementor) @bci=4, line=169 (Interpreted frame ) - org.hibernate.engine.spi.ActionQueue$BeforeTransactionCompletionProcessQueue.beforeTransactionCompletion() @bci=28, line=899 (Interpreted frame) - org.hibernate.engine.spi.ActionQueue.beforeTransactionCompletion() @bci=18, line=481 (Interpreted frame) - org.hibernate.internal.SessionImpl.beforeTransactionCompletion() @bci=23, line=2340 (Interpreted frame) - org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion() @bci=4, line=485 (Interpreted frame) - org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.beforeCompletionCallback() @bci=14, line=147 (Interpreted frame) - org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$100(org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorIm pl) @bci=1, line=38 (Interpreted frame) - org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit() @bci=21, line=231 (Interpreted frame) - org.hibernate.engine.transaction.internal.TransactionImpl.commit() @bci=39, line=65 (Interpreted frame) - org.springframework.orm.hibernate5.HibernateTransactionManager.doCommit(org.springframework.transaction.support.DefaultTransactionStatus) @bci=61, line=581 (Interpreted frame) - org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(org.springframework.transaction.support.DefaultTransactionStatus) @bci=99, line=761 (Interpreted frame) - org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(org.springframework.transaction.TransactionStatus) @bci=121, line=730 (Interpreted frame) - org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(org.springframework.transaction.interceptor.TransactionAspectSupport$TransactionInfo) @bci=67, line=485 (Inte rpreted frame) - org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(java.lang.reflect.Method, java.lang.Class, org.springframework.transaction.interceptor.TransactionAspectSupport$Invoc ationCallback) @bci=101, line=291 (Interpreted frame) - org.springframework.transaction.interceptor.TransactionInterceptor.invoke(org.aopalliance.intercept.MethodInvocation) @bci=40, line=96 (Interpreted frame) - org.springframework.aop.framework.ReflectiveMethodInvocation.proceed() @bci=101, line=179 (Compiled frame) - org.springframework.aop.framework.JdkDynamicAopProxy.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[]) @bci=329, line=208 (Interpreted frame) - com.sun.proxy.$Proxy3200.setPublishForSubtree(java.util.UUID, boolean, boolean, boolean, boolean, eu.etaxonomy.cdm.common.monitor.IProgressMonitor) @bci=52 (Interpreted frame) - eu.etaxonomy.cdm.api.longrunningService.LongRunningTasksServiceImpl.updateData(eu.etaxonomy.cdm.api.service.config.ForSubtreeConfiguratorBase) @bci=61, line=71 (Interpreted frame) - eu.etaxonomy.cdm.api.longrunningService.LongRunningTasksServiceImpl.access$000(eu.etaxonomy.cdm.api.longrunningService.LongRunningTasksServiceImpl, eu.etaxonomy.cdm.api.service.config.ForSubtreeConfiguratorBase ) @bci=2, line=35 (Interpreted frame) - eu.etaxonomy.cdm.api.longrunningService.LongRunningTasksServiceImpl$1.doRun(eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor) @bci=31, line=53 (Interpreted frame) - eu.etaxonomy.cdm.common.monitor.RemotingProgressMonitorThread.run() @bci=21, line=46 (Interpreted frame)
Related issues
Associated revisions
remove monitorThread from monitor and handle it in progressMonitorManager
smaller changes in progressMonitorClientManager
remove progress monitor thread from progress monitor
fix problems with progress monitor
adapt taxeditor to changes in progress monitor handling
fix progressmonitor handling
progressmonitor should be set to done by progressMonitorThread not in service methods
check in done() in remotingProgressMonitor whether result is already set
cancel the longrunning thread cancels moveTaxonNode and set it to rollbackOnly
smaller changes for longrunning tasks and progress monitor
remove task from progress view after finish
ref #7463: adapt the percentage display in status bar for progress of longrunning task
ref #7463: adapt the percentage display in status bar for progress of longrunning task
use submonitor for progressmmonitor in longrunning tasks
History
#1 Updated by Andreas Kohlbecker over 2 years ago
- Description updated (diff)
#2 Updated by Andreas Kohlbecker over 2 years ago
Hallo Katja,
ich weiß, dass du an diesem Problem gearbeitet hast, konnte aber kein Ticket dazu finden. Daher habe ich meine ursprüngliche Mail in eine Ticket überführt.
Bist du mit den Arbeiten an diesem Problem schon fertig oder hast du schon Änderungen "comitted"? Dann verknüpfe diese bitte mit diesem Ticket hier.
Andreas
#3 Updated by Andreas Kohlbecker over 2 years ago
- Copied to bug #7577: Set Publish Flag for Subtree Dialog - Further Problems with Progressmonitor added
#4 Updated by Andreas Kohlbecker over 2 years ago
- Status changed from New to Feedback
- Priority changed from New to Highest
#5 Updated by Katja Luther over 2 years ago
- Status changed from Feedback to Resolved
- Assignee changed from Katja Luther to Andreas Kohlbecker
The problem of lost connection between server and progress monitor dialog is fixed, the percentage display is fixed too. The remaining problems of progress monitor is handled in a different ticket #7577.
#6 Updated by Andreas Kohlbecker over 2 years ago
- Status changed from Resolved to Closed
- Assignee changed from Andreas Kohlbecker to Katja Luther
Ok, the most severe problems seem to be fixed so far.
#7 Updated by Andreas Kohlbecker over 2 years ago
- % Done changed from 0 to 100
#8 Updated by Andreas Müller over 1 year ago
- Related to feature request #3740: Allow recursively setting the publish bit for TaxonBase added