|
8 | 8 | <bodybgcolor="#FFFFFF"text="#000000"link="#FF0000"vlink="#A00000"alink="#0000FF"> |
9 | 9 | <h1><aname="section_1">PostgreSQL TODO List</a></h1> |
10 | 10 | <p>Current maintainer: Bruce Momjian (<ahref="mailto:bruce@momjian.us">bruce@momjian.us</a>)<br/> |
11 | | -Last updated: Mon Mar 310:06:41 EST 2008 |
| 11 | +Last updated: Mon Mar 313:45:12 EST 2008 |
12 | 12 | </p> |
13 | 13 | <p>The most recent version of this document can be viewed at<br/> |
14 | 14 | <ahref="http://www.postgresql.org/docs/faqs.TODO.html">http://www.postgresql.org/docs/faqs.TODO.html</a>. |
@@ -128,11 +128,12 @@ <h1><a name="section_2">Administration</a></h1> |
128 | 128 | <ul> |
129 | 129 | <li>Allow a warm standby system to also allow read-only statements |
130 | 130 | [<ahref="http://momjian.postgresql.org/cgi-bin/pgtodo?pitr">pitr</a>] |
131 | | -<p> This is useful for checking PITR recovery. |
132 | | -<ahref="http://archives.postgresql.org/pgsql-hackers/2007-03/msg00050.php">http://archives.postgresql.org/pgsql-hackers/2007-03/msg00050.php</a> |
| 131 | +<p><ahref="http://archives.postgresql.org/pgsql-hackers/2007-03/msg00050.php">http://archives.postgresql.org/pgsql-hackers/2007-03/msg00050.php</a> |
133 | 132 | </p> |
134 | 133 | </li><li>%Create dump tool for write-ahead logs for use in determining |
135 | 134 | transaction id for point-in-time recovery |
| 135 | +<p> This is useful for checking PITR recovery. |
| 136 | +</p> |
136 | 137 | </li><li>Allow recovery.conf to support the same syntax as |
137 | 138 | postgresql.conf, including quoting |
138 | 139 | <p><ahref="http://archives.postgresql.org/pgsql-hackers/2006-12/msg00497.php">http://archives.postgresql.org/pgsql-hackers/2006-12/msg00497.php</a> |
@@ -871,25 +872,26 @@ <h1><a name="section_10">Indexes</a></h1> |
871 | 872 | digital trees (see Aoki) |
872 | 873 | </li></ul> |
873 | 874 | </li><li>Hash |
874 | | -<ahref="http://archives.postgresql.org/pgsql-hackers/2007-09/msg00051.php">http://archives.postgresql.org/pgsql-hackers/2007-09/msg00051.php</a> |
875 | | -<ul> |
876 | | -<li>Pack hash index buckets onto disk pages more efficiently |
| 875 | +</li></ul> |
| 876 | +<p><ahref="http://archives.postgresql.org/pgsql-hackers/2007-09/msg00051.php">http://archives.postgresql.org/pgsql-hackers/2007-09/msg00051.php</a> |
| 877 | +</p> |
| 878 | +<ul> |
| 879 | +<li>Pack hash index buckets onto disk pages more efficiently |
877 | 880 | <p> Currently only one hash bucket can be stored on a page. Ideally |
878 | 881 | several hash buckets could be stored on a single page and greater |
879 | 882 | granularity used for the hash algorithm. |
880 | 883 | </p> |
881 | 884 | <p><ahref="http://archives.postgresql.org/pgsql-hackers/2004-06/msg00168.php">http://archives.postgresql.org/pgsql-hackers/2004-06/msg00168.php</a> |
882 | 885 | </p> |
883 | | -</li><li>Consider sorting hash buckets so entries can be found using a |
| 886 | +</li><li>Consider sorting hash buckets so entries can be found using a |
884 | 887 | binary search, rather than a linear scan |
885 | | -</li><li>In hash indexes, consider storing the hash value with or instead |
| 888 | +</li><li>In hash indexes, consider storing the hash value with or instead |
886 | 889 | of the key itself |
887 | | -</li><li>Add WAL logging for crash recovery |
888 | | -</li><li>Allow multi-column hash indexes |
889 | | -</li><li>During index creation, pre-sort the tuples to improve build speed |
| 890 | +</li><li>Add WAL logging for crash recovery |
| 891 | +</li><li>Allow multi-column hash indexes |
| 892 | +</li><li>During index creation, pre-sort the tuples to improve build speed |
890 | 893 | <p><ahref="http://archives.postgresql.org/pgsql-hackers/2007-03/msg01199.php">http://archives.postgresql.org/pgsql-hackers/2007-03/msg01199.php</a> |
891 | 894 | </p> |
892 | | -</li></ul> |
893 | 895 | </li></ul> |
894 | 896 | <h1><aname="section_11">Fsync</a></h1> |
895 | 897 |
|
@@ -1096,6 +1098,11 @@ <h1><a name="section_16">Write-Ahead Log</a></h1> |
1096 | 1098 | crash recovery. Readers can continue accessing the table. Such |
1097 | 1099 | tables probably cannot have indexes. One complexity is the handling |
1098 | 1100 | of indexes on TOAST tables. |
| 1101 | +</p> |
| 1102 | +</li><li>Speed WAL recovery by allowing more than one page to be prefetched |
| 1103 | +<p> This involves having a separate process that can be told which pages |
| 1104 | + the recovery process will need in the near future. |
| 1105 | +<ahref="http://archives.postgresql.org/pgsql-hackers/2008-02/msg01279.php">http://archives.postgresql.org/pgsql-hackers/2008-02/msg01279.php</a> |
1099 | 1106 | </p> |
1100 | 1107 | </li></ul> |
1101 | 1108 | <h1><aname="section_17">Optimizer / Executor</a></h1> |
|