1
0
mirror of https://github.com/cldellow/sqlite-parquet-vtable.git synced 2025-09-12 22:29:58 +00:00

Add rowgroup filtering for rowid

This commit is contained in:
Colin Dellow
2018-03-12 20:42:50 -04:00
parent 1f938a005d
commit acc15256ec
9 changed files with 61 additions and 15 deletions

View File

@@ -17,13 +17,14 @@ class ParquetCursor {
std::vector<int> colRows;
std::vector<bool> colNulls;
std::vector<uintptr_t> colIntValues;
std::vector<int64_t> colIntValues;
std::vector<double> colDoubleValues;
std::vector<parquet::ByteArray> colByteArrayValues;
int rowId;
int rowGroupId;
int rowGroupStartRowId;
int rowGroupSize;
int numRows;
int numRowGroups;
int rowsLeftInRowGroup;
@@ -32,11 +33,13 @@ class ParquetCursor {
std::vector<Constraint> constraints;
bool currentRowGroupSatisfiesRowIdFilter(Constraint constraint);
bool currentRowSatisfiesFilter();
bool currentRowGroupSatisfiesFilter();
public:
ParquetCursor(ParquetTable* table);
int getRowId();
bool currentRowSatisfiesFilter();
bool currentRowGroupSatisfiesFilter();
void next();
void close();
void reset(std::vector<Constraint> constraints);