Changeset: 21ed682825b4 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=21ed682825b4 Modified Files: gdk/gdk.h gdk/gdk_bat.c gdk/gdk_join.c gdk/gdk_select.c monetdb5/mal/mal.h monetdb5/modules/mal/mdb.c sql/backends/monet5/sql.c tools/mserver/mserver5.1.in tools/mserver/mserver5.c Branch: viewless Log Message:
introduce --viewless option diffs (153 lines): diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -432,6 +432,9 @@ #define FORCEMITOMASK (1<<29) #define FORCEMITODEBUG if (GDKdebug & FORCEMITOMASK) +#define VIEWLESSMASK (1<<30) +#define VIEWLESSDEBUG if (GDKdebug & VIEWLESSMASK) + /* * @- GDK session handling * @multitable @columnfractions 0.08 0.7 diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c --- a/gdk/gdk_bat.c +++ b/gdk/gdk_bat.c @@ -1990,6 +1990,9 @@ BATassertProps(BAT *b) assert(b->batCacheid > 0); assert(b->batCount >= b->batInserted); + + VIEWLESSDEBUG assert(viewless(b)); + /* headless */ assert(b->hseqbase <= GDK_oid_max); /* non-nil seqbase */ assert(b->hseqbase + BATcount(b) <= GDK_oid_max); diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c --- a/gdk/gdk_join.c +++ b/gdk/gdk_join.c @@ -99,13 +99,6 @@ joinparamcheck(BAT *l, BAT *r1, BAT *r2, GDKerror("%s: candidate lists must be unique.\n", func); return GDK_FAIL; } - if (!viewless(l) || !viewless(r1) || (r2 && !viewless(r2))) { - /* - GDKerror("%s: inputs are views.\n", func); - assert(0); - return GDK_FAIL; - */ - } return GDK_SUCCEED; } diff --git a/gdk/gdk_select.c b/gdk/gdk_select.c --- a/gdk/gdk_select.c +++ b/gdk/gdk_select.c @@ -1211,9 +1211,6 @@ BATselect(BAT *b, BAT *s, const void *tl BATcheck(b, "BATselect", NULL); BATcheck(tl, "BATselect: tl value required", NULL); - if (!viewless(b)) { - fprintf(stderr, "BATselect: b=%s#(%u) is a view.\n", BATgetId(b), VIEWtparent(b)); - } assert(s == NULL || s->ttype == TYPE_oid || s->ttype == TYPE_void); assert(hi == 0 || hi == 1); diff --git a/monetdb5/mal/mal.h b/monetdb5/mal/mal.h --- a/monetdb5/mal/mal.h +++ b/monetdb5/mal/mal.h @@ -63,8 +63,8 @@ mal_export int have_hge; for a documentation of all debug options. */ #define GRPthreads (THRDMASK | PARMASK) -#define GRPmemory (MEMMASK | ALLOCMASK ) -#define GRPproperties (CHECKMASK | PROPMASK | BATMASK ) +#define GRPmemory (MEMMASK | ALLOCMASK) +#define GRPproperties (CHECKMASK | PROPMASK | BATMASK) #define GRPio (IOMASK | PERFMASK ) #define GRPheaps (HEAPMASK) #define GRPtransactions (TMMASK | DELTAMASK | TEMMASK) @@ -73,6 +73,7 @@ mal_export int have_hge; #define GRPperformance (DEADBEEFMASK) #define GRPoptimizers (OPTMASK) #define GRPforcemito (FORCEMITOMASK | NOSYNCMASK) +#define GRPviewless (VIEWLESSMASK | CHECKMASK | PROPMASK | BATMASK) mal_export MT_Lock mal_contextLock; mal_export MT_Lock mal_remoteLock; diff --git a/monetdb5/modules/mal/mdb.c b/monetdb5/modules/mal/mdb.c --- a/monetdb5/modules/mal/mdb.c +++ b/monetdb5/modules/mal/mdb.c @@ -211,6 +211,8 @@ MDBsetDebugStr(int *ret, str *flg) GDKdebug |= GRPperformance; if( strcmp("forcemito",*flg)==0) GDKdebug |= GRPforcemito; + if( strcmp("viewless",*flg)==0) + GDKdebug |= GRPviewless; return MAL_SUCCEED; } diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c --- a/sql/backends/monet5/sql.c +++ b/sql/backends/monet5/sql.c @@ -515,9 +515,6 @@ mvc_bind(mvc *m, const char *sname, cons return NULL; b = store_funcs.bind_col(tr, c, access); - if (!viewless(b)) { - fprintf(stderr, "mvc_bind: b=%s#(%u) is a view.\n", BATgetId(b), VIEWtparent(b)); - } return b; } diff --git a/tools/mserver/mserver5.1.in b/tools/mserver/mserver5.1.in --- a/tools/mserver/mserver5.1.in +++ b/tools/mserver/mserver5.1.in @@ -177,6 +177,8 @@ combination of): overhead for unnecessarily large plans); used only for development & testing; set automatically by Mtest.py + 1073741824 = VIEWLESSMASK = check if a newly created BAT is a view + (requires that PROPMASK is set) .EE Note that @@ -195,6 +197,7 @@ these debug flags as well: \-\-performance (DEADBEEFMASK) \-\-optimizers (OPTMASK) \-\-forcemito (FORCEMITOMASK | NOSYNCMASK) + \-\-viewless (VIEWLESSMASK | CHECKMASK | PROPMASK | BATMASK) .EE Default: diff --git a/tools/mserver/mserver5.c b/tools/mserver/mserver5.c --- a/tools/mserver/mserver5.c +++ b/tools/mserver/mserver5.c @@ -116,6 +116,7 @@ usage(char *prog, int xit) fprintf(stderr, " --optimizers\n"); fprintf(stderr, " --trace\n"); fprintf(stderr, " --forcemito\n"); + fprintf(stderr, " --viewless\n"); fprintf(stderr, " --debug=<bitmask>\n"); exit(xit); @@ -265,6 +266,7 @@ main(int argc, char **av) { "optimizers", 0, 0, 0 }, { "performance", 0, 0, 0 }, { "forcemito", 0, 0, 0 }, + { "viewless", 0, 0, 0 }, { "heaps", 0, 0, 0 }, { 0, 0, 0, 0 } }; @@ -368,6 +370,10 @@ main(int argc, char **av) grpdebug |= GRPforcemito; break; } + if (strcmp(long_options[option_index].name, "viewless") == 0) { + grpdebug |= GRPviewless; + break; + } if (strcmp(long_options[option_index].name, "performance") == 0) { grpdebug |= GRPperformance; break; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list