summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix elog.c to avoid infinite recursion (leading to backend crash) whenTom Lane2007-07-211-2/+7
| | | | | | | | | | log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran.
* Provide a bit more high-level documentation for the GEQO planner.Tom Lane2007-07-212-21/+85
| | | | Per request from Luca Ferrari.
* Fix regression tests for PL/pgSQL error message changesPeter Eisentraut2007-07-201-10/+10
|
* Fix WAL replay of truncate operations to cope with the possibility that theTom Lane2007-07-201-1/+9
| | | | | | | | | truncated relation was deleted later in the WAL sequence. Since replay normally auto-creates a relation upon its first reference by a WAL log entry, failure is seen only if the truncate entry happens to be the first reference after the checkpoint we're restarting from; which is a pretty unusual case but of course not impossible. Fix by making truncate entries auto-create like the other ones do. Per report and test case from Dharmendra Goyal.
* Capitalize language key words in error messagesPeter Eisentraut2007-07-201-17/+17
|
* On second thought, the tests for what to do with stderr output are aTom Lane2007-07-191-15/+13
| | | | | lot more sensible if we check the chunk-output case first. Not back-patched since it's just a cosmetic improvement.
* Make replace(), split_part(), and string_to_array() behave somewhat sanelyTom Lane2007-07-191-14/+53
| | | | | | | | | when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki.
* Only use the pipe chunking protocol if we know the syslogger shouldAndrew Dunstan2007-07-193-13/+21
| | | | | | | be catching stderr output, and we are not ourselves the syslogger. Otherwise, go directly to stderr. Bug noticed by Tom Lane. Backpatch as far as 8.0.
* Adjust configure script to print the bison and flex versions in use.Tom Lane2007-07-193-208/+235
| | | | Minor rearrangements to make a few tests in a more logical order.
* Fix an old thinko in SS_make_initplan_from_plan, which is used when optimizingTom Lane2007-07-183-7/+46
| | | | | | | | a MIN or MAX aggregate call into an indexscan: the initplan is being made at the current query nesting level and so we shouldn't increment query_level. Though usually harmless, this mistake could lead to bogus "plan should not reference subplan's variable" failures on complex queries. Per bug report from David Sanchez i Gregori.
* Cast NULL to a pointer type in the execl() call, to avoid a compiler warning onAlvaro Herrera2007-07-181-2/+2
| | | | | some platforms and possibly a bug. Per report from Stefan and subsequent discussion.
* GSSAPI documentationMagnus Hagander2007-07-185-19/+212
|
* Document that 'deleted' is also tracked by autovacuum.Bruce Momjian2007-07-181-2/+2
|
* Properly adjust age() seconds to match the sign of the larger units.Bruce Momjian2007-07-181-2/+26
| | | | Patch from Tom.
* Document that age() adds days, then full months.Bruce Momjian2007-07-181-1/+12
|
* Add:Bruce Momjian2007-07-182-2/+12
| | | | | | | | | > > o Allow GLOBAL temporary tables to exist as empty by default in > all sessions > > http://archives.postgresql.org/pgsql-hackers/2007-07/msg00006.php >
* Fix incorrect optimization of foreign-key checks. When an UPDATE on theTom Lane2007-07-173-3/+88
| | | | | | | | | | | | | | referencing table does not change the tuple's FK column(s), we don't bother to check the PK table since the constraint was presumably already valid. However, the check is still necessary if the tuple was inserted by our own transaction, since in that case the INSERT trigger will conclude it need not make the check (since its version of the tuple has been deleted). We got this right for simple cases, but not when the insert and update are in different subtransactions of the current top-level transaction; in such cases the FK check would never be made at all. (Hence, problem dates back to 8.0 when subtransactions were added --- it's actually the subtransaction version of a bug fixed in 7.3.5.) Fix, and add regression test cases. Report and fix by Affan Salman.
* Remove http://www.benchmarkresources.com, no longer resolves to aBruce Momjian2007-07-172-9/+2
| | | | meaningful site.
* Implement CREATE TABLE LIKE ... INCLUDING INDEXES. Patch from NikhilS,Neil Conway2007-07-1715-190/+566
| | | | | based in part on an earlier patch from Trevor Hardcastle, and reviewed by myself.
* Add CVS Wiki URL to docs.Bruce Momjian2007-07-171-2/+5
|
* Fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This hasTom Lane2007-07-171-1/+5
| | | | | | been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross.
* Add:Bruce Momjian2007-07-172-26/+67
| | | | | | | | | > * Allow multiple indexes to be created concurrently, ideally via a > single heap scan, and have a restore of a pg_dump somehow use it > > http://archives.postgresql.org/pgsql-general/2007-05/msg01274.php Small blank line additions.
* Update docs that GNU tar versions >=1.16 exit with 1 on files changed, 2Bruce Momjian2007-07-161-8/+6
| | | | on other errors.
* Fix pg_buffercache to release buffer partition locks in reverse order,Tom Lane2007-07-161-4/+11
| | | | | | and add a note about why. This is not tremendously important right now, probably, but it will get more urgent if NUM_BUFFER_PARTITIONS is increased as much as proposed.
* Add comments spelling out why it's a good idea to release multipleTom Lane2007-07-162-6/+14
| | | | partition locks in reverse order.
* With the native compiler on Unixware, disable optimization ifNeil Conway2007-07-161-2/+6
| | | | | --enable-debug is used, to avoid complaints about debugging and optimization being mutually exclusive. Patch from Stefan Kaltenbrunner.
* Allow plpgsql function parameter names to be qualified with the function'sTom Lane2007-07-167-28/+104
| | | | | | | name. With this patch, it is always possible for the user to qualify a plpgsql variable name if needed to avoid ambiguity. While there is much more work to be done in this area, this simple change removes one unnecessary incompatibility with Oracle. Per discussion.
* Hmm, so evidently _check_lock and _clear_lock take an argument of typeTom Lane2007-07-161-2/+2
| | | | int not unsigned int. Third try to get grebe building without warnings...
* Quote pathnames so pg_standby works with paths that haveMagnus Hagander2007-07-161-1/+1
| | | | | | spaces in them. ISHIDA Akio
* So our reward for including <sys/atomic_op.h> seems to be a bunch ofTom Lane2007-07-161-3/+3
| | | | nattering about casting away volatile. Losers.
* On AIX, include <sys/atomic_op.h> so that the functions we use forTom Lane2007-07-161-1/+3
| | | | TAS support are properly declared.
* Get rid of overly cute, unportable, probably not very efficient substituteTom Lane2007-07-151-10/+10
| | | | for 'bool'. Per buildfarm warnings.
* Fix CHECK_RELATION_BLOCK_RANGE macro, which was not merely producingTom Lane2007-07-152-6/+8
| | | | a warning but was outright wrong.
* Fix a passel of signed vs unsigned char warnings.Tom Lane2007-07-152-10/+10
|
* Silence a rather odd compiler warning. In passing, make this file'sTom Lane2007-07-152-18/+18
| | | | | error messages look at least a little bit like the message style guidelines say.
* Avoid possibly-unportable initializer, per buildfarm warning.Tom Lane2007-07-151-2/+5
|
* Change a couple of exit(0) to return 0 to suppress complaints fromTom Lane2007-07-152-16/+15
| | | | not-too-bright compilers. Per buildfarm results.
* Silence Solaris compiler warnings, per buildfarm.Tom Lane2007-07-152-4/+8
|
* Silence Solaris compiler warning, per buildfarm.Tom Lane2007-07-151-2/+2
|
* Fix compile warning on Solaris, per buildfarm. (Why have we gotTom Lane2007-07-153-5/+5
| | | | three slightly different copies of this file?)
* Fix possible portability problem, per buildfarm warnings.Tom Lane2007-07-151-2/+2
|
* Fix unportable use of isspace(), per buildfarm results.Tom Lane2007-07-151-1/+1
|
* Because plpgsql's scanner uses %option case-insensitive, flex's results couldTom Lane2007-07-151-2/+6
| | | | | | | | | theoretically vary depending on what the compile-time locale setting is. Hence, force it to see LC_CTYPE=C to ensure consistent build results. (It's likely that this makes no difference in practice, since our specification for "identifier" surely includes both ends of any possible uppercase/lowercase pair anyway. But it should silence warnings about ambiguous character classes that are reported by some buildfarm members.)
* Reject zero or negative BY step in plpgsql integer FOR-loops, and behaveTom Lane2007-07-154-58/+68
| | | | | | sanely if the loop value overflows int32 on the way to the end value. Avoid useless computation of "SELECT 1" when BY is omitted. Avoid some type-punning between Datum and int4 that dates from the original coding.
* Note incompatibility with Oracle's version of FOR ... REVERSE, perTom Lane2007-07-151-8/+26
| | | | | Andrew Dunstan. Minor other improvements in documentation of integer FOR loops.
* Editorial overhaul of plpgsql documentation. Provide detailed documentationTom Lane2007-07-141-528/+797
| | | | | | | | | | of variable substitution and plan caching behavior in dedicated sections. (A lot of this material existed already, but was scattered in various places in the chapter.) Reorganize material a little bit, mostly to try to avoid diving into deep details in the first introductory sections. Document some fine points that had escaped treatment before, notably the ability to qualify plpgsql variable names with block labels. Some minor wordsmithing here and there.
* Support for finding gssapi functions in the library "gss", as requiredMagnus Hagander2007-07-142-3/+3
| | | | | | by Solaris 10 and possibly others. Stefan Kaltenbrunner
* Volatile-qualify a dozen variables in plpython.c to eliminate warningsTom Lane2007-07-131-25/+28
| | | | | | from old versions of gcc. It's not clear to me that this is really necessary for correctness, but less warnings are always good. Per buildfarm results and local testing.
* Fix map_sql_typecoll_to_xmlschema_types() to not fail on droppedTom Lane2007-07-131-30/+21
| | | | | columns, per my gripe earlier today. Make it look a bit less like someone's first effort at backend coding.
* Add casts to suppress warnings about m68k-specific kluge in fmgr.c.Tom Lane2007-07-131-75/+141
|