Commit 23707d3
committed
fix(dynamodb): harden transaction ordering and drop dangling plan references
Addresses review feedback on floci-io#572:
* Replace the delimited-string ordering key for transactWriteItems with a
Comparator over TransactParticipant tuples. User-supplied PK/SK bytes can
contain any character, so "storageKey + \0 + itemKey" is not an injective
ordering — tuple comparison avoids the collision risk entirely.
* Release a table's item locks alongside itemsByTable / itemStore in
deleteTable so the registry tracks the table's lifetime instead of growing
unboundedly across create/drop cycles.
* Remove Javadoc and inline comment references to PLAN-dynamodb-concurrency.md,
which was a local working doc and was never committed. Issue floci-io#571 stays as
the public reference.1 parent 38b52da commit 23707d3
3 files changed
Lines changed: 16 additions & 8 deletions
File tree
- compatibility-tests/sdk-test-java/src/test/java/com/floci/test
- src
- main/java/io/github/hectorvent/floci/services/dynamodb
- test/java/io/github/hectorvent/floci/services/dynamodb
Lines changed: 1 addition & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | | - | |
47 | | - | |
| 46 | + | |
48 | 47 | | |
49 | 48 | | |
50 | 49 | | |
| |||
Lines changed: 14 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
| |||
40 | 41 | | |
41 | 42 | | |
42 | 43 | | |
43 | | - | |
44 | | - | |
| 44 | + | |
| 45 | + | |
45 | 46 | | |
46 | 47 | | |
47 | 48 | | |
| |||
209 | 210 | | |
210 | 211 | | |
211 | 212 | | |
| 213 | + | |
212 | 214 | | |
213 | 215 | | |
214 | 216 | | |
| |||
670 | 672 | | |
671 | 673 | | |
672 | 674 | | |
673 | | - | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
674 | 680 | | |
675 | 681 | | |
676 | 682 | | |
677 | | - | |
678 | | - | |
| 683 | + | |
679 | 684 | | |
680 | 685 | | |
681 | 686 | | |
| |||
737 | 742 | | |
738 | 743 | | |
739 | 744 | | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
740 | 749 | | |
741 | 750 | | |
742 | 751 | | |
| |||
src/test/java/io/github/hectorvent/floci/services/dynamodb/DynamoDbConcurrencyIntegrationTest.java
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
| 41 | + | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
| |||
0 commit comments