MonetDB: Nov2019 - Compilation fixes and missing 'free' calls
Changeset: 4842e8a6ddba for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4842e8a6ddba Modified Files: clients/mapiclient/dump.c Branch: Nov2019 Log Message: Compilation fixes and missing 'free' calls diffs (129 lines): diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c --- a/clients/mapiclient/dump.c +++ b/clients/mapiclient/dump.c @@ -1167,11 +1167,8 @@ describe_table(Mapi mid, const char *sch t = sescape(tname); maxquerylen = 5120 + strlen(t) + strlen(s); query = malloc(maxquerylen); - if (query == NULL) { - if (sname != NULL) - free(sname); + if (query == NULL) goto bailout; - } snprintf(query, maxquerylen, "%s " @@ -1485,7 +1482,7 @@ int describe_sequence(Mapi mid, const char *schema, const char *tname, stream *toConsole) { MapiHdl hdl = NULL; - char *query; + char *query = NULL; size_t maxquerylen; char *sname = NULL; const char *comments_clause = get_comments_clause(mid); @@ -1509,11 +1506,8 @@ describe_sequence(Mapi mid, const char * maxquerylen = 5120 + strlen(tname) + strlen(schema); query = malloc(maxquerylen); - if (query == NULL) { - if (sname != NULL) - free(sname); + if (query == NULL) goto bailout; - } snprintf(query, maxquerylen, "%s " @@ -1959,8 +1953,12 @@ dump_function(Mapi mid, stream *toConsol if (flkey) { char* nflkey = flkey ? strdup(flkey) : NULL; if (!nflkey) { - if (remark) + if (remark) { free(remark); + free(sname); + free(fname); + free(ftkey); + } goto bailout; } else flkey = nflkey; @@ -1976,8 +1974,12 @@ dump_function(Mapi mid, stream *toConsol if (!ffunc || query_len < 0 || query_len >= (int) query_size) { free(ffunc); free(flkey); - if (remark) + if (remark) { free(remark); + free(sname); + free(fname); + free(ftkey); + } free(query); goto bailout; } @@ -1987,8 +1989,12 @@ dump_function(Mapi mid, stream *toConsol if (hdl == NULL || mapi_error(mid)) { free(ffunc); free(flkey); - if (remark) + if (remark) { free(remark); + free(sname); + free(fname); + free(ftkey); + } goto bailout; } if (flang != 1 && flang != 2) { @@ -2006,8 +2012,12 @@ dump_function(Mapi mid, stream *toConsol free(ascal); free(ffunc); free(flkey); - if (remark) + if (remark) { free(remark); + free(sname); + free(fname); + free(ftkey); + } goto bailout; } if (strcmp(ainou, "0") == 0) { @@ -2043,8 +2053,12 @@ dump_function(Mapi mid, stream *toConsol free(ascal); free(ffunc); free(flkey); - if (remark) + if (remark) { free(remark); + free(sname); + free(fname); + free(ftkey); + } goto bailout; } @@ -2139,7 +2153,7 @@ int dump_functions(Mapi mid, stream *toConsole, char set_schema, const char *sname, const char *fname, const char *id) { MapiHdl hdl = NULL; - char *query; + char *query = NULL; size_t query_size; int query_len; bool hashge; @@ -2204,8 +2218,10 @@ dump_functions(Mapi mid, stream *toConso } query_len += snprintf(query + query_len, query_size - query_len, "ORDER BY f.func, f.id"); assert(query_len < (int) query_size); - if (query_len >= (int) query_size) + if (query_len >= (int) query_size) { +
MonetDB: Apr2019 - Added missing rollback command to end of script.
Changeset: b17dafcdef40 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b17dafcdef40 Modified Files: sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.sql sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.stable.out Branch: Apr2019 Log Message: Added missing rollback command to end of script. diffs (20 lines): diff --git a/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.sql b/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.sql --- a/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.sql +++ b/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.sql @@ -56,3 +56,5 @@ create view s0_mix_source_string_result_ -- The INSERT INTO fails insert into resultbuffer_int_str (q, i1,s1, prob) select cast(0 as int) as q,a1, a2, prob from s0_mix_source_string_result_result as r; +ROLLBACK; + diff --git a/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.stable.out b/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.stable.out --- a/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.stable.out +++ b/sql/test/BugTracker-2019/Tests/crash-in-rel_dependencies.Bug-6703.stable.out @@ -72,6 +72,7 @@ Ready. #create view s0_mix_source_string_result_result as with q0_x0 as (select a1, prob from (select cachedrel_44.a1 as a1, cachedrel_44.a2 as a2, cachedrel_44.a3 as a3, t__x2.a1 as a4, cachedrel_44.prob * t__x2.prob as prob from cachedrel_44,(select a2 as a1, prob from (select paramname as a1, value as a2, prob from paramsint where paramname = 's0_userid') as t__x1) as t__x2 where cachedrel_44.a3 = t__x2.a1) as t__x3),q0_x1 as (select a1, prob from (select cachedrel_6.a1 as a1, q0_x0.a1 as a2, cachedrel_6.prob * q0_x0.prob as prob from cachedrel_6,q0_x0 where cachedrel_6.a1 = q0_x0.a1) as t__x5),q0_x2 as (select a1, prob from (select cachedrel_647.a1 as a1, cachedrel_647.a2 as a2, q0_x1.a1 as a3, cachedrel_647.prob * q0_x1.prob as prob from cachedrel_647,q0_x1 where cachedrel_647.a2 = q0_x1.a1) as t__x7),q0_x3 as (select a1, 1 as prob from q0_x2),q0_x4 as (select a1, a4 as a2, prob from (select q0_x3.a1 as a1, cachedrel_33.a1 as a2, cachedrel_33.a2 as a3, cachedrel_33.a3 as a4, q0_x3.pro b * cachedrel_33.prob as prob from q0_x3,cachedrel_33 where q0_x3.a1 = cachedrel_33.a1) as t__x9),q0_x5 as (select a2 as a1, max(prob) as prob from q0_x4 group by a2),q0_x8 as (select a1, prob from (select q0_x5.a1 as a1, q0_x5.prob / t__x11.prob as prob from q0_x5,(select max(prob) as prob from q0_x5) as t__x11) as t__x12),q0_x9 as (select a1, a4 as a2, prob from (select q0_x8.a1 as a1, cachedrel_84.a1 as a2, cachedrel_84.a2 as a3, cachedrel_84.a3 as a4, q0_x8.prob * cachedrel_84.prob as prob from q0_x8,cachedrel_84 where q0_x8.a1 = cachedrel_84.a1) as t__x14),q0_x10 as (select a2 as a1, max(prob) as prob from q0_x9 group by a2),q0_x12 as (select a1, a4 as a2, prob from (select q0_x10.a1 as a1, cachedrel_84.a1 as a2, cachedrel_84.a2 as a3, cachedrel_84.a3 as a4, q0_x10.prob * cachedrel_84.prob as prob from q0_x10,cachedrel_84 where q0_x10.a1 = cachedrel_84.a1) as t__x16),q0_x13 as (select a2 as a1, max(prob) as prob from q0_x12 group by a2),q0_x15 as (select a1, a4 as a2, prob from (select q0_x13.a1 as a1, cachedrel_84.a1 as a2, cachedrel_84.a2 as a3, cachedrel_84.a3 as a4, q0_x13.prob * cachedrel_84.prob as prob from q0_x13,cachedrel_84 where q0_x13.a1 = cachedrel_84.a1) as t__x18),q0_x16 as (select a2 as a1, max(prob) as prob from q0_x15 group by a2),q0_x18 as (select a1, a4 as a2, prob from (select q0_x16.a1 as a1, cachedrel_104.a1 as a2, cachedrel_104.a2 as a3, cachedrel_104.a3 as a4, q0_x16.prob * cachedrel_104.prob as prob from q0_x16,cachedrel_104 where q0_x16.a1 = cachedrel_104.a1) as t__x20),q0_x19 as (select a2 as a1, max(prob) as prob from q0_x18 group by a2),q0_x20 as (select a1, a4 as a2, prob from (select q0_x19.a1 as a1, cachedrel_104.a1 as a2, cachedrel_104.a2 as a3, cachedrel_104.a3 as a4, q0_x19.prob * cachedrel_104.prob as prob from q0_x19,cachedrel_104 where q0_x19.a1 = cachedrel_104.a1) as t__x22),q0_x21 as (select a2 as a1, max(prob) as prob from q0_x20 group by a2),q0_x22 as (select a1, a4 as a2, prob from (select q0_x21.a1 as a1, cache drel_104.a1 as a2, cachedrel_104.a2 as a3, cachedrel_104.a3 as a4, q0_x21.prob * cachedrel_104.prob as prob from q0_x21,cachedrel_104 where q0_x21.a1 = cachedrel_104.a1) as t__x24),q0_x23 as (select a2 as a1, max(prob) as prob from q0_x22 group by a2),q0_x24 as (select a1, a4 as a2, prob from (select q0_x23.a1 as a1, cachedrel_421.a1 as a2, cachedrel_421.a2 as a3, cachedrel_421.a3 as a4, q0_x23.prob * cachedrel_421.prob as prob from q0_x23,cachedrel_421 where q0_x23.a1 = cachedrel_421.a1) as t__x26),q0_x25 as (select a2 as a1, prob from q0_x24),q0_x26 as (select a1, a3 as a2, max(prob) as prob from (select cachedrel_91.a1 as a1, cachedrel_91.a2 as
MonetDB: default - Merge with Nov2019
Changeset: c0c552fd820c for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c0c552fd820c Modified Files: sql/backends/monet5/sql_upgrades.c sql/test/BugTracker-2009/Tests/All sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err sql/test/Dump/Tests/dump-again.stable.err sql/test/Tests/comment-auth.stable.err sql/test/Tests/comment-dump.stable.err sql/test/mergetables/Tests/sqlsmith.Bug-6455.stable.err sql/test/mergetables/Tests/sqlsmith.Bug-6459.stable.err sql/test/testdb-reload/Tests/reload.stable.err sql/test/testdb/Tests/dump-nogeom.stable.err Branch: default Log Message: Merge with Nov2019 diffs (240 lines): diff --git a/sql/backends/monet5/sql_upgrades.c b/sql/backends/monet5/sql_upgrades.c --- a/sql/backends/monet5/sql_upgrades.c +++ b/sql/backends/monet5/sql_upgrades.c @@ -1941,6 +1941,7 @@ sql_update_apr2019_sp2(Client c) if (pos > 7900) { \ pos += snprintf(buf + pos, bufsize - pos, ") as t1(c1,c2,c3) where t1.c1 not in (select \"id\" from dependencies where depend_id = t1.c2);\n"); \ assert(pos < bufsize); \ + printf("Running database upgrade commands:\n%s\n", buf); \ err = SQLstatementIntern(c, , "update", true, false, NULL); \ if (err) \ goto bailout; \ @@ -2071,6 +2072,7 @@ sql_update_nov2019_missing_dependencies( pos += snprintf(buf + pos, bufsize - pos, ") as t1(c1,c2,c3) where t1.c1 not in (select \"id\" from dependencies where depend_id = t1.c2);\n"); assert(pos < bufsize); + printf("Running database upgrade commands:\n%s\n", buf); err = SQLstatementIntern(c, , "update", true, false, NULL); } diff --git a/sql/test/BugTracker-2009/Tests/All b/sql/test/BugTracker-2009/Tests/All --- a/sql/test/BugTracker-2009/Tests/All +++ b/sql/test/BugTracker-2009/Tests/All @@ -25,7 +25,7 @@ bool-str-bug rollback_bug update-crash correlated-selection-bug -HAVE_MAL_DEBUGGER?segfault_when_quitting_debugger.SF-2538837 +HAVE_MAL_DEBUGGER_WIN32?segfault_when_quitting_debugger.SF-2538837 row_number_bug.SF-2546109 #set_history_and_drop_table.SF-2607045 not relevant anymore TypeException_having_count_distinct.SF-2494227 diff --git a/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out b/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out --- a/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out +++ b/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out @@ -60,8 +60,6 @@ stdout of test 'crash-select_after_MAL_e # loading sql script: 90_generator.sql # loading sql script: 90_generator_hge.sql # loading sql script: 99_system.sql -#WARNING To speedup calc./ a bulk operator implementation is needed -#X_24965:bat[:lng] := mal.multiplex("calc":str,"/":str,0:bte,X_24964:bat[:int]); # 14:22:38 > # 14:22:38 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-11002" "--port=36959" diff --git a/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err b/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err --- a/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err +++ b/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err @@ -30,8 +30,6 @@ stderr of test 'type-resolution-error.Bu #X_353:bat[:lng] := mal.multiplex("user":str, "hashsize":str, X_319:bat[:bit], X_298:bat[:lng]); #WARNING To speedup user.imprintsize a bulk operator implementation is needed #X_355:bat[:lng] := mal.multiplex("user":str, "imprintsize":str, X_298:bat[:lng], X_284:bat[:str]); -#WARNING To speedup calc.ifthenelse a bulk operator implementation is needed -#X_572:bat[:bit] := mal.multiplex("calc":str, "ifthenelse":str, X_571:bit, X_130:bat[:int], X_560:bat[:bit]); # 12:52:03 > # 12:52:03 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-19106" "--port=36358" diff --git a/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err b/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err --- a/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err +++ b/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err @@ -20,16 +20,6 @@ stderr of test 'python-loader-string.Bug # cmdline opt monet_prompt = # cmdline opt gdk_dbpath = /home/ferreira/repositories/MonetDB-Apr2019/BUILD/var/MonetDB/mTests_sql_test_BugTracker-2019 # cmdline opt embedded_py = 2 -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#
MonetDB: Nov2019 - Removed more obsolete messages
Changeset: b05e6716b0e5 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b05e6716b0e5 Modified Files: sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err sql/test/Tests/comment-auth.stable.err sql/test/Tests/comment-dump.stable.err sql/test/mergetables/Tests/sqlsmith.Bug-6455.stable.err sql/test/mergetables/Tests/sqlsmith.Bug-6459.stable.err Branch: Nov2019 Log Message: Removed more obsolete messages diffs (98 lines): diff --git a/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out b/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out --- a/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out +++ b/sql/test/BugTracker-2017/Tests/crash-select_after_MAL_error.Bug-6332.stable.out @@ -60,8 +60,6 @@ stdout of test 'crash-select_after_MAL_e # loading sql script: 90_generator.sql # loading sql script: 90_generator_hge.sql # loading sql script: 99_system.sql -#WARNING To speedup calc./ a bulk operator implementation is needed -#X_24965:bat[:lng] := mal.multiplex("calc":str,"/":str,0:bte,X_24964:bat[:int]); # 14:22:38 > # 14:22:38 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-11002" "--port=36959" diff --git a/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err b/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err --- a/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err +++ b/sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err @@ -30,8 +30,6 @@ stderr of test 'type-resolution-error.Bu #X_353:bat[:lng] := mal.multiplex("user":str, "hashsize":str, X_319:bat[:bit], X_298:bat[:lng]); #WARNING To speedup user.imprintsize a bulk operator implementation is needed #X_355:bat[:lng] := mal.multiplex("user":str, "imprintsize":str, X_298:bat[:lng], X_284:bat[:str]); -#WARNING To speedup calc.ifthenelse a bulk operator implementation is needed -#X_572:bat[:bit] := mal.multiplex("calc":str, "ifthenelse":str, X_571:bit, X_130:bat[:int], X_560:bat[:bit]); # 12:52:03 > # 12:52:03 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-19106" "--port=36358" diff --git a/sql/test/Tests/comment-auth.stable.err b/sql/test/Tests/comment-auth.stable.err --- a/sql/test/Tests/comment-auth.stable.err +++ b/sql/test/Tests/comment-auth.stable.err @@ -23,8 +23,6 @@ stderr of test 'comment-auth` in directo # cmdline opt gdk_dbpath = /Users/joeri/monets/default/var/MonetDB/mTests_sql_test # cmdline opt embedded_r = yes # cmdline opt gdk_debug = 536870922 -#WARNING To speedup aggr.exist a bulk operator implementation is needed -#X_583:bat[:bit] := mal.multiplex("aggr":str, "exist":str, X_558:bat[:int]); # 14:17:01 > # 14:17:01 > "/usr/local/opt/python/bin/python2.7" "comment-auth.SQL.py" "comment-auth" diff --git a/sql/test/Tests/comment-dump.stable.err b/sql/test/Tests/comment-dump.stable.err --- a/sql/test/Tests/comment-dump.stable.err +++ b/sql/test/Tests/comment-dump.stable.err @@ -23,26 +23,6 @@ stderr of test 'comment-dump` in directo # cmdline opt gdk_dbpath = /Users/joeri/monets/default/var/MonetDB/mTests_sql_test # cmdline opt embedded_r = yes # cmdline opt gdk_debug = 536870922 -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_233:bat[:str] := mal.multiplex("sql":str, "password":str, X_208:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_234:bat[:str] := mal.multiplex("sql":str, "password":str, X_209:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_235:bat[:str] := mal.multiplex("sql":str, "password":str, X_210:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_236:bat[:str] := mal.multiplex("sql":str, "password":str, X_211:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_237:bat[:str] := mal.multiplex("sql":str, "password":str, X_212:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_233:bat[:str] := mal.multiplex("sql":str, "password":str, X_208:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_234:bat[:str] := mal.multiplex("sql":str, "password":str, X_209:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_235:bat[:str] := mal.multiplex("sql":str, "password":str, X_210:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#X_236:bat[:str] := mal.multiplex("sql":str, "password":str, X_211:bat[:str]); -#WARNING To speedup sql.password a bulk operator implementation is needed -#
MonetDB: default - Try to be more Windows-friendly
Changeset: 9ac311ca0ba7 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9ac311ca0ba7 Modified Files: sql/storage/store.c Branch: default Log Message: Try to be more Windows-friendly diffs (66 lines): diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -2593,7 +2593,7 @@ store_hot_snapshot(str tarfile) lng result = 0; char tmppath[FILENAME_MAX]; char dirpath[FILENAME_MAX]; - int do_unlink = 0; + int do_remove = 0; int dir_fd = -1; stream *tar_stream = NULL; buffer *plan_buf = NULL; @@ -2611,7 +2611,13 @@ store_hot_snapshot(str tarfile) GDKerror("Failed to open %s for writing", tmppath); goto end; } - do_unlink = 1; + do_remove = 1; + +#ifdef HAVE_FSYNC + // The following only makes sense on POSIX, where fsync'ing a file + // guarantees the bytes of the file to go to disk, but not necessarily + // guarantees the existence of the file in a directory to be persistent. + // Hence the fsync-the-parent ceremony. // Set dirpath to the directory containing the tar file. // Call realpath(2) to make the path absolute so it has at least @@ -2637,6 +2643,10 @@ store_hot_snapshot(str tarfile) GDKerror("First fsync on %s failed: %s", dirpath, strerror(errno)); goto end; } +#else + (void)dirpath; +#endif + plan_buf = buffer_create(64 * 1024); if (!plan_buf) { @@ -2673,12 +2683,14 @@ store_hot_snapshot(str tarfile) GDKerror("rename %s to %s failed: %s", tmppath, tarfile, strerror(errno)); goto end; } - do_unlink = 0; + do_remove = 0; +#ifdef HAVE_FSYNC + // More POSIX fsync-the-parent-dir ceremony if (fsync(dir_fd) < 0) { GDKerror("fsync on dir %s failed: %s", dirpath, strerror(errno)); goto end; } - +#endif // the original idea was to return a sort of sequence number of the // database that identifies exactly which version has been snapshotted // but no such number is available: @@ -2699,8 +2711,8 @@ end: close_stream(plan_stream); if (plan_buf) buffer_destroy(plan_buf); - if (do_unlink) // ERROR no unlink - (void) unlink(tmppath); // Best effort, ignore the result + if (do_remove) // ERROR no unlink + (void) remove(tmppath); // Best effort, ignore the result return result; } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: default - Replace PATH_MAX with FILENAME_MAX
Changeset: dd935b6718fc for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=dd935b6718fc Modified Files: sql/storage/store.c Branch: default Log Message: Replace PATH_MAX with FILENAME_MAX The latter is already used in many places in the code. diffs (58 lines): diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -2591,8 +2591,8 @@ store_hot_snapshot(str tarfile) { int locked = 0; lng result = 0; - char tmppath[PATH_MAX]; - char dirpath[PATH_MAX]; + char tmppath[FILENAME_MAX]; + char dirpath[FILENAME_MAX]; int do_unlink = 0; int dir_fd = -1; stream *tar_stream = NULL; @@ -2605,7 +2605,7 @@ store_hot_snapshot(str tarfile) goto end; } - snprintf(tmppath, PATH_MAX, "%s.tmp", tarfile); + snprintf(tmppath, sizeof(tmppath), "%s.tmp", tarfile); tar_stream = open_wstream(tmppath); if (!tar_stream) { GDKerror("Failed to open %s for writing", tmppath); @@ -2617,7 +2617,7 @@ store_hot_snapshot(str tarfile) // Call realpath(2) to make the path absolute so it has at least // one DIR_SEP in it. Realpath requires the file to exist so // we feed it tmppath rather than tarfile. - if (realpath(tmppath, dirpath) == NULL) { + if (realpath(tmppath, dirpath) == NULL) { // ERROR no realpath GDKerror("couldn't resolve path %s: %s", tarfile, strerror(errno)); goto end; } @@ -2626,14 +2626,14 @@ store_hot_snapshot(str tarfile) // Open the directory so we can call fsync on it. // We use raw posix calls because this is not available in the streams library // and I'm not quite sure what a generic streams-api should look like. - dir_fd = open(dirpath, O_RDONLY); + dir_fd = open(dirpath, O_RDONLY); // ERROR no o_rdonly if (dir_fd < 0) { GDKerror("couldn't open directory %s: %s", dirpath, strerror(errno)); goto end; } // Fsync the directory. Postgres believes this is necessary for durability. - if (fsync(dir_fd) < 0) { + if (fsync(dir_fd) < 0) { // ERROR no fsync GDKerror("First fsync on %s failed: %s", dirpath, strerror(errno)); goto end; } @@ -2699,7 +2699,7 @@ end: close_stream(plan_stream); if (plan_buf) buffer_destroy(plan_buf); - if (do_unlink) + if (do_unlink) // ERROR no unlink (void) unlink(tmppath); // Best effort, ignore the result return result; } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Nov2019 - Removed obsolete warning messages
Changeset: 907505a79484 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=907505a79484 Modified Files: sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err sql/test/Dump/Tests/dump-again.stable.err sql/test/Tests/comment-dump.stable.err sql/test/testdb-reload/Tests/reload.stable.err sql/test/testdb/Tests/dump-nogeom.stable.err Branch: Nov2019 Log Message: Removed obsolete warning messages diffs (121 lines): diff --git a/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err b/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err --- a/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err +++ b/sql/test/BugTracker-2019/Tests/python-loader-string.Bug-6759.stable.err @@ -20,16 +20,6 @@ stderr of test 'python-loader-string.Bug # cmdline opt monet_prompt = # cmdline opt gdk_dbpath = /home/ferreira/repositories/MonetDB-Apr2019/BUILD/var/MonetDB/mTests_sql_test_BugTracker-2019 # cmdline opt embedded_py = 2 -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_282:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_247:bat[:str], X_257:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_283:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_248:bat[:str], X_258:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_284:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_249:bat[:str], X_259:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_285:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_250:bat[:str], X_260:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_286:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_251:bat[:str], X_261:bat[:str]); # 10:43:17 > # 10:43:17 > "Done." diff --git a/sql/test/Dump/Tests/dump-again.stable.err b/sql/test/Dump/Tests/dump-again.stable.err --- a/sql/test/Dump/Tests/dump-again.stable.err +++ b/sql/test/Dump/Tests/dump-again.stable.err @@ -23,14 +23,6 @@ stderr of test 'dump-again` in directory # cmdline opt gdk_dbpath = /home/sjoerd/@Monet-stable/var/MonetDB/mTests_sql_test_Dump # cmdline opt embedded_c = true # cmdline opt gdk_debug = 553648138 -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_258:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_230:bat[:str], X_238:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_259:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_231:bat[:str], X_239:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_260:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_232:bat[:str], X_240:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_261:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_233:bat[:str], X_241:bat[:str]); # 22:27:57 > # 22:27:57 > "/usr/bin/python" "dump-again.SQL.py" "dump-again" diff --git a/sql/test/Tests/comment-dump.stable.err b/sql/test/Tests/comment-dump.stable.err --- a/sql/test/Tests/comment-dump.stable.err +++ b/sql/test/Tests/comment-dump.stable.err @@ -43,16 +43,6 @@ stderr of test 'comment-dump` in directo #X_236:bat[:str] := mal.multiplex("sql":str, "password":str, X_211:bat[:str]); #WARNING To speedup sql.password a bulk operator implementation is needed #X_237:bat[:str] := mal.multiplex("sql":str, "password":str, X_212:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_281:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_246:bat[:str], X_256:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_282:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_247:bat[:str], X_257:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_283:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_248:bat[:str], X_258:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_284:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_249:bat[:str], X_259:bat[:str]); -#WARNING To speedup sql.get_value a bulk operator implementation is needed -#X_285:bat[:lng] := mal.multiplex("sql":str, "get_value":str, X_250:bat[:str], X_260:bat[:str]); # 17:19:14 > # 17:19:14 > "/usr/local/opt/python/bin/python2.7" "comment-dump.SQL.py" "comment-dump" diff --git a/sql/test/testdb-reload/Tests/reload.stable.err b/sql/test/testdb-reload/Tests/reload.stable.err --- a/sql/test/testdb-reload/Tests/reload.stable.err +++ b/sql/test/testdb-reload/Tests/reload.stable.err @@ -22,18 +22,6 @@ stderr of test 'reload` in directory 'sq # cmdline opt
MonetDB: default - Avoid more warnings
Changeset: 95416176ea2b for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=95416176ea2b Modified Files: monetdb5/modules/kernel/batmmath.c monetdb5/modules/kernel/mmath.c Branch: default Log Message: Avoid more warnings diffs (37 lines): diff --git a/monetdb5/modules/kernel/batmmath.c b/monetdb5/modules/kernel/batmmath.c --- a/monetdb5/modules/kernel/batmmath.c +++ b/monetdb5/modules/kernel/batmmath.c @@ -312,10 +312,14 @@ str CMDscience_cst_bat_##FUNC##_##TYPE(b #define scienceNotImpl(FUNC) \ str CMDscience_bat_flt_##FUNC(bat *ret, const bat *bid) \ { \ + (void)ret; \ + (void)bid; \ throw(MAL, "batmmath." #FUNC, SQLSTATE(0A000) PROGRAM_NYI); \ } \ str CMDscience_bat_dbl_##FUNC(bat *ret, const bat *bid) \ { \ + (void)ret; \ + (void)bid; \ throw(MAL, "batmmath." #FUNC, SQLSTATE(0A000) PROGRAM_NYI); \ } diff --git a/monetdb5/modules/kernel/mmath.c b/monetdb5/modules/kernel/mmath.c --- a/monetdb5/modules/kernel/mmath.c +++ b/monetdb5/modules/kernel/mmath.c @@ -117,11 +117,15 @@ MATHbinary##NAME##TYPE(TYPE *res, const str \ MATHunary##NAME##dbl(dbl *res , const dbl *a) \ { \ + (void)res; \ + (void)a;\ throw(MAL, "mmath." #FUNC, SQLSTATE(0A000) PROGRAM_NYI);\ } \ str \ MATHunary##NAME##flt(flt *res , const flt *a) \ { \ + (void)res; \ + (void)a;\ throw(MAL, "mmath." #FUNC, SQLSTATE(0A000) PROGRAM_NYI);\ } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: default - Avoid double mnstr_close()
Changeset: 4f5971f4b417 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4f5971f4b417 Modified Files: sql/storage/store.c Branch: default Log Message: Avoid double mnstr_close() diffs (11 lines): diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -2566,6 +2566,7 @@ hot_snapshot_write_tar(stream *out, cons if (tar_copy_stream(out, dest_path, timestamp, infile, size) != GDK_SUCCEED) goto end; mnstr_close(infile); + infile = NULL; break; case 'w': if (tar_write_data(out, dest_path, timestamp, p, size) != GDK_SUCCEED) ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: default - Fix '‘ret’ may be used uninitialized' errors ...
Changeset: 1e8e77843dee for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1e8e77843dee Modified Files: sql/storage/store.c Branch: default Log Message: Fix '‘ret’ may be used uninitialized' errors in store.c diffs (28 lines): diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -2527,7 +2527,7 @@ end: static gdk_return hot_snapshot_write_tar(stream *out, const char *prefix, const char *plan) { - gdk_return ret; + gdk_return ret = GDK_FAIL; const char *p = plan; // our cursor in the plan time_t timestamp = time(NULL); // Name convention: _path for the absolute path @@ -2541,7 +2541,6 @@ hot_snapshot_write_tar(stream *out, cons int len; if (sscanf(p, "%[^\n]\n%n", abs_src_path, ) != 1) { GDKerror("internal error: first line of plan is malformed"); - ret = GDK_FAIL; goto end; } p += len; @@ -2575,7 +2574,6 @@ hot_snapshot_write_tar(stream *out, cons break; default: GDKerror("Unknown command in snapshot plan: %c (%s)", command, src_name); - ret = GDK_FAIL; goto end; } } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Nov2019 - Disable test on Windows
Changeset: 8ef045a61007 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8ef045a61007 Modified Files: sql/test/BugTracker-2009/Tests/All Branch: Nov2019 Log Message: Disable test on Windows diffs (12 lines): diff --git a/sql/test/BugTracker-2009/Tests/All b/sql/test/BugTracker-2009/Tests/All --- a/sql/test/BugTracker-2009/Tests/All +++ b/sql/test/BugTracker-2009/Tests/All @@ -25,7 +25,7 @@ bool-str-bug rollback_bug update-crash correlated-selection-bug -HAVE_MAL_DEBUGGER?segfault_when_quitting_debugger.SF-2538837 +HAVE_MAL_DEBUGGER_WIN32?segfault_when_quitting_debugger.SF-2538837 row_number_bug.SF-2546109 #set_history_and_drop_table.SF-2607045 not relevant anymore TypeException_having_count_distinct.SF-2494227 ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: default - Merge with Nov2019
Changeset: 6628fde0fc40 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6628fde0fc40 Added Files: sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.timeout Modified Files: clients/mapiclient/dump.c sql/server/rel_optimizer.c sql/server/rel_sequence.c sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.out sql/test/BugTracker-2019/Tests/next-get-value-bulk.Bug-6766.sql sql/test/BugTracker-2019/Tests/next-get-value-bulk.Bug-6766.stable.out sql/test/BugTracker-2019/Tests/sequences-defaults.Bug-6744.sql sql/test/BugTracker-2019/Tests/sequences-defaults.Bug-6744.stable.err sql/test/BugTracker-2019/Tests/sequences-defaults.Bug-6744.stable.out Branch: default Log Message: Merge with Nov2019 diffs (truncated from 882 to 300 lines): diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c --- a/clients/mapiclient/dump.c +++ b/clients/mapiclient/dump.c @@ -248,14 +248,14 @@ static char *actions[] = { static char * get_schema(Mapi mid) { - char *sname = NULL; + char *nsname = NULL, *sname = NULL; MapiHdl hdl; if ((hdl = mapi_query(mid, "SELECT current_schema")) == NULL || mapi_error(mid)) goto bailout; while ((mapi_fetch_row(hdl)) != 0) { - sname = mapi_fetch_field(hdl, 0); + nsname = mapi_fetch_field(hdl, 0); if (mapi_error(mid)) goto bailout; @@ -263,20 +263,26 @@ get_schema(Mapi mid) if (mapi_error(mid)) goto bailout; /* copy before closing the handle */ - if (sname) - sname = strdup(sname); + if (nsname) + sname = strdup(nsname); + if (nsname && !sname) + goto bailout; mapi_close_handle(hdl); return sname; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); + else if (mapi_error(mid)) + mapi_explain_query(hdl, stderr); else - mapi_explain_query(hdl, stderr); + fprintf(stderr, "malloc failure1\n"); mapi_close_handle(hdl); - } else + } else if (mapi_error(mid)) mapi_explain(mid, stderr); + else + fprintf(stderr, "malloc failure\n"); return NULL; } @@ -308,7 +314,7 @@ has_hugeint(Mapi mid) answer = (int) ret; return answer; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); @@ -356,7 +362,7 @@ has_funcsys(Mapi mid) answer = ret; return ret; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); @@ -397,7 +403,7 @@ has_table_partitions(Mapi mid) answer = ret; return ret; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); @@ -523,20 +529,22 @@ dump_foreign_keys(Mapi mid, const char * if (hdl == NULL || mapi_error(mid)) goto bailout; - while ((cnt = mapi_fetch_row(hdl)) != 0) { - char *c_psname = strdup(mapi_fetch_field(hdl, 0)); - char *c_ptname = strdup(mapi_fetch_field(hdl, 1)); - char *c_pcolumn = strdup(mapi_fetch_field(hdl, 2)); - char *c_fcolumn = strdup(mapi_fetch_field(hdl, 3)); + cnt = mapi_fetch_row(hdl); + while (cnt != 0) { + char *nc_psname = mapi_fetch_field(hdl, 0), *c_psname = nc_psname ? strdup(nc_psname) : NULL; + char *nc_ptname = mapi_fetch_field(hdl, 1), *c_ptname = nc_ptname ? strdup(nc_ptname) : NULL; + char *nc_pcolumn = mapi_fetch_field(hdl, 2), *c_pcolumn = nc_pcolumn ? strdup(nc_pcolumn) : NULL; + char *nc_fcolumn = mapi_fetch_field(hdl, 3), *c_fcolumn = nc_fcolumn ? strdup(nc_fcolumn) : NULL; char *c_nr = mapi_fetch_field(hdl, 4); /* no need to strdup, because it's not used */ - char *c_fkname = strdup(mapi_fetch_field(hdl, 5)); - char *c_faction = strdup(mapi_fetch_field(hdl, 6)); - char *c_fsname = strdup(mapi_fetch_field(hdl, 7)); - char *c_ftname = strdup(mapi_fetch_field(hdl, 8)); - const char **fkeys, **pkeys; + char *nc_fkname = mapi_fetch_field(hdl, 5), *c_fkname = nc_fkname ? strdup(nc_fkname) : NULL; + char *nc_faction = mapi_fetch_field(hdl, 6), *c_faction = nc_faction ? strdup(nc_faction) : NULL; + char *nc_fsname = mapi_fetch_field(hdl, 7), *c_fsname = nc_fsname ? strdup(nc_fsname) : NULL; + char *nc_ftname =
MonetDB: Nov2019 - Tests approval and increasd timeout for bug 6...
Changeset: c0c6d5923fa1 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c0c6d5923fa1 Added Files: sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.timeout Modified Files: sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.out sql/test/BugTracker-2019/Tests/next-get-value-bulk.Bug-6766.sql sql/test/BugTracker-2019/Tests/next-get-value-bulk.Bug-6766.stable.out sql/test/BugTracker-2019/Tests/sequences-defaults.Bug-6744.sql sql/test/BugTracker-2019/Tests/sequences-defaults.Bug-6744.stable.err Branch: Nov2019 Log Message: Tests approval and increasd timeout for bug 6777's test to 3 minutes diffs (167 lines): diff --git a/sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.out b/sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.out --- a/sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.out +++ b/sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.out @@ -640,56 +640,107 @@ CREATE TABLE "sys"."store_sales" ( CONSTRAINT "store_sales_ss_item_sk_ss_ticket_number_pkey" PRIMARY KEY ("ss_item_sk", "ss_ticket_number") ); ALTER TABLE "sys"."call_center" ADD CONSTRAINT "cc_d1" FOREIGN KEY ("cc_closed_date_sk") REFERENCES "sys"."date_dim" ("d_date_sk"); +ALTER TABLE "sys"."call_center" ADD CONSTRAINT "cc_d2" FOREIGN KEY ("cc_open_date_sk") REFERENCES "sys"."date_dim" ("d_date_sk"); ALTER TABLE "sys"."catalog_page" ADD CONSTRAINT "cp_d1" FOREIGN KEY ("cp_end_date_sk") REFERENCES "sys"."date_dim" ("d_date_sk"); +ALTER TABLE "sys"."catalog_page" ADD CONSTRAINT "cp_d2" FOREIGN KEY ("cp_start_date_sk") REFERENCES "sys"."date_dim" ("d_date_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_a1" FOREIGN KEY ("cr_refunded_addr_sk") REFERENCES "sys"."customer_address" ("ca_address_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_a2" FOREIGN KEY ("cr_returning_addr_sk") REFERENCES "sys"."customer_address" ("ca_address_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_c1" FOREIGN KEY ("cr_refunded_customer_sk") REFERENCES "sys"."customer" ("c_customer_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_c2" FOREIGN KEY ("cr_returning_customer_sk") REFERENCES "sys"."customer" ("c_customer_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_cc" FOREIGN KEY ("cr_call_center_sk") REFERENCES "sys"."call_center" ("cc_call_center_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_cd1" FOREIGN KEY ("cr_refunded_cdemo_sk") REFERENCES "sys"."customer_demographics" ("cd_demo_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_cd2" FOREIGN KEY ("cr_returning_cdemo_sk") REFERENCES "sys"."customer_demographics" ("cd_demo_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_cp" FOREIGN KEY ("cr_catalog_page_sk") REFERENCES "sys"."catalog_page" ("cp_catalog_page_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_d1" FOREIGN KEY ("cr_returned_date_sk") REFERENCES "sys"."date_dim" ("d_date_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_hd1" FOREIGN KEY ("cr_refunded_hdemo_sk") REFERENCES "sys"."household_demographics" ("hd_demo_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_hd2" FOREIGN KEY ("cr_returning_hdemo_sk") REFERENCES "sys"."household_demographics" ("hd_demo_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_i" FOREIGN KEY ("cr_item_sk") REFERENCES "sys"."item" ("i_item_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_r" FOREIGN KEY ("cr_reason_sk") REFERENCES "sys"."reason" ("r_reason_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_sm" FOREIGN KEY ("cr_ship_mode_sk") REFERENCES "sys"."ship_mode" ("sm_ship_mode_sk"); ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_t" FOREIGN KEY ("cr_returned_time_sk") REFERENCES "sys"."time_dim" ("t_time_sk"); +ALTER TABLE "sys"."catalog_returns" ADD CONSTRAINT "cr_w2" FOREIGN KEY ("cr_warehouse_sk") REFERENCES "sys"."warehouse" ("w_warehouse_sk"); ALTER TABLE "sys"."catalog_sales" ADD CONSTRAINT "cs_b_a" FOREIGN KEY ("cs_bill_addr_sk") REFERENCES "sys"."customer_address" ("ca_address_sk"); +ALTER TABLE "sys"."catalog_sales" ADD CONSTRAINT "cs_b_c" FOREIGN KEY ("cs_bill_customer_sk") REFERENCES "sys"."customer" ("c_customer_sk"); ALTER TABLE "sys"."catalog_sales" ADD CONSTRAINT "cs_b_cd" FOREIGN KEY ("cs_bill_cdemo_sk") REFERENCES "sys"."customer_demographics" ("cd_demo_sk"); +ALTER TABLE "sys"."catalog_sales" ADD CONSTRAINT "cs_b_hd" FOREIGN KEY ("cs_bill_hdemo_sk") REFERENCES "sys"."household_demographics" ("hd_demo_sk"); ALTER TABLE "sys"."catalog_sales" ADD CONSTRAINT "cs_cc" FOREIGN KEY ("cs_call_center_sk") REFERENCES "sys"."call_center" ("cc_call_center_sk"); +ALTER TABLE "sys"."catalog_sales" ADD CONSTRAINT "cs_cp" FOREIGN KEY ("cs_catalog_page_sk") REFERENCES "sys"."catalog_page" ("cp_catalog_page_sk"); ALTER TABLE
MonetDB: Nov2019 - msqldump test fixes and other checks
Changeset: 01ef57fbfcc0 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=01ef57fbfcc0 Modified Files: clients/mapiclient/dump.c sql/server/rel_sequence.c sql/test/BugTracker-2019/Tests/sequences-defaults.Bug-6744.stable.out Branch: Nov2019 Log Message: msqldump test fixes and other checks diffs (truncated from 703 to 300 lines): diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c --- a/clients/mapiclient/dump.c +++ b/clients/mapiclient/dump.c @@ -248,14 +248,14 @@ static char *actions[] = { static char * get_schema(Mapi mid) { - char *sname = NULL; + char *nsname = NULL, *sname = NULL; MapiHdl hdl; if ((hdl = mapi_query(mid, "SELECT current_schema")) == NULL || mapi_error(mid)) goto bailout; while ((mapi_fetch_row(hdl)) != 0) { - sname = mapi_fetch_field(hdl, 0); + nsname = mapi_fetch_field(hdl, 0); if (mapi_error(mid)) goto bailout; @@ -263,20 +263,26 @@ get_schema(Mapi mid) if (mapi_error(mid)) goto bailout; /* copy before closing the handle */ - if (sname) - sname = strdup(sname); + if (nsname) + sname = strdup(nsname); + if (nsname && !sname) + goto bailout; mapi_close_handle(hdl); return sname; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); + else if (mapi_error(mid)) + mapi_explain_query(hdl, stderr); else - mapi_explain_query(hdl, stderr); + fprintf(stderr, "malloc failure1\n"); mapi_close_handle(hdl); - } else + } else if (mapi_error(mid)) mapi_explain(mid, stderr); + else + fprintf(stderr, "malloc failure\n"); return NULL; } @@ -308,7 +314,7 @@ has_hugeint(Mapi mid) answer = (int) ret; return answer; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); @@ -356,7 +362,7 @@ has_funcsys(Mapi mid) answer = ret; return ret; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); @@ -397,7 +403,7 @@ has_table_partitions(Mapi mid) answer = ret; return ret; - bailout: +bailout: if (hdl) { if (mapi_result_error(hdl)) mapi_explain_result(hdl, stderr); @@ -523,20 +529,22 @@ dump_foreign_keys(Mapi mid, const char * if (hdl == NULL || mapi_error(mid)) goto bailout; - while ((cnt = mapi_fetch_row(hdl)) != 0) { - char *c_psname = strdup(mapi_fetch_field(hdl, 0)); - char *c_ptname = strdup(mapi_fetch_field(hdl, 1)); - char *c_pcolumn = strdup(mapi_fetch_field(hdl, 2)); - char *c_fcolumn = strdup(mapi_fetch_field(hdl, 3)); + cnt = mapi_fetch_row(hdl); + while (cnt != 0) { + char *nc_psname = mapi_fetch_field(hdl, 0), *c_psname = nc_psname ? strdup(nc_psname) : NULL; + char *nc_ptname = mapi_fetch_field(hdl, 1), *c_ptname = nc_ptname ? strdup(nc_ptname) : NULL; + char *nc_pcolumn = mapi_fetch_field(hdl, 2), *c_pcolumn = nc_pcolumn ? strdup(nc_pcolumn) : NULL; + char *nc_fcolumn = mapi_fetch_field(hdl, 3), *c_fcolumn = nc_fcolumn ? strdup(nc_fcolumn) : NULL; char *c_nr = mapi_fetch_field(hdl, 4); /* no need to strdup, because it's not used */ - char *c_fkname = strdup(mapi_fetch_field(hdl, 5)); - char *c_faction = strdup(mapi_fetch_field(hdl, 6)); - char *c_fsname = strdup(mapi_fetch_field(hdl, 7)); - char *c_ftname = strdup(mapi_fetch_field(hdl, 8)); - const char **fkeys, **pkeys; + char *nc_fkname = mapi_fetch_field(hdl, 5), *c_fkname = nc_fkname ? strdup(nc_fkname) : NULL; + char *nc_faction = mapi_fetch_field(hdl, 6), *c_faction = nc_faction ? strdup(nc_faction) : NULL; + char *nc_fsname = mapi_fetch_field(hdl, 7), *c_fsname = nc_fsname ? strdup(nc_fsname) : NULL; + char *nc_ftname = mapi_fetch_field(hdl, 8), *c_ftname = nc_ftname ? strdup(nc_ftname) : NULL; + char **fkeys, **pkeys, *npkey, *nfkey; int nkeys = 0; - if (mapi_error(mid) || !c_psname || !c_ptname || !c_pcolumn || !c_fcolumn || !c_fkname || !c_faction || !c_fsname || !c_ftname) { + if (mapi_error(mid) || (nc_psname && !c_psname) || (nc_ptname && !c_ptname) || (nc_pcolumn && !c_pcolumn) || (nc_fcolumn && !c_fcolumn) || +
MonetDB: mlogger - Merge with default
Changeset: 114734727c6a for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=114734727c6a Added Files: sql/scripts/58_hot_snapshot.sql sql/test/BugTracker-2019/Tests/NOT_IN-AND-OR-wrong-results.Bug-6775.sql sql/test/BugTracker-2019/Tests/NOT_IN-AND-OR-wrong-results.Bug-6775.stable.err sql/test/BugTracker-2019/Tests/NOT_IN-AND-OR-wrong-results.Bug-6775.stable.out sql/test/BugTracker-2019/Tests/filter_json_null.Bug-6773.sql sql/test/BugTracker-2019/Tests/filter_json_null.Bug-6773.stable.err sql/test/BugTracker-2019/Tests/filter_json_null.Bug-6773.stable.out sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.py sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.err sql/test/BugTracker-2019/Tests/msqldump-mapi-cache.Bug-6777.stable.out sql/test/BugTracker-2019/Tests/next-get-value-bulk.Bug-6766.stable.err sql/test/BugTracker-2019/Tests/outer-join-varchar.Bug-6776.sql sql/test/BugTracker-2019/Tests/outer-join-varchar.Bug-6776.stable.err sql/test/BugTracker-2019/Tests/outer-join-varchar.Bug-6776.stable.out sql/test/BugTracker-2019/Tests/prod-decimals.Bug-6774.sql sql/test/BugTracker-2019/Tests/prod-decimals.Bug-6774.stable.err sql/test/BugTracker-2019/Tests/prod-decimals.Bug-6774.stable.out sql/test/Dependencies/Tests/view_table_udf.sql sql/test/Dependencies/Tests/view_table_udf.stable.err sql/test/Dependencies/Tests/view_table_udf.stable.out sql/test/Tests/hot-snapshot.py sql/test/Tests/hot-snapshot.stable.err sql/test/Tests/hot-snapshot.stable.out sql/test/subquery/Tests/exists.sql sql/test/subquery/Tests/exists.stable.err sql/test/subquery/Tests/exists.stable.out Modified Files: ChangeLog clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out clients/mapiclient/Tests/stethoscope--help.stable.err clients/mapiclient/dump.c clients/mapiclient/eventparser.c clients/mapiclient/mhelp.c clients/mapiclient/stethoscope.c common/options/monet_options.c gdk/gdk.h gdk/gdk_storage.c gdk/gdk_utils.c monetdb5/mal/mal.c monetdb5/mal/mal.h monetdb5/mal/mal_client.c monetdb5/mal/mal_client.h monetdb5/mal/mal_dataflow.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_exception.c monetdb5/mal/mal_exception.h monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_namespace.c monetdb5/mal/mal_profiler.c monetdb5/mal/mal_profiler.h monetdb5/mal/mal_runtime.c monetdb5/mal/mal_scenario.c monetdb5/modules/atoms/Tests/json02.stable.out monetdb5/modules/atoms/json.c monetdb5/modules/atoms/json.h monetdb5/modules/atoms/json.mal monetdb5/modules/mal/Tests/All monetdb5/modules/mal/mal_io.c monetdb5/modules/mal/mal_io.h monetdb5/modules/mal/mal_io.mal monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/mdb.c monetdb5/modules/mal/mdb.h monetdb5/modules/mal/mdb.mal monetdb5/modules/mal/profiler.c monetdb5/modules/mal/profiler.h monetdb5/modules/mal/profiler.mal monetdb5/modules/mal/querylog.c monetdb5/modules/mal/querylog.h monetdb5/modules/mal/querylog.mal monetdb5/modules/mal/remote.c monetdb5/modules/mal/tablet.c monetdb5/optimizer/Tests/manifold2.stable.out.single monetdb5/optimizer/opt_evaluate.c monetdb5/optimizer/opt_garbageCollector.c monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h sql/ChangeLog.Nov2019 sql/backends/monet5/rel_bin.c sql/backends/monet5/rel_bin.h sql/backends/monet5/sql.c sql/backends/monet5/sql.h sql/backends/monet5/sql.mal sql/backends/monet5/sql_cat.c sql/backends/monet5/sql_execute.c sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_optimizer.c sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_upgrades.c sql/backends/monet5/sql_user.c sql/backends/monet5/wlr.c sql/common/sql_types.c sql/scripts/16_tracelog.sql sql/scripts/Makefile.ag sql/server/rel_optimizer.c sql/server/rel_optimizer.h sql/server/rel_rel.c sql/server/rel_rel.h sql/server/rel_select.c sql/server/rel_sequence.c sql/server/rel_unnest.c sql/server/rel_updates.c sql/server/sql_mvc.c sql/server/sql_mvc.h sql/server/sql_parser.y sql/server/sql_partition.c sql/storage/bat/bat_logger.c sql/storage/sql_catalog.c sql/storage/sql_storage.h