diff options
| author | Bruce Momjian | 1996-12-26 22:15:15 +0000 |
|---|---|---|
| committer | Bruce Momjian | 1996-12-26 22:15:15 +0000 |
| commit | 8c721185271cba0c75e0de8a65432272879f57f3 (patch) | |
| tree | 52a1388fcf0c4017609e7a24f8b145fb2c5b8060 /doc/TODO | |
| parent | e8f43854acfe2f5891743f5a2dbba2b52e5d23de (diff) | |
Documentatoin update
Diffstat (limited to 'doc/TODO')
| -rw-r--r-- | doc/TODO | 221 |
1 files changed, 166 insertions, 55 deletions
@@ -1,54 +1,56 @@ ==================================================== -TODO list (FAQ) for Postgres95 +TODO list (FAQ) for PostgreSQL ==================================================== -last updated: Thu Oct 3 17:59:06 EDT 1996 +last updated: Thu Dec 26 09:03:38 EST 1996 current maintainer: Bruce Momjian (maillist@candle.pha.pa.us) The most recent version of this document can be viewed at -the postgres95 WWW site, http://www.ki.net/postgres95. +the postgreSQL WWW site, http://www.postgreSQL.org. -Dashed items(-) are being worked on or are ready for the 2.0 release. +Changes included in the 6.0 release are listed at the end of this page. + +Dashed items(-) are being worked on for the post-6.0 release. + +Developers who have claimed items are: + Bruce is Bruce Momjian<maillist@candle.pha.pa.us> + Bryan is Bryan Henderson<bryanh@giraffe.netgate.net> + Dan is Dan McGuirk <mcguirk@indirect.com> + Darren is Darren King <darrenk@insightdist.com> + Edmund is Edmund Mergl <E.Mergl@bawue.de> + Erich Stamberger <eberger@gewi.kfunigraz.ac.at> + Kurt is "Kurt J. Lidl" <lidl@va.pubnix.com> + Martin is Martin S. Utesch <utesch@aut.tu-freiberg.de> + Vadim is "Vadim B. Mikheev" <vadim@sable.krasnoyarsk.su> + Vivek is Vivek Khera <khera@kci.kciLink.com> RELIABILITY ----------- --Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup --Overhaul bufmgr/lockmgr/transaction manager -- remove -S (stable memory) option or fix memory manager --Memory leaks (hunt and destroy with tools like Purify) -- fix unitialized reads of memory -- fix array over-runs of memory writes --Fix CLUSTER --Prevent improper index creation --Change default decimal constant representation from float4 to float8 --Allow libpq to distinguish between text value '' and null -- using null bitmask returned from backend? +-Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup(Erich) +-Overhaul bufmgr/lockmgr/transaction manager(Vadim) +remove -S (stable memory) option or fix memory manager +Fix CLUSTER Fix all NULL features allow psql to print nulls meaningfully --Starting quote in insert string errors -ALTER TABLE bug - running postgress process needs to re-read table definition -Allow non-postgres users with createdb privs to destroydb's -Prevent SELECT NULL from crashing server - (error on first attempt, crash after another query) --Fix elusive btree range/non-range bug --Remove duplicate system catalog info or report mismatches Fix compile and security of Kerberos V code --Remove duplicate OIDS in system tables Dropping a table twice causes corruption, drop/create not rollback-able -Change index creation to process deleted and current rows +SUM aggregate on no rows or null value should return NULL, not zero +SELECT on two tables where zero or one table in WHERE and target + clause returns no rows +fix system to use oid index using constant without cast to oid +COUNT on VIEW always returns zero (maybe because there is no oid for views?) +SELECT ... INTO TABLE ... GROUP BY ... generates unlink error + if done three times with same INTO TABLE name (failure cleanup problem?) +CREATE VIEW requires super-user priviledge ENHANCEMENTS ------------ -Add full ANSI SQL capabilities ( a vendor has offered to help) +Add full ANSI SQL capabilities add subselects, possibility using temporary SQL functions Implement HAVING clause - Implement IN qualifier Implement EXISTS qualifier - Implement BETWEEN qualifier - add synonym of != for <> column constraints (using rules), esp. primary keys add DEFAULT, RESTRAINT, and CHECK capabilities - -add UNIQUE index capability report "Not implemented" if valid syntax is supplied add OUTER joins, left and right make VIEWs updateable where possible @@ -60,12 +62,13 @@ Add full ANSI SQL capabilities ( a vendor has offered to help) add the concept of dataspaces allow conversion type casts on select target fields Allow compression of large fields or a compressed field type -Fix the rules system +Fix the rules system(Jan?) robust making INSTEAD rules work + add CONSTRAINT Full set of text operations and functions word searches, concat, upper/lower(), max() on text, char --Replace table-level locking with row or page-level locking +Replace table-level locking with row or page-level locking(Vadim) Large objects overwriting blocks has problems there are other problems, too. @@ -75,9 +78,10 @@ Better interface for adding to pg_group Make multi-field indexes easier to create allow optimizer to effectively use parameters without accessing table Add int8 type +Add MONEY/DECIMAL type with defined precision Add table comments -Add support for tables >2G -Incorporate the PERL PG95 interface library into source tree +Add support for tables >2G, or test current version +Incorporate the PERL PG95 interface library into source tree(Edmund) Threaded version of the server or libpq Allow libpq to cancel query requests Add REGEX internationalization @@ -85,38 +89,40 @@ Add other language types for built-in functions expand to allow tcl, perl, java, generalize the function manager switch to pass function sources to interpreter engines. --Re-visit and fix vacuum -- can't vacuum large objects -- can't shrink tables, pg_time and pg_log -- allow actual compression, not just reuse on the same page -- allow vacuum to be run on one table or entire database + remove time-travel feature(Vadim) + reduce system column overhead(Vadmin) + remove pg_time table(Vadim) + allow row re-use without vacuum, maybe?(Vadim) split apart row removal function from statistics function - allow time-travel to be turned off so superceeded/deleted row are reused --Reverse meaning of HBA masks -Add hostname/user level access control rather than just hostname and user -Allow BY,ORDER BY to specify columns by number, or by non-alias table.column -Allow GROUP BY to use alias column name -Remove restriction that ORDER BY field must be in SELECT list? + can't vacuum large objects +Remove restriction that ORDER BY field must be in SELECT list(?) Allow queries about owner of datbases, tables like: SELECT u.usesysid FROM postgres.pg_user u; -DROP AGGREGATE should take in basetype as an arg +DROP AGGREGATE should take in basetype as an arg(Darren) Add word index for text fields, maybe with trigrams, i.e.: ' (cat | dog) & ! fox ' meaning text has cat or dog, but not fox Add common-sense constant type promotions --Allow uppercase agregates by lowercasing function names on input Allow readline-type or editor command editing of multi-line SQL commands Allow pg_dump to dump all databases at a site in one command --Allow restriction on who can create C functions -Allow restriction on who can create copy tables --Allow installation-configuration option to auto-add all local users Allow function result to be used in GROUP BY --Fontend COPY --Secure Authentication of local users --Idend authentication of local users +Populate backend status area and write program to dump status data +Add ALTER TABLE DROP COLUMN feature +Remove stale files upon startup(Vivek) +Add command to show privileges +Allow INSERT INTO ... SELECT to convert column types +Add syslog functionality +Allow aggregate for All types, like count(Darren) +Improve optimizer plan choice(Darren) +Add STDDEV/VARIANCE() function for standard deviation computation/variance +Add upper/lower functions +-Add table/column/function discription table indexed by oid +-make all identifiers case-insensitive(Bruce) PERFORMANCE ----------- Optimizing disjunctive queries +-Add Genetic Query Optimzation for many tables (Martin) +-Fix bushy-plans (Martin) Other optimizer bugs Is fsync use optimized? Multi-representational types, a la Illustra. For example, have a @@ -128,18 +134,123 @@ Speed up hash creation by using btree's fast sort/insert routines Cache most recent query plan(s?) Allow compression of log and meta data Allow LIKE/wildcard matches to use indexes if the wildcard character is not first +Add FILLFACTOR to index creation +Allow indexes to be used with OR clauses +-Add column optimization statistics to vacuum(Bruce) +-Change pg_attribute.attnvals name to attdispursion and change type float4 DOCUMENTATION ------------- Update usermanual source -Reduce size of regression diffs +remove time-travel in documentation(Bruce) +added features used in grammer but not in docs, like :: and CAST +add DECLARE manual pages +add EXPLAIN manual page PORTABILITY ----------- Windows NT port Mariposa project at Berkeley has a person who's working on this Win95 port, use GNU port or remove it? -Binary distributions for linux -Merge bsdi_2_1 to bsdi Merge i386_solaris and sparc_solaris into solaris Switch from PORTNAME to individual feature defines (use configure/autoconf?) +Change c.h "Index" and "bool" so they do not conflict with c++ + + +--------------------------------------------------------------------------- + + CHANGES IN 6.0 RELEASE + + +Restructured object file generation/location(Bryan, Marc) +Restructured port-specific file locations(Bryan, Marc) +Makefile restructuring(Bryan, Marc) +all functions now have prototypes that are compared against the calls +unused/uninialized variables corrected +gcc -Wall compiles cleanly with warnings only from unfixable constructs +major include file reorganization/reduction(Marc) +reduced the number of #define's, centeralized #define's +removed many os-specific #define's +fixed a few small memory leaks +removed duplicate system oid's +overhauled parser/analyze code to properly report errors and increase speed +properly report errors when INSERT ... SELECT columns did not match +properly report errors when insert column names were not correct +minor improvements to rules system +execute lowercase function names if not found with exact case +change oid constants used in code to #define names +Memory leaks (hunt and destroy with tools like Purify(Kurt) +fix unitialized reads of memory(Kurt) +fix array over-runs of memory writes(Kurt) +Change default decimal constant representation from float4 to float8(Bruce) +Allow libpq to distinguish between text value '' and null(Bruce) +Starting quote in insert string errors(Bruce) +ALTER TABLE bug - running postgress process needs to re-read table definition +Allow non-postgres users with createdb privs to destroydb's +Prevent SELECT NULL from crashing server (Bruce) +Fix elusive btree range/non-range bug(Dan) +Remove duplicate system catalog info or report mismatches(Dan) +Remove duplicate OIDS in system tables(Dan) +Prevent postmaster from being run as root +Implement IN qualifier(Bruce) +Implement BETWEEN qualifier(Bruce) +add synonym of != for <>(Bruce) +add UNIQUE index capability(Dan) +Re-visit and fix vacuum(Vadim) +speed up vacuum(Vadim) +can't shrink tables, pg_time and pg_log(Vadim & Erich) +allow actual compression, not just reuse on the same page(Vadim) +allow vacuum to be run on one table or entire database(Bruce) +Reverse meaning of HBA masks(Bryan) +Add hostname/user level access control rather than just hostname and user +Allow restriction on who can create C functions(Bryan) +Allow installation-configuration option to auto-add all local users(Bryan) +Allow restriction on who can do backend COPY(Bryan) +allow COPY from the frontend(Bryan) +Secure Authentication of local users(Bryan) +Idend authentication of local users(Bryan) +Change debug level 2 to print queries only, changed debug heading layout(Bruce) +Reduce size of regression diffs, remove timezone name difference(Bruce) +Remove compile-time parameters to enable binary distributions(Bryan) +Merge bsdi_2_1 to bsdi(Bruce) +pg_dump(Bruce) + allow dump of oid's + create indexes after tables are loaded for speed + pg_dump -d now handles NULL's properly +psql(Bruce) + fixed problem with multiple statements on one line with multiple outputs + changed command prompt for lines in query or in quotes + allow backslashed, semicolons anywhere on the line + \h and \? is now readable + \g filename now works + updated help syntax + char(3) now displays as (bp)char in \d output + return code now more accurate(Bryan?) +new config.h file(Marc, Bryan) +fix permissions on lo_export()(Bruce) +Make now stops on compile failure(Bryan) +submiting an empty query now returns empty status, not just " " query(Bruce) +several fixes for queries that crashed the backend +portability additions, including Ultrix, DG/UX, AIX, and Solaris +fix for pg_log size explosion +decoupled sparc and solaris defines(Kurt) +new options to initdb(Bryan) +allow asserts to be disabled easly from Makefile.global(Bruce) +allow "select oid,* from table" +NOTIFY fixes +PG_VERSION now set to 6.0 and used by postmaster +libpq has PQgetisnull()(Bruce) +pginterface additions for NULL values(Bruce) +fixed ALTER TABLE ... char(3) bug(Bruce) +fixed output of group acl permissions +new asserts for run-checking +name change from Postgres95 to PostgreSQL +monitor program removed +fix for hash indexes on some types like time and date +gist now included in the distrubution(Marc) +array fixes +fixes for aggregate/GROUP processing, allow 'select sum(func(x),sum(x+y) from z' +libpq++ improvements +Allow BY,ORDER BY to specify columns by number, or by non-alias table.column(Bruce) +Allow GROUP BY to use alias column name(Bruce) + |
