2
2
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
3
< html >
4
4
< head >
5
- < title > PostgreSQL TODO List </ title >
5
+ < title > z </ title >
6
6
< meta name ="generator " content ="HTML::TextToHTML v2.25 "/>
7
7
</ head >
8
8
< body bgcolor ="#FFFFFF " text ="#000000 " link ="#FF0000 " vlink ="#A00000 " alink ="#0000FF ">
9
- < h1 > < a name ="section_1 "> PostgreSQL TODO List</ a > </ h1 >
10
- < p > Current maintainer: Bruce Momjian (< a href ="mailto:bruce@momjian.us "> bruce@momjian.us</ a > )< br />
11
- Last updated: Sat May 5 10:47:39 EDT 2007
12
- </ p >
9
+ < p > z< br />
10
+ PostgreSQL TODO List
11
+ </ p > < hr />
12
+ Current maintainer: Bruce Momjian (< a href ="mailto:bruce@momjian.us "> bruce@momjian.us</ a > )< br />
13
+ Last updated: Sat May 5 11:39:57 EDT 2007
14
+
13
15
< p > The most recent version of this document can be viewed at< br />
14
16
< a href ="http://www.postgresql.org/docs/faqs.TODO.html "> http://www.postgresql.org/docs/faqs.TODO.html</ a > .
15
17
</ p >
@@ -23,7 +25,7 @@ <h1><a name="section_1">PostgreSQL TODO List</a></h1>
23
25
first. There is also a developer's wiki at< br />
24
26
< a href ="http://developer.postgresql.org "> http://developer.postgresql.org</ a > .
25
27
</ p >
26
- < h1 > < a name ="section_2 "> Administration</ a > </ h1 >
28
+ < h1 > < a name ="section_1 "> Administration</ a > </ h1 >
27
29
28
30
< ul >
29
31
< li > Allow major upgrades without dump/reload, perhaps using pg_upgrade
@@ -151,7 +153,7 @@ <h1><a name="section_2">Administration</a></h1>
151
153
</ p >
152
154
</ li > </ ul >
153
155
</ li > </ ul >
154
- < h1 > < a name ="section_3 "> Monitoring</ a > </ h1 >
156
+ < h1 > < a name ="section_2 "> Monitoring</ a > </ h1 >
155
157
156
158
< ul >
157
159
< li > Allow server log information to be output as INSERT statements
@@ -160,7 +162,7 @@ <h1><a name="section_3">Monitoring</a></h1>
160
162
</ p >
161
163
</ li > < li > -< em > Add ability to monitor the use of temporary sort files</ em >
162
164
</ li > </ ul >
163
- < h1 > < a name ="section_4 "> Data Types</ a > </ h1 >
165
+ < h1 > < a name ="section_3 "> Data Types</ a > </ h1 >
164
166
165
167
< ul >
166
168
< li > -< em > Make 64-bit version of the MONEY data type</ em >
@@ -298,7 +300,7 @@ <h1><a name="section_4">Data Types</a></h1>
298
300
</ li > </ ul >
299
301
</ li > </ ul >
300
302
</ li > </ ul >
301
- < h1 > < a name ="section_5 "> Functions</ a > </ h1 >
303
+ < h1 > < a name ="section_4 "> Functions</ a > </ h1 >
302
304
303
305
< ul >
304
306
< li > Allow INET subnet tests using non-constants to be indexed
@@ -354,7 +356,7 @@ <h1><a name="section_5">Functions</a></h1>
354
356
e.g. box @> point
355
357
</ p >
356
358
</ li > </ ul >
357
- < h1 > < a name ="section_6 "> Multi-Language Support</ a > </ h1 >
359
+ < h1 > < a name ="section_5 "> Multi-Language Support</ a > </ h1 >
358
360
359
361
< ul >
360
362
< li > Add NCHAR (as distinguished from ordinary varchar),
@@ -395,7 +397,7 @@ <h1><a name="section_6">Multi-Language Support</a></h1>
395
397
< p > < a href ="http://archives.postgresql.org/pgsql-hackers/2007-03/msg00767.php "> http://archives.postgresql.org/pgsql-hackers/2007-03/msg00767.php</ a >
396
398
</ p >
397
399
</ li > </ ul >
398
- < h1 > < a name ="section_7 "> Views / Rules</ a > </ h1 >
400
+ < h1 > < a name ="section_6 "> Views / Rules</ a > </ h1 >
399
401
400
402
< ul >
401
403
< li > Automatically create rules on views so they are updateable, per SQL99
@@ -412,7 +414,7 @@ <h1><a name="section_7">Views / Rules</a></h1>
412
414
are added after the view is created.
413
415
</ p >
414
416
</ li > </ ul >
415
- < h1 > < a name ="section_8 "> SQL Commands</ a > </ h1 >
417
+ < h1 > < a name ="section_7 "> SQL Commands</ a > </ h1 >
416
418
417
419
< ul >
418
420
< li > Add CORRESPONDING BY to UNION/INTERSECT/EXCEPT
@@ -701,7 +703,7 @@ <h1><a name="section_8">SQL Commands</a></h1>
701
703
</ li > </ ul >
702
704
</ li > </ ul >
703
705
</ li > </ ul >
704
- < h1 > < a name ="section_9 "> Clients</ a > </ h1 >
706
+ < h1 > < a name ="section_8 "> Clients</ a > </ h1 >
705
707
706
708
< ul >
707
709
< li > Have pg_ctl look at PGHOST in case it is a socket directory?
@@ -815,7 +817,7 @@ <h1><a name="section_9">Clients</a></h1>
815
817
</ p >
816
818
</ li > </ ul >
817
819
</ p > </ ul >
818
- < h1 > < a name ="section_10 "> Triggers</ a > </ h1 >
820
+ < h1 > < a name ="section_9 "> Triggers</ a > </ h1 >
819
821
820
822
< ul >
821
823
< li > Add deferred trigger queue file
@@ -850,26 +852,16 @@ <h1><a name="section_10">Triggers</a></h1>
850
852
< p > < a href ="http://archives.postgresql.org/pgsql-general/2007-02/msg01466.php "> http://archives.postgresql.org/pgsql-general/2007-02/msg01466.php</ a >
851
853
</ p >
852
854
</ li > </ ul >
853
- < h1 > < a name ="section_11 "> Dependency Checking</ a > </ h1 >
855
+ < h1 > < a name ="section_10 "> Dependency Checking</ a > </ h1 >
854
856
855
857
< ul >
856
- < li > Flush cached query plans when the dependent objects change,
857
- when the cardinality of parameters changes dramatically, or
858
+ < li > -< em > Flush cached query plans when the dependent objects change or</ em >
858
859
when new ANALYZE statistics are available
859
- < p > A more complex solution would be to save multiple plans for different
860
- cardinality and use the appropriate plan based on the EXECUTE values.
861
- </ p >
862
- </ li > < li > Track dependencies in function bodies and recompile/invalidate
863
- < p > This is particularly important for references to temporary tables
864
- in PL/PgSQL because PL/PgSQL caches query plans. The only workaround
865
- in PL/PgSQL is to use EXECUTE. One complexity is that a function
866
- might itself drop and recreate dependent tables, causing it to
867
- invalidate its own query plan.
868
- </ p >
869
- </ li > < li > Invalidate prepared queries, like INSERT, when the table definition
860
+ </ li > < li > -< em > Track dependencies in function bodies and recompile/invalidate</ em >
861
+ </ li > < li > -< em > Invalidate prepared queries, like INSERT, when the table definition</ em >
870
862
is altered
871
863
</ li > </ ul >
872
- < h1 > < a name ="section_12 "> Indexes</ a > </ h1 >
864
+ < h1 > < a name ="section_11 "> Indexes</ a > </ h1 >
873
865
874
866
< ul >
875
867
< li > Add UNIQUE capability to non-btree indexes
@@ -942,7 +934,7 @@ <h1><a name="section_12">Indexes</a></h1>
942
934
</ p >
943
935
</ li > </ ul >
944
936
</ li > </ ul >
945
- < h1 > < a name ="section_13 "> Fsync</ a > </ h1 >
937
+ < h1 > < a name ="section_12 "> Fsync</ a > </ h1 >
946
938
947
939
< ul >
948
940
< li > Improve commit_delay handling to reduce fsync()
@@ -960,7 +952,7 @@ <h1><a name="section_13">Fsync</a></h1>
960
952
< a href ="http://archives.postgresql.org/pgsql-hackers/2007-01/msg00079.php "> http://archives.postgresql.org/pgsql-hackers/2007-01/msg00079.php</ a >
961
953
</ p >
962
954
</ li > </ ul >
963
- < h1 > < a name ="section_14 "> Cache Usage</ a > </ h1 >
955
+ < h1 > < a name ="section_13 "> Cache Usage</ a > </ h1 >
964
956
965
957
< ul >
966
958
< li > Allow free-behind capability for large sequential scans, perhaps using
@@ -1025,7 +1017,7 @@ <h1><a name="section_14">Cache Usage</a></h1>
1025
1017
< a href ="http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php "> http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php</ a >
1026
1018
</ p >
1027
1019
</ li > </ ul >
1028
- < h1 > < a name ="section_15 "> Vacuum</ a > </ h1 >
1020
+ < h1 > < a name ="section_14 "> Vacuum</ a > </ h1 >
1029
1021
1030
1022
< ul >
1031
1023
< li > Improve speed with indexes
@@ -1095,7 +1087,7 @@ <h1><a name="section_15">Vacuum</a></h1>
1095
1087
</ p >
1096
1088
</ li > </ ul >
1097
1089
</ li > </ ul >
1098
- < h1 > < a name ="section_16 "> Locking</ a > </ h1 >
1090
+ < h1 > < a name ="section_15 "> Locking</ a > </ h1 >
1099
1091
1100
1092
< ul >
1101
1093
< li > Fix priority ordering of read and write light-weight locks (Neil)
@@ -1115,7 +1107,7 @@ <h1><a name="section_16">Locking</a></h1>
1115
1107
</ li > < li > Add idle_in_transaction_timeout GUC so locks are not held for long
1116
1108
periods of time
1117
1109
</ li > </ ul >
1118
- < h1 > < a name ="section_17 "> Startup Time Improvements</ a > </ h1 >
1110
+ < h1 > < a name ="section_16 "> Startup Time Improvements</ a > </ h1 >
1119
1111
1120
1112
< ul >
1121
1113
< li > Experiment with multi-threaded backend for backend creation [< a href ="http://momjian.postgresql.org/cgi-bin/pgtodo?thread "> thread</ a > ]
@@ -1138,7 +1130,7 @@ <h1><a name="section_17">Startup Time Improvements</a></h1>
1138
1130
existing backends is one of the difficulties with a backend approach.
1139
1131
</ p >
1140
1132
</ li > </ ul >
1141
- < h1 > < a name ="section_18 "> Write-Ahead Log</ a > </ h1 >
1133
+ < h1 > < a name ="section_17 "> Write-Ahead Log</ a > </ h1 >
1142
1134
1143
1135
< ul >
1144
1136
< li > Eliminate need to write full pages to WAL before page modification [< a href ="http://momjian.postgresql.org/cgi-bin/pgtodo?wal "> wal</ a > ]
@@ -1204,7 +1196,7 @@ <h1><a name="section_18">Write-Ahead Log</a></h1>
1204
1196
of indexes on TOAST tables.
1205
1197
</ p >
1206
1198
</ li > </ ul >
1207
- < h1 > < a name ="section_19 "> Optimizer / Executor</ a > </ h1 >
1199
+ < h1 > < a name ="section_18 "> Optimizer / Executor</ a > </ h1 >
1208
1200
1209
1201
< ul >
1210
1202
< li > Improve selectivity functions for geometric operators
@@ -1229,7 +1221,7 @@ <h1><a name="section_19">Optimizer / Executor</a></h1>
1229
1221
< p > < a href ="http://archives.postgresql.org/pgsql-hackers/2007-01/msg00096.php "> http://archives.postgresql.org/pgsql-hackers/2007-01/msg00096.php</ a >
1230
1222
</ p >
1231
1223
</ li > </ ul >
1232
- < h1 > < a name ="section_20 "> Miscellaneous Performance</ a > </ h1 >
1224
+ < h1 > < a name ="section_19 "> Miscellaneous Performance</ a > </ h1 >
1233
1225
1234
1226
< ul >
1235
1227
< li > Do async I/O for faster random read-ahead of data
@@ -1274,7 +1266,7 @@ <h1><a name="section_20">Miscellaneous Performance</a></h1>
1274
1266
< p > < a href ="http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php "> http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php</ a >
1275
1267
</ p >
1276
1268
</ li > </ ul >
1277
- < h1 > < a name ="section_21 "> Source Code</ a > </ h1 >
1269
+ < h1 > < a name ="section_20 "> Source Code</ a > </ h1 >
1278
1270
1279
1271
< ul >
1280
1272
< li > Add use of 'const' for variables in source tree
@@ -1349,7 +1341,7 @@ <h1><a name="section_21">Source Code</a></h1>
1349
1341
of result sets using new statement protocol
1350
1342
</ li > </ ul >
1351
1343
</ li > </ ul >
1352
- < h1 > < a name ="section_22 "> Exotic Features</ a > </ h1 >
1344
+ < h1 > < a name ="section_21 "> Exotic Features</ a > </ h1 >
1353
1345
1354
1346
< ul >
1355
1347
< li > Add pre-parsing phase that converts non-ISO syntax to supported
@@ -1377,7 +1369,7 @@ <h1><a name="section_22">Exotic Features</a></h1>
1377
1369
< a href ="http://archives.postgresql.org/pgsql-hackers/2006-10/msg01527.php "> http://archives.postgresql.org/pgsql-hackers/2006-10/msg01527.php</ a >
1378
1370
</ p >
1379
1371
</ li > </ ul >
1380
- < h1 > < a name ="section_23 "> Features We Do < u > Not</ u > Want</ a > </ h1 >
1372
+ < h1 > < a name ="section_22 "> Features We Do < u > Not</ u > Want</ a > </ h1 >
1381
1373
1382
1374
< ul >
1383
1375
< li > All backends running as threads in a single process (not wanted)
0 commit comments