{"push_id":2955426113,"size":22,"distinct_size":2,"ref":"refs/heads/storagepb","head":"fe919bbd598e06284efcb8e3fa401f09618f3c49","before":"566b147b1a1b906085f75bb0ed2c56842b3eb2e8","commits":[{"sha":"4290f0d1458956015468455dcaddb35c2da77fb7","author":{"name":"Jordan Lewis","email":"d6a9c9ceebab0a60eea8692fb0aa04be2d19ee67@gmail.com"},"message":"kv,storage: annotate context cancellation errors\n\nPreviously, errors retrieved from cancelled context were frequently\npassed up the stack without annotation, making it very difficult to\nunderstand later what cancelled a context.\n\nThis commit annotates several potential context cancellation errors that\ncan occur on the synchronous query path with more context (no pun\nintended).\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/4290f0d1458956015468455dcaddb35c2da77fb7"},{"sha":"2692aba1b3f1a3f33cd1d9e61a3102289b4e7e12","author":{"name":"Ridwan Sharif","email":"6a050273963a48d1fca66b1e2cc60bdfaaa4660d@cockroachlabs.com"},"message":"sql, config: make zone configs cascade\n\nVery much a WIP. Modifies the `ZoneConfig` struct to\nmake fields optional now. If fields are not set, they\nare looked for in the heirarchy. Refer to the RFC for\nmore details.\n\nIssue: #28901\nImplements most of RFC: #30426\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/2692aba1b3f1a3f33cd1d9e61a3102289b4e7e12"},{"sha":"b49c531ffb3274c304e952b4916fe562f063a11c","author":{"name":"Ridwan Sharif","email":"6a050273963a48d1fca66b1e2cc60bdfaaa4660d@cockroachlabs.com"},"message":"sql, config: set default values for constraints\n\nModify the Zone config structure so that the inheritance flag\nfor constraints and lease preferences are off by default for\nbackwards compatibility purposes\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/b49c531ffb3274c304e952b4916fe562f063a11c"},{"sha":"bcc52bce10743e66bbf3ac47e1908ba3d95ec33b","author":{"name":"Jordan Lewis","email":"d6a9c9ceebab0a60eea8692fb0aa04be2d19ee67@gmail.com"},"message":"*: move RowFetcher and co to a new package, row\n\nThis was purely mechanical renaming. The purpose is to lessen the width\nof the sqlbase package, which is imported in many places.\n\nThe new package now depends on sqlbase, but far fewer packages consume\nit than sqlbase.\n\nMajor changes:\n\nRowFetcher -> row.Fetcher\nRowUpdater -> row.Updater\nRowDeleter -> row.Deleter\n\nFK and cascade stuff -> row package\n\nThe only unfortunate thing here is that the FK enums all begin with\n`row` now (e.g. `row.CheckDeletes`). It would be better if those got a\ndifferent package name, like `fk`, but I'll leave that refactor for\nanother time.\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/bcc52bce10743e66bbf3ac47e1908ba3d95ec33b"},{"sha":"755d9339c1b3a2e18c508bf203fc29dc0fbe0783","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #31292\n\n31292: *: move RowFetcher and co to a new package, row r=jordanlewis a=jordanlewis\n\nThis was purely mechanical renaming. The purpose is to lessen the width\r\nof the sqlbase package, which is imported in many places.\r\n\r\nThe new package now depends on sqlbase, but far fewer packages consume\r\nit than sqlbase.\r\n\r\nMajor changes:\r\n\r\nRowFetcher -> row.Fetcher\r\nRowUpdater -> row.Updater\r\nRowDeleter -> row.Deleter\r\n\r\nFK and cascade stuff -> row package\r\n\r\nThe only unfortunate thing here is that the FK enums all begin with\r\n`row` now (e.g. `row.CheckDeletes`). It would be better if those got a\r\ndifferent package name, like `fk`, but I'll leave that refactor for\r\nanother time.\r\n\r\nSomewhat related to #30001.\r\n\r\ncc @dt, @benesch \r\n\r\nRelease note: None\n\nCo-authored-by: Jordan Lewis <jordanthelewis@gmail.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/755d9339c1b3a2e18c508bf203fc29dc0fbe0783"},{"sha":"f010d8c7735dc038ae24caa81ba0b90e15788c24","author":{"name":"Raphael 'kena' Poss","email":"ffa74aa72f5ed5e720c03212554d1e38d8a2905e@cockroachlabs.com"},"message":"deps: bump go-libedit\n\nRelease note (build change): CockroachDB can now be built from source\non macOS 10.14 (Mojave).","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/f010d8c7735dc038ae24caa81ba0b90e15788c24"},{"sha":"d93b900ad48ef17a248d81a08b156d2cf316c4d7","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #31306\n\n31306: deps: bump go-libedit r=knz a=knz\n\nFixes #30765.\r\n\r\nRelease note (build change): CockroachDB can now be built from source\r\non macOS 10.14 (Mojave).\n\nCo-authored-by: Raphael 'kena' Poss <knz@cockroachlabs.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/d93b900ad48ef17a248d81a08b156d2cf316c4d7"},{"sha":"33e2ecf039e02152448d8dd062b77afc637e5116","author":{"name":"Peter Mattis","email":"b25b72a65195e46aa49449589ffbea257ff840a3@gmail.com"},"message":"ccl/storageccl/engineccl: properly handle intents which straddle sstables\n\nAn intent which straddles an sstable can lead an incremental iterator to\nincorrectly ignore an sstable. In order to fix this, when an intent\nstraddles an sstable (i.e. the metadata key is the last key in the\nsstable) we need to include the intent's timestamp in the timestamp\nbounds. We don't need to do this for interior intents because we'll\nalready be including the intent's timestamp as it is contained in the\nnext key following the intent. Add\n`TestMVCCIncrementalIteratorIntentStraddlesSStables` which demonstrates\nthe problem.\n\nFixes #28358\n\nRelease note (bug fix): Fix a rare scenario where a backup could\nincorrectly include a key for a transaction which was aborted.","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/33e2ecf039e02152448d8dd062b77afc637e5116"},{"sha":"62ef1862c04c31f0677e79428115c3812fdd39b2","author":{"name":"Bob Vawter","email":"48181acd22b3edaebc8a447868a7df7ce629920a@cockroachlabs.com"},"message":"sql: Align timestamp math with PostgreSQL\n\nOur implementation of time+duration math delegates to golang's\ntime.Time.AddDate(), which has different normalization semantics when compared\nto PostgreSQL when normalizing invalid month-of-day values.\n\nThe most likely input case is that the duration will have no month component\nand we can fall back to go's implementation.  Another fast-path of checking the\nday-of-month allows us to skip the special-case logic for start dates that\naren't the 29th, 30th, or 31st of a month.\n\n```\nname                                      old time/op    new time/op    delta\nAdd/fast-path-by-no-months-in-duration-8    63.2ns ± 4%    64.8ns ± 1%      ~     (p=0.151 n=5+5)\nAdd/fast-path-by-day-number-8               70.5ns ± 5%    87.5ns ± 0%   +24.12%  (p=0.008 n=5+5)\nAdd/no-adjustment-8                         70.6ns ± 3%   196.4ns ± 0%  +178.11%  (p=0.008 n=5+5)\nAdd/with-adjustment-8                       68.1ns ± 3%   218.2ns ± 1%  +220.60%  (p=0.008 n=5+5)\n\n(No difference in allocations)\n```\n\nResolves #30976\n\nRelease note (backward-incompatible change): The normalized results of\ncertain timestamp + duration operations involving year or month durations have\nbeen adjusted to agree with the values returned by PostgreSQL.\n\nRelease note (sql change): In cases such as '2018-01-31'::TIMESTAMP + '1\nmonth', where an intermediate result of February 31st needs to be normalized,\nprevious versions of CockroachDB would advance to March 3.  Instead, we would\nnow \"round down\" to February 28th to agree with the values returned by\nPostgreSQL.  This change also affects the results of `generate_sequence()` when\nused with timestamps.","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/62ef1862c04c31f0677e79428115c3812fdd39b2"},{"sha":"d508f4ce8cd2931344f3493459132f78b74037e0","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #31146\n\n31146: sql: Align timestamp math with PostgreSQL r=bobvawter a=bobvawter\n\nOur implementation of time+duration math delegates to golang's\r\ntime.Time.AddDate(), which has different rounding semantics when compared to\r\nPostgreSQL when normalizing invalid month-of-day values.\r\n\r\nThe most likely input case is that the duration will have no month component\r\nand we can fall back to go's implementation.  Another fast-path of checking the\r\nday-of-month allows us to skip the special-case logic for start dates that\r\naren't the 29th, 30th, or 31st of a month.\r\n\r\n```\r\nname                                      old time/op    new time/op    delta\r\nAdd/fast-path-by-no-months-in-duration-8    63.2ns ± 4%    66.2ns ± 1%    +4.75%  (p=0.016 n=5+5)\r\nAdd/fast-path-by-day-number-8               70.5ns ± 5%    91.1ns ± 1%   +29.20%  (p=0.008 n=5+5)\r\nAdd/no-adjustment-8                         70.6ns ± 3%   206.8ns ± 1%  +192.83%  (p=0.008 n=5+5)\r\nAdd/with-adjustment-8                       68.1ns ± 3%   228.4ns ± 1%  +235.59%  (p=0.008 n=5+5)\r\n\r\n(No difference in allocations)\r\n```\r\n\r\nResolves #30976\r\n\r\nRelease note (sql change): The normalized results of certain timestamp +\r\nduration operations involving year or month durations have been adjusted to\r\nagree with the values returned by PostgreSQL.  In cases such as\r\n'2018-01-31'::TIMESTAMP + '1 month', where an intermediate result of February\r\n31st needs to be normalized, previous versions of CockroachDB would \"round up\"\r\nto March 1.  Instead, we would now \"round down\" to February 28th to agree with\r\nthe values returned by PostgreSQL.  This change also affects the results of\r\n`generate_sequence()` when used with timestamps.\n\nCo-authored-by: Bob Vawter <bob@cockroachlabs.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/d508f4ce8cd2931344f3493459132f78b74037e0"},{"sha":"bb3ca0132a31872af210174ce78313d251ae88a1","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #31290\n\n31290: ccl/storageccl/engineccl: properly handle intents which straddle sstables r=danhhz a=petermattis\n\nAn intent which straddles an sstable can lead an incremental iterator to\r\nincorrectly ignore an sstable. In order to fix this, when an intent\r\nstraddles an sstable (i.e. the metadata key is the last key in the\r\nsstable) we need to include the intent's timestamp in the timestamp\r\nbounds. We don't need to do this for interior intents because we'll\r\nalready be including the intent's timestamp as it is contained in the\r\nnext key following the intent. Add\r\n`TestMVCCIncrementalIteratorIntentStraddlesSStables` which demonstrates\r\nthe problem.\r\n\r\nFixes #28358\r\n\r\nRelease note (bug fix): Fix a rare scenario where a backup could\r\nincorrectly include a key for a transaction which was aborted.\n\nCo-authored-by: Peter Mattis <petermattis@gmail.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/bb3ca0132a31872af210174ce78313d251ae88a1"},{"sha":"d99be4a3baae38948857fcd7e02b6488cd5035e0","author":{"name":"Alex Robinson","email":"e522668276737e0807508286ee469559f9379f53@gmail.com"},"message":"roachtest: Slightly increase timeout in rebalance-leases-by-load\n\nTouches #31303\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/d99be4a3baae38948857fcd7e02b6488cd5035e0"},{"sha":"4e0d44db1a5061f4d283c1dff0c2ad738092d3e9","author":{"name":"Alex Robinson","email":"e522668276737e0807508286ee469559f9379f53@gmail.com"},"message":"roachtest: Stop rebalance test as soon as it succeeds\n\nPreviously it would always run for the entire test duration even after\nit achieved success, which was pretty annoying when stressing it.\n\nThere may be a more idiomatic way to do this. If so, I'd love to know.\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/4e0d44db1a5061f4d283c1dff0c2ad738092d3e9"},{"sha":"9339866dd325f8a144b61dc51d5b4e1f5633e3a4","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #31323\n\n31323: roachtest: Slightly increase timeout in rebalance-leases-by-load r=a-robinson a=a-robinson\n\nTouches #31303\r\n\r\nRelease note: None\n\nCo-authored-by: Alex Robinson <alexdwanerobinson@gmail.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/9339866dd325f8a144b61dc51d5b4e1f5633e3a4"},{"sha":"4135dc70f4b55f631537952a0c0f429b75ff7b08","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #31289\n\n31289: roachtest: Stop rebalance test as soon as it succeeds r=a-robinson a=a-robinson\n\nPreviously it would always run for the entire test duration even after\r\nit achieved success, which was pretty annoying when stressing it.\r\n\r\nThere may be a more idiomatic way to do this. If so, I'd love to know.\r\n\r\nRelease note: None\n\nCo-authored-by: Alex Robinson <alexdwanerobinson@gmail.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/4135dc70f4b55f631537952a0c0f429b75ff7b08"},{"sha":"266d2bba408dddd5138e666dd36008b8c2ea3c91","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #31291\n\n31291: kv,storage: annotate context cancellation errors r=jordanlewis a=jordanlewis\n\nPreviously, errors retrieved from cancelled context were frequently\r\npassed up the stack without annotation, making it very difficult to\r\nunderstand later what cancelled a context.\r\n\r\nThis commit annotates several potential context cancellation errors that\r\ncan occur on the synchronous query path with more context (no pun\r\nintended).\r\n\r\nHopefully informs #30886, #31094, #30659, etc.\r\n\r\nRelease note: None\n\nCo-authored-by: Jordan Lewis <jordanthelewis@gmail.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/266d2bba408dddd5138e666dd36008b8c2ea3c91"},{"sha":"55b4146c41e2a1668ea4f5cc4df6deca2df5d958","author":{"name":"Ridwan Sharif","email":"6a050273963a48d1fca66b1e2cc60bdfaaa4660d@cockroachlabs.com"},"message":"sql, settings: add a version for CascadingZoneConfigs\n\nThis is meant for the 2.1-1 version. It updates the version file\nand some tests that rely on it. When the cluster version is higher,\nthen and only then will the cascading zone configs take hold.\nAlso changes output of the `SHOW ZONE CONFIGURATIONS` command\nto only show explicitly set fields.\n\nRelease note (sql change): Changes the result for `show all zone\nconfigurations` and `show zone configuration for ...`. Also\nchanges how zone configuration changes behave.","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/55b4146c41e2a1668ea4f5cc4df6deca2df5d958"},{"sha":"520cbd69184d4aa293819181b9baa07b813ae820","author":{"name":"craig[bot]","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@cockroachlabs.com"},"message":"Merge #30611\n\n30611: sql, config: make zone configs cascade r=ridwanmsharif a=ridwanmsharif\n\nModifies the `ZoneConfig` struct to\r\nmake fields optional now. If fields are not set, they\r\nare looked for in the heirarchy. Refer to the RFC for\r\nmore details.\r\n\r\nIssue: #28901\r\nImplements most of RFC: #30426\r\n\r\nTODO:\r\n- [x] Update `set_zone_config` to use the new structure and validate them\r\n- [x] Exhaustively test cascading zone configs\r\n\r\nRelease note: Changes behavior of Zone Configs.\n\nCo-authored-by: Ridwan Sharif <ridwan@cockroachlabs.com>","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/520cbd69184d4aa293819181b9baa07b813ae820"},{"sha":"8c0656654b9934271b717b5e93817295b1129489","author":{"name":"Jordan Lewis","email":"d6a9c9ceebab0a60eea8692fb0aa04be2d19ee67@gmail.com"},"message":"*: move server/status -> server/status/statuspb\n\nThis allows dependents of the protobufs in server/status to not have to\ndepend on server/status.\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/8c0656654b9934271b717b5e93817295b1129489"},{"sha":"8bd43a42f68e6d620b7149dec9b0a7481bac51c9","author":{"name":"Jordan Lewis","email":"d6a9c9ceebab0a60eea8692fb0aa04be2d19ee67@gmail.com"},"message":"sql: remove dependency on server/status\n\nWe were importing server/status to get the MetricsRecorder struct, but\nwe only use one method on it. Remove that edge by adding a narrowed\ninterface, local to sql.\n\nRelease note: None","distinct":false,"url":"https://api.github.com/repos/jordanlewis/cockroach/commits/8bd43a42f68e6d620b7149dec9b0a7481bac51c9"}]}
{"actor":{"display_login":"jordanlewis"}}