{"action":"created","issue":{"url":"https://api.github.com/repos/hazelcast/hazelcast/issues/9241","repository_url":"https://api.github.com/repos/hazelcast/hazelcast","labels_url":"https://api.github.com/repos/hazelcast/hazelcast/issues/9241/labels{/name}","comments_url":"https://api.github.com/repos/hazelcast/hazelcast/issues/9241/comments","events_url":"https://api.github.com/repos/hazelcast/hazelcast/issues/9241/events","html_url":"https://github.com/hazelcast/hazelcast/pull/9241","id":188748287,"number":9241,"title":"[WIP]Fixes in Operation.waitTimeout update on retrying","user":{"login":"pveentjer","id":105243,"avatar_url":"https://avatars.githubusercontent.com/u/105243?v=3","gravatar_id":"","url":"https://api.github.com/users/pveentjer","html_url":"https://github.com/pveentjer","followers_url":"https://api.github.com/users/pveentjer/followers","following_url":"https://api.github.com/users/pveentjer/following{/other_user}","gists_url":"https://api.github.com/users/pveentjer/gists{/gist_id}","starred_url":"https://api.github.com/users/pveentjer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pveentjer/subscriptions","organizations_url":"https://api.github.com/users/pveentjer/orgs","repos_url":"https://api.github.com/users/pveentjer/repos","events_url":"https://api.github.com/users/pveentjer/events{/privacy}","received_events_url":"https://api.github.com/users/pveentjer/received_events","type":"User","site_admin":false},"labels":[{"id":137752575,"url":"https://api.github.com/repos/hazelcast/hazelcast/labels/Team:%20Core","name":"Team: Core","color":"109def","default":false},{"id":1740690,"url":"https://api.github.com/repos/hazelcast/hazelcast/labels/Type:%20Defect","name":"Type: Defect","color":"eb6420","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/hazelcast/hazelcast/milestones/76","html_url":"https://github.com/hazelcast/hazelcast/milestones/3.8","labels_url":"https://api.github.com/repos/hazelcast/hazelcast/milestones/76/labels","id":1774122,"number":76,"title":"3.8","description":"","creator":{"login":"degerhz","id":8373100,"avatar_url":"https://avatars.githubusercontent.com/u/8373100?v=3","gravatar_id":"","url":"https://api.github.com/users/degerhz","html_url":"https://github.com/degerhz","followers_url":"https://api.github.com/users/degerhz/followers","following_url":"https://api.github.com/users/degerhz/following{/other_user}","gists_url":"https://api.github.com/users/degerhz/gists{/gist_id}","starred_url":"https://api.github.com/users/degerhz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/degerhz/subscriptions","organizations_url":"https://api.github.com/users/degerhz/orgs","repos_url":"https://api.github.com/users/degerhz/repos","events_url":"https://api.github.com/users/degerhz/events{/privacy}","received_events_url":"https://api.github.com/users/degerhz/received_events","type":"User","site_admin":false},"open_issues":195,"closed_issues":290,"state":"open","created_at":"2016-05-18T14:13:56Z","updated_at":"2016-11-11T12:47:18Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-11-11T12:17:28Z","updated_at":"2016-11-11T13:03:22Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/hazelcast/hazelcast/pulls/9241","html_url":"https://github.com/hazelcast/hazelcast/pull/9241","diff_url":"https://github.com/hazelcast/hazelcast/pull/9241.diff","patch_url":"https://github.com/hazelcast/hazelcast/pull/9241.patch"},"body":"In case of retrying a BlockingOperation, the waitTimeout is made smaller so that\r\na timed blocking operation eventually times out.\r\n\r\nHowever there are some problems:\r\n- it can happen that a positive timeout, becomes negative due to subtraction. A negative\r\ntimeout is considered to be an infinite timeout. So this can cause problems\r\n\r\n- it can happen that a blocking call doesn't wait as long as specified because of subtracting\r\nthe elapsed time, the call timeout is subtracted. This is a problem if the elapsed time is\r\nsmaller than the call timeout. This can happen because the OperationParker periodically sweeps\r\nthrough all operations to expire them. This could happen 1 second after the operation\r\nget executed, but it will still get a 60 second (default timeout) being deducted from the\r\nremaining timeout.\r\n\r\ntodo: need to add some tests\r\n\r\n@mdogan @jerrinot can you have a look at this PR"},"comment":{"url":"https://api.github.com/repos/hazelcast/hazelcast/issues/comments/259952863","html_url":"https://github.com/hazelcast/hazelcast/pull/9241#issuecomment-259952863","issue_url":"https://api.github.com/repos/hazelcast/hazelcast/issues/9241","id":259952863,"user":{"login":"devOpsHazelcast","id":7523732,"avatar_url":"https://avatars.githubusercontent.com/u/7523732?v=3","gravatar_id":"","url":"https://api.github.com/users/devOpsHazelcast","html_url":"https://github.com/devOpsHazelcast","followers_url":"https://api.github.com/users/devOpsHazelcast/followers","following_url":"https://api.github.com/users/devOpsHazelcast/following{/other_user}","gists_url":"https://api.github.com/users/devOpsHazelcast/gists{/gist_id}","starred_url":"https://api.github.com/users/devOpsHazelcast/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/devOpsHazelcast/subscriptions","organizations_url":"https://api.github.com/users/devOpsHazelcast/orgs","repos_url":"https://api.github.com/users/devOpsHazelcast/repos","events_url":"https://api.github.com/users/devOpsHazelcast/events{/privacy}","received_events_url":"https://api.github.com/users/devOpsHazelcast/received_events","type":"User","site_admin":false},"created_at":"2016-11-11T13:03:22Z","updated_at":"2016-11-11T13:03:22Z","body":"Test PASSed.\n"}}
{"actor":{"display_login":"devOpsHazelcast"}}