OSDN Git Service

Document #ifdef's from backend/access subdirs so that we know what
authorMarc G. Fournier <scrappy@hub.org>
Fri, 18 Oct 1996 05:22:24 +0000 (05:22 +0000)
committerMarc G. Fournier <scrappy@hub.org>
Fri, 18 Oct 1996 05:22:24 +0000 (05:22 +0000)
features(?) are available

src/include/config.h

index f457b90..5504b6e 100644 (file)
 #define DEADLOCK_TIMEOUT 60
 
 
-/* Fixes use of indexes infunctions */
 #define INDEXSCAN_PATCH 
 
-/* found in src/backend/utils/adt/date.c */
 /* #define DATEDEBUG */
 
-/* found in src/backend/utils/adt/datetimes.c */
 /* #define USE_SHORT_YEAR */
 /* #define AMERICAN_STYLE */
 
-/*----------------------------------------*/
-/* found in src/backend/utils/adt/float.c */
-/*------------------------------------------------------*/
-/* defining unsafe floats's will make float4 and float8 */
-/* ops faster at the cost of safety, of course!         */
-/*------------------------------------------------------*/
+/*
+ * defining unsafe floats's will make float4 and float8
+ * ops faster at the cost of safety, of course!        
+ */
 /* #define UNSAFE_FLOATS */
 
 /*
-
-There is a bug in the function executor. The backend crashes while trying to
-execute an sql function containing an utility command (create, notify, ...).
-The bug is part in the planner, which returns a number of plans different
-than the number of commands if there are utility commands in the query, and
-in part in the function executor which assumes that all commands are normal
-query commands and causes a SIGSEGV trying to execute commands without plan.
-
-*/
+ * There is a bug in the function executor. The backend crashes while trying to
+ * execute an sql function containing an utility command (create, notify, ...).
+ * The bug is part in the planner, which returns a number of plans different
+ * than the number of commands if there are utility commands in the query, and
+ * in part in the function executor which assumes that all commands are normal
+ * query commands and causes a SIGSEGV trying to execute commands without plan.
+ */
 #define FUNC_UTIL_PATCH
 
 /*
+ * Async notifies received while a backend is in the middle of a begin/end
+ * transaction block are lost by libpq when the final end command is issued.
+ * 
+ * The bug is in the routine PQexec of libpq. The routine throws away any
+ * message from the backend when a message of type 'C' is received. This
+ * type of message is sent when the result of a portal query command with
+ * no tuples is returned. Unfortunately this is the case of the end command.
+ * As all async notification are sent only when the transaction is finished,
+ * if they are received in the middle of a transaction they are lost in the
+ * libpq library. I added some tracing code to PQexec and this is the output:
+ */
+#define PQ_NOTIFY_PATCH
+
+/* Debug #defines */
+/* #define IPORTAL_DEBUG /* access/common/printtup.c */
+/* #define HEAPDEBUGALL /* access/heap/heapam.c */
+/* #define ISTRATDEBUG /* access/index/istrat.c */
+/* #define FASTBUILD_DEBUG /* access/nbtree/nbtsort.c */
+#define RTDEBUG /* access/rtree/rtree.c */
+#define GISTDEBUG /* access/gist/gist.c */
+
+
+/* The following don't have any apparent purpose, but are in the
+ * code.  someday, will take them out altogether, but for now, 
+ * document them here
+ */
+/* #define OMIT_PARTIAL_INDEX /* access/hash/hash.c */
+/* #define PERFECT_MMGR /* access/hash/hash.c */
+/* #define PERFECT_MEM /* access/hash/hashscan.c */
+/* #define NO_BUFFERISVALID /* access/heap/heapam.c */
+
+
+/* Undocumented "features"? */
+#define FASTBUILD /* access/nbtree/nbtsort.c */
+
+
+
 
-Async notifies received while a backend is in the middle of a begin/end
-transaction block are lost by libpq when the final end command is issued.
 
-The bug is in the routine PQexec of libpq. The routine throws away any
-message from the backend when a message of type 'C' is received. This
-type of message is sent when the result of a portal query command with
-no tuples is returned. Unfortunately this is the case of the end command.
-As all async notification are sent only when the transaction is finished,
-if they are received in the middle of a transaction they are lost in the
-libpq library. I added some tracing code to PQexec and this is the output:
 
-*/
-#define PQ_NOTIFY_PATCH
 #endif /* CONFIG_H */