[SERVER-78702] Consolidate WriteConflictException and related exceptions into an error category Created: 06/Jul/23 Updated: 18/Jul/23 |
|
| Status: | Open |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Josef Ahmad | Assignee: | Backlog - Service Architecture |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | techdebt | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Service Arch
|
||||||||
| Sprint: | Service Arch Prioritized List | ||||||||
| Participants: | |||||||||
| Description |
|
The code base relies heavily on WriteConflictException, TemporarilyUnavailableException and TransactionTooLargeForCacheException deriving from DBException. Defining an error category for these exceptions today would cause those exceptions to derive from AssertionException instead. This is problematic because locations that catch AssertionExceptions will also start catching these exceptions; this is not desirable as it'll prevent these exceptions from bubbling up to their intended handler (e.g., writeConflictRetry). |