[CDRIVER-3313] Bulk writes that undergo a retryable write will not use the newly selected server on later commands Created: 12/Aug/19  Updated: 28/Oct/23  Resolved: 06/Jan/20

Status: Closed
Project: C Driver
Component/s: Bulk API, libmongoc
Affects Version/s: None
Fix Version/s: 1.16.0

Type: Bug Priority: Major - P3
Reporter: Kevin Albertson Assignee: Kevin Albertson
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

If a bulk write undergoes a retryable write, we select the new server here.

However, the bulk operation loop is not made aware of that newly selected server, and reuses the original server id. If that server has stepped down, than it's likely we'll fail the subsequent commands for the same reason (causing another retryable write).



 Comments   
Comment by Githook User [ 06/Jan/20 ]

Author:

{'name': 'Kevin Albertson', 'email': 'kevin.albertson@mongodb.com', 'username': 'kevinAlbs'}

Message: CDRIVER-3313 reuse server in bulk after retry

If a retry occurs in a bulk write, track that server for subsequent
commands in the bulk write.
Branch: master
https://github.com/mongodb/mongo-c-driver/commit/ec3e8cdf5f58448c4e05a0c85ec6d08492daa886

Generated at Wed Feb 07 21:17:40 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.