diff --git a/contrib/xml2/xpath.c b/contrib/xml2/xpath.c
index 3dfcdadf96b4a42f717fa0ef740a456b467442de..5ced182d3c4debdcdcb5949b756cc111a1bb1113 100644
--- a/contrib/xml2/xpath.c
+++ b/contrib/xml2/xpath.c
@@ -65,21 +65,21 @@ char	   *pgxml_errorMsg = NULL;		/* overall error message */
 static void *
 pgxml_palloc(size_t size)
 {
-/*	elog(DEBUG1,"Alloc %d in CMC %x",size,CurrentMemoryContext); */
+/*	elog(DEBUG1,"Alloc %d in CMC %p",size,CurrentMemoryContext); */
 	return palloc(size);
 }
 
 static void *
 pgxml_repalloc(void *ptr, size_t size)
 {
-/*	elog(DEBUG1,"ReAlloc in CMC %x",CurrentMemoryContext);*/
+/*	elog(DEBUG1,"ReAlloc in CMC %p",CurrentMemoryContext);*/
 	return repalloc(ptr, size);
 }
 
 static void
 pgxml_pfree(void *ptr)
 {
-/*	elog(DEBUG1,"Free in CMC %x",CurrentMemoryContext); */
+/*	elog(DEBUG1,"Free in CMC %p",CurrentMemoryContext); */
 	pfree(ptr);
 }
 
diff --git a/src/backend/executor/nodeAppend.c b/src/backend/executor/nodeAppend.c
index 6c953db29359648f6d4a454016ec831fec476ff2..9cb177929a82c7c32eaa2e03c0d5ecc84e13335a 100644
--- a/src/backend/executor/nodeAppend.c
+++ b/src/backend/executor/nodeAppend.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/nodeAppend.c,v 1.68 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/nodeAppend.c,v 1.69 2006/05/23 15:21:51 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -151,8 +151,6 @@ ExecInitAppend(Append *node, EState *estate, int eflags)
 	/* check for unsupported flags */
 	Assert(!(eflags & EXEC_FLAG_MARK));
 
-	CXT1_printf("ExecInitAppend: context is %d\n", CurrentMemoryContext);
-
 	/*
 	 * Set up empty vector of subplan states
 	 */
diff --git a/src/backend/executor/nodeBitmapAnd.c b/src/backend/executor/nodeBitmapAnd.c
index 911c89b74a9c83857d83417360301de3bf489291..f5914adb62b57b9ca19865a0cb1c81de44754b84 100644
--- a/src/backend/executor/nodeBitmapAnd.c
+++ b/src/backend/executor/nodeBitmapAnd.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapAnd.c,v 1.6 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapAnd.c,v 1.7 2006/05/23 15:21:52 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -52,8 +52,6 @@ ExecInitBitmapAnd(BitmapAnd *node, EState *estate, int eflags)
 	/* check for unsupported flags */
 	Assert(!(eflags & (EXEC_FLAG_BACKWARD | EXEC_FLAG_MARK)));
 
-	CXT1_printf("ExecInitBitmapAnd: context is %d\n", CurrentMemoryContext);
-
 	/*
 	 * Set up empty vector of subplan states
 	 */
diff --git a/src/backend/executor/nodeBitmapHeapscan.c b/src/backend/executor/nodeBitmapHeapscan.c
index 0cbcb21f7c0d4141f0e61a4a8e88bacbdeda7a94..5ecded32ed91980c7b326b3bbe2801b4a5bcf146 100644
--- a/src/backend/executor/nodeBitmapHeapscan.c
+++ b/src/backend/executor/nodeBitmapHeapscan.c
@@ -21,7 +21,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapHeapscan.c,v 1.10 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapHeapscan.c,v 1.11 2006/05/23 15:21:52 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -511,8 +511,6 @@ ExecInitBitmapHeapScan(BitmapHeapScan *node, EState *estate, int eflags)
 	ExecInitResultTupleSlot(estate, &scanstate->ss.ps);
 	ExecInitScanTupleSlot(estate, &scanstate->ss);
 
-	CXT1_printf("ExecInitBitmapHeapScan: context is %d\n", CurrentMemoryContext);
-
 	/*
 	 * open the base relation and acquire appropriate lock on it.
 	 */
diff --git a/src/backend/executor/nodeBitmapIndexscan.c b/src/backend/executor/nodeBitmapIndexscan.c
index 4e3a3ebf110610ba9d52379fc1490525e32277ff..300edfed29d0f11ef7bd144be064249ed7dd7292 100644
--- a/src/backend/executor/nodeBitmapIndexscan.c
+++ b/src/backend/executor/nodeBitmapIndexscan.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapIndexscan.c,v 1.17 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapIndexscan.c,v 1.18 2006/05/23 15:21:52 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -266,8 +266,6 @@ ExecInitBitmapIndexScan(BitmapIndexScan *node, EState *estate, int eflags)
 	 */
 	indexstate->biss_RuntimeKeysReady = false;
 
-	CXT1_printf("ExecInitBitmapIndexScan: context is %d\n", CurrentMemoryContext);
-
 	/*
 	 * build the index scan keys from the index qualification
 	 */
diff --git a/src/backend/executor/nodeBitmapOr.c b/src/backend/executor/nodeBitmapOr.c
index 3d252b8376aa195dbb370cac1d81ed0f7797c3cd..6c870cdd17b7866d723dbc66c0598e2256c94b38 100644
--- a/src/backend/executor/nodeBitmapOr.c
+++ b/src/backend/executor/nodeBitmapOr.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapOr.c,v 1.5 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/nodeBitmapOr.c,v 1.6 2006/05/23 15:21:52 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -53,8 +53,6 @@ ExecInitBitmapOr(BitmapOr *node, EState *estate, int eflags)
 	/* check for unsupported flags */
 	Assert(!(eflags & (EXEC_FLAG_BACKWARD | EXEC_FLAG_MARK)));
 
-	CXT1_printf("ExecInitBitmapOr: context is %d\n", CurrentMemoryContext);
-
 	/*
 	 * Set up empty vector of subplan states
 	 */
diff --git a/src/backend/executor/nodeHash.c b/src/backend/executor/nodeHash.c
index 75958a6da304ec7e1e27a7fd1ccd9c1705bedfec..a34e6860f862437d09552b1efc00ab9ab911fd6d 100644
--- a/src/backend/executor/nodeHash.c
+++ b/src/backend/executor/nodeHash.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/nodeHash.c,v 1.101 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/nodeHash.c,v 1.102 2006/05/23 15:21:52 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -123,8 +123,6 @@ ExecInitHash(Hash *node, EState *estate, int eflags)
 	/* check for unsupported flags */
 	Assert(!(eflags & (EXEC_FLAG_BACKWARD | EXEC_FLAG_MARK)));
 
-	SO_printf("ExecInitHash: initializing hash node\n");
-
 	/*
 	 * create state structure
 	 */
diff --git a/src/backend/executor/nodeIndexscan.c b/src/backend/executor/nodeIndexscan.c
index bedc234908d02dfc2ab2c79dbb74098a50798a93..41b4dea980c3739209daa2ea245a57b8f87f57b5 100644
--- a/src/backend/executor/nodeIndexscan.c
+++ b/src/backend/executor/nodeIndexscan.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/nodeIndexscan.c,v 1.112 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/nodeIndexscan.c,v 1.113 2006/05/23 15:21:52 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -528,8 +528,6 @@ ExecInitIndexScan(IndexScan *node, EState *estate, int eflags)
 	 */
 	indexstate->iss_RuntimeKeysReady = false;
 
-	CXT1_printf("ExecInitIndexScan: context is %d\n", CurrentMemoryContext);
-
 	/*
 	 * build the index scan keys from the index qualification
 	 */
diff --git a/src/include/executor/execdebug.h b/src/include/executor/execdebug.h
index 2f5f55df28c945532bde3fa830e3c0e28bf9411b..b909eb68442f575f8896045080ca5849aff91f50 100644
--- a/src/include/executor/execdebug.h
+++ b/src/include/executor/execdebug.h
@@ -3,11 +3,14 @@
  * execdebug.h
  *	  #defines governing debugging behaviour in the executor
  *
+ * XXX this is all pretty old and crufty.  Newer code tends to use elog()
+ * for debug printouts, because that's more flexible than printf().
+ *
  *
  * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/include/executor/execdebug.h,v 1.29 2006/03/05 15:58:56 momjian Exp $
+ * $PostgreSQL: pgsql/src/include/executor/execdebug.h,v 1.30 2006/05/23 15:21:52 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -29,7 +32,7 @@
 
 /* ----------------
  *		EXEC_TUPLECOUNT is a #define which causes the
- *		executor keep track of tuple counts.  This might be
+ *		executor to keep track of tuple counts.  This might be
  *		causing some problems with the decstation stuff so
  *		you might want to undefine this if you are doing work
  *		on the decs  - cim 10/20/89
@@ -37,59 +40,30 @@
 #undef EXEC_TUPLECOUNT
  */
 
-/* ----------------
- *		EXEC_CONTEXTDEBUG turns on the printing of debugging information
- *		by CXT_printf() calls regarding which memory context is the
- *		CurrentMemoryContext for palloc() calls.
- * ----------------
-#undef EXEC_CONTEXTDEBUG
- */
-
-/* ----------------
- *		EXEC_UTILSDEBUG is a flag which turns on debugging of the
- *		executor utilities by EU_printf() in eutils.c
- * ----------------
-#undef EXEC_UTILSDEBUG
- */
-
 /* ----------------
  *		EXEC_NESTLOOPDEBUG is a flag which turns on debugging of the
- *		nest loop node by NL_printf() and ENL_printf() in nestloop.c
+ *		nest loop node by NL_printf() and ENL_printf() in nodeNestloop.c
  * ----------------
 #undef EXEC_NESTLOOPDEBUG
  */
 
-/* ----------------
- *		EXEC_PROCDEBUG is a flag which turns on debugging of
- *		ExecProcNode() by PN_printf() in procnode.c
- * ----------------
-#undef EXEC_PROCDEBUG
- */
-
 /* ----------------
  *		EXEC_EVALDEBUG is a flag which turns on debugging of
- *		ExecEval and ExecTargetList() stuff by EV_printf() in qual.c
+ *		ExecEval and ExecTargetList() stuff by EV_printf() in execQual.c
  * ----------------
 #undef EXEC_EVALDEBUG
  */
 
-/* ----------------
- *		EXEC_SCANDEBUG is a flag which turns on debugging of
- *		the ExecSeqScan() stuff by S_printf() in seqscan.c
- * ----------------
-#undef EXEC_SCANDEBUG
- */
-
 /* ----------------
  *		EXEC_SORTDEBUG is a flag which turns on debugging of
- *		the ExecSort() stuff by SO_printf() in sort.c
+ *		the ExecSort() stuff by SO_printf() in nodeSort.c
  * ----------------
 #undef EXEC_SORTDEBUG
  */
 
 /* ----------------
  *		EXEC_MERGEJOINDEBUG is a flag which turns on debugging of
- *		the ExecMergeJoin() stuff by MJ_printf() in mergejoin.c
+ *		the ExecMergeJoin() stuff by MJ_printf() in nodeMergejoin.c
  * ----------------
 #undef EXEC_MERGEJOINDEBUG
  */
@@ -139,39 +113,6 @@ extern int	NIndexTupleInserted;
 #define IncrIndexInserted()		(void)(0)
 #endif   /* EXEC_TUPLECOUNT */
 
-/* ----------------
- *		memory context debugging defines
- * ----------------
- */
-#ifdef EXEC_CONTEXTDEBUG
-#define CXT_printf(s)					printf(s)
-#define CXT1_printf(s, a)				printf(s, a)
-#else
-#define CXT_printf(s)
-#define CXT1_printf(s, a)
-#endif   /* EXEC_CONTEXTDEBUG */
-
-/* ----------------
- *		eutils debugging defines
- * ----------------
- */
-#ifdef EXEC_UTILSDEBUG
-#define EU_nodeDisplay(l)				nodeDisplay(l)
-#define EU_printf(s)					printf(s)
-#define EU1_printf(s, a)				printf(s, a)
-#define EU2_printf(s, a, b)				printf(s, a, b)
-#define EU3_printf(s, a, b, c)			printf(s, a, b, c)
-#define EU4_printf(s, a, b, c, d)		printf(s, a, b, c, d)
-#else
-#define EU_nodeDisplay(l)
-#define EU_printf(s)
-#define EU1_printf(s, a)
-#define EU2_printf(s, a, b)
-#define EU3_printf(s, a, b, c)
-#define EU4_printf(s, a, b, c, d)
-#endif   /* EXEC_UTILSDEBUG */
-
-
 /* ----------------
  *		nest loop debugging defines
  * ----------------
@@ -180,28 +121,14 @@ extern int	NIndexTupleInserted;
 #define NL_nodeDisplay(l)				nodeDisplay(l)
 #define NL_printf(s)					printf(s)
 #define NL1_printf(s, a)				printf(s, a)
-#define NL4_printf(s, a, b, c, d)		printf(s, a, b, c, d)
 #define ENL1_printf(message)			printf("ExecNestLoop: %s\n", message)
 #else
 #define NL_nodeDisplay(l)
 #define NL_printf(s)
 #define NL1_printf(s, a)
-#define NL4_printf(s, a, b, c, d)
 #define ENL1_printf(message)
 #endif   /* EXEC_NESTLOOPDEBUG */
 
-/* ----------------
- *		proc node debugging defines
- * ----------------
- */
-#ifdef EXEC_PROCDEBUG
-#define PN_printf(s)					printf(s)
-#define PN1_printf(s, p)				printf(s, p)
-#else
-#define PN_printf(s)
-#define PN1_printf(s, p)
-#endif   /* EXEC_PROCDEBUG */
-
 /* ----------------
  *		exec eval / target list debugging defines
  * ----------------
@@ -210,28 +137,12 @@ extern int	NIndexTupleInserted;
 #define EV_nodeDisplay(l)				nodeDisplay(l)
 #define EV_printf(s)					printf(s)
 #define EV1_printf(s, a)				printf(s, a)
-#define EV5_printf(s, a, b, c, d, e)	printf(s, a, b, c, d, e)
 #else
 #define EV_nodeDisplay(l)
 #define EV_printf(s)
 #define EV1_printf(s, a)
-#define EV5_printf(s, a, b, c, d, e)
 #endif   /* EXEC_EVALDEBUG */
 
-/* ----------------
- *		scan debugging defines
- * ----------------
- */
-#ifdef EXEC_SCANDEBUG
-#define S_nodeDisplay(l)				nodeDisplay(l)
-#define S_printf(s)						printf(s)
-#define S1_printf(s, p)					printf(s, p)
-#else
-#define S_nodeDisplay(l)
-#define S_printf(s)
-#define S1_printf(s, p)
-#endif   /* EXEC_SCANDEBUG */
-
 /* ----------------
  *		sort node debugging defines
  * ----------------