11<!--
2- $Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.220 2003/10/2922:54:01 momjian Exp $
2+ $Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.221 2003/10/2923:28:59 momjian Exp $
33-->
44
55<appendix id="release">
@@ -301,19 +301,67 @@ required for those wishing to migrate data from any previous release.</para>
301301<listitem><para>Fix SSL to handle errors cleanly (Nathan Mueller)
302302 <footnote>
303303 <para>
304- In prior releases,
304+ In prior releases, certain rare SSL API error reports were not
305+ handled correctly. This release fixes those problems.
306+ gracefully.
307+ </para>
308+ </footnote>
309+ </para></listitem>
310+ <listitem><para>SSL protocol security and performance improvements (Sean Chittenden)
311+ <footnote>
312+ <para>
313+ SSL key renegotiation was happening too frequently, causing poor SSL
314+ performance. Also, initial key handling was improved.
315+ </para>
316+ </footnote>
317+ </para></listitem>
318+ <listitem><para>Print lock information when a deadlock is detected (Tom)
319+ <footnote>
320+ <para>
321+ This allows easier debugging of deadlock situations.
322+ </para>
323+ </footnote>
324+ </para></listitem>
325+ <listitem><para>Update <filename>/tmp</filename> socket mod. times regularly to avoid their removal (Tom)
326+ <footnote>
327+ <para>
328+ This should help prevent <filename>/tmp</filename> directory cleaner
329+ administration scripts from removing server socket files.
305330 </para>
306331 </footnote>
307332 </para></listitem>
308- <listitem><para>SSL protocol security and performance improvements (Sean Chittenden)</para></listitem>
309- <listitem><para>Print lock information when a deadlock is detected (Tom)</para></listitem>
310- <listitem><para>Update <filename>/tmp</filename> socket mod. times regularly to avoid their removal (Tom)</para></listitem>
311333<listitem><para>Enable PAM for MAC OS X (Aaron Hillegass)</para></listitem>
312- <listitem><para>Make btree indexes fully WAL-safe (Tom)</para></listitem>
334+ <listitem><para>Make btree indexes fully WAL-safe (Tom)
335+ <footnote>
336+ <para>
337+ In prior releases, under certain rare cases, a server crash could
338+ cause btree indexes to become corrupt. This release removes those
339+ last few rare cases.
340+ </para>
341+ </footnote>
342+ </para></listitem>
313343<listitem><para>Allow btree index compaction and empty page reuse (Tom)</para></listitem>
314- <listitem><para>Fix inconsistent index lookups during split of first root page (Tom)</para></listitem>
344+ <listitem><para>Fix inconsistent index lookups during split of first root page (Tom)
345+ <footnote>
346+ <para>
347+ In prior releases, when a single-page index split into two page,
348+ there was a brief period when another database session would miss
349+ seeing an index entry. This failure was possible primarly on
350+ multi-cpu machines. This release fixes that rare failure case.
351+ </para>
352+ </footnote>
353+ </para></listitem>
315354<listitem><para>Improve free space map allocation logic (Tom)</para></listitem>
316- <listitem><para>Preserve free space information between postmaster restarts (Tom)</para></listitem>
355+ <listitem><para>Preserve free space information between postmaster restarts (Tom)
356+ <footnote>
357+ <para>
358+ In prior releases, the free space map was not saved when the
359+ postmaster was stopped, so newly started servers has no free space
360+ information. This release saves the free space map, which is loaded
361+ when the server is restarted.
362+ </para>
363+ </footnote>
364+ </para></listitem>
317365<listitem><para>Set proper schema permissions in initdb (Peter)</para></listitem>
318366<listitem><para>Add start time to pg_stat_activity (Neil)</para></listitem>
319367<listitem><para>New code to detect corrupt disk pages; erase with zero_damaged_pages (Tom)</para></listitem>
@@ -334,12 +382,36 @@ required for those wishing to migrate data from any previous release.</para>
334382<listitem><para>Allow multi-key hash joins (Tom)</para></listitem>
335383<listitem><para>Improve constant folding (Tom)</para></listitem>
336384<listitem><para>Add ability to inline simple SQL functions (Tom)</para></listitem>
337- <listitem><para>Reduce memory usage for queries using complex functions (Tom)</para></listitem>
338- <listitem><para>Improve GEQO optimizer performance (Tom)</para></listitem>
385+ <listitem><para>Reduce memory usage for queries using complex functions (Tom)
386+ <footnote>
387+ <para>
388+ In prior releases, functions returning allocated memory would
389+ not free it until the query completed. This release allows the
390+ freeing of function-allocated memory when the function call
391+ completes, reducing the total memory used by functions.
392+ </para>
393+ </footnote>
394+ </para></listitem>
395+ <listitem><para>Improve GEQO optimizer performance (Tom)
396+ <footnote>
397+ <para>
398+ There were several inefficiencies in the way the GEQO optimizer
399+ managed potential query paths. This release fixes this.
400+ </para>
401+ </footnote>
402+ </para></listitem>
339403<listitem><para>Allow IN/NOT IN to be handled via hash tables (Tom)</para></listitem>
340404<listitem><para>Improve NOT IN (subquery) performance (Tom)</para></listitem>
341405<listitem><para>Allow most IN subqueries to be processed as joins (Tom)</para></listitem>
342- <listitem><para>Allow the postmaster to preload libraries using preload_libraries (Joe)</para></listitem>
406+ <listitem><para>Allow the postmaster to preload libraries using preload_libraries (Joe)
407+ <footnote>
408+ <para>
409+ For shared libraries that require a long time to load, this option
410+ is available so the library can be pre-loaded in the postmaster and
411+ inherited by all database sessions.
412+ </para>
413+ </footnote>
414+ </para></listitem>
343415<listitem><para>Improve optimizer cost computations, particularly for subqueries (Tom)</para></listitem>
344416<listitem><para>Avoid sort when subquery ORDER BY matches upper query (Tom)</para></listitem>
345417<listitem><para>Assume WHERE a.x = b.y and b.y = 42 also means a.x = 42 (Tom)</para></listitem>
@@ -353,15 +425,44 @@ required for those wishing to migrate data from any previous release.</para>
353425<listitem><para>Improve trigger/constraint performance (Stephan)</para></listitem>
354426<listitem><para>Improve speed of col IN (const, const, const, ...) (Tom)</para></listitem>
355427<listitem><para>Fix hash indexes which were broken in rare cases (Tom)</para></listitem>
356- <listitem><para>Improve hash index concurrency and speed (Tom)</para></listitem>
357- <listitem><para>Align shared buffers on 32-byte boundary for copy speed improvement (Manfred Spraul)</para></listitem>
358- <listitem><para>The NUMERIC datatype has been reimplemented for better performance (Tom)</para></listitem>
428+ <listitem><para>Improve hash index concurrency and speed (Tom)
429+ <footnote>
430+ <para>
431+ Prior releases suffered from poor hash index performance,
432+ particularly for high concurrency situations. This release fixes
433+ that, and the development group is interested in reports comparing
434+ btree and hash index performance.
435+ </para>
436+ </footnote>
437+ </para></listitem>
438+ <listitem><para>Align shared buffers on 32-byte boundary for copy speed improvement (Manfred Spraul)
439+ <footnote>
440+ <para>
441+ Certain CPU's perform faster data copies when addresses are 32-bit
442+ aligned.
443+ </para>
444+ </footnote>
445+ </para></listitem>
446+ <listitem><para>The NUMERIC datatype has been reimplemented for better performance (Tom)
447+ <footnote>
448+ <para>
449+ NUMERIC used to be stored in base-100. The new code uses base-10000,
450+ for significantly better performance.
451+ </para>
452+ </footnote>
453+ </para></listitem>
359454</itemizedlist></sect3>
360455
361456<sect3><title>Server Configuration</title>
362457
363458<itemizedlist>
364459<listitem><para>Rename server parameter server_min_messages to log_min_messages (Bruce)</para></listitem>
460+ <footnote>
461+ <para>
462+ This was done so most parameters that control the server logs being
463+ with <literal>log_>/>.
464+ </para>
465+ </footnote>
365466<listitem><para>Rename show_*_stats to log_*_stats (Bruce)</para></listitem>
366467<listitem><para>Rename show_source_port to log_source_port (Bruce)</para></listitem>
367468<listitem><para>Rename hostname_lookup to log_hostname (Bruce)</para></listitem>