Skip to content

Commit 51a8f52

Browse files
committed
Merge remote-tracking branch 'origin/develop' into claude/writer-editions-gating-8qy1fv
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk> # Conflicts: # vortex-file/src/writer.rs
2 parents a388e2e + 30091f2 commit 51a8f52

46 files changed

Lines changed: 2332 additions & 84 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/bench-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050

5151
- name: Install DuckDB
5252
run: |
53-
wget -qO- https://github.com/duckdb/duckdb/releases/download/v1.5.4/duckdb_cli-linux-amd64.zip | funzip > duckdb
53+
wget -qO- https://github.com/duckdb/duckdb/releases/download/v1.5.5/duckdb_cli-linux-amd64.zip | funzip > duckdb
5454
chmod +x duckdb
5555
echo "$PWD" >> $GITHUB_PATH
5656

.github/workflows/bench.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ jobs:
6464

6565
- name: Install DuckDB
6666
run: |
67-
wget -qO- https://github.com/duckdb/duckdb/releases/download/v1.5.4/duckdb_cli-linux-amd64.zip | funzip > duckdb
67+
wget -qO- https://github.com/duckdb/duckdb/releases/download/v1.5.5/duckdb_cli-linux-amd64.zip | funzip > duckdb
6868
chmod +x duckdb
6969
echo "$PWD" >> $GITHUB_PATH
7070

.github/workflows/sql-benchmarks.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -549,7 +549,7 @@ jobs:
549549

550550
- name: Install DuckDB
551551
run: |
552-
wget -qO- https://github.com/duckdb/duckdb/releases/download/v1.5.4/duckdb_cli-linux-amd64.zip | funzip > duckdb
552+
wget -qO- https://github.com/duckdb/duckdb/releases/download/v1.5.5/duckdb_cli-linux-amd64.zip | funzip > duckdb
553553
chmod +x duckdb
554554
echo "$PWD" >> "$GITHUB_PATH"
555555

docs/specs/file-format.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,13 @@ The postscript contains the locations of:
5454
2. a `layout` segment containing the root `Layout`
5555
3. a `statistics` segment containing file-level per-field statistics (e.g., minima and maxima of each field/column, for whole-file pruning)
5656
4. a `footer` segment containing a dictionary-encoded _segment map_, and other shared configuration such as compression and encryption schemes
57+
5. up to 16 user-defined `metadata` segments, each identified by a unique, non-empty UTF-8 key of at most 64 bytes
58+
59+
The postscript carries a locator (offset, length, and alignment) for each metadata segment that is
60+
present; a file written without user metadata (and any file predating this feature) carries none.
61+
Readers do not load the opaque metadata values by default. Opt-in metadata reads resolve each
62+
locator separately, allowing values outside the initial file-tail read to be fetched without reading
63+
the intervening file contents.
5764

5865
:::{literalinclude} ../../vortex-flatbuffers/flatbuffers/vortex-file/footer.fbs
5966
:start-after: [postscript]

fuzz/src/array/fill_null.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@ pub fn fill_null_canonical_array(
4949
| Canonical::List(_)
5050
| Canonical::FixedSizeList(_)
5151
| Canonical::Extension(_) => canonical.into_array().fill_null(fill_value.clone())?,
52+
Canonical::Union(_) => {
53+
todo!("TODO(connor)[Union]: support Union arrays in the fill_null fuzzer")
54+
}
5255
Canonical::Variant(_) => unreachable!("Variant arrays are not fuzzed"),
5356
})
5457
}

fuzz/src/array/mask.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,9 @@ pub fn mask_canonical_array(
149149
.with_nullability(masked_storage.dtype().nullability());
150150
ExtensionArray::new(ext_dtype, masked_storage).into_array()
151151
}
152+
Canonical::Union(_) => {
153+
todo!("TODO(connor)[Union]: support Union arrays in the mask fuzzer")
154+
}
152155
Canonical::Variant(_) => unreachable!("Variant arrays are not fuzzed"),
153156
})
154157
}

fuzz/src/array/scalar_at.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,9 @@ pub fn scalar_at_canonical_array(
104104
let storage_scalar = scalar_at_canonical_array(storage_canonical, index, ctx)?;
105105
Scalar::extension_ref(array.ext_dtype().clone(), storage_scalar)
106106
}
107+
Canonical::Union(_) => {
108+
todo!("TODO(connor)[Union]: support Union arrays in the scalar_at fuzzer")
109+
}
107110
Canonical::Variant(_) => unreachable!("Variant arrays are not fuzzed"),
108111
})
109112
}

vortex-array/src/aggregate_fn/fns/is_constant/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,9 @@ impl AggregateFnVTable for IsConstant {
404404
Canonical::List(l) => check_listview_constant(l, ctx)?,
405405
Canonical::FixedSizeList(f) => check_fixed_size_list_constant(f, ctx)?,
406406
Canonical::Null(_) => true,
407+
Canonical::Union(_) => {
408+
todo!("TODO(connor)[Union]: implement IsConstant for Union arrays")
409+
}
407410
Canonical::Variant(_) => {
408411
vortex_bail!("Variant arrays don't support IsConstant")
409412
}

vortex-array/src/aggregate_fn/fns/min_max/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -417,6 +417,9 @@ impl AggregateFnVTable for MinMax {
417417
Canonical::Decimal(d) => accumulate_decimal(partial, d, ctx),
418418
Canonical::Extension(e) => accumulate_extension(partial, e, ctx),
419419
Canonical::Null(_) => Ok(()),
420+
Canonical::Union(_) => {
421+
todo!("TODO(connor)[Union]: implement min_max for Union arrays")
422+
}
420423
Canonical::Struct(_)
421424
| Canonical::List(_)
422425
| Canonical::FixedSizeList(_)

vortex-array/src/aggregate_fn/fns/uncompressed_size_in_bytes/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,9 @@ pub(crate) fn canonical_uncompressed_size_in_bytes(
199199
Canonical::List(array) => list_view_uncompressed_size_in_bytes(array, ctx),
200200
Canonical::FixedSizeList(array) => fixed_size_list_uncompressed_size_in_bytes(array, ctx),
201201
Canonical::Struct(array) => struct_uncompressed_size_in_bytes(array, ctx),
202+
Canonical::Union(_) => {
203+
todo!("TODO(connor)[Union]: implement UncompressedSizeInBytes for Union arrays")
204+
}
202205
Canonical::Extension(array) => extension_uncompressed_size_in_bytes(array, ctx),
203206
Canonical::Variant(_) => {
204207
vortex_bail!("UncompressedSizeInBytes is not supported for Variant arrays")

0 commit comments

Comments
 (0)