[SERVER-83830] On Enterprise build creating a collection in a replica set with the storageEngine.inMemory option breaks secondaries Created: 02/Dec/23  Updated: 24/Jan/24  Resolved: 14/Dec/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: 7.1.1, 4.4.26, 7.0.4, 6.0.13, 5.0.24, 7.2.0
Fix Version/s: 7.2.1, 7.3.0-rc0, 7.0.5, 6.0.13, 5.0.24, 4.4.28

Type: Bug Priority: Critical - P2
Reporter: Dmitry Ryabtsev Assignee: Benety Goh
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
Related
is related to SERVER-68122 Investigate replicating the collectio... Closed
is related to SERVER-73182 [Optimization] Make analyzeShardKey c... Closed
Assigned Teams:
Storage Execution
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v7.2, v7.1, v7.0, v6.0, v5.0, v4.4
Steps To Reproduce:

1. Create a replica set
2. Connect to the Primary and run:

db.createCollection("col1", { storageEngine: { inMemory: { engineConfig: { inMemorySizeGB: 5 } } } });

3. Watch how all secondaries crash

Sprint: Execution Team 2023-12-11, Execution Team 2023-12-25
Participants:
Case:
Linked BF Score: 120

 Description   

All secondaries can be broken with a single createCollection command:

{"t":{"$date":"2023-12-02T14:55:21.692+11:00"},"s":"F",  "c":"REPL",     "id":21235,   "ctx":"OplogApplier-0","msg":"Failed to apply batch of operations","attr":{"numOperationsInBatch":1,"firstOperation":{"op":"c","ns":"test.$cmd","ui":{"$uuid":"75672829-4c0b-4319-9171-646e0efc1822"},"o":{"create":"coll1","storageEngine":{"inMemory":{"engineConfig":{"inMemorySizeGB":5.0}}},"idIndex":{"v":2,"key":{"_id":1},"name":"_id_"}},"ts":{"$timestamp":{"t":1701489321,"i":1}},"t":3,"v":2,"wall":{"$date":"2023-12-02T03:55:21.689Z"}},"lastOperation":{"op":"c","ns":"test.$cmd","ui":{"$uuid":"75672829-4c0b-4319-9171-646e0efc1822"},"o":{"create":"coll1","storageEngine":{"inMemory":{"engineConfig":{"inMemorySizeGB":5.0}}},"idIndex":{"v":2,"key":{"_id":1},"name":"_id_"}},"ts":{"$timestamp":{"t":1701489321,"i":1}},"t":3,"v":2,"wall":{"$date":"2023-12-02T03:55:21.689Z"}},"failedWriterThread":4,"error":"InvalidOptions: Expected \"wiredTiger\" field, but got: inMemory"}}

This issue does not exist in MongoDB Community, only in MongoDB Enterprise.



 Comments   
Comment by Githook User [ 05/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 clean up StorageEngine::getSanitizedStorageOptionsForSecondaryReplication() return type

(cherry picked from commit 667e21d6f22213031d46f5e50ba9ee9e51e88d3e)
(cherry picked from commit a38962c5662ef23f5ee79e9654fd30f32be6c8cf)

GitOrigin-RevId: 61c2baf63a060f7c12bd76e779044800ae18710b
Branch: v4.4
https://github.com/mongodb/mongo/commit/1ace92b91d805dfafe0fb5bc40804c00272842cf

Comment by Githook User [ 05/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 add js test for checking in-memory config strings at collection creation

(cherry picked from commit 25fac641ec970cbdc55238769a1f2743bfb3408b)
(cherry picked from commit 7397c69b73d1e981ef61e163330954754fd74d45)

GitOrigin-RevId: 7e5e3227fd1b05cf4fb5869522c89128b3a2cf83
Branch: v4.4
https://github.com/mongodb/mongo/commit/3dfb4a6a8ee96aa5ee98dcdd02859ce2d1a3e3a1

Comment by Githook User [ 04/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 preserve non-WT when sanitizing storage engine options

(cherry picked from commit abdd1a29d1a72a4bbf92f0da3dfdda7214a0c644)
(cherry picked from commit 7c6acdf4ad15534368fca10fabe44b1438f98f6e)

GitOrigin-RevId: 5ecf7da4b08f53ebe12bc68c5ceba58b9b2849c4
Branch: v4.4
https://github.com/mongodb/mongo/commit/59fc2a3283e73f55f4b47449364e9013617dcf62

Comment by Githook User [ 04/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 clean up StorageEngine::getSanitizedStorageOptionsForSecondaryReplication() return type

(cherry picked from commit 667e21d6f22213031d46f5e50ba9ee9e51e88d3e)
(cherry picked from commit a31c055f34dff711794fdfa63d3b278806638566)
(cherry picked from commit 09a6014a59710f845b96b4035af74c53676d884f)

GitOrigin-RevId: a38962c5662ef23f5ee79e9654fd30f32be6c8cf
Branch: v5.0
https://github.com/mongodb/mongo/commit/9a1a8a852e51d27825c38d9a9f45881171e9bc17

Comment by Githook User [ 04/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 add js test for checking in-memory config strings at collection creation

(cherry picked from commit 25fac641ec970cbdc55238769a1f2743bfb3408b)

GitOrigin-RevId: 7397c69b73d1e981ef61e163330954754fd74d45
Branch: v5.0
https://github.com/mongodb/mongo/commit/96557077398ba0775e591576f7cb05745d4ecdc2

Comment by Githook User [ 04/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 preserve non-WT when sanitizing storage engine options

(cherry picked from commit abdd1a29d1a72a4bbf92f0da3dfdda7214a0c644)

GitOrigin-RevId: 7c6acdf4ad15534368fca10fabe44b1438f98f6e
Branch: v5.0
https://github.com/mongodb/mongo/commit/be635de70b7d9f48b702bfc540cf7162690b028a

Comment by Githook User [ 03/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 clean up StorageEngine::getSanitizedStorageOptionsForSecondaryReplication() return type

(cherry picked from commit 667e21d6f22213031d46f5e50ba9ee9e51e88d3e)
(cherry picked from commit a31c055f34dff711794fdfa63d3b278806638566)

GitOrigin-RevId: 09a6014a59710f845b96b4035af74c53676d884f
Branch: v6.0
https://github.com/mongodb/mongo/commit/35af1b8307d1cac7697b243de70aeeddf7e435c8

Comment by Githook User [ 03/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 add js test for checking in-memory config strings at collection creation

(cherry picked from commit 25fac641ec970cbdc55238769a1f2743bfb3408b)
(cherry picked from commit c5cf5bfc43352e92ea6d51b130a863b7f488547f)

GitOrigin-RevId: 29b7ea5a3dbf3a5e53514e36d3166f52078fabe5
Branch: v6.0
https://github.com/mongodb/mongo/commit/892ffdfcd7077f90be656fded5b5ec1bb00ed2b2

Comment by Githook User [ 03/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 preserve non-WT when sanitizing storage engine options

(cherry picked from commit abdd1a29d1a72a4bbf92f0da3dfdda7214a0c644)
(cherry picked from commit 4ac7ea1a162ab1fb3b616e6033d2cb0f29c9f49c)

GitOrigin-RevId: 015587ffe5fcb206af73695c438dc95f0fd7ee79
Branch: v6.0
https://github.com/mongodb/mongo/commit/59e35761afa941b8f8c8335a8f17e5ebcf0319ba

Comment by Githook User [ 03/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 clean up StorageEngine::getSanitizedStorageOptionsForSecondaryReplication() return type

(cherry picked from commit 667e21d6f22213031d46f5e50ba9ee9e51e88d3e)
Branch: v7.2
https://github.com/mongodb/mongo/commit/11be1809808beb32f711e03a062171d4c920c67a

Comment by Githook User [ 02/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 add js test for checking in-memory config strings at collection creation

(cherry picked from commit 25fac641ec970cbdc55238769a1f2743bfb3408b)
Branch: v7.2
https://github.com/mongodb/mongo/commit/13430e36639cfd0bcd1e12795fbdfbb321f84c20

Comment by Githook User [ 02/Jan/24 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 preserve non-WT when sanitizing storage engine options

GitOrigin-RevId: abdd1a29d1a72a4bbf92f0da3dfdda7214a0c644
(cherry picked from commit e2c97b7b9f55f18ca566c7cd11a2a431c1e3d6f4)
Branch: v7.2
https://github.com/mongodb/mongo/commit/d7265c37d7062c9efafe6a35e1c621fa3e151821

Comment by Githook User [ 15/Dec/23 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 clean up StorageEngine::getSanitizedStorageOptionsForSecondaryReplication() return type

(cherry picked from commit 667e21d6f22213031d46f5e50ba9ee9e51e88d3e)

GitOrigin-RevId: a31c055f34dff711794fdfa63d3b278806638566
Branch: v7.0
https://github.com/mongodb/mongo/commit/685989de68698107153c158b6e8a1d10c6a292db

Comment by Githook User [ 15/Dec/23 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 add js test for checking in-memory config strings at collection creation

(cherry picked from commit 25fac641ec970cbdc55238769a1f2743bfb3408b)

GitOrigin-RevId: c5cf5bfc43352e92ea6d51b130a863b7f488547f
Branch: v7.0
https://github.com/mongodb/mongo/commit/c40bd6170da4404355853083a992fc4c006904c0

Comment by Githook User [ 15/Dec/23 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 preserve non-WT when sanitizing storage engine options

(cherry picked from commit abdd1a29d1a72a4bbf92f0da3dfdda7214a0c644)

GitOrigin-RevId: 4ac7ea1a162ab1fb3b616e6033d2cb0f29c9f49c
Branch: v7.0
https://github.com/mongodb/mongo/commit/e02c924abe3f82771781c06944e548634056b3c2

Comment by Githook User [ 14/Dec/23 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 clean up StorageEngine::getSanitizedStorageOptionsForSecondaryReplication() return type

GitOrigin-RevId: 667e21d6f22213031d46f5e50ba9ee9e51e88d3e
Branch: master
https://github.com/mongodb/mongo/commit/4a94fc2307ecf4763d7206df95c872e26b0b913a

Comment by Githook User [ 13/Dec/23 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 add js test for checking in-memory config strings at collection creation

GitOrigin-RevId: 25fac641ec970cbdc55238769a1f2743bfb3408b
Branch: master
https://github.com/mongodb/mongo/commit/5ad9151335facb3a84f8ad316db60e490f18ff20

Comment by Githook User [ 12/Dec/23 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-83830 preserve non-WT when sanitizing storage engine options

GitOrigin-RevId: abdd1a29d1a72a4bbf92f0da3dfdda7214a0c644
Branch: master
https://github.com/mongodb/mongo/commit/e2c97b7b9f55f18ca566c7cd11a2a431c1e3d6f4

Comment by Steven Vannelli [ 05/Dec/23 ]

Assigning to benety.goh@mongodb.com for an initial investigation this sprint. 

Generated at Thu Feb 08 06:53:16 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.