Changeset: e7406e3b4575 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/e7406e3b4575
Modified Files:
        sql/backends/monet5/sql_time.c
        sql/test/miscellaneous/Tests/simple_selects.test
Branch: Jul2021
Log Message:

I forgot to check for NULL values when converting to an interval


diffs (25 lines):

diff --git a/sql/backends/monet5/sql_time.c b/sql/backends/monet5/sql_time.c
--- a/sql/backends/monet5/sql_time.c
+++ b/sql/backends/monet5/sql_time.c
@@ -1153,7 +1153,10 @@ bailout:
                        } \
                } else { \
                        TPE_IN next = *(TPE_IN*)getArgReference(stk, pci, 1); \
-                       FUNC(*ret, TPE_IN, FUNC_NAME, MAX_VALUE, 
CAST_VALIDATION, MUL_VALIDATION); \
+                       if (is_##TPE_IN##_nil(next)) \
+                               *ret = TPE_OUT##_nil;   \
+                       else    \
+                               FUNC(*ret, TPE_IN, FUNC_NAME, MAX_VALUE, 
CAST_VALIDATION, MUL_VALIDATION); \
                } \
        } while(0)
 
diff --git a/sql/test/miscellaneous/Tests/simple_selects.test 
b/sql/test/miscellaneous/Tests/simple_selects.test
--- a/sql/test/miscellaneous/Tests/simple_selects.test
+++ b/sql/test/miscellaneous/Tests/simple_selects.test
@@ -871,3 +871,6 @@ BEGIN
                RETURN 1;
        END WHILE;
 END
+
+statement error 42000!Null step size not allowed
+select * from generate_series(timestamp '2010-01-01', timestamp '2010-01-01', 
null)
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to