Skip to content
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

release-22.1: sql: don't rewind to BEGIN when retrying txn #82681

Merged
merged 1 commit into from
Jun 9, 2022

Conversation

blathers-crl[bot]
Copy link

@blathers-crl blathers-crl bot commented Jun 9, 2022

Backport 1/1 commits from #82622 on behalf of @rafiss.

/cc @cockroachdb/release


fixes #82392

Release note (bug fix): Fixed a bug where CockroachDB would
sometimes automatically retry the BEGIN statement of an explicit
transaction.


Release justification: fix a regression

Release note (bug fix): Fixed a bug where CockroachDB would
sometimes automatically retry the BEGIN statement of an explicit
transaction.
@blathers-crl blathers-crl bot force-pushed the blathers/backport-release-22.1-82622 branch from 963057e to c7b7c11 Compare June 9, 2022 17:04
@blathers-crl
Copy link
Author

blathers-crl bot commented Jun 9, 2022

Thanks for opening a backport.

Please check the backport criteria before merging:

  • Patches should only be created for serious issues or test-only changes.
  • Patches should not break backwards-compatibility.
  • Patches should change as little code as possible.
  • Patches should not change on-disk formats or node communication protocols.
  • Patches should not add new functionality.
  • Patches must not add, edit, or otherwise modify cluster versions; or add version gates.
If some of the basic criteria cannot be satisfied, ensure that the exceptional criteria are satisfied within.
  • There is a high priority need for the functionality that cannot wait until the next release and is difficult to address in another way.
  • The new functionality is additive-only and only runs for clusters which have specifically “opted in” to it (e.g. by a cluster setting).
  • New code is protected by a conditional check that is trivial to verify and ensures that it only runs for opt-in clusters.
  • The PM and TL on the team that owns the changed code have signed off that the change obeys the above rules.

Add a brief release justification to the body of your PR to justify this backport.

Some other things to consider:

  • What did we do to ensure that a user that doesn’t know & care about this backport, has no idea that it happened?
  • Will this work in a cluster of mixed patch versions? Did we test that?
  • If a user upgrades a patch version, uses this feature, and then downgrades, what happens?

@blathers-crl blathers-crl bot requested review from rafiss and ZhouXing19 June 9, 2022 17:04
@blathers-crl blathers-crl bot added blathers-backport This is a backport that Blathers created automatically. O-robot Originated from a bot. labels Jun 9, 2022
@cockroach-teamcity
Copy link
Member

This change is Reviewable

@rafiss rafiss merged commit 438826e into release-22.1 Jun 9, 2022
@rafiss rafiss deleted the blathers/backport-release-22.1-82622 branch June 9, 2022 19:37
craig bot pushed a commit that referenced this pull request Jul 18, 2022
84034: sql: add sequence option info for identity columns under information_schema r=rafiss a=ZhouXing19

Previously, for a column created with the `GENERATED ... AS IDENTITY
(seq_options)` syntax, the info for the sequence option is not saved in the
information schema.

This commit is to fix it. We parse the sequence options saved as a string in the
the descriptor, so that it's much easier to extract specific options such as
sequence's start value or increment size.

To make sure that we get the same sequence option to generate
the sequence, we reuse `assignSequenceOptions()` by breaking it into several
helper functions.

fixes #82064
fixes #83208

Release note (sql): add sequence option info for identity columns under
information_schema

84389: sql: fix auto-retries for upgraded transactions r=ZhouXing19 a=rafiss

This is implemented by adding more state to the conn executor state
machine. Now, it tracks if the open transaction was upgraded from an
implicit to an explicit txn. If so, when doing an auto retry, the
transaction is marked as an implicit again, so that the statements in
the transaction can upgrade it to explicit.

No release note is needed for v22.2, but we should use the following
 note when backporting to v22.1.

Placeholder note (bug fix): Fixed a bug where some statements in a batch
would not get executed if the following conditions were met:
- A batch of statements is sent in a single string.
- A BEGIN statement appears in the middle of the batch.
- The enable_implicit_transaction_for_batch_statements session variable
  is set to true. (This defaults to false in v22.1.x)

This bug was introduced in v22.1.2. (#82681)

Release note: None

84575: sql/schemachanger/sctest: don't rewrite if not enabled r=ajwerner a=ajwerner

This commit changes the explain diagram testing to check the output as opposed
to unconditionally rewriting. Before this change, the bazel build was broken because
the sandbox was not writable. Also, we weren't actually testing anything. 

Release note: None

Co-authored-by: Jane Xing <[email protected]>
Co-authored-by: Rafi Shamim <[email protected]>
Co-authored-by: Andrew Werner <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blathers-backport This is a backport that Blathers created automatically. O-robot Originated from a bot.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants