Update Iceberg-Table-Maintenance.md

Chris Lu committed 2026-03-15 10:03:15 -07:00
1 parent 8cbed1b461
commit 42d5d900a9
1 file changed
+4 -3
+4 -3
@@ -273,7 +273,7 @@ Result: `"rewrote 12 manifests into 1 (320 entries)"`
| Condition | Result |
|:---|:---|
| Manifest count < `min_input_files` | `"only N manifests, below threshold"` |
| Manifest count < `min_manifests_to_rewrite` | `"only N manifests, below threshold of M"` |
| No current snapshot | `"no current snapshot"` |
| No data entries | `"no data entries to rewrite"` |
@@ -307,7 +307,8 @@ These control **how** maintenance operations behave. Set via the Admin UI or pas
| `max_snapshots_to_keep` | `5` | Always keep at least this many newest snapshots |
| `orphan_older_than_hours` | `72` (3 days) | Safety window: only delete orphans older than this |
| `target_file_size_bytes` | `268435456` (256 MB) | Files smaller than this are compaction candidates |
| `min_input_files` | `5` | Minimum files in a partition/manifest group to trigger action |
| `min_input_files` | `5` | Minimum small files in a partition to trigger compaction |
| `min_manifests_to_rewrite` | `5` | Minimum manifests before rewriting is triggered |
| `max_commit_retries` | `5` | Max optimistic concurrency retries on version conflict |
| `operations` | `all` | Comma-separated list of operations, or `all` |
@@ -400,7 +401,7 @@ rewrite_manifests: rewrote 7 manifests into 1 (120 entries)
- **Client-side CAS**: the compare-and-swap on metadata version is enforced client-side. Concurrent maintenance on the same table should be avoided (the deduplication key prevents this under normal scheduling).
- **No delete manifest support in compaction**: tables with row-level deletes (delete manifests) skip compaction.
- **No multi-spec compaction**: tables that have undergone partition spec evolution skip compaction.
- **Single filer**: detection and execution connect to one filer address from the cluster context.
- **Single filer per job**: detection tries each filer address in the cluster context until one connects, but each execution job uses the single filer address recorded in its proposal.
## See Also