Skip to content

Conversation

@RaduBerinde
Copy link
Member

@RaduBerinde RaduBerinde commented Oct 20, 2025

Add a cluster setting to control the tombstone-dense compaction
threshold.

Fixes: #155715
Release note: None

@RaduBerinde RaduBerinde requested a review from jbowens October 20, 2025 21:59
@RaduBerinde RaduBerinde requested review from a team as code owners October 20, 2025 21:59
@blathers-crl
Copy link

blathers-crl bot commented Oct 20, 2025

It looks like your PR touches production code but doesn't add or edit any test code. Did you consider adding tests to your PR?

🦉 Hoot! I am a Blathers, a bot for CockroachDB. My owner is dev-inf.

@cockroach-teamcity
Copy link
Member

This change is Reviewable

@RaduBerinde RaduBerinde force-pushed the tombstone-compaction-threshold-setting branch from d3f91e3 to 75b1261 Compare October 21, 2025 02:04
Add a cluster setting to control the tombstone-dense compaction
threshold.

Fixes: cockroachdb#155715
Release note: None
@RaduBerinde RaduBerinde force-pushed the tombstone-compaction-threshold-setting branch from 75b1261 to 5e4f9c2 Compare October 21, 2025 23:57
Copy link
Collaborator

@jbowens jbowens left a comment

Choose a reason for hiding this comment

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

:lgtm:

@jbowens reviewed 1 of 1 files at r1, all commit messages.
Reviewable status: :shipit: complete! 1 of 0 LGTMs obtained (waiting on @RaduBerinde)

@RaduBerinde
Copy link
Member Author

TFTR!

bors r+

craig bot pushed a commit that referenced this pull request Oct 22, 2025
154939: stress: rename Stress to DevStress r=herkolategan,jeffswenson a=stevendanna

This renames the current implementation of Stress to DevStress and then adds a new Stress function that covers both local and nightly stress runs.

Epic: none
Release note: None

155739: storage: add storage.tombstone_dense_compaction_threshold setting r=RaduBerinde a=RaduBerinde

Add a cluster setting to control the tombstone-dense compaction
threshold.

Fixes: #155715
Release note: None

155795: workload/schemachange: remove FK violation prediction for INSERT operations r=rafiss a=rafiss


Previously, the random schema workload attempted to predict whether INSERT operations would violate foreign key constraints by analyzing the database state and constraint definitions. This prediction logic involved:
- Querying the database to check if FK violations would occur
- Checking for ongoing FK constraint mutations
- Distinguishing between expected and potential FK violations

This commit removes all FK violation prediction logic and makes ForeignKeyViolation unconditionally a potential execution and commit error for INSERT operations. This aligns with the existing pattern used for adding FK constraints, where FK violations are always treated as potential errors due to the asynchronous validation job.

This change simplifies the code by removing ~200 lines of complex prediction logic and deflakes tests that depend on accurate error handling during concurrent schema changes.

Resolves: #155686
Resolves: #154715 
Resolves: #152402

Epic: None

Release note: None

🤖 Generated with [Claude Code](https://claude.com/claude-code)

155798: kvnemesis: log a metrics report r=stevendanna a=miraradeva

This commit adds logging of some key metrics at the end of each kvnemesis run.

Fixes: #153793

Release note: None

----

This is what the report looks like for a run of `TestKVNemesisMultiNode`:
```
Metric                              | Node 1               | Node 2               | Node 3               | Node 4
------------------------------------+----------------------+----------------------+----------------------+---------------------
raft.commands.proposed              | 2906                 | 117                  | 273                  | 118
raft.commands.reproposed.new-lai    | 0                    | 1                    | 12                   | 0
raft.commands.reproposed.unchanged  | 78                   | 0                    | 0                    | 0
txn.server_side.1PC.success         | 84                   | 0                    | 1                    | 0
txnrecovery.successes.committed     | 0                    | 0                    | 0                    | 0
txnwaitqueue.deadlocks_total        | 0                    | 0                    | 4                    | 0
txn.aborts                          | 13                   | 10                   | 8                    | 12
txn.durations                       | μ=25ms p99=260ms     | μ=82ms p99=671ms     | μ=81ms p99=1.476s    | μ=224ms p99=4.832s
txn.restarts.writetooold            | 8                    | 1                    | 2                    | 1
txn.restarts.serializable           | 1                    | 0                    | 0                    | 0
txn.restarts.readwithinuncertainty  | 0                    | 0                    | 0                    | 0
```

Co-authored-by: Steven Danna <[email protected]>
Co-authored-by: Radu Berinde <[email protected]>
Co-authored-by: Rafi Shamim <[email protected]>
Co-authored-by: Mira Radeva <[email protected]>
@craig
Copy link
Contributor

craig bot commented Oct 22, 2025

Build failed (retrying...):

@craig
Copy link
Contributor

craig bot commented Oct 22, 2025

@craig craig bot merged commit 9961f05 into cockroachdb:master Oct 22, 2025
24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

storage: make tombstone compaction threshold configurable

3 participants