⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 release.sgml

📁 PostgreSQL7.4.6 for Linux
💻 SGML
📖 第 1 页 / 共 5 页
字号:
<!--$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.235.2.28 2004/10/22 00:26:22 tgl Exp $--><appendix id="release"> <title>Release Notes</title>  <sect1 id="release-7-4-6">   <title>Release 7.4.6</title>   <note>   <title>Release date</title>   <simpara>2004-10-22</simpara>   </note>   <para>    This release contains a variety of fixes from 7.4.5.   </para>   <sect2>    <title>Migration to version 7.4.6</title>    <para>     A dump/restore is not required for those running 7.4.X.    </para>   </sect2>   <sect2>    <title>Changes</title><itemizedlist><listitem><para>Repair possible failure to update hint bits on disk</para><para>Under rare circumstances this oversight could lead to <quote>could not access transaction status</> failures, which qualifiesit as a potential-data-loss bug.</para></listitem><listitem><para>Ensure that hashed outer join does not miss tuples</para><para>Very large left joins using a hash join plan could fail to output unmatchedleft-side rows given just the right data distribution.</para></listitem><listitem><para>Disallow running pg_ctl as root</para><para>This is to guard against any possible security issues.</para></listitem><listitem><para>Avoid using temp files in /tmp in make_oidjoins_check</para><para>This has been reported as a security issue, though it's hardly worthy ofconcern since there is no reason for non-developers to use this script anyway.</para></listitem><listitem><para>Prevent forced backend shutdown from re-emitting prior commandresult</para><para>In rare cases, a client might think that its last command had succeeded whenit really had been aborted by forced database shutdown.</para></listitem><listitem><para>Repair bug in pg_stat_get_backend_idset()</para><para>This could lead to misbehavior in some of the system-statistics views.</para></listitem><listitem><para>Fix small memory leak in postmaster</para></listitem><listitem><para>Fix <quote>expected both swapped tables to have TOASTtables</> bug</para><para>This could arise in cases such as CLUSTER after ALTER TABLE DROP COLUMN.</para></listitem><listitem><para>Prevent <literal>pg_ctl restart</> from adding <literal>-D</> multiple times</para></listitem><listitem><para>Fix problem with NULL values in GiST indexes</para></listitem><listitem><para><literal>::</> is no longer interpreted as a variable in anECPG prepare statement</para></listitem></itemizedlist>  </sect2> </sect1>  <sect1 id="release-7-4-5">   <title>Release 7.4.5</title>   <note>   <title>Release date</title>   <simpara>2004-08-18</simpara>   </note>   <para>    This release contains one serious bug fix over 7.4.4.   </para>   <sect2>    <title>Migration to version 7.4.5</title>    <para>     A dump/restore is not required for those running 7.4.X.    </para>   </sect2>   <sect2>    <title>Changes</title><itemizedlist><listitem><para>Repair possible crash during concurrent btree index insertions</para><para>This patch fixes a rare case in which concurrent insertions into a btree indexcould result in a server panic.  No permanent damage would result, but it'sstill worth a re-release.  The bug does not exist in pre-7.4 releases.</para></listitem></itemizedlist>  </sect2> </sect1>  <sect1 id="release-7-4-4">   <title>Release 7.4.4</title>   <note>   <title>Release date</title>   <simpara>2004-08-16</simpara>   </note>   <para>    This release contains a variety of fixes from 7.4.3.   </para>   <sect2>    <title>Migration to version 7.4.4</title>    <para>     A dump/restore is not required for those running 7.4.X.    </para>   </sect2>   <sect2>    <title>Changes</title><itemizedlist><listitem><para>Prevent possible loss of committed transactions during crash</para><para>Due to insufficient interlocking between transaction commit and checkpointing,it was possible for transactions committed just before the most recentcheckpoint to be lost, in whole or in part, following a database crash andrestart.  This is a serious bug that has existedsince <productname>PostgreSQL</productname> 7.1.</para></listitem><listitem><para>Check HAVING restriction before evaluating result list of anaggregate plan</para></listitem><listitem><para>Avoid crash when session's current userID is deleted</para></listitem><listitem><para>Fix hashed crosstab for zero-rows case (Joe)</para></listitem><listitem><para>Force cache update after renaming a column in a foreign key</para></listitem><listitem><para>Pretty-print UNION queries correctly</para></listitem><listitem><para>Make psql handle <literal>\r\n</> newlines properly in COPY IN</para></listitem><listitem><para>pg_dump handled ACLs with grant options incorrectly</para></listitem><listitem><para>Fix thread support for OS X and Solaris</para></listitem><listitem><para>Updated JDBC driver (build 215) with various fixes</para></listitem><listitem><para>ECPG fixes</para></listitem><listitem><para>Translation updates (various contributors)</para></listitem></itemizedlist>  </sect2> </sect1>  <sect1 id="release-7-4-3">   <title>Release 7.4.3</title>   <note>   <title>Release date</title>   <simpara>2004-06-14</simpara>   </note>   <para>    This release contains a variety of fixes from 7.4.2.   </para>   <sect2>    <title>Migration to version 7.4.3</title>    <para>     A dump/restore is not required for those running 7.4.X.    </para>   </sect2>   <sect2>    <title>Changes</title><itemizedlist><listitem><para>Fix temporary memory leak when using non-hashed aggregates (Tom)</para></listitem><listitem><para>ECPG fixes, including some for Informix compatibility (Michael)</para></listitem><listitem><para>Fixes for compiling with thread-safety, particularly Solaris (Bruce)</para></listitem><listitem><para>Fix error in COPY IN termination when using the old network protocol (ljb)</para></listitem><listitem><para>Several important fixes in pg_autovacuum, including fixes forlarge tables, unsigned oids, stability, temp tables, and debug mode(Matthew T. O'Connor)</para></listitem> <listitem><para>Fix problem with reading tar-format dumps on NetBSD and BSD/OS (Bruce)</para></listitem><listitem><para>Several JDBC fixes</para></listitem><listitem><para>Fix ALTER SEQUENCE RESTART where last_value equals the restart value (Tom)</para></listitem><listitem><para>Repair failure to recalculate nested sub-selects (Tom)</para></listitem><listitem><para>Fix problems with non-constant expressions in LIMIT/OFFSET</para></listitem><listitem><para>Support FULL JOIN with no join clause, such as X FULL JOIN Y ON TRUE (Tom)</para></listitem><listitem><para>Fix another zero-column table bug (Tom)</para></listitem><listitem><para>Improve handling of non-qualified identifiers in GROUP BY clauses in sub-selects (Tom)</para><para>Select-list aliases within the sub-select will now take precedence overnames from outer query levels.</para></listitem><listitem><para>Do not generate <quote>NATURAL CROSS JOIN</> when decompiling rules (Tom)</para></listitem><listitem><para>Add checks for invalid field length in binary COPY (Tom)</para><para>  This fixes a difficult-to-exploit security hole.</para></listitem><listitem><para>Avoid locking conflict between <command>ANALYZE</command> and <command>LISTEN</command>/<command>NOTIFY</command></para></listitem><listitem><para>Numerous translation updates (various contributors)</para></listitem></itemizedlist>  </sect2> </sect1>  <sect1 id="release-7-4-2">   <title>Release 7.4.2</title>   <note>   <title>Release date</title>   <simpara>2004-03-08</simpara>   </note>   <para>    This release contains a variety of fixes from 7.4.1.   </para>   <sect2>    <title>Migration to version 7.4.2</title>    <para>     A dump/restore is not required for those running 7.4.X.  However,     it may be advisable as the easiest method of incorporating fixes for     two errors that have been found in the initial contents of 7.4.X system     catalogs.  A dump/initdb/reload sequence using 7.4.2's initdb will     automatically correct these problems.    </para>    <para>     The more severe of the two errors is that data type <type>anyarray</>     has the wrong alignment label; this is a problem because the     <structname>pg_statistic</> system catalog uses <type>anyarray</>     columns.  The mislabeling can cause planner misestimations and even     crashes when planning queries that involve <literal>WHERE</> clauses on     double-aligned columns (such as <type>float8</> and <type>timestamp</>).     It is strongly recommended that all installations repair this error,     either by initdb or by following the manual repair procedure given     below.    </para>    <para>     The lesser error is that the system view <structname>pg_settings</>     ought to be marked as having public update access, to allow     <literal>UPDATE pg_settings</> to be used as a substitute for     <command>SET</>.  This can also be fixed either by initdb or manually,     but it is not necessary to fix unless you want to use <literal>UPDATE     pg_settings</>.    </para>    <para>     If you wish not to do an initdb, the following procedure will work     for fixing <structname>pg_statistic</>.  As the database superuser,     do:<programlisting>-- clear out old data in pg_statistic:DELETE FROM pg_statistic;VACUUM pg_statistic;-- this should update 1 row:UPDATE pg_type SET typalign = 'd' WHERE oid = 2277;-- this should update 6 rows:UPDATE pg_attribute SET attalign = 'd' WHERE atttypid = 2277;--     -- At this point you MUST start a fresh backend to avoid a crash!---- repopulate pg_statistic:ANALYZE;</programlisting>     This can be done in a live database, but beware that all backends     running in the altered database must be restarted before it is safe to     repopulate <structname>pg_statistic</>.    </para>    <para>     To repair the <structname>pg_settings</> error, simply do:<programlisting>GRANT SELECT, UPDATE ON pg_settings TO PUBLIC;</programlisting>    </para>    <para>     The above procedures must be carried out in <emphasis>each</> database     of an installation, including <literal>template1</>, and ideally     including <literal>template0</> as well.  If you do not fix the     template databases then any subsequently created databases will contain     the same errors.  <literal>template1</> can be fixed in the same way     as any other database, but fixing <literal>template0</> requires     additional steps.  First, from any database issue<programlisting>UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';</programlisting>      Next connect to <literal>template0</> and perform the above repair      procedures.  Finally, do<programlisting>-- re-freeze template0:VACUUM FREEZE;-- and protect it against future alterations:UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';</programlisting>    </para>   </sect2>   <sect2>    <title>Changes</title><para>    Release 7.4.2 incorporates all the fixes included in release 7.3.6,    plus the following fixes:</para><itemizedlist><listitem><para>Fix <structname>pg_statistics</> alignment bug that could crash optimizer</para><para>See above for details about this problem.</para></listitem><listitem><para>Allow non-super users to update <structname>pg_settings</></para></listitem><listitem><para>Fix several optimizer bugs, most of which led to<quote>variable not found in subplan target lists</> errors</para></listitem><listitem><para>Avoid out-of-memory failure during startup of large multipleindex scan</para></listitem><listitem><para>Fix multibyte problem that could lead to <quote>out ofmemory</> error during <command>COPY IN</></para></listitem><listitem><para>Fix problems with <command>SELECT INTO</> / <command>CREATETABLE AS</> from tables without OIDs</para></listitem><listitem><para>Fix problems with <filename>alter_table</> regression testduring parallel testing</para></listitem><listitem><para>Fix problems with hitting open file limit, especially on OS X (Tom)</para></listitem><listitem><para>Partial fix for Turkish-locale issues</para><para>initdb will succeed now in Turkish locale, but there are still someinconveniences associated with the <literal>i/I</> problem.</para></listitem><listitem><para>Make pg_dump set client encoding on restore</para></listitem><listitem><para>Other minor pg_dump fixes</para></listitem><listitem><para>Allow ecpg to again use C keywords as column names (Michael)</para></listitem><listitem><para>Added ecpg <literal>WHENEVER NOT_FOUND</> to<literal>SELECT/INSERT/UPDATE/DELETE</> (Michael)</para></listitem> <listitem><para>Fix ecpg crash for queries calling set-returning functions (Michael)</para></listitem><listitem><para>Various other ecpg fixes (Michael)</para></listitem><listitem><para>Fixes for Borland compiler</para></listitem><listitem><para>Thread build improvements (Bruce)</para></listitem><listitem><para>Various other build fixes</para></listitem><listitem><para>Various JDBC fixes</para></listitem></itemizedlist>  </sect2> </sect1>  <sect1 id="release-7-4-1">   <title>Release 7.4.1</title>   <note>   <title>Release date</title>   <simpara>2003-12-22</simpara>   </note>   <para>    This release contains a variety of fixes from 7.4.   </para>   <sect2>    <title>Migration to version 7.4.1</title>    <para>     A dump/restore is <emphasis>not</emphasis> required for those     running 7.4.    </para>    <para>     If you want to install the fixes in the information schema     you need to reload it into the database.     This is either accomplished by initializing a new cluster     by running <command>initdb</command>, or by running the following     sequence of SQL commands in each database (ideally including     <literal>template1</literal>) as a superuser in     <application>psql</application>, after installing the new release:<programlisting>DROP SCHEMA information_schema CASCADE;\i /usr/local/pgsql/share/information_schema.sql</programlisting>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -