1. 05 11月, 2004 5 次提交
    • B
      Add items: · 6c3083af
      Bruce Momjian 提交于
      < * Add transaction_timestamp(), statement_timestamp(), clock_timestamp() functionality
      > * Add transaction_timestamp(), statement_timestamp(), clock_timestamp()
      >   functionality
      278c279
      <   one column
      >   one column or expression indexes, perhaps using per=index statistics
      846a848
      > * Remove kerberos4 from source tree?
      6c3083af
    • B
      Add: · e505a70c
      Bruce Momjian 提交于
      >
      > * Add fillfactor to control reserved free space during index creation
      e505a70c
    • B
      Add: · b976e924
      Bruce Momjian 提交于
      > * Allow accurate statistics to be collected on indexes with more than
      >   one column
      b976e924
    • B
      Updates from Simon Riggs: · 2c793d1c
      Bruce Momjian 提交于
      <   that can spam more than one table.
      >   that can span more than one table.
      239c239
      <   rather than just col1
      >   rather than just col1; also called skip-scanning.
      641c641,642
      < * Add free-behind capability for large sequential scans [fadvise]
      > * Allow free-behind capability for large sequential scans, perhaps using
      >   posix_fadvise() [fadvise]
      2c793d1c
    • B
      Update bitmap index entries: · c894e7e8
      Bruce Momjian 提交于
      < * Allow the creation of bitmap indexes which can be quickly combined
      <   with other bitmap indexes
      > * Allow non-bitmap indexes to be combined by creating bitmaps in memory
      259,261c258,259
      <   combined.  Such indexes could be more compact if there are few unique
      <   value.  Also, perhaps they can be lossy requiring a scan of the heap page
      <   to find matching rows.
      >   combined.  They can index by tid or can be lossy requiring a scan of the
      >   heap page to find matching rows.
      263c261,262
      < * Allow non-bitmap indexes to be combined
      > * Allow the creation of on-disk bitmap indexes which can be quickly
      >   combined with other bitmap indexes
      265,266c264
      <   Do lookups on non-bitmap indexes and create bitmaps in memory that can be
      <   combined with other indexes.
      >   Such indexes could be more compact if there are few unique value.
      c894e7e8
  2. 04 11月, 2004 5 次提交
    • B
      Update: · 4fbdfbff
      Bruce Momjian 提交于
      < * Use bitmaps to combine existing indexes [performance]
      > * Allow the creation of bitmap indexes which can be quickly combined
      >   with other bitmap indexes
      255,257c256,266
      <   Bitmap indexes allow single indexed columns to be combined to
      <   dynamically create a composite index to match a specific query. Each
      <   index is a bitmap, and the bitmaps are AND'ed or OR'ed to be combined.
      >   Bitmap indexes index single columns that can be combined with other bitmap
      >   indexes to dynamically create a composite index to match a specific query.
      >   Each index is a bitmap, and the bitmaps are bitwise AND'ed or OR'ed to be
      >   combined.  Such indexes could be more compact if there are few unique
      >   value.  Also, perhaps they can be lossy requiring a scan of the heap page
      >   to find matching rows.
      >
      > * Allow non-bitmap indexes to be combined
      >
      >   Do lookups on non-bitmap indexes and create bitmaps in memory that can be
      >   combined with other indexes.
      4fbdfbff
    • B
      Honor TMPDIR. · c21214f1
      Bruce Momjian 提交于
      Add the script name to the tmp directory name.
      
      Move trap up now that the dir is more unique.
      c21214f1
    • B
      Update tablespace temp usage item: · a8098996
      Bruce Momjian 提交于
      <   This perhaps should use a round-robin allocation system where several
      <   tablespaces are used in a cycle.  The cycle pointer should be global.
      >   It could start with a random tablespace from a supplied list and cycle
      >   through the list.
      a8098996
    • B
      Add idea on auto-cluster: · f6b4707f
      Bruce Momjian 提交于
      < 	  store heap rows in hashed groups.
      > 	  store heap rows in hashed groups, perhaps using a user-supplied
      > 	  hash function.
      f6b4707f
    • B
      Add idea on auto-cluster: · aafbf33d
      Bruce Momjian 提交于
      < 	  automatically access the heap data too.
      > 	  automatically access the heap data too.  A third idea would be to
      > 	  store heap rows in hashed groups.
      aafbf33d
  3. 02 11月, 2004 1 次提交
    • B
      Update: · 745bb960
      Bruce Momjian 提交于
      < * Add a GUC variable to control the tablespace for temporary objects
      > * Add a GUC variable to control the tablespace for temporary objects and
      >   sort files
      >
      >   This perhaps should use a round-robin allocation system where several
      >   tablespaces are used in a cycle.  The cycle pointer should be global.
      >
      745bb960
  4. 01 11月, 2004 2 次提交
    • B
      Update: · a21c00d7
      Bruce Momjian 提交于
      < * Add a GUC variable to control temporary and TOAST tablespace usage
      > * Add a GUC variable to control the tablespace for temporary objects
      a21c00d7
    • B
      Add: · a9b6a5ca
      Bruce Momjian 提交于
      > * Add a GUC variable to control temporary and TOAST tablespace usage
      a9b6a5ca
  5. 27 10月, 2004 1 次提交
    • B
      Add: · 3b6cc1ad
      Bruce Momjian 提交于
      > * Allow TIMESTAMP WITH TIME ZONE to store the original timezone
      >   information, either by name or offset from UTC
      3b6cc1ad
  6. 19 10月, 2004 2 次提交
    • B
      Force rebuild. · a9a2c394
      Bruce Momjian 提交于
      a9a2c394
    • B
      · e444d9a9
      Bruce Momjian 提交于
      Improve indentation of sublists:
      
      < 	The proper solution to this will probably the use of a master/slave
      < 	replication solution like Sloney and a connection pooling tool like
      < 	pgpool.
      > 	  The proper solution to this will probably the use of a master/slave
      > 	  replication solution like Sloney and a connection pooling tool like
      > 	  pgpool.
      114,116c114,116
      < 	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.
      > 	  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.
      166,167c166,167
      < 	Currently large objects entries do not have owners. Permissions can
      < 	only be set at the pg_largeobject table level.
      > 	  Currently large objects entries do not have owners. Permissions can
      > 	  only be set at the pg_largeobject table level.
      173c173
      < 	This requires the TOAST column to be stored EXTERNAL.
      > 	  This requires the TOAST column to be stored EXTERNAL.
      359,360c359,360
      < 	One complexity is whether moving a schema should move all existing
      < 	schema objects or just define the location for future object creation.
      > 	  One complexity is whether moving a schema should move all existing
      > 	  schema objects or just define the location for future object creation.
      364,365c364,365
      < 	Currently non-global system tables must be in the default database
      < 	schema. Global system tables can never be moved.
      > 	  Currently non-global system tables must be in the default database
      > 	  schema. Global system tables can never be moved.
      371,375c371,375
      < 	This might require some background daemon to maintain clustering
      < 	during periods of low usage. It might also require tables to be only
      < 	paritally filled for easier reorganization.  Another idea would
      <         be to create a merged heap/index data file so an index lookup would
      < 	automatically access the heap data too.
      > 	  This might require some background daemon to maintain clustering
      > 	  during periods of low usage. It might also require tables to be only
      > 	  paritally filled for easier reorganization.  Another idea would
      >           be to create a merged heap/index data file so an index lookup would
      > 	  automatically access the heap data too.
      379,380c379,380
      < 	To do this, determine the ideal cluster index for each system
      < 	table and set the cluster setting during initdb.
      > 	  To do this, determine the ideal cluster index for each system
      > 	  table and set the cluster setting during initdb.
      385,386c385,386
      < 	This requires the use of a savepoint before each COPY line is
      < 	processed, with ROLLBACK on COPY failure.
      > 	  This requires the use of a savepoint before each COPY line is
      > 	  processed, with ROLLBACK on COPY failure.
      395,398c395,398
      < 	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.
      > 	  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.
      405,406c405,406
      < 	Because WITH HOLD cursors exist outside transactions, this allows
      < 	them to be listed so they can be closed.
      > 	  Because WITH HOLD cursors exist outside transactions, this allows
      > 	  them to be listed so they can be closed.
      413,415c413,415
      < 	This is useful for returning the auto-generated key for an INSERT.
      < 	One complication is how to handle rules that run as part of
      < 	the insert.
      > 	  This is useful for returning the auto-generated key for an INSERT.
      > 	  One complication is how to handle rules that run as part of
      > 	  the insert.
      422c422
      < 	This is basically the same as SET search_path.
      > 	  This is basically the same as SET search_path.
      426,427c426,427
      < 	This requires a checking function to be called after the server
      < 	configuration file is read.
      > 	  This requires a checking function to be called after the server
      > 	  configuration file is read.
      432c432
      < 	Currently only constants are supported.
      > 	  Currently only constants are supported.
      438,439c438,439
      < 	This requires the cached PL/PgSQL byte code to be invalidated when
      < 	an object referenced in the function is changed.
      > 	  This requires the cached PL/PgSQL byte code to be invalidated when
      > 	  an object referenced in the function is changed.
      512,513c512,513
      < 	Document differences between ecpg and the SQL standard and
      < 	information about the Informix-compatibility module.
      > 	  Document differences between ecpg and the SQL standard and
      > 	  information about the Informix-compatibility module.
      e444d9a9
  7. 18 10月, 2004 2 次提交
    • B
      Update wording: · f9259bd5
      Bruce Momjian 提交于
      * Allow a database in tablespace t1 with tables created in tablespace t2
        to be used as a template for a new database created with default
        tablespace t2
      
        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.
      f9259bd5
    • B
      Add: · b303739c
      Bruce Momjian 提交于
      >
      > * Allow a database in tablespace t1 with tables created in tablespace t2
      >   to be used as a template for a new database created with default
      >   tablespace t2
      >
      >   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.
      b303739c
  8. 15 10月, 2004 2 次提交
    • B
      Add: · 19d97fb3
      Bruce Momjian 提交于
      > * Allow libpq to access SQLSTATE so pg_ctl can test for connection failure
      >
      >   This would be used for checking if the server is up.
      >
      19d97fb3
    • B
      Add: · 130972b4
      Bruce Momjian 提交于
      <
      > * Prevent inet cast to cidr if the unmasked bits are not zero, or
      >   zero bits
      130972b4
  9. 13 10月, 2004 1 次提交
    • B
      Add: · b8c06a66
      Bruce Momjian 提交于
      > * Add RESET CONNECTION command to reset all session state
      329a331,334
      >   This would include resetting of all variables (RESET ALL), dropping of
      >   all temporary tables, removal of any NOTIFYs, etc.  This could be used
      >   for connection pooling.  We could also change RESET ALL to have this
      >   functionality.
      b8c06a66
  10. 09 10月, 2004 3 次提交
    • B
      Add: · b3723aeb
      Bruce Momjian 提交于
      >
      811a813,814
      > 	o Re-enable timezone output on log_line_prefix '%t' when a
      > 	  shorter timezone string is available
      b3723aeb
    • B
      Add newline. · d157f4c2
      Bruce Momjian 提交于
      d157f4c2
    • B
      Move Win32 TODO items to main TODO list: · 1c24bf90
      Bruce Momjian 提交于
      <
      > * Win32
      > 	o Remove per-backend parameter file and move into shared memory?
      > 	o Remove configure.in check for link failure when cause is found
      > 	o Remove readdir() errno patch when runtime/mingwex/dirent.c rev
      > 	  1.4 is released
      > 	o Remove psql newline patch when we find out why mingw outputs an
      > 	  extra newline
      > 	o Allow psql to use readline once non-US code pages work with
      > 	  backslashes
      1c24bf90
  11. 08 10月, 2004 2 次提交
    • B
      Pull comment down into its own paragraph. · 050beacc
      Bruce Momjian 提交于
      050beacc
    • B
      Add: · c4c34289
      Bruce Momjian 提交于
      * Consider parallel processing a single query
      
        This would involve using multiple threads or processes to do optimization,
        sorting, or execution of single query.  The major advantage of such a
        feature would be to allow multiple CPUs to work together to process a
        single query.
      c4c34289
  12. 27 9月, 2004 2 次提交
    • B
      Add: · 7ceec70f
      Bruce Momjian 提交于
      >
      > * Consider automatic caching of queries at various levels:
      > 	o Parsed query tree
      > 	o Query execute plan
      > 	o Query results
      7ceec70f
    • B
      Remove completed items: · 08e9f697
      Bruce Momjian 提交于
      < Last updated:		Sat Sep 25 21:33:44 EDT 2004
      > Last updated:		Mon Sep 27 10:15:31 EDT 2004
      13,19d12
      < Remove items before beta?
      <
      < Urgent
      < ======
      <
      < * -Point-in-time data recovery using backup and write-ahead log
      < * -Create native Win32 port
      25d17
      < * -Incremental backups
      28d19
      < * -Allow configuration files to be specified in a different directory
      32,34d22
      < * -Add the concept of dataspaces/tablespaces (Gavin)
      < * -Allow logging of only data definition(DDL), or DDL and modification statements
      < * -Allow log lines to include session-level information, like database and user
      54d41
      < * -Allow external interfaces to extend the GUC variable set
      126d112
      < * -Change factorial to return a numeric (Gavin)
      141,142d126
      < * -Allow pg_dump to dump sequences using NO_MAXVALUE and NO_MINVALUE
      < * -Prevent whole-row references from leaking memory, e.g. SELECT COUNT(tab.*)
      147d130
      < * -Make LENGTH() of CHAR() not count trailing spaces
      150d132
      < * -Support composite types as table columns
      198,200d179
      < * -Prevent mismatch of frontend/backend encodings from converting bytea
      <   data from being interpreted as encoded strings
      < * -Fix upper()/lower() to work for multibyte encodings
      217d195
      < * -Order duplicate index entries on creation by ctid for faster heap lookups
      242d219
      < * -Be smarter about insertion of already-ordered data into btree index
      265,266d241
      < * -Allow SELECT * FROM tab WHERE int2col = 4 to use int2col index, int8,
      <   float4, numeric/decimal too
      282d256
      < * -Allow command blocks to ignore certain types of errors
      302,303d275
      < * -Allow savepoints / nested transactions (Alvaro)
      < * -Use nested transactions to prevent syntax errors from aborting a transaction
      306,307d277
      < * -Prevent COMMENT ON DATABASE from using a database name
      < * -Add NO WAIT LOCKs
      325,326d294
      < * -COMMENT ON [ CAST | CONVERSION | OPERATOR CLASS | LARGE OBJECT | LANGUAGE ]
      <   (Christopher)
      334d301
      < * -Allow more ISOLATION LEVELS to be accepted
      347d313
      < * -Add GUC setting to make created tables default to WITHOUT OIDS
      365,369d330
      < 	o -ALTER TABLE ADD COLUMN does not honor DEFAULT and non-CHECK CONSTRAINT
      < 	o -ALTER TABLE ADD COLUMN column DEFAULT should fill existing
      < 	  rows with DEFAULT value
      < 	o -ALTER TABLE ADD COLUMN column SERIAL doesn't create sequence because
      <           of the item above
      371,373d331
      < 	o -Allow ALTER TABLE to modify column lengths and change to binary
      < 	  compatible types
      < 	o -Add ALTER DATABASE ... OWNER TO newowner
      390,393d347
      < 	o -Add ALTER DOMAIN, AGGREGATE, CONVERSION ... OWNER TO
      < 	o -Add ALTER SEQUENCE ... OWNER TO
      < 	o -Add ALTER INDEX that works just like ALTER TABLE already does
      < 	  on an index
      404d357
      < 	o -Add ALTER TABLE table SET WITHOUT CLUSTER (Christopher)
      411d363
      < 	o -Allow dump/load of CSV format
      464d415
      < 	o -Allow Java server-side programming
      473d423
      < 	o -Allow PL/pgSQL parameters to be specified by name and type during definition
      493,495d442
      < * -Allow psql \du to show users, and add \dg for groups
      < * -Have psql \dn show only visible temp schemas using current_schemas()
      < * -Have psql '\i ~/<tab><tab>' actually load files it displays from home dir
      509,511d455
      < 	o -Allow pg_dump to dump CREATE CONVERSION (Christopher)
      < 	o -Make pg_restore continue after errors, so it acts more like pg_dump
      < 	  scripts
      545d488
      < 	o -Implement SET DESCRIPTOR
      592,596d534
      < * -Have AFTER triggers execute after the appropriate SQL statement in a
      <   function, not at the end of the function
      < * -Print table names with constraint names in error messages, or make constraint
      <   names unique within a schema
      < * -Issue NOTICE if foreign key data requires costly test to match primary key
      614,615d551
      < * -Use dependency information to dump data in proper order
      < * -Have pg_dump -c clear the database using dependency information
      694,695d629
      < * -Provide automatic running of vacuum in the background in backend
      <   rather than in /contrib (Matthew)
      828d761
      < * -Use background process to write dirty shared buffers to disk
      843d775
      < * -Change representation of whole-tuple parameters to functions
      850,852d781
      < * -Add checks for fclose() failure (Tom)
      < * -Change CVS ID to PostgreSQL
      < * -Exit postmaster if postgresql.conf can not be opened
      08e9f697
  13. 26 9月, 2004 1 次提交
  14. 21 9月, 2004 1 次提交
  15. 14 9月, 2004 1 次提交
    • B
      Mark as done: · 1459d8c4
      Bruce Momjian 提交于
      < * Point-in-time data recovery using backup and write-ahead log,
      < * Create native Win32 port, http://momjian.postgresql.org/main/writings/pgsql/project/win32.html
      > * -Point-in-time data recovery using backup and write-ahead log
      > * -Create native Win32 port
      470c470
      <     o Fix PL/pgSQL RENAME to work on variables other than OLD/NEW
      > 	o Fix PL/pgSQL RENAME to work on variables other than OLD/NEW
      1459d8c4
  16. 11 9月, 2004 2 次提交
    • B
      Done: · 8a54a518
      Bruce Momjian 提交于
      < * Have AFTER triggers execute after the appropriate SQL statement in a
      > * -Have AFTER triggers execute after the appropriate SQL statement in a
      8a54a518
    • B
      Add: · 856d1faa
      Bruce Momjian 提交于
      > * Make row-wise comparisons work per SQL spec
      >
      856d1faa
  17. 10 9月, 2004 1 次提交
    • B
      Add: · 594be448
      Bruce Momjian 提交于
      > * Remove Win32 rename/unlink looping if unnecessary
      594be448
  18. 02 9月, 2004 1 次提交
    • B
      Add: · c58eb2dd
      Bruce Momjian 提交于
      > * Consider using hash buckets to do DISTINCT, rather than sorting
      >
      >   This would be beneficial when there are few distinct values.
      c58eb2dd
  19. 31 8月, 2004 1 次提交
  20. 27 8月, 2004 2 次提交
    • B
      Update wording: · ef16b4e1
      Bruce Momjian 提交于
      < 	This would require some background daemon to maintain clustering
      > 	This might require some background daemon to maintain clustering
      397,398c397,398
      < 	paritally filled for easier reorganization.  It also might require
      < 	creating a merged heap/index data file so an index lookup would
      > 	paritally filled for easier reorganization.  Another idea would
      >         be to create a merged heap/index data file so an index lookup would
      ef16b4e1
    • B
      Update: · 3bc7564c
      Bruce Momjian 提交于
      < 	This would require some background daemon to restore clustering
      > 	This would require some background daemon to maintain clustering
      397c397,399
      < 	paritally filled for easier reorganization.
      > 	paritally filled for easier reorganization.  It also might require
      > 	creating a merged heap/index data file so an index lookup would
      > 	automatically access the heap data too.
      3bc7564c
  21. 26 8月, 2004 1 次提交
    • B
      Add: · 93c3baa9
      Bruce Momjian 提交于
      > * Merge hardwired timezone names with the TZ database; allow either kind
      >   everywhere a TZ name is currently taken
      > * Allow customization of the known set of TZ names (generalize the
      >   present australian_timezones hack)
      93c3baa9
  22. 24 8月, 2004 1 次提交
    • B
      Update item: · 4359ebed
      Bruce Momjian 提交于
      < * Implement dirty reads or shared row locks and use them in RI triggers (?)
      > * Implement dirty reads or shared row locks and use them in RI triggers
      >
      >   Adding shared locks requires recording the table/rows numbers in a
      >   shared area, and this could potentially be a large amount of data.
      >   One idea is to store the table/row numbers in a separate table and set
      >   a bit on the row indicating looking in this new table is required to
      >   find any shared row locks.
      >
      4359ebed