File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -23,7 +23,6 @@ use crate::arrays::List;
2323use crate :: arrays:: ListView ;
2424use crate :: arrays:: Masked ;
2525use crate :: arrays:: Null ;
26- use crate :: arrays:: Patched ;
2726use crate :: arrays:: Primitive ;
2827use crate :: arrays:: Struct ;
2928use 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
Original file line number Diff line number Diff line change @@ -110,6 +110,8 @@ pub use forever_constant::*;
110110pub use open:: * ;
111111pub use strategy:: * ;
112112use vortex_array:: arrays:: Dict ;
113+ use vortex_array:: arrays:: Patched ;
114+ use vortex_array:: arrays:: patched:: use_experimental_patches;
113115use vortex_array:: session:: ArraySessionExt ;
114116use vortex_bytebool:: ByteBool ;
115117use vortex_fsst:: FSST ;
@@ -168,6 +170,9 @@ pub fn register_default_encodings(session: &VortexSession) {
168170 arrays. register ( vortex_zstd:: Zstd ) ;
169171 #[ cfg( all( feature = "zstd" , feature = "unstable_encodings" ) ) ]
170172 arrays. register ( vortex_zstd:: ZstdBuffers ) ;
173+ if use_experimental_patches ( ) {
174+ arrays. register ( Patched ) ;
175+ }
171176 }
172177
173178 // Eventually all encodings crates should expose an initialize function. For now it's only
Original file line number Diff line number Diff 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" ) ) ]
Original file line number Diff line number Diff line change @@ -47,6 +47,7 @@ use vortex_session::SessionExt;
4747use vortex_session:: VortexSession ;
4848use vortex_session:: registry:: ReadContext ;
4949
50+ use crate :: ALLOWED_ENCODINGS ;
5051use crate :: Footer ;
5152use crate :: MAGIC_BYTES ;
5253use crate :: WriteStrategyBuilder ;
@@ -147,7 +148,7 @@ impl VortexWriteOptions {
147148 // serialised array order is deterministic. The serialisation of arrays are done
148149 // parallel and with an empty context they can register their encodings to the context
149150 // in different order, changing the written bytes from run to run.
150- let ctx = ArrayContext :: new ( self . session . arrays ( ) . registry ( ) . ids ( ) . sorted ( ) . collect ( ) )
151+ let ctx = ArrayContext :: new ( ALLOWED_ENCODINGS . iter ( ) . cloned ( ) . sorted ( ) . collect ( ) )
151152 // Configure a registry just to ensure only known encodings are interned.
152153 . with_registry ( self . session . arrays ( ) . registry ( ) . clone ( ) ) ;
153154 let dtype = stream. dtype ( ) . clone ( ) ;
You can’t perform that action at this time.
0 commit comments