Update of /cvsroot/monetdb/pathfinder/compiler/algebra
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv31404/compiler/algebra
Modified Files:
planner.c
Log Message:
The error operator now reaches all the way to the mil level.
* planner.c: added code for actually creating the physical plan with the error
op.
* milgen.brg: for the time being only prints a standar error, next commit will
print the correct string
* logical.h: added a semantic content for the error operator
Index: planner.c
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/algebra/planner.c,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -d -r1.43 -r1.44
--- planner.c 14 Dec 2007 12:02:33 -0000 1.43
+++ planner.c 19 Dec 2007 16:06:30 -0000 1.44
@@ -2020,6 +2020,21 @@
}
/**
+ * 'error' operator in the logical algebra just get a 1:1 mapping
+ * into the physical error operator (just like cond_err).
+ */
+static PFplanlist_t *
+plan_error (const PFla_op_t *n)
+{
+ PFplanlist_t *ret = new_planlist ();
+
+ for (unsigned int i = 0; i < PFarray_last (L(n)->plans); i++)
+ add_plan (ret, error(*(plan_t **) PFarray_at (L(n)->plans, i)));
+
+ return ret;
+}
+
+/**
* `cond_err' operator in the logical algebra just get a 1:1 mapping
* into the physical cond_err operator.
*/
@@ -2887,6 +2902,7 @@
case la_frag_union: plans = plan_frag_union (n); break;
case la_empty_frag: plans = plan_empty_frag (n); break;
+ case la_error: plans = plan_error (n); break;
case la_cond_err: plans = plan_cond_err (n); break;
case la_nil:
-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins