Linux SRV-16 6.18.44-paas #1 SMP PREEMPT_DYNAMIC Thu Aug 13 10:08:12 UTC 2026 x86_64
/
proc
/
thread-self
/
root
/
opt
/
postgresql-11
/
doc
/
html
/
//proc/thread-self/root/opt/postgresql-11/doc/html/release-9-0-4.html
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>E.154. Release 9.0.4</title><link rel="stylesheet" type="text/css" href="stylesheet.css" /><link rev="made" href="pgsql-docs@postgresql.org" /><meta name="generator" content="DocBook XSL Stylesheets V1.79.1" /><link rel="prev" href="release-9-0-5.html" title="E.153. Release 9.0.5" /><link rel="next" href="release-9-0-3.html" title="E.155. Release 9.0.3" /></head><body><div xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">E.154. Release 9.0.4</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="release-9-0-5.html" title="E.153. Release 9.0.5">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="release.html" title="Appendix E. Release Notes">Up</a></td><th width="60%" align="center">Appendix E. Release Notes</th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 11.1 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="release-9-0-3.html" title="E.155. Release 9.0.3">Next</a></td></tr></table><hr></hr></div><div class="sect1" id="RELEASE-9-0-4"><div class="titlepage"><div><div><h2 class="title" style="clear: both">E.154. Release 9.0.4</h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="sect2"><a href="release-9-0-4.html#id-1.11.6.158.4">E.154.1. Migration to Version 9.0.4</a></span></dt><dt><span class="sect2"><a href="release-9-0-4.html#id-1.11.6.158.5">E.154.2. Changes</a></span></dt></dl></div><p><strong>Release date: </strong>2011-04-18</p><p> This release contains a variety of fixes from 9.0.3. For information about new features in the 9.0 major release, see <a class="xref" href="release-9-0.html" title="E.158. Release 9.0">Section E.158</a>. </p><div class="sect2" id="id-1.11.6.158.4"><div class="titlepage"><div><div><h3 class="title">E.154.1. Migration to Version 9.0.4</h3></div></div></div><p> A dump/restore is not required for those running 9.0.X. </p><p> However, if your installation was upgraded from a previous major release by running <span class="application">pg_upgrade</span>, you should take action to prevent possible data loss due to a now-fixed bug in <span class="application">pg_upgrade</span>. The recommended solution is to run <code class="command">VACUUM FREEZE</code> on all TOAST tables. More information is available at <a class="ulink" href="http://wiki.postgresql.org/wiki/20110408pg_upgrade_fix" target="_top"> http://wiki.postgresql.org/wiki/20110408pg_upgrade_fix</a>. </p></div><div class="sect2" id="id-1.11.6.158.5"><div class="titlepage"><div><div><h3 class="title">E.154.2. Changes</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p> Fix <span class="application">pg_upgrade</span>'s handling of TOAST tables (Bruce Momjian) </p><p> The <code class="structname">pg_class</code>.<code class="structfield">relfrozenxid</code> value for TOAST tables was not correctly copied into the new installation during <span class="application">pg_upgrade</span>. This could later result in <code class="literal">pg_clog</code> files being discarded while they were still needed to validate tuples in the TOAST tables, leading to <span class="quote">“<span class="quote">could not access status of transaction</span>”</span> failures. </p><p> This error poses a significant risk of data loss for installations that have been upgraded with <span class="application">pg_upgrade</span>. This patch corrects the problem for future uses of <span class="application">pg_upgrade</span>, but does not in itself cure the issue in installations that have been processed with a buggy version of <span class="application">pg_upgrade</span>. </p></li><li class="listitem"><p> Suppress incorrect <span class="quote">“<span class="quote">PD_ALL_VISIBLE flag was incorrectly set</span>”</span> warning (Heikki Linnakangas) </p><p> <code class="command">VACUUM</code> would sometimes issue this warning in cases that are actually valid. </p></li><li class="listitem"><p> Use better SQLSTATE error codes for hot standby conflict cases (Tatsuo Ishii and Simon Riggs) </p><p> All retryable conflict errors now have an error code that indicates that a retry is possible. Also, session closure due to the database being dropped on the master is now reported as <code class="literal">ERRCODE_DATABASE_DROPPED</code>, rather than <code class="literal">ERRCODE_ADMIN_SHUTDOWN</code>, so that connection poolers can handle the situation correctly. </p></li><li class="listitem"><p> Prevent intermittent hang in interactions of startup process with bgwriter process (Simon Riggs) </p><p> This affected recovery in non-hot-standby cases. </p></li><li class="listitem"><p> Disallow including a composite type in itself (Tom Lane) </p><p> This prevents scenarios wherein the server could recurse infinitely while processing the composite type. While there are some possible uses for such a structure, they don't seem compelling enough to justify the effort required to make sure it always works safely. </p></li><li class="listitem"><p> Avoid potential deadlock during catalog cache initialization (Nikhil Sontakke) </p><p> In some cases the cache loading code would acquire share lock on a system index before locking the index's catalog. This could deadlock against processes trying to acquire exclusive locks in the other, more standard order. </p></li><li class="listitem"><p> Fix dangling-pointer problem in <code class="literal">BEFORE ROW UPDATE</code> trigger handling when there was a concurrent update to the target tuple (Tom Lane) </p><p> This bug has been observed to result in intermittent <span class="quote">“<span class="quote">cannot extract system attribute from virtual tuple</span>”</span> failures while trying to do <code class="literal">UPDATE RETURNING ctid</code>. There is a very small probability of more serious errors, such as generating incorrect index entries for the updated tuple. </p></li><li class="listitem"><p> Disallow <code class="command">DROP TABLE</code> when there are pending deferred trigger events for the table (Tom Lane) </p><p> Formerly the <code class="command">DROP</code> would go through, leading to <span class="quote">“<span class="quote">could not open relation with OID nnn</span>”</span> errors when the triggers were eventually fired. </p></li><li class="listitem"><p> Allow <span class="quote">“<span class="quote">replication</span>”</span> as a user name in <code class="filename">pg_hba.conf</code> (Andrew Dunstan) </p><p> <span class="quote">“<span class="quote">replication</span>”</span> is special in the database name column, but it was mistakenly also treated as special in the user name column. </p></li><li class="listitem"><p> Prevent crash triggered by constant-false WHERE conditions during GEQO optimization (Tom Lane) </p></li><li class="listitem"><p> Improve planner's handling of semi-join and anti-join cases (Tom Lane) </p></li><li class="listitem"><p> Fix handling of <code class="literal">SELECT FOR UPDATE</code> in a sub-SELECT (Tom Lane) </p><p> This bug typically led to <span class="quote">“<span class="quote">cannot extract system attribute from virtual tuple</span>”</span> errors. </p></li><li class="listitem"><p> Fix selectivity estimation for text search to account for NULLs (Jesper Krogh) </p></li><li class="listitem"><p> Fix get_actual_variable_range() to support hypothetical indexes injected by an index adviser plugin (Gurjeet Singh) </p></li><li class="listitem"><p> Fix PL/Python memory leak involving array slices (Daniel Popowich) </p></li><li class="listitem"><p> Allow <span class="application">libpq</span>'s SSL initialization to succeed when user's home directory is unavailable (Tom Lane) </p><p> If the SSL mode is such that a root certificate file is not required, there is no need to fail. This change restores the behavior to what it was in pre-9.0 releases. </p></li><li class="listitem"><p> Fix <span class="application">libpq</span> to return a useful error message for errors detected in <code class="function">conninfo_array_parse</code> (Joseph Adams) </p><p> A typo caused the library to return NULL, rather than the <code class="structname">PGconn</code> structure containing the error message, to the application. </p></li><li class="listitem"><p> Fix <span class="application">ecpg</span> preprocessor's handling of float constants (Heikki Linnakangas) </p></li><li class="listitem"><p> Fix parallel <span class="application">pg_restore</span> to handle comments on POST_DATA items correctly (Arnd Hannemann) </p></li><li class="listitem"><p> Fix <span class="application">pg_restore</span> to cope with long lines (over 1KB) in TOC files (Tom Lane) </p></li><li class="listitem"><p> Put in more safeguards against crashing due to division-by-zero with overly enthusiastic compiler optimization (Aurelien Jarno) </p></li><li class="listitem"><p> Support use of dlopen() in FreeBSD and OpenBSD on MIPS (Tom Lane) </p><p> There was a hard-wired assumption that this system function was not available on MIPS hardware on these systems. Use a compile-time test instead, since more recent versions have it. </p></li><li class="listitem"><p> Fix compilation failures on HP-UX (Heikki Linnakangas) </p></li><li class="listitem"><p> Avoid crash when trying to write to the Windows console very early in process startup (Rushabh Lathia) </p></li><li class="listitem"><p> Support building with MinGW 64 bit compiler for Windows (Andrew Dunstan) </p></li><li class="listitem"><p> Fix version-incompatibility problem with <span class="application">libintl</span> on Windows (Hiroshi Inoue) </p></li><li class="listitem"><p> Fix usage of <span class="application">xcopy</span> in Windows build scripts to work correctly under Windows 7 (Andrew Dunstan) </p><p> This affects the build scripts only, not installation or usage. </p></li><li class="listitem"><p> Fix path separator used by <span class="application">pg_regress</span> on Cygwin (Andrew Dunstan) </p></li><li class="listitem"><p> Update time zone data files to <span class="application">tzdata</span> release 2011f for DST law changes in Chile, Cuba, Falkland Islands, Morocco, Samoa, and Turkey; also historical corrections for South Australia, Alaska, and Hawaii. </p></li></ul></div></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="release-9-0-5.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="release.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="release-9-0-3.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">E.153. Release 9.0.5 </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> E.155. Release 9.0.3</td></tr></table></div></body></html>