Commit 3bea1a35 authored by Bruce Momjian's avatar Bruce Momjian

Update wording:

<   could only see committed rows from another transaction. However,
>   could only see rows from another completed transaction. However,
981c981
<   proper visibility of the row, for example, for cursors.
>   proper visibility of the row's cmin, for example, for cursors.
parent da08559e
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
PostgreSQL TODO List PostgreSQL TODO List
==================== ====================
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us) Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
Last updated: Fri Sep 2 15:39:11 EDT 2005 Last updated: Fri Sep 2 15:51:34 EDT 2005
The most recent version of this document can be viewed at The most recent version of this document can be viewed at
http://www.postgresql.org/docs/faqs.TODO.html. http://www.postgresql.org/docs/faqs.TODO.html.
...@@ -972,13 +972,13 @@ Miscellaneous Performance ...@@ -972,13 +972,13 @@ Miscellaneous Performance
xmax), cmin, cmax, and if the transaction was expiring a row from a xmax), cmin, cmax, and if the transaction was expiring a row from a
another transaction, the fields stored were xmin (cmin was not another transaction, the fields stored were xmin (cmin was not
needed), xmax, and cmax. Such a system worked because a transaction needed), xmax, and cmax. Such a system worked because a transaction
could only see committed rows from another transaction. However, could only see rows from another completed transaction. However,
subtransactions can see rows from outer transactions, and once the subtransactions can see rows from outer transactions, and once the
subtransaction completes, the outer transaction continues, requiring subtransaction completes, the outer transaction continues, requiring
the storage of all four fields. With subtransactions, an outer the storage of all four fields. With subtransactions, an outer
transaction can create a row, a subtransaction expire it, and when the transaction can create a row, a subtransaction expire it, and when the
subtransaction completes, the outer transaction still has to have subtransaction completes, the outer transaction still has to have
proper visibility of the row, for example, for cursors. proper visibility of the row's cmin, for example, for cursors.
One possible solution is to create a phantom cid which represents a One possible solution is to create a phantom cid which represents a
cmin/cmax pair and is stored in local memory. cmin/cmax pair and is stored in local memory.
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<body bgcolor="#FFFFFF" text="#000000" link="#FF0000" vlink="#A00000" alink="#0000FF"> <body bgcolor="#FFFFFF" text="#000000" link="#FF0000" vlink="#A00000" alink="#0000FF">
<h1><a name="section_1">PostgreSQL TODO List</a></h1> <h1><a name="section_1">PostgreSQL TODO List</a></h1>
<p>Current maintainer: Bruce Momjian (<a href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>)<br/> <p>Current maintainer: Bruce Momjian (<a href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>)<br/>
Last updated: Fri Sep 2 15:39:11 EDT 2005 Last updated: Fri Sep 2 15:51:34 EDT 2005
</p> </p>
<p>The most recent version of this document can be viewed at<br/> <p>The most recent version of this document can be viewed at<br/>
<a href="http://www.postgresql.org/docs/faqs.TODO.html">http://www.postgresql.org/docs/faqs.TODO.html</a>. <a href="http://www.postgresql.org/docs/faqs.TODO.html">http://www.postgresql.org/docs/faqs.TODO.html</a>.
...@@ -876,13 +876,13 @@ first. ...@@ -876,13 +876,13 @@ first.
xmax), cmin, cmax, and if the transaction was expiring a row from a xmax), cmin, cmax, and if the transaction was expiring a row from a
another transaction, the fields stored were xmin (cmin was not another transaction, the fields stored were xmin (cmin was not
needed), xmax, and cmax. Such a system worked because a transaction needed), xmax, and cmax. Such a system worked because a transaction
could only see committed rows from another transaction. However, could only see rows from another completed transaction. However,
subtransactions can see rows from outer transactions, and once the subtransactions can see rows from outer transactions, and once the
subtransaction completes, the outer transaction continues, requiring subtransaction completes, the outer transaction continues, requiring
the storage of all four fields. With subtransactions, an outer the storage of all four fields. With subtransactions, an outer
transaction can create a row, a subtransaction expire it, and when the transaction can create a row, a subtransaction expire it, and when the
subtransaction completes, the outer transaction still has to have subtransaction completes, the outer transaction still has to have
proper visibility of the row, for example, for cursors. proper visibility of the row's cmin, for example, for cursors.
</p> </p>
<p> One possible solution is to create a phantom cid which represents a <p> One possible solution is to create a phantom cid which represents a
cmin/cmax pair and is stored in local memory. cmin/cmax pair and is stored in local memory.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment