Commit 142ce793 authored by Bruce Momjian's avatar Bruce Momjian

Update TODO list.

parent b9d832f6
TODO list for PostgreSQL TODO list for PostgreSQL
======================== ========================
Last updated: Mon Jan 10 08:19:08 EST 2000 Last updated: Tue Jan 11 07:07:31 EST 2000
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us) Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
...@@ -18,8 +18,8 @@ RELIABILITY ...@@ -18,8 +18,8 @@ RELIABILITY
RESOURCES RESOURCES
* Elog() does not free all its memory(Jan) * -Elog() does not free all its memory
* spinlock stuck problem when elog(FATAL) and elog(ERROR) inside bufmgr * -spinlock stuck problem when elog(FATAL) and elog(ERROR) inside bufmgr
* -Recover or force failure when disk space is exhausted(Hiroshi) * -Recover or force failure when disk space is exhausted(Hiroshi)
PARSER PARSER
...@@ -33,7 +33,7 @@ PARSER ...@@ -33,7 +33,7 @@ PARSER
* -Array index references without table name cause problems [array](Tom) * -Array index references without table name cause problems [array](Tom)
* Update table SET table.value = 3 fails(SQL standard says this is OK) * Update table SET table.value = 3 fails(SQL standard says this is OK)
* Creating index of TIMESTAMP & RELTIME fails, or rename to DATETIME(Thomas) * Creating index of TIMESTAMP & RELTIME fails, or rename to DATETIME(Thomas)
* SELECT foo UNION SELECT foo is incorrectly simplified to SELECT foo * -SELECT foo UNION SELECT foo is incorrectly simplified to SELECT foo
* -INSERT ... SELECT ... GROUP BY groups by target columns not source columns(Tom) * -INSERT ... SELECT ... GROUP BY groups by target columns not source columns(Tom)
* -CREATE TABLE test (a char(5) DEFAULT text '', b int4) fails on INSERT(Tom) * -CREATE TABLE test (a char(5) DEFAULT text '', b int4) fails on INSERT(Tom)
* -UNION with LIMIT fails * -UNION with LIMIT fails
...@@ -49,13 +49,13 @@ PARSER ...@@ -49,13 +49,13 @@ PARSER
* redesign INSERT ... SELECT to have two levels of target list * redesign INSERT ... SELECT to have two levels of target list
* -select * from pg_class where oid in (0,-1) * -select * from pg_class where oid in (0,-1)
* have INTERSECT/EXCEPT prevent duplicates unless ALL is specified * have INTERSECT/EXCEPT prevent duplicates unless ALL is specified
* prevent primary key of nine columns [primary] * prevent primary key that exceeds max index columns [primary]
* -SELECT COUNT('asdf') FROM pg_class WHERE oid=12 crashes * -SELECT COUNT('asdf') FROM pg_class WHERE oid=12 crashes
* SELECT DISTINCT ON col1 col1 col2 FROM tab1 is broken [distinct] * SELECT DISTINCT ON col1 col1 col2 FROM tab1 is broken [distinct]
* -require SELECT DISTINCT target list to have all ORDER BY columns * -require SELECT DISTINCT target list to have all ORDER BY columns
* -When using aggregates + GROUP BY, no rows in should yield no rows out(Tom) * -When using aggregates + GROUP BY, no rows in should yield no rows out(Tom)
* -Allow HAVING to use comparisons that have no aggregates(Tom) * -Allow HAVING to use comparisons that have no aggregates(Tom)
* Allow COUNT(DISTINCT col) * -Allow COUNT(DISTINCT col))(TOm)
VIEWS VIEWS
...@@ -68,9 +68,9 @@ MISC ...@@ -68,9 +68,9 @@ MISC
* User who can create databases can modify pg_database table * User who can create databases can modify pg_database table
* Plpgsql does not handle quoted mixed-case identifiers * Plpgsql does not handle quoted mixed-case identifiers
* Fix btree to give a useful elog when key > 1/2 (page - overhead) * -Fix btree to give a useful elog when key > 1/2 (page - overhead)(Tom)
* -pg_dump should preserve primary key information * -pg_dump should preserve primary key information
* plpgsql regression tests fail on BSD/OS * plpgsql regression tests fails on BSD/OS
* -database names with spaces fail * -database names with spaces fail
* insert of 0.0 into DECIMAL(4,4) field fails * insert of 0.0 into DECIMAL(4,4) field fails
...@@ -79,9 +79,9 @@ ENHANCEMENTS ...@@ -79,9 +79,9 @@ ENHANCEMENTS
URGENT URGENT
* Add referential integrity(Jan?)[primary] * -Add referential integrity(Jan)[primary]
* Add OUTER joins, left and right[outer](Thomas, Bruce) * Add OUTER joins, left and right[outer](Thomas, Bruce)
* Allow long tuples by chaining or auto-storing outside db (chaining,large objs) * Allow long tuples by chaining or auto-storing outside db (TOAST)(Jan)
* -Eliminate limits on query length * -Eliminate limits on query length
* Fix memory leak for expressions[memory](Tom?) * Fix memory leak for expressions[memory](Tom?)
* -Fix memory leak for aggregates(Tom) * -Fix memory leak for aggregates(Tom)
...@@ -93,19 +93,19 @@ ADMIN ...@@ -93,19 +93,19 @@ ADMIN
* Test syslog functionality * Test syslog functionality
* Allow elog() to return error codes, not just messages * Allow elog() to return error codes, not just messages
* Allow international error message support and add error codes * Allow international error message support and add error codes
* Generate postmaster pid file and remove flock/fcntl lock code [flock] * -Generate postmaster pid file and remove flock/fcntl lock code[flock](Tatsuo)
* Add ability to specifiy location of lock/socket files [flock] * Add ability to specifiy location of lock/socket files [flock]
TYPES TYPES
* Add BIT, BIT VARYING * -Add BIT, BIT VARYING
* Nchar (as distinguished from ordinary varchar), * Nchar (as distinguished from ordinary varchar),
* Domain capability * Domain capability
* Add STDDEV/VARIANCE() function for standard deviation computation/variance * Add STDDEV/VARIANCE() function for standard deviation computation/variance
* -Allow compression of large fields or a compressed field type * -Allow compression of large fields or a compressed field type
* Large objects * Large objects
o Fix large object mapping scheme, own typeid or reltype(Peter) o Fix large object mapping scheme, own typeid or reltype(Peter)
o Allow large text type to use large objects(Peter) o -Allow large text type to use large objects(Peter)
o Not to stuff everything as files in a single directory, hash dirs o Not to stuff everything as files in a single directory, hash dirs
o Allow large object vacuuming o Allow large object vacuuming
o Tables that start with xinv confused to be large objects o Tables that start with xinv confused to be large objects
...@@ -117,7 +117,7 @@ TYPES ...@@ -117,7 +117,7 @@ TYPES
* Allow user to define char1 column * Allow user to define char1 column
* Add support for & operator * Add support for & operator
* Allow LOCALE on a per-column basis, default to ASCII * Allow LOCALE on a per-column basis, default to ASCII
* Allow LOCALE to use indexes in regular expression searches * -Allow LOCALE to use indexes in regular expression searches(Tom)
* Allow array on int8[] * Allow array on int8[]
* Allow nulls in arrays * Allow nulls in arrays
* Allow arrays to be ORDER'ed * Allow arrays to be ORDER'ed
...@@ -143,8 +143,8 @@ INDEXES ...@@ -143,8 +143,8 @@ INDEXES
* Permissions on indexes, prevent them? * Permissions on indexes, prevent them?
* Allow SQL function indexes * Allow SQL function indexes
* Add FILLFACTOR to index creation * Add FILLFACTOR to index creation
* Allow indexing of LIKE with localle character sets * -Allow indexing of LIKE with localle character sets
* Allow indexing of more than eight columns * -Allow indexing of more than eight columns
COMMANDS COMMANDS
...@@ -196,15 +196,15 @@ MISC ...@@ -196,15 +196,15 @@ MISC
* Allow cursors to be DECLAREd/OPENed/CLOSEed outside transactions * Allow cursors to be DECLAREd/OPENed/CLOSEed outside transactions
* Allow DELETE WHERE CURRENT OF cursor * Allow DELETE WHERE CURRENT OF cursor
* Allow PQrequestCancel() to terminate when in waiting-for-lock state * Allow PQrequestCancel() to terminate when in waiting-for-lock state
* -Transaction log, so re-do log can be on a separate disk by * Transaction log, so re-do log can be on a separate disk by
with after-row images(Vadim) [logging](Vadim) with after-row images(Vadim) [logging](Vadim)(in-progress)
* Populate backend status area and write program to dump status data * Populate backend status area and write program to dump status data
* Make oid use unsigned int more reliably, pg_atoi() * Make oid use unsigned int more reliably, pg_atoi()
* -Allow subqueries in target list * -Allow subqueries in target list(Tom)
* Put sort files, large objects in their own directory * Put sort files, large objects in their own directory
* Do autocommit so always in a transaction block(?) * Do autocommit so always in a transaction block(?)
* Show location of syntax error in query [yacc] * Show location of syntax error in query [yacc]
* Redesign the function call interface to handle NULLs better [function] * Redesign the function call interface to handle NULLs better[function](TOm)
* -Document/trigger/rule so changes to pg_shadow recreate pg_pwd [pg_shadow] * -Document/trigger/rule so changes to pg_shadow recreate pg_pwd [pg_shadow]
* Missing optimizer selectivities for date, r-tree, etc. [optimizer] * Missing optimizer selectivities for date, r-tree, etc. [optimizer]
* -Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup * -Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup
...@@ -237,9 +237,10 @@ INDEXES ...@@ -237,9 +237,10 @@ INDEXES
* Have optimizer take LIMIT into account when considering index scans [limit] * Have optimizer take LIMIT into account when considering index scans [limit]
* -Make index creation use psort code, because it is now faster(Vadim) * -Make index creation use psort code, because it is now faster(Vadim)
* -Allow creation of sort temp tables > 1 Gig * -Allow creation of sort temp tables > 1 Gig
* Create more system table indexes for faster cache lookups * -Create more system table indexes for faster cache lookups
* fix indexscan() so it does leak memory by not requiring caller to free * -fix indexscan() so it does leak memory by not requiring caller to
* Improve _bt_binsrch() to handle equal keys better, remove _bt_firsteq()(Tom) free(Tom)
* -Improve _bt_binsrch() to handle equal keys better, remove _bt_firsteq()(Tom)
* Allow SELECT * FROM tab WHERE int2col = 4 use int2col index, int8, * Allow SELECT * FROM tab WHERE int2col = 4 use int2col index, int8,
float4, numeric/decimal too [optimizer] float4, numeric/decimal too [optimizer]
* -Allow optimizer to prefer plans that match ORDER BY(Tom) * -Allow optimizer to prefer plans that match ORDER BY(Tom)
...@@ -271,12 +272,12 @@ MISC ...@@ -271,12 +272,12 @@ MISC
places, like GROUP BY, UNIQUE, index processing, etc. places, like GROUP BY, UNIQUE, index processing, etc.
* improve dynamic memory allocation by introducing tuple-context memory * improve dynamic memory allocation by introducing tuple-context memory
allocation [memory] allocation [memory]
* fix memory leak in cache code when non-existant table is referenced * -fix memory leak in cache code when non-existant table is referenced
* In WHERE tab1.x=3 AND tab1.x=tab2.y, add tab2.y=3 In WHERE tab1.x=3 AND tab1.x=tab2.y, add tab2.y=3
* pass atttypmod through parser in more cases [atttypmod] * pass atttypmod through parser in more cases [atttypmod]
* remove duplicate type in/out functions for disk and net * -remove duplicate type in/out functions for disk and net
* Allow persistent backends [persistent] * Allow persistent backends [persistent]
* Misc [performance] * others [performance]
SOURCE CODE SOURCE CODE
----------- -----------
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment