Skip to content

Commit 63c1ece

Browse files
authored
refactor(query): introduces trait SimpleType to simplify the ValueType implementation. (#17909)
1 parent 629cd59 commit 63c1ece

File tree

32 files changed

+684
-790
lines changed

32 files changed

+684
-790
lines changed

src/common/native/src/compression/binary/dict.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ impl BinaryCompression for Dict {
7777
// dict data use custom encoding
7878
let mut write_options = write_options.clone();
7979
write_options.forbidden_compressions.push(Compression::Dict);
80-
compress_integer(&indices, stats.validity.clone(), write_options, output_buf)?;
80+
compress_integer(&indices, stats.validity.clone(), &write_options, output_buf)?;
8181

8282
// data page use plain encoding
8383
let sets = encoder.get_sets();

src/common/native/src/compression/boolean/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ pub fn compress_boolean(
3434
col: &Bitmap,
3535
validity: Option<Bitmap>,
3636
buf: &mut Vec<u8>,
37-
write_options: WriteOptions,
37+
write_options: &WriteOptions,
3838
) -> Result<()> {
3939
// choose compressor
4040
let stats = gen_stats(col, validity.clone());
41-
let compressor = choose_compressor(col, &stats, &write_options);
41+
let compressor = choose_compressor(col, &stats, write_options);
4242

4343
log::debug!(
4444
"choose boolean compression : {:?}",

src/common/native/src/compression/double/dict.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ impl<T: DoubleType> DoubleCompression<T> for Dict {
6060
// dict data use custom encoding
6161
let mut write_options = write_options.clone();
6262
write_options.forbidden_compressions.push(Compression::Dict);
63-
compress_integer(&indices, stats.validity.clone(), write_options, output_buf)?;
63+
compress_integer(&indices, stats.validity.clone(), &write_options, output_buf)?;
6464

6565
let sets = encoder.get_sets();
6666
output_buf.extend_from_slice(&(sets.len() as u32).to_le_bytes());

src/common/native/src/compression/double/freq.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ impl<T: DoubleType> DoubleCompression<T> for Freq {
8080
write_options.forbidden_compressions.push(Compression::Freq);
8181

8282
let exceptions = exceptions.into();
83-
compress_double(&exceptions, stats.validity.clone(), write_options, output)?;
83+
compress_double(&exceptions, stats.validity.clone(), &write_options, output)?;
8484

8585
Ok(output.len() - size)
8686
}

src/common/native/src/compression/double/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ use crate::write::WriteOptions;
4545
pub fn compress_double<T: DoubleType>(
4646
col: &Buffer<T>,
4747
validity: Option<Bitmap>,
48-
write_options: WriteOptions,
48+
write_options: &WriteOptions,
4949
buf: &mut Vec<u8>,
5050
) -> Result<()> {
5151
// choose compressor
5252
let stats = gen_stats(col, validity);
53-
let compressor = choose_compressor(col, &stats, &write_options);
53+
let compressor = choose_compressor(col, &stats, write_options);
5454

5555
log::debug!(
5656
"choose double compression : {:?}",
@@ -67,7 +67,7 @@ pub fn compress_double<T: DoubleType>(
6767
let input_buf = bytemuck::cast_slice(col.as_slice());
6868
c.compress(input_buf, buf)
6969
}
70-
DoubleCompressor::Extend(c) => c.compress(col, &stats, &write_options, buf),
70+
DoubleCompressor::Extend(c) => c.compress(col, &stats, write_options, buf),
7171
}?;
7272
buf[pos..pos + 4].copy_from_slice(&(compressed_size as u32).to_le_bytes());
7373
buf[pos + 4..pos + 8]

src/common/native/src/compression/integer/dict.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ impl<T: IntegerType> IntegerCompression<T> for Dict {
5959
// dict data use custom encoding
6060
let mut write_options = write_options.clone();
6161
write_options.forbidden_compressions.push(Compression::Dict);
62-
compress_integer(&indices, stats.validity.clone(), write_options, output_buf)?;
62+
compress_integer(&indices, stats.validity.clone(), &write_options, output_buf)?;
6363

6464
let sets = encoder.get_sets();
6565
output_buf.extend_from_slice(&(sets.len() as u32).to_le_bytes());

src/common/native/src/compression/integer/freq.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ impl<T: IntegerType> IntegerCompression<T> for Freq {
8383
write_options.forbidden_compressions.push(Compression::Freq);
8484

8585
let exceptions = exceptions.into();
86-
compress_integer(&exceptions, stats.validity.clone(), write_options, output)?;
86+
compress_integer(&exceptions, stats.validity.clone(), &write_options, output)?;
8787

8888
Ok(output.len() - size)
8989
}

src/common/native/src/compression/integer/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,12 @@ use crate::write::WriteOptions;
4848
pub fn compress_integer<T: IntegerType>(
4949
col: &Buffer<T>,
5050
validity: Option<Bitmap>,
51-
write_options: WriteOptions,
51+
write_options: &WriteOptions,
5252
buf: &mut Vec<u8>,
5353
) -> Result<()> {
5454
// choose compressor
5555
let stats = gen_stats(col, validity);
56-
let compressor = choose_compressor(col, &stats, &write_options);
56+
let compressor = choose_compressor(col, &stats, write_options);
5757

5858
log::debug!(
5959
"choose integer compression : {:?}",
@@ -76,7 +76,7 @@ pub fn compress_integer<T: IntegerType>(
7676
"Not support Extend compressor".to_string(),
7777
));
7878
}
79-
c.compress(col, &stats, &write_options, buf)
79+
c.compress(col, &stats, write_options, buf)
8080
}
8181
}?;
8282
buf[pos..pos + 4].copy_from_slice(&(compressed_size as u32).to_le_bytes());

src/common/native/src/compression/view/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,12 @@ pub fn compress_view(
2525
col: &BinaryViewColumn,
2626
validity: Option<Bitmap>,
2727
buf: &mut Vec<u8>,
28-
write_options: WriteOptions,
28+
write_options: &WriteOptions,
2929
) -> Result<()> {
3030
// choose compressor
3131
let col = col.gc_with_dict(validity.clone());
3232
let view_array: Buffer<i128> = col.views().iter().map(|x| x.as_i128()).collect();
33-
compress_integer(&view_array, validity, write_options.clone(), buf)?;
33+
compress_integer(&view_array, validity, write_options, buf)?;
3434
compress_buffers(&col, buf, write_options.default_compression)
3535
}
3636

src/common/native/src/write/boolean.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ pub(crate) fn write_bitmap<W: Write>(
2424
w: &mut W,
2525
column: &Bitmap,
2626
validity: Option<Bitmap>,
27-
write_options: WriteOptions,
27+
write_options: &WriteOptions,
2828
scratch: &mut Vec<u8>,
2929
) -> Result<()> {
3030
scratch.clear();

0 commit comments

Comments
 (0)