{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2012-09-10", "build": "9.2.0", "major": "9.2", "minor": 0, "manual": "9.2", "status": "stable", "doc_git": "", "version": "9.2.0", "eol_date": "2017-11-09", "date_text": "2012-09-10", "supported": false, "manual_url": "/docs/9.2/release-9-2.html", "source_url": "/docs/release/9.2.0/", "entry_count": 238, "placeholder": false, "content_hash": "bd99d2345ced583e1c028423a2755baa4834c71227be6a846a2b0732ec113d19", "manual_build": "9.2.24", "source_as_of": "", "changes_count": 215, "doc_loaded_at": "2026-09-26T02:56:46.946617", "migration_html": "<p>      对于希望从任何早期版本迁移数据的用户，需要使用 <span>pg_dump</span> 进行转储/恢复，或者使用 <span>pg_upgrade</span>。\n     </p><p>     版本 9.2 包含许多可能影响与以前版本兼容性的变更。请注意以下不兼容之处：\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>", "compatibility_count": 23, "label": "9.2", "status_label": "历史版本", "eol": "2017-11-09", "age_days": 5133, "support_days": -3247}, "groups": [{"date": "2012-09-10", "build": "9.2.0", "major": "9.2", "minor": 0, "manual": "9.2", "status": "stable", "doc_git": "", "version": "9.2.0", "eol_date": "2017-11-09", "date_text": "2012-09-10", "supported": false, "manual_url": "/docs/9.2/release-9-2.html", "source_url": "/docs/release/9.2.0/", "entry_count": 238, "placeholder": false, "content_hash": "bd99d2345ced583e1c028423a2755baa4834c71227be6a846a2b0732ec113d19", "manual_build": "9.2.24", "source_as_of": "", "changes_count": 215, "doc_loaded_at": "2026-09-26T02:56:46.946617", "migration_html": "<p>      对于希望从任何早期版本迁移数据的用户，需要使用 <span>pg_dump</span> 进行转储/恢复，或者使用 <span>pg_upgrade</span>。\n     </p><p>     版本 9.2 包含许多可能影响与以前版本兼容性的变更。请注意以下不兼容之处：\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>", "compatibility_count": 23, "label": "9.2", "status_label": "历史版本", "eol": "2017-11-09", "age_days": 5133, "support_days": -3247, "entries": [{"id": "9.2.0-ac821c51436bac96", "cves": [], "html": "<p>      从 <a href=\"/docs/9.2/catalog-pg-tablespace.html\" title=\"45.43. pg_tablespace\"><code>pg_tablespace</code></a> 中移除 <code>spclocation</code> 字段（Magnus Hagander）\n     </p><p>      该字段与实际定义表空间位置的符号链接重复，因此在移动表空间时存在遗漏错误的风险。此变更允许在服务器停机期间通过手工调整符号链接来移动表空间目录。为了替代该字段，我们新增了 <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-CATALOG-TABLE\" title=\"表 9.54. 系统目录信息函数\"><code>pg_tablespace_location()</code></a> 来查询符号链接。\n     </p>", "text": "从 pg_tablespace 中移除 spclocation 字段（Magnus Hagander） 该字段与实际定义表空间位置的符号链接重复，因此在移动表空间时存在遗漏错误的风险。此变更允许在服务器停机期间通过手工调整符号链接来移动表空间目录。为了替代该字段，我们新增了 pg_tablespace_location() 来查询符号链接。", "title": "从 pg_tablespace 中移除 spclocation 字段", "commits": [], "section": "系统目录", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.4", "source_hash": "f7adbdf5a27a952fda3b70fe105a49c41b1e0a1e318a82041a9701138c9c3c48", "section_path": ["系统目录"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d0012a7942724551", "cves": [], "html": "<p>      把 <code>tsvector</code> 的最常用元素统计移到 <a href=\"/docs/9.2/view-pg-stats.html\" title=\"45.66. pg_stats\"><code>pg_stats</code></a> 的新列中（Alexander Korotkov）\n     </p><p>      对于 <code>tsvector</code> 列，此前在 <code>most_common_vals</code> 和 <code>most_common_freqs</code> 中可用的数据，请改查 <code>most_common_elems</code> 和 <code>most_common_elem_freqs</code>。\n     </p>", "text": "把 tsvector 的最常用元素统计移到 pg_stats 的新列中（Alexander Korotkov） 对于 tsvector 列，此前在 most_common_vals 和 most_common_freqs 中可用的数据，请改查 most_common_elems 和 most_common_elem_freqs。", "title": "把 tsvector 的最常用元素统计移到 pg_stats 的新列中", "commits": [], "section": "系统目录", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.4", "source_hash": "3e3f948d58e62c6e60757a3b64665b14686c585114948c8212050a8f6e3c6c73", "section_path": ["系统目录"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c8d179ffb665ac6c", "cves": [], "html": "<p>      移除 <a href=\"/docs/9.2/hstore.html\" title=\"F.16. hstore\">hstore</a> 的 <code>=&gt;</code> 操作符（Robert Haas）\n     </p><p>      用户现在应使用 <code>hstore(text, text)</code>。自 <span>PostgreSQL</span> 9.0 起，创建名为 <code>=&gt;</code> 的操作符时会发出警告消息，因为 <acronym>SQL</acronym> 标准将该记号保留作其他用途。\n     </p>", "text": "移除 hstore 的 => 操作符（Robert Haas） 用户现在应使用 hstore(text, text)。自 PostgreSQL 9.0 起，创建名为 => 的操作符时会发出警告消息，因为 SQL 标准将该记号保留作其他用途。", "title": "移除 hstore 的 => 操作符", "commits": [], "section": "函数", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "0bc5041259cf8b1cc7f966a2c44056f5ea13519f632b282b41a336117866ad50", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-96f80a719d7d2316", "cves": [], "html": "<p>      确保 <a href=\"/docs/9.2/functions-xml.html#FUNCTIONS-XML-PROCESSING\" title=\"9.14.3. 处理 XML\"><code>xpath()</code></a> 对字符串值中的特殊字符转义（Florian Pflug）\n     </p><p>      否则结果有可能不是有效的 <acronym>XML</acronym>。\n     </p>", "text": "确保 xpath() 对字符串值中的特殊字符转义（Florian Pflug） 否则结果有可能不是有效的 XML。", "title": "确保 xpath() 对字符串值中的特殊字符转义", "commits": [], "section": "函数", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "1eac963925e07141a03a6328ca5434101eacd9325d08845410b8cce6a26eecc0", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-cd08ea6972407cc4", "cves": [], "html": "<p>      让 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-DBOBJECT\" title=\"9.26.6. 数据库对象管理函数\"><code>pg_relation_size()</code></a> 及相关函数在对象不存在时返回 NULL（Phil Sorber）\n     </p><p>      这防止了调用这些函数的查询在并发 <code>DROP</code> 之后立即返回错误。\n     </p>", "text": "让 pg_relation_size() 及相关函数在对象不存在时返回 NULL（Phil Sorber） 这防止了调用这些函数的查询在并发 DROP 之后立即返回错误。", "title": "让 pg_relation_size() 及相关函数在对象不存在时返回 NULL", "commits": [], "section": "函数", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "0365a8d74f572ffd411ff74388c5836ade6dcd913ed8310188ec918cce463cb1", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-3a93f110e6587f1e", "cves": [], "html": "<p>      让 <a href=\"/docs/9.2/functions-datetime.html#FUNCTIONS-DATETIME-EXTRACT\" title=\"9.9.1. EXTRACT, date_part\"><code>EXTRACT(EPOCH FROM <em><code>timestamp without time zone</code></em>)</code></a> 从本地午夜而不是 <acronym>UTC</acronym> 午夜起算纪元（Tom Lane）\n     </p><p>      此变更撤销了 7.3 版本中一个欠考虑的变更。从 <acronym>UTC</acronym> 午夜起算是不一致的，因为它使结果依赖于 <a href=\"/docs/9.2/runtime-config-client.html#GUC-TIMEZONE\"><code>timezone</code></a> 设置，而 <code>timestamp without time zone</code> 的计算不应如此。把输入值转换为 <code>timestamp with time zone</code> 仍可获得先前的行为。\n     </p>", "text": "让 EXTRACT(EPOCH FROM timestamp without time zone) 从本地午夜而不是 UTC 午夜起算纪元（Tom Lane） 此变更撤销了 7.3 版本中一个欠考虑的变更。从 UTC 午夜起算是不一致的，因为它使结果依赖于 timezone 设置，而 timestamp without time zone 的计算不应如此。把输入值转换为 timestamp with time zone 仍可获得先前的行为。", "title": "让 EXTRACT(EPOCH FROM timestamp without time zone) 从本地午夜而不是 UTC 午夜起算纪元", "commits": [], "section": "函数", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "1b55b0afb09e907f3dd5aeed6792309cff5f6e7de7e6700eaa8bf80093893a7d", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d6b8448d07f30f53", "cves": [], "html": "<p>      正确解析带尾缀 <code>yesterday</code>、<code>today</code> 和 <code>tomorrow</code> 的时间串（Dean Rasheed）\n     </p><p>      此前，<code>SELECT '04:00:00 yesterday'::timestamp</code> 返回的是昨天午夜的日期。\n     </p>", "text": "正确解析带尾缀 yesterday、today 和 tomorrow 的时间串（Dean Rasheed） 此前，SELECT '04:00:00 yesterday'::timestamp 返回的是昨天午夜的日期。", "title": "正确解析带尾缀 yesterday、today 和 tomorrow 的时间串", "commits": [], "section": "函数", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "2d5d48b665b29af237877f0041089b421d80bdef483486695d10f0cfced04189", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9ab4877581d1f33d", "cves": [], "html": "<p>      修复 <a href=\"/docs/9.2/functions-formatting.html\" title=\"9.8. 数据类型格式化函数\"><code>to_date()</code></a> 和 <code>to_timestamp()</code>，使不完整日期向 2020 年折算（Bruce Momjian）\n     </p><p>      此前，少于四位的提供年份和年份掩码的折算不一致。\n     </p>", "text": "修复 to_date() 和 to_timestamp()，使不完整日期向 2020 年折算（Bruce Momjian） 此前，少于四位的提供年份和年份掩码的折算不一致。", "title": "修复 to_date() 和 to_timestamp()，使不完整日期向 2020 年折算", "commits": [], "section": "函数", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.5", "source_hash": "c0a51de1dec797242eea43179d6bca1e8366841093a0acffc7f3558ce833bd4e", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-cd00c820fae09d7b", "cves": [], "html": "<p>      防止 <a href=\"/docs/9.2/sql-alterdomain.html\" title=\"ALTER DOMAIN\"><code>ALTER DOMAIN</code></a> 作用于非域类型（Peter Eisentraut）\n     </p><p>      此前在非域类型上可以更改所有者和模式。\n     </p>", "text": "防止 ALTER DOMAIN 作用于非域类型（Peter Eisentraut） 此前在非域类型上可以更改所有者和模式。", "title": "防止 ALTER DOMAIN 作用于非域类型", "commits": [], "section": "对象修改", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.6", "source_hash": "abec666d98927e633543e3bfae887bd7e15e05f9223862e18bded243dd5ef0b4", "section_path": ["对象修改"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a0fcc7f08b1d0470", "cves": [], "html": "<p>      不再在 <a href=\"/docs/9.2/sql-createfunction.html\" title=\"CREATE FUNCTION\"><code>CREATE FUNCTION</code></a> 中强制小写过程语言名（Robert Haas）\n     </p><p>      虽然不带引号的语言标识符仍会小写，但字符串和带引号的标识符不再被强制小写。因此例如 <code>CREATE FUNCTION ... LANGUAGE 'C'</code> 将不再有效；必须写成 <code>'c'</code>，或者最好省略引号。\n     </p>", "text": "不再在 CREATE FUNCTION 中强制小写过程语言名（Robert Haas） 虽然不带引号的语言标识符仍会小写，但字符串和带引号的标识符不再被强制小写。因此例如 CREATE FUNCTION ... LANGUAGE 'C' 将不再有效；必须写成 'c'，或者最好省略引号。", "title": "不再在 CREATE FUNCTION 中强制小写过程语言名", "commits": [], "section": "对象修改", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.6", "source_hash": "b6c06e2c71dddc0c388df2cb1db48204cd8fdefaf158cf53a364fb5198a5727f", "section_path": ["对象修改"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d1ce038d21d2d6c8", "cves": [], "html": "<p>      更改外键强制触发器的系统生成名称（Tom Lane）\n     </p><p>      此变更确保在某些涉及自引用外键约束的极端情况下触发器按正确顺序触发。\n     </p>", "text": "更改外键强制触发器的系统生成名称（Tom Lane） 此变更确保在某些涉及自引用外键约束的极端情况下触发器按正确顺序触发。", "title": "更改外键强制触发器的系统生成名称", "commits": [], "section": "对象修改", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.6", "source_hash": "765e832e408d501c4aa617f1bf0c352b38a2551a960f3d9b0124f5c8ec086d30", "section_path": ["对象修改"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-008f1099d913905d", "cves": [], "html": "<p>      为<a href=\"/docs/9.2/app-psql.html\" title=\"psql\"><span>psql</span></a>元命令参数提供一致的反引号、变量展开和带引号子串行为（Tom Lane）\n     </p><p>      此前，当这类引用与相邻文本之间没有空白分隔时，处理方式很奇怪。例如 <code>'FOO'BAR</code> 会输出为 <code>FOO BAR</code>（意外插入空格），而 <code>FOO'BAR'BAZ</code> 会原样输出（不像大多数人期望的那样去掉引号）。\n     </p>", "text": "为psql元命令参数提供一致的反引号、变量展开和带引号子串行为（Tom Lane） 此前，当这类引用与相邻文本之间没有空白分隔时，处理方式很奇怪。例如 'FOO'BAR 会输出为 FOO BAR（意外插入空格），而 FOO'BAR'BAZ 会原样输出（不像大多数人期望的那样去掉引号）。", "title": "为psql元命令参数提供一致的反引号、变量展开和带引号子串行为", "commits": [], "section": "命令行工具", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "7a6bc02098e76f8d285dd2c79ce74ad4f49f36dab799bd0c95e0944b9b4c93ca", "section_path": ["命令行工具"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-252c006c84f0d7a8", "cves": [], "html": "<p>      不再把<a href=\"/docs/9.2/app-clusterdb.html\" title=\"clusterdb\"><span>clusterdb</span></a>的表名视为已加双引号；不再把<a href=\"/docs/9.2/app-reindexdb.html\" title=\"reindexdb\"><span>reindexdb</span></a>的表名和索引名视为已加双引号（Bruce Momjian）\n     </p><p>      如果需要加引号，用户现在必须在命令参数中包含双引号。\n     </p>", "text": "不再把clusterdb的表名视为已加双引号；不再把reindexdb的表名和索引名视为已加双引号（Bruce Momjian） 如果需要加引号，用户现在必须在命令参数中包含双引号。", "title": "不再把clusterdb的表名视为已加双引号；不再把reindexdb的表名和索引名视为已加双引号", "commits": [], "section": "命令行工具", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "585701e9649ad2ae05b48606f24094945e3bcedd4689c1e593ac12000dbe943b", "section_path": ["命令行工具"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7ad135c980fbfd45", "cves": [], "html": "<p> <a href=\"/docs/9.2/app-createuser.html\" title=\"createuser\"><span>createuser</span></a> 默认不再提示输入选项设置（Peter Eisentraut）\n     </p><p>      使用 <code>--interactive</code> 获得旧行为。\n     </p>", "text": "createuser 默认不再提示输入选项设置（Peter Eisentraut） 使用 --interactive 获得旧行为。", "title": "createuser 默认不再提示输入选项设置", "commits": [], "section": "命令行工具", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "06adfce04170b2926fa77a705ecb1b8e6962f2964d78fa6e5732e68da82b415d", "section_path": ["命令行工具"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-ac6a997ef928f243", "cves": [], "html": "<p>      除非指定 <code>--interactive</code>，否则禁用<a href=\"/docs/9.2/app-dropuser.html\" title=\"dropuser\"><span>dropuser</span></a>中的用户名提示（Peter Eisentraut）\n     </p>", "text": "除非指定 --interactive，否则禁用dropuser中的用户名提示（Peter Eisentraut）", "title": "除非指定 --interactive，否则禁用dropuser中的用户名提示", "commits": [], "section": "命令行工具", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.7", "source_hash": "8837bd904ae0a74b5d0d5b27fc1f92327e0f0516dbd4eea0a5690f78e8f7ebde", "section_path": ["命令行工具"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-701dba5458c47731", "cves": [], "html": "<p>      新增用于指定<a href=\"/docs/9.2/runtime-config-connection.html#GUC-SSL-CA-FILE\">服务器端 <acronym>SSL</acronym> 文件位置</a>的服务器参数（Peter Eisentraut）\n     </p><p>      这允许更改此前在数据目录中硬编码为 <code>server.crt</code>、<code>server.key</code>、<code>root.crt</code> 和 <code>root.crl</code> 的文件的名称和位置。<span><em>服务器默认不再检查 <code>root.crt</code> 或 <code>root.crl</code></em></span>；要加载这些文件，必须把相关参数设为非默认值。\n     </p>", "text": "新增用于指定服务器端 SSL 文件位置的服务器参数（Peter Eisentraut） 这允许更改此前在数据目录中硬编码为 server.crt、server.key、root.crt 和 root.crl 的文件的名称和位置。服务器默认不再检查 root.crt 或 root.crl；要加载这些文件，必须把相关参数设为非默认值。", "title": "新增用于指定服务器端 SSL 文件位置的服务器参数", "commits": [], "section": "服务器设置", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "199ac5cc8de895f05ff15c2d8a9d6a7bc4a88e6d43b4c4a29d9823dc89d82d1b", "section_path": ["服务器设置"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4cde5ab2a51778e9", "cves": [], "html": "<p>      移除 <code>silent_mode</code> 参数（Heikki Linnakangas）\n     </p><p>      类似的行为可以用 <code>pg_ctl start -l postmaster.log</code> 获得。\n     </p>", "text": "移除 silent_mode 参数（Heikki Linnakangas） 类似的行为可以用 pg_ctl start -l postmaster.log 获得。", "title": "移除 silent_mode 参数", "commits": [], "section": "服务器设置", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "f07a37d9cc57db141cb1f30cd53563558e90fddcfa6c2195cb737e3ad75d4ce5", "section_path": ["服务器设置"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a6f32313e72bf521", "cves": [], "html": "<p>      移除 <code>wal_sender_delay</code> 参数，因为它不再需要（Tom Lane）\n     </p>", "text": "移除 wal_sender_delay 参数，因为它不再需要（Tom Lane）", "title": "移除 wal_sender_delay 参数，因为它不再需要", "commits": [], "section": "服务器设置", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "2ed330db0ed157a298459a3531f7d4d593b45acda07d4fc9ab49be6303812f20", "section_path": ["服务器设置"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-792e0b44598eb86d", "cves": [], "html": "<p>      移除 <code>custom_variable_classes</code> 参数（Tom Lane）\n     </p><p>      该设置提供的检查价值存疑。现在任何设置都可以以任何类名为前缀。\n     </p>", "text": "移除 custom_variable_classes 参数（Tom Lane） 该设置提供的检查价值存疑。现在任何设置都可以以任何类名为前缀。", "title": "移除 custom_variable_classes 参数", "commits": [], "section": "服务器设置", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.8", "source_hash": "60d3f23f34d5de0940b17a4730e9bc4102e26e23ff49737617cd165efd6de159", "section_path": ["服务器设置"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-453b1bca8fcd1555", "cves": [], "html": "<p>      把 <a href=\"/docs/9.2/monitoring-stats.html#MONITORING-STATS-VIEWS-TABLE\" title=\"表 27.1. 标准统计视图\"><code>pg_stat_activity</code></a><code>.procpid</code> 重命名为 <code>pid</code>，以与其他系统表一致（Magnus Hagander）\n     </p>", "text": "把 pg_stat_activity.procpid 重命名为 pid，以与其他系统表一致（Magnus Hagander）", "title": "把 pg_stat_activity.procpid 重命名为 pid，以与其他系统表一致", "commits": [], "section": "监控", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "9e4d37d0d2c0d28492e2d5b204a4a9b6562477dca32eb1b9171e296d0dd03edd", "section_path": ["监控"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6753510ed67e9def", "cves": [], "html": "<p>      为 <code>pg_stat_activity</code> 创建单独的列来报告进程状态（Scott Mead、Magnus Hagander）\n     </p><p>      先前的 <code>query</code> 和 <code>query_start</code> 值现在对空闲会话仍然可用，从而支持更强的分析。\n     </p>", "text": "为 pg_stat_activity 创建单独的列来报告进程状态（Scott Mead、Magnus Hagander） 先前的 query 和 query_start 值现在对空闲会话仍然可用，从而支持更强的分析。", "title": "为 pg_stat_activity 创建单独的列来报告进程状态", "commits": [], "section": "监控", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "7385e6dc9511e1be877eca25e5abe1ae6598a8df39f155a741c11715f7d13855", "section_path": ["监控"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6819edd4d1e6fcb9", "cves": [], "html": "<p>      把 <code>pg_stat_activity</code>.<code>current_query</code> 重命名为 <code>query</code>，因为它在查询完成后不会被清除（Magnus Hagander）\n     </p>", "text": "把 pg_stat_activity.current_query 重命名为 query，因为它在查询完成后不会被清除（Magnus Hagander）", "title": "把 pg_stat_activity.current_query 重命名为 query，因为它在查询完成后不会被清除", "commits": [], "section": "监控", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "35331357c2993aa53369aa25ecf2bce8e79a4fc75cbce5aaa1be0e74de62a036", "section_path": ["监控"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-bb3cdb1ad4ee3524", "cves": [], "html": "<p>      把所有 <acronym>SQL</acronym> 级统计计时值改为以毫秒计的 <code>float8</code> 列（Tom Lane）\n     </p><p>      此变更消除了设计中\"值精确到微秒且仅到微秒\"的假设（因为 <code>float8</code> 值可以带小数）。受影响的列有 <code>pg_stat_user_functions</code>.<code>total_time</code>、<code>pg_stat_user_functions</code>.<code>self_time</code>、<code>pg_stat_xact_user_functions</code>.<code>total_time</code> 和 <code>pg_stat_xact_user_functions</code>.<code>self_time</code>。这些列底层的统计函数现在也返回 <code>float8</code> 毫秒而不是 <code>bigint</code> 微秒。<code>contrib/pg_stat_statements</code> 的 <code>total_time</code> 列现在也以毫秒计。\n     </p>", "text": "把所有 SQL 级统计计时值改为以毫秒计的 float8 列（Tom Lane） 此变更消除了设计中\"值精确到微秒且仅到微秒\"的假设（因为 float8 值可以带小数）。受影响的列有 pg_stat_user_functions.total_time、pg_stat_user_functions.self_time、pg_stat_xact_user_functions.total_time 和 pg_stat_xact_user_functions.self_time。这些列底层的统计函数现在也返回 float8 毫秒而不是 bigint 微秒。contrib/pg_stat_statements 的 total_time 列现在也以毫秒计。", "title": "把所有 SQL 级统计计时值改为以毫秒计的 float8 列", "commits": [], "section": "监控", "category": "compatibility", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.4.9", "source_hash": "517218fe95fc8bf187f12b76ed3772d7783033d6ec9013746503de407804b4af", "section_path": ["监控"], "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": [], "version": "9.2.0", "category_label": "兼容性变化", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-b925f0ae9d1e165d", "cves": [], "html": "<p>      允许查询只从索引检索数据，避免堆访问（Robert Haas、Ibrar Ahmed、Heikki Linnakangas、Tom Lane）\n     </p><p>      此特性常称为<em>仅索引扫描</em>。对于只包含对所有会话可见的元组的堆页（由可见性映射报告），可以跳过堆访问；因此该收益主要适用于基本静态的数据。作为实现此特性的必要部分，可见性映射被做成了崩溃安全的。\n     </p>", "text": "允许查询只从索引检索数据，避免堆访问（Robert Haas、Ibrar Ahmed、Heikki Linnakangas、Tom Lane） 此特性常称为仅索引扫描。对于只包含对所有会话可见的元组的堆页（由可见性映射报告），可以跳过堆访问；因此该收益主要适用于基本静态的数据。作为实现此特性的必要部分，可见性映射被做成了崩溃安全的。", "title": "允许查询只从索引检索数据，避免堆访问", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "0a8a951015e6684d482e91af8dba2e6aa2593367fb9fc3b2837a3735a9365736", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-eeb9b37163818009", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/spgist.html\" title=\"第 54 章 SP-GiST 索引\">SP-GiST</a>（空间分区 GiST）索引访问方法（Teodor Sigaev、Oleg Bartunov、Tom Lane）\n     </p><p>      SP-GiST 在灵活性上与 GiST 相当，但支持非平衡的分区搜索结构而不是平衡树。对于合适的问题，SP-GiST 在索引构建时间和搜索时间上都可以比 GiST 更快。\n     </p>", "text": "新增 SP-GiST（空间分区 GiST）索引访问方法（Teodor Sigaev、Oleg Bartunov、Tom Lane） SP-GiST 在灵活性上与 GiST 相当，但支持非平衡的分区搜索结构而不是平衡树。对于合适的问题，SP-GiST 在索引构建时间和搜索时间上都可以比 GiST 更快。", "title": "新增 SP-GiST（空间分区 GiST）索引访问方法", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "dcdd33cfefc9c972f48d38bba2ac00f5672237a2fd2f2d9c0568a379473bda2f", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-cd595d8c1fc673f5", "cves": [], "html": "<p>      允许组提交在高负载下有效工作（Peter Geoghegan、Simon Riggs、Heikki Linnakangas）\n     </p><p>      此前，随着写负载增加，由于内部锁竞争，提交批处理变得无效。\n     </p>", "text": "允许组提交在高负载下有效工作（Peter Geoghegan、Simon Riggs、Heikki Linnakangas） 此前，随着写负载增加，由于内部锁竞争，提交批处理变得无效。", "title": "允许组提交在高负载下有效工作", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "b3311726754b6c4b1e866c3b3b7e5b0876424d0f30507cb5f0c7a52426f7595c", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-dcb302a38879a31b", "cves": [], "html": "<p>      允许无竞争锁使用新的快速路径锁机制管理（Robert Haas）\n     </p>", "text": "允许无竞争锁使用新的快速路径锁机制管理（Robert Haas）", "title": "允许无竞争锁使用新的快速路径锁机制管理", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "2736333ce50a487d846bca46578dc8326965fb9d68a6fe4973cca1c0cba8ba0c", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-acfa1d52e74cb3f7", "cves": [], "html": "<p>      降低创建虚拟事务 ID 锁的开销（Robert Haas）\n     </p>", "text": "降低创建虚拟事务 ID 锁的开销（Robert Haas）", "title": "降低创建虚拟事务 ID 锁的开销", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "85fc9af85f8b982622c06eae7d1bfab4c6bc30000f420bf04408d7f2f6aa9aa8", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-fc3bec64df19e689", "cves": [], "html": "<p>      降低可序列化隔离级别锁的开销（Dan Ports）\n     </p>", "text": "降低可序列化隔离级别锁的开销（Dan Ports）", "title": "降低可序列化隔离级别锁的开销", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "4ff70b86738d0d0853c25970d2d854ad8137645f3778772406222006d7834768", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7020ba27f590075f", "cves": [], "html": "<p>      改进 PowerPC 和 Itanium 上的自旋锁性能（Manabu Ori、Robert Haas、Tom Lane）\n     </p>", "text": "改进 PowerPC 和 Itanium 上的自旋锁性能（Manabu Ori、Robert Haas、Tom Lane）", "title": "改进 PowerPC 和 Itanium 上的自旋锁性能", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "002f780e5019ce419ccc284f6845e22b0b841a3671b58ceada043c96b0fd0db7", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c5b057ad48e328f0", "cves": [], "html": "<p>      降低共享失效缓存消息的开销（Robert Haas）\n     </p>", "text": "降低共享失效缓存消息的开销（Robert Haas）", "title": "降低共享失效缓存消息的开销", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "ab8e94c542987baccc9b7b95e07904cb79d737b234f2db60d602a419b2abefd7", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4a8dd8f160bf8e7d", "cves": [], "html": "<p>      把 <code>PGPROC</code> 共享内存数组中频繁访问的成员移到单独的数组中（Pavan Deolasee、Heikki Linnakangas、Robert Haas）\n     </p>", "text": "把 PGPROC 共享内存数组中频繁访问的成员移到单独的数组中（Pavan Deolasee、Heikki Linnakangas、Robert Haas）", "title": "把 PGPROC 共享内存数组中频繁访问的成员移到单独的数组中", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "7cbe5627fff2f17da0ae2701790fb24833da5e3503aa3512255044fd59836743", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9293df95dc795809", "cves": [], "html": "<p>      通过批量向堆添加元组来改进 <code>COPY</code> 性能（Heikki Linnakangas）\n     </p>", "text": "通过批量向堆添加元组来改进 COPY 性能（Heikki Linnakangas）", "title": "通过批量向堆添加元组来改进 COPY 性能", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "b2c826f8350bba9f2028ce0dcb1115829b28fdd45a069aea13a43c1c88de8995", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-32f5f02ed143e711", "cves": [], "html": "<p>      通过以更少的内存分配开销生成更好的树，改进几何数据类型的 GiST 索引性能（Alexander Korotkov）\n     </p>", "text": "通过以更少的内存分配开销生成更好的树，改进几何数据类型的 GiST 索引性能（Alexander Korotkov）", "title": "通过以更少的内存分配开销生成更好的树，改进几何数据类型的 GiST 索引性能", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "5c1a140a54107b9281d1354c2eb6add9f4d1ebb68ff4b77328a24e4009c14eab", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-58e73ecb9993382e", "cves": [], "html": "<p>      改进 GiST 索引构建时间（Alexander Korotkov、Heikki Linnakangas）\n     </p>", "text": "改进 GiST 索引构建时间（Alexander Korotkov、Heikki Linnakangas）", "title": "改进 GiST 索引构建时间", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "bbcbc8634cb76d15619558e63e9115b3a9431cfed15618d84398f2c389bffe43", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-dcee0dbaf2aa753b", "cves": [], "html": "<p>      允许临时表和不记录日志的表更早设置提示位（Robert Haas）\n     </p>", "text": "允许临时表和不记录日志的表更早设置提示位（Robert Haas）", "title": "允许临时表和不记录日志的表更早设置提示位", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "5fa63887eee53c3651a6187bbf766a6488f04def8418c78630495516da6bc450", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d958e4ac450f2b6c", "cves": [], "html": "<p>      允许排序由内联的、不可从 <acronym>SQL</acronym> 调用的比较函数执行（Peter Geoghegan、Robert Haas、Tom Lane）\n     </p>", "text": "允许排序由内联的、不可从 SQL 调用的比较函数执行（Peter Geoghegan、Robert Haas、Tom Lane）", "title": "允许排序由内联的、不可从 SQL 调用的比较函数执行", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "c46db2823bf030d3a22c2254de5c107bf12a5d0f1d111053c8ad8afd12b43780", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-569155780d00673e", "cves": [], "html": "<p>      使 CLOG 缓冲区数量基于 <a href=\"/docs/9.2/runtime-config-resource.html#GUC-SHARED-BUFFERS\"><code>shared_buffers</code></a> 缩放（Robert Haas、Simon Riggs、Tom Lane）\n     </p>", "text": "使 CLOG 缓冲区数量基于 shared_buffers 缩放（Robert Haas、Simon Riggs、Tom Lane）", "title": "使 CLOG 缓冲区数量基于 shared_buffers 缩放", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "a8bf6388bcc747a37e3427572cc312122f22d4992526e2bc9861a21dc4862832", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-3e001c925a7f258d", "cves": [], "html": "<p>      改进删除表或数据库时发生的缓冲池扫描的性能（Jeff Janes、Simon Riggs）\n     </p>", "text": "改进删除表或数据库时发生的缓冲池扫描的性能（Jeff Janes、Simon Riggs）", "title": "改进删除表或数据库时发生的缓冲池扫描的性能", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "7bd3e33e8e31151c8923acf966396c682c9d4c7feaffcd9ce2ef8572f3d4f14c", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-fe7626911c83bc11", "cves": [], "html": "<p>      改进删除或截断大量表时检查点进程 fsync 请求队列的性能（Tom Lane）\n     </p>", "text": "改进删除或截断大量表时检查点进程 fsync 请求队列的性能（Tom Lane）", "title": "改进删除或截断大量表时检查点进程 fsync 请求队列的性能", "commits": [], "section": "服务器 / 性能", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "02b45d191bfb514adc5c4554a19ec35f04ef487693b80cf9cb516324fca74cee", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-24ce1a18a8f8da04", "cves": [], "html": "<p>      在 Windows 上把安全的文件描述符数量传递给子进程（Heikki Linnakangas）\n     </p><p>      这允许 Windows 会话使用比以前更多的打开文件描述符。\n     </p>", "text": "在 Windows 上把安全的文件描述符数量传递给子进程（Heikki Linnakangas） 这允许 Windows 会话使用比以前更多的打开文件描述符。", "title": "在 Windows 上把安全的文件描述符数量传递给子进程", "commits": [], "section": "服务器 / 性能", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.2", "source_hash": "4112f9654b6df4db03742a3114a1b1292f92fe71f68c81f4ce28e51e06cb201c", "section_path": ["服务器", "性能"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-3db26bf9c2e046d0", "cves": [], "html": "<p>      创建专门的后台进程来执行检查点（Simon Riggs）\n     </p><p>      此前后台写入进程既写脏页又做检查点。把这两项工作分到两个进程使每个目标都能更可预期地完成。\n     </p>", "text": "创建专门的后台进程来执行检查点（Simon Riggs） 此前后台写入进程既写脏页又做检查点。把这两项工作分到两个进程使每个目标都能更可预期地完成。", "title": "创建专门的后台进程来执行检查点", "commits": [], "section": "服务器 / 进程管理", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.3", "source_hash": "d43619fb9026c82ab4fd7595c7d70b0e7309e7cbe27565d379e37ba074deb39c", "section_path": ["服务器", "进程管理"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e89f95da5a3573ad", "cves": [], "html": "<p>      通过更早唤醒 walwriter 来改进异步提交行为（Simon Riggs）\n     </p><p>      此前只有 <a href=\"/docs/9.2/runtime-config-wal.html#GUC-WAL-WRITER-DELAY\"><code>wal_writer_delay</code></a> 触发 <acronym>WAL</acronym> 刷盘；现在填满 <acronym>WAL</acronym> 缓冲区也会触发 <acronym>WAL</acronym> 写入。\n     </p>", "text": "通过更早唤醒 walwriter 来改进异步提交行为（Simon Riggs） 此前只有 wal_writer_delay 触发 WAL 刷盘；现在填满 WAL 缓冲区也会触发 WAL 写入。", "title": "通过更早唤醒 walwriter 来改进异步提交行为", "commits": [], "section": "服务器 / 进程管理", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.3", "source_hash": "a49c3df4fb3233b513277c3661b9eb3d6c8432d0e040c1cfbce7fbf60364c467", "section_path": ["服务器", "进程管理"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-33b70dd7e73b1d28", "cves": [], "html": "<p>      允许 bgwriter、walwriter、checkpointer、统计收集器、日志收集器和归档器等后台进程在空闲期间更高效地休眠（Peter Geoghegan、Tom Lane）\n     </p><p>      这一系列变更降低了无事可做时进程唤醒的频率，大幅降低了空闲服务器的功耗。\n     </p>", "text": "允许 bgwriter、walwriter、checkpointer、统计收集器、日志收集器和归档器等后台进程在空闲期间更高效地休眠（Peter Geoghegan、Tom Lane） 这一系列变更降低了无事可做时进程唤醒的频率，大幅降低了空闲服务器的功耗。", "title": "允许 bgwriter、walwriter、checkpointer、统计收集器、日志收集器和归档器等后台进程在空闲期间更高效地休眠", "commits": [], "section": "服务器 / 进程管理", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.3", "source_hash": "e7ddefeab85e8191cd49d558c15546c2d9185b6fa453862042cda03d89f1eb5d", "section_path": ["服务器", "进程管理"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e65adfdecaa64e44", "cves": [], "html": "<p>      允许规划器即使在使用预备语句时，也为特定参数值生成定制计划（Tom Lane）\n     </p><p>      过去，预备语句总是只有一个用于所有参数值的<span>“<span>通用</span>”</span>计划，它常常远不如用于包含显式常量值的非预备语句的计划。现在，规划器会尝试为特定参数值生成定制计划。只有当定制计划反复被证明没有收益时，才会使用通用计划。此变更应能消除此前使用预备语句（包括 PL/pgSQL 中的非动态语句）所见的性能损失。\n     </p>", "text": "允许规划器即使在使用预备语句时，也为特定参数值生成定制计划（Tom Lane） 过去，预备语句总是只有一个用于所有参数值的“通用”计划，它常常远不如用于包含显式常量值的非预备语句的计划。现在，规划器会尝试为特定参数值生成定制计划。只有当定制计划反复被证明没有收益时，才会使用通用计划。此变更应能消除此前使用预备语句（包括 PL/pgSQL 中的非动态语句）所见的性能损失。", "title": "允许规划器即使在使用预备语句时，也为特定参数值生成定制计划", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "0c9a7145ff3fadec1ce007c6143677a8e197b5dd904a6eb306fbe608a0cd0877", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e3b4a9884967d4d7", "cves": [], "html": "<p>      改进规划器使用内层索引扫描的嵌套循环的能力（Tom Lane）\n     </p><p>      新的<span>“<span>参数化路径</span>”</span>机制允许内层索引扫描使用来自比扫描高多个连接层级的关系的值。在语义限制（如外连接）限定允许连接顺序的情况下，这可以大幅提升性能。\n     </p>", "text": "改进规划器使用内层索引扫描的嵌套循环的能力（Tom Lane） 新的“参数化路径”机制允许内层索引扫描使用来自比扫描高多个连接层级的关系的值。在语义限制（如外连接）限定允许连接顺序的情况下，这可以大幅提升性能。", "title": "改进规划器使用内层索引扫描的嵌套循环的能力", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "e0542585ebcff6ccaac357f4a35654bf44ba67f38ddf47b84b599d7e572ec0bb", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-110025fe266e778f", "cves": [], "html": "<p>      改进外部数据包装器的规划 <acronym>API</acronym>（Etsuro Fujita、Shigeru Hanada、Tom Lane）\n     </p><p>      包装器现在可以为其表提供多个访问<span>“<span>路径</span>”</span>，使连接规划更加灵活。\n     </p>", "text": "改进外部数据包装器的规划 API（Etsuro Fujita、Shigeru Hanada、Tom Lane） 包装器现在可以为其表提供多个访问“路径”，使连接规划更加灵活。", "title": "改进外部数据包装器的规划 API", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "4fd193b9f59b1b83c111c438d6553742f99378c5aa26971010683f0acdac6672", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d7fac5f4286f1e87", "cves": [], "html": "<p>      识别非表关系的自相矛盾限定子句（Tom Lane）\n     </p><p>      只有当 <a href=\"/docs/9.2/runtime-config-query.html#GUC-CONSTRAINT-EXCLUSION\"><code>constraint_exclusion</code></a> 为 <code>on</code> 时才执行此检查。\n     </p>", "text": "识别非表关系的自相矛盾限定子句（Tom Lane） 只有当 constraint_exclusion 为 on 时才执行此检查。", "title": "识别非表关系的自相矛盾限定子句", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "006ee77d82687de3b63d7eb98a491efb7cfb74e13bad6b7eb7df4f0500b43e88", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-abde6ce521744786", "cves": [], "html": "<p>      允许 <code>indexed_col op ANY(ARRAY[...])</code> 条件用于普通索引扫描和仅索引扫描（Tom Lane）\n     </p><p>      此前这类条件只能用于位图索引扫描。\n     </p>", "text": "允许 indexed_col op ANY(ARRAY[...]) 条件用于普通索引扫描和仅索引扫描（Tom Lane） 此前这类条件只能用于位图索引扫描。", "title": "允许 indexed_col op ANY(ARRAY[...]) 条件用于普通索引扫描和仅索引扫描", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "70db34f7b0d9bb6b4264a9eedc96eff7eba2e2e6fdac0efbc8585f7a6fec9198", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6740d1003a3433e2", "cves": [], "html": "<p>      支持在 <code>boolean</code> 列上使用 <code>MIN</code>/<code>MAX</code> 索引优化（Marti Raudsepp）\n     </p>", "text": "支持在 boolean 列上使用 MIN/MAX 索引优化（Marti Raudsepp）", "title": "支持在 boolean 列上使用 MIN/MAX 索引优化", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "4d61fe2a7e98c8d7743e108359e018a19cf2786da64e8edaa390f3c49dcc20c2", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-34fd505b924fd518", "cves": [], "html": "<p>      在设置行数估计时，把 <code>SELECT</code> 目标列表中的集合返回函数考虑在内（Tom Lane）\n     </p>", "text": "在设置行数估计时，把 SELECT 目标列表中的集合返回函数考虑在内（Tom Lane）", "title": "在设置行数估计时，把 SELECT 目标列表中的集合返回函数考虑在内", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "f2149b8b42c0496ab398d33cf58a3f524ff83c4304a5cfa03921e31bffd90c33", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-306f88ee2dc42ea1", "cves": [], "html": "<p>      修复规划器，使其更可靠地处理含重复列的索引（Tom Lane）\n     </p>", "text": "修复规划器，使其更可靠地处理含重复列的索引（Tom Lane）", "title": "修复规划器，使其更可靠地处理含重复列的索引", "commits": [], "section": "服务器 / 优化器", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "46ac873435d790c378db3f0e408105712d55f38594574cfe4280bb67d63cbb5e", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-2bd496392b7fbb09", "cves": [], "html": "<p>      收集并使用数组的元素频率统计（Alexander Korotkov、Tom Lane）\n     </p><p>      此变更改进了数组 <code>&lt;@</code>、<code>&amp;&amp;</code> 和 <code>@&gt;</code> 操作符（数组包含和重叠）的选择率估计。\n     </p>", "text": "收集并使用数组的元素频率统计（Alexander Korotkov、Tom Lane） 此变更改进了数组 <@、&& 和 @> 操作符（数组包含和重叠）的选择率估计。", "title": "收集并使用数组的元素频率统计", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "652d8cf4840ec49f56e9467d2f561368cf9dcfd46ac1326d2d693c527167e477", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-daa4442f29c8a43f", "cves": [], "html": "<p>      允许为外部表收集统计信息（Etsuro Fujita）\n     </p>", "text": "允许为外部表收集统计信息（Etsuro Fujita）", "title": "允许为外部表收集统计信息", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "12c9b71b3ce991c3f51da399aa807652b8c4b608f3e402d7b6242ebaef5cb147", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-fa0387952758e69d", "cves": [], "html": "<p>      改进使用部分索引的代价估计（Tom Lane）\n     </p>", "text": "改进使用部分索引的代价估计（Tom Lane）", "title": "改进使用部分索引的代价估计", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "3ac3c73a569224c76e38632d4574a118d03b7dac0e01710952450d6ef0a521b3", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-3ab27d76c32cbbe2", "cves": [], "html": "<p>      改进规划器对子查询中引用列使用统计信息的能力（Tom Lane）\n     </p>", "text": "改进规划器对子查询中引用列使用统计信息的能力（Tom Lane）", "title": "改进规划器对子查询中引用列使用统计信息的能力", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "9fa59337558ddf34fbbdd58db98a4f29982bd64d5777974e5088497543b28772", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4d31c5171a308a3c", "cves": [], "html": "<p>      改进对使用 <code>DISTINCT</code> 的子查询的统计估计（Tom Lane）\n     </p>", "text": "改进对使用 DISTINCT 的子查询的统计估计（Tom Lane）", "title": "改进对使用 DISTINCT 的子查询的统计估计", "commits": [], "section": "服务器 / 优化器", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.4", "source_hash": "ee413050e2bd297cc2d455d762ed26cb877c176d06f8532a419b997dbb5d509e", "section_path": ["服务器", "优化器"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a571437ca76c8b46", "cves": [], "html": "<p>      不再把 <a href=\"/docs/9.2/client-authentication.html#AUTH-PG-HBA-CONF\" title=\"19.1. pg_hba.conf 文件\"><code>pg_hba.conf</code></a> 中指定的角色名和 <code>samerole</code> 视为自动包含超级用户（Andrew Dunstan）\n     </p><p>      这使得把 <code>reject</code> 行用于组角色更加容易。\n     </p>", "text": "不再把 pg_hba.conf 中指定的角色名和 samerole 视为自动包含超级用户（Andrew Dunstan） 这使得把 reject 行用于组角色更加容易。", "title": "不再把 pg_hba.conf 中指定的角色名和 samerole 视为自动包含超级用户", "commits": [], "section": "服务器 / 认证", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "b6702a74614db65f332c2c00a30ee1dc785c111e1cdbcbc720694d250f13f859", "section_path": ["服务器", "认证"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-ae3c347c6734bafa", "cves": [], "html": "<p>      调整 <code>pg_hba.conf</code> 处理，使记号解析更一致（Brendan Jurd、Álvaro Herrera）\n     </p>", "text": "调整 pg_hba.conf 处理，使记号解析更一致（Brendan Jurd、Álvaro Herrera）", "title": "调整 pg_hba.conf 处理，使记号解析更一致", "commits": [], "section": "服务器 / 认证", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "42d872f3f2f5dd109bde4e2ce19e0f19af00c662be66cfd1a203158b63604ef7", "section_path": ["服务器", "认证"], "commit_groups": [], "identity_text": "Adjust pg_hba.conf processing to handle token parsing more consistently (Brendan Jurd, Álvaro Herrera)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/036", "db_id": "bba511df005636a1530cfe16e24cd70e", "patch_ids": [], "statement_hash": "0565c56afa38a510bda6c98f6998cbd30cb1cf0d26c7ff303a0f7a86f21a6105", "relations": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-5ab4ffcdb3b1448e", "cves": [], "html": "<p>      不允许空的 <code>pg_hba.conf</code> 文件（Tom Lane）\n     </p><p>      这样做是为了更快地检测配置错误。\n     </p>", "text": "不允许空的 pg_hba.conf 文件（Tom Lane） 这样做是为了更快地检测配置错误。", "title": "不允许空的 pg_hba.conf 文件", "commits": [], "section": "服务器 / 认证", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "ea66512ae22eeb34ed7936a7801bbd7b5295d30d68a0660381dfec9d9a60da78", "section_path": ["服务器", "认证"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-47f96d2e13f2370f", "cves": [], "html": "<p>      让超级用户权限隐含复制权限（Noah Misch）\n     </p><p>      这避免了显式分配此类权限的需要。\n     </p>", "text": "让超级用户权限隐含复制权限（Noah Misch） 这避免了显式分配此类权限的需要。", "title": "让超级用户权限隐含复制权限", "commits": [], "section": "服务器 / 认证", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.5", "source_hash": "393d1b77df5d0f4b78306fef9149b8637c8021ebd9db2fbbebc4c85dad0102b0", "section_path": ["服务器", "认证"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-465ca7cb7dfc225d", "cves": [], "html": "<p>      在后端崩溃时尝试记录当前查询串（Marti Raudsepp）\n     </p>", "text": "在后端崩溃时尝试记录当前查询串（Marti Raudsepp）", "title": "在后端崩溃时尝试记录当前查询串", "commits": [], "section": "服务器 / 监控", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "5914b40879b63250042b1854eed012d106e4ba34e0d64f3119c63788236d123e", "section_path": ["服务器", "监控"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-64c3e023312dfd68", "cves": [], "html": "<p>      让自动清理 I/O 活动的日志更详细（Greg Smith、Noah Misch）\n     </p><p>      此日志由 <a href=\"/docs/9.2/runtime-config-autovacuum.html#GUC-LOG-AUTOVACUUM-MIN-DURATION\"><code>log_autovacuum_min_duration</code></a> 触发。\n     </p>", "text": "让自动清理 I/O 活动的日志更详细（Greg Smith、Noah Misch） 此日志由 log_autovacuum_min_duration 触发。", "title": "让自动清理 I/O 活动的日志更详细", "commits": [], "section": "服务器 / 监控", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "36a27dfbbd6522fb819cfecbcae8e8b07bca6c9280ca158b712011abee2e3cab", "section_path": ["服务器", "监控"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-396aab2f2f7151b4", "cves": [], "html": "<p>      让 <acronym>WAL</acronym> 重放更早报告失败（Fujii Masao）\n     </p><p>      有些情况下，失败直到服务器进入主库模式才被报告。\n     </p>", "text": "让 WAL 重放更早报告失败（Fujii Masao） 有些情况下，失败直到服务器进入主库模式才被报告。", "title": "让 WAL 重放更早报告失败", "commits": [], "section": "服务器 / 监控", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "ca5394c20f5e39231549f0d99deaa1f0ef38470ad14cb37da1d4fd9fc9417242", "section_path": ["服务器", "监控"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-52ae2481bb263958", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-BACKUP\" title=\"9.26.3. 备份控制函数\"><code>pg_xlog_location_diff()</code></a>，简化 WAL 位置比较（Euler Taveira de Oliveira）\n     </p><p>      这对于计算复制延迟很有用。\n     </p>", "text": "新增 pg_xlog_location_diff()，简化 WAL 位置比较（Euler Taveira de Oliveira） 这对于计算复制延迟很有用。", "title": "新增 pg_xlog_location_diff()，简化 WAL 位置比较", "commits": [], "section": "服务器 / 监控", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "807003c51709cd07b34fe80aa6e139ea2ab2f3c03a79c7ac27134ad3d554e083", "section_path": ["服务器", "监控"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c27ccb547a8d8cfc", "cves": [], "html": "<p>      支持在 Windows 上配置事件日志应用名（MauMau、Magnus Hagander）\n     </p><p>      这允许不同实例通过设置 <a href=\"/docs/9.2/runtime-config-logging.html#GUC-EVENT-SOURCE\"><code>event_source</code></a> 服务器参数以不同标识符使用事件日志，其工作方式类似于 <a href=\"/docs/9.2/runtime-config-logging.html#GUC-SYSLOG-IDENT\"><code>syslog_ident</code></a>。\n     </p>", "text": "支持在 Windows 上配置事件日志应用名（MauMau、Magnus Hagander） 这允许不同实例通过设置 event_source 服务器参数以不同标识符使用事件日志，其工作方式类似于 syslog_ident。", "title": "支持在 Windows 上配置事件日志应用名", "commits": [], "section": "服务器 / 监控", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "e843f2669289804c5c3b68e44781e805eda0447f6bb5796899a4fda5ce716862", "section_path": ["服务器", "监控"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c8e772dc1744a7e7", "cves": [], "html": "<p>      把<span>“<span>unexpected EOF</span>”</span>消息改为 <code>DEBUG1</code> 级别，存在未结束事务的情况除外（Magnus Hagander）\n     </p><p>      此变更减少了以不优雅方式关闭数据库连接的应用所造成的日志噪音。\n     </p>", "text": "把“unexpected EOF”消息改为 DEBUG1 级别，存在未结束事务的情况除外（Magnus Hagander） 此变更减少了以不优雅方式关闭数据库连接的应用所造成的日志噪音。", "title": "把“unexpected EOF”消息改为 DEBUG1 级别，存在未结束事务的情况除外", "commits": [], "section": "服务器 / 监控", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.6", "source_hash": "7939b676a8aa85b9d93e850f554d3f9cca12f2b36ead9e6bb04f7245f92aaed2", "section_path": ["服务器", "监控"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7bc344877340c1cb", "cves": [], "html": "<p>      在 <a href=\"/docs/9.2/monitoring-stats.html#PG-STAT-DATABASE-VIEW\" title=\"表 27.4. pg_stat_database 视图\"><code>pg_stat_database</code></a> 系统视图中跟踪临时文件大小和文件数量（Tomas Vondra）\n     </p>", "text": "在 pg_stat_database 系统视图中跟踪临时文件大小和文件数量（Tomas Vondra）", "title": "在 pg_stat_database 系统视图中跟踪临时文件大小和文件数量", "commits": [], "section": "服务器 / 统计视图", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "0bf9ce09d1254294cfa1860a58b833e10b26798e079983f9e4fb91bdb452419a", "section_path": ["服务器", "统计视图"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a999a93870aad94e", "cves": [], "html": "<p>      为 <code>pg_stat_database</code> 系统视图新增死锁计数器（Magnus Hagander）\n     </p>", "text": "为 pg_stat_database 系统视图新增死锁计数器（Magnus Hagander）", "title": "为 pg_stat_database 系统视图新增死锁计数器", "commits": [], "section": "服务器 / 统计视图", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "3b94e58f434de257c1459cdb5a5c8d22dd9f9fb0d0abcd3d1d38fcbd54e4aae0", "section_path": ["服务器", "统计视图"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-016783300b0677db", "cves": [], "html": "<p>      新增服务器参数 <a href=\"/docs/9.2/runtime-config-statistics.html#GUC-TRACK-IO-TIMING\"><code>track_io_timing</code></a>，用于跟踪 I/O 计时（Ants Aasma、Robert Haas）\n     </p>", "text": "新增服务器参数 track_io_timing，用于跟踪 I/O 计时（Ants Aasma、Robert Haas）", "title": "新增服务器参数 track_io_timing，用于跟踪 I/O 计时", "commits": [], "section": "服务器 / 统计视图", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "2adb476a8ef7f1a4f969bfd9b68c0850423f8b339fd5e0a15a774b70101cf4c7", "section_path": ["服务器", "统计视图"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-3a74b5538a2d6f04", "cves": [], "html": "<p>      在 <a href=\"/docs/9.2/monitoring-stats.html#PG-STAT-BGWRITER-VIEW\" title=\"表 27.3. pg_stat_bgwriter 视图\"><code>pg_stat_bgwriter</code></a> 中报告检查点计时信息（Greg Smith、Peter Geoghegan）\n     </p>", "text": "在 pg_stat_bgwriter 中报告检查点计时信息（Greg Smith、Peter Geoghegan）", "title": "在 pg_stat_bgwriter 中报告检查点计时信息", "commits": [], "section": "服务器 / 统计视图", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.7", "source_hash": "27e093e207e9b3bfb151326ff91edba77f259930325431bbad2babdbe9442b53", "section_path": ["服务器", "统计视图"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-deba5c06be3d1c17", "cves": [], "html": "<p>      静默忽略 <a href=\"/docs/9.2/runtime-config-client.html#GUC-SEARCH-PATH\"><code>search_path</code></a> 中指定但不存在的模式（Tom Lane）\n     </p><p>      这使得使用通用路径设置更方便，这类设置可能包含并非在所有数据库中都存在的模式。\n     </p>", "text": "静默忽略 search_path 中指定但不存在的模式（Tom Lane） 这使得使用通用路径设置更方便，这类设置可能包含并非在所有数据库中都存在的模式。", "title": "静默忽略 search_path 中指定但不存在的模式", "commits": [], "section": "服务器 / 服务器设置", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "cf21251545b8d91b1b93a69f808da01ed679be90452d70ffcccba30fb4c51fee", "section_path": ["服务器", "服务器设置"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-42d84ea92926a481", "cves": [], "html": "<p>      允许超级用户按会话设置 <a href=\"/docs/9.2/runtime-config-locks.html#GUC-DEADLOCK-TIMEOUT\"><code>deadlock_timeout</code></a>，而不仅是按集簇（Noah Misch）\n     </p><p>      这允许对很可能卷入死锁的事务降低 <code>deadlock_timeout</code>，从而更快检测到失败。或者，提高该值可以降低会话因死锁而被选中取消的机会。\n     </p>", "text": "允许超级用户按会话设置 deadlock_timeout，而不仅是按集簇（Noah Misch） 这允许对很可能卷入死锁的事务降低 deadlock_timeout，从而更快检测到失败。或者，提高该值可以降低会话因死锁而被选中取消的机会。", "title": "允许超级用户按会话设置 deadlock_timeout，而不仅是按集簇", "commits": [], "section": "服务器 / 服务器设置", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "9b9131e3c9708d8835de0a13e0b41829519612aac6e5646e9beeb6c98492c2af", "section_path": ["服务器", "服务器设置"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-fd413241daa88e0b", "cves": [], "html": "<p>      新增服务器参数 <a href=\"/docs/9.2/runtime-config-resource.html#GUC-TEMP-FILE-LIMIT\"><code>temp_file_limit</code></a>，用于限制每会话的临时文件空间使用（Mark Kirkwood）\n     </p>", "text": "新增服务器参数 temp_file_limit，用于限制每会话的临时文件空间使用（Mark Kirkwood）", "title": "新增服务器参数 temp_file_limit，用于限制每会话的临时文件空间使用", "commits": [], "section": "服务器 / 服务器设置", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "517a9d2f03bdba3797b3e19730d88a92d1f1087d375c7ab30c76d4fa70aedcab", "section_path": ["服务器", "服务器设置"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-91441c9a6a4d37e5", "cves": [], "html": "<p>      允许超级用户在加载相关扩展之前 <code>SET</code> 该扩展的仅超级用户自定义变量（Tom Lane）\n     </p><p>      系统现在会记住 <code>SET</code> 是否由超级用户执行，以便在加载扩展时进行正确的权限检查。\n     </p>", "text": "允许超级用户在加载相关扩展之前 SET 该扩展的仅超级用户自定义变量（Tom Lane） 系统现在会记住 SET 是否由超级用户执行，以便在加载扩展时进行正确的权限检查。", "title": "允许超级用户在加载相关扩展之前 SET 该扩展的仅超级用户自定义变量", "commits": [], "section": "服务器 / 服务器设置", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "75308fcd43cda63d90fab197d537d8fedff854333b3aee97a9354c8e86ba39a6", "section_path": ["服务器", "服务器设置"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-016c1675ecb2943c", "cves": [], "html": "<p>      为 <a href=\"/docs/9.2/app-postmaster.html\" title=\"postmaster\">postmaster</a> 新增 <code>-C</code> 选项，用于查询配置参数（Bruce Momjian）\n     </p><p>      这使 <span>pg_ctl</span> 能更好地处理 <code>PGDATA</code> 或 <code>-D</code> 指向仅配置目录的情况。\n     </p>", "text": "为 postmaster 新增 -C 选项，用于查询配置参数（Bruce Momjian） 这使 pg_ctl 能更好地处理 PGDATA 或 -D 指向仅配置目录的情况。", "title": "为 postmaster 新增 -C 选项，用于查询配置参数", "commits": [], "section": "服务器 / 服务器设置", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "6494b9c2f3022fd5e830c79300ab35933bbc5f086e6ca7c354f51200bb5ebc90", "section_path": ["服务器", "服务器设置"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4ae7876f90ea244f", "cves": [], "html": "<p>      在 <code>CREATE DATABASE</code> 中用隐含值替换空的区域名（Tom Lane）\n     </p><p>      这防止了 <code>pg_database</code>.<code>datcollate</code> 或 <code>datctype</code> 在服务器重启后被不同解释的情况。\n     </p>", "text": "在 CREATE DATABASE 中用隐含值替换空的区域名（Tom Lane） 这防止了 pg_database.datcollate 或 datctype 在服务器重启后被不同解释的情况。", "title": "在 CREATE DATABASE 中用隐含值替换空的区域名", "commits": [], "section": "服务器 / 服务器设置", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.3.8", "source_hash": "33ccf28497858e0872899635e11e6ad352f24bb0e580e2811b83e8e0d9fb0afc", "section_path": ["服务器", "服务器设置"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a8d452d8d130bba9", "cves": [], "html": "<p>      允许报告 <code>postgresql.conf</code> 中的多个错误，而不是只有第一个（Alexey Klyukin、Tom Lane）\n     </p>", "text": "允许报告 postgresql.conf 中的多个错误，而不是只有第一个（Alexey Klyukin、Tom Lane）", "title": "允许报告 postgresql.conf 中的多个错误，而不是只有第一个", "commits": [], "section": "服务器 / 服务器设置 / 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": ["服务器", "服务器设置", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-8cda8358a220457f", "cves": [], "html": "<p>      允许所有会话处理 <code>postgresql.conf</code> 的重新加载，即使某些设置对特定会话无效（Alexey Klyukin）\n     </p><p>      此前，这类会话内无效的值会导致该会话忽略所有设置变更。\n     </p>", "text": "允许所有会话处理 postgresql.conf 的重新加载，即使某些设置对特定会话无效（Alexey Klyukin） 此前，这类会话内无效的值会导致该会话忽略所有设置变更。", "title": "允许所有会话处理 postgresql.conf 的重新加载，即使某些设置对特定会话无效", "commits": [], "section": "服务器 / 服务器设置 / 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": ["服务器", "服务器设置", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e510e71612919489", "cves": [], "html": "<p>      为配置文件新增 <code>include_if_exists</code> 机制（Greg Smith）\n     </p><p>      其工作方式与 <code>include</code> 相同，只是文件缺失时不抛出错误。\n     </p>", "text": "为配置文件新增 include_if_exists 机制（Greg Smith） 其工作方式与 include 相同，只是文件缺失时不抛出错误。", "title": "为配置文件新增 include_if_exists 机制", "commits": [], "section": "服务器 / 服务器设置 / 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": ["服务器", "服务器设置", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d6c6bc60aa37c8fa", "cves": [], "html": "<p>      在 <span>initdb</span> 期间确定服务器时区，并相应地设置 <code>postgresql.conf</code> 中的 <a href=\"/docs/9.2/runtime-config-client.html#GUC-TIMEZONE\"><code>timezone</code></a> 和 <a href=\"/docs/9.2/runtime-config-logging.html#GUC-LOG-TIMEZONE\"><code>log_timezone</code></a> 条目（Tom Lane）\n     </p><p>      这避免了服务器启动期间昂贵的时区探测。\n     </p>", "text": "在 initdb 期间确定服务器时区，并相应地设置 postgresql.conf 中的 timezone 和 log_timezone 条目（Tom Lane） 这避免了服务器启动期间昂贵的时区探测。", "title": "在 initdb 期间确定服务器时区，并相应地设置 postgresql.conf 中的 timezone 和 log_timezone 条目", "commits": [], "section": "服务器 / 服务器设置 / 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": ["服务器", "服务器设置", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-171e9f970c96b09b", "cves": [], "html": "<p>      修复 <a href=\"/docs/9.2/view-pg-settings.html\" title=\"45.64. pg_settings\"><code>pg_settings</code></a>，使其在 Windows 上报告 <code>postgresql.conf</code> 行号（Tom Lane）\n     </p>", "text": "修复 pg_settings，使其在 Windows 上报告 postgresql.conf 行号（Tom Lane）", "title": "修复 pg_settings，使其在 Windows 上报告 postgresql.conf 行号", "commits": [], "section": "服务器 / 服务器设置 / 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": ["服务器", "服务器设置", "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": [], "version": "9.2.0", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-90943e5bf071a1d3", "cves": [], "html": "<p>      允许流复制从库向其他从库转发数据（<a href=\"/docs/9.2/warm-standby.html#CASCADING-REPLICATION\" title=\"25.2.6. 级联复制\"><em>级联复制</em></a>）（Fujii Masao）\n     </p><p>      此前，只有主服务器能向备库服务器提供流复制日志文件。\n     </p>", "text": "允许流复制从库向其他从库转发数据（级联复制）（Fujii Masao） 此前，只有主服务器能向备库服务器提供流复制日志文件。", "title": "允许流复制从库向其他从库转发数据（级联复制）", "commits": [], "section": "复制和恢复", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "7d8424e2df3686845e331314b1c20f1e96220995b0adeead440b868bde8e47ec", "section_path": ["复制和恢复"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d32e609313f1134a", "cves": [], "html": "<p>      为 <a href=\"/docs/9.2/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\"><code>synchronous_commit</code></a> 新增模式 <code>remote_write</code>（Fujii Masao、Simon Riggs）\n     </p><p>      此模式等待备库服务器把事务数据写入其自身的操作系统，但不等待数据被刷到备库的磁盘。\n     </p>", "text": "为 synchronous_commit 新增模式 remote_write（Fujii Masao、Simon Riggs） 此模式等待备库服务器把事务数据写入其自身的操作系统，但不等待数据被刷到备库的磁盘。", "title": "为 synchronous_commit 新增模式 remote_write", "commits": [], "section": "复制和恢复", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "3e48a9c9873a02f6762191e1abf0d9a379e0f55bb51c7b27e100deb5d89ac22c", "section_path": ["复制和恢复"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4159197654ebbffe", "cves": [], "html": "<p>      新增<a href=\"/docs/9.2/app-pgreceivexlog.html\" title=\"pg_receivexlog\"><span>pg_receivexlog</span></a>工具，在 WAL 文件变更写入时就归档，而不是等待 WAL 文件完成（Magnus Hagander）\n     </p>", "text": "新增pg_receivexlog工具，在 WAL 文件变更写入时就归档，而不是等待 WAL 文件完成（Magnus Hagander）", "title": "新增pg_receivexlog工具，在 WAL 文件变更写入时就归档，而不是等待 WAL 文件完成", "commits": [], "section": "复制和恢复", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "5ca289ee854a8f08f671fbe9223762bf1e42682af195c9bb8a4c248fcbd5faa5", "section_path": ["复制和恢复"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-ed1c930a177d59c4", "cves": [], "html": "<p>      允许<a href=\"/docs/9.2/app-pgbasebackup.html\" title=\"pg_basebackup\"><span>pg_basebackup</span></a>从备库服务器做基础备份（Jun Ishizuka、Fujii Masao）\n     </p><p>      此特性允许把制作新基础备份的工作从主库服务器上卸载。\n     </p>", "text": "允许pg_basebackup从备库服务器做基础备份（Jun Ishizuka、Fujii Masao） 此特性允许把制作新基础备份的工作从主库服务器上卸载。", "title": "允许pg_basebackup从备库服务器做基础备份", "commits": [], "section": "复制和恢复", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "2968cd36224c686f7f897d3780c4b2fdb89c8f65d453ea7a5a3da0462d515b14", "section_path": ["复制和恢复"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-dac54e807ef9ef9e", "cves": [], "html": "<p>      允许在 <span>pg_basebackup</span> 执行备份期间流式传输 WAL 文件（Magnus Hagander）\n     </p><p>      这允许在 WAL 文件在主库上被丢弃之前传给备库。\n     </p>", "text": "允许在 pg_basebackup 执行备份期间流式传输 WAL 文件（Magnus Hagander） 这允许在 WAL 文件在主库上被丢弃之前传给备库。", "title": "允许在 pg_basebackup 执行备份期间流式传输 WAL 文件", "commits": [], "section": "复制和恢复", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.4", "source_hash": "16b47bc3775863200297ddbdba3dac62ae9b3fbcace428ef88460894c67cc496", "section_path": ["复制和恢复"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c6d1b42a44f88d0c", "cves": [], "html": "<p>      当客户端断开连接时取消正在运行的查询（Florian Pflug）\n     </p><p>      如果后端在查询期间检测到客户端连接丢失，现在会取消该查询，而不是试图完成它。\n     </p>", "text": "当客户端断开连接时取消正在运行的查询（Florian Pflug） 如果后端在查询期间检测到客户端连接丢失，现在会取消该查询，而不是试图完成它。", "title": "当客户端断开连接时取消正在运行的查询", "commits": [], "section": "查询", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "390b21b60cd07168e01595d2357e6f1bedcf19428ccfbf33bd04fc3fb2fad3fb", "section_path": ["查询"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9219f553f4d1bffd", "cves": [], "html": "<p>      在运行时为行表达式保留列名（Andrew Dunstan、Tom Lane）\n     </p><p>      此变更允许在行值转换为 <code>hstore</code> 或 <code>json</code> 类型时获得更好的结果：结果值的字段现在会具有预期的名称。\n     </p>", "text": "在运行时为行表达式保留列名（Andrew Dunstan、Tom Lane） 此变更允许在行值转换为 hstore 或 json 类型时获得更好的结果：结果值的字段现在会具有预期的名称。", "title": "在运行时为行表达式保留列名", "commits": [], "section": "查询", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "f495bb7f74871bd7a643e5e5355a136e49c6627d3473c8b0ebf4736bfc6988fc", "section_path": ["查询"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-af11f76347727645", "cves": [], "html": "<p>      改进子 <code>SELECT</code> 结果所用的列标签（Marti Raudsepp）\n     </p><p>      此前使用的是通用标签 <code>?column?</code>。\n     </p>", "text": "改进子 SELECT 结果所用的列标签（Marti Raudsepp） 此前使用的是通用标签 ?column?。", "title": "改进子 SELECT 结果所用的列标签", "commits": [], "section": "查询", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "136ce39e9713d4ce9daf148b58082f9e0c9d12a0f6fab4726faa524fcd49c36d", "section_path": ["查询"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-da5bb0df6d3a7890", "cves": [], "html": "<p>      改进确定未知值类型的启发式规则（Tom Lane）\n     </p><p>      \"未知常量可以与使用它的操作符另一侧的值具有相同类型\"这一长期规则，现在在考虑多态操作符时也会应用，而不仅用于简单的操作符匹配。\n     </p>", "text": "改进确定未知值类型的启发式规则（Tom Lane） \"未知常量可以与使用它的操作符另一侧的值具有相同类型\"这一长期规则，现在在考虑多态操作符时也会应用，而不仅用于简单的操作符匹配。", "title": "改进确定未知值类型的启发式规则", "commits": [], "section": "查询", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "a85686815ebe9b50e3d5a4132c719fd4b4450ae2f6c799c80e233ea4936b9c07", "section_path": ["查询"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-2f56d16bcd6be0f7", "cves": [], "html": "<p>      对创建到域类型或从域类型出发的转换发出警告（Robert Haas）\n     </p><p>      这类转换没有任何效果。\n     </p>", "text": "对创建到域类型或从域类型出发的转换发出警告（Robert Haas） 这类转换没有任何效果。", "title": "对创建到域类型或从域类型出发的转换发出警告", "commits": [], "section": "查询", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "a1fa424de4c37ad2bf7d3e2ec27029f13dc0c31a7df26bc815269ece77958940", "section_path": ["查询"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-19fc3ef5df93c509", "cves": [], "html": "<p>      当行违反 <code>CHECK</code> 或 <code>NOT NULL</code> 约束时，把行的内容显示为错误细节（Jan Kundrát）\n     </p><p>      当插入或更新正在处理许多行时，这应能更容易识别哪一行有问题。\n     </p>", "text": "当行违反 CHECK 或 NOT NULL 约束时，把行的内容显示为错误细节（Jan Kundrát） 当插入或更新正在处理许多行时，这应能更容易识别哪一行有问题。", "title": "当行违反 CHECK 或 NOT NULL 约束时，把行的内容显示为错误细节", "commits": [], "section": "查询", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.5", "source_hash": "71440e38d684cf89b1b7f1b8cfff27340439925bd95976f8a461e658678a673d", "section_path": ["查询"], "commit_groups": [], "identity_text": "When a row fails a CHECK or NOT NULL constraint, show the row's contents as error detail (Jan Kundrát) 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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-650e93ab93cff914", "cves": [], "html": "<p>      提供并发 <acronym>DDL</acronym> 期间更可靠的操作（Robert Haas、Noah Misch）\n     </p><p>      此变更增加了锁定，应能消除许多场景下的<span>“<span>cache lookup failed</span>”</span>错误。此外，也不再可能向正被并发删除的模式添加关系——这种场景以前会导致系统目录内容不一致。\n     </p>", "text": "提供并发 DDL 期间更可靠的操作（Robert Haas、Noah Misch） 此变更增加了锁定，应能消除许多场景下的“cache lookup failed”错误。此外，也不再可能向正被并发删除的模式添加关系——这种场景以前会导致系统目录内容不一致。", "title": "提供并发 DDL 期间更可靠的操作", "commits": [], "section": "对象操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "65a755fd54c386179f90ae0b86736e3a059985a4e9bfe9516c7f99201c7eb9fd", "section_path": ["对象操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-dbbece126ac3ef0d", "cves": [], "html": "<p>      为 <a href=\"/docs/9.2/sql-dropindex.html\" title=\"DROP INDEX\"><code>DROP INDEX</code></a> 新增 <code>CONCURRENTLY</code> 选项（Simon Riggs）\n     </p><p>      这允许在不阻塞其他会话的情况下移除索引。\n     </p>", "text": "为 DROP INDEX 新增 CONCURRENTLY 选项（Simon Riggs） 这允许在不阻塞其他会话的情况下移除索引。", "title": "为 DROP INDEX 新增 CONCURRENTLY 选项", "commits": [], "section": "对象操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "1fe5c821f26676ed94bec362df3ba6f22e5326034a1a96273c2a36d086cffcb3", "section_path": ["对象操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d7bcd65da4f43c76", "cves": [], "html": "<p>      允许外部数据包装器具有逐列选项（Shigeru Hanada）\n     </p>", "text": "允许外部数据包装器具有逐列选项（Shigeru Hanada）", "title": "允许外部数据包装器具有逐列选项", "commits": [], "section": "对象操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "bceee72239a93cf482a3547cdb87f0d1cf272dff7403b51edb490d0a1060d9c8", "section_path": ["对象操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4baf21bb22ec2855", "cves": [], "html": "<p>      改进视图定义的漂亮打印（Andrew Dunstan）\n     </p>", "text": "改进视图定义的漂亮打印（Andrew Dunstan）", "title": "改进视图定义的漂亮打印", "commits": [], "section": "对象操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6", "source_hash": "59a191c428435bf6e013f714cdf2035c7e80dcb8c87830ffa1d284154c44cded", "section_path": ["对象操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-ebf6de6534e034f5", "cves": [], "html": "<p>      允许 <a href=\"/docs/9.2/ddl-constraints.html\" title=\"5.3. 约束\"><code>CHECK</code></a> 约束声明为 <code>NOT VALID</code>（Álvaro Herrera）\n     </p><p>      添加 <code>NOT VALID</code> 约束不会导致扫描表以验证现有行满足约束。之后，新添加或更新的行会被检查。规划器在考虑 <code>constraint_exclusion</code> 时会忽略这类约束，因为不能确定所有行都满足约束。\n     </p><p>      新的 <code>ALTER TABLE VALIDATE</code> 命令允许对现有行检查 <code>NOT VALID</code> 约束，之后它们被转换为普通约束。\n     </p>", "text": "允许 CHECK 约束声明为 NOT VALID（Álvaro Herrera） 添加 NOT VALID 约束不会导致扫描表以验证现有行满足约束。之后，新添加或更新的行会被检查。规划器在考虑 constraint_exclusion 时会忽略这类约束，因为不能确定所有行都满足约束。 新的 ALTER TABLE VALIDATE 命令允许对现有行检查 NOT VALID 约束，之后它们被转换为普通约束。", "title": "允许 CHECK 约束声明为 NOT VALID", "commits": [], "section": "对象操作 / 约束", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.3", "source_hash": "2b9d3bbb4cd207d02d8e7743e00dc5b25b56155f758065f36c49fd4b7cff388d", "section_path": ["对象操作", "约束"], "commit_groups": [], "identity_text": "Allow CHECK constraints to be declared NOT VALID (Álvaro 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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-0be1f08f9bacf3f8", "cves": [], "html": "<p>      允许 <code>CHECK</code> 约束声明为 <code>NO INHERIT</code>（Nikhil Sontakke、Alex Hunsaker、Álvaro Herrera）\n     </p><p>      这使它们只在父表上强制执行，而不在子表上。\n     </p>", "text": "允许 CHECK 约束声明为 NO INHERIT（Nikhil Sontakke、Alex Hunsaker、Álvaro Herrera） 这使它们只在父表上强制执行，而不在子表上。", "title": "允许 CHECK 约束声明为 NO INHERIT", "commits": [], "section": "对象操作 / 约束", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.3", "source_hash": "33fbbb1181c0cc9aba7ba6d524e453fbc176b978da6058e3f2c03efe5b60ae0b", "section_path": ["对象操作", "约束"], "commit_groups": [], "identity_text": "Allow CHECK constraints to be declared NO INHERIT (Nikhil Sontakke, Alex Hunsaker, Álvaro 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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e03daecdef5507f8", "cves": [], "html": "<p>      新增<a href=\"/docs/9.2/sql-altertable.html\" title=\"ALTER TABLE\">重命名</a>约束的能力（Peter Eisentraut）\n     </p>", "text": "新增重命名约束的能力（Peter Eisentraut）", "title": "新增重命名约束的能力", "commits": [], "section": "对象操作 / 约束", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.3", "source_hash": "c50c32433b292d9d71dfd493f6cb89da8247d9b9a2e1e9f91f226c3f812df7f8", "section_path": ["对象操作", "约束"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-b7bb4048e1dc2880", "cves": [], "html": "<p>      减少某些 <a href=\"/docs/9.2/sql-altertable.html\" title=\"ALTER TABLE\"><code>ALTER TABLE</code></a> ... <code>ALTER COLUMN TYPE</code> 操作重建表和索引的需要（Noah Misch）\n     </p><p>      增大 <code>varchar</code> 或 <code>varbit</code> 列的长度限制，或者完全移除限制，不再需要重写表。类似地，增大 <code>numeric</code> 列允许的精度，或者把列从受约束的 <code>numeric</code> 改为不受约束的 <code>numeric</code>，也不再需要重写表。在涉及 <code>interval</code>、<code>timestamp</code> 和 <code>timestamptz</code> 类型的类似情况下，也可以避免重写表。\n     </p>", "text": "减少某些 ALTER TABLE ... ALTER COLUMN TYPE 操作重建表和索引的需要（Noah Misch） 增大 varchar 或 varbit 列的长度限制，或者完全移除限制，不再需要重写表。类似地，增大 numeric 列允许的精度，或者把列从受约束的 numeric 改为不受约束的 numeric，也不再需要重写表。在涉及 interval、timestamp 和 timestamptz 类型的类似情况下，也可以避免重写表。", "title": "减少某些 ALTER TABLE ... ALTER COLUMN TYPE 操作重建表和索引的需要", "commits": [], "section": "对象操作 / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "48b46dcfb61a0f4396259cb5b74ef7117bed13462539e00d46ed3fa5b7e4b6ae", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-265d1790500dcb32", "cves": [], "html": "<p>      避免 <a href=\"/docs/9.2/sql-altertable.html\" title=\"ALTER TABLE\"><code>ALTER TABLE</code></a> 在某些不必要的情况下重新验证外键约束（Noah Misch）\n     </p>", "text": "避免 ALTER TABLE 在某些不必要的情况下重新验证外键约束（Noah Misch）", "title": "避免 ALTER TABLE 在某些不必要的情况下重新验证外键约束", "commits": [], "section": "对象操作 / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "620e8421763ed2cb1099c817f9e4ded1bb96b7ff5372a8bb65098b0a13454261", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4d0f031c1877956d", "cves": [], "html": "<p>      为一些 <code>ALTER</code> 命令新增 <code>IF EXISTS</code> 选项（Pavel Stehule）\n     </p><p>      例如 <code>ALTER FOREIGN TABLE IF EXISTS foo RENAME TO bar</code>。\n     </p>", "text": "为一些 ALTER 命令新增 IF EXISTS 选项（Pavel Stehule） 例如 ALTER FOREIGN TABLE IF EXISTS foo RENAME TO bar。", "title": "为一些 ALTER 命令新增 IF EXISTS 选项", "commits": [], "section": "对象操作 / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "d54cac133027e7e924e19649646b78da4f4496bbefcb3e724a82344f5698eb61", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-138d74a05e5ee8f8", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/sql-alterforeigndatawrapper.html\" title=\"ALTER FOREIGN DATA WRAPPER\"><code>ALTER FOREIGN DATA WRAPPER</code></a> ... <code>RENAME</code> 和 <a href=\"/docs/9.2/sql-alterserver.html\" title=\"ALTER SERVER\"><code>ALTER SERVER</code></a> ... <code>RENAME</code>（Peter Eisentraut）\n     </p>", "text": "新增 ALTER FOREIGN DATA WRAPPER ... RENAME 和 ALTER SERVER ... RENAME（Peter Eisentraut）", "title": "新增 ALTER FOREIGN DATA WRAPPER ... RENAME 和 ALTER SERVER ... RENAME", "commits": [], "section": "对象操作 / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "b5d9df70e7667b18889eb34a0cabf799b2dd4aa3cc893b5878f01c2890a92f5f", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c530762485a9aa30", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/sql-alterdomain.html\" title=\"ALTER DOMAIN\"><code>ALTER DOMAIN</code></a> ... <code>RENAME</code>（Peter Eisentraut）\n     </p><p>      此前已可以用 <code>ALTER TYPE</code> 重命名域。\n     </p>", "text": "新增 ALTER DOMAIN ... RENAME（Peter Eisentraut） 此前已可以用 ALTER TYPE 重命名域。", "title": "新增 ALTER DOMAIN ... RENAME", "commits": [], "section": "对象操作 / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "e1cb675efaf59a1d12edce5463f2a9167291a7637f1f0f3adae6e99502e0c2f7", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c3e6e05676553e0e", "cves": [], "html": "<p>      让 <code>ALTER DOMAIN</code> ... <code>DROP CONSTRAINT</code> 在约束不存在时抛出错误（Peter Eisentraut）\n     </p><p>      已新增 <code>IF EXISTS</code> 选项来提供先前的行为。\n     </p>", "text": "让 ALTER DOMAIN ... DROP CONSTRAINT 在约束不存在时抛出错误（Peter Eisentraut） 已新增 IF EXISTS 选项来提供先前的行为。", "title": "让 ALTER DOMAIN ... DROP CONSTRAINT 在约束不存在时抛出错误", "commits": [], "section": "对象操作 / ALTER", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.4", "source_hash": "4c8524925b7bd71467b4214b3597248ff873fc90f43e7712e15c9be6ad1c9790", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-2938964fd1f2aa29", "cves": [], "html": "<p>      允许从外部表、视图和组合类型执行 <code>CREATE TABLE (LIKE ...)</code>（Peter Eisentraut）\n     </p><p>      例如，这允许创建一个模式与某个视图匹配的表。\n     </p>", "text": "允许从外部表、视图和组合类型执行 CREATE TABLE (LIKE ...)（Peter Eisentraut） 例如，这允许创建一个模式与某个视图匹配的表。", "title": "允许从外部表、视图和组合类型执行 CREATE TABLE (LIKE ...)", "commits": [], "section": "对象操作 / CREATE TABLE", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.5", "source_hash": "7d174c446aa603333f78ee81445a7ab3c17ff6d9da83441997723b09f5761581", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d879f5e036f01a3a", "cves": [], "html": "<p>      修复 <code>CREATE TABLE (LIKE ...)</code>，避免复制索引注释时的索引名冲突（Tom Lane）\n     </p>", "text": "修复 CREATE TABLE (LIKE ...)，避免复制索引注释时的索引名冲突（Tom Lane）", "title": "修复 CREATE TABLE (LIKE ...)，避免复制索引注释时的索引名冲突", "commits": [], "section": "对象操作 / CREATE TABLE", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.5", "source_hash": "49b37603986a2c209e70c2fffe28116e5c28e44e17578b14294e95325a13deb9", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-1cd0c68ffc76f237", "cves": [], "html": "<p>      修复 <code>CREATE TABLE</code> ... <code>AS EXECUTE</code>，使其处理 <code>WITH NO DATA</code> 和列名指定（Tom Lane）\n     </p>", "text": "修复 CREATE TABLE ... AS EXECUTE，使其处理 WITH NO DATA 和列名指定（Tom Lane）", "title": "修复 CREATE TABLE ... AS EXECUTE，使其处理 WITH NO DATA 和列名指定", "commits": [], "section": "对象操作 / CREATE TABLE", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.5", "source_hash": "20ccb2a9d5f874334ca32908b1b69bf7e5b61a7ee57108835f64103d461263b6", "section_path": ["对象操作", "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": [], "version": "9.2.0", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a96f8869a1e0678e", "cves": [], "html": "<p>      为视图新增 <a href=\"/docs/9.2/sql-createview.html\" title=\"CREATE VIEW\"><code>security_barrier</code></a> 选项（KaiGai Kohei、Robert Haas）\n     </p><p>      此选项防止可能向用户暴露视图保护数据的优化，例如把涉及不安全函数的子句下推到视图的 <code>WHERE</code> 子句。这类视图的性能预计会比普通视图差。\n     </p>", "text": "为视图新增 security_barrier 选项（KaiGai Kohei、Robert Haas） 此选项防止可能向用户暴露视图保护数据的优化，例如把涉及不安全函数的子句下推到视图的 WHERE 子句。这类视图的性能预计会比普通视图差。", "title": "为视图新增 security_barrier 选项", "commits": [], "section": "对象操作 / 对象权限", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "c5bcb59b943281697ceb795018db99db554f3dd183654f2195cbc428f70014b9", "section_path": ["对象操作", "对象权限"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-770fb98c1144eb78", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/sql-createfunction.html\" title=\"CREATE FUNCTION\"><code>LEAKPROOF</code></a> 函数属性，用于标记可以安全下推到 <code>security_barrier</code> 视图的函数（KaiGai Kohei）\n     </p>", "text": "新增 LEAKPROOF 函数属性，用于标记可以安全下推到 security_barrier 视图的函数（KaiGai Kohei）", "title": "新增 LEAKPROOF 函数属性，用于标记可以安全下推到 security_barrier 视图的函数", "commits": [], "section": "对象操作 / 对象权限", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "53ed3fdf8071085ef696be21367a06fc44481144b95db494b2ba1760bcc712d0", "section_path": ["对象操作", "对象权限"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-de1a73a1b70b289b", "cves": [], "html": "<p>      新增对数据类型权限的支持（Peter Eisentraut）\n     </p><p>      这新增了对类型和域上符合 <acronym>SQL</acronym> 标准的 <code>USAGE</code> 权限的支持。其意图是能够限制哪些用户可以在类型上创建依赖，因为这类依赖会限制所有者更改类型的能力。\n     </p>", "text": "新增对数据类型权限的支持（Peter Eisentraut） 这新增了对类型和域上符合 SQL 标准的 USAGE 权限的支持。其意图是能够限制哪些用户可以在类型上创建依赖，因为这类依赖会限制所有者更改类型的能力。", "title": "新增对数据类型权限的支持", "commits": [], "section": "对象操作 / 对象权限", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "cb9d63648f12fa70e571d787681bcaa4e3fa182640820aa56857c45eaf1aefe8", "section_path": ["对象操作", "对象权限"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-15295e894fd566bd", "cves": [], "html": "<p>      在 <code>SELECT INTO</code> / <code>CREATE TABLE AS</code> 中检查 <code>INSERT</code> 权限（KaiGai Kohei）\n     </p><p>      由于对象是由 <code>SELECT INTO</code> 或 <code>CREATE TABLE AS</code> 创建的，创建者通常应拥有插入权限；但存在一些例外情况，例如 <code>ALTER DEFAULT PRIVILEGES</code> 移除了这类权限时。\n     </p>", "text": "在 SELECT INTO / CREATE TABLE AS 中检查 INSERT 权限（KaiGai Kohei） 由于对象是由 SELECT INTO 或 CREATE TABLE AS 创建的，创建者通常应拥有插入权限；但存在一些例外情况，例如 ALTER DEFAULT PRIVILEGES 移除了这类权限时。", "title": "在 SELECT INTO / CREATE TABLE AS 中检查 INSERT 权限", "commits": [], "section": "对象操作 / 对象权限", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.6.6", "source_hash": "2b32cdfebc5c9f9e7d8cd726b73569ce75dc555c6e68c70484251bd7656f84dd", "section_path": ["对象操作", "对象权限"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-8968fd65d992442d", "cves": [], "html": "<p>      允许 <a href=\"/docs/9.2/sql-vacuum.html\" title=\"VACUUM\"><code>VACUUM</code></a> 更容易地跳过无法锁定的页面（Simon Riggs、Robert Haas）\n     </p><p>      此变更应能大幅减少 <code>VACUUM</code> 因等待其他会话而<span>“<span>卡住</span>”</span>的情况。\n     </p>", "text": "允许 VACUUM 更容易地跳过无法锁定的页面（Simon Riggs、Robert Haas） 此变更应能大幅减少 VACUUM 因等待其他会话而“卡住”的情况。", "title": "允许 VACUUM 更容易地跳过无法锁定的页面", "commits": [], "section": "工具操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "5a73c99b293d49d781b08126bbe33603d148bee1ca56d9b843dd6be36d4ec28d", "section_path": ["工具操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-f1cd3d17985bb495", "cves": [], "html": "<p>      让 <a href=\"/docs/9.2/sql-explain.html\" title=\"EXPLAIN\"><code>EXPLAIN</code></a> <code>(BUFFERS)</code> 统计被弄脏和写出的块（Robert Haas）\n     </p>", "text": "让 EXPLAIN (BUFFERS) 统计被弄脏和写出的块（Robert Haas）", "title": "让 EXPLAIN (BUFFERS) 统计被弄脏和写出的块", "commits": [], "section": "工具操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "150dba7be8b7e32b0f566290fe899c103061c99a0b7faa4cc7e366494aad825b", "section_path": ["工具操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4526fa986daf7183", "cves": [], "html": "<p>      让 <code>EXPLAIN ANALYZE</code> 报告被过滤步骤拒绝的行数（Marko Tiikkaja）\n     </p>", "text": "让 EXPLAIN ANALYZE 报告被过滤步骤拒绝的行数（Marko Tiikkaja）", "title": "让 EXPLAIN ANALYZE 报告被过滤步骤拒绝的行数", "commits": [], "section": "工具操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "fd0dd15eba3828cc5b399ca3d9fea5a9e2dd8292f0d6bb95cf0f0c14ec2ea31b", "section_path": ["工具操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-90daab2dcd82e33e", "cves": [], "html": "<p>      允许 <code>EXPLAIN ANALYZE</code> 在不需要时间值时避免计时开销（Tomas Vondra）\n     </p><p>      这通过把新的 <code>TIMING</code> 选项设为 <code>FALSE</code> 实现。\n     </p>", "text": "允许 EXPLAIN ANALYZE 在不需要时间值时避免计时开销（Tomas Vondra） 这通过把新的 TIMING 选项设为 FALSE 实现。", "title": "允许 EXPLAIN ANALYZE 在不需要时间值时避免计时开销", "commits": [], "section": "工具操作", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.7", "source_hash": "9b5f545e9e4a040d9c0931d6116a09869a9d9c73535f9946220b4a7c1c94c832", "section_path": ["工具操作"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7f70735bbd76f529", "cves": [], "html": "<p>      新增对<a href=\"/docs/9.2/rangetypes.html\" title=\"8.16. 范围类型\">范围数据类型</a>的支持（Jeff Davis、Tom Lane、Alexander Korotkov）\n     </p><p>      范围数据类型存储属于其基础类型的下界和上界。它支持包含、重叠和交集等操作。\n     </p>", "text": "新增对范围数据类型的支持（Jeff Davis、Tom Lane、Alexander Korotkov） 范围数据类型存储属于其基础类型的下界和上界。它支持包含、重叠和交集等操作。", "title": "新增对范围数据类型的支持", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "ee7af61a49407a4ad7dc6f932d41808dacbc685d923dda9c1eb15665d532d176", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e5ae1cd4f9f8eea0", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/datatype-json.html\" title=\"8.17. JSON 类型\"><code>JSON</code></a> 数据类型（Robert Haas）\n     </p><p>      该类型存储经过正确验证的 <acronym>JSON</acronym>（JavaScript 对象表示法）数据。\n     </p>", "text": "新增 JSON 数据类型（Robert Haas） 该类型存储经过正确验证的 JSON（JavaScript 对象表示法）数据。", "title": "新增 JSON 数据类型", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "4e420ec0e7d03d01c1255afab45df662551525d6ad3059d94fac2432592a0a40", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-04be29419dcbb253", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/functions-json.html\" title=\"9.15. JSON 函数\"><code>array_to_json()</code></a> 和 <code>row_to_json()</code>（Andrew Dunstan）\n     </p>", "text": "新增 array_to_json() 和 row_to_json()（Andrew Dunstan）", "title": "新增 array_to_json() 和 row_to_json()", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "67cc8db9a60f1685301b8df89a29ed4c61b68de52e238f97c2eaa06186112d61", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d7a5601685089ec0", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/datatype.html#DATATYPE-SERIAL\" title=\"8.1.4. serial 类型\"><code>SMALLSERIAL</code></a> 数据类型（Mike Pultz）\n     </p><p>      它类似于 <code>SERIAL</code>，只是把序列存储在两字节整数列（<code>int2</code>）中。\n     </p>", "text": "新增 SMALLSERIAL 数据类型（Mike Pultz） 它类似于 SERIAL，只是把序列存储在两字节整数列（int2）中。", "title": "新增 SMALLSERIAL 数据类型", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "4d43cd4d77ee45542478e622592f729d7353fd699640504cf6ed8ce2a282ff7f", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-724b5bcfbe2294a3", "cves": [], "html": "<p>      允许<a href=\"/docs/9.2/sql-createdomain.html\" title=\"CREATE DOMAIN\">域</a>声明为 <code>NOT VALID</code>（Álvaro Herrera）\n     </p><p>      此选项可以在创建域时设置，或者通过 <code>ALTER DOMAIN</code> ... <code>ADD CONSTRAINT</code> ... <code>NOT VALID</code> 设置。<code>ALTER DOMAIN</code> ... <code>VALIDATE CONSTRAINT</code> 会完全验证约束。\n     </p>", "text": "允许域声明为 NOT VALID（Álvaro Herrera） 此选项可以在创建域时设置，或者通过 ALTER DOMAIN ... ADD CONSTRAINT ... NOT VALID 设置。ALTER DOMAIN ... VALIDATE CONSTRAINT 会完全验证约束。", "title": "允许域声明为 NOT VALID", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "d455e06cf5321ebd666c212a82e8892ec67c4e763d177a2d11c9456e55a095b0", "section_path": ["数据类型"], "commit_groups": [], "identity_text": "Allow domains to be declared NOT VALID (Álvaro 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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-75a6aa9b84de381c", "cves": [], "html": "<p>      为 <a href=\"/docs/9.2/datatype-money.html\" title=\"8.2. 货币类型\"><code>money</code></a> 数据类型支持更多区域特定的格式化选项（Tom Lane）\n     </p><p>      具体而言，遵循 POSIX 中关于货币输出中值、符号和货币符号顺序的所有选项。此外，确保千位分隔符只插入在小数点左侧，这是 POSIX 的要求。\n     </p>", "text": "为 money 数据类型支持更多区域特定的格式化选项（Tom Lane） 具体而言，遵循 POSIX 中关于货币输出中值、符号和货币符号顺序的所有选项。此外，确保千位分隔符只插入在小数点左侧，这是 POSIX 的要求。", "title": "为 money 数据类型支持更多区域特定的格式化选项", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "acf2e604efe2cb9e10ec287f465d4e98c9607ab5e18a40586329c281809f3cc0", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a1796bb62dd8871a", "cves": [], "html": "<p>      为 <code>macaddr</code> 数据类型新增按位<span>“<span>与</span>”</span>、<span>“<span>或</span>”</span>和<span>“<span>非</span>”</span>操作符（Brendan Jurd）\n     </p>", "text": "为 macaddr 数据类型新增按位“与”、“或”和“非”操作符（Brendan Jurd）", "title": "为 macaddr 数据类型新增按位“与”、“或”和“非”操作符", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "2fa102351b630ecb414d22ddf45c4ed3b00d8739f66fad9dbddfc14180447e78", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-310cdd1cb241b4e0", "cves": [], "html": "<p>      允许 <a href=\"/docs/9.2/functions-xml.html#FUNCTIONS-XML-PROCESSING\" title=\"9.14.3. 处理 XML\"><code>xpath()</code></a> 在给定标量值时返回单元素 <acronym>XML</acronym> 数组（Florian Pflug）\n     </p><p>      此前它返回空数组。此变更还会使 <code>xpath_exists()</code> 对这类表达式返回真而不是假。\n     </p>", "text": "允许 xpath() 在给定标量值时返回单元素 XML 数组（Florian Pflug） 此前它返回空数组。此变更还会使 xpath_exists() 对这类表达式返回真而不是假。", "title": "允许 xpath() 在给定标量值时返回单元素 XML 数组", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "b6c0268905021aa1a89b62259bf44ed14bb537ba930828cd7c79662653cfcd1b", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c9dd762e5d0ad953", "cves": [], "html": "<p>      改进 <acronym>XML</acronym> 错误处理的健壮性（Florian Pflug）\n     </p>", "text": "改进 XML 错误处理的健壮性（Florian Pflug）", "title": "改进 XML 错误处理的健壮性", "commits": [], "section": "数据类型", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.8", "source_hash": "108d3ea48a3b7fd52cbc500b134eade6ce1882b9515c1977fc76c88fab29982a", "section_path": ["数据类型"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-f908a633e63b9b2c", "cves": [], "html": "<p>      允许非超级用户对属于同一用户的其他会话使用 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-SIGNAL\" title=\"9.26.2. 服务器信号函数\"><code>pg_cancel_backend()</code></a> 和 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-SIGNAL\" title=\"9.26.2. 服务器信号函数\"><code>pg_terminate_backend()</code></a>（Magnus Hagander、Josh Kupershmidt、Dan Farina）\n     </p><p>      此前只有超级用户可以使用这些函数。\n     </p>", "text": "允许非超级用户对属于同一用户的其他会话使用 pg_cancel_backend() 和 pg_terminate_backend()（Magnus Hagander、Josh Kupershmidt、Dan Farina） 此前只有超级用户可以使用这些函数。", "title": "允许非超级用户对属于同一用户的其他会话使用 pg_cancel_backend() 和 pg_terminate_backend()", "commits": [], "section": "函数", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "85755d92c65a7461d4d67c7e5bb6fd8b2c54cbf6e8b11013da7047056acf655c", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6041c6ac608dad64", "cves": [], "html": "<p>      允许导入和导出事务快照（Joachim Wieland、Tom Lane）\n     </p><p>      这允许多个事务共享相同的数据库状态视图。快照通过 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-SNAPSHOT-SYNCHRONIZATION\" title=\"9.26.5. 快照同步函数\"><code>pg_export_snapshot()</code></a> 导出，并通过 <a href=\"/docs/9.2/sql-set-transaction.html\" title=\"SET TRANSACTION\"><code>SET TRANSACTION SNAPSHOT</code></a> 导入。只能导入来自当前正在运行的事务的快照。\n     </p>", "text": "允许导入和导出事务快照（Joachim Wieland、Tom Lane） 这允许多个事务共享相同的数据库状态视图。快照通过 pg_export_snapshot() 导出，并通过 SET TRANSACTION SNAPSHOT 导入。只能导入来自当前正在运行的事务的快照。", "title": "允许导入和导出事务快照", "commits": [], "section": "函数", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "7653a110078fdcda4fb3da682a7fee329608e0d40773a6023e7c9d21baba4031", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-714522d62713ff2e", "cves": [], "html": "<p>      支持对表达式使用 <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-CATALOG-TABLE\" title=\"表 9.54. 系统目录信息函数\"><code>COLLATION FOR</code></a>（Peter Eisentraut）\n     </p><p>      它返回一个表示该表达式排序规则的字符串。\n     </p>", "text": "支持对表达式使用 COLLATION FOR（Peter Eisentraut） 它返回一个表示该表达式排序规则的字符串。", "title": "支持对表达式使用 COLLATION FOR", "commits": [], "section": "函数", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "18366fc5a1997829ebd9114863ed64e8eb3ecb2afe277b0fb747cd937fc771f3", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-5500343fc50587cc", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-SCHEMA-TABLE\" title=\"表 9.53. 模式可见性查询函数\"><code>pg_opfamily_is_visible()</code></a>（Josh Kupershmidt）\n     </p>", "text": "新增 pg_opfamily_is_visible()（Josh Kupershmidt）", "title": "新增 pg_opfamily_is_visible()", "commits": [], "section": "函数", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "8e933192e77fc14966fb7ac2106621674cfc948001ba20c605b1acd55375afc7", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-80e69129a4ca020a", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/functions-admin.html#FUNCTIONS-ADMIN-DBSIZE\" title=\"表 9.64. 数据库对象尺寸函数\"><code>pg_size_pretty()</code></a> 的 <code>numeric</code> 变体，供 <code>pg_xlog_location_diff()</code> 使用（Fujii Masao）\n     </p>", "text": "新增 pg_size_pretty() 的 numeric 变体，供 pg_xlog_location_diff() 使用（Fujii Masao）", "title": "新增 pg_size_pretty() 的 numeric 变体，供 pg_xlog_location_diff() 使用", "commits": [], "section": "函数", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "8924cc46025e0f417a485d5bc492b791bc66465de8b13b2de890238c348e7c4b", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e2bb10a5c90f4789", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/functions-info.html#FUNCTIONS-INFO-SESSION-TABLE\" title=\"表 9.51. 会话信息函数\"><code>pg_trigger_depth()</code></a> 函数（Kevin Grittner）\n     </p><p>      它报告当前触发器调用深度。\n     </p>", "text": "新增 pg_trigger_depth() 函数（Kevin Grittner） 它报告当前触发器调用深度。", "title": "新增 pg_trigger_depth() 函数", "commits": [], "section": "函数", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "0c63770f12facc771e269f3305bc5e9b41725afb6fde9ea6333038e9de653dee", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-13a37b31010f53fb", "cves": [], "html": "<p>      允许 <a href=\"/docs/9.2/functions-aggregate.html#FUNCTIONS-AGGREGATE-TABLE\" title=\"表 9.46. 通用聚合函数\"><code>string_agg()</code></a> 处理 <code>bytea</code> 值（Pavel Stehule）\n     </p>", "text": "允许 string_agg() 处理 bytea 值（Pavel Stehule）", "title": "允许 string_agg() 处理 bytea 值", "commits": [], "section": "函数", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "f786f0f0c4c40a84d87e3e96c4d89e0ead4148683259702f042a8373e72d97ea", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-895bf6d1db8d12c2", "cves": [], "html": "<p>      修复反向引用出现在更大的带量词子表达式中的正则表达式（Tom Lane）\n     </p><p>      例如 <code>^(\\w+)( \\1)+$</code>。以前的版本不检查反向引用是否真的与第一次出现匹配。\n     </p>", "text": "修复反向引用出现在更大的带量词子表达式中的正则表达式（Tom Lane） 例如 ^(\\w+)( \\1)+$。以前的版本不检查反向引用是否真的与第一次出现匹配。", "title": "修复反向引用出现在更大的带量词子表达式中的正则表达式", "commits": [], "section": "函数", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.9", "source_hash": "ffd79a149ed13457c0ebd9915659712f8cf50d05d994448eae979cf5b439e536", "section_path": ["函数"], "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": [], "version": "9.2.0", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-597f23b9a4eadd3d", "cves": [], "html": "<p>      新增信息模式视图 <code>role_udt_grants</code>、<code>udt_privileges</code> 和 <code>user_defined_types</code>（Peter Eisentraut）\n     </p>", "text": "新增信息模式视图 role_udt_grants、udt_privileges 和 user_defined_types（Peter Eisentraut）", "title": "新增信息模式视图 role_udt_grants、udt_privileges 和 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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6848b9df677e75d6", "cves": [], "html": "<p>      为信息模式 <code>element_types</code> 视图新增组合类型属性（Peter Eisentraut）\n     </p>", "text": "为信息模式 element_types 视图新增组合类型属性（Peter Eisentraut）", "title": "为信息模式 element_types 视图新增组合类型属性", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a59d7507ee2aeda0", "cves": [], "html": "<p>      在信息模式中实现 <code>interval_type</code> 列（Peter Eisentraut）\n     </p><p>      此前这些列读取为空值。\n     </p>", "text": "在信息模式中实现 interval_type 列（Peter Eisentraut） 此前这些列读取为空值。", "title": "在信息模式中实现 interval_type 列", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7c06bd1f275617db", "cves": [], "html": "<p>      在信息模式 <code>attributes</code>、<code>columns</code>、<code>domains</code> 和 <code>element_types</code> 视图中实现排序规则相关列（Peter Eisentraut）\n     </p>", "text": "在信息模式 attributes、columns、domains 和 element_types 视图中实现排序规则相关列（Peter Eisentraut）", "title": "在信息模式 attributes、columns、domains 和 element_types 视图中实现排序规则相关列", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6c156236569f4f03", "cves": [], "html": "<p>      在信息模式 <code>table_privileges</code> 视图中实现 <code>with_hierarchy</code> 列（Peter Eisentraut）\n     </p>", "text": "在信息模式 table_privileges 视图中实现 with_hierarchy 列（Peter Eisentraut）", "title": "在信息模式 table_privileges 视图中实现 with_hierarchy 列", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-8b447d7f6bec0ab8", "cves": [], "html": "<p>      在信息模式中新增序列 <code>USAGE</code> 权限的显示（Peter Eisentraut）\n     </p>", "text": "在信息模式中新增序列 USAGE 权限的显示（Peter Eisentraut）", "title": "在信息模式中新增序列 USAGE 权限的显示", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a00a862993a56f90", "cves": [], "html": "<p>      让信息模式显示默认权限（Peter Eisentraut）\n     </p><p>      此前，非空的默认权限没有在视图中表示。\n     </p>", "text": "让信息模式显示默认权限（Peter Eisentraut） 此前，非空的默认权限没有在视图中表示。", "title": "让信息模式显示默认权限", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-03378bf57106b3ea", "cves": [], "html": "<p>      允许 PL/pgSQL 的 <code>OPEN</code> 游标命令按名称提供参数（Yeb Havinga）\n     </p>", "text": "允许 PL/pgSQL 的 OPEN 游标命令按名称提供参数（Yeb Havinga）", "title": "允许 PL/pgSQL 的 OPEN 游标命令按名称提供参数", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a25a912af6103494", "cves": [], "html": "<p>      新增 PL/pgSQL 命令 <code>GET STACKED DIAGNOSTICS</code>，用于获取异常信息（Pavel Stehule）\n     </p>", "text": "新增 PL/pgSQL 命令 GET STACKED DIAGNOSTICS，用于获取异常信息（Pavel Stehule）", "title": "新增 PL/pgSQL 命令 GET STACKED DIAGNOSTICS，用于获取异常信息", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-b1cd54e1e97056dd", "cves": [], "html": "<p>      通过缓存类型信息加速 PL/pgSQL 数组赋值（Pavel Stehule）\n     </p>", "text": "通过缓存类型信息加速 PL/pgSQL 数组赋值（Pavel Stehule）", "title": "通过缓存类型信息加速 PL/pgSQL 数组赋值", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-1eb1e7e9f6bb5cc9", "cves": [], "html": "<p>      改进长链 <code>ELSIF</code> 子句的性能和内存消耗（Tom Lane）\n     </p>", "text": "改进长链 ELSIF 子句的性能和内存消耗（Tom Lane）", "title": "改进长链 ELSIF 子句的性能和内存消耗", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a496652c2d602c42", "cves": [], "html": "<p>      让 PL/pgSQL 错误消息输出函数签名而不仅是名称（Pavel Stehule）\n     </p>", "text": "让 PL/pgSQL 错误消息输出函数签名而不仅是名称（Pavel Stehule）", "title": "让 PL/pgSQL 错误消息输出函数签名而不仅是名称", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4375407314ec5eb7", "cves": [], "html": "<p>      新增 PL/Python 的 <acronym>SPI</acronym> 游标支持（Jan Urbanski）\n     </p><p>      这允许 PL/Python 读取部分结果集。\n     </p>", "text": "新增 PL/Python 的 SPI 游标支持（Jan Urbanski） 这允许 PL/Python 读取部分结果集。", "title": "新增 PL/Python 的 SPI 游标支持", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d44df0e544f16bc9", "cves": [], "html": "<p>      为 PL/Python 新增结果元数据函数（Peter Eisentraut）\n     </p><p>      具体而言，这新增了结果对象函数 <code>.colnames</code>、<code>.coltypes</code> 和 <code>.coltypmods</code>。\n     </p>", "text": "为 PL/Python 新增结果元数据函数（Peter Eisentraut） 具体而言，这新增了结果对象函数 .colnames、.coltypes 和 .coltypmods。", "title": "为 PL/Python 新增结果元数据函数", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-3b24d05eca17f8d5", "cves": [], "html": "<p>      移除对 Python 2.2 的支持（Peter Eisentraut）\n     </p>", "text": "移除对 Python 2.2 的支持（Peter Eisentraut）", "title": "移除对 Python 2.2 的支持", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-2d238d498a9c43a7", "cves": [], "html": "<p>      允许 <acronym>SQL</acronym> 语言函数按名称引用参数（Matthew Draper）\n     </p><p>      要使用此特性，只需为函数参数命名，然后在 <acronym>SQL</acronym> 函数体中引用参数名。\n     </p>", "text": "允许 SQL 语言函数按名称引用参数（Matthew Draper） 要使用此特性，只需为函数参数命名，然后在 SQL 函数体中引用参数名。", "title": "允许 SQL 语言函数按名称引用参数", "commits": [], "section": "服务器端语言 / 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": ["服务器端语言", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-5a8613e62158cac9", "cves": [], "html": "<p>      为<a href=\"/docs/9.2/app-initdb.html\" title=\"initdb\"><span>initdb</span></a>新增选项 <code>--auth-local</code> 和 <code>--auth-host</code>（Peter Eisentraut）\n     </p><p>      这允许分别控制 <code>pg_hba.conf</code> 中 <code>local</code> 和 <code>host</code> 的认证设置。<code>--auth</code> 仍然同时控制两者。\n     </p>", "text": "为initdb新增选项 --auth-local 和 --auth-host（Peter Eisentraut） 这允许分别控制 pg_hba.conf 中 local 和 host 的认证设置。--auth 仍然同时控制两者。", "title": "为initdb新增选项 --auth-local 和 --auth-host", "commits": [], "section": "客户端应用程序", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "0a3f56e07df1c319b5f32a98fb77e5ea3a7d00e412b0de41294a2ccbc7e7f824", "section_path": ["客户端应用程序"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-f03212bce5c63f56", "cves": [], "html": "<p>      为<a href=\"/docs/9.2/app-createuser.html\" title=\"createuser\"><span>createuser</span></a>新增 <code>--replication</code>/<code>--no-replication</code> 标志，用于控制复制权限（Fujii Masao）\n     </p>", "text": "为createuser新增 --replication/--no-replication 标志，用于控制复制权限（Fujii Masao）", "title": "为createuser新增 --replication/--no-replication 标志，用于控制复制权限", "commits": [], "section": "客户端应用程序", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "4a2f5bb2ae44d516d17bffe16f0bbf3dc5b2a9e5211521174438c3508e3675dc", "section_path": ["客户端应用程序"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-857b6630a91e3557", "cves": [], "html": "<p>      为<a href=\"/docs/9.2/app-dropdb.html\" title=\"dropdb\"><span>dropdb</span></a>和<a href=\"/docs/9.2/app-dropuser.html\" title=\"dropuser\"><span>dropuser</span></a>新增 <code>--if-exists</code> 选项（Josh Kupershmidt）\n     </p>", "text": "为dropdb和dropuser新增 --if-exists 选项（Josh Kupershmidt）", "title": "为dropdb和dropuser新增 --if-exists 选项", "commits": [], "section": "客户端应用程序", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "6ee35983887fcdf579513d42f80c4a26b6a0d228e0cace4ab86dee1d7efbe5d4", "section_path": ["客户端应用程序"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d48f87562ce58239", "cves": [], "html": "<p>      使命令行工具能够指定要连接的数据库名，并在连接 <code>postgres</code> 数据库失败时回退到 <code>template1</code>（Robert Haas）\n     </p>", "text": "使命令行工具能够指定要连接的数据库名，并在连接 postgres 数据库失败时回退到 template1（Robert Haas）", "title": "使命令行工具能够指定要连接的数据库名，并在连接 postgres 数据库失败时回退到 template1", "commits": [], "section": "客户端应用程序", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12", "source_hash": "55b0c54508c52618441e5af54a9445d127d427335df4582bf40a88f4e454dcd9", "section_path": ["客户端应用程序"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-0b891beccf2d444c", "cves": [], "html": "<p>      新增根据显示宽度自动扩展输出的显示模式（Peter Eisentraut）\n     </p><p>      这为 <code>\\x</code> 命令新增了 <code>auto</code> 选项，当普通输出会比屏幕更宽时切换到扩展模式。\n     </p>", "text": "新增根据显示宽度自动扩展输出的显示模式（Peter Eisentraut） 这为 \\x 命令新增了 auto 选项，当普通输出会比屏幕更宽时切换到扩展模式。", "title": "新增根据显示宽度自动扩展输出的显示模式", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "b071907bac6feab539cee6e01732345a35f9ab7be0a22f37509d1ba26293c653", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d932f8adc1713a41", "cves": [], "html": "<p>      允许包含相对于调用文件所在目录命名的脚本文件（Gurjeet Singh）\n     </p><p>      这通过新命令 <code>\\ir</code> 实现。\n     </p>", "text": "允许包含相对于调用文件所在目录命名的脚本文件（Gurjeet Singh） 这通过新命令 \\ir 实现。", "title": "允许包含相对于调用文件所在目录命名的脚本文件", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "b48683a06799d0ac53a2edebe09efe33972fbae76d4a7b72623ce8c30eef8a20", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-b76571c61aad9659", "cves": [], "html": "<p>      支持 <span>psql</span> 变量名中的非 <acronym>ASCII</acronym> 字符（Tom Lane）\n     </p>", "text": "支持 psql 变量名中的非 ASCII 字符（Tom Lane）", "title": "支持 psql 变量名中的非 ASCII 字符", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "6813da9f7a2b5ab153feb8001a8bd80e3e628efb4b89cd11a20b720864d38194", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c6e1a3e38ccadb95", "cves": [], "html": "<p>      新增对特定大版本的 <code>.psqlrc</code> 文件的支持（Bruce Momjian）\n     </p><p> <span>psql</span> 此前已支持特定小版本的 <code>.psqlrc</code> 文件。\n     </p>", "text": "新增对特定大版本的 .psqlrc 文件的支持（Bruce Momjian） psql 此前已支持特定小版本的 .psqlrc 文件。", "title": "新增对特定大版本的 .psqlrc 文件的支持", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "4fff17d864f0d5b3d25d27184eb50a1acffe02000043a34c60531242bdc9e59a", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-78c32243741e038a", "cves": [], "html": "<p>      提供用环境变量覆盖 <span>psql</span> 历史和启动文件位置的能力（Andrew Dunstan）\n     </p><p>      如果设置了 <code>PSQL_HISTORY</code> 和 <code>PSQLRC</code>，现在将由它们决定这些文件名。\n     </p>", "text": "提供用环境变量覆盖 psql 历史和启动文件位置的能力（Andrew Dunstan） 如果设置了 PSQL_HISTORY 和 PSQLRC，现在将由它们决定这些文件名。", "title": "提供用环境变量覆盖 psql 历史和启动文件位置的能力", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "2f71b05e72266d46f56cba98317aa9bbc12da422f0b8b9fdc8416eb18350bfff", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a85d7919fdf907f4", "cves": [], "html": "<p>      新增 <code>\\setenv</code> 命令，用于修改传递给子进程的环境变量（Andrew Dunstan）\n     </p>", "text": "新增 \\setenv 命令，用于修改传递给子进程的环境变量（Andrew Dunstan）", "title": "新增 \\setenv 命令，用于修改传递给子进程的环境变量", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "5745a9806b02b95f1efb50faab01f7f9d35c258ca5f8004219cb7e8f30acf980", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-b26b1bd97fe631f1", "cves": [], "html": "<p>      让 <span>psql</span> 的临时编辑器文件使用 <code>.sql</code> 扩展名（Peter Eisentraut）\n     </p><p>      这允许对扩展名敏感的编辑器选择正确的模式。\n     </p>", "text": "让 psql 的临时编辑器文件使用 .sql 扩展名（Peter Eisentraut） 这允许对扩展名敏感的编辑器选择正确的模式。", "title": "让 psql 的临时编辑器文件使用 .sql 扩展名", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "7a59f443ff3a3004b3dbdbfefad4071a456e00483e325e86eaacf0dfa5f8aa08", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-af73282a9b58ed45", "cves": [], "html": "<p>      允许 <span>psql</span> 使用零字节字段和记录分隔符（Peter Eisentraut）\n     </p><p>      各种 shell 工具使用零字节（NUL）分隔符，例如 <span>find</span>。\n     </p>", "text": "允许 psql 使用零字节字段和记录分隔符（Peter Eisentraut） 各种 shell 工具使用零字节（NUL）分隔符，例如 find。", "title": "允许 psql 使用零字节字段和记录分隔符", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "6c15a63f91dd74f4f294426a72aef6131815a475912da3d66f3afd77fae2245e", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c4718c625e12031b", "cves": [], "html": "<p>      让 <code>\\timing</code> 选项报告失败查询的耗时（Magnus Hagander）\n     </p><p>      此前只对成功查询报告耗时。\n     </p>", "text": "让 \\timing 选项报告失败查询的耗时（Magnus Hagander） 此前只对成功查询报告耗时。", "title": "让 \\timing 选项报告失败查询的耗时", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "0664adef86fb78a5c05a0c6e4e7b2aa4bac7b8beadb0e4dd7f57f9cd51c52fa5", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a469e7533f6a3470", "cves": [], "html": "<p>      统一并收紧 <span>psql</span> 对 <code>\\copy</code> 和 SQL <code>COPY</code> 的处理（Noah Misch）\n     </p><p>      此修复使失败行为更可预期，并遵循 <code>\\set ON_ERROR_ROLLBACK</code>。\n     </p>", "text": "统一并收紧 psql 对 \\copy 和 SQL COPY 的处理（Noah Misch） 此修复使失败行为更可预期，并遵循 \\set ON_ERROR_ROLLBACK。", "title": "统一并收紧 psql 对 \\copy 和 SQL COPY 的处理", "commits": [], "section": "客户端应用程序 / psql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.3", "source_hash": "da0efede78abde6fd91ccefe2239be05e373d7015d19235c17605219a46becc0", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6ae42260153d5cca", "cves": [], "html": "<p>      让 <code>\\d</code> 在序列上显示拥有它的表/列名（Magnus Hagander）\n     </p>", "text": "让 \\d 在序列上显示拥有它的表/列名（Magnus Hagander）", "title": "让 \\d 在序列上显示拥有它的表/列名", "commits": [], "section": "客户端应用程序 / 信息命令", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "c3f5001d46e1192ac8f924d94ee05ca3066cfb3e99152f61428dc40b4e3492c1", "section_path": ["客户端应用程序", "信息命令"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9ae74622f47c14aa", "cves": [], "html": "<p>      在 <code>\\d+</code> 中显示列的统计目标（Magnus Hagander）\n     </p>", "text": "在 \\d+ 中显示列的统计目标（Magnus Hagander）", "title": "在 \\d+ 中显示列的统计目标", "commits": [], "section": "客户端应用程序 / 信息命令", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "c79a5d4999547e40e64f1ae7d861376614de7a1b5a5d0fc30dd495973d780072", "section_path": ["客户端应用程序", "信息命令"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-5705df4c71fe97a2", "cves": [], "html": "<p>      在 <code>\\du</code> 中显示角色口令过期日期（Fabrízio de Royes Mello）\n     </p>", "text": "在 \\du 中显示角色口令过期日期（Fabrízio de Royes Mello）", "title": "在 \\du 中显示角色口令过期日期", "commits": [], "section": "客户端应用程序 / 信息命令", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "3731c51e1bdedee207c898ff7b70c4cb313c3ef56ef577ac13f4f1f5762d678b", "section_path": ["客户端应用程序", "信息命令"], "commit_groups": [], "identity_text": "Show role password expiration dates in \\du (Fabrízio de Royes Mello)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.2.0/changes/144", "db_id": "b805fe50abbfbd4239546fd71f308126", "patch_ids": [], "statement_hash": "ab4f1490e6a07a9c0970a2eb07c671ea00018ba3aebc82f5b332b2b25b060949", "relations": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-834489c4f07ca470", "cves": [], "html": "<p>      显示转换、编码转换、域和语言的注释（Josh Kupershmidt）\n     </p><p>      它们分别包含在 <code>\\dC+</code>、<code>\\dc+</code>、<code>\\dD+</code> 和 <code>\\dL</code> 的输出中。\n     </p>", "text": "显示转换、编码转换、域和语言的注释（Josh Kupershmidt） 它们分别包含在 \\dC+、\\dc+、\\dD+ 和 \\dL 的输出中。", "title": "显示转换、编码转换、域和语言的注释", "commits": [], "section": "客户端应用程序 / 信息命令", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "4822bc5b834d5a1f6cb13ed74bc0ad5f5b9d5be521228526ad5a3df0254c59b5", "section_path": ["客户端应用程序", "信息命令"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-208e10e08f9cda8c", "cves": [], "html": "<p>      显示 <acronym>SQL</acronym>/<acronym>MED</acronym> 对象的注释（Josh Kupershmidt）\n     </p><p>      它们分别包含在外部服务器、外部表和外部数据包装器的 <code>\\des+</code>、<code>\\det+</code> 和 <code>\\dew+</code> 输出中。\n     </p>", "text": "显示 SQL/MED 对象的注释（Josh Kupershmidt） 它们分别包含在外部服务器、外部表和外部数据包装器的 \\des+、\\det+ 和 \\dew+ 输出中。", "title": "显示 SQL/MED 对象的注释", "commits": [], "section": "客户端应用程序 / 信息命令", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "00def02552eb495a477ac2eaf437d6fa886fc42c1cd08c8094f93e3d69d0f332", "section_path": ["客户端应用程序", "信息命令"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-8f8fa3e2705ccb79", "cves": [], "html": "<p>      更改 <code>\\dd</code>，使其只显示没有专属反斜杠命令的对象类型的注释（Josh Kupershmidt）\n     </p>", "text": "更改 \\dd，使其只显示没有专属反斜杠命令的对象类型的注释（Josh Kupershmidt）", "title": "更改 \\dd，使其只显示没有专属反斜杠命令的对象类型的注释", "commits": [], "section": "客户端应用程序 / 信息命令", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.4", "source_hash": "67197e2dd3d43a31ea237454d397484ff5fe2685df43742f4fbb1d729082593d", "section_path": ["客户端应用程序", "信息命令"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-2a358ba0321059d6", "cves": [], "html": "<p>      在 <span>psql</span> Tab 补全中，按照新的 <a href=\"/docs/9.2/app-psql.html#APP-PSQL-VARIABLES\" title=\"Variables\"><code>COMP_KEYWORD_CASE</code></a> 设置以大写或小写补全 <acronym>SQL</acronym> 关键字（Peter Eisentraut）\n     </p>", "text": "在 psql Tab 补全中，按照新的 COMP_KEYWORD_CASE 设置以大写或小写补全 SQL 关键字（Peter Eisentraut）", "title": "在 psql Tab 补全中，按照新的 COMP_KEYWORD_CASE 设置以大写或小写补全 SQL 关键字", "commits": [], "section": "客户端应用程序 / Tab 补全", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "2100698424095c0449d17d8d7c1a9d6d618d907299efb13d65c43c5c143fef8b", "section_path": ["客户端应用程序", "Tab 补全"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-fbde31b519bdfb1e", "cves": [], "html": "<p>      新增 <code>EXECUTE</code> 的 Tab 补全支持（Andreas Karlsson）\n     </p>", "text": "新增 EXECUTE 的 Tab 补全支持（Andreas Karlsson）", "title": "新增 EXECUTE 的 Tab 补全支持", "commits": [], "section": "客户端应用程序 / Tab 补全", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "a3f4affe178b548647e492def89aabcb2f635386b8550b1aa7734d5fb89c81fb", "section_path": ["客户端应用程序", "Tab 补全"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d9d72e595d265232", "cves": [], "html": "<p>      允许 <code>GRANT</code>/<code>REVOKE</code> 中角色引用的 Tab 补全（Peter Eisentraut）\n     </p>", "text": "允许 GRANT/REVOKE 中角色引用的 Tab 补全（Peter Eisentraut）", "title": "允许 GRANT/REVOKE 中角色引用的 Tab 补全", "commits": [], "section": "客户端应用程序 / Tab 补全", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "0e15e1c61cb63964d92402b3de6eaa625722465092b61e02421a9a0bc868bb97", "section_path": ["客户端应用程序", "Tab 补全"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-2d1432a1510ceaf8", "cves": [], "html": "<p>      允许文件名的 Tab 补全在必要时提供引号（Noah Misch）\n     </p>", "text": "允许文件名的 Tab 补全在必要时提供引号（Noah Misch）", "title": "允许文件名的 Tab 补全在必要时提供引号", "commits": [], "section": "客户端应用程序 / Tab 补全", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "1340fc7403a22eb7c6c58c51697f2b1b628eaffec4288ff9c276d0277f8d952c", "section_path": ["客户端应用程序", "Tab 补全"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c31fc20fd73d41e5", "cves": [], "html": "<p>      更改 <code>TABLE</code> 的 Tab 补全支持，使其也包含视图（Magnus Hagander）\n     </p>", "text": "更改 TABLE 的 Tab 补全支持，使其也包含视图（Magnus Hagander）", "title": "更改 TABLE 的 Tab 补全支持，使其也包含视图", "commits": [], "section": "客户端应用程序 / Tab 补全", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.5", "source_hash": "b297b79cf2ddcce1f6de4e101504f65e3e700a8289c49b42560b285a91a67f56", "section_path": ["客户端应用程序", "Tab 补全"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-2fc81104d54addb2", "cves": [], "html": "<p>      为 <span>pg_dump</span> 新增 <code>--exclude-table-data</code> 选项（Andrew Dunstan）\n     </p><p>      这允许按表只转储表的定义而不转储其数据。\n     </p>", "text": "为 pg_dump 新增 --exclude-table-data 选项（Andrew Dunstan） 这允许按表只转储表的定义而不转储其数据。", "title": "为 pg_dump 新增 --exclude-table-data 选项", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "7fa784e8db52b493d1e845bef2e0dcc5df8147f1b9b1e3d9eaf0b788bbf2dc3d", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9a232df15a72672a", "cves": [], "html": "<p>      为 <span>pg_dump</span> 和 <span>pg_restore</span> 新增 <code>--section</code> 选项（Andrew Dunstan）\n     </p><p>      有效值为 <code>pre-data</code>、<code>data</code> 和 <code>post-data</code>。该选项可以给出多次以选择两个或更多节。\n     </p>", "text": "为 pg_dump 和 pg_restore 新增 --section 选项（Andrew Dunstan） 有效值为 pre-data、data 和 post-data。该选项可以给出多次以选择两个或更多节。", "title": "为 pg_dump 和 pg_restore 新增 --section 选项", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "a6996942091da6e4d9807e5175d0488afed2e90b47b2418f2e7b0f1a23d92cb4", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-bb6a9a03c1ae6cf4", "cves": [], "html": "<p>      让<a href=\"/docs/9.2/app-pg-dumpall.html\" title=\"pg_dumpall\"><span>pg_dumpall</span></a>先转储所有角色，再转储角色上的所有配置设置（Phil Sorber）\n     </p><p>      这允许角色的配置设置提及其他角色而不产生错误。\n     </p>", "text": "让pg_dumpall先转储所有角色，再转储角色上的所有配置设置（Phil Sorber） 这允许角色的配置设置提及其他角色而不产生错误。", "title": "让pg_dumpall先转储所有角色，再转储角色上的所有配置设置", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "e43915a9b8d1026f467be524094db85978e21abdbe3723084106314f42846d82", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9d479901eafe302e", "cves": [], "html": "<p>      允许 <span>pg_dumpall</span> 在新集簇缺少 <code>postgres</code> 数据库时避免错误（Robert Haas）\n     </p>", "text": "允许 pg_dumpall 在新集簇缺少 postgres 数据库时避免错误（Robert Haas）", "title": "允许 pg_dumpall 在新集簇缺少 postgres 数据库时避免错误", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "21080eea45da6c47dfaff67ef1aeedf4c19cc0234afcbe75ad1ee63569c780fd", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e974f844178aca1a", "cves": [], "html": "<p>      按用户名顺序转储外部服务器用户映射（Peter Eisentraut）\n     </p><p>      这有助于产生确定性的转储文件。\n     </p>", "text": "按用户名顺序转储外部服务器用户映射（Peter Eisentraut） 这有助于产生确定性的转储文件。", "title": "按用户名顺序转储外部服务器用户映射", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "eb02cc9f19fb320bf43c0deda260739c5eb4e4d524337d5e3944528bd5505bd3", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e756a5e270f427bc", "cves": [], "html": "<p>      以可预测的顺序转储操作符（Peter Eisentraut）\n     </p>", "text": "以可预测的顺序转储操作符（Peter Eisentraut）", "title": "以可预测的顺序转储操作符", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "7f34e4956d316cfd81ebe2e64de44d8d96160a34d9ba0352d0a04220324bf6c8", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a79231c926957b6f", "cves": [], "html": "<p>      收紧 <span>pg_dump</span> 转储扩展配置表的规则（Tom Lane）\n     </p>", "text": "收紧 pg_dump 转储扩展配置表的规则（Tom Lane）", "title": "收紧 pg_dump 转储扩展配置表的规则", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "2be17a702cae5684aa82b0971a0bc393fc51832feb36134efd36c21eaf7f5d35", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-be0306febf6ced56", "cves": [], "html": "<p>      让 <span>pg_dump</span> 生成更有用的依赖信息（Tom Lane）\n     </p><p>      归档格式转储中包含的依赖链接此前用处非常有限，因为它们经常引用转储中根本没有出现的对象。现在它们表示被转储对象之间的实际依赖（可能是间接的）。\n     </p>", "text": "让 pg_dump 生成更有用的依赖信息（Tom Lane） 归档格式转储中包含的依赖链接此前用处非常有限，因为它们经常引用转储中根本没有出现的对象。现在它们表示被转储对象之间的实际依赖（可能是间接的）。", "title": "让 pg_dump 生成更有用的依赖信息", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "a231a900f0e957e1e428dfc425a199fd44c49e2cf9608817f53299c85759b466", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a37b577cc1fb9367", "cves": [], "html": "<p>      改进 <span>pg_dump</span> 转储大量数据库对象时的性能（Tom Lane）\n     </p>", "text": "改进 pg_dump 转储大量数据库对象时的性能（Tom Lane）", "title": "改进 pg_dump 转储大量数据库对象时的性能", "commits": [], "section": "客户端应用程序 / pg_dump", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.12.6", "source_hash": "6e276e7e51a116d098b5598049921b983dc58fd0a8e0ba126eaa84eb05c0c7de", "section_path": ["客户端应用程序", "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-0d3226622fae68e0", "cves": [], "html": "<p>      允许 <span>libpq</span> 连接串采用 <a href=\"/docs/9.2/libpq.html#LIBPQ-CONNSTRING\" title=\"31.1.1. 连接字符串\"><acronym>URI</acronym></a> 格式（Alexander Shulgin）\n     </p><p>      语法以 <code>postgres://</code> 开头。这允许应用避免为表示数据库连接的 URI 实现自己的解析器。\n     </p>", "text": "允许 libpq 连接串采用 URI 格式（Alexander Shulgin） 语法以 postgres:// 开头。这允许应用避免为表示数据库连接的 URI 实现自己的解析器。", "title": "允许 libpq 连接串采用 URI 格式", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-13c2304d39096f0b", "cves": [], "html": "<p>      新增用于禁用 <acronym>SSL</acronym> 压缩的<a href=\"/docs/9.2/libpq.html#LIBPQ-CONNECT-SSLCOMPRESSION\">连接选项</a>（Laurenz Albe）\n     </p><p>      这可用于消除快速网络上 <acronym>SSL</acronym> 压缩的开销。\n     </p>", "text": "新增用于禁用 SSL 压缩的连接选项（Laurenz Albe） 这可用于消除快速网络上 SSL 压缩的开销。", "title": "新增用于禁用 SSL 压缩的连接选项", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-fbefcefdd0b07c38", "cves": [], "html": "<p>      新增<a href=\"/docs/9.2/libpq-single-row-mode.html\" title=\"31.5. 逐行检索查询结果\">单行处理模式</a>，以更好地处理大型结果集（Kyotaro Horiguchi、Marko Kreen）\n     </p><p>      此前，<span>libpq</span> 总是先把整个查询结果收集到内存中，再传递回应用。\n     </p>", "text": "新增单行处理模式，以更好地处理大型结果集（Kyotaro Horiguchi、Marko Kreen） 此前，libpq 总是先把整个查询结果收集到内存中，再传递回应用。", "title": "新增单行处理模式，以更好地处理大型结果集", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9643f3fb807918f0", "cves": [], "html": "<p>      为函数 <code>PQconnectdbParams</code>、<code>PQconnectStartParams</code> 和 <code>PQpingParams</code> 的声明添加 <code>const</code> 限定符（Lionel Elie Mamane）\n     </p>", "text": "为函数 PQconnectdbParams、PQconnectStartParams 和 PQpingParams 的声明添加 const 限定符（Lionel Elie Mamane）", "title": "为函数 PQconnectdbParams、PQconnectStartParams 和 PQpingParams 的声明添加 const 限定符", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-0f0af92c5358525d", "cves": [], "html": "<p>      允许 <code>.pgpass</code> 文件的口令字段包含转义字符（Robert Haas）\n     </p>", "text": "允许 .pgpass 文件的口令字段包含转义字符（Robert Haas）", "title": "允许 .pgpass 文件的口令字段包含转义字符", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6aaa6c0f22f830af", "cves": [], "html": "<p>      让库函数在需要终止进程时使用 <code>abort()</code> 而不是 <code>exit()</code>（Peter Eisentraut）\n     </p><p>      这一选择不会干扰程序使用的正常退出码，并会生成可被调用方捕获的信号。\n     </p>", "text": "让库函数在需要终止进程时使用 abort() 而不是 exit()（Peter Eisentraut） 这一选择不会干扰程序使用的正常退出码，并会生成可被调用方捕获的信号。", "title": "让库函数在需要终止进程时使用 abort() 而不是 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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d4cd4e435139e886", "cves": [], "html": "<p>      移除已死的平台（Peter Eisentraut）\n     </p><p>      以下平台不再受支持：dgux、nextstep、sunos4、svr4、ultrix4、univel、bsdi。\n     </p>", "text": "移除已死的平台（Peter Eisentraut） 以下平台不再受支持：dgux、nextstep、sunos4、svr4、ultrix4、univel、bsdi。", "title": "移除已死的平台", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "b7b1bbbc125700d5587c6aa2f7e42db08bcdc0f7f0b6ff26cc27c967b80f6ed0", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-679bcafd87543f71", "cves": [], "html": "<p>      新增对使用 <a href=\"/docs/9.2/install-windows.html\" title=\"第 16 章 在 Windows 上从源代码安装\">MS Visual Studio 2010</a> 构建的支持（Brar Piening）\n     </p>", "text": "新增对使用 MS Visual Studio 2010 构建的支持（Brar Piening）", "title": "新增对使用 MS Visual Studio 2010 构建的支持", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "6bf27066d7307339366077e85b6d95c14ce80755d840811c54cae68d43ba21ad", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-0ac462aab9c7f231", "cves": [], "html": "<p>      支持使用 MinGW-w64 32 位编译器编译（Lars Kanis）\n     </p>", "text": "支持使用 MinGW-w64 32 位编译器编译（Lars Kanis）", "title": "支持使用 MinGW-w64 32 位编译器编译", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "b264fd25b696b8b69ab554daa5af0acd0cec0ca63e893028e51d3888e69b959a", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-ff8ab7a569ab8a83", "cves": [], "html": "<p>      安装时把 <code>plpgsql.h</code> 安装到 <code>include/server</code>（Heikki Linnakangas）\n     </p>", "text": "安装时把 plpgsql.h 安装到 include/server（Heikki Linnakangas）", "title": "安装时把 plpgsql.h 安装到 include/server", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "f3879f860c74e129308c2dbbcc32195d2f2cc55be746152b15e80a49f3acba44", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6cc840582dc3368e", "cves": [], "html": "<p>      改进闩锁机制，加入对 postmaster 死亡的检测（Peter Geoghegan、Heikki Linnakangas、Tom Lane）\n     </p><p>      这消除了后台进程此前必须唤醒以轮询事件的主要原因之一。\n     </p>", "text": "改进闩锁机制，加入对 postmaster 死亡的检测（Peter Geoghegan、Heikki Linnakangas、Tom Lane） 这消除了后台进程此前必须唤醒以轮询事件的主要原因之一。", "title": "改进闩锁机制，加入对 postmaster 死亡的检测", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "852ca2011852e3a1f9b7f32e6a9b7bcb9b7636088caee1d781ee7cd2035026e9", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-b2c1aeb9389caab9", "cves": [], "html": "<p>      在支持的地方使用 C 弹性数组成员（Peter Eisentraut）\n     </p>", "text": "在支持的地方使用 C 弹性数组成员（Peter Eisentraut）", "title": "在支持的地方使用 C 弹性数组成员", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "7addd357197a67d0562bd13bc87c86b8543c8e03c74fc83dab3ece45d7e34173", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-1a072b9c4019a7fe", "cves": [], "html": "<p>      改进并发事务回归测试（<span>isolationtester</span>）（Noah Misch）\n     </p>", "text": "改进并发事务回归测试（isolationtester）（Noah Misch）", "title": "改进并发事务回归测试（isolationtester）", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "3e584d48ccfd3106623bd08e498cf910113d0e59c585421f1d73862e31d8169e", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6788aa26d4883591", "cves": [], "html": "<p>      修改 <span>thread_test</span>，使其在当前目录而不是 <code>/tmp</code> 中创建测试文件（Bruce Momjian）\n     </p>", "text": "修改 thread_test，使其在当前目录而不是 /tmp 中创建测试文件（Bruce Momjian）", "title": "修改 thread_test，使其在当前目录而不是 /tmp 中创建测试文件", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "276fab0b0db2a242f9e1a6547ec810ccf2f731030565d31f159b177fe20cbacd", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c27117199a6c886c", "cves": [], "html": "<p>      改进 flex 和 bison 的警告与错误报告（Tom Lane）\n     </p>", "text": "改进 flex 和 bison 的警告与错误报告（Tom Lane）", "title": "改进 flex 和 bison 的警告与错误报告", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "6b2e5963ecdd5845289594bd7fb5f2b19d76cda3f91c311cd6c5e3d72274df45", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-db924d6da50d8ea2", "cves": [], "html": "<p>      新增内存屏障支持（Robert Haas）\n     </p><p>      目前尚未使用。\n     </p>", "text": "新增内存屏障支持（Robert Haas） 目前尚未使用。", "title": "新增内存屏障支持", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "d6aff5cba96383b70494cc06b5b39be65a7e1d1c9ca4e9b865396c47d81c4846", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-ed859d5361f82ad7", "cves": [], "html": "<p>      修改 pgindent 以使用 typedef 文件（Bruce Momjian）\n     </p>", "text": "修改 pgindent 以使用 typedef 文件（Bruce Momjian）", "title": "修改 pgindent 以使用 typedef 文件", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "8a8475589e4058c6d79adbb7bb1e08eada2dd56c19131ac50e3ef8a65743fede", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-5e192e2cc7ea7dd8", "cves": [], "html": "<p>      新增用于处理即将发送到服务器日志的消息的钩子（Martin Pihlak）\n     </p>", "text": "新增用于处理即将发送到服务器日志的消息的钩子（Martin Pihlak）", "title": "新增用于处理即将发送到服务器日志的消息的钩子", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "52523ab2b1b24c309629de90e253de97caf378b06194e8ad8e97b7e94af6e872", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-413992671997e3c3", "cves": [], "html": "<p>      为 <code>DROP</code> 命令新增对象访问钩子（KaiGai Kohei）\n     </p>", "text": "为 DROP 命令新增对象访问钩子（KaiGai Kohei）", "title": "为 DROP 命令新增对象访问钩子", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "12b2a5c1dfdeb3bf9439e3858335d204533b84849f573caed750c82e96a3cde4", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e99cc23c2641f13e", "cves": [], "html": "<p>      集中化某些对象类型的 <code>DROP</code> 处理（KaiGai Kohei）\n     </p>", "text": "集中化某些对象类型的 DROP 处理（KaiGai Kohei）", "title": "集中化某些对象类型的 DROP 处理", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "94546a18276514cb5c60482ca1369b6a35f8ba1a9c5bfaf97b1ca578321ad553", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-bfe6226d1eb9fa0c", "cves": [], "html": "<p>      新增 <span>pg_upgrade</span> 测试套件（Peter Eisentraut）\n     </p>", "text": "新增 pg_upgrade 测试套件（Peter Eisentraut）", "title": "新增 pg_upgrade 测试套件", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "06a8e5ea43be0b6be94ddc3c3fab6ca73bf7ad796f30eb0eb638585dc26e4e1c", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-cf825f597df2769c", "cves": [], "html": "<p>      把正则表达式代码与 <acronym>TCL</acronym> 8.5.11 同步，并改进内部处理（Tom Lane）\n     </p>", "text": "把正则表达式代码与 TCL 8.5.11 同步，并改进内部处理（Tom Lane）", "title": "把正则表达式代码与 TCL 8.5.11 同步，并改进内部处理", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "469a02c8e64b31b831ac52c48d8b5b521b5c21267a8904e00bae466b082c4114", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-6dd90c1ecd5534b6", "cves": [], "html": "<p>      把 <acronym>CRC</acronym> 表移到 libpgport，并在单独的头文件中提供（Daniel Farina）\n     </p>", "text": "把 CRC 表移到 libpgport，并在单独的头文件中提供（Daniel Farina）", "title": "把 CRC 表移到 libpgport，并在单独的头文件中提供", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "fc747e8dce941394f32fab0bd334a906f1e253d9bf7803ed9bb0c93881341f5c", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-17211fe8047d822f", "cves": [], "html": "<p>      为 <span>git_changelog</span> 新增用于制作大版本发行说明的选项（Bruce Momjian）\n     </p>", "text": "为 git_changelog 新增用于制作大版本发行说明的选项（Bruce Momjian）", "title": "为 git_changelog 新增用于制作大版本发行说明的选项", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "f99db0401ca487ded8578bd8611471689141990048d2deca7ca4273a3bf29d36", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4aaf06977d620685", "cves": [], "html": "<p>      支持 Linux 的 <code>/proc/self/oom_score_adj</code> API（Tom Lane）\n     </p>", "text": "支持 Linux 的 /proc/self/oom_score_adj API（Tom Lane）", "title": "支持 Linux 的 /proc/self/oom_score_adj API", "commits": [], "section": "源代码", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.14", "source_hash": "49f1567509be1e5461d2e185a8836fe83ae8f706293a0604f175396b86409aa0", "section_path": ["源代码"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-f53b38a9bf9aae08", "cves": [], "html": "<p>      通过使用 libpq 新的单行处理模式改进 <a href=\"/docs/9.2/dblink.html\" title=\"F.9. dblink\">dblink</a> 的效率（Kyotaro Horiguchi、Marko Kreen）\n     </p><p>      此改进不适用于 <code>dblink_send_query()</code>/<code>dblink_get_result()</code>。\n     </p>", "text": "通过使用 libpq 新的单行处理模式改进 dblink 的效率（Kyotaro Horiguchi、Marko Kreen） 此改进不适用于 dblink_send_query()/dblink_get_result()。", "title": "通过使用 libpq 新的单行处理模式改进 dblink 的效率", "commits": [], "section": "附加模块", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "368da1ba2d0ae4a12c91380e205713e279bf2e61fd7aa273ffe3e1e406a5a8b3", "section_path": ["附加模块"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9a96a5170bddc38c", "cves": [], "html": "<p>      在 <a href=\"/docs/9.2/file-fdw.html\" title=\"F.14. file_fdw\">file_fdw</a> 中支持 <code>force_not_null</code> 选项（Shigeru Hanada）\n     </p>", "text": "在 file_fdw 中支持 force_not_null 选项（Shigeru Hanada）", "title": "在 file_fdw 中支持 force_not_null 选项", "commits": [], "section": "附加模块", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "8ad5e5798d043487102f311e0af9f504b0a404fac23ff74b50bc0d4caa903fa3", "section_path": ["附加模块"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-29a58caceb346d81", "cves": [], "html": "<p>      为<a href=\"/docs/9.2/pgarchivecleanup.html\" title=\"pg_archivecleanup\"><span>pg_archivecleanup</span></a>实现空运行模式（Gabriele Bartolini）\n     </p><p>      它只输出要删除文件的名称。\n     </p>", "text": "为pg_archivecleanup实现空运行模式（Gabriele Bartolini） 它只输出要删除文件的名称。", "title": "为pg_archivecleanup实现空运行模式", "commits": [], "section": "附加模块", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "4b03fc2223d237c2f7902eab89731f3e344defc4c744d36fd20aaa58b2e19e03", "section_path": ["附加模块"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7fa4e9ca9aa7c3a1", "cves": [], "html": "<p>      为 <a href=\"/docs/9.2/pgbench.html\" title=\"pgbench\">pgbench</a> 新增开关 <code>--unlogged-tables</code>、<code>--tablespace</code> 和 <code>--index-tablespace</code>（Robert Haas）\n     </p>", "text": "为 pgbench 新增开关 --unlogged-tables、--tablespace 和 --index-tablespace（Robert Haas）", "title": "为 pgbench 新增开关 --unlogged-tables、--tablespace 和 --index-tablespace", "commits": [], "section": "附加模块", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "21de2613e730eb60f85a4a20f8b9c4ee97454f54cb99a70976767e49980bda70", "section_path": ["附加模块"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-0c697602c67fe67c", "cves": [], "html": "<p>      更改<a href=\"/docs/9.2/pgtestfsync.html\" title=\"pg_test_fsync\"><span>pg_test_fsync</span></a>，使其按固定时长而不是固定周期数测试（Bruce Momjian）\n     </p><p>      移除了 <code>-o</code>/cycles 选项，新增了 <code>-s</code>/seconds。\n     </p>", "text": "更改pg_test_fsync，使其按固定时长而不是固定周期数测试（Bruce Momjian） 移除了 -o/cycles 选项，新增了 -s/seconds。", "title": "更改pg_test_fsync，使其按固定时长而不是固定周期数测试", "commits": [], "section": "附加模块", "category": "bugfix", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "e656ce244df145d3a1c364c774f7d22f69ab1ffb5c38b8d45818241e559b2378", "section_path": ["附加模块"], "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": [], "version": "9.2.0", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4d833c3706e2f049", "cves": [], "html": "<p>      新增<a href=\"/docs/9.2/pgtesttiming.html\" title=\"pg_test_timing\"><span>pg_test_timing</span></a>工具，用于测量时钟单调性和计时开销（Ants Aasma、Greg Smith）\n     </p>", "text": "新增pg_test_timing工具，用于测量时钟单调性和计时开销（Ants Aasma、Greg Smith）", "title": "新增pg_test_timing工具，用于测量时钟单调性和计时开销", "commits": [], "section": "附加模块", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "3bfb517a3b8f0663d26937443092b0e8a01acfd18131eeca3bd7b8a799dbcfd2", "section_path": ["附加模块"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-dfa52259583394ac", "cves": [], "html": "<p>      新增 <a href=\"/docs/9.2/tcn.html\" title=\"F.36. tcn\">tcn</a>（触发式变更通知）模块，在表变更时生成 <code>NOTIFY</code> 事件（Kevin Grittner）\n     </p>", "text": "新增 tcn（触发式变更通知）模块，在表变更时生成 NOTIFY 事件（Kevin Grittner）", "title": "新增 tcn（触发式变更通知）模块，在表变更时生成 NOTIFY 事件", "commits": [], "section": "附加模块", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15", "source_hash": "3e76d0c091fde3acc34519ff71e784dac173170731ed7929faa15152f946f183", "section_path": ["附加模块"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7a59e4542a325943", "cves": [], "html": "<p>      调整 <span>pg_upgrade</span> 环境变量（Bruce Momjian）\n     </p><p>      把数据、bin 和端口环境变量重命名为以 <code>PG</code> 开头，并支持 <code>PGPORTOLD</code>/<code>PGPORTNEW</code> 以取代 <code>PGPORT</code>。\n     </p>", "text": "调整 pg_upgrade 环境变量（Bruce Momjian） 把数据、bin 和端口环境变量重命名为以 PG 开头，并支持 PGPORTOLD/PGPORTNEW 以取代 PGPORT。", "title": "调整 pg_upgrade 环境变量", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "650a4a8300ce9c0d980de6274de72c4a1997df37d684c8cc8ab85ecb14be66af", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-1e6bf472ef3def45", "cves": [], "html": "<p>      彻底改造 <span>pg_upgrade</span> 的日志和失败报告（Bruce Momjian）\n     </p><p>      创建四个只追加的日志文件，成功时删除它们。新增 <code>-r</code>/<code>--retain</code> 选项以无条件保留这些文件。同时移除 <span>pg_upgrade</span> 的 <code>-g</code>/<code>-G</code>/<code>-l</code> 选项（已无必要），并收紧日志文件权限。\n     </p>", "text": "彻底改造 pg_upgrade 的日志和失败报告（Bruce Momjian） 创建四个只追加的日志文件，成功时删除它们。新增 -r/--retain 选项以无条件保留这些文件。同时移除 pg_upgrade 的 -g/-G/-l 选项（已无必要），并收紧日志文件权限。", "title": "彻底改造 pg_upgrade 的日志和失败报告", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "ec8bd696f6cf0dbbdaccfff66eb534c14b386a7e40a9b0110f9dd6afb9cb23e5", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4c1789391f551ff1", "cves": [], "html": "<p>      让 <span>pg_upgrade</span> 创建一个脚本，以增量方式生成更准确的优化器统计信息（Bruce Momjian）\n     </p><p>      这减少了升级后生成最小集簇统计信息所需的时间。\n     </p>", "text": "让 pg_upgrade 创建一个脚本，以增量方式生成更准确的优化器统计信息（Bruce Momjian） 这减少了升级后生成最小集簇统计信息所需的时间。", "title": "让 pg_upgrade 创建一个脚本，以增量方式生成更准确的优化器统计信息", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "f3bd2834450f2748da9dada0914e549efd8f36ff532cf076f951a98c1a1f7045", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c86becccb477c1c6", "cves": [], "html": "<p>      允许 <span>pg_upgrade</span> 升级没有 <code>postgres</code> 数据库的旧集簇（Bruce Momjian）\n     </p>", "text": "允许 pg_upgrade 升级没有 postgres 数据库的旧集簇（Bruce Momjian）", "title": "允许 pg_upgrade 升级没有 postgres 数据库的旧集簇", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "550b9392064a7a10d771b25e3fc8712e5f53fe0ac0f06dcb4836c24c08284d94", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d8fbee7babfdc440", "cves": [], "html": "<p>      允许 <span>pg_upgrade</span> 处理某些旧库或新库缺失的情况，只要它们是空的（Bruce Momjian）\n     </p>", "text": "允许 pg_upgrade 处理某些旧库或新库缺失的情况，只要它们是空的（Bruce Momjian）", "title": "允许 pg_upgrade 处理某些旧库或新库缺失的情况，只要它们是空的", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "96c8feb9bbd95a2a66cc49f54524db9c1dfa7ba501f49ba3361dcb9e81dea8e0", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-deb5a9febefdcc88", "cves": [], "html": "<p>      允许 <span>pg_upgrade</span> 处理仅配置目录的安装（Bruce Momjian）\n     </p>", "text": "允许 pg_upgrade 处理仅配置目录的安装（Bruce Momjian）", "title": "允许 pg_upgrade 处理仅配置目录的安装", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "74f96e90b48ea842bc64b2a0c915f517218a5b1b9fc70f67c4e36dd2ca76ac0f", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-e50b9026d03d9a5a", "cves": [], "html": "<p>      在 <span>pg_upgrade</span> 中新增 <code>-o</code>/<code>-O</code> 选项，用于向服务器传递参数（Bruce Momjian）\n     </p><p>      这对仅配置目录的安装很有用。\n     </p>", "text": "在 pg_upgrade 中新增 -o/-O 选项，用于向服务器传递参数（Bruce Momjian） 这对仅配置目录的安装很有用。", "title": "在 pg_upgrade 中新增 -o/-O 选项，用于向服务器传递参数", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "2cdb4ce853139eef85875a3f29b034cfe498020dde2c279e9f1305183e61a1c3", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a53d2cb6997bd8da", "cves": [], "html": "<p>      更改 <span>pg_upgrade</span>，使其默认使用端口 50432（Bruce Momjian）\n     </p><p>      这有助于避免升级期间意外的客户端连接。\n     </p>", "text": "更改 pg_upgrade，使其默认使用端口 50432（Bruce Momjian） 这有助于避免升级期间意外的客户端连接。", "title": "更改 pg_upgrade，使其默认使用端口 50432", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "205a8cd9e838c641d223a3534a9443689f775a3ac996ec225b7826cfa8a618ee", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-d4e9f38c3e470b38", "cves": [], "html": "<p>      减少 <span>pg_upgrade</span> 中的集簇锁定（Bruce Momjian）\n     </p><p>      具体而言，只有使用链接模式时才锁定旧集簇，并在模式恢复之后立即进行。\n     </p>", "text": "减少 pg_upgrade 中的集簇锁定（Bruce Momjian） 具体而言，只有使用链接模式时才锁定旧集簇，并在模式恢复之后立即进行。", "title": "减少 pg_upgrade 中的集簇锁定", "commits": [], "section": "附加模块 / pg_upgrade", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.3", "source_hash": "2a8cfc20545f0fe69b093c6c5749907406ccef29477d57b699d63555dacdbe97", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-5dd31f3bd631c177", "cves": [], "html": "<p>      允许 <span>pg_stat_statements</span> 通过 SQL 文本归一化聚合相似查询（Peter Geoghegan、Tom Lane）\n     </p><p>      使用非参数化 SQL 应用的用户现在无需详细的日志分析就能监控查询性能。\n     </p>", "text": "允许 pg_stat_statements 通过 SQL 文本归一化聚合相似查询（Peter Geoghegan、Tom Lane） 使用非参数化 SQL 应用的用户现在无需详细的日志分析就能监控查询性能。", "title": "允许 pg_stat_statements 通过 SQL 文本归一化聚合相似查询", "commits": [], "section": "附加模块 / 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": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-799997b43a81a679", "cves": [], "html": "<p>      为 <span>pg_stat_statements</span> 新增脏块和写出块计数以及读写时间（Robert Haas、Ants Aasma）\n     </p>", "text": "为 pg_stat_statements 新增脏块和写出块计数以及读写时间（Robert Haas、Ants Aasma）", "title": "为 pg_stat_statements 新增脏块和写出块计数以及读写时间", "commits": [], "section": "附加模块 / 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": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-bc3655c3127663dc", "cves": [], "html": "<p>      防止 <span>pg_stat_statements</span> 重复计数 <code>PREPARE</code> 和 <code>EXECUTE</code> 命令（Tom Lane）\n     </p>", "text": "防止 pg_stat_statements 重复计数 PREPARE 和 EXECUTE 命令（Tom Lane）", "title": "防止 pg_stat_statements 重复计数 PREPARE 和 EXECUTE 命令", "commits": [], "section": "附加模块 / 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": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7483ae2648a7003f", "cves": [], "html": "<p>      支持在全局对象上使用 <code>SECURITY LABEL</code>（KaiGai Kohei、Robert Haas）\n     </p><p>      具体而言，为数据库、表空间和角色添加安全标签。\n     </p>", "text": "支持在全局对象上使用 SECURITY LABEL（KaiGai Kohei、Robert Haas） 具体而言，为数据库、表空间和角色添加安全标签。", "title": "支持在全局对象上使用 SECURITY LABEL", "commits": [], "section": "附加模块 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "b571a7718174d413bfd9d0367ecb82de44c2e14516764b987865352fc1b520fa", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-643d246e3cbe9866", "cves": [], "html": "<p>      允许 sepgsql 遵循数据库标签（KaiGai Kohei）\n     </p>", "text": "允许 sepgsql 遵循数据库标签（KaiGai Kohei）", "title": "允许 sepgsql 遵循数据库标签", "commits": [], "section": "附加模块 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "d8aecc2938bb410af6223014f9eaafbfb868daada4bcaf6d4341f3f38fc6edda", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-7d8458753ea70253", "cves": [], "html": "<p>      在各种对象创建期间执行 sepgsql 权限检查（KaiGai Kohei）\n     </p>", "text": "在各种对象创建期间执行 sepgsql 权限检查（KaiGai Kohei）", "title": "在各种对象创建期间执行 sepgsql 权限检查", "commits": [], "section": "附加模块 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "1e1e467cff5537b028f4bde3565644172d2eafd1eccb27887bf709f094351c95", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-980cbedff6a866bc", "cves": [], "html": "<p>      新增 <code>sepgsql_setcon()</code> 及相关函数，用于控制 sepgsql 安全域（KaiGai Kohei）\n     </p>", "text": "新增 sepgsql_setcon() 及相关函数，用于控制 sepgsql 安全域（KaiGai Kohei）", "title": "新增 sepgsql_setcon() 及相关函数，用于控制 sepgsql 安全域", "commits": [], "section": "附加模块 / sepgsql", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "e7ff8ad075e1e63ed1d717491b4c0b1a129075db562fcaaf0cc573027d9b723e", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-969750e275302a31", "cves": [], "html": "<p>      为 sepgsql 新增用户空间访问缓存以提升性能（KaiGai Kohei）\n     </p>", "text": "为 sepgsql 新增用户空间访问缓存以提升性能（KaiGai Kohei）", "title": "为 sepgsql 新增用户空间访问缓存以提升性能", "commits": [], "section": "附加模块 / sepgsql", "category": "performance", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.15.5", "source_hash": "8c60528987f5a1279e4ad686986b9471ed95f7ce58082505757585ab59f41e77", "section_path": ["附加模块", "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": [], "version": "9.2.0", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-434a54029aa50e2c", "cves": [], "html": "<p>      新增规则，可选择使用网站样式表构建 HTML 文档（Magnus Hagander）\n     </p><p>      使用 <code>gmake STYLE=website draft</code>。\n     </p>", "text": "新增规则，可选择使用网站样式表构建 HTML 文档（Magnus Hagander） 使用 gmake STYLE=website draft。", "title": "新增规则，可选择使用网站样式表构建 HTML 文档", "commits": [], "section": "文档", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "43d322d4b133491e78ba07578463b6548f9cd2032fb59c2a346cf4af738f9193", "section_path": ["文档"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-a25f9369a907c77a", "cves": [], "html": "<p>      改进 <code>EXPLAIN</code> 文档（Tom Lane）\n     </p>", "text": "改进 EXPLAIN 文档（Tom Lane）", "title": "改进 EXPLAIN 文档", "commits": [], "section": "文档", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "fc037f942ab841c0f50b200f727b6b3a73a4fee5bd37d263981f9efa9ccc1e93", "section_path": ["文档"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-4d41dadbe75b8fa7", "cves": [], "html": "<p>      记录命令行工具（如 <span>vacuumdb</span>）通过双引号保留用户/数据库名（Bruce Momjian）\n     </p>", "text": "记录命令行工具（如 vacuumdb）通过双引号保留用户/数据库名（Bruce Momjian）", "title": "记录命令行工具（如 vacuumdb）通过双引号保留用户/数据库名", "commits": [], "section": "文档", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "9ccdb834130e94d4c9747304dfd76ca93433ec69cbf9b66e92db01e163ea0e80", "section_path": ["文档"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-c3f220f50d136581", "cves": [], "html": "<p>      记录客户端为 MD5 认证返回的实际字符串（Cyan Ogilvie）\n     </p>", "text": "记录客户端为 MD5 认证返回的实际字符串（Cyan Ogilvie）", "title": "记录客户端为 MD5 认证返回的实际字符串", "commits": [], "section": "文档", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "13aa2c42c947b1de78ed7a00a689cdd3fa816ab56c392374ef68a06e35cb1356", "section_path": ["文档"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.2.0-9ededaa138618210", "cves": [], "html": "<p>      废弃在 <code>CREATE TEMP TABLE</code> 中使用 <code>GLOBAL</code> 和 <code>LOCAL</code>（Noah Misch）\n     </p><p> <span>PostgreSQL</span> 长期以来把这些关键字视为无操作，并将继续如此；但未来它们可能获得 SQL 标准所规定的含义，因此应用应避免使用它们。\n     </p>", "text": "废弃在 CREATE TEMP TABLE 中使用 GLOBAL 和 LOCAL（Noah Misch） PostgreSQL 长期以来把这些关键字视为无操作，并将继续如此；但未来它们可能获得 SQL 标准所规定的含义，因此应用应避免使用它们。", "title": "废弃在 CREATE TEMP TABLE 中使用 GLOBAL 和 LOCAL", "commits": [], "section": "文档", "category": "feature", "source_url": "/docs/release/9.2.0/#id-1.11.6.29.5.16", "source_hash": "248acf36e09cb93f1865e5c13b71e662d3f3de96b4ba72b0227a46ab1d348c7a", "section_path": ["文档"], "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": [], "version": "9.2.0", "category_label": "新功能", "also_in": [], "variants": [], "related_changes": []}]}], "stats": [{"key": "all", "label": "全部变更", "count": 238}, {"key": "feature", "label": "新功能", "count": 197}, {"key": "bugfix", "label": "BUG 修复", "count": 6}, {"key": "security", "label": "安全相关", "count": 0}, {"key": "performance", "label": "性能改进", "count": 12}, {"key": "compatibility", "label": "兼容性变化", "count": 23}, {"key": "improvement", "label": "其他改进", "count": 0}], "total": 238, "release_count": 1, "cross_major": false, "cve_count": 0, "cves": [], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 238, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}