- 04 Dec, 2011 1 commit
-
-
Michael Meskes authored
code.
-
- 03 Dec, 2011 1 commit
-
-
Magnus Hagander authored
This makes it possible to use a libpq app with home directory set to /dev/null, for example - treating it the same as if the file doesn't exist (which it doesn't). Per bug #6302, reported by Diego Elio Petteno
-
- 02 Dec, 2011 4 commits
-
-
Bruce Momjian authored
Tom Lane, with minor adjustments by me.
-
Peter Eisentraut authored
This gives editors a better chance to treat these files as the SQL files that they are.
-
Tom Lane authored
PGresults used to be read-only from the application's viewpoint, but now that we've exposed various functions that allow modification of a PGresult, that sweeping statement is no longer accurate. Noted by Dmitriy Igrishin.
-
Heikki Linnakangas authored
invalid-page hash table, PANIC immediately. Immediate PANIC is much better than waiting for end-of-recovery, which is what we did before, because the end-of-recovery might not come until months later if this is a standby server. Also refrain from creating a restartpoint if there are invalid-page entries in the hash table. Restarting recovery from such a restartpoint would not see the invalid references, and wouldn't be able to cross-check them when consistency is reached. That wouldn't matter when things are going smoothly, but the more sanity checks you have the better. Fujii Masao
-
- 01 Dec, 2011 7 commits
-
-
Tom Lane authored
The point that you need parentheses for non-constant expressions apparently needs to be brought out a bit more clearly, per bug #6315.
-
Robert Haas authored
Not everyone has /pg linked to the src subdirectory of their PostgreSQL tree. Also, cc isn't the way to invoke the compiler everywhere.
-
Tom Lane authored
Since record[] uses array_in, it needs to have its element type passed as typioparam. In HEAD and 9.1, this fix essentially reverts commit 9bc933b2, which was a hack that is no longer needed since domains don't set their typelem anymore. Before that, adjust the logic so that only domains are excluded from being treated like arrays, rather than assuming that only base types should be included. Add a regression test to demonstrate the need for this. Per report from Maxim Boguk. Back-patch to 8.4, where type record[] was added.
-
Bruce Momjian authored
Josh Berkus
-
Bruce Momjian authored
-
Tom Lane authored
Per Emmanuel Kasper, sysctl works fine as of NetBSD 5.0.
-
Tom Lane authored
-
- 30 Nov, 2011 10 commits
-
-
Tom Lane authored
DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, Samoa. Historical corrections for Alaska and British East Africa.
-
Robert Haas authored
In the previous coding, callers were faced with an awkward choice: look up the name, do permissions checks, and then lock the table; or look up the name, lock the table, and then do permissions checks. The first choice was wrong because the results of the name lookup and permissions checks might be out-of-date by the time the table lock was acquired, while the second allowed a user with no privileges to interfere with access to a table by users who do have privileges (e.g. if a malicious backend queues up for an AccessExclusiveLock on a table on which AccessShareLock is already held, further attempts to access the table will be blocked until the AccessExclusiveLock is obtained and the malicious backend's transaction rolls back). To fix, allow callers of RangeVarGetRelid() to pass a callback which gets executed after performing the name lookup but before acquiring the relation lock. If the name lookup is retried (because invalidation messages are received), the callback will be re-executed as well, so we get the best of both worlds. RangeVarGetRelid() is renamed to RangeVarGetRelidExtended(); callers not wishing to supply a callback can continue to invoke it as RangeVarGetRelid(), which is now a macro. Since the only one caller that uses nowait = true now passes a callback anyway, the RangeVarGetRelid() macro defaults nowait as well. The callback can also be used for supplemental locking - for example, REINDEX INDEX needs to acquire the table lock before the index lock to reduce deadlock possibilities. There's a lot more work to be done here to fix all the cases where this can be a problem, but this commit provides the general infrastructure and fixes the following specific cases: REINDEX INDEX, REINDEX TABLE, LOCK TABLE, and and DROP TABLE/INDEX/SEQUENCE/VIEW/FOREIGN TABLE. Per discussion with Noah Misch and Alvaro Herrera.
-
Tom Lane authored
On a platform that isn't supplying __FILE__, previous coding would either crash or give a stale result for the filename string. Not sure how likely that is, but the original code catered for it, so let's keep doing so.
-
Peter Eisentraut authored
In vpath builds, the __FILE__ macro that is used in verbose error reports contains the full absolute file name, which makes the error messages excessively verbose. So keep only the base name, thus matching the behavior of non-vpath builds.
-
Tom Lane authored
Per buildfarm.
-
Tom Lane authored
-
Tom Lane authored
Force the transaction isolation level to READ COMMITTED in autovacuum worker and launcher processes. There is no benefit to using a higher isolation level, and doing so could result in delaying foreground transactions (or maybe even causing unnecessary serialization failures?). Noted by Dan Ports. Also, make sure we disable zero_damaged_pages and statement_timeout in the autovac launcher, not only workers. Now that the launcher can run transactions, these settings could affect its behavior, and it seems like the same arguments apply to the launcher as the workers.
-
Bruce Momjian authored
-
Tom Lane authored
Fix entirely broken handling of va_list printing routines, update some out-of-date comments, fix some bogus inclusion orders, fix NLS declarations, fix missed realloc calls.
-
Bruce Momjian authored
-
- 29 Nov, 2011 12 commits
-
-
Tom Lane authored
Simple extension of previous patch for CHECK constraints.
-
Bruce Momjian authored
pg_dumpall to use the same memory allocation functions as the others.
-
Bruce Momjian authored
Greg Smith
-
Tom Lane authored
This should make it easier to identify which row is problematic when an insert or update is processing many rows. The formatting is similar to that for unique-index violation messages, except that we limit field widths to 64 bytes since otherwise the message could get unreasonably long. (In particular, there's currently no attempt to quote or escape field values that contain commas etc.) Jan Kundrát, reviewed by Royce Ausburn, somewhat rewritten by me.
-
Peter Eisentraut authored
-
Peter Eisentraut authored
Disabled for now because some build farm members with low resources are not prepared to handle it.
-
Peter Eisentraut authored
They have been unneeded since the use of the string module has been removed in a65ed83f.
-
Peter Eisentraut authored
The old expression sed 's,$(srcdir),python3,' would normally resolve as sed 's,.,python3,', which is not really what we wanted. While it doesn't actually break anything right now, it's still wrong, so put in a bit more work to make it more robust.
-
Peter Eisentraut authored
-
Bruce Momjian authored
-
Tom Lane authored
Moving the code two full tab stops to the right requires rethinking of cosmetic code layout choices, which pgindent isn't really able to do for us. Whitespace and comment adjustments only, no code changes.
-
Tom Lane authored
While the deletion in itself wouldn't break things, any further creation of objects in the script would result in dangling pg_depend entries being added by recordDependencyOnCurrentExtension(). An example from Phil Sorber convinced me that this is just barely likely enough to be worth expending a couple lines of code to defend against. The resulting error message might be confusing, but it's better than leaving corrupted catalog contents for the user to deal with.
-
- 28 Nov, 2011 5 commits
-
-
Bruce Momjian authored
-
Tom Lane authored
This function has now grown enough cases that a switch seems appropriate. This results in a measurable speed improvement on some platforms, and should certainly not hurt. The code's in need of a pgindent run now, though. Andres Freund
-
Tom Lane authored
The correct information appears in the text, so just remove the statement in the table, where it did not fit nicely anyway. (Curiously, the correct info has been there much longer than the erroneous table entry.) Resolves problem noted by Daniele Varrazzo. In HEAD and 9.1, also do a bit of wordsmithing on other text on the page.
-
Tom Lane authored
The server name for a foreign table was not quoted at need, as per report from Ronan Dunklau. Also, queries related to FDW options were inadequately schema-qualified in places where the search path isn't just pg_catalog, and were inconsistently formatted everywhere, and we didn't always check that we got the expected number of rows from them.
-
Magnus Hagander authored
This can be used to remove the overhead of SSL compression on fast networks. Laurenz Albe
-