Coverage Report

Created: 2022-08-24 06:40

/src/duckdb/extension/parquet/include/templated_column_reader.hpp
Line
Count
Source (jump to first uncovered line)
1
//===----------------------------------------------------------------------===//
2
//                         DuckDB
3
//
4
// templated__column_reader.hpp
5
//
6
//
7
//===----------------------------------------------------------------------===//
8
9
#pragma once
10
11
#include "column_reader.hpp"
12
13
namespace duckdb {
14
15
template <class VALUE_TYPE>
16
struct TemplatedParquetValueConversion {
17
0
  static VALUE_TYPE DictRead(ByteBuffer &dict, uint32_t &offset, ColumnReader &reader) {
18
0
    D_ASSERT(offset < dict.len / sizeof(VALUE_TYPE));
19
0
    return ((VALUE_TYPE *)dict.ptr)[offset];
20
0
  }
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<unsigned int>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<unsigned long>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<int>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<long>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<float>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<double>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<duckdb::timestamp_t>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<duckdb::date_t>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<duckdb::dtime_t>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
21
22
0
  static VALUE_TYPE PlainRead(ByteBuffer &plain_data, ColumnReader &reader) {
23
0
    return plain_data.read<VALUE_TYPE>();
24
0
  }
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<unsigned int>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<unsigned long>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<int>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<long>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<float>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<double>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
25
26
0
  static void PlainSkip(ByteBuffer &plain_data, ColumnReader &reader) {
27
0
    plain_data.inc(sizeof(VALUE_TYPE));
28
0
  }
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<unsigned int>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<unsigned long>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<int>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<long>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<float>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::TemplatedParquetValueConversion<double>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
29
};
30
31
template <class VALUE_TYPE, class VALUE_CONVERSION>
32
class TemplatedColumnReader : public ColumnReader {
33
public:
34
  TemplatedColumnReader(ParquetReader &reader, LogicalType type_p, const SchemaElement &schema_p, idx_t schema_idx_p,
35
                        idx_t max_define_p, idx_t max_repeat_p)
36
0
      : ColumnReader(reader, move(type_p), schema_p, schema_idx_p, max_define_p, max_repeat_p) {};
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::string_t, duckdb::StringParquetValueConversion>::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, true> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, true> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, true> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, true> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, false> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, false> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, false> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, false> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<bool, duckdb::BooleanParquetValueConversion>::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned char, duckdb::TemplatedParquetValueConversion<unsigned int> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned short, duckdb::TemplatedParquetValueConversion<unsigned int> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned int, duckdb::TemplatedParquetValueConversion<unsigned int> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned long, duckdb::TemplatedParquetValueConversion<unsigned long> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<signed char, duckdb::TemplatedParquetValueConversion<int> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<int> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<int> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<long> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<float, duckdb::TemplatedParquetValueConversion<float> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<double, duckdb::TemplatedParquetValueConversion<double> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<duckdb::Int96, duckdb::timestamp_t, &duckdb::ImpalaTimestampToTimestamp> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMicrosToTimestamp> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMsToTimestamp> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::date_t, duckdb::CallbackParquetValueConversion<int, duckdb::date_t, &duckdb::ParquetIntToDate> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::dtime_t, duckdb::CallbackParquetValueConversion<long, duckdb::dtime_t, &duckdb::ParquetIntToTime> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<int> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<long> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<long> >::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::UUIDValueConversion>::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::interval_t, duckdb::IntervalValueConversion>::TemplatedColumnReader(duckdb::ParquetReader&, duckdb::LogicalType, duckdb_parquet::format::SchemaElement const&, unsigned long, unsigned long, unsigned long)
37
38
  shared_ptr<ByteBuffer> dict;
39
40
public:
41
0
  void Dictionary(shared_ptr<ByteBuffer> data, idx_t num_entries) override {
42
0
    dict = move(data);
43
0
  }
Unexecuted instantiation: duckdb::TemplatedColumnReader<bool, duckdb::BooleanParquetValueConversion>::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::string_t, duckdb::StringParquetValueConversion>::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, true> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, true> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, true> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, true> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, false> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, false> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, false> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, false> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned char, duckdb::TemplatedParquetValueConversion<unsigned int> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned short, duckdb::TemplatedParquetValueConversion<unsigned int> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned int, duckdb::TemplatedParquetValueConversion<unsigned int> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned long, duckdb::TemplatedParquetValueConversion<unsigned long> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<signed char, duckdb::TemplatedParquetValueConversion<int> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<int> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<int> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<long> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<float, duckdb::TemplatedParquetValueConversion<float> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<double, duckdb::TemplatedParquetValueConversion<double> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<duckdb::Int96, duckdb::timestamp_t, &duckdb::ImpalaTimestampToTimestamp> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMicrosToTimestamp> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMsToTimestamp> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::date_t, duckdb::CallbackParquetValueConversion<int, duckdb::date_t, &duckdb::ParquetIntToDate> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::dtime_t, duckdb::CallbackParquetValueConversion<long, duckdb::dtime_t, &duckdb::ParquetIntToTime> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<int> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<long> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<long> >::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::UUIDValueConversion>::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::interval_t, duckdb::IntervalValueConversion>::Dictionary(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned long)
44
45
  void Offsets(uint32_t *offsets, uint8_t *defines, uint64_t num_values, parquet_filter_t &filter,
46
0
               idx_t result_offset, Vector &result) override {
47
0
    auto result_ptr = FlatVector::GetData<VALUE_TYPE>(result);
48
0
    auto &result_mask = FlatVector::Validity(result);
49
50
0
    idx_t offset_idx = 0;
51
0
    for (idx_t row_idx = 0; row_idx < num_values; row_idx++) {
52
0
      if (HasDefines() && defines[row_idx + result_offset] != max_define) {
53
0
        result_mask.SetInvalid(row_idx + result_offset);
54
0
        continue;
55
0
      }
56
0
      if (filter[row_idx + result_offset]) {
57
0
        VALUE_TYPE val = VALUE_CONVERSION::DictRead(*dict, offsets[offset_idx++], *this);
58
0
        result_ptr[row_idx + result_offset] = val;
59
0
      } else {
60
0
        offset_idx++;
61
0
      }
62
0
    }
63
0
  }
Unexecuted instantiation: duckdb::TemplatedColumnReader<bool, duckdb::BooleanParquetValueConversion>::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, true> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, true> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, true> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, true> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, false> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, false> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, false> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, false> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned char, duckdb::TemplatedParquetValueConversion<unsigned int> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned short, duckdb::TemplatedParquetValueConversion<unsigned int> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned int, duckdb::TemplatedParquetValueConversion<unsigned int> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned long, duckdb::TemplatedParquetValueConversion<unsigned long> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<signed char, duckdb::TemplatedParquetValueConversion<int> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<int> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<int> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<long> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<float, duckdb::TemplatedParquetValueConversion<float> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<double, duckdb::TemplatedParquetValueConversion<double> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<duckdb::Int96, duckdb::timestamp_t, &duckdb::ImpalaTimestampToTimestamp> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMicrosToTimestamp> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMsToTimestamp> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::date_t, duckdb::CallbackParquetValueConversion<int, duckdb::date_t, &duckdb::ParquetIntToDate> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::dtime_t, duckdb::CallbackParquetValueConversion<long, duckdb::dtime_t, &duckdb::ParquetIntToTime> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<int> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<long> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<long> >::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::UUIDValueConversion>::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::interval_t, duckdb::IntervalValueConversion>::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::string_t, duckdb::StringParquetValueConversion>::Offsets(unsigned int*, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
64
65
  void Plain(shared_ptr<ByteBuffer> plain_data, uint8_t *defines, uint64_t num_values, parquet_filter_t &filter,
66
0
             idx_t result_offset, Vector &result) override {
67
0
    auto result_ptr = FlatVector::GetData<VALUE_TYPE>(result);
68
0
    auto &result_mask = FlatVector::Validity(result);
69
0
    for (idx_t row_idx = 0; row_idx < num_values; row_idx++) {
70
0
      if (HasDefines() && defines[row_idx + result_offset] != max_define) {
71
0
        result_mask.SetInvalid(row_idx + result_offset);
72
0
        continue;
73
0
      }
74
0
      if (filter[row_idx + result_offset]) {
75
0
        VALUE_TYPE val = VALUE_CONVERSION::PlainRead(*plain_data, *this);
76
0
        result_ptr[row_idx + result_offset] = val;
77
0
      } else { // there is still some data there that we have to skip over
78
0
        VALUE_CONVERSION::PlainSkip(*plain_data, *this);
79
0
      }
80
0
    }
81
0
  }
Unexecuted instantiation: duckdb::TemplatedColumnReader<bool, duckdb::BooleanParquetValueConversion>::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, true> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, true> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, true> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, true> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::DecimalParquetValueConversion<short, false> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::DecimalParquetValueConversion<int, false> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::DecimalParquetValueConversion<long, false> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::DecimalParquetValueConversion<duckdb::hugeint_t, false> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned char, duckdb::TemplatedParquetValueConversion<unsigned int> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned short, duckdb::TemplatedParquetValueConversion<unsigned int> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned int, duckdb::TemplatedParquetValueConversion<unsigned int> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<unsigned long, duckdb::TemplatedParquetValueConversion<unsigned long> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<signed char, duckdb::TemplatedParquetValueConversion<int> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<int> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<int> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<long> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<float, duckdb::TemplatedParquetValueConversion<float> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<double, duckdb::TemplatedParquetValueConversion<double> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<duckdb::Int96, duckdb::timestamp_t, &duckdb::ImpalaTimestampToTimestamp> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMicrosToTimestamp> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::timestamp_t, duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMsToTimestamp> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::date_t, duckdb::CallbackParquetValueConversion<int, duckdb::date_t, &duckdb::ParquetIntToDate> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::dtime_t, duckdb::CallbackParquetValueConversion<long, duckdb::dtime_t, &duckdb::ParquetIntToTime> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<long, duckdb::TemplatedParquetValueConversion<int> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<short, duckdb::TemplatedParquetValueConversion<long> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<int, duckdb::TemplatedParquetValueConversion<long> >::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::hugeint_t, duckdb::UUIDValueConversion>::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::interval_t, duckdb::IntervalValueConversion>::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
Unexecuted instantiation: duckdb::TemplatedColumnReader<duckdb::string_t, duckdb::StringParquetValueConversion>::Plain(std::__1::shared_ptr<duckdb::ByteBuffer>, unsigned char*, unsigned long, std::__1::bitset<1024ul>&, unsigned long, duckdb::Vector&)
82
};
83
84
template <class PARQUET_PHYSICAL_TYPE, class DUCKDB_PHYSICAL_TYPE,
85
          DUCKDB_PHYSICAL_TYPE (*FUNC)(const PARQUET_PHYSICAL_TYPE &input)>
86
struct CallbackParquetValueConversion {
87
0
  static DUCKDB_PHYSICAL_TYPE DictRead(ByteBuffer &dict, uint32_t &offset, ColumnReader &reader) {
88
0
    return TemplatedParquetValueConversion<DUCKDB_PHYSICAL_TYPE>::DictRead(dict, offset, reader);
89
0
  }
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<duckdb::Int96, duckdb::timestamp_t, &duckdb::ImpalaTimestampToTimestamp>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMicrosToTimestamp>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMsToTimestamp>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<int, duckdb::date_t, &duckdb::ParquetIntToDate>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::dtime_t, &duckdb::ParquetIntToTime>::DictRead(duckdb::ByteBuffer&, unsigned int&, duckdb::ColumnReader&)
90
91
0
  static DUCKDB_PHYSICAL_TYPE PlainRead(ByteBuffer &plain_data, ColumnReader &reader) {
92
0
    return FUNC(plain_data.read<PARQUET_PHYSICAL_TYPE>());
93
0
  }
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<duckdb::Int96, duckdb::timestamp_t, &duckdb::ImpalaTimestampToTimestamp>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMicrosToTimestamp>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMsToTimestamp>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<int, duckdb::date_t, &duckdb::ParquetIntToDate>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::dtime_t, &duckdb::ParquetIntToTime>::PlainRead(duckdb::ByteBuffer&, duckdb::ColumnReader&)
94
95
0
  static void PlainSkip(ByteBuffer &plain_data, ColumnReader &reader) {
96
0
    plain_data.inc(sizeof(PARQUET_PHYSICAL_TYPE));
97
0
  }
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<duckdb::Int96, duckdb::timestamp_t, &duckdb::ImpalaTimestampToTimestamp>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMicrosToTimestamp>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::timestamp_t, &duckdb::ParquetTimestampMsToTimestamp>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<int, duckdb::date_t, &duckdb::ParquetIntToDate>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
Unexecuted instantiation: duckdb::CallbackParquetValueConversion<long, duckdb::dtime_t, &duckdb::ParquetIntToTime>::PlainSkip(duckdb::ByteBuffer&, duckdb::ColumnReader&)
98
};
99
100
} // namespace duckdb