- 08 Apr, 2011 6 commits
-
-
Robert Haas authored
When a regular lock is held, SSI can use that in lieu of a predicate lock to detect rw conflicts; but if the regular lock is being taken by a subtransaction, we can't assume that it'll commit, so releasing the parent transaction's lock in that case is a no-no. Kevin Grittner
-
Bruce Momjian authored
This fixes a pg_upgrade bug that could lead to query errors when clog files are improperly removed.
-
Tom Lane authored
As noted by Thom Brown, this confuses the DocBook index processor; it fails to merge entries that differ only in whitespace, and sorts them unexpectedly as well. Seems like a toolchain bug, but I'm not going to hold my breath waiting for a fix. Note: easiest way to find these is to look for double spaces in HTML.index.
-
Tom Lane authored
Per a discussion with Gavin Flower. This barely scratches the surface of potential WITH (something RETURNING) use cases, of course, but it's one of the simplest compelling examples I can think of.
-
Robert Haas authored
Jan Urbański
-
Andrew Dunstan authored
Some versions of xcopy, notably on Windows 7 don't like it. Backpatch to 8.3, where we first used xcopy.
-
- 07 Apr, 2011 8 commits
-
-
Robert Haas authored
If we call hash_search() with HASH_ENTER, it will bail out rather than return NULL, so it's redundant to check for NULL again in the caller. Thus, in cases where we believe it's impossible for the hash table to run out of slots anyway, we can simplify the code slightly. On the flip side, in cases where it's theoretically possible to run out of space, we don't want to rely on dynahash.c to throw an error; instead, we pass HASH_ENTER_NULL and throw the error ourselves if a NULL comes back, so that we can provide a more descriptive error message. Kevin Grittner
-
Tom Lane authored
Remove the hard-wired assumption that __mips__ (and only __mips__) lacks dlopen in FreeBSD and OpenBSD. This assumption is outdated at least for OpenBSD, as per report from an anonymous 9.1 tester. We can perfectly well use HAVE_DLOPEN instead to decide which code to use. Some other cosmetic adjustments to make freebsd.c, netbsd.c, and openbsd.c exactly alike.
-
Peter Eisentraut authored
This used to work, but since PGCLIENTENCODING is now a connection option variable, pg_upgrade would prevent it.
-
Tom Lane authored
The original coding supposed that a dump TOC file could never contain lines longer than 1K. The folly of that was exposed by a recent report from Per-Olov Esgard. We only really need to see the first dozen or two bytes of each line, since we're just trying to read off the numeric ID at the start of the line; so there's no need for a particularly huge buffer. What there is a need for is logic to not process continuation bufferloads. Back-patch to all supported branches, since it's always been like this.
-
Bruce Momjian authored
This is needed only in 9.1 because only 9.0 had this and no one is upgrading from a 9.0 beta to 9.0 anymore. We basically don't backpatch 9.0 beta fixes at this point.
-
Bruce Momjian authored
in pg_upgrade.
-
Tom Lane authored
Previous patches took care of assorted places that call transformExpr from outside the main parser, but I overlooked the fact that some places use transformWhereClause as a shortcut for transformExpr + coerce_to_boolean. In particular this broke collation-sensitive index WHERE clauses, as per report from Thom Brown. Trigger WHEN and rule WHERE clauses too. I'm not forcing initdb for this fix, but any affected indexes, triggers, or rules will need to be dropped and recreated.
-
Tom Lane authored
The previous functions of assign hooks are now split between check hooks and assign hooks, where the former can fail but the latter shouldn't. Aside from being conceptually clearer, this approach exposes the "canonicalized" form of the variable value to guc.c without having to do an actual assignment. And that lets us fix the problem recently noted by Bernd Helmle that the auto-tune patch for wal_buffers resulted in bogus log messages about "parameter "wal_buffers" cannot be changed without restarting the server". There may be some speed advantage too, because this design lets hook functions avoid re-parsing variable values when restoring a previous state after a rollback (they can store a pre-parsed representation of the value instead). This patch also resolves a longstanding annoyance about custom error messages from variable assign hooks: they should modify, not appear separately from, guc.c's own message about "invalid parameter value".
-
- 06 Apr, 2011 3 commits
-
-
Peter Eisentraut authored
-
Peter Eisentraut authored
-
Peter Eisentraut authored
This mimics the traceback information the Python interpreter prints with exceptions. Jan Urbański
-
- 05 Apr, 2011 5 commits
-
-
Peter Eisentraut authored
-
Robert Haas authored
When we release and reacquire SerializableXactHashLock, we must recheck whether an R/W conflict still needs to be flagged, because it could have changed under us in the meantime. And when we release the partition lock, we must re-walk the list of predicate locks from the beginning, because our pointer could get invalidated under us. Bug report #5952 by Yamamoto Takashi. Patch by Kevin Grittner.
-
Alvaro Herrera authored
Gabriele Bartolini
-
Robert Haas authored
Erik Rijkers
-
Robert Haas authored
Joey Adams, per gripe from Ramanujam. Review by myself and Tom Lane.
-
- 04 Apr, 2011 10 commits
-
-
Simon Riggs authored
Also avoid hardcoding the current default state by giving it the name "on" and replace with a meaningful name that reflects its behaviour. Coding only, no change in behaviour.
-
Simon Riggs authored
-
Simon Riggs authored
-
Alvaro Herrera authored
Per Robert Haas
-
Robert Haas authored
This means one less thing to configure when setting up synchronous replication, and also avoids some ambiguity around what the behavior should be when the settings of these variables conflict. Fujii Masao, with additional hacking by me.
-
Alvaro Herrera authored
This improves compatibility with external toolchains, such as those used by some documentation translation tools. Gabriele Bartolini
-
Robert Haas authored
KaiGai Kohei
-
Robert Haas authored
Dan Ports
-
Alvaro Herrera authored
-
Robert Haas authored
The previous coding set attinhcount too high in some cases, resulting in an undumpable, undroppable column. Per bug #5856, reported by Naoya Anzai. See also commit 31b6fc06, which fixes a similar bug in ALTER TABLE .. ADD CONSTRAINT. Patch by Noah Misch.
-
- 03 Apr, 2011 3 commits
-
-
Robert Haas authored
Gianni Ciolli, reviewed by Noah Misch
-
Robert Haas authored
This isn't applicable on Windows, and the internal link to the psql documentation should be more than sufficient. Susanne Ebrecht
-
Robert Haas authored
If a smart shutdown occurs just as a child is starting up, and the child subsequently becomes a walsender, there is a race condition: the postmaster might count the exstant backends, determine that there is one normal backend, and wait for it to die off. Had the walsender transition already occurred before the postmaster counted, it would have proceeded with the shutdown. To fix this, have each child that transforms into a walsender kick the postmaster just after doing so, so that the state machine is certain to advance. Fujii Masao
-
- 02 Apr, 2011 2 commits
-
-
Tom Lane authored
This would lead to leaking the PGconn structure after an error detected by conninfo_array_parse(), as well as failing to return a useful error message in such cases. Backpatch to 9.0 where the error was introduced. Joseph Adams
-
Heikki Linnakangas authored
Susanne Ebrecht and me
-
- 01 Apr, 2011 3 commits
-
-
Magnus Hagander authored
Instead, write the unconverted output - it will be in the wrong encoding, but at least we don't crash. Rushabh Lathia
-
Robert Haas authored
-
Robert Haas authored
Shigeru Hanada, with some corrections.
-