[SERVER-45146] The OplogBatcher loop should retry on WriteConflictExceptions Created: 13/Dec/19  Updated: 29/Oct/23  Resolved: 18/Dec/19

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

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

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Execution Team 2019-12-16, Execution Team 2019-12-30
Participants:
Linked BF Score: 20

 Description   

There are a few places in OplogBatcher::_run that access the storage engine, like getBatchLimitOplogBytes(), which reads from the DurableCatalog.

WT may occasionally return WT_ROLLBACK for reads when the cache is full, so this internal thread needs to be able to handle the possibility of a WriteConflictException without it escaping.



 Comments   
Comment by Githook User [ 18/Dec/19 ]

Author:

{'name': 'Louis Williams', 'email': 'louis.williams@mongodb.com', 'username': 'louiswilliams'}

Message: SERVER-45146 StorageInterfaceImpl::getOplogMaxSize should handle WriteConflictExceptions
Branch: master
https://github.com/mongodb/mongo/commit/a51becd4906387e4a90c31fa5edd48e803a34fd4

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