OSDN Git Service

pg-rex/syncrep.git
21 years agoAllow Win32 to compile under MinGW. Major changes are:
Bruce Momjian [Thu, 15 May 2003 16:35:30 +0000 (16:35 +0000)]
Allow Win32 to compile under MinGW.  Major changes are:

        Win32 port is now called 'win32' rather than 'win'
        add -lwsock32 on Win32
        make gethostname() be only used when kerberos4 is enabled
        use /port/getopt.c
        new /port/opendir.c routines
        disable GUC unix_socket_group on Win32
        convert some keywords.c symbols to KEYWORD_P to prevent conflict
        create new FCNTL_NONBLOCK macro to turn off socket blocking
        create new /include/port.h file that has /port prototypes, move
          out of c.h
        new /include/port/win32_include dir to hold missing include files
        work around ERROR being defined in Win32 includes

21 years agoIndexing support for pattern matching operations via separate operator
Peter Eisentraut [Thu, 15 May 2003 15:50:21 +0000 (15:50 +0000)]
Indexing support for pattern matching operations via separate operator
class when lc_collate is not C.

21 years agoFix oversight: ignore-till-SYNC state should not ignore EOF ...
Tom Lane [Wed, 14 May 2003 18:40:37 +0000 (18:40 +0000)]
Fix oversight: ignore-till-SYNC state should not ignore EOF ...

21 years agoAdd text(cidr) cast, per recent discussion. I'm not bothering to
Tom Lane [Wed, 14 May 2003 18:08:15 +0000 (18:08 +0000)]
Add text(cidr) cast, per recent discussion.  I'm not bothering to
force an initdb for this.

21 years ago - Added more compatibility functions.
Michael Meskes [Wed, 14 May 2003 14:37:36 +0000 (14:37 +0000)]
    - Added more compatibility functions.
- Accept CPP defines for type definitions.
- Do not parse system include files automatically for Informix mode

21 years agoFix various recent build and regression-test problems in contrib/.
Tom Lane [Wed, 14 May 2003 03:27:22 +0000 (03:27 +0000)]
Fix various recent build and regression-test problems in contrib/.
Includes fixes from Joe Conway.

21 years agoBackend support for autocommit removed, per recent discussions. The
Tom Lane [Wed, 14 May 2003 03:26:03 +0000 (03:26 +0000)]
Backend support for autocommit removed, per recent discussions.  The
only remnant of this failed experiment is that the server will take
SET AUTOCOMMIT TO ON.  Still TODO: provide some client-side autocommit
logic in libpq.

21 years agoIn RowDescription messages, report columns of domain datatypes as having
Tom Lane [Tue, 13 May 2003 18:39:50 +0000 (18:39 +0000)]
In RowDescription messages, report columns of domain datatypes as having
the type OID and typmod of the underlying base type.  Per discussions
a few weeks ago with Andreas Pflug and others.  Note that this behavioral
change affects both old- and new-protocol clients.

21 years agoMore binary I/O routines.
Tom Lane [Tue, 13 May 2003 18:03:08 +0000 (18:03 +0000)]
More binary I/O routines.

21 years agoFixed order of include file search path.
Michael Meskes [Tue, 13 May 2003 11:29:14 +0000 (11:29 +0000)]
Fixed order of include file search path.

21 years agoChange pg_amop's index on (amopclaid,amopopr) to index (amopopr,amopclaid).
Tom Lane [Tue, 13 May 2003 04:38:58 +0000 (04:38 +0000)]
Change pg_amop's index on (amopclaid,amopopr) to index (amopopr,amopclaid).
This makes no difference for existing uses, but allows SelectSortFunction()
and pred_test_simple_clause() to use indexscans instead of seqscans to
locate entries for a particular operator in pg_amop.  Better yet, they can
use the SearchSysCacheList() API to cache the search results.

21 years agoAdd binary I/O routines for a bunch more datatypes. Still a few to go,
Tom Lane [Mon, 12 May 2003 23:08:52 +0000 (23:08 +0000)]
Add binary I/O routines for a bunch more datatypes.  Still a few to go,
but that was enough tedium for one day.  Along the way, move the few
support routines for types xid and cid into a more logical place.

21 years agoAvoid unnecessary copying of parameter values in BIND. This allows
Tom Lane [Mon, 12 May 2003 16:48:17 +0000 (16:48 +0000)]
Avoid unnecessary copying of parameter values in BIND.  This allows
efficient insertion of large bytea values through the BIND interface.

21 years agoApply fixes for problems with dropped columns whose types have also been
Tom Lane [Mon, 12 May 2003 00:17:03 +0000 (00:17 +0000)]
Apply fixes for problems with dropped columns whose types have also been
dropped.  The simplest fix for INSERT/UPDATE cases turns out to be for
preptlist.c to insert NULLs of a known-good type (I used INT4) rather
than making them match the deleted column's type.  Since the representation
of NULL is actually datatype-independent, this should work fine.
I also re-reverted the patch to disable the use_physical_tlist optimization
in the presence of dropped columns.  It still doesn't look worth the
trouble to be smarter, if there are no other bugs to fix.
Added a regression test to catch future problems in this area.

21 years agoFinish removing HPUXMATHLIB.
Tom Lane [Sun, 11 May 2003 20:50:53 +0000 (20:50 +0000)]
Finish removing HPUXMATHLIB.

21 years agoRevert previous change --- turns out the underlying problem affects
Tom Lane [Sun, 11 May 2003 20:25:50 +0000 (20:25 +0000)]
Revert previous change --- turns out the underlying problem affects
more cases than I thought, so ExecTypeFromTL() will have to be fixed
anyway.

21 years agoDisable the recently-added use_physical_tlist optimization in cases
Tom Lane [Sun, 11 May 2003 15:03:52 +0000 (15:03 +0000)]
Disable the recently-added use_physical_tlist optimization in cases
where the table contains dropped columns.  If the columns are dropped,
then their types may be gone as well, which causes ExecTypeFromTL() to
fail if the dropped columns appear in a plan node's tlist.  This could
be worked around but I don't think the optimization is valuable enough
to be worth the trouble.

21 years agoMake use of new error context stack mechanism to allow random errors
Tom Lane [Sat, 10 May 2003 19:04:30 +0000 (19:04 +0000)]
Make use of new error context stack mechanism to allow random errors
detected during buffer dump to be labeled with the buffer location.
For example, if a page LSN is clobbered, we now produce something like
ERROR:  XLogFlush: request 2C000000/8468EC8 is not satisfied --- flushed only
to 0/8468EF0
CONTEXT:  writing block 0 of relation 428946/566240
whereas before there was no convenient way to find out which page had
been trashed.

21 years agoIn child-crashed log messages, identify a checkpoint process as such
Tom Lane [Sat, 10 May 2003 18:15:42 +0000 (18:15 +0000)]
In child-crashed log messages, identify a checkpoint process as such
instead of calling it a 'server process'.

21 years agoAdjust CreateCheckpoint so that buffer dumping activities and cleanup of
Tom Lane [Sat, 10 May 2003 18:01:31 +0000 (18:01 +0000)]
Adjust CreateCheckpoint so that buffer dumping activities and cleanup of
dead xlog segments are not considered part of a critical section.  It is
not necessary to force a database-wide panic if we get a failure in these
operations.  Per recent trouble reports.

21 years agoMore crypt() cleanup.
Bruce Momjian [Sat, 10 May 2003 04:06:55 +0000 (04:06 +0000)]
More crypt() cleanup.

21 years agoRemove HPUX 9 rint() test.
Bruce Momjian [Sat, 10 May 2003 04:03:37 +0000 (04:03 +0000)]
Remove HPUX 9 rint() test.

Cleanup new crypt() source code.

21 years agoAdd Makefile rules for new crypt/rint() /port functions. Add include
Bruce Momjian [Sat, 10 May 2003 02:05:50 +0000 (02:05 +0000)]
Add Makefile rules for new crypt/rint() /port functions.  Add include
for rint prototype.

21 years agoImplement array_send/array_recv (binary I/O for arrays). This exposed
Tom Lane [Fri, 9 May 2003 23:01:45 +0000 (23:01 +0000)]
Implement array_send/array_recv (binary I/O for arrays).  This exposed
the folly of not passing element type to typsend/typreceive, so fix that.

21 years agoCOPY BINARY uses the new binary I/O routines. Update a few more datatypes
Tom Lane [Fri, 9 May 2003 21:19:50 +0000 (21:19 +0000)]
COPY BINARY uses the new binary I/O routines.  Update a few more datatypes
so that COPY BINARY regression test passes.

21 years agoNow that fastpath protocol allows null arguments to be passed,
Tom Lane [Fri, 9 May 2003 18:18:54 +0000 (18:18 +0000)]
Now that fastpath protocol allows null arguments to be passed,
fastpath.c had better check for strict functions.

21 years agoImplement new-protocol binary I/O support in DataRow, Bind, and FunctionCall
Tom Lane [Fri, 9 May 2003 18:08:48 +0000 (18:08 +0000)]
Implement new-protocol binary I/O support in DataRow, Bind, and FunctionCall
messages.  Binary I/O is now up and working, but only for a small set
of datatypes (integers, text, bytea).

21 years agoMore cleanups now that we have crypt().
Bruce Momjian [Fri, 9 May 2003 16:59:43 +0000 (16:59 +0000)]
More cleanups now that we have crypt().

21 years agoautoconf run for crypt().
Bruce Momjian [Fri, 9 May 2003 16:52:48 +0000 (16:52 +0000)]
autoconf run for crypt().

21 years agoAdd crypt() to /port for Win32.
Bruce Momjian [Fri, 9 May 2003 16:52:11 +0000 (16:52 +0000)]
Add crypt() to /port for Win32.

21 years agoRemove rint() prototype from QNX.
Bruce Momjian [Fri, 9 May 2003 16:35:57 +0000 (16:35 +0000)]
Remove rint() prototype from QNX.

21 years agoRemove another old rint() replacement.
Bruce Momjian [Fri, 9 May 2003 16:31:24 +0000 (16:31 +0000)]
Remove another old rint() replacement.

21 years agoAdd rint() to /port, remove from qnx/.
Bruce Momjian [Fri, 9 May 2003 16:26:29 +0000 (16:26 +0000)]
Add rint() to /port, remove from qnx/.

21 years agoPass canAcceptConnections to exec'ed backend, for Jan.
Bruce Momjian [Fri, 9 May 2003 15:57:24 +0000 (15:57 +0000)]
Pass canAcceptConnections to exec'ed backend, for Jan.

21 years agoBinary send/receive routines for a few basic datatypes --- enough for
Tom Lane [Fri, 9 May 2003 15:44:42 +0000 (15:44 +0000)]
Binary send/receive routines for a few basic datatypes --- enough for
testing purposes.

21 years agoAdd opendir/readdir/closedir() for Win32.
Bruce Momjian [Fri, 9 May 2003 01:16:29 +0000 (01:16 +0000)]
Add opendir/readdir/closedir() for Win32.

Keep SRA copyright on file because it contains BSD license clause.

21 years agoReinstate pg_type's typsend and typreceive columns. They don't do much
Tom Lane [Thu, 8 May 2003 22:19:58 +0000 (22:19 +0000)]
Reinstate pg_type's typsend and typreceive columns.  They don't do much
yet, but they're there.  Also some editorial work on CREATE TYPE reference
page.

21 years agoWrite non-defaults file before signalling the children to reread it.
Bruce Momjian [Thu, 8 May 2003 20:43:07 +0000 (20:43 +0000)]
Write non-defaults file before signalling the children to reread it.

21 years agoMove attached to shared memory out into a separate function for clarity.
Bruce Momjian [Thu, 8 May 2003 19:17:07 +0000 (19:17 +0000)]
Move attached to shared memory out into a separate function for clarity.

21 years agoI think we're done with protocol instability, so mark server and libpq
Tom Lane [Thu, 8 May 2003 18:33:39 +0000 (18:33 +0000)]
I think we're done with protocol instability, so mark server and libpq
as speaking the one true 3.0 protocol.

21 years agoUpdate 3.0 protocol support to match recent agreements about how to
Tom Lane [Thu, 8 May 2003 18:16:37 +0000 (18:16 +0000)]
Update 3.0 protocol support to match recent agreements about how to
handle multiple 'formats' for data I/O.  Restructure CommandDest and
DestReceiver stuff one more time (it's finally starting to look a bit
clean though).  Code now matches latest 3.0 protocol document as far
as message formats go --- but there is no support for binary I/O yet.

21 years agoPass shared memory address on command line to exec'ed backend.
Bruce Momjian [Thu, 8 May 2003 14:49:04 +0000 (14:49 +0000)]
Pass shared memory address on command line to exec'ed backend.

Allow backends to attached to specified shared memory address.

21 years agoFix documentation problem pointed out by Barry Lind: code expected a
Tom Lane [Thu, 8 May 2003 14:35:24 +0000 (14:35 +0000)]
Fix documentation problem pointed out by Barry Lind: code expected a
terminating zero byte in StartupMessage, docs didn't mention it.

21 years agoUpdate COPY BINARY file format spec to reflect recent decisions about
Tom Lane [Wed, 7 May 2003 22:23:27 +0000 (22:23 +0000)]
Update COPY BINARY file format spec to reflect recent decisions about
external representation of binary data.

21 years agoRevise protocol doc for recently-agreed modifications. This is the
Tom Lane [Wed, 7 May 2003 21:46:15 +0000 (21:46 +0000)]
Revise protocol doc for recently-agreed modifications.  This is the
first version of the 3.0 protocol that can be considered non-draft.

21 years agoChange alternate database location patch to test for symlink() rather
Bruce Momjian [Wed, 7 May 2003 03:47:08 +0000 (03:47 +0000)]
Change alternate database location patch to test for symlink() rather
than WIN32.

21 years agoFix erroneous example, per Tim Knowles.
Tom Lane [Wed, 7 May 2003 03:41:31 +0000 (03:41 +0000)]
Fix erroneous example, per Tim Knowles.

21 years agoFixed bug with Warnings. Warnings are not added to the Statement instead of
Barry Lind [Wed, 7 May 2003 03:03:30 +0000 (03:03 +0000)]
Fixed bug with Warnings.  Warnings are not added to the Statement instead of
the connection when appropriate.
This checkin also adds the type map for jdbc3, however currently it is
identical to the jdbc2 mapping.

 Modified Files:
  jdbc/org/postgresql/core/BaseStatement.java
  jdbc/org/postgresql/core/QueryExecutor.java
  jdbc/org/postgresql/jdbc3/AbstractJdbc3Connection.java

21 years agoPass shared memory id and socket descriptor number on command line for
Bruce Momjian [Tue, 6 May 2003 23:34:56 +0000 (23:34 +0000)]
Pass shared memory id and socket descriptor number on command line for
fork/exec.

21 years agoProperly test for buggy flex 2.5.3.
Bruce Momjian [Tue, 6 May 2003 23:33:52 +0000 (23:33 +0000)]
Properly test for buggy flex 2.5.3.

21 years agoMinor editorializing.
Tom Lane [Tue, 6 May 2003 23:10:04 +0000 (23:10 +0000)]
Minor editorializing.

21 years agoAdd display of eventual result RowDescription (if any) to the output
Tom Lane [Tue, 6 May 2003 21:51:42 +0000 (21:51 +0000)]
Add display of eventual result RowDescription (if any) to the output
of Describe on a prepared statement.  This was in the original 3.0
protocol proposal, but I took it out for reasons that seemed good at
the time.  Put it back per yesterday's pghackers discussion.

21 years agoEnsure that an Execute operation can't send tuples in cases where
Tom Lane [Tue, 6 May 2003 21:01:04 +0000 (21:01 +0000)]
Ensure that an Execute operation can't send tuples in cases where
Describe would claim that no tuples will be returned.  Only affects
SELECTs added to non-SELECT base queries by rewrite rules.  If you
want to see the output of such a select, you gotta use 'simple Query'
protocol.

21 years agoRestructure command destination handling so that we pass around
Tom Lane [Tue, 6 May 2003 20:26:28 +0000 (20:26 +0000)]
Restructure command destination handling so that we pass around
DestReceiver pointers instead of just CommandDest values.  The DestReceiver
is made at the point where the destination is selected, rather than
deep inside the executor.  This cleans up the original kluge implementation
of tstoreReceiver.c, and makes it easy to support retrieving results
from utility statements inside portals.  Thus, you can now do fun things
like Bind and Execute a FETCH or EXPLAIN command, and it'll all work
as expected (e.g., you can Describe the portal, or use Execute's count
parameter to suspend the output partway through).  Implementation involves
stuffing the utility command's output into a Tuplestore, which would be
kind of annoying for huge output sets, but should be quite acceptable
for typical uses of utility commands.

21 years agoAdded rfmtlong compatibility function.
Michael Meskes [Tue, 6 May 2003 09:48:25 +0000 (09:48 +0000)]
Added rfmtlong compatibility function.

21 years agoRename internal variables DBName|dbName to dbname, for consistency.
Bruce Momjian [Tue, 6 May 2003 05:15:45 +0000 (05:15 +0000)]
Rename internal variables DBName|dbName to dbname, for consistency.

21 years agoComment out some of the conditional tests until we have exec().
Bruce Momjian [Tue, 6 May 2003 04:16:35 +0000 (04:16 +0000)]
Comment out some of the conditional tests until we have exec().

Reorder non-default variable loading until PGDATA is defined.

21 years agoImplement feature of new FE/BE protocol whereby RowDescription identifies
Tom Lane [Tue, 6 May 2003 00:20:33 +0000 (00:20 +0000)]
Implement feature of new FE/BE protocol whereby RowDescription identifies
the column by table OID and column number, if it's a simple column
reference.  Along the way, get rid of reskey/reskeyop fields in Resdoms.
Turns out that representation was not convenient for either the planner
or the executor; we can make the planner deliver exactly what the
executor wants with no more effort.
initdb forced due to change in stored rule representation.

21 years agoDitch ExecGetTupType() in favor of the much simpler ExecGetResultType(),
Tom Lane [Mon, 5 May 2003 17:57:47 +0000 (17:57 +0000)]
Ditch ExecGetTupType() in favor of the much simpler ExecGetResultType(),
which does the same thing.  Perhaps at one time there was a reason to
allow plan nodes to store their result types in different places, but
AFAICT that's been unnecessary for a good while.

21 years agoAlter plpgsql's lexer so that yylineno and yymore are not used. This
Tom Lane [Mon, 5 May 2003 16:46:28 +0000 (16:46 +0000)]
Alter plpgsql's lexer so that yylineno and yymore are not used.  This
avoids 'input buffer overflow' failure on long literals, improves
performance, gives the right answer for line position in functions
containing multiline literals, suppresses annoying compiler warnings,
and generally is so much better I wonder why we didn't do it before.

21 years agoProvide a real link to CREATE SEQUENCE's reference page in nextval/setval
Tom Lane [Mon, 5 May 2003 15:08:49 +0000 (15:08 +0000)]
Provide a real link to CREATE SEQUENCE's reference page in nextval/setval
discussion.

21 years agoNot sure why parser() was still doing clearerr(stdin) ... but it's
Tom Lane [Mon, 5 May 2003 01:59:02 +0000 (01:59 +0000)]
Not sure why parser() was still doing clearerr(stdin) ... but it's
*got* to be pointless.

21 years agoExtended query protocol: parse, bind, execute, describe FE/BE messages.
Tom Lane [Mon, 5 May 2003 00:44:56 +0000 (00:44 +0000)]
Extended query protocol: parse, bind, execute, describe FE/BE messages.
Only lightly tested as yet, since libpq doesn't know anything about 'em.

21 years agoDisable alternate locations on Win32 because it doesn't support symlinks.
Bruce Momjian [Sun, 4 May 2003 04:42:52 +0000 (04:42 +0000)]
Disable alternate locations on Win32 because it doesn't support symlinks.

21 years agoAllow 60 in seconds fields of timestamp, time, interval input values.
Tom Lane [Sun, 4 May 2003 04:30:15 +0000 (04:30 +0000)]
Allow 60 in seconds fields of timestamp, time, interval input values.
Per recent discussion on pgsql-general, this is appropriate for spec
compliance, and has the nice side-effect of easing porting from old
pg_dump files that exhibit the 59.999=>60.000 roundoff problem.

21 years agoLast round of reference page editing.
Peter Eisentraut [Sun, 4 May 2003 02:23:16 +0000 (02:23 +0000)]
Last round of reference page editing.

21 years agoWhen a TIMESTAMP, TIME, or INTERVAL precision is specified larger than our
Tom Lane [Sun, 4 May 2003 00:03:55 +0000 (00:03 +0000)]
When a TIMESTAMP, TIME, or INTERVAL precision is specified larger than our
implementation limits, do not issue an ERROR; instead issue a NOTICE and use
the max supported value.  Per pgsql-general discussion of 28-Apr, this is
needed to allow easy porting from pre-7.3 releases where the limits were
higher.

Unrelated change in same area: accept GLOBAL TEMP/TEMPORARY as a synonym
for TEMPORARY, as per pgsql-hackers discussion of 15-Apr.  We previously
rejected it, but that was based on a misreading of the spec --- SQL92's
GLOBAL temp tables are really closer to what we have than their LOCAL ones.

21 years agoFix erroneous space calculation leading to core dump in dumpProcLangs,
Tom Lane [Sat, 3 May 2003 22:18:59 +0000 (22:18 +0000)]
Fix erroneous space calculation leading to core dump in dumpProcLangs,
per report from Olivier Prenant.  Also fix off-by-one space calculation
in ReadToc; this woould not have hurt us until we had more than 100
dependencies for a single object, but wrong is wrong.

21 years agoPatch to fix up LONGVARBINARY support submitted by Amit Gollapudi
Barry Lind [Sat, 3 May 2003 20:40:45 +0000 (20:40 +0000)]
Patch to fix up LONGVARBINARY support submitted by Amit Gollapudi
(agollapudi@demandsolutions.com).
Also applied the RefCursor support patch by Nic Ferrier.  This patch allows
you too return a get a result set from a function that returns a refcursor.
For example:
call.registerOutParameter(1, Types.OTHER);
call.execute();
ResultSet rs = (ResultSet) call.getObject(1);

Modified Files:
  jdbc/org/postgresql/core/BaseStatement.java
  jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
  jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
  jdbc/org/postgresql/jdbc1/Jdbc1CallableStatement.java
  jdbc/org/postgresql/jdbc1/Jdbc1PreparedStatement.java
  jdbc/org/postgresql/jdbc1/Jdbc1Statement.java
  jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
  jdbc/org/postgresql/jdbc2/Jdbc2CallableStatement.java
  jdbc/org/postgresql/jdbc2/Jdbc2PreparedStatement.java
  jdbc/org/postgresql/jdbc2/Jdbc2Statement.java
  jdbc/org/postgresql/jdbc3/Jdbc3CallableStatement.java
  jdbc/org/postgresql/jdbc3/Jdbc3PreparedStatement.java
  jdbc/org/postgresql/jdbc3/Jdbc3Statement.java
 Added Files:
  jdbc/org/postgresql/PGRefCursorResultSet.java
  jdbc/org/postgresql/jdbc1/Jdbc1RefCursorResultSet.java
  jdbc/org/postgresql/jdbc2/Jdbc2RefCursorResultSet.java
  jdbc/org/postgresql/jdbc3/Jdbc3RefCursorResultSet.java
  jdbc/org/postgresql/test/jdbc2/RefCursorTest.java

21 years agoCleanup patch for exec() handling.
Bruce Momjian [Sat, 3 May 2003 05:13:20 +0000 (05:13 +0000)]
Cleanup patch for exec() handling.

21 years agoHandle clog structure in shared memory in exec() case, for Win32.
Bruce Momjian [Sat, 3 May 2003 03:52:07 +0000 (03:52 +0000)]
Handle clog structure in shared memory in exec() case, for Win32.

21 years agoSECOND ATTEMPT
Bruce Momjian [Fri, 2 May 2003 22:02:47 +0000 (22:02 +0000)]
SECOND ATTEMPT

Dump/read non-default GUC values for use by exec'ed backend, for Win32.

21 years agoBack out second part of patch.
Bruce Momjian [Fri, 2 May 2003 22:01:51 +0000 (22:01 +0000)]
Back out second part of patch.

21 years agoBack out last commit --- wrong patch.
Bruce Momjian [Fri, 2 May 2003 21:59:31 +0000 (21:59 +0000)]
Back out last commit --- wrong patch.

21 years agoDump/read non-default GUC values for use by exec'ed backends, for Win32.
Bruce Momjian [Fri, 2 May 2003 21:52:42 +0000 (21:52 +0000)]
Dump/read non-default GUC values for use by exec'ed backends, for Win32.

21 years agoPortal and memory management infrastructure for extended query protocol.
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.

21 years agoRepair sloppiness about where cached mergeclause pathkeys are allocated.
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.

21 years agoFixed double definition of ecpg_compat_mode.
Michael Meskes [Fri, 2 May 2003 14:43:25 +0000 (14:43 +0000)]
Fixed double definition of ecpg_compat_mode.

21 years agoAdded an option to force ecpg to also parse files includes via '#include' and some...
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.

21 years agoDocumentation refers to box() function where it should say box_intersect().
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.

21 years agoUpdate to describe new set of globally-known contexts planned for support
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).

21 years agoInfrastructure for deducing Param types from context, in the same way
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.

21 years agoRemove unneeded define.
Bruce Momjian [Tue, 29 Apr 2003 18:25:54 +0000 (18:25 +0000)]
Remove unneeded define.

21 years agoCode review for holdable-cursors patch. Fix error recovery, memory
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.

21 years agoUpdate German FAQ, from Ian Barwick
Bruce Momjian [Mon, 28 Apr 2003 22:40:38 +0000 (22:40 +0000)]
Update German FAQ, from  Ian Barwick

21 years agoMinor wordsmithing on .pgpass description.
Tom Lane [Mon, 28 Apr 2003 19:30:49 +0000 (19:30 +0000)]
Minor wordsmithing on .pgpass description.

21 years agoMinor improvement in wording.
Tom Lane [Mon, 28 Apr 2003 05:17:31 +0000 (05:17 +0000)]
Minor improvement in wording.

21 years agoMissed some corner cases (PGSERVICE mostly)...
Tom Lane [Mon, 28 Apr 2003 04:52:13 +0000 (04:52 +0000)]
Missed some corner cases (PGSERVICE mostly)...

21 years agoOkay, I've had it with PQsetdbLogin having slightly different defaults
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.

21 years agoMake getaddrinfo's behavior with NULL node parameter agree with the
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.

21 years agoPrevent coredump in current_schemas() if someone has just deleted a
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.

21 years agoFix plpgsql so that variables of composite types (rowtypes) can be
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.

21 years agoPut back encoding-conversion step in processing of incoming queries;
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.)

21 years agoDepartment of second thoughts: probably still need an IsTransactionState
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...

21 years agoClean up some problems in SetClientEncoding: failed to honor doit flag
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.

21 years agoEditing of more reference pages.
Peter Eisentraut [Sat, 26 Apr 2003 23:56:51 +0000 (23:56 +0000)]
Editing of more reference pages.

21 years agoRepair permissions problem in RI triggers: query parsing has to be done
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.

21 years agoAdd transaction status field to ReadyForQuery messages, and make room
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.)

21 years agoTweak stats collector start logic so that we will not try to spawn a
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.

21 years agoMake [VACUUM] ANALYZE safe on zero-column tables.
Tom Lane [Fri, 25 Apr 2003 21:29:18 +0000 (21:29 +0000)]
Make [VACUUM] ANALYZE safe on zero-column tables.