{"action":"closed","number":345,"pull_request":{"url":"https://api.github.com/repos/mumrah/kafka-python/pulls/345","id":30963238,"html_url":"https://github.com/mumrah/kafka-python/pull/345","diff_url":"https://github.com/mumrah/kafka-python/pull/345.diff","patch_url":"https://github.com/mumrah/kafka-python/pull/345.patch","issue_url":"https://api.github.com/repos/mumrah/kafka-python/issues/345","number":345,"state":"closed","locked":false,"title":"rollover correlation id. addresses #344","user":{"login":"richchang0","id":1567100,"avatar_url":"https://avatars.githubusercontent.com/u/1567100?v=3","gravatar_id":"","url":"https://api.github.com/users/richchang0","html_url":"https://github.com/richchang0","followers_url":"https://api.github.com/users/richchang0/followers","following_url":"https://api.github.com/users/richchang0/following{/other_user}","gists_url":"https://api.github.com/users/richchang0/gists{/gist_id}","starred_url":"https://api.github.com/users/richchang0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/richchang0/subscriptions","organizations_url":"https://api.github.com/users/richchang0/orgs","repos_url":"https://api.github.com/users/richchang0/repos","events_url":"https://api.github.com/users/richchang0/events{/privacy}","received_events_url":"https://api.github.com/users/richchang0/received_events","type":"User","site_admin":false},"body":"when the correlation id hits 2,147,483,648 (one over int32 MAX), then the driver can't encode that message, and hits an error.\r\n\r\nSo in this changed I've done two things.\r\n\r\n1. change the encoder to use an unsigned number from a signed for the correlation_id\r\n2. removed itertools and replaced it with a normal python integer, with every _next() call converting the number to a ctype uint_32 to allow for an overflow to roll over back down to 0.\r\n\r\nNot sure if this is the better design choice than just doing a check of itertools.count to see if it hit the intmax, then resetting it.","created_at":"2015-03-11T17:01:49Z","updated_at":"2015-03-30T22:30:27Z","closed_at":"2015-03-30T22:30:27Z","merged_at":null,"merge_commit_sha":"31ded8bb8fb4e7d98d7f47e6a6900df0e5b59ec6","assignee":null,"milestone":{"url":"https://api.github.com/repos/mumrah/kafka-python/milestones/5","html_url":"https://github.com/mumrah/kafka-python/milestones/0.9.4%20Release","labels_url":"https://api.github.com/repos/mumrah/kafka-python/milestones/5/labels","id":1035587,"number":5,"title":"0.9.4 Release","description":"Issues / PRs to be included in 0.9.4 release","creator":{"login":"dpkp","id":843444,"avatar_url":"https://avatars.githubusercontent.com/u/843444?v=3","gravatar_id":"","url":"https://api.github.com/users/dpkp","html_url":"https://github.com/dpkp","followers_url":"https://api.github.com/users/dpkp/followers","following_url":"https://api.github.com/users/dpkp/following{/other_user}","gists_url":"https://api.github.com/users/dpkp/gists{/gist_id}","starred_url":"https://api.github.com/users/dpkp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dpkp/subscriptions","organizations_url":"https://api.github.com/users/dpkp/orgs","repos_url":"https://api.github.com/users/dpkp/repos","events_url":"https://api.github.com/users/dpkp/events{/privacy}","received_events_url":"https://api.github.com/users/dpkp/received_events","type":"User","site_admin":false},"open_issues":4,"closed_issues":10,"state":"open","created_at":"2015-03-24T02:51:18Z","updated_at":"2015-03-30T22:30:27Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/mumrah/kafka-python/pulls/345/commits","review_comments_url":"https://api.github.com/repos/mumrah/kafka-python/pulls/345/comments","review_comment_url":"https://api.github.com/repos/mumrah/kafka-python/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mumrah/kafka-python/issues/345/comments","statuses_url":"https://api.github.com/repos/mumrah/kafka-python/statuses/29152bec3cab09f59d54efe4559146e104197366","head":{"label":"richchang0:master","ref":"master","sha":"29152bec3cab09f59d54efe4559146e104197366","user":{"login":"richchang0","id":1567100,"avatar_url":"https://avatars.githubusercontent.com/u/1567100?v=3","gravatar_id":"","url":"https://api.github.com/users/richchang0","html_url":"https://github.com/richchang0","followers_url":"https://api.github.com/users/richchang0/followers","following_url":"https://api.github.com/users/richchang0/following{/other_user}","gists_url":"https://api.github.com/users/richchang0/gists{/gist_id}","starred_url":"https://api.github.com/users/richchang0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/richchang0/subscriptions","organizations_url":"https://api.github.com/users/richchang0/orgs","repos_url":"https://api.github.com/users/richchang0/repos","events_url":"https://api.github.com/users/richchang0/events{/privacy}","received_events_url":"https://api.github.com/users/richchang0/received_events","type":"User","site_admin":false},"repo":{"id":32029868,"name":"kafka-python","full_name":"richchang0/kafka-python","owner":{"login":"richchang0","id":1567100,"avatar_url":"https://avatars.githubusercontent.com/u/1567100?v=3","gravatar_id":"","url":"https://api.github.com/users/richchang0","html_url":"https://github.com/richchang0","followers_url":"https://api.github.com/users/richchang0/followers","following_url":"https://api.github.com/users/richchang0/following{/other_user}","gists_url":"https://api.github.com/users/richchang0/gists{/gist_id}","starred_url":"https://api.github.com/users/richchang0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/richchang0/subscriptions","organizations_url":"https://api.github.com/users/richchang0/orgs","repos_url":"https://api.github.com/users/richchang0/repos","events_url":"https://api.github.com/users/richchang0/events{/privacy}","received_events_url":"https://api.github.com/users/richchang0/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/richchang0/kafka-python","description":"Python client for Apache Kafka","fork":true,"url":"https://api.github.com/repos/richchang0/kafka-python","forks_url":"https://api.github.com/repos/richchang0/kafka-python/forks","keys_url":"https://api.github.com/repos/richchang0/kafka-python/keys{/key_id}","collaborators_url":"https://api.github.com/repos/richchang0/kafka-python/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/richchang0/kafka-python/teams","hooks_url":"https://api.github.com/repos/richchang0/kafka-python/hooks","issue_events_url":"https://api.github.com/repos/richchang0/kafka-python/issues/events{/number}","events_url":"https://api.github.com/repos/richchang0/kafka-python/events","assignees_url":"https://api.github.com/repos/richchang0/kafka-python/assignees{/user}","branches_url":"https://api.github.com/repos/richchang0/kafka-python/branches{/branch}","tags_url":"https://api.github.com/repos/richchang0/kafka-python/tags","blobs_url":"https://api.github.com/repos/richchang0/kafka-python/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/richchang0/kafka-python/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/richchang0/kafka-python/git/refs{/sha}","trees_url":"https://api.github.com/repos/richchang0/kafka-python/git/trees{/sha}","statuses_url":"https://api.github.com/repos/richchang0/kafka-python/statuses/{sha}","languages_url":"https://api.github.com/repos/richchang0/kafka-python/languages","stargazers_url":"https://api.github.com/repos/richchang0/kafka-python/stargazers","contributors_url":"https://api.github.com/repos/richchang0/kafka-python/contributors","subscribers_url":"https://api.github.com/repos/richchang0/kafka-python/subscribers","subscription_url":"https://api.github.com/repos/richchang0/kafka-python/subscription","commits_url":"https://api.github.com/repos/richchang0/kafka-python/commits{/sha}","git_commits_url":"https://api.github.com/repos/richchang0/kafka-python/git/commits{/sha}","comments_url":"https://api.github.com/repos/richchang0/kafka-python/comments{/number}","issue_comment_url":"https://api.github.com/repos/richchang0/kafka-python/issues/comments{/number}","contents_url":"https://api.github.com/repos/richchang0/kafka-python/contents/{+path}","compare_url":"https://api.github.com/repos/richchang0/kafka-python/compare/{base}...{head}","merges_url":"https://api.github.com/repos/richchang0/kafka-python/merges","archive_url":"https://api.github.com/repos/richchang0/kafka-python/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/richchang0/kafka-python/downloads","issues_url":"https://api.github.com/repos/richchang0/kafka-python/issues{/number}","pulls_url":"https://api.github.com/repos/richchang0/kafka-python/pulls{/number}","milestones_url":"https://api.github.com/repos/richchang0/kafka-python/milestones{/number}","notifications_url":"https://api.github.com/repos/richchang0/kafka-python/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/richchang0/kafka-python/labels{/name}","releases_url":"https://api.github.com/repos/richchang0/kafka-python/releases{/id}","created_at":"2015-03-11T16:58:09Z","updated_at":"2015-03-11T16:59:27Z","pushed_at":"2015-03-11T16:59:27Z","git_url":"git://github.com/richchang0/kafka-python.git","ssh_url":"git@github.com:richchang0/kafka-python.git","clone_url":"https://github.com/richchang0/kafka-python.git","svn_url":"https://github.com/richchang0/kafka-python","homepage":"","size":936,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"mumrah:master","ref":"master","sha":"92aa7e94288cbfc4aed0dfbd52021d21694bced4","user":{"login":"mumrah","id":55116,"avatar_url":"https://avatars.githubusercontent.com/u/55116?v=3","gravatar_id":"","url":"https://api.github.com/users/mumrah","html_url":"https://github.com/mumrah","followers_url":"https://api.github.com/users/mumrah/followers","following_url":"https://api.github.com/users/mumrah/following{/other_user}","gists_url":"https://api.github.com/users/mumrah/gists{/gist_id}","starred_url":"https://api.github.com/users/mumrah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mumrah/subscriptions","organizations_url":"https://api.github.com/users/mumrah/orgs","repos_url":"https://api.github.com/users/mumrah/repos","events_url":"https://api.github.com/users/mumrah/events{/privacy}","received_events_url":"https://api.github.com/users/mumrah/received_events","type":"User","site_admin":false},"repo":{"id":5934517,"name":"kafka-python","full_name":"mumrah/kafka-python","owner":{"login":"mumrah","id":55116,"avatar_url":"https://avatars.githubusercontent.com/u/55116?v=3","gravatar_id":"","url":"https://api.github.com/users/mumrah","html_url":"https://github.com/mumrah","followers_url":"https://api.github.com/users/mumrah/followers","following_url":"https://api.github.com/users/mumrah/following{/other_user}","gists_url":"https://api.github.com/users/mumrah/gists{/gist_id}","starred_url":"https://api.github.com/users/mumrah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mumrah/subscriptions","organizations_url":"https://api.github.com/users/mumrah/orgs","repos_url":"https://api.github.com/users/mumrah/repos","events_url":"https://api.github.com/users/mumrah/events{/privacy}","received_events_url":"https://api.github.com/users/mumrah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mumrah/kafka-python","description":"Python client for Apache Kafka","fork":false,"url":"https://api.github.com/repos/mumrah/kafka-python","forks_url":"https://api.github.com/repos/mumrah/kafka-python/forks","keys_url":"https://api.github.com/repos/mumrah/kafka-python/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mumrah/kafka-python/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mumrah/kafka-python/teams","hooks_url":"https://api.github.com/repos/mumrah/kafka-python/hooks","issue_events_url":"https://api.github.com/repos/mumrah/kafka-python/issues/events{/number}","events_url":"https://api.github.com/repos/mumrah/kafka-python/events","assignees_url":"https://api.github.com/repos/mumrah/kafka-python/assignees{/user}","branches_url":"https://api.github.com/repos/mumrah/kafka-python/branches{/branch}","tags_url":"https://api.github.com/repos/mumrah/kafka-python/tags","blobs_url":"https://api.github.com/repos/mumrah/kafka-python/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mumrah/kafka-python/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mumrah/kafka-python/git/refs{/sha}","trees_url":"https://api.github.com/repos/mumrah/kafka-python/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mumrah/kafka-python/statuses/{sha}","languages_url":"https://api.github.com/repos/mumrah/kafka-python/languages","stargazers_url":"https://api.github.com/repos/mumrah/kafka-python/stargazers","contributors_url":"https://api.github.com/repos/mumrah/kafka-python/contributors","subscribers_url":"https://api.github.com/repos/mumrah/kafka-python/subscribers","subscription_url":"https://api.github.com/repos/mumrah/kafka-python/subscription","commits_url":"https://api.github.com/repos/mumrah/kafka-python/commits{/sha}","git_commits_url":"https://api.github.com/repos/mumrah/kafka-python/git/commits{/sha}","comments_url":"https://api.github.com/repos/mumrah/kafka-python/comments{/number}","issue_comment_url":"https://api.github.com/repos/mumrah/kafka-python/issues/comments{/number}","contents_url":"https://api.github.com/repos/mumrah/kafka-python/contents/{+path}","compare_url":"https://api.github.com/repos/mumrah/kafka-python/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mumrah/kafka-python/merges","archive_url":"https://api.github.com/repos/mumrah/kafka-python/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mumrah/kafka-python/downloads","issues_url":"https://api.github.com/repos/mumrah/kafka-python/issues{/number}","pulls_url":"https://api.github.com/repos/mumrah/kafka-python/pulls{/number}","milestones_url":"https://api.github.com/repos/mumrah/kafka-python/milestones{/number}","notifications_url":"https://api.github.com/repos/mumrah/kafka-python/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mumrah/kafka-python/labels{/name}","releases_url":"https://api.github.com/repos/mumrah/kafka-python/releases{/id}","created_at":"2012-09-24T13:00:26Z","updated_at":"2015-03-30T22:28:56Z","pushed_at":"2015-03-30T22:28:55Z","git_url":"git://github.com/mumrah/kafka-python.git","ssh_url":"git@github.com:mumrah/kafka-python.git","clone_url":"https://github.com/mumrah/kafka-python.git","svn_url":"https://github.com/mumrah/kafka-python","homepage":"","size":3092,"stargazers_count":452,"watchers_count":452,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":212,"mirror_url":null,"open_issues_count":82,"forks":212,"open_issues":82,"watchers":452,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mumrah/kafka-python/pulls/345"},"html":{"href":"https://github.com/mumrah/kafka-python/pull/345"},"issue":{"href":"https://api.github.com/repos/mumrah/kafka-python/issues/345"},"comments":{"href":"https://api.github.com/repos/mumrah/kafka-python/issues/345/comments"},"review_comments":{"href":"https://api.github.com/repos/mumrah/kafka-python/pulls/345/comments"},"review_comment":{"href":"https://api.github.com/repos/mumrah/kafka-python/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mumrah/kafka-python/pulls/345/commits"},"statuses":{"href":"https://api.github.com/repos/mumrah/kafka-python/statuses/29152bec3cab09f59d54efe4559146e104197366"}},"merged":false,"mergeable":false,"mergeable_state":"dirty","merged_by":null,"comments":3,"review_comments":3,"commits":1,"additions":5,"deletions":4,"changed_files":2}}