pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
pgsql: Improve documentation about MVCC-unsafe utility commands.
7+ messages / 1 participants
[nested] [flat]

* pgsql: Improve documentation about MVCC-unsafe utility commands.
@ 2015-08-15 17:30 Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 7+ messages in thread

From: Tom Lane @ 2015-08-15 17:30 UTC (permalink / raw)
  To: pgsql-committers

Improve documentation about MVCC-unsafe utility commands.

The table-rewriting forms of ALTER TABLE are MVCC-unsafe, in much the same
way as TRUNCATE, because they replace all rows of the table with newly-made
rows with a new xmin.  (Ideally, concurrent transactions with old snapshots
would continue to see the old table contents, but the data is not there
anymore --- and if it were there, it would be inconsistent with the table's
updated rowtype, so there would be serious implementation problems to fix.)
This was nowhere documented though, and the problem was only documented for
TRUNCATE in a note in the TRUNCATE reference page.  Create a new "Caveats"
section in the MVCC chapter that can be home to this and other limitations
on serializable consistency.

In passing, fix a mistaken statement that VACUUM and CLUSTER would reclaim
space occupied by a dropped column.  They don't reconstruct existing tuples
so they couldn't do that.

Back-patch to all supported branches.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/5869cbfef48fdfa6b8f108c6c395601e8ad27250

Modified Files
--------------
doc/src/sgml/mvcc.sgml            |   46 ++++++++++++++++++++++++++-----------
doc/src/sgml/ref/alter_table.sgml |   21 +++++++++++------
doc/src/sgml/ref/truncate.sgml    |   23 +++++--------------
3 files changed, 52 insertions(+), 38 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* pgsql: Improve documentation about MVCC-unsafe utility commands.
@ 2015-08-15 17:30 Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 7+ messages in thread

From: Tom Lane @ 2015-08-15 17:30 UTC (permalink / raw)
  To: pgsql-committers

Improve documentation about MVCC-unsafe utility commands.

The table-rewriting forms of ALTER TABLE are MVCC-unsafe, in much the same
way as TRUNCATE, because they replace all rows of the table with newly-made
rows with a new xmin.  (Ideally, concurrent transactions with old snapshots
would continue to see the old table contents, but the data is not there
anymore --- and if it were there, it would be inconsistent with the table's
updated rowtype, so there would be serious implementation problems to fix.)
This was nowhere documented though, and the problem was only documented for
TRUNCATE in a note in the TRUNCATE reference page.  Create a new "Caveats"
section in the MVCC chapter that can be home to this and other limitations
on serializable consistency.

In passing, fix a mistaken statement that VACUUM and CLUSTER would reclaim
space occupied by a dropped column.  They don't reconstruct existing tuples
so they couldn't do that.

Back-patch to all supported branches.

Branch
------
REL9_5_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/656363d83970195e875c5c2153ef097e112b859f

Modified Files
--------------
doc/src/sgml/mvcc.sgml            |   46 ++++++++++++++++++++++++++-----------
doc/src/sgml/ref/alter_table.sgml |   21 +++++++++++------
doc/src/sgml/ref/truncate.sgml    |   23 +++++--------------
3 files changed, 52 insertions(+), 38 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* pgsql: Improve documentation about MVCC-unsafe utility commands.
@ 2015-08-15 17:30 Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 7+ messages in thread

From: Tom Lane @ 2015-08-15 17:30 UTC (permalink / raw)
  To: pgsql-committers

Improve documentation about MVCC-unsafe utility commands.

The table-rewriting forms of ALTER TABLE are MVCC-unsafe, in much the same
way as TRUNCATE, because they replace all rows of the table with newly-made
rows with a new xmin.  (Ideally, concurrent transactions with old snapshots
would continue to see the old table contents, but the data is not there
anymore --- and if it were there, it would be inconsistent with the table's
updated rowtype, so there would be serious implementation problems to fix.)
This was nowhere documented though, and the problem was only documented for
TRUNCATE in a note in the TRUNCATE reference page.  Create a new "Caveats"
section in the MVCC chapter that can be home to this and other limitations
on serializable consistency.

In passing, fix a mistaken statement that VACUUM and CLUSTER would reclaim
space occupied by a dropped column.  They don't reconstruct existing tuples
so they couldn't do that.

Back-patch to all supported branches.

Branch
------
REL9_4_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/ff2ee45f2f3d528e1c95828a14ca8cbdfb9778d2

Modified Files
--------------
doc/src/sgml/mvcc.sgml            |   46 ++++++++++++++++++++++++++-----------
doc/src/sgml/ref/alter_table.sgml |   21 +++++++++++------
doc/src/sgml/ref/truncate.sgml    |   23 +++++--------------
3 files changed, 52 insertions(+), 38 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* pgsql: Improve documentation about MVCC-unsafe utility commands.
@ 2015-08-15 17:30 Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 7+ messages in thread

From: Tom Lane @ 2015-08-15 17:30 UTC (permalink / raw)
  To: pgsql-committers

Improve documentation about MVCC-unsafe utility commands.

The table-rewriting forms of ALTER TABLE are MVCC-unsafe, in much the same
way as TRUNCATE, because they replace all rows of the table with newly-made
rows with a new xmin.  (Ideally, concurrent transactions with old snapshots
would continue to see the old table contents, but the data is not there
anymore --- and if it were there, it would be inconsistent with the table's
updated rowtype, so there would be serious implementation problems to fix.)
This was nowhere documented though, and the problem was only documented for
TRUNCATE in a note in the TRUNCATE reference page.  Create a new "Caveats"
section in the MVCC chapter that can be home to this and other limitations
on serializable consistency.

In passing, fix a mistaken statement that VACUUM and CLUSTER would reclaim
space occupied by a dropped column.  They don't reconstruct existing tuples
so they couldn't do that.

Back-patch to all supported branches.

Branch
------
REL9_3_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/7e451f7dc241b4947843f84b74298f253c898ed1

Modified Files
--------------
doc/src/sgml/mvcc.sgml            |   46 ++++++++++++++++++++++++++-----------
doc/src/sgml/ref/alter_table.sgml |   19 ++++++++++-----
doc/src/sgml/ref/truncate.sgml    |   23 +++++--------------
3 files changed, 51 insertions(+), 37 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* pgsql: Improve documentation about MVCC-unsafe utility commands.
@ 2015-08-15 17:30 Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 7+ messages in thread

From: Tom Lane @ 2015-08-15 17:30 UTC (permalink / raw)
  To: pgsql-committers

Improve documentation about MVCC-unsafe utility commands.

The table-rewriting forms of ALTER TABLE are MVCC-unsafe, in much the same
way as TRUNCATE, because they replace all rows of the table with newly-made
rows with a new xmin.  (Ideally, concurrent transactions with old snapshots
would continue to see the old table contents, but the data is not there
anymore --- and if it were there, it would be inconsistent with the table's
updated rowtype, so there would be serious implementation problems to fix.)
This was nowhere documented though, and the problem was only documented for
TRUNCATE in a note in the TRUNCATE reference page.  Create a new "Caveats"
section in the MVCC chapter that can be home to this and other limitations
on serializable consistency.

In passing, fix a mistaken statement that VACUUM and CLUSTER would reclaim
space occupied by a dropped column.  They don't reconstruct existing tuples
so they couldn't do that.

Back-patch to all supported branches.

Branch
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/ed51165907e5b413cf221bd82c7f4274bf6ab58f

Modified Files
--------------
doc/src/sgml/mvcc.sgml            |   46 ++++++++++++++++++++++++++-----------
doc/src/sgml/ref/alter_table.sgml |   19 ++++++++++-----
doc/src/sgml/ref/truncate.sgml    |   23 +++++--------------
3 files changed, 51 insertions(+), 37 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* pgsql: Improve documentation about MVCC-unsafe utility commands.
@ 2015-08-15 17:30 Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 7+ messages in thread

From: Tom Lane @ 2015-08-15 17:30 UTC (permalink / raw)
  To: pgsql-committers

Improve documentation about MVCC-unsafe utility commands.

The table-rewriting forms of ALTER TABLE are MVCC-unsafe, in much the same
way as TRUNCATE, because they replace all rows of the table with newly-made
rows with a new xmin.  (Ideally, concurrent transactions with old snapshots
would continue to see the old table contents, but the data is not there
anymore --- and if it were there, it would be inconsistent with the table's
updated rowtype, so there would be serious implementation problems to fix.)
This was nowhere documented though, and the problem was only documented for
TRUNCATE in a note in the TRUNCATE reference page.  Create a new "Caveats"
section in the MVCC chapter that can be home to this and other limitations
on serializable consistency.

In passing, fix a mistaken statement that VACUUM and CLUSTER would reclaim
space occupied by a dropped column.  They don't reconstruct existing tuples
so they couldn't do that.

Back-patch to all supported branches.

Branch
------
REL9_1_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/138f76533cdcbf4b6c61ba9f8d92dd74b332ccba

Modified Files
--------------
doc/src/sgml/mvcc.sgml            |   46 ++++++++++++++++++++++++++-----------
doc/src/sgml/ref/alter_table.sgml |   19 ++++++++++-----
doc/src/sgml/ref/truncate.sgml    |   23 +++++--------------
3 files changed, 51 insertions(+), 37 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* pgsql: Improve documentation about MVCC-unsafe utility commands.
@ 2015-08-15 17:30 Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 7+ messages in thread

From: Tom Lane @ 2015-08-15 17:30 UTC (permalink / raw)
  To: pgsql-committers

Improve documentation about MVCC-unsafe utility commands.

The table-rewriting forms of ALTER TABLE are MVCC-unsafe, in much the same
way as TRUNCATE, because they replace all rows of the table with newly-made
rows with a new xmin.  (Ideally, concurrent transactions with old snapshots
would continue to see the old table contents, but the data is not there
anymore --- and if it were there, it would be inconsistent with the table's
updated rowtype, so there would be serious implementation problems to fix.)
This was nowhere documented though, and the problem was only documented for
TRUNCATE in a note in the TRUNCATE reference page.  Create a new "Caveats"
section in the MVCC chapter that can be home to this and other limitations
on serializable consistency.

In passing, fix a mistaken statement that VACUUM and CLUSTER would reclaim
space occupied by a dropped column.  They don't reconstruct existing tuples
so they couldn't do that.

Back-patch to all supported branches.

Branch
------
REL9_0_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/ec2bc39e8910d05e27794e5095b7b8daed981406

Modified Files
--------------
doc/src/sgml/mvcc.sgml            |   20 ++++++++++++++++++++
doc/src/sgml/ref/alter_table.sgml |   10 +++++++++-
doc/src/sgml/ref/truncate.sgml    |   23 ++++++-----------------
3 files changed, 35 insertions(+), 18 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers


^ permalink  raw  reply  [nested|flat] 7+ messages in thread


end of thread, other threads:[~2015-08-15 17:30 UTC | newest]

Thread overview: 7+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2015-08-15 17:30 pgsql: Improve documentation about MVCC-unsafe utility commands. Tom Lane <tgl@sss.pgh.pa.us>
2015-08-15 17:30 pgsql: Improve documentation about MVCC-unsafe utility commands. Tom Lane <tgl@sss.pgh.pa.us>
2015-08-15 17:30 pgsql: Improve documentation about MVCC-unsafe utility commands. Tom Lane <tgl@sss.pgh.pa.us>
2015-08-15 17:30 pgsql: Improve documentation about MVCC-unsafe utility commands. Tom Lane <tgl@sss.pgh.pa.us>
2015-08-15 17:30 pgsql: Improve documentation about MVCC-unsafe utility commands. Tom Lane <tgl@sss.pgh.pa.us>
2015-08-15 17:30 pgsql: Improve documentation about MVCC-unsafe utility commands. Tom Lane <tgl@sss.pgh.pa.us>
2015-08-15 17:30 pgsql: Improve documentation about MVCC-unsafe utility commands. Tom Lane <tgl@sss.pgh.pa.us>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox