From 6efc968233aa6fa5ceb35df88de50cf2bdced222 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sun, 27 Jan 2002 04:22:35 +0000 Subject: [PATCH] Remove dashed items in preparations for 7.3. --- doc/TODO | 77 ++------------------------------------------------------ 1 file changed, 2 insertions(+), 75 deletions(-) diff --git a/doc/TODO b/doc/TODO index 4eb900dd6c..5328b52068 100644 --- a/doc/TODO +++ b/doc/TODO @@ -1,23 +1,17 @@ TODO list for PostgreSQL ======================== -Last updated: Sat Jan 26 23:20:24 EST 2002 +Last updated: Sat Jan 26 23:22:17 EST 2002 Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us) The most recent version of this document can be viewed at the PostgreSQL web site, http://www.PostgreSQL.org. -A dash (-) marks changes that will appear in the upcoming 7.2 release. +A dash (-) marks changes that will appear in the upcoming 7.3 release. Bracketed items "[]" have more detailed. -RELIABILITY ------------ - -* -SELECT pg_class FROM pg_class generates strange error (Bruce) - - ENHANCEMENTS ------------ @@ -40,11 +34,9 @@ REPORTING * Allow elog() to return error codes, module name, file name, line number, not just messages (Peter E) * Add error codes (Peter E) -* -Allow international error message support (Peter E) * Change DEBUG startup tag to NOTICE; change NOTICE to output to client only if client exists (Bruce) * Show location of syntax error in query [yacc] -* -Populate backend status area and write program to dump status data (Jan) PERMISSIONS @@ -55,9 +47,6 @@ PERMISSIONS user/host/password combinations * Remove PGPASSWORD because is insecure on some OS's * Make single-user local access permissions the default (Peter E) -* -Allow single-user access without passwords using Unix socket permissions -* -Better document pg_hba.conf host-based authentication (Bruce) -* -Add MD5 to ODBC (Bruce) * Use thread-safe crypt() in libpq, if available ADMIN @@ -66,17 +55,12 @@ ADMIN * Make it easier to create a database owned by someone who can't createdb, perhaps CREATE DATABASE dbname WITH OWNER = "user" (Gavin) * Make equals sign optional in CREATE DATABASE WITH param = 'val' -* -Permission to DELETE table also allows UPDATE (Peter E) -* -Remove unused sort files on postmaster startup (Bruce) * Remove unreferenced table files and temp tables during database vacuum or postmaster startup (Bruce) -* -Remove unreferenced sort files during postmaster startup (Bruce) * Add table name mapping for numeric file names (Bruce) -* -Encrypt passwords in pg_shadow table using MD5 (Bruce, Vince) * Remove behavior of postmaster -o after making postmaster/postgres flags unique * Allow logging of query durations -* -Put sort files in their own directory (Bruce) DATA TYPES @@ -86,13 +70,10 @@ DATA TYPES * SELECT cash_out(2) crashes because of opaque * Declare typein/out functions in pg_proc with a special "C string" data type * Functions returning sets do not totally work -* -Add SQL standard function bit_length() (Peter E) -* -Make oid use unsigned int more reliably (Tom) * Change factorial to return a numeric * Add function to return compressed length of TOAST data values (Tom) * CONVERSION - o -Add conversion function from text to inet o Store binary-compatible type information in the system o Allow better handling of numeric constants, type conversion [typeconv] @@ -105,8 +86,6 @@ DATA TYPES o Support construction of array result values in expressions * BINARY DATA - o -Add non-large-object binary field (already exists -- bytea) - o -Make binary interface for TOAST columns (base64) o Improve vacuum of large objects, like /contrib/vacuumlo o Add security checking for large objects o Make file in/out interface for TOAST columns, similar to large object @@ -118,13 +97,9 @@ MULTI-LANGUAGE SUPPORT * Add NCHAR (as distinguished from ordinary varchar), * Allow LOCALE on a per-column basis, default to ASCII * Support multiple simultaneous character sets, per SQL92 -* -Reject character sequences those are not valid in their charset (Tatsuo) -* -Make functions more multi-byte aware, e.g. trim() (Tatsuo) -* -Make n of CHAR(n)/VARCHAR(n) the number of letters, not bytes (Tatsuo) * Allow setting database character set without multibyte enabled * Improve Unicode combined character handling * Optimize locale to have minimal performance impact when not used (Peter E) -* -Optimize textlength(), etc. for single-byte encodings (Tatsuo) * Add octet_length_server() and octet_length_client() (Thomas, Tatsuo) * Make octet_length_client the same as octet_length() (?) @@ -133,7 +108,6 @@ VIEWS / RULES * Automatically create rules on views so they are updateable, per SQL92 [view] * Add the functionality for WITH CHECK OPTION clause of CREATE VIEW * Allow NOTIFY in rules involving conditionals -* -Evaluate INSERT rules at end of query, rather than beginning (Jan) * Allow temporary views * Move psql backslash information into views * Allow RULE recompilation @@ -144,8 +118,6 @@ INDEXES * Allow CREATE INDEX zman_index ON test (date_trunc( 'day', zman ) datetime_ops) fails index can't store constant parameters * Order duplicate index entries by tid for faster heap lookups -* -Re-enable partial indexes -* -Prevent pg_attribute from having duplicate oids for indexes (Tom) * Allow inherited tables to inherit index, UNIQUE constraint, and primary key, foreign key [inheritance] * UNIQUE INDEX on base column not honored on inserts from inherited table @@ -163,35 +135,21 @@ INDEXES * Use index to restrict rows returned by multi-key index when used with non-consecutive keys or OR clauses, so fewer heap accesses * Be smarter about insertion of already-ordered data into btree index -* -Gather more accurate dispersion statistics using indexes (Tom) * Add deleted bit to index tuples to reduce heap access * Prevent index uniqueness checks when UPDATE does not modifying column * Add bitmap indexes [performance] * Improve handling of index scans for NULL * Allow SELECT * FROM tab WHERE int2col = 4 to use int2col index, int8, float4, numeric/decimal too [optimizer] -* -Use indexes with CIDR '<<' (contains) operator * Improve concurrency in GIST * Add FILLFACTOR to index creation -SYSTEM TABLES - -* -Add unique indexes to pg_shadow.usename and pg_shadow.usesysid or - switch to pg_shadow.oid as user id (Tom) -* -Add unique indexes on pg_database (Tom) -* -Check all system tables and add unique indexes as needed (Tom) -* -Remove pg_listener index (Tom) -* -Remove unused pg_variable, pg_inheritproc, pg_ipl tables (Bruce) - COMMANDS * Add SIMILAR TO to allow character classes, 'pg_[a-c]%' * Add BETWEEN ASYMMETRIC/SYMMETRIC -* -Allow LOCK TABLE tab1, tab2, tab3 so all tables locked in unison * Remove LIMIT #,# and force use LIMIT and OFFSET clauses in 7.3 (Bruce) * Allow LIMIT/OFFSET to use expressions -* -Allow GRANT/REVOKE to handle multiple user/group names (Vince) -* -Allow CREATEUSER/CREATEDB ordering in CREATE/ALTER USER (Vince) * Disallow TRUNCATE on tables that are involved in referential constraints * Add OR REPLACE clauses to non-FUNCTION object creation * CREATE TABLE AS can not determine column lengths from expressions [atttypmod] @@ -206,7 +164,6 @@ COMMANDS o Add ALTER TABLE DROP COLUMN feature [drop] (Bruce) o Add ALTER FUNCTION o Add ALTER TABLE DROP non-CHECK CONSTRAINT - o -Add ALTER TABLE DROP CHECK CONSTRAINT (Christopher Kings-Lynne) o ALTER TABLE ADD PRIMARY KEY (Christopher Kings-Lynne) o ALTER TABLE ADD UNIQUE (Christopher Kings-Lynne) o ALTER TABLE ADD COLUMN column SERIAL doesn't create sequence @@ -218,7 +175,6 @@ COMMANDS o cluster all tables at once o prevent lose of indexes, permissions, inheritance (Bruce) o Automatically maintain clustering on a table - o -Keep statistics about clustering (Tom) [optimizer] * COPY o Allow specification of column names @@ -246,8 +202,6 @@ COMMANDS * SHOW/SET o Add SHOW command to display locks - o -Add SHOW command to show all settings - o -Add a global RESET command for use with connection pooling o Add SET or BEGIN timeout parameter to cancel query o Add SET REAL_FORMAT and SET DOUBLE_PRECISION_FORMAT using printf args o Remove SET KSQO option now that OR processing is improved (Tom) @@ -265,26 +219,20 @@ COMMANDS CLIENTS -* -Make NULL's come out at the beginning or end depending on the - ORDER BY direction (Tom) * Have pg_dump use LEFT OUTER JOIN in multi-table SELECTs or multiple SELECTS to avoid bad system catalog entries * Have pg_dump -C dump database location and encoding information * Allow psql \d to show foreign keys * Allow psql \d to show temporary table structure * Add XML interface: psql, pg_dump, COPY, separate server (?) -* -Fix libpq to properly handle socket failures under native MS Win32 * Add config file check for $ODBCINI, $HOME/.odbc.ini, installpath/etc/odbc.ini * JDBC o Comprehensive test suite. This may be available already. o Updateable resultSet (must be done in backend code) - o -Improved DatabaseMetaData [java] o JDBC-standard BLOB support o Error Codes (pending backend implementation) - o -Support for binary data/bytea o Support both 'make' and 'ant' - o -Add MD5 capability o Fix LargeObject API to handle OIDs as unsigned ints o Implement cancel() method on Statement o Use cursors implicitly to avoid large results (see setCursorName()) @@ -293,17 +241,13 @@ CLIENTS * ECPG o Implement set descriptor, using descriptor o Make casts work in variable initializations - o -Allow variable to specify the connection name - o -Fix variable handling in EXEC SQL AT statement o Implement SQLDA - o -Allow SELECT of array of strings into a auto-sized variable o Solve cardinality > 1 for input descriptors / variables o Understand structure definitions outside a declare section o sqlwarn[6] should be 'W' if the PRECISION or SCALE value specified o Improve error handling o Allow :var[:index] or :var[] as cvariable for an array var o Add a semantic check level, e.g. check if a table really exists - o -Remove space_or_nl and line_end from pgc.l o Fix nested C comments o Add SQLSTATE o fix handling of DB attributes that are arrays @@ -311,14 +255,11 @@ CLIENTS REFERENTIAL INTEGRITY * Add MATCH PARTIAL referential integrity [foreign] -* -Check that primary key exists at foreign key definition time * Add deferred trigger queue file (Jan) * Allow oid to act as a foreign key * Implement dirty reads and use them in RI triggers * Make triggers refer to columns by number, not name * Enforce referential integrity for system tables -* -INSERT & UPDATE/DELETE in transaction of primary key fails with - deferredTriggerGetPreviousEvent or "change violation" * Allow user to control trigger firing order * Change foreign key constraint for array -> element to mean element in array @@ -343,7 +284,6 @@ TRANSACTIONS * Allow autocommit so always in a transaction block * Overhaul bufmgr/lockmgr/transaction manager * Allow savepoints / nested transactions [transactions] -* -Handle transaction rollover (Tom) [transactions] EXOTIC FEATURES @@ -381,8 +321,6 @@ VACUUM * Improve speed with indexes (perhaps recreate index instead) [vacuum] * Reduce lock time by moving tuples with read lock, then write lock and truncate table [vacuum] -* -Make ANALYZE a separate command (Tom) -* -Allow ANALYZE to ESTIMATE based on certain random percentage of rows (Tom) * Add LAZY VACUUM (Vadim) [performance] LOCKING @@ -392,7 +330,6 @@ LOCKING from distributted.net, http://www1.distributed.net/source, in client/common/cpucheck.cpp * Research use of sched_yield() for spinlock acquisition failure -* -Improve spinlock code [performance] (Tom) STARTUP TIME @@ -436,24 +373,16 @@ OPTIMIZER/EXECUTOR MISCELLANEOUS -* -Allow compression of log and meta data (Tom) * Do async I/O for faster random read-ahead of data * Get faster regex() code from Henry Spencer when it is available * Use mmap() rather than SYSV shared memory or to write WAL files (?) [mmap] -* -Allow GUC configuration of maximum number of open files (Tom) -* -Improve statistics storage in pg_class [performance] (Tom) -* -Read pg_hba.conf only on postmaster startup or SIGHUP (Bruce) SOURCE CODE ----------- * Add use of 'const' for variables in source tree -* -Convert remaining fprintf(stderr,...)/perror() to elog() (Peter E) * Fix problems with libpq non-blocking/async code [async] -* -Merge global and template BKI files (Tom) -* -Fix username/password length limits in all areas, e.g. pg_passwd -* -Remove compile-time upper limit on number of backends (MAXBACKENDS) (Tom) * Make sure all block numbers are unsigned to increase maximum table size * Use BlockNumber rather than int where appropriate * Merge LockMethodCtl and LockMethodTable into one shared structure (Bruce) @@ -465,8 +394,6 @@ SOURCE CODE * Remove warnings created by -Wcast-align * Move platform-specific ps status display info from ps_status.c to ports * Allow ps status display to work on Solaris/SVr4-based systems -* -Decide on spelling of indexes/indices (Peter E) -* -Add mention of VACUUM, log rotation to Administrator's Guide (Tom, Bruce) * Make one version of simple_prompt() in code (Bruce, Tom) * Compile in syslog functionaility by default (?) * Modify regression tests to prevent failures do to minor numeric rounding