Skip to content

Type system categorization

Avi Kivity edited this page Feb 15, 2018 · 1 revision
Item Scope Description Impact
atomic_cell static Structure of an atomic cell: timestamp, live/dead, tombstone, deletion time, value Generating accessors for fields
atomic_cell instance runtime Which variant of an atomic_cell is engaged for a particular value? Storage compression
underlying type schema Comparators, arithmetic, fixed vs. variable size Accessors, comparators, arithmetic, whether an "empty bit" is needed
collection vs. atomic schema whether to use atomic_cell or something else Accessors
static rows, clustering keys schema Whether they exist or not run-time or llvm-time optional<>
number of columns in row schema How many columns were defined in the schema pre-determination of storage formats
number of cells in row runtime How many cells are actually present selection of sparse vs. dense storage format
partition key, clustering key types schema What types make up a partition key or clustering key Generation of comparators, hashers
value runtime Actual value in cell Whether we can use the small-string optimization or not, indirection
collection schema Types of cells in collection, type of collection Generation of accessors
cell count in collection runtime Actual cell count in a mutation Whether to use linear or treelike storage
Clone this wiki locally