OSDN Git Service
Dave Cramer [Thu, 5 Dec 2002 01:11:43 +0000 (01:11 +0000)]
changed sort of column names to sort by attnum, not attname
Bruce Momjian [Wed, 4 Dec 2002 21:43:07 +0000 (21:43 +0000)]
Update docs mention of query string for debug_ commands, from Joseph
Shraibman.
Tom Lane [Wed, 4 Dec 2002 20:00:37 +0000 (20:00 +0000)]
Repair oversight in recent change of dependency extraction code: when
recursing to handle a join alias var, the context had better be set to
be appropriate to the join var's query level. Per report from Hristo Neshev.
Bruce Momjian [Wed, 4 Dec 2002 18:23:47 +0000 (18:23 +0000)]
Add:
> * Add ALTER SEQUENCE to modify min/max/increment/cache/cycle values
Bruce Momjian [Wed, 4 Dec 2002 18:14:11 +0000 (18:14 +0000)]
Stamp minor version numbers for 7.4 release.
D'Arcy J.M. Cain [Wed, 4 Dec 2002 12:23:42 +0000 (12:23 +0000)]
Remove typprtlen from getdescr() as it is not available in 7.3. Return -1 for
that field so that existing programs don't break.
Bruce Momjian [Wed, 4 Dec 2002 05:18:38 +0000 (05:18 +0000)]
Make usesysid consistently int4, not oid.
Catalog patch from Alvaro Herrera for same.
catversion updated. initdb required.
Bruce Momjian [Tue, 3 Dec 2002 22:10:47 +0000 (22:10 +0000)]
Done:
> * -Add OpenBSD's getpeereid() call for local socket authentication
Bruce Momjian [Tue, 3 Dec 2002 22:09:20 +0000 (22:09 +0000)]
Deal with cases where getpeereid _and_ another creditial method is
supported.
Bruce Momjian [Tue, 3 Dec 2002 21:50:44 +0000 (21:50 +0000)]
Add OpenBSD local indent credentials, from William Ahern.
Bruce Momjian [Tue, 3 Dec 2002 17:38:34 +0000 (17:38 +0000)]
Updated:
< * Add sql3 recursive unions
> * Add SQL99 WITH clause to SELECT
> * Add SQL99 WITH RECURSIVE to SELECT
Tom Lane [Tue, 3 Dec 2002 07:12:18 +0000 (07:12 +0000)]
Fix off-by-one bug in usage check.
Bruce Momjian [Mon, 2 Dec 2002 05:42:36 +0000 (05:42 +0000)]
Add for D'Arcy:
> * Python
> o Allow users to register their own types with _pg
> o Allow SELECT to return a dictionary of dictionaries
> o Allow COPY BINARY FROM
Tom Lane [Mon, 2 Dec 2002 05:20:47 +0000 (05:20 +0000)]
Repair core dump when trying to delete an entry from an already-NULL
datconfig or useconfig field. Per report from Dustin Sallings.
Tom Lane [Mon, 2 Dec 2002 00:29:01 +0000 (00:29 +0000)]
Fix script name in README.
Tom Lane [Mon, 2 Dec 2002 00:28:29 +0000 (00:28 +0000)]
Fix dependency generation for multicolumn foreign keys. From Adam Buraczewski.
Bruce Momjian [Sun, 1 Dec 2002 21:28:01 +0000 (21:28 +0000)]
Done in 7.3, so removed:
< o Allow psql \copy to specify column names
199d197
< o Add SET REAL_FORMAT and SET DOUBLE_PRECISION_FORMAT using printf args
Bruce Momjian [Sun, 1 Dec 2002 21:20:45 +0000 (21:20 +0000)]
Done:
> * -Inline simple SQL functions to avoid overhead (Tom)
Tom Lane [Sun, 1 Dec 2002 21:05:14 +0000 (21:05 +0000)]
Teach planner to expand sufficiently simple SQL-language functions
('SELECT expression') inline, like macros, during the constant-folding
phase of planning. The actual expansion is not difficult, but checking
that we're not changing the semantics of the call turns out to be more
subtle than one might think; in particular must pay attention to
permissions issues, strictness, and volatility.
Tom Lane [Sun, 1 Dec 2002 20:27:32 +0000 (20:27 +0000)]
Fix ExecMakeTableFunctionResult() to work with generic expressions as
well as function calls. This is needed for cases where the planner has
constant-folded or inlined the original function call. Possibly we should
back-patch this change into 7.3 branch as well.
Tom Lane [Sun, 1 Dec 2002 18:44:00 +0000 (18:44 +0000)]
Fix pg_dump failure against 7.1 or older servers, per
report from Philip Warner.
Tom Lane [Sun, 1 Dec 2002 18:14:22 +0000 (18:14 +0000)]
Run COPY OUT in a temporary memory context that's reset once per row,
and eliminate its manual pfree() calls. This solves the encoding-conversion
bug recently reported, and should be faster and more robust than the
original coding anyway. For example, we are no longer at risk if
datatype output routines leak memory or choose to return a constant string.
Tom Lane [Sat, 30 Nov 2002 21:25:08 +0000 (21:25 +0000)]
Code review for IS DISTINCT FROM patch. Fix incorrect constant-folding
logic, dissuade planner from thinking that 'x IS DISTINCT FROM 42' may
be optimized into 'x = 42' (!!), cause dependency on = operator to be
recorded correctly, minor other improvements.
Tom Lane [Sat, 30 Nov 2002 18:28:49 +0000 (18:28 +0000)]
Missed one place that can be simplified after recent Param/Const cleanup.
Tom Lane [Sat, 30 Nov 2002 05:21:03 +0000 (05:21 +0000)]
Be more realistic about plans involving Materialize nodes: take their
cost into account while planning.
Tom Lane [Sat, 30 Nov 2002 00:22:39 +0000 (00:22 +0000)]
Make install and clean targets behave more normally.
Tom Lane [Sat, 30 Nov 2002 00:08:22 +0000 (00:08 +0000)]
Upgrade planner and executor to allow multiple hash keys for a hash join,
instead of only one. This should speed up planning (only one hash path
to consider for a given pair of relations) as well as allow more effective
hashing, when there are multiple hashable joinclauses.
Tom Lane [Fri, 29 Nov 2002 21:39:12 +0000 (21:39 +0000)]
Tighten selection of equality and ordering operators for grouping
operations: make sure we use operators that are compatible, as determined
by a mergejoin link in pg_operator. Also, add code to planner to ensure
we don't try to use hashed grouping when the grouping operators aren't
marked hashable.
Tom Lane [Fri, 29 Nov 2002 19:25:33 +0000 (19:25 +0000)]
Repair prehistoric logic error in lseg_eq and lseg_ne.
Tom Lane [Fri, 29 Nov 2002 19:03:01 +0000 (19:03 +0000)]
Suppress compiler warning from newer gcc.
Bruce Momjian [Fri, 29 Nov 2002 16:38:42 +0000 (16:38 +0000)]
This patch fixes two tiny memory leaks in pg_dump and two in pg_dumpall.
Neil Conway
Bruce Momjian [Thu, 28 Nov 2002 20:05:13 +0000 (20:05 +0000)]
Add trigger emails.
Tom Lane [Wed, 27 Nov 2002 23:21:12 +0000 (23:21 +0000)]
rm should be rm -f, per comment from Peter Harris.
(Checked with Peter Eisentraut.)
Tom Lane [Wed, 27 Nov 2002 20:52:04 +0000 (20:52 +0000)]
Improve some comments.
Tom Lane [Wed, 27 Nov 2002 19:26:10 +0000 (19:26 +0000)]
Add note that scaling factor should be >= # of clients.
Michael Meskes [Wed, 27 Nov 2002 08:30:27 +0000 (08:30 +0000)]
Synced parser with backend
Bruce Momjian [Tue, 26 Nov 2002 22:05:49 +0000 (22:05 +0000)]
Move to URGENT, for Justin:
< * Create native Win32 port [win32]
Bruce Momjian [Tue, 26 Nov 2002 22:04:03 +0000 (22:04 +0000)]
Recreate HISTORY file to match release.sgml changes. Stamp 7.3 final in
configure/configure.in.
Bruce Momjian [Tue, 26 Nov 2002 21:38:49 +0000 (21:38 +0000)]
Add -cmdTuples to tcl interface.
Bruce Momjian [Tue, 26 Nov 2002 19:43:53 +0000 (19:43 +0000)]
Update trigger discussion.
Bruce Momjian [Tue, 26 Nov 2002 19:22:16 +0000 (19:22 +0000)]
Update build rules for /HISTORY.
Bruce Momjian [Tue, 26 Nov 2002 18:54:26 +0000 (18:54 +0000)]
Add to trigger thread.
Bruce Momjian [Tue, 26 Nov 2002 05:16:59 +0000 (05:16 +0000)]
Fix typo in release notes.
Bruce Momjian [Tue, 26 Nov 2002 03:08:00 +0000 (03:08 +0000)]
Allocate proper length for sprintf string, from Tatsuo.
Tom Lane [Tue, 26 Nov 2002 03:01:59 +0000 (03:01 +0000)]
Use Params, rather than run-time-modified Const nodes, to handle
sublink results and COPY's domain constraint checking. A Const that
isn't really constant is just a Bad Idea(tm). Remove hacks in
parse_coerce and other places that were needed because of the former
klugery.
Tatsuo Ishii [Tue, 26 Nov 2002 02:22:29 +0000 (02:22 +0000)]
Guard against 0 length string encoding conversion case.
Bruce Momjian [Mon, 25 Nov 2002 21:41:46 +0000 (21:41 +0000)]
Remove check for pg_group file as part of initdb -W password assignment
--- not needed.
Tom Lane [Mon, 25 Nov 2002 21:29:42 +0000 (21:29 +0000)]
Remove unused constisset and constiscast fields of Const nodes. Clean
up code and documentation associated with Param nodes.
Tom Lane [Mon, 25 Nov 2002 18:12:12 +0000 (18:12 +0000)]
Restructure outfuncs and readfuncs to use macros in the same style as
just done for copyfuncs/equalfuncs. Read functions in particular get
a lot shorter than before, and it's much easier to compare an out function
with the corresponding read function to make sure they agree.
initdb forced due to small changes in nodestring format (regularizing
a few cases that were formerly idiosyncratic).
Tom Lane [Mon, 25 Nov 2002 03:36:50 +0000 (03:36 +0000)]
Un-break triggers declared for INSERT OR DELETE OR UPDATE. This worked
okay in 7.3, so I think it must have been busted in the recent triggers
patch.
Tom Lane [Mon, 25 Nov 2002 03:33:27 +0000 (03:33 +0000)]
Restructure the code in copyfuncs and equalfuncs to put much heavier
reliance on macros, in hopes of eliminating silly typos (like copying
to the wrong field) and just generally making it easier to see the forest
instead of the trees. As an example, here is the new code for A_Indices:
static A_Indices *
_copyAIndices(A_Indices *from)
{
A_Indices *newnode = makeNode(A_Indices);
COPY_NODE_FIELD(lidx);
COPY_NODE_FIELD(uidx);
return newnode;
}
static bool
_equalAIndices(A_Indices *a, A_Indices *b)
{
COMPARE_NODE_FIELD(lidx);
COMPARE_NODE_FIELD(uidx);
return true;
}
I plan to redo outfuncs/readfuncs in a similar style, but am committing
what I've got.
D'Arcy J.M. Cain [Mon, 25 Nov 2002 03:11:15 +0000 (03:11 +0000)]
I'm sending you a small patch to pgdb.py module. This
raises pgdb.DatabaseError when any of the fetch*
methods was invoked but previous call to execute* did
not produce any result set or no call was issued yet.
Also, raises pgdb.NotSupportedError when .nextset() is
invoked, instead of NameError.
This behaviour complies with DB-API 2.0.
Thanks for your work!
Timur Irmatov.
D'Arcy J.M. Cain [Mon, 25 Nov 2002 02:15:13 +0000 (02:15 +0000)]
Change the pkey method so that the caller can optionally set the dictionary
used for the primary key lookup. This will prevent a database lookup
for each connection object that gets created. This could be a significant
optimization on a busy system.
Similarly, the get_attnames method allows for the attributes dictionary
to be installed directly.
D'Arcy J.M. Cain [Mon, 25 Nov 2002 01:28:32 +0000 (01:28 +0000)]
Change the debug variable to allow better control by the caller over how
debug output is managed. The user can continue to use the current method
of passing a formatting string to have a replacement done and output will
be sent to the standard output exactly as it did before. In addition they
can set it to a file object, sys.stderr for example, and the query string
will be printed to it. Thay can also set it to a method (function) and the
query string will be passed to that method giving them the maximum flexibility
to do whatever they want with the query string.
I will be working with the PyGreSQL documentation shortly and at that time
will properly document this feature.
Tom Lane [Sun, 24 Nov 2002 21:52:15 +0000 (21:52 +0000)]
Restructure planning of nestloop inner indexscans so that the set of usable
joinclauses is determined accurately for each join. Formerly, the code only
considered joinclauses that used all of the rels from the outer side of the
join; thus for example
FROM (a CROSS JOIN b) JOIN c ON (c.f1 = a.x AND c.f2 = b.y)
could not exploit a two-column index on c(f1,f2), since neither of the
qual clauses would be in the joininfo list it looked in. The new code does
this correctly, and also is able to eliminate redundant clauses, thus fixing
the problem noted 24-Oct-02 by Hans-Jürgen Schönig.
Bruce Momjian [Sun, 24 Nov 2002 03:15:55 +0000 (03:15 +0000)]
7.4devel now supports SQL:1999's "enhanced trigger capability" (which
is just FOR EACH STATEMENT triggers, AFAICS); this patch updates the
SQL conformance docs to note that.
Neil Conway
Bruce Momjian [Sun, 24 Nov 2002 03:14:01 +0000 (03:14 +0000)]
Split:
> * -Support statement-level triggers (Neil)
> * Support triggers on columns (Neil)
Tom Lane [Sat, 23 Nov 2002 18:59:25 +0000 (18:59 +0000)]
Fix inappropriate quoting in dblink. From Joe Conway.
Tom Lane [Sat, 23 Nov 2002 18:42:37 +0000 (18:42 +0000)]
Fix regression test breakage from triggers patch.
Tom Lane [Sat, 23 Nov 2002 18:26:45 +0000 (18:26 +0000)]
Fix compile warnings from truncate patch.
Bruce Momjian [Sat, 23 Nov 2002 18:13:22 +0000 (18:13 +0000)]
Update regression for new patches. Bump up catversion.
Bruce Momjian [Sat, 23 Nov 2002 04:06:32 +0000 (04:06 +0000)]
Heres a patch which will create the sql_help.h file on Win32 if it
doesn't already exist using an installed copy of perl. I've tested it
using perl v5.6.1 from ActiveState and all appears to work.
Al Sutton
Bruce Momjian [Sat, 23 Nov 2002 04:05:52 +0000 (04:05 +0000)]
Transaction safe Truncate
Rod Taylor
Bruce Momjian [Sat, 23 Nov 2002 04:04:43 +0000 (04:04 +0000)]
This minor patch corrects an error in the function docs: it's
"version()", not "version".
Neil Conway
Bruce Momjian [Sat, 23 Nov 2002 03:59:09 +0000 (03:59 +0000)]
This patch implements FOR EACH STATEMENT triggers, per my email to
-hackers a couple days ago.
Notes/caveats:
- added regression tests for the new functionality, all
regression tests pass on my machine
- added pg_dump support
- updated PL/PgSQL to support per-statement triggers; didn't
look at the other procedural languages.
- there's (even) more code duplication in trigger.c than there
was previously. Any suggestions on how to refactor the
ExecXXXTriggers() functions to reuse more code would be
welcome -- I took a brief look at it, but couldn't see an
easy way to do it (there are several subtly-different
versions of the code in question)
- updated the documentation. I also took the liberty of
removing a big chunk of duplicated syntax documentation in
the Programmer's Guide on triggers, and moving that
information to the CREATE TRIGGER reference page.
- I also included some spelling fixes and similar small
cleanups I noticed while making the changes. If you'd like
me to split those into a separate patch, let me know.
Neil Conway
Bruce Momjian [Sat, 23 Nov 2002 03:52:44 +0000 (03:52 +0000)]
Done:
> * -Support statement-level triggers and triggers on columns (Neil)
Bruce Momjian [Sat, 23 Nov 2002 03:50:50 +0000 (03:50 +0000)]
When I made the cube(text) function for 7.3, I neglected to add a
matching create cast command. The attached diff adds a create cast as
assignment to cube.sql.in .
Bruno Wolff III
Tom Lane [Sat, 23 Nov 2002 03:50:34 +0000 (03:50 +0000)]
Update ports list from recent regression-test-database entries.
Bruce Momjian [Sat, 23 Nov 2002 03:50:21 +0000 (03:50 +0000)]
This is a patch to make cube output work like double precision output
with regard to the extra_float_digits setting.
Since builtins.h was already included, I just deleted the extern
statement (and accompaning comments).
Bruno Wolff III
Tom Lane [Sat, 23 Nov 2002 02:41:03 +0000 (02:41 +0000)]
Release note improvements (Neil, Tom)
Tom Lane [Sat, 23 Nov 2002 01:54:09 +0000 (01:54 +0000)]
Remove inappropriate double-quoting in connectby() code; adjust
regression test to avoid using VALUE as a name. From Joe Conway.
Tom Lane [Fri, 22 Nov 2002 22:10:01 +0000 (22:10 +0000)]
Redesign internal logic of nodeLimit so that it does not need to fetch
one more row from the subplan than the COUNT would appear to require.
This costs a little more logic but a number of people have complained
about the old implementation.
Tom Lane [Fri, 22 Nov 2002 16:25:32 +0000 (16:25 +0000)]
Fix a dozen or so places that were passing unpredictable data strings
as elog format strings. Hai-Chen Tu pointed out the problem in
contrib/dbmirror, but it wasn't the only such error.
Bruce Momjian [Fri, 22 Nov 2002 16:04:41 +0000 (16:04 +0000)]
Fix elog in dbmirror to use %s.
Hai-Chen Tu
Tom Lane [Fri, 22 Nov 2002 03:09:43 +0000 (03:09 +0000)]
Quote database name properly when invoking pg_dump. Per report from
Christopher Kings-Lynne.
Tom Lane [Fri, 22 Nov 2002 01:13:16 +0000 (01:13 +0000)]
TAS code originally written for s390 (32-bit) does not work for s390x
(64-bit). Fix it. Per report from Permaine Cheung.
Peter Eisentraut [Thu, 21 Nov 2002 23:34:43 +0000 (23:34 +0000)]
Fixups for man pages
Peter Eisentraut [Thu, 21 Nov 2002 23:33:22 +0000 (23:33 +0000)]
Regenerate
Tom Lane [Thu, 21 Nov 2002 23:31:20 +0000 (23:31 +0000)]
Fix breakage in new-in-7.3 timetz_zone() function: was giving random
results due to doing arithmetic on uninitialized values. Add some
documentation about the AT TIME ZONE construct. Update some other
date/time documentation that seemed out of date for 7.3.
Tom Lane [Thu, 21 Nov 2002 22:26:02 +0000 (22:26 +0000)]
Wups, stuck ORDER BY on wrong query while trying to eliminate random
ordering of GROUP BY output due to hash-based aggregation.
Bruce Momjian [Thu, 21 Nov 2002 19:15:04 +0000 (19:15 +0000)]
Add:
> * Have sequence dependency track use of DEFAULT sequences, seqname.nextval
Bruce Momjian [Thu, 21 Nov 2002 18:19:51 +0000 (18:19 +0000)]
Add mention of kern.ipc.shm_use_phys for locking shared memory.
Tom Lane [Thu, 21 Nov 2002 06:36:08 +0000 (06:36 +0000)]
Code review for superuser_reserved_connections patch. Don't try to do
database access outside a transaction; revert bogus performance improvement
in SIBackendInit(); improve comments; add documentation (this part courtesy
Neil Conway).
Tom Lane [Thu, 21 Nov 2002 04:40:26 +0000 (04:40 +0000)]
NetBSD versions 1.6 and (we hope) later can use the standard geometry
comparison file, instead of geometry-positive-zeros. Per report from
Patrick Welche.
Bruce Momjian [Thu, 21 Nov 2002 01:02:34 +0000 (01:02 +0000)]
Done:
> * -Add hash for evaluating GROUP BY aggregates (Tom)
Tom Lane [Thu, 21 Nov 2002 00:42:20 +0000 (00:42 +0000)]
Finish implementation of hashed aggregation. Add enable_hashagg GUC
parameter to allow it to be forced off for comparison purposes.
Add ORDER BY clauses to a bunch of regression test queries that will
otherwise produce randomly-ordered output in the new regime.
Bruce Momjian [Wed, 20 Nov 2002 22:01:57 +0000 (22:01 +0000)]
Update ports list.
Barry Lind [Wed, 20 Nov 2002 20:37:53 +0000 (20:37 +0000)]
Fix a dumb cut and paste error from my last commit and update some of the
jdbc3 metadata responses
Modified Files:
jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
jdbc/org/postgresql/jdbc3/AbstractJdbc3DatabaseMetaData.java
Barry Lind [Wed, 20 Nov 2002 07:34:32 +0000 (07:34 +0000)]
Fixed bug reported by Marko Strukelj and Keith Wannamaker. Using executeBatch
on a preparedStatement would reset the prepared statment causing subsequent
uses of the preparedStatement to fail (i.e. the following series of calls
would fail: addBatch() executeBatch() addBatch() executBatch()). This is
a regression from 7.2 where this worked correctly. The regression test has
also been modified to explicitly test for this case.
Modified Files:
jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
jdbc/org/postgresql/test/jdbc2/BatchExecuteTest.java
Tom Lane [Tue, 19 Nov 2002 23:22:00 +0000 (23:22 +0000)]
Add an at-least-marginally-plausible method of estimating the number
of groups produced by GROUP BY. This improves the accuracy of planning
estimates for grouped subselects, and is needed to check whether a
hashed aggregation plan risks memory overflow.
Bruce Momjian [Tue, 19 Nov 2002 20:35:13 +0000 (20:35 +0000)]
Add my name:
> * Allow savepoints / nested transactions [transactions] (Bruce)
Bruce Momjian [Tue, 19 Nov 2002 17:39:00 +0000 (17:39 +0000)]
Update regression for ALL missing from CLUSTER.
Bruce Momjian [Tue, 19 Nov 2002 17:21:40 +0000 (17:21 +0000)]
Most of the code follows the American spelling of the word, which is
"canceled", so I changed the one remaining usage of the British
spelling ("cancelled") over to the former, and updated the translation
files appropriately.
Neil Conway
Bruce Momjian [Tue, 19 Nov 2002 17:17:48 +0000 (17:17 +0000)]
Back out NetBSD/arm32 port.
Bruce Momjian [Tue, 19 Nov 2002 16:40:05 +0000 (16:40 +0000)]
Update ports list.
Peter Eisentraut [Mon, 18 Nov 2002 18:10:59 +0000 (18:10 +0000)]
Fix typo and markup.
Bruce Momjian [Mon, 18 Nov 2002 17:15:27 +0000 (17:15 +0000)]
Update SGML problem in ports.
Bruce Momjian [Mon, 18 Nov 2002 17:12:07 +0000 (17:12 +0000)]
Remove ALL from CLUSTER ALL. Use just CLUSTER.
Bruce Momjian [Mon, 18 Nov 2002 05:02:08 +0000 (05:02 +0000)]
Update ports list.
Tom Lane [Mon, 18 Nov 2002 01:17:39 +0000 (01:17 +0000)]
Put back error test for DECLARE CURSOR outside a transaction block ...
but do it correctly now.