Tom Lane [Tue, 2 Mar 2004 00:03:08 +0000 (00:03 +0000)]
Replace unportable use of /dev/stdin with lynx's -stdin switch.
Tom Lane [Sun, 29 Feb 2004 17:36:48 +0000 (17:36 +0000)]
make_sort_from_pathkeys()'s method for choosing which of several
equivalent sort expressions to use was broken: you can't just look
at the relation membership, you have to actually grovel over the
individual Vars in each expression. I think this did work when it
was written, but it was broken by subsequent optimizations that made
join relations not propagate every single input variable upward.
Must find the Var that got propagated, not choose one at random.
Per bug report from Daniel O'Neill.
Dennis Bjorklund [Sat, 28 Feb 2004 11:16:58 +0000 (11:16 +0000)]
Translation updates
Tom Lane [Fri, 27 Feb 2004 21:44:44 +0000 (21:44 +0000)]
genericcostestimate() neglected to include qual startup cost in
indexTotalCost. I think this may not make any real difference in 7.4,
but it definitely is a problem with CVS tip's new equation.
Tom Lane [Fri, 27 Feb 2004 21:42:10 +0000 (21:42 +0000)]
process_implied_equality must copy the substructure of the clauses it
is generating, to avoid problems when subselects are involved. Per
report from Damon Hart.
Tom Lane [Tue, 24 Feb 2004 22:59:22 +0000 (22:59 +0000)]
anyarray really needs to be declared with typalign = 'd', so that entries
in pg_statistic are correctly aligned if they contain values that require
double alignment. Too bad we cannot force initdb for this in 7.4 branch.
Michael Meskes [Tue, 24 Feb 2004 16:09:16 +0000 (16:09 +0000)]
- Corrected error handling in PGTYPEStimestamp_from_asc.
- Set pgtypeslib version to 1.2.
Kris Jurka [Tue, 24 Feb 2004 13:11:45 +0000 (13:11 +0000)]
Closing a Connection or Statement object twice should be a no-op
instead of throwing an Exception.
Per report from Victor Sergienko.
Joe Conway [Tue, 24 Feb 2004 06:07:34 +0000 (06:07 +0000)]
When returning type "record", replace use of pgresultGetTupleDesc
with ReturnSetInfo->expectedDesc. This allows custom datatypes
(e.g. from tsearch2) to be returned at runtime. Previous behavior
depended on the type oid to match between the remote and local
database, which obviously doesn't work well for custom types.
Per report from Mark Gibson.
Joe Conway [Tue, 24 Feb 2004 05:26:07 +0000 (05:26 +0000)]
Apply quote_literal to the start_with argument of connectby. Fixes problem
reported by David Garamond when working with bytea parent and child keys.
Tom Lane [Tue, 24 Feb 2004 03:35:45 +0000 (03:35 +0000)]
Cause pg_dump to emit a 'SET client_encoding' command at the start of
any restore operation, thereby ensuring that dumped data is interpreted
the same way it was dumped even if the target database has a different
encoding. Per suggestions from Pavel Stehule and others. Also,
simplify scheme for handling check_function_bodies ... we may as well
just set that at the head of the script.
Tom Lane [Tue, 24 Feb 2004 01:44:47 +0000 (01:44 +0000)]
Don't crash when a rowtype argument to a plpgsql function is NULL.
Per report from Chris Campbell.
Tom Lane [Mon, 23 Feb 2004 23:03:43 +0000 (23:03 +0000)]
Replace opendir/closedir calls throughout the backend with AllocateDir
and FreeDir routines modeled on the existing AllocateFile/FreeFile.
Like the latter, these routines will avoid failing on EMFILE/ENFILE
conditions whenever possible, and will prevent leakage of directory
descriptors if an elog() occurs while one is open.
Also, reduce PANIC to ERROR in MoveOfflineLogs() --- this is not
critical code and there is no reason to force a DB restart on failure.
All per recent trouble report from Olivier Hubaut.
Tom Lane [Mon, 23 Feb 2004 20:46:16 +0000 (20:46 +0000)]
Do a direct probe during postmaster startup to determine the maximum
number of openable files and the number already opened. This eliminates
depending on sysconf(_SC_OPEN_MAX), and allows much saner behavior on
platforms where open-file slots are used up by semaphores.
Michael Meskes [Mon, 23 Feb 2004 18:14:30 +0000 (18:14 +0000)]
Fixed incorrect output of indicator structs using the name of the data struct.
Bruce Momjian [Sat, 21 Feb 2004 03:48:55 +0000 (03:48 +0000)]
The following bug has been logged online:
Bug reference: 1081
Logged by: Aarjav Trivedi
Email address: aarjav@cc.gatech.edu
PostgreSQL version: 7.4
Operating system: Linux
Description: Spelling error in tsearch2.sql leading to problems
with
tsearch
Details:
On line 620 of tsearch2.sql which is required to install and run
TSEARCH,
REATE FUNCTION tsstat_in(cstring)
should be
CREATE FUNCTION tsstat_in(cstring)
because of this error, TSEARCH fails to work as specified,
Tom Lane [Sat, 21 Feb 2004 00:35:13 +0000 (00:35 +0000)]
Implement a solution to the 'Turkish locale downcases I incorrectly'
problem, per previous discussion. Make some additional changes to
centralize the knowledge of just how identifier downcasing is done,
in hopes of simplifying any future tweaking in this area.
Michael Meskes [Sun, 15 Feb 2004 15:40:54 +0000 (15:40 +0000)]
- Allowed some C keywords to be used as SQL column names. This used to work in 7.3.*
Michael Meskes [Sun, 15 Feb 2004 13:50:02 +0000 (13:50 +0000)]
- Added missing braces to array parsing.
- Set ecpg version to 3.1.1.
- Removed that old debugging output that I forgot the last time.
Tom Lane [Fri, 13 Feb 2004 22:26:43 +0000 (22:26 +0000)]
Repair optimization bug I introduced in a moment of brain fade back in
Nov 2002: when constant-expression simplification removes all the
aggregate function calls from a query, that doesn't mean we can act as
though there never were any aggregates. Per bug report from Gabor Szucs.
Bruce Momjian [Fri, 13 Feb 2004 04:40:43 +0000 (04:40 +0000)]
Tom Lane wrote:
> momjian@svr1.postgresql.org (Bruce Momjian) writes:
>> someone asked me about the FK deadlock fix, mentioned in the 7.3.3
>> release notes as 3rd change:
>> http://www.postgresql.org/docs/current/static/release-7-3-3.html
>> Actually, that fix was available with 7.4, not 7.3. Don't know if we can
>> retroactively change the release-notes though.
>
> This is completely erroneous, please undo it.
>
> 2003-05-21 14:14 tgl
>
> * src/: backend/utils/adt/ri_triggers.c,
> test/regress/expected/foreign_key.out (REL7_3_STABLE): Back-patch
> Jan's fix to avoid primary key lookup (and lock) if foreign key
> does not change on UPDATE.
Oh ... didn't know that you did a backpatch. Sorry
Jan
Bruce Momjian [Thu, 12 Feb 2004 20:18:13 +0000 (20:18 +0000)]
Jan:
someone asked me about the FK deadlock fix, mentioned in the 7.3.3
release notes as 3rd change:
http://www.postgresql.org/docs/current/static/release-7-3-3.html
Actually, that fix was available with 7.4, not 7.3. Don't know if we can
retroactively change the release-notes though.
Peter Eisentraut [Thu, 12 Feb 2004 19:17:41 +0000 (19:17 +0000)]
Translation updates
Bruce Momjian [Wed, 11 Feb 2004 17:32:09 +0000 (17:32 +0000)]
Properly set NEED_REENTRANT_FUNCS for threaded libpq/ecpg.
Without this patch, no thread locking or *_r functions were being used.
Tom Lane [Tue, 10 Feb 2004 07:26:48 +0000 (07:26 +0000)]
Repair missing inclusions of -lintl for shared libraries.
Kris Jurka [Tue, 10 Feb 2004 01:58:48 +0000 (01:58 +0000)]
Don't try to turn the random bytes from a md5 salt into a String
because it may not be a valid String depending on the encoding.
Per report from Nadeem Bitar.
Tom Lane [Tue, 3 Feb 2004 17:56:04 +0000 (17:56 +0000)]
Ensure that memcmp() does not run off the end of memory, per Kurt Roeckx.
(Same patch committed to HEAD but I fat-fingered the commit message...)
Kris Jurka [Tue, 3 Feb 2004 05:43:24 +0000 (05:43 +0000)]
V3 NotificationResonse messages were trying to be received as V2
messages. Also the PID was being read in the wrong byte order.
Finally add a test case for listen/notify.
Per report from Hans Nather.
Kris Jurka [Tue, 3 Feb 2004 05:28:17 +0000 (05:28 +0000)]
ConnectionPool and SimpleDataSource are marked Serializable, but their
superclass (which contains a number of state variables) is not. To
correctly serialize these objects we need to manually implement
writeObject and readObject.
Per report from R. Lemos
Kris Jurka [Tue, 3 Feb 2004 05:25:38 +0000 (05:25 +0000)]
ResultSet.next() and previous() incremented or decremented the
internal current_row variable regardless of wether they succeeded or
not. This generated some ArrayIndexOutOfBoundsExceptions when the
errorneous adjustment current_row led to out of range values.
Per report from Fischer Krisztian.
Kris Jurka [Tue, 3 Feb 2004 05:13:56 +0000 (05:13 +0000)]
Fix the setXXXStream methods. If passed a null InputStream, convert
this to a setNull call. The code originally would try to read the
whole stream in one call to read(), but this doesn't work. The
InputStream API makes it clear you must be prepared to loop and
continue reading if you didn't get the whole request on the first
try.
Per report from Martin Holz.
Kris Jurka [Tue, 3 Feb 2004 05:00:21 +0000 (05:00 +0000)]
Newer versions of the 1.4.2 jdk give warnings about having return in a
finally clause.
Tom Lane [Mon, 2 Feb 2004 04:07:40 +0000 (04:07 +0000)]
Do not let external specification of CFLAGS stop us from adding
-fno-strict-aliasing.
Tom Lane [Mon, 2 Feb 2004 03:07:14 +0000 (03:07 +0000)]
Avoid generating invalid character encoding sequences in make_greater_string.
Not sure how this mistake evaded detection for so long.
Neil Conway [Mon, 2 Feb 2004 01:00:58 +0000 (01:00 +0000)]
Use Tcl_PutEnv() in place of putenv() in libpgtcl, as the latter can
apparently corrupt the Tcl runtime. Per suggestion from Michael
Brusser <michael@synchronicity.com>
Tom Lane [Sat, 31 Jan 2004 00:45:34 +0000 (00:45 +0000)]
Fix text_position to not scan past end of source string in multibyte
case, per report from Korea PostgreSQL Users' Group.
Michael Meskes [Wed, 28 Jan 2004 09:55:53 +0000 (09:55 +0000)]
- Fixed prototype for ECPGprepared_statement to not moan about "const char"
- Fixed parsing of nested structures.
Tom Lane [Wed, 28 Jan 2004 07:47:07 +0000 (07:47 +0000)]
Fix oversight in check_ungrouped_columns optimization that avoids
unnecessary checks for complex grouping expressions: we cannot check
whether the expressions are simple Vars until after we apply
flatten_join_alias_vars, because in the case of FULL JOIN that routine
can introduce non-Var expressions. Per example from Joel Knight.
Tom Lane [Wed, 28 Jan 2004 00:05:25 +0000 (00:05 +0000)]
simplify_function() mustn't try to evaluate functions that return
composite types, because TupleTableSlots aren't Datums and can't be
stored in Const nodes. We can remove this restriction if we ever
adopt a cleaner runtime representation for whole-tuple results, but
at the moment it's broken. Per example from Thomas Hallgren.
Tom Lane [Tue, 27 Jan 2004 00:50:52 +0000 (00:50 +0000)]
Run stats test separately, not as part of a parallel group, to avoid
possible failures due to stats collector not updating fast enough under
heavy load. Per report from Jeremy Yoder.
Tom Lane [Mon, 26 Jan 2004 19:16:23 +0000 (19:16 +0000)]
Repair incorrect order of operations in GetNewTransactionId(). We must
complete ExtendCLOG() before advancing nextXid, so that if that routine
fails, the next incoming transaction will try it again. Per trouble
report from Christopher Kings-Lynne.
Teodor Sigaev [Mon, 26 Jan 2004 15:08:58 +0000 (15:08 +0000)]
Docs fix from Kris Jurka <books@ejurka.com>
Tom Lane [Sat, 24 Jan 2004 23:06:41 +0000 (23:06 +0000)]
Fix problems with dropped columns in pltcl triggers, per report from Patrick Samson.
Tom Lane [Sat, 24 Jan 2004 00:37:42 +0000 (00:37 +0000)]
Repair planner failure for cases involving Cartesian products inside
IN (sub-SELECT) constructs. We must force a clauseless join of the
sub-select member relations, but it wasn't happening because the code
thought it would be able to use the join clause arising from the IN.
Peter Eisentraut [Thu, 22 Jan 2004 21:13:45 +0000 (21:13 +0000)]
Translation update
Tom Lane [Thu, 22 Jan 2004 19:09:48 +0000 (19:09 +0000)]
Fix incorrect dumping of database LOCATION from 7.0.* servers.
Per report from Mattias Kregert.
Tom Lane [Thu, 22 Jan 2004 02:23:35 +0000 (02:23 +0000)]
Fix oversight in optimization that avoids an unnecessary projection step
when scanning a table that we need all the columns from. In case of
SELECT INTO, we have to check that the hasoids flag matches the desired
output type, too. Per report from Mike Mascari.
Tom Lane [Wed, 21 Jan 2004 22:05:53 +0000 (22:05 +0000)]
Ensure fflush(stdout) happens in all cases, per gripe from Jon Sablatnig.
Tom Lane [Wed, 21 Jan 2004 19:25:11 +0000 (19:25 +0000)]
Back-patch repairs for --disable-shared support.
Michael Meskes [Wed, 21 Jan 2004 14:11:03 +0000 (14:11 +0000)]
Added WHENEVER NOT_FOUND to SELECT/INSERT/UPDATE/DELETE.
Teodor Sigaev [Mon, 19 Jan 2004 18:40:23 +0000 (18:40 +0000)]
Correct type for isalnum
Peter Eisentraut [Mon, 19 Jan 2004 14:28:06 +0000 (14:28 +0000)]
Fix typo.
Peter Eisentraut [Sun, 18 Jan 2004 14:54:18 +0000 (14:54 +0000)]
Translation update
Tom Lane [Sun, 18 Jan 2004 02:15:57 +0000 (02:15 +0000)]
Don't use %s-with-precision format spec to truncate data being displayed
in a COPY error message. It seems that glibc gets indigestion if it is
asked to truncate strings that contain invalid UTF-8 encoding sequences.
vsnprintf will return -1 in such cases, leading to looping and eventual
memory overflow in elog.c. Instead use our own, more robust pg_mbcliplen
routine. I believe this problem accounts for several recent reports of
unexpected 'out of memory' errors during COPY IN.
Tom Lane [Sun, 18 Jan 2004 00:31:53 +0000 (00:31 +0000)]
Repair faulty plan generation in cases where we choose to implement an
IN clause by mergejoin, and a type coercion is needed just above the subplan.
A more extensive patch will follow in HEAD.
Dennis Bjorklund [Wed, 14 Jan 2004 12:14:18 +0000 (12:14 +0000)]
Translation updates
Tom Lane [Wed, 14 Jan 2004 03:47:12 +0000 (03:47 +0000)]
pg_settings should have UPDATE privilege allowed to public.
(Can't force initdb for this in 7.4 branch, but we can at least see to it
that post-7.4.2 installations will get it right.)
Tom Lane [Wed, 14 Jan 2004 03:45:02 +0000 (03:45 +0000)]
The no-updates-to-system-catalogs-unless-usecatupd restriction should
not apply to system views. It never mattered before 7.4, but it does now.
Tom Lane [Wed, 14 Jan 2004 03:39:29 +0000 (03:39 +0000)]
Revert ill-starred change of 13-Feb-02: it appeared to fix a problem of
incorrect permissions checking, but in fact disabled most all permissions
checks for view updates. This corrects problems reported by Sergey
Yatskevich among others, at the cost of re-introducing the problem
previously reported by Tim Burgess. However, since we'd lived with that
problem for quite awhile without knowing it, we can live with it awhile
longer until a proper fix can be made in 7.5.
Peter Eisentraut [Tue, 13 Jan 2004 22:43:25 +0000 (22:43 +0000)]
Fix format string error.
Peter Eisentraut [Tue, 13 Jan 2004 18:58:42 +0000 (18:58 +0000)]
Translation update
Dennis Bjorklund [Sun, 11 Jan 2004 19:30:42 +0000 (19:30 +0000)]
Translation updates
Dennis Bjorklund [Sun, 11 Jan 2004 19:25:44 +0000 (19:25 +0000)]
Mark string for translation.
Tom Lane [Sat, 10 Jan 2004 00:30:39 +0000 (00:30 +0000)]
Fix subquery pullup logic to not be fooled when a view that appears
'simple' references another view that is not simple. Must recheck
conditions after performing recursive pullup. Per example from
Laurent Perez, 9-Jan-04.
Tom Lane [Fri, 9 Jan 2004 00:15:19 +0000 (00:15 +0000)]
Fix incorrect SQL syntax emitted when -E is given without -P.
Report and fix from Martin Pitt.
Tom Lane [Thu, 8 Jan 2004 23:40:36 +0000 (23:40 +0000)]
Remove broken (and unnecessary) definition of operator <> for _int4
datatype; the generic array comparators added in 7.4 supersede this.
Per report and patch from Korea PostgreSQL Users' Group.
Bruce Momjian [Thu, 8 Jan 2004 15:51:38 +0000 (15:51 +0000)]
Update OSF thread flags for non-gcc compiles.
Dennis Bjorklund [Thu, 8 Jan 2004 08:51:31 +0000 (08:51 +0000)]
Translation updates
Bruce Momjian [Thu, 8 Jan 2004 04:21:20 +0000 (04:21 +0000)]
Update Solaris thread setting for non-gcc compilers.
Peter Eisentraut [Wed, 7 Jan 2004 17:44:07 +0000 (17:44 +0000)]
Translation updates
Peter Eisentraut [Mon, 5 Jan 2004 19:15:55 +0000 (19:15 +0000)]
Translation updates
Peter Eisentraut [Sun, 4 Jan 2004 16:44:22 +0000 (16:44 +0000)]
Correct gettext URL.
Michael Meskes [Sun, 4 Jan 2004 14:50:13 +0000 (14:50 +0000)]
Fixed bug in GRANT OPTION FOR parsing.
Tom Lane [Sun, 4 Jan 2004 04:17:14 +0000 (04:17 +0000)]
Fix portability bugs: char values passed to <ctype.h> functions must
be cast to unsigned char. We have learned this the hard way before.
Tom Lane [Sun, 4 Jan 2004 04:06:45 +0000 (04:06 +0000)]
Fix discrepancy in prototypes for HPUX pg_dlerror.
Tom Lane [Sun, 4 Jan 2004 04:02:22 +0000 (04:02 +0000)]
Fix ReadOffset() to work correctly when off_t is wider than int.
Bruce Momjian [Sun, 4 Jan 2004 00:14:55 +0000 (00:14 +0000)]
Remove trailing semicolons from macro initializations in plpython.
Problem report on True64 Unix by Nikola Milutinovic.
]
Tom Lane [Thu, 1 Jan 2004 19:27:28 +0000 (19:27 +0000)]
Do an explicit fflush after writing a progress message with puts.
This ensures stdout is kept in sync with messages on stderr.
Per report from Olaf Ferger.
Bruce Momjian [Thu, 1 Jan 2004 17:35:32 +0000 (17:35 +0000)]
Backpatch Solaris non-gcc thread compile fix to 7.4.X.
Tom Lane [Tue, 30 Dec 2003 20:05:15 +0000 (20:05 +0000)]
Avoid running out of memory during hash_create, by not passing a
number-of-buckets that exceeds the size we actually plan to allow
the hash table to grow to. Per trouble report from Sean Shanny.
Michael Meskes [Mon, 29 Dec 2003 13:53:17 +0000 (13:53 +0000)]
Added missing whitespaces to array argument parsing.
Tom Lane [Sun, 28 Dec 2003 17:44:05 +0000 (17:44 +0000)]
Fix sanity-check code that mistakenly assumed error and notice messages
could never exceed 30K. Per report from Andreas Pflug.
Tom Lane [Sun, 28 Dec 2003 17:29:51 +0000 (17:29 +0000)]
Avoid infinite loop if connection is lost during PQexecStart() or
PQexecFinish(). Per report from Andreas Pflug.
Michael Meskes [Wed, 24 Dec 2003 22:05:06 +0000 (22:05 +0000)]
Fixed segfault in parsing of EXEC SQL SELECT * FROM foo() AS TBL( c int, i int);
Tom Lane [Tue, 23 Dec 2003 20:34:51 +0000 (20:34 +0000)]
More bogosity in alter_table test: sometimes causes prepare test to fail
by means of arbitrarily renaming tables the other test depends on.
Tom Lane [Tue, 23 Dec 2003 20:17:55 +0000 (20:17 +0000)]
alter_table test sometimes failed in parallel mode, because of transient
table name conflict against rangefuncs test.
Bruce Momjian [Mon, 22 Dec 2003 07:28:46 +0000 (07:28 +0000)]
Regenerate HISTORY for release.
Tom Lane [Sun, 21 Dec 2003 23:44:40 +0000 (23:44 +0000)]
Update HISTORY for 7.4.1 release.
Tom Lane [Sun, 21 Dec 2003 18:06:26 +0000 (18:06 +0000)]
Fix broken markup, adjust 7.4.1 release date, re-sync HEAD with branch.
Peter Eisentraut [Sun, 21 Dec 2003 16:36:34 +0000 (16:36 +0000)]
Some refining of release notes. Markup is still broken by someone else,
so I cannot remake HISTORY.
Bruce Momjian [Sun, 21 Dec 2003 05:24:00 +0000 (05:24 +0000)]
Update 7.4.1 release notes in preparation for release.
Tom Lane [Sat, 20 Dec 2003 18:46:02 +0000 (18:46 +0000)]
Dept. of third thoughts: in fact, libpq should support SCM_CREDS challenge
even when HAVE_GETPEEREID is defined, else it will be unable to connect to
pre-7.4 backends that are using IDENT authentication.
Tom Lane [Sat, 20 Dec 2003 18:25:02 +0000 (18:25 +0000)]
Fix broken IDENT support for FreeBSD (appears to have been broken by
ill-considered conditional logic in getpeereid patch of 3-Dec-2002).
Per bug #1021.
Peter Eisentraut [Sat, 20 Dec 2003 15:32:18 +0000 (15:32 +0000)]
Update INSTALL file for 7.4.1.
Bruce Momjian [Sat, 20 Dec 2003 00:57:32 +0000 (00:57 +0000)]
Update HISTORY file for 7.4.1.
Bruce Momjian [Fri, 19 Dec 2003 23:32:36 +0000 (23:32 +0000)]
Backpatch pg_service.conf file change to not default dbname to match
service name.
Bruce Momjian [Fri, 19 Dec 2003 23:29:29 +0000 (23:29 +0000)]
Supress ecpg thread test if configure didn't enable threads. Fix
tools/thread to run even if configure didn't enable threads because this
test is used before enabling threads for the OS.
Peter Eisentraut [Fri, 19 Dec 2003 20:06:14 +0000 (20:06 +0000)]
7.4.1 release note improvements
Peter Eisentraut [Fri, 19 Dec 2003 14:21:43 +0000 (14:21 +0000)]
Forbid REVOKE on untrusted languages, and don't dump privileges of
untrusted languages (in case they sneak in).
Peter Eisentraut [Fri, 19 Dec 2003 11:54:23 +0000 (11:54 +0000)]
Add missing $(X).