1
<!-- $PostgreSQL: pgsql/doc/src/sgml/release-8.1.sgml,v 1.1.8.6 2010/05/13 21:27:07 tgl Exp $ -->
1
<!-- doc/src/sgml/release-8.1.sgml -->
2
2
<!-- See header comment in release.sgml about typical markup -->
4
<sect1 id="release-8-1-23">
5
<title>Release 8.1.23</title>
8
<title>Release date</title>
9
<simpara>2010-12-16</simpara>
13
This release contains a variety of fixes from 8.1.22.
14
For information about new features in the 8.1 major release, see
15
<xref linkend="release-8-1">.
19
This is expected to be the last <productname>PostgreSQL</> release
20
in the 8.1.X series. Users are encouraged to update to a newer
25
<title>Migration to Version 8.1.23</title>
28
A dump/restore is not required for those running 8.1.X.
29
However, if you are upgrading from a version earlier than 8.1.18,
30
see the release notes for 8.1.18.
36
<title>Changes</title>
43
<link linkend="guc-wal-sync-method"><varname>wal_sync_method</></link>
44
to be <literal>fdatasync</> on Linux (Tom Lane, Marti Raudsepp)
48
The default on Linux has actually been <literal>fdatasync</> for many
49
years, but recent kernel changes caused <productname>PostgreSQL</> to
50
choose <literal>open_datasync</> instead. This choice did not result
51
in any performance improvement, and caused outright failures on
52
certain filesystems, notably <literal>ext4</> with the
53
<literal>data=journal</> mount option.
59
Fix recovery from base backup when the starting checkpoint WAL record
60
is not in the same WAL segment as its redo point (Jeff Davis)
66
Add support for detecting register-stack overrun on <literal>IA64</>
71
The <literal>IA64</> architecture has two hardware stacks. Full
72
prevention of stack-overrun failures requires checking both.
78
Add a check for stack overflow in <function>copyObject()</> (Tom Lane)
82
Certain code paths could crash due to stack overflow given a
83
sufficiently complex query.
89
Fix detection of page splits in temporary GiST indexes (Heikki
94
It is possible to have a <quote>concurrent</> page split in a
95
temporary index, if for example there is an open cursor scanning the
96
index when an insertion is done. GiST failed to detect this case and
97
hence could deliver wrong results when execution of the cursor
104
Avoid memory leakage while <command>ANALYZE</>'ing complex index
105
expressions (Tom Lane)
111
Ensure an index that uses a whole-row Var still depends on its table
116
An index declared like <literal>create index i on t (foo(t.*))</>
117
would not automatically get dropped when its table was dropped.
123
Do not <quote>inline</> a SQL function with multiple <literal>OUT</>
124
parameters (Tom Lane)
128
This avoids a possible crash due to loss of information about the
129
expected result rowtype.
135
Fix constant-folding of <literal>COALESCE()</> expressions (Tom Lane)
139
The planner would sometimes attempt to evaluate sub-expressions that
140
in fact could never be reached, possibly leading to unexpected errors.
146
Add print functionality for <structname>InhRelation</> nodes (Tom Lane)
150
This avoids a failure when <varname>debug_print_parse</> is enabled
151
and certain types of query are executed.
157
Fix incorrect calculation of distance from a point to a horizontal
158
line segment (Tom Lane)
162
This bug affected several different geometric distance-measurement
169
Fix <application>PL/pgSQL</>'s handling of <quote>simple</>
170
expressions to not fail in recursion or error-recovery cases (Tom Lane)
176
Fix bug in <filename>contrib/cube</>'s GiST picksplit algorithm
181
This could result in considerable inefficiency, though not actually
182
incorrect answers, in a GiST index on a <type>cube</> column.
183
If you have such an index, consider <command>REINDEX</>ing it after
184
installing this update.
190
Don't emit <quote>identifier will be truncated</> notices in
191
<filename>contrib/dblink</> except when creating new connections
198
Fix potential coredump on missing public key in
199
<filename>contrib/pgcrypto</> (Marti Raudsepp)
205
Fix memory leak in <filename>contrib/xml2</>'s XPath query functions
212
Update time zone data files to <application>tzdata</> release 2010o
213
for DST law changes in Fiji and Samoa;
214
also historical corrections for Hong Kong.
223
<sect1 id="release-8-1-22">
224
<title>Release 8.1.22</title>
227
<title>Release date</title>
228
<simpara>2010-10-04</simpara>
232
This release contains a variety of fixes from 8.1.21.
233
For information about new features in the 8.1 major release, see
234
<xref linkend="release-8-1">.
238
The <productname>PostgreSQL</> community will stop releasing updates
239
for the 8.1.X release series in November 2010.
240
Users are encouraged to update to a newer release branch soon.
244
<title>Migration to Version 8.1.22</title>
247
A dump/restore is not required for those running 8.1.X.
248
However, if you are upgrading from a version earlier than 8.1.18,
249
see the release notes for 8.1.18.
255
<title>Changes</title>
261
Use a separate interpreter for each calling SQL userid in PL/Perl and
266
This change prevents security problems that can be caused by subverting
267
Perl or Tcl code that will be executed later in the same session under
268
another SQL user identity (for example, within a <literal>SECURITY
269
DEFINER</> function). Most scripting languages offer numerous ways that
270
that might be done, such as redefining standard functions or operators
271
called by the target function. Without this change, any SQL user with
272
Perl or Tcl language usage rights can do essentially anything with the
273
SQL privileges of the target function's owner.
277
The cost of this change is that intentional communication among Perl
278
and Tcl functions becomes more difficult. To provide an escape hatch,
279
PL/PerlU and PL/TclU functions continue to use only one interpreter
280
per session. This is not considered a security issue since all such
281
functions execute at the trust level of a database superuser already.
285
It is likely that third-party procedural languages that claim to offer
286
trusted execution have similar security issues. We advise contacting
287
the authors of any PL you are depending on for security-critical
292
Our thanks to Tim Bunce for pointing out this issue (CVE-2010-3433).
298
Prevent possible crashes in <function>pg_get_expr()</> by disallowing
299
it from being called with an argument that is not one of the system
300
catalog columns it's intended to be used with
301
(Heikki Linnakangas, Tom Lane)
307
Fix <quote>cannot handle unplanned sub-select</quote> error (Tom Lane)
311
This occurred when a sub-select contains a join alias reference that
312
expands into an expression containing another sub-select.
318
Prevent show_session_authorization() from crashing within autovacuum
325
Defend against functions returning setof record where not all the
326
returned rows are actually of the same rowtype (Tom Lane)
332
Fix possible failure when hashing a pass-by-reference function result
339
Take care to fsync the contents of lockfiles (both
340
<filename>postmaster.pid</> and the socket lockfile) while writing them
345
This omission could result in corrupted lockfile contents if the
346
machine crashes shortly after postmaster start. That could in turn
347
prevent subsequent attempts to start the postmaster from succeeding,
348
until the lockfile is manually removed.
354
Avoid recursion while assigning XIDs to heavily-nested
355
subtransactions (Andres Freund, Robert Haas)
359
The original coding could result in a crash if there was limited
366
Fix <varname>log_line_prefix</>'s <literal>%i</> escape,
367
which could produce junk early in backend startup (Tom Lane)
373
Fix possible data corruption in <command>ALTER TABLE ... SET
374
TABLESPACE</> when archiving is enabled (Jeff Davis)
380
Allow <command>CREATE DATABASE</> and <command>ALTER DATABASE ... SET
381
TABLESPACE</> to be interrupted by query-cancel (Guillaume Lelarge)
387
In PL/Python, defend against null pointer results from
388
<function>PyCObject_AsVoidPtr</> and <function>PyCObject_FromVoidPtr</>
395
Improve <filename>contrib/dblink</>'s handling of tables containing
396
dropped columns (Tom Lane)
402
Fix connection leak after <quote>duplicate connection name</quote>
403
errors in <filename>contrib/dblink</> (Itagaki Takahiro)
409
Fix <filename>contrib/dblink</> to handle connection names longer than
410
62 bytes correctly (Itagaki Takahiro)
416
Update build infrastructure and documentation to reflect the source code
417
repository's move from CVS to Git (Magnus Hagander and others)
423
Update time zone data files to <application>tzdata</> release 2010l
424
for DST law changes in Egypt and Palestine; also historical corrections
429
This change also adds new names for two Micronesian timezones:
430
Pacific/Chuuk is now preferred over Pacific/Truk (and the preferred
431
abbreviation is CHUT not TRUT) and Pacific/Pohnpei is preferred over
4
441
<sect1 id="release-8-1-21">
5
442
<title>Release 8.1.21</title>