{"action":"created","issue":{"url":"https://api.github.com/repos/BOINC/boinc/issues/1409","labels_url":"https://api.github.com/repos/BOINC/boinc/issues/1409/labels{/name}","comments_url":"https://api.github.com/repos/BOINC/boinc/issues/1409/comments","events_url":"https://api.github.com/repos/BOINC/boinc/issues/1409/events","html_url":"https://github.com/BOINC/boinc/issues/1409","id":56219089,"number":1409,"title":"Transitioner does not generate second result if the first one is marked invalid","user":{"login":"romw","id":985772,"avatar_url":"https://avatars.githubusercontent.com/u/985772?v=3","gravatar_id":"","url":"https://api.github.com/users/romw","html_url":"https://github.com/romw","followers_url":"https://api.github.com/users/romw/followers","following_url":"https://api.github.com/users/romw/following{/other_user}","gists_url":"https://api.github.com/users/romw/gists{/gist_id}","starred_url":"https://api.github.com/users/romw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/romw/subscriptions","organizations_url":"https://api.github.com/users/romw/orgs","repos_url":"https://api.github.com/users/romw/repos","events_url":"https://api.github.com/users/romw/events{/privacy}","received_events_url":"https://api.github.com/users/romw/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"davidpanderson","id":985729,"avatar_url":"https://avatars.githubusercontent.com/u/985729?v=3","gravatar_id":"","url":"https://api.github.com/users/davidpanderson","html_url":"https://github.com/davidpanderson","followers_url":"https://api.github.com/users/davidpanderson/followers","following_url":"https://api.github.com/users/davidpanderson/following{/other_user}","gists_url":"https://api.github.com/users/davidpanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/davidpanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidpanderson/subscriptions","organizations_url":"https://api.github.com/users/davidpanderson/orgs","repos_url":"https://api.github.com/users/davidpanderson/repos","events_url":"https://api.github.com/users/davidpanderson/events{/privacy}","received_events_url":"https://api.github.com/users/davidpanderson/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-02-02T10:28:38Z","updated_at":"2015-02-03T05:24:33Z","closed_at":"2015-02-02T10:28:49Z","body":"**Reported by TJM on 15 Oct 40879001 09:46 UTC**\nI believe that there might be a bug in transitioner, for workunits with quorum 1 marked by validator as invalid (result: server_state 5, outcome 1, client_state 5, validate_state invalid; workunit: canonical_resultid 0) it does not generate second result so the tasks is never completed.\r\n\r\nI traced the problem a bit and it looks like transitioner counts any outcome \"success\" result as success, so it ignores VALIDATE_STATE_INVALID, as far as I can see it does not affect workunits with quorum > 1.\r\n\r\nChanging the line 309 in transitioner.cpp (@rev 22647) from\r\n\r\nnsuccess++;\r\n\r\nto\r\n\r\nif (res_item.res_validate_state != VALIDATE_STATE_INVALID) nsuccess++;\r\n\r\nseems to fix the problem, at least for me, however I have no idea if it is a proper fix."},"comment":{"url":"https://api.github.com/repos/BOINC/boinc/issues/comments/72594880","html_url":"https://github.com/BOINC/boinc/issues/1409#issuecomment-72594880","issue_url":"https://api.github.com/repos/BOINC/boinc/issues/1409","id":72594880,"user":{"login":"romw","id":985772,"avatar_url":"https://avatars.githubusercontent.com/u/985772?v=3","gravatar_id":"","url":"https://api.github.com/users/romw","html_url":"https://github.com/romw","followers_url":"https://api.github.com/users/romw/followers","following_url":"https://api.github.com/users/romw/following{/other_user}","gists_url":"https://api.github.com/users/romw/gists{/gist_id}","starred_url":"https://api.github.com/users/romw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/romw/subscriptions","organizations_url":"https://api.github.com/users/romw/orgs","repos_url":"https://api.github.com/users/romw/repos","events_url":"https://api.github.com/users/romw/events{/privacy}","received_events_url":"https://api.github.com/users/romw/received_events","type":"User","site_admin":false},"created_at":"2015-02-03T05:24:33Z","updated_at":"2015-02-03T05:24:33Z","body":"**Commented by davea on 5 Sep 40941957 01:46 UTC**\n(In [22839]) - transitioner: fix bug where retry jobs weren't getting sent\n    because invalid jobs were counted as successful.\n    How could this bug possibly have survived this long?\n    From TJM (thanks -- who are you?)\n    Fixes #1029\n"}}