]> granicus.if.org Git - postgresql/blobdiff - doc/TODO
Add question mark:
[postgresql] / doc / TODO
index b33fb76528e51c1937a898216664d99211e91ad1..56e22ff9357e66245c2e87f6849c7feaa22c3b07 100644 (file)
--- a/doc/TODO
+++ b/doc/TODO
@@ -2,7 +2,7 @@
 PostgreSQL TODO List
 ====================
 Current maintainer:    Bruce Momjian (pgman@candle.pha.pa.us)
-Last updated:          Sat Apr 22 23:59:59 EDT 2006
+Last updated:          Sat Apr 29 21:45:16 EDT 2006
 
 The most recent version of this document can be viewed at
 http://www.postgresql.org/docs/faqs.TODO.html.
@@ -54,6 +54,8 @@ Administration
 
   This would allow administrators to see more detailed information from
   specific sections of the backend, e.g. checkpoints, autovacuum, etc.
+  Another idea is to allow separate configuration files for each module,
+  or allow arbitrary SET commands to be passed to them.
 
 * -Re-enable the GUC full_page_writes in 8.2 when reliability issues have
   been addressed
@@ -198,7 +200,7 @@ Data Types
   The positive modulus result returned by NUMERICs might be considered
   inaccurate, in one sense.
 
-* %Disallow changing default expression of a SERIAL column
+* %Disallow changing default expression of a SERIAL column?
 * %Disallow ALTER SEQUENCE changes for SERIAL sequences because pg_dump
   does not dump the changes
 * Fix data types where equality comparison isn't intuitive, e.g. box
@@ -225,7 +227,6 @@ Data Types
          computations should adjust based on the time zone rules.
 
        o Fix SELECT '0.01 years'::interval, '0.01 months'::interval
-       o Fix SELECT INTERVAL '1' MONTH
        o Add a GUC variable to allow output of interval values in ISO8601 
          format
        o Improve timestamptz subtraction to be DST-aware
@@ -240,14 +241,31 @@ Data Types
        o Fix interval display to support values exceeding 2^31 hours
        o Add overflow checking to timestamp and interval arithmetic    
        o Add ISO INTERVAL handling
-               o Add support for day-time syntax, INTERVAL '1 2:03:04' DAY TO 
+               o -Add support for day-time syntax, INTERVAL '1 2:03:04' DAY TO 
                  SECOND
+               o Support ISO INTERVAL syntax if units cannot be determined from
+                 the string, and are supplied after the string
+
+                 The SQL standard states that the units after the string
+                 specify the units of the string, e.g. INTERVAL '2' MINUTE
+                 should return '00:02:00'. The current behavior has the units
+                 restrict the interval value to the specified unit or unit
+                 range, INTERVAL '70' SECOND returns '00:00:10'.
+
+                 For syntax that isn't uniquely ISO or PG syntax, like '1' or
+                 '1:30', treat as ISO if there is a range specification clause,
+                 and as PG if there no clause is present, e.g. interpret '1:30'
+                 MINUTE TO SECOND as '1 minute 30 seconds', and interpret
+                 '1:30' as '1 hour, 30 minutes'.
+
+                 This makes common cases like SELECT INTERVAL '1' MONTH
+                 SQL-standard results. The SQL standard supports a limited
+                 number of unit combinations and doesn't support unit names in
+                 the string. The PostgreSQL syntax is more flexible in the
+                 range of units supported, e.g. PostgreSQL supports '1 year 1
+                 hour', while the SQL standard does not.
+
                o Add support for year-month syntax, INTERVAL '50-6' YEAR TO MONTH
-               o For syntax that isn't uniquely ISO or PG syntax, like '1:30' or
-                 '1', treat as ISO if there is a range specification clause,
-                 and as PG if there no clause is present, e.g. interpret 
-                         '1:30' MINUTE TO SECOND as '1 minute 30 seconds', and 
-                         interpret '1:30' as '1 hour, 30 minutes'
                o Interpret INTERVAL '1 year' MONTH as CAST (INTERVAL '1 year' AS
                  INTERVAL MONTH), and this should return '12 months'
                o Round or truncate values to the requested precision, e.g.
@@ -279,7 +297,7 @@ Functions
 =========
 
 * Allow INET subnet tests using non-constants to be indexed
-* Add transaction_timestamp(), statement_timestamp(), clock_timestamp()
+* -Add transaction_timestamp(), statement_timestamp(), clock_timestamp()
   functionality
 
   Current CURRENT_TIMESTAMP returns the start time of the current
@@ -382,6 +400,8 @@ SQL Commands
   manually or automatically when statistics for execute parameters
   differ dramatically from those used during planning.
 
+* Invalidate prepared queries, like INSERT, when the table definition
+  is altered
 * Allow LISTEN/NOTIFY to store info in memory rather than tables?
 
   Currently LISTEN/NOTIFY information is stored in pg_listener. Storing
@@ -483,13 +503,11 @@ SQL Commands
          Currently non-global system tables must be in the default database
          tablespace. Global system tables can never be moved.
 
-       o %Prevent child tables from altering or dropping constraints 
-          like CHECK that were inherited from the parent table
        o Prevent parent tables from altering or dropping constraints
-         like CHECK that are inherited by child tables
-
-         Dropping constraints should only be possible with CASCADE.
-
+         like CHECK that are inherited by child tables unless CASCADE
+         is used
+       o %Prevent child tables from altering or dropping constraints
+          like CHECK that were inherited from the parent table
        o Have ALTER INDEX update the name of a constraint using that index
        o Add ALTER TABLE RENAME CONSTRAINT, update index name also
 
@@ -1075,7 +1093,7 @@ Write-Ahead Log
   entire rows?
 * Allow the pg_xlog directory location to be specified during initdb
   with a symlink back to the /data location
-* Allow WAL information to recover corrupted pg_controldata
+* -Allow WAL information to recover corrupted pg_controldata
 * Find a way to reduce rotational delay when repeatedly writing
   last WAL page