MCPcopy Create free account
hub / github.com/apache/arrow-rs / get_values_buffer_len

Function get_values_buffer_len

arrow-row/src/lib.rs:4825–4842  ·  view source on GitHub ↗
(col: ArrayRef)

Source from the content-addressed store, hash-verified

4823 #[test]
4824 fn test_values_buffer_smaller_when_utf8_validation_disabled() {
4825 fn get_values_buffer_len(col: ArrayRef) -> (usize, usize) {
4826 // 1. Convert cols into rows
4827 let converter = RowConverter::new(vec![SortField::new(DataType::Utf8View)]).unwrap();
4828
4829 // 2a. Convert rows into colsa (validate_utf8 = false)
4830 let rows = converter.convert_columns(&[col]).unwrap();
4831 let converted = converter.convert_rows(&rows).unwrap();
4832 let unchecked_values_len = converted[0].as_string_view().data_buffers()[0].len();
4833
4834 // 2b. Convert rows into cols (validate_utf8 = true since Row is initialized through RowParser)
4835 let rows = rows.try_into_binary().expect("reasonable size");
4836 let parser = converter.parser();
4837 let converted = converter
4838 .convert_rows(rows.iter().map(|b| parser.parse(b.expect("valid bytes"))))
4839 .unwrap();
4840 let checked_values_len = converted[0].as_string_view().data_buffers()[0].len();
4841 (unchecked_values_len, checked_values_len)
4842 }
4843
4844 // Case1. StringViewArray with inline strings
4845 let col = Arc::new(StringViewArray::from_iter([

Calls 9

convert_columnsMethod · 0.80
convert_rowsMethod · 0.80
data_buffersMethod · 0.80
as_string_viewMethod · 0.80
try_into_binaryMethod · 0.80
parserMethod · 0.80
lenMethod · 0.45
iterMethod · 0.45
parseMethod · 0.45