[ https://issues.apache.org/jira/browse/HADOOP-1111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tom White updated HADOOP-1111: ------------------------------ Resolution: Fixed Status: Resolved (was: Patch Available) I've just committed this. Thanks Alejandro! > Job completion notification to a job configured URL > --------------------------------------------------- > > Key: HADOOP-1111 > URL: https://issues.apache.org/jira/browse/HADOOP-1111 > Project: Hadoop > Issue Type: New Feature > Components: mapred > Affects Versions: 0.12.2 > Environment: all > Reporter: Alejandro Abdelnur > Fix For: 0.13.0 > > Attachments: patch-1111.txt, patch-1111.txt, patch-1111.txt, > patch-1111.txt, patch-1111.txt, patch-1111.txt, patch-1111.txt, > patch-1111.txt, patch-1111.txt, patch-1111.txt, patch-1111.txt > > > Currently clients have to poll the JobTracker to find if a job has completed > or not. > When invoking Hadoop from other systems is desirable to have a notification > mechanism on job completion. > The notification approach simplifies the client waiting for completion and > removes load from the JobTracker as polling can be avoided. > Proposed solution: > When the JobTracker processes the completion of a job (success and failure) > if the job configuration has a jobEnd.notificationUrl property it will make a > HTTP GET request to the specified URL. > The jobEnd.notificationUrl property may include 2 variables in it '${jobId}' > and '${jobStatus}'. if they are present, they will be replaced with tehe job > ID and status of the job and the URL will be invoked. > Two additional properties, 'jobEnd.retries' and 'jobEnd.retryInterval', will > indicate retry behavior. > Not to delay the JobTracker processing while doing notifications, a > ConsumerProducer Queue will be used to queue up job notification upon > completion. > A daemon thread will consume job notifications from the above Queue and will > make the URL invocation. > On notification failure, the job notification is queue up again on the > notification queue. > The queue will be a java.util.concurrent.DelayQueue. This will make job > notifications (on retries) to be avaiable on the consumer side only when the > retry time is up. > The changes will be done in the JobTracker and in the LocalJobRunner. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.