{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":518944310,"defaultBranch":"master","name":"cockroach","ownerLogin":"pav-kv","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2022-07-28T17:53:02.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/3757441?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717194661.0","currentOid":""},"activityList":{"items":[{"before":"aaee9a4570f7f693394294146d653c52dc4b19d6","after":"23caa5d3cbca8f0ef2da70ec4f9083a632c98fef","ref":"refs/heads/raft-flow-control","pushedAt":"2024-05-31T23:10:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: track outstanding replication work\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: track outstanding replication work"}},{"before":"c29b17017245834b748248791fd390a732f99eee","after":"aaee9a4570f7f693394294146d653c52dc4b19d6","ref":"refs/heads/raft-flow-control","pushedAt":"2024-05-31T23:03:27.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: track outstanding replication work\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: track outstanding replication work"}},{"before":"cd0d6190fcb8b66cfb41ad49ed997604d684c551","after":"c29b17017245834b748248791fd390a732f99eee","ref":"refs/heads/raft-flow-control","pushedAt":"2024-05-31T22:38:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: track outstanding replication work\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: track outstanding replication work"}},{"before":null,"after":"cd0d6190fcb8b66cfb41ad49ed997604d684c551","ref":"refs/heads/raft-flow-control","pushedAt":"2024-05-31T22:31:01.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: track outstanding replication work\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: track outstanding replication work"}},{"before":"599b39d28d99adc7eeef70325b61fedb20b4bb1d","after":null,"ref":"refs/heads/raft-flow-control","pushedAt":"2024-05-31T22:23:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"}},{"before":"c2ded1839bd2de3f5fce646dd5c13ce7e7330982","after":"599b39d28d99adc7eeef70325b61fedb20b4bb1d","ref":"refs/heads/raft-flow-control","pushedAt":"2024-05-30T18:30:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: support lazy appends\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: support lazy appends"}},{"before":null,"after":"c2ded1839bd2de3f5fce646dd5c13ce7e7330982","ref":"refs/heads/raft-flow-control","pushedAt":"2024-05-30T18:17:57.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: support lazy appends\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: support lazy appends"}},{"before":"415d06cb24d7fe7d63d878508deb379ce5c899a3","after":"163a896572deeb395cdba93f3d38b0100cbdfb88","ref":"refs/heads/master","pushedAt":"2024-05-29T19:51:32.000Z","pushType":"push","commitsCount":27,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"Merge #124804 #124806\n\n124804: raft: re-enable config change safety r=nvanbenschoten a=pav-kv\n\nConfig changes in this `raft` implementation require a safety constraint: the leader must not append a config change if it hasn't applied all config changes in its log.\r\n\r\nThe `DisableConfChangeValidation` flag disables this check under the assumption that the state machine layer provides the equivalent guarantee. However, it is hard to argue that this is true in split leaseholder/leader scenarios.\r\n\r\nThis commit re-enables this check, to bring the safety back. The other two state-machine-level checks concerned with entering and leaving joint configs can still be disabled.\r\n\r\nRelated to #105797, https://github.com/etcd-io/raft/pull/81, #106515 (https://github.com/cockroachdb/cockroach/pull/106515#issuecomment-2071371853)\r\n\r\nEpic: none\r\nRelease note: none\n\n124806: release: push PRs to main repo r=celiala a=rail\n\nPreviously, we pushed PRs using the forked repos. For auto-merge to work, we need to push these PRs back to the main repo, so `GITHUB_TOKEN` has enough privileges to merge the PRs.\r\n\r\nThis PR adds an ability to push the PR branches to the origin repo. Note: the push user has to be given `write` permissions to the repos.\r\n\r\nEpic: none\r\nRelease note: None\n\nCo-authored-by: Pavel Kalinnikov \nCo-authored-by: Rail Aliiev ","shortMessageHtmlLink":"Merge cockroachdb#124804 cockroachdb#124806"}},{"before":"858781595ed3e60ffbf69b43480a0480033fec68","after":null,"ref":"refs/heads/fix-confchange-safety","pushedAt":"2024-05-29T19:36:07.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"}},{"before":"44e4e55d742343378bb0494f3062b4c31e60f83b","after":"858781595ed3e60ffbf69b43480a0480033fec68","ref":"refs/heads/fix-confchange-safety","pushedAt":"2024-05-29T17:37:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"testdata: add test for dropping conf change\n\nThis commit adds a test which ensures a config change is not proposed if\nthe leader has another yet unapplied config change.\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"testdata: add test for dropping conf change"}},{"before":"182fabfe28342abd8f623fd70f10cbe740863920","after":"44e4e55d742343378bb0494f3062b4c31e60f83b","ref":"refs/heads/fix-confchange-safety","pushedAt":"2024-05-29T17:36:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"testdata: add test for dropping conf change\n\nThis commit adds a test which ensures a config change is not propose if\nthe leader has another yet unapplied config change.\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"testdata: add test for dropping conf change"}},{"before":"46b6fab1cbc3c25229f0487711f9a5210ed6fb31","after":"415d06cb24d7fe7d63d878508deb379ce5c899a3","ref":"refs/heads/master","pushedAt":"2024-05-29T13:25:19.000Z","pushType":"push","commitsCount":33,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"Merge #124006\n\n124006: raft: consolidate all append message sending r=nvanbenschoten a=pav-kv\n\nThis PR consolidates all decision-making about sending append messages into a single `maybeSendAppend` method. Previously, the behaviour depended on the `sendIfEmpty` flag which was set/unset depending on the context in which the method is called. This is unnecessary because the `Progress` struct contains enough information about the leader->follower flow state, so `maybeSendAppend` can be made stand-alone.\r\n\r\nIn follow-up PRs, the consolidated `maybeSendAppend` method will be used to implement a more flexible message flow control.\r\n\r\nPorted from https://github.com/etcd-io/raft/pull/134\r\n\r\nEpic: CRDB-37515\r\nRelease note: none\n\nCo-authored-by: Pavel Kalinnikov ","shortMessageHtmlLink":"Merge cockroachdb#124006"}},{"before":"7de8650bd3d91e47eaa71d1aacbc33bbd33fe2b0","after":"182fabfe28342abd8f623fd70f10cbe740863920","ref":"refs/heads/fix-confchange-safety","pushedAt":"2024-05-29T13:13:50.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: re-enable config change safety\n\nConfig changes in this raft implementation require a safety constraint:\nthe leader must not append a config change if it hasn't applied all\nconfig changes in its log.\n\nThe DisableConfChangeValidation flag disables this check under the\nassumption that the state machine layer provides the equivalent\nguarantee. However, it is hard to argue that this is true in split\nleaseholder/leader scenarios.\n\nThis commit re-enables this check, to bring the safety back. The other\ntwo state-machine-level checks concerned with entering and leaving joint\nconfigs can still be disabled.\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: re-enable config change safety"}},{"before":"400b4b1778b8d75208df6d1bc5976cedee96b8fc","after":null,"ref":"refs/heads/raft-consolidate-append","pushedAt":"2024-05-29T12:52:36.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"}},{"before":"711def68176642733d1553aea946c4cc022479e5","after":"7de8650bd3d91e47eaa71d1aacbc33bbd33fe2b0","ref":"refs/heads/fix-confchange-safety","pushedAt":"2024-05-29T12:48:35.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: re-enable config change safety\n\nConfig changes in this raft implementation require a safety constraint:\nthe leader must not append a config change if it hasn't applied all\nconfig changes in its log.\n\nThe DisableConfChangeValidation flag disables this check under the\nassumption that the state machine layer provides the equivalent\nguarantee. However, it is hard to argue that this is true in split\nleaseholder/leader scenarios.\n\nThis commit re-enables this check, to bring the safety back. The other\ntwo state-machine-level checks concerned with entering and leaving joint\nconfigs can still be disabled.\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: re-enable config change safety"}},{"before":null,"after":"711def68176642733d1553aea946c4cc022479e5","ref":"refs/heads/fix-confchange-safety","pushedAt":"2024-05-29T12:44:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: re-enable config change safety\n\nConfig changes in this raft implementation require a safety constraint:\nthe leader must not append a config change if it hasn't applied all\nconfig changes in its log.\n\nThe DisableConfChangeValidation flag disables this check under the\nassumption that the state machine layer provides the equivalent\nguarantee. However, it is hard to argue that this is true in split\nleaseholder/lease scenarios.\n\nThis commit re-enables this check, to bring the safety back. The other\ntwo state-machine-level checks concerned with entering and leaving joint\nconfigs can still be disabled.\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: re-enable config change safety"}},{"before":"2b3ab554f5a85521000b1f93a56d320a8939723c","after":"400b4b1778b8d75208df6d1bc5976cedee96b8fc","ref":"refs/heads/raft-consolidate-append","pushedAt":"2024-05-28T16:46:15.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"tracker: rename MsgAppFlowPaused\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"tracker: rename MsgAppFlowPaused"}},{"before":"ba6b7c85d4aea5c3a59e4d8cab8175af23e3e071","after":"2b3ab554f5a85521000b1f93a56d320a8939723c","ref":"refs/heads/raft-consolidate-append","pushedAt":"2024-05-28T14:02:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"tracker: rename MsgAppFlowPaused\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"tracker: rename MsgAppFlowPaused"}},{"before":"3b7c2eda375df018d612623e462f93ee214532a7","after":"ba6b7c85d4aea5c3a59e4d8cab8175af23e3e071","ref":"refs/heads/raft-consolidate-append","pushedAt":"2024-05-28T13:50:33.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"tracker: rename MsgAppFlowPaused\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"tracker: rename MsgAppFlowPaused"}},{"before":"35eee359fceffc13a496aa6353ee5dbc818b629c","after":"3b7c2eda375df018d612623e462f93ee214532a7","ref":"refs/heads/raft-consolidate-append","pushedAt":"2024-05-28T13:45:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"tracker: rename MsgAppFlowPaused\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"tracker: rename MsgAppFlowPaused"}},{"before":"85ca9b87d6f89db01aaea1bbccaa6c116f5b9e2d","after":"35eee359fceffc13a496aa6353ee5dbc818b629c","ref":"refs/heads/raft-consolidate-append","pushedAt":"2024-05-28T13:44:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"tracker: rename MsgAppFlowPaused\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"tracker: rename MsgAppFlowPaused"}},{"before":"95e61b37c58cccfd68ff565a78236a3be660f30a","after":"85ca9b87d6f89db01aaea1bbccaa6c116f5b9e2d","ref":"refs/heads/raft-consolidate-append","pushedAt":"2024-05-28T13:39:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: consolidate all append message sending\n\nThis PR consolidates all decision-making about sending append messages\ninto a single maybeSendAppend method. Previously, the behaviour depended\non the sendIfEmpty flag which was set/unset depending on the context in\nwhich the method is called. This is unnecessary because the Progress\nstruct contains enough information about the leader->follower flow\nstate, so maybeSendAppend can be made stand-alone.\n\nIn follow-up PRs, the consolidated maybeSendAppend method will be used\nto implement a more flexible message flow control.\n\nEpic: CRDB-37515\nRelease note: none","shortMessageHtmlLink":"raft: consolidate all append message sending"}},{"before":"d146ecff6f687e438706cf63591cafca60cc116d","after":"46b6fab1cbc3c25229f0487711f9a5210ed6fb31","ref":"refs/heads/master","pushedAt":"2024-05-28T10:00:57.000Z","pushType":"push","commitsCount":170,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"Merge #124598\n\n124598: roachprod: condition to support cockroach-ephemeral r=herkolategan a=nameisbhaskar\n\nonly the clusters in cockroach-ephemeral should be selected for scrapping. So, adding a condition for the same.\r\n\r\nFixes: #124319\r\nEpic: none\n\nCo-authored-by: Bhaskarjyoti Bora ","shortMessageHtmlLink":"Merge cockroachdb#124598"}},{"before":"59b261a579cbe2c032a5dd3e182ff67aeee900b9","after":"d146ecff6f687e438706cf63591cafca60cc116d","ref":"refs/heads/master","pushedAt":"2024-05-21T12:33:22.000Z","pushType":"push","commitsCount":252,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"Merge #124409\n\n124409: roachprod: add custom tags for prometheus config r=srosenberg a=nameisbhaskar\n\nfew of the labels are missing in prometheus with the change from \"gce_sd_configs\" to \"file_sd_configs\". This is because these were extracted from the VM metadata which is not available now. So, the same values are set from roachprod now.\r\n\r\nInforms: #124319\r\nEpic: none\n\nCo-authored-by: Bhaskarjyoti Bora ","shortMessageHtmlLink":"Merge cockroachdb#124409"}},{"before":"fd78de383ee183b9c619913a67c2eb0915a75264","after":null,"ref":"refs/heads/check-match-index-on-follower","pushedAt":"2024-05-20T22:26:31.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"}},{"before":"b60fe625aa4fab83d80f9fe38f8c3880585743e3","after":"fd78de383ee183b9c619913a67c2eb0915a75264","ref":"refs/heads/check-match-index-on-follower","pushedAt":"2024-05-20T19:49:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: add tests for match index panic on a follower\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: add tests for match index panic on a follower"}},{"before":"8c69b3b475d7e1d9a86f38b77a246495f3ed6aee","after":"b60fe625aa4fab83d80f9fe38f8c3880585743e3","ref":"refs/heads/check-match-index-on-follower","pushedAt":"2024-05-20T19:24:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: add tests for match index panic on a follower\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: add tests for match index panic on a follower"}},{"before":"3f0af5d78d9eb6e4190f018c29a0acd5cead348b","after":"8c69b3b475d7e1d9a86f38b77a246495f3ed6aee","ref":"refs/heads/check-match-index-on-follower","pushedAt":"2024-05-20T19:07:40.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: add tests for match index panic on a follower\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: add tests for match index panic on a follower"}},{"before":"d72f1a8ec7f0a7ae757546d7dd0872d1c00d9448","after":"3f0af5d78d9eb6e4190f018c29a0acd5cead348b","ref":"refs/heads/check-match-index-on-follower","pushedAt":"2024-05-20T17:41:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"},"commit":{"message":"raft: add tests for match index panic on a follower\n\nEpic: none\nRelease note: none","shortMessageHtmlLink":"raft: add tests for match index panic on a follower"}},{"before":"c25290bedd8cd86163831e6e538450324edb0c32","after":null,"ref":"refs/heads/intentresolver-oom","pushedAt":"2024-05-16T20:38:49.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"pav-kv","name":"Pavel Kalinnikov","path":"/pav-kv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3757441?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEWXTNwQA","startCursor":null,"endCursor":null}},"title":"Activity ยท pav-kv/cockroach"}