Changeset: 69c8415c265d for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=69c8415c265d Modified Files: Branch: Oct2010 Log Message:
merge (work around hg) diffs (54 lines): diff -r 4dad7166a0c8 -r 69c8415c265d MonetDB5/src/optimizer/opt_mergetable.mx --- a/MonetDB5/src/optimizer/opt_mergetable.mx Thu Oct 28 15:32:24 2010 +0200 +++ b/MonetDB5/src/optimizer/opt_mergetable.mx Thu Oct 28 15:41:19 2010 +0200 @@ -431,7 +431,7 @@ return r; } -static InstrPtr +static int MATpackAll2(MalBlkPtr mb, InstrPtr mi, mat_t *mat, int m, int *mtop) { InstrPtr r = NULL; @@ -441,6 +441,9 @@ printInstruction(GDKout, mb, 0, mat[m].mi, LIST_MAL_ALL); } if (mat[m].type == mat_none || mat_is_topn(mat[m].type) || mat_is_orderby(mat[m].type)) { + if ((mat_is_topn(mat[m].type) || mat_is_orderby(mat[m].type)) && + !mat[m].mm) + return -1; r = mat_pack_mat(mb, mi, mat, m, mtop); pushInstruction(mb,r); MATshift(mat,m,mtop); @@ -452,10 +455,9 @@ getArg(r, 0) = mat[m].mv; getArg(r, 1) = mat[m].mv1; } - return r; + return 0; } - static int pack_all_mats(mat_t *mat, int mtop, MalBlkPtr mb ) { @@ -2355,7 +2357,6 @@ OPTDEBUGmergetable mnstr_printf(GDKout, "# %s.%s\n", getModuleId(p), getFunctionId(p)); - if (getFunctionId(p) == mirrorRef && mat[m].type == mat_grp/* && mat[m].mm */) { assert(mat[m].mm != NULL); @@ -2391,7 +2392,10 @@ for (k = p->retc; k<p->argc; k++) { if((m=isMATalias(getArg(p,k), mat, mtop)) >= 0){ - MATpackAll2(mb, NULL, mat, m, &mtop); + if (MATpackAll2(mb, NULL, mat, m, &mtop) < 0){ + error++; + goto fail; + } actions++; } } _______________________________________________ Checkin-list mailing list Checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list