Update TODO list.
This commit is contained in:
parent
b9d832f6ef
commit
142ce7939d
55
doc/TODO
55
doc/TODO
@ -1,6 +1,6 @@
|
|||||||
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
|
|||||||
|
|
||||||
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
|
|||||||
* -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
|
|||||||
* 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
|
|||||||
|
|
||||||
* 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
|
|||||||
|
|
||||||
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
|
|||||||
* 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
|
|||||||
* 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
|
|||||||
* 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
|
|||||||
* 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
|
|||||||
* 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
|
|||||||
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
|
||||||
-----------
|
-----------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user