aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* Update some obsolete stuff in the GRANT and REVOKE reference pages:Tom Lane2007-10-30
| | | | | simplify the syntax examples by unifying user and group cases, and fix no-longer-correct example of psql \z output. Per Erwin Brandstetter.
* Add a note pointing out that some other databases make GREATEST andTom Lane2007-10-30
| | | | | LEAST handle NULL arguments differently than we do. Per a discussion on 30-Jun that somehow didn't get done.
* simple script to pull together a very small (<500k) tar file that buildsMarc G. Fournier2007-10-30
| | | | | | | | | *just* libpq ... its not perfect, as it pulls in more files then is necessarily required to build, but as it is, it requires one simple patch to configure.in in order to work ... Tested on FreeBSD ... patch for configure.in hasn't been applied, but putting the script in place so that it doesn't get lost ...
* In the previous commit message, I forgot to credit Simon Riggs who providedAlvaro Herrera2007-10-29
| | | | the patch, which I modified only slightly before applying.
* Mention the index name in 'could not create unique index' errors,Tom Lane2007-10-29
| | | | per suggestion from Rene Gollent.
* Remove the hack in the grammar that "optimized away" DEFAULT NULL clauses.Tom Lane2007-10-29
| | | | | | | | | | | | | | | Instead put in a test to drop a NULL default at the last moment before storing the catalog entry. This changes the behavior in a couple of ways: * Specifying DEFAULT NULL when creating an inheritance child table will successfully suppress inheritance of any default expression from the parent's column, where formerly it failed to do so. * Specifying DEFAULT NULL for a column of a domain type will correctly override any default belonging to the domain; likewise for a sub-domain. The latter change happens because by the time the clause is checked, it won't be a simple null Const but a CoerceToDomain expression. Personally I think this should be back-patched, but there doesn't seem to be consensus for that on pgsql-hackers, so refraining.
* - Add check of already changed page while replay WAL. This touches onlyTeodor Sigaev2007-10-29
| | | | | | | | | | | | | ginRedoInsert(), because other ginRedo* functions rewrite whole page or make changes which could be applied several times without consistent's loss - Remove check of identifying of corresponding split record: it's possible that replaying of WAL starts after actual page split, but before removing of that split from incomplete splits list. In this case, that check cause FATAL error. Per stress test which reproduces bug reported by Craig McElroy <craig.mcelroy@contegix.com>
* Documentation wording fixes.Bruce Momjian2007-10-29
| | | | Guillaume Lelarge
* Update Russian FAQ.Bruce Momjian2007-10-29
| | | | corochoone@gmail.com
* Clarify restart is of the "database" server, in FAQ.Bruce Momjian2007-10-29
|
* Make variable static, per Tom.Magnus Hagander2007-10-29
|
* Fix coredump during replay WAL after crash. Change entrySplitPage() to preventTeodor Sigaev2007-10-29
| | | | | | | | usage of any information from system catalog, because it could be called during replay of WAL. Per bug report from Craig McElroy <craig.mcelroy@contegix.com>. Patch doesn't change on-disk storage.
* Add compat file for dynamically loading the functions that MinGW is missingMagnus Hagander2007-10-29
| | | | | the imports for. Add RegisterWaitForSingleObject() to the list of such functions, which should take care of the current buildfarm breakage.
* New versions of mingw have gettimeofday(), so add an autoconf testMagnus Hagander2007-10-29
| | | | for this.
* Remove claim that ts_headline knows how to generate multiple ellipsis-separatedTom Lane2007-10-29
| | | | | excerpts of a document. That's clearly desirable, but the functionality is not there yet.
* Ooops, fat-fingered last commit message. Should haveTom Lane2007-10-28
| | | | | mentioned updating FAQ_IRIX for information about buggy MIPSPro compiler version, now confirmed by Herve Boulouis.
* FAQ_IRIXTom Lane2007-10-28
|
* Make pg_dump and friends consistently report both the filename and theTom Lane2007-10-28
| | | | | | errno string when complaining of fopen failures. Per gripe from Bob Pawley, it's not always instantly obvious to the user which name we tried to open.
* Fix a couple of issues with pg_dump's handling of inheritance child tablesTom Lane2007-10-28
| | | | | | | | | | | | | | | | | | that have default expressions different from their parent. First, if the parent table's default expression has to be split out as a separate ALTER TABLE command, we need a dependency constraint to ensure that the child's command is given second. This is because the ALTER TABLE on the parent will propagate to the child. (We can't prevent that by using ONLY on the parent's command, since it's possible that other children exist that should receive the inherited default.) Second, if the child has a NULL default where the parent does not, we have to explicitly say DEFAULT NULL on the child in order for this state to be preserved after reload. (The latter actually doesn't work right because of a backend bug, but that is a separate issue.) Backpatch as far as 8.0. 7.x pg_dump has enough issues with altered tables (due to lack of dependency analysis) that trying to fix this one doesn't seem very productive.
* Change text search parsing rules for hyphenated words so that digit stringsTom Lane2007-10-27
| | | | | | | containing decimal points aren't considered part of a hyphenated word. Sync the hyphenated-word lookahead states with the subsequent part-by-part reparsing states so that we don't get different answers about how much text is part of the hyphenated word. Per my gripe of a few days ago.
* Add some rudimentary tracing code to the default text search parser, to helpTom Lane2007-10-27
| | | | | | in debugging its state-machine rules. Const-ify all the constant tables. Minor other code cleanup, including using "token" rather than "lexeme" to describe the output strings.
* Rename default text search parser's "uri" token type to "url_path",Tom Lane2007-10-27
| | | | | | per recommendation from Alvaro. This doesn't force initdb since the numeric token type in the catalogs doesn't change; but note that the expected regression test output changed.
* Avoid considering both sort directions as equally useful for merging.Tom Lane2007-10-27
| | | | | | | | | This doubles the planning workload for mergejoins while not actually accomplishing much. The only useful case is where one of the directions matches the query's ORDER BY request; therefore, put a thumb on the scales in that direction, and otherwise arbitrarily consider only the ASC direction. (This is a lot easier now than it would've been before 8.3, since we have more semantic knowledge embedded in PathKeys now.)
* Stamp 8.3beta2.REL8_3_BETA2Tom Lane2007-10-27
|
* Minor wording improvements per suggestion from Jeff Davis. Also tweakTom Lane2007-10-27
| | | | hyphenated-word parser examples per earlier discussion with Alvaro.
* Translation updatesPeter Eisentraut2007-10-27
|
* Change win32 child-death tracking code to use a threadpool to wait forMagnus Hagander2007-10-26
| | | | | | | | childprocess deaths instead of using one thread per child. This drastastically reduces the address space usage and should allow for more backends running. Also change the win32_waitpid functionality to use an IO Completion Port for queueing child death notices instead of using a fixed-size array.
* Allow an autovacuum worker to be interrupted automatically when it is foundAlvaro Herrera2007-10-26
| | | | | to be locking another process (except when it's working to prevent Xid wraparound problems).
* Remove second-in-paragraph usage of "Postgres" in FAQ_DEV.Bruce Momjian2007-10-26
|
* Remove use of "Postgres" aliases in the FAQ in second-in-paragraphBruce Momjian2007-10-26
| | | | cases.
* Change have_join_order_restriction() so that we do not force a clauseless joinTom Lane2007-10-26
| | | | | | | | | | | | | | | | if either of the input relations can legally be joined to any other rels using join clauses. This avoids uselessly (and expensively) considering a lot of really stupid join paths when there is a join restriction with a large footprint, that is, lots of relations inside its LHS or RHS. My patch of 15-Feb-2007 had been causing the code to consider joining *every* combination of rels inside such a group, which is exponentially bad :-(. With this behavior, clauseless bushy joins will be done if necessary, but they'll be put off as long as possible. Per report from Jakub Ouhrabka. Backpatch to 8.2. We might someday want to backpatch to 8.1 as well, but 8.1 does not have the problem for OUTER JOIN nests, only for IN-clauses, so it's not clear anyone's very likely to hit it in practice; and the current patch doesn't apply cleanly to 8.1.
* Avoid having backend-only code compiled into ecpg. Per Zdenek KotalaTom Lane2007-10-26
|
* Avoid including any backend-only stuff in the zic utility program.Tom Lane2007-10-26
| | | | Per gripe from Zdenek Kotala, though not exactly his patch.
* Set Japanese FAQ character code to UTF-8.Bruce Momjian2007-10-26
| | | | Jun Kuwamura
* Add plpgsql doc example of RETURN NEXT.Bruce Momjian2007-10-26
| | | | Ulrich Kroener
* Make initdb's selection of default text search configuration dependTom Lane2007-10-25
| | | | | | only on the 'language' part of the locale name, ignoring the country code. We may need to be smarter later when there are more built-in configurations, but for now this is good enough and avoids having to bloat the table.
* Fix memory management for new variables -- they must actually surviveAlvaro Herrera2007-10-25
| | | | | transaction end, in case we decide to do a vacuum analyze (which is done in two xacts).
* Fix ALTER SEQUENCE so that it does not affect the value of currval() forTom Lane2007-10-25
| | | | | | | | the sequence. Also, make setval() with is_called = false not affect the currval state, either. Per report from Kris Jurka that an implicit ALTER SEQUENCE OWNED BY unexpectedly caused currval() to become valid. Since this isn't 100% backwards compatible, it will go into HEAD only; I'll put a more limited patch into 8.2.
* Extract catalog info for error reporting before an error actually happens.Alvaro Herrera2007-10-25
| | | | | | Also, remove redundant reset of for-wraparound PGPROC flag. Thanks to Tom Lane for noticing both bogosities.
* Tweak new error messages to match the actual syntax of DECLARE CURSOR.Tom Lane2007-10-25
| | | | | (Last night I copied-and-pasted from the WITH HOLD case, but that's wrong because of the bizarrely irregular syntax specified by the standard.)
* Use more real-world examples in the text search parser documentation.Alvaro Herrera2007-10-25
|
* Add new encoding aliases for Solaris, per Zdenek Kotala.Alvaro Herrera2007-10-25
|
* Update release notes to current CVS.Bruce Momjian2007-10-25
|
* Disallow scrolling of FOR UPDATE/FOR SHARE cursors, so as to avoid problemsTom Lane2007-10-24
| | | | | | | | | | | in corner cases such as re-fetching a just-deleted row. We may be able to relax this someday, but let's find out how many people really care before we invest a lot of work in it. Per report from Heikki and subsequent discussion. While in the neighborhood, make the combination of INSENSITIVE and FOR UPDATE throw an error, since they are semantically incompatible. (Up to now we've accepted but just ignored the INSENSITIVE option of DECLARE CURSOR.)
* Remove obsolete statement that you can't update through a cursor.Tom Lane2007-10-24
|
* Rearrange vacuum-related bits in PGPROC as a bitmask, to better supportAlvaro Herrera2007-10-24
| | | | | | | | | having several of them. Add two more flags: whether the process is executing an ANALYZE, and whether a vacuum is for Xid wraparound (which is obviously only set by autovacuum). Sneakily move the worker's recently-acquired PostAuthDelay to a more useful place.
* Fix an error in make_outerjoininfo introduced by my patch of 30-Aug: the codeTom Lane2007-10-24
| | | | | | | | | | | | | neglected to test whether an outer join's join-condition actually refers to the lower outer join it is looking at. (The comment correctly described what was supposed to happen, but the code didn't do it...) This often resulted in adding an unnecessary constraint on the join order of the two outer joins, which was bad enough. However, it also seems to expose a performance problem in an older patch (from 15-Feb): once we've decided that there is a join ordering constraint, we will start trying clauseless joins between every combination of rels within the constraint, which pointlessly eats up lots of time and space if there are numerous rels below the outer join. That probably needs to be revisited :-(. Per gripe from Jakub Ouhrabka.
* Danish_Danmark -> Danish_DenmarkAlvaro Herrera2007-10-24
|
* Minor changes to autovacuum worker: change error handling so that it continuesAlvaro Herrera2007-10-24
| | | | | | | | | | | | | with the next table on schedule instead of exiting, in all cases instead of just on query cancel. Add a errcontext() line indicating the activity of the worker to the error message when it is cancelled. Change the WorkerInfo struct to contain a pointer to the worker's PGPROC instead of just the PID. Add forgotten post-auth delays, per Simon Riggs. Also to autovac launcher.
* Fix UPDATE/DELETE WHERE CURRENT OF to support repeated update and update-Tom Lane2007-10-24
| | | | | | | | | | | | | | | | then-delete on the current cursor row. The basic fix is that nodeTidscan.c has to apply heap_get_latest_tid() to the current-scan-TID obtained from the cursor query; this ensures we get the latest row version to work with. However, since that only works if the query plan is a TID scan, we also have to hack the planner to make sure only that type of plan will be selected. (Formerly, the planner might decide to apply a seqscan if the table is very small. This change is probably a Good Thing anyway, since it's hard to see how a seqscan could really win.) That means the execQual.c code to support CurrentOfExpr as a regular expression type is dead code, so replace it with just an elog(). Also, add regression tests covering these cases. Note that the added tests expose the fact that re-fetching an updated row misbehaves if the cursor used FOR UPDATE. That's an independent bug that should be fixed later. Per report from Dharmendra Goyal.