[SERVER-50481] Make _vectorClockPersist command nicely fail on non-sharded nodes Created: 21/Aug/20  Updated: 29/Oct/23  Resolved: 25/Aug/20

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 4.7.0

Type: Bug Priority: Major - P3
Reporter: Pierlauro Sciarelli Assignee: Pierlauro Sciarelli
Resolution: Fixed Votes: 0
Labels: PM-1645-Milestone-3
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2020-09-07
Participants:
Linked BF Score: 14

 Description   

The _vectorClockPersist command should be blacklisted from fuzzers in order to avoid failures: it's wrong to invoke it arbitrarily and with random parameters.

Repurpose: if called in non-sharded nodes, the command currently leads to a crash because the Grid executor pool is not initialized. It should be checked the cluster role before invoking the persisting procedure.



 Comments   
Comment by Githook User [ 25/Aug/20 ]

Author:

{'name': 'Pierlauro Sciarelli', 'email': 'pierlauro.sciarelli@mongodb.com', 'username': 'pierlauro'}

Message: SERVER-50481 Make _vectorClockPersist command nicely fail on non-sharded nodes
Branch: master
https://github.com/mongodb/mongo/commit/0439b7a1bf50e7dadb57da6497b4baede1974147

Comment by Kaloian Manassiev [ 24/Aug/20 ]

Moving this to M3 of PM-1645, since it was introduced there.

Comment by Kaloian Manassiev [ 24/Aug/20 ]

Instead of blacklisting the command from the fuzzers, we should make the command itself error nicely if called inappropriately (say in a non-sharded node, etc). As general rule, regardless of what the fuzzers do, we should never have commands, which crash the node or otherwise put it in a damaged state (where damaged is defined as something unrelated to the purpose of the command).

Generated at Thu Feb 08 05:22:46 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.