Changeset: 18b4af8f72da for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/18b4af8f72da
Modified Files:
sql/backends/monet5/vaults/parquet/parquet.c
sql/backends/monet5/vaults/parquet/pqc_reader.c
Branch: default
Log Message:
fallback to 64 bits signed when there is no 128 bit signed for unsigned 64 bit
types.
diffs (33 lines):
diff --git a/sql/backends/monet5/vaults/parquet/parquet.c
b/sql/backends/monet5/vaults/parquet/parquet.c
--- a/sql/backends/monet5/vaults/parquet/parquet.c
+++ b/sql/backends/monet5/vaults/parquet/parquet.c
@@ -349,9 +349,11 @@ pqc_find_localtype(const pqc_schema_elem
return TYPE_int;
if (pse->precision == 32)
return TYPE_lng;
+ if (pse->precision == 64)
#ifdef HAVE_HGE
- if (pse->precision == 64)
return TYPE_hge;
+#else
+ return TYPE_lng;
#endif
} else {
if (pse->precision == 8)
diff --git a/sql/backends/monet5/vaults/parquet/pqc_reader.c
b/sql/backends/monet5/vaults/parquet/pqc_reader.c
--- a/sql/backends/monet5/vaults/parquet/pqc_reader.c
+++ b/sql/backends/monet5/vaults/parquet/pqc_reader.c
@@ -2109,6 +2109,13 @@ pqc_read_page_chunk( pqc_reader_t *r, pq
for(uint64_t i=0; i< nrows; i++)
*(r-i) = *(l-i);
} else
+#else
+ if (r->pse->precision == 64 && !r->pse->isSigned) {
+ int64_t *l = output;
+ for(uint64_t i=0; i< nrows; i++)
+ if (l[i] < 0)
+ return -1;
+ } else
#endif
if (r->pse->precision == 32 && !r->pse->isSigned) {
uint32_t *l = output;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]