{"action":"created","issue":{"url":"https://api.github.com/repos/mautic/mautic/issues/2453","repository_url":"https://api.github.com/repos/mautic/mautic","labels_url":"https://api.github.com/repos/mautic/mautic/issues/2453/labels{/name}","comments_url":"https://api.github.com/repos/mautic/mautic/issues/2453/comments","events_url":"https://api.github.com/repos/mautic/mautic/issues/2453/events","html_url":"https://github.com/mautic/mautic/pull/2453","id":174693438,"number":2453,"title":"Use pid to control command execution","user":{"login":"wittwerch","id":1575445,"avatar_url":"https://avatars.githubusercontent.com/u/1575445?v=3","gravatar_id":"","url":"https://api.github.com/users/wittwerch","html_url":"https://github.com/wittwerch","followers_url":"https://api.github.com/users/wittwerch/followers","following_url":"https://api.github.com/users/wittwerch/following{/other_user}","gists_url":"https://api.github.com/users/wittwerch/gists{/gist_id}","starred_url":"https://api.github.com/users/wittwerch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wittwerch/subscriptions","organizations_url":"https://api.github.com/users/wittwerch/orgs","repos_url":"https://api.github.com/users/wittwerch/repos","events_url":"https://api.github.com/users/wittwerch/events{/privacy}","received_events_url":"https://api.github.com/users/wittwerch/received_events","type":"User","site_admin":false},"labels":[{"id":235218107,"url":"https://api.github.com/repos/mautic/mautic/labels/Code%20Review","name":"Code Review","color":"f7c6c7","default":false},{"id":154414465,"url":"https://api.github.com/repos/mautic/mautic/labels/Feature%20Request","name":"Feature Request","color":"207de5","default":false},{"id":197691504,"url":"https://api.github.com/repos/mautic/mautic/labels/Ready%20To%20Test","name":"Ready To Test","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":12,"created_at":"2016-09-02T06:59:15Z","updated_at":"2016-11-22T20:47:15Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/mautic/mautic/pulls/2453","html_url":"https://github.com/mautic/mautic/pull/2453","diff_url":"https://github.com/mautic/mautic/pull/2453.diff","patch_url":"https://github.com/mautic/mautic/pull/2453.patch"},"body":"| Q | A |\n| --- | --- |\n| New feature? | yes |\n| Issues addressed (#s or URLs) | #1737 |\n| BC breaks? | no |\n| Deprecations? | command_timeout is not used anymore |\n#### Description:\n\nAs described in #1737 the current mechanism to prevent commands from running in parallel is flawed. Storing the timestamp in script_executions.json does not cut it:\n1. If a process gets killed, the command are blocked and won't start again\n1. If you stopped the command with Ctrl+C, the command won't start again unless you force it\n1. If a process takes more than command_timeout, you end up with two processes running in parallel\n\nThis PR fixes these problems. The checkRunStatus function is changed and now writes the pid into the script_executions.json. If the command is started again and that pid still exists, the command is not started again. On the otherside, if the process does not exists anymore it safe to assume that we can start the command again.\n#### List deprecations along with the new alternative:\n1. command_timeout parameter is deprecated\n"},"comment":{"url":"https://api.github.com/repos/mautic/mautic/issues/comments/262360946","html_url":"https://github.com/mautic/mautic/pull/2453#issuecomment-262360946","issue_url":"https://api.github.com/repos/mautic/mautic/issues/2453","id":262360946,"user":{"login":"alanhartless","id":63312,"avatar_url":"https://avatars.githubusercontent.com/u/63312?v=3","gravatar_id":"","url":"https://api.github.com/users/alanhartless","html_url":"https://github.com/alanhartless","followers_url":"https://api.github.com/users/alanhartless/followers","following_url":"https://api.github.com/users/alanhartless/following{/other_user}","gists_url":"https://api.github.com/users/alanhartless/gists{/gist_id}","starred_url":"https://api.github.com/users/alanhartless/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alanhartless/subscriptions","organizations_url":"https://api.github.com/users/alanhartless/orgs","repos_url":"https://api.github.com/users/alanhartless/repos","events_url":"https://api.github.com/users/alanhartless/events{/privacy}","received_events_url":"https://api.github.com/users/alanhartless/received_events","type":"User","site_admin":false},"created_at":"2016-11-22T20:47:15Z","updated_at":"2016-11-22T20:47:15Z","body":"It's not that we require Mautic to be able to run on cheap shared hosts, it's that it is running on many cheap shared hosts at the moment and we can't introduce a compatibility break. "}}
{"actor":{"display_login":"alanhartless"}}