Tom Lane [Mon, 24 Jan 2005 02:48:15 +0000 (02:48 +0000)]
Fix memory leak in rtdosplit, per report from Clive Page.
Tom Lane [Sun, 23 Jan 2005 02:23:30 +0000 (02:23 +0000)]
The result of a FULL or RIGHT join can't be assumed to be sorted by the
left input's sorting, because null rows may be inserted at various points.
Per report from Ferenc Lutischá¸n.
Neil Conway [Fri, 21 Jan 2005 00:31:21 +0000 (00:31 +0000)]
Prevent overrunning a heap-allocated buffer if more than 1024 parameters
to a refcursor declaration are specified. This is a minimally-invasive fix
for the buffer overrun -- a more thorough cleanup will be checked into
HEAD.
Kris Jurka [Thu, 13 Jan 2005 14:22:23 +0000 (14:22 +0000)]
Fix mapping infinite timestamp values to arbitrary dates.
Report from Oliver Siegmar.
Tom Lane [Tue, 11 Jan 2005 18:34:01 +0000 (18:34 +0000)]
interval_out failed to mention 'ago' for negative intervals in SQL and
GERMAN datestyles. Ancient bug reported by Terry Lee Tucker.
Tom Lane [Thu, 23 Dec 2004 22:42:32 +0000 (22:42 +0000)]
Avoid memory leakage during VACUUM FULL when an index expression or
index predicate uses temporary memory for evaluation. Per example
from Jean-Gerard Pailloncy.
Tom Lane [Fri, 17 Dec 2004 21:00:07 +0000 (21:00 +0000)]
Make array_cat more paranoid about checking datatypes in empty arrays.
Tom Lane [Fri, 17 Dec 2004 20:58:36 +0000 (20:58 +0000)]
array_map failed to insert correct result type in an empty array.
Per example from Florian Pflug.
Tom Lane [Mon, 13 Dec 2004 00:33:18 +0000 (00:33 +0000)]
Avoid generating excess (and illegal) parentheses around an aliased JOIN
in prettyprint mode. Andreas Pflug
Tom Lane [Mon, 13 Dec 2004 00:17:52 +0000 (00:17 +0000)]
Back-patch copyOject fix for EXPLAIN/PREPARE.
Peter Eisentraut [Sat, 11 Dec 2004 20:08:49 +0000 (20:08 +0000)]
Translation update
Peter Eisentraut [Sat, 11 Dec 2004 19:51:53 +0000 (19:51 +0000)]
Translation update
Tom Lane [Fri, 3 Dec 2004 21:26:52 +0000 (21:26 +0000)]
Use StrNCpy not strncpy to fill hash key, to ensure the resulting key
is null-terminated. I think this is not a real bug because the parser
would always have truncated the identifier to NAMEDATALEN-1 already,
but let's be safe. Per report from Klocwork.
Peter Eisentraut [Fri, 3 Dec 2004 19:52:10 +0000 (19:52 +0000)]
Translation fix by Julien Cristau
Tom Lane [Thu, 2 Dec 2004 02:45:24 +0000 (02:45 +0000)]
Teach regex_fixed_prefix() the correct handling of advanced regex
escapes --- they aren't simply quoted characters. Problem noted by
Antti Salmela. Also fix problem with incorrect handling of multibyte
characters when followed by a quantifier.
Tom Lane [Wed, 1 Dec 2004 19:57:56 +0000 (19:57 +0000)]
Fix timestamptz_age() to do calculation in local timezone not GMT, per bug 1332.
Tom Lane [Sun, 28 Nov 2004 22:16:49 +0000 (22:16 +0000)]
Avoid scribbling on original parsetree during DECLARE CURSOR. This
prevents problems when the DECLARE is in a portal and is executed
repeatedly, as is possible in v3 protocol. Per analysis by Oliver
Jowett, though I didn't use his patch exactly.
Tom Lane [Wed, 24 Nov 2004 22:57:09 +0000 (22:57 +0000)]
Install Tcl regex fixes to sync our regex engine with Tcl 8.4.8 (up from
8.4.1). This corrects some curious regex bugs, though not the greediness
issue I was hoping to find a solution for :-(
Tom Lane [Wed, 24 Nov 2004 22:44:27 +0000 (22:44 +0000)]
Our interface code for Spencer's regexp package was checking for regexp
error conditions during regexp compile, but not during regexp execution;
any sort of "can't happen" errors would be treated as no-match instead
of being reported as they should be. Noticed while trying to duplicate
a reported Tcl bug.
Tom Lane [Thu, 18 Nov 2004 01:19:40 +0000 (01:19 +0000)]
Back-patch fix for ALTER DATABASE failing to flush pg_database changes
to disk right away. This is just a one-liner change rather than trying
to use FlushRelationBuffers().
Tom Lane [Wed, 17 Nov 2004 19:54:34 +0000 (19:54 +0000)]
Fix off-by-one memory allocation, as reported by Rod Taylor. Also
avoid repalloc'ing twice when once is sufficient.
Neil Conway [Wed, 17 Nov 2004 00:18:26 +0000 (00:18 +0000)]
Backpatch fix from HEAD:
Prevent a backend crash when processing CREATE TABLE commands with
more than 65K columns, or when the created table has more than 65K columns
due to adding inherited columns from parent relations. Fix a similar
crash when processing SELECT queries with more than 65K target list
entries. In all three cases we would eventually detect the error and
elog, but the check was being made too late.
Peter Eisentraut [Tue, 16 Nov 2004 22:49:24 +0000 (22:49 +0000)]
Translation update
Michael Meskes [Wed, 10 Nov 2004 13:49:17 +0000 (13:49 +0000)]
List VALUE as a keyword.
Tom Lane [Tue, 9 Nov 2004 20:35:16 +0000 (20:35 +0000)]
In PGSharedMemoryIsInUse, assume that EACCES indicates a shmem segment
that is of no concern to us --- it must belong to a different userid,
which means it is not a Postgres shmem segment (or at least,
not one that is relevant to our data directory). I plan a more extensive
fix in HEAD, but this is a simple change that prevents failure-to-reboot
problems for single-postmaster installations.
Tom Lane [Mon, 8 Nov 2004 01:54:58 +0000 (01:54 +0000)]
Fix unportable code in SockAddr_cidr_mask: you can't assume that
shifting left by full word width gives zero. Per bug report from
Tyson Thomson.
Dave Cramer [Mon, 1 Nov 2004 13:35:54 +0000 (13:35 +0000)]
fixed bug in REVOKE statement cat_str only has 8 arguments
Peter Eisentraut [Sat, 30 Oct 2004 08:22:17 +0000 (08:22 +0000)]
New translations
Tom Lane [Fri, 29 Oct 2004 22:20:03 +0000 (22:20 +0000)]
Rearrange order of pre-commit operations: must close cursors before doing
ON COMMIT actions. Per bug report from Michael Guerin.
Peter Eisentraut [Wed, 27 Oct 2004 11:52:05 +0000 (11:52 +0000)]
Translation update
Tom Lane [Fri, 22 Oct 2004 00:26:24 +0000 (00:26 +0000)]
Stamp release 7.4.6.
Tom Lane [Fri, 22 Oct 2004 00:24:27 +0000 (00:24 +0000)]
Prevent pg_ctl from being run as root. Since it uses configuration files
owned by postgres, doing "pg_ctl start" as root could allow a privilege
escalation attack, as pointed out by iDEFENSE. Of course the postmaster would
fail, but we ought to fail a little sooner to protect sysadmins unfamiliar
with Postgres. The chosen fix is to disable root use of pg_ctl in all cases,
just to be confident there are no other holes.
Tom Lane [Thu, 21 Oct 2004 22:49:04 +0000 (22:49 +0000)]
Update obsolete comments about COPY vs INSERT options, per Uwe Schroeder.
Kris Jurka [Thu, 21 Oct 2004 19:13:55 +0000 (19:13 +0000)]
Correctly cast the return value of a CallableStatement when getShort
is called. getByte presents a can't happen situation as no function
can return a TINYINT because pg doesn't have an equivalent type.
Make this throw an exception if we get to this point.
Thanks to Christian Niles.
Tom Lane [Thu, 21 Oct 2004 17:12:19 +0000 (17:12 +0000)]
Back-patch make_oidjoins_check security improvement.
Tom Lane [Wed, 13 Oct 2004 22:22:03 +0000 (22:22 +0000)]
Repair possible failure to update hint bits back to disk, per
http://archives.postgresql.org/pgsql-hackers/2004-10/msg00464.php.
I plan a more permanent fix in HEAD, but for the back branches it seems
best to just touch the places that actually have a problem.
Peter Eisentraut [Tue, 12 Oct 2004 17:54:24 +0000 (17:54 +0000)]
Translation update
Michael Meskes [Tue, 5 Oct 2004 10:48:45 +0000 (10:48 +0000)]
'::' is no longer interpreted as a variable in a prepare statement.
Tom Lane [Fri, 1 Oct 2004 21:09:46 +0000 (21:09 +0000)]
Convert pg_stat_get_backend_idset to use the existing SRF support.
This seems the cleanest way of fixing its lack of a shutdown callback,
which was preventing it from working correctly in a query that didn't
run it to completion. Per bug report from Szima GÄbor.
Peter Eisentraut [Mon, 27 Sep 2004 20:27:58 +0000 (20:27 +0000)]
Translation update
Tom Lane [Sun, 26 Sep 2004 00:26:56 +0000 (00:26 +0000)]
Repair bug that would allow libpq to think a command had succeeded when
it really hadn't, due to double output of previous command's response.
Fix prevents recursive entry to libpq routines. Found by Jan Wieck.
Peter Eisentraut [Mon, 20 Sep 2004 08:15:05 +0000 (08:15 +0000)]
Translation update
Peter Eisentraut [Mon, 20 Sep 2004 08:07:15 +0000 (08:07 +0000)]
Translation update
Tom Lane [Sat, 18 Sep 2004 15:28:16 +0000 (15:28 +0000)]
Put the brackets in the right places in timestamp entries in table 8-1.
Spotted by Josh Purinton.
Tom Lane [Sat, 18 Sep 2004 01:23:12 +0000 (01:23 +0000)]
Fix memory leak in tokenize_file, per report from Vadim Passynkov.
Tom Lane [Fri, 17 Sep 2004 18:29:10 +0000 (18:29 +0000)]
Hashed LEFT JOIN would miss outer tuples with no inner match if the join
was large enough to be batched and the tuples fell into a batch where
there were no inner tuples at all. Thanks to Xiaoyu Wang for finding a
test case that exposed this long-standing bug.
Peter Eisentraut [Mon, 13 Sep 2004 20:51:22 +0000 (20:51 +0000)]
Translation update
Kris Jurka [Mon, 13 Sep 2004 08:02:41 +0000 (08:02 +0000)]
Protected access to variable m_preparedCount via synchronized
function to prevent multiple threads using automatic cursors on
the same connection from stomping over each others cursor.
Originally Jan Wieck, re-reported by Jack Orenstein after
accidental removal.
Kris Jurka [Mon, 13 Sep 2004 07:14:26 +0000 (07:14 +0000)]
ResultSet.moveToCurrentRow was checking the cached updateability flag
assuming it had been set instead of correctly calling the
isUpdateable() method which sets the flag if needed. This usually
worked because moveToCurrentRow is only useful after a
moveToInsertRow call which would set the flag, but this is not
required.
David Bucciarelli
Neil Conway [Mon, 13 Sep 2004 01:59:35 +0000 (01:59 +0000)]
Due to popular domand, backport fix for a typo in the SELECT reference
page, per Thomas F. O'Connell.
Tom Lane [Sat, 11 Sep 2004 16:15:26 +0000 (16:15 +0000)]
Fix bogus example for bit-string XOR (already fixed in HEAD).
Per Grzegorz Wojdyla.
Tom Lane [Mon, 6 Sep 2004 18:23:09 +0000 (18:23 +0000)]
Back-patch fix to disallow BEGIN/COMMIT/ROLLBACK inside SQL functions.
Not sure why this isn't causing serious problems in some simple tests,
but it definitely isn't going to do anything desirable...
Tom Lane [Tue, 31 Aug 2004 23:16:36 +0000 (23:16 +0000)]
Repair 'expected both swapped tables to have TOAST tables' bug in 7.4
branch. I wasn't excited about doing this when the first report came in,
but now that we have two of 'em, I suppose it had better get fixed.
Bruce Momjian [Sat, 28 Aug 2004 21:10:00 +0000 (21:10 +0000)]
Prevent pg_ctl restart from adding -D datadir multiple times.
Tom Lane [Fri, 27 Aug 2004 17:47:56 +0000 (17:47 +0000)]
Make gistindex_keytest safe against NULL values. Same fix was already
made in passing for 8.0, but now that we have a bug report showing it's
needed, we should put it into 7.4 branch.
Peter Eisentraut [Tue, 24 Aug 2004 21:45:13 +0000 (21:45 +0000)]
Translation update
Tom Lane [Wed, 18 Aug 2004 03:11:25 +0000 (03:11 +0000)]
Brand 7.4.5 ... now that was our shortest-lived release ever ...
Tom Lane [Wed, 18 Aug 2004 03:03:49 +0000 (03:03 +0000)]
Update release history for 7.4.5.
Tom Lane [Tue, 17 Aug 2004 23:16:07 +0000 (23:16 +0000)]
Fix bug introduced into _bt_getstackbuf() on 2003-Feb-21: the initial
value of 'start' could be past the end of the page, if the page was
split by some concurrent inserting process since we visited it. In
this situation the code could look at bogus entries and possibly find
a match (since after all those entries still contain what they had
before the split). This would lead to 'specified item offset is too large'
followed by 'PANIC: failed to add item to the page', as reported by Joe
Conway for scenarios involving heavy concurrent insertion activity.
Tom Lane [Sun, 15 Aug 2004 00:24:04 +0000 (00:24 +0000)]
Stamp 7.4.4.
Tom Lane [Sat, 14 Aug 2004 22:24:49 +0000 (22:24 +0000)]
Back-patch fix for \r\n line endings in psql's COPY support.
Andrew Dunstan.
Peter Eisentraut [Sat, 14 Aug 2004 19:14:28 +0000 (19:14 +0000)]
Translation update
Peter Eisentraut [Fri, 13 Aug 2004 16:42:51 +0000 (16:42 +0000)]
Translation update
Kris Jurka [Fri, 13 Aug 2004 05:18:45 +0000 (05:18 +0000)]
New build for the 7.4.4 release.
Tom Lane [Wed, 11 Aug 2004 21:10:52 +0000 (21:10 +0000)]
Avoid crashing when restoring a saved GUC session_authorization value
that refers to a now-deleted userid. Per gripe from Chris Ochs.
Kris Jurka [Wed, 11 Aug 2004 06:56:00 +0000 (06:56 +0000)]
Decode V3 notice messages instead of leaving them in raw form.
From Donald Fraser.
Kris Jurka [Wed, 11 Aug 2004 06:40:16 +0000 (06:40 +0000)]
DatabaseMetaData.getSearchString escape was a \ short of working
because both Java's String constructor and pg's input parser strip
off backslashes.
Tom Lane [Wed, 11 Aug 2004 04:08:02 +0000 (04:08 +0000)]
Fix failure to guarantee that a checkpoint will write out pg_clog updates
for transaction commits that occurred just before the checkpoint. This is
an EXTREMELY serious bug --- kudos to Satoshi Okada for creating a
reproducible test case to prove its existence.
Joe Conway [Wed, 11 Aug 2004 01:02:08 +0000 (01:02 +0000)]
Hashed crosstab was dying with an SPI_finish error when the source SQL
produced no rows. Now it returns 0 rows instead. Adjusted regression
test for this case.
Peter Eisentraut [Tue, 10 Aug 2004 18:37:53 +0000 (18:37 +0000)]
Translation update
Peter Eisentraut [Sun, 25 Jul 2004 11:49:20 +0000 (11:49 +0000)]
Change declared encoding
Peter Eisentraut [Sun, 25 Jul 2004 11:44:57 +0000 (11:44 +0000)]
New translation
Michael Meskes [Tue, 20 Jul 2004 18:22:53 +0000 (18:22 +0000)]
Fixed handling of cyclic defines.
Tom Lane [Mon, 19 Jul 2004 21:02:42 +0000 (21:02 +0000)]
Fix incorrect tracking of session authorization in the presence of ACLs
that contain rights granted by non-owners. Per bug report from
Nishad Prakash.
Tom Lane [Sat, 17 Jul 2004 17:28:47 +0000 (17:28 +0000)]
When renaming a column that participates in a foreign key, we must
force relcache rebuild for the other table as well as the column's
own table. Otherwise, already-cached foreign key triggers will stop
working. Per example from Alexander Pravking.
Kris Jurka [Thu, 15 Jul 2004 10:00:20 +0000 (10:00 +0000)]
When retrieving an array of numerics it attempted to set the scale on
the retrieved data to zero, which doesn't work for non-integer values.
Oliver Dauben
Tom Lane [Sat, 10 Jul 2004 18:39:44 +0000 (18:39 +0000)]
Test HAVING condition before computing targetlist of an Aggregate node.
This is required by SQL spec to avoid failures in cases like
SELECT sum(win)/sum(lose) FROM ... GROUP BY ... HAVING sum(lose) > 0;
AFAICT we have gotten this wrong since day one. Kudos to Holger Jakobs
for being the first to notice.
Bruce Momjian [Thu, 8 Jul 2004 18:25:22 +0000 (18:25 +0000)]
OK, another try at Darwin threads.
Bruce Momjian [Thu, 8 Jul 2004 16:27:58 +0000 (16:27 +0000)]
Remove OSX thread flags. No consistent report.
Bruce Momjian [Wed, 7 Jul 2004 13:04:48 +0000 (13:04 +0000)]
Add OSX thread support for next 7.4.X
Tom Lane [Tue, 6 Jul 2004 04:50:54 +0000 (04:50 +0000)]
Fix broken logic for pretty-printing parenthesis-suppression in UNION
et al.
Michael Meskes [Mon, 5 Jul 2004 18:54:01 +0000 (18:54 +0000)]
Added free() calls against memory leak in interval.c.
Peter Eisentraut [Fri, 2 Jul 2004 15:02:29 +0000 (15:02 +0000)]
Translation update
Peter Eisentraut [Tue, 29 Jun 2004 20:46:35 +0000 (20:46 +0000)]
Override upstream DSSSL style sheet formatting changes
Michael Meskes [Sun, 27 Jun 2004 12:32:47 +0000 (12:32 +0000)]
- Only use typedefs inside their scope.
- Variables that are out of scope, were not removed all the time.
- Make a varchar NULL set everything to 0 when not using indicators.
Kris Jurka [Thu, 24 Jun 2004 09:51:44 +0000 (09:51 +0000)]
Fix apparently harmless typo. {$srcdir} -> ${srcdir}
Markus Schaber
Teodor Sigaev [Wed, 23 Jun 2004 10:03:57 +0000 (10:03 +0000)]
Fix stupid bug in installcheck
Kris Jurka [Tue, 22 Jun 2004 09:37:03 +0000 (09:37 +0000)]
Close the existing socket connection when reverting to the V2
protocol, or encountering other connection failures.
Laurent Sylvain
Kris Jurka [Mon, 21 Jun 2004 03:12:01 +0000 (03:12 +0000)]
Fix some problems with result sets positioned before the start or
after the end of results. You could still call a number of methods
on them like getXXX, updateXXX, and updateRow().
Kris Jurka [Mon, 21 Jun 2004 02:01:12 +0000 (02:01 +0000)]
Fix updatable ResultSets stream methods (ascii, character, binary).
The existing code didn't correctly allocate data arrays, and it
failed to loop when a stream didn't provide the full amount of
data requested of it.
Reported by Jan de Visser.
Kris Jurka [Fri, 18 Jun 2004 05:29:11 +0000 (05:29 +0000)]
Foreign key information results should have column name FKTABLE_CAT
instead of FK_TABLE_CAT.
From jeff@bonevich.com.
Michael Meskes [Thu, 17 Jun 2004 11:52:59 +0000 (11:52 +0000)]
Added patch by ISHIDA Akio to allow indicators in execute statements.
Kris Jurka [Wed, 16 Jun 2004 18:28:45 +0000 (18:28 +0000)]
Don't throw an Exception in locatorsUpdateCopy() even though the
ability to update LOBs is unimplemented. The 1.5 JDK's CachedRowSet
implementation calls this method regardless of whether large objects
are used or not.
Kris Jurka [Wed, 16 Jun 2004 05:23:33 +0000 (05:23 +0000)]
Bump the build number to relase a new version.
Kris Jurka [Wed, 16 Jun 2004 05:12:13 +0000 (05:12 +0000)]
When deleteRow() is called on an updateable ResultSet the ResultSet
should be positioned on the previous row.
Reported by Bob Messenger and Chris Pesarchick.
Bruce Momjian [Wed, 16 Jun 2004 03:47:35 +0000 (03:47 +0000)]
Do PGAC_FUNC_GETPWUID_R_5ARG check with the proper thread flags. This
fixes Solaris thread compiles.
Kris Jurka [Wed, 16 Jun 2004 03:36:56 +0000 (03:36 +0000)]
Fix DatabaseMetaData results for determining foreign key
relationships. Resulting columns from getImportedExportedKeys should
be FKTABLE_SCHEM and PKTABLE_SCHEM, not _SCHEMA.
Per report from jeff@bonevich.com.
Peter Eisentraut [Sun, 13 Jun 2004 21:50:04 +0000 (21:50 +0000)]
Remove README.CVS when making a distribution.
Peter Eisentraut [Sun, 13 Jun 2004 21:41:20 +0000 (21:41 +0000)]
Translation update
Tom Lane [Sun, 13 Jun 2004 17:51:16 +0000 (17:51 +0000)]
Correct erroneous table title, per Halley Pacheco de Oliveira.