optimizer update
authorBruce Momjian
Fri, 12 Feb 1999 02:37:52 +0000 (02:37 +0000)
committerBruce Momjian
Fri, 12 Feb 1999 02:37:52 +0000 (02:37 +0000)
src/backend/optimizer/util/pathnode.c

index 23e3e8ee0c21c04fec8ba880c09f87f3a02b8162..43db1bd267f1682f829231865fab78a7e9b31d58 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/optimizer/util/pathnode.c,v 1.31 1999/02/11 21:05:28 momjian Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/optimizer/util/pathnode.c,v 1.32 1999/02/12 02:37:52 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -211,19 +211,25 @@ better_path(Path *new_path, List *unique_paths, bool *is_new)
                  new_path->path_cost <= path->path_cost))
            {
                *is_new = false;
-               return new_path;
+               return path;
            }
 
                            /* same keys, new is more expensive, stop */
-           else if
-               ((better_key == 0 && better_sort == 0 &&
-                 new_path->path_cost >= path->path_cost) ||
+           if ((better_key == 0 && better_sort == 0 &&
+                new_path->path_cost >= path->path_cost) ||
 
                            /* old is better, and less expensive, stop */
                (((better_key == 2 && better_sort != 1) ||
                  (better_key != 1 && better_sort == 2)) &&
                  new_path->path_cost >= path->path_cost))
            {
+#ifdef OPTDB_DEBUG
+               printf("better key %d better sort %d\n", better_key, better_sort);
+               printf("new\n");
+               pprint(new_path);
+               printf("old\n");
+               pprint(path);
+#endif
                *is_new = false;
                return NULL;
            }