aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* Support explicit placement of the temporary-table schema within search_path.Tom Lane2007-04-20
| | | | | | | | | | | | | This is needed to allow a security-definer function to set a truly secure value of search_path. Without it, a malicious user can use temporary objects to execute code with the privileges of the security-definer function. Even pushing the temp schema to the back of the search path is not quite good enough, because a function or operator at the back of the path might still capture control from one nearer the front due to having a more exact datatype match. Hence, disable searching the temp schema altogether for functions and operators. Security: CVE-2007-2138
* Sync timezone data with 2007e zic release.Tom Lane2007-04-19
|
* Repair PANIC condition in hash indexes when a previous index extension attemptTom Lane2007-04-19
| | | | | | | | | | | failed (due to lock conflicts or out-of-space). We might have already extended the index's filesystem EOF before failing, causing the EOF to be beyond what the metapage says is the last used page. Hence the invariant maintained by the code needs to be "EOF is at or beyond last used page", not "EOF is exactly the last used page". Problem was created by my patch of 2006-11-19 that attempted to repair bug #2737. Since that was back-patched to 7.4, this needs to be as well. Per report and test case from Vlastimil Krejcir.
* Fix plpgsql to avoid reference to already-freed memory when returning aTom Lane2007-04-19
| | | | | | | pass-by-reference data type and the RETURN statement is within an EXCEPTION block. Bug introduced by my fix of 2007-01-28 to use per-subtransaction ExprContexts/EStates; since that wasn't back-patched into older branches, only 8.2 and HEAD are affected. Per report from Gary Winslow.
* Silence compiler warnings, per Bruce.Alvaro Herrera2007-04-19
|
* Enable configurable log of autovacuum actions. Initial patch from SimonAlvaro Herrera2007-04-18
| | | | Riggs, additional code and docs by me. Per discussion.
* Enable building of 64-bit libpq using visual studio 8 and theMagnus Hagander2007-04-18
| | | | | | | win32.mak file. Enable building with kerberos support using the win32.mak file. Hiroshi Saito + me
* Change default build to release, to be consistent with unix build.Magnus Hagander2007-04-18
| | | | | | Make it possible to set the default from builenv.bat. Per request from Dave Page
* Silence mingw compiler warningMagnus Hagander2007-04-18
|
* Update docs/error message for CSV quote/escape --- must be ASCII.Bruce Momjian2007-04-18
| | | | Backpatch doc change to 8.2.X.
* Update error message for COPY with a multi-byte delimiter.Bruce Momjian2007-04-18
|
* Fix condition for whether end_heap_rewrite must fsync, per Heikki.Tom Lane2007-04-17
|
* Don't assume rd_smgr stays open across all of a rewriteheap operation;Tom Lane2007-04-17
| | | | | doing so can result in crash if an sinval reset occurs meanwhile. I believe this explains intermittent buildfarm failures in cluster test.
* Rewrite choose_bitmap_and() to make it more robust in the presence ofTom Lane2007-04-17
| | | | | | | | | | | | | | | | | | competing alternatives for indexes to use in a bitmap scan. The former coding took estimated selectivity as an overriding factor, causing it to sometimes choose indexes that were much slower to scan than ones with a slightly worse selectivity. It was also too narrow-minded about which combinations of indexes to consider ANDing. The rewrite makes it pay more attention to index scan cost than selectivity; this seems sane since it's impossible to have very bad selectivity with low cost, whereas the reverse isn't true. Also, we now consider each index alone, as well as adding each index to an AND-group led by each prior index, for a total of about O(N^2) rather than O(N) combinations considered. This makes the results much less dependent on the exact order in which the indexes are considered. It's still a lot cheaper than an O(2^N) exhaustive search. A prefilter step eliminates all but the cheapest of those indexes using the same set of WHERE conditions, to keep the effective value of N down in scenarios where the DBA has created lots of partially-redundant indexes.
* Don't write timing output in quiet mode.Magnus Hagander2007-04-16
| | | | Merlin Moncure
* Tweak clean_encoding_name() API to avoid need to cast away const.Tom Lane2007-04-16
| | | | Kris Jurka
* Fix pg_dump to not crash if -t or a similar switch is used to select a serialTom Lane2007-04-16
| | | | | | sequence for dumping without also selecting its owning table. Make it not try to emit ALTER SEQUENCE OWNED BY in this situation. Per report from Michael Nolan.
* Enable IPV6 for all MSVC builds, including the VC6 libpq-only build.Magnus Hagander2007-04-16
| | | | Per request from Hiroshi Saito.
* Add a multi-worker capability to autovacuum. This allows multiple workerAlvaro Herrera2007-04-16
| | | | | | | | | | | | | | | | | | processes to be running simultaneously. Also, now autovacuum processes do not count towards the max_connections limit; they are counted separately from regular processes, and are limited by the new GUC variable autovacuum_max_workers. The launcher now has intelligence to launch workers on each database every autovacuum_naptime seconds, limited only on the max amount of worker slots available. Also, the global worker I/O utilization is limited by the vacuum cost-based delay feature. Workers are "balanced" so that the total I/O consumption does not exceed the established limit. This part of the patch was contributed by ITAGAKI Takahiro. Per discussion.
* Make plancache store cursor options so it can pass them to planner duringTom Lane2007-04-16
| | | | | | a replan. I had originally thought this was not necessary, but the new SPI facilities create a path whereby queries planned with non-default options can get into the cache, so it is necessary.
* Support scrollable cursors (ie, 'direction' clause in FETCH) in plpgsql.Tom Lane2007-04-16
| | | | Pavel Stehule, reworked a bit by Tom.
* Expose more cursor-related functionality in SPI: specifically, allowTom Lane2007-04-16
| | | | | | | | | | | access to the planner's cursor-related planning options, and provide new FETCH/MOVE routines that allow access to the full power of those commands. Small refactoring of planner(), pg_plan_query(), and pg_plan_queries() APIs to make it convenient to pass the planning options down from SPI. This is the core-code portion of Pavel Stehule's patch for scrollable cursor support in plpgsql; I'll review and apply the plpgsql changes separately.
* Avoid running build_index_pathkeys() in situations where there cannotTom Lane2007-04-15
| | | | | | | possibly be any useful pathkeys --- to wit, queries with neither any join clauses nor any ORDER BY request. It's nearly free to check for this case and it saves a useful fraction of the planning time for simple queries.
* Add --with-libxslt configure optionAndrew Dunstan2007-04-15
|
* Make JOHAB client only encoding per discussions in pgsql-hackersTatsuo Ishii2007-04-15
| | | | | "Server-side support of all encodings" around 2007/3/26. initdb required.
* Fix description how to create conversion function.Tatsuo Ishii2007-04-15
|
* Allow \timing in psql to have a better resolution than ~15ms on Windows.Magnus Hagander2007-04-13
| | | | ITAGAKI Takahiro
* Enable building contrib/xml2 if configured using --with-libxml.Andrew Dunstan2007-04-13
| | | | | | | | | | If this breaks things due to missing libxslt, then I'll have to revert it, but let's see if it breaks the buildfarm. Workarounds in case libxslt is missing include: . don't configure with libxml, or . don't build contrib modules from the contrib Makefile (use the individual module Makefiles instead), or . change the xml2 Makefile
* Add O_DIRECT support on Windows.Magnus Hagander2007-04-13
| | | | ITAGAKI Takahiro
* Fixes for RESET SESSION patch, per Alvaro. Fix a typo in the RESETNeil Conway2007-04-12
| | | | | ref page (sorry, my fault!), and simplify the coding of ResetTempTableNamespace().
* Rearrange mdsync() looping logic to avoid the problem that a sufficientlyTom Lane2007-04-12
| | | | | | | | | | | fast flow of new fsync requests can prevent mdsync() from ever completing. This was an unforeseen consequence of a patch added in Mar 2006 to prevent the fsync request queue from overflowing. Problem identified by Heikki Linnakangas and independently by ITAGAKI Takahiro; fix based on ideas from Takahiro-san, Heikki, and Tom. Back-patch as far as 8.1 because a previous back-patch introduced the problem into 8.1 ...
* Cancel pending fsync requests during WAL replay of DROP DATABASE, per bugTom Lane2007-04-12
| | | | | report from David Darville. Back-patch as far as 8.1, which may or may not have the problem but it seems a safe change anyway.
* Install debugger symbols (in their own directory)Magnus Hagander2007-04-12
|
* Enable IPV6 when building with MSVC.Magnus Hagander2007-04-12
|
* RESET SESSION, plus related new DDL commands. Patch from Marko Kreen,Neil Conway2007-04-12
| | | | | | | | | | | | | | reviewed by Neil Conway. This patch adds the following DDL command variants: RESET SESSION, RESET TEMP, RESET PLANS, CLOSE ALL, and DEALLOCATE ALL. RESET SESSION is intended for use by connection pool software and the like, in order to reset a client session to something close to its initial state. Note that while most of these command variants can be executed inside a transaction block (but are not transaction-aware!), RESET SESSION cannot. While this is inconsistent, it is intended to catch programmer mistakes: RESET SESSION in an open transaction block is probably unintended.
* Code review for btree page split WAL reduction patch. Make it actually workTom Lane2007-04-11
| | | | | | | (original code *always* created a full-page image for the left page, thus leaving the intended savings unrealized), avoid risk of not having enough room on the page during xlog restore, squeeze out another couple bytes in the xlog record, clean up neglected comments.
* Minor tweaking of index special-space definitions so that the variousTom Lane2007-04-09
| | | | | | | | | | index types can be reliably distinguished by examining the special space on an index page. Per my earlier proposal, plus the realization that there's no need for btree's vacuum cycle ID to cycle through every possible 16-bit value. Restricting its range a little costs nearly nothing and eliminates the possibility of collisions. Memo to self: remember to make bitmap indexes play along with this scheme, assuming that patch ever gets accepted.
* Add cancel handlers so it's possible to Ctrl-C clusterdb, reindexdbMagnus Hagander2007-04-09
| | | | | and vacuumdb. ITAGAKI Takahiro, with minor fixes from me.
* Make CLUSTER MVCC-safe. Heikki LinnakangasTom Lane2007-04-08
|
* Support syntax "CLUSTER table USING index", which is more logical.Bruce Momjian2007-04-08
| | | | Holger Schurig
* Don't remove the 'alias' field from flattened rangetable entries;Tom Lane2007-04-06
| | | | | there are some corner cases where this is needed by ruleutils.c for proper display of variables during EXPLAIN.
* Make 'col IS NULL' clauses be indexable conditions.Tom Lane2007-04-06
| | | | Teodor Sigaev, with some kibitzing from Tom Lane.
* Only run contrib check if there is a MakefileAndrew Dunstan2007-04-06
|
* Now that core functionality is depending on autoconf's AC_C_BIGENDIAN to beTom Lane2007-04-06
| | | | | | right, there seems precious little reason to have a pile of hand-maintained endianness definitions in src/include/port/*.h. Get rid of those, and make the couple of places that used them depend on WORDS_BIGENDIAN instead.
* Support varlena fields with single-byte headers and unaligned storage.Tom Lane2007-04-06
| | | | | | | | | This commit breaks any code that assumes that the mere act of forming a tuple (without writing it to disk) does not "toast" any fields. While all available regression tests pass, I'm not totally sure that we've fixed every nook and cranny, especially in contrib. Greg Stark with some help from Tom Lane
* Update XML error message text for missing libxml; update regressionBruce Momjian2007-04-05
| | | | output to match.
* Continue running contrib regression tests if one fails, and exitMagnus Hagander2007-04-05
| | | | with errorlevel 1 is >= 1 checks failed.
* Make sure list of tests is cleared out before getting the new listMagnus Hagander2007-04-05
| | | | of tests. Per Andrew Dunstan.
* Improve documentation/warning when --with-libxml is not used in theBruce Momjian2007-04-05
| | | | installation.
* improve test headingsAndrew Dunstan2007-04-04
|