{"action":"created","issue":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/13829","repository_url":"https://api.github.com/repos/cockroachdb/cockroach","labels_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/13829/labels{/name}","comments_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/13829/comments","events_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/13829/events","html_url":"https://github.com/cockroachdb/cockroach/issues/13829","id":210618040,"node_id":"MDU6SXNzdWUyMTA2MTgwNDA=","number":13829,"title":"distsql: the hashRouter should be zero-copy in common cases","user":{"login":"andreimatei","id":377201,"node_id":"MDQ6VXNlcjM3NzIwMQ==","avatar_url":"https://avatars1.githubusercontent.com/u/377201?v=4","gravatar_id":"","url":"https://api.github.com/users/andreimatei","html_url":"https://github.com/andreimatei","followers_url":"https://api.github.com/users/andreimatei/followers","following_url":"https://api.github.com/users/andreimatei/following{/other_user}","gists_url":"https://api.github.com/users/andreimatei/gists{/gist_id}","starred_url":"https://api.github.com/users/andreimatei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andreimatei/subscriptions","organizations_url":"https://api.github.com/users/andreimatei/orgs","repos_url":"https://api.github.com/users/andreimatei/repos","events_url":"https://api.github.com/users/andreimatei/events{/privacy}","received_events_url":"https://api.github.com/users/andreimatei/received_events","type":"User","site_admin":false},"labels":[{"id":912869960,"node_id":"MDU6TGFiZWw5MTI4Njk5NjA=","url":"https://api.github.com/repos/cockroachdb/cockroach/labels/A-sql-execution","name":"A-sql-execution","color":"22aa88","default":false},{"id":406290612,"node_id":"MDU6TGFiZWw0MDYyOTA2MTI=","url":"https://api.github.com/repos/cockroachdb/cockroach/labels/C-performance","name":"C-performance","color":"c5def5","default":false},{"id":126659197,"node_id":"MDU6TGFiZWwxMjY2NTkxOTc=","url":"https://api.github.com/repos/cockroachdb/cockroach/labels/help%20wanted","name":"help wanted","color":"3dd3ba","default":true}],"state":"open","locked":false,"assignee":{"login":"andreimatei","id":377201,"node_id":"MDQ6VXNlcjM3NzIwMQ==","avatar_url":"https://avatars1.githubusercontent.com/u/377201?v=4","gravatar_id":"","url":"https://api.github.com/users/andreimatei","html_url":"https://github.com/andreimatei","followers_url":"https://api.github.com/users/andreimatei/followers","following_url":"https://api.github.com/users/andreimatei/following{/other_user}","gists_url":"https://api.github.com/users/andreimatei/gists{/gist_id}","starred_url":"https://api.github.com/users/andreimatei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andreimatei/subscriptions","organizations_url":"https://api.github.com/users/andreimatei/orgs","repos_url":"https://api.github.com/users/andreimatei/repos","events_url":"https://api.github.com/users/andreimatei/events{/privacy}","received_events_url":"https://api.github.com/users/andreimatei/received_events","type":"User","site_admin":false},"assignees":[{"login":"andreimatei","id":377201,"node_id":"MDQ6VXNlcjM3NzIwMQ==","avatar_url":"https://avatars1.githubusercontent.com/u/377201?v=4","gravatar_id":"","url":"https://api.github.com/users/andreimatei","html_url":"https://github.com/andreimatei","followers_url":"https://api.github.com/users/andreimatei/followers","following_url":"https://api.github.com/users/andreimatei/following{/other_user}","gists_url":"https://api.github.com/users/andreimatei/gists{/gist_id}","starred_url":"https://api.github.com/users/andreimatei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andreimatei/subscriptions","organizations_url":"https://api.github.com/users/andreimatei/orgs","repos_url":"https://api.github.com/users/andreimatei/repos","events_url":"https://api.github.com/users/andreimatei/events{/privacy}","received_events_url":"https://api.github.com/users/andreimatei/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/cockroachdb/cockroach/milestones/3","html_url":"https://github.com/cockroachdb/cockroach/milestone/3","labels_url":"https://api.github.com/repos/cockroachdb/cockroach/milestones/3/labels","id":1298443,"node_id":"MDk6TWlsZXN0b25lMTI5ODQ0Mw==","number":3,"title":"Later","description":"","creator":{"login":"BramGruneir","id":1614265,"node_id":"MDQ6VXNlcjE2MTQyNjU=","avatar_url":"https://avatars1.githubusercontent.com/u/1614265?v=4","gravatar_id":"","url":"https://api.github.com/users/BramGruneir","html_url":"https://github.com/BramGruneir","followers_url":"https://api.github.com/users/BramGruneir/followers","following_url":"https://api.github.com/users/BramGruneir/following{/other_user}","gists_url":"https://api.github.com/users/BramGruneir/gists{/gist_id}","starred_url":"https://api.github.com/users/BramGruneir/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BramGruneir/subscriptions","organizations_url":"https://api.github.com/users/BramGruneir/orgs","repos_url":"https://api.github.com/users/BramGruneir/repos","events_url":"https://api.github.com/users/BramGruneir/events{/privacy}","received_events_url":"https://api.github.com/users/BramGruneir/received_events","type":"User","site_admin":false},"open_issues":471,"closed_issues":327,"state":"open","created_at":"2015-09-09T21:24:17Z","updated_at":"2018-08-25T06:17:18Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2017-02-27T21:51:48Z","updated_at":"2018-08-25T07:11:19Z","closed_at":null,"author_association":"MEMBER","body":"The `hashRouter` needs to hash rows consistently across nodes. It does this by re-encoding rows with a standard encoding (decided statically - currently `DatumEncoding_ASCENDING_KEY`), copying the recoded values to a byte buffer, and hashing the resulting byte stream.\r\n\r\nThe planning process should choose an encoding that minimizes the data to be recoded (so, the hash encoding should depend on the query), and also the `hashRouter` should not make copies of the data in case the desired encoding matches.\r\n"},"comment":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/comments/415947230","html_url":"https://github.com/cockroachdb/cockroach/issues/13829#issuecomment-415947230","issue_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/13829","id":415947230,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNTk0NzIzMA==","user":{"login":"andy-kimball","id":32096062,"node_id":"MDQ6VXNlcjMyMDk2MDYy","avatar_url":"https://avatars0.githubusercontent.com/u/32096062?v=4","gravatar_id":"","url":"https://api.github.com/users/andy-kimball","html_url":"https://github.com/andy-kimball","followers_url":"https://api.github.com/users/andy-kimball/followers","following_url":"https://api.github.com/users/andy-kimball/following{/other_user}","gists_url":"https://api.github.com/users/andy-kimball/gists{/gist_id}","starred_url":"https://api.github.com/users/andy-kimball/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andy-kimball/subscriptions","organizations_url":"https://api.github.com/users/andy-kimball/orgs","repos_url":"https://api.github.com/users/andy-kimball/repos","events_url":"https://api.github.com/users/andy-kimball/events{/privacy}","received_events_url":"https://api.github.com/users/andy-kimball/received_events","type":"User","site_admin":false},"created_at":"2018-08-25T07:11:19Z","updated_at":"2018-08-25T07:11:19Z","author_association":"CONTRIBUTOR","body":"This is about DistSQL planning rather than logical SQL planning. @jordanlewis, I think we need to keep the labels separate for those two cases until we (eventually) fold DistSQL planning into the cost-based optimizer."}}
{"actor":{"display_login":"andy-kimball"}}