]> granicus.if.org Git - postgresql/log
postgresql
21 years ago- Synced parser and keyword file.
Michael Meskes [Fri, 14 Feb 2003 13:17:13 +0000 (13:17 +0000)]
- Synced parser and keyword file.
- More work on Informix compatibility.

21 years agoAdd:
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

21 years agoUpdate FAQ.
Bruce Momjian [Fri, 14 Feb 2003 04:07:46 +0000 (04:07 +0000)]
Update FAQ.

21 years agoFix broken markup I just introduced.
Bruce Momjian [Fri, 14 Feb 2003 02:21:25 +0000 (02:21 +0000)]
Fix broken markup I just introduced.

21 years agoProperly document location of pg_service.conf.sample.
Bruce Momjian [Fri, 14 Feb 2003 01:32:31 +0000 (01:32 +0000)]
Properly document location of pg_service.conf.sample.

21 years agoFix some of the breakage from the IPV6 patch.
Tom Lane [Fri, 14 Feb 2003 01:24:26 +0000 (01:24 +0000)]
Fix some of the breakage from the IPV6 patch.

21 years agoRemove bogus manipulation of SIGPIPE; the backend already runs with
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.

21 years agoRepair incorrect indexing for atttypmod, per Brad McLean.
Tom Lane [Thu, 13 Feb 2003 23:06:15 +0000 (23:06 +0000)]
Repair incorrect indexing for atttypmod, per Brad McLean.

21 years agoResult of lo_read() is int, not size_t. Per Oleg Drokin.
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.

21 years agoParser was dropping foreign-key constraints on the floor if present in
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.

21 years agoRepair rule permissions-checking bug reported by Tim Burgess 10-Feb-02:
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.

21 years agoArrange to give error when a SetOp member statement refers to a variable
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.

21 years agoJust intermediate results for backup reasons.
Michael Meskes [Thu, 13 Feb 2003 20:37:28 +0000 (20:37 +0000)]
Just intermediate results for backup reasons.

21 years agotransformExpr() was missing some cases it ought to allow; per report
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 ...

21 years agoSuppress gcc warning.
Tom Lane [Thu, 13 Feb 2003 18:13:22 +0000 (18:13 +0000)]
Suppress gcc warning.

21 years agoPrevent timetz2tm() from scribbling on its input in HAVE_INT64_TIMESTAMP case.
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.

21 years ago- Applied error reporting patch by Matthew Vanecek
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.

21 years ago[ Revert patch ]
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

21 years agoAdd local ident OpenBSD mention that was missing in one place.
Bruce Momjian [Thu, 13 Feb 2003 05:47:46 +0000 (05:47 +0000)]
Add local ident OpenBSD mention that was missing in one place.

21 years agoThis patch fixes an error in the usage message for 'clusterdb', and
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

21 years agoThis trivial patch removes the usage of some old statistics code that no
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

21 years ago> > They work the same as table constraints with in-line declaration (no
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

21 years agoThe attached patches change earthdistance to use the new cube functions
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

21 years agoThe attached patch provides cube with 4 functions for building cubes
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

21 years agoAdds in NO MAXVALUE and NO MINVALUE options for create sequence per 200X
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

21 years agoThe "random" regression test uses a function called oidrand(), which
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

21 years agoCode for WITHOUT OIDS.
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>

21 years agoThis patch makes pg_get_constraintdef support UNIQUE, PRIMARY KEY and
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

21 years ago> =================================================================
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

21 years ago[ dumping schemas ]
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

21 years ago[ Have readline save edit history.]
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

21 years agoApplied patch to update translation file, submitted by Zhenbang Wei
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

21 years agoDone in 7.3.2, so removed:
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

21 years agoDone:
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>

21 years agoPatch to messages file from Holger Klawitter to add a missing message.
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

21 years agoFix buffer clearing bug.
Peter Eisentraut [Tue, 11 Feb 2003 21:06:58 +0000 (21:06 +0000)]
Fix buffer clearing bug.

21 years agoSimplify evaluation of TCL_INCLUDE_SPEC.
Peter Eisentraut [Tue, 11 Feb 2003 21:05:35 +0000 (21:05 +0000)]
Simplify evaluation of TCL_INCLUDE_SPEC.

21 years agoUse a varno not chosen at random for dummy variables in the top-level
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.

21 years agoFix thinko in new logic about pushing down non-nullability constraints:
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.

21 years agoAdd code to show join rule (for outer and IN joins) in join type name.
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.

21 years agoGet rid of last few vestiges of parsetree dependency on grammar token
Tom Lane [Mon, 10 Feb 2003 04:44:47 +0000 (04:44 +0000)]
Get rid of last few vestiges of parsetree dependency on grammar token
codes, per discussion from last March.  parse.h should now be included
*only* by gram.y, scan.l, keywords.c, parser.c.  This prevents surprising
misbehavior after seemingly-trivial grammar adjustments.

21 years agoDetect case where an outer join can be reduced to a plain inner join
Tom Lane [Sun, 9 Feb 2003 23:57:19 +0000 (23:57 +0000)]
Detect case where an outer join can be reduced to a plain inner join
because there are WHERE clauses that will reject the null-extended rows.
Per suggestion from Brandon Craig Rhodes, 19-Nov-02.

21 years agoupped build# to 201
Barry Lind [Sun, 9 Feb 2003 23:45:45 +0000 (23:45 +0000)]
upped build# to 201

21 years agoBetter error message on character set mismatches during conversion to unicode.
Barry Lind [Sun, 9 Feb 2003 23:14:55 +0000 (23:14 +0000)]
Better error message on character set mismatches during conversion to unicode.
Also applied patch from Lars Stenberg to make callable statements use the form
select * from func() when running against a 7.3 server instead of select func() to allow for set returning functions to be called.

 Modified Files:
  jdbc/org/postgresql/errors.properties
  jdbc/org/postgresql/core/Encoding.java
  jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java

21 years agoCreate a distinction between Lists of integers and Lists of OIDs, to get
Tom Lane [Sun, 9 Feb 2003 06:56:28 +0000 (06:56 +0000)]
Create a distinction between Lists of integers and Lists of OIDs, to get
rid of the assumption that sizeof(Oid)==sizeof(int).  This is one small
step towards someday supporting 8-byte OIDs.  For the moment, it doesn't
do much except get rid of a lot of unsightly casts.

21 years agoRemove bogus comment (too freely copied & pasted).
Tom Lane [Sun, 9 Feb 2003 00:35:55 +0000 (00:35 +0000)]
Remove bogus comment (too freely copied & pasted).

21 years agoMake further use of new bitmapset code: executor's chgParam, extParam,
Tom Lane [Sun, 9 Feb 2003 00:30:41 +0000 (00:30 +0000)]
Make further use of new bitmapset code: executor's chgParam, extParam,
locParam lists can be converted to bitmapsets to speed updating.  Also,
replace 'locParam' with 'allParam', which contains all the paramIDs
relevant to the node (i.e., the union of extParam and locParam); this
saves a step during SetChangedParamList() without costing anything
elsewhere.

21 years agoReplace planner's representation of relation sets, per pghackers discussion.
Tom Lane [Sat, 8 Feb 2003 20:20:55 +0000 (20:20 +0000)]
Replace planner's representation of relation sets, per pghackers discussion.
Instead of Lists of integers, we now store variable-length bitmap sets.
This should be faster as well as less error-prone.

21 years agoapplied Kris Jurka's patch for numeric
Dave Cramer [Fri, 7 Feb 2003 12:47:29 +0000 (12:47 +0000)]
applied Kris Jurka's patch for numeric

21 years agoRevise mechanism for getting rid of temp tables at backend shutdown.
Tom Lane [Fri, 7 Feb 2003 01:33:06 +0000 (01:33 +0000)]
Revise mechanism for getting rid of temp tables at backend shutdown.
Instead of grovelling through pg_class to find them, make use of the
handy dandy dependency mechanism: just delete everything that depends
on our temp schema.  Unlike the pg_class scan, the dependency mechanism
is smart enough to delete things in an order that doesn't fall foul of
any dependency restrictions.  Fixes problem reported by David Heggie:
a temp table with a serial column may cause a backend FATAL exit at
shutdown time, if it chances to try to delete the temp sequence first.

21 years agoMake flatten_join_alias_vars() do the right thing when expanding an alias
Tom Lane [Thu, 6 Feb 2003 22:21:11 +0000 (22:21 +0000)]
Make flatten_join_alias_vars() do the right thing when expanding an alias
referenced from a subquery.  Per example from Stefanos Harhalakis.

21 years agoCreate a GUC variable REGEX_FLAVOR to control the type of regular
Tom Lane [Thu, 6 Feb 2003 20:25:33 +0000 (20:25 +0000)]
Create a GUC variable REGEX_FLAVOR to control the type of regular
expression accepted by the regex operators, per discussion yesterday.

Along the way, reduce deadlock_timeout from PGC_POSTMASTER to PGC_SIGHUP
category.  It is probably best to insist that all backends share the same
setting, but that doesn't mean it has to be frozen at startup.

21 years agoFix core dump when pltcl_elog is called with wrong number of parameters,
Tom Lane [Thu, 6 Feb 2003 17:02:11 +0000 (17:02 +0000)]
Fix core dump when pltcl_elog is called with wrong number of parameters,
per report from Ian Harding.

21 years agoAllow qualified type names in CREATE CAST, DROP CAST. Also allow the
Tom Lane [Wed, 5 Feb 2003 20:16:42 +0000 (20:16 +0000)]
Allow qualified type names in CREATE CAST, DROP CAST.  Also allow the
construction 'SETOF type[]' which for some reason was previously
overlooked (you'd have to name the array type directly to make it work).

21 years agoReplace regular expression package with Henry Spencer's latest version
Tom Lane [Wed, 5 Feb 2003 17:41:33 +0000 (17:41 +0000)]
Replace regular expression package with Henry Spencer's latest version
(extracted from Tcl 8.4.1 release, as Henry still hasn't got round to
making it a separate library).  This solves a performance problem for
multibyte, as well as upgrading our regexp support to match recent Tcl
and nearly match recent Perl.

21 years agopatch from Oliver Jowett to implement some of the jdbc3 methods
Dave Cramer [Wed, 5 Feb 2003 11:12:39 +0000 (11:12 +0000)]
patch from Oliver Jowett to implement some of the jdbc3 methods

21 years agoUpdate Hungarian FAQ, from Laszlo Hornyak
Bruce Momjian [Tue, 4 Feb 2003 12:32:41 +0000 (12:32 +0000)]
Update Hungarian FAQ, from Laszlo Hornyak

21 years agoRevert doc change so we mention moving past the last row of a cursor.
Bruce Momjian [Tue, 4 Feb 2003 11:23:58 +0000 (11:23 +0000)]
Revert doc change so we mention moving past the last row of a cursor.

21 years agoApplied Kris Jurkas patch to fix rollback and SQLException
Dave Cramer [Tue, 4 Feb 2003 11:01:52 +0000 (11:01 +0000)]
Applied Kris Jurkas patch to fix rollback and SQLException

21 years agoapplied patch from Oliver Jowett
Dave Cramer [Tue, 4 Feb 2003 10:44:37 +0000 (10:44 +0000)]
applied patch from Oliver Jowett

21 years agoTwo patches from Kris Jurka. One fixes a problem with incorrect type for double
Barry Lind [Tue, 4 Feb 2003 10:09:32 +0000 (10:09 +0000)]
Two patches from Kris Jurka.  One fixes a problem with incorrect type for double
and the other fixes a NPE in Statement.toString() under some circumstances.
The second patch was originally submitted by Oliver Jowett and updated by Kris

21 years agoPatch from Nic Ferrier to add support for result sets being cursor based
Barry Lind [Tue, 4 Feb 2003 09:20:12 +0000 (09:20 +0000)]
Patch from Nic Ferrier to add support for result sets being cursor based
so that rows can be fetched incrementally.  This is enabled by using
setFetchSize()

21 years agoMinor code cleanup: remove no-longer-useful pull_subplans() function,
Tom Lane [Tue, 4 Feb 2003 00:50:01 +0000 (00:50 +0000)]
Minor code cleanup: remove no-longer-useful pull_subplans() function,
and convert pull_agg_clause() into count_agg_clause(), which is a more
efficient way of doing what it's really being used for.

21 years agoDetect duplicate aggregate calls and evaluate only one copy. This
Tom Lane [Tue, 4 Feb 2003 00:48:23 +0000 (00:48 +0000)]
Detect duplicate aggregate calls and evaluate only one copy.  This
speeds up some useful real-world cases like
SELECT x, COUNT(*) FROM t GROUP BY x HAVING COUNT(*) > 100.

21 years ago#ifdef out stuff that shouldn't be compiled when not USE_SSL.
Tom Lane [Mon, 3 Feb 2003 22:33:51 +0000 (22:33 +0000)]
#ifdef out stuff that shouldn't be compiled when not USE_SSL.
Curious that gcc doesn't complain about unreferenced static variables.

21 years agoDetermine the set of constraints applied to a domain at executor
Tom Lane [Mon, 3 Feb 2003 21:15:45 +0000 (21:15 +0000)]
Determine the set of constraints applied to a domain at executor
startup, not in the parser; this allows ALTER DOMAIN to work correctly
with domain constraint operations stored in rules.  Rod Taylor;
code review by Tom Lane.

21 years agoAdd mention of CURRENT_SCHEMA for object creation.
Bruce Momjian [Mon, 3 Feb 2003 15:56:50 +0000 (15:56 +0000)]
Add mention of CURRENT_SCHEMA for object creation.

21 years agoDon't print NO ACTION foreign key actions in dumps and psql \d.
Bruce Momjian [Mon, 3 Feb 2003 15:17:24 +0000 (15:17 +0000)]
Don't print NO ACTION foreign key actions in dumps and psql \d.

21 years agoTweak planner and executor to avoid doing ExecProject() in table scan
Tom Lane [Mon, 3 Feb 2003 15:07:08 +0000 (15:07 +0000)]
Tweak planner and executor to avoid doing ExecProject() in table scan
nodes where it's not really necessary.  In many cases where the scan node
is not the topmost plan node (eg, joins, aggregation), it's possible to
just return the table tuple directly instead of generating an intermediate
projection tuple.  In preliminary testing, this reduced the CPU time
needed for 'SELECT COUNT(*) FROM foo' by about 10%.

21 years agoMove pg_service.conf.sample to /interfaces/libpq.
Bruce Momjian [Mon, 3 Feb 2003 14:24:07 +0000 (14:24 +0000)]
Move pg_service.conf.sample to /interfaces/libpq.

21 years agoChange MOVE LAST to MOVE ALL.
Bruce Momjian [Mon, 3 Feb 2003 14:04:24 +0000 (14:04 +0000)]
Change MOVE LAST to MOVE ALL.

Standard says FETCH LAST is after last row, and we don't do that.

21 years agoImplement EXPLAIN EXECUTE. By Neil Conway, with some kibitzing from
Tom Lane [Sun, 2 Feb 2003 23:46:38 +0000 (23:46 +0000)]
Implement EXPLAIN EXECUTE.  By Neil Conway, with some kibitzing from
Tom Lane.

21 years agoUpdate release history for 7.3.2.
Tom Lane [Sun, 2 Feb 2003 19:48:20 +0000 (19:48 +0000)]
Update release history for 7.3.2.

21 years agoFix nodeUnique to behave correctly when reversing direction after reaching
Tom Lane [Sun, 2 Feb 2003 19:08:57 +0000 (19:08 +0000)]
Fix nodeUnique to behave correctly when reversing direction after reaching
either end of subplan results.  This prevents misbehavior of cursors
on SELECT DISTINCT ... queries.  Per bug report 1-Feb-02.

21 years agoRemove restriction that cast functions cannot be volatile. This
Tom Lane [Sat, 1 Feb 2003 22:09:26 +0000 (22:09 +0000)]
Remove restriction that cast functions cannot be volatile.  This
restriction was debatable to begin with, but it has now become obvious
that it breaks forward-porting of user-defined types; contrib/lo being
the most salient example.

21 years agoCleaner solution to the problem of loading pre-7.3 dumps containing
Tom Lane [Sat, 1 Feb 2003 22:06:59 +0000 (22:06 +0000)]
Cleaner solution to the problem of loading pre-7.3 dumps containing
columns of type lo (see contrib/lo).  Rather than hacking the function
definitions on-the-fly, just modify the queries issued by FixupBlobRefs
so that they work even if CREATE CAST hasn't been issued.

21 years agoChanges of 6-Sep-02 broke pg_restore's ability to recognize tar-format
Tom Lane [Sat, 1 Feb 2003 19:29:16 +0000 (19:29 +0000)]
Changes of 6-Sep-02 broke pg_restore's ability to recognize tar-format
files.  Fix it.

21 years agoFix assign_session_authorization() to not be confused by all-numeric
Tom Lane [Sat, 1 Feb 2003 18:31:28 +0000 (18:31 +0000)]
Fix assign_session_authorization() to not be confused by all-numeric
user names.  Per recent reports.

21 years agoPrevent core dump from calling Tcl_DontCallWhenDeleted() with a null
Tom Lane [Sat, 1 Feb 2003 00:22:12 +0000 (00:22 +0000)]
Prevent core dump from calling Tcl_DontCallWhenDeleted() with a null
interp pointer.  Per report from Gerhard Hintermayer.

21 years agoApply ljb's patch to prevent both memory leak and core dump during
Tom Lane [Sat, 1 Feb 2003 00:07:03 +0000 (00:07 +0000)]
Apply ljb's patch to prevent both memory leak and core dump during
connection shutdown.  This is a grotty workaround for a Tcl bug, but
said bug has been there long enough that I'm not holding my breath
for a real fix.  Per discussions and testing from ljb and g.hintermayer.

21 years agoMake plpython's spi_execute interface handle NULLs properly.
Tom Lane [Fri, 31 Jan 2003 22:35:24 +0000 (22:35 +0000)]
Make plpython's spi_execute interface handle NULLs properly.
From Andrew Bosma.

21 years agoClean up plpython error reporting so that its regression test passes
Tom Lane [Fri, 31 Jan 2003 22:25:14 +0000 (22:25 +0000)]
Clean up plpython error reporting so that its regression test passes
with some amount of cleanliness.  I see no need to report the internal
Python name rather than the SQL procedure name in error tracebacks.

21 years agoTweak bison build rules so that we get the same error messages from
Tom Lane [Fri, 31 Jan 2003 20:58:00 +0000 (20:58 +0000)]
Tweak bison build rules so that we get the same error messages from
bison 1.875 and later as we did from earlier bison releases.  Eventually
we will probably want to adopt the newer message spelling ... but not yet.
Per recent discussion on pgpatches.
Note: I didn't change the build rules for bootstrap, ecpg, or plpgsql
grammars, since these do not affect regression test results.

21 years agoAllow a time zone to be specified (and silently ignored) in the input
Tom Lane [Fri, 31 Jan 2003 01:08:08 +0000 (01:08 +0000)]
Allow a time zone to be specified (and silently ignored) in the input
for type 'time without time zone', as we already did for type
'timestamp without time zone'.  This patch was proposed by Tom Lockhart
on 7-Nov-02, but he never got around to applying it.  Adjust regression
tests and documentation to match.

21 years agoHandle mixed-case names properly in plpgsql_parse_tripwordtype.
Tom Lane [Fri, 31 Jan 2003 00:31:53 +0000 (00:31 +0000)]
Handle mixed-case names properly in plpgsql_parse_tripwordtype.
From Neil Conway.

21 years agoFix typo, per Neil Conway.
Tom Lane [Fri, 31 Jan 2003 00:10:51 +0000 (00:10 +0000)]
Fix typo, per Neil Conway.

21 years agoFix regression in .pgpass support. From Neil Conway.
Tom Lane [Thu, 30 Jan 2003 19:49:54 +0000 (19:49 +0000)]
Fix regression in .pgpass support.  From Neil Conway.

21 years agoUpdate release history for 7.2.4.
Tom Lane [Wed, 29 Jan 2003 22:14:08 +0000 (22:14 +0000)]
Update release history for 7.2.4.

21 years agoSPI_exec shouldn't return SPI_OK_SELECT if it hasn't actually returned
Tom Lane [Wed, 29 Jan 2003 15:24:46 +0000 (15:24 +0000)]
SPI_exec shouldn't return SPI_OK_SELECT if it hasn't actually returned
a tuple table.  Fixes core dump in pltcl (and probably other PLs) when
executing a query rewritten by a rule.  Per bug report from Wolfgang Walter.

21 years agoUpdate release steps.
Bruce Momjian [Wed, 29 Jan 2003 03:41:54 +0000 (03:41 +0000)]
Update release steps.

21 years agoTweak ArrayCount() to forestall possible access to temp[-1]. Problem
Tom Lane [Wed, 29 Jan 2003 01:28:33 +0000 (01:28 +0000)]
Tweak ArrayCount() to forestall possible access to temp[-1].  Problem
cannot actually happen at present because ArrayCount() is only called
on strings beginning with '{', but seems best to prevent it going forward.
Per report from Yichen Xie.

21 years agoGuard against array overrun, per report from Yichen Xie. This case
Tom Lane [Wed, 29 Jan 2003 01:18:21 +0000 (01:18 +0000)]
Guard against array overrun, per report from Yichen Xie.  This case
can only occur if the constant DEFAULT_CLIENT_AUTHSVC is given a bogus
value, so it doesn't seem worth back-patching, but I'll fix it in HEAD.

21 years agoRepair array subscript overrun identified by Yichen Xie. Reduce the
Tom Lane [Wed, 29 Jan 2003 01:08:42 +0000 (01:08 +0000)]
Repair array subscript overrun identified by Yichen Xie.  Reduce the
value of MAX_TIME_PRECISION in floating-point-timestamp-storage case
from 13 to 10, which is as much as time_out is actually willing to print.
(The alternative of increasing the number of digits we are willing to
print looks risky; we might find ourselves printing roundoff garbage.)

21 years agoFix array subscript overruns identified by Yichen Xie.
Tom Lane [Wed, 29 Jan 2003 01:01:05 +0000 (01:01 +0000)]
Fix array subscript overruns identified by Yichen Xie.

21 years agoExtend join-selectivity API (oprjoin interface) so that join type is
Tom Lane [Tue, 28 Jan 2003 22:13:41 +0000 (22:13 +0000)]
Extend join-selectivity API (oprjoin interface) so that join type is
passed to join selectivity estimators.  Make use of this in eqjoinsel
to derive non-bogus selectivity for IN clauses.  Further tweaking of
cost estimation for IN.
initdb forced because of pg_proc.h changes.

21 years agoFactor out the code that detects the long long int snprintf format into a
Peter Eisentraut [Tue, 28 Jan 2003 21:57:12 +0000 (21:57 +0000)]
Factor out the code that detects the long long int snprintf format into a
separate macro.  Also add support for %I64d which is the way on Windows.

The code that checks for the 64-bit int type now gives more reasonable
results when cross-compiling: In that case we just take the compiler's
information and trust that the arithmetic works.  Disabling int64 is too
pessimistic.

21 years agoConvert variable name to canonical spelling before checking for matches
Tom Lane [Tue, 28 Jan 2003 18:04:02 +0000 (18:04 +0000)]
Convert variable name to canonical spelling before checking for matches
in GUCArrayAdd/GUCArrayDelete.  This prevents the multiple-entry bug
exhibited by Frank Lupo 28-Jan-2003.

21 years agoRevert off setting mention for client_min_messages.
Bruce Momjian [Tue, 28 Jan 2003 03:43:47 +0000 (03:43 +0000)]
Revert off setting mention for client_min_messages.

Set log_min_error_messages to the proper and agreed-upon default, PANIC
(off).  (BACKPATCH)

21 years agoRevert optimizer page count change.
Bruce Momjian [Tue, 28 Jan 2003 03:34:29 +0000 (03:34 +0000)]
Revert optimizer page count change.

21 years agoSet log_min_error_messages to the proper and agreed-upon default, PANIC (off).
Bruce Momjian [Mon, 27 Jan 2003 23:55:38 +0000 (23:55 +0000)]
Set log_min_error_messages to the proper and agreed-upon default, PANIC (off).

Backpatch to 7.3.X.