Remove sorted/canonicalized requirement for reads

This commit is contained in:
2024-01-31 12:45:14 -08:00
parent e527e198c6
commit e9d4403f3c

View File

@@ -38,9 +38,7 @@ struct __attribute__((__visibility__("default"))) ConflictSet {
* calls to `addWrites` */ * calls to `addWrites` */
int64_t writeVersion; int64_t writeVersion;
}; };
/** `reads` must be sorted ascending, and must not have adjacent or /** The result of checking reads[i] is written in results[i]. */
* overlapping ranges. The result of checking reads[i] is written in
* results[i]. */
void check(const ReadRange *reads, Result *results, int count) const; void check(const ReadRange *reads, Result *results, int count) const;
/** `writes` must be sorted ascending, and must not have adjacent or /** `writes` must be sorted ascending, and must not have adjacent or
* overlapping ranges. Reads intersecting writes where readVersion < * overlapping ranges. Reads intersecting writes where readVersion <
@@ -107,8 +105,7 @@ typedef struct {
int64_t writeVersion; int64_t writeVersion;
} ConflictSet_WriteRange; } ConflictSet_WriteRange;
/** `reads` must be sorted ascending, and must not have adjacent or overlapping /** The result of checking reads[i] is written in results[i]. */
* ranges. The result of checking reads[i] is written in results[i]. */
void ConflictSet_check(ConflictSet *cs, const ConflictSet_ReadRange *reads, void ConflictSet_check(ConflictSet *cs, const ConflictSet_ReadRange *reads,
ConflictSet_Result *results, int count); ConflictSet_Result *results, int count);
/** `writes` must be sorted ascending, and must not have adjacent or overlapping /** `writes` must be sorted ascending, and must not have adjacent or overlapping