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

Allow post-commit events during startup phase

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 8.10
    • Fix Version/s: QualifiedToSchedule
    • Component/s: Runtime
    • Tags:
    • Sprint:
      nxcore 9.3.10
    • Story Points:
      2

      Description

      During the startup phase, when the applicationStarted methods are called, we block calls to Framework.getService from separate threads until the startup phase is finished.
      (This is done by OSGiRuntimeService.frameworkEvent that calls ServicePassivator.proceed(..., this::fireApplicationStarted))

      However if during this phase a component triggers a post-commit event, like "group_created" which is in addition immediate, the post-commit event is treated immediately and spawns a thread which gets blocked when calling Framework.getService, but the main thread is waiting for this thread to complete, so we have a deadlock (which is broken by a timeout of 60s in tests or 300ms in real runs).

      Does not apply to 9.3, where the startup sequence was reworked and the service passivator was removed (NXP-21969).

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                fguillaume Florent Guillaume
                Reporter:
                fguillaume Florent Guillaume
                Participants:
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated: