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-8-3-12.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.193. Release 8.3.12</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-8-3-13.html" title="E.192. Release 8.3.13" /><link rel="next" href="release-8-3-11.html" title="E.194. Release 8.3.11" /></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.193. Release 8.3.12</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="release-8-3-13.html" title="E.192. Release 8.3.13">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-8-3-11.html" title="E.194. Release 8.3.11">Next</a></td></tr></table><hr></hr></div><div class="sect1" id="RELEASE-8-3-12"><div class="titlepage"><div><div><h2 class="title" style="clear: both">E.193. Release 8.3.12</h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="sect2"><a href="release-8-3-12.html#id-1.11.6.197.4">E.193.1. Migration to Version 8.3.12</a></span></dt><dt><span class="sect2"><a href="release-8-3-12.html#id-1.11.6.197.5">E.193.2. Changes</a></span></dt></dl></div><p><strong>Release date: </strong>2010-10-04</p><p> This release contains a variety of fixes from 8.3.11. For information about new features in the 8.3 major release, see <a class="xref" href="release-8-3.html" title="E.205. Release 8.3">Section E.205</a>. </p><div class="sect2" id="id-1.11.6.197.4"><div class="titlepage"><div><div><h3 class="title">E.193.1. Migration to Version 8.3.12</h3></div></div></div><p> A dump/restore is not required for those running 8.3.X. However, if you are upgrading from a version earlier than 8.3.8, see <a class="xref" href="release-8-3-8.html" title="E.197. Release 8.3.8">Section E.197</a>. </p></div><div class="sect2" id="id-1.11.6.197.5"><div class="titlepage"><div><div><h3 class="title">E.193.2. Changes</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p> Use a separate interpreter for each calling SQL userid in PL/Perl and PL/Tcl (Tom Lane) </p><p> This change prevents security problems that can be caused by subverting Perl or Tcl code that will be executed later in the same session under another SQL user identity (for example, within a <code class="literal">SECURITY DEFINER</code> function). Most scripting languages offer numerous ways that that might be done, such as redefining standard functions or operators called by the target function. Without this change, any SQL user with Perl or Tcl language usage rights can do essentially anything with the SQL privileges of the target function's owner. </p><p> The cost of this change is that intentional communication among Perl and Tcl functions becomes more difficult. To provide an escape hatch, PL/PerlU and PL/TclU functions continue to use only one interpreter per session. This is not considered a security issue since all such functions execute at the trust level of a database superuser already. </p><p> It is likely that third-party procedural languages that claim to offer trusted execution have similar security issues. We advise contacting the authors of any PL you are depending on for security-critical purposes. </p><p> Our thanks to Tim Bunce for pointing out this issue (CVE-2010-3433). </p></li><li class="listitem"><p> Prevent possible crashes in <code class="function">pg_get_expr()</code> by disallowing it from being called with an argument that is not one of the system catalog columns it's intended to be used with (Heikki Linnakangas, Tom Lane) </p></li><li class="listitem"><p> Treat exit code 128 (<code class="literal">ERROR_WAIT_NO_CHILDREN</code>) as non-fatal on Windows (Magnus Hagander) </p><p> Under high load, Windows processes will sometimes fail at startup with this error code. Formerly the postmaster treated this as a panic condition and restarted the whole database, but that seems to be an overreaction. </p></li><li class="listitem"><p> Fix incorrect usage of non-strict OR joinclauses in Append indexscans (Tom Lane) </p><p> This is a back-patch of an 8.4 fix that was missed in the 8.3 branch. This corrects an error introduced in 8.3.8 that could cause incorrect results for outer joins when the inner relation is an inheritance tree or <code class="literal">UNION ALL</code> subquery. </p></li><li class="listitem"><p> Fix possible duplicate scans of <code class="literal">UNION ALL</code> member relations (Tom Lane) </p></li><li class="listitem"><p> Fix <span class="quote">“<span class="quote">cannot handle unplanned sub-select</span>”</span> error (Tom Lane) </p><p> This occurred when a sub-select contains a join alias reference that expands into an expression containing another sub-select. </p></li><li class="listitem"><p> Fix failure to mark cached plans as transient (Tom Lane) </p><p> If a plan is prepared while <code class="command">CREATE INDEX CONCURRENTLY</code> is in progress for one of the referenced tables, it is supposed to be re-planned once the index is ready for use. This was not happening reliably. </p></li><li class="listitem"><p> Reduce PANIC to ERROR in some occasionally-reported btree failure cases, and provide additional detail in the resulting error messages (Tom Lane) </p><p> This should improve the system's robustness with corrupted indexes. </p></li><li class="listitem"><p> Prevent show_session_authorization() from crashing within autovacuum processes (Tom Lane) </p></li><li class="listitem"><p> Defend against functions returning setof record where not all the returned rows are actually of the same rowtype (Tom Lane) </p></li><li class="listitem"><p> Fix possible failure when hashing a pass-by-reference function result (Tao Ma, Tom Lane) </p></li><li class="listitem"><p> Improve merge join's handling of NULLs in the join columns (Tom Lane) </p><p> A merge join can now stop entirely upon reaching the first NULL, if the sort order is such that NULLs sort high. </p></li><li class="listitem"><p> Take care to fsync the contents of lockfiles (both <code class="filename">postmaster.pid</code> and the socket lockfile) while writing them (Tom Lane) </p><p> This omission could result in corrupted lockfile contents if the machine crashes shortly after postmaster start. That could in turn prevent subsequent attempts to start the postmaster from succeeding, until the lockfile is manually removed. </p></li><li class="listitem"><p> Avoid recursion while assigning XIDs to heavily-nested subtransactions (Andres Freund, Robert Haas) </p><p> The original coding could result in a crash if there was limited stack space. </p></li><li class="listitem"><p> Avoid holding open old WAL segments in the walwriter process (Magnus Hagander, Heikki Linnakangas) </p><p> The previous coding would prevent removal of no-longer-needed segments. </p></li><li class="listitem"><p> Fix <code class="varname">log_line_prefix</code>'s <code class="literal">%i</code> escape, which could produce junk early in backend startup (Tom Lane) </p></li><li class="listitem"><p> Fix possible data corruption in <code class="command">ALTER TABLE ... SET TABLESPACE</code> when archiving is enabled (Jeff Davis) </p></li><li class="listitem"><p> Allow <code class="command">CREATE DATABASE</code> and <code class="command">ALTER DATABASE ... SET TABLESPACE</code> to be interrupted by query-cancel (Guillaume Lelarge) </p></li><li class="listitem"><p> Fix <code class="command">REASSIGN OWNED</code> to handle operator classes and families (Asko Tiidumaa) </p></li><li class="listitem"><p> Fix possible core dump when comparing two empty <code class="type">tsquery</code> values (Tom Lane) </p></li><li class="listitem"><p> Fix <code class="literal">LIKE</code>'s handling of patterns containing <code class="literal">%</code> followed by <code class="literal">_</code> (Tom Lane) </p><p> We've fixed this before, but there were still some incorrectly-handled cases. </p></li><li class="listitem"><p> In PL/Python, defend against null pointer results from <code class="function">PyCObject_AsVoidPtr</code> and <code class="function">PyCObject_FromVoidPtr</code> (Peter Eisentraut) </p></li><li class="listitem"><p> Make psql recognize <code class="command">DISCARD ALL</code> as a command that should not be encased in a transaction block in autocommit-off mode (Itagaki Takahiro) </p></li><li class="listitem"><p> Fix <span class="application">ecpg</span> to process data from <code class="literal">RETURNING</code> clauses correctly (Michael Meskes) </p></li><li class="listitem"><p> Improve <code class="filename">contrib/dblink</code>'s handling of tables containing dropped columns (Tom Lane) </p></li><li class="listitem"><p> Fix connection leak after <span class="quote">“<span class="quote">duplicate connection name</span>”</span> errors in <code class="filename">contrib/dblink</code> (Itagaki Takahiro) </p></li><li class="listitem"><p> Fix <code class="filename">contrib/dblink</code> to handle connection names longer than 62 bytes correctly (Itagaki Takahiro) </p></li><li class="listitem"><p> Add <code class="function">hstore(text, text)</code> function to <code class="filename">contrib/hstore</code> (Robert Haas) </p><p> This function is the recommended substitute for the now-deprecated <code class="literal">=></code> operator. It was back-patched so that future-proofed code can be used with older server versions. Note that the patch will be effective only after <code class="filename">contrib/hstore</code> is installed or reinstalled in a particular database. Users might prefer to execute the <code class="command">CREATE FUNCTION</code> command by hand, instead. </p></li><li class="listitem"><p> Update build infrastructure and documentation to reflect the source code repository's move from CVS to Git (Magnus Hagander and others) </p></li><li class="listitem"><p> Update time zone data files to <span class="application">tzdata</span> release 2010l for DST law changes in Egypt and Palestine; also historical corrections for Finland. </p><p> This change also adds new names for two Micronesian timezones: Pacific/Chuuk is now preferred over Pacific/Truk (and the preferred abbreviation is CHUT not TRUT) and Pacific/Pohnpei is preferred over Pacific/Ponape. </p></li><li class="listitem"><p> Make Windows' <span class="quote">“<span class="quote">N. Central Asia Standard Time</span>”</span> timezone map to Asia/Novosibirsk, not Asia/Almaty (Magnus Hagander) </p><p> Microsoft changed the DST behavior of this zone in the timezone update from KB976098. Asia/Novosibirsk is a better match to its new behavior. </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-8-3-13.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-8-3-11.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">E.192. Release 8.3.13 </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> E.194. Release 8.3.11</td></tr></table></div></body></html>