Changeset: 1965788f62e8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1965788f62e8
Added Files:
sql/test/BugTracker-2012/Tests/hash_join_crash.Bug-3089.sql
sql/test/BugTracker-2012/Tests/hash_join_crash.Bug-3089.stable.err
sql/test/BugTracker-2012/Tests/hash_join_crash.Bug-3089.stable.out
sql/test/BugTracker-2012/Tests/predicate_select.Bug-3090.sql
sql/test/BugTracker-2012/Tests/predicate_select.Bug-3090.stable.err
sql/test/BugTracker-2012/Tests/predicate_select.Bug-3090.stable.out
sql/test/BugTracker-2012/Tests/row-number-nyi.Bug-3087.sql
sql/test/BugTracker-2012/Tests/row-number-nyi.Bug-3087.stable.err
sql/test/BugTracker-2012/Tests/row-number-nyi.Bug-3087.stable.out
Modified Files:
clients/Tests/exports.stable.out
gdk/gdk.h
gdk/gdk_bat.c
gdk/gdk_bbp.mx
gdk/gdk_calc.c
gdk/gdk_delta.c
gdk/gdk_delta.h
gdk/gdk_storage.c
gdk/gdk_system.h
gdk/gdk_utils.c
monetdb5/extras/jaql/jaql.c
monetdb5/extras/jaql/jaqltree.h
monetdb5/extras/jaql/parser/jaql.l
monetdb5/extras/jaql/parser/jaql.y
monetdb5/mal/mal.h
monetdb5/mal/mal_authorize.c
monetdb5/mal/mal_interpreter.mx
monetdb5/modules/kernel/batcalc.c
monetdb5/modules/kernel/batcalc.mal
monetdb5/modules/kernel/batcalc.mal.sh
monetdb5/modules/kernel/batmmath.mx
monetdb5/modules/kernel/calc.mal
monetdb5/modules/kernel/calc.mal.sh
monetdb5/modules/kernel/counters.c
monetdb5/modules/kernel/mmath.mx
monetdb5/modules/mal/batExtensions.c
monetdb5/modules/mal/bbp.mx
sql/common/sql_types.c
sql/server/rel_bin.c
sql/server/rel_optimizer.c
sql/test/BugTracker-2012/Tests/All
tools/mserver/mserver5.1
Branch: default
Log Message:
Merge from tip
diffs (truncated from 2780 to 300 lines):
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
@@ -1427,8 +1427,6 @@ str CMDraise(str *ret, str *msg);
str CMDregisterFunction(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr
pci);
str CMDscience_bat_cst_atan2_dbl(int *ret, int *bid, dbl *d);
str CMDscience_bat_cst_atan2_flt(int *ret, int *bid, flt *d);
-str CMDscience_bat_cst_fmod_dbl(int *ret, int *bid, dbl *d);
-str CMDscience_bat_cst_fmod_flt(int *ret, int *bid, flt *d);
str CMDscience_bat_cst_pow_dbl(int *ret, int *bid, dbl *d);
str CMDscience_bat_cst_pow_flt(int *ret, int *bid, flt *d);
str CMDscience_bat_dbl_acos(int *ret, int *bid);
@@ -1790,8 +1788,6 @@ str MANUALhelp(Client cntxt, MalBlkPtr m
str MANUALsearch(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
str MATHbinary_ATAN2dbl(dbl *res, dbl *a, dbl *b);
str MATHbinary_ATAN2flt(flt *res, flt *a, flt *b);
-str MATHbinary_FMODdbl(dbl *res, dbl *a, dbl *b);
-str MATHbinary_FMODflt(flt *res, flt *a, flt *b);
str MATHbinary_POWdbl(dbl *res, dbl *a, dbl *b);
str MATHbinary_POWflt(flt *res, flt *a, flt *b);
str MATHbinary_ROUNDdbl(dbl *res, dbl *a, int *b);
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -579,7 +579,7 @@ typedef enum { GDK_FAIL, GDK_SUCCEED } g
ATOMname(t2), ATOMname(t1)); \
return 0; \
} else if (!TYPEcomp(t1, t2)) { \
- CHECKDEBUG THRprintf(GDKout,"#Interpreting %s as
%s.\n", \
+ CHECKDEBUG THRprintf(GDKstdout,"#Interpreting %s as
%s.\n", \
ATOMname(t2), ATOMname(t1)); \
} \
} while (0)
@@ -595,12 +595,12 @@ typedef enum { GDK_FAIL, GDK_SUCCEED } g
} \
if (BAThtype(P1) != BAThtype(P2) && \
ATOMtype((P1)->htype) != ATOMtype((P2)->htype)) { \
- CHECKDEBUG THRprintf(GDKout,"#Interpreting %s as
%s.\n", \
+ CHECKDEBUG THRprintf(GDKstdout,"#Interpreting %s as
%s.\n", \
ATOMname(BAThtype(P2)),
ATOMname(BAThtype(P1))); \
} \
if (BATttype(P1) != BATttype(P2) && \
ATOMtype((P1)->ttype) != ATOMtype((P2)->ttype)) { \
- CHECKDEBUG THRprintf(GDKout,"#Interpreting %s as
%s.\n", \
+ CHECKDEBUG THRprintf(GDKstdout,"#Interpreting %s as
%s.\n", \
ATOMname(BATttype(P2)),
ATOMname(BATttype(P1))); \
} \
} while (0)
@@ -2319,6 +2319,7 @@ VALptr(ValPtr v)
for a documentation of the following debug options.
*/
+#define THRDMASK (1)
#define CHECKMASK (1<<1)
#define CHECKDEBUG if (GDKdebug & CHECKMASK)
#define MEMMASK (1<<2)
@@ -2329,26 +2330,34 @@ VALptr(ValPtr v)
#define IODEBUG if (GDKdebug & IOMASK)
#define BATMASK (1<<5)
#define BATDEBUG if (GDKdebug & BATMASK)
+/* PARSEMASK not used anymore
#define PARSEMASK (1<<6)
#define PARSEDEBUG if (GDKdebug & PARSEMASK)
+*/
#define PARMASK (1<<7)
#define PARDEBUG if (GDKdebug & PARMASK)
+/* TRGMASK not used anymore
#define TRGMASK (1<<8)
#define TRGDEBUG if (GDKdebug & TRGMASK)
+*/
#define TMMASK (1<<9)
#define TMDEBUG if (GDKdebug & TMMASK)
#define TEMMASK (1<<10)
#define TEMDEBUG if (GDKdebug & TEMMASK)
+/* DLMASK not used anymore
#define DLMASK (1<<11)
#define DLDEBUG if (GDKdebug & DLMASK)
+*/
#define PERFMASK (1<<12)
#define PERFDEBUG if (GDKdebug & PERFMASK)
#define DELTAMASK (1<<13)
#define DELTADEBUG if (GDKdebug & DELTAMASK)
#define LOADMASK (1<<14)
#define LOADDEBUG if (GDKdebug & LOADMASK)
+/* YACCMASK not used anymore
#define YACCMASK (1<<15)
#define YACCDEBUG if (GDKdebug & YACCMASK)
+*/
/*
#define ?tcpip? if (GDKdebug&(1<<16))
#define ?monet_multiplex? if (GDKdebug&(1<<17))
@@ -2360,8 +2369,10 @@ VALptr(ValPtr v)
#define ALGODEBUG if (GDKdebug & ALGOMASK)
#define ESTIMASK (1<<22)
#define ESTIDEBUG if (GDKdebug & ESTIMASK)
+/* XPROPMASK not used anymore
#define XPROPMASK (1<<23)
#define XPROPDEBUG if (GDKdebug & XPROPMASK)
+*/
#define JOINPROPMASK (1<<24)
#define JOINPROPCHK if (!(GDKdebug & JOINPROPMASK))
@@ -2372,12 +2383,10 @@ VALptr(ValPtr v)
#define ALLOCDEBUG if (GDKdebug & ALLOCMASK)
/* M5, only; cf.,
- * MonetDB5/src/optimizer/opt_prelude.mx
- * MonetDB5/src/mal/mal.mx
-
+ * monetdb5/mal/mal.h
+ */
#define OPTMASK (1<<27)
#define OPTDEBUG if (GDKdebug & OPTMASK)
-*/
#define EXTENDMASK (1<<28)
#define EXTENDDEBUG if (GDKdebug & EXTENDMASK)
@@ -2470,7 +2479,7 @@ BBPcheck(register bat x, register const
register bat z = ABS(x);
if (z >= BBPsize || BBP_logical(z) == NULL) {
- CHECKDEBUG THRprintf(GDKout,"#%s: range error %d\n", y,
(int) x);
+ CHECKDEBUG THRprintf(GDKstdout,"#%s: range error %d\n",
y, (int) x);
} else {
return z;
}
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -3043,7 +3043,7 @@ BATassertHeadProps(BAT *b)
(hp->filename = GDKmalloc(nmelen + 30)) == NULL) {
if (hp)
GDKfree(hp);
- THRprintf(GDKout,
+ THRprintf(GDKstdout,
"#BATassertProps: cannot allocate "
"hash table\n");
goto abort_check;
@@ -3056,7 +3056,7 @@ BATassertHeadProps(BAT *b)
GDKfree(ext);
GDKfree(hp->filename);
GDKfree(hp);
- THRprintf(GDKout,
+ THRprintf(GDKstdout,
"#BATassertProps: cannot allocate "
"hash table\n");
goto abort_check;
@@ -3225,7 +3225,7 @@ BATderiveHeadProps(BAT *b, int expensive
GDKfree(ext);
hp = NULL;
ext = NULL;
- THRprintf(GDKout,
+ THRprintf(GDKstdout,
"#BATderiveProps: cannot allocate "
"hash table: not doing full check\n");
}
diff --git a/gdk/gdk_bbp.mx b/gdk/gdk_bbp.mx
--- a/gdk/gdk_bbp.mx
+++ b/gdk/gdk_bbp.mx
@@ -1541,7 +1541,7 @@ BBPdir_subcommit(int cnt, bat *subcommit
if (n < BBPsize)
n = BBPsize;
- if (GDKdebug & (IOMASK | 1))
+ if (GDKdebug & (IOMASK | THRDMASK))
THRprintf(GDKstdout, "#BBPdir: writing BBP.dir (%d bats).\n",
n);
IODEBUG {
THRprintf(GDKstdout, "#BBPdir start oid=");
@@ -1616,7 +1616,7 @@ BBPdir(int cnt, bat *subcommit)
if (subcommit)
return BBPdir_subcommit(cnt, subcommit);
- if (GDKdebug & (IOMASK | 1))
+ if (GDKdebug & (IOMASK | THRDMASK))
THRprintf(GDKstdout, "#BBPdir: writing BBP.dir (%d bats).\n",
(int) BBPsize);
IODEBUG {
THRprintf(GDKstdout, "#BBPdir start oid=");
@@ -1971,7 +1971,7 @@ BBPinsert(BATstore *bs)
BBP_physical(i) = (str) GDKmalloc(strlen(dirname) + strlen(nme)
+ 1 + 1 /* EOS + DIR_SEP */ );
GDKfilepath(BBP_physical(i), dirname, nme, NULL);
- BATDEBUG THRprintf(GDKout, "#%d = new %s(%s,%s)\n", (int) i,
BBPname(i), ATOMname(bs->H.type), ATOMname(bs->T.type));
+ BATDEBUG THRprintf(GDKstdout, "#%d = new %s(%s,%s)\n", (int) i,
BBPname(i), ATOMname(bs->H.type), ATOMname(bs->T.type));
}
return i;
@@ -2030,7 +2030,7 @@ BBPuncacheit(bat i, int unloaddesc)
if (bs) {
if (BBP_cache(i)) {
- BATDEBUG THRprintf(GDKout, "#uncache %d
(%s)\n", (int) i, BBPname(i));
+ BATDEBUG THRprintf(GDKstdout, "#uncache %d
(%s)\n", (int) i, BBPname(i));
BBP_cache(i) = BBP_cache(-i) = NULL;
@@ -2053,11 +2053,11 @@ static inline void
bbpclear(bat i, int idx, str lock)
{
BATDEBUG {
- THRprintf(GDKout, "#clear %d (%s)\n", (int) i, BBPname(i));
+ THRprintf(GDKstdout, "#clear %d (%s)\n", (int) i, BBPname(i));
}
BBPuncacheit(i, TRUE);
BATDEBUG {
- mnstr_printf(GDKout, "#BBPclear set to unloading %d\n", i);
+ mnstr_printf(GDKstdout, "#BBPclear set to unloading %d\n", i);
}
BBP_status_set(i, BBPUNLOADING, "BBPclear");
BBP_refs(i) = 0;
@@ -2213,7 +2213,7 @@ BBPspin(bat i, str s, int event)
MT_sleep_ms(1);
spin++;
}
- BATDEBUG THRprintf(GDKout, "#BBPspin(%d,%s,%d): " LLFMT "
loops\n", (int) i, s, event, spin);
+ BATDEBUG THRprintf(GDKstdout, "#BBPspin(%d,%s,%d): " LLFMT "
loops\n", (int) i, s, event, spin);
}
}
@@ -2431,7 +2431,7 @@ decref(bat i, int logical, int releaseSh
* available anymore */
assert((BBP_status(i) & BBPUNLOADING) == 0);
BATDEBUG {
- mnstr_printf(GDKout, "#BBPdecref set to unloading BAT
%d\n", i);
+ mnstr_printf(GDKstdout, "#BBPdecref set to unloading
BAT %d\n", i);
}
BBP_status_on(i, BBPUNLOADING, "BBPdecref");
swap = TRUE;
@@ -2456,7 +2456,7 @@ decref(bat i, int logical, int releaseSh
BBPdestroy(b); /* free memory (if loaded) and delete
from disk (if transient but saved) */
} else if (b) {
BATDEBUG {
- mnstr_printf(GDKout, "#BBPdecref unload and
free bat %d\n", i);
+ mnstr_printf(GDKstdout, "#BBPdecref unload and
free bat %d\n", i);
}
BBP_unload_inc(i, "BBPdecref");
if (BBPfree(b, "BBPdecref")) /* free memory of
transient */
@@ -2611,7 +2611,7 @@ getBBPdescriptor(bat i, int lock)
if (b == NULL) {
load = TRUE;
BATDEBUG {
- mnstr_printf(GDKout, "#BBPdescriptor
set to unloading BAT %d\n", j);
+ mnstr_printf(GDKstdout, "#BBPdescriptor
set to unloading BAT %d\n", j);
}
BBP_status_on(j, BBPLOADING, "BBPdescriptor");
}
@@ -2770,7 +2770,7 @@ BBPfree(BAT *b, str calledFrom)
}
/* clearing bits can be done without the lock */
BATDEBUG {
- mnstr_printf(GDKout, "#BBPfree turn off unloading %d\n", bid);
+ mnstr_printf(GDKstdout, "#BBPfree turn off unloading %d\n",
bid);
}
BBP_status_off(bid, BBPUNLOADING, calledFrom);
BBP_unload_dec(bid, calledFrom);
@@ -2998,7 +2998,7 @@ BBPtrim_select(size_t target, int dirty)
memdirty);
}
BATDEBUG {
- mnstr_printf(GDKout,
+ mnstr_printf(GDKstdout,
"#BBPtrim_select set to
unloading BAT %d\n",
bbptrim[cur].bid);
}
@@ -3103,7 +3103,7 @@ BBPtrim(size_t target)
GDKmem_inuse(), GDKvm_cursize());
MEMDEBUG THRprintf(GDKstdout, "#BBPTRIM: target=" SZFMT "\n", target);
- PERFDEBUG THRprintf(GDKout, "#BBPtrim(mem=%d)\n", target > 0);
+ PERFDEBUG THRprintf(GDKstdout, "#BBPtrim(mem=%d)\n", target > 0);
scan = (bbptrimfirst == BBPMAXTRIM);
if (bbpscanstart >= BBPsize)
@@ -3168,7 +3168,7 @@ BBPtrim(size_t target)
bats_written += (b->batPersistence != TRANSIENT &&
BATdirty(b));
bats_unloaded++;
BATDEBUG {
- mnstr_printf(GDKout,
+ mnstr_printf(GDKstdout,
"#BBPtrim unloaded and free bat
%d\n",
b->batCacheid);
}
@@ -3180,7 +3180,7 @@ BBPtrim(size_t target)
}
/* done trimming */
MEMDEBUG THRprintf(GDKstdout, "#BBPTRIM_EXIT: memsize=" SZFMT
",vmsize=" SZFMT "\n", GDKmem_cursize(), GDKvm_cursize());
- PERFDEBUG THRprintf(GDKout, "#BBPtrim(did_scan=%d, bats_unloaded=%d,
bats_written=%d) %d ms\n", did_scan, bats_unloaded, bats_written, GDKms() -
msec);
+ PERFDEBUG THRprintf(GDKstdout, "#BBPtrim(did_scan=%d, bats_unloaded=%d,
bats_written=%d) %d ms\n", did_scan, bats_unloaded, bats_written, GDKms() -
msec);
BBP_notrim = 0;
for (i = BBP_THREADMASK; i >= 0; i--)
@@ -3555,7 +3555,7 @@ batcache_get(batcache_t * bc, int bin)
BBP_refs(bid)++;
BATDEBUG {
- mnstr_printf(GDKout, "#BBPrecycle turn off unloading
%d\n", bid);
+ mnstr_printf(GDKstdout, "#BBPrecycle turn off unloading
%d\n", bid);
}
/* clearing bits can be done without the lock */
BBP_status_off(bid, BBPUNLOADING, "BBPrecycle");
@@ -3592,7 +3592,7 @@ BBPaddtobin(BAT *b)
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list