Commit Graph

5974 Commits

Author SHA1 Message Date
Bruce Momjian b6af0dc49e Update AIX FAQ.
Chris Browne
2005-07-30 03:39:27 +00:00
Bruce Momjian aa8290be99 Add:
> * Add system view to show free space map contents
884c885
< 	o Move into the backend code
> 	o -Move into the backend code
2005-07-30 03:21:41 +00:00
Bruce Momjian 24df49bd5a Add:
> * Allow SELECT ... FOR UPDATE on inherited tables
2005-07-30 03:18:38 +00:00
Bruce Momjian 43e33c51d4 Clarify:
< * Add TRUNCATE permission
> * Add a separate TRUNCATE permission
2005-07-30 03:16:08 +00:00
Bruce Momjian 3fae29ef13 Add:
> * Add TRUNCATE permission
>
>   Currently only the owner can TRUNCATE a table because triggers are not
>   called, and the table is locked in exclusive mode.
>
2005-07-30 03:15:22 +00:00
Bruce Momjian 9ebe05c5bc Add:
> * Add PQescapeIdentifier() to libpq
2005-07-30 02:52:30 +00:00
Bruce Momjian f387e0615c Add detail:
>
> 	   If CRC check fails during recovery, remember the page in case
> 	   a later CRC for that page properly matches.
>
2005-07-29 16:05:28 +00:00
Bruce Momjian 85e9a5a014 Move reindexdb from /contrib to /bin.
Euler Taveira de Oliveira
2005-07-29 15:13:11 +00:00
Bruce Momjian 358a897fa1 Move dbsize functions into the backend. New functions:
pg_tablespace_size
	pg_database_size
	pg_relation_size
	pg_complete_relation_size
	pg_size_pretty

Remove /contrib/dbsize.

Dave Page
2005-07-29 14:47:04 +00:00
Bruce Momjian b05801c828 Add mp3 entry to FAQ. 2005-07-29 14:05:12 +00:00
Bruce Momjian 16a23597e3 I've had this small patch in my local tree for a while. It documents
new commands which may make an SPI call fail.

Alvaro Herrera
2005-07-29 13:00:03 +00:00
Bruce Momjian 5b63e7b467 Done:
< * Consider use of open/fcntl(O_DIRECT) to minimize OS caching,
<   especially for WAL writes
> * -Consider use of open/fcntl(O_DIRECT) to minimize OS caching,
>   for WAL writes
2005-07-29 03:23:00 +00:00
Neil Conway f124e820a1 Add some missing SGML markup. 2005-07-27 13:42:01 +00:00
Tom Lane 58d214e51f Basic documentation for ROLEs. The user-manag chapter still needs to
be rewritten, but at least the reference pages are reasonably sane.
2005-07-26 23:24:02 +00:00
Tom Lane af019fb9ae Add a role property 'rolinherit' which, when false, denotes that the role
doesn't automatically inherit the privileges of roles it is a member of;
for such a role, membership in another role can be exploited only by doing
explicit SET ROLE.  The default inherit setting is TRUE, so by default
the behavior doesn't change, but creating a user with NOINHERIT gives closer
adherence to our current reading of SQL99.  Documentation still lacking,
and I think the information schema needs another look.
2005-07-26 16:38:29 +00:00
Tom Lane f9fd176461 Add pg_has_role() family of privilege inquiry functions modeled after the
existing ones for object privileges.  Update the information_schema for
roles --- pg_has_role() makes this a whole lot easier, removing the need
for most of the explicit joins with pg_user.  The views should be a tad
faster now, too.  Stephen Frost and Tom Lane.
2005-07-26 00:04:19 +00:00
Tom Lane e5d6b91220 Add SET ROLE. This is a partial commit of Stephen Frost's recent patch;
I'm still working on the has_role function and information_schema changes.
2005-07-25 22:12:34 +00:00
Bruce Momjian 9ad9e694ac Add:
> 	o Allow postgresql.conf file values to be changed via an SQL API
> 	o Allow the server to be stopped/restarted via an SQL API
2005-07-25 15:27:06 +00:00
Tom Lane 4c80071b81 With the interval/day patch, the horology regression test no longer
fails near DST transition days, so remove the advice about that testing
problem.  Also improve the description of variant-comparison-file
selection.
2005-07-24 17:07:18 +00:00
Tom Lane d007a95055 Simple constraint exclusion. For now, only child tables of inheritance
scans are candidates for exclusion; this should be fixed eventually.
Simon Riggs, with some help from Tom Lane.
2005-07-23 21:05:48 +00:00
Bruce Momjian 261026575d Fix AT TIME ZONE for timestamps without time zones:
test=> select ('2005-07-20 00:00:00'::timestamp without time zone) at
	time zone 'Europe/Paris';
	        timezone
	------------------------
	 2005-07-19 22:00:00-04

Udpate documentation.
2005-07-22 21:16:15 +00:00
Bruce Momjian 0e5c62d065 Add:
<
> * Research storing disk pages with no alignment/padding
2005-07-21 13:43:16 +00:00
Tom Lane dc73819f2e Fix breakage of INSTALL document build. 2005-07-20 23:57:46 +00:00
Bruce Momjian db05f4a7eb Add 'day' field to INTERVAL so 1 day interval can be distinguished from
24 hours. This is very helpful for daylight savings time:

	select '2005-05-03 00:00:00 EST'::timestamp with time zone + '24 hours';
	      ?column?
	----------------------
	2005-05-04 01:00:00-04

	select '2005-05-03 00:00:00 EST'::timestamp with time zone + '1 day';
	      ?column?
	----------------------
	2005-05-04 01:00:00-04

Michael Glaesemann
2005-07-20 16:42:32 +00:00
Neil Conway ca76df425b Documentation tweak: make <command>CREATE OPERATOR CLASS</command> into
an <xref/>.
2005-07-19 01:27:59 +00:00
Tom Lane 37464a0326 Fix some bogosities in geometric-function documentation: add an entry
for circle(polygon), which was missing; remove bogus entry for
point(lseg, lseg), which does not exist, and the documentation seemed to
describe lseg_interpt, which we already document as an operator not a
function.  Also remove entry for box_intersect, which likewise is
preferentially used via the operator #.
2005-07-18 22:34:14 +00:00
Bruce Momjian 507465525e \pset numericsep -> numericlocale. 2005-07-18 20:57:53 +00:00
Bruce Momjian 5e544e4eb7 Fix SGML spacing. 2005-07-15 19:02:12 +00:00
Bruce Momjian 45a19efa9e Change numericsep to a boolean, and make it locale-aware. 2005-07-14 08:42:37 +00:00
Neil Conway c3f1b0f4dd This doc patch replaces all inappropriate references to SQL:1999 when it
is used as if it were the latest (and/or still valid) SQL standard.
SQL:2003 is used in its place. Patch from Simon Riggs.
2005-07-14 06:17:36 +00:00
Tom Lane 29094193f5 Integrate autovacuum functionality into the backend. There's still a
few loose ends to be dealt with, but it seems to work.  Alvaro Herrera,
based on the contrib code by Matthew O'Connor.
2005-07-14 05:13:45 +00:00
Neil Conway d6375d6109 Documentation for some new PL/Perl features. Patch from David Fetter,
various editorialization from Neil Conway.
2005-07-13 02:10:42 +00:00
Tom Lane d78397d301 Change typreceive function API so that receive functions get the same
optional arguments as text input functions, ie, typioparam OID and
atttypmod.  Make all the datatypes that use typmod enforce it the same
way in typreceive as they do in typinput.  This fixes a problem with
failure to enforce length restrictions during COPY FROM BINARY.
2005-07-10 21:14:00 +00:00
Bruce Momjian d1cffe2f77 Add --encoding to pg_dump.
The Problem:  Occassionally a DBA needs to dump a database to a new
encoding.   In instances where the current encoding, (or lack of an
encoding, like SQL_ASCII) is poorly supported on the target  database
server, it can be useful to dump into a particular  encoding.  But,
currently the only way to set the encoding of  a pg_dump file is to
change  client_encoding in postgresql.conf and restart postmaster.
This is more  than a little awkward for production systems.

Magnus Hagander
2005-07-10 15:08:52 +00:00
Bruce Momjian 42e7b0f02f Update.
< 	  computations should adjust based on the time zone rules, e.g.
< 	  adding 24 hours to a timestamp would yield a different result from
< 	  adding one day.
<
> 	  computations should adjust based on the time zone rules.
2005-07-10 05:06:42 +00:00
Bruce Momjian 75a64eeb4b I made the patch that implements regexp_replace again.
The specification of this function is as follows.

regexp_replace(source text, pattern text, replacement text, [flags
text])
returns text

Replace string that matches to regular expression in source text to
replacement text.

 - pattern is regular expression pattern.
 - replacement is replace string that can use '\1'-'\9', and '\&'.
    '\1'-'\9': back reference to the n'th subexpression.
    '\&'     : entire matched string.
 - flags can use the following values:
    g: global (replace all)
    i: ignore case
    When the flags is not specified, case sensitive, replace the first
    instance only.

Atsushi Ogawa
2005-07-10 04:54:33 +00:00
Bruce Momjian 73a7c322c3 Add psql \pset numericsep to allow output numbers like 100,000.0 or
100.000,0.

Eugen Nedelcu
2005-07-10 03:46:13 +00:00
Bruce Momjian a4ffa38234 Done:
> * -Prevent dropping user that still owns objects, or auto-drop the objects
2005-07-08 02:44:37 +00:00
Tom Lane 59d1b3d99e Track dependencies on shared objects (which is to say, roles; we already
have adequate mechanisms for tracking the contents of databases and
tablespaces).  This solves the longstanding problem that you can drop a
user who still owns objects and/or has access permissions.
Alvaro Herrera, with some kibitzing from Tom Lane.
2005-07-07 20:40:02 +00:00
Bruce Momjian 442b59dd8b Update:
< 	   writer.
> 	   writer.  It might cause problems for applying WAL on recovery
> 	   into a partially-written page, but later the full page will be
> 	   replaced from WAL.
2005-07-07 16:02:06 +00:00
Bruce Momjian f0a2a91918 Update:
>
> 	o  -Add ability to turn off full page writes
> 	o  When off, write CRC to WAL and check file system blocks
> 	   on recovery
> 	o  Write full pages during file system write and not when
> 	   the page is modified in the buffer cache
>
> 	   This allows most full page writes to happen in the background
> 	   writer.
2005-07-07 15:18:26 +00:00
Bruce Momjian 261ffd03f7 Reverse out because the lack of using pgport in timezone/ is causing
problems:

---------------------------------------------------------------------------

Support cross compilation by compiling "zic" with a native compiler.
This relies on the output of zic being platform independent, but that is
currently the case.
2005-07-06 21:04:14 +00:00
Bruce Momjian a923602855 Add pg_column_size() to return storage size of a column, including
possible compression.

Mark Kirkwood
2005-07-06 19:02:54 +00:00
Bruce Momjian 0bf8b27348 Update description of GUC full_page_writes.
Michael Paesold
2005-07-06 14:45:12 +00:00
Bruce Momjian 7d2e1cb730 Done:
> * -Add function to return compressed length of TOAST data values
2005-07-06 03:40:15 +00:00
Bruce Momjian 326a7a0788 Add GUC full_page_writes to control writing full pages to WAL. 2005-07-05 23:18:10 +00:00
Bruce Momjian d22a3727a5 Remove, now have GUC:
< * Turn off full page writes if fsync is disabled
<
<   If fsync is off, there is no purpose in writing full pages to WAL
<
2005-07-05 22:59:36 +00:00
Bruce Momjian 3bf4e4120d Add:
<
881a881,882
> 	o Improve xid wraparound detection by recording per-table rather
> 	  than per-database
2005-07-05 19:37:54 +00:00
Bruce Momjian de5d30069b More TODO list section restructuring. 2005-07-04 17:43:42 +00:00
Bruce Momjian 8ea398513e Restructure TODO sections. 2005-07-04 17:00:32 +00:00
Bruce Momjian e652d2c476 Update
> * Allow GIST indexes to create certain complex index types, like digital
>   trees (see Aoki)
>
783a787
>
2005-07-04 12:32:38 +00:00
Bruce Momjian 3848532c79 Update wording:
<   Currently, to protect against partial disk page writes, we write the
>   Currently, to protect against partial disk page writes, we write
877c877
< * Turn off after-change writes if fsync is disabled
> * Turn off full page writes if fsync is disabled
2005-07-04 04:06:43 +00:00
Peter Eisentraut 85884cb1de Support cross compilation by compiling "zic" with a native compiler. This
relies on the output of zic being platform independent, but that is
currently the case.
2005-07-03 18:54:28 +00:00
Bruce Momjian ea1e2b948d Remove GIST concurrency limitations section.
Christopher Kings-Lynne
2005-07-02 20:08:27 +00:00
Bruce Momjian 9caeace71c Add SGML markup for on/off values in run-time section. 2005-07-02 19:16:36 +00:00
Bruce Momjian 6aa0fdc4aa Use on/off consistently for GUC variables in postgresql.conf and the
documentation, to match SHOW.
2005-07-02 18:29:04 +00:00
Bruce Momjian 654efe6aaa Update:
< * Add rtree index support for line, lseg, path, point
> * Add more gist index support for geometric data types
2005-07-02 14:30:38 +00:00
Neil Conway c425dcb4ec In PL/PgSQL, allow a block's label to be optionally specified at the
end of the block:

<<label>>
begin
    ...
end label;

Similarly for loops. This is per PL/SQL. Update the documentation and
add regression tests. Patch from Pavel Stehule, code review by Neil
Conway.
2005-07-02 08:59:48 +00:00
Bruce Momjian f009248af1 Clarify:
< 	o Replace crude DELETE FROM method of pg_dumpall for cleaning of
< 	  roles with separate DROP commands
> 	o Replace crude DELETE FROM method of pg_dumpall --clean for
>           cleaning of roles with separate DROP commands
2005-07-01 17:35:22 +00:00
Bruce Momjian fee590c8b1 Update for roles:
< * Allow limits on per-db/user connections
> * Allow limits on per-db/role connections
< * Prevent default re-use of sysids for dropped users and roles
<
<   Currently, if a user is removed while he still owns objects, a new
<   user given might be given their user id and inherit the
<   previous users objects.
<
450c444
< * Add COMMENT ON for all cluster global objects (users, roles, databases
> * Add COMMENT ON for all cluster global objects (roles, databases
609c603
< 	  users and roles with separate DROP commands
> 	  roles with separate DROP commands
2005-07-01 17:32:21 +00:00
Bruce Momjian b00f557dd1 Update for roles:
< * Prevent default re-use of sysids for dropped users and groups
> * Prevent default re-use of sysids for dropped users and roles
450c450
< * Add COMMENT ON for all cluster global objects (users, groups, databases
> * Add COMMENT ON for all cluster global objects (users, roles, databases
609c609
< 	  users and groups with separate DROP commands
> 	  users and roles with separate DROP commands
2005-07-01 17:05:58 +00:00
Bruce Momjian 8ab306e4ea Item superceeded now that groups exist:
< * Add group object ownership, so groups can rename/drop/grant on objects,
<   so we can implement roles
2005-07-01 15:08:25 +00:00
Bruce Momjian 16d2699f7f Done:
> 	o -Add dumping and restoring of LOB comments
2005-07-01 14:51:49 +00:00
Bruce Momjian 8f6e8e8fed Clarify documentation about log_min_duration_statement. 2005-07-01 13:29:25 +00:00
Bruce Momjian a29d815a7a Improve gettimeofday() documentation.
Karl O. Pinc
2005-06-29 01:52:56 +00:00
Bruce Momjian 0fc9b26098 Improved words spacing.
Victor Y. Yegorov
2005-06-29 01:23:49 +00:00
Tom Lane 7762619e95 Replace pg_shadow and pg_group by new role-capable catalogs pg_authid
and pg_auth_members.  There are still many loose ends to finish in this
patch (no documentation, no regression tests, no pg_dump support for
instance).  But I'm going to commit it now anyway so that Alvaro can
make some progress on shared dependencies.  The catalog changes should
be pretty much done.
2005-06-28 05:09:14 +00:00
Bruce Momjian 977530d8da Done:
> * -Add concurrency to GIST
2005-06-27 23:21:58 +00:00
Bruce Momjian fc722403a6 Done:
> * -Remove kerberos4 from source tree
2005-06-27 02:17:20 +00:00
Neil Conway a159ad3048 Remove support for Kerberos V4. It seems no one is using this, it has
some security issues, and upstream has declared it "dead". Patch from
Magnus Hagander, minor editorialization from Neil Conway.
2005-06-27 02:04:26 +00:00
Bruce Momjian a051da0207 Done:
> 	o -Allow PL/pgSQL EXECUTE query_var INTO record_var;
2005-06-27 01:53:52 +00:00
Tom Lane 943b396245 Add Oracle-compatible GREATEST and LEAST functions. Pavel Stehule 2005-06-26 22:05:42 +00:00
Tom Lane d395aecffa Code review for escape-strings patch. Sync psql and plpgsql lexers
with main, avoid using a SQL-defined SQLSTATE for what is most definitely
not a SQL-compatible error condition, fix documentation omissions,
adhere to message style guidelines, don't use two GUC_REPORT variables
when one is sufficient.  Nothing done about pg_dump issues.
2005-06-26 19:16:07 +00:00
Bruce Momjian bb3cce4ec9 Add E'' syntax so eventually normal strings can treat backslashes
literally.

Add GUC variables:

        "escape_string_warning" - warn about backslashes in non-E strings
        "escape_string_syntax" - supports E'' syntax?
        "standard_compliant_strings" - treats backslashes literally in ''

Update code to use E'' when escapes are used.
2005-06-26 03:04:37 +00:00
Tom Lane fbcbc5d06f Force a checkpoint before committing a CREATE DATABASE command. This
should fix the recent reports of "index is not a btree" failures,
as well as preventing a more obscure race condition involving changes
to a template database just after copying it with CREATE DATABASE.
2005-06-25 22:47:29 +00:00
Bruce Momjian 252600fade Add:
> 	o Pass arrays natively instead of as text between plperl and postgres
> 	o Add support for polymorphic arguments and return types to plperl
2005-06-25 15:24:11 +00:00
Bruce Momjian 557a978b87 Update:
< * Allow per-user, per-group quotas per-tablespace
> * Allow per-tablespace quotas
2005-06-25 12:37:43 +00:00
Bruce Momjian d08149d783 Update:
< * Allow per-user and per-tablespaces quotas
> * Allow per-user, per-group quotas per-tablespace
2005-06-25 02:42:00 +00:00
Bruce Momjian 886c8a54ae Add:
> * Allow per-user and per-tablespaces quotas
2005-06-25 02:40:43 +00:00
Bruce Momjian 669111800f Add item:
> * Add NUMERIC division operator that doesn't round?
>
>   Currently NUMERIC _rounds_ the result to the specified precision.
>   This means division can return a result that multiplied by the
>   divisor is greater than the dividend, e.g. this returns a value > 10:
>
>     SELECT (10::numeric(2,0) / 6::numeric(2,0))::numeric(2,0) * 6;
>
>   The positive modulus result returned by NUMERICs might be considered
>   inaccurate, in one sense.
>
2005-06-25 01:32:02 +00:00
Bruce Momjian f3dbacab0c Add desciption for terminate:
>
>   Currently SIGTERM of a backend can lead to lock table corruption.
>
2005-06-24 21:28:30 +00:00
Tom Lane b90f8f20f0 Extend r-tree operator classes to handle Y-direction tests equivalent
to the existing X-direction tests.  An rtree class now includes 4 actual
2-D tests, 4 1-D X-direction tests, and 4 1-D Y-direction tests.
This involved adding four new Y-direction test operators for each of
box and polygon; I followed the PostGIS project's lead as to the names
of these operators.
NON BACKWARDS COMPATIBLE CHANGE: the poly_overleft (&<) and poly_overright
(&>) operators now have semantics comparable to box_overleft and box_overright.
This is necessary to make r-tree indexes work correctly on polygons.
Also, I changed circle_left and circle_right to agree with box_left and
box_right --- formerly they allowed the boundaries to touch.  This isn't
actually essential given the lack of any r-tree opclass for circles, but
it seems best to sync all the definitions while we are at it.
2005-06-24 20:53:34 +00:00
Bruce Momjian 1fa87fa780 Remove TODO.detail rtree now that item is fixed. 2005-06-24 04:42:58 +00:00
Bruce Momjian 693658a540 Done:
> * -Fix incorrect rtree results due to wrong assumptions about "over"
>   operator semantics
2005-06-24 04:41:16 +00:00
Bruce Momjian 2f6be2ed6e Completed:
< * Allow REINDEX to rebuild all database indexes, remove /contrib/reindex
> * -Allow REINDEX to rebuild all database indexes
2005-06-24 02:30:43 +00:00
Bruce Momjian ebb399570d Add:
> * Add program to test if fsync has a delay compared to non-fsync
2005-06-24 02:07:19 +00:00
Bruce Momjian dea41174b2 Update text of terminate:
< * Allow administrators to safely terminate individual sessions
<
<   Right now, SIGTERM will terminate a session, but it is treated as
<   though the postmaster has paniced and shared memory might not be
<   cleaned up properly.  A new signal is needed for safe termination
<   because backends must first do a query cancel, then exit once they
<   have run the query cancel cleanup routine.
<
> * Allow administrators to safely terminate individual sessions either
>   via an SQL function or SIGTERM
2005-06-23 21:28:10 +00:00
Tom Lane 4cc7a93d22 Make REINDEX DATABASE do what one would expect, namely reindex all indexes
in the database.  The old behavior (reindex system catalogs only) is now
available as REINDEX SYSTEM.  I did not add the complementary REINDEX USER
case since there did not seem to be consensus for this, but it would be
trivial to add later.  Per recent discussions.
2005-06-22 21:14:31 +00:00
Tom Lane 676bb1ab06 Add a hack requested by the JDBC driver writers: when a function's
argument list contains parameter symbols ($n) declared as type VOID,
discard these arguments.  This allows the driver to avoid renumbering
mixed IN and OUT argument placeholders (the JDBC syntax involves writing
? for both IN and OUT parameters, but on the server side we don't think
that OUT parameters are arguments).  This doesn't break any currently-
useful cases since VOID is not used as an input argument type.
2005-06-22 15:19:43 +00:00
Neil Conway ebcb4c931d Add a CONTINUE statement to PL/PgSQL, which can be used to begin the
next iteration of a loop. Update documentation and add regression tests.
Patch from Pavel Stehule, reviewed by Neil Conway.
2005-06-22 01:35:03 +00:00
Tom Lane 7a28de2052 pg_dump can now dump large objects even in plain-text output mode, by
using the recently added lo_create() function.  The restore logic in
pg_restore is greatly simplified as well, since there's no need anymore
to try to adjust database references to match a new set of blob OIDs.
2005-06-21 20:45:44 +00:00
Tom Lane 6f7fc0bade Cause initdb to create a third standard database "postgres", which
unlike template0 and template1 does not have any special status in
terms of backend functionality.  However, all external utilities such
as createuser and createdb now connect to "postgres" instead of
template1, and the documentation is changed to encourage people to use
"postgres" instead of template1 as a play area.  This should fix some
longstanding gotchas involving unexpected propagation of database
objects by createdb (when you used template1 without understanding
the implications), as well as ameliorating the problem that CREATE
DATABASE is unhappy if anyone else is connected to template1.
Patch by Dave Page, minor editing by Tom Lane.  All per recent
pghackers discussions.
2005-06-21 04:02:34 +00:00
Tom Lane 3f6a094be1 Remove statement that GiST indexes aren't WAL-logged. 2005-06-20 14:53:32 +00:00
Tom Lane f0e7f9e30b Update text that stated GiST indexes aren't WAL-logged. 2005-06-20 13:52:17 +00:00
Neil Conway 577247b023 Minor documentation update for RAISE expression patch. 2005-06-19 23:39:05 +00:00
Tom Lane a8d1075f27 Add a time-of-preparation column to the pg_prepared_xacts view, per an
old suggestion by Oliver Jowett.  Also, add a transaction column to the
pg_locks view to show the xid of each transaction holding or awaiting
locks; this allows prepared transactions to be properly associated with
the locks they own.  There was already a column named 'transaction',
and I chose to rename it to 'transactionid' --- since this column is
new in the current devel cycle there should be no backwards compatibility
issue to worry about.
2005-06-18 19:33:42 +00:00
Bruce Momjian 25f8916137 Remove 2phase commit TODO.detail. 2005-06-18 01:51:03 +00:00
Bruce Momjian 5117da7b37 Remove TODO.detail.
< * -Add two-phase commit [2phase]
> * -Add two-phase commit
2005-06-18 01:45:58 +00:00
Bruce Momjian 5f98a6f7a3 Done:
< * Add two-phase commit [2phase]
> * -Add two-phase commit [2phase]
2005-06-18 01:45:03 +00:00
Tom Lane d0a89683a3 Two-phase commit. Original patch by Heikki Linnakangas, with additional
hacking by Alvaro Herrera and Tom Lane.
2005-06-17 22:32:51 +00:00