Tom Lane [Fri, 21 Dec 2001 15:22:09 +0000 (15:22 +0000)]
Use MemSet() rather than a loop to do blank-padding on PS_USE_CLOBBER_ARGV
machines. I have just been observing some scenarios where set_ps_display
accounts for more than 10% of the backend CPU, and this loop has to be
the reason.
Tom Lane [Wed, 19 Dec 2001 20:28:41 +0000 (20:28 +0000)]
Fix pgstattuple to acquire a read lock on the target table. This
prevents embarassments such as having the table dropped or truncated
partway through the scan. Also, fix free space calculation to include
pages that currently contain no tuples.
Tom Lane [Wed, 19 Dec 2001 19:42:51 +0000 (19:42 +0000)]
Temporarily dike out GetUndoRecPtr() in checkpoint generation, since we
do not use the undo pointer anyway. This is a quick-hack solution for
the three-way deadlock condition discussed in pghackers 17-Dec-01.
Need to find a better way of doing it.
Tom Lane [Wed, 19 Dec 2001 17:18:39 +0000 (17:18 +0000)]
Make sure that all variants of HeapTupleSatisfies will do the right thing
if presented with a tuple in process of being moved by VACUUM. Per
bug report from Brian Hirt.
Bruce Momjian [Thu, 13 Dec 2001 10:48:39 +0000 (10:48 +0000)]
>>I confirmed the UNION hack is no longer required. Thanks! Is it too late
>>to change the README in contrib/dblink?
>>
>
> No, I don't think that's a problem. Send a patch.
>
Here's a (documentation only) patch for the contrib/dblink README.
Tom Lane [Wed, 12 Dec 2001 03:28:49 +0000 (03:28 +0000)]
Don't accept names of complex types (ie, relation types) as being
requests for implicit trivial coercions. Prevents sillinesses like
this one:
regression=# select x.int8_tbl.q1 from int8_tbl x;
ERROR: fmgr_info: function 270997776: cache lookup failed
Barry Lind [Tue, 11 Dec 2001 04:48:05 +0000 (04:48 +0000)]
Applied patch from Thomas O'Dowd that fixes timestamp parsing. The jdbc code
wasn't updated to handle more than two decimal digits for fractional seconds
that now are possible in 7.2. This patch fixes the timestamp parsing logic.
I have built and tested on both jdbc1 and jdbc2.
Barry Lind [Tue, 11 Dec 2001 04:44:23 +0000 (04:44 +0000)]
Patch from Ned Wolpert that fixes a bug that caused the cache of types not
to be used, causing extra sql statements to be executed. This was a
significant performance problem with the database meta data classes.
The fix is a simple one liner.
Tom Lane [Tue, 11 Dec 2001 02:58:49 +0000 (02:58 +0000)]
Make sure that inlined S_UNLOCK is marked as an update of a 'volatile'
object. This should prevent the compiler from reordering loads and stores
into or out of a critical section.
Tom Lane [Mon, 10 Dec 2001 22:54:12 +0000 (22:54 +0000)]
Suppress subquery pullup and pushdown when the subquery has any
set-returning functions in its target list. This ensures that we
won't rewrite the query in a way that places set-returning functions
into quals (WHERE clauses). Cf. bug reports from Joe Conway.
Tom Lane [Mon, 10 Dec 2001 21:13:50 +0000 (21:13 +0000)]
Declare LWLock pointers as volatile to prevent AIX compiler from
reordering operations at its whim. Releasing TAS lock before we've
finished updating proc structure is uncool.
Support ODBC-style CURRENT_TIME, CURRENT_USER, etc with trailing empty
parens. This is not SQL spec syntax, so later we will remove
this extension from gram.y.
Update list of currently supported platforms.
Mention SQL9x precision syntax for date/time types.
Use PostgreSQL consistantly throughout docs. Before, usage was split evenly
between Postgres and PostgreSQL.
Michael Meskes [Wed, 5 Dec 2001 15:32:07 +0000 (15:32 +0000)]
- Fixed variable handling in AT statement.
- Fixed bug that caused segfault when given incorrect DB name.
- Fixed bug in ecpglib causing indicator to list the size of the
variable instead of the size of the data.
Tom Lane [Tue, 4 Dec 2001 21:19:57 +0000 (21:19 +0000)]
Enforce restriction that COPY DELIMITERS string must be exactly one
character; replace strchr() search with simple comparison to speed up
COPY IN. Per discussion in pghackers.
Tom Lane [Tue, 4 Dec 2001 19:40:17 +0000 (19:40 +0000)]
Replace pq_getbytes(&ch, 1) calls with pq_getbyte(), which is easier
to use and significantly faster. This tweak saves 25% (!) of the runtime
of COPY IN in a test with 8000-character lines. I wouldn't normally
commit a performance improvement this late in the cycle, but 25% got
my attention...
Tom Lane [Tue, 4 Dec 2001 17:19:48 +0000 (17:19 +0000)]
Remove now-dead code for processing CONSTR_UNIQUE nodes in
AlterTableAddConstraint. Earlier reorganization of the parser's
processing of ALTER TABLE means that these node types no longer get here.