Changeset: 13896bdb0b0e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=13896bdb0b0e
Added Files:
        sql/test/mapi/Tests/mal_int128.malC
        sql/test/mapi/Tests/mal_int128.stable.err
        sql/test/mapi/Tests/mal_int128.stable.out
        sql/test/mapi/Tests/sql_dec38.sql
        sql/test/mapi/Tests/sql_dec38.stable.err
        sql/test/mapi/Tests/sql_dec38.stable.out
        sql/test/mapi/Tests/sql_int128.sql
        sql/test/mapi/Tests/sql_int128.stable.err
        sql/test/mapi/Tests/sql_int128.stable.out
Modified Files:
        sql/test/mapi/Tests/All
        sql/test/mapi/Tests/php_int128.php
        sql/test/mapi/Tests/php_int128.stable.out
Branch: int128
Log Message:

added MAL & SQL tests for 128-bit integers (hge / HUGEINT);

there is still some bug / hidden down-cast to lng (?) !


diffs (truncated from 488 to 300 lines):

diff --git a/sql/test/mapi/Tests/All b/sql/test/mapi/Tests/All
--- a/sql/test/mapi/Tests/All
+++ b/sql/test/mapi/Tests/All
@@ -13,5 +13,8 @@ utf8test
 HAVE_PYTHON2?python2_test_monetdb_sql
 HAVE_PYTHON3?python3_test_monetdb_sql
 HAVE_PHP?php_int64_dec18
+HAVE_HGE?mal_int128
+HAVE_HGE?sql_int128
 HAVE_PHP&HAVE_HGE?php_int128
+HAVE_HGE?sql_dec38
 HAVE_PHP&HAVE_HGE?php_dec38
diff --git a/sql/test/mapi/Tests/mal_int128.malC 
b/sql/test/mapi/Tests/mal_int128.malC
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/mal_int128.malC
@@ -0,0 +1,18 @@
+a:hge := 1234567890987654321:hge;
+b:hge := 10000000000:hge;
+c:hge := calc.*(a,b);
+d:hge := calc.*(c,b);
+e:hge := calc.+(d,a);
+io.print(a);
+io.print(b);
+io.print(c);
+io.print(d);
+io.print(e);
+io.print(123456789098765432101234567890987654321);
+io.print(123456789098765432101234567890987654321H);
+io.print(123456789098765432101234567890987654321:hge);
+z := bat.new(:oid,:hge);
+z := bat.append(z,123456789098765432101234567890987654321);
+z := bat.append(z,123456789098765432101234567890987654321H);
+z := bat.append(z,123456789098765432101234567890987654321:hge);
+io.print(z);
diff --git a/sql/test/mapi/Tests/mal_int128.stable.err 
b/sql/test/mapi/Tests/mal_int128.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/mal_int128.stable.err
@@ -0,0 +1,35 @@
+stderr of test 'mal_int128` in directory 'sql/test/mapi` itself:
+
+
+# 00:13:32 >  
+# 00:13:32 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36379" "--set" 
"mapi_usock=/var/tmp/mtest-22592/.s.monetdb.36379" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/ufs/manegold/_/Monet/HG/int128/prefix/_/var/MonetDB/mTests_sql_test_mapi"
 "--set" "mal_listing=2"
+# 00:13:32 >  
+
+# builtin opt  gdk_dbpath = 
/ufs/manegold/_/Monet/HG/int128/prefix/_/var/monetdb5/dbfarm/demo
+# builtin opt  gdk_debug = 0
+# builtin opt  gdk_vmtrim = no
+# builtin opt  monet_prompt = >
+# builtin opt  monet_daemon = no
+# builtin opt  mapi_port = 50000
+# builtin opt  mapi_open = false
+# builtin opt  mapi_autosense = false
+# builtin opt  sql_optimizer = default_pipe
+# builtin opt  sql_debug = 0
+# cmdline opt  gdk_nr_threads = 0
+# cmdline opt  mapi_open = true
+# cmdline opt  mapi_port = 36379
+# cmdline opt  mapi_usock = /var/tmp/mtest-22592/.s.monetdb.36379
+# cmdline opt  monet_prompt = 
+# cmdline opt  mal_listing = 2
+# cmdline opt  gdk_dbpath = 
/ufs/manegold/_/Monet/HG/int128/prefix/_/var/MonetDB/mTests_sql_test_mapi
+# cmdline opt  mal_listing = 2
+
+# 00:13:32 >  
+# 00:13:32 >  "mclient" "-lmal" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-22592" "--port=36379"
+# 00:13:32 >  
+
+
+# 00:13:32 >  
+# 00:13:32 >  "Done."
+# 00:13:32 >  
+
diff --git a/sql/test/mapi/Tests/mal_int128.stable.out 
b/sql/test/mapi/Tests/mal_int128.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/mal_int128.stable.out
@@ -0,0 +1,55 @@
+stdout of test 'mal_int128` in directory 'sql/test/mapi` itself:
+
+
+# 07:30:43 >  
+# 07:30:43 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=34256" "--set" 
"mapi_usock=/var/tmp/mtest-20272/.s.monetdb.34256" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/ufs/manegold/_/Monet/HG/int128/prefix/_/var/MonetDB/mTests_sql_test_mapi"
 "--set" "mal_listing=2"
+# 07:30:43 >  
+
+# MonetDB 5 server v11.17.17 "Jan2014-SP2"
+# Serving database 'mTests_sql_test_mapi', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit 
integers dynamically linked
+# Found 15.591 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2014 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://rome.ins.cwi.nl:34256/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-20272/.s.monetdb.34256
+# MonetDB/GIS module loaded
+# MonetDB/JAQL module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+
+# 07:30:43 >  
+# 07:30:43 >  "mclient" "-lmal" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-20272" "--port=34256"
+# 07:30:43 >  
+
+#io.print(a);
+[ 1234567890987654321  ]
+#io.print(b);
+[ 10000000000  ]
+#io.print(c);
+[ 12345678909876543210000000000        ]
+#io.print(d);
+[ 123456789098765432100000000000000000000      ]
+#io.print(e);
+[ 123456789098765432101234567890987654321      ]
+#io.print(123456789098765432101234567890987654321);
+[ 123456789098765432101234567890987654321      ]
+#io.print(123456789098765432101234567890987654321H);
+[ 123456789098765432101234567890987654321      ]
+#io.print(123456789098765432101234567890987654321:hge);
+[ 123456789098765432101234567890987654321      ]
+#io.print(z);
+#--------------------------#
+# h    t  # name
+# void hge  # type
+#--------------------------#
+[ 0@0, 123456789098765432101234567890987654321 ]
+[ 1@0, 123456789098765432101234567890987654321 ]
+[ 2@0, 123456789098765432101234567890987654321 ]
+
+# 07:30:43 >  
+# 07:30:43 >  "Done."
+# 07:30:43 >  
+
diff --git a/sql/test/mapi/Tests/php_int128.php 
b/sql/test/mapi/Tests/php_int128.php
--- a/sql/test/mapi/Tests/php_int128.php
+++ b/sql/test/mapi/Tests/php_int128.php
@@ -9,7 +9,7 @@ while ( $row = monetdb_fetch_assoc($res)
 $res = monetdb_query('CREATE TABLE php_int128 (i HUGEINT);') or 
die(monetdb_last_error());
 while ( $row = monetdb_fetch_assoc($res) ) { print_r($row); }
 
-$res = monetdb_query('INSERT INTO php_int128 VALUES 
(123456789012345678909876543210987654321);') or die(monetdb_last_error());
+$res = monetdb_query('INSERT INTO php_int128 VALUES 
(123456789098765432101234567890987654321);') or die(monetdb_last_error());
 while ( $row = monetdb_fetch_assoc($res) ) { print_r($row); }
 
 $res = monetdb_query('SELECT * FROM php_int128;') or die(monetdb_last_error());
diff --git a/sql/test/mapi/Tests/php_int128.stable.out 
b/sql/test/mapi/Tests/php_int128.stable.out
--- a/sql/test/mapi/Tests/php_int128.stable.out
+++ b/sql/test/mapi/Tests/php_int128.stable.out
@@ -60,10 +60,10 @@ Ready.
 
 Array
 (
-    [i] => 123456789012345678909876543210987654321,
+    [i] => 123456789098765432101234567890987654321,
 )
 i      
-123456789012345678909876543210987654321,       
+123456789098765432101234567890987654321,       
 
 # 16:20:35 >  
 # 16:20:35 >  "Done."
diff --git a/sql/test/mapi/Tests/sql_dec38.sql 
b/sql/test/mapi/Tests/sql_dec38.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/sql_dec38.sql
@@ -0,0 +1,4 @@
+START TRANSACTION;
+CREATE TABLE sql_dec38 (d38_0 DECIMAL(38,0), d38_19 DECIMAL(38,19), d38_38 
DECIMAL(38,38));
+INSERT INTO sql_dec38 VALUES (12345678901234567899876543210987654321, 
1234567890123456789.9876543210987654321, 
.12345678901234567899876543210987654321);
+SELECT * FROM sql_dec38;
diff --git a/sql/test/mapi/Tests/sql_dec38.stable.err 
b/sql/test/mapi/Tests/sql_dec38.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/sql_dec38.stable.err
@@ -0,0 +1,35 @@
+stderr of test 'sql_dec38` in directory 'sql/test/mapi` itself:
+
+
+# 23:45:59 >  
+# 23:45:59 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=39955" "--set" 
"mapi_usock=/var/tmp/mtest-8999/.s.monetdb.39955" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/ufs/manegold/_/Monet/HG/int128/prefix/_/var/MonetDB/mTests_sql_test_mapi"
 "--set" "mal_listing=0"
+# 23:45:59 >  
+
+# builtin opt  gdk_dbpath = 
/ufs/manegold/_/Monet/HG/int128/prefix/_/var/monetdb5/dbfarm/demo
+# builtin opt  gdk_debug = 0
+# builtin opt  gdk_vmtrim = no
+# builtin opt  monet_prompt = >
+# builtin opt  monet_daemon = no
+# builtin opt  mapi_port = 50000
+# builtin opt  mapi_open = false
+# builtin opt  mapi_autosense = false
+# builtin opt  sql_optimizer = default_pipe
+# builtin opt  sql_debug = 0
+# cmdline opt  gdk_nr_threads = 0
+# cmdline opt  mapi_open = true
+# cmdline opt  mapi_port = 39955
+# cmdline opt  mapi_usock = /var/tmp/mtest-8999/.s.monetdb.39955
+# cmdline opt  monet_prompt = 
+# cmdline opt  mal_listing = 2
+# cmdline opt  gdk_dbpath = 
/ufs/manegold/_/Monet/HG/int128/prefix/_/var/MonetDB/mTests_sql_test_mapi
+# cmdline opt  mal_listing = 0
+
+# 23:45:59 >  
+# 23:45:59 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-8999" "--port=39955"
+# 23:45:59 >  
+
+
+# 23:45:59 >  
+# 23:45:59 >  "Done."
+# 23:45:59 >  
+
diff --git a/sql/test/mapi/Tests/sql_dec38.stable.out 
b/sql/test/mapi/Tests/sql_dec38.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/sql_dec38.stable.out
@@ -0,0 +1,41 @@
+stdout of test 'sql_dec38` in directory 'sql/test/mapi` itself:
+
+
+# 23:45:59 >  
+# 23:45:59 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=39955" "--set" 
"mapi_usock=/var/tmp/mtest-8999/.s.monetdb.39955" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/ufs/manegold/_/Monet/HG/int128/prefix/_/var/MonetDB/mTests_sql_test_mapi"
 "--set" "mal_listing=0"
+# 23:45:59 >  
+
+# MonetDB 5 server v11.17.17 "Jan2014-SP2"
+# Serving database 'mTests_sql_test_mapi', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit 
integers dynamically linked
+# Found 15.591 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2014 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://rome.ins.cwi.nl:39955/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-8999/.s.monetdb.39955
+# MonetDB/GIS module loaded
+# MonetDB/JAQL module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+
+# 23:45:59 >  
+# 23:45:59 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-8999" "--port=39955"
+# 23:45:59 >  
+
+#START TRANSACTION;
+#CREATE TABLE sql_dec38 (d38_0 DECIMAL(38,0), d38_19 DECIMAL(38,19), d38_38 
DECIMAL(38,38));
+#INSERT INTO sql_dec38 VALUES (12345678901234567899876543210987654321, 
1234567890123456789.9876543210987654321, 
.12345678901234567899876543210987654321);
+[ 1    ]
+#SELECT * FROM sql_dec38;
+% sys.sql_dec38,       sys.sql_dec38,  sys.sql_dec38 # table_name
+% d38_0,       d38_19, d38_38 # name
+% decimal,     decimal,        decimal # type
+% 39,  40,     40 # length
+[ 12345678901234567899876543210987654321,      
1234567890123456789.9876543210987654321,        
0.12345678901234567899876543210987654321        ]
+
+# 23:45:59 >  
+# 23:45:59 >  "Done."
+# 23:45:59 >  
+
diff --git a/sql/test/mapi/Tests/sql_int128.sql 
b/sql/test/mapi/Tests/sql_int128.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/sql_int128.sql
@@ -0,0 +1,18 @@
+DECLARE a HUGEINT, b HUGEINT, c HUGEINT, d HUGEINT, e HUGEINT;
+explain SET a = 1234567890987654321;
+explain SET b = 10000000000;
+explain SET c = a * b;
+explain SET d = c * b;
+explain SET e = d + a;
+        SET a = 1234567890987654321;
+        SET b = 10000000000;
+        SET c = a * b;
+        SET d = c * b;
+        SET e = d + a;
+SELECT a, b, c, d, e;
+SELECT 123456789098765432101234567890987654321;
+START TRANSACTION;
+CREATE TABLE sql_int128 (i HUGEINT);
+explain INSERT INTO sql_int128 VALUES 
(123456789098765432101234567890987654321);
+        INSERT INTO sql_int128 VALUES 
(123456789098765432101234567890987654321);
+SELECT * FROM sql_int128;
diff --git a/sql/test/mapi/Tests/sql_int128.stable.err 
b/sql/test/mapi/Tests/sql_int128.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/mapi/Tests/sql_int128.stable.err
@@ -0,0 +1,35 @@
+stderr of test 'sql_int128` in directory 'sql/test/mapi` itself:
+
+
+# 23:47:20 >  
+# 23:47:20 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36076" "--set" 
"mapi_usock=/var/tmp/mtest-9199/.s.monetdb.36076" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/ufs/manegold/_/Monet/HG/int128/prefix/_/var/MonetDB/mTests_sql_test_mapi"
 "--set" "mal_listing=0"
+# 23:47:20 >  
+
+# builtin opt  gdk_dbpath = 
/ufs/manegold/_/Monet/HG/int128/prefix/_/var/monetdb5/dbfarm/demo
+# builtin opt  gdk_debug = 0
+# builtin opt  gdk_vmtrim = no
+# builtin opt  monet_prompt = >
+# builtin opt  monet_daemon = no
+# builtin opt  mapi_port = 50000
+# builtin opt  mapi_open = false
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to