Changeset: 111f49ed98a0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=111f49ed98a0
Added Files:
        sql/test/BugTracker-2017/Tests/handle-values-subqueries.Bug-6336.sql
        
sql/test/BugTracker-2017/Tests/handle-values-subqueries.Bug-6336.stable.err
        
sql/test/BugTracker-2017/Tests/handle-values-subqueries.Bug-6336.stable.out
Modified Files:
        .hgignore
        MonetDB.spec
        clients/mapiclient/mhelp.c
        common/stream/stream.c
        common/stream/stream.h
        configure.ag
        gdk/gdk_value.c
        monetdb5/modules/mal/calc.c
        monetdb5/modules/mal/remote.c
        monetdb5/optimizer/opt_dataflow.c
        monetdb5/optimizer/opt_mergetable.c
        monetdb5/optimizer/opt_pushselect.c
        sql/backends/monet5/UDF/pyapi/pyapi_locatepython.bat
        sql/backends/monet5/mal_backend.c
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql_gencode.c
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/vaults/fits/fits.c
        sql/backends/monet5/vaults/netcdf/netcdf.c
        sql/common/sql_types.c
        sql/server/rel_distribute.c
        sql/server/rel_distribute.h
        sql/server/rel_dump.c
        sql/server/rel_optimizer.c
        sql/server/rel_rel.c
        sql/server/rel_select.c
        sql/server/rel_updates.c
        sql/server/sql_parser.y
        
sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.out.Windows
        
sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out
        
sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
        sql/test/BugTracker-2017/Tests/All
        sql/test/BugTracker-2017/Tests/crash-dce.Bug-6330.stable.out
        sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
        sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
        sql/test/Dependencies/Tests/Dependencies.stable.out
        sql/test/Dependencies/Tests/Dependencies.stable.out.int128
        sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out
        
sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out.int128
        sql/test/Tests/systemfunctions.stable.out.int128
        sql/test/emptydb/Tests/check.stable.out
        sql/test/emptydb/Tests/check.stable.out.32bit
        sql/test/emptydb/Tests/check.stable.out.int128
        sql/test/leaks/Tests/check1.stable.out
        sql/test/leaks/Tests/check1.stable.out.int128
        sql/test/leaks/Tests/select1.stable.out
        sql/test/leaks/Tests/select1.stable.out.int128
        sql/test/leaks/Tests/select2.stable.out
        sql/test/leaks/Tests/select2.stable.out.int128
        sql/test/leaks/Tests/temp1.stable.out
        sql/test/leaks/Tests/temp1.stable.out.int128
        sql/test/mergetables/Tests/mergequery.stable.out
        sql/test/pg_regress/Tests/alter_table.stable.err
        sql/test/pg_regress/Tests/alter_table.stable.out
        sql/test/pg_regress/Tests/insert.stable.err
Branch: default
Log Message:

merged with Jul2017


diffs (truncated from 43115 to 300 lines):

diff --git a/.hgignore b/.hgignore
--- a/.hgignore
+++ b/.hgignore
@@ -63,6 +63,10 @@ lex.yy.c
 *.dll
 
 # other files we don't want
+GTAGS
+gtags.files
+GPATH
+GRTAGS
 TAGS
 tags
 *.pyo
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -783,7 +783,7 @@ systemd-tmpfiles --create %{_sysconfdir}
 # no _unitdir macro
 %exclude %{_prefix}/lib/systemd/system/monetdbd.service
 %endif
-%config(noreplace) %{_localstatedir}/monetdb5/dbfarm/.merovingian_properties
+%config(noreplace) %attr(664,monetdb,monetdb) 
%{_localstatedir}/monetdb5/dbfarm/.merovingian_properties
 %{_libdir}/monetdb5/autoload/??_sql.mal
 %{_libdir}/monetdb5/lib_sql.so
 %{_libdir}/monetdb5/*.sql
diff --git a/clients/mapiclient/mhelp.c b/clients/mapiclient/mhelp.c
--- a/clients/mapiclient/mhelp.c
+++ b/clients/mapiclient/mhelp.c
@@ -74,8 +74,8 @@ SQLhelp sqlhelp[] = {
         NULL,
         "See also https://www.monetdb.org/Documentation/SQLreference/Users"},
        {"ANALYZE",
-        "Collect statistics for optimizations",
-        "ANALYZE qname [column_list] [SAMPLE size] [MINMAX]",
+        "Collect column data statistics for optimizations",
+        "ANALYZE schemaname [ . tablename [ column_list ] ] [SAMPLE size] 
[MINMAX]",
         "column_list",
         "See also 
https://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/statistics"},
        {"CALL",
@@ -85,7 +85,7 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"CASE",
         "Case statement for procedures/functions",
-        "CASE  scalar_expression [ when_statement ...]  [ELSE 
procedure_statement ... ] END CASE",
+        "CASE scalar_expression [ when_statement ...]  [ELSE 
procedure_statement ... ] END CASE",
         NULL,
         "See also 
https://www.monetdb.org/Documentation/SQLreference/Flowofcontrol"},
        {"COMMIT",
@@ -97,7 +97,7 @@ SQLhelp sqlhelp[] = {
         "Append binary representations into a table",
         "COPY [nrofrecords] BINARY INTO qname [column_list] FROM string 
[','...] [NO CONSTRAINT]",
         "nrofrecords",
-        "see 
https://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/BinaryBulkLoad"},
+        "See also 
https://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/BinaryBulkLoad"},
        {"COPY INTO",
         "Parse a csv-file into a table",
         "COPY [nrofrecords] INTO qname [column_list] FROM string [','...] 
[headerlist] [ separators]\n"
@@ -114,32 +114,31 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"CREATE AGGREGATE FUNCTION",
         "",
-        "CREATE AGGREGATE  FUNCTION qname '(' { '*' | [ param [',' ...]] } 
')'\n"
+        "CREATE [ OR REPLACE ] AGGREGATE FUNCTION qname '(' { '*' | [ param 
[',' ...]] } ')'\n"
         "    RETURNS { data_type | TABLE '(' function_return [ ',' ... ] ')' 
}\n"
         "    EXTERNAL NAME ident ',' ident\n"
-        "CREATE AGGREGATE FUNCTION qname '(' { '*' | [ param [',' ...]] }')'\n"
+        "CREATE [ OR REPLACE ] AGGREGATE FUNCTION qname '(' { '*' | [ param 
[',' ...]] }')'\n"
         "    RETURNS { data_type | TABLE '(' function_return [ ',' ... ] ')' 
}\n"
         "    LANGUAGE ident external_code",
         "param,data_type,function_return",
         NULL},
        {"CREATE FILTER FUNCTION",
         "",
-        "CREATE FILTER  FUNCTION qname '(' { '*' | [ param [',' ...]] } ')'\n"
+        "CREATE [ OR REPLACE ] FILTER FUNCTION qname '(' { '*' | [ param [',' 
...]] } ')'\n"
         "    RETURNS { data_type | TABLE '(' function_return [ ',' ... ] ')' 
}\n"
         "    EXTERNAL NAME ident ',' ident",
         "param,data_type,function_return",
         NULL},
        {"CREATE FUNCTION",
         "",
-        "CREATE FUNCTION qname '(' { '*' | [ param [',' ...]] } ')'\n"
+        "CREATE [ OR REPLACE ] FUNCTION qname '(' { '*' | [ param [',' ...]] } 
')'\n"
         "    RETURNS { data_type | TABLE '(' function_return [ ',' ... ] ')' 
}\n"
         "    EXTERNAL NAME ident ',' ident\n"
-        "CREATE FUNCTION qname '(' { '*' | [ param [',' ...]] } ')'\n"
+        "CREATE [ OR REPLACE ] FUNCTION qname '(' { '*' | [ param [',' ...]] } 
')'\n"
         "    RETURNS { data_type | TABLE '(' function_return [ ',' ... ] ')' 
}\n"
         "    BEGIN [ ATOMIC ] statement [ ';' ...] END\n"
-        "CREATE FUNCTION qname '(' { '*' | [ param [',' ...]] }')'\n"
+        "CREATE [ OR REPLACE ] FUNCTION qname '(' { '*' | [ param [',' ...]] 
}')'\n"
         "    RETURNS { data_type | TABLE '(' function_return [ ',' ... ] ')' 
}\n"
-
         "    LANGUAGE ident external_code",
         "param,data_type,function_return,external_code",
         NULL},
@@ -150,56 +149,56 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"CREATE PROCEDURE",
         "",
-        "CREATE PROCEDURE qname '(' { '*' | [ param [',' ...]] }')'\n"
+        "CREATE [ OR REPLACE ] PROCEDURE qname '(' { '*' | [ param [',' ...]] 
}')'\n"
         "    EXTERNAL NAME ident ',' ident\n"
-        "CREATE PROCEDURE qname '(' { '*' | [ param [',' ...]] } ')'\n"
+        "CREATE [ OR REPLACE ] PROCEDURE qname '(' { '*' | [ param [',' ...]] 
} ')'\n"
         "    BEGIN [ ATOMIC ] procedure_statement [ ';' ...] END\n"
-        "CREATE PROCEDURE qname '(' { '*' | [ param [',' ...]] } ')'\n"
+        "CREATE [ OR REPLACE ] PROCEDURE qname '(' { '*' | [ param [',' ...]] 
} ')'\n"
         "    LANGUAGE ident external_code",
         "param,data_type,external_code",
         NULL},
        {"CREATE LOADER",
         "",
-        "CREATE LOADER qname '(' [ param [',' ...]] ')'\n"
+        "CREATE [ OR REPLACE ] LOADER qname '(' [ param [',' ...]] ')'\n"
         "    LANGUAGE ident external_code",
         "param,data_type,function_return,external_code",
         NULL},
        {"CREATE MERGE TABLE",
         "",
-        "CREATE MERGE TABLE qname table_source;",
+        "CREATE MERGE TABLE [ IF NOT EXISTS ] qname table_source;",
         NULL,
         "See also 
https://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/DataPartitioning"},
        {"CREATE REMOTE TABLE",
         "",
-        "CREATE REMOTE TABLE qname ON string",
+        "CREATE REMOTE TABLE [ IF NOT EXISTS ] qname ON string",
         NULL,
         "remote name should match 
mapi:monetdb://host:port/database[/schema[/table]]"},
        {"CREATE REPLICA TABLE",
         "",
-        "CREATE REPLICA TABLE qname table_source;",
+        "CREATE REPLICA TABLE [ IF NOT EXISTS ] qname table_source;",
         NULL,
-        
"https://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/TransactionReplication"},
+        "See also 
https://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/TransactionReplication"},
        {"CREATE SCHEMA",
         "",
-        "CREATE SCHEMA schema_name [default_char_set] [path_spec] 
[schema_element]",
+        "CREATE SCHEMA [ IF NOT EXISTS ] schema_name [default_char_set] 
[path_spec] [schema_element]",
         "schema_name,default_char_set,path_spec,schema_element",
         NULL},
        {"CREATE SEQUENCE",
         "Define a new sequence generator",
-        "CREATE SEQUENCE ident   [ AS datatype] [ START [WITH start]] 
[INCREMENT BY increment]\n"
+        "CREATE SEQUENCE ident [ AS datatype] [ START [WITH start]] [INCREMENT 
BY increment]\n"
         "[MINVALUE minvalue | NO MINVALUE] [MAXVALUE maxvalue | NOMAXVALUE] | 
[ [ NO] CYCLE]",
         NULL,
         "See also 
https://www.monetdb.org/Documentation/Manuals/SQLreference/SerialTypes"},
        {"CREATE STREAM TABLE",
         "Temporary table, locked during updates/ continues query processing",
-        "CREATE STREAM TABLE qname table_source\n",
+        "CREATE STREAM TABLE [ IF NOT EXISTS ] qname table_source\n",
         NULL,
         NULL},
        {"CREATE TABLE",
         "",
-        "CREATE TABLE qname table_source [STORAGE ident string]\n"
-        "CREATE TABLE qname FROM LOADER function_ref\n"
-        "CREATE [ LOCAL | GLOBAL ] TEMP[ORARY] TABLE qname table_source 
[on_commit]",
+        "CREATE TABLE [ IF NOT EXISTS ] qname table_source [STORAGE ident 
string]\n"
+        "CREATE TABLE [ IF NOT EXISTS ] qname FROM LOADER function_ref\n"
+        "CREATE [ LOCAL | GLOBAL ] TEMP[ORARY] TABLE [ IF NOT EXISTS ] qname 
table_source [on_commit]",
         "table_source,on_commit,function_ref",
         NULL},
        {"CREATE TRIGGER",
@@ -215,7 +214,7 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"CREATE VIEW",
         "",
-        "CREATE VIEW qname [ column_list ] AS { query_expression | '(' 
query_expression ') } [ WITH CHECK OPTION]",
+        "CREATE VIEW qname [ column_list ] AS { query_expression | '(' 
query_expression ') } [ WITH CHECK OPTION ]",
         "column_list,query_expression",
         NULL},
        {"CURRENT_DATE",
@@ -260,13 +259,14 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"DROP AGGREGATE",
         "",
-        "DROP AGGREGATE qname [ RESTRICT | CASCADE ]",
+        "DROP ALL AGGREGATE qname [ RESTRICT | CASCADE ]\n"
+        "DROP AGGREGATE qname [ '(' [ param [',' ...]] ')' ] [ RESTRICT | 
CASCADE ]",
         NULL,
         NULL},
        {"DROP FUNCTION",
         "",
         "DROP ALL [FILTER] FUNCTION qname [ RESTRICT | CASCADE ]\n"
-        "DROP routine_designator [ RESTRICT | CASCADE ]",
+        "DROP [FILTER] FUNCTION qname [ '(' [ param [',' ...]] ')' ] [ 
RESTRICT | CASCADE ]",
         NULL,
         NULL},
        {"DROP INDEX",
@@ -276,12 +276,14 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"DROP LOADER",
         "",
-        "DROP ALL LOADED qname [ RESTRICT | CASCADE ]",
+        "DROP ALL LOADER qname [ RESTRICT | CASCADE ]\n"
+        "DROP LOADER qname [ '(' [ param [',' ...]] ')' ] [ RESTRICT | CASCADE 
]",
         NULL,
         NULL},
        {"DROP PROCEDURE",
         "",
-        "DROP PROCEDURE qname [ RESTRICT | CASCADE ]",
+        "DROP ALL PROCEDURE qname [ RESTRICT | CASCADE ]\n"
+        "DROP PROCEDURE qname [ '(' [ param [',' ...]] ')' ] [ RESTRICT | 
CASCADE ]",
         NULL,
         NULL},
        {"DROP ROLE",
@@ -291,7 +293,7 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"DROP SCHEMA",
         "",
-        "DROP SCHEMA qname [ RESTRICT | CASCADE ]",
+        "DROP SCHEMA [ IF EXISTS ] qname [ RESTRICT | CASCADE ]",
         NULL,
         NULL},
        {"DROP SEQUENCE",
@@ -301,7 +303,7 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"DROP TABLE",
         "",
-        "DROP TABLE qname [ RESTRICT | CASCADE ]",
+        "DROP TABLE [ IF EXISTS ] qname [ RESTRICT | CASCADE ]",
         NULL,
         NULL},
        {"DROP TRIGGER",
@@ -321,7 +323,7 @@ SQLhelp sqlhelp[] = {
         NULL},
        {"DROP VIEW",
         "",
-        "DROP VIEW qname [ RESTRICT | CASCADE ]",
+        "DROP VIEW [ IF EXISTS ] qname [ RESTRICT | CASCADE ]",
         NULL,
         NULL},
        {"IF",
@@ -520,11 +522,10 @@ SQLhelp sqlhelp[] = {
         "DATE  | TIME [ time_precision ] tz | TIMESTAMP [ timestamp_precision 
] tz",
         "time_precision,timestamp_precision,tz",
         NULL},
-       {
-        "data_type",
+       {"data_type",
         NULL,
-        "[ [ CHARACTER | VARCHAR | CLOB | BLOB] [ '(' nonzero ')' ] |\n"
-        "TINYINT | SMALLINT | BIGINT | HUGEINT | [ DECIMAL | FLOAT] [ '(' 
nonzero [',' nonzero ] ')'] |\n"
+        "[ [ CHAR[ACTER] | VARCHAR | CLOB | TEXT | BLOB] [ '(' nonzero ')' ] 
|\n"
+        "TINYINT | SMALLINT | INT[EGER] | BIGINT | HUGEINT | [ DECIMAL | 
FLOAT] [ '(' nonzero [',' nonzero ] ')'] |\n"
         " DOUBLE [ PRECISION ] | REAL | datetime_type | interval_type | 
geometry_type",
         "datetime_type,interval_type,geometry_type",
         NULL},
@@ -553,7 +554,7 @@ SQLhelp sqlhelp[] = {
         "AUTO_INCREMENT | GENERATED ALWAYS AS IDENTITY [ '(' [ AS datatype] [ 
START [WITH start]] [INCREMENT BY increment]\n"
         "[MINVALUE minvalue | NO MINVALUE] [MAXVALUE maxvalue | NOMAXVALUE] | 
[ [ NO] CYCLE] ')' ] ",
         NULL,
-        "see 
https://www.monetdb.org/Documentation/Manuals/SQLreference/SerialTypes"},
+        "See also 
https://www.monetdb.org/Documentation/Manuals/SQLreference/SerialTypes"},
        {"global_privileges",
         NULL,
         "{ COPY FROM | COPY INTO } [ ',' ... ]",
diff --git a/common/stream/stream.c b/common/stream/stream.c
--- a/common/stream/stream.c
+++ b/common/stream/stream.c
@@ -116,15 +116,15 @@
 #endif
 
 #ifndef EWOULDBLOCK
-#define EWOULDBLOCK EAGAIN
+#define EWOULDBLOCK    EAGAIN
 #endif
 
 #ifndef EINTR
-#define EINTR  EAGAIN
+#define EINTR          EAGAIN
 #endif
 
 #ifndef INVALID_SOCKET
-#define INVALID_SOCKET (-1)
+#define INVALID_SOCKET (-1)
 #endif
 
 #ifdef NATIVE_WIN32
@@ -132,8 +132,8 @@
 #define fileno(fd) _fileno(fd)
 #endif
 
-#define UTF8BOM                "\xEF\xBB\xBF" /* UTF-8 encoding of Unicode BOM 
*/
-#define UTF8BOMLENGTH  3              /* length of above */
+#define UTF8BOM                "\xEF\xBB\xBF"  /* UTF-8 encoding of Unicode 
BOM */
+#define UTF8BOMLENGTH  3               /* length of above */
 
 #ifdef _MSC_VER
 /* use intrinsic functions on Windows */
@@ -164,7 +164,7 @@ struct stream {
        char isutf8;            /* known to be UTF-8 due to BOM */
        short type;             /* ascii/binary */
        char *name;
-       unsigned int timeout;      /* timeout in ms */
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to