Operational Defect Database

BugZero found this defect 48 days ago.

MongoDB | 2627995

Replica set endpoint doesn't return "TransientTransactionError" label for a write command that is run against a secondary

Last update date:

4/1/2024

Affected products:

MongoDB Server

Affected releases:

No affected releases provided.

Fixed releases:

No fixed releases provided.

Description:

Info

Before forcing a write command to go through the router, the replica set endpoint does a pre-check to ensure that the node is a primary. This check is performed "too early", i.e. not inside the ServiceEntryPoint which has the code to attach the error labels (e.g. here and here). Not returning the "TransientTransactionError" label means that the drivers wouldn't retry the transaction on behalf of the user. So this needs to be fixed. NB: This pre-check also affects error labeling in general (e.g. "RetryableWriteError").

Top User Comments


Steps to Reproduce


Additional Resources / Links

Share:

BugZero® Risk Score

What's this?

Coming soon

Status

In Code Review

Learn More

Search:

...