Changeset: 69410a316a7a for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/69410a316a7a
Modified Files:
        sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_18.test
        sql/backends/monet5/UDF/pyapi3/conversion3.c
        sql/backends/monet5/UDF/pyapi3/pytypes3.c
Branch: default
Log Message:

Cleanup pyapi code a bit


diffs (86 lines):

diff --git a/sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_18.test 
b/sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_18.test
--- a/sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_18.test
+++ b/sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_18.test
@@ -94,14 +94,14 @@ LANGUAGE PYTHON
 {
     import datetime
     result = dict()
-    result['d'] = datetime.time(12, 0, 0, 0)
+    result['d'] = datetime.time(12, 0, 0, 1)
     return result
 }
 
 query T rowsort
 SELECT * FROM pyapi_ret_time()
 ----
-12:00:00
+12:00:00.000001
 
 statement ok
 CREATE FUNCTION pyapi_ret_timestamp() RETURNS TABLE(d TIMESTAMP)
@@ -116,7 +116,7 @@ LANGUAGE PYTHON
 query T rowsort
 SELECT * FROM pyapi_ret_timestamp()
 ----
-2000-01-01 12:00:00
+2000-01-01 12:00:00.000001
 
 statement ok
 CREATE FUNCTION pyapi_ret_decimal() RETURNS TABLE(d DECIMAL)
@@ -170,10 +170,10 @@ statement ok rowcount 1
 INSERT INTO uuid_tbl VALUES ('54771a16-b4ad-4f1a-a9b7-4d8e8ca6fb7c')
 
 statement ok
-CREATE FUNCTION pyapi_interval(d UUID) RETURNS STRING LANGUAGE PYTHON { return 
d; }
+CREATE FUNCTION pyapi_uuid(d UUID) RETURNS STRING LANGUAGE PYTHON { return d; }
 
 query T rowsort
-SELECT pyapi_interval(d) FROM uuid_tbl
+SELECT pyapi_uuid(d) FROM uuid_tbl
 ----
 54771a16-b4ad-4f1a-a9b7-4d8e8ca6fb7c
 
diff --git a/sql/backends/monet5/UDF/pyapi3/conversion3.c 
b/sql/backends/monet5/UDF/pyapi3/conversion3.c
--- a/sql/backends/monet5/UDF/pyapi3/conversion3.c
+++ b/sql/backends/monet5/UDF/pyapi3/conversion3.c
@@ -1149,9 +1149,6 @@ BAT *PyObject_ConvertToBAT(PyReturn *ret
 bit ConvertableSQLType(sql_subtype *sql_subtype)
 {
        switch (GetSQLType(sql_subtype)) {
-               /* case EC_DATE: */
-               /* case EC_TIME: */
-               /* case EC_TIMESTAMP: */
                case EC_DEC:
                        return 1;
        }
@@ -1177,11 +1174,6 @@ str ConvertFromSQLType(BAT *b, sql_subty
        assert(sql_subtype->type);
 
        switch (sql_subtype->type->eclass) {
-               /* case EC_DATE: */
-               /* case EC_TIME: */
-               /* case EC_TIMESTAMP: */
-               /*      conv_type = TYPE_str; */
-               /*      break; */
                case EC_DEC:
                        conv_type = TYPE_dbl;
                        break;
diff --git a/sql/backends/monet5/UDF/pyapi3/pytypes3.c 
b/sql/backends/monet5/UDF/pyapi3/pytypes3.c
--- a/sql/backends/monet5/UDF/pyapi3/pytypes3.c
+++ b/sql/backends/monet5/UDF/pyapi3/pytypes3.c
@@ -269,12 +269,13 @@ bool Python_ReleaseGIL(bool state)
        return 0;
 }
 
-// Returns true if the type of [object] is a scalar (i.e. numeric scalar or
-// string, basically "not an array but a single value")
+// Returns true if the type of [object] is a scalar (i.e. numeric scalar, 
date, time, datetime value or string,
+// basically "not an array but a single value")
 bool PyType_IsPyScalar(PyObject *object)
 {
        if (object == NULL)
                return false;
+
        USE_DATETIME_API;
        return (PyArray_CheckScalar(object) || PyLong_Check(object) ||
                        PyFloat_Check(object) || PyUnicode_Check(object) ||
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to