OSDN Git Service
Tom Lane [Sat, 22 Feb 2003 05:57:45 +0000 (05:57 +0000)]
Simplify timezone-handling code per proposal to pghackers: get rid of
setting timezone-related variables during transaction start. They were
not used anyway in platforms that HAVE_TM_ZONE or HAVE_INT_TIMEZONE,
which it appears is *all* the platforms we are currently supporting.
For platforms that have neither, we now only support UTC or numeric-
offset-from-UTC timezones.
Tom Lane [Sat, 22 Feb 2003 00:45:05 +0000 (00:45 +0000)]
More infrastructure for btree compaction project. Tree-traversal code
now knows what to do upon hitting a dead page (in theory anyway, it's
untested...). Add a post-VACUUM-cleanup entry point for index AMs, to
provide a place for dead-page scavenging to happen.
Also, fix oversight that broke btpo_prev links in temporary indexes.
initdb forced due to additions in pg_am.
Tom Lane [Fri, 21 Feb 2003 21:34:27 +0000 (21:34 +0000)]
Revert patch that broke \d commands, until it can be fixed.
Michael Meskes [Fri, 21 Feb 2003 15:19:18 +0000 (15:19 +0000)]
Forgot to commit Makefile change.
Tom Lane [Fri, 21 Feb 2003 00:06:22 +0000 (00:06 +0000)]
Make btree index structure adjustments and WAL logging changes needed to
support btree compaction, as per proposal of a few days ago. btree index
pages no longer store parent links, instead they have a level indicator
(counting up from zero for leaf pages). The FixBTree recovery logic is
removed, and replaced by code that detects missing parent-level insertions
during WAL replay. Also, generate appropriate WAL entries when updating
btree metapage and when building a btree index from scratch. I believe
btree indexes are now completely WAL-legal for the first time.
initdb forced due to index and WAL changes.
Tom Lane [Thu, 20 Feb 2003 05:24:55 +0000 (05:24 +0000)]
Fix timestamptz_in so that parsing of 'now'::timestamptz gives right
answer when SET TIMEZONE has been done since the start of the current
transaction. Per bug report from Robert Haas.
I plan some futher cleanup in HEAD, but this is a low-risk patch for
the immediate issue in 7.3.
Bruce Momjian [Wed, 19 Feb 2003 23:41:15 +0000 (23:41 +0000)]
Back out LOCKTAG changes by Rod Taylor, pending code review. Sorry.
Tatsuo Ishii [Wed, 19 Feb 2003 14:31:26 +0000 (14:31 +0000)]
Fix for GUC client_encoding variable not being handled
correctly. See following thread for more details.
Subject: [HACKERS] client_encoding directive is ignored in postgresql.conf
From: Tatsuo Ishii <t-ishii@sra.co.jp>
Date: Wed, 29 Jan 2003 22:24:04 +0900 (JST)
Michael Meskes [Wed, 19 Feb 2003 12:36:39 +0000 (12:36 +0000)]
Added DATABASE command as alias to CONNECT TO.
Bruce Momjian [Wed, 19 Feb 2003 04:06:28 +0000 (04:06 +0000)]
This patch makes the following changes to the documentation:
- more work from the SGML police
- some grammar improvements: rewriting a paragraph or two, replacing
contractions where (IMHO) appropriate
- fix missing utility commands in lock mode docs
- improve CLUSTER, REINDEX, SET SESSION AUTHORIZATION ref pages
Neil Conway
Bruce Momjian [Wed, 19 Feb 2003 04:05:07 +0000 (04:05 +0000)]
Autoconf run for readline/libedit patch.
Bruce Momjian [Wed, 19 Feb 2003 04:04:04 +0000 (04:04 +0000)]
Here's the patch I promised over on HACKERS - it alters the
implementation
of '\e' history tracking for systems that have a readline compatability
library without replace_history_entry. I fall back to pushing the query
onto the history stack after the \e, rather than replacing it.
The patch adds one more place to look for readline headers, and a test
for replace_history_entry. I've only included the patch for configure.in
Ross J. Reedstrom
Bruce Momjian [Wed, 19 Feb 2003 04:02:54 +0000 (04:02 +0000)]
- Modifies LOCKTAG to include a 'classId'. Relation receive a classId of
RelOid_pg_class, and transaction locks XactLockTableId. RelId is renamed
to objId.
- LockObject() and UnlockObject() functions created, and their use
sprinkled throughout the code to do descent locking for domains and
types. They accept lock modes AccessShare and AccessExclusive, as we
only really need a 'read' and 'write' lock at the moment. Most locking
cases are held until the end of the transaction.
This fixes the cases Tom mentioned earlier in regards to locking with
Domains. If the patch is good, I'll work on cleaning up issues with
other database objects that have this problem (most of them).
Rod Taylor
Bruce Momjian [Wed, 19 Feb 2003 03:59:02 +0000 (03:59 +0000)]
Allow PQcmdTuples to return row counts for MOVE and FETCH.
Neil Conway
Bruce Momjian [Wed, 19 Feb 2003 03:54:39 +0000 (03:54 +0000)]
Here's some changes I made last night to psql's common.c (as found in
7.3.2). It removes some code duplication and #ifdeffing, and some
unstructured ugliness such as tacky breaks and an unneeded continue.
Breaks up a large function into smaller functions and reduces required
nesting levels, and kills a variable or two.
Jeroen T. Vermeulen
Bruce Momjian [Wed, 19 Feb 2003 03:52:57 +0000 (03:52 +0000)]
At present it is impossible to kill createuser except with kill -9
Oliver Elphick
Bruce Momjian [Wed, 19 Feb 2003 03:50:09 +0000 (03:50 +0000)]
Please apply patches for contrib/ltree.
ltree_73.patch.gz - for 7.3 :
Fix ~ operation bug: eg '1.1.1' ~ '*.1'
ltree_74.patch.gz - for current CVS
Fix ~ operation bug: eg '1.1.1' ~ '*.1'
Add ? operation
Optimize index storage
Last change needs drop/create all ltree indexes, so only for 7.4
Teodor Sigaev
Bruce Momjian [Wed, 19 Feb 2003 03:48:11 +0000 (03:48 +0000)]
The following patches eliminate the overflows in the j2date() and date2j()
functions which limited the maximum date for a timestamp to AD
1465001.
The new limit is AD
5874897.
The files affected are:
doc/src/sgml/datatype.sgml:
Documentation change due to patch. Included is a notice about
the reduced range when using an eight-byte integer for timestamps.
src/backend/utils/adt/datetime.c:
Replacement functions for j2date() and date2j() functions.
src/include/utils/datetime.h:
Corrected a bug with the limit on the earliest possible date,
Nov 23,-4713 has a Julian day count of -1. The earliest possible
date should be Nov 24, -4713 with a day count of 0.
src/test/regress/expected/horology-no-DST-before-1970.out:
src/test/regress/expected/horology-solaris-1947.out:
src/test/regress/expected/horology.out:
Copies of expected output for regression testing.
Note: Only horology.out has been physically tested. I do not have access
to a Solaris box and I don't know how to provoke the "pre-1970" test.
src/test/regress/sql/horology.sql:
Added some test cases to check extended range.
John Cochran
Bruce Momjian [Wed, 19 Feb 2003 03:46:00 +0000 (03:46 +0000)]
We just released new version of contrib/btree_gist
(7.3 and current CVS) with support of int8, float4, float8
in addition to int4. Thanks Janko Richter for contribution.
Oleg Bartunov
Bruce Momjian [Wed, 19 Feb 2003 03:13:25 +0000 (03:13 +0000)]
This patch includes more SGML markup fixes as well as a few minor
additions to the docs.
Neil Conway
Bruce Momjian [Wed, 19 Feb 2003 03:12:22 +0000 (03:12 +0000)]
This patch adds a note to the documentation describing why the
performance of min() and max() is slow when applied to the entire table,
and suggesting the simple workaround most experienced Pg users
eventually learn about (SELECT xyz ... ORDER BY xyz LIMIT 1).
Neil Conway
Bruce Momjian [Wed, 19 Feb 2003 01:38:41 +0000 (01:38 +0000)]
Add SQL 200X standards URL.
Bruce Momjian [Wed, 19 Feb 2003 01:36:32 +0000 (01:36 +0000)]
Mark as done, fix grammar:
< * Prevent index uniqueness checks when UPDATE does not modifying column
> * Prevent index uniqueness checks when UPDATE does not modify the column
235c235
< o Make PL/PgSQL %TYPE schema-aware
> o -Make PL/PgSQL %TYPE schema-aware
Bruce Momjian [Tue, 18 Feb 2003 17:23:08 +0000 (17:23 +0000)]
Update URL.
Bruce Momjian [Tue, 18 Feb 2003 17:20:37 +0000 (17:20 +0000)]
Hungarian FAQ is text, not HTML, so remove it.
Bruce Momjian [Tue, 18 Feb 2003 16:38:05 +0000 (16:38 +0000)]
New URL.
Bruce Momjian [Tue, 18 Feb 2003 16:37:30 +0000 (16:37 +0000)]
New URL for FAQ.
Bruce Momjian [Tue, 18 Feb 2003 05:15:51 +0000 (05:15 +0000)]
Add:
> * Allow WAL information to recover corrupted pg_controldata
Bruce Momjian [Tue, 18 Feb 2003 05:08:12 +0000 (05:08 +0000)]
Update German FAQ, from Ian Barwick.
Bruce Momjian [Tue, 18 Feb 2003 05:07:42 +0000 (05:07 +0000)]
*** empty log message ***
Bruce Momjian [Tue, 18 Feb 2003 05:07:04 +0000 (05:07 +0000)]
Update changes from Ian Barwick.
Bruce Momjian [Tue, 18 Feb 2003 03:47:39 +0000 (03:47 +0000)]
Add:
> * Allow pg_dump to dump sequences using NO_MAXVALUE and NO_MINVALUE
Bruce Momjian [Tue, 18 Feb 2003 03:33:50 +0000 (03:33 +0000)]
Update README.
Tom Lane [Tue, 18 Feb 2003 02:53:29 +0000 (02:53 +0000)]
Async_NotifyHandler must save and restore ImmediateInterruptOK. Fixes
known problem with failure to respond to 'pg_ctl stop -m fast', and
probable problems if SIGINT or SIGTERM arrives while processing a
SIGUSR2 interrupt that arrived while waiting for a new client query.
Bruce Momjian [Tue, 18 Feb 2003 02:49:30 +0000 (02:49 +0000)]
Add:
> * Add a script to ask system configuration questions and tune postgresql.conf
Bruce Momjian [Tue, 18 Feb 2003 02:13:24 +0000 (02:13 +0000)]
Rename 'holder' references to 'proclock' for PROCLOCK references, for
consistency.
Bruce Momjian [Mon, 17 Feb 2003 20:47:29 +0000 (20:47 +0000)]
Add:
> * Allow CIDR format to be used in pg_hba.conf
Bruce Momjian [Mon, 17 Feb 2003 18:48:29 +0000 (18:48 +0000)]
Update marks:
< o Allow CLUSTER to cluster all tables (Alvaro Herrera)
> o -Allow CLUSTER to cluster all tables (Alvaro Herrera)
243c243
< * Allow pg_dump to dump a specific schema (Neil Conway)
> * -Allow pg_dump to dump a specific schema (Neil Conway)
398c398
< * Make IN/NOT IN have similar performance to EXISTS/NOT EXISTS (Tom)
> * -Make IN/NOT IN have similar performance to EXISTS/NOT EXISTS (Tom)
Bruce Momjian [Mon, 17 Feb 2003 18:48:14 +0000 (18:48 +0000)]
Remove IN/EXISTS TODO.detail item.
Bruce Momjian [Mon, 17 Feb 2003 18:47:02 +0000 (18:47 +0000)]
Mark as done:
> o -Add ALTER TABLE tab SET WITHOUT OIDS (Rod)
> o -Allow CLUSTER to cluster all tables (Alvaro Herrera)
> * -Allow pg_dump to dump a specific schema (Neil Conway)
> * -Make IN/NOT IN have similar performance to EXISTS/NOT EXISTS (Tom)
> * Rod is Rod Taylor <pg@rbt.ca)>
Bruce Momjian [Mon, 17 Feb 2003 18:37:12 +0000 (18:37 +0000)]
Update:
< * -Make a transaction-safe TRUNCATE
> * -Make a transaction-safe TRUNCATE (Rod)
Bruce Momjian [Mon, 17 Feb 2003 18:36:24 +0000 (18:36 +0000)]
Done:
> * -Make a transaction-safe TRUNCATE
Michael Meskes [Mon, 17 Feb 2003 14:06:40 +0000 (14:06 +0000)]
Added Informix "database" command.
Tom Lane [Sun, 16 Feb 2003 06:06:32 +0000 (06:06 +0000)]
Back off previous patch to skip projection step in scan plan nodes,
in the case where the node immediately above the scan is a Hash, Sort,
or Material node. In these cases it's better to do the projection
so that we don't store unneeded columns in the hash/sort/materialize
table. Per discussion a few days ago with Anagh Lal.
Tom Lane [Sun, 16 Feb 2003 02:30:39 +0000 (02:30 +0000)]
COALESCE() and NULLIF() are now first-class expressions, not macros
that turn into CASE expressions. They evaluate their arguments at most
once. Patch by Kris Jurka, review and (very light) editorializing by me.
Bruce Momjian [Sun, 16 Feb 2003 00:29:49 +0000 (00:29 +0000)]
Update wording:
< * Disallow DROP COLUMN on a column that is part of a multi-column index
> * Require DROP COLUMN CASCADE for a column that is part of a multi-column index
Tom Lane [Sat, 15 Feb 2003 21:39:58 +0000 (21:39 +0000)]
Marginal tweaks to make sure that roundoff error won't cause us to make
a bad choice between sorted and hashed aggregation.
Tom Lane [Sat, 15 Feb 2003 20:12:41 +0000 (20:12 +0000)]
Teach planner how to propagate pathkeys from sub-SELECTs in FROM up to
the outer query. (The implementation is a bit klugy, but it would take
nontrivial restructuring to make it nicer, which this is probably not
worth.) This avoids unnecessary sort steps in examples like
SELECT foo,count(*) FROM (SELECT ... ORDER BY foo,bar) sub GROUP BY foo
which means there is now a reasonable technique for controlling the
order of inputs to custom aggregates, even in the grouping case.
Bruce Momjian [Sat, 15 Feb 2003 18:30:06 +0000 (18:30 +0000)]
Add:
> * Disallow DROP COLUMN on a column that is part of a multi-column index
Bruce Momjian [Fri, 14 Feb 2003 22:18:25 +0000 (22:18 +0000)]
Propogate pg_ctl -D to the postmaster as a -D flag for identification by
ps for multiple postmasters, for Kevin Brown.
Tom Lane [Fri, 14 Feb 2003 21:12:45 +0000 (21:12 +0000)]
Fix SPI result logic for case where there are multiple statements of the
same type in a rule. Per bug report from Pavel Hanak.
Bruce Momjian [Fri, 14 Feb 2003 19:40:42 +0000 (19:40 +0000)]
Make pg_dump/restore safer for autocommit=off in postgresql.conf.
Bruce Momjian [Fri, 14 Feb 2003 17:02:45 +0000 (17:02 +0000)]
Add:
> * Allow incremental backups
Michael Meskes [Fri, 14 Feb 2003 16:40:01 +0000 (16:40 +0000)]
In Informix mode ecpg should still be able to parse preprocessor directives.
Bruce Momjian [Fri, 14 Feb 2003 14:41:40 +0000 (14:41 +0000)]
Add:
> * Add schema option to createlang
Bruce Momjian [Fri, 14 Feb 2003 14:13:56 +0000 (14:13 +0000)]
Allow PAM to work on MAC OS X, report from Aaron Hillegass.
Change was actually made in a previous commit.
Bruce Momjian [Fri, 14 Feb 2003 14:05:00 +0000 (14:05 +0000)]
Update FAQ's in head and 7.3.X.
Bruce Momjian [Fri, 14 Feb 2003 14:03:10 +0000 (14:03 +0000)]
Update to 7.3.2 as newest release.
Bruce Momjian [Fri, 14 Feb 2003 13:59:14 +0000 (13:59 +0000)]
*** empty log message ***
Bruce Momjian [Fri, 14 Feb 2003 13:59:01 +0000 (13:59 +0000)]
Update URL's.
Michael Meskes [Fri, 14 Feb 2003 13:17:13 +0000 (13:17 +0000)]
- Synced parser and keyword file.
- More work on Informix compatibility.
Bruce Momjian [Fri, 14 Feb 2003 13:11:44 +0000 (13:11 +0000)]
Add:
> * Cache last known per-tuple offsets to speed long tuple access
Bruce Momjian [Fri, 14 Feb 2003 04:07:46 +0000 (04:07 +0000)]
Update FAQ.
Bruce Momjian [Fri, 14 Feb 2003 02:21:25 +0000 (02:21 +0000)]
Fix broken markup I just introduced.
Bruce Momjian [Fri, 14 Feb 2003 01:32:31 +0000 (01:32 +0000)]
Properly document location of pg_service.conf.sample.
Tom Lane [Fri, 14 Feb 2003 01:24:26 +0000 (01:24 +0000)]
Fix some of the breakage from the IPV6 patch.
Tom Lane [Fri, 14 Feb 2003 00:18:41 +0000 (00:18 +0000)]
Remove bogus manipulation of SIGPIPE; the backend already runs with
SIGPIPE disabled, and does not need to waste two syscalls per I/O on it.
Tom Lane [Thu, 13 Feb 2003 23:06:15 +0000 (23:06 +0000)]
Repair incorrect indexing for atttypmod, per Brad McLean.
Tom Lane [Thu, 13 Feb 2003 22:56:52 +0000 (22:56 +0000)]
Result of lo_read() is int, not size_t. Per Oleg Drokin.
Tom Lane [Thu, 13 Feb 2003 22:50:01 +0000 (22:50 +0000)]
Parser was dropping foreign-key constraints on the floor if present in
an ALTER TABLE ADD COLUMN command. Per bug #896.
Tom Lane [Thu, 13 Feb 2003 21:39:50 +0000 (21:39 +0000)]
Repair rule permissions-checking bug reported by Tim Burgess 10-Feb-02:
the table(s) modified by the original query would get checked for the
type of write permission needed by a rule query.
Tom Lane [Thu, 13 Feb 2003 20:45:22 +0000 (20:45 +0000)]
Arrange to give error when a SetOp member statement refers to a variable
of the containing query (which really can only happen in a rule context).
Per example from Brandon Craig Rhodes. Also, make the error message
more specific for the similar case with sub-select in FROM. The revised
coding should be easier to adapt to SQL99's LATERAL(), when we get around
to supporting that.
Michael Meskes [Thu, 13 Feb 2003 20:37:28 +0000 (20:37 +0000)]
Just intermediate results for backup reasons.
Tom Lane [Thu, 13 Feb 2003 18:29:07 +0000 (18:29 +0000)]
transformExpr() was missing some cases it ought to allow; per report
from Greg Stark. Also, twiddle the FuncCall case to not scribble on
the input structure, which was the proximate cause of the problem.
Someday we ought to fix things so that transformExpr() isn't called
on already-transformed trees ...
Tom Lane [Thu, 13 Feb 2003 18:13:22 +0000 (18:13 +0000)]
Suppress gcc warning.
Tom Lane [Thu, 13 Feb 2003 17:04:19 +0000 (17:04 +0000)]
Prevent timetz2tm() from scribbling on its input in HAVE_INT64_TIMESTAMP case.
Michael Meskes [Thu, 13 Feb 2003 13:11:52 +0000 (13:11 +0000)]
- Applied error reporting patch by Matthew Vanecek
- Started with an Informix compatibility option.
Bruce Momjian [Thu, 13 Feb 2003 05:53:46 +0000 (05:53 +0000)]
[ Revert patch ]
> =================================================================
> User interface proposal for multi-row function targetlist entries
> =================================================================
> 1. Only one targetlist entry may return a set.
> 2. Each targetlist item (other than the set returning one) is
> repeated for each item in the returned set.
>
Having gotten no objections (actually, no response at all), I can only
assume no one had heartburn with this change. The attached patch covers
the first of the two proposals, i.e. restricting the target list to only
one set returning function.
Joe Conway
Bruce Momjian [Thu, 13 Feb 2003 05:47:46 +0000 (05:47 +0000)]
Add local ident OpenBSD mention that was missing in one place.
Bruce Momjian [Thu, 13 Feb 2003 05:37:44 +0000 (05:37 +0000)]
This patch fixes an error in the usage message for 'clusterdb', and
makes a few editorial changes to the documentation.
Neil Conway
Bruce Momjian [Thu, 13 Feb 2003 05:35:11 +0000 (05:35 +0000)]
This trivial patch removes the usage of some old statistics code that no
longer works -- IncrHeapAccessStat() didn't actually *do* anything
anymore, so no reason to keep it around AFAICS. I also fixed a
grammatical error in a comment.
Neil Conway
Bruce Momjian [Thu, 13 Feb 2003 05:32:42 +0000 (05:32 +0000)]
> > They work the same as table constraints with in-line declaration (no
> > comma).
>
> OK. But the documentation implies there is a comma, so it should probably
> get chenged then.
Yes, it should. (attached)
[ Backpatched to 7.3.X too.]
Rod Taylor
Bruce Momjian [Thu, 13 Feb 2003 05:31:06 +0000 (05:31 +0000)]
The attached patches change earthdistance to use the new cube functions
in one of the earth functions so that latitude and longitude to
cartesian coordinates conversion will be more accurrate. (Previously
a text string was built to provide as input which limited the accuracy
to the number of digits printed.)
The new functions were included in a recent patch to contrib/cube that has not
as yet been accepted as of yet.
I also added check constraints to the domain 'earth' since they are now
working in 7.4.
Bruno Wolff III
Bruce Momjian [Thu, 13 Feb 2003 05:26:50 +0000 (05:26 +0000)]
The attached patch provides cube with 4 functions for building cubes
directly from float8 values. (As opposed to converting the values to
strings
and then parsing the strings.)
The functions are:
cube(float8) returns cube
cube(float8,float8) returns cube
cube(cube,float8) returns cube
cube(cube,float8,float8) returns cube
Bruno Wolff III
Bruce Momjian [Thu, 13 Feb 2003 05:25:24 +0000 (05:25 +0000)]
Adds in NO MAXVALUE and NO MINVALUE options for create sequence per 200X
spec, which will also make alter sequence a touch easier.
sequence.c init_params() will check for settings which have been
defined twice, and complain.
Rod Taylor
Bruce Momjian [Thu, 13 Feb 2003 05:24:04 +0000 (05:24 +0000)]
The "random" regression test uses a function called oidrand(), which
takes two parameters, an OID x and an integer y, and returns "true" with
probability 1/y (the OID argument is ignored). This can be useful -- for
example, it can be used to select a random sampling of the rows in a
table (which is what the "random" regression test uses it for).
This patch removes that function, because it was old and messy. The old
function had the following problems:
- it was undocumented
- it was poorly named
- it was designed to workaround an optimizer bug that no longer exists
(the OID argument is to ensure that the optimizer won't optimize away
calls to the function; AFAIK marking the function as 'volatile' suffices
nowadays)
- it used a different random-number generation technique than the other
PSRNG-related functions in the backend do (it called random() like they
do, but it had its own logic for setting a set and deciding when to
reseed the RNG).
Ok, this patch removes oidrand(), oidsrand(), and userfntest(), and
improves the SGML docs a little bit (un-commenting the setseed()
documentation).
Neil Conway
Bruce Momjian [Thu, 13 Feb 2003 05:20:05 +0000 (05:20 +0000)]
Code for WITHOUT OIDS.
On Wed, 2003-01-08 at 21:59, Christopher Kings-Lynne wrote:
> I agree. I want to remove OIDs from heaps of our tables when we go to 7.3.
> I'd rather not have to do it in the dump due to down time.
Rod Taylor <rbt@rbt.ca>
Bruce Momjian [Thu, 13 Feb 2003 05:10:39 +0000 (05:10 +0000)]
This patch makes pg_get_constraintdef support UNIQUE, PRIMARY KEY and
CHECK constraints.
There are apparently no other types of constraint in pg_constraint, so
now all bases are covered. Also, this patch assumes that consrc for a
CHECK constraint is always bracketed so that it's not necessary to add
extra brackets.
Christopher Kings-Lynne
Bruce Momjian [Thu, 13 Feb 2003 05:06:35 +0000 (05:06 +0000)]
> =================================================================
> User interface proposal for multi-row function targetlist entries
> =================================================================
> 1. Only one targetlist entry may return a set.
> 2. Each targetlist item (other than the set returning one) is
> repeated for each item in the returned set.
>
Having gotten no objections (actually, no response at all), I can only assume
no one had heartburn with this change. The attached patch covers the first of
the two proposals, i.e. restricting the target list to only one set returning
function.
It compiles cleanly, and passes all regression tests. If there are no
objections, please apply.
Any suggestions on where this should be documented (other than maybe sql-select)?
Thanks,
Joe
p.s. Here's what the previous example now looks like:
CREATE TABLE bar(f1 int, f2 text, f3 int);
INSERT INTO bar VALUES(1, 'Hello', 42);
INSERT INTO bar VALUES(2, 'Happy', 45);
CREATE TABLE foo(a int, b text);
INSERT INTO foo VALUES(42, 'World');
INSERT INTO foo VALUES(42, 'Everyone');
INSERT INTO foo VALUES(45, 'Birthday');
INSERT INTO foo VALUES(45, 'New Year');
CREATE TABLE foo2(a int, b text);
INSERT INTO foo2 VALUES(42, '!!!!');
INSERT INTO foo2 VALUES(42, '????');
INSERT INTO foo2 VALUES(42, '####');
INSERT INTO foo2 VALUES(45, '$$$$');
CREATE OR REPLACE FUNCTION getfoo(int) RETURNS SETOF text AS '
SELECT b FROM foo WHERE a = $1
' language 'sql';
CREATE OR REPLACE FUNCTION getfoo2(int) RETURNS SETOF text AS '
SELECT b FROM foo2 WHERE a = $1
' language 'sql';
regression=# SELECT f1, f2, getfoo(f3) AS f4 FROM bar;
f1 | f2 | f4
----+-------+----------
1 | Hello | World
1 | Hello | Everyone
2 | Happy | Birthday
2 | Happy | New Year
(4 rows)
regression=# SELECT f1, f2, getfoo(f3) AS f4, getfoo2(f3) AS f5 FROM bar;
ERROR: Only one target list entry may return a set result
Joe Conway
Bruce Momjian [Thu, 13 Feb 2003 04:54:16 +0000 (04:54 +0000)]
[ dumping schemas ]
> I don't care what you use for short options if all useful ones are taken.
> But the long option should be --schema.
Ok, fair enough: a revised patch is attached that uses the '-n' short
option and the '--schema' long option.
Neil Conway
Bruce Momjian [Thu, 13 Feb 2003 04:08:16 +0000 (04:08 +0000)]
[ Have readline save edit history.]
>
> > I already posted a one-line patch to implement this, but it doesn't
> > seem to hve come through to the list. Here it is inline, instead of as
> > an attachment:
>
> We need this to work without readline as well. (Of course there won't be
> any history, but it needs to compile.)
<blush> Even after slogging my way through the nesting #ifdefs for readline
and win32, I forgot! Let's make that a three line patch, then.
Ross J. Reedstrom
Barry Lind [Wed, 12 Feb 2003 20:40:23 +0000 (20:40 +0000)]
Applied patch to update translation file, submitted by Zhenbang Wei
Modified Files:
jdbc/org/postgresql/errors_zh_TW.properties
Bruce Momjian [Wed, 12 Feb 2003 14:11:22 +0000 (14:11 +0000)]
Done in 7.3.2, so removed:
< * Fix SELECT ... INTO and CREATE TABLE AS to have appopriate OID column
Bruce Momjian [Wed, 12 Feb 2003 14:09:04 +0000 (14:09 +0000)]
Done:
> * -Get faster regex() code from Henry Spencer <henry@zoo.utoronto.ca>
Barry Lind [Wed, 12 Feb 2003 06:13:04 +0000 (06:13 +0000)]
Patch to messages file from Holger Klawitter to add a missing message.
Patch to makefile to clean up some of the output
Modified Files:
jdbc/Makefile jdbc/org/postgresql/errors.properties
jdbc/org/postgresql/errors_de.properties
Peter Eisentraut [Tue, 11 Feb 2003 21:06:58 +0000 (21:06 +0000)]
Fix buffer clearing bug.
Peter Eisentraut [Tue, 11 Feb 2003 21:05:35 +0000 (21:05 +0000)]
Simplify evaluation of TCL_INCLUDE_SPEC.
Tom Lane [Tue, 11 Feb 2003 04:13:06 +0000 (04:13 +0000)]
Use a varno not chosen at random for dummy variables in the top-level
targetlist of a set-operation tree. I'm not sure that this solution
will really stand the test of time --- perhaps we need to make a special
RTE for such vars to refer to. But this quick hack fixes Brandon Craig
Rhodes' complaint of 10-Feb-02 about EXCEPT in CREATE RULE, while not
changing any behavior in the better-tested cases where leftmostRTI is
one anyway.
Tom Lane [Mon, 10 Feb 2003 17:08:50 +0000 (17:08 +0000)]
Fix thinko in new logic about pushing down non-nullability constraints:
constraints appearing in outer-join qualification clauses are restricted
as to when and where they can be pushed down. Add regression test
to catch future errors in this area.
Tom Lane [Mon, 10 Feb 2003 17:06:23 +0000 (17:06 +0000)]
Add code to show join rule (for outer and IN joins) in join type name.