Expand description
The registry of Timelake’s settings (SPEC §21.9): every switch is declared once here, with its
type, default, the levels it may be set at, and the version that added it. Table properties,
SQL SET, the CLI’s timelake settings and the docs all come from SETTINGS.
A setting has one name in kebab-case (read-dedup). As a table property it is
timelake.read-dedup; in SQL, where names are identifiers, timelake.read_dedup. Both
spellings find the same setting.
use timelake_format::settings::{self, Level};
let s = settings::find("timelake.read_dedup").unwrap();
assert_eq!(s.property(), "timelake.read-dedup");
assert!(s.allows(Level::Session));
assert!(s.check("maybe").is_err());Structs§
- Setting
- One setting.
Enums§
- Default
Value - A setting’s value when nothing sets it.
- Level
- Where a setting can be set. The more specific level wins: a call over a session over a table.
Constants§
- PREFIX
- The prefix of Timelake’s table properties and session settings.
Statics§
- SETTINGS
- Every setting, in the order the docs list them.
Functions§
- check_
properties - Checks Timelake’s properties among
propertiesforlevel(Level::Tablewhen creating or altering a table) and returns them with every Timelake key in its canonical spelling. Keys outside thetimelake.prefix (Iceberg’s own) pass through. - find
- Finds a setting by name:
read-dedup,read_dedup,timelake.read-deduportimelake.read_dedup, in any case. - not_
settable - The error for a setting set where it can’t be: says where it can be.
- unknown
- The error for a name that isn’t a setting.