summaryrefslogtreecommitdiff
path: root/src/interfaces/libpq/fe-exec.c
AgeCommit message (Collapse)Author
1999-07-19Enable WIN32 compilation of libpq.Bruce Momjian
1999-07-19Re-add getopt.h check, remove NT-specific tests for it.Bruce Momjian
1999-07-17 Move some system includes into c.h, and remove duplicates.Bruce Momjian
1999-05-28When closure of the backend connection is detected during pqFlush,Tom Lane
do the right thing: look for a NOTICE message from the backend before we close our side of the socket. 6.4 libpq did not reliably print the backend's hara-kiri message, 'The Postmaster has informed me ...', because it only did the right thing if connection closure was detected during a read attempt instead of a write attempt.
1999-05-25pgindent run over code.Bruce Momjian
1999-05-12Fix bogus assumption that MAXALIGN is at least sizeof(pointer).Tom Lane
1999-04-04Use MAXALIGN value found by configure instead of aTom Lane
hardwired assumption.
1999-03-14Reversed out libpq protocol patch for Tom Lane.Bruce Momjian
1999-03-14This is another example of why not allowing utility functions in SPIBruce Momjian
would be a Bad Thing. For what it's worth, I found another case in libpq where you can get a T message without a D that my utility patch needs to handle. I have attached the updated patch against the 6.4.2 version of src/interfaces/libpq/fe-exec.c Jerry Gay
1999-03-14Hi,Bruce Momjian
Just in case you'd like to see what I was talking about, I am attaching my patch to src/interfaces/libpq/fe-exec.c to prevent utility functions called from SPI from locking up the client. Jerry Gay
1999-02-13Change my-function-name-- to my_function_name, and optimizer renames.Bruce Momjian
1999-02-07Add PQresStatus() function to avoid direct access to pgresStatus[] array,Tom Lane
making life easier for Windoids...
1999-02-03The libpq function PQfnumber does not handle case-insensitiveBruce Momjian
comparisons correctly. The psql monitor converts all table and field names to lower case. If the PQfnumber function is called with a mixed case name, it will always return -1. Bahman Rafatjoo
1998-11-29Portability fix for old SunOS releases: realloc(NULL, ...)Tom Lane
doesn't work there.
1998-11-18Performance improvement for libpq: avoid calling malloc separatelyTom Lane
for each field of each tuple. Makes more difference than you'd think...
1998-10-01Update libpq to store an error message in PGresult, per pgsq-interfaces ↵Tom Lane
discussion of 21-Sep.
1998-09-10Fix for length in libpq from Tom Lane.Bruce Momjian
1998-09-04libpgtcl cleanups for Tom Lane.Bruce Momjian
1998-09-03Attached is a patch to remove the definitions of libpq's internalBruce Momjian
structs from libpq-fe.h, as we previously discussed. There turned out to be sloppy coding practices in more places than I had realized :-(, but all in all I think it was a well-worth-while exercise. I ended up adding several routines to libpq's API in order to respond to application requirements that were exposed by this work. I owe the docs crew updates for libpq.sgml to describe these changes. I'm way too tired to work on the docs tonight, however. This is the last major change I intend to submit for 6.4. I do want to see if I can make libpgtcl work with Tcl 8.0 before we go final, but hopefully that will be a minor bug fix.
1998-09-01OK, folks, here is the pgindent output.Bruce Momjian
1998-09-01Renaming cleanup, no pgindent yet.Bruce Momjian
1998-08-29libpq's pqGetnchar() should not return a null-terminated valueBruce Momjian
anymore. Fix for large objects.
1998-08-17Date: Sun, 16 Aug 1998 14:56:48 -0400Marc G. Fournier
From: Tom Lane <tgl@sss.pgh.pa.us> Attached is a patch for this weekend's work on libpq. I've dealt with several issues: <for details: see message, in pgsql-patches archive for above data>
1998-08-09The attached patch implements some changes that were discussed aBruce Momjian
couple weeks ago on the hackers and interfaces lists: 1. When the backend sends a NOTICE message and closes the connection (typically, because it was told to by the postmaster after another backend coredumped), libpq will now print the notice and close the connection cleanly. Formerly, the frontend app would usually terminate ungracefully due to a SIGPIPE. (I am not sure if 6.3.2 behaved that way, but the current cvs sources do...) 2. libpq's various printouts to stderr are now fed through a single "notice processor" routine, which can be overridden by the application to direct notices someplace else. This should ease porting libpq to Windows. I also noticed and fixed a problem in PQprint: when sending output to a pager subprocess, it would disable SIGPIPE in case the pager terminates early (this is good) --- but afterwards it reset SIGPIPE to SIG_DFL, rather than restoring the application's prior setting (bad). regards, tom lane
1998-07-14More updates for typmod int32 change. From Tom Lane.Bruce Momjian
1998-07-13Inline function, rename libpq variablees, change lrel to lockrel.Bruce Momjian
1998-07-13Rename libpq to use more normal field names.Bruce Momjian
1998-07-13Fix libpq because it was reading from the backend as a short.Bruce Momjian
1998-07-09From: Tom Lane <tgl@sss.pgh.pa.us>Marc G. Fournier
Making PQrequestCancel safe to call in a signal handler turned out to be much easier than I feared. So here are the diffs. Some notes: * I modified the postmaster's packet "iodone" callback interface to allow the callback routine to return a continue-or-drop-connection return code; this was necessary to allow the connection to be closed after receiving a Cancel, rather than proceeding to launch a new backend... Being a neatnik, I also made the iodone proc have a typechecked parameter list. * I deleted all code I could find that had to do with OOB. * I made some edits to ensure that all signals mentioned in the code are referred to symbolically not by numbers ("SIGUSR2" not "2"). I think Bruce may have already done at least some of the same edits; I hope that merging these patches is not too painful.
1998-07-03Hello!Bruce Momjian
Through some minor changes, I have been able to compile the libpq client libraries on the Win32 platform. Since the libpq communications part has been rewritten, this has become much easier. Enclosed is a patch that will allow at least Microsoft Visual C++ to compile libpq into both a static and a dynamic library. I will take a look at porting the psql frontend as well, but I figured it was a good idea to send in these patches first - so no major changes are done to the files before it gets applied (if it does). Regards, Magnus Hagander
1998-06-16Hi, here are the patches to enhance existing MB handling. This timeBruce Momjian
I have implemented a framework of encoding translation between the backend and the frontend. Also I have added a new variable setting command: SET CLIENT_ENCODING TO 'encoding'; Other features include: Latin1 support more 8 bit cleaness See doc/README.mb for more details. Note that the pacthes are against May 30 snapshot. Tatsuo Ishii
1998-06-15Remove un-needed braces around single statements.Bruce Momjian
1998-05-14Pass atttypmod to the frontend.Bruce Momjian
1998-05-06It seems the regression tests don't cover copy in/out at all, soBruce Momjian
code that I had assumed was working had not been tested. Naturally, it was broken ... Tom Lane
1998-05-06What I've done:Bruce Momjian
1. Rewritten libpq to allow asynchronous clients. 2. Implemented client side of cancel protocol in library, and patched psql.c to send a cancel request upon SIGINT. The backend doesn't notice it yet :-( 3. Implemented 'Z' protocol message addition and renaming of copy in/out start messages. These are implemented conditionally, ie, the client protocol version is checked; so the code should still work with 1.0 clients. 4. Revised protocol and libpq sgml documents (don't have an SGML compiler, though, so there may be some markup glitches here). What remains to be done: 1. Implement addition of atttypmod field to RowDescriptor messages. The client-side code is there but ifdef'd out. I have no idea what to change on the backend side. The field should be sent only if protocol >= 2.0, of course. 2. Implement backend response to cancel requests received as OOB messages. (This prolly need not be conditional on protocol version; just do it if you get SIGURG.) 3. Update libpq.3. (I'm hoping this can be generated mechanically from libpq.sgml... if not, will do it by hand.) Is there any other doco to fix? 4. Update non-libpq interfaces as necessary. I patched libpgtcl so that it would compile, but haven't tested it. Dunno what needs to be done with the other interfaces. Have at it! Tom Lane
1998-04-29From: Oliver Elphick <olly@lfix.co.uk>Marc G. Fournier
If PQfn() receives NOTICEs from the backend, it fails because there is no provision to deal with them. This patch (supplied by Anders Hammarquist <iko@netg.se> to me as Debian maintainer of postgresql) cures the problem:
1998-03-15From: Randy Kunkee <kunkee@pluto.ops.NeoSoft.com>Marc G. Fournier
The following patch is to src/interfaces/libpq of postgresql-6.3. The purpose of the patch is to make the initialization of const char *pgresStatus[] match the ExecStatusType enum.
1998-02-26pgindent run before 6.3 release, with Thomas' requested changes.Bruce Momjian
1998-01-26From: Phil Thompson <phil@river-bank.demon.co.uk>Marc G. Fournier
I've completed the patch to fix the protocol and authentication issues I was discussing a couple of weeks ago. The particular changes are: - the protocol has a version number - network byte order is used throughout - the pg_hba.conf file is used to specify what method is used to authenticate a frontend (either password, ident, trust, reject, krb4 or krb5) - support for multiplexed backends is removed - appropriate changes to man pages - the -a switch to many programs to specify an authentication service no longer has any effect - the libpq.so version number has changed to 1.1 The new backend still supports the old protocol so old interfaces won't break.
1997-12-23Add newline/tab to middle of long failure message to pretty it up a bit.Thomas G. Lockhart
1997-12-05Fix tolower loops to go in proper direction for cache.Bruce Momjian
1997-12-04Run through toupper() conversion in the forward direction.Thomas G. Lockhart
Most processors should optimize this a bit better wrt cache prefetch.
1997-12-01Fix pg_dump, and libpq changes.Bruce Momjian
1997-12-01Document pg_dump -z, clean up option list. Fix problem with libpq handling ↵Bruce Momjian
of field names uppercase code.
1997-11-10Fix case issues with quotes.Bruce Momjian
1997-11-03Add paging for \d, and fix \i.Bruce Momjian
1997-09-08Used modified version of indent that understands over 100 typedefs.Bruce Momjian
1997-09-08Another PGINDENT run that changes variable indenting and case label ↵Bruce Momjian
indenting. Also static variable indenting.
1997-09-07Massive commit to run PGINDENT on all *.c and *.h files.Bruce Momjian
1997-09-05Add // comments.Bruce Momjian