-
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
osd: initial minimal efforts to clean up PG interface #17708
Commits on Oct 6, 2017
-
osd: use PG::get_pgid() instead of info.pgid
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 23cabca - Browse repository at this point
Copy the full SHA 23cabcaView commit details -
osd/PG: add get_last_user_version()
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 487225d - Browse repository at this point
Copy the full SHA 487225dView commit details -
osd/PG: inline lock_suspend_timeout
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for c1893d2 - Browse repository at this point
Copy the full SHA c1893d2View commit details -
osd/PG: add get_history() accessor
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 58684c5 - Browse repository at this point
Copy the full SHA 58684c5View commit details -
osd/PG: add set_last_scrub_stamp
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 3ca232e - Browse repository at this point
Copy the full SHA 3ca232eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ecd628 - Browse repository at this point
Copy the full SHA 9ecd628View commit details -
osd/PG: protect everything that doesn't have to be public
This lets us see what the *actual* public interface is that we are using. Signed-off-by: Sage Weil <sage@redhat.com>
1Configuration menu - View commit details
-
Copy full SHA for 7c1cba8 - Browse repository at this point
Copy the full SHA 7c1cba8View commit details -
osd/PG: clean up intrusive_ptr helpers
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 7ebf2a7 - Browse repository at this point
Copy the full SHA 7ebf2a7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2bfaa8b - Browse repository at this point
Copy the full SHA 2bfaa8bView commit details -
osd/PG: start grouping public interface at top of class
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for a7e1a73 - Browse repository at this point
Copy the full SHA a7e1a73View commit details -
osd/PG: clean up set_force_{recovery,backfill} interface
- update state under pg lock - clean up PG interface - log only when we adjust the state Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 2482b4c - Browse repository at this point
Copy the full SHA 2482b4cView commit details -
osd/PG: move C_PG_ActivateCommitted into header
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 0591585 - Browse repository at this point
Copy the full SHA 0591585View commit details -
osd/PG: move C_PG_FinishRecovery into header
Less code than delcaring it in 2 places (by making it a friend). Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for ca4ba9b - Browse repository at this point
Copy the full SHA ca4ba9bView commit details -
osd/PG: expose static methods for ceph-objectstore-tool
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for c3b300d - Browse repository at this point
Copy the full SHA c3b300dView commit details -
osd/PG: collection more of public at top of class
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 931fc92 - Browse repository at this point
Copy the full SHA 931fc92View commit details -
osd/ECBackend: use Listener instead of PG interface to check undersized
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 50a6f3c - Browse repository at this point
Copy the full SHA 50a6f3cView commit details -
osd/PG: add is_forced_recovery_or_backfill()
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 7abb015 - Browse repository at this point
Copy the full SHA 7abb015View commit details -
osd/PG: protect pg state accessors
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for e70067c - Browse repository at this point
Copy the full SHA e70067cView commit details -
osd/PG: cleanup and move ref counting public bits
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 8921301 - Browse repository at this point
Copy the full SHA 8921301View commit details -
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for c4a9fdf - Browse repository at this point
Copy the full SHA c4a9fdfView commit details -
osd/PG: protect get_last_peering_reset
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 49aeb04 - Browse repository at this point
Copy the full SHA 49aeb04View commit details -
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 9ab4eeb - Browse repository at this point
Copy the full SHA 9ab4eebView commit details -
osd: use pg->pg_id const member, not get_pgid()
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 329eb60 - Browse repository at this point
Copy the full SHA 329eb60View commit details -
Configuration menu - View commit details
-
Copy full SHA for 923ca75 - Browse repository at this point
Copy the full SHA 923ca75View commit details -
Configuration menu - View commit details
-
Copy full SHA for 83a3513 - Browse repository at this point
Copy the full SHA 83a3513View commit details -
osd: drop legacy infos object cleanup
This won't be there post-luminous Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 72d50e4 - Browse repository at this point
Copy the full SHA 72d50e4View commit details -
osd/PG: make get_watchers public, hide locking
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 5cef6ca - Browse repository at this point
Copy the full SHA 5cef6caView commit details -
osd/PG: add dump_pgstate_history() to public interface
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 7908142 - Browse repository at this point
Copy the full SHA 7908142View commit details -
osd/PG: add get_pg_stats() to public interface
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 385cda1 - Browse repository at this point
Copy the full SHA 385cda1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1b81002 - Browse repository at this point
Copy the full SHA 1b81002View commit details -
osd/PG: on_shutdown -> shutdown in public interface
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 80233f2 - Browse repository at this point
Copy the full SHA 80233f2View commit details -
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 3b70a35 - Browse repository at this point
Copy the full SHA 3b70a35View commit details -
osd/PG: drop bufferlist passed from peek_map_epoch to read_state/read…
…_info This is no longer used or needed. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 9dfa724 - Browse repository at this point
Copy the full SHA 9dfa724View commit details -
osd/PG: simplify/streamline upgrade process
There's no reason for this to be exposed to the OSD. Just do it directly in read_state(). Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 48f4126 - Browse repository at this point
Copy the full SHA 48f4126View commit details -
osd/PG: make read_state, peek_map_epoch public
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 662bb8f - Browse repository at this point
Copy the full SHA 662bb8fView commit details -
osd/PG: move load_pgs cruft into read_state()
This only happens during initial load; move it there. Also, since update_store_with_options Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 342d681 - Browse repository at this point
Copy the full SHA 342d681View commit details -
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 6022038 - Browse repository at this point
Copy the full SHA 6022038View commit details -
osd: remove build_past_intervals_parallel
This was added in the dumpling era to handle the case where we have lots of PGs with stale or missing past_intervals. These days, we update PastIntervals as we inject new makes (via advance_map), when we learn about new PGs via notify with get the PastIntervals at the same time, and during PGCreate handling we have a separate path in build_initial_pg_history. This code is obsolete. It also reaches deep into the PG class where it shouldn't! Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for ac9e2f7 - Browse repository at this point
Copy the full SHA ac9e2f7View commit details -
osd/PG: hide peering_queue from OSD
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 43265b2 - Browse repository at this point
Copy the full SHA 43265b2View commit details -
osd/PG: move some osd logic into handle_pg_trim
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for ea169c1 - Browse repository at this point
Copy the full SHA ea169c1View commit details -
osd/PG: move more recovery logic into PG
I suspect we eventually want to move the create_context and dispatch_context into OSDService (if it isn't there already) and move even more of this logic into PG. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 6493f8e - Browse repository at this point
Copy the full SHA 6493f8eView commit details -
osd: bit less verbose while loading pgs
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for f542b20 - Browse repository at this point
Copy the full SHA f542b20View commit details -
osd/PG: get_need_up_thru(), get_same_interval_since()
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 0438163 - Browse repository at this point
Copy the full SHA 0438163View commit details -
osd/PG: move write_if_dirty inside handle_{loaded,create}
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for fa7818a - Browse repository at this point
Copy the full SHA fa7818aView commit details -
osd/PG: move some more split machinery into PG
and move other split pieces into the public interface. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 81f9372 - Browse repository at this point
Copy the full SHA 81f9372View commit details -
osd/PG: move a few assertions, flag change into start_recovery_ops()
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for b3b8119 - Browse repository at this point
Copy the full SHA b3b8119View commit details -
osd/PG: drop unneeded write_if_dirty
Nothing in start_recovery_ops or stuck_on_unfound dirties state. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 82077e7 - Browse repository at this point
Copy the full SHA 82077e7View commit details -
osd/PG: simplify unfound recovery case; rename method
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for e5405fe - Browse repository at this point
Copy the full SHA e5405feView commit details -
osd/PG: simplify start_recovery_ops return value meaning
Instead of complex check in caller, return simple bool indicating whether find_unfound() should be called with a rctx. There is one remaining condition that can probably be simplified: if (!recovering.empty() || work_in_progress || recovery_ops_active > 0 || deferred_backfill) return !work_in_progress && have_unfound(); but we will leave it for now. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 7a4f30d - Browse repository at this point
Copy the full SHA 7a4f30dView commit details -
osd: use accessors for pg resurrection
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for d36c468 - Browse repository at this point
Copy the full SHA d36c468View commit details -
osd/PG: define public interface for heartbeat peers
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for b8f33aa - Browse repository at this point
Copy the full SHA b8f33aaView commit details -
osd/PG: move bits of delete_dir (pg removal) into PG
We don't want to expose things like SnapMapper, OSDriver. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 79e7dbb - Browse repository at this point
Copy the full SHA 79e7dbbView commit details -
osd/PG: change 'debug dump_missing'
- json - move into PG class No users in the qa suite. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 2a3a3fd - Browse repository at this point
Copy the full SHA 2a3a3fdView commit details -
osd/PGBackend: remove scrub_supported()
Everybody supports scrub. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for d14cc56 - Browse repository at this point
Copy the full SHA d14cc56View commit details -
Configuration menu - View commit details
-
Copy full SHA for 88c1330 - Browse repository at this point
Copy the full SHA 88c1330View commit details -
osd/PG: make sched_scrub() public
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 24af955 - Browse repository at this point
Copy the full SHA 24af955View commit details -
osd: use pg_id.pool() for pg pool id
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 070181a - Browse repository at this point
Copy the full SHA 070181aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 17e6d40 - Browse repository at this point
Copy the full SHA 17e6d40View commit details -
osd/PG: make get_primary() public
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for c4616ee - Browse repository at this point
Copy the full SHA c4616eeView commit details -
osd/PG: make on_removal() public
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 25769b2 - Browse repository at this point
Copy the full SHA 25769b2View commit details -
osd/PG: make update_snap_mapper_bits public
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 7debd61 - Browse repository at this point
Copy the full SHA 7debd61View commit details -
osd: drop redundant is_active() check before scrub_sched()
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for f6d3077 - Browse repository at this point
Copy the full SHA f6d3077View commit details -
osd/PG: drop OSD friend, finally!
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 05d5206 - Browse repository at this point
Copy the full SHA 05d5206View commit details -
osd: print summary for forced backfill/recovery to debug
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 7816ab5 - Browse repository at this point
Copy the full SHA 7816ab5View commit details -
ceph-objectstore-tool: print pg_info_t to stdoutt
Helpful for debugging Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 10a5a83 - Browse repository at this point
Copy the full SHA 10a5a83View commit details -
ceph-objectstore-tool: do not clear same_interval_since and PastInter…
…vals We dropped the OSD recalculation code for this. Import it. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 0f654d0 - Browse repository at this point
Copy the full SHA 0f654d0View commit details -
ceph-objectstore-tool: remove rm-past-intervals op
The OSD doesn't rebuild this on demand anymore. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for b6a5c09 - Browse repository at this point
Copy the full SHA b6a5c09View commit details -
ceph-objectstore-tool: refuse to import PG older that OSD's oldest_epoch
We don't have a way to construct a valid PastIntervals history. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 3681711 - Browse repository at this point
Copy the full SHA 3681711View commit details -
ceph-objectstore-tool: drop unused biginfo_oid
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 3131279 - Browse repository at this point
Copy the full SHA 3131279View commit details -
ceph-objectstore-tool: hide DIAGNOSTIC stuff behind debug/verbose mode
Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 366a3d5 - Browse repository at this point
Copy the full SHA 366a3d5View commit details -
ceph-objectstore-tool: bring past_intervals up to date on import
We can't blinding fast-forward the pg epoch to the latest map without also updating the pg history and PastIntervals. Do that at import time. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 2347ecb - Browse repository at this point
Copy the full SHA 2347ecbView commit details -
osd/PGLog: drop old compat coll/oid args to read_log_and_missing
The oldest version we care about is 10, and these were for <8. Signed-off-by: Sage Weil <sage@redhat.com>
Configuration menu - View commit details
-
Copy full SHA for 582ee8d - Browse repository at this point
Copy the full SHA 582ee8dView commit details