{"format": 1, "version": {"branch": "9.2", "url": "/wiki/versions/9.2/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.2.24", "first_release": "2012-09-10", "end_of_life": "2017-11-09", "latest_release_date": "2017-11-09", "manual_url": "/docs/9.2/index.html", "manual_slug": "9.2", "manual_pages": 1153, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 25, "entry_count": 968, "initial": {"version": "9.2.0", "build": "9.2.0", "status": "stable", "date": "2012-09-10", "source_as_of": "", "url": "/docs/compare/?release=9.2.0", "manual_url": "/docs/9.2/release-9-2.html", "source_url": "/docs/release/9.2.0/", "entry_count": 238, "categories": {"compatibility": 23, "feature": 197, "performance": 12, "bugfix": 6}, "compatibility_count": 23, "cves": [], "cve_count": 0}, "latest": {"version": "9.2.24", "build": "9.2.24", "status": "stable", "date": "2017-11-09", "source_as_of": "", "url": "/docs/compare/?release=9.2.24", "manual_url": "/docs/9.2/release-9-2-24.html", "source_url": "/docs/release/9.2.24/", "entry_count": 13, "categories": {"security": 1, "improvement": 7, "bugfix": 5}, "compatibility_count": 0, "cves": ["CVE-2017-12172"], "cve_count": 1}, "comparison_url": "/docs/compare/?from=9.2.0&to=9.2.24"}, "releases": [{"version": "9.2.24", "build": "9.2.24", "status": "stable", "date": "2017-11-09", "source_as_of": "", "url": "/docs/compare/?release=9.2.24", "manual_url": "/docs/9.2/release-9-2-24.html", "source_url": "/docs/release/9.2.24/", "entry_count": 13, "categories": {"security": 1, "improvement": 7, "bugfix": 5}, "compatibility_count": 0, "cves": ["CVE-2017-12172"], "cve_count": 1}, {"version": "9.2.23", "build": "9.2.23", "status": "stable", "date": "2017-08-31", "source_as_of": "", "url": "/docs/compare/?release=9.2.23", "manual_url": "/docs/9.2/release-9-2-23.html", "source_url": "/docs/release/9.2.23/", "entry_count": 6, "categories": {"improvement": 6}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.22", "build": "9.2.22", "status": "stable", "date": "2017-08-10", "source_as_of": "", "url": "/docs/compare/?release=9.2.22", "manual_url": "/docs/9.2/release-9-2-22.html", "source_url": "/docs/release/9.2.22/", "entry_count": 32, "categories": {"security": 2, "improvement": 13, "bugfix": 17}, "compatibility_count": 0, "cves": ["CVE-2017-7486", "CVE-2017-7546", "CVE-2017-7547"], "cve_count": 3}, {"version": "9.2.21", "build": "9.2.21", "status": "stable", "date": "2017-05-11", "source_as_of": "", "url": "/docs/compare/?release=9.2.21", "manual_url": "/docs/9.2/release-9-2-21.html", "source_url": "/docs/release/9.2.21/", "entry_count": 25, "categories": {"security": 2, "bugfix": 13, "improvement": 9, "performance": 1}, "compatibility_count": 0, "cves": ["CVE-2017-7484", "CVE-2017-7486", "CVE-2017-7547"], "cve_count": 3}, {"version": "9.2.20", "build": "9.2.20", "status": "stable", "date": "2017-02-09", "source_as_of": "", "url": "/docs/compare/?release=9.2.20", "manual_url": "/docs/9.2/release-9-2-20.html", "source_url": "/docs/release/9.2.20/", "entry_count": 33, "categories": {"bugfix": 14, "improvement": 19}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.19", "build": "9.2.19", "status": "stable", "date": "2016-10-27", "source_as_of": "", "url": "/docs/compare/?release=9.2.19", "manual_url": "/docs/9.2/release-9-2-19.html", "source_url": "/docs/release/9.2.19/", "entry_count": 18, "categories": {"bugfix": 9, "improvement": 9}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.18", "build": "9.2.18", "status": "stable", "date": "2016-08-11", "source_as_of": "", "url": "/docs/compare/?release=9.2.18", "manual_url": "/docs/9.2/release-9-2-18.html", "source_url": "/docs/release/9.2.18/", "entry_count": 24, "categories": {"security": 2, "bugfix": 9, "improvement": 13}, "compatibility_count": 0, "cves": ["CVE-2016-5423", "CVE-2016-5424"], "cve_count": 2}, {"version": "9.2.17", "build": "9.2.17", "status": "stable", "date": "2016-05-12", "source_as_of": "", "url": "/docs/compare/?release=9.2.17", "manual_url": "/docs/9.2/release-9-2-17.html", "source_url": "/docs/release/9.2.17/", "entry_count": 14, "categories": {"improvement": 8, "bugfix": 6}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.16", "build": "9.2.16", "status": "stable", "date": "2016-03-31", "source_as_of": "", "url": "/docs/compare/?release=9.2.16", "manual_url": "/docs/9.2/release-9-2-16.html", "source_url": "/docs/release/9.2.16/", "entry_count": 17, "categories": {"bugfix": 9, "improvement": 8}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.15", "build": "9.2.15", "status": "stable", "date": "2016-02-11", "source_as_of": "", "url": "/docs/compare/?release=9.2.15", "manual_url": "/docs/9.2/release-9-2-15.html", "source_url": "/docs/release/9.2.15/", "entry_count": 48, "categories": {"security": 4, "improvement": 24, "bugfix": 19, "performance": 1}, "compatibility_count": 0, "cves": ["CVE-2007-4772", "CVE-2015-7499", "CVE-2016-0766", "CVE-2016-0773"], "cve_count": 4}, {"version": "9.2.14", "build": "9.2.14", "status": "stable", "date": "2015-10-08", "source_as_of": "", "url": "/docs/compare/?release=9.2.14", "manual_url": "/docs/9.2/release-9-2-14.html", "source_url": "/docs/release/9.2.14/", "entry_count": 58, "categories": {"security": 1, "bugfix": 32, "improvement": 24, "performance": 1}, "compatibility_count": 0, "cves": ["CVE-2015-5288"], "cve_count": 1}, {"version": "9.2.13", "build": "9.2.13", "status": "stable", "date": "2015-06-12", "source_as_of": "", "url": "/docs/compare/?release=9.2.13", "manual_url": "/docs/9.2/release-9-2-13.html", "source_url": "/docs/release/9.2.13/", "entry_count": 2, "categories": {"bugfix": 2}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.12", "build": "9.2.12", "status": "stable", "date": "2015-06-04", "source_as_of": "", "url": "/docs/compare/?release=9.2.12", "manual_url": "/docs/9.2/release-9-2-12.html", "source_url": "/docs/release/9.2.12/", "entry_count": 4, "categories": {"bugfix": 2, "improvement": 2}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.11", "build": "9.2.11", "status": "stable", "date": "2015-05-22", "source_as_of": "", "url": "/docs/compare/?release=9.2.11", "manual_url": "/docs/9.2/release-9-2-11.html", "source_url": "/docs/release/9.2.11/", "entry_count": 45, "categories": {"security": 3, "bugfix": 19, "improvement": 23}, "compatibility_count": 0, "cves": ["CVE-2015-3165", "CVE-2015-3166", "CVE-2015-3167"], "cve_count": 3}, {"version": "9.2.10", "build": "9.2.10", "status": "stable", "date": "2015-02-05", "source_as_of": "", "url": "/docs/compare/?release=9.2.10", "manual_url": "/docs/9.2/release-9-2-10.html", "source_url": "/docs/release/9.2.10/", "entry_count": 69, "categories": {"security": 6, "improvement": 31, "bugfix": 31, "performance": 1}, "compatibility_count": 0, "cves": ["CVE-2014-0067", "CVE-2014-8161", "CVE-2015-0241", "CVE-2015-0242", "CVE-2015-0243", "CVE-2015-0244"], "cve_count": 6}, {"version": "9.2.9", "build": "9.2.9", "status": "stable", "date": "2014-07-24", "source_as_of": "", "url": "/docs/compare/?release=9.2.9", "manual_url": "/docs/9.2/release-9-2-9.html", "source_url": "/docs/release/9.2.9/", "entry_count": 41, "categories": {"improvement": 17, "bugfix": 22, "security": 1, "performance": 1}, "compatibility_count": 0, "cves": ["CVE-2014-0067"], "cve_count": 1}, {"version": "9.2.8", "build": "9.2.8", "status": "stable", "date": "2014-03-20", "source_as_of": "", "url": "/docs/compare/?release=9.2.8", "manual_url": "/docs/9.2/release-9-2-8.html", "source_url": "/docs/release/9.2.8/", "entry_count": 14, "categories": {"improvement": 9, "performance": 1, "bugfix": 4}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.7", "build": "9.2.7", "status": "stable", "date": "2014-02-20", "source_as_of": "", "url": "/docs/compare/?release=9.2.7", "manual_url": "/docs/9.2/release-9-2-7.html", "source_url": "/docs/release/9.2.7/", "entry_count": 49, "categories": {"security": 8, "bugfix": 24, "improvement": 17}, "compatibility_count": 0, "cves": ["CVE-2014-0060", "CVE-2014-0061", "CVE-2014-0062", "CVE-2014-0063", "CVE-2014-0064", "CVE-2014-0065", "CVE-2014-0066", "CVE-2014-0067"], "cve_count": 8}, {"version": "9.2.6", "build": "9.2.6", "status": "stable", "date": "2013-12-05", "source_as_of": "", "url": "/docs/compare/?release=9.2.6", "manual_url": "/docs/9.2/release-9-2-6.html", "source_url": "/docs/release/9.2.6/", "entry_count": 26, "categories": {"bugfix": 16, "improvement": 10}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.5", "build": "9.2.5", "status": "stable", "date": "2013-10-10", "source_as_of": "", "url": "/docs/compare/?release=9.2.5", "manual_url": "/docs/9.2/release-9-2-5.html", "source_url": "/docs/release/9.2.5/", "entry_count": 45, "categories": {"bugfix": 22, "improvement": 23}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.4", "build": "9.2.4", "status": "stable", "date": "2013-04-04", "source_as_of": "", "url": "/docs/compare/?release=9.2.4", "manual_url": "/docs/9.2/release-9-2-4.html", "source_url": "/docs/release/9.2.4/", "entry_count": 32, "categories": {"security": 3, "bugfix": 20, "improvement": 9}, "compatibility_count": 0, "cves": ["CVE-2013-1899", "CVE-2013-1900", "CVE-2013-1901"], "cve_count": 3}, {"version": "9.2.3", "build": "9.2.3", "status": "stable", "date": "2013-02-07", "source_as_of": "", "url": "/docs/compare/?release=9.2.3", "manual_url": "/docs/9.2/release-9-2-3.html", "source_url": "/docs/release/9.2.3/", "entry_count": 43, "categories": {"security": 1, "bugfix": 23, "improvement": 18, "performance": 1}, "compatibility_count": 0, "cves": ["CVE-2013-0255"], "cve_count": 1}, {"version": "9.2.2", "build": "9.2.2", "status": "stable", "date": "2012-12-06", "source_as_of": "", "url": "/docs/compare/?release=9.2.2", "manual_url": "/docs/9.2/release-9-2-2.html", "source_url": "/docs/release/9.2.2/", "entry_count": 60, "categories": {"bugfix": 35, "improvement": 24, "performance": 1}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.1", "build": "9.2.1", "status": "stable", "date": "2012-09-24", "source_as_of": "", "url": "/docs/compare/?release=9.2.1", "manual_url": "/docs/9.2/release-9-2-1.html", "source_url": "/docs/release/9.2.1/", "entry_count": 12, "categories": {"bugfix": 7, "improvement": 5}, "compatibility_count": 0, "cves": [], "cve_count": 0}, {"version": "9.2.0", "build": "9.2.0", "status": "stable", "date": "2012-09-10", "source_as_of": "", "url": "/docs/compare/?release=9.2.0", "manual_url": "/docs/9.2/release-9-2.html", "source_url": "/docs/release/9.2.0/", "entry_count": 238, "categories": {"compatibility": 23, "feature": 197, "performance": 12, "bugfix": 6}, "compatibility_count": 23, "cves": [], "cve_count": 0}], "initial_entries": [{"id": "9.2.0-ac821c51436bac96", "cves": [], "html": "<p>      \u4ece <a href=\"/docs/9.2/catalog-pg-tablespace.html\" title=\"45.43.\u00a0pg_tablespace\"><code>pg_tablespace</code></a> \u4e2d\u79fb\u9664 <code>spclocation</code> \u5b57\u6bb5\uff08Magnus Hagander\uff09\n     </p><p>      \u8be5\u5b57\u6bb5\u4e0e\u5b9e\u9645\u5b9a\u4e49\u8868\u7a7a\u95f4\u4f4d\u7f6e\u7684\u7b26\u53f7\u94fe\u63a5\u91cd\u590d\uff0c\u56e0\u6b64\u5728\u79fb\u52a8\u8868\u7a7a\u95f4\u65f6\u5b58\u5728\u9057\u6f0f\u9519\u8bef\u7684\u98ce\u9669\u3002\u6b64\u53d8\u66f4\u5141\u8bb8\u5728\u670d\u52a1\u5668\u505c\u673a\u671f\u95f4\u901a\u8fc7\u624b\u5de5\u8c03\u6574\u7b26\u53f7\u94fe\u63a5\u6765\u79fb\u52a8\u8868\u7a7a\u95f4\u76ee\u5f55\u3002\u4e3a\u4e86\u66ff\u4ee3\u8be5\u5b57\u6bb5\uff0c\u6211\u4eec\u65b0\u589e\u4e86 <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-CATALOG-TABLE\" title=\"\u8868\u00a09.54.\u00a0\u7cfb\u7edf\u76ee\u5f55\u4fe1\u606f\u51fd\u6570\"><code>pg_tablespace_location()</code></a> \u6765\u67e5\u8be2\u7b26\u53f7\u94fe\u63a5\u3002\n     </p>", "text": "\u4ece pg_tablespace \u4e2d\u79fb\u9664 spclocation \u5b57\u6bb5\uff08Magnus Hagander\uff09 \u8be5\u5b57\u6bb5\u4e0e\u5b9e\u9645\u5b9a\u4e49\u8868\u7a7a\u95f4\u4f4d\u7f6e\u7684\u7b26\u53f7\u94fe\u63a5\u91cd\u590d\uff0c\u56e0\u6b64\u5728\u79fb\u52a8\u8868\u7a7a\u95f4\u65f6\u5b58\u5728\u9057\u6f0f\u9519\u8bef\u7684\u98ce\u9669\u3002\u6b64\u53d8\u66f4\u5141\u8bb8\u5728\u670d\u52a1\u5668\u505c\u673a\u671f\u95f4\u901a\u8fc7\u624b\u5de5\u8c03\u6574\u7b26\u53f7\u94fe\u63a5\u6765\u79fb\u52a8\u8868\u7a7a\u95f4\u76ee\u5f55\u3002\u4e3a\u4e86\u66ff\u4ee3\u8be5\u5b57\u6bb5\uff0c\u6211\u4eec\u65b0\u589e\u4e86 pg_tablespace_location() \u6765\u67e5\u8be2\u7b26\u53f7\u94fe\u63a5\u3002", "title": "\u4ece pg_tablespace \u4e2d\u79fb\u9664 spclocation \u5b57\u6bb5", "commits": [], "section": "\u7cfb\u7edf\u76ee\u5f55", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.4", "source_hash": "f7adbdf5a27a952fda3b70fe105a49c41b1e0a1e318a82041a9701138c9c3c48", "section_path": ["\u7cfb\u7edf\u76ee\u5f55"], "commit_groups": [], "identity_text": "Remove the spclocation field from pg_tablespace (Magnus Hagander) This field was duplicative of the symbolic links that actually define tablespace locations, and thus risked errors of omission when moving a tablespace. This change allows tablespace directories to be moved while the server is down, by manually adjusting the symbolic links. To replace this field, we have added pg_tablespace_location() to allow querying of the symbolic links.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/001", "db_id": "0dee80d3279fb6d47d887c0c371469e1", "patch_ids": [], "statement_hash": "2f4dd1e9bca01d4d50336ba607a7000af106ae37ecfe9c9bf8e2def36ebf9876", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-ac821c51436bac96", "migration": true}, {"id": "9.2.0-d0012a7942724551", "cves": [], "html": "<p>      \u628a <code>tsvector</code> \u7684\u6700\u5e38\u7528\u5143\u7d20\u7edf\u8ba1\u79fb\u5230 <a href=\"/docs/9.2/view-pg-stats.html\" title=\"45.66.\u00a0pg_stats\"><code>pg_stats</code></a> \u7684\u65b0\u5217\u4e2d\uff08Alexander Korotkov\uff09\n     </p><p>      \u5bf9\u4e8e <code>tsvector</code> \u5217\uff0c\u6b64\u524d\u5728 <code>most_common_vals</code> \u548c <code>most_common_freqs</code> \u4e2d\u53ef\u7528\u7684\u6570\u636e\uff0c\u8bf7\u6539\u67e5 <code>most_common_elems</code> \u548c <code>most_common_elem_freqs</code>\u3002\n     </p>", "text": "\u628a tsvector \u7684\u6700\u5e38\u7528\u5143\u7d20\u7edf\u8ba1\u79fb\u5230 pg_stats \u7684\u65b0\u5217\u4e2d\uff08Alexander Korotkov\uff09 \u5bf9\u4e8e tsvector \u5217\uff0c\u6b64\u524d\u5728 most_common_vals \u548c most_common_freqs \u4e2d\u53ef\u7528\u7684\u6570\u636e\uff0c\u8bf7\u6539\u67e5 most_common_elems \u548c most_common_elem_freqs\u3002", "title": "\u628a tsvector \u7684\u6700\u5e38\u7528\u5143\u7d20\u7edf\u8ba1\u79fb\u5230 pg_stats \u7684\u65b0\u5217\u4e2d", "commits": [], "section": "\u7cfb\u7edf\u76ee\u5f55", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.4", "source_hash": "3e3f948d58e62c6e60757a3b64665b14686c585114948c8212050a8f6e3c6c73", "section_path": ["\u7cfb\u7edf\u76ee\u5f55"], "commit_groups": [], "identity_text": "Move tsvector most-common-element statistics to new pg_stats columns (Alexander Korotkov) Consult most_common_elems and most_common_elem_freqs for the data formerly available in most_common_vals and most_common_freqs for a tsvector column.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/002", "db_id": "ff099cb97e3af2a9f0fcc79022d513c3", "patch_ids": [], "statement_hash": "751f8bd694b3f75deddeca306833960cba55c6484228ff30c386497ae025c6b6", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-d0012a7942724551", "migration": true}, {"id": "9.2.0-c8d179ffb665ac6c", "cves": [], "html": "<p>      \u79fb\u9664 <a href=\"/docs/9.2/hstore.html\" title=\"F.16.\u00a0hstore\">hstore</a> \u7684 <code>=&gt;</code> \u64cd\u4f5c\u7b26\uff08Robert Haas\uff09\n     </p><p>      \u7528\u6237\u73b0\u5728\u5e94\u4f7f\u7528 <code>hstore(text, text)</code>\u3002\u81ea <span>PostgreSQL</span> 9.0 \u8d77\uff0c\u521b\u5efa\u540d\u4e3a <code>=&gt;</code> \u7684\u64cd\u4f5c\u7b26\u65f6\u4f1a\u53d1\u51fa\u8b66\u544a\u6d88\u606f\uff0c\u56e0\u4e3a <acronym>SQL</acronym> \u6807\u51c6\u5c06\u8be5\u8bb0\u53f7\u4fdd\u7559\u4f5c\u5176\u4ed6\u7528\u9014\u3002\n     </p>", "text": "\u79fb\u9664 hstore \u7684 => \u64cd\u4f5c\u7b26\uff08Robert Haas\uff09 \u7528\u6237\u73b0\u5728\u5e94\u4f7f\u7528 hstore(text, text)\u3002\u81ea PostgreSQL 9.0 \u8d77\uff0c\u521b\u5efa\u540d\u4e3a => \u7684\u64cd\u4f5c\u7b26\u65f6\u4f1a\u53d1\u51fa\u8b66\u544a\u6d88\u606f\uff0c\u56e0\u4e3a SQL \u6807\u51c6\u5c06\u8be5\u8bb0\u53f7\u4fdd\u7559\u4f5c\u5176\u4ed6\u7528\u9014\u3002", "title": "\u79fb\u9664 hstore \u7684 => \u64cd\u4f5c\u7b26", "commits": [], "section": "\u51fd\u6570", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "0bc5041259cf8b1cc7f966a2c44056f5ea13519f632b282b41a336117866ad50", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Remove hstore's => operator (Robert Haas) Users should now use hstore(text, text). Since PostgreSQL 9.0, a warning message has been emitted when an operator named => is created because the SQL standard reserves that token for another use.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/003", "db_id": "130c56d2884f13941d5c0e7afa8a56f5", "patch_ids": [], "statement_hash": "bb24084dc3d52db28dba54b9b22d1fd7fc0b3e1583dbbd2e6dbfb291d6704b72", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-c8d179ffb665ac6c", "migration": true}, {"id": "9.2.0-96f80a719d7d2316", "cves": [], "html": "<p>      \u786e\u4fdd <a href=\"/docs/9.2/functions-xml.html#FUNCTIONS-XML-PROCESSING\" title=\"9.14.3.\u00a0\u5904\u7406 XML\"><code>xpath()</code></a> \u5bf9\u5b57\u7b26\u4e32\u503c\u4e2d\u7684\u7279\u6b8a\u5b57\u7b26\u8f6c\u4e49\uff08Florian Pflug\uff09\n     </p><p>      \u5426\u5219\u7ed3\u679c\u6709\u53ef\u80fd\u4e0d\u662f\u6709\u6548\u7684 <acronym>XML</acronym>\u3002\n     </p>", "text": "\u786e\u4fdd xpath() \u5bf9\u5b57\u7b26\u4e32\u503c\u4e2d\u7684\u7279\u6b8a\u5b57\u7b26\u8f6c\u4e49\uff08Florian Pflug\uff09 \u5426\u5219\u7ed3\u679c\u6709\u53ef\u80fd\u4e0d\u662f\u6709\u6548\u7684 XML\u3002", "title": "\u786e\u4fdd xpath() \u5bf9\u5b57\u7b26\u4e32\u503c\u4e2d\u7684\u7279\u6b8a\u5b57\u7b26\u8f6c\u4e49", "commits": [], "section": "\u51fd\u6570", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "1eac963925e07141a03a6328ca5434101eacd9325d08845410b8cce6a26eecc0", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Ensure that xpath() escapes special characters in string values (Florian Pflug) Without this it is possible for the result not to be valid XML.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/004", "db_id": "17e9b8e18bf5e004ec23b77220a11236", "patch_ids": [], "statement_hash": "5d1915ca8f7fa28914b68f873c509f50328586065d08570746126978c60e8e77", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-96f80a719d7d2316", "migration": true}, {"id": "9.2.0-cd08ea6972407cc4", "cves": [], "html": "<p>      \u8ba9 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-DBOBJECT\" title=\"9.26.6.\u00a0\u6570\u636e\u5e93\u5bf9\u8c61\u7ba1\u7406\u51fd\u6570\"><code>pg_relation_size()</code></a> \u53ca\u76f8\u5173\u51fd\u6570\u5728\u5bf9\u8c61\u4e0d\u5b58\u5728\u65f6\u8fd4\u56de NULL\uff08Phil Sorber\uff09\n     </p><p>      \u8fd9\u9632\u6b62\u4e86\u8c03\u7528\u8fd9\u4e9b\u51fd\u6570\u7684\u67e5\u8be2\u5728\u5e76\u53d1 <code>DROP</code> \u4e4b\u540e\u7acb\u5373\u8fd4\u56de\u9519\u8bef\u3002\n     </p>", "text": "\u8ba9 pg_relation_size() \u53ca\u76f8\u5173\u51fd\u6570\u5728\u5bf9\u8c61\u4e0d\u5b58\u5728\u65f6\u8fd4\u56de NULL\uff08Phil Sorber\uff09 \u8fd9\u9632\u6b62\u4e86\u8c03\u7528\u8fd9\u4e9b\u51fd\u6570\u7684\u67e5\u8be2\u5728\u5e76\u53d1 DROP \u4e4b\u540e\u7acb\u5373\u8fd4\u56de\u9519\u8bef\u3002", "title": "\u8ba9 pg_relation_size() \u53ca\u76f8\u5173\u51fd\u6570\u5728\u5bf9\u8c61\u4e0d\u5b58\u5728\u65f6\u8fd4\u56de NULL", "commits": [], "section": "\u51fd\u6570", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "0365a8d74f572ffd411ff74388c5836ade6dcd913ed8310188ec918cce463cb1", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Make pg_relation_size() and friends return NULL if the object does not exist (Phil Sorber) This prevents queries that call these functions from returning errors immediately after a concurrent DROP.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/005", "db_id": "1049283f15229997ae75536f02dabfdb", "patch_ids": [], "statement_hash": "780e3507a8bdf2e427ab322214854c69d5d9b0188187d08d14f9741c2ab3fb91", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-cd08ea6972407cc4", "migration": true}, {"id": "9.2.0-3a93f110e6587f1e", "cves": [], "html": "<p>      \u8ba9 <a href=\"/docs/9.2/functions-datetime.html#FUNCTIONS-DATETIME-EXTRACT\" title=\"9.9.1.\u00a0EXTRACT, date_part\"><code>EXTRACT(EPOCH FROM <em><code>timestamp without time zone</code></em>)</code></a> \u4ece\u672c\u5730\u5348\u591c\u800c\u4e0d\u662f <acronym>UTC</acronym> \u5348\u591c\u8d77\u7b97\u7eaa\u5143\uff08Tom Lane\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u64a4\u9500\u4e86 7.3 \u7248\u672c\u4e2d\u4e00\u4e2a\u6b20\u8003\u8651\u7684\u53d8\u66f4\u3002\u4ece <acronym>UTC</acronym> \u5348\u591c\u8d77\u7b97\u662f\u4e0d\u4e00\u81f4\u7684\uff0c\u56e0\u4e3a\u5b83\u4f7f\u7ed3\u679c\u4f9d\u8d56\u4e8e <a href=\"/docs/9.2/runtime-config-client.html#GUC-TIMEZONE\"><code>timezone</code></a> \u8bbe\u7f6e\uff0c\u800c <code>timestamp without time zone</code> \u7684\u8ba1\u7b97\u4e0d\u5e94\u5982\u6b64\u3002\u628a\u8f93\u5165\u503c\u8f6c\u6362\u4e3a <code>timestamp with time zone</code> \u4ecd\u53ef\u83b7\u5f97\u5148\u524d\u7684\u884c\u4e3a\u3002\n     </p>", "text": "\u8ba9 EXTRACT(EPOCH FROM timestamp without time zone) \u4ece\u672c\u5730\u5348\u591c\u800c\u4e0d\u662f UTC \u5348\u591c\u8d77\u7b97\u7eaa\u5143\uff08Tom Lane\uff09 \u6b64\u53d8\u66f4\u64a4\u9500\u4e86 7.3 \u7248\u672c\u4e2d\u4e00\u4e2a\u6b20\u8003\u8651\u7684\u53d8\u66f4\u3002\u4ece UTC \u5348\u591c\u8d77\u7b97\u662f\u4e0d\u4e00\u81f4\u7684\uff0c\u56e0\u4e3a\u5b83\u4f7f\u7ed3\u679c\u4f9d\u8d56\u4e8e timezone \u8bbe\u7f6e\uff0c\u800c timestamp without time zone \u7684\u8ba1\u7b97\u4e0d\u5e94\u5982\u6b64\u3002\u628a\u8f93\u5165\u503c\u8f6c\u6362\u4e3a timestamp with time zone \u4ecd\u53ef\u83b7\u5f97\u5148\u524d\u7684\u884c\u4e3a\u3002", "title": "\u8ba9 EXTRACT(EPOCH FROM timestamp without time zone) \u4ece\u672c\u5730\u5348\u591c\u800c\u4e0d\u662f UTC \u5348\u591c\u8d77\u7b97\u7eaa\u5143", "commits": [], "section": "\u51fd\u6570", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "1b55b0afb09e907f3dd5aeed6792309cff5f6e7de7e6700eaa8bf80093893a7d", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Make EXTRACT(EPOCH FROM timestamp without time zone) measure the epoch from local midnight, not UTC midnight (Tom Lane) This change reverts an ill-considered change made in release 7.3. Measuring from UTC midnight was inconsistent because it made the result dependent on the timezone setting, which computations for timestamp without time zone should not be. The previous behavior remains available by casting the input value to timestamp with time zone.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/006", "db_id": "235bcb9ccba1cc7e83d2689cc8355017", "patch_ids": [], "statement_hash": "0c9bec912da2bbe68dc0b668899d84ba6c0662aaf815a467c74e6c97fac7dc8e", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-3a93f110e6587f1e", "migration": true}, {"id": "9.2.0-d6b8448d07f30f53", "cves": [], "html": "<p>      \u6b63\u786e\u89e3\u6790\u5e26\u5c3e\u7f00 <code>yesterday</code>\u3001<code>today</code> \u548c <code>tomorrow</code> \u7684\u65f6\u95f4\u4e32\uff08Dean Rasheed\uff09\n     </p><p>      \u6b64\u524d\uff0c<code>SELECT '04:00:00 yesterday'::timestamp</code> \u8fd4\u56de\u7684\u662f\u6628\u5929\u5348\u591c\u7684\u65e5\u671f\u3002\n     </p>", "text": "\u6b63\u786e\u89e3\u6790\u5e26\u5c3e\u7f00 yesterday\u3001today \u548c tomorrow \u7684\u65f6\u95f4\u4e32\uff08Dean Rasheed\uff09 \u6b64\u524d\uff0cSELECT '04:00:00 yesterday'::timestamp \u8fd4\u56de\u7684\u662f\u6628\u5929\u5348\u591c\u7684\u65e5\u671f\u3002", "title": "\u6b63\u786e\u89e3\u6790\u5e26\u5c3e\u7f00 yesterday\u3001today \u548c tomorrow \u7684\u65f6\u95f4\u4e32", "commits": [], "section": "\u51fd\u6570", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "2d5d48b665b29af237877f0041089b421d80bdef483486695d10f0cfced04189", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Properly parse time strings with trailing yesterday, today, and tomorrow (Dean Rasheed) Previously, SELECT '04:00:00 yesterday'::timestamp returned yesterday's date at midnight.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/007", "db_id": "f1374374430f5336acf70cb7cab35db9", "patch_ids": [], "statement_hash": "66b93ed3a8b36f57f0108d12bc0d727e4c93db0f444708982c19be17d8f51a4d", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-d6b8448d07f30f53", "migration": true}, {"id": "9.2.0-9ab4877581d1f33d", "cves": [], "html": "<p>      \u4fee\u590d <a href=\"/docs/9.2/functions-formatting.html\" title=\"9.8.\u00a0\u6570\u636e\u7c7b\u578b\u683c\u5f0f\u5316\u51fd\u6570\"><code>to_date()</code></a> \u548c <code>to_timestamp()</code>\uff0c\u4f7f\u4e0d\u5b8c\u6574\u65e5\u671f\u5411 2020 \u5e74\u6298\u7b97\uff08Bruce Momjian\uff09\n     </p><p>      \u6b64\u524d\uff0c\u5c11\u4e8e\u56db\u4f4d\u7684\u63d0\u4f9b\u5e74\u4efd\u548c\u5e74\u4efd\u63a9\u7801\u7684\u6298\u7b97\u4e0d\u4e00\u81f4\u3002\n     </p>", "text": "\u4fee\u590d to_date() \u548c to_timestamp()\uff0c\u4f7f\u4e0d\u5b8c\u6574\u65e5\u671f\u5411 2020 \u5e74\u6298\u7b97\uff08Bruce Momjian\uff09 \u6b64\u524d\uff0c\u5c11\u4e8e\u56db\u4f4d\u7684\u63d0\u4f9b\u5e74\u4efd\u548c\u5e74\u4efd\u63a9\u7801\u7684\u6298\u7b97\u4e0d\u4e00\u81f4\u3002", "title": "\u4fee\u590d to_date() \u548c to_timestamp()\uff0c\u4f7f\u4e0d\u5b8c\u6574\u65e5\u671f\u5411 2020 \u5e74\u6298\u7b97", "commits": [], "section": "\u51fd\u6570", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "c0a51de1dec797242eea43179d6bca1e8366841093a0acffc7f3558ce833bd4e", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Fix to_date() and to_timestamp() to wrap incomplete dates toward 2020 (Bruce Momjian) Previously, supplied years and year masks of less than four digits wrapped inconsistently.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/008", "db_id": "989984570a1fbf58e99f08bc37aaa406", "patch_ids": [], "statement_hash": "2cb0b9cf8efc0acb4e883e1bba0532e1bcd7d41fb5e47571a3acd2d8c8e93740", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-9ab4877581d1f33d", "migration": true}, {"id": "9.2.0-cd00c820fae09d7b", "cves": [], "html": "<p>      \u9632\u6b62 <a href=\"/docs/9.2/sql-alterdomain.html\" title=\"ALTER DOMAIN\"><code>ALTER DOMAIN</code></a> \u4f5c\u7528\u4e8e\u975e\u57df\u7c7b\u578b\uff08Peter Eisentraut\uff09\n     </p><p>      \u6b64\u524d\u5728\u975e\u57df\u7c7b\u578b\u4e0a\u53ef\u4ee5\u66f4\u6539\u6240\u6709\u8005\u548c\u6a21\u5f0f\u3002\n     </p>", "text": "\u9632\u6b62 ALTER DOMAIN \u4f5c\u7528\u4e8e\u975e\u57df\u7c7b\u578b\uff08Peter Eisentraut\uff09 \u6b64\u524d\u5728\u975e\u57df\u7c7b\u578b\u4e0a\u53ef\u4ee5\u66f4\u6539\u6240\u6709\u8005\u548c\u6a21\u5f0f\u3002", "title": "\u9632\u6b62 ALTER DOMAIN \u4f5c\u7528\u4e8e\u975e\u57df\u7c7b\u578b", "commits": [], "section": "\u5bf9\u8c61\u4fee\u6539", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.6", "source_hash": "abec666d98927e633543e3bfae887bd7e15e05f9223862e18bded243dd5ef0b4", "section_path": ["\u5bf9\u8c61\u4fee\u6539"], "commit_groups": [], "identity_text": "Prevent ALTER DOMAIN from working on non-domain types (Peter Eisentraut) Owner and schema changes were previously possible on non-domain types.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/009", "db_id": "607f033153f148904cf55c5cd83101ad", "patch_ids": [], "statement_hash": "f66af13fd0c566ebe6faaccea5b1519a4333e0c37155456dd579d929d360d48b", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-cd00c820fae09d7b", "migration": true}, {"id": "9.2.0-a0fcc7f08b1d0470", "cves": [], "html": "<p>      \u4e0d\u518d\u5728 <a href=\"/docs/9.2/sql-createfunction.html\" title=\"CREATE FUNCTION\"><code>CREATE FUNCTION</code></a> \u4e2d\u5f3a\u5236\u5c0f\u5199\u8fc7\u7a0b\u8bed\u8a00\u540d\uff08Robert Haas\uff09\n     </p><p>      \u867d\u7136\u4e0d\u5e26\u5f15\u53f7\u7684\u8bed\u8a00\u6807\u8bc6\u7b26\u4ecd\u4f1a\u5c0f\u5199\uff0c\u4f46\u5b57\u7b26\u4e32\u548c\u5e26\u5f15\u53f7\u7684\u6807\u8bc6\u7b26\u4e0d\u518d\u88ab\u5f3a\u5236\u5c0f\u5199\u3002\u56e0\u6b64\u4f8b\u5982 <code>CREATE FUNCTION ... LANGUAGE 'C'</code> \u5c06\u4e0d\u518d\u6709\u6548\uff1b\u5fc5\u987b\u5199\u6210 <code>'c'</code>\uff0c\u6216\u8005\u6700\u597d\u7701\u7565\u5f15\u53f7\u3002\n     </p>", "text": "\u4e0d\u518d\u5728 CREATE FUNCTION \u4e2d\u5f3a\u5236\u5c0f\u5199\u8fc7\u7a0b\u8bed\u8a00\u540d\uff08Robert Haas\uff09 \u867d\u7136\u4e0d\u5e26\u5f15\u53f7\u7684\u8bed\u8a00\u6807\u8bc6\u7b26\u4ecd\u4f1a\u5c0f\u5199\uff0c\u4f46\u5b57\u7b26\u4e32\u548c\u5e26\u5f15\u53f7\u7684\u6807\u8bc6\u7b26\u4e0d\u518d\u88ab\u5f3a\u5236\u5c0f\u5199\u3002\u56e0\u6b64\u4f8b\u5982 CREATE FUNCTION ... LANGUAGE 'C' \u5c06\u4e0d\u518d\u6709\u6548\uff1b\u5fc5\u987b\u5199\u6210 'c'\uff0c\u6216\u8005\u6700\u597d\u7701\u7565\u5f15\u53f7\u3002", "title": "\u4e0d\u518d\u5728 CREATE FUNCTION \u4e2d\u5f3a\u5236\u5c0f\u5199\u8fc7\u7a0b\u8bed\u8a00\u540d", "commits": [], "section": "\u5bf9\u8c61\u4fee\u6539", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.6", "source_hash": "b6c06e2c71dddc0c388df2cb1db48204cd8fdefaf158cf53a364fb5198a5727f", "section_path": ["\u5bf9\u8c61\u4fee\u6539"], "commit_groups": [], "identity_text": "No longer forcibly lowercase procedural language names in CREATE FUNCTION (Robert Haas) While unquoted language identifiers are still lowercased, strings and quoted identifiers are no longer forcibly down-cased. Thus for example CREATE FUNCTION ... LANGUAGE 'C' will no longer work; it must be spelled 'c', or better omit the quotes.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/010", "db_id": "2fdd5cf1fefa4d12053477f798b45ae6", "patch_ids": [], "statement_hash": "61dcd36a4b17fe0331067af75900f3b7f029fc1759c5d011f2c4c7a13d123d06", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-a0fcc7f08b1d0470", "migration": true}, {"id": "9.2.0-d1ce038d21d2d6c8", "cves": [], "html": "<p>      \u66f4\u6539\u5916\u952e\u5f3a\u5236\u89e6\u53d1\u5668\u7684\u7cfb\u7edf\u751f\u6210\u540d\u79f0\uff08Tom Lane\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u786e\u4fdd\u5728\u67d0\u4e9b\u6d89\u53ca\u81ea\u5f15\u7528\u5916\u952e\u7ea6\u675f\u7684\u6781\u7aef\u60c5\u51b5\u4e0b\u89e6\u53d1\u5668\u6309\u6b63\u786e\u987a\u5e8f\u89e6\u53d1\u3002\n     </p>", "text": "\u66f4\u6539\u5916\u952e\u5f3a\u5236\u89e6\u53d1\u5668\u7684\u7cfb\u7edf\u751f\u6210\u540d\u79f0\uff08Tom Lane\uff09 \u6b64\u53d8\u66f4\u786e\u4fdd\u5728\u67d0\u4e9b\u6d89\u53ca\u81ea\u5f15\u7528\u5916\u952e\u7ea6\u675f\u7684\u6781\u7aef\u60c5\u51b5\u4e0b\u89e6\u53d1\u5668\u6309\u6b63\u786e\u987a\u5e8f\u89e6\u53d1\u3002", "title": "\u66f4\u6539\u5916\u952e\u5f3a\u5236\u89e6\u53d1\u5668\u7684\u7cfb\u7edf\u751f\u6210\u540d\u79f0", "commits": [], "section": "\u5bf9\u8c61\u4fee\u6539", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.6", "source_hash": "765e832e408d501c4aa617f1bf0c352b38a2551a960f3d9b0124f5c8ec086d30", "section_path": ["\u5bf9\u8c61\u4fee\u6539"], "commit_groups": [], "identity_text": "Change system-generated names of foreign key enforcement triggers (Tom Lane) This change ensures that the triggers fire in the correct order in some corner cases involving self-referential foreign key constraints.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/011", "db_id": "3e5ac31d03d056ae4c5a075721972808", "patch_ids": [], "statement_hash": "d06a94711d0c4c81639971a0d657e9fdfb5c4e2c5f26b5cd753416fc9fef689b", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-d1ce038d21d2d6c8", "migration": true}, {"id": "9.2.0-008f1099d913905d", "cves": [], "html": "<p>      \u4e3a<a href=\"/docs/9.2/app-psql.html\" title=\"psql\"><span>psql</span></a>\u5143\u547d\u4ee4\u53c2\u6570\u63d0\u4f9b\u4e00\u81f4\u7684\u53cd\u5f15\u53f7\u3001\u53d8\u91cf\u5c55\u5f00\u548c\u5e26\u5f15\u53f7\u5b50\u4e32\u884c\u4e3a\uff08Tom Lane\uff09\n     </p><p>      \u6b64\u524d\uff0c\u5f53\u8fd9\u7c7b\u5f15\u7528\u4e0e\u76f8\u90bb\u6587\u672c\u4e4b\u95f4\u6ca1\u6709\u7a7a\u767d\u5206\u9694\u65f6\uff0c\u5904\u7406\u65b9\u5f0f\u5f88\u5947\u602a\u3002\u4f8b\u5982 <code>'FOO'BAR</code> \u4f1a\u8f93\u51fa\u4e3a <code>FOO BAR</code>\uff08\u610f\u5916\u63d2\u5165\u7a7a\u683c\uff09\uff0c\u800c <code>FOO'BAR'BAZ</code> \u4f1a\u539f\u6837\u8f93\u51fa\uff08\u4e0d\u50cf\u5927\u591a\u6570\u4eba\u671f\u671b\u7684\u90a3\u6837\u53bb\u6389\u5f15\u53f7\uff09\u3002\n     </p>", "text": "\u4e3apsql\u5143\u547d\u4ee4\u53c2\u6570\u63d0\u4f9b\u4e00\u81f4\u7684\u53cd\u5f15\u53f7\u3001\u53d8\u91cf\u5c55\u5f00\u548c\u5e26\u5f15\u53f7\u5b50\u4e32\u884c\u4e3a\uff08Tom Lane\uff09 \u6b64\u524d\uff0c\u5f53\u8fd9\u7c7b\u5f15\u7528\u4e0e\u76f8\u90bb\u6587\u672c\u4e4b\u95f4\u6ca1\u6709\u7a7a\u767d\u5206\u9694\u65f6\uff0c\u5904\u7406\u65b9\u5f0f\u5f88\u5947\u602a\u3002\u4f8b\u5982 'FOO'BAR \u4f1a\u8f93\u51fa\u4e3a FOO BAR\uff08\u610f\u5916\u63d2\u5165\u7a7a\u683c\uff09\uff0c\u800c FOO'BAR'BAZ \u4f1a\u539f\u6837\u8f93\u51fa\uff08\u4e0d\u50cf\u5927\u591a\u6570\u4eba\u671f\u671b\u7684\u90a3\u6837\u53bb\u6389\u5f15\u53f7\uff09\u3002", "title": "\u4e3apsql\u5143\u547d\u4ee4\u53c2\u6570\u63d0\u4f9b\u4e00\u81f4\u7684\u53cd\u5f15\u53f7\u3001\u53d8\u91cf\u5c55\u5f00\u548c\u5e26\u5f15\u53f7\u5b50\u4e32\u884c\u4e3a", "commits": [], "section": "\u547d\u4ee4\u884c\u5de5\u5177", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "7a6bc02098e76f8d285dd2c79ce74ad4f49f36dab799bd0c95e0944b9b4c93ca", "section_path": ["\u547d\u4ee4\u884c\u5de5\u5177"], "commit_groups": [], "identity_text": "Provide consistent backquote, variable expansion, and quoted substring behavior in psql meta-command arguments (Tom Lane) Previously, such references were treated oddly when not separated by whitespace from adjacent text. For example 'FOO'BAR was output as FOO BAR (unexpected insertion of a space) and FOO'BAR'BAZ was output unchanged (not removing the quotes as most would expect).", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/012", "db_id": "4a06d39776ae0ba354369145cd845eab", "patch_ids": [], "statement_hash": "17fc79fc2c132b18251a098a1ba5e8151bf4580fde3513939c69e22ffb3b38bf", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-008f1099d913905d", "migration": true}, {"id": "9.2.0-252c006c84f0d7a8", "cves": [], "html": "<p>      \u4e0d\u518d\u628a<a href=\"/docs/9.2/app-clusterdb.html\" title=\"clusterdb\"><span>clusterdb</span></a>\u7684\u8868\u540d\u89c6\u4e3a\u5df2\u52a0\u53cc\u5f15\u53f7\uff1b\u4e0d\u518d\u628a<a href=\"/docs/9.2/app-reindexdb.html\" title=\"reindexdb\"><span>reindexdb</span></a>\u7684\u8868\u540d\u548c\u7d22\u5f15\u540d\u89c6\u4e3a\u5df2\u52a0\u53cc\u5f15\u53f7\uff08Bruce Momjian\uff09\n     </p><p>      \u5982\u679c\u9700\u8981\u52a0\u5f15\u53f7\uff0c\u7528\u6237\u73b0\u5728\u5fc5\u987b\u5728\u547d\u4ee4\u53c2\u6570\u4e2d\u5305\u542b\u53cc\u5f15\u53f7\u3002\n     </p>", "text": "\u4e0d\u518d\u628aclusterdb\u7684\u8868\u540d\u89c6\u4e3a\u5df2\u52a0\u53cc\u5f15\u53f7\uff1b\u4e0d\u518d\u628areindexdb\u7684\u8868\u540d\u548c\u7d22\u5f15\u540d\u89c6\u4e3a\u5df2\u52a0\u53cc\u5f15\u53f7\uff08Bruce Momjian\uff09 \u5982\u679c\u9700\u8981\u52a0\u5f15\u53f7\uff0c\u7528\u6237\u73b0\u5728\u5fc5\u987b\u5728\u547d\u4ee4\u53c2\u6570\u4e2d\u5305\u542b\u53cc\u5f15\u53f7\u3002", "title": "\u4e0d\u518d\u628aclusterdb\u7684\u8868\u540d\u89c6\u4e3a\u5df2\u52a0\u53cc\u5f15\u53f7\uff1b\u4e0d\u518d\u628areindexdb\u7684\u8868\u540d\u548c\u7d22\u5f15\u540d\u89c6\u4e3a\u5df2\u52a0\u53cc\u5f15\u53f7", "commits": [], "section": "\u547d\u4ee4\u884c\u5de5\u5177", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "585701e9649ad2ae05b48606f24094945e3bcedd4689c1e593ac12000dbe943b", "section_path": ["\u547d\u4ee4\u884c\u5de5\u5177"], "commit_groups": [], "identity_text": "No longer treat clusterdb table names as double-quoted; no longer treat reindexdb table and index names as double-quoted (Bruce Momjian) Users must now include double-quotes in the command arguments if quoting is wanted.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/013", "db_id": "d6f6ed236ca3d1da37c693939c97a91d", "patch_ids": [], "statement_hash": "305b5399ba81c8baa62d4b3f9bbf4e728c8701ef4e889ace6fc787dee57ffb55", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-252c006c84f0d7a8", "migration": true}, {"id": "9.2.0-7ad135c980fbfd45", "cves": [], "html": "<p> <a href=\"/docs/9.2/app-createuser.html\" title=\"createuser\"><span>createuser</span></a> \u9ed8\u8ba4\u4e0d\u518d\u63d0\u793a\u8f93\u5165\u9009\u9879\u8bbe\u7f6e\uff08Peter Eisentraut\uff09\n     </p><p>      \u4f7f\u7528 <code>--interactive</code> \u83b7\u5f97\u65e7\u884c\u4e3a\u3002\n     </p>", "text": "createuser \u9ed8\u8ba4\u4e0d\u518d\u63d0\u793a\u8f93\u5165\u9009\u9879\u8bbe\u7f6e\uff08Peter Eisentraut\uff09 \u4f7f\u7528 --interactive \u83b7\u5f97\u65e7\u884c\u4e3a\u3002", "title": "createuser \u9ed8\u8ba4\u4e0d\u518d\u63d0\u793a\u8f93\u5165\u9009\u9879\u8bbe\u7f6e", "commits": [], "section": "\u547d\u4ee4\u884c\u5de5\u5177", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "06adfce04170b2926fa77a705ecb1b8e6962f2964d78fa6e5732e68da82b415d", "section_path": ["\u547d\u4ee4\u884c\u5de5\u5177"], "commit_groups": [], "identity_text": "createuser no longer prompts for option settings by default (Peter Eisentraut) Use --interactive to obtain the old behavior.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/014", "db_id": "a3681476eada4ef8a3970f2ab32bd7e9", "patch_ids": [], "statement_hash": "0cf7dd5775767f6ffbac2b934141599a81eef7b4687716472e4d63b83ff3964c", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-7ad135c980fbfd45", "migration": true}, {"id": "9.2.0-ac6a997ef928f243", "cves": [], "html": "<p>      \u9664\u975e\u6307\u5b9a <code>--interactive</code>\uff0c\u5426\u5219\u7981\u7528<a href=\"/docs/9.2/app-dropuser.html\" title=\"dropuser\"><span>dropuser</span></a>\u4e2d\u7684\u7528\u6237\u540d\u63d0\u793a\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u9664\u975e\u6307\u5b9a --interactive\uff0c\u5426\u5219\u7981\u7528dropuser\u4e2d\u7684\u7528\u6237\u540d\u63d0\u793a\uff08Peter Eisentraut\uff09", "title": "\u9664\u975e\u6307\u5b9a --interactive\uff0c\u5426\u5219\u7981\u7528dropuser\u4e2d\u7684\u7528\u6237\u540d\u63d0\u793a", "commits": [], "section": "\u547d\u4ee4\u884c\u5de5\u5177", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "8837bd904ae0a74b5d0d5b27fc1f92327e0f0516dbd4eea0a5690f78e8f7ebde", "section_path": ["\u547d\u4ee4\u884c\u5de5\u5177"], "commit_groups": [], "identity_text": "Disable prompting for the user name in dropuser unless --interactive is specified (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/015", "db_id": "81fbf46890a96697c90f3afa4f68e2ba", "patch_ids": [], "statement_hash": "d2bdb34b3a105eefe06ebc43dbcf7394bf861bdd20dff3de3ba1114cd27c245b", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-ac6a997ef928f243", "migration": true}, {"id": "9.2.0-701dba5458c47731", "cves": [], "html": "<p>      \u65b0\u589e\u7528\u4e8e\u6307\u5b9a<a href=\"/docs/9.2/runtime-config-connection.html#GUC-SSL-CA-FILE\">\u670d\u52a1\u5668\u7aef <acronym>SSL</acronym> \u6587\u4ef6\u4f4d\u7f6e</a>\u7684\u670d\u52a1\u5668\u53c2\u6570\uff08Peter Eisentraut\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u66f4\u6539\u6b64\u524d\u5728\u6570\u636e\u76ee\u5f55\u4e2d\u786c\u7f16\u7801\u4e3a <code>server.crt</code>\u3001<code>server.key</code>\u3001<code>root.crt</code> \u548c <code>root.crl</code> \u7684\u6587\u4ef6\u7684\u540d\u79f0\u548c\u4f4d\u7f6e\u3002<span><em>\u670d\u52a1\u5668\u9ed8\u8ba4\u4e0d\u518d\u68c0\u67e5 <code>root.crt</code> \u6216 <code>root.crl</code></em></span>\uff1b\u8981\u52a0\u8f7d\u8fd9\u4e9b\u6587\u4ef6\uff0c\u5fc5\u987b\u628a\u76f8\u5173\u53c2\u6570\u8bbe\u4e3a\u975e\u9ed8\u8ba4\u503c\u3002\n     </p>", "text": "\u65b0\u589e\u7528\u4e8e\u6307\u5b9a\u670d\u52a1\u5668\u7aef SSL \u6587\u4ef6\u4f4d\u7f6e\u7684\u670d\u52a1\u5668\u53c2\u6570\uff08Peter Eisentraut\uff09 \u8fd9\u5141\u8bb8\u66f4\u6539\u6b64\u524d\u5728\u6570\u636e\u76ee\u5f55\u4e2d\u786c\u7f16\u7801\u4e3a server.crt\u3001server.key\u3001root.crt \u548c root.crl \u7684\u6587\u4ef6\u7684\u540d\u79f0\u548c\u4f4d\u7f6e\u3002\u670d\u52a1\u5668\u9ed8\u8ba4\u4e0d\u518d\u68c0\u67e5 root.crt \u6216 root.crl\uff1b\u8981\u52a0\u8f7d\u8fd9\u4e9b\u6587\u4ef6\uff0c\u5fc5\u987b\u628a\u76f8\u5173\u53c2\u6570\u8bbe\u4e3a\u975e\u9ed8\u8ba4\u503c\u3002", "title": "\u65b0\u589e\u7528\u4e8e\u6307\u5b9a\u670d\u52a1\u5668\u7aef SSL \u6587\u4ef6\u4f4d\u7f6e\u7684\u670d\u52a1\u5668\u53c2\u6570", "commits": [], "section": "\u670d\u52a1\u5668\u8bbe\u7f6e", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "199ac5cc8de895f05ff15c2d8a9d6a7bc4a88e6d43b4c4a29d9823dc89d82d1b", "section_path": ["\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Add server parameters for specifying the locations of server-side SSL files (Peter Eisentraut) This allows changing the names and locations of the files that were previously hard-coded as server.crt, server.key, root.crt, and root.crl in the data directory. The server will no longer examine root.crt or root.crl by default; to load these files, the associated parameters must be set to non-default values.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/016", "db_id": "9757f6ad288ad8cf45494ca191a69bbf", "patch_ids": [], "statement_hash": "a69d1f76c482d875809fcfdb77f28b015d6ae97da5d037e643f67323848cfb4a", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-701dba5458c47731", "migration": true}, {"id": "9.2.0-4cde5ab2a51778e9", "cves": [], "html": "<p>      \u79fb\u9664 <code>silent_mode</code> \u53c2\u6570\uff08Heikki Linnakangas\uff09\n     </p><p>      \u7c7b\u4f3c\u7684\u884c\u4e3a\u53ef\u4ee5\u7528 <code>pg_ctl start -l postmaster.log</code> \u83b7\u5f97\u3002\n     </p>", "text": "\u79fb\u9664 silent_mode \u53c2\u6570\uff08Heikki Linnakangas\uff09 \u7c7b\u4f3c\u7684\u884c\u4e3a\u53ef\u4ee5\u7528 pg_ctl start -l postmaster.log \u83b7\u5f97\u3002", "title": "\u79fb\u9664 silent_mode \u53c2\u6570", "commits": [], "section": "\u670d\u52a1\u5668\u8bbe\u7f6e", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "f07a37d9cc57db141cb1f30cd53563558e90fddcfa6c2195cb737e3ad75d4ce5", "section_path": ["\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Remove the silent_mode parameter (Heikki Linnakangas) Similar behavior can be obtained with pg_ctl start -l postmaster.log.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/017", "db_id": "c74d75a5437ebdedd8b424c27cf54e23", "patch_ids": [], "statement_hash": "b9a8a07c39a21c55ddc0525b80cbb1427c2e8c0cd6d87e579af220995422ef0b", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-4cde5ab2a51778e9", "migration": true}, {"id": "9.2.0-a6f32313e72bf521", "cves": [], "html": "<p>      \u79fb\u9664 <code>wal_sender_delay</code> \u53c2\u6570\uff0c\u56e0\u4e3a\u5b83\u4e0d\u518d\u9700\u8981\uff08Tom Lane\uff09\n     </p>", "text": "\u79fb\u9664 wal_sender_delay \u53c2\u6570\uff0c\u56e0\u4e3a\u5b83\u4e0d\u518d\u9700\u8981\uff08Tom Lane\uff09", "title": "\u79fb\u9664 wal_sender_delay \u53c2\u6570\uff0c\u56e0\u4e3a\u5b83\u4e0d\u518d\u9700\u8981", "commits": [], "section": "\u670d\u52a1\u5668\u8bbe\u7f6e", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "2ed330db0ed157a298459a3531f7d4d593b45acda07d4fc9ab49be6303812f20", "section_path": ["\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Remove the wal_sender_delay parameter, as it is no longer needed (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/018", "db_id": "2486b269f5c650a792cef3f90b49cfc5", "patch_ids": [], "statement_hash": "b3228539187858d7cc546ad6710f1a5fadb332f239f00c3e734611eab70078d4", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-a6f32313e72bf521", "migration": true}, {"id": "9.2.0-792e0b44598eb86d", "cves": [], "html": "<p>      \u79fb\u9664 <code>custom_variable_classes</code> \u53c2\u6570\uff08Tom Lane\uff09\n     </p><p>      \u8be5\u8bbe\u7f6e\u63d0\u4f9b\u7684\u68c0\u67e5\u4ef7\u503c\u5b58\u7591\u3002\u73b0\u5728\u4efb\u4f55\u8bbe\u7f6e\u90fd\u53ef\u4ee5\u4ee5\u4efb\u4f55\u7c7b\u540d\u4e3a\u524d\u7f00\u3002\n     </p>", "text": "\u79fb\u9664 custom_variable_classes \u53c2\u6570\uff08Tom Lane\uff09 \u8be5\u8bbe\u7f6e\u63d0\u4f9b\u7684\u68c0\u67e5\u4ef7\u503c\u5b58\u7591\u3002\u73b0\u5728\u4efb\u4f55\u8bbe\u7f6e\u90fd\u53ef\u4ee5\u4ee5\u4efb\u4f55\u7c7b\u540d\u4e3a\u524d\u7f00\u3002", "title": "\u79fb\u9664 custom_variable_classes \u53c2\u6570", "commits": [], "section": "\u670d\u52a1\u5668\u8bbe\u7f6e", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "60d3f23f34d5de0940b17a4730e9bc4102e26e23ff49737617cd165efd6de159", "section_path": ["\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Remove the custom_variable_classes parameter (Tom Lane) The checking provided by this setting was dubious. Now any setting can be prefixed by any class name.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/019", "db_id": "42e50b71bd412144eebcde5c01397a38", "patch_ids": [], "statement_hash": "bd8d9343977fa392c4d58077f752a1963f80e41637a81dcf6e601fb03d1e5400", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-792e0b44598eb86d", "migration": true}, {"id": "9.2.0-453b1bca8fcd1555", "cves": [], "html": "<p>      \u628a <a href=\"/docs/9.2/monitoring-stats.html#MONITORING-STATS-VIEWS-TABLE\" title=\"\u8868\u00a027.1.\u00a0\u6807\u51c6\u7edf\u8ba1\u89c6\u56fe\"><code>pg_stat_activity</code></a><code>.procpid</code> \u91cd\u547d\u540d\u4e3a <code>pid</code>\uff0c\u4ee5\u4e0e\u5176\u4ed6\u7cfb\u7edf\u8868\u4e00\u81f4\uff08Magnus Hagander\uff09\n     </p>", "text": "\u628a pg_stat_activity.procpid \u91cd\u547d\u540d\u4e3a pid\uff0c\u4ee5\u4e0e\u5176\u4ed6\u7cfb\u7edf\u8868\u4e00\u81f4\uff08Magnus Hagander\uff09", "title": "\u628a pg_stat_activity.procpid \u91cd\u547d\u540d\u4e3a pid\uff0c\u4ee5\u4e0e\u5176\u4ed6\u7cfb\u7edf\u8868\u4e00\u81f4", "commits": [], "section": "\u76d1\u63a7", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "9e4d37d0d2c0d28492e2d5b204a4a9b6562477dca32eb1b9171e296d0dd03edd", "section_path": ["\u76d1\u63a7"], "commit_groups": [], "identity_text": "Rename pg_stat_activity.procpid to pid, to match other system tables (Magnus Hagander)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/020", "db_id": "fe24c5a433d1ae3698cd736cc9df609b", "patch_ids": [], "statement_hash": "e5480300f0d43cf2d8dd903da9608beb13fb0d660d4467a1cb1f2e1ab9c579c7", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-453b1bca8fcd1555", "migration": true}, {"id": "9.2.0-6753510ed67e9def", "cves": [], "html": "<p>      \u4e3a <code>pg_stat_activity</code> \u521b\u5efa\u5355\u72ec\u7684\u5217\u6765\u62a5\u544a\u8fdb\u7a0b\u72b6\u6001\uff08Scott Mead\u3001Magnus Hagander\uff09\n     </p><p>      \u5148\u524d\u7684 <code>query</code> \u548c <code>query_start</code> \u503c\u73b0\u5728\u5bf9\u7a7a\u95f2\u4f1a\u8bdd\u4ecd\u7136\u53ef\u7528\uff0c\u4ece\u800c\u652f\u6301\u66f4\u5f3a\u7684\u5206\u6790\u3002\n     </p>", "text": "\u4e3a pg_stat_activity \u521b\u5efa\u5355\u72ec\u7684\u5217\u6765\u62a5\u544a\u8fdb\u7a0b\u72b6\u6001\uff08Scott Mead\u3001Magnus Hagander\uff09 \u5148\u524d\u7684 query \u548c query_start \u503c\u73b0\u5728\u5bf9\u7a7a\u95f2\u4f1a\u8bdd\u4ecd\u7136\u53ef\u7528\uff0c\u4ece\u800c\u652f\u6301\u66f4\u5f3a\u7684\u5206\u6790\u3002", "title": "\u4e3a pg_stat_activity \u521b\u5efa\u5355\u72ec\u7684\u5217\u6765\u62a5\u544a\u8fdb\u7a0b\u72b6\u6001", "commits": [], "section": "\u76d1\u63a7", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "7385e6dc9511e1be877eca25e5abe1ae6598a8df39f155a741c11715f7d13855", "section_path": ["\u76d1\u63a7"], "commit_groups": [], "identity_text": "Create a separate pg_stat_activity column to report process state (Scott Mead, Magnus Hagander) The previous query and query_start values now remain available for an idle session, allowing enhanced analysis.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/021", "db_id": "afe2694988fcfba674104dc9e2e9be15", "patch_ids": [], "statement_hash": "211f00ece4f5f565bd86d3d62db4d41f35b4eebb5c90c48dadcf69713936cded", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-6753510ed67e9def", "migration": true}, {"id": "9.2.0-6819edd4d1e6fcb9", "cves": [], "html": "<p>      \u628a <code>pg_stat_activity</code>.<code>current_query</code> \u91cd\u547d\u540d\u4e3a <code>query</code>\uff0c\u56e0\u4e3a\u5b83\u5728\u67e5\u8be2\u5b8c\u6210\u540e\u4e0d\u4f1a\u88ab\u6e05\u9664\uff08Magnus Hagander\uff09\n     </p>", "text": "\u628a pg_stat_activity.current_query \u91cd\u547d\u540d\u4e3a query\uff0c\u56e0\u4e3a\u5b83\u5728\u67e5\u8be2\u5b8c\u6210\u540e\u4e0d\u4f1a\u88ab\u6e05\u9664\uff08Magnus Hagander\uff09", "title": "\u628a pg_stat_activity.current_query \u91cd\u547d\u540d\u4e3a query\uff0c\u56e0\u4e3a\u5b83\u5728\u67e5\u8be2\u5b8c\u6210\u540e\u4e0d\u4f1a\u88ab\u6e05\u9664", "commits": [], "section": "\u76d1\u63a7", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "35331357c2993aa53369aa25ecf2bce8e79a4fc75cbce5aaa1be0e74de62a036", "section_path": ["\u76d1\u63a7"], "commit_groups": [], "identity_text": "Rename pg_stat_activity.current_query to query because it is not cleared when the query completes (Magnus Hagander)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/022", "db_id": "7c88516c204e84fd2eb26f59f64cdfdc", "patch_ids": [], "statement_hash": "3580c6d275d16534c5c35594bc823e593d5530d7bb933cbb4e165881de2c7217", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-6819edd4d1e6fcb9", "migration": true}, {"id": "9.2.0-bb3cdb1ad4ee3524", "cves": [], "html": "<p>      \u628a\u6240\u6709 <acronym>SQL</acronym> \u7ea7\u7edf\u8ba1\u8ba1\u65f6\u503c\u6539\u4e3a\u4ee5\u6beb\u79d2\u8ba1\u7684 <code>float8</code> \u5217\uff08Tom Lane\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u6d88\u9664\u4e86\u8bbe\u8ba1\u4e2d\"\u503c\u7cbe\u786e\u5230\u5fae\u79d2\u4e14\u4ec5\u5230\u5fae\u79d2\"\u7684\u5047\u8bbe\uff08\u56e0\u4e3a <code>float8</code> \u503c\u53ef\u4ee5\u5e26\u5c0f\u6570\uff09\u3002\u53d7\u5f71\u54cd\u7684\u5217\u6709 <code>pg_stat_user_functions</code>.<code>total_time</code>\u3001<code>pg_stat_user_functions</code>.<code>self_time</code>\u3001<code>pg_stat_xact_user_functions</code>.<code>total_time</code> \u548c <code>pg_stat_xact_user_functions</code>.<code>self_time</code>\u3002\u8fd9\u4e9b\u5217\u5e95\u5c42\u7684\u7edf\u8ba1\u51fd\u6570\u73b0\u5728\u4e5f\u8fd4\u56de <code>float8</code> \u6beb\u79d2\u800c\u4e0d\u662f <code>bigint</code> \u5fae\u79d2\u3002<code>contrib/pg_stat_statements</code> \u7684 <code>total_time</code> \u5217\u73b0\u5728\u4e5f\u4ee5\u6beb\u79d2\u8ba1\u3002\n     </p>", "text": "\u628a\u6240\u6709 SQL \u7ea7\u7edf\u8ba1\u8ba1\u65f6\u503c\u6539\u4e3a\u4ee5\u6beb\u79d2\u8ba1\u7684 float8 \u5217\uff08Tom Lane\uff09 \u6b64\u53d8\u66f4\u6d88\u9664\u4e86\u8bbe\u8ba1\u4e2d\"\u503c\u7cbe\u786e\u5230\u5fae\u79d2\u4e14\u4ec5\u5230\u5fae\u79d2\"\u7684\u5047\u8bbe\uff08\u56e0\u4e3a float8 \u503c\u53ef\u4ee5\u5e26\u5c0f\u6570\uff09\u3002\u53d7\u5f71\u54cd\u7684\u5217\u6709 pg_stat_user_functions.total_time\u3001pg_stat_user_functions.self_time\u3001pg_stat_xact_user_functions.total_time \u548c pg_stat_xact_user_functions.self_time\u3002\u8fd9\u4e9b\u5217\u5e95\u5c42\u7684\u7edf\u8ba1\u51fd\u6570\u73b0\u5728\u4e5f\u8fd4\u56de float8 \u6beb\u79d2\u800c\u4e0d\u662f bigint \u5fae\u79d2\u3002contrib/pg_stat_statements \u7684 total_time \u5217\u73b0\u5728\u4e5f\u4ee5\u6beb\u79d2\u8ba1\u3002", "title": "\u628a\u6240\u6709 SQL \u7ea7\u7edf\u8ba1\u8ba1\u65f6\u503c\u6539\u4e3a\u4ee5\u6beb\u79d2\u8ba1\u7684 float8 \u5217", "commits": [], "section": "\u76d1\u63a7", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "517218fe95fc8bf187f12b76ed3772d7783033d6ec9013746503de407804b4af", "section_path": ["\u76d1\u63a7"], "commit_groups": [], "identity_text": "Change all SQL-level statistics timing values to be float8 columns measured in milliseconds (Tom Lane) This change eliminates the designed-in assumption that the values are accurate to microseconds and no more (since the float8 values can be fractional). The columns affected are pg_stat_user_functions.total_time, pg_stat_user_functions.self_time, pg_stat_xact_user_functions.total_time, and pg_stat_xact_user_functions.self_time. The statistics functions underlying these columns now also return float8 milliseconds, rather than bigint microseconds. contrib/pg_stat_statements' total_time column is now also measured in milliseconds.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/migration/023", "db_id": "12328f64f6dddca361a81f77e51ebb80", "patch_ids": [], "statement_hash": "d1138dd95b024f144f44d24968ffb0b5569789d89a5684e9cb63279f6eb7d4c9", "relations": [], "category_label": "\u517c\u5bb9\u6027\u53d8\u5316", "url": "/docs/compare/?release=9.2.0#9.2.0-bb3cdb1ad4ee3524", "migration": true}, {"id": "9.2.0-b925f0ae9d1e165d", "cves": [], "html": "<p>      \u5141\u8bb8\u67e5\u8be2\u53ea\u4ece\u7d22\u5f15\u68c0\u7d22\u6570\u636e\uff0c\u907f\u514d\u5806\u8bbf\u95ee\uff08Robert Haas\u3001Ibrar Ahmed\u3001Heikki Linnakangas\u3001Tom Lane\uff09\n     </p><p>      \u6b64\u7279\u6027\u5e38\u79f0\u4e3a<em>\u4ec5\u7d22\u5f15\u626b\u63cf</em>\u3002\u5bf9\u4e8e\u53ea\u5305\u542b\u5bf9\u6240\u6709\u4f1a\u8bdd\u53ef\u89c1\u7684\u5143\u7ec4\u7684\u5806\u9875\uff08\u7531\u53ef\u89c1\u6027\u6620\u5c04\u62a5\u544a\uff09\uff0c\u53ef\u4ee5\u8df3\u8fc7\u5806\u8bbf\u95ee\uff1b\u56e0\u6b64\u8be5\u6536\u76ca\u4e3b\u8981\u9002\u7528\u4e8e\u57fa\u672c\u9759\u6001\u7684\u6570\u636e\u3002\u4f5c\u4e3a\u5b9e\u73b0\u6b64\u7279\u6027\u7684\u5fc5\u8981\u90e8\u5206\uff0c\u53ef\u89c1\u6027\u6620\u5c04\u88ab\u505a\u6210\u4e86\u5d29\u6e83\u5b89\u5168\u7684\u3002\n     </p>", "text": "\u5141\u8bb8\u67e5\u8be2\u53ea\u4ece\u7d22\u5f15\u68c0\u7d22\u6570\u636e\uff0c\u907f\u514d\u5806\u8bbf\u95ee\uff08Robert Haas\u3001Ibrar Ahmed\u3001Heikki Linnakangas\u3001Tom Lane\uff09 \u6b64\u7279\u6027\u5e38\u79f0\u4e3a\u4ec5\u7d22\u5f15\u626b\u63cf\u3002\u5bf9\u4e8e\u53ea\u5305\u542b\u5bf9\u6240\u6709\u4f1a\u8bdd\u53ef\u89c1\u7684\u5143\u7ec4\u7684\u5806\u9875\uff08\u7531\u53ef\u89c1\u6027\u6620\u5c04\u62a5\u544a\uff09\uff0c\u53ef\u4ee5\u8df3\u8fc7\u5806\u8bbf\u95ee\uff1b\u56e0\u6b64\u8be5\u6536\u76ca\u4e3b\u8981\u9002\u7528\u4e8e\u57fa\u672c\u9759\u6001\u7684\u6570\u636e\u3002\u4f5c\u4e3a\u5b9e\u73b0\u6b64\u7279\u6027\u7684\u5fc5\u8981\u90e8\u5206\uff0c\u53ef\u89c1\u6027\u6620\u5c04\u88ab\u505a\u6210\u4e86\u5d29\u6e83\u5b89\u5168\u7684\u3002", "title": "\u5141\u8bb8\u67e5\u8be2\u53ea\u4ece\u7d22\u5f15\u68c0\u7d22\u6570\u636e\uff0c\u907f\u514d\u5806\u8bbf\u95ee", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "0a8a951015e6684d482e91af8dba2e6aa2593367fb9fc3b2837a3735a9365736", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Allow queries to retrieve data only from indexes, avoiding heap access (Robert Haas, Ibrar Ahmed, Heikki Linnakangas, Tom Lane) This feature is often called index-only scans. Heap access can be skipped for heap pages containing only tuples that are visible to all sessions, as reported by the visibility map; so the benefit applies mainly to mostly-static data. The visibility map was made crash-safe as a necessary part of implementing this feature.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/001", "db_id": "5ab85856749df93633285cf7a69eb0f3", "patch_ids": [], "statement_hash": "fb7dac412d08b893f1a1988fe396d803fe20e922ee02bed8cd4cd34227fd101f", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-b925f0ae9d1e165d", "migration": false}, {"id": "9.2.0-eeb9b37163818009", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/spgist.html\" title=\"\u7b2c\u00a054\u00a0\u7ae0\u00a0SP-GiST \u7d22\u5f15\">SP-GiST</a>\uff08\u7a7a\u95f4\u5206\u533a GiST\uff09\u7d22\u5f15\u8bbf\u95ee\u65b9\u6cd5\uff08Teodor Sigaev\u3001Oleg Bartunov\u3001Tom Lane\uff09\n     </p><p>      SP-GiST \u5728\u7075\u6d3b\u6027\u4e0a\u4e0e GiST \u76f8\u5f53\uff0c\u4f46\u652f\u6301\u975e\u5e73\u8861\u7684\u5206\u533a\u641c\u7d22\u7ed3\u6784\u800c\u4e0d\u662f\u5e73\u8861\u6811\u3002\u5bf9\u4e8e\u5408\u9002\u7684\u95ee\u9898\uff0cSP-GiST \u5728\u7d22\u5f15\u6784\u5efa\u65f6\u95f4\u548c\u641c\u7d22\u65f6\u95f4\u4e0a\u90fd\u53ef\u4ee5\u6bd4 GiST \u66f4\u5feb\u3002\n     </p>", "text": "\u65b0\u589e SP-GiST\uff08\u7a7a\u95f4\u5206\u533a GiST\uff09\u7d22\u5f15\u8bbf\u95ee\u65b9\u6cd5\uff08Teodor Sigaev\u3001Oleg Bartunov\u3001Tom Lane\uff09 SP-GiST \u5728\u7075\u6d3b\u6027\u4e0a\u4e0e GiST \u76f8\u5f53\uff0c\u4f46\u652f\u6301\u975e\u5e73\u8861\u7684\u5206\u533a\u641c\u7d22\u7ed3\u6784\u800c\u4e0d\u662f\u5e73\u8861\u6811\u3002\u5bf9\u4e8e\u5408\u9002\u7684\u95ee\u9898\uff0cSP-GiST \u5728\u7d22\u5f15\u6784\u5efa\u65f6\u95f4\u548c\u641c\u7d22\u65f6\u95f4\u4e0a\u90fd\u53ef\u4ee5\u6bd4 GiST \u66f4\u5feb\u3002", "title": "\u65b0\u589e SP-GiST\uff08\u7a7a\u95f4\u5206\u533a GiST\uff09\u7d22\u5f15\u8bbf\u95ee\u65b9\u6cd5", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "dcdd33cfefc9c972f48d38bba2ac00f5672237a2fd2f2d9c0568a379473bda2f", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Add the SP-GiST (Space-Partitioned GiST) index access method (Teodor Sigaev, Oleg Bartunov, Tom Lane) SP-GiST is comparable to GiST in flexibility, but supports unbalanced partitioned search structures rather than balanced trees. For suitable problems, SP-GiST can be faster than GiST in both index build time and search time.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/002", "db_id": "f93ecf41d795fd0e941da20eaa3480ab", "patch_ids": [], "statement_hash": "b84a32397ec0193f5530f400dfaf877173b0d674ce1bbbd6e0b185909e93355c", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-eeb9b37163818009", "migration": false}, {"id": "9.2.0-cd595d8c1fc673f5", "cves": [], "html": "<p>      \u5141\u8bb8\u7ec4\u63d0\u4ea4\u5728\u9ad8\u8d1f\u8f7d\u4e0b\u6709\u6548\u5de5\u4f5c\uff08Peter Geoghegan\u3001Simon Riggs\u3001Heikki Linnakangas\uff09\n     </p><p>      \u6b64\u524d\uff0c\u968f\u7740\u5199\u8d1f\u8f7d\u589e\u52a0\uff0c\u7531\u4e8e\u5185\u90e8\u9501\u7ade\u4e89\uff0c\u63d0\u4ea4\u6279\u5904\u7406\u53d8\u5f97\u65e0\u6548\u3002\n     </p>", "text": "\u5141\u8bb8\u7ec4\u63d0\u4ea4\u5728\u9ad8\u8d1f\u8f7d\u4e0b\u6709\u6548\u5de5\u4f5c\uff08Peter Geoghegan\u3001Simon Riggs\u3001Heikki Linnakangas\uff09 \u6b64\u524d\uff0c\u968f\u7740\u5199\u8d1f\u8f7d\u589e\u52a0\uff0c\u7531\u4e8e\u5185\u90e8\u9501\u7ade\u4e89\uff0c\u63d0\u4ea4\u6279\u5904\u7406\u53d8\u5f97\u65e0\u6548\u3002", "title": "\u5141\u8bb8\u7ec4\u63d0\u4ea4\u5728\u9ad8\u8d1f\u8f7d\u4e0b\u6709\u6548\u5de5\u4f5c", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "b3311726754b6c4b1e866c3b3b7e5b0876424d0f30507cb5f0c7a52426f7595c", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Allow group commit to work effectively under heavy load (Peter Geoghegan, Simon Riggs, Heikki Linnakangas) Previously, batching of commits became ineffective as the write workload increased, because of internal lock contention.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/003", "db_id": "209be7e0d42bb58dfea1539f7dd6bbdb", "patch_ids": [], "statement_hash": "fffa2da52951c00820570b9bc1d06447f0fc92c492c139d77b3a36321686e517", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-cd595d8c1fc673f5", "migration": false}, {"id": "9.2.0-dcb302a38879a31b", "cves": [], "html": "<p>      \u5141\u8bb8\u65e0\u7ade\u4e89\u9501\u4f7f\u7528\u65b0\u7684\u5feb\u901f\u8def\u5f84\u9501\u673a\u5236\u7ba1\u7406\uff08Robert Haas\uff09\n     </p>", "text": "\u5141\u8bb8\u65e0\u7ade\u4e89\u9501\u4f7f\u7528\u65b0\u7684\u5feb\u901f\u8def\u5f84\u9501\u673a\u5236\u7ba1\u7406\uff08Robert Haas\uff09", "title": "\u5141\u8bb8\u65e0\u7ade\u4e89\u9501\u4f7f\u7528\u65b0\u7684\u5feb\u901f\u8def\u5f84\u9501\u673a\u5236\u7ba1\u7406", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "2736333ce50a487d846bca46578dc8326965fb9d68a6fe4973cca1c0cba8ba0c", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Allow uncontended locks to be managed using a new fast-path lock mechanism (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/004", "db_id": "12c6d907ad18073690e752969632825f", "patch_ids": [], "statement_hash": "983728fa7370f06adc42ce60ccac1eaecb65d2139e726a9b680bff52852f293b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-dcb302a38879a31b", "migration": false}, {"id": "9.2.0-acfa1d52e74cb3f7", "cves": [], "html": "<p>      \u964d\u4f4e\u521b\u5efa\u865a\u62df\u4e8b\u52a1 ID \u9501\u7684\u5f00\u9500\uff08Robert Haas\uff09\n     </p>", "text": "\u964d\u4f4e\u521b\u5efa\u865a\u62df\u4e8b\u52a1 ID \u9501\u7684\u5f00\u9500\uff08Robert Haas\uff09", "title": "\u964d\u4f4e\u521b\u5efa\u865a\u62df\u4e8b\u52a1 ID \u9501\u7684\u5f00\u9500", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "85fc9af85f8b982622c06eae7d1bfab4c6bc30000f420bf04408d7f2f6aa9aa8", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Reduce overhead of creating virtual transaction ID locks (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/005", "db_id": "c1ec426556629b977dcab1d90359d412", "patch_ids": [], "statement_hash": "e0f16c6b5645440e1b68129f584f82189dd1f26411ba1958965b9b59c618c8bf", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-acfa1d52e74cb3f7", "migration": false}, {"id": "9.2.0-fc3bec64df19e689", "cves": [], "html": "<p>      \u964d\u4f4e\u53ef\u5e8f\u5217\u5316\u9694\u79bb\u7ea7\u522b\u9501\u7684\u5f00\u9500\uff08Dan Ports\uff09\n     </p>", "text": "\u964d\u4f4e\u53ef\u5e8f\u5217\u5316\u9694\u79bb\u7ea7\u522b\u9501\u7684\u5f00\u9500\uff08Dan Ports\uff09", "title": "\u964d\u4f4e\u53ef\u5e8f\u5217\u5316\u9694\u79bb\u7ea7\u522b\u9501\u7684\u5f00\u9500", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "4ff70b86738d0d0853c25970d2d854ad8137645f3778772406222006d7834768", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Reduce the overhead of serializable isolation level locks (Dan Ports)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/006", "db_id": "0b4686b0eeae5671371dcfbd407903ea", "patch_ids": [], "statement_hash": "146b578b5c310654a51ec9860dbe455fe82c79bcb100a537f7873bd0c7ded468", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-fc3bec64df19e689", "migration": false}, {"id": "9.2.0-7020ba27f590075f", "cves": [], "html": "<p>      \u6539\u8fdb PowerPC \u548c Itanium \u4e0a\u7684\u81ea\u65cb\u9501\u6027\u80fd\uff08Manabu Ori\u3001Robert Haas\u3001Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb PowerPC \u548c Itanium \u4e0a\u7684\u81ea\u65cb\u9501\u6027\u80fd\uff08Manabu Ori\u3001Robert Haas\u3001Tom Lane\uff09", "title": "\u6539\u8fdb PowerPC \u548c Itanium \u4e0a\u7684\u81ea\u65cb\u9501\u6027\u80fd", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "002f780e5019ce419ccc284f6845e22b0b841a3671b58ceada043c96b0fd0db7", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Improve PowerPC and Itanium spinlock performance (Manabu Ori, Robert Haas, Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/007", "db_id": "284837d1d1eb22e171cf3fba850635e7", "patch_ids": [], "statement_hash": "8d85af13d0e3c2e782893e7f6031b6158b05ddb7b9b3ca40e30c7032cbe51dc9", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-7020ba27f590075f", "migration": false}, {"id": "9.2.0-c5b057ad48e328f0", "cves": [], "html": "<p>      \u964d\u4f4e\u5171\u4eab\u5931\u6548\u7f13\u5b58\u6d88\u606f\u7684\u5f00\u9500\uff08Robert Haas\uff09\n     </p>", "text": "\u964d\u4f4e\u5171\u4eab\u5931\u6548\u7f13\u5b58\u6d88\u606f\u7684\u5f00\u9500\uff08Robert Haas\uff09", "title": "\u964d\u4f4e\u5171\u4eab\u5931\u6548\u7f13\u5b58\u6d88\u606f\u7684\u5f00\u9500", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "ab8e94c542987baccc9b7b95e07904cb79d737b234f2db60d602a419b2abefd7", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Reduce overhead for shared invalidation cache messages (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/008", "db_id": "d74291d2aaa1a0b0d76f5242dcd10dd7", "patch_ids": [], "statement_hash": "006103683be00e32d2d50626c733fe1d5f212dde02e84064fd3dcdff5bc9e5bb", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-c5b057ad48e328f0", "migration": false}, {"id": "9.2.0-4a8dd8f160bf8e7d", "cves": [], "html": "<p>      \u628a <code>PGPROC</code> \u5171\u4eab\u5185\u5b58\u6570\u7ec4\u4e2d\u9891\u7e41\u8bbf\u95ee\u7684\u6210\u5458\u79fb\u5230\u5355\u72ec\u7684\u6570\u7ec4\u4e2d\uff08Pavan Deolasee\u3001Heikki Linnakangas\u3001Robert Haas\uff09\n     </p>", "text": "\u628a PGPROC \u5171\u4eab\u5185\u5b58\u6570\u7ec4\u4e2d\u9891\u7e41\u8bbf\u95ee\u7684\u6210\u5458\u79fb\u5230\u5355\u72ec\u7684\u6570\u7ec4\u4e2d\uff08Pavan Deolasee\u3001Heikki Linnakangas\u3001Robert Haas\uff09", "title": "\u628a PGPROC \u5171\u4eab\u5185\u5b58\u6570\u7ec4\u4e2d\u9891\u7e41\u8bbf\u95ee\u7684\u6210\u5458\u79fb\u5230\u5355\u72ec\u7684\u6570\u7ec4\u4e2d", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "7cbe5627fff2f17da0ae2701790fb24833da5e3503aa3512255044fd59836743", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Move the frequently accessed members of the PGPROC shared memory array to a separate array (Pavan Deolasee, Heikki Linnakangas, Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/009", "db_id": "77939c6b387a87ce9fcbdbf6088e810b", "patch_ids": [], "statement_hash": "47c70bfae97a5e4315c90d8b1f1a737151e1af6974895b833a38972a288ca386", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4a8dd8f160bf8e7d", "migration": false}, {"id": "9.2.0-9293df95dc795809", "cves": [], "html": "<p>      \u901a\u8fc7\u6279\u91cf\u5411\u5806\u6dfb\u52a0\u5143\u7ec4\u6765\u6539\u8fdb <code>COPY</code> \u6027\u80fd\uff08Heikki Linnakangas\uff09\n     </p>", "text": "\u901a\u8fc7\u6279\u91cf\u5411\u5806\u6dfb\u52a0\u5143\u7ec4\u6765\u6539\u8fdb COPY \u6027\u80fd\uff08Heikki Linnakangas\uff09", "title": "\u901a\u8fc7\u6279\u91cf\u5411\u5806\u6dfb\u52a0\u5143\u7ec4\u6765\u6539\u8fdb COPY \u6027\u80fd", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "b2c826f8350bba9f2028ce0dcb1115829b28fdd45a069aea13a43c1c88de8995", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Improve COPY performance by adding tuples to the heap in batches (Heikki Linnakangas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/010", "db_id": "a13c253b133076b453f73b262382abc1", "patch_ids": [], "statement_hash": "94f9809ccdb55a90f97d07afa860a11e0e236488d9fc3d659822d1450b3e4fb4", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-9293df95dc795809", "migration": false}, {"id": "9.2.0-32f5f02ed143e711", "cves": [], "html": "<p>      \u901a\u8fc7\u4ee5\u66f4\u5c11\u7684\u5185\u5b58\u5206\u914d\u5f00\u9500\u751f\u6210\u66f4\u597d\u7684\u6811\uff0c\u6539\u8fdb\u51e0\u4f55\u6570\u636e\u7c7b\u578b\u7684 GiST \u7d22\u5f15\u6027\u80fd\uff08Alexander Korotkov\uff09\n     </p>", "text": "\u901a\u8fc7\u4ee5\u66f4\u5c11\u7684\u5185\u5b58\u5206\u914d\u5f00\u9500\u751f\u6210\u66f4\u597d\u7684\u6811\uff0c\u6539\u8fdb\u51e0\u4f55\u6570\u636e\u7c7b\u578b\u7684 GiST \u7d22\u5f15\u6027\u80fd\uff08Alexander Korotkov\uff09", "title": "\u901a\u8fc7\u4ee5\u66f4\u5c11\u7684\u5185\u5b58\u5206\u914d\u5f00\u9500\u751f\u6210\u66f4\u597d\u7684\u6811\uff0c\u6539\u8fdb\u51e0\u4f55\u6570\u636e\u7c7b\u578b\u7684 GiST \u7d22\u5f15\u6027\u80fd", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "5c1a140a54107b9281d1354c2eb6add9f4d1ebb68ff4b77328a24e4009c14eab", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Improve GiST index performance for geometric data types by producing better trees with less memory allocation overhead (Alexander Korotkov)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/011", "db_id": "c99135817d2d33ed5c060fdbcfb3aca0", "patch_ids": [], "statement_hash": "85f3b0669dee834dba66ab3d7259609aabed23e26e7f081ea9e5ad7ed4398c18", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-32f5f02ed143e711", "migration": false}, {"id": "9.2.0-58e73ecb9993382e", "cves": [], "html": "<p>      \u6539\u8fdb GiST \u7d22\u5f15\u6784\u5efa\u65f6\u95f4\uff08Alexander Korotkov\u3001Heikki Linnakangas\uff09\n     </p>", "text": "\u6539\u8fdb GiST \u7d22\u5f15\u6784\u5efa\u65f6\u95f4\uff08Alexander Korotkov\u3001Heikki Linnakangas\uff09", "title": "\u6539\u8fdb GiST \u7d22\u5f15\u6784\u5efa\u65f6\u95f4", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "bbcbc8634cb76d15619558e63e9115b3a9431cfed15618d84398f2c389bffe43", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Improve GiST index build times (Alexander Korotkov, Heikki Linnakangas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/012", "db_id": "d89ef699f75e7b805d0ce20d49cd0606", "patch_ids": [], "statement_hash": "d63eefdcc64eb13e637cc4c8532f8287bb09b4feb920a28aba7ebb4c5eb7bcc5", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-58e73ecb9993382e", "migration": false}, {"id": "9.2.0-dcee0dbaf2aa753b", "cves": [], "html": "<p>      \u5141\u8bb8\u4e34\u65f6\u8868\u548c\u4e0d\u8bb0\u5f55\u65e5\u5fd7\u7684\u8868\u66f4\u65e9\u8bbe\u7f6e\u63d0\u793a\u4f4d\uff08Robert Haas\uff09\n     </p>", "text": "\u5141\u8bb8\u4e34\u65f6\u8868\u548c\u4e0d\u8bb0\u5f55\u65e5\u5fd7\u7684\u8868\u66f4\u65e9\u8bbe\u7f6e\u63d0\u793a\u4f4d\uff08Robert Haas\uff09", "title": "\u5141\u8bb8\u4e34\u65f6\u8868\u548c\u4e0d\u8bb0\u5f55\u65e5\u5fd7\u7684\u8868\u66f4\u65e9\u8bbe\u7f6e\u63d0\u793a\u4f4d", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "5fa63887eee53c3651a6187bbf766a6488f04def8418c78630495516da6bc450", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Allow hint bits to be set sooner for temporary and unlogged tables (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/013", "db_id": "8664111b1b6aaf390bbf56d71ef9ad91", "patch_ids": [], "statement_hash": "6c7b5b486b11698a08da504a3c80648875ed3c1912065ad18f127fe76f5ee745", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-dcee0dbaf2aa753b", "migration": false}, {"id": "9.2.0-d958e4ac450f2b6c", "cves": [], "html": "<p>      \u5141\u8bb8\u6392\u5e8f\u7531\u5185\u8054\u7684\u3001\u4e0d\u53ef\u4ece <acronym>SQL</acronym> \u8c03\u7528\u7684\u6bd4\u8f83\u51fd\u6570\u6267\u884c\uff08Peter Geoghegan\u3001Robert Haas\u3001Tom Lane\uff09\n     </p>", "text": "\u5141\u8bb8\u6392\u5e8f\u7531\u5185\u8054\u7684\u3001\u4e0d\u53ef\u4ece SQL \u8c03\u7528\u7684\u6bd4\u8f83\u51fd\u6570\u6267\u884c\uff08Peter Geoghegan\u3001Robert Haas\u3001Tom Lane\uff09", "title": "\u5141\u8bb8\u6392\u5e8f\u7531\u5185\u8054\u7684\u3001\u4e0d\u53ef\u4ece SQL \u8c03\u7528\u7684\u6bd4\u8f83\u51fd\u6570\u6267\u884c", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "c46db2823bf030d3a22c2254de5c107bf12a5d0f1d111053c8ad8afd12b43780", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Allow sorting to be performed by inlined, non-SQL-callable comparison functions (Peter Geoghegan, Robert Haas, Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/014", "db_id": "211968c883e8b268d2772a2d0aaccdbf", "patch_ids": [], "statement_hash": "8859fda48c4c921cf6aebc2b921482edb0f430cc6a746543d53ebe60884d24d9", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d958e4ac450f2b6c", "migration": false}, {"id": "9.2.0-569155780d00673e", "cves": [], "html": "<p>      \u4f7f CLOG \u7f13\u51b2\u533a\u6570\u91cf\u57fa\u4e8e <a href=\"/docs/9.2/runtime-config-resource.html#GUC-SHARED-BUFFERS\"><code>shared_buffers</code></a> \u7f29\u653e\uff08Robert Haas\u3001Simon Riggs\u3001Tom Lane\uff09\n     </p>", "text": "\u4f7f CLOG \u7f13\u51b2\u533a\u6570\u91cf\u57fa\u4e8e shared_buffers \u7f29\u653e\uff08Robert Haas\u3001Simon Riggs\u3001Tom Lane\uff09", "title": "\u4f7f CLOG \u7f13\u51b2\u533a\u6570\u91cf\u57fa\u4e8e shared_buffers \u7f29\u653e", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "a8bf6388bcc747a37e3427572cc312122f22d4992526e2bc9861a21dc4862832", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Make the number of CLOG buffers scale based on shared_buffers (Robert Haas, Simon Riggs, Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/015", "db_id": "d7f93b21700f7f678da3c306bf8cef8d", "patch_ids": [], "statement_hash": "163108592cf975285f3fcc6b37b9d227b585a5aabb5638224a881ad19628906e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-569155780d00673e", "migration": false}, {"id": "9.2.0-3e001c925a7f258d", "cves": [], "html": "<p>      \u6539\u8fdb\u5220\u9664\u8868\u6216\u6570\u636e\u5e93\u65f6\u53d1\u751f\u7684\u7f13\u51b2\u6c60\u626b\u63cf\u7684\u6027\u80fd\uff08Jeff Janes\u3001Simon Riggs\uff09\n     </p>", "text": "\u6539\u8fdb\u5220\u9664\u8868\u6216\u6570\u636e\u5e93\u65f6\u53d1\u751f\u7684\u7f13\u51b2\u6c60\u626b\u63cf\u7684\u6027\u80fd\uff08Jeff Janes\u3001Simon Riggs\uff09", "title": "\u6539\u8fdb\u5220\u9664\u8868\u6216\u6570\u636e\u5e93\u65f6\u53d1\u751f\u7684\u7f13\u51b2\u6c60\u626b\u63cf\u7684\u6027\u80fd", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "7bd3e33e8e31151c8923acf966396c682c9d4c7feaffcd9ce2ef8572f3d4f14c", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Improve performance of buffer pool scans that occur when tables or databases are dropped (Jeff Janes, Simon Riggs)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/016", "db_id": "172f48c22faa9e3e4079a13b08bacf63", "patch_ids": [], "statement_hash": "a0895d10729dfeaec8922d4073e081a5bf0614dd4cc4c640ae3b020f4e27409f", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-3e001c925a7f258d", "migration": false}, {"id": "9.2.0-fe7626911c83bc11", "cves": [], "html": "<p>      \u6539\u8fdb\u5220\u9664\u6216\u622a\u65ad\u5927\u91cf\u8868\u65f6\u68c0\u67e5\u70b9\u8fdb\u7a0b fsync \u8bf7\u6c42\u961f\u5217\u7684\u6027\u80fd\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb\u5220\u9664\u6216\u622a\u65ad\u5927\u91cf\u8868\u65f6\u68c0\u67e5\u70b9\u8fdb\u7a0b fsync \u8bf7\u6c42\u961f\u5217\u7684\u6027\u80fd\uff08Tom Lane\uff09", "title": "\u6539\u8fdb\u5220\u9664\u6216\u622a\u65ad\u5927\u91cf\u8868\u65f6\u68c0\u67e5\u70b9\u8fdb\u7a0b fsync \u8bf7\u6c42\u961f\u5217\u7684\u6027\u80fd", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "02b45d191bfb514adc5c4554a19ec35f04ef487693b80cf9cb516324fca74cee", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Improve performance of checkpointer's fsync-request queue when many tables are being dropped or truncated (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/017", "db_id": "b19db89c44fc708ef64398cd4e179da6", "patch_ids": [], "statement_hash": "a837bddb12e064eab60c43d5c07d0fe1b10be499e5ae584f0e95e006fefb13ba", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-fe7626911c83bc11", "migration": false}, {"id": "9.2.0-24ce1a18a8f8da04", "cves": [], "html": "<p>      \u5728 Windows \u4e0a\u628a\u5b89\u5168\u7684\u6587\u4ef6\u63cf\u8ff0\u7b26\u6570\u91cf\u4f20\u9012\u7ed9\u5b50\u8fdb\u7a0b\uff08Heikki Linnakangas\uff09\n     </p><p>      \u8fd9\u5141\u8bb8 Windows \u4f1a\u8bdd\u4f7f\u7528\u6bd4\u4ee5\u524d\u66f4\u591a\u7684\u6253\u5f00\u6587\u4ef6\u63cf\u8ff0\u7b26\u3002\n     </p>", "text": "\u5728 Windows \u4e0a\u628a\u5b89\u5168\u7684\u6587\u4ef6\u63cf\u8ff0\u7b26\u6570\u91cf\u4f20\u9012\u7ed9\u5b50\u8fdb\u7a0b\uff08Heikki Linnakangas\uff09 \u8fd9\u5141\u8bb8 Windows \u4f1a\u8bdd\u4f7f\u7528\u6bd4\u4ee5\u524d\u66f4\u591a\u7684\u6253\u5f00\u6587\u4ef6\u63cf\u8ff0\u7b26\u3002", "title": "\u5728 Windows \u4e0a\u628a\u5b89\u5168\u7684\u6587\u4ef6\u63cf\u8ff0\u7b26\u6570\u91cf\u4f20\u9012\u7ed9\u5b50\u8fdb\u7a0b", "commits": [], "section": "\u670d\u52a1\u5668 / \u6027\u80fd", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "4112f9654b6df4db03742a3114a1b1292f92fe71f68c81f4ce28e51e06cb201c", "section_path": ["\u670d\u52a1\u5668", "\u6027\u80fd"], "commit_groups": [], "identity_text": "Pass the safe number of file descriptors to child processes on Windows (Heikki Linnakangas) This allows Windows sessions to use more open file descriptors than before.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/018", "db_id": "908305c0f8faf2c0cb8515efa491dd86", "patch_ids": [], "statement_hash": "91aada79b95b32065bf6bcd21b1dbb56951b8b3756bb65acc7d50bd262001a63", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-24ce1a18a8f8da04", "migration": false}, {"id": "9.2.0-3db26bf9c2e046d0", "cves": [], "html": "<p>      \u521b\u5efa\u4e13\u95e8\u7684\u540e\u53f0\u8fdb\u7a0b\u6765\u6267\u884c\u68c0\u67e5\u70b9\uff08Simon Riggs\uff09\n     </p><p>      \u6b64\u524d\u540e\u53f0\u5199\u5165\u8fdb\u7a0b\u65e2\u5199\u810f\u9875\u53c8\u505a\u68c0\u67e5\u70b9\u3002\u628a\u8fd9\u4e24\u9879\u5de5\u4f5c\u5206\u5230\u4e24\u4e2a\u8fdb\u7a0b\u4f7f\u6bcf\u4e2a\u76ee\u6807\u90fd\u80fd\u66f4\u53ef\u9884\u671f\u5730\u5b8c\u6210\u3002\n     </p>", "text": "\u521b\u5efa\u4e13\u95e8\u7684\u540e\u53f0\u8fdb\u7a0b\u6765\u6267\u884c\u68c0\u67e5\u70b9\uff08Simon Riggs\uff09 \u6b64\u524d\u540e\u53f0\u5199\u5165\u8fdb\u7a0b\u65e2\u5199\u810f\u9875\u53c8\u505a\u68c0\u67e5\u70b9\u3002\u628a\u8fd9\u4e24\u9879\u5de5\u4f5c\u5206\u5230\u4e24\u4e2a\u8fdb\u7a0b\u4f7f\u6bcf\u4e2a\u76ee\u6807\u90fd\u80fd\u66f4\u53ef\u9884\u671f\u5730\u5b8c\u6210\u3002", "title": "\u521b\u5efa\u4e13\u95e8\u7684\u540e\u53f0\u8fdb\u7a0b\u6765\u6267\u884c\u68c0\u67e5\u70b9", "commits": [], "section": "\u670d\u52a1\u5668 / \u8fdb\u7a0b\u7ba1\u7406", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.3", "source_hash": "d43619fb9026c82ab4fd7595c7d70b0e7309e7cbe27565d379e37ba074deb39c", "section_path": ["\u670d\u52a1\u5668", "\u8fdb\u7a0b\u7ba1\u7406"], "commit_groups": [], "identity_text": "Create a dedicated background process to perform checkpoints (Simon Riggs) Formerly the background writer did both dirty-page writing and checkpointing. Separating this into two processes allows each goal to be accomplished more predictably.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/019", "db_id": "c25e652f7e6d51dcda538110511f5bd6", "patch_ids": [], "statement_hash": "4a3ce0e448057323d76f36c5b00f4271c2cafe3dfa38498213b71823a3ea7839", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-3db26bf9c2e046d0", "migration": false}, {"id": "9.2.0-e89f95da5a3573ad", "cves": [], "html": "<p>      \u901a\u8fc7\u66f4\u65e9\u5524\u9192 walwriter \u6765\u6539\u8fdb\u5f02\u6b65\u63d0\u4ea4\u884c\u4e3a\uff08Simon Riggs\uff09\n     </p><p>      \u6b64\u524d\u53ea\u6709 <a href=\"/docs/9.2/runtime-config-wal.html#GUC-WAL-WRITER-DELAY\"><code>wal_writer_delay</code></a> \u89e6\u53d1 <acronym>WAL</acronym> \u5237\u76d8\uff1b\u73b0\u5728\u586b\u6ee1 <acronym>WAL</acronym> \u7f13\u51b2\u533a\u4e5f\u4f1a\u89e6\u53d1 <acronym>WAL</acronym> \u5199\u5165\u3002\n     </p>", "text": "\u901a\u8fc7\u66f4\u65e9\u5524\u9192 walwriter \u6765\u6539\u8fdb\u5f02\u6b65\u63d0\u4ea4\u884c\u4e3a\uff08Simon Riggs\uff09 \u6b64\u524d\u53ea\u6709 wal_writer_delay \u89e6\u53d1 WAL \u5237\u76d8\uff1b\u73b0\u5728\u586b\u6ee1 WAL \u7f13\u51b2\u533a\u4e5f\u4f1a\u89e6\u53d1 WAL \u5199\u5165\u3002", "title": "\u901a\u8fc7\u66f4\u65e9\u5524\u9192 walwriter \u6765\u6539\u8fdb\u5f02\u6b65\u63d0\u4ea4\u884c\u4e3a", "commits": [], "section": "\u670d\u52a1\u5668 / \u8fdb\u7a0b\u7ba1\u7406", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.3", "source_hash": "a49c3df4fb3233b513277c3661b9eb3d6c8432d0e040c1cfbce7fbf60364c467", "section_path": ["\u670d\u52a1\u5668", "\u8fdb\u7a0b\u7ba1\u7406"], "commit_groups": [], "identity_text": "Improve asynchronous commit behavior by waking the walwriter sooner (Simon Riggs) Previously, only wal_writer_delay triggered WAL flushing to disk; now filling a WAL buffer also triggers WAL writes.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/020", "db_id": "e2a5595417729b1982844833e0ecc332", "patch_ids": [], "statement_hash": "870db781a275ced9414f57dffd68f891fe67e15d32c525c7257908e9086dcf48", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e89f95da5a3573ad", "migration": false}, {"id": "9.2.0-33b70dd7e73b1d28", "cves": [], "html": "<p>      \u5141\u8bb8 bgwriter\u3001walwriter\u3001checkpointer\u3001\u7edf\u8ba1\u6536\u96c6\u5668\u3001\u65e5\u5fd7\u6536\u96c6\u5668\u548c\u5f52\u6863\u5668\u7b49\u540e\u53f0\u8fdb\u7a0b\u5728\u7a7a\u95f2\u671f\u95f4\u66f4\u9ad8\u6548\u5730\u4f11\u7720\uff08Peter Geoghegan\u3001Tom Lane\uff09\n     </p><p>      \u8fd9\u4e00\u7cfb\u5217\u53d8\u66f4\u964d\u4f4e\u4e86\u65e0\u4e8b\u53ef\u505a\u65f6\u8fdb\u7a0b\u5524\u9192\u7684\u9891\u7387\uff0c\u5927\u5e45\u964d\u4f4e\u4e86\u7a7a\u95f2\u670d\u52a1\u5668\u7684\u529f\u8017\u3002\n     </p>", "text": "\u5141\u8bb8 bgwriter\u3001walwriter\u3001checkpointer\u3001\u7edf\u8ba1\u6536\u96c6\u5668\u3001\u65e5\u5fd7\u6536\u96c6\u5668\u548c\u5f52\u6863\u5668\u7b49\u540e\u53f0\u8fdb\u7a0b\u5728\u7a7a\u95f2\u671f\u95f4\u66f4\u9ad8\u6548\u5730\u4f11\u7720\uff08Peter Geoghegan\u3001Tom Lane\uff09 \u8fd9\u4e00\u7cfb\u5217\u53d8\u66f4\u964d\u4f4e\u4e86\u65e0\u4e8b\u53ef\u505a\u65f6\u8fdb\u7a0b\u5524\u9192\u7684\u9891\u7387\uff0c\u5927\u5e45\u964d\u4f4e\u4e86\u7a7a\u95f2\u670d\u52a1\u5668\u7684\u529f\u8017\u3002", "title": "\u5141\u8bb8 bgwriter\u3001walwriter\u3001checkpointer\u3001\u7edf\u8ba1\u6536\u96c6\u5668\u3001\u65e5\u5fd7\u6536\u96c6\u5668\u548c\u5f52\u6863\u5668\u7b49\u540e\u53f0\u8fdb\u7a0b\u5728\u7a7a\u95f2\u671f\u95f4\u66f4\u9ad8\u6548\u5730\u4f11\u7720", "commits": [], "section": "\u670d\u52a1\u5668 / \u8fdb\u7a0b\u7ba1\u7406", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.3", "source_hash": "e7ddefeab85e8191cd49d558c15546c2d9185b6fa453862042cda03d89f1eb5d", "section_path": ["\u670d\u52a1\u5668", "\u8fdb\u7a0b\u7ba1\u7406"], "commit_groups": [], "identity_text": "Allow the bgwriter, walwriter, checkpointer, statistics collector, log collector, and archiver background processes to sleep more efficiently during periods of inactivity (Peter Geoghegan, Tom Lane) This series of changes reduces the frequency of process wake-ups when there is nothing to do, dramatically reducing power consumption on idle servers.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/021", "db_id": "5fb2b6034d01d348999afc04d56be161", "patch_ids": [], "statement_hash": "4c30d9fca239e393c79063d052ed5ca331c324eebc443fa5852a380bea6bd0be", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-33b70dd7e73b1d28", "migration": false}, {"id": "9.2.0-e65adfdecaa64e44", "cves": [], "html": "<p>      \u5141\u8bb8\u89c4\u5212\u5668\u5373\u4f7f\u5728\u4f7f\u7528\u9884\u5907\u8bed\u53e5\u65f6\uff0c\u4e5f\u4e3a\u7279\u5b9a\u53c2\u6570\u503c\u751f\u6210\u5b9a\u5236\u8ba1\u5212\uff08Tom Lane\uff09\n     </p><p>      \u8fc7\u53bb\uff0c\u9884\u5907\u8bed\u53e5\u603b\u662f\u53ea\u6709\u4e00\u4e2a\u7528\u4e8e\u6240\u6709\u53c2\u6570\u503c\u7684<span>\u201c<span>\u901a\u7528</span>\u201d</span>\u8ba1\u5212\uff0c\u5b83\u5e38\u5e38\u8fdc\u4e0d\u5982\u7528\u4e8e\u5305\u542b\u663e\u5f0f\u5e38\u91cf\u503c\u7684\u975e\u9884\u5907\u8bed\u53e5\u7684\u8ba1\u5212\u3002\u73b0\u5728\uff0c\u89c4\u5212\u5668\u4f1a\u5c1d\u8bd5\u4e3a\u7279\u5b9a\u53c2\u6570\u503c\u751f\u6210\u5b9a\u5236\u8ba1\u5212\u3002\u53ea\u6709\u5f53\u5b9a\u5236\u8ba1\u5212\u53cd\u590d\u88ab\u8bc1\u660e\u6ca1\u6709\u6536\u76ca\u65f6\uff0c\u624d\u4f1a\u4f7f\u7528\u901a\u7528\u8ba1\u5212\u3002\u6b64\u53d8\u66f4\u5e94\u80fd\u6d88\u9664\u6b64\u524d\u4f7f\u7528\u9884\u5907\u8bed\u53e5\uff08\u5305\u62ec PL/pgSQL \u4e2d\u7684\u975e\u52a8\u6001\u8bed\u53e5\uff09\u6240\u89c1\u7684\u6027\u80fd\u635f\u5931\u3002\n     </p>", "text": "\u5141\u8bb8\u89c4\u5212\u5668\u5373\u4f7f\u5728\u4f7f\u7528\u9884\u5907\u8bed\u53e5\u65f6\uff0c\u4e5f\u4e3a\u7279\u5b9a\u53c2\u6570\u503c\u751f\u6210\u5b9a\u5236\u8ba1\u5212\uff08Tom Lane\uff09 \u8fc7\u53bb\uff0c\u9884\u5907\u8bed\u53e5\u603b\u662f\u53ea\u6709\u4e00\u4e2a\u7528\u4e8e\u6240\u6709\u53c2\u6570\u503c\u7684\u201c\u901a\u7528\u201d\u8ba1\u5212\uff0c\u5b83\u5e38\u5e38\u8fdc\u4e0d\u5982\u7528\u4e8e\u5305\u542b\u663e\u5f0f\u5e38\u91cf\u503c\u7684\u975e\u9884\u5907\u8bed\u53e5\u7684\u8ba1\u5212\u3002\u73b0\u5728\uff0c\u89c4\u5212\u5668\u4f1a\u5c1d\u8bd5\u4e3a\u7279\u5b9a\u53c2\u6570\u503c\u751f\u6210\u5b9a\u5236\u8ba1\u5212\u3002\u53ea\u6709\u5f53\u5b9a\u5236\u8ba1\u5212\u53cd\u590d\u88ab\u8bc1\u660e\u6ca1\u6709\u6536\u76ca\u65f6\uff0c\u624d\u4f1a\u4f7f\u7528\u901a\u7528\u8ba1\u5212\u3002\u6b64\u53d8\u66f4\u5e94\u80fd\u6d88\u9664\u6b64\u524d\u4f7f\u7528\u9884\u5907\u8bed\u53e5\uff08\u5305\u62ec PL/pgSQL \u4e2d\u7684\u975e\u52a8\u6001\u8bed\u53e5\uff09\u6240\u89c1\u7684\u6027\u80fd\u635f\u5931\u3002", "title": "\u5141\u8bb8\u89c4\u5212\u5668\u5373\u4f7f\u5728\u4f7f\u7528\u9884\u5907\u8bed\u53e5\u65f6\uff0c\u4e5f\u4e3a\u7279\u5b9a\u53c2\u6570\u503c\u751f\u6210\u5b9a\u5236\u8ba1\u5212", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "0c9a7145ff3fadec1ce007c6143677a8e197b5dd904a6eb306fbe608a0cd0877", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Allow the planner to generate custom plans for specific parameter values even when using prepared statements (Tom Lane) In the past, a prepared statement always had a single generic plan that was used for all parameter values, which was frequently much inferior to the plans used for non-prepared statements containing explicit constant values. Now, the planner attempts to generate custom plans for specific parameter values. A generic plan will only be used after custom plans have repeatedly proven to provide no benefit. This change should eliminate the performance penalties formerly seen from use of prepared statements (including non-dynamic statements in PL/pgSQL).", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/022", "db_id": "df55f3b0f46a86701d43018414395c6b", "patch_ids": [], "statement_hash": "517b7ea813ea8851fb33249e22414f9d0a4d0027bfe3b468f72e575f3e81db06", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e65adfdecaa64e44", "migration": false}, {"id": "9.2.0-e3b4a9884967d4d7", "cves": [], "html": "<p>      \u6539\u8fdb\u89c4\u5212\u5668\u4f7f\u7528\u5185\u5c42\u7d22\u5f15\u626b\u63cf\u7684\u5d4c\u5957\u5faa\u73af\u7684\u80fd\u529b\uff08Tom Lane\uff09\n     </p><p>      \u65b0\u7684<span>\u201c<span>\u53c2\u6570\u5316\u8def\u5f84</span>\u201d</span>\u673a\u5236\u5141\u8bb8\u5185\u5c42\u7d22\u5f15\u626b\u63cf\u4f7f\u7528\u6765\u81ea\u6bd4\u626b\u63cf\u9ad8\u591a\u4e2a\u8fde\u63a5\u5c42\u7ea7\u7684\u5173\u7cfb\u7684\u503c\u3002\u5728\u8bed\u4e49\u9650\u5236\uff08\u5982\u5916\u8fde\u63a5\uff09\u9650\u5b9a\u5141\u8bb8\u8fde\u63a5\u987a\u5e8f\u7684\u60c5\u51b5\u4e0b\uff0c\u8fd9\u53ef\u4ee5\u5927\u5e45\u63d0\u5347\u6027\u80fd\u3002\n     </p>", "text": "\u6539\u8fdb\u89c4\u5212\u5668\u4f7f\u7528\u5185\u5c42\u7d22\u5f15\u626b\u63cf\u7684\u5d4c\u5957\u5faa\u73af\u7684\u80fd\u529b\uff08Tom Lane\uff09 \u65b0\u7684\u201c\u53c2\u6570\u5316\u8def\u5f84\u201d\u673a\u5236\u5141\u8bb8\u5185\u5c42\u7d22\u5f15\u626b\u63cf\u4f7f\u7528\u6765\u81ea\u6bd4\u626b\u63cf\u9ad8\u591a\u4e2a\u8fde\u63a5\u5c42\u7ea7\u7684\u5173\u7cfb\u7684\u503c\u3002\u5728\u8bed\u4e49\u9650\u5236\uff08\u5982\u5916\u8fde\u63a5\uff09\u9650\u5b9a\u5141\u8bb8\u8fde\u63a5\u987a\u5e8f\u7684\u60c5\u51b5\u4e0b\uff0c\u8fd9\u53ef\u4ee5\u5927\u5e45\u63d0\u5347\u6027\u80fd\u3002", "title": "\u6539\u8fdb\u89c4\u5212\u5668\u4f7f\u7528\u5185\u5c42\u7d22\u5f15\u626b\u63cf\u7684\u5d4c\u5957\u5faa\u73af\u7684\u80fd\u529b", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "e0542585ebcff6ccaac357f4a35654bf44ba67f38ddf47b84b599d7e572ec0bb", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Improve the planner's ability to use nested loops with inner index scans (Tom Lane) The new parameterized path mechanism allows inner index scans to use values from relations that are more than one join level up from the scan. This can greatly improve performance in situations where semantic restrictions (such as outer joins) limit the allowed join orderings.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/023", "db_id": "e4b17b9787a9bd365d6cca68157b2d0f", "patch_ids": [], "statement_hash": "ba1ec09fad868eec7f869134fd9facba9fc7e643e6d14e7bcf4c5f8c83a7910d", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e3b4a9884967d4d7", "migration": false}, {"id": "9.2.0-110025fe266e778f", "cves": [], "html": "<p>      \u6539\u8fdb\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u7684\u89c4\u5212 <acronym>API</acronym>\uff08Etsuro Fujita\u3001Shigeru Hanada\u3001Tom Lane\uff09\n     </p><p>      \u5305\u88c5\u5668\u73b0\u5728\u53ef\u4ee5\u4e3a\u5176\u8868\u63d0\u4f9b\u591a\u4e2a\u8bbf\u95ee<span>\u201c<span>\u8def\u5f84</span>\u201d</span>\uff0c\u4f7f\u8fde\u63a5\u89c4\u5212\u66f4\u52a0\u7075\u6d3b\u3002\n     </p>", "text": "\u6539\u8fdb\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u7684\u89c4\u5212 API\uff08Etsuro Fujita\u3001Shigeru Hanada\u3001Tom Lane\uff09 \u5305\u88c5\u5668\u73b0\u5728\u53ef\u4ee5\u4e3a\u5176\u8868\u63d0\u4f9b\u591a\u4e2a\u8bbf\u95ee\u201c\u8def\u5f84\u201d\uff0c\u4f7f\u8fde\u63a5\u89c4\u5212\u66f4\u52a0\u7075\u6d3b\u3002", "title": "\u6539\u8fdb\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u7684\u89c4\u5212 API", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "4fd193b9f59b1b83c111c438d6553742f99378c5aa26971010683f0acdac6672", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Improve the planning API for foreign data wrappers (Etsuro Fujita, Shigeru Hanada, Tom Lane) Wrappers can now provide multiple access paths for their tables, allowing more flexibility in join planning.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/024", "db_id": "2a1734d59f11b79d2f8ec76190e5d73f", "patch_ids": [], "statement_hash": "b1caee1e565789669cf56ed264bd7348e55f11bb85b683366f950c77ded93e28", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-110025fe266e778f", "migration": false}, {"id": "9.2.0-d7fac5f4286f1e87", "cves": [], "html": "<p>      \u8bc6\u522b\u975e\u8868\u5173\u7cfb\u7684\u81ea\u76f8\u77db\u76fe\u9650\u5b9a\u5b50\u53e5\uff08Tom Lane\uff09\n     </p><p>      \u53ea\u6709\u5f53 <a href=\"/docs/9.2/runtime-config-query.html#GUC-CONSTRAINT-EXCLUSION\"><code>constraint_exclusion</code></a> \u4e3a <code>on</code> \u65f6\u624d\u6267\u884c\u6b64\u68c0\u67e5\u3002\n     </p>", "text": "\u8bc6\u522b\u975e\u8868\u5173\u7cfb\u7684\u81ea\u76f8\u77db\u76fe\u9650\u5b9a\u5b50\u53e5\uff08Tom Lane\uff09 \u53ea\u6709\u5f53 constraint_exclusion \u4e3a on \u65f6\u624d\u6267\u884c\u6b64\u68c0\u67e5\u3002", "title": "\u8bc6\u522b\u975e\u8868\u5173\u7cfb\u7684\u81ea\u76f8\u77db\u76fe\u9650\u5b9a\u5b50\u53e5", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "006ee77d82687de3b63d7eb98a491efb7cfb74e13bad6b7eb7df4f0500b43e88", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Recognize self-contradictory restriction clauses for non-table relations (Tom Lane) This check is only performed when constraint_exclusion is on.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/025", "db_id": "489c593de4eb9d56ada90700464daa4e", "patch_ids": [], "statement_hash": "65de46c62284b962957bb7058db361602fb00f7628596b349f3c9bbd1b5fb33b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d7fac5f4286f1e87", "migration": false}, {"id": "9.2.0-abde6ce521744786", "cves": [], "html": "<p>      \u5141\u8bb8 <code>indexed_col op ANY(ARRAY[...])</code> \u6761\u4ef6\u7528\u4e8e\u666e\u901a\u7d22\u5f15\u626b\u63cf\u548c\u4ec5\u7d22\u5f15\u626b\u63cf\uff08Tom Lane\uff09\n     </p><p>      \u6b64\u524d\u8fd9\u7c7b\u6761\u4ef6\u53ea\u80fd\u7528\u4e8e\u4f4d\u56fe\u7d22\u5f15\u626b\u63cf\u3002\n     </p>", "text": "\u5141\u8bb8 indexed_col op ANY(ARRAY[...]) \u6761\u4ef6\u7528\u4e8e\u666e\u901a\u7d22\u5f15\u626b\u63cf\u548c\u4ec5\u7d22\u5f15\u626b\u63cf\uff08Tom Lane\uff09 \u6b64\u524d\u8fd9\u7c7b\u6761\u4ef6\u53ea\u80fd\u7528\u4e8e\u4f4d\u56fe\u7d22\u5f15\u626b\u63cf\u3002", "title": "\u5141\u8bb8 indexed_col op ANY(ARRAY[...]) \u6761\u4ef6\u7528\u4e8e\u666e\u901a\u7d22\u5f15\u626b\u63cf\u548c\u4ec5\u7d22\u5f15\u626b\u63cf", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "70db34f7b0d9bb6b4264a9eedc96eff7eba2e2e6fdac0efbc8585f7a6fec9198", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Allow indexed_col op ANY(ARRAY[...]) conditions to be used in plain index scans and index-only scans (Tom Lane) Formerly such conditions could only be used in bitmap index scans.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/026", "db_id": "0abd060647be425089239a6ccd6757a4", "patch_ids": [], "statement_hash": "1a9d13c22e75aeb8873f86389a636aa86c69c5fec1d19709514fcff8ae42ad99", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-abde6ce521744786", "migration": false}, {"id": "9.2.0-6740d1003a3433e2", "cves": [], "html": "<p>      \u652f\u6301\u5728 <code>boolean</code> \u5217\u4e0a\u4f7f\u7528 <code>MIN</code>/<code>MAX</code> \u7d22\u5f15\u4f18\u5316\uff08Marti Raudsepp\uff09\n     </p>", "text": "\u652f\u6301\u5728 boolean \u5217\u4e0a\u4f7f\u7528 MIN/MAX \u7d22\u5f15\u4f18\u5316\uff08Marti Raudsepp\uff09", "title": "\u652f\u6301\u5728 boolean \u5217\u4e0a\u4f7f\u7528 MIN/MAX \u7d22\u5f15\u4f18\u5316", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "4d61fe2a7e98c8d7743e108359e018a19cf2786da64e8edaa390f3c49dcc20c2", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Support MIN/MAX index optimizations on boolean columns (Marti Raudsepp)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/027", "db_id": "ab0a1f4b2448854e8fe7a36e8e6138f9", "patch_ids": [], "statement_hash": "964c4b52dd37791a85e84f91f9ef54eaefba348f95d77b0b037f42237482c734", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6740d1003a3433e2", "migration": false}, {"id": "9.2.0-34fd505b924fd518", "cves": [], "html": "<p>      \u5728\u8bbe\u7f6e\u884c\u6570\u4f30\u8ba1\u65f6\uff0c\u628a <code>SELECT</code> \u76ee\u6807\u5217\u8868\u4e2d\u7684\u96c6\u5408\u8fd4\u56de\u51fd\u6570\u8003\u8651\u5728\u5185\uff08Tom Lane\uff09\n     </p>", "text": "\u5728\u8bbe\u7f6e\u884c\u6570\u4f30\u8ba1\u65f6\uff0c\u628a SELECT \u76ee\u6807\u5217\u8868\u4e2d\u7684\u96c6\u5408\u8fd4\u56de\u51fd\u6570\u8003\u8651\u5728\u5185\uff08Tom Lane\uff09", "title": "\u5728\u8bbe\u7f6e\u884c\u6570\u4f30\u8ba1\u65f6\uff0c\u628a SELECT \u76ee\u6807\u5217\u8868\u4e2d\u7684\u96c6\u5408\u8fd4\u56de\u51fd\u6570\u8003\u8651\u5728\u5185", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "f2149b8b42c0496ab398d33cf58a3f524ff83c4304a5cfa03921e31bffd90c33", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Account for set-returning functions in SELECT target lists when setting row count estimates (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/028", "db_id": "5929ffc0066e4774f4553d983e423633", "patch_ids": [], "statement_hash": "200314dfa24326d7258c7bfced70d192d6b097f19c8a62a333c1f715a4b5448d", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-34fd505b924fd518", "migration": false}, {"id": "9.2.0-306f88ee2dc42ea1", "cves": [], "html": "<p>      \u4fee\u590d\u89c4\u5212\u5668\uff0c\u4f7f\u5176\u66f4\u53ef\u9760\u5730\u5904\u7406\u542b\u91cd\u590d\u5217\u7684\u7d22\u5f15\uff08Tom Lane\uff09\n     </p>", "text": "\u4fee\u590d\u89c4\u5212\u5668\uff0c\u4f7f\u5176\u66f4\u53ef\u9760\u5730\u5904\u7406\u542b\u91cd\u590d\u5217\u7684\u7d22\u5f15\uff08Tom Lane\uff09", "title": "\u4fee\u590d\u89c4\u5212\u5668\uff0c\u4f7f\u5176\u66f4\u53ef\u9760\u5730\u5904\u7406\u542b\u91cd\u590d\u5217\u7684\u7d22\u5f15", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "46ac873435d790c378db3f0e408105712d55f38594574cfe4280bb67d63cbb5e", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Fix planner to handle indexes with duplicated columns more reliably (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/029", "db_id": "3a3a766da7538d95b61fca3276e4e35d", "patch_ids": [], "statement_hash": "1e24f238f423d2b83ee763f588de830f91a9d2415e34a9dcbde1b877b7e5f15f", "relations": [], "category_label": "BUG \u4fee\u590d", "url": "/docs/compare/?release=9.2.0#9.2.0-306f88ee2dc42ea1", "migration": false}, {"id": "9.2.0-2bd496392b7fbb09", "cves": [], "html": "<p>      \u6536\u96c6\u5e76\u4f7f\u7528\u6570\u7ec4\u7684\u5143\u7d20\u9891\u7387\u7edf\u8ba1\uff08Alexander Korotkov\u3001Tom Lane\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u6539\u8fdb\u4e86\u6570\u7ec4 <code>&lt;@</code>\u3001<code>&amp;&amp;</code> \u548c <code>@&gt;</code> \u64cd\u4f5c\u7b26\uff08\u6570\u7ec4\u5305\u542b\u548c\u91cd\u53e0\uff09\u7684\u9009\u62e9\u7387\u4f30\u8ba1\u3002\n     </p>", "text": "\u6536\u96c6\u5e76\u4f7f\u7528\u6570\u7ec4\u7684\u5143\u7d20\u9891\u7387\u7edf\u8ba1\uff08Alexander Korotkov\u3001Tom Lane\uff09 \u6b64\u53d8\u66f4\u6539\u8fdb\u4e86\u6570\u7ec4 <@\u3001&& \u548c @> \u64cd\u4f5c\u7b26\uff08\u6570\u7ec4\u5305\u542b\u548c\u91cd\u53e0\uff09\u7684\u9009\u62e9\u7387\u4f30\u8ba1\u3002", "title": "\u6536\u96c6\u5e76\u4f7f\u7528\u6570\u7ec4\u7684\u5143\u7d20\u9891\u7387\u7edf\u8ba1", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "652d8cf4840ec49f56e9467d2f561368cf9dcfd46ac1326d2d693c527167e477", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Collect and use element-frequency statistics for arrays (Alexander Korotkov, Tom Lane) This change improves selectivity estimation for the array <@, &&, and @> operators (array containment and overlaps).", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/030", "db_id": "c3e37ecbbd8d5246667c7d11cda428bf", "patch_ids": [], "statement_hash": "efed32bcda6c95e7f45e3295de9ab4739e72a1e326ec7d76ca186069bcc7b662", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-2bd496392b7fbb09", "migration": false}, {"id": "9.2.0-daa4442f29c8a43f", "cves": [], "html": "<p>      \u5141\u8bb8\u4e3a\u5916\u90e8\u8868\u6536\u96c6\u7edf\u8ba1\u4fe1\u606f\uff08Etsuro Fujita\uff09\n     </p>", "text": "\u5141\u8bb8\u4e3a\u5916\u90e8\u8868\u6536\u96c6\u7edf\u8ba1\u4fe1\u606f\uff08Etsuro Fujita\uff09", "title": "\u5141\u8bb8\u4e3a\u5916\u90e8\u8868\u6536\u96c6\u7edf\u8ba1\u4fe1\u606f", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "12c9b71b3ce991c3f51da399aa807652b8c4b608f3e402d7b6242ebaef5cb147", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Allow statistics to be collected for foreign tables (Etsuro Fujita)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/031", "db_id": "d80f85b22a6fd7a23c4c6b3c7187131d", "patch_ids": [], "statement_hash": "d0e5d4e0e5c9af2cd01846ff0b6dcdcc98148bf4f573b87078c4cb44be8c1d5e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-daa4442f29c8a43f", "migration": false}, {"id": "9.2.0-fa0387952758e69d", "cves": [], "html": "<p>      \u6539\u8fdb\u4f7f\u7528\u90e8\u5206\u7d22\u5f15\u7684\u4ee3\u4ef7\u4f30\u8ba1\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb\u4f7f\u7528\u90e8\u5206\u7d22\u5f15\u7684\u4ee3\u4ef7\u4f30\u8ba1\uff08Tom Lane\uff09", "title": "\u6539\u8fdb\u4f7f\u7528\u90e8\u5206\u7d22\u5f15\u7684\u4ee3\u4ef7\u4f30\u8ba1", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "3ac3c73a569224c76e38632d4574a118d03b7dac0e01710952450d6ef0a521b3", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Improve cost estimates for use of partial indexes (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/032", "db_id": "4ebb358ef99866dee5cc547280e33ae3", "patch_ids": [], "statement_hash": "f26d7bf85cb5234b86b8dce623b43c8f008368fa70351572d50bad12e327a9e3", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-fa0387952758e69d", "migration": false}, {"id": "9.2.0-3ab27d76c32cbbe2", "cves": [], "html": "<p>      \u6539\u8fdb\u89c4\u5212\u5668\u5bf9\u5b50\u67e5\u8be2\u4e2d\u5f15\u7528\u5217\u4f7f\u7528\u7edf\u8ba1\u4fe1\u606f\u7684\u80fd\u529b\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb\u89c4\u5212\u5668\u5bf9\u5b50\u67e5\u8be2\u4e2d\u5f15\u7528\u5217\u4f7f\u7528\u7edf\u8ba1\u4fe1\u606f\u7684\u80fd\u529b\uff08Tom Lane\uff09", "title": "\u6539\u8fdb\u89c4\u5212\u5668\u5bf9\u5b50\u67e5\u8be2\u4e2d\u5f15\u7528\u5217\u4f7f\u7528\u7edf\u8ba1\u4fe1\u606f\u7684\u80fd\u529b", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "9fa59337558ddf34fbbdd58db98a4f29982bd64d5777974e5088497543b28772", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Improve the planner's ability to use statistics for columns referenced in subqueries (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/033", "db_id": "e23ad448e7b4c80e792aa1c0a1e248db", "patch_ids": [], "statement_hash": "6591074e98e60b930e5d4729b86ad912b8e6d4e1d68c4ba0e351a034d20d32bd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-3ab27d76c32cbbe2", "migration": false}, {"id": "9.2.0-4d31c5171a308a3c", "cves": [], "html": "<p>      \u6539\u8fdb\u5bf9\u4f7f\u7528 <code>DISTINCT</code> \u7684\u5b50\u67e5\u8be2\u7684\u7edf\u8ba1\u4f30\u8ba1\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb\u5bf9\u4f7f\u7528 DISTINCT \u7684\u5b50\u67e5\u8be2\u7684\u7edf\u8ba1\u4f30\u8ba1\uff08Tom Lane\uff09", "title": "\u6539\u8fdb\u5bf9\u4f7f\u7528 DISTINCT \u7684\u5b50\u67e5\u8be2\u7684\u7edf\u8ba1\u4f30\u8ba1", "commits": [], "section": "\u670d\u52a1\u5668 / \u4f18\u5316\u5668", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "ee413050e2bd297cc2d455d762ed26cb877c176d06f8532a419b997dbb5d509e", "section_path": ["\u670d\u52a1\u5668", "\u4f18\u5316\u5668"], "commit_groups": [], "identity_text": "Improve statistical estimates for subqueries using DISTINCT (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/034", "db_id": "ef7c9039706c3e8726d7cba430d70bbb", "patch_ids": [], "statement_hash": "c480b2df95edc94ba0ed64bdd55a43a4de0a17e3c44c0664ceb843aca92dd983", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4d31c5171a308a3c", "migration": false}, {"id": "9.2.0-a571437ca76c8b46", "cves": [], "html": "<p>      \u4e0d\u518d\u628a <a href=\"/docs/9.2/client-authentication.html#AUTH-PG-HBA-CONF\" title=\"19.1.\u00a0pg_hba.conf \u6587\u4ef6\"><code>pg_hba.conf</code></a> \u4e2d\u6307\u5b9a\u7684\u89d2\u8272\u540d\u548c <code>samerole</code> \u89c6\u4e3a\u81ea\u52a8\u5305\u542b\u8d85\u7ea7\u7528\u6237\uff08Andrew Dunstan\uff09\n     </p><p>      \u8fd9\u4f7f\u5f97\u628a <code>reject</code> \u884c\u7528\u4e8e\u7ec4\u89d2\u8272\u66f4\u52a0\u5bb9\u6613\u3002\n     </p>", "text": "\u4e0d\u518d\u628a pg_hba.conf \u4e2d\u6307\u5b9a\u7684\u89d2\u8272\u540d\u548c samerole \u89c6\u4e3a\u81ea\u52a8\u5305\u542b\u8d85\u7ea7\u7528\u6237\uff08Andrew Dunstan\uff09 \u8fd9\u4f7f\u5f97\u628a reject \u884c\u7528\u4e8e\u7ec4\u89d2\u8272\u66f4\u52a0\u5bb9\u6613\u3002", "title": "\u4e0d\u518d\u628a pg_hba.conf \u4e2d\u6307\u5b9a\u7684\u89d2\u8272\u540d\u548c samerole \u89c6\u4e3a\u81ea\u52a8\u5305\u542b\u8d85\u7ea7\u7528\u6237", "commits": [], "section": "\u670d\u52a1\u5668 / \u8ba4\u8bc1", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "b6702a74614db65f332c2c00a30ee1dc785c111e1cdbcbc720694d250f13f859", "section_path": ["\u670d\u52a1\u5668", "\u8ba4\u8bc1"], "commit_groups": [], "identity_text": "Do not treat role names and samerole specified in pg_hba.conf as automatically including superusers (Andrew Dunstan) This makes it easier to use reject lines with group roles.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/035", "db_id": "e08754b9a3c8c25425c746032e7fde00", "patch_ids": [], "statement_hash": "a548e7b0827e2fefe9edf1cffff16bb03dad97a0b193e58d0e4ad69d51fc2ead", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a571437ca76c8b46", "migration": false}, {"id": "9.2.0-ae3c347c6734bafa", "cves": [], "html": "<p>      \u8c03\u6574 <code>pg_hba.conf</code> \u5904\u7406\uff0c\u4f7f\u8bb0\u53f7\u89e3\u6790\u66f4\u4e00\u81f4\uff08Brendan Jurd\u3001\u00c1lvaro Herrera\uff09\n     </p>", "text": "\u8c03\u6574 pg_hba.conf \u5904\u7406\uff0c\u4f7f\u8bb0\u53f7\u89e3\u6790\u66f4\u4e00\u81f4\uff08Brendan Jurd\u3001\u00c1lvaro Herrera\uff09", "title": "\u8c03\u6574 pg_hba.conf \u5904\u7406\uff0c\u4f7f\u8bb0\u53f7\u89e3\u6790\u66f4\u4e00\u81f4", "commits": [], "section": "\u670d\u52a1\u5668 / \u8ba4\u8bc1", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "42d872f3f2f5dd109bde4e2ce19e0f19af00c662be66cfd1a203158b63604ef7", "section_path": ["\u670d\u52a1\u5668", "\u8ba4\u8bc1"], "commit_groups": [], "identity_text": "Adjust pg_hba.conf processing to handle token parsing more consistently (Brendan Jurd, \u00c1lvaro Herrera)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/036", "db_id": "bba511df005636a1530cfe16e24cd70e", "patch_ids": [], "statement_hash": "0565c56afa38a510bda6c98f6998cbd30cb1cf0d26c7ff303a0f7a86f21a6105", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-ae3c347c6734bafa", "migration": false}, {"id": "9.2.0-5ab4ffcdb3b1448e", "cves": [], "html": "<p>      \u4e0d\u5141\u8bb8\u7a7a\u7684 <code>pg_hba.conf</code> \u6587\u4ef6\uff08Tom Lane\uff09\n     </p><p>      \u8fd9\u6837\u505a\u662f\u4e3a\u4e86\u66f4\u5feb\u5730\u68c0\u6d4b\u914d\u7f6e\u9519\u8bef\u3002\n     </p>", "text": "\u4e0d\u5141\u8bb8\u7a7a\u7684 pg_hba.conf \u6587\u4ef6\uff08Tom Lane\uff09 \u8fd9\u6837\u505a\u662f\u4e3a\u4e86\u66f4\u5feb\u5730\u68c0\u6d4b\u914d\u7f6e\u9519\u8bef\u3002", "title": "\u4e0d\u5141\u8bb8\u7a7a\u7684 pg_hba.conf \u6587\u4ef6", "commits": [], "section": "\u670d\u52a1\u5668 / \u8ba4\u8bc1", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "ea66512ae22eeb34ed7936a7801bbd7b5295d30d68a0660381dfec9d9a60da78", "section_path": ["\u670d\u52a1\u5668", "\u8ba4\u8bc1"], "commit_groups": [], "identity_text": "Disallow empty pg_hba.conf files (Tom Lane) This was done to more quickly detect misconfiguration.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/037", "db_id": "90620dc0a9b45a0afa24e85edfbbbfb7", "patch_ids": [], "statement_hash": "e7d85e59bcad50d3196740ee0e548e930463c4fb973463d633a49b3351719874", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-5ab4ffcdb3b1448e", "migration": false}, {"id": "9.2.0-47f96d2e13f2370f", "cves": [], "html": "<p>      \u8ba9\u8d85\u7ea7\u7528\u6237\u6743\u9650\u9690\u542b\u590d\u5236\u6743\u9650\uff08Noah Misch\uff09\n     </p><p>      \u8fd9\u907f\u514d\u4e86\u663e\u5f0f\u5206\u914d\u6b64\u7c7b\u6743\u9650\u7684\u9700\u8981\u3002\n     </p>", "text": "\u8ba9\u8d85\u7ea7\u7528\u6237\u6743\u9650\u9690\u542b\u590d\u5236\u6743\u9650\uff08Noah Misch\uff09 \u8fd9\u907f\u514d\u4e86\u663e\u5f0f\u5206\u914d\u6b64\u7c7b\u6743\u9650\u7684\u9700\u8981\u3002", "title": "\u8ba9\u8d85\u7ea7\u7528\u6237\u6743\u9650\u9690\u542b\u590d\u5236\u6743\u9650", "commits": [], "section": "\u670d\u52a1\u5668 / \u8ba4\u8bc1", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "393d1b77df5d0f4b78306fef9149b8637c8021ebd9db2fbbebc4c85dad0102b0", "section_path": ["\u670d\u52a1\u5668", "\u8ba4\u8bc1"], "commit_groups": [], "identity_text": "Make superuser privilege imply replication privilege (Noah Misch) This avoids the need to explicitly assign such privileges.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/038", "db_id": "5a1ef57cc44e7c57e960b4eeeb4f051a", "patch_ids": [], "statement_hash": "60074707cee52fded8566b818aa8465235476ea3a67c18b688a9a36593e89871", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-47f96d2e13f2370f", "migration": false}, {"id": "9.2.0-465ca7cb7dfc225d", "cves": [], "html": "<p>      \u5728\u540e\u7aef\u5d29\u6e83\u65f6\u5c1d\u8bd5\u8bb0\u5f55\u5f53\u524d\u67e5\u8be2\u4e32\uff08Marti Raudsepp\uff09\n     </p>", "text": "\u5728\u540e\u7aef\u5d29\u6e83\u65f6\u5c1d\u8bd5\u8bb0\u5f55\u5f53\u524d\u67e5\u8be2\u4e32\uff08Marti Raudsepp\uff09", "title": "\u5728\u540e\u7aef\u5d29\u6e83\u65f6\u5c1d\u8bd5\u8bb0\u5f55\u5f53\u524d\u67e5\u8be2\u4e32", "commits": [], "section": "\u670d\u52a1\u5668 / \u76d1\u63a7", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "5914b40879b63250042b1854eed012d106e4ba34e0d64f3119c63788236d123e", "section_path": ["\u670d\u52a1\u5668", "\u76d1\u63a7"], "commit_groups": [], "identity_text": "Attempt to log the current query string during a backend crash (Marti Raudsepp)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/039", "db_id": "8e06915528c5b7dbf76b6e9f4888c435", "patch_ids": [], "statement_hash": "09116196798aa07ae43a4e8c21749a47b40b7f26e9af1510af8030d8089ecbc5", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-465ca7cb7dfc225d", "migration": false}, {"id": "9.2.0-64c3e023312dfd68", "cves": [], "html": "<p>      \u8ba9\u81ea\u52a8\u6e05\u7406 I/O \u6d3b\u52a8\u7684\u65e5\u5fd7\u66f4\u8be6\u7ec6\uff08Greg Smith\u3001Noah Misch\uff09\n     </p><p>      \u6b64\u65e5\u5fd7\u7531 <a href=\"/docs/9.2/runtime-config-autovacuum.html#GUC-LOG-AUTOVACUUM-MIN-DURATION\"><code>log_autovacuum_min_duration</code></a> \u89e6\u53d1\u3002\n     </p>", "text": "\u8ba9\u81ea\u52a8\u6e05\u7406 I/O \u6d3b\u52a8\u7684\u65e5\u5fd7\u66f4\u8be6\u7ec6\uff08Greg Smith\u3001Noah Misch\uff09 \u6b64\u65e5\u5fd7\u7531 log_autovacuum_min_duration \u89e6\u53d1\u3002", "title": "\u8ba9\u81ea\u52a8\u6e05\u7406 I/O \u6d3b\u52a8\u7684\u65e5\u5fd7\u66f4\u8be6\u7ec6", "commits": [], "section": "\u670d\u52a1\u5668 / \u76d1\u63a7", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "36a27dfbbd6522fb819cfecbcae8e8b07bca6c9280ca158b712011abee2e3cab", "section_path": ["\u670d\u52a1\u5668", "\u76d1\u63a7"], "commit_groups": [], "identity_text": "Make logging of autovacuum I/O activity more verbose (Greg Smith, Noah Misch) This logging is triggered by log_autovacuum_min_duration.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/040", "db_id": "d61b5d3d453c66ba7622cf8746ef2168", "patch_ids": [], "statement_hash": "dc507633bd697d6a88bc759dc8032d7d6cb5c685db774c492f0fb9ea310921ba", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-64c3e023312dfd68", "migration": false}, {"id": "9.2.0-396aab2f2f7151b4", "cves": [], "html": "<p>      \u8ba9 <acronym>WAL</acronym> \u91cd\u653e\u66f4\u65e9\u62a5\u544a\u5931\u8d25\uff08Fujii Masao\uff09\n     </p><p>      \u6709\u4e9b\u60c5\u51b5\u4e0b\uff0c\u5931\u8d25\u76f4\u5230\u670d\u52a1\u5668\u8fdb\u5165\u4e3b\u5e93\u6a21\u5f0f\u624d\u88ab\u62a5\u544a\u3002\n     </p>", "text": "\u8ba9 WAL \u91cd\u653e\u66f4\u65e9\u62a5\u544a\u5931\u8d25\uff08Fujii Masao\uff09 \u6709\u4e9b\u60c5\u51b5\u4e0b\uff0c\u5931\u8d25\u76f4\u5230\u670d\u52a1\u5668\u8fdb\u5165\u4e3b\u5e93\u6a21\u5f0f\u624d\u88ab\u62a5\u544a\u3002", "title": "\u8ba9 WAL \u91cd\u653e\u66f4\u65e9\u62a5\u544a\u5931\u8d25", "commits": [], "section": "\u670d\u52a1\u5668 / \u76d1\u63a7", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "ca5394c20f5e39231549f0d99deaa1f0ef38470ad14cb37da1d4fd9fc9417242", "section_path": ["\u670d\u52a1\u5668", "\u76d1\u63a7"], "commit_groups": [], "identity_text": "Make WAL replay report failures sooner (Fujii Masao) There were some cases where failures were only reported once the server went into master mode.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/041", "db_id": "fedad4c528c74a91a4256a78b781059b", "patch_ids": [], "statement_hash": "e38f3db9b10093474dd1188dcbe4165aacc9b31c6444e7dc3b524a1fd1ad6d79", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-396aab2f2f7151b4", "migration": false}, {"id": "9.2.0-52ae2481bb263958", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-BACKUP\" title=\"9.26.3.\u00a0\u5907\u4efd\u63a7\u5236\u51fd\u6570\"><code>pg_xlog_location_diff()</code></a>\uff0c\u7b80\u5316 WAL \u4f4d\u7f6e\u6bd4\u8f83\uff08Euler Taveira de Oliveira\uff09\n     </p><p>      \u8fd9\u5bf9\u4e8e\u8ba1\u7b97\u590d\u5236\u5ef6\u8fdf\u5f88\u6709\u7528\u3002\n     </p>", "text": "\u65b0\u589e pg_xlog_location_diff()\uff0c\u7b80\u5316 WAL \u4f4d\u7f6e\u6bd4\u8f83\uff08Euler Taveira de Oliveira\uff09 \u8fd9\u5bf9\u4e8e\u8ba1\u7b97\u590d\u5236\u5ef6\u8fdf\u5f88\u6709\u7528\u3002", "title": "\u65b0\u589e pg_xlog_location_diff()\uff0c\u7b80\u5316 WAL \u4f4d\u7f6e\u6bd4\u8f83", "commits": [], "section": "\u670d\u52a1\u5668 / \u76d1\u63a7", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "807003c51709cd07b34fe80aa6e139ea2ab2f3c03a79c7ac27134ad3d554e083", "section_path": ["\u670d\u52a1\u5668", "\u76d1\u63a7"], "commit_groups": [], "identity_text": "Add pg_xlog_location_diff() to simplify WAL location comparisons (Euler Taveira de Oliveira) This is useful for computing replication lag.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/042", "db_id": "7a57adf0dd9d36625f020c43cc3a94c7", "patch_ids": [], "statement_hash": "6fe1f42c96dcb9bbfcc50290e29d7c479c02bf814a9ace90fdb76c357ec4d8e8", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-52ae2481bb263958", "migration": false}, {"id": "9.2.0-c27ccb547a8d8cfc", "cves": [], "html": "<p>      \u652f\u6301\u5728 Windows \u4e0a\u914d\u7f6e\u4e8b\u4ef6\u65e5\u5fd7\u5e94\u7528\u540d\uff08MauMau\u3001Magnus Hagander\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u4e0d\u540c\u5b9e\u4f8b\u901a\u8fc7\u8bbe\u7f6e <a href=\"/docs/9.2/runtime-config-logging.html#GUC-EVENT-SOURCE\"><code>event_source</code></a> \u670d\u52a1\u5668\u53c2\u6570\u4ee5\u4e0d\u540c\u6807\u8bc6\u7b26\u4f7f\u7528\u4e8b\u4ef6\u65e5\u5fd7\uff0c\u5176\u5de5\u4f5c\u65b9\u5f0f\u7c7b\u4f3c\u4e8e <a href=\"/docs/9.2/runtime-config-logging.html#GUC-SYSLOG-IDENT\"><code>syslog_ident</code></a>\u3002\n     </p>", "text": "\u652f\u6301\u5728 Windows \u4e0a\u914d\u7f6e\u4e8b\u4ef6\u65e5\u5fd7\u5e94\u7528\u540d\uff08MauMau\u3001Magnus Hagander\uff09 \u8fd9\u5141\u8bb8\u4e0d\u540c\u5b9e\u4f8b\u901a\u8fc7\u8bbe\u7f6e event_source \u670d\u52a1\u5668\u53c2\u6570\u4ee5\u4e0d\u540c\u6807\u8bc6\u7b26\u4f7f\u7528\u4e8b\u4ef6\u65e5\u5fd7\uff0c\u5176\u5de5\u4f5c\u65b9\u5f0f\u7c7b\u4f3c\u4e8e syslog_ident\u3002", "title": "\u652f\u6301\u5728 Windows \u4e0a\u914d\u7f6e\u4e8b\u4ef6\u65e5\u5fd7\u5e94\u7528\u540d", "commits": [], "section": "\u670d\u52a1\u5668 / \u76d1\u63a7", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "e843f2669289804c5c3b68e44781e805eda0447f6bb5796899a4fda5ce716862", "section_path": ["\u670d\u52a1\u5668", "\u76d1\u63a7"], "commit_groups": [], "identity_text": "Support configurable event log application names on Windows (MauMau, Magnus Hagander) This allows different instances to use the event log with different identifiers, by setting the event_source server parameter, which is similar to how syslog_ident works.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/043", "db_id": "d84840e7c46c7b1a22c8ee4f2227dda7", "patch_ids": [], "statement_hash": "01f89b22ff0d5f09bd7f535768ac1f1381dafbb9cda84bf7ceee507381f114ec", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c27ccb547a8d8cfc", "migration": false}, {"id": "9.2.0-c8e772dc1744a7e7", "cves": [], "html": "<p>      \u628a<span>\u201c<span>unexpected EOF</span>\u201d</span>\u6d88\u606f\u6539\u4e3a <code>DEBUG1</code> \u7ea7\u522b\uff0c\u5b58\u5728\u672a\u7ed3\u675f\u4e8b\u52a1\u7684\u60c5\u51b5\u9664\u5916\uff08Magnus Hagander\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u51cf\u5c11\u4e86\u4ee5\u4e0d\u4f18\u96c5\u65b9\u5f0f\u5173\u95ed\u6570\u636e\u5e93\u8fde\u63a5\u7684\u5e94\u7528\u6240\u9020\u6210\u7684\u65e5\u5fd7\u566a\u97f3\u3002\n     </p>", "text": "\u628a\u201cunexpected EOF\u201d\u6d88\u606f\u6539\u4e3a DEBUG1 \u7ea7\u522b\uff0c\u5b58\u5728\u672a\u7ed3\u675f\u4e8b\u52a1\u7684\u60c5\u51b5\u9664\u5916\uff08Magnus Hagander\uff09 \u6b64\u53d8\u66f4\u51cf\u5c11\u4e86\u4ee5\u4e0d\u4f18\u96c5\u65b9\u5f0f\u5173\u95ed\u6570\u636e\u5e93\u8fde\u63a5\u7684\u5e94\u7528\u6240\u9020\u6210\u7684\u65e5\u5fd7\u566a\u97f3\u3002", "title": "\u628a\u201cunexpected EOF\u201d\u6d88\u606f\u6539\u4e3a DEBUG1 \u7ea7\u522b\uff0c\u5b58\u5728\u672a\u7ed3\u675f\u4e8b\u52a1\u7684\u60c5\u51b5\u9664\u5916", "commits": [], "section": "\u670d\u52a1\u5668 / \u76d1\u63a7", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "7939b676a8aa85b9d93e850f554d3f9cca12f2b36ead9e6bb04f7245f92aaed2", "section_path": ["\u670d\u52a1\u5668", "\u76d1\u63a7"], "commit_groups": [], "identity_text": "Change unexpected EOF messages to DEBUG1 level, except when there is an open transaction (Magnus Hagander) This change reduces log chatter caused by applications that close database connections ungracefully.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/044", "db_id": "2ab1852dc91295ae40295a51c7e5e4ed", "patch_ids": [], "statement_hash": "32aaecd0addb456371d9bbbd8181ba9fcdeb363856f2efb5f63c7dca171c1597", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c8e772dc1744a7e7", "migration": false}, {"id": "9.2.0-7bc344877340c1cb", "cves": [], "html": "<p>      \u5728 <a href=\"/docs/9.2/monitoring-stats.html#PG-STAT-DATABASE-VIEW\" title=\"\u8868\u00a027.4.\u00a0pg_stat_database \u89c6\u56fe\"><code>pg_stat_database</code></a> \u7cfb\u7edf\u89c6\u56fe\u4e2d\u8ddf\u8e2a\u4e34\u65f6\u6587\u4ef6\u5927\u5c0f\u548c\u6587\u4ef6\u6570\u91cf\uff08Tomas Vondra\uff09\n     </p>", "text": "\u5728 pg_stat_database \u7cfb\u7edf\u89c6\u56fe\u4e2d\u8ddf\u8e2a\u4e34\u65f6\u6587\u4ef6\u5927\u5c0f\u548c\u6587\u4ef6\u6570\u91cf\uff08Tomas Vondra\uff09", "title": "\u5728 pg_stat_database \u7cfb\u7edf\u89c6\u56fe\u4e2d\u8ddf\u8e2a\u4e34\u65f6\u6587\u4ef6\u5927\u5c0f\u548c\u6587\u4ef6\u6570\u91cf", "commits": [], "section": "\u670d\u52a1\u5668 / \u7edf\u8ba1\u89c6\u56fe", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "0bf9ce09d1254294cfa1860a58b833e10b26798e079983f9e4fb91bdb452419a", "section_path": ["\u670d\u52a1\u5668", "\u7edf\u8ba1\u89c6\u56fe"], "commit_groups": [], "identity_text": "Track temporary file sizes and file counts in the pg_stat_database system view (Tomas Vondra)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/045", "db_id": "c9673943b8a6cc6445c921291fd300b2", "patch_ids": [], "statement_hash": "18314ef2e813756163085c4549e719151612df52c25d179c049be8278fba18e2", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-7bc344877340c1cb", "migration": false}, {"id": "9.2.0-a999a93870aad94e", "cves": [], "html": "<p>      \u4e3a <code>pg_stat_database</code> \u7cfb\u7edf\u89c6\u56fe\u65b0\u589e\u6b7b\u9501\u8ba1\u6570\u5668\uff08Magnus Hagander\uff09\n     </p>", "text": "\u4e3a pg_stat_database \u7cfb\u7edf\u89c6\u56fe\u65b0\u589e\u6b7b\u9501\u8ba1\u6570\u5668\uff08Magnus Hagander\uff09", "title": "\u4e3a pg_stat_database \u7cfb\u7edf\u89c6\u56fe\u65b0\u589e\u6b7b\u9501\u8ba1\u6570\u5668", "commits": [], "section": "\u670d\u52a1\u5668 / \u7edf\u8ba1\u89c6\u56fe", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "3b94e58f434de257c1459cdb5a5c8d22dd9f9fb0d0abcd3d1d38fcbd54e4aae0", "section_path": ["\u670d\u52a1\u5668", "\u7edf\u8ba1\u89c6\u56fe"], "commit_groups": [], "identity_text": "Add a deadlock counter to the pg_stat_database system view (Magnus Hagander)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/046", "db_id": "a66eaf24392812f44febdd403d04fb6c", "patch_ids": [], "statement_hash": "e8d460396ff1080189f91a2deac8c1c0c66ef16d4572e71f5416c62f8aece358", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a999a93870aad94e", "migration": false}, {"id": "9.2.0-016783300b0677db", "cves": [], "html": "<p>      \u65b0\u589e\u670d\u52a1\u5668\u53c2\u6570 <a href=\"/docs/9.2/runtime-config-statistics.html#GUC-TRACK-IO-TIMING\"><code>track_io_timing</code></a>\uff0c\u7528\u4e8e\u8ddf\u8e2a I/O \u8ba1\u65f6\uff08Ants Aasma\u3001Robert Haas\uff09\n     </p>", "text": "\u65b0\u589e\u670d\u52a1\u5668\u53c2\u6570 track_io_timing\uff0c\u7528\u4e8e\u8ddf\u8e2a I/O \u8ba1\u65f6\uff08Ants Aasma\u3001Robert Haas\uff09", "title": "\u65b0\u589e\u670d\u52a1\u5668\u53c2\u6570 track_io_timing\uff0c\u7528\u4e8e\u8ddf\u8e2a I/O \u8ba1\u65f6", "commits": [], "section": "\u670d\u52a1\u5668 / \u7edf\u8ba1\u89c6\u56fe", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "2adb476a8ef7f1a4f969bfd9b68c0850423f8b339fd5e0a15a774b70101cf4c7", "section_path": ["\u670d\u52a1\u5668", "\u7edf\u8ba1\u89c6\u56fe"], "commit_groups": [], "identity_text": "Add a server parameter track_io_timing to track I/O timings (Ants Aasma, Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/047", "db_id": "5b93c66a0a7a5058a4a500160ef0bf67", "patch_ids": [], "statement_hash": "f9a3b340d29f343d41d445108e0763b0ac9e0d4200273353b13fa427771ecda1", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-016783300b0677db", "migration": false}, {"id": "9.2.0-3a74b5538a2d6f04", "cves": [], "html": "<p>      \u5728 <a href=\"/docs/9.2/monitoring-stats.html#PG-STAT-BGWRITER-VIEW\" title=\"\u8868\u00a027.3.\u00a0pg_stat_bgwriter \u89c6\u56fe\"><code>pg_stat_bgwriter</code></a> \u4e2d\u62a5\u544a\u68c0\u67e5\u70b9\u8ba1\u65f6\u4fe1\u606f\uff08Greg Smith\u3001Peter Geoghegan\uff09\n     </p>", "text": "\u5728 pg_stat_bgwriter \u4e2d\u62a5\u544a\u68c0\u67e5\u70b9\u8ba1\u65f6\u4fe1\u606f\uff08Greg Smith\u3001Peter Geoghegan\uff09", "title": "\u5728 pg_stat_bgwriter \u4e2d\u62a5\u544a\u68c0\u67e5\u70b9\u8ba1\u65f6\u4fe1\u606f", "commits": [], "section": "\u670d\u52a1\u5668 / \u7edf\u8ba1\u89c6\u56fe", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "27e093e207e9b3bfb151326ff91edba77f259930325431bbad2babdbe9442b53", "section_path": ["\u670d\u52a1\u5668", "\u7edf\u8ba1\u89c6\u56fe"], "commit_groups": [], "identity_text": "Report checkpoint timing information in pg_stat_bgwriter (Greg Smith, Peter Geoghegan)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/048", "db_id": "d2ea2a695faeb04ae4d121ce696a1634", "patch_ids": [], "statement_hash": "5853a0721b6749cbbb7fc7a7303a454bb80fe30898940827d2b3aeccdca0f1fd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-3a74b5538a2d6f04", "migration": false}, {"id": "9.2.0-deba5c06be3d1c17", "cves": [], "html": "<p>      \u9759\u9ed8\u5ffd\u7565 <a href=\"/docs/9.2/runtime-config-client.html#GUC-SEARCH-PATH\"><code>search_path</code></a> \u4e2d\u6307\u5b9a\u4f46\u4e0d\u5b58\u5728\u7684\u6a21\u5f0f\uff08Tom Lane\uff09\n     </p><p>      \u8fd9\u4f7f\u5f97\u4f7f\u7528\u901a\u7528\u8def\u5f84\u8bbe\u7f6e\u66f4\u65b9\u4fbf\uff0c\u8fd9\u7c7b\u8bbe\u7f6e\u53ef\u80fd\u5305\u542b\u5e76\u975e\u5728\u6240\u6709\u6570\u636e\u5e93\u4e2d\u90fd\u5b58\u5728\u7684\u6a21\u5f0f\u3002\n     </p>", "text": "\u9759\u9ed8\u5ffd\u7565 search_path \u4e2d\u6307\u5b9a\u4f46\u4e0d\u5b58\u5728\u7684\u6a21\u5f0f\uff08Tom Lane\uff09 \u8fd9\u4f7f\u5f97\u4f7f\u7528\u901a\u7528\u8def\u5f84\u8bbe\u7f6e\u66f4\u65b9\u4fbf\uff0c\u8fd9\u7c7b\u8bbe\u7f6e\u53ef\u80fd\u5305\u542b\u5e76\u975e\u5728\u6240\u6709\u6570\u636e\u5e93\u4e2d\u90fd\u5b58\u5728\u7684\u6a21\u5f0f\u3002", "title": "\u9759\u9ed8\u5ffd\u7565 search_path \u4e2d\u6307\u5b9a\u4f46\u4e0d\u5b58\u5728\u7684\u6a21\u5f0f", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "cf21251545b8d91b1b93a69f808da01ed679be90452d70ffcccba30fb4c51fee", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Silently ignore nonexistent schemas specified in search_path (Tom Lane) This makes it more convenient to use generic path settings, which might include some schemas that don't exist in all databases.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/049", "db_id": "7471ba20d030f4790ac6a63d3344df1d", "patch_ids": [], "statement_hash": "1cdca604b552dfb73d58a54b703df891c947ad7fefd51814d49c46a605b7c9a2", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-deba5c06be3d1c17", "migration": false}, {"id": "9.2.0-42d84ea92926a481", "cves": [], "html": "<p>      \u5141\u8bb8\u8d85\u7ea7\u7528\u6237\u6309\u4f1a\u8bdd\u8bbe\u7f6e <a href=\"/docs/9.2/runtime-config-locks.html#GUC-DEADLOCK-TIMEOUT\"><code>deadlock_timeout</code></a>\uff0c\u800c\u4e0d\u4ec5\u662f\u6309\u96c6\u7c07\uff08Noah Misch\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u5bf9\u5f88\u53ef\u80fd\u5377\u5165\u6b7b\u9501\u7684\u4e8b\u52a1\u964d\u4f4e <code>deadlock_timeout</code>\uff0c\u4ece\u800c\u66f4\u5feb\u68c0\u6d4b\u5230\u5931\u8d25\u3002\u6216\u8005\uff0c\u63d0\u9ad8\u8be5\u503c\u53ef\u4ee5\u964d\u4f4e\u4f1a\u8bdd\u56e0\u6b7b\u9501\u800c\u88ab\u9009\u4e2d\u53d6\u6d88\u7684\u673a\u4f1a\u3002\n     </p>", "text": "\u5141\u8bb8\u8d85\u7ea7\u7528\u6237\u6309\u4f1a\u8bdd\u8bbe\u7f6e deadlock_timeout\uff0c\u800c\u4e0d\u4ec5\u662f\u6309\u96c6\u7c07\uff08Noah Misch\uff09 \u8fd9\u5141\u8bb8\u5bf9\u5f88\u53ef\u80fd\u5377\u5165\u6b7b\u9501\u7684\u4e8b\u52a1\u964d\u4f4e deadlock_timeout\uff0c\u4ece\u800c\u66f4\u5feb\u68c0\u6d4b\u5230\u5931\u8d25\u3002\u6216\u8005\uff0c\u63d0\u9ad8\u8be5\u503c\u53ef\u4ee5\u964d\u4f4e\u4f1a\u8bdd\u56e0\u6b7b\u9501\u800c\u88ab\u9009\u4e2d\u53d6\u6d88\u7684\u673a\u4f1a\u3002", "title": "\u5141\u8bb8\u8d85\u7ea7\u7528\u6237\u6309\u4f1a\u8bdd\u8bbe\u7f6e deadlock_timeout\uff0c\u800c\u4e0d\u4ec5\u662f\u6309\u96c6\u7c07", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "9b9131e3c9708d8835de0a13e0b41829519612aac6e5646e9beeb6c98492c2af", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Allow superusers to set deadlock_timeout per-session, not just per-cluster (Noah Misch) This allows deadlock_timeout to be reduced for transactions that are likely to be involved in a deadlock, thus detecting the failure more quickly. Alternatively, increasing the value can be used to reduce the chances of a session being chosen for cancellation due to a deadlock.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/050", "db_id": "bdd94437fc078c39b8f463fd8e84c9e5", "patch_ids": [], "statement_hash": "6ab4a8a005d83baf49d2cbdd81b097ea0e5b5216d79e1c7c7c82e31e180236cf", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-42d84ea92926a481", "migration": false}, {"id": "9.2.0-fd413241daa88e0b", "cves": [], "html": "<p>      \u65b0\u589e\u670d\u52a1\u5668\u53c2\u6570 <a href=\"/docs/9.2/runtime-config-resource.html#GUC-TEMP-FILE-LIMIT\"><code>temp_file_limit</code></a>\uff0c\u7528\u4e8e\u9650\u5236\u6bcf\u4f1a\u8bdd\u7684\u4e34\u65f6\u6587\u4ef6\u7a7a\u95f4\u4f7f\u7528\uff08Mark Kirkwood\uff09\n     </p>", "text": "\u65b0\u589e\u670d\u52a1\u5668\u53c2\u6570 temp_file_limit\uff0c\u7528\u4e8e\u9650\u5236\u6bcf\u4f1a\u8bdd\u7684\u4e34\u65f6\u6587\u4ef6\u7a7a\u95f4\u4f7f\u7528\uff08Mark Kirkwood\uff09", "title": "\u65b0\u589e\u670d\u52a1\u5668\u53c2\u6570 temp_file_limit\uff0c\u7528\u4e8e\u9650\u5236\u6bcf\u4f1a\u8bdd\u7684\u4e34\u65f6\u6587\u4ef6\u7a7a\u95f4\u4f7f\u7528", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "517a9d2f03bdba3797b3e19730d88a92d1f1087d375c7ab30c76d4fa70aedcab", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Add a server parameter temp_file_limit to constrain temporary file space usage per session (Mark Kirkwood)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/051", "db_id": "da336137f02024afa23ad5bf013d802f", "patch_ids": [], "statement_hash": "2f25e9fc6c108fc0c25fae2fa75c07bf1734365bae6d67877c62637a348b9bb8", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-fd413241daa88e0b", "migration": false}, {"id": "9.2.0-91441c9a6a4d37e5", "cves": [], "html": "<p>      \u5141\u8bb8\u8d85\u7ea7\u7528\u6237\u5728\u52a0\u8f7d\u76f8\u5173\u6269\u5c55\u4e4b\u524d <code>SET</code> \u8be5\u6269\u5c55\u7684\u4ec5\u8d85\u7ea7\u7528\u6237\u81ea\u5b9a\u4e49\u53d8\u91cf\uff08Tom Lane\uff09\n     </p><p>      \u7cfb\u7edf\u73b0\u5728\u4f1a\u8bb0\u4f4f <code>SET</code> \u662f\u5426\u7531\u8d85\u7ea7\u7528\u6237\u6267\u884c\uff0c\u4ee5\u4fbf\u5728\u52a0\u8f7d\u6269\u5c55\u65f6\u8fdb\u884c\u6b63\u786e\u7684\u6743\u9650\u68c0\u67e5\u3002\n     </p>", "text": "\u5141\u8bb8\u8d85\u7ea7\u7528\u6237\u5728\u52a0\u8f7d\u76f8\u5173\u6269\u5c55\u4e4b\u524d SET \u8be5\u6269\u5c55\u7684\u4ec5\u8d85\u7ea7\u7528\u6237\u81ea\u5b9a\u4e49\u53d8\u91cf\uff08Tom Lane\uff09 \u7cfb\u7edf\u73b0\u5728\u4f1a\u8bb0\u4f4f SET \u662f\u5426\u7531\u8d85\u7ea7\u7528\u6237\u6267\u884c\uff0c\u4ee5\u4fbf\u5728\u52a0\u8f7d\u6269\u5c55\u65f6\u8fdb\u884c\u6b63\u786e\u7684\u6743\u9650\u68c0\u67e5\u3002", "title": "\u5141\u8bb8\u8d85\u7ea7\u7528\u6237\u5728\u52a0\u8f7d\u76f8\u5173\u6269\u5c55\u4e4b\u524d SET \u8be5\u6269\u5c55\u7684\u4ec5\u8d85\u7ea7\u7528\u6237\u81ea\u5b9a\u4e49\u53d8\u91cf", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "75308fcd43cda63d90fab197d537d8fedff854333b3aee97a9354c8e86ba39a6", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Allow a superuser to SET an extension's superuser-only custom variable before loading the associated extension (Tom Lane) The system now remembers whether a SET was performed by a superuser, so that proper privilege checking can be done when the extension is loaded.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/052", "db_id": "512d273539bb848ec517debce3b2526f", "patch_ids": [], "statement_hash": "355e26890dd49cf98c8089a7e5238fd1b158a7cf83a7dd8855c9cb09062e3e07", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-91441c9a6a4d37e5", "migration": false}, {"id": "9.2.0-016c1675ecb2943c", "cves": [], "html": "<p>      \u4e3a <a href=\"/docs/9.2/app-postmaster.html\" title=\"postmaster\">postmaster</a> \u65b0\u589e <code>-C</code> \u9009\u9879\uff0c\u7528\u4e8e\u67e5\u8be2\u914d\u7f6e\u53c2\u6570\uff08Bruce Momjian\uff09\n     </p><p>      \u8fd9\u4f7f <span>pg_ctl</span> \u80fd\u66f4\u597d\u5730\u5904\u7406 <code>PGDATA</code> \u6216 <code>-D</code> \u6307\u5411\u4ec5\u914d\u7f6e\u76ee\u5f55\u7684\u60c5\u51b5\u3002\n     </p>", "text": "\u4e3a postmaster \u65b0\u589e -C \u9009\u9879\uff0c\u7528\u4e8e\u67e5\u8be2\u914d\u7f6e\u53c2\u6570\uff08Bruce Momjian\uff09 \u8fd9\u4f7f pg_ctl \u80fd\u66f4\u597d\u5730\u5904\u7406 PGDATA \u6216 -D \u6307\u5411\u4ec5\u914d\u7f6e\u76ee\u5f55\u7684\u60c5\u51b5\u3002", "title": "\u4e3a postmaster \u65b0\u589e -C \u9009\u9879\uff0c\u7528\u4e8e\u67e5\u8be2\u914d\u7f6e\u53c2\u6570", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "6494b9c2f3022fd5e830c79300ab35933bbc5f086e6ca7c354f51200bb5ebc90", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Add postmaster -C option to query configuration parameters (Bruce Momjian) This allows pg_ctl to better handle cases where PGDATA or -D points to a configuration-only directory.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/053", "db_id": "f2df67d3ae28fe0310653ee070425cec", "patch_ids": [], "statement_hash": "e94cd7cb68b84478d9126575202ca02440e5db400f37ea282e57254cd7c33b9b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-016c1675ecb2943c", "migration": false}, {"id": "9.2.0-4ae7876f90ea244f", "cves": [], "html": "<p>      \u5728 <code>CREATE DATABASE</code> \u4e2d\u7528\u9690\u542b\u503c\u66ff\u6362\u7a7a\u7684\u533a\u57df\u540d\uff08Tom Lane\uff09\n     </p><p>      \u8fd9\u9632\u6b62\u4e86 <code>pg_database</code>.<code>datcollate</code> \u6216 <code>datctype</code> \u5728\u670d\u52a1\u5668\u91cd\u542f\u540e\u88ab\u4e0d\u540c\u89e3\u91ca\u7684\u60c5\u51b5\u3002\n     </p>", "text": "\u5728 CREATE DATABASE \u4e2d\u7528\u9690\u542b\u503c\u66ff\u6362\u7a7a\u7684\u533a\u57df\u540d\uff08Tom Lane\uff09 \u8fd9\u9632\u6b62\u4e86 pg_database.datcollate \u6216 datctype \u5728\u670d\u52a1\u5668\u91cd\u542f\u540e\u88ab\u4e0d\u540c\u89e3\u91ca\u7684\u60c5\u51b5\u3002", "title": "\u5728 CREATE DATABASE \u4e2d\u7528\u9690\u542b\u503c\u66ff\u6362\u7a7a\u7684\u533a\u57df\u540d", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "33ccf28497858e0872899635e11e6ad352f24bb0e580e2811b83e8e0d9fb0afc", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e"], "commit_groups": [], "identity_text": "Replace an empty locale name with the implied value in CREATE DATABASE (Tom Lane) This prevents cases where pg_database.datcollate or datctype could be interpreted differently after a server restart.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/054", "db_id": "df05c5b6d047ca584c64a8acbe6931aa", "patch_ids": [], "statement_hash": "64369df3bce1b4a5c2d62bac6a673dcc8176015a4014156b5cc2fe76405c8849", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4ae7876f90ea244f", "migration": false}, {"id": "9.2.0-a8d452d8d130bba9", "cves": [], "html": "<p>      \u5141\u8bb8\u62a5\u544a <code>postgresql.conf</code> \u4e2d\u7684\u591a\u4e2a\u9519\u8bef\uff0c\u800c\u4e0d\u662f\u53ea\u6709\u7b2c\u4e00\u4e2a\uff08Alexey Klyukin\u3001Tom Lane\uff09\n     </p>", "text": "\u5141\u8bb8\u62a5\u544a postgresql.conf \u4e2d\u7684\u591a\u4e2a\u9519\u8bef\uff0c\u800c\u4e0d\u662f\u53ea\u6709\u7b2c\u4e00\u4e2a\uff08Alexey Klyukin\u3001Tom Lane\uff09", "title": "\u5141\u8bb8\u62a5\u544a postgresql.conf \u4e2d\u7684\u591a\u4e2a\u9519\u8bef\uff0c\u800c\u4e0d\u662f\u53ea\u6709\u7b2c\u4e00\u4e2a", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e / postgresql.conf", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8.3", "source_hash": "6354db4d488ba02cc221d55d53198bc0a0ddc0f177ea8d7e5b6d8bd709d4f6e8", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e", "postgresql.conf"], "commit_groups": [], "identity_text": "Allow multiple errors in postgresql.conf to be reported, rather than just the first one (Alexey Klyukin, Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/055", "db_id": "2733d12f6532b5fd7e5e1404474abaa4", "patch_ids": [], "statement_hash": "a23b7426cef9343b69f1cab7af7ad01fe5aef3fbb2903196e54defd6acaaea21", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a8d452d8d130bba9", "migration": false}, {"id": "9.2.0-8cda8358a220457f", "cves": [], "html": "<p>      \u5141\u8bb8\u6240\u6709\u4f1a\u8bdd\u5904\u7406 <code>postgresql.conf</code> \u7684\u91cd\u65b0\u52a0\u8f7d\uff0c\u5373\u4f7f\u67d0\u4e9b\u8bbe\u7f6e\u5bf9\u7279\u5b9a\u4f1a\u8bdd\u65e0\u6548\uff08Alexey Klyukin\uff09\n     </p><p>      \u6b64\u524d\uff0c\u8fd9\u7c7b\u4f1a\u8bdd\u5185\u65e0\u6548\u7684\u503c\u4f1a\u5bfc\u81f4\u8be5\u4f1a\u8bdd\u5ffd\u7565\u6240\u6709\u8bbe\u7f6e\u53d8\u66f4\u3002\n     </p>", "text": "\u5141\u8bb8\u6240\u6709\u4f1a\u8bdd\u5904\u7406 postgresql.conf \u7684\u91cd\u65b0\u52a0\u8f7d\uff0c\u5373\u4f7f\u67d0\u4e9b\u8bbe\u7f6e\u5bf9\u7279\u5b9a\u4f1a\u8bdd\u65e0\u6548\uff08Alexey Klyukin\uff09 \u6b64\u524d\uff0c\u8fd9\u7c7b\u4f1a\u8bdd\u5185\u65e0\u6548\u7684\u503c\u4f1a\u5bfc\u81f4\u8be5\u4f1a\u8bdd\u5ffd\u7565\u6240\u6709\u8bbe\u7f6e\u53d8\u66f4\u3002", "title": "\u5141\u8bb8\u6240\u6709\u4f1a\u8bdd\u5904\u7406 postgresql.conf \u7684\u91cd\u65b0\u52a0\u8f7d\uff0c\u5373\u4f7f\u67d0\u4e9b\u8bbe\u7f6e\u5bf9\u7279\u5b9a\u4f1a\u8bdd\u65e0\u6548", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e / postgresql.conf", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8.3", "source_hash": "259698959498ad081253205d66c377ff0e25ba8579002321ee5c991674ddaa51", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e", "postgresql.conf"], "commit_groups": [], "identity_text": "Allow a reload of postgresql.conf to be processed by all sessions, even if there are some settings that are invalid for particular sessions (Alexey Klyukin) Previously, such not-valid-within-session values would cause all setting changes to be ignored by that session.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/056", "db_id": "4295a1c3466e05e86324d5dffd256f81", "patch_ids": [], "statement_hash": "fd56085cc2e27adacc1d0fed3439881ed0da166e3e74f3123992c51ea3e269fb", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-8cda8358a220457f", "migration": false}, {"id": "9.2.0-e510e71612919489", "cves": [], "html": "<p>      \u4e3a\u914d\u7f6e\u6587\u4ef6\u65b0\u589e <code>include_if_exists</code> \u673a\u5236\uff08Greg Smith\uff09\n     </p><p>      \u5176\u5de5\u4f5c\u65b9\u5f0f\u4e0e <code>include</code> \u76f8\u540c\uff0c\u53ea\u662f\u6587\u4ef6\u7f3a\u5931\u65f6\u4e0d\u629b\u51fa\u9519\u8bef\u3002\n     </p>", "text": "\u4e3a\u914d\u7f6e\u6587\u4ef6\u65b0\u589e include_if_exists \u673a\u5236\uff08Greg Smith\uff09 \u5176\u5de5\u4f5c\u65b9\u5f0f\u4e0e include \u76f8\u540c\uff0c\u53ea\u662f\u6587\u4ef6\u7f3a\u5931\u65f6\u4e0d\u629b\u51fa\u9519\u8bef\u3002", "title": "\u4e3a\u914d\u7f6e\u6587\u4ef6\u65b0\u589e include_if_exists \u673a\u5236", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e / postgresql.conf", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8.3", "source_hash": "ff26c6defa5b02f24e0aa834d17f755107b010cedc95617d3e79c5920f6dab74", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e", "postgresql.conf"], "commit_groups": [], "identity_text": "Add an include_if_exists facility for configuration files (Greg Smith) This works the same as include, except that an error is not thrown if the file is missing.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/057", "db_id": "4565523363f3e655621ccfc6505082e6", "patch_ids": [], "statement_hash": "76182555d2d9bd24a84d67bafece95ab3039b14dc92b47152e7342d4d55a1e01", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e510e71612919489", "migration": false}, {"id": "9.2.0-d6c6bc60aa37c8fa", "cves": [], "html": "<p>      \u5728 <span>initdb</span> \u671f\u95f4\u786e\u5b9a\u670d\u52a1\u5668\u65f6\u533a\uff0c\u5e76\u76f8\u5e94\u5730\u8bbe\u7f6e <code>postgresql.conf</code> \u4e2d\u7684 <a href=\"/docs/9.2/runtime-config-client.html#GUC-TIMEZONE\"><code>timezone</code></a> \u548c <a href=\"/docs/9.2/runtime-config-logging.html#GUC-LOG-TIMEZONE\"><code>log_timezone</code></a> \u6761\u76ee\uff08Tom Lane\uff09\n     </p><p>      \u8fd9\u907f\u514d\u4e86\u670d\u52a1\u5668\u542f\u52a8\u671f\u95f4\u6602\u8d35\u7684\u65f6\u533a\u63a2\u6d4b\u3002\n     </p>", "text": "\u5728 initdb \u671f\u95f4\u786e\u5b9a\u670d\u52a1\u5668\u65f6\u533a\uff0c\u5e76\u76f8\u5e94\u5730\u8bbe\u7f6e postgresql.conf \u4e2d\u7684 timezone \u548c log_timezone \u6761\u76ee\uff08Tom Lane\uff09 \u8fd9\u907f\u514d\u4e86\u670d\u52a1\u5668\u542f\u52a8\u671f\u95f4\u6602\u8d35\u7684\u65f6\u533a\u63a2\u6d4b\u3002", "title": "\u5728 initdb \u671f\u95f4\u786e\u5b9a\u670d\u52a1\u5668\u65f6\u533a\uff0c\u5e76\u76f8\u5e94\u5730\u8bbe\u7f6e postgresql.conf \u4e2d\u7684 timezone \u548c log_timezone \u6761\u76ee", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e / postgresql.conf", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8.3", "source_hash": "1fab4c703720e21a67141d844f2a2dc0e9b455234b36597f8a2d39203dbb59c8", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e", "postgresql.conf"], "commit_groups": [], "identity_text": "Identify the server time zone during initdb, and set postgresql.conf entries timezone and log_timezone accordingly (Tom Lane) This avoids expensive time zone probes during server start.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/058", "db_id": "3a96a05c1981704ed455fea409912070", "patch_ids": [], "statement_hash": "e7ba71bce7263e19e2aaa07634e824f812c531d4d1e55b0ed9e7e2c1c7a39d6e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d6c6bc60aa37c8fa", "migration": false}, {"id": "9.2.0-171e9f970c96b09b", "cves": [], "html": "<p>      \u4fee\u590d <a href=\"/docs/9.2/view-pg-settings.html\" title=\"45.64.\u00a0pg_settings\"><code>pg_settings</code></a>\uff0c\u4f7f\u5176\u5728 Windows \u4e0a\u62a5\u544a <code>postgresql.conf</code> \u884c\u53f7\uff08Tom Lane\uff09\n     </p>", "text": "\u4fee\u590d pg_settings\uff0c\u4f7f\u5176\u5728 Windows \u4e0a\u62a5\u544a postgresql.conf \u884c\u53f7\uff08Tom Lane\uff09", "title": "\u4fee\u590d pg_settings\uff0c\u4f7f\u5176\u5728 Windows \u4e0a\u62a5\u544a postgresql.conf \u884c\u53f7", "commits": [], "section": "\u670d\u52a1\u5668 / \u670d\u52a1\u5668\u8bbe\u7f6e / postgresql.conf", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8.3", "source_hash": "15bbc1e2fbcbd9c713fcc5b28a94cc87019dcde4d637e18904b6145ddd991578", "section_path": ["\u670d\u52a1\u5668", "\u670d\u52a1\u5668\u8bbe\u7f6e", "postgresql.conf"], "commit_groups": [], "identity_text": "Fix pg_settings to report postgresql.conf line numbers on Windows (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/059", "db_id": "7b43fd8e6ccf1b24eb190187fbd8bafe", "patch_ids": [], "statement_hash": "195628b765e0508efe03813911d26b8178f8e2445440e21835bc62f1ea43d945", "relations": [], "category_label": "BUG \u4fee\u590d", "url": "/docs/compare/?release=9.2.0#9.2.0-171e9f970c96b09b", "migration": false}, {"id": "9.2.0-90943e5bf071a1d3", "cves": [], "html": "<p>      \u5141\u8bb8\u6d41\u590d\u5236\u4ece\u5e93\u5411\u5176\u4ed6\u4ece\u5e93\u8f6c\u53d1\u6570\u636e\uff08<a href=\"/docs/9.2/warm-standby.html#CASCADING-REPLICATION\" title=\"25.2.6.\u00a0\u7ea7\u8054\u590d\u5236\"><em>\u7ea7\u8054\u590d\u5236</em></a>\uff09\uff08Fujii Masao\uff09\n     </p><p>      \u6b64\u524d\uff0c\u53ea\u6709\u4e3b\u670d\u52a1\u5668\u80fd\u5411\u5907\u5e93\u670d\u52a1\u5668\u63d0\u4f9b\u6d41\u590d\u5236\u65e5\u5fd7\u6587\u4ef6\u3002\n     </p>", "text": "\u5141\u8bb8\u6d41\u590d\u5236\u4ece\u5e93\u5411\u5176\u4ed6\u4ece\u5e93\u8f6c\u53d1\u6570\u636e\uff08\u7ea7\u8054\u590d\u5236\uff09\uff08Fujii Masao\uff09 \u6b64\u524d\uff0c\u53ea\u6709\u4e3b\u670d\u52a1\u5668\u80fd\u5411\u5907\u5e93\u670d\u52a1\u5668\u63d0\u4f9b\u6d41\u590d\u5236\u65e5\u5fd7\u6587\u4ef6\u3002", "title": "\u5141\u8bb8\u6d41\u590d\u5236\u4ece\u5e93\u5411\u5176\u4ed6\u4ece\u5e93\u8f6c\u53d1\u6570\u636e\uff08\u7ea7\u8054\u590d\u5236\uff09", "commits": [], "section": "\u590d\u5236\u548c\u6062\u590d", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "7d8424e2df3686845e331314b1c20f1e96220995b0adeead440b868bde8e47ec", "section_path": ["\u590d\u5236\u548c\u6062\u590d"], "commit_groups": [], "identity_text": "Allow streaming replication slaves to forward data to other slaves (cascading replication) (Fujii Masao) Previously, only the master server could supply streaming replication log files to standby servers.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/060", "db_id": "b16c8ee3c6536f9af76f2f017a579427", "patch_ids": [], "statement_hash": "a24473494cc8ccc1633434e6396520e4c2f92592f8aee9ac99a1c66492a0f64b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-90943e5bf071a1d3", "migration": false}, {"id": "9.2.0-d32e609313f1134a", "cves": [], "html": "<p>      \u4e3a <a href=\"/docs/9.2/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\"><code>synchronous_commit</code></a> \u65b0\u589e\u6a21\u5f0f <code>remote_write</code>\uff08Fujii Masao\u3001Simon Riggs\uff09\n     </p><p>      \u6b64\u6a21\u5f0f\u7b49\u5f85\u5907\u5e93\u670d\u52a1\u5668\u628a\u4e8b\u52a1\u6570\u636e\u5199\u5165\u5176\u81ea\u8eab\u7684\u64cd\u4f5c\u7cfb\u7edf\uff0c\u4f46\u4e0d\u7b49\u5f85\u6570\u636e\u88ab\u5237\u5230\u5907\u5e93\u7684\u78c1\u76d8\u3002\n     </p>", "text": "\u4e3a synchronous_commit \u65b0\u589e\u6a21\u5f0f remote_write\uff08Fujii Masao\u3001Simon Riggs\uff09 \u6b64\u6a21\u5f0f\u7b49\u5f85\u5907\u5e93\u670d\u52a1\u5668\u628a\u4e8b\u52a1\u6570\u636e\u5199\u5165\u5176\u81ea\u8eab\u7684\u64cd\u4f5c\u7cfb\u7edf\uff0c\u4f46\u4e0d\u7b49\u5f85\u6570\u636e\u88ab\u5237\u5230\u5907\u5e93\u7684\u78c1\u76d8\u3002", "title": "\u4e3a synchronous_commit \u65b0\u589e\u6a21\u5f0f remote_write", "commits": [], "section": "\u590d\u5236\u548c\u6062\u590d", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "3e48a9c9873a02f6762191e1abf0d9a379e0f55bb51c7b27e100deb5d89ac22c", "section_path": ["\u590d\u5236\u548c\u6062\u590d"], "commit_groups": [], "identity_text": "Add new synchronous_commit mode remote_write (Fujii Masao, Simon Riggs) This mode waits for the standby server to write transaction data to its own operating system, but does not wait for the data to be flushed to the standby's disk.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/061", "db_id": "7fa29515c8d72125c4f7da61b3f93ff6", "patch_ids": [], "statement_hash": "504a5fbf23414ba6ab1725ac9c6fa6cade4a3679e9c417ba86c59ed06b7c3080", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d32e609313f1134a", "migration": false}, {"id": "9.2.0-4159197654ebbffe", "cves": [], "html": "<p>      \u65b0\u589e<a href=\"/docs/9.2/app-pgreceivexlog.html\" title=\"pg_receivexlog\"><span>pg_receivexlog</span></a>\u5de5\u5177\uff0c\u5728 WAL \u6587\u4ef6\u53d8\u66f4\u5199\u5165\u65f6\u5c31\u5f52\u6863\uff0c\u800c\u4e0d\u662f\u7b49\u5f85 WAL \u6587\u4ef6\u5b8c\u6210\uff08Magnus Hagander\uff09\n     </p>", "text": "\u65b0\u589epg_receivexlog\u5de5\u5177\uff0c\u5728 WAL \u6587\u4ef6\u53d8\u66f4\u5199\u5165\u65f6\u5c31\u5f52\u6863\uff0c\u800c\u4e0d\u662f\u7b49\u5f85 WAL \u6587\u4ef6\u5b8c\u6210\uff08Magnus Hagander\uff09", "title": "\u65b0\u589epg_receivexlog\u5de5\u5177\uff0c\u5728 WAL \u6587\u4ef6\u53d8\u66f4\u5199\u5165\u65f6\u5c31\u5f52\u6863\uff0c\u800c\u4e0d\u662f\u7b49\u5f85 WAL \u6587\u4ef6\u5b8c\u6210", "commits": [], "section": "\u590d\u5236\u548c\u6062\u590d", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "5ca289ee854a8f08f671fbe9223762bf1e42682af195c9bb8a4c248fcbd5faa5", "section_path": ["\u590d\u5236\u548c\u6062\u590d"], "commit_groups": [], "identity_text": "Add a pg_receivexlog tool to archive WAL file changes as they are written, rather than waiting for completed WAL files (Magnus Hagander)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/062", "db_id": "58446c211e99816ad87983a6d972d422", "patch_ids": [], "statement_hash": "45471f9ca8ced48ab1c97ab81d570013b4cf861d2dcdd048f8a9b258adfaaa6f", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4159197654ebbffe", "migration": false}, {"id": "9.2.0-ed1c930a177d59c4", "cves": [], "html": "<p>      \u5141\u8bb8<a href=\"/docs/9.2/app-pgbasebackup.html\" title=\"pg_basebackup\"><span>pg_basebackup</span></a>\u4ece\u5907\u5e93\u670d\u52a1\u5668\u505a\u57fa\u7840\u5907\u4efd\uff08Jun Ishizuka\u3001Fujii Masao\uff09\n     </p><p>      \u6b64\u7279\u6027\u5141\u8bb8\u628a\u5236\u4f5c\u65b0\u57fa\u7840\u5907\u4efd\u7684\u5de5\u4f5c\u4ece\u4e3b\u5e93\u670d\u52a1\u5668\u4e0a\u5378\u8f7d\u3002\n     </p>", "text": "\u5141\u8bb8pg_basebackup\u4ece\u5907\u5e93\u670d\u52a1\u5668\u505a\u57fa\u7840\u5907\u4efd\uff08Jun Ishizuka\u3001Fujii Masao\uff09 \u6b64\u7279\u6027\u5141\u8bb8\u628a\u5236\u4f5c\u65b0\u57fa\u7840\u5907\u4efd\u7684\u5de5\u4f5c\u4ece\u4e3b\u5e93\u670d\u52a1\u5668\u4e0a\u5378\u8f7d\u3002", "title": "\u5141\u8bb8pg_basebackup\u4ece\u5907\u5e93\u670d\u52a1\u5668\u505a\u57fa\u7840\u5907\u4efd", "commits": [], "section": "\u590d\u5236\u548c\u6062\u590d", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "2968cd36224c686f7f897d3780c4b2fdb89c8f65d453ea7a5a3da0462d515b14", "section_path": ["\u590d\u5236\u548c\u6062\u590d"], "commit_groups": [], "identity_text": "Allow pg_basebackup to make base backups from standby servers (Jun Ishizuka, Fujii Masao) This feature lets the work of making new base backups be off-loaded from the primary server.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/063", "db_id": "0401b2da9fd4d66bde01f74eb4461bf7", "patch_ids": [], "statement_hash": "108464e3403aa6a6fd87e5d49f774b7e07cee3f9f49e253ddb84a8749d5bf1fd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-ed1c930a177d59c4", "migration": false}, {"id": "9.2.0-dac54e807ef9ef9e", "cves": [], "html": "<p>      \u5141\u8bb8\u5728 <span>pg_basebackup</span> \u6267\u884c\u5907\u4efd\u671f\u95f4\u6d41\u5f0f\u4f20\u8f93 WAL \u6587\u4ef6\uff08Magnus Hagander\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u5728 WAL \u6587\u4ef6\u5728\u4e3b\u5e93\u4e0a\u88ab\u4e22\u5f03\u4e4b\u524d\u4f20\u7ed9\u5907\u5e93\u3002\n     </p>", "text": "\u5141\u8bb8\u5728 pg_basebackup \u6267\u884c\u5907\u4efd\u671f\u95f4\u6d41\u5f0f\u4f20\u8f93 WAL \u6587\u4ef6\uff08Magnus Hagander\uff09 \u8fd9\u5141\u8bb8\u5728 WAL \u6587\u4ef6\u5728\u4e3b\u5e93\u4e0a\u88ab\u4e22\u5f03\u4e4b\u524d\u4f20\u7ed9\u5907\u5e93\u3002", "title": "\u5141\u8bb8\u5728 pg_basebackup \u6267\u884c\u5907\u4efd\u671f\u95f4\u6d41\u5f0f\u4f20\u8f93 WAL \u6587\u4ef6", "commits": [], "section": "\u590d\u5236\u548c\u6062\u590d", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "16b47bc3775863200297ddbdba3dac62ae9b3fbcace428ef88460894c67cc496", "section_path": ["\u590d\u5236\u548c\u6062\u590d"], "commit_groups": [], "identity_text": "Allow streaming of WAL files while pg_basebackup is performing a backup (Magnus Hagander) This allows passing of WAL files to the standby before they are discarded on the primary.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/064", "db_id": "71d7ecc26816f252992c871f2c2074af", "patch_ids": [], "statement_hash": "fff7a071a3572c1ca1699e896b6ba3ab71b295b4b4e7e8456af7b271716e1f34", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-dac54e807ef9ef9e", "migration": false}, {"id": "9.2.0-c6d1b42a44f88d0c", "cves": [], "html": "<p>      \u5f53\u5ba2\u6237\u7aef\u65ad\u5f00\u8fde\u63a5\u65f6\u53d6\u6d88\u6b63\u5728\u8fd0\u884c\u7684\u67e5\u8be2\uff08Florian Pflug\uff09\n     </p><p>      \u5982\u679c\u540e\u7aef\u5728\u67e5\u8be2\u671f\u95f4\u68c0\u6d4b\u5230\u5ba2\u6237\u7aef\u8fde\u63a5\u4e22\u5931\uff0c\u73b0\u5728\u4f1a\u53d6\u6d88\u8be5\u67e5\u8be2\uff0c\u800c\u4e0d\u662f\u8bd5\u56fe\u5b8c\u6210\u5b83\u3002\n     </p>", "text": "\u5f53\u5ba2\u6237\u7aef\u65ad\u5f00\u8fde\u63a5\u65f6\u53d6\u6d88\u6b63\u5728\u8fd0\u884c\u7684\u67e5\u8be2\uff08Florian Pflug\uff09 \u5982\u679c\u540e\u7aef\u5728\u67e5\u8be2\u671f\u95f4\u68c0\u6d4b\u5230\u5ba2\u6237\u7aef\u8fde\u63a5\u4e22\u5931\uff0c\u73b0\u5728\u4f1a\u53d6\u6d88\u8be5\u67e5\u8be2\uff0c\u800c\u4e0d\u662f\u8bd5\u56fe\u5b8c\u6210\u5b83\u3002", "title": "\u5f53\u5ba2\u6237\u7aef\u65ad\u5f00\u8fde\u63a5\u65f6\u53d6\u6d88\u6b63\u5728\u8fd0\u884c\u7684\u67e5\u8be2", "commits": [], "section": "\u67e5\u8be2", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "390b21b60cd07168e01595d2357e6f1bedcf19428ccfbf33bd04fc3fb2fad3fb", "section_path": ["\u67e5\u8be2"], "commit_groups": [], "identity_text": "Cancel the running query if the client gets disconnected (Florian Pflug) If the backend detects loss of client connection during a query, it will now cancel the query rather than attempting to finish it.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/065", "db_id": "5e2050bd104f37df5d2bf0054dd6eddd", "patch_ids": [], "statement_hash": "f6f7aeb6a23e3f6d59e4059938864507d307439a3baad6be0729d92f4451fe50", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c6d1b42a44f88d0c", "migration": false}, {"id": "9.2.0-9219f553f4d1bffd", "cves": [], "html": "<p>      \u5728\u8fd0\u884c\u65f6\u4e3a\u884c\u8868\u8fbe\u5f0f\u4fdd\u7559\u5217\u540d\uff08Andrew Dunstan\u3001Tom Lane\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u5141\u8bb8\u5728\u884c\u503c\u8f6c\u6362\u4e3a <code>hstore</code> \u6216 <code>json</code> \u7c7b\u578b\u65f6\u83b7\u5f97\u66f4\u597d\u7684\u7ed3\u679c\uff1a\u7ed3\u679c\u503c\u7684\u5b57\u6bb5\u73b0\u5728\u4f1a\u5177\u6709\u9884\u671f\u7684\u540d\u79f0\u3002\n     </p>", "text": "\u5728\u8fd0\u884c\u65f6\u4e3a\u884c\u8868\u8fbe\u5f0f\u4fdd\u7559\u5217\u540d\uff08Andrew Dunstan\u3001Tom Lane\uff09 \u6b64\u53d8\u66f4\u5141\u8bb8\u5728\u884c\u503c\u8f6c\u6362\u4e3a hstore \u6216 json \u7c7b\u578b\u65f6\u83b7\u5f97\u66f4\u597d\u7684\u7ed3\u679c\uff1a\u7ed3\u679c\u503c\u7684\u5b57\u6bb5\u73b0\u5728\u4f1a\u5177\u6709\u9884\u671f\u7684\u540d\u79f0\u3002", "title": "\u5728\u8fd0\u884c\u65f6\u4e3a\u884c\u8868\u8fbe\u5f0f\u4fdd\u7559\u5217\u540d", "commits": [], "section": "\u67e5\u8be2", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "f495bb7f74871bd7a643e5e5355a136e49c6627d3473c8b0ebf4736bfc6988fc", "section_path": ["\u67e5\u8be2"], "commit_groups": [], "identity_text": "Retain column names at run time for row expressions (Andrew Dunstan, Tom Lane) This change allows better results when a row value is converted to hstore or json type: the fields of the resulting value will now have the expected names.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/066", "db_id": "aa9924c84ab938b4607b1c52c57d10fc", "patch_ids": [], "statement_hash": "602f2ff5813b3ff412ac597d16b4149872b51b050ba0f1a66722b12b7c1fe4f6", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-9219f553f4d1bffd", "migration": false}, {"id": "9.2.0-af11f76347727645", "cves": [], "html": "<p>      \u6539\u8fdb\u5b50 <code>SELECT</code> \u7ed3\u679c\u6240\u7528\u7684\u5217\u6807\u7b7e\uff08Marti Raudsepp\uff09\n     </p><p>      \u6b64\u524d\u4f7f\u7528\u7684\u662f\u901a\u7528\u6807\u7b7e <code>?column?</code>\u3002\n     </p>", "text": "\u6539\u8fdb\u5b50 SELECT \u7ed3\u679c\u6240\u7528\u7684\u5217\u6807\u7b7e\uff08Marti Raudsepp\uff09 \u6b64\u524d\u4f7f\u7528\u7684\u662f\u901a\u7528\u6807\u7b7e ?column?\u3002", "title": "\u6539\u8fdb\u5b50 SELECT \u7ed3\u679c\u6240\u7528\u7684\u5217\u6807\u7b7e", "commits": [], "section": "\u67e5\u8be2", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "136ce39e9713d4ce9daf148b58082f9e0c9d12a0f6fab4726faa524fcd49c36d", "section_path": ["\u67e5\u8be2"], "commit_groups": [], "identity_text": "Improve column labels used for sub-SELECT results (Marti Raudsepp) Previously, the generic label ?column? was used.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/067", "db_id": "93f4f89c6aff5d04c825207c879be847", "patch_ids": [], "statement_hash": "49ec44391ae6bbf8c8421f5512b96ecb4959cf3ab05cc165c8b39993dc805f99", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-af11f76347727645", "migration": false}, {"id": "9.2.0-da5bb0df6d3a7890", "cves": [], "html": "<p>      \u6539\u8fdb\u786e\u5b9a\u672a\u77e5\u503c\u7c7b\u578b\u7684\u542f\u53d1\u5f0f\u89c4\u5219\uff08Tom Lane\uff09\n     </p><p>      \"\u672a\u77e5\u5e38\u91cf\u53ef\u4ee5\u4e0e\u4f7f\u7528\u5b83\u7684\u64cd\u4f5c\u7b26\u53e6\u4e00\u4fa7\u7684\u503c\u5177\u6709\u76f8\u540c\u7c7b\u578b\"\u8fd9\u4e00\u957f\u671f\u89c4\u5219\uff0c\u73b0\u5728\u5728\u8003\u8651\u591a\u6001\u64cd\u4f5c\u7b26\u65f6\u4e5f\u4f1a\u5e94\u7528\uff0c\u800c\u4e0d\u4ec5\u7528\u4e8e\u7b80\u5355\u7684\u64cd\u4f5c\u7b26\u5339\u914d\u3002\n     </p>", "text": "\u6539\u8fdb\u786e\u5b9a\u672a\u77e5\u503c\u7c7b\u578b\u7684\u542f\u53d1\u5f0f\u89c4\u5219\uff08Tom Lane\uff09 \"\u672a\u77e5\u5e38\u91cf\u53ef\u4ee5\u4e0e\u4f7f\u7528\u5b83\u7684\u64cd\u4f5c\u7b26\u53e6\u4e00\u4fa7\u7684\u503c\u5177\u6709\u76f8\u540c\u7c7b\u578b\"\u8fd9\u4e00\u957f\u671f\u89c4\u5219\uff0c\u73b0\u5728\u5728\u8003\u8651\u591a\u6001\u64cd\u4f5c\u7b26\u65f6\u4e5f\u4f1a\u5e94\u7528\uff0c\u800c\u4e0d\u4ec5\u7528\u4e8e\u7b80\u5355\u7684\u64cd\u4f5c\u7b26\u5339\u914d\u3002", "title": "\u6539\u8fdb\u786e\u5b9a\u672a\u77e5\u503c\u7c7b\u578b\u7684\u542f\u53d1\u5f0f\u89c4\u5219", "commits": [], "section": "\u67e5\u8be2", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "a85686815ebe9b50e3d5a4132c719fd4b4450ae2f6c799c80e233ea4936b9c07", "section_path": ["\u67e5\u8be2"], "commit_groups": [], "identity_text": "Improve heuristics for determining the types of unknown values (Tom Lane) The longstanding rule that an unknown constant might have the same type as the value on the other side of the operator using it is now applied when considering polymorphic operators, not only for simple operator matches.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/068", "db_id": "e8da33c3d34fa91fbf89a237d59cd666", "patch_ids": [], "statement_hash": "ad4ce5597ef7c136813b58f9db93ca152701e4748b4cf686f62b8a947061df43", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-da5bb0df6d3a7890", "migration": false}, {"id": "9.2.0-2f56d16bcd6be0f7", "cves": [], "html": "<p>      \u5bf9\u521b\u5efa\u5230\u57df\u7c7b\u578b\u6216\u4ece\u57df\u7c7b\u578b\u51fa\u53d1\u7684\u8f6c\u6362\u53d1\u51fa\u8b66\u544a\uff08Robert Haas\uff09\n     </p><p>      \u8fd9\u7c7b\u8f6c\u6362\u6ca1\u6709\u4efb\u4f55\u6548\u679c\u3002\n     </p>", "text": "\u5bf9\u521b\u5efa\u5230\u57df\u7c7b\u578b\u6216\u4ece\u57df\u7c7b\u578b\u51fa\u53d1\u7684\u8f6c\u6362\u53d1\u51fa\u8b66\u544a\uff08Robert Haas\uff09 \u8fd9\u7c7b\u8f6c\u6362\u6ca1\u6709\u4efb\u4f55\u6548\u679c\u3002", "title": "\u5bf9\u521b\u5efa\u5230\u57df\u7c7b\u578b\u6216\u4ece\u57df\u7c7b\u578b\u51fa\u53d1\u7684\u8f6c\u6362\u53d1\u51fa\u8b66\u544a", "commits": [], "section": "\u67e5\u8be2", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "a1fa424de4c37ad2bf7d3e2ec27029f13dc0c31a7df26bc815269ece77958940", "section_path": ["\u67e5\u8be2"], "commit_groups": [], "identity_text": "Warn about creating casts to or from domain types (Robert Haas) Such casts have no effect.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/069", "db_id": "eb07471df5cd5fa582cdd1a4a77a97e3", "patch_ids": [], "statement_hash": "9a496418c77dd0c7b3fea817200d11e79652fbeb20b58bfe18322e42d46019c6", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-2f56d16bcd6be0f7", "migration": false}, {"id": "9.2.0-19fc3ef5df93c509", "cves": [], "html": "<p>      \u5f53\u884c\u8fdd\u53cd <code>CHECK</code> \u6216 <code>NOT NULL</code> \u7ea6\u675f\u65f6\uff0c\u628a\u884c\u7684\u5185\u5bb9\u663e\u793a\u4e3a\u9519\u8bef\u7ec6\u8282\uff08Jan Kundr\u00e1t\uff09\n     </p><p>      \u5f53\u63d2\u5165\u6216\u66f4\u65b0\u6b63\u5728\u5904\u7406\u8bb8\u591a\u884c\u65f6\uff0c\u8fd9\u5e94\u80fd\u66f4\u5bb9\u6613\u8bc6\u522b\u54ea\u4e00\u884c\u6709\u95ee\u9898\u3002\n     </p>", "text": "\u5f53\u884c\u8fdd\u53cd CHECK \u6216 NOT NULL \u7ea6\u675f\u65f6\uff0c\u628a\u884c\u7684\u5185\u5bb9\u663e\u793a\u4e3a\u9519\u8bef\u7ec6\u8282\uff08Jan Kundr\u00e1t\uff09 \u5f53\u63d2\u5165\u6216\u66f4\u65b0\u6b63\u5728\u5904\u7406\u8bb8\u591a\u884c\u65f6\uff0c\u8fd9\u5e94\u80fd\u66f4\u5bb9\u6613\u8bc6\u522b\u54ea\u4e00\u884c\u6709\u95ee\u9898\u3002", "title": "\u5f53\u884c\u8fdd\u53cd CHECK \u6216 NOT NULL \u7ea6\u675f\u65f6\uff0c\u628a\u884c\u7684\u5185\u5bb9\u663e\u793a\u4e3a\u9519\u8bef\u7ec6\u8282", "commits": [], "section": "\u67e5\u8be2", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "71440e38d684cf89b1b7f1b8cfff27340439925bd95976f8a461e658678a673d", "section_path": ["\u67e5\u8be2"], "commit_groups": [], "identity_text": "When a row fails a CHECK or NOT NULL constraint, show the row's contents as error detail (Jan Kundr\u00e1t) This should make it easier to identify which row is problematic when an insert or update is processing many rows.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/070", "db_id": "0c7127330465af9e6d85f7dfd2dfab38", "patch_ids": [], "statement_hash": "118109cf4d7be049548383b549d1d34d226d774f4c1ba3ee920c5839491852dd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-19fc3ef5df93c509", "migration": false}, {"id": "9.2.0-650e93ab93cff914", "cves": [], "html": "<p>      \u63d0\u4f9b\u5e76\u53d1 <acronym>DDL</acronym> \u671f\u95f4\u66f4\u53ef\u9760\u7684\u64cd\u4f5c\uff08Robert Haas\u3001Noah Misch\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u589e\u52a0\u4e86\u9501\u5b9a\uff0c\u5e94\u80fd\u6d88\u9664\u8bb8\u591a\u573a\u666f\u4e0b\u7684<span>\u201c<span>cache lookup failed</span>\u201d</span>\u9519\u8bef\u3002\u6b64\u5916\uff0c\u4e5f\u4e0d\u518d\u53ef\u80fd\u5411\u6b63\u88ab\u5e76\u53d1\u5220\u9664\u7684\u6a21\u5f0f\u6dfb\u52a0\u5173\u7cfb\u2014\u2014\u8fd9\u79cd\u573a\u666f\u4ee5\u524d\u4f1a\u5bfc\u81f4\u7cfb\u7edf\u76ee\u5f55\u5185\u5bb9\u4e0d\u4e00\u81f4\u3002\n     </p>", "text": "\u63d0\u4f9b\u5e76\u53d1 DDL \u671f\u95f4\u66f4\u53ef\u9760\u7684\u64cd\u4f5c\uff08Robert Haas\u3001Noah Misch\uff09 \u6b64\u53d8\u66f4\u589e\u52a0\u4e86\u9501\u5b9a\uff0c\u5e94\u80fd\u6d88\u9664\u8bb8\u591a\u573a\u666f\u4e0b\u7684\u201ccache lookup failed\u201d\u9519\u8bef\u3002\u6b64\u5916\uff0c\u4e5f\u4e0d\u518d\u53ef\u80fd\u5411\u6b63\u88ab\u5e76\u53d1\u5220\u9664\u7684\u6a21\u5f0f\u6dfb\u52a0\u5173\u7cfb\u2014\u2014\u8fd9\u79cd\u573a\u666f\u4ee5\u524d\u4f1a\u5bfc\u81f4\u7cfb\u7edf\u76ee\u5f55\u5185\u5bb9\u4e0d\u4e00\u81f4\u3002", "title": "\u63d0\u4f9b\u5e76\u53d1 DDL \u671f\u95f4\u66f4\u53ef\u9760\u7684\u64cd\u4f5c", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "65a755fd54c386179f90ae0b86736e3a059985a4e9bfe9516c7f99201c7eb9fd", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Provide more reliable operation during concurrent DDL (Robert Haas, Noah Misch) This change adds locking that should eliminate cache lookup failed errors in many scenarios. Also, it is no longer possible to add relations to a schema that is being concurrently dropped, a scenario that formerly led to inconsistent system catalog contents.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/071", "db_id": "23e6f379895498b46cd89d458ce186f3", "patch_ids": [], "statement_hash": "af09d8658abdacd2f06fe02edb12329bf8164289e5b88d24e5d349d2af390af9", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-650e93ab93cff914", "migration": false}, {"id": "9.2.0-dbbece126ac3ef0d", "cves": [], "html": "<p>      \u4e3a <a href=\"/docs/9.2/sql-dropindex.html\" title=\"DROP INDEX\"><code>DROP INDEX</code></a> \u65b0\u589e <code>CONCURRENTLY</code> \u9009\u9879\uff08Simon Riggs\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u5728\u4e0d\u963b\u585e\u5176\u4ed6\u4f1a\u8bdd\u7684\u60c5\u51b5\u4e0b\u79fb\u9664\u7d22\u5f15\u3002\n     </p>", "text": "\u4e3a DROP INDEX \u65b0\u589e CONCURRENTLY \u9009\u9879\uff08Simon Riggs\uff09 \u8fd9\u5141\u8bb8\u5728\u4e0d\u963b\u585e\u5176\u4ed6\u4f1a\u8bdd\u7684\u60c5\u51b5\u4e0b\u79fb\u9664\u7d22\u5f15\u3002", "title": "\u4e3a DROP INDEX \u65b0\u589e CONCURRENTLY \u9009\u9879", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "1fe5c821f26676ed94bec362df3ba6f22e5326034a1a96273c2a36d086cffcb3", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Add CONCURRENTLY option to DROP INDEX (Simon Riggs) This allows index removal without blocking other sessions.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/072", "db_id": "a4616a3a780e5640372e57fdfdf8e246", "patch_ids": [], "statement_hash": "4e923cf95e7c9cc144680d30b953dec34b0109cf99154e4d49c7cd60d24249bd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-dbbece126ac3ef0d", "migration": false}, {"id": "9.2.0-d7bcd65da4f43c76", "cves": [], "html": "<p>      \u5141\u8bb8\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u5177\u6709\u9010\u5217\u9009\u9879\uff08Shigeru Hanada\uff09\n     </p>", "text": "\u5141\u8bb8\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u5177\u6709\u9010\u5217\u9009\u9879\uff08Shigeru Hanada\uff09", "title": "\u5141\u8bb8\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u5177\u6709\u9010\u5217\u9009\u9879", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "bceee72239a93cf482a3547cdb87f0d1cf272dff7403b51edb490d0a1060d9c8", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Allow foreign data wrappers to have per-column options (Shigeru Hanada)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/073", "db_id": "b790b16beb94c0a21bf26901a5baa65a", "patch_ids": [], "statement_hash": "3155d193e543d3daa9eae64d57adb6d464794739e5819fedb75ff98818fbf2e9", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d7bcd65da4f43c76", "migration": false}, {"id": "9.2.0-4baf21bb22ec2855", "cves": [], "html": "<p>      \u6539\u8fdb\u89c6\u56fe\u5b9a\u4e49\u7684\u6f02\u4eae\u6253\u5370\uff08Andrew Dunstan\uff09\n     </p>", "text": "\u6539\u8fdb\u89c6\u56fe\u5b9a\u4e49\u7684\u6f02\u4eae\u6253\u5370\uff08Andrew Dunstan\uff09", "title": "\u6539\u8fdb\u89c6\u56fe\u5b9a\u4e49\u7684\u6f02\u4eae\u6253\u5370", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "59a191c428435bf6e013f714cdf2035c7e80dcb8c87830ffa1d284154c44cded", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Improve pretty-printing of view definitions (Andrew Dunstan)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/074", "db_id": "81b114f6826d287ec01546a56e780701", "patch_ids": [], "statement_hash": "613424a1f671228fdbeebc80bcc51533946745ffe6fe05a0c20689411d2a4867", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4baf21bb22ec2855", "migration": false}, {"id": "9.2.0-ebf6de6534e034f5", "cves": [], "html": "<p>      \u5141\u8bb8 <a href=\"/docs/9.2/ddl-constraints.html\" title=\"5.3.\u00a0\u7ea6\u675f\"><code>CHECK</code></a> \u7ea6\u675f\u58f0\u660e\u4e3a <code>NOT VALID</code>\uff08\u00c1lvaro Herrera\uff09\n     </p><p>      \u6dfb\u52a0 <code>NOT VALID</code> \u7ea6\u675f\u4e0d\u4f1a\u5bfc\u81f4\u626b\u63cf\u8868\u4ee5\u9a8c\u8bc1\u73b0\u6709\u884c\u6ee1\u8db3\u7ea6\u675f\u3002\u4e4b\u540e\uff0c\u65b0\u6dfb\u52a0\u6216\u66f4\u65b0\u7684\u884c\u4f1a\u88ab\u68c0\u67e5\u3002\u89c4\u5212\u5668\u5728\u8003\u8651 <code>constraint_exclusion</code> \u65f6\u4f1a\u5ffd\u7565\u8fd9\u7c7b\u7ea6\u675f\uff0c\u56e0\u4e3a\u4e0d\u80fd\u786e\u5b9a\u6240\u6709\u884c\u90fd\u6ee1\u8db3\u7ea6\u675f\u3002\n     </p><p>      \u65b0\u7684 <code>ALTER TABLE VALIDATE</code> \u547d\u4ee4\u5141\u8bb8\u5bf9\u73b0\u6709\u884c\u68c0\u67e5 <code>NOT VALID</code> \u7ea6\u675f\uff0c\u4e4b\u540e\u5b83\u4eec\u88ab\u8f6c\u6362\u4e3a\u666e\u901a\u7ea6\u675f\u3002\n     </p>", "text": "\u5141\u8bb8 CHECK \u7ea6\u675f\u58f0\u660e\u4e3a NOT VALID\uff08\u00c1lvaro Herrera\uff09 \u6dfb\u52a0 NOT VALID \u7ea6\u675f\u4e0d\u4f1a\u5bfc\u81f4\u626b\u63cf\u8868\u4ee5\u9a8c\u8bc1\u73b0\u6709\u884c\u6ee1\u8db3\u7ea6\u675f\u3002\u4e4b\u540e\uff0c\u65b0\u6dfb\u52a0\u6216\u66f4\u65b0\u7684\u884c\u4f1a\u88ab\u68c0\u67e5\u3002\u89c4\u5212\u5668\u5728\u8003\u8651 constraint_exclusion \u65f6\u4f1a\u5ffd\u7565\u8fd9\u7c7b\u7ea6\u675f\uff0c\u56e0\u4e3a\u4e0d\u80fd\u786e\u5b9a\u6240\u6709\u884c\u90fd\u6ee1\u8db3\u7ea6\u675f\u3002 \u65b0\u7684 ALTER TABLE VALIDATE \u547d\u4ee4\u5141\u8bb8\u5bf9\u73b0\u6709\u884c\u68c0\u67e5 NOT VALID \u7ea6\u675f\uff0c\u4e4b\u540e\u5b83\u4eec\u88ab\u8f6c\u6362\u4e3a\u666e\u901a\u7ea6\u675f\u3002", "title": "\u5141\u8bb8 CHECK \u7ea6\u675f\u58f0\u660e\u4e3a NOT VALID", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / \u7ea6\u675f", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.3", "source_hash": "2b9d3bbb4cd207d02d8e7743e00dc5b25b56155f758065f36c49fd4b7cff388d", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "\u7ea6\u675f"], "commit_groups": [], "identity_text": "Allow CHECK constraints to be declared NOT VALID (\u00c1lvaro Herrera) Adding a NOT VALID constraint does not cause the table to be scanned to verify that existing rows meet the constraint. Subsequently, newly added or updated rows are checked. Such constraints are ignored by the planner when considering constraint_exclusion, since it is not certain that all rows meet the constraint. The new ALTER TABLE VALIDATE command allows NOT VALID constraints to be checked for existing rows, after which they are converted into ordinary constraints.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/075", "db_id": "a78a758fa54c3b5a15040982db3a4d4f", "patch_ids": [], "statement_hash": "fb57750a8f7d1a3a311b66ab3e3baaeb54b82db1907fa0f2688e36d08d712dc7", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-ebf6de6534e034f5", "migration": false}, {"id": "9.2.0-0be1f08f9bacf3f8", "cves": [], "html": "<p>      \u5141\u8bb8 <code>CHECK</code> \u7ea6\u675f\u58f0\u660e\u4e3a <code>NO INHERIT</code>\uff08Nikhil Sontakke\u3001Alex Hunsaker\u3001\u00c1lvaro Herrera\uff09\n     </p><p>      \u8fd9\u4f7f\u5b83\u4eec\u53ea\u5728\u7236\u8868\u4e0a\u5f3a\u5236\u6267\u884c\uff0c\u800c\u4e0d\u5728\u5b50\u8868\u4e0a\u3002\n     </p>", "text": "\u5141\u8bb8 CHECK \u7ea6\u675f\u58f0\u660e\u4e3a NO INHERIT\uff08Nikhil Sontakke\u3001Alex Hunsaker\u3001\u00c1lvaro Herrera\uff09 \u8fd9\u4f7f\u5b83\u4eec\u53ea\u5728\u7236\u8868\u4e0a\u5f3a\u5236\u6267\u884c\uff0c\u800c\u4e0d\u5728\u5b50\u8868\u4e0a\u3002", "title": "\u5141\u8bb8 CHECK \u7ea6\u675f\u58f0\u660e\u4e3a NO INHERIT", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / \u7ea6\u675f", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.3", "source_hash": "33fbbb1181c0cc9aba7ba6d524e453fbc176b978da6058e3f2c03efe5b60ae0b", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "\u7ea6\u675f"], "commit_groups": [], "identity_text": "Allow CHECK constraints to be declared NO INHERIT (Nikhil Sontakke, Alex Hunsaker, \u00c1lvaro Herrera) This makes them enforceable only on the parent table, not on child tables.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/076", "db_id": "adb6790e0f6ea272464bcb9494d9bab1", "patch_ids": [], "statement_hash": "6d1af361d809f9761ad4220bec0f1851847266c48bd38ff568ebb97f26262dc2", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-0be1f08f9bacf3f8", "migration": false}, {"id": "9.2.0-e03daecdef5507f8", "cves": [], "html": "<p>      \u65b0\u589e<a href=\"/docs/9.2/sql-altertable.html\" title=\"ALTER TABLE\">\u91cd\u547d\u540d</a>\u7ea6\u675f\u7684\u80fd\u529b\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u65b0\u589e\u91cd\u547d\u540d\u7ea6\u675f\u7684\u80fd\u529b\uff08Peter Eisentraut\uff09", "title": "\u65b0\u589e\u91cd\u547d\u540d\u7ea6\u675f\u7684\u80fd\u529b", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / \u7ea6\u675f", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.3", "source_hash": "c50c32433b292d9d71dfd493f6cb89da8247d9b9a2e1e9f91f226c3f812df7f8", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "\u7ea6\u675f"], "commit_groups": [], "identity_text": "Add the ability to rename constraints (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/077", "db_id": "e9fc5728db5dfe05a91d2d090e67f197", "patch_ids": [], "statement_hash": "474534866117f9506ab353f61fe56e5c3ba2f60b2300a1cf4d119fcfdab32320", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e03daecdef5507f8", "migration": false}, {"id": "9.2.0-b7bb4048e1dc2880", "cves": [], "html": "<p>      \u51cf\u5c11\u67d0\u4e9b <a href=\"/docs/9.2/sql-altertable.html\" title=\"ALTER TABLE\"><code>ALTER TABLE</code></a> ... <code>ALTER COLUMN TYPE</code> \u64cd\u4f5c\u91cd\u5efa\u8868\u548c\u7d22\u5f15\u7684\u9700\u8981\uff08Noah Misch\uff09\n     </p><p>      \u589e\u5927 <code>varchar</code> \u6216 <code>varbit</code> \u5217\u7684\u957f\u5ea6\u9650\u5236\uff0c\u6216\u8005\u5b8c\u5168\u79fb\u9664\u9650\u5236\uff0c\u4e0d\u518d\u9700\u8981\u91cd\u5199\u8868\u3002\u7c7b\u4f3c\u5730\uff0c\u589e\u5927 <code>numeric</code> \u5217\u5141\u8bb8\u7684\u7cbe\u5ea6\uff0c\u6216\u8005\u628a\u5217\u4ece\u53d7\u7ea6\u675f\u7684 <code>numeric</code> \u6539\u4e3a\u4e0d\u53d7\u7ea6\u675f\u7684 <code>numeric</code>\uff0c\u4e5f\u4e0d\u518d\u9700\u8981\u91cd\u5199\u8868\u3002\u5728\u6d89\u53ca <code>interval</code>\u3001<code>timestamp</code> \u548c <code>timestamptz</code> \u7c7b\u578b\u7684\u7c7b\u4f3c\u60c5\u51b5\u4e0b\uff0c\u4e5f\u53ef\u4ee5\u907f\u514d\u91cd\u5199\u8868\u3002\n     </p>", "text": "\u51cf\u5c11\u67d0\u4e9b ALTER TABLE ... ALTER COLUMN TYPE \u64cd\u4f5c\u91cd\u5efa\u8868\u548c\u7d22\u5f15\u7684\u9700\u8981\uff08Noah Misch\uff09 \u589e\u5927 varchar \u6216 varbit \u5217\u7684\u957f\u5ea6\u9650\u5236\uff0c\u6216\u8005\u5b8c\u5168\u79fb\u9664\u9650\u5236\uff0c\u4e0d\u518d\u9700\u8981\u91cd\u5199\u8868\u3002\u7c7b\u4f3c\u5730\uff0c\u589e\u5927 numeric \u5217\u5141\u8bb8\u7684\u7cbe\u5ea6\uff0c\u6216\u8005\u628a\u5217\u4ece\u53d7\u7ea6\u675f\u7684 numeric \u6539\u4e3a\u4e0d\u53d7\u7ea6\u675f\u7684 numeric\uff0c\u4e5f\u4e0d\u518d\u9700\u8981\u91cd\u5199\u8868\u3002\u5728\u6d89\u53ca interval\u3001timestamp \u548c timestamptz \u7c7b\u578b\u7684\u7c7b\u4f3c\u60c5\u51b5\u4e0b\uff0c\u4e5f\u53ef\u4ee5\u907f\u514d\u91cd\u5199\u8868\u3002", "title": "\u51cf\u5c11\u67d0\u4e9b ALTER TABLE ... ALTER COLUMN TYPE \u64cd\u4f5c\u91cd\u5efa\u8868\u548c\u7d22\u5f15\u7684\u9700\u8981", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "48b46dcfb61a0f4396259cb5b74ef7117bed13462539e00d46ed3fa5b7e4b6ae", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "ALTER"], "commit_groups": [], "identity_text": "Reduce need to rebuild tables and indexes for certain ALTER TABLE ... ALTER COLUMN TYPE operations (Noah Misch) Increasing the length limit for a varchar or varbit column, or removing the limit altogether, no longer requires a table rewrite. Similarly, increasing the allowable precision of a numeric column, or changing a column from constrained numeric to unconstrained numeric, no longer requires a table rewrite. Table rewrites are also avoided in similar cases involving the interval, timestamp, and timestamptz types.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/078", "db_id": "b629652c29121a6263e184ebb1f82318", "patch_ids": [], "statement_hash": "54758e4a62e5a66776fbd84ea776168a09e883e963cb9a44daca317eaca98c50", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-b7bb4048e1dc2880", "migration": false}, {"id": "9.2.0-265d1790500dcb32", "cves": [], "html": "<p>      \u907f\u514d <a href=\"/docs/9.2/sql-altertable.html\" title=\"ALTER TABLE\"><code>ALTER TABLE</code></a> \u5728\u67d0\u4e9b\u4e0d\u5fc5\u8981\u7684\u60c5\u51b5\u4e0b\u91cd\u65b0\u9a8c\u8bc1\u5916\u952e\u7ea6\u675f\uff08Noah Misch\uff09\n     </p>", "text": "\u907f\u514d ALTER TABLE \u5728\u67d0\u4e9b\u4e0d\u5fc5\u8981\u7684\u60c5\u51b5\u4e0b\u91cd\u65b0\u9a8c\u8bc1\u5916\u952e\u7ea6\u675f\uff08Noah Misch\uff09", "title": "\u907f\u514d ALTER TABLE \u5728\u67d0\u4e9b\u4e0d\u5fc5\u8981\u7684\u60c5\u51b5\u4e0b\u91cd\u65b0\u9a8c\u8bc1\u5916\u952e\u7ea6\u675f", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "620e8421763ed2cb1099c817f9e4ded1bb96b7ff5372a8bb65098b0a13454261", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "ALTER"], "commit_groups": [], "identity_text": "Avoid having ALTER TABLE revalidate foreign key constraints in some cases where it is not necessary (Noah Misch)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/079", "db_id": "d6efaf76be3e6aa31068c7caa9a784c0", "patch_ids": [], "statement_hash": "952d8b99f1b045292f1c60dde22e6bee39ded608d94e63fed0764fbcadf57b85", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-265d1790500dcb32", "migration": false}, {"id": "9.2.0-4d0f031c1877956d", "cves": [], "html": "<p>      \u4e3a\u4e00\u4e9b <code>ALTER</code> \u547d\u4ee4\u65b0\u589e <code>IF EXISTS</code> \u9009\u9879\uff08Pavel Stehule\uff09\n     </p><p>      \u4f8b\u5982 <code>ALTER FOREIGN TABLE IF EXISTS foo RENAME TO bar</code>\u3002\n     </p>", "text": "\u4e3a\u4e00\u4e9b ALTER \u547d\u4ee4\u65b0\u589e IF EXISTS \u9009\u9879\uff08Pavel Stehule\uff09 \u4f8b\u5982 ALTER FOREIGN TABLE IF EXISTS foo RENAME TO bar\u3002", "title": "\u4e3a\u4e00\u4e9b ALTER \u547d\u4ee4\u65b0\u589e IF EXISTS \u9009\u9879", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "d54cac133027e7e924e19649646b78da4f4496bbefcb3e724a82344f5698eb61", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "ALTER"], "commit_groups": [], "identity_text": "Add IF EXISTS options to some ALTER commands (Pavel Stehule) For example, ALTER FOREIGN TABLE IF EXISTS foo RENAME TO bar.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/080", "db_id": "efde5eaa7a6e6175b91245c8c5de3c79", "patch_ids": [], "statement_hash": "f61c4e888264ad140f08db72c80b6e32a72057a3c3528f24a68e40a7a694339e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4d0f031c1877956d", "migration": false}, {"id": "9.2.0-138d74a05e5ee8f8", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/sql-alterforeigndatawrapper.html\" title=\"ALTER FOREIGN DATA WRAPPER\"><code>ALTER FOREIGN DATA WRAPPER</code></a> ... <code>RENAME</code> \u548c <a href=\"/docs/9.2/sql-alterserver.html\" title=\"ALTER SERVER\"><code>ALTER SERVER</code></a> ... <code>RENAME</code>\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u65b0\u589e ALTER FOREIGN DATA WRAPPER ... RENAME \u548c ALTER SERVER ... RENAME\uff08Peter Eisentraut\uff09", "title": "\u65b0\u589e ALTER FOREIGN DATA WRAPPER ... RENAME \u548c ALTER SERVER ... RENAME", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "b5d9df70e7667b18889eb34a0cabf799b2dd4aa3cc893b5878f01c2890a92f5f", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "ALTER"], "commit_groups": [], "identity_text": "Add ALTER FOREIGN DATA WRAPPER ... RENAME and ALTER SERVER ... RENAME (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/081", "db_id": "133cfe0d2dff219f8242e0f5ad8290ba", "patch_ids": [], "statement_hash": "9bbf0b2c0190d7bbee830193eaaa60d28a89d41ae50e865f32352ca6cd17e503", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-138d74a05e5ee8f8", "migration": false}, {"id": "9.2.0-c530762485a9aa30", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/sql-alterdomain.html\" title=\"ALTER DOMAIN\"><code>ALTER DOMAIN</code></a> ... <code>RENAME</code>\uff08Peter Eisentraut\uff09\n     </p><p>      \u6b64\u524d\u5df2\u53ef\u4ee5\u7528 <code>ALTER TYPE</code> \u91cd\u547d\u540d\u57df\u3002\n     </p>", "text": "\u65b0\u589e ALTER DOMAIN ... RENAME\uff08Peter Eisentraut\uff09 \u6b64\u524d\u5df2\u53ef\u4ee5\u7528 ALTER TYPE \u91cd\u547d\u540d\u57df\u3002", "title": "\u65b0\u589e ALTER DOMAIN ... RENAME", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "e1cb675efaf59a1d12edce5463f2a9167291a7637f1f0f3adae6e99502e0c2f7", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "ALTER"], "commit_groups": [], "identity_text": "Add ALTER DOMAIN ... RENAME (Peter Eisentraut) You could already rename domains using ALTER TYPE.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/082", "db_id": "74f190226d857773d6091e01fec60da1", "patch_ids": [], "statement_hash": "edc3b2990de8a135d96e07cbcc568c3b0eaa9c5b2b3eb5982d41f2f66cdff5c0", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c530762485a9aa30", "migration": false}, {"id": "9.2.0-c3e6e05676553e0e", "cves": [], "html": "<p>      \u8ba9 <code>ALTER DOMAIN</code> ... <code>DROP CONSTRAINT</code> \u5728\u7ea6\u675f\u4e0d\u5b58\u5728\u65f6\u629b\u51fa\u9519\u8bef\uff08Peter Eisentraut\uff09\n     </p><p>      \u5df2\u65b0\u589e <code>IF EXISTS</code> \u9009\u9879\u6765\u63d0\u4f9b\u5148\u524d\u7684\u884c\u4e3a\u3002\n     </p>", "text": "\u8ba9 ALTER DOMAIN ... DROP CONSTRAINT \u5728\u7ea6\u675f\u4e0d\u5b58\u5728\u65f6\u629b\u51fa\u9519\u8bef\uff08Peter Eisentraut\uff09 \u5df2\u65b0\u589e IF EXISTS \u9009\u9879\u6765\u63d0\u4f9b\u5148\u524d\u7684\u884c\u4e3a\u3002", "title": "\u8ba9 ALTER DOMAIN ... DROP CONSTRAINT \u5728\u7ea6\u675f\u4e0d\u5b58\u5728\u65f6\u629b\u51fa\u9519\u8bef", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "4c8524925b7bd71467b4214b3597248ff873fc90f43e7712e15c9be6ad1c9790", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "ALTER"], "commit_groups": [], "identity_text": "Throw an error for ALTER DOMAIN ... DROP CONSTRAINT on a nonexistent constraint (Peter Eisentraut) An IF EXISTS option has been added to provide the previous behavior.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/083", "db_id": "1cf1705d860acc16219c7db5f5773bf4", "patch_ids": [], "statement_hash": "c0275745b4f275ab842b03d662715b3a71b2be8aa4c841c2705399ba711127a5", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c3e6e05676553e0e", "migration": false}, {"id": "9.2.0-2938964fd1f2aa29", "cves": [], "html": "<p>      \u5141\u8bb8\u4ece\u5916\u90e8\u8868\u3001\u89c6\u56fe\u548c\u7ec4\u5408\u7c7b\u578b\u6267\u884c <code>CREATE TABLE (LIKE ...)</code>\uff08Peter Eisentraut\uff09\n     </p><p>      \u4f8b\u5982\uff0c\u8fd9\u5141\u8bb8\u521b\u5efa\u4e00\u4e2a\u6a21\u5f0f\u4e0e\u67d0\u4e2a\u89c6\u56fe\u5339\u914d\u7684\u8868\u3002\n     </p>", "text": "\u5141\u8bb8\u4ece\u5916\u90e8\u8868\u3001\u89c6\u56fe\u548c\u7ec4\u5408\u7c7b\u578b\u6267\u884c CREATE TABLE (LIKE ...)\uff08Peter Eisentraut\uff09 \u4f8b\u5982\uff0c\u8fd9\u5141\u8bb8\u521b\u5efa\u4e00\u4e2a\u6a21\u5f0f\u4e0e\u67d0\u4e2a\u89c6\u56fe\u5339\u914d\u7684\u8868\u3002", "title": "\u5141\u8bb8\u4ece\u5916\u90e8\u8868\u3001\u89c6\u56fe\u548c\u7ec4\u5408\u7c7b\u578b\u6267\u884c CREATE TABLE (LIKE ...)", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / CREATE TABLE", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.5", "source_hash": "7d174c446aa603333f78ee81445a7ab3c17ff6d9da83441997723b09f5761581", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "CREATE TABLE"], "commit_groups": [], "identity_text": "Allow CREATE TABLE (LIKE ...) from foreign tables, views, and composite types (Peter Eisentraut) For example, this allows a table to be created whose schema matches a view.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/084", "db_id": "dcb3f4a103f830c1b0a3a5aff6c09483", "patch_ids": [], "statement_hash": "84e8ac0ffcfc3659b2ab62fb1dae2c0eab87f695fac103ab4e3a783c12cee69f", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-2938964fd1f2aa29", "migration": false}, {"id": "9.2.0-d879f5e036f01a3a", "cves": [], "html": "<p>      \u4fee\u590d <code>CREATE TABLE (LIKE ...)</code>\uff0c\u907f\u514d\u590d\u5236\u7d22\u5f15\u6ce8\u91ca\u65f6\u7684\u7d22\u5f15\u540d\u51b2\u7a81\uff08Tom Lane\uff09\n     </p>", "text": "\u4fee\u590d CREATE TABLE (LIKE ...)\uff0c\u907f\u514d\u590d\u5236\u7d22\u5f15\u6ce8\u91ca\u65f6\u7684\u7d22\u5f15\u540d\u51b2\u7a81\uff08Tom Lane\uff09", "title": "\u4fee\u590d CREATE TABLE (LIKE ...)\uff0c\u907f\u514d\u590d\u5236\u7d22\u5f15\u6ce8\u91ca\u65f6\u7684\u7d22\u5f15\u540d\u51b2\u7a81", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / CREATE TABLE", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.5", "source_hash": "49b37603986a2c209e70c2fffe28116e5c28e44e17578b14294e95325a13deb9", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "CREATE TABLE"], "commit_groups": [], "identity_text": "Fix CREATE TABLE (LIKE ...) to avoid index name conflicts when copying index comments (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/085", "db_id": "6d3c9d5a108f32e62c7ee4600f1e81e8", "patch_ids": [], "statement_hash": "f03186d6279d55faf52f68e0dfbdf1ffe6f6293336d361382b1123b9cd22c46f", "relations": [], "category_label": "BUG \u4fee\u590d", "url": "/docs/compare/?release=9.2.0#9.2.0-d879f5e036f01a3a", "migration": false}, {"id": "9.2.0-1cd0c68ffc76f237", "cves": [], "html": "<p>      \u4fee\u590d <code>CREATE TABLE</code> ... <code>AS EXECUTE</code>\uff0c\u4f7f\u5176\u5904\u7406 <code>WITH NO DATA</code> \u548c\u5217\u540d\u6307\u5b9a\uff08Tom Lane\uff09\n     </p>", "text": "\u4fee\u590d CREATE TABLE ... AS EXECUTE\uff0c\u4f7f\u5176\u5904\u7406 WITH NO DATA \u548c\u5217\u540d\u6307\u5b9a\uff08Tom Lane\uff09", "title": "\u4fee\u590d CREATE TABLE ... AS EXECUTE\uff0c\u4f7f\u5176\u5904\u7406 WITH NO DATA \u548c\u5217\u540d\u6307\u5b9a", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / CREATE TABLE", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.5", "source_hash": "20ccb2a9d5f874334ca32908b1b69bf7e5b61a7ee57108835f64103d461263b6", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "CREATE TABLE"], "commit_groups": [], "identity_text": "Fix CREATE TABLE ... AS EXECUTE to handle WITH NO DATA and column name specifications (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/086", "db_id": "61cbbf722fc1e2f316e1bfe8e2ee9311", "patch_ids": [], "statement_hash": "4c843d6e0d3174372c5734dc5504a3188cc81885c00ba7a999addf04e9abd10f", "relations": [], "category_label": "BUG \u4fee\u590d", "url": "/docs/compare/?release=9.2.0#9.2.0-1cd0c68ffc76f237", "migration": false}, {"id": "9.2.0-a96f8869a1e0678e", "cves": [], "html": "<p>      \u4e3a\u89c6\u56fe\u65b0\u589e <a href=\"/docs/9.2/sql-createview.html\" title=\"CREATE VIEW\"><code>security_barrier</code></a> \u9009\u9879\uff08KaiGai Kohei\u3001Robert Haas\uff09\n     </p><p>      \u6b64\u9009\u9879\u9632\u6b62\u53ef\u80fd\u5411\u7528\u6237\u66b4\u9732\u89c6\u56fe\u4fdd\u62a4\u6570\u636e\u7684\u4f18\u5316\uff0c\u4f8b\u5982\u628a\u6d89\u53ca\u4e0d\u5b89\u5168\u51fd\u6570\u7684\u5b50\u53e5\u4e0b\u63a8\u5230\u89c6\u56fe\u7684 <code>WHERE</code> \u5b50\u53e5\u3002\u8fd9\u7c7b\u89c6\u56fe\u7684\u6027\u80fd\u9884\u8ba1\u4f1a\u6bd4\u666e\u901a\u89c6\u56fe\u5dee\u3002\n     </p>", "text": "\u4e3a\u89c6\u56fe\u65b0\u589e security_barrier \u9009\u9879\uff08KaiGai Kohei\u3001Robert Haas\uff09 \u6b64\u9009\u9879\u9632\u6b62\u53ef\u80fd\u5411\u7528\u6237\u66b4\u9732\u89c6\u56fe\u4fdd\u62a4\u6570\u636e\u7684\u4f18\u5316\uff0c\u4f8b\u5982\u628a\u6d89\u53ca\u4e0d\u5b89\u5168\u51fd\u6570\u7684\u5b50\u53e5\u4e0b\u63a8\u5230\u89c6\u56fe\u7684 WHERE \u5b50\u53e5\u3002\u8fd9\u7c7b\u89c6\u56fe\u7684\u6027\u80fd\u9884\u8ba1\u4f1a\u6bd4\u666e\u901a\u89c6\u56fe\u5dee\u3002", "title": "\u4e3a\u89c6\u56fe\u65b0\u589e security_barrier \u9009\u9879", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / \u5bf9\u8c61\u6743\u9650", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "c5bcb59b943281697ceb795018db99db554f3dd183654f2195cbc428f70014b9", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "\u5bf9\u8c61\u6743\u9650"], "commit_groups": [], "identity_text": "Add a security_barrier option for views (KaiGai Kohei, Robert Haas) This option prevents optimizations that might allow view-protected data to be exposed to users, for example pushing a clause involving an insecure function into the WHERE clause of the view. Such views can be expected to perform more poorly than ordinary views.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/087", "db_id": "80fcbe3821785ddc4214bc7826756a9e", "patch_ids": [], "statement_hash": "5ef68b399f8eee067aa60ad77cd9ad481a1e9179b3cebd33083241c964b6fed9", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a96f8869a1e0678e", "migration": false}, {"id": "9.2.0-770fb98c1144eb78", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/sql-createfunction.html\" title=\"CREATE FUNCTION\"><code>LEAKPROOF</code></a> \u51fd\u6570\u5c5e\u6027\uff0c\u7528\u4e8e\u6807\u8bb0\u53ef\u4ee5\u5b89\u5168\u4e0b\u63a8\u5230 <code>security_barrier</code> \u89c6\u56fe\u7684\u51fd\u6570\uff08KaiGai Kohei\uff09\n     </p>", "text": "\u65b0\u589e LEAKPROOF \u51fd\u6570\u5c5e\u6027\uff0c\u7528\u4e8e\u6807\u8bb0\u53ef\u4ee5\u5b89\u5168\u4e0b\u63a8\u5230 security_barrier \u89c6\u56fe\u7684\u51fd\u6570\uff08KaiGai Kohei\uff09", "title": "\u65b0\u589e LEAKPROOF \u51fd\u6570\u5c5e\u6027\uff0c\u7528\u4e8e\u6807\u8bb0\u53ef\u4ee5\u5b89\u5168\u4e0b\u63a8\u5230 security_barrier \u89c6\u56fe\u7684\u51fd\u6570", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / \u5bf9\u8c61\u6743\u9650", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "53ed3fdf8071085ef696be21367a06fc44481144b95db494b2ba1760bcc712d0", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "\u5bf9\u8c61\u6743\u9650"], "commit_groups": [], "identity_text": "Add a new LEAKPROOF function attribute to mark functions that can safely be pushed down into security_barrier views (KaiGai Kohei)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/088", "db_id": "2b67deb0c19b2eb05de21f76241826c8", "patch_ids": [], "statement_hash": "f59d91b2401ea3d2df96589f186a25a0a1d8932e6d01ec9d9ffe9f3cf594bab8", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-770fb98c1144eb78", "migration": false}, {"id": "9.2.0-de1a73a1b70b289b", "cves": [], "html": "<p>      \u65b0\u589e\u5bf9\u6570\u636e\u7c7b\u578b\u6743\u9650\u7684\u652f\u6301\uff08Peter Eisentraut\uff09\n     </p><p>      \u8fd9\u65b0\u589e\u4e86\u5bf9\u7c7b\u578b\u548c\u57df\u4e0a\u7b26\u5408 <acronym>SQL</acronym> \u6807\u51c6\u7684 <code>USAGE</code> \u6743\u9650\u7684\u652f\u6301\u3002\u5176\u610f\u56fe\u662f\u80fd\u591f\u9650\u5236\u54ea\u4e9b\u7528\u6237\u53ef\u4ee5\u5728\u7c7b\u578b\u4e0a\u521b\u5efa\u4f9d\u8d56\uff0c\u56e0\u4e3a\u8fd9\u7c7b\u4f9d\u8d56\u4f1a\u9650\u5236\u6240\u6709\u8005\u66f4\u6539\u7c7b\u578b\u7684\u80fd\u529b\u3002\n     </p>", "text": "\u65b0\u589e\u5bf9\u6570\u636e\u7c7b\u578b\u6743\u9650\u7684\u652f\u6301\uff08Peter Eisentraut\uff09 \u8fd9\u65b0\u589e\u4e86\u5bf9\u7c7b\u578b\u548c\u57df\u4e0a\u7b26\u5408 SQL \u6807\u51c6\u7684 USAGE \u6743\u9650\u7684\u652f\u6301\u3002\u5176\u610f\u56fe\u662f\u80fd\u591f\u9650\u5236\u54ea\u4e9b\u7528\u6237\u53ef\u4ee5\u5728\u7c7b\u578b\u4e0a\u521b\u5efa\u4f9d\u8d56\uff0c\u56e0\u4e3a\u8fd9\u7c7b\u4f9d\u8d56\u4f1a\u9650\u5236\u6240\u6709\u8005\u66f4\u6539\u7c7b\u578b\u7684\u80fd\u529b\u3002", "title": "\u65b0\u589e\u5bf9\u6570\u636e\u7c7b\u578b\u6743\u9650\u7684\u652f\u6301", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / \u5bf9\u8c61\u6743\u9650", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "cb9d63648f12fa70e571d787681bcaa4e3fa182640820aa56857c45eaf1aefe8", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "\u5bf9\u8c61\u6743\u9650"], "commit_groups": [], "identity_text": "Add support for privileges on data types (Peter Eisentraut) This adds support for the SQL-conforming USAGE privilege on types and domains. The intent is to be able to restrict which users can create dependencies on types, since such dependencies limit the owner's ability to alter the type.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/089", "db_id": "61e3afd2e43f71dcd1126e50096ac872", "patch_ids": [], "statement_hash": "4970590ae12a01651d0ee1e215cd35fa127b68b98d22e50833c186fcecd2c9f6", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-de1a73a1b70b289b", "migration": false}, {"id": "9.2.0-15295e894fd566bd", "cves": [], "html": "<p>      \u5728 <code>SELECT INTO</code> / <code>CREATE TABLE AS</code> \u4e2d\u68c0\u67e5 <code>INSERT</code> \u6743\u9650\uff08KaiGai Kohei\uff09\n     </p><p>      \u7531\u4e8e\u5bf9\u8c61\u662f\u7531 <code>SELECT INTO</code> \u6216 <code>CREATE TABLE AS</code> \u521b\u5efa\u7684\uff0c\u521b\u5efa\u8005\u901a\u5e38\u5e94\u62e5\u6709\u63d2\u5165\u6743\u9650\uff1b\u4f46\u5b58\u5728\u4e00\u4e9b\u4f8b\u5916\u60c5\u51b5\uff0c\u4f8b\u5982 <code>ALTER DEFAULT PRIVILEGES</code> \u79fb\u9664\u4e86\u8fd9\u7c7b\u6743\u9650\u65f6\u3002\n     </p>", "text": "\u5728 SELECT INTO / CREATE TABLE AS \u4e2d\u68c0\u67e5 INSERT \u6743\u9650\uff08KaiGai Kohei\uff09 \u7531\u4e8e\u5bf9\u8c61\u662f\u7531 SELECT INTO \u6216 CREATE TABLE AS \u521b\u5efa\u7684\uff0c\u521b\u5efa\u8005\u901a\u5e38\u5e94\u62e5\u6709\u63d2\u5165\u6743\u9650\uff1b\u4f46\u5b58\u5728\u4e00\u4e9b\u4f8b\u5916\u60c5\u51b5\uff0c\u4f8b\u5982 ALTER DEFAULT PRIVILEGES \u79fb\u9664\u4e86\u8fd9\u7c7b\u6743\u9650\u65f6\u3002", "title": "\u5728 SELECT INTO / CREATE TABLE AS \u4e2d\u68c0\u67e5 INSERT \u6743\u9650", "commits": [], "section": "\u5bf9\u8c61\u64cd\u4f5c / \u5bf9\u8c61\u6743\u9650", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "2b32cdfebc5c9f9e7d8cd726b73569ce75dc555c6e68c70484251bd7656f84dd", "section_path": ["\u5bf9\u8c61\u64cd\u4f5c", "\u5bf9\u8c61\u6743\u9650"], "commit_groups": [], "identity_text": "Check for INSERT privileges in SELECT INTO / CREATE TABLE AS (KaiGai Kohei) Because the object is being created by SELECT INTO or CREATE TABLE AS, the creator would ordinarily have insert permissions; but there are corner cases where this is not true, such as when ALTER DEFAULT PRIVILEGES has removed such permissions.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/090", "db_id": "4372e093791522c8a396006707c5bf97", "patch_ids": [], "statement_hash": "790366a6721bef24d1d404a60b601e8b3f0247763ce6c45d01f68e57b380ce0b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-15295e894fd566bd", "migration": false}, {"id": "9.2.0-8968fd65d992442d", "cves": [], "html": "<p>      \u5141\u8bb8 <a href=\"/docs/9.2/sql-vacuum.html\" title=\"VACUUM\"><code>VACUUM</code></a> \u66f4\u5bb9\u6613\u5730\u8df3\u8fc7\u65e0\u6cd5\u9501\u5b9a\u7684\u9875\u9762\uff08Simon Riggs\u3001Robert Haas\uff09\n     </p><p>      \u6b64\u53d8\u66f4\u5e94\u80fd\u5927\u5e45\u51cf\u5c11 <code>VACUUM</code> \u56e0\u7b49\u5f85\u5176\u4ed6\u4f1a\u8bdd\u800c<span>\u201c<span>\u5361\u4f4f</span>\u201d</span>\u7684\u60c5\u51b5\u3002\n     </p>", "text": "\u5141\u8bb8 VACUUM \u66f4\u5bb9\u6613\u5730\u8df3\u8fc7\u65e0\u6cd5\u9501\u5b9a\u7684\u9875\u9762\uff08Simon Riggs\u3001Robert Haas\uff09 \u6b64\u53d8\u66f4\u5e94\u80fd\u5927\u5e45\u51cf\u5c11 VACUUM \u56e0\u7b49\u5f85\u5176\u4ed6\u4f1a\u8bdd\u800c\u201c\u5361\u4f4f\u201d\u7684\u60c5\u51b5\u3002", "title": "\u5141\u8bb8 VACUUM \u66f4\u5bb9\u6613\u5730\u8df3\u8fc7\u65e0\u6cd5\u9501\u5b9a\u7684\u9875\u9762", "commits": [], "section": "\u5de5\u5177\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "5a73c99b293d49d781b08126bbe33603d148bee1ca56d9b843dd6be36d4ec28d", "section_path": ["\u5de5\u5177\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Allow VACUUM to more easily skip pages that cannot be locked (Simon Riggs, Robert Haas) This change should greatly reduce the incidence of VACUUM getting stuck waiting for other sessions.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/091", "db_id": "eb233fb7a26dce8b8ccbdc268eeb191b", "patch_ids": [], "statement_hash": "480749d44c7a30cf8fe53e394b9fb31ff729367774b2ec5476e5ef8d053cd28c", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-8968fd65d992442d", "migration": false}, {"id": "9.2.0-f1cd3d17985bb495", "cves": [], "html": "<p>      \u8ba9 <a href=\"/docs/9.2/sql-explain.html\" title=\"EXPLAIN\"><code>EXPLAIN</code></a> <code>(BUFFERS)</code> \u7edf\u8ba1\u88ab\u5f04\u810f\u548c\u5199\u51fa\u7684\u5757\uff08Robert Haas\uff09\n     </p>", "text": "\u8ba9 EXPLAIN (BUFFERS) \u7edf\u8ba1\u88ab\u5f04\u810f\u548c\u5199\u51fa\u7684\u5757\uff08Robert Haas\uff09", "title": "\u8ba9 EXPLAIN (BUFFERS) \u7edf\u8ba1\u88ab\u5f04\u810f\u548c\u5199\u51fa\u7684\u5757", "commits": [], "section": "\u5de5\u5177\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "150dba7be8b7e32b0f566290fe899c103061c99a0b7faa4cc7e366494aad825b", "section_path": ["\u5de5\u5177\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Make EXPLAIN (BUFFERS) count blocks dirtied and written (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/092", "db_id": "b8dbac5d1d76e1d8af02dfb3ac030f36", "patch_ids": [], "statement_hash": "975e5fbda739d67cec11f22d7a7c484be7e7bef9216b8703ddf19f93938056cf", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-f1cd3d17985bb495", "migration": false}, {"id": "9.2.0-4526fa986daf7183", "cves": [], "html": "<p>      \u8ba9 <code>EXPLAIN ANALYZE</code> \u62a5\u544a\u88ab\u8fc7\u6ee4\u6b65\u9aa4\u62d2\u7edd\u7684\u884c\u6570\uff08Marko Tiikkaja\uff09\n     </p>", "text": "\u8ba9 EXPLAIN ANALYZE \u62a5\u544a\u88ab\u8fc7\u6ee4\u6b65\u9aa4\u62d2\u7edd\u7684\u884c\u6570\uff08Marko Tiikkaja\uff09", "title": "\u8ba9 EXPLAIN ANALYZE \u62a5\u544a\u88ab\u8fc7\u6ee4\u6b65\u9aa4\u62d2\u7edd\u7684\u884c\u6570", "commits": [], "section": "\u5de5\u5177\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "fd0dd15eba3828cc5b399ca3d9fea5a9e2dd8292f0d6bb95cf0f0c14ec2ea31b", "section_path": ["\u5de5\u5177\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Make EXPLAIN ANALYZE report the number of rows rejected by filter steps (Marko Tiikkaja)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/093", "db_id": "7370c12cab819ec724a4e0b540a80cc4", "patch_ids": [], "statement_hash": "ace604b52489a7d9e8c39461a9e78ce64d8d3063e7a828467bf8d80183464de9", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4526fa986daf7183", "migration": false}, {"id": "9.2.0-90daab2dcd82e33e", "cves": [], "html": "<p>      \u5141\u8bb8 <code>EXPLAIN ANALYZE</code> \u5728\u4e0d\u9700\u8981\u65f6\u95f4\u503c\u65f6\u907f\u514d\u8ba1\u65f6\u5f00\u9500\uff08Tomas Vondra\uff09\n     </p><p>      \u8fd9\u901a\u8fc7\u628a\u65b0\u7684 <code>TIMING</code> \u9009\u9879\u8bbe\u4e3a <code>FALSE</code> \u5b9e\u73b0\u3002\n     </p>", "text": "\u5141\u8bb8 EXPLAIN ANALYZE \u5728\u4e0d\u9700\u8981\u65f6\u95f4\u503c\u65f6\u907f\u514d\u8ba1\u65f6\u5f00\u9500\uff08Tomas Vondra\uff09 \u8fd9\u901a\u8fc7\u628a\u65b0\u7684 TIMING \u9009\u9879\u8bbe\u4e3a FALSE \u5b9e\u73b0\u3002", "title": "\u5141\u8bb8 EXPLAIN ANALYZE \u5728\u4e0d\u9700\u8981\u65f6\u95f4\u503c\u65f6\u907f\u514d\u8ba1\u65f6\u5f00\u9500", "commits": [], "section": "\u5de5\u5177\u64cd\u4f5c", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "9b5f545e9e4a040d9c0931d6116a09869a9d9c73535f9946220b4a7c1c94c832", "section_path": ["\u5de5\u5177\u64cd\u4f5c"], "commit_groups": [], "identity_text": "Allow EXPLAIN ANALYZE to avoid timing overhead when time values are not wanted (Tomas Vondra) This is accomplished by setting the new TIMING option to FALSE.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/094", "db_id": "6a4880ccf4f41520aeef1c114950ab39", "patch_ids": [], "statement_hash": "b4f435c6756ba17a6cc294a6b78c7fecd4ecee9637f9e705bd93a9a8a5dad8fe", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-90daab2dcd82e33e", "migration": false}, {"id": "9.2.0-7f70735bbd76f529", "cves": [], "html": "<p>      \u65b0\u589e\u5bf9<a href=\"/docs/9.2/rangetypes.html\" title=\"8.16.\u00a0\u8303\u56f4\u7c7b\u578b\">\u8303\u56f4\u6570\u636e\u7c7b\u578b</a>\u7684\u652f\u6301\uff08Jeff Davis\u3001Tom Lane\u3001Alexander Korotkov\uff09\n     </p><p>      \u8303\u56f4\u6570\u636e\u7c7b\u578b\u5b58\u50a8\u5c5e\u4e8e\u5176\u57fa\u7840\u7c7b\u578b\u7684\u4e0b\u754c\u548c\u4e0a\u754c\u3002\u5b83\u652f\u6301\u5305\u542b\u3001\u91cd\u53e0\u548c\u4ea4\u96c6\u7b49\u64cd\u4f5c\u3002\n     </p>", "text": "\u65b0\u589e\u5bf9\u8303\u56f4\u6570\u636e\u7c7b\u578b\u7684\u652f\u6301\uff08Jeff Davis\u3001Tom Lane\u3001Alexander Korotkov\uff09 \u8303\u56f4\u6570\u636e\u7c7b\u578b\u5b58\u50a8\u5c5e\u4e8e\u5176\u57fa\u7840\u7c7b\u578b\u7684\u4e0b\u754c\u548c\u4e0a\u754c\u3002\u5b83\u652f\u6301\u5305\u542b\u3001\u91cd\u53e0\u548c\u4ea4\u96c6\u7b49\u64cd\u4f5c\u3002", "title": "\u65b0\u589e\u5bf9\u8303\u56f4\u6570\u636e\u7c7b\u578b\u7684\u652f\u6301", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "ee7af61a49407a4ad7dc6f932d41808dacbc685d923dda9c1eb15665d532d176", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Add support for range data types (Jeff Davis, Tom Lane, Alexander Korotkov) A range data type stores a lower and upper bound belonging to its base data type. It supports operations like contains, overlaps, and intersection.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/095", "db_id": "441a0e3a844780ed1aed2a8e66de68f8", "patch_ids": [], "statement_hash": "15b13ef76a26b3d877d5a54f3e52d6ce212903d5887e1f32a25cbfa1f3af2de4", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-7f70735bbd76f529", "migration": false}, {"id": "9.2.0-e5ae1cd4f9f8eea0", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/datatype-json.html\" title=\"8.17.\u00a0JSON \u7c7b\u578b\"><code>JSON</code></a> \u6570\u636e\u7c7b\u578b\uff08Robert Haas\uff09\n     </p><p>      \u8be5\u7c7b\u578b\u5b58\u50a8\u7ecf\u8fc7\u6b63\u786e\u9a8c\u8bc1\u7684 <acronym>JSON</acronym>\uff08JavaScript \u5bf9\u8c61\u8868\u793a\u6cd5\uff09\u6570\u636e\u3002\n     </p>", "text": "\u65b0\u589e JSON \u6570\u636e\u7c7b\u578b\uff08Robert Haas\uff09 \u8be5\u7c7b\u578b\u5b58\u50a8\u7ecf\u8fc7\u6b63\u786e\u9a8c\u8bc1\u7684 JSON\uff08JavaScript \u5bf9\u8c61\u8868\u793a\u6cd5\uff09\u6570\u636e\u3002", "title": "\u65b0\u589e JSON \u6570\u636e\u7c7b\u578b", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "4e420ec0e7d03d01c1255afab45df662551525d6ad3059d94fac2432592a0a40", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Add a JSON data type (Robert Haas) This type stores JSON (JavaScript Object Notation) data with proper validation.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/096", "db_id": "ac38927f8d5871af3808ef0709a8b6e1", "patch_ids": [], "statement_hash": "75ce482cc964f88d16f336a4894d634e823d26c413cbea59569863becaaa9fcf", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e5ae1cd4f9f8eea0", "migration": false}, {"id": "9.2.0-04be29419dcbb253", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/functions-json.html\" title=\"9.15.\u00a0JSON \u51fd\u6570\"><code>array_to_json()</code></a> \u548c <code>row_to_json()</code>\uff08Andrew Dunstan\uff09\n     </p>", "text": "\u65b0\u589e array_to_json() \u548c row_to_json()\uff08Andrew Dunstan\uff09", "title": "\u65b0\u589e array_to_json() \u548c row_to_json()", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "67cc8db9a60f1685301b8df89a29ed4c61b68de52e238f97c2eaa06186112d61", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Add array_to_json() and row_to_json() (Andrew Dunstan)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/097", "db_id": "804f5ba8d93c38a8e80fd72212192b50", "patch_ids": [], "statement_hash": "b5502911af6bbc4b44c183c3995dcc4a1c9192cf04850e37191704e7446de9c7", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-04be29419dcbb253", "migration": false}, {"id": "9.2.0-d7a5601685089ec0", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/datatype.html#DATATYPE-SERIAL\" title=\"8.1.4.\u00a0serial \u7c7b\u578b\"><code>SMALLSERIAL</code></a> \u6570\u636e\u7c7b\u578b\uff08Mike Pultz\uff09\n     </p><p>      \u5b83\u7c7b\u4f3c\u4e8e <code>SERIAL</code>\uff0c\u53ea\u662f\u628a\u5e8f\u5217\u5b58\u50a8\u5728\u4e24\u5b57\u8282\u6574\u6570\u5217\uff08<code>int2</code>\uff09\u4e2d\u3002\n     </p>", "text": "\u65b0\u589e SMALLSERIAL \u6570\u636e\u7c7b\u578b\uff08Mike Pultz\uff09 \u5b83\u7c7b\u4f3c\u4e8e SERIAL\uff0c\u53ea\u662f\u628a\u5e8f\u5217\u5b58\u50a8\u5728\u4e24\u5b57\u8282\u6574\u6570\u5217\uff08int2\uff09\u4e2d\u3002", "title": "\u65b0\u589e SMALLSERIAL \u6570\u636e\u7c7b\u578b", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "4d43cd4d77ee45542478e622592f729d7353fd699640504cf6ed8ce2a282ff7f", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Add a SMALLSERIAL data type (Mike Pultz) This is like SERIAL, except it stores the sequence in a two-byte integer column (int2).", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/098", "db_id": "95d1ad51052ba3155186e62196d9f34d", "patch_ids": [], "statement_hash": "7c7d291560035ca2283c2a263251e9ad3a00d442c70b8b6e0e27b61713369cc3", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d7a5601685089ec0", "migration": false}, {"id": "9.2.0-724b5bcfbe2294a3", "cves": [], "html": "<p>      \u5141\u8bb8<a href=\"/docs/9.2/sql-createdomain.html\" title=\"CREATE DOMAIN\">\u57df</a>\u58f0\u660e\u4e3a <code>NOT VALID</code>\uff08\u00c1lvaro Herrera\uff09\n     </p><p>      \u6b64\u9009\u9879\u53ef\u4ee5\u5728\u521b\u5efa\u57df\u65f6\u8bbe\u7f6e\uff0c\u6216\u8005\u901a\u8fc7 <code>ALTER DOMAIN</code> ... <code>ADD CONSTRAINT</code> ... <code>NOT VALID</code> \u8bbe\u7f6e\u3002<code>ALTER DOMAIN</code> ... <code>VALIDATE CONSTRAINT</code> \u4f1a\u5b8c\u5168\u9a8c\u8bc1\u7ea6\u675f\u3002\n     </p>", "text": "\u5141\u8bb8\u57df\u58f0\u660e\u4e3a NOT VALID\uff08\u00c1lvaro Herrera\uff09 \u6b64\u9009\u9879\u53ef\u4ee5\u5728\u521b\u5efa\u57df\u65f6\u8bbe\u7f6e\uff0c\u6216\u8005\u901a\u8fc7 ALTER DOMAIN ... ADD CONSTRAINT ... NOT VALID \u8bbe\u7f6e\u3002ALTER DOMAIN ... VALIDATE CONSTRAINT \u4f1a\u5b8c\u5168\u9a8c\u8bc1\u7ea6\u675f\u3002", "title": "\u5141\u8bb8\u57df\u58f0\u660e\u4e3a NOT VALID", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "d455e06cf5321ebd666c212a82e8892ec67c4e763d177a2d11c9456e55a095b0", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Allow domains to be declared NOT VALID (\u00c1lvaro Herrera) This option can be set at domain creation time, or via ALTER DOMAIN ... ADD CONSTRAINT ... NOT VALID. ALTER DOMAIN ... VALIDATE CONSTRAINT fully validates the constraint.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/099", "db_id": "63305d5ef86767b43e523fec07893b8f", "patch_ids": [], "statement_hash": "1371c1fea4535555c975385cff101e4b9c5ffcccc1b2e7ed344f1ab6587c99ff", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-724b5bcfbe2294a3", "migration": false}, {"id": "9.2.0-75a6aa9b84de381c", "cves": [], "html": "<p>      \u4e3a <a href=\"/docs/9.2/datatype-money.html\" title=\"8.2.\u00a0\u8d27\u5e01\u7c7b\u578b\"><code>money</code></a> \u6570\u636e\u7c7b\u578b\u652f\u6301\u66f4\u591a\u533a\u57df\u7279\u5b9a\u7684\u683c\u5f0f\u5316\u9009\u9879\uff08Tom Lane\uff09\n     </p><p>      \u5177\u4f53\u800c\u8a00\uff0c\u9075\u5faa POSIX \u4e2d\u5173\u4e8e\u8d27\u5e01\u8f93\u51fa\u4e2d\u503c\u3001\u7b26\u53f7\u548c\u8d27\u5e01\u7b26\u53f7\u987a\u5e8f\u7684\u6240\u6709\u9009\u9879\u3002\u6b64\u5916\uff0c\u786e\u4fdd\u5343\u4f4d\u5206\u9694\u7b26\u53ea\u63d2\u5165\u5728\u5c0f\u6570\u70b9\u5de6\u4fa7\uff0c\u8fd9\u662f POSIX \u7684\u8981\u6c42\u3002\n     </p>", "text": "\u4e3a money \u6570\u636e\u7c7b\u578b\u652f\u6301\u66f4\u591a\u533a\u57df\u7279\u5b9a\u7684\u683c\u5f0f\u5316\u9009\u9879\uff08Tom Lane\uff09 \u5177\u4f53\u800c\u8a00\uff0c\u9075\u5faa POSIX \u4e2d\u5173\u4e8e\u8d27\u5e01\u8f93\u51fa\u4e2d\u503c\u3001\u7b26\u53f7\u548c\u8d27\u5e01\u7b26\u53f7\u987a\u5e8f\u7684\u6240\u6709\u9009\u9879\u3002\u6b64\u5916\uff0c\u786e\u4fdd\u5343\u4f4d\u5206\u9694\u7b26\u53ea\u63d2\u5165\u5728\u5c0f\u6570\u70b9\u5de6\u4fa7\uff0c\u8fd9\u662f POSIX \u7684\u8981\u6c42\u3002", "title": "\u4e3a money \u6570\u636e\u7c7b\u578b\u652f\u6301\u66f4\u591a\u533a\u57df\u7279\u5b9a\u7684\u683c\u5f0f\u5316\u9009\u9879", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "acf2e604efe2cb9e10ec287f465d4e98c9607ab5e18a40586329c281809f3cc0", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Support more locale-specific formatting options for the money data type (Tom Lane) Specifically, honor all the POSIX options for ordering of the value, sign, and currency symbol in monetary output. Also, make sure that the thousands separator is only inserted to the left of the decimal point, as required by POSIX.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/100", "db_id": "992cdd2a5360044e5dd0fbf09dcebd54", "patch_ids": [], "statement_hash": "8840a2cc562f928c462953e2b9b2e0ca957d4bd48e189845c7e0f6581c702d61", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-75a6aa9b84de381c", "migration": false}, {"id": "9.2.0-a1796bb62dd8871a", "cves": [], "html": "<p>      \u4e3a <code>macaddr</code> \u6570\u636e\u7c7b\u578b\u65b0\u589e\u6309\u4f4d<span>\u201c<span>\u4e0e</span>\u201d</span>\u3001<span>\u201c<span>\u6216</span>\u201d</span>\u548c<span>\u201c<span>\u975e</span>\u201d</span>\u64cd\u4f5c\u7b26\uff08Brendan Jurd\uff09\n     </p>", "text": "\u4e3a macaddr \u6570\u636e\u7c7b\u578b\u65b0\u589e\u6309\u4f4d\u201c\u4e0e\u201d\u3001\u201c\u6216\u201d\u548c\u201c\u975e\u201d\u64cd\u4f5c\u7b26\uff08Brendan Jurd\uff09", "title": "\u4e3a macaddr \u6570\u636e\u7c7b\u578b\u65b0\u589e\u6309\u4f4d\u201c\u4e0e\u201d\u3001\u201c\u6216\u201d\u548c\u201c\u975e\u201d\u64cd\u4f5c\u7b26", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "2fa102351b630ecb414d22ddf45c4ed3b00d8739f66fad9dbddfc14180447e78", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Add bitwise and, or, and not operators for the macaddr data type (Brendan Jurd)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/101", "db_id": "9340ff860f98f65dec5ae817ba463f37", "patch_ids": [], "statement_hash": "ee5eb643128338ecaba5bcfc9ee63edfebf0e5bc96270f78f4f0dafa9611c32c", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a1796bb62dd8871a", "migration": false}, {"id": "9.2.0-310cdd1cb241b4e0", "cves": [], "html": "<p>      \u5141\u8bb8 <a href=\"/docs/9.2/functions-xml.html#FUNCTIONS-XML-PROCESSING\" title=\"9.14.3.\u00a0\u5904\u7406 XML\"><code>xpath()</code></a> \u5728\u7ed9\u5b9a\u6807\u91cf\u503c\u65f6\u8fd4\u56de\u5355\u5143\u7d20 <acronym>XML</acronym> \u6570\u7ec4\uff08Florian Pflug\uff09\n     </p><p>      \u6b64\u524d\u5b83\u8fd4\u56de\u7a7a\u6570\u7ec4\u3002\u6b64\u53d8\u66f4\u8fd8\u4f1a\u4f7f <code>xpath_exists()</code> \u5bf9\u8fd9\u7c7b\u8868\u8fbe\u5f0f\u8fd4\u56de\u771f\u800c\u4e0d\u662f\u5047\u3002\n     </p>", "text": "\u5141\u8bb8 xpath() \u5728\u7ed9\u5b9a\u6807\u91cf\u503c\u65f6\u8fd4\u56de\u5355\u5143\u7d20 XML \u6570\u7ec4\uff08Florian Pflug\uff09 \u6b64\u524d\u5b83\u8fd4\u56de\u7a7a\u6570\u7ec4\u3002\u6b64\u53d8\u66f4\u8fd8\u4f1a\u4f7f xpath_exists() \u5bf9\u8fd9\u7c7b\u8868\u8fbe\u5f0f\u8fd4\u56de\u771f\u800c\u4e0d\u662f\u5047\u3002", "title": "\u5141\u8bb8 xpath() \u5728\u7ed9\u5b9a\u6807\u91cf\u503c\u65f6\u8fd4\u56de\u5355\u5143\u7d20 XML \u6570\u7ec4", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "b6c0268905021aa1a89b62259bf44ed14bb537ba930828cd7c79662653cfcd1b", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Allow xpath() to return a single-element XML array when supplied a scalar value (Florian Pflug) Previously, it returned an empty array. This change will also cause xpath_exists() to return true, not false, for such expressions.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/102", "db_id": "25c776cc7e60d29ea2ff53f4f08c3b11", "patch_ids": [], "statement_hash": "40a7b33ca6f7bbfaa849bf3e3a2e7cbb70c2f8335eccebf07da097d6e85c8f10", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-310cdd1cb241b4e0", "migration": false}, {"id": "9.2.0-c9dd762e5d0ad953", "cves": [], "html": "<p>      \u6539\u8fdb <acronym>XML</acronym> \u9519\u8bef\u5904\u7406\u7684\u5065\u58ee\u6027\uff08Florian Pflug\uff09\n     </p>", "text": "\u6539\u8fdb XML \u9519\u8bef\u5904\u7406\u7684\u5065\u58ee\u6027\uff08Florian Pflug\uff09", "title": "\u6539\u8fdb XML \u9519\u8bef\u5904\u7406\u7684\u5065\u58ee\u6027", "commits": [], "section": "\u6570\u636e\u7c7b\u578b", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "108d3ea48a3b7fd52cbc500b134eade6ce1882b9515c1977fc76c88fab29982a", "section_path": ["\u6570\u636e\u7c7b\u578b"], "commit_groups": [], "identity_text": "Improve XML error handling to be more robust (Florian Pflug)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/103", "db_id": "68acd0f7d6d5dfe84c80a5c2a2a24c88", "patch_ids": [], "statement_hash": "8bcfb17e30d93c3cc0b77dd6c105213852d8b4de7f047910e6a7feeee042d144", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c9dd762e5d0ad953", "migration": false}, {"id": "9.2.0-f908a633e63b9b2c", "cves": [], "html": "<p>      \u5141\u8bb8\u975e\u8d85\u7ea7\u7528\u6237\u5bf9\u5c5e\u4e8e\u540c\u4e00\u7528\u6237\u7684\u5176\u4ed6\u4f1a\u8bdd\u4f7f\u7528 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-SIGNAL\" title=\"9.26.2.\u00a0\u670d\u52a1\u5668\u4fe1\u53f7\u51fd\u6570\"><code>pg_cancel_backend()</code></a> \u548c <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-SIGNAL\" title=\"9.26.2.\u00a0\u670d\u52a1\u5668\u4fe1\u53f7\u51fd\u6570\"><code>pg_terminate_backend()</code></a>\uff08Magnus Hagander\u3001Josh Kupershmidt\u3001Dan Farina\uff09\n     </p><p>      \u6b64\u524d\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u8fd9\u4e9b\u51fd\u6570\u3002\n     </p>", "text": "\u5141\u8bb8\u975e\u8d85\u7ea7\u7528\u6237\u5bf9\u5c5e\u4e8e\u540c\u4e00\u7528\u6237\u7684\u5176\u4ed6\u4f1a\u8bdd\u4f7f\u7528 pg_cancel_backend() \u548c pg_terminate_backend()\uff08Magnus Hagander\u3001Josh Kupershmidt\u3001Dan Farina\uff09 \u6b64\u524d\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u8fd9\u4e9b\u51fd\u6570\u3002", "title": "\u5141\u8bb8\u975e\u8d85\u7ea7\u7528\u6237\u5bf9\u5c5e\u4e8e\u540c\u4e00\u7528\u6237\u7684\u5176\u4ed6\u4f1a\u8bdd\u4f7f\u7528 pg_cancel_backend() \u548c pg_terminate_backend()", "commits": [], "section": "\u51fd\u6570", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "85755d92c65a7461d4d67c7e5bb6fd8b2c54cbf6e8b11013da7047056acf655c", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Allow non-superusers to use pg_cancel_backend() and pg_terminate_backend() on other sessions belonging to the same user (Magnus Hagander, Josh Kupershmidt, Dan Farina) Previously only superusers were allowed to use these functions.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/104", "db_id": "766d47c43dd512a31db41b8275ed2192", "patch_ids": [], "statement_hash": "b4d94d614bee122a62d2b103e7d628d98a9decac4b64b1f18aab8931bf28c713", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-f908a633e63b9b2c", "migration": false}, {"id": "9.2.0-6041c6ac608dad64", "cves": [], "html": "<p>      \u5141\u8bb8\u5bfc\u5165\u548c\u5bfc\u51fa\u4e8b\u52a1\u5feb\u7167\uff08Joachim Wieland\u3001Tom Lane\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u591a\u4e2a\u4e8b\u52a1\u5171\u4eab\u76f8\u540c\u7684\u6570\u636e\u5e93\u72b6\u6001\u89c6\u56fe\u3002\u5feb\u7167\u901a\u8fc7 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-SNAPSHOT-SYNCHRONIZATION\" title=\"9.26.5.\u00a0\u5feb\u7167\u540c\u6b65\u51fd\u6570\"><code>pg_export_snapshot()</code></a> \u5bfc\u51fa\uff0c\u5e76\u901a\u8fc7 <a href=\"/docs/9.2/sql-set-transaction.html\" title=\"SET TRANSACTION\"><code>SET TRANSACTION SNAPSHOT</code></a> \u5bfc\u5165\u3002\u53ea\u80fd\u5bfc\u5165\u6765\u81ea\u5f53\u524d\u6b63\u5728\u8fd0\u884c\u7684\u4e8b\u52a1\u7684\u5feb\u7167\u3002\n     </p>", "text": "\u5141\u8bb8\u5bfc\u5165\u548c\u5bfc\u51fa\u4e8b\u52a1\u5feb\u7167\uff08Joachim Wieland\u3001Tom Lane\uff09 \u8fd9\u5141\u8bb8\u591a\u4e2a\u4e8b\u52a1\u5171\u4eab\u76f8\u540c\u7684\u6570\u636e\u5e93\u72b6\u6001\u89c6\u56fe\u3002\u5feb\u7167\u901a\u8fc7 pg_export_snapshot() \u5bfc\u51fa\uff0c\u5e76\u901a\u8fc7 SET TRANSACTION SNAPSHOT \u5bfc\u5165\u3002\u53ea\u80fd\u5bfc\u5165\u6765\u81ea\u5f53\u524d\u6b63\u5728\u8fd0\u884c\u7684\u4e8b\u52a1\u7684\u5feb\u7167\u3002", "title": "\u5141\u8bb8\u5bfc\u5165\u548c\u5bfc\u51fa\u4e8b\u52a1\u5feb\u7167", "commits": [], "section": "\u51fd\u6570", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "7653a110078fdcda4fb3da682a7fee329608e0d40773a6023e7c9d21baba4031", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Allow importing and exporting of transaction snapshots (Joachim Wieland, Tom Lane) This allows multiple transactions to share identical views of the database state. Snapshots are exported via pg_export_snapshot() and imported via SET TRANSACTION SNAPSHOT. Only snapshots from currently-running transactions can be imported.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/105", "db_id": "ba0dca58afe2b0a4a519ef0b9594c29d", "patch_ids": [], "statement_hash": "f289cc0ad82bf9a25a6a9ca3637fdaf1186ac8e46fa067532e36d90ff517ffc0", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6041c6ac608dad64", "migration": false}, {"id": "9.2.0-714522d62713ff2e", "cves": [], "html": "<p>      \u652f\u6301\u5bf9\u8868\u8fbe\u5f0f\u4f7f\u7528 <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-CATALOG-TABLE\" title=\"\u8868\u00a09.54.\u00a0\u7cfb\u7edf\u76ee\u5f55\u4fe1\u606f\u51fd\u6570\"><code>COLLATION FOR</code></a>\uff08Peter Eisentraut\uff09\n     </p><p>      \u5b83\u8fd4\u56de\u4e00\u4e2a\u8868\u793a\u8be5\u8868\u8fbe\u5f0f\u6392\u5e8f\u89c4\u5219\u7684\u5b57\u7b26\u4e32\u3002\n     </p>", "text": "\u652f\u6301\u5bf9\u8868\u8fbe\u5f0f\u4f7f\u7528 COLLATION FOR\uff08Peter Eisentraut\uff09 \u5b83\u8fd4\u56de\u4e00\u4e2a\u8868\u793a\u8be5\u8868\u8fbe\u5f0f\u6392\u5e8f\u89c4\u5219\u7684\u5b57\u7b26\u4e32\u3002", "title": "\u652f\u6301\u5bf9\u8868\u8fbe\u5f0f\u4f7f\u7528 COLLATION FOR", "commits": [], "section": "\u51fd\u6570", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "18366fc5a1997829ebd9114863ed64e8eb3ecb2afe277b0fb747cd937fc771f3", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Support COLLATION FOR on expressions (Peter Eisentraut) This returns a string representing the collation of the expression.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/106", "db_id": "c40d5a62a3f774edb558c48e87fa3802", "patch_ids": [], "statement_hash": "0bfb909bbb2be29d21ed286c0036a38d2194e79bec45615da005896a878ed2ee", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-714522d62713ff2e", "migration": false}, {"id": "9.2.0-5500343fc50587cc", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-SCHEMA-TABLE\" title=\"\u8868\u00a09.53.\u00a0\u6a21\u5f0f\u53ef\u89c1\u6027\u67e5\u8be2\u51fd\u6570\"><code>pg_opfamily_is_visible()</code></a>\uff08Josh Kupershmidt\uff09\n     </p>", "text": "\u65b0\u589e pg_opfamily_is_visible()\uff08Josh Kupershmidt\uff09", "title": "\u65b0\u589e pg_opfamily_is_visible()", "commits": [], "section": "\u51fd\u6570", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "8e933192e77fc14966fb7ac2106621674cfc948001ba20c605b1acd55375afc7", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Add pg_opfamily_is_visible() (Josh Kupershmidt)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/107", "db_id": "b6fbd1531a32e84ffb726ee0ddc8cca1", "patch_ids": [], "statement_hash": "cf7655ce05a8938d47892c07d871c2db6eb8fedfdca66aae13d917c632deba9a", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-5500343fc50587cc", "migration": false}, {"id": "9.2.0-80e69129a4ca020a", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-DBSIZE\" title=\"\u8868\u00a09.64.\u00a0\u6570\u636e\u5e93\u5bf9\u8c61\u5c3a\u5bf8\u51fd\u6570\"><code>pg_size_pretty()</code></a> \u7684 <code>numeric</code> \u53d8\u4f53\uff0c\u4f9b <code>pg_xlog_location_diff()</code> \u4f7f\u7528\uff08Fujii Masao\uff09\n     </p>", "text": "\u65b0\u589e pg_size_pretty() \u7684 numeric \u53d8\u4f53\uff0c\u4f9b pg_xlog_location_diff() \u4f7f\u7528\uff08Fujii Masao\uff09", "title": "\u65b0\u589e pg_size_pretty() \u7684 numeric \u53d8\u4f53\uff0c\u4f9b pg_xlog_location_diff() \u4f7f\u7528", "commits": [], "section": "\u51fd\u6570", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "8924cc46025e0f417a485d5bc492b791bc66465de8b13b2de890238c348e7c4b", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Add a numeric variant of pg_size_pretty() for use with pg_xlog_location_diff() (Fujii Masao)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/108", "db_id": "758fdef8c2074d5e9b4b19c03db1a4b3", "patch_ids": [], "statement_hash": "3989675e51dc796169110c3732ad2f4d92c455bb6d8c069a7fdc01142276e3d4", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-80e69129a4ca020a", "migration": false}, {"id": "9.2.0-e2bb10a5c90f4789", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-SESSION-TABLE\" title=\"\u8868\u00a09.51.\u00a0\u4f1a\u8bdd\u4fe1\u606f\u51fd\u6570\"><code>pg_trigger_depth()</code></a> \u51fd\u6570\uff08Kevin Grittner\uff09\n     </p><p>      \u5b83\u62a5\u544a\u5f53\u524d\u89e6\u53d1\u5668\u8c03\u7528\u6df1\u5ea6\u3002\n     </p>", "text": "\u65b0\u589e pg_trigger_depth() \u51fd\u6570\uff08Kevin Grittner\uff09 \u5b83\u62a5\u544a\u5f53\u524d\u89e6\u53d1\u5668\u8c03\u7528\u6df1\u5ea6\u3002", "title": "\u65b0\u589e pg_trigger_depth() \u51fd\u6570", "commits": [], "section": "\u51fd\u6570", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "0c63770f12facc771e269f3305bc5e9b41725afb6fde9ea6333038e9de653dee", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Add a pg_trigger_depth() function (Kevin Grittner) This reports the current trigger call depth.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/109", "db_id": "d08777fdfd20d4ee71f1f89e0dfaaf87", "patch_ids": [], "statement_hash": "b95a3eb7b0fce79233e19c8e7a2edf814203eef78d33e91324758b4801f7e50f", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e2bb10a5c90f4789", "migration": false}, {"id": "9.2.0-13a37b31010f53fb", "cves": [], "html": "<p>      \u5141\u8bb8 <a href=\"/docs/9.2/functions-aggregate.html#FUNCTIONS-AGGREGATE-TABLE\" title=\"\u8868\u00a09.46.\u00a0\u901a\u7528\u805a\u5408\u51fd\u6570\"><code>string_agg()</code></a> \u5904\u7406 <code>bytea</code> \u503c\uff08Pavel Stehule\uff09\n     </p>", "text": "\u5141\u8bb8 string_agg() \u5904\u7406 bytea \u503c\uff08Pavel Stehule\uff09", "title": "\u5141\u8bb8 string_agg() \u5904\u7406 bytea \u503c", "commits": [], "section": "\u51fd\u6570", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "f786f0f0c4c40a84d87e3e96c4d89e0ead4148683259702f042a8373e72d97ea", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Allow string_agg() to process bytea values (Pavel Stehule)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/110", "db_id": "a0c5f57db190508b036da64c436c2b18", "patch_ids": [], "statement_hash": "7aeb061d44739b28a5ef7db4671d5d31978f290577e76aea0ce5a3bb3f64130d", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-13a37b31010f53fb", "migration": false}, {"id": "9.2.0-895bf6d1db8d12c2", "cves": [], "html": "<p>      \u4fee\u590d\u53cd\u5411\u5f15\u7528\u51fa\u73b0\u5728\u66f4\u5927\u7684\u5e26\u91cf\u8bcd\u5b50\u8868\u8fbe\u5f0f\u4e2d\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff08Tom Lane\uff09\n     </p><p>      \u4f8b\u5982 <code>^(\\w+)( \\1)+$</code>\u3002\u4ee5\u524d\u7684\u7248\u672c\u4e0d\u68c0\u67e5\u53cd\u5411\u5f15\u7528\u662f\u5426\u771f\u7684\u4e0e\u7b2c\u4e00\u6b21\u51fa\u73b0\u5339\u914d\u3002\n     </p>", "text": "\u4fee\u590d\u53cd\u5411\u5f15\u7528\u51fa\u73b0\u5728\u66f4\u5927\u7684\u5e26\u91cf\u8bcd\u5b50\u8868\u8fbe\u5f0f\u4e2d\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff08Tom Lane\uff09 \u4f8b\u5982 ^(\\w+)( \\1)+$\u3002\u4ee5\u524d\u7684\u7248\u672c\u4e0d\u68c0\u67e5\u53cd\u5411\u5f15\u7528\u662f\u5426\u771f\u7684\u4e0e\u7b2c\u4e00\u6b21\u51fa\u73b0\u5339\u914d\u3002", "title": "\u4fee\u590d\u53cd\u5411\u5f15\u7528\u51fa\u73b0\u5728\u66f4\u5927\u7684\u5e26\u91cf\u8bcd\u5b50\u8868\u8fbe\u5f0f\u4e2d\u7684\u6b63\u5219\u8868\u8fbe\u5f0f", "commits": [], "section": "\u51fd\u6570", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "ffd79a149ed13457c0ebd9915659712f8cf50d05d994448eae979cf5b439e536", "section_path": ["\u51fd\u6570"], "commit_groups": [], "identity_text": "Fix regular expressions in which a back-reference occurs within a larger quantified subexpression (Tom Lane) For example, ^(\\w+)( \\1)+$. Previous releases did not check that the back-reference actually matched the first occurrence.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/111", "db_id": "9756380287fd237dfda169cd6cf52437", "patch_ids": [], "statement_hash": "1999b37d402fa71ecd5604e187f7fed6b3090d3e5932a190dad6c6d915ec5c19", "relations": [], "category_label": "BUG \u4fee\u590d", "url": "/docs/compare/?release=9.2.0#9.2.0-895bf6d1db8d12c2", "migration": false}, {"id": "9.2.0-597f23b9a4eadd3d", "cves": [], "html": "<p>      \u65b0\u589e\u4fe1\u606f\u6a21\u5f0f\u89c6\u56fe <code>role_udt_grants</code>\u3001<code>udt_privileges</code> \u548c <code>user_defined_types</code>\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u65b0\u589e\u4fe1\u606f\u6a21\u5f0f\u89c6\u56fe role_udt_grants\u3001udt_privileges \u548c user_defined_types\uff08Peter Eisentraut\uff09", "title": "\u65b0\u589e\u4fe1\u606f\u6a21\u5f0f\u89c6\u56fe role_udt_grants\u3001udt_privileges \u548c user_defined_types", "commits": [], "section": "Information Schema", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.10", "source_hash": "b247a0c97792b239c7711bbd109dd324d7495c838867a0da793a6649e11e9563", "section_path": ["Information Schema"], "commit_groups": [], "identity_text": "Add information schema views role_udt_grants, udt_privileges, and user_defined_types (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/112", "db_id": "44c34955ffdc40289ac6a4fe794f3904", "patch_ids": [], "statement_hash": "c2d4f62fe4f7b815f3309bb8e8bb6ceb6237b3bf2ac355cf32f4d74fdf85e956", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-597f23b9a4eadd3d", "migration": false}, {"id": "9.2.0-6848b9df677e75d6", "cves": [], "html": "<p>      \u4e3a\u4fe1\u606f\u6a21\u5f0f <code>element_types</code> \u89c6\u56fe\u65b0\u589e\u7ec4\u5408\u7c7b\u578b\u5c5e\u6027\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u4e3a\u4fe1\u606f\u6a21\u5f0f element_types \u89c6\u56fe\u65b0\u589e\u7ec4\u5408\u7c7b\u578b\u5c5e\u6027\uff08Peter Eisentraut\uff09", "title": "\u4e3a\u4fe1\u606f\u6a21\u5f0f element_types \u89c6\u56fe\u65b0\u589e\u7ec4\u5408\u7c7b\u578b\u5c5e\u6027", "commits": [], "section": "Information Schema", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.10", "source_hash": "350e24e154dab9a9da6ca980270071ca57d027b6c139b05feb7281da2b36b4ca", "section_path": ["Information Schema"], "commit_groups": [], "identity_text": "Add composite-type attributes to the information schema element_types view (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/113", "db_id": "437f42a35995203cb9591bbd8e4d3ce6", "patch_ids": [], "statement_hash": "cad08e0861c33809206bf2e01ee9b08ed9f4d5256a158a354040c5241302452b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6848b9df677e75d6", "migration": false}, {"id": "9.2.0-a59d7507ee2aeda0", "cves": [], "html": "<p>      \u5728\u4fe1\u606f\u6a21\u5f0f\u4e2d\u5b9e\u73b0 <code>interval_type</code> \u5217\uff08Peter Eisentraut\uff09\n     </p><p>      \u6b64\u524d\u8fd9\u4e9b\u5217\u8bfb\u53d6\u4e3a\u7a7a\u503c\u3002\n     </p>", "text": "\u5728\u4fe1\u606f\u6a21\u5f0f\u4e2d\u5b9e\u73b0 interval_type \u5217\uff08Peter Eisentraut\uff09 \u6b64\u524d\u8fd9\u4e9b\u5217\u8bfb\u53d6\u4e3a\u7a7a\u503c\u3002", "title": "\u5728\u4fe1\u606f\u6a21\u5f0f\u4e2d\u5b9e\u73b0 interval_type \u5217", "commits": [], "section": "Information Schema", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.10", "source_hash": "0c23c23ba9dd603c7a7ac500edb68d9f4ae03e39f7ff75b2a914edb569d7c717", "section_path": ["Information Schema"], "commit_groups": [], "identity_text": "Implement interval_type columns in the information schema (Peter Eisentraut) Formerly these columns read as nulls.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/114", "db_id": "1e9de85b1e537ba226b4148565ea9ced", "patch_ids": [], "statement_hash": "cf1b2cd71fbce1866fa7a965bc9f6cc717073ae4f0100b8a5c1a497ae47015b3", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a59d7507ee2aeda0", "migration": false}, {"id": "9.2.0-7c06bd1f275617db", "cves": [], "html": "<p>      \u5728\u4fe1\u606f\u6a21\u5f0f <code>attributes</code>\u3001<code>columns</code>\u3001<code>domains</code> \u548c <code>element_types</code> \u89c6\u56fe\u4e2d\u5b9e\u73b0\u6392\u5e8f\u89c4\u5219\u76f8\u5173\u5217\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u5728\u4fe1\u606f\u6a21\u5f0f attributes\u3001columns\u3001domains \u548c element_types \u89c6\u56fe\u4e2d\u5b9e\u73b0\u6392\u5e8f\u89c4\u5219\u76f8\u5173\u5217\uff08Peter Eisentraut\uff09", "title": "\u5728\u4fe1\u606f\u6a21\u5f0f attributes\u3001columns\u3001domains \u548c element_types \u89c6\u56fe\u4e2d\u5b9e\u73b0\u6392\u5e8f\u89c4\u5219\u76f8\u5173\u5217", "commits": [], "section": "Information Schema", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.10", "source_hash": "19975a6596941e9ea4d7dbb91d5a29c4b9d27ce90c33698f2d57da0dcd72aa6f", "section_path": ["Information Schema"], "commit_groups": [], "identity_text": "Implement collation-related columns in the information schema attributes, columns, domains, and element_types views (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/115", "db_id": "8a337cb61611dfffe6a636ccfe623ccf", "patch_ids": [], "statement_hash": "6bb3c1e007aa4b7291f178b9c627d8cc0abdebb90bb53ea8179be91959043e35", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-7c06bd1f275617db", "migration": false}, {"id": "9.2.0-6c156236569f4f03", "cves": [], "html": "<p>      \u5728\u4fe1\u606f\u6a21\u5f0f <code>table_privileges</code> \u89c6\u56fe\u4e2d\u5b9e\u73b0 <code>with_hierarchy</code> \u5217\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u5728\u4fe1\u606f\u6a21\u5f0f table_privileges \u89c6\u56fe\u4e2d\u5b9e\u73b0 with_hierarchy \u5217\uff08Peter Eisentraut\uff09", "title": "\u5728\u4fe1\u606f\u6a21\u5f0f table_privileges \u89c6\u56fe\u4e2d\u5b9e\u73b0 with_hierarchy \u5217", "commits": [], "section": "Information Schema", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.10", "source_hash": "814337d8cd302ca42a1bcda8a76796aa44ef28b1eddb1f75faa3bd903d863924", "section_path": ["Information Schema"], "commit_groups": [], "identity_text": "Implement the with_hierarchy column in the information schema table_privileges view (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/116", "db_id": "6a67c64bedd204f3f6faa69012437e34", "patch_ids": [], "statement_hash": "23f1fee5ae0dd2050d13e9bee3bc55bd4a4ece723b4d709c9d2b469e2ed38454", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6c156236569f4f03", "migration": false}, {"id": "9.2.0-8b447d7f6bec0ab8", "cves": [], "html": "<p>      \u5728\u4fe1\u606f\u6a21\u5f0f\u4e2d\u65b0\u589e\u5e8f\u5217 <code>USAGE</code> \u6743\u9650\u7684\u663e\u793a\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u5728\u4fe1\u606f\u6a21\u5f0f\u4e2d\u65b0\u589e\u5e8f\u5217 USAGE \u6743\u9650\u7684\u663e\u793a\uff08Peter Eisentraut\uff09", "title": "\u5728\u4fe1\u606f\u6a21\u5f0f\u4e2d\u65b0\u589e\u5e8f\u5217 USAGE \u6743\u9650\u7684\u663e\u793a", "commits": [], "section": "Information Schema", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.10", "source_hash": "17ef02c552b16c85d94cfd9e84f5cf6b5cc031ac75d8ef492948926dfa016cb3", "section_path": ["Information Schema"], "commit_groups": [], "identity_text": "Add display of sequence USAGE privileges to information schema (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/117", "db_id": "06b77248fce9e079277c390ae6bc1c2b", "patch_ids": [], "statement_hash": "9d32bb8d3c0f38b9febf3e88c76a88bc7d2c1cc027459a3b4448a7c225d994c7", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-8b447d7f6bec0ab8", "migration": false}, {"id": "9.2.0-a00a862993a56f90", "cves": [], "html": "<p>      \u8ba9\u4fe1\u606f\u6a21\u5f0f\u663e\u793a\u9ed8\u8ba4\u6743\u9650\uff08Peter Eisentraut\uff09\n     </p><p>      \u6b64\u524d\uff0c\u975e\u7a7a\u7684\u9ed8\u8ba4\u6743\u9650\u6ca1\u6709\u5728\u89c6\u56fe\u4e2d\u8868\u793a\u3002\n     </p>", "text": "\u8ba9\u4fe1\u606f\u6a21\u5f0f\u663e\u793a\u9ed8\u8ba4\u6743\u9650\uff08Peter Eisentraut\uff09 \u6b64\u524d\uff0c\u975e\u7a7a\u7684\u9ed8\u8ba4\u6743\u9650\u6ca1\u6709\u5728\u89c6\u56fe\u4e2d\u8868\u793a\u3002", "title": "\u8ba9\u4fe1\u606f\u6a21\u5f0f\u663e\u793a\u9ed8\u8ba4\u6743\u9650", "commits": [], "section": "Information Schema", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.10", "source_hash": "b420db7506cfa7ca7d4b47e40080695b92926ab62c81fb72ec014c2952fa4ed2", "section_path": ["Information Schema"], "commit_groups": [], "identity_text": "Make the information schema show default privileges (Peter Eisentraut) Previously, non-empty default permissions were not represented in the views.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/118", "db_id": "38929c75d29566f2110e926de4fd9d93", "patch_ids": [], "statement_hash": "2788bb086499f85d4206cd666f0c3669ecf574e59c7da827a460b065e1ade4bd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a00a862993a56f90", "migration": false}, {"id": "9.2.0-03378bf57106b3ea", "cves": [], "html": "<p>      \u5141\u8bb8 PL/pgSQL \u7684 <code>OPEN</code> \u6e38\u6807\u547d\u4ee4\u6309\u540d\u79f0\u63d0\u4f9b\u53c2\u6570\uff08Yeb Havinga\uff09\n     </p>", "text": "\u5141\u8bb8 PL/pgSQL \u7684 OPEN \u6e38\u6807\u547d\u4ee4\u6309\u540d\u79f0\u63d0\u4f9b\u53c2\u6570\uff08Yeb Havinga\uff09", "title": "\u5141\u8bb8 PL/pgSQL \u7684 OPEN \u6e38\u6807\u547d\u4ee4\u6309\u540d\u79f0\u63d0\u4f9b\u53c2\u6570", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/pgSQL Server-Side Language", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.2", "source_hash": "7e0404f60cf9872a403ea81da226c3a825d61fd860d5d26748b54d1377279393", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/pgSQL Server-Side Language"], "commit_groups": [], "identity_text": "Allow the PL/pgSQL OPEN cursor command to supply parameters by name (Yeb Havinga)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/119", "db_id": "26ce44552a908e9e80ee622a1e7fa523", "patch_ids": [], "statement_hash": "80a75e8f5f5f2daa9c35c5d0519b620d1621645133d72588f98a67a1a4c2fb71", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-03378bf57106b3ea", "migration": false}, {"id": "9.2.0-a25a912af6103494", "cves": [], "html": "<p>      \u65b0\u589e PL/pgSQL \u547d\u4ee4 <code>GET STACKED DIAGNOSTICS</code>\uff0c\u7528\u4e8e\u83b7\u53d6\u5f02\u5e38\u4fe1\u606f\uff08Pavel Stehule\uff09\n     </p>", "text": "\u65b0\u589e PL/pgSQL \u547d\u4ee4 GET STACKED DIAGNOSTICS\uff0c\u7528\u4e8e\u83b7\u53d6\u5f02\u5e38\u4fe1\u606f\uff08Pavel Stehule\uff09", "title": "\u65b0\u589e PL/pgSQL \u547d\u4ee4 GET STACKED DIAGNOSTICS\uff0c\u7528\u4e8e\u83b7\u53d6\u5f02\u5e38\u4fe1\u606f", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/pgSQL Server-Side Language", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.2", "source_hash": "4d4efacf0fafb9132ac7f7dfd3ec4ffddfd7f0925fbe6c8eec83d38680f96091", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/pgSQL Server-Side Language"], "commit_groups": [], "identity_text": "Add a GET STACKED DIAGNOSTICS PL/pgSQL command to retrieve exception info (Pavel Stehule)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/120", "db_id": "87c0dafbb5c4c2a93db19ead1bb5f821", "patch_ids": [], "statement_hash": "9d3388afa41dffd5d862f5e2f8dcf26c29b4f08900bc3ee6ebd6b7b0f11fd82b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a25a912af6103494", "migration": false}, {"id": "9.2.0-b1cd54e1e97056dd", "cves": [], "html": "<p>      \u901a\u8fc7\u7f13\u5b58\u7c7b\u578b\u4fe1\u606f\u52a0\u901f PL/pgSQL \u6570\u7ec4\u8d4b\u503c\uff08Pavel Stehule\uff09\n     </p>", "text": "\u901a\u8fc7\u7f13\u5b58\u7c7b\u578b\u4fe1\u606f\u52a0\u901f PL/pgSQL \u6570\u7ec4\u8d4b\u503c\uff08Pavel Stehule\uff09", "title": "\u901a\u8fc7\u7f13\u5b58\u7c7b\u578b\u4fe1\u606f\u52a0\u901f PL/pgSQL \u6570\u7ec4\u8d4b\u503c", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/pgSQL Server-Side Language", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.2", "source_hash": "91530657045184dad11705da3fbdd193992c6a45576c8d9a79b75e7ebb48bbec", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/pgSQL Server-Side Language"], "commit_groups": [], "identity_text": "Speed up PL/pgSQL array assignment by caching type information (Pavel Stehule)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/121", "db_id": "1c46b49a1dd006088c5c884e0c6447c8", "patch_ids": [], "statement_hash": "f7fda26ea61fa7d0fd3561ce8de2d548a8fbedffcf082b780b4da0bc18bff8b9", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-b1cd54e1e97056dd", "migration": false}, {"id": "9.2.0-1eb1e7e9f6bb5cc9", "cves": [], "html": "<p>      \u6539\u8fdb\u957f\u94fe <code>ELSIF</code> \u5b50\u53e5\u7684\u6027\u80fd\u548c\u5185\u5b58\u6d88\u8017\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb\u957f\u94fe ELSIF \u5b50\u53e5\u7684\u6027\u80fd\u548c\u5185\u5b58\u6d88\u8017\uff08Tom Lane\uff09", "title": "\u6539\u8fdb\u957f\u94fe ELSIF \u5b50\u53e5\u7684\u6027\u80fd\u548c\u5185\u5b58\u6d88\u8017", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/pgSQL Server-Side Language", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.2", "source_hash": "aa2494eda4963ec127b8944505c869b4496640011aa087a11509d8bb13f777d1", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/pgSQL Server-Side Language"], "commit_groups": [], "identity_text": "Improve performance and memory consumption for long chains of ELSIF clauses (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/122", "db_id": "6acb5ae9c2af7d468617b75ea64829b6", "patch_ids": [], "statement_hash": "3409ef1ed6f8fb6e0449123d2b7dd27d329e6f7b08e6a4e61dc26e5d90317289", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-1eb1e7e9f6bb5cc9", "migration": false}, {"id": "9.2.0-a496652c2d602c42", "cves": [], "html": "<p>      \u8ba9 PL/pgSQL \u9519\u8bef\u6d88\u606f\u8f93\u51fa\u51fd\u6570\u7b7e\u540d\u800c\u4e0d\u4ec5\u662f\u540d\u79f0\uff08Pavel Stehule\uff09\n     </p>", "text": "\u8ba9 PL/pgSQL \u9519\u8bef\u6d88\u606f\u8f93\u51fa\u51fd\u6570\u7b7e\u540d\u800c\u4e0d\u4ec5\u662f\u540d\u79f0\uff08Pavel Stehule\uff09", "title": "\u8ba9 PL/pgSQL \u9519\u8bef\u6d88\u606f\u8f93\u51fa\u51fd\u6570\u7b7e\u540d\u800c\u4e0d\u4ec5\u662f\u540d\u79f0", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/pgSQL Server-Side Language", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.2", "source_hash": "f94ba1b0943e94e24b01f3313743afa158252e0e1989da8babc03c537d10de37", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/pgSQL Server-Side Language"], "commit_groups": [], "identity_text": "Output the function signature, not just the name, in PL/pgSQL error messages (Pavel Stehule)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/123", "db_id": "10a06c5680df9753f2a365066340e75c", "patch_ids": [], "statement_hash": "f10711bb16b198db8f5537a9d4667a9847d364cc16ca40637ba2fe92471e950b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a496652c2d602c42", "migration": false}, {"id": "9.2.0-4375407314ec5eb7", "cves": [], "html": "<p>      \u65b0\u589e PL/Python \u7684 <acronym>SPI</acronym> \u6e38\u6807\u652f\u6301\uff08Jan Urbanski\uff09\n     </p><p>      \u8fd9\u5141\u8bb8 PL/Python \u8bfb\u53d6\u90e8\u5206\u7ed3\u679c\u96c6\u3002\n     </p>", "text": "\u65b0\u589e PL/Python \u7684 SPI \u6e38\u6807\u652f\u6301\uff08Jan Urbanski\uff09 \u8fd9\u5141\u8bb8 PL/Python \u8bfb\u53d6\u90e8\u5206\u7ed3\u679c\u96c6\u3002", "title": "\u65b0\u589e PL/Python \u7684 SPI \u6e38\u6807\u652f\u6301", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/Python Server-Side Language", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.3", "source_hash": "6df2acec38e2672f326aad080c527ee72a6d4de1eac62c9e053ea07155c31161", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/Python Server-Side Language"], "commit_groups": [], "identity_text": "Add PL/Python SPI cursor support (Jan Urbanski) This allows PL/Python to read partial result sets.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/124", "db_id": "12ea54823f5cadbdac18126ac8dce3d0", "patch_ids": [], "statement_hash": "394520207e65acfc7d71831f1ce44a71f5ee014e7c3717c5166473cccc9b3e9b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4375407314ec5eb7", "migration": false}, {"id": "9.2.0-d44df0e544f16bc9", "cves": [], "html": "<p>      \u4e3a PL/Python \u65b0\u589e\u7ed3\u679c\u5143\u6570\u636e\u51fd\u6570\uff08Peter Eisentraut\uff09\n     </p><p>      \u5177\u4f53\u800c\u8a00\uff0c\u8fd9\u65b0\u589e\u4e86\u7ed3\u679c\u5bf9\u8c61\u51fd\u6570 <code>.colnames</code>\u3001<code>.coltypes</code> \u548c <code>.coltypmods</code>\u3002\n     </p>", "text": "\u4e3a PL/Python \u65b0\u589e\u7ed3\u679c\u5143\u6570\u636e\u51fd\u6570\uff08Peter Eisentraut\uff09 \u5177\u4f53\u800c\u8a00\uff0c\u8fd9\u65b0\u589e\u4e86\u7ed3\u679c\u5bf9\u8c61\u51fd\u6570 .colnames\u3001.coltypes \u548c .coltypmods\u3002", "title": "\u4e3a PL/Python \u65b0\u589e\u7ed3\u679c\u5143\u6570\u636e\u51fd\u6570", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/Python Server-Side Language", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.3", "source_hash": "632ea1a29071f1a0bab9218ef904006dda8aa0833beb10a9fe7aef7646a148c0", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/Python Server-Side Language"], "commit_groups": [], "identity_text": "Add result metadata functions to PL/Python (Peter Eisentraut) Specifically, this adds result object functions .colnames, .coltypes, and .coltypmods.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/125", "db_id": "b7aae9f9e9b4cb3437de8ed02b4de11f", "patch_ids": [], "statement_hash": "e1b4ce0f834329b2aefa82ffe356a9e024728bbe28292a28a277176b03e07b65", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d44df0e544f16bc9", "migration": false}, {"id": "9.2.0-3b24d05eca17f8d5", "cves": [], "html": "<p>      \u79fb\u9664\u5bf9 Python 2.2 \u7684\u652f\u6301\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u79fb\u9664\u5bf9 Python 2.2 \u7684\u652f\u6301\uff08Peter Eisentraut\uff09", "title": "\u79fb\u9664\u5bf9 Python 2.2 \u7684\u652f\u6301", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / PL/Python Server-Side Language", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.3", "source_hash": "2db98556858e18387b9c35668d31780b80436d897cf4d11e897aa42d3a0606fe", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "PL/Python Server-Side Language"], "commit_groups": [], "identity_text": "Remove support for Python 2.2 (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/126", "db_id": "b28dbf570a1c46cb478ff671fc9a7785", "patch_ids": [], "statement_hash": "937e0648a00561580a425dd3943909e17dc0cf22e605441b6aef9ec4deee223b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-3b24d05eca17f8d5", "migration": false}, {"id": "9.2.0-2d238d498a9c43a7", "cves": [], "html": "<p>      \u5141\u8bb8 <acronym>SQL</acronym> \u8bed\u8a00\u51fd\u6570\u6309\u540d\u79f0\u5f15\u7528\u53c2\u6570\uff08Matthew Draper\uff09\n     </p><p>      \u8981\u4f7f\u7528\u6b64\u7279\u6027\uff0c\u53ea\u9700\u4e3a\u51fd\u6570\u53c2\u6570\u547d\u540d\uff0c\u7136\u540e\u5728 <acronym>SQL</acronym> \u51fd\u6570\u4f53\u4e2d\u5f15\u7528\u53c2\u6570\u540d\u3002\n     </p>", "text": "\u5141\u8bb8 SQL \u8bed\u8a00\u51fd\u6570\u6309\u540d\u79f0\u5f15\u7528\u53c2\u6570\uff08Matthew Draper\uff09 \u8981\u4f7f\u7528\u6b64\u7279\u6027\uff0c\u53ea\u9700\u4e3a\u51fd\u6570\u53c2\u6570\u547d\u540d\uff0c\u7136\u540e\u5728 SQL \u51fd\u6570\u4f53\u4e2d\u5f15\u7528\u53c2\u6570\u540d\u3002", "title": "\u5141\u8bb8 SQL \u8bed\u8a00\u51fd\u6570\u6309\u540d\u79f0\u5f15\u7528\u53c2\u6570", "commits": [], "section": "\u670d\u52a1\u5668\u7aef\u8bed\u8a00 / SQL Server-Side Language", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.11.4", "source_hash": "aae2ecf3b4654222f240a721549be77e164c2a5531bae1d6246af7a5345a09ea", "section_path": ["\u670d\u52a1\u5668\u7aef\u8bed\u8a00", "SQL Server-Side Language"], "commit_groups": [], "identity_text": "Allow SQL-language functions to reference parameters by name (Matthew Draper) To use this, simply name the function arguments and then reference the argument names in the SQL function body.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/127", "db_id": "06052be414b4e20c31db53d2380f1ec4", "patch_ids": [], "statement_hash": "d5e90d6076eb500c745345ac04f24e61e53cb5509d05b95e965cc6be75d49a90", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-2d238d498a9c43a7", "migration": false}, {"id": "9.2.0-5a8613e62158cac9", "cves": [], "html": "<p>      \u4e3a<a href=\"/docs/9.2/app-initdb.html\" title=\"initdb\"><span>initdb</span></a>\u65b0\u589e\u9009\u9879 <code>--auth-local</code> \u548c <code>--auth-host</code>\uff08Peter Eisentraut\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u5206\u522b\u63a7\u5236 <code>pg_hba.conf</code> \u4e2d <code>local</code> \u548c <code>host</code> \u7684\u8ba4\u8bc1\u8bbe\u7f6e\u3002<code>--auth</code> \u4ecd\u7136\u540c\u65f6\u63a7\u5236\u4e24\u8005\u3002\n     </p>", "text": "\u4e3ainitdb\u65b0\u589e\u9009\u9879 --auth-local \u548c --auth-host\uff08Peter Eisentraut\uff09 \u8fd9\u5141\u8bb8\u5206\u522b\u63a7\u5236 pg_hba.conf \u4e2d local \u548c host \u7684\u8ba4\u8bc1\u8bbe\u7f6e\u3002--auth \u4ecd\u7136\u540c\u65f6\u63a7\u5236\u4e24\u8005\u3002", "title": "\u4e3ainitdb\u65b0\u589e\u9009\u9879 --auth-local \u548c --auth-host", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "0a3f56e07df1c319b5f32a98fb77e5ea3a7d00e412b0de41294a2ccbc7e7f824", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f"], "commit_groups": [], "identity_text": "Add initdb options --auth-local and --auth-host (Peter Eisentraut) This allows separate control of local and host pg_hba.conf authentication settings. --auth still controls both.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/128", "db_id": "0f2bbb0faa972bab9b644b74f7b8dc3f", "patch_ids": [], "statement_hash": "00f3c24d549915e07ce44099475b3569423434ecb58ff329b2cfb21ab9fb982d", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-5a8613e62158cac9", "migration": false}, {"id": "9.2.0-f03212bce5c63f56", "cves": [], "html": "<p>      \u4e3a<a href=\"/docs/9.2/app-createuser.html\" title=\"createuser\"><span>createuser</span></a>\u65b0\u589e <code>--replication</code>/<code>--no-replication</code> \u6807\u5fd7\uff0c\u7528\u4e8e\u63a7\u5236\u590d\u5236\u6743\u9650\uff08Fujii Masao\uff09\n     </p>", "text": "\u4e3acreateuser\u65b0\u589e --replication/--no-replication \u6807\u5fd7\uff0c\u7528\u4e8e\u63a7\u5236\u590d\u5236\u6743\u9650\uff08Fujii Masao\uff09", "title": "\u4e3acreateuser\u65b0\u589e --replication/--no-replication \u6807\u5fd7\uff0c\u7528\u4e8e\u63a7\u5236\u590d\u5236\u6743\u9650", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "4a2f5bb2ae44d516d17bffe16f0bbf3dc5b2a9e5211521174438c3508e3675dc", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f"], "commit_groups": [], "identity_text": "Add --replication/--no-replication flags to createuser to control replication permission (Fujii Masao)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/129", "db_id": "2914317cb8577bb1fc8b698853884cd4", "patch_ids": [], "statement_hash": "8f2699b8bb88caa1ba183d1a697d92b3b5cffe7f625706a1326ce642b86cb02b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-f03212bce5c63f56", "migration": false}, {"id": "9.2.0-857b6630a91e3557", "cves": [], "html": "<p>      \u4e3a<a href=\"/docs/9.2/app-dropdb.html\" title=\"dropdb\"><span>dropdb</span></a>\u548c<a href=\"/docs/9.2/app-dropuser.html\" title=\"dropuser\"><span>dropuser</span></a>\u65b0\u589e <code>--if-exists</code> \u9009\u9879\uff08Josh Kupershmidt\uff09\n     </p>", "text": "\u4e3adropdb\u548cdropuser\u65b0\u589e --if-exists \u9009\u9879\uff08Josh Kupershmidt\uff09", "title": "\u4e3adropdb\u548cdropuser\u65b0\u589e --if-exists \u9009\u9879", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "6ee35983887fcdf579513d42f80c4a26b6a0d228e0cace4ab86dee1d7efbe5d4", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f"], "commit_groups": [], "identity_text": "Add the --if-exists option to dropdb and dropuser (Josh Kupershmidt)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/130", "db_id": "dcb05dc7da2c8b408878878db8694dea", "patch_ids": [], "statement_hash": "5d96c1ce15fcafd1d7cf8774ce88829049aa2e019b26fcc9fef290b66326573a", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-857b6630a91e3557", "migration": false}, {"id": "9.2.0-d48f87562ce58239", "cves": [], "html": "<p>      \u4f7f\u547d\u4ee4\u884c\u5de5\u5177\u80fd\u591f\u6307\u5b9a\u8981\u8fde\u63a5\u7684\u6570\u636e\u5e93\u540d\uff0c\u5e76\u5728\u8fde\u63a5 <code>postgres</code> \u6570\u636e\u5e93\u5931\u8d25\u65f6\u56de\u9000\u5230 <code>template1</code>\uff08Robert Haas\uff09\n     </p>", "text": "\u4f7f\u547d\u4ee4\u884c\u5de5\u5177\u80fd\u591f\u6307\u5b9a\u8981\u8fde\u63a5\u7684\u6570\u636e\u5e93\u540d\uff0c\u5e76\u5728\u8fde\u63a5 postgres \u6570\u636e\u5e93\u5931\u8d25\u65f6\u56de\u9000\u5230 template1\uff08Robert Haas\uff09", "title": "\u4f7f\u547d\u4ee4\u884c\u5de5\u5177\u80fd\u591f\u6307\u5b9a\u8981\u8fde\u63a5\u7684\u6570\u636e\u5e93\u540d\uff0c\u5e76\u5728\u8fde\u63a5 postgres \u6570\u636e\u5e93\u5931\u8d25\u65f6\u56de\u9000\u5230 template1", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "55b0c54508c52618441e5af54a9445d127d427335df4582bf40a88f4e454dcd9", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f"], "commit_groups": [], "identity_text": "Give command-line tools the ability to specify the name of the database to connect to, and fall back to template1 if a postgres database connection fails (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/131", "db_id": "479e5548463e38cbba474b1191bab3af", "patch_ids": [], "statement_hash": "c9a8e519f77429605e30b65647d737f4eb14325c316e51bac50263c5f37098f3", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d48f87562ce58239", "migration": false}, {"id": "9.2.0-0b891beccf2d444c", "cves": [], "html": "<p>      \u65b0\u589e\u6839\u636e\u663e\u793a\u5bbd\u5ea6\u81ea\u52a8\u6269\u5c55\u8f93\u51fa\u7684\u663e\u793a\u6a21\u5f0f\uff08Peter Eisentraut\uff09\n     </p><p>      \u8fd9\u4e3a <code>\\x</code> \u547d\u4ee4\u65b0\u589e\u4e86 <code>auto</code> \u9009\u9879\uff0c\u5f53\u666e\u901a\u8f93\u51fa\u4f1a\u6bd4\u5c4f\u5e55\u66f4\u5bbd\u65f6\u5207\u6362\u5230\u6269\u5c55\u6a21\u5f0f\u3002\n     </p>", "text": "\u65b0\u589e\u6839\u636e\u663e\u793a\u5bbd\u5ea6\u81ea\u52a8\u6269\u5c55\u8f93\u51fa\u7684\u663e\u793a\u6a21\u5f0f\uff08Peter Eisentraut\uff09 \u8fd9\u4e3a \\x \u547d\u4ee4\u65b0\u589e\u4e86 auto \u9009\u9879\uff0c\u5f53\u666e\u901a\u8f93\u51fa\u4f1a\u6bd4\u5c4f\u5e55\u66f4\u5bbd\u65f6\u5207\u6362\u5230\u6269\u5c55\u6a21\u5f0f\u3002", "title": "\u65b0\u589e\u6839\u636e\u663e\u793a\u5bbd\u5ea6\u81ea\u52a8\u6269\u5c55\u8f93\u51fa\u7684\u663e\u793a\u6a21\u5f0f", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "b071907bac6feab539cee6e01732345a35f9ab7be0a22f37509d1ba26293c653", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Add a display mode to auto-expand output based on the display width (Peter Eisentraut) This adds the auto option to the \\x command, which switches to the expanded mode when the normal output would be wider than the screen.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/132", "db_id": "d24d23456f8a202c35a380cd747697e6", "patch_ids": [], "statement_hash": "4ca5c41aef3436bb25f27520bcd79302721fedb1f56babbb0d257e92bbaacf09", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-0b891beccf2d444c", "migration": false}, {"id": "9.2.0-d932f8adc1713a41", "cves": [], "html": "<p>      \u5141\u8bb8\u5305\u542b\u76f8\u5bf9\u4e8e\u8c03\u7528\u6587\u4ef6\u6240\u5728\u76ee\u5f55\u547d\u540d\u7684\u811a\u672c\u6587\u4ef6\uff08Gurjeet Singh\uff09\n     </p><p>      \u8fd9\u901a\u8fc7\u65b0\u547d\u4ee4 <code>\\ir</code> \u5b9e\u73b0\u3002\n     </p>", "text": "\u5141\u8bb8\u5305\u542b\u76f8\u5bf9\u4e8e\u8c03\u7528\u6587\u4ef6\u6240\u5728\u76ee\u5f55\u547d\u540d\u7684\u811a\u672c\u6587\u4ef6\uff08Gurjeet Singh\uff09 \u8fd9\u901a\u8fc7\u65b0\u547d\u4ee4 \\ir \u5b9e\u73b0\u3002", "title": "\u5141\u8bb8\u5305\u542b\u76f8\u5bf9\u4e8e\u8c03\u7528\u6587\u4ef6\u6240\u5728\u76ee\u5f55\u547d\u540d\u7684\u811a\u672c\u6587\u4ef6", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "b48683a06799d0ac53a2edebe09efe33972fbae76d4a7b72623ce8c30eef8a20", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Allow inclusion of a script file that is named relative to the directory of the file from which it was invoked (Gurjeet Singh) This is done with a new command \\ir.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/133", "db_id": "f7d56c1b7777d5603fbec15dec2927e3", "patch_ids": [], "statement_hash": "25df670f6e85a88b3c01ca25297a88c20d6c1d205ded605403ef848c3c992720", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d932f8adc1713a41", "migration": false}, {"id": "9.2.0-b76571c61aad9659", "cves": [], "html": "<p>      \u652f\u6301 <span>psql</span> \u53d8\u91cf\u540d\u4e2d\u7684\u975e <acronym>ASCII</acronym> \u5b57\u7b26\uff08Tom Lane\uff09\n     </p>", "text": "\u652f\u6301 psql \u53d8\u91cf\u540d\u4e2d\u7684\u975e ASCII \u5b57\u7b26\uff08Tom Lane\uff09", "title": "\u652f\u6301 psql \u53d8\u91cf\u540d\u4e2d\u7684\u975e ASCII \u5b57\u7b26", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "6813da9f7a2b5ab153feb8001a8bd80e3e628efb4b89cd11a20b720864d38194", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Add support for non-ASCII characters in psql variable names (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/134", "db_id": "c173b03e5cebb7c0d74933b7370fae6c", "patch_ids": [], "statement_hash": "4bb0104b40ca62c9c9b50b4c9aed7e87bc4bba494855536af3a94dc983d04d7a", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-b76571c61aad9659", "migration": false}, {"id": "9.2.0-c6e1a3e38ccadb95", "cves": [], "html": "<p>      \u65b0\u589e\u5bf9\u7279\u5b9a\u5927\u7248\u672c\u7684 <code>.psqlrc</code> \u6587\u4ef6\u7684\u652f\u6301\uff08Bruce Momjian\uff09\n     </p><p> <span>psql</span> \u6b64\u524d\u5df2\u652f\u6301\u7279\u5b9a\u5c0f\u7248\u672c\u7684 <code>.psqlrc</code> \u6587\u4ef6\u3002\n     </p>", "text": "\u65b0\u589e\u5bf9\u7279\u5b9a\u5927\u7248\u672c\u7684 .psqlrc \u6587\u4ef6\u7684\u652f\u6301\uff08Bruce Momjian\uff09 psql \u6b64\u524d\u5df2\u652f\u6301\u7279\u5b9a\u5c0f\u7248\u672c\u7684 .psqlrc \u6587\u4ef6\u3002", "title": "\u65b0\u589e\u5bf9\u7279\u5b9a\u5927\u7248\u672c\u7684 .psqlrc \u6587\u4ef6\u7684\u652f\u6301", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "4fff17d864f0d5b3d25d27184eb50a1acffe02000043a34c60531242bdc9e59a", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Add support for major-version-specific .psqlrc files (Bruce Momjian) psql already supported minor-version-specific .psqlrc files.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/135", "db_id": "64138b53fd033346a258c9a39b089df3", "patch_ids": [], "statement_hash": "a23a454e821143ad9cbcf8529d086347f57d56217561bf37df1e71d054eacb17", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c6e1a3e38ccadb95", "migration": false}, {"id": "9.2.0-78c32243741e038a", "cves": [], "html": "<p>      \u63d0\u4f9b\u7528\u73af\u5883\u53d8\u91cf\u8986\u76d6 <span>psql</span> \u5386\u53f2\u548c\u542f\u52a8\u6587\u4ef6\u4f4d\u7f6e\u7684\u80fd\u529b\uff08Andrew Dunstan\uff09\n     </p><p>      \u5982\u679c\u8bbe\u7f6e\u4e86 <code>PSQL_HISTORY</code> \u548c <code>PSQLRC</code>\uff0c\u73b0\u5728\u5c06\u7531\u5b83\u4eec\u51b3\u5b9a\u8fd9\u4e9b\u6587\u4ef6\u540d\u3002\n     </p>", "text": "\u63d0\u4f9b\u7528\u73af\u5883\u53d8\u91cf\u8986\u76d6 psql \u5386\u53f2\u548c\u542f\u52a8\u6587\u4ef6\u4f4d\u7f6e\u7684\u80fd\u529b\uff08Andrew Dunstan\uff09 \u5982\u679c\u8bbe\u7f6e\u4e86 PSQL_HISTORY \u548c PSQLRC\uff0c\u73b0\u5728\u5c06\u7531\u5b83\u4eec\u51b3\u5b9a\u8fd9\u4e9b\u6587\u4ef6\u540d\u3002", "title": "\u63d0\u4f9b\u7528\u73af\u5883\u53d8\u91cf\u8986\u76d6 psql \u5386\u53f2\u548c\u542f\u52a8\u6587\u4ef6\u4f4d\u7f6e\u7684\u80fd\u529b", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "2f71b05e72266d46f56cba98317aa9bbc12da422f0b8b9fdc8416eb18350bfff", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Provide environment variable overrides for psql history and startup file locations (Andrew Dunstan) PSQL_HISTORY and PSQLRC now determine these file names if set.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/136", "db_id": "680227f1b4b98a32de4a2973b46d7682", "patch_ids": [], "statement_hash": "81bc54d3e2654b2c16fd4836c5aacbf08a7495fc0a61dd9d6b76d52a9a3379f6", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-78c32243741e038a", "migration": false}, {"id": "9.2.0-a85d7919fdf907f4", "cves": [], "html": "<p>      \u65b0\u589e <code>\\setenv</code> \u547d\u4ee4\uff0c\u7528\u4e8e\u4fee\u6539\u4f20\u9012\u7ed9\u5b50\u8fdb\u7a0b\u7684\u73af\u5883\u53d8\u91cf\uff08Andrew Dunstan\uff09\n     </p>", "text": "\u65b0\u589e \\setenv \u547d\u4ee4\uff0c\u7528\u4e8e\u4fee\u6539\u4f20\u9012\u7ed9\u5b50\u8fdb\u7a0b\u7684\u73af\u5883\u53d8\u91cf\uff08Andrew Dunstan\uff09", "title": "\u65b0\u589e \\setenv \u547d\u4ee4\uff0c\u7528\u4e8e\u4fee\u6539\u4f20\u9012\u7ed9\u5b50\u8fdb\u7a0b\u7684\u73af\u5883\u53d8\u91cf", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "5745a9806b02b95f1efb50faab01f7f9d35c258ca5f8004219cb7e8f30acf980", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Add a \\setenv command to modify the environment variables passed to child processes (Andrew Dunstan)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/137", "db_id": "769c84032d9ae909a50854dbda6032f6", "patch_ids": [], "statement_hash": "c319b844191d0b26af36d940f2ddc768800201f514082c7101b4f7feb5cdd1ff", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a85d7919fdf907f4", "migration": false}, {"id": "9.2.0-b26b1bd97fe631f1", "cves": [], "html": "<p>      \u8ba9 <span>psql</span> \u7684\u4e34\u65f6\u7f16\u8f91\u5668\u6587\u4ef6\u4f7f\u7528 <code>.sql</code> \u6269\u5c55\u540d\uff08Peter Eisentraut\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u5bf9\u6269\u5c55\u540d\u654f\u611f\u7684\u7f16\u8f91\u5668\u9009\u62e9\u6b63\u786e\u7684\u6a21\u5f0f\u3002\n     </p>", "text": "\u8ba9 psql \u7684\u4e34\u65f6\u7f16\u8f91\u5668\u6587\u4ef6\u4f7f\u7528 .sql \u6269\u5c55\u540d\uff08Peter Eisentraut\uff09 \u8fd9\u5141\u8bb8\u5bf9\u6269\u5c55\u540d\u654f\u611f\u7684\u7f16\u8f91\u5668\u9009\u62e9\u6b63\u786e\u7684\u6a21\u5f0f\u3002", "title": "\u8ba9 psql \u7684\u4e34\u65f6\u7f16\u8f91\u5668\u6587\u4ef6\u4f7f\u7528 .sql \u6269\u5c55\u540d", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "7a59f443ff3a3004b3dbdbfefad4071a456e00483e325e86eaacf0dfa5f8aa08", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Name psql's temporary editor files with a .sql extension (Peter Eisentraut) This allows extension-sensitive editors to select the right mode.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/138", "db_id": "519b4f9cac78904383602127090a245e", "patch_ids": [], "statement_hash": "9a0c45eabed848b4df873b7dae14c200d9ee435005ddf4fc6ac1e1f4244cb715", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-b26b1bd97fe631f1", "migration": false}, {"id": "9.2.0-af73282a9b58ed45", "cves": [], "html": "<p>      \u5141\u8bb8 <span>psql</span> \u4f7f\u7528\u96f6\u5b57\u8282\u5b57\u6bb5\u548c\u8bb0\u5f55\u5206\u9694\u7b26\uff08Peter Eisentraut\uff09\n     </p><p>      \u5404\u79cd shell \u5de5\u5177\u4f7f\u7528\u96f6\u5b57\u8282\uff08NUL\uff09\u5206\u9694\u7b26\uff0c\u4f8b\u5982 <span>find</span>\u3002\n     </p>", "text": "\u5141\u8bb8 psql \u4f7f\u7528\u96f6\u5b57\u8282\u5b57\u6bb5\u548c\u8bb0\u5f55\u5206\u9694\u7b26\uff08Peter Eisentraut\uff09 \u5404\u79cd shell \u5de5\u5177\u4f7f\u7528\u96f6\u5b57\u8282\uff08NUL\uff09\u5206\u9694\u7b26\uff0c\u4f8b\u5982 find\u3002", "title": "\u5141\u8bb8 psql \u4f7f\u7528\u96f6\u5b57\u8282\u5b57\u6bb5\u548c\u8bb0\u5f55\u5206\u9694\u7b26", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "6c15a63f91dd74f4f294426a72aef6131815a475912da3d66f3afd77fae2245e", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Allow psql to use zero-byte field and record separators (Peter Eisentraut) Various shell tools use zero-byte (NUL) separators, e.g. find.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/139", "db_id": "127a299bb45912d83e551e9372682c8c", "patch_ids": [], "statement_hash": "bb50c1ca8d1dd4acb945a03657c1202e598410f1f774c52148179fdb208808b5", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-af73282a9b58ed45", "migration": false}, {"id": "9.2.0-c4718c625e12031b", "cves": [], "html": "<p>      \u8ba9 <code>\\timing</code> \u9009\u9879\u62a5\u544a\u5931\u8d25\u67e5\u8be2\u7684\u8017\u65f6\uff08Magnus Hagander\uff09\n     </p><p>      \u6b64\u524d\u53ea\u5bf9\u6210\u529f\u67e5\u8be2\u62a5\u544a\u8017\u65f6\u3002\n     </p>", "text": "\u8ba9 \\timing \u9009\u9879\u62a5\u544a\u5931\u8d25\u67e5\u8be2\u7684\u8017\u65f6\uff08Magnus Hagander\uff09 \u6b64\u524d\u53ea\u5bf9\u6210\u529f\u67e5\u8be2\u62a5\u544a\u8017\u65f6\u3002", "title": "\u8ba9 \\timing \u9009\u9879\u62a5\u544a\u5931\u8d25\u67e5\u8be2\u7684\u8017\u65f6", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "0664adef86fb78a5c05a0c6e4e7b2aa4bac7b8beadb0e4dd7f57f9cd51c52fa5", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Make the \\timing option report times for failed queries (Magnus Hagander) Previously times were reported only for successful queries.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/140", "db_id": "44871e3a76fac3a0cc1a623420713e1f", "patch_ids": [], "statement_hash": "6f4243c2f0578f2ece25536a7c56f179aac698773f7d02d9ce9fbec4a347f0a5", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c4718c625e12031b", "migration": false}, {"id": "9.2.0-a469e7533f6a3470", "cves": [], "html": "<p>      \u7edf\u4e00\u5e76\u6536\u7d27 <span>psql</span> \u5bf9 <code>\\copy</code> \u548c SQL <code>COPY</code> \u7684\u5904\u7406\uff08Noah Misch\uff09\n     </p><p>      \u6b64\u4fee\u590d\u4f7f\u5931\u8d25\u884c\u4e3a\u66f4\u53ef\u9884\u671f\uff0c\u5e76\u9075\u5faa <code>\\set ON_ERROR_ROLLBACK</code>\u3002\n     </p>", "text": "\u7edf\u4e00\u5e76\u6536\u7d27 psql \u5bf9 \\copy \u548c SQL COPY \u7684\u5904\u7406\uff08Noah Misch\uff09 \u6b64\u4fee\u590d\u4f7f\u5931\u8d25\u884c\u4e3a\u66f4\u53ef\u9884\u671f\uff0c\u5e76\u9075\u5faa \\set ON_ERROR_ROLLBACK\u3002", "title": "\u7edf\u4e00\u5e76\u6536\u7d27 psql \u5bf9 \\copy \u548c SQL COPY \u7684\u5904\u7406", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "da0efede78abde6fd91ccefe2239be05e373d7015d19235c17605219a46becc0", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "psql"], "commit_groups": [], "identity_text": "Unify and tighten psql's treatment of \\copy and SQL COPY (Noah Misch) This fix makes failure behavior more predictable and honors \\set ON_ERROR_ROLLBACK.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/141", "db_id": "589a236b00eb2550c54492cf5c5d8111", "patch_ids": [], "statement_hash": "07e0c43a79fc92d8a84fdc522ae1d6fee0629e430f17442a70e7451b2f520ead", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a469e7533f6a3470", "migration": false}, {"id": "9.2.0-6ae42260153d5cca", "cves": [], "html": "<p>      \u8ba9 <code>\\d</code> \u5728\u5e8f\u5217\u4e0a\u663e\u793a\u62e5\u6709\u5b83\u7684\u8868/\u5217\u540d\uff08Magnus Hagander\uff09\n     </p>", "text": "\u8ba9 \\d \u5728\u5e8f\u5217\u4e0a\u663e\u793a\u62e5\u6709\u5b83\u7684\u8868/\u5217\u540d\uff08Magnus Hagander\uff09", "title": "\u8ba9 \\d \u5728\u5e8f\u5217\u4e0a\u663e\u793a\u62e5\u6709\u5b83\u7684\u8868/\u5217\u540d", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / \u4fe1\u606f\u547d\u4ee4", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "c3f5001d46e1192ac8f924d94ee05ca3066cfb3e99152f61428dc40b4e3492c1", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "\u4fe1\u606f\u547d\u4ee4"], "commit_groups": [], "identity_text": "Make \\d on a sequence show the table/column name owning it (Magnus Hagander)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/142", "db_id": "c6e7cc9e5f2ad03a572f25b16402b618", "patch_ids": [], "statement_hash": "d6d6d280f4537bf269e54011177b35890f3a947b79f7a646ca0d1e249939e341", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6ae42260153d5cca", "migration": false}, {"id": "9.2.0-9ae74622f47c14aa", "cves": [], "html": "<p>      \u5728 <code>\\d+</code> \u4e2d\u663e\u793a\u5217\u7684\u7edf\u8ba1\u76ee\u6807\uff08Magnus Hagander\uff09\n     </p>", "text": "\u5728 \\d+ \u4e2d\u663e\u793a\u5217\u7684\u7edf\u8ba1\u76ee\u6807\uff08Magnus Hagander\uff09", "title": "\u5728 \\d+ \u4e2d\u663e\u793a\u5217\u7684\u7edf\u8ba1\u76ee\u6807", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / \u4fe1\u606f\u547d\u4ee4", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "c79a5d4999547e40e64f1ae7d861376614de7a1b5a5d0fc30dd495973d780072", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "\u4fe1\u606f\u547d\u4ee4"], "commit_groups": [], "identity_text": "Show statistics target for columns in \\d+ (Magnus Hagander)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/143", "db_id": "2b7b6a3a75ef0bd7f74a245ae4c4fb2f", "patch_ids": [], "statement_hash": "88b665506f533f0d2e1dd690d5bbf5b0e7e9bd4340c7812a47e68b96df20c118", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-9ae74622f47c14aa", "migration": false}, {"id": "9.2.0-5705df4c71fe97a2", "cves": [], "html": "<p>      \u5728 <code>\\du</code> \u4e2d\u663e\u793a\u89d2\u8272\u53e3\u4ee4\u8fc7\u671f\u65e5\u671f\uff08Fabr\u00edzio de Royes Mello\uff09\n     </p>", "text": "\u5728 \\du \u4e2d\u663e\u793a\u89d2\u8272\u53e3\u4ee4\u8fc7\u671f\u65e5\u671f\uff08Fabr\u00edzio de Royes Mello\uff09", "title": "\u5728 \\du \u4e2d\u663e\u793a\u89d2\u8272\u53e3\u4ee4\u8fc7\u671f\u65e5\u671f", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / \u4fe1\u606f\u547d\u4ee4", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "3731c51e1bdedee207c898ff7b70c4cb313c3ef56ef577ac13f4f1f5762d678b", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "\u4fe1\u606f\u547d\u4ee4"], "commit_groups": [], "identity_text": "Show role password expiration dates in \\du (Fabr\u00edzio de Royes Mello)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/144", "db_id": "b805fe50abbfbd4239546fd71f308126", "patch_ids": [], "statement_hash": "ab4f1490e6a07a9c0970a2eb07c671ea00018ba3aebc82f5b332b2b25b060949", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-5705df4c71fe97a2", "migration": false}, {"id": "9.2.0-834489c4f07ca470", "cves": [], "html": "<p>      \u663e\u793a\u8f6c\u6362\u3001\u7f16\u7801\u8f6c\u6362\u3001\u57df\u548c\u8bed\u8a00\u7684\u6ce8\u91ca\uff08Josh Kupershmidt\uff09\n     </p><p>      \u5b83\u4eec\u5206\u522b\u5305\u542b\u5728 <code>\\dC+</code>\u3001<code>\\dc+</code>\u3001<code>\\dD+</code> \u548c <code>\\dL</code> \u7684\u8f93\u51fa\u4e2d\u3002\n     </p>", "text": "\u663e\u793a\u8f6c\u6362\u3001\u7f16\u7801\u8f6c\u6362\u3001\u57df\u548c\u8bed\u8a00\u7684\u6ce8\u91ca\uff08Josh Kupershmidt\uff09 \u5b83\u4eec\u5206\u522b\u5305\u542b\u5728 \\dC+\u3001\\dc+\u3001\\dD+ \u548c \\dL \u7684\u8f93\u51fa\u4e2d\u3002", "title": "\u663e\u793a\u8f6c\u6362\u3001\u7f16\u7801\u8f6c\u6362\u3001\u57df\u548c\u8bed\u8a00\u7684\u6ce8\u91ca", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / \u4fe1\u606f\u547d\u4ee4", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "4822bc5b834d5a1f6cb13ed74bc0ad5f5b9d5be521228526ad5a3df0254c59b5", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "\u4fe1\u606f\u547d\u4ee4"], "commit_groups": [], "identity_text": "Display comments for casts, conversions, domains, and languages (Josh Kupershmidt) These are included in the output of \\dC+, \\dc+, \\dD+, and \\dL respectively.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/145", "db_id": "d807158b30d0596994bb3515ab6e02e0", "patch_ids": [], "statement_hash": "2f37ad02db7b3b4404858638aee187e6a367a1420fa161def9b8eb9b536ca577", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-834489c4f07ca470", "migration": false}, {"id": "9.2.0-208e10e08f9cda8c", "cves": [], "html": "<p>      \u663e\u793a <acronym>SQL</acronym>/<acronym>MED</acronym> \u5bf9\u8c61\u7684\u6ce8\u91ca\uff08Josh Kupershmidt\uff09\n     </p><p>      \u5b83\u4eec\u5206\u522b\u5305\u542b\u5728\u5916\u90e8\u670d\u52a1\u5668\u3001\u5916\u90e8\u8868\u548c\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u7684 <code>\\des+</code>\u3001<code>\\det+</code> \u548c <code>\\dew+</code> \u8f93\u51fa\u4e2d\u3002\n     </p>", "text": "\u663e\u793a SQL/MED \u5bf9\u8c61\u7684\u6ce8\u91ca\uff08Josh Kupershmidt\uff09 \u5b83\u4eec\u5206\u522b\u5305\u542b\u5728\u5916\u90e8\u670d\u52a1\u5668\u3001\u5916\u90e8\u8868\u548c\u5916\u90e8\u6570\u636e\u5305\u88c5\u5668\u7684 \\des+\u3001\\det+ \u548c \\dew+ \u8f93\u51fa\u4e2d\u3002", "title": "\u663e\u793a SQL/MED \u5bf9\u8c61\u7684\u6ce8\u91ca", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / \u4fe1\u606f\u547d\u4ee4", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "00def02552eb495a477ac2eaf437d6fa886fc42c1cd08c8094f93e3d69d0f332", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "\u4fe1\u606f\u547d\u4ee4"], "commit_groups": [], "identity_text": "Display comments for SQL/MED objects (Josh Kupershmidt) These are included in the output of \\des+, \\det+, and \\dew+ for foreign servers, foreign tables, and foreign data wrappers respectively.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/146", "db_id": "deb6cb74ff9a79cb5445a7d6f31dddfd", "patch_ids": [], "statement_hash": "75c7f20e148a849d6334aca200d1e2209499aa773f404482daed8e1882fe46d5", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-208e10e08f9cda8c", "migration": false}, {"id": "9.2.0-8f8fa3e2705ccb79", "cves": [], "html": "<p>      \u66f4\u6539 <code>\\dd</code>\uff0c\u4f7f\u5176\u53ea\u663e\u793a\u6ca1\u6709\u4e13\u5c5e\u53cd\u659c\u6760\u547d\u4ee4\u7684\u5bf9\u8c61\u7c7b\u578b\u7684\u6ce8\u91ca\uff08Josh Kupershmidt\uff09\n     </p>", "text": "\u66f4\u6539 \\dd\uff0c\u4f7f\u5176\u53ea\u663e\u793a\u6ca1\u6709\u4e13\u5c5e\u53cd\u659c\u6760\u547d\u4ee4\u7684\u5bf9\u8c61\u7c7b\u578b\u7684\u6ce8\u91ca\uff08Josh Kupershmidt\uff09", "title": "\u66f4\u6539 \\dd\uff0c\u4f7f\u5176\u53ea\u663e\u793a\u6ca1\u6709\u4e13\u5c5e\u53cd\u659c\u6760\u547d\u4ee4\u7684\u5bf9\u8c61\u7c7b\u578b\u7684\u6ce8\u91ca", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / \u4fe1\u606f\u547d\u4ee4", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "67197e2dd3d43a31ea237454d397484ff5fe2685df43742f4fbb1d729082593d", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "\u4fe1\u606f\u547d\u4ee4"], "commit_groups": [], "identity_text": "Change \\dd to display comments only for object types without their own backslash command (Josh Kupershmidt)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/147", "db_id": "404a6085bf5a22a9f834ade6e6534e1d", "patch_ids": [], "statement_hash": "125d7b5cc3fa3275232b40908e24bb4e9df42cf068c774d9a36b1c2d4eff9aaa", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-8f8fa3e2705ccb79", "migration": false}, {"id": "9.2.0-2a358ba0321059d6", "cves": [], "html": "<p>      \u5728 <span>psql</span> Tab \u8865\u5168\u4e2d\uff0c\u6309\u7167\u65b0\u7684 <a href=\"/docs/9.2/app-psql.html#APP-PSQL-VARIABLES\" title=\"Variables\"><code>COMP_KEYWORD_CASE</code></a> \u8bbe\u7f6e\u4ee5\u5927\u5199\u6216\u5c0f\u5199\u8865\u5168 <acronym>SQL</acronym> \u5173\u952e\u5b57\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u5728 psql Tab \u8865\u5168\u4e2d\uff0c\u6309\u7167\u65b0\u7684 COMP_KEYWORD_CASE \u8bbe\u7f6e\u4ee5\u5927\u5199\u6216\u5c0f\u5199\u8865\u5168 SQL \u5173\u952e\u5b57\uff08Peter Eisentraut\uff09", "title": "\u5728 psql Tab \u8865\u5168\u4e2d\uff0c\u6309\u7167\u65b0\u7684 COMP_KEYWORD_CASE \u8bbe\u7f6e\u4ee5\u5927\u5199\u6216\u5c0f\u5199\u8865\u5168 SQL \u5173\u952e\u5b57", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / Tab \u8865\u5168", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "2100698424095c0449d17d8d7c1a9d6d618d907299efb13d65c43c5c143fef8b", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "Tab \u8865\u5168"], "commit_groups": [], "identity_text": "In psql tab completion, complete SQL keywords in either upper or lower case according to the new COMP_KEYWORD_CASE setting (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/148", "db_id": "d0ec9ae39108c9832ee6f059904a31b3", "patch_ids": [], "statement_hash": "6baef4d8ef73ff425c7331d4cd87fd70bbdf0bd5e0e1274059ff0ea0fcdca968", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-2a358ba0321059d6", "migration": false}, {"id": "9.2.0-fbde31b519bdfb1e", "cves": [], "html": "<p>      \u65b0\u589e <code>EXECUTE</code> \u7684 Tab \u8865\u5168\u652f\u6301\uff08Andreas Karlsson\uff09\n     </p>", "text": "\u65b0\u589e EXECUTE \u7684 Tab \u8865\u5168\u652f\u6301\uff08Andreas Karlsson\uff09", "title": "\u65b0\u589e EXECUTE \u7684 Tab \u8865\u5168\u652f\u6301", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / Tab \u8865\u5168", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "a3f4affe178b548647e492def89aabcb2f635386b8550b1aa7734d5fb89c81fb", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "Tab \u8865\u5168"], "commit_groups": [], "identity_text": "Add tab completion support for EXECUTE (Andreas Karlsson)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/149", "db_id": "690f0cf4b33a12e29c428380deadf1d4", "patch_ids": [], "statement_hash": "bf1dfe88b23ebc0d8e513adf06cc11fbfff1174ba2cd06d1f86209431edbddd4", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-fbde31b519bdfb1e", "migration": false}, {"id": "9.2.0-d9d72e595d265232", "cves": [], "html": "<p>      \u5141\u8bb8 <code>GRANT</code>/<code>REVOKE</code> \u4e2d\u89d2\u8272\u5f15\u7528\u7684 Tab \u8865\u5168\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u5141\u8bb8 GRANT/REVOKE \u4e2d\u89d2\u8272\u5f15\u7528\u7684 Tab \u8865\u5168\uff08Peter Eisentraut\uff09", "title": "\u5141\u8bb8 GRANT/REVOKE \u4e2d\u89d2\u8272\u5f15\u7528\u7684 Tab \u8865\u5168", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / Tab \u8865\u5168", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "0e15e1c61cb63964d92402b3de6eaa625722465092b61e02421a9a0bc868bb97", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "Tab \u8865\u5168"], "commit_groups": [], "identity_text": "Allow tab completion of role references in GRANT/REVOKE (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/150", "db_id": "bbec9defaa43b77790f96ccf57a6da1d", "patch_ids": [], "statement_hash": "34d7b4793a4f6944ef05a393e76f4df8a365597654d0cf20ea64f1ba7f1f948e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d9d72e595d265232", "migration": false}, {"id": "9.2.0-2d1432a1510ceaf8", "cves": [], "html": "<p>      \u5141\u8bb8\u6587\u4ef6\u540d\u7684 Tab \u8865\u5168\u5728\u5fc5\u8981\u65f6\u63d0\u4f9b\u5f15\u53f7\uff08Noah Misch\uff09\n     </p>", "text": "\u5141\u8bb8\u6587\u4ef6\u540d\u7684 Tab \u8865\u5168\u5728\u5fc5\u8981\u65f6\u63d0\u4f9b\u5f15\u53f7\uff08Noah Misch\uff09", "title": "\u5141\u8bb8\u6587\u4ef6\u540d\u7684 Tab \u8865\u5168\u5728\u5fc5\u8981\u65f6\u63d0\u4f9b\u5f15\u53f7", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / Tab \u8865\u5168", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "1340fc7403a22eb7c6c58c51697f2b1b628eaffec4288ff9c276d0277f8d952c", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "Tab \u8865\u5168"], "commit_groups": [], "identity_text": "Allow tab completion of file names to supply quotes, when necessary (Noah Misch)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/151", "db_id": "797a54efc7b193cf3f44bd735cf878c5", "patch_ids": [], "statement_hash": "15b21a7fa670d487b6079efa124ee62a34ff5b1d66783a3e023ab364deaf749d", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-2d1432a1510ceaf8", "migration": false}, {"id": "9.2.0-c31fc20fd73d41e5", "cves": [], "html": "<p>      \u66f4\u6539 <code>TABLE</code> \u7684 Tab \u8865\u5168\u652f\u6301\uff0c\u4f7f\u5176\u4e5f\u5305\u542b\u89c6\u56fe\uff08Magnus Hagander\uff09\n     </p>", "text": "\u66f4\u6539 TABLE \u7684 Tab \u8865\u5168\u652f\u6301\uff0c\u4f7f\u5176\u4e5f\u5305\u542b\u89c6\u56fe\uff08Magnus Hagander\uff09", "title": "\u66f4\u6539 TABLE \u7684 Tab \u8865\u5168\u652f\u6301\uff0c\u4f7f\u5176\u4e5f\u5305\u542b\u89c6\u56fe", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / Tab \u8865\u5168", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "b297b79cf2ddcce1f6de4e101504f65e3e700a8289c49b42560b285a91a67f56", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "Tab \u8865\u5168"], "commit_groups": [], "identity_text": "Change tab completion support for TABLE to also include views (Magnus Hagander)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/152", "db_id": "5a9c09733fce30d9545d4bab17d41bb2", "patch_ids": [], "statement_hash": "257557fa230a7b7026cca2b07b205e44ba74357b9ecb9c47dc41ee69c7e4a252", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c31fc20fd73d41e5", "migration": false}, {"id": "9.2.0-2fc81104d54addb2", "cves": [], "html": "<p>      \u4e3a <span>pg_dump</span> \u65b0\u589e <code>--exclude-table-data</code> \u9009\u9879\uff08Andrew Dunstan\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u6309\u8868\u53ea\u8f6c\u50a8\u8868\u7684\u5b9a\u4e49\u800c\u4e0d\u8f6c\u50a8\u5176\u6570\u636e\u3002\n     </p>", "text": "\u4e3a pg_dump \u65b0\u589e --exclude-table-data \u9009\u9879\uff08Andrew Dunstan\uff09 \u8fd9\u5141\u8bb8\u6309\u8868\u53ea\u8f6c\u50a8\u8868\u7684\u5b9a\u4e49\u800c\u4e0d\u8f6c\u50a8\u5176\u6570\u636e\u3002", "title": "\u4e3a pg_dump \u65b0\u589e --exclude-table-data \u9009\u9879", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "7fa784e8db52b493d1e845bef2e0dcc5df8147f1b9b1e3d9eaf0b788bbf2dc3d", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Add an --exclude-table-data option to pg_dump (Andrew Dunstan) This allows dumping of a table's definition but not its data, on a per-table basis.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/153", "db_id": "c3f74a82baded7b6d767d6013a9d7b74", "patch_ids": [], "statement_hash": "b410d285e987dca44daebda23e6e217ae9af74ced0e3849a94d57cf60be73ea3", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-2fc81104d54addb2", "migration": false}, {"id": "9.2.0-9a232df15a72672a", "cves": [], "html": "<p>      \u4e3a <span>pg_dump</span> \u548c <span>pg_restore</span> \u65b0\u589e <code>--section</code> \u9009\u9879\uff08Andrew Dunstan\uff09\n     </p><p>      \u6709\u6548\u503c\u4e3a <code>pre-data</code>\u3001<code>data</code> \u548c <code>post-data</code>\u3002\u8be5\u9009\u9879\u53ef\u4ee5\u7ed9\u51fa\u591a\u6b21\u4ee5\u9009\u62e9\u4e24\u4e2a\u6216\u66f4\u591a\u8282\u3002\n     </p>", "text": "\u4e3a pg_dump \u548c pg_restore \u65b0\u589e --section \u9009\u9879\uff08Andrew Dunstan\uff09 \u6709\u6548\u503c\u4e3a pre-data\u3001data \u548c post-data\u3002\u8be5\u9009\u9879\u53ef\u4ee5\u7ed9\u51fa\u591a\u6b21\u4ee5\u9009\u62e9\u4e24\u4e2a\u6216\u66f4\u591a\u8282\u3002", "title": "\u4e3a pg_dump \u548c pg_restore \u65b0\u589e --section \u9009\u9879", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "a6996942091da6e4d9807e5175d0488afed2e90b47b2418f2e7b0f1a23d92cb4", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Add a --section option to pg_dump and pg_restore (Andrew Dunstan) Valid values are pre-data, data, and post-data. The option can be given more than once to select two or more sections.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/154", "db_id": "bc7172fb52651dcf89051b57b7fea4f3", "patch_ids": [], "statement_hash": "76cea9cdd1af2fb4ab71b491c3a1761e8412dfb4ad69db9c7b7da061614ad358", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-9a232df15a72672a", "migration": false}, {"id": "9.2.0-bb6a9a03c1ae6cf4", "cves": [], "html": "<p>      \u8ba9<a href=\"/docs/9.2/app-pg-dumpall.html\" title=\"pg_dumpall\"><span>pg_dumpall</span></a>\u5148\u8f6c\u50a8\u6240\u6709\u89d2\u8272\uff0c\u518d\u8f6c\u50a8\u89d2\u8272\u4e0a\u7684\u6240\u6709\u914d\u7f6e\u8bbe\u7f6e\uff08Phil Sorber\uff09\n     </p><p>      \u8fd9\u5141\u8bb8\u89d2\u8272\u7684\u914d\u7f6e\u8bbe\u7f6e\u63d0\u53ca\u5176\u4ed6\u89d2\u8272\u800c\u4e0d\u4ea7\u751f\u9519\u8bef\u3002\n     </p>", "text": "\u8ba9pg_dumpall\u5148\u8f6c\u50a8\u6240\u6709\u89d2\u8272\uff0c\u518d\u8f6c\u50a8\u89d2\u8272\u4e0a\u7684\u6240\u6709\u914d\u7f6e\u8bbe\u7f6e\uff08Phil Sorber\uff09 \u8fd9\u5141\u8bb8\u89d2\u8272\u7684\u914d\u7f6e\u8bbe\u7f6e\u63d0\u53ca\u5176\u4ed6\u89d2\u8272\u800c\u4e0d\u4ea7\u751f\u9519\u8bef\u3002", "title": "\u8ba9pg_dumpall\u5148\u8f6c\u50a8\u6240\u6709\u89d2\u8272\uff0c\u518d\u8f6c\u50a8\u89d2\u8272\u4e0a\u7684\u6240\u6709\u914d\u7f6e\u8bbe\u7f6e", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "e43915a9b8d1026f467be524094db85978e21abdbe3723084106314f42846d82", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Make pg_dumpall dump all roles first, then all configuration settings on roles (Phil Sorber) This allows a role's configuration settings to mention other roles without generating an error.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/155", "db_id": "bebb6c6ecb7f8e3d10e8e2863eb66dc4", "patch_ids": [], "statement_hash": "a9dc36e7a54d2231872d07f8c2a9de231f30d7b7462c8a868708b8c3752d2274", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-bb6a9a03c1ae6cf4", "migration": false}, {"id": "9.2.0-9d479901eafe302e", "cves": [], "html": "<p>      \u5141\u8bb8 <span>pg_dumpall</span> \u5728\u65b0\u96c6\u7c07\u7f3a\u5c11 <code>postgres</code> \u6570\u636e\u5e93\u65f6\u907f\u514d\u9519\u8bef\uff08Robert Haas\uff09\n     </p>", "text": "\u5141\u8bb8 pg_dumpall \u5728\u65b0\u96c6\u7c07\u7f3a\u5c11 postgres \u6570\u636e\u5e93\u65f6\u907f\u514d\u9519\u8bef\uff08Robert Haas\uff09", "title": "\u5141\u8bb8 pg_dumpall \u5728\u65b0\u96c6\u7c07\u7f3a\u5c11 postgres \u6570\u636e\u5e93\u65f6\u907f\u514d\u9519\u8bef", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "21080eea45da6c47dfaff67ef1aeedf4c19cc0234afcbe75ad1ee63569c780fd", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Allow pg_dumpall to avoid errors if the postgres database is missing in the new cluster (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/156", "db_id": "22b77d7364c2fc90c0d3e5055d84eaa7", "patch_ids": [], "statement_hash": "ade63f01f8c02c3aeca1e25e64f35d6dabf739b24f7c9063d6be4369d8e57979", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-9d479901eafe302e", "migration": false}, {"id": "9.2.0-e974f844178aca1a", "cves": [], "html": "<p>      \u6309\u7528\u6237\u540d\u987a\u5e8f\u8f6c\u50a8\u5916\u90e8\u670d\u52a1\u5668\u7528\u6237\u6620\u5c04\uff08Peter Eisentraut\uff09\n     </p><p>      \u8fd9\u6709\u52a9\u4e8e\u4ea7\u751f\u786e\u5b9a\u6027\u7684\u8f6c\u50a8\u6587\u4ef6\u3002\n     </p>", "text": "\u6309\u7528\u6237\u540d\u987a\u5e8f\u8f6c\u50a8\u5916\u90e8\u670d\u52a1\u5668\u7528\u6237\u6620\u5c04\uff08Peter Eisentraut\uff09 \u8fd9\u6709\u52a9\u4e8e\u4ea7\u751f\u786e\u5b9a\u6027\u7684\u8f6c\u50a8\u6587\u4ef6\u3002", "title": "\u6309\u7528\u6237\u540d\u987a\u5e8f\u8f6c\u50a8\u5916\u90e8\u670d\u52a1\u5668\u7528\u6237\u6620\u5c04", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "eb02cc9f19fb320bf43c0deda260739c5eb4e4d524337d5e3944528bd5505bd3", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Dump foreign server user mappings in user name order (Peter Eisentraut) This helps produce deterministic dump files.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/157", "db_id": "4d4630454e24771972f562a799b98033", "patch_ids": [], "statement_hash": "cffc92f3ca1ab3a73360ace11f3109b98c28938f6d5809ff5a98bfafdbf6235c", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e974f844178aca1a", "migration": false}, {"id": "9.2.0-e756a5e270f427bc", "cves": [], "html": "<p>      \u4ee5\u53ef\u9884\u6d4b\u7684\u987a\u5e8f\u8f6c\u50a8\u64cd\u4f5c\u7b26\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u4ee5\u53ef\u9884\u6d4b\u7684\u987a\u5e8f\u8f6c\u50a8\u64cd\u4f5c\u7b26\uff08Peter Eisentraut\uff09", "title": "\u4ee5\u53ef\u9884\u6d4b\u7684\u987a\u5e8f\u8f6c\u50a8\u64cd\u4f5c\u7b26", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "7f34e4956d316cfd81ebe2e64de44d8d96160a34d9ba0352d0a04220324bf6c8", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Dump operators in a predictable order (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/158", "db_id": "563ca3ea21581f5806658a5e9cfb24f1", "patch_ids": [], "statement_hash": "7667a4211d8b1ed4b6f500bffb49665a9babc2722f30c15439dc1c357dc79558", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e756a5e270f427bc", "migration": false}, {"id": "9.2.0-a79231c926957b6f", "cves": [], "html": "<p>      \u6536\u7d27 <span>pg_dump</span> \u8f6c\u50a8\u6269\u5c55\u914d\u7f6e\u8868\u7684\u89c4\u5219\uff08Tom Lane\uff09\n     </p>", "text": "\u6536\u7d27 pg_dump \u8f6c\u50a8\u6269\u5c55\u914d\u7f6e\u8868\u7684\u89c4\u5219\uff08Tom Lane\uff09", "title": "\u6536\u7d27 pg_dump \u8f6c\u50a8\u6269\u5c55\u914d\u7f6e\u8868\u7684\u89c4\u5219", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "2be17a702cae5684aa82b0971a0bc393fc51832feb36134efd36c21eaf7f5d35", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Tighten rules for when extension configuration tables are dumped by pg_dump (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/159", "db_id": "2e8a959e099a318822fedcab75dfe38f", "patch_ids": [], "statement_hash": "2c0a2a202586b579268f225f25733c70b5e66678ca6034a68f228d8cddd6f7eb", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a79231c926957b6f", "migration": false}, {"id": "9.2.0-be0306febf6ced56", "cves": [], "html": "<p>      \u8ba9 <span>pg_dump</span> \u751f\u6210\u66f4\u6709\u7528\u7684\u4f9d\u8d56\u4fe1\u606f\uff08Tom Lane\uff09\n     </p><p>      \u5f52\u6863\u683c\u5f0f\u8f6c\u50a8\u4e2d\u5305\u542b\u7684\u4f9d\u8d56\u94fe\u63a5\u6b64\u524d\u7528\u5904\u975e\u5e38\u6709\u9650\uff0c\u56e0\u4e3a\u5b83\u4eec\u7ecf\u5e38\u5f15\u7528\u8f6c\u50a8\u4e2d\u6839\u672c\u6ca1\u6709\u51fa\u73b0\u7684\u5bf9\u8c61\u3002\u73b0\u5728\u5b83\u4eec\u8868\u793a\u88ab\u8f6c\u50a8\u5bf9\u8c61\u4e4b\u95f4\u7684\u5b9e\u9645\u4f9d\u8d56\uff08\u53ef\u80fd\u662f\u95f4\u63a5\u7684\uff09\u3002\n     </p>", "text": "\u8ba9 pg_dump \u751f\u6210\u66f4\u6709\u7528\u7684\u4f9d\u8d56\u4fe1\u606f\uff08Tom Lane\uff09 \u5f52\u6863\u683c\u5f0f\u8f6c\u50a8\u4e2d\u5305\u542b\u7684\u4f9d\u8d56\u94fe\u63a5\u6b64\u524d\u7528\u5904\u975e\u5e38\u6709\u9650\uff0c\u56e0\u4e3a\u5b83\u4eec\u7ecf\u5e38\u5f15\u7528\u8f6c\u50a8\u4e2d\u6839\u672c\u6ca1\u6709\u51fa\u73b0\u7684\u5bf9\u8c61\u3002\u73b0\u5728\u5b83\u4eec\u8868\u793a\u88ab\u8f6c\u50a8\u5bf9\u8c61\u4e4b\u95f4\u7684\u5b9e\u9645\u4f9d\u8d56\uff08\u53ef\u80fd\u662f\u95f4\u63a5\u7684\uff09\u3002", "title": "\u8ba9 pg_dump \u751f\u6210\u66f4\u6709\u7528\u7684\u4f9d\u8d56\u4fe1\u606f", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "a231a900f0e957e1e428dfc425a199fd44c49e2cf9608817f53299c85759b466", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Make pg_dump emit more useful dependency information (Tom Lane) The dependency links included in archive-format dumps were formerly of very limited use, because they frequently referenced objects that appeared nowhere in the dump. Now they represent actual dependencies (possibly indirect) among the dumped objects.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/160", "db_id": "ed2ef4a6f0e4496982777b36b26a5002", "patch_ids": [], "statement_hash": "072d5ae0565f41a0a0f36d4f40da86b9280d58bd306203f5f59e272aaf2ce001", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-be0306febf6ced56", "migration": false}, {"id": "9.2.0-a37b577cc1fb9367", "cves": [], "html": "<p>      \u6539\u8fdb <span>pg_dump</span> \u8f6c\u50a8\u5927\u91cf\u6570\u636e\u5e93\u5bf9\u8c61\u65f6\u7684\u6027\u80fd\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb pg_dump \u8f6c\u50a8\u5927\u91cf\u6570\u636e\u5e93\u5bf9\u8c61\u65f6\u7684\u6027\u80fd\uff08Tom Lane\uff09", "title": "\u6539\u8fdb pg_dump \u8f6c\u50a8\u5927\u91cf\u6570\u636e\u5e93\u5bf9\u8c61\u65f6\u7684\u6027\u80fd", "commits": [], "section": "\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f / pg_dump", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "6e276e7e51a116d098b5598049921b983dc58fd0a8e0ba126eaa84eb05c0c7de", "section_path": ["\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f", "pg_dump"], "commit_groups": [], "identity_text": "Improve pg_dump's performance when dumping many database objects (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/161", "db_id": "bc2bab8f44f089029c0c021b6f878c21", "patch_ids": [], "statement_hash": "a9b39f11ab56b4c886a9841f7b059a2ff91b0f4968e7c3f0b64e8342b406f977", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-a37b577cc1fb9367", "migration": false}, {"id": "9.2.0-0d3226622fae68e0", "cves": [], "html": "<p>      \u5141\u8bb8 <span>libpq</span> \u8fde\u63a5\u4e32\u91c7\u7528 <a href=\"/docs/9.2/libpq.html#LIBPQ-CONNSTRING\" title=\"31.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\"><acronym>URI</acronym></a> \u683c\u5f0f\uff08Alexander Shulgin\uff09\n     </p><p>      \u8bed\u6cd5\u4ee5 <code>postgres://</code> \u5f00\u5934\u3002\u8fd9\u5141\u8bb8\u5e94\u7528\u907f\u514d\u4e3a\u8868\u793a\u6570\u636e\u5e93\u8fde\u63a5\u7684 URI \u5b9e\u73b0\u81ea\u5df1\u7684\u89e3\u6790\u5668\u3002\n     </p>", "text": "\u5141\u8bb8 libpq \u8fde\u63a5\u4e32\u91c7\u7528 URI \u683c\u5f0f\uff08Alexander Shulgin\uff09 \u8bed\u6cd5\u4ee5 postgres:// \u5f00\u5934\u3002\u8fd9\u5141\u8bb8\u5e94\u7528\u907f\u514d\u4e3a\u8868\u793a\u6570\u636e\u5e93\u8fde\u63a5\u7684 URI \u5b9e\u73b0\u81ea\u5df1\u7684\u89e3\u6790\u5668\u3002", "title": "\u5141\u8bb8 libpq \u8fde\u63a5\u4e32\u91c7\u7528 URI \u683c\u5f0f", "commits": [], "section": "libpq", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.13", "source_hash": "51d2e7569570111f43cc75dec3946770401eca29f4fbac9493fdf451e8540e29", "section_path": ["libpq"], "commit_groups": [], "identity_text": "Allow libpq connection strings to have the format of a URI (Alexander Shulgin) The syntax begins with postgres://. This can allow applications to avoid implementing their own parser for URIs representing database connections.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/162", "db_id": "20312ea69a3a477935467d04f5d0a53b", "patch_ids": [], "statement_hash": "8ba56ed76da87bcdbae229ac57fd7f568acc0fb7f8c4ae61de4c9973739f8ab4", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-0d3226622fae68e0", "migration": false}, {"id": "9.2.0-13c2304d39096f0b", "cves": [], "html": "<p>      \u65b0\u589e\u7528\u4e8e\u7981\u7528 <acronym>SSL</acronym> \u538b\u7f29\u7684<a href=\"/docs/9.2/libpq.html#LIBPQ-CONNECT-SSLCOMPRESSION\">\u8fde\u63a5\u9009\u9879</a>\uff08Laurenz Albe\uff09\n     </p><p>      \u8fd9\u53ef\u7528\u4e8e\u6d88\u9664\u5feb\u901f\u7f51\u7edc\u4e0a <acronym>SSL</acronym> \u538b\u7f29\u7684\u5f00\u9500\u3002\n     </p>", "text": "\u65b0\u589e\u7528\u4e8e\u7981\u7528 SSL \u538b\u7f29\u7684\u8fde\u63a5\u9009\u9879\uff08Laurenz Albe\uff09 \u8fd9\u53ef\u7528\u4e8e\u6d88\u9664\u5feb\u901f\u7f51\u7edc\u4e0a SSL \u538b\u7f29\u7684\u5f00\u9500\u3002", "title": "\u65b0\u589e\u7528\u4e8e\u7981\u7528 SSL \u538b\u7f29\u7684\u8fde\u63a5\u9009\u9879", "commits": [], "section": "libpq", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.13", "source_hash": "787fe9579dc9bd9b4e263790dcbf8a87b31c66ba9ca291193cb5c5b588d83026", "section_path": ["libpq"], "commit_groups": [], "identity_text": "Add a connection option to disable SSL compression (Laurenz Albe) This can be used to remove the overhead of SSL compression on fast networks.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/163", "db_id": "38da4b7462445fcb6b4a9ed66932bbf3", "patch_ids": [], "statement_hash": "9a95770687adef036b191d3643bf09db5682e6a9059ace616c028b094c508eec", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-13c2304d39096f0b", "migration": false}, {"id": "9.2.0-fbefcefdd0b07c38", "cves": [], "html": "<p>      \u65b0\u589e<a href=\"/docs/9.2/libpq-single-row-mode.html\" title=\"31.5.\u00a0\u9010\u884c\u68c0\u7d22\u67e5\u8be2\u7ed3\u679c\">\u5355\u884c\u5904\u7406\u6a21\u5f0f</a>\uff0c\u4ee5\u66f4\u597d\u5730\u5904\u7406\u5927\u578b\u7ed3\u679c\u96c6\uff08Kyotaro Horiguchi\u3001Marko Kreen\uff09\n     </p><p>      \u6b64\u524d\uff0c<span>libpq</span> \u603b\u662f\u5148\u628a\u6574\u4e2a\u67e5\u8be2\u7ed3\u679c\u6536\u96c6\u5230\u5185\u5b58\u4e2d\uff0c\u518d\u4f20\u9012\u56de\u5e94\u7528\u3002\n     </p>", "text": "\u65b0\u589e\u5355\u884c\u5904\u7406\u6a21\u5f0f\uff0c\u4ee5\u66f4\u597d\u5730\u5904\u7406\u5927\u578b\u7ed3\u679c\u96c6\uff08Kyotaro Horiguchi\u3001Marko Kreen\uff09 \u6b64\u524d\uff0clibpq \u603b\u662f\u5148\u628a\u6574\u4e2a\u67e5\u8be2\u7ed3\u679c\u6536\u96c6\u5230\u5185\u5b58\u4e2d\uff0c\u518d\u4f20\u9012\u56de\u5e94\u7528\u3002", "title": "\u65b0\u589e\u5355\u884c\u5904\u7406\u6a21\u5f0f\uff0c\u4ee5\u66f4\u597d\u5730\u5904\u7406\u5927\u578b\u7ed3\u679c\u96c6", "commits": [], "section": "libpq", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.13", "source_hash": "7dbddc6958566d017ae395a4a67890e019889ab8492ce5888ce4089b41225d08", "section_path": ["libpq"], "commit_groups": [], "identity_text": "Add a single-row processing mode for better handling of large result sets (Kyotaro Horiguchi, Marko Kreen) Previously, libpq always collected the entire query result in memory before passing it back to the application.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/164", "db_id": "e0e09273fe6e9ddcbf9d99e9bd2d1aa4", "patch_ids": [], "statement_hash": "77aacda29e92809be2d8135ee6ccff024d2378e88b7eaef8734105fd90695b00", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-fbefcefdd0b07c38", "migration": false}, {"id": "9.2.0-9643f3fb807918f0", "cves": [], "html": "<p>      \u4e3a\u51fd\u6570 <code>PQconnectdbParams</code>\u3001<code>PQconnectStartParams</code> \u548c <code>PQpingParams</code> \u7684\u58f0\u660e\u6dfb\u52a0 <code>const</code> \u9650\u5b9a\u7b26\uff08Lionel Elie Mamane\uff09\n     </p>", "text": "\u4e3a\u51fd\u6570 PQconnectdbParams\u3001PQconnectStartParams \u548c PQpingParams \u7684\u58f0\u660e\u6dfb\u52a0 const \u9650\u5b9a\u7b26\uff08Lionel Elie Mamane\uff09", "title": "\u4e3a\u51fd\u6570 PQconnectdbParams\u3001PQconnectStartParams \u548c PQpingParams \u7684\u58f0\u660e\u6dfb\u52a0 const \u9650\u5b9a\u7b26", "commits": [], "section": "libpq", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.13", "source_hash": "8c592a11caccf7e1b40095d0ad9b5342520604d588d540559c0055db472d9fdb", "section_path": ["libpq"], "commit_groups": [], "identity_text": "Add const qualifiers to the declarations of the functions PQconnectdbParams, PQconnectStartParams, and PQpingParams (Lionel Elie Mamane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/165", "db_id": "4bc714be2a910a7ebd7036c67b66a1e6", "patch_ids": [], "statement_hash": "630640ee6eed0d14ea3234316192f6e39be72317355aaade3ef4ecd1ee848d08", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-9643f3fb807918f0", "migration": false}, {"id": "9.2.0-0f0af92c5358525d", "cves": [], "html": "<p>      \u5141\u8bb8 <code>.pgpass</code> \u6587\u4ef6\u7684\u53e3\u4ee4\u5b57\u6bb5\u5305\u542b\u8f6c\u4e49\u5b57\u7b26\uff08Robert Haas\uff09\n     </p>", "text": "\u5141\u8bb8 .pgpass \u6587\u4ef6\u7684\u53e3\u4ee4\u5b57\u6bb5\u5305\u542b\u8f6c\u4e49\u5b57\u7b26\uff08Robert Haas\uff09", "title": "\u5141\u8bb8 .pgpass \u6587\u4ef6\u7684\u53e3\u4ee4\u5b57\u6bb5\u5305\u542b\u8f6c\u4e49\u5b57\u7b26", "commits": [], "section": "libpq", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.13", "source_hash": "af7a94dab4bfae8781a30ac93a01d699829220b7814ee908fe18074237102e16", "section_path": ["libpq"], "commit_groups": [], "identity_text": "Allow the .pgpass file to include escaped characters in the password field (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/166", "db_id": "6ff87d3ba2dde152e926f63d9e07ca57", "patch_ids": [], "statement_hash": "14d93ed375a617721486d096179446ee6cffe00a2fdaeeb82e92f1604d2cb0b0", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-0f0af92c5358525d", "migration": false}, {"id": "9.2.0-6aaa6c0f22f830af", "cves": [], "html": "<p>      \u8ba9\u5e93\u51fd\u6570\u5728\u9700\u8981\u7ec8\u6b62\u8fdb\u7a0b\u65f6\u4f7f\u7528 <code>abort()</code> \u800c\u4e0d\u662f <code>exit()</code>\uff08Peter Eisentraut\uff09\n     </p><p>      \u8fd9\u4e00\u9009\u62e9\u4e0d\u4f1a\u5e72\u6270\u7a0b\u5e8f\u4f7f\u7528\u7684\u6b63\u5e38\u9000\u51fa\u7801\uff0c\u5e76\u4f1a\u751f\u6210\u53ef\u88ab\u8c03\u7528\u65b9\u6355\u83b7\u7684\u4fe1\u53f7\u3002\n     </p>", "text": "\u8ba9\u5e93\u51fd\u6570\u5728\u9700\u8981\u7ec8\u6b62\u8fdb\u7a0b\u65f6\u4f7f\u7528 abort() \u800c\u4e0d\u662f exit()\uff08Peter Eisentraut\uff09 \u8fd9\u4e00\u9009\u62e9\u4e0d\u4f1a\u5e72\u6270\u7a0b\u5e8f\u4f7f\u7528\u7684\u6b63\u5e38\u9000\u51fa\u7801\uff0c\u5e76\u4f1a\u751f\u6210\u53ef\u88ab\u8c03\u7528\u65b9\u6355\u83b7\u7684\u4fe1\u53f7\u3002", "title": "\u8ba9\u5e93\u51fd\u6570\u5728\u9700\u8981\u7ec8\u6b62\u8fdb\u7a0b\u65f6\u4f7f\u7528 abort() \u800c\u4e0d\u662f exit()", "commits": [], "section": "libpq", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.13", "source_hash": "ec86c92d18707b054f30e85f454a90cffde60fba5631b2b01e40daacf0cc974b", "section_path": ["libpq"], "commit_groups": [], "identity_text": "Make library functions use abort() instead of exit() when it is necessary to terminate the process (Peter Eisentraut) This choice does not interfere with the normal exit codes used by the program, and generates a signal that can be caught by the caller.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/167", "db_id": "24e64d867b120404244b4624c6621503", "patch_ids": [], "statement_hash": "2ebc52f61f7a30d0fd78006be43fe5ecabc146791ef37e18ed102fbfa6c6ff52", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6aaa6c0f22f830af", "migration": false}, {"id": "9.2.0-d4cd4e435139e886", "cves": [], "html": "<p>      \u79fb\u9664\u5df2\u6b7b\u7684\u5e73\u53f0\uff08Peter Eisentraut\uff09\n     </p><p>      \u4ee5\u4e0b\u5e73\u53f0\u4e0d\u518d\u53d7\u652f\u6301\uff1adgux\u3001nextstep\u3001sunos4\u3001svr4\u3001ultrix4\u3001univel\u3001bsdi\u3002\n     </p>", "text": "\u79fb\u9664\u5df2\u6b7b\u7684\u5e73\u53f0\uff08Peter Eisentraut\uff09 \u4ee5\u4e0b\u5e73\u53f0\u4e0d\u518d\u53d7\u652f\u6301\uff1adgux\u3001nextstep\u3001sunos4\u3001svr4\u3001ultrix4\u3001univel\u3001bsdi\u3002", "title": "\u79fb\u9664\u5df2\u6b7b\u7684\u5e73\u53f0", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "b7b1bbbc125700d5587c6aa2f7e42db08bcdc0f7f0b6ff26cc27c967b80f6ed0", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Remove dead ports (Peter Eisentraut) The following platforms are no longer supported: dgux, nextstep, sunos4, svr4, ultrix4, univel, bsdi.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/168", "db_id": "98f00cec9f4944ca3ede794781a8b16d", "patch_ids": [], "statement_hash": "824c20f152ac4db4ef9e6106689c89026da6916ea4baa53518b6e7fce65b222c", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d4cd4e435139e886", "migration": false}, {"id": "9.2.0-679bcafd87543f71", "cves": [], "html": "<p>      \u65b0\u589e\u5bf9\u4f7f\u7528 <a href=\"/docs/9.2/install-windows.html\" title=\"\u7b2c\u00a016\u00a0\u7ae0\u00a0\u5728 Windows \u4e0a\u4ece\u6e90\u4ee3\u7801\u5b89\u88c5\">MS Visual Studio 2010</a> \u6784\u5efa\u7684\u652f\u6301\uff08Brar Piening\uff09\n     </p>", "text": "\u65b0\u589e\u5bf9\u4f7f\u7528 MS Visual Studio 2010 \u6784\u5efa\u7684\u652f\u6301\uff08Brar Piening\uff09", "title": "\u65b0\u589e\u5bf9\u4f7f\u7528 MS Visual Studio 2010 \u6784\u5efa\u7684\u652f\u6301", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "6bf27066d7307339366077e85b6d95c14ce80755d840811c54cae68d43ba21ad", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Add support for building with MS Visual Studio 2010 (Brar Piening)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/169", "db_id": "1a7c567ccdb8fead480613fe73f237c1", "patch_ids": [], "statement_hash": "56959c33f19de3dae2d12e80d42aefcdf4d9fe7f84ed8d3635383ae367a3b103", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-679bcafd87543f71", "migration": false}, {"id": "9.2.0-0ac462aab9c7f231", "cves": [], "html": "<p>      \u652f\u6301\u4f7f\u7528 MinGW-w64 32 \u4f4d\u7f16\u8bd1\u5668\u7f16\u8bd1\uff08Lars Kanis\uff09\n     </p>", "text": "\u652f\u6301\u4f7f\u7528 MinGW-w64 32 \u4f4d\u7f16\u8bd1\u5668\u7f16\u8bd1\uff08Lars Kanis\uff09", "title": "\u652f\u6301\u4f7f\u7528 MinGW-w64 32 \u4f4d\u7f16\u8bd1\u5668\u7f16\u8bd1", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "b264fd25b696b8b69ab554daa5af0acd0cec0ca63e893028e51d3888e69b959a", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Enable compiling with the MinGW-w64 32-bit compiler (Lars Kanis)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/170", "db_id": "12a648c426e5a746fa14de39da5a66e2", "patch_ids": [], "statement_hash": "07ce26f1890dc5044669732bc080e12f4b5f7106df3e9f2ebe3107ba892033c7", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-0ac462aab9c7f231", "migration": false}, {"id": "9.2.0-ff8ab7a569ab8a83", "cves": [], "html": "<p>      \u5b89\u88c5\u65f6\u628a <code>plpgsql.h</code> \u5b89\u88c5\u5230 <code>include/server</code>\uff08Heikki Linnakangas\uff09\n     </p>", "text": "\u5b89\u88c5\u65f6\u628a plpgsql.h \u5b89\u88c5\u5230 include/server\uff08Heikki Linnakangas\uff09", "title": "\u5b89\u88c5\u65f6\u628a plpgsql.h \u5b89\u88c5\u5230 include/server", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "f3879f860c74e129308c2dbbcc32195d2f2cc55be746152b15e80a49f3acba44", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Install plpgsql.h into include/server during installation (Heikki Linnakangas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/171", "db_id": "2145723bc581958c6e0f126bd889058e", "patch_ids": [], "statement_hash": "b328a615e81a671fb43ddd90a926299a4978ce60781ef32569b626ab25b379cd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-ff8ab7a569ab8a83", "migration": false}, {"id": "9.2.0-6cc840582dc3368e", "cves": [], "html": "<p>      \u6539\u8fdb\u95e9\u9501\u673a\u5236\uff0c\u52a0\u5165\u5bf9 postmaster \u6b7b\u4ea1\u7684\u68c0\u6d4b\uff08Peter Geoghegan\u3001Heikki Linnakangas\u3001Tom Lane\uff09\n     </p><p>      \u8fd9\u6d88\u9664\u4e86\u540e\u53f0\u8fdb\u7a0b\u6b64\u524d\u5fc5\u987b\u5524\u9192\u4ee5\u8f6e\u8be2\u4e8b\u4ef6\u7684\u4e3b\u8981\u539f\u56e0\u4e4b\u4e00\u3002\n     </p>", "text": "\u6539\u8fdb\u95e9\u9501\u673a\u5236\uff0c\u52a0\u5165\u5bf9 postmaster \u6b7b\u4ea1\u7684\u68c0\u6d4b\uff08Peter Geoghegan\u3001Heikki Linnakangas\u3001Tom Lane\uff09 \u8fd9\u6d88\u9664\u4e86\u540e\u53f0\u8fdb\u7a0b\u6b64\u524d\u5fc5\u987b\u5524\u9192\u4ee5\u8f6e\u8be2\u4e8b\u4ef6\u7684\u4e3b\u8981\u539f\u56e0\u4e4b\u4e00\u3002", "title": "\u6539\u8fdb\u95e9\u9501\u673a\u5236\uff0c\u52a0\u5165\u5bf9 postmaster \u6b7b\u4ea1\u7684\u68c0\u6d4b", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "852ca2011852e3a1f9b7f32e6a9b7bcb9b7636088caee1d781ee7cd2035026e9", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Improve the latch facility to include detection of postmaster death (Peter Geoghegan, Heikki Linnakangas, Tom Lane) This eliminates one of the main reasons that background processes formerly had to wake up to poll for events.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/172", "db_id": "b731f5db71272229e960f496994da16e", "patch_ids": [], "statement_hash": "f0193668f30c90e0a99ed519807686203874e53a1e5f4ffdb9125f7e745fcfd3", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6cc840582dc3368e", "migration": false}, {"id": "9.2.0-b2c1aeb9389caab9", "cves": [], "html": "<p>      \u5728\u652f\u6301\u7684\u5730\u65b9\u4f7f\u7528 C \u5f39\u6027\u6570\u7ec4\u6210\u5458\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u5728\u652f\u6301\u7684\u5730\u65b9\u4f7f\u7528 C \u5f39\u6027\u6570\u7ec4\u6210\u5458\uff08Peter Eisentraut\uff09", "title": "\u5728\u652f\u6301\u7684\u5730\u65b9\u4f7f\u7528 C \u5f39\u6027\u6570\u7ec4\u6210\u5458", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "7addd357197a67d0562bd13bc87c86b8543c8e03c74fc83dab3ece45d7e34173", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Use C flexible array members, where supported (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/173", "db_id": "f8eade1b200ff0df2dd7af642712a600", "patch_ids": [], "statement_hash": "aefc9cec332e2eb409ea7674e6c75849bdd69b58a0a0ad235387000f01e16092", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-b2c1aeb9389caab9", "migration": false}, {"id": "9.2.0-1a072b9c4019a7fe", "cves": [], "html": "<p>      \u6539\u8fdb\u5e76\u53d1\u4e8b\u52a1\u56de\u5f52\u6d4b\u8bd5\uff08<span>isolationtester</span>\uff09\uff08Noah Misch\uff09\n     </p>", "text": "\u6539\u8fdb\u5e76\u53d1\u4e8b\u52a1\u56de\u5f52\u6d4b\u8bd5\uff08isolationtester\uff09\uff08Noah Misch\uff09", "title": "\u6539\u8fdb\u5e76\u53d1\u4e8b\u52a1\u56de\u5f52\u6d4b\u8bd5\uff08isolationtester\uff09", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "3e584d48ccfd3106623bd08e498cf910113d0e59c585421f1d73862e31d8169e", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Improve the concurrent transaction regression tests (isolationtester) (Noah Misch)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/174", "db_id": "55b5b4d583f856a913074f53f3709820", "patch_ids": [], "statement_hash": "cec96d48ca9016b6f260d4d5bfdfc5c3e0cec99969ee1162d82b4955147d535e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-1a072b9c4019a7fe", "migration": false}, {"id": "9.2.0-6788aa26d4883591", "cves": [], "html": "<p>      \u4fee\u6539 <span>thread_test</span>\uff0c\u4f7f\u5176\u5728\u5f53\u524d\u76ee\u5f55\u800c\u4e0d\u662f <code>/tmp</code> \u4e2d\u521b\u5efa\u6d4b\u8bd5\u6587\u4ef6\uff08Bruce Momjian\uff09\n     </p>", "text": "\u4fee\u6539 thread_test\uff0c\u4f7f\u5176\u5728\u5f53\u524d\u76ee\u5f55\u800c\u4e0d\u662f /tmp \u4e2d\u521b\u5efa\u6d4b\u8bd5\u6587\u4ef6\uff08Bruce Momjian\uff09", "title": "\u4fee\u6539 thread_test\uff0c\u4f7f\u5176\u5728\u5f53\u524d\u76ee\u5f55\u800c\u4e0d\u662f /tmp \u4e2d\u521b\u5efa\u6d4b\u8bd5\u6587\u4ef6", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "276fab0b0db2a242f9e1a6547ec810ccf2f731030565d31f159b177fe20cbacd", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Modify thread_test to create its test files in the current directory, rather than /tmp (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/175", "db_id": "07badc624a0f56dcb81c441091229ed2", "patch_ids": [], "statement_hash": "8e2bc2d64109521edf47afc83441c8e1c7ab2907100c087c3c41640894c4f8b8", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6788aa26d4883591", "migration": false}, {"id": "9.2.0-c27117199a6c886c", "cves": [], "html": "<p>      \u6539\u8fdb flex \u548c bison \u7684\u8b66\u544a\u4e0e\u9519\u8bef\u62a5\u544a\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb flex \u548c bison \u7684\u8b66\u544a\u4e0e\u9519\u8bef\u62a5\u544a\uff08Tom Lane\uff09", "title": "\u6539\u8fdb flex \u548c bison \u7684\u8b66\u544a\u4e0e\u9519\u8bef\u62a5\u544a", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "6b2e5963ecdd5845289594bd7fb5f2b19d76cda3f91c311cd6c5e3d72274df45", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Improve flex and bison warning and error reporting (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/176", "db_id": "d155c9e83cb05abfa7bf181a7c56aaea", "patch_ids": [], "statement_hash": "0139ee6a2b2c0f28b3f261a08041b78d44370fdb84c8ec637ec6e7f14eb3196a", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c27117199a6c886c", "migration": false}, {"id": "9.2.0-db924d6da50d8ea2", "cves": [], "html": "<p>      \u65b0\u589e\u5185\u5b58\u5c4f\u969c\u652f\u6301\uff08Robert Haas\uff09\n     </p><p>      \u76ee\u524d\u5c1a\u672a\u4f7f\u7528\u3002\n     </p>", "text": "\u65b0\u589e\u5185\u5b58\u5c4f\u969c\u652f\u6301\uff08Robert Haas\uff09 \u76ee\u524d\u5c1a\u672a\u4f7f\u7528\u3002", "title": "\u65b0\u589e\u5185\u5b58\u5c4f\u969c\u652f\u6301", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "d6aff5cba96383b70494cc06b5b39be65a7e1d1c9ca4e9b865396c47d81c4846", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Add memory barrier support (Robert Haas) This is currently unused.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/177", "db_id": "a0c76095141c51449eba3e297b171218", "patch_ids": [], "statement_hash": "eba49977a832068e109c6d3f5be8371ad18bcc3588eab26d12544ee7f43b2565", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-db924d6da50d8ea2", "migration": false}, {"id": "9.2.0-ed859d5361f82ad7", "cves": [], "html": "<p>      \u4fee\u6539 pgindent \u4ee5\u4f7f\u7528 typedef \u6587\u4ef6\uff08Bruce Momjian\uff09\n     </p>", "text": "\u4fee\u6539 pgindent \u4ee5\u4f7f\u7528 typedef \u6587\u4ef6\uff08Bruce Momjian\uff09", "title": "\u4fee\u6539 pgindent \u4ee5\u4f7f\u7528 typedef \u6587\u4ef6", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "8a8475589e4058c6d79adbb7bb1e08eada2dd56c19131ac50e3ef8a65743fede", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Modify pgindent to use a typedef file (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/178", "db_id": "262dfce67856acbf6588dd11514d13f4", "patch_ids": [], "statement_hash": "d89d38d71a5e0968ef5a30f3264354a80ec484698b73945a3856d75bf3ead345", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-ed859d5361f82ad7", "migration": false}, {"id": "9.2.0-5e192e2cc7ea7dd8", "cves": [], "html": "<p>      \u65b0\u589e\u7528\u4e8e\u5904\u7406\u5373\u5c06\u53d1\u9001\u5230\u670d\u52a1\u5668\u65e5\u5fd7\u7684\u6d88\u606f\u7684\u94a9\u5b50\uff08Martin Pihlak\uff09\n     </p>", "text": "\u65b0\u589e\u7528\u4e8e\u5904\u7406\u5373\u5c06\u53d1\u9001\u5230\u670d\u52a1\u5668\u65e5\u5fd7\u7684\u6d88\u606f\u7684\u94a9\u5b50\uff08Martin Pihlak\uff09", "title": "\u65b0\u589e\u7528\u4e8e\u5904\u7406\u5373\u5c06\u53d1\u9001\u5230\u670d\u52a1\u5668\u65e5\u5fd7\u7684\u6d88\u606f\u7684\u94a9\u5b50", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "52523ab2b1b24c309629de90e253de97caf378b06194e8ad8e97b7e94af6e872", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Add a hook for processing messages due to be sent to the server log (Martin Pihlak)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/179", "db_id": "02b09b8f8f9d00bc87e28c6667465563", "patch_ids": [], "statement_hash": "6f15bdd3dbb16fc6607fd2ed64d2965f7a8633cabd33bdc8f69807766dc34b3d", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-5e192e2cc7ea7dd8", "migration": false}, {"id": "9.2.0-413992671997e3c3", "cves": [], "html": "<p>      \u4e3a <code>DROP</code> \u547d\u4ee4\u65b0\u589e\u5bf9\u8c61\u8bbf\u95ee\u94a9\u5b50\uff08KaiGai Kohei\uff09\n     </p>", "text": "\u4e3a DROP \u547d\u4ee4\u65b0\u589e\u5bf9\u8c61\u8bbf\u95ee\u94a9\u5b50\uff08KaiGai Kohei\uff09", "title": "\u4e3a DROP \u547d\u4ee4\u65b0\u589e\u5bf9\u8c61\u8bbf\u95ee\u94a9\u5b50", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "12b2a5c1dfdeb3bf9439e3858335d204533b84849f573caed750c82e96a3cde4", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Add object access hooks for DROP commands (KaiGai Kohei)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/180", "db_id": "f92880cfc82144826647d1772b16afab", "patch_ids": [], "statement_hash": "954b78d648ad08df6a620af29ca33a2f32c5b8c5251976c3575bcb498ba63283", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-413992671997e3c3", "migration": false}, {"id": "9.2.0-e99cc23c2641f13e", "cves": [], "html": "<p>      \u96c6\u4e2d\u5316\u67d0\u4e9b\u5bf9\u8c61\u7c7b\u578b\u7684 <code>DROP</code> \u5904\u7406\uff08KaiGai Kohei\uff09\n     </p>", "text": "\u96c6\u4e2d\u5316\u67d0\u4e9b\u5bf9\u8c61\u7c7b\u578b\u7684 DROP \u5904\u7406\uff08KaiGai Kohei\uff09", "title": "\u96c6\u4e2d\u5316\u67d0\u4e9b\u5bf9\u8c61\u7c7b\u578b\u7684 DROP \u5904\u7406", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "94546a18276514cb5c60482ca1369b6a35f8ba1a9c5bfaf97b1ca578321ad553", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Centralize DROP handling for some object types (KaiGai Kohei)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/181", "db_id": "32aa5164912ac37f811708b01db34e10", "patch_ids": [], "statement_hash": "dc37fd7158810fa3d55bc00cb20992dc159e8c3af9478c31b6e39fb4d63c0625", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e99cc23c2641f13e", "migration": false}, {"id": "9.2.0-bfe6226d1eb9fa0c", "cves": [], "html": "<p>      \u65b0\u589e <span>pg_upgrade</span> \u6d4b\u8bd5\u5957\u4ef6\uff08Peter Eisentraut\uff09\n     </p>", "text": "\u65b0\u589e pg_upgrade \u6d4b\u8bd5\u5957\u4ef6\uff08Peter Eisentraut\uff09", "title": "\u65b0\u589e pg_upgrade \u6d4b\u8bd5\u5957\u4ef6", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "06a8e5ea43be0b6be94ddc3c3fab6ca73bf7ad796f30eb0eb638585dc26e4e1c", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Add a pg_upgrade test suite (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/182", "db_id": "d43bc8c470182ac491110f5744d2f720", "patch_ids": [], "statement_hash": "0d260c3aab30caae1ed50d24ad73ac759e9e26b0e134fa11663a535d51d65fe6", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-bfe6226d1eb9fa0c", "migration": false}, {"id": "9.2.0-cf825f597df2769c", "cves": [], "html": "<p>      \u628a\u6b63\u5219\u8868\u8fbe\u5f0f\u4ee3\u7801\u4e0e <acronym>TCL</acronym> 8.5.11 \u540c\u6b65\uff0c\u5e76\u6539\u8fdb\u5185\u90e8\u5904\u7406\uff08Tom Lane\uff09\n     </p>", "text": "\u628a\u6b63\u5219\u8868\u8fbe\u5f0f\u4ee3\u7801\u4e0e TCL 8.5.11 \u540c\u6b65\uff0c\u5e76\u6539\u8fdb\u5185\u90e8\u5904\u7406\uff08Tom Lane\uff09", "title": "\u628a\u6b63\u5219\u8868\u8fbe\u5f0f\u4ee3\u7801\u4e0e TCL 8.5.11 \u540c\u6b65\uff0c\u5e76\u6539\u8fdb\u5185\u90e8\u5904\u7406", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "469a02c8e64b31b831ac52c48d8b5b521b5c21267a8904e00bae466b082c4114", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Sync regular expression code with TCL 8.5.11 and improve internal processing (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/183", "db_id": "81f5731e9f70aa9c342f878f2d69508a", "patch_ids": [], "statement_hash": "87803450292600c3ea06615144fae65c0e677dd9be8a3b8df5e9c151ff1fe353", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-cf825f597df2769c", "migration": false}, {"id": "9.2.0-6dd90c1ecd5534b6", "cves": [], "html": "<p>      \u628a <acronym>CRC</acronym> \u8868\u79fb\u5230 libpgport\uff0c\u5e76\u5728\u5355\u72ec\u7684\u5934\u6587\u4ef6\u4e2d\u63d0\u4f9b\uff08Daniel Farina\uff09\n     </p>", "text": "\u628a CRC \u8868\u79fb\u5230 libpgport\uff0c\u5e76\u5728\u5355\u72ec\u7684\u5934\u6587\u4ef6\u4e2d\u63d0\u4f9b\uff08Daniel Farina\uff09", "title": "\u628a CRC \u8868\u79fb\u5230 libpgport\uff0c\u5e76\u5728\u5355\u72ec\u7684\u5934\u6587\u4ef6\u4e2d\u63d0\u4f9b", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "fc747e8dce941394f32fab0bd334a906f1e253d9bf7803ed9bb0c93881341f5c", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Move CRC tables to libpgport, and provide them in a separate include file (Daniel Farina)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/184", "db_id": "d12209e82d790d1f728d3ba18830fde5", "patch_ids": [], "statement_hash": "62c471ba9df0e1e5538ab9c8eb5a68bd9fa25e956ff3cf1d0724c2122a82ce32", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-6dd90c1ecd5534b6", "migration": false}, {"id": "9.2.0-17211fe8047d822f", "cves": [], "html": "<p>      \u4e3a <span>git_changelog</span> \u65b0\u589e\u7528\u4e8e\u5236\u4f5c\u5927\u7248\u672c\u53d1\u884c\u8bf4\u660e\u7684\u9009\u9879\uff08Bruce Momjian\uff09\n     </p>", "text": "\u4e3a git_changelog \u65b0\u589e\u7528\u4e8e\u5236\u4f5c\u5927\u7248\u672c\u53d1\u884c\u8bf4\u660e\u7684\u9009\u9879\uff08Bruce Momjian\uff09", "title": "\u4e3a git_changelog \u65b0\u589e\u7528\u4e8e\u5236\u4f5c\u5927\u7248\u672c\u53d1\u884c\u8bf4\u660e\u7684\u9009\u9879", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "f99db0401ca487ded8578bd8611471689141990048d2deca7ca4273a3bf29d36", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Add options to git_changelog for use in major release note creation (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/185", "db_id": "dac41694eb558481a611c936e04b9713", "patch_ids": [], "statement_hash": "9c84b36c4323dc039ffe98ce90547093dce06b5fcd8b0b70232413c0b77ee844", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-17211fe8047d822f", "migration": false}, {"id": "9.2.0-4aaf06977d620685", "cves": [], "html": "<p>      \u652f\u6301 Linux \u7684 <code>/proc/self/oom_score_adj</code> API\uff08Tom Lane\uff09\n     </p>", "text": "\u652f\u6301 Linux \u7684 /proc/self/oom_score_adj API\uff08Tom Lane\uff09", "title": "\u652f\u6301 Linux \u7684 /proc/self/oom_score_adj API", "commits": [], "section": "\u6e90\u4ee3\u7801", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "49f1567509be1e5461d2e185a8836fe83ae8f706293a0604f175396b86409aa0", "section_path": ["\u6e90\u4ee3\u7801"], "commit_groups": [], "identity_text": "Support Linux's /proc/self/oom_score_adj API (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/186", "db_id": "ebd3f50c38dca3f53ad920f8ba5f75f3", "patch_ids": [], "statement_hash": "fd62b4ccbc64e289706683dd1eac5f024f7e00ecd803078ba2f83f535331eec1", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4aaf06977d620685", "migration": false}, {"id": "9.2.0-f53b38a9bf9aae08", "cves": [], "html": "<p>      \u901a\u8fc7\u4f7f\u7528 libpq \u65b0\u7684\u5355\u884c\u5904\u7406\u6a21\u5f0f\u6539\u8fdb <a href=\"/docs/9.2/dblink.html\" title=\"F.9.\u00a0dblink\">dblink</a> \u7684\u6548\u7387\uff08Kyotaro Horiguchi\u3001Marko Kreen\uff09\n     </p><p>      \u6b64\u6539\u8fdb\u4e0d\u9002\u7528\u4e8e <code>dblink_send_query()</code>/<code>dblink_get_result()</code>\u3002\n     </p>", "text": "\u901a\u8fc7\u4f7f\u7528 libpq \u65b0\u7684\u5355\u884c\u5904\u7406\u6a21\u5f0f\u6539\u8fdb dblink \u7684\u6548\u7387\uff08Kyotaro Horiguchi\u3001Marko Kreen\uff09 \u6b64\u6539\u8fdb\u4e0d\u9002\u7528\u4e8e dblink_send_query()/dblink_get_result()\u3002", "title": "\u901a\u8fc7\u4f7f\u7528 libpq \u65b0\u7684\u5355\u884c\u5904\u7406\u6a21\u5f0f\u6539\u8fdb dblink \u7684\u6548\u7387", "commits": [], "section": "\u9644\u52a0\u6a21\u5757", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "368da1ba2d0ae4a12c91380e205713e279bf2e61fd7aa273ffe3e1e406a5a8b3", "section_path": ["\u9644\u52a0\u6a21\u5757"], "commit_groups": [], "identity_text": "Improve efficiency of dblink by using libpq's new single-row processing mode (Kyotaro Horiguchi, Marko Kreen) This improvement does not apply to dblink_send_query()/dblink_get_result().", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/187", "db_id": "2a7dfbd3e34535bb7c796e983467845e", "patch_ids": [], "statement_hash": "55ff72e42160371fcc2600089e393de741341097a5ac4ff968406d4137fd29dd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-f53b38a9bf9aae08", "migration": false}, {"id": "9.2.0-9a96a5170bddc38c", "cves": [], "html": "<p>      \u5728 <a href=\"/docs/9.2/file-fdw.html\" title=\"F.14.\u00a0file_fdw\">file_fdw</a> \u4e2d\u652f\u6301 <code>force_not_null</code> \u9009\u9879\uff08Shigeru Hanada\uff09\n     </p>", "text": "\u5728 file_fdw \u4e2d\u652f\u6301 force_not_null \u9009\u9879\uff08Shigeru Hanada\uff09", "title": "\u5728 file_fdw \u4e2d\u652f\u6301 force_not_null \u9009\u9879", "commits": [], "section": "\u9644\u52a0\u6a21\u5757", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "8ad5e5798d043487102f311e0af9f504b0a404fac23ff74b50bc0d4caa903fa3", "section_path": ["\u9644\u52a0\u6a21\u5757"], "commit_groups": [], "identity_text": "Support force_not_null option in file_fdw (Shigeru Hanada)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/188", "db_id": "107ded950baf933051dd906fe12d72bc", "patch_ids": [], "statement_hash": "61f63b2cbc2bff635d1a50e79e97e5a6222881418cb44706a4350322f1a82647", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-9a96a5170bddc38c", "migration": false}, {"id": "9.2.0-29a58caceb346d81", "cves": [], "html": "<p>      \u4e3a<a href=\"/docs/9.2/pgarchivecleanup.html\" title=\"pg_archivecleanup\"><span>pg_archivecleanup</span></a>\u5b9e\u73b0\u7a7a\u8fd0\u884c\u6a21\u5f0f\uff08Gabriele Bartolini\uff09\n     </p><p>      \u5b83\u53ea\u8f93\u51fa\u8981\u5220\u9664\u6587\u4ef6\u7684\u540d\u79f0\u3002\n     </p>", "text": "\u4e3apg_archivecleanup\u5b9e\u73b0\u7a7a\u8fd0\u884c\u6a21\u5f0f\uff08Gabriele Bartolini\uff09 \u5b83\u53ea\u8f93\u51fa\u8981\u5220\u9664\u6587\u4ef6\u7684\u540d\u79f0\u3002", "title": "\u4e3apg_archivecleanup\u5b9e\u73b0\u7a7a\u8fd0\u884c\u6a21\u5f0f", "commits": [], "section": "\u9644\u52a0\u6a21\u5757", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "4b03fc2223d237c2f7902eab89731f3e344defc4c744d36fd20aaa58b2e19e03", "section_path": ["\u9644\u52a0\u6a21\u5757"], "commit_groups": [], "identity_text": "Implement dry-run mode for pg_archivecleanup (Gabriele Bartolini) This only outputs the names of files to be deleted.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/189", "db_id": "2b59fd97e8b6bb3385618e33e1cfbaf6", "patch_ids": [], "statement_hash": "f4220e8d6c62a41985c4ae925bac4efdf472a4aaae48d9d13ffd3a3393c86220", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-29a58caceb346d81", "migration": false}, {"id": "9.2.0-7fa4e9ca9aa7c3a1", "cves": [], "html": "<p>      \u4e3a <a href=\"/docs/9.2/pgbench.html\" title=\"pgbench\">pgbench</a> \u65b0\u589e\u5f00\u5173 <code>--unlogged-tables</code>\u3001<code>--tablespace</code> \u548c <code>--index-tablespace</code>\uff08Robert Haas\uff09\n     </p>", "text": "\u4e3a pgbench \u65b0\u589e\u5f00\u5173 --unlogged-tables\u3001--tablespace \u548c --index-tablespace\uff08Robert Haas\uff09", "title": "\u4e3a pgbench \u65b0\u589e\u5f00\u5173 --unlogged-tables\u3001--tablespace \u548c --index-tablespace", "commits": [], "section": "\u9644\u52a0\u6a21\u5757", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "21de2613e730eb60f85a4a20f8b9c4ee97454f54cb99a70976767e49980bda70", "section_path": ["\u9644\u52a0\u6a21\u5757"], "commit_groups": [], "identity_text": "Add new pgbench switches --unlogged-tables, --tablespace, and --index-tablespace (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/190", "db_id": "eb408cfbabd0caa2a939a69b8986301c", "patch_ids": [], "statement_hash": "44aa360a8988b7eeb7ed3c99cb38c47cd417461503834dbd530c41333a340e2b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-7fa4e9ca9aa7c3a1", "migration": false}, {"id": "9.2.0-0c697602c67fe67c", "cves": [], "html": "<p>      \u66f4\u6539<a href=\"/docs/9.2/pgtestfsync.html\" title=\"pg_test_fsync\"><span>pg_test_fsync</span></a>\uff0c\u4f7f\u5176\u6309\u56fa\u5b9a\u65f6\u957f\u800c\u4e0d\u662f\u56fa\u5b9a\u5468\u671f\u6570\u6d4b\u8bd5\uff08Bruce Momjian\uff09\n     </p><p>      \u79fb\u9664\u4e86 <code>-o</code>/cycles \u9009\u9879\uff0c\u65b0\u589e\u4e86 <code>-s</code>/seconds\u3002\n     </p>", "text": "\u66f4\u6539pg_test_fsync\uff0c\u4f7f\u5176\u6309\u56fa\u5b9a\u65f6\u957f\u800c\u4e0d\u662f\u56fa\u5b9a\u5468\u671f\u6570\u6d4b\u8bd5\uff08Bruce Momjian\uff09 \u79fb\u9664\u4e86 -o/cycles \u9009\u9879\uff0c\u65b0\u589e\u4e86 -s/seconds\u3002", "title": "\u66f4\u6539pg_test_fsync\uff0c\u4f7f\u5176\u6309\u56fa\u5b9a\u65f6\u957f\u800c\u4e0d\u662f\u56fa\u5b9a\u5468\u671f\u6570\u6d4b\u8bd5", "commits": [], "section": "\u9644\u52a0\u6a21\u5757", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "e656ce244df145d3a1c364c774f7d22f69ab1ffb5c38b8d45818241e559b2378", "section_path": ["\u9644\u52a0\u6a21\u5757"], "commit_groups": [], "identity_text": "Change pg_test_fsync to test for a fixed amount of time, rather than a fixed number of cycles (Bruce Momjian) The -o/cycles option was removed, and -s/seconds added.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/191", "db_id": "37e927f51303a4232212f31088882b44", "patch_ids": [], "statement_hash": "6b296ee844e9f58b4839fa713bc4a902a18de64b3845020e85b2215b6918cf5d", "relations": [], "category_label": "BUG \u4fee\u590d", "url": "/docs/compare/?release=9.2.0#9.2.0-0c697602c67fe67c", "migration": false}, {"id": "9.2.0-4d833c3706e2f049", "cves": [], "html": "<p>      \u65b0\u589e<a href=\"/docs/9.2/pgtesttiming.html\" title=\"pg_test_timing\"><span>pg_test_timing</span></a>\u5de5\u5177\uff0c\u7528\u4e8e\u6d4b\u91cf\u65f6\u949f\u5355\u8c03\u6027\u548c\u8ba1\u65f6\u5f00\u9500\uff08Ants Aasma\u3001Greg Smith\uff09\n     </p>", "text": "\u65b0\u589epg_test_timing\u5de5\u5177\uff0c\u7528\u4e8e\u6d4b\u91cf\u65f6\u949f\u5355\u8c03\u6027\u548c\u8ba1\u65f6\u5f00\u9500\uff08Ants Aasma\u3001Greg Smith\uff09", "title": "\u65b0\u589epg_test_timing\u5de5\u5177\uff0c\u7528\u4e8e\u6d4b\u91cf\u65f6\u949f\u5355\u8c03\u6027\u548c\u8ba1\u65f6\u5f00\u9500", "commits": [], "section": "\u9644\u52a0\u6a21\u5757", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "3bfb517a3b8f0663d26937443092b0e8a01acfd18131eeca3bd7b8a799dbcfd2", "section_path": ["\u9644\u52a0\u6a21\u5757"], "commit_groups": [], "identity_text": "Add a pg_test_timing utility to measure clock monotonicity and timing overhead (Ants Aasma, Greg Smith)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/192", "db_id": "71ea9022120894dd317b50693ee72ba2", "patch_ids": [], "statement_hash": "189a35dc8dca0366d910999d7701bdb1748ad210203da5448a7511b9b31d6092", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4d833c3706e2f049", "migration": false}, {"id": "9.2.0-dfa52259583394ac", "cves": [], "html": "<p>      \u65b0\u589e <a href=\"/docs/9.2/tcn.html\" title=\"F.36.\u00a0tcn\">tcn</a>\uff08\u89e6\u53d1\u5f0f\u53d8\u66f4\u901a\u77e5\uff09\u6a21\u5757\uff0c\u5728\u8868\u53d8\u66f4\u65f6\u751f\u6210 <code>NOTIFY</code> \u4e8b\u4ef6\uff08Kevin Grittner\uff09\n     </p>", "text": "\u65b0\u589e tcn\uff08\u89e6\u53d1\u5f0f\u53d8\u66f4\u901a\u77e5\uff09\u6a21\u5757\uff0c\u5728\u8868\u53d8\u66f4\u65f6\u751f\u6210 NOTIFY \u4e8b\u4ef6\uff08Kevin Grittner\uff09", "title": "\u65b0\u589e tcn\uff08\u89e6\u53d1\u5f0f\u53d8\u66f4\u901a\u77e5\uff09\u6a21\u5757\uff0c\u5728\u8868\u53d8\u66f4\u65f6\u751f\u6210 NOTIFY \u4e8b\u4ef6", "commits": [], "section": "\u9644\u52a0\u6a21\u5757", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "3e76d0c091fde3acc34519ff71e784dac173170731ed7929faa15152f946f183", "section_path": ["\u9644\u52a0\u6a21\u5757"], "commit_groups": [], "identity_text": "Add a tcn (triggered change notification) module to generate NOTIFY events on table changes (Kevin Grittner)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/193", "db_id": "a95d63ba46bb7638ced03622fcaa0767", "patch_ids": [], "statement_hash": "f5bebf0cdaa8c8afe382ec1a452f736a35de9381dd141a25516cef4b87756dfd", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-dfa52259583394ac", "migration": false}, {"id": "9.2.0-7a59e4542a325943", "cves": [], "html": "<p>      \u8c03\u6574 <span>pg_upgrade</span> \u73af\u5883\u53d8\u91cf\uff08Bruce Momjian\uff09\n     </p><p>      \u628a\u6570\u636e\u3001bin \u548c\u7aef\u53e3\u73af\u5883\u53d8\u91cf\u91cd\u547d\u540d\u4e3a\u4ee5 <code>PG</code> \u5f00\u5934\uff0c\u5e76\u652f\u6301 <code>PGPORTOLD</code>/<code>PGPORTNEW</code> \u4ee5\u53d6\u4ee3 <code>PGPORT</code>\u3002\n     </p>", "text": "\u8c03\u6574 pg_upgrade \u73af\u5883\u53d8\u91cf\uff08Bruce Momjian\uff09 \u628a\u6570\u636e\u3001bin \u548c\u7aef\u53e3\u73af\u5883\u53d8\u91cf\u91cd\u547d\u540d\u4e3a\u4ee5 PG \u5f00\u5934\uff0c\u5e76\u652f\u6301 PGPORTOLD/PGPORTNEW \u4ee5\u53d6\u4ee3 PGPORT\u3002", "title": "\u8c03\u6574 pg_upgrade \u73af\u5883\u53d8\u91cf", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "650a4a8300ce9c0d980de6274de72c4a1997df37d684c8cc8ab85ecb14be66af", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Adjust pg_upgrade environment variables (Bruce Momjian) Rename data, bin, and port environment variables to begin with PG, and support PGPORTOLD/PGPORTNEW, to replace PGPORT.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/194", "db_id": "43c735aae900027d94dc991b183e578a", "patch_ids": [], "statement_hash": "bfe67b9a5cdc4c1bb11625f719676605f09cc99ed86669540c7723e6379d4974", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-7a59e4542a325943", "migration": false}, {"id": "9.2.0-1e6bf472ef3def45", "cves": [], "html": "<p>      \u5f7b\u5e95\u6539\u9020 <span>pg_upgrade</span> \u7684\u65e5\u5fd7\u548c\u5931\u8d25\u62a5\u544a\uff08Bruce Momjian\uff09\n     </p><p>      \u521b\u5efa\u56db\u4e2a\u53ea\u8ffd\u52a0\u7684\u65e5\u5fd7\u6587\u4ef6\uff0c\u6210\u529f\u65f6\u5220\u9664\u5b83\u4eec\u3002\u65b0\u589e <code>-r</code>/<code>--retain</code> \u9009\u9879\u4ee5\u65e0\u6761\u4ef6\u4fdd\u7559\u8fd9\u4e9b\u6587\u4ef6\u3002\u540c\u65f6\u79fb\u9664 <span>pg_upgrade</span> \u7684 <code>-g</code>/<code>-G</code>/<code>-l</code> \u9009\u9879\uff08\u5df2\u65e0\u5fc5\u8981\uff09\uff0c\u5e76\u6536\u7d27\u65e5\u5fd7\u6587\u4ef6\u6743\u9650\u3002\n     </p>", "text": "\u5f7b\u5e95\u6539\u9020 pg_upgrade \u7684\u65e5\u5fd7\u548c\u5931\u8d25\u62a5\u544a\uff08Bruce Momjian\uff09 \u521b\u5efa\u56db\u4e2a\u53ea\u8ffd\u52a0\u7684\u65e5\u5fd7\u6587\u4ef6\uff0c\u6210\u529f\u65f6\u5220\u9664\u5b83\u4eec\u3002\u65b0\u589e -r/--retain \u9009\u9879\u4ee5\u65e0\u6761\u4ef6\u4fdd\u7559\u8fd9\u4e9b\u6587\u4ef6\u3002\u540c\u65f6\u79fb\u9664 pg_upgrade \u7684 -g/-G/-l \u9009\u9879\uff08\u5df2\u65e0\u5fc5\u8981\uff09\uff0c\u5e76\u6536\u7d27\u65e5\u5fd7\u6587\u4ef6\u6743\u9650\u3002", "title": "\u5f7b\u5e95\u6539\u9020 pg_upgrade \u7684\u65e5\u5fd7\u548c\u5931\u8d25\u62a5\u544a", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "ec8bd696f6cf0dbbdaccfff66eb534c14b386a7e40a9b0110f9dd6afb9cb23e5", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Overhaul pg_upgrade logging and failure reporting (Bruce Momjian) Create four append-only log files, and delete them on success. Add -r/--retain option to unconditionally retain these files. Also remove pg_upgrade options -g/-G/-l options as unnecessary, and tighten log file permissions.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/195", "db_id": "6ce2bb07c209bc73c771020990d4bc23", "patch_ids": [], "statement_hash": "32692a6e2462c2d46851c0882b678514337cfa507b6934b7b18c0a33b0695e57", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-1e6bf472ef3def45", "migration": false}, {"id": "9.2.0-4c1789391f551ff1", "cves": [], "html": "<p>      \u8ba9 <span>pg_upgrade</span> \u521b\u5efa\u4e00\u4e2a\u811a\u672c\uff0c\u4ee5\u589e\u91cf\u65b9\u5f0f\u751f\u6210\u66f4\u51c6\u786e\u7684\u4f18\u5316\u5668\u7edf\u8ba1\u4fe1\u606f\uff08Bruce Momjian\uff09\n     </p><p>      \u8fd9\u51cf\u5c11\u4e86\u5347\u7ea7\u540e\u751f\u6210\u6700\u5c0f\u96c6\u7c07\u7edf\u8ba1\u4fe1\u606f\u6240\u9700\u7684\u65f6\u95f4\u3002\n     </p>", "text": "\u8ba9 pg_upgrade \u521b\u5efa\u4e00\u4e2a\u811a\u672c\uff0c\u4ee5\u589e\u91cf\u65b9\u5f0f\u751f\u6210\u66f4\u51c6\u786e\u7684\u4f18\u5316\u5668\u7edf\u8ba1\u4fe1\u606f\uff08Bruce Momjian\uff09 \u8fd9\u51cf\u5c11\u4e86\u5347\u7ea7\u540e\u751f\u6210\u6700\u5c0f\u96c6\u7c07\u7edf\u8ba1\u4fe1\u606f\u6240\u9700\u7684\u65f6\u95f4\u3002", "title": "\u8ba9 pg_upgrade \u521b\u5efa\u4e00\u4e2a\u811a\u672c\uff0c\u4ee5\u589e\u91cf\u65b9\u5f0f\u751f\u6210\u66f4\u51c6\u786e\u7684\u4f18\u5316\u5668\u7edf\u8ba1\u4fe1\u606f", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "f3bd2834450f2748da9dada0914e549efd8f36ff532cf076f951a98c1a1f7045", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Make pg_upgrade create a script to incrementally generate more accurate optimizer statistics (Bruce Momjian) This reduces the time needed to generate minimal cluster statistics after an upgrade.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/196", "db_id": "08600355de7fb1ce31f87d59fb6a6d21", "patch_ids": [], "statement_hash": "1803fc4938df42b265c54913d06a58334197533149dff795725f6f62dc6b4f74", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4c1789391f551ff1", "migration": false}, {"id": "9.2.0-c86becccb477c1c6", "cves": [], "html": "<p>      \u5141\u8bb8 <span>pg_upgrade</span> \u5347\u7ea7\u6ca1\u6709 <code>postgres</code> \u6570\u636e\u5e93\u7684\u65e7\u96c6\u7c07\uff08Bruce Momjian\uff09\n     </p>", "text": "\u5141\u8bb8 pg_upgrade \u5347\u7ea7\u6ca1\u6709 postgres \u6570\u636e\u5e93\u7684\u65e7\u96c6\u7c07\uff08Bruce Momjian\uff09", "title": "\u5141\u8bb8 pg_upgrade \u5347\u7ea7\u6ca1\u6709 postgres \u6570\u636e\u5e93\u7684\u65e7\u96c6\u7c07", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "550b9392064a7a10d771b25e3fc8712e5f53fe0ac0f06dcb4836c24c08284d94", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Allow pg_upgrade to upgrade an old cluster that does not have a postgres database (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/197", "db_id": "3e02d3ccaa61ac0a7316e1c5257b3da9", "patch_ids": [], "statement_hash": "ba89ee04f37e74625aa0f61ccba156aa00f6a960c8e79520f0d6fdc287fda55e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c86becccb477c1c6", "migration": false}, {"id": "9.2.0-d8fbee7babfdc440", "cves": [], "html": "<p>      \u5141\u8bb8 <span>pg_upgrade</span> \u5904\u7406\u67d0\u4e9b\u65e7\u5e93\u6216\u65b0\u5e93\u7f3a\u5931\u7684\u60c5\u51b5\uff0c\u53ea\u8981\u5b83\u4eec\u662f\u7a7a\u7684\uff08Bruce Momjian\uff09\n     </p>", "text": "\u5141\u8bb8 pg_upgrade \u5904\u7406\u67d0\u4e9b\u65e7\u5e93\u6216\u65b0\u5e93\u7f3a\u5931\u7684\u60c5\u51b5\uff0c\u53ea\u8981\u5b83\u4eec\u662f\u7a7a\u7684\uff08Bruce Momjian\uff09", "title": "\u5141\u8bb8 pg_upgrade \u5904\u7406\u67d0\u4e9b\u65e7\u5e93\u6216\u65b0\u5e93\u7f3a\u5931\u7684\u60c5\u51b5\uff0c\u53ea\u8981\u5b83\u4eec\u662f\u7a7a\u7684", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "96c8feb9bbd95a2a66cc49f54524db9c1dfa7ba501f49ba3361dcb9e81dea8e0", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Allow pg_upgrade to handle cases where some old or new databases are missing, as long as they are empty (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/198", "db_id": "7ec77dbc98e7b86bc2e2eaa1f9eec7e0", "patch_ids": [], "statement_hash": "4e6911444cbd74631171872c0063c2a930a66ebd53d5bc4ed5305f3638013476", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d8fbee7babfdc440", "migration": false}, {"id": "9.2.0-deb5a9febefdcc88", "cves": [], "html": "<p>      \u5141\u8bb8 <span>pg_upgrade</span> \u5904\u7406\u4ec5\u914d\u7f6e\u76ee\u5f55\u7684\u5b89\u88c5\uff08Bruce Momjian\uff09\n     </p>", "text": "\u5141\u8bb8 pg_upgrade \u5904\u7406\u4ec5\u914d\u7f6e\u76ee\u5f55\u7684\u5b89\u88c5\uff08Bruce Momjian\uff09", "title": "\u5141\u8bb8 pg_upgrade \u5904\u7406\u4ec5\u914d\u7f6e\u76ee\u5f55\u7684\u5b89\u88c5", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "74f96e90b48ea842bc64b2a0c915f517218a5b1b9fc70f67c4e36dd2ca76ac0f", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Allow pg_upgrade to handle configuration-only directory installations (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/199", "db_id": "35b5ca6a2b2da34cabd78b33ee05516e", "patch_ids": [], "statement_hash": "8ba21755c0888f9748a459fb37296e2e226638ea2de81ebdb730c167956caace", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-deb5a9febefdcc88", "migration": false}, {"id": "9.2.0-e50b9026d03d9a5a", "cves": [], "html": "<p>      \u5728 <span>pg_upgrade</span> \u4e2d\u65b0\u589e <code>-o</code>/<code>-O</code> \u9009\u9879\uff0c\u7528\u4e8e\u5411\u670d\u52a1\u5668\u4f20\u9012\u53c2\u6570\uff08Bruce Momjian\uff09\n     </p><p>      \u8fd9\u5bf9\u4ec5\u914d\u7f6e\u76ee\u5f55\u7684\u5b89\u88c5\u5f88\u6709\u7528\u3002\n     </p>", "text": "\u5728 pg_upgrade \u4e2d\u65b0\u589e -o/-O \u9009\u9879\uff0c\u7528\u4e8e\u5411\u670d\u52a1\u5668\u4f20\u9012\u53c2\u6570\uff08Bruce Momjian\uff09 \u8fd9\u5bf9\u4ec5\u914d\u7f6e\u76ee\u5f55\u7684\u5b89\u88c5\u5f88\u6709\u7528\u3002", "title": "\u5728 pg_upgrade \u4e2d\u65b0\u589e -o/-O \u9009\u9879\uff0c\u7528\u4e8e\u5411\u670d\u52a1\u5668\u4f20\u9012\u53c2\u6570", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "2cdb4ce853139eef85875a3f29b034cfe498020dde2c279e9f1305183e61a1c3", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "In pg_upgrade, add -o/-O options to pass parameters to the servers (Bruce Momjian) This is useful for configuration-only directory installs.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/200", "db_id": "f70b0d7705d252be6bff0ea4b00a21ae", "patch_ids": [], "statement_hash": "bb24d4a48534de4f6af6a17791084572d5fad6613a4f4dc4838e256be4c355bc", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-e50b9026d03d9a5a", "migration": false}, {"id": "9.2.0-a53d2cb6997bd8da", "cves": [], "html": "<p>      \u66f4\u6539 <span>pg_upgrade</span>\uff0c\u4f7f\u5176\u9ed8\u8ba4\u4f7f\u7528\u7aef\u53e3 50432\uff08Bruce Momjian\uff09\n     </p><p>      \u8fd9\u6709\u52a9\u4e8e\u907f\u514d\u5347\u7ea7\u671f\u95f4\u610f\u5916\u7684\u5ba2\u6237\u7aef\u8fde\u63a5\u3002\n     </p>", "text": "\u66f4\u6539 pg_upgrade\uff0c\u4f7f\u5176\u9ed8\u8ba4\u4f7f\u7528\u7aef\u53e3 50432\uff08Bruce Momjian\uff09 \u8fd9\u6709\u52a9\u4e8e\u907f\u514d\u5347\u7ea7\u671f\u95f4\u610f\u5916\u7684\u5ba2\u6237\u7aef\u8fde\u63a5\u3002", "title": "\u66f4\u6539 pg_upgrade\uff0c\u4f7f\u5176\u9ed8\u8ba4\u4f7f\u7528\u7aef\u53e3 50432", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "205a8cd9e838c641d223a3534a9443689f775a3ac996ec225b7826cfa8a618ee", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Change pg_upgrade to use port 50432 by default (Bruce Momjian) This helps avoid unintended client connections during the upgrade.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/201", "db_id": "c3a48955f98178b16e6dc112ef2834d0", "patch_ids": [], "statement_hash": "a375989fbdec8148515dc44af9ffdca2d3bac578729eb4af470b04e533ff60d3", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a53d2cb6997bd8da", "migration": false}, {"id": "9.2.0-d4e9f38c3e470b38", "cves": [], "html": "<p>      \u51cf\u5c11 <span>pg_upgrade</span> \u4e2d\u7684\u96c6\u7c07\u9501\u5b9a\uff08Bruce Momjian\uff09\n     </p><p>      \u5177\u4f53\u800c\u8a00\uff0c\u53ea\u6709\u4f7f\u7528\u94fe\u63a5\u6a21\u5f0f\u65f6\u624d\u9501\u5b9a\u65e7\u96c6\u7c07\uff0c\u5e76\u5728\u6a21\u5f0f\u6062\u590d\u4e4b\u540e\u7acb\u5373\u8fdb\u884c\u3002\n     </p>", "text": "\u51cf\u5c11 pg_upgrade \u4e2d\u7684\u96c6\u7c07\u9501\u5b9a\uff08Bruce Momjian\uff09 \u5177\u4f53\u800c\u8a00\uff0c\u53ea\u6709\u4f7f\u7528\u94fe\u63a5\u6a21\u5f0f\u65f6\u624d\u9501\u5b9a\u65e7\u96c6\u7c07\uff0c\u5e76\u5728\u6a21\u5f0f\u6062\u590d\u4e4b\u540e\u7acb\u5373\u8fdb\u884c\u3002", "title": "\u51cf\u5c11 pg_upgrade \u4e2d\u7684\u96c6\u7c07\u9501\u5b9a", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "2a8cfc20545f0fe69b093c6c5749907406ccef29477d57b699d63555dacdbe97", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_upgrade"], "commit_groups": [], "identity_text": "Reduce cluster locking in pg_upgrade (Bruce Momjian) Specifically, only lock the old cluster if link mode is used, and do it right after the schema is restored.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/202", "db_id": "f1382552703361a5f441a600820d651e", "patch_ids": [], "statement_hash": "458b32531f3b2a6532c9743f427988578db9ff65bcb446565cdf1f7537f7de50", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-d4e9f38c3e470b38", "migration": false}, {"id": "9.2.0-5dd31f3bd631c177", "cves": [], "html": "<p>      \u5141\u8bb8 <span>pg_stat_statements</span> \u901a\u8fc7 SQL \u6587\u672c\u5f52\u4e00\u5316\u805a\u5408\u76f8\u4f3c\u67e5\u8be2\uff08Peter Geoghegan\u3001Tom Lane\uff09\n     </p><p>      \u4f7f\u7528\u975e\u53c2\u6570\u5316 SQL \u5e94\u7528\u7684\u7528\u6237\u73b0\u5728\u65e0\u9700\u8be6\u7ec6\u7684\u65e5\u5fd7\u5206\u6790\u5c31\u80fd\u76d1\u63a7\u67e5\u8be2\u6027\u80fd\u3002\n     </p>", "text": "\u5141\u8bb8 pg_stat_statements \u901a\u8fc7 SQL \u6587\u672c\u5f52\u4e00\u5316\u805a\u5408\u76f8\u4f3c\u67e5\u8be2\uff08Peter Geoghegan\u3001Tom Lane\uff09 \u4f7f\u7528\u975e\u53c2\u6570\u5316 SQL \u5e94\u7528\u7684\u7528\u6237\u73b0\u5728\u65e0\u9700\u8be6\u7ec6\u7684\u65e5\u5fd7\u5206\u6790\u5c31\u80fd\u76d1\u63a7\u67e5\u8be2\u6027\u80fd\u3002", "title": "\u5141\u8bb8 pg_stat_statements \u901a\u8fc7 SQL \u6587\u672c\u5f52\u4e00\u5316\u805a\u5408\u76f8\u4f3c\u67e5\u8be2", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_stat_statements", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.4", "source_hash": "a5e4cfa4881a4593e5c29592c12df220e5dc7777982da0b5852e3cc2c7302e59", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_stat_statements"], "commit_groups": [], "identity_text": "Allow pg_stat_statements to aggregate similar queries via SQL text normalization (Peter Geoghegan, Tom Lane) Users with applications that use non-parameterized SQL will now be able to monitor query performance without detailed log analysis.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/203", "db_id": "d97f38e251929da82ed978854d220cc1", "patch_ids": [], "statement_hash": "fb9b618a6567756a59136d93042e35997c3853b55fb0f6cf3f43e9d1bb1b5239", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-5dd31f3bd631c177", "migration": false}, {"id": "9.2.0-799997b43a81a679", "cves": [], "html": "<p>      \u4e3a <span>pg_stat_statements</span> \u65b0\u589e\u810f\u5757\u548c\u5199\u51fa\u5757\u8ba1\u6570\u4ee5\u53ca\u8bfb\u5199\u65f6\u95f4\uff08Robert Haas\u3001Ants Aasma\uff09\n     </p>", "text": "\u4e3a pg_stat_statements \u65b0\u589e\u810f\u5757\u548c\u5199\u51fa\u5757\u8ba1\u6570\u4ee5\u53ca\u8bfb\u5199\u65f6\u95f4\uff08Robert Haas\u3001Ants Aasma\uff09", "title": "\u4e3a pg_stat_statements \u65b0\u589e\u810f\u5757\u548c\u5199\u51fa\u5757\u8ba1\u6570\u4ee5\u53ca\u8bfb\u5199\u65f6\u95f4", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_stat_statements", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.4", "source_hash": "078a500f65f342900413893e5563aa627a3232c422de3bbf02668fbb45d2f595", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_stat_statements"], "commit_groups": [], "identity_text": "Add dirtied and written block counts and read/write times to pg_stat_statements (Robert Haas, Ants Aasma)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/204", "db_id": "b01073292f55366394e95f4f2d002ac9", "patch_ids": [], "statement_hash": "57ba381cbd12374a51361065499f7c1b53b5fe2f9cd5aa1de9a9fa9677d20f0e", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-799997b43a81a679", "migration": false}, {"id": "9.2.0-bc3655c3127663dc", "cves": [], "html": "<p>      \u9632\u6b62 <span>pg_stat_statements</span> \u91cd\u590d\u8ba1\u6570 <code>PREPARE</code> \u548c <code>EXECUTE</code> \u547d\u4ee4\uff08Tom Lane\uff09\n     </p>", "text": "\u9632\u6b62 pg_stat_statements \u91cd\u590d\u8ba1\u6570 PREPARE \u548c EXECUTE \u547d\u4ee4\uff08Tom Lane\uff09", "title": "\u9632\u6b62 pg_stat_statements \u91cd\u590d\u8ba1\u6570 PREPARE \u548c EXECUTE \u547d\u4ee4", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / pg_stat_statements", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.4", "source_hash": "d69e49c29780aca7b21a6d7fbd8b95583299f444afd8135c4fe83dbdd7b4cae6", "section_path": ["\u9644\u52a0\u6a21\u5757", "pg_stat_statements"], "commit_groups": [], "identity_text": "Prevent pg_stat_statements from double-counting PREPARE and EXECUTE commands (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/205", "db_id": "3603f32469e60cc799b832c266e4590a", "patch_ids": [], "statement_hash": "cb810190b4042c5137aabdacb1d44f16348863a2631b76b8cc3af390f6f269c1", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-bc3655c3127663dc", "migration": false}, {"id": "9.2.0-7483ae2648a7003f", "cves": [], "html": "<p>      \u652f\u6301\u5728\u5168\u5c40\u5bf9\u8c61\u4e0a\u4f7f\u7528 <code>SECURITY LABEL</code>\uff08KaiGai Kohei\u3001Robert Haas\uff09\n     </p><p>      \u5177\u4f53\u800c\u8a00\uff0c\u4e3a\u6570\u636e\u5e93\u3001\u8868\u7a7a\u95f4\u548c\u89d2\u8272\u6dfb\u52a0\u5b89\u5168\u6807\u7b7e\u3002\n     </p>", "text": "\u652f\u6301\u5728\u5168\u5c40\u5bf9\u8c61\u4e0a\u4f7f\u7528 SECURITY LABEL\uff08KaiGai Kohei\u3001Robert Haas\uff09 \u5177\u4f53\u800c\u8a00\uff0c\u4e3a\u6570\u636e\u5e93\u3001\u8868\u7a7a\u95f4\u548c\u89d2\u8272\u6dfb\u52a0\u5b89\u5168\u6807\u7b7e\u3002", "title": "\u652f\u6301\u5728\u5168\u5c40\u5bf9\u8c61\u4e0a\u4f7f\u7528 SECURITY LABEL", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "b571a7718174d413bfd9d0367ecb82de44c2e14516764b987865352fc1b520fa", "section_path": ["\u9644\u52a0\u6a21\u5757", "sepgsql"], "commit_groups": [], "identity_text": "Support SECURITY LABEL on global objects (KaiGai Kohei, Robert Haas) Specifically, add security labels to databases, tablespaces, and roles.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/206", "db_id": "abc157b04209b819df43153ef3f4058b", "patch_ids": [], "statement_hash": "b21959f8e98f3042eeda81366728be5e44484e036046f15367c3e200d3c5bd1c", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-7483ae2648a7003f", "migration": false}, {"id": "9.2.0-643d246e3cbe9866", "cves": [], "html": "<p>      \u5141\u8bb8 sepgsql \u9075\u5faa\u6570\u636e\u5e93\u6807\u7b7e\uff08KaiGai Kohei\uff09\n     </p>", "text": "\u5141\u8bb8 sepgsql \u9075\u5faa\u6570\u636e\u5e93\u6807\u7b7e\uff08KaiGai Kohei\uff09", "title": "\u5141\u8bb8 sepgsql \u9075\u5faa\u6570\u636e\u5e93\u6807\u7b7e", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "d8aecc2938bb410af6223014f9eaafbfb868daada4bcaf6d4341f3f38fc6edda", "section_path": ["\u9644\u52a0\u6a21\u5757", "sepgsql"], "commit_groups": [], "identity_text": "Allow sepgsql to honor database labels (KaiGai Kohei)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/207", "db_id": "b8175cc530ce957d24b8cd0d81b48037", "patch_ids": [], "statement_hash": "1410406dae7424a99584a2037bc4656b6c1fcbca145a4fee65007280e07b476c", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-643d246e3cbe9866", "migration": false}, {"id": "9.2.0-7d8458753ea70253", "cves": [], "html": "<p>      \u5728\u5404\u79cd\u5bf9\u8c61\u521b\u5efa\u671f\u95f4\u6267\u884c sepgsql \u6743\u9650\u68c0\u67e5\uff08KaiGai Kohei\uff09\n     </p>", "text": "\u5728\u5404\u79cd\u5bf9\u8c61\u521b\u5efa\u671f\u95f4\u6267\u884c sepgsql \u6743\u9650\u68c0\u67e5\uff08KaiGai Kohei\uff09", "title": "\u5728\u5404\u79cd\u5bf9\u8c61\u521b\u5efa\u671f\u95f4\u6267\u884c sepgsql \u6743\u9650\u68c0\u67e5", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "1e1e467cff5537b028f4bde3565644172d2eafd1eccb27887bf709f094351c95", "section_path": ["\u9644\u52a0\u6a21\u5757", "sepgsql"], "commit_groups": [], "identity_text": "Perform sepgsql permission checks during the creation of various objects (KaiGai Kohei)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/208", "db_id": "7ae5f2e20e5147c3eb91957f4d6b6800", "patch_ids": [], "statement_hash": "b1f54d377b529f313e24188bccf492a12763deb531573557dd3ed6d11be5a060", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-7d8458753ea70253", "migration": false}, {"id": "9.2.0-980cbedff6a866bc", "cves": [], "html": "<p>      \u65b0\u589e <code>sepgsql_setcon()</code> \u53ca\u76f8\u5173\u51fd\u6570\uff0c\u7528\u4e8e\u63a7\u5236 sepgsql \u5b89\u5168\u57df\uff08KaiGai Kohei\uff09\n     </p>", "text": "\u65b0\u589e sepgsql_setcon() \u53ca\u76f8\u5173\u51fd\u6570\uff0c\u7528\u4e8e\u63a7\u5236 sepgsql \u5b89\u5168\u57df\uff08KaiGai Kohei\uff09", "title": "\u65b0\u589e sepgsql_setcon() \u53ca\u76f8\u5173\u51fd\u6570\uff0c\u7528\u4e8e\u63a7\u5236 sepgsql \u5b89\u5168\u57df", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "e7ff8ad075e1e63ed1d717491b4c0b1a129075db562fcaaf0cc573027d9b723e", "section_path": ["\u9644\u52a0\u6a21\u5757", "sepgsql"], "commit_groups": [], "identity_text": "Add sepgsql_setcon() and related functions to control the sepgsql security domain (KaiGai Kohei)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/209", "db_id": "dad29cc68b78e5f5d2e91b8896380e82", "patch_ids": [], "statement_hash": "0035e179c92190e1db307787db1edeae20da9884ab2471f06aaa1e175f616213", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-980cbedff6a866bc", "migration": false}, {"id": "9.2.0-969750e275302a31", "cves": [], "html": "<p>      \u4e3a sepgsql \u65b0\u589e\u7528\u6237\u7a7a\u95f4\u8bbf\u95ee\u7f13\u5b58\u4ee5\u63d0\u5347\u6027\u80fd\uff08KaiGai Kohei\uff09\n     </p>", "text": "\u4e3a sepgsql \u65b0\u589e\u7528\u6237\u7a7a\u95f4\u8bbf\u95ee\u7f13\u5b58\u4ee5\u63d0\u5347\u6027\u80fd\uff08KaiGai Kohei\uff09", "title": "\u4e3a sepgsql \u65b0\u589e\u7528\u6237\u7a7a\u95f4\u8bbf\u95ee\u7f13\u5b58\u4ee5\u63d0\u5347\u6027\u80fd", "commits": [], "section": "\u9644\u52a0\u6a21\u5757 / sepgsql", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "8c60528987f5a1279e4ad686986b9471ed95f7ce58082505757585ab59f41e77", "section_path": ["\u9644\u52a0\u6a21\u5757", "sepgsql"], "commit_groups": [], "identity_text": "Add a user space access cache to sepgsql to improve performance (KaiGai Kohei)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/210", "db_id": "886cf516c07fcc157fa7c9f4bfd2cece", "patch_ids": [], "statement_hash": "fcde02bd9672b5888ba8144bbb04b26b5ca99835fd8aa489f73924d5f91bb791", "relations": [], "category_label": "\u6027\u80fd\u6539\u8fdb", "url": "/docs/compare/?release=9.2.0#9.2.0-969750e275302a31", "migration": false}, {"id": "9.2.0-434a54029aa50e2c", "cves": [], "html": "<p>      \u65b0\u589e\u89c4\u5219\uff0c\u53ef\u9009\u62e9\u4f7f\u7528\u7f51\u7ad9\u6837\u5f0f\u8868\u6784\u5efa HTML \u6587\u6863\uff08Magnus Hagander\uff09\n     </p><p>      \u4f7f\u7528 <code>gmake STYLE=website draft</code>\u3002\n     </p>", "text": "\u65b0\u589e\u89c4\u5219\uff0c\u53ef\u9009\u62e9\u4f7f\u7528\u7f51\u7ad9\u6837\u5f0f\u8868\u6784\u5efa HTML \u6587\u6863\uff08Magnus Hagander\uff09 \u4f7f\u7528 gmake STYLE=website draft\u3002", "title": "\u65b0\u589e\u89c4\u5219\uff0c\u53ef\u9009\u62e9\u4f7f\u7528\u7f51\u7ad9\u6837\u5f0f\u8868\u6784\u5efa HTML \u6587\u6863", "commits": [], "section": "\u6587\u6863", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "43d322d4b133491e78ba07578463b6548f9cd2032fb59c2a346cf4af738f9193", "section_path": ["\u6587\u6863"], "commit_groups": [], "identity_text": "Add a rule to optionally build HTML documentation using the stylesheet from the website (Magnus Hagander) Use gmake STYLE=website draft.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/211", "db_id": "4ee73468d9e7113bfbfbf51502aef3fe", "patch_ids": [], "statement_hash": "c84320e37e3901129cb2c932c856dc143b02e258ebe8d32e4709c4a9553d8209", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-434a54029aa50e2c", "migration": false}, {"id": "9.2.0-a25f9369a907c77a", "cves": [], "html": "<p>      \u6539\u8fdb <code>EXPLAIN</code> \u6587\u6863\uff08Tom Lane\uff09\n     </p>", "text": "\u6539\u8fdb EXPLAIN \u6587\u6863\uff08Tom Lane\uff09", "title": "\u6539\u8fdb EXPLAIN \u6587\u6863", "commits": [], "section": "\u6587\u6863", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "fc037f942ab841c0f50b200f727b6b3a73a4fee5bd37d263981f9efa9ccc1e93", "section_path": ["\u6587\u6863"], "commit_groups": [], "identity_text": "Improve EXPLAIN documentation (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/212", "db_id": "8385177d02fb88cef1886a8558ec4481", "patch_ids": [], "statement_hash": "3f6da1eae482183741c890db7c37c9df86ed5a623bd198178c46946237e0a29b", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-a25f9369a907c77a", "migration": false}, {"id": "9.2.0-4d41dadbe75b8fa7", "cves": [], "html": "<p>      \u8bb0\u5f55\u547d\u4ee4\u884c\u5de5\u5177\uff08\u5982 <span>vacuumdb</span>\uff09\u901a\u8fc7\u53cc\u5f15\u53f7\u4fdd\u7559\u7528\u6237/\u6570\u636e\u5e93\u540d\uff08Bruce Momjian\uff09\n     </p>", "text": "\u8bb0\u5f55\u547d\u4ee4\u884c\u5de5\u5177\uff08\u5982 vacuumdb\uff09\u901a\u8fc7\u53cc\u5f15\u53f7\u4fdd\u7559\u7528\u6237/\u6570\u636e\u5e93\u540d\uff08Bruce Momjian\uff09", "title": "\u8bb0\u5f55\u547d\u4ee4\u884c\u5de5\u5177\uff08\u5982 vacuumdb\uff09\u901a\u8fc7\u53cc\u5f15\u53f7\u4fdd\u7559\u7528\u6237/\u6570\u636e\u5e93\u540d", "commits": [], "section": "\u6587\u6863", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "9ccdb834130e94d4c9747304dfd76ca93433ec69cbf9b66e92db01e163ea0e80", "section_path": ["\u6587\u6863"], "commit_groups": [], "identity_text": "Document that user/database names are preserved with double-quoting by command-line tools like vacuumdb (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/213", "db_id": "3e01336f1e9e0333632b4a0b08c61af2", "patch_ids": [], "statement_hash": "07f054eecd7745ddab5ea955fa8f9a724a962d14b7ad4e5a518a26151222dd63", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-4d41dadbe75b8fa7", "migration": false}, {"id": "9.2.0-c3f220f50d136581", "cves": [], "html": "<p>      \u8bb0\u5f55\u5ba2\u6237\u7aef\u4e3a MD5 \u8ba4\u8bc1\u8fd4\u56de\u7684\u5b9e\u9645\u5b57\u7b26\u4e32\uff08Cyan Ogilvie\uff09\n     </p>", "text": "\u8bb0\u5f55\u5ba2\u6237\u7aef\u4e3a MD5 \u8ba4\u8bc1\u8fd4\u56de\u7684\u5b9e\u9645\u5b57\u7b26\u4e32\uff08Cyan Ogilvie\uff09", "title": "\u8bb0\u5f55\u5ba2\u6237\u7aef\u4e3a MD5 \u8ba4\u8bc1\u8fd4\u56de\u7684\u5b9e\u9645\u5b57\u7b26\u4e32", "commits": [], "section": "\u6587\u6863", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "13aa2c42c947b1de78ed7a00a689cdd3fa816ab56c392374ef68a06e35cb1356", "section_path": ["\u6587\u6863"], "commit_groups": [], "identity_text": "Document the actual string returned by the client for MD5 authentication (Cyan Ogilvie)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/214", "db_id": "a41350363951ce32aba5e5a97ae09254", "patch_ids": [], "statement_hash": "5c116bcee4bdaf7848b2cf6687cfd49b705bee731ecfd74bdf0733535770d2ff", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-c3f220f50d136581", "migration": false}, {"id": "9.2.0-9ededaa138618210", "cves": [], "html": "<p>      \u5e9f\u5f03\u5728 <code>CREATE TEMP TABLE</code> \u4e2d\u4f7f\u7528 <code>GLOBAL</code> \u548c <code>LOCAL</code>\uff08Noah Misch\uff09\n     </p><p> <span>PostgreSQL</span> \u957f\u671f\u4ee5\u6765\u628a\u8fd9\u4e9b\u5173\u952e\u5b57\u89c6\u4e3a\u65e0\u64cd\u4f5c\uff0c\u5e76\u5c06\u7ee7\u7eed\u5982\u6b64\uff1b\u4f46\u672a\u6765\u5b83\u4eec\u53ef\u80fd\u83b7\u5f97 SQL \u6807\u51c6\u6240\u89c4\u5b9a\u7684\u542b\u4e49\uff0c\u56e0\u6b64\u5e94\u7528\u5e94\u907f\u514d\u4f7f\u7528\u5b83\u4eec\u3002\n     </p>", "text": "\u5e9f\u5f03\u5728 CREATE TEMP TABLE \u4e2d\u4f7f\u7528 GLOBAL \u548c LOCAL\uff08Noah Misch\uff09 PostgreSQL \u957f\u671f\u4ee5\u6765\u628a\u8fd9\u4e9b\u5173\u952e\u5b57\u89c6\u4e3a\u65e0\u64cd\u4f5c\uff0c\u5e76\u5c06\u7ee7\u7eed\u5982\u6b64\uff1b\u4f46\u672a\u6765\u5b83\u4eec\u53ef\u80fd\u83b7\u5f97 SQL \u6807\u51c6\u6240\u89c4\u5b9a\u7684\u542b\u4e49\uff0c\u56e0\u6b64\u5e94\u7528\u5e94\u907f\u514d\u4f7f\u7528\u5b83\u4eec\u3002", "title": "\u5e9f\u5f03\u5728 CREATE TEMP TABLE \u4e2d\u4f7f\u7528 GLOBAL \u548c LOCAL", "commits": [], "section": "\u6587\u6863", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "248acf36e09cb93f1865e5c13b71e662d3f3de96b4ba72b0227a46ab1d348c7a", "section_path": ["\u6587\u6863"], "commit_groups": [], "identity_text": "Deprecate use of GLOBAL and LOCAL in CREATE TEMP TABLE (Noah Misch) PostgreSQL has long treated these keyword as no-ops, and continues to do so; but in future they might mean what the SQL standard says they mean, so applications should avoid using them.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/215", "db_id": "684e64b2aebd0d2cdcd84429a2bc86ad", "patch_ids": [], "statement_hash": "ae960af24abd5b32520e32dd246b9b0c4ae2b14ef98906937908badd15be569f", "relations": [], "category_label": "\u65b0\u529f\u80fd", "url": "/docs/compare/?release=9.2.0#9.2.0-9ededaa138618210", "migration": false}], "initial_entry_count": 238, "migration_html": "<p>      \u5bf9\u4e8e\u5e0c\u671b\u4ece\u4efb\u4f55\u65e9\u671f\u7248\u672c\u8fc1\u79fb\u6570\u636e\u7684\u7528\u6237\uff0c\u9700\u8981\u4f7f\u7528 <span>pg_dump</span> \u8fdb\u884c\u8f6c\u50a8/\u6062\u590d\uff0c\u6216\u8005\u4f7f\u7528 <span>pg_upgrade</span>\u3002\n     </p><p>     \u7248\u672c 9.2 \u5305\u542b\u8bb8\u591a\u53ef\u80fd\u5f71\u54cd\u4e0e\u4ee5\u524d\u7248\u672c\u517c\u5bb9\u6027\u7684\u53d8\u66f4\u3002\u8bf7\u6ce8\u610f\u4ee5\u4e0b\u4e0d\u517c\u5bb9\u4e4b\u5904\uff1a\n    </p><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div>", "category_filters": [{"key": "feature", "label": "\u65b0\u529f\u80fd", "count": 197}, {"key": "bugfix", "label": "BUG \u4fee\u590d", "count": 6}, {"key": "security", "label": "\u5b89\u5168\u76f8\u5173", "count": 0}, {"key": "performance", "label": "\u6027\u80fd\u6539\u8fdb", "count": 12}, {"key": "compatibility", "label": "\u517c\u5bb9\u6027\u53d8\u5316", "count": 23}, {"key": "improvement", "label": "\u5176\u4ed6\u6539\u8fdb", "count": 0}], "security_rows": [{"id": "CVE-2017-7547", "title": "pg_user_mappings view discloses passwords to users lacking server privileges", "url": "https://www.postgresql.org/support/security/CVE-2017-7547/", "score": 8.5, "vector": "AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.22", "fixed_url": "/docs/compare/?release=9.2.22", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.22", "version": "9.2.22", "title": "\u8fdb\u4e00\u6b65\u9650\u5236 pg_user_mappings.umoptions \u7684\u53ef\u89c1\u6027\uff0c\u4ee5\u4fdd\u62a4\u5b58\u50a8\u4e3a\u7528\u6237\u6620\u5c04\u9009\u9879\u7684\u5bc6\u7801", "url": "/docs/compare/?release=9.2.22#9.2.22-a79358365b635764"}, {"build": "9.2.21", "version": "9.2.21", "title": "\u9650\u5236pg_user_mappings.umoptions\u7684\u53ef\u89c1\u6027\uff0c\u4ee5\u4fdd\u62a4\u4f5c\u4e3a\u7528\u6237\u6620\u5c04\u9009\u9879\u5b58\u50a8\u7684\u5bc6\u7801", "url": "/docs/compare/?release=9.2.21#9.2.21-79d9b1a29aec7ea1"}], "evidence": "branch-matrix"}, {"id": "CVE-2017-7546", "title": "empty password accepted in some authentication methods", "url": "https://www.postgresql.org/support/security/CVE-2017-7546/", "score": 8.1, "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.22", "fixed_url": "/docs/compare/?release=9.2.22", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.22", "version": "9.2.22", "title": "\u7981\u6b62\u5728\u6240\u6709\u57fa\u4e8e\u5bc6\u7801\u7684\u8ba4\u8bc1\u65b9\u6cd5\u4e2d\u4f7f\u7528\u7a7a\u5bc6\u7801", "url": "/docs/compare/?release=9.2.22#9.2.22-49a2f6860ca3f76c"}], "evidence": "branch-matrix"}, {"id": "CVE-2017-7486", "title": "pg_user_mappings view discloses foreign server passwords", "url": "https://www.postgresql.org/support/security/CVE-2017-7486/", "score": 8.5, "vector": "AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.21", "fixed_url": "/docs/compare/?release=9.2.21", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.22", "version": "9.2.22", "title": "\u8fdb\u4e00\u6b65\u9650\u5236 pg_user_mappings.umoptions \u7684\u53ef\u89c1\u6027\uff0c\u4ee5\u4fdd\u62a4\u5b58\u50a8\u4e3a\u7528\u6237\u6620\u5c04\u9009\u9879\u7684\u5bc6\u7801", "url": "/docs/compare/?release=9.2.22#9.2.22-a79358365b635764"}, {"build": "9.2.21", "version": "9.2.21", "title": "\u9650\u5236pg_user_mappings.umoptions\u7684\u53ef\u89c1\u6027\uff0c\u4ee5\u4fdd\u62a4\u4f5c\u4e3a\u7528\u6237\u6620\u5c04\u9009\u9879\u5b58\u50a8\u7684\u5bc6\u7801", "url": "/docs/compare/?release=9.2.21#9.2.21-79d9b1a29aec7ea1"}], "evidence": "branch-matrix"}, {"id": "CVE-2017-7484", "title": "selectivity estimators bypass SELECT privilege checks", "url": "https://www.postgresql.org/support/security/CVE-2017-7484/", "score": 4.3, "vector": "AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N", "description": "", "description_language": "en", "fixed": "9.2.21", "fixed_url": "/docs/compare/?release=9.2.21", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.21", "version": "9.2.21", "title": "\u9632\u6b62\u901a\u8fc7\u6cc4\u6f0f\u578b\u64cd\u4f5c\u7b26\u66b4\u9732\u7edf\u8ba1\u4fe1\u606f", "url": "/docs/compare/?release=9.2.21#9.2.21-e7d6271f2c62b341"}], "evidence": "branch-matrix"}, {"id": "CVE-2017-12172", "title": "Start scripts permit database administrator to modify root-owned files", "url": "https://www.postgresql.org/support/security/CVE-2017-12172/", "score": 8.4, "vector": "AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.24", "fixed_url": "/docs/compare/?release=9.2.24", "affected": "9.2", "component": "contrib module", "mentions": [{"build": "9.2.24", "version": "9.2.24", "title": "\u4fee\u590d\u793a\u4f8b\u670d\u52a1\u5668\u542f\u52a8\u811a\u672c\u5728\u6253\u5f00 $PGLOG \u4e4b\u524d\u53d8\u6210 $PGUSER", "url": "/docs/compare/?release=9.2.24#9.2.24-b695ceda5feee1ee"}], "evidence": "branch-matrix"}, {"id": "CVE-2016-7048", "title": "Interactive installer downloads software over plain HTTP, then executes it", "url": "https://www.postgresql.org/support/security/CVE-2016-7048/", "score": 7.5, "vector": "AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.19", "fixed_url": "/docs/compare/?release=9.2.19", "affected": "9.2", "component": "packaging", "mentions": [], "evidence": "branch-matrix"}, {"id": "CVE-2016-5424", "title": "Exceptional database and role names could enable escalation to superuser", "url": "https://www.postgresql.org/support/security/CVE-2016-5424/", "score": 8.5, "vector": "AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.18", "fixed_url": "/docs/compare/?release=9.2.18", "affected": "9.2", "component": "client", "mentions": [{"build": "9.2.18", "version": "9.2.18", "title": "\u4fee\u590d\u5ba2\u6237\u7aef\u7a0b\u5e8f\u5bf9\u6570\u636e\u5e93\u540d\u548c\u89d2\u8272\u540d\u4e2d\u7279\u6b8a\u5b57\u7b26\u7684\u5904\u7406", "url": "/docs/compare/?release=9.2.18#9.2.18-5569510630fb5e18"}], "evidence": "branch-matrix"}, {"id": "CVE-2016-5423", "title": "Certain nested CASE/WHEN expressions can crash server", "url": "https://www.postgresql.org/support/security/CVE-2016-5423/", "score": 4.3, "vector": "AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N", "description": "", "description_language": "en", "fixed": "9.2.18", "fixed_url": "/docs/compare/?release=9.2.18", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.18", "version": "9.2.18", "title": "\u4fee\u590d\u5d4c\u5957 CASE-WHEN \u8868\u8fbe\u5f0f\u53ef\u80fd\u88ab\u9519\u8bef\u8bc4\u4f30\u7684\u95ee\u9898", "url": "/docs/compare/?release=9.2.18#9.2.18-d1f1d0d139e01566"}], "evidence": "branch-matrix"}, {"id": "CVE-2016-0773", "title": "Unchecked regex can crash the server", "url": "https://www.postgresql.org/support/security/CVE-2016-0773/", "score": 6.5, "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H", "description": "", "description_language": "en", "fixed": "9.2.15", "fixed_url": "/docs/compare/?release=9.2.15", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.15", "version": "9.2.15", "title": "\u4fee\u590d\u6b63\u5219\u8868\u8fbe\u5f0f\u4e2d\u7684\u65e0\u9650\u5faa\u73af\u548c\u7f13\u51b2\u533a\u8d8a\u754c\u95ee\u9898", "url": "/docs/compare/?release=9.2.15#9.2.15-f56bb4796f0084d4"}], "evidence": "branch-matrix"}, {"id": "CVE-2016-0766", "title": "CVE-2016-0766", "url": "https://www.postgresql.org/support/security/CVE-2016-0766/", "score": null, "vector": "", "description": "", "description_language": "en", "fixed": "", "fixed_url": "", "affected": "", "component": "", "mentions": [{"build": "9.2.15", "version": "9.2.15", "title": "\u9632\u6b62\u67d0\u4e9b PL/Java \u53c2\u6570\u88ab\u975e\u8d85\u7ea7\u7528\u6237\u8bbe\u7f6e", "url": "/docs/compare/?release=9.2.15#9.2.15-4bd6cf6c1d36bca3"}], "evidence": "release-note-mention"}, {"id": "CVE-2015-7499", "title": "CVE-2015-7499", "url": "https://www.postgresql.org/support/security/CVE-2015-7499/", "score": null, "vector": "", "description": "", "description_language": "en", "fixed": "", "fixed_url": "", "affected": "", "component": "", "mentions": [{"build": "9.2.15", "version": "9.2.15", "title": "\u65b0\u589e\u53d8\u4f53\u56de\u5f52\u6d4b\u8bd5\u671f\u671b\u8f93\u51fa\u6587\u4ef6\uff0c\u4ee5\u5339\u914d\u5f53\u524dlibxml2\u7684\u884c\u4e3a", "url": "/docs/compare/?release=9.2.15#9.2.15-7110ad0033f27e27"}], "evidence": "release-note-mention"}, {"id": "CVE-2015-5288", "title": "Memory leak in crypt() function.", "url": "https://www.postgresql.org/support/security/CVE-2015-5288/", "score": 3.1, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N", "description": "", "description_language": "en", "fixed": "9.2.14", "fixed_url": "/docs/compare/?release=9.2.14", "affected": "9.2", "component": "contrib module", "mentions": [{"build": "9.2.14", "version": "9.2.14", "title": "\u4fee\u590dcontrib/pgcrypto\u4ee5\u68c0\u6d4b\u5e76\u62a5\u544a\u8fc7\u77ed\u7684crypt()\u76d0\u503c", "url": "/docs/compare/?release=9.2.14#9.2.14-f6d5fd9c0b0fa047"}], "evidence": "branch-matrix"}, {"id": "CVE-2015-3167", "title": "pgcrypto has multiple error messages for decryption with an incorrect key.", "url": "https://www.postgresql.org/support/security/CVE-2015-3167/", "score": 3.7, "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N", "description": "", "description_language": "en", "fixed": "9.2.11", "fixed_url": "/docs/compare/?release=9.2.11", "affected": "9.2", "component": "contrib module", "mentions": [{"build": "9.2.11", "version": "9.2.11", "title": "\u5728contrib/pgcrypto\u4e2d\uff0c\u7edf\u4e00\u5c06\u89e3\u5bc6\u5931\u8d25\u62a5\u544a\u4e3a\u201cWrong key or corrupt data\u201d", "url": "/docs/compare/?release=9.2.11#9.2.11-8a218bb3e4c24db0"}], "evidence": "branch-matrix"}, {"id": "CVE-2015-3166", "title": "Unanticipated errors from the standard library.", "url": "https://www.postgresql.org/support/security/CVE-2015-3166/", "score": 5.6, "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L", "description": "", "description_language": "en", "fixed": "9.2.11", "fixed_url": "/docs/compare/?release=9.2.11", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.11", "version": "9.2.11", "title": "\u6539\u8fdb\u5bf9\u7cfb\u7edf\u8c03\u7528\u5931\u8d25\u7684\u68c0\u6d4b", "url": "/docs/compare/?release=9.2.11#9.2.11-72654f8666dd7a43"}], "evidence": "branch-matrix"}, {"id": "CVE-2015-3165", "title": "Double \"free\" after authentication timeout", "url": "https://www.postgresql.org/support/security/CVE-2015-3165/", "score": 7.5, "vector": "AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "description": "", "description_language": "en", "fixed": "9.2.11", "fixed_url": "/docs/compare/?release=9.2.11", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.11", "version": "9.2.11", "title": "\u907f\u514d\u5ba2\u6237\u7aef\u6070\u5728\u8ba4\u8bc1\u8d85\u65f6\u5230\u671f\u524d\u65ad\u5f00\u65f6\u53ef\u80fd\u51fa\u73b0\u7684\u5d29\u6e83", "url": "/docs/compare/?release=9.2.11#9.2.11-f137684634296f0b"}], "evidence": "branch-matrix"}, {"id": "CVE-2015-0244", "title": "An error in extended protocol message reading.", "url": "https://www.postgresql.org/support/security/CVE-2015-0244/", "score": 8.1, "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.10", "fixed_url": "/docs/compare/?release=9.2.10", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.10", "version": "9.2.10", "title": "\u4fee\u590d\u51fa\u9519\u540e\u524d\u7aef/\u540e\u7aef\u534f\u8bae\u53ef\u80fd\u5931\u53bb\u540c\u6b65\u7684\u95ee\u9898", "url": "/docs/compare/?release=9.2.10#9.2.10-5c8ec36fd01bef35"}], "evidence": "branch-matrix"}, {"id": "CVE-2015-0243", "title": "Memory errors in functions in the pgcrypto extension.", "url": "https://www.postgresql.org/support/security/CVE-2015-0243/", "score": 6.5, "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H", "description": "", "description_language": "en", "fixed": "9.2.10", "fixed_url": "/docs/compare/?release=9.2.10", "affected": "9.2", "component": "contrib module", "mentions": [{"build": "9.2.10", "version": "9.2.10", "title": "\u4fee\u590dcontrib/pgcrypto\u4e2d\u7684\u7f13\u51b2\u533a\u8d8a\u754c", "url": "/docs/compare/?release=9.2.10#9.2.10-ba8a921637c059ee"}], "evidence": "branch-matrix"}, {"id": "CVE-2015-0242", "title": "Buffer overrun in replacement printf family of functions.", "url": "https://www.postgresql.org/support/security/CVE-2015-0242/", "score": 4.2, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N", "description": "", "description_language": "en", "fixed": "9.2.10", "fixed_url": "/docs/compare/?release=9.2.10", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.10", "version": "9.2.10", "title": "\u4fee\u590d\u66ff\u6362\u5b9e\u73b0\u7684*printf()\u51fd\u6570\u4e2d\u7684\u7f13\u51b2\u533a\u8d8a\u754c", "url": "/docs/compare/?release=9.2.10#9.2.10-5682fb8f3ee1ede9"}], "evidence": "branch-matrix"}, {"id": "CVE-2015-0241", "title": "Buffer overruns in \"to_char\" functions.", "url": "https://www.postgresql.org/support/security/CVE-2015-0241/", "score": 4.2, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N", "description": "", "description_language": "en", "fixed": "9.2.10", "fixed_url": "/docs/compare/?release=9.2.10", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.10", "version": "9.2.10", "title": "\u4fee\u590dto_char()\u4e2d\u7684\u7f13\u51b2\u533a\u8d8a\u754c", "url": "/docs/compare/?release=9.2.10#9.2.10-5abdf545382b956d"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-8161", "title": "Constraint violation errors can cause display of values in columns which the user would not normally have rights to see.", "url": "https://www.postgresql.org/support/security/CVE-2014-8161/", "score": 3.1, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N", "description": "", "description_language": "en", "fixed": "9.2.10", "fixed_url": "/docs/compare/?release=9.2.10", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.10", "version": "9.2.10", "title": "\u4fee\u590d\u901a\u8fc7\u7ea6\u675f\u8fdd\u53cd\u9519\u8bef\u6d88\u606f\u7684\u4fe1\u606f\u6cc4\u9732", "url": "/docs/compare/?release=9.2.10#9.2.10-d6dd48b9aef647b0"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0067", "title": "Unauthenticated users may gain access to the database server during \"make check\"..", "url": "https://www.postgresql.org/support/security/CVE-2014-0067/", "score": 7.0, "vector": "AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.10", "fixed_url": "/docs/compare/?release=9.2.10", "affected": "9.2", "component": "other", "mentions": [{"build": "9.2.10", "version": "9.2.10", "title": "\u9501\u5b9a Windows \u4e0a\u56de\u5f52\u6d4b\u8bd5\u7684\u4e34\u65f6\u5b89\u88c5", "url": "/docs/compare/?release=9.2.10#9.2.10-f18a20a2bec524ef"}, {"build": "9.2.9", "version": "9.2.9", "title": "\u4fdd\u62a4 make check \u671f\u95f4\u542f\u52a8\u7684\u4e34\u65f6 postmaster \u7684 Unix \u57df\u5957\u63a5\u5b57", "url": "/docs/compare/?release=9.2.9#9.2.9-1fe8508066777304"}, {"build": "9.2.7", "version": "9.2.7", "title": "\u5728\u56de\u5f52\u6d4b\u8bd5\u8bf4\u660e\u4e2d\u8bb0\u5f55 make check \u7684\u98ce\u9669", "url": "/docs/compare/?release=9.2.7#9.2.7-10731528cb521bec"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0066", "title": "Potential null pointer dereference crash when crypt(3) returns NULL.", "url": "https://www.postgresql.org/support/security/CVE-2014-0066/", "score": 0.0, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:N", "description": "", "description_language": "en", "fixed": "9.2.7", "fixed_url": "/docs/compare/?release=9.2.7", "affected": "9.2", "component": "contrib module", "mentions": [{"build": "9.2.7", "version": "9.2.7", "title": "\u907f\u514d\u5728 crypt() \u8fd4\u56de NULL \u65f6\u5d29\u6e83", "url": "/docs/compare/?release=9.2.7#9.2.7-14f78cee37d06ff3"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0065", "title": "Potential buffer overruns of fixed-size buffers.", "url": "https://www.postgresql.org/support/security/CVE-2014-0065/", "score": 0.0, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:N", "description": "", "description_language": "en", "fixed": "9.2.7", "fixed_url": "/docs/compare/?release=9.2.7", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.7", "version": "9.2.7", "title": "\u9632\u6b62\u56fa\u5b9a\u5927\u5c0f\u7f13\u51b2\u533a\u8d8a\u754c", "url": "/docs/compare/?release=9.2.7#9.2.7-c669fac45788e34c"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0064", "title": "Potential buffer overruns due to integer overflow in size calculations.", "url": "https://www.postgresql.org/support/security/CVE-2014-0064/", "score": 6.5, "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H", "description": "", "description_language": "en", "fixed": "9.2.7", "fixed_url": "/docs/compare/?release=9.2.7", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.7", "version": "9.2.7", "title": "\u9632\u6b62\u5927\u5c0f\u8ba1\u7b97\u4e2d\u7684\u6574\u6570\u6ea2\u51fa\u5bfc\u81f4\u7f13\u51b2\u533a\u8d8a\u754c", "url": "/docs/compare/?release=9.2.7#9.2.7-a0252db5e81ebdfb"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0063", "title": "Potential buffer overruns in datetime input/output.", "url": "https://www.postgresql.org/support/security/CVE-2014-0063/", "score": 4.3, "vector": "AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N", "description": "", "description_language": "en", "fixed": "9.2.7", "fixed_url": "/docs/compare/?release=9.2.7", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.7", "version": "9.2.7", "title": "\u9632\u6b62\u957f\u65e5\u671f\u65f6\u95f4\u5b57\u7b26\u4e32\u9020\u6210\u7f13\u51b2\u533a\u8d8a\u754c", "url": "/docs/compare/?release=9.2.7#9.2.7-0b66a90264406c0c"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0062", "title": "Race condition in CREATE INDEX allows for privilege escalation.", "url": "https://www.postgresql.org/support/security/CVE-2014-0062/", "score": 8.8, "vector": "AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.7", "fixed_url": "/docs/compare/?release=9.2.7", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.7", "version": "9.2.7", "title": "\u907f\u514d\u5728\u8868\u548c\u7d22\u5f15 DDL \u671f\u95f4\u8fdb\u884c\u591a\u6b21\u540d\u79f0\u67e5\u627e", "url": "/docs/compare/?release=9.2.7#9.2.7-76a21e41869b218b"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0061", "title": "Privilege escalation via calls to validator functions.", "url": "https://www.postgresql.org/support/security/CVE-2014-0061/", "score": 7.5, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H", "description": "", "description_language": "en", "fixed": "9.2.7", "fixed_url": "/docs/compare/?release=9.2.7", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.7", "version": "9.2.7", "title": "\u9632\u6b62\u901a\u8fc7\u624b\u5de5\u8c03\u7528 PL \u9a8c\u8bc1\u5668\u51fd\u6570\u8fdb\u884c\u6743\u9650\u63d0\u5347", "url": "/docs/compare/?release=9.2.7#9.2.7-cf0ad82d2d3b3b4e"}], "evidence": "branch-matrix"}, {"id": "CVE-2014-0060", "title": "SET ROLE bypasses lack of ADMIN OPTION.", "url": "https://www.postgresql.org/support/security/CVE-2014-0060/", "score": 3.1, "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L", "description": "", "description_language": "en", "fixed": "9.2.7", "fixed_url": "/docs/compare/?release=9.2.7", "affected": "9.2", "component": "core server", "mentions": [{"build": "9.2.7", "version": "9.2.7", "title": "\u52a0\u56fa GRANT ... WITH ADMIN OPTION \u7684\u9650\u5236", "url": "/docs/compare/?release=9.2.7#9.2.7-46d40736d76fe1e1"}], "evidence": "branch-matrix"}, {"id": "CVE-2013-1901", "title": "An unprivileged user can run commands that could interfere with in-progress backups.", "url": "https://www.postgresql.org/support/security/CVE-2013-1901/", "score": null, "vector": "", "description": "", "description_language": "en", "fixed": "9.2.4", "fixed_url": "/docs/compare/?release=9.2.4", "affected": "9.2", "component": "", "mentions": [{"build": "9.2.4", "version": "9.2.4", "title": "\u8ba9 REPLICATION \u6743\u9650\u68c0\u67e5\u6d4b\u8bd5\u5f53\u524d\u7528\u6237\u800c\u4e0d\u662f\u5df2\u8ba4\u8bc1\u7528\u6237", "url": "/docs/compare/?release=9.2.4#9.2.4-5cbd493427e749a6"}], "evidence": "branch-matrix"}, {"id": "CVE-2013-1900", "title": "Random numbers generated by contrib/pgcrypto functions may be easy for another database user to guess", "url": "https://www.postgresql.org/support/security/CVE-2013-1900/", "score": null, "vector": "", "description": "", "description_language": "en", "fixed": "9.2.4", "fixed_url": "/docs/compare/?release=9.2.4", "affected": "9.2", "component": "", "mentions": [{"build": "9.2.4", "version": "9.2.4", "title": "\u5728\u6bcf\u4e2a postmaster \u5b50\u8fdb\u7a0b\u4e2d\u91cd\u7f6e OpenSSL \u968f\u673a\u72b6\u6001", "url": "/docs/compare/?release=9.2.4#9.2.4-2c6247fbff83692c"}], "evidence": "branch-matrix"}, {"id": "CVE-2013-1899", "title": "A connection request containing a database name that begins with \"-\" may be crafted to damage or destroy files within a server's data directory", "url": "https://www.postgresql.org/support/security/CVE-2013-1899/", "score": null, "vector": "", "description": "", "description_language": "en", "fixed": "9.2.4", "fixed_url": "/docs/compare/?release=9.2.4", "affected": "9.2", "component": "", "mentions": [{"build": "9.2.4", "version": "9.2.4", "title": "\u4fee\u590d\u670d\u52a1\u5668\u547d\u4ee4\u884c\u5f00\u5173\u89e3\u6790\u4e0d\u5b89\u5168\u7684\u95ee\u9898", "url": "/docs/compare/?release=9.2.4#9.2.4-5a0bba298aca3ca2"}], "evidence": "branch-matrix"}, {"id": "CVE-2013-0255", "title": "executing enum_recv() with wrong parameters crashes server", "url": "https://www.postgresql.org/support/security/CVE-2013-0255/", "score": null, "vector": "", "description": "", "description_language": "en", "fixed": "9.2.3", "fixed_url": "/docs/compare/?release=9.2.3", "affected": "9.2", "component": "", "mentions": [{"build": "9.2.3", "version": "9.2.3", "title": "\u9632\u6b62\u4ece SQL \u6267\u884c enum_recv", "url": "/docs/compare/?release=9.2.3#9.2.3-91b92bd203b9332b"}], "evidence": "branch-matrix"}, {"id": "CVE-2007-4772", "title": "CVE-2007-4772", "url": "https://www.postgresql.org/support/security/CVE-2007-4772/", "score": null, "vector": "", "description": "", "description_language": "en", "fixed": "", "fixed_url": "", "affected": "", "component": "", "mentions": [{"build": "9.2.15", "version": "9.2.15", "title": "\u4fee\u590d\u6b63\u5219\u8868\u8fbe\u5f0f\u7f16\u8bd1\u5668\u4f7f\u5176\u5904\u7406\u7ea6\u675f\u5f27\u6784\u6210\u7684\u73af", "url": "/docs/compare/?release=9.2.15#9.2.15-82d8694e58be71f9"}], "evidence": "release-note-mention"}], "security_covered": true, "release_as_of": "2026-09-26", "security_as_of": "2026-09-26", "policy_url": "https://www.postgresql.org/support/versioning/", "pdfs": [{"label": "A4 PDF", "bytes": 16216622, "url": "/files/documentation/pdf/9.2/postgresql-9.2-A4.pdf"}, {"label": "US Letter PDF", "bytes": 16200670, "url": "/files/documentation/pdf/9.2/postgresql-9.2-US.pdf"}], "query": "", "selected_kind": "", "branches": [{"branch": "20", "url": "/wiki/versions/20/", "state": "devel", "state_label": "\u5f00\u53d1\u7248", "tag": "\u5f00\u53d1\u7248", "build": "20devel", "first_release": "", "end_of_life": "", "latest_release_date": "", "manual_url": "/docs/devel/index.html", "manual_slug": "devel", "manual_pages": 1162, "manual_loaded_at": "2026-09-28T13:10:20.822721", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "19", "url": "/wiki/versions/19/", "state": "beta", "state_label": "\u9884\u89c8\u7248", "tag": "beta 4", "build": "19beta4", "first_release": "", "end_of_life": "", "latest_release_date": "", "manual_url": "/docs/19/index.html", "manual_slug": "19", "manual_pages": 1160, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 1, "entry_count": 198, "initial": {"version": "19.0", "build": "19beta4", "status": "preview", "date": "", "source_as_of": "2026-09-14", "url": "/docs/compare/?release=19.0", "manual_url": "/docs/19/release-19.html", "source_url": "/docs/release/19.0/", "entry_count": 198, "categories": {"compatibility": 17, "feature": 161, "performance": 20}, "compatibility_count": 17, "cves": [], "cve_count": 0}, "latest": {"version": "19.0", "build": "19beta4", "status": "preview", "date": "", "source_as_of": "2026-09-14", "url": "/docs/compare/?release=19.0", "manual_url": "/docs/19/release-19.html", "source_url": "/docs/release/19.0/", "entry_count": 198, "categories": {"compatibility": 17, "feature": 161, "performance": 20}, "compatibility_count": 17, "cves": [], "cve_count": 0}, "comparison_url": ""}, {"branch": "18", "url": "/wiki/versions/18/", "state": "current", "state_label": "\u5f53\u524d\u7a33\u5b9a\u7248", "tag": "\u5f53\u524d", "build": "18.6", "first_release": "2025-09-25", "end_of_life": "2030-11-14", "latest_release_date": "2026-08-13", "manual_url": "/docs/18/index.html", "manual_slug": "18", "manual_pages": 1151, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 6, "entry_count": 561, "initial": {"version": "18.0", "build": "18.0", "status": "stable", "date": "2025-09-25", "source_as_of": "", "url": "/docs/compare/?release=18.0", "manual_url": "/docs/18/release-18.html", "source_url": "/docs/release/18.0/", "entry_count": 210, "categories": {"compatibility": 11, "feature": 188, "performance": 10, "bugfix": 1}, "compatibility_count": 11, "cves": [], "cve_count": 0}, "latest": {"version": "18.6", "build": "18.6", "status": "stable", "date": "2026-08-13", "source_as_of": "", "url": "/docs/compare/?release=18.6", "manual_url": "/docs/18/release-18-6.html", "source_url": "/docs/release/18.6/", "entry_count": 140, "categories": {"security": 29, "improvement": 46, "bugfix": 65}, "compatibility_count": 0, "cves": ["CVE-2025-8714", "CVE-2026-14662", "CVE-2026-14663", "CVE-2026-14664", "CVE-2026-14666", "CVE-2026-14668", "CVE-2026-14669", "CVE-2026-14670", "CVE-2026-14671", "CVE-2026-14672", "CVE-2026-14673", "CVE-2026-14676", "CVE-2026-14677", "CVE-2026-14678", "CVE-2026-14679", "CVE-2026-14680", "CVE-2026-14681", "CVE-2026-15741", "CVE-2026-15742", "CVE-2026-16238", "CVE-2026-16239", "CVE-2026-16241", "CVE-2026-18024", "CVE-2026-18408", "CVE-2026-19385", "CVE-2026-6464", "CVE-2026-6469", "CVE-2026-6470", "CVE-2026-6471", "CVE-2026-6473", "CVE-2026-6637"], "cve_count": 31}, "comparison_url": "/docs/compare/?from=18.0&to=18.6"}, {"branch": "17", "url": "/wiki/versions/17/", "state": "supported", "state_label": "\u652f\u6301\u4e2d", "tag": "", "build": "17.11", "first_release": "2024-09-26", "end_of_life": "2029-11-08", "latest_release_date": "2026-08-13", "manual_url": "/docs/17/index.html", "manual_slug": "17", "manual_pages": 1146, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 12, "entry_count": 727, "initial": {"version": "17.0", "build": "17.0", "status": "stable", "date": "2024-09-26", "source_as_of": "", "url": "/docs/compare/?release=17.0", "manual_url": "/docs/17/release-17.html", "source_url": "/docs/release/17.0/", "entry_count": 182, "categories": {"compatibility": 17, "feature": 154, "bugfix": 2, "performance": 9}, "compatibility_count": 17, "cves": [], "cve_count": 0}, "latest": {"version": "17.11", "build": "17.11", "status": "stable", "date": "2026-08-13", "source_as_of": "", "url": "/docs/compare/?release=17.11", "manual_url": "/docs/17/release-17-11.html", "source_url": "/docs/release/17.11/", "entry_count": 109, "categories": {"security": 29, "bugfix": 49, "improvement": 31}, "compatibility_count": 0, "cves": ["CVE-2025-8714", "CVE-2026-14662", "CVE-2026-14663", "CVE-2026-14664", "CVE-2026-14666", "CVE-2026-14668", "CVE-2026-14669", "CVE-2026-14670", "CVE-2026-14671", "CVE-2026-14672", "CVE-2026-14673", "CVE-2026-14676", "CVE-2026-14677", "CVE-2026-14678", "CVE-2026-14679", "CVE-2026-14680", "CVE-2026-14681", "CVE-2026-15741", "CVE-2026-15742", "CVE-2026-16238", "CVE-2026-16239", "CVE-2026-16241", "CVE-2026-18024", "CVE-2026-18408", "CVE-2026-19385", "CVE-2026-6464", "CVE-2026-6469", "CVE-2026-6470", "CVE-2026-6471", "CVE-2026-6473", "CVE-2026-6637"], "cve_count": 31}, "comparison_url": "/docs/compare/?from=17.0&to=17.11"}, {"branch": "16", "url": "/wiki/versions/16/", "state": "supported", "state_label": "\u652f\u6301\u4e2d", "tag": "", "build": "16.15", "first_release": "2023-09-14", "end_of_life": "2028-11-09", "latest_release_date": "2026-08-13", "manual_url": "/docs/16/index.html", "manual_slug": "16", "manual_pages": 1172, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 16, "entry_count": 930, "initial": {"version": "16.0", "build": "16.0", "status": "stable", "date": "2023-09-14", "source_as_of": "", "url": "/docs/compare/?release=16.0", "manual_url": "/docs/16/release-16.html", "source_url": "/docs/release/16.0/", "entry_count": 206, "categories": {"compatibility": 13, "feature": 175, "performance": 15, "bugfix": 3}, "compatibility_count": 13, "cves": [], "cve_count": 0}, "latest": {"version": "16.15", "build": "16.15", "status": "stable", "date": "2026-08-13", "source_as_of": "", "url": "/docs/compare/?release=16.15", "manual_url": "/docs/16/release-16-15.html", "source_url": "/docs/release/16.15/", "entry_count": 98, "categories": {"security": 29, "bugfix": 42, "improvement": 27}, "compatibility_count": 0, "cves": ["CVE-2025-8714", "CVE-2026-14662", "CVE-2026-14663", "CVE-2026-14664", "CVE-2026-14666", "CVE-2026-14668", "CVE-2026-14669", "CVE-2026-14670", "CVE-2026-14671", "CVE-2026-14672", "CVE-2026-14673", "CVE-2026-14676", "CVE-2026-14677", "CVE-2026-14678", "CVE-2026-14679", "CVE-2026-14680", "CVE-2026-14681", "CVE-2026-15741", "CVE-2026-15742", "CVE-2026-16238", "CVE-2026-16239", "CVE-2026-16241", "CVE-2026-18024", "CVE-2026-18408", "CVE-2026-19385", "CVE-2026-6464", "CVE-2026-6469", "CVE-2026-6470", "CVE-2026-6471", "CVE-2026-6473", "CVE-2026-6637"], "cve_count": 31}, "comparison_url": "/docs/compare/?from=16.0&to=16.15"}, {"branch": "15", "url": "/wiki/versions/15/", "state": "supported", "state_label": "\u652f\u6301\u4e2d", "tag": "", "build": "15.19", "first_release": "2022-10-13", "end_of_life": "2027-11-11", "latest_release_date": "2026-08-13", "manual_url": "/docs/15/index.html", "manual_slug": "15", "manual_pages": 1092, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 20, "entry_count": 1046, "initial": {"version": "15.0", "build": "15.0", "status": "stable", "date": "2022-10-13", "source_as_of": "", "url": "/docs/compare/?release=15.0", "manual_url": "/docs/15/release-15.html", "source_url": "/docs/release/15.0/", "entry_count": 184, "categories": {"security": 1, "compatibility": 30, "feature": 135, "bugfix": 3, "performance": 15}, "compatibility_count": 31, "cves": ["CVE-2018-1058"], "cve_count": 1}, "latest": {"version": "15.19", "build": "15.19", "status": "stable", "date": "2026-08-13", "source_as_of": "", "url": "/docs/compare/?release=15.19", "manual_url": "/docs/15/release-15-19.html", "source_url": "/docs/release/15.19/", "entry_count": 90, "categories": {"security": 29, "bugfix": 36, "improvement": 25}, "compatibility_count": 0, "cves": ["CVE-2025-8714", "CVE-2026-14662", "CVE-2026-14663", "CVE-2026-14664", "CVE-2026-14666", "CVE-2026-14668", "CVE-2026-14669", "CVE-2026-14670", "CVE-2026-14671", "CVE-2026-14672", "CVE-2026-14673", "CVE-2026-14676", "CVE-2026-14677", "CVE-2026-14678", "CVE-2026-14679", "CVE-2026-14680", "CVE-2026-14681", "CVE-2026-15741", "CVE-2026-15742", "CVE-2026-16238", "CVE-2026-16239", "CVE-2026-16241", "CVE-2026-18024", "CVE-2026-18408", "CVE-2026-19385", "CVE-2026-6464", "CVE-2026-6469", "CVE-2026-6470", "CVE-2026-6471", "CVE-2026-6473", "CVE-2026-6637"], "cve_count": 31}, "comparison_url": "/docs/compare/?from=15.0&to=15.19"}, {"branch": "14", "url": "/wiki/versions/14/", "state": "supported", "state_label": "\u652f\u6301\u4e2d", "tag": "", "build": "14.24", "first_release": "2021-09-30", "end_of_life": "2026-11-12", "latest_release_date": "2026-08-13", "manual_url": "/docs/14/index.html", "manual_slug": "14", "manual_pages": 1084, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 25, "entry_count": 1206, "initial": {"version": "14.0", "build": "14.0", "status": "stable", "date": "2021-09-30", "source_as_of": "", "url": "/docs/compare/?release=14.0", "manual_url": "/docs/14/release-14.html", "source_url": "/docs/release/14.0/", "entry_count": 220, "categories": {"compatibility": 27, "feature": 178, "performance": 13, "bugfix": 2}, "compatibility_count": 27, "cves": [], "cve_count": 0}, "latest": {"version": "14.24", "build": "14.24", "status": "stable", "date": "2026-08-13", "source_as_of": "", "url": "/docs/compare/?release=14.24", "manual_url": "/docs/14/release-14-24.html", "source_url": "/docs/release/14.24/", "entry_count": 83, "categories": {"security": 29, "bugfix": 31, "improvement": 23}, "compatibility_count": 0, "cves": ["CVE-2025-8714", "CVE-2026-14662", "CVE-2026-14663", "CVE-2026-14664", "CVE-2026-14666", "CVE-2026-14668", "CVE-2026-14669", "CVE-2026-14670", "CVE-2026-14671", "CVE-2026-14672", "CVE-2026-14673", "CVE-2026-14676", "CVE-2026-14677", "CVE-2026-14678", "CVE-2026-14679", "CVE-2026-14680", "CVE-2026-14681", "CVE-2026-15741", "CVE-2026-15742", "CVE-2026-16238", "CVE-2026-16239", "CVE-2026-16241", "CVE-2026-18024", "CVE-2026-18408", "CVE-2026-19385", "CVE-2026-6464", "CVE-2026-6469", "CVE-2026-6470", "CVE-2026-6471", "CVE-2026-6473", "CVE-2026-6637"], "cve_count": 31}, "comparison_url": "/docs/compare/?from=14.0&to=14.24"}, {"branch": "13", "url": "/wiki/versions/13/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "13.23", "first_release": "2020-09-24", "end_of_life": "2025-11-13", "latest_release_date": "2025-11-13", "manual_url": "/docs/13/index.html", "manual_slug": "13", "manual_pages": 1065, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 24, "entry_count": 1164, "initial": {"version": "13.0", "build": "13.0", "status": "stable", "date": "2020-09-24", "source_as_of": "", "url": "/docs/compare/?release=13.0", "manual_url": "/docs/13/release-13.html", "source_url": "/docs/release/13.0/", "entry_count": 178, "categories": {"compatibility": 15, "feature": 143, "performance": 16, "bugfix": 4}, "compatibility_count": 15, "cves": [], "cve_count": 0}, "latest": {"version": "13.23", "build": "13.23", "status": "stable", "date": "2025-11-13", "source_as_of": "", "url": "/docs/compare/?release=13.23", "manual_url": "/docs/13/release-13-23.html", "source_url": "/docs/release/13.23/", "entry_count": 43, "categories": {"security": 2, "bugfix": 22, "improvement": 19}, "compatibility_count": 0, "cves": ["CVE-2025-12817", "CVE-2025-12818"], "cve_count": 2}, "comparison_url": "/docs/compare/?from=13.0&to=13.23"}, {"branch": "12", "url": "/wiki/versions/12/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "12.22", "first_release": "2019-10-03", "end_of_life": "2024-11-21", "latest_release_date": "2024-11-21", "manual_url": "/docs/12/index.html", "manual_slug": "12", "manual_pages": 1058, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 23, "entry_count": 1181, "initial": {"version": "12.0", "build": "12.0", "status": "stable", "date": "2019-10-03", "source_as_of": "", "url": "/docs/compare/?release=12.0", "manual_url": "/docs/12/release-12.html", "source_url": "/docs/release/12.0/", "entry_count": 180, "categories": {"compatibility": 23, "performance": 14, "feature": 139, "bugfix": 4}, "compatibility_count": 23, "cves": [], "cve_count": 0}, "latest": {"version": "12.22", "build": "12.22", "status": "stable", "date": "2024-11-21", "source_as_of": "", "url": "/docs/compare/?release=12.22", "manual_url": "/docs/12/release-12-22.html", "source_url": "/docs/release/12.22/", "entry_count": 1, "categories": {"security": 1}, "compatibility_count": 0, "cves": ["CVE-2024-10978"], "cve_count": 1}, "comparison_url": "/docs/compare/?from=12.0&to=12.22"}, {"branch": "11", "url": "/wiki/versions/11/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "11.22", "first_release": "2018-10-18", "end_of_life": "2023-11-09", "latest_release_date": "2023-11-09", "manual_url": "/docs/11/index.html", "manual_slug": "11", "manual_pages": 1049, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 23, "entry_count": 1141, "initial": {"version": "11.0", "build": "11.0", "status": "stable", "date": "2018-10-18", "source_as_of": "", "url": "/docs/compare/?release=11.0", "manual_url": "/docs/11/release-11.html", "source_url": "/docs/release/11.0/", "entry_count": 170, "categories": {"compatibility": 20, "feature": 134, "performance": 15, "bugfix": 1}, "compatibility_count": 20, "cves": [], "cve_count": 0}, "latest": {"version": "11.22", "build": "11.22", "status": "stable", "date": "2023-11-09", "source_as_of": "", "url": "/docs/compare/?release=11.22", "manual_url": "/docs/11/release-11-22.html", "source_url": "/docs/release/11.22/", "entry_count": 31, "categories": {"security": 3, "bugfix": 10, "improvement": 18}, "compatibility_count": 0, "cves": ["CVE-2023-5868", "CVE-2023-5869", "CVE-2023-5870"], "cve_count": 3}, "comparison_url": "/docs/compare/?from=11.0&to=11.22"}, {"branch": "10", "url": "/wiki/versions/10/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "10.23", "first_release": "2017-10-05", "end_of_life": "2022-11-10", "latest_release_date": "2022-11-10", "manual_url": "/docs/10/index.html", "manual_slug": "10", "manual_pages": 1011, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 24, "entry_count": 1140, "initial": {"version": "10.0", "build": "10.0", "status": "stable", "date": "2017-10-05", "source_as_of": "", "url": "/docs/compare/?release=10.0", "manual_url": "/docs/10/release-10.html", "source_url": "/docs/release/10.0/", "entry_count": 189, "categories": {"compatibility": 27, "feature": 148, "performance": 12, "bugfix": 2}, "compatibility_count": 27, "cves": [], "cve_count": 0}, "latest": {"version": "10.23", "build": "10.23", "status": "stable", "date": "2022-11-10", "source_as_of": "", "url": "/docs/compare/?release=10.23", "manual_url": "/docs/10/release-10-23.html", "source_url": "/docs/release/10.23/", "entry_count": 29, "categories": {"bugfix": 13, "improvement": 16}, "compatibility_count": 0, "cves": [], "cve_count": 0}, "comparison_url": "/docs/compare/?from=10.0&to=10.23"}, {"branch": "9.6", "url": "/wiki/versions/9.6/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.6.24", "first_release": "2016-09-29", "end_of_life": "2021-11-11", "latest_release_date": "2021-11-11", "manual_url": "/docs/9.6/index.html", "manual_slug": "9.6", "manual_pages": 975, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 25, "entry_count": 1105, "initial": {"version": "9.6.0", "build": "9.6.0", "status": "stable", "date": "2016-09-29", "source_as_of": "", "url": "/docs/compare/?release=9.6.0", "manual_url": "/docs/9.6/release-9-6.html", "source_url": "/docs/release/9.6.0/", "entry_count": 214, "categories": {"compatibility": 13, "feature": 169, "performance": 26, "bugfix": 6}, "compatibility_count": 13, "cves": [], "cve_count": 0}, "latest": {"version": "9.6.24", "build": "9.6.24", "status": "stable", "date": "2021-11-11", "source_as_of": "", "url": "/docs/compare/?release=9.6.24", "manual_url": "/docs/9.6/release-9-6-24.html", "source_url": "/docs/release/9.6.24/", "entry_count": 40, "categories": {"security": 2, "bugfix": 18, "improvement": 19, "performance": 1}, "compatibility_count": 0, "cves": ["CVE-2021-23214", "CVE-2021-23222"], "cve_count": 2}, "comparison_url": "/docs/compare/?from=9.6.0&to=9.6.24"}, {"branch": "9.5", "url": "/wiki/versions/9.5/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.5.25", "first_release": "2016-01-07", "end_of_life": "2021-02-11", "latest_release_date": "2021-02-11", "manual_url": "/docs/9.5/index.html", "manual_slug": "9.5", "manual_pages": 959, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 26, "entry_count": 1026, "initial": {"version": "9.5.0", "build": "9.5.0", "status": "stable", "date": "2016-01-07", "source_as_of": "", "url": "/docs/compare/?release=9.5.0", "manual_url": "/docs/9.5/release-9-5.html", "source_url": "/docs/release/9.5.0/", "entry_count": 193, "categories": {"compatibility": 12, "feature": 163, "performance": 17, "bugfix": 1}, "compatibility_count": 12, "cves": [], "cve_count": 0}, "latest": {"version": "9.5.25", "build": "9.5.25", "status": "stable", "date": "2021-02-11", "source_as_of": "", "url": "/docs/compare/?release=9.5.25", "manual_url": "/docs/9.5/release-9-5-25.html", "source_url": "/docs/release/9.5.25/", "entry_count": 32, "categories": {"bugfix": 15, "improvement": 17}, "compatibility_count": 0, "cves": [], "cve_count": 0}, "comparison_url": "/docs/compare/?from=9.5.0&to=9.5.25"}, {"branch": "9.4", "url": "/wiki/versions/9.4/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.4.26", "first_release": "2014-12-18", "end_of_life": "2020-02-13", "latest_release_date": "2020-02-13", "manual_url": "/docs/9.4/index.html", "manual_slug": "9.4", "manual_pages": 935, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 27, "entry_count": 1007, "initial": {"version": "9.4.0", "build": "9.4.0", "status": "stable", "date": "2014-12-18", "source_as_of": "", "url": "/docs/compare/?release=9.4.0", "manual_url": "/docs/9.4/release-9-4.html", "source_url": "/docs/release/9.4.0/", "entry_count": 211, "categories": {"compatibility": 22, "feature": 171, "bugfix": 6, "performance": 12}, "compatibility_count": 22, "cves": [], "cve_count": 0}, "latest": {"version": "9.4.26", "build": "9.4.26", "status": "stable", "date": "2020-02-13", "source_as_of": "", "url": "/docs/compare/?release=9.4.26", "manual_url": "/docs/9.4/release-9-4-26.html", "source_url": "/docs/release/9.4.26/", "entry_count": 28, "categories": {"improvement": 12, "bugfix": 15, "performance": 1}, "compatibility_count": 0, "cves": [], "cve_count": 0}, "comparison_url": "/docs/compare/?from=9.4.0&to=9.4.26"}, {"branch": "9.3", "url": "/wiki/versions/9.3/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.3.25", "first_release": "2013-09-09", "end_of_life": "2018-11-08", "latest_release_date": "2018-11-08", "manual_url": "/docs/9.3/index.html", "manual_slug": "9.3", "manual_pages": 1199, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 26, "entry_count": 968, "initial": {"version": "9.3.0", "build": "9.3.0", "status": "stable", "date": "2013-09-09", "source_as_of": "", "url": "/docs/compare/?release=9.3.0", "manual_url": "/docs/9.3/release-9-3.html", "source_url": "/docs/release/9.3.0/", "entry_count": 177, "categories": {"compatibility": 10, "feature": 148, "performance": 13, "bugfix": 6}, "compatibility_count": 10, "cves": [], "cve_count": 0}, "latest": {"version": "9.3.25", "build": "9.3.25", "status": "stable", "date": "2018-11-08", "source_as_of": "", "url": "/docs/compare/?release=9.3.25", "manual_url": "/docs/9.3/release-9-3-25.html", "source_url": "/docs/release/9.3.25/", "entry_count": 35, "categories": {"bugfix": 17, "improvement": 18}, "compatibility_count": 0, "cves": [], "cve_count": 0}, "comparison_url": "/docs/compare/?from=9.3.0&to=9.3.25"}, {"branch": "9.2", "url": "/wiki/versions/9.2/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.2.24", "first_release": "2012-09-10", "end_of_life": "2017-11-09", "latest_release_date": "2017-11-09", "manual_url": "/docs/9.2/index.html", "manual_slug": "9.2", "manual_pages": 1153, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 25, "entry_count": 968, "initial": {"version": "9.2.0", "build": "9.2.0", "status": "stable", "date": "2012-09-10", "source_as_of": "", "url": "/docs/compare/?release=9.2.0", "manual_url": "/docs/9.2/release-9-2.html", "source_url": "/docs/release/9.2.0/", "entry_count": 238, "categories": {"compatibility": 23, "feature": 197, "performance": 12, "bugfix": 6}, "compatibility_count": 23, "cves": [], "cve_count": 0}, "latest": {"version": "9.2.24", "build": "9.2.24", "status": "stable", "date": "2017-11-09", "source_as_of": "", "url": "/docs/compare/?release=9.2.24", "manual_url": "/docs/9.2/release-9-2-24.html", "source_url": "/docs/release/9.2.24/", "entry_count": 13, "categories": {"security": 1, "improvement": 7, "bugfix": 5}, "compatibility_count": 0, "cves": ["CVE-2017-12172"], "cve_count": 1}, "comparison_url": "/docs/compare/?from=9.2.0&to=9.2.24"}, {"branch": "9.1", "url": "/wiki/versions/9.1/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.1.24", "first_release": "2011-09-12", "end_of_life": "2016-10-27", "latest_release_date": "2016-10-27", "manual_url": "/docs/9.1/index.html", "manual_slug": "9.1", "manual_pages": 1102, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 25, "entry_count": 895, "initial": {"version": "9.1.0", "build": "9.1.0", "status": "stable", "date": "2011-09-12", "source_as_of": "", "url": "/docs/compare/?release=9.1.0", "manual_url": "/docs/9.1/release-9-1.html", "source_url": "/docs/release/9.1.0/", "entry_count": 203, "categories": {"compatibility": 17, "feature": 174, "performance": 3, "bugfix": 9}, "compatibility_count": 17, "cves": [], "cve_count": 0}, "latest": {"version": "9.1.24", "build": "9.1.24", "status": "stable", "date": "2016-10-27", "source_as_of": "", "url": "/docs/compare/?release=9.1.24", "manual_url": "/docs/9.1/release-9-1-24.html", "source_url": "/docs/release/9.1.24/", "entry_count": 13, "categories": {"bugfix": 7, "improvement": 6}, "compatibility_count": 0, "cves": [], "cve_count": 0}, "comparison_url": "/docs/compare/?from=9.1.0&to=9.1.24"}, {"branch": "9.0", "url": "/wiki/versions/9.0/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "9.0.23", "first_release": "2010-09-20", "end_of_life": "2015-10-08", "latest_release_date": "2015-10-08", "manual_url": "/docs/9.0/index.html", "manual_slug": "9.0", "manual_pages": 1024, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 24, "entry_count": 850, "initial": {"version": "9.0.0", "build": "9.0.0", "status": "stable", "date": "2010-09-20", "source_as_of": "", "url": "/docs/compare/?release=9.0.0", "manual_url": "/docs/9.0/release-9-0.html", "source_url": "/docs/release/9.0.0/", "entry_count": 237, "categories": {"compatibility": 20, "feature": 206, "performance": 6, "bugfix": 5}, "compatibility_count": 20, "cves": [], "cve_count": 0}, "latest": {"version": "9.0.23", "build": "9.0.23", "status": "stable", "date": "2015-10-08", "source_as_of": "", "url": "/docs/compare/?release=9.0.23", "manual_url": "/docs/9.0/release-9-0-23.html", "source_url": "/docs/release/9.0.23/", "entry_count": 47, "categories": {"security": 1, "bugfix": 25, "improvement": 21}, "compatibility_count": 0, "cves": ["CVE-2015-5288"], "cve_count": 1}, "comparison_url": "/docs/compare/?from=9.0.0&to=9.0.23"}, {"branch": "8.4", "url": "/wiki/versions/8.4/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "8.4.22", "first_release": "2009-07-01", "end_of_life": "2014-07-24", "latest_release_date": "2014-07-24", "manual_url": "/docs/8.4/index.html", "manual_slug": "8.4", "manual_pages": 968, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "8.3", "url": "/wiki/versions/8.3/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "8.3.23", "first_release": "2008-02-04", "end_of_life": "2013-02-07", "latest_release_date": "2013-02-07", "manual_url": "/docs/8.3/index.html", "manual_slug": "8.3", "manual_pages": 913, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "8.2", "url": "/wiki/versions/8.2/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "8.2.23", "first_release": "2006-12-05", "end_of_life": "2011-12-05", "latest_release_date": "2011-12-05", "manual_url": "/docs/8.2/index.html", "manual_slug": "8.2", "manual_pages": 785, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "8.1", "url": "/wiki/versions/8.1/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "8.1.23", "first_release": "2005-11-08", "end_of_life": "2010-11-08", "latest_release_date": "2010-12-16", "manual_url": "/docs/8.1/index.html", "manual_slug": "8.1", "manual_pages": 730, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "8.0", "url": "/wiki/versions/8.0/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "8.0.26", "first_release": "2005-01-19", "end_of_life": "2010-10-01", "latest_release_date": "2010-10-04", "manual_url": "/docs/8.0/index.html", "manual_slug": "8.0", "manual_pages": 664, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "7.4", "url": "/wiki/versions/7.4/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "7.4.30", "first_release": "2003-11-17", "end_of_life": "2010-10-01", "latest_release_date": "2010-10-04", "manual_url": "/docs/7.4/index.html", "manual_slug": "7.4", "manual_pages": 644, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "7.3", "url": "/wiki/versions/7.3/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "7.3.21", "first_release": "2002-11-27", "end_of_life": "2007-11-27", "latest_release_date": "2008-01-07", "manual_url": "/docs/7.3/index.html", "manual_slug": "7.3", "manual_pages": 617, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "7.2", "url": "/wiki/versions/7.2/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "7.2.8", "first_release": "2002-02-04", "end_of_life": "2007-02-04", "latest_release_date": "2005-05-09", "manual_url": "/docs/7.2/index.html", "manual_slug": "7.2", "manual_pages": 553, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "7.1", "url": "/wiki/versions/7.1/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "7.1.3", "first_release": "2001-04-13", "end_of_life": "2006-04-13", "latest_release_date": "2001-08-17", "manual_url": "/docs/7.1/index.html", "manual_slug": "7.1", "manual_pages": 489, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "7.0", "url": "/wiki/versions/7.0/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "7.0.3", "first_release": "2000-05-08", "end_of_life": "2005-05-08", "latest_release_date": "2000-11-12", "manual_url": "/docs/7.0/index.html", "manual_slug": "7.0", "manual_pages": 414, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "6.5", "url": "/wiki/versions/6.5/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "6.5.3", "first_release": "1999-06-09", "end_of_life": "2004-06-09", "latest_release_date": "1999-11-04", "manual_url": "/docs/6.5/index.html", "manual_slug": "6.5", "manual_pages": 371, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "6.4", "url": "/wiki/versions/6.4/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "6.4.2", "first_release": "1998-10-30", "end_of_life": "2003-10-30", "latest_release_date": "1999-01-03", "manual_url": "/docs/6.4/index.html", "manual_slug": "6.4", "manual_pages": 340, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}, {"branch": "6.3", "url": "/wiki/versions/6.3/", "state": "eol", "state_label": "\u5df2\u505c\u6b62\u652f\u6301", "tag": "", "build": "6.3.2", "first_release": "1998-03-01", "end_of_life": "2003-03-01", "latest_release_date": "", "manual_url": "/docs/6.3/index.html", "manual_slug": "6.3", "manual_pages": 202, "manual_loaded_at": "2026-09-27T00:10:45.258078", "source_revision": "", "release_count": 0, "entry_count": 0, "initial": null, "latest": null, "comparison_url": ""}]}