[SERVER-64358] Server-side rewrite for update and delete commands on mongos Created: 09/Mar/22  Updated: 29/Oct/23  Resolved: 30/Mar/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 6.0.0-rc0

Type: Task Priority: Major - P3
Reporter: Davis Haupt (Inactive) Assignee: Davis Haupt (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by SERVER-63296 Server-side rewrite for delete comman... Closed
Backwards Compatibility: Fully Compatible
Sprint: QO 2022-03-21, QO 2022-04-04
Participants:

 Description   

From the design:

Update and delete are both write commands which are handled through the BatchedCommandRequest class. The "q" field on UpdateOpEntry and DeleteOpEntry contains the BSON for a MatchExpression. If there may be FLE2 rewrites to be done, after update and delete commands are parsed we will add a transformation pass similar to findAndModify which will take in BSON for a MatchExpression and return BSON for the rewritten MatchExpression, calling rewriteQueryOnEncryptedFields() on the parsed MatchExpression. This rewritten match expression will be inserted into the parsed request document and returned from the parsing functions.



 Comments   
Comment by Githook User [ 30/Mar/22 ]

Author:

{'name': 'Davis Haupt', 'email': 'davis.haupt@mongodb.com', 'username': 'davish'}

Message: SERVER-64358 Rewrite for delete and update commands on mongos
Branch: master
https://github.com/mongodb/mongo/commit/aef0b4ad970c8382a6108fbd9bc2c6f39e27fa39

Comment by Githook User [ 30/Mar/22 ]

Author:

{'name': 'Davis Haupt', 'email': 'davis.haupt@mongodb.com', 'username': 'davish'}

Message: SERVER-64358 integration tests for server-side rewrite for update and delete commands on mongos
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/1d73fa0c390592bb913a2a0f5c8fbb2bcf71cd58

Comment by Davis Haupt (Inactive) [ 30/Mar/22 ]

https://spruce.mongodb.com/version/62448b361e2d176c27e3e502/tasks

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