From: cxwshawn Date: Wed, 18 May 2016 03:53:52 +0000 (+0800) Subject: OSD: optimize header file dependency to decreace compile time when modify any file X-Git-Tag: v11.0.0~477^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F9161%2Fhead;p=ceph.git OSD: optimize header file dependency to decreace compile time when modify any file OSD's left header dependency optimize. Signed-off-by: Xiaowei Chen --- diff --git a/src/osd/ClassHandler.cc b/src/osd/ClassHandler.cc index 5b39f96a569d..64b6c51febdb 100644 --- a/src/osd/ClassHandler.cc +++ b/src/osd/ClassHandler.cc @@ -2,10 +2,9 @@ // vim: ts=8 sw=2 smarttab #include "include/types.h" -#include "msg/Message.h" -#include "osd/OSD.h" #include "ClassHandler.h" #include "common/errno.h" +#include "common/ceph_context.h" #include @@ -16,6 +15,7 @@ #endif #include "common/config.h" +#include "common/debug.h" #define dout_subsys ceph_subsys_osd #undef dout_prefix diff --git a/src/osd/ClassHandler.h b/src/osd/ClassHandler.h index 3fe1f98d1a7a..74f5b69e7653 100644 --- a/src/osd/ClassHandler.h +++ b/src/osd/ClassHandler.h @@ -2,13 +2,11 @@ #define CEPH_CLASSHANDLER_H #include "include/types.h" - #include "objclass/objclass.h" - -#include "common/Cond.h" #include "common/Mutex.h" -#include "common/ceph_context.h" +//forward declaration +class CephContext; class ClassHandler { diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 646a2aebadf4..bac252818cfe 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -113,8 +113,10 @@ #include "common/perf_counters.h" #include "common/Timer.h" #include "common/LogClient.h" +#include "common/AsyncReserver.h" #include "common/HeartbeatMap.h" #include "common/admin_socket.h" +#include "common/ceph_context.h" #include "global/signal_handler.h" #include "global/pidfile.h" @@ -123,11 +125,9 @@ #include "perfglue/cpu_profiler.h" #include "perfglue/heap_profiler.h" -#include "osd/ClassHandler.h" #include "osd/OpRequest.h" #include "auth/AuthAuthorizeHandler.h" - #include "common/errno.h" #include "objclass/objclass.h" diff --git a/src/osd/OSD.h b/src/osd/OSD.h index 14fb6fb25ec0..ba3caaca0328 100644 --- a/src/osd/OSD.h +++ b/src/osd/OSD.h @@ -15,8 +15,6 @@ #ifndef CEPH_OSD_H #define CEPH_OSD_H -#include "boost/tuple/tuple.hpp" - #include "PG.h" #include "msg/Dispatcher.h" @@ -25,19 +23,15 @@ #include "common/RWLock.h" #include "common/Timer.h" #include "common/WorkQueue.h" -#include "common/LogClient.h" #include "common/AsyncReserver.h" -#include "common/ceph_context.h" - #include "os/ObjectStore.h" -#include "OSDCap.h" - +#include "OSDCap.h" + +#include "auth/KeyRing.h" #include "osd/ClassHandler.h" #include "include/CompatSet.h" -#include "auth/KeyRing.h" -#include "messages/MOSDRepScrub.h" #include "OpRequest.h" #include @@ -48,13 +42,11 @@ using namespace std; #include "include/unordered_map.h" -#include "Watch.h" #include "common/shared_cache.hpp" #include "common/simple_cache.hpp" #include "common/sharedptr_registry.hpp" #include "common/WeightedPriorityQueue.h" #include "common/PrioritizedQueue.h" -#include "common/OpQueue.h" #include "messages/MOSDOp.h" #include "include/Spinlock.h" @@ -222,8 +214,10 @@ class OpsFlightSocketHook; class HistoricOpsSocketHook; class TestOpsSocketHook; struct C_CompleteSplits; - +class LogChannel; +class CephContext; typedef ceph::shared_ptr SequencerRef; +class MOSDOp; class DeletingState { Mutex lock; diff --git a/src/osd/OSDMap.cc b/src/osd/OSDMap.cc index cf1c21528cb8..25a47c53bddc 100644 --- a/src/osd/OSDMap.cc +++ b/src/osd/OSDMap.cc @@ -22,12 +22,12 @@ #include "common/TextTable.h" #include "include/ceph_features.h" #include "include/str_map.h" -#include "include/stringify.h" #include "common/code_environment.h" #include "crush/CrushTreeDumper.h" - +#include "common/Clock.h" + #define dout_subsys ceph_subsys_osd // ---------------------------------- diff --git a/src/osd/OSDMap.h b/src/osd/OSDMap.h index 5446e3863cdb..a358678c4a35 100644 --- a/src/osd/OSDMap.h +++ b/src/osd/OSDMap.h @@ -24,16 +24,11 @@ * disks, disk groups, total # osds, * */ -#include "common/config.h" #include "include/types.h" #include "osd_types.h" -#include "include/ceph_features.h" - +//#include "include/ceph_features.h" #include "crush/CrushWrapper.h" - -#include "include/interval_set.h" - #include #include #include @@ -41,7 +36,9 @@ #include "include/memory.h" using namespace std; - +//forward declaration +class CephContext; +class CrushWrapper; /* * we track up to two intervals during which the osd was alive and * healthy. the most recent is [up_from,up_thru), where up_thru is diff --git a/src/osd/PGLog.cc b/src/osd/PGLog.cc index e8f2a3ac49ef..551638d6135c 100644 --- a/src/osd/PGLog.cc +++ b/src/osd/PGLog.cc @@ -16,9 +16,8 @@ */ #include "PGLog.h" -#include "PG.h" -#include "SnapMapper.h" -#include "../include/unordered_map.h" +#include "include/unordered_map.h" +#include "common/ceph_context.h" #define dout_subsys ceph_subsys_osd #undef dout_prefix diff --git a/src/osd/PGLog.h b/src/osd/PGLog.h index 0083303bb727..27c0f38c5765 100644 --- a/src/osd/PGLog.h +++ b/src/osd/PGLog.h @@ -21,7 +21,6 @@ #include "include/assert.h" #include "osd_types.h" #include "os/ObjectStore.h" -#include "common/ceph_context.h" #include using namespace std; @@ -30,6 +29,8 @@ using namespace std; #define PGLOG_INDEXED_EXTRA_CALLER_OPS (1 << 2) #define PGLOG_INDEXED_ALL (PGLOG_INDEXED_OBJECTS | PGLOG_INDEXED_CALLER_OPS | PGLOG_INDEXED_EXTRA_CALLER_OPS) +class CephContext; + struct PGLog : DoutPrefixProvider { DoutPrefixProvider *prefix_provider; string gen_prefix() const { diff --git a/src/osd/Watch.h b/src/osd/Watch.h index c6843ee785de..79b58e0dc9e1 100644 --- a/src/osd/Watch.h +++ b/src/osd/Watch.h @@ -14,13 +14,11 @@ #ifndef CEPH_WATCH_H #define CEPH_WATCH_H -#include #include "include/memory.h" #include #include "msg/Messenger.h" #include "include/Context.h" -#include "common/Mutex.h" enum WatcherState { WATCHER_PENDING,