aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Remove PL/Perl null array 9.2 release note item, per Andrew DunstanBruce Momjian2012-05-24
|
* Fix array overrun in regex code.Tom Lane2012-05-24
| | | | | | | | | | | | | | | | | | | zaptreesubs() was coded to unconditionally reset a capture subre's corresponding pmatch[] entry. However, in regexes without backrefs, that array is caller-supplied and might not have as many entries as the regex has capturing parens. So check the array length and do nothing if there is no corresponding entry, much as subset() does. Failure to check this resulted in a stack clobber in the case reported by Marko Kreen. This bug appears to have been latent in the regex library from the beginning. It was not exposed because find() called dissect() not cdissect(), and the dissect() code path didn't ever call zaptreesubs() (formerly zapmem()). When I unified dissect() and cdissect() in commit 4dd78bf37aa29d04b3f358b08c4a2fa43cf828e7, the problem was exposed. Now that I've seen this, I'm rather suspicious that we might need to back-patch it; but will refrain for now, for lack of evidence that the case can be hit in the previous coding.
* Update SQL key word list to SQL:2011Peter Eisentraut2012-05-24
| | | | | For space reasons, drop SQL:1999 and SQL:2003. Only keep the latest two and SQL-92 for historical comparison.
* Adjust pg_upgrade to output a separate log file for pg_ctl output onBruce Momjian2012-05-23
| | | | Windows, to avoid opening a file by multiple processes.
* Add missing PQfinish() callsMagnus Hagander2012-05-23
| | | | Fujii Masao
* pg_standby: Remove tabs from string literalsPeter Eisentraut2012-05-23
| | | | And align a bit better with the rest of the debug output.
* Mention Peter Geoghegan as primary author of pg_stat_statements changes.Bruce Momjian2012-05-23
|
* Improve wording of 9.2 clog release note item.Bruce Momjian2012-05-23
|
* Add 9.2 release note authorship mentions for Heikki and AlexanderBruce Momjian2012-05-22
| | | | Korotkov, per Alexander Korotkov.
* Ensure that seqscans check for interrupts at least once per page.Tom Lane2012-05-22
| | | | | | | | | | | | | If a seqscan encounters many consecutive pages containing only dead tuples, it can remain in the loop in heapgettup for a long time, and there was no CHECK_FOR_INTERRUPTS anywhere in that loop. This meant there were real-world situations where a query would be effectively uncancelable for long stretches. Add a check placed to occur once per page, which should be enough to provide reasonable response time without adding any measurable overhead. Report and patch by Merlin Moncure (though I tweaked it a bit). Back-patch to all supported branches.
* Add small example about pg_archivecleanup -x optionPeter Eisentraut2012-05-23
| | | | | | Every time I read this I had doubts about whether the argument to the -x option should include the dot (yes). A small example should clarify this.
* Fix markup for HISTORY generation.Bruce Momjian2012-05-22
|
* Fix reindexdb manual page to say --maintenance-db controls what isBruce Momjian2012-05-22
| | | | reindexed, not vacuumed (typo). Per report from Thomas REISS
* 9.2 release notes: GiST index improvements are for all geometric indexBruce Momjian2012-05-22
| | | | types, per Alexander Korotkov
* Remove reviewers from 9.2 release notes; improve attributions.Bruce Momjian2012-05-22
|
* Fix error message for COMMENT/SECURITY LABEL ON COLUMN xxx IS 'yyy'Robert Haas2012-05-22
| | | | | | | | When the column name is an unqualified name, rather than table.column, the error message complains about too many dotted names, which is wrong. Report by Peter Eisentraut based on examination of the sepgsql regression test output, but the problem also affects COMMENT. New wording as suggested by Tom Lane.
* Release note improvements.Robert Haas2012-05-22
| | | | | | | Document some more things as incompatibilities, and improve wording of another item. Noah Misch
* Prevent pg_basebackup when integer_datetimes flag doesn't match.Robert Haas2012-05-22
| | | | | Magnus Hagander, reviewed by Fujii Masao, with slight wording changes by me.
* Repair out-of-date information in src/backend/storage/buffer/README.Robert Haas2012-05-22
| | | | | | | | In commit d526575f893c1a4e05ebd307e80203536b213a6d, we changed things so that buffer usage counts are incremented when the buffer is pinned, rather than when it is unpinned, but the README file didn't get the memo. Report by Amit Kapila.
* Move postmaster's RemovePgTempFiles call to a less randomly chosen place.Tom Lane2012-05-21
| | | | | | | | | | | | | | | | | | There is no reason to do this as early as possible in postmaster startup, and good reason not to do it until we have completely created the postmaster's lock file, namely that it might contribute to pg_ctl thinking that postmaster startup has timed out. (This would require a rather unusual amount of time to be spent scanning temp file directories, but we have at least one field report of it happening reproducibly.) Back-patch to 9.1. Before that, pg_ctl didn't wait for additional info to be added to the lock file, so it wasn't a problem. Note that this is not a complete fix to the slow-start issue in 9.1, because we still had identify_system_timezone being run during postmaster start in 9.1. But that's at least a reasonably well-defined delay, with an easy workaround if needed, whereas the temp-files scan is not so predictable and cannot be avoided.
* Update woefully-obsolete comment.Tom Lane2012-05-21
| | | | | | The accurate info about what's in a lock file has been in miscadmin.h for some time, so let's just make this comment point there instead of maintaining a duplicative copy.
* pg_ctl: Sort signal list in --help outputPeter Eisentraut2012-05-21
| | | | | The list was neither logical nor numerical nor alphabetical. Let's go with alphabetical.
* libpq: Add missing file to GETTEXT_FILES listPeter Eisentraut2012-05-21
| | | | | | For the record, fe-print.c is also missing, but it's sort of deprecated, and the string internationalization there has some issues, and it doesn't seem worth fixing that. So let's leave that out.
* Adjust documentation of ALTER TABLE CLUSTER ON for more consistency.Tom Lane2012-05-21
| | | | Josh Kupershmidt
* Document that we deviate from ISO 8601 by not using 'T' on output.Tom Lane2012-05-21
| | | | | | | Per discussion, we should explain that we follow RFC 3339 and not really the letter of the ISO 8601 spec for timestamp output format. Mostly Brendan Jurd's wording, though I tweaked it to clarify that we do take 'T' on input. Minor additional copy-editing and markup-tweaking, too.
* Fix incorrect logic in JSON number lexerPeter Eisentraut2012-05-20
| | | | | | | Detectable by gcc -Wlogical-op. Add two regression test cases that would previously allow incorrect values to pass.
* Some reference page improvementsPeter Eisentraut2012-05-20
| | | | | | | | initdb: Add -T option oid2name: Put options in some non-random order pg_dump: Put --section option in the right place And some additional markup and terminology improvements.
* Small cleanups of contrib --help outputPeter Eisentraut2012-05-20
|
* Put back word that was mysteriously lost in man page conversionPeter Eisentraut2012-05-19
|
* Reworded sentence as suggested by Stephen Frost.Michael Meskes2012-05-19
|
* Realign some --help output to have better spacing between columnsPeter Eisentraut2012-05-18
|
* Fix bug in gistRelocateBuildBuffersOnSplit().Heikki Linnakangas2012-05-18
| | | | | | | | | | | | | | | | | | | When we create a temporary copy of the old node buffer, in stack, we mustn't leak that into any of the long-lived data structures. Before this patch, when we called gistPopItupFromNodeBuffer(), it got added to the array of "loaded buffers". After gistRelocateBuildBuffersOnSplit() exits, the pointer added to the loaded buffers array points to garbage. Often that goes unnotied, because when we go through the array of loaded buffers to unload them, buffers with a NULL pageBuffer are ignored, which can often happen by accident even if the pointer points to garbage. This patch fixes that by marking the temporary copy in stack explicitly as temporary, and refrain from adding buffers marked as temporary to the array of loaded buffers. While we're at it, initialize nodeBuffer->pageBlocknum to InvalidBlockNumber and improve comments a bit. This isn't strictly necessary, but makes debugging easier.
* file_fdw: Improve error messagePeter Eisentraut2012-05-17
| | | | | The hint looked a bit confusing when there were no valid options to hint about.
* Update key words table for 9.2Peter Eisentraut2012-05-17
|
* Update SQL features/conformance information to SQL:2011Peter Eisentraut2012-05-17
|
* Change COLLATION keyword categoryPeter Eisentraut2012-05-16
| | | | | | It was changed from unreserved to reserved as part of the COLLATION FOR syntax, but it turns out that type_func_name_keyword is sufficient.
* Improve error message for ALTER COLUMN TYPE coercion failure.Tom Lane2012-05-16
| | | | | | | Per recent discussion, the error message for this was actually a trifle inaccurate, since it said "cannot be cast" which might be incorrect. Adjust that wording, and add a HINT suggesting that a USING clause might be needed.
* Fix bug in freespace calculation in heap_multi_insert().Heikki Linnakangas2012-05-16
| | | | | | | If the amount of freespace on page was less than the amount reserved by fillfactor, the calculation would underflow. This fixes bug #6643 reported by Tomonari Katsumata.
* Fix a whitespace issue with the man pagesPeter Eisentraut2012-05-15
| | | | | See 6ef24487967692604b07a4a54e71821a60fb729a for an explanation. This is the same for the new man pages.
* Remove whitespace from end of linesPeter Eisentraut2012-05-15
| | | | pgindent and perltidy should clean up the rest.
* Make xrefs to tables instead of assuming they appear belowPeter Eisentraut2012-05-15
|
* Remove stray nbsp characterPeter Eisentraut2012-05-15
|
* Fix bug in to_tsquery().Heikki Linnakangas2012-05-15
| | | | | We were using memcpy() to copy to a possibly overlapping memory region, which is a no-no. Use memmove() instead.
* In pgstat.c, use a timeout in WaitLatchOrSocket only on Windows.Tom Lane2012-05-14
| | | | | | | We have no need for a timeout here really, but some broken products from Redmond seem to lose FD_READ events occasionally, and waking up and retrying the recv() is the only known way to work around that. Perhaps somebody will be motivated to figure out a better answer here; but not I.
* Revert "Add some temporary instrumentation to pgstat.c."Tom Lane2012-05-14
| | | | | This reverts commit 7d88bb73f755f7fb5d847ef2319c21076054fb0e. That instrumentation has served its purpose.
* Put back AC_REQUIRE([AC_STRUCT_TM]).Tom Lane2012-05-14
| | | | | | The BSD-ish members of the buildfarm all seem to think removing this was a bad idea. It looks to me like it resulted in omitting the system header inclusion necessary to detect the fields of struct tm correctly.
* Assert that WaitLatchOrSocket callers cannot wait only for writability.Tom Lane2012-05-14
| | | | | | | | | | | | | Since we have chosen to report socket EOF and error conditions via the WL_SOCKET_READABLE flag bit, it's unsafe to wait only for WL_SOCKET_WRITEABLE; the caller would never be notified of the socket condition, and in some of these implementations WaitLatchOrSocket would busy-wait until something else happens. Add this restriction to the API specification, and add Asserts to check that callers don't try to do that. At some point we might want to consider adjusting the API to relax this restriction, but until we have an actual use case for waiting on a write-only socket, it seems premature to design a solution.
* Remove unused AC_DEFINE symbolsPeter Eisentraut2012-05-14
| | | | | | | | | ENABLE_DTRACE unused as of a7b7b07af340c73adee9959edf260695591a9496 HAVE_ERR_SET_MARK unused as of 4ed4b6c54e5fab24ab2624d80e26f7546edc88ad HAVE_FCVT unused as of 4553e1d80f824291932cfde30aa24a76dd8f1941 HAVE_STRUCT_SOCKADDR_UN unused as of b4cea00a1fc9d2270bfe9aeeee44915378d5f733 HAVE_SYSCONF unused as of f83356c7f574bc69969f29dc7b430b286a0cd9f4 TM_IN_SYS_TIME never used, obsolescent per Autoconf documentation
* For testing purposes, reinsert a timeout in pgstat.c's wait call.Tom Lane2012-05-14
| | | | | | | | | | Test results from buildfarm members mastodon/narwhal (Windows Server 2003) make it look like that platform just plain loses FD_READ events occasionally, and the only reason our previous coding seemed to work was that it timed out every couple of seconds and retried the whole operation. Try to verify this by reinserting a finite timeout into the pgstat loop. This isn't meant to be a permanent patch either, just to confirm or disprove a theory.
* Force pgwin32_recv into nonblock mode when called from pgstat.c.Tom Lane2012-05-14
| | | | | | | | This should get rid of the usage of pgwin32_waitforsinglesocket entirely, and perhaps thereby remove the race condition that's evidently still present on some versions of Windows. The previous arrangement was a bit unsafe anyway, since waiting at the recv() would not allow pgstat to notice postmaster death.