Split up wal-logging items:
authorBruce Momjian
Tue, 7 Feb 2006 02:08:08 +0000 (02:08 +0000)
committerBruce Momjian
Tue, 7 Feb 2006 02:08:08 +0000 (02:08 +0000)
< * Allow control over which tables are WAL-logged [walcontrol]
> * Allow WAL logging to be turned off for a table, but the table
>   might be dropped or truncated during crash recovery [walcontrol]
<   commit.  To do this, only a single writer can modify the table, and
<   writes must happen only on new pages.  Readers can continue accessing
<   the table.  This would affect COPY, and perhaps INSERT/UPDATE too.
<   Another option is to avoid transaction logging entirely and truncate
<   or drop the table on crash recovery.  These should be implemented
<   using ALTER TABLE, e.g. ALTER TABLE PERSISTENCE [ DROP | TRUNCATE |
<   STABLE | DEFAULT ].  Tables using non-default logging should not use
<   referential integrity with default-logging tables, and tables using
<   stable logging probably can not have indexes.  One complexity is
<   the handling of indexes on TOAST tables.
>   commit.  This should be implemented using ALTER TABLE, e.g. ALTER
>   TABLE PERSISTENCE [ DROP | TRUNCATE | DEFAULT ].  Tables using
>   non-default logging should not use referential integrity with
>   default-logging tables.  A table without dirty buffers during a
>   crash could perhaps avoid the drop/truncate.
>
> * Allow WAL logging to be turned off for a table, but the table would
>   avoid being truncated/dropped [walcontrol]
>
>   To do this, only a single writer can modify the table, and writes
>   must happen only on new pages so the new pages can be removed during
>   crash recovery.  Readers can continue accessing the table.  Such
>   tables probably cannot have indexes.  One complexity is the handling
>   of indexes on TOAST tables.

doc/TODO
doc/src/FAQ/TODO.html

index b38a717f1e24a1149ac3f71ff6402a667882b431..be825a74f8f5791e77eb253c22c39d22a98dab4d 100644 (file)
--- a/doc/TODO
+++ b/doc/TODO
@@ -2,7 +2,7 @@
 PostgreSQL TODO List
 ====================
 Current maintainer:    Bruce Momjian ([email protected])
-Last updated:      Fri Feb  3 22:23:19 EST 2006
+Last updated:      Mon Feb  6 21:08:10 EST 2006
 
 The most recent version of this document can be viewed at
 http://www.postgresql.org/docs/faqs.TODO.html.
@@ -1024,19 +1024,24 @@ Write-Ahead Log
   remove the 'fsync' parameter (which results in an an inconsistent
   database) in favor of this capability.
 
-* Allow control over which tables are WAL-logged [walcontrol]
+* Allow WAL logging to be turned off for a table, but the table
+  might be dropped or truncated during crash recovery [walcontrol]
 
   Allow tables to bypass WAL writes and just fsync() dirty pages on
-  commit.  To do this, only a single writer can modify the table, and
-  writes must happen only on new pages.  Readers can continue accessing
-  the table.  This would affect COPY, and perhaps INSERT/UPDATE too.
-  Another option is to avoid transaction logging entirely and truncate 
-  or drop the table on crash recovery.  These should be implemented 
-  using ALTER TABLE, e.g. ALTER TABLE PERSISTENCE [ DROP | TRUNCATE | 
-  STABLE | DEFAULT ].  Tables using non-default logging should not use
-  referential integrity with default-logging tables, and tables using
-  stable logging probably can not have indexes.  One complexity is
-  the handling of indexes on TOAST tables.
+  commit.  This should be implemented using ALTER TABLE, e.g. ALTER 
+  TABLE PERSISTENCE [ DROP | TRUNCATE | DEFAULT ].  Tables using 
+  non-default logging should not use referential integrity with 
+  default-logging tables.  A table without dirty buffers during a
+  crash could perhaps avoid the drop/truncate.
+
+* Allow WAL logging to be turned off for a table, but the table would
+  avoid being truncated/dropped [walcontrol]
+
+  To do this, only a single writer can modify the table, and writes 
+  must happen only on new pages so the new pages can be removed during
+  crash recovery.  Readers can continue accessing the table.  Such 
+  tables probably cannot have indexes.  One complexity is the handling 
+  of indexes on TOAST tables.
 
 
 Optimizer / Executor
index d9d21ac4c74170471b2db43498ba033dab63e295..cd3864d1fc41a067da7077cf103dddaab9dd09f5 100644 (file)
@@ -8,7 +8,7 @@
 
 

PostgreSQL TODO List

 

Current maintainer:     Bruce Momjian ([email protected])

-Last updated:           Fri Feb  3 22:23:19 EST 2006
+Last updated:           Mon Feb  6 21:08:10 EST 2006
 

 

The most recent version of this document can be viewed at

 http://www.postgresql.org/docs/faqs.TODO.html.
@@ -26,7 +26,7 @@ first.
 
 
       
  • %Remove behavior of postmaster -o
  • -  
  • -%Allow pooled connections to list all prepared statements
  • +  
  • -*%Allow pooled connections to list all prepared statements*
  •  

      This would allow an application inheriting a pooled connection to know

       the statements prepared in the current session.
     

    @@ -79,8 +79,8 @@ first.
         
  • %Allow postgresql.conf file values to be changed via an SQL
  •            API, perhaps using SET GLOBAL
         
  • Allow the server to be stopped/restarted via an SQL API
  • -    
  • -Issue a warning if a change-on-restart-only postgresql.conf value
  • -          is modified  and the server config files are reloaded
    +    
  • -Issue a warning if a change-on-restart-only postgresql.conf value
  • +          is modified  and the server config files are reloaded
         
  • Mark change-on-restart-only values in postgresql.conf
  •    
       
  • Tablespaces
  • @@ -928,18 +928,22 @@ first.
       remove the 'fsync' parameter (which results in an an inconsistent
       database) in favor of this capability.
     

    -  
  • Allow control over which tables are WAL-logged [walcontrol]
  • +  
  • Allow WAL logging to be turned off for a table, but the table
  • +  might be dropped or truncated during crash recovery [walcontrol]
     

      Allow tables to bypass WAL writes and just fsync() dirty pages on

    -  commit.  To do this, only a single writer can modify the table, and
    -  writes must happen only on new pages.  Readers can continue accessing
    -  the table.  This would affect COPY, and perhaps INSERT/UPDATE too.
    -  Another option is to avoid transaction logging entirely and truncate 
    -  or drop the table on crash recovery.  These should be implemented 
    -  using ALTER TABLE, e.g. ALTER TABLE PERSISTENCE [ DROP | TRUNCATE | 
    -  STABLE | DEFAULT ].  Tables using non-default logging should not use
    -  referential integrity with default-logging tables, and tables using
    -  stable logging probably can not have indexes.  One complexity is
    -  the handling of indexes on TOAST tables.
    +  commit.  This should be implemented using ALTER TABLE, e.g. ALTER 
    +  TABLE PERSISTENCE [ DROP | TRUNCATE | DEFAULT ].  Tables using 
    +  non-default logging should not use referential integrity with 
    +  default-logging tables.  A table without dirty buffers during a
    +  crash could perhaps avoid the drop/truncate.
    +

    +  
  • Allow WAL logging to be turned off for a table, but the table would
  • +  avoid being truncated/dropped [walcontrol]
    +

      To do this, only a single writer can modify the table, and writes 

    +  must happen only on new pages so the new pages can be removed during
    +  crash recovery.  Readers can continue accessing the table.  Such 
    +  tables probably cannot have indexes.  One complexity is the handling 
    +  of indexes on TOAST tables.
     

     
     

    Optimizer / Executor