]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crimson: make osd shutdown graceful
authorXuehan Xu <xxhdx1985126@gmail.com>
Fri, 5 Jun 2020 06:43:10 +0000 (14:43 +0800)
committerXuehan Xu <xxhdx1985126@gmail.com>
Fri, 5 Jun 2020 10:44:13 +0000 (18:44 +0800)
commit619acccda7a0218b9e78bea7ad05114d97d4d5a4
treee081525968748a19c0984925699951ca3cf1b9dc
parent55d0b6c7af18eca8961254d83a6cf7af74eec679
crimson: make osd shutdown graceful

The shutdown operation OSD is as follows:
1. call each components' stop in the inner-out order, interrupting all
continuations by setting the corresponding promises with the exception
system_shutdown_exception;
2. wait for all inflight continuations to complete;
3. reclaim resources

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
53 files changed:
src/crimson/CMakeLists.txt
src/crimson/common/exception.h [new file with mode: 0644]
src/crimson/common/gated.h [new file with mode: 0644]
src/crimson/mgr/client.cc
src/crimson/mgr/client.h
src/crimson/mon/MonClient.cc
src/crimson/mon/MonClient.h
src/crimson/net/Dispatcher.h
src/crimson/net/Messenger.h
src/crimson/net/Protocol.cc
src/crimson/net/Protocol.h
src/crimson/net/ProtocolV1.cc
src/crimson/net/ProtocolV1.h
src/crimson/net/ProtocolV2.cc
src/crimson/net/ProtocolV2.h
src/crimson/net/SocketConnection.cc
src/crimson/net/SocketConnection.h
src/crimson/net/SocketMessenger.cc
src/crimson/net/SocketMessenger.h
src/crimson/net/chained_dispatchers.cc [new file with mode: 0644]
src/crimson/net/chained_dispatchers.h [new file with mode: 0644]
src/crimson/os/alienstore/alien_store.cc
src/crimson/os/cyanstore/cyan_store.h
src/crimson/osd/CMakeLists.txt
src/crimson/osd/chained_dispatchers.cc [deleted file]
src/crimson/osd/chained_dispatchers.h [deleted file]
src/crimson/osd/ec_backend.h
src/crimson/osd/heartbeat.cc
src/crimson/osd/heartbeat.h
src/crimson/osd/osd.cc
src/crimson/osd/osd.h
src/crimson/osd/osd_operation.h
src/crimson/osd/osd_operations/client_request.cc
src/crimson/osd/osd_operations/compound_peering_request.cc
src/crimson/osd/osdmap_gate.cc
src/crimson/osd/osdmap_gate.h
src/crimson/osd/pg.cc
src/crimson/osd/pg.h
src/crimson/osd/pg_backend.cc
src/crimson/osd/pg_backend.h
src/crimson/osd/pg_recovery.cc
src/crimson/osd/pg_recovery.h
src/crimson/osd/pg_recovery_listener.h
src/crimson/osd/recovery_backend.cc
src/crimson/osd/recovery_backend.h
src/crimson/osd/replicated_backend.cc
src/crimson/osd/replicated_backend.h
src/crimson/osd/replicated_recovery_backend.h
src/crimson/osd/shard_services.h
src/test/crimson/test_alien_echo.cc
src/test/crimson/test_messenger.cc
src/test/crimson/test_monc.cc
src/tools/crimson/perf_crimson_msgr.cc