- 20 9月, 2010 3 次提交
-
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
with Magnus's script to remove these.
-
- 19 9月, 2010 2 次提交
-
-
由 Tom Lane 提交于
The previous coding just terminated the COPY immediately after seeing the EOF marker (-1 where a row field count is expected). The expected CopyDone or CopyFail message just got thrown away later, since we weren't in COPY mode anymore. This behavior complicated matters for the JDBC driver, and arguably was the wrong thing in any case since a CopyFail message after the marker wouldn't be honored. Note that there is a behavioral change here: extra data after the EOF marker was silently ignored before, but now it will cause an error. Hence not back-patching, although this is arguably a bug. Per report and patch by Kris Jurka.
-
由 Tom Lane 提交于
the same number of columns expected by the insert. This suggests that there were extra parentheses that converted the intended column list into a row expression. Original patch by Marko Tiikkaja, rather heavily editorialized by me.
-
- 18 9月, 2010 1 次提交
-
-
由 Robert Haas 提交于
-
- 17 9月, 2010 4 次提交
-
-
由 Robert Haas 提交于
These checks are also present in objectaddress.c, so there's no need to recheck here.
-
由 Tom Lane 提交于
Per a question from Robert Haas.
-
由 Magnus Hagander 提交于
since it can happen when a process fails to start when the system is under high load. Per several bug reports and many peoples investigation. Back-patch to 8.4, which is as far back as the "deadman-switch" for shared memory access exists.
-
由 Tom Lane 提交于
copy-editing.
-
- 16 9月, 2010 3 次提交
-
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
There was an incorrect Assert in hstoreValidOldFormat(), which would cause immediate core dumps when attempting to work with pre-9.0 hstore data, but of course only in an assert-enabled build. Also, ghstore_decompress() incorrectly applied DatumGetHStoreP() to a datum that wasn't actually an hstore, but rather a ghstore (ie, a gist signature bitstring). That used to be harmless, but could now result in misbehavior if the hstore format conversion code happened to trigger. In reality, since ghstore is not marked toastable (and doesn't need to be), this function is useless anyway; we can lobotomize it down to returning the passed-in pointer. Both bugs found by Andrew Gierth, though this isn't exactly his proposed patch.
-
由 Tom Lane 提交于
when fld is of composite type. Per discussion of bug #5644 from Valentine Gogichashvili.
-
- 15 9月, 2010 5 次提交
-
-
由 Heikki Linnakangas 提交于
-
由 Heikki Linnakangas 提交于
new WAL arrives via streaming replication. This reduces the latency, and also allows us to use a longer polling interval, which is good for energy efficiency. We still need to poll to check for the appearance of a trigger file, but the interval is now 5 seconds (instead of 100ms), like when waiting for a new WAL segment to appear in WAL archive.
-
由 Heikki Linnakangas 提交于
dynamic pool of event handles, we can permanently assign one for each shared latch. Thanks to that, we no longer need a separate shared memory block for latches, and we don't need to know in advance how many shared latches there is, so you no longer need to remember to update NumSharedLatches when you introduce a new latch to the system.
-
由 Heikki Linnakangas 提交于
some "can't happen" scenarios, and spinlocks should only be held for a few instructions anyway. As pointed out by Fujii Masao.
-
由 Tom Lane 提交于
In these cases a qual can get marked with the removable rel in its required_relids, but this is just to schedule its evaluation correctly, not because it really depends on the rel. We were assuming that, in effect, we could throw away *all* quals so marked, which is nonsense. Tighten up the logic to be a little more paranoid about which quals belong to the outer join being considered for removal, and arrange for all quals that don't belong to be updated so they will still get evaluated correctly. Also fix another problem that happened to be exposed by this test case, which was that make_join_rel() was failing to notice some cases where a constant-false qual could be used to prove a join relation empty. If it's a pushed-down constant false, then the relation is empty even if it's an outer join, because the qual applies after the outer join expansion. Per report from Nathan Grange. Back-patch into 9.0.
-
- 14 9月, 2010 4 次提交
-
-
由 Heikki Linnakangas 提交于
milliseconds.
-
由 Heikki Linnakangas 提交于
an online backup instead of performing one. pg_ctl can detect that by checking if recovery.conf exists. Backup label file is renamed away early in recovery, so the window where backup label exists during recovery is normally very small, but you can run into it e.g if restore_command is set incorrectly and the startup process never finds even the first WAL segment containing the checkpoint record to start recovery from. Fujii Masao with comments by me.
-
由 Heikki Linnakangas 提交于
check, per request by Jeff Davis.
-
由 Robert Haas 提交于
Also, add cross-reference from pg_shadow.passwd to pg_authid.rolpasswd and fix a bit of markup I muffed in my previous commit. Per discussion with Josh Kupershmidt.
-
- 13 9月, 2010 4 次提交
-
-
由 Heikki Linnakangas 提交于
separating prototypes for functions in walreceiver.c and walreceiverfuncs.c with comments.
-
由 Heikki Linnakangas 提交于
make sense for walsender, but for example application_name and client_encoding do. We still don't apply per-role settings from pg_db_role_setting, because that would require connecting to a database to read the table. Fujii Masao
-
由 Bruce Momjian 提交于
it doesn't work. Backpatch to 9.0.X.
-
由 Robert Haas 提交于
Per discussion with Josh Kupershmidt.
-
- 12 9月, 2010 3 次提交
-
-
由 Bruce Momjian 提交于
Backpatch to 9.0.X.
-
由 Joe Conway 提交于
transaction snapshots, i.e. a snapshot registered at the beginning of a transaction. Change variable naming and comments to reflect this reality in preparation for a future, truly serializable mode, e.g. Serializable Snapshot Isolation (SSI). For the moment transaction snapshots are still used to implement SERIALIZABLE, but hopefully not for too much longer. Patch by Kevin Grittner and Dan Ports with review and some minor wording changes by me.
-
由 Heikki Linnakangas 提交于
the unixware buildfarm animals happy again.
-
- 11 9月, 2010 1 次提交
-
-
由 Heikki Linnakangas 提交于
wait until it is set. Latches can be used to reliably wait until a signal arrives, which is hard otherwise because signals don't interrupt select() on some platforms, and even when they do, there's race conditions. On Unix, latches use the so called self-pipe trick under the covers to implement the sleep until the latch is set, without race conditions. On Windows, Windows events are used. Use the new latch abstraction to sleep in walsender, so that as soon as a transaction finishes, walsender is woken up to immediately send the WAL to the standby. This reduces the latency between master and standby, which is good. Preliminary work by Fujii Masao. The latch implementation is by me, with helpful comments from many people.
-
- 10 9月, 2010 2 次提交
-
-
由 Michael Meskes 提交于
ecpg also does not regard cursor names as case-sensitive. Thanks to Zoltan Boszormenyi for the patch.
-
由 Tom Lane 提交于
It isn't, now that we ship the docs as loose files rather than a sub-tarball. Also adjust the wording in a couple of places to make the lists of required software read more consistently.
-
- 09 9月, 2010 2 次提交
-
-
由 Bruce Momjian 提交于
- remove excessive table cells - moving function parameters into function tags rather than having them being considered separate - add return type column on XML2 contrib module functions list and removing return types from function - add table header to XML2 contrib parameter table Thom Brown Backpatch to 9.0.X.
-
由 Peter Eisentraut 提交于
-
- 08 9月, 2010 1 次提交
-
-
由 Peter Eisentraut 提交于
-
- 07 9月, 2010 1 次提交
-
-
由 Bruce Momjian 提交于
collation/encoding to match English when reading controldata. This now matches the English variable setting used by pg_regress.c. Backpatch to 9.0.X.
-
- 05 9月, 2010 2 次提交
-
-
由 Tom Lane 提交于
Peter's original patch had this right, but I dropped the check while revising the code to search pg_constraint instead of pg_index. Spotted by Dean Rasheed.
-
由 Tom Lane 提交于
A long time ago, this didn't work nicely, but it seems to work on all recent versions of OS X. The blank-pad method is less desirable since it results in lots of extra space in ps' output. Per Alexey Klyukin.
-
- 03 9月, 2010 2 次提交
-
-
由 Tom Lane 提交于
Since the code underlying pg_get_expr() is not secure against malformed input, and can't practically be made so, we need to prevent miscreants from feeding arbitrary data to it. We can do this securely by declaring pg_get_expr() to take a new datatype "pg_node_tree" and declaring the system catalog columns that hold nodeToString output to be of that type. There is no way at SQL level to create a non-null value of type pg_node_tree. Since the backend-internal operations that fill those catalog columns operate below the SQL level, they are oblivious to the datatype relabeling and don't need any changes.
-
由 Tom Lane 提交于
A data-type-based solution, which is much cleaner and more bulletproof, will follow shortly. It seemed best to make this a separate commit though.
-