Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
6c3dff42
Commit
6c3dff42
authored
Oct 18, 1996
by
Marc G. Fournier
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Document #ifdef's from backend/access subdirs so that we know what
features(?) are available
parent
2ecb7e5e
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
48 additions
and
29 deletions
+48
-29
src/include/config.h
src/include/config.h
+48
-29
No files found.
src/include/config.h
View file @
6c3dff42
...
@@ -184,50 +184,69 @@
...
@@ -184,50 +184,69 @@
#define DEADLOCK_TIMEOUT 60
#define DEADLOCK_TIMEOUT 60
/* Fixes use of indexes infunctions */
#define INDEXSCAN_PATCH
#define INDEXSCAN_PATCH
/* found in src/backend/utils/adt/date.c */
/* #define DATEDEBUG */
/* #define DATEDEBUG */
/* found in src/backend/utils/adt/datetimes.c */
/* #define USE_SHORT_YEAR */
/* #define USE_SHORT_YEAR */
/* #define AMERICAN_STYLE */
/* #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 */
/* #define UNSAFE_FLOATS */
/*
/*
* There is a bug in the function executor. The backend crashes while trying to
There is a bug in the function executor. The backend crashes while trying to
* execute an sql function containing an utility command (create, notify, ...).
execute an sql function containing an utility command (create, notify, ...).
* The bug is part in the planner, which returns a number of plans different
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
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
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.
query commands and causes a SIGSEGV trying to execute commands without plan.
*/
*/
#define FUNC_UTIL_PATCH
#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 */
#endif
/* CONFIG_H */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment