- 20 Jun, 2011 2 commits
-
-
Alvaro Herrera authored
Some callers were creating copies of tuple descriptors to pass to that function, stating in code comments that it was necessary because it modified the passed descriptor. Code inspection reveals this not to be true, and indeed not all callers are passing copies in the first place. So remove the extra ones and the misleading comments about this behavior as well.
-
Michael Meskes authored
Applied patch by Christoph Berg <cb@df7cb.de> to replace placeholder "%s" by correct string.
-
- 19 Jun, 2011 3 commits
-
-
Peter Eisentraut authored
The release notes may contain non-ASCII characters (for contributor names), which lynx converts to the encoding determined by the current locale. The get output that is deterministic and easily readable by everyone, we make lynx produce LATIN1 and then convert that to ASCII with transliteration for the non-ASCII characters.
-
Tom Lane authored
-
Tom Lane authored
I mis-simplified the test where ANALYZE decided if it could get away without doing anything: under the new regime, that's never allowed. Per bug #6068 from Jeff Janes. Back-patch to 8.4, just like previous patch.
-
- 18 Jun, 2011 3 commits
-
-
Peter Eisentraut authored
-
Peter Eisentraut authored
-
Magnus Hagander authored
Since we now have a global rule in the root .gitignore, there's no need to keep directory-specific ones as well. Noted by Peter Eisentraut
-
- 17 Jun, 2011 8 commits
-
-
Tom Lane authored
This is a dangerous example to provide because on machines with GNU cp, it will silently do the wrong thing and risk archive corruption. Worse, during the 9.0 cycle somebody "improved" the discussion by removing the warning that used to be there about that, and instead leaving the impression that the command would work as desired on most Unixen. It doesn't. Try to rectify the damage by providing an example that is safe most everywhere, and then noting that you can try cp -i if you want but you'd better test that. In back-patching this to all supported branches, I also added an example command for Windows, which wasn't provided before 9.0.
-
Andrew Dunstan authored
Per gripe from Tom Lane. I have tested this with VC 2008, and assume it will work with earlier versions.
-
Tom Lane authored
For some reason, when we (I) added table lock acquisition to pg_dump, we didn't think about making it happen as soon as possible after the start of the transaction. What with subsequent additions, there was actually quite a lot going on before we got around to that; which sort of defeats the purpose. Rearrange the order of calls in dumpSchema() to close the risk window as much as we easily can. Back-patch to all supported branches.
-
Robert Haas authored
The previous code went into an infinite loop after overflow. In fact, an overflow is not really an error; it just means that the current value is the last one we need to return. So, just arrange to stop immediately when overflow is detected. Back-patch all the way.
-
Robert Haas authored
The code that created the init fork neglected to make sure that the relation was open at the smgr level before attempting to invoke smgr. This didn't happen every time; only when the relcache entry was rebuilt along the way. Per report from Garick Hamlin.
-
Robert Haas authored
There's no need to add space for startupBufferPinWaitBufId, because it's part of the PROC_HDR object for which this function already allocates space. This has been wrong for a while, but the only consequence is that our shared memory allocation is increased by 4 bytes, so no back-patch.
-
Robert Haas authored
Per Josh Kupershmidt and Tom Lane.
-
Andrew Dunstan authored
-
- 16 Jun, 2011 9 commits
-
-
Tom Lane authored
We had already converted most places to this style, but this patch gets the last few that were still doing it the old way. The main advantage is that this exposes a greppable name for each target column, rather than having to rely on comments (which a couple of places failed to provide anyhow). Richard Hopkins, additional work by me to clean up update_attstats() too
-
Peter Eisentraut authored
gcc 4.6 complains about these because of the new option -Wunused-but-set-variable which comes in with -Wall, so cast them to void, which avoids the warning.
-
Peter Eisentraut authored
Flexible array members are a C99 feature that avoids "cheating" in the declaration of variable-length arrays at the end of structs. With Autoconf support, this should be transparent for older compilers. We start with one use in gist.h because gcc 4.6 started to raise a warning there. Over time, it can be expanded to other places in the source, but they will likely need some review of sizeof and offsetof usage. The current change in gist.h appears to be safe in this regard.
-
Heikki Linnakangas authored
SSI is based on, as well as the optimizations about relative commit times and read-only transactions. Plus a bunch of other misc fixes and improvements. Dan Ports
-
Alvaro Herrera authored
-
Tom Lane authored
-
Heikki Linnakangas authored
Kevin Grittner
-
Simon Riggs authored
Btree pages were recycled after VACUUM deletes all records on a page and then a subsequent VACUUM occurs after the RecentXmin horizon is reached. Using RecentXmin meant that we did not respond correctly to the user controls provide to avoid Hot Standby conflicts and so spurious conflicts could be generated in some workload combinations. We now reuse pages only when we reach RecentGlobalXmin, which can be much later in the presence of long running queries and is also controlled by vacuum_defer_cleanup_age and hot_standby_feedback. Noah Misch and Simon Riggs
-
Tom Lane authored
Per recommendation from Peter. Neither choice is bulletproof, but this is the existing style and it does help prevent unexpected environment variable substitution.
-
- 15 Jun, 2011 6 commits
-
-
Tom Lane authored
The initial commit of the ALTER TABLE ADD FOREIGN KEY NOT VALID feature failed to support labeling such constraints as deferrable. The best fix for this seems to be to fold NOT VALID into ConstraintAttributeSpec. That's a bit more general than the documented syntax, but it allows better-targeted syntax error messages. In addition, do some mostly-but-not-entirely-cosmetic code review for the whole NOT VALID patch.
-
Bruce Momjian authored
-
Tom Lane authored
This oversight could result in a tuplestore using much more than the intended amount of memory. It would only happen in a code path that loaded a tuplestore via tuplestore_putvalues(), and many of those won't emit huge amounts of data; but cases such as holdable cursors and plpgsql's RETURN NEXT command could have the problem. The fix ensures that the tuplestore will switch to write-to-disk mode when it overruns work_mem. The potential overrun was finite, because we would still count the space used by the tuple pointer array, so the tuplestore code would eventually flip into write-to-disk mode anyway. When storing wide tuples we would go far past the expected work_mem usage before that happened; but this may account for the lack of prior reports. Back-patch to 8.4, where tuplestore_putvalues was introduced. Per bug #6061 from Yann Delorme.
-
Tom Lane authored
The short-form -z switch didn't work, for lack of telling getopt_long about it; and even if specified long-form, it failed to do anything, because the various tests elsewhere in the file would take Z_DEFAULT_COMPRESSION (which is -1) as meaning "don't compress". Per bug #6060 from Shigehiro Honda, though I editorialized on his patch a bit.
-
Heikki Linnakangas authored
the marked-for-death flag. It was only set for a fleeting moment while a transaction was being cleaned up at rollback. All the places that checked for the rolled-back flag should also check the marked-for-death flag, as both flags mean that the transaction will roll back. I also renamed the marked-for-death into "doomed", which is a lot shorter name.
-
Heikki Linnakangas authored
snapshots, like in REINDEX, are basically non-transactional operations. The DDL operation itself might participate in SSI, but there's separate functions for that. Kevin Grittner and Dan Ports, with some changes by me.
-
- 14 Jun, 2011 9 commits
-
-
Peter Eisentraut authored
This matches what \d actually accepts.
-
Peter Eisentraut authored
This has always been true, it was just never documented.
-
Bruce Momjian authored
the same file system, and that authentication should lock out normal users. Per suggestsion from #postgresql irc channel. Backpatch to 9.1.
-
Tom Lane authored
Apparently there is no buildfarm critter exercising this case after all, because it fails in several places. With this patch, build, install, check-world, and installcheck-world pass for me on OS X.
-
Peter Eisentraut authored
The variable became obsolete in commit 68739ba8, but only gcc 4.6 shows the warning.
-
Peter Eisentraut authored
We don't have to remove the column if no one is bothered, but it's useful to comment on it in case someone looks for it in newer standards versions.
-
Bruce Momjian authored
-
Alvaro Herrera authored
Per note from Tom
-
Alvaro Herrera authored
... when talking about how good they are in replacement of bulk DELETE in partitioned setups. The original wording was a bit confusing. Per an observation from David Wheeler.
-