You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@oozie.apache.org by "Andras Salamon (JIRA)" <ji...@apache.org> on 2019/07/09 09:10:00 UTC

[jira] [Commented] (OOZIE-2755) Oozie HA: ZKJobsConcurrencyService throws runtime exception when numOozies is zero

    [ https://issues.apache.org/jira/browse/OOZIE-2755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16881075#comment-16881075 ] 

Andras Salamon commented on OOZIE-2755:
---------------------------------------

We might just return true in this case as suggested [here|https://mail-archives.apache.org/mod_mbox/oozie-user/201612.mbox/%3CCA+ygShDPz97uygHTSXeL-sUzk8h3=DFJbGdDoj+93XbSSt6=cQ@mail.gmail.com%3E] but without zookeper we will run into other problems. Maybe throwing a better exception would be better.

Not only {{isJobIdForThisServer}} is affected, {{getJobIdsForThisServer}} should be also checked.

> Oozie HA: ZKJobsConcurrencyService throws runtime exception when numOozies is zero
> ----------------------------------------------------------------------------------
>
>                 Key: OOZIE-2755
>                 URL: https://issues.apache.org/jira/browse/OOZIE-2755
>             Project: Oozie
>          Issue Type: Bug
>          Components: HA
>            Reporter: Dongying Jiao
>            Priority: Major
>
> Setting up Oozie HA using virtual IP, {{server-1}} and {{server-2}} (active-active), when we take down {{server-1}} any Oozie job submitted fails with below stacktrace. If both are up , there is no issue.
> {code:java}
> ERROR RecoveryService$RecoveryRunnable:517 - SERVER[XXX] USER[-] GROUP[-] TOKEN[-] APP[-] JOB[-] ACTION[-] Exception, / by zero
> java.lang.ArithmeticException: / by zero
>         at org.apache.oozie.service.ZKJobsConcurrencyService.checkJobIdForServer(ZKJobsConcurrencyService.java:167)
>         at org.apache.oozie.service.ZKJobsConcurrencyService.isJobIdForThisServer(ZKJobsConcurrencyService.java:129)
>         at org.apache.oozie.service.RecoveryService$RecoveryRunnable.runWFRecovery(RecoveryService.java:362)
>         at org.apache.oozie.service.RecoveryService$RecoveryRunnable.run(RecoveryService.java:146)
>         at org.apache.oozie.service.SchedulerService$2.run(SchedulerService.java:175)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>         at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
>         at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
>         at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)