mirror of
https://github.com/clockworklabs/SpacetimeDB.git
synced 2026-05-06 15:49:35 -04:00
e33cefbb2a
# Description of Changes Introduces types `TypedIndexKey` and `IndexKey` to free the table index code on its direct dependency on `AlgebraicValue`, allowing index scans by BSATN, `RowRef`s as well without first going through `AlgebraicValue`. This also has the effect of optimizing string scans by avoiding allocating in `AlgebraicValue::String`. This also adds a byte-array based future optimization for all-primitive-multi-column indexes. Also in the future, this will enable optimizing `iter_by_col_eq`, which is used by the frequent connect/disconnect logic. # API and ABI breaking changes None # Expected complexity level and risk 3? Unsafe code and very load bearing code. # Testing Should be covered by existing tests.