-
Notifications
You must be signed in to change notification settings - Fork 6k
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
mon/OSDMonitor: Warnings for expected_num_objects #23072
Conversation
src/mon/OSDMonitor.cc
Outdated
if (expected_num_objects == 0 && | ||
cct->_conf->osd_objectstore == "filestore" && | ||
cct->_conf->filestore_merge_threshold < 0) { | ||
if (pg_num >= 1024 || pg_num / osdmap.get_num_osds() >= 50) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did we change the num of pgs per osd threshold from 100 to 50?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Didn't we? I thought we did in the last conversation we had. If you think we should keep at 100, I'm ok with that.
src/mon/OSDMonitor.cc
Outdated
if (expected_num_objects == 0 && | ||
cct->_conf->osd_objectstore == "filestore" && | ||
cct->_conf->filestore_merge_threshold < 0) { | ||
if (pg_num >= 1024 || pg_num / osdmap.get_num_osds() >= 50) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should check for divide by zero here - you could have no osds
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice catch.
@jdurgin, @neha-ojha pointed out that I mentioned 100 PGs/OSD as the threshold before (and once since) writing this code. Did we settle on 50 or was it 100 the whole time? |
I don't remember 50, but I'm happy either way.
Sent from Nine
…________________________________
From: fullerdj <notifications@github.com>
Sent: Tuesday, July 17, 2018 9:24 AM
To: ceph/ceph
Cc: Josh Durgin; Mention
Subject: Re: [ceph/ceph] Warnings for expected_num_objects (#23072)
@jdurgin, @neha-ojha pointed out that I mentioned 100 PGs/OSD as the threshold before (and once since) writing this code. Did we settle on 50 or was it 100 the whole time?
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#23072 (comment)
|
Ok, I changed it to 100.
… On Jul 17, 2018, at 12:55 PM, Josh Durgin ***@***.***> wrote:
I don't remember 50, but I'm happy either way.
Sent from Nine
________________________________
From: fullerdj ***@***.***>
Sent: Tuesday, July 17, 2018 9:24 AM
To: ceph/ceph
Cc: Josh Durgin; Mention
Subject: Re: [ceph/ceph] Warnings for expected_num_objects (#23072)
@jdurgin, @neha-ojha pointed out that I mentioned 100 PGs/OSD as the threshold before (and once since) writing this code. Did we settle on 50 or was it 100 the whole time?
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#23072 (comment)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
@neha-ojha this needs to be fixed/rebased https://pastebin.com/wu5aaXZz |
The expected_num_objects argument to ceph osd pool create is only effective on filestore pools when merging is disabled (filestore_merge_threshold < 0). Warn and disallow pool creation in this situation. Signed-off-by: Douglas Fuller <dfuller@redhat.com>
still broken https://pastebin.com/6kdiUsgU |
[dnm] added while pgcalc discussion is ongoing. |
When creating a pool on filestore, warn if the user appears to be creating a pool to store a large number of objects but omitted the expected_num_objects parameter. Create the pool anyway. Fixes: http://tracker.ceph.com/issues/24687 Signed-off-by: Douglas Fuller <dfuller@redhat.com>
Message updated and DNM tag removed. |
Warn if the user tries to create a pool with wrong or missing expected_num_objects