[SERVER-17409] legacy update path cleanup Created: 27/Feb/15  Updated: 06/Dec/22

Status: Backlog
Project: Core Server
Component/s: Write Ops
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Minor - P4
Reporter: David Storch Assignee: Backlog - Query Execution
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-17276 WriteConflictException retry loops ne... Closed
Assigned Teams:
Query Execution
Participants:

 Description   

There are a few improvements to the update path for legacy writes (see receivedUpdate in instance.cpp) which we should consider.

  1. There is a separate WriteConflictException retry loop for the collection creation case, i.e. upsert into an empty collection. We should be able to consolidate this into a single retry loop.
  2. The catch block for WriteConflictException logs and then re-throws the exception if it is a multi-update. The UpdateStage, however, should be responsible for catching WriteConflictException in the multi-update case.

Generated at Thu Feb 08 03:44:20 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.