I am using Oozie 4.2.0 package(http://archive.apache.org/dist/oozie/4.2.0/).
I built this Oozie package source and used it in windows and Linux machine
over past 2 years. But, today I am getting the following error when
starting oozie server (/bin/oozied.sh run) in my Linux machine.

*Validate DB Connection*
*Exception in thread "main" java.lang.ExceptionInInitializerError*
*        at org.apache.oozie.service.Services.<init>(Services.java:114)*
*        at
*        at
*        at
*        at org.apache.oozie.tools.OozieDBCLI.createDB(OozieDBCLI.java:182)*
*        at org.apache.oozie.tools.OozieDBCLI.run(OozieDBCLI.java:126)*
*        at org.apache.oozie.tools.OozieDBCLI.main(OozieDBCLI.java:77)*
*Caused by: java.lang.IllegalArgumentException: Invalid TimeZone: UTC*
*        at org.apache.oozie.util.DateUtils.getTimeZone(DateUtils.java:146)*
*        at org.apache.oozie.util.DateUtils.<clinit>(DateUtils.java:44)*
*        ... 7 more*

When I am tracing this error in Oozie source file. The DateUtils.java file
like below.

Here run time values for the following,
tzId = "UTC"
tz = sun.util.calendar.ZoneInfo[id="GMT",offset=0,dstSavings=0,
tz.getID() = "GMT"

So, when checking the following condition in DateUtils.java. It always
succeeds and throw IllegalArgumentException in my case.

    *if (!tz.getID().equals(tzId)) {*
*                throw new IllegalArgumentException("Invalid TimeZone: " +
*            }*

My question is why my machine time zone is detecting timezone id "GMT" in
java code. And why Apache oozie is checking this condition.
Please, help me to to start Oozie server. Thanks in Advance.

*Machine Environment Details:*

   - Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-116-generic x86_64)
   - locale - LANG=en_US.UTF-8
   - Timezone - Europe/Berlin

Reply via email to