foundationdb/design
Andrew Noyes 0a15f081a1
Proactively clean up idempotency ids for successful commits (#8578)
* Proactively clean up idempotency ids for successful commits

This change also includes some minor changes from my branch working on
an idempotency ids cleaner, that I'd like to get merged sooner rather
than later.

- Adding a timestamp to idempotency values
- Making IdempotencyId an actor file
- Adding commit_unknown_result_fatal
- Checking idempotencyIdsExpiredVersion in determineCommitStatus
- Some testing QOL changes

* Factor out decodeIdempotencyKey logic

* Fix formatting

* Update flow/include/flow/error_definitions.h

Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>

* Use KeyBackedObjectProperty for idempotencyIdsExpiredVersion

* Add IDEMPOTENCY_ID_IN_MEMORY_LIFETIME knob

* Rename ExpireIdempotencyKeyValuePairRequest

Also add a code probe for the case where an ExpireIdempotencyIdRequest is
received before the count is known, and add an assert

* Fix formatting and add TODO for nwijetunga

Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
2022-10-28 09:07:54 -07:00
..
Commit Update the document per comments III 2021-03-22 10:36:45 -07:00
LoadBalancing fixup! Update documentation per comments 2022-07-15 17:21:41 -07:00
backup-dataFormat.md Snapshot Backup Encryption (#8095) 2022-09-29 14:45:47 -07:00
backup.md fix typo 2021-06-28 11:14:55 +08:00
backup_v2_partitioned_logs.md Update backup documentation with cluster recovery 2022-01-18 11:37:11 -08:00
data-distributor-internals.md Apply suggestions from code review 2022-08-12 13:33:12 -07:00
dynamic-knobs.md fdbcli: Add documentation for setknob/getknob commands 2022-10-11 15:32:01 -07:00
encryption-data-at-rest.md FDB Encryption data at-rest design documentation (#6629) 2022-03-28 16:37:00 -07:00
flow_transport.md add design markdown 2020-10-26 20:40:01 +00:00
global-tag-throttling.md Addressed review comments 2022-10-14 11:54:38 -07:00
idempotency_ids.md Proactively clean up idempotency ids for successful commits (#8578) 2022-10-28 09:07:54 -07:00
recovery-internals.md Update backup documentation with cluster recovery 2022-01-18 11:37:11 -08:00
special-key-space.md Convert literal string ref instances to use _sr suffix 2022-09-19 11:35:58 -07:00
tlog-forward-compatibility.md.html Add design doc for TLog forward compatibility. 2020-04-12 17:51:21 -07:00
tlog-spilling.md.html Fix a bunch of places where we used old-style arguments. Allow hyphens for profiler args. 2021-12-14 09:59:14 -08:00
transaction-state-store.md Update txnStateStore doc with new CC initiated recovery 2022-01-07 13:29:31 -08:00
tuple.md Corrects spelling mistakes in various markdown files. 2020-06-28 21:30:34 -07:00