[ https://issues.apache.org/jira/browse/OOZIE-1939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14081930#comment-14081930 ]
Shwetha G S commented on OOZIE-1939: ------------------------------------ XLog.resetPrefix(LOG) doesn't help as XLog is shared across concurrent threads for the same class. The following will help to reset the XLog.Info: ThreadPoolExecutor Hook methods This class provides protected overridable beforeExecute(java.lang.Thread, java.lang.Runnable) and afterExecute(java.lang.Runnable, java.lang.Throwable) methods that are called before and after execution of each task. These can be used to manipulate the execution environment; for example, reinitializing ThreadLocals, gathering statistics, or adding log entries. Additionally, method terminated() can be overridden to perform any special processing that needs to be done once the Executor has fully terminated. Info.setParameters() can create the prefix and XLog.log() can just get the prefix to avoid computing prefix in each log() > 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, OOZIE-1939.2.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)