8
8
< body bgcolor ="#FFFFFF "text ="#000000 "link ="#FF0000 "vlink ="#A00000 "alink ="#0000FF ">
9
9
< h1 > < a name ="section_1 "> PostgreSQL TODO List</ a > </ h1 >
10
10
< 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
12
12
</ p >
13
13
< p > The most recent version of this document can be viewed at< br />
14
14
< 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>
769
769
invalidate its own query plan.
770
770
</ p >
771
771
</ 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 >
800
773
801
774
< ul >
802
775
< li > Allow inherited tables to inherit index, UNIQUE constraint, and primary
@@ -862,7 +835,7 @@ <h1><a name="section_13">Indexes</a></h1>
862
835
</ li > < li > Allow multi-column hash indexes
863
836
</ li > </ ul >
864
837
</ li > </ ul >
865
- < h1 > < a name ="section_14 "> Fsync</ a > </ h1 >
838
+ < h1 > < a name ="section_13 "> Fsync</ a > </ h1 >
866
839
867
840
< ul >
868
841
< li > Improve commit_delay handling to reduce fsync()
@@ -874,7 +847,7 @@ <h1><a name="section_14">Fsync</a></h1>
874
847
</ li > < li > %Add an option to sync() before fsync()'ing checkpoint files
875
848
</ li > < li > Add program to test if fsync has a delay compared to non-fsync
876
849
</ li > </ ul >
877
- < h1 > < a name ="section_15 "> Cache Usage</ a > </ h1 >
850
+ < h1 > < a name ="section_14 "> Cache Usage</ a > </ h1 >
878
851
879
852
< ul >
880
853
< li > Allow free-behind capability for large sequential scans, perhaps using
@@ -928,7 +901,7 @@ <h1><a name="section_15">Cache Usage</a></h1>
928
901
< p > < a href ="http://archives.postgresql.org/pgsql-hackers/2005-10/msg01419.php "> http://archives.postgresql.org/pgsql-hackers/2005-10/msg01419.php</ a >
929
902
</ p >
930
903
</ li > </ ul >
931
- < h1 > < a name ="section_16 "> Vacuum</ a > </ h1 >
904
+ < h1 > < a name ="section_15 "> Vacuum</ a > </ h1 >
932
905
933
906
< ul >
934
907
< li > Improve speed with indexes
@@ -987,12 +960,12 @@ <h1><a name="section_16">Vacuum</a></h1>
987
960
</ p >
988
961
</ li > </ ul >
989
962
</ li > </ ul >
990
- < h1 > < a name ="section_17 "> Locking</ a > </ h1 >
963
+ < h1 > < a name ="section_16 "> Locking</ a > </ h1 >
991
964
992
965
< ul >
993
966
< li > Fix priority ordering of read and write light-weight locks (Neil)
994
967
</ li > </ ul >
995
- < h1 > < a name ="section_18 "> Startup Time Improvements</ a > </ h1 >
968
+ < h1 > < a name ="section_17 "> Startup Time Improvements</ a > </ h1 >
996
969
997
970
< ul >
998
971
< 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>
1015
988
existing backends is one of the difficulties with a backend approach.
1016
989
</ p >
1017
990
</ li > </ ul >
1018
- < h1 > < a name ="section_19 "> Write-Ahead Log</ a > </ h1 >
991
+ < h1 > < a name ="section_18 "> Write-Ahead Log</ a > </ h1 >
1019
992
1020
993
< ul >
1021
994
< 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>
1079
1052
of indexes on TOAST tables.
1080
1053
</ p >
1081
1054
</ li > </ ul >
1082
- < h1 > < a name ="section_20 "> Optimizer / Executor</ a > </ h1 >
1055
+ < h1 > < a name ="section_19 "> Optimizer / Executor</ a > </ h1 >
1083
1056
1084
1057
< ul >
1085
1058
< li > Improve selectivity functions for geometric operators
@@ -1104,7 +1077,7 @@ <h1><a name="section_20">Optimizer / Executor</a></h1>
1104
1077
< p > This might replace GEQO,< a href ="http://sixdemonbag.org/Djinni "> http://sixdemonbag.org/Djinni</ a > .
1105
1078
</ p >
1106
1079
</ li > </ ul >
1107
- < h1 > < a name ="section_21 "> Miscellaneous Performance</ a > </ h1 >
1080
+ < h1 > < a name ="section_20 "> Miscellaneous Performance</ a > </ h1 >
1108
1081
1109
1082
< ul >
1110
1083
< 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>
1158
1131
</ li > < li > Reduce the row header size?
1159
1132
</ li > </ ul >
1160
1133
</ li > </ ul >
1161
- < h1 > < a name ="section_22 "> Source Code</ a > </ h1 >
1134
+ < h1 > < a name ="section_21 "> Source Code</ a > </ h1 >
1162
1135
1163
1136
< ul >
1164
1137
< li > Add use of 'const' for variables in source tree
@@ -1231,6 +1204,33 @@ <h1><a name="section_22">Source Code</a></h1>
1231
1204
of result sets using new statement protocol
1232
1205
</ li > </ ul >
1233
1206
</ 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 >
1234
1234
< h1 > < a name ="section_23 "> Features We Do _Not_ Want</ a > </ h1 >
1235
1235
1236
1236
< ul >