From a2abe9fe58a0cea45d9aaf5f8f9bf47211cdfea5 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sun, 25 Jul 2004 04:18:05 +0000 Subject: [PATCH] Update 7.5 release notes. --- doc/src/sgml/release.sgml | 455 +++++++++++++++++++++++++++++++------- 1 file changed, 373 insertions(+), 82 deletions(-) diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml index 20deccd190..fcfe28a68e 100644 --- a/doc/src/sgml/release.sgml +++ b/doc/src/sgml/release.sgml @@ -1,5 +1,5 @@ @@ -31,11 +31,15 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Windows as a server. It can run as a service and a separate installer project has been created to ease installation, - http://pgfoundry.org/projects/pginstaller + http://pgfoundry.org/projects/pginstaller. This release + supports Windows NT 4 and all later releases. It does not + support earlier releases like Windows 95, 98, or ME because + these operating systems do not have the infrastructure to + support PostgreSQL. Previous releases required the Unix emulation toolkit Cygwin for - Win32 support. PostgreSQl has always supported clients on Win32. + Win32 support. PostgreSQL has always supported clients on Win32. @@ -90,6 +94,62 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian + + + + Improved Buffer Management, CHECKPOINT, VACUUM + + + + + This release has a more intelligent buffer replacement strategy, + which will make better use of available shared buffers and + improve performance. The performance impact of vacuum and + checkpoints is also improved. + + + + + + + Change Column Types + + + + + A column's data type can now be changed with ALTER TABLE. + + + + + + + New Perl Server-Side Language + + + + + A new version of the Perl server-side language now supports a + persistent, shared storage area, triggers, returning records and + arrays of records, and SPI calls. + + + + + + + COPY Handles Comma-Separated-Value Files + + + + + COPY can now read and write comma-separate-value (CSV) files. It + has the flexibility to interpret non-standard quoting and + separation characters too. + + + + @@ -253,23 +313,62 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Support cross-data-type index usage (Tom) + + Before this change some queries would not use an index if the data + types did not exactly match. This improvement makes index usage more + intuitive and consistent. + match exactly + New buffer replacement strategy that improves caching (Jan) + + Prior releases use a least-recently-used (LRU) cache to keep + recently referenced pages in the cache. Unfortunately, the cache + did not consider the number of times a specific cache entry was + accessed. Large table scans could force out useful cache pages. + The new cache uses four separate cache areas to track most + recently used and most frequently used cache pages to dynamically + optimize their replacement based on the work load. This should + lead to much more efficient use of the shared buffer cache. + Administrators who have tested shared buffer sizes in the past + should retest with this new cache replacement policy. + Add subprocess to write dirty buffers periodically to reduce checkpoint writes (Jan) + + In previous releases, the checkpoint process, which runs every few + minutes, would write all dirty buffers to the operating system + buffer cache then flush all operating system dirty buffers to + disk. This often resulted in a periodic spike in disk usage that + hurt performance. The new code uses a background writer to trickle + disk writes at a steady pace so checkpoints have far fewer dirty + pages to write to disk. This should improve performance and + minimize performance degradation during checkpoints. + - Subquery fixes (Tom) + Optimizer improvements and subquery fixes (Tom) + + + It is difficult to explain all the optimizer improvements that go + into a release like this. They involve complex adjustments to the + logic used to select indexes, join methods, and join order. They + are difficult to explain, but the result is that the optimizer + make quicker and better choices in how to execute queries, + resulting in improved performance. The close relationship between + our developers and users reporting problems allows us to make + rapid and complex optimizer improvements that would be very + difficult for lose-source companies to emulate. @@ -277,11 +376,9 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Improve btree index performance for duplicate keys (Dmitry Tkach, Tom) - - - - Many optimizer improvements (Tom) + This improves the way indexes are scanned when many duplicate + values exist in the index. @@ -289,60 +386,112 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Improved index usage with OR clauses (Tom) + + This allows the optimizer to use indexes in statements with + many OR clauses that were not possible in the past. It can also + use multi-column indexes where the first column is specified and + the second column is part of an OR clause. + Improve matching of partial index clauses (Tom) + + The server is now smarter about using partial indexes in queries + involving complex WHERE clauses. + Improve load speed for C functions (Tom) + + This release now uses a hash to lookup information for externally + loaded C functions. This improves their speed so they perform as + quickly as native functions that are part of the server backend. + Improve performance of the GEQO optimizer (Tom) + + The GEQO optimizer is used for joining many tables (default + twelve). This release speeds up the way queries are analyzed to + decrease time spent in optimization. + Add ability to prolong vacuum to reduce performance impact (Jan) + + On busy systems, VACUUM performs many I/O request which can hurt + performance for other users. This release allows you to slow down + VACUUM so it uses fewer resources though this increases the + duration of VACUUM. + Add type-specific ANALYZE statistics capability (Mark Cave-Ayland) + + This adjustment allows more flexibility in generating statistics + for non-standard data types. + Allow collection of ANALYZE statistics for expression indexes (Tom) + + Expression indexes (also called functional indexes) allow users to + index not just columns but the result of expressions and function + calls. With this release, expression indexes can collect analyze + statistics used by the optimizer in choosing the best execution + plan. + Sort duplicate btree items by file offset during creation (Manfred Koizar) + + To improve performance, this release sorts duplicate index entries + in base table order so duplicate row lookups happen in sequential + order. This ordering is not maintained during table modification. + New two-stage sampling method for ANALYZE (Manfred Koizar) + + This gives better statistics for asymmetric data distributions. + Optimize prepared queries only when first executed so constants can be used - for statistics (unnamed?) (Oliver Jowett) + for statistics (unnamed?) (Oliver Jowett) + + + Prepared statements optimize queries once and execute them many + times. While prepared queries run quickly, they benefit from + knowing all the values used in the query. This release allows + unnamed prepared queries to use the constants supplied by the + first query invocation as optimization hints. @@ -350,6 +499,10 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Fix hash joins and aggregates of INET and CIDR data types (Tom) + + Previous releases did not adjust to the fact that INET and CIDR + types have slightly different internal representations. + @@ -368,22 +521,22 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - Point-in-time recovery (Simon Riggs) + Add Point-in-time recovery (Simon Riggs) - Add new read-only GUC variables to query server compile-time setting - func_max_args, index_max_keys, namedatalen, blcksz, - have_int64_timestamp (Joe) + Add new read-only GUC variables to query server compile-time + setting func_max_args, index_max_keys, namedatalen, blcksz, + have_int64_timestamp (Joe) Make quoting of "sameuser", "samegroup", and "all" remove - special meaning of these terms in pg_hba.conf (Andrew) + special meaning of these terms in pg_hba.conf (Andrew) @@ -396,7 +549,12 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Rename GUC parameters SortMem and VacuumMem to work_mem and - maintenance_work_mem (Old names still supported) (Tom) + maintenance_work_mem (Old names still supported) (Tom) + + + This change was made to clarify that index creation uses + maintenance_work_mem and work_mem is for memory used for query + execution. @@ -408,43 +566,56 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - Add new GUC parameter to report useful information at the start of each - log line (Andrew) + Add new GUC parameter to report useful session information at the + start of each log line (Andrew) + + + Information includes user name, database name, remote IP address, + and session start time. Remove GUC log_pid, log_timestamp, log_source_port; - functionality superseded by log_line_prefix (Andrew) + functionality superseded by log_line_prefix (Andrew) Replace the virtual_host and tcpip_socket parameters with a unified - listen_addresses parameter (Tom) + listen_addresses parameter (Tom) Listen on localhost by default, which eliminates the need for the -i - postmaster switch in many scenarios (Andrew Dunstan) + postmaster switch in many scenarios (Andrew Dunstan) + + + Listening on localhost (127.0.0.1) opens no new security holes but + allows configurations like Win32 and JDBC, which do not support + local sockets, to work. Remove 'syslog' GUC variable, and add more logical 'log_destination' - variable to control log output location (Magnus) + variable to control log output location (Magnus) Change GUC log_statement to take values "all, mod, ddl, none" which - controls the queries output (Bruce) + controls the queries output (Bruce) + + + This allows administrators to log only data definition changes or + date modification statements. @@ -457,7 +628,12 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow configuration files to be placed outside the data directory using - GUC variables (mlw) + GUC variables (mlw) + + + By default, configuration files sit in the top server directory. + With this addition, configuration files can be place outside the + data directory, easing administration. @@ -478,20 +654,25 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Unsupported isolation levels are now accepted and promoted to the - spec-compliant level supported (Peter) + spec-compliant level supported (Peter) + + + The SQL specification states that if a database doesn't support a + specific isolation level, it should use a more restrictive level. + This change adds that capability. - Allow BEGIN WORK to specify transaction isolation level like START - TRANSACTION (Bruce) + Allow BEGIN WORK to specify transaction isolation levels like START + TRANSACTION (Bruce) - More flexible rule/view permission checking (Tom) + More flexible rule/view permission checking (?) (Tom) @@ -499,23 +680,40 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Implement dollar quoting to simplify single-quote usage (Andrew) + + In previous releases, because single quotes had to be used to + quote a function's contents, the use of single quotes inside the + function required use of two single quotes or other error-prone + mechanisms. With this release we add the ability to use "dollar + quoting" to quote a block of text that eliminates the awkwardness + of single quotes used inside the function. Dollar quoting can + actually be used anywhere quoted text is used. + Make CASE val WHEN compval1 THEN evaluate 'val' only once (Tom) + + This prevents CASE from re-evaluating the test expression multiple + times. This has benefits when the expression is complex or is + volatile. + - Replace max_expr_depth parameter with max_stack_depth parameter - (measured in kilobytes of stack size) (This gives us a fairly - bulletproof defense against crashing due to runaway recursive functions - (Tom) + Replace max_expr_depth parameter with max_stack_depth parameter, + measured in kilobytes of stack size (Tom) + + + This gives us a fairly bulletproof defense against crashing due to + runaway recursive functions. Instead of measure the number of stack + calls, it measures the size of the stack. - + Allow LIKE/ILIKE to appear in more places in a query (?) (Fabien Coelho) @@ -525,14 +723,22 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian When matching GROUP BY names, prefer local FROM columns first, then SELECT - aliases, and then outer FROM columns (Tom) + aliases, and then outer FROM columns (Tom) + + + This change was made because it is considered more consistent than + the previous behavior. Change EXECUTE to return a completion tag matching the executed statement - (Kris Jurka) + (Kris Jurka) + + + Previous releases return an EXECUTE tag for any EXECUTE call. In + this release, the tag returned will reflect the command executed. @@ -540,12 +746,21 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Disallow NATURAL CROSS JOIN (Tom) + + Such a clause makes no logical sense, but was not disabled in the + past. + Allow arbitrary row expressions (Tom) + + This allows columns to contain arbitrary composite types like rows + from other tables. It also allows functions to more easily take + rows as arguments and return row values. + @@ -559,14 +774,18 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Add COMMENT ON casts, conversions, languages, operator classes, and - large objects (Christopher) + large objects (Christopher) Add new GUC default_with_oids to control the oid default during table - creation (Neil) + creation (Neil) + + + This allows administrators to default all CREATE TABLE commands to + create tables without oid columns. @@ -579,7 +798,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow ALTER TABLE DROP COLUMN to drop an OID column - (ALTER TABLE SET WITHOUT OIDS still works) (Tom) + (ALTER TABLE SET WITHOUT OIDS still works) (Tom) @@ -592,7 +811,11 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow ALTER ... ADD COLUMN with defaults and NOT NULL constraints works per SQL - spec (Rod) + spec (Rod) + + + This release will supply the appropriate defaults for columns + added with defaults. @@ -606,18 +829,26 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow multiple ALTER actions in a single ALTER TABLE command (Rod) + + This is particularly useful for ALTER commands that rewrite the + table. By grouping ALTER commands together, the table can be + rewritten only once. + Allow ALTER DATABASE ... OWNER (Euler Taveira de Oliveira) + + Previously this required modifying the system tables. + Allow temporary object creation to be limited to SECURITY DEFINER - functions (Sean Chittenden) + functions (Sean Chittenden) @@ -625,12 +856,20 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Add ALTER TABLE ... SET WITHOUT CLUSTER (Christopher) + + Prior to this release, there was no way to clear an auto-cluster + specification except to modify the system tables. + Constraint/Index/SERIAL names are now table_column_type with numbers - appended to guarantee uniqueness within the schema (Spec compliance) (Tom) + appended to guarantee uniqueness within the schema (Tom) + + + The SQL specification states that such names should be unique + within a schema. @@ -638,20 +877,28 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow ALTER TABLE to add SERIAL columns (Tom) + + This is related to the new capability of adding default for new + columns. + Add pg_get_serial_sequence() to return the serial columns - sequence name(Christopher Kings-Lynne) + sequence name(Christopher Kings-Lynne) + + + This allows automated scripts to reliabily find the serial + sequence name. Allow changing the owners of aggregates, conversions, functions, - operators, operator classes, schemas, types, and tablespaces - (Christopher) + operators, operator classes, schemas, types, and tablespaces + (Christopher) @@ -676,12 +923,20 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Add ALSO keyword to CREATE RULE (Fabien Coelho) + + This allows ALSO to be added to rule creation to contrast it with + INSTEAD rules. + Add NOWAIT option to LOCK command (Tatsuo) + + This allows the LOCK command to fail if they would have to wait for + the requested lock. + @@ -700,12 +955,22 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Erase MD5 user passwords when a user is renamed (Bruce) + + PostgreSQL uses the user name as salt when encrypting passwords + via MD5. When a user name is changed, their salt no longer matches + the stored MD5 password so a notice is generated and the password + is cleared. A new password must then be assigned. + New pg_ctl 'kill' option for Win32 (Andrew) + + Win32 does not have a 'kill' command to send signals to backends + so this capability was added to pg_ctl. + @@ -717,7 +982,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Add --pwfile option to initdb so the passwords can be set by GUI tools - (Magnus) + (Magnus) @@ -744,7 +1009,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Make netmask() and hostmask() functions return maximum-length - masklen (Tom) + masklen (Tom) @@ -752,6 +1017,10 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Change factorial function to NUMERIC (Gavin) + + The NUMERIC data type more accurately represents the return value + from factorials. + @@ -764,12 +1033,15 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Make length() disregard trailing spaces in CHAR() (Gavin) + + This change was made for SQL specification compliance. (?) + Warn of empty string being passes to oid/float4/float8 data types; 7.6 - will throw an error instead (Neil) + will throw an error instead (Neil) @@ -782,7 +1054,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow int2/int4/int8/float4/float8 input routines to have leading - or trailing whitespace (Neil) + or trailing whitespace (Neil) @@ -795,32 +1067,32 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Fix to_char(year) for BC dates (previously it returned one less than - the current year) (Bruce) + the current year) (Bruce) - Fix date_part() to return the proper millennium and century (With the previous version, - the centuries and millennium had a wrong - number and started the wrong year. Moreover century number 0, which does - not exist in reality, lasted 200 years. Also, millennium number 0 lasted - 2000 years) Fabien Coelho) + Fix date_part() to return the proper millennium and century (With + the previous version, the centuries and millennium had a wrong + number and started the wrong year. Moreover century number 0, + which does not exist in reality, lasted 200 years. Also, + millennium number 0 lasted 2000 years) Fabien Coelho) Add ceiling() as an alias for ceil(), and power() as an alias for pow() - for standards compliance (Neil) + for standards compliance (Neil) Change ln(), log(), power(), and sqrt() to emit the correct SQLSTATE - error codes for certain error conditions, as specified by SQL2003 - (Neil) + error codes for certain error conditions, as specified by SQL2003 + (Neil) @@ -839,7 +1111,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian New inet_* functions to return network addresses for client - and server (Sean Chittenden) + and server (Sean Chittenden) @@ -851,8 +1123,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - Add function to send cancel and terminate to other backends (Magnus - Hagander) + Add function to send cancel and terminate to other backends (Magnus) @@ -860,6 +1131,9 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow interval plus datetime expressions (Tom) + + The reverse ordering, datetime plus interval, was already supported. + @@ -874,22 +1148,24 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow plpgsql parameter names to be referenced inside the function body (Tom) + + This basically creates an auto-reference to the names of the + number parameters inside the function body. + Do minimal syntax checking of plpgsql functions at creation time (Tom) + + This allows us to catch simple function errors sooner. (?) + New plperl server-side language (Command Prompt, Andrew Dunstan) - o persistent, shared area - o triggers - o return records (hash references) - o array of records - o SPI @@ -927,7 +1203,8 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - Allow psql to display fancy prompts via readline (Reece Hart, Chet Ramey) + Allow psql to display fancy prompts, including color, via readline + (Reece Hart, Chet Ramey) @@ -965,6 +1242,10 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Add global psql config file, psqlrc.sample (Bruce) + + This allows a central file where global psql startup commands can + be stored. + @@ -976,14 +1257,14 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Use binary file mode in psql when reading files so control-z is not seen - as end-of-file + as end-of-file Have \dn+ show permissions and description for schemas (Dennis - Bjorklund) + Bjorklund) @@ -1005,6 +1286,10 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Have pg_dump output objects in alphabetical order if possible (Tom) + + This should make it easier to identify changes between + dump files. + @@ -1034,7 +1319,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Have pg_dump use ALTER OWNER rather than SET SESSION AUTHORIZATION - by default (Christopher) + by default (Christopher) @@ -1067,7 +1352,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Allow PQoidValue(), PQcmdTuples(), and PQoidStatus() to work - on EXECUTE commands (Neil) + on EXECUTE commands (Neil) @@ -1094,7 +1379,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Use --with-docdir to choose installation location of documentation; also - allow --infodir (Peter) + allow --infodir (Peter) @@ -1114,6 +1399,10 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian New "PostgreSQL" CVS tag (Marc) + + This was done to make it easier for organizations with their own + PostgreSQL CVS repositories. + @@ -1154,7 +1443,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - Remove JDBC from source tree, now a separate project + Remove JDBC from source tree; now a separate project @@ -1202,7 +1491,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - use Olson's public domain timezone library (Magnus) + Use Olson's public domain timezone library (Magnus) @@ -1215,7 +1504,11 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian With threading enabled, use thread flags on Unixware for - backend executables too (Bruce) + backend executables too (Bruce) + + + Unixware can not mix threaded and non-threaded object files in the + same executable, so everything must be compiled as threaded. @@ -1223,12 +1516,16 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian New linked list data structure implementation (Neil) + + This improved performance by allowing list append operations to be + more efficient. + Allow external interfaces to create their own GUC variables (Thomas - Hallgren) + Hallgren) @@ -1247,7 +1544,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian Remove alternate database locations using initlocation (Tom) - (fix dbsize and oidname) + (fix dbsize and oidname) @@ -1257,12 +1554,6 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - - - New Czech FAQ (Pavel Stehule) - - - Make libpq and ecpg build as proper OS X shard libraries (Tom) @@ -1285,7 +1576,7 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.268 2004/07/24 09:36:53 momjian - Many ecpg fixes (Michael) + Many ecpg fixes, including SET DESCRIPTOR (Michael) -- 2.40.0