Changeset: a37e0bbef3e7 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a37e0bbef3e7
Added Files:
gdk/gdk_tracer.c
gdk/gdk_tracer.h
monetdb5/mal/Tests/tracer00.malC
monetdb5/mal/Tests/tracer00.stable.err
monetdb5/mal/Tests/tracer00.stable.out
monetdb5/mal/Tests/tst111.malC
monetdb5/mal/Tests/tst111.stable.err
monetdb5/mal/Tests/tst111.stable.out
monetdb5/mal/Tests/tst112.malC
monetdb5/mal/Tests/tst112.stable.err
monetdb5/mal/Tests/tst112.stable.out
monetdb5/mal/Tests/tst113.malC
monetdb5/mal/Tests/tst113.stable.err
monetdb5/mal/Tests/tst113.stable.out
monetdb5/mal/Tests/tst114.malC
monetdb5/mal/Tests/tst114.stable.err
monetdb5/mal/Tests/tst114.stable.out
monetdb5/mal/Tests/tst117.malC
monetdb5/mal/Tests/tst117.stable.err
monetdb5/mal/Tests/tst117.stable.out
monetdb5/mal/Tests/tst190.malC
monetdb5/mal/Tests/tst190.stable.err
monetdb5/mal/Tests/tst190.stable.out
monetdb5/mal/Tests/tst191.malC
monetdb5/mal/Tests/tst191.stable.err
monetdb5/mal/Tests/tst191.stable.out
monetdb5/mal/Tests/tst192.malC
monetdb5/mal/Tests/tst192.stable.err
monetdb5/mal/Tests/tst192.stable.out
monetdb5/mal/Tests/tst193.malC
monetdb5/mal/Tests/tst193.stable.err
monetdb5/mal/Tests/tst193.stable.out
monetdb5/mal/Tests/tst194.malC
monetdb5/mal/Tests/tst194.stable.err
monetdb5/mal/Tests/tst194.stable.out
monetdb5/mal/Tests/tst195.malC
monetdb5/mal/Tests/tst195.stable.err
monetdb5/mal/Tests/tst195.stable.out
monetdb5/mal/Tests/tst196.malC
monetdb5/mal/Tests/tst196.stable.err
monetdb5/mal/Tests/tst196.stable.out
monetdb5/modules/mal/tracer.c
monetdb5/modules/mal/tracer.h
monetdb5/modules/mal/tracer.mal
sql/scripts/81_tracer.sql
sql/test/wlcr/Tests/wlr110.py
sql/test/wlcr/Tests/wlr110.stable.err
sql/test/wlcr/Tests/wlr110.stable.out
sql/test/wlcr/Tests/wlr35.py
sql/test/wlcr/Tests/wlr35.stable.err
sql/test/wlcr/Tests/wlr35.stable.out
Removed Files:
sql/test/BugTracker-2009/Tests/dumping_tables.SF-2776908--optimizers.options5
sql/test/BugTracker-2009/Tests/dumping_tables.SF-2776908--optimizers.sql
sql/test/BugTracker-2009/Tests/dumping_tables.SF-2776908--optimizers.stable.err
sql/test/BugTracker-2009/Tests/dumping_tables.SF-2776908--optimizers.stable.out
Modified Files:
NT/Makefile
NT/monetdb_config.h.in
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
common/utils/mstring.h
gdk/Makefile.ag
gdk/gdk.h
gdk/gdk_aggr.c
gdk/gdk_align.c
gdk/gdk_analytic_bounds.c
gdk/gdk_analytic_func.c
gdk/gdk_atoms.h
gdk/gdk_bat.c
gdk/gdk_batop.c
gdk/gdk_calc.c
gdk/gdk_calc_private.h
gdk/gdk_cand.c
gdk/gdk_cross.c
gdk/gdk_delta.c
gdk/gdk_delta.h
gdk/gdk_firstn.c
gdk/gdk_group.c
gdk/gdk_hash.c
gdk/gdk_hash.h
gdk/gdk_heap.c
gdk/gdk_imprints.c
gdk/gdk_join.c
gdk/gdk_logger.c
gdk/gdk_orderidx.c
gdk/gdk_posix.c
gdk/gdk_private.h
gdk/gdk_project.c
gdk/gdk_sample.c
gdk/gdk_select.c
gdk/gdk_storage.c
gdk/gdk_string.c
gdk/gdk_system.c
gdk/gdk_system.h
gdk/gdk_tm.c
gdk/gdk_unique.c
gdk/gdk_utils.c
gdk/gdk_utils.h
geom/monetdb5/geom.c
monetdb5/extras/mal_optimizer_template/opt_sql_append.c
monetdb5/mal/Tests/All
monetdb5/mal/Tests/tst019.stable.err
monetdb5/mal/Tests/tst110.malC
monetdb5/mal/Tests/tst110.stable.err
monetdb5/mal/Tests/tst900.stable.err
monetdb5/mal/mal.c
monetdb5/mal/mal.h
monetdb5/mal/mal_atom.h
monetdb5/mal/mal_client.c
monetdb5/mal/mal_client.h
monetdb5/mal/mal_dataflow.c
monetdb5/mal/mal_debugger.c
monetdb5/mal/mal_debugger.h
monetdb5/mal/mal_errors.h
monetdb5/mal/mal_exception.c
monetdb5/mal/mal_exception.h
monetdb5/mal/mal_factory.c
monetdb5/mal/mal_factory.h
monetdb5/mal/mal_function.c
monetdb5/mal/mal_function.h
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_instruction.h
monetdb5/mal/mal_interpreter.c
monetdb5/mal/mal_listing.c
monetdb5/mal/mal_listing.h
monetdb5/mal/mal_module.c
monetdb5/mal/mal_namespace.c
monetdb5/mal/mal_parser.c
monetdb5/mal/mal_profiler.c
monetdb5/mal/mal_resolve.c
monetdb5/mal/mal_resolve.h
monetdb5/mal/mal_resource.c
monetdb5/mal/mal_session.c
monetdb5/modules/atoms/inet.c
monetdb5/modules/kernel/bat5.c
monetdb5/modules/mal/Makefile.ag
monetdb5/modules/mal/Tests/inspect00.stable.out
monetdb5/modules/mal/groupby.c
monetdb5/modules/mal/inspect.c
monetdb5/modules/mal/mal_init.mal
monetdb5/modules/mal/mal_mapi.c
monetdb5/modules/mal/mal_mapi.h
monetdb5/modules/mal/manifold.c
monetdb5/modules/mal/manifold.h
monetdb5/modules/mal/mdb.c
monetdb5/modules/mal/oltp.c
monetdb5/modules/mal/oltp.h
monetdb5/modules/mal/orderidx.c
monetdb5/modules/mal/orderidx.h
monetdb5/modules/mal/pcre.c
monetdb5/modules/mal/remote.c
monetdb5/modules/mal/remote.h
monetdb5/modules/mal/tablet.c
monetdb5/modules/mal/tablet.h
monetdb5/modules/mal/wlc.c
monetdb5/modules/mal/wlc.h
monetdb5/optimizer/Tests/ARexample.malC
monetdb5/optimizer/Tests/CRexample.malC
monetdb5/optimizer/Tests/CXerror1.malC
monetdb5/optimizer/Tests/CXexample.stable.out
monetdb5/optimizer/Tests/FTexample.malC
monetdb5/optimizer/Tests/cst01.stable.out
monetdb5/optimizer/Tests/dataflow4.malC
monetdb5/optimizer/Tests/dataflow4.stable.out
monetdb5/optimizer/Tests/dataflow5.malC
monetdb5/optimizer/Tests/ifthencst.malC
monetdb5/optimizer/Tests/inline02.stable.out
monetdb5/optimizer/Tests/inline03.stable.out
monetdb5/optimizer/Tests/inline04.stable.out
monetdb5/optimizer/Tests/inline07.stable.out
monetdb5/optimizer/Tests/inline09.stable.out
monetdb5/optimizer/Tests/inline10.stable.out
monetdb5/optimizer/Tests/inline11.malC
monetdb5/optimizer/Tests/inline12.stable.out
monetdb5/optimizer/Tests/inlineCst.stable.out
monetdb5/optimizer/Tests/inlineFunction.malC
monetdb5/optimizer/Tests/inlineFunction.stable.out
monetdb5/optimizer/Tests/inlineFunction1.malC
monetdb5/optimizer/Tests/inlineFunction2.malC
monetdb5/optimizer/Tests/inlineFunction2.stable.out
monetdb5/optimizer/Tests/inlineFunction3.malC
monetdb5/optimizer/Tests/inlineFunction4.malC
monetdb5/optimizer/Tests/inlineFunction4.stable.out
monetdb5/optimizer/Tests/joinpath.malC
monetdb5/optimizer/Tests/leftjoinpath.malC
monetdb5/optimizer/Tests/mat00.malC
monetdb5/optimizer/Tests/mat01.malC
monetdb5/optimizer/Tests/projectionchain.malC
monetdb5/optimizer/Tests/qep02.malC
monetdb5/optimizer/Tests/reorder00.malC
monetdb5/optimizer/Tests/replicator00.malC
monetdb5/optimizer/Tests/tst4000.stable.out
monetdb5/optimizer/Tests/tst4002.malC
monetdb5/optimizer/Tests/tst4003.stable.out
monetdb5/optimizer/Tests/tst4004.malC
monetdb5/optimizer/Tests/tst4005.stable.out
monetdb5/optimizer/Tests/tst4030.malC
monetdb5/optimizer/opt_aliases.c
monetdb5/optimizer/opt_candidates.c
monetdb5/optimizer/opt_coercion.c
monetdb5/optimizer/opt_commonTerms.c
monetdb5/optimizer/opt_constants.c
monetdb5/optimizer/opt_costModel.c
monetdb5/optimizer/opt_dataflow.c
monetdb5/optimizer/opt_deadcode.c
monetdb5/optimizer/opt_emptybind.c
monetdb5/optimizer/opt_evaluate.c
monetdb5/optimizer/opt_garbageCollector.c
monetdb5/optimizer/opt_generator.c
monetdb5/optimizer/opt_inline.c
monetdb5/optimizer/opt_jit.c
monetdb5/optimizer/opt_json.c
monetdb5/optimizer/opt_macro.c
monetdb5/optimizer/opt_matpack.c
monetdb5/optimizer/opt_mergetable.c
monetdb5/optimizer/opt_mitosis.c
monetdb5/optimizer/opt_multiplex.c
monetdb5/optimizer/opt_oltp.c
monetdb5/optimizer/opt_pipes.c
monetdb5/optimizer/opt_postfix.c
monetdb5/optimizer/opt_profiler.c
monetdb5/optimizer/opt_projectionpath.c
monetdb5/optimizer/opt_pushselect.c
monetdb5/optimizer/opt_querylog.c
monetdb5/optimizer/opt_reduce.c
monetdb5/optimizer/opt_remap.c
monetdb5/optimizer/opt_remoteQueries.c
monetdb5/optimizer/opt_reorder.c
monetdb5/optimizer/opt_support.c
monetdb5/optimizer/opt_volcano.c
monetdb5/optimizer/opt_wlc.c
monetdb5/optimizer/opt_wrapper.c
monetdb5/scheduler/Tests/sched00.stable.out
monetdb5/scheduler/run_adder.c
monetdb5/scheduler/run_isolate.h
monetdb5/scheduler/run_memo.c
monetdb5/scheduler/run_pipeline.c
monetdb5/scheduler/run_pipeline.h
monetdb5/tools/Tests/mserver5--help.stable.err
monetdb5/tools/Tests/mserver5--help.stable.err.Windows
rpm.mk.in
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_optimizer.c
sql/backends/monet5/sql_orderidx.c
sql/backends/monet5/sql_orderidx.h
sql/backends/monet5/sql_result.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/sql_scenario.h
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_statistics.c
sql/backends/monet5/sql_statistics.h
sql/backends/monet5/sql_upgrades.c
sql/backends/monet5/sql_user.c
sql/backends/monet5/vaults/bam/bam_db_interface.h
sql/backends/monet5/vaults/bam/bam_globals.h
sql/backends/monet5/vaults/bam/bam_loader.c
sql/backends/monet5/vaults/bam/bam_wrapper.c
sql/backends/monet5/vaults/fits/fits.c
sql/backends/monet5/vaults/lidar/lidar.c
sql/backends/monet5/vaults/shp/shp.c
sql/backends/monet5/wlr.c
sql/backends/monet5/wlr.h
sql/backends/monet5/wlr.mal
sql/common/sql_types.c
sql/common/sql_types.h
sql/include/sql_mem.h
sql/scripts/61_wlcr.sql
sql/scripts/Makefile.ag
sql/server/rel_distribute.c
sql/server/rel_optimizer.c
sql/server/rel_partition.c
sql/server/sql_atom.c
sql/server/sql_mvc.c
sql/server/sql_mvc.h
sql/server/sql_privileges.c
sql/server/sql_symbol.c
sql/storage/bat/bat_table.c
sql/storage/store.c
sql/test/BugTracker-2009/Tests/All
sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.stable.err
sql/test/BugTracker-2012/Tests/table_functions_fail_after_restart-0.Bug-3063.stable.out
sql/test/BugTracker-2012/Tests/table_functions_fail_after_restart-1.Bug-3063.stable.out
sql/test/BugTracker-2014/Tests/querylog.Bug-3607.stable.out
sql/test/BugTracker-2019/Tests/All
sql/test/Dependencies/Tests/Dependencies.stable.out
sql/test/Dependencies/Tests/Dependencies.stable.out.int128
sql/test/Tests/session_vars.stable.out
sql/test/Via-m/Tests/event_s03.stable.out
sql/test/Via-m/Tests/event_s05.stable.out
sql/test/Via-m/Tests/event_s07.stable.out
sql/test/Via-m/Tests/event_s09.stable.out
sql/test/Via-m/Tests/event_s11.stable.out
sql/test/Via-m/Tests/file_s04.stable.out
sql/test/Via-m/Tests/file_s05.stable.out
sql/test/Via-m/Tests/file_s06.stable.out
sql/test/Via-m/Tests/file_s08.stable.out
sql/test/Via-m/Tests/file_s10.stable.out
sql/test/Via-m/Tests/file_s12.stable.out
sql/test/Via-m/Tests/file_s15.stable.out
sql/test/Via-m/Tests/media_s04.stable.out
sql/test/Via-m/Tests/media_s06.stable.out
sql/test/Via-m/Tests/media_s08.stable.out
sql/test/Via-m/Tests/media_s10.stable.out
sql/test/Via-m/Tests/media_s12.stable.out
sql/test/Via-m/Tests/media_s14.stable.out
sql/test/Via-m/Tests/media_s16.stable.out
sql/test/Via-m/Tests/media_s18.stable.out
sql/test/Via-m/Tests/media_s19.stable.out
sql/test/bugs/Tests/groupby_having_charlength-bug-sf-943566.stable.out
sql/test/miscellaneous/Tests/simple_selects.sql
sql/test/miscellaneous/Tests/simple_selects.stable.err
sql/test/ssqq/Tests/insert_query.stable.out
sql/test/ssqq/Tests/insert_queue.stable.out
sql/test/ssqq/Tests/insert_quser.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
sql/test/wlcr/Tests/All
sql/test/wlcr/Tests/wlr10.py
sql/test/wlcr/Tests/wlr100.py
sql/test/wlcr/Tests/wlr100.stable.err
sql/test/wlcr/Tests/wlr100.stable.out
sql/test/wlcr/Tests/wlr20.py
sql/test/wlcr/Tests/wlr30.py
sql/test/wlcr/Tests/wlr40.py
sql/test/wlcr/Tests/wlr40.stable.err
sql/test/wlcr/Tests/wlr40.stable.out
sql/test/wlcr/Tests/wlr50.py
sql/test/wlcr/Tests/wlr50.stable.err
sql/test/wlcr/Tests/wlr50.stable.out
sql/test/wlcr/Tests/wlr70.py
sql/test/wlcr/Tests/wlr70.stable.err
sql/test/wlcr/Tests/wlr70.stable.out
sql/test/wlcr/Tests/wlr80.py
tools/mserver/mserver5.c
Branch: statistics-analytics
Log Message:
Merged with default
diffs (truncated from 18511 to 300 lines):
diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -282,6 +282,7 @@
#define HAVE_LOCALTIME_R 1
/* there is something very similar to localtime_r on Windows: */
#define localtime_r(tp,tm) localtime_s(tm,tp)
+#define gmtime_r(tp,tm) gmtime_s(tm,tp)
/* Define to 1 if you have the `lockf' function. */
/* #undef HAVE_LOCKF */
diff --git a/clients/Tests/MAL-signatures.stable.out
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -11244,6 +11244,16 @@ stdout of test 'MAL-signatures` in direc
[ "lidar", "attach", "pattern lidar.attach(fname:str):void ",
"LIDARattach;", "Open a LIDAR file and return catalog of the table HDUs"
]
[ "lidar", "export", "pattern lidar.export(tablename:str, fname:str,
type:str):void ", "LIDARexportTable;", "Exporta LIDAR table to a
LAS/LAZ file" ]
[ "lidar", "load", "pattern lidar.load(tablename:str):void ",
"LIDARloadTable;", "Load a LIDAR table from an attached file" ]
+[ "logging", "flush", "command logging.flush():void ",
"TRACERflush_buffer;", "Flush the buffer" ]
+[ "logging", "resetadapter", "command logging.resetadapter():void ",
"TRACERreset_adapter;", "Resets the adapter back to the default" ]
+[ "logging", "resetcomplevel", "command
logging.resetcomplevel(comp:int):void ", "TRACERreset_component_level;",
"Resets the log level for a specific component back to the default" ]
+[ "logging", "resetflushlevel", "command logging.resetflushlevel():void
", "TRACERreset_flush_level;", "Resets the flush level back to the
default" ]
+[ "logging", "resetlayerlevel", "command
logging.resetlayerlevel(layer:int):void ", "TRACERreset_layer_level;",
"Resets the log level for a specific layer back to the default" ]
+[ "logging", "setadapter", "command logging.setadapter(adapter:int):void
", "TRACERset_adapter;", "Sets the adapter" ]
+[ "logging", "setcomplevel", "command logging.setcomplevel(comp:int,
lvl:int):void ", "TRACERset_component_level;", "Sets the log level for
a specific component" ]
+[ "logging", "setflushlevel", "command
logging.setflushlevel(lvl:int):void ", "TRACERset_flush_level;", "Sets
the flush level" ]
+[ "logging", "setlayerlevel", "command
logging.setlayerlevel(layer:int, lvl:int):void ",
"TRACERset_layer_level;", "Sets the log level for a specific layer"
]
+[ "logging", "showinfo", "command logging.showinfo():void ",
"TRACERshow_info;", "Dumps to the console all the available logging levels,
layers and the components\nalong with their current logging level being set"
]
[ "mal", "manifold", "pattern mal.manifold(mod:str, fcn:str,
a:any...):bat[:any] ", "MANIFOLDevaluate;", "" ]
[ "mal", "multiplex", "pattern mal.multiplex(mod:str, fcn:str,
a:any...):any... ", "MANIFOLDremapMultiplex;", "" ]
[ "manual", "functions", "pattern manual.functions() (mod:bat[:str],
fcn:bat[:str], sig:bat[:str], adr:bat[:str], com:bat[:str]) ",
"MANUALcreateOverview;", "Produces a table with all MAL functions known"
]
@@ -12185,6 +12195,7 @@ stdout of test 'MAL-signatures` in direc
[ "wlr", "drop_user", "pattern wlr.drop_user(sname:str,
action:int):void ", "WLRgeneric;", "Catalog operation drop_user" ]
[ "wlr", "drop_user", "pattern wlr.drop_user(sname:str, auth:str,
action:int):void ", "WLRgeneric;", "Catalog operation drop_user" ]
[ "wlr", "drop_view", "pattern wlr.drop_view(sname:str, name:str,
action:int, ifexists:int):void ", "WLRgeneric;", "Catalog operation
drop_view" ]
+[ "wlr", "getMaster", "pattern wlr.getMaster():str ",
"WLRgetmaster;", "What is the current master database" ]
[ "wlr", "getclock", "pattern wlr.getclock():str ", "WLRgetclock;",
"Timestamp of last replicated transaction." ]
[ "wlr", "gettick", "pattern wlr.gettick():lng ", "WLRgettick;",
"Transaction identifier of the last replicated transaction." ]
[ "wlr", "grant", "pattern wlr.grant(sname:str, tbl:str,
grantee:str, privs:int, cname:str, gr:int, grantor:int):void ", "WLRgeneric;",
"Catalog operation grant" ]
diff --git a/clients/Tests/MAL-signatures.stable.out.int128
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -15646,6 +15646,16 @@ stdout of test 'MAL-signatures` in direc
[ "lidar", "attach", "pattern lidar.attach(fname:str):void ",
"LIDARattach;", "Open a LIDAR file and return catalog of the table HDUs"
]
[ "lidar", "export", "pattern lidar.export(tablename:str, fname:str,
type:str):void ", "LIDARexportTable;", "Exporta LIDAR table to a
LAS/LAZ file" ]
[ "lidar", "load", "pattern lidar.load(tablename:str):void ",
"LIDARloadTable;", "Load a LIDAR table from an attached file" ]
+[ "logging", "flush", "command logging.flush():void ",
"TRACERflush_buffer;", "Flush the buffer" ]
+[ "logging", "resetadapter", "command logging.resetadapter():void ",
"TRACERreset_adapter;", "Resets the adapter back to the default" ]
+[ "logging", "resetcomplevel", "command
logging.resetcomplevel(comp:int):void ", "TRACERreset_component_level;",
"Resets the log level for a specific component back to the default" ]
+[ "logging", "resetflushlevel", "command logging.resetflushlevel():void
", "TRACERreset_flush_level;", "Resets the flush level back to the
default" ]
+[ "logging", "resetlayerlevel", "command
logging.resetlayerlevel(layer:int):void ", "TRACERreset_layer_level;",
"Resets the log level for a specific layer back to the default" ]
+[ "logging", "setadapter", "command logging.setadapter(adapter:int):void
", "TRACERset_adapter;", "Sets the adapter" ]
+[ "logging", "setcomplevel", "command logging.setcomplevel(comp:int,
lvl:int):void ", "TRACERset_component_level;", "Sets the log level for
a specific component" ]
+[ "logging", "setflushlevel", "command
logging.setflushlevel(lvl:int):void ", "TRACERset_flush_level;", "Sets
the flush level" ]
+[ "logging", "setlayerlevel", "command
logging.setlayerlevel(layer:int, lvl:int):void ",
"TRACERset_layer_level;", "Sets the log level for a specific layer"
]
+[ "logging", "showinfo", "command logging.showinfo():void ",
"TRACERshow_info;", "Dumps to the console all the available logging levels,
layers and the components\nalong with their current logging level being set"
]
[ "mal", "manifold", "pattern mal.manifold(mod:str, fcn:str,
a:any...):bat[:any] ", "MANIFOLDevaluate;", "" ]
[ "mal", "multiplex", "pattern mal.multiplex(mod:str, fcn:str,
a:any...):any... ", "MANIFOLDremapMultiplex;", "" ]
[ "manual", "functions", "pattern manual.functions() (mod:bat[:str],
fcn:bat[:str], sig:bat[:str], adr:bat[:str], com:bat[:str]) ",
"MANUALcreateOverview;", "Produces a table with all MAL functions known"
]
@@ -16605,6 +16615,7 @@ stdout of test 'MAL-signatures` in direc
[ "wlr", "drop_user", "pattern wlr.drop_user(sname:str,
action:int):void ", "WLRgeneric;", "Catalog operation drop_user" ]
[ "wlr", "drop_user", "pattern wlr.drop_user(sname:str, auth:str,
action:int):void ", "WLRgeneric;", "Catalog operation drop_user" ]
[ "wlr", "drop_view", "pattern wlr.drop_view(sname:str, name:str,
action:int, ifexists:int):void ", "WLRgeneric;", "Catalog operation
drop_view" ]
+[ "wlr", "getMaster", "pattern wlr.getMaster():str ",
"WLRgetmaster;", "What is the current master database" ]
[ "wlr", "getclock", "pattern wlr.getclock():str ", "WLRgetclock;",
"Timestamp of last replicated transaction." ]
[ "wlr", "gettick", "pattern wlr.gettick():lng ", "WLRgettick;",
"Transaction identifier of the last replicated transaction." ]
[ "wlr", "grant", "pattern wlr.grant(sname:str, tbl:str,
grantee:str, privs:int, cname:str, gr:int, grantor:int):void ", "WLRgeneric;",
"Catalog operation grant" ]
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -286,6 +286,20 @@ ssize_t GDKstrFromStr(unsigned char *res
str GDKstrdup(const char *s) __attribute__((__warn_unused_result__));
str GDKstrndup(const char *s, size_t n)
__attribute__((__warn_unused_result__));
void GDKsyserror(_In_z_ _Printf_format_string_ const char *format, ...)
__attribute__((__format__(__printf__, 1, 2)));
+gdk_return GDKtracer_flush_buffer(void);
+char *GDKtracer_get_timestamp(char *fmt);
+gdk_return GDKtracer_init(void);
+gdk_return GDKtracer_log(LOG_LEVEL level, char *fmt, ...)
__attribute__((format(printf, 2, 3)));
+gdk_return GDKtracer_reset_adapter(void);
+gdk_return GDKtracer_reset_component_level(int *comp);
+gdk_return GDKtracer_reset_flush_level(void);
+gdk_return GDKtracer_reset_layer_level(int *layer);
+gdk_return GDKtracer_set_adapter(int *adapter);
+gdk_return GDKtracer_set_component_level(int *comp, int *lvl);
+gdk_return GDKtracer_set_flush_level(int *lvl);
+gdk_return GDKtracer_set_layer_level(int *layer, int *lvl);
+gdk_return GDKtracer_show_info(void);
+gdk_return GDKtracer_stop(void);
size_t GDKuniqueid(size_t offset);
gdk_return GDKupgradevarheap(BAT *b, var_t v, bool copyall, bool mayshare)
__attribute__((__warn_unused_result__));
lng GDKusec(void);
@@ -305,6 +319,7 @@ size_t HEAPmemsize(Heap *h);
size_t HEAPvmsize(Heap *h);
void IMPSdestroy(BAT *b);
lng IMPSimprintsize(BAT *b);
+LOG_LEVEL LVL_PER_COMPONENT[];
int MT_check_nr_cores(void);
int MT_create_thread(MT_Id *t, void (*function)(void *), void *arg, enum
MT_thr_detach d, const char *threadname);
void MT_exiting_thread(void);
@@ -1617,7 +1632,6 @@ str OPTconstantsImplementation(Client cn
str OPTcostModelImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
str OPTdataflowImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr p);
str OPTdeadcodeImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
-lng OPTdebug;
str OPTemptybindImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr p);
str OPTevaluateImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
str OPTgarbageCollectorImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr
stk, InstrPtr pci);
@@ -1874,6 +1888,16 @@ str TKNZRgetLevel(bat *r, int *level);
str TKNZRlocate(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
str TKNZRopen(void *r, str *name);
str TKNZRtakeOid(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
+str TRACERflush_buffer(void *ret);
+str TRACERreset_adapter(void *ret);
+str TRACERreset_component_level(void *ret, int *comp_id);
+str TRACERreset_flush_level(void *ret);
+str TRACERreset_layer_level(void *ret, int *layer_id);
+str TRACERset_adapter(void *ret, int *adapter_id);
+str TRACERset_component_level(void *ret, int *comp_id, int *lvl_id);
+str TRACERset_flush_level(void *ret, int *lvl_id);
+str TRACERset_layer_level(void *ret, int *layer_id, int *lvl_id);
+str TRACERshow_info(void *ret);
int TRACEtable(Client cntxt, BAT **r);
str TRNglobal_abort(bit *ret);
str TRNglobal_commit(bit *ret);
@@ -2178,8 +2202,6 @@ str first_valueRef;
str firstnRef;
Module fixModule(str nme);
int fndConstant(MalBlkPtr mb, const ValRecord *cst, int depth);
-void fprintFunction(FILE *fd, MalBlkPtr mb, MalStkPtr stk, int flg);
-void fprintInstruction(FILE *fd, MalBlkPtr mb, MalStkPtr stk, InstrPtr p, int
flg);
void freeException(str);
void freeInstruction(InstrPtr p);
void freeMalBlk(MalBlkPtr mb);
@@ -2656,6 +2678,8 @@ timestamp timestamp_fromusec(lng usec);
ssize_t timestamp_precision_tostr(str *buf, size_t *len, timestamp val, int
precision, bool external);
ssize_t timestamp_tostr(str *buf, size_t *len, const timestamp *val, bool
external);
ssize_t timestamp_tz_fromstr(const char *buf, size_t *len, timestamp **ret,
bool external);
+void traceFunction(COMPONENT comp, MalBlkPtr mb, MalStkPtr stk, int flg);
+void traceInstruction(COMPONENT comp, MalBlkPtr mb, MalStkPtr stk, InstrPtr p,
int flg);
str transactionRef;
str transaction_abortRef;
str transaction_beginRef;
@@ -2664,7 +2688,7 @@ str transaction_releaseRef;
str transaction_rollbackRef;
void trimMalVariables(MalBlkPtr mb, MalStkPtr stk);
void trimMalVariables_(MalBlkPtr mb, MalStkPtr glb);
-void typeChecker(Module scope, MalBlkPtr mb, InstrPtr p, int silent);
+void typeChecker(Module scope, MalBlkPtr mb, InstrPtr p, int p_idx, int
silent);
str unescape_str(str *retval, str s);
str uniqueRef;
str unlockRef;
diff --git a/common/utils/mstring.h b/common/utils/mstring.h
--- a/common/utils/mstring.h
+++ b/common/utils/mstring.h
@@ -6,6 +6,9 @@
* Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
*/
+#ifndef _MSTRING_H_
+#define _MSTRING_H_
+
#include <stdarg.h> /* va_list etc. */
#include <string.h> /* strlen */
@@ -46,3 +49,5 @@ strconcat_len(char *restrict dst, size_t
va_end(ap);
return i;
}
+
+#endif
diff --git a/gdk/Makefile.ag b/gdk/Makefile.ag
--- a/gdk/Makefile.ag
+++ b/gdk/Makefile.ag
@@ -37,6 +37,7 @@ lib_gdk = {
gdk_firstn.c \
gdk_analytic_bounds.c \
gdk_analytic_func.c gdk_analytic.h \
+ gdk_tracer.c gdk_tracer.h \
libbat.rc
LIBS = ../common/options/libmoptions \
../common/utils/libmutils \
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1380,7 +1380,7 @@ gdk_export void OIDXdestroy(BAT *b);
* The functions to convert BATs into ASCII. They are primarily meant for ease
of
* debugging and to a lesser extent for output processing. Printing a
* BAT is done essentially by looping through its components, printing
- * each association.
+ * each association.
*
*/
gdk_export gdk_return BATprintcolumns(stream *s, int argc, BAT *argv[]);
@@ -1800,7 +1800,7 @@ bunfastapp(BAT *b, const void *v)
GDK_FAIL : \
((b)->theap.free += sizeof(TYPE), \
((TYPE *) (b)->theap.base)[(b)->batCount++] = * (const TYPE *) (v), \
- GDK_SUCCEED))
+ GDK_SUCCEED))
static inline gdk_return tfastins_nocheckVAR(BAT *b, BUN p, const void *v, int
s)
__attribute__((__warn_unused_result__));
@@ -1957,6 +1957,8 @@ gdk_export str GDKstrdup(const char *s)
gdk_export str GDKstrndup(const char *s, size_t n)
__attribute__((__warn_unused_result__));
+#include "gdk_tracer.h"
+
#if !defined(NDEBUG) && !defined(STATIC_CODE_ANALYSIS)
/* In debugging mode, replace GDKmalloc and other functions with a
* version that optionally prints calling information.
@@ -1970,24 +1972,16 @@ gdk_export str GDKstrndup(const char *s,
({ \
size_t _size = (s); \
void *_res = GDKmalloc(_size); \
- ALLOCDEBUG \
- fprintf(stderr, \
- "#GDKmalloc(%zu) -> %p" \
- " %s[%s:%d]\n", \
- _size, _res, \
- __func__, __FILE__, __LINE__); \
+ TRC_DEBUG(ALLOC, "GDKmalloc(%zu) -> %p\n", \
+ _size, _res); \
_res; \
})
#define GDKzalloc(s) \
({ \
size_t _size = (s); \
void *_res = GDKzalloc(_size); \
- ALLOCDEBUG \
- fprintf(stderr, \
- "#GDKzalloc(%zu) -> %p" \
- " %s[%s:%d]\n", \
- _size, _res, \
- __func__, __FILE__, __LINE__); \
+ TRC_DEBUG(ALLOC, "GDKzalloc(%zu) -> %p\n", \
+ _size, _res); \
_res; \
})
#define GDKrealloc(p, s) \
@@ -1995,50 +1989,32 @@ gdk_export str GDKstrndup(const char *s,
void *_ptr = (p); \
size_t _size = (s); \
void *_res = GDKrealloc(_ptr, _size); \
- ALLOCDEBUG \
- fprintf(stderr, \
- "#GDKrealloc(%p,%zu) -> %p" \
- " %s[%s:%d]\n", \
- _ptr, _size, _res, \
- __func__, __FILE__, __LINE__); \
+ TRC_DEBUG(ALLOC, "GDKrealloc(%p,%zu) -> %p\n", \
+ _ptr, _size, _res); \
_res; \
})
-#define GDKfree(p) \
- ({ \
- void *_ptr = (p); \
- ALLOCDEBUG if (_ptr) \
- fprintf(stderr, \
- "#GDKfree(%p)" \
- " %s[%s:%d]\n", \
- _ptr, \
- __func__, __FILE__, __LINE__); \
- GDKfree(_ptr); \
+#define GDKfree(p) \
+ ({ \
+ void *_ptr = (p); \
+ if (_ptr) \
+ TRC_DEBUG(ALLOC, "GDKfree(%p)\n", _ptr); \
+ GDKfree(_ptr); \
})
-#define GDKstrdup(s) \
- ({ \
- const char *_str = (s); \
- void *_res = GDKstrdup(_str); \
- ALLOCDEBUG \
- fprintf(stderr, \
- "#GDKstrdup(len=%zu) -> %p" \
- " %s[%s:%d]\n", \
- _str ? strlen(_str) : 0, \
- _res, \
- __func__, __FILE__, __LINE__); \
- _res; \
+#define GDKstrdup(s) \
+ ({ \
+ const char *_str = (s); \
+ void *_res = GDKstrdup(_str); \
+ TRC_DEBUG(ALLOC, "GDKstrdup(len=%zu) -> %p\n", \
+ _str ? strlen(_str) : 0, _res); \
+ _res; \
})
#define GDKstrndup(s, n) \
({ \
const char *_str = (s); \
size_t _n = (n); \
void *_res = GDKstrndup(_str, _n); \
- ALLOCDEBUG \
- fprintf(stderr, \
- "#GDKstrndup(len=%zu) -> %p" \
- " %s[%s:%d]\n", \
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list