[
{
type: 'put',
domain: this.nodeGraphBucketsDbDomain,
key: bucketIndex,
value: {'Z':9.9.9.9, 'A':1.1.1.1},
},
{
type: 'put',
domain: this.nodeGraphBucketsDbDomain,
key: bucketIndex,
value: {'Z':9.9.9.9, 'B':2.2.2.2},
},
{
type: 'put',
domain: this.nodeGraphBucketsDbDomain,
key: bucketIndex,
value: {'Z':9.9.9.9, 'C':3.3.3.3},
},
]
Specification
There's currently an issue of "read-after-write" consistency with sequences of batch operations in the
NodeGraphbuckets database, assetNodeoperations rely on the state of the bucket on insertion.This problem can be solved by utilising the same system in js-encryptedfs. We'd need to use:
Transactionsnapshot systemIn this process, it would also be worthwhile to change our keys to be buffers.
Additional context
Transactionoverview at 11:00Tasks
TransactionclassNodeGraphoperationslexicographic-integerdependency from PK (see original comments regarding this here https://gitlab.com/MatrixAI/Engineering/Polykey/js-polykey/-/merge_requests/205#note_707121227)