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

osd/PG: clean up fastinfo key when last_update does not increase #32615

Merged
merged 4 commits into from Jan 15, 2020

Conversation

liewegas
Copy link
Member

If the last_update field goes backwards, we write a full info instead of
the fastinfo key. However, a stale fastinfo key may still be present, and
it may have a last_update that looks valid to a restarting OSD.

Fixes: https://tracker.ceph.com/issues/43580
Signed-off-by: Sage Weil sage@redhat.com

@liewegas liewegas force-pushed the fix-43580 branch 2 times, most recently from 29aa690 to 1de6111 Compare January 13, 2020 13:23
src/osd/osd_types.h Outdated Show resolved Hide resolved
@tchaikov
Copy link
Contributor

tchaikov commented Jan 13, 2020

i just skimmed thru the related code in luminous,mimic, and nautilus, and found they also suffer from the same issue. so i added backport =luminous,mimic,nautilus in https://tracker.ceph.com/issues/43580. please correct me if i am wrong.

Copy link
Contributor

@tchaikov tchaikov left a comment

Choose a reason for hiding this comment

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

lgtm aside from a nit.

src/osd/PG.cc Outdated Show resolved Hide resolved
Copy link
Contributor

@tchaikov tchaikov left a comment

Choose a reason for hiding this comment

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

~

Copy link
Contributor

@tchaikov tchaikov left a comment

Choose a reason for hiding this comment

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

build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos8/DIST/centos8/MACHINE_SIZE/huge/release/15.0.0-9259-gdc6e437/rpm/el8/BUILD/ceph-15.0.0-9259-gdc6e437/src/test/objectstore/ObjectStoreTransactionBenchmark.cc: In member function 'uint64_t PerfCase::rados_write_4k(int)':
/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos8/DIST/centos8/MACHINE_SIZE/huge/release/15.0.0-9259-gdc6e437/rpm/el8/BUILD/ceph-15.0.0-9259-gdc6e437/src/test/objectstore/ObjectStoreTransactionBenchmark.cc:216:11: error: 'class Transaction' has no member named 'omap_rmkey'; did you mean 'omap_rmkeys'?
         t.omap_rmkey(meta_cid, pglog_oid, pglog_attr);
           ^~~~~~~~~~
           omap_rmkeys

see https://jenkins.ceph.com/job/ceph-dev-new-build/ARCH=x86_64,AVAILABLE_ARCH=x86_64,AVAILABLE_DIST=centos8,DIST=centos8,MACHINE_SIZE=huge/35104//consoleFull

@liewegas
Copy link
Member Author

retest this please

liewegas and others added 4 commits January 14, 2020 14:25
Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
less cluttered this way

Signed-off-by: Kefu Chai <kchai@redhat.com>
If the last_update field goes backwards, we write a full info instead of
the fastinfo key. However, a stale fastinfo key may still be present, and
it may have a last_update that looks valid to a restarting OSD.

Fixes: https://tracker.ceph.com/issues/43580
Reported-by: song <jinglesong0814@163.com>
Signed-off-by: Sage Weil <sage@redhat.com>
@tchaikov
Copy link
Contributor

tchaikov commented Jan 14, 2020

@liewegas the original changeset broke the crimson build. see https://shaman.ceph.com/builds/ceph/wip-kefu-testing-2020-01-14-1029/c56ab079cfbe534c1e4cb5371924dc825539e79d/crimson/183535/ . so i fixed it and pushed to your branch.

@tchaikov tchaikov merged commit a75b756 into ceph:master Jan 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants