Uploaded image for project: 'JBoss BPMS Platform'
  1. JBoss BPMS Platform
  2. RHBPMS-5231

[GSS](6.4.z) Same job processed by 2 servers at the same time

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 6.4.12.GA
    • 6.4.11.GA
    • jBPM Core
      • 2 nodes kie-server
      • PerProessInstance strategy
      • Oracle 12
      • Transaction Isolation Level is "READ_COMMITTED"
    • CR1
      • Reproduce only twice on customer's site. Cannot reproduce intentionally on our side.

    Description

      Node1 [PollExecutor thread] and Node2 [KieExecutorMDB thread] picked up the same async job and executed.

      According to debug logs, the scenario was like this:

      1. [PollExecutor thread] Start a Tx
      2. [PollExecutor thread] The internal sub-query fetches the data (id=4666588, status=QUEUED)
      3. [KieExecutorMDB thread] Start a Tx
      4. [KieExecutorMDB thread] select and lock the data (id=4666588, status=QUEUED)
      5. [KieExecutorMDB thread] update the data (id=4666588, status=RUNNING)
      6. [KieExecutorMDB thread] Commit a Tx and release the lock
      7. [PollExecutor thread] select and lock the data (id=4666588, status=QUEUED)
      8. [PollExecutor thread] update the data (id=4666588, status=RUNNING)
      9. [PollExecutor thread] Commit a Tx

      -> So both threads will work with id=4666588...

      For more detailed info, see private comment.

      Attachments

        Activity

          People

            elguardian@gmail.com Enrique González Martínez (Inactive)
            rhn-support-tkobayas Toshiya Kobayashi
            Marian Macik Marian Macik
            Marian Macik Marian Macik
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: