ODE
  1. ODE
  2. ODE-422

NPE in Job.equals of scheduler

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 1.2
    • Fix Version/s: 1.3.2
    • Component/s: None
    • Labels:
      None
    • Environment:
      Windows Server 2003 SP2, Java 1.6.0-b105, Tomcat 5.5, ODE branch 1.2 revision 711434

      Description

      I get a null pointer exception in the equals method of org.apache.ode.scheduler.simple.Job.
      This is because the job id is null. Why the job id is null i do not know, but the constructor allows a null job id.

      1. Job.patch
        2 kB
        John Rossall

        Issue Links

          Activity

          Hide
          John Rossall added a comment -

          Patch and test to check for null pointers

          Show
          John Rossall added a comment - Patch and test to check for null pointers
          Hide
          Mark Ford added a comment -

          I am getting this same issue with a parallel forEach that has four concurrent iterations with a simple assign / invoke / assign structure. The null job id comes from BpelRuntimeContextImpl.releasePartnerMex. The code there is looking for a property called "invokeCheckJobId" on the mexDAO which is not present.

          The exception doesn't seem to have any negative side effects but it's disconcerting. I am running on the 1.x branch.

          Show
          Mark Ford added a comment - I am getting this same issue with a parallel forEach that has four concurrent iterations with a simple assign / invoke / assign structure. The null job id comes from BpelRuntimeContextImpl.releasePartnerMex. The code there is looking for a property called "invokeCheckJobId" on the mexDAO which is not present. The exception doesn't seem to have any negative side effects but it's disconcerting. I am running on the 1.x branch.
          Hide
          Matthieu Riou added a comment -

          Just a hunch: does that happen on in-memory processes or also for persistent processes?

          Show
          Matthieu Riou added a comment - Just a hunch: does that happen on in-memory processes or also for persistent processes?
          Hide
          Ciaran Jessup added a comment -

          We're only using in-memory processes (just be aware this patch doesn't touch the hashcode function so that is still not 'safe', plus it doesn't test for object reference equality) I had to re-apply it again to 1_x head to stop various timeouts in my ode load tests

          Show
          Ciaran Jessup added a comment - We're only using in-memory processes (just be aware this patch doesn't touch the hashcode function so that is still not 'safe', plus it doesn't test for object reference equality) I had to re-apply it again to 1_x head to stop various timeouts in my ode load tests
          Hide
          Alex Boisvert added a comment -

          Can you still reproduce this since ODE-557 was fixed? If so, it would be helpful to get a description of your test case.

          Show
          Alex Boisvert added a comment - Can you still reproduce this since ODE-557 was fixed? If so, it would be helpful to get a description of your test case.
          Hide
          Ciaran Jessup added a comment -

          We've not seen any failures since that fix My only comment is that the constructor for that object (Job) allows you to construct an instance that would cause runtime exceptions within the equals/hashcode methods, this isn't causing us a problem currently, but its something to be aware of!

          Show
          Ciaran Jessup added a comment - We've not seen any failures since that fix My only comment is that the constructor for that object (Job) allows you to construct an instance that would cause runtime exceptions within the equals/hashcode methods, this isn't causing us a problem currently, but its something to be aware of!
          Hide
          Matthieu Riou added a comment -

          Should have been fixed by ODE-557.

          Show
          Matthieu Riou added a comment - Should have been fixed by ODE-557 .

            People

            • Assignee:
              Matthieu Riou
              Reporter:
              John Rossall
            • Votes:
              1 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development