2828* Do not allow bpchar column creation without length
2929* Select a[1] FROM test fails, it needs test.a[1]
3030* -Array index references without table name cause problems
31+ (see TODO.detail/array)
3132* Update table SET table.value = 3 fails
3233* Creating index of TIMESTAMP & RELTIME fails, or rename to DATETIME(Thomas)
3334* SELECT foo UNION SELECT foo is incorrectly simplified to SELECT foo
@@ -62,11 +63,11 @@ ENHANCEMENTS
6263
6364URGENT
6465
65- * Add referential integrity(Jan?)
66- * Add OUTER joins, left and right(Thomas, Bruce)
66+ * Add referential integrity(Jan?)(see TODO.detail/primary)
67+ * Add OUTER joins, left and right(see TODO.detail/outer)( Thomas, Bruce)
6768* Allow long tuples by chaining or auto-storing outside db (chaining,large objs)
6869* Eliminate limits on query length
69- * Fix memory leak for expressions?, aggregates?(Tom?)
70+ * Fix memory leak for expressions?, aggregates?(see TODO.detail/memory)( Tom?)
7071
7172ADMIN
7273
7677* Allow elog() to return error codes, not just messages
7778* Allow international error message support and add error codes
7879* Generate postmaster pid file and remove flock/fcntl lock code
79- * Add ability to specifiy location of lock/socket files
80+ (see TODO.detail/flock)
81+ * Add ability to specifiy location of lock/socket files (see TODO.detail/flock)
8082
8183TYPES
8284
@@ -148,7 +150,7 @@ CLIENTS
148150* Update reltuples from COPY command
149151* Allow psql \copy to allow delimiters
150152* Add a function to return the last inserted oid, for use in psql scripts
151- * Allow psql to print nulls as distinct from ""(? )
153+ * Allow psql to print nulls as distinct from ""(see TODO.detail/nulls )
152154* PQrequestCancel() be able to terminate backend waiting for lock
153155
154156EXOTIC FEATURES
@@ -165,23 +167,25 @@ MISC
165167* Create a background process for each database that runs while
166168 database is idle, finding superceeded rows, gathering stats and vacuuming
167169* Add UNIQUE capability to non-btree indexes
168- * Certain indexes will not shrink, i.e. oid indexes with many inserts
170+ *- Certain indexes will not shrink, i.e. oid indexes with many inserts
169171* Restore unused oid's on backend exit if no one else has gotten oids
170172* Have UPDATE/DELETE clean out indexes
171173* Allow WHERE restriction on ctid
172174* Allow cursors to be DECLAREd/OPENed/CLOSEed outside transactions
173175* Allow PQrequestCancel() to terminate when in waiting-for-lock state
174- * Transaction log, so re-do log can be on a separate disk by
175- with after-row images(Vadim)
176+ *- Transaction log, so re-do log can be on a separate disk by
177+ with after-row images(Vadim) (see TODO.detail/logging)
176178* Populate backend status area and write program to dump status data
177179* Make oid use unsigned int more reliably, pg_atoi()
178180* Allow subqueries in target list
179- * Put sort files, large objects in theiron directory
180- * Do autocommit so always in a transaction block
181- * Show location of syntax error in query
181+ * Put sort files, large objects in theirown directory
182+ * Do autocommit so always in a transaction block(?)
183+ * Show location of syntax error in query (see TODO.detail/yacc)
182184* Redesign the function call interface to handle NULLs better(Jan)
183185* Document/trigger/rule so changes to pg_shadow recreate pg_pwd
186+ (see TODO.detail/pg_shadow)
184187* Missing optimizer selectivities for date, r-tree, etc.
188+ (see TODO.detail/optimizer)
185189* Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup
186190* Overhaul bufmgr/lockmgr/transaction manager
187191* Add PL/Perl(Mark Hollomon)
@@ -196,8 +200,9 @@ PERFORMANCE
196200
197201FSYNC
198202
199- * Allow transaction commits with rollback with no-fsync performance
200- * Prevent fsync in SELECT-only queries
203+ * -Allow transaction commits with rollback with no-fsync performance
204+ (see TODO.detail/fsync)
205+ * -Prevent fsync in SELECT-only queries
201206
202207INDEXES
203208
@@ -207,9 +212,11 @@ INDEXES
207212 non-consecutive keys or OR clauses, so fewer heap accesses
208213* Convert function(constant) into a constant for index use
209214* Allow LIMIT ability on single-table queries that have no ORDER BY to use
210- a matching index
215+ a matching index(see TODO.detail/limit)
211216* Improve LIMIT processing by using index to limit rows processed
217+ (see TODO.detail/limit)
212218* Have optimizer take LIMIT into account when considering index scans
219+ (see TODO.detail/limit)
213220* Make index creation use psort code, because it is now faster(Vadim)
214221* Allow creation of sort temp tables > 1 Gig
215222* Create more system table indexes for faster cache lookups
@@ -220,7 +227,7 @@ INDEXES
220227
221228CACHE
222229
223- * Cache most recent query plan(s? )
230+ * Cache most recent query plan(s)(see TODO.detail/prepare )
224231* Shared catalog cache, reduce lseek()'s by caching table size in shared area
225232* elog() flushes cache, try invalidating just entries from current xact,
226233 perhaps using invalidation cache
232239* Update pg_statistic table to remove operator column
233240* Allow char() not to use variable-sized header to reduce disk size
234241* Do async I/O to do better read-ahead of data
235- * -Fix memory exhaustion when using many OR's
242+ * -Fix memory exhaustion when using many OR's(see TODO.detail/cnfify)
236243* Get faster regex() code from Henry Spencer <henry@zoo.utoronto.ca>
237244 when it is available
238245* Use mmap() rather than SYSV shared memory(?)
@@ -243,21 +250,24 @@ MISC
243250* use fmgr_info()/fmgr_faddr() instead of fmgr() calls in high-traffic
244251 places, like GROUP BY, UNIQUE, index processing, etc.
245252* improve dynamic memory allocation by introducing tuple-context memory
246- allocation
253+ allocation(see TODO.detail/memory)
247254* fix memory leak in cache code when non-existant table is referenced
248255* In WHERE tab1.x=3 AND tab1.x=tab2.y, add tab2.y=3
249256* pass atttypmod through parser in more cases(Bruce)
250257* remove duplicate type in/out functions for disk and net
251258* change VACUUM ANALYZE to use btree comparison functions, not <,=,> calls
259+ * Allow persistent backends(see TODO.detail/persistent)
260+ * Misc(see TODO.detail/performance)
252261
253262SOURCE CODE
254263-----------
255264* Add use of 'const' for varibles in source tree
256265* Fix C optimizer problem where fmgr_ptr calls return different types
257- * Add needed includes and removed unneede include files(Bruce)
266+ (see TODO.detail/alpha)
267+ * -Add needed includes and removed unneeded include files(Bruce)
258268* Make configure --enable-debug add -g on compile line
259269* Does Mariposa source contain any other bug fixes?
260- * Remove SET KSQO optionof OR processing is improved
270+ * Remove SET KSQO optionif OR processing is improved
261271
262272---------------------------------------------------------------------------
263273