~ubuntu-branches/ubuntu/quantal/postgresql-9.1/quantal-proposed

« back to all changes in this revision

Viewing changes to doc/src/sgml/html/release-8-3-17.html

  • Committer: Package Import Robot
  • Author(s): Martin Pitt
  • Date: 2011-12-02 14:39:18 UTC
  • mfrom: (12.1.1 sid)
  • Revision ID: package-import@ubuntu.com-20111202143918-1ftj0oo87w0y8m8d
* New upstream bug fix release:
  - Fix bugs in information_schema.referential_constraints view.
    This view was being insufficiently careful about matching the
    foreign-key constraint to the depended-on primary or unique key
    constraint. That could result in failure to show a foreign key
    constraint at all, or showing it multiple times, or claiming that
    it depends on a different constraint than the one it really does.
    Since the view definition is installed by initdb, merely upgrading
    will not fix the problem. If you need to fix this in an existing
    installation, you can (as a superuser) drop the information_schema
    schema then re-create it by sourcing
    "SHAREDIR/information_schema.sql". (Run pg_config --sharedir if
    you're uncertain where "SHAREDIR" is.) This must be repeated in
    each database to be fixed.
  - Make "contrib/citext"'s upgrade script fix collations of citext
    columns and indexes.
    Existing citext columns and indexes aren't correctly marked as
    being of a collatable data type during pg_upgrade from a pre-9.1
    server. That leads to operations on them failing with errors such
    as "could not determine which collation to use for string
    comparison". This change allows them to be fixed by the same script
    that upgrades the citext module into a proper 9.1 extension during
    CREATE EXTENSION citext FROM unpackaged.
    If you have a previously-upgraded database that is suffering from
    this problem, and you already ran the "CREATE EXTENSION" command,
    you can manually run (as superuser) the "UPDATE" commands found at
    the end of "SHAREDIR/extension/citext--unpackaged--1.0.sql". (Run
    pg_config --sharedir if you're uncertain where "SHAREDIR" is.)
  - Fix possible crash during "UPDATE" or "DELETE" that joins to the
    output of a scalar-returning function.
  - Fix incorrect replay of WAL records for GIN index updates.
  - Fix TOAST-related data corruption during CREATE TABLE dest AS
    SELECT - FROM src or INSERT INTO dest SELECT * FROM src.
  - Fix possible failures during hot standby startup.
  - Start hot standby faster when initial snapshot is incomplete.
  - Fix race condition during toast table access from stale syscache
    entries. The typical symptom was transient errors like "missing chunk
    number 0 for toast value NNNNN in pg_toast_2619", where the cited toast
    table would always belong to a system catalog.
  - Track dependencies of functions on items used in parameter default
    expressions. Previously, a referenced object could be dropped without
    having dropped or modified the function, leading to misbehavior when
    the function was used. Note that merely installing this update will not
    fix the missing dependency entries; to do that, you'd need to
    "CREATE OR REPLACE" each such function afterwards. If you have
    functions whose defaults depend on non-built-in objects, doing so
    is recommended.
  - Fix incorrect management of placeholder variables in nestloop joins.
    This bug is known to lead to "variable not found in subplan target
    list" planner errors, and could possibly result in wrong query
    output when outer joins are involved.
  - Fix window functions that sort by expressions involving aggregates.
  - Fix "MergeAppend child's targetlist doesn't match MergeAppend"
    planner errors.
  - Fix index matching for operators with both collatable and
    noncollatable inputs. In 9.1.0, an indexable operator that has a
    non-collatable left-hand input type and a collatable right-hand input
    type would not be recognized as matching the left-hand column's index.
    An example is the hstore ? text operator.
  - Allow inlining of set-returning SQL functions with multiple OUT
    parameters.
  - Don't trust deferred-unique indexes for join removal.
  - Make DatumGetInetP() unpack inet datums that have a 1-byte header,
    and add a new macro, DatumGetInetPP(), that does not.
  - Improve locale support in money type's input and output.
    Aside from not supporting all standard lc_monetary formatting
    options, the input and output functions were inconsistent, meaning
    there were locales in which dumped money values could not be
    re-read.
  - Don't let transform_null_equals affect CASE foo WHEN NULL ...
    constructs.  transform_null_equals is only supposed to affect foo =
    NULL expressions written directly by the user, not equality checks
    generated internally by this form of CASE.
  - Change foreign-key trigger creation order to better support
    self-referential foreign keys.
  - Fix IF EXISTS to work correctly in "DROP OPERATOR FAMILY".
  - Disallow dropping of an extension from within its own script.
  - Don't mark auto-generated types as extension members.
  - Cope with invalid pre-existing search_path settings during "CREATE
    EXTENSION".
  - Avoid floating-point underflow while tracking buffer allocation
    rate.
  - Prevent autovacuum transactions from running in serializable mode.
    Autovacuum formerly used the cluster-wide default transaction
    isolation level, but there is no need for it to use anything higher
    than READ COMMITTED, and using SERIALIZABLE could result in
    unnecessary delays for other processes.
  - Ensure walsender processes respond promptly to SIGTERM.
  - Exclude "postmaster.opts" from base backups.
  - Fix incorrect field alignment in ecpg's SQLDA area.
  - Preserve blank lines within commands in psql's command history.
    The former behavior could cause problems if an empty line was
    removed from within a string literal, for example.
  - Avoid platform-specific infinite loop in pg_dump.
  - Fix compression of plain-text output format in pg_dump.
    pg_dump has historically understood -Z with no -F switch to mean
    that it should emit a gzip-compressed version of its plain text
    output. Restore that behavior.
  - Fix pg_dump to dump user-defined casts between auto-generated
    types, such as table rowtypes.
  - Fix missed quoting of foreign server names in pg_dump.
  - Assorted fixes for pg_upgrade. Handle exclusion constraints correctly,
    avoid failures on Windows, don't complain about mismatched toast table
    names in 8.4 databases.
  - In PL/pgSQL, allow foreign tables to define row types.
  - Fix up conversions of PL/Perl functions' results.
    Restore the pre-9.1 behavior that PL/Perl functions returning void
    ignore the result value of their last Perl statement; 9.1.0 would
    throw an error if that statement returned a reference. Also, make
    sure it works to return a string value for a composite type, so
    long as the string meets the type's input format. In addition,
    throw errors for attempts to return Perl arrays or hashes when the
    function's declared result type is not an array or composite type,
    respectively. (Pre-9.1 versions rather uselessly returned strings
    like ARRAY(0x221a9a0) or HASH(0x221aa90) in such cases.)
  - Ensure PL/Perl strings are always correctly UTF8-encoded.
  - Use the preferred version of xsubpp to build PL/Perl, not
    necessarily the operating system's main copy.
  - Correctly propagate SQLSTATE in PL/Python exceptions.
  - Do not install PL/Python extension files for Python major versions
    other than the one built against.
  - Change all the "contrib" extension script files to report a useful
    error message if they are fed to psql. This should help teach people
    about the new method of using "CREATE EXTENSION" to load these files.
    In most cases, sourcing the scripts directly would fail anyway, but
    with harder-to-interpret messages.
  - Fix incorrect coding in "contrib/dict_int" and "contrib/dict_xsyn".
  - Remove "contrib/sepgsql" tests from the regular regression test
    mechanism. Since these tests require root privileges for setup, they're
    impractical to run automatically. Switch over to a manual approach
    instead, and provide a testing script to help with that.
  - Fix assorted errors in "contrib/unaccent"'s configuration file
    parsing.
  - Honor query cancel interrupts promptly in pgstatindex().
  - Revert unintentional enabling of WAL_DEBUG. Fortunately, as debugging
    tools go, this one is pretty cheap; but it's not intended to be enabled
    by default, so revert.
  - Ensure VPATH builds properly install all server header files.
  - Shorten file names reported in verbose error messages.
    Regular builds have always reported just the name of the C file
    containing the error message call, but VPATH builds formerly
    reported an absolute path name.
* debian/rules: Fix build failure for binary-indep-only builds.
  (Closes: #646079)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 
2
<HTML
 
3
><HEAD
 
4
><TITLE
 
5
>Release 8.3.17</TITLE
 
6
><META
 
7
NAME="GENERATOR"
 
8
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
 
9
REV="MADE"
 
10
HREF="mailto:pgsql-docs@postgresql.org"><LINK
 
11
REL="HOME"
 
12
TITLE="PostgreSQL 9.1.2 Documentation"
 
13
HREF="index.html"><LINK
 
14
REL="UP"
 
15
TITLE="Release Notes"
 
16
HREF="release.html"><LINK
 
17
REL="PREVIOUS"
 
18
TITLE="Release 8.4"
 
19
HREF="release-8-4.html"><LINK
 
20
REL="NEXT"
 
21
TITLE="Release 8.3.16"
 
22
HREF="release-8-3-16.html"><LINK
 
23
REL="STYLESHEET"
 
24
TYPE="text/css"
 
25
HREF="stylesheet.css"><META
 
26
HTTP-EQUIV="Content-Type"
 
27
CONTENT="text/html; charset=ISO-8859-1"><META
 
28
NAME="creation"
 
29
CONTENT="2011-12-01T22:07:59"></HEAD
 
30
><BODY
 
31
CLASS="SECT1"
 
32
><DIV
 
33
CLASS="NAVHEADER"
 
34
><TABLE
 
35
SUMMARY="Header navigation table"
 
36
WIDTH="100%"
 
37
BORDER="0"
 
38
CELLPADDING="0"
 
39
CELLSPACING="0"
 
40
><TR
 
41
><TH
 
42
COLSPAN="5"
 
43
ALIGN="center"
 
44
VALIGN="bottom"
 
45
><A
 
46
HREF="index.html"
 
47
>PostgreSQL 9.1.2 Documentation</A
 
48
></TH
 
49
></TR
 
50
><TR
 
51
><TD
 
52
WIDTH="10%"
 
53
ALIGN="left"
 
54
VALIGN="top"
 
55
><A
 
56
TITLE="Release 8.4"
 
57
HREF="release-8-4.html"
 
58
ACCESSKEY="P"
 
59
>Prev</A
 
60
></TD
 
61
><TD
 
62
WIDTH="10%"
 
63
ALIGN="left"
 
64
VALIGN="top"
 
65
><A
 
66
HREF="release.html"
 
67
ACCESSKEY="U"
 
68
>Up</A
 
69
></TD
 
70
><TD
 
71
WIDTH="60%"
 
72
ALIGN="center"
 
73
VALIGN="bottom"
 
74
>Appendix E. Release Notes</TD
 
75
><TD
 
76
WIDTH="20%"
 
77
ALIGN="right"
 
78
VALIGN="top"
 
79
><A
 
80
TITLE="Release 8.3.16"
 
81
HREF="release-8-3-16.html"
 
82
ACCESSKEY="N"
 
83
>Next</A
 
84
></TD
 
85
></TR
 
86
></TABLE
 
87
><HR
 
88
ALIGN="LEFT"
 
89
WIDTH="100%"></DIV
 
90
><DIV
 
91
CLASS="SECT1"
 
92
><H1
 
93
CLASS="SECT1"
 
94
><A
 
95
NAME="RELEASE-8-3-17"
 
96
>E.22. Release 8.3.17</A
 
97
></H1
 
98
><DIV
 
99
CLASS="NOTE"
 
100
><BLOCKQUOTE
 
101
CLASS="NOTE"
 
102
><P
 
103
><B
 
104
>Release Date: </B
 
105
>2011-12-05</P
 
106
></BLOCKQUOTE
 
107
></DIV
 
108
><P
 
109
>   This release contains a variety of fixes from 8.3.16.
 
110
   For information about new features in the 8.3 major release, see
 
111
   <A
 
112
HREF="release-8-3.html"
 
113
>Section E.39</A
 
114
>.
 
115
  </P
 
116
><DIV
 
117
CLASS="SECT2"
 
118
><H2
 
119
CLASS="SECT2"
 
120
><A
 
121
NAME="AEN113378"
 
122
>E.22.1. Migration to Version 8.3.17</A
 
123
></H2
 
124
><P
 
125
>    A dump/restore is not required for those running 8.3.X.
 
126
   </P
 
127
><P
 
128
>    However, a longstanding error was discovered in the definition of the
 
129
    <TT
 
130
CLASS="LITERAL"
 
131
>information_schema.referential_constraints</TT
 
132
> view.  If you
 
133
    rely on correct results from that view, you should replace its
 
134
    definition as explained in the first changelog item below.
 
135
   </P
 
136
><P
 
137
>    Also, if you are upgrading from a version earlier than 8.3.8,
 
138
    see the release notes for 8.3.8.
 
139
   </P
 
140
></DIV
 
141
><DIV
 
142
CLASS="SECT2"
 
143
><H2
 
144
CLASS="SECT2"
 
145
><A
 
146
NAME="AEN113384"
 
147
>E.22.2. Changes</A
 
148
></H2
 
149
><P
 
150
></P
 
151
><UL
 
152
><LI
 
153
><P
 
154
>      Fix bugs in <TT
 
155
CLASS="LITERAL"
 
156
>information_schema.referential_constraints</TT
 
157
> view
 
158
      (Tom Lane)
 
159
     </P
 
160
><P
 
161
>      This view was being insufficiently careful about matching the
 
162
      foreign-key constraint to the depended-on primary or unique key
 
163
      constraint.  That could result in failure to show a foreign key
 
164
      constraint at all, or showing it multiple times, or claiming that it
 
165
      depends on a different constraint than the one it really does.
 
166
     </P
 
167
><P
 
168
>      Since the view definition is installed by <SPAN
 
169
CLASS="APPLICATION"
 
170
>initdb</SPAN
 
171
>,
 
172
      merely upgrading will not fix the problem.  If you need to fix this
 
173
      in an existing installation, you can (as a superuser) drop the
 
174
      <TT
 
175
CLASS="LITERAL"
 
176
>information_schema</TT
 
177
> schema then re-create it by sourcing
 
178
      <TT
 
179
CLASS="FILENAME"
 
180
><TT
 
181
CLASS="REPLACEABLE"
 
182
><I
 
183
>SHAREDIR</I
 
184
></TT
 
185
>/information_schema.sql</TT
 
186
>.
 
187
      (Run <TT
 
188
CLASS="LITERAL"
 
189
>pg_config --sharedir</TT
 
190
> if you're uncertain where
 
191
      <TT
 
192
CLASS="REPLACEABLE"
 
193
><I
 
194
>SHAREDIR</I
 
195
></TT
 
196
> is.)  This must be repeated in each database
 
197
      to be fixed.
 
198
     </P
 
199
></LI
 
200
><LI
 
201
><P
 
202
>      Fix TOAST-related data corruption during <TT
 
203
CLASS="LITERAL"
 
204
>CREATE TABLE dest AS
 
205
      SELECT * FROM src</TT
 
206
> or <TT
 
207
CLASS="LITERAL"
 
208
>INSERT INTO dest SELECT * FROM src</TT
 
209
>
 
210
      (Tom Lane)
 
211
     </P
 
212
><P
 
213
>      If a table has been modified by <TT
 
214
CLASS="COMMAND"
 
215
>ALTER TABLE ADD COLUMN</TT
 
216
>,
 
217
      attempts to copy its data verbatim to another table could produce
 
218
      corrupt results in certain corner cases.
 
219
      The problem can only manifest in this precise form in 8.4 and later,
 
220
      but we patched earlier versions as well in case there are other code
 
221
      paths that could trigger the same bug.
 
222
     </P
 
223
></LI
 
224
><LI
 
225
><P
 
226
>      Fix race condition during toast table access from stale syscache entries
 
227
      (Tom Lane)
 
228
     </P
 
229
><P
 
230
>      The typical symptom was transient errors like <SPAN
 
231
CLASS="QUOTE"
 
232
>"missing chunk
 
233
      number 0 for toast value NNNNN in pg_toast_2619"</SPAN
 
234
>, where the cited
 
235
      toast table would always belong to a system catalog.
 
236
     </P
 
237
></LI
 
238
><LI
 
239
><P
 
240
>      Make <CODE
 
241
CLASS="FUNCTION"
 
242
>DatumGetInetP()</CODE
 
243
> unpack inet datums that have a 1-byte
 
244
      header, and add a new macro, <CODE
 
245
CLASS="FUNCTION"
 
246
>DatumGetInetPP()</CODE
 
247
>, that does
 
248
      not (Heikki Linnakangas)
 
249
     </P
 
250
><P
 
251
>      This change affects no core code, but might prevent crashes in add-on
 
252
      code that expects <CODE
 
253
CLASS="FUNCTION"
 
254
>DatumGetInetP()</CODE
 
255
> to produce an unpacked
 
256
      datum as per usual convention.
 
257
     </P
 
258
></LI
 
259
><LI
 
260
><P
 
261
>      Improve locale support in <TT
 
262
CLASS="TYPE"
 
263
>money</TT
 
264
> type's input and output
 
265
      (Tom Lane)
 
266
     </P
 
267
><P
 
268
>      Aside from not supporting all standard
 
269
      <A
 
270
HREF="runtime-config-client.html#GUC-LC-MONETARY"
 
271
><TT
 
272
CLASS="VARNAME"
 
273
>lc_monetary</TT
 
274
></A
 
275
>
 
276
      formatting options, the input and output functions were inconsistent,
 
277
      meaning there were locales in which dumped <TT
 
278
CLASS="TYPE"
 
279
>money</TT
 
280
> values could
 
281
      not be re-read.
 
282
     </P
 
283
></LI
 
284
><LI
 
285
><P
 
286
>      Don't let <A
 
287
HREF="runtime-config-compatible.html#GUC-TRANSFORM-NULL-EQUALS"
 
288
><TT
 
289
CLASS="VARNAME"
 
290
>transform_null_equals</TT
 
291
></A
 
292
>
 
293
      affect <TT
 
294
CLASS="LITERAL"
 
295
>CASE foo WHEN NULL ...</TT
 
296
> constructs
 
297
      (Heikki Linnakangas)
 
298
     </P
 
299
><P
 
300
>      <TT
 
301
CLASS="VARNAME"
 
302
>transform_null_equals</TT
 
303
> is only supposed to affect
 
304
      <TT
 
305
CLASS="LITERAL"
 
306
>foo = NULL</TT
 
307
> expressions written directly by the user, not
 
308
      equality checks generated internally by this form of <TT
 
309
CLASS="LITERAL"
 
310
>CASE</TT
 
311
>.
 
312
     </P
 
313
></LI
 
314
><LI
 
315
><P
 
316
>      Change foreign-key trigger creation order to better support
 
317
      self-referential foreign keys (Tom Lane)
 
318
     </P
 
319
><P
 
320
>      For a cascading foreign key that references its own table, a row update
 
321
      will fire both the <TT
 
322
CLASS="LITERAL"
 
323
>ON UPDATE</TT
 
324
> trigger and the
 
325
      <TT
 
326
CLASS="LITERAL"
 
327
>CHECK</TT
 
328
> trigger as one event.  The <TT
 
329
CLASS="LITERAL"
 
330
>ON UPDATE</TT
 
331
>
 
332
      trigger must execute first, else the <TT
 
333
CLASS="LITERAL"
 
334
>CHECK</TT
 
335
> will check a
 
336
      non-final state of the row and possibly throw an inappropriate error.
 
337
      However, the firing order of these triggers is determined by their
 
338
      names, which generally sort in creation order since the triggers have
 
339
      auto-generated names following the convention
 
340
      <SPAN
 
341
CLASS="QUOTE"
 
342
>"RI_ConstraintTrigger_NNNN"</SPAN
 
343
>.  A proper fix would require
 
344
      modifying that convention, which we will do in 9.2, but it seems risky
 
345
      to change it in existing releases.  So this patch just changes the
 
346
      creation order of the triggers.  Users encountering this type of error
 
347
      should drop and re-create the foreign key constraint to get its
 
348
      triggers into the right order.
 
349
     </P
 
350
></LI
 
351
><LI
 
352
><P
 
353
>      Avoid floating-point underflow while tracking buffer allocation rate
 
354
      (Greg Matthews)
 
355
     </P
 
356
><P
 
357
>      While harmless in itself, on certain platforms this would result in
 
358
      annoying kernel log messages.
 
359
     </P
 
360
></LI
 
361
><LI
 
362
><P
 
363
>      Preserve blank lines within commands in <SPAN
 
364
CLASS="APPLICATION"
 
365
>psql</SPAN
 
366
>'s command
 
367
      history (Robert Haas)
 
368
     </P
 
369
><P
 
370
>      The former behavior could cause problems if an empty line was removed
 
371
      from within a string literal, for example.
 
372
     </P
 
373
></LI
 
374
><LI
 
375
><P
 
376
>      Fix <SPAN
 
377
CLASS="APPLICATION"
 
378
>pg_dump</SPAN
 
379
> to dump user-defined casts between
 
380
      auto-generated types, such as table rowtypes (Tom Lane)
 
381
     </P
 
382
></LI
 
383
><LI
 
384
><P
 
385
>      Use the preferred version of <SPAN
 
386
CLASS="APPLICATION"
 
387
>xsubpp</SPAN
 
388
> to build PL/Perl,
 
389
      not necessarily the operating system's main copy
 
390
      (David Wheeler and Alex Hunsaker)
 
391
     </P
 
392
></LI
 
393
><LI
 
394
><P
 
395
>      Fix incorrect coding in <TT
 
396
CLASS="FILENAME"
 
397
>contrib/dict_int</TT
 
398
> and
 
399
      <TT
 
400
CLASS="FILENAME"
 
401
>contrib/dict_xsyn</TT
 
402
> (Tom Lane)
 
403
     </P
 
404
><P
 
405
>      Some functions incorrectly assumed that memory returned by
 
406
      <CODE
 
407
CLASS="FUNCTION"
 
408
>palloc()</CODE
 
409
> is guaranteed zeroed.
 
410
     </P
 
411
></LI
 
412
><LI
 
413
><P
 
414
>      Honor query cancel interrupts promptly in <CODE
 
415
CLASS="FUNCTION"
 
416
>pgstatindex()</CODE
 
417
>
 
418
      (Robert Haas)
 
419
     </P
 
420
></LI
 
421
><LI
 
422
><P
 
423
>      Ensure VPATH builds properly install all server header files
 
424
      (Peter Eisentraut)
 
425
     </P
 
426
></LI
 
427
><LI
 
428
><P
 
429
>      Shorten file names reported in verbose error messages (Peter Eisentraut)
 
430
     </P
 
431
><P
 
432
>      Regular builds have always reported just the name of the C file
 
433
      containing the error message call, but VPATH builds formerly
 
434
      reported an absolute path name.
 
435
     </P
 
436
></LI
 
437
><LI
 
438
><P
 
439
>      Fix interpretation of Windows timezone names for Central America
 
440
      (Tom Lane)
 
441
     </P
 
442
><P
 
443
>      Map <SPAN
 
444
CLASS="QUOTE"
 
445
>"Central America Standard Time"</SPAN
 
446
> to <TT
 
447
CLASS="LITERAL"
 
448
>CST6</TT
 
449
>, not
 
450
      <TT
 
451
CLASS="LITERAL"
 
452
>CST6CDT</TT
 
453
>, because DST is generally not observed anywhere in
 
454
      Central America.
 
455
     </P
 
456
></LI
 
457
><LI
 
458
><P
 
459
>      Update time zone data files to <SPAN
 
460
CLASS="APPLICATION"
 
461
>tzdata</SPAN
 
462
> release 2011n
 
463
      for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
 
464
      also historical corrections for Alaska and British East Africa.
 
465
     </P
 
466
></LI
 
467
></UL
 
468
></DIV
 
469
></DIV
 
470
><DIV
 
471
CLASS="NAVFOOTER"
 
472
><HR
 
473
ALIGN="LEFT"
 
474
WIDTH="100%"><TABLE
 
475
SUMMARY="Footer navigation table"
 
476
WIDTH="100%"
 
477
BORDER="0"
 
478
CELLPADDING="0"
 
479
CELLSPACING="0"
 
480
><TR
 
481
><TD
 
482
WIDTH="33%"
 
483
ALIGN="left"
 
484
VALIGN="top"
 
485
><A
 
486
HREF="release-8-4.html"
 
487
ACCESSKEY="P"
 
488
>Prev</A
 
489
></TD
 
490
><TD
 
491
WIDTH="34%"
 
492
ALIGN="center"
 
493
VALIGN="top"
 
494
><A
 
495
HREF="index.html"
 
496
ACCESSKEY="H"
 
497
>Home</A
 
498
></TD
 
499
><TD
 
500
WIDTH="33%"
 
501
ALIGN="right"
 
502
VALIGN="top"
 
503
><A
 
504
HREF="release-8-3-16.html"
 
505
ACCESSKEY="N"
 
506
>Next</A
 
507
></TD
 
508
></TR
 
509
><TR
 
510
><TD
 
511
WIDTH="33%"
 
512
ALIGN="left"
 
513
VALIGN="top"
 
514
>Release 8.4</TD
 
515
><TD
 
516
WIDTH="34%"
 
517
ALIGN="center"
 
518
VALIGN="top"
 
519
><A
 
520
HREF="release.html"
 
521
ACCESSKEY="U"
 
522
>Up</A
 
523
></TD
 
524
><TD
 
525
WIDTH="33%"
 
526
ALIGN="right"
 
527
VALIGN="top"
 
528
>Release 8.3.16</TD
 
529
></TR
 
530
></TABLE
 
531
></DIV
 
532
></BODY
 
533
></HTML
 
534
>
 
 
b'\\ No newline at end of file'