catalog pin
Freeze a catalog entry’s caches and persist the result as a new entry.
Pinning changes the build hash, so it always yields a new content-named entry rather than mutating the source. Use –alias to name it, or –move-aliases to move every alias (e.g. prod) from the source entry onto the pinned entry.
Usage
xorq catalog pin ENTRY [OPTIONS]Arguments
ENTRY—An entry name or alias.
Options
| Option | Default | Description |
|---|---|---|
--sync / --no-sync |
--sync |
Push the catalog to its remotes after the operation. |
--cache-dir |
$XORQ_CACHE_DIR or ~/.cache/xorq |
Directory for parquet cache files. |
-a, --alias |
none | Register this alias for the new entry. |
--move-aliases |
off | Move all of the source entry’s aliases onto the new entry. |
-e, --ensure-materialized |
off | Materialize any unpopulated caches (by executing) before pinning. |
--relocate-reads / --no-relocate-reads |
--no-relocate-reads |
Bundle local-file Read nodes (including frozen caches) into the entry so it is self-contained and runnable from anywhere. Remote reads (s3://, gs://, …) are already location-independent and left in place. Pass –no-relocate-reads for a lean, machine-local entry; this only affects reads not already bundled – relocation discards a read’s original path, so it cannot be undone by a later –no-relocate-reads on an already-relocated input. |
Examples
xorq catalog pin penguins-prod --alias penguins-pinned
xorq catalog pin penguins-prod --move-aliases