Skip to content

Prohibit creation of different plain disks with the shared object storage paths#89038

Merged
Michicosun merged 8 commits intomasterfrom
guardrails_for_plain_disks
Oct 28, 2025
Merged

Prohibit creation of different plain disks with the shared object storage paths#89038
Michicosun merged 8 commits intomasterfrom
guardrails_for_plain_disks

Conversation

@Michicosun
Copy link
Copy Markdown
Member

@Michicosun Michicosun commented Oct 27, 2025

PlainRewritable disks store their file system tree in memory. If another disk changes the object storage structure, the in-memory structure will not be updated, which will lead to invalid file system operations and possible no such key errors.

Changelog category (leave one):

  • Backward Incompatible Change

Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md):

Prohibit the creation of multiple plain-rewritable disks on top of the shared object storage path, as this can lead to undefined behavior during collisions of different metadata storage transactions.

@clickhouse-gh
Copy link
Copy Markdown
Contributor

clickhouse-gh bot commented Oct 27, 2025

Workflow [PR], commit [427e124]

Summary:

@clickhouse-gh clickhouse-gh bot added the pr-backward-incompatible Pull request with backwards incompatible changes label Oct 27, 2025
@azat azat self-assigned this Oct 27, 2025
@azat
Copy link
Copy Markdown
Member

azat commented Oct 27, 2025

Plain and PlainRewritable store their file system tree in memory

Hm, it should be only PlainRewritable, plain do not need this, since it store everything on S3/...

@Michicosun Michicosun added this pull request to the merge queue Oct 28, 2025
Merged via the queue into master with commit c100424 Oct 28, 2025
124 checks passed
@Michicosun Michicosun deleted the guardrails_for_plain_disks branch October 28, 2025 16:10
@robot-ch-test-poll2 robot-ch-test-poll2 added the pr-synced-to-cloud The PR is synced to the cloud repo label Oct 28, 2025
@azat
Copy link
Copy Markdown
Member

azat commented Nov 1, 2025

Let's backport it to 25.10, since CI is broken otherwise

@robot-clickhouse-ci-1 robot-clickhouse-ci-1 added pr-backports-created-cloud deprecated label, NOOP pr-must-backport-synced The `*-must-backport` labels are synced into the cloud Sync PR labels Nov 1, 2025
robot-clickhouse added a commit that referenced this pull request Nov 1, 2025
Cherry pick #89038 to 25.10: Prohibit creation of different plain disks with the shared object storage paths
robot-clickhouse added a commit that referenced this pull request Nov 1, 2025
@robot-clickhouse robot-clickhouse added the pr-backports-created Backport PRs are successfully created, it won't be processed by CI script anymore label Nov 1, 2025
azat added a commit that referenced this pull request Nov 1, 2025
Backport #89038 to 25.10: Prohibit creation of different plain disks with the shared object storage paths
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-backports-created Backport PRs are successfully created, it won't be processed by CI script anymore pr-backports-created-cloud deprecated label, NOOP pr-backward-incompatible Pull request with backwards incompatible changes pr-must-backport-synced The `*-must-backport` labels are synced into the cloud Sync PR pr-synced-to-cloud The PR is synced to the cloud repo v25.10-must-backport

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants