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]

Reply via email to