88< body bgcolor ="#FFFFFF "text ="#000000 "link ="#FF0000 "vlink ="#A00000 "alink ="#0000FF ">
99< h1 > < a name ="section_1 "> PostgreSQL TODO List</ a > </ h1 >
1010< p > Current maintainer: Bruce Momjian (< a href ="mailto:bruce@momjian.us "> bruce@momjian.us</ a > )< br />
11- Last updated:Fri Sep 29 23:55:30 EDT 2006
11+ Last updated:Mon Oct 2 09:59:50 EDT 2006
1212</ p >
1313< p > The most recent version of this document can be viewed at< br />
1414< a href ="http://www.postgresql.org/docs/faqs.TODO.html "> http://www.postgresql.org/docs/faqs.TODO.html</ a > .
@@ -769,34 +769,7 @@ <h1><a name="section_11">Dependency Checking</a></h1>
769769 invalidate its own query plan.
770770</ p >
771771</ li > </ ul >
772- < h1 > < a name ="section_12 "> Exotic Features</ a > </ h1 >
773-
774- < ul >
775- < li > Add pre-parsing phase that converts non-ISO syntax to supported
776- syntax
777- < p > This could allow SQL written for other databases to run without
778- modification.
779- </ p >
780- </ li > < li > Allow plug-in modules to emulate features from other databases
781- </ li > < li > SQL*Net listener that makes PostgreSQL appear as an Oracle database
782- to clients
783- </ li > < li > Allow statements across databases or servers with transaction
784- semantics
785- < p > This can be done using dblink and two-phase commit.
786- </ p >
787- </ li > < li > Add the features of packages
788- < ul >
789- < li > Make private objects accessible only to objects in the same schema
790- </ li > < li > Allow current_schema.objname to access current schema objects
791- </ li > < li > Add session variables
792- </ li > < li > Allow nested schemas
793- </ li > </ ul >
794- </ li > < li > Consider allowing control of upper/lower case folding of unquoted
795- identifiers
796- < p > < a href ="http://archives.postgresql.org/pgsql-hackers/2004-04/msg00818.php "> http://archives.postgresql.org/pgsql-hackers/2004-04/msg00818.php</ a >
797- </ p >
798- </ li > </ ul >
799- < h1 > < a name ="section_13 "> Indexes</ a > </ h1 >
772+ < h1 > < a name ="section_12 "> Indexes</ a > </ h1 >
800773
801774< ul >
802775< li > Allow inherited tables to inherit index, UNIQUE constraint, and primary
@@ -862,7 +835,7 @@ <h1><a name="section_13">Indexes</a></h1>
862835</ li > < li > Allow multi-column hash indexes
863836</ li > </ ul >
864837</ li > </ ul >
865- < h1 > < a name ="section_14 "> Fsync</ a > </ h1 >
838+ < h1 > < a name ="section_13 "> Fsync</ a > </ h1 >
866839
867840< ul >
868841< li > Improve commit_delay handling to reduce fsync()
@@ -874,7 +847,7 @@ <h1><a name="section_14">Fsync</a></h1>
874847</ li > < li > %Add an option to sync() before fsync()'ing checkpoint files
875848</ li > < li > Add program to test if fsync has a delay compared to non-fsync
876849</ li > </ ul >
877- < h1 > < a name ="section_15 "> Cache Usage</ a > </ h1 >
850+ < h1 > < a name ="section_14 "> Cache Usage</ a > </ h1 >
878851
879852< ul >
880853< li > Allow free-behind capability for large sequential scans, perhaps using
@@ -928,7 +901,7 @@ <h1><a name="section_15">Cache Usage</a></h1>
928901< p > < a href ="http://archives.postgresql.org/pgsql-hackers/2005-10/msg01419.php "> http://archives.postgresql.org/pgsql-hackers/2005-10/msg01419.php</ a >
929902</ p >
930903</ li > </ ul >
931- < h1 > < a name ="section_16 "> Vacuum</ a > </ h1 >
904+ < h1 > < a name ="section_15 "> Vacuum</ a > </ h1 >
932905
933906< ul >
934907< li > Improve speed with indexes
@@ -987,12 +960,12 @@ <h1><a name="section_16">Vacuum</a></h1>
987960</ p >
988961</ li > </ ul >
989962</ li > </ ul >
990- < h1 > < a name ="section_17 "> Locking</ a > </ h1 >
963+ < h1 > < a name ="section_16 "> Locking</ a > </ h1 >
991964
992965< ul >
993966< li > Fix priority ordering of read and write light-weight locks (Neil)
994967</ li > </ ul >
995- < h1 > < a name ="section_18 "> Startup Time Improvements</ a > </ h1 >
968+ < h1 > < a name ="section_17 "> Startup Time Improvements</ a > </ h1 >
996969
997970< ul >
998971< li > Experiment with multi-threaded backend for backend creation [< a href ="http://momjian.postgresql.org/cgi-bin/pgtodo?thread "> thread</ a > ]
@@ -1015,7 +988,7 @@ <h1><a name="section_18">Startup Time Improvements</a></h1>
1015988 existing backends is one of the difficulties with a backend approach.
1016989</ p >
1017990</ li > </ ul >
1018- < h1 > < a name ="section_19 "> Write-Ahead Log</ a > </ h1 >
991+ < h1 > < a name ="section_18 "> Write-Ahead Log</ a > </ h1 >
1019992
1020993< ul >
1021994< li > Eliminate need to write full pages to WAL before page modification [< a href ="http://momjian.postgresql.org/cgi-bin/pgtodo?wal "> wal</ a > ]
@@ -1079,7 +1052,7 @@ <h1><a name="section_19">Write-Ahead Log</a></h1>
10791052 of indexes on TOAST tables.
10801053</ p >
10811054</ li > </ ul >
1082- < h1 > < a name ="section_20 "> Optimizer / Executor</ a > </ h1 >
1055+ < h1 > < a name ="section_19 "> Optimizer / Executor</ a > </ h1 >
10831056
10841057< ul >
10851058< li > Improve selectivity functions for geometric operators
@@ -1104,7 +1077,7 @@ <h1><a name="section_20">Optimizer / Executor</a></h1>
11041077< p > This might replace GEQO,< a href ="http://sixdemonbag.org/Djinni "> http://sixdemonbag.org/Djinni</ a > .
11051078</ p >
11061079</ li > </ ul >
1107- < h1 > < a name ="section_21 "> Miscellaneous Performance</ a > </ h1 >
1080+ < h1 > < a name ="section_20 "> Miscellaneous Performance</ a > </ h1 >
11081081
11091082< ul >
11101083< li > Do async I/O for faster random read-ahead of data
@@ -1158,7 +1131,7 @@ <h1><a name="section_21">Miscellaneous Performance</a></h1>
11581131</ li > < li > Reduce the row header size?
11591132</ li > </ ul >
11601133</ li > </ ul >
1161- < h1 > < a name ="section_22 "> Source Code</ a > </ h1 >
1134+ < h1 > < a name ="section_21 "> Source Code</ a > </ h1 >
11621135
11631136< ul >
11641137< li > Add use of 'const' for variables in source tree
@@ -1231,6 +1204,33 @@ <h1><a name="section_22">Source Code</a></h1>
12311204 of result sets using new statement protocol
12321205</ li > </ ul >
12331206</ li > </ ul >
1207+ < h1 > < a name ="section_22 "> Exotic Features</ a > </ h1 >
1208+
1209+ < ul >
1210+ < li > Add pre-parsing phase that converts non-ISO syntax to supported
1211+ syntax
1212+ < p > This could allow SQL written for other databases to run without
1213+ modification.
1214+ </ p >
1215+ </ li > < li > Allow plug-in modules to emulate features from other databases
1216+ </ li > < li > SQL*Net listener that makes PostgreSQL appear as an Oracle database
1217+ to clients
1218+ </ li > < li > Allow statements across databases or servers with transaction
1219+ semantics
1220+ < p > This can be done using dblink and two-phase commit.
1221+ </ p >
1222+ </ li > < li > Add the features of packages
1223+ < ul >
1224+ < li > Make private objects accessible only to objects in the same schema
1225+ </ li > < li > Allow current_schema.objname to access current schema objects
1226+ </ li > < li > Add session variables
1227+ </ li > < li > Allow nested schemas
1228+ </ li > </ ul >
1229+ </ li > < li > Consider allowing control of upper/lower case folding of unquoted
1230+ identifiers
1231+ < p > < a href ="http://archives.postgresql.org/pgsql-hackers/2004-04/msg00818.php "> http://archives.postgresql.org/pgsql-hackers/2004-04/msg00818.php</ a >
1232+ </ p >
1233+ </ li > </ ul >
12341234< h1 > < a name ="section_23 "> Features We Do _Not_ Want</ a > </ h1 >
12351235
12361236< ul >