Details
-
Bug
-
Resolution: Fixed
-
Unknown
-
None
-
None
-
None
Description
Summary
1. If both the original and retry return errors with the NoWritesPerformed label, the operation returns nil.
Here is a failing test reproducing the issue: https://github.com/kevinAlbs/mongo-go-driver/commit/ed23feeaaa69e7b7a47c2553c6a7866a595b57d9
2. The stored prevIndefiniteErr does not undergo further error processing. For example, the following is skipped when storing the prevIndefiniteErr:
if batching && len(tt.WriteErrors) > 0 && currIndex > 0 {
|
for i := range tt.WriteErrors {
|
tt.WriteErrors[i].Index += int64(currIndex)
|
}
|
}
|
That may result in incorrect Index if the prevIndefiniteErr is returned.
Attachments
Issue Links
- depends on
-
DRIVERS-2501 Break NoWritesPerformed-Only Error Sequence
-
- Implementing
-
- is caused by
-
GODRIVER-2516 Propagate Original Error for Write Errors Labeled NoWritesPerformed
-
- Closed
-
- is duplicated by
-
GODRIVER-2670 Break NoWritesPerformed-Only Error Sequence
-
- Closed
-
- related to
-
DRIVERS-2501 Break NoWritesPerformed-Only Error Sequence
-
- Implementing
-