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.
Tom Lane [Tue, 4 Dec 2001 01:49:17 +0000 (01:49 +0000)]
Document max-processes-per-user limit as a possible cause of failures
in the parallel regression tests. Suggest editing parallel_schedule
as a workaround if one cannot fix the system limits.
Tom Lane [Mon, 3 Dec 2001 17:48:57 +0000 (17:48 +0000)]
Update IRIX geometry results to match newer MIPS FPUs, rather than
older ones. We really gotta get out of the business of matching every
last low-order bit in this test ...
Tom Lane [Mon, 3 Dec 2001 17:44:52 +0000 (17:44 +0000)]
Add configure-time check whether sig_atomic_t is defined; if not,
provide a default definition equating it to 'int'. Should trigger only
on machines with pre-ANSI-C header files, eg SunOS 4.1.x.
Tom Lane [Mon, 3 Dec 2001 00:28:24 +0000 (00:28 +0000)]
Remove code to lookup WinSock error strings in netmsg.dll; according to
Magnus Hagander that DLL only contains error strings for the Net***
functions, *not* WinSock. We need to look for a workable solution for
older Windows flavors ... but it won't happen for PG 7.2.
Tom Lane [Thu, 29 Nov 2001 22:57:37 +0000 (22:57 +0000)]
Tweak plpgsql's expression reader to be smarter about parentheses and
to give more useful error messages. Stephen Szabo's example of this
morning ('loop' used as a variable name inside a subselect) works
correctly now, and a FOR that is misinterpreted as an integer FOR will
draw 'missing .. at end of SQL expression', which is at least
marginally helpful.
Tom Lane [Thu, 29 Nov 2001 21:02:41 +0000 (21:02 +0000)]
Fix array_out's failure to backslash backslashes, per bug# 524. Also,
remove brain-dead rule that double quotes are needed if and only if the
datatype is pass-by-reference; neither direction of the implication holds
water. Instead, examine the actual data string to see if it contains
any characters that force us to quote it.
Add some documentation about quoting of array values, which was previously
explained nowhere AFAICT.