Skip to content

os/bluestore: introduce new "per-pg" naming scheme for omap#38651

Merged
tchaikov merged 1 commit intoceph:masterfrom
ifed01:wip-ifed-new-omap-naming
Jan 1, 2021
Merged

os/bluestore: introduce new "per-pg" naming scheme for omap#38651
tchaikov merged 1 commit intoceph:masterfrom
ifed01:wip-ifed-new-omap-naming

Conversation

@ifed01
Copy link
Contributor

@ifed01 ifed01 commented Dec 18, 2020

This has been split out of #37496 to speed up "ondisk format" modifications merge.
The primary goal for the changes is to provide bulk omap removal ability.

Additionally this PR depends (syntactically only) on Adam's #38499

Signed-off-by: Igor Fedotov ifedotov@suse.com

Checklist

  • References tracker ticket
  • Updates documentation if necessary
  • Includes tests for new functionality or reproducer for bug

Show available Jenkins commands
  • jenkins retest this please
  • jenkins test classic perf
  • jenkins test crimson perf
  • jenkins test signed
  • jenkins test make check
  • jenkins test make check arm64
  • jenkins test submodules
  • jenkins test dashboard
  • jenkins test api
  • jenkins test docs
  • jenkins render docs
  • jenkins test ceph-volume all
  • jenkins test ceph-volume tox

Copy link
Member

@jdurgin jdurgin left a comment

Choose a reason for hiding this comment

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

Logic looks sound, we probably need a release note / docs about running fsck if we don't have that already for the bluestore format changes

Copy link
Contributor

@aclamk aclamk left a comment

Choose a reason for hiding this comment

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

Great work.
Thanks for extracting this from faster-pg-deletion.

bool per_pool_omap = false;
enum {
// Please preserve the order since it's DB persistent
OMAP_UNSORTED = 0,
Copy link
Contributor

Choose a reason for hiding this comment

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

How about changing "OMAP_UNSORTED" to "OMAP_BULK"?
It is just confusing because it is obviously sorted anyway.


Option("bluestore_rocksdb_cfs", Option::TYPE_STR, Option::LEVEL_DEV)
.set_default("m(3) O(3,0-13) L")
.set_default("m(3) p(3) O(3,0-13) L")
Copy link
Contributor

Choose a reason for hiding this comment

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

"p(3,0-12)" is better.
It will make hash calculation for column family sharding purposes to bytes 0-11.
I just assume that it is better to keep all omaps for one pg in single rocksdb column.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
@tchaikov tchaikov merged commit a6e87d3 into ceph:master Jan 1, 2021
@ifed01 ifed01 deleted the wip-ifed-new-omap-naming branch January 10, 2021 20:26
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.

4 participants