|
1 |
| -<!-- $PostgreSQL: pgsql/doc/src/sgml/release-8.5.sgml,v 1.11 2009/12/19 00:05:27 rhaas Exp $ --> |
| 1 | +<!-- $PostgreSQL: pgsql/doc/src/sgml/release-8.5.sgml,v 1.12 2009/12/19 02:38:54 tgl Exp $ --> |
2 | 2 |
|
3 | 3 | <sect1 id="release-8-5">
|
4 | 4 | <title>Release 8.5alpha3</title>
|
|
55 | 55 | <sect2>
|
56 | 56 | <title>Testing</title>
|
57 | 57 | <para>
|
58 |
| - The primary reason we release alphas is to get users to test new |
| 58 | + The primary reason we release alphas is to get users to test new |
59 | 59 | features as early as possible. If you are interested in helping
|
60 |
| - with organized testing, please see |
61 |
| - <ulink url="http://wiki.postgresql.org/wiki/HowToBetaTest">the |
| 60 | + with organized testing, please see |
| 61 | + <ulink url="http://wiki.postgresql.org/wiki/HowToBetaTest">the |
62 | 62 | testing information page</ulink>.
|
63 | 63 | </para>
|
64 | 64 | </sect2>
|
|
77 | 77 | <listitem>
|
78 | 78 | <para>
|
79 | 79 | <emphasis>Performance and behavioral improvements in UPDATE,
|
80 |
| - DELETE, and SELECT FOR UPDATE/SHARE queries with |
81 |
| - joins. Various corner-cases could result in duplicated output |
| 80 | + DELETE, and SELECT FOR UPDATE/SHARE queries with joins. |
| 81 | + Fix various corner cases that could have resulted in duplicated output |
82 | 82 | rows. Set-returning functions are now prohibited in the
|
83 | 83 | target list of SELECT FOR UPDATE/SHARE. FOR UPDATE does not
|
84 | 84 | propagate into a WITH query anymore.</emphasis>
|
85 | 85 | </para>
|
86 | 86 | </listitem>
|
87 | 87 | <listitem>
|
88 | 88 | <para>
|
89 |
| - <emphasis>Fixed for SELECT FOR UPDATE/SHARE in conjuction with LIMIT. |
| 89 | + <emphasis>Fix SELECT FOR UPDATE/SHARE in conjunction with LIMIT. |
90 | 90 | Previously, it could return fewer rows than the limit specified.</emphasis>
|
91 | 91 | </para>
|
92 | 92 | </listitem>
|
|
122 | 122 | </para>
|
123 | 123 | <para>
|
124 | 124 | <emphasis>Behavioral change: formerly, agg(DISTINCT x) dropped null values of
|
125 |
| - x unconditionally. Now, it does so only if the agg transition |
| 125 | + x unconditionally. Now, it does so only if the aggregate's transition |
126 | 126 | function is strict; otherwise nulls are treated as DISTINCT
|
127 | 127 | normally would, i.e., you get one copy.</emphasis>
|
128 | 128 | </para>
|
|
214 | 214 | <itemizedlist>
|
215 | 215 | <listitem>
|
216 | 216 | <para>
|
217 |
| - <emphasis>Allow rewriting ALTER TABLE to skip WAL logging.</emphasis> |
| 217 | + <emphasis>Allow rewriting forms of ALTER TABLE to skip WAL |
| 218 | + logging.</emphasis> |
218 | 219 | </para>
|
219 | 220 | </listitem>
|
220 | 221 | <listitem>
|
221 | 222 | <para>
|
222 |
| - <emphasis>Speed up information schema privilege views.</emphasis> |
| 223 | + <emphasis>Speed up INFORMATION_SCHEMA's privilege views.</emphasis> |
223 | 224 | </para>
|
224 | 225 | </listitem>
|
225 | 226 | <listitem>
|
|
324 | 325 | interruptions.</emphasis>
|
325 | 326 | </para>
|
326 | 327 | </listitem>
|
327 |
| - <listitem> |
328 |
| - <para> |
329 |
| - <emphasis>Error when a specified connection service is not found in |
330 |
| - pg_service.conf, instead of ignoring it.</emphasis> |
331 |
| - </para> |
332 |
| - </listitem> |
333 | 328 | <listitem>
|
334 | 329 | <para>
|
335 | 330 | <emphasis>Add YAML to list of EXPLAIN formats.</emphasis>
|
|
474 | 469 | <emphasis>Teach the regular expression functions to do case-insensitive
|
475 | 470 | matching and locale-dependent character classification properly
|
476 | 471 | when the database encoding is UTF8. This previously only worked
|
477 |
| - correct for single-byte encodings and is still broken for other |
| 472 | + correctly for single-byte encodings. It is still broken for other |
478 | 473 | multibyte encodings.</emphasis>
|
479 | 474 | </para>
|
480 | 475 | </listitem>
|
|
583 | 578 | </listitem>
|
584 | 579 | </itemizedlist>
|
585 | 580 | </sect3>
|
| 581 | + <sect3> |
| 582 | + <title>libpq</title> |
| 583 | + <itemizedlist> |
| 584 | + <listitem> |
| 585 | + <para> |
| 586 | + <emphasis>Throw error when a specified connection service name is not |
| 587 | + found in pg_service.conf, instead of ignoring it.</emphasis> |
| 588 | + </para> |
| 589 | + </listitem> |
| 590 | + <listitem> |
| 591 | + <para> |
| 592 | + Make libpq reject non-numeric and out-of-range port numbers with a |
| 593 | + suitable error message. |
| 594 | + </para> |
| 595 | + </listitem> |
| 596 | + </itemizedlist> |
| 597 | + </sect3> |
586 | 598 | <sect3>
|
587 | 599 | <title>psql</title>
|
588 | 600 | <itemizedlist>
|
|
666 | 678 | go, ie, a place where a column value or parameter would be legal,
|
667 | 679 | instead of the former behavior that would replace any textual match
|
668 | 680 | including table names and column aliases (leading to syntax errors
|
669 |
| - later on). PL/pgSQL variable names that match fully-reserved words |
670 |
| - will now need to be quoted. On the other hand, a number of |
671 |
| - PL/pgSQL-specific words were de-reserved.</emphasis> |
| 681 | + later on).</emphasis> |
672 | 682 | </para>
|
673 | 683 | <para>
|
674 |
| - <emphasis>The variable resolution behavior is by default not backward |
675 |
| - compatible, but can be configured; see documentation.</emphasis> |
| 684 | + <emphasis>When a name could refer either to a PL/pgSQL variable or a |
| 685 | + table column, PL/pgSQL formerly always assumed the variable was |
| 686 | + meant, sometimes resulting in surprising behavior. Now, PL/pgSQL |
| 687 | + can assume the variable is meant, or assume the table column is |
| 688 | + meant, or throw an error in ambiguous cases. For safety the default |
| 689 | + is to throw error. To configure this see <xref |
| 690 | + linkend="plpgsql-var-subst">.</emphasis> |
676 | 691 | </para>
|
677 | 692 | <para>
|
678 |
| - <emphasis>Error reporting is much nicer and accurate.</emphasis> |
| 693 | + <emphasis>Error reporting is much nicer: it no longer shows edited |
| 694 | + versions of statements that look significantly different from what |
| 695 | + you wrote.</emphasis> |
679 | 696 | </para>
|
680 | 697 | <para>
|
681 |
| - <emphasis>The argument of WHERE CURRENT OF can be a PL/pgSQL cursor variable.</emphasis> |
| 698 | + <emphasis>Note that this change affects the set of keywords that are |
| 699 | + reserved in PL/pgSQL (i.e., cannot be the name of a PL/pgSQL |
| 700 | + variable). Now, all keywords shown as reserved in <xref |
| 701 | + linkend="sql-keywords-appendix"> are reserved for PL/pgSQL purposes |
| 702 | + as well. However, many PL/pgSQL-only keywords that were formerly |
| 703 | + treated as reserved no longer are. As in regular SQL, you can |
| 704 | + double-quote a variable's name if you want to use a name that |
| 705 | + conflicts with a reserved keyword.</emphasis> |
682 | 706 | </para>
|
683 | 707 | </listitem>
|
684 | 708 | <listitem>
|
|
694 | 718 | </listitem>
|
695 | 719 | <listitem>
|
696 | 720 | <para>
|
697 |
| - <emphasis>Python 3 support in PL/Python; behaves more or less unchanged |
698 |
| - compared to Python 2, but the new language variant is called |
699 |
| - plpython3u.</emphasis> |
| 721 | + <emphasis>Add Python 3 support to PL/Python. It behaves more or less |
| 722 | + unchanged compared to Python 2, but the new language variant is |
| 723 | + called plpython3u.</emphasis> |
700 | 724 | </para>
|
701 | 725 | </listitem>
|
702 | 726 | <listitem>
|
|
749 | 773 | </listitem>
|
750 | 774 | <listitem>
|
751 | 775 | <para>
|
752 |
| - Allow cursor commands MOVE FORWARD n, MOVE BACKWARD n, |
| 776 | + Allow cursor commands MOVE FORWARD n, MOVE BACKWARD n, |
753 | 777 | MOVE FORWARD ALL, MOVE BACKWARD ALL in PL/pgSQL.
|
754 | 778 | </para>
|
755 | 779 | </listitem>
|
|
780 | 804 | <emphasis>Add \shell and \setshell meta commands to pgbench.</emphasis>
|
781 | 805 | </para>
|
782 | 806 | <para>
|
783 |
| - <emphasis>\shell command runs an external shell command. \setshell also does |
784 |
| - the same and sets the result to a variable.</emphasis> |
| 807 | + <emphasis>\shell runs an external shell command. \setshell |
| 808 | + does the same and assigns the result to a variable.</emphasis> |
785 | 809 | </para>
|
786 | 810 | </listitem>
|
787 | 811 | <listitem>
|
|
818 | 842 | </itemizedlist>
|
819 | 843 | </sect3>
|
820 | 844 | <sect3>
|
821 |
| - <title>Development</title> |
| 845 | + <title>ecpg</title> |
822 | 846 | <itemizedlist>
|
823 | 847 | <listitem>
|
824 | 848 | <para>
|
|
842 | 866 | Make ECPG more robust against applications freeing strings.
|
843 | 867 | </para>
|
844 | 868 | </listitem>
|
845 |
| - <listitem> |
846 |
| - <para> |
847 |
| - Make libpq reject non-numeric and out-of-range port numbers with a |
848 |
| - suitable error message. |
849 |
| - </para> |
850 |
| - </listitem> |
851 |
| - <listitem> |
852 |
| - <para> |
853 |
| - Functions which conflict with C++ reserved words have been renamed, |
854 |
| - making backend header files now safe to use with C++ libraries. |
855 |
| - </para> |
856 |
| - </listitem> |
857 |
| - <listitem> |
858 |
| - <para> |
859 |
| - Add man pages for SPI functions. |
860 |
| - </para> |
861 |
| - </listitem> |
862 | 869 | <listitem>
|
863 | 870 | <para>
|
864 | 871 | ECPG now includes a STRING datatype for Informix compatibility
|
|
934 | 941 | <para>
|
935 | 942 | Derived files that are shipped in the distribution used to be
|
936 | 943 | built in the source directory even for out-of-tree
|
937 |
| - builds. They are now also built in the build tree. This |
| 944 | + builds. They are now built in the build tree. This |
938 | 945 | should be more convenient for certain developers' workflows.
|
939 | 946 | </para>
|
940 | 947 | </listitem>
|
941 |
| - <listitem> |
942 |
| - <para> |
943 |
| - Translations were updated. |
944 |
| - </para> |
945 |
| - </listitem> |
| 948 | + <listitem> |
| 949 | + <para> |
| 950 | + Functions which conflict with C++ reserved words have been renamed, |
| 951 | + making backend header files now safe to use with C++ libraries. |
| 952 | + </para> |
| 953 | + </listitem> |
| 954 | + <listitem> |
| 955 | + <para> |
| 956 | + Add man pages for SPI functions. |
| 957 | + </para> |
| 958 | + </listitem> |
946 | 959 | <listitem>
|
947 | 960 | <para>
|
948 | 961 | Upgrade to Autoconf 2.63 (not relevant to users of distribution
|
|
0 commit comments