Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-19668

When calling operation 'Complete task', retrieving participating document(s) that are deleted fails

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 7.10, 8.2
    • Fix Version/s: 7.10-HF11, 8.3
    • Component/s: Workflow
    • Tags:
    • Backlog priority:
      300
    • Upgrade notes:
      Hide

      Only debug logging is backported to 7.10

      Show
      Only debug logging is backported to 7.10
    • Sprint:
      nxGang Sprint 8.3.4
    • Story Points:
      2

      Description

      stacktrace:

      ****** chain ******
      Name: ValidationWf_ForceResume
      Exception: OperationException
      Caught error: Failed to invoke operation Workflow.ResumeNode with aliases [Workflow.ResumeNodeOperation] Caused by: org.nuxeo.ecm.core.api.DocumentNotFoundException: b0ce398d-525e-424e-bd84-4b7eadcd6b67
      ****** Hierarchy calls ******
      	org.nuxeo.ecm.automation.core.operations.FetchContextDocument
      		org.nuxeo.ecm.platform.routing.core.api.operation.ResumeNodeOperation
      
      	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:232)
      	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:91)
      	at org.nuxeo.ecm.platform.routing.core.impl.GraphNodeImpl.executeChain(GraphNodeImpl.java:512)
      	... 9 more
      Caused by: org.nuxeo.ecm.automation.OperationException: Failed to invoke operation Workflow.ResumeNode with aliases [Workflow.ResumeNodeOperation]
      	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.invoke(InvokableMethod.java:182)
      	at org.nuxeo.ecm.automation.core.impl.CompiledChainImpl.doInvoke(CompiledChainImpl.java:128)
      	at org.nuxeo.ecm.automation.core.impl.CompiledChainImpl.invoke(CompiledChainImpl.java:114)
      	at org.nuxeo.ecm.automation.core.impl.CompiledChainImpl.doInvoke(CompiledChainImpl.java:131)
      	at org.nuxeo.ecm.automation.core.impl.CompiledChainImpl.invoke(CompiledChainImpl.java:114)
      	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:208)
      	... 11 more
      Caused by: org.nuxeo.ecm.core.api.DocumentNotFoundException: b0ce398d-525e-424e-bd84-4b7eadcd6b67
      	at org.nuxeo.ecm.core.storage.sql.coremodel.SQLSession.getDocumentByUUID(SQLSession.java:171)
      	at org.nuxeo.ecm.core.api.AbstractSession.resolveReference(AbstractSession.java:326)
      	at org.nuxeo.ecm.core.api.AbstractSession.getDocuments(AbstractSession.java:949)
      	at org.nuxeo.ecm.platform.routing.core.impl.GraphRouteImpl.getAttachedDocumentModels(GraphRouteImpl.java:246)
      	at org.nuxeo.ecm.platform.routing.core.impl.GraphNodeImpl.cancelTask(GraphNodeImpl.java:1005)
      	at org.nuxeo.ecm.platform.routing.core.impl.GraphNodeImpl.cancelTasks(GraphNodeImpl.java:645)
      	at org.nuxeo.ecm.platform.routing.core.impl.GraphRunner.resume(GraphRunner.java:158)
      	at org.nuxeo.ecm.platform.routing.core.impl.DocumentRouteElementImpl.resume(DocumentRouteElementImpl.java:82)
      	at org.nuxeo.ecm.platform.routing.core.impl.DocumentRoutingEngineServiceImpl.resume(DocumentRoutingEngineServiceImpl.java:46)
      	at org.nuxeo.ecm.platform.routing.core.impl.DocumentRoutingServiceImpl$CompleteTaskRunner.run(DocumentRoutingServiceImpl.java:351)
      	at org.nuxeo.ecm.core.api.UnrestrictedSessionRunner.runUnrestricted(UnrestrictedSessionRunner.java:110)
      	at org.nuxeo.ecm.platform.routing.core.impl.DocumentRoutingServiceImpl.completeTask(DocumentRoutingServiceImpl.java:318)
      	at org.nuxeo.ecm.platform.routing.core.impl.DocumentRoutingServiceImpl.resumeInstance(DocumentRoutingServiceImpl.java:306)
      	at org.nuxeo.ecm.platform.routing.core.api.operation.ResumeNodeOperation.resumeWorkflow(ResumeNodeOperation.java:61)
      	at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.doInvoke(InvokableMethod.java:157)
      	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.invoke(InvokableMethod.java:170)
      

      In method GraphRouteImpl#getAttachedDocumentModels, we should check if document still exists before putting it into list docRefs.
      The fix is similar to the one applied for NXP-19166.

        Attachments

          Activity

            People

            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 2 hours
                2h