On Wed, Sep 19, 2007 at 07:19:52AM +0000, Manuel Mayr wrote:
Update of /cvsroot/monetdb/pathfinder/compiler/sql In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv17096/sql
Modified Files: lalg2sql.brg Log Message:
Fixing failure indicated by testweb
Thanks! BUT: http://sourceforge.net/mailarchive/forum.php?thread_name=20070918223806.GA24922%40cwi.nl&forum_name=monetdb-developers says: " [...] IMPORTANT NOTES: 1) As usually, as of NOW, a) ALL bug fixes (and ONLY those) MUST be checked in to the above release branches (and ONLY there)! b) ALL new features (and ONLY those) MUST be checked in to the development trunk (HEAD) (and ONLY there)! (In case you need assistance please feel free to contact MonetDB-developers@li... .) [...] " Stefan
Index: lalg2sql.brg =================================================================== RCS file: /cvsroot/monetdb/pathfinder/compiler/sql/lalg2sql.brg,v retrieving revision 1.73 retrieving revision 1.74 diff -u -d -r1.73 -r1.74 --- lalg2sql.brg 18 Sep 2007 11:47:20 -0000 1.73 +++ lalg2sql.brg 19 Sep 2007 07:19:48 -0000 1.74 @@ -482,8 +482,6 @@ #define EXT_COLUMN_NAME(alias,att,ty) (ext_column_name ( \ (alias), new_col ((att),(ty))))
- - /* .......... Column Environment Helper Functions .......... */
struct sql_column_env_t @@ -1523,14 +1521,18 @@ * twigs */ PFla_op_t *twig; unsigned int i; - for (i = 0; i < PFarray_last (frags); i++) { - twig = *(PFla_op_t **)PFarray_at (frags, i); - if (twig == p) - break; - } - if (i < PFarray_last (frags) && twig) { - SER_REPORT(p) = ser_tc; - return; + + if (p->kind == la_twig) { + for (i = 0; i < PFarray_last (frags); i++) { + twig = *(PFla_op_t **)PFarray_at (frags, i); + if (twig == p) + break; + } + + if (i < PFarray_last (frags) && twig) { + SER_REPORT(p) = ser_tc; + return; + } }
/* if we find a leaf return yes */ @@ -1773,10 +1775,8 @@ alias_bind(document, alias (docalias1))), eq (PRE(docalias1), item_pre)), alias_bind (document, alias (docalias2))), - and_ ( - gteq (PRE(docalias2), PRE(docalias1)), - gteq (add (PRE(docalias1), SIZE(docalias1)), - PRE(docalias2))))), + between (PRE(docalias2), PRE(docalias1), + add (PRE(docalias1), SIZE(docalias1))))), NULL, (IS_LITERAL(cpos))? stmt_list (PRE(docalias2)): @@ -2211,12 +2211,14 @@ case 6: /* Rel: thetajoin (Rel, Rel) */ case 8: + { assert (kids[0] && nts[0]); assert (kids[1] && nts[1]); /* reduce the first child */ reduce (kids[0], nts[0]);
PFarray_t *left_args = PFarray (sizeof(PFsql_t*)); + /* left join predicate for the equijoin */ if (p->kind == la_eqjoin) { PFalg_simple_type_t l_ty;
@@ -2229,7 +2231,7 @@ p->sem.eqjoin.att1, l_ty); } - /* join predicates for the theta-join operator */ + /* left join predicates for the theta-join operator */ else if (p->kind == la_thetajoin) { PFalg_att_t left; PFalg_simple_type_t l_ty; @@ -2256,6 +2258,7 @@ reduce (kids[1], nts[1]);
PFarray_t *right_args = PFarray (sizeof(PFsql_t*)); + /* left join predicate for the equi-join operator */ if (p->kind == la_eqjoin) { PFalg_simple_type_t r_ty;
@@ -2382,7 +2385,7 @@ where_list_add (WHERELIST(p), cond); } } - break; + } break;
/* Rel: semijoin (Rel, Rel) */ case 7:
------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Monetdb-pf-checkins mailing list Monetdb-pf-checkins@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins
-- | Dr. Stefan Manegold | mailto:Stefan.Manegold@cwi.nl | | CWI, P.O.Box 94079 | http://www.cwi.nl/~manegold/ | | 1090 GB Amsterdam | Tel.: +31 (20) 592-4212 | | The Netherlands | Fax : +31 (20) 592-4312 |