Improve indentation of sublists:
authorBruce Momjian <bruce@momjian.us>
Mon, 18 Oct 2004 16:13:43 +0000 (16:13 +0000)
committerBruce Momjian <bruce@momjian.us>
Mon, 18 Oct 2004 16:13:43 +0000 (16:13 +0000)
<  The proper solution to this will probably the use of a master/slave
<  replication solution like Sloney and a connection pooling tool like
<  pgpool.
>    The proper solution to this will probably the use of a master/slave
>    replication solution like Sloney and a connection pooling tool like
>    pgpool.
114,116c114,116
<  You can use any of the master/slave replication servers to use a
<  standby server for data warehousing. To allow read/write queries to
<  multiple servers, you need multi-master replication like pgcluster.
>    You can use any of the master/slave replication servers to use a
>    standby server for data warehousing. To allow read/write queries to
>    multiple servers, you need multi-master replication like pgcluster.
166,167c166,167
<  Currently large objects entries do not have owners. Permissions can
<  only be set at the pg_largeobject table level.
>    Currently large objects entries do not have owners. Permissions can
>    only be set at the pg_largeobject table level.
173c173
<  This requires the TOAST column to be stored EXTERNAL.
>    This requires the TOAST column to be stored EXTERNAL.
359,360c359,360
<  One complexity is whether moving a schema should move all existing
<  schema objects or just define the location for future object creation.
>    One complexity is whether moving a schema should move all existing
>    schema objects or just define the location for future object creation.
364,365c364,365
<  Currently non-global system tables must be in the default database
<  schema. Global system tables can never be moved.
>    Currently non-global system tables must be in the default database
>    schema. Global system tables can never be moved.
371,375c371,375
<  This might require some background daemon to maintain clustering
<  during periods of low usage. It might also require tables to be only
<  paritally filled for easier reorganization.  Another idea would
<         be to create a merged heap/index data file so an index lookup would
<  automatically access the heap data too.
>    This might require some background daemon to maintain clustering
>    during periods of low usage. It might also require tables to be only
>    paritally filled for easier reorganization.  Another idea would
>           be to create a merged heap/index data file so an index lookup would
>    automatically access the heap data too.
379,380c379,380
<  To do this, determine the ideal cluster index for each system
<  table and set the cluster setting during initdb.
>    To do this, determine the ideal cluster index for each system
>    table and set the cluster setting during initdb.
385,386c385,386
<  This requires the use of a savepoint before each COPY line is
<  processed, with ROLLBACK on COPY failure.
>    This requires the use of a savepoint before each COPY line is
>    processed, with ROLLBACK on COPY failure.
395,398c395,398
<  This requires using the row ctid to map cursor rows back to the
<  original heap row. This become more complicated if WITH HOLD cursors
<  are to be supported because WITH HOLD cursors have a copy of the row
<  and no FOR UPDATE lock.
>    This requires using the row ctid to map cursor rows back to the
>    original heap row. This become more complicated if WITH HOLD cursors
>    are to be supported because WITH HOLD cursors have a copy of the row
>    and no FOR UPDATE lock.
405,406c405,406
<  Because WITH HOLD cursors exist outside transactions, this allows
<  them to be listed so they can be closed.
>    Because WITH HOLD cursors exist outside transactions, this allows
>    them to be listed so they can be closed.
413,415c413,415
<  This is useful for returning the auto-generated key for an INSERT.
<  One complication is how to handle rules that run as part of
<  the insert.
>    This is useful for returning the auto-generated key for an INSERT.
>    One complication is how to handle rules that run as part of
>    the insert.
422c422
<  This is basically the same as SET search_path.
>    This is basically the same as SET search_path.
426,427c426,427
<  This requires a checking function to be called after the server
<  configuration file is read.
>    This requires a checking function to be called after the server
>    configuration file is read.
432c432
<  Currently only constants are supported.
>    Currently only constants are supported.
438,439c438,439
<  This requires the cached PL/PgSQL byte code to be invalidated when
<  an object referenced in the function is changed.
>    This requires the cached PL/PgSQL byte code to be invalidated when
>    an object referenced in the function is changed.
512,513c512,513
<  Document differences between ecpg and the SQL standard and
<  information about the Informix-compatibility module.
>    Document differences between ecpg and the SQL standard and
>    information about the Informix-compatibility module.

doc/TODO

index 84a1d4d5893dd06dd46cc36776cfd773412581dd..555d02822bafafd8fd2828bfcbb947de0f40986f 100644 (file)
--- a/doc/TODO
+++ b/doc/TODO
@@ -5,7 +5,7 @@ TODO list for PostgreSQL
 Bracketed items "[]" have more detail.
 
 Current maintainer:    Bruce Momjian (pgman@candle.pha.pa.us)
-Last updated:          Sun Oct 17 23:26:56 EDT 2004
+Last updated:          Mon Oct 18 12:13:19 EDT 2004
 
 The most recent version of this document can be viewed at the PostgreSQL web
 site, http://www.PostgreSQL.org.
@@ -105,15 +105,15 @@ Administration
 * Improve replication solutions
        o Automatic failover
 
-       The proper solution to this will probably the use of a master/slave
-       replication solution like Sloney and a connection pooling tool like
-       pgpool.
+         The proper solution to this will probably the use of a master/slave
+         replication solution like Sloney and a connection pooling tool like
+         pgpool.
 
        o Load balancing
 
-       You can use any of the master/slave replication servers to use a
-       standby server for data warehousing. To allow read/write queries to
-       multiple servers, you need multi-master replication like pgcluster.
+         You can use any of the master/slave replication servers to use a
+         standby server for data warehousing. To allow read/write queries to
+         multiple servers, you need multi-master replication like pgcluster.
 
        o Allow replication over unreliable or non-persistent links
 
@@ -163,14 +163,14 @@ Data Types
        o Improve vacuum of large objects, like /contrib/vacuumlo (?)
        o Add security checking for large objects
 
-       Currently large objects entries do not have owners. Permissions can
-       only be set at the pg_largeobject table level.
+         Currently large objects entries do not have owners. Permissions can
+         only be set at the pg_largeobject table level.
 
        o Auto-delete large objects when referencing row is deleted
 
        o Allow read/write into TOAST values like large objects
 
-       This requires the TOAST column to be stored EXTERNAL.
+         This requires the TOAST column to be stored EXTERNAL.
 
 
 Multi-Language Support
@@ -356,34 +356,34 @@ Commands
        o Allow ALTER TABLESPACE to move to different directories
        o Allow databases and schemas to be moved to different tablespaces
 
-       One complexity is whether moving a schema should move all existing
-       schema objects or just define the location for future object creation.
+         One complexity is whether moving a schema should move all existing
+         schema objects or just define the location for future object creation.
 
        o Allow moving system tables to other tablespaces, where possible
 
-       Currently non-global system tables must be in the default database
-       schema. Global system tables can never be moved.
+         Currently non-global system tables must be in the default database
+         schema. Global system tables can never be moved.
 
 
 * CLUSTER
        o Automatically maintain clustering on a table
 
-       This might require some background daemon to maintain clustering
-       during periods of low usage. It might also require tables to be only
-       paritally filled for easier reorganization.  Another idea would
-        be to create a merged heap/index data file so an index lookup would
-       automatically access the heap data too.
+         This might require some background daemon to maintain clustering
+         during periods of low usage. It might also require tables to be only
+         paritally filled for easier reorganization.  Another idea would
+          be to create a merged heap/index data file so an index lookup would
+         automatically access the heap data too.
 
        o Add default clustering to system tables
 
-       To do this, determine the ideal cluster index for each system
-       table and set the cluster setting during initdb.
+         To do this, determine the ideal cluster index for each system
+         table and set the cluster setting during initdb.
 
 * COPY
        o Allow COPY to report error lines and continue
        
-       This requires the use of a savepoint before each COPY line is
-       processed, with ROLLBACK on COPY failure.
+         This requires the use of a savepoint before each COPY line is
+         processed, with ROLLBACK on COPY failure.
 
        o Allow COPY to understand \x as a hex byte
        o Have COPY return the number of rows loaded/unloaded (?)
@@ -392,51 +392,51 @@ Commands
 * CURSOR
        o Allow UPDATE/DELETE WHERE CURRENT OF cursor
        
-       This requires using the row ctid to map cursor rows back to the
-       original heap row. This become more complicated if WITH HOLD cursors
-       are to be supported because WITH HOLD cursors have a copy of the row
-       and no FOR UPDATE lock.
+         This requires using the row ctid to map cursor rows back to the
+         original heap row. This become more complicated if WITH HOLD cursors
+         are to be supported because WITH HOLD cursors have a copy of the row
+         and no FOR UPDATE lock.
 
        o Prevent DROP TABLE from dropping a row referenced by its own open
          cursor (?)
 
        o Allow pooled connections to list all open WITH HOLD cursors
 
-       Because WITH HOLD cursors exist outside transactions, this allows
-       them to be listed so they can be closed.
+         Because WITH HOLD cursors exist outside transactions, this allows
+         them to be listed so they can be closed.
 
 * INSERT
        o Allow INSERT/UPDATE of the system-generated oid value for a row
        o Allow INSERT INTO tab (col1, ..) VALUES (val1, ..), (val2, ..)
        o Allow INSERT/UPDATE ... RETURNING new.col or old.col
        
-       This is useful for returning the auto-generated key for an INSERT.
-       One complication is how to handle rules that run as part of
-       the insert.
+         This is useful for returning the auto-generated key for an INSERT.
+         One complication is how to handle rules that run as part of
+         the insert.
 
 * SHOW/SET
        o Add SET PERFORMANCE_TIPS option to suggest INDEX, VACUUM, VACUUM
          ANALYZE, and CLUSTER
        o Add SET PATH for schemas (?)
 
-       This is basically the same as SET search_path.
+         This is basically the same as SET search_path.
         
        o Prevent conflicting SET options from being set
 
-       This requires a checking function to be called after the server
-       configuration file is read.
+         This requires a checking function to be called after the server
+         configuration file is read.
 
 * SERVER-SIDE LANGUAGES
        o Allow PL/PgSQL's RAISE function to take expressions (?)
 
-       Currently only constants are supported.
+         Currently only constants are supported.
 
        o Change PL/PgSQL to use palloc() instead of malloc()
        o Handle references to temporary tables that are created, destroyed, 
          then recreated during a session, and EXECUTE is not used
          
-       This requires the cached PL/PgSQL byte code to be invalidated when
-       an object referenced in the function is changed.
+         This requires the cached PL/PgSQL byte code to be invalidated when
+         an object referenced in the function is changed.
 
        o Fix PL/pgSQL RENAME to work on variables other than OLD/NEW
        o Improve PL/PgSQL exception handling using savepoints
@@ -509,8 +509,8 @@ Clients
 * ECPG (?)
        o Docs
 
-       Document differences between ecpg and the SQL standard and
-       information about the Informix-compatibility module.
+         Document differences between ecpg and the SQL standard and
+         information about the Informix-compatibility module.
 
        o Solve cardinality > 1 for input descriptors / variables (?)
        o Improve error handling (?)