Commit Graph

2310 Commits

Author SHA1 Message Date
Bruce Momjian
ecc5db57d5 Add:
>
> 	o Have CONSTRAINT cname NOT NULL preserve the contraint name
>
> 	  Right now pg_attribute.attnotnull records the NOT NULL status
> 	  of the column, but does not record the contraint name
>
2008-03-06 03:18:19 +00:00
Bruce Momjian
fca7bcbb64 Break out referential integrity and server-side languages into separate
TODO categories.
2008-03-06 03:15:52 +00:00
Bruce Momjian
4309a7dd99 Add URL for:
* Add support for SQL-standard GENERATED/IDENTITY columns

>   http://archives.postgresql.org/pgsql-hackers/2008-02/msg00604.php
2008-03-05 16:07:21 +00:00
Bruce Momjian
af79f03bdd Add URL for:
* Add SQL:2003 WITH RECURSIVE (hierarchical) queries to SELECT

>   http://archives.postgresql.org/pgsql-hackers/2008-02/msg00642.php
>
2008-03-05 16:02:31 +00:00
Bruce Momjian
fd598416fc Add:
>
> 	o Allow COPY FROM to create index entries in bulk
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-02/msg00811.php
>
2008-03-05 15:56:11 +00:00
Bruce Momjian
2c63d8405b Update pg_dump item:
< 	  produce a single dump output file.
> 	  produce a single dump output file.  It also would require
> 	  several sessions to share the same snapshot.
2008-03-04 14:38:38 +00:00
Bruce Momjian
60c93d3976 Remove:
<
< 	o To better utilize resources, restore data, primary keys, and
<  	  indexes for a single table before restoring the next table
<
< 	  Hopefully this will allow the CPU-I/O load to be more uniform
< 	  for simultaneous restores.  The idea is to start data restores
< 	  for several objects, and once the first object is done, to move
< 	  on to its primary keys and indexes.  Over time, simultaneous
< 	  data loads and index builds will be running.
2008-03-04 02:48:22 +00:00
Bruce Momjian
66504d763f Add URL for:
o Allow pg_restore to utilize multiple CPUs and I/O channels by
          restoring multiple objects simultaneously

> 	  http://archives.postgresql.org/pgsql-hackers/2008-02/msg00963.php
2008-03-04 01:38:37 +00:00
Bruce Momjian
a273d393b7 Add ideas for concurrent pg_dump and pg_restore:
< * pg_dump
> * pg_dump / pg_restore
> 	o Allow pg_dump to utilize multiple CPUs and I/O channels by dumping
> 	  multiple objects simultaneously
>
> 	  The difficulty with this is getting multiple dump processes to
> 	  produce a single dump output file.
> 	  http://archives.postgresql.org/pgsql-hackers/2008-02/msg00205.php
>
> 	o Allow pg_restore to utilize multiple CPUs and I/O channels by
>           restoring multiple objects simultaneously
>
> 	  This might require a pg_restore flag to indicate how many
> 	  simultaneous operations should be performed.  Only pg_dump's
> 	  -Fc format has the necessary dependency information.
>
> 	o To better utilize resources, restore data, primary keys, and
>  	  indexes for a single table before restoring the next table
>
> 	  Hopefully this will allow the CPU-I/O load to be more uniform
> 	  for simultaneous restores.  The idea is to start data restores
> 	  for several objects, and once the first object is done, to move
> 	  on to its primary keys and indexes.  Over time, simultaneous
> 	  data loads and index builds will be running.
>
> 	o To better utilize resources, allow pg_restore to check foreign
> 	  keys simultaneously, where possible
> 	o Allow pg_restore to create all indexes of a table
> 	  concurrently, via a single heap scan
>
> 	  This requires a pg_dump -Fc file because that format contains
>           the required dependency information.
> 	  http://archives.postgresql.org/pgsql-general/2007-05/msg01274.php
>
> 	o Allow pg_restore to load different parts of the COPY data
> 	  simultaneously
<   single heap scan, and have a restore of a pg_dump somehow use it
>   single heap scan, and have pg_restore use it
<   http://archives.postgresql.org/pgsql-general/2007-05/msg01274.php
2008-03-04 01:33:32 +00:00
Bruce Momjian
a17772c7fb Add:
> * Allow INSERT ... DELETE ... RETURNING, namely allow the DELETE ...
>   RETURNING to supply values to the INSERT
>   http://archives.postgresql.org/pgsql-hackers/2008-02/thrd2.php#00979
2008-03-03 21:26:09 +00:00
Bruce Momjian
ca470198a4 Add another URL for:
o Consider using a ring buffer for COPY FROM
<
< http://archives.postgresql.org/pgsql-hackers/2008-02/msg01080.php
> 	  http://archives.postgresql.org/pgsql-hackers/2008-02/msg01080.php
2008-03-03 21:00:35 +00:00
Bruce Momjian
efa67833bb Add:
>
> * Allow the UUID type to accept non-standard formats
>
>   http://archives.postgresql.org/pgsql-hackers/2008-02/msg01214.php
2008-03-03 19:03:44 +00:00
Bruce Momjian
7740991d52 Add:
> * Speed WAL recovery by allowing more than one page to be prefetched
>
>   This involves having a separate process that can be told which pages
>   the recovery process will need in the near future.
>   http://archives.postgresql.org/pgsql-hackers/2008-02/msg01279.php
>
2008-03-03 18:45:24 +00:00
Bruce Momjian
ceb567c1c1 Add URL's for sequence discussions:
>
>   http://archives.postgresql.org/pgsql-hackers/2008-03/msg00008.php
>
< 	o %Have ALTER TABLE RENAME rename SERIAL sequence names
> 	o Have ALTER TABLE RENAME rename SERIAL sequence names
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-03/msg00008.php
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-03/msg00008.php
2008-03-03 15:06:55 +00:00
Bruce Momjian
4db0d87c9d Update wording:
< * Add Oracle-style packages  (Pavel)
> * Add features of Oracle-style packages  (Pavel)
2008-02-29 14:56:50 +00:00
Bruce Momjian
ee7a6770f6 Move item as done:
<
> * -Allow AS in "SELECT col AS label" to be optional in certain cases
>
< * Allow AS in "SELECT col AS label" to be optional (not wanted)
2008-02-16 23:27:34 +00:00
Bruce Momjian
ea3db8f79d Update item:
< * Improve deadlock detection when deleting items from shared buffers
> * Improve deadlock detection when a page cleaning lock conflicts
>   with a shared buffer that is pinned
2008-02-01 02:41:10 +00:00
Bruce Momjian
55986a5eb8 Add:
> * Improve deadlock detection when deleting items from shared buffers
>
>   http://archives.postgresql.org/pgsql-bugs/2008-01/msg00138.php
>   http://archives.postgresql.org/pgsql-hackers/2008-01/msg00873.php
>   http://archives.postgresql.org/pgsql-committers/2008-01/msg00365.php
2008-01-31 15:05:09 +00:00
Bruce Momjian
65b39ec347 Update wording:
< * Add anonymous transactions
> * Add autonomous transactions
2008-01-29 16:13:09 +00:00
Bruce Momjian
1567133511 Add item:
> * Add anonymous transactions
>
>   http://archives.postgresql.org/pgsql-hackers/2008-01/msg00893.php
>
2008-01-29 16:11:19 +00:00
Bruce Momjian
522f362975 Remove duplicat item:
< 	  o Allow the PITR process to be debugged and data examined
2008-01-29 16:09:28 +00:00
Peter Eisentraut
79a323ab49 Change /contrib to contrib for consistency. 2008-01-24 06:23:33 +00:00
Bruce Momjian
1272ac82b6 Add:
>
> * Add the ability to automatically create materialized views
>
>   Right now materialized views require the user to create triggers on the
>   main table to keep the summary table current.  SQL syntax should be able
>   to manager the triggers and summary table automatically.  A more
>   sophisticated implementation would automatically retrieve from the
>   summary table when the main table is referenced, if possible.
>
2008-01-14 22:14:30 +00:00
Bruce Momjian
f3e3f2e158 Add:
> * Add ability to trigger on TRUNCATE
>
>   http://archives.postgresql.org/pgsql-sql/2008-01/msg00050.php
2008-01-11 16:49:27 +00:00
Bruce Momjian
88a79c1d61 Add URL for:
* Allow AS in "SELECT col AS label" to be optional (not wanted)

>   http://archives.postgresql.org/pgsql-hackers/2003-04/msg00436.php
2008-01-04 15:58:27 +00:00
Bruce Momjian
8af31d56f4 Add:
> * Allow multiple identical NOTIFY events to always be communicated to the
>   client, rather than sent as a single notification to the listener
2008-01-03 18:47:44 +00:00
Bruce Momjian
a225bf05e0 Update TODO list based on 8.3 completed items:
< * Allow major upgrades without dump/reload, perhaps using pg_upgrade
<   [pg_upgrade]
< * Check for unreferenced table files created by transactions that were
<   in-progress when the server terminated abruptly
<
<   http://archives.postgresql.org/pgsql-patches/2006-06/msg00096.php
<
> * Check for unreferenced table files created by transactions that were
>   in-progress when the server terminated abruptly
>
>   http://archives.postgresql.org/pgsql-patches/2006-06/msg00096.php
>
< * Support table partitioning that allows a single table to be stored
<   in subtables that are partitioned based on the primary key or a WHERE
<   clause
<   creation of rules for INSERT/UPDATE/DELETE, and constraints for
<   rapid partition selection.  Options could include range and hash
>   creation of triggers or rules for INSERT/UPDATE/DELETE, and constraints
>   for rapid partition selection.  Options could include range and hash
<
< * Improve replication solutions
<
< 	o Load balancing
<
< 	  You can use any of the master/slave replication servers to use a
< 	  standby server for data warehousing. To allow read/write queries to
< 	  multiple servers, you need multi-master replication like pgcluster.
<
< 	o Allow replication over unreliable or non-persistent links
<
<
< 	o Mark change-on-restart-only values in postgresql.conf
< 	  All objects in the default database tablespace must have default
< 	  tablespace specifications. This is because new databases are
< 	  created by copying directories. If you mix default tablespace
< 	  tables and tablespace-specified tables in the same directory,
< 	  creating a new database from such a mixed directory would create a
< 	  new database with tables that had incorrect explicit tablespaces.
< 	  To fix this would require modifying pg_class in the newly copied
< 	  database, which we don't currently do.
> 	  Currently all objects in the default database tablespace must
> 	  have default tablespace specifications. This is because new
> 	  databases are created by copying directories. If you mix default
> 	  tablespace tables and tablespace-specified tables in the same
> 	  directory, creating a new database from such a mixed directory
> 	  would create a new database with tables that had incorrect
> 	  explicit tablespaces.  To fix this would require modifying
> 	  pg_class in the newly copied database, which we don't currently
> 	  do.
<
< 	  o Allow recovery.conf to allow the same syntax as
> 	  o Allow recovery.conf to support the same syntax as
< * Allow user-defined types to specify a type modifier at table creation
<   time
< * Allow all data types to cast to and from TEXT
<
<   http://archives.postgresql.org/pgsql-hackers/2007-04/msg00017.php
<
<
< 		o Add support for year-month syntax, INTERVAL '50-6' YEAR TO MONTH
< 		o Interpret INTERVAL '1 year' MONTH as CAST (INTERVAL '1 year' AS
< 		  INTERVAL MONTH), and this should return '12 months'
> 		o Add support for year-month syntax, INTERVAL '50-6' YEAR
> 		  TO MONTH
> 		o Interpret INTERVAL '1 year' MONTH as CAST (INTERVAL '1
> 		  year' AS INTERVAL MONTH), and this should return '12 months'
< 	* Allow MONEY to be cast to/from other numeric data types
> 	* Allow MONEY to be easily cast to/from other numeric data types
>
< * Allow functions to have a schema search path specified at creation time
< * Fix cases where invalid byte encodings are accepted by the database,
<   but throw an error on SELECT
<
<   http://archives.postgresql.org/pgsql-hackers/2007-03/msg00767.php
< * Improve logging of prepared statements recovered during startup
> * Improve logging of prepared transactions recovered during startup
< * Make standard_conforming_strings the default in 8.4?
> * Make standard_conforming_strings the default in 8.5?
< * Allow the count returned by SELECT, etc to be to represent as an int64
> * Allow the count returned by SELECT, etc to be represented as an int64
< 	o Use more reliable method for CREATE DATABASE to get a consistent
< 	  copy of db?
< 	o Fix transaction restriction checks for CREATE DATABASE and
< 	  other commands
<
< 	  http://archives.postgresql.org/pgsql-hackers/2007-01/msg00133.php
< 	  currently allowed.
> 	  currently allowed.  This currently is done if the table is
> 	  created inside the same transaction block as the COPY because
> 	  no other backends can see the table.
< 	o Add SET PATH for schemas?
<
< 	  This is basically the same as SET search_path.
< 	o Enforce referential integrity for system tables
< 		o Add Oracle-style packages  (Pavel)
<
< 		  A package would be a schema with session-local variables,
< 		  public/private functions, and initialization functions.  It
< 		  is also possible to implement these capabilities
< 		  in all schemas and not use a separate "packages"
< 		  syntax at all.
<
< 		  http://archives.postgresql.org/pgsql-hackers/2006-08/msg00384.php
<
< 		o Add single-step debugging of functions
< 		o Allow RETURN to return row or record functions
<
< 		  http://archives.postgresql.org/pgsql-patches/2005-11/msg00045.php
< 		  http://archives.postgresql.org/pgsql-patches/2006-08/msg00397.php
< 		  http://archives.postgresql.org/pgsql-hackers/2006-09/msg00388.php
<
< 		o Fix problems with RETURN NEXT on tables with
< 		  dropped/added columns after function creation
<
< 		  http://archives.postgresql.org/pgsql-patches/2006-02/msg00165.php
<
< * Make consistent use of long/short command options --- pg_ctl needs
<   long ones, pg_config doesn't have short ones, postgres doesn't have
<   enough long ones, etc.
<
<
<
< 	o Consider parsing the -c string into individual queries so each
< 	  is run in its own transaction
<
< 	  http://archives.postgresql.org/pgsql-hackers/2007-01/msg00291.php
<
<
< 	o Remove unnecessary function pointer abstractions in pg_dump source
< 	  code
> 	o Remove unnecessary function pointer abstractions in pg_dump source
> 	  code
<
<
< 	o Fix SSL retry to avoid useless repeated connection attempts and
< 	  ensuing misleading error messages
>
<
<   This is difficult because it requires datatype-specific knowledge.
<
< * Improve commit_delay handling to reduce fsync()
< * %Add an option to sync() before fsync()'ing checkpoint files
>
< * Reduce lock time during VACUUM FULL by moving tuples with read lock,
<   then write lock and truncate table
<
<   Moved tuples are invisible to other backends so they don't require a
<   write lock. However, the read lock promotion to write lock could lead
<   to deadlock situations.
<
< * Prevent long-lived temporary tables from causing frozen-xid advancement
<    starvation
<
<    The problem is that autovacuum cannot vacuum them to set frozen xids;
<    only the session that created them can do that.
<
<
<
< 	o Use free-space map information to guide refilling
< 	o Consider logging activity either to the logs or a system view
> 	  The problem is that autovacuum cannot vacuum them to set frozen xids;
> 	  only the session that created them can do that.
< * Add connection pooling
<
<   It is unclear if this should be done inside the backend code or done
<   by something external like pgpool. The passing of file descriptors to
<   existing backends is one of the difficulties with a backend approach.
<
< * Consider reducing memory used for shared buffer reference count
<
<   http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php
<
< * %Remove memory/file descriptor freeing before ereport(ERROR)
< * %Promote debug_query_string into a server-side function current_query()
< * Allow ecpg to work with MSVC and BCC
< * Add xpath_array() to /contrib/xml2 to return results as an array
< * Allow building in directories containing spaces
<
<   This is probably not possible because 'gmake' and other compiler tools
<   do not fully support quoting of paths with spaces.
<
< * Fix sgmltools so PDFs can be generated with bookmarks
< * Split out libpq pgpass and environment documentation sections to make
<   it easier for non-developers to find
< * Use strlcpy() rather than our StrNCpy() macro
<
<   http://archives.postgresql.org/pgsql-hackers/2006-09/msg02108.php
<
< 	o Re-enable timezone output on log_line_prefix '%t' when a
< 	  shorter timezone string is available
< * Allow statements across databases or servers with transaction
<   semantics
<
<   This can be done using dblink and two-phase commit.
> * Add Oracle-style packages  (Pavel)
< * Add the features of packages
> 	  A package would be a schema with session-local variables,
> 	  public/private functions, and initialization functions.  It
> 	  is also possible to implement these capabilities
> 	  in any schema and not use a separate "packages"
> 	  syntax at all.
< 	o  Make private objects accessible only to objects in the same schema
< 	o  Allow current_schema.objname to access current schema objects
< 	o  Add session variables
< 	o  Allow nested schemas
> 	  http://archives.postgresql.org/pgsql-hackers/2006-08/msg00384.php
2007-12-30 03:22:53 +00:00
Bruce Momjian
ebb28cb3a6 Add:
>
> * Allow SSL authentication/encryption over unix domain sockets
>
>   http://archives.postgresql.org/pgsql-hackers/2007-12/msg00924.php
2007-12-30 00:42:38 +00:00
Bruce Momjian
cda598e184 Move item to proper section:
< * Experiment with multi-threaded backend better resource utilization
<
<   This would allow a single query to make use of multiple CPU's or
<   multiple I/O channels simultaneously.  One idea is to create a
<   background reader that can pre-fetch sequential and index scan
<   pages needed by other backends.  This could be expanded to allow
<   concurrent reads from multiple devices in a partitioned table.
<
> * Experiment with multi-threaded backend better resource utilization
>
>   This would allow a single query to make use of multiple CPU's or
>   multiple I/O channels simultaneously.  One idea is to create a
>   background reader that can pre-fetch sequential and index scan
>   pages needed by other backends.  This could be expanded to allow
>   concurrent reads from multiple devices in a partitioned table.
2007-12-21 21:20:27 +00:00
Bruce Momjian
1cc8fb8227 Update item description:
* Consider having the background writer update the transaction status
  hint bits before writing out the page

  Implementing this requires the background writer to have access to system
  catalogs and the transaction status log.
2007-12-17 01:40:54 +00:00
Bruce Momjian
8db9ba1873 Add random I/O URL:
>   http://archives.postgresql.org/pgsql-hackers/2007-12/msg00027.php
2007-12-12 07:06:27 +00:00
Bruce Momjian
c7e8d0f392 This item was fixed in a different way, so has been removed:
<
< * Allow free-behind capability for large sequential scans to avoid
<   kernel cache spoiling
<
<   Posix_fadvise() can control both sequential/random file caching and
<   free-behind behavior, but it is unclear how the setting affects other
<   backends that also have the file open, and the feature is not supported
<   on all operating systems.
2007-12-12 06:59:56 +00:00
Bruce Momjian
d32f24776f Remove completed 8.3 TODO items:
< 	o -Allow commenting of variables in postgresql.conf to restore them
< 	  to defaults
< 	o -Add a GUC variable to control the tablespace for temporary objects
< 	  and sort files
< Monitoring
< ==========
<
< * -Allow server log information to be output as CSV format
< * -Add ability to monitor the use of temporary sort files
< * -Allow user-defined types to accept 'typmod' parameters
<
<   http://archives.postgresql.org/pgsql-hackers/2005-08/msg01142.php
<   http://archives.postgresql.org/pgsql-hackers/2005-09/msg00012.php
<   http://archives.postgresql.org/pgsql-hackers/2006-08/msg00149.php
<
< * -Add Globally/Universally Unique Identifier (GUID/UUID)
<
<   http://archives.postgresql.org/pgsql-patches/2006-09/msg00209.php
<   http://archives.postgresql.org/pgsql-general/2007-01/msg00853.php
<
< * -Support a data type with specific enumerated values (ENUM)
< 	o -Add support for arrays of complex types
< 	o -Make 64-bit version of the MONEY data type
< * -Add ISO day of week format 'ID' to to_char() where Monday = 1
< * -Add a field 'isoyear' to extract(), based on the ISO week
< * -Add RESET SESSION command to reset all session state
< 	o -Make CLUSTER preserve recently-dead tuples per MVCC requirements
< 	o -Add more logical syntax CLUSTER table USING index;
< 	  support current syntax for backward compatibility
< 	o -Allow UPDATE/DELETE WHERE CURRENT OF cursor
< 		o -Add support for MOVE cursors
< 		o -Allow PL/PythonU to return boolean rather than 1/0
< 	o -Allow psql \pset boolean variables to set to fixed values, rather
< 	  than toggle
< 	o -Add -f to pg_dumpall
< Dependency Checking
< ===================
<
< * -Flush cached query plans when the dependent objects change or
<   when new ANALYZE statistics are available
< * -Track dependencies in function bodies and recompile/invalidate
< * -Invalidate prepared queries, like INSERT, when the table definition
<   is altered
<
< * -Allow use of indexes to search for NULLs
< * -Allow the creation of indexes with mixed ascending/descending
<   specifiers
< * -Reduce checkpoint performance degredation by forcing data to disk
<   more evenly
< * -Allow sequential scans to take advantage of other concurrent
<   sequential scans, also called "Synchronised Scanning"
< * -Consider shrinking expired tuples to just their headers
< * -Allow heap reuse of UPDATEd rows if no indexed columns are changed,
<   and old and new versions are on the same heap page
< * -Reduce XID consumption of read-only queries
< 	o -Turn on by default
< 	o -Allow multiple vacuums so large tables do not starve small
< 	  tables
< * -Allow the pg_xlog directory location to be specified during initdb
<   with a symlink back to the /data location
< * -Allow buffered WAL writes and fsync
< * -Allow ORDER BY ... LIMIT # to select high/low value without sort or
<   index using a sequential scan for highest/lowest values
< * -Merge xmin/xmax/cmin/cmax back into three header fields
< 	o -Support a smaller header for short variable-length fields
< * -Move NAMEDATALEN from postgres_ext.h to pg_config_manual.h
< * -Fix problem with excessive logging during SSL disconnection
<
<   http://archives.postgresql.org/pgsql-bugs/2006-12/msg00122.php
<   http://archives.postgresql.org/pgsql-bugs/2007-05/msg00065.php
<
< 	o -Add long file support for binary pg_dump output
2007-12-07 17:52:15 +00:00
Bruce Momjian
91e95588af Add:
< * -Make 64-bit version of the MONEY data type
< * Add locale-aware MONEY type, and support multiple currencies
<
<   http://archives.postgresql.org/pgsql-general/2005-08/msg01432.php
<   http://archives.postgresql.org/pgsql-hackers/2007-03/msg01181.php
<
< * MONEY dumps in a locale-specific format making it difficult to
<   restore to a system with a different locale
>
> * MONEY data type
>
> 	o -Make 64-bit version of the MONEY data type
> 	* Add locale-aware MONEY type, and support multiple currencies
>
> 	  http://archives.postgresql.org/pgsql-general/2005-08/msg01432.php
> 	  http://archives.postgresql.org/pgsql-hackers/2007-03/msg01181.php
>
> 	* MONEY dumps in a locale-specific format making it difficult to
> 	  restore to a system with a different locale
> 	* Allow MONEY to be cast to/from other numeric data types
2007-11-26 23:31:09 +00:00
Bruce Momjian
ba2b2a2c4e Update text:
< * Prevent long-lived temporary tables from causing frozen-Xid advancement
> * Prevent long-lived temporary tables from causing frozen-xid advancement
>
>    The problem is that autovacuum cannot vacuum them to set frozen xids;
>    only the session that created them can do that.
>
>
>
2007-11-23 16:37:55 +00:00
Bruce Momjian
5276950874 Update COMMENT item:
< 	o Prevent COMMENT ON dbname from issuing a warning when loading
< 	  into a database with a different name, perhaps using COMMENT ON
< 	  CURRENT DATABASE
> 	o Change pg_dump so that a comment on the dumped database is
> 	  applied to the loaded database, even if the database has a
> 	  different name.  This will require new backend syntax, perhaps
> 	  COMMENT ON CURRENT DATABASE.
2007-11-20 00:18:46 +00:00
Bruce Momjian
d29e9725a7 Update wording:
< 	o Allow COMMENT ON dbname to work when loading into a database
< 	  with a different name, perhaps using COMMENT ON CURRENT
<           DATABASE
> 	o Prevent COMMENT ON dbname from issuing a warning when loading
> 	  into a database with a different name, perhaps using COMMENT ON
> 	  CURRENT DATABASE
2007-11-19 23:48:46 +00:00
Bruce Momjian
f59f8aedd8 Add suggested syntax for COMMENT ON DATABASE:
< 	  with a different name
> 	  with a different name, perhaps using COMMENT ON CURRENT
>           DATABASE
>
2007-11-19 19:27:03 +00:00
Bruce Momjian
5e996e4a76 Add:
> 	o Allow COMMENT ON dbname to work when loading into a database
> 	  with a different name
2007-11-19 18:42:11 +00:00
Bruce Momjian
f0cd76fcc4 Add:
> * Prevent long-lived temporary tables from causing frozen-Xid advancement
>    starvation
2007-10-31 20:12:44 +00:00
Bruce Momjian
f7c6cb0be8 Add:
> * MONEY dumps in a locale-specific format making it difficult to
>   restore to a system with a different locale
2007-10-09 02:31:40 +00:00
Bruce Momjian
7121cc9021 Add:
> 	o Have ALTER SEQUENCE RENAME rename the sequence name stored
> 	  in the sequence table
>
> 	  http://archives.postgresql.org/pgsql-bugs/2007-09/msg00092.php
> 	  http://archives.postgresql.org/pgsql-bugs/2007-10/msg00007.php
>
2007-10-08 18:01:17 +00:00
Bruce Momjian
ae0b90f223 Remove:
< * SQL*Net listener that makes PostgreSQL appear as an Oracle database
<   to clients
2007-09-28 21:32:29 +00:00
Bruce Momjian
10e1b9df5c Add:
> * Implement Boyer-Moore searching in strpos()
>
>   http://archives.postgresql.org/pgsql-patches/2007-08/msg00012.php
2007-09-26 08:47:43 +00:00
Bruce Momjian
754838caa3 Done:
> * -Consider shrinking expired tuples to just their headers
> * -Allow heap reuse of UPDATEd rows if no indexed columns are changed,
>   and old and new versions are on the same heap page

Not needed anymore:

< * Reuse index tuples that point to heap tuples that are not visible to
<   anyone?
2007-09-20 18:54:19 +00:00
Bruce Momjian
c16ffbc677 Add:
>
> 	o Prevent long-lived temporary tables from causing frozen-xid
> 	  advancement starvation
>
> 	  http://archives.postgresql.org/pgsql-general/2007-06/msg01645.php
2007-09-14 19:02:46 +00:00
Bruce Momjian
dc8a8a0463 Add:
>
> * Make it possible to use RETURNING together with conditional DO INSTEAD
>   rules, such as for partitioning setups
>
>   http://archives.postgresql.org/pgsql-hackers/2007-09/msg00577.php
2007-09-14 18:50:48 +00:00
Bruce Momjian
85e79a4a83 Add Hash thread URL:
>   http://archives.postgresql.org/pgsql-hackers/2007-09/msg00051.php
2007-09-07 19:07:58 +00:00
Bruce Momjian
190df8a4cf Done:
< * Reduce XID consumption of read-only queries
<
<    http://archives.postgresql.org/pgsql-hackers/2007-08/msg00516.php
<
<
> * -Reduce XID consumption of read-only queries
2007-09-05 21:58:47 +00:00
Bruce Momjian
56cbd29328 Please ignore. Fresh checkout to see if this fixes it. 2007-08-28 03:09:01 +00:00
Bruce Momjian
97a6d34ab1 CVS commit test, ignore. 2007-08-28 03:05:31 +00:00
Bruce Momjian
76534c61b3 Update TODO with lost change, mostly completed items and whitespace
corrections.  Not sure why these were not in CVS.  Researching.
2007-08-28 03:00:36 +00:00
Bruce Momjian
c441e26ee8 Done:
< * Allow buffered WAL writes and fsync
2007-08-01 23:13:31 +00:00
Bruce Momjian
27d074923d Add:
>
> 	o Allow GLOBAL temporary tables to exist as empty by default in
> 	  all sessions
>
> 	  http://archives.postgresql.org/pgsql-hackers/2007-07/msg00006.php
>
2007-07-18 00:16:21 +00:00
Bruce Momjian
74fbe9ccd1 Add:
> * Allow multiple indexes to be created concurrently, ideally via a
>   single heap scan, and have a restore of a pg_dump somehow use it
>
>   http://archives.postgresql.org/pgsql-general/2007-05/msg01274.php

Small blank line additions.
2007-07-17 00:07:54 +00:00
Bruce Momjian
5b67de17ee Remove, per Magnus:
< 	o Check WSACancelBlockingCall() for interrupts [win32intr]
2007-07-08 00:41:11 +00:00
Bruce Momjian
700eabbe69 Done:
> * -Reduce checkpoint performance degredation by forcing data to disk
2007-06-28 21:55:00 +00:00
Bruce Momjian
7ced811d45 Update item:
< * Allow EXPLAIN output to be more easily processed by scripts
> * Allow EXPLAIN output to be more easily processed by scripts, perhaps XML
2007-06-13 21:38:00 +00:00
Bruce Momjian
5f2bda15eb Done:
< 	o Allow UPDATE/DELETE WHERE CURRENT OF cursor
<
< 	  This requires using the row ctid to map cursor rows back to the
< 	  original heap row. This become more complicated if WITH HOLD cursors
< 	  are to be supported because WITH HOLD cursors have a copy of the row
< 	  and no FOR UPDATE lock.
< 	  http://archives.postgresql.org/pgsql-hackers/2007-01/msg01014.php
<
> 	o -Allow UPDATE/DELETE WHERE CURRENT OF cursor
2007-06-11 01:51:50 +00:00
Bruce Momjian
a3e3389913 Done:
< * Allow sequential scans to take advantage of other concurrent
> * -Allow sequential scans to take advantage of other concurrent
<
<   One possible implementation is to start sequential scans from the lowest
<   numbered buffer in the shared cache, and when reaching the end wrap
<   around to the beginning, rather than always starting sequential scans
<   at the start of the table.
<
<   http://archives.postgresql.org/pgsql-patches/2006-12/msg00076.php
<   http://archives.postgresql.org/pgsql-hackers/2006-12/msg00408.php
<   http://archives.postgresql.org/pgsql-hackers/2006-12/msg00784.php
<   http://archives.postgresql.org/pgsql-hackers/2007-03/msg00415.php
<
2007-06-08 18:45:22 +00:00
Bruce Momjian
55477d742e Remove description for:
o -Add a GUC variable to control the tablespace for temporary objects
          and sort files
<
< 	  It could start with a random tablespace from a supplied list and
< 	  cycle through the list.
<
2007-06-03 18:49:28 +00:00
Bruce Momjian
4e023373d0 Re-add TODO and clarify it is for the kernel cache:
< * Allow free-behind capability for large sequential scans, perhaps using
<   posix_fadvise()
> * Allow free-behind capability for large sequential scans to avoid
>   kernel cache spoiling
2007-06-02 11:28:01 +00:00
Bruce Momjian
ededa6dfc8 TODO item not needed anymore now that the buffer cache is
scan-resistant:

<
< * Allow free-behind capability for large sequential scans, perhaps using
<   posix_fadvise()
<
<   Posix_fadvise() can control both sequential/random file caching and
<   free-behind behavior, but it is unclear how the setting affects other
<   backends that also have the file open, and the feature is not supported
<   on all operating systems.
2007-06-02 02:46:38 +00:00
Bruce Momjian
41ef1c0f32 Add URL for:
o Research self-referential UPDATEs that see inconsistent row versions
          in read-committed mode
<
> 	  http://archives.postgresql.org/pgsql-hackers/2007-06/msg00016.php
2007-06-01 18:41:55 +00:00
Bruce Momjian
4fbdcc174e Update wording:
o Research self-referential UPDATEs that see inconsistent row versions
          in read-committed mode


http://archives.postgresql.org/pgsql-hackers/2007-05/msg00507.php
2007-06-01 18:40:42 +00:00
Bruce Momjian
9b89c13ab5 Update:
< * Consider allowing 64-bit integers to be passed by value on 64-bit
<   platforms
> * Consider allowing 64-bit integers and floats to be passed by value on
>   64-bit platforms
>
>   Also change 32-bit floats (float4) to be passed by value at the same
>   time.
>
2007-05-30 20:26:06 +00:00
Bruce Momjian
0a6f2ee84d Fix wording:
< * Consider allowing 64-bit integers to be passed by reference on 64-bit
> * Consider allowing 64-bit integers to be passed by value on 64-bit
2007-05-30 20:02:41 +00:00
Bruce Momjian
8a73ec138e Add:
>
> * Consider allowing 64-bit integers to be passed by reference on 64-bit
>   platforms
2007-05-30 20:00:35 +00:00
Bruce Momjian
85df43f341 Add URL for:
* Improve speed with indexes

  For large table adjustments during VACUUM FULL, it is faster to cluster
  or reindex rather than update the index.  Also, index updates can bloat
  the index.
2007-05-30 19:07:20 +00:00
Bruce Momjian
e031844eac Update wording:
< * Fix self-referential UPDATEs seeing inconsistent row versions in
> * Fix self-referential UPDATEs that see inconsistent row versions in
2007-05-28 23:56:29 +00:00
Bruce Momjian
4c75abde53 Add:
>
> * Fix self-referential UPDATEs seeing inconsistent row versions in
>   read-committed mode
>
>   http://archives.postgresql.org/pgsql-hackers/2007-05/msg00507.php
2007-05-28 23:56:00 +00:00
Bruce Momjian
f22967ee38 Done:
< * Fix problem with excessive logging during SSL disconnection
> * -Fix problem with excessive logging during SSL disconnection
2007-05-18 01:22:09 +00:00
Bruce Momjian
16b5254318 dded to TODO:
>
> * Support scoped IPv6 addresses
>
>   http://archives.postgresql.org/pgsql-bugs/2007-05/msg00111.php
2007-05-17 23:42:33 +00:00
Bruce Momjian
3f186a2034 Add URL for:
* Implement the SQL standard mechanism whereby REVOKE ROLE revokes only
  the privilege granted by the invoking role, and not those granted
  by other roles
>
>   http://archives.postgresql.org/pgsql-bugs/2007-05/msg00010.php
2007-05-17 22:53:23 +00:00
Bruce Momjian
347534e85a Add, per Alvaro:
>
> * Implement the SQL standard mechanism whereby REVOKE ROLE revokes only
>   the privilege granted by the invoking role, and not those granted
>   by other roles
2007-05-17 22:44:11 +00:00
Bruce Momjian
a11d4b8bea Add:
>
> * Fix problem with excessive logging during SSL disconnection
>
>   http://archives.postgresql.org/pgsql-bugs/2006-12/msg00122.php
>   http://archives.postgresql.org/pgsql-bugs/2007-05/msg00065.php
2007-05-17 22:42:54 +00:00
Bruce Momjian
3288d5a989 Add URLs for:
* Add support for SQL-standard GENERATED/IDENTITY columns

>   http://archives.postgresql.org/pgsql-hackers/2007-05/msg00344.php
>   http://archives.postgresql.org/pgsql-patches/2007-05/msg00076.php
2007-05-15 02:36:43 +00:00
Bruce Momjian
c59cb9d325 Mark as done, add URL for other item:
< 	o Add support for arrays of complex types
>
> 	  http://archives.postgresql.org/pgsql-patches/2007-05/msg00114.php
>
> 	o -Add support for arrays of complex types
2007-05-13 11:22:04 +00:00
Bruce Momjian
9083e91339 Add:
> * Have configure choose integer datetimes by default
>
>   http://archives.postgresql.org/pgsql-patches/2007-05/msg00046.php
2007-05-12 22:10:40 +00:00
Bruce Momjian
c01b4d50e0 Add:
> 		o Allow data to be passed in native language formats, rather
> 		  than only text
> 		  http://archives.postgresql.org/pgsql-hackers/2007-05/msg00289.php
2007-05-12 22:06:42 +00:00
Bruce Momjian
4835df303d Done:
< Last updated:		Sat May  5 10:47:39 EDT 2007
> Last updated:		Sat May  5 11:39:57 EDT 2007
< * Flush cached query plans when the dependent objects change,
<   when the cardinality of parameters changes dramatically, or
> * -Flush cached query plans when the dependent objects change or
<
<   A more complex solution would be to save multiple plans for different
<   cardinality and use the appropriate plan based on the EXECUTE values.
<
< * Track dependencies in function bodies and recompile/invalidate
<
<   This is particularly important for references to temporary tables
<   in PL/PgSQL because PL/PgSQL caches query plans.  The only workaround
<   in PL/PgSQL is to use EXECUTE.  One complexity is that a function
<   might itself drop and recreate dependent tables, causing it to
<   invalidate its own query plan.
<
< * Invalidate prepared queries, like INSERT, when the table definition
> * -Track dependencies in function bodies and recompile/invalidate
> * -Invalidate prepared queries, like INSERT, when the table definition
2007-05-05 15:40:01 +00:00
Bruce Momjian
dc9d3947e6 Move item:
< * Invalidate prepared queries, like INSERT, when the table definition
<   is altered
>
> * Invalidate prepared queries, like INSERT, when the table definition
>   is altered
2007-05-05 14:47:45 +00:00
Bruce Momjian
b573fec82b Done:
> 	o -Allow multiple vacuums so large tables do not starve small
2007-05-05 14:44:15 +00:00
Bruce Momjian
71f8127bc6 Done:
> * -Allow ORDER BY ... LIMIT # to select high/low value without sort or
<
<   Right now, if no index exists, ORDER BY ... LIMIT # requires we sort
<   all values to return the high/low value.  Instead The idea is to do a
<   sequential scan to find the high/low value, thus avoiding the sort.
<   MIN/MAX already does this, but not for LIMIT > 1.
<
2007-05-05 03:14:40 +00:00
Bruce Momjian
b1a1ea49da Update to 8.4:
< * Make standard_conforming_strings the default in 8.3?
> * Make standard_conforming_strings the default in 8.4?
2007-04-29 07:17:12 +00:00
Bruce Momjian
5e95fc0c8b Pl/pgsql MOVE done:
< 		o Add support for MOVE and SCROLL cursors
<
< 		  PL/pgSQL cursors should support the same syntax as
< 		  backend cursors.
<
> 		o -Add support for MOVE cursors
> 		o Add support for SCROLL cursors
2007-04-29 06:48:11 +00:00
Bruce Momjian
3644ba5f9b Done:
> 	o -Allow commenting of variables in postgresql.conf to restore them
2007-04-22 13:28:43 +00:00
Bruce Momjian
9e53f83c75 Item not done, per Pavel:
< 		o -Add MOVE
< 		o -Add support for SCROLL cursors
> 		o Add support for MOVE and SCROLL cursors
2007-04-18 13:31:17 +00:00
Bruce Momjian
f30a72dcdb Update TODO for plpgsql cursors:
< 		o -Add support for WITH HOLD and SCROLL cursors
> 		o -Add support for SCROLL cursors
> 		o Add support for WITH HOLD cursors
2007-04-17 23:54:32 +00:00
Bruce Momjian
097a200d89 Also done for PL/pgSQL:
< 		o Add support for WITH HOLD and SCROLL cursors
> 		o -Add support for WITH HOLD and SCROLL cursors
2007-04-17 21:22:51 +00:00
Bruce Momjian
f672b875ae Done:
< 		o Add MOVE
> 		o -Add MOVE
2007-04-17 21:22:13 +00:00
Bruce Momjian
e6facb3b95 Add warning about TODO item:
<   Currently all schemas are owned by the super-user because they are
<   copied from the template1 database.
>   Currently all schemas are owned by the super-user because they are copied
>   from the template1 database.  However, since all objects are inherited
>   from the template database, it is not clear that setting schemas to the db
>   owner is correct.
2007-04-17 20:50:34 +00:00
Bruce Momjian
6c2c6682f6 Not easy, per Alvaro:
< * %Set proper permissions on non-system schemas during db creation
> * Set proper permissions on non-system schemas during db creation
2007-04-17 20:47:55 +00:00
Bruce Momjian
1b75d634a6 Update TODO:
< 	o Consider reducing on-disk varlena length from four to two
< 	  because a heap row cannot be more than 64k in length
> 	o Consider reducing on-disk varlena length from four bytes to
> 	  two because a heap row cannot be more than 64k in length
2007-04-13 23:23:22 +00:00
Bruce Momjian
c0e42e9325 Done:
> * -Add RESET SESSION command to reset all session state
2007-04-12 19:38:26 +00:00
Bruce Momjian
e6e47f278d Update text, per Greg Stark:
< 	o Allow single-byte header storage for arrays
> 	o Allow single-byte header storage for array elements
2007-04-11 21:02:31 +00:00
Bruce Momjian
f7424b0d4b Add:
> 	o Allow single-byte header storage for arrays
2007-04-10 01:33:39 +00:00
Bruce Momjian
170fa82b1a Add:
> 	o Have WITH CONSTRAINTS also create constraint indexes
> 	  http://archives.postgresql.org/pgsql-patches/2007-04/msg00149.php
2007-04-10 01:22:12 +00:00
Bruce Momjian
485d9ca96f Add URL for:
* Simplify ability to create partitioned tables
>   http://archives.postgresql.org/pgsql-hackers/2007-04/msg00151.php
2007-04-09 21:18:29 +00:00
Bruce Momjian
bbed5ba914 Done:
> 	o -Make CLUSTER preserve recently-dead tuples per MVCC requirements
2007-04-08 02:17:02 +00:00