Uploaded image for project: 'OpenIDM'
  1. OpenIDM
  2. OPENIDM-10842

Build strawman SynchronizationQueueService to handle queued sync event processing

    Details

      Description

      Completion of this story will result in a SynchronizationQueueService, the associated repository storage, and event-processing algorithm as follows:

      Queue entry:

      • source object id
      • source object revision
      • old object state
      • state
      • node_id (add node_id to queue entry data model now - node support to be added subsequently)
      • serialized Context
      • origin vertex id from optionally-present VertexTraversalContext

      Algorithm:
      1. Query all queue entry records whose state is WAITING
      2. Perform read-for-update on queue record setting state to PROCESSING (read-for-update is known to exist in JDBC, need to verify/validate DJ)
      3. Read source object, compare with entry.revision
      a. delete queue-entry records with outdated rev
      b. process queue entry on matching rev, and delete successfully-processed record

       

      May need to stub in temporary methods to insert queue records for testing / proof-of-concept.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                cgdrake Chris Drake
                Reporter:
                brmiller Brendan Miller
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: