{"action":"closed","issue":{"url":"https://api.github.com/repos/opencb/opencga/issues/93","labels_url":"https://api.github.com/repos/opencb/opencga/issues/93/labels{/name}","comments_url":"https://api.github.com/repos/opencb/opencga/issues/93/comments","events_url":"https://api.github.com/repos/opencb/opencga/issues/93/events","html_url":"https://github.com/opencb/opencga/issues/93","id":72456874,"number":93,"title":"Job status is not cleaned up when aborted","user":{"login":"cyenyxe","id":1433407,"avatar_url":"https://avatars.githubusercontent.com/u/1433407?v=3","gravatar_id":"","url":"https://api.github.com/users/cyenyxe","html_url":"https://github.com/cyenyxe","followers_url":"https://api.github.com/users/cyenyxe/followers","following_url":"https://api.github.com/users/cyenyxe/following{/other_user}","gists_url":"https://api.github.com/users/cyenyxe/gists{/gist_id}","starred_url":"https://api.github.com/users/cyenyxe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cyenyxe/subscriptions","organizations_url":"https://api.github.com/users/cyenyxe/orgs","repos_url":"https://api.github.com/users/cyenyxe/repos","events_url":"https://api.github.com/users/cyenyxe/events{/privacy}","received_events_url":"https://api.github.com/users/cyenyxe/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/opencb/opencga/labels/bug","name":"bug","color":"fc2929"}],"state":"closed","locked":false,"assignee":{"login":"j-coll","id":4750611,"avatar_url":"https://avatars.githubusercontent.com/u/4750611?v=3","gravatar_id":"","url":"https://api.github.com/users/j-coll","html_url":"https://github.com/j-coll","followers_url":"https://api.github.com/users/j-coll/followers","following_url":"https://api.github.com/users/j-coll/following{/other_user}","gists_url":"https://api.github.com/users/j-coll/gists{/gist_id}","starred_url":"https://api.github.com/users/j-coll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/j-coll/subscriptions","organizations_url":"https://api.github.com/users/j-coll/orgs","repos_url":"https://api.github.com/users/j-coll/repos","events_url":"https://api.github.com/users/j-coll/events{/privacy}","received_events_url":"https://api.github.com/users/j-coll/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/opencb/opencga/milestones/8","html_url":"https://github.com/opencb/opencga/milestones/v0.5.3","labels_url":"https://api.github.com/repos/opencb/opencga/milestones/8/labels","id":1160075,"number":8,"title":"v0.5.3","description":"Bug fixes over version 0.5.2.","creator":{"login":"cyenyxe","id":1433407,"avatar_url":"https://avatars.githubusercontent.com/u/1433407?v=3","gravatar_id":"","url":"https://api.github.com/users/cyenyxe","html_url":"https://github.com/cyenyxe","followers_url":"https://api.github.com/users/cyenyxe/followers","following_url":"https://api.github.com/users/cyenyxe/following{/other_user}","gists_url":"https://api.github.com/users/cyenyxe/gists{/gist_id}","starred_url":"https://api.github.com/users/cyenyxe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cyenyxe/subscriptions","organizations_url":"https://api.github.com/users/cyenyxe/orgs","repos_url":"https://api.github.com/users/cyenyxe/repos","events_url":"https://api.github.com/users/cyenyxe/events{/privacy}","received_events_url":"https://api.github.com/users/cyenyxe/received_events","type":"User","site_admin":false},"open_issues":6,"closed_issues":6,"state":"open","created_at":"2015-06-11T10:31:07Z","updated_at":"2015-07-31T16:15:55Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2015-05-01T15:34:05Z","updated_at":"2015-07-31T16:15:55Z","closed_at":"2015-07-31T16:15:55Z","body":"If a job fails under normal conditions (a managed exception) the status of the involved files is properly handled. But when a job queue manager aborts it for reasons such as too much memory usage, then this status is not cleaned and must be corrected by hand (or forced to be ignored in a re-run).\r\n\r\nOne solution would be to use Runtime.getRuntime().addShutdownHook(...) from the Java API, although it would be necessary to analyse how this will affect the current CLI structure (unless we find a generic way to deal with status recovery)."}}