- 13 Feb, 2007 3 commits
-
-
Tom Lane authored
that overlap an outer join's min_righthand but aren't fully contained in it, to support joining within the RHS after having performed an outer join that can commute with this one. Aside from the direct fix in make_join_rel(), fix has_join_restriction() and GEQO's desirable_join() to consider this possibility. Per report from Ian Harding.
-
Bruce Momjian authored
openFlagsToCreateFileFlags() in certain cases.
-
Bruce Momjian authored
-
- 12 Feb, 2007 2 commits
-
-
Tom Lane authored
-
Teodor Sigaev authored
Per report from Jon Rosebaugh <jon@inklesspen.com>
-
- 11 Feb, 2007 4 commits
-
-
Peter Eisentraut authored
to XML names, which will be required for supporting XML export.
-
Tom Lane authored
-
Michael Meskes authored
-
Magnus Hagander authored
running as a service on Win32. Per report from Harald Armin Massa.
-
- 10 Feb, 2007 6 commits
-
-
Tom Lane authored
-
Magnus Hagander authored
-
Peter Eisentraut authored
-
Peter Eisentraut authored
-
Tom Lane authored
-
Tom Lane authored
order platform-specific. Add an ORDER BY clause to stop buildfarm failures.
-
- 09 Feb, 2007 16 commits
-
-
Neil Conway authored
the RHS of the assignment expands to a reference to the LHS.
-
Tom Lane authored
currently have any better strategy for this query than re-running the sub-select over and over; it seems unlikely that doing so 10000 times is a more useful test than doing it a few dozen times.
-
Peter Eisentraut authored
-
Peter Eisentraut authored
-
Tom Lane authored
entries for the victim database go away sooner rather than later. We already did the equivalent thing at the per-relation level, not sure why it's not been done for whole databases. With this change, pgstat_vacuum_tabstat should usually not find anything to do; though we still need it as a backstop in case DROPDB or TABPURGE messages get lost under load.
-
Peter Eisentraut authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
-
Bruce Momjian authored
< * Merge xmin/xmax/cmin/cmax back into three header fields < < Before subtransactions, there used to be only three fields needed to < store these four values. This was possible because only the current < transaction looks at the cmin/cmax values. If the current transaction < created and expired the row the fields stored where xmin (same as < xmax), cmin, cmax, and if the transaction was expiring a row from a < another transaction, the fields stored were xmin (cmin was not < needed), xmax, and cmax. Such a system worked because a transaction < could only see rows from another completed transaction. However, < subtransactions can see rows from outer transactions, and once the < subtransaction completes, the outer transaction continues, requiring < the storage of all four fields. With subtransactions, an outer < transaction can create a row, a subtransaction expire it, and when the < subtransaction completes, the outer transaction still has to have < proper visibility of the row's cmin, for example, for cursors. < < One possible solution is to create a phantom cid which represents a < cmin/cmax pair and is stored in local memory. Another idea is to < store both cmin and cmax only in local memory. < > * -Merge xmin/xmax/cmin/cmax back into three header fields
-
Tom Lane authored
keeping private state in each backend that has inserted and deleted the same tuple during its current top-level transaction. This is sufficient since there is no need to be able to determine the cmin/cmax from any other transaction. This gets us back down to 23-byte headers, removing a penalty paid in 8.0 to support subtransactions. Patch by Heikki Linnakangas, with minor revisions by moi, following a design hashed out awhile back on the pghackers list.
-
Bruce Momjian authored
-
Bruce Momjian authored
< * Consider placing all sequences in a single table > * Consider placing all sequences in a single table, or create a system > view
-
Bruce Momjian authored
< * Consider placing all sequences in a single table, now that system < tables are full transactional > * Consider placing all sequences in a single table
-
Bruce Momjian authored
> * Consider placing all sequences in a single table, now that system > tables are full transactional
-
- 08 Feb, 2007 9 commits
-
-
Bruce Momjian authored
* Add support for SQL-standard GENERATED/IDENTITY columns > http://archives.postgresql.org/pgsql-hackers/2006-08/msg00038.php
-
Tom Lane authored
-
Tom Lane authored
get away with not (re)initializing a local variable if the variable is marked "isconst" and not "isnull". Unfortunately it makes this decision after having already freed the old value, meaning that something like for i in 1..10 loop declare c constant text := 'hi there'; leads to subsequent accesses to freed memory, and hence probably crashes. (In particular, this is why Asif Ali Rehman's bug leads to crash and not just an unexpectedly-NULL value for SQLERRM: SQLERRM is marked CONSTANT and so triggers this error.) The whole thing seems wrong on its face anyway: CONSTANT means that you can't change the variable inside the block, not that the initializer expression is guaranteed not to change value across successive block entries. Hence, remove the "optimization" instead of trying to fix it.
-
Tom Lane authored
DECLARE section needs to know about it. Formerly, everyplace besides DECLARE that created variables needed to do "plpgsql_add_initdatums(NULL)" to prevent those variables from being sucked up as part of a subsequent DECLARE block. This is obviously error-prone, and in fact the SQLSTATE/SQLERRM patch had failed to do it for those two variables, leading to the bug recently exhibited by Asif Ali Rehman: a DECLARE within an exception handler tried to reinitialize SQLERRM. Although the SQLSTATE/SQLERRM patch isn't in any pre-8.1 branches, and so I can't point to a demonstrable failure there, it seems wise to back-patch this into the older branches anyway, just to keep the logic similar to HEAD.
-
Bruce Momjian authored
trnasformed to lower or upper string. Pavel Stehule
-
Bruce Momjian authored
ach backend to re-load all shared_preload_libraries. Korry Douglas
-
Bruce Momjian authored
Teodor Sigaev
-
Bruce Momjian authored
For win32 in general, this makes it possible to run the regression tests as an admin user by using the same restricted token method that's used by pg_ctl and initdb. For vc++, it adds building of pg_regress.exe, adds a resultmap, and fixes how it runs the install. Magnus Hagander
-
Bruce Momjian authored
pg_standby is a production-ready program that can be used to create a Warm Standby server. Other configuration is required as well, all of which is described in the main server manual. Simon Riggs
-