Skip to content

Commit fd51dc4

Browse files
committed
avoid including experimental encoding in footer
Signed-off-by: Andrew Duffy <andrew@a10y.dev>
1 parent d0a6dba commit fd51dc4

3 files changed

Lines changed: 8 additions & 8 deletions

File tree

vortex-array/src/session/mod.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ use crate::arrays::List;
2323
use crate::arrays::ListView;
2424
use crate::arrays::Masked;
2525
use crate::arrays::Null;
26-
use crate::arrays::Patched;
2726
use crate::arrays::Primitive;
2827
use crate::arrays::Struct;
2928
use crate::arrays::VarBin;
@@ -80,7 +79,6 @@ impl Default for ArraySession {
8079
this.register(Dict);
8180
this.register(List);
8281
this.register(Masked);
83-
this.register(Patched);
8482
this.register(VarBin);
8583

8684
this

vortex-file/src/strategy.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,10 +90,6 @@ pub static ALLOWED_ENCODINGS: LazyLock<HashSet<ArrayId>> = LazyLock::new(|| {
9090
allowed.insert(Masked.id());
9191
allowed.insert(Dict.id());
9292

93-
if use_experimental_patches() {
94-
allowed.insert(Patched.id());
95-
}
96-
9793
// Compressed encodings from encoding crates
9894
allowed.insert(ALP.id());
9995
allowed.insert(ALPRD.id());
@@ -111,6 +107,12 @@ pub static ALLOWED_ENCODINGS: LazyLock<HashSet<ArrayId>> = LazyLock::new(|| {
111107
allowed.insert(Sparse.id());
112108
allowed.insert(ZigZag.id());
113109

110+
// Experimental encodings
111+
112+
if use_experimental_patches() {
113+
allowed.insert(Patched.id());
114+
}
115+
114116
#[cfg(feature = "zstd")]
115117
allowed.insert(Zstd.id());
116118
#[cfg(all(feature = "zstd", feature = "unstable_encodings"))]

vortex-file/src/writer.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,12 @@ use vortex_session::SessionExt;
4747
use vortex_session::VortexSession;
4848
use vortex_session::registry::ReadContext;
4949

50-
use crate::Footer;
5150
use crate::MAGIC_BYTES;
5251
use crate::WriteStrategyBuilder;
5352
use crate::counting::CountingVortexWrite;
5453
use crate::footer::FileStatistics;
5554
use crate::segments::writer::BufferedSegmentSink;
55+
use crate::{ALLOWED_ENCODINGS, Footer};
5656

5757
/// Configure a new writer, which can eventually be used to write an [`ArrayStream`] into a sink
5858
/// that implements [`VortexWrite`].
@@ -147,7 +147,7 @@ impl VortexWriteOptions {
147147
// serialised array order is deterministic. The serialisation of arrays are done
148148
// parallel and with an empty context they can register their encodings to the context
149149
// in different order, changing the written bytes from run to run.
150-
let ctx = ArrayContext::new(self.session.arrays().registry().ids().sorted().collect())
150+
let ctx = ArrayContext::new(ALLOWED_ENCODINGS.iter().cloned().sorted().collect())
151151
// Configure a registry just to ensure only known encodings are interned.
152152
.with_registry(self.session.arrays().registry().clone());
153153
let dtype = stream.dtype().clone();

0 commit comments

Comments
 (0)