{"action":"created","issue":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/986","labels_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/986/labels{/name}","comments_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/986/comments","events_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/986/events","html_url":"https://github.com/cockroachdb/cockroach/pull/986","id":75364833,"number":986,"title":"Provide a custom merge operator for MVCCStats","user":{"login":"spencerkimball","id":6147149,"avatar_url":"https://avatars.githubusercontent.com/u/6147149?v=3","gravatar_id":"","url":"https://api.github.com/users/spencerkimball","html_url":"https://github.com/spencerkimball","followers_url":"https://api.github.com/users/spencerkimball/followers","following_url":"https://api.github.com/users/spencerkimball/following{/other_user}","gists_url":"https://api.github.com/users/spencerkimball/gists{/gist_id}","starred_url":"https://api.github.com/users/spencerkimball/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spencerkimball/subscriptions","organizations_url":"https://api.github.com/users/spencerkimball/orgs","repos_url":"https://api.github.com/users/spencerkimball/repos","events_url":"https://api.github.com/users/spencerkimball/events{/privacy}","received_events_url":"https://api.github.com/users/spencerkimball/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/cockroachdb/cockroach/labels/PTAL","name":"PTAL","color":"ededed"}],"state":"open","locked":false,"assignee":{"login":"tschottdorf","id":5076964,"avatar_url":"https://avatars.githubusercontent.com/u/5076964?v=3","gravatar_id":"","url":"https://api.github.com/users/tschottdorf","html_url":"https://github.com/tschottdorf","followers_url":"https://api.github.com/users/tschottdorf/followers","following_url":"https://api.github.com/users/tschottdorf/following{/other_user}","gists_url":"https://api.github.com/users/tschottdorf/gists{/gist_id}","starred_url":"https://api.github.com/users/tschottdorf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tschottdorf/subscriptions","organizations_url":"https://api.github.com/users/tschottdorf/orgs","repos_url":"https://api.github.com/users/tschottdorf/repos","events_url":"https://api.github.com/users/tschottdorf/events{/privacy}","received_events_url":"https://api.github.com/users/tschottdorf/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-05-11T21:31:07Z","updated_at":"2015-05-11T21:37:28Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/cockroachdb/cockroach/pulls/986","html_url":"https://github.com/cockroachdb/cockroach/pull/986","diff_url":"https://github.com/cockroachdb/cockroach/pull/986.diff","patch_url":"https://github.com/cockroachdb/cockroach/pull/986.patch"},"body":"Also added two new stats to track for system keys. The range data iterator is now used with MVCCComputeStats.\r\n\r\nWith custom merge iterator, merge performance seems greatly improved except when reading once every 1000 merge writes. I don't really believe that it should get slower vs. doing 12x the number of single integer value merges.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/comments/101055492","html_url":"https://github.com/cockroachdb/cockroach/pull/986#issuecomment-101055492","issue_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/986","id":101055492,"user":{"login":"spencerkimball","id":6147149,"avatar_url":"https://avatars.githubusercontent.com/u/6147149?v=3","gravatar_id":"","url":"https://api.github.com/users/spencerkimball","html_url":"https://github.com/spencerkimball","followers_url":"https://api.github.com/users/spencerkimball/followers","following_url":"https://api.github.com/users/spencerkimball/following{/other_user}","gists_url":"https://api.github.com/users/spencerkimball/gists{/gist_id}","starred_url":"https://api.github.com/users/spencerkimball/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spencerkimball/subscriptions","organizations_url":"https://api.github.com/users/spencerkimball/orgs","repos_url":"https://api.github.com/users/spencerkimball/repos","events_url":"https://api.github.com/users/spencerkimball/events{/privacy}","received_events_url":"https://api.github.com/users/spencerkimball/received_events","type":"User","site_admin":false},"created_at":"2015-05-11T21:37:28Z","updated_at":"2015-05-11T21:37:28Z","body":"`benchmark                           old ns/op     new ns/op     delta\r\nBenchmarkMVCCStatsMerge1For1        9840579       7039319       -28.47%\r\nBenchmarkMVCCStatsMerge10For1       2105464       719971        -65.80%\r\nBenchmarkMVCCStatsMerge100For1      239554        145619        -39.21%\r\nBenchmarkMVCCStatsMerge1000For1     103913        149536        +43.90%\r\n\r\nbenchmark                           old MB/s     new MB/s     speedup\r\nBenchmarkMVCCStatsMerge1For1        0.01         0.02         2.00x\r\nBenchmarkMVCCStatsMerge10For1       0.05         0.18         3.60x\r\nBenchmarkMVCCStatsMerge100For1      0.47         0.88         1.87x\r\nBenchmarkMVCCStatsMerge1000For1     1.08         0.86         0.80x\r\n`"}}