-
Notifications
You must be signed in to change notification settings - Fork 3.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
storage: no-op writes should not be proposed through Raft #23942
Milestone
Comments
This was referenced Mar 16, 2018
Merged
nvanbenschoten
added a commit
to nvanbenschoten/cockroach
that referenced
this issue
Mar 29, 2018
Fixes cockroachdb#23942. During evaluation, a request can result in having no effect for a variety of reasons. For instance, a PushTxnRequest may arrive at a transaction record to find that it is already ABORTED, in which case there's nothing for it to do. Before this change, we were still requiring that these empty results be proposed through Raft. This change fixes this by detecting empty results and bypassing consensus completely. Release note (performance improvement): Write requests that result in no-ops are no longer proposed through Raft.
nvanbenschoten
added a commit
to nvanbenschoten/cockroach
that referenced
this issue
Mar 29, 2018
Fixes cockroachdb#23942. During evaluation, a request can result in having no effect for a variety of reasons. For instance, a PushTxnRequest may arrive at a transaction record to find that it is already ABORTED, in which case there's nothing for it to do. Before this change, we were still requiring that these empty results be proposed through Raft. This change fixes this by detecting empty results and bypassing consensus completely. Release note (performance improvement): Write requests that result in no-ops are no longer proposed through Raft.
nvanbenschoten
added a commit
to nvanbenschoten/cockroach
that referenced
this issue
Mar 29, 2018
Fixes cockroachdb#23942. During evaluation, a request can result in having no effect for a variety of reasons. For instance, a PushTxnRequest may arrive at a transaction record to find that it is already ABORTED, in which case there's nothing for it to do. Before this change, we were still requiring that these empty results be proposed through Raft. This change fixes this by detecting empty results and bypassing consensus completely. Release note (performance improvement): Write requests that result in no-ops are no longer proposed through Raft.
craig bot
added a commit
that referenced
this issue
Mar 29, 2018
24309: optbuilder: Fix bugs with subqueries, DISTINCT, and ORDER BY r=RaduBerinde a=rytaft This commit fixes several miscellaneous issues. 1. Subqueries with aggregation and without a `FROM` clause were causing the outer query to incorrectly act as if it were in a grouping context. This commit fixes the issue by making sure the scope of the subquery is different than the scope of the outer query. 2. Queries with `DISTINCT` and `ORDER BY` in which the `ORDER BY` was ordering on an expression that was also part of the `SELECT` list were failing. This commit fixes the issue by reusing the existing projection for the `ORDER BY` column. 3. Several redundant columns were previously being synthesized for identical expressions. This commit fixes the issue by reusing existing columns wherever possible. Release note: None 24345: storage: don't require consensus for no-op requests r=tschottdorf a=nvanbenschoten Fixes #23942. During evaluation, a request can result in having no effect for a variety of reasons. For instance, a PushTxnRequest may arrive at a transaction record to find that it is already ABORTED, in which case there's nothing for it to do. Before this change, we were still requiring that these empty results be proposed through Raft. This change fixes this by detecting empty results and bypassing consensus completely. Release note (performance improvement): Write requests that result in no-ops are no longer proposed through Raft.
nvanbenschoten
added a commit
to nvanbenschoten/cockroach
that referenced
this issue
Mar 15, 2019
Fixes cockroachdb#23942. During evaluation, a request can result in having no effect for a variety of reasons. For instance, a PushTxnRequest may arrive at a transaction record to find that it is already ABORTED, in which case there's nothing for it to do. Before this change, we were still requiring that these empty results be proposed through Raft. This change fixes this by detecting empty results and bypassing consensus completely. Release note (performance improvement): Write requests that result in no-ops are no longer proposed through Raft.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The meat of this issue was described in #20448 (comment).
We should change the write cmd evaluation/proposal path to detect no-op results and short circuit them before they are proposed through Raft.
The text was updated successfully, but these errors were encountered: