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

Attila Sasvari commented on OOZIE-3170:
---------------------------------------

[~jphelps] many thanks! Sorry for the late response.
- Next time, can you please submit the patch to check whether Oozie tests still 
pass?
- If we change the directory structure, we should update the documentation too: 
https://github.com/apache/oozie/blob/e26641db469533ac059923c7ed28a5c74f71ad20/docs/src/site/twiki/DG_CommandLineTool.twiki#L1942
- Setting the log directory to the same place as the output zip file sounds 
good to me.

I plan to try the patch out with a pseudo hadoop as soon as I have some more 
capacity.

> Oozie Diagnostic Bundle tool fails with NPE due to missing service class
> ------------------------------------------------------------------------
>
>                 Key: OOZIE-3170
>                 URL: https://issues.apache.org/jira/browse/OOZIE-3170
>             Project: Oozie
>          Issue Type: Bug
>    Affects Versions: 5.0.0b1
>            Reporter: Jason Phelps
>            Assignee: Jason Phelps
>            Priority: Major
>         Attachments: OOZIE-3170-1.patch, OOZIE-3170-2.patch
>
>
>  
> When I ran the below command after doing a clean build from the main branch
> {code:java}
> bin/oozie-diag-bundle-collector.sh -oozie 
> http://jphelps-60-1.gce.cloudera.com:11000/oozie -output /tmp/jobs/
> {code}
> It will fail with an NPE. I apologize as I did not copy the client error, but 
> the error in oozie.log is below:
> {code:java}
> 2018-01-25 10:53:58,123 ERROR ShareLibService:517 - SERVER[] 
> org.apache.oozie.service.ServiceException: E0104: Could not fully initialize 
> service [org.apache.oozie.service.ShareLibService], Not able to cache 
> sharelib. An Admin needs to install the sharelib with oozie-setup.sh and 
> issue the 'oozie admin' CLI command to update the sharelib
> org.apache.oozie.service.ServiceException: E0104: Could not fully initialize 
> service [org.apache.oozie.service.ShareLibService], Not able to cache 
> sharelib. An Admin needs to install the sharelib with oozie-setup.sh and 
> issue the 'oozie admin' CLI command to update the sharelib
>  at org.apache.oozie.service.ShareLibService.init(ShareLibService.java:144)
>  at org.apache.oozie.service.Services.setServiceInternal(Services.java:386)
>  at org.apache.oozie.service.Services.setService(Services.java:372)
>  at org.apache.oozie.service.Services.loadServices(Services.java:304)
>  at org.apache.oozie.service.Services.init(Services.java:212)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.initOozieServices(DiagBundleCollectorDriver.java:153)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.setHadoopConfig(DiagBundleCollectorDriver.java:135)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.run(DiagBundleCollectorDriver.java:56)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.main(DiagBundleCollectorDriver.java:52)
> Caused by: java.lang.NullPointerException
>  at 
> org.apache.oozie.service.ShareLibService.cacheActionKeySharelibConfList(ShareLibService.java:878)
>  at org.apache.oozie.service.ShareLibService.init(ShareLibService.java:132)
>  ... 8 more
> 2018-01-25 10:53:58,130 INFO PartitionDependencyManagerService:520 - SERVER[] 
> PartitionDependencyManagerService initialized. Dependency cache is 
> org.apache.oozie.dependency.hcat.SimpleHCatDependencyCache
> 2018-01-25 10:53:58,131 FATAL Services:514 - SERVER[] Runtime Exception 
> during Services Load. Check your list of {0} or {1}
> java.lang.NullPointerException
>  at 
> org.apache.oozie.service.PartitionDependencyManagerService.init(PartitionDependencyManagerService.java:81)
>  at 
> org.apache.oozie.service.PartitionDependencyManagerService.init(PartitionDependencyManagerService.java:71)
>  at org.apache.oozie.service.Services.setServiceInternal(Services.java:386)
>  at org.apache.oozie.service.Services.setService(Services.java:372)
>  at org.apache.oozie.service.Services.loadServices(Services.java:304)
>  at org.apache.oozie.service.Services.init(Services.java:212)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.initOozieServices(DiagBundleCollectorDriver.java:153)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.setHadoopConfig(DiagBundleCollectorDriver.java:135)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.run(DiagBundleCollectorDriver.java:56)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.main(DiagBundleCollectorDriver.java:52)
> 2018-01-25 10:53:58,132 FATAL Services:514 - SERVER[] E0103: Could not load 
> service classes, null
> org.apache.oozie.service.ServiceException: E0103: Could not load service 
> classes, null
>  at org.apache.oozie.service.Services.loadServices(Services.java:309)
>  at org.apache.oozie.service.Services.init(Services.java:212)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.initOozieServices(DiagBundleCollectorDriver.java:153)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.setHadoopConfig(DiagBundleCollectorDriver.java:135)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.run(DiagBundleCollectorDriver.java:56)
>  at 
> org.apache.oozie.tools.diag.DiagBundleCollectorDriver.main(DiagBundleCollectorDriver.java:52)
> Caused by: java.lang.NullPointerException
>  at 
> org.apache.oozie.service.PartitionDependencyManagerService.init(PartitionDependencyManagerService.java:81)
>  at 
> org.apache.oozie.service.PartitionDependencyManagerService.init(PartitionDependencyManagerService.java:71)
>  at org.apache.oozie.service.Services.setServiceInternal(Services.java:386)
>  at org.apache.oozie.service.Services.setService(Services.java:372)
>  at org.apache.oozie.service.Services.loadServices(Services.java:304)
>  ... 5 more
>  
> {code}
> From my debugging, it looks like it needs the JobsConcurrencyService to run
>  
> [https://github.com/apache/oozie/blob/master/core/src/main/java/org/apache/oozie/service/PartitionDependencyManagerService.java#L81]
>  
> {code:java}
> purgeEnabled = 
> Services.get().get(JobsConcurrencyService.class).isHighlyAvailableMode();{code}
> But this service is not loaded by the following:
> [https://github.com/apache/oozie/blob/master/tools/src/main/java/org/apache/oozie/tools/diag/DiagBundleCollectorDriver.java#L149]
> {code:java}
> services.getConf()
>  .set(Services.CONF_SERVICE_CLASSES, 
> "org.apache.oozie.service.LiteWorkflowAppService,"
>  + "org.apache.oozie.service.SchedulerService,"
>  + "org.apache.oozie.service.HadoopAccessorService,"
>  + "org.apache.oozie.service.ShareLibService");{code}



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

Reply via email to