{"action":"created","comment":{"url":"https://api.github.com/repos/measurement-factory/squid/pulls/comments/230732312","pull_request_review_id":171532691,"id":230732312,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIzMDczMjMxMg==","diff_hunk":"@@ -572,58 +743,139 @@ PeerSelector::selectPinned()\n void\n PeerSelector::selectSomeNeighbor()\n {\n-    CachePeer *p;\n-    hier_code code = HIER_NONE;\n-    assert(entry->ping_status == PING_NONE);\n-\n-    if (direct == DIRECT_YES) {\n-        entry->ping_status = PING_DONE;\n-        return;\n-    }\n+    assert(entry);\n+    assert(direct != DIRECT_YES);\n \n #if USE_CACHE_DIGESTS\n-    if ((p = neighborsDigestSelect(request))) {\n-        if (neighborType(p, request->url) == PEER_PARENT)\n-            code = CD_PARENT_HIT;\n-        else\n-            code = CD_SIBLING_HIT;\n-    } else\n+    neighborsDigestSelect(this, request.getRaw());\n #endif\n-        if ((p = netdbClosestParent(request))) {\n-            code = CLOSEST_PARENT;\n-        } else if (peerSelectIcpPing(request, direct, entry)) {\n-            debugs(44, 3, \"Doing ICP pings\");\n-            ping.start = current_time;\n-            ping.n_sent = neighborsUdpPing(request,\n-                                           entry,\n-                                           HandlePingReply,\n-                                           this,\n-                                           &ping.n_replies_expected,\n-                                           &ping.timeout);\n-\n-            if (ping.n_sent == 0)\n-                debugs(44, DBG_CRITICAL, \"WARNING: neighborsUdpPing returned 0\");\n-            debugs(44, 3, ping.n_replies_expected <<\n-                   \" ICP replies expected, RTT \" << ping.timeout <<\n-                   \" msec\");\n-\n-            if (ping.n_replies_expected > 0) {\n-                entry->ping_status = PING_WAITING;\n-                eventAdd(\"PeerSelector::HandlePingTimeout\",\n-                         HandlePingTimeout,\n-                         this,\n-                         0.001 * ping.timeout,\n-                         0);\n-                return;\n-            }\n+    netdbClosestParent(this, request.getRaw());\n+\n+    planNextStep(DoStartPing, \"consider pinging\");\n+}\n+\n+static void\n+checkNeighborToPingAccessWrapper(allow_t answer, void *data)","path":"src/peer_select.cc","position":831,"original_position":831,"commit_id":"45cd03a67267c71bcea420245c6fdc98a389dcb3","original_commit_id":"45cd03a67267c71bcea420245c6fdc98a389dcb3","user":{"login":"chtsanti","id":30215174,"node_id":"MDQ6VXNlcjMwMjE1MTc0","avatar_url":"https://avatars2.githubusercontent.com/u/30215174?v=4","gravatar_id":"","url":"https://api.github.com/users/chtsanti","html_url":"https://github.com/chtsanti","followers_url":"https://api.github.com/users/chtsanti/followers","following_url":"https://api.github.com/users/chtsanti/following{/other_user}","gists_url":"https://api.github.com/users/chtsanti/gists{/gist_id}","starred_url":"https://api.github.com/users/chtsanti/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chtsanti/subscriptions","organizations_url":"https://api.github.com/users/chtsanti/orgs","repos_url":"https://api.github.com/users/chtsanti/repos","events_url":"https://api.github.com/users/chtsanti/events{/privacy}","received_events_url":"https://api.github.com/users/chtsanti/received_events","type":"User","site_admin":false},"body":"It is an ACLCB callback. it is defined as:\r\n  typedef void ACLCB(allow_t, void *);\r\n","created_at":"2018-11-05T12:29:28Z","updated_at":"2018-11-05T12:29:29Z","html_url":"https://github.com/measurement-factory/squid/pull/2#discussion_r230732312","pull_request_url":"https://api.github.com/repos/measurement-factory/squid/pulls/2","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/measurement-factory/squid/pulls/comments/230732312"},"html":{"href":"https://github.com/measurement-factory/squid/pull/2#discussion_r230732312"},"pull_request":{"href":"https://api.github.com/repos/measurement-factory/squid/pulls/2"}},"in_reply_to_id":229883429},"pull_request":{"url":"https://api.github.com/repos/measurement-factory/squid/pulls/2","id":171193502,"node_id":"MDExOlB1bGxSZXF1ZXN0MTcxMTkzNTAy","html_url":"https://github.com/measurement-factory/squid/pull/2","diff_url":"https://github.com/measurement-factory/squid/pull/2.diff","patch_url":"https://github.com/measurement-factory/squid/pull/2.patch","issue_url":"https://api.github.com/repos/measurement-factory/squid/issues/2","number":2,"state":"open","locked":false,"title":"Support slow cache_peer_access ACLs","user":{"login":"rousskov","id":1084944,"node_id":"MDQ6VXNlcjEwODQ5NDQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1084944?v=4","gravatar_id":"","url":"https://api.github.com/users/rousskov","html_url":"https://github.com/rousskov","followers_url":"https://api.github.com/users/rousskov/followers","following_url":"https://api.github.com/users/rousskov/following{/other_user}","gists_url":"https://api.github.com/users/rousskov/gists{/gist_id}","starred_url":"https://api.github.com/users/rousskov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rousskov/subscriptions","organizations_url":"https://api.github.com/users/rousskov/orgs","repos_url":"https://api.github.com/users/rousskov/repos","events_url":"https://api.github.com/users/rousskov/events{/privacy}","received_events_url":"https://api.github.com/users/rousskov/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-02-24T19:29:00Z","updated_at":"2018-11-05T12:29:29Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/measurement-factory/squid/pulls/2/commits","review_comments_url":"https://api.github.com/repos/measurement-factory/squid/pulls/2/comments","review_comment_url":"https://api.github.com/repos/measurement-factory/squid/pulls/comments{/number}","comments_url":"https://api.github.com/repos/measurement-factory/squid/issues/2/comments","statuses_url":"https://api.github.com/repos/measurement-factory/squid/statuses/45cd03a67267c71bcea420245c6fdc98a389dcb3","head":{"label":"measurement-factory:SQUID-291-Support_slow_cache_peer_access_ACLs","ref":"SQUID-291-Support_slow_cache_peer_access_ACLs","sha":"45cd03a67267c71bcea420245c6fdc98a389dcb3","user":{"login":"measurement-factory","id":5461029,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU0NjEwMjk=","avatar_url":"https://avatars1.githubusercontent.com/u/5461029?v=4","gravatar_id":"","url":"https://api.github.com/users/measurement-factory","html_url":"https://github.com/measurement-factory","followers_url":"https://api.github.com/users/measurement-factory/followers","following_url":"https://api.github.com/users/measurement-factory/following{/other_user}","gists_url":"https://api.github.com/users/measurement-factory/gists{/gist_id}","starred_url":"https://api.github.com/users/measurement-factory/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/measurement-factory/subscriptions","organizations_url":"https://api.github.com/users/measurement-factory/orgs","repos_url":"https://api.github.com/users/measurement-factory/repos","events_url":"https://api.github.com/users/measurement-factory/events{/privacy}","received_events_url":"https://api.github.com/users/measurement-factory/received_events","type":"Organization","site_admin":false},"repo":{"id":97358214,"node_id":"MDEwOlJlcG9zaXRvcnk5NzM1ODIxNA==","name":"squid","full_name":"measurement-factory/squid","private":false,"owner":{"login":"measurement-factory","id":5461029,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU0NjEwMjk=","avatar_url":"https://avatars1.githubusercontent.com/u/5461029?v=4","gravatar_id":"","url":"https://api.github.com/users/measurement-factory","html_url":"https://github.com/measurement-factory","followers_url":"https://api.github.com/users/measurement-factory/followers","following_url":"https://api.github.com/users/measurement-factory/following{/other_user}","gists_url":"https://api.github.com/users/measurement-factory/gists{/gist_id}","starred_url":"https://api.github.com/users/measurement-factory/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/measurement-factory/subscriptions","organizations_url":"https://api.github.com/users/measurement-factory/orgs","repos_url":"https://api.github.com/users/measurement-factory/repos","events_url":"https://api.github.com/users/measurement-factory/events{/privacy}","received_events_url":"https://api.github.com/users/measurement-factory/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/measurement-factory/squid","description":"Squid Web Proxy Cache","fork":true,"url":"https://api.github.com/repos/measurement-factory/squid","forks_url":"https://api.github.com/repos/measurement-factory/squid/forks","keys_url":"https://api.github.com/repos/measurement-factory/squid/keys{/key_id}","collaborators_url":"https://api.github.com/repos/measurement-factory/squid/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/measurement-factory/squid/teams","hooks_url":"https://api.github.com/repos/measurement-factory/squid/hooks","issue_events_url":"https://api.github.com/repos/measurement-factory/squid/issues/events{/number}","events_url":"https://api.github.com/repos/measurement-factory/squid/events","assignees_url":"https://api.github.com/repos/measurement-factory/squid/assignees{/user}","branches_url":"https://api.github.com/repos/measurement-factory/squid/branches{/branch}","tags_url":"https://api.github.com/repos/measurement-factory/squid/tags","blobs_url":"https://api.github.com/repos/measurement-factory/squid/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/measurement-factory/squid/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/measurement-factory/squid/git/refs{/sha}","trees_url":"https://api.github.com/repos/measurement-factory/squid/git/trees{/sha}","statuses_url":"https://api.github.com/repos/measurement-factory/squid/statuses/{sha}","languages_url":"https://api.github.com/repos/measurement-factory/squid/languages","stargazers_url":"https://api.github.com/repos/measurement-factory/squid/stargazers","contributors_url":"https://api.github.com/repos/measurement-factory/squid/contributors","subscribers_url":"https://api.github.com/repos/measurement-factory/squid/subscribers","subscription_url":"https://api.github.com/repos/measurement-factory/squid/subscription","commits_url":"https://api.github.com/repos/measurement-factory/squid/commits{/sha}","git_commits_url":"https://api.github.com/repos/measurement-factory/squid/git/commits{/sha}","comments_url":"https://api.github.com/repos/measurement-factory/squid/comments{/number}","issue_comment_url":"https://api.github.com/repos/measurement-factory/squid/issues/comments{/number}","contents_url":"https://api.github.com/repos/measurement-factory/squid/contents/{+path}","compare_url":"https://api.github.com/repos/measurement-factory/squid/compare/{base}...{head}","merges_url":"https://api.github.com/repos/measurement-factory/squid/merges","archive_url":"https://api.github.com/repos/measurement-factory/squid/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/measurement-factory/squid/downloads","issues_url":"https://api.github.com/repos/measurement-factory/squid/issues{/number}","pulls_url":"https://api.github.com/repos/measurement-factory/squid/pulls{/number}","milestones_url":"https://api.github.com/repos/measurement-factory/squid/milestones{/number}","notifications_url":"https://api.github.com/repos/measurement-factory/squid/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/measurement-factory/squid/labels{/name}","releases_url":"https://api.github.com/repos/measurement-factory/squid/releases{/id}","deployments_url":"https://api.github.com/repos/measurement-factory/squid/deployments","created_at":"2017-07-16T03:46:50Z","updated_at":"2018-10-30T05:56:53Z","pushed_at":"2018-11-05T09:12:37Z","git_url":"git://github.com/measurement-factory/squid.git","ssh_url":"git@github.com:measurement-factory/squid.git","clone_url":"https://github.com/measurement-factory/squid.git","svn_url":"https://github.com/measurement-factory/squid","homepage":"http://www.squid-cache.org/","size":172292,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":13,"license":{"key":"gpl-2.0","name":"GNU General Public License v2.0","spdx_id":"GPL-2.0","url":"https://api.github.com/licenses/gpl-2.0","node_id":"MDc6TGljZW5zZTg="},"forks":0,"open_issues":13,"watchers":0,"default_branch":"master"}},"base":{"label":"measurement-factory:master","ref":"master","sha":"5ef3cbbdf51f78b3f9dbe96b428a64ada0da8324","user":{"login":"measurement-factory","id":5461029,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU0NjEwMjk=","avatar_url":"https://avatars1.githubusercontent.com/u/5461029?v=4","gravatar_id":"","url":"https://api.github.com/users/measurement-factory","html_url":"https://github.com/measurement-factory","followers_url":"https://api.github.com/users/measurement-factory/followers","following_url":"https://api.github.com/users/measurement-factory/following{/other_user}","gists_url":"https://api.github.com/users/measurement-factory/gists{/gist_id}","starred_url":"https://api.github.com/users/measurement-factory/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/measurement-factory/subscriptions","organizations_url":"https://api.github.com/users/measurement-factory/orgs","repos_url":"https://api.github.com/users/measurement-factory/repos","events_url":"https://api.github.com/users/measurement-factory/events{/privacy}","received_events_url":"https://api.github.com/users/measurement-factory/received_events","type":"Organization","site_admin":false},"repo":{"id":97358214,"node_id":"MDEwOlJlcG9zaXRvcnk5NzM1ODIxNA==","name":"squid","full_name":"measurement-factory/squid","private":false,"owner":{"login":"measurement-factory","id":5461029,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU0NjEwMjk=","avatar_url":"https://avatars1.githubusercontent.com/u/5461029?v=4","gravatar_id":"","url":"https://api.github.com/users/measurement-factory","html_url":"https://github.com/measurement-factory","followers_url":"https://api.github.com/users/measurement-factory/followers","following_url":"https://api.github.com/users/measurement-factory/following{/other_user}","gists_url":"https://api.github.com/users/measurement-factory/gists{/gist_id}","starred_url":"https://api.github.com/users/measurement-factory/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/measurement-factory/subscriptions","organizations_url":"https://api.github.com/users/measurement-factory/orgs","repos_url":"https://api.github.com/users/measurement-factory/repos","events_url":"https://api.github.com/users/measurement-factory/events{/privacy}","received_events_url":"https://api.github.com/users/measurement-factory/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/measurement-factory/squid","description":"Squid Web Proxy Cache","fork":true,"url":"https://api.github.com/repos/measurement-factory/squid","forks_url":"https://api.github.com/repos/measurement-factory/squid/forks","keys_url":"https://api.github.com/repos/measurement-factory/squid/keys{/key_id}","collaborators_url":"https://api.github.com/repos/measurement-factory/squid/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/measurement-factory/squid/teams","hooks_url":"https://api.github.com/repos/measurement-factory/squid/hooks","issue_events_url":"https://api.github.com/repos/measurement-factory/squid/issues/events{/number}","events_url":"https://api.github.com/repos/measurement-factory/squid/events","assignees_url":"https://api.github.com/repos/measurement-factory/squid/assignees{/user}","branches_url":"https://api.github.com/repos/measurement-factory/squid/branches{/branch}","tags_url":"https://api.github.com/repos/measurement-factory/squid/tags","blobs_url":"https://api.github.com/repos/measurement-factory/squid/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/measurement-factory/squid/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/measurement-factory/squid/git/refs{/sha}","trees_url":"https://api.github.com/repos/measurement-factory/squid/git/trees{/sha}","statuses_url":"https://api.github.com/repos/measurement-factory/squid/statuses/{sha}","languages_url":"https://api.github.com/repos/measurement-factory/squid/languages","stargazers_url":"https://api.github.com/repos/measurement-factory/squid/stargazers","contributors_url":"https://api.github.com/repos/measurement-factory/squid/contributors","subscribers_url":"https://api.github.com/repos/measurement-factory/squid/subscribers","subscription_url":"https://api.github.com/repos/measurement-factory/squid/subscription","commits_url":"https://api.github.com/repos/measurement-factory/squid/commits{/sha}","git_commits_url":"https://api.github.com/repos/measurement-factory/squid/git/commits{/sha}","comments_url":"https://api.github.com/repos/measurement-factory/squid/comments{/number}","issue_comment_url":"https://api.github.com/repos/measurement-factory/squid/issues/comments{/number}","contents_url":"https://api.github.com/repos/measurement-factory/squid/contents/{+path}","compare_url":"https://api.github.com/repos/measurement-factory/squid/compare/{base}...{head}","merges_url":"https://api.github.com/repos/measurement-factory/squid/merges","archive_url":"https://api.github.com/repos/measurement-factory/squid/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/measurement-factory/squid/downloads","issues_url":"https://api.github.com/repos/measurement-factory/squid/issues{/number}","pulls_url":"https://api.github.com/repos/measurement-factory/squid/pulls{/number}","milestones_url":"https://api.github.com/repos/measurement-factory/squid/milestones{/number}","notifications_url":"https://api.github.com/repos/measurement-factory/squid/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/measurement-factory/squid/labels{/name}","releases_url":"https://api.github.com/repos/measurement-factory/squid/releases{/id}","deployments_url":"https://api.github.com/repos/measurement-factory/squid/deployments","created_at":"2017-07-16T03:46:50Z","updated_at":"2018-10-30T05:56:53Z","pushed_at":"2018-11-05T09:12:37Z","git_url":"git://github.com/measurement-factory/squid.git","ssh_url":"git@github.com:measurement-factory/squid.git","clone_url":"https://github.com/measurement-factory/squid.git","svn_url":"https://github.com/measurement-factory/squid","homepage":"http://www.squid-cache.org/","size":172292,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":13,"license":{"key":"gpl-2.0","name":"GNU General Public License v2.0","spdx_id":"GPL-2.0","url":"https://api.github.com/licenses/gpl-2.0","node_id":"MDc6TGljZW5zZTg="},"forks":0,"open_issues":13,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/measurement-factory/squid/pulls/2"},"html":{"href":"https://github.com/measurement-factory/squid/pull/2"},"issue":{"href":"https://api.github.com/repos/measurement-factory/squid/issues/2"},"comments":{"href":"https://api.github.com/repos/measurement-factory/squid/issues/2/comments"},"review_comments":{"href":"https://api.github.com/repos/measurement-factory/squid/pulls/2/comments"},"review_comment":{"href":"https://api.github.com/repos/measurement-factory/squid/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/measurement-factory/squid/pulls/2/commits"},"statuses":{"href":"https://api.github.com/repos/measurement-factory/squid/statuses/45cd03a67267c71bcea420245c6fdc98a389dcb3"}},"author_association":"NONE"}}
{"actor":{"display_login":"chtsanti"}}