Tom Lane [Fri, 2 May 2003 20:54:36 +0000 (20:54 +0000)]
Portal and memory management infrastructure for extended query protocol.
Both plannable queries and utility commands are now always executed
within Portals, which have been revamped so that they can handle the
load (they used to be good only for single SELECT queries). Restructure
code to push command-completion-tag selection logic out of postgres.c,
so that it won't have to be duplicated between simple and extended queries.
initdb forced due to addition of a field to Query nodes.
Tom Lane [Fri, 2 May 2003 19:48:53 +0000 (19:48 +0000)]
Repair sloppiness about where cached mergeclause pathkeys are allocated.
Without this fix, CVS tip dumps core when running the regression tests
with geqo_threshold = 2. I would think that a similar patch might be
needed in 7.3, but cannot duplicate the failure in that branch --- so
for now, leave well enough alone.
Michael Meskes [Fri, 2 May 2003 14:43:25 +0000 (14:43 +0000)]
Fixed double definition of ecpg_compat_mode.
Michael Meskes [Thu, 1 May 2003 17:16:57 +0000 (17:16 +0000)]
Added an option to force ecpg to also parse files includes via '#include' and some more Informix stuff.
Tom Lane [Thu, 1 May 2003 00:57:05 +0000 (00:57 +0000)]
Documentation refers to box() function where it should say box_intersect().
Thanks to Wes Sheldah for finding this one.
Tom Lane [Wed, 30 Apr 2003 19:04:12 +0000 (19:04 +0000)]
Update to describe new set of globally-known contexts planned for support
of extended query features in new FE/BE protocol. TransactionCommandContext
is gone (PortalContext replaces it for some purposes), and QueryContext
has taken on a new meaning (MessageContext plays its old role).
Tom Lane [Tue, 29 Apr 2003 22:13:11 +0000 (22:13 +0000)]
Infrastructure for deducing Param types from context, in the same way
that the types of untyped string-literal constants are deduced (ie,
when coerce_type is applied to 'em, that's what the type must be).
Remove the ancient hack of storing the input Param-types array as a
global variable, and put the info into ParseState instead. This touches
a lot of files because of adjustment of routine parameter lists, but
it's really not a large patch. Note: PREPARE statement still insists on
exact specification of parameter types, but that could easily be relaxed
now, if we wanted to do so.
Bruce Momjian [Tue, 29 Apr 2003 18:25:54 +0000 (18:25 +0000)]
Remove unneeded define.
Tom Lane [Tue, 29 Apr 2003 03:21:30 +0000 (03:21 +0000)]
Code review for holdable-cursors patch. Fix error recovery, memory
context sloppiness, some other things. Includes Neil's mopup patch
of 22-Apr.
Bruce Momjian [Mon, 28 Apr 2003 22:40:38 +0000 (22:40 +0000)]
Update German FAQ, from Ian Barwick
Tom Lane [Mon, 28 Apr 2003 19:30:49 +0000 (19:30 +0000)]
Minor wordsmithing on .pgpass description.
Tom Lane [Mon, 28 Apr 2003 05:17:31 +0000 (05:17 +0000)]
Minor improvement in wording.
Tom Lane [Mon, 28 Apr 2003 04:52:13 +0000 (04:52 +0000)]
Missed some corner cases (PGSERVICE mostly)...
Tom Lane [Mon, 28 Apr 2003 04:29:12 +0000 (04:29 +0000)]
Okay, I've had it with PQsetdbLogin having slightly different defaults
than PQconnectdb. Reimplement the former to use the same code as the
latter. Fix documentation omissions while at it.
Tom Lane [Sun, 27 Apr 2003 23:56:53 +0000 (23:56 +0000)]
Make getaddrinfo's behavior with NULL node parameter agree with the
Linux man page for it. This error was preventing CVS tip from accepting
remote connections.
Tom Lane [Sun, 27 Apr 2003 23:22:13 +0000 (23:22 +0000)]
Prevent coredump in current_schemas() if someone has just deleted a
schema that was in our search path.
Tom Lane [Sun, 27 Apr 2003 22:21:22 +0000 (22:21 +0000)]
Fix plpgsql so that variables of composite types (rowtypes) can be
declared without having to write %ROWTYPE. If the declared type of
a variable is a composite type, it'll be taken to be a row variable
automatically.
Tom Lane [Sun, 27 Apr 2003 20:09:44 +0000 (20:09 +0000)]
Put back encoding-conversion step in processing of incoming queries;
I had inadvertently omitted it while rearranging things to support
length-counted incoming messages. Also, change the parser's API back
to accepting a 'char *' query string instead of 'StringInfo', as the
latter wasn't buying us anything except overhead. (I think when I put
it in I had some notion of making the parser API 8-bit-clean, but
seeing that flex depends on null-terminated input, that's not really
ever gonna happen.)
Tom Lane [Sun, 27 Apr 2003 18:01:46 +0000 (18:01 +0000)]
Department of second thoughts: probably still need an IsTransactionState
test in there...
Tom Lane [Sun, 27 Apr 2003 17:31:25 +0000 (17:31 +0000)]
Clean up some problems in SetClientEncoding: failed to honor doit flag
in all cases, leaked TopMemoryContext memory in others. Make the
interaction between SetClientEncoding and InitializeClientEncoding
cleaner and better documented. I suspect these changes should be
back-patched into 7.3, but will wait on Tatsuo's verification.
Peter Eisentraut [Sat, 26 Apr 2003 23:56:51 +0000 (23:56 +0000)]
Editing of more reference pages.
Tom Lane [Sat, 26 Apr 2003 22:21:47 +0000 (22:21 +0000)]
Repair permissions problem in RI triggers: query parsing has to be done
as the correct user, not only query execution. Per report from Sean
Chittenden.
Tom Lane [Sat, 26 Apr 2003 20:23:00 +0000 (20:23 +0000)]
Add transaction status field to ReadyForQuery messages, and make room
for tableID/columnID in RowDescription. (The latter isn't really
implemented yet though --- the backend always sends zeroes, and libpq
just throws away the data.)
Tom Lane [Sat, 26 Apr 2003 02:57:14 +0000 (02:57 +0000)]
Tweak stats collector start logic so that we will not try to spawn a
new stats collector oftener than once a minute. Per gripe from Erik Walthinsen
4/25/03.
Tom Lane [Fri, 25 Apr 2003 21:29:18 +0000 (21:29 +0000)]
Make [VACUUM] ANALYZE safe on zero-column tables.
Tom Lane [Fri, 25 Apr 2003 19:45:10 +0000 (19:45 +0000)]
In the continuing saga of FE/BE protocol revisions, add reporting of
initial values and runtime changes in selected parameters. This gets
rid of the need for an initial 'select pg_client_encoding()' query in
libpq, bringing us back to one message transmitted in each direction
for a standard connection startup. To allow server version to be sent
using the same GUC mechanism that handles other parameters, invent the
concept of a never-settable GUC parameter: you can 'show server_version'
but it's not settable by any GUC input source. Create 'lc_collate' and
'lc_ctype' never-settable parameters so that people can find out these
settings without need for pg_controldata. (These side ideas were all
discussed some time ago in pgsql-hackers, but not yet implemented.)
Bruce Momjian [Fri, 25 Apr 2003 16:18:40 +0000 (16:18 +0000)]
Prevent unlink/rename Win32 mapping on frontends.
Bruce Momjian [Fri, 25 Apr 2003 14:20:21 +0000 (14:20 +0000)]
Add new versions DLL lists, from Karl Waclawek
Bruce Momjian [Fri, 25 Apr 2003 14:18:59 +0000 (14:18 +0000)]
Fix typo in DLL list.
Tom Lane [Fri, 25 Apr 2003 04:37:23 +0000 (04:37 +0000)]
const-ify info_cb() to match recent openssl releases. Per Joe Conway.
Tom Lane [Fri, 25 Apr 2003 03:28:55 +0000 (03:28 +0000)]
Fix breakage induced by yours truly in Kerberos and PAM code.
Tom Lane [Fri, 25 Apr 2003 02:28:22 +0000 (02:28 +0000)]
COPY and pg_dump failed to cope with zero-column tables. Fix 'em.
Bruce Momjian [Fri, 25 Apr 2003 01:24:00 +0000 (01:24 +0000)]
Use closesocket() for all socket/pipe closing, because Win32 requires
it, and map that to close() on Unix.
Tom Lane [Thu, 24 Apr 2003 23:43:09 +0000 (23:43 +0000)]
Adjust subquery qual pushdown rules so that we can push down a qual
into a UNION that has some type coercions applied to the component
queries, so long as the qual itself does not reference any columns that
have such coercions. Per example from Jonathan Bartlett 24-Apr-03.
Bruce Momjian [Thu, 24 Apr 2003 21:25:34 +0000 (21:25 +0000)]
Add Win32 Makefile for IPC stuff.
Bruce Momjian [Thu, 24 Apr 2003 21:24:36 +0000 (21:24 +0000)]
No need for include for Win32 right now.
Bruce Momjian [Thu, 24 Apr 2003 21:23:01 +0000 (21:23 +0000)]
Add Win32 shmem/sema prototypes.
Tom Lane [Thu, 24 Apr 2003 21:16:45 +0000 (21:16 +0000)]
Infrastructure for upgraded error reporting mechanism. elog.c is
rewritten and the protocol is changed, but most elog calls are still
elog calls. Also, we need to contemplate mechanisms for controlling
all this functionality --- eg, how much stuff should appear in the
postmaster log? And what API should libpq expose for it?
Bruce Momjian [Thu, 24 Apr 2003 18:14:22 +0000 (18:14 +0000)]
pgindent new Win32 files.
Bruce Momjian [Thu, 24 Apr 2003 17:20:23 +0000 (17:20 +0000)]
Add shared memory and semaphore routines for Win32.
Also update copyright to be ours, with approval from Jan.
Bruce Momjian [Thu, 24 Apr 2003 17:16:13 +0000 (17:16 +0000)]
Add shared memory and semaphore routines for Win32.
Bruce Momjian [Thu, 24 Apr 2003 16:40:17 +0000 (16:40 +0000)]
Add comments to replace/unlink Win32 functions.
Bruce Momjian [Thu, 24 Apr 2003 15:09:27 +0000 (15:09 +0000)]
Add PQunescapeBytea() and PQfeeMem() to the Win32 DLL list.
Karl Waclawek
Bruce Momjian [Tue, 22 Apr 2003 19:42:27 +0000 (19:42 +0000)]
Remove Win32 special rename/unlink from libpq.
Bruce Momjian [Tue, 22 Apr 2003 18:03:00 +0000 (18:03 +0000)]
Update CVS with new FAQ.
Peter Eisentraut [Tue, 22 Apr 2003 10:08:08 +0000 (10:08 +0000)]
More editing of reference pages.
Tom Lane [Tue, 22 Apr 2003 03:52:56 +0000 (03:52 +0000)]
getaddrinfo has no business doing unlink().
Bruce Momjian [Tue, 22 Apr 2003 02:21:34 +0000 (02:21 +0000)]
Add dirmod to libpq Makefile.
Bruce Momjian [Tue, 22 Apr 2003 02:18:48 +0000 (02:18 +0000)]
Add Win32 unlink/rename file.
Bruce Momjian [Tue, 22 Apr 2003 02:18:09 +0000 (02:18 +0000)]
Add Win32 versions of unlink and rename --- loop until success.
Tom Lane [Tue, 22 Apr 2003 00:08:07 +0000 (00:08 +0000)]
Another round of protocol changes. Backend-to-frontend messages now all
have length words. COPY OUT reimplemented per new protocol: it doesn't
need \. anymore, thank goodness. COPY BINARY to/from frontend works,
at least as far as the backend is concerned --- libpq's PQgetline API
is not up to snuff, and will have to be replaced with something that is
null-safe. libpq uses message length words for performance improvement
(no cycles wasted rescanning long messages), but not yet for error
recovery.
Tom Lane [Mon, 21 Apr 2003 15:19:55 +0000 (15:19 +0000)]
Prevent palloc(0) error when parent table has zero columns.
Bruce Momjian [Mon, 21 Apr 2003 14:54:15 +0000 (14:54 +0000)]
Add mention of Novell Netware 6 port.
Tom Lane [Mon, 21 Apr 2003 00:22:24 +0000 (00:22 +0000)]
stddev() and variance() should return NULL when there is just one input
value, per recent discussion on pgsql-general.
Tom Lane [Sun, 20 Apr 2003 21:54:34 +0000 (21:54 +0000)]
Apple's assembler likes the inlined TAS syntax too, so no reason to
maintain a separate out-of-line version of PPC tas() anymore.
Also fix S_UNLOCK for __powerpc64__ platforms.
Tom Lane [Sun, 20 Apr 2003 21:15:34 +0000 (21:15 +0000)]
Fix multiple causes of breakage in plperl's error handling.
Tom Lane [Sun, 20 Apr 2003 17:03:25 +0000 (17:03 +0000)]
Avoid O(N^2) behavior with lots of deferred triggers by making
deferredTriggerInvokeEvents only scan events added since it last ran.
Stephan Szabo, some corrections by Tom Lane.
Bruce Momjian [Sun, 20 Apr 2003 01:52:55 +0000 (01:52 +0000)]
Make it clear it is the server version that determines if crlf is used. Idea from Joe Conway.
Bruce Momjian [Sat, 19 Apr 2003 20:36:03 +0000 (20:36 +0000)]
Allow \r and \r\n termination for COPY files.
Output \r\n termination on Win32.
Disallow literal carriage return as a data value,
backslash-carriage-return and \r still allowed.
Doc changes already committed.
Bruce Momjian [Sat, 19 Apr 2003 19:55:37 +0000 (19:55 +0000)]
Add pipe parameter to COPY function to allow proper line termination.
Tom Lane [Sat, 19 Apr 2003 00:37:28 +0000 (00:37 +0000)]
Add more documentation about shared memory costs.
Tom Lane [Sat, 19 Apr 2003 00:02:30 +0000 (00:02 +0000)]
Second round of FE/BE protocol changes. Frontend->backend messages now
have length counts, and COPY IN data is packetized into messages.
Tom Lane [Fri, 18 Apr 2003 23:38:47 +0000 (23:38 +0000)]
Fix breakage from recent variable-handling changes.
Bruce Momjian [Fri, 18 Apr 2003 01:03:42 +0000 (01:03 +0000)]
Make Win32 tests to match existing Cygwin tests, where appropriate.
Tom Lane [Thu, 17 Apr 2003 22:26:02 +0000 (22:26 +0000)]
First phase of FE/BE protocol modifications: new StartupPacket layout
with variable-width fields. No more truncation of long user names.
Also, libpq can now send its environment-variable-driven SET commands
as part of the startup packet, saving round trips to server.
Bruce Momjian [Thu, 17 Apr 2003 15:34:37 +0000 (15:34 +0000)]
Make pg_dump's concurency capability more prominent.
Tom Lane [Thu, 17 Apr 2003 04:50:20 +0000 (04:50 +0000)]
Fix abstime-to-time cast function, which has had broken implementation
since 7.2, per bug #947. Turns out it had wrong volatility label, too.
Can't force initdb in 7.3 branch, but fix anyway for future installs.
Barry Lind [Thu, 17 Apr 2003 04:37:07 +0000 (04:37 +0000)]
Applied patches from Kris Jurka fixing a string tokenizing problem and
fixing an order by problem for index metadata results.
Also includes removing some unused code as well as a fix to the toString
method on statement.
Modified Files:
jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
Tom Lane [Wed, 16 Apr 2003 20:53:38 +0000 (20:53 +0000)]
Various clarifications; add a clear DRAFT marker; minor adjustments in
some message types. In particular add text/binary flag to StartCopyIn
and StartCopyOut, so that client library can know what is expected or
forthcoming.
Bruce Momjian [Wed, 16 Apr 2003 18:56:24 +0000 (18:56 +0000)]
Add mention of OpenProjects IRC channel. It is as large as EFNet now.
Tom Lane [Wed, 16 Apr 2003 05:23:55 +0000 (05:23 +0000)]
Fix some problems exposed by building outside the source tree.
Tom Lane [Wed, 16 Apr 2003 04:37:58 +0000 (04:37 +0000)]
Fix stupid oversight ...
Tom Lane [Tue, 15 Apr 2003 22:51:18 +0000 (22:51 +0000)]
First draft of revised FE/BE protocol specification. Still needs work,
but I'm putting it up so people can see and comment on it.
Bruce Momjian [Tue, 15 Apr 2003 21:00:27 +0000 (21:00 +0000)]
Update Japanese FAQ, from Jun Kuwamura.
Peter Eisentraut [Tue, 15 Apr 2003 13:26:54 +0000 (13:26 +0000)]
Change names of ISO-8859-x encodings to ISO_8859_x, to match reality.
Peter Eisentraut [Tue, 15 Apr 2003 13:25:08 +0000 (13:25 +0000)]
Bring SQL ref pages to consistent format, part 1.
Peter Eisentraut [Tue, 15 Apr 2003 13:23:35 +0000 (13:23 +0000)]
Add better markup and improve some text here and there.
Tom Lane [Tue, 15 Apr 2003 05:18:12 +0000 (05:18 +0000)]
eqjoinsel's logic for case where MCV lists are not present should
account for NULLs; in hindsight this is obvious since the code for
the MCV-lists case would reduce to this when there are zero entries
in both lists. Per example from Alec Mitchell.
Tom Lane [Mon, 14 Apr 2003 21:15:13 +0000 (21:15 +0000)]
path.c needs to be included in libpq; per Joe Conway.
Tom Lane [Mon, 14 Apr 2003 18:08:58 +0000 (18:08 +0000)]
Another try at correctly explaining the difference between Postgres and
SQL92 temp tables. Possibly I got it right this time.
Tom Lane [Mon, 14 Apr 2003 17:31:33 +0000 (17:31 +0000)]
Reorganize clog's error reporting so that PANIC on clog I/O error can
be reduced to a plain ERROR. Should make it at least a little less
painful to deal with data-corruption problems.
Bruce Momjian [Mon, 14 Apr 2003 16:23:36 +0000 (16:23 +0000)]
Document file name as optional for \o in psql help (\h).
Tom Lane [Mon, 14 Apr 2003 15:40:02 +0000 (15:40 +0000)]
Minor copy-editing.
Tom Lane [Mon, 14 Apr 2003 15:24:46 +0000 (15:24 +0000)]
Clarify description of our deviation from standard for temp tables,
per suggestion from Mike Sykes.
Dave Cramer [Mon, 14 Apr 2003 10:39:51 +0000 (10:39 +0000)]
exposed the addDataType method to the PGConnection, allows users to add datatypes
Peter Eisentraut [Sun, 13 Apr 2003 09:57:35 +0000 (09:57 +0000)]
Integrate the operator class section into the comprehensive extending SQL
chapter as well.
Peter Eisentraut [Sun, 13 Apr 2003 09:56:00 +0000 (09:56 +0000)]
A couple of minor fixes
Barry Lind [Sun, 13 Apr 2003 04:10:07 +0000 (04:10 +0000)]
Applied patch submitted by Nic Ferrier with some cleanups of his previous
patch to add cursor based queries.
Modified Files:
jdbc/org/postgresql/core/BaseConnection.java
jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
Tom Lane [Sun, 13 Apr 2003 04:07:17 +0000 (04:07 +0000)]
Second try at avoiding conflicts with system isblank().
Tom Lane [Sun, 13 Apr 2003 01:19:06 +0000 (01:19 +0000)]
Add code to provide useful dynamic-linking error messages on OS X.
Tom Lane [Sat, 12 Apr 2003 23:25:42 +0000 (23:25 +0000)]
On some systems <sys/types.h> must be included before <sys/socket.h>.
Tom Lane [Sat, 12 Apr 2003 22:28:33 +0000 (22:28 +0000)]
Guard against macro versions of isblank().
Tatsuo Ishii [Sat, 12 Apr 2003 07:53:57 +0000 (07:53 +0000)]
Fix encoding conversion function bug.
See following posting for more details.
Subject: Re: [HACKERS] [BUGS] Bug #943: Server-Encoding from EUC_TW to UTF-8 doesn't
From: Tatsuo Ishii <t-ishii@sra.co.jp>
To: michael.enke@wincor-nixdorf.com, pgsql-bugs@postgresql.org
Cc: pgsql-hackers@postgresql.org
Date: Sat, 12 Apr 2003 10:51:45 +0900 (JST)
Peter Eisentraut [Fri, 11 Apr 2003 18:41:20 +0000 (18:41 +0000)]
Revision
Peter Eisentraut [Fri, 11 Apr 2003 13:22:35 +0000 (13:22 +0000)]
Revision
Tom Lane [Thu, 10 Apr 2003 23:03:08 +0000 (23:03 +0000)]
Fix error recovery for SSL_read/SSL_write calls.
Michael Meskes [Thu, 10 Apr 2003 13:06:57 +0000 (13:06 +0000)]
Informix fixes.
Tom Lane [Thu, 10 Apr 2003 02:47:46 +0000 (02:47 +0000)]
Remove premature attempt to constant-fold type coercion expressions.
While usually safe, this fails if the coercion function needs the
query snapshot to be set already. Per example from Nigel Andrews.
Peter Eisentraut [Thu, 10 Apr 2003 01:22:45 +0000 (01:22 +0000)]
In an effort to reduce the total number of chapters, combine the small
chapters on extending types, operators, and aggregates into the extending
functions chapter. Move the information on how to call table functions
into the queries chapter. Remove some outdated information that is
already present in a better form in other parts of the documentation.
Tom Lane [Tue, 8 Apr 2003 23:20:04 +0000 (23:20 +0000)]
First phase of work on array improvements. ARRAY[x,y,z] constructor
expressions, ARRAY(sub-SELECT) expressions, some array functions.
Polymorphic functions using ANYARRAY/ANYELEMENT argument and return
types. Some regression tests in place, documentation is lacking.
Joe Conway, with some kibitzing from Tom Lane.