Tom Lane [Mon, 12 Nov 2001 17:18:06 +0000 (17:18 +0000)]
Repair crash in EvalPlanQual of query involving nestloop with inner
index scan. Problem was that link to outer tuple wasn't being stored
everyplace it needed to be.
Tom Lane [Mon, 12 Nov 2001 15:57:08 +0000 (15:57 +0000)]
psql's \do was going out of its way to lie about the result type of
operators. Should report the declared oprresult type, not the return type
of the underlying proc, which might be only binary-compatible (cf.
textcat entries).
Bruce Momjian [Mon, 12 Nov 2001 06:09:09 +0000 (06:09 +0000)]
Tables without oids wouldn't be able to be
used inside fk constraints, since some of the checks
in the trigger did a SELECT oid. Since the oid wasn't
actually used, I changed this to SELECT 1. My test
case with non-oid tables now works and fk regression
appears to run fine on my machine.
Tom Lane [Mon, 12 Nov 2001 04:54:08 +0000 (04:54 +0000)]
Suppress duplicate error messages in pq_flush. Write error messages to
postmaster log with elog(DEBUG) so that they will be timestamped etc.
Once upon a time I think elog() was unsafe here, but it shouldn't be anymore.
Tom Lane [Sun, 11 Nov 2001 20:33:53 +0000 (20:33 +0000)]
In find_mergeclauses_for_pathkeys, it's okay to return multiple merge
clauses per path key. Indeed, we *must* do so or we will be unable to
form a valid plan for FULL JOIN with overlapping join conditions, eg
select * from a full join b on
a.v1 = b.v1 and a.v2 = b.v2 and a.v1 = b.v2.
Tom Lane [Sun, 11 Nov 2001 19:18:54 +0000 (19:18 +0000)]
sort_inner_and_outer needs a check to ensure that it's consumed all the
mergeclauses in RIGHT/FULL join cases, just like the other routines have.
I'm not quite sure why I thought it didn't need one --- but Nick
Fankhauser's recent bug report proves that it does.
Tom Lane [Sat, 10 Nov 2001 22:31:49 +0000 (22:31 +0000)]
Allow TIMESTAMP, VARCHAR, et al to be used as unquoted column names,
though alas not as unquoted function names. De-reserve a bunch of
keywords that could have been in ColId rather than ColLabel all along.
Per recent proposal in pgsql-patches.
Tom Lane [Tue, 6 Nov 2001 18:02:48 +0000 (18:02 +0000)]
Clean up formatting of child process exit-status reports so that they
are correct, consistent, and complete ... motivated by gripe from
Oliver Elphick, but I see someone had already made an incomplete stab
at this.
Tom Lane [Tue, 6 Nov 2001 00:38:26 +0000 (00:38 +0000)]
The extra semaphore that proc.c now allocates for checkpoint processes
should be accounted for in the PROC_SEM_MAP_ENTRIES() macro. Otherwise
the ports that rely on this macro to size data structures are broken.
Mea culpa.
Tom Lane [Mon, 5 Nov 2001 05:00:14 +0000 (05:00 +0000)]
CREATE TABLE foo (x,y,z) AS SELECT ... can't apply target column names
to the target list in gram.y; it must wait till after expansion of the
target list in analyze.c. Per bug report 4-Nov:
lx=# CREATE TABLE abc (a char, b char, c char);
CREATE
lx=# CREATE TABLE xyz (x, y, z) AS SELECT * FROM abc;
ERROR: CREATE TABLE/AS SELECT has mismatched column count
Tom Lane [Sun, 4 Nov 2001 19:55:31 +0000 (19:55 +0000)]
Merge three existing ways of signaling postmaster from child processes,
so that only one signal number is used not three. Flags in shared
memory tell the reason(s) for the current signal. This method is
extensible to handle more signal reasons without chewing up even more
signal numbers, but the immediate reason is to keep pg_pwd reloads
separate from SIGHUP processing in the postmaster.
Also clean up some problems in the postmaster with delayed response to
checkpoint status changes --- basically, it wouldn't schedule a checkpoint
if it wasn't getting connection requests on a regular basis.
Philip Warner [Sun, 4 Nov 2001 04:05:36 +0000 (04:05 +0000)]
- Fix compiler warning in pg_restore
- Fix handling of {data/schema}-only restores when using a full
backup file; prior version was restoring schema in data-only
restores. Added enum to make code easier to understand.
Tom Lane [Sat, 3 Nov 2001 21:42:47 +0000 (21:42 +0000)]
Clean up wrong, misleading, or obsolete documentation about array types,
particularly in the CREATE TYPE reference page. Fix some other errors
in the CREATE TYPE page, too.