[SERVER-66973] Eagerly reap config.transactions entries for retryable sessions Created: 02/Jun/22 Updated: 29/Oct/23 Resolved: 07/Jun/22 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 6.0.0-rc9, 6.1.0-rc0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Jack Mulrow | Assignee: | Jack Mulrow |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Backport Requested: |
v6.0
|
||||||||||||
| Sprint: | Sharding NYC 2022-06-13 | ||||||||||||
| Participants: | |||||||||||||
| Description |
|
Sessions spawned to run transactions for retryable writes encode the write's txnNumber in their session id. When a new retryable write / transaction for that same session arrives with a higher txnNumber, previous sessions can no longer be used, so we are free to reap their config.transactions entries. This should be done more eagerly than waiting for the config.system.sessions entry to expire, since a long running session may run many retryable writes that could each require a transaction and create a config.transactions entry. |
| Comments |
| Comment by Githook User [ 07/Jun/22 ] |
|
Author: {'name': 'Jack Mulrow', 'email': 'jack.mulrow@mongodb.com', 'username': 'jsmulrow'}Message: (cherry picked from commit 77e9ff7fd5e822ed2c560db2f601648a6dd58abf) |
| Comment by Githook User [ 07/Jun/22 ] |
|
Author: {'name': 'Jack Mulrow', 'email': 'jack.mulrow@mongodb.com', 'username': 'jsmulrow'}Message: |