diff options
| author | Bruce Momjian | 2004-10-18 16:13:43 +0000 |
|---|---|---|
| committer | Bruce Momjian | 2004-10-18 16:13:43 +0000 |
| commit | e444d9a9661db075953ed966215c5edd66140e81 (patch) | |
| tree | 41e82c473f44ec0a319c7d3c3774e4464d9baf63 | |
| parent | 51aacecae60ff532487d50f1a20ea14f091f9ada (diff) | |
Improve indentation of sublists:
< 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.
| -rw-r--r-- | doc/TODO | 80 |
1 files changed, 40 insertions, 40 deletions
@@ -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 (?) |
