1. 27 9月, 2005 1 次提交
    • B
      Novice: · 240c8e7e
      Bruce Momjian 提交于
      < * Add options to pg_config to show the share_dir, sysconfdir,
      > * +Add options to pg_config to show the share_dir, sysconfdir,
      240c8e7e
  2. 26 9月, 2005 2 次提交
    • B
      Done: · 3ff1dc50
      Bruce Momjian 提交于
      < * Allow protocol-level EXECUTE that is actually a fetch to appear
      <   in the logs as a fetch rather than another execute
      3ff1dc50
    • B
      Add: · 88922598
      Bruce Momjian 提交于
      > * Allow protocol-level BIND parameter values to be logged
      > * Allow protocol-level EXECUTE that is actually a fetch to appear
      >   in the logs as a fetch rather than another execute
      88922598
  3. 24 9月, 2005 3 次提交
    • B
      Add: · 86044a9d
      Bruce Momjian 提交于
      > * Simplify dropping roles that have objects in several databases
      86044a9d
    • B
      Add: · 6db56cdf
      Bruce Momjian 提交于
      > 	o Allow PL/PgSQL to support WITH HOLD cursors
      6db56cdf
    • B
      Add: · bf8e5362
      Bruce Momjian 提交于
      >
      > 	o Display IN, INOUT, and OUT parameters in \df+
      >
      > 	  It probably requires psql to output newlines in the proper
      > 	  column, which is already on the TODO list.
      bf8e5362
  4. 23 9月, 2005 5 次提交
    • B
      Add: · e6bae1c3
      Bruce Momjian 提交于
      > * Add function to report the time of the most recent server reload
      e6bae1c3
    • B
      Add: · 6e85717a
      Bruce Momjian 提交于
      > * Add options to pg_config to show the share_dir, sysconfdir,
      >   pkgincludedir, and localedir
      >
      6e85717a
    • B
      Add: · c79671bd
      Bruce Momjian 提交于
      > * Allow CREATE INDEX to take an additional parameter for use with
      >   special index types
      >
      c79671bd
    • B
      Add: · c37ddf37
      Bruce Momjian 提交于
      >
      > 	  Another idea would be to allow actual SELECT queries in a COPY.
      c37ddf37
    • B
      Add: · 62da04f8
      Bruce Momjian 提交于
      >
      > 	o Allow COPY to output from views
      >
      62da04f8
  5. 21 9月, 2005 1 次提交
    • B
      Merge items: · 8d86982a
      Bruce Momjian 提交于
      <   This would be beneficial when there are few distinct values.
      >   This would be beneficial when there are few distinct values.  This is
      >   already used by GROUP BY.
      946d946
      < * Allow DISTINCT to use hashing like GROUP BY
      8d86982a
  6. 20 9月, 2005 4 次提交
    • B
      Fix typo: · a34ec0ab
      Bruce Momjian 提交于
      < * Allow WAL traffic to be steamed to another server for stand-by
      > * Allow WAL traffic to be streamed to another server for stand-by
      a34ec0ab
    • B
      Add: · 7caaf8a0
      Bruce Momjian 提交于
      > * Allow DISTINCT to use hashing like GROUP BY
      7caaf8a0
    • B
      Add: · 32f2cd3f
      Bruce Momjian 提交于
      > * Allow WAL traffic to be steamed to another server for stand-by
      >   replication
      32f2cd3f
    • B
      Remove: · 78b06948
      Bruce Momjian 提交于
      < * Research use of sched_yield() for spinlock acquisition failure
      78b06948
  7. 19 9月, 2005 1 次提交
  8. 17 9月, 2005 4 次提交
    • B
      Add: · 3743f07a
      Bruce Momjian 提交于
      >
      1032a1034
      > * Remove BeOS and QNX-specific code
      3743f07a
    • B
      Add: · e8960fc3
      Bruce Momjian 提交于
      > 	o Fix SELECT INTERVAL '1' MONTH
      e8960fc3
    • B
      Add: · d64084da
      Bruce Momjian 提交于
      <
      > * Update Bonjour to work with newer cross-platform SDK
      d64084da
    • B
      Update wording: · 0296606f
      Bruce Momjian 提交于
      <
      390d388
      <
      453c451
      < 	  removed or have its heap and index files truncated.  One
      > 	  be removed or have its heap and index files truncated.  One
      < * Use a phantom command counter for nested subtransactions to reduce
      <   per-tuple overhead
      0296606f
  9. 16 9月, 2005 1 次提交
    • B
      Add: · 3f558e3d
      Bruce Momjian 提交于
      > 	o Add single-step debugging of PL/PgSQL functions
      3f558e3d
  10. 03 9月, 2005 7 次提交
    • B
      Add idea: · b72fe49b
      Bruce Momjian 提交于
      <   cmin/cmax pair and is stored in local memory.
      >   cmin/cmax pair and is stored in local memory.  Another idea is to
      >   store both cmin and cmax only in local memory.
      b72fe49b
    • B
      Update. · 264cd5f0
      Bruce Momjian 提交于
      < 	  have its heap and index files truncated.  One issue is
      < 	  that no other backend should be able to add to the table
      < 	  at the same time, which is something that is currently
      < 	  allowed.
      > 	  removed or have its heap and index files truncated.  One
      > 	  issue is that no other backend should be able to add to
      > 	  the table at the same time, which is something that is
      > 	  currently allowed.
      264cd5f0
    • B
      Update: · ef6d5b4e
      Bruce Momjian 提交于
      > 	o Allow COPY on a newly-created table to skip WAL logging
      450a452,456
      > 	  On crash recovery, the table involved in the COPY would
      > 	  have its heap and index files truncated.  One issue is
      > 	  that no other backend should be able to add to the table
      > 	  at the same time, which is something that is currently
      > 	  allowed.
      ef6d5b4e
    • B
      Update: · f8ec875c
      Bruce Momjian 提交于
      < 	o Allow COPY into an empty table to skip WAL logging
      > 	o Allow COPY into an new table to skip WAL logging
      f8ec875c
    • B
      Add: · 5bddded6
      Bruce Momjian 提交于
      > * Use UTF8 encoding for NLS messages so all server encodings can
      >   read them properly
      <         o %Add support for Unicode
      <
      < 	  To fix this, the data needs to be converted to/from UTF16/UTF8
      <           so the Win32 wcscoll() can be used, and perhaps other functions
      < 	  like towupper().  However, UTF8 already works with normal
      < 	  locales but provides no ordering or character set classes.
      5bddded6
    • B
      Update wording: · 3bea1a35
      Bruce Momjian 提交于
      <   could only see committed rows from another transaction. However,
      >   could only see rows from another completed transaction. However,
      981c981
      <   proper visibility of the row, for example, for cursors.
      >   proper visibility of the row's cmin, for example, for cursors.
      3bea1a35
    • B
      Add: · da08559e
      Bruce Momjian 提交于
      > 	o Allow COPY into an empty table to skip WAL logging
      da08559e
  11. 02 9月, 2005 2 次提交
    • B
      Add text: · fad7e8ed
      Bruce Momjian 提交于
      * Merge xmin/xmax/cmin/cmax back into three header fields
      
        Before subtransactions, there used to be only three fields needed to
        store these four values. This was possible because only the current
        transaction looks at the cmin/cmax values. If the current transaction
        created and expired the row the fields stored where xmin (same as
        xmax), cmin, cmax, and if the transaction was expiring a row from a
        another transaction, the fields stored were xmin (cmin was not
        needed), xmax, and cmax. Such a system worked because a transaction
        could only see committed rows from another transaction. However,
        subtransactions can see rows from outer transactions, and once the
        subtransaction completes, the outer transaction continues, requiring
        the storage of all four fields. With subtransactions, an outer
        transaction can create a row, a subtransaction expire it, and when the
        subtransaction completes, the outer transaction still has to have
        proper visibility of the row, for example, for cursors.
      
        One possible solution is to create a phantom cid which represents a
        cmin/cmax pair and is stored in local memory.
      fad7e8ed
    • B
      Duplicate: · 55af2a43
      Bruce Momjian 提交于
      < * Maintain a map of recently-expired rows
      <
      <   This allows vacuum to target specific pages for possible free space
      <   without requiring a sequential scan.
      <
      Update entry:
      
      >   One complexity is that index entries still have to be vacuumed, and
      >   doing this without an index scan (by using the heap values to find the
      >   index entry) might be slow and unreliable, especially for user-defined
      >   index functions.
      55af2a43
  12. 31 8月, 2005 1 次提交
    • B
      Add: · bc065066
      Bruce Momjian 提交于
      > * Eventually enable escape_string_warning and standard_conforming_strings
      bc065066
  13. 29 8月, 2005 1 次提交
    • B
      Add: · a78a5308
      Bruce Momjian 提交于
      > * Add function to return the thread safety status of libpq and ecpg
      a78a5308
  14. 27 8月, 2005 7 次提交
    • B
      Add: · a1a19bb8
      Bruce Momjian 提交于
      > * Allow user-defined types to specify a type modifier at table creation
      >   time
      a1a19bb8
    • B
      Update: · 542faa82
      Bruce Momjian 提交于
      >
      >   Another issue is whether underlying table changes should be reflected
      >   in the view, e.g. should SELECT * show additional columns if they
      >   are added after the view is created.
      542faa82
    • B
      Add: · f9244df7
      Bruce Momjian 提交于
      > 	o Issue a warning if a change-on-restart-only postgresql.conf value
      > 	  is modified  and the server config files are reloaded
      > 	o Mark change-on-restart-only values in postgresql.conf
      205a209
      > 	o Fix SELECT '0.01 years'::interval, '0.01 months'::interval
      f9244df7
    • B
      Add description and item: · acba287a
      Bruce Momjian 提交于
      >
      > 	  Currently, while \e saves a single query as one entry, interactive
      > 	  queries are saved one line at a time.  Ideally all queries
      > 	  whould be saved like \e does.
      >
      > 	o Allow multi-line column values to align in the proper columns
      >
      > 	  If the second output column value is 'a\nb', the 'b' should appear
      > 	  in the second display column, rather than the first column as it
      > 	  does now.
      acba287a
    • B
      Update based on user comments: · cad7f831
      Bruce Momjian 提交于
      <   in PL/PgSQL is to use EXECUTE.
      >   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.
      cad7f831
    • B
      Update constraint_exclusion items: · bdfa8e5e
      Bruce Momjian 提交于
      <   inheritance, and allow it to work for UPDATE and DELETE queries
      >   inheritance, allow it to work for UPDATE and DELETE queries, and allow
      >   it to be used for all queries with little performance impact
      < * Allow constraint_elimination to be automatically performed
      <
      <   This requires additional code to reduce the performance loss caused by
      <   constraint elimination.
      bdfa8e5e
    • B
      Remove completed items: · 88d7b711
      Bruce Momjian 提交于
      < * -Allow limits on per-db/role connections
      43d41
      < * -Prevent dropping user that still owns objects, or auto-drop the objects
      49d46
      < * -Add the client IP address and port to pg_stat_activity
      < * -Add session start time and last statement time to pg_stat_activity
      < * -Add a function that returns the start time of the postmaster
      230d224
      < 	o -Allow MIN()/MAX() on arrays
      < 	o -Modify array literal representation to handle array index lower bound
      < 	  of other than one
      253d244
      < * -Add function to return compressed length of TOAST data values
      < * -Prevent to_char() on interval from returning meaningless values
      <
      <   For example, to_char('1 month', 'mon') is meaningless.  Basically,
      <   most date-related parameters to to_char() are meaningless for
      <   intervals because interval is not anchored to a date.
      <
      < * -Have views on temporary tables exist in the temporary namespace
      < * -Allow temporary views on non-temporary tables
      329d311
      < * -Add BETWEEN SYMMETRIC/ASYMMETRIC
      < * -Add E'' escape string marker so eventually ordinary strings can treat
      <   backslashes literally, for portability
      <
      < * -Allow additional tables to be specified in DELETE for joins
      <
      <   UPDATE already allows this (UPDATE...FROM) but we need similar
      <   functionality in DELETE.  It's been agreed that the keyword should
      <   be USING, to avoid anything as confusing as DELETE FROM a FROM b.
      <
      341d313
      < * -Allow REINDEX to rebuild all database indexes
      < * -Add an option to automatically use savepoints for each statement in a
      <   multi-statement transaction.
      <
      <   When enabled, this would allow errors in multi-statement transactions
      <   to be automatically ignored.
      <
      426d391
      < 	o -Allow FOR UPDATE queries to do NOWAIT locks
      473d437
      < 	o -Allow COPY to understand \x as a hex byte
      < 	o -Allow COPY to optionally include column headings in the first line
      < 	o -Allow COPY FROM ... CSV to interpret newlines and carriage
      < 	  returns in data
      525d485
      < 	o -Have SHOW ALL show descriptions for server-side variables
      < 	o -Allow PL/PgSQL's RAISE function to take expressions
      <
      < 	  Currently only constants are supported.
      <
      < 	o -Change PL/PgSQL to use palloc() instead of malloc()
      545d499
      < 	o -Allow PL/pgSQL EXECUTE query_var INTO record_var;
      550d503
      < 	o -Pass arrays natively instead of as text between plperl and postgres
      598d550
      < 	o -Add dumping and restoring of LOB comments
      638d589
      < * -Implement shared row locks and use them in RI triggers
      642d592
      < * -Allow triggers to be disabled
      < * -Add two-phase commit
      <
      <
      < * -Prevent inherited tables from expanding temporary subtables of other
      <   sessions
      < * -Use indexes for MIN() and MAX()
      <
      <   MIN/MAX queries can already be rewritten as SELECT col FROM tab ORDER
      <   BY col {DESC} LIMIT 1. Completing this item involves doing this
      <   transformation automatically.
      <
      < * -Use index to restrict rows returned by multi-key index when used with
      <   non-consecutive keys to reduce heap accesses
      <
      <   For an index on col1,col2,col3, and a WHERE clause of col1 = 5 and
      <   col3 = 9, spin though the index checking for col1 and col3 matches,
      <   rather than just col1; also called skip-scanning.
      <
      < * -Fetch heap pages matching index entries in sequential order
      <
      <   Rather than randomly accessing heap pages based on index entries, mark
      <   heap pages needing access in a bitmap and do the lookups in sequential
      <   order. Another method would be to sort heap ctids matching the index
      <   before accessing the heap rows.
      <
      < * -Allow non-bitmap indexes to be combined by creating bitmaps in memory
      <
      <   This feature allows separate indexes to be ANDed or ORed together.  This
      <   is particularly useful for data warehousing applications that need to
      <   query the database in an many permutations.  This feature scans an index
      <   and creates an in-memory bitmap, and allows that bitmap to be combined
      <   with other bitmap created in a similar way.  The bitmap can either index
      <   all TIDs, or be lossy, meaning it records just page numbers and each
      <   page tuple has to be checked for validity in a separate pass.
      <
      < * -Fix incorrect rtree results due to wrong assumptions about "over"
      <   operator semantics
      782d694
      < 	o -Add concurrency to GIST
      813d724
      < * -Allow multiple blocks to be written to WAL with one write()
      < * -Consider use of open/fcntl(O_DIRECT) to minimize OS caching,
      <   for WAL writes
      <
      <   O_DIRECT doesn't have the same media write guarantees as fsync, so it
      <   is in addition to the fsync method, not in place of it.
      <
      < * -Cache last known per-tuple offsets to speed long tuple access
      < * -Allow the size of the buffer cache used by temporary objects to be
      <   specified as a GUC variable
      <
      <   Larger local buffer cache sizes requires more efficient handling of
      <   local cache lookups.
      <
      < * -Improve the background writer
      <
      <   Allow the background writer to more efficiently write dirty buffers
      <   from the end of the LRU cache and use a clock sweep algorithm to
      <   write other dirty buffers to reduced checkpoint I/O
      <
      897d788
      < * -Add a warning when the free space map is too small
      917d807
      < 	o -Move into the backend code
      < * -Make locking of shared data structures more fine-grained
      <
      <   This requires that more locks be acquired but this would reduce lock
      <   contention, improving concurrency.
      <
      < * -Improve SMP performance on i386 machines
      <
      <   i386-based SMP machines can generate excessive context switching
      <   caused by lock failure in high concurrency situations. This may be
      <   caused by CPU cache line invalidation inefficiencies.
      <
      979d857
      < 	o  -Add ability to turn off full page writes
      < * -Eliminate WAL logging for CREATE TABLE AS when not doing WAL archiving
      < * -Change WAL to use 32-bit CRC, for performance reasons
      <
      < * -Use CHECK constraints to influence optimizer decisions
      <
      <   CHECK constraints contain information about the distribution of values
      <   within the table. This is also useful for implementing subtables where
      <   a tables content is distributed across several subtables.
      <
      1045d913
      < * -ANALYZE should record a pg_statistic entry for an all-NULL column
      1099d966
      < * -Remove kerberos4 from source tree
      1103d969
      < * -Make src/port/snprintf.c thread-safe
      1118d983
      < * -Add C code on Unix to copy directories for use in creating new databases
      1133d997
      < 	o -Improve dlerror() reporting string
      88d7b711