[ https://issues.apache.org/jira/browse/OOZIE-1939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14079149#comment-14079149 ]
Shwetha G S commented on OOZIE-1939: ------------------------------------ I don't think this will solve the issue. The issue is Info is not used as thread level singleton. Two things that need to be fixed: In XCommand: logInfo = new XLog.Info(); This can be changed to either logInfo = XLog.Info().get(); or get rid of this and LogUtils.setLogInfo() should use XLog.Info().get() instead of the logInfo in argument The main issue is in XLog.log(). XLog is shared across threads for same class. So, in XLog.log(), prefix should be computed as XLog.Info().get().createPrefix() which uses the thread local info and the log info is set correctly > Incorrect job information is set while logging > ---------------------------------------------- > > Key: OOZIE-1939 > URL: https://issues.apache.org/jira/browse/OOZIE-1939 > Project: Oozie > Issue Type: Bug > Reporter: Purshotam Shah > Assignee: Azrael > Attachments: OOZIE-1939.1.patch > > > {code} > 2014-07-16 17:28:06,422 DEBUG CoordChangeXCommand:545 [http-0.0.0.0-4443-5] - > USER[hadoopqa] GROUP[users] TOKEN[] APP[coordB236] > JOB[0011514-140716042555-oozie-oozi-C] ACTION[-] Acquired lock for > [0011385-140716042555-oozie-oozi-C] in [coord_change] > 2014-07-16 17:28:06,422 TRACE CoordChangeXCommand:548 [http-0.0.0.0-4443-5] - > USER[hadoopqa] GROUP[users] TOKEN[] APP[coordB236] > JOB[0011514-140716042555-oozie-oozi-C] ACTION[-] Load state for > [0011385-140716042555-oozie-oozi-C] > {code} > {code} > protected void loadState() throws CommandException { > jpaService = Services.get().get(JPAService.class); > if (jpaService == null) { > LOG.error(ErrorCode.E0610); > } > try { > coordJob = > CoordJobQueryExecutor.getInstance().get(CoordJobQuery.GET_COORD_JOB_MATERIALIZE, > jobId); > prevStatus = coordJob.getStatus(); > } > catch (JPAExecutorException jex) { > throw new CommandException(jex); > } > // calculate start materialize and end materialize time > calcMatdTime(); > LogUtils.setLogInfo(coordJob, logInfo); > } > {code} > Most of the commands set jobinfo after loadstate, because of that few log > statements ( like acquiring lock, load state) logs with previous jobinfo. -- This message was sent by Atlassian JIRA (v6.2#6252)