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

sql: add a cluster setting to avoid system config triggers #71910

Conversation

ajwerner
Copy link
Contributor

@ajwerner ajwerner commented Oct 25, 2021

This is intended as a short-term workaround to improve performance in
situations of repeated schema changes, like ORM tests.

We have a plan to disable the system config trigger altogether in 22.1 with
#70560.

This PR provides a cluster setting which allows schema change transactions
to bypass triggerring an update to the system config span. These updates
currently drive only the propagation of zone configs to KV and cluster
settings. The cluster setting behavior is retained until we address #70566.

We have a history of these sorts of unsafe settings in
kv.raft_log.disable_synchronization_unsafe.

Release note: None

@ajwerner ajwerner requested review from rafiss, postamar, arulajmani and a team October 25, 2021 01:52
@ajwerner ajwerner requested a review from a team as a code owner October 25, 2021 01:52
@cockroach-teamcity
Copy link
Member

This change is Reviewable

Copy link
Collaborator

@arulajmani arulajmani left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:lgtm:

Reviewed 7 of 7 files at r1, all commit messages.
Reviewable status: :shipit: complete! 1 of 0 LGTMs obtained (waiting on @postamar and @rafiss)

Copy link
Collaborator

@rafiss rafiss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for this workaround!

@ajwerner ajwerner force-pushed the ajwerner/knob-to-disable-system-config-span-gossip branch 3 times, most recently from aa65f7d to 9a85733 Compare December 22, 2021 04:09
This is intended as a short-term workaround to improve performance in
situations of repeated schema changes, like ORM tests.

We have a plan to disable the system config trigger altogether in 22.1 with

This PR provides a cluster setting which allows schema change transactions
to bypass triggerring an update to the system config span. These updates
currently drive only the propagation of zone configs to KV and cluster
settings. The cluster setting behavior is retained until we address cockroachdb#70566.

Release note: None
@ajwerner ajwerner force-pushed the ajwerner/knob-to-disable-system-config-span-gossip branch from 9a85733 to 754db5d Compare December 22, 2021 04:21
@ajwerner
Copy link
Contributor Author

TFTR!

bors r+

craig bot pushed a commit that referenced this pull request Dec 23, 2021
71910: sql: add a cluster setting to avoid system config triggers r=ajwerner a=ajwerner

This is intended as a short-term workaround to improve performance in
situations of repeated schema changes, like ORM tests.

We have a plan to disable the system config trigger altogether in 22.1 with
#70560. 

This PR provides a cluster setting which allows schema change transactions
to bypass triggerring an update to the system config span. These updates
currently drive only the propagation of zone configs to KV and cluster
settings. The cluster setting behavior is retained until we address #70566.

We have a history of these sorts of unsafe settings in
`kv.raft_log.disable_synchronization_unsafe`.

Release note: None

Co-authored-by: Andrew Werner <[email protected]>
@craig
Copy link
Contributor

craig bot commented Dec 23, 2021

Build failed:

@ajwerner
Copy link
Contributor Author

ajwerner commented Jan 3, 2022

bors r+

@craig
Copy link
Contributor

craig bot commented Jan 3, 2022

Build succeeded:

@craig craig bot merged commit c1f1185 into cockroachdb:master Jan 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants