summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mongo/SConscript2
-rw-r--r--src/mongo/db/SConscript167
-rw-r--r--src/mongo/db/auth/SConscript7
-rw-r--r--src/mongo/db/catalog/SConscript38
-rw-r--r--src/mongo/db/commands/SConscript91
-rw-r--r--src/mongo/db/commands/dbcommands.cpp (renamed from src/mongo/db/dbcommands.cpp)0
-rw-r--r--src/mongo/db/commands/driverHelpers.cpp (renamed from src/mongo/db/driverHelpers.cpp)0
-rw-r--r--src/mongo/db/commands/eval.cpp (renamed from src/mongo/db/dbeval.cpp)0
-rw-r--r--src/mongo/db/commands/haystack.cpp (renamed from src/mongo/db/geo/haystack.cpp)0
-rw-r--r--src/mongo/db/index/SConscript27
-rw-r--r--src/mongo/db/matcher/SConscript6
-rw-r--r--src/mongo/db/ops/SConscript28
-rw-r--r--src/mongo/db/pipeline/SConscript15
-rw-r--r--src/mongo/db/repl/SConscript47
-rw-r--r--src/mongo/db/s/SConscript4
-rw-r--r--src/mongo/db/stats/SConscript20
-rw-r--r--src/mongo/db/storage/kv/SConscript7
-rw-r--r--src/mongo/s/SConscript17
-rw-r--r--src/mongo/s/client/SConscript7
19 files changed, 331 insertions, 152 deletions
diff --git a/src/mongo/SConscript b/src/mongo/SConscript
index 3308fc8db98..a13e463dd2b 100644
--- a/src/mongo/SConscript
+++ b/src/mongo/SConscript
@@ -259,7 +259,7 @@ mongodLibDeps = [
]
if has_option('use-cpu-profiler'):
- mongodLibDeps.append('db/cpuprofiler')
+ mongodLibDeps.append('db/commands/cpuprofiler')
mongod = env.Program(
target="mongod",
diff --git a/src/mongo/db/SConscript b/src/mongo/db/SConscript
index e8ff463464b..92f97280964 100644
--- a/src/mongo/db/SConscript
+++ b/src/mongo/db/SConscript
@@ -424,6 +424,7 @@ env.Library(
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/curop",
+ "$BUILD_DIR/mongo/db/dbdirectclient",
"$BUILD_DIR/mongo/util/net/miniwebserver",
"mongodandmongos",
'repl/repl_coordinator_global',
@@ -540,6 +541,20 @@ env.Library(
],
)
+# TODO: This library should probably be folded into catalog/catalog,
+# with which it is currently circular.
+env.Library(
+ target='db_raii',
+ source=[
+ 'db_raii.cpp',
+ ],
+ LIBDEPS=[
+ 'catalog/catalog',
+ 'stats/top',
+ 'views/views',
+ ],
+)
+
env.Library(
target='run_commands',
source=[
@@ -556,86 +571,41 @@ env.Library(
],
)
+env.Library(
+ target='dbdirectclient',
+ source=[
+ 'dbdirectclient.cpp',
+ ],
+ LIBDEPS=[
+ '$BUILD_DIR/mongo/client/clientdriver',
+ 'curop',
+ 'lasterror',
+ ],
+ LIBDEPS_TAGS=[
+ # Depends on assembleResponse, defined in instance.cpp below.
+ 'incomplete',
+ ],
+)
+
+env.Library(
+ target='dbhelpers',
+ source=[
+ 'dbhelpers.cpp',
+ ],
+ LIBDEPS=[
+ 'db_raii',
+ 'index/index_access_methods',
+ 'ops/write_ops',
+ ],
+)
+
# mongod files - also files used in tools. present in dbtests, but not in mongos and not in client
# libs.
serverOnlyFiles = [
"background.cpp",
- "catalog/apply_ops.cpp",
- "catalog/capped_utils.cpp",
- "catalog/coll_mod.cpp",
- "catalog/collection.cpp",
- "catalog/collection_compact.cpp",
- "catalog/collection_info_cache.cpp",
- "catalog/create_collection.cpp",
- "catalog/cursor_manager.cpp",
- "catalog/database.cpp",
- "catalog/database_holder.cpp",
- "catalog/drop_collection.cpp",
- "catalog/drop_database.cpp",
- "catalog/drop_indexes.cpp",
- "catalog/index_catalog.cpp",
- "catalog/index_catalog_entry.cpp",
- "catalog/index_create.cpp",
- "catalog/rename_collection.cpp",
"clientcursor.cpp",
"cloner.cpp",
- "commands/apply_ops_cmd.cpp",
- "commands/clone.cpp",
- "commands/clone_collection.cpp",
- "commands/collection_to_capped.cpp",
- "commands/compact.cpp",
- "commands/copydb.cpp",
- "commands/copydb_start_commands.cpp",
- "commands/count_cmd.cpp",
- "commands/create_indexes.cpp",
- "commands/current_op.cpp",
- "commands/dbhash.cpp",
- "commands/distinct.cpp",
- "commands/drop_indexes.cpp",
- "commands/explain_cmd.cpp",
- "commands/find_and_modify.cpp",
- "commands/find_cmd.cpp",
- "commands/fsync.cpp",
- "commands/geo_near_cmd.cpp",
- "commands/get_last_error.cpp",
- "commands/getmore_cmd.cpp",
- "commands/group_cmd.cpp",
- "commands/index_filter_commands.cpp",
- "commands/kill_op.cpp",
- "commands/killcursors_cmd.cpp",
- "commands/list_collections.cpp",
- "commands/list_databases.cpp",
- "commands/list_indexes.cpp",
- "commands/lock_info.cpp",
- "commands/mr.cpp",
- "commands/oplog_note.cpp",
- "commands/parallel_collection_scan.cpp",
- "commands/pipeline_command.cpp",
- "commands/plan_cache_commands.cpp",
- "commands/rename_collection_cmd.cpp",
- "commands/repair_cursor.cpp",
- "commands/snapshot_management.cpp",
- "commands/test_commands.cpp",
- "commands/top_command.cpp",
- "commands/touch.cpp",
- "commands/user_management_commands.cpp",
- "commands/validate.cpp",
- "commands/write_commands/write_commands.cpp",
"curop_metrics.cpp",
- "db_raii.cpp",
- "dbcommands.cpp",
- "dbdirectclient.cpp",
- "dbeval.cpp",
- "dbhelpers.cpp",
- "driverHelpers.cpp",
- "geo/haystack.cpp",
- "index/2d_access_method.cpp",
- "index/btree_access_method.cpp",
- "index/fts_access_method.cpp",
- "index/hash_access_method.cpp",
- "index/haystack_access_method.cpp",
- "index/index_access_method.cpp",
- "index/s2_access_method.cpp",
"index_builder.cpp",
"index_legacy.cpp",
"index_rebuilder.cpp",
@@ -643,57 +613,18 @@ serverOnlyFiles = [
"introspect.cpp",
"op_observer.cpp",
"operation_context_impl.cpp",
- "ops/delete.cpp",
- "ops/insert.cpp",
- "ops/parsed_delete.cpp",
- "ops/parsed_update.cpp",
- "ops/update.cpp",
- "ops/update_lifecycle_impl.cpp",
- "ops/update_result.cpp",
- "ops/write_ops_exec.cpp",
- "pipeline/document_source_cursor.cpp",
- "pipeline/pipeline_d.cpp",
"prefetch.cpp",
"range_deleter_db_env.cpp",
"range_deleter_service.cpp",
"read_concern.cpp",
"repair_database.cpp",
- "repl/initial_sync.cpp",
- "repl/master_slave.cpp",
- "repl/oplog.cpp",
- "repl/oplogreader.cpp",
- "repl/sync_source_resolver.cpp", # TODO(dannenberg) move this into DataReplicator in repl/SConscript.
- "repl/replication_coordinator_external_state_impl.cpp",
- "repl/replication_info.cpp",
- "repl/resync.cpp",
- "repl/rs_initialsync.cpp",
- "repl/rs_sync.cpp",
- "repl/sync_source_feedback.cpp",
"s/sharding_connection_hook_for_mongod.cpp",
"service_context_d.cpp",
- "stats/fill_locker_info.cpp",
- "stats/lock_server_status_section.cpp",
- "stats/range_deleter_server_status.cpp",
- "stats/snapshots.cpp",
"storage/storage_init.cpp",
"ttl.cpp",
"write_concern.cpp",
]
-if has_option('use-cpu-profiler'):
- profEnv = env.Clone()
- profEnv.Library('cpuprofiler',
- source=[
- 'commands/cpuprofile.cpp',
- ],
- LIBDEPS=[
- 'serveronly',
- ]
- )
- profEnv.InjectThirdPartyIncludePaths('gperftools')
-
-serveronlyEnv = env.Clone()
-serveronlyEnv.InjectThirdPartyIncludePaths(libraries=['snappy'])
serveronlyLibdeps = [
"$BUILD_DIR/mongo/client/parallel",
"$BUILD_DIR/mongo/db/bson/dotted_path_support",
@@ -711,25 +642,33 @@ serveronlyLibdeps = [
"$BUILD_DIR/mongo/db/storage/mmap_v1/file_allocator",
"$BUILD_DIR/third_party/shim_snappy",
"auth/authmongod",
+ "catalog/catalog",
"catalog/collection_options",
"catalog/document_validation",
"catalog/index_key_validate",
"commands/killcursors_common",
+ "commands/dcommands",
"collection_index_usage_tracker",
"common",
"concurrency/lock_manager",
"concurrency/write_conflict_exception",
"curop",
+ "dbdirectclient",
+ "dbhelpers",
+ "db_raii",
"exec/exec",
"exec/working_set",
"fts/ftsmongod",
"ftdc/ftdc_mongod",
"global_timestamp",
"index/index_descriptor",
+ "index/index_access_methods",
"matcher/expressions_mongod_only",
+ "ops/write_ops",
"ops/update_driver",
"ops/write_ops_parsers",
"pipeline/aggregation",
+ "pipeline/serveronly",
"query/query",
"range_deleter",
"repl/bgsync",
@@ -741,6 +680,7 @@ serveronlyLibdeps = [
"repl/replset_commands",
"repl/rs_rollback",
"repl/rslog",
+ "repl/serveronly",
"repl/storage_interface",
"repl/sync_tail",
"repl/topology_coordinator_impl",
@@ -750,6 +690,7 @@ serveronlyLibdeps = [
"s/sharding",
"startup_warnings_mongod",
"stats/counters",
+ "stats/serveronly",
"stats/top",
"storage/devnull/storage_devnull",
"storage/ephemeral_for_test/storage_ephemeral_for_test",
@@ -766,7 +707,7 @@ if wiredtiger:
serveronlyLibdeps.append('storage/wiredtiger/storage_wiredtiger')
serveronlyLibdeps.append('$BUILD_DIR/third_party/shim_wiredtiger')
-serveronlyEnv.Library(
+env.Library(
target="serveronly",
source=serverOnlyFiles,
LIBDEPS=serveronlyLibdeps,
diff --git a/src/mongo/db/auth/SConscript b/src/mongo/db/auth/SConscript
index 9508b702a26..477ad381907 100644
--- a/src/mongo/db/auth/SConscript
+++ b/src/mongo/db/auth/SConscript
@@ -130,13 +130,12 @@ env.Library('authmongod',
],
LIBDEPS=[
'authservercommon',
+ '$BUILD_DIR/mongo/db/db_raii',
+ '$BUILD_DIR/mongo/db/dbdirectclient',
+ '$BUILD_DIR/mongo/db/dbhelpers',
'$BUILD_DIR/mongo/db/repl/repl_coordinator_global',
'$BUILD_DIR/mongo/db/server_parameters',
],
- LIBDEPS_TAGS=[
- # Depends on files db_raii.cpp and catalog support files from serverOnlyFiles
- 'incomplete',
- ],
)
env.Library('authmongos',
diff --git a/src/mongo/db/catalog/SConscript b/src/mongo/db/catalog/SConscript
index bf032af7303..7bbe617b1bf 100644
--- a/src/mongo/db/catalog/SConscript
+++ b/src/mongo/db/catalog/SConscript
@@ -39,3 +39,41 @@ env.CppUnitTest(
'index_key_validate',
]
)
+
+env.Library(
+ target='catalog',
+ source=[
+ "apply_ops.cpp",
+ "capped_utils.cpp",
+ "coll_mod.cpp",
+ "collection.cpp",
+ "collection_compact.cpp",
+ "collection_info_cache.cpp",
+ "create_collection.cpp",
+ "cursor_manager.cpp",
+ "database.cpp",
+ "database_holder.cpp",
+ "drop_collection.cpp",
+ "drop_database.cpp",
+ "drop_indexes.cpp",
+ "index_catalog.cpp",
+ "index_catalog_entry.cpp",
+ "index_create.cpp",
+ "rename_collection.cpp",
+ ],
+ LIBDEPS=[
+ 'collection_options',
+ '$BUILD_DIR/mongo/base',
+ '$BUILD_DIR/mongo/db/concurrency/lock_manager',
+ '$BUILD_DIR/mongo/db/curop',
+ '$BUILD_DIR/mongo/db/query/query',
+ '$BUILD_DIR/mongo/db/repl/serveronly',
+ '$BUILD_DIR/mongo/db/service_context',
+ '$BUILD_DIR/mongo/db/storage/mmap_v1/storage_mmapv1',
+ '$BUILD_DIR/mongo/db/storage/key_string',
+ ],
+ LIBDEPS_TAGS=[
+ # TODO: Many missing libdeps above
+ 'incomplete'
+ ],
+)
diff --git a/src/mongo/db/commands/SConscript b/src/mongo/db/commands/SConscript
index 373d9592dab..919510c4b79 100644
--- a/src/mongo/db/commands/SConscript
+++ b/src/mongo/db/commands/SConscript
@@ -1,6 +1,7 @@
# -*- mode: python -*-
Import("env")
+Import("has_option")
env.Library(
target="test_commands_enabled",
@@ -78,7 +79,81 @@ env.Library(
],
)
-
+# Commands that should only be present in mongod
+env.Library(
+ target="dcommands",
+ source=[
+ "apply_ops_cmd.cpp",
+ "clone.cpp",
+ "clone_collection.cpp",
+ "collection_to_capped.cpp",
+ "dbcommands.cpp",
+ "compact.cpp",
+ "copydb.cpp",
+ "copydb_start_commands.cpp",
+ "count_cmd.cpp",
+ "create_indexes.cpp",
+ "current_op.cpp",
+ "dbhash.cpp",
+ "distinct.cpp",
+ "driverHelpers.cpp",
+ "drop_indexes.cpp",
+ "eval.cpp",
+ "explain_cmd.cpp",
+ "find_and_modify.cpp",
+ "find_cmd.cpp",
+ "fsync.cpp",
+ "geo_near_cmd.cpp",
+ "get_last_error.cpp",
+ "getmore_cmd.cpp",
+ "group_cmd.cpp",
+ "haystack.cpp",
+ "index_filter_commands.cpp",
+ "kill_op.cpp",
+ "killcursors_cmd.cpp",
+ "list_collections.cpp",
+ "list_databases.cpp",
+ "list_indexes.cpp",
+ "lock_info.cpp",
+ "mr.cpp",
+ "oplog_note.cpp",
+ "parallel_collection_scan.cpp",
+ "pipeline_command.cpp",
+ "plan_cache_commands.cpp",
+ "rename_collection_cmd.cpp",
+ "repair_cursor.cpp",
+ "snapshot_management.cpp",
+ "test_commands.cpp",
+ "top_command.cpp",
+ "touch.cpp",
+ "user_management_commands.cpp",
+ "validate.cpp",
+ "write_commands/write_commands.cpp",
+ ],
+ LIBDEPS=[
+ 'core',
+ 'killcursors_common',
+ '$BUILD_DIR/mongo/base',
+ '$BUILD_DIR/mongo/client/clientdriver',
+ '$BUILD_DIR/mongo/client/parallel',
+ '$BUILD_DIR/mongo/db/auth/authmongod',
+ '$BUILD_DIR/mongo/db/catalog/index_key_validate',
+ '$BUILD_DIR/mongo/db/commands',
+ '$BUILD_DIR/mongo/db/index/index_access_methods',
+ '$BUILD_DIR/mongo/db/lasterror',
+ '$BUILD_DIR/mongo/db/ops/write_ops',
+ '$BUILD_DIR/mongo/db/ops/write_ops_parsers',
+ '$BUILD_DIR/mongo/db/pipeline/serveronly',
+ '$BUILD_DIR/mongo/db/repl/isself',
+ '$BUILD_DIR/mongo/db/repl/repl_coordinator_impl',
+ '$BUILD_DIR/mongo/db/stats/serveronly',
+ '$BUILD_DIR/mongo/db/storage/mmap_v1/storage_mmapv1',
+ ],
+ LIBDEPS_TAGS=[
+ # TODO: There are many libraries missing from LIBDEPS
+ 'incomplete'
+ ]
+)
env.Library(
target='killcursors_common',
@@ -124,3 +199,17 @@ env.CppUnitTest(
"$BUILD_DIR/mongo/db/serveronly",
],
)
+
+if has_option('use-cpu-profiler'):
+ profEnv = env.Clone()
+ profEnv.InjectThirdPartyIncludePaths('gperftools')
+ profEnv.Library('cpuprofiler',
+ source=[
+ 'cpuprofile.cpp',
+ ],
+ LIBDEPS=[
+ ],
+ LIBDEPS_TAGS=[
+ 'incomplete'
+ ],
+ )
diff --git a/src/mongo/db/dbcommands.cpp b/src/mongo/db/commands/dbcommands.cpp
index 99462a65d2e..99462a65d2e 100644
--- a/src/mongo/db/dbcommands.cpp
+++ b/src/mongo/db/commands/dbcommands.cpp
diff --git a/src/mongo/db/driverHelpers.cpp b/src/mongo/db/commands/driverHelpers.cpp
index 8b6163e678b..8b6163e678b 100644
--- a/src/mongo/db/driverHelpers.cpp
+++ b/src/mongo/db/commands/driverHelpers.cpp
diff --git a/src/mongo/db/dbeval.cpp b/src/mongo/db/commands/eval.cpp
index 055c3a2dc68..055c3a2dc68 100644
--- a/src/mongo/db/dbeval.cpp
+++ b/src/mongo/db/commands/eval.cpp
diff --git a/src/mongo/db/geo/haystack.cpp b/src/mongo/db/commands/haystack.cpp
index e4010b2ff1d..e4010b2ff1d 100644
--- a/src/mongo/db/geo/haystack.cpp
+++ b/src/mongo/db/commands/haystack.cpp
diff --git a/src/mongo/db/index/SConscript b/src/mongo/db/index/SConscript
index 9b66617827e..9b6acf4a647 100644
--- a/src/mongo/db/index/SConscript
+++ b/src/mongo/db/index/SConscript
@@ -74,3 +74,30 @@ env.CppUnitTest(
'$BUILD_DIR/mongo/db/query/collation/collator_interface_mock',
],
)
+
+serveronlyEnv = env.Clone()
+serveronlyEnv.InjectThirdPartyIncludePaths(libraries=['snappy'])
+serveronlyEnv.Library(
+ target="index_access_methods",
+ source=[
+ "2d_access_method.cpp",
+ "btree_access_method.cpp",
+ "fts_access_method.cpp",
+ "hash_access_method.cpp",
+ "haystack_access_method.cpp",
+ "index_access_method.cpp",
+ "s2_access_method.cpp",
+ ],
+ LIBDEPS=[
+ '$BUILD_DIR/mongo/base',
+ '$BUILD_DIR/mongo/db/catalog/catalog',
+ '$BUILD_DIR/mongo/db/concurrency/write_conflict_exception',
+ '$BUILD_DIR/mongo/db/storage/storage_options',
+ '$BUILD_DIR/mongo/db/storage/mmap_v1/btree',
+ '$BUILD_DIR/mongo/db/query/query',
+ '$BUILD_DIR/third_party/shim_snappy',
+ 'expression_params',
+ 'index_descriptor',
+ 'key_generator',
+ ],
+)
diff --git a/src/mongo/db/matcher/SConscript b/src/mongo/db/matcher/SConscript
index ff82d538cba..90fb6d5d3e0 100644
--- a/src/mongo/db/matcher/SConscript
+++ b/src/mongo/db/matcher/SConscript
@@ -137,15 +137,13 @@ env.Library(
],
LIBDEPS=[
'$BUILD_DIR/mongo/db/auth/authorization_manager_global',
+ '$BUILD_DIR/mongo/db/catalog/catalog',
'$BUILD_DIR/mongo/db/concurrency/lock_manager',
+ '$BUILD_DIR/mongo/db/db_raii',
'$BUILD_DIR/mongo/db/fts/base',
'$BUILD_DIR/mongo/scripting/scripting_server',
'expressions',
],
- LIBDEPS_TAGS=[
- # Depends on symbols from serverOnlyFiles.
- 'incomplete',
- ],
)
env.CppUnitTest(
diff --git a/src/mongo/db/ops/SConscript b/src/mongo/db/ops/SConscript
index 080f35ffbda..69ba2abcb93 100644
--- a/src/mongo/db/ops/SConscript
+++ b/src/mongo/db/ops/SConscript
@@ -259,3 +259,31 @@ env.CppUnitTest(
'$BUILD_DIR/mongo/client/clientdriver',
],
)
+
+env.Library(
+ target="write_ops",
+ source=[
+ "delete.cpp",
+ "insert.cpp",
+ "parsed_delete.cpp",
+ "parsed_update.cpp",
+ "update.cpp",
+ "update_lifecycle_impl.cpp",
+ "update_result.cpp",
+ "write_ops_exec.cpp",
+ ],
+ LIBDEPS=[
+ '$BUILD_DIR/mongo/base',
+ '$BUILD_DIR/mongo/db/catalog/catalog',
+ '$BUILD_DIR/mongo/db/concurrency/lock_manager',
+ '$BUILD_DIR/mongo/db/matcher/expressions_mongod_only',
+ '$BUILD_DIR/mongo/db/query/query',
+ '$BUILD_DIR/mongo/db/repl/repl_coordinator_impl',
+ '$BUILD_DIR/mongo/db/service_context',
+ 'update_driver',
+ ],
+ LIBDEPS_TAGS=[
+ # Deep circularity with catalog
+ 'incomplete'
+ ],
+)
diff --git a/src/mongo/db/pipeline/SConscript b/src/mongo/db/pipeline/SConscript
index 15a8787b44a..28d8aa0361f 100644
--- a/src/mongo/db/pipeline/SConscript
+++ b/src/mongo/db/pipeline/SConscript
@@ -333,3 +333,18 @@ env.CppUnitTest(
'parsed_aggregation_projection',
],
)
+
+env.Library(
+ target='serveronly',
+ source=[
+ 'document_source_cursor.cpp',
+ 'pipeline_d.cpp',
+ ],
+ LIBDEPS=[
+ '$BUILD_DIR/mongo/db/catalog/document_validation',
+ '$BUILD_DIR/mongo/db/db_raii',
+ '$BUILD_DIR/mongo/db/dbdirectclient',
+ '$BUILD_DIR/mongo/db/index/index_access_methods',
+ '$BUILD_DIR/mongo/db/matcher/expressions_mongod_only',
+ ],
+)
diff --git a/src/mongo/db/repl/SConscript b/src/mongo/db/repl/SConscript
index 3c140167fa6..b6a2981dde0 100644
--- a/src/mongo/db/repl/SConscript
+++ b/src/mongo/db/repl/SConscript
@@ -151,6 +151,8 @@ env.Library(
LIBDEPS=[
'storage_interface',
'$BUILD_DIR/mongo/db/catalog/collection_options',
+ '$BUILD_DIR/mongo/db/db_raii',
+ '$BUILD_DIR/mongo/db/dbdirectclient',
'$BUILD_DIR/mongo/db/service_context',
],
)
@@ -181,7 +183,8 @@ env.Library(
'$BUILD_DIR/mongo/db/query/query',
],
LIBDEPS_TAGS=[
- # Depends on files like db_raii.cpp from serverOnlyFiles
+ # Depends on OldClientContext from db/serveronly
+ # Circular with catalog via db_raii
'incomplete',
],
)
@@ -262,7 +265,7 @@ env.Library(
'oplog_interface_remote',
],
LIBDEPS_TAGS=[
- # Depends on symbols that are not in a library, only in the serverOnlyFiles list.
+ # Depends on Cloner from db/serveronly
'incomplete'
],
@@ -1032,6 +1035,7 @@ env.CppUnitTest(
],
)
+
env.CppUnitTest(
target='freshness_scanner_test',
source=[
@@ -1046,3 +1050,42 @@ env.CppUnitTest(
'$BUILD_DIR/mongo/db/service_context_noop_init',
],
)
+
+env.Library(
+ target="serveronly",
+ source=[
+ "initial_sync.cpp",
+ "master_slave.cpp",
+ "oplog.cpp",
+ "oplogreader.cpp",
+ "replication_coordinator_external_state_impl.cpp",
+ "replication_info.cpp",
+ "resync.cpp",
+ "rs_initialsync.cpp",
+ "rs_sync.cpp",
+ "sync_source_feedback.cpp",
+ "sync_source_resolver.cpp", # TODO(dannenberg) move this into DataReplicator in repl/SConscript.
+ ],
+ LIBDEPS=[
+ 'bgsync',
+ 'optime',
+ 'repl_coordinator_interface',
+ 'repl_coordinator_impl',
+ 'repl_settings',
+ 'sync_tail',
+ '$BUILD_DIR/mongo/base',
+ '$BUILD_DIR/mongo/client/clientdriver',
+ '$BUILD_DIR/mongo/db/auth/authcore',
+ '$BUILD_DIR/mongo/db/commands',
+ '$BUILD_DIR/mongo/db/concurrency/lock_manager',
+ '$BUILD_DIR/mongo/db/curop',
+ '$BUILD_DIR/mongo/db/lasterror',
+ '$BUILD_DIR/mongo/db/query/query',
+ '$BUILD_DIR/mongo/db/service_context',
+ '$BUILD_DIR/mongo/db/stats/counters',
+ ],
+ LIBDEPS_TAGS=[
+ # TODO: Many missing libdeps above
+ 'incomplete',
+ ],
+)
diff --git a/src/mongo/db/s/SConscript b/src/mongo/db/s/SConscript
index efbab358154..4596088f86e 100644
--- a/src/mongo/db/s/SConscript
+++ b/src/mongo/db/s/SConscript
@@ -103,13 +103,15 @@ env.Library(
LIBDEPS=[
'$BUILD_DIR/mongo/db/bson/dotted_path_support',
'$BUILD_DIR/mongo/db/commands',
+ '$BUILD_DIR/mongo/db/db_raii',
+ '$BUILD_DIR/mongo/db/dbhelpers',
'$BUILD_DIR/mongo/db/repl/repl_coordinator_global',
'$BUILD_DIR/mongo/s/serveronly',
'metadata',
'sharding',
],
LIBDEPS_TAGS=[
- # Depends on getDeleter, defined in s/serveronly, which would be circular.
+ # Depends on getDeleter from db/serveronly
'incomplete',
],
)
diff --git a/src/mongo/db/stats/SConscript b/src/mongo/db/stats/SConscript
index be3a5dfe0e0..31519597109 100644
--- a/src/mongo/db/stats/SConscript
+++ b/src/mongo/db/stats/SConscript
@@ -66,3 +66,23 @@ env.Library(
'$BUILD_DIR/mongo/util/concurrency/spin_lock',
],
)
+
+env.Library(
+ target='serveronly',
+ source=[
+ "fill_locker_info.cpp",
+ "lock_server_status_section.cpp",
+ "range_deleter_server_status.cpp",
+ "snapshots.cpp",
+ ],
+ LIBDEPS=[
+ '$BUILD_DIR/mongo/base',
+ '$BUILD_DIR/mongo/db/commands/core',
+ '$BUILD_DIR/mongo/db/range_deleter',
+ 'top',
+ ],
+ LIBDEPS_TAGS=[
+ # Depends on mongo::getDeleter from db/serveronly
+ 'incomplete',
+ ],
+)
diff --git a/src/mongo/db/storage/kv/SConscript b/src/mongo/db/storage/kv/SConscript
index acfbeb9b537..8c3102e7a1a 100644
--- a/src/mongo/db/storage/kv/SConscript
+++ b/src/mongo/db/storage/kv/SConscript
@@ -48,22 +48,17 @@ env.Library(
],
)
-# KVDatabaseCatalogEntry::getIndex() depends on index access methods
-# in $BUILD_DIR/mongo/serveronly.
env.Library(
target='kv_engine',
source=[
'kv_database_catalog_entry_get_index.cpp',
],
LIBDEPS=[
+ '$BUILD_DIR/mongo/db/index/index_access_methods',
'kv_database_catalog_entry_core',
'kv_engine_core',
'kv_storage_engine',
],
- LIBDEPS_TAGS=[
- # Depends on symbols from serverOnlyFiles
- 'incomplete',
- ],
)
# Stubs out KVDatabaseCatalogEntry::getIndex() for testing.
diff --git a/src/mongo/s/SConscript b/src/mongo/s/SConscript
index 7c929228051..906eb25b4bb 100644
--- a/src/mongo/s/SConscript
+++ b/src/mongo/s/SConscript
@@ -102,10 +102,6 @@ env.Library(
'$BUILD_DIR/mongo/util/net/message_port_mock',
'mongoscore',
],
- LIBDEPS_TAGS=[
- # Depends on coreshard, but that would be circular
- 'incomplete',
- ],
)
env.Library(
@@ -195,14 +191,11 @@ env.Library(
],
LIBDEPS=[
'client/sharding_client',
+ 'mongoscore',
'write_ops/cluster_write_op',
'write_ops/cluster_write_op_conversion',
'$BUILD_DIR/mongo/base',
],
- LIBDEPS_TAGS=[
- # Circular with coreshard, below
- 'incomplete',
- ],
)
env.CppUnitTest(
@@ -269,15 +262,13 @@ env.Library(
'sharding_uptime_reporter.cpp',
],
LIBDEPS=[
+ '$BUILD_DIR/mongo/db/lasterror',
'$BUILD_DIR/mongo/executor/task_executor_pool',
'$BUILD_DIR/mongo/s/query/cluster_cursor_manager',
'catalog/replset/sharding_catalog_client_impl',
'client/sharding_client',
'common',
],
- LIBDEPS_TAGS=[
- 'incomplete',
- ],
)
env.Library(
@@ -385,8 +376,4 @@ env.Library(
"$BUILD_DIR/mongo/executor/network_interface_factory",
"$BUILD_DIR/mongo/s/client/shard_local",
],
- LIBDEPS_TAGS=[
- # Depends on symbols from files in serverOnlyFiles
- 'incomplete',
- ],
)
diff --git a/src/mongo/s/client/SConscript b/src/mongo/s/client/SConscript
index ecc4f0894e9..a5ab71a6249 100644
--- a/src/mongo/s/client/SConscript
+++ b/src/mongo/s/client/SConscript
@@ -90,13 +90,10 @@ env.Library(
],
LIBDEPS=[
'$BUILD_DIR/mongo/client/clientdriver',
+ '$BUILD_DIR/mongo/db/dbdirectclient',
+ '$BUILD_DIR/mongo/db/repl/repl_coordinator_impl',
'shard_interface'
],
- LIBDEPS_TAGS=[
- # Depends on DBDirectClient
- 'incomplete',
- ],
-
)
env.CppUnitTest(