Changeset: 3ead9540574b for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3ead9540574b Added Files: clients/mapiclient/Tests/tomograph--help clients/mapiclient/Tests/tomograph--help.bat clients/mapiclient/Tests/tomograph--help.stable.err clients/mapiclient/Tests/tomograph--help.stable.out sql/test/BugTracker-2013/Tests/select-around-zero.Bug-3220.sql sql/test/BugTracker-2013/Tests/select-around-zero.Bug-3220.stable.err sql/test/BugTracker-2013/Tests/select-around-zero.Bug-3220.stable.out Modified Files: .hgtags MonetDB.spec NT/installer32/MonetDB-ODBC-Installer.vdproj NT/installer32/MonetDB5-Geom-Module.vdproj NT/installer32/MonetDB5-SQL-Installer.vdproj NT/installer64/MonetDB-ODBC-Installer.vdproj NT/installer64/MonetDB5-Geom-Module.vdproj NT/installer64/MonetDB5-SQL-Installer.vdproj NT/monetdb_config.h.in NT/rules.msc clients/Tests/exports.stable.out clients/mapiclient/Tests/All clients/mapiclient/Tests/stethoscope--help.stable.err clients/mapiclient/stethoscope.c clients/mapiclient/tomograph.c clients/mapilib/mapi.rc clients/odbc/driver/driver.rc clients/odbc/winsetup/setup.rc clients/python2/setup.py clients/python3/setup.py configure.ag debian/changelog gdk/gdk_bat.c gdk/gdk_bbp.c gdk/gdk_bbp.h gdk/gdk_posix.c gdk/libbat.rc libversions monetdb5/mal/mal_client.c monetdb5/mal/mal_client.h monetdb5/mal/mal_debugger.c monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_interpreter.h monetdb5/mal/mal_profiler.c monetdb5/mal/mal_resource.c monetdb5/mal/mal_runtime.c monetdb5/mal/mal_runtime.h monetdb5/modules/kernel/bat5.c monetdb5/modules/mal/language.c monetdb5/modules/mal/mdb.c monetdb5/modules/mal/profiler.c monetdb5/modules/mal/profiler.h monetdb5/optimizer/opt_dataflow.c monetdb5/optimizer/opt_dataflow.h monetdb5/tools/libmonetdb5.rc sql/backends/monet5/datacell/datacell.c sql/backends/monet5/datacell/opt_datacell.c sql/backends/monet5/datacell/opt_datacell.h sql/test/BugTracker-2013/Tests/All testing/Mtest.py.in vertoo.data Branch: default Log Message:
Merge with Feb2013 branch. diffs (truncated from 1496 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -511,3 +511,5 @@ 5ba19bc11f7691610501c95ba8d0f1d9e5083a94 c341b78e1c2e38445f43bd3ec89fdf40792bed01 Feb2013_root 0ef42179e99bbd8450d9993cf419fcbed96cf61c Oct2012_7 14b7be52b2212bf3aeb51edecbaee020554b3158 Oct2012_SP2_release +0d23123db0a3fd8564564c46789e8e549320c77b Oct2012_9 +1f74df406780bccca94e6128c6c62a0b101fc847 Oct2012_SP3_release diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -27,7 +27,7 @@ Vendor: MonetDB BV <[email protected]> Group: Applications/Databases License: MPL - http://www.monetdb.org/Legal/MonetDBLicense URL: http://www.monetdb.org/ -Source: http://dev.monetdb.org/downloads/sources/Oct2012-SP2/%{name}-%{version}.tar.bz2 +Source: http://dev.monetdb.org/downloads/sources/Oct2012-SP3/%{name}-%{version}.tar.bz2 BuildRequires: bison BuildRequires: bzip2-devel @@ -706,6 +706,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libmonet rm -fr $RPM_BUILD_ROOT %changelog +* Tue Jan 15 2013 Sjoerd Mullender <[email protected]> - 11.13.9-20130115 +- Rebuilt. + * Wed Dec 12 2012 Sjoerd Mullender <[email protected]> - 11.13.7-20121212 - Rebuilt. 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 @@ -3036,7 +3036,7 @@ void releaseBAT(MalBlkPtr mb, MalStkPtr int releaseBox(Box box, str name); str remapRef; str remoteRef; -void removeDataflow(Client cntxt, MalBlkPtr mb); +void removeDataflow(MalBlkPtr mb); void removeInstruction(MalBlkPtr mb, InstrPtr p); void removeInstructionBlock(MalBlkPtr mb, int pc, int cnt); int removeProp; diff --git a/clients/mapiclient/Tests/All b/clients/mapiclient/Tests/All --- a/clients/mapiclient/Tests/All +++ b/clients/mapiclient/Tests/All @@ -1,3 +1,4 @@ mclient--help msqldump--help stethoscope--help +tomograph--help diff --git a/clients/mapiclient/Tests/stethoscope--help.stable.err b/clients/mapiclient/Tests/stethoscope--help.stable.err --- a/clients/mapiclient/Tests/stethoscope--help.stable.err +++ b/clients/mapiclient/Tests/stethoscope--help.stable.err @@ -28,6 +28,7 @@ The trace options (default 'ISTest'): t = ticks in microseconds c = cpu statistics (utime,ctime,stime,cstime) m = rss memory as provided by OS (in MB) + M = memory footprint of non-persistent objects r = block reads w = block writes b = bytes read/written diff --git a/clients/mapiclient/Tests/tomograph--help b/clients/mapiclient/Tests/tomograph--help new file mode 100755 --- /dev/null +++ b/clients/mapiclient/Tests/tomograph--help @@ -0,0 +1,3 @@ +#!/bin/sh + +Mlog -x $MTIMEOUT tomograph --help diff --git a/clients/mapiclient/Tests/tomograph--help.bat b/clients/mapiclient/Tests/tomograph--help.bat new file mode 100755 --- /dev/null +++ b/clients/mapiclient/Tests/tomograph--help.bat @@ -0,0 +1,4 @@ +@echo on +@prompt # $t $g + + %MTIMEOUT% tomograph --help diff --git a/clients/mapiclient/Tests/tomograph--help.stable.err b/clients/mapiclient/Tests/tomograph--help.stable.err new file mode 100644 --- /dev/null +++ b/clients/mapiclient/Tests/tomograph--help.stable.err @@ -0,0 +1,34 @@ +stderr of test 'tomograph--help` in directory 'mapiclient` itself: + + +# 11:43:47 > +# 11:43:47 > Mtimeout -timeout 120 ./tomograph--help tomograph--help +# 11:43:47 > + + +# 10:36:09 > +# 10:36:09 > Mtimeout -timeout 60 tomograph --help +# 10:36:09 > + +tomograph [options] + -d | --dbname=<database_name> + -u | --user=<user> + -P | --password=<password> + -p | --port=<portnr> + -h | --host=<hostname> + -T | --title=<plot title> + -s | --sql=<single sql expression> + -t | --trace=<tomograph trace filename> + -r | --range=<starttime>-<endtime>[ms,s] + -o | --output=<file prefix > (default 'tomograph' + -b | --beat=<delay> in milliseconds (default 50) + -B | --batch=<number> of combined queries + -a | --adaptive colormap + -m | --colormap=<userdefined colormap> + -D | --debug + -? | --help + +# 23:54:13 > +# 23:54:13 > "Done." +# 23:54:13 > + diff --git a/clients/mapiclient/Tests/tomograph--help.stable.out b/clients/mapiclient/Tests/tomograph--help.stable.out new file mode 100644 --- /dev/null +++ b/clients/mapiclient/Tests/tomograph--help.stable.out @@ -0,0 +1,17 @@ +stdout of test 'tomograph--help` in directory 'mapiclient` itself: + + +# 11:43:47 > +# 11:43:47 > Mtimeout -timeout 120 ./tomograph--help tomograph--help +# 11:43:47 > + + +# 11:43:47 > +# 11:43:47 > Mtimeout -timeout 60 tomograph --help +# 11:43:47 > + + +# 11:43:47 > +# 11:43:47 > Done. +# 11:43:47 > + diff --git a/clients/mapiclient/stethoscope.c b/clients/mapiclient/stethoscope.c --- a/clients/mapiclient/stethoscope.c +++ b/clients/mapiclient/stethoscope.c @@ -83,7 +83,8 @@ static struct { /* 1 */ { 'y', "type", "type", 0 }, /* 2 */ { 'D', "dot", "dot", 0 }, /* 3 */ { 'F', "flow", "flow", 0 }, - /* 3 */ { 0, 0, 0, 0 } + /* 4 */ { 'M', "footprint", "footprint", 0 }, + /* 5 */ { 0, 0, 0, 0 } }; static stream *conn = NULL; @@ -110,6 +111,7 @@ usage(void) fprintf(stderr, " t = ticks in microseconds\n"); fprintf(stderr, " c = cpu statistics (utime,ctime,stime,cstime)\n"); fprintf(stderr, " m = rss memory as provided by OS (in MB)\n"); + fprintf(stderr, " M = memory footprint of non-persistent objects\n"); fprintf(stderr, " r = block reads\n"); fprintf(stderr, " w = block writes\n"); fprintf(stderr, " b = bytes read/written\n"); diff --git a/clients/mapiclient/tomograph.c b/clients/mapiclient/tomograph.c --- a/clients/mapiclient/tomograph.c +++ b/clients/mapiclient/tomograph.c @@ -56,7 +56,7 @@ # endif #endif -#define COUNTERSDEFAULT "ISTestmrw" +#define COUNTERSDEFAULT "ISTestmMrw" /* #define _DEBUG_TOMOGRAPH_*/ @@ -102,7 +102,8 @@ profileCounter[] = { /* 2 */ { 'D', "dot", "dot", 0 }, /* 3 */ { 'F', "flow", "flow", 0 }, /* 4 */ { 'x', "ping50", "ping", 0 }, - /* 5 */ { 0, 0, 0, 0 } + /* 5 */ { 'M', "footprint", "footprint", 0 }, + /* 6 */ { 0, 0, 0, 0 } }; typedef struct _wthread { @@ -280,6 +281,7 @@ typedef struct BOX { lng clkstart, clkend; lng ticks; lng memstart, memend; + lng footstart, footend; lng reads, writes; char *stmt; char *fcn; @@ -309,6 +311,7 @@ static void dumpbox(int i) printf("thread %d ", box[i].thread); printf("clk "LLFMT" - "LLFMT" ", box[i].clkstart, box[i].clkend); printf("mem "LLFMT" - "LLFMT" ", box[i].memstart, box[i].memend); + printf("foot "LLFMT" - "LLFMT" ", box[i].footstart, box[i].footend); printf("ticks "LLFMT" ", box[i].ticks); if (box[i].stmt) printf("%s ", box[i].stmt); @@ -778,14 +781,14 @@ static void dumpboxes(void) if (box[i].state < PING) { //io counters are zero at start of instruction ! //fprintf(f,""LLFMT" %f 0 0 \n", box[i].clkstart, (box[i].memstart/1024.0)); - fprintf(f, ""LLFMT" %f 0 0\n", box[i].clkend, (box[i].memend / 1024.0)); + fprintf(f, ""LLFMT" %f %f 0 0\n", box[i].clkend, (box[i].memend / 1024.0), box[i].footend/1024.0); } else if (box[i].state == PING) { /* cpu stat events may arrive out of order, drop those */ if ( box[i].clkstart <= e) continue; e = box[i].clkstart; - fprintf(f, ""LLFMT" %f "LLFMT" "LLFMT"\n", box[i].clkstart, (box[i].memend / 1024.0), box[i].reads, box[i].writes); + fprintf(f, ""LLFMT" %f %f "LLFMT" "LLFMT"\n", box[i].clkstart, (box[i].memend / 1024.0), box[i].footend/1024.0, box[i].reads, box[i].writes); if (cpus == 0) { char *s = box[i].stmt; while (s && isspace((int) *s)) @@ -831,6 +834,15 @@ static void showmemory(void) min = box[i].memstart; if (box[i].memend < min) min = box[i].memend; + + if (box[i].footstart > max) + max = box[i].footstart; + if (box[i].footend > max) + max = box[i].footend; + if (box[i].footstart < min && box[i].footstart > 0) + min = box[i].footstart; + if (box[i].footend < min && box[i].footend > 0) + min = box[i].footend; } if (min == max) { min -= 1; @@ -863,7 +875,8 @@ static void showmemory(void) mm = (mx - mn) / 50.0; /* 2% top & bottom margin */ fprintf(gnudata, "set yrange [%f:%f]\n", mn - mm, mx + mm); fprintf(gnudata, "set ytics (\"%.*f\" %f, \"%.*f\" %f) nomirror\n", digits, min / scale, mn, digits, max / scale, mx); - fprintf(gnudata, "plot \"%s.dat\" using 1:2 notitle with dots linecolor rgb \"blue\"\n", (tracefile ? "scratch" : filename)); + fprintf(gnudata, "plot \"%s.dat\" using 1:2 notitle with dots linecolor rgb \"blue\", \\\n", (tracefile ? "scratch" : filename)); + fprintf(gnudata, " \"%s.dat\" using 1:3 notitle with dots linecolor rgb \"black\"\n", (tracefile ? "scratch" : filename)); fprintf(gnudata, "unset yrange\n"); } @@ -930,8 +943,8 @@ static void showio(void) fprintf(gnudata, "unset ylabel\n"); fprintf(gnudata, "set y2tics in (0, "LLFMT".0) nomirror\n", max / beat); fprintf(gnudata, "set y2label \"IO per ms\"\n"); - fprintf(gnudata, "plot \"%s.dat\" using 1:(($3+$4)/%d.0) title \"reads\" with boxes fs solid linecolor rgb \"gray\" ,\\\n", (tracefile ? "scratch" : filename), beat); - fprintf(gnudata, "\"%s.dat\" using 1:($4/%d.0) title \"writes\" with boxes fs solid linecolor rgb \"red\" \n", (tracefile ? "scratch" : filename), beat); + fprintf(gnudata, "plot \"%s.dat\" using 1:(($4+$5)/%d.0) title \"reads\" with boxes fs solid linecolor rgb \"gray\" ,\\\n", (tracefile ? "scratch" : filename), beat); + fprintf(gnudata, "\"%s.dat\" using 1:($5/%d.0) title \"writes\" with boxes fs solid linecolor rgb \"red\" \n", (tracefile ? "scratch" : filename), beat); fprintf(gnudata, "unset y2label\n"); fprintf(gnudata, "unset y2tics\n"); fprintf(gnudata, "unset y2range\n"); @@ -1544,7 +1557,7 @@ static void createTomogram(void) * system is already processing. This leads to * receiving 'done' events without matching 'start' */ -static void update(int state, int thread, lng clkticks, lng ticks, lng memory, lng reads, lng writes, char *fcn, char *stmt) +static void update(int state, int thread, lng clkticks, lng ticks, lng memory, lng footprint, lng reads, lng writes, char *fcn, char *stmt) { int idx; Box b; @@ -1599,6 +1612,7 @@ static void update(int state, int thread lastclk[thread] = clkticks; box[idx].clkend = box[idx].clkstart = clkticks; box[idx].memend = box[idx].memstart = memory; + box[idx].footstart = box[idx].footend = footprint; box[idx].reads = reads; box[idx].writes = writes; s = strchr(stmt, (int) ']'); @@ -1622,6 +1636,7 @@ static void update(int state, int thread box[idx].thread = thread; box[idx].clkstart = clkticks; box[idx].memstart = memory; + box[idx].footstart = footprint; box[idx].stmt = stmt; box[idx].fcn = fcn ? strdup(fcn) : ""; } @@ -1630,6 +1645,7 @@ static void update(int state, int thread lastclk[thread] = clkticks; box[idx].clkend = clkticks; box[idx].memend = memory; + box[idx].footend = footprint; box[idx].ticks = ticks; box[idx].state = ACTION; box[idx].reads = reads; @@ -1669,9 +1685,10 @@ static int parser(char *row) int thread = 0; lng ticks = 0; lng memory = 0; /* in MB*/ + lng footprint = 0; /* in MB*/ char *fcn = 0, *stmt = 0; int state = 0; - lng reads, writes; + lng reads= 0, writes= 0; /* check basic validaty first */ if (row[0] != '[') @@ -1734,10 +1751,16 @@ static int parser(char *row) return -6; _______________________________________________ checkin-list mailing list [email protected] http://mail.monetdb.org/mailman/listinfo/checkin-list
