Fix incorrect row pruning for non-text BYTE_ARRAY
This commit is contained in:
parent
893e4c63f5
commit
8bf890ab66
|
@ -638,7 +638,7 @@ bool ParquetCursor::currentRowSatisfiesFilter() {
|
||||||
} else {
|
} else {
|
||||||
parquet::Type::type pqType = types[column];
|
parquet::Type::type pqType = types[column];
|
||||||
|
|
||||||
if(pqType == parquet::Type::BYTE_ARRAY) {
|
if(pqType == parquet::Type::BYTE_ARRAY && logicalTypes[column] == parquet::LogicalType::UTF8) {
|
||||||
rv = currentRowSatisfiesTextFilter(constraints[i]);
|
rv = currentRowSatisfiesTextFilter(constraints[i]);
|
||||||
} else if(pqType == parquet::Type::INT32 ||
|
} else if(pqType == parquet::Type::INT32 ||
|
||||||
pqType == parquet::Type::INT64 ||
|
pqType == parquet::Type::INT64 ||
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
select rowid from nulls1 where binary_9 >= '56' and ts_5 < 496886400000;
|
||||||
|
1
|
||||||
|
2
|
||||||
|
3
|
||||||
|
4
|
||||||
|
5
|
||||||
|
6
|
||||||
|
7
|
||||||
|
8
|
||||||
|
9
|
||||||
|
10
|
||||||
|
21
|
||||||
|
23
|
||||||
|
25
|
||||||
|
27
|
||||||
|
29
|
||||||
|
31
|
||||||
|
33
|
||||||
|
35
|
||||||
|
37
|
||||||
|
39
|
||||||
|
41
|
||||||
|
43
|
||||||
|
45
|
||||||
|
47
|
||||||
|
49
|
||||||
|
51
|
||||||
|
53
|
||||||
|
55
|
||||||
|
57
|
||||||
|
59
|
||||||
|
61
|
||||||
|
63
|
||||||
|
65
|
||||||
|
67
|
||||||
|
69
|
||||||
|
71
|
|
@ -80,7 +80,7 @@ def test_table(conn, table):
|
||||||
for name in column_names:
|
for name in column_names:
|
||||||
column_values[name] = get_column_values(conn, table, name)
|
column_values[name] = get_column_values(conn, table, name)
|
||||||
|
|
||||||
random.seed(0)
|
#random.seed(0)
|
||||||
all_values = []
|
all_values = []
|
||||||
for values in column_values.values():
|
for values in column_values.values():
|
||||||
all_values = all_values + values
|
all_values = all_values + values
|
||||||
|
|
Loading…
Reference in New Issue