|
9 | 9 | <simpara>2011-??-??</simpara>
|
10 | 10 | </note>
|
11 | 11 |
|
12 |
| - <para>CURRENT AS OF 2011-07-07</para> |
| 12 | + <para>CURRENT AS OF 2011-08-17</para> |
13 | 13 |
|
14 | 14 | <sect2>
|
15 | 15 | <title>Overview</title>
|
16 | 16 |
|
17 | 17 | <para>
|
18 | 18 | This release shows <productname>PostgreSQL</> moving beyond the
|
19 |
| - traditional relational feature set with new, ground-breaking |
| 19 | + traditional relational-database feature set with new, ground-breaking |
20 | 20 | functionality that is unique to <productname>PostgreSQL</>.
|
21 |
| - Additionally, this release improves streaming replication by adding |
22 |
| - a synchronous option and monitoring improvements. Major enhancements |
23 |
| - include: |
| 21 | + The streaming replication feature introduced in release 9.0 is |
| 22 | + significantly enhanced by adding a synchronous-replication option, |
| 23 | + streaming backups, and monitoring improvements. |
| 24 | + Major enhancements include: |
24 | 25 | </para>
|
25 | 26 |
|
26 | 27 | <itemizedlist>
|
27 | 28 |
|
28 | 29 | <!-- This list duplicates items below, but without authors or details-->
|
29 | 30 |
|
30 |
| - <listitem> |
31 |
| - <para> |
32 |
| - Support unlogged tables using the <link |
33 |
| - linkend="SQL-CREATETABLE-description"><literal>UNLOGGED</></link> |
34 |
| - option in <link linkend="SQL-CREATETABLE"><command>CREATE |
35 |
| - TABLE</></link> |
36 |
| - </para> |
37 |
| - </listitem> |
38 |
| - |
39 | 31 | <listitem>
|
40 | 32 | <para>
|
41 | 33 | Allow <link linkend="synchronous-replication">synchronous
|
|
59 | 51 |
|
60 | 52 | <listitem>
|
61 | 53 | <para>
|
62 |
| - Add a <link linkend="SQL-SECURITY-LABEL"><command>SECURITY |
63 |
| - LABEL</></link> command |
| 54 | + Add <link linkend="extend-extensions">extensions</link> which |
| 55 | + simplify packaging of additions to <productname>PostgreSQL</> |
64 | 56 | </para>
|
65 | 57 | </listitem>
|
66 | 58 |
|
67 | 59 | <listitem>
|
68 | 60 | <para>
|
69 | 61 | Add a true <link
|
70 |
| - linkend="xact-serializable">serializable</link> isolation |
71 |
| - level |
| 62 | + linkend="xact-serializable">serializable isolation level</link> |
| 63 | + </para> |
| 64 | + </listitem> |
| 65 | + |
| 66 | + <listitem> |
| 67 | + <para> |
| 68 | + Support unlogged tables using the <literal>UNLOGGED</> |
| 69 | + option in <link linkend="SQL-CREATETABLE"><command>CREATE |
| 70 | + TABLE</></link> |
72 | 71 | </para>
|
73 | 72 | </listitem>
|
74 | 73 |
|
|
89 | 88 |
|
90 | 89 | <listitem>
|
91 | 90 | <para>
|
92 |
| - Add <link linkend="extend-extensions">extensions</link> which |
93 |
| - simplify packaging of additions to <productname>PostgreSQL</> |
| 91 | + Add a <link linkend="SQL-SECURITY-LABEL"><command>SECURITY |
| 92 | + LABEL</></link> command and support for |
| 93 | + <link linkend="sepgsql"><acronym>SELinux</> permissions control</link> |
94 | 94 | </para>
|
95 | 95 | </listitem>
|
96 | 96 |
|
|
146 | 146 | strings are the proper way to embed backslash escapes in strings and are
|
147 | 147 | unaffected by this change.
|
148 | 148 | </para>
|
| 149 | + |
| 150 | + <warning> |
| 151 | + <para> |
| 152 | + This change can break applications that are not expecting it and |
| 153 | + do their own string escaping according to the old rules. The |
| 154 | + consequences could be as severe as introducing SQL-injection security |
| 155 | + holes. Be sure to test applications that are exposed to untrusted |
| 156 | + input, to ensure that they correctly handle single quotes and |
| 157 | + backslashes in text strings. |
| 158 | + </para> |
| 159 | + </warning> |
149 | 160 | </listitem>
|
150 | 161 |
|
151 | 162 | </itemizedlist>
|
|
383 | 394 |
|
384 | 395 | <listitem>
|
385 | 396 | <para>
|
386 |
| - Treat <application>ECPG</> cursor names as case-insensitive (Zoltan Boszormenyi) |
| 397 | + Treat <application>ECPG</> cursor names as case-insensitive |
| 398 | + (Zoltan Boszormenyi) |
387 | 399 | </para>
|
388 | 400 | </listitem>
|
389 | 401 |
|
|
394 | 406 |
|
395 | 407 | <sect2>
|
396 | 408 | <title>Changes</title>
|
397 |
| - <para> |
398 |
| - Version 9.1 has ... |
399 |
| - </para> |
| 409 | + |
| 410 | + <para> |
| 411 | + Below you will find a detailed account of the changes between |
| 412 | + <productname>PostgreSQL</productname> 9.1 and the previous major |
| 413 | + release. |
| 414 | + </para> |
400 | 415 |
|
401 | 416 | <sect3>
|
402 | 417 | <title>Server</title>
|
|
408 | 423 |
|
409 | 424 | <listitem>
|
410 | 425 | <para>
|
411 |
| - Support unlogged tables using the <link |
412 |
| - linkend="SQL-CREATETABLE-description"><literal>UNLOGGED</></link> |
| 426 | + Support unlogged tables using the <literal>UNLOGGED</> |
413 | 427 | option in <link linkend="SQL-CREATETABLE"><command>CREATE
|
414 | 428 | TABLE</></link> (Robert Haas)
|
415 | 429 | </para>
|
|
440 | 454 |
|
441 | 455 | <listitem>
|
442 | 456 | <para>
|
443 |
| - Merge duplicate fsync requests on busy systems (Robert Haas, |
444 |
| - Greg Smith) |
| 457 | + Merge duplicate fsync requests (Robert Haas, Greg Smith) |
| 458 | + </para> |
| 459 | + |
| 460 | + <para> |
| 461 | + This greatly improves performance under heavy write loads. |
445 | 462 | </para>
|
446 | 463 | </listitem>
|
447 | 464 |
|
|
584 | 601 | </para>
|
585 | 602 |
|
586 | 603 | <para>
|
587 |
| - The old term is still accepted for backward compatibility. |
| 604 | + The old term is still accepted for backward compatibility, but since |
| 605 | + the two methods are fundamentally different, it seemed better to adopt |
| 606 | + different names for them. |
588 | 607 | </para>
|
589 | 608 | </listitem>
|
590 | 609 |
|
|
634 | 653 | </para>
|
635 | 654 | </listitem>
|
636 | 655 |
|
| 656 | + <listitem> |
| 657 | + <para> |
| 658 | + Reduce the default maximum line length for <application>syslog</> |
| 659 | + logging to 900 bytes plus prefixes (Noah Misch) |
| 660 | + </para> |
| 661 | + |
| 662 | + <para> |
| 663 | + This avoids truncation of long log lines on syslog implementations |
| 664 | + that have a 1KB length limit, rather than the more common 2KB. |
| 665 | + </para> |
| 666 | + </listitem> |
| 667 | + |
637 | 668 | </itemizedlist>
|
638 | 669 |
|
639 | 670 | </sect4>
|
|
1000 | 1031 | </para>
|
1001 | 1032 |
|
1002 | 1033 | <para>
|
1003 |
| - This allows external cluster management software to take control |
1004 |
| - of whether servers restart or not. |
| 1034 | + This allows external cluster management software to control |
| 1035 | + whether the database server restarts or not. |
1005 | 1036 | </para>
|
1006 | 1037 | </listitem>
|
1007 | 1038 |
|
|
1032 | 1063 | <listitem>
|
1033 | 1064 | <para>
|
1034 | 1065 | Add a true <link
|
1035 |
| - linkend="xact-serializable">serializable</link> isolation |
1036 |
| - level (Kevin Grittner, Dan Ports) |
| 1066 | + linkend="xact-serializable">serializable isolation level</link> |
| 1067 | + (Kevin Grittner, Dan Ports) |
1037 | 1068 | </para>
|
1038 | 1069 |
|
1039 | 1070 | <para>
|
|
1444 | 1475 | <listitem>
|
1445 | 1476 | <para>
|
1446 | 1477 | Prevent <link linkend="autovacuum">autovacuum</link> from
|
1447 |
| - waiting if it cannot acquire a lock (Robert Haas) |
| 1478 | + waiting if it cannot acquire a table lock (Robert Haas) |
1448 | 1479 | </para>
|
1449 | 1480 |
|
1450 | 1481 | <para>
|
1451 |
| - It will try to vacuum later. |
| 1482 | + It will try to vacuum that table later. |
1452 | 1483 | </para>
|
1453 | 1484 | </listitem>
|
1454 | 1485 |
|
|
1486 | 1517 | <para>
|
1487 | 1518 | This allows <acronym>GiST</> indexes to quickly return the
|
1488 | 1519 | <replaceable>N</> closest values in a query with <literal>LIMIT</>.
|
| 1520 | + For example |
| 1521 | +<programlisting><![CDATA[ |
| 1522 | +SELECT * FROM places ORDER BY location <-> point '(101,456)' LIMIT 10; |
| 1523 | +]]> |
| 1524 | +</programlisting> |
| 1525 | + finds the ten places closest to a given target point. |
1489 | 1526 | </para>
|
1490 | 1527 | </listitem>
|
1491 | 1528 |
|
|
1851 | 1888 | <listitem>
|
1852 | 1889 | <para>
|
1853 | 1890 | Add <link linkend="plpgsql-foreach-array"><command>FOREACH IN
|
1854 |
| - ARRAY</></link> to <link linkend="plpgsql">PL/pgSQL</link> |
| 1891 | + ARRAY</></link> to PL/pgSQL |
1855 | 1892 | (Pavel Stehule)
|
1856 | 1893 | </para>
|
1857 | 1894 |
|
|
1962 | 1999 |
|
1963 | 2000 | <listitem>
|
1964 | 2001 | <para>
|
1965 |
| - Add PL/Python explicit subtransactions (Jan Urbanski) |
| 2002 | + Add explicit subtransactions to PL/Python (Jan Urbanski) |
1966 | 2003 | </para>
|
1967 | 2004 | </listitem>
|
1968 | 2005 |
|
|
2055 | 2092 |
|
2056 | 2093 | <listitem>
|
2057 | 2094 | <para>
|
2058 |
| - Add <option>S</> (<quote>system</>) option to <application>psql</>'s |
| 2095 | + Add the <option>S</> (<quote>system</>) option to <application>psql</>'s |
2059 | 2096 | <literal>\dn</> (list schemas) command (Tom Lane)
|
2060 | 2097 | </para>
|
2061 | 2098 |
|
|
2207 | 2244 |
|
2208 | 2245 | <listitem>
|
2209 | 2246 | <para>
|
2210 |
| - Add a libpq connection option <literal>client_encoding</> |
| 2247 | + Add a libpq connection option <link |
| 2248 | + linkend="libpq-connect-client-encoding"><literal>client_encoding</></link> |
2211 | 2249 | which behaves like the <envar>PGCLIENTENCODING</> environment
|
2212 | 2250 | variable (Heikki Linnakangas)
|
2213 | 2251 | </para>
|
|
2234 | 2272 |
|
2235 | 2273 | <listitem>
|
2236 | 2274 | <para>
|
2237 |
| - Allow libpq database clients to |
2238 |
| - check the user name of the server process using <link |
| 2275 | + Allow libpq-using clients to |
| 2276 | + check the user name of the server process |
| 2277 | + when connecting via Unix-domain sockets, with the new <link |
2239 | 2278 | linkend="libpq-connect-requirepeer"><literal>requirepeer</></link>
|
2240 |
| - when connecting via Unix-domain sockets |
| 2279 | + connection option |
2241 | 2280 | (Peter Eisentraut)
|
2242 | 2281 | </para>
|
2243 | 2282 |
|
|
2272 | 2311 |
|
2273 | 2312 | <listitem>
|
2274 | 2313 | <para>
|
2275 |
| - Allow ECPG to accept dynamic cursor names even in |
2276 |
| - <literal>WHERE CURRENT OF</literal> clauses |
| 2314 | + Allow ECPG to accept dynamic cursor names even in |
| 2315 | + <literal>WHERE CURRENT OF</literal> clauses |
| 2316 | + (Zoltan Boszormenyi) |
| 2317 | + </para> |
| 2318 | + </listitem> |
| 2319 | + |
| 2320 | + <listitem> |
| 2321 | + <para> |
| 2322 | + Make <application>ecpglib</> write <type>double</> values with a |
| 2323 | + precision of 15 digits, not 14 as formerly (Akira Kurosawa) |
2277 | 2324 | </para>
|
2278 | 2325 | </listitem>
|
2279 | 2326 |
|
|
2422 | 2469 |
|
2423 | 2470 | <listitem>
|
2424 | 2471 | <para>
|
2425 |
| - Add latches to the source code to wait for events (Heikki |
2426 |
| - Linnakangas) |
| 2472 | + Add latches to the source code to support waiting for events (Heikki |
| 2473 | + Linnakangas) |
2427 | 2474 | </para>
|
2428 | 2475 | </listitem>
|
2429 | 2476 |
|
|
2561 | 2608 |
|
2562 | 2609 | <listitem>
|
2563 | 2610 | <para>
|
2564 |
| - Add nearest-neighbor support to <link |
| 2611 | + Add nearest-neighbor search support to <link |
2565 | 2612 | linkend="pgtrgm"><filename>contrib/pg_trgm</></link> and <link
|
2566 | 2613 | linkend="btree-gist"><filename>contrib/btree_gist</></link>
|
2567 | 2614 | (Teodor Sigaev)
|
|
2672 | 2719 | <listitem>
|
2673 | 2720 | <para>
|
2674 | 2721 | Add <link linkend="sepgsql"><filename>contrib/sepgsql</></link>
|
2675 |
| - to interface permission checks with <acronym>SE</>-Linux (KaiGai Kohei) |
| 2722 | + to interface permission checks with <acronym>SELinux</> (KaiGai Kohei) |
2676 | 2723 | </para>
|
2677 | 2724 |
|
2678 | 2725 | <para>
|
|
2698 | 2745 |
|
2699 | 2746 | <listitem>
|
2700 | 2747 | <para>
|
2701 |
| - Add <link linkend="dummy-seclabel">dummy_seclabel</link> |
| 2748 | + Add <link linkend="dummy-seclabel"><filename>dummy_seclabel</></link> |
2702 | 2749 | contrib module (KaiGai Kohei)
|
2703 | 2750 | </para>
|
2704 | 2751 |
|
|
2808 | 2855 |
|
2809 | 2856 | <listitem>
|
2810 | 2857 | <para>
|
2811 |
| - Extensive <link linkend="ecpg"><application>ECPG</> documentation</link> |
2812 |
| - improvements (Satoshi Nagayasu) |
| 2858 | + Extensive <link linkend="ecpg"><application>ECPG</></link> |
| 2859 | + documentation improvements (Satoshi Nagayasu) |
2813 | 2860 | </para>
|
2814 | 2861 | </listitem>
|
2815 | 2862 |
|
|
2864 | 2911 |
|
2865 | 2912 | <listitem>
|
2866 | 2913 | <para>
|
2867 |
| - Merge docs for <command>CREATE CONSTRAINT TRIGGER</> and <link |
| 2914 | + Merge documentation for <command>CREATE CONSTRAINT TRIGGER</> and <link |
2868 | 2915 | linkend="SQL-CREATETRIGGER"><command>CREATE TRIGGER</></link>
|
2869 | 2916 | (Alvaro Herrera)
|
2870 | 2917 | </para>
|
|
0 commit comments