Make trace_sort control abbreviation debug output for the text opclass.
authorRobert Haas
Wed, 8 Apr 2015 02:45:17 +0000 (22:45 -0400)
committerRobert Haas
Wed, 8 Apr 2015 02:45:17 +0000 (22:45 -0400)
This is consistent with what the new numeric suppor for abbreviated keys
now does, and seems much more convenient than having a separate compiler
define to control this debug output.

Peter Geoghegan

src/backend/utils/adt/varlena.c

index d874a1aec095b4165ce79b2e26c81cdbdca4a91a..18cbdd0e76943debd6ed3d889d04be2095f35b4c 100644 (file)
@@ -34,9 +34,6 @@
 #include "utils/pg_locale.h"
 #include "utils/sortsupport.h"
 
-#ifdef DEBUG_ABBREV_KEYS
-#define DEBUG_elog_output  DEBUG1
-#endif
 
 /* GUC variable */
 int            bytea_output = BYTEA_OUTPUT_HEX;
@@ -2149,11 +2146,13 @@ bttext_abbrev_abort(int memtupcount, SortSupport ssup)
     * time there are differences within full key strings not captured in
     * abbreviations.
     */
-#ifdef DEBUG_ABBREV_KEYS
+#ifdef TRACE_SORT
+   if (trace_sort)
    {
        double norm_abbrev_card = abbrev_distinct / (double) memtupcount;
 
-       elog(DEBUG_elog_output, "abbrev_distinct after %d: %f (key_distinct: %f, norm_abbrev_card: %f, prop_card: %f)",
+       elog(LOG, "bttext_abbrev: abbrev_distinct after %d: %f "
+            "(key_distinct: %f, norm_abbrev_card: %f, prop_card: %f)",
             memtupcount, abbrev_distinct, key_distinct, norm_abbrev_card,
             tss->prop_card);
    }
@@ -2219,11 +2218,11 @@ bttext_abbrev_abort(int memtupcount, SortSupport ssup)
     * of moderately high to high abbreviated cardinality.  There is little to
     * lose but much to gain, which our strategy reflects.
     */
-#ifdef DEBUG_ABBREV_KEYS
-   elog(DEBUG_elog_output, "would have aborted abbreviation due to worst-case at %d. abbrev_distinct: %f, key_distinct: %f, prop_card: %f",
-        memtupcount, abbrev_distinct, key_distinct, tss->prop_card);
-   /* Actually abort only when debugging is disabled */
-   return false;
+#ifdef TRACE_SORT
+   if (trace_sort)
+       elog(LOG, "bttext_abbrev: aborted abbreviation at %d "
+            "(abbrev_distinct: %f, key_distinct: %f, prop_card: %f)",
+            memtupcount, abbrev_distinct, key_distinct, tss->prop_card);
 #endif
 
    return true;