Uploaded image for project: 'Oozie'
  1. Oozie
  2. OOZIE-2394

Oozie can execute command without holding lock

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • None
    • 4.3.0
    • None
    • None

    Description

      To speedup job submission ( not the the forked actions) we create workflow actions synchronously. We call ActionStartXCommand from SignalXCommand by setting isSynchronous = true. This will bypass lock acquiring, which is Ok, SignalXCommand will have the job lock.

      If there is transient error. Same command is requeued which will have isSynchronous flag set to true.

      Requeued command will wake-up and started executing without acquiring lock. If the job submission takes more than 2 min, then we might have issue.

      Action recovery is set to 2 min ( default), Recovery service will run and submitted new the command. since the first command didn't acquire any lock. Recovery will be able to run the new command.

      We will have two same command running parallely.

      All our commands are reentrant, we don't have to have set synchronized flag to run multiple command from same thread.
      Because of reentrant, command running in same thread should be able to acquire same lock.

      Attachments

        1. OOZIE-2394-V1.patch
          12 kB
          Purshotam Shah

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            puru Purshotam Shah
            puru Purshotam Shah
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment