Update of /cvsroot/monetdb/pathfinder/compiler/debug
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv13092/debug

Modified Files:
        logdebug.c 
Log Message:
-- Added node based properties that check (top-down) if ...

    ... the node may be used (indirectly) for serialization

    ... the node id may be used

    ... the node order may be used

    ... the node values may be accessed

    ... a downward axis is applied lateron
        (child, descendant, descendant-or-self)

    ... a side-way axis is applied lateron
        (following, following-sibling, preceding, preceding-sibling)

    ... an upward axis is applied lateron
        (parent, ancestor, ancestor-or-self)

    ... a self axis is applied lateron
        (self, ancestor-or-self, descendant-or-self)

    ... the node may be used as input to node construction

-- Exploited the node base property that checks for the downward axis
   property:
  
   For every content constructor whose input is not queried we can
   use the physical shallow content constructor that makes use of
   references instead of creating a subtree copy.

   (This sped up the execution time of XMark Q10 (scale factor 1)
    by 60% and the execution time of XMark Q15 by 150%.)


U logdebug.c
Index: logdebug.c
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/debug/logdebug.c,v
retrieving revision 1.97
retrieving revision 1.98
diff -u -d -r1.97 -r1.98
--- logdebug.c  17 Mar 2008 17:41:23 -0000      1.97
+++ logdebug.c  1 Apr 2008 16:37:17 -0000       1.98
@@ -1098,6 +1098,35 @@
                         fst = false;
                     }
                 }
+                
+                /* node properties */
+
+                fst = true;
+                /* node content queried */
+                for (unsigned int i = 0; i < n->schema.count; i++) {
+                    PFalg_att_t att = n->schema.items[i].name;
+                    if (PFprop_node_property (n->prop, att) &&
+                        PFprop_node_content_queried (n->prop, att)) {
+                        PFarray_printf (
+                            dot, 
+                            fst ? "\\nnode content queried: %s" : ", %s",
+                            PFatt_str (att));
+                        fst = false;
+                    }
+                }
+                fst = true;
+                /* node and its subtree serialized */
+                for (unsigned int i = 0; i < n->schema.count; i++) {
+                    PFalg_att_t att = n->schema.items[i].name;
+                    if (PFprop_node_property (n->prop, att) &&
+                        PFprop_node_serialize (n->prop, att)) {
+                        PFarray_printf (
+                            dot, 
+                            fst ? "\\nnode serialized: %s" : ", %s",
+                            PFatt_str (att));
+                        fst = false;
+                    }
+                }
             }
             if (*fmt == '+' || *fmt == 'D') {
                 /* list attributes and their corresponding domains */


-------------------------------------------------------------------------
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

Reply via email to