Operational Defect Database

BugZero found this defect 2406 days ago.

MongoDB | 408361

[SERVER-30333] Segfault in 3.2 when loading chunks with unknown shard

Last update date:

10/30/2023

Affected products:

MongoDB Server

Affected releases:

3.2.15

Fixed releases:

3.2.17

Description:

Info

This happens when a chunk accidentally has a shard field that refers to a non-existent shard (ie. not in config.shards). This could occur during configdb brain surgery, eg. the chunk's shard field was accidentally mangled/typoed, or one of the config.shards documents was accidentally lost, When the ChunkManager attempts to load the chunks, MongoDB 3.2 dereferences a null pointer and so crashes with signal 11 (segfault). MongoDB 3.4 correctly errors the operation. While it's true that this is a very messed-up state that should never occur naturally, the server still shouldn't crash completely. Undesired behaviour (segfault, 3.2): kev@basique:~$ mlaunch init --single --sharded 1 --port 12345 --binarypath /m/3.2.15/bin --csrs launching: /m/3.2.15/bin/mongod on port 12346 launching: config server on port 12347 replica set 'configRepl' initialized. launching: /m/3.2.15/bin/mongos on port 12345 adding shards.   kev@basique:~$ mongo --port 12345 MongoDB shell version v3.4.6 connecting to: mongodb://127.0.0.1:12345/ MongoDB server version: 3.2.15 WARNING: shell and server versions do not match connection to 127.0.0.1:12345, version 3.2.15 db: test (127.0.0.1:12345/test)mongos > db.enableSharding() { "ok" : 1 } (127.0.0.1:12345/test)mongos > db.test.shardCollection({_id:1}) { "collectionsharded" : "test.test", "ok" : 1 } (127.0.0.1:12345/test)mongos > bye   kev@basique:~$ mlaunch stop mongos sent signal 15 to 1 process.   kev@basique:~$ mongo --port 12347 MongoDB shell version v3.4.6 connecting to: mongodb://127.0.0.1:12347/ MongoDB server version: 3.2.15 WARNING: shell and server versions do not match connection to 127.0.0.1:12347, version 3.2.15 db: test (127.0.0.1:12347/test)configRepl:PRIMARY > use config switched to db config (127.0.0.1:12347/config)configRepl:PRIMARY > db.shards.find() { "_id" : "shard01", "host" : "basique:12346" } (127.0.0.1:12347/config)configRepl:PRIMARY > db.chunks.find() { "_id" : "test.test-_id_MinKey", "ns" : "test.test", "min" : { "_id" : { "$minKey" : 1 } }, "max" : { "_id" : { "$maxKey" : 1 } }, "shard" : "shard01", "lastmod" : Timestamp(1, 0), "lastmodEpoch" : ObjectId("5977f7539118ba052b55c40f") } (127.0.0.1:12347/config)configRepl:PRIMARY > db.chunks.update({}, {$set:{shard:"nonexist"}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) (127.0.0.1:12347/config)configRepl:PRIMARY > bye   kev@basique:~$ mlaunch start mongos launching: /m/3.2.15/bin/mongos on port 12345   kev@basique:~$ mongo --port 12345 MongoDB shell version v3.4.6 connecting to: mongodb://127.0.0.1:12345/ MongoDB server version: 3.2.15 WARNING: shell and server versions do not match connection to 127.0.0.1:12345, version 3.2.15 db: test (127.0.0.1:12345/test)mongos > db.test.find() Error: error doing query: failed: network error while attempting to run command 'find' on host '127.0.0.1:12345' 2017-07-26T11:59:41.825+1000 I NETWORK [thread1] trying reconnect to 127.0.0.1:12345 (127.0.0.1) failed 2017-07-26T11:59:41.825+1000 W NETWORK [thread1] Failed to connect to 127.0.0.1:12345, in(checking socket for error after poll), reason: Connection refused 2017-07-26T11:59:41.825+1000 I NETWORK [thread1] reconnect 127.0.0.1:12345 (127.0.0.1) failed failed 2017-07-26T11:59:41.828+1000 I NETWORK [thread1] trying reconnect to 127.0.0.1:12345 (127.0.0.1) failed 2017-07-26T11:59:41.828+1000 W NETWORK [thread1] Failed to connect to 127.0.0.1:12345, in(checking socket for error after poll), reason: Connection refused 2017-07-26T11:59:41.828+1000 I NETWORK [thread1] reconnect 127.0.0.1:12345 (127.0.0.1) failed failed > bye   kev@basique:~$ less data/mongos.log ... 2017-07-26T11:59:41.622+1000 I SHARDING [conn6] ChunkManager loading chunks for test.test sequenceNumber: 2 based on: (empty) 2017-07-26T11:59:41.622+1000 F - [conn6] Invalid access at address: 0 2017-07-26T11:59:41.627+1000 F - [conn6] Got signal: 11 (Segmentation fault).   0xda0cb2 0xd9fc59 0xda0637 0x7fda51ae3390 0xbf11d0 0xbedb97 0xbf46b3 0xbf7bf0 0xca3f82 0xca4b84 0xca4e88 0xb37001 0xcbf17b 0xc48614 0xcc6e3c 0xcc7648 0xcdc493 0xcc5fc9 0x6cbf45 0xd4c171 0x7fda51ad96ba 0x7fda5180f3dd ----- BEGIN BACKTRACE ----- {"backtrace":[{"b":"400000","o":"9A0CB2","s":"_ZN5mongo15printStackTraceERSo"},{"b":"400000","o":"99FC59"},{"b":"400000","o":"9A0637"},{"b":"7FDA51AD2000","o":"11390"},{"b":"400000","o":"7F11D0"},{"b":"400000","o":"7EDB97","s":"_ZN5mongo17ConfigDiffTrackerISt10shared_ptrINS_5ChunkEEE19calculateConfigDiffEPNS_16OperationContextERKSt6vectorINS_9ChunkTypeESaIS8_EE"},{"b":"400000","o":"7F46B3","s":"_ZN5mongo12ChunkManager5_loadEPNS_16OperationContextERSt3mapINS_7BSONObjESt10shared_ptrINS_5ChunkEENS_10BSONObjCmpESaISt4pairIKS4_S7_EEERSt3setINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4lessISL_ESaISL_EEPS3_ISL_NS_12ChunkVersionESN_SaIS9_IKSL_SR_EEEPKS0_"},{"b":"400000","o":"7F7BF0","s":"_ZN5mongo12ChunkManager18loadExistingRangesEPNS_16OperationContextEPKS0_"},{"b":"400000","o":"8A3F82","s":"_ZN5mongo14CollectionInfoC2EPNS_16OperationContextERKNS_14CollectionTypeENS_4repl6OpTimeE"},{"b":"400000","o":"8A4B84","s":"_ZN5mongo8DBConfig13_loadIfNeededEPNS_16OperationContextEy"},{"b":"400000","o":"8A4E88","s":"_ZN5mongo8DBConfig4loadEPNS_16OperationContextE"},{"b":"400000","o":"737001","s":"_ZN5mongo12CatalogCache11getDatabaseEPNS_16OperationContextERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"},{"b":"400000","o":"8BF17B","s":"_ZN5mongo11ClusterFind8runQueryEPNS_16OperationContextERKNS_14CanonicalQueryERKNS_21ReadPreferenceSettingEPSt6vectorINS_7BSONObjESaISA_EE"},{"b":"400000","o":"848614"},{"b":"400000","o":"8C6E3C","s":"_ZN5mongo7Command22execCommandClientBasicEPNS_16OperationContextEPS0_RNS_11ClientBasicEiPKcRNS_7BSONObjERNS_14BSONObjBuilderE"},{"b":"400000","o":"8C7648","s":"_ZN5mongo7Command20runAgainstRegisteredEPNS_16OperationContextEPKcRNS_7BSONObjERNS_14BSONObjBuilderEi"},{"b":"400000","o":"8DC493","s":"_ZN5mongo8Strategy15clientCommandOpEPNS_16OperationContextERNS_7RequestE"},{"b":"400000","o":"8C5FC9","s":"_ZN5mongo7Request7processEPNS_16OperationContextEi"},{"b":"400000","o":"2CBF45","s":"_ZN5mongo21ShardedMessageHandler7processERNS_7MessageEPNS_21AbstractMessagingPortE"},{"b":"400000","o":"94C171","s":"_ZN5mongo17PortMessageServer17handleIncomingMsgEPv"},{"b":"7FDA51AD2000","o":"76BA"},{"b":"7FDA51708000","o":"1073DD","s":"clone"}],"processInfo":{ "mongodbVersion" : "3.2.15", "gitVersion" : "e11e3c1b9c9ce3f7b4a79493e16f5e4504e01140", "compiledModules" : [], "uname" : { "sysname" : "Linux", "release" : "4.8.2-040802-generic", "version" : "#201610161339 SMP Sun Oct 16 17:41:46 UTC 2016", "machine" : "x86_64" }, "somap" : [ { "elfType" : 2, "b" : "400000", "buildId" : "4ABF87DF8597F7A1E919A707CEC69A5B9B4DB0E2" }, { "b" : "7FFE787CB000", "elfType" : 3, "buildId" : "88952B90E05D452D09F66E5A40C34F28258CAF89" }, { "b" : "7FDA52A5E000", "path" : "/lib/x86_64-linux-gnu/libssl.so.1.0.0", "elfType" : 3, "buildId" : "7F514146540382F59AD705BA8C913A75204C6858" }, { "b" : "7FDA5261A000", "path" : "/lib/x86_64-linux-gnu/libcrypto.so.1.0.0", "elfType" : 3, "buildId" : "E6D4D2E4A048992CD5501E5985094E6CEC6C5D4F" }, { "b" : "7FDA52412000", "path" : "/lib/x86_64-linux-gnu/librt.so.1", "elfType" : 3, "buildId" : "F951C1E0765FCAE48F82CAFE35D1ADD36D6C9AF9" }, { "b" : "7FDA5220E000", "path" : "/lib/x86_64-linux-gnu/libdl.so.2", "elfType" : 3, "buildId" : "0FC788F0861846257B5F1773FBD438E95DFC1032" }, { "b" : "7FDA51F05000", "path" : "/lib/x86_64-linux-gnu/libm.so.6", "elfType" : 3, "buildId" : "FF7A33D389E756CA381A8189291A968EA5E1F4F8" }, { "b" : "7FDA51CEF000", "path" : "/lib/x86_64-linux-gnu/libgcc_s.so.1", "elfType" : 3, "buildId" : "68220AE2C65D65C1B6AAA12FA6765A6EC2F5F434" }, { "b" : "7FDA51AD2000", "path" : "/lib/x86_64-linux-gnu/libpthread.so.0", "elfType" : 3, "buildId" : "27F189EF8DB8C3734C6A678E6EF3CB0B206D58B2" }, { "b" : "7FDA51708000", "path" : "/lib/x86_64-linux-gnu/libc.so.6", "elfType" : 3, "buildId" : "088A6E00A1814622219F346B41E775B8DD46C518" }, { "b" : "7FDA52CC7000", "path" : "/lib64/ld-linux-x86-64.so.2", "elfType" : 3, "buildId" : "9157F205547F0EB588E2AB1F2F120B74253A43EA" } ] }} mongos(_ZN5mongo15printStackTraceERSo+0x32) [0xda0cb2] mongos(+0x99FC59) [0xd9fc59] mongos(+0x9A0637) [0xda0637] libpthread.so.0(+0x11390) [0x7fda51ae3390] mongos(+0x7F11D0) [0xbf11d0] mongos(_ZN5mongo17ConfigDiffTrackerISt10shared_ptrINS_5ChunkEEE19calculateConfigDiffEPNS_16OperationContextERKSt6vectorINS_9ChunkTypeESaIS8_EE+0x847) [0xbedb97] mongos(_ZN5mongo12ChunkManager5_loadEPNS_16OperationContextERSt3mapINS_7BSONObjESt10shared_ptrINS_5ChunkEENS_10BSONObjCmpESaISt4pairIKS4_S7_EEERSt3setINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4lessISL_ESaISL_EEPS3_ISL_NS_12ChunkVersionESN_SaIS9_IKSL_SR_EEEPKS0_+0xAB3) [0xbf46b3] mongos(_ZN5mongo12ChunkManager18loadExistingRangesEPNS_16OperationContextEPKS0_+0x2B0) [0xbf7bf0] mongos(_ZN5mongo14CollectionInfoC2EPNS_16OperationContextERKNS_14CollectionTypeENS_4repl6OpTimeE+0x82) [0xca3f82] mongos(_ZN5mongo8DBConfig13_loadIfNeededEPNS_16OperationContextEy+0x6B4) [0xca4b84] mongos(_ZN5mongo8DBConfig4loadEPNS_16OperationContextE+0x48) [0xca4e88] mongos(_ZN5mongo12CatalogCache11getDatabaseEPNS_16OperationContextERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x361) [0xb37001] mongos(_ZN5mongo11ClusterFind8runQueryEPNS_16OperationContextERKNS_14CanonicalQueryERKNS_21ReadPreferenceSettingEPSt6vectorINS_7BSONObjESaISA_EE+0x33B) [0xcbf17b] mongos(+0x848614) [0xc48614] mongos(_ZN5mongo7Command22execCommandClientBasicEPNS_16OperationContextEPS0_RNS_11ClientBasicEiPKcRNS_7BSONObjERNS_14BSONObjBuilderE+0x7EC) [0xcc6e3c] mongos(_ZN5mongo7Command20runAgainstRegisteredEPNS_16OperationContextEPKcRNS_7BSONObjERNS_14BSONObjBuilderEi+0x328) [0xcc7648] mongos(_ZN5mongo8Strategy15clientCommandOpEPNS_16OperationContextERNS_7RequestE+0x483) [0xcdc493] mongos(_ZN5mongo7Request7processEPNS_16OperationContextEi+0x6B9) [0xcc5fc9] mongos(_ZN5mongo21ShardedMessageHandler7processERNS_7MessageEPNS_21AbstractMessagingPortE+0x65) [0x6cbf45] mongos(_ZN5mongo17PortMessageServer17handleIncomingMsgEPv+0x311) [0xd4c171] libpthread.so.0(+0x76BA) [0x7fda51ad96ba] libc.so.6(clone+0x6D) [0x7fda5180f3dd] ----- END BACKTRACE ----- 2017-07-26T11:59:41.627+1000 F - [conn6] /proc/self/maps: 00400000-0126e000 r-xp 00000000 fd:01 3547010 /usr/local/sw/mongodb/3.2.15/bin/mongos 2017-07-26T11:59:41.627+1000 F - [conn6] 0126e000-012af000 rw-p 00e6e000 fd:01 3547010 /usr/local/sw/mongodb/3.2.15/bin/mongos 2017-07-26T11:59:41.627+1000 F - [conn6] 012af000-01308000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 01beb000-026ec000 rw-p 00000000 00:00 0 [heap] 2017-07-26T11:59:41.627+1000 F - [conn6] 026ec000-027ec000 rw-p 00000000 00:00 0 [heap] 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4980c000-7fda4980d000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4980d000-7fda4990d000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4990d000-7fda4990e000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4990e000-7fda49a0e000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda49a0e000-7fda49a0f000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda49a0f000-7fda4a20f000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4a20f000-7fda4a210000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4a210000-7fda4aa10000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4aa10000-7fda4aa11000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4aa11000-7fda4b211000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4b211000-7fda4b212000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4b212000-7fda4ba12000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4ba12000-7fda4ba13000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4ba13000-7fda4c213000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4c213000-7fda4c214000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4c214000-7fda4ca14000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4ca14000-7fda4ca1f000 r-xp 00000000 fd:01 1190193 /lib/x86_64-linux-gnu/libnss_files-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4ca1f000-7fda4cc1e000 ---p 0000b000 fd:01 1190193 /lib/x86_64-linux-gnu/libnss_files-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4cc1e000-7fda4cc1f000 r--p 0000a000 fd:01 1190193 /lib/x86_64-linux-gnu/libnss_files-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4cc1f000-7fda4cc20000 rw-p 0000b000 fd:01 1190193 /lib/x86_64-linux-gnu/libnss_files-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4cc20000-7fda4cc26000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4cc26000-7fda4cc27000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4cc27000-7fda4d427000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4d427000-7fda4d428000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4d428000-7fda4dc28000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4dc28000-7fda4dc29000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4dc29000-7fda4e429000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4e429000-7fda4e42a000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4e42a000-7fda4ec2a000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4ec2a000-7fda4ec2b000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4ec2b000-7fda4f42b000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4f42b000-7fda4f42c000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4f42c000-7fda4fc2c000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4fc2c000-7fda4fc2d000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda4fc2d000-7fda5042d000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5042d000-7fda5042e000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5042e000-7fda50c2e000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda50c2e000-7fda50c2f000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda50c2f000-7fda5142f000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5142f000-7fda51708000 r--p 00000000 fd:01 3542647 /usr/lib/locale/locale-archive 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51708000-7fda518c8000 r-xp 00000000 fd:01 1190212 /lib/x86_64-linux-gnu/libc-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda518c8000-7fda51ac8000 ---p 001c0000 fd:01 1190212 /lib/x86_64-linux-gnu/libc-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51ac8000-7fda51acc000 r--p 001c0000 fd:01 1190212 /lib/x86_64-linux-gnu/libc-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51acc000-7fda51ace000 rw-p 001c4000 fd:01 1190212 /lib/x86_64-linux-gnu/libc-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51ace000-7fda51ad2000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51ad2000-7fda51aea000 r-xp 00000000 fd:01 1190195 /lib/x86_64-linux-gnu/libpthread-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51aea000-7fda51ce9000 ---p 00018000 fd:01 1190195 /lib/x86_64-linux-gnu/libpthread-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51ce9000-7fda51cea000 r--p 00017000 fd:01 1190195 /lib/x86_64-linux-gnu/libpthread-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51cea000-7fda51ceb000 rw-p 00018000 fd:01 1190195 /lib/x86_64-linux-gnu/libpthread-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51ceb000-7fda51cef000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51cef000-7fda51d05000 r-xp 00000000 fd:01 1184437 /lib/x86_64-linux-gnu/libgcc_s.so.1 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51d05000-7fda51f04000 ---p 00016000 fd:01 1184437 /lib/x86_64-linux-gnu/libgcc_s.so.1 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51f04000-7fda51f05000 rw-p 00015000 fd:01 1184437 /lib/x86_64-linux-gnu/libgcc_s.so.1 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda51f05000-7fda5200d000 r-xp 00000000 fd:01 1190207 /lib/x86_64-linux-gnu/libm-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5200d000-7fda5220c000 ---p 00108000 fd:01 1190207 /lib/x86_64-linux-gnu/libm-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5220c000-7fda5220d000 r--p 00107000 fd:01 1190207 /lib/x86_64-linux-gnu/libm-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5220d000-7fda5220e000 rw-p 00108000 fd:01 1190207 /lib/x86_64-linux-gnu/libm-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5220e000-7fda52211000 r-xp 00000000 fd:01 1190201 /lib/x86_64-linux-gnu/libdl-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52211000-7fda52410000 ---p 00003000 fd:01 1190201 /lib/x86_64-linux-gnu/libdl-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52410000-7fda52411000 r--p 00002000 fd:01 1190201 /lib/x86_64-linux-gnu/libdl-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52411000-7fda52412000 rw-p 00003000 fd:01 1190201 /lib/x86_64-linux-gnu/libdl-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52412000-7fda52419000 r-xp 00000000 fd:01 1190198 /lib/x86_64-linux-gnu/librt-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52419000-7fda52618000 ---p 00007000 fd:01 1190198 /lib/x86_64-linux-gnu/librt-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52618000-7fda52619000 r--p 00006000 fd:01 1190198 /lib/x86_64-linux-gnu/librt-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52619000-7fda5261a000 rw-p 00007000 fd:01 1190198 /lib/x86_64-linux-gnu/librt-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda5261a000-7fda52834000 r-xp 00000000 fd:01 1179883 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52834000-7fda52a33000 ---p 0021a000 fd:01 1179883 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52a33000-7fda52a4f000 r--p 00219000 fd:01 1179883 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52a4f000-7fda52a5b000 rw-p 00235000 fd:01 1179883 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52a5b000-7fda52a5e000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52a5e000-7fda52abc000 r-xp 00000000 fd:01 1179884 /lib/x86_64-linux-gnu/libssl.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52abc000-7fda52cbc000 ---p 0005e000 fd:01 1179884 /lib/x86_64-linux-gnu/libssl.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52cbc000-7fda52cc0000 r--p 0005e000 fd:01 1179884 /lib/x86_64-linux-gnu/libssl.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52cc0000-7fda52cc7000 rw-p 00062000 fd:01 1179884 /lib/x86_64-linux-gnu/libssl.so.1.0.0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52cc7000-7fda52ced000 r-xp 00000000 fd:01 1190190 /lib/x86_64-linux-gnu/ld-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52dbe000-7fda52dbf000 ---p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52dbf000-7fda52ebf000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52ebf000-7fda52ec5000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52ee3000-7fda52eea000 r--s 00000000 fd:01 3814927 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52eea000-7fda52eec000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52eec000-7fda52eed000 r--p 00025000 fd:01 1190190 /lib/x86_64-linux-gnu/ld-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52eed000-7fda52eee000 rw-p 00026000 fd:01 1190190 /lib/x86_64-linux-gnu/ld-2.23.so 2017-07-26T11:59:41.627+1000 F - [conn6] 7fda52eee000-7fda52eef000 rw-p 00000000 00:00 0 2017-07-26T11:59:41.627+1000 F - [conn6] 7ffe786c1000-7ffe786e2000 rw-p 00000000 00:00 0 [stack] 2017-07-26T11:59:41.627+1000 F - [conn6] 7ffe787c9000-7ffe787cb000 r--p 00000000 00:00 0 [vvar] 2017-07-26T11:59:41.627+1000 F - [conn6] 7ffe787cb000-7ffe787cd000 r-xp 00000000 00:00 0 [vdso] 2017-07-26T11:59:41.627+1000 F - [conn6] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] Desired behaviour (error, 3.4): kev@basique:~$ mlaunch init --single --sharded 1 --port 12345 launching: mongod on port 12346 launching: config server on port 12347 replica set 'configRepl' initialized. launching: mongos on port 12345 adding shards.   kev@basique:~$ mongo --port 12345 MongoDB shell version v3.4.6 connecting to: mongodb://127.0.0.1:12345/ MongoDB server version: 3.4.6 connection to 127.0.0.1:12345, version 3.4.6 db: test (127.0.0.1:12345/test)mongos > db.enableSharding() { "ok" : 1 } (127.0.0.1:12345/test)mongos > db.test.shardCollection({_id:1}) { "collectionsharded" : "test.test", "ok" : 1 } (127.0.0.1:12345/test)mongos > bye   kev@basique:~$ mlaunch stop mongos 1 node stopped.   kev@basique:~$ mongo --port 12347 MongoDB shell version v3.4.6 connecting to: mongodb://127.0.0.1:12347/ MongoDB server version: 3.4.6 connection to 127.0.0.1:12347, version 3.4.6 db: test (127.0.0.1:12347/test)configRepl:PRIMARY > use config switched to db config (127.0.0.1:12347/config)configRepl:PRIMARY > db.shards.find() { "_id" : "shard01", "host" : "basique:12346", "state" : 1 } (127.0.0.1:12347/config)configRepl:PRIMARY > db.chunks.find() { "_id" : "test.test-_id_MinKey", "ns" : "test.test", "min" : { "_id" : { "$minKey" : 1 } }, "max" : { "_id" : { "$maxKey" : 1 } }, "shard" : "shard01", "lastmod" : Timestamp(1, 0), "lastmodEpoch" : ObjectId("5977f417e83ec898387411d8") } (127.0.0.1:12347/config)configRepl:PRIMARY > db.chunks.update({}, {$set:{shard:"nonexist"}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) (127.0.0.1:12347/config)configRepl:PRIMARY > bye   kev@basique:~$ mlaunch start mongos launching: mongos on port 12345   kev@basique:~$ mongo --port 12345 MongoDB shell version v3.4.6 connecting to: mongodb://127.0.0.1:12345/ MongoDB server version: 3.4.6 connection to 127.0.0.1:12345, version 3.4.6 db: test (127.0.0.1:12345/test)mongos > db.test.find() Error: error: { "ok" : 0, "errmsg" : "Shard nonexist not found", "code" : 70, "codeName" : "ShardNotFound" } (127.0.0.1:12345/test)mongos >

Top User Comments

xgen-internal-githook commented on Fri, 28 Jul 2017 21:05:57 +0000: Author: {'email': 'kaloian.manassiev@mongodb.com', 'username': 'kaloianm', 'name': 'Kaloian Manassiev'} Message: SERVER-30333 Uassert if chunk metadata references an invalid shard ... instead of dereferencing a null pointer. Branch: v3.2 https://github.com/mongodb/mongo/commit/3262710483e03495606cb2d990ceab132623ffb4

Additional Resources / Links

Share:

BugZero Risk Score

Coming soon

Status

Closed

Have you been affected by this bug?

cost-cta-background

Do you know how much operational outages are costing you?

Understand the cost to your business and how BugZero can help you reduce those costs.

Discussion

Login to read and write comments.

Have you ever...

had your data corrupted from a

VMware

bug?

Search:

...