GitHub PullRequestReviewCommentEvent at 2014-10-22 13:11:14
Repository: graphite-cyanite
Actor: sgran
Payload: {"action":"created","comment":{"url":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/comments/19211797","id":19211797,"diff_hunk":"@@ -83,11 +87,33 @@ def find_nodes(self, query):\n                 yield BranchNode(path['path'])\n \n     def fetch_multi(self, nodes, start_time, end_time):\n+        def chunk(nodelist, length):\n+            tmp = []\n+            r = 0\n+            for f in nodelist:\n+                if r + 6 + len(str(f)) > length:\n+                    yield tmp\n+                    tmp = []","path":"cyanite.py","position":33,"original_position":33,"commit_id":"41c33df8e15d511cc777dedd30d64489be60da11","original_commit_id":"41c33df8e15d511cc777dedd30d64489be60da11","user":{"login":"sgran","id":1583277,"avatar_url":"https://avatars.githubusercontent.com/u/1583277?v=2","gravatar_id":"","url":"https://api.github.com/users/sgran","html_url":"https://github.com/sgran","followers_url":"https://api.github.com/users/sgran/followers","following_url":"https://api.github.com/users/sgran/following{/other_user}","gists_url":"https://api.github.com/users/sgran/gists{/gist_id}","starred_url":"https://api.github.com/users/sgran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sgran/subscriptions","organizations_url":"https://api.github.com/users/sgran/orgs","repos_url":"https://api.github.com/users/sgran/repos","events_url":"https://api.github.com/users/sgran/events{/privacy}","received_events_url":"https://api.github.com/users/sgran/received_events","type":"User","site_admin":false},"body":"oh, damn, yes, you are correct, it's getting dropped.  Your solution also has a problem in that it stops iterating after we've breached the maximum line length.  I'll take a look,","created_at":"2014-10-22T13:11:14Z","updated_at":"2014-10-22T13:11:14Z","html_url":"https://github.com/brutasse/graphite-cyanite/pull/4#discussion_r19211797","pull_request_url":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4","_links":{"self":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/comments/19211797"},"html":{"href":"https://github.com/brutasse/graphite-cyanite/pull/4#discussion_r19211797"},"pull_request":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4"}}},"pull_request":{"url":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4","id":23148067,"html_url":"https://github.com/brutasse/graphite-cyanite/pull/4","diff_url":"https://github.com/brutasse/graphite-cyanite/pull/4.diff","patch_url":"https://github.com/brutasse/graphite-cyanite/pull/4.patch","issue_url":"https://api.github.com/repos/brutasse/graphite-cyanite/issues/4","number":4,"state":"open","locked":false,"title":"chunk requests to avoid overrunning URL length limits","user":{"login":"sgran","id":1583277,"avatar_url":"https://avatars.githubusercontent.com/u/1583277?v=2","gravatar_id":"","url":"https://api.github.com/users/sgran","html_url":"https://github.com/sgran","followers_url":"https://api.github.com/users/sgran/followers","following_url":"https://api.github.com/users/sgran/following{/other_user}","gists_url":"https://api.github.com/users/sgran/gists{/gist_id}","starred_url":"https://api.github.com/users/sgran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sgran/subscriptions","organizations_url":"https://api.github.com/users/sgran/orgs","repos_url":"https://api.github.com/users/sgran/repos","events_url":"https://api.github.com/users/sgran/events{/privacy}","received_events_url":"https://api.github.com/users/sgran/received_events","type":"User","site_admin":false},"body":"With many nodes in a series, we were running into jetty URL length limits, even when pushing the limit to ridiculous lengths like 32k.  This patch chunks the request up into multiple requests, limiting the (configurable) length.  It defaults to just under 8k, which should work with most web servers.\r\n\r\nSigned-off-by: Stephen Gran <stephen.gran@piksel.com>","created_at":"2014-10-22T10:34:43Z","updated_at":"2014-10-22T13:11:14Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c377d25954590b52385cf700dbc1f33a77571a7a","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4/commits","review_comments_url":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4/comments","review_comment_url":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/comments/{number}","comments_url":"https://api.github.com/repos/brutasse/graphite-cyanite/issues/4/comments","statuses_url":"https://api.github.com/repos/brutasse/graphite-cyanite/statuses/41c33df8e15d511cc777dedd30d64489be60da11","head":{"label":"sgran:master","ref":"master","sha":"41c33df8e15d511cc777dedd30d64489be60da11","user":{"login":"sgran","id":1583277,"avatar_url":"https://avatars.githubusercontent.com/u/1583277?v=2","gravatar_id":"","url":"https://api.github.com/users/sgran","html_url":"https://github.com/sgran","followers_url":"https://api.github.com/users/sgran/followers","following_url":"https://api.github.com/users/sgran/following{/other_user}","gists_url":"https://api.github.com/users/sgran/gists{/gist_id}","starred_url":"https://api.github.com/users/sgran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sgran/subscriptions","organizations_url":"https://api.github.com/users/sgran/orgs","repos_url":"https://api.github.com/users/sgran/repos","events_url":"https://api.github.com/users/sgran/events{/privacy}","received_events_url":"https://api.github.com/users/sgran/received_events","type":"User","site_admin":false},"repo":{"id":25575573,"name":"graphite-cyanite","full_name":"sgran/graphite-cyanite","owner":{"login":"sgran","id":1583277,"avatar_url":"https://avatars.githubusercontent.com/u/1583277?v=2","gravatar_id":"","url":"https://api.github.com/users/sgran","html_url":"https://github.com/sgran","followers_url":"https://api.github.com/users/sgran/followers","following_url":"https://api.github.com/users/sgran/following{/other_user}","gists_url":"https://api.github.com/users/sgran/gists{/gist_id}","starred_url":"https://api.github.com/users/sgran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sgran/subscriptions","organizations_url":"https://api.github.com/users/sgran/orgs","repos_url":"https://api.github.com/users/sgran/repos","events_url":"https://api.github.com/users/sgran/events{/privacy}","received_events_url":"https://api.github.com/users/sgran/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/sgran/graphite-cyanite","description":"A plugin for using graphite-web with the cassandra-based Cyanite storage backend.","fork":true,"url":"https://api.github.com/repos/sgran/graphite-cyanite","forks_url":"https://api.github.com/repos/sgran/graphite-cyanite/forks","keys_url":"https://api.github.com/repos/sgran/graphite-cyanite/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sgran/graphite-cyanite/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sgran/graphite-cyanite/teams","hooks_url":"https://api.github.com/repos/sgran/graphite-cyanite/hooks","issue_events_url":"https://api.github.com/repos/sgran/graphite-cyanite/issues/events{/number}","events_url":"https://api.github.com/repos/sgran/graphite-cyanite/events","assignees_url":"https://api.github.com/repos/sgran/graphite-cyanite/assignees{/user}","branches_url":"https://api.github.com/repos/sgran/graphite-cyanite/branches{/branch}","tags_url":"https://api.github.com/repos/sgran/graphite-cyanite/tags","blobs_url":"https://api.github.com/repos/sgran/graphite-cyanite/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sgran/graphite-cyanite/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sgran/graphite-cyanite/git/refs{/sha}","trees_url":"https://api.github.com/repos/sgran/graphite-cyanite/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sgran/graphite-cyanite/statuses/{sha}","languages_url":"https://api.github.com/repos/sgran/graphite-cyanite/languages","stargazers_url":"https://api.github.com/repos/sgran/graphite-cyanite/stargazers","contributors_url":"https://api.github.com/repos/sgran/graphite-cyanite/contributors","subscribers_url":"https://api.github.com/repos/sgran/graphite-cyanite/subscribers","subscription_url":"https://api.github.com/repos/sgran/graphite-cyanite/subscription","commits_url":"https://api.github.com/repos/sgran/graphite-cyanite/commits{/sha}","git_commits_url":"https://api.github.com/repos/sgran/graphite-cyanite/git/commits{/sha}","comments_url":"https://api.github.com/repos/sgran/graphite-cyanite/comments{/number}","issue_comment_url":"https://api.github.com/repos/sgran/graphite-cyanite/issues/comments/{number}","contents_url":"https://api.github.com/repos/sgran/graphite-cyanite/contents/{+path}","compare_url":"https://api.github.com/repos/sgran/graphite-cyanite/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sgran/graphite-cyanite/merges","archive_url":"https://api.github.com/repos/sgran/graphite-cyanite/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sgran/graphite-cyanite/downloads","issues_url":"https://api.github.com/repos/sgran/graphite-cyanite/issues{/number}","pulls_url":"https://api.github.com/repos/sgran/graphite-cyanite/pulls{/number}","milestones_url":"https://api.github.com/repos/sgran/graphite-cyanite/milestones{/number}","notifications_url":"https://api.github.com/repos/sgran/graphite-cyanite/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sgran/graphite-cyanite/labels{/name}","releases_url":"https://api.github.com/repos/sgran/graphite-cyanite/releases{/id}","created_at":"2014-10-22T10:27:09Z","updated_at":"2014-10-22T10:32:43Z","pushed_at":"2014-10-22T11:39:25Z","git_url":"git://github.com/sgran/graphite-cyanite.git","ssh_url":"git@github.com:sgran/graphite-cyanite.git","clone_url":"https://github.com/sgran/graphite-cyanite.git","svn_url":"https://github.com/sgran/graphite-cyanite","homepage":null,"size":107,"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":"brutasse:master","ref":"master","sha":"bf870922006f215f148cee6bca4507b9d0513cc3","user":{"login":"brutasse","id":31269,"avatar_url":"https://avatars.githubusercontent.com/u/31269?v=2","gravatar_id":"","url":"https://api.github.com/users/brutasse","html_url":"https://github.com/brutasse","followers_url":"https://api.github.com/users/brutasse/followers","following_url":"https://api.github.com/users/brutasse/following{/other_user}","gists_url":"https://api.github.com/users/brutasse/gists{/gist_id}","starred_url":"https://api.github.com/users/brutasse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brutasse/subscriptions","organizations_url":"https://api.github.com/users/brutasse/orgs","repos_url":"https://api.github.com/users/brutasse/repos","events_url":"https://api.github.com/users/brutasse/events{/privacy}","received_events_url":"https://api.github.com/users/brutasse/received_events","type":"User","site_admin":false},"repo":{"id":14955329,"name":"graphite-cyanite","full_name":"brutasse/graphite-cyanite","owner":{"login":"brutasse","id":31269,"avatar_url":"https://avatars.githubusercontent.com/u/31269?v=2","gravatar_id":"","url":"https://api.github.com/users/brutasse","html_url":"https://github.com/brutasse","followers_url":"https://api.github.com/users/brutasse/followers","following_url":"https://api.github.com/users/brutasse/following{/other_user}","gists_url":"https://api.github.com/users/brutasse/gists{/gist_id}","starred_url":"https://api.github.com/users/brutasse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brutasse/subscriptions","organizations_url":"https://api.github.com/users/brutasse/orgs","repos_url":"https://api.github.com/users/brutasse/repos","events_url":"https://api.github.com/users/brutasse/events{/privacy}","received_events_url":"https://api.github.com/users/brutasse/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/brutasse/graphite-cyanite","description":"A plugin for using graphite-web with the cassandra-based Cyanite storage backend.","fork":false,"url":"https://api.github.com/repos/brutasse/graphite-cyanite","forks_url":"https://api.github.com/repos/brutasse/graphite-cyanite/forks","keys_url":"https://api.github.com/repos/brutasse/graphite-cyanite/keys{/key_id}","collaborators_url":"https://api.github.com/repos/brutasse/graphite-cyanite/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/brutasse/graphite-cyanite/teams","hooks_url":"https://api.github.com/repos/brutasse/graphite-cyanite/hooks","issue_events_url":"https://api.github.com/repos/brutasse/graphite-cyanite/issues/events{/number}","events_url":"https://api.github.com/repos/brutasse/graphite-cyanite/events","assignees_url":"https://api.github.com/repos/brutasse/graphite-cyanite/assignees{/user}","branches_url":"https://api.github.com/repos/brutasse/graphite-cyanite/branches{/branch}","tags_url":"https://api.github.com/repos/brutasse/graphite-cyanite/tags","blobs_url":"https://api.github.com/repos/brutasse/graphite-cyanite/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/brutasse/graphite-cyanite/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/brutasse/graphite-cyanite/git/refs{/sha}","trees_url":"https://api.github.com/repos/brutasse/graphite-cyanite/git/trees{/sha}","statuses_url":"https://api.github.com/repos/brutasse/graphite-cyanite/statuses/{sha}","languages_url":"https://api.github.com/repos/brutasse/graphite-cyanite/languages","stargazers_url":"https://api.github.com/repos/brutasse/graphite-cyanite/stargazers","contributors_url":"https://api.github.com/repos/brutasse/graphite-cyanite/contributors","subscribers_url":"https://api.github.com/repos/brutasse/graphite-cyanite/subscribers","subscription_url":"https://api.github.com/repos/brutasse/graphite-cyanite/subscription","commits_url":"https://api.github.com/repos/brutasse/graphite-cyanite/commits{/sha}","git_commits_url":"https://api.github.com/repos/brutasse/graphite-cyanite/git/commits{/sha}","comments_url":"https://api.github.com/repos/brutasse/graphite-cyanite/comments{/number}","issue_comment_url":"https://api.github.com/repos/brutasse/graphite-cyanite/issues/comments/{number}","contents_url":"https://api.github.com/repos/brutasse/graphite-cyanite/contents/{+path}","compare_url":"https://api.github.com/repos/brutasse/graphite-cyanite/compare/{base}...{head}","merges_url":"https://api.github.com/repos/brutasse/graphite-cyanite/merges","archive_url":"https://api.github.com/repos/brutasse/graphite-cyanite/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/brutasse/graphite-cyanite/downloads","issues_url":"https://api.github.com/repos/brutasse/graphite-cyanite/issues{/number}","pulls_url":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls{/number}","milestones_url":"https://api.github.com/repos/brutasse/graphite-cyanite/milestones{/number}","notifications_url":"https://api.github.com/repos/brutasse/graphite-cyanite/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/brutasse/graphite-cyanite/labels{/name}","releases_url":"https://api.github.com/repos/brutasse/graphite-cyanite/releases{/id}","created_at":"2013-12-05T14:14:09Z","updated_at":"2014-10-20T14:38:56Z","pushed_at":"2014-05-15T09:27:45Z","git_url":"git://github.com/brutasse/graphite-cyanite.git","ssh_url":"git@github.com:brutasse/graphite-cyanite.git","clone_url":"https://github.com/brutasse/graphite-cyanite.git","svn_url":"https://github.com/brutasse/graphite-cyanite","homepage":null,"size":331,"stargazers_count":41,"watchers_count":41,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":1,"forks":6,"open_issues":1,"watchers":41,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4"},"html":{"href":"https://github.com/brutasse/graphite-cyanite/pull/4"},"issue":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/issues/4"},"comments":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/issues/4/comments"},"review_comments":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4/comments"},"review_comment":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/pulls/4/commits"},"statuses":{"href":"https://api.github.com/repos/brutasse/graphite-cyanite/statuses/41c33df8e15d511cc777dedd30d64489be60da11"}}}}