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

Modified Files:
        physdebug.c 
Log Message:
propagated changes of Friday May 30 2008 - Saturday May 31 2008
from the XQuery_0-24 branch to the development trunk

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008/05/30 - tsheyar:
        
compiler/debug/physdebug.c,1.62.2.1(XQuery_0-24,xrpcdemo_sync,Stable_DailyBuild-31)
-- Only print properties if we really have them (fixes a segfault).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008/05/30 - tsheyar:
        compiler/algebra/physical.c,1.69.2.2(XQuery_0-24,Stable_DailyBuild-31)
-- doc_tbl is trivially sorted for inputs of cardinality 1.
   (This change avoids the planning of a physical sort operator.)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008/05/30 - tsheyar:
        compiler/algebra/planner.c,1.62.2.2(XQuery_0-24,Stable_DailyBuild-31)
-- add missing physical implementation for the step_join operator.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008/05/30 - tsheyar:
        
compiler/algebra/opt/opt_complex.c,1.45.2.1(XQuery_0-24,Stable_DailyBuild-31)
-- performance fix for step_joins.
   (Merge step_join pair implementing descendant-or-self::node()/child::___
    into a single step_join descendant::___.)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008/05/31 - stmane: compiler/algebra/planner.c,1.62.2.3(XQuery_0-24)

fixed compilation: removed unused variable
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


U physdebug.c
Index: physdebug.c
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/debug/physdebug.c,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -d -r1.62 -r1.63
--- physdebug.c 21 May 2008 10:10:49 -0000      1.62
+++ physdebug.c 31 May 2008 05:28:10 -0000      1.63
@@ -658,6 +658,45 @@
             fmt = prop_args;
 
         while (*fmt) {
+            if (*fmt == '+' || *fmt == 'c') {
+                PFarray_printf (dot, "\\ncost: %lu", n->cost);
+            }
+            if (*fmt == '+' || *fmt == 'o') {
+                PFarray_printf (dot, "\\norderings:");
+                for (unsigned int i = 0;
+                        i < PFarray_last (n->orderings); i++)
+                    PFarray_printf (
+                            dot, "\\n%s",
+                            PFord_str (
+                                *(PFord_ordering_t *)
+                                        PFarray_at (n->orderings,i)));
+            }
+
+            /* stop after all properties have been printed */
+            if (*fmt == '+')
+                break;
+            else
+                fmt++;
+        }
+    }
+    if (prop_args && n->prop) {
+
+        char *fmt = prop_args;
+        /* format character '+' overwrites all others */
+        bool all = false;
+        while (*fmt) {
+            if (*fmt == '+') {
+                all = true;
+                break;
+            }
+            fmt++;
+        }
+        /* iterate over all format characters
+           if we haven't found a '+' character */
+        if (!all)
+            fmt = prop_args;
+
+        while (*fmt) {
             if (*fmt == '+' || *fmt == 'A') {
                 /* if present print cardinality */
                 if (PFprop_card (n->prop))
@@ -883,19 +922,6 @@
                     }
                 }
             }
-            if (*fmt == '+' || *fmt == 'c') {
-                PFarray_printf (dot, "\\ncost: %lu", n->cost);
-            }
-            if (*fmt == '+' || *fmt == 'o') {
-                PFarray_printf (dot, "\\norderings:");
-                for (unsigned int i = 0;
-                        i < PFarray_last (n->orderings); i++)
-                    PFarray_printf (
-                            dot, "\\n%s",
-                            PFord_str (
-                                *(PFord_ordering_t *)
-                                        PFarray_at (n->orderings,i)));
-            }
 
             /* stop after all properties have been printed */
             if (*fmt == '+')


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins

Reply via email to