- 19 11月, 2008 8 次提交
-
-
由 Heikki Linnakangas 提交于
truncations in FSM code, call FreeSpaceMapTruncateRel from smgr_redo. To make that cleaner from modularity point of view, move the WAL-logging one level up to RelationTruncate, and move RelationTruncate and all the related WAL-logging to new src/backend/catalog/storage.c file. Introduce new RelationCreateStorage and RelationDropStorage functions that are used instead of calling smgrcreate/smgrscheduleunlink directly. Move the pending rel deletion stuff from smgrcreate/smgrscheduleunlink to the new functions. This leaves smgr.c as a thin wrapper around md.c; all the transactional stuff is now in storage.c. This will make it easier to add new forks with similar truncation logic, like the visibility map.
-
由 Teodor Sigaev 提交于
Actually, it can't but some compilers are not smart enough. Per Peter Eisentraut gripe.
-
由 Peter Eisentraut 提交于
Sort the output by command name. This previously only worked by source file name, which doesn't always match the command name exactly. And it certainly won't work for multiple refnames.
-
由 Bruce Momjian 提交于
table is less abstract. Most common implementations were already mentioned in the text.
-
由 Tom Lane 提交于
slow-running queries. Takahiro Itagaki
-
由 Tom Lane 提交于
somewhat reasonably. It's not perfect, but it beats the kluge proposed in the auto-explain patch ...
-
由 Tom Lane 提交于
* Refactor explain.c slightly to export a convenient-to-use subroutine for printing EXPLAIN results. * Provide hooks for plugins to get control at ExecutorStart and ExecutorEnd as well as ExecutorRun. * Add some minimal support for tracking the total runtime of ExecutorRun. This code won't actually do anything unless a plugin prods it to. * Change the API of the DefineCustomXXXVariable functions to allow nonzero "flags" to be specified for a custom GUC variable. While at it, also make the "bootstrap" default value for custom GUCs be explicitly specified as a parameter to these functions. This is to eliminate confusion over where the default comes from, as has been expressed in the past by some users of the custom-variable facility. * Refactor GUC code a bit to ensure that a custom variable gets initialized to something valid (like its default value) even if the placeholder value was invalid.
-
由 Magnus Hagander 提交于
Andrew Chernow
-
- 18 11月, 2008 2 次提交
-
-
由 Peter Eisentraut 提交于
getpeerucred() function. Author: Garick Hamlin <ghamlin@isc.upenn.edu>
-
由 Bruce Momjian 提交于
conflict resolution.
-
- 17 11月, 2008 2 次提交
-
-
由 Teodor Sigaev 提交于
Performance is increased from 50% up to 10^3 times depending on data.
-
由 Tom Lane 提交于
locate the target row, if the cursor was declared with FOR UPDATE or FOR SHARE. This approach is more flexible and reliable than digging through the plan tree; for instance it can cope with join cursors. But we still provide the old code for use with non-FOR-UPDATE cursors. Per gripe from Robert Haas.
-
- 16 11月, 2008 4 次提交
-
-
由 Tom Lane 提交于
-
由 Andrew Dunstan 提交于
-
由 Peter Eisentraut 提交于
also backpatched to 8.3
-
由 Tom Lane 提交于
return the tableoid as well as the ctid for any FOR UPDATE targets that have child tables. All child tables are listed in the ExecRowMark list, but the executor just skips the ones that didn't produce the current row. Curiously, this longstanding restriction doesn't seem to have been documented anywhere; so no doc changes.
-
- 15 11月, 2008 11 次提交
-
-
由 Tom Lane 提交于
procedure support: it's possible to get confused because exported procedures have two different addresses. Per Andrew Chernow.
-
由 Magnus Hagander 提交于
since it's now just a SQL module and no C code.
-
由 Tom Lane 提交于
This continues the saga of trying to get PGDLLIMPORT to work in pg_crc.h in both backend and frontend environments.
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
array_agg() and unnest(). We could drop it entirely in the future, but let's keep it for a release or two as a compatibility assist.
-
由 Tom Lane 提交于
if the user is superuser. This makes available to extension modules the same sort of trick being practiced by array_agg(). The reason for the superuser restriction is that you could crash the system by connecting up an incompatible pair of internal-using functions as an aggregate. It shouldn't interfere with any legitimate use, since you'd have to be superuser to create the internal-using transition and final functions anyway.
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
returns VOID. This is the last of the easy fixes I recommended in 11870.1218838360@sss.pgh.pa.us --- the others got done awhile ago but I forgot about this one.
-
由 Tom Lane 提交于
-
由 Michael Meskes 提交于
-
由 Michael Meskes 提交于
-
- 14 11月, 2008 12 次提交
-
-
由 Heikki Linnakangas 提交于
before passing it to elog.
-
由 Peter Eisentraut 提交于
entries, we don't have to do two builds here as well.
-
由 Peter Eisentraut 提交于
another section if required by the platform (instead of the old way of building them in section "l" and always transforming them to the platform-specific section). This speeds up the installation on common platforms, and it avoids some funny business with the man page tools and build process.
-
由 Michael Meskes 提交于
-
由 Michael Meskes 提交于
-
由 Tom Lane 提交于
a pointer, why don't we just fix that. Every known use of "internal" really means a pointer anyway.
-
由 Alvaro Herrera 提交于
heap_form_tuple. Since this removes the last remaining caller of heap_addheader, remove it. Extracted from the column privileges patch from Stephen Frost, with further code cleanups by me.
-
由 Tom Lane 提交于
anyelement. This lacks the WITH ORDINALITY option, as well as the multiple input arrays option added in the most recent SQL specs. But it's still a pretty useful subset of the spec's functionality, and it is enough to allow obsoleting contrib/intagg.
-
由 Tom Lane 提交于
about how this is playing fast and loose with the type system.
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
and thereby in the pg_timezone_names view. Although we allow such zones to be used in certain limited contexts like AT TIME ZONE, we don't allow them in SET TIME ZONE, and bug #4528 shows that they're more likely to confuse users than do anything useful. So hide 'em. (Note that we don't even generate these zones when installing our own timezone database. But they are likely to be present when using a system-provided database.)
-
由 Tom Lane 提交于
for inserting tuples in increasing TID order. It's not clear whether this fully explains Ivan Sergio Borgonovo's complaint, but simple testing confirms that a scan that doesn't start at block 0 can slow GIN build by a factor of three or four. Backpatch to 8.3. Sync scan didn't exist before that.
-
- 13 11月, 2008 1 次提交
-
-
由 Peter Eisentraut 提交于
Rearrange the documentation a bit now that array_agg and xmlagg have similar semantics and issues. best of Robert Haas, Jeff Davis, Peter Eisentraut
-