@@ -331,40 +331,40 @@ Data Types
331
331
332
332
http://archives.postgresql.org/pgsql-hackers/2006-11/msg00390.php
333
333
334
- o Add ISO INTERVAL handling
335
-
336
- http://archives.postgresql.org/pgsql-hackers/2006-01/msg00250.php
337
- http://archives.postgresql.org/pgsql-bugs/2006-04/msg00248.php
338
-
339
- o Support ISO INTERVAL syntax if units cannot be determined from
340
- the string, and are supplied after the string
341
-
342
- The SQL standard states that the units after the string
343
- specify the units of the string, e.g. INTERVAL '2' MINUTE
344
- should return '00:02:00'. The current behavior has the units
345
- restrict the interval value to the specified unit or unit
346
- range, INTERVAL '70' SECOND returns '00:00:10'.
347
-
348
- For syntax that isn't uniquely ISO or PG syntax, like '1' or
349
- '1:30', treat as ISO if there is a range specification clause,
350
- and as PG if there no clause is present, e.g. interpret '1:30'
351
- MINUTE TO SECOND as '1 minute 30 seconds', and interpret
352
- '1:30' as '1 hour, 30 minutes'.
353
-
354
- This makes common cases like SELECT INTERVAL '1' MONTH
355
- SQL-standard results. The SQL standard supports a limited
356
- number of unit combinations and doesn't support unit names in
357
- the string. The PostgreSQL syntax is more flexible in the
358
- range of units supported, e.g. PostgreSQL supports '1 year 1
359
- hour', while the SQL standard does not.
360
-
361
- o Add support for year-month syntax, INTERVAL '50-6' YEAR
362
- TO MONTH
363
- o Interpret INTERVAL '1 year' MONTH as CAST (INTERVAL '1
364
- year' AS INTERVAL MONTH), and this should return '12 months'
365
- o Round or truncate values to the requested precision, e.g.
366
- INTERVAL '11 months' AS YEAR should return one or zero
367
- o Support precision, CREATE TABLE foo (a INTERVAL MONTH(3))
334
+ * Add ISO INTERVAL handling
335
+
336
+ http://archives.postgresql.org/pgsql-hackers/2006-01/msg00250.php
337
+ http://archives.postgresql.org/pgsql-bugs/2006-04/msg00248.php
338
+
339
+ o Support ISO INTERVAL syntax if units cannot be determined from
340
+ the string, and are supplied after the string
341
+
342
+ The SQL standard states that the units after the string
343
+ specify the units of the string, e.g. INTERVAL '2' MINUTE
344
+ should return '00:02:00'. The current behavior has the units
345
+ restrict the interval value to the specified unit or unit
346
+ range, INTERVAL '70' SECOND returns '00:00:10'.
347
+
348
+ For syntax that isn't uniquely ISO or PG syntax, like '1' or
349
+ '1:30', treat as ISO if there is a range specification clause,
350
+ and as PG if there no clause is present, e.g. interpret '1:30'
351
+ MINUTE TO SECOND as '1 minute 30 seconds', and interpret
352
+ '1:30' as '1 hour, 30 minutes'.
353
+
354
+ This makes common cases like SELECT INTERVAL '1' MONTH
355
+ SQL-standard results. The SQL standard supports a limited
356
+ number of unit combinations and doesn't support unit names in
357
+ the string. The PostgreSQL syntax is more flexible in the
358
+ range of units supported, e.g. PostgreSQL supports '1 year 1
359
+ hour', while the SQL standard does not.
360
+
361
+ o Add support for year-month syntax, INTERVAL '50-6' YEAR
362
+ TO MONTH
363
+ o Interpret INTERVAL '1 year' MONTH as CAST (INTERVAL '1
364
+ year' AS INTERVAL MONTH), and this should return '12 months'
365
+ o Round or truncate values to the requested precision, e.g.
366
+ INTERVAL '11 months' AS YEAR should return one or zero
367
+ o Support precision, CREATE TABLE foo (a INTERVAL MONTH(3))
368
368
369
369
370
370
* Arrays
@@ -384,7 +384,7 @@ Data Types
384
384
o Add security checking for large objects
385
385
o Auto-delete large objects when referencing row is deleted
386
386
387
- contrib/lo offers this functionality.
387
+ contrib/lo offers this functionality.
388
388
389
389
o Allow read/write into TOAST values like large objects
390
390
@@ -396,14 +396,14 @@ Data Types
396
396
397
397
* MONEY data type
398
398
399
- * Add locale-aware MONEY type, and support multiple currencies
399
+ o Add locale-aware MONEY type, and support multiple currencies
400
400
401
401
http://archives.postgresql.org/pgsql-general/2005-08/msg01432.php
402
402
http://archives.postgresql.org/pgsql-hackers/2007-03/msg01181.php
403
403
404
- * MONEY dumps in a locale-specific format making it difficult to
404
+ o MONEY dumps in a locale-specific format making it difficult to
405
405
restore to a system with a different locale
406
- * Allow MONEY to be easily cast to/from other numeric data types
406
+ o Allow MONEY to be easily cast to/from other numeric data types
407
407
408
408
* Text Search
409
409
@@ -494,7 +494,7 @@ Functions
494
494
* Prevent malicious functions from being executed with the permissions
495
495
of unsuspecting users
496
496
497
- Index functions are safe, so VACUUM and ANALYZE are safe too.
497
+ Index functions are safe, so VACUUM and ANALYZE are safe too.
498
498
Triggers, CHECK and DEFAULT expressions, and rules are still vulnerable.
499
499
http://archives.postgresql.org/pgsql-hackers/2008-01/msg00268.php
500
500
@@ -569,7 +569,7 @@ Multi-Language Support
569
569
http://archives.postgresql.org/pgsql-hackers/2006-01/msg00767.php
570
570
http://archives.postgresql.org/pgsql-patches/2006-03/msg00233.php
571
571
http://archives.postgresql.org/pgsql-hackers/2006-09/msg00662.php
572
- http://wiki.postgresql.org/wiki/Todo:Collate
572
+ http://wiki.postgresql.org/wiki/Todo:Collate
573
573
http://wiki.postgresql.org/wiki/Todo:ICU
574
574
575
575
* Support multiple simultaneous character sets, per SQL92
@@ -667,7 +667,7 @@ SQL Commands
667
667
* Improve failure message when DROP DATABASE is used on a database that
668
668
has prepared transactions
669
669
* Allow prepared transactions with temporary tables created and dropped
670
- in the same transaction, and when an ON COMMIT DELETE ROWS temporary
670
+ in the same transaction, and when an ON COMMIT DELETE ROWS temporary
671
671
table is accessed
672
672
673
673
http://archives.postgresql.org/pgsql-hackers/2008-03/msg00047.php
@@ -840,7 +840,7 @@ SQL Commands
840
840
like CHECK that are inherited by child tables unless CASCADE
841
841
is used
842
842
o -Prevent child tables from altering or dropping constraints
843
- like CHECK that were inherited from the parent table
843
+ like CHECK that were inherited from the parent table
844
844
o Have ALTER INDEX update the name of a constraint using that index
845
845
o Add ALTER TABLE RENAME CONSTRAINT, update index name also
846
846
o Allow column display reordering by recording a display,
@@ -860,7 +860,7 @@ SQL Commands
860
860
This might require some background daemon to maintain clustering
861
861
during periods of low usage. It might also require tables to be only
862
862
partially filled for easier reorganization. Another idea would
863
- be to create a merged heap/index data file so an index lookup would
863
+ be to create a merged heap/index data file so an index lookup would
864
864
automatically access the heap data too. A third idea would be to
865
865
store heap rows in hashed groups, perhaps using a user-supplied
866
866
hash function.
@@ -915,7 +915,7 @@ SQL Commands
915
915
916
916
o Allow COPY to report errors sooner
917
917
918
- http://archives.postgresql.org/pgsql-hackers/2008-04/msg01169.php
918
+ http://archives.postgresql.org/pgsql-hackers/2008-04/msg01169.php
919
919
920
920
921
921
@@ -958,7 +958,7 @@ SQL Commands
958
958
959
959
o Allow LISTEN/NOTIFY to store info in memory rather than tables?
960
960
961
- Currently LISTEN/NOTIFY information is stored in pg_listener.
961
+ Currently LISTEN/NOTIFY information is stored in pg_listener.
962
962
Storing such information in memory would improve performance.
963
963
964
964
o Add optional textual message to NOTIFY
@@ -1154,7 +1154,7 @@ Clients
1154
1154
o -Improve display of enums to show valid enum values
1155
1155
o Add prompt escape to display the client and server versions
1156
1156
o Add option to wrap column values at whitespace boundaries,
1157
- rather than chopping them at a fixed width.
1157
+ rather than chopping them at a fixed width.
1158
1158
1159
1159
Currently, "wrapped" format chops values into fixed
1160
1160
widths. Perhaps the word wrapping could use the same
@@ -1195,7 +1195,7 @@ Clients
1195
1195
http://archives.postgresql.org/pgsql-hackers/2008-02/msg00205.php
1196
1196
1197
1197
o Allow pg_restore to utilize multiple CPUs and I/O channels by
1198
- restoring multiple objects simultaneously
1198
+ restoring multiple objects simultaneously
1199
1199
1200
1200
This might require a pg_restore flag to indicate how many
1201
1201
simultaneous operations should be performed. Only pg_dump's
@@ -1208,7 +1208,7 @@ Clients
1208
1208
concurrently, via a single heap scan
1209
1209
1210
1210
This requires a pg_dump -Fc file because that format contains
1211
- the required dependency information.
1211
+ the required dependency information.
1212
1212
http://archives.postgresql.org/pgsql-general/2007-05/msg01274.php
1213
1213
1214
1214
o Allow pg_restore to load different parts of the COPY data
@@ -1435,7 +1435,7 @@ Indexes
1435
1435
1436
1436
* Hash
1437
1437
1438
- http://archives.postgresql.org/pgsql-hackers/2007-09/msg00051.php
1438
+ o http://archives.postgresql.org/pgsql-hackers/2007-09/msg00051.php
1439
1439
1440
1440
o Pack hash index buckets onto disk pages more efficiently
1441
1441
@@ -1526,7 +1526,7 @@ Cache Usage
1526
1526
page of bitmaps could track 512MB of heap pages.
1527
1527
1528
1528
A third idea would be for a heap scan to check if all rows are visible
1529
- and if so set a per-table flag which can be checked by index scans.
1529
+ and if so set a per-table flag which can be checked by index scans.
1530
1530
Any change to the table would have to clear the flag. To detect
1531
1531
changes during the heap scan a counter could be set at the start and
1532
1532
checked at the end --- if it is the same, the table has not been
@@ -1536,11 +1536,9 @@ Cache Usage
1536
1536
http://archives.postgresql.org/pgsql-patches/2008-01/msg00049.php
1537
1537
1538
1538
* Consider automatic caching of statements at various levels:
1539
+ parsed query tree, query execution plan, query results
1539
1540
1540
- o Parsed query tree
1541
- o Query execute plan
1542
- o Query results
1543
- http://archives.postgresql.org/pgsql-hackers/2008-04/msg00823.php
1541
+ http://archives.postgresql.org/pgsql-hackers/2008-04/msg00823.php
1544
1542
1545
1543
* Consider increasing internal areas when shared buffers is increased
1546
1544
@@ -1617,7 +1615,7 @@ Vacuum
1617
1615
1618
1616
http://archives.postgresql.org/pgsql-hackers/2006-12/msg00876.php
1619
1617
1620
- o Prevent long-lived temporary tables from causing frozen-xid
1618
+ o - Prevent long-lived temporary tables from causing frozen-xid
1621
1619
advancement starvation
1622
1620
1623
1621
The problem is that autovacuum cannot vacuum them to set frozen xids;
@@ -1639,7 +1637,7 @@ Vacuum
1639
1637
Locking
1640
1638
=======
1641
1639
1642
- * Fix priority ordering of read and write light-weight locks (Neil)
1640
+ * Fix priority ordering of read and write light-weight locks
1643
1641
1644
1642
http://archives.postgresql.org/pgsql-hackers/2004-11/msg00893.php
1645
1643
http://archives.postgresql.org/pgsql-hackers/2004-11/msg00905.php
@@ -1822,7 +1820,7 @@ Background Writer
1822
1820
catalogs and the transaction status log.
1823
1821
1824
1822
* Consider adding buffers the background writer finds reusable to the
1825
- free list
1823
+ free list
1826
1824
1827
1825
http://archives.postgresql.org/pgsql-hackers/2007-04/msg00781.php
1828
1826
@@ -1925,7 +1923,7 @@ Miscellaneous Performance
1925
1923
1926
1924
http://archives.postgresql.org/pgsql-committers/2007-11/msg00585.php
1927
1925
1928
- * Improve performance of shared invalidation queue for multiple CPUs
1926
+ * - Improve performance of shared invalidation queue for multiple CPUs
1929
1927
1930
1928
http://archives.postgresql.org/pgsql-performance/2008-01/msg00023.php
1931
1929
@@ -1975,7 +1973,7 @@ Source Code
1975
1973
* %Remove warnings created by -Wcast-align
1976
1974
* Move platform-specific ps status display info from ps_status.c to ports
1977
1975
* Add optional CRC checksum to heap and index pages
1978
- * Improve documentation to build only interfaces (Marc)
1976
+ * Improve documentation to build only interfaces
1979
1977
* Remove or relicense modules that are not under the BSD license, if possible
1980
1978
* Acquire lock on a relation before building a relcache entry for it
1981
1979
* Allow cross-compiling by generating the zic database on the target system
@@ -2132,7 +2130,7 @@ Exotic Features
2132
2130
modification.
2133
2131
2134
2132
* Allow plug-in modules to emulate features from other databases
2135
- * Add features of Oracle-style packages (Pavel)
2133
+ * Add features of Oracle-style packages
2136
2134
2137
2135
A package would be a schema with session-local variables,
2138
2136
public/private functions, and initialization functions. It
0 commit comments