#
msgid ""
msgstr ""
-"Project-Id-Version: postgres (PostgreSQL 9.0)\n"
+"Project-Id-Version: postgres (PostgreSQL) 11\n"
"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
-"POT-Creation-Date: 2016-04-18 04:43+0000\n"
-"PO-Revision-Date: 2016-06-12 15:34+0800\n"
-"Last-Translator: Yuwei Peng <ywpeng@whu.edu.cn>\n"
-"Language-Team: Chinese (Simplified)\n"
+"POT-Creation-Date: 2019-04-12 19:35+0800\n"
+"PO-Revision-Date: 2019-05-15 18:21+0800\n"
+"Last-Translator: Jie Zhang <zhangjie2@cn.fujitsu.com>\n"
+"Language-Team: Chinese (Simplified) <zhangjie2@cn.fujitsu.com>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 1.5.7\n"
-#: ../common/config_info.c:131 ../common/config_info.c:139
-#: ../common/config_info.c:147 ../common/config_info.c:155
-#: ../common/config_info.c:163 ../common/config_info.c:171
-#: ../common/config_info.c:179 ../common/config_info.c:187
-#: ../common/config_info.c:195
-#| msgid "not recorded\n"
+#: ../common/config_info.c:130 ../common/config_info.c:138
+#: ../common/config_info.c:146 ../common/config_info.c:154
+#: ../common/config_info.c:162 ../common/config_info.c:170
+#: ../common/config_info.c:178 ../common/config_info.c:186
+#: ../common/config_info.c:194
msgid "not recorded"
msgstr "没有被记录"
-#: ../common/controldata_utils.c:52 commands/copy.c:2798
-#: commands/extension.c:3120 utils/adt/genfile.c:134
+#: ../common/controldata_utils.c:58 commands/copy.c:3196
+#: commands/extension.c:3337 utils/adt/genfile.c:151
#, c-format
msgid "could not open file \"%s\" for reading: %m"
msgstr "为了读取, 无法打开文件 \"%s\": %m"
-#: ../common/controldata_utils.c:56
+#: ../common/controldata_utils.c:62
#, c-format
msgid "%s: could not open file \"%s\" for reading: %s\n"
msgstr "%s: 为了读取, 无法打开文件 \"%s\": %s\n"
-#: ../common/controldata_utils.c:66 access/transam/timeline.c:346
-#: access/transam/xlog.c:3193 access/transam/xlog.c:10338
-#: access/transam/xlog.c:10351 access/transam/xlog.c:10714
-#: access/transam/xlog.c:10757 access/transam/xlog.c:10796
-#: access/transam/xlog.c:10839 access/transam/xlogfuncs.c:666
-#: access/transam/xlogfuncs.c:685 commands/extension.c:3130
-#: replication/logical/origin.c:665 replication/logical/origin.c:695
-#: replication/logical/reorderbuffer.c:3077 replication/walsender.c:499
-#: storage/file/copydir.c:176 utils/adt/genfile.c:151
+#: ../common/controldata_utils.c:75 access/transam/timeline.c:347
+#: access/transam/xlog.c:3440 access/transam/xlog.c:10942
+#: access/transam/xlog.c:10955 access/transam/xlog.c:11380
+#: access/transam/xlog.c:11460 access/transam/xlog.c:11499
+#: access/transam/xlog.c:11542 access/transam/xlogfuncs.c:658
+#: access/transam/xlogfuncs.c:677 commands/extension.c:3347 libpq/hba.c:499
+#: replication/logical/origin.c:719 replication/logical/origin.c:749
+#: replication/logical/reorderbuffer.c:3304 replication/walsender.c:510
+#: storage/file/copydir.c:195 utils/adt/genfile.c:168 utils/adt/misc.c:944
#, c-format
msgid "could not read file \"%s\": %m"
msgstr "无法读取文件 \"%s\": %m"
-#: ../common/controldata_utils.c:69
+#: ../common/controldata_utils.c:78
#, c-format
msgid "%s: could not read file \"%s\": %s\n"
msgstr "%s: 无法读取文件 \"%s\": %s\n"
#: ../common/controldata_utils.c:86
-msgid "calculated CRC checksum does not match value stored in file"
-msgstr "计算得到的 CRC 校验与存储在文件中的值不匹配"
+#, c-format
+msgid "could not read file \"%s\": read %d of %d"
+msgstr "无法读取文件\"%1$s\":读取了%3$d中的%2$d"
-#: ../common/controldata_utils.c:88
+#: ../common/controldata_utils.c:90
#, c-format
-msgid ""
-"WARNING: Calculated CRC checksum does not match value stored in file.\n"
-"Either the file is corrupt, or it has a different layout than this program\n"
-"is expecting. The results below are untrustworthy.\n"
-"\n"
-msgstr ""
-"警告: 计算出来的CRC校验值与已保存在文件中的值不匹配.\n"
-"不是文件坏了,就是设计与程序的期望值不同.\n"
-"下面的结果是不可靠的.\n"
-"\n"
+msgid "%s: could not read file \"%s\": read %d of %d\n"
+msgstr "%1$s:无法读取文件\"%2$s\":读取了%4$d中的%3$d\n"
-#: ../common/controldata_utils.c:97
-#| msgid "%s: encoding mismatch\n"
+#: ../common/controldata_utils.c:112
msgid "byte ordering mismatch"
msgstr "字节排序不匹配"
-#: ../common/controldata_utils.c:99
+#: ../common/controldata_utils.c:114
#, c-format
msgid ""
"WARNING: possible byte ordering mismatch\n"
"The byte ordering used to store the pg_control file might not match the one\n"
-"used by this program. In that case the results below would be incorrect, "
-"and\n"
+"used by this program. In that case the results below would be incorrect, and\n"
"the PostgreSQL installation would be incompatible with this data directory.\n"
msgstr ""
"警告: 可能字节顺序不匹配\n"
msgstr "pclose调用失败: %s"
#: ../common/fe_memutils.c:35 ../common/fe_memutils.c:75
-#: ../common/fe_memutils.c:98 ../common/psprintf.c:181 ../port/path.c:632
-#: ../port/path.c:670 ../port/path.c:687
+#: ../common/fe_memutils.c:98 ../common/psprintf.c:182 ../port/path.c:632
+#: ../port/path.c:670 ../port/path.c:687 utils/misc/ps_status.c:171
+#: utils/misc/ps_status.c:179 utils/misc/ps_status.c:209
+#: utils/misc/ps_status.c:217
#, c-format
msgid "out of memory\n"
msgstr "内存溢出\n"
msgid "cannot duplicate null pointer (internal error)\n"
msgstr "无法复制空指针 (内部错误)\n"
+#: ../common/file_utils.c:82 ../common/file_utils.c:186
+#, c-format
+msgid "%s: could not stat file \"%s\": %s\n"
+msgstr "%s: 无法统计文件: \"%s\": %s\n"
+
+#: ../common/file_utils.c:162
+#, c-format
+msgid "%s: could not open directory \"%s\": %s\n"
+msgstr "%s: 无法打开目录 \"%s\": %s\n"
+
+#: ../common/file_utils.c:198
+#, c-format
+msgid "%s: could not read directory \"%s\": %s\n"
+msgstr "%s: 无法读取目录 \"%s\": %s\n"
+
+#: ../common/file_utils.c:231 ../common/file_utils.c:291
+#: ../common/file_utils.c:367
+#, c-format
+msgid "%s: could not open file \"%s\": %s\n"
+msgstr "%s: 无法打开文件 \"%s\": %s\n"
+
+#: ../common/file_utils.c:304 ../common/file_utils.c:376
+#, c-format
+msgid "%s: could not fsync file \"%s\": %s\n"
+msgstr "%s: 无法对文件 \"%s\"进行fsync同步: %s\n"
+
+#: ../common/file_utils.c:387
+#, c-format
+msgid "%s: could not rename file \"%s\" to \"%s\": %s\n"
+msgstr "%s: 无法将文件 \"%s\" 重命名为 \"%s\":%s\n"
+
#: ../common/pgfnames.c:45
#, c-format
msgid "could not open directory \"%s\": %s\n"
msgid "could not close directory \"%s\": %s\n"
msgstr "无法关闭目录 \"%s\": %s\n"
-#: ../common/psprintf.c:179 ../port/path.c:630 ../port/path.c:668
-#: ../port/path.c:685 access/transam/twophase.c:1261
-#: access/transam/xlog.c:6069 lib/stringinfo.c:258 libpq/auth.c:847
-#: libpq/auth.c:1210 libpq/auth.c:1278 libpq/auth.c:1794
-#: postmaster/bgworker.c:289 postmaster/bgworker.c:797
-#: postmaster/postmaster.c:2323 postmaster/postmaster.c:2354
-#: postmaster/postmaster.c:3886 postmaster/postmaster.c:4576
-#: postmaster/postmaster.c:4644 postmaster/postmaster.c:5343
-#: postmaster/postmaster.c:5596 replication/logical/logical.c:170
-#: storage/buffer/localbuf.c:422 storage/file/fd.c:729 storage/file/fd.c:1126
-#: storage/file/fd.c:1244 storage/file/fd.c:1916 storage/ipc/procarray.c:1060
-#: storage/ipc/procarray.c:1546 storage/ipc/procarray.c:1553
-#: storage/ipc/procarray.c:1967 storage/ipc/procarray.c:2570
-#: utils/adt/formatting.c:1523 utils/adt/formatting.c:1643
-#: utils/adt/formatting.c:1764 utils/adt/regexp.c:219 utils/adt/varlena.c:4440
-#: utils/adt/varlena.c:4461 utils/fmgr/dfmgr.c:216 utils/hash/dynahash.c:431
-#: utils/hash/dynahash.c:537 utils/hash/dynahash.c:1049 utils/mb/mbutils.c:376
-#: utils/mb/mbutils.c:709 utils/misc/guc.c:3885 utils/misc/guc.c:3901
-#: utils/misc/guc.c:3914 utils/misc/guc.c:6859 utils/misc/tzparser.c:470
-#: utils/mmgr/aset.c:505 utils/mmgr/mcxt.c:770 utils/mmgr/mcxt.c:805
-#: utils/mmgr/mcxt.c:842 utils/mmgr/mcxt.c:879 utils/mmgr/mcxt.c:913
-#: utils/mmgr/mcxt.c:942 utils/mmgr/mcxt.c:976 utils/mmgr/mcxt.c:1058
-#: utils/mmgr/mcxt.c:1092 utils/mmgr/mcxt.c:1141
+#: ../common/psprintf.c:180 ../port/path.c:630 ../port/path.c:668
+#: ../port/path.c:685 access/transam/twophase.c:1383 access/transam/xlog.c:6482
+#: lib/dshash.c:246 lib/stringinfo.c:277 libpq/auth.c:1134 libpq/auth.c:1505
+#: libpq/auth.c:1573 libpq/auth.c:2091 postmaster/bgworker.c:337
+#: postmaster/bgworker.c:907 postmaster/postmaster.c:2390
+#: postmaster/postmaster.c:2412 postmaster/postmaster.c:3979
+#: postmaster/postmaster.c:4687 postmaster/postmaster.c:4762
+#: postmaster/postmaster.c:5454 postmaster/postmaster.c:5791
+#: replication/libpqwalreceiver/libpqwalreceiver.c:260
+#: replication/logical/logical.c:179 storage/buffer/localbuf.c:436
+#: storage/file/fd.c:781 storage/file/fd.c:1220 storage/file/fd.c:1381
+#: storage/file/fd.c:2294 storage/ipc/procarray.c:1066
+#: storage/ipc/procarray.c:1554 storage/ipc/procarray.c:1561
+#: storage/ipc/procarray.c:1982 storage/ipc/procarray.c:2606
+#: utils/adt/cryptohashes.c:45 utils/adt/cryptohashes.c:65
+#: utils/adt/formatting.c:1568 utils/adt/formatting.c:1690
+#: utils/adt/formatting.c:1813 utils/adt/pg_locale.c:468
+#: utils/adt/pg_locale.c:652 utils/adt/regexp.c:223 utils/fmgr/dfmgr.c:221
+#: utils/hash/dynahash.c:448 utils/hash/dynahash.c:557
+#: utils/hash/dynahash.c:1069 utils/mb/mbutils.c:365 utils/mb/mbutils.c:698
+#: utils/misc/guc.c:4240 utils/misc/guc.c:4256 utils/misc/guc.c:4269
+#: utils/misc/guc.c:7244 utils/misc/tzparser.c:468 utils/mmgr/aset.c:484
+#: utils/mmgr/dsa.c:714 utils/mmgr/dsa.c:796 utils/mmgr/generation.c:249
+#: utils/mmgr/mcxt.c:796 utils/mmgr/mcxt.c:832 utils/mmgr/mcxt.c:870
+#: utils/mmgr/mcxt.c:908 utils/mmgr/mcxt.c:944 utils/mmgr/mcxt.c:975
+#: utils/mmgr/mcxt.c:1011 utils/mmgr/mcxt.c:1063 utils/mmgr/mcxt.c:1098
+#: utils/mmgr/mcxt.c:1133 utils/mmgr/slab.c:239
#, c-format
msgid "out of memory"
msgstr "内存用尽"
-#: ../common/relpath.c:59
+#: ../common/relpath.c:58
#, c-format
msgid "invalid fork name"
msgstr "无效分支名称"
-#: ../common/relpath.c:60
+#: ../common/relpath.c:59
#, c-format
msgid "Valid fork names are \"main\", \"fsm\", \"vm\", and \"init\"."
msgstr "有效的分支名称是 \"main\", \"fsm\", \"vm\"和\"init\"."
msgid "could not remove file or directory \"%s\": %s\n"
msgstr "无法删除目录 \"%s\": %s\n"
-#: ../common/username.c:45
+#: ../common/saslprep.c:1093
+#, c-format
+msgid "password too long"
+msgstr "密码太长"
+
+#: ../common/username.c:43
#, c-format
msgid "could not look up effective user ID %ld: %s"
msgstr "无法找到有效的用户ID %ld: %s"
-#: ../common/username.c:47 libpq/auth.c:1741
+#: ../common/username.c:45 libpq/auth.c:2038
msgid "user does not exist"
msgstr "用户不存在"
-#: ../common/username.c:62
+#: ../common/username.c:60
#, c-format
msgid "user name lookup failure: error code %lu"
msgstr "用户名查找失败:错误代码是%lu"
-#: ../common/wait_error.c:47
+#: ../common/wait_error.c:45
#, c-format
msgid "command not executable"
msgstr "命令无法执行"
-#: ../common/wait_error.c:51
+#: ../common/wait_error.c:49
#, c-format
msgid "command not found"
msgstr "命令没有找到"
-#: ../common/wait_error.c:56
+#: ../common/wait_error.c:54
#, c-format
msgid "child process exited with exit code %d"
msgstr "子进程已退出, 退出码为 %d"
-#: ../common/wait_error.c:63
+#: ../common/wait_error.c:61
#, c-format
msgid "child process was terminated by exception 0x%X"
msgstr "子进程被例外(exception) 0x%X 终止"
-#: ../common/wait_error.c:73
+#: ../common/wait_error.c:71
#, c-format
msgid "child process was terminated by signal %s"
msgstr "子进程被信号 %s 终止"
-#: ../common/wait_error.c:77
+#: ../common/wait_error.c:75
#, c-format
msgid "child process was terminated by signal %d"
msgstr "子进程被信号 %d 终止"
-#: ../common/wait_error.c:82
+#: ../common/wait_error.c:80
#, c-format
msgid "child process exited with unrecognized status %d"
msgstr "子进程已退出, 未知状态 %d"
-#: ../port/chklocale.c:259
+#: ../port/chklocale.c:288
#, c-format
msgid "could not determine encoding for codeset \"%s\""
msgstr "无法确定字符集的编码\"%s\""
-#: ../port/chklocale.c:260 ../port/chklocale.c:389
-#: postmaster/postmaster.c:4876
-#, c-format
-msgid "Please report this to <pgsql-bugs@postgresql.org>."
-msgstr "请向 <pgsql-bugs@postgresql.org>发送报告."
-
-#: ../port/chklocale.c:381 ../port/chklocale.c:387
+#: ../port/chklocale.c:409 ../port/chklocale.c:415
#, c-format
msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
msgstr "无法确定语言环境\"%s\"的编码: 代码集是\"%s\""
msgstr "无法得到联接 \"%s\": %s\n"
# fe-lobj.c:400 fe-lobj.c:483
-#: ../port/open.c:112
+#: ../port/open.c:111
#, c-format
msgid "could not open file \"%s\": %s"
msgstr "无法打开文件 \"%s\": %s"
-#: ../port/open.c:113
+#: ../port/open.c:112
msgid "lock violation"
msgstr "锁冲突"
-#: ../port/open.c:113
+#: ../port/open.c:112
msgid "sharing violation"
msgstr "共享冲突"
-#: ../port/open.c:114
+#: ../port/open.c:113
#, c-format
msgid "Continuing to retry for 30 seconds."
msgstr "继续重新尝试30秒"
-#: ../port/open.c:115
+#: ../port/open.c:114
#, c-format
-msgid ""
-"You might have antivirus, backup, or similar software interfering with the "
-"database system."
+msgid "You might have antivirus, backup, or similar software interfering with the database system."
msgstr "您可能有反病毒,备份或类似的软件与数据库系统冲突"
#: ../port/path.c:654
msgid "unrecognized error %d"
msgstr "未知的 SSL 错误码: %d"
-#: access/brin/brin.c:817
+#: ../port/win32security.c:62
+#, c-format
+msgid "could not get SID for Administrators group: error code %lu\n"
+msgstr "无法获取管理员组的SID : 错误码 %lu\n"
+
+#: ../port/win32security.c:72
+#, c-format
+msgid "could not get SID for PowerUsers group: error code %lu\n"
+msgstr "无法获取PowerUsers组的SID:错误代码%lu\n"
+
+#: ../port/win32security.c:80
+#, c-format
+msgid "could not check access token membership: error code %lu\n"
+msgstr "无法检查访问令牌成员身份: 错误码 %lu\n"
+
+#: access/brin/brin.c:200
+#, c-format
+msgid "request for BRIN range summarization for index \"%s\" page %u was not recorded"
+msgstr "未记录对索引\"%s\"页%u的BRIN范围摘要的请求"
+
+#: access/brin/brin.c:877 access/brin/brin.c:954 access/gin/ginfast.c:1018
+#: access/transam/xlog.c:10354 access/transam/xlog.c:10881
+#: access/transam/xlogfuncs.c:286 access/transam/xlogfuncs.c:313
+#: access/transam/xlogfuncs.c:352 access/transam/xlogfuncs.c:373
+#: access/transam/xlogfuncs.c:394 access/transam/xlogfuncs.c:464
+#: access/transam/xlogfuncs.c:520
+#, c-format
+msgid "recovery is in progress"
+msgstr "恢复操作正在进行中"
+
+#: access/brin/brin.c:878 access/brin/brin.c:955
+#, c-format
+msgid "BRIN control functions cannot be executed during recovery."
+msgstr "在恢复期间无法执行BRIN控制函数"
+
+#: access/brin/brin.c:886 access/brin/brin.c:963
+#, c-format
+msgid "block number out of range: %s"
+msgstr "块号超出范围: %s"
+
+#: access/brin/brin.c:909 access/brin/brin.c:986
#, c-format
-#| msgid "\"%s\" is not an index"
msgid "\"%s\" is not a BRIN index"
msgstr "\"%s\" 不是一个 BRIN 索引"
-#: access/brin/brin.c:833
+#: access/brin/brin.c:925 access/brin/brin.c:1002
#, c-format
-#| msgid "could not open two-phase state file \"%s\": %m"
msgid "could not open parent table of index %s"
msgstr "无法打开索引 %s 的父表"
-#: access/brin/brin_pageops.c:76 access/brin/brin_pageops.c:369
-#: access/brin/brin_pageops.c:844
+#: access/brin/brin_pageops.c:77 access/brin/brin_pageops.c:363
+#: access/brin/brin_pageops.c:844 access/gin/ginentrypage.c:110
+#: access/gist/gist.c:1381 access/nbtree/nbtinsert.c:678
+#: access/nbtree/nbtsort.c:830 access/spgist/spgdoinsert.c:1957
+#, c-format
+msgid "index row size %zu exceeds maximum %zu for index \"%s\""
+msgstr "索引行的大小 %1$zu 超过了索引\"%3$s\"所允许的最大值%2$zu"
+
+#: access/brin/brin_revmap.c:382 access/brin/brin_revmap.c:388
#, c-format
-msgid "index row size %lu exceeds maximum %lu for index \"%s\""
-msgstr "索引行的大小%1$lu超过了索引\"%3$s\"的最大值%2$lu"
+msgid "corrupted BRIN index: inconsistent range map"
+msgstr "损坏的BRIN索引:范围映射不一致"
-#: access/brin/brin_revmap.c:456
+#: access/brin/brin_revmap.c:404
+#, c-format
+msgid "leftover placeholder tuple detected in BRIN index \"%s\", deleting"
+msgstr "在BRIN索引\"%s\"中检测到剩余的占位符元组,正在删除"
+
+#: access/brin/brin_revmap.c:601
#, c-format
msgid "unexpected page type 0x%04X in BRIN index \"%s\" block %u"
msgstr "意料之外的页类型0x%04X出现在BRIN索引\"%s\"的块%u中"
-#: access/brin/brin_validate.c:115
+#: access/brin/brin_validate.c:116 access/gin/ginvalidate.c:149
+#: access/gist/gistvalidate.c:146 access/hash/hashvalidate.c:132
+#: access/nbtree/nbtvalidate.c:110 access/spgist/spgvalidate.c:165
#, c-format
-msgid "brin opfamily %s contains function %s with invalid support number %d"
-msgstr "brin opfamily %s 包含的函数 %s 具有无效的支持号 %d"
+msgid "operator family \"%s\" of access method %s contains function %s with invalid support number %d"
+msgstr "访问方法%2$s的运算符族\"%1$s\"包含具有无效支持编号 %4$d 的函数 %3$s"
-#: access/brin/brin_validate.c:131
+#: access/brin/brin_validate.c:132 access/gin/ginvalidate.c:161
+#: access/gist/gistvalidate.c:158 access/hash/hashvalidate.c:115
+#: access/nbtree/nbtvalidate.c:122 access/spgist/spgvalidate.c:177
#, c-format
-msgid ""
-"brin opfamily %s contains function %s with wrong signature for support "
-"number %d"
-msgstr "brin opfamily %s 包含的函数 %s 具有错误的支持号签名 %d"
+msgid "operator family \"%s\" of access method %s contains function %s with wrong signature for support number %d"
+msgstr "访问方法%2$s的运算符族\"%1$s\"包含的函数 %3$s 对支持编号 %4$d 具有错误的签名"
-#: access/brin/brin_validate.c:153
+#: access/brin/brin_validate.c:154 access/gin/ginvalidate.c:180
+#: access/gist/gistvalidate.c:178 access/hash/hashvalidate.c:153
+#: access/nbtree/nbtvalidate.c:142 access/spgist/spgvalidate.c:196
#, c-format
-msgid "brin opfamily %s contains operator %s with invalid strategy number %d"
-msgstr "brin opfamily %s 包含的操作符 %s 具有无效的策略号 %d"
+msgid "operator family \"%s\" of access method %s contains operator %s with invalid strategy number %d"
+msgstr "访问方法%2$s的运算符族\"%1$s\"包含具有无效策略编号 %4$d 的操作符 %3$s"
-#: access/brin/brin_validate.c:182
+#: access/brin/brin_validate.c:183 access/gin/ginvalidate.c:193
+#: access/hash/hashvalidate.c:166 access/nbtree/nbtvalidate.c:155
+#: access/spgist/spgvalidate.c:209
#, c-format
-msgid ""
-"brin opfamily %s contains invalid ORDER BY specification for operator %s"
-msgstr "brin opfamily %s 包含的操作符 %s 的无效 ORDER BY 说明"
+msgid "operator family \"%s\" of access method %s contains invalid ORDER BY specification for operator %s"
+msgstr "访问方法%2$s的运算符族\"%1$s\"包含操作符 %3$s 的无效 ORDER BY 声明"
-#: access/brin/brin_validate.c:195
+#: access/brin/brin_validate.c:196 access/gin/ginvalidate.c:206
+#: access/gist/gistvalidate.c:226 access/hash/hashvalidate.c:179
+#: access/nbtree/nbtvalidate.c:168 access/spgist/spgvalidate.c:222
#, c-format
-msgid "brin opfamily %s contains operator %s with wrong signature"
-msgstr "brin opfamily %s 包含的操作符 %s 具有错误的签名"
+msgid "operator family \"%s\" of access method %s contains operator %s with wrong signature"
+msgstr "访问方法%2$s的运算符族\"%1$s\"包含具有错误签名的操作符 %3$s"
-#: access/brin/brin_validate.c:233
+#: access/brin/brin_validate.c:234 access/hash/hashvalidate.c:219
+#: access/nbtree/nbtvalidate.c:226 access/spgist/spgvalidate.c:249
#, c-format
-msgid "brin opfamily %s is missing operator(s) for types %s and %s"
-msgstr "brin opfamily %s 中缺少用于类型 %s 和 %s 的操作符"
+msgid "operator family \"%s\" of access method %s is missing operator(s) for types %s and %s"
+msgstr "访问方法%2$s的运算符族\"%1$s\"缺少类型 %3$s 和 %4$s 的操作符"
-#: access/brin/brin_validate.c:243
+#: access/brin/brin_validate.c:244
#, c-format
-msgid "brin opfamily %s is missing support function(s) for types %s and %s"
-msgstr "brin opfamily %s 中缺少用于类型 %s 和 %s 的支持函数"
+msgid "operator family \"%s\" of access method %s is missing support function(s) for types %s and %s"
+msgstr "访问方法%2$s的运算符族\"%1$s\"中缺少用于类型 %3$s 和 %4$s 的支持函数"
-#: access/brin/brin_validate.c:256
+#: access/brin/brin_validate.c:257 access/hash/hashvalidate.c:233
+#: access/nbtree/nbtvalidate.c:250 access/spgist/spgvalidate.c:282
#, c-format
-msgid "brin opclass %s is missing operator(s)"
-msgstr "brin opclass %s 缺少操作符"
+msgid "operator class \"%s\" of access method %s is missing operator(s)"
+msgstr "访问方法 %2$s 操作符表 \"%1$s\" 缺少运算符"
-#: access/brin/brin_validate.c:267
+#: access/brin/brin_validate.c:268 access/gin/ginvalidate.c:247
+#: access/gist/gistvalidate.c:266
#, c-format
-#| msgid "return type %s is not supported for SQL functions"
-msgid "brin opclass %s is missing support function %d"
-msgstr "brin opclass %s 缺少支持函数 %d"
+msgid "operator class \"%s\" of access method %s is missing support function %d"
+msgstr "访问方法 %2$s 操作符表 \"%1$s\"缺少支持函数 %3$d"
-#: access/common/heaptuple.c:708 access/common/heaptuple.c:1339
+#: access/common/heaptuple.c:1080 access/common/heaptuple.c:1796
#, c-format
msgid "number of columns (%d) exceeds limit (%d)"
msgstr "字段个数 (%d) 超出限制 (%d)"
-#: access/common/indextuple.c:60
+#: access/common/indextuple.c:63
#, c-format
msgid "number of index columns (%d) exceeds limit (%d)"
msgstr "索引字段个数 (%d) 超出限制 (%d)"
-#: access/common/indextuple.c:176 access/spgist/spgutils.c:646
+#: access/common/indextuple.c:179 access/spgist/spgutils.c:685
#, c-format
msgid "index row requires %zu bytes, maximum size is %zu"
msgstr "索引行需要 %zu 字节, 最大值为 %zu"
-#: access/common/printtup.c:294 tcop/fastpath.c:182 tcop/fastpath.c:544
-#: tcop/postgres.c:1721
+#: access/common/printtup.c:365 tcop/fastpath.c:180 tcop/fastpath.c:530
+#: tcop/postgres.c:1778
#, c-format
msgid "unsupported format code: %d"
msgstr "不支持的格式代码: %d"
-#: access/common/reloptions.c:488
+#: access/common/reloptions.c:568
#, c-format
msgid "user-defined relation parameter types limit exceeded"
msgstr "用户定义的关系参数类型超过限制"
-#: access/common/reloptions.c:770
+#: access/common/reloptions.c:849
#, c-format
msgid "RESET must not include values for parameters"
msgstr "RESET中不能包含参数的值"
-#: access/common/reloptions.c:803
+#: access/common/reloptions.c:881
#, c-format
msgid "unrecognized parameter namespace \"%s\""
msgstr "未识别的参数命名空间 \"%s\""
-#: access/common/reloptions.c:1045 parser/parse_clause.c:281
+#: access/common/reloptions.c:1121 parser/parse_clause.c:277
#, c-format
msgid "unrecognized parameter \"%s\""
msgstr "未识别的参数 \"%s\""
-#: access/common/reloptions.c:1075
+#: access/common/reloptions.c:1151
#, c-format
msgid "parameter \"%s\" specified more than once"
msgstr "表名 \"%s\" 被指定多次"
-#: access/common/reloptions.c:1091
+#: access/common/reloptions.c:1167
#, c-format
msgid "invalid value for boolean option \"%s\": %s"
msgstr "布尔选项\"%s\"的值无效:%s"
-#: access/common/reloptions.c:1103
+#: access/common/reloptions.c:1179
#, c-format
msgid "invalid value for integer option \"%s\": %s"
msgstr "参数 \"%s\" 的值无效: \"%s\""
-#: access/common/reloptions.c:1109 access/common/reloptions.c:1129
+#: access/common/reloptions.c:1185 access/common/reloptions.c:1205
#, c-format
msgid "value %s out of bounds for option \"%s\""
msgstr "值 %s超出了选项\"%s\"的范围"
-#: access/common/reloptions.c:1111
+#: access/common/reloptions.c:1187
#, c-format
msgid "Valid values are between \"%d\" and \"%d\"."
msgstr "有效值在\"%d\"和\"%d\"之间."
-#: access/common/reloptions.c:1123
+#: access/common/reloptions.c:1199
#, c-format
msgid "invalid value for floating point option \"%s\": %s"
msgstr "浮点数类型选项\"%s\"的值无效:%s"
-#: access/common/reloptions.c:1131
+#: access/common/reloptions.c:1207
#, c-format
msgid "Valid values are between \"%f\" and \"%f\"."
msgstr "有效值在 \"%f\"和 \"%f\"之间"
#: access/common/tupconvert.c:136
#, c-format
-msgid ""
-"Number of returned columns (%d) does not match expected column count (%d)."
+msgid "Number of returned columns (%d) does not match expected column count (%d)."
msgstr "所返回列的数量(%d)与所期望列的数量(%d)不匹配."
-#: access/common/tupconvert.c:241
+#: access/common/tupconvert.c:329
#, c-format
-msgid ""
-"Attribute \"%s\" of type %s does not match corresponding attribute of type "
-"%s."
+msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s."
msgstr "类型%2$s的属性\"%1$s\"与对应类型%3$s的属性不匹配。"
-#: access/common/tupconvert.c:253
+#: access/common/tupconvert.c:341
#, c-format
msgid "Attribute \"%s\" of type %s does not exist in type %s."
msgstr "类型%2$s的属性\"%1$s\"在类型%3$s中不存在."
-#: access/common/tupdesc.c:635 parser/parse_relation.c:1517
+#: access/common/tupdesc.c:837 parser/parse_clause.c:819
+#: parser/parse_relation.c:1539
#, c-format
msgid "column \"%s\" cannot be declared SETOF"
msgstr "字段 \"%s\" 不能被声明为 SETOF"
#: access/gin/ginbulk.c:44
#, c-format
-#| msgid "payload string too long"
msgid "posting list is too long"
msgstr "位置列表太长"
#: access/gin/ginbulk.c:45
#, c-format
-msgid "Reduce maintenance_work_mem"
+msgid "Reduce maintenance_work_mem."
msgstr "减小 maintenance_work_mem"
-#: access/gin/ginentrypage.c:109 access/gist/gist.c:1354
-#: access/nbtree/nbtinsert.c:575 access/nbtree/nbtsort.c:488
-#: access/spgist/spgdoinsert.c:1915
-#, c-format
-msgid "index row size %zu exceeds maximum %zu for index \"%s\""
-msgstr "索引行的大小 %1$zu 超过了索引\"%3$s\"所允许的最大值%2$zu"
-
-#: access/gin/ginfast.c:979 access/transam/xlog.c:9795
-#: access/transam/xlog.c:10266 access/transam/xlogfuncs.c:294
-#: access/transam/xlogfuncs.c:321 access/transam/xlogfuncs.c:360
-#: access/transam/xlogfuncs.c:381 access/transam/xlogfuncs.c:402
-#: access/transam/xlogfuncs.c:472 access/transam/xlogfuncs.c:528
-#, c-format
-msgid "recovery is in progress"
-msgstr "恢复操作正在进行中"
-
-#: access/gin/ginfast.c:980
+#: access/gin/ginfast.c:1019
#, c-format
-#| msgid "WAL control functions cannot be executed during recovery."
msgid "GIN pending list cannot be cleaned up during recovery."
msgstr "在恢复期间不能清理 GIN 待处理列表。"
-#: access/gin/ginfast.c:987
+#: access/gin/ginfast.c:1026
#, c-format
-#| msgid "\"%s\" is not an index"
msgid "\"%s\" is not a GIN index"
msgstr "\"%s\" 不是一个 GIN 索引"
-#: access/gin/ginfast.c:998
+#: access/gin/ginfast.c:1037
#, c-format
-#| msgid "cannot access temporary tables of other sessions"
msgid "cannot access temporary indexes of other sessions"
msgstr "不能访问其他会话的临时索引"
-#: access/gin/ginscan.c:409
+#: access/gin/ginscan.c:402
#, c-format
msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
msgstr "老的GIN索引不支持完整索引 (whole-index) 扫描,也不支持null值搜索"
-#: access/gin/ginscan.c:410
+#: access/gin/ginscan.c:403
#, c-format
msgid "To fix this, do REINDEX INDEX \"%s\"."
msgstr "要解决此问题, 可执行REINDEX INDEX \"%s\"."
-#: access/gin/ginvalidate.c:92
-#, c-format
-msgid ""
-"gin opfamily %s contains support procedure %s with cross-type registration"
-msgstr "gin opfamily %s 包含的支持过程 %s 被注册在多种类型中"
-
-#: access/gin/ginvalidate.c:148
-#, c-format
-msgid "gin opfamily %s contains function %s with invalid support number %d"
-msgstr "gin opfamily %1$s 包含具有无效支持编号 %3$d 的函数 %2$s"
-
-#: access/gin/ginvalidate.c:160
-#, c-format
-msgid ""
-"gin opfamily %s contains function %s with wrong signature for support number "
-"%d"
-msgstr "gin opfamily %1$s 包含的函数 %2$s 对支持编号 %3$d 具有错误的签名"
-
-#: access/gin/ginvalidate.c:179
-#, c-format
-msgid "gin opfamily %s contains operator %s with invalid strategy number %d"
-msgstr "gin opfamily %1$s 包含具有无效策略编号 %3$d 的操作符 %2$s"
-
-#: access/gin/ginvalidate.c:192
-#, c-format
-msgid "gin opfamily %s contains invalid ORDER BY specification for operator %s"
-msgstr "gin opfamily %s 包含操作符 %s 的无效 ORDER BY 声明"
-
-#: access/gin/ginvalidate.c:205
+#: access/gin/ginutil.c:138 executor/execExpr.c:1868
+#: utils/adt/arrayfuncs.c:3789 utils/adt/arrayfuncs.c:6387
+#: utils/adt/rowtypes.c:935
#, c-format
-msgid "gin opfamily %s contains operator %s with wrong signature"
-msgstr "gin opfamily %s 包含具有错误签名的操作符 %s"
+msgid "could not identify a comparison function for type %s"
+msgstr "无法为类型 %s 确认一个比对函数"
-#: access/gin/ginvalidate.c:246
+#: access/gin/ginvalidate.c:93 access/gist/gistvalidate.c:93
+#: access/hash/hashvalidate.c:99 access/spgist/spgvalidate.c:99
#, c-format
-msgid "gin opclass %s is missing support function %d"
-msgstr "gin opclass %s 缺少支持函数 %d"
+msgid "operator family \"%s\" of access method %s contains support function %s with different left and right input types"
+msgstr "访问方法%2$s的运算符族 \"%1$s\"包含支持函数%3$s,具有不同的左右输入类型"
-#: access/gin/ginvalidate.c:256
+#: access/gin/ginvalidate.c:257
#, c-format
-msgid "gin opclass %s is missing support function %d or %d"
-msgstr "gin opclass %s 缺少支持函数 %d 或 %d"
+msgid "operator class \"%s\" of access method %s is missing support function %d or %d"
+msgstr "访问方法%2$s的运算符类 \"%1$s\"缺少支持函数 %3$d 或 %4$d"
-#: access/gist/gist.c:692 access/gist/gistvacuum.c:258
+#: access/gist/gist.c:717 access/gist/gistvacuum.c:258
#, c-format
msgid "index \"%s\" contains an inner tuple marked as invalid"
msgstr "索引\"%s\"包含无效的内部元组"
-#: access/gist/gist.c:694 access/gist/gistvacuum.c:260
+#: access/gist/gist.c:719 access/gist/gistvacuum.c:260
#, c-format
-msgid ""
-"This is caused by an incomplete page split at crash recovery before "
-"upgrading to PostgreSQL 9.1."
+msgid "This is caused by an incomplete page split at crash recovery before upgrading to PostgreSQL 9.1."
msgstr "这是在升级到PostgreSQL 9.1之前执行灾难恢复时不完全的页分裂引起的."
-#: access/gist/gist.c:695 access/gist/gistutil.c:735
-#: access/gist/gistutil.c:746 access/gist/gistvacuum.c:261
-#: access/hash/hashutil.c:172 access/hash/hashutil.c:183
-#: access/hash/hashutil.c:195 access/hash/hashutil.c:216
-#: access/nbtree/nbtpage.c:518 access/nbtree/nbtpage.c:529
+#: access/gist/gist.c:720 access/gist/gistutil.c:759 access/gist/gistutil.c:770
+#: access/gist/gistvacuum.c:261 access/hash/hashutil.c:241
+#: access/hash/hashutil.c:252 access/hash/hashutil.c:264
+#: access/hash/hashutil.c:285 access/nbtree/nbtpage.c:678
+#: access/nbtree/nbtpage.c:689
#, c-format
msgid "Please REINDEX it."
msgstr "请重建索引 (REINDEX)."
-#: access/gist/gistbuild.c:249
+#: access/gist/gistbuild.c:252
#, c-format
msgid "invalid value for \"buffering\" option"
msgstr "\"buffering\"选项值无效"
-#: access/gist/gistbuild.c:250
+#: access/gist/gistbuild.c:253
#, c-format
msgid "Valid values are \"on\", \"off\", and \"auto\"."
msgstr "有效值为\"on\", \"off\", 或 \"auto\"之一."
-#: access/gist/gistbuildbuffers.c:778 utils/sort/logtape.c:209
+#: access/gist/gistbuildbuffers.c:778 utils/sort/logtape.c:255
#, c-format
msgid "could not write block %ld of temporary file: %m"
msgstr "无法写入临时文件块 %ld: %m"
#: access/gist/gistsplit.c:448
#, c-format
-msgid ""
-"The index is not optimal. To optimize it, contact a developer, or try to use "
-"the column as the second one in the CREATE INDEX command."
-msgstr ""
-"索引没有优化.为了优化索引,请联系开发人员,或者在CREATE INDEX命令中尝试在这一列"
-"上创建第二个索引."
+msgid "The index is not optimal. To optimize it, contact a developer, or try to use the column as the second one in the CREATE INDEX command."
+msgstr "索引没有优化.为了优化索引,请联系开发人员,或者在CREATE INDEX命令中尝试在这一列上创建第二个索引."
-#: access/gist/gistutil.c:732 access/hash/hashutil.c:169
-#: access/nbtree/nbtpage.c:515
+#: access/gist/gistutil.c:756 access/hash/hashutil.c:238
+#: access/nbtree/nbtpage.c:675
#, c-format
msgid "index \"%s\" contains unexpected zero page at block %u"
msgstr "索引\"%s\"在块%u上包含未期望的零页"
-#: access/gist/gistutil.c:743 access/hash/hashutil.c:180
-#: access/hash/hashutil.c:192 access/nbtree/nbtpage.c:526
+#: access/gist/gistutil.c:767 access/hash/hashutil.c:249
+#: access/hash/hashutil.c:261 access/nbtree/nbtpage.c:686
#, c-format
msgid "index \"%s\" contains corrupted page at block %u"
msgstr "索引\"%s\"在块%u上包含已损坏的页"
-#: access/gist/gistvalidate.c:92
-#, c-format
-msgid ""
-"gist opfamily %s contains support procedure %s with cross-type registration"
-msgstr "gist opfamily %s 包含具有跨类型注册的支持过程 %s"
-
-#: access/gist/gistvalidate.c:145
-#, c-format
-msgid "gist opfamily %s contains function %s with invalid support number %d"
-msgstr "gist opfamily %1$s 包含具有无效支持编号 %3$d 的函数 %2$s"
-
-#: access/gist/gistvalidate.c:157
-#, c-format
-msgid ""
-"gist opfamily %s contains function %s with wrong signature for support "
-"number %d"
-msgstr "gist opfamily %1$s 包含的函数 %2$s 对支持编号 %3$d 具有错误的签名"
-
-#: access/gist/gistvalidate.c:177
+#: access/gist/gistvalidate.c:196
#, c-format
-msgid "gist opfamily %s contains operator %s with invalid strategy number %d"
-msgstr "gist opfamily %1$s 包含具有无效策略编号 %3$d 的操作符 %2$s"
+msgid "operator family \"%s\" of access method %s contains unsupported ORDER BY specification for operator %s"
+msgstr "访问方法%1$s的运算符族\"%2$s\"包含操作符 %3$s 的不支持的 ORDER BY 声明"
-#: access/gist/gistvalidate.c:195
+#: access/gist/gistvalidate.c:207
#, c-format
-msgid ""
-"gist opfamily %s contains unsupported ORDER BY specification for operator %s"
-msgstr "gist opfamily %s 包含操作符 %s 的不支持的 ORDER BY 声明"
-
-#: access/gist/gistvalidate.c:206
-#, c-format
-msgid ""
-"gist opfamily %s contains incorrect ORDER BY opfamily specification for "
-"operator %s"
-msgstr "gist opfamily %s 包含操作符 %s 的不正确的 ORDER BY opfamily 声明"
-
-#: access/gist/gistvalidate.c:225
-#, c-format
-msgid "gist opfamily %s contains operator %s with wrong signature"
-msgstr "gist opfamily %s 包含具有错误签名的操作符 %s"
-
-#: access/gist/gistvalidate.c:264
-#, c-format
-msgid "gist opclass %s is missing support function %d"
-msgstr "gist opclass %s 缺少支持函数 %d"
+msgid "operator family \"%s\" of access method %s contains incorrect ORDER BY opfamily specification for operator %s"
+msgstr "访问方法%1$s的运算符族\"%2$s\"包含操作符 %3$s 的不正确的 ORDER BY opfamily 声明"
-#: access/hash/hashinsert.c:69
+#: access/hash/hashinsert.c:83
#, c-format
msgid "index row size %zu exceeds hash maximum %zu"
msgstr "索引行大小 %zu 超过散列最大值 %zu"
-#: access/hash/hashinsert.c:71 access/spgist/spgdoinsert.c:1919
-#: access/spgist/spgutils.c:707
+#: access/hash/hashinsert.c:85 access/spgist/spgdoinsert.c:1961
+#: access/spgist/spgutils.c:746
#, c-format
msgid "Values larger than a buffer page cannot be indexed."
msgstr "大于一个缓冲页的值无法用于创建索引."
-#: access/hash/hashovfl.c:548
+#: access/hash/hashovfl.c:87
+#, c-format
+msgid "invalid overflow block number %u"
+msgstr "无效的溢出块编号%u"
+
+#: access/hash/hashovfl.c:283 access/hash/hashpage.c:463
#, c-format
msgid "out of overflow pages in hash index \"%s\""
msgstr "散列索引 \"%s\" 中页溢出"
-#: access/hash/hashsearch.c:153
+#: access/hash/hashsearch.c:315
#, c-format
msgid "hash indexes do not support whole-index scans"
msgstr "散列索引不支持完整索引 (whole-index) 扫描"
-#: access/hash/hashutil.c:208
+#: access/hash/hashutil.c:277
#, c-format
msgid "index \"%s\" is not a hash index"
msgstr "索引 \"%s\" 不是一个散列索引"
-#: access/hash/hashutil.c:214
+#: access/hash/hashutil.c:283
#, c-format
msgid "index \"%s\" has wrong hash version"
msgstr "索引 \"%s\" 有错误的散列版本"
-#: access/hash/hashvalidate.c:98
-#, c-format
-msgid ""
-"hash opfamily %s contains support procedure %s with cross-type registration"
-msgstr "hash opfamily %s 包含具有跨类型注册的支持过程 %s"
-
-#: access/hash/hashvalidate.c:113
-#, c-format
-msgid ""
-"hash opfamily %s contains function %s with wrong signature for support "
-"number %d"
-msgstr "hash opfamily %1$s 包含的函数 %2$s 对支持编号 %3$d 具有错误的签名"
-
-#: access/hash/hashvalidate.c:130
+#: access/hash/hashvalidate.c:191
#, c-format
-msgid "hash opfamily %s contains function %s with invalid support number %d"
-msgstr "hash opfamily %1$s 包含具有无效支持编号 %3$d 的函数 %2$s"
+msgid "operator family \"%s\" of access method %s lacks support function for operator %s"
+msgstr "访问方法%1$s的运算符族\"%2$s\"缺少操作符 %3$s 的支持函数"
-#: access/hash/hashvalidate.c:151
+#: access/hash/hashvalidate.c:249 access/nbtree/nbtvalidate.c:266
#, c-format
-msgid "hash opfamily %s contains operator %s with invalid strategy number %d"
-msgstr "hash opfamily %1$s 包含具有无效策略编号 %3$d 的操作符 %2$s"
-
-#: access/hash/hashvalidate.c:164
-#, c-format
-msgid ""
-"hash opfamily %s contains invalid ORDER BY specification for operator %s"
-msgstr "hash opfamily %s 包含操作符 %s 的无效 ORDER BY 声明"
-
-#: access/hash/hashvalidate.c:177
-#, c-format
-msgid "hash opfamily %s contains operator %s with wrong signature"
-msgstr "hash opfamily %s 包含具有错误签名的操作符 %s"
-
-#: access/hash/hashvalidate.c:189
-#, c-format
-msgid "hash opfamily %s lacks support function for operator %s"
-msgstr "hash opfamily %s 缺少操作符 %s 的支持函数"
-
-#: access/hash/hashvalidate.c:217
-#, c-format
-msgid "hash opfamily %s is missing operator(s) for types %s and %s"
-msgstr "hash opfamily %s 缺少类型 %s 和 %s 的操作符"
-
-#: access/hash/hashvalidate.c:231
-#, c-format
-msgid "hash opclass %s is missing operator(s)"
-msgstr "hash opclass %s 缺少操作符"
-
-#: access/hash/hashvalidate.c:247
-#, c-format
-msgid "hash opfamily %s is missing cross-type operator(s)"
-msgstr "hash opclass %s 缺少跨类型操作符"
-
-#: access/heap/heapam.c:1137 access/heap/heapam.c:1189
-#, c-format
-msgid "cannot access temporary tables during a parallel operation"
-msgstr "不能在并行操作期间访问临时表"
+msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)"
+msgstr "访问方法%1$s的运算符族\"%2$s\"缺少跨类型操作符"
-#: access/heap/heapam.c:1306 access/heap/heapam.c:1334
-#: access/heap/heapam.c:1366 catalog/aclchk.c:1755
+#: access/heap/heapam.c:1304 access/heap/heapam.c:1333
+#: access/heap/heapam.c:1366 catalog/aclchk.c:1828
#, c-format
msgid "\"%s\" is an index"
msgstr "\"%s\" 是一个索引"
-#: access/heap/heapam.c:1311 access/heap/heapam.c:1339
-#: access/heap/heapam.c:1371 catalog/aclchk.c:1762 commands/tablecmds.c:8986
-#: commands/tablecmds.c:12044
+#: access/heap/heapam.c:1309 access/heap/heapam.c:1338
+#: access/heap/heapam.c:1371 catalog/aclchk.c:1835 commands/tablecmds.c:10837
+#: commands/tablecmds.c:14122
#, c-format
msgid "\"%s\" is a composite type"
msgstr "\"%s\" 为混和类型"
-#: access/heap/heapam.c:2580
+#: access/heap/heapam.c:2645
#, c-format
-msgid "cannot insert tuples during a parallel operation"
+msgid "cannot insert tuples in a parallel worker"
msgstr "无法在并行操作期间插入元组"
-#: access/heap/heapam.c:3030
+#: access/heap/heapam.c:3092
#, c-format
msgid "cannot delete tuples during a parallel operation"
msgstr "无法在并行操作期间删除元组"
-#: access/heap/heapam.c:3076
+#: access/heap/heapam.c:3138
#, c-format
msgid "attempted to delete invisible tuple"
msgstr "试图删除不可见元组"
-#: access/heap/heapam.c:3503 access/heap/heapam.c:6063
+#: access/heap/heapam.c:3572 access/heap/heapam.c:6409
#, c-format
msgid "cannot update tuples during a parallel operation"
msgstr "无法在并行操作期间更新元组"
-#: access/heap/heapam.c:3625
+#: access/heap/heapam.c:3720
#, c-format
msgid "attempted to update invisible tuple"
msgstr "试图更新不可见元组"
-#: access/heap/heapam.c:4884 access/heap/heapam.c:4922
-#: access/heap/heapam.c:5145 executor/execMain.c:2304
+#: access/heap/heapam.c:5085 access/heap/heapam.c:5123
+#: access/heap/heapam.c:5375 executor/execMain.c:2662
#, c-format
msgid "could not obtain lock on row in relation \"%s\""
msgstr "无法在关系 \"%s\"中的记录上获得锁"
-#: access/heap/hio.c:325 access/heap/rewriteheap.c:666
+#: access/heap/hio.c:338 access/heap/rewriteheap.c:682
#, c-format
msgid "row is too big: size %zu, maximum size %zu"
msgstr "行太大: 尺寸 %zu, 最大值 %zu"
-#: access/heap/rewriteheap.c:925
+#: access/heap/rewriteheap.c:942
#, c-format
msgid "could not write to file \"%s\", wrote %d of %d: %m"
msgstr "无法往文件 \"%s\" 偏移量 %d, %d 写入: %m"
-#: access/heap/rewriteheap.c:965 access/heap/rewriteheap.c:1177
-#: access/heap/rewriteheap.c:1274 access/transam/timeline.c:407
-#: access/transam/timeline.c:483 access/transam/xlog.c:3060
-#: access/transam/xlog.c:3222 replication/logical/snapbuild.c:1607
-#: replication/slot.c:1077 replication/slot.c:1162 storage/file/fd.c:624
-#: storage/file/fd.c:3052 storage/smgr/md.c:1031 storage/smgr/md.c:1262
-#: storage/smgr/md.c:1435 utils/misc/guc.c:6881
+#: access/heap/rewriteheap.c:982 access/heap/rewriteheap.c:1203
+#: access/heap/rewriteheap.c:1302 access/transam/timeline.c:411
+#: access/transam/timeline.c:490 access/transam/xlog.c:3307
+#: access/transam/xlog.c:3473 replication/logical/snapbuild.c:1648
+#: replication/slot.c:1313 replication/slot.c:1405 storage/file/fd.c:639
+#: storage/file/fd.c:3533 storage/smgr/md.c:1044 storage/smgr/md.c:1289
+#: storage/smgr/md.c:1463 utils/misc/guc.c:7266
#, c-format
msgid "could not fsync file \"%s\": %m"
msgstr "无法 fsync 文件 \"%s\": %m"
-#: access/heap/rewriteheap.c:1020 access/heap/rewriteheap.c:1140
-#: access/transam/timeline.c:315 access/transam/timeline.c:461
-#: access/transam/xlog.c:3016 access/transam/xlog.c:3165
-#: access/transam/xlog.c:10124 access/transam/xlog.c:10162
-#: access/transam/xlog.c:10489 postmaster/postmaster.c:4351
-#: replication/logical/origin.c:542 replication/slot.c:1034
-#: storage/file/copydir.c:162 storage/smgr/md.c:320 utils/time/snapmgr.c:1175
+#: access/heap/rewriteheap.c:1036 access/heap/rewriteheap.c:1155
+#: access/transam/timeline.c:314 access/transam/timeline.c:465
+#: access/transam/xlog.c:3261 access/transam/xlog.c:3411
+#: access/transam/xlog.c:10692 access/transam/xlog.c:10730
+#: access/transam/xlog.c:11133 postmaster/postmaster.c:4454
+#: replication/logical/origin.c:575 replication/slot.c:1262
+#: storage/file/copydir.c:167 storage/smgr/md.c:327 utils/time/snapmgr.c:1297
#, c-format
msgid "could not create file \"%s\": %m"
msgstr "无法创建文件 \"%s\": %m"
-#: access/heap/rewriteheap.c:1149
+#: access/heap/rewriteheap.c:1165
#, c-format
msgid "could not truncate file \"%s\" to %u: %m"
msgstr "无法将文件\"%s\"截断为%u:%m"
-#: access/heap/rewriteheap.c:1156 replication/walsender.c:481
-#: storage/smgr/md.c:1847
+#: access/heap/rewriteheap.c:1173 replication/walsender.c:490
+#: storage/smgr/md.c:1999
#, c-format
msgid "could not seek to end of file \"%s\": %m"
msgstr "无法查找到文件\"%s\"的末端: %m"
-#: access/heap/rewriteheap.c:1167 access/transam/timeline.c:367
-#: access/transam/timeline.c:401 access/transam/timeline.c:477
-#: access/transam/xlog.c:3051 access/transam/xlog.c:3215
-#: postmaster/postmaster.c:4361 postmaster/postmaster.c:4371
-#: replication/logical/origin.c:551 replication/logical/origin.c:587
-#: replication/logical/origin.c:603 replication/logical/snapbuild.c:1591
-#: replication/slot.c:1063 storage/file/copydir.c:187
-#: utils/init/miscinit.c:1228 utils/init/miscinit.c:1237
-#: utils/init/miscinit.c:1244 utils/misc/guc.c:6842 utils/misc/guc.c:6873
-#: utils/misc/guc.c:8715 utils/misc/guc.c:8729 utils/time/snapmgr.c:1180
-#: utils/time/snapmgr.c:1187
+#: access/heap/rewriteheap.c:1190 access/transam/timeline.c:369
+#: access/transam/timeline.c:404 access/transam/timeline.c:482
+#: access/transam/xlog.c:3293 access/transam/xlog.c:3464
+#: postmaster/postmaster.c:4464 postmaster/postmaster.c:4474
+#: replication/logical/origin.c:590 replication/logical/origin.c:635
+#: replication/logical/origin.c:657 replication/logical/snapbuild.c:1624
+#: replication/slot.c:1296 storage/file/copydir.c:208
+#: utils/init/miscinit.c:1349 utils/init/miscinit.c:1360
+#: utils/init/miscinit.c:1368 utils/misc/guc.c:7227 utils/misc/guc.c:7258
+#: utils/misc/guc.c:9120 utils/misc/guc.c:9134 utils/time/snapmgr.c:1302
+#: utils/time/snapmgr.c:1309
#, c-format
msgid "could not write to file \"%s\": %m"
msgstr "无法写入文件 \"%s\": %m"
-#: access/heap/rewriteheap.c:1250 access/transam/xlog.c:10356
-#: access/transam/xlogarchive.c:114 access/transam/xlogarchive.c:468
-#: replication/logical/origin.c:529 replication/logical/reorderbuffer.c:2611
-#: replication/logical/reorderbuffer.c:2668
-#: replication/logical/snapbuild.c:1535 replication/logical/snapbuild.c:1910
-#: replication/slot.c:1136 storage/ipc/dsm.c:326 storage/smgr/md.c:420
-#: storage/smgr/md.c:469 storage/smgr/md.c:1382
+#: access/heap/rewriteheap.c:1277 access/transam/xlogarchive.c:112
+#: access/transam/xlogarchive.c:459 postmaster/postmaster.c:1275
+#: postmaster/syslogger.c:1456 replication/logical/origin.c:563
+#: replication/logical/reorderbuffer.c:2810
+#: replication/logical/snapbuild.c:1567 replication/logical/snapbuild.c:1966
+#: replication/slot.c:1375 storage/file/fd.c:690 storage/file/fd.c:3133
+#: storage/file/fd.c:3195 storage/file/reinit.c:255 storage/ipc/dsm.c:315
+#: storage/smgr/md.c:426 storage/smgr/md.c:475 storage/smgr/md.c:1410
+#: utils/time/snapmgr.c:1640
#, c-format
msgid "could not remove file \"%s\": %m"
msgstr "无法删除文件 \"%s\": %m"
-#: access/heap/rewriteheap.c:1264 access/transam/timeline.c:111
-#: access/transam/timeline.c:236 access/transam/timeline.c:334
-#: access/transam/xlog.c:2992 access/transam/xlog.c:3109
-#: access/transam/xlog.c:3150 access/transam/xlog.c:3423
-#: access/transam/xlog.c:3501 access/transam/xlogutils.c:705
-#: replication/basebackup.c:401 replication/basebackup.c:1162
-#: replication/logical/origin.c:658 replication/logical/reorderbuffer.c:2141
-#: replication/logical/reorderbuffer.c:2381
-#: replication/logical/reorderbuffer.c:3059
-#: replication/logical/snapbuild.c:1584 replication/logical/snapbuild.c:1668
-#: replication/slot.c:1151 replication/walsender.c:474
-#: replication/walsender.c:2104 storage/file/copydir.c:155
-#: storage/file/fd.c:607 storage/file/fd.c:2964 storage/file/fd.c:3031
-#: storage/smgr/md.c:602 utils/error/elog.c:1870 utils/init/miscinit.c:1163
-#: utils/init/miscinit.c:1284 utils/init/miscinit.c:1362 utils/misc/guc.c:7101
-#: utils/misc/guc.c:7134
+#: access/heap/rewriteheap.c:1291 access/transam/timeline.c:111
+#: access/transam/timeline.c:236 access/transam/timeline.c:333
+#: access/transam/xlog.c:3238 access/transam/xlog.c:3356
+#: access/transam/xlog.c:3397 access/transam/xlog.c:3674
+#: access/transam/xlog.c:3752 access/transam/xlogutils.c:708
+#: postmaster/syslogger.c:1465 replication/basebackup.c:517
+#: replication/basebackup.c:1391 replication/logical/origin.c:712
+#: replication/logical/reorderbuffer.c:2304
+#: replication/logical/reorderbuffer.c:2571
+#: replication/logical/reorderbuffer.c:3284
+#: replication/logical/snapbuild.c:1610 replication/logical/snapbuild.c:1710
+#: replication/slot.c:1390 replication/walsender.c:483
+#: replication/walsender.c:2412 storage/file/copydir.c:161
+#: storage/file/fd.c:622 storage/file/fd.c:3428 storage/file/fd.c:3512
+#: storage/smgr/md.c:608 utils/error/elog.c:1872 utils/init/miscinit.c:1273
+#: utils/init/miscinit.c:1408 utils/init/miscinit.c:1485 utils/misc/guc.c:7486
+#: utils/misc/guc.c:7518
#, c-format
msgid "could not open file \"%s\": %m"
msgstr "无法打开文件 \"%s\": %m"
-#: access/index/amapi.c:69 commands/amcmds.c:164
+#: access/index/amapi.c:83 commands/amcmds.c:163
#, c-format
-#| msgid "access method \"%s\" does not exist"
msgid "access method \"%s\" is not of type %s"
msgstr "访问方法 \"%s\" 不是类型 %s 的"
-#: access/index/amapi.c:78
+#: access/index/amapi.c:99
#, c-format
-#| msgid "access method \"%s\" does not exist"
msgid "index access method \"%s\" does not have a handler"
msgstr "索引访问方法 \"%s\" 没有处理器"
-#: access/index/indexam.c:155 catalog/objectaddress.c:1196
-#: commands/indexcmds.c:1799 commands/tablecmds.c:241
-#: commands/tablecmds.c:12035
+#: access/index/indexam.c:160 catalog/objectaddress.c:1223
+#: commands/indexcmds.c:2282 commands/tablecmds.c:249 commands/tablecmds.c:273
+#: commands/tablecmds.c:14113 commands/tablecmds.c:15406
#, c-format
msgid "\"%s\" is not an index"
msgstr "\"%s\" 不是一个索引"
-#: access/nbtree/nbtinsert.c:427
+#: access/nbtree/nbtinsert.c:530
#, c-format
msgid "duplicate key value violates unique constraint \"%s\""
msgstr "重复键违反唯一约束\"%s\""
-#: access/nbtree/nbtinsert.c:429
+#: access/nbtree/nbtinsert.c:532
#, c-format
msgid "Key %s already exists."
msgstr "键值\"%s\" 已经存在"
-#: access/nbtree/nbtinsert.c:496
+#: access/nbtree/nbtinsert.c:599
#, c-format
msgid "failed to re-find tuple within index \"%s\""
msgstr "在索引\"%s\"中重新寻找元组失败"
-#: access/nbtree/nbtinsert.c:498
+#: access/nbtree/nbtinsert.c:601
#, c-format
msgid "This may be because of a non-immutable index expression."
msgstr "这可能是由于一个非不可改变的索引表达式引起的"
-#: access/nbtree/nbtinsert.c:578 access/nbtree/nbtsort.c:491
+#: access/nbtree/nbtinsert.c:681 access/nbtree/nbtsort.c:833
#, c-format
msgid ""
"Values larger than 1/3 of a buffer page cannot be indexed.\n"
-"Consider a function index of an MD5 hash of the value, or use full text "
-"indexing."
+"Consider a function index of an MD5 hash of the value, or use full text indexing."
msgstr ""
"值大于缓冲页的1/3,不能建索引.\n"
"请考虑这个值MD5哈希函数索引,或者使用全文索引."
-#: access/nbtree/nbtpage.c:168 access/nbtree/nbtpage.c:371
-#: access/nbtree/nbtpage.c:458 parser/parse_utilcmd.c:1715
+#: access/nbtree/nbtpage.c:318 access/nbtree/nbtpage.c:529
+#: access/nbtree/nbtpage.c:618 parser/parse_utilcmd.c:2054
#, c-format
msgid "index \"%s\" is not a btree"
msgstr "索引 \"%s\" 不是一个 btree"
-#: access/nbtree/nbtpage.c:174 access/nbtree/nbtpage.c:377
-#: access/nbtree/nbtpage.c:464
+#: access/nbtree/nbtpage.c:325 access/nbtree/nbtpage.c:536
+#: access/nbtree/nbtpage.c:625
#, c-format
-msgid "version mismatch in index \"%s\": file version %d, code version %d"
-msgstr "在索引 \"%s\" 中版本不匹配: 文件版本 %d, 代码版本 %d"
+msgid "version mismatch in index \"%s\": file version %d, current version %d, minimal supported version %d"
+msgstr "在索引 \"%s\" 中版本不匹配: 文件版本 %d, 当前版本%d,最低支持版本%d"
-#: access/nbtree/nbtpage.c:1152
+#: access/nbtree/nbtpage.c:1320
#, c-format
msgid "index \"%s\" contains a half-dead internal page"
msgstr "索引 \"%s\" 包含一个半死的内部页."
-#: access/nbtree/nbtpage.c:1154
-#, c-format
-msgid ""
-"This can be caused by an interrupted VACUUM in version 9.3 or older, before "
-"upgrade. Please REINDEX it."
-msgstr ""
-"可能是由于升级之前, 使用了9.3或者更老的版本里的VACUUM命令并产生中断造成的. 请"
-"为它重建索引."
-
-#: access/nbtree/nbtvalidate.c:100
-#, c-format
-msgid "btree opfamily %s contains function %s with invalid support number %d"
-msgstr "btree opfamily %1$s 包含具有无效支持编号 %3$d 的函数 %2$s"
-
-#: access/nbtree/nbtvalidate.c:112
-#, c-format
-msgid ""
-"btree opfamily %s contains function %s with wrong signature for support "
-"number %d"
-msgstr "btree opfamily %1$s 包含的函数 %2$s 对支持编号 %3$d 具有错误的签名"
-
-#: access/nbtree/nbtvalidate.c:132
-#, c-format
-msgid "btree opfamily %s contains operator %s with invalid strategy number %d"
-msgstr "btree opfamily %1$s 包含具有无效策略编号 %3$d 的操作符 %2$s"
-
-#: access/nbtree/nbtvalidate.c:145
-#, c-format
-msgid ""
-"btree opfamily %s contains invalid ORDER BY specification for operator %s"
-msgstr "btree opfamily %s 包含操作符 %s 的无效 ORDER BY 声明"
-
-#: access/nbtree/nbtvalidate.c:158
-#, c-format
-msgid "btree opfamily %s contains operator %s with wrong signature"
-msgstr "btree opfamily %s 包含具有错误签名的操作符 %s"
-
-#: access/nbtree/nbtvalidate.c:200
-#, c-format
-msgid "btree opfamily %s is missing operator(s) for types %s and %s"
-msgstr "btree opfamily %s 缺少类型 %s 和 %s 的操作符"
-
-#: access/nbtree/nbtvalidate.c:210
+#: access/nbtree/nbtpage.c:1322
#, c-format
-msgid "btree opfamily %s is missing support function for types %s and %s"
-msgstr "btree opfamily %s 缺少类型 %s 和 %s 的支持函数"
+msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it."
+msgstr "可能是由于升级之前, 使用了9.3或者更老的版本里的VACUUM命令并产生中断造成的. 请为它重建索引."
-#: access/nbtree/nbtvalidate.c:224
+#: access/nbtree/nbtvalidate.c:236
#, c-format
-msgid "btree opclass %s is missing operator(s)"
-msgstr "btree opclass %s 缺少操作符"
+msgid "operator family \"%s\" of access method %s is missing support function for types %s and %s"
+msgstr "访问方法%1$s的运算符族\"%2$s\" 缺少类型 %3$s 和 %4$s 的支持函数"
-#: access/nbtree/nbtvalidate.c:241
+#: access/spgist/spgutils.c:136
#, c-format
-msgid "btree opfamily %s is missing cross-type operator(s)"
-msgstr "btree opfamily %s 缺少跨类型操作符"
+msgid "compress method must be defined when leaf type is different from input type"
+msgstr "当叶类型与输入类型不同时,必须定义压缩方法"
-#: access/spgist/spgutils.c:704
+#: access/spgist/spgutils.c:743
#, c-format
msgid "SP-GiST inner tuple size %zu exceeds maximum %zu"
msgstr "SP-GiST内部元组大小%zu超出最大值%zu"
-#: access/spgist/spgvalidate.c:92
-#, c-format
-msgid ""
-"spgist opfamily %s contains support procedure %s with cross-type registration"
-msgstr "spgist opfamily %s 包含具有跨类型注册的支持过程 %s"
-
-#: access/spgist/spgvalidate.c:115
-#, c-format
-msgid "spgist opfamily %s contains function %s with invalid support number %d"
-msgstr "spgist opfamily %1$s 包含具有无效支持编号 %3$d 的函数 %2$s"
-
-#: access/spgist/spgvalidate.c:127
-#, c-format
-msgid ""
-"spgist opfamily %s contains function %s with wrong signature for support "
-"number %d"
-msgstr "spgist opfamily %1$s 包含的函数 %2$s 对支持编号 %3$d 具有错误的签名"
-
-#: access/spgist/spgvalidate.c:146
-#, c-format
-msgid "spgist opfamily %s contains operator %s with invalid strategy number %d"
-msgstr "spgist opfamily %1$s 包含具有无效策略编号 %3$d 的操作符 %2$s"
-
-#: access/spgist/spgvalidate.c:159
-#, c-format
-msgid ""
-"spgist opfamily %s contains invalid ORDER BY specification for operator %s"
-msgstr "spgist opfamily %s 包含操作符 %s 的无效 ORDER BY 声明"
-
-#: access/spgist/spgvalidate.c:172
+#: access/spgist/spgvalidate.c:269
#, c-format
-msgid "spgist opfamily %s contains operator %s with wrong signature"
-msgstr "spgist opfamily %s 包含具有错误签名的操作符 %s"
-
-#: access/spgist/spgvalidate.c:200
-#, c-format
-msgid "spgist opfamily %s is missing operator(s) for types %s and %s"
-msgstr "spgist opfamily %s 缺少类型 %s 和 %s 的操作符"
-
-#: access/spgist/spgvalidate.c:220
-#, c-format
-msgid "spgist opfamily %s is missing support function %d for type %s"
-msgstr "spgist opfamily %1$s 缺少类型 %3$s 的支持函数 %2$d"
-
-#: access/spgist/spgvalidate.c:233
-#, c-format
-msgid "spgist opclass %s is missing operator(s)"
-msgstr "spgist opclass %s 缺少操作符"
+msgid "operator family \"%s\" of access method %s is missing support function %d for type %s"
+msgstr "访问方法%1$s的运算符族\"%2$s\"缺少类型 %4$s 的支持函数 %3$d"
#: access/tablesample/bernoulli.c:152 access/tablesample/system.c:156
#, c-format
msgid "cannot retrieve commit timestamp for transaction %u"
msgstr "无法检索到事务%u的提交时间戳"
-#: access/transam/commit_ts.c:385
+#: access/transam/commit_ts.c:393
#, c-format
msgid "could not get commit timestamp data"
msgstr "无法得到提交时间戳数据"
-#: access/transam/commit_ts.c:387
+#: access/transam/commit_ts.c:395
#, c-format
-#| msgid "Make sure the configuration parameter \"%s\" is set."
-msgid ""
-"Make sure the configuration parameter \"%s\" is set on the master server."
+msgid "Make sure the configuration parameter \"%s\" is set on the master server."
msgstr "确保在主服务器上配置参数 \"%s\" 已经被设置。"
-#: access/transam/commit_ts.c:389 libpq/hba.c:1441
+#: access/transam/commit_ts.c:397
#, c-format
msgid "Make sure the configuration parameter \"%s\" is set."
msgstr "确保配置参数\"%s\"已经被设置。"
#: access/transam/multixact.c:1000
#, c-format
-msgid ""
-"database is not accepting commands that generate new MultiXactIds to avoid "
-"wraparound data loss in database \"%s\""
-msgstr ""
-"数据库没有接收产生新的MultiXactIds的命令来避免在数据库\"%s\"中的重叠数据损失"
+msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database \"%s\""
+msgstr "数据库没有接收产生新的MultiXactIds的命令来避免在数据库\"%s\"中的重叠数据损失"
#: access/transam/multixact.c:1002 access/transam/multixact.c:1009
#: access/transam/multixact.c:1033 access/transam/multixact.c:1042
#, c-format
msgid ""
"Execute a database-wide VACUUM in that database.\n"
-"You might also need to commit or roll back old prepared transactions."
+"You might also need to commit or roll back old prepared transactions, or drop stale replication slots."
msgstr ""
"在数据库中执行数据库范围的VACUUM.\n"
-"您也可能需要提交或回滚旧的已准备好的事务."
+"您也可能需要提交或回滚旧的已准备好的事务, 或者删除旧的复制槽."
#: access/transam/multixact.c:1007
#, c-format
-msgid ""
-"database is not accepting commands that generate new MultiXactIds to avoid "
-"wraparound data loss in database with OID %u"
-msgstr ""
-"数据库没有接受产生新的MultiXactIds的命令来避免在带有OID为%u的数据库中的重叠数"
-"据损失"
+msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database with OID %u"
+msgstr "数据库没有接受产生新的MultiXactIds的命令来避免在带有OID为%u的数据库中的重叠数据损失"
-#: access/transam/multixact.c:1028 access/transam/multixact.c:2317
+#: access/transam/multixact.c:1028 access/transam/multixact.c:2318
#, c-format
msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used"
-msgid_plural ""
-"database \"%s\" must be vacuumed before %u more MultiXactIds are used"
+msgid_plural "database \"%s\" must be vacuumed before %u more MultiXactIds are used"
msgstr[0] "数据库 \"%s\"必须在运行%u个事务前进行清理(vacuume)."
-#: access/transam/multixact.c:1037 access/transam/multixact.c:2326
+#: access/transam/multixact.c:1037 access/transam/multixact.c:2327
#, c-format
-msgid ""
-"database with OID %u must be vacuumed before %u more MultiXactId is used"
-msgid_plural ""
-"database with OID %u must be vacuumed before %u more MultiXactIds are used"
+msgid "database with OID %u must be vacuumed before %u more MultiXactId is used"
+msgid_plural "database with OID %u must be vacuumed before %u more MultiXactIds are used"
msgstr[0] "带有OID为%u的数据库必须在%u个MultiXactIds使用前进行清理(vacuume)."
#: access/transam/multixact.c:1098
#: access/transam/multixact.c:1099
#, c-format
-msgid ""
-"This command would create a multixact with %u members, but the remaining "
-"space is only enough for %u member."
-msgid_plural ""
-"This command would create a multixact with %u members, but the remaining "
-"space is only enough for %u members."
-msgstr[0] ""
-"这个命令将创建一个具有%u成员的多事务,但是剩余的空间只能用于%u个成员。"
+msgid "This command would create a multixact with %u members, but the remaining space is only enough for %u member."
+msgid_plural "This command would create a multixact with %u members, but the remaining space is only enough for %u members."
+msgstr[0] "这个命令将创建一个具有%u成员的多事务,但是剩余的空间只能用于%u个成员。"
#: access/transam/multixact.c:1104
#, c-format
-msgid ""
-"Execute a database-wide VACUUM in database with OID %u with reduced "
-"vacuum_multixact_freeze_min_age and vacuum_multixact_freeze_table_age "
-"settings."
-msgstr ""
-"在具有缩减vacuum_multixact_freeze_min_age和vacuum_multixact_freeze_table_age"
-"设置的数据库(OID是%u)中执行一次数据库范围的VACUUM。"
+msgid "Execute a database-wide VACUUM in database with OID %u with reduced vacuum_multixact_freeze_min_age and vacuum_multixact_freeze_table_age settings."
+msgstr "在具有缩减vacuum_multixact_freeze_min_age和vacuum_multixact_freeze_table_age设置的数据库(OID是%u)中执行一次数据库范围的VACUUM。"
#: access/transam/multixact.c:1135
#, c-format
-msgid ""
-"database with OID %u must be vacuumed before %d more multixact member is used"
-msgid_plural ""
-"database with OID %u must be vacuumed before %d more multixact members are "
-"used"
+msgid "database with OID %u must be vacuumed before %d more multixact member is used"
+msgid_plural "database with OID %u must be vacuumed before %d more multixact members are used"
msgstr[0] "OID为%u的数据库必须在%d以上个多事务成员被使用前进行清理(VACUUM)"
#: access/transam/multixact.c:1140
#, c-format
-msgid ""
-"Execute a database-wide VACUUM in that database with reduced "
-"vacuum_multixact_freeze_min_age and vacuum_multixact_freeze_table_age "
-"settings."
-msgstr ""
-"在具有缩减vacuum_multixact_freeze_min_age和vacuum_multixact_freeze_table_age"
-"设置的数据库中执行一次数据库范围的VACUUM。"
+msgid "Execute a database-wide VACUUM in that database with reduced vacuum_multixact_freeze_min_age and vacuum_multixact_freeze_table_age settings."
+msgstr "在具有缩减vacuum_multixact_freeze_min_age和vacuum_multixact_freeze_table_age设置的数据库中执行一次数据库范围的VACUUM。"
-#: access/transam/multixact.c:1278
+#: access/transam/multixact.c:1277
#, c-format
msgid "MultiXactId %u does no longer exist -- apparent wraparound"
msgstr "MultiXactId的值%u不再使用 -- 明显是回卷了"
-#: access/transam/multixact.c:1286
+#: access/transam/multixact.c:1285
#, c-format
msgid "MultiXactId %u has not been created yet -- apparent wraparound"
msgstr "MultiXactId %u还没被创建 -- 有明显的重叠"
-#: access/transam/multixact.c:2267
+#: access/transam/multixact.c:2268
#, c-format
msgid "MultiXactId wrap limit is %u, limited by database with OID %u"
msgstr "MultiXactId的封装限制是%u, 限制于OID为%u的数据库."
-#: access/transam/multixact.c:2322 access/transam/multixact.c:2331
+#: access/transam/multixact.c:2323 access/transam/multixact.c:2332
#: access/transam/varsup.c:146 access/transam/varsup.c:153
-#: access/transam/varsup.c:384 access/transam/varsup.c:391
+#: access/transam/varsup.c:405 access/transam/varsup.c:412
#, c-format
msgid ""
-"To avoid a database shutdown, execute a database-wide VACUUM in that "
-"database.\n"
-"You might also need to commit or roll back old prepared transactions."
+"To avoid a database shutdown, execute a database-wide VACUUM in that database.\n"
+"You might also need to commit or roll back old prepared transactions, or drop stale replication slots."
msgstr ""
"为了避免关闭数据库,需要在数据库中执行数据库范围的VACUUM.\n"
-"您也可能需要提交或回滚旧的已准备好的事务."
+"您也可能需要提交或回滚旧的已准备好的事务,或者删除旧的复制槽."
-#: access/transam/multixact.c:2601
+#: access/transam/multixact.c:2602
#, c-format
msgid "oldest MultiXactId member is at offset %u"
msgstr "最旧的 MultiXactId 成员位于偏移量%u"
-#: access/transam/multixact.c:2605
+#: access/transam/multixact.c:2606
#, c-format
-msgid ""
-"MultiXact member wraparound protections are disabled because oldest "
-"checkpointed MultiXact %u does not exist on disk"
-msgstr ""
-"多事务成员回卷保护被禁用,因为最旧的被做过检查点的多事务%u在磁盘上不存在"
+msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk"
+msgstr "多事务成员回卷保护被禁用,因为最旧的被做过检查点的多事务%u在磁盘上不存在"
-#: access/transam/multixact.c:2627
+#: access/transam/multixact.c:2628
#, c-format
msgid "MultiXact member wraparound protections are now enabled"
msgstr "多事务成员回卷保护现在被启用。"
-#: access/transam/multixact.c:2629
+#: access/transam/multixact.c:2631
#, c-format
msgid "MultiXact member stop limit is now %u based on MultiXact %u"
msgstr "多事务成员停止限制现在是%u,这是基于多事务%u得出的"
-#: access/transam/multixact.c:3009
+#: access/transam/multixact.c:3011
#, c-format
-msgid ""
-"oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation"
+msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation"
msgstr "没有找到最旧的多事务%u,最新的多事务是%u,跳过截断"
-#: access/transam/multixact.c:3027
+#: access/transam/multixact.c:3029
#, c-format
-msgid ""
-"cannot truncate up to MultiXact %u because it does not exist on disk, "
-"skipping truncation"
+msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation"
msgstr "无法一直截断到多事务%u,因为它在磁盘上不存在,跳过截断"
-#: access/transam/multixact.c:3353
+#: access/transam/multixact.c:3355
#, c-format
msgid "invalid MultiXactId: %u"
msgstr "无效的MultiXactId:%u"
-#: access/transam/parallel.c:581
+#: access/transam/parallel.c:664 access/transam/parallel.c:787
+#, c-format
+msgid "parallel worker failed to initialize"
+msgstr "并行工作进程初始化失败"
+
+#: access/transam/parallel.c:665 access/transam/parallel.c:788
+#, c-format
+msgid "More details may be available in the server log."
+msgstr "有关详细信息,请参阅服务器日志."
+
+#: access/transam/parallel.c:849
#, c-format
msgid "postmaster exited during a parallel transaction"
msgstr "在并行操作期间postmaster退出"
# fe-exec.c:745
-#: access/transam/parallel.c:739
+#: access/transam/parallel.c:1036
#, c-format
msgid "lost connection to parallel worker"
msgstr "并行工作者进程的连接丢失"
-#: access/transam/parallel.c:914
+#: access/transam/parallel.c:1102 access/transam/parallel.c:1104
+msgid "parallel worker"
+msgstr "并行工作者进程"
+
+#: access/transam/parallel.c:1249
#, c-format
msgid "could not map dynamic shared memory segment"
msgstr "无法映射动态共享内存段"
-#: access/transam/parallel.c:919
+#: access/transam/parallel.c:1254
#, c-format
msgid "invalid magic number in dynamic shared memory segment"
msgstr "动态共享内存段中有非法magic号"
-#: access/transam/parallel.c:1084
-#, c-format
-msgid "parallel worker, PID %d"
-msgstr "并行工作者进程,PID为%d"
-
-#: access/transam/slru.c:665
+#: access/transam/slru.c:668
#, c-format
msgid "file \"%s\" doesn't exist, reading as zeroes"
msgstr "文件 \"%s\" 不存在, 假设读取了 0 字节"
-#: access/transam/slru.c:895 access/transam/slru.c:901
-#: access/transam/slru.c:908 access/transam/slru.c:915
-#: access/transam/slru.c:922 access/transam/slru.c:929
+#: access/transam/slru.c:906 access/transam/slru.c:912
+#: access/transam/slru.c:919 access/transam/slru.c:926
+#: access/transam/slru.c:933 access/transam/slru.c:940
#, c-format
msgid "could not access status of transaction %u"
msgstr "无法处理事物 %u 的状态"
-#: access/transam/slru.c:896
+#: access/transam/slru.c:907
#, c-format
msgid "Could not open file \"%s\": %m."
msgstr "无法打开文件 \"%s\": %m"
-#: access/transam/slru.c:902
+#: access/transam/slru.c:913
#, c-format
msgid "Could not seek in file \"%s\" to offset %u: %m."
msgstr "无法在文件 \"%s\" 偏移量 %u 查找: %m"
-#: access/transam/slru.c:909
+#: access/transam/slru.c:920
#, c-format
msgid "Could not read from file \"%s\" at offset %u: %m."
msgstr "无法从文件 \"%s\" 偏移量 %u 读取: %m"
-#: access/transam/slru.c:916
+#: access/transam/slru.c:927
#, c-format
msgid "Could not write to file \"%s\" at offset %u: %m."
msgstr "无法往文件 \"%s\" 偏移量 %u 写入: %m"
-#: access/transam/slru.c:923
+#: access/transam/slru.c:934
#, c-format
msgid "Could not fsync file \"%s\": %m."
msgstr "无法在文件 \"%s\"上执行系统调用fsync: %m"
-#: access/transam/slru.c:930
+#: access/transam/slru.c:941
#, c-format
msgid "Could not close file \"%s\": %m."
msgstr "无法关闭文件 \"%s\": %m"
-#: access/transam/slru.c:1185
+#: access/transam/slru.c:1198
#, c-format
msgid "could not truncate directory \"%s\": apparent wraparound"
msgstr "无法清空目录\"%s\": 有明显的重叠"
-#: access/transam/slru.c:1240 access/transam/slru.c:1296
+#: access/transam/slru.c:1253 access/transam/slru.c:1309
#, c-format
msgid "removing file \"%s\""
msgstr "删除文件 \"%s\""
# sql_help.h:105
#: access/transam/timeline.c:154
#, c-format
-msgid "Expected a transaction log switchpoint location."
-msgstr "期望一个事务日志切换点位置."
+msgid "Expected a write-ahead log switchpoint location."
+msgstr "期望一个预写日志切换点位置."
#: access/transam/timeline.c:158
#, c-format
msgid "Timeline IDs must be less than child timeline's ID."
msgstr "Timeline ID 必须小于子 timeline 的 ID."
-#: access/transam/timeline.c:412 access/transam/timeline.c:488
-#: access/transam/xlog.c:3066 access/transam/xlog.c:3227
-#: access/transam/xlogfuncs.c:691 commands/copy.c:1671
-#: storage/file/copydir.c:201
+#: access/transam/timeline.c:417 access/transam/timeline.c:496
+#: access/transam/xlog.c:3314 access/transam/xlog.c:3479
+#: access/transam/xlogfuncs.c:683 commands/copy.c:1760
+#: storage/file/copydir.c:219
#, c-format
msgid "could not close file \"%s\": %m"
msgstr "无法关闭文件 \"%s\": %m"
-#: access/transam/timeline.c:570
+#: access/transam/timeline.c:578
#, c-format
msgid "requested timeline %u is not in this server's history"
msgstr "服务器上没有起始时间表 %u"
-#: access/transam/twophase.c:363
+#: access/transam/twophase.c:381
#, c-format
msgid "transaction identifier \"%s\" is too long"
msgstr "事务标示符 \"%s\" 太长"
# large_obj.c:55
-#: access/transam/twophase.c:370
+#: access/transam/twophase.c:388
#, c-format
msgid "prepared transactions are disabled"
msgstr "禁用已准备好的事务"
-#: access/transam/twophase.c:371
+#: access/transam/twophase.c:389
#, c-format
msgid "Set max_prepared_transactions to a nonzero value."
msgstr "将max_prepared_transactions设置为一个非零值"
-#: access/transam/twophase.c:390
+#: access/transam/twophase.c:408
#, c-format
msgid "transaction identifier \"%s\" is already in use"
msgstr "事务标示符\"%s\"已经在使用"
-#: access/transam/twophase.c:399
+#: access/transam/twophase.c:417 access/transam/twophase.c:2435
#, c-format
msgid "maximum number of prepared transactions reached"
msgstr "已经达到已准备好事务的最大数量"
-#: access/transam/twophase.c:400
+#: access/transam/twophase.c:418 access/transam/twophase.c:2436
#, c-format
msgid "Increase max_prepared_transactions (currently %d)."
msgstr "增加max_prepared_transactions的值(当前值是%d)."
-#: access/transam/twophase.c:539
+#: access/transam/twophase.c:586
#, c-format
msgid "prepared transaction with identifier \"%s\" is busy"
msgstr "标示符为\"%s\"的事务处于繁忙状态."
-#: access/transam/twophase.c:545
+#: access/transam/twophase.c:592
#, c-format
msgid "permission denied to finish prepared transaction"
msgstr "完成已准备好事务的权限不够"
-#: access/transam/twophase.c:546
+#: access/transam/twophase.c:593
#, c-format
msgid "Must be superuser or the user that prepared the transaction."
msgstr "必须是超级用户或者是准备好事务的用户"
-#: access/transam/twophase.c:557
+#: access/transam/twophase.c:604
#, c-format
msgid "prepared transaction belongs to another database"
msgstr "已准备好的事务属于另一个数据库"
-#: access/transam/twophase.c:558
+#: access/transam/twophase.c:605
#, c-format
-msgid ""
-"Connect to the database where the transaction was prepared to finish it."
+msgid "Connect to the database where the transaction was prepared to finish it."
msgstr "连接到带有准备好完成事务的数据库"
-#: access/transam/twophase.c:573
+#: access/transam/twophase.c:620
#, c-format
msgid "prepared transaction with identifier \"%s\" does not exist"
msgstr "带有标示符\"%s\" 已准备好事务不存在"
-#: access/transam/twophase.c:1042
+#: access/transam/twophase.c:1103
#, c-format
msgid "two-phase state file maximum length exceeded"
msgstr "超过两阶段状态文件的最大长度"
-#: access/transam/twophase.c:1160
+#: access/transam/twophase.c:1232
#, c-format
msgid "could not open two-phase state file \"%s\": %m"
msgstr "无法打开两阶段提交状态文件\"%s\": %m"
-#: access/transam/twophase.c:1177
+#: access/transam/twophase.c:1253
#, c-format
msgid "could not stat two-phase state file \"%s\": %m"
msgstr "无法获取两阶段提交状态文件 \"%s\" 的状态: %m"
-#: access/transam/twophase.c:1209
+#: access/transam/twophase.c:1292
#, c-format
msgid "could not read two-phase state file \"%s\": %m"
msgstr "无法读取两阶段提交状态文件 \"%s\": %m"
-#: access/transam/twophase.c:1262 access/transam/xlog.c:6070
+#: access/transam/twophase.c:1384 access/transam/xlog.c:6483
#, c-format
-msgid "Failed while allocating an XLog reading processor."
-msgstr "分配XLog读取处理器失败."
+msgid "Failed while allocating a WAL reading processor."
+msgstr "分配WAL读取处理器失败."
-#: access/transam/twophase.c:1268
+#: access/transam/twophase.c:1390
#, c-format
-#| msgid "could not read two-phase state file \"%s\": %m"
-msgid "could not read two-phase state from xlog at %X/%X"
-msgstr "无法从 %X/%X 位置的 xlog 读取两阶段状态"
+msgid "could not read two-phase state from WAL at %X/%X"
+msgstr "无法从 %X/%X 位置的 WAL 读取两阶段状态"
-#: access/transam/twophase.c:1276
+#: access/transam/twophase.c:1398
#, c-format
-msgid "expected two-phase state data is not present in xlog at %X/%X"
-msgstr "预期的两阶段状态数据没有出现在 xlog 的 %X/%X 位置上"
+msgid "expected two-phase state data is not present in WAL at %X/%X"
+msgstr "预期的两阶段状态数据没有出现在 WAL 的 %X/%X 位置上"
-#: access/transam/twophase.c:1512
+#: access/transam/twophase.c:1636
#, c-format
msgid "could not remove two-phase state file \"%s\": %m"
msgstr "无法删除两阶段提交状态文件\"%s\": %m"
-#: access/transam/twophase.c:1542
+#: access/transam/twophase.c:1665
#, c-format
msgid "could not recreate two-phase state file \"%s\": %m"
msgstr "无法重新创建两阶段提交状态文件 \"%s\": %m"
-#: access/transam/twophase.c:1551 access/transam/twophase.c:1558
+#: access/transam/twophase.c:1682 access/transam/twophase.c:1695
#, c-format
msgid "could not write two-phase state file: %m"
msgstr "无法对两阶段提交状态文件进行写操作: %m"
-#: access/transam/twophase.c:1570
+#: access/transam/twophase.c:1712
#, c-format
msgid "could not fsync two-phase state file: %m"
msgstr "无法在两阶段提交状态文件上执行系统调用fsync: %m"
-#: access/transam/twophase.c:1576
+#: access/transam/twophase.c:1719
#, c-format
msgid "could not close two-phase state file: %m"
msgstr "无法关闭两阶段提交状态文件: %m"
-#: access/transam/twophase.c:1651
+#: access/transam/twophase.c:1807
#, c-format
-msgid ""
-"%u two-phase state files were written for long-running prepared transactions"
-msgstr "为长时间运行的准备好事务写了 %u 个两阶段状态文件"
+msgid "%u two-phase state file was written for a long-running prepared transaction"
+msgid_plural "%u two-phase state files were written for long-running prepared transactions"
+msgstr[0] "为长时间运行的准备好事务写了 %u 个两阶段状态文件"
-#: access/transam/twophase.c:1712
+#: access/transam/twophase.c:2036
+#, c-format
+msgid "recovering prepared transaction %u from shared memory"
+msgstr "正在从共享内存中恢复已准备事务%u"
+
+#: access/transam/twophase.c:2126
#, c-format
-msgid "removing future two-phase state file \"%s\""
-msgstr "删除可能产生的两阶段提交状态文件 \"%s\""
+msgid "removing stale two-phase state file for transaction %u"
+msgstr "正在删除事务%u无用的两阶段提交状态文件"
-#: access/transam/twophase.c:1728 access/transam/twophase.c:1739
-#: access/transam/twophase.c:1858 access/transam/twophase.c:1869
-#: access/transam/twophase.c:1943
+#: access/transam/twophase.c:2133
#, c-format
-msgid "removing corrupt two-phase state file \"%s\""
-msgstr "删除已损坏的两阶段提交状态文件\"%s\""
+msgid "removing stale two-phase state from memory for transaction %u"
+msgstr "正在从内存中删除事务%u的无用的两阶段提交状态"
-#: access/transam/twophase.c:1847 access/transam/twophase.c:1932
+#: access/transam/twophase.c:2146
#, c-format
-msgid "removing stale two-phase state file \"%s\""
-msgstr "正在删除无用的两阶段提交状态文件\"%s\""
+msgid "removing future two-phase state file for transaction %u"
+msgstr "正在删除事务%u的未来两阶段状态文件"
-#: access/transam/twophase.c:1950
+#: access/transam/twophase.c:2153
#, c-format
-msgid "recovering prepared transaction %u"
-msgstr "正在恢复已准备事务%u"
+msgid "removing future two-phase state from memory for transaction %u"
+msgstr "正在从内存中删除事务%u的未来两阶段提交状态"
+
+#: access/transam/twophase.c:2167 access/transam/twophase.c:2186
+#, c-format
+msgid "removing corrupt two-phase state file for transaction %u"
+msgstr "正在删除事务%u已损坏的两阶段提交状态文件"
+
+#: access/transam/twophase.c:2193
+#, c-format
+msgid "removing corrupt two-phase state from memory for transaction %u"
+msgstr "正在从内存中删除事务%u已损坏的两阶段提交状态"
#: access/transam/varsup.c:124
#, c-format
-msgid ""
-"database is not accepting commands to avoid wraparound data loss in database "
-"\"%s\""
+msgid "database is not accepting commands to avoid wraparound data loss in database \"%s\""
msgstr "数据库没有接收命令来避免在数据库\"%s\"中的重叠数据损失"
#: access/transam/varsup.c:126 access/transam/varsup.c:133
#, c-format
msgid ""
"Stop the postmaster and vacuum that database in single-user mode.\n"
-"You might also need to commit or roll back old prepared transactions."
+"You might also need to commit or roll back old prepared transactions, or drop stale replication slots."
msgstr ""
"停止postmaster进程,然后在单用户模式下清理数据库.\n"
-"您也可能需要提交或回滚旧的已准备好事务."
+"您也可能需要提交或回滚旧的已准备好事务,或者旧的复制槽."
#: access/transam/varsup.c:131
#, c-format
-msgid ""
-"database is not accepting commands to avoid wraparound data loss in database "
-"with OID %u"
+msgid "database is not accepting commands to avoid wraparound data loss in database with OID %u"
msgstr "数据库没有接受命令来避免在带有OID为%u的数据库中的重叠数据损失"
-#: access/transam/varsup.c:143 access/transam/varsup.c:381
+#: access/transam/varsup.c:143 access/transam/varsup.c:402
#, c-format
msgid "database \"%s\" must be vacuumed within %u transactions"
msgstr "数据库 \"%s\"在运行%u个事务中进行清理(vacuume)."
-#: access/transam/varsup.c:150 access/transam/varsup.c:388
+#: access/transam/varsup.c:150 access/transam/varsup.c:409
#, c-format
msgid "database with OID %u must be vacuumed within %u transactions"
msgstr "带有OID为%u的数据库必须在%u个事务中进行清理(vacuume)."
-#: access/transam/varsup.c:346
+#: access/transam/varsup.c:367
#, c-format
msgid "transaction ID wrap limit is %u, limited by database with OID %u"
msgstr "事务ID的封装限制是%u, 由带有OID为%u的数据库限制."
-#: access/transam/xact.c:943
+#: access/transam/xact.c:960
#, c-format
msgid "cannot have more than 2^32-2 commands in a transaction"
msgstr "一个事物中拥有最多不能超过 2^32-2 个命令"
-#: access/transam/xact.c:1453
+#: access/transam/xact.c:1485
#, c-format
msgid "maximum number of committed subtransactions (%d) exceeded"
msgstr "超过已提交子事务的最大数量(%d)"
-#: access/transam/xact.c:2249
+#: access/transam/xact.c:2296
#, c-format
msgid "cannot PREPARE a transaction that has operated on temporary tables"
msgstr "无法在一个已经在临时表上操作的事务上执行PREPARE操作"
-#: access/transam/xact.c:2259
+#: access/transam/xact.c:2308
+#, c-format
+msgid "cannot PREPARE a transaction that has operated on temporary objects"
+msgstr "无法在一个已经在临时对象上操作的事务上执行PREPARE操作"
+
+#: access/transam/xact.c:2318
#, c-format
msgid "cannot PREPARE a transaction that has exported snapshots"
msgstr "无法在一个已经导出快照的事务上执行PREPARE操作"
+#: access/transam/xact.c:2327
+#, c-format
+msgid "cannot PREPARE a transaction that has manipulated logical replication workers"
+msgstr "无法在已操作逻辑复制的事务上执行PREPARE操作"
+
#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3141
+#: access/transam/xact.c:3212
#, c-format
msgid "%s cannot run inside a transaction block"
msgstr "%s 无法在事物块中运行"
#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3151
+#: access/transam/xact.c:3222
#, c-format
msgid "%s cannot run inside a subtransaction"
msgstr "%s 无法在一个子事物中运行"
#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3161
+#: access/transam/xact.c:3232
#, c-format
-msgid "%s cannot be executed from a function or multi-command string"
-msgstr "%s æ\97 æ³\95ä»\8eå\87½æ\95°æ\88\96å\8c\85å\90«å¤\9aæ\9d¡å\91½ä»¤ç\9a\84å\97ç¬¦ä¸²ä¸æ\89§è¡\8c."
+msgid "%s cannot be executed from a function"
+msgstr "%s æ\97 æ³\95ä»\8eå\87½æ\95°æ\89§è¡\8c"
#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3232
+#: access/transam/xact.c:3301 access/transam/xact.c:3925
+#: access/transam/xact.c:3994 access/transam/xact.c:4105
#, c-format
msgid "%s can only be used in transaction blocks"
msgstr "%s 只能在事务块中使用"
-#: access/transam/xact.c:3416
+#: access/transam/xact.c:3494
#, c-format
msgid "there is already a transaction in progress"
msgstr "已经有一个事物在运行中"
-#: access/transam/xact.c:3584 access/transam/xact.c:3687
+#: access/transam/xact.c:3605 access/transam/xact.c:3675
+#: access/transam/xact.c:3784
#, c-format
msgid "there is no transaction in progress"
msgstr "没有事物在运行中"
-#: access/transam/xact.c:3595
+#: access/transam/xact.c:3686
#, c-format
msgid "cannot commit during a parallel operation"
msgstr "并行操作期间无法提交"
-#: access/transam/xact.c:3698
+#: access/transam/xact.c:3795
#, c-format
msgid "cannot abort during a parallel operation"
msgstr "在并行操作期间无法中止"
-#: access/transam/xact.c:3740
+#: access/transam/xact.c:3889
#, c-format
msgid "cannot define savepoints during a parallel operation"
msgstr "在并行操作期间无法定义保存点"
-#: access/transam/xact.c:3807
+#: access/transam/xact.c:3976
#, c-format
msgid "cannot release savepoints during a parallel operation"
msgstr "在并行操作期间不能释放保存点"
-#: access/transam/xact.c:3818 access/transam/xact.c:3870
-#: access/transam/xact.c:3876 access/transam/xact.c:3932
-#: access/transam/xact.c:3982 access/transam/xact.c:3988
+#: access/transam/xact.c:3986 access/transam/xact.c:4037
+#: access/transam/xact.c:4097 access/transam/xact.c:4146
#, c-format
-msgid "no such savepoint"
-msgstr "没有这个保存点"
+msgid "savepoint \"%s\" does not exist"
+msgstr "保存点\"%s\"不存在"
-#: access/transam/xact.c:3920
+#: access/transam/xact.c:4043 access/transam/xact.c:4152
+#, c-format
+msgid "savepoint \"%s\" does not exist within current savepoint level"
+msgstr "当前保存点级别中不存在保存点\"%s\""
+
+#: access/transam/xact.c:4085
#, c-format
msgid "cannot rollback to savepoints during a parallel operation"
msgstr "在并行操作期间无法回滚到保存点"
-#: access/transam/xact.c:4048
+#: access/transam/xact.c:4213
#, c-format
msgid "cannot start subtransactions during a parallel operation"
msgstr "在并行操作期间不能开始子事务"
-#: access/transam/xact.c:4115
+#: access/transam/xact.c:4281
#, c-format
msgid "cannot commit subtransactions during a parallel operation"
msgstr "在并行操作期间不能提交子事务"
-#: access/transam/xact.c:4723
+#: access/transam/xact.c:4919
#, c-format
msgid "cannot have more than 2^32-1 subtransactions in a transaction"
msgstr "在一个事物中不可以超过有 2^32-1 个子事物"
-#: access/transam/xlog.c:2272
+#: access/transam/xlog.c:2492
#, c-format
msgid "could not seek in log file %s to offset %u: %m"
msgstr "无法在日志文件 \"%s\" 中定位 %u: %m"
-#: access/transam/xlog.c:2292
+#: access/transam/xlog.c:2514
#, c-format
msgid "could not write to log file %s at offset %u, length %zu: %m"
msgstr "无法在偏移量 %2$u,长度 %3$zu写入日志文件%1$s: %4$m"
-#: access/transam/xlog.c:2555
+#: access/transam/xlog.c:2792
#, c-format
msgid "updated min recovery point to %X/%X on timeline %u"
msgstr "在时间点%3$u上将最小恢复点更新到%1$X/%2$X"
-#: access/transam/xlog.c:3197
+#: access/transam/xlog.c:3444
#, c-format
msgid "not enough data in file \"%s\""
msgstr "文件 \"%s\" 中的数据不足"
-#: access/transam/xlog.c:3338
+#: access/transam/xlog.c:3589
#, c-format
-msgid "could not open transaction log file \"%s\": %m"
-msgstr "无法打开事务日志文件 \"%s\": %m"
+msgid "could not open write-ahead log file \"%s\": %m"
+msgstr "无法打开预写日志文件 \"%s\": %m"
-#: access/transam/xlog.c:3527 access/transam/xlog.c:5300
+#: access/transam/xlog.c:3778 access/transam/xlog.c:5673
#, c-format
msgid "could not close log file %s: %m"
msgstr "无法关闭日志文件 %s: %m"
-#: access/transam/xlog.c:3584 access/transam/xlogutils.c:700
-#: replication/walsender.c:2099
+#: access/transam/xlog.c:3844 access/transam/xlogutils.c:703
+#: replication/walsender.c:2407
#, c-format
msgid "requested WAL segment %s has already been removed"
msgstr "所要求的WAL段%s已经被删除"
-#: access/transam/xlog.c:3644 access/transam/xlog.c:3719
-#: access/transam/xlog.c:3917
-#, c-format
-msgid "could not open transaction log directory \"%s\": %m"
-msgstr "无法打开事务日志目录 \"%s\": %m"
-
-#: access/transam/xlog.c:3800
-#, c-format
-msgid "recycled transaction log file \"%s\""
-msgstr "回收事务日志文件 \"%s\""
-
-#: access/transam/xlog.c:3812
+#: access/transam/xlog.c:4051
#, c-format
-msgid "removing transaction log file \"%s\""
-msgstr "å\88 é\99¤äº\8bå\8a¡日志文件 \"%s\""
+msgid "recycled write-ahead log file \"%s\""
+msgstr "å\9b\9eæ\94¶é¢\84å\86\99日志文件 \"%s\""
-#: access/transam/xlog.c:3832
+#: access/transam/xlog.c:4063
#, c-format
-msgid "could not rename old transaction log file \"%s\": %m"
-msgstr "无法重命名旧的事务日志文件\"%s\": %m"
+msgid "removing write-ahead log file \"%s\""
+msgstr "删除预写日志文件 \"%s\""
-#: access/transam/xlog.c:3844
+#: access/transam/xlog.c:4083
#, c-format
-msgid "could not remove old transaction log file \"%s\": %m"
-msgstr "无法删除旧的事务日志文件 \"%s\": %m"
+msgid "could not rename old write-ahead log file \"%s\": %m"
+msgstr "无法重命名旧的预写日志文件\"%s\": %m"
-#: access/transam/xlog.c:3877 access/transam/xlog.c:3887
+#: access/transam/xlog.c:4125 access/transam/xlog.c:4135
#, c-format
msgid "required WAL directory \"%s\" does not exist"
msgstr "所需要的WAL目录 \"%s\" 不存在"
-#: access/transam/xlog.c:3893
+#: access/transam/xlog.c:4141
#, c-format
msgid "creating missing WAL directory \"%s\""
msgstr "正在创建丢失的WAL目录\"%s\""
-#: access/transam/xlog.c:3896
+#: access/transam/xlog.c:4144
#, c-format
msgid "could not create missing directory \"%s\": %m"
msgstr "无法创建丢失的目录 \"%s\": %m"
-#: access/transam/xlog.c:3927
-#, c-format
-msgid "removing transaction log backup history file \"%s\""
-msgstr "正在删除事务日志备份历史文件 \"%s\""
-
-#: access/transam/xlog.c:4008
+#: access/transam/xlog.c:4252
#, c-format
msgid "unexpected timeline ID %u in log segment %s, offset %u"
msgstr "日志段%2$s,偏移%3$u出现意外的时间点ID %1$u"
-#: access/transam/xlog.c:4130
+#: access/transam/xlog.c:4380
#, c-format
msgid "new timeline %u is not a child of database system timeline %u"
msgstr "新的时间线%u不附属于数据库系统时间线%u"
-#: access/transam/xlog.c:4144
+#: access/transam/xlog.c:4394
#, c-format
-msgid ""
-"new timeline %u forked off current database system timeline %u before "
-"current recovery point %X/%X"
-msgstr ""
-"在当前恢复点%3$X/%4$X之前, 新的时间点%1$u脱离了当前茅的数据库系统时间点%2$u"
+msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X"
+msgstr "在当前恢复点%3$X/%4$X之前, 新的时间点%1$u脱离了当前茅的数据库系统时间点%2$u"
-#: access/transam/xlog.c:4163
+#: access/transam/xlog.c:4413
#, c-format
msgid "new target timeline is %u"
msgstr "新的目标时间线为%u"
-#: access/transam/xlog.c:4243
+#: access/transam/xlog.c:4493
#, c-format
msgid "could not create control file \"%s\": %m"
msgstr "无法创建控制文件 \"%s\": %m"
-#: access/transam/xlog.c:4254 access/transam/xlog.c:4490
+#: access/transam/xlog.c:4505 access/transam/xlog.c:4759
#, c-format
msgid "could not write to control file: %m"
msgstr "无法写入控制文件: %m"
-#: access/transam/xlog.c:4260 access/transam/xlog.c:4496
+#: access/transam/xlog.c:4513 access/transam/xlog.c:4767
#, c-format
msgid "could not fsync control file: %m"
msgstr "无法 fsync 控制文件: %m"
-#: access/transam/xlog.c:4265 access/transam/xlog.c:4501
+#: access/transam/xlog.c:4519 access/transam/xlog.c:4773
#, c-format
msgid "could not close control file: %m"
msgstr "无法关闭控制文件: %m"
-#: access/transam/xlog.c:4283 access/transam/xlog.c:4479
+#: access/transam/xlog.c:4538 access/transam/xlog.c:4747
#, c-format
msgid "could not open control file \"%s\": %m"
msgstr "无法打开控制文件 \"%s\": %m"
-#: access/transam/xlog.c:4289
+#: access/transam/xlog.c:4548
#, c-format
msgid "could not read from control file: %m"
msgstr "无法读取控制文件: %m"
-#: access/transam/xlog.c:4302 access/transam/xlog.c:4311
-#: access/transam/xlog.c:4335 access/transam/xlog.c:4342
-#: access/transam/xlog.c:4349 access/transam/xlog.c:4354
-#: access/transam/xlog.c:4361 access/transam/xlog.c:4368
-#: access/transam/xlog.c:4375 access/transam/xlog.c:4382
-#: access/transam/xlog.c:4389 access/transam/xlog.c:4396
-#: access/transam/xlog.c:4403 access/transam/xlog.c:4412
-#: access/transam/xlog.c:4419 access/transam/xlog.c:4428
-#: access/transam/xlog.c:4435 access/transam/xlog.c:4444
-#: access/transam/xlog.c:4451 utils/init/miscinit.c:1380
+#: access/transam/xlog.c:4551
+#, c-format
+msgid "could not read from control file: read %d bytes, expected %d"
+msgstr "无法从控制文件中读取:读取%d字节,应为%d"
+
+#: access/transam/xlog.c:4566 access/transam/xlog.c:4575
+#: access/transam/xlog.c:4599 access/transam/xlog.c:4606
+#: access/transam/xlog.c:4613 access/transam/xlog.c:4618
+#: access/transam/xlog.c:4625 access/transam/xlog.c:4632
+#: access/transam/xlog.c:4639 access/transam/xlog.c:4646
+#: access/transam/xlog.c:4653 access/transam/xlog.c:4660
+#: access/transam/xlog.c:4669 access/transam/xlog.c:4676
+#: access/transam/xlog.c:4685 access/transam/xlog.c:4692
+#: utils/init/miscinit.c:1506
#, c-format
msgid "database files are incompatible with server"
msgstr "数据库文件和服务器不兼容"
-#: access/transam/xlog.c:4303
+#: access/transam/xlog.c:4567
#, c-format
-msgid ""
-"The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), "
-"but the server was compiled with PG_CONTROL_VERSION %d (0x%08x)."
-msgstr ""
-"数据库集群是以 PG_CONTROL_VERSION %d (0x%08x)初始化的, 但是 服务器是以 "
-"PG_CONTROL_VERSION %d (0x%08x)编译的."
+msgid "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), but the server was compiled with PG_CONTROL_VERSION %d (0x%08x)."
+msgstr "数据库集群是以 PG_CONTROL_VERSION %d (0x%08x)初始化的, 但是 服务器是以 PG_CONTROL_VERSION %d (0x%08x)编译的."
-#: access/transam/xlog.c:4307
+#: access/transam/xlog.c:4571
#, c-format
-msgid ""
-"This could be a problem of mismatched byte ordering. It looks like you need "
-"to initdb."
+msgid "This could be a problem of mismatched byte ordering. It looks like you need to initdb."
msgstr "这是一个字节顺序不匹配的问题.您需要运行initdb."
-#: access/transam/xlog.c:4312
+#: access/transam/xlog.c:4576
#, c-format
-msgid ""
-"The database cluster was initialized with PG_CONTROL_VERSION %d, but the "
-"server was compiled with PG_CONTROL_VERSION %d."
-msgstr ""
-"数据库集群是以 PG_CONTROL_VERSION %d 初始化的, 但是 服务器是以 "
-"PG_CONTROL_VERSION %d 编译的."
+msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d."
+msgstr "数据库集群是以 PG_CONTROL_VERSION %d 初始化的, 但是 服务器是以 PG_CONTROL_VERSION %d 编译的."
-#: access/transam/xlog.c:4315 access/transam/xlog.c:4339
-#: access/transam/xlog.c:4346 access/transam/xlog.c:4351
+#: access/transam/xlog.c:4579 access/transam/xlog.c:4603
+#: access/transam/xlog.c:4610 access/transam/xlog.c:4615
#, c-format
msgid "It looks like you need to initdb."
msgstr "看上去, 你需要初始化数据库."
-#: access/transam/xlog.c:4326
+#: access/transam/xlog.c:4590
#, c-format
msgid "incorrect checksum in control file"
msgstr "控制文件的校验值不正确"
-#: access/transam/xlog.c:4336
+#: access/transam/xlog.c:4600
#, c-format
-msgid ""
-"The database cluster was initialized with CATALOG_VERSION_NO %d, but the "
-"server was compiled with CATALOG_VERSION_NO %d."
-msgstr ""
-"数据库簇是以 CATALOG_VERSION_NO %d 初始化的, 但是 服务器是以 "
-"CATALOG_VERSION_NO %d 编译的."
+msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d."
+msgstr "数据库簇是以 CATALOG_VERSION_NO %d 初始化的, 但是 服务器是以 CATALOG_VERSION_NO %d 编译的."
-#: access/transam/xlog.c:4343
+#: access/transam/xlog.c:4607
#, c-format
-msgid ""
-"The database cluster was initialized with MAXALIGN %d, but the server was "
-"compiled with MAXALIGN %d."
-msgstr ""
-"数据库集群是以 MAXALIGN%d 初始化的, 但是 服务器是以 NAMEDATALEN %d 编译的."
+msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d."
+msgstr "数据库集群是以 MAXALIGN%d 初始化的, 但是 服务器是以 NAMEDATALEN %d 编译的."
-#: access/transam/xlog.c:4350
+#: access/transam/xlog.c:4614
#, c-format
-msgid ""
-"The database cluster appears to use a different floating-point number format "
-"than the server executable."
+msgid "The database cluster appears to use a different floating-point number format than the server executable."
msgstr "数据库集群在使用与服务器执行部分不同的浮点数格式"
-#: access/transam/xlog.c:4355
+#: access/transam/xlog.c:4619
#, c-format
-msgid ""
-"The database cluster was initialized with BLCKSZ %d, but the server was "
-"compiled with BLCKSZ %d."
+msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d."
msgstr "数据库簇是以 BLCKSZ %d 初始化的, 但是 服务器是以 BLCKSZ %d 编译的."
-#: access/transam/xlog.c:4358 access/transam/xlog.c:4365
-#: access/transam/xlog.c:4372 access/transam/xlog.c:4379
-#: access/transam/xlog.c:4386 access/transam/xlog.c:4393
-#: access/transam/xlog.c:4400 access/transam/xlog.c:4407
-#: access/transam/xlog.c:4415 access/transam/xlog.c:4422
-#: access/transam/xlog.c:4431 access/transam/xlog.c:4438
-#: access/transam/xlog.c:4447 access/transam/xlog.c:4454
+#: access/transam/xlog.c:4622 access/transam/xlog.c:4629
+#: access/transam/xlog.c:4636 access/transam/xlog.c:4643
+#: access/transam/xlog.c:4650 access/transam/xlog.c:4657
+#: access/transam/xlog.c:4664 access/transam/xlog.c:4672
+#: access/transam/xlog.c:4679 access/transam/xlog.c:4688
+#: access/transam/xlog.c:4695
#, c-format
msgid "It looks like you need to recompile or initdb."
msgstr "看上去, 你需要重新编译或初始化数据库."
-#: access/transam/xlog.c:4362
+#: access/transam/xlog.c:4626
#, c-format
-msgid ""
-"The database cluster was initialized with RELSEG_SIZE %d, but the server was "
-"compiled with RELSEG_SIZE %d."
-msgstr ""
-"数据库簇是以 RELSEG_SIZE %d 初始化的, 但是 服务器是以 RELSEG_SIZE %d 编译的."
+msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d."
+msgstr "数据库簇是以 RELSEG_SIZE %d 初始化的, 但是 服务器是以 RELSEG_SIZE %d 编译的."
-#: access/transam/xlog.c:4369
+#: access/transam/xlog.c:4633
#, c-format
-msgid ""
-"The database cluster was initialized with XLOG_BLCKSZ %d, but the server was "
-"compiled with XLOG_BLCKSZ %d."
-msgstr ""
-"数据库集群是以 XLOG_BLCKSZ %d 初始化的, 但是 服务器是以 XLOG_BLCKSZ %d 编译"
-"的."
+msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d."
+msgstr "数据库集群是以 XLOG_BLCKSZ %d 初始化的, 但是 服务器是以 XLOG_BLCKSZ %d 编译的."
-#: access/transam/xlog.c:4376
+#: access/transam/xlog.c:4640
#, c-format
-msgid ""
-"The database cluster was initialized with XLOG_SEG_SIZE %d, but the server "
-"was compiled with XLOG_SEG_SIZE %d."
-msgstr ""
-"数据库簇是以 XLOG_SEG_SIZE %d 初始化的, 但是 服务器是以 XLOG_SEG_SIZE %d 编译"
-"的."
+msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d."
+msgstr "数据库簇是以 NAMEDATALEN %d 初始化的, 但是 服务器是以 NAMEDATALEN %d 编译的."
-#: access/transam/xlog.c:4383
+#: access/transam/xlog.c:4647
#, c-format
-msgid ""
-"The database cluster was initialized with NAMEDATALEN %d, but the server was "
-"compiled with NAMEDATALEN %d."
-msgstr ""
-"数据库簇是以 NAMEDATALEN %d 初始化的, 但是 服务器是以 NAMEDATALEN %d 编译的."
+msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d."
+msgstr "数据库集群是以 INDEX_MAX_KEYS %d 初始化的, 但是 服务器是以 INDEX_MAX_KEYS %d 编译的."
-#: access/transam/xlog.c:4390
+#: access/transam/xlog.c:4654
#, c-format
-msgid ""
-"The database cluster was initialized with INDEX_MAX_KEYS %d, but the server "
-"was compiled with INDEX_MAX_KEYS %d."
-msgstr ""
-"数据库集群是以 INDEX_MAX_KEYS %d 初始化的, 但是 服务器是以 INDEX_MAX_KEYS "
-"%d 编译的."
+msgid "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the server was compiled with TOAST_MAX_CHUNK_SIZE %d."
+msgstr "数据库集群是以 TOAST_MAX_CHUNK_SIZE %d 初始化的, 但是 服务器是以 TOAST_MAX_CHUNK_SIZE %d 编译的."
-#: access/transam/xlog.c:4397
+#: access/transam/xlog.c:4661
#, c-format
-msgid ""
-"The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the "
-"server was compiled with TOAST_MAX_CHUNK_SIZE %d."
-msgstr ""
-"数据库集群是以 TOAST_MAX_CHUNK_SIZE %d 初始化的, 但是 服务器是以 "
-"TOAST_MAX_CHUNK_SIZE %d 编译的."
+msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d."
+msgstr "数据库簇是以 LOBLKSIZE %d 初始化的, 但是 服务器是以 LOBLKSIZE %d 编译的."
-#: access/transam/xlog.c:4404
+#: access/transam/xlog.c:4670
#, c-format
-msgid ""
-"The database cluster was initialized with LOBLKSIZE %d, but the server was "
-"compiled with LOBLKSIZE %d."
-msgstr ""
-"数据库簇是以 LOBLKSIZE %d 初始化的, 但是 服务器是以 LOBLKSIZE %d 编译的."
+msgid "The database cluster was initialized without USE_FLOAT4_BYVAL but the server was compiled with USE_FLOAT4_BYVAL."
+msgstr "数据库集群在初始化时没带有USE_FLOAT4_BYVAL选项, 但是服务器是以USE_FLOAT4_BYVAL选项编译的."
-#: access/transam/xlog.c:4413
+#: access/transam/xlog.c:4677
#, c-format
-msgid ""
-"The database cluster was initialized without HAVE_INT64_TIMESTAMP but the "
-"server was compiled with HAVE_INT64_TIMESTAMP."
-msgstr ""
-"数据库簇初始化时没有定义 HAVE_INT64_TIMESTAMP, 但是 服务器编译时定义了 "
-"HAVE_INT64_TIMESTAMP."
+msgid "The database cluster was initialized with USE_FLOAT4_BYVAL but the server was compiled without USE_FLOAT4_BYVAL."
+msgstr "数据库集群是以USE_FLOAT4_BYVAL 初始化的, 但是服务器是以USE_FLOAT4_BYVAL编译的."
-#: access/transam/xlog.c:4420
+#: access/transam/xlog.c:4686
#, c-format
-msgid ""
-"The database cluster was initialized with HAVE_INT64_TIMESTAMP but the "
-"server was compiled without HAVE_INT64_TIMESTAMP."
-msgstr ""
-"数据库簇初始化时定义了 HAVE_INT64_TIMESTAMP, 但是 服务器编译时没有定义 "
-"HAVE_INT64_TIMESTAMP."
+msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL."
+msgstr "数据库集群在初始化时没有带有 USE_FLOAT8_BYVAL, 但是服务器是以 USE_FLOAT8_BYVAL编译的."
-#: access/transam/xlog.c:4429
+#: access/transam/xlog.c:4693
#, c-format
-msgid ""
-"The database cluster was initialized without USE_FLOAT4_BYVAL but the server "
-"was compiled with USE_FLOAT4_BYVAL."
-msgstr ""
-"数据库集群在初始化时没带有USE_FLOAT4_BYVAL选项, 但是服务器是以"
-"USE_FLOAT4_BYVAL选项编译的."
+msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL."
+msgstr "数据库集群是以USE_FLOAT8_BYVAL初始化的, 但是 服务器没有以USE_FLOAT8_BYVAL编译."
-#: access/transam/xlog.c:4436
+#: access/transam/xlog.c:4702
#, c-format
-msgid ""
-"The database cluster was initialized with USE_FLOAT4_BYVAL but the server "
-"was compiled without USE_FLOAT4_BYVAL."
-msgstr ""
-"数据库集群是以USE_FLOAT4_BYVAL 初始化的, 但是服务器是以USE_FLOAT4_BYVAL编译"
-"的."
+msgid "WAL segment size must be a power of two between 1 MB and 1 GB, but the control file specifies %d byte"
+msgid_plural "WAL segment size must be a power of two between 1 MB and 1 GB, but the control file specifies %d bytes"
+msgstr[0] "WAL段大小必须是1 MB到1 GB之间的2的幂,但控制文件指定了%d字节"
-#: access/transam/xlog.c:4445
+#: access/transam/xlog.c:4714
#, c-format
-msgid ""
-"The database cluster was initialized without USE_FLOAT8_BYVAL but the server "
-"was compiled with USE_FLOAT8_BYVAL."
-msgstr ""
-"数据库集群在初始化时没有带有 USE_FLOAT8_BYVAL, 但是服务器是以 "
-"USE_FLOAT8_BYVAL编译的."
+msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\""
+msgstr "\"min_wal_size\"必须至少是\"wal_segment_size\"的两倍"
-#: access/transam/xlog.c:4452
+#: access/transam/xlog.c:4718
#, c-format
-msgid ""
-"The database cluster was initialized with USE_FLOAT8_BYVAL but the server "
-"was compiled without USE_FLOAT8_BYVAL."
-msgstr ""
-"数据库集群是以USE_FLOAT8_BYVAL初始化的, 但是 服务器没有以USE_FLOAT8_BYVAL编"
-"译."
+msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\""
+msgstr "\"max_wal_size\"必须至少是\"wal_segment_size\"的两倍"
+
+#: access/transam/xlog.c:5105
+#, c-format
+msgid "could not generate secret authorization token"
+msgstr "无法生成机密授权令牌"
-#: access/transam/xlog.c:4875
+#: access/transam/xlog.c:5195
#, c-format
-msgid "could not write bootstrap transaction log file: %m"
-msgstr "无法写入 bootstrap 事务日志文件: %m"
+msgid "could not write bootstrap write-ahead log file: %m"
+msgstr "无法写入 bootstrap 预写日志文件: %m"
-#: access/transam/xlog.c:4881
+#: access/transam/xlog.c:5203
#, c-format
-msgid "could not fsync bootstrap transaction log file: %m"
-msgstr "无法同步 (fsync) 事务日志文件: %m"
+msgid "could not fsync bootstrap write-ahead log file: %m"
+msgstr "无法同步 (fsync) 预写日志文件: %m"
-#: access/transam/xlog.c:4886
+#: access/transam/xlog.c:5209
#, c-format
-msgid "could not close bootstrap transaction log file: %m"
-msgstr "无法关闭 bootstrap 事务日志文件: %m"
+msgid "could not close bootstrap write-ahead log file: %m"
+msgstr "无法关闭 bootstrap 预写日志文件: %m"
-#: access/transam/xlog.c:4961
+#: access/transam/xlog.c:5291
#, c-format
msgid "could not open recovery command file \"%s\": %m"
msgstr "无法打开恢复命令文件 \"%s\": %m"
-#: access/transam/xlog.c:5007 access/transam/xlog.c:5090
+#: access/transam/xlog.c:5337 access/transam/xlog.c:5451
#, c-format
msgid "invalid value for recovery parameter \"%s\": \"%s\""
msgstr "恢复参数 \"%s\" 的值无效:\"%s\""
-#: access/transam/xlog.c:5010
+#: access/transam/xlog.c:5340
#, c-format
msgid "Valid values are \"pause\", \"promote\", and \"shutdown\"."
msgstr "有效值为\"pause\"、\"promote\"和\"shutdown\"。"
-#: access/transam/xlog.c:5029
+#: access/transam/xlog.c:5360
#, c-format
msgid "recovery_target_timeline is not a valid number: \"%s\""
msgstr "recovery_target_timeline 不是一个有效的数字: \"%s\""
-#: access/transam/xlog.c:5045
+#: access/transam/xlog.c:5377
#, c-format
msgid "recovery_target_xid is not a valid number: \"%s\""
msgstr "recovery_target_xid 不是一个有效的数字: \"%s\""
-#: access/transam/xlog.c:5076
+#: access/transam/xlog.c:5397
+#, c-format
+msgid "recovery_target_time is not a valid timestamp: \"%s\""
+msgstr "recovery_target_timeline 不是一个有效的时间戳: \"%s\""
+
+#: access/transam/xlog.c:5420
#, c-format
msgid "recovery_target_name is too long (maximum %d characters)"
msgstr "recovery_target_name 值超长 (最大长度为 %d 个字符)"
-#: access/transam/xlog.c:5093
+#: access/transam/xlog.c:5454
#, c-format
msgid "The only allowed value is \"immediate\"."
msgstr "唯一有效的值是\"immediate\"."
-#: access/transam/xlog.c:5106 access/transam/xlog.c:5117
-#: commands/extension.c:533 commands/extension.c:541 utils/misc/guc.c:5637
+#: access/transam/xlog.c:5467 access/transam/xlog.c:5478
+#: commands/extension.c:547 commands/extension.c:555 utils/misc/guc.c:5993
#, c-format
msgid "parameter \"%s\" requires a Boolean value"
msgstr "参数 \"%s\" 需要一个布尔值"
-#: access/transam/xlog.c:5152
+#: access/transam/xlog.c:5513
#, c-format
msgid "parameter \"%s\" requires a temporal value"
msgstr "参数 \"%s\" 需要一个临时值"
-#: access/transam/xlog.c:5154 catalog/dependency.c:991
-#: catalog/dependency.c:992 catalog/dependency.c:998 catalog/dependency.c:999
-#: catalog/dependency.c:1010 catalog/dependency.c:1011
-#: catalog/objectaddress.c:1100 commands/tablecmds.c:795
-#: commands/tablecmds.c:9447 commands/user.c:1045 commands/view.c:482
-#: libpq/auth.c:304 storage/lmgr/deadlock.c:1139 storage/lmgr/proc.c:1276
-#: utils/adt/acl.c:5281 utils/misc/guc.c:5659 utils/misc/guc.c:5752
-#: utils/misc/guc.c:9686 utils/misc/guc.c:9720 utils/misc/guc.c:9754
-#: utils/misc/guc.c:9788 utils/misc/guc.c:9823
+#: access/transam/xlog.c:5515 catalog/dependency.c:969 catalog/dependency.c:970
+#: catalog/dependency.c:976 catalog/dependency.c:977 catalog/dependency.c:988
+#: catalog/dependency.c:989 commands/tablecmds.c:1072
+#: commands/tablecmds.c:11297 commands/user.c:1064 commands/view.c:509
+#: libpq/auth.c:336 replication/syncrep.c:1162 storage/lmgr/deadlock.c:1139
+#: storage/lmgr/proc.c:1331 utils/adt/acl.c:5344 utils/misc/guc.c:6015
+#: utils/misc/guc.c:6108 utils/misc/guc.c:10098 utils/misc/guc.c:10132
+#: utils/misc/guc.c:10166 utils/misc/guc.c:10200 utils/misc/guc.c:10235
#, c-format
msgid "%s"
msgstr "%s"
-#: access/transam/xlog.c:5160
+#: access/transam/xlog.c:5522
#, c-format
msgid "unrecognized recovery parameter \"%s\""
msgstr "未认可的恢复参数 \"%s\""
-#: access/transam/xlog.c:5171
+#: access/transam/xlog.c:5533
#, c-format
-msgid ""
-"recovery command file \"%s\" specified neither primary_conninfo nor "
-"restore_command"
-msgstr ""
-"恢复命令文件 \"%s\" 既没有指定restore_command,也没有指定primary_conninfo"
+msgid "recovery command file \"%s\" specified neither primary_conninfo nor restore_command"
+msgstr "恢复命令文件 \"%s\" 既没有指定restore_command,也没有指定primary_conninfo"
-#: access/transam/xlog.c:5173
+#: access/transam/xlog.c:5535
#, c-format
-msgid ""
-"The database server will regularly poll the pg_xlog subdirectory to check "
-"for files placed there."
-msgstr "数据服务器将会通过定期轮询pg_xlog子目录来检查放在这里的文件。"
+msgid "The database server will regularly poll the pg_wal subdirectory to check for files placed there."
+msgstr "数据服务器将会通过定期轮询pg_wal子目录来检查放在这里的文件。"
-#: access/transam/xlog.c:5179
+#: access/transam/xlog.c:5542
#, c-format
-msgid ""
-"recovery command file \"%s\" must specify restore_command when standby mode "
-"is not enabled"
-msgstr ""
-"当没有启用备份模式的时候恢复命令文件 \"%s\" 必须指定 restore_command的值"
+msgid "recovery command file \"%s\" must specify restore_command when standby mode is not enabled"
+msgstr "当没有启用备份模式的时候恢复命令文件 \"%s\" 必须指定 restore_command的值"
-#: access/transam/xlog.c:5209
+#: access/transam/xlog.c:5563
+#, c-format
+msgid "standby mode is not supported by single-user servers"
+msgstr "单用户服务器不支持待机模式"
+
+#: access/transam/xlog.c:5582
#, c-format
msgid "recovery target timeline %u does not exist"
msgstr "恢复目标的时间线 %u 不存在"
-#: access/transam/xlog.c:5330
+#: access/transam/xlog.c:5703
#, c-format
msgid "archive recovery complete"
msgstr "归档恢复完毕"
-#: access/transam/xlog.c:5389 access/transam/xlog.c:5617
+#: access/transam/xlog.c:5762 access/transam/xlog.c:6028
#, c-format
msgid "recovery stopping after reaching consistency"
msgstr "达到一致性前恢复停止"
-#: access/transam/xlog.c:5477
+#: access/transam/xlog.c:5783
+#, c-format
+msgid "recovery stopping before WAL location (LSN) \"%X/%X\""
+msgstr "恢复停止在WAL位置(LSN) \"%X/%X\"之前"
+
+#: access/transam/xlog.c:5869
#, c-format
msgid "recovery stopping before commit of transaction %u, time %s"
msgstr "恢复停止在事物 %u 提交之前, 时间 %s"
-#: access/transam/xlog.c:5484
+#: access/transam/xlog.c:5876
#, c-format
msgid "recovery stopping before abort of transaction %u, time %s"
msgstr "恢复停止在事物 %u 中断之前, 时间 %s"
-#: access/transam/xlog.c:5529
+#: access/transam/xlog.c:5922
#, c-format
msgid "recovery stopping at restore point \"%s\", time %s"
msgstr "恢复停止在恢复点 \"%s\", 时间 %s"
-#: access/transam/xlog.c:5597
+#: access/transam/xlog.c:5940
+#, c-format
+msgid "recovery stopping after WAL location (LSN) \"%X/%X\""
+msgstr "恢复停止在WAL位置(LSN) \"%X/%X\"之后"
+
+#: access/transam/xlog.c:6008
#, c-format
msgid "recovery stopping after commit of transaction %u, time %s"
msgstr "恢复停止在事物 %u 提交之后, 时间 %s"
-#: access/transam/xlog.c:5605
+#: access/transam/xlog.c:6016
#, c-format
msgid "recovery stopping after abort of transaction %u, time %s"
msgstr "恢复停止在事物 %u 中断之后, 时间 %s"
-#: access/transam/xlog.c:5644
+#: access/transam/xlog.c:6056
#, c-format
msgid "recovery has paused"
msgstr "恢复操作已暂停"
-#: access/transam/xlog.c:5645
+#: access/transam/xlog.c:6057
#, c-format
-msgid "Execute pg_xlog_replay_resume() to continue."
-msgstr "执行 pg_xlog_replay_resume() 以继续."
+msgid "Execute pg_wal_replay_resume() to continue."
+msgstr "执行 pg_wal_replay_resume() 以继续."
-#: access/transam/xlog.c:5852
+#: access/transam/xlog.c:6265
#, c-format
-msgid ""
-"hot standby is not possible because %s = %d is a lower setting than on the "
-"master server (its value was %d)"
-msgstr ""
-"在备用点无法实施热备操作,因为%s = %d这个设置低于在主服务器的设置(它的值"
-"是%d)"
+msgid "hot standby is not possible because %s = %d is a lower setting than on the master server (its value was %d)"
+msgstr "在备用点无法实施热备操作,因为%s = %d这个设置低于在主服务器的设置(它的值是%d)"
-#: access/transam/xlog.c:5878
+#: access/transam/xlog.c:6291
#, c-format
msgid "WAL was generated with wal_level=minimal, data may be missing"
msgstr "WAL文件由wal_level=minimal的设置而产生,这种情况下数据可能会丢失"
-#: access/transam/xlog.c:5879
+#: access/transam/xlog.c:6292
#, c-format
-msgid ""
-"This happens if you temporarily set wal_level=minimal without taking a new "
-"base backup."
-msgstr ""
-"发生这种情况是因为您临时将wal_level设置为minimal,而没有同时进行基础备份"
+msgid "This happens if you temporarily set wal_level=minimal without taking a new base backup."
+msgstr "发生这种情况是因为您临时将wal_level设置为minimal,而没有同时进行基础备份"
-#: access/transam/xlog.c:5890
+#: access/transam/xlog.c:6303
#, c-format
-#| msgid ""
-#| "hot standby is not possible because wal_level was not set to \"hot_standby"
-#| "\" or higher on the master server"
-msgid ""
-"hot standby is not possible because wal_level was not set to \"replica\" or "
-"higher on the master server"
-msgstr ""
-"无法实施热后备,因为在主服务器上 wal_level 没有被设置为 \"replica\" 或更高的"
-"值"
+msgid "hot standby is not possible because wal_level was not set to \"replica\" or higher on the master server"
+msgstr "无法实施热后备,因为在主服务器上 wal_level 没有被设置为 \"replica\" 或更高的值"
-#: access/transam/xlog.c:5891
+#: access/transam/xlog.c:6304
#, c-format
-#| msgid ""
-#| "Either set wal_level to \"hot_standby\" on the master, or turn off "
-#| "hot_standby here."
-msgid ""
-"Either set wal_level to \"replica\" on the master, or turn off hot_standby "
-"here."
-msgstr ""
-"要么在主服务器上把 wal_level 设置为\"replica\" ,要么在这里把 hot_standby 关"
-"闭。"
+msgid "Either set wal_level to \"replica\" on the master, or turn off hot_standby here."
+msgstr "要么在主服务器上把 wal_level 设置为\"replica\" ,要么在这里把 hot_standby 关闭。"
-#: access/transam/xlog.c:5948
+#: access/transam/xlog.c:6356
#, c-format
msgid "control file contains invalid data"
msgstr "控制文件包含无效的数据"
-#: access/transam/xlog.c:5954
+#: access/transam/xlog.c:6362
#, c-format
msgid "database system was shut down at %s"
msgstr "数据库上次关闭时间为 %s"
-#: access/transam/xlog.c:5959
+#: access/transam/xlog.c:6367
#, c-format
msgid "database system was shut down in recovery at %s"
msgstr "在%s,数据库在恢复中关闭"
-#: access/transam/xlog.c:5963
+#: access/transam/xlog.c:6371
#, c-format
msgid "database system shutdown was interrupted; last known up at %s"
msgstr "数据库系统关闭操作被中断;上一次已知的运行是在%s"
-#: access/transam/xlog.c:5967
+#: access/transam/xlog.c:6375
#, c-format
msgid "database system was interrupted while in recovery at %s"
msgstr "恢复时, 数据库系统在 %s 被中断"
-#: access/transam/xlog.c:5969
+#: access/transam/xlog.c:6377
#, c-format
-msgid ""
-"This probably means that some data is corrupted and you will have to use the "
-"last backup for recovery."
+msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery."
msgstr "这意味着一些数据被毁坏, 你将不得不使用最新的备份恢复."
-#: access/transam/xlog.c:5973
+#: access/transam/xlog.c:6381
#, c-format
msgid "database system was interrupted while in recovery at log time %s"
msgstr "当日志时间%s进行恢复时,数据库系统被中断"
-#: access/transam/xlog.c:5975
+#: access/transam/xlog.c:6383
#, c-format
-msgid ""
-"If this has occurred more than once some data might be corrupted and you "
-"might need to choose an earlier recovery target."
-msgstr ""
-"如果这种现象多次发生,那么表示数据可能已经损坏,您可能需要选择更早一点的恢复"
-"目标"
+msgid "If this has occurred more than once some data might be corrupted and you might need to choose an earlier recovery target."
+msgstr "如果这种现象多次发生,那么表示数据可能已经损坏,您可能需要选择更早一点的恢复目标"
-#: access/transam/xlog.c:5979
+#: access/transam/xlog.c:6387
#, c-format
msgid "database system was interrupted; last known up at %s"
msgstr "数据库系统中断;上一次的启动时间是在%s"
-#: access/transam/xlog.c:6035
+#: access/transam/xlog.c:6443
#, c-format
msgid "entering standby mode"
msgstr "正在进入备用模式"
-#: access/transam/xlog.c:6038
+#: access/transam/xlog.c:6446
#, c-format
msgid "starting point-in-time recovery to XID %u"
msgstr "开始执行到XID %u的基于时间点恢复"
-#: access/transam/xlog.c:6042
+#: access/transam/xlog.c:6450
#, c-format
msgid "starting point-in-time recovery to %s"
msgstr "开始执行到%s的基于时间点恢复"
-#: access/transam/xlog.c:6046
+#: access/transam/xlog.c:6454
#, c-format
msgid "starting point-in-time recovery to \"%s\""
msgstr "开始执行到基于时间点恢复的时间点\"%s\""
-#: access/transam/xlog.c:6050
+#: access/transam/xlog.c:6458
+#, c-format
+msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\""
+msgstr "开始执行到基于时间点恢复到WAL位置(LSN) \"%X/%X\""
+
+#: access/transam/xlog.c:6463
#, c-format
msgid "starting point-in-time recovery to earliest consistent point"
msgstr "开始执行到最早一致点的基于时间点恢复"
-#: access/transam/xlog.c:6053
+#: access/transam/xlog.c:6466
#, c-format
msgid "starting archive recovery"
msgstr "开始归档恢复"
-#: access/transam/xlog.c:6097 access/transam/xlog.c:6225
+#: access/transam/xlog.c:6520 access/transam/xlog.c:6645
#, c-format
msgid "checkpoint record is at %X/%X"
msgstr "checkpoint 记录位置在 %X/%X"
-#: access/transam/xlog.c:6111
+#: access/transam/xlog.c:6534
#, c-format
msgid "could not find redo location referenced by checkpoint record"
msgstr "无法找到checkpoint 记录对应的重做日志位置"
-#: access/transam/xlog.c:6112 access/transam/xlog.c:6119
+#: access/transam/xlog.c:6535 access/transam/xlog.c:6542
#, c-format
-msgid ""
-"If you are not restoring from a backup, try removing the file \"%s/"
-"backup_label\"."
+msgid "If you are not restoring from a backup, try removing the file \"%s/backup_label\"."
msgstr "如果你不是从备份恢复, 请删除 \"%s/backup_label\"."
-#: access/transam/xlog.c:6118
+#: access/transam/xlog.c:6541
#, c-format
msgid "could not locate required checkpoint record"
msgstr "无法找到需要的 checkpoint 记录"
-#: access/transam/xlog.c:6144 commands/tablespace.c:645
+#: access/transam/xlog.c:6567 commands/tablespace.c:641
#, c-format
msgid "could not create symbolic link \"%s\": %m"
msgstr "无法创建符号链接 \"%s\": %m"
-#: access/transam/xlog.c:6176
+#: access/transam/xlog.c:6599 access/transam/xlog.c:6605
#, c-format
msgid "ignoring file \"%s\" because no file \"%s\" exists"
msgstr "忽略文件\"%s\",因为不存在文件\"%s\""
-#: access/transam/xlog.c:6178 access/transam/xlog.c:10918
+#: access/transam/xlog.c:6601 access/transam/xlog.c:11621
#, c-format
msgid "File \"%s\" was renamed to \"%s\"."
msgstr "文件\"%s\" 被重新命名为\"%s\"。"
-#: access/transam/xlog.c:6182
-#, c-format
-msgid "ignoring \"%s\" file because no \"%s\" file exists"
-msgstr "忽略\"%s\"文件,因为不存在\"%s\"文件"
-
-#: access/transam/xlog.c:6184
+#: access/transam/xlog.c:6607
#, c-format
msgid "Could not rename file \"%s\" to \"%s\": %m."
msgstr "无法把文件\"%s\"重命名为\"%s\":%m。"
-#: access/transam/xlog.c:6235 access/transam/xlog.c:6250
+#: access/transam/xlog.c:6657
#, c-format
msgid "could not locate a valid checkpoint record"
msgstr "无法找到一个有效的 checkpoint 记录"
-#: access/transam/xlog.c:6244
-#, c-format
-msgid "using previous checkpoint record at %X/%X"
-msgstr "使用在 %X/%X 的前一个 checkpoint 记录"
-
-#: access/transam/xlog.c:6288
+#: access/transam/xlog.c:6695
#, c-format
msgid "requested timeline %u is not a child of this server's history"
msgstr "所要求的时间线%u不在服务器的历史时间线里"
-#: access/transam/xlog.c:6290
+#: access/transam/xlog.c:6697
#, c-format
-msgid ""
-"Latest checkpoint is at %X/%X on timeline %u, but in the history of the "
-"requested timeline, the server forked off from that timeline at %X/%X."
-msgstr ""
-"最近的检查点位于%X/%X,时间点为%u, 但是在请求的历史时间点中,服务器端在那个时"
-"间点会产生分支%X/%X."
+msgid "Latest checkpoint is at %X/%X on timeline %u, but in the history of the requested timeline, the server forked off from that timeline at %X/%X."
+msgstr "最近的检查点位于%X/%X,时间点为%u, 但是在请求的历史时间点中,服务器端在那个时间点会产生分支%X/%X."
-#: access/transam/xlog.c:6306
+#: access/transam/xlog.c:6713
#, c-format
-msgid ""
-"requested timeline %u does not contain minimum recovery point %X/%X on "
-"timeline %u"
+msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u"
msgstr "所要求的时间线%u不包含最小恢复点%X/%X,在时间线%u处"
-#: access/transam/xlog.c:6337
+#: access/transam/xlog.c:6744
#, c-format
msgid "invalid next transaction ID"
msgstr "无效的下一个事务 ID"
-#: access/transam/xlog.c:6420
+#: access/transam/xlog.c:6839
#, c-format
msgid "invalid redo in checkpoint record"
msgstr "在检查点记录中无效的redo操作"
-#: access/transam/xlog.c:6431
+#: access/transam/xlog.c:6850
#, c-format
msgid "invalid redo record in shutdown checkpoint"
msgstr "在关闭检查点中的redo记录无效"
-#: access/transam/xlog.c:6459
+#: access/transam/xlog.c:6878
#, c-format
-msgid ""
-"database system was not properly shut down; automatic recovery in progress"
+msgid "database system was not properly shut down; automatic recovery in progress"
msgstr "数据库系统没有正确的关闭; 处于自动恢复状态中"
-#: access/transam/xlog.c:6463
+#: access/transam/xlog.c:6882
#, c-format
msgid "crash recovery starts in timeline %u and has target timeline %u"
msgstr "崩溃恢复开始于时间线%u, 目标时间线是%u"
-#: access/transam/xlog.c:6507
+#: access/transam/xlog.c:6925
#, c-format
msgid "backup_label contains data inconsistent with control file"
msgstr "backup_label 包含了与控制文件不一致的数据"
-#: access/transam/xlog.c:6508
+#: access/transam/xlog.c:6926
#, c-format
-msgid ""
-"This means that the backup is corrupted and you will have to use another "
-"backup for recovery."
+msgid "This means that the backup is corrupted and you will have to use another backup for recovery."
msgstr "这意味着一些数据备份已毁坏, 你将不得不使用别的备份进行恢复."
-#: access/transam/xlog.c:6582
+#: access/transam/xlog.c:7017
#, c-format
msgid "initializing for hot standby"
msgstr "正在为热备进行初始化"
-#: access/transam/xlog.c:6714
+#: access/transam/xlog.c:7149
#, c-format
msgid "redo starts at %X/%X"
msgstr "redo 在 %X/%X 开始"
-#: access/transam/xlog.c:6939
+#: access/transam/xlog.c:7383
#, c-format
msgid "requested recovery stop point is before consistent recovery point"
msgstr "所要求的恢复停止点在一致性恢复点之前"
-#: access/transam/xlog.c:6977
+#: access/transam/xlog.c:7421
#, c-format
msgid "redo done at %X/%X"
msgstr "redo 在 %X/%X 完成"
-#: access/transam/xlog.c:6982 access/transam/xlog.c:8906
+#: access/transam/xlog.c:7426
#, c-format
msgid "last completed transaction was at log time %s"
msgstr "上一次完成事务是在日志时间%s完成的."
-#: access/transam/xlog.c:6991
+#: access/transam/xlog.c:7435
#, c-format
msgid "redo is not required"
msgstr "不需要 redo"
-#: access/transam/xlog.c:7066 access/transam/xlog.c:7070
+#: access/transam/xlog.c:7510 access/transam/xlog.c:7514
#, c-format
msgid "WAL ends before end of online backup"
msgstr "联机备份终止之前,WAL已经终止"
-#: access/transam/xlog.c:7067
+#: access/transam/xlog.c:7511
#, c-format
-msgid ""
-"All WAL generated while online backup was taken must be available at "
-"recovery."
+msgid "All WAL generated while online backup was taken must be available at recovery."
msgstr "所有联机备份时产生的WAL日志在恢复时必须存在."
-#: access/transam/xlog.c:7071
+#: access/transam/xlog.c:7515
#, c-format
-msgid ""
-"Online backup started with pg_start_backup() must be ended with "
-"pg_stop_backup(), and all WAL up to that point must be available at recovery."
-msgstr ""
-"由pg_start_backup()发起的联机备份必须通过调用pg_stop_backup()来终止, 并且到那"
-"一刻为止所有的WAL日志在恢复时必须存在."
+msgid "Online backup started with pg_start_backup() must be ended with pg_stop_backup(), and all WAL up to that point must be available at recovery."
+msgstr "由pg_start_backup()发起的联机备份必须通过调用pg_stop_backup()来终止, 并且到那一刻为止所有的WAL日志在恢复时必须存在."
-#: access/transam/xlog.c:7074
+#: access/transam/xlog.c:7518
#, c-format
msgid "WAL ends before consistent recovery point"
msgstr "在一致性恢复点前结束WAL"
-#: access/transam/xlog.c:7101
+#: access/transam/xlog.c:7552
#, c-format
msgid "selected new timeline ID: %u"
msgstr "已选择的新时间线ID:%u"
-#: access/transam/xlog.c:7512
+#: access/transam/xlog.c:7989
#, c-format
msgid "consistent recovery state reached at %X/%X"
msgstr "在%X/%X上已到达一致性恢复状态"
-#: access/transam/xlog.c:7703
+#: access/transam/xlog.c:8181
#, c-format
msgid "invalid primary checkpoint link in control file"
msgstr "在控制文件中无效的主 checkpoint 链接"
-#: access/transam/xlog.c:7707
-#, c-format
-msgid "invalid secondary checkpoint link in control file"
-msgstr "在控制文件中无效的次 checkpoint 链接"
-
-#: access/transam/xlog.c:7711
+#: access/transam/xlog.c:8185
#, c-format
msgid "invalid checkpoint link in backup_label file"
msgstr "在 backup_label 文件中无效的 checkpoint 链接"
-#: access/transam/xlog.c:7728
+#: access/transam/xlog.c:8202
#, c-format
msgid "invalid primary checkpoint record"
msgstr "无效的主 checkpoint 记录"
-#: access/transam/xlog.c:7732
-#, c-format
-msgid "invalid secondary checkpoint record"
-msgstr "无效的次 checkpoint 记录"
-
-#: access/transam/xlog.c:7736
+#: access/transam/xlog.c:8206
#, c-format
msgid "invalid checkpoint record"
msgstr "无效的 checkpoint 记录"
-#: access/transam/xlog.c:7747
+#: access/transam/xlog.c:8217
#, c-format
msgid "invalid resource manager ID in primary checkpoint record"
msgstr "在主 checkpoint 记录中的无效资源管理器 ID"
-#: access/transam/xlog.c:7751
-#, c-format
-msgid "invalid resource manager ID in secondary checkpoint record"
-msgstr "在次 checkpoint 记录中的无效资源管理器 ID"
-
-#: access/transam/xlog.c:7755
+#: access/transam/xlog.c:8221
#, c-format
msgid "invalid resource manager ID in checkpoint record"
msgstr "在 checkpoint 记录中的无效资源管理器 ID"
-#: access/transam/xlog.c:7767
+#: access/transam/xlog.c:8234
#, c-format
msgid "invalid xl_info in primary checkpoint record"
msgstr "在主 checkpoint 记录中无效的 xl_info"
-#: access/transam/xlog.c:7771
-#, c-format
-msgid "invalid xl_info in secondary checkpoint record"
-msgstr "在次 checkpoint 记录中无效的 xl_info"
-
-#: access/transam/xlog.c:7775
+#: access/transam/xlog.c:8238
#, c-format
msgid "invalid xl_info in checkpoint record"
msgstr "在 checkpoint 记录中无效的 xl_info"
-#: access/transam/xlog.c:7786
+#: access/transam/xlog.c:8249
#, c-format
msgid "invalid length of primary checkpoint record"
msgstr "无效的主 checkpoint 记录长度"
-#: access/transam/xlog.c:7790
-#, c-format
-msgid "invalid length of secondary checkpoint record"
-msgstr "无效的次 checkpoint 记录长度"
-
-#: access/transam/xlog.c:7794
+#: access/transam/xlog.c:8253
#, c-format
msgid "invalid length of checkpoint record"
msgstr "无效的 checkpoint 记录长度"
-#: access/transam/xlog.c:7962
+#: access/transam/xlog.c:8459
#, c-format
msgid "shutting down"
msgstr "正在关闭"
-#: access/transam/xlog.c:8475
+#: access/transam/xlog.c:8779
#, c-format
-msgid ""
-"concurrent transaction log activity while database system is shutting down"
-msgstr "当数据库正在关闭时, 仍有活跃的并发事物日志"
+msgid "checkpoint skipped because system is idle"
+msgstr "由于系统空闲,跳过了检查点"
+
+#: access/transam/xlog.c:8984
+#, c-format
+msgid "concurrent write-ahead log activity while database system is shutting down"
+msgstr "当数据库正在关闭时, 仍有活跃的并发预写日志"
-#: access/transam/xlog.c:8726
+#: access/transam/xlog.c:9241
#, c-format
msgid "skipping restartpoint, recovery has already ended"
msgstr "正在跳过重新启动点, 恢复已经结束"
-#: access/transam/xlog.c:8749
+#: access/transam/xlog.c:9264
#, c-format
msgid "skipping restartpoint, already performed at %X/%X"
msgstr "跳过重新启动点,它已经在%X/%X上执行了."
-#: access/transam/xlog.c:8904
+#: access/transam/xlog.c:9431
#, c-format
msgid "recovery restart point at %X/%X"
msgstr "恢复得重新启动点是在%X/%X开始"
-#: access/transam/xlog.c:9037
+#: access/transam/xlog.c:9433
+#, c-format
+msgid "Last completed transaction was at log time %s."
+msgstr "上一次完成事务是在日志时间%s完成的."
+
+#: access/transam/xlog.c:9567
#, c-format
msgid "restore point \"%s\" created at %X/%X"
msgstr "恢复点\"%s\",创建于%X/%X"
-#: access/transam/xlog.c:9167
+#: access/transam/xlog.c:9705
#, c-format
-msgid ""
-"unexpected previous timeline ID %u (current timeline ID %u) in checkpoint "
-"record"
+msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record"
msgstr "在检查点记录中出现未期望的时间线ID%u(当前时间线%u)"
-#: access/transam/xlog.c:9176
+#: access/transam/xlog.c:9714
#, c-format
msgid "unexpected timeline ID %u (after %u) in checkpoint record"
msgstr "在检查点记录中出现未期望的时间线ID%u(在%u之后)"
-#: access/transam/xlog.c:9192
+#: access/transam/xlog.c:9730
#, c-format
-msgid ""
-"unexpected timeline ID %u in checkpoint record, before reaching minimum "
-"recovery point %X/%X on timeline %u"
-msgstr ""
-"在达到最小恢复点%2$X/%3$X之前,时间点%4$u处,在检查点记录中出现意外的时间点"
-"ID %1$u"
+msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u"
+msgstr "在达到最小恢复点%2$X/%3$X之前,时间点%4$u处,在检查点记录中出现意外的时间点ID %1$u"
-#: access/transam/xlog.c:9263
+#: access/transam/xlog.c:9806
#, c-format
msgid "online backup was canceled, recovery cannot continue"
msgstr "在线备份操作已取消,恢复操作无法继续"
-#: access/transam/xlog.c:9319 access/transam/xlog.c:9366
-#: access/transam/xlog.c:9389
+#: access/transam/xlog.c:9862 access/transam/xlog.c:9918
+#: access/transam/xlog.c:9941
#, c-format
msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
msgstr "在检查点记录中出现未期望的时间线ID%u(应该是%u)"
-#: access/transam/xlog.c:9664
+#: access/transam/xlog.c:10222
#, c-format
msgid "could not fsync log segment %s: %m"
msgstr "无法同步 (fsync) 日志段 %s: %m"
-#: access/transam/xlog.c:9688
+#: access/transam/xlog.c:10247
#, c-format
msgid "could not fsync log file %s: %m"
msgstr "无法 fsync 日志文件 %s: %m"
-#: access/transam/xlog.c:9696
+#: access/transam/xlog.c:10255
#, c-format
msgid "could not fsync write-through log file %s: %m"
msgstr "无法同步 (fsync) 写入日志文件%s: %m"
-#: access/transam/xlog.c:9705
+#: access/transam/xlog.c:10264
#, c-format
msgid "could not fdatasync log file %s: %m"
msgstr "无法同步 (fdatasync) 日志文件 %s: %m"
-#: access/transam/xlog.c:9796 access/transam/xlog.c:10267
-#: access/transam/xlogfuncs.c:295 access/transam/xlogfuncs.c:322
-#: access/transam/xlogfuncs.c:361 access/transam/xlogfuncs.c:382
-#: access/transam/xlogfuncs.c:403
+#: access/transam/xlog.c:10355 access/transam/xlog.c:10882
+#: access/transam/xlogfuncs.c:287 access/transam/xlogfuncs.c:314
+#: access/transam/xlogfuncs.c:353 access/transam/xlogfuncs.c:374
+#: access/transam/xlogfuncs.c:395
#, c-format
msgid "WAL control functions cannot be executed during recovery."
msgstr "在恢复期间无法执行WAL控制函数"
-#: access/transam/xlog.c:9805 access/transam/xlog.c:10276
+#: access/transam/xlog.c:10364 access/transam/xlog.c:10891
#, c-format
msgid "WAL level not sufficient for making an online backup"
msgstr "WAL的级别不能满足在线备份的要求"
-#: access/transam/xlog.c:9806 access/transam/xlog.c:10277
-#: access/transam/xlogfuncs.c:328
+#: access/transam/xlog.c:10365 access/transam/xlog.c:10892
+#: access/transam/xlogfuncs.c:320
#, c-format
-#| msgid ""
-#| "wal_level must be set to \"archive\", \"hot_standby\", or \"logical\" at "
-#| "server start."
msgid "wal_level must be set to \"replica\" or \"logical\" at server start."
msgstr "wal_level 必须在服务器启动的时候被设置为 \"replica\" 或 \"logical\"。"
-#: access/transam/xlog.c:9811
+#: access/transam/xlog.c:10370
#, c-format
msgid "backup label too long (max %d bytes)"
msgstr "备份标签名超长(最大为%d字节)"
-#: access/transam/xlog.c:9843 access/transam/xlog.c:10115
-#: access/transam/xlog.c:10153
+#: access/transam/xlog.c:10407 access/transam/xlog.c:10683
+#: access/transam/xlog.c:10721
#, c-format
msgid "a backup is already in progress"
msgstr "一个备份已经在运行中"
-#: access/transam/xlog.c:9844
+#: access/transam/xlog.c:10408
#, c-format
msgid "Run pg_stop_backup() and try again."
msgstr "运行pg_stop_backup(),然后重新尝试一次."
-#: access/transam/xlog.c:9939
+#: access/transam/xlog.c:10504
#, c-format
-msgid ""
-"WAL generated with full_page_writes=off was replayed since last restartpoint"
+msgid "WAL generated with full_page_writes=off was replayed since last restartpoint"
msgstr "使用full_page_writes=off产生的WAL日志自最后一次重启点,已经重做了"
-#: access/transam/xlog.c:9941 access/transam/xlog.c:10440
+#: access/transam/xlog.c:10506 access/transam/xlog.c:11087
#, c-format
-msgid ""
-"This means that the backup being taken on the standby is corrupt and should "
-"not be used. Enable full_page_writes and run CHECKPOINT on the master, and "
-"then try an online backup again."
-msgstr ""
-"这意味着备用节点上的备份已经损坏,不应该使用。启用 full_page_writes并在主节点"
-"上运行CHECKPOINT,然后再试着执行联机备份."
+msgid "This means that the backup being taken on the standby is corrupt and should not be used. Enable full_page_writes and run CHECKPOINT on the master, and then try an online backup again."
+msgstr "这意味着备用节点上的备份已经损坏,不应该使用。启用 full_page_writes并在主节点上运行CHECKPOINT,然后再试着执行联机备份."
-#: access/transam/xlog.c:10008 replication/basebackup.c:1038
-#: utils/adt/misc.c:498
+#: access/transam/xlog.c:10574 replication/basebackup.c:1232
+#: utils/adt/misc.c:517
#, c-format
msgid "could not read symbolic link \"%s\": %m"
msgstr "无法读取符号链接 \"%s\": %m"
-#: access/transam/xlog.c:10015 replication/basebackup.c:1043
-#: utils/adt/misc.c:503
+#: access/transam/xlog.c:10581 replication/basebackup.c:1237
+#: utils/adt/misc.c:522
#, c-format
msgid "symbolic link \"%s\" target is too long"
msgstr "符号链接 \"%s\" 目标超长"
-#: access/transam/xlog.c:10068 commands/tablespace.c:395
-#: commands/tablespace.c:557 replication/basebackup.c:1059
-#: utils/adt/misc.c:511
+#: access/transam/xlog.c:10633 commands/tablespace.c:391
+#: commands/tablespace.c:553 replication/basebackup.c:1252 utils/adt/misc.c:530
#, c-format
msgid "tablespaces are not supported on this platform"
msgstr "在此平台上不支持表空间"
-#: access/transam/xlog.c:10109 access/transam/xlog.c:10147
-#: access/transam/xlog.c:10326 access/transam/xlogarchive.c:106
-#: access/transam/xlogarchive.c:265 commands/copy.c:1778 commands/copy.c:2804
-#: commands/extension.c:3109 commands/tablespace.c:786
-#: commands/tablespace.c:877 guc-file.l:1003 replication/basebackup.c:407
-#: replication/basebackup.c:475 replication/logical/snapbuild.c:1493
-#: storage/file/copydir.c:72 storage/file/copydir.c:115 storage/file/fd.c:2826
-#: storage/file/fd.c:2918 utils/adt/dbsize.c:70 utils/adt/dbsize.c:220
-#: utils/adt/dbsize.c:300 utils/adt/genfile.c:114 utils/adt/genfile.c:333
+#: access/transam/xlog.c:10677 access/transam/xlog.c:10715
+#: access/transam/xlog.c:10930 access/transam/xlogarchive.c:104
+#: access/transam/xlogarchive.c:264 commands/copy.c:1890 commands/copy.c:3206
+#: commands/extension.c:3326 commands/tablespace.c:782
+#: commands/tablespace.c:873 guc-file.l:1004 replication/basebackup.c:523
+#: replication/basebackup.c:593 replication/logical/snapbuild.c:1525
+#: storage/file/copydir.c:68 storage/file/copydir.c:107 storage/file/fd.c:1733
+#: storage/file/fd.c:3113 storage/file/fd.c:3295 storage/file/fd.c:3380
+#: utils/adt/dbsize.c:70 utils/adt/dbsize.c:222 utils/adt/dbsize.c:302
+#: utils/adt/genfile.c:131 utils/adt/genfile.c:382
#, c-format
msgid "could not stat file \"%s\": %m"
msgstr "无法取文件 \"%s\" 的状态: %m"
-#: access/transam/xlog.c:10116 access/transam/xlog.c:10154
+#: access/transam/xlog.c:10684 access/transam/xlog.c:10722
#, c-format
-msgid ""
-"If you're sure there is no backup in progress, remove file \"%s\" and try "
-"again."
+msgid "If you're sure there is no backup in progress, remove file \"%s\" and try again."
msgstr "如果你确认没有其他备份进程在运行, 删除文件 \"%s\", 然后重试."
-#: access/transam/xlog.c:10133 access/transam/xlog.c:10171
-#: access/transam/xlog.c:10501
+#: access/transam/xlog.c:10701 access/transam/xlog.c:10739
+#: access/transam/xlog.c:11150 postmaster/syslogger.c:1476
+#: postmaster/syslogger.c:1489
#, c-format
msgid "could not write file \"%s\": %m"
msgstr "无法写入文件 \"%s\": %m"
-#: access/transam/xlog.c:10290
+#: access/transam/xlog.c:10907
#, c-format
-#| msgid "a backup is not in progress"
msgid "exclusive backup not in progress"
msgstr "排除备份不在运行中"
-#: access/transam/xlog.c:10330
+#: access/transam/xlog.c:10934
#, c-format
msgid "a backup is not in progress"
msgstr "没有备份在运行中"
-#: access/transam/xlog.c:10375 access/transam/xlog.c:10388
-#: access/transam/xlog.c:10728 access/transam/xlog.c:10734
-#: access/transam/xlog.c:10818 access/transam/xlogfuncs.c:696
+#: access/transam/xlog.c:11020 access/transam/xlog.c:11033
+#: access/transam/xlog.c:11394 access/transam/xlog.c:11400
+#: access/transam/xlog.c:11448 access/transam/xlog.c:11521
+#: access/transam/xlogfuncs.c:688
#, c-format
msgid "invalid data in file \"%s\""
msgstr "文件 \"%s\" 中存在无效数据"
-#: access/transam/xlog.c:10392 replication/basebackup.c:936
+#: access/transam/xlog.c:11037 replication/basebackup.c:1089
#, c-format
msgid "the standby was promoted during online backup"
msgstr "联机备份期间,备用节点已提升为主节点"
-#: access/transam/xlog.c:10393 replication/basebackup.c:937
+#: access/transam/xlog.c:11038 replication/basebackup.c:1090
#, c-format
-msgid ""
-"This means that the backup being taken is corrupt and should not be used. "
-"Try taking another online backup."
+msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup."
msgstr "这意味着备用节点上的备份已经损坏,不应该使用. 请尝试再次执行联机备份."
-#: access/transam/xlog.c:10438
+#: access/transam/xlog.c:11085
#, c-format
-msgid ""
-"WAL generated with full_page_writes=off was replayed during online backup"
+msgid "WAL generated with full_page_writes=off was replayed during online backup"
msgstr "由full_page_writes=off产生的WAL日志在联机备份期间已经完成重做"
-#: access/transam/xlog.c:10550
+#: access/transam/xlog.c:11205
#, c-format
-msgid ""
-"pg_stop_backup cleanup done, waiting for required WAL segments to be archived"
+msgid "pg_stop_backup cleanup done, waiting for required WAL segments to be archived"
msgstr "pg_stop_backup命令所执行的清理操作已完成,正在等待所要求的WAL段归档"
-#: access/transam/xlog.c:10560
+#: access/transam/xlog.c:11215
#, c-format
-msgid ""
-"pg_stop_backup still waiting for all required WAL segments to be archived "
-"(%d seconds elapsed)"
+msgid "pg_stop_backup still waiting for all required WAL segments to be archived (%d seconds elapsed)"
msgstr "pg_stop_backup在等待所有需要的WAL段归档(已过去%d秒)"
-#: access/transam/xlog.c:10562
+#: access/transam/xlog.c:11217
#, c-format
-msgid ""
-"Check that your archive_command is executing properly. pg_stop_backup can "
-"be canceled safely, but the database backup will not be usable without all "
-"the WAL segments."
-msgstr ""
-"请检查您的归档命令是否正确执行。pg_stop_backup命令可以安全退出,但是如果没有"
-"所有需要的WAL段,数据库备份将无法使用."
+msgid "Check that your archive_command is executing properly. pg_stop_backup can be canceled safely, but the database backup will not be usable without all the WAL segments."
+msgstr "请检查您的归档命令是否正确执行。pg_stop_backup命令可以安全退出,但是如果没有所有需要的WAL段,数据库备份将无法使用."
-#: access/transam/xlog.c:10569
+#: access/transam/xlog.c:11224
#, c-format
msgid "pg_stop_backup complete, all required WAL segments have been archived"
msgstr "pg_stop_backup 执行完成,所有需要的WAL段都已经归档完成。"
-#: access/transam/xlog.c:10573
+#: access/transam/xlog.c:11228
#, c-format
-msgid ""
-"WAL archiving is not enabled; you must ensure that all required WAL segments "
-"are copied through other means to complete the backup"
-msgstr ""
-"没有启用WAL归档;您必须确保所有的WAL段已通过其他的方法拷贝,这样才能完成备份"
+msgid "WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup"
+msgstr "没有启用WAL归档;您必须确保所有的WAL段已通过其他的方法拷贝,这样才能完成备份"
-#. translator: %s is an XLog record description
-#: access/transam/xlog.c:10858
+#: access/transam/xlog.c:11431
#, c-format
-#| msgid "xlog redo %s"
-msgid "xlog redo at %X/%X for %s"
-msgstr "%3$s xlog 重做在 %1$X/%2$X 位置"
+msgid "backup time %s in file \"%s\""
+msgstr "文件 \"%2$s\"中的备份时间%1$s"
-#: access/transam/xlog.c:10907
+#: access/transam/xlog.c:11436
+#, c-format
+msgid "backup label %s in file \"%s\""
+msgstr "文件 \"%2$s\"中的备份标签%1$s"
+
+#: access/transam/xlog.c:11449
+#, c-format
+msgid "Timeline ID parsed is %u, but expected %u"
+msgstr "解析的时间线ID为%u,但应为%u"
+
+#: access/transam/xlog.c:11453
+#, c-format
+msgid "backup timeline %u in file \"%s\""
+msgstr "文件\"%2$s\"中的备份时间线%1$u"
+
+#. translator: %s is a WAL record description
+#: access/transam/xlog.c:11561
+#, c-format
+msgid "WAL redo at %X/%X for %s"
+msgstr "%3$s WAL 重做在 %1$X/%2$X 位置"
+
+#: access/transam/xlog.c:11610
#, c-format
msgid "online backup mode was not canceled"
msgstr "在线备份模式没有取消"
-#: access/transam/xlog.c:10908
+#: access/transam/xlog.c:11611
#, c-format
msgid "File \"%s\" could not be renamed to \"%s\": %m."
msgstr "文件\"%s\"不能被重命名为\"%s\":%m。"
-#: access/transam/xlog.c:10917 access/transam/xlog.c:10929
-#: access/transam/xlog.c:10939
+#: access/transam/xlog.c:11620 access/transam/xlog.c:11632
+#: access/transam/xlog.c:11642
#, c-format
msgid "online backup mode canceled"
msgstr "在线备份模式已取消"
-#: access/transam/xlog.c:10930
+#: access/transam/xlog.c:11633
#, c-format
-msgid ""
-"Files \"%s\" and \"%s\" were renamed to \"%s\" and \"%s\", respectively."
+msgid "Files \"%s\" and \"%s\" were renamed to \"%s\" and \"%s\", respectively."
msgstr "文件\"%s\"和\"%s\"分别被重命名为\"%s\"和\"%s\"。"
-#: access/transam/xlog.c:10940
+#: access/transam/xlog.c:11643
#, c-format
-msgid ""
-"File \"%s\" was renamed to \"%s\", but file \"%s\" could not be renamed to "
-"\"%s\": %m."
+msgid "File \"%s\" was renamed to \"%s\", but file \"%s\" could not be renamed to \"%s\": %m."
msgstr "文件\"%s\"被重命名为\"%s\",但文件\"%s\"无法被重命名为\"%s\":%m。"
-#: access/transam/xlog.c:11062 access/transam/xlogutils.c:723
-#: replication/walreceiver.c:973 replication/walsender.c:2116
+#: access/transam/xlog.c:11769 access/transam/xlogutils.c:727
+#: replication/walreceiver.c:1019 replication/walsender.c:2424
#, c-format
msgid "could not seek in log segment %s to offset %u: %m"
msgstr "无法在日志段%s中查找, 偏移量 %u: %m"
-#: access/transam/xlog.c:11074
+#: access/transam/xlog.c:11785
#, c-format
msgid "could not read from log segment %s, offset %u: %m"
msgstr "无法从日志段%s中读取偏移量 %u: %m"
-#: access/transam/xlog.c:11548
+#: access/transam/xlog.c:12314
#, c-format
msgid "received promote request"
msgstr "接收到提或请求"
-#: access/transam/xlog.c:11561
+#: access/transam/xlog.c:12327
#, c-format
msgid "trigger file found: %s"
msgstr "已找到触发器文件:%s"
-#: access/transam/xlog.c:11570
+#: access/transam/xlog.c:12336
#, c-format
msgid "could not stat trigger file \"%s\": %m"
msgstr "无法统计触发器文件 \"%s\": %m"
-#: access/transam/xlogarchive.c:244
+#: access/transam/xlogarchive.c:243
#, c-format
msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
msgstr "归档文件\"%s\"大小错误:应该是%lu而不是%lu"
-#: access/transam/xlogarchive.c:253
+#: access/transam/xlogarchive.c:252
#, c-format
msgid "restored log file \"%s\" from archive"
msgstr "从归档中恢复日志文件 \"%s\""
-#: access/transam/xlogarchive.c:303
+#: access/transam/xlogarchive.c:297
#, c-format
msgid "could not restore file \"%s\" from archive: %s"
msgstr "无法从归档文件%2$s中恢复文件 \"%1$s\""
#. translator: First %s represents a recovery.conf parameter name like
#. "recovery_end_command", the 2nd is the value of that parameter, the
#. third an already translated error message.
-#: access/transam/xlogarchive.c:415
+#: access/transam/xlogarchive.c:406
#, c-format
msgid "%s \"%s\": %s"
msgstr "%s \"%s\": %s"
-#: access/transam/xlogarchive.c:458 replication/logical/snapbuild.c:1621
-#: replication/slot.c:470 replication/slot.c:981 replication/slot.c:1089
-#: storage/file/fd.c:635 storage/file/fd.c:693 utils/time/snapmgr.c:1198
+#: access/transam/xlogarchive.c:449 postmaster/syslogger.c:1500
+#: replication/logical/snapbuild.c:1663 replication/slot.c:598
+#: replication/slot.c:1211 replication/slot.c:1326 storage/file/fd.c:650
+#: storage/file/fd.c:745 utils/time/snapmgr.c:1318
#, c-format
msgid "could not rename file \"%s\" to \"%s\": %m"
msgstr "无法把文件 \"%s\" 重命名为 \"%s\": %m"
-#: access/transam/xlogarchive.c:525 access/transam/xlogarchive.c:589
+#: access/transam/xlogarchive.c:516 access/transam/xlogarchive.c:580
#, c-format
msgid "could not create archive status file \"%s\": %m"
msgstr "无法创建归档状态文件 \"%s\": %m"
-#: access/transam/xlogarchive.c:533 access/transam/xlogarchive.c:597
+#: access/transam/xlogarchive.c:524 access/transam/xlogarchive.c:588
#, c-format
msgid "could not write archive status file \"%s\": %m"
msgstr "无法写入归档状态文件 \"%s\": %m"
-#: access/transam/xlogfuncs.c:58
+#: access/transam/xlogfuncs.c:54
#, c-format
msgid "aborting backup due to backend exiting before pg_stop_backup was called"
msgstr "由于后端在 pg_stop_backup 被调用前退出而中断备份"
-#: access/transam/xlogfuncs.c:88
+#: access/transam/xlogfuncs.c:84
#, c-format
-#| msgid "a backup is already in progress"
msgid "a backup is already in progress in this session"
msgstr "这个会话中已经有一个备份在运行中"
-#: access/transam/xlogfuncs.c:94 commands/tablespace.c:709
-#: commands/tablespace.c:719 postmaster/postmaster.c:1395
-#: replication/basebackup.c:295 replication/basebackup.c:635
-#: storage/file/copydir.c:53 storage/file/copydir.c:96 storage/file/fd.c:2292
-#: storage/file/fd.c:2891 storage/ipc/dsm.c:300 utils/adt/genfile.c:439
-#: utils/adt/misc.c:411 utils/misc/tzparser.c:339
-#, c-format
-msgid "could not open directory \"%s\": %m"
-msgstr "无法打开目录 \"%s\": %m"
-
-#: access/transam/xlogfuncs.c:155 access/transam/xlogfuncs.c:229
+#: access/transam/xlogfuncs.c:142 access/transam/xlogfuncs.c:224
#, c-format
-#| msgid "a backup is not in progress"
msgid "non-exclusive backup in progress"
msgstr "非排除备份在运行中"
-#: access/transam/xlogfuncs.c:156 access/transam/xlogfuncs.c:230
+#: access/transam/xlogfuncs.c:143 access/transam/xlogfuncs.c:225
#, c-format
-msgid "did you mean to use pg_stop_backup('f')?"
+msgid "Did you mean to use pg_stop_backup('f')?"
msgstr "你是想使用 pg_stop_backup('f') 吗?"
-#: access/transam/xlogfuncs.c:200 commands/event_trigger.c:1449
-#: commands/event_trigger.c:2000 commands/extension.c:1728
-#: commands/extension.c:1837 commands/extension.c:2030 commands/prepare.c:702
-#: executor/execQual.c:1757 executor/execQual.c:1782 executor/execQual.c:2157
-#: executor/execQual.c:5386 executor/functions.c:1024 foreign/foreign.c:598
-#: replication/logical/logicalfuncs.c:175 replication/logical/origin.c:1391
-#: replication/slotfuncs.c:189 replication/walsender.c:2761
-#: utils/adt/jsonfuncs.c:1483 utils/adt/jsonfuncs.c:1615
-#: utils/adt/jsonfuncs.c:1805 utils/adt/jsonfuncs.c:1934
-#: utils/adt/jsonfuncs.c:2702 utils/adt/pgstatfuncs.c:552
-#: utils/adt/pgstatfuncs.c:653 utils/fmgr/funcapi.c:61 utils/misc/guc.c:8424
-#: utils/mmgr/portalmem.c:1064
+#: access/transam/xlogfuncs.c:195 commands/event_trigger.c:1464
+#: commands/event_trigger.c:2016 commands/extension.c:1902
+#: commands/extension.c:2011 commands/extension.c:2235 commands/prepare.c:722
+#: executor/execExpr.c:2209 executor/execSRF.c:715 executor/functions.c:1034
+#: foreign/foreign.c:488 libpq/hba.c:2603 replication/logical/launcher.c:1127
+#: replication/logical/logicalfuncs.c:176 replication/logical/origin.c:1460
+#: replication/slotfuncs.c:200 replication/walsender.c:3203
+#: utils/adt/jsonfuncs.c:1701 utils/adt/jsonfuncs.c:1832
+#: utils/adt/jsonfuncs.c:2020 utils/adt/jsonfuncs.c:2147
+#: utils/adt/jsonfuncs.c:3576 utils/adt/pgstatfuncs.c:457
+#: utils/adt/pgstatfuncs.c:558 utils/fmgr/funcapi.c:62 utils/misc/guc.c:8829
+#: utils/mmgr/portalmem.c:1134
#, c-format
msgid "set-valued function called in context that cannot accept a set"
msgstr "在不能接受使用集合的环境中调用set-valued函数"
-#: access/transam/xlogfuncs.c:204 commands/event_trigger.c:1453
-#: commands/event_trigger.c:2004 commands/extension.c:1732
-#: commands/extension.c:1841 commands/extension.c:2034 commands/prepare.c:706
-#: foreign/foreign.c:603 replication/logical/logicalfuncs.c:179
-#: replication/logical/origin.c:1395 replication/slotfuncs.c:193
-#: replication/walsender.c:2765 utils/adt/pgstatfuncs.c:556
-#: utils/adt/pgstatfuncs.c:657 utils/misc/guc.c:8428 utils/misc/pg_config.c:44
-#: utils/mmgr/portalmem.c:1068
+#: access/transam/xlogfuncs.c:199 commands/event_trigger.c:1468
+#: commands/event_trigger.c:2020 commands/extension.c:1906
+#: commands/extension.c:2015 commands/extension.c:2239 commands/prepare.c:726
+#: foreign/foreign.c:493 libpq/hba.c:2607 replication/logical/launcher.c:1131
+#: replication/logical/logicalfuncs.c:180 replication/logical/origin.c:1464
+#: replication/slotfuncs.c:204 replication/walsender.c:3207
+#: utils/adt/pgstatfuncs.c:461 utils/adt/pgstatfuncs.c:562
+#: utils/misc/guc.c:8833 utils/misc/pg_config.c:43 utils/mmgr/portalmem.c:1138
#, c-format
msgid "materialize mode required, but it is not allowed in this context"
msgstr "要求使用物化模式,但是在这种环境下不允许使用."
-#: access/transam/xlogfuncs.c:247
+#: access/transam/xlogfuncs.c:241
#, c-format
-#| msgid "a backup is not in progress"
msgid "non-exclusive backup is not in progress"
msgstr "非排除备份不在运行中"
-#: access/transam/xlogfuncs.c:248
+#: access/transam/xlogfuncs.c:242
#, c-format
-msgid "did you mean to use pg_stop_backup('t')?"
+msgid "Did you mean to use pg_stop_backup('t')?"
msgstr "你是想使用 pg_stop_backup('t') 吗?"
-#: access/transam/xlogfuncs.c:327
+#: access/transam/xlogfuncs.c:319
#, c-format
msgid "WAL level not sufficient for creating a restore point"
msgstr "WAL的级别不能满足创建恢复点的要求"
-#: access/transam/xlogfuncs.c:335
+#: access/transam/xlogfuncs.c:327
#, c-format
msgid "value too long for restore point (maximum %d characters)"
msgstr "恢复点值超长(最大%d个字符)"
-#: access/transam/xlogfuncs.c:473
+#: access/transam/xlogfuncs.c:465
#, c-format
-msgid "pg_xlogfile_name_offset() cannot be executed during recovery."
-msgstr "在恢复过程中不能执行pg_xlogfile_name_offset()"
+msgid "pg_walfile_name_offset() cannot be executed during recovery."
+msgstr "在恢复过程中不能执行pg_walfile_name_offset()"
-#: access/transam/xlogfuncs.c:529
+#: access/transam/xlogfuncs.c:521
#, c-format
-msgid "pg_xlogfile_name() cannot be executed during recovery."
-msgstr "在恢复过程中无法执行pg_xlogfile_name() "
+msgid "pg_walfile_name() cannot be executed during recovery."
+msgstr "在恢复过程中无法执行pg_walfile_name() "
-#: access/transam/xlogfuncs.c:549 access/transam/xlogfuncs.c:569
-#: access/transam/xlogfuncs.c:586
+#: access/transam/xlogfuncs.c:541 access/transam/xlogfuncs.c:561
+#: access/transam/xlogfuncs.c:578
#, c-format
msgid "recovery is not in progress"
msgstr "恢复操作没在进行中"
-#: access/transam/xlogfuncs.c:550 access/transam/xlogfuncs.c:570
-#: access/transam/xlogfuncs.c:587
+#: access/transam/xlogfuncs.c:542 access/transam/xlogfuncs.c:562
+#: access/transam/xlogfuncs.c:579
#, c-format
msgid "Recovery control functions can only be executed during recovery."
msgstr "在恢复期间无法执行恢复控制函数"
-#: access/transam/xlogreader.c:285
+#: access/transam/xlogreader.c:299
#, c-format
msgid "invalid record offset at %X/%X"
msgstr "%X/%X处有无效记录偏移量"
-#: access/transam/xlogreader.c:293
+#: access/transam/xlogreader.c:307
#, c-format
msgid "contrecord is requested by %X/%X"
msgstr "%X/%X位置处要求继续记录"
-#: access/transam/xlogreader.c:334 access/transam/xlogreader.c:633
+#: access/transam/xlogreader.c:348 access/transam/xlogreader.c:646
#, c-format
-#| msgid "invalid record length at %X/%X"
msgid "invalid record length at %X/%X: wanted %u, got %u"
msgstr "%X/%X 处的记录长度不合法:想要 %u,但得到的是 %u"
-#: access/transam/xlogreader.c:349
+#: access/transam/xlogreader.c:363
#, c-format
msgid "record length %u at %X/%X too long"
msgstr "%2$X/%3$X处的记录长度%1$u太长"
-#: access/transam/xlogreader.c:390
+#: access/transam/xlogreader.c:404
#, c-format
msgid "there is no contrecord flag at %X/%X"
msgstr "在%X/%X处没有继续记录标志"
-#: access/transam/xlogreader.c:403
+#: access/transam/xlogreader.c:417
#, c-format
msgid "invalid contrecord length %u at %X/%X"
msgstr "在%2$X/%3$X处的继续记录长度%1$u不合法"
-#: access/transam/xlogreader.c:641
+#: access/transam/xlogreader.c:654
#, c-format
msgid "invalid resource manager ID %u at %X/%X"
msgstr "在%2$X/%3$X处的资源管理器ID%1$u不合法"
-#: access/transam/xlogreader.c:655 access/transam/xlogreader.c:672
+#: access/transam/xlogreader.c:668 access/transam/xlogreader.c:685
#, c-format
msgid "record with incorrect prev-link %X/%X at %X/%X"
msgstr "具有不正确向前链接%X/%X的记录出现在%X/%X"
-#: access/transam/xlogreader.c:709
+#: access/transam/xlogreader.c:722
#, c-format
msgid "incorrect resource manager data checksum in record at %X/%X"
msgstr "在%X/%X处的记录中的资源管理器数据校验和不正确"
-#: access/transam/xlogreader.c:742
+#: access/transam/xlogreader.c:759
#, c-format
msgid "invalid magic number %04X in log segment %s, offset %u"
msgstr "日志段%2$s、偏移量%3$u中的magic号%1$04X无效"
-#: access/transam/xlogreader.c:756 access/transam/xlogreader.c:807
+#: access/transam/xlogreader.c:773 access/transam/xlogreader.c:824
#, c-format
msgid "invalid info bits %04X in log segment %s, offset %u"
msgstr "日志段%2$s、偏移量%3$u中的info位%1$04X无效"
-#: access/transam/xlogreader.c:782
+#: access/transam/xlogreader.c:799
#, c-format
-msgid ""
-"WAL file is from different database system: WAL file database system "
-"identifier is %s, pg_control database system identifier is %s"
-msgstr ""
-"WAL文件来自于不同的数据库系统:WAL文件数据库系统标识符为%s,pg_control数据库"
-"标识符为%s"
+msgid "WAL file is from different database system: WAL file database system identifier is %s, pg_control database system identifier is %s"
+msgstr "WAL文件来自于不同的数据库系统:WAL文件数据库系统标识符为%s,pg_control数据库标识符为%s"
-#: access/transam/xlogreader.c:789
+#: access/transam/xlogreader.c:806
#, c-format
-msgid ""
-"WAL file is from different database system: incorrect XLOG_SEG_SIZE in page "
-"header"
-msgstr "WAL文件来自于不同的数据库系统:页头部中的XLOG_SEG_SIZE不正确"
+msgid "WAL file is from different database system: incorrect segment size in page header"
+msgstr "WAL文件来自于不同的数据库系统:页头部中的段大小不正确"
-#: access/transam/xlogreader.c:795
+#: access/transam/xlogreader.c:812
#, c-format
-msgid ""
-"WAL file is from different database system: incorrect XLOG_BLCKSZ in page "
-"header"
+msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header"
msgstr "WAL文件来自于不同的数据库系统:页头部中的XLOG_BLCKSZ不正确"
-#: access/transam/xlogreader.c:821
+#: access/transam/xlogreader.c:843
#, c-format
msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
msgstr "日志段%3$s、偏移%4$u出现意外的pageaddr %1$X/%2$X"
-#: access/transam/xlogreader.c:846
+#: access/transam/xlogreader.c:868
#, c-format
msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
msgstr "日志段%3$s、偏移%4$u出现失序的时间线ID %1$u(在%2$u之后)"
-#: access/transam/xlogreader.c:1053
+#: access/transam/xlogreader.c:1113
#, c-format
msgid "out-of-order block_id %u at %X/%X"
msgstr "乱序的block_id %u位于%X/%X"
-#: access/transam/xlogreader.c:1075
+#: access/transam/xlogreader.c:1136
#, c-format
msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X"
msgstr "BKPBLOCK_HAS_DATA已设置,但是在%X/%X没有包括数据"
-#: access/transam/xlogreader.c:1082
+#: access/transam/xlogreader.c:1143
#, c-format
msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X"
msgstr "BKPBLOCK_HAS_DATA没有被设置,但是数据长度为%u,它位于%X/%X"
-#: access/transam/xlogreader.c:1115
+#: access/transam/xlogreader.c:1179
#, c-format
-msgid ""
-"BKPIMAGE_HAS_HOLE set, but hole offset %u length %u block image length %u at "
-"%X/%X"
-msgstr ""
-"BKPIMAGE_HAS_HOLE被设置,但是洞偏移为%u,长度为%u,块映像长度为%u,它位于%X/"
-"%X"
+msgid "BKPIMAGE_HAS_HOLE set, but hole offset %u length %u block image length %u at %X/%X"
+msgstr "BKPIMAGE_HAS_HOLE被设置,但是洞偏移为%u,长度为%u,块映像长度为%u,它位于%X/%X"
-#: access/transam/xlogreader.c:1131
+#: access/transam/xlogreader.c:1195
#, c-format
msgid "BKPIMAGE_HAS_HOLE not set, but hole offset %u length %u at %X/%X"
msgstr "BKPIMAGE_HAS_HOLE没有被设置,但是洞偏移为%u,长度为%u,它位于%X/%X"
-#: access/transam/xlogreader.c:1146
+#: access/transam/xlogreader.c:1210
#, c-format
msgid "BKPIMAGE_IS_COMPRESSED set, but block image length %u at %X/%X"
msgstr "BKPIMAGE_IS_COMPRESSED被设置,但是块映像长度是%u,它位于%X/%X"
-#: access/transam/xlogreader.c:1161
+#: access/transam/xlogreader.c:1225
#, c-format
-msgid ""
-"neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_IS_COMPRESSED set, but block image "
-"length is %u at %X/%X"
-msgstr ""
-"既没有设置BKPIMAGE_HAS_HOLE也没有设置BKPIMAGE_IS_COMPRESSED,但是块映像长度"
-"是%u,它位于%X/%X"
+msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_IS_COMPRESSED set, but block image length is %u at %X/%X"
+msgstr "既没有设置BKPIMAGE_HAS_HOLE也没有设置BKPIMAGE_IS_COMPRESSED,但是块映像长度是%u,它位于%X/%X"
-#: access/transam/xlogreader.c:1177
+#: access/transam/xlogreader.c:1241
#, c-format
msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X"
msgstr "设置了BKPBLOCK_SAME_REL,但是在%X/%X位置没有记录先前的关系"
-#: access/transam/xlogreader.c:1189
+#: access/transam/xlogreader.c:1253
#, c-format
msgid "invalid block_id %u at %X/%X"
msgstr "%2$X/%3$X处的block_id %1$u无效"
-#: access/transam/xlogreader.c:1254
+#: access/transam/xlogreader.c:1342
#, c-format
msgid "record with invalid length at %X/%X"
msgstr "在%X/%X处的记录的长度无效"
-#: access/transam/xlogreader.c:1343
+#: access/transam/xlogreader.c:1431
#, c-format
msgid "invalid compressed image at %X/%X, block %d"
msgstr "在%X/%X、块%d处有无效压缩映像"
-#: access/transam/xlogutils.c:744 replication/walsender.c:2133
+#: access/transam/xlogutils.c:751 replication/walsender.c:2443
#, c-format
msgid "could not read from log segment %s, offset %u, length %lu: %m"
msgstr "无法在日志段%s,偏移量为%u, 长度为%lu的位置上进行读操作: %m"
-#: bootstrap/bootstrap.c:269 postmaster/postmaster.c:785 tcop/postgres.c:3488
+#: bootstrap/bootstrap.c:268
+#, c-format
+msgid "-X requires a power of two value between 1 MB and 1 GB"
+msgstr "-X需要两个介于1 MB和1 GB之间的2的幂次方"
+
+#: bootstrap/bootstrap.c:285 postmaster/postmaster.c:826 tcop/postgres.c:3581
#, c-format
msgid "--%s requires a value"
msgstr "--%s 需要一个值"
-#: bootstrap/bootstrap.c:274 postmaster/postmaster.c:790 tcop/postgres.c:3493
+#: bootstrap/bootstrap.c:290 postmaster/postmaster.c:831 tcop/postgres.c:3586
#, c-format
msgid "-c %s requires a value"
msgstr "-c %s 需要一个值"
-#: bootstrap/bootstrap.c:285 postmaster/postmaster.c:802
-#: postmaster/postmaster.c:815
+#: bootstrap/bootstrap.c:301 postmaster/postmaster.c:843
+#: postmaster/postmaster.c:856
#, c-format
msgid "Try \"%s --help\" for more information.\n"
msgstr "请用 \"%s --help\" 获取更多的信息.\n"
-#: bootstrap/bootstrap.c:294
+#: bootstrap/bootstrap.c:310
#, c-format
msgid "%s: invalid command-line arguments\n"
msgstr "%s: 无效的命令行参数\n"
-#: catalog/aclchk.c:193
+#: catalog/aclchk.c:203
#, c-format
msgid "grant options can only be granted to roles"
msgstr "grant 选项只能用于个体用户上"
-#: catalog/aclchk.c:316
+#: catalog/aclchk.c:326
#, c-format
msgid "no privileges were granted for column \"%s\" of relation \"%s\""
msgstr "没有为关系\"%2$s\"的列\"%1$s\"授予相应的权限"
-#: catalog/aclchk.c:321
+#: catalog/aclchk.c:331
#, c-format
msgid "no privileges were granted for \"%s\""
msgstr "没有为\"%s\"授予权限"
-#: catalog/aclchk.c:329
+#: catalog/aclchk.c:339
#, c-format
msgid "not all privileges were granted for column \"%s\" of relation \"%s\""
msgstr "没有为关系\"%2$s\"的列\"%1$s\"授予所有权限"
-#: catalog/aclchk.c:334
+#: catalog/aclchk.c:344
#, c-format
msgid "not all privileges were granted for \"%s\""
msgstr "没有为\"%s\"授予所有的权限"
-#: catalog/aclchk.c:345
+#: catalog/aclchk.c:355
#, c-format
msgid "no privileges could be revoked for column \"%s\" of relation \"%s\""
msgstr "不能从关系\"%2$s\"的列\"%1$s\"上撤销权限"
-#: catalog/aclchk.c:350
+#: catalog/aclchk.c:360
#, c-format
msgid "no privileges could be revoked for \"%s\""
msgstr "不能为\"%s\"撤销权限"
-#: catalog/aclchk.c:358
+#: catalog/aclchk.c:368
#, c-format
-msgid ""
-"not all privileges could be revoked for column \"%s\" of relation \"%s\""
+msgid "not all privileges could be revoked for column \"%s\" of relation \"%s\""
msgstr "不能从关系\"%2$s\"的列\"%1$s\"上撤销所有权限"
-#: catalog/aclchk.c:363
+#: catalog/aclchk.c:373
#, c-format
msgid "not all privileges could be revoked for \"%s\""
msgstr "不能为\"%s\"撤销所有权限"
-#: catalog/aclchk.c:448 catalog/aclchk.c:940
+#: catalog/aclchk.c:456 catalog/aclchk.c:995
#, c-format
msgid "invalid privilege type %s for relation"
msgstr "关系的权限类型%s无效"
-#: catalog/aclchk.c:452 catalog/aclchk.c:944
+#: catalog/aclchk.c:460 catalog/aclchk.c:999
#, c-format
msgid "invalid privilege type %s for sequence"
msgstr "序列的权限类型 %s 无效"
-#: catalog/aclchk.c:456
+#: catalog/aclchk.c:464
#, c-format
msgid "invalid privilege type %s for database"
msgstr "无效的数据库权限类型 %s"
-#: catalog/aclchk.c:460
+#: catalog/aclchk.c:468
#, c-format
msgid "invalid privilege type %s for domain"
msgstr "域的权限类型%s无效"
-#: catalog/aclchk.c:464 catalog/aclchk.c:948
+#: catalog/aclchk.c:472 catalog/aclchk.c:1003
#, c-format
msgid "invalid privilege type %s for function"
msgstr "无效的函数权限类型 %s"
-#: catalog/aclchk.c:468
+#: catalog/aclchk.c:476
#, c-format
msgid "invalid privilege type %s for language"
msgstr "无效的语言权限类型 %s"
-#: catalog/aclchk.c:472
+#: catalog/aclchk.c:480
#, c-format
msgid "invalid privilege type %s for large object"
msgstr "用于大对象的无效权限类型%s"
-#: catalog/aclchk.c:476
+#: catalog/aclchk.c:484 catalog/aclchk.c:1019
#, c-format
msgid "invalid privilege type %s for schema"
msgstr "无效的模式权限类型 %s"
-#: catalog/aclchk.c:480
+#: catalog/aclchk.c:488 catalog/aclchk.c:1007
+#, c-format
+msgid "invalid privilege type %s for procedure"
+msgstr "程序的权限类型 %s无效"
+
+#: catalog/aclchk.c:492 catalog/aclchk.c:1011
+#, c-format
+msgid "invalid privilege type %s for routine"
+msgstr "routine的权限类型%s无效"
+
+#: catalog/aclchk.c:496
#, c-format
msgid "invalid privilege type %s for tablespace"
msgstr "无效的表空间权限类型 %s"
-#: catalog/aclchk.c:484 catalog/aclchk.c:952
+#: catalog/aclchk.c:500 catalog/aclchk.c:1015
#, c-format
msgid "invalid privilege type %s for type"
msgstr "类型的权限类型 %s无效"
-#: catalog/aclchk.c:488
+#: catalog/aclchk.c:504
#, c-format
msgid "invalid privilege type %s for foreign-data wrapper"
msgstr "外部数据封装器的权限类型 %s 无效"
-#: catalog/aclchk.c:492
+#: catalog/aclchk.c:508
#, c-format
msgid "invalid privilege type %s for foreign server"
msgstr "外部服务器的权限类型%s无效"
-#: catalog/aclchk.c:531
+#: catalog/aclchk.c:547
#, c-format
msgid "column privileges are only valid for relations"
msgstr "列权限只对关系有效"
-#: catalog/aclchk.c:690 catalog/aclchk.c:3921 catalog/aclchk.c:4698
-#: catalog/objectaddress.c:873 catalog/pg_largeobject.c:113
-#: storage/large_object/inv_api.c:291
+#: catalog/aclchk.c:707 catalog/aclchk.c:4131 catalog/aclchk.c:4913
+#: catalog/objectaddress.c:928 catalog/pg_largeobject.c:111
+#: storage/large_object/inv_api.c:284
#, c-format
msgid "large object %u does not exist"
msgstr "大对象 %u 不存在"
-#: catalog/aclchk.c:877 catalog/aclchk.c:885 commands/collationcmds.c:92
-#: commands/copy.c:1008 commands/copy.c:1026 commands/copy.c:1034
-#: commands/copy.c:1042 commands/copy.c:1050 commands/copy.c:1058
-#: commands/copy.c:1066 commands/copy.c:1074 commands/copy.c:1082
-#: commands/copy.c:1098 commands/copy.c:1112 commands/copy.c:1131
-#: commands/copy.c:1146 commands/dbcommands.c:155 commands/dbcommands.c:163
-#: commands/dbcommands.c:171 commands/dbcommands.c:179
-#: commands/dbcommands.c:187 commands/dbcommands.c:195
-#: commands/dbcommands.c:203 commands/dbcommands.c:211
-#: commands/dbcommands.c:219 commands/dbcommands.c:1397
-#: commands/dbcommands.c:1405 commands/dbcommands.c:1413
-#: commands/dbcommands.c:1421 commands/extension.c:1218
-#: commands/extension.c:1226 commands/extension.c:1234
-#: commands/extension.c:1242 commands/extension.c:2760
-#: commands/foreigncmds.c:539 commands/foreigncmds.c:548
-#: commands/functioncmds.c:533 commands/functioncmds.c:649
-#: commands/functioncmds.c:657 commands/functioncmds.c:665
-#: commands/functioncmds.c:673 commands/functioncmds.c:2085
-#: commands/functioncmds.c:2093 commands/sequence.c:1189
-#: commands/sequence.c:1197 commands/sequence.c:1205 commands/sequence.c:1213
-#: commands/sequence.c:1221 commands/sequence.c:1229 commands/sequence.c:1237
-#: commands/sequence.c:1245 commands/typecmds.c:295 commands/typecmds.c:1382
-#: commands/typecmds.c:1391 commands/typecmds.c:1399 commands/typecmds.c:1407
-#: commands/typecmds.c:1415 commands/user.c:139 commands/user.c:156
-#: commands/user.c:164 commands/user.c:172 commands/user.c:180
-#: commands/user.c:188 commands/user.c:196 commands/user.c:204
-#: commands/user.c:212 commands/user.c:220 commands/user.c:228
-#: commands/user.c:236 commands/user.c:244 commands/user.c:537
-#: commands/user.c:549 commands/user.c:557 commands/user.c:565
-#: commands/user.c:573 commands/user.c:581 commands/user.c:589
-#: commands/user.c:597 commands/user.c:606 commands/user.c:614
-#: commands/user.c:622
+#: catalog/aclchk.c:932 catalog/aclchk.c:941 commands/collationcmds.c:113
+#: commands/copy.c:1063 commands/copy.c:1083 commands/copy.c:1092
+#: commands/copy.c:1101 commands/copy.c:1110 commands/copy.c:1119
+#: commands/copy.c:1128 commands/copy.c:1137 commands/copy.c:1146
+#: commands/copy.c:1164 commands/copy.c:1180 commands/copy.c:1200
+#: commands/copy.c:1217 commands/dbcommands.c:155 commands/dbcommands.c:164
+#: commands/dbcommands.c:173 commands/dbcommands.c:182
+#: commands/dbcommands.c:191 commands/dbcommands.c:200
+#: commands/dbcommands.c:209 commands/dbcommands.c:218
+#: commands/dbcommands.c:227 commands/dbcommands.c:1427
+#: commands/dbcommands.c:1436 commands/dbcommands.c:1445
+#: commands/dbcommands.c:1454 commands/extension.c:1685
+#: commands/extension.c:1695 commands/extension.c:1705
+#: commands/extension.c:1715 commands/extension.c:2956
+#: commands/foreigncmds.c:537 commands/foreigncmds.c:546
+#: commands/functioncmds.c:559 commands/functioncmds.c:684
+#: commands/functioncmds.c:693 commands/functioncmds.c:702
+#: commands/functioncmds.c:711 commands/functioncmds.c:2105
+#: commands/functioncmds.c:2113 commands/publicationcmds.c:92
+#: commands/sequence.c:1255 commands/sequence.c:1265 commands/sequence.c:1275
+#: commands/sequence.c:1285 commands/sequence.c:1295 commands/sequence.c:1305
+#: commands/sequence.c:1315 commands/sequence.c:1325 commands/sequence.c:1335
+#: commands/subscriptioncmds.c:110 commands/subscriptioncmds.c:120
+#: commands/subscriptioncmds.c:130 commands/subscriptioncmds.c:140
+#: commands/subscriptioncmds.c:154 commands/subscriptioncmds.c:165
+#: commands/subscriptioncmds.c:179 commands/tablecmds.c:6296
+#: commands/typecmds.c:295 commands/typecmds.c:1444 commands/typecmds.c:1453
+#: commands/typecmds.c:1461 commands/typecmds.c:1469 commands/typecmds.c:1477
+#: commands/user.c:134 commands/user.c:148 commands/user.c:157
+#: commands/user.c:166 commands/user.c:175 commands/user.c:184
+#: commands/user.c:193 commands/user.c:202 commands/user.c:211
+#: commands/user.c:220 commands/user.c:229 commands/user.c:238
+#: commands/user.c:247 commands/user.c:555 commands/user.c:563
+#: commands/user.c:571 commands/user.c:579 commands/user.c:587
+#: commands/user.c:595 commands/user.c:603 commands/user.c:611
+#: commands/user.c:620 commands/user.c:628 commands/user.c:636
+#: parser/parse_utilcmd.c:407 replication/pgoutput/pgoutput.c:111
+#: replication/pgoutput/pgoutput.c:132 replication/walsender.c:804
+#: replication/walsender.c:815 replication/walsender.c:825
#, c-format
msgid "conflicting or redundant options"
msgstr "选项冲突或过多"
-#: catalog/aclchk.c:985
+#: catalog/aclchk.c:1052
#, c-format
msgid "default privileges cannot be set for columns"
msgstr "无法为列设置缺省权限"
-#: catalog/aclchk.c:1501 catalog/objectaddress.c:1390 commands/analyze.c:378
-#: commands/copy.c:4423 commands/sequence.c:1491 commands/tablecmds.c:5199
-#: commands/tablecmds.c:5305 commands/tablecmds.c:5365
-#: commands/tablecmds.c:5478 commands/tablecmds.c:5535
-#: commands/tablecmds.c:5629 commands/tablecmds.c:5725
-#: commands/tablecmds.c:7877 commands/tablecmds.c:8082
-#: commands/tablecmds.c:8502 commands/trigger.c:642 parser/analyze.c:2160
-#: parser/parse_relation.c:2542 parser/parse_relation.c:2604
-#: parser/parse_target.c:940 parser/parse_type.c:127 utils/adt/acl.c:2840
-#: utils/adt/ruleutils.c:1862
+#: catalog/aclchk.c:1212
+#, c-format
+msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS"
+msgstr "在使用GRANT/REVOKE ON SCHEMAS时不能使用IN SCHEMA子句"
+
+#: catalog/aclchk.c:1576 catalog/objectaddress.c:1390 commands/analyze.c:433
+#: commands/copy.c:4826 commands/sequence.c:1690 commands/tablecmds.c:5942
+#: commands/tablecmds.c:6090 commands/tablecmds.c:6147
+#: commands/tablecmds.c:6221 commands/tablecmds.c:6315
+#: commands/tablecmds.c:6374 commands/tablecmds.c:6513
+#: commands/tablecmds.c:6595 commands/tablecmds.c:6687
+#: commands/tablecmds.c:6781 commands/tablecmds.c:9510
+#: commands/tablecmds.c:9804 commands/tablecmds.c:10285 commands/trigger.c:904
+#: parser/analyze.c:2343 parser/parse_relation.c:2735
+#: parser/parse_relation.c:2798 parser/parse_target.c:1030
+#: parser/parse_type.c:127 utils/adt/acl.c:2886 utils/adt/ruleutils.c:2466
#, c-format
msgid "column \"%s\" of relation \"%s\" does not exist"
msgstr "关系 \"%2$s\" 的 \"%1$s\" 字段不存在"
-#: catalog/aclchk.c:1770 catalog/objectaddress.c:1203 commands/sequence.c:1078
-#: commands/tablecmds.c:223 commands/tablecmds.c:12009 utils/adt/acl.c:2076
+#: catalog/aclchk.c:1843 catalog/objectaddress.c:1230 commands/sequence.c:1128
+#: commands/tablecmds.c:231 commands/tablecmds.c:14086 utils/adt/acl.c:2076
#: utils/adt/acl.c:2106 utils/adt/acl.c:2138 utils/adt/acl.c:2170
#: utils/adt/acl.c:2198 utils/adt/acl.c:2228
#, c-format
msgid "\"%s\" is not a sequence"
msgstr "\"%s\" 不是一个序列"
-#: catalog/aclchk.c:1808
+#: catalog/aclchk.c:1881
#, c-format
msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges"
msgstr "序列\"%s\"只支持权限USAGE, SELECT 和UPDATE"
-#: catalog/aclchk.c:1825
+#: catalog/aclchk.c:1898
#, c-format
-msgid "invalid privilege type USAGE for table"
-msgstr "表的权限类型 USAGE 无效"
+msgid "invalid privilege type %s for table"
+msgstr "无效的表权限类型 %s"
-#: catalog/aclchk.c:1993
+#: catalog/aclchk.c:2064
#, c-format
msgid "invalid privilege type %s for column"
msgstr "列的权限类型%s无效"
-#: catalog/aclchk.c:2006
+#: catalog/aclchk.c:2077
#, c-format
msgid "sequence \"%s\" only supports SELECT column privileges"
msgstr "序列\"%s\"只支持在列上的SELECT权限"
-#: catalog/aclchk.c:2600
+#: catalog/aclchk.c:2659
#, c-format
msgid "language \"%s\" is not trusted"
msgstr "语言 \"%s\" 不可信"
-#: catalog/aclchk.c:2602
+#: catalog/aclchk.c:2661
#, c-format
-msgid "Only superusers can use untrusted languages."
-msgstr "å\8fªæ\9c\89è¶\85级ç\94¨æ\88·å\8f¯ä»¥ä½¿ç\94¨é\9d\9eä¿¡ä»»语言."
+msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages."
+msgstr "å\9c¨ä¸\8då\8f\97ä¿¡ä»»ç\9a\84è¯è¨\80ä¸ï¼\8cGRANTå\92\8cREVOKEä¸\8då\85\81许被使ç\94¨ï¼\8cå\9b 为å\8fªæ\9c\89è¶\85级ç\94¨æ\88·æ\89\8dè\83½ä½¿ç\94¨ä¸\8då\8f\97ä¿¡ä»»ç\9a\84语言."
-#: catalog/aclchk.c:3127
+#: catalog/aclchk.c:3175
#, c-format
msgid "cannot set privileges of array types"
msgstr "不能设置数组类型的权限"
-#: catalog/aclchk.c:3128
+#: catalog/aclchk.c:3176
#, c-format
msgid "Set the privileges of the element type instead."
msgstr "设置元素类型的权限."
-#: catalog/aclchk.c:3135 catalog/objectaddress.c:1523 commands/typecmds.c:3146
+#: catalog/aclchk.c:3183 catalog/objectaddress.c:1520
#, c-format
msgid "\"%s\" is not a domain"
msgstr "\"%s\" 不是一个域"
-#: catalog/aclchk.c:3258
+#: catalog/aclchk.c:3303
#, c-format
msgid "unrecognized privilege type \"%s\""
msgstr "未知的权限类型: \"%s\""
-#: catalog/aclchk.c:3307
+#: catalog/aclchk.c:3364
#, c-format
-msgid "permission denied for column %s"
-msgstr "访问列 %s 的权限不够"
+msgid "permission denied for aggregate %s"
+msgstr "对聚合 %s 权限不够"
+
+#: catalog/aclchk.c:3367
+#, c-format
+msgid "permission denied for collation %s"
+msgstr "对排序规则 %s 权限不够"
-#: catalog/aclchk.c:3309
+#: catalog/aclchk.c:3370
#, c-format
-msgid "permission denied for relation %s"
-msgstr "对关系 %s 权限不够"
+msgid "permission denied for column %s"
+msgstr "访问列 %s 的权限不够"
-#: catalog/aclchk.c:3311 commands/sequence.c:561 commands/sequence.c:786
-#: commands/sequence.c:828 commands/sequence.c:865 commands/sequence.c:1543
+#: catalog/aclchk.c:3373
#, c-format
-msgid "permission denied for sequence %s"
-msgstr "对于序列 %s, 权限不够"
+msgid "permission denied for conversion %s"
+msgstr "对编码转换 %s 权限不够"
-#: catalog/aclchk.c:3313
+#: catalog/aclchk.c:3376
#, c-format
msgid "permission denied for database %s"
msgstr "对数据库 %s 权限不够"
-#: catalog/aclchk.c:3315
+#: catalog/aclchk.c:3379
#, c-format
-msgid "permission denied for function %s"
-msgstr "对函数 %s 权限不够"
+msgid "permission denied for domain %s"
+msgstr "访问域 %s 的权限不够"
-#: catalog/aclchk.c:3317
+#: catalog/aclchk.c:3382
#, c-format
-msgid "permission denied for operator %s"
-msgstr "对操作符 %s 权限不够"
+msgid "permission denied for event trigger %s"
+msgstr "事件触发器 %s, 权限不够"
-#: catalog/aclchk.c:3319
+#: catalog/aclchk.c:3385
#, c-format
-msgid "permission denied for type %s"
-msgstr "对类型 %s 权限不够"
+msgid "permission denied for extension %s"
+msgstr "对扩展 %s 权限不够"
-#: catalog/aclchk.c:3321
+#: catalog/aclchk.c:3388
#, c-format
-msgid "permission denied for language %s"
-msgstr "对语言 %s 权限不够"
+msgid "permission denied for foreign-data wrapper %s"
+msgstr "访问外部数据封装器 %s 的权限不足"
-#: catalog/aclchk.c:3323
+#: catalog/aclchk.c:3391
#, c-format
-msgid "permission denied for large object %s"
-msgstr "在大对象%s上的权限不够"
+msgid "permission denied for foreign server %s"
+msgstr "访问外部服务器%s的权限不足"
-#: catalog/aclchk.c:3325
+#: catalog/aclchk.c:3394
#, c-format
-msgid "permission denied for schema %s"
-msgstr "对模式 %s 权限不够"
+msgid "permission denied for foreign table %s"
+msgstr "访问外部表%s的权限不足"
-#: catalog/aclchk.c:3327
+#: catalog/aclchk.c:3397
#, c-format
-msgid "permission denied for operator class %s"
-msgstr "对操作符表 %s 权限不够"
+msgid "permission denied for function %s"
+msgstr "对函数 %s 权限不够"
-#: catalog/aclchk.c:3329
+#: catalog/aclchk.c:3400
#, c-format
-msgid "permission denied for operator family %s"
-msgstr "对于操作符表%s的权限不够"
+msgid "permission denied for index %s"
+msgstr "对索引 %s 权限不够"
-#: catalog/aclchk.c:3331
+#: catalog/aclchk.c:3403
#, c-format
-msgid "permission denied for collation %s"
-msgstr "对排序规则 %s 权限不够"
+msgid "permission denied for language %s"
+msgstr "对语言 %s 权限不够"
-#: catalog/aclchk.c:3333
+#: catalog/aclchk.c:3406
#, c-format
-msgid "permission denied for conversion %s"
-msgstr "对ç¼\96ç \81转æ\8d¢ %s 权限不够"
+msgid "permission denied for large object %s"
+msgstr "å\9c¨å¤§å¯¹è±¡%sä¸\8aç\9a\84权限不够"
-#: catalog/aclchk.c:3335
+#: catalog/aclchk.c:3409
#, c-format
-msgid "permission denied for tablespace %s"
-msgstr "对表空间 %s 权限不够"
+msgid "permission denied for materialized view %s"
+msgstr "对物化视图 %s 权限不够"
-#: catalog/aclchk.c:3337
+#: catalog/aclchk.c:3412
#, c-format
-msgid "permission denied for text search dictionary %s"
-msgstr "访问文本搜索字典%s的权限不够"
+msgid "permission denied for operator class %s"
+msgstr "对操作符表 %s 权限不够"
-#: catalog/aclchk.c:3339
+#: catalog/aclchk.c:3415
#, c-format
-msgid "permission denied for text search configuration %s"
-msgstr "访问文本搜索配置%s的权限不足"
+msgid "permission denied for operator %s"
+msgstr "对操作符 %s 权限不够"
-#: catalog/aclchk.c:3341
+#: catalog/aclchk.c:3418
#, c-format
-msgid "permission denied for foreign-data wrapper %s"
-msgstr "访问外部数据封装器 %s 的权限不足"
+msgid "permission denied for operator family %s"
+msgstr "对于操作符表%s的权限不够"
-#: catalog/aclchk.c:3343
+#: catalog/aclchk.c:3421
#, c-format
-msgid "permission denied for foreign server %s"
-msgstr "访问外部服务器%s的权限不足"
+msgid "permission denied for policy %s"
+msgstr "对策略 %s 的权限不够"
-#: catalog/aclchk.c:3345
+#: catalog/aclchk.c:3424
#, c-format
-msgid "permission denied for event trigger %s"
-msgstr "事件触发器 %s, 权限不够"
+msgid "permission denied for procedure %s"
+msgstr "对过程 %s 权限不够"
-#: catalog/aclchk.c:3347
+#: catalog/aclchk.c:3427
#, c-format
-msgid "permission denied for extension %s"
-msgstr "对扩展 %s 权限不够"
+msgid "permission denied for publication %s"
+msgstr "对发布 %s 权限不够"
-#: catalog/aclchk.c:3353 catalog/aclchk.c:3355
+#: catalog/aclchk.c:3430
#, c-format
-msgid "must be owner of relation %s"
-msgstr "å¿\85é¡»æ\98¯å\85³ç³» %s ç\9a\84å±\9e主"
+msgid "permission denied for routine %s"
+msgstr "对routine %s æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3357
+#: catalog/aclchk.c:3433
#, c-format
-msgid "must be owner of sequence %s"
-msgstr "å¿\85é¡»æ\98¯åº\8få\88\97 %s ç\9a\84å±\9e主"
+msgid "permission denied for schema %s"
+msgstr "对模å¼\8f %s æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3359
+#: catalog/aclchk.c:3436 commands/sequence.c:598 commands/sequence.c:832
+#: commands/sequence.c:874 commands/sequence.c:915 commands/sequence.c:1788
+#: commands/sequence.c:1852
#, c-format
-msgid "must be owner of database %s"
-msgstr "å¿\85é¡»æ\98¯æ\95°æ\8d®åº\93 %s ç\9a\84å±\9e主"
+msgid "permission denied for sequence %s"
+msgstr "对äº\8eåº\8få\88\97 %s, æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3361
+#: catalog/aclchk.c:3439
#, c-format
-msgid "must be owner of function %s"
-msgstr "å¿\85é¡»æ\98¯å\87½æ\95° %s ç\9a\84å±\9e主"
+msgid "permission denied for statistics object %s"
+msgstr "å\9c¨ç»\9f计信æ\81¯å¯¹è±¡ %sä¸\8aç\9a\84æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3363
+#: catalog/aclchk.c:3442
#, c-format
-msgid "must be owner of operator %s"
-msgstr "å¿\85é¡»æ\98¯æ\93\8dä½\9c符 %s ç\9a\84å±\9e主"
+msgid "permission denied for subscription %s"
+msgstr "对订é\98\85 %s æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3365
+#: catalog/aclchk.c:3445
#, c-format
-msgid "must be owner of type %s"
-msgstr "å¿\85é¡»æ\98¯ç±»å\9e\8b %s ç\9a\84å±\9e主"
+msgid "permission denied for table %s"
+msgstr "对表 %s æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3367
+#: catalog/aclchk.c:3448
#, c-format
-msgid "must be owner of language %s"
-msgstr "å¿\85é¡»æ\98¯è¯è¨\80 %s ç\9a\84å±\9e主"
+msgid "permission denied for tablespace %s"
+msgstr "对表空é\97´ %s æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3369
+#: catalog/aclchk.c:3451
#, c-format
-msgid "must be owner of large object %s"
-msgstr "必须是大对象%s的属主"
+msgid "permission denied for text search configuration %s"
+msgstr "访问文本搜索配置%s的权限不足"
-#: catalog/aclchk.c:3371
+#: catalog/aclchk.c:3454
#, c-format
-msgid "must be owner of schema %s"
-msgstr "必须是模式 %s 的属主"
+msgid "permission denied for text search dictionary %s"
+msgstr "访问文本搜索字典%s的权限不够"
-#: catalog/aclchk.c:3373
+#: catalog/aclchk.c:3457
#, c-format
-msgid "must be owner of operator class %s"
-msgstr "å¿\85é¡»æ\98¯æ\93\8dä½\9c符表 %s ç\9a\84å±\9e主"
+msgid "permission denied for type %s"
+msgstr "对类å\9e\8b %s æ\9d\83é\99\90ä¸\8då¤\9f"
-#: catalog/aclchk.c:3375
+#: catalog/aclchk.c:3460
#, c-format
-msgid "must be owner of operator family %s"
-msgstr "必须是操作符集合 %s 的属主"
+msgid "permission denied for view %s"
+msgstr "对视图 %s 权限不够"
+
+#: catalog/aclchk.c:3495
+#, c-format
+msgid "must be owner of aggregate %s"
+msgstr "必须是聚合 %s 的属主"
-#: catalog/aclchk.c:3377
+#: catalog/aclchk.c:3498
#, c-format
msgid "must be owner of collation %s"
msgstr "必须是排序规则 %s 的属主"
-#: catalog/aclchk.c:3379
+#: catalog/aclchk.c:3501
#, c-format
msgid "must be owner of conversion %s"
msgstr "必须是编码转换 %s 的属主"
-#: catalog/aclchk.c:3381
+#: catalog/aclchk.c:3504
#, c-format
-msgid "must be owner of tablespace %s"
-msgstr "必须是表空间 %s 的属主"
+msgid "must be owner of database %s"
+msgstr "必须是数据库 %s 的属主"
-# describe.c:1549
-#: catalog/aclchk.c:3383
+#: catalog/aclchk.c:3507
#, c-format
-msgid "must be owner of text search dictionary %s"
-msgstr "必须是文本搜寻字典%s的属主"
+msgid "must be owner of domain %s"
+msgstr "必须是域 %s 的属主"
-# describe.c:97
-#: catalog/aclchk.c:3385
+#: catalog/aclchk.c:3510
#, c-format
-msgid "must be owner of text search configuration %s"
-msgstr "必须是文本搜索配置%s的属主"
+msgid "must be owner of event trigger %s"
+msgstr "必须是事件触发器 %s 的属主"
-#: catalog/aclchk.c:3387
+#: catalog/aclchk.c:3513
#, c-format
-msgid "must be owner of foreign-data wrapper %s"
+msgid "must be owner of extension %s"
+msgstr "必须是扩展 %s 的属主"
+
+#: catalog/aclchk.c:3516
+#, c-format
+msgid "must be owner of foreign-data wrapper %s"
msgstr "必须是外部数据封装器 %s 的属主"
-#: catalog/aclchk.c:3389
+#: catalog/aclchk.c:3519
#, c-format
msgid "must be owner of foreign server %s"
msgstr "必须是外部服务器 %s 的属主"
-#: catalog/aclchk.c:3391
+#: catalog/aclchk.c:3522
#, c-format
-msgid "must be owner of event trigger %s"
-msgstr "必须是äº\8b件触å\8f\91å\99¨ %s ç\9a\84å±\9e主"
+msgid "must be owner of foreign table %s"
+msgstr "必须是å¤\96é\83¨è¡¨ %s ç\9a\84å±\9e主"
-#: catalog/aclchk.c:3393
+#: catalog/aclchk.c:3525
#, c-format
-msgid "must be owner of extension %s"
-msgstr "必须是扩展 %s 的属主"
+msgid "must be owner of function %s"
+msgstr "必须是函数 %s 的属主"
+
+#: catalog/aclchk.c:3528
+#, c-format
+msgid "must be owner of index %s"
+msgstr "必须是索引 %s 的属主"
+
+#: catalog/aclchk.c:3531
+#, c-format
+msgid "must be owner of language %s"
+msgstr "必须是语言 %s 的属主"
+
+#: catalog/aclchk.c:3534
+#, c-format
+msgid "must be owner of large object %s"
+msgstr "必须是大对象%s的属主"
+
+#: catalog/aclchk.c:3537
+#, c-format
+msgid "must be owner of materialized view %s"
+msgstr "必须是物化视图 %s 的属主"
+
+#: catalog/aclchk.c:3540
+#, c-format
+msgid "must be owner of operator class %s"
+msgstr "必须是操作符表 %s 的属主"
+
+#: catalog/aclchk.c:3543
+#, c-format
+msgid "must be owner of operator %s"
+msgstr "必须是操作符 %s 的属主"
+
+#: catalog/aclchk.c:3546
+#, c-format
+msgid "must be owner of operator family %s"
+msgstr "必须是操作符集合 %s 的属主"
+
+#: catalog/aclchk.c:3549
+#, c-format
+msgid "must be owner of procedure %s"
+msgstr "必须是过程 %s 的属主"
+
+#: catalog/aclchk.c:3552
+#, c-format
+msgid "must be owner of publication %s"
+msgstr "必须是发布 %s 的属主"
+
+#: catalog/aclchk.c:3555
+#, c-format
+msgid "must be owner of routine %s"
+msgstr "必须是routine %s 的属主"
+
+#: catalog/aclchk.c:3558
+#, c-format
+msgid "must be owner of sequence %s"
+msgstr "必须是序列 %s 的属主"
+
+#: catalog/aclchk.c:3561
+#, c-format
+msgid "must be owner of subscription %s"
+msgstr "必须是订阅 %s 的属主"
+
+#: catalog/aclchk.c:3564
+#, c-format
+msgid "must be owner of table %s"
+msgstr "必须是表 %s 的属主"
+
+#: catalog/aclchk.c:3567
+#, c-format
+msgid "must be owner of type %s"
+msgstr "必须是类型 %s 的属主"
+
+#: catalog/aclchk.c:3570
+#, c-format
+msgid "must be owner of view %s"
+msgstr "必须是视图 %s 的属主"
+
+#: catalog/aclchk.c:3573
+#, c-format
+msgid "must be owner of schema %s"
+msgstr "必须是模式 %s 的属主"
+
+#: catalog/aclchk.c:3576
+#, c-format
+msgid "must be owner of statistics object %s"
+msgstr "必须是统计信息对象 %s的属主"
+
+#: catalog/aclchk.c:3579
+#, c-format
+msgid "must be owner of tablespace %s"
+msgstr "必须是表空间 %s 的属主"
+
+# describe.c:97
+#: catalog/aclchk.c:3582
+#, c-format
+msgid "must be owner of text search configuration %s"
+msgstr "必须是文本搜索配置%s的属主"
+
+# describe.c:1549
+#: catalog/aclchk.c:3585
+#, c-format
+msgid "must be owner of text search dictionary %s"
+msgstr "必须是文本搜寻字典%s的属主"
+
+#: catalog/aclchk.c:3599
+#, c-format
+msgid "must be owner of relation %s"
+msgstr "必须是关系 %s 的属主"
-#: catalog/aclchk.c:3435
+#: catalog/aclchk.c:3643
#, c-format
msgid "permission denied for column \"%s\" of relation \"%s\""
msgstr "访问关系\"%2$s\"的列\"%1$s\"的权限不够"
-#: catalog/aclchk.c:3554 catalog/aclchk.c:3562
+#: catalog/aclchk.c:3764 catalog/aclchk.c:3772
#, c-format
msgid "attribute %d of relation with OID %u does not exist"
msgstr "带有OID为%2$u的关系的属性%1$d不存在"
-#: catalog/aclchk.c:3635 catalog/aclchk.c:4549
+#: catalog/aclchk.c:3845 catalog/aclchk.c:4764
#, c-format
msgid "relation with OID %u does not exist"
msgstr "OID 为 %u 的关系不存在"
-#: catalog/aclchk.c:3734 catalog/aclchk.c:4967
+#: catalog/aclchk.c:3944 catalog/aclchk.c:5182
#, c-format
msgid "database with OID %u does not exist"
msgstr "OID 为 %u 的数据库不存在"
-#: catalog/aclchk.c:3788 catalog/aclchk.c:4627 tcop/fastpath.c:223
+#: catalog/aclchk.c:3998 catalog/aclchk.c:4842 tcop/fastpath.c:221
+#: utils/fmgr/fmgr.c:2195
#, c-format
msgid "function with OID %u does not exist"
msgstr "OID 为 %u 的函数不存在"
-#: catalog/aclchk.c:3842 catalog/aclchk.c:4653
+#: catalog/aclchk.c:4052 catalog/aclchk.c:4868
#, c-format
msgid "language with OID %u does not exist"
msgstr "OID 为 %u 的语言不存在"
-#: catalog/aclchk.c:4006 catalog/aclchk.c:4725
+#: catalog/aclchk.c:4216 catalog/aclchk.c:4940
#, c-format
msgid "schema with OID %u does not exist"
msgstr "OID 为 %u 的模式不存在"
-#: catalog/aclchk.c:4060 catalog/aclchk.c:4752
+#: catalog/aclchk.c:4270 catalog/aclchk.c:4967
#, c-format
msgid "tablespace with OID %u does not exist"
msgstr "OID 为 %u 的表空间不存在"
-#: catalog/aclchk.c:4118 catalog/aclchk.c:4886 commands/foreigncmds.c:325
+#: catalog/aclchk.c:4329 catalog/aclchk.c:5101 commands/foreigncmds.c:324
#, c-format
msgid "foreign-data wrapper with OID %u does not exist"
msgstr "带有OID为%u的外部数据封装器(foreign-data wrapper)不存在"
-#: catalog/aclchk.c:4179 catalog/aclchk.c:4913 commands/foreigncmds.c:461
+#: catalog/aclchk.c:4391 catalog/aclchk.c:5128 commands/foreigncmds.c:459
#, c-format
msgid "foreign server with OID %u does not exist"
msgstr "带有OID为%u的外部服务器不存在"
-#: catalog/aclchk.c:4238 catalog/aclchk.c:4252 catalog/aclchk.c:4575
+#: catalog/aclchk.c:4451 catalog/aclchk.c:4790 utils/cache/typcache.c:368
#, c-format
msgid "type with OID %u does not exist"
msgstr "OID 为 %u 的类型不存在"
-#: catalog/aclchk.c:4601
+#: catalog/aclchk.c:4816
#, c-format
msgid "operator with OID %u does not exist"
msgstr "OID 为 %u 的操作符不存在"
-#: catalog/aclchk.c:4778
+#: catalog/aclchk.c:4993
#, c-format
msgid "operator class with OID %u does not exist"
msgstr "OID 为 %u 的操作符表不存在"
-#: catalog/aclchk.c:4805
+#: catalog/aclchk.c:5020
#, c-format
msgid "operator family with OID %u does not exist"
msgstr "OID 为 %u 的操作符表不存在"
-#: catalog/aclchk.c:4832
+#: catalog/aclchk.c:5047
#, c-format
msgid "text search dictionary with OID %u does not exist"
msgstr "带有OID为%u的文本搜索字典不存在"
-#: catalog/aclchk.c:4859
+#: catalog/aclchk.c:5074
#, c-format
msgid "text search configuration with OID %u does not exist"
msgstr "带有OID为%u的文本搜索配置不存在"
-#: catalog/aclchk.c:4940 commands/event_trigger.c:587
+#: catalog/aclchk.c:5155 commands/event_trigger.c:590
#, c-format
msgid "event trigger with OID %u does not exist"
msgstr "OID 为 %u 的事件触发器不存在"
-#: catalog/aclchk.c:4993
+#: catalog/aclchk.c:5208 commands/collationcmds.c:347
#, c-format
msgid "collation with OID %u does not exist"
msgstr "OID 为 %u 的排序规则不存在"
-#: catalog/aclchk.c:5019
+#: catalog/aclchk.c:5234
#, c-format
msgid "conversion with OID %u does not exist"
msgstr "OID 为 %u 的编码转换不存在"
-#: catalog/aclchk.c:5060
+#: catalog/aclchk.c:5275
#, c-format
msgid "extension with OID %u does not exist"
msgstr "OID 为 %u 的扩展不存在"
-#: catalog/dependency.c:646
+#: catalog/aclchk.c:5302 commands/publicationcmds.c:747
+#, c-format
+msgid "publication with OID %u does not exist"
+msgstr "OID 为 %u 的发布不存在"
+
+#: catalog/aclchk.c:5328 commands/subscriptioncmds.c:1098
+#, c-format
+msgid "subscription with OID %u does not exist"
+msgstr "OID 为 %u 的订阅不存在"
+
+#: catalog/aclchk.c:5354
+#, c-format
+msgid "statistics object with OID %u does not exist"
+msgstr "OID 为 %u 的统计信息对象不存在"
+
+#: catalog/dependency.c:611
#, c-format
msgid "cannot drop %s because %s requires it"
msgstr "无法删除 %s, 因为 %s 需要它"
-#: catalog/dependency.c:649
+#: catalog/dependency.c:614
#, c-format
msgid "You can drop %s instead."
msgstr "您也可以删除 %s 代替."
-#: catalog/dependency.c:811 catalog/pg_shdepend.c:576
+#: catalog/dependency.c:787 catalog/pg_shdepend.c:574
#, c-format
msgid "cannot drop %s because it is required by the database system"
msgstr "无法删除 %s, 因为它是数据库系统所需要的"
-#: catalog/dependency.c:927
+#: catalog/dependency.c:905
#, c-format
msgid "drop auto-cascades to %s"
msgstr "自动递归删除 %s"
-#: catalog/dependency.c:939 catalog/dependency.c:948
+#: catalog/dependency.c:917 catalog/dependency.c:926
#, c-format
msgid "%s depends on %s"
msgstr "%s 倚赖于 %s"
-#: catalog/dependency.c:960 catalog/dependency.c:969
+#: catalog/dependency.c:938 catalog/dependency.c:947
#, c-format
msgid "drop cascades to %s"
msgstr "递归删除 %s"
-#: catalog/dependency.c:977 catalog/pg_shdepend.c:687
+#: catalog/dependency.c:955 catalog/pg_shdepend.c:685
#, c-format
msgid ""
"\n"
"\n"
"%d个其它对象(相关列表参见服务器日志)"
-#: catalog/dependency.c:989
+#: catalog/dependency.c:967
#, c-format
msgid "cannot drop %s because other objects depend on it"
msgstr "无法删除 %s 因为有其它对象倚赖它"
-#: catalog/dependency.c:993 catalog/dependency.c:1000
+#: catalog/dependency.c:971 catalog/dependency.c:978
#, c-format
msgid "Use DROP ... CASCADE to drop the dependent objects too."
msgstr "使用 DROP .. CASCADE 把倚赖对象一并删除."
-#: catalog/dependency.c:997
+#: catalog/dependency.c:975
#, c-format
msgid "cannot drop desired object(s) because other objects depend on them"
msgstr "无法删除希望的对象,因为有其它对象倚赖它"
#. translator: %d always has a value larger than 1
-#: catalog/dependency.c:1006
+#: catalog/dependency.c:984
#, c-format
msgid "drop cascades to %d other object"
msgid_plural "drop cascades to %d other objects"
msgstr[0] "串联删除%d个其它对象"
-#: catalog/dependency.c:1634
+#: catalog/dependency.c:1644
#, c-format
-msgid "constant of the type \"regrole\" cannot be used here"
-msgstr "不能在这里使用类型\"regrole\"的常量"
+msgid "constant of the type %s cannot be used here"
+msgstr "不能在这里使用类型%s"
-#: catalog/heap.c:277
+#: catalog/heap.c:286
#, c-format
msgid "permission denied to create \"%s.%s\""
msgstr "创建 \"%s.%s\" 权限不够"
-#: catalog/heap.c:279
+#: catalog/heap.c:288
#, c-format
msgid "System catalog modifications are currently disallowed."
msgstr "系统表修改是不被同时允许的"
-#: catalog/heap.c:414 commands/tablecmds.c:1438 commands/tablecmds.c:1895
-#: commands/tablecmds.c:4821
+#: catalog/heap.c:433 commands/tablecmds.c:1884 commands/tablecmds.c:2417
+#: commands/tablecmds.c:5509
#, c-format
msgid "tables can have at most %d columns"
msgstr "表最多可以有 %d 个字段"
-#: catalog/heap.c:431 commands/tablecmds.c:5082
+#: catalog/heap.c:452 commands/tablecmds.c:5805
#, c-format
msgid "column name \"%s\" conflicts with a system column name"
msgstr "字段名 \"%s\" 与系统字段名冲突"
-#: catalog/heap.c:447
+#: catalog/heap.c:468
#, c-format
msgid "column name \"%s\" specified more than once"
msgstr "字段名称\"%s\" 被定义多次"
-#: catalog/heap.c:497
-#, c-format
-msgid "column \"%s\" has type \"unknown\""
-msgstr "字段 \"%s\" 类型为 \"未知\""
-
-#: catalog/heap.c:498
-#, c-format
-msgid "Proceeding with relation creation anyway."
-msgstr "继续关系的创建."
-
-#: catalog/heap.c:511
+#: catalog/heap.c:521
#, c-format
msgid "column \"%s\" has pseudo-type %s"
msgstr "字段 \"%s\" 有伪类型 %s"
-#: catalog/heap.c:541
+#: catalog/heap.c:551
#, c-format
msgid "composite type %s cannot be made a member of itself"
msgstr "混合类型 %s 的成员不能为自身"
-#: catalog/heap.c:583 commands/createas.c:373
+#: catalog/heap.c:593 commands/createas.c:201 commands/createas.c:498
#, c-format
msgid "no collation was derived for column \"%s\" with collatable type %s"
msgstr "没有来自列 \"%s\"的排序规则带有可排序类型 %s"
-#: catalog/heap.c:585 commands/createas.c:375 commands/indexcmds.c:1132
-#: commands/view.c:116 regex/regc_pg_locale.c:262 utils/adt/formatting.c:1514
-#: utils/adt/formatting.c:1566 utils/adt/formatting.c:1634
-#: utils/adt/formatting.c:1686 utils/adt/formatting.c:1755
-#: utils/adt/formatting.c:1819 utils/adt/like.c:213 utils/adt/selfuncs.c:5330
-#: utils/adt/varlena.c:1421 utils/adt/varlena.c:1826
+#: catalog/heap.c:595 commands/createas.c:204 commands/createas.c:501
+#: commands/indexcmds.c:1588 commands/tablecmds.c:14372 commands/view.c:105
+#: regex/regc_pg_locale.c:263 utils/adt/formatting.c:1536
+#: utils/adt/formatting.c:1658 utils/adt/formatting.c:1781 utils/adt/like.c:184
+#: utils/adt/selfuncs.c:5807 utils/adt/varlena.c:1416 utils/adt/varlena.c:1881
#, c-format
msgid "Use the COLLATE clause to set the collation explicitly."
msgstr "使用COLLATE子句来显示设置排序规则."
-#: catalog/heap.c:1066 catalog/index.c:792 commands/tablecmds.c:2622
+#: catalog/heap.c:1084 catalog/index.c:876 commands/tablecmds.c:3179
#, c-format
msgid "relation \"%s\" already exists"
msgstr "关系 \"%s\" 已经存在"
-#: catalog/heap.c:1082 catalog/pg_type.c:412 catalog/pg_type.c:722
-#: commands/typecmds.c:237 commands/typecmds.c:784 commands/typecmds.c:1135
-#: commands/typecmds.c:1357 commands/typecmds.c:2113
+#: catalog/heap.c:1100 catalog/pg_type.c:417 catalog/pg_type.c:732
+#: commands/typecmds.c:236 commands/typecmds.c:787 commands/typecmds.c:1186
+#: commands/typecmds.c:1419 commands/typecmds.c:2174
#, c-format
msgid "type \"%s\" already exists"
msgstr "类型 \"%s\" 已经存在"
-#: catalog/heap.c:1083
+#: catalog/heap.c:1101
#, c-format
-msgid ""
-"A relation has an associated type of the same name, so you must use a name "
-"that doesn't conflict with any existing type."
-msgstr ""
-"关系和与它相关联的类型名称相同,所以不能使用与任何已存在类型名称相冲突的名称."
+msgid "A relation has an associated type of the same name, so you must use a name that doesn't conflict with any existing type."
+msgstr "关系和与它相关联的类型名称相同,所以不能使用与任何已存在类型名称相冲突的名称."
-#: catalog/heap.c:1111
+#: catalog/heap.c:1130
#, c-format
msgid "pg_class heap OID value not set when in binary upgrade mode"
msgstr "当处于二进制升级模式时没有设置pg_class的堆OID值"
-#: catalog/heap.c:2289
+#: catalog/heap.c:2333
+#, c-format
+msgid "cannot add NO INHERIT constraint to partitioned table \"%s\""
+msgstr "无法向分区表\"%s\"添加NO INHERIT约束"
+
+#: catalog/heap.c:2598
#, c-format
msgid "check constraint \"%s\" already exists"
msgstr "检查约束 \"%s\" 已经存在"
-#: catalog/heap.c:2442 catalog/pg_constraint.c:654 commands/tablecmds.c:6070
+#: catalog/heap.c:2768 catalog/index.c:890 catalog/pg_constraint.c:679
+#: commands/tablecmds.c:7157
#, c-format
msgid "constraint \"%s\" for relation \"%s\" already exists"
msgstr "关系 \"%2$s\" 的约束 \"%1$s\" 已经存在"
-#: catalog/heap.c:2452
+#: catalog/heap.c:2775
#, c-format
-msgid ""
-"constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\""
+msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\""
msgstr "关系\"%2$s\"上的约束\"%1$s\"与非继承约束相冲突"
-#: catalog/heap.c:2466
+#: catalog/heap.c:2786
+#, c-format
+msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\""
+msgstr "关系\"%2$s\"上的约束\"%1$s\"与继承约束相冲突"
+
+#: catalog/heap.c:2796
+#, c-format
+msgid "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\""
+msgstr "关系\"%2$s\"上的约束\"%1$s\"与NOT VALID约束相冲突"
+
+#: catalog/heap.c:2801
#, c-format
msgid "merging constraint \"%s\" with inherited definition"
msgstr "正在合并带有已继承定义的约束\"%s\" "
-#: catalog/heap.c:2559
+#: catalog/heap.c:2916
#, c-format
msgid "cannot use column references in default expression"
msgstr "在默认的表达式中不能使用字段关联"
-#: catalog/heap.c:2570
-#, c-format
-msgid "default expression must not return a set"
-msgstr "默认表达式不能返回一个组合"
-
-#: catalog/heap.c:2589 rewrite/rewriteHandler.c:1084
+#: catalog/heap.c:2941 rewrite/rewriteHandler.c:1177
#, c-format
msgid "column \"%s\" is of type %s but default expression is of type %s"
msgstr "字段 \"%s\" 类型是 %s, 但默认表达式类型是 %s"
-#: catalog/heap.c:2594 commands/prepare.c:374 parser/parse_node.c:428
-#: parser/parse_target.c:528 parser/parse_target.c:778
-#: parser/parse_target.c:788 rewrite/rewriteHandler.c:1089
+#: catalog/heap.c:2946 commands/prepare.c:384 parser/parse_node.c:430
+#: parser/parse_target.c:590 parser/parse_target.c:865
+#: parser/parse_target.c:875 rewrite/rewriteHandler.c:1182
#, c-format
msgid "You will need to rewrite or cast the expression."
msgstr "你需要重写或转换表达式"
-#: catalog/heap.c:2641
+#: catalog/heap.c:2993
#, c-format
msgid "only table \"%s\" can be referenced in check constraint"
msgstr "在检查约束中只有表 \"%s\" 能被关联的"
-#: catalog/heap.c:2881
+#: catalog/heap.c:3243
#, c-format
msgid "unsupported ON COMMIT and foreign key combination"
msgstr "不支持ON COMMIT和外键一同使用"
-#: catalog/heap.c:2882
+#: catalog/heap.c:3244
#, c-format
-msgid ""
-"Table \"%s\" references \"%s\", but they do not have the same ON COMMIT "
-"setting."
+msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting."
msgstr "表 \"%s\"引用表\"%s\",但是它们没有相同的ON COMMIT设置."
-#: catalog/heap.c:2887
+#: catalog/heap.c:3249
#, c-format
msgid "cannot truncate a table referenced in a foreign key constraint"
msgstr "在一个外键约束中无法删除 (truncate) 一个表的关联"
-#: catalog/heap.c:2888
+#: catalog/heap.c:3250
#, c-format
msgid "Table \"%s\" references \"%s\"."
msgstr "表\"%s\" 引用\"%s\"."
-#: catalog/heap.c:2890
+#: catalog/heap.c:3252
#, c-format
msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE."
msgstr "同时截断表\"%s\" ,或者使用TRUNCATE ... CASCADE."
-#: catalog/index.c:210 parser/parse_utilcmd.c:1486 parser/parse_utilcmd.c:1572
+#: catalog/index.c:233 parser/parse_utilcmd.c:1823 parser/parse_utilcmd.c:1910
#, c-format
msgid "multiple primary keys for table \"%s\" are not allowed"
msgstr "对表 \"%s\" 指定多个主键是不允许的"
-#: catalog/index.c:228
+#: catalog/index.c:251
#, c-format
msgid "primary keys cannot be expressions"
msgstr "主键不能是表达式"
-#: catalog/index.c:742 catalog/index.c:1160
+#: catalog/index.c:820 catalog/index.c:1291
#, c-format
msgid "user-defined indexes on system catalog tables are not supported"
msgstr "在系统表上用户定义的索引是不被支持的"
-#: catalog/index.c:752
+#: catalog/index.c:830
#, c-format
msgid "concurrent index creation on system catalog tables is not supported"
msgstr "不支持在系统目录表上同时创建索引"
-#: catalog/index.c:770
+#: catalog/index.c:848
#, c-format
msgid "shared indexes cannot be created after initdb"
msgstr "在 initdb 之后, 不能创建共享索引"
-#: catalog/index.c:784 commands/createas.c:100 commands/sequence.c:141
-#: parser/parse_utilcmd.c:192
+#: catalog/index.c:868 commands/createas.c:250 commands/sequence.c:152
+#: parser/parse_utilcmd.c:205
#, c-format
msgid "relation \"%s\" already exists, skipping"
msgstr "关系 \"%s\" 已经存在, 跳过"
-#: catalog/index.c:820
+#: catalog/index.c:918
#, c-format
msgid "pg_class index OID value not set when in binary upgrade mode"
msgstr "当处于二进制升级模式时没有设置pg_class的索引OID值"
-#: catalog/index.c:1422
+#: catalog/index.c:1566
#, c-format
msgid "DROP INDEX CONCURRENTLY must be first action in transaction"
msgstr "DROP INDEX CONCURRENTLY在一个事务当中必须是最先执行"
-#: catalog/index.c:2004
+#: catalog/index.c:2295
#, c-format
-msgid "building index \"%s\" on table \"%s\""
-msgstr "为表 \"%2$s\" 建立索引\"%1$s\""
+msgid "building index \"%s\" on table \"%s\" serially"
+msgstr "为表 \"%2$s\" 串行的建立索引\"%1$s\""
-#: catalog/index.c:3315
+#: catalog/index.c:2300
+#, c-format
+msgid "building index \"%s\" on table \"%s\" with request for %d parallel worker"
+msgid_plural "building index \"%s\" on table \"%s\" with request for %d parallel workers"
+msgstr[0] "为表 \"%2$s\" 建立索引\"%1$s\",请求%3$d个并行工作线程"
+
+#: catalog/index.c:3689
#, c-format
msgid "cannot reindex temporary tables of other sessions"
msgstr "不能重新创建其他会话的临时表上的索引"
-#: catalog/index.c:3440
+#: catalog/index.c:3820
#, c-format
msgid "index \"%s\" was reindexed"
msgstr "索引\"%s\"已被重新索引"
-#: catalog/index.c:3442 commands/vacuumlazy.c:1323 commands/vacuumlazy.c:1399
-#: commands/vacuumlazy.c:1588 commands/vacuumlazy.c:1789
+#: catalog/index.c:3891
#, c-format
-msgid "%s."
-msgstr "%s"
+msgid "REINDEX of partitioned tables is not yet implemented, skipping \"%s\""
+msgstr "分区表的重新索引尚未实现,跳过\"%s\""
-#: catalog/namespace.c:249 catalog/namespace.c:447 catalog/namespace.c:541
-#: commands/trigger.c:4527
+#: catalog/namespace.c:249 catalog/namespace.c:453 catalog/namespace.c:545
+#: commands/trigger.c:5405
#, c-format
msgid "cross-database references are not implemented: \"%s.%s.%s\""
msgstr "未实现跨数据库关联: \"%s.%s.%s\""
msgid "temporary tables cannot specify a schema name"
msgstr "临时表不能指定模式名称"
-#: catalog/namespace.c:385
+#: catalog/namespace.c:387
#, c-format
msgid "could not obtain lock on relation \"%s.%s\""
msgstr "无法在关系 \"%s.%s\" 上获得锁"
-#: catalog/namespace.c:390 commands/lockcmds.c:146
+#: catalog/namespace.c:392 commands/lockcmds.c:162 commands/lockcmds.c:248
#, c-format
msgid "could not obtain lock on relation \"%s\""
msgstr "无法在关系 \"%s\" 上获得锁"
-#: catalog/namespace.c:414 parser/parse_relation.c:1137
+#: catalog/namespace.c:420 parser/parse_relation.c:1158
#, c-format
msgid "relation \"%s.%s\" does not exist"
msgstr "关系 \"%s.%s\" 不存在"
-#: catalog/namespace.c:419 parser/parse_relation.c:1150
-#: parser/parse_relation.c:1158 utils/adt/regproc.c:1034
+#: catalog/namespace.c:425 parser/parse_relation.c:1171
+#: parser/parse_relation.c:1179
#, c-format
msgid "relation \"%s\" does not exist"
msgstr "关系 \"%s\" 不存在"
-#: catalog/namespace.c:487 catalog/namespace.c:2841 commands/extension.c:1382
-#: commands/extension.c:1388
+#: catalog/namespace.c:491 catalog/namespace.c:3008 commands/extension.c:1466
+#: commands/extension.c:1472
#, c-format
msgid "no schema has been selected to create in"
msgstr "创建中没有选择模式"
-#: catalog/namespace.c:639 catalog/namespace.c:652
+#: catalog/namespace.c:643 catalog/namespace.c:656
#, c-format
msgid "cannot create relations in temporary schemas of other sessions"
msgstr "不能在其他会话的临时方案上创建关系"
-#: catalog/namespace.c:643
+#: catalog/namespace.c:647
#, c-format
msgid "cannot create temporary relation in non-temporary schema"
msgstr "不能在非临时方案上创建临时关系"
-#: catalog/namespace.c:658
+#: catalog/namespace.c:662
#, c-format
msgid "only temporary relations may be created in temporary schemas"
msgstr "临时方案里只能创建临时关系"
-#: catalog/namespace.c:2154
+#: catalog/namespace.c:2200
+#, c-format
+msgid "statistics object \"%s\" does not exist"
+msgstr "统计信息对象 \"%s\" 不存在"
+
+#: catalog/namespace.c:2323
#, c-format
msgid "text search parser \"%s\" does not exist"
msgstr "文本搜索解析器 \"%s\" 不存在"
-#: catalog/namespace.c:2280
+#: catalog/namespace.c:2449
#, c-format
msgid "text search dictionary \"%s\" does not exist"
msgstr "文本搜索字典 \"%s\" 不存在"
-#: catalog/namespace.c:2407
+#: catalog/namespace.c:2576
#, c-format
msgid "text search template \"%s\" does not exist"
msgstr "文本搜索模版 \"%s\" 不存在"
-#: catalog/namespace.c:2533 commands/tsearchcmds.c:1197
-#: utils/cache/ts_cache.c:613
+#: catalog/namespace.c:2702 commands/tsearchcmds.c:1185
+#: utils/cache/ts_cache.c:616
#, c-format
msgid "text search configuration \"%s\" does not exist"
msgstr "文本搜寻配置 \"%s\" 不存在"
-#: catalog/namespace.c:2646 parser/parse_expr.c:789 parser/parse_target.c:1130
+#: catalog/namespace.c:2815 parser/parse_expr.c:793 parser/parse_target.c:1220
#, c-format
msgid "cross-database references are not implemented: %s"
msgstr "未实现跨数据库关联: %s"
-#: catalog/namespace.c:2652 gram.y:13434 gram.y:14791 parser/parse_expr.c:796
-#: parser/parse_target.c:1137
+#: catalog/namespace.c:2821 gram.y:14708 gram.y:16140 parser/parse_expr.c:800
+#: parser/parse_target.c:1227
#, c-format
msgid "improper qualified name (too many dotted names): %s"
msgstr "不合适的条件名称 (名字中太多的点符号): %s"
-#: catalog/namespace.c:2783
+#: catalog/namespace.c:2951
#, c-format
msgid "cannot move objects into or out of temporary schemas"
msgstr "无法将对象移入或移出临时模式"
-#: catalog/namespace.c:2789
+#: catalog/namespace.c:2957
#, c-format
msgid "cannot move objects into or out of TOAST schema"
msgstr "无法将对象移入或移出TOAST模式"
-#: catalog/namespace.c:2862 commands/schemacmds.c:242
-#: commands/schemacmds.c:321 commands/tablecmds.c:740
+#: catalog/namespace.c:3029 commands/schemacmds.c:256 commands/schemacmds.c:334
+#: commands/tablecmds.c:1017
#, c-format
msgid "schema \"%s\" does not exist"
msgstr "模式 \"%s\" 不存在"
-#: catalog/namespace.c:2893
+#: catalog/namespace.c:3060
#, c-format
msgid "improper relation name (too many dotted names): %s"
msgstr "不合适的关系名称 (名字中太多的点符号): %s"
-#: catalog/namespace.c:3358
+#: catalog/namespace.c:3594
#, c-format
msgid "collation \"%s\" for encoding \"%s\" does not exist"
msgstr "编码 \"%2$s\" 中的排序规则 \"%1$s\" 不存在"
-#: catalog/namespace.c:3413
+#: catalog/namespace.c:3649
#, c-format
msgid "conversion \"%s\" does not exist"
msgstr "编码转换 \"%s\" 不存在"
-#: catalog/namespace.c:3621
+#: catalog/namespace.c:3889
#, c-format
msgid "permission denied to create temporary tables in database \"%s\""
msgstr "不允许在数据库 \"%s\" 中创建临时表"
-#: catalog/namespace.c:3637
+#: catalog/namespace.c:3905
#, c-format
msgid "cannot create temporary tables during recovery"
msgstr "不能在恢复过程中创建临时表"
-#: catalog/namespace.c:3643
+#: catalog/namespace.c:3911
#, c-format
-msgid "cannot create temporary tables in parallel mode"
-msgstr "å¹¶è¡\8c模å¼\8fä¸ä¸\8dè\83½创建临时表"
+msgid "cannot create temporary tables during a parallel operation"
+msgstr "å\9c¨å¹¶è¡\8cæ\93\8dä½\9cæ\9c\9fé\97´æ\97 æ³\95创建临时表"
-#: catalog/namespace.c:3887 commands/tablespace.c:1177 commands/variable.c:63
-#: utils/misc/guc.c:9853
+#: catalog/namespace.c:4194 commands/tablespace.c:1171 commands/variable.c:64
+#: utils/misc/guc.c:10267 utils/misc/guc.c:10345
#, c-format
msgid "List syntax is invalid."
msgstr "列表语法无效."
-#: catalog/objectaddress.c:1065
-#| msgid "schema name cannot be qualified"
-msgid "access method name cannot be qualified"
-msgstr "不能限定访问方法名称"
-
-#: catalog/objectaddress.c:1068
-msgid "database name cannot be qualified"
-msgstr "不能限定数据库名称"
-
-#: catalog/objectaddress.c:1071 commands/extension.c:2506
-#, c-format
-msgid "extension name cannot be qualified"
-msgstr "扩展名不合格"
-
-#: catalog/objectaddress.c:1074
-msgid "tablespace name cannot be qualified"
-msgstr "不能限定表空间名称"
-
-#: catalog/objectaddress.c:1077
-msgid "role name cannot be qualified"
-msgstr "不能限定角色名称"
-
-#: catalog/objectaddress.c:1080
-msgid "schema name cannot be qualified"
-msgstr "不能限定模式名称"
-
-#: catalog/objectaddress.c:1083
-msgid "language name cannot be qualified"
-msgstr "不能限定language名称"
-
-#: catalog/objectaddress.c:1086
-msgid "foreign-data wrapper name cannot be qualified"
-msgstr "foreign-data包装器名无法限定"
-
-#: catalog/objectaddress.c:1089
-msgid "server name cannot be qualified"
-msgstr "无法限定服务器名"
-
-#: catalog/objectaddress.c:1092
-msgid "event trigger name cannot be qualified"
-msgstr "事件触发器命名无法确定"
-
-#: catalog/objectaddress.c:1210 commands/lockcmds.c:94 commands/policy.c:94
-#: commands/policy.c:389 commands/policy.c:478 commands/tablecmds.c:217
-#: commands/tablecmds.c:1299 commands/tablecmds.c:4348
-#: commands/tablecmds.c:7979
+#: catalog/objectaddress.c:1238 catalog/pg_publication.c:66
+#: commands/policy.c:94 commands/policy.c:394 commands/policy.c:484
+#: commands/tablecmds.c:225 commands/tablecmds.c:267 commands/tablecmds.c:1742
+#: commands/tablecmds.c:5004 commands/tablecmds.c:9628
#, c-format
msgid "\"%s\" is not a table"
msgstr "\"%s\" 不是一个表"
-#: catalog/objectaddress.c:1217 commands/tablecmds.c:229
-#: commands/tablecmds.c:4378 commands/tablecmds.c:12014 commands/view.c:155
+#: catalog/objectaddress.c:1245 commands/tablecmds.c:237
+#: commands/tablecmds.c:5034 commands/tablecmds.c:14091 commands/view.c:143
#, c-format
msgid "\"%s\" is not a view"
msgstr "\"%s\" 不是一个视图"
-#: catalog/objectaddress.c:1224 commands/matview.c:174
-#: commands/tablecmds.c:235 commands/tablecmds.c:12019
+#: catalog/objectaddress.c:1252 commands/matview.c:172 commands/tablecmds.c:243
+#: commands/tablecmds.c:14096
#, c-format
msgid "\"%s\" is not a materialized view"
msgstr "\"%s\" 不是一个物化视图"
-#: catalog/objectaddress.c:1231 commands/tablecmds.c:253
-#: commands/tablecmds.c:4381 commands/tablecmds.c:12024
+#: catalog/objectaddress.c:1259 commands/tablecmds.c:261
+#: commands/tablecmds.c:5037 commands/tablecmds.c:14101
#, c-format
msgid "\"%s\" is not a foreign table"
msgstr "\"%s\" 不是一个外部表"
+#: catalog/objectaddress.c:1300
+#, c-format
+msgid "must specify relation and object name"
+msgstr "必须指定关系和对象名称"
+
#: catalog/objectaddress.c:1376 catalog/objectaddress.c:1429
#, c-format
msgid "column name must be qualified"
msgid "default value for column \"%s\" of relation \"%s\" does not exist"
msgstr "关系\"%2$s\"的列\"%1$s\"的默认值不存在"
-#: catalog/objectaddress.c:1512 commands/functioncmds.c:128
-#: commands/tablecmds.c:245 commands/typecmds.c:3214 parser/parse_type.c:226
-#: parser/parse_type.c:255 parser/parse_type.c:795 utils/adt/acl.c:4374
-#: utils/adt/regproc.c:1225
+#: catalog/objectaddress.c:1509 commands/functioncmds.c:133
+#: commands/tablecmds.c:253 commands/typecmds.c:3324 parser/parse_type.c:226
+#: parser/parse_type.c:255 parser/parse_type.c:828 utils/adt/acl.c:4452
#, c-format
msgid "type \"%s\" does not exist"
msgstr "类型 \"%s\" 不存在"
-#: catalog/objectaddress.c:1629
+#: catalog/objectaddress.c:1628
#, c-format
msgid "operator %d (%s, %s) of %s does not exist"
msgstr "%4$s的操作符%1$d (%2$s,%3$s)不存在"
-#: catalog/objectaddress.c:1658
+#: catalog/objectaddress.c:1659
#, c-format
msgid "function %d (%s, %s) of %s does not exist"
msgstr "%4$s的函数%1$d (%2$s, %3$s)不存在"
-#: catalog/objectaddress.c:1707 catalog/objectaddress.c:1733
+#: catalog/objectaddress.c:1710 catalog/objectaddress.c:1736
#, c-format
msgid "user mapping for user \"%s\" on server \"%s\" does not exist"
msgstr "用户\"%s\"在服务器\"%s\"上的用户映射不存在"
-#: catalog/objectaddress.c:1722 commands/foreigncmds.c:430
-#: commands/foreigncmds.c:997 commands/foreigncmds.c:1372
-#: foreign/foreign.c:798
+#: catalog/objectaddress.c:1725 commands/foreigncmds.c:428
+#: commands/foreigncmds.c:1004 commands/foreigncmds.c:1381
+#: foreign/foreign.c:688
#, c-format
msgid "server \"%s\" does not exist"
msgstr "服务器\"%s\" 不存在"
-#: catalog/objectaddress.c:1794
+#: catalog/objectaddress.c:1792
+#, c-format
+msgid "publication relation \"%s\" in publication \"%s\" does not exist"
+msgstr "发布关系\"%s\"在发布\"%s\"中不存在"
+
+#: catalog/objectaddress.c:1854
#, c-format
-msgid "unrecognized default ACL object type %c"
-msgstr "无法识别的默认ACL对象类型%c"
+msgid "unrecognized default ACL object type \"%c\""
+msgstr "无法识别的默认ACL对象类型\"%c\""
-#: catalog/objectaddress.c:1795
+#: catalog/objectaddress.c:1855
#, c-format
-msgid "Valid object types are \"r\", \"S\", \"f\", and \"T\"."
-msgstr "有效的对象类型为\"r\"、\"S\"、\"f\"和\"T\"。"
+msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"."
+msgstr "有效的对象类型为 \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"."
-#: catalog/objectaddress.c:1841
+#: catalog/objectaddress.c:1906
#, c-format
msgid "default ACL for user \"%s\" in schema \"%s\" on %s does not exist"
msgstr "模式\"%2$s\"中用户\"%1$s\"在%3$s上的默认ACL不存在"
-#: catalog/objectaddress.c:1846
+#: catalog/objectaddress.c:1911
#, c-format
msgid "default ACL for user \"%s\" on %s does not exist"
msgstr "用户\"%s\"在%s上的默认ACL不存在"
-#: catalog/objectaddress.c:1873 catalog/objectaddress.c:1929
-#: catalog/objectaddress.c:1984
+#: catalog/objectaddress.c:1938 catalog/objectaddress.c:1996
+#: catalog/objectaddress.c:2053
#, c-format
msgid "name or argument lists may not contain nulls"
msgstr "名称或者参数列表不能包含空值"
-#: catalog/objectaddress.c:1905
+#: catalog/objectaddress.c:1972
#, c-format
msgid "unsupported object type \"%s\""
msgstr "不支持的对象类型\"%s\""
-#: catalog/objectaddress.c:1925 catalog/objectaddress.c:1943
+#: catalog/objectaddress.c:1992 catalog/objectaddress.c:2010
+#: catalog/objectaddress.c:2151
#, c-format
msgid "name list length must be exactly %d"
msgstr "名字列表的长度必须正好是 %d"
-#: catalog/objectaddress.c:1947
+#: catalog/objectaddress.c:2014
#, c-format
msgid "large object OID may not be null"
msgstr "大对象OID不能为空"
-#: catalog/objectaddress.c:1956 catalog/objectaddress.c:2016
-#: catalog/objectaddress.c:2023
+#: catalog/objectaddress.c:2023 catalog/objectaddress.c:2086
+#: catalog/objectaddress.c:2093
#, c-format
msgid "name list length must be at least %d"
msgstr "名称列表的长度必须至少为%d"
-#: catalog/objectaddress.c:2009 catalog/objectaddress.c:2029
+#: catalog/objectaddress.c:2079 catalog/objectaddress.c:2100
#, c-format
msgid "argument list length must be exactly %d"
msgstr "参数列表的长度必须正好为%d"
-#: catalog/objectaddress.c:2165 libpq/be-fsstubs.c:352
+#: catalog/objectaddress.c:2330 libpq/be-fsstubs.c:321
#, c-format
msgid "must be owner of large object %u"
msgstr "必须是大对象%u的属主"
-#: catalog/objectaddress.c:2180 commands/functioncmds.c:1426
+#: catalog/objectaddress.c:2345 commands/functioncmds.c:1454
#, c-format
msgid "must be owner of type %s or type %s"
msgstr "只能是类型 %s 或 %s 的所由者"
-#: catalog/objectaddress.c:2220 catalog/objectaddress.c:2237
+#: catalog/objectaddress.c:2395 catalog/objectaddress.c:2412
#, c-format
msgid "must be superuser"
msgstr "必须是超级用户"
-#: catalog/objectaddress.c:2227
+#: catalog/objectaddress.c:2402
#, c-format
msgid "must have CREATEROLE privilege"
msgstr "必须拥有CREATEROLE权限."
-#: catalog/objectaddress.c:2307
+#: catalog/objectaddress.c:2481
#, c-format
msgid "unrecognized object type \"%s\""
msgstr "无法识别的对象类型\"%s\""
-#: catalog/objectaddress.c:2502
+#. translator: second %s is, e.g., "table %s"
+#: catalog/objectaddress.c:2694
#, c-format
-msgid " column %s"
-msgstr " 字段 %s"
+msgid "column %s of %s"
+msgstr "%2$s的列%1$s"
-#: catalog/objectaddress.c:2508
+#: catalog/objectaddress.c:2704
#, c-format
msgid "function %s"
msgstr "函数 %s"
-#: catalog/objectaddress.c:2513
+#: catalog/objectaddress.c:2709
#, c-format
msgid "type %s"
msgstr "类型 %s"
-#: catalog/objectaddress.c:2543
+#: catalog/objectaddress.c:2739
#, c-format
msgid "cast from %s to %s"
msgstr "%s 转换为 %s"
-#: catalog/objectaddress.c:2563
+#: catalog/objectaddress.c:2767
#, c-format
msgid "collation %s"
msgstr "排序规则 %s"
-#: catalog/objectaddress.c:2587
+#. translator: second %s is, e.g., "table %s"
+#: catalog/objectaddress.c:2793
#, c-format
msgid "constraint %s on %s"
msgstr "在%2$s上的约束%1$s "
-#: catalog/objectaddress.c:2593
+#: catalog/objectaddress.c:2799
#, c-format
msgid "constraint %s"
msgstr "约束 %s"
-#: catalog/objectaddress.c:2610
+#: catalog/objectaddress.c:2826
#, c-format
msgid "conversion %s"
msgstr "编码转换 %s"
-#: catalog/objectaddress.c:2647
+#. translator: %s is typically "column %s of table %s"
+#: catalog/objectaddress.c:2865
#, c-format
-msgid "default for %s"
-msgstr "%s的缺省"
+msgid "default value for %s"
+msgstr "%s的缺省值"
-#: catalog/objectaddress.c:2656
+#: catalog/objectaddress.c:2874
#, c-format
msgid "language %s"
msgstr "语言 %s"
-#: catalog/objectaddress.c:2661
+#: catalog/objectaddress.c:2879
#, c-format
msgid "large object %u"
msgstr "大对象 %u "
-#: catalog/objectaddress.c:2666
+#: catalog/objectaddress.c:2884
#, c-format
msgid "operator %s"
msgstr "操作符 %s"
-#: catalog/objectaddress.c:2698
+#: catalog/objectaddress.c:2916
#, c-format
msgid "operator class %s for access method %s"
msgstr "处理方法 %s 的操作符类 %s"
+#: catalog/objectaddress.c:2939
+#, c-format
+msgid "access method %s"
+msgstr "访问方法 %s"
+
#. translator: %d is the operator strategy (a number), the
#. first two %s's are data type names, the third %s is the
#. description of the operator family, and the last %s is the
#. textual form of the operator with arguments.
-#: catalog/objectaddress.c:2748
+#: catalog/objectaddress.c:2981
#, c-format
msgid "operator %d (%s, %s) of %s: %s"
msgstr "%5$s: %4$s中的操作符%1$d (%2$s,%3$s)"
#. are data type names, the third %s is the description of the
#. operator family, and the last %s is the textual form of the
#. function with arguments.
-#: catalog/objectaddress.c:2798
+#: catalog/objectaddress.c:3031
#, c-format
msgid "function %d (%s, %s) of %s: %s"
msgstr "%4$s: %5$s 的函数%1$d (%2$s, %3$s)"
-#: catalog/objectaddress.c:2838
-#, c-format
-msgid "rule %s on "
-msgstr "规则 %s 在 "
-
-#: catalog/objectaddress.c:2860
+#. translator: second %s is, e.g., "table %s"
+#: catalog/objectaddress.c:3075
#, c-format
-msgid "transform for %s language %s"
-msgstr "用于把%s转换到语言%s的转换"
+msgid "rule %s on %s"
+msgstr "规则 %s 在 %s"
-#: catalog/objectaddress.c:2894
+#. translator: second %s is, e.g., "table %s"
+#: catalog/objectaddress.c:3113
#, c-format
-msgid "trigger %s on "
-msgstr "触发器 %s 在 "
+msgid "trigger %s on %s"
+msgstr "触发器 %s 在 %s"
-#: catalog/objectaddress.c:2911
+#: catalog/objectaddress.c:3129
#, c-format
msgid "schema %s"
msgstr "模式 %s"
-#: catalog/objectaddress.c:2924
+#: catalog/objectaddress.c:3152
+#, c-format
+msgid "statistics object %s"
+msgstr "统计信息对象%s"
+
+#: catalog/objectaddress.c:3179
#, c-format
msgid "text search parser %s"
msgstr "文本搜寻解析器 %s"
# sql_help.h:301
-#: catalog/objectaddress.c:2939
+#: catalog/objectaddress.c:3205
#, c-format
msgid "text search dictionary %s"
msgstr "文本搜寻字典 %s"
# describe.c:1753
-#: catalog/objectaddress.c:2954
+#: catalog/objectaddress.c:3231
#, c-format
msgid "text search template %s"
msgstr "文本搜寻模版 %s"
-#: catalog/objectaddress.c:2969
+#: catalog/objectaddress.c:3257
#, c-format
msgid "text search configuration %s"
msgstr "文本搜寻配置 %s"
-#: catalog/objectaddress.c:2977
+#: catalog/objectaddress.c:3266
#, c-format
msgid "role %s"
msgstr "角色 %s"
-#: catalog/objectaddress.c:2990
+#: catalog/objectaddress.c:3279
#, c-format
msgid "database %s"
msgstr "数据库 %s"
# describe.c:1342
-#: catalog/objectaddress.c:3002
+#: catalog/objectaddress.c:3291
#, c-format
msgid "tablespace %s"
msgstr "表空间 %s"
-#: catalog/objectaddress.c:3011
+#: catalog/objectaddress.c:3300
#, c-format
msgid "foreign-data wrapper %s"
msgstr "外部数据封装器 %s"
-#: catalog/objectaddress.c:3020
+#: catalog/objectaddress.c:3309
#, c-format
msgid "server %s"
msgstr "服务器 %s"
-#: catalog/objectaddress.c:3048
+#: catalog/objectaddress.c:3337
#, c-format
msgid "user mapping for %s on server %s"
msgstr "%s在服务器%s上的用户映射"
-#: catalog/objectaddress.c:3083
+#: catalog/objectaddress.c:3382
+#, c-format
+msgid "default privileges on new relations belonging to role %s in schema %s"
+msgstr "在模式 %2$s上,在新的关系上的缺省权限属于角色%1$s"
+
+#: catalog/objectaddress.c:3386
#, c-format
msgid "default privileges on new relations belonging to role %s"
msgstr "在新的关系上的缺省权限属于角色%s"
-#: catalog/objectaddress.c:3088
+#: catalog/objectaddress.c:3392
+#, c-format
+msgid "default privileges on new sequences belonging to role %s in schema %s"
+msgstr "在模式 %2$s上,在新的序列上的缺省权限属于角色%1$s"
+
+#: catalog/objectaddress.c:3396
#, c-format
msgid "default privileges on new sequences belonging to role %s"
msgstr "在新的序列上的缺省权限属于角色%s"
-#: catalog/objectaddress.c:3093
+#: catalog/objectaddress.c:3402
+#, c-format
+msgid "default privileges on new functions belonging to role %s in schema %s"
+msgstr "在模式 %2$s上,在新的函数上的缺省权限属于角色%1$s"
+
+#: catalog/objectaddress.c:3406
#, c-format
msgid "default privileges on new functions belonging to role %s"
msgstr "在新的函数上的缺省权限属于角色%s"
-#: catalog/objectaddress.c:3098
+#: catalog/objectaddress.c:3412
+#, c-format
+msgid "default privileges on new types belonging to role %s in schema %s"
+msgstr "对属于角色%s(在模式%s中)的新类型的默认权限"
+
+#: catalog/objectaddress.c:3416
#, c-format
msgid "default privileges on new types belonging to role %s"
msgstr "在新类型上的缺省权限属于角色 %s"
-#: catalog/objectaddress.c:3104
+#: catalog/objectaddress.c:3422
#, c-format
-msgid "default privileges belonging to role %s"
-msgstr "缺省权限属于角色%s"
+msgid "default privileges on new schemas belonging to role %s"
+msgstr "在新的模式上的缺省权限属于角色%s"
-#: catalog/objectaddress.c:3112
+#: catalog/objectaddress.c:3429
#, c-format
-msgid " in schema %s"
-msgstr "在模式%s中"
+msgid "default privileges belonging to role %s in schema %s"
+msgstr "在模式%2$s上,缺省权限属于角色%1$s"
-#: catalog/objectaddress.c:3129
+#: catalog/objectaddress.c:3433
+#, c-format
+msgid "default privileges belonging to role %s"
+msgstr "缺省权限属于角色%s"
+
+#: catalog/objectaddress.c:3451
#, c-format
msgid "extension %s"
msgstr "扩展 %s"
# describe.c:1549
-#: catalog/objectaddress.c:3142
+#: catalog/objectaddress.c:3464
#, c-format
msgid "event trigger %s"
msgstr "事件触发器%s"
-#: catalog/objectaddress.c:3174
+#. translator: second %s is, e.g., "table %s"
+#: catalog/objectaddress.c:3500
#, c-format
-msgid "policy %s on "
-msgstr "策略%s在 "
+msgid "policy %s on %s"
+msgstr "策略%s在 %s上"
-#: catalog/objectaddress.c:3192
+#: catalog/objectaddress.c:3510
#, c-format
-#| msgid "access method \"%s\" does not exist"
-msgid "access method %s"
-msgstr "访问方法 %s"
+msgid "publication %s"
+msgstr "发布 %s"
+
+#. translator: first %s is, e.g., "table %s"
+#: catalog/objectaddress.c:3535
+#, c-format
+msgid "publication of %s in publication %s"
+msgstr "在发布%s中发布%s"
+
+#: catalog/objectaddress.c:3544
+#, c-format
+msgid "subscription %s"
+msgstr "订阅 %s"
+
+#: catalog/objectaddress.c:3562
+#, c-format
+msgid "transform for %s language %s"
+msgstr "用于把%s转换到语言%s的转换"
-#: catalog/objectaddress.c:3252
+#: catalog/objectaddress.c:3625
#, c-format
msgid "table %s"
msgstr "表 %s"
-#: catalog/objectaddress.c:3256
+#: catalog/objectaddress.c:3630
#, c-format
msgid "index %s"
msgstr "索引 %s"
-#: catalog/objectaddress.c:3260
+#: catalog/objectaddress.c:3634
#, c-format
msgid "sequence %s"
msgstr "序列 %s"
-#: catalog/objectaddress.c:3264
+#: catalog/objectaddress.c:3638
#, c-format
msgid "toast table %s"
msgstr "toast 表 %s"
-#: catalog/objectaddress.c:3268
+#: catalog/objectaddress.c:3642
#, c-format
msgid "view %s"
msgstr "视图 %s"
-#: catalog/objectaddress.c:3272
+#: catalog/objectaddress.c:3646
#, c-format
msgid "materialized view %s"
msgstr "物化视图 %s"
-#: catalog/objectaddress.c:3276
+#: catalog/objectaddress.c:3650
#, c-format
msgid "composite type %s"
msgstr "复合类型 %s"
-#: catalog/objectaddress.c:3280
+#: catalog/objectaddress.c:3654
#, c-format
msgid "foreign table %s"
msgstr "外部表 %s"
-#: catalog/objectaddress.c:3285
+#: catalog/objectaddress.c:3659
#, c-format
msgid "relation %s"
msgstr "关系 %s"
-#: catalog/objectaddress.c:3322
+#: catalog/objectaddress.c:3696
#, c-format
msgid "operator family %s for access method %s"
msgstr "访问方法 %2$s 的操作符类 %1$s"
+#: catalog/partition.c:180 commands/analyze.c:1514 commands/indexcmds.c:928
+#: commands/tablecmds.c:944 commands/tablecmds.c:7897 commands/tablecmds.c:9690
+#: commands/tablecmds.c:14985 commands/tablecmds.c:15514
+#: executor/execExprInterp.c:3275 executor/execMain.c:1940
+#: executor/execMain.c:2019 executor/execMain.c:2067 executor/execMain.c:2173
+#: executor/execPartition.c:462 executor/execPartition.c:522
+#: executor/execPartition.c:638 executor/execPartition.c:741
+#: executor/execPartition.c:812 executor/execPartition.c:1010
+#: executor/nodeModifyTable.c:1859
+msgid "could not convert row type"
+msgstr "无法转换记录类型"
+
#: catalog/pg_aggregate.c:126
#, c-format
msgid "aggregates cannot have more than %d argument"
#: catalog/pg_aggregate.c:150 catalog/pg_aggregate.c:160
#, c-format
-msgid ""
-"An aggregate using a polymorphic transition type must have at least one "
-"polymorphic argument."
+msgid "An aggregate using a polymorphic transition type must have at least one polymorphic argument."
msgstr "使用多态转换类型的聚合函数必须至少有一个多态的参数"
#: catalog/pg_aggregate.c:173
#: catalog/pg_aggregate.c:199
#, c-format
-msgid ""
-"a hypothetical-set aggregate must have direct arguments matching its "
-"aggregated arguments"
+msgid "a hypothetical-set aggregate must have direct arguments matching its aggregated arguments"
msgstr "一个判定集聚集的直接参数必须与它的聚集参数相匹配"
#: catalog/pg_aggregate.c:246 catalog/pg_aggregate.c:290
#: catalog/pg_aggregate.c:266 catalog/pg_aggregate.c:309
#, c-format
-msgid ""
-"must not omit initial value when transition function is strict and "
-"transition type is not compatible with input type"
+msgid "must not omit initial value when transition function is strict and transition type is not compatible with input type"
msgstr "当转换函数是受限制的并且转换类型与输入类型不兼容时,不能忽略初始化值"
#: catalog/pg_aggregate.c:335
msgid "return type of inverse transition function %s is not %s"
msgstr "逆向转换函数的返回类型 %s 不是 %s"
-#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:2305
+#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:2838
#, c-format
-msgid ""
-"strictness of aggregate's forward and inverse transition functions must match"
+msgid "strictness of aggregate's forward and inverse transition functions must match"
msgstr "聚集函数的正向和逆向转换函数必须匹配"
-#: catalog/pg_aggregate.c:396 catalog/pg_aggregate.c:547
+#: catalog/pg_aggregate.c:396 catalog/pg_aggregate.c:549
#, c-format
msgid "final function with extra arguments must not be declared STRICT"
msgstr "带参数的终止函数不能定义为STRICT"
-#: catalog/pg_aggregate.c:426
+#: catalog/pg_aggregate.c:427
#, c-format
-#| msgid "return type of transition function %s is not %s"
msgid "return type of combine function %s is not %s"
msgstr "组合函数 %s 的返回类型不是 %s"
-#: catalog/pg_aggregate.c:437
+#: catalog/pg_aggregate.c:439 executor/nodeAgg.c:2947
#, c-format
-#| msgid "final function with extra arguments must not be declared STRICT"
-msgid ""
-"combine function with \"%s\" transition type must not be declared STRICT"
-msgstr "带有 \"%s\" 转移类型的组合函数不能被声明为 STRICT"
+msgid "combine function with transition type %s must not be declared STRICT"
+msgstr "转换类型为%s的组合函数不能声明为STRICT"
-#: catalog/pg_aggregate.c:457
+#: catalog/pg_aggregate.c:458
#, c-format
-#| msgid "return type of transition function %s is not %s"
msgid "return type of serialization function %s is not %s"
msgstr "序列化函数 %s 的返回类型不是 %s"
-#: catalog/pg_aggregate.c:477
+#: catalog/pg_aggregate.c:479
#, c-format
-#| msgid "return type of transition function %s is not %s"
msgid "return type of deserialization function %s is not %s"
msgstr "反序列化函数 %s 的返回类型不是 %s"
-#: catalog/pg_aggregate.c:493 catalog/pg_proc.c:246 catalog/pg_proc.c:253
+#: catalog/pg_aggregate.c:495 catalog/pg_proc.c:240 catalog/pg_proc.c:247
#, c-format
msgid "cannot determine result data type"
msgstr "无法确定结构数据类型"
-#: catalog/pg_aggregate.c:494
+#: catalog/pg_aggregate.c:496
#, c-format
-msgid ""
-"An aggregate returning a polymorphic type must have at least one polymorphic "
-"argument."
+msgid "An aggregate returning a polymorphic type must have at least one polymorphic argument."
msgstr "使用多态类型的聚合函数必须至少有一个多态的参数"
-#: catalog/pg_aggregate.c:506 catalog/pg_proc.c:259
+#: catalog/pg_aggregate.c:508 catalog/pg_proc.c:253
#, c-format
msgid "unsafe use of pseudo-type \"internal\""
msgstr "使用伪类型\"internal\"的方式不安全"
-#: catalog/pg_aggregate.c:507 catalog/pg_proc.c:260
+#: catalog/pg_aggregate.c:509 catalog/pg_proc.c:254
#, c-format
-msgid ""
-"A function returning \"internal\" must have at least one \"internal\" "
-"argument."
+msgid "A function returning \"internal\" must have at least one \"internal\" argument."
msgstr "返回\"internal\"类型结果的函数必须至少有一个\"internal\" 类型的参数"
-#: catalog/pg_aggregate.c:560
+#: catalog/pg_aggregate.c:562
#, c-format
-msgid ""
-"moving-aggregate implementation returns type %s, but plain implementation "
-"returns type %s"
+msgid "moving-aggregate implementation returns type %s, but plain implementation returns type %s"
msgstr "moving-aggregate的实现返回类型为%s, 但是普通的实现返回类型为%s"
-#: catalog/pg_aggregate.c:571
+#: catalog/pg_aggregate.c:573
#, c-format
msgid "sort operator can only be specified for single-argument aggregates"
msgstr "只能为单一参数的聚合函数而定义排序操作符."
-#: catalog/pg_aggregate.c:816 commands/typecmds.c:1705
-#: commands/typecmds.c:1756 commands/typecmds.c:1787 commands/typecmds.c:1810
-#: commands/typecmds.c:1831 commands/typecmds.c:1858 commands/typecmds.c:1885
-#: commands/typecmds.c:1962 commands/typecmds.c:2004 parser/parse_func.c:364
-#: parser/parse_func.c:393 parser/parse_func.c:418 parser/parse_func.c:432
-#: parser/parse_func.c:507 parser/parse_func.c:518 parser/parse_func.c:1921
+#: catalog/pg_aggregate.c:819 commands/typecmds.c:1766 commands/typecmds.c:1817
+#: commands/typecmds.c:1848 commands/typecmds.c:1871 commands/typecmds.c:1892
+#: commands/typecmds.c:1919 commands/typecmds.c:1946 commands/typecmds.c:2023
+#: commands/typecmds.c:2065 parser/parse_func.c:408 parser/parse_func.c:437
+#: parser/parse_func.c:462 parser/parse_func.c:476 parser/parse_func.c:596
+#: parser/parse_func.c:616 parser/parse_func.c:2086
#, c-format
msgid "function %s does not exist"
msgstr "函数 %s 不存在"
-#: catalog/pg_aggregate.c:822
+#: catalog/pg_aggregate.c:825
#, c-format
msgid "function %s returns a set"
msgstr "函数 %s 返回一个组合"
-#: catalog/pg_aggregate.c:837
+#: catalog/pg_aggregate.c:840
#, c-format
msgid "function %s must accept VARIADIC ANY to be used in this aggregate"
msgstr "函数%s必须接受VARIADIC ANY类型,用于聚集函数中"
-#: catalog/pg_aggregate.c:861
+#: catalog/pg_aggregate.c:864
#, c-format
msgid "function %s requires run-time type coercion"
msgstr "函数 %s 需要运行时类型强制"
-#: catalog/pg_collation.c:77
+#: catalog/pg_collation.c:92 catalog/pg_collation.c:139
#, c-format
-msgid "collation \"%s\" for encoding \"%s\" already exists"
-msgstr "编码 \"%2$s\" 的排序规则 \"%1$s\" 已经存在"
+msgid "collation \"%s\" already exists, skipping"
+msgstr "排序规则 \"%s\" 已经存在, 跳过"
-#: catalog/pg_collation.c:91
+#: catalog/pg_collation.c:94
+#, c-format
+msgid "collation \"%s\" for encoding \"%s\" already exists, skipping"
+msgstr "编码\"%2$s\"的排序规则\"%1$s\"已经存在,跳过"
+
+#: catalog/pg_collation.c:102 catalog/pg_collation.c:146
#, c-format
msgid "collation \"%s\" already exists"
msgstr "排序规则 \"%s\" 已经存在"
-#: catalog/pg_constraint.c:663
+#: catalog/pg_collation.c:104
#, c-format
-msgid "constraint \"%s\" for domain %s already exists"
-msgstr "域 %2$s 的约束 \"%1$s\" 已经存在"
+msgid "collation \"%s\" for encoding \"%s\" already exists"
+msgstr "编码 \"%2$s\" 的排序规则 \"%1$s\" 已经存在"
-#: catalog/pg_constraint.c:797
+#: catalog/pg_constraint.c:687
#, c-format
-msgid "table \"%s\" has multiple constraints named \"%s\""
-msgstr "表 \"%s\" 有多个名为 \"%s\" 的约束"
+msgid "constraint \"%s\" for domain %s already exists"
+msgstr "域 %2$s 的约束 \"%1$s\" 已经存在"
-#: catalog/pg_constraint.c:809
+#: catalog/pg_constraint.c:874 catalog/pg_constraint.c:967
#, c-format
msgid "constraint \"%s\" for table \"%s\" does not exist"
msgstr "表 \"%2$s\" 的 \"%1$s\" 约束不存在"
-#: catalog/pg_constraint.c:855
+#: catalog/pg_constraint.c:1056
#, c-format
-msgid "domain \"%s\" has multiple constraints named \"%s\""
-msgstr "域 \"%s\" 有多个名为 \"%s\" 的约束"
+msgid "constraint \"%s\" for domain %s does not exist"
+msgstr "域 %2$s 的 \"%1$s\" 约束不存在"
-#: catalog/pg_constraint.c:867
-#, c-format
-msgid "constraint \"%s\" for domain \"%s\" does not exist"
-msgstr "域 \"%2$s\" 的 \"%1$s\" 约束不存在"
-
-#: catalog/pg_conversion.c:66
+#: catalog/pg_conversion.c:65
#, c-format
msgid "conversion \"%s\" already exists"
msgstr "编码转换 \"%s\" 已经存在"
-#: catalog/pg_conversion.c:79
+#: catalog/pg_conversion.c:78
#, c-format
msgid "default conversion for %s to %s already exists"
msgstr "默认的 %s 到 %s 的转换已经存在"
-#: catalog/pg_depend.c:165 commands/extension.c:3028
+#: catalog/pg_depend.c:163 commands/extension.c:3225
#, c-format
msgid "%s is already a member of extension \"%s\""
msgstr "\"%s\" 已经是扩展\"%s\"的成员"
-#: catalog/pg_depend.c:324
+#: catalog/pg_depend.c:322
#, c-format
msgid "cannot remove dependency on %s because it is a system object"
msgstr "无法删除在%s上的依赖关系,因为它是一个系统对象"
-#: catalog/pg_enum.c:115 catalog/pg_enum.c:202
+#: catalog/pg_enum.c:115 catalog/pg_enum.c:201 catalog/pg_enum.c:488
#, c-format
msgid "invalid enum label \"%s\""
msgstr "无效的枚举类型标签 \"%s\""
-#: catalog/pg_enum.c:116 catalog/pg_enum.c:203
+#: catalog/pg_enum.c:116 catalog/pg_enum.c:202 catalog/pg_enum.c:489
#, c-format
msgid "Labels must be %d characters or less."
msgstr "标签必需为 %d 个字符或更少"
-#: catalog/pg_enum.c:231
+#: catalog/pg_enum.c:230
#, c-format
msgid "enum label \"%s\" already exists, skipping"
msgstr "枚举标签 \"%s\" 已经存在, 跳过"
-#: catalog/pg_enum.c:238
+#: catalog/pg_enum.c:237 catalog/pg_enum.c:532
#, c-format
msgid "enum label \"%s\" already exists"
msgstr "枚举标签 \"%s\" 已经存在"
-#: catalog/pg_enum.c:293
+#: catalog/pg_enum.c:292 catalog/pg_enum.c:527
#, c-format
msgid "\"%s\" is not an existing enum label"
msgstr "枚举标签\"%s\" 不存在"
-#: catalog/pg_enum.c:349
+#: catalog/pg_enum.c:350
#, c-format
msgid "pg_enum OID value not set when in binary upgrade mode"
msgstr "当处于二进制升级模式时没有设置pg_enum OID值"
-#: catalog/pg_enum.c:359
+#: catalog/pg_enum.c:360
#, c-format
msgid "ALTER TYPE ADD BEFORE/AFTER is incompatible with binary upgrade"
msgstr "ALTER TYPE ADD BEFORE/AFTER与二进制升级不兼容"
-#: catalog/pg_namespace.c:61 commands/schemacmds.c:250
+#: catalog/pg_namespace.c:63 commands/schemacmds.c:264
#, c-format
msgid "schema \"%s\" already exists"
msgstr "模式 \"%s\" 已经存在"
-#: catalog/pg_operator.c:219 catalog/pg_operator.c:360
+#: catalog/pg_operator.c:218 catalog/pg_operator.c:357
#, c-format
msgid "\"%s\" is not a valid operator name"
msgstr "\"%s\" 不是一个有效的操作符名称"
-#: catalog/pg_operator.c:369
+#: catalog/pg_operator.c:366
#, c-format
msgid "only binary operators can have commutators"
msgstr "只有二进制操作符能有交换 (commutators)"
-#: catalog/pg_operator.c:373 commands/operatorcmds.c:485
+#: catalog/pg_operator.c:370 commands/operatorcmds.c:485
#, c-format
msgid "only binary operators can have join selectivity"
msgstr "只有二进制操作符能有可选择性联合"
-#: catalog/pg_operator.c:377
+#: catalog/pg_operator.c:374
#, c-format
msgid "only binary operators can merge join"
msgstr "只有二进制操作符可以合并联合"
-#: catalog/pg_operator.c:381
+#: catalog/pg_operator.c:378
#, c-format
msgid "only binary operators can hash"
msgstr "只有二进制操作符可以散列"
-#: catalog/pg_operator.c:392
+#: catalog/pg_operator.c:389
#, c-format
msgid "only boolean operators can have negators"
msgstr "只有布尔类型的操作符能够具有负号."
-#: catalog/pg_operator.c:396 commands/operatorcmds.c:493
+#: catalog/pg_operator.c:393 commands/operatorcmds.c:493
#, c-format
msgid "only boolean operators can have restriction selectivity"
msgstr "只有布尔类型操作能够具有限制选择性"
-#: catalog/pg_operator.c:400 commands/operatorcmds.c:497
+#: catalog/pg_operator.c:397 commands/operatorcmds.c:497
#, c-format
msgid "only boolean operators can have join selectivity"
msgstr "只有布尔类型操作能够具有连接选择性"
-#: catalog/pg_operator.c:404
+#: catalog/pg_operator.c:401
#, c-format
msgid "only boolean operators can merge join"
msgstr "只有布尔类型操作符可以进行合并联合操作"
-#: catalog/pg_operator.c:408
+#: catalog/pg_operator.c:405
#, c-format
msgid "only boolean operators can hash"
msgstr "只有布尔操作符可以进行散列操作"
-#: catalog/pg_operator.c:420
+#: catalog/pg_operator.c:417
#, c-format
msgid "operator %s already exists"
msgstr "操作符 %s 已经存在"
-#: catalog/pg_operator.c:617
+#: catalog/pg_operator.c:611
#, c-format
msgid "operator cannot be its own negator or sort operator"
msgstr "操作符不能否定自己或者排序分类操作符"
-#: catalog/pg_proc.c:134 parser/parse_func.c:1945 parser/parse_func.c:1985
+#: catalog/pg_proc.c:128 parser/parse_func.c:2122
#, c-format
msgid "functions cannot have more than %d argument"
msgid_plural "functions cannot have more than %d arguments"
msgstr[0] "函数的参数不能多于%d个"
-#: catalog/pg_proc.c:247
+#: catalog/pg_proc.c:241
#, c-format
-msgid ""
-"A function returning a polymorphic type must have at least one polymorphic "
-"argument."
+msgid "A function returning a polymorphic type must have at least one polymorphic argument."
msgstr "返回一个多态类型的函数必须至少有一个多态参数"
-#: catalog/pg_proc.c:254
+#: catalog/pg_proc.c:248
#, c-format
-msgid ""
-"A function returning \"anyrange\" must have at least one \"anyrange\" "
-"argument."
+msgid "A function returning \"anyrange\" must have at least one \"anyrange\" argument."
msgstr "返回\"anyrange\"类型结果的函数必须至少有一个\"anyrange\" 类型的参数"
-#: catalog/pg_proc.c:272
-#, c-format
-msgid "\"%s\" is already an attribute of type %s"
-msgstr "\"%s\" 已经是类型 %s 的一个属性"
-
-#: catalog/pg_proc.c:403
+#: catalog/pg_proc.c:383
#, c-format
msgid "function \"%s\" already exists with same argument types"
msgstr "带相同参数类型的函数 \"%s\" 已经存在"
-#: catalog/pg_proc.c:417 catalog/pg_proc.c:440
+#: catalog/pg_proc.c:393
+#, c-format
+msgid "cannot change routine kind"
+msgstr "无法改变常规种类"
+
+#: catalog/pg_proc.c:395
+#, c-format
+msgid "\"%s\" is an aggregate function."
+msgstr "\"%s\" 是一个聚合函数"
+
+#: catalog/pg_proc.c:397
+#, c-format
+msgid "\"%s\" is a function."
+msgstr "\"%s\" 是一个函数"
+
+#: catalog/pg_proc.c:399
+#, c-format
+msgid "\"%s\" is a procedure."
+msgstr "\"%s\" 是一个程序"
+
+#: catalog/pg_proc.c:401
+#, c-format
+msgid "\"%s\" is a window function."
+msgstr "\"%s\"是一个窗口函数."
+
+#: catalog/pg_proc.c:419
+#, c-format
+msgid "cannot change whether a procedure has output parameters"
+msgstr "无法更改过程是否具有输出参数"
+
+#: catalog/pg_proc.c:420 catalog/pg_proc.c:446
#, c-format
msgid "cannot change return type of existing function"
msgstr "不能改变已经存在的函数的返回值类型"
-#: catalog/pg_proc.c:418 catalog/pg_proc.c:442 catalog/pg_proc.c:485
-#: catalog/pg_proc.c:509 catalog/pg_proc.c:536
+#. translator: first %s is DROP FUNCTION or DROP PROCEDURE
+#: catalog/pg_proc.c:422 catalog/pg_proc.c:449 catalog/pg_proc.c:494
+#: catalog/pg_proc.c:520 catalog/pg_proc.c:548
#, c-format
-msgid "Use DROP FUNCTION %s first."
-msgstr "请先使用 DROP FUNCTION %s."
+msgid "Use %s %s first."
+msgstr "请先使用 %s %s."
-#: catalog/pg_proc.c:441
+#: catalog/pg_proc.c:447
#, c-format
msgid "Row type defined by OUT parameters is different."
msgstr "由OUT模式参数定义的记录类型不同"
-#: catalog/pg_proc.c:483
+#: catalog/pg_proc.c:491
#, c-format
msgid "cannot change name of input parameter \"%s\""
msgstr "无法改变输入参数\"%s\"的名称"
-#: catalog/pg_proc.c:508
+#: catalog/pg_proc.c:518
#, c-format
msgid "cannot remove parameter defaults from existing function"
msgstr "不能从已存在的函数种删除参数缺正值"
-#: catalog/pg_proc.c:535
+#: catalog/pg_proc.c:546
#, c-format
msgid "cannot change data type of existing parameter default value"
msgstr "不能改变已经存在参数缺省值的数据类型"
-#: catalog/pg_proc.c:548
-#, c-format
-msgid "function \"%s\" is an aggregate function"
-msgstr "函数\"%s\" 是一个聚合函数"
-
-#: catalog/pg_proc.c:553
-#, c-format
-msgid "function \"%s\" is not an aggregate function"
-msgstr "函数 \"%s\" 不是一个聚合函数"
-
-#: catalog/pg_proc.c:561
-#, c-format
-msgid "function \"%s\" is a window function"
-msgstr "函数\"%s\"是一个窗口函数"
-
-#: catalog/pg_proc.c:566
-#, c-format
-msgid "function \"%s\" is not a window function"
-msgstr "函数 \"%s\" 不是一个窗口函数"
-
-#: catalog/pg_proc.c:774
+#: catalog/pg_proc.c:749
#, c-format
msgid "there is no built-in function named \"%s\""
msgstr "没有名为 \"%s\" 的内建函数"
-#: catalog/pg_proc.c:872
+#: catalog/pg_proc.c:847
#, c-format
msgid "SQL functions cannot return type %s"
msgstr "SQL 函数无法返回 %s 类型"
-#: catalog/pg_proc.c:887
+#: catalog/pg_proc.c:862
#, c-format
msgid "SQL functions cannot have arguments of type %s"
msgstr "SQL 函数不能有 %s 类型的参数"
-#: catalog/pg_proc.c:973 executor/functions.c:1424
+#: catalog/pg_proc.c:950 executor/functions.c:1434
#, c-format
msgid "SQL function \"%s\""
msgstr "SQL 函数 \"%s\""
-#: catalog/pg_shdepend.c:694
+#: catalog/pg_publication.c:57 commands/trigger.c:235 commands/trigger.c:253
+#, c-format
+msgid "\"%s\" is a partitioned table"
+msgstr "\"%s\" 是一个分区表"
+
+#: catalog/pg_publication.c:59
+#, c-format
+msgid "Adding partitioned tables to publications is not supported."
+msgstr "不支持将分区表添加到发布中."
+
+#: catalog/pg_publication.c:60
+#, c-format
+msgid "You can add the table partitions individually."
+msgstr "可以单独添加表分区."
+
+#: catalog/pg_publication.c:68
+#, c-format
+msgid "Only tables can be added to publications."
+msgstr "只有表可以添加到发布中."
+
+#: catalog/pg_publication.c:74
+#, c-format
+msgid "\"%s\" is a system table"
+msgstr "\"%s\" 是一个系统表"
+
+#: catalog/pg_publication.c:76
+#, c-format
+msgid "System tables cannot be added to publications."
+msgstr "无法将系统表添加到发布中."
+
+#: catalog/pg_publication.c:82
+#, c-format
+msgid "table \"%s\" cannot be replicated"
+msgstr "无法复制表\"%s\""
+
+#: catalog/pg_publication.c:84
+#, c-format
+msgid "Temporary and unlogged relations cannot be replicated."
+msgstr "无法复制临时关系和未加载关系."
+
+#: catalog/pg_publication.c:175
+#, c-format
+msgid "relation \"%s\" is already member of publication \"%s\""
+msgstr "关系\"%s\"已经是发布 \"%s\"的成员"
+
+#: catalog/pg_publication.c:403 catalog/pg_publication.c:424
+#: commands/publicationcmds.c:415 commands/publicationcmds.c:716
+#, c-format
+msgid "publication \"%s\" does not exist"
+msgstr "发布 \"%s\" 不存在"
+
+#: catalog/pg_shdepend.c:692
#, c-format
msgid ""
"\n"
"\n"
"对象在 %d 个其它数据库中"
-#: catalog/pg_shdepend.c:1006
+#: catalog/pg_shdepend.c:998
#, c-format
msgid "role %u was concurrently dropped"
msgstr "角色%u被同时删除"
-#: catalog/pg_shdepend.c:1025
+#: catalog/pg_shdepend.c:1017
#, c-format
msgid "tablespace %u was concurrently dropped"
msgstr "表空间 %u 被同时删除"
-#: catalog/pg_shdepend.c:1040
+#: catalog/pg_shdepend.c:1032
#, c-format
msgid "database %u was concurrently dropped"
msgstr "数据库 %u 被同时删除"
-#: catalog/pg_shdepend.c:1085
+#: catalog/pg_shdepend.c:1077
#, c-format
msgid "owner of %s"
msgstr "%s的属主"
-#: catalog/pg_shdepend.c:1087
+#: catalog/pg_shdepend.c:1079
#, c-format
msgid "privileges for %s"
msgstr "%s的权限"
-#: catalog/pg_shdepend.c:1089
+#: catalog/pg_shdepend.c:1081
#, c-format
msgid "target of %s"
msgstr "%s的目标"
#. translator: %s will always be "database %s"
-#: catalog/pg_shdepend.c:1097
+#: catalog/pg_shdepend.c:1089
#, c-format
msgid "%d object in %s"
msgid_plural "%d objects in %s"
msgstr[0] "在%2$s中的%1$d个对象"
-#: catalog/pg_shdepend.c:1208
+#: catalog/pg_shdepend.c:1200
#, c-format
-msgid ""
-"cannot drop objects owned by %s because they are required by the database "
-"system"
+msgid "cannot drop objects owned by %s because they are required by the database system"
msgstr "无法删除由%s所拥有的对象, 因为数据库系统需要这些对象"
-#: catalog/pg_shdepend.c:1323
+#: catalog/pg_shdepend.c:1315
#, c-format
-msgid ""
-"cannot reassign ownership of objects owned by %s because they are required "
-"by the database system"
+msgid "cannot reassign ownership of objects owned by %s because they are required by the database system"
msgstr "无法再分配由%s所拥有的对象, 因为数据库系统需要这些对象"
-#: catalog/pg_type.c:136 catalog/pg_type.c:454
+#: catalog/pg_subscription.c:176 commands/subscriptioncmds.c:633
+#: commands/subscriptioncmds.c:843 commands/subscriptioncmds.c:1067
+#, c-format
+msgid "subscription \"%s\" does not exist"
+msgstr "订阅\"%s\"不存在"
+
+#: catalog/pg_type.c:135 catalog/pg_type.c:459
#, c-format
msgid "pg_type OID value not set when in binary upgrade mode"
msgstr "当处于二进制升级模式时没有设置pg_type OID值"
-#: catalog/pg_type.c:253
+#: catalog/pg_type.c:241
#, c-format
msgid "invalid type internal size %d"
msgstr "无效类型内部大小 %d"
-#: catalog/pg_type.c:269 catalog/pg_type.c:277 catalog/pg_type.c:285
-#: catalog/pg_type.c:294
+#: catalog/pg_type.c:257 catalog/pg_type.c:265 catalog/pg_type.c:273
+#: catalog/pg_type.c:282
#, c-format
msgid "alignment \"%c\" is invalid for passed-by-value type of size %d"
msgstr "对齐方式 \"%c\"对于大小为%d的passed-by-value 类型是无效的"
-#: catalog/pg_type.c:301
+#: catalog/pg_type.c:289
#, c-format
msgid "internal size %d is invalid for passed-by-value type"
msgstr "internal 大小 %d 对于 passed-by-value 类型是无效的"
-#: catalog/pg_type.c:310 catalog/pg_type.c:316
+#: catalog/pg_type.c:298 catalog/pg_type.c:304
#, c-format
msgid "alignment \"%c\" is invalid for variable-length type"
msgstr "对齐方式 \"%c\"对于大小为可变长度的类型是无效的"
-#: catalog/pg_type.c:324
+#: catalog/pg_type.c:312
#, c-format
msgid "fixed-size types must have storage PLAIN"
msgstr "固定大小类型必需有明确的存储"
-#: catalog/pg_type.c:789
+#: catalog/pg_type.c:801
#, c-format
msgid "could not form array type name for type \"%s\""
msgstr "无法为类型\"%s\"来形成数组类型名称"
-#: catalog/toasting.c:105 commands/indexcmds.c:389 commands/tablecmds.c:4360
-#: commands/tablecmds.c:11902
+#: catalog/toasting.c:105 commands/indexcmds.c:443 commands/tablecmds.c:5016
+#: commands/tablecmds.c:13979
#, c-format
msgid "\"%s\" is not a table or materialized view"
msgstr "\"%s\" 不是一个表或物化视图"
msgid "shared tables cannot be toasted after initdb"
msgstr "在 initdb 之后, 不可以 toasted 共享表"
-#: commands/aggregatecmds.c:161
+#: commands/aggregatecmds.c:166
#, c-format
msgid "only ordered-set aggregates can be hypothetical"
msgstr "只有有序集聚焦函数可用被用于判定"
-#: commands/aggregatecmds.c:188
+#: commands/aggregatecmds.c:191
#, c-format
msgid "aggregate attribute \"%s\" not recognized"
msgstr "聚集属性 \"%s\" 不被认可"
-#: commands/aggregatecmds.c:198
+#: commands/aggregatecmds.c:201
#, c-format
msgid "aggregate stype must be specified"
msgstr "聚集 stype 必须指定"
-#: commands/aggregatecmds.c:202
+#: commands/aggregatecmds.c:205
#, c-format
msgid "aggregate sfunc must be specified"
msgstr "聚集 sfunc 必须指定"
-#: commands/aggregatecmds.c:214
+#: commands/aggregatecmds.c:217
#, c-format
msgid "aggregate msfunc must be specified when mstype is specified"
msgstr "当mstype指定了的时候, 聚集 sfunc 必须指定"
-#: commands/aggregatecmds.c:218
+#: commands/aggregatecmds.c:221
#, c-format
msgid "aggregate minvfunc must be specified when mstype is specified"
msgstr "当mstype指定了的时候, 聚集 minvfunc 必须指定"
-#: commands/aggregatecmds.c:225
+#: commands/aggregatecmds.c:228
#, c-format
msgid "aggregate msfunc must not be specified without mstype"
msgstr "当mstype没被指定时, 聚集 msfunc 也不能指定"
-#: commands/aggregatecmds.c:229
+#: commands/aggregatecmds.c:232
#, c-format
msgid "aggregate minvfunc must not be specified without mstype"
msgstr "没有mstype, 就不能指定聚集minvfunc"
-#: commands/aggregatecmds.c:233
+#: commands/aggregatecmds.c:236
#, c-format
msgid "aggregate mfinalfunc must not be specified without mstype"
msgstr "没有mstype, 就不能指定聚集 mfinalfunc"
-#: commands/aggregatecmds.c:237
+#: commands/aggregatecmds.c:240
#, c-format
msgid "aggregate msspace must not be specified without mstype"
msgstr "没有指定mstype,就不能指定聚集msspace"
-#: commands/aggregatecmds.c:241
+#: commands/aggregatecmds.c:244
#, c-format
msgid "aggregate minitcond must not be specified without mstype"
msgstr "没有指定mstype,就不能指定minitcond"
-#: commands/aggregatecmds.c:261
+#: commands/aggregatecmds.c:273
#, c-format
msgid "aggregate input type must be specified"
msgstr "必须指定聚合函数的输入参数类型"
-#: commands/aggregatecmds.c:291
+#: commands/aggregatecmds.c:303
#, c-format
msgid "basetype is redundant with aggregate input type specification"
msgstr "如果带有聚合函数输入类型定义,那么基类型定义就是冗余的."
-#: commands/aggregatecmds.c:332 commands/aggregatecmds.c:421
+#: commands/aggregatecmds.c:344 commands/aggregatecmds.c:385
#, c-format
msgid "aggregate transition data type cannot be %s"
msgstr "聚集转换数据类型不能为 %s"
-#: commands/aggregatecmds.c:347
-#, c-format
-msgid ""
-"a serialization type must only be specified when the aggregate transition "
-"data type is \"%s\""
-msgstr "只有当聚集转移数据类型是 \"%s\" 时,才必须指定一个序列化类型"
-
#: commands/aggregatecmds.c:356
#, c-format
-#| msgid "aggregate transition data type cannot be %s"
-msgid "aggregate serialization data type cannot be %s"
-msgstr "聚集序列化数据类型不能是 %s"
-
-#: commands/aggregatecmds.c:369
-#, c-format
-#| msgid "aggregate transition data type cannot be %s"
-msgid "aggregate serialization type cannot be \"%s\""
-msgstr "聚集序列化类型不能是 %s"
-
-#: commands/aggregatecmds.c:380
-#, c-format
-#| msgid "aggregate minvfunc must be specified when mstype is specified"
-msgid ""
-"aggregate serialization function must be specified when serialization type "
-"is specified"
-msgstr "当序列化类型被指定时必须指定聚集序列化函数"
-
-#: commands/aggregatecmds.c:385
-#, c-format
-#| msgid "aggregate minvfunc must be specified when mstype is specified"
-msgid ""
-"aggregate deserialization function must be specified when serialization type "
-"is specified"
-msgstr "当序列化类型被指定时必须指定聚集反序列化函数"
-
-#: commands/aggregatecmds.c:396
-#, c-format
-msgid "must specify serialization type when specifying serialization function"
-msgstr "在指定序列化函数时必须指定序列化类型"
+msgid "serialization functions may be specified only when the aggregate transition data type is %s"
+msgstr "只有当聚集转移数据类型是%s时,才能指定序列化函数"
-#: commands/aggregatecmds.c:402
+#: commands/aggregatecmds.c:366
#, c-format
-msgid ""
-"must specify serialization type when specifying deserialization function"
-msgstr "在指定反序列化函数时必须指定序列化类型"
+msgid "must specify both or neither of serialization and deserialization functions"
+msgstr "必须同时指定序列化和反序列化函数或两者都不指定"
-#: commands/aggregatecmds.c:467 commands/functioncmds.c:570
+#: commands/aggregatecmds.c:431 commands/functioncmds.c:604
#, c-format
msgid "parameter \"parallel\" must be SAFE, RESTRICTED, or UNSAFE"
msgstr "参数 \"parallel\" 必须为 SAFE、RESTRICTED 或者 UNSAFE"
-#: commands/alter.c:80 commands/event_trigger.c:231
+#: commands/aggregatecmds.c:486
+#, c-format
+msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE"
+msgstr "参数\"%s\"必须为READ_ONLY、SHAREABLE或READ_WRITE"
+
+#: commands/alter.c:84 commands/event_trigger.c:236
#, c-format
msgid "event trigger \"%s\" already exists"
msgstr "事件触发器 \"%s\" 已经存在"
-#: commands/alter.c:83 commands/foreigncmds.c:597
+#: commands/alter.c:87 commands/foreigncmds.c:595
#, c-format
msgid "foreign-data wrapper \"%s\" already exists"
msgstr "外部数据封装器\"%s\"已经存在"
-#: commands/alter.c:86 commands/foreigncmds.c:890
+#: commands/alter.c:90 commands/foreigncmds.c:898
#, c-format
msgid "server \"%s\" already exists"
msgstr "服务器 \"%s\" 已经存在"
-#: commands/alter.c:89 commands/proclang.c:366
+#: commands/alter.c:93 commands/proclang.c:363
#, c-format
msgid "language \"%s\" already exists"
msgstr "语言 \"%s\" 已经存在"
-#: commands/alter.c:112
+#: commands/alter.c:96 commands/publicationcmds.c:176
#, c-format
-msgid "conversion \"%s\" already exists in schema \"%s\""
-msgstr "约束 \"%s\" 已经存在于模式 \"%s\" 中"
+msgid "publication \"%s\" already exists"
+msgstr "发布 \"%s\" 已经存在"
-#: commands/alter.c:116
+#: commands/alter.c:99 commands/subscriptioncmds.c:358
+#, c-format
+msgid "subscription \"%s\" already exists"
+msgstr "订阅 \"%s\" 已经存在"
+
+#: commands/alter.c:122
+#, c-format
+msgid "conversion \"%s\" already exists in schema \"%s\""
+msgstr "约束 \"%s\" 已经存在于模式 \"%s\" 中"
+
+#: commands/alter.c:126
+#, c-format
+msgid "statistics object \"%s\" already exists in schema \"%s\""
+msgstr "在模式\"%2$s\"中已经存在统计信息对象\"%1$s\""
+
+#: commands/alter.c:130
#, c-format
msgid "text search parser \"%s\" already exists in schema \"%s\""
msgstr "文本搜索解析器\"%s\"已存在于方案\"%s\"中"
-#: commands/alter.c:120
+#: commands/alter.c:134
#, c-format
msgid "text search dictionary \"%s\" already exists in schema \"%s\""
msgstr "文本搜索字典\"%s\" 已经存在于方案\"%s\"中"
-#: commands/alter.c:124
+#: commands/alter.c:138
#, c-format
msgid "text search template \"%s\" already exists in schema \"%s\""
msgstr "文本搜索模板\"%s\" 已经存在于方案\"%s\"中"
-#: commands/alter.c:128
+#: commands/alter.c:142
#, c-format
msgid "text search configuration \"%s\" already exists in schema \"%s\""
msgstr "文本搜索配置\"%s\"已存在于方案\"%s\"中"
-#: commands/alter.c:202
+#: commands/alter.c:216
#, c-format
msgid "must be superuser to rename %s"
msgstr "必须为超级用户才能进行重命名\"%s\" "
-#: commands/alter.c:656
+#: commands/alter.c:713
#, c-format
msgid "must be superuser to set schema of %s"
msgstr "只有超级用户能设置%s的模式"
#: commands/amcmds.c:58
#, c-format
-#| msgid "permission denied to create tablespace \"%s\""
msgid "permission denied to create access method \"%s\""
msgstr "权限不允许创建访问方法 \"%s\""
#: commands/amcmds.c:60
#, c-format
-#| msgid "Must be superuser to create a tablespace."
msgid "Must be superuser to create an access method."
msgstr "只有超级用户能创建访问方法。"
#: commands/amcmds.c:68
#, c-format
-#| msgid "access method \"%s\" does not exist"
msgid "access method \"%s\" already exists"
msgstr "访问方法 \"%s\" 已存在"
-#: commands/amcmds.c:124
+#: commands/amcmds.c:123
#, c-format
-#| msgid "must be superuser to drop superusers"
msgid "must be superuser to drop access methods"
msgstr "只有超级用户可以删除访问方法"
-#: commands/amcmds.c:175 commands/indexcmds.c:164 commands/indexcmds.c:495
-#: commands/opclasscmds.c:365 commands/opclasscmds.c:790
+#: commands/amcmds.c:174 commands/indexcmds.c:173 commands/indexcmds.c:583
+#: commands/opclasscmds.c:364 commands/opclasscmds.c:778
#, c-format
msgid "access method \"%s\" does not exist"
msgstr "访问方式 \"%s\" 不存在"
-#: commands/amcmds.c:251
+#: commands/amcmds.c:250
#, c-format
-#| msgid "no function body specified"
msgid "handler function is not specified"
msgstr "没有指定处理器函数"
-#: commands/amcmds.c:263 commands/event_trigger.c:240
-#: commands/foreigncmds.c:489 commands/proclang.c:117 commands/proclang.c:288
-#: commands/trigger.c:441 parser/parse_clause.c:761
+#: commands/amcmds.c:262 commands/event_trigger.c:245
+#: commands/foreigncmds.c:487 commands/proclang.c:116 commands/proclang.c:285
+#: commands/trigger.c:696 parser/parse_clause.c:990
#, c-format
-#| msgid "function %s should return type %s"
msgid "function %s must return type %s"
msgstr "函数 %s 必须返回类型 %s"
-#: commands/analyze.c:145
+#: commands/analyze.c:187
#, c-format
msgid "skipping analyze of \"%s\" --- lock not available"
msgstr "跳过对 \"%s\"的分析 --- 锁无法得到"
-#: commands/analyze.c:162
+#: commands/analyze.c:192
+#, c-format
+msgid "skipping analyze of \"%s\" --- relation no longer exists"
+msgstr "跳过对 \"%s\"的分析 --- 关系不再存在"
+
+#: commands/analyze.c:209
#, c-format
msgid "skipping \"%s\" --- only superuser can analyze it"
msgstr "忽略 \"%s\" --- 只有超级用户能够分析它"
-#: commands/analyze.c:166
+#: commands/analyze.c:213
#, c-format
msgid "skipping \"%s\" --- only superuser or database owner can analyze it"
msgstr "忽略 \"%s\" --- 只有超级用户或数据库的属主能够分析它"
-#: commands/analyze.c:170
+#: commands/analyze.c:217
#, c-format
msgid "skipping \"%s\" --- only table or database owner can analyze it"
msgstr "忽略 \"%s\" --- 只有表或数据库的属主能够分析它"
-#: commands/analyze.c:230
+#: commands/analyze.c:275
#, c-format
msgid "skipping \"%s\" --- cannot analyze this foreign table"
msgstr "忽略 \"%s\" --- 无法分析该外部表"
-#: commands/analyze.c:241
+#: commands/analyze.c:292
#, c-format
msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables"
msgstr "忽略 \"%s\" --- 无法分析非表或特殊的系统表"
-#: commands/analyze.c:320
+#: commands/analyze.c:373
#, c-format
msgid "analyzing \"%s.%s\" inheritance tree"
msgstr "正在分析 \"%s.%s\"继承树"
-#: commands/analyze.c:325
+#: commands/analyze.c:378
#, c-format
msgid "analyzing \"%s.%s\""
msgstr "正在分析 \"%s.%s\""
-#: commands/analyze.c:651
+#: commands/analyze.c:438
+#, c-format
+msgid "column \"%s\" of relation \"%s\" appears more than once"
+msgstr "关系 \"%2$s\" 的 \"%1$s\" 字段出现多次"
+
+#: commands/analyze.c:718
#, c-format
msgid "automatic analyze of table \"%s.%s.%s\" system usage: %s"
msgstr "自动分析表 \"%s.%s.%s\"的系统使用情况: %s"
-#: commands/analyze.c:1207
+#: commands/analyze.c:1288
#, c-format
-msgid ""
-"\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead "
-"rows; %d rows in sample, %.0f estimated total rows"
-msgstr ""
-"\"%1$s\": 已经扫描了%3$u页的%2$d, 包含%4$.0f可用的记录和%5$.0f不能用的记录; "
-"在示例中有%6$d条记录,估算所有记录为%7$.0f ."
+msgid "\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead rows; %d rows in sample, %.0f estimated total rows"
+msgstr "\"%1$s\": 已经扫描了%3$u页的%2$d, 包含%4$.0f可用的记录和%5$.0f不能用的记录; 在示例中有%6$d条记录,估算所有记录为%7$.0f ."
-#: commands/analyze.c:1286
+#: commands/analyze.c:1368
#, c-format
-msgid ""
-"skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree "
-"contains no child tables"
+msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no child tables"
msgstr "跳过\"%s.%s\"继承树的分析 --- 这个继承树不包含子表"
-#: commands/analyze.c:1375
+#: commands/analyze.c:1466
#, c-format
-msgid ""
-"skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree "
-"contains no analyzable child tables"
+msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables"
msgstr "跳过\"%s.%s\"继承树的分析 --- 这个继承树包含不可分析的子表"
-#: commands/analyze.c:1423 executor/execQual.c:2922
-msgid "could not convert row type"
-msgstr "无法转换记录类型"
-
#: commands/async.c:558
#, c-format
msgid "channel name cannot be empty"
#: commands/async.c:756
#, c-format
-msgid ""
-"cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY"
+msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY"
msgstr "无法在一个已经执行了LISTEN或UNLISTEN、NOTIFY操作的事务上执行PREPARE"
#: commands/async.c:859
msgid "too many notifications in the NOTIFY queue"
msgstr "在NOTIFY队列中的通知太多了"
-#: commands/async.c:1489
+#: commands/async.c:1491
#, c-format
msgid "NOTIFY queue is %.0f%% full"
msgstr "NOTIFY队列达到了%.0f%%的容量"
-#: commands/async.c:1491
+#: commands/async.c:1493
#, c-format
-msgid ""
-"The server process with PID %d is among those with the oldest transactions."
+msgid "The server process with PID %d is among those with the oldest transactions."
msgstr "带有PID为%d的服务器进程在那些带有最老事务的进程中。"
-#: commands/async.c:1494
+#: commands/async.c:1496
#, c-format
-msgid ""
-"The NOTIFY queue cannot be emptied until that process ends its current "
-"transaction."
+msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction."
msgstr "在进程结束它所处理的当前事务前, NOTIFY队列不能为空."
-#: commands/cluster.c:129 commands/cluster.c:366
+#: commands/cluster.c:129 commands/cluster.c:372
#, c-format
msgid "cannot cluster temporary tables of other sessions"
msgstr "无法为其它会话的临时表建簇"
-#: commands/cluster.c:159
+#: commands/cluster.c:137
+#, c-format
+msgid "cannot cluster a partitioned table"
+msgstr "无法对分区表进行群集"
+
+#: commands/cluster.c:167
#, c-format
msgid "there is no previously clustered index for table \"%s\""
msgstr "在表 \"%s\" 中未找到先前建簇的索引"
-#: commands/cluster.c:173 commands/tablecmds.c:9288 commands/tablecmds.c:11004
+#: commands/cluster.c:181 commands/tablecmds.c:11136 commands/tablecmds.c:13041
#, c-format
msgid "index \"%s\" for table \"%s\" does not exist"
msgstr "表 \"%2$s\" 的 \"%1$s\" 索引不存在"
-#: commands/cluster.c:355
+#: commands/cluster.c:361
#, c-format
msgid "cannot cluster a shared catalog"
msgstr "无法在共享目录视图上进行聚簇操作"
-#: commands/cluster.c:370
+#: commands/cluster.c:376
#, c-format
msgid "cannot vacuum temporary tables of other sessions"
msgstr "无法对其它会话的临时表进行清理操作"
-#: commands/cluster.c:433 commands/tablecmds.c:11014
+#: commands/cluster.c:439 commands/tablecmds.c:13051
#, c-format
msgid "\"%s\" is not an index for table \"%s\""
msgstr "对于表 \"%2$s\" \"%1$s\" 不是一个索引"
-#: commands/cluster.c:441
+#: commands/cluster.c:447
#, c-format
-msgid ""
-"cannot cluster on index \"%s\" because access method does not support "
-"clustering"
+msgid "cannot cluster on index \"%s\" because access method does not support clustering"
msgstr "无法在索引\"%s\"进行聚簇操作,因为访问方法不支持进行聚簇操作"
-#: commands/cluster.c:453
+#: commands/cluster.c:459
#, c-format
msgid "cannot cluster on partial index \"%s\""
msgstr "无法在部分索引 \"%s\"上进行聚簇操作"
-#: commands/cluster.c:467
+#: commands/cluster.c:473
#, c-format
msgid "cannot cluster on invalid index \"%s\""
msgstr "无法在无效索引\"%s\"进行聚簇操作"
-#: commands/cluster.c:920
+#: commands/cluster.c:497
+#, c-format
+msgid "cannot mark index clustered in partitioned table"
+msgstr "无法在分区表中标记聚集索引"
+
+#: commands/cluster.c:938
#, c-format
msgid "clustering \"%s.%s\" using index scan on \"%s\""
msgstr "簇 \"%s.%s\" 正在 \"%s\"进行索引扫描"
-#: commands/cluster.c:926
+#: commands/cluster.c:944
#, c-format
msgid "clustering \"%s.%s\" using sequential scan and sort"
msgstr "簇 \"%s.%s\"正在进行顺序扫描和排序"
-#: commands/cluster.c:931 commands/vacuumlazy.c:476
+#: commands/cluster.c:949 commands/vacuumlazy.c:505
#, c-format
msgid "vacuuming \"%s.%s\""
msgstr "正在清理 (vacuum) \"%s.%s\""
-#: commands/cluster.c:1090
+#: commands/cluster.c:1106
#, c-format
-msgid ""
-"\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
-msgstr ""
-"\"%1$s\": 在%4$u个页中找到%2$.0f个可删除行版本,%3$.0f不可删除的行版本."
+msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
+msgstr "\"%1$s\": 在%4$u个页中找到%2$.0f个可删除行版本,%3$.0f不可删除的行版本."
-#: commands/cluster.c:1094
+#: commands/cluster.c:1110
#, c-format
msgid ""
"%.0f dead row versions cannot be removed yet.\n"
"%.0f 死行版本号仍不能移除.\n"
"%s."
-#: commands/collationcmds.c:80
+#: commands/collationcmds.c:100
#, c-format
msgid "collation attribute \"%s\" not recognized"
msgstr "无法识别排序规则属性 \"%s\""
-#: commands/collationcmds.c:125
+#: commands/collationcmds.c:142
+#, c-format
+msgid "collation \"default\" cannot be copied"
+msgstr "无法复制排序规则\"default\""
+
+#: commands/collationcmds.c:172
+#, c-format
+msgid "unrecognized collation provider: %s"
+msgstr "无法识别的排序规则提供程序: %s"
+
+#: commands/collationcmds.c:181
#, c-format
msgid "parameter \"lc_collate\" must be specified"
msgstr "参数\"lc_collate\" 必须指定"
-#: commands/collationcmds.c:130
+#: commands/collationcmds.c:186
#, c-format
msgid "parameter \"lc_ctype\" must be specified"
msgstr "参数\"lc_ctype\"必须指定"
-#: commands/collationcmds.c:166
+#: commands/collationcmds.c:245
#, c-format
msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\""
msgstr "在模式\"%3$s\"中已经存在对应于编码\"%2$s\"的排序规则\"%1$s\""
-#: commands/collationcmds.c:177
+#: commands/collationcmds.c:256
#, c-format
msgid "collation \"%s\" already exists in schema \"%s\""
msgstr "在模式\"%2$s\"中已经存在排序规则\"%1$s\""
-#: commands/comment.c:62 commands/dbcommands.c:797 commands/dbcommands.c:962
-#: commands/dbcommands.c:1067 commands/dbcommands.c:1257
-#: commands/dbcommands.c:1477 commands/dbcommands.c:1594
-#: commands/dbcommands.c:2011 utils/init/postinit.c:842
-#: utils/init/postinit.c:944 utils/init/postinit.c:961
+#: commands/collationcmds.c:304
+#, c-format
+msgid "changing version from %s to %s"
+msgstr "将版本从%s更改为%s"
+
+#: commands/collationcmds.c:319
+#, c-format
+msgid "version has not changed"
+msgstr "版本未更改"
+
+#: commands/collationcmds.c:450
+#, c-format
+msgid "could not convert locale name \"%s\" to language tag: %s"
+msgstr "无法将区域设置名称\"%s\"转换为语言标记: %s"
+
+#: commands/collationcmds.c:511
+#, c-format
+msgid "must be superuser to import system collations"
+msgstr "必须是超级用户才能导入系统排序规则"
+
+#: commands/collationcmds.c:534 commands/copy.c:1844 commands/copy.c:3181
+#: libpq/be-secure-common.c:80
+#, c-format
+msgid "could not execute command \"%s\": %m"
+msgstr "无法执行命令 \"%s\": %m"
+
+# describe.c:1542
+#: commands/collationcmds.c:665
+#, c-format
+msgid "no usable system locales were found"
+msgstr "没有找到可用的系统本地化名称"
+
+#: commands/comment.c:61 commands/dbcommands.c:808 commands/dbcommands.c:996
+#: commands/dbcommands.c:1100 commands/dbcommands.c:1290
+#: commands/dbcommands.c:1513 commands/dbcommands.c:1627
+#: commands/dbcommands.c:2043 utils/init/postinit.c:853
+#: utils/init/postinit.c:958 utils/init/postinit.c:975
#, c-format
msgid "database \"%s\" does not exist"
msgstr "数据库 \"%s\" 不存在"
-#: commands/comment.c:101 commands/seclabel.c:116 parser/parse_utilcmd.c:768
+#: commands/comment.c:101 commands/seclabel.c:117 parser/parse_utilcmd.c:925
#, c-format
-msgid ""
-"\"%s\" is not a table, view, materialized view, composite type, or foreign "
-"table"
+msgid "\"%s\" is not a table, view, materialized view, composite type, or foreign table"
msgstr "\"%s\" 不是一个表,物化视图,组合类型或者外部表"
-#: commands/constraint.c:60 utils/adt/ri_triggers.c:2717
+#: commands/constraint.c:60 utils/adt/ri_triggers.c:2256
#, c-format
msgid "function \"%s\" was not called by trigger manager"
msgstr "函数 \"%s\" 没有被触发器管理器调用"
-#: commands/constraint.c:67 utils/adt/ri_triggers.c:2726
+#: commands/constraint.c:67 utils/adt/ri_triggers.c:2265
#, c-format
msgid "function \"%s\" must be fired AFTER ROW"
msgstr "函数 \"%s\"必须为AFTER ROW触发"
msgid "function \"%s\" must be fired for INSERT or UPDATE"
msgstr "函数 \"%s\"必须为INSERT或UPDATE操作触发"
-#: commands/conversioncmds.c:67
+#: commands/conversioncmds.c:65
#, c-format
msgid "source encoding \"%s\" does not exist"
msgstr "源编码 \"%s\" 不存在"
-#: commands/conversioncmds.c:74
+#: commands/conversioncmds.c:72
#, c-format
msgid "destination encoding \"%s\" does not exist"
msgstr "目标编码 \"%s\" 不存在"
-#: commands/conversioncmds.c:88
+#: commands/conversioncmds.c:86
#, c-format
-#| msgid "encoding conversion function %s must return type \"void\""
msgid "encoding conversion function %s must return type %s"
msgstr "编码转换函数 %s 必须返回类型 %s"
-#: commands/copy.c:362 commands/copy.c:374 commands/copy.c:408
-#: commands/copy.c:420
+#: commands/copy.c:374 commands/copy.c:408
#, c-format
msgid "COPY BINARY is not supported to stdout or from stdin"
msgstr "COPOY BINARY 不支持输出到标准输出或来自标准输入"
-#: commands/copy.c:520
+#: commands/copy.c:508
#, c-format
msgid "could not write to COPY program: %m"
msgstr "无法写入 COPY 程序: %m"
-#: commands/copy.c:525
+#: commands/copy.c:513
#, c-format
msgid "could not write to COPY file: %m"
msgstr "无法写入 COPY 文件: %m"
-#: commands/copy.c:538
+#: commands/copy.c:526
#, c-format
msgid "connection lost during COPY to stdout"
msgstr "COPY 到标准输出的过程中联接中断"
-#: commands/copy.c:579
+#: commands/copy.c:570
#, c-format
msgid "could not read from COPY file: %m"
msgstr "无法从COPY命令中文件进行读操作: %m"
-#: commands/copy.c:595 commands/copy.c:616 commands/copy.c:620
-#: tcop/postgres.c:341 tcop/postgres.c:377 tcop/postgres.c:404
+#: commands/copy.c:588 commands/copy.c:609 commands/copy.c:613
+#: tcop/postgres.c:348 tcop/postgres.c:384 tcop/postgres.c:411
#, c-format
msgid "unexpected EOF on client connection with an open transaction"
msgstr "在客户端连接上的已打开事务中出现意外 EOF"
-#: commands/copy.c:633
+#: commands/copy.c:626
#, c-format
msgid "COPY from stdin failed: %s"
msgstr "从标准输入上 COPY 失败: %s"
-#: commands/copy.c:649
+#: commands/copy.c:642
#, c-format
msgid "unexpected message type 0x%02X during COPY from stdin"
msgstr "意外的信息类型 0x%02X, 在标准输入上 COPY 的过程中"
-#: commands/copy.c:806
+#: commands/copy.c:808
#, c-format
-msgid "must be superuser to COPY to or from an external program"
-msgstr "å¿\85é¡»æ\88\90为è¶\85级ç\94¨æ\88·才能 COPY 到外部程序或者从外部程序进行COPY"
+msgid "must be superuser or a member of the pg_execute_server_program role to COPY to or from an external program"
+msgstr "å¿\85é¡»æ\98¯è¶\85级ç\94¨æ\88·æ\88\96pg_execute_server_programè§\92è\89²ç\9a\84æ\88\90å\91\98才能 COPY 到外部程序或者从外部程序进行COPY"
-#: commands/copy.c:807 commands/copy.c:813
+#: commands/copy.c:809 commands/copy.c:818 commands/copy.c:825
#, c-format
-msgid ""
-"Anyone can COPY to stdout or from stdin. psql's \\copy command also works "
-"for anyone."
-msgstr ""
-"任何人可以 COPY 到标准输出或来自标准输入的 COPY. 任何人也可以使用 Psql 的 "
-"\\copy 命令."
+msgid "Anyone can COPY to stdout or from stdin. psql's \\copy command also works for anyone."
+msgstr "任何人可以 COPY 到标准输出或来自标准输入的 COPY. 任何人也可以使用 Psql 的 \\copy 命令."
+
+#: commands/copy.c:817
+#, c-format
+msgid "must be superuser or a member of the pg_read_server_files role to COPY from a file"
+msgstr "必须是超级用户或pg_read_server_files角色的成员才能从一个文件COPY"
-#: commands/copy.c:812
+#: commands/copy.c:824
#, c-format
-msgid "must be superuser to COPY to or from a file"
-msgstr "å¿\85é¡»æ\88\90为è¶\85级ç\94¨æ\88·æ\89\8dè\83½ COPY å\88°æ\96\87ä»¶æ\88\96ä»\8eæ\96\87ä»¶ COPY"
+msgid "must be superuser or a member of the pg_write_server_files role to COPY to a file"
+msgstr "å¿\85é¡»æ\98¯è¶\85级ç\94¨æ\88·æ\88\96pg_write_server_filesè§\92è\89²ç\9a\84æ\88\90å\91\98æ\89\8dè\83½COPYå\88°ä¸\80个æ\96\87ä»¶"
-#: commands/copy.c:878
+#: commands/copy.c:887
#, c-format
msgid "COPY FROM not supported with row-level security"
msgstr "在行级安全性下不支持COPY FROM"
-#: commands/copy.c:879
+#: commands/copy.c:888
#, c-format
msgid "Use INSERT statements instead."
msgstr "请使用INSERT语句代替。"
-#: commands/copy.c:1019
+#: commands/copy.c:1075
#, c-format
msgid "COPY format \"%s\" not recognized"
msgstr "没有识别COPY命令的格式\"%s\""
-#: commands/copy.c:1090 commands/copy.c:1104 commands/copy.c:1118
-#: commands/copy.c:1138
+#: commands/copy.c:1155 commands/copy.c:1171 commands/copy.c:1186
+#: commands/copy.c:1208
#, c-format
msgid "argument to option \"%s\" must be a list of column names"
msgstr "选项 \"%s\"的参数必须是一个包含列名的列表"
-#: commands/copy.c:1151
+#: commands/copy.c:1223
#, c-format
msgid "argument to option \"%s\" must be a valid encoding name"
msgstr "选项 \"%s\"的参数必须是一个有效的编码名"
-#: commands/copy.c:1157 commands/dbcommands.c:232 commands/dbcommands.c:1427
+#: commands/copy.c:1230 commands/dbcommands.c:242 commands/dbcommands.c:1461
#, c-format
msgid "option \"%s\" not recognized"
msgstr "未识别选项\"%s\""
-#: commands/copy.c:1168
+#: commands/copy.c:1242
#, c-format
msgid "cannot specify DELIMITER in BINARY mode"
msgstr "在 BINARY 模式中你不能指定 DELIMITER"
-#: commands/copy.c:1173
+#: commands/copy.c:1247
#, c-format
msgid "cannot specify NULL in BINARY mode"
msgstr "在 BINARY 模式中你不能指定 NULL"
-#: commands/copy.c:1195
+#: commands/copy.c:1269
#, c-format
msgid "COPY delimiter must be a single one-byte character"
msgstr "COPY命令中 的分隔符必需是单字节字符"
-#: commands/copy.c:1202
+#: commands/copy.c:1276
#, c-format
msgid "COPY delimiter cannot be newline or carriage return"
msgstr "COPY 命令中的分隔符不能使新行或回车符"
-#: commands/copy.c:1208
+#: commands/copy.c:1282
#, c-format
msgid "COPY null representation cannot use newline or carriage return"
msgstr "在COPY命令中空表达式中不能使用新行或换行回车."
-#: commands/copy.c:1225
+#: commands/copy.c:1299
#, c-format
msgid "COPY delimiter cannot be \"%s\""
msgstr "COPY命令中的分隔符不能为\"%s\""
-#: commands/copy.c:1231
+#: commands/copy.c:1305
#, c-format
msgid "COPY HEADER available only in CSV mode"
msgstr "只在CSV 模式中才能使用COPY HEADER命令"
-#: commands/copy.c:1237
+#: commands/copy.c:1311
#, c-format
msgid "COPY quote available only in CSV mode"
msgstr "只有在CSV模式中才能在COPY命令中使用引号"
-#: commands/copy.c:1242
+#: commands/copy.c:1316
#, c-format
msgid "COPY quote must be a single one-byte character"
msgstr "在COPY命令中的引号必须是单字节字符"
-#: commands/copy.c:1247
+#: commands/copy.c:1321
#, c-format
msgid "COPY delimiter and quote must be different"
msgstr "COPY命令中的分隔符和引号不能一样."
-#: commands/copy.c:1253
+#: commands/copy.c:1327
#, c-format
msgid "COPY escape available only in CSV mode"
msgstr "COPY 转义 (escape) 只在 CSV 模式中有效"
-#: commands/copy.c:1258
+#: commands/copy.c:1332
#, c-format
msgid "COPY escape must be a single one-byte character"
msgstr "在COPY命令中的转义字符必须是单个单字节字符"
-#: commands/copy.c:1264
+#: commands/copy.c:1338
#, c-format
msgid "COPY force quote available only in CSV mode"
msgstr "只有在CSV模式中才能在COPY命令中进行强制引用操作"
-#: commands/copy.c:1268
+#: commands/copy.c:1342
#, c-format
msgid "COPY force quote only available using COPY TO"
msgstr "只有使用COPY TO命令时, COPY强制引用操作才有效"
-#: commands/copy.c:1274
+#: commands/copy.c:1348
#, c-format
msgid "COPY force not null available only in CSV mode"
msgstr "只有在CSV模式中强制不为空的COPY命令才有效"
-#: commands/copy.c:1278
+#: commands/copy.c:1352
#, c-format
msgid "COPY force not null only available using COPY FROM"
msgstr "只有在使用COPY FROM命令时,在COPY命令中的强制不可为空的操作才有效"
-#: commands/copy.c:1284
+#: commands/copy.c:1358
#, c-format
msgid "COPY force null available only in CSV mode"
msgstr "只有在CSV模式中强制为空的COPY命令才有效"
-#: commands/copy.c:1289
+#: commands/copy.c:1363
#, c-format
msgid "COPY force null only available using COPY FROM"
msgstr "只有在使用COPY FROM命令时,在COPY命令中的强制为空的操作才有效"
-#: commands/copy.c:1295
+#: commands/copy.c:1369
#, c-format
msgid "COPY delimiter must not appear in the NULL specification"
msgstr "COPY分隔符不能出现NULL定义中"
-#: commands/copy.c:1302
+#: commands/copy.c:1376
#, c-format
msgid "CSV quote character must not appear in the NULL specification"
msgstr "CSV引用字符不能出现在NULL定义中."
-#: commands/copy.c:1365
+#: commands/copy.c:1437
#, c-format
msgid "table \"%s\" does not have OIDs"
msgstr "表 \"%s\" 没有 OID"
-#: commands/copy.c:1382
+#: commands/copy.c:1454
#, c-format
-#| msgid "COPY (SELECT) WITH OIDS is not supported"
msgid "COPY (query) WITH OIDS is not supported"
msgstr "不支持 COPY (query) WITH OIDS"
-#: commands/copy.c:1402
+#: commands/copy.c:1475
#, c-format
-#| msgid ""
-#| "DO INSTEAD NOTHING rules are not supported for data-modifying statements "
-#| "in WITH"
msgid "DO INSTEAD NOTHING rules are not supported for COPY"
msgstr "对 COPY 语句不支持 DO INSTEAD NOTHING 规则"
-#: commands/copy.c:1416
+#: commands/copy.c:1489
#, c-format
-#| msgid ""
-#| "conditional DO INSTEAD rules are not supported for data-modifying "
-#| "statements in WITH"
msgid "conditional DO INSTEAD rules are not supported for COPY"
msgstr "对 COPY 语句不支持有条件的 DO INSTEAD 规则"
-#: commands/copy.c:1420
+#: commands/copy.c:1493
#, c-format
-#| msgid ""
-#| "DO ALSO rules are not supported for data-modifying statements in WITH"
msgid "DO ALSO rules are not supported for the COPY"
msgstr "对 COPY 语句不支持 DO ALSO 规则"
-#: commands/copy.c:1425
+#: commands/copy.c:1498
#, c-format
-#| msgid ""
-#| "multi-statement DO INSTEAD rules are not supported for data-modifying "
-#| "statements in WITH"
msgid "multi-statement DO INSTEAD rules are not supported for COPY"
msgstr "对 COPY 语句不支持多语句 DO INSTEAD 规则"
-#: commands/copy.c:1435
+#: commands/copy.c:1508
#, c-format
msgid "COPY (SELECT INTO) is not supported"
msgstr "不支持使用COPY (SELECT INTO)命令."
-#: commands/copy.c:1452
+#: commands/copy.c:1525
#, c-format
-#| msgid "WITH query \"%s\" does not have a RETURNING clause"
msgid "COPY query must have a RETURNING clause"
msgstr "COPY 查询必须有 RETURNING 子句"
-#: commands/copy.c:1480
+#: commands/copy.c:1553
#, c-format
msgid "relation referenced by COPY statement has changed"
msgstr "COPY语句引用的关系已经改变"
-#: commands/copy.c:1538
+#: commands/copy.c:1612
#, c-format
-#| msgid "FORCE QUOTE column \"%s\" not referenced by COPY"
msgid "FORCE_QUOTE column \"%s\" not referenced by COPY"
msgstr "FORCE_QUOTE 列 \"%s\" 没有被 COPY 引用"
-#: commands/copy.c:1560
+#: commands/copy.c:1635
#, c-format
-#| msgid "FORCE NOT NULL column \"%s\" not referenced by COPY"
msgid "FORCE_NOT_NULL column \"%s\" not referenced by COPY"
msgstr "FORCE_NOT_NULL 列 \"%s\" 没有被 COPY 引用"
-#: commands/copy.c:1582
+#: commands/copy.c:1658
#, c-format
-#| msgid "FORCE NULL column \"%s\" not referenced by COPY"
msgid "FORCE_NULL column \"%s\" not referenced by COPY"
msgstr "FORCE_NULL 列 \"%s\" 没有被 COPY 引用"
-#: commands/copy.c:1647
+#: commands/copy.c:1724 libpq/be-secure-common.c:102
#, c-format
msgid "could not close pipe to external command: %m"
msgstr "无法为外部命令: %m关闭管道"
-#: commands/copy.c:1651
+#: commands/copy.c:1739
#, c-format
msgid "program \"%s\" failed"
msgstr "程序\"%s\"失败"
-#: commands/copy.c:1701
+#: commands/copy.c:1790
#, c-format
msgid "cannot copy from view \"%s\""
msgstr "不可以从视图 \"%s\" 拷贝"
-#: commands/copy.c:1703 commands/copy.c:1709 commands/copy.c:1715
+#: commands/copy.c:1792 commands/copy.c:1798 commands/copy.c:1804
+#: commands/copy.c:1815
#, c-format
msgid "Try the COPY (SELECT ...) TO variant."
msgstr "尝试不同形式的COPY (SELECT ...) TO命令"
-#: commands/copy.c:1707
+#: commands/copy.c:1796
#, c-format
msgid "cannot copy from materialized view \"%s\""
msgstr "不可以从物化视图 \"%s\" 拷贝"
-#: commands/copy.c:1713
+#: commands/copy.c:1802
#, c-format
msgid "cannot copy from foreign table \"%s\""
msgstr "不可以从外部表 \"%s\" 拷贝"
-#: commands/copy.c:1719
+#: commands/copy.c:1808
#, c-format
msgid "cannot copy from sequence \"%s\""
msgstr "不可以从序列 \"%s\" 拷贝"
-#: commands/copy.c:1724
+#: commands/copy.c:1813
#, c-format
-msgid "cannot copy from non-table relation \"%s\""
-msgstr "不可以从非表关系 \"%s\" 拷贝"
+msgid "cannot copy from partitioned table \"%s\""
+msgstr "不可以从分区表 \"%s\" 拷贝"
-#: commands/copy.c:1749 commands/copy.c:2787
+#: commands/copy.c:1819
#, c-format
-msgid "could not execute command \"%s\": %m"
-msgstr "无法执行命令 \"%s\": %m"
+msgid "cannot copy from non-table relation \"%s\""
+msgstr "不可以从非表关系 \"%s\" 拷贝"
-#: commands/copy.c:1764
+#: commands/copy.c:1859
#, c-format
msgid "relative path not allowed for COPY to file"
msgstr "COPY 到文件不允许相对路径"
-#: commands/copy.c:1772
+#: commands/copy.c:1880
#, c-format
msgid "could not open file \"%s\" for writing: %m"
msgstr "为了写入, 无法打开文件 \"%s\": %m"
-#: commands/copy.c:1784 commands/copy.c:2810
+#: commands/copy.c:1883
+#, c-format
+msgid "COPY TO instructs the PostgreSQL server process to write a file. You may want a client-side facility such as psql's \\copy."
+msgstr "COPY TO指示PostgreSQL服务器进程写入文件。您可能需要客户端工具,如psql的\\copy。"
+
+#: commands/copy.c:1896 commands/copy.c:3212
#, c-format
msgid "\"%s\" is a directory"
msgstr "\"%s\" 是一个目录"
-#: commands/copy.c:2109
+#: commands/copy.c:2222
#, c-format
-msgid "COPY %s, line %d, column %s"
-msgstr "COPY %s, 行 %d, 列 %s"
+msgid "COPY %s, line %s, column %s"
+msgstr "COPY %s, 行 %s, 列 %s"
-#: commands/copy.c:2113 commands/copy.c:2160
+#: commands/copy.c:2226 commands/copy.c:2273
#, c-format
-msgid "COPY %s, line %d"
-msgstr "COPY %s, 行 %d"
+msgid "COPY %s, line %s"
+msgstr "COPY %s, 行 %s"
-#: commands/copy.c:2124
+#: commands/copy.c:2237
#, c-format
-msgid "COPY %s, line %d, column %s: \"%s\""
-msgstr "COPY %s, 行 %d, 列 %s: \"%s\""
+msgid "COPY %s, line %s, column %s: \"%s\""
+msgstr "COPY %s, 行 %s, 列 %s: \"%s\""
-#: commands/copy.c:2132
+#: commands/copy.c:2245
#, c-format
-msgid "COPY %s, line %d, column %s: null input"
-msgstr "COPY %s, 行 %d, 列 %s: 空的输入"
+msgid "COPY %s, line %s, column %s: null input"
+msgstr "COPY %s, 行 %s, 列 %s: 空的输入"
-#: commands/copy.c:2154
+#: commands/copy.c:2267
#, c-format
-msgid "COPY %s, line %d: \"%s\""
-msgstr "COPY %s, 行 %d: \"%s\""
+msgid "COPY %s, line %s: \"%s\""
+msgstr "COPY %s, 行 %s: \"%s\""
-#: commands/copy.c:2238
+#: commands/copy.c:2363
#, c-format
msgid "cannot copy to view \"%s\""
msgstr "不可以拷贝到视图 \"%s\""
-#: commands/copy.c:2243
+#: commands/copy.c:2365
#, c-format
-msgid "cannot copy to materialized view \"%s\""
-msgstr "不可以拷贝到物化视图 \"%s\""
+msgid "To enable copying to a view, provide an INSTEAD OF INSERT trigger."
+msgstr "启用向视图拷贝操作, 要提供INSTEAD OF INSERT触发器."
-#: commands/copy.c:2248
+#: commands/copy.c:2369
#, c-format
-msgid "cannot copy to foreign table \"%s\""
-msgstr "不可以拷贝到外部表 \"%s\""
+msgid "cannot copy to materialized view \"%s\""
+msgstr "不可以拷贝到物化视图 \"%s\""
-#: commands/copy.c:2253
+#: commands/copy.c:2374
#, c-format
msgid "cannot copy to sequence \"%s\""
msgstr "不可以拷贝到序列 \"%s\""
-#: commands/copy.c:2258
+#: commands/copy.c:2379
#, c-format
msgid "cannot copy to non-table relation \"%s\""
msgstr "不可以拷贝到非表关系 \"%s\""
-#: commands/copy.c:2321
+#: commands/copy.c:2471
+#, c-format
+msgid "cannot perform FREEZE on a partitioned table"
+msgstr "在分区表上无法执行FREEZE操作"
+
+#: commands/copy.c:2486
#, c-format
msgid "cannot perform FREEZE because of prior transaction activity"
msgstr "由于前一个事务是活动的,无法执行FREEZE操作"
-#: commands/copy.c:2327
+#: commands/copy.c:2492
#, c-format
-msgid ""
-"cannot perform FREEZE because the table was not created or truncated in the "
-"current subtransaction"
+msgid "cannot perform FREEZE because the table was not created or truncated in the current subtransaction"
msgstr "当前子事务中,因为表未建或被截短,无法执行FREEZE操作"
-#: commands/copy.c:2830
+#: commands/copy.c:3199
+#, c-format
+msgid "COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as psql's \\copy."
+msgstr "COPY FROM指示PostgreSQL服务器进程读取文件。您可能需要客户端工具,如psql的\\copy"
+
+#: commands/copy.c:3232
#, c-format
msgid "COPY file signature not recognized"
msgstr "文件签字不被认可"
-#: commands/copy.c:2835
+#: commands/copy.c:3237
#, c-format
msgid "invalid COPY file header (missing flags)"
msgstr "无效的 COPY 文件头 (缺少标志)"
-#: commands/copy.c:2841
+#: commands/copy.c:3243
#, c-format
msgid "unrecognized critical flags in COPY file header"
msgstr "在 COPY 文件头有不认可的危险标志"
-#: commands/copy.c:2847
+#: commands/copy.c:3249
#, c-format
msgid "invalid COPY file header (missing length)"
msgstr "无效的 COPY 文件头 (缺少长度)"
-#: commands/copy.c:2854
+#: commands/copy.c:3256
#, c-format
msgid "invalid COPY file header (wrong length)"
msgstr "无效的 COPY 文件头 (错误长度)"
-#: commands/copy.c:2987 commands/copy.c:3694 commands/copy.c:3924
+#: commands/copy.c:3387 commands/copy.c:4096 commands/copy.c:4326
#, c-format
msgid "extra data after last expected column"
msgstr "最后期望字段后有额外数据"
-#: commands/copy.c:2997
+#: commands/copy.c:3397
#, c-format
msgid "missing data for OID column"
msgstr "OID列丢失数据"
-#: commands/copy.c:3003
+#: commands/copy.c:3403
#, c-format
msgid "null OID in COPY data"
msgstr "在 COPY 数据中没有 OID"
-#: commands/copy.c:3013 commands/copy.c:3136
+#: commands/copy.c:3413 commands/copy.c:3537
#, c-format
msgid "invalid OID in COPY data"
msgstr "在 COPY 数据中无效的 OID"
-#: commands/copy.c:3028
+#: commands/copy.c:3429
#, c-format
msgid "missing data for column \"%s\""
msgstr "字段 \"%s\" 缺少数据"
-#: commands/copy.c:3111
+#: commands/copy.c:3512
#, c-format
msgid "received copy data after EOF marker"
msgstr "在EOF标志后收到了复制数据"
-#: commands/copy.c:3118
+#: commands/copy.c:3519
#, c-format
msgid "row field count is %d, expected %d"
msgstr "元组字段计数是 %d, 期望计数是 %d"
-#: commands/copy.c:3458 commands/copy.c:3475
+#: commands/copy.c:3860 commands/copy.c:3877
#, c-format
msgid "literal carriage return found in data"
msgstr "在数据中找到了文字的回车换行符"
-#: commands/copy.c:3459 commands/copy.c:3476
+#: commands/copy.c:3861 commands/copy.c:3878
#, c-format
msgid "unquoted carriage return found in data"
msgstr "在数据中找到了未用引号引起来的回车换行符"
-#: commands/copy.c:3461 commands/copy.c:3478
+#: commands/copy.c:3863 commands/copy.c:3880
#, c-format
msgid "Use \"\\r\" to represent carriage return."
msgstr "使用\"\\r\"来代表换行回车"
-#: commands/copy.c:3462 commands/copy.c:3479
+#: commands/copy.c:3864 commands/copy.c:3881
#, c-format
msgid "Use quoted CSV field to represent carriage return."
msgstr "使用以引号引起来的CSV字段代表换行回车."
-#: commands/copy.c:3491
+#: commands/copy.c:3893
#, c-format
msgid "literal newline found in data"
msgstr "在数据中找到了文字形式的新行"
-#: commands/copy.c:3492
+#: commands/copy.c:3894
#, c-format
msgid "unquoted newline found in data"
msgstr "在数据中找到了未用引号引起来的新行"
-#: commands/copy.c:3494
+#: commands/copy.c:3896
#, c-format
msgid "Use \"\\n\" to represent newline."
msgstr "使用 \"\\n\" 表示新行."
-#: commands/copy.c:3495
+#: commands/copy.c:3897
#, c-format
msgid "Use quoted CSV field to represent newline."
msgstr "使用用引号因起来的CSV字段来表示新行."
-#: commands/copy.c:3541 commands/copy.c:3577
+#: commands/copy.c:3943 commands/copy.c:3979
#, c-format
msgid "end-of-copy marker does not match previous newline style"
msgstr "end-of-copy标示不匹配先前的新数据行的风格."
-#: commands/copy.c:3550 commands/copy.c:3566
+#: commands/copy.c:3952 commands/copy.c:3968
#, c-format
msgid "end-of-copy marker corrupt"
msgstr "copy命令结束标记损坏"
-#: commands/copy.c:4008
+#: commands/copy.c:4410
#, c-format
msgid "unterminated CSV quoted field"
msgstr "CSV 引号域没有结束"
-#: commands/copy.c:4085 commands/copy.c:4104
+#: commands/copy.c:4487 commands/copy.c:4506
#, c-format
msgid "unexpected EOF in COPY data"
msgstr "在 COPY 数据中意外的 EOF"
-#: commands/copy.c:4094
+#: commands/copy.c:4496
#, c-format
msgid "invalid field size"
msgstr "无效字段尺寸"
-#: commands/copy.c:4117
+#: commands/copy.c:4519
#, c-format
msgid "incorrect binary data format"
msgstr "不正确的二进制数据格式"
-#: commands/copy.c:4428 commands/indexcmds.c:1053 commands/tablecmds.c:1463
-#: commands/tablecmds.c:2290 parser/parse_relation.c:3084
-#: parser/parse_relation.c:3104 utils/adt/tsvector_op.c:2222
+#: commands/copy.c:4831 commands/indexcmds.c:1473 commands/statscmds.c:206
+#: commands/tablecmds.c:1910 commands/tablecmds.c:2467
+#: commands/tablecmds.c:2848 parser/parse_relation.c:3288
+#: parser/parse_relation.c:3308 utils/adt/tsvector_op.c:2561
#, c-format
msgid "column \"%s\" does not exist"
msgstr "字段 \"%s\" 不存在"
-#: commands/copy.c:4435 commands/tablecmds.c:1489 commands/trigger.c:651
-#: parser/parse_target.c:956 parser/parse_target.c:967
+#: commands/copy.c:4838 commands/tablecmds.c:1937 commands/trigger.c:913
+#: parser/parse_target.c:1046 parser/parse_target.c:1057
#, c-format
msgid "column \"%s\" specified more than once"
msgstr "字段 \"%s\" 被指定多次"
-#: commands/createas.c:383
+#: commands/createas.c:213 commands/createas.c:509
#, c-format
msgid "too many column names were specified"
msgstr "指定了太多的列名"
-#: commands/createas.c:452
+#: commands/createas.c:550
#, c-format
msgid "policies not yet implemented for this command"
msgstr "还没有为该命令实现策略"
-#: commands/dbcommands.c:226
+#: commands/dbcommands.c:235
#, c-format
msgid "LOCATION is not supported anymore"
msgstr "不再支持 LOCATION"
-#: commands/dbcommands.c:227
+#: commands/dbcommands.c:236
#, c-format
msgid "Consider using tablespaces instead."
msgstr "考虑使用表空间代替."
-#: commands/dbcommands.c:251 utils/adt/ascii.c:144
+#: commands/dbcommands.c:262 utils/adt/ascii.c:145
#, c-format
msgid "%d is not a valid encoding code"
msgstr "%d 是一个无效编码"
-#: commands/dbcommands.c:261 utils/adt/ascii.c:126
+#: commands/dbcommands.c:273 utils/adt/ascii.c:127
#, c-format
msgid "%s is not a valid encoding name"
msgstr "%s 是一个无效编码名字"
# fe-connect.c:2558
-#: commands/dbcommands.c:279 commands/dbcommands.c:1458 commands/user.c:272
-#: commands/user.c:650
+#: commands/dbcommands.c:292 commands/dbcommands.c:1494 commands/user.c:276
+#: commands/user.c:664
#, c-format
msgid "invalid connection limit: %d"
msgstr "无效的连接限制:%d"
-#: commands/dbcommands.c:298
+#: commands/dbcommands.c:311
#, c-format
msgid "permission denied to create database"
msgstr "创建数据库权限不够"
-#: commands/dbcommands.c:321
+#: commands/dbcommands.c:334
#, c-format
msgid "template database \"%s\" does not exist"
msgstr "template 数据库 \"%s\" 不存在"
-#: commands/dbcommands.c:333
+#: commands/dbcommands.c:346
#, c-format
msgid "permission denied to copy database \"%s\""
msgstr "拷贝数据库 \"%s\" 权限不够"
-#: commands/dbcommands.c:349
+#: commands/dbcommands.c:362
#, c-format
msgid "invalid server encoding %d"
msgstr "无效服务器编码 %d"
-#: commands/dbcommands.c:355 commands/dbcommands.c:360
+#: commands/dbcommands.c:368 commands/dbcommands.c:373
#, c-format
msgid "invalid locale name: \"%s\""
msgstr "无效的语言环境名称: \"%s\""
-#: commands/dbcommands.c:380
+#: commands/dbcommands.c:393
#, c-format
-msgid ""
-"new encoding (%s) is incompatible with the encoding of the template database "
-"(%s)"
+msgid "new encoding (%s) is incompatible with the encoding of the template database (%s)"
msgstr "新的编码(%s)与模板数据库(%s)的编码不兼容"
-#: commands/dbcommands.c:383
+#: commands/dbcommands.c:396
#, c-format
-msgid ""
-"Use the same encoding as in the template database, or use template0 as "
-"template."
+msgid "Use the same encoding as in the template database, or use template0 as template."
msgstr "在模版数据库中使用同一编码,或者使用template0作为模版."
-#: commands/dbcommands.c:388
+#: commands/dbcommands.c:401
#, c-format
-msgid ""
-"new collation (%s) is incompatible with the collation of the template "
-"database (%s)"
+msgid "new collation (%s) is incompatible with the collation of the template database (%s)"
msgstr "新的排序规则(%s)与模版数据库(%s)中的排序规则不兼容"
-#: commands/dbcommands.c:390
+#: commands/dbcommands.c:403
#, c-format
-msgid ""
-"Use the same collation as in the template database, or use template0 as "
-"template."
+msgid "Use the same collation as in the template database, or use template0 as template."
msgstr "在模版数据库中使用同一排序规则,或者使用template0作为模版."
-#: commands/dbcommands.c:395
+#: commands/dbcommands.c:408
#, c-format
-msgid ""
-"new LC_CTYPE (%s) is incompatible with the LC_CTYPE of the template database "
-"(%s)"
+msgid "new LC_CTYPE (%s) is incompatible with the LC_CTYPE of the template database (%s)"
msgstr "新的LC_CTYPE (%s)与模版数据库(%s)中的LC_CTYPE不兼容."
-#: commands/dbcommands.c:397
+#: commands/dbcommands.c:410
#, c-format
-msgid ""
-"Use the same LC_CTYPE as in the template database, or use template0 as "
-"template."
+msgid "Use the same LC_CTYPE as in the template database, or use template0 as template."
msgstr "在模版数据库中使用同一LC_CTYPE,或者使用template0作为模版."
-#: commands/dbcommands.c:419 commands/dbcommands.c:1113
+#: commands/dbcommands.c:432 commands/dbcommands.c:1146
#, c-format
msgid "pg_global cannot be used as default tablespace"
msgstr "pg_global不能作为缺省表空间使用"
-#: commands/dbcommands.c:445
+#: commands/dbcommands.c:458
#, c-format
msgid "cannot assign new default tablespace \"%s\""
msgstr "无法分配新的默认表空间 \"%s\""
-#: commands/dbcommands.c:447
+#: commands/dbcommands.c:460
#, c-format
-msgid ""
-"There is a conflict because database \"%s\" already has some tables in this "
-"tablespace."
+msgid "There is a conflict because database \"%s\" already has some tables in this tablespace."
msgstr "此处有冲突, 因为数据库 \"%s\" 已经有一些表在此表空间中."
-#: commands/dbcommands.c:467 commands/dbcommands.c:982
+#: commands/dbcommands.c:480 commands/dbcommands.c:1016
#, c-format
msgid "database \"%s\" already exists"
msgstr "数据库 \"%s\" 已经存在"
-#: commands/dbcommands.c:481
+#: commands/dbcommands.c:494
#, c-format
msgid "source database \"%s\" is being accessed by other users"
msgstr "其他用户正在使用源数据库 \"%s\""
-#: commands/dbcommands.c:726 commands/dbcommands.c:741
+#: commands/dbcommands.c:736 commands/dbcommands.c:751
#, c-format
msgid "encoding \"%s\" does not match locale \"%s\""
msgstr "编码 \"%s\"与本地化环境\"%s\"不匹配"
-#: commands/dbcommands.c:729
+#: commands/dbcommands.c:739
#, c-format
msgid "The chosen LC_CTYPE setting requires encoding \"%s\"."
msgstr "所选择的LC_CTYPE设置需要编码\"%s\"."
-#: commands/dbcommands.c:744
+#: commands/dbcommands.c:754
#, c-format
msgid "The chosen LC_COLLATE setting requires encoding \"%s\"."
msgstr "所选择的 LC_COLLATE设置需要编码\"%s\"."
-#: commands/dbcommands.c:804
+#: commands/dbcommands.c:815
#, c-format
msgid "database \"%s\" does not exist, skipping"
msgstr "数据库 \"%s\" 不存在,跳过"
-#: commands/dbcommands.c:828
+#: commands/dbcommands.c:839
#, c-format
msgid "cannot drop a template database"
msgstr "无法删除模板数据库"
-#: commands/dbcommands.c:834
+#: commands/dbcommands.c:845
#, c-format
msgid "cannot drop the currently open database"
msgstr "无法删除当前使用的数据库"
-#: commands/dbcommands.c:844
+#: commands/dbcommands.c:858
#, c-format
-msgid "database \"%s\" is used by a logical replication slot"
-msgstr "数据库\"%s\"被一个逻辑复制槽使用"
+msgid "database \"%s\" is used by an active logical replication slot"
+msgstr "数据库\"%s\"被一个活动的逻辑复制槽使用"
-#: commands/dbcommands.c:846
+#: commands/dbcommands.c:860
#, c-format
-msgid "There is %d slot, %d of them active."
-msgid_plural "There are %d slots, %d of them active."
-msgstr[0] "æ\9c\89%d个槽ï¼\8cå\85¶ä¸%d个æ\98¯æ´»å\8a¨ç\9a\84."
+msgid "There is %d active slot."
+msgid_plural "There are %d active slots."
+msgstr[0] "æ\9c\89%d个活å\8a¨æ\8f\92æ§½."
-#: commands/dbcommands.c:860 commands/dbcommands.c:1004
-#: commands/dbcommands.c:1135
+#: commands/dbcommands.c:874 commands/dbcommands.c:1038
+#: commands/dbcommands.c:1168
#, c-format
msgid "database \"%s\" is being accessed by other users"
msgstr "其他用户正在使用数据库 \"%s\""
-#: commands/dbcommands.c:973
+#: commands/dbcommands.c:887
+#, c-format
+msgid "database \"%s\" is being used by logical replication subscription"
+msgstr "逻辑复制订阅正在使用数据库\"%s\""
+
+#: commands/dbcommands.c:889
+#, c-format
+msgid "There is %d subscription."
+msgid_plural "There are %d subscriptions."
+msgstr[0] "有%d个订阅."
+
+#: commands/dbcommands.c:1007
#, c-format
msgid "permission denied to rename database"
msgstr "重命名数据库权限不够"
-#: commands/dbcommands.c:993
+#: commands/dbcommands.c:1027
#, c-format
msgid "current database cannot be renamed"
msgstr "不能对当前数据库进行改名"
-#: commands/dbcommands.c:1091
+#: commands/dbcommands.c:1124
#, c-format
msgid "cannot change the tablespace of the currently open database"
msgstr "无法改变当前已打开数据库的表空间"
-#: commands/dbcommands.c:1194
+#: commands/dbcommands.c:1227
#, c-format
msgid "some relations of database \"%s\" are already in tablespace \"%s\""
msgstr "在表空间 \"%2$s\"中已经存储了数据库\"%1$s\"中的一些关系了"
-#: commands/dbcommands.c:1196
+#: commands/dbcommands.c:1229
#, c-format
-msgid ""
-"You must move them back to the database's default tablespace before using "
-"this command."
+msgid "You must move them back to the database's default tablespace before using this command."
msgstr "在使用这条命令前,您必须把它们移动回数据库的缺省表空间"
-#: commands/dbcommands.c:1325 commands/dbcommands.c:1868
-#: commands/dbcommands.c:2072 commands/dbcommands.c:2120
-#: commands/tablespace.c:610
+#: commands/dbcommands.c:1355 commands/dbcommands.c:1900
+#: commands/dbcommands.c:2104 commands/dbcommands.c:2159
+#: commands/tablespace.c:606
#, c-format
msgid "some useless files may be left behind in old database directory \"%s\""
msgstr "在原先的数据库目录\"%s\"可能留下了一些无用的文件"
-#: commands/dbcommands.c:1440
+#: commands/dbcommands.c:1475
#, c-format
msgid "option \"%s\" cannot be specified with other options"
msgstr "选项\"%s\"不能和其他选项一起指定"
# command.c:981
-#: commands/dbcommands.c:1494
+#: commands/dbcommands.c:1530
#, c-format
msgid "cannot disallow connections for current database"
msgstr "无法禁止到当前数据库的连接"
-#: commands/dbcommands.c:1634
+#: commands/dbcommands.c:1667
#, c-format
msgid "permission denied to change owner of database"
msgstr "改变数据库属主的权限不够"
-#: commands/dbcommands.c:1955
+#: commands/dbcommands.c:1987
#, c-format
-msgid ""
-"There are %d other session(s) and %d prepared transaction(s) using the "
-"database."
+msgid "There are %d other session(s) and %d prepared transaction(s) using the database."
msgstr "这里有%d个其它的会话和%d个已准备好的事务正在使用数据库."
-#: commands/dbcommands.c:1958
+#: commands/dbcommands.c:1990
#, c-format
msgid "There is %d other session using the database."
msgid_plural "There are %d other sessions using the database."
msgstr[0] "那里有%d个其它会话正在使用数据库."
-#: commands/dbcommands.c:1963
+#: commands/dbcommands.c:1995
#, c-format
msgid "There is %d prepared transaction using the database."
msgid_plural "There are %d prepared transactions using the database."
msgstr[0] "那里有%d个已准备好的事务正在使用数据库."
#: commands/define.c:54 commands/define.c:228 commands/define.c:260
-#: commands/define.c:288
+#: commands/define.c:288 commands/define.c:334
#, c-format
msgid "%s requires a parameter"
msgstr "%s 需要一个参数"
msgid "invalid argument for %s: \"%s\""
msgstr "%s 的无效参数: \"%s\""
-#: commands/dropcmds.c:112 commands/functioncmds.c:1203
-#: utils/adt/ruleutils.c:1957
+#: commands/dropcmds.c:99 commands/functioncmds.c:1212
+#: utils/adt/ruleutils.c:2564
#, c-format
msgid "\"%s\" is an aggregate function"
msgstr "\"%s\" 是一个聚合函数"
-#: commands/dropcmds.c:114
+#: commands/dropcmds.c:101
#, c-format
msgid "Use DROP AGGREGATE to drop aggregate functions."
msgstr "使用 DROP AGGREGATE 删除一个聚合函数."
-#: commands/dropcmds.c:165 commands/sequence.c:424 commands/tablecmds.c:2377
-#: commands/tablecmds.c:2528 commands/tablecmds.c:2570
-#: commands/tablecmds.c:11379 tcop/utility.c:1119
+#: commands/dropcmds.c:157 commands/sequence.c:440 commands/tablecmds.c:2932
+#: commands/tablecmds.c:3090 commands/tablecmds.c:3133
+#: commands/tablecmds.c:13424 tcop/utility.c:1163
#, c-format
msgid "relation \"%s\" does not exist, skipping"
msgstr "关系 \"%s\" 不存在,忽略"
-#: commands/dropcmds.c:195 commands/dropcmds.c:292 commands/tablecmds.c:745
+#: commands/dropcmds.c:187 commands/dropcmds.c:286 commands/tablecmds.c:1022
#, c-format
msgid "schema \"%s\" does not exist, skipping"
msgstr "模式 \"%s\" 不存在"
-#: commands/dropcmds.c:237 commands/dropcmds.c:272 commands/tablecmds.c:246
+#: commands/dropcmds.c:227 commands/dropcmds.c:266 commands/tablecmds.c:254
#, c-format
msgid "type \"%s\" does not exist, skipping"
msgstr "类型 \"%s\" 不存在"
-#: commands/dropcmds.c:280
+#: commands/dropcmds.c:256
+#, c-format
+msgid "access method \"%s\" does not exist, skipping"
+msgstr "访问方式 \"%s\" 不存在, 跳过"
+
+#: commands/dropcmds.c:274
#, c-format
msgid "collation \"%s\" does not exist, skipping"
msgstr "排序规则 \"%s\" 不存在,跳过"
-#: commands/dropcmds.c:287
+#: commands/dropcmds.c:281
#, c-format
msgid "conversion \"%s\" does not exist, skipping"
msgstr "编码转换 \"%s\" 不存在,跳过"
-#: commands/dropcmds.c:298
+#: commands/dropcmds.c:292
+#, c-format
+msgid "statistics object \"%s\" does not exist, skipping"
+msgstr "统计信息对象 \"%s\" 不存在,跳过"
+
+#: commands/dropcmds.c:299
#, c-format
msgid "text search parser \"%s\" does not exist, skipping"
msgstr "文本搜索解析器\"%s\"不存在,跳过"
-#: commands/dropcmds.c:305
+#: commands/dropcmds.c:306
#, c-format
msgid "text search dictionary \"%s\" does not exist, skipping"
msgstr "文本搜索字典 \"%s\" 不存在,跳过"
-#: commands/dropcmds.c:312
+#: commands/dropcmds.c:313
#, c-format
msgid "text search template \"%s\" does not exist, skipping"
msgstr "文本搜索模板\"%s\"不存在,跳过"
-#: commands/dropcmds.c:319
+#: commands/dropcmds.c:320
#, c-format
msgid "text search configuration \"%s\" does not exist, skipping"
msgstr "文本搜寻配置 \"%s\"不存在,跳过"
-#: commands/dropcmds.c:324
+#: commands/dropcmds.c:325
#, c-format
msgid "extension \"%s\" does not exist, skipping"
msgstr "扩展 \"%s\" 不存在,跳过"
-#: commands/dropcmds.c:331
+#: commands/dropcmds.c:335
#, c-format
msgid "function %s(%s) does not exist, skipping"
msgstr "函数 %s(%s) 不存在,跳过"
-#: commands/dropcmds.c:340
+#: commands/dropcmds.c:348
+#, c-format
+msgid "procedure %s(%s) does not exist, skipping"
+msgstr "过程 %s(%s) 不存在,跳过"
+
+#: commands/dropcmds.c:361
+#, c-format
+msgid "routine %s(%s) does not exist, skipping"
+msgstr "routine %s(%s) 不存在,跳过"
+
+#: commands/dropcmds.c:374
#, c-format
msgid "aggregate %s(%s) does not exist, skipping"
msgstr "聚合函数 %s(%s) 不存在,跳过"
-#: commands/dropcmds.c:349
+#: commands/dropcmds.c:387
#, c-format
msgid "operator %s does not exist, skipping"
msgstr "操作符 %s不存在,跳过"
-#: commands/dropcmds.c:354
+#: commands/dropcmds.c:393
#, c-format
msgid "language \"%s\" does not exist, skipping"
msgstr "语言 \"%s\" 不存在"
-#: commands/dropcmds.c:363
+#: commands/dropcmds.c:402
#, c-format
msgid "cast from type %s to type %s does not exist, skipping"
msgstr "从类型 %s 到类型 %s 的类型转换不存在,跳过"
-#: commands/dropcmds.c:372
+#: commands/dropcmds.c:411
#, c-format
msgid "transform for type %s language \"%s\" does not exist, skipping"
msgstr "用于类型%s、语言\"%s\"的转换不存在,跳过"
-#: commands/dropcmds.c:380
+#: commands/dropcmds.c:419
#, c-format
msgid "trigger \"%s\" for relation \"%s\" does not exist, skipping"
msgstr "关系 \"%2$s\"的触发器\"%1$s\"不存在,跳过"
-#: commands/dropcmds.c:389
+#: commands/dropcmds.c:428
#, c-format
msgid "policy \"%s\" for relation \"%s\" does not exist, skipping"
msgstr "关系\"%2$s\"的策略\"%1$s\"不存在,跳过"
-#: commands/dropcmds.c:396
+#: commands/dropcmds.c:435
#, c-format
msgid "event trigger \"%s\" does not exist, skipping"
msgstr "事件触发器 \"%s\"不存在,跳过 "
-#: commands/dropcmds.c:402
+#: commands/dropcmds.c:441
#, c-format
msgid "rule \"%s\" for relation \"%s\" does not exist, skipping"
msgstr "关系 \"%2$s\"的规则\"%1$s\"不存在,跳过"
-#: commands/dropcmds.c:409
+#: commands/dropcmds.c:448
#, c-format
msgid "foreign-data wrapper \"%s\" does not exist, skipping"
msgstr "外部数据封装器\"%s\" 不存在,跳过"
-#: commands/dropcmds.c:413
+#: commands/dropcmds.c:452
#, c-format
msgid "server \"%s\" does not exist, skipping"
-msgstr "服务器 \"%s\"不存在,跳过 "
+msgstr "服务器 \"%s\"不存在,跳过"
-#: commands/dropcmds.c:422
+#: commands/dropcmds.c:461
#, c-format
msgid "operator class \"%s\" does not exist for access method \"%s\", skipping"
msgstr "处理方法 \"%2$s\" 的操作符类 \"%1$s\" 不存在, 跳过"
-#: commands/dropcmds.c:434
+#: commands/dropcmds.c:473
#, c-format
-msgid ""
-"operator family \"%s\" does not exist for access method \"%s\", skipping"
+msgid "operator family \"%s\" does not exist for access method \"%s\", skipping"
msgstr "访问方法\"%2$s\"的操作符表 \"%1$s\" 不存在, 跳过"
-#: commands/event_trigger.c:182
+#: commands/dropcmds.c:480
+#, c-format
+msgid "publication \"%s\" does not exist, skipping"
+msgstr "发布 \"%s\" 不存在,跳过"
+
+#: commands/event_trigger.c:187
#, c-format
msgid "permission denied to create event trigger \"%s\""
msgstr "创建事件触发器 \"%s\" 权限不够"
-#: commands/event_trigger.c:184
+#: commands/event_trigger.c:189
#, c-format
msgid "Must be superuser to create an event trigger."
msgstr "只有超级用户能创建事件触发器."
-#: commands/event_trigger.c:193
+#: commands/event_trigger.c:198
#, c-format
msgid "unrecognized event name \"%s\""
msgstr "无法识别的事件名:\"%s\""
-#: commands/event_trigger.c:210
+#: commands/event_trigger.c:215
#, c-format
msgid "unrecognized filter variable \"%s\""
msgstr "不可识别的过滤器变量 \"%s\""
-#: commands/event_trigger.c:265
+#: commands/event_trigger.c:270
#, c-format
msgid "filter value \"%s\" not recognized for filter variable \"%s\""
msgstr "过滤器变量 \"%2$s\"中的过滤器值\"%1$s\"不能识别"
#. translator: %s represents an SQL statement name
-#: commands/event_trigger.c:271 commands/event_trigger.c:341
+#: commands/event_trigger.c:276 commands/event_trigger.c:346
#, c-format
msgid "event triggers are not supported for %s"
msgstr "事件触发器在%s中不被支持"
-#: commands/event_trigger.c:364
+#: commands/event_trigger.c:369
#, c-format
msgid "filter variable \"%s\" specified more than once"
msgstr "过滤器变量 \"%s\" 被指定多次"
-#: commands/event_trigger.c:512 commands/event_trigger.c:556
-#: commands/event_trigger.c:649
+#: commands/event_trigger.c:516 commands/event_trigger.c:559
+#: commands/event_trigger.c:651
#, c-format
msgid "event trigger \"%s\" does not exist"
msgstr "过滤器变量\"%s\" 不存在"
-#: commands/event_trigger.c:617
+#: commands/event_trigger.c:620
#, c-format
msgid "permission denied to change owner of event trigger \"%s\""
msgstr "修改事件触发器的 \"%s\" 的属主权限不够"
-#: commands/event_trigger.c:619
+#: commands/event_trigger.c:622
#, c-format
msgid "The owner of an event trigger must be a superuser."
msgstr "事件触发器的属主必须是超级用户."
-#: commands/event_trigger.c:1442
+#: commands/event_trigger.c:1457
#, c-format
msgid "%s can only be called in a sql_drop event trigger function"
msgstr "%s只能在sql_drop事件触发器函数中被调用"
-#: commands/event_trigger.c:1562 commands/event_trigger.c:1583
+#: commands/event_trigger.c:1577 commands/event_trigger.c:1598
#, c-format
msgid "%s can only be called in a table_rewrite event trigger function"
msgstr "%s只能在table_rewrite事件触发器函数中被调用"
-#: commands/event_trigger.c:1993
+#: commands/event_trigger.c:2009
#, c-format
msgid "%s can only be called in an event trigger function"
msgstr "%s只能在事件触发器函数中被调用"
-#: commands/explain.c:184
+#: commands/explain.c:192
#, c-format
msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
msgstr "用于EXPLAIN选项\"%s\"的值无效:\"%s\""
-#: commands/explain.c:190
+#: commands/explain.c:199
#, c-format
msgid "unrecognized EXPLAIN option \"%s\""
msgstr "无法识别的EXPLAIN选项\"%s\""
-#: commands/explain.c:197
+#: commands/explain.c:207
#, c-format
msgid "EXPLAIN option BUFFERS requires ANALYZE"
msgstr "在EXPLAIN命令中BUFFERS和ANALYZE选项需要一起使用"
-#: commands/explain.c:206
+#: commands/explain.c:216
#, c-format
msgid "EXPLAIN option TIMING requires ANALYZE"
msgstr "在EXPLAIN命令中的TIMING选项需要ANALYZE"
-#: commands/extension.c:154 commands/extension.c:2718
+#: commands/extension.c:168 commands/extension.c:2914
#, c-format
msgid "extension \"%s\" does not exist"
msgstr "扩展 \"%s\" 不存在"
-#: commands/extension.c:253 commands/extension.c:262 commands/extension.c:274
-#: commands/extension.c:284
+#: commands/extension.c:267 commands/extension.c:276 commands/extension.c:288
+#: commands/extension.c:298
#, c-format
msgid "invalid extension name: \"%s\""
msgstr "无效扩展名: \"%s\""
-#: commands/extension.c:254
+#: commands/extension.c:268
#, c-format
msgid "Extension names must not be empty."
msgstr "扩展名不能为空."
-#: commands/extension.c:263
+#: commands/extension.c:277
#, c-format
msgid "Extension names must not contain \"--\"."
msgstr "扩展名不能包含\"--\"."
-#: commands/extension.c:275
+#: commands/extension.c:289
#, c-format
msgid "Extension names must not begin or end with \"-\"."
msgstr "扩展名不能以 \"-\"作为开始或结束符."
-#: commands/extension.c:285
+#: commands/extension.c:299
#, c-format
msgid "Extension names must not contain directory separator characters."
msgstr "扩展名不能包含目录分隔符."
-#: commands/extension.c:300 commands/extension.c:309 commands/extension.c:318
-#: commands/extension.c:328
+#: commands/extension.c:314 commands/extension.c:323 commands/extension.c:332
+#: commands/extension.c:342
#, c-format
msgid "invalid extension version name: \"%s\""
msgstr "无效的扩展版本名: \"%s\""
-#: commands/extension.c:301
+#: commands/extension.c:315
#, c-format
msgid "Version names must not be empty."
msgstr "版本名不能为空."
-#: commands/extension.c:310
+#: commands/extension.c:324
#, c-format
msgid "Version names must not contain \"--\"."
msgstr "版本名不能包含\"--\"."
-#: commands/extension.c:319
+#: commands/extension.c:333
#, c-format
msgid "Version names must not begin or end with \"-\"."
msgstr "版本名不能以 \"-\"作为开始或结束符."
-#: commands/extension.c:329
+#: commands/extension.c:343
#, c-format
msgid "Version names must not contain directory separator characters."
msgstr "版本名不能包含目录分隔符."
-#: commands/extension.c:479
+#: commands/extension.c:493
#, c-format
msgid "could not open extension control file \"%s\": %m"
msgstr "无法打开扩展控制文件 \"%s\": %m"
-#: commands/extension.c:501 commands/extension.c:511
+#: commands/extension.c:515 commands/extension.c:525
#, c-format
msgid "parameter \"%s\" cannot be set in a secondary extension control file"
msgstr "第二扩展控制文件中, 无法设置参数 \"%s\""
-#: commands/extension.c:550
+#: commands/extension.c:564
#, c-format
msgid "\"%s\" is not a valid encoding name"
msgstr "\"%s\" 是一个无效编码名"
-#: commands/extension.c:564
+#: commands/extension.c:578
#, c-format
msgid "parameter \"%s\" must be a list of extension names"
msgstr "参数 \"%s\"必须是一个包含扩展名的列表"
-#: commands/extension.c:571
+#: commands/extension.c:585
#, c-format
msgid "unrecognized parameter \"%s\" in file \"%s\""
msgstr "文件\"%2$s\"中出现未识别的参数 \"%1$s\""
-#: commands/extension.c:580
+#: commands/extension.c:594
#, c-format
msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true"
msgstr "当\"relocatable\"为真时,参数\"schema\"不允许被指定"
-#: commands/extension.c:721
+#: commands/extension.c:761
#, c-format
-msgid ""
-"transaction control statements are not allowed within an extension script"
+msgid "transaction control statements are not allowed within an extension script"
msgstr "扩展脚本中不允许出现事务控制语句"
-#: commands/extension.c:789
+#: commands/extension.c:807
#, c-format
msgid "permission denied to create extension \"%s\""
msgstr "创建扩展 \"%s\" 权限不够"
-#: commands/extension.c:791
+#: commands/extension.c:809
#, c-format
msgid "Must be superuser to create this extension."
msgstr "只有超级用户能创建扩展."
-#: commands/extension.c:795
+#: commands/extension.c:813
#, c-format
msgid "permission denied to update extension \"%s\""
msgstr "更新扩展 \"%s\" 权限不够"
-#: commands/extension.c:797
+#: commands/extension.c:815
#, c-format
msgid "Must be superuser to update this extension."
msgstr "只有超级用户能更新扩展."
-#: commands/extension.c:1079
+#: commands/extension.c:1097
#, c-format
-msgid ""
-"extension \"%s\" has no update path from version \"%s\" to version \"%s\""
+msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
msgstr "扩展 \"%s\" 没有从版本\"%s\"到版本\"%s\"的更新路径"
-#: commands/extension.c:1261 commands/extension.c:2778
+#: commands/extension.c:1304 commands/extension.c:2975
#, c-format
msgid "version to install must be specified"
msgstr "必须指定安装版本"
-#: commands/extension.c:1278
+#: commands/extension.c:1326
#, c-format
msgid "FROM version must be different from installation target version \"%s\""
msgstr "FROM 版本与安装的目标版本 \"%s\" 必须不同"
-#: commands/extension.c:1343
+#: commands/extension.c:1391
+#, c-format
+msgid "extension \"%s\" has no installation script nor update path for version \"%s\""
+msgstr "扩展 \"%s\" 没有安装脚本,也没有版本\"%s\"的更新路径"
+
+#: commands/extension.c:1426
#, c-format
msgid "extension \"%s\" must be installed in schema \"%s\""
msgstr "扩展\"%s\"已经安装到模式\"%s\"中了"
-#: commands/extension.c:1435
+#: commands/extension.c:1586
#, c-format
-#| msgid "collation mismatch between explicit collations \"%s\" and \"%s\""
msgid "cyclic dependency detected between extensions \"%s\" and \"%s\""
msgstr "在扩展 \"%s\" 和 \"%s\" 之间检测到循环依赖"
-#: commands/extension.c:1440
+#: commands/extension.c:1591
#, c-format
-#| msgid "invalid extension name: \"%s\""
msgid "installing required extension \"%s\""
msgstr "正在安装所需的扩展 \"%s\""
-#: commands/extension.c:1468 commands/extension.c:2923
+#: commands/extension.c:1615
#, c-format
msgid "required extension \"%s\" is not installed"
msgstr "所需要的扩展\"%s\"没被安装"
-#: commands/extension.c:1470
+#: commands/extension.c:1618
#, c-format
-#| msgid "Use ALTER ... CASCADE to alter the typed tables too."
-msgid "Use CREATE EXTENSION CASCADE to install required extensions too."
-msgstr "请使用 CREATE EXTENSION CASCADE 安装所需的扩展。"
+msgid "Use CREATE EXTENSION ... CASCADE to install required extensions too."
+msgstr "请使用 CREATE EXTENSION ... CASCADE 安装所需的扩展。"
-#: commands/extension.c:1534
+#: commands/extension.c:1655
#, c-format
msgid "extension \"%s\" already exists, skipping"
msgstr "扩展 \"%s\" 已经存在,跳过"
-#: commands/extension.c:1541
+#: commands/extension.c:1662
#, c-format
msgid "extension \"%s\" already exists"
msgstr "扩展 \"%s\" 已经存在"
-#: commands/extension.c:1552
+#: commands/extension.c:1673
#, c-format
msgid "nested CREATE EXTENSION is not supported"
msgstr "不支持嵌套的CREATE EXTENSION"
-#: commands/extension.c:1680
+#: commands/extension.c:1854
#, c-format
msgid "cannot drop extension \"%s\" because it is being modified"
msgstr "无法删除扩展\"%s\",因为它正被修改中"
-#: commands/extension.c:2151
+#: commands/extension.c:2356
#, c-format
-msgid ""
-"pg_extension_config_dump() can only be called from an SQL script executed by "
-"CREATE EXTENSION"
+msgid "pg_extension_config_dump() can only be called from an SQL script executed by CREATE EXTENSION"
msgstr "pg_extension_config_dump() 只能在执行 CREATE EXTENSION的SQL脚本里调用"
-#: commands/extension.c:2163
+#: commands/extension.c:2368
#, c-format
msgid "OID %u does not refer to a table"
msgstr "OID %u没有引用任何表"
-#: commands/extension.c:2168
+#: commands/extension.c:2373
#, c-format
msgid "table \"%s\" is not a member of the extension being created"
msgstr "表\"%s\"不是被创建的任何一个扩展的成员"
-#: commands/extension.c:2533
+#: commands/extension.c:2729
#, c-format
-msgid ""
-"cannot move extension \"%s\" into schema \"%s\" because the extension "
-"contains the schema"
+msgid "cannot move extension \"%s\" into schema \"%s\" because the extension contains the schema"
msgstr "不能将扩展 \"%s\" 转移到模式 \"%s\" 里,因为该扩展已经拥有该模式"
-#: commands/extension.c:2573 commands/extension.c:2636
+#: commands/extension.c:2770 commands/extension.c:2833
#, c-format
msgid "extension \"%s\" does not support SET SCHEMA"
msgstr "扩展 \"%s\" 不支持SET SCHEMA操作"
-#: commands/extension.c:2638
+#: commands/extension.c:2835
#, c-format
msgid "%s is not in the extension's schema \"%s\""
msgstr "扩展模式\"%2$s\"中不存在%1$s"
-#: commands/extension.c:2698
+#: commands/extension.c:2894
#, c-format
msgid "nested ALTER EXTENSION is not supported"
msgstr "不支持使用嵌套的ALTER EXTENSION"
-#: commands/extension.c:2789
+#: commands/extension.c:2986
#, c-format
msgid "version \"%s\" of extension \"%s\" is already installed"
msgstr "扩展\"%2$s\"的版本\"%1$s\"已经安装"
-#: commands/extension.c:3040
+#: commands/extension.c:3237
#, c-format
-msgid ""
-"cannot add schema \"%s\" to extension \"%s\" because the schema contains the "
-"extension"
+msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension"
msgstr "无法为扩展\"%2$s\"添加模式\"%1$s\",因为该模式已经包含此扩展"
-#: commands/extension.c:3058
+#: commands/extension.c:3265
#, c-format
msgid "%s is not a member of extension \"%s\""
msgstr "%s不是扩展的成员\"%s\""
-#: commands/extension.c:3114
+#: commands/extension.c:3331
#, c-format
msgid "file \"%s\" is too large"
msgstr "文件\"%s\"太大"
msgid "The owner of a foreign-data wrapper must be a superuser."
msgstr "外部数据封装器的属主必须是超级用户."
-#: commands/foreigncmds.c:292 commands/foreigncmds.c:709 foreign/foreign.c:777
+#: commands/foreigncmds.c:291 commands/foreigncmds.c:706 foreign/foreign.c:667
#, c-format
msgid "foreign-data wrapper \"%s\" does not exist"
msgstr "外部数据封装器 \"%s\" 不存在"
-#: commands/foreigncmds.c:584
+#: commands/foreigncmds.c:582
#, c-format
msgid "permission denied to create foreign-data wrapper \"%s\""
msgstr "创建外部数据封装器\"%s\"失败"
-#: commands/foreigncmds.c:586
+#: commands/foreigncmds.c:584
#, c-format
msgid "Must be superuser to create a foreign-data wrapper."
msgstr "只有超级用户能创建外部数据封装器"
-#: commands/foreigncmds.c:699
+#: commands/foreigncmds.c:696
#, c-format
msgid "permission denied to alter foreign-data wrapper \"%s\""
msgstr "不允许修改外部数据封装器\"%s\""
-#: commands/foreigncmds.c:701
+#: commands/foreigncmds.c:698
#, c-format
msgid "Must be superuser to alter a foreign-data wrapper."
msgstr "只有超级用户才能修改一个外部数据封装器."
-#: commands/foreigncmds.c:732
+#: commands/foreigncmds.c:729
#, c-format
-msgid ""
-"changing the foreign-data wrapper handler can change behavior of existing "
-"foreign tables"
+msgid "changing the foreign-data wrapper handler can change behavior of existing foreign tables"
msgstr "改变外部数据封装器可能会改变现存的外部表的行为"
-#: commands/foreigncmds.c:747
+#: commands/foreigncmds.c:744
#, c-format
-msgid ""
-"changing the foreign-data wrapper validator can cause the options for "
-"dependent objects to become invalid"
+msgid "changing the foreign-data wrapper validator can cause the options for dependent objects to become invalid"
msgstr "改变外部数据封装器的验证能够使所它依赖对象的选项变为无效"
-#: commands/foreigncmds.c:1169
+#: commands/foreigncmds.c:890
+#, c-format
+msgid "server \"%s\" already exists, skipping"
+msgstr "服务 \"%s\" 已存在, 跳过"
+
+#: commands/foreigncmds.c:1175
+#, c-format
+msgid "user mapping for \"%s\" already exists for server %s, skipping"
+msgstr "对于服务器%2$s,用户映射\"%1$s\"已存在, 跳过"
+
+#: commands/foreigncmds.c:1185
#, c-format
-msgid "user mapping \"%s\" already exists for server %s"
+msgid "user mapping for \"%s\" already exists for server %s"
msgstr "对于服务器%2$s,用户映射\"%1$s\"已存在 "
-#: commands/foreigncmds.c:1267 commands/foreigncmds.c:1388
+#: commands/foreigncmds.c:1282 commands/foreigncmds.c:1397
#, c-format
-msgid "user mapping \"%s\" does not exist for the server"
+msgid "user mapping for \"%s\" does not exist for the server"
msgstr "对于服务器来说,用户映射\"%s\"不存在"
-#: commands/foreigncmds.c:1375
+#: commands/foreigncmds.c:1384
#, c-format
msgid "server does not exist, skipping"
msgstr "服务器不存在,跳过"
-#: commands/foreigncmds.c:1393
+#: commands/foreigncmds.c:1402
#, c-format
-msgid "user mapping \"%s\" does not exist for the server, skipping"
+msgid "user mapping for \"%s\" does not exist for the server, skipping"
msgstr "用户映射\"%s\"对于服务器来说不存在,跳过"
-#: commands/foreigncmds.c:1545 foreign/foreign.c:467
+#: commands/foreigncmds.c:1553 foreign/foreign.c:357
#, c-format
msgid "foreign-data wrapper \"%s\" has no handler"
msgstr "外部数据封装器 \"%s\"没有处理函数"
-#: commands/foreigncmds.c:1551
+#: commands/foreigncmds.c:1559
#, c-format
msgid "foreign-data wrapper \"%s\" does not support IMPORT FOREIGN SCHEMA"
msgstr "外部数据包装器\"%s\"不支持IMPORT FOREIGN SCHEMA"
-#: commands/foreigncmds.c:1644
+#: commands/foreigncmds.c:1662
#, c-format
msgid "importing foreign table \"%s\""
msgstr "导入外部表\"%s\""
-#: commands/functioncmds.c:99
+#: commands/functioncmds.c:104
#, c-format
msgid "SQL function cannot return shell type %s"
msgstr "SQL 函数不能返回 shell 类型 %s"
-#: commands/functioncmds.c:104
+#: commands/functioncmds.c:109
#, c-format
msgid "return type %s is only a shell"
msgstr "返回类型 %s 只是一个 shell"
-#: commands/functioncmds.c:134 parser/parse_type.c:337
+#: commands/functioncmds.c:139 parser/parse_type.c:337
#, c-format
msgid "type modifier cannot be specified for shell type \"%s\""
msgstr "不能为shell类型\"%s\"指定类型修改器"
-#: commands/functioncmds.c:140
+#: commands/functioncmds.c:145
#, c-format
msgid "type \"%s\" is not yet defined"
msgstr "类型 \"%s\" 仍没被定义"
-#: commands/functioncmds.c:141
+#: commands/functioncmds.c:146
#, c-format
msgid "Creating a shell type definition."
msgstr "创建一个 shell 类型定义."
-#: commands/functioncmds.c:239
+#: commands/functioncmds.c:238
#, c-format
msgid "SQL function cannot accept shell type %s"
msgstr "SQL 函数不能接收 shell 类型 %s"
-#: commands/functioncmds.c:245
+#: commands/functioncmds.c:244
#, c-format
msgid "aggregate cannot accept shell type %s"
msgstr "聚集函数不能接收 shell 类型 %s"
-#: commands/functioncmds.c:250
+#: commands/functioncmds.c:249
#, c-format
msgid "argument type %s is only a shell"
msgstr "参数类型 %s 只是一个 shell"
-#: commands/functioncmds.c:260
+#: commands/functioncmds.c:259
#, c-format
msgid "type %s does not exist"
msgstr "类型 %s 不存在"
-#: commands/functioncmds.c:274
+#: commands/functioncmds.c:273
#, c-format
msgid "aggregates cannot accept set arguments"
msgstr "聚合函数不能接受集合类型参数"
-#: commands/functioncmds.c:278
+#: commands/functioncmds.c:277
+#, c-format
+msgid "procedures cannot accept set arguments"
+msgstr "过程不能接受集合类型参数"
+
+#: commands/functioncmds.c:281
#, c-format
msgid "functions cannot accept set arguments"
msgstr "函数不能接收设定参数"
-#: commands/functioncmds.c:288
+#: commands/functioncmds.c:289
+#, c-format
+msgid "procedures cannot have OUT arguments"
+msgstr "过程不能有输出参数"
+
+#: commands/functioncmds.c:290
+#, c-format
+msgid "INOUT arguments are permitted."
+msgstr "允许输入输出参数."
+
+#: commands/functioncmds.c:300
#, c-format
msgid "VARIADIC parameter must be the last input parameter"
msgstr "参数VARIADIC必须是最后一个输入参数"
-#: commands/functioncmds.c:316
+#: commands/functioncmds.c:330
#, c-format
msgid "VARIADIC parameter must be an array"
msgstr "参数VARIADIC必须是一个数组"
-#: commands/functioncmds.c:356
+#: commands/functioncmds.c:370
#, c-format
msgid "parameter name \"%s\" used more than once"
msgstr "多次使用参数名称 \"%s\""
-#: commands/functioncmds.c:371
+#: commands/functioncmds.c:385
#, c-format
msgid "only input parameters can have default values"
msgstr "只有输入参数才能有缺省值"
-#: commands/functioncmds.c:386
+#: commands/functioncmds.c:400
#, c-format
msgid "cannot use table references in parameter default value"
msgstr "在参数缺省值中不能使用表引用"
-#: commands/functioncmds.c:410
+#: commands/functioncmds.c:424
#, c-format
msgid "input parameters after one with a default value must also have defaults"
msgstr "在带有缺省值参数后面的输入参数必须也带有缺省值."
-#: commands/functioncmds.c:701
+#: commands/functioncmds.c:566 commands/functioncmds.c:716
+#, c-format
+msgid "invalid attribute in procedure definition"
+msgstr "过程定义中的属性无效"
+
+#: commands/functioncmds.c:747
#, c-format
msgid "no function body specified"
msgstr "没有指定函数体"
-#: commands/functioncmds.c:711
+#: commands/functioncmds.c:757
#, c-format
msgid "no language specified"
msgstr "没有指定语言"
-#: commands/functioncmds.c:736 commands/functioncmds.c:1243
+#: commands/functioncmds.c:782 commands/functioncmds.c:1256
#, c-format
msgid "COST must be positive"
msgstr "COST必需为正数"
-#: commands/functioncmds.c:744 commands/functioncmds.c:1251
+#: commands/functioncmds.c:790 commands/functioncmds.c:1264
#, c-format
msgid "ROWS must be positive"
msgstr "ROWS必需为正数"
-#: commands/functioncmds.c:785
-#, c-format
-msgid "unrecognized function attribute \"%s\" ignored"
-msgstr "忽略未认可的函数属性 \"%s\""
-
-#: commands/functioncmds.c:836
+#: commands/functioncmds.c:842
#, c-format
msgid "only one AS item needed for language \"%s\""
msgstr "对于 \"%s\" 语言只能要求一个 AS 项目"
-#: commands/functioncmds.c:929 commands/functioncmds.c:2119
-#: commands/proclang.c:563
+#: commands/functioncmds.c:937 commands/functioncmds.c:2139
+#: commands/proclang.c:557
#, c-format
msgid "language \"%s\" does not exist"
msgstr "语言 \"%s\" 不存在"
-#: commands/functioncmds.c:931 commands/functioncmds.c:2121
+#: commands/functioncmds.c:939 commands/functioncmds.c:2141
#, c-format
-msgid "Use CREATE LANGUAGE to load the language into the database."
-msgstr "使用CREATE LANGUAGE向数据库加载语言."
+msgid "Use CREATE EXTENSION to load the language into the database."
+msgstr "使用CREATE EXTENSION向数据库加载语言."
-#: commands/functioncmds.c:966 commands/functioncmds.c:1235
+#: commands/functioncmds.c:974 commands/functioncmds.c:1248
#, c-format
msgid "only superuser can define a leakproof function"
msgstr "只有超级用户才能定义一个密封函数"
-#: commands/functioncmds.c:1010
+#: commands/functioncmds.c:1023
#, c-format
msgid "function result type must be %s because of OUT parameters"
msgstr "因为OUT参数,函数的结果类型必须是%s"
-#: commands/functioncmds.c:1023
+#: commands/functioncmds.c:1036
#, c-format
msgid "function result type must be specified"
msgstr "必须指定函数返回结果的类型"
-#: commands/functioncmds.c:1077 commands/functioncmds.c:1255
+#: commands/functioncmds.c:1088 commands/functioncmds.c:1268
#, c-format
msgid "ROWS is not applicable when function does not return a set"
msgstr "当转换函数不返回一个组合时,不适用ROWS"
-#: commands/functioncmds.c:1412
+#: commands/functioncmds.c:1440
#, c-format
msgid "source data type %s is a pseudo-type"
msgstr "源数据类型 %s 是一个伪类型"
-#: commands/functioncmds.c:1418
+#: commands/functioncmds.c:1446
#, c-format
msgid "target data type %s is a pseudo-type"
msgstr "目标数据类型 %s 是一个伪类型"
-#: commands/functioncmds.c:1442
+#: commands/functioncmds.c:1470
#, c-format
msgid "cast will be ignored because the source data type is a domain"
msgstr "转换将被忽略,因为源数据类型是一个域"
-#: commands/functioncmds.c:1447
+#: commands/functioncmds.c:1475
#, c-format
msgid "cast will be ignored because the target data type is a domain"
msgstr "转换将被忽略,因为目标数据类型是一个域"
-#: commands/functioncmds.c:1474
+#: commands/functioncmds.c:1500
#, c-format
msgid "cast function must take one to three arguments"
msgstr "类型转换函数只能带一到三个参数"
-#: commands/functioncmds.c:1478
+#: commands/functioncmds.c:1504
#, c-format
-msgid ""
-"argument of cast function must match or be binary-coercible from source data "
-"type"
+msgid "argument of cast function must match or be binary-coercible from source data type"
msgstr "功能指派函数的参数必须匹配或者是或者从源数据类型以二进制方式强制转换的"
-#: commands/functioncmds.c:1482
+#: commands/functioncmds.c:1508
#, c-format
-msgid "second argument of cast function must be type integer"
-msgstr "类型转换函数的第二个参数必须为整型"
+msgid "second argument of cast function must be type %s"
+msgstr "类型转换函数的第二个参数必须为类型%s"
-#: commands/functioncmds.c:1486
+#: commands/functioncmds.c:1513
#, c-format
-msgid "third argument of cast function must be type boolean"
-msgstr "类型转换函数的第三个参数必须为布尔类型"
+msgid "third argument of cast function must be type %s"
+msgstr "类型转换函数的第三个参数必须为类型%s"
-#: commands/functioncmds.c:1490
+#: commands/functioncmds.c:1518
#, c-format
-msgid ""
-"return data type of cast function must match or be binary-coercible to "
-"target data type"
+msgid "return data type of cast function must match or be binary-coercible to target data type"
msgstr "功能指派函数的返回数据类型必须匹配或者强制二进制方式转换的目标数据类型"
-#: commands/functioncmds.c:1501
+#: commands/functioncmds.c:1529
#, c-format
msgid "cast function must not be volatile"
msgstr "类型转换函数不能为易失的 (volatile)"
-#: commands/functioncmds.c:1506
-#, c-format
-msgid "cast function must not be an aggregate function"
-msgstr "转换函数不能是一个聚合函数"
-
-#: commands/functioncmds.c:1510
+#: commands/functioncmds.c:1534
#, c-format
-msgid "cast function must not be a window function"
-msgstr "å\8a\9fè\83½è½¬æ\8d¢å\87½æ\95°ä¸\8dè\83½ä½¿çª\97å\8f£函数"
+msgid "cast function must be a normal function"
+msgstr "强转æ\8d¢å\87½æ\95°å¿\85é¡»æ\98¯æ\99®é\80\9a函数"
-#: commands/functioncmds.c:1514
+#: commands/functioncmds.c:1538
#, c-format
msgid "cast function must not return a set"
msgstr "转换函数不能返回一个组合"
-#: commands/functioncmds.c:1540
+#: commands/functioncmds.c:1564
#, c-format
msgid "must be superuser to create a cast WITHOUT FUNCTION"
msgstr "只有超级用户能创建一个非函数的类型转换"
-#: commands/functioncmds.c:1555
+#: commands/functioncmds.c:1579
#, c-format
msgid "source and target data types are not physically compatible"
msgstr "源数据类型和目标数据类型不相容"
-#: commands/functioncmds.c:1570
+#: commands/functioncmds.c:1594
#, c-format
msgid "composite data types are not binary-compatible"
msgstr "组合数据类型不是二进制兼容"
-#: commands/functioncmds.c:1576
+#: commands/functioncmds.c:1600
#, c-format
msgid "enum data types are not binary-compatible"
msgstr "枚举数据类型不是二进制兼容"
-#: commands/functioncmds.c:1582
+#: commands/functioncmds.c:1606
#, c-format
msgid "array data types are not binary-compatible"
msgstr "数组数据类型不是二进制兼容的"
-#: commands/functioncmds.c:1599
+#: commands/functioncmds.c:1623
#, c-format
msgid "domain data types must not be marked binary-compatible"
msgstr "域数据类型不能标为二进制兼容"
-#: commands/functioncmds.c:1609
+#: commands/functioncmds.c:1633
#, c-format
msgid "source data type and target data type are the same"
msgstr "源数据类型和目标数据类型相同"
-#: commands/functioncmds.c:1642
+#: commands/functioncmds.c:1666
#, c-format
msgid "cast from type %s to type %s already exists"
msgstr "类型 %s 到 %s 的转换已经存在"
-#: commands/functioncmds.c:1717
+#: commands/functioncmds.c:1739
#, c-format
msgid "cast from type %s to type %s does not exist"
msgstr "类型 %s 到类型 %s 的转换不存在"
-#: commands/functioncmds.c:1756
+#: commands/functioncmds.c:1778
#, c-format
msgid "transform function must not be volatile"
msgstr "转换函数不能是不稳定的 (volatile)"
-#: commands/functioncmds.c:1760
-#, c-format
-msgid "transform function must not be an aggregate function"
-msgstr "转换函数不能是一个聚集函数"
-
-#: commands/functioncmds.c:1764
+#: commands/functioncmds.c:1782
#, c-format
-msgid "transform function must not be a window function"
-msgstr "转换函数不能是一个窗口函数"
+msgid "transform function must be a normal function"
+msgstr "转换函数必须是普通函数"
-#: commands/functioncmds.c:1768
+#: commands/functioncmds.c:1786
#, c-format
msgid "transform function must not return a set"
msgstr "转换函数不能返回一个集合"
-#: commands/functioncmds.c:1772
+#: commands/functioncmds.c:1790
#, c-format
msgid "transform function must take one argument"
msgstr "转换函数必须有一个参数"
-#: commands/functioncmds.c:1776
+#: commands/functioncmds.c:1794
#, c-format
-msgid "first argument of transform function must be type \"internal\""
-msgstr "转换函数的第一个参数必须为类型\"internal\""
+msgid "first argument of transform function must be type %s"
+msgstr "转换函数的第一个参数必须为类型%s"
-#: commands/functioncmds.c:1813
+#: commands/functioncmds.c:1832
#, c-format
msgid "data type %s is a pseudo-type"
msgstr "数据类型 %s是一个伪类型"
-#: commands/functioncmds.c:1819
+#: commands/functioncmds.c:1838
#, c-format
msgid "data type %s is a domain"
msgstr "数据类型%s是一个域"
-#: commands/functioncmds.c:1859
+#: commands/functioncmds.c:1878
#, c-format
-msgid "return data type of FROM SQL function must be \"internal\""
-msgstr "FROM SQL函数的返回数据类型必须是\"internal\""
+msgid "return data type of FROM SQL function must be %s"
+msgstr "FROM SQL函数的返回数据类型必须是%s"
-#: commands/functioncmds.c:1884
+#: commands/functioncmds.c:1904
#, c-format
msgid "return data type of TO SQL function must be the transform data type"
msgstr "TO SQL函数的返回数据类型必须是转换数据类型"
-#: commands/functioncmds.c:1911
+#: commands/functioncmds.c:1931
#, c-format
msgid "transform for type %s language \"%s\" already exists"
msgstr "类型%s语言\"%s\"的转换已经存在"
-#: commands/functioncmds.c:2002
+#: commands/functioncmds.c:2020
#, c-format
msgid "transform for type %s language \"%s\" does not exist"
msgstr "类型%s语言\"%s\"的转换不存在"
-#: commands/functioncmds.c:2053
+#: commands/functioncmds.c:2071
#, c-format
msgid "function %s already exists in schema \"%s\""
msgstr "在模式 \"%2$s\" 中函数 %1$s 已经存在"
-#: commands/functioncmds.c:2106
+#: commands/functioncmds.c:2126
#, c-format
msgid "no inline code specified"
msgstr "没有指定内联代码"
-#: commands/functioncmds.c:2151
+#: commands/functioncmds.c:2172
#, c-format
msgid "language \"%s\" does not support inline code execution"
msgstr "语言 \"%s\" 不支持执行内联代码"
-#: commands/indexcmds.c:349
+#: commands/functioncmds.c:2284
+#, c-format
+msgid "cannot pass more than %d argument to a procedure"
+msgid_plural "cannot pass more than %d arguments to a procedure"
+msgstr[0] "向过程传递的参数不多于%d个"
+
+#: commands/indexcmds.c:393
#, c-format
msgid "must specify at least one column"
msgstr "必需至少指定一个字段"
-#: commands/indexcmds.c:353
+#: commands/indexcmds.c:397
#, c-format
msgid "cannot use more than %d columns in an index"
msgstr "在一个索引中不能使用超过 %d 个字段"
-#: commands/indexcmds.c:384
+#: commands/indexcmds.c:437
#, c-format
msgid "cannot create index on foreign table \"%s\""
msgstr "外部表\"%s\"上无法创建索引"
-#: commands/indexcmds.c:399
+#: commands/indexcmds.c:462
+#, c-format
+msgid "cannot create index on partitioned table \"%s\" concurrently"
+msgstr "无法同时在分区表\"%s\"上创建索引"
+
+#: commands/indexcmds.c:467
+#, c-format
+msgid "cannot create exclusion constraints on partitioned table \"%s\""
+msgstr "无法在分区表\"%s\"上创建排他约束"
+
+#: commands/indexcmds.c:477
#, c-format
msgid "cannot create indexes on temporary tables of other sessions"
msgstr "不能在其他会话的临时表上创建索引"
-#: commands/indexcmds.c:454 commands/tablecmds.c:545 commands/tablecmds.c:9599
+#: commands/indexcmds.c:542 commands/tablecmds.c:617 commands/tablecmds.c:11445
+#: commands/tablecmds.c:11579
#, c-format
msgid "only shared relations can be placed in pg_global tablespace"
msgstr "在pg_global表空间中只能放置共享关系"
-#: commands/indexcmds.c:487
+#: commands/indexcmds.c:575
#, c-format
msgid "substituting access method \"gist\" for obsolete method \"rtree\""
msgstr "将已作废的方法\"rtree\"替换为访问方法\"gist\" "
-#: commands/indexcmds.c:505
-#, c-format
-msgid "hash indexes are not WAL-logged and their use is discouraged"
-msgstr "哈希索引不被WAL记录并且不鼓励使用它们"
-
-#: commands/indexcmds.c:510
+#: commands/indexcmds.c:593
#, c-format
msgid "access method \"%s\" does not support unique indexes"
msgstr "存取方法 \"%s\" 不支持唯一索引"
-#: commands/indexcmds.c:515
+#: commands/indexcmds.c:598
+#, c-format
+msgid "access method \"%s\" does not support included columns"
+msgstr "存取方法 \"%s\" 不支持包含的列"
+
+#: commands/indexcmds.c:603
#, c-format
msgid "access method \"%s\" does not support multicolumn indexes"
msgstr "存取方法 \"%s\" 不支持多字段索引"
-#: commands/indexcmds.c:520
+#: commands/indexcmds.c:608
#, c-format
msgid "access method \"%s\" does not support exclusion constraints"
msgstr "访问方法 \"%s\" 不支持排他约束"
-#: commands/indexcmds.c:590 commands/indexcmds.c:610
+#: commands/indexcmds.c:720
+#, c-format
+msgid "unsupported %s constraint with partition key definition"
+msgstr "不支持带分区键定义的%s约束"
+
+#: commands/indexcmds.c:722
+#, c-format
+msgid "%s constraints cannot be used when partition keys include expressions."
+msgstr "当分区键包含表达式时,不能使用%s约束."
+
+#: commands/indexcmds.c:740
+#, c-format
+msgid "insufficient columns in %s constraint definition"
+msgstr "%s约束定义中的列不足"
+
+#: commands/indexcmds.c:742
+#, c-format
+msgid "%s constraint on table \"%s\" lacks column \"%s\" which is part of the partition key."
+msgstr "表\"%2$s\"上的约束%1$s缺少列\"%3$s\",该列是分区键的一部分."
+
+#: commands/indexcmds.c:761 commands/indexcmds.c:781
#, c-format
-#| msgid "concurrent index creation on system catalog tables is not supported"
msgid "index creation on system columns is not supported"
msgstr "不支持在系统列上创建索引"
-#: commands/indexcmds.c:635
+#: commands/indexcmds.c:806
#, c-format
msgid "%s %s will create implicit index \"%s\" for table \"%s\""
msgstr "%1$s %2$s 将要为表 \"%4$s\" 创建隐含索引 \"%3$s\""
-#: commands/indexcmds.c:982
+#: commands/indexcmds.c:1402
#, c-format
msgid "functions in index predicate must be marked IMMUTABLE"
msgstr "索引声明中函数必需标记为 IMMUTABLE"
-#: commands/indexcmds.c:1048 parser/parse_utilcmd.c:1894
+#: commands/indexcmds.c:1468 parser/parse_utilcmd.c:2237
+#: parser/parse_utilcmd.c:2361
#, c-format
msgid "column \"%s\" named in key does not exist"
msgstr "在键字中命名的字段 \"%s\" 不存在"
-#: commands/indexcmds.c:1108
+#: commands/indexcmds.c:1492 parser/parse_utilcmd.c:1586
+#, c-format
+msgid "expressions are not supported in included columns"
+msgstr "包含的列中不支持表达式"
+
+#: commands/indexcmds.c:1533
#, c-format
msgid "functions in index expression must be marked IMMUTABLE"
msgstr "索引表达式中函数必需标记为 IMMUTABLE"
-#: commands/indexcmds.c:1131
+#: commands/indexcmds.c:1548
+#, c-format
+msgid "including column does not support a collation"
+msgstr "包含的列不支持排序规则"
+
+# sql_help.h:61
+#: commands/indexcmds.c:1552
+#, c-format
+msgid "including column does not support an operator class"
+msgstr "包含的列不支持运算符类"
+
+#: commands/indexcmds.c:1556
+#, c-format
+msgid "including column does not support ASC/DESC options"
+msgstr "包含的列不支持ASC/DESC选项"
+
+#: commands/indexcmds.c:1560
+#, c-format
+msgid "including column does not support NULLS FIRST/LAST options"
+msgstr "包含的列不支持NULLS FIRST/LAST选项"
+
+#: commands/indexcmds.c:1587
#, c-format
msgid "could not determine which collation to use for index expression"
msgstr "索引表达式上无法确定使用哪个排序规则"
-#: commands/indexcmds.c:1139 commands/typecmds.c:827 parser/parse_expr.c:2559
-#: parser/parse_type.c:550 parser/parse_utilcmd.c:2820 utils/adt/misc.c:666
+#: commands/indexcmds.c:1595 commands/tablecmds.c:14379 commands/typecmds.c:833
+#: parser/parse_expr.c:2772 parser/parse_type.c:549 parser/parse_utilcmd.c:3392
+#: utils/adt/misc.c:681
#, c-format
msgid "collations are not supported by type %s"
msgstr "类型%s不能使用排序规则"
-#: commands/indexcmds.c:1177
+#: commands/indexcmds.c:1633
#, c-format
msgid "operator %s is not commutative"
msgstr "操作符%s不是可交换的"
-#: commands/indexcmds.c:1179
+#: commands/indexcmds.c:1635
#, c-format
msgid "Only commutative operators can be used in exclusion constraints."
msgstr "只有可交换操作符能够在排他约束中使用."
-#: commands/indexcmds.c:1205
+#: commands/indexcmds.c:1661
#, c-format
msgid "operator %s is not a member of operator family \"%s\""
msgstr "操作符%s不是操作符表\"%s\"的成员"
-#: commands/indexcmds.c:1208
+#: commands/indexcmds.c:1664
#, c-format
-msgid ""
-"The exclusion operator must be related to the index operator class for the "
-"constraint."
+msgid "The exclusion operator must be related to the index operator class for the constraint."
msgstr "排他操作符必须和用于约束的索引操作符级别相关联"
-#: commands/indexcmds.c:1243
+#: commands/indexcmds.c:1699
#, c-format
msgid "access method \"%s\" does not support ASC/DESC options"
msgstr "访问方法 \"%s\" 不支持ASC/DESC选项"
-#: commands/indexcmds.c:1248
+#: commands/indexcmds.c:1704
#, c-format
msgid "access method \"%s\" does not support NULLS FIRST/LAST options"
msgstr "访问方法 \"%s\" 不支持NULLS FIRST/LAST选项"
-#: commands/indexcmds.c:1304 commands/typecmds.c:1935
+#: commands/indexcmds.c:1763 commands/typecmds.c:1996
#, c-format
msgid "data type %s has no default operator class for access method \"%s\""
msgstr "对访问方法 \"%2$s\" 数据类型 %1$s 没有默认的操作符表"
-#: commands/indexcmds.c:1306
+#: commands/indexcmds.c:1765
#, c-format
-msgid ""
-"You must specify an operator class for the index or define a default "
-"operator class for the data type."
+msgid "You must specify an operator class for the index or define a default operator class for the data type."
msgstr "你必须指定一个操作符表给索引或定义一个默认的操作符表给数据类型."
-#: commands/indexcmds.c:1335 commands/indexcmds.c:1343
-#: commands/opclasscmds.c:205
+#: commands/indexcmds.c:1794 commands/indexcmds.c:1802
+#: commands/opclasscmds.c:206
#, c-format
msgid "operator class \"%s\" does not exist for access method \"%s\""
msgstr "处理方法 \"%s\" 的操作符类 \"%s\" 不存在"
-#: commands/indexcmds.c:1356 commands/typecmds.c:1923
+#: commands/indexcmds.c:1815 commands/typecmds.c:1984
#, c-format
msgid "operator class \"%s\" does not accept data type %s"
msgstr "操作符表 \"%s\" 不能处理数据类型 %s"
-#: commands/indexcmds.c:1446
+#: commands/indexcmds.c:1905
#, c-format
msgid "there are multiple default operator classes for data type %s"
msgstr "数据类型 %s 有多个默认的操作符表"
-#: commands/indexcmds.c:1837
+#: commands/indexcmds.c:2320
#, c-format
msgid "table \"%s\" has no indexes"
msgstr "表 \"%s\" 没有索引"
-#: commands/indexcmds.c:1892
+#: commands/indexcmds.c:2375
#, c-format
msgid "can only reindex the currently open database"
msgstr "只能在当前打开的数据库上重建索引"
-#: commands/indexcmds.c:1994
+#: commands/indexcmds.c:2493
#, c-format
msgid "table \"%s.%s\" was reindexed"
msgstr "表 \"%s.%s\" 已被重新索引"
-#: commands/matview.c:181
+#: commands/indexcmds.c:2515
+#, c-format
+msgid "REINDEX is not yet implemented for partitioned indexes"
+msgstr "对于分区索引,没有实现REINDEX"
+
+#: commands/lockcmds.c:102
+#, c-format
+msgid "\"%s\" is not a table or a view"
+msgstr "\"%s\" 不是一个视图或视图"
+
+#: commands/lockcmds.c:234 rewrite/rewriteHandler.c:1836
+#: rewrite/rewriteHandler.c:3532
+#, c-format
+msgid "infinite recursion detected in rules for relation \"%s\""
+msgstr "在关系 \"%s\" 的规则中发现无限循环"
+
+#: commands/matview.c:179
#, c-format
msgid "CONCURRENTLY cannot be used when the materialized view is not populated"
msgstr "CONCURRENTLY 不能用于物化视图未被产生之前"
-#: commands/matview.c:187
+#: commands/matview.c:185
#, c-format
msgid "CONCURRENTLY and WITH NO DATA options cannot be used together"
msgstr "CONCURRENTLY 和 WITH NO DATA 两个选项不能同时使用"
# describe.c:933
-#: commands/matview.c:258
+#: commands/matview.c:244
#, c-format
msgid "cannot refresh materialized view \"%s\" concurrently"
msgstr "不能同时刷新物化视图 \"%s\""
-#: commands/matview.c:261
+#: commands/matview.c:247
#, c-format
-msgid ""
-"Create a unique index with no WHERE clause on one or more columns of the "
-"materialized view."
+msgid "Create a unique index with no WHERE clause on one or more columns of the materialized view."
msgstr "在物化视图的一个或多个列上创建不带WHERE子句的唯一索引."
-#: commands/matview.c:656
+#: commands/matview.c:645
#, c-format
-msgid ""
-"new data for materialized view \"%s\" contains duplicate rows without any "
-"null columns"
+msgid "new data for materialized view \"%s\" contains duplicate rows without any null columns"
msgstr "物化视图\"%s\"的新数据包含重复的没有空值列的行"
-#: commands/matview.c:658
+#: commands/matview.c:647
#, c-format
msgid "Row: %s"
msgstr "行: %s"
-#: commands/opclasscmds.c:126
+#: commands/opclasscmds.c:127
#, c-format
msgid "operator family \"%s\" does not exist for access method \"%s\""
msgstr "访问方法\"%2$s\"的操作符表 \"%1$s\" 不存在"
-#: commands/opclasscmds.c:264
+#: commands/opclasscmds.c:265
#, c-format
msgid "operator family \"%s\" for access method \"%s\" already exists"
msgstr "访问方法 \"%2$s\" 操作符表 \"%1$s\" 已经存在"
-#: commands/opclasscmds.c:404
+#: commands/opclasscmds.c:403
#, c-format
msgid "must be superuser to create an operator class"
msgstr "只有超级用户能创建一个操作符表"
-#: commands/opclasscmds.c:478 commands/opclasscmds.c:863
-#: commands/opclasscmds.c:996
+#: commands/opclasscmds.c:476 commands/opclasscmds.c:850
+#: commands/opclasscmds.c:974
#, c-format
msgid "invalid operator number %d, must be between 1 and %d"
msgstr "无效的操作符号 %d, 必需在 1 到 %d 之间"
-#: commands/opclasscmds.c:529 commands/opclasscmds.c:914
-#: commands/opclasscmds.c:1011
+#: commands/opclasscmds.c:520 commands/opclasscmds.c:894
+#: commands/opclasscmds.c:989
#, c-format
-msgid "invalid procedure number %d, must be between 1 and %d"
-msgstr "无效的过程号 %d, 必需在 1 到 %d 之间"
+msgid "invalid function number %d, must be between 1 and %d"
+msgstr "无效的函数号 %d, 必需在 1 到 %d 之间"
-#: commands/opclasscmds.c:559
+#: commands/opclasscmds.c:549
#, c-format
msgid "storage type specified more than once"
msgstr "存储类型指定了多次"
-#: commands/opclasscmds.c:586
+#: commands/opclasscmds.c:576
#, c-format
-msgid ""
-"storage type cannot be different from data type for access method \"%s\""
+msgid "storage type cannot be different from data type for access method \"%s\""
msgstr "存储类型应该和用于访问方法 \"%s\" 数据类型一样"
-#: commands/opclasscmds.c:602
+#: commands/opclasscmds.c:592
#, c-format
msgid "operator class \"%s\" for access method \"%s\" already exists"
msgstr "访问方法 \"%2$s\" 操作符表 \"%1$s\" 已经存在"
-#: commands/opclasscmds.c:630
+#: commands/opclasscmds.c:620
#, c-format
msgid "could not make operator class \"%s\" be default for type %s"
msgstr "无法把操作符表 \"%s\" 设置为类型 %s 的默认操作符表"
-#: commands/opclasscmds.c:633
+#: commands/opclasscmds.c:623
#, c-format
msgid "Operator class \"%s\" already is the default."
msgstr "操作符表 \"%s\" 已经是默认的了."
-#: commands/opclasscmds.c:760
+#: commands/opclasscmds.c:748
#, c-format
msgid "must be superuser to create an operator family"
msgstr "只有超级用户能创建一个操作符表"
-#: commands/opclasscmds.c:816
+#: commands/opclasscmds.c:804
#, c-format
msgid "must be superuser to alter an operator family"
msgstr "只有超级用户能修改一个操作符表"
-#: commands/opclasscmds.c:879
+#: commands/opclasscmds.c:859
#, c-format
msgid "operator argument types must be specified in ALTER OPERATOR FAMILY"
msgstr "在ALTER OPERATOR FAMILY中必须指定操作符参数类型"
-#: commands/opclasscmds.c:943
+#: commands/opclasscmds.c:922
#, c-format
msgid "STORAGE cannot be specified in ALTER OPERATOR FAMILY"
msgstr "在ALTER OPERATOR FAMILY中无法指定参数STORAGE"
-#: commands/opclasscmds.c:1066
+#: commands/opclasscmds.c:1044
#, c-format
msgid "one or two argument types must be specified"
msgstr "必须指定一个或两个参数类型"
-#: commands/opclasscmds.c:1092
+#: commands/opclasscmds.c:1070
#, c-format
msgid "index operators must be binary"
msgstr "索引操作符必须为二进制"
-#: commands/opclasscmds.c:1111
+#: commands/opclasscmds.c:1089
#, c-format
msgid "access method \"%s\" does not support ordering operators"
msgstr "访问方法 \"%s\" 不支持排序操作符"
-#: commands/opclasscmds.c:1122
+#: commands/opclasscmds.c:1100
#, c-format
msgid "index search operators must return boolean"
msgstr "索引搜索操作符必须返回布尔值"
-#: commands/opclasscmds.c:1164
+#: commands/opclasscmds.c:1144
+#, c-format
+msgid "btree comparison functions must have two arguments"
+msgstr "B树比较函数必须有两个参数"
+
+#: commands/opclasscmds.c:1148
+#, c-format
+msgid "btree comparison functions must return integer"
+msgstr "B树比较函数必须返回整数"
+
+#: commands/opclasscmds.c:1165
+#, c-format
+msgid "btree sort support functions must accept type \"internal\""
+msgstr "B树排序支持的函数必须接受\"internal\"类型"
+
+#: commands/opclasscmds.c:1169
+#, c-format
+msgid "btree sort support functions must return void"
+msgstr "B树排序支持的函数必须返回void"
+
+#: commands/opclasscmds.c:1180
#, c-format
-msgid "btree comparison procedures must have two arguments"
-msgstr "B树比较过程必须有两个参数"
+msgid "btree in_range functions must have five arguments"
+msgstr "B树in_range函数必须有五个参数"
-#: commands/opclasscmds.c:1168
+#: commands/opclasscmds.c:1184
#, c-format
-msgid "btree comparison procedures must return integer"
-msgstr "B树比较过程必须返回整数"
+msgid "btree in_range functions must return boolean"
+msgstr "B树in_range函数必需返回布尔类型"
-#: commands/opclasscmds.c:1185
+#: commands/opclasscmds.c:1203
#, c-format
-msgid "btree sort support procedures must accept type \"internal\""
-msgstr "B树排序支持过程必须接受\"internal\"类型"
+msgid "hash function 1 must have one argument"
+msgstr "哈希函数1必须有一个参数"
-#: commands/opclasscmds.c:1189
+#: commands/opclasscmds.c:1207
#, c-format
-msgid "btree sort support procedures must return void"
-msgstr "B树排序支持过程必须返回void"
+msgid "hash function 1 must return integer"
+msgstr "哈希函数1必须返回整数"
-#: commands/opclasscmds.c:1201
+#: commands/opclasscmds.c:1214
#, c-format
-msgid "hash procedures must have one argument"
-msgstr "å\93\88å¸\8cå\98å\82¨è¿\87ç¨\8bå¿\85é¡»æ\9c\89ä¸\80个参数"
+msgid "hash function 2 must have two arguments"
+msgstr "å\93\88å¸\8cå\87½æ\95°2å¿\85é¡»æ\9c\89两个参数"
-#: commands/opclasscmds.c:1205
+#: commands/opclasscmds.c:1218
#, c-format
-msgid "hash procedures must return integer"
-msgstr "å\93\88å¸\8cå\98å\82¨è¿\87ç¨\8bå¿\85é¡»è¿\94å\9b\9eæ\95´æ\95°"
+msgid "hash function 2 must return bigint"
+msgstr "å\93\88å¸\8cå\87½æ\95°2ä¸\8dè\83½è¿\94å\9b\9ebigintç±»å\9e\8b"
-#: commands/opclasscmds.c:1229
+#: commands/opclasscmds.c:1243
#, c-format
-msgid "associated data types must be specified for index support procedure"
-msgstr "å¿\85须为索å¼\95æ\94¯æ\8c\81ç\9a\84å\98å\82¨è¿\87ç¨\8b指定相关联的数据类型"
+msgid "associated data types must be specified for index support function"
+msgstr "å¿\85须为索å¼\95æ\94¯æ\8c\81ç\9a\84å\87½æ\95°指定相关联的数据类型"
-#: commands/opclasscmds.c:1254
+#: commands/opclasscmds.c:1268
#, c-format
-msgid "procedure number %d for (%s,%s) appears more than once"
-msgstr "对于(%2$s,%3$s)的存储过程号%1$d出现了多次 "
+msgid "function number %d for (%s,%s) appears more than once"
+msgstr "对于(%2$s,%3$s)函数号%1$d出现过多次"
-#: commands/opclasscmds.c:1261
+#: commands/opclasscmds.c:1275
#, c-format
msgid "operator number %d for (%s,%s) appears more than once"
msgstr "对于(%2$s,%3$s)操作符号%1$d出现过多次"
-#: commands/opclasscmds.c:1310
+#: commands/opclasscmds.c:1324
#, c-format
msgid "operator %d(%s,%s) already exists in operator family \"%s\""
msgstr "在操作符表\"%4$s\"中已存在操作符 %1$d(%2$s,%3$s)"
-#: commands/opclasscmds.c:1426
+#: commands/opclasscmds.c:1438
#, c-format
msgid "function %d(%s,%s) already exists in operator family \"%s\""
msgstr "在操作符表\"%4$s\"中已存在函数 %1$d(%2$s,%3$s)"
-#: commands/opclasscmds.c:1516
+#: commands/opclasscmds.c:1526
#, c-format
msgid "operator %d(%s,%s) does not exist in operator family \"%s\""
msgstr "在操作符表\"%4$s\"中不存在操作符 %1$d(%2$s,%3$s)"
-#: commands/opclasscmds.c:1556
+#: commands/opclasscmds.c:1566
#, c-format
msgid "function %d(%s,%s) does not exist in operator family \"%s\""
msgstr "在操作符表\"%4$s\"中不存在函数 %1$d(%2$s,%3$s)"
-#: commands/opclasscmds.c:1686
+#: commands/opclasscmds.c:1696
#, c-format
-msgid ""
-"operator class \"%s\" for access method \"%s\" already exists in schema \"%s"
-"\""
+msgid "operator class \"%s\" for access method \"%s\" already exists in schema \"%s\""
msgstr "访问方法 \"%s\" 的操作符表 \"%s\" 已经在模式 \"%s\" 存在了"
-#: commands/opclasscmds.c:1709
+#: commands/opclasscmds.c:1719
#, c-format
-msgid ""
-"operator family \"%s\" for access method \"%s\" already exists in schema \"%s"
-"\""
+msgid "operator family \"%s\" for access method \"%s\" already exists in schema \"%s\""
msgstr "对于访问方法 \"%2$s\" 的操作符表 \"%1$s\" 已经在模式 \"%3$s\" 存在了"
-#: commands/operatorcmds.c:114 commands/operatorcmds.c:122
+#: commands/operatorcmds.c:113 commands/operatorcmds.c:121
#, c-format
msgid "SETOF type not allowed for operator argument"
msgstr "不允许将SETOF类型用于操作符参数"
-#: commands/operatorcmds.c:152 commands/operatorcmds.c:457
+#: commands/operatorcmds.c:154 commands/operatorcmds.c:457
#, c-format
msgid "operator attribute \"%s\" not recognized"
msgstr "操作符属性 \"%s\" 不被认可"
-#: commands/operatorcmds.c:163
+#: commands/operatorcmds.c:165
#, c-format
-msgid "operator procedure must be specified"
-msgstr "必须指定操作符过程"
+msgid "operator function must be specified"
+msgstr "必须指定运算符函数"
-#: commands/operatorcmds.c:174
+#: commands/operatorcmds.c:176
#, c-format
msgid "at least one of leftarg or rightarg must be specified"
msgstr "必须至少指定一个左参数 (leftarg) 或右参数 (rightarg)"
-#: commands/operatorcmds.c:278
+#: commands/operatorcmds.c:280
#, c-format
-#| msgid "restriction estimator function %s must return type \"float8\""
msgid "restriction estimator function %s must return type %s"
msgstr "限制估算器函数 %s 必需返回类型 %s"
-#: commands/operatorcmds.c:324
+#: commands/operatorcmds.c:326
#, c-format
-#| msgid "join estimator function %s must return type \"float8\""
msgid "join estimator function %s must return type %s"
msgstr "连接估算器函数 %s 必需返回类型 %s"
#: commands/operatorcmds.c:451
#, c-format
-#| msgid "operator attribute \"%s\" not recognized"
-msgid "operator attribute \"%s\" can not be changed"
+msgid "operator attribute \"%s\" cannot be changed"
msgstr "操作符属性 \"%s\" 不能被更改"
-#: commands/policy.c:87 commands/policy.c:395 commands/policy.c:484
-#: commands/tablecmds.c:970 commands/tablecmds.c:1312
-#: commands/tablecmds.c:2184 commands/tablecmds.c:4330
-#: commands/tablecmds.c:6281 commands/tablecmds.c:11935
-#: commands/tablecmds.c:11970 commands/trigger.c:241 commands/trigger.c:1125
-#: commands/trigger.c:1233 rewrite/rewriteDefine.c:273
-#: rewrite/rewriteDefine.c:917
+#: commands/policy.c:87 commands/policy.c:400 commands/policy.c:490
+#: commands/tablecmds.c:1278 commands/tablecmds.c:1755
+#: commands/tablecmds.c:2742 commands/tablecmds.c:4986
+#: commands/tablecmds.c:7394 commands/tablecmds.c:14012
+#: commands/tablecmds.c:14047 commands/trigger.c:316 commands/trigger.c:1526
+#: commands/trigger.c:1635 rewrite/rewriteDefine.c:272
+#: rewrite/rewriteDefine.c:924
#, c-format
msgid "permission denied: \"%s\" is a system catalog"
msgstr "权限不够: \"%s\" 是一个系统表"
#: commands/policy.c:170
#, c-format
-#| msgid "ignoring roles specified other than public"
msgid "ignoring specified roles other than PUBLIC"
msgstr "忽略所指定的除 PUBLIC 之外的角色"
#: commands/policy.c:171
#, c-format
-#| msgid "All roles are members of the public role."
msgid "All roles are members of the PUBLIC role."
msgstr "所有角色都是 PUBLIC 角色的成员。"
-#: commands/policy.c:508
+#: commands/policy.c:514
#, c-format
-#| msgid "File \"%s\" could not be renamed to \"%s\": %m."
msgid "role \"%s\" could not be removed from policy \"%s\" on \"%s\""
msgstr "不能从 \"%3$s\" 上的策略 \"%2$s\" 中移除角色 \"%1$s\""
-#: commands/policy.c:717
+#: commands/policy.c:720
#, c-format
msgid "WITH CHECK cannot be applied to SELECT or DELETE"
msgstr "不能把WITH CHECK应用到SELECT或者DELETE"
-#: commands/policy.c:726 commands/policy.c:1026
+#: commands/policy.c:729 commands/policy.c:1027
#, c-format
msgid "only WITH CHECK expression allowed for INSERT"
msgstr "对INSERT只允许WITH CHECK表达式"
-#: commands/policy.c:799 commands/policy.c:1249
+#: commands/policy.c:802 commands/policy.c:1247
#, c-format
msgid "policy \"%s\" for table \"%s\" already exists"
msgstr "用于表\"%2$s\"的策略\"%1$s\"已经存在"
-#: commands/policy.c:998 commands/policy.c:1277 commands/policy.c:1352
+#: commands/policy.c:999 commands/policy.c:1275 commands/policy.c:1347
#, c-format
msgid "policy \"%s\" for table \"%s\" does not exist"
msgstr "用于表\"%2$s\"的策略\"%1$s\"不存在"
-#: commands/policy.c:1016
+#: commands/policy.c:1017
#, c-format
msgid "only USING expression allowed for SELECT, DELETE"
msgstr "对SELECT、DELETE只允许USING表达式"
-#: commands/portalcmds.c:61 commands/portalcmds.c:160
-#: commands/portalcmds.c:212
+#: commands/portalcmds.c:58 commands/portalcmds.c:182 commands/portalcmds.c:234
#, c-format
msgid "invalid cursor name: must not be empty"
msgstr "无效的游标名称: 不能为空"
-#: commands/portalcmds.c:168 commands/portalcmds.c:222
-#: executor/execCurrent.c:67 utils/adt/xml.c:2391 utils/adt/xml.c:2558
+#: commands/portalcmds.c:190 commands/portalcmds.c:244
+#: executor/execCurrent.c:69 utils/adt/xml.c:2472 utils/adt/xml.c:2642
#, c-format
msgid "cursor \"%s\" does not exist"
msgstr "游标 \"%s\" 不存在"
-#: commands/prepare.c:71
+#: commands/prepare.c:75
#, c-format
msgid "invalid statement name: must not be empty"
msgstr "无效的语句名称: 不能为空"
-#: commands/prepare.c:129 parser/parse_param.c:304 tcop/postgres.c:1345
+#: commands/prepare.c:141 parser/parse_param.c:304 tcop/postgres.c:1399
#, c-format
msgid "could not determine data type of parameter $%d"
msgstr "无法确定参数 $%d 的数据类型"
-#: commands/prepare.c:147
+#: commands/prepare.c:159
#, c-format
msgid "utility statements cannot be prepared"
msgstr "不能准备好工具语句"
-#: commands/prepare.c:257 commands/prepare.c:264
+#: commands/prepare.c:269 commands/prepare.c:274
#, c-format
msgid "prepared statement is not a SELECT"
msgstr "准备好的语句不是一个 SELECT"
-#: commands/prepare.c:332
+#: commands/prepare.c:342
#, c-format
msgid "wrong number of parameters for prepared statement \"%s\""
msgstr "准备好的语句 \"%s\" 参数个数错误"
-#: commands/prepare.c:334
+#: commands/prepare.c:344
#, c-format
msgid "Expected %d parameters but got %d."
msgstr "预计 %d 个参数, 但得到了 %d 个."
-#: commands/prepare.c:370
+#: commands/prepare.c:380
#, c-format
msgid "parameter $%d of type %s cannot be coerced to the expected type %s"
msgstr "类型 %2$s 的参数 $%1$d 不能强制到预计 (expected) 类型 %3$s"
-#: commands/prepare.c:465
+#: commands/prepare.c:475
#, c-format
msgid "prepared statement \"%s\" already exists"
msgstr "准备好的语句 \"%s\" 已经存在"
-#: commands/prepare.c:504
+#: commands/prepare.c:514
#, c-format
msgid "prepared statement \"%s\" does not exist"
msgstr "准备好的语句 \"%s\" 不存在"
-#: commands/proclang.c:87
+#: commands/proclang.c:86
#, c-format
msgid "using pg_pltemplate information instead of CREATE LANGUAGE parameters"
msgstr "使用pg_pltemplate信息,而不是CREATE LANGUAGE的参数"
-#: commands/proclang.c:97
+#: commands/proclang.c:96
#, c-format
msgid "must be superuser to create procedural language \"%s\""
msgstr "只有有超级用户权限的用户才能创建过程语言\"%s\""
-#: commands/proclang.c:252
+#: commands/proclang.c:248
#, c-format
msgid "unsupported language \"%s\""
msgstr "不支持语言 \"%s\""
-#: commands/proclang.c:254
+#: commands/proclang.c:250
#, c-format
msgid "The supported languages are listed in the pg_pltemplate system catalog."
msgstr "在pg_pltemplate系统目录视图中列出了所支持的语言."
-#: commands/proclang.c:262
+#: commands/proclang.c:258
#, c-format
msgid "must be superuser to create custom procedural language"
msgstr "只有有超级用户权限的用户才能创建过程语言"
-#: commands/proclang.c:281
+#: commands/proclang.c:277 commands/trigger.c:688 commands/typecmds.c:454
+#: commands/typecmds.c:471
#, c-format
-msgid ""
-"changing return type of function %s from \"opaque\" to \"language_handler\""
-msgstr "函数 %s 的返回类型 \"opaque\" 改变成 \"language_handler\""
+msgid "changing return type of function %s from %s to %s"
+msgstr "把函数 %1$s 的返回类型从 %2$s 改成 %3$s"
+
+#: commands/publicationcmds.c:109
+#, c-format
+msgid "invalid list syntax for \"publish\" option"
+msgstr "\"publish\"选项使用了无效的列表语法"
+
+#: commands/publicationcmds.c:127
+#, c-format
+msgid "unrecognized \"publish\" value: \"%s\""
+msgstr "未知的\"publish\"值: \"%s\""
+
+#: commands/publicationcmds.c:133
+#, c-format
+msgid "unrecognized publication parameter: %s"
+msgstr "未识别发布参数: %s"
+
+#: commands/publicationcmds.c:166
+#, c-format
+msgid "must be superuser to create FOR ALL TABLES publication"
+msgstr "只有超级用户能创建FOR ALL TABLES发布"
+
+#: commands/publicationcmds.c:335
+#, c-format
+msgid "publication \"%s\" is defined as FOR ALL TABLES"
+msgstr "发布\"%s\"被定义为FOR ALL TABLES"
+
+#: commands/publicationcmds.c:337
+#, c-format
+msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications."
+msgstr "对于FOR ALL TABLES发布,不能将表添加到或从中删除."
+
+#: commands/publicationcmds.c:638
+#, c-format
+msgid "relation \"%s\" is not part of the publication"
+msgstr "关系 \"%s\" 不是发布的一部分"
+
+#: commands/publicationcmds.c:681
+#, c-format
+msgid "permission denied to change owner of publication \"%s\""
+msgstr "改变发布\"%s\"属主的权限不够"
+
+#: commands/publicationcmds.c:683
+#, c-format
+msgid "The owner of a FOR ALL TABLES publication must be a superuser."
+msgstr "FOR ALL TABLES发布的属主必须是超级用户."
-#: commands/schemacmds.c:103 commands/schemacmds.c:266
+#: commands/schemacmds.c:106 commands/schemacmds.c:280
#, c-format
msgid "unacceptable schema name \"%s\""
msgstr "不可访问的模式名字 \"%s\""
-#: commands/schemacmds.c:104 commands/schemacmds.c:267
+#: commands/schemacmds.c:107 commands/schemacmds.c:281
#, c-format
msgid "The prefix \"pg_\" is reserved for system schemas."
msgstr "前缀 \"pg_\" 是保留给系统模式的."
-#: commands/schemacmds.c:118
+#: commands/schemacmds.c:121
#, c-format
msgid "schema \"%s\" already exists, skipping"
msgstr "模式 \"%s\" 已存在, 跳过"
#: commands/seclabel.c:64
#, c-format
-msgid ""
-"must specify provider when multiple security label providers have been loaded"
+msgid "must specify provider when multiple security label providers have been loaded"
msgstr "当多个安全提供者已经加载时,必须指定提供者"
#: commands/seclabel.c:82
msgid "security label provider \"%s\" is not loaded"
msgstr "安装标签提供者\"%s\"没有加载"
-#: commands/sequence.c:127
+#: commands/sequence.c:138
#, c-format
msgid "unlogged sequences are not supported"
msgstr "非事务日志型序列不被支持"
-#: commands/sequence.c:651
+#: commands/sequence.c:697
#, c-format
msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
msgstr "nextval: 达到序列 \"%s\" 的最大值了 (%s)"
-#: commands/sequence.c:674
+#: commands/sequence.c:720
#, c-format
msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
msgstr "nextval: 达到序列 \"%s\" 的最小值了 (%s)"
-#: commands/sequence.c:792
+#: commands/sequence.c:838
#, c-format
msgid "currval of sequence \"%s\" is not yet defined in this session"
msgstr "在此会话中序列 \"%s\" 的 currval 仍没被定义"
-#: commands/sequence.c:811 commands/sequence.c:817
+#: commands/sequence.c:857 commands/sequence.c:863
#, c-format
msgid "lastval is not yet defined in this session"
msgstr "在这个会话中还没有定义lastval "
-#: commands/sequence.c:893
+#: commands/sequence.c:951
#, c-format
msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
msgstr "setval: 值 %s 超出序列 \"%s\" 的范围 (%s..%s)"
-#: commands/sequence.c:1267
+#: commands/sequence.c:1348
+#, c-format
+msgid "invalid sequence option SEQUENCE NAME"
+msgstr "序列选项SEQUENCE NAME无效 "
+
+#: commands/sequence.c:1374
+#, c-format
+msgid "identity column type must be smallint, integer, or bigint"
+msgstr "标识列类型必须是smallint、integer或bigint"
+
+#: commands/sequence.c:1375
+#, c-format
+msgid "sequence type must be smallint, integer, or bigint"
+msgstr "序列类型必须是smallint、integer或bigint"
+
+#: commands/sequence.c:1409
#, c-format
msgid "INCREMENT must not be zero"
msgstr "INCREMENT 不必为零"
-#: commands/sequence.c:1323
+#: commands/sequence.c:1462
+#, c-format
+msgid "MAXVALUE (%s) is out of range for sequence data type %s"
+msgstr "MAXVALUE (%s) 超出序列数据类型%s的范围"
+
+#: commands/sequence.c:1499
+#, c-format
+msgid "MINVALUE (%s) is out of range for sequence data type %s"
+msgstr "MINVALUE (%s)超出序列数据类型%s的范围"
+
+#: commands/sequence.c:1513
#, c-format
msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
msgstr "MINVALUE (%s) 必需小于 MAXVALUE (%s)"
-#: commands/sequence.c:1348
+#: commands/sequence.c:1540
#, c-format
msgid "START value (%s) cannot be less than MINVALUE (%s)"
msgstr "START 值 (%s) 不能小于 MINVALUE (%s)"
-#: commands/sequence.c:1360
+#: commands/sequence.c:1552
#, c-format
msgid "START value (%s) cannot be greater than MAXVALUE (%s)"
msgstr "START 值 (%s) 不能大于 MAXVALUE (%s)"
-#: commands/sequence.c:1390
+#: commands/sequence.c:1582
#, c-format
msgid "RESTART value (%s) cannot be less than MINVALUE (%s)"
msgstr "RESTART值 (%s) 不能小于 MINVALUE (%s)"
-#: commands/sequence.c:1402
+#: commands/sequence.c:1594
#, c-format
msgid "RESTART value (%s) cannot be greater than MAXVALUE (%s)"
msgstr "RESTART 值 (%s) 不能大于 MAXVALUE (%s)"
-#: commands/sequence.c:1417
+#: commands/sequence.c:1609
#, c-format
msgid "CACHE (%s) must be greater than zero"
msgstr "CACHE (%s) 必须大于零"
-#: commands/sequence.c:1449
+#: commands/sequence.c:1646
#, c-format
msgid "invalid OWNED BY option"
msgstr "无效的OWNED BY选项"
-#: commands/sequence.c:1450
+#: commands/sequence.c:1647
#, c-format
msgid "Specify OWNED BY table.column or OWNED BY NONE."
msgstr "指定OWNED BY 表.列 or OWNED BY NONE."
-#: commands/sequence.c:1473
+#: commands/sequence.c:1672
#, c-format
msgid "referenced relation \"%s\" is not a table or foreign table"
msgstr "关联的关系 \"%s\" 不是一个表或外部参照表"
-#: commands/sequence.c:1480
+#: commands/sequence.c:1679
#, c-format
msgid "sequence must have same owner as table it is linked to"
msgstr "序列的属主必须和与它相链接的表的属主相同."
-#: commands/sequence.c:1484
+#: commands/sequence.c:1683
#, c-format
msgid "sequence must be in same schema as table it is linked to"
msgstr "序列必须和与它相链接的表存放在同一个模式"
-#: commands/tablecmds.c:215
+#: commands/sequence.c:1705
#, c-format
-msgid "table \"%s\" does not exist"
-msgstr "表 \"%s\" 不存在"
+msgid "cannot change ownership of identity sequence"
+msgstr "无法更改标识序列的所有权"
-#: commands/tablecmds.c:216
+#: commands/sequence.c:1706 commands/tablecmds.c:10827
+#: commands/tablecmds.c:13444
#, c-format
-msgid "table \"%s\" does not exist, skipping"
-msgstr "表 \"%s\" 不存在"
+msgid "Sequence \"%s\" is linked to table \"%s\"."
+msgstr "序列 \"%s\"已链接到表\"%s\"."
-#: commands/tablecmds.c:218
-msgid "Use DROP TABLE to remove a table."
-msgstr "请使用 DROP TABLE 删除一个表."
+#: commands/statscmds.c:93 commands/statscmds.c:102
+#, c-format
+msgid "only a single relation is allowed in CREATE STATISTICS"
+msgstr "在创建统计信息中只允许一个关系"
-#: commands/tablecmds.c:221
+#: commands/statscmds.c:120
#, c-format
-msgid "sequence \"%s\" does not exist"
-msgstr "åº\8få\88\97 \"%s\" ä¸\8då\98å\9c¨"
+msgid "relation \"%s\" is not a table, foreign table, or materialized view"
+msgstr "å\85³ç³»\"%s\"ä¸\8dæ\98¯è¡¨ã\80\81å¤\96é\83¨è¡¨æ\88\96ç\89©å\8c\96è§\86å\9b¾"
-#: commands/tablecmds.c:222
+#: commands/statscmds.c:163
#, c-format
-msgid "sequence \"%s\" does not exist, skipping"
-msgstr "序列 \"%s\" 不存在"
+msgid "statistics object \"%s\" already exists, skipping"
+msgstr "统计信息对象 \"%s\" 已经存在, 跳过"
-#: commands/tablecmds.c:224
-msgid "Use DROP SEQUENCE to remove a sequence."
-msgstr "请使用 DROP SEQUENCE 删除一个序列."
+#: commands/statscmds.c:171
+#, c-format
+msgid "statistics object \"%s\" already exists"
+msgstr "统计信息对象 \"%s\" 已经存在"
-#: commands/tablecmds.c:227
+#: commands/statscmds.c:193 commands/statscmds.c:199
#, c-format
-msgid "view \"%s\" does not exist"
-msgstr "è§\86å\9b¾ \"%s\" ä¸\8då\98å\9c¨"
+msgid "only simple column references are allowed in CREATE STATISTICS"
+msgstr "å\88\9b建ç»\9f计信æ\81¯ä¸å\8fªå\85\81许ç®\80å\8d\95å\88\97å¼\95ç\94¨"
-#: commands/tablecmds.c:228
+#: commands/statscmds.c:214
#, c-format
-msgid "view \"%s\" does not exist, skipping"
-msgstr "视图 \"%s\" 不存在"
+msgid "statistics creation on system columns is not supported"
+msgstr "不支持在系统列上创建统计信息"
-#: commands/tablecmds.c:230
-msgid "Use DROP VIEW to remove a view."
-msgstr "请使用 DROP VIEW 删除一个视图."
+#: commands/statscmds.c:221
+#, c-format
+msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class"
+msgstr "列\"%s\"不能用于统计,因为它的类型%s没有默认的B树运算符类"
-#: commands/tablecmds.c:233
+#: commands/statscmds.c:228
#, c-format
-msgid "materialized view \"%s\" does not exist"
-msgstr "物化视图 \"%s\" 不存在"
+msgid "cannot have more than %d columns in statistics"
+msgstr "在一个统计信息中不能使用超过 %d 个字段"
-#: commands/tablecmds.c:234
+#: commands/statscmds.c:243
#, c-format
-msgid "materialized view \"%s\" does not exist, skipping"
-msgstr "物化视图 \"%s\" 不存在,跳过"
+msgid "extended statistics require at least 2 columns"
+msgstr "扩展统计信息至少需要2列"
+
+#: commands/statscmds.c:261
+#, c-format
+msgid "duplicate column name in statistics definition"
+msgstr "统计信息定义中有重复的列名"
+
+#: commands/statscmds.c:289
+#, c-format
+msgid "unrecognized statistics kind \"%s\""
+msgstr "未识别的统计类型\"%s\""
+
+#: commands/subscriptioncmds.c:187
+#, c-format
+msgid "unrecognized subscription parameter: %s"
+msgstr "未识别的订阅参数: %s"
+
+#: commands/subscriptioncmds.c:200
+#, c-format
+msgid "connect = false and enabled = true are mutually exclusive options"
+msgstr "connect = false和enabled = true是互斥选项"
+
+#: commands/subscriptioncmds.c:205
+#, c-format
+msgid "connect = false and create_slot = true are mutually exclusive options"
+msgstr "connect = false和create_slot = true是互斥选项"
+
+#: commands/subscriptioncmds.c:210
+#, c-format
+msgid "connect = false and copy_data = true are mutually exclusive options"
+msgstr "connect = false和copy_data = true是互斥选项"
+
+#: commands/subscriptioncmds.c:227
+#, c-format
+msgid "slot_name = NONE and enabled = true are mutually exclusive options"
+msgstr "slot_name = NONE和enabled = true是互斥选项"
+
+#: commands/subscriptioncmds.c:232
+#, c-format
+msgid "slot_name = NONE and create_slot = true are mutually exclusive options"
+msgstr "slot_name = NONE和create_slot = true是互斥选项"
+
+#: commands/subscriptioncmds.c:237
+#, c-format
+msgid "subscription with slot_name = NONE must also set enabled = false"
+msgstr "有slot_name = NONE选项的订阅还必须设置enabled = false"
+
+#: commands/subscriptioncmds.c:242
+#, c-format
+msgid "subscription with slot_name = NONE must also set create_slot = false"
+msgstr "有slot_name = NONE选项的订阅还必须设置create_slot = false"
+
+#: commands/subscriptioncmds.c:283
+#, c-format
+msgid "publication name \"%s\" used more than once"
+msgstr "发布名称\"%s\"使用了多次"
+
+#: commands/subscriptioncmds.c:347
+#, c-format
+msgid "must be superuser to create subscriptions"
+msgstr "只有超级用户能创建订阅"
+
+#: commands/subscriptioncmds.c:427 commands/subscriptioncmds.c:520
+#: replication/logical/tablesync.c:856 replication/logical/worker.c:1722
+#, c-format
+msgid "could not connect to the publisher: %s"
+msgstr "无法连接到发布服务器:%s"
+
+#: commands/subscriptioncmds.c:469
+#, c-format
+msgid "created replication slot \"%s\" on publisher"
+msgstr "在发布服务器上创建复制槽 \"%s\""
+
+#: commands/subscriptioncmds.c:486
+#, c-format
+msgid "tables were not subscribed, you will have to run ALTER SUBSCRIPTION ... REFRESH PUBLICATION to subscribe the tables"
+msgstr "没有订阅表,您必须运行ALTER SUBSCRIPTION ... REFRESH PUBLICATION订阅表"
+
+#: commands/subscriptioncmds.c:576
+#, c-format
+msgid "table \"%s.%s\" added to subscription \"%s\""
+msgstr "表\"%s.%s\"添加到订阅\"%s\"中"
+
+#: commands/subscriptioncmds.c:600
+#, c-format
+msgid "table \"%s.%s\" removed from subscription \"%s\""
+msgstr "已从订阅\"%3$s\"中删除表\"%1$s.%2$s\""
+
+#: commands/subscriptioncmds.c:669
+#, c-format
+msgid "cannot set slot_name = NONE for enabled subscription"
+msgstr "无法为启用的订阅设置slot_name = NONE"
+
+#: commands/subscriptioncmds.c:703
+#, c-format
+msgid "cannot enable subscription that does not have a slot name"
+msgstr "无法启用没有槽名称的订阅"
+
+#: commands/subscriptioncmds.c:749
+#, c-format
+msgid "ALTER SUBSCRIPTION with refresh is not allowed for disabled subscriptions"
+msgstr "禁用的订阅不允许使用带刷新的ALTER SUBSCRIPTION"
+
+#: commands/subscriptioncmds.c:750
+#, c-format
+msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
+msgstr "使用ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
+
+#: commands/subscriptioncmds.c:768
+#, c-format
+msgid "ALTER SUBSCRIPTION ... REFRESH is not allowed for disabled subscriptions"
+msgstr "ALTER SUBSCRIPTION ... REFRESH不允许用于已禁用的订阅"
+
+#: commands/subscriptioncmds.c:847
+#, c-format
+msgid "subscription \"%s\" does not exist, skipping"
+msgstr "订阅\"%s\"不存在,跳过"
+
+#: commands/subscriptioncmds.c:972
+#, c-format
+msgid "could not connect to publisher when attempting to drop the replication slot \"%s\""
+msgstr "尝试删除复制槽\"%s\"时无法连接到发布服务器"
+
+#: commands/subscriptioncmds.c:974 commands/subscriptioncmds.c:988
+#: replication/logical/tablesync.c:905 replication/logical/tablesync.c:927
+#, c-format
+msgid "The error was: %s"
+msgstr "错误是: %s"
+
+#: commands/subscriptioncmds.c:975
+#, c-format
+msgid "Use ALTER SUBSCRIPTION ... SET (slot_name = NONE) to disassociate the subscription from the slot."
+msgstr "使用ALTER SUBSCRIPTION ... SET (slot_name = NONE)取消订阅与插槽的关联."
+
+#: commands/subscriptioncmds.c:986
+#, c-format
+msgid "could not drop the replication slot \"%s\" on publisher"
+msgstr "无法删除发布服务器上的复制槽\"%s\""
+
+#: commands/subscriptioncmds.c:991
+#, c-format
+msgid "dropped replication slot \"%s\" on publisher"
+msgstr "已删除发布服务器上的复制槽\"%s\""
+
+#: commands/subscriptioncmds.c:1032
+#, c-format
+msgid "permission denied to change owner of subscription \"%s\""
+msgstr "更改订阅所有者\"%s\"的权限被拒绝"
+
+#: commands/subscriptioncmds.c:1034
+#, c-format
+msgid "The owner of a subscription must be a superuser."
+msgstr "订阅的所有者必须是超级用户."
+
+#: commands/subscriptioncmds.c:1147
+#, c-format
+msgid "could not receive list of replicated tables from the publisher: %s"
+msgstr "无法从发布服务器接收已复制表的列表: %s"
+
+#: commands/tablecmds.c:223 commands/tablecmds.c:265
+#, c-format
+msgid "table \"%s\" does not exist"
+msgstr "表 \"%s\" 不存在"
+
+#: commands/tablecmds.c:224 commands/tablecmds.c:266
+#, c-format
+msgid "table \"%s\" does not exist, skipping"
+msgstr "表 \"%s\" 不存在"
+
+#: commands/tablecmds.c:226 commands/tablecmds.c:268
+msgid "Use DROP TABLE to remove a table."
+msgstr "请使用 DROP TABLE 删除一个表."
+
+#: commands/tablecmds.c:229
+#, c-format
+msgid "sequence \"%s\" does not exist"
+msgstr "序列 \"%s\" 不存在"
+
+#: commands/tablecmds.c:230
+#, c-format
+msgid "sequence \"%s\" does not exist, skipping"
+msgstr "序列 \"%s\" 不存在"
+
+#: commands/tablecmds.c:232
+msgid "Use DROP SEQUENCE to remove a sequence."
+msgstr "请使用 DROP SEQUENCE 删除一个序列."
+
+#: commands/tablecmds.c:235
+#, c-format
+msgid "view \"%s\" does not exist"
+msgstr "视图 \"%s\" 不存在"
#: commands/tablecmds.c:236
+#, c-format
+msgid "view \"%s\" does not exist, skipping"
+msgstr "视图 \"%s\" 不存在"
+
+#: commands/tablecmds.c:238
+msgid "Use DROP VIEW to remove a view."
+msgstr "请使用 DROP VIEW 删除一个视图."
+
+#: commands/tablecmds.c:241
+#, c-format
+msgid "materialized view \"%s\" does not exist"
+msgstr "物化视图 \"%s\" 不存在"
+
+#: commands/tablecmds.c:242
+#, c-format
+msgid "materialized view \"%s\" does not exist, skipping"
+msgstr "物化视图 \"%s\" 不存在,跳过"
+
+#: commands/tablecmds.c:244
msgid "Use DROP MATERIALIZED VIEW to remove a materialized view."
msgstr "请使用 DROP MATERIALIZED VIEW 删除一个物化视图."
-#: commands/tablecmds.c:239 parser/parse_utilcmd.c:1643
+#: commands/tablecmds.c:247 commands/tablecmds.c:271 commands/tablecmds.c:15449
+#: parser/parse_utilcmd.c:1982
#, c-format
msgid "index \"%s\" does not exist"
msgstr "索引 \"%s\" 不存在"
-#: commands/tablecmds.c:240
+#: commands/tablecmds.c:248 commands/tablecmds.c:272
#, c-format
msgid "index \"%s\" does not exist, skipping"
msgstr "索引 \"%s\" 不存在"
-#: commands/tablecmds.c:242
+#: commands/tablecmds.c:250 commands/tablecmds.c:274
msgid "Use DROP INDEX to remove an index."
msgstr "请使用 DROP INDEX 删除一个索引."
-#: commands/tablecmds.c:247
+#: commands/tablecmds.c:255
#, c-format
msgid "\"%s\" is not a type"
msgstr "\"%s\" 不是一个类型"
-#: commands/tablecmds.c:248
+#: commands/tablecmds.c:256
msgid "Use DROP TYPE to remove a type."
msgstr "请使用 DROP TYPE 删除一个类型."
-#: commands/tablecmds.c:251 commands/tablecmds.c:8488
-#: commands/tablecmds.c:11196
+#: commands/tablecmds.c:259 commands/tablecmds.c:10271
+#: commands/tablecmds.c:13224
#, c-format
msgid "foreign table \"%s\" does not exist"
msgstr "外部表 \"%s\" 不存在"
-#: commands/tablecmds.c:252
+#: commands/tablecmds.c:260
#, c-format
msgid "foreign table \"%s\" does not exist, skipping"
msgstr "外部表 \"%s\" 不存在, 跳过"
-#: commands/tablecmds.c:254
+#: commands/tablecmds.c:262
msgid "Use DROP FOREIGN TABLE to remove a foreign table."
msgstr "请使用 DROP FOREIGN TABLE 删除一个外部表."
-#: commands/tablecmds.c:493
+#: commands/tablecmds.c:557
#, c-format
msgid "ON COMMIT can only be used on temporary tables"
msgstr "ON COMMIT 只能被用于临时表"
-#: commands/tablecmds.c:513
+#: commands/tablecmds.c:585
#, c-format
msgid "cannot create temporary table within security-restricted operation"
msgstr "不能在安全限制的操作中创建临时表"
-#: commands/tablecmds.c:821
+#: commands/tablecmds.c:686
+#, c-format
+msgid "cannot create table with OIDs as partition of table without OIDs"
+msgstr "无法使用OIDs创建表作为没有OIDs的表的分区"
+
+#: commands/tablecmds.c:810
+#, c-format
+msgid "\"%s\" is not partitioned"
+msgstr "\"%s\" 未分区"
+
+#: commands/tablecmds.c:891
+#, c-format
+msgid "cannot partition using more than %d columns"
+msgstr "无法使用超过%d列进行分区"
+
+#: commands/tablecmds.c:1098
#, c-format
msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects"
msgstr "DROP INDEX CONCURRENTLY不支持同时删除多个对象"
-#: commands/tablecmds.c:825
+#: commands/tablecmds.c:1102
#, c-format
msgid "DROP INDEX CONCURRENTLY does not support CASCADE"
msgstr "DROP INDEX CONCURRENTLY 不支持级联操作"
-#: commands/tablecmds.c:1084
+#: commands/tablecmds.c:1401
+#, c-format
+msgid "cannot truncate only a partitioned table"
+msgstr "不能只截断分区表"
+
+#: commands/tablecmds.c:1402
+#, c-format
+msgid "Do not specify the ONLY keyword, or use TRUNCATE ONLY on the partitions directly."
+msgstr "不要指定ONLY关键字,或者分区上直接使用TRUNCATE ONLY."
+
+#: commands/tablecmds.c:1471
#, c-format
msgid "truncate cascades to table \"%s\""
msgstr "级联截断表\"%s\""
-#: commands/tablecmds.c:1322
+#: commands/tablecmds.c:1765
#, c-format
msgid "cannot truncate temporary tables of other sessions"
msgstr "不能缩短其他会话的临时表"
-#: commands/tablecmds.c:1528 parser/parse_utilcmd.c:1857
+#: commands/tablecmds.c:2006 commands/tablecmds.c:11975
+#, c-format
+msgid "cannot inherit from partitioned table \"%s\""
+msgstr "无法从分区表\"%s\"继承"
+
+#: commands/tablecmds.c:2011
+#, c-format
+msgid "cannot inherit from partition \"%s\""
+msgstr "无法从分区\"%s\"继承"
+
+#: commands/tablecmds.c:2019 parser/parse_utilcmd.c:2199
+#: parser/parse_utilcmd.c:2322
#, c-format
msgid "inherited relation \"%s\" is not a table or foreign table"
msgstr "被继承的关系\"%s\" 不是一个表或外部表"
-#: commands/tablecmds.c:1535 commands/tablecmds.c:10055
+#: commands/tablecmds.c:2031
+#, c-format
+msgid "cannot create a temporary relation as partition of permanent relation \"%s\""
+msgstr "无法创建临时关系作为永久关系的分区\"%s\""
+
+#: commands/tablecmds.c:2040 commands/tablecmds.c:11954
#, c-format
msgid "cannot inherit from temporary relation \"%s\""
msgstr "不能从临时关系 \"%s\" 继承"
-#: commands/tablecmds.c:1543 commands/tablecmds.c:10063
+#: commands/tablecmds.c:2050 commands/tablecmds.c:11962
#, c-format
msgid "cannot inherit from temporary relation of another session"
msgstr "不能从另一个会话的临时关系继承"
-#: commands/tablecmds.c:1559 commands/tablecmds.c:10097
+#: commands/tablecmds.c:2067 commands/tablecmds.c:12086
#, c-format
msgid "relation \"%s\" would be inherited from more than once"
msgstr "关系 \"%s\" 将被继承多次"
-#: commands/tablecmds.c:1607
+#: commands/tablecmds.c:2116
#, c-format
msgid "merging multiple inherited definitions of column \"%s\""
msgstr "合并属性 \"%s\" 的多个继承定义"
-#: commands/tablecmds.c:1615
+#: commands/tablecmds.c:2124
#, c-format
msgid "inherited column \"%s\" has a type conflict"
msgstr "继承属性 \"%s\" 类型冲突"
-#: commands/tablecmds.c:1617 commands/tablecmds.c:1640
-#: commands/tablecmds.c:1838 commands/tablecmds.c:1862
-#: parser/parse_coerce.c:1630 parser/parse_coerce.c:1650
-#: parser/parse_coerce.c:1670 parser/parse_coerce.c:1715
-#: parser/parse_coerce.c:1752 parser/parse_param.c:218
+#: commands/tablecmds.c:2126 commands/tablecmds.c:2149
+#: commands/tablecmds.c:2354 commands/tablecmds.c:2384
+#: parser/parse_coerce.c:1721 parser/parse_coerce.c:1741
+#: parser/parse_coerce.c:1761 parser/parse_coerce.c:1807
+#: parser/parse_coerce.c:1846 parser/parse_param.c:218
#, c-format
msgid "%s versus %s"
msgstr "%s 对 %s"
-#: commands/tablecmds.c:1626
+#: commands/tablecmds.c:2135
#, c-format
msgid "inherited column \"%s\" has a collation conflict"
msgstr "继承列 \"%s\" 出现排序规则冲突"
-#: commands/tablecmds.c:1628 commands/tablecmds.c:1850
-#: commands/tablecmds.c:4768
+#: commands/tablecmds.c:2137 commands/tablecmds.c:2366
+#: commands/tablecmds.c:5446
#, c-format
msgid "\"%s\" versus \"%s\""
msgstr "\"%s\" 对 \"%s\""
-#: commands/tablecmds.c:1638
+#: commands/tablecmds.c:2147
#, c-format
msgid "inherited column \"%s\" has a storage parameter conflict"
msgstr "继承列 \"%s\" 有一个存储参数冲突"
-#: commands/tablecmds.c:1751 parser/parse_utilcmd.c:938
-#: parser/parse_utilcmd.c:1287 parser/parse_utilcmd.c:1363
+#: commands/tablecmds.c:2260 commands/tablecmds.c:9699
+#: parser/parse_utilcmd.c:1116 parser/parse_utilcmd.c:1515
+#: parser/parse_utilcmd.c:1622
#, c-format
msgid "cannot convert whole-row table reference"
msgstr "无法转换整行表引用"
-#: commands/tablecmds.c:1752 parser/parse_utilcmd.c:939
+#: commands/tablecmds.c:2261 parser/parse_utilcmd.c:1117
#, c-format
msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"."
msgstr "约束\"%s\"包含到表\"%s\"的整行引用."
-#: commands/tablecmds.c:1824
+#: commands/tablecmds.c:2340
#, c-format
msgid "merging column \"%s\" with inherited definition"
msgstr "合并属性 \"%s\" 连同继承定义"
-#: commands/tablecmds.c:1828
+#: commands/tablecmds.c:2344
#, c-format
msgid "moving and merging column \"%s\" with inherited definition"
msgstr "移动\"%s\"并且将它与继承的定义合并"
-#: commands/tablecmds.c:1829
+#: commands/tablecmds.c:2345
#, c-format
msgid "User-specified column moved to the position of the inherited column."
msgstr "被移动到继承列位置的用户指定列。"
-#: commands/tablecmds.c:1836
+#: commands/tablecmds.c:2352
#, c-format
msgid "column \"%s\" has a type conflict"
msgstr "属性 \"%s\" 类型冲突"
-#: commands/tablecmds.c:1848
+#: commands/tablecmds.c:2364
#, c-format
msgid "column \"%s\" has a collation conflict"
msgstr "列 \"%s\" 出现排序规则冲突"
-#: commands/tablecmds.c:1860
+#: commands/tablecmds.c:2382
#, c-format
msgid "column \"%s\" has a storage parameter conflict"
msgstr "列 \"%s\" 带有一个冲突的存储参数"
-#: commands/tablecmds.c:1912
+#: commands/tablecmds.c:2485
#, c-format
msgid "column \"%s\" inherits conflicting default values"
msgstr "属性 \"%s\" 继承与默认值冲突"
-#: commands/tablecmds.c:1914
+#: commands/tablecmds.c:2487
#, c-format
msgid "To resolve the conflict, specify a default explicitly."
msgstr "要解决冲突, 指定明确的默认值"
-#: commands/tablecmds.c:1961
+#: commands/tablecmds.c:2534
#, c-format
-msgid ""
-"check constraint name \"%s\" appears multiple times but with different "
-"expressions"
+msgid "check constraint name \"%s\" appears multiple times but with different expressions"
msgstr "检查约束名称\"%s\"出现多次,但是带有不同的表达式"
-#: commands/tablecmds.c:2155
+#: commands/tablecmds.c:2711
#, c-format
msgid "cannot rename column of typed table"
msgstr "无法重新命名已确定类型表(typed table)的列"
-#: commands/tablecmds.c:2172
+#: commands/tablecmds.c:2730
#, c-format
-msgid ""
-"\"%s\" is not a table, view, materialized view, composite type, index, or "
-"foreign table"
+msgid "\"%s\" is not a table, view, materialized view, composite type, index, or foreign table"
msgstr "\"%s\" 不是一个表,视图,物化视图,组合类型,索引或者外部表"
-#: commands/tablecmds.c:2266
+#: commands/tablecmds.c:2824
#, c-format
msgid "inherited column \"%s\" must be renamed in child tables too"
msgstr "在子表中继承属性 \"%s\" 也必需重命名"
-#: commands/tablecmds.c:2298
+#: commands/tablecmds.c:2856
#, c-format
msgid "cannot rename system column \"%s\""
msgstr "不能对系统字段 \"%s\" 重命名"
-#: commands/tablecmds.c:2313
+#: commands/tablecmds.c:2871
#, c-format
msgid "cannot rename inherited column \"%s\""
msgstr "不能对继承字段 \"%s\" 重命名"
-#: commands/tablecmds.c:2468
+#: commands/tablecmds.c:3023
#, c-format
msgid "inherited constraint \"%s\" must be renamed in child tables too"
msgstr "继承约束 \"%s\" 在子表中也必须重命名"
-#: commands/tablecmds.c:2475
+#: commands/tablecmds.c:3030
#, c-format
msgid "cannot rename inherited constraint \"%s\""
msgstr "无法重命名约束\"%s\""
#. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2701
+#: commands/tablecmds.c:3256
#, c-format
-msgid ""
-"cannot %s \"%s\" because it is being used by active queries in this session"
+msgid "cannot %s \"%s\" because it is being used by active queries in this session"
msgstr "无法%s \"%s\" 因为它正在被这个会话中的活动查询使用"
#. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2710
+#: commands/tablecmds.c:3266
#, c-format
msgid "cannot %s \"%s\" because it has pending trigger events"
msgstr "无法%s \"%s\"因为它有一个待发生的触发器事件"
-#: commands/tablecmds.c:3786
+#: commands/tablecmds.c:4414
#, c-format
msgid "cannot rewrite system relation \"%s\""
msgstr "不能改写系统关系 \"%s\""
-#: commands/tablecmds.c:3792
+#: commands/tablecmds.c:4420
#, c-format
msgid "cannot rewrite table \"%s\" used as a catalog table"
msgstr "无法重写表\"%s\",以用作一个目录表"
-#: commands/tablecmds.c:3802
+#: commands/tablecmds.c:4430
#, c-format
msgid "cannot rewrite temporary tables of other sessions"
msgstr "不能改写其他会话的临时表"
-#: commands/tablecmds.c:4070
+#: commands/tablecmds.c:4707
#, c-format
msgid "rewriting table \"%s\""
msgstr "重写表 \"%s\""
-#: commands/tablecmds.c:4074
+#: commands/tablecmds.c:4711
#, c-format
msgid "verifying table \"%s\""
msgstr "校验表\"%s\""
-#: commands/tablecmds.c:4188
+#: commands/tablecmds.c:4827
#, c-format
msgid "column \"%s\" contains null values"
msgstr "字段 \"%s\" 包含空值"
-#: commands/tablecmds.c:4203 commands/tablecmds.c:7368
+#: commands/tablecmds.c:4843 commands/tablecmds.c:8920
#, c-format
msgid "check constraint \"%s\" is violated by some row"
msgstr "一些行违反了检查约束 \"%s\""
-#: commands/tablecmds.c:4351 commands/trigger.c:235
-#: rewrite/rewriteDefine.c:267 rewrite/rewriteDefine.c:912
+#: commands/tablecmds.c:4861
+#, c-format
+msgid "updated partition constraint for default partition would be violated by some row"
+msgstr "某些行将违反默认分区的更新分区约束"
+
+#: commands/tablecmds.c:4865
+#, c-format
+msgid "partition constraint is violated by some row"
+msgstr "某些行违反了分区约束"
+
+#: commands/tablecmds.c:5007 commands/trigger.c:310 rewrite/rewriteDefine.c:266
+#: rewrite/rewriteDefine.c:919
#, c-format
msgid "\"%s\" is not a table or view"
msgstr "\"%s\" 不是一个视图或视图"
-#: commands/tablecmds.c:4354 commands/trigger.c:1119 commands/trigger.c:1224
+#: commands/tablecmds.c:5010 commands/trigger.c:1520 commands/trigger.c:1626
#, c-format
msgid "\"%s\" is not a table, view, or foreign table"
msgstr "\"%s\"不是表,视图或外部表"
-#: commands/tablecmds.c:4357
+#: commands/tablecmds.c:5013
#, c-format
msgid "\"%s\" is not a table, view, materialized view, or index"
msgstr "\"%s\" 不是表,视图,物化视图,或者索引"
-#: commands/tablecmds.c:4363
+#: commands/tablecmds.c:5019
#, c-format
msgid "\"%s\" is not a table, materialized view, or index"
msgstr "\"%s\" 不是一个表,物化视图或索引"
-#: commands/tablecmds.c:4366
+#: commands/tablecmds.c:5022
#, c-format
msgid "\"%s\" is not a table, materialized view, or foreign table"
msgstr "\"%s\"不是表、物化视图或者外部表"
-#: commands/tablecmds.c:4369
+#: commands/tablecmds.c:5025
#, c-format
msgid "\"%s\" is not a table or foreign table"
msgstr "\"%s\" 不是表或外部表"
-#: commands/tablecmds.c:4372
+#: commands/tablecmds.c:5028
#, c-format
msgid "\"%s\" is not a table, composite type, or foreign table"
msgstr "\"%s\" 不是一个表,组合类型或者外部表"
-#: commands/tablecmds.c:4375 commands/tablecmds.c:5427
+#: commands/tablecmds.c:5031 commands/tablecmds.c:6449
#, c-format
msgid "\"%s\" is not a table, materialized view, index, or foreign table"
msgstr "\"%s\"不是表,物化视图, 索引或外部表"
-#: commands/tablecmds.c:4385
+#: commands/tablecmds.c:5041
#, c-format
msgid "\"%s\" is of the wrong type"
msgstr "\"%s\" 是一个错误类型"
-#: commands/tablecmds.c:4537 commands/tablecmds.c:4544
+#: commands/tablecmds.c:5216 commands/tablecmds.c:5223
#, c-format
msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
msgstr "不能修改类型 \"%s\", 因为列 \"%s.%s\"正在使用它"
-#: commands/tablecmds.c:4551
+#: commands/tablecmds.c:5230
#, c-format
-msgid ""
-"cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
+msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
msgstr "无法修改外部表\"%s\" ,因为列\"%s.%s\"使用它的行类型"
-#: commands/tablecmds.c:4558
+#: commands/tablecmds.c:5237
#, c-format
msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
msgstr "无法修改表\"%s\" ,因为列\"%s.%s\"使用它的行类型"
-#: commands/tablecmds.c:4620
+#: commands/tablecmds.c:5291
#, c-format
msgid "cannot alter type \"%s\" because it is the type of a typed table"
msgstr "无法修改已确定类型表(typed table)中列的类型\"%s\""
-#: commands/tablecmds.c:4622
+#: commands/tablecmds.c:5293
#, c-format
msgid "Use ALTER ... CASCADE to alter the typed tables too."
msgstr "使用ALTER .. CASCADE 把类型表一并修改."
-#: commands/tablecmds.c:4666
+#: commands/tablecmds.c:5339
#, c-format
msgid "type %s is not a composite type"
msgstr "类型 %s 不是复合类型"
-#: commands/tablecmds.c:4692
+#: commands/tablecmds.c:5365
#, c-format
msgid "cannot add column to typed table"
msgstr "无法为已确定类型表(typed table)添加列"
-#: commands/tablecmds.c:4760 commands/tablecmds.c:10256
+#: commands/tablecmds.c:5409
+#, c-format
+msgid "cannot add column to a partition"
+msgstr "无法将列添加到分区"
+
+#: commands/tablecmds.c:5438 commands/tablecmds.c:12213
#, c-format
msgid "child table \"%s\" has different type for column \"%s\""
msgstr "子表 \"%s\" 的字段 \"%s\" 有不同的类型"
-#: commands/tablecmds.c:4766 commands/tablecmds.c:10263
+#: commands/tablecmds.c:5444 commands/tablecmds.c:12220
#, c-format
msgid "child table \"%s\" has different collation for column \"%s\""
msgstr "子表 \"%s\" 的字段 \"%s\" 有不同的排序规则"
-#: commands/tablecmds.c:4776
+#: commands/tablecmds.c:5454
#, c-format
msgid "child table \"%s\" has a conflicting \"%s\" column"
msgstr "子表\"%s\"有一个冲突列\"%s\""
-#: commands/tablecmds.c:4788
+#: commands/tablecmds.c:5465
#, c-format
msgid "merging definition of column \"%s\" for child \"%s\""
msgstr "合并子表 \"%2$s\" 的字段 \"%1$s\" 定义"
-#: commands/tablecmds.c:5015
+#: commands/tablecmds.c:5489
+#, c-format
+msgid "cannot recursively add identity column to table that has child tables"
+msgstr "无法将标识列递归添加到具有子表的表中"
+
+#: commands/tablecmds.c:5738
#, c-format
msgid "column must be added to child tables too"
msgstr "属性也必需加入到子表中"
-#: commands/tablecmds.c:5090
+#: commands/tablecmds.c:5813
#, c-format
-#| msgid "column \"%s\" of relation \"%s\" already exists"
msgid "column \"%s\" of relation \"%s\" already exists, skipping"
msgstr "关系 \"%2$s\" 的列 \"%1$s\" 已经存在,跳过"
-#: commands/tablecmds.c:5097
+#: commands/tablecmds.c:5820
#, c-format
msgid "column \"%s\" of relation \"%s\" already exists"
msgstr "关系 \"%s\" 的属性 \"%s\" 已经存在"
-#: commands/tablecmds.c:5208 commands/tablecmds.c:5314
-#: commands/tablecmds.c:5372 commands/tablecmds.c:5486
-#: commands/tablecmds.c:5543 commands/tablecmds.c:5637
-#: commands/tablecmds.c:7886 commands/tablecmds.c:8511
+#: commands/tablecmds.c:5918 commands/tablecmds.c:9379
+#, c-format
+msgid "cannot remove constraint from only the partitioned table when partitions exist"
+msgstr "存在分区时,不能仅从分区表中删除约束"
+
+#: commands/tablecmds.c:5919 commands/tablecmds.c:6063
+#: commands/tablecmds.c:6847 commands/tablecmds.c:9380
+#, c-format
+msgid "Do not specify the ONLY keyword."
+msgstr "不要指定ONLY关键字"
+
+#: commands/tablecmds.c:5951 commands/tablecmds.c:6099
+#: commands/tablecmds.c:6154 commands/tablecmds.c:6230
+#: commands/tablecmds.c:6324 commands/tablecmds.c:6383
+#: commands/tablecmds.c:6533 commands/tablecmds.c:6603
+#: commands/tablecmds.c:6695 commands/tablecmds.c:9519
+#: commands/tablecmds.c:10294
#, c-format
msgid "cannot alter system column \"%s\""
msgstr "不能更改系统字段 \"%s\""
-#: commands/tablecmds.c:5244
+#: commands/tablecmds.c:5957 commands/tablecmds.c:6160
+#, c-format
+msgid "column \"%s\" of relation \"%s\" is an identity column"
+msgstr "关系\"%2$s\"的列\"%1$s\"是标识列"
+
+#: commands/tablecmds.c:5993
#, c-format
msgid "column \"%s\" is in a primary key"
msgstr "字段 \"%s\" 是一个主键"
-#: commands/tablecmds.c:5459
+#: commands/tablecmds.c:6015
+#, c-format
+msgid "column \"%s\" is marked NOT NULL in parent table"
+msgstr "列\"%s\"在父表中标记为NOT NULL"
+
+#: commands/tablecmds.c:6062
+#, c-format
+msgid "cannot add constraint to only the partitioned table when partitions exist"
+msgstr "存在分区时,无法仅向分区表添加约束"
+
+#: commands/tablecmds.c:6162
+#, c-format
+msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY instead."
+msgstr "用ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY代替"
+
+#: commands/tablecmds.c:6241
+#, c-format
+msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added"
+msgstr "在添加标识之前,必须声明关系\"%2$s\"的列\"%1$s\"为NOT NULL"
+
+#: commands/tablecmds.c:6247
+#, c-format
+msgid "column \"%s\" of relation \"%s\" is already an identity column"
+msgstr "关系\"%2$s\"的列\"%1$s\"已经是标识列"
+
+#: commands/tablecmds.c:6253
+#, c-format
+msgid "column \"%s\" of relation \"%s\" already has a default value"
+msgstr "关系\"%2$s\"的列\"%1$s\"已具有默认值"
+
+#: commands/tablecmds.c:6330 commands/tablecmds.c:6391
+#, c-format
+msgid "column \"%s\" of relation \"%s\" is not an identity column"
+msgstr "关系\"%2$s\"的列\"%1$s\"不是标识列"
+
+#: commands/tablecmds.c:6396
+#, c-format
+msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping"
+msgstr "关系\"%2$s\"的列\"%1$s\"不是标识列,跳过"
+
+#: commands/tablecmds.c:6461
+#, c-format
+msgid "cannot refer to non-index column by number"
+msgstr "不能按数字引用非索引列"
+
+#: commands/tablecmds.c:6492
#, c-format
msgid "statistics target %d is too low"
msgstr "目标统计 %d 太低"
-#: commands/tablecmds.c:5467
+#: commands/tablecmds.c:6500
#, c-format
msgid "lowering statistics target to %d"
msgstr "降低目标统计到 %d"
-#: commands/tablecmds.c:5617
+#: commands/tablecmds.c:6523
+#, c-format
+msgid "column number %d of relation \"%s\" does not exist"
+msgstr "在关系\"%2$s\"中的列号 %1$d 不存在"
+
+#: commands/tablecmds.c:6542
+#, c-format
+msgid "cannot alter statistics on included column \"%s\" of index \"%s\""
+msgstr "无法更改索引\"%2$s\"的包含列\"%1$s\"的统计信息"
+
+#: commands/tablecmds.c:6547
+#, c-format
+msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\""
+msgstr "无法更改索引\"%2$s\"的非表达式列\"%1$s\"的统计信息"
+
+#: commands/tablecmds.c:6549
+#, c-format
+msgid "Alter statistics on table column instead."
+msgstr "改为更改表列的统计信息."
+
+#: commands/tablecmds.c:6675
#, c-format
msgid "invalid storage type \"%s\""
msgstr "无效存储类型 \"%s\""
-#: commands/tablecmds.c:5649
+#: commands/tablecmds.c:6707
#, c-format
msgid "column data type %s can only have storage PLAIN"
msgstr "字段数据类型 %s 只能存储为明文 (PLAIN)"
-#: commands/tablecmds.c:5687
+#: commands/tablecmds.c:6742
#, c-format
msgid "cannot drop column from typed table"
msgstr "无法从已确定类型表(typed table)中删除列"
-#: commands/tablecmds.c:5731
+#: commands/tablecmds.c:6787
#, c-format
msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
-msgstr "关系 \"%2$s\" 的 列\"%1$s\"不存在"
+msgstr "关系 \"%2$s\" 的 列\"%1$s\"不存在,跳过"
-#: commands/tablecmds.c:5744
+#: commands/tablecmds.c:6800
#, c-format
msgid "cannot drop system column \"%s\""
msgstr "不能删除系统字段 \"%s\""
-#: commands/tablecmds.c:5751
+#: commands/tablecmds.c:6807
#, c-format
msgid "cannot drop inherited column \"%s\""
msgstr "不能删除继承字段 \"%s\""
-#: commands/tablecmds.c:5991
+#: commands/tablecmds.c:6818
#, c-format
-msgid ""
-"ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
-msgstr ""
-"ALTER TABLE / ADD CONSTRAINT USING INDEX 会把索引 \"%s\" 重命名为 \"%s\""
+msgid "cannot drop column named in partition key"
+msgstr "无法删除分区键中的命名列"
+
+#: commands/tablecmds.c:6822
+#, c-format
+msgid "cannot drop column referenced in partition key expression"
+msgstr "无法删除分区键表达式中引用的列"
+
+#: commands/tablecmds.c:6846
+#, c-format
+msgid "cannot drop column from only the partitioned table when partitions exist"
+msgstr "存在分区时,不能只从分区表中删除列"
+
+#: commands/tablecmds.c:7051
+#, c-format
+msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned tables"
+msgstr "分区表不支持ALTER TABLE / ADD CONSTRAINT USING INDEX"
+
+#: commands/tablecmds.c:7076
+#, c-format
+msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
+msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX 会把索引 \"%s\" 重命名为 \"%s\""
-#: commands/tablecmds.c:6204
+#: commands/tablecmds.c:7292
#, c-format
msgid "constraint must be added to child tables too"
msgstr "必须也要对子表加上约束"
-#: commands/tablecmds.c:6275
+#: commands/tablecmds.c:7365
+#, c-format
+msgid "cannot reference partitioned table \"%s\""
+msgstr "无法引用分区表\"%s\""
+
+#: commands/tablecmds.c:7373
+#, c-format
+msgid "cannot use ONLY for foreign key on partitioned table \"%s\" referencing relation \"%s\""
+msgstr "不能对引用关系\"%2$s\"的分区表\"%1$s\"使用ONLY作为外键"
+
+#: commands/tablecmds.c:7379
+#, c-format
+msgid "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing relation \"%s\""
+msgstr "无法在引用关系\"%2$s\"的分区表\"%1$s\"添加 NOT VALID外键"
+
+#: commands/tablecmds.c:7382
+#, c-format
+msgid "This feature is not yet supported on partitioned tables."
+msgstr "分区表尚不支持此功能"
+
+#: commands/tablecmds.c:7388
#, c-format
msgid "referenced relation \"%s\" is not a table"
msgstr "关联的关系 \"%s\" 不是一个表"
-#: commands/tablecmds.c:6298
+#: commands/tablecmds.c:7411
#, c-format
msgid "constraints on permanent tables may reference only permanent tables"
msgstr "永久表上的约束只能引用永久表"
-#: commands/tablecmds.c:6305
+#: commands/tablecmds.c:7418
#, c-format
-msgid ""
-"constraints on unlogged tables may reference only permanent or unlogged "
-"tables"
+msgid "constraints on unlogged tables may reference only permanent or unlogged tables"
msgstr "无事务日志的表上的约束只能引用持久表或者无事务日志的表"
-#: commands/tablecmds.c:6311
+#: commands/tablecmds.c:7424
#, c-format
msgid "constraints on temporary tables may reference only temporary tables"
msgstr "临时表上的约束只能引用临时表"
-#: commands/tablecmds.c:6315
+#: commands/tablecmds.c:7428
#, c-format
-msgid ""
-"constraints on temporary tables must involve temporary tables of this session"
+msgid "constraints on temporary tables must involve temporary tables of this session"
msgstr "临时表上的约束只能引用该会话里的临时表"
-#: commands/tablecmds.c:6376
+#: commands/tablecmds.c:7488
#, c-format
msgid "number of referencing and referenced columns for foreign key disagree"
msgstr "外键的关联数和关联字段不一致"
-#: commands/tablecmds.c:6483
+#: commands/tablecmds.c:7595
#, c-format
msgid "foreign key constraint \"%s\" cannot be implemented"
msgstr "无法实现外键约束 \"%s\""
-#: commands/tablecmds.c:6486
+#: commands/tablecmds.c:7598
#, c-format
msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
msgstr "关键字段 \"%s\" 和 \"%s\" 为混和类型: %s 和 %s."
-#: commands/tablecmds.c:6693 commands/tablecmds.c:6843
-#: commands/tablecmds.c:7725 commands/tablecmds.c:7781
+#: commands/tablecmds.c:8220 commands/tablecmds.c:8385
+#: commands/tablecmds.c:9336 commands/tablecmds.c:9411
#, c-format
msgid "constraint \"%s\" of relation \"%s\" does not exist"
msgstr "关系 \"%2$s\" 的 约束\"%1$s\" 不存在"
-#: commands/tablecmds.c:6699
+#: commands/tablecmds.c:8227
#, c-format
msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint"
msgstr "关系 \"%2$s\" 的 约束\"%1$s\"不是外键约束"
-#: commands/tablecmds.c:6850
+#: commands/tablecmds.c:8393
#, c-format
-msgid ""
-"constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
+msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
msgstr "关系 \"%2$s\" 的 约束\"%1$s\"不是外键,也不是check约束"
-#: commands/tablecmds.c:6918
+#: commands/tablecmds.c:8463
#, c-format
msgid "constraint must be validated on child tables too"
msgstr "子表上的约束也必须进行验证"
-#: commands/tablecmds.c:6987
+#: commands/tablecmds.c:8531
#, c-format
msgid "column \"%s\" referenced in foreign key constraint does not exist"
msgstr "在外键约束中的关联字段 \"%s\" 不存在"
-#: commands/tablecmds.c:6992
+#: commands/tablecmds.c:8536
#, c-format
msgid "cannot have more than %d keys in a foreign key"
msgstr "在一个外键中不能超过 %d 个键"
-#: commands/tablecmds.c:7057
+#: commands/tablecmds.c:8601
#, c-format
msgid "cannot use a deferrable primary key for referenced table \"%s\""
msgstr "无法为被引用的表\"%s\"使用可延迟的主键"
-#: commands/tablecmds.c:7074
+#: commands/tablecmds.c:8618
#, c-format
msgid "there is no primary key for referenced table \"%s\""
msgstr "关联表 \"%s\" 没有主键"
-#: commands/tablecmds.c:7139
+#: commands/tablecmds.c:8683
#, c-format
msgid "foreign key referenced-columns list must not contain duplicates"
msgstr "外键参照列的列表不能有重复值"
-#: commands/tablecmds.c:7233
+#: commands/tablecmds.c:8777
#, c-format
msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
msgstr "无法为被引用的表\"%s\"使用可延迟的唯一性约束"
-#: commands/tablecmds.c:7238
+#: commands/tablecmds.c:8782
#, c-format
-msgid ""
-"there is no unique constraint matching given keys for referenced table \"%s\""
+msgid "there is no unique constraint matching given keys for referenced table \"%s\""
msgstr "没有唯一约束与关联表 \"%s\" 给定的键值匹配"
-#: commands/tablecmds.c:7401
+#: commands/tablecmds.c:8953
#, c-format
msgid "validating foreign key constraint \"%s\""
msgstr "正验证外键约束 \"%s\""
-#: commands/tablecmds.c:7697
+#: commands/tablecmds.c:9292
#, c-format
msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
msgstr "不能删除关系\"%2$s\"的继承约束\"%1$s\""
-#: commands/tablecmds.c:7731
+#: commands/tablecmds.c:9342
#, c-format
msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
msgstr "关系 \"%2$s\" 的 约束\"%1$s\" 不存在"
-#: commands/tablecmds.c:7870
+#: commands/tablecmds.c:9503
#, c-format
msgid "cannot alter column type of typed table"
msgstr "无法修改已确定类型表(typed table)中列的类型"
-#: commands/tablecmds.c:7893
+#: commands/tablecmds.c:9526
#, c-format
msgid "cannot alter inherited column \"%s\""
msgstr "不能修改继承字段 \"%s\""
-#: commands/tablecmds.c:7942
+#: commands/tablecmds.c:9537
#, c-format
-msgid ""
-"result of USING clause for column \"%s\" cannot be cast automatically to "
-"type %s"
+msgid "cannot alter type of column named in partition key"
+msgstr "无法更改分区键中命名列的类型"
+
+#: commands/tablecmds.c:9541
+#, c-format
+msgid "cannot alter type of column referenced in partition key expression"
+msgstr "无法更改分区键表达式中引用的列的类型"
+
+#: commands/tablecmds.c:9591
+#, c-format
+msgid "result of USING clause for column \"%s\" cannot be cast automatically to type %s"
msgstr "用于列\"%s\"的USING子句的结果不能被自动地转换成类型%s"
-#: commands/tablecmds.c:7945
+#: commands/tablecmds.c:9594
#, c-format
msgid "You might need to add an explicit cast."
msgstr "您可能需要增加一个显式转换。"
-#: commands/tablecmds.c:7949
+#: commands/tablecmds.c:9598
#, c-format
msgid "column \"%s\" cannot be cast automatically to type %s"
msgstr "字段 \"%s\" 不能自动转换成类型 %s"
#. translator: USING is SQL, don't translate it
-#: commands/tablecmds.c:7952
+#: commands/tablecmds.c:9601
#, c-format
msgid "You might need to specify \"USING %s::%s\"."
msgstr "您可能需要指定\"USING %s::%s\"。"
-#: commands/tablecmds.c:8005
+#: commands/tablecmds.c:9700
+#, c-format
+msgid "USING expression contains a whole-row table reference."
+msgstr "USING表达式包含整行表引用."
+
+#: commands/tablecmds.c:9711
#, c-format
msgid "type of inherited column \"%s\" must be changed in child tables too"
msgstr "在子表中继承字段 \"%s\" 的类型也必需改变"
-#: commands/tablecmds.c:8092
+#: commands/tablecmds.c:9815
#, c-format
msgid "cannot alter type of column \"%s\" twice"
msgstr "不能更改字段 \"%s\" 的类型两遍"
-#: commands/tablecmds.c:8128
+#: commands/tablecmds.c:9851
#, c-format
msgid "default for column \"%s\" cannot be cast automatically to type %s"
msgstr "字段 \"%s\" 的默认值不能转换成类型 %s"
-#: commands/tablecmds.c:8254
+#: commands/tablecmds.c:9957
#, c-format
msgid "cannot alter type of a column used by a view or rule"
msgstr "不能使用视图或规则改变一个字段的类型"
-#: commands/tablecmds.c:8255 commands/tablecmds.c:8274
-#: commands/tablecmds.c:8292
+#: commands/tablecmds.c:9958 commands/tablecmds.c:9977
+#: commands/tablecmds.c:9995
#, c-format
msgid "%s depends on column \"%s\""
msgstr "%s 倚赖于字段 \"%s\""
-#: commands/tablecmds.c:8273
+#: commands/tablecmds.c:9976
#, c-format
msgid "cannot alter type of a column used in a trigger definition"
msgstr "无法更改触发器定义中的列类型"
-#: commands/tablecmds.c:8291
+#: commands/tablecmds.c:9994
#, c-format
msgid "cannot alter type of a column used in a policy definition"
msgstr "无法修改被用在策略定义中的列的类型"
-#: commands/tablecmds.c:8956
+#: commands/tablecmds.c:10797 commands/tablecmds.c:10809
#, c-format
msgid "cannot change owner of index \"%s\""
msgstr "无法改变索引\"%s\" 的属主"
-#: commands/tablecmds.c:8958
+#: commands/tablecmds.c:10799 commands/tablecmds.c:10811
#, c-format
msgid "Change the ownership of the index's table, instead."
msgstr "可以改变索引表的所有权"
-#: commands/tablecmds.c:8974
+#: commands/tablecmds.c:10825
#, c-format
msgid "cannot change owner of sequence \"%s\""
msgstr "无法改变序列 \"%s\"的属主"
-#: commands/tablecmds.c:8976 commands/tablecmds.c:11398
-#, c-format
-msgid "Sequence \"%s\" is linked to table \"%s\"."
-msgstr "序列 \"%s\"已链接到表\"%s\"."
-
-#: commands/tablecmds.c:8988 commands/tablecmds.c:12045
+#: commands/tablecmds.c:10839 commands/tablecmds.c:14123
#, c-format
msgid "Use ALTER TYPE instead."
msgstr "请使用ALTER TYPE"
-#: commands/tablecmds.c:8997
+#: commands/tablecmds.c:10848
#, c-format
msgid "\"%s\" is not a table, view, sequence, or foreign table"
msgstr "\"%s\" 不是表,视图,序列或者外部表"
-#: commands/tablecmds.c:9340
+#: commands/tablecmds.c:11188
#, c-format
msgid "cannot have multiple SET TABLESPACE subcommands"
msgstr "无法执行多个SET TABLESPACE子命令"
-#: commands/tablecmds.c:9413
+#: commands/tablecmds.c:11263
#, c-format
msgid "\"%s\" is not a table, view, materialized view, index, or TOAST table"
msgstr "\"%s\"不是表,视图, 物化视图, 索引或TOAST表"
-#: commands/tablecmds.c:9446 commands/view.c:481
+#: commands/tablecmds.c:11296 commands/view.c:508
#, c-format
msgid "WITH CHECK OPTION is supported only on automatically updatable views"
msgstr "WITH CHECK OPTION只能用于自动更新视图上"
-#: commands/tablecmds.c:9592
+#: commands/tablecmds.c:11438
#, c-format
msgid "cannot move system relation \"%s\""
msgstr "不能删除系统关系 \"%s\""
-#: commands/tablecmds.c:9608
+#: commands/tablecmds.c:11454
#, c-format
msgid "cannot move temporary tables of other sessions"
msgstr "不能在其他会话中删除临时表"
-#: commands/tablecmds.c:9745
+#: commands/tablecmds.c:11645
#, c-format
msgid "only tables, indexes, and materialized views exist in tablespaces"
msgstr "只有表、索引以及物化视图存在于表空间当中"
-#: commands/tablecmds.c:9757
+#: commands/tablecmds.c:11657
#, c-format
msgid "cannot move relations in to or out of pg_global tablespace"
msgstr "无法将关系移入或移出表空间pg_global"
-#: commands/tablecmds.c:9848
+#: commands/tablecmds.c:11750
#, c-format
msgid "aborting because lock on relation \"%s.%s\" is not available"
msgstr "由于关系\"%s.%s\"上的锁不可用而中止"
# describe.c:1542
-#: commands/tablecmds.c:9864
+#: commands/tablecmds.c:11766
#, c-format
msgid "no matching relations in tablespace \"%s\" found"
msgstr "表空间\"%s\"中没有找到符合的关系"
-#: commands/tablecmds.c:9938 storage/buffer/bufmgr.c:915
+#: commands/tablecmds.c:11833 storage/buffer/bufmgr.c:915
#, c-format
msgid "invalid page in block %u of relation %s"
msgstr "关系 \"%2$s\" 中的块 %1$u 存在无效的页"
-#: commands/tablecmds.c:10020
+#: commands/tablecmds.c:11913
#, c-format
msgid "cannot change inheritance of typed table"
msgstr "无法改变已确定类型表(typed table)的继承性"
-#: commands/tablecmds.c:10070
+#: commands/tablecmds.c:11918 commands/tablecmds.c:12461
+#, c-format
+msgid "cannot change inheritance of a partition"
+msgstr "无法更改分区的继承"
+
+#: commands/tablecmds.c:11923
+#, c-format
+msgid "cannot change inheritance of partitioned table"
+msgstr "无法更改分区表的继承"
+
+#: commands/tablecmds.c:11969
#, c-format
msgid "cannot inherit to temporary relation of another session"
msgstr "无法继承来自另一会话中的临时关系"
-#: commands/tablecmds.c:10124
+#: commands/tablecmds.c:11982
+#, c-format
+msgid "cannot inherit from a partition"
+msgstr "无法从分区继承"
+
+#: commands/tablecmds.c:12004 commands/tablecmds.c:14707
#, c-format
msgid "circular inheritance not allowed"
msgstr "不允许循环继承"
-#: commands/tablecmds.c:10125
+#: commands/tablecmds.c:12005 commands/tablecmds.c:14708
#, c-format
msgid "\"%s\" is already a child of \"%s\"."
msgstr "\"%s\" 已经是 \"%s\"的子表了."
-#: commands/tablecmds.c:10133
+#: commands/tablecmds.c:12013
#, c-format
msgid "table \"%s\" without OIDs cannot inherit from table \"%s\" with OIDs"
msgstr "不带有OIDs的表\"%s\"无法从带有OIDs的表\"%s\"继承。"
-#: commands/tablecmds.c:10274
+#: commands/tablecmds.c:12026
+#, c-format
+msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child"
+msgstr "触发器\"%s\"阻止表\"%s\"成为继承子表"
+
+#: commands/tablecmds.c:12028
+#, c-format
+msgid "ROW triggers with transition tables are not supported in inheritance hierarchies"
+msgstr "继承层次结构中不支持具有转换表的行触发器"
+
+#: commands/tablecmds.c:12231
#, c-format
msgid "column \"%s\" in child table must be marked NOT NULL"
msgstr "在子表中的列\"%s\"必须标识为NOT NULL"
-#: commands/tablecmds.c:10290
+#: commands/tablecmds.c:12258 commands/tablecmds.c:12297
#, c-format
msgid "child table is missing column \"%s\""
msgstr "在子表中没有列\"%s\""
-#: commands/tablecmds.c:10373
+#: commands/tablecmds.c:12385
#, c-format
msgid "child table \"%s\" has different definition for check constraint \"%s\""
msgstr "子表 \"%s\" 对于检查约束\"%s\"有不同的定义"
-#: commands/tablecmds.c:10381
+#: commands/tablecmds.c:12393
#, c-format
-msgid ""
-"constraint \"%s\" conflicts with non-inherited constraint on child table \"%s"
-"\""
+msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\""
msgstr "约束 \"%s\" 与子表中的非继承约束 \"%s\"相冲突"
-#: commands/tablecmds.c:10405
+#: commands/tablecmds.c:12404
+#, c-format
+msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\""
+msgstr "约束\"%s\"与子表\"%s\"上的 NOT VALID 约束冲突"
+
+#: commands/tablecmds.c:12439
#, c-format
msgid "child table is missing constraint \"%s\""
msgstr "子表丢失约束\"%s\""
-#: commands/tablecmds.c:10489
+#: commands/tablecmds.c:12528
+#, c-format
+msgid "relation \"%s\" is not a partition of relation \"%s\""
+msgstr "关系\"%s\"不是关系\"%s\"的分区"
+
+#: commands/tablecmds.c:12534
#, c-format
msgid "relation \"%s\" is not a parent of relation \"%s\""
msgstr "关系 \"%s\" 不是关系\"%s\"的父表"
-#: commands/tablecmds.c:10723
+#: commands/tablecmds.c:12760
#, c-format
msgid "typed tables cannot inherit"
msgstr "类型表不能继承"
-#: commands/tablecmds.c:10754
+#: commands/tablecmds.c:12791
#, c-format
msgid "table is missing column \"%s\""
msgstr "表中没有列\"%s\""
-#: commands/tablecmds.c:10764
+#: commands/tablecmds.c:12802
#, c-format
msgid "table has column \"%s\" where type requires \"%s\""
msgstr "表中含有列\"%s\",需要类型\"%s\""
-#: commands/tablecmds.c:10773
+#: commands/tablecmds.c:12811
#, c-format
msgid "table \"%s\" has different type for column \"%s\""
msgstr "表\"%s\"中的列\"%s\"带有不同的类型"
-#: commands/tablecmds.c:10786
+#: commands/tablecmds.c:12825
#, c-format
msgid "table has extra column \"%s\""
msgstr "表含有多余的列\"%s\""
-#: commands/tablecmds.c:10838
+#: commands/tablecmds.c:12877
#, c-format
msgid "\"%s\" is not a typed table"
msgstr "\"%s\" 不是一个类型表"
-#: commands/tablecmds.c:11022
+#: commands/tablecmds.c:13059
#, c-format
msgid "cannot use non-unique index \"%s\" as replica identity"
msgstr "不能将非唯一索引\"%s\"用作复制标识"
-#: commands/tablecmds.c:11028
+#: commands/tablecmds.c:13065
#, c-format
msgid "cannot use non-immediate index \"%s\" as replica identity"
msgstr "不能把非立即索引\"%s\"用作复制标识"
-#: commands/tablecmds.c:11034
+#: commands/tablecmds.c:13071
#, c-format
msgid "cannot use expression index \"%s\" as replica identity"
msgstr "不能将表达式索引\"%s\"用作复制标识"
-#: commands/tablecmds.c:11040
+#: commands/tablecmds.c:13077
#, c-format
msgid "cannot use partial index \"%s\" as replica identity"
msgstr "不能将局部索引\"%s\"用作复制标识"
-#: commands/tablecmds.c:11046
+#: commands/tablecmds.c:13083
#, c-format
msgid "cannot use invalid index \"%s\" as replica identity"
msgstr "不能将无效索引\"%s\"用作复制标识"
-#: commands/tablecmds.c:11067
+#: commands/tablecmds.c:13104
#, c-format
-#| msgid ""
-#| "index \"%s\" cannot be used as replica identity because column \"%s\" is "
-#| "nullable"
-msgid ""
-"index \"%s\" cannot be used as replica identity because column %d is a "
-"system column"
+msgid "index \"%s\" cannot be used as replica identity because column %d is a system column"
msgstr "索引 \"%s\" 不能用做复制标识,因为列 %d 是一个系统列"
-#: commands/tablecmds.c:11074
+#: commands/tablecmds.c:13111
#, c-format
-msgid ""
-"index \"%s\" cannot be used as replica identity because column \"%s\" is "
-"nullable"
+msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable"
msgstr "索引 \"%s\" 不能用于复制标识,因为列\"%s\"非空"
-#: commands/tablecmds.c:11271
+#: commands/tablecmds.c:13304
#, c-format
msgid "cannot change logged status of table \"%s\" because it is temporary"
msgstr "无法更改表\"%s\"的已记录状态,因为它是临时表"
-#: commands/tablecmds.c:11330
+#: commands/tablecmds.c:13328
#, c-format
-msgid ""
-"could not change table \"%s\" to logged because it references unlogged table "
-"\"%s\""
+msgid "cannot change table \"%s\" to unlogged because it is part of a publication"
+msgstr "无法把表\"%s\"更改为不被日志记录,因为它是发布的一部分"
+
+#: commands/tablecmds.c:13330
+#, c-format
+msgid "Unlogged relations cannot be replicated."
+msgstr "无法复制不被日志记录的关系"
+
+#: commands/tablecmds.c:13375
+#, c-format
+msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\""
msgstr "无法把表\"%s\"更改为被日志记录,因为它引用了不被日志记录的表\"%s\""
-#: commands/tablecmds.c:11340
+#: commands/tablecmds.c:13385
#, c-format
-msgid ""
-"could not change table \"%s\" to unlogged because it references logged table "
-"\"%s\""
+msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\""
msgstr "无法把表\"%s\"更改为不被日志记录,因为它引用了日志记录的表\"%s\""
-#: commands/tablecmds.c:11397
+#: commands/tablecmds.c:13443
#, c-format
msgid "cannot move an owned sequence into another schema"
msgstr "无法将已分配的序列移动到另一个模式中"
-#: commands/tablecmds.c:11502
+#: commands/tablecmds.c:13549
#, c-format
msgid "relation \"%s\" already exists in schema \"%s\""
msgstr "在模式\"%2$s\"中已经存在关系\"%1$s\""
-#: commands/tablecmds.c:12029
+#: commands/tablecmds.c:14106
#, c-format
msgid "\"%s\" is not a composite type"
msgstr "\"%s\" 不是组合类型"
-#: commands/tablecmds.c:12059
+#: commands/tablecmds.c:14138
#, c-format
-msgid ""
-"\"%s\" is not a table, view, materialized view, sequence, or foreign table"
+msgid "\"%s\" is not a table, view, materialized view, sequence, or foreign table"
msgstr "\"%s\" 不是表,视图,物化视图,序列或者外部表"
-#: commands/tablespace.c:162 commands/tablespace.c:179
-#: commands/tablespace.c:190 commands/tablespace.c:198
-#: commands/tablespace.c:629 replication/slot.c:969 storage/file/copydir.c:47
+#: commands/tablecmds.c:14173
#, c-format
-msgid "could not create directory \"%s\": %m"
-msgstr "无法创建目录 \"%s\": %m"
+msgid "unrecognized partitioning strategy \"%s\""
+msgstr "无法识别的分区策略 \"%s\""
-#: commands/tablespace.c:209
+#: commands/tablecmds.c:14181
#, c-format
-msgid "could not stat directory \"%s\": %m"
-msgstr "无法取目录 \"%s\" 状态: %m"
+msgid "cannot use \"list\" partition strategy with more than one column"
+msgstr "不能将\"list\"分区策略与多个列一起使用"
-#: commands/tablespace.c:218
+#: commands/tablecmds.c:14246
#, c-format
-msgid "\"%s\" exists but is not a directory"
-msgstr "\"%s\" 存在, 但不是一个目录"
+msgid "column \"%s\" named in partition key does not exist"
+msgstr "分区键中名为\"%s\"的列不存在"
-#: commands/tablespace.c:249
+#: commands/tablecmds.c:14253
#, c-format
-msgid "permission denied to create tablespace \"%s\""
-msgstr "创建表空间 \"%s\" 权限不够"
+msgid "cannot use system column \"%s\" in partition key"
+msgstr "无法在分区键中使用系统列\"%s\""
-#: commands/tablespace.c:251
+#: commands/tablecmds.c:14316
#, c-format
-msgid "Must be superuser to create a tablespace."
-msgstr "å\8fªæ\9c\89è¶\85级ç\94¨æ\88·è\83½å\88\9b建表空é\97´"
+msgid "functions in partition key expression must be marked IMMUTABLE"
+msgstr "å\88\86å\8cºé\94®è¡¨è¾¾å¼\8fä¸å\87½æ\95°å¿\85é\9c\80æ \87记为 IMMUTABLE"
-#: commands/tablespace.c:271
+#: commands/tablecmds.c:14333
#, c-format
-msgid "tablespace location cannot contain single quotes"
-msgstr "表空间路径不能包含单引号"
+msgid "partition key expressions cannot contain whole-row references"
+msgstr "分区键表达式不能包含整行引用"
-#: commands/tablespace.c:281
+#: commands/tablecmds.c:14340
#, c-format
-msgid "tablespace location must be an absolute path"
-msgstr "表空间路径必须为绝对路径"
+msgid "partition key expressions cannot contain system column references"
+msgstr "分区键表达式不能包含系统列引用"
-#: commands/tablespace.c:292
+#: commands/tablecmds.c:14350
#, c-format
-msgid "tablespace location \"%s\" is too long"
-msgstr "表空间路径 \"%s\" 太长"
+msgid "cannot use constant expression as partition key"
+msgstr "不能将常量表达式用作分区键"
-#: commands/tablespace.c:299
+#: commands/tablecmds.c:14371
#, c-format
-msgid "tablespace location should not be inside the data directory"
-msgstr "表空间位置不应该位于数据目录内"
+msgid "could not determine which collation to use for partition expression"
+msgstr "分区表达式上无法确定使用哪个排序规则"
-#: commands/tablespace.c:308 commands/tablespace.c:956
+#: commands/tablecmds.c:14404
#, c-format
-msgid "unacceptable tablespace name \"%s\""
-msgstr "不可访问的表空间名字 \"%s\""
+msgid "data type %s has no default hash operator class"
+msgstr "数据类型 %s 没有默认的哈希运算符类"
-#: commands/tablespace.c:310 commands/tablespace.c:957
+#: commands/tablecmds.c:14406
#, c-format
-msgid "The prefix \"pg_\" is reserved for system tablespaces."
-msgstr "前缀 \"pg_\" 是保留给系统表空间的."
+msgid "You must specify a hash operator class or define a default hash operator class for the data type."
+msgstr "你必须为数据类型指定哈希运算符类或定义默认哈希运算符类."
-#: commands/tablespace.c:320 commands/tablespace.c:969
+#: commands/tablecmds.c:14410
#, c-format
-msgid "tablespace \"%s\" already exists"
-msgstr "表空间 \"%s\" 已经存在"
+msgid "data type %s has no default btree operator class"
+msgstr "数据类型 %s 没有默认的B树运算符类"
-#: commands/tablespace.c:434 commands/tablespace.c:939
-#: commands/tablespace.c:1020 commands/tablespace.c:1089
-#: commands/tablespace.c:1222 commands/tablespace.c:1422
+#: commands/tablecmds.c:14412
#, c-format
-msgid "tablespace \"%s\" does not exist"
-msgstr "表空间 \"%s\" 不存在"
+msgid "You must specify a btree operator class or define a default btree operator class for the data type."
+msgstr "你必须为数据类型指定B树运算符类或定义默认B树运算符类."
-#: commands/tablespace.c:440
+#: commands/tablecmds.c:14537
#, c-format
-msgid "tablespace \"%s\" does not exist, skipping"
-msgstr "表空间 \"%s\" 不存在,跳过"
+msgid "partition constraint for table \"%s\" is implied by existing constraints"
+msgstr "表\"%s\"的分区约束由现有约束隐含"
-#: commands/tablespace.c:516
+#: commands/tablecmds.c:14541 partitioning/partbounds.c:621
+#: partitioning/partbounds.c:666
#, c-format
-msgid "tablespace \"%s\" is not empty"
-msgstr "表空间 \"%s\" 不是空的"
+msgid "updated partition constraint for default partition \"%s\" is implied by existing constraints"
+msgstr "默认分区\"%s\"的更新分区约束由现有约束隐含"
-#: commands/tablespace.c:588
+#: commands/tablecmds.c:14647
#, c-format
-msgid "directory \"%s\" does not exist"
-msgstr "目录 \"%s\" 不存在"
+msgid "\"%s\" is already a partition"
+msgstr "\"%s\" 已经是一个分区了"
-#: commands/tablespace.c:589
+#: commands/tablecmds.c:14653
#, c-format
-msgid "Create this directory for the tablespace before restarting the server."
+msgid "cannot attach a typed table as partition"
+msgstr "无法将类型表附加为分区"
+
+#: commands/tablecmds.c:14669
+#, c-format
+msgid "cannot attach inheritance child as partition"
+msgstr "无法将继承子级附加为分区"
+
+#: commands/tablecmds.c:14683
+#, c-format
+msgid "cannot attach inheritance parent as partition"
+msgstr "无法将继承父级附加为分区"
+
+#: commands/tablecmds.c:14717
+#, c-format
+msgid "cannot attach a temporary relation as partition of permanent relation \"%s\""
+msgstr "不能将临时关系附加为永久关系\"%s\"的分区"
+
+#: commands/tablecmds.c:14725
+#, c-format
+msgid "cannot attach a permanent relation as partition of temporary relation \"%s\""
+msgstr "不能将永久关系附加为临时关系 \"%s\" 的分区"
+
+#: commands/tablecmds.c:14733
+#, c-format
+msgid "cannot attach as partition of temporary relation of another session"
+msgstr "不能作为另一会话的临时关系的分区附加"
+
+#: commands/tablecmds.c:14740
+#, c-format
+msgid "cannot attach temporary relation of another session as partition"
+msgstr "无法将其他会话的临时关系附加为分区"
+
+#: commands/tablecmds.c:14746
+#, c-format
+msgid "cannot attach table \"%s\" without OIDs as partition of table \"%s\" with OIDs"
+msgstr "无法将没有OIDs的表\"%s\"附加为带有OID的表\"%s\"的分区"
+
+#: commands/tablecmds.c:14754
+#, c-format
+msgid "cannot attach table \"%s\" with OIDs as partition of table \"%s\" without OIDs"
+msgstr "无法将OIDs作为表\"%s\"的分区附加到没有OIDs的表\"%s\""
+
+#: commands/tablecmds.c:14776
+#, c-format
+msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\""
+msgstr "表\"%1$s\"包含父表\"%3$s\"中找不到的列\"%2$s\""
+
+#: commands/tablecmds.c:14779
+#, c-format
+msgid "The new partition may contain only the columns present in parent."
+msgstr "新分区只能包含父分区中的列."
+
+#: commands/tablecmds.c:14791
+#, c-format
+msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition"
+msgstr "触发器\"%s\"阻止表\"%s\"成为分区"
+
+#: commands/tablecmds.c:14793 commands/trigger.c:462
+#, c-format
+msgid "ROW triggers with transition tables are not supported on partitions"
+msgstr "分区上不支持具有转换表的行触发器"
+
+#: commands/tablecmds.c:15483 commands/tablecmds.c:15502
+#: commands/tablecmds.c:15524 commands/tablecmds.c:15543
+#: commands/tablecmds.c:15599
+#, c-format
+msgid "cannot attach index \"%s\" as a partition of index \"%s\""
+msgstr "无法将索引\"%s\"作为索引\"%s\"分区附加"
+
+#: commands/tablecmds.c:15486
+#, c-format
+msgid "Index \"%s\" is already attached to another index."
+msgstr "索引\"%s\"已附加到另一个索引"
+
+#: commands/tablecmds.c:15505
+#, c-format
+msgid "Index \"%s\" is not an index on any partition of table \"%s\"."
+msgstr "索引\"%s\"不是表\"%s\"的任何分区上的索引."
+
+# sql_help.h:65
+#: commands/tablecmds.c:15527
+#, c-format
+msgid "The index definitions do not match."
+msgstr "索引定义不匹配"
+
+#: commands/tablecmds.c:15546
+#, c-format
+msgid "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint exists for index \"%s\"."
+msgstr "索引\"%s\"属于表\"%s\"中的约束,但不存在索引\"%s\"的约束."
+
+#: commands/tablecmds.c:15602
+#, c-format
+msgid "Another index is already attached for partition \"%s\"."
+msgstr "已经为分区\"%s\"附加了另一个索引."
+
+#: commands/tablespace.c:163 commands/tablespace.c:180
+#: commands/tablespace.c:191 commands/tablespace.c:199
+#: commands/tablespace.c:625 replication/slot.c:1199 storage/file/copydir.c:47
+#, c-format
+msgid "could not create directory \"%s\": %m"
+msgstr "无法创建目录 \"%s\": %m"
+
+#: commands/tablespace.c:210 utils/adt/genfile.c:581
+#, c-format
+msgid "could not stat directory \"%s\": %m"
+msgstr "无法取目录 \"%s\" 状态: %m"
+
+#: commands/tablespace.c:219
+#, c-format
+msgid "\"%s\" exists but is not a directory"
+msgstr "\"%s\" 存在, 但不是一个目录"
+
+#: commands/tablespace.c:250
+#, c-format
+msgid "permission denied to create tablespace \"%s\""
+msgstr "创建表空间 \"%s\" 权限不够"
+
+#: commands/tablespace.c:252
+#, c-format
+msgid "Must be superuser to create a tablespace."
+msgstr "只有超级用户能创建表空间"
+
+#: commands/tablespace.c:268
+#, c-format
+msgid "tablespace location cannot contain single quotes"
+msgstr "表空间路径不能包含单引号"
+
+#: commands/tablespace.c:278
+#, c-format
+msgid "tablespace location must be an absolute path"
+msgstr "表空间路径必须为绝对路径"
+
+#: commands/tablespace.c:290
+#, c-format
+msgid "tablespace location \"%s\" is too long"
+msgstr "表空间路径 \"%s\" 太长"
+
+#: commands/tablespace.c:297
+#, c-format
+msgid "tablespace location should not be inside the data directory"
+msgstr "表空间位置不应该位于数据目录内"
+
+#: commands/tablespace.c:306 commands/tablespace.c:952
+#, c-format
+msgid "unacceptable tablespace name \"%s\""
+msgstr "不可访问的表空间名字 \"%s\""
+
+#: commands/tablespace.c:308 commands/tablespace.c:953
+#, c-format
+msgid "The prefix \"pg_\" is reserved for system tablespaces."
+msgstr "前缀 \"pg_\" 是保留给系统表空间的."
+
+#: commands/tablespace.c:318 commands/tablespace.c:965
+#, c-format
+msgid "tablespace \"%s\" already exists"
+msgstr "表空间 \"%s\" 已经存在"
+
+#: commands/tablespace.c:430 commands/tablespace.c:935
+#: commands/tablespace.c:1015 commands/tablespace.c:1083
+#: commands/tablespace.c:1216 commands/tablespace.c:1416
+#, c-format
+msgid "tablespace \"%s\" does not exist"
+msgstr "表空间 \"%s\" 不存在"
+
+#: commands/tablespace.c:436
+#, c-format
+msgid "tablespace \"%s\" does not exist, skipping"
+msgstr "表空间 \"%s\" 不存在,跳过"
+
+#: commands/tablespace.c:512
+#, c-format
+msgid "tablespace \"%s\" is not empty"
+msgstr "表空间 \"%s\" 不是空的"
+
+#: commands/tablespace.c:584
+#, c-format
+msgid "directory \"%s\" does not exist"
+msgstr "目录 \"%s\" 不存在"
+
+#: commands/tablespace.c:585
+#, c-format
+msgid "Create this directory for the tablespace before restarting the server."
msgstr "在重新启动服务器前为这个表空间创建该目录."
-#: commands/tablespace.c:594
+#: commands/tablespace.c:590
#, c-format
msgid "could not set permissions on directory \"%s\": %m"
msgstr "无法为目录 \"%s\" 的设置权限: %m"
-#: commands/tablespace.c:624
+#: commands/tablespace.c:620
#, c-format
msgid "directory \"%s\" already in use as a tablespace"
msgstr "目录 \"%s\" 以一个表空间的形式正在使用"
-#: commands/tablespace.c:748 commands/tablespace.c:761
-#: commands/tablespace.c:797 commands/tablespace.c:889
+#: commands/tablespace.c:705 commands/tablespace.c:715
+#: postmaster/postmaster.c:1476 storage/file/fd.c:2695
+#: storage/file/reinit.c:122 utils/adt/genfile.c:483 utils/adt/genfile.c:554
+#: utils/adt/misc.c:436 utils/misc/tzparser.c:339
+#, c-format
+msgid "could not open directory \"%s\": %m"
+msgstr "无法打开目录 \"%s\": %m"
+
+#: commands/tablespace.c:744 commands/tablespace.c:757
+#: commands/tablespace.c:793 commands/tablespace.c:885 storage/file/fd.c:3125
#, c-format
msgid "could not remove directory \"%s\": %m"
msgstr "无法删除目录 \"%s\": %m"
-#: commands/tablespace.c:810 commands/tablespace.c:898
+#: commands/tablespace.c:806 commands/tablespace.c:894
#, c-format
msgid "could not remove symbolic link \"%s\": %m"
msgstr "无法删除符号链接 \"%s\": %m"
-#: commands/tablespace.c:820 commands/tablespace.c:907
+#: commands/tablespace.c:816 commands/tablespace.c:903
#, c-format
msgid "\"%s\" is not a directory or symbolic link"
msgstr "\"%s\" 不是一个目录或者符号链接"
-#: commands/tablespace.c:1094
+#: commands/tablespace.c:1088
#, c-format
msgid "Tablespace \"%s\" does not exist."
msgstr "表空间 \"%s\" 不存在."
-#: commands/tablespace.c:1521
+#: commands/tablespace.c:1515
#, c-format
msgid "directories for tablespace %u could not be removed"
msgstr "表空间 %u 的目录不能被移除"
-#: commands/tablespace.c:1523
+#: commands/tablespace.c:1517
#, c-format
msgid "You can remove the directories manually if necessary."
msgstr "如有必要您可以手动移除这些目录."
-#: commands/trigger.c:184
+#: commands/trigger.c:207 commands/trigger.c:218
#, c-format
msgid "\"%s\" is a table"
msgstr "\"%s\" 是一个表"
-#: commands/trigger.c:186
+#: commands/trigger.c:209 commands/trigger.c:220
#, c-format
msgid "Tables cannot have INSTEAD OF triggers."
msgstr "表不能使用INSTEAD OF触发器."
-#: commands/trigger.c:197 commands/trigger.c:204
+#: commands/trigger.c:237
+#, c-format
+msgid "Partitioned tables cannot have BEFORE / FOR EACH ROW triggers."
+msgstr "分区表不能有 BEFORE / FOR EACH ROW触发器."
+
+#: commands/trigger.c:255
+#, c-format
+msgid "Triggers on partitioned tables cannot have transition tables."
+msgstr "分区表上的触发器不能有转换表 ."
+
+#: commands/trigger.c:267 commands/trigger.c:274 commands/trigger.c:444
#, c-format
msgid "\"%s\" is a view"
msgstr "\"%s\" 是一个视图"
-#: commands/trigger.c:199
+#: commands/trigger.c:269
#, c-format
msgid "Views cannot have row-level BEFORE or AFTER triggers."
msgstr "视图不能使用行级 BEFORE 或 AFTER 触发器."
-#: commands/trigger.c:206
+#: commands/trigger.c:276
#, c-format
msgid "Views cannot have TRUNCATE triggers."
msgstr "视图不能使用 TRUNCATE 触发器."
-#: commands/trigger.c:214 commands/trigger.c:221 commands/trigger.c:228
+#: commands/trigger.c:284 commands/trigger.c:291 commands/trigger.c:303
+#: commands/trigger.c:437
#, c-format
msgid "\"%s\" is a foreign table"
msgstr "\"%s\" 是一个外部表"
-#: commands/trigger.c:216
+#: commands/trigger.c:286
#, c-format
msgid "Foreign tables cannot have INSTEAD OF triggers."
msgstr "外部表不能使用INSTEAD OF触发器."
-#: commands/trigger.c:223
+#: commands/trigger.c:293
#, c-format
msgid "Foreign tables cannot have TRUNCATE triggers."
msgstr "外部表不能使用 TRUNCATE 触发器."
-#: commands/trigger.c:230
+#: commands/trigger.c:305
#, c-format
msgid "Foreign tables cannot have constraint triggers."
msgstr "外部表不能使用约束触发器."
-#: commands/trigger.c:293
+#: commands/trigger.c:380
#, c-format
msgid "TRUNCATE FOR EACH ROW triggers are not supported"
msgstr "不支持使用TRUNCATE FOR EACH ROW触发器"
-#: commands/trigger.c:301
+#: commands/trigger.c:388
#, c-format
msgid "INSTEAD OF triggers must be FOR EACH ROW"
msgstr "INSTEAD OF 触发器必须使用 FOR EACH ROW"
-#: commands/trigger.c:305
+#: commands/trigger.c:392
#, c-format
msgid "INSTEAD OF triggers cannot have WHEN conditions"
msgstr "INSTEAD OF 触发器不能使用 WHEN 条件子句"
-#: commands/trigger.c:309
+#: commands/trigger.c:396
#, c-format
msgid "INSTEAD OF triggers cannot have column lists"
msgstr "INSTEAD OF 触发器不能带有字段列表"
-#: commands/trigger.c:366 commands/trigger.c:379
+#: commands/trigger.c:425
+#, c-format
+msgid "ROW variable naming in the REFERENCING clause is not supported"
+msgstr "不支持REFERENCING子句中的行变量命名"
+
+#: commands/trigger.c:426
+#, c-format
+msgid "Use OLD TABLE or NEW TABLE for naming transition tables."
+msgstr "使用 OLD TABLE 或 NEW TABLE 命名转换表."
+
+#: commands/trigger.c:439
+#, c-format
+msgid "Triggers on foreign tables cannot have transition tables."
+msgstr "外部表上的触发器不能有转换表."
+
+#: commands/trigger.c:446
+#, c-format
+msgid "Triggers on views cannot have transition tables."
+msgstr "视图上的触发器不能有转换表."
+
+#: commands/trigger.c:466
+#, c-format
+msgid "ROW triggers with transition tables are not supported on inheritance children"
+msgstr "继承子级不支持具有转换表的行触发器"
+
+#: commands/trigger.c:472
+#, c-format
+msgid "transition table name can only be specified for an AFTER trigger"
+msgstr "只能为AFTER触发器指定转换表名 "
+
+#: commands/trigger.c:477
+#, c-format
+msgid "TRUNCATE triggers with transition tables are not supported"
+msgstr "不支持使用转换表截断触发器"
+
+#: commands/trigger.c:494
+#, c-format
+msgid "transition tables cannot be specified for triggers with more than one event"
+msgstr "不能为具有多个事件的触发器指定转换表"
+
+#: commands/trigger.c:505
+#, c-format
+msgid "transition tables cannot be specified for triggers with column lists"
+msgstr "不能为具有列列表的触发器指定转换表"
+
+#: commands/trigger.c:522
+#, c-format
+msgid "NEW TABLE can only be specified for an INSERT or UPDATE trigger"
+msgstr "只能为插入或更新触发器指定新表"
+
+#: commands/trigger.c:527
+#, c-format
+msgid "NEW TABLE cannot be specified multiple times"
+msgstr "不能多次指定新表"
+
+#: commands/trigger.c:537
+#, c-format
+msgid "OLD TABLE can only be specified for a DELETE or UPDATE trigger"
+msgstr "只能为删除或更新触发器指定OLD表"
+
+#: commands/trigger.c:542
+#, c-format
+msgid "OLD TABLE cannot be specified multiple times"
+msgstr "不能多次指定OLD表"
+
+#: commands/trigger.c:552
+#, c-format
+msgid "OLD TABLE name and NEW TABLE name cannot be the same"
+msgstr "旧表名和新表名不能相同"
+
+#: commands/trigger.c:614 commands/trigger.c:627
#, c-format
msgid "statement trigger's WHEN condition cannot reference column values"
msgstr "语句级触发器的WHEN条件中不能引用列的值。"
-#: commands/trigger.c:371
+#: commands/trigger.c:619
#, c-format
msgid "INSERT trigger's WHEN condition cannot reference OLD values"
msgstr "在INSERT触发器的WHEN条件中不能引用OLD值。"
-#: commands/trigger.c:384
+#: commands/trigger.c:632
#, c-format
msgid "DELETE trigger's WHEN condition cannot reference NEW values"
msgstr "在DELETE触发器的WHEN条件中不能引用NEW值。"
-#: commands/trigger.c:389
+#: commands/trigger.c:637
#, c-format
msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns"
msgstr "BEFORE类型触发器的WHERE条件不能引用NEW系统列"
-#: commands/trigger.c:434
-#, c-format
-msgid "changing return type of function %s from \"opaque\" to \"trigger\""
-msgstr "改变函数 %s 的返回类型 \"opaque\" 为 \"trigger\""
-
-#: commands/trigger.c:553 commands/trigger.c:1303
+#: commands/trigger.c:810 commands/trigger.c:1705
#, c-format
msgid "trigger \"%s\" for relation \"%s\" already exists"
msgstr "对于关系 \"%2$s\" 的 \"%1$s\" 触发器已经存在"
-#: commands/trigger.c:838
+#: commands/trigger.c:1230
msgid "Found referenced table's UPDATE trigger."
msgstr "找到被引用表的UPDATE触发器"
-#: commands/trigger.c:839
+#: commands/trigger.c:1231
msgid "Found referenced table's DELETE trigger."
msgstr "找到被引用表的DELETE触发器"
-#: commands/trigger.c:840
+#: commands/trigger.c:1232
msgid "Found referencing table's trigger."
msgstr "找到正在引用表的触发器"
-#: commands/trigger.c:949 commands/trigger.c:965
+#: commands/trigger.c:1341 commands/trigger.c:1357
#, c-format
msgid "ignoring incomplete trigger group for constraint \"%s\" %s"
msgstr "对于\"%s\" %s,忽略未完成的触发器组"
-#: commands/trigger.c:977
+#: commands/trigger.c:1370
#, c-format
msgid "converting trigger group into constraint \"%s\" %s"
msgstr "正在将触发器组转换为约束\"%s\" %s"
-#: commands/trigger.c:1190 commands/trigger.c:1351 commands/trigger.c:1469
+#: commands/trigger.c:1591 commands/trigger.c:1750 commands/trigger.c:1886
#, c-format
msgid "trigger \"%s\" for table \"%s\" does not exist"
msgstr "表 \"%2$s\" 的 \"%1$s\" 触发器不存在"
-#: commands/trigger.c:1434
+#: commands/trigger.c:1833
#, c-format
msgid "permission denied: \"%s\" is a system trigger"
msgstr "权限不够: \"%s\" 是一个系统触发器"
-#: commands/trigger.c:1930
+#: commands/trigger.c:2433
#, c-format
msgid "trigger function %u returned null value"
msgstr "触发器函数 %u 返回了空值"
-#: commands/trigger.c:1989 commands/trigger.c:2188 commands/trigger.c:2392
-#: commands/trigger.c:2664
+#: commands/trigger.c:2499 commands/trigger.c:2714 commands/trigger.c:2953
+#: commands/trigger.c:3243
#, c-format
msgid "BEFORE STATEMENT trigger cannot return a value"
msgstr "BEFORE STATEMENT 触发器不能返回一个值"
-#: commands/trigger.c:2726 executor/nodeModifyTable.c:664
-#: executor/nodeModifyTable.c:957
+#: commands/trigger.c:3305 executor/nodeModifyTable.c:756
+#: executor/nodeModifyTable.c:1244
#, c-format
-msgid ""
-"tuple to be updated was already modified by an operation triggered by the "
-"current command"
+msgid "tuple to be updated was already modified by an operation triggered by the current command"
msgstr "待更新元组值已经被当前命令触发的操作修改了"
-#: commands/trigger.c:2727 executor/nodeModifyTable.c:665
-#: executor/nodeModifyTable.c:958
+#: commands/trigger.c:3306 executor/nodeModifyTable.c:757
+#: executor/nodeModifyTable.c:1245
#, c-format
-msgid ""
-"Consider using an AFTER trigger instead of a BEFORE trigger to propagate "
-"changes to other rows."
+msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
msgstr "考虑使用AFTER触发器代替BEFORE触发器,来改变其它行的值."
-#: commands/trigger.c:2741 executor/execMain.c:2369
-#: executor/nodeLockRows.c:216 executor/nodeModifyTable.c:200
-#: executor/nodeModifyTable.c:677 executor/nodeModifyTable.c:970
-#: executor/nodeModifyTable.c:1136
+#: commands/trigger.c:3320 executor/execMain.c:2727 executor/nodeLockRows.c:220
+#: executor/nodeModifyTable.c:225 executor/nodeModifyTable.c:769
+#: executor/nodeModifyTable.c:1257 executor/nodeModifyTable.c:1433
#, c-format
msgid "could not serialize access due to concurrent update"
msgstr "由于同步更新而无法串行访问"
-#: commands/trigger.c:4579
+#: commands/trigger.c:3324 executor/execMain.c:2731 executor/execMain.c:2806
+#: executor/nodeLockRows.c:224
+#, c-format
+msgid "tuple to be locked was already moved to another partition due to concurrent update"
+msgstr "由于同时更新,要锁定的元组已移动到另一个分区"
+
+#: commands/trigger.c:5457
#, c-format
msgid "constraint \"%s\" is not deferrable"
msgstr "约束 \"%s\" 不可展缓"
-#: commands/trigger.c:4602
+#: commands/trigger.c:5480
#, c-format
msgid "constraint \"%s\" does not exist"
msgstr "约束 \"%s\" 不存在"
-#: commands/tsearchcmds.c:115 commands/tsearchcmds.c:685
+#: commands/tsearchcmds.c:115 commands/tsearchcmds.c:679
#, c-format
msgid "function %s should return type %s"
msgstr "函数%s应该返回类型%s的值"
msgid "text search parser lextypes method is required"
msgstr "需要使用文本搜索解析器的lextypes方法"
-#: commands/tsearchcmds.c:386
+#: commands/tsearchcmds.c:384
#, c-format
msgid "text search template \"%s\" does not accept options"
msgstr "文本搜索模板 \"%s\"不接受使用选项"
# describe.c:1753
-#: commands/tsearchcmds.c:460
+#: commands/tsearchcmds.c:458
#, c-format
msgid "text search template is required"
msgstr "要求使用文本搜寻模板"
-#: commands/tsearchcmds.c:752
+#: commands/tsearchcmds.c:746
#, c-format
msgid "must be superuser to create text search templates"
msgstr "只有超级用户能创建文本搜索模板"
-#: commands/tsearchcmds.c:789
+#: commands/tsearchcmds.c:783
#, c-format
msgid "text search template parameter \"%s\" not recognized"
msgstr "未识别文本搜索模板参数\"%s\""
-#: commands/tsearchcmds.c:799
+#: commands/tsearchcmds.c:793
#, c-format
msgid "text search template lexize method is required"
msgstr "要求使用文本搜索模板词汇方法"
-#: commands/tsearchcmds.c:1008
+#: commands/tsearchcmds.c:1000
#, c-format
msgid "text search configuration parameter \"%s\" not recognized"
msgstr "未识别文本搜索配置参数\"%s\""
-#: commands/tsearchcmds.c:1015
+#: commands/tsearchcmds.c:1007
#, c-format
msgid "cannot specify both PARSER and COPY options"
msgstr "不能同时指定PARSER和COPY选项"
-#: commands/tsearchcmds.c:1051
+#: commands/tsearchcmds.c:1043
#, c-format
msgid "text search parser is required"
msgstr "需要使用文本搜索解析器"
-#: commands/tsearchcmds.c:1278
+#: commands/tsearchcmds.c:1265
#, c-format
msgid "token type \"%s\" does not exist"
msgstr "符号类型 \"%s\" 不存在"
-#: commands/tsearchcmds.c:1502
+#: commands/tsearchcmds.c:1486
#, c-format
msgid "mapping for token type \"%s\" does not exist"
msgstr "符号类型\"%s\"的映射不存在"
-#: commands/tsearchcmds.c:1508
+#: commands/tsearchcmds.c:1492
#, c-format
msgid "mapping for token type \"%s\" does not exist, skipping"
msgstr "符号类型\"%s\"的映射不存在, 跳过"
-#: commands/tsearchcmds.c:1663 commands/tsearchcmds.c:1774
+#: commands/tsearchcmds.c:1647 commands/tsearchcmds.c:1758
#, c-format
msgid "invalid parameter list format: \"%s\""
msgstr "无效参数列表格式: \"%s\""
-#: commands/typecmds.c:181
+#: commands/typecmds.c:180
#, c-format
msgid "must be superuser to create a base type"
msgstr "只有超级用户能创建基类型"
-#: commands/typecmds.c:288 commands/typecmds.c:1421
+#: commands/typecmds.c:287 commands/typecmds.c:1483
#, c-format
msgid "type attribute \"%s\" not recognized"
msgstr "类型属性 \"%s\" 不被认可"
-#: commands/typecmds.c:342
+#: commands/typecmds.c:343
#, c-format
msgid "invalid type category \"%s\": must be simple ASCII"
msgstr "无效的类型目录 \"%s\": 必须是简单ASCII"
-#: commands/typecmds.c:361
+#: commands/typecmds.c:362
#, c-format
msgid "array element type cannot be %s"
msgstr "排列元素类型不能为 %s"
-#: commands/typecmds.c:393
+#: commands/typecmds.c:394
#, c-format
msgid "alignment \"%s\" not recognized"
msgstr "alignment \"%s\" 不被认可"
-#: commands/typecmds.c:410
+#: commands/typecmds.c:411
#, c-format
msgid "storage \"%s\" not recognized"
msgstr "存储 \"%s\" 不被认可"
-#: commands/typecmds.c:421
+#: commands/typecmds.c:422
#, c-format
msgid "type input function must be specified"
msgstr "类型输入函数必需指定"
-#: commands/typecmds.c:425
+#: commands/typecmds.c:426
#, c-format
msgid "type output function must be specified"
msgstr "类型输出函数必需指定"
-#: commands/typecmds.c:430
+#: commands/typecmds.c:431
#, c-format
-msgid ""
-"type modifier output function is useless without a type modifier input "
-"function"
+msgid "type modifier output function is useless without a type modifier input function"
msgstr "如果没有类型修改器的输入函数,那么类型修改器的输出函数没有用"
-#: commands/typecmds.c:453 commands/typecmds.c:470
-#, c-format
-#| msgid "changing return type of function %s from \"opaque\" to %s"
-msgid "changing return type of function %s from %s to %s"
-msgstr "把函数 %1$s 的返回类型从 %2$s 改成 %3$s"
-
-#: commands/typecmds.c:460
+#: commands/typecmds.c:461
#, c-format
msgid "type input function %s must return type %s"
msgstr "类型输入函数 %s 必需返回类型 %s"
-#: commands/typecmds.c:477
+#: commands/typecmds.c:478
#, c-format
-#| msgid "type input function %s must return type %s"
msgid "type output function %s must return type %s"
msgstr "类型输出函数 %s 必需返回类型 %s"
-#: commands/typecmds.c:486
+#: commands/typecmds.c:487
#, c-format
msgid "type receive function %s must return type %s"
msgstr "类型接收函数 %s 必需返回类型 %s"
-#: commands/typecmds.c:495
+#: commands/typecmds.c:496
#, c-format
-#| msgid "type input function %s must return type %s"
msgid "type send function %s must return type %s"
msgstr "类型发送函数 %s 必需返回类型 %s"
-#: commands/typecmds.c:560
+#: commands/typecmds.c:561
#, c-format
msgid "type input function %s should not be volatile"
msgstr "类型输入函数%s不能是不稳定的 (volatile)"
-#: commands/typecmds.c:565
+#: commands/typecmds.c:566
#, c-format
msgid "type output function %s should not be volatile"
msgstr "类型输出函数%s不能是不稳定的 (volatile)"
-#: commands/typecmds.c:570
+#: commands/typecmds.c:571
#, c-format
msgid "type receive function %s should not be volatile"
msgstr "类型接收函数%s不应该是不稳定的"
-#: commands/typecmds.c:575
+#: commands/typecmds.c:576
#, c-format
msgid "type send function %s should not be volatile"
msgstr "类型发送函数%s不应该是不稳定的"
-#: commands/typecmds.c:580
+#: commands/typecmds.c:581
#, c-format
msgid "type modifier input function %s should not be volatile"
msgstr "类型修饰输入函数%s不应该是不稳定的"
-#: commands/typecmds.c:585
+#: commands/typecmds.c:586
#, c-format
msgid "type modifier output function %s should not be volatile"
msgstr "类型修饰输出函数%s不应该是不稳定的"
-#: commands/typecmds.c:807
+#: commands/typecmds.c:813
#, c-format
msgid "\"%s\" is not a valid base type for a domain"
msgstr "对于一个域, \"%s\" 不是一个有效的基本类型"
-#: commands/typecmds.c:893
+#: commands/typecmds.c:899
#, c-format
msgid "multiple default expressions"
msgstr "多遍默认表达式"
-#: commands/typecmds.c:955 commands/typecmds.c:964
+#: commands/typecmds.c:961 commands/typecmds.c:970
#, c-format
msgid "conflicting NULL/NOT NULL constraints"
msgstr "NULL/NOT NULL 约束冲突"
-#: commands/typecmds.c:980
+#: commands/typecmds.c:986
#, c-format
msgid "check constraints for domains cannot be marked NO INHERIT"
msgstr "域的CHECK约束不能标为NO INHERIT"
-#: commands/typecmds.c:989 commands/typecmds.c:2522
+#: commands/typecmds.c:995 commands/typecmds.c:2585
#, c-format
msgid "unique constraints not possible for domains"
msgstr "唯一约束对于域不可用"
-#: commands/typecmds.c:995 commands/typecmds.c:2528
+#: commands/typecmds.c:1001 commands/typecmds.c:2591
#, c-format
msgid "primary key constraints not possible for domains"
msgstr "不可为域使用主键约束"
-#: commands/typecmds.c:1001 commands/typecmds.c:2534
+#: commands/typecmds.c:1007 commands/typecmds.c:2597
#, c-format
msgid "exclusion constraints not possible for domains"
msgstr "排他约束对于域不可用"
-#: commands/typecmds.c:1007 commands/typecmds.c:2540
+#: commands/typecmds.c:1013 commands/typecmds.c:2603
#, c-format
msgid "foreign key constraints not possible for domains"
msgstr "外键约束对于域不可用"
-#: commands/typecmds.c:1016 commands/typecmds.c:2549
+#: commands/typecmds.c:1022 commands/typecmds.c:2612
#, c-format
msgid "specifying constraint deferrability not supported for domains"
msgstr "所指定的约束延迟对域不支持"
-#: commands/typecmds.c:1291 utils/cache/typcache.c:1634
+#: commands/typecmds.c:1353 utils/cache/typcache.c:2319
#, c-format
msgid "%s is not an enum"
msgstr "%s 不是枚举"
-#: commands/typecmds.c:1429
+#: commands/typecmds.c:1491
#, c-format
msgid "type attribute \"subtype\" is required"
msgstr "类型属性 \"subtype\" 不是必需的"
-#: commands/typecmds.c:1434
+#: commands/typecmds.c:1496
#, c-format
msgid "range subtype cannot be %s"
msgstr "范围子类型不能为 %s"
-#: commands/typecmds.c:1453
+#: commands/typecmds.c:1515
#, c-format
msgid "range collation specified but subtype does not support collation"
msgstr "已指定了范围排序规则但是子类型并不支持排序"
-#: commands/typecmds.c:1687
+#: commands/typecmds.c:1748
#, c-format
msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
msgstr "改变函数 %s 的参数类型 \"opaque\" 为 \"cstring\""
-#: commands/typecmds.c:1738
+#: commands/typecmds.c:1799
#, c-format
msgid "changing argument type of function %s from \"opaque\" to %s"
msgstr "改变函数 %s 的参数类型 \"opaque\" 为 %s"
-#: commands/typecmds.c:1837
+#: commands/typecmds.c:1898
#, c-format
-#| msgid "type input function %s must return type %s"
msgid "typmod_in function %s must return type %s"
msgstr "typmod_in 函数 %s 必需返回类型 %s"
-#: commands/typecmds.c:1864
+#: commands/typecmds.c:1925
#, c-format
-#| msgid "typmod_out function %s must return type \"cstring\""
msgid "typmod_out function %s must return type %s"
msgstr "typmod_out 函数 %s 必需返回类型 %s"
-#: commands/typecmds.c:1891
+#: commands/typecmds.c:1952
#, c-format
-#| msgid "type analyze function %s must return type \"boolean\""
msgid "type analyze function %s must return type %s"
msgstr "类型分析函数 %s 必需返回类型 %s"
-#: commands/typecmds.c:1937
+#: commands/typecmds.c:1998
#, c-format
-msgid ""
-"You must specify an operator class for the range type or define a default "
-"operator class for the subtype."
+msgid "You must specify an operator class for the range type or define a default operator class for the subtype."
msgstr "你必须为范围类型指定一个操作符类或者为子类型定义一个默认的操作符类."
-#: commands/typecmds.c:1968
+#: commands/typecmds.c:2029
#, c-format
msgid "range canonical function %s must return range type"
msgstr "范围的标准函数%s必须返回范围类型"
-#: commands/typecmds.c:1974
+#: commands/typecmds.c:2035
#, c-format
msgid "range canonical function %s must be immutable"
msgstr "范围的标准函数%s必须是不可变的"
-#: commands/typecmds.c:2010
+#: commands/typecmds.c:2071
#, c-format
-#| msgid "range subtype diff function %s must return type double precision"
msgid "range subtype diff function %s must return type %s"
msgstr "范围子类型的 diff 函数 %s 必须返回类型 %s"
-#: commands/typecmds.c:2017
+#: commands/typecmds.c:2078
#, c-format
msgid "range subtype diff function %s must be immutable"
msgstr "范围的子类型diff函数%s必须是不可变的"
-#: commands/typecmds.c:2044
+#: commands/typecmds.c:2105
#, c-format
msgid "pg_type array OID value not set when in binary upgrade mode"
msgstr "当处于二进制升级模式时没有设置pg_type的数组OID值"
-#: commands/typecmds.c:2348
+#: commands/typecmds.c:2410
#, c-format
msgid "column \"%s\" of table \"%s\" contains null values"
msgstr "表 \"%2$s\" 的字段 \"%1$s\" 包含空值"
-#: commands/typecmds.c:2463 commands/typecmds.c:2646
+#: commands/typecmds.c:2524 commands/typecmds.c:2709
#, c-format
msgid "constraint \"%s\" of domain \"%s\" does not exist"
msgstr "域 \"%2$s\" 的 约束\"%1$s\" 不存在"
-#: commands/typecmds.c:2467
+#: commands/typecmds.c:2528
#, c-format
msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping"
msgstr "域 \"%2$s\" 的 约束\"%1$s\" 不存在, 跳过"
-#: commands/typecmds.c:2652
+#: commands/typecmds.c:2716
#, c-format
msgid "constraint \"%s\" of domain \"%s\" is not a check constraint"
msgstr "域 \"%2$s\" 的 约束\"%1$s\" 不是一个check约束"
-#: commands/typecmds.c:2758
+#: commands/typecmds.c:2822
#, c-format
-msgid ""
-"column \"%s\" of table \"%s\" contains values that violate the new constraint"
+msgid "column \"%s\" of table \"%s\" contains values that violate the new constraint"
msgstr "表 \"%2$s\" 的字段 \"%1$s\" 包含的值违反了新约束"
-#: commands/typecmds.c:2971 commands/typecmds.c:3228 commands/typecmds.c:3417
+#: commands/typecmds.c:3050 commands/typecmds.c:3256 commands/typecmds.c:3338
+#: commands/typecmds.c:3525
#, c-format
msgid "%s is not a domain"
msgstr "%s 不是一个域"
-#: commands/typecmds.c:3005
+#: commands/typecmds.c:3083
#, c-format
msgid "constraint \"%s\" for domain \"%s\" already exists"
msgstr "域 \"%2$s\" 的约束 \"%1$s\" 已经存在"
-#: commands/typecmds.c:3055
+#: commands/typecmds.c:3134
#, c-format
msgid "cannot use table references in domain check constraint"
msgstr "在域检查约束中不可以使用表关联"
-#: commands/typecmds.c:3158 commands/typecmds.c:3240 commands/typecmds.c:3534
+#: commands/typecmds.c:3268 commands/typecmds.c:3350 commands/typecmds.c:3642
#, c-format
msgid "%s is a table's row type"
msgstr "%s 是一个表的记录类型"
-#: commands/typecmds.c:3160 commands/typecmds.c:3242 commands/typecmds.c:3536
+#: commands/typecmds.c:3270 commands/typecmds.c:3352 commands/typecmds.c:3644
#, c-format
msgid "Use ALTER TABLE instead."
msgstr "请使用 ALTER TABLE命令代替."
-#: commands/typecmds.c:3167 commands/typecmds.c:3249 commands/typecmds.c:3449
+#: commands/typecmds.c:3277 commands/typecmds.c:3359 commands/typecmds.c:3557
#, c-format
msgid "cannot alter array type %s"
msgstr "不能更改数组类型%s"
-#: commands/typecmds.c:3169 commands/typecmds.c:3251 commands/typecmds.c:3451
+#: commands/typecmds.c:3279 commands/typecmds.c:3361 commands/typecmds.c:3559
#, c-format
msgid "You can alter type %s, which will alter the array type as well."
msgstr "您能够修改类型%s, 因而也能修改数组类型"
-#: commands/typecmds.c:3519
+#: commands/typecmds.c:3627
#, c-format
msgid "type \"%s\" already exists in schema \"%s\""
msgstr "在于模式\"%2$s\"中已存在类型\"%1$s\""
-#: commands/user.c:149
+#: commands/user.c:141
#, c-format
msgid "SYSID can no longer be specified"
msgstr "不能再指定SYSID"
-#: commands/user.c:291
+#: commands/user.c:295
#, c-format
msgid "must be superuser to create superusers"
msgstr "只有超级用户能创建另一个超级用户"
-#: commands/user.c:298
+#: commands/user.c:302
#, c-format
msgid "must be superuser to create replication users"
msgstr "只有超级用户能创建复制用户"
-#: commands/user.c:305 commands/user.c:693
+#: commands/user.c:309 commands/user.c:707
#, c-format
msgid "must be superuser to change bypassrls attribute"
msgstr "只有超级用户能更改绕过行级安全性属性(bypassrls)"
-#: commands/user.c:312
+#: commands/user.c:316
#, c-format
msgid "permission denied to create role"
msgstr "创建角色的权限不够"
-#: commands/user.c:322 commands/user.c:1176 commands/user.c:1183 gram.y:13599
-#: gram.y:13634
+#: commands/user.c:326 commands/user.c:1195 commands/user.c:1202 gram.y:14873
+#: gram.y:14911 utils/adt/acl.c:5342 utils/adt/acl.c:5348
#, c-format
msgid "role name \"%s\" is reserved"
msgstr "角色名称 \"%s\" 被保留了"
-#: commands/user.c:324 commands/user.c:1178 commands/user.c:1185
+#: commands/user.c:328 commands/user.c:1197 commands/user.c:1204
#, c-format
-#| msgid "role name \"%s\" is reserved"
msgid "Role names starting with \"pg_\" are reserved."
msgstr "以 \"pg_\" 开始的角色名是被保留的。"
-#: commands/user.c:336 commands/user.c:1191
+#: commands/user.c:340 commands/user.c:1210
#, c-format
msgid "role \"%s\" already exists"
msgstr "角色\"%s\" 已经存在"
-#: commands/user.c:414
+#: commands/user.c:406 commands/user.c:816
+#, c-format
+msgid "empty string is not a valid password, clearing password"
+msgstr "空字符串不是有效密码,正在清除密码"
+
+#: commands/user.c:437
#, c-format
msgid "pg_authid OID value not set when in binary upgrade mode"
msgstr "当处于二进制升级模式时没有设置pg_authid的OID值"
-#: commands/user.c:679 commands/user.c:896 commands/user.c:1443
-#: commands/user.c:1589
+#: commands/user.c:693 commands/user.c:915 commands/user.c:1449
+#: commands/user.c:1593
#, c-format
msgid "must be superuser to alter superusers"
msgstr "只有超级用户能修改超级用户"
-#: commands/user.c:686
+#: commands/user.c:700
#, c-format
msgid "must be superuser to alter replication users"
msgstr "只有超级用户能修改复制用户"
-#: commands/user.c:709 commands/user.c:904
+#: commands/user.c:723 commands/user.c:923
#, c-format
msgid "permission denied"
msgstr "权限不够"
-#: commands/user.c:934
+#: commands/user.c:953
#, c-format
msgid "must be superuser to alter settings globally"
msgstr "只有超级用户可以做全局的alter settings操作"
-#: commands/user.c:956
+#: commands/user.c:975
#, c-format
msgid "permission denied to drop role"
msgstr "删除角色的权限不够"
-#: commands/user.c:980
+#: commands/user.c:999
#, c-format
-#| msgid "cannot use special role specifier in \"%s\""
msgid "cannot use special role specifier in DROP ROLE"
msgstr "不能在 DROP ROLE 中使用特殊角色说明符"
-#: commands/user.c:990 commands/user.c:1147 commands/variable.c:805
-#: commands/variable.c:880 utils/adt/acl.c:5121 utils/adt/acl.c:5173
-#: utils/adt/acl.c:5206 utils/adt/acl.c:5224 utils/init/miscinit.c:502
+#: commands/user.c:1009 commands/user.c:1166 commands/variable.c:822
+#: commands/variable.c:894 utils/adt/acl.c:5199 utils/adt/acl.c:5246
+#: utils/adt/acl.c:5274 utils/adt/acl.c:5292 utils/init/miscinit.c:607
#, c-format
msgid "role \"%s\" does not exist"
msgstr "角色 \"%s\" 不存在"
-#: commands/user.c:995
+#: commands/user.c:1014
#, c-format
msgid "role \"%s\" does not exist, skipping"
msgstr "角色 \"%s\" 不存在"
-#: commands/user.c:1007 commands/user.c:1011
+#: commands/user.c:1026 commands/user.c:1030
#, c-format
msgid "current user cannot be dropped"
msgstr "当前用户不能被删除"
-#: commands/user.c:1015
+#: commands/user.c:1034
#, c-format
msgid "session user cannot be dropped"
msgstr "会话用户不能被删除"
-#: commands/user.c:1026
+#: commands/user.c:1045
#, c-format
msgid "must be superuser to drop superusers"
msgstr "只有超级用户可以删除超级用户"
-#: commands/user.c:1042
+#: commands/user.c:1061
#, c-format
msgid "role \"%s\" cannot be dropped because some objects depend on it"
msgstr "无法删除\"%s\"因为有其它对象倚赖它"
-#: commands/user.c:1163
+#: commands/user.c:1182
#, c-format
msgid "session user cannot be renamed"
msgstr "无法重命名会话用户"
-#: commands/user.c:1167
+#: commands/user.c:1186
#, c-format
msgid "current user cannot be renamed"
msgstr "无法重新命名当前用户"
-#: commands/user.c:1201
+#: commands/user.c:1220
#, c-format
msgid "must be superuser to rename superusers"
msgstr "只有超级用户可以对超级用户重命名"
-#: commands/user.c:1208
+#: commands/user.c:1227
#, c-format
msgid "permission denied to rename role"
msgstr "重命名角色的权限不够"
-#: commands/user.c:1229
+#: commands/user.c:1248
#, c-format
msgid "MD5 password cleared because of role rename"
msgstr "由于对角色重命名, 需要清除以MD5方式加密的口令"
-#: commands/user.c:1299
+#: commands/user.c:1308
#, c-format
msgid "column names cannot be included in GRANT/REVOKE ROLE"
msgstr "在GRANT/REVOKE ROLE中不能包含列名"
-#: commands/user.c:1337
+#: commands/user.c:1346
#, c-format
msgid "permission denied to drop objects"
msgstr "删除对象的权限不足"
-#: commands/user.c:1364 commands/user.c:1376
+#: commands/user.c:1373 commands/user.c:1382
#, c-format
msgid "permission denied to reassign objects"
msgstr "重新分配对象的权限不足"
-#: commands/user.c:1451 commands/user.c:1597
+#: commands/user.c:1457 commands/user.c:1601
#, c-format
msgid "must have admin option on role \"%s\""
msgstr "在角色\"%s\"上必须有admin选项"
-#: commands/user.c:1468
+#: commands/user.c:1474
#, c-format
msgid "must be superuser to set grantor"
msgstr "只有超级用户能设置授权者"
-#: commands/user.c:1493
+#: commands/user.c:1499
#, c-format
msgid "role \"%s\" is a member of role \"%s\""
msgstr "角色\"%s\" 是角色\"%s\"的成员"
-#: commands/user.c:1508
+#: commands/user.c:1514
#, c-format
msgid "role \"%s\" is already a member of role \"%s\""
msgstr "角色\"%s\" 已经是角色\"%s\"的成员"
-#: commands/user.c:1619
+#: commands/user.c:1623
#, c-format
msgid "role \"%s\" is not a member of role \"%s\""
msgstr "角色 \"%s\"不是角色 \"%s\"的成员"
-#: commands/vacuum.c:185
+#: commands/vacuum.c:111
+#, c-format
+msgid "ANALYZE option must be specified when a column list is provided"
+msgstr "提供列列表时必须指定ANALYZE选项"
+
+#: commands/vacuum.c:203
#, c-format
msgid "%s cannot be executed from VACUUM or ANALYZE"
msgstr "不能从VACUUM或ANALYZE执行%s"
-#: commands/vacuum.c:528
+#: commands/vacuum.c:213
+#, c-format
+msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL"
+msgstr "VACUUM 选项 DISABLE_PAGE_SKIPPING不能与 FULL 一起使用"
+
+#: commands/vacuum.c:657
#, c-format
msgid "oldest xmin is far in the past"
msgstr "最旧的xmin已经过去很久"
-#: commands/vacuum.c:529
+#: commands/vacuum.c:658
#, c-format
-msgid "Close open transactions soon to avoid wraparound problems."
-msgstr "立即关闭已打开的事物, 以避免 wraparound 问题."
+msgid ""
+"Close open transactions soon to avoid wraparound problems.\n"
+"You might also need to commit or roll back old prepared transactions, or drop stale replication slots."
+msgstr ""
+"很快关闭未结交易以避免覆盖问题.\n"
+"您可能还需要提交或回滚旧的准备好的事务,或者删除过时的复制槽."
-#: commands/vacuum.c:568
+#: commands/vacuum.c:698
#, c-format
msgid "oldest multixact is far in the past"
msgstr "最旧的多事务已经过去很久"
-#: commands/vacuum.c:569
+#: commands/vacuum.c:699
#, c-format
-msgid ""
-"Close open transactions with multixacts soon to avoid wraparound problems."
+msgid "Close open transactions with multixacts soon to avoid wraparound problems."
msgstr "立即关闭已打开的事务, 以避免重叠问题."
-#: commands/vacuum.c:1131
+#: commands/vacuum.c:1245
#, c-format
msgid "some databases have not been vacuumed in over 2 billion transactions"
msgstr "一些数据库在超过 20 亿笔事物后没有做清理 (vacuum)."
-#: commands/vacuum.c:1132
+#: commands/vacuum.c:1246
#, c-format
msgid "You might have already suffered transaction-wraparound data loss."
msgstr "您可能已经遇到了由于事务重叠而造成的数据丢失."
-#: commands/vacuum.c:1253
+#: commands/vacuum.c:1418
#, c-format
msgid "skipping vacuum of \"%s\" --- lock not available"
msgstr "跳过对 \"%s\" 的压缩处理 --- 无法获取相应锁"
-#: commands/vacuum.c:1279
+#: commands/vacuum.c:1423
+#, c-format
+msgid "skipping vacuum of \"%s\" --- relation no longer exists"
+msgstr "跳过对 \"%s\" 的压缩处理 --- 关系不再存在"
+
+#: commands/vacuum.c:1447
#, c-format
msgid "skipping \"%s\" --- only superuser can vacuum it"
msgstr "忽略 \"%s\" --- 只有超级用户能够清理 (vacuum)"
-#: commands/vacuum.c:1283
+#: commands/vacuum.c:1451
#, c-format
msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
msgstr "忽略 \"%s\" --- 只有超级用户或数据库属主能够清理 (vacuum)"
-#: commands/vacuum.c:1287
+#: commands/vacuum.c:1455
#, c-format
msgid "skipping \"%s\" --- only table or database owner can vacuum it"
msgstr "忽略 \"%s\" --- 只有表或数据库属主能够清理 (vacuum)"
-#: commands/vacuum.c:1305
+#: commands/vacuum.c:1472
#, c-format
msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
msgstr "忽略 \"%s\" --- 无法清理 (vacuum) 非表或者特殊的系统表"
-#: commands/vacuumlazy.c:363
+#: commands/vacuumlazy.c:378
+#, c-format
+msgid "automatic aggressive vacuum of table \"%s.%s.%s\": index scans: %d\n"
+msgstr "自动积极的清理表\"%s.%s.%s\":索引扫描:%d\n"
+
+#: commands/vacuumlazy.c:380
#, c-format
msgid "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
msgstr "自动清理表\"%s.%s.%s\":索引扫描:%d\n"
-#: commands/vacuumlazy.c:368
+#: commands/vacuumlazy.c:386
#, c-format
-#| msgid "pages: %u removed, %u remain, %u skipped due to pins\n"
-msgid ""
-"pages: %u removed, %u remain, %u skipped due to pins, %u skipped frozen\n"
+msgid "pages: %u removed, %u remain, %u skipped due to pins, %u skipped frozen\n"
msgstr "页面:%u 被移除,%u 保留,%u 由于被占用而跳过,%u 被跳过的已被冻结\n"
-#: commands/vacuumlazy.c:374
+#: commands/vacuumlazy.c:392
#, c-format
-msgid ""
-"tuples: %.0f removed, %.0f remain, %.0f are dead but not yet removable\n"
-msgstr "元组:%.0f被移除,%.0f保留,%.0f已经死亡但还不能被移除\n"
+msgid "tuples: %.0f removed, %.0f remain, %.0f are dead but not yet removable, oldest xmin: %u\n"
+msgstr "元组:%.0f被移除,%.0f保留,%.0f已经死亡但还不能被移除,最老xmin: %u\n"
-#: commands/vacuumlazy.c:379
+#: commands/vacuumlazy.c:398
#, c-format
msgid "buffer usage: %d hits, %d misses, %d dirtied\n"
msgstr "缓冲区使用:%d次命中,%d次失效,%d次脏\n"
-#: commands/vacuumlazy.c:383
+#: commands/vacuumlazy.c:402
#, c-format
msgid "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n"
msgstr "平均读取率:%.3f MB/s,平均写入率:%.3f MB/s\n"
-#: commands/vacuumlazy.c:385
+#: commands/vacuumlazy.c:404
#, c-format
msgid "system usage: %s"
msgstr "系统用法:%s"
-#: commands/vacuumlazy.c:837
+#: commands/vacuumlazy.c:500
+#, c-format
+msgid "aggressively vacuuming \"%s.%s\""
+msgstr "正在积极清理\"%s.%s\""
+
+#: commands/vacuumlazy.c:881
#, c-format
msgid "relation \"%s\" page %u is uninitialized --- fixing"
msgstr "关系 \"%s\" 页 %u 没有初始化 --- 修复"
-#: commands/vacuumlazy.c:1301
+#: commands/vacuumlazy.c:1417
#, c-format
msgid "\"%s\": removed %.0f row versions in %u pages"
msgstr "\"%1$s\": 在%3$u页中已删除%2$.0f行版本号"
-#: commands/vacuumlazy.c:1311
+#: commands/vacuumlazy.c:1427
#, c-format
-msgid "%.0f dead row versions cannot be removed yet.\n"
-msgstr "%.0f的死亡行版本还不能被移除。\n"
+msgid "%.0f dead row versions cannot be removed yet, oldest xmin: %u\n"
+msgstr "%.0f的死亡行版本还不能被移除,最老的xmin: %u\n"
-#: commands/vacuumlazy.c:1313
+#: commands/vacuumlazy.c:1429
#, c-format
msgid "There were %.0f unused item pointers.\n"
msgstr "有%.0f个未用的项指针。\n"
-#: commands/vacuumlazy.c:1315
+#: commands/vacuumlazy.c:1431
+#, c-format
+msgid "Skipped %u page due to buffer pins, "
+msgid_plural "Skipped %u pages due to buffer pins, "
+msgstr[0] "由于缓冲区占用而跳过%u个页面,"
+
+#: commands/vacuumlazy.c:1435
#, c-format
-msgid "Skipped %u page due to buffer pins.\n"
-msgid_plural "Skipped %u pages due to buffer pins.\n"
-msgstr[0] "由于缓冲区占用而跳过%u个页面。\n"
+msgid "%u frozen page.\n"
+msgid_plural "%u frozen pages.\n"
+msgstr[0] "%u个冻结页面.\n"
-#: commands/vacuumlazy.c:1319
+#: commands/vacuumlazy.c:1439
#, c-format
msgid "%u page is entirely empty.\n"
msgid_plural "%u pages are entirely empty.\n"
msgstr[0] "%u 个页面完全为空。\n"
-#: commands/vacuumlazy.c:1327
+#: commands/vacuumlazy.c:1443
#, c-format
-msgid ""
-"\"%s\": found %.0f removable, %.0f nonremovable row versions in %u out of %u "
-"pages"
-msgstr ""
-"\"%1$s\": 在超出%5$u页的%4$u中找到可删除版本号%2$.0f, 不可删除的版本号%3$.0f"
+msgid "%s."
+msgstr "%s"
+
+#: commands/vacuumlazy.c:1446
+#, c-format
+msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u out of %u pages"
+msgstr "\"%1$s\": 在超出%5$u页的%4$u中找到可删除版本号%2$.0f, 不可删除的版本号%3$.0f"
-#: commands/vacuumlazy.c:1396
+#: commands/vacuumlazy.c:1515
#, c-format
msgid "\"%s\": removed %d row versions in %d pages"
msgstr "\"%1$s\": 在%3$d个页中已删除%2$d记录版本"
-#: commands/vacuumlazy.c:1585
+#: commands/vacuumlazy.c:1704
#, c-format
msgid "scanned index \"%s\" to remove %d row versions"
msgstr "扫描索引\"%s\"来删除%d记录版本"
-#: commands/vacuumlazy.c:1631
+#: commands/vacuumlazy.c:1756
#, c-format
msgid "index \"%s\" now contains %.0f row versions in %u pages"
msgstr "索引\"%1$s\"在%3$u个页中包含了行版本号%2$.0f"
-#: commands/vacuumlazy.c:1635
+#: commands/vacuumlazy.c:1760
#, c-format
msgid ""
"%.0f index row versions were removed.\n"
"%u个索引页已经被删除,%u当前可重用.\n"
"%s."
-#: commands/vacuumlazy.c:1721
+#: commands/vacuumlazy.c:1855
#, c-format
msgid "\"%s\": stopping truncate due to conflicting lock request"
msgstr "\"%s\":由于与锁请求相冲突,停止截断操作"
-#: commands/vacuumlazy.c:1786
+#: commands/vacuumlazy.c:1920
#, c-format
msgid "\"%s\": truncated %u to %u pages"
msgstr "\"%s\": 将%u截断到%u pages"
-#: commands/vacuumlazy.c:1842
+#: commands/vacuumlazy.c:1985
#, c-format
msgid "\"%s\": suspending truncate due to conflicting lock request"
msgstr "\"%s\":由于与锁请求相冲突,暂停截断操作"
-#: commands/variable.c:164 utils/misc/guc.c:9877
+#: commands/variable.c:165 utils/misc/guc.c:10307 utils/misc/guc.c:10369
#, c-format
msgid "Unrecognized key word: \"%s\"."
msgstr "未知的关键字: \"%s\"."
-#: commands/variable.c:176
+#: commands/variable.c:177
#, c-format
msgid "Conflicting \"datestyle\" specifications."
msgstr "\"datestyle\" 规范冲突."
-#: commands/variable.c:298
+#: commands/variable.c:299
#, c-format
msgid "Cannot specify months in time zone interval."
msgstr "在 time zone interval中无法指定月."
-#: commands/variable.c:304
+#: commands/variable.c:305
#, c-format
msgid "Cannot specify days in time zone interval."
msgstr "在 time zone interval中无法指定天."
-#: commands/variable.c:346 commands/variable.c:428
+#: commands/variable.c:343 commands/variable.c:425
#, c-format
msgid "time zone \"%s\" appears to use leap seconds"
msgstr "时区 \"%s\" 看上去使用了闰秒"
-#: commands/variable.c:348 commands/variable.c:430
+#: commands/variable.c:345 commands/variable.c:427
#, c-format
msgid "PostgreSQL does not support leap seconds."
msgstr "PostgreSQL 不支持闰秒"
-#: commands/variable.c:357
+#: commands/variable.c:354
#, c-format
msgid "UTC timezone offset is out of range."
msgstr "UTC时区偏移已超出范围"
-#: commands/variable.c:497
+#: commands/variable.c:494
#, c-format
msgid "cannot set transaction read-write mode inside a read-only transaction"
msgstr "不能在一个只读事物里面设置读写模式"
-#: commands/variable.c:504
+#: commands/variable.c:501
#, c-format
msgid "transaction read-write mode must be set before any query"
msgstr "执行任意查询前必须设置事务的读写模式"
-#: commands/variable.c:511
+#: commands/variable.c:508
#, c-format
msgid "cannot set transaction read-write mode during recovery"
msgstr "在恢复操作期间不能设置事务的读写模式"
-#: commands/variable.c:560
+#: commands/variable.c:557
#, c-format
msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
msgstr "SET TRANSACTION ISOLATION LEVEL 必须在任何查询之前调用"
-#: commands/variable.c:567
+#: commands/variable.c:564
#, c-format
msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
msgstr "SET TRANSACTION ISOLATION LEVEL 不能在子事物中调用"
-#: commands/variable.c:574 storage/lmgr/predicate.c:1587
+#: commands/variable.c:571 storage/lmgr/predicate.c:1603
#, c-format
msgid "cannot use serializable mode in a hot standby"
msgstr "热备过程中无法使用可串行化模式"
-#: commands/variable.c:575
+#: commands/variable.c:572
#, c-format
msgid "You can use REPEATABLE READ instead."
msgstr "您必须使用REPEATABLE READ来代替"
-#: commands/variable.c:623
+#: commands/variable.c:620
#, c-format
-msgid ""
-"SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
+msgid "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
msgstr "SET TRANSACTION [NOT] DEFERRABLE 不能在子事物中调用"
-#: commands/variable.c:629
+#: commands/variable.c:626
#, c-format
msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
msgstr "SET TRANSACTION [NOT] DEFERRABLE 必须在任何查询之前调用"
-#: commands/variable.c:711
+#: commands/variable.c:708
#, c-format
msgid "Conversion between %s and %s is not supported."
msgstr "不支持 %s 和 %s 之间的编码转换."
-#: commands/variable.c:718
+#: commands/variable.c:715
#, c-format
msgid "Cannot change \"client_encoding\" now."
msgstr "现在无法改变 \"client_encoding\" 值."
-#: commands/variable.c:898
+#: commands/variable.c:776
+#, c-format
+msgid "cannot change client_encoding during a parallel operation"
+msgstr "在并行操作期间无法更改客户端编码"
+
+#: commands/variable.c:912
#, c-format
msgid "permission denied to set role \"%s\""
msgstr "设置角色\"%s\"的权限不足"
msgid "Valid values are \"local\" and \"cascaded\"."
msgstr "有效值为 \"local\" 和 \"cascaded\"."
-#: commands/view.c:114
+#: commands/view.c:103
#, c-format
msgid "could not determine which collation to use for view column \"%s\""
msgstr "视图中的列\"%s\"无法确定使用哪种排序规则"
-#: commands/view.c:129
+#: commands/view.c:117
#, c-format
msgid "view must have at least one column"
msgstr "视图必需至少有一个字段"
-#: commands/view.c:263 commands/view.c:275
+#: commands/view.c:285 commands/view.c:297
#, c-format
msgid "cannot drop columns from view"
msgstr "无法从视图中删除列"
-#: commands/view.c:280
+#: commands/view.c:302
#, c-format
msgid "cannot change name of view column \"%s\" to \"%s\""
msgstr "不能将视图字段的名称从\"%s\"改成\"%s\""
-#: commands/view.c:288
+#: commands/view.c:310
#, c-format
msgid "cannot change data type of view column \"%s\" from %s to %s"
msgstr "不可以将视图字段 \"%s\" 的数据类型从%s改为%s"
-#: commands/view.c:427
+#: commands/view.c:455
#, c-format
msgid "views must not contain SELECT INTO"
msgstr "视力中不能包含SELECT INTO"
-#: commands/view.c:440
+#: commands/view.c:467
#, c-format
msgid "views must not contain data-modifying statements in WITH"
msgstr "视图不能包含修改数据的WITH子句"
-#: commands/view.c:511
+#: commands/view.c:537
#, c-format
msgid "CREATE VIEW specifies more column names than columns"
msgstr "CREATE VIEW 指定的字段名比实际字段多"
-#: commands/view.c:519
+#: commands/view.c:545
#, c-format
msgid "views cannot be unlogged because they do not have storage"
msgstr "视图无法取消事务日志,因为它们没有相应存储"
-#: commands/view.c:533
+#: commands/view.c:559
#, c-format
msgid "view \"%s\" will be a temporary view"
msgstr "视图\"%s\" 将是一个临时视图."
-#: executor/execCurrent.c:76
+#: executor/execCurrent.c:78
#, c-format
msgid "cursor \"%s\" is not a SELECT query"
msgstr "游标 \"%s\"不是一个SELECT查询"
-#: executor/execCurrent.c:82
+#: executor/execCurrent.c:84
#, c-format
msgid "cursor \"%s\" is held from a previous transaction"
msgstr "游标\"%s\"是前一个事务所持有的"
-#: executor/execCurrent.c:114
+#: executor/execCurrent.c:116
#, c-format
msgid "cursor \"%s\" has multiple FOR UPDATE/SHARE references to table \"%s\""
msgstr "游标\"%s\"有多个引用表\"%s\"的FOR UPDATE/SHARE语句"
-#: executor/execCurrent.c:123
+#: executor/execCurrent.c:125
#, c-format
-msgid ""
-"cursor \"%s\" does not have a FOR UPDATE/SHARE reference to table \"%s\""
+msgid "cursor \"%s\" does not have a FOR UPDATE/SHARE reference to table \"%s\""
msgstr "游标\"%s\"没有引用表\"%s\"的FOR UPDATE/SHARE语句"
-#: executor/execCurrent.c:133 executor/execCurrent.c:179
+#: executor/execCurrent.c:135 executor/execCurrent.c:180
#, c-format
msgid "cursor \"%s\" is not positioned on a row"
msgstr "没有在记录上对游标\"%s\"进行定位"
-#: executor/execCurrent.c:166
+#: executor/execCurrent.c:167 executor/execCurrent.c:226
+#: executor/execCurrent.c:238
#, c-format
msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\""
msgstr "游标\"%s\"不对表\"%s\"进行可更新扫描"
-#: executor/execCurrent.c:231 executor/execQual.c:1178
+#: executor/execCurrent.c:280 executor/execExprInterp.c:2284
#, c-format
-msgid ""
-"type of parameter %d (%s) does not match that when preparing the plan (%s)"
+msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)"
msgstr "第%d个参数(%s)的类型与正在执行计划(%s)中的不匹配"
-#: executor/execCurrent.c:243 executor/execQual.c:1190
+#: executor/execCurrent.c:292 executor/execExprInterp.c:2296
#, c-format
msgid "no value found for parameter %d"
msgstr "没有找到参数 %d 的值"
-#: executor/execIndexing.c:539
-#, c-format
-msgid ""
-"ON CONFLICT does not support deferrable unique constraints/exclusion "
-"constraints as arbiters"
-msgstr "ON CONFLICT不支持可延迟唯一约束/排除约束作为仲裁者"
-
-#: executor/execIndexing.c:816
+#: executor/execExpr.c:856 parser/parse_agg.c:794
#, c-format
-msgid "could not create exclusion constraint \"%s\""
-msgstr "无法创建排他约束\"%s\""
+msgid "window function calls cannot be nested"
+msgstr "不允许嵌套调用窗口函数"
-#: executor/execIndexing.c:819
+#: executor/execExpr.c:1314
#, c-format
-msgid "Key %s conflicts with key %s."
-msgstr "键%s与另外一个键%s冲突"
+msgid "target type is not an array"
+msgstr "目标类型不是一个数组"
-#: executor/execIndexing.c:821
+#: executor/execExpr.c:1647
#, c-format
-msgid "Key conflicts exist."
-msgstr "存在键冲突。"
+msgid "ROW() column has type %s instead of type %s"
+msgstr "ROW() 列类型 %s 替换为 %s"
-#: executor/execIndexing.c:827
+#: executor/execExpr.c:2182 executor/execSRF.c:697 parser/parse_func.c:126
+#: parser/parse_func.c:640 parser/parse_func.c:1014
#, c-format
-msgid "conflicting key value violates exclusion constraint \"%s\""
-msgstr "互相冲突的键值违反排他约束\"%s\""
+msgid "cannot pass more than %d argument to a function"
+msgid_plural "cannot pass more than %d arguments to a function"
+msgstr[0] "向函数传递的参数不多于%d个"
-#: executor/execIndexing.c:830
+#: executor/execExpr.c:2480 executor/execExpr.c:2486
+#: executor/execExprInterp.c:2613 utils/adt/arrayfuncs.c:261
+#: utils/adt/arrayfuncs.c:559 utils/adt/arrayfuncs.c:1301
+#: utils/adt/arrayfuncs.c:3347 utils/adt/arrayfuncs.c:5303
+#: utils/adt/arrayfuncs.c:5820
#, c-format
-msgid "Key %s conflicts with existing key %s."
-msgstr "键%s与已存在的键%s冲突"
+msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
+msgstr "数组的维数(%d)超过最大允许值(%d)"
-#: executor/execIndexing.c:832
+#: executor/execExprInterp.c:1879
#, c-format
-msgid "Key conflicts with existing key."
-msgstr "与现有键发生键冲突。"
+msgid "attribute %d of type %s has been dropped"
+msgstr "已删除类型%2$s的属性%1$d"
-#: executor/execMain.c:1027
+#: executor/execExprInterp.c:1885
#, c-format
-msgid "cannot change sequence \"%s\""
-msgstr "不可以改变序列 \"%s\""
+msgid "attribute %d of type %s has wrong type"
+msgstr "类型%2$s的属性%1$d的类型错误"
-#: executor/execMain.c:1033
+#: executor/execExprInterp.c:1887 executor/execExprInterp.c:2886
+#: executor/execExprInterp.c:2933
#, c-format
-msgid "cannot change TOAST relation \"%s\""
-msgstr "不可以改变 TOAST 关系 \"%s\""
+msgid "Table has type %s, but query expects %s."
+msgstr "表具有类型%s,但是查询期望类型%s."
-#: executor/execMain.c:1051 rewrite/rewriteHandler.c:2648
+#: executor/execExprInterp.c:2374
#, c-format
-msgid "cannot insert into view \"%s\""
-msgstr "无法插入到视图\"%s\""
+msgid "WHERE CURRENT OF is not supported for this table type"
+msgstr "这种表类型不能使用WHERE CURRENT OF"
-#: executor/execMain.c:1053 rewrite/rewriteHandler.c:2651
+#: executor/execExprInterp.c:2591
#, c-format
-msgid ""
-"To enable inserting into the view, provide an INSTEAD OF INSERT trigger or "
-"an unconditional ON INSERT DO INSTEAD rule."
-msgstr ""
-"启用向视图插入操作, 要提供INSTEAD OF INSERT触发器或者提供一个无条件的 ON "
-"INSERT DO INSTEAD 规则."
+msgid "cannot merge incompatible arrays"
+msgstr "无法合并不兼容的排列"
-#: executor/execMain.c:1059 rewrite/rewriteHandler.c:2656
+#: executor/execExprInterp.c:2592
#, c-format
-msgid "cannot update view \"%s\""
-msgstr "无法更新视图\"%s\""
+msgid "Array with element type %s cannot be included in ARRAY construct with element type %s."
+msgstr "元素类型为 %s 的 ARRAY 结构中不能包含带有元素类型为 %s 的数组."
-#: executor/execMain.c:1061 rewrite/rewriteHandler.c:2659
+#: executor/execExprInterp.c:2633 executor/execExprInterp.c:2663
#, c-format
-msgid ""
-"To enable updating the view, provide an INSTEAD OF UPDATE trigger or an "
-"unconditional ON UPDATE DO INSTEAD rule."
-msgstr ""
-"启用对视图的更新操作, 需要提供INSTEAD OF UPDATE触发器或者一个无条件的 ON "
-"UPDATE DO INSTEAD 规则."
+msgid "multidimensional arrays must have array expressions with matching dimensions"
+msgstr "多维数组必须有符合维度的数组表达式"
-#: executor/execMain.c:1067 rewrite/rewriteHandler.c:2664
+#: executor/execExprInterp.c:2885 executor/execExprInterp.c:2932
#, c-format
-msgid "cannot delete from view \"%s\""
-msgstr "无法删除视图\"%s\""
+msgid "attribute %d has wrong type"
+msgstr "属性%d的类型错误"
-#: executor/execMain.c:1069 rewrite/rewriteHandler.c:2667
+#: executor/execExprInterp.c:3042
#, c-format
-msgid ""
-"To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an "
-"unconditional ON DELETE DO INSTEAD rule."
-msgstr ""
-"启用从视图删除数据, 需要提供一个INSTEAD OF DELETE 触发器或者一个无条件的 ON "
-"DELETE DO INSTEAD 规则."
+msgid "array subscript in assignment must not be null"
+msgstr "在分配中的数组下标不能为空"
-# describe.c:933
-#: executor/execMain.c:1080
+#: executor/execExprInterp.c:3475 utils/adt/domains.c:149
#, c-format
-msgid "cannot change materialized view \"%s\""
-msgstr "不能改变物化视图 \"%s\""
+msgid "domain %s does not allow null values"
+msgstr "域 %s 不允许空值"
-#: executor/execMain.c:1092
+#: executor/execExprInterp.c:3490 utils/adt/domains.c:184
#, c-format
-msgid "cannot insert into foreign table \"%s\""
-msgstr "不能插值到外部表 \"%s\""
+msgid "value for domain %s violates check constraint \"%s\""
+msgstr "域 %s 的值违反了检查约束 \"%s\""
-#: executor/execMain.c:1098
+#: executor/execExprInterp.c:3861 executor/execExprInterp.c:3878
+#: executor/execExprInterp.c:3980 executor/nodeModifyTable.c:106
+#: executor/nodeModifyTable.c:117 executor/nodeModifyTable.c:134
+#: executor/nodeModifyTable.c:142
#, c-format
-msgid "foreign table \"%s\" does not allow inserts"
-msgstr "外部表 \"%s\" 不允许插入操作"
+msgid "table row type and query-specified row type do not match"
+msgstr "表记录类型和查询指定记录不匹配"
-#: executor/execMain.c:1105
+#: executor/execExprInterp.c:3862
+#, c-format
+msgid "Table row contains %d attribute, but query expects %d."
+msgid_plural "Table row contains %d attributes, but query expects %d."
+msgstr[0] "在表记录中包含%d个属性, 但是查询期望%d个属性"
+
+#: executor/execExprInterp.c:3879 executor/nodeModifyTable.c:118
+#, c-format
+msgid "Table has type %s at ordinal position %d, but query expects %s."
+msgstr "表在位置%2$d具有类型%1$s,但是查询期望类型%3$s."
+
+#: executor/execExprInterp.c:3981 executor/execSRF.c:953
+#, c-format
+msgid "Physical storage mismatch on dropped attribute at ordinal position %d."
+msgstr "在顺序位置%d上已删除属性与物理存储上的不匹配."
+
+#: executor/execIndexing.c:543
+#, c-format
+msgid "ON CONFLICT does not support deferrable unique constraints/exclusion constraints as arbiters"
+msgstr "ON CONFLICT不支持可延迟唯一约束/排除约束作为仲裁者"
+
+#: executor/execIndexing.c:818
+#, c-format
+msgid "could not create exclusion constraint \"%s\""
+msgstr "无法创建排他约束\"%s\""
+
+#: executor/execIndexing.c:821
+#, c-format
+msgid "Key %s conflicts with key %s."
+msgstr "键%s与另外一个键%s冲突"
+
+#: executor/execIndexing.c:823
+#, c-format
+msgid "Key conflicts exist."
+msgstr "存在键冲突。"
+
+#: executor/execIndexing.c:829
+#, c-format
+msgid "conflicting key value violates exclusion constraint \"%s\""
+msgstr "互相冲突的键值违反排他约束\"%s\""
+
+#: executor/execIndexing.c:832
+#, c-format
+msgid "Key %s conflicts with existing key %s."
+msgstr "键%s与已存在的键%s冲突"
+
+#: executor/execIndexing.c:834
+#, c-format
+msgid "Key conflicts with existing key."
+msgstr "与现有键发生键冲突。"
+
+#: executor/execMain.c:1116
+#, c-format
+msgid "cannot change sequence \"%s\""
+msgstr "不可以改变序列 \"%s\""
+
+#: executor/execMain.c:1122
+#, c-format
+msgid "cannot change TOAST relation \"%s\""
+msgstr "不可以改变 TOAST 关系 \"%s\""
+
+#: executor/execMain.c:1140 rewrite/rewriteHandler.c:2773
+#, c-format
+msgid "cannot insert into view \"%s\""
+msgstr "无法插入到视图\"%s\""
+
+#: executor/execMain.c:1142 rewrite/rewriteHandler.c:2776
+#, c-format
+msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule."
+msgstr "启用向视图插入操作, 要提供INSTEAD OF INSERT触发器或者提供一个无条件的 ON INSERT DO INSTEAD 规则."
+
+#: executor/execMain.c:1148 rewrite/rewriteHandler.c:2781
+#, c-format
+msgid "cannot update view \"%s\""
+msgstr "无法更新视图\"%s\""
+
+#: executor/execMain.c:1150 rewrite/rewriteHandler.c:2784
+#, c-format
+msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule."
+msgstr "启用对视图的更新操作, 需要提供INSTEAD OF UPDATE触发器或者一个无条件的 ON UPDATE DO INSTEAD 规则."
+
+#: executor/execMain.c:1156 rewrite/rewriteHandler.c:2789
+#, c-format
+msgid "cannot delete from view \"%s\""
+msgstr "无法删除视图\"%s\""
+
+#: executor/execMain.c:1158 rewrite/rewriteHandler.c:2792
+#, c-format
+msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule."
+msgstr "启用从视图删除数据, 需要提供一个INSTEAD OF DELETE 触发器或者一个无条件的 ON DELETE DO INSTEAD 规则."
+
+# describe.c:933
+#: executor/execMain.c:1169
+#, c-format
+msgid "cannot change materialized view \"%s\""
+msgstr "不能改变物化视图 \"%s\""
+
+#: executor/execMain.c:1181
+#, c-format
+msgid "cannot insert into foreign table \"%s\""
+msgstr "不能插值到外部表 \"%s\""
+
+#: executor/execMain.c:1187
+#, c-format
+msgid "foreign table \"%s\" does not allow inserts"
+msgstr "外部表 \"%s\" 不允许插入操作"
+
+#: executor/execMain.c:1194
#, c-format
msgid "cannot update foreign table \"%s\""
msgstr "无法更新外部表 \"%s\""
-#: executor/execMain.c:1111
+#: executor/execMain.c:1200
#, c-format
msgid "foreign table \"%s\" does not allow updates"
msgstr "外部表 \"%s\" 不允许更新"
-#: executor/execMain.c:1118
+#: executor/execMain.c:1207
#, c-format
msgid "cannot delete from foreign table \"%s\""
msgstr "不能从外部表 \"%s\" 删除数据"
-#: executor/execMain.c:1124
+#: executor/execMain.c:1213
#, c-format
msgid "foreign table \"%s\" does not allow deletes"
msgstr "外部表 \"%s\" 不允许删除数据"
-#: executor/execMain.c:1135
+#: executor/execMain.c:1224
#, c-format
msgid "cannot change relation \"%s\""
msgstr "无法改变关系 \"%s\""
-#: executor/execMain.c:1161
+#: executor/execMain.c:1251
#, c-format
msgid "cannot lock rows in sequence \"%s\""
msgstr "无法锁定序列\"%s\"中的行"
-#: executor/execMain.c:1168
+#: executor/execMain.c:1258
#, c-format
msgid "cannot lock rows in TOAST relation \"%s\""
msgstr "无法锁定TOAST 关系 \"%s\"中的行"
-#: executor/execMain.c:1175
+#: executor/execMain.c:1265
#, c-format
msgid "cannot lock rows in view \"%s\""
msgstr "无法锁定 \"%s\" 中的行"
-#: executor/execMain.c:1183
+#: executor/execMain.c:1273
#, c-format
msgid "cannot lock rows in materialized view \"%s\""
msgstr "无法锁定物化视图 \"%s\" 中的行"
-#: executor/execMain.c:1192 executor/execMain.c:2603
-#: executor/nodeLockRows.c:132
+#: executor/execMain.c:1282 executor/execMain.c:2974
+#: executor/nodeLockRows.c:136
#, c-format
msgid "cannot lock rows in foreign table \"%s\""
msgstr "无法锁定外部表 \"%s\"中的行"
-#: executor/execMain.c:1198
+#: executor/execMain.c:1288
#, c-format
msgid "cannot lock rows in relation \"%s\""
msgstr "无法锁定关系 \"%s\"中的行"
-#: executor/execMain.c:1721
+#: executor/execMain.c:1959
#, c-format
-msgid "null value in column \"%s\" violates not-null constraint"
-msgstr "å\9c¨å\97段 \"%s\" ä¸ç©ºå\80¼è¿\9då\8f\8däº\86é\9d\9e空约æ\9d\9f"
+msgid "new row for relation \"%s\" violates partition constraint"
+msgstr "å\85³ç³» \"%s\" ç\9a\84æ\96°å\88\97è¿\9då\8f\8däº\86å\88\86å\8cºçº¦æ\9d\9f"
-#: executor/execMain.c:1723 executor/execMain.c:1749 executor/execMain.c:1838
+#: executor/execMain.c:1961 executor/execMain.c:2041 executor/execMain.c:2088
+#: executor/execMain.c:2195
#, c-format
msgid "Failing row contains %s."
msgstr "失败, 行包含%s."
-#: executor/execMain.c:1747
+#: executor/execMain.c:2039
+#, c-format
+msgid "null value in column \"%s\" violates not-null constraint"
+msgstr "在字段 \"%s\" 中空值违反了非空约束"
+
+#: executor/execMain.c:2086
#, c-format
msgid "new row for relation \"%s\" violates check constraint \"%s\""
msgstr "关系 \"%s\" 的新列违反了检查约束 \"%s\""
-#: executor/execMain.c:1836
+#: executor/execMain.c:2193
#, c-format
msgid "new row violates check option for view \"%s\""
msgstr "新行违反了视图\"%s\"的检查选项"
-#: executor/execMain.c:1846
+#: executor/execMain.c:2203
#, c-format
msgid "new row violates row-level security policy \"%s\" for table \"%s\""
msgstr "新行违背了表\"%2$s\"的行级安全性策略\"%1$s\""
-#: executor/execMain.c:1851
+#: executor/execMain.c:2208
#, c-format
msgid "new row violates row-level security policy for table \"%s\""
msgstr "新行违背了表\"%s\"的行级安全策略"
-#: executor/execMain.c:1858
+#: executor/execMain.c:2215
#, c-format
-msgid ""
-"new row violates row-level security policy \"%s\" (USING expression) for "
-"table \"%s\""
+msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\""
msgstr "新行违背了表\"%s\"的行级安全策略\"%s\"(USING expression)"
-#: executor/execMain.c:1863
+#: executor/execMain.c:2220
#, c-format
-msgid ""
-"new row violates row-level security policy (USING expression) for table \"%s"
-"\""
+msgid "new row violates row-level security policy (USING expression) for table \"%s\""
msgstr "新行违背了表\"%s\"的行级安全策略(USING expression)"
-#: executor/execQual.c:302 executor/execQual.c:339 executor/execQual.c:3213
-#: utils/adt/array_userfuncs.c:472 utils/adt/arrayfuncs.c:260
-#: utils/adt/arrayfuncs.c:558 utils/adt/arrayfuncs.c:1288
-#: utils/adt/arrayfuncs.c:3361 utils/adt/arrayfuncs.c:5245
-#: utils/adt/arrayfuncs.c:5768
-#, c-format
-msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
-msgstr "数组的维数(%d)超过最大允许值(%d)"
-
-#: executor/execQual.c:324 executor/execQual.c:360
+# describe.c:1542
+#: executor/execPartition.c:337
#, c-format
-msgid "array subscript in assignment must not be null"
-msgstr "å\9c¨å\88\86é\85\8dä¸ç\9a\84æ\95°ç»\84ä¸\8bæ \87ä¸\8dè\83½ä¸ºç©º"
+msgid "no partition of relation \"%s\" found for row"
+msgstr "没æ\9c\89为è¡\8cæ\89¾å\88°å\85³ç³»\"%s\"ç\9a\84å\88\86å\8cº"
-#: executor/execQual.c:657 executor/execQual.c:4138
+#: executor/execPartition.c:339
#, c-format
-msgid "attribute %d has wrong type"
-msgstr "å±\9eæ\80§%dç\9a\84ç±»å\9e\8bé\94\99误"
+msgid "Partition key of the failing row contains %s."
+msgstr "失败è¡\8cç\9a\84å\88\86å\8cºé\94®å\8c\85å\90«%s."
-#: executor/execQual.c:658 executor/execQual.c:4139
+#: executor/execReplication.c:197 executor/execReplication.c:356
#, c-format
-msgid "Table has type %s, but query expects %s."
-msgstr "表具有类型%s,但是查询期望类型%s."
+msgid "tuple to be locked was already moved to another partition due to concurrent update, retrying"
+msgstr "由于并发更新,要锁定的元组已移动到另一个分区,正在重试 "
-#: executor/execQual.c:851 executor/execQual.c:868 executor/execQual.c:1068
-#: executor/nodeModifyTable.c:95 executor/nodeModifyTable.c:105
-#: executor/nodeModifyTable.c:122 executor/nodeModifyTable.c:130
+#: executor/execReplication.c:201 executor/execReplication.c:360
#, c-format
-msgid "table row type and query-specified row type do not match"
-msgstr "表记录类型和查询指定记录不匹配"
+msgid "concurrent update, retrying"
+msgstr "并发更新,正在重试"
-#: executor/execQual.c:852
+#: executor/execReplication.c:257 parser/parse_oper.c:228
+#: utils/adt/array_userfuncs.c:719 utils/adt/array_userfuncs.c:858
+#: utils/adt/arrayfuncs.c:3625 utils/adt/arrayfuncs.c:4141
+#: utils/adt/arrayfuncs.c:6101 utils/adt/rowtypes.c:1179
#, c-format
-msgid "Table row contains %d attribute, but query expects %d."
-msgid_plural "Table row contains %d attributes, but query expects %d."
-msgstr[0] "在表记录中包含%d个属性, 但是查询期望%d个属性"
-
-#: executor/execQual.c:869 executor/nodeModifyTable.c:106
-#, c-format
-msgid "Table has type %s at ordinal position %d, but query expects %s."
-msgstr "表在位置%2$d具有类型%1$s,但是查询期望类型%3$s."
-
-#: executor/execQual.c:1069 executor/execQual.c:1665
-#, c-format
-msgid "Physical storage mismatch on dropped attribute at ordinal position %d."
-msgstr "在顺序位置%d上已删除属性与物理存储上的不匹配."
+msgid "could not identify an equality operator for type %s"
+msgstr "无法为类型%s识别等于操作符"
-#: executor/execQual.c:1344 parser/parse_func.c:115 parser/parse_func.c:542
-#: parser/parse_func.c:895
+#: executor/execReplication.c:573
#, c-format
-msgid "cannot pass more than %d argument to a function"
-msgid_plural "cannot pass more than %d arguments to a function"
-msgstr[0] "向函数传递的参数不多于%d个"
+msgid "cannot update table \"%s\" because it does not have a replica identity and publishes updates"
+msgstr "无法更新表\"%s\",因为它没有副本标识并发布更新"
-#: executor/execQual.c:1533
+#: executor/execReplication.c:575
#, c-format
-msgid "functions and operators can take at most one set argument"
-msgstr "函数和操作符最多带一组参数"
+msgid "To enable updating the table, set REPLICA IDENTITY using ALTER TABLE."
+msgstr "若要启用表的更新,请使用ALTER TABLE设置REPLICA IDENTITY."
-#: executor/execQual.c:1583
+#: executor/execReplication.c:579
#, c-format
-msgid ""
-"function returning setof record called in context that cannot accept type "
-"record"
-msgstr "调用用于返回setof记录的函数的环境不能接受使用记录类型"
+msgid "cannot delete from table \"%s\" because it does not have a replica identity and publishes deletes"
+msgstr "无法从表\"%s\"中删除,因为它没有副本标识并发布删除"
-#: executor/execQual.c:1638 executor/execQual.c:1654 executor/execQual.c:1664
+#: executor/execReplication.c:581
#, c-format
-msgid "function return row and query-specified return row do not match"
-msgstr "指定查询返回记录和实际函数返回记录不匹配"
+msgid "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE."
+msgstr "要启用从表中删除,请使用ALTER TABLE设置REPLICA IDENTITY."
-#: executor/execQual.c:1639
+#: executor/execReplication.c:600
#, c-format
-msgid "Returned row contains %d attribute, but query expects %d."
-msgid_plural "Returned row contains %d attributes, but query expects %d."
-msgstr[0] "在所返回的记录中包含了%d个属性,但是查询期望有%d个属性"
+msgid "logical replication target relation \"%s.%s\" is not a table"
+msgstr "逻辑复制目标关系 \"%s.%s\"不是一个表 "
-#: executor/execQual.c:1655
+#: executor/execSRF.c:308
#, c-format
-msgid "Returned type %s at ordinal position %d, but query expects %s."
-msgstr "å\9c¨é¡ºåº\8fä½\8dç½®%2$dç\9a\84è¿\94å\9b\9eç±»å\9e\8bæ\98¯%1$s, ä½\86æ\98¯æ\9f¥è¯¢æ\9c\9fæ\9c\9b使ç\94¨ç±»å\9e\8b%3$s."
+msgid "rows returned by function are not all of the same row type"
+msgstr "å\87½æ\95°è¿\94å\9b\9eç\9a\84è®°å½\95ä¸\8då®\8cå\85¨å±\9eäº\8eç\9b¸å\90\8cç\9a\84è®°å½\95ç±»å\9e\8b"
-#: executor/execQual.c:1897 executor/execQual.c:2328
+#: executor/execSRF.c:356 executor/execSRF.c:647
#, c-format
msgid "table-function protocol for materialize mode was not followed"
msgstr "没有跟随针对物化模式的表函数协议"
-#: executor/execQual.c:1917 executor/execQual.c:2335
+#: executor/execSRF.c:363 executor/execSRF.c:665
#, c-format
msgid "unrecognized table-function returnMode: %d"
msgstr "未认可的表函数返回模式 (returnMode): %d"
-#: executor/execQual.c:2245
-#, c-format
-msgid "function returning set of rows cannot return null value"
-msgstr "函数返回值为多列时不能返回空值"
-
-#: executor/execQual.c:2302
+#: executor/execSRF.c:871
#, c-format
-msgid "rows returned by function are not all of the same row type"
-msgstr "函数返回的记录不完全属于相同的记录类型"
-
-#: executor/execQual.c:2517
-#, c-format
-msgid "IS DISTINCT FROM does not support set arguments"
-msgstr "IS DISTINCT FROM 不支持一组参数"
-
-#: executor/execQual.c:2594
-#, c-format
-msgid "op ANY/ALL (array) does not support set arguments"
-msgstr "操作符 ANY/ALL (数组) 不支持设置参数"
-
-#: executor/execQual.c:3191
-#, c-format
-msgid "cannot merge incompatible arrays"
-msgstr "无法合并不兼容的排列"
-
-#: executor/execQual.c:3192
-#, c-format
-msgid ""
-"Array with element type %s cannot be included in ARRAY construct with "
-"element type %s."
-msgstr "元素类型为 %s 的 ARRAY 结构中不能包含带有元素类型为 %s 的数组."
-
-#: executor/execQual.c:3233 executor/execQual.c:3260
-#, c-format
-msgid ""
-"multidimensional arrays must have array expressions with matching dimensions"
-msgstr "多维数组必须有符合维度的数组表达式"
-
-#: executor/execQual.c:3775
-#, c-format
-msgid "NULLIF does not support set arguments"
-msgstr "NULLIF 不支持一组参数"
-
-#: executor/execQual.c:4008 utils/adt/domains.c:136
-#, c-format
-msgid "domain %s does not allow null values"
-msgstr "域 %s 不允许空值"
-
-#: executor/execQual.c:4038 utils/adt/domains.c:173
-#, c-format
-msgid "value for domain %s violates check constraint \"%s\""
-msgstr "域 %s 的值违反了检查约束 \"%s\""
-
-#: executor/execQual.c:4393
-#, c-format
-msgid "WHERE CURRENT OF is not supported for this table type"
-msgstr "这种表类型不能使用WHERE CURRENT OF"
-
-#: executor/execQual.c:4590 parser/parse_agg.c:743
-#, c-format
-msgid "window function calls cannot be nested"
-msgstr "不允许嵌套调用窗口函数"
+msgid "function returning setof record called in context that cannot accept type record"
+msgstr "调用用于返回setof记录的函数的环境不能接受使用记录类型"
-#: executor/execQual.c:4802
+#: executor/execSRF.c:926 executor/execSRF.c:942 executor/execSRF.c:952
#, c-format
-msgid "target type is not an array"
-msgstr "目标类型不是一个数组"
+msgid "function return row and query-specified return row do not match"
+msgstr "指定查询返回记录和实际函数返回记录不匹配"
-#: executor/execQual.c:4917
+#: executor/execSRF.c:927
#, c-format
-msgid "ROW() column has type %s instead of type %s"
-msgstr "ROW() 列类型 %s 替换为 %s"
+msgid "Returned row contains %d attribute, but query expects %d."
+msgid_plural "Returned row contains %d attributes, but query expects %d."
+msgstr[0] "在所返回的记录中包含了%d个属性,但是查询期望有%d个属性"
-#: executor/execQual.c:5052 utils/adt/arrayfuncs.c:3803
-#: utils/adt/arrayfuncs.c:6341 utils/adt/rowtypes.c:927
+#: executor/execSRF.c:943
#, c-format
-msgid "could not identify a comparison function for type %s"
-msgstr "无法为类型 %s 确认一个比对函数"
+msgid "Returned type %s at ordinal position %d, but query expects %s."
+msgstr "在顺序位置%2$d的返回类型是%1$s, 但是查询期望使用类型%3$s."
-#: executor/execUtils.c:819
+#: executor/execUtils.c:687
#, c-format
msgid "materialized view \"%s\" has not been populated"
msgstr "物化视图 \"%s\"未被初始化"
-#: executor/execUtils.c:821
+#: executor/execUtils.c:689
#, c-format
msgid "Use the REFRESH MATERIALIZED VIEW command."
msgstr "使用命令 REFRESH MATERIALIZED VIEW."
msgid "could not determine actual type of argument declared %s"
msgstr "无法确定声明为 %s 的参数的实际类型"
+#: executor/functions.c:521
+#, c-format
+msgid "cannot COPY to/from client in a SQL function"
+msgstr "无法在SQL函数中从客户端或向客户端使用COPY命令"
+
#. translator: %s is a SQL statement name
-#: executor/functions.c:508
+#: executor/functions.c:527
#, c-format
msgid "%s is not allowed in a SQL function"
msgstr "%s 不允许在一个 SQL 函数中"
#. translator: %s is a SQL statement name
-#: executor/functions.c:515 executor/spi.c:1368 executor/spi.c:2158
+#: executor/functions.c:535 executor/spi.c:1422 executor/spi.c:2212
#, c-format
msgid "%s is not allowed in a non-volatile function"
msgstr "%s 在一个 non-valatile 函数中是不允许的"
-#: executor/functions.c:643
+#: executor/functions.c:656
#, c-format
-msgid ""
-"could not determine actual result type for function declared to return type "
-"%s"
+msgid "could not determine actual result type for function declared to return type %s"
msgstr "无法确定实际结果类型为函数声明返回类型 %s"
-#: executor/functions.c:1408
+#: executor/functions.c:1418
#, c-format
msgid "SQL function \"%s\" statement %d"
msgstr "SQL 函数 \"%s\" 语句 %d"
-#: executor/functions.c:1434
+#: executor/functions.c:1444
#, c-format
msgid "SQL function \"%s\" during startup"
msgstr "SQL 函数 \"%s\" 在启动的时候"
-#: executor/functions.c:1593 executor/functions.c:1630
-#: executor/functions.c:1642 executor/functions.c:1755
-#: executor/functions.c:1788 executor/functions.c:1818
+#: executor/functions.c:1537
+#, c-format
+msgid "calling procedures with output arguments is not supported in SQL functions"
+msgstr "SQL函数中不支持使用输出参数调用过程"
+
+#: executor/functions.c:1657 executor/functions.c:1690
+#: executor/functions.c:1702 executor/functions.c:1826
+#: executor/functions.c:1859 executor/functions.c:1889
#, c-format
msgid "return type mismatch in function declared to return %s"
msgstr "函数返回类型和声明类型 %s 不匹配"
-#: executor/functions.c:1595
+#: executor/functions.c:1659
#, c-format
-msgid ""
-"Function's final statement must be SELECT or INSERT/UPDATE/DELETE RETURNING."
+msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE RETURNING."
msgstr "函数的最后语句必须是 SELECT 或 INSERT/UPDATE/DELETE RETURNING."
-#: executor/functions.c:1632
+#: executor/functions.c:1692
#, c-format
msgid "Final statement must return exactly one column."
msgstr "最终的语句必须返回一列."
-#: executor/functions.c:1644
+#: executor/functions.c:1704
#, c-format
msgid "Actual return type is %s."
msgstr "实际返回类型是 %s."
-#: executor/functions.c:1757
+#: executor/functions.c:1828
#, c-format
msgid "Final statement returns too many columns."
msgstr "最终的语句的返回列太多."
-#: executor/functions.c:1790
+#: executor/functions.c:1861
#, c-format
msgid "Final statement returns %s instead of %s at column %d."
msgstr "最终语句在第 %3$d 列返回 %1$s 而不是 %2$s"
-#: executor/functions.c:1820
+#: executor/functions.c:1891
#, c-format
msgid "Final statement returns too few columns."
msgstr "最终的语句返回的列太少."
-#: executor/functions.c:1869
+#: executor/functions.c:1940
#, c-format
msgid "return type %s is not supported for SQL functions"
msgstr "SQL 函数不支持返回类型 %s"
-#: executor/nodeAgg.c:3011
+#: executor/nodeAgg.c:2806 parser/parse_agg.c:633 parser/parse_agg.c:663
#, c-format
-#| msgid "final function with extra arguments must not be declared STRICT"
-msgid "combine function for aggregate %u must to be declared as strict"
-msgstr "聚集 %u 的组合函数必须被声明为严格"
+msgid "aggregate function calls cannot be nested"
+msgstr "不允许嵌套调用聚合函数"
-#: executor/nodeAgg.c:3055 executor/nodeWindowAgg.c:2289
+#: executor/nodeAgg.c:2992 executor/nodeWindowAgg.c:2822
#, c-format
msgid "aggregate %u needs to have compatible input type and transition type"
msgstr "聚集 %u 需要有兼容的输入类型和转换类型"
-#: executor/nodeAgg.c:3127 parser/parse_agg.c:597 parser/parse_agg.c:627
-#, c-format
-msgid "aggregate function calls cannot be nested"
-msgstr "不允许嵌套调用聚合函数"
-
#: executor/nodeCustom.c:148 executor/nodeCustom.c:159
#, c-format
-#| msgid "custom-scan \"%s\" does not support MarkPos"
msgid "custom scan \"%s\" does not support MarkPos"
msgstr "自定义扫描 \"%s\" 不支持 MarkPos"
-#: executor/nodeHashjoin.c:823 executor/nodeHashjoin.c:853
+#: executor/nodeHashjoin.c:1040 executor/nodeHashjoin.c:1070
#, c-format
msgid "could not rewind hash-join temporary file: %m"
msgstr "无法卷回 (rewind) 散列联接 (hash-join) 临时文件: %m"
-#: executor/nodeHashjoin.c:888 executor/nodeHashjoin.c:894
+#: executor/nodeHashjoin.c:1228 executor/nodeHashjoin.c:1234
#, c-format
msgid "could not write to hash-join temporary file: %m"
msgstr "无法写入散列联接 (hash-join) 临时文件: %m"
-#: executor/nodeHashjoin.c:928 executor/nodeHashjoin.c:938
+#: executor/nodeHashjoin.c:1275 executor/nodeHashjoin.c:1285
#, c-format
msgid "could not read from hash-join temporary file: %m"
msgstr "无法从散列联接 (hash-join) 临时文件读取: %m"
-#: executor/nodeIndexonlyscan.c:179
+#: executor/nodeIndexonlyscan.c:236
#, c-format
msgid "lossy distance functions are not supported in index-only scans"
msgstr "在只用索引扫描中不支持有损距离函数"
-#: executor/nodeLimit.c:253
+#: executor/nodeLimit.c:264
#, c-format
msgid "OFFSET must not be negative"
msgstr "OFFSET后的值不能是负数"
-#: executor/nodeLimit.c:280
+#: executor/nodeLimit.c:290
#, c-format
msgid "LIMIT must not be negative"
msgstr "LIMIT后的值不能为负数"
-#: executor/nodeMergejoin.c:1584
+#: executor/nodeMergejoin.c:1567
#, c-format
msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
msgstr "RIGHT JOIN 只支持可合并联结条件"
-#: executor/nodeMergejoin.c:1604
+#: executor/nodeMergejoin.c:1585
#, c-format
msgid "FULL JOIN is only supported with merge-joinable join conditions"
msgstr "只有在合并连接查询条件中才支持FULL JOIN"
-#: executor/nodeModifyTable.c:96
+#: executor/nodeModifyTable.c:107
#, c-format
msgid "Query has too many columns."
msgstr "查询中的列太多了"
-#: executor/nodeModifyTable.c:123
+#: executor/nodeModifyTable.c:135
#, c-format
msgid "Query provides a value for a dropped column at ordinal position %d."
msgstr "在顺序位置%d上查询为已删除的列提供了一个值"
-#: executor/nodeModifyTable.c:131
+#: executor/nodeModifyTable.c:143
#, c-format
msgid "Query has too few columns."
msgstr "查询中的列太少了"
-#: executor/nodeModifyTable.c:1117
+#: executor/nodeModifyTable.c:773
+#, c-format
+msgid "tuple to be deleted was already moved to another partition due to concurrent update"
+msgstr "由于同时更新,要删除的元组已移动到另一个分区"
+
+#: executor/nodeModifyTable.c:1085
+#, c-format
+msgid "invalid ON UPDATE specification"
+msgstr "无效的ON UPDATE规范"
+
+#: executor/nodeModifyTable.c:1086
+#, c-format
+msgid "The result tuple would appear in a different partition than the original tuple."
+msgstr "结果元组将出现在与原始元组不同的分区中"
+
+#: executor/nodeModifyTable.c:1261
+#, c-format
+msgid "tuple to be updated was already moved to another partition due to concurrent update"
+msgstr "由于同时更新,要更新的元组已移动到另一个分区"
+
+#: executor/nodeModifyTable.c:1412
#, c-format
msgid "ON CONFLICT DO UPDATE command cannot affect row a second time"
msgstr "ON CONFLICT DO UPDATE命令无法再次影响行"
-#: executor/nodeModifyTable.c:1118
+#: executor/nodeModifyTable.c:1413
#, c-format
-msgid ""
-"Ensure that no rows proposed for insertion within the same command have "
-"duplicate constrained values."
+msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values."
msgstr "确保在具有重复受约束值的同一个命令中不会插入行。"
-#: executor/nodeSamplescan.c:307
+#: executor/nodeSamplescan.c:279
#, c-format
msgid "TABLESAMPLE parameter cannot be null"
msgstr "TABLESAMPLE参数不能为空值"
-#: executor/nodeSamplescan.c:320
+#: executor/nodeSamplescan.c:291
#, c-format
msgid "TABLESAMPLE REPEATABLE parameter cannot be null"
msgstr "TABLESAMPLE REPEATABLE参数不能为null"
-#: executor/nodeSubplan.c:345 executor/nodeSubplan.c:384
-#: executor/nodeSubplan.c:1040
+#: executor/nodeSubplan.c:347 executor/nodeSubplan.c:386
+#: executor/nodeSubplan.c:1136
#, c-format
msgid "more than one row returned by a subquery used as an expression"
msgstr "作为一个表达式使用的子查询返回了多列"
-#: executor/nodeWindowAgg.c:353
+#: executor/nodeTableFuncscan.c:375
+#, c-format
+msgid "namespace URI must not be null"
+msgstr "命名空间URI不能为空"
+
+#: executor/nodeTableFuncscan.c:389
+#, c-format
+msgid "row filter expression must not be null"
+msgstr "行筛选表达式不能为空"
+
+#: executor/nodeTableFuncscan.c:415
+#, c-format
+msgid "column filter expression must not be null"
+msgstr "列筛选器表达式不能为空"
+
+#: executor/nodeTableFuncscan.c:416
+#, c-format
+msgid "Filter for column \"%s\" is null."
+msgstr "列\"%s\"的筛选器为空."
+
+#: executor/nodeTableFuncscan.c:506
+#, c-format
+msgid "null is not allowed in column \"%s\""
+msgstr "列\"%s\"中不允许为空"
+
+#: executor/nodeWindowAgg.c:355
#, c-format
msgid "moving-aggregate transition function must not return null"
msgstr "移动聚合转换函数不能返回null值"
-#: executor/nodeWindowAgg.c:1609
+#: executor/nodeWindowAgg.c:2057
#, c-format
msgid "frame starting offset must not be null"
msgstr "框架(frame)的启动偏移量不能为空"
-#: executor/nodeWindowAgg.c:1622
+#: executor/nodeWindowAgg.c:2070
#, c-format
msgid "frame starting offset must not be negative"
msgstr "框架(frame)的启动偏移量不能为负数"
-#: executor/nodeWindowAgg.c:1635
+#: executor/nodeWindowAgg.c:2082
#, c-format
msgid "frame ending offset must not be null"
msgstr "框架(frame)的结束偏移量不能为空"
-#: executor/nodeWindowAgg.c:1648
+#: executor/nodeWindowAgg.c:2095
#, c-format
msgid "frame ending offset must not be negative"
msgstr "框架(frame)的结束偏移量不能为负数"
-#: executor/spi.c:214
+#: executor/nodeWindowAgg.c:2738
+#, c-format
+msgid "aggregate function %s does not support use as a window function"
+msgstr "聚合函数%s不支持用作窗口函数"
+
+#: executor/spi.c:233 executor/spi.c:272
+#, c-format
+msgid "invalid transaction termination"
+msgstr "无效交易终止"
+
+#: executor/spi.c:247
+#, c-format
+msgid "cannot commit while a subtransaction is active"
+msgstr "子事务处于活动状态时无法提交"
+
+#: executor/spi.c:278
+#, c-format
+msgid "cannot roll back while a subtransaction is active"
+msgstr "子事务处于活动状态时无法回滚"
+
+#: executor/spi.c:317
#, c-format
msgid "transaction left non-empty SPI stack"
msgstr "事物剩下非空的 SPI 栈"
-#: executor/spi.c:215 executor/spi.c:279
+#: executor/spi.c:318 executor/spi.c:381
#, c-format
msgid "Check for missing \"SPI_finish\" calls."
msgstr "检查是否缺少 \"SPI_finish\" 调用."
-#: executor/spi.c:278
+#: executor/spi.c:380
#, c-format
msgid "subtransaction left non-empty SPI stack"
msgstr "子事物剩下非空的 SPI 栈"
-#: executor/spi.c:1229
+#: executor/spi.c:1283
#, c-format
msgid "cannot open multi-query plan as cursor"
msgstr "无法作为游标打开多条查询规划"
#. translator: %s is name of a SQL command, eg INSERT
-#: executor/spi.c:1234
+#: executor/spi.c:1288
#, c-format
msgid "cannot open %s query as cursor"
msgstr "无法以游标的形式打开查询%s"
-#: executor/spi.c:1342
+#: executor/spi.c:1393
#, c-format
msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
msgstr "不支持DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE "
-#: executor/spi.c:1343 parser/analyze.c:2292
+#: executor/spi.c:1394 parser/analyze.c:2480
#, c-format
msgid "Scrollable cursors must be READ ONLY."
msgstr "可滚动游标必须为只读."
-#: executor/spi.c:2459
+#: executor/spi.c:2534
#, c-format
msgid "SQL statement \"%s\""
msgstr "SQL 语句 \"%s\""
-#: foreign/foreign.c:314
+#: executor/tqueue.c:70
+#, c-format
+msgid "could not send tuple to shared-memory queue"
+msgstr "无法将元组发送到共享内存队列"
+
+#: foreign/foreign.c:188
#, c-format
msgid "user mapping not found for \"%s\""
msgstr "没有找到对于\"%s\"的用户映射"
-#: foreign/foreign.c:750
+#: foreign/foreign.c:640
#, c-format
msgid "invalid option \"%s\""
msgstr "无效选项 \"%s\""
-#: foreign/foreign.c:751
+#: foreign/foreign.c:641
#, c-format
msgid "Valid options in this context are: %s"
msgstr "这个环境中有效选项是:%s"
-#: gram.y:1004
+#: gram.y:1026
+#, c-format
+msgid "UNENCRYPTED PASSWORD is no longer supported"
+msgstr "UNENCRYPTED PASSWORD 不再被支持"
+
+#: gram.y:1027
+#, c-format
+msgid "Remove UNENCRYPTED to store the password in encrypted form instead."
+msgstr "删除 UNENCRYPTED 以加密形式存储密码."
+
+#: gram.y:1089
#, c-format
msgid "unrecognized role option \"%s\""
msgstr "无法识别的角色选项\"%s\""
-#: gram.y:1280 gram.y:1295
+#: gram.y:1336 gram.y:1351
#, c-format
msgid "CREATE SCHEMA IF NOT EXISTS cannot include schema elements"
msgstr "CREATE SCHEMA IF NOT EXISTS不能包含方案(schema)元素"
-#: gram.y:1440
+#: gram.y:1496
#, c-format
msgid "current database cannot be changed"
msgstr "不能改变当前使用的数据库"
-#: gram.y:1564
+#: gram.y:1620
#, c-format
msgid "time zone interval must be HOUR or HOUR TO MINUTE"
msgstr "时区间隔必须为 HOUR 或者 HOUR TO MINUTE"
-#: gram.y:2602 gram.y:2631
+#: gram.y:2138
+#, c-format
+msgid "column number must be in range from 1 to %d"
+msgstr "列号必须是在范围1到%d之间"
+
+#: gram.y:2677
+#, c-format
+msgid "sequence option \"%s\" not supported here"
+msgstr "此处不支持序列选项\"%s\""
+
+#: gram.y:2706
+#, c-format
+msgid "modulus for hash partition provided more than once"
+msgstr "哈希分区的模数提供了多次"
+
+#: gram.y:2715
+#, c-format
+msgid "remainder for hash partition provided more than once"
+msgstr "哈希分区的剩余部分提供了多次"
+
+#: gram.y:2722
+#, c-format
+msgid "unrecognized hash partition bound specification \"%s\""
+msgstr "不可识别的哈希分区绑定规范\"%s\""
+
+#: gram.y:2730
+#, c-format
+msgid "modulus for hash partition must be specified"
+msgstr "必须指定哈希分区的模数"
+
+#: gram.y:2734
+#, c-format
+msgid "remainder for hash partition must be specified"
+msgstr "必须指定哈希分区的剩余部分"
+
+#: gram.y:2986 gram.y:3015
#, c-format
msgid "STDIN/STDOUT not allowed with PROGRAM"
msgstr "STDIN/STDOUT 不允许与PROGRAM一起使用"
-#: gram.y:2897 gram.y:2904 gram.y:10275 gram.y:10283
+#: gram.y:3325 gram.y:3332 gram.y:11462 gram.y:11470
#, c-format
msgid "GLOBAL is deprecated in temporary table creation"
msgstr "GLOBAL在临时表中的创建中已经被废弃使用"
-#: gram.y:3345 utils/adt/ri_triggers.c:316 utils/adt/ri_triggers.c:373
-#: utils/adt/ri_triggers.c:792 utils/adt/ri_triggers.c:1015
-#: utils/adt/ri_triggers.c:1171 utils/adt/ri_triggers.c:1352
-#: utils/adt/ri_triggers.c:1517 utils/adt/ri_triggers.c:1693
-#: utils/adt/ri_triggers.c:1873 utils/adt/ri_triggers.c:2064
-#: utils/adt/ri_triggers.c:2122 utils/adt/ri_triggers.c:2227
-#: utils/adt/ri_triggers.c:2404
+#: gram.y:3814 utils/adt/ri_triggers.c:308 utils/adt/ri_triggers.c:365
+#: utils/adt/ri_triggers.c:853 utils/adt/ri_triggers.c:1013
+#: utils/adt/ri_triggers.c:1198 utils/adt/ri_triggers.c:1419
+#: utils/adt/ri_triggers.c:1654 utils/adt/ri_triggers.c:1712
+#: utils/adt/ri_triggers.c:1817 utils/adt/ri_triggers.c:1997
#, c-format
msgid "MATCH PARTIAL not yet implemented"
msgstr "MATCH PARTIAL 仍未实现"
-#: gram.y:4800
+#: gram.y:5296
+#, c-format
+msgid "unrecognized row security option \"%s\""
+msgstr "无法识别的行安全选项\"%s\""
+
+#: gram.y:5297
+#, c-format
+msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently."
+msgstr "当前仅支持 PERMISSIVE 或 RESTRICTIVE 策略 "
+
+#: gram.y:5405
msgid "duplicate trigger events specified"
msgstr "重复指定触发器事件"
-#: gram.y:4893 parser/parse_utilcmd.c:2741 parser/parse_utilcmd.c:2767
+#: gram.y:5546 parser/parse_utilcmd.c:3313 parser/parse_utilcmd.c:3339
#, c-format
msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
msgstr "约束声明 INITIALLY DEFERRED 必须为 DEFERRABLE"
-#: gram.y:4900
+#: gram.y:5553
#, c-format
msgid "conflicting constraint properties"
msgstr "约束属性冲突"
-#: gram.y:5032
+#: gram.y:5659
#, c-format
msgid "CREATE ASSERTION is not yet implemented"
msgstr "CREATE ASSERTION 仍未实现"
-#: gram.y:5048
+#: gram.y:5674
#, c-format
msgid "DROP ASSERTION is not yet implemented"
msgstr "DROP ASSERTION 仍未实现"
-#: gram.y:5394
+#: gram.y:6054
#, c-format
msgid "RECHECK is no longer required"
msgstr "不再需要RECHECK选项了"
# describe.c:289
-#: gram.y:5395
+#: gram.y:6055
#, c-format
msgid "Update your data type."
msgstr "更改您的数据类型"
-#: gram.y:6973
+#: gram.y:7791
#, c-format
msgid "aggregates cannot have output arguments"
msgstr "聚合函数不能使用输出参数"
-#: gram.y:7292 utils/adt/regproc.c:774 utils/adt/regproc.c:815
+#: gram.y:8179 utils/adt/regproc.c:691 utils/adt/regproc.c:732
#, c-format
msgid "missing argument"
msgstr "缺少参数"
-#: gram.y:7293 utils/adt/regproc.c:775 utils/adt/regproc.c:816
+#: gram.y:8180 utils/adt/regproc.c:692 utils/adt/regproc.c:733
#, c-format
msgid "Use NONE to denote the missing argument of a unary operator."
msgstr "使用 NONE 表示一元操作符缺少的参数."
-#: gram.y:8843 gram.y:8861
+#: gram.y:10045 gram.y:10063
#, c-format
msgid "WITH CHECK OPTION not supported on recursive views"
msgstr "递归视图不能使用WITH CHECK OPTION"
-#: gram.y:9867 parser/parse_expr.c:1468
+#: gram.y:10560
#, c-format
-msgid "number of columns does not match number of values"
-msgstr "列的数量与值的数量不匹配"
+msgid "unrecognized VACUUM option \"%s\""
+msgstr "无法识别的清理选项\"%s\""
-#: gram.y:10383
+#: gram.y:11570
#, c-format
msgid "LIMIT #,# syntax is not supported"
msgstr "不支持 LIMIT #,# 语法"
-#: gram.y:10384
+#: gram.y:11571
#, c-format
msgid "Use separate LIMIT and OFFSET clauses."
msgstr "LIMIT和OFFSET子句要分隔开"
-#: gram.y:10647 gram.y:10672
+#: gram.y:11869 gram.y:11894
#, c-format
msgid "VALUES in FROM must have an alias"
msgstr "FROM中的VALUES子句必须有一个别名"
-#: gram.y:10648 gram.y:10673
+#: gram.y:11870 gram.y:11895
#, c-format
msgid "For example, FROM (VALUES ...) [AS] foo."
msgstr "例如, FROM (SELECT ...) [AS] foo."
-#: gram.y:10653 gram.y:10678
+#: gram.y:11875 gram.y:11900
#, c-format
msgid "subquery in FROM must have an alias"
msgstr "FROM 中的子查询必须有一个别名"
-#: gram.y:10654 gram.y:10679
+#: gram.y:11876 gram.y:11901
#, c-format
msgid "For example, FROM (SELECT ...) [AS] foo."
msgstr "例如, FROM (SELECT ...) [AS] foo."
-#: gram.y:11253
+#: gram.y:12354
+#, c-format
+msgid "only one DEFAULT value is allowed"
+msgstr "只允许一个默认值"
+
+#: gram.y:12363
+#, c-format
+msgid "only one PATH value per column is allowed"
+msgstr "每列只允许一个路径值"
+
+#: gram.y:12372
+#, c-format
+msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\""
+msgstr "列\"%s\"的 NULL / NOT NULL 声明冲突或冗余"
+
+#: gram.y:12381
+#, c-format
+msgid "unrecognized column option \"%s\""
+msgstr "无法识别的列选项\"%s\""
+
+#: gram.y:12635
#, c-format
msgid "precision for type float must be at least 1 bit"
msgstr "浮点类型的精确度必须至少 1 位"
-#: gram.y:11262
+#: gram.y:12644
#, c-format
msgid "precision for type float must be less than 54 bits"
msgstr "浮点类型的精确度必须小于 54 位"
-#: gram.y:11766
+#: gram.y:13135
#, c-format
msgid "wrong number of parameters on left side of OVERLAPS expression"
msgstr "OVERLAPS 表达式左边的参数个数不对"
-#: gram.y:11771
+#: gram.y:13140
#, c-format
msgid "wrong number of parameters on right side of OVERLAPS expression"
msgstr "OVERLAPS 表达式右边的参数个数不对"
-#: gram.y:11948
+#: gram.y:13315
#, c-format
msgid "UNIQUE predicate is not yet implemented"
msgstr "没有实现UNIQUE谓词"
-#: gram.y:12280
+#: gram.y:13662
#, c-format
msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP"
msgstr "WITHIN GROUP不允许多个 ORDER BY 子句"
-#: gram.y:12285
+#: gram.y:13667
#, c-format
msgid "cannot use DISTINCT with WITHIN GROUP"
msgstr "不能将 DISTINCT 和 WITHIN GROUP混在一起使用"
-#: gram.y:12290
+#: gram.y:13672
#, c-format
msgid "cannot use VARIADIC with WITHIN GROUP"
msgstr "不能将 VARIADIC 和 WITHIN GROUP在一起混用"
-#: gram.y:12796
-#, c-format
-msgid "RANGE PRECEDING is only supported with UNBOUNDED"
-msgstr "UNBOUNDED不支持RANGE PRECEDING"
-
-#: gram.y:12802
-#, c-format
-msgid "RANGE FOLLOWING is only supported with UNBOUNDED"
-msgstr "UNBOUNDED不支持RANGE FOLLOWING"
-
-#: gram.y:12829 gram.y:12852
+#: gram.y:14125 gram.y:14148
#, c-format
msgid "frame start cannot be UNBOUNDED FOLLOWING"
msgstr "框架的起始位置不能被执行UNBOUNDED FOLLOWING操作."
-#: gram.y:12834
+#: gram.y:14130
#, c-format
msgid "frame starting from following row cannot end with current row"
msgstr "从后面记录启动的窗口框架(frame)不能以当前记录结束"
-#: gram.y:12857
+#: gram.y:14153
#, c-format
msgid "frame end cannot be UNBOUNDED PRECEDING"
msgstr "框架的结束位置不能被执行UNBOUNDED FOLLOWING操作."
-#: gram.y:12863
+#: gram.y:14159
#, c-format
msgid "frame starting from current row cannot have preceding rows"
msgstr "从当前记录启动的窗口框架(frame)不能拥有正在处理的记录"
-#: gram.y:12870
+#: gram.y:14166
#, c-format
msgid "frame starting from following row cannot have preceding rows"
msgstr "从后面记录启动的窗口框架(frame)不能拥有正在处理的记录"
-#: gram.y:13535
+#: gram.y:14809
#, c-format
msgid "type modifier cannot have parameter name"
msgstr "类型修改器不能有参数名称"
-#: gram.y:13541
+#: gram.y:14815
#, c-format
msgid "type modifier cannot have ORDER BY"
msgstr "类型修改器不能有ORDER BY"
-#: gram.y:13605 gram.y:13611
+#: gram.y:14880 gram.y:14887
#, c-format
msgid "%s cannot be used as a role name here"
msgstr "在这里%s不能被用做一个角色名"
-#: gram.y:14233 gram.y:14422
+#: gram.y:15558 gram.y:15747
msgid "improper use of \"*\""
msgstr "对\"*\"的使用不正确"
-#: gram.y:14385 gram.y:14402 tsearch/spell.c:954 tsearch/spell.c:971
+#: gram.y:15710 gram.y:15727 tsearch/spell.c:954 tsearch/spell.c:971
#: tsearch/spell.c:988 tsearch/spell.c:1005 tsearch/spell.c:1070
#, c-format
msgid "syntax error"
msgstr "语法错误"
-#: gram.y:14486
+#: gram.y:15811
#, c-format
-msgid ""
-"an ordered-set aggregate with a VARIADIC direct argument must have one "
-"VARIADIC aggregated argument of the same data type"
+msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"
msgstr "带可变直接参数的有序集聚集函数必须有一个 相同类型的VARIADIC 聚集参数 "
-#: gram.y:14523
+#: gram.y:15848
#, c-format
msgid "multiple ORDER BY clauses not allowed"
msgstr "不允许多个 ORDER BY 子句"
-#: gram.y:14534
+#: gram.y:15859
#, c-format
msgid "multiple OFFSET clauses not allowed"
msgstr "不允许多个 OFFSET 子句"
-#: gram.y:14543
+#: gram.y:15868
#, c-format
msgid "multiple LIMIT clauses not allowed"
msgstr "不允许多个 LIMIT 子句"
-#: gram.y:14552
+#: gram.y:15877
+#, c-format
+msgid "multiple WITH clauses not allowed"
+msgstr "不允许使用多个WITH子句"
+
+#: gram.y:16081
+#, c-format
+msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
+msgstr "在TABLE函数中不允许使用OUT或INOUT模式的参数"
+
+#: gram.y:16182
+#, c-format
+msgid "multiple COLLATE clauses not allowed"
+msgstr "不允许多个 COLLATE 子句"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:16220 gram.y:16233
+#, c-format
+msgid "%s constraints cannot be marked DEFERRABLE"
+msgstr "%s约束不能标为DEFERRABLE"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:16246
+#, c-format
+msgid "%s constraints cannot be marked NOT VALID"
+msgstr "%s约束不能标为NOT VALID"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:16259
+#, c-format
+msgid "%s constraints cannot be marked NO INHERIT"
+msgstr "%s约束不能标为NO INHERIT"
+
+#: guc-file.l:316
+#, c-format
+msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %u"
+msgstr "未认可的配置参数 \"%s\", 文件\"%s\", 行%u"
+
+#: guc-file.l:353 utils/misc/guc.c:6249 utils/misc/guc.c:6443
+#: utils/misc/guc.c:6533 utils/misc/guc.c:6623 utils/misc/guc.c:6731
+#: utils/misc/guc.c:6826
+#, c-format
+msgid "parameter \"%s\" cannot be changed without restarting the server"
+msgstr "在没有启动服务器的情况下,不能改变参数 \"%s\" "
+
+#: guc-file.l:389
+#, c-format
+msgid "parameter \"%s\" removed from configuration file, reset to default"
+msgstr "参数\"%s\"已从配置文件中删除,重新设置为缺省"
+
+#: guc-file.l:455
+#, c-format
+msgid "parameter \"%s\" changed to \"%s\""
+msgstr "参数 \"%s\"被改为\"%s\""
+
+#: guc-file.l:497
+#, c-format
+msgid "configuration file \"%s\" contains errors"
+msgstr "配置文件 \"%s\" 有错"
+
+#: guc-file.l:502
+#, c-format
+msgid "configuration file \"%s\" contains errors; unaffected changes were applied"
+msgstr "配置文件 \"%s\" 有错; 使用了不受影响的内容变动"
+
+#: guc-file.l:507
+#, c-format
+msgid "configuration file \"%s\" contains errors; no changes were applied"
+msgstr "配置文件 \"%s\" 有错; 没有内容变动"
+
+#: guc-file.l:580
+#, c-format
+msgid "could not open configuration file \"%s\": maximum nesting depth exceeded"
+msgstr "无法打开配置文件 \"%s\": 已超过最大的嵌套深度"
+
+#: guc-file.l:596 libpq/hba.c:2142 libpq/hba.c:2550
+#, c-format
+msgid "could not open configuration file \"%s\": %m"
+msgstr "无法打开配置文件 \"%s\": %m"
+
+#: guc-file.l:607
+#, c-format
+msgid "skipping missing configuration file \"%s\""
+msgstr "忽略丢失的配置文件\"%s\""
+
+#: guc-file.l:861
+#, c-format
+msgid "syntax error in file \"%s\" line %u, near end of line"
+msgstr "在文件 \"%s\" 第 %u 行, 行尾附近语法错误"
+
+#: guc-file.l:871
+#, c-format
+msgid "syntax error in file \"%s\" line %u, near token \"%s\""
+msgstr "在文件 \"%s\" 第 %u 行, 记号 \"%s\" 附近语法错误"
+
+#: guc-file.l:891
+#, c-format
+msgid "too many syntax errors found, abandoning file \"%s\""
+msgstr "发现太多的语法错误, 放弃文件 \"%s\""
+
+#: guc-file.l:943
+#, c-format
+msgid "could not open configuration directory \"%s\": %m"
+msgstr "无法打开配置文件目录 \"%s\": %m"
+
+#: jit/jit.c:208 utils/fmgr/dfmgr.c:201 utils/fmgr/dfmgr.c:418
+#: utils/fmgr/dfmgr.c:466
+#, c-format
+msgid "could not access file \"%s\": %m"
+msgstr "无法访问文件 \"%s\": %m"
+
+#: jit/llvm/llvmjit.c:598
+#, c-format
+msgid "time to inline: %.3fs, opt: %.3fs, emit: %.3fs"
+msgstr "在线时间: %.3fs, 选项: %.3fs, 发出: %.3fs"
+
+#: lib/dshash.c:247 utils/mmgr/dsa.c:715 utils/mmgr/dsa.c:797
+#, c-format
+msgid "Failed on DSA request of size %zu."
+msgstr "在大小为%zu的DSA请求时失败."
+
+#: lib/stringinfo.c:278
+#, c-format
+msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
+msgstr "无法为包含%d字节的字符串缓冲区扩大%d个更多字节."
+
+#: libpq/auth-scram.c:251
+#, c-format
+msgid "client selected an invalid SASL authentication mechanism"
+msgstr "客户端选择了无效的SASL身份验证机制"
+
+#: libpq/auth-scram.c:272 libpq/auth-scram.c:512 libpq/auth-scram.c:521
+#, c-format
+msgid "invalid SCRAM verifier for user \"%s\""
+msgstr "用户\"%s\"的SCRAM验证程序无效"
+
+#: libpq/auth-scram.c:283
+#, c-format
+msgid "User \"%s\" does not have a valid SCRAM verifier."
+msgstr "用户\"%s\"没有有效的SCRAM验证器."
+
+#: libpq/auth-scram.c:361 libpq/auth-scram.c:366 libpq/auth-scram.c:660
+#: libpq/auth-scram.c:668 libpq/auth-scram.c:779 libpq/auth-scram.c:789
+#: libpq/auth-scram.c:897 libpq/auth-scram.c:904 libpq/auth-scram.c:919
+#: libpq/auth-scram.c:934 libpq/auth-scram.c:948 libpq/auth-scram.c:966
+#: libpq/auth-scram.c:981 libpq/auth-scram.c:1267 libpq/auth-scram.c:1275
+#, c-format
+msgid "malformed SCRAM message"
+msgstr "异常的SCRAM消息"
+
+#: libpq/auth-scram.c:362
+#, c-format
+msgid "The message is empty."
+msgstr "消息为空."
+
+#: libpq/auth-scram.c:367
+#, c-format
+msgid "Message length does not match input length."
+msgstr "消息长度与输入长度不匹配."
+
+#: libpq/auth-scram.c:399
#, c-format
-msgid "multiple WITH clauses not allowed"
-msgstr "不允许使用多个WITH子句"
+msgid "invalid SCRAM response"
+msgstr "无效的SCRAM响应"
-#: gram.y:14732
+#: libpq/auth-scram.c:400
#, c-format
-msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
-msgstr "在TABLE函数中不允许使用OUT或INOUT模式的参数"
+msgid "Nonce does not match."
+msgstr "Nonce不匹配."
-#: gram.y:14833
+#: libpq/auth-scram.c:474
#, c-format
-msgid "multiple COLLATE clauses not allowed"
-msgstr "不允许多个 COLLATE 子句"
+msgid "could not generate random salt"
+msgstr "无法生成随机salt"
-#. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:14871 gram.y:14884
+#: libpq/auth-scram.c:661
#, c-format
-msgid "%s constraints cannot be marked DEFERRABLE"
-msgstr "%s约束不能标为DEFERRABLE"
+msgid "Expected attribute \"%c\" but found \"%s\"."
+msgstr "预期属性\"%c\",但发现结果是\"%s\"."
-#. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:14897
+#: libpq/auth-scram.c:669 libpq/auth-scram.c:790
#, c-format
-msgid "%s constraints cannot be marked NOT VALID"
-msgstr "%s约束不能标为NOT VALID"
+msgid "Expected character \"=\" for attribute \"%c\"."
+msgstr "属性\"%c\"需要字符\"=\"."
-#. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:14910
+#: libpq/auth-scram.c:780
#, c-format
-msgid "%s constraints cannot be marked NO INHERIT"
-msgstr "%s约束不能标为NO INHERIT"
+msgid "Attribute expected, but found invalid character \"%s\"."
+msgstr "应输入属性,但发现无效字符\"%s\"."
-#: guc-file.l:315
+#: libpq/auth-scram.c:898 libpq/auth-scram.c:920
#, c-format
-msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %u"
-msgstr "未认可的配置参数 \"%s\", 文件\"%s\", 行%u"
+msgid "The client selected SCRAM-SHA-256-PLUS, but the SCRAM message does not include channel binding data."
+msgstr "客户端选择了SCRAM-SHA-256-PLUS,但SCRAM消息不包括通道绑定数据."
-#: guc-file.l:352 utils/misc/guc.c:5893 utils/misc/guc.c:6085
-#: utils/misc/guc.c:6175 utils/misc/guc.c:6265 utils/misc/guc.c:6373
-#: utils/misc/guc.c:6468
+#: libpq/auth-scram.c:905 libpq/auth-scram.c:935
#, c-format
-msgid "parameter \"%s\" cannot be changed without restarting the server"
-msgstr "å\9c¨æ²¡æ\9c\89å\90¯å\8a¨æ\9c\8då\8a¡å\99¨ç\9a\84æ\83\85å\86µä¸\8bï¼\8cä¸\8dè\83½æ\94¹å\8f\98å\8f\82æ\95° \"%s\" "
+msgid "Comma expected, but found character \"%s\"."
+msgstr "åº\94为é\80\97å\8f·ï¼\8cä½\86æ\89¾å\88°äº\86å\97符\"%s\"."
-#: guc-file.l:388
+#: libpq/auth-scram.c:926
#, c-format
-msgid "parameter \"%s\" removed from configuration file, reset to default"
-msgstr "参数\"%s\"已从配置文件中删除,重新设置为缺省"
+msgid "SCRAM channel binding negotiation error"
+msgstr "SCRAM通道绑定协商错误"
-#: guc-file.l:454
+#: libpq/auth-scram.c:927
#, c-format
-msgid "parameter \"%s\" changed to \"%s\""
-msgstr "å\8f\82æ\95° \"%s\"被æ\94¹ä¸º\"%s\""
+msgid "The client supports SCRAM channel binding but thinks the server does not. However, this server does support channel binding."
+msgstr "客æ\88·ç«¯æ\94¯æ\8c\81SCRAMé\80\9aé\81\93ç»\91å®\9aï¼\8cä½\86认为æ\9c\8då\8a¡å\99¨ä¸\8dæ\94¯æ\8c\81ã\80\82ä½\86æ\98¯ï¼\8cæ¤æ\9c\8då\8a¡å\99¨æ\94¯æ\8c\81é\80\9aé\81\93ç»\91å®\9a"
-#: guc-file.l:496
+#: libpq/auth-scram.c:949
#, c-format
-msgid "configuration file \"%s\" contains errors"
-msgstr "配置文件 \"%s\" 有错"
+msgid "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM message includes channel binding data."
+msgstr "客户机选择的SCRAM-SHA-256没有通道绑定,但SCRAM消息包含通道绑定数据."
-#: guc-file.l:501
+#: libpq/auth-scram.c:960
#, c-format
-msgid ""
-"configuration file \"%s\" contains errors; unaffected changes were applied"
-msgstr "配置文件 \"%s\" 有错; 使用了不受影响的内容变动"
+msgid "unsupported SCRAM channel-binding type \"%s\""
+msgstr "不支持的SCRAM通道绑定类型\"%s\""
-#: guc-file.l:506
+#: libpq/auth-scram.c:967
+#,c-format
+msgid "Unexpected channel-binding flag \"%s\"."
+msgstr "意外的通道绑定标志\"%s\"."
+
+#: libpq/auth-scram.c:977
#, c-format
-msgid "configuration file \"%s\" contains errors; no changes were applied"
-msgstr "配置文件 \"%s\" 有错; 没有内容变动"
+msgid "client uses authorization identity, but it is not supported"
+msgstr "客户端使用授权标识,但不支持"
-#: guc-file.l:579
+#: libpq/auth-scram.c:982
#, c-format
-msgid ""
-"could not open configuration file \"%s\": maximum nesting depth exceeded"
-msgstr "无法打开配置文件 \"%s\": 已超过最大的嵌套深度"
+msgid "Unexpected attribute \"%s\" in client-first-message."
+msgstr "客户端第一条消息中的意外属性\"%s\""
-#: guc-file.l:595 libpq/hba.c:1808
+#: libpq/auth-scram.c:998
#, c-format
-msgid "could not open configuration file \"%s\": %m"
-msgstr "无法打开配置文件 \"%s\": %m"
+msgid "client requires an unsupported SCRAM extension"
+msgstr "客户端需要不支持的SCRAM扩展"
-#: guc-file.l:606
+#: libpq/auth-scram.c:1012
#, c-format
-msgid "skipping missing configuration file \"%s\""
-msgstr "忽略丢失的配置文件\"%s\""
+msgid "non-printable characters in SCRAM nonce"
+msgstr "SCRAM nonce中的不可打印字符"
-#: guc-file.l:860
+#: libpq/auth-scram.c:1129
#, c-format
-msgid "syntax error in file \"%s\" line %u, near end of line"
-msgstr "在文件 \"%s\" 第 %u 行, 行尾附近语法错误"
+msgid "could not generate random nonce"
+msgstr "无法生成随机的nonce"
-#: guc-file.l:870
+#: libpq/auth-scram.c:1233
#, c-format
-msgid "syntax error in file \"%s\" line %u, near token \"%s\""
-msgstr "在文件 \"%s\" 第 %u 行, 记号 \"%s\" 附近语法错误"
+msgid "SCRAM channel binding check failed"
+msgstr "SCRAM通道绑定检查失败"
-#: guc-file.l:890
+#: libpq/auth-scram.c:1251
#, c-format
-msgid "too many syntax errors found, abandoning file \"%s\""
-msgstr "å\8f\91ç\8e°å¤ªå¤\9aç\9a\84è¯æ³\95é\94\99误, æ\94¾å¼\83æ\96\87ä»¶ \"%s\""
+msgid "unexpected SCRAM channel-binding attribute in client-final-message"
+msgstr "客æ\88·ç«¯æ\9c\80ç»\88æ¶\88æ\81¯ä¸ç\9a\84æ\84\8få¤\96SCRAMé\80\9aé\81\93ç»\91å®\9aå±\9eæ\80§"
-#: guc-file.l:942
+#: libpq/auth-scram.c:1268
#, c-format
-msgid "could not open configuration directory \"%s\": %m"
-msgstr "无法打开配置文件目录 \"%s\": %m"
+msgid "Malformed proof in client-final-message."
+msgstr "客户端最终消息中的证明格式不正确."
-#: lib/stringinfo.c:259
+#: libpq/auth-scram.c:1276
#, c-format
-msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
-msgstr "无法为包含%d字节的字符串缓冲区扩大%d个更多字节."
+msgid "Garbage found at the end of client-final-message."
+msgstr "在客户端最终消息末尾发现垃圾"
-#: libpq/auth.c:251
+#: libpq/auth.c:282
#, c-format
msgid "authentication failed for user \"%s\": host rejected"
msgstr "用户 \"%s\" 认证失败: 主机拒绝"
-#: libpq/auth.c:254
+#: libpq/auth.c:285
#, c-format
msgid "\"trust\" authentication failed for user \"%s\""
msgstr "用户 \"%s\" \"trust\" 认证失败"
-#: libpq/auth.c:257
+#: libpq/auth.c:288
#, c-format
msgid "Ident authentication failed for user \"%s\""
msgstr "用户 \"%s\" Ident 认证失败"
-#: libpq/auth.c:260
+#: libpq/auth.c:291
#, c-format
msgid "Peer authentication failed for user \"%s\""
msgstr "对用户\"%s\"的对等认证失败"
-#: libpq/auth.c:264
+#: libpq/auth.c:296
#, c-format
msgid "password authentication failed for user \"%s\""
msgstr "用户 \"%s\" Password 认证失败"
-#: libpq/auth.c:269
+#: libpq/auth.c:301
#, c-format
msgid "GSSAPI authentication failed for user \"%s\""
msgstr "对于用户\"%s\"的GSSAPI 认证失败"
-#: libpq/auth.c:272
+#: libpq/auth.c:304
#, c-format
msgid "SSPI authentication failed for user \"%s\""
msgstr "对于用户 \"%s\" 的 SSPI 认证失败"
-#: libpq/auth.c:275
+#: libpq/auth.c:307
#, c-format
msgid "PAM authentication failed for user \"%s\""
msgstr "用户 \"%s\" 认证 PAM 失败"
-#: libpq/auth.c:278
+#: libpq/auth.c:310
#, c-format
-#| msgid "SSPI authentication failed for user \"%s\""
msgid "BSD authentication failed for user \"%s\""
msgstr "对于用户 \"%s\" 的 BSD 认证失败"
-#: libpq/auth.c:281
+#: libpq/auth.c:313
#, c-format
msgid "LDAP authentication failed for user \"%s\""
msgstr "对于用户 \"%s\"的LDAP认证失败"
-#: libpq/auth.c:284
+#: libpq/auth.c:316
#, c-format
msgid "certificate authentication failed for user \"%s\""
msgstr "用户 \"%s\" 的认证失败"
-#: libpq/auth.c:287
+#: libpq/auth.c:319
#, c-format
msgid "RADIUS authentication failed for user \"%s\""
msgstr "用户 \"%s\" 的RADIUS认证失败"
-#: libpq/auth.c:290
+#: libpq/auth.c:322
#, c-format
msgid "authentication failed for user \"%s\": invalid authentication method"
msgstr "用户 \"%s\" 认证失败: 无效的认证方式"
-#: libpq/auth.c:294
+#: libpq/auth.c:326
#, c-format
msgid "Connection matched pg_hba.conf line %d: \"%s\""
msgstr "与Connection相匹配的文件行位于 pg_hba.conf %d: \"%s\""
-#: libpq/auth.c:349
+#: libpq/auth.c:373
+#, c-format
+msgid "client certificates can only be checked if a root certificate store is available"
+msgstr "只有在根认证有效的情况下才能检查客户端认证"
+
+#: libpq/auth.c:384
#, c-format
msgid "connection requires a valid client certificate"
msgstr "连接中需要一个有效的客户端认证"
-#: libpq/auth.c:391
+#: libpq/auth.c:417
#, c-format
-msgid ""
-"pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
+msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
msgstr "pg_hba.conf中的记录拒绝来自主机\"%s\",用户 \"%s\",%s的复制连接"
-#: libpq/auth.c:393 libpq/auth.c:409 libpq/auth.c:467 libpq/auth.c:485
+#: libpq/auth.c:419 libpq/auth.c:435 libpq/auth.c:493 libpq/auth.c:511
msgid "SSL off"
msgstr "SSL 关闭"
-#: libpq/auth.c:393 libpq/auth.c:409 libpq/auth.c:467 libpq/auth.c:485
+#: libpq/auth.c:419 libpq/auth.c:435 libpq/auth.c:493 libpq/auth.c:511
msgid "SSL on"
msgstr "SSL 开启"
-#: libpq/auth.c:397
+#: libpq/auth.c:423
#, c-format
msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\""
msgstr "pg_hba.conf 记录拒绝来自主机\"%s\", 用户\"%s\"的复制连接"
-#: libpq/auth.c:406
+#: libpq/auth.c:432
#, c-format
-msgid ""
-"pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s"
-"\", %s"
-msgstr ""
-"pg_hba.conf 记录拒绝来自主机\"%s\", 用户\"%s\", 数据库\"%s\", %s的复制连接"
+msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\", %s"
+msgstr "pg_hba.conf 记录拒绝来自主机\"%s\", 用户\"%s\", 数据库\"%s\", %s的复制连接"
-#: libpq/auth.c:413
+#: libpq/auth.c:439
#, c-format
-msgid ""
-"pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\""
+msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\""
msgstr "pg_hba.conf 记录拒绝来自主机\"%s\", 用户\"%s\", 数据库\"%s\"的复制连接"
-#: libpq/auth.c:442
+#: libpq/auth.c:468
#, c-format
msgid "Client IP address resolved to \"%s\", forward lookup matches."
msgstr "客户端IP地址解析为 \"%s\", 与转发查找结果相匹配."
-#: libpq/auth.c:445
+#: libpq/auth.c:471
#, c-format
msgid "Client IP address resolved to \"%s\", forward lookup not checked."
msgstr "客户端IP地址解析为 \"%s\", 转发查找结果没有检查."
-#: libpq/auth.c:448
+#: libpq/auth.c:474
#, c-format
msgid "Client IP address resolved to \"%s\", forward lookup does not match."
msgstr "客户端IP地址解析为 \"%s\", 与转发查找结果不匹配."
# fe-misc.c:702
-#: libpq/auth.c:451
+#: libpq/auth.c:477
#, c-format
msgid "Could not translate client host name \"%s\" to IP address: %s."
msgstr "无法解析主机名 \"%s\" 对应的IP地址: %s."
# fe-connect.c:1283
-#: libpq/auth.c:456
+#: libpq/auth.c:482
#, c-format
msgid "Could not resolve client IP address to a host name: %s."
msgstr "无法解析客户端地址主机名: %s."
-#: libpq/auth.c:465
+#: libpq/auth.c:491
#, c-format
-msgid ""
-"no pg_hba.conf entry for replication connection from host \"%s\", user \"%s"
-"\", %s"
+msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\", %s"
msgstr "没有来自主机 \"%s\", 用户\"%s\", %s的复制连接的pg_hba.conf记录"
-#: libpq/auth.c:472
+#: libpq/auth.c:498
#, c-format
-msgid ""
-"no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\""
+msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\""
msgstr "没有来自主机 \"%s\", 用户\"%s\"的复制连接的pg_hba.conf记录"
-#: libpq/auth.c:482
+#: libpq/auth.c:508
#, c-format
msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
-msgstr ""
-"没有用于主机 \"%s\", 用户 \"%s\", 数据库 \"%s\", %s 的 pg_hba.conf 记录"
+msgstr "没有用于主机 \"%s\", 用户 \"%s\", 数据库 \"%s\", %s 的 pg_hba.conf 记录"
-#: libpq/auth.c:490
+#: libpq/auth.c:516
#, c-format
msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\""
msgstr "没有用于主机 \"%s\", 用户 \"%s\", 数据库 \"%s\" 的 pg_hba.conf 记录"
-#: libpq/auth.c:533 libpq/hba.c:1180
-#, c-format
-msgid ""
-"MD5 authentication is not supported when \"db_user_namespace\" is enabled"
-msgstr "当启用 \"db_user_namespace\" 时不支持 MD5 认证"
-
-#: libpq/auth.c:667
+#: libpq/auth.c:669
#, c-format
msgid "expected password response, got message type %d"
msgstr "期望得到口令回应,但是得到了消息类型%d."
-#: libpq/auth.c:695
+#: libpq/auth.c:697
#, c-format
msgid "invalid password packet size"
msgstr "无效的口令包尺寸"
-#: libpq/auth.c:825
+#: libpq/auth.c:715
+#, c-format
+msgid "empty password returned by client"
+msgstr "客户端返回了空口令"
+
+#: libpq/auth.c:835 libpq/hba.c:1325
+#, c-format
+msgid "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
+msgstr "当启用 \"db_user_namespace\" 时不支持 MD5 认证"
+
+#: libpq/auth.c:841
+#, c-format
+msgid "could not generate random MD5 salt"
+msgstr "无法生成随机MD5"
+
+#: libpq/auth.c:887
+#, c-format
+msgid "SASL authentication is not supported in protocol version 2"
+msgstr "在协议版本2中不支持SASL身份验证"
+
+#: libpq/auth.c:920
+#, c-format
+msgid "expected SASL response, got message type %d"
+msgstr "期望SASL回应,但是得到了信息类型%d"
+
+#: libpq/auth.c:1112
#, c-format
msgid "GSSAPI is not supported in protocol version 2"
msgstr "在协议版本2中不支持使用GSSAPI"
-#: libpq/auth.c:885
+#: libpq/auth.c:1172
#, c-format
msgid "expected GSS response, got message type %d"
msgstr "期望GSS回应,但是得到了信息类型%d"
-#: libpq/auth.c:946
+#: libpq/auth.c:1234
msgid "accepting GSS security context failed"
msgstr "接收GSS安全环境失败"
-#: libpq/auth.c:972
+#: libpq/auth.c:1260
msgid "retrieving GSS user name failed"
msgstr "获取GSS用户名失败"
-#: libpq/auth.c:1091
+#: libpq/auth.c:1385
#, c-format
msgid "SSPI is not supported in protocol version 2"
msgstr "在协议版本2中不支持使用SSPI"
-#: libpq/auth.c:1106
+#: libpq/auth.c:1400
msgid "could not acquire SSPI credentials"
msgstr "无法获得SSPI证书"
-#: libpq/auth.c:1124
+#: libpq/auth.c:1418
#, c-format
msgid "expected SSPI response, got message type %d"
msgstr "期望SSPI回应,但是得到了消息类型%d"
-#: libpq/auth.c:1196
+#: libpq/auth.c:1491
msgid "could not accept SSPI security context"
msgstr "无法访问SSPI安全环境"
-#: libpq/auth.c:1258
+#: libpq/auth.c:1553
msgid "could not get token from SSPI security context"
msgstr "无法从SSPI安全环境中获取令牌(token)"
-#: libpq/auth.c:1377 libpq/auth.c:1396
+#: libpq/auth.c:1672 libpq/auth.c:1691
#, c-format
-#| msgid "could not parse file name \"%s\""
msgid "could not translate name"
msgstr "不能翻译名称"
-#: libpq/auth.c:1409
+#: libpq/auth.c:1704
#, c-format
-#| msgid "channel name too long"
msgid "realm name too long"
msgstr "realm 名称太长"
-#: libpq/auth.c:1424
+#: libpq/auth.c:1719
#, c-format
-#| msgid "encoding name too long"
msgid "translated account name too long"
msgstr "翻译的账户名太长"
-#: libpq/auth.c:1610
+#: libpq/auth.c:1905
#, c-format
msgid "could not create socket for Ident connection: %m"
msgstr "无法为 Ident 联接创建套接字: %m"
-#: libpq/auth.c:1625
+#: libpq/auth.c:1920
#, c-format
msgid "could not bind to local address \"%s\": %m"
msgstr "无法绑定到本地地址 \"%s\": %m"
-#: libpq/auth.c:1637
+#: libpq/auth.c:1932
#, c-format
msgid "could not connect to Ident server at address \"%s\", port %s: %m"
msgstr "无法联接到地址为 \"%s\", 端口为 %s 的 Ident 服务器: %m"
-#: libpq/auth.c:1659
+#: libpq/auth.c:1954
#, c-format
msgid "could not send query to Ident server at address \"%s\", port %s: %m"
msgstr "无法发送查询到地址为 \"%s\", 端口为 %s 的 Ident 服务器: %m"
-#: libpq/auth.c:1676
+#: libpq/auth.c:1971
#, c-format
-msgid ""
-"could not receive response from Ident server at address \"%s\", port %s: %m"
+msgid "could not receive response from Ident server at address \"%s\", port %s: %m"
msgstr "无法从地址为 \"%s\", 端口为 %s 的 Ident 服务器接收应答: %m"
-#: libpq/auth.c:1686
+#: libpq/auth.c:1981
#, c-format
msgid "invalidly formatted response from Ident server: \"%s\""
msgstr "从 Ident 服务器接收的无效格式应答: \"%s\""
# fe-auth.c:640
-#: libpq/auth.c:1726
+#: libpq/auth.c:2021
#, c-format
msgid "peer authentication is not supported on this platform"
msgstr "对等认证在这个平台上不支持"
-#: libpq/auth.c:1730
+#: libpq/auth.c:2025
#, c-format
msgid "could not get peer credentials: %m"
msgstr "无法获得同等 (peer) 证书: %m"
-#: libpq/auth.c:1739
+#: libpq/auth.c:2036
#, c-format
msgid "could not look up local user ID %ld: %s"
msgstr "无法查找本地用户ID %ld:%s"
-#: libpq/auth.c:1823 libpq/auth.c:2149 libpq/auth.c:2509
-#, c-format
-msgid "empty password returned by client"
-msgstr "客户端返回了空口令"
-
-#: libpq/auth.c:1833
+#: libpq/auth.c:2124
#, c-format
msgid "error from underlying PAM layer: %s"
msgstr "来自 PAM 层下面的错误: %s"
-#: libpq/auth.c:1914
+#: libpq/auth.c:2193
#, c-format
msgid "could not create PAM authenticator: %s"
msgstr "无法创建 PAM 类型器: %s"
-#: libpq/auth.c:1925
+#: libpq/auth.c:2204
#, c-format
msgid "pam_set_item(PAM_USER) failed: %s"
msgstr "pam_set_item(PAM_USER) 失败: %s"
-#: libpq/auth.c:1936
+#: libpq/auth.c:2236
#, c-format
-#| msgid "pam_set_item(PAM_USER) failed: %s"
msgid "pam_set_item(PAM_RHOST) failed: %s"
msgstr "pam_set_item(PAM_RHOST) 失败: %s"
-#: libpq/auth.c:1947
+#: libpq/auth.c:2248
#, c-format
msgid "pam_set_item(PAM_CONV) failed: %s"
msgstr "pam_set_item(PAM_CONV) 失败: %s"
-#: libpq/auth.c:1958
+#: libpq/auth.c:2259
#, c-format
msgid "pam_authenticate failed: %s"
msgstr "pam_authenticate 失败: %s"
-#: libpq/auth.c:1969
+#: libpq/auth.c:2270
#, c-format
msgid "pam_acct_mgmt failed: %s"
msgstr "pam_acct_mgmt 失败: %s"
-#: libpq/auth.c:1980
+#: libpq/auth.c:2281
#, c-format
msgid "could not release PAM authenticator: %s"
msgstr "无法释放 PAM 类型器: %s"
-#: libpq/auth.c:2045
-#, c-format
-msgid "could not initialize LDAP: %m"
-msgstr "无法初始化LDAP: %m"
-
-#: libpq/auth.c:2048
+#: libpq/auth.c:2357
#, c-format
msgid "could not initialize LDAP: error code %d"
msgstr "无法初始化LDAP: 错误代码%d"
-#: libpq/auth.c:2058
+#: libpq/auth.c:2406
+#, c-format
+msgid "could not initialize LDAP: %s"
+msgstr "无法初始化LDAP: %s"
+
+#: libpq/auth.c:2416
+#, c-format
+msgid "ldaps not supported with this LDAP library"
+msgstr "此LDAP库不支持ldaps"
+
+#: libpq/auth.c:2424
+#, c-format
+msgid "could not initialize LDAP: %m"
+msgstr "无法初始化LDAP: %m"
+
+#: libpq/auth.c:2434
#, c-format
msgid "could not set LDAP protocol version: %s"
msgstr "无法设置LDAP协议版本: %s"
-#: libpq/auth.c:2087
+#: libpq/auth.c:2465
#, c-format
msgid "could not load wldap32.dll"
msgstr "无法加载wldap32.dll"
-#: libpq/auth.c:2095
+#: libpq/auth.c:2473
#, c-format
msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
msgstr "无法加载在wldap32.dll中的函数_ldap_start_tls_sA"
-#: libpq/auth.c:2096
+#: libpq/auth.c:2474
#, c-format
msgid "LDAP over SSL is not supported on this platform."
msgstr "在此平台上不支持在SSL连接上的LDAP"
-#: libpq/auth.c:2111
+#: libpq/auth.c:2489
#, c-format
msgid "could not start LDAP TLS session: %s"
msgstr "无法启动LDAP TLS会话: %s"
-#: libpq/auth.c:2133
+#: libpq/auth.c:2552
#, c-format
msgid "LDAP server not specified"
msgstr "没有指定LDAP服务器"
-#: libpq/auth.c:2186
+#: libpq/auth.c:2607
#, c-format
msgid "invalid character in user name for LDAP authentication"
msgstr "在需要进行LDAP认证的用户名中出现无效字符"
-#: libpq/auth.c:2201
+#: libpq/auth.c:2624
#, c-format
-msgid ""
-"could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": "
-"%s"
+msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s"
msgstr "无法在服务器\"%2$s\"上为ldapbinddn\"%1$s\"执行初始化LDAP绑定: %3$s"
-#: libpq/auth.c:2225
+#: libpq/auth.c:2653
#, c-format
msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s"
msgstr "无法在服务器\"%2$s\"上为过滤器\"%1$s\"进行的搜索LDAP:%3$s"
-#: libpq/auth.c:2236
+#: libpq/auth.c:2667
#, c-format
msgid "LDAP user \"%s\" does not exist"
msgstr "LDAP用户\"%s\" 不存在"
-#: libpq/auth.c:2237
+#: libpq/auth.c:2668
#, c-format
msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
msgstr "在服务器\"%2$s\"上为过滤器\"%1$s\"进行的LDAP搜索无结果."
-#: libpq/auth.c:2241
+#: libpq/auth.c:2672
#, c-format
msgid "LDAP user \"%s\" is not unique"
msgstr "LDAP用户\"%s\" 不是唯一的"
-#: libpq/auth.c:2242
+#: libpq/auth.c:2673
#, c-format
msgid "LDAP search for filter \"%s\" on server \"%s\" returned %d entry."
-msgid_plural ""
-"LDAP search for filter \"%s\" on server \"%s\" returned %d entries."
+msgid_plural "LDAP search for filter \"%s\" on server \"%s\" returned %d entries."
msgstr[0] "在服务器\"%2$s\"上为过滤器\"%1$s\"进行的LDAP搜索返回%3$d条结果."
-#: libpq/auth.c:2260
+#: libpq/auth.c:2693
#, c-format
-msgid ""
-"could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
+msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
msgstr "无法为在服务器\"%2$s\"上第一个与\"%1$s\"匹配的项获取dn: %3$s"
-#: libpq/auth.c:2280
+#: libpq/auth.c:2714
#, c-format
-msgid "could not unbind after searching for user \"%s\" on server \"%s\": %s"
-msgstr "在服务器 \"%2$s\"上搜索用户\"%1$s\"后无法解除绑定:%3$s"
+msgid "could not unbind after searching for user \"%s\" on server \"%s\""
+msgstr "在服务器 \"%2$s\"上搜索用户\"%1$s\"后无法解除绑定"
-#: libpq/auth.c:2310
+#: libpq/auth.c:2745
#, c-format
msgid "LDAP login failed for user \"%s\" on server \"%s\": %s"
msgstr "用户 \"%s\" 在服务器 \"%s\" 进行LDAP登录失败:%s"
-#: libpq/auth.c:2338
+#: libpq/auth.c:2774
#, c-format
-msgid ""
-"certificate authentication failed for user \"%s\": client certificate "
-"contains no user name"
+msgid "LDAP diagnostics: %s"
+msgstr "LDAP诊断: %s"
+
+#: libpq/auth.c:2799
+#, c-format
+msgid "certificate authentication failed for user \"%s\": client certificate contains no user name"
msgstr "用户\"%s\"的认证鉴权失败: 客户端认证没有包含用户名"
-#: libpq/auth.c:2465
+#: libpq/auth.c:2902
#, c-format
msgid "RADIUS server not specified"
msgstr "没有指定RADIUS服务器"
-#: libpq/auth.c:2472
+#: libpq/auth.c:2909
#, c-format
msgid "RADIUS secret not specified"
msgstr "没有指定RADIUS机密(secret) "
-#: libpq/auth.c:2488 libpq/hba.c:1634
+#: libpq/auth.c:2923
#, c-format
-msgid "could not translate RADIUS server name \"%s\" to address: %s"
-msgstr "无法将RADIUS服务器名称 \"%s\" 翻译为相应地址:%s"
+msgid "RADIUS authentication does not support passwords longer than %d characters"
+msgstr "RADIUS 认证不支持长度超过 %d 个字符的口令"
-#: libpq/auth.c:2516
+#: libpq/auth.c:3028 libpq/hba.c:1908
#, c-format
-#| msgid ""
-#| "RADIUS authentication does not support passwords longer than 16 characters"
-msgid ""
-"RADIUS authentication does not support passwords longer than %d characters"
-msgstr "RADIUS 认证不支持长度超过 %d 个字符的口令"
+msgid "could not translate RADIUS server name \"%s\" to address: %s"
+msgstr "无法将RADIUS服务器名称 \"%s\" 翻译为相应地址:%s"
-#: libpq/auth.c:2528
+#: libpq/auth.c:3042
#, c-format
msgid "could not generate random encryption vector"
msgstr "无法产生随机加密向量"
-#: libpq/auth.c:2563
+#: libpq/auth.c:3076
#, c-format
msgid "could not perform MD5 encryption of password"
msgstr "无法执行口令的MD5加密"
-#: libpq/auth.c:2588
+#: libpq/auth.c:3102
#, c-format
msgid "could not create RADIUS socket: %m"
msgstr "无法创建RADIUS套接字: %m"
-#: libpq/auth.c:2609
+#: libpq/auth.c:3124
#, c-format
msgid "could not bind local RADIUS socket: %m"
msgstr "无法绑定本地RADIUS套接字: %m"
-#: libpq/auth.c:2619
+#: libpq/auth.c:3134
#, c-format
msgid "could not send RADIUS packet: %m"
msgstr "无法发送RADIUS包: %m"
-#: libpq/auth.c:2652 libpq/auth.c:2677
+#: libpq/auth.c:3167 libpq/auth.c:3193
#, c-format
-msgid "timeout waiting for RADIUS response"
-msgstr "在等待RADIUS回应包时超时"
+msgid "timeout waiting for RADIUS response from %s"
+msgstr "在等待自%s的RADIUS回应包时超时"
-#: libpq/auth.c:2670
+#: libpq/auth.c:3186
#, c-format
msgid "could not check status on RADIUS socket: %m"
msgstr "无法在RADIUS套接字上检查状态: %m"
-#: libpq/auth.c:2699
+#: libpq/auth.c:3216
#, c-format
msgid "could not read RADIUS response: %m"
msgstr "无法读取RADIUS回应包: %m"
-#: libpq/auth.c:2711 libpq/auth.c:2715
+#: libpq/auth.c:3229 libpq/auth.c:3233
#, c-format
-msgid "RADIUS response was sent from incorrect port: %d"
-msgstr "RADIUS回应数据包是从不正确的端口中发出的: %d"
+msgid "RADIUS response from %s was sent from incorrect port: %d"
+msgstr "来自%s的RADIUS回应数据包是从不正确的端口中发出的: %d"
-#: libpq/auth.c:2724
+#: libpq/auth.c:3242
#, c-format
-msgid "RADIUS response too short: %d"
-msgstr "RADIUS回应包的长度太短:%d"
+msgid "RADIUS response from %s too short: %d"
+msgstr "来自%s的RADIUS回应包的长度太短:%d"
-#: libpq/auth.c:2731
+#: libpq/auth.c:3249
#, c-format
-msgid "RADIUS response has corrupt length: %d (actual length %d)"
-msgstr "RADIUS回应包的长度不正确:%d(实际长度是%d)"
+msgid "RADIUS response from %s has corrupt length: %d (actual length %d)"
+msgstr "来自%s的RADIUS回应包的长度不正确:%d(实际长度是%d)"
-#: libpq/auth.c:2739
+#: libpq/auth.c:3257
#, c-format
-msgid "RADIUS response is to a different request: %d (should be %d)"
-msgstr "RADIUS回应包发送到了一个不同的请求上:%d (应该是%d)"
+msgid "RADIUS response from %s is to a different request: %d (should be %d)"
+msgstr "来自%s的RADIUS回应包发送到了一个不同的请求上:%d (应该是%d)"
-#: libpq/auth.c:2764
+#: libpq/auth.c:3282
#, c-format
msgid "could not perform MD5 encryption of received packet"
msgstr "无法执行所接收数据包的MD5加密"
-#: libpq/auth.c:2773
+#: libpq/auth.c:3291
#, c-format
-msgid "RADIUS response has incorrect MD5 signature"
-msgstr "RADIUS回应包带有不正确的MD5签名"
+msgid "RADIUS response from %s has incorrect MD5 signature"
+msgstr "来自%s的RADIUS回应包带有不正确的MD5签名"
-#: libpq/auth.c:2790
+#: libpq/auth.c:3309
#, c-format
-msgid "RADIUS response has invalid code (%d) for user \"%s\""
-msgstr "对于用户\"%2$s\"来说RADIUS回应包带有无效编码(%1$d) "
+msgid "RADIUS response from %s has invalid code (%d) for user \"%s\""
+msgstr "对于用户\"%3$s\"来说来自%1$s的RADIUS回应包带有无效编码(%2$d) "
-#: libpq/be-fsstubs.c:134 libpq/be-fsstubs.c:165 libpq/be-fsstubs.c:199
-#: libpq/be-fsstubs.c:239 libpq/be-fsstubs.c:264 libpq/be-fsstubs.c:312
-#: libpq/be-fsstubs.c:335 libpq/be-fsstubs.c:583
+#: libpq/be-fsstubs.c:119 libpq/be-fsstubs.c:150 libpq/be-fsstubs.c:178
+#: libpq/be-fsstubs.c:204 libpq/be-fsstubs.c:229 libpq/be-fsstubs.c:277
+#: libpq/be-fsstubs.c:300 libpq/be-fsstubs.c:545
#, c-format
msgid "invalid large-object descriptor: %d"
msgstr "无效的大对象描述符: %d"
-#: libpq/be-fsstubs.c:180 libpq/be-fsstubs.c:218 libpq/be-fsstubs.c:602
-#: libpq/be-fsstubs.c:790
+#: libpq/be-fsstubs.c:161
#, c-format
-msgid "permission denied for large object %u"
-msgstr "访问大对象%u的权限不够"
+msgid "large object descriptor %d was not opened for reading"
+msgstr "无法打开大对象描述符%d进行读操作"
-#: libpq/be-fsstubs.c:205 libpq/be-fsstubs.c:589
+#: libpq/be-fsstubs.c:185 libpq/be-fsstubs.c:552
#, c-format
msgid "large object descriptor %d was not opened for writing"
msgstr "无法打开大对象描述符%d进行写操作"
-#: libpq/be-fsstubs.c:247
+#: libpq/be-fsstubs.c:212
#, c-format
msgid "lo_lseek result out of range for large-object descriptor %d"
msgstr "lo_lseek的结果超出了大对象的描述符 %d所在范围"
-#: libpq/be-fsstubs.c:320
+#: libpq/be-fsstubs.c:285
#, c-format
msgid "lo_tell result out of range for large-object descriptor %d"
msgstr "lo_tell 产生的结果超出了大对象描述符%d的有效范围"
-#: libpq/be-fsstubs.c:457
-#, c-format
-msgid "must be superuser to use server-side lo_import()"
-msgstr "必须是超级用户才可以使用服务器端的 lo_import()"
-
-#: libpq/be-fsstubs.c:458
-#, c-format
-msgid "Anyone can use the client-side lo_import() provided by libpq."
-msgstr "任何人都可以使用 libpq 提供的客户端 lo_import()."
-
-#: libpq/be-fsstubs.c:471
+#: libpq/be-fsstubs.c:432
#, c-format
msgid "could not open server file \"%s\": %m"
msgstr "无法打开服务器文件 \"%s\": %m"
-#: libpq/be-fsstubs.c:493
+#: libpq/be-fsstubs.c:454
#, c-format
msgid "could not read server file \"%s\": %m"
msgstr "无法读取服务器文件 \"%s\": %m"
-#: libpq/be-fsstubs.c:523
-#, c-format
-msgid "must be superuser to use server-side lo_export()"
-msgstr "必须是超级用户才可以使用服务器端的 lo_export()"
-
-#: libpq/be-fsstubs.c:524
-#, c-format
-msgid "Anyone can use the client-side lo_export() provided by libpq."
-msgstr "任何人都可以使用 libpq 提供的客户端 lo_export()."
-
-#: libpq/be-fsstubs.c:549
+#: libpq/be-fsstubs.c:511
#, c-format
msgid "could not create server file \"%s\": %m"
msgstr "无法创建服务器文件 \"%s\": %m"
-#: libpq/be-fsstubs.c:561
+#: libpq/be-fsstubs.c:523
#, c-format
msgid "could not write server file \"%s\": %m"
msgstr "无法写入服务器文件 \"%s\": %m"
-#: libpq/be-fsstubs.c:815
+#: libpq/be-fsstubs.c:752
#, c-format
msgid "large object read request is too large"
msgstr "大对象读请求太大"
-#: libpq/be-fsstubs.c:857 utils/adt/genfile.c:211 utils/adt/genfile.c:252
+#: libpq/be-fsstubs.c:794 utils/adt/genfile.c:231 utils/adt/genfile.c:270
+#: utils/adt/genfile.c:306
#, c-format
msgid "requested length cannot be negative"
msgstr "所请求的长度不能是负数"
-#: libpq/be-secure-openssl.c:184
+#: libpq/be-fsstubs.c:847 storage/large_object/inv_api.c:296
+#: storage/large_object/inv_api.c:308 storage/large_object/inv_api.c:512
+#: storage/large_object/inv_api.c:623 storage/large_object/inv_api.c:813
#, c-format
-msgid "could not create SSL context: %s"
-msgstr "无法创建 SSL 环境: %s"
+msgid "permission denied for large object %u"
+msgstr "访问大对象%u的权限不够"
-#: libpq/be-secure-openssl.c:200
+#: libpq/be-secure-common.c:91
#, c-format
-msgid "could not load server certificate file \"%s\": %s"
-msgstr "æ\97 æ³\95è£\85è½½æ\9c\8då\8a¡å\99¨è®¤è¯\81æ\96\87ä»¶ \"%s\": %s"
+msgid "could not read from command \"%s\": %m"
+msgstr "æ\97 æ³\95读å\8f\96å\91½ä»¤ \"%s\": %m"
-#: libpq/be-secure-openssl.c:206
+#: libpq/be-secure-common.c:109
+#, c-format
+msgid "command \"%s\" failed"
+msgstr "命令\"%s\"失败"
+
+#: libpq/be-secure-common.c:139
#, c-format
msgid "could not access private key file \"%s\": %m"
msgstr "无法处理私钥文件 \"%s\": %m"
-#: libpq/be-secure-openssl.c:212
+#: libpq/be-secure-common.c:148
#, c-format
-#| msgid "%s: file \"%s\" is not a regular file\n"
msgid "private key file \"%s\" is not a regular file"
msgstr "私钥文件 \"%s\" 不是一个常规文件"
-#: libpq/be-secure-openssl.c:224
+#: libpq/be-secure-common.c:163
#, c-format
msgid "private key file \"%s\" must be owned by the database user or root"
msgstr "私钥文件 \"%s\" 必须由数据库用户或者 root 所拥有"
-#: libpq/be-secure-openssl.c:244
+#: libpq/be-secure-common.c:186
#, c-format
msgid "private key file \"%s\" has group or world access"
msgstr "私钥文件\"%s\"具有由所在组或全局范围访问的权限"
-#: libpq/be-secure-openssl.c:246
+#: libpq/be-secure-common.c:188
#, c-format
-msgid ""
-"File must have permissions u=rw (0600) or less if owned by the database "
-"user, or permissions u=rw,g=r (0640) or less if owned by root."
-msgstr ""
-"如果文件被数据库用户所拥有,它必须具有权限 u=rw (0600) 或者更低;如果被 root "
-"所拥有,它必须具有权限 u=rw,g=r (0640) 或者更低。"
+msgid "File must have permissions u=rw (0600) or less if owned by the database user, or permissions u=rw,g=r (0640) or less if owned by root."
+msgstr "如果文件被数据库用户所拥有,它必须具有权限 u=rw (0600) 或者更低;如果被 root 所拥有,它必须具有权限 u=rw,g=r (0640) 或者更低。"
-#: libpq/be-secure-openssl.c:253
+#: libpq/be-secure-openssl.c:104
+#, c-format
+msgid "could not create SSL context: %s"
+msgstr "无法创建 SSL 环境: %s"
+
+#: libpq/be-secure-openssl.c:147
+#, c-format
+msgid "could not load server certificate file \"%s\": %s"
+msgstr "无法装载服务器认证文件 \"%s\": %s"
+
+#: libpq/be-secure-openssl.c:167
+#, c-format
+msgid "private key file \"%s\" cannot be reloaded because it requires a passphrase"
+msgstr "无法重新加载私钥文件\"%s\",因为它需要密码短语"
+
+#: libpq/be-secure-openssl.c:172
#, c-format
msgid "could not load private key file \"%s\": %s"
msgstr "无法装载私钥文件 \"%s\": %s"
-#: libpq/be-secure-openssl.c:258
+#: libpq/be-secure-openssl.c:181
#, c-format
msgid "check of private key failed: %s"
msgstr "检查私钥失败: %s"
-#: libpq/be-secure-openssl.c:287
+#: libpq/be-secure-openssl.c:208
+#, c-format
+msgid "could not set the cipher list (no valid ciphers available)"
+msgstr "无法设置密码列表(没有有效的密码可用)"
+
+#: libpq/be-secure-openssl.c:226
#, c-format
msgid "could not load root certificate file \"%s\": %s"
msgstr "无法装载根 (root) 认证文件 \"%s\": %s"
-#: libpq/be-secure-openssl.c:311
+#: libpq/be-secure-openssl.c:253
#, c-format
msgid "SSL certificate revocation list file \"%s\" ignored"
msgstr "忽略SSL认证撤销列表文件 \"%s\""
-#: libpq/be-secure-openssl.c:313
+#: libpq/be-secure-openssl.c:255
#, c-format
msgid "SSL library does not support certificate revocation lists."
msgstr "SSL库不支持认证撤销列表"
-#: libpq/be-secure-openssl.c:318
+#: libpq/be-secure-openssl.c:262
#, c-format
msgid "could not load SSL certificate revocation list file \"%s\": %s"
msgstr "无法装载根 (root)证书取消列表文件 \"%s\": %s"
-#: libpq/be-secure-openssl.c:365
+#: libpq/be-secure-openssl.c:337
+#, c-format
+msgid "could not initialize SSL connection: SSL context not set up"
+msgstr "无法初始化 SSL 联接: 未设置SSL上下文"
+
+#: libpq/be-secure-openssl.c:345
#, c-format
msgid "could not initialize SSL connection: %s"
msgstr "无法初始化 SSL 联接: %s"
-#: libpq/be-secure-openssl.c:373
+#: libpq/be-secure-openssl.c:353
#, c-format
msgid "could not set SSL socket: %s"
msgstr "无法创建 SSL 套接字: %s"
-#: libpq/be-secure-openssl.c:427
+#: libpq/be-secure-openssl.c:408
#, c-format
msgid "could not accept SSL connection: %m"
msgstr "无法访问 SSL 联接: %m"
-#: libpq/be-secure-openssl.c:431 libpq/be-secure-openssl.c:442
+#: libpq/be-secure-openssl.c:412 libpq/be-secure-openssl.c:423
#, c-format
msgid "could not accept SSL connection: EOF detected"
msgstr "无法访问 SSL 联接: 发现 EOF"
-#: libpq/be-secure-openssl.c:436
+#: libpq/be-secure-openssl.c:417
#, c-format
msgid "could not accept SSL connection: %s"
msgstr "无法访问 SSL 联接: %s"
-#: libpq/be-secure-openssl.c:447 libpq/be-secure-openssl.c:588
-#: libpq/be-secure-openssl.c:648
+#: libpq/be-secure-openssl.c:428 libpq/be-secure-openssl.c:559
+#: libpq/be-secure-openssl.c:623
#, c-format
msgid "unrecognized SSL error code: %d"
msgstr "未知的 SSL 错误码: %d"
-#: libpq/be-secure-openssl.c:491
+#: libpq/be-secure-openssl.c:470
#, c-format
msgid "SSL certificate's common name contains embedded null"
msgstr "在SSL认证的普通名称中包含嵌入的空值"
-#: libpq/be-secure-openssl.c:502
-#, c-format
-msgid "SSL connection from \"%s\""
-msgstr "来自 \"%s\" 的 SSL 联接"
-
-#: libpq/be-secure-openssl.c:579 libpq/be-secure-openssl.c:639
+#: libpq/be-secure-openssl.c:548 libpq/be-secure-openssl.c:607
#, c-format
msgid "SSL error: %s"
msgstr "SSL 错误: %s"
-#: libpq/be-secure-openssl.c:988
+#: libpq/be-secure-openssl.c:788
+#, c-format
+msgid "could not open DH parameters file \"%s\": %m"
+msgstr "无法打开DH参数文件 \"%s\": %m"
+
+#: libpq/be-secure-openssl.c:800
+#, c-format
+msgid "could not load DH parameters file: %s"
+msgstr "无法装载DH参数文件: %s"
+
+#: libpq/be-secure-openssl.c:810
+#, c-format
+msgid "invalid DH parameters: %s"
+msgstr "无效的DH参数: %s"
+
+#: libpq/be-secure-openssl.c:818
+#, c-format
+msgid "invalid DH parameters: p is not prime"
+msgstr "无效的DH参数:p不是主要的"
+
+#: libpq/be-secure-openssl.c:826
+#, c-format
+msgid "invalid DH parameters: neither suitable generator or safe prime"
+msgstr "无效的DH参数:不适用的生成器或安全素数"
+
+# startup.c:446
+#: libpq/be-secure-openssl.c:981
+#, c-format
+msgid "DH: could not load DH parameters"
+msgstr "DH: 无法加载DH参数"
+
+# startup.c:446
+#: libpq/be-secure-openssl.c:989
+#, c-format
+msgid "DH: could not set DH parameters: %s"
+msgstr "DH: 无法设置DH参数: %s"
+
+#: libpq/be-secure-openssl.c:1013
#, c-format
msgid "ECDH: unrecognized curve name: %s"
msgstr "ECDH: 无法识别的曲线名: %s"
# fe-connect.c:891
-#: libpq/be-secure-openssl.c:993
+#: libpq/be-secure-openssl.c:1022
#, c-format
msgid "ECDH: could not create key"
msgstr "ECDH: 无法创建键"
-#: libpq/be-secure-openssl.c:1017
+#: libpq/be-secure-openssl.c:1050
msgid "no SSL error reported"
msgstr "没有报告SSL错误"
-#: libpq/be-secure-openssl.c:1021
+#: libpq/be-secure-openssl.c:1054
#, c-format
msgid "SSL error code %lu"
msgstr "SSL错误代码 %lu"
-#: libpq/be-secure.c:171 libpq/be-secure.c:256
+#: libpq/be-secure.c:119
+#, c-format
+msgid "SSL connection from \"%s\""
+msgstr "来自 \"%s\" 的 SSL 联接"
+
+#: libpq/be-secure.c:196 libpq/be-secure.c:284
#, c-format
-#| msgid "terminating connection due to administrator command"
msgid "terminating connection due to unexpected postmaster exit"
msgstr "由于意外的 postmaster 退出而终止连接"
-#: libpq/crypt.c:54
+#: libpq/crypt.c:51
#, c-format
-#| msgid "role \"%s\" does not exist"
msgid "Role \"%s\" does not exist."
msgstr "角色 \"%s\" 不存在。"
-#: libpq/crypt.c:64
+#: libpq/crypt.c:61
#, c-format
msgid "User \"%s\" has no password assigned."
msgstr "用户 \"%s\" 没有分配密码."
#: libpq/crypt.c:79
#, c-format
-#| msgid "User \"%s\" has an expired password."
-msgid "User \"%s\" has an empty password."
-msgstr "用户 \"%s\" 的密码为空。"
-
-#: libpq/crypt.c:159
-#, c-format
msgid "User \"%s\" has an expired password."
msgstr "User \"%s\" 密码过期."
+#: libpq/crypt.c:173
+#, c-format
+msgid "User \"%s\" has a password that cannot be used with MD5 authentication."
+msgstr "用户\"%s\"的密码不能与MD5身份验证一起使用."
+
# command.c:915
# command.c:939
# startup.c:187
# startup.c:205
-#: libpq/crypt.c:167
+#: libpq/crypt.c:197 libpq/crypt.c:238 libpq/crypt.c:262
#, c-format
-#| msgid "Password for user %s: "
msgid "Password does not match for user \"%s\"."
msgstr "用户 \"%s\" 的口令不匹配。"
-#: libpq/hba.c:188
+#: libpq/crypt.c:281
+#, c-format
+msgid "Password of user \"%s\" is in unrecognized format."
+msgstr "用户\"%s\"的密码格式无法识别"
+
+#: libpq/hba.c:235
#, c-format
msgid "authentication file token too long, skipping: \"%s\""
msgstr "认证文件标记 (token) 太长, 忽略: \"%s\""
-#: libpq/hba.c:332
+#: libpq/hba.c:407
#, c-format
msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
msgstr "无法打开次认证文件 \"@%s\" 为 \"%s\": %m"
-#: libpq/hba.c:409
+#: libpq/hba.c:509
#, c-format
msgid "authentication file line too long"
msgstr "认证文件文本行太长"
-#: libpq/hba.c:410 libpq/hba.c:757 libpq/hba.c:773 libpq/hba.c:803
-#: libpq/hba.c:849 libpq/hba.c:862 libpq/hba.c:884 libpq/hba.c:893
-#: libpq/hba.c:914 libpq/hba.c:926 libpq/hba.c:945 libpq/hba.c:966
-#: libpq/hba.c:977 libpq/hba.c:1032 libpq/hba.c:1050 libpq/hba.c:1062
-#: libpq/hba.c:1079 libpq/hba.c:1089 libpq/hba.c:1103 libpq/hba.c:1119
-#: libpq/hba.c:1134 libpq/hba.c:1145 libpq/hba.c:1181 libpq/hba.c:1219
-#: libpq/hba.c:1230 libpq/hba.c:1250 libpq/hba.c:1261 libpq/hba.c:1278
-#: libpq/hba.c:1327 libpq/hba.c:1364 libpq/hba.c:1374 libpq/hba.c:1430
-#: libpq/hba.c:1442 libpq/hba.c:1455 libpq/hba.c:1547 libpq/hba.c:1636
-#: libpq/hba.c:1654 libpq/hba.c:1675 tsearch/ts_locale.c:182
+#: libpq/hba.c:510 libpq/hba.c:867 libpq/hba.c:887 libpq/hba.c:925
+#: libpq/hba.c:975 libpq/hba.c:989 libpq/hba.c:1011 libpq/hba.c:1020
+#: libpq/hba.c:1041 libpq/hba.c:1054 libpq/hba.c:1074 libpq/hba.c:1096
+#: libpq/hba.c:1108 libpq/hba.c:1164 libpq/hba.c:1184 libpq/hba.c:1198
+#: libpq/hba.c:1217 libpq/hba.c:1228 libpq/hba.c:1243 libpq/hba.c:1261
+#: libpq/hba.c:1277 libpq/hba.c:1289 libpq/hba.c:1326 libpq/hba.c:1367
+#: libpq/hba.c:1380 libpq/hba.c:1402 libpq/hba.c:1414 libpq/hba.c:1432
+#: libpq/hba.c:1482 libpq/hba.c:1523 libpq/hba.c:1534 libpq/hba.c:1550
+#: libpq/hba.c:1567 libpq/hba.c:1577 libpq/hba.c:1635 libpq/hba.c:1673
+#: libpq/hba.c:1689 libpq/hba.c:1779 libpq/hba.c:1797 libpq/hba.c:1891
+#: libpq/hba.c:1910 libpq/hba.c:1939 libpq/hba.c:1952 libpq/hba.c:1975
+#: libpq/hba.c:1997 libpq/hba.c:2011 tsearch/ts_locale.c:190
#, c-format
msgid "line %d of configuration file \"%s\""
msgstr "配置文件\"%2$s\"的第%1$d行"
#. translator: the second %s is a list of auth methods
-#: libpq/hba.c:755
+#: libpq/hba.c:865
#, c-format
-msgid ""
-"authentication option \"%s\" is only valid for authentication methods %s"
+msgid "authentication option \"%s\" is only valid for authentication methods %s"
msgstr "认证选项\"%s\"只对认证方法%s有效"
# fe-auth.c:640
-#: libpq/hba.c:771
+#: libpq/hba.c:885
#, c-format
msgid "authentication method \"%s\" requires argument \"%s\" to be set"
msgstr "在认证方法\"%s\"需要设置参数\"%s\" "
-#: libpq/hba.c:792
+#: libpq/hba.c:913
#, c-format
msgid "missing entry in file \"%s\" at end of line %d"
msgstr "在 \"%s\" 文件的第 %d 行末尾缺少记录"
-#: libpq/hba.c:802
+#: libpq/hba.c:924
#, c-format
msgid "multiple values in ident field"
msgstr "识别字段出现多个值"
-#: libpq/hba.c:847
+#: libpq/hba.c:973
#, c-format
msgid "multiple values specified for connection type"
msgstr "连接类型指定了多个值"
-#: libpq/hba.c:848
+#: libpq/hba.c:974
#, c-format
msgid "Specify exactly one connection type per line."
msgstr "每行精确指定一个连接类型."
# input.c:213
-#: libpq/hba.c:861
+#: libpq/hba.c:988
#, c-format
msgid "local connections are not supported by this build"
msgstr "这个版本编译不支持本地连接"
-#: libpq/hba.c:882
+#: libpq/hba.c:1009
#, c-format
-msgid "hostssl requires SSL to be turned on"
-msgstr "hostssl 要求开启 SSL开关"
+msgid "hostssl record cannot match because SSL is disabled"
+msgstr "hotssl记录无法匹配,因为已禁用SSL"
-#: libpq/hba.c:883
+#: libpq/hba.c:1010
#, c-format
msgid "Set ssl = on in postgresql.conf."
msgstr "在postgresql.conf配置文件中设置 ssl 开关为 on."
# input.c:213
-#: libpq/hba.c:891
+#: libpq/hba.c:1018
#, c-format
-msgid "hostssl is not supported by this build"
-msgstr "这个版本的编译安装不支持使用hostssl"
+msgid "hostssl record cannot match because SSL is not supported by this build"
+msgstr "hotssl记录无法匹配,因为这个版本的编译安装不支持使用SSL"
-#: libpq/hba.c:892
+#: libpq/hba.c:1019
#, c-format
msgid "Compile with --with-openssl to use SSL connections."
msgstr "为了使用SSL连接,在编译时需要带有 --with-openssl选项"
# fe-connect.c:2558
-#: libpq/hba.c:912
+#: libpq/hba.c:1039
#, c-format
msgid "invalid connection type \"%s\""
msgstr "无效连接类型\"%s\""
-#: libpq/hba.c:925
+#: libpq/hba.c:1053
#, c-format
msgid "end-of-line before database specification"
msgstr "在数据库定义前面出现行结束符"
-#: libpq/hba.c:944
+#: libpq/hba.c:1073
#, c-format
msgid "end-of-line before role specification"
msgstr "在角色定义前面出现行结束符"
-#: libpq/hba.c:965
+#: libpq/hba.c:1095
#, c-format
msgid "end-of-line before IP address specification"
msgstr "在IP地址定义前面出现行结束符"
-#: libpq/hba.c:975
+#: libpq/hba.c:1106
#, c-format
msgid "multiple values specified for host address"
msgstr "主机地址指定了多个值"
-#: libpq/hba.c:976
+#: libpq/hba.c:1107
#, c-format
msgid "Specify one address range per line."
msgstr "每行指定一个地址范围."
-#: libpq/hba.c:1030
+#: libpq/hba.c:1162
#, c-format
msgid "invalid IP address \"%s\": %s"
msgstr "IP地址无效\"%s\": %s"
-#: libpq/hba.c:1048
+#: libpq/hba.c:1182
#, c-format
msgid "specifying both host name and CIDR mask is invalid: \"%s\""
msgstr "指定主机名,同时 CIDR 掩码: \"%s\"值无效"
-#: libpq/hba.c:1060
+#: libpq/hba.c:1196
#, c-format
msgid "invalid CIDR mask in address \"%s\""
msgstr "在地址\"%s\"中的CIDR掩码无效"
-#: libpq/hba.c:1077
+#: libpq/hba.c:1215
#, c-format
msgid "end-of-line before netmask specification"
msgstr "在网络掩码定义前的行结束符"
-#: libpq/hba.c:1078
+#: libpq/hba.c:1216
#, c-format
-msgid ""
-"Specify an address range in CIDR notation, or provide a separate netmask."
+msgid "Specify an address range in CIDR notation, or provide a separate netmask."
msgstr "使用CIDR 符号指定地址范围, 或者提供独立的网络掩码."
-#: libpq/hba.c:1088
+#: libpq/hba.c:1227
#, c-format
msgid "multiple values specified for netmask"
msgstr "网络掩码指定了多个值"
-#: libpq/hba.c:1101
+#: libpq/hba.c:1241
#, c-format
msgid "invalid IP mask \"%s\": %s"
msgstr "无效IP地址掩码\"%s\": %s"
-#: libpq/hba.c:1118
+#: libpq/hba.c:1260
#, c-format
msgid "IP address and mask do not match"
msgstr "IP地址与掩码不匹配"
-#: libpq/hba.c:1133
+#: libpq/hba.c:1276
#, c-format
msgid "end-of-line before authentication method"
msgstr "在认证方法前面出现行结束符"
-#: libpq/hba.c:1143
+#: libpq/hba.c:1287
#, c-format
msgid "multiple values specified for authentication type"
msgstr "认证类型指定了多个值"
-#: libpq/hba.c:1144
+#: libpq/hba.c:1288
#, c-format
msgid "Specify exactly one authentication type per line."
msgstr "每行精确指定一个认证类型."
-#: libpq/hba.c:1217
+#: libpq/hba.c:1365
#, c-format
msgid "invalid authentication method \"%s\""
msgstr "无效认证方法\"%s\""
# fe-auth.c:640
-#: libpq/hba.c:1228
+#: libpq/hba.c:1378
#, c-format
msgid "invalid authentication method \"%s\": not supported by this build"
msgstr "这个版本的编译安装不支持无效的认证方法\"%s\""
-#: libpq/hba.c:1249
+#: libpq/hba.c:1401
#, c-format
msgid "gssapi authentication is not supported on local sockets"
msgstr "在本地套接字上不支持gssapi认证"
-#: libpq/hba.c:1260
+#: libpq/hba.c:1413
#, c-format
msgid "peer authentication is only supported on local sockets"
msgstr "对等认证只支持在本地套接字的情形下使用"
-#: libpq/hba.c:1277
+#: libpq/hba.c:1431
#, c-format
msgid "cert authentication is only supported on hostssl connections"
msgstr "只有在hostssl连接上才支持cert认证"
-#: libpq/hba.c:1326
+#: libpq/hba.c:1481
#, c-format
msgid "authentication option not in name=value format: %s"
msgstr "认证选项的格式不是名称=值:%s"
-#: libpq/hba.c:1363
+#: libpq/hba.c:1522
#, c-format
-msgid ""
-"cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, or "
-"ldapurl together with ldapprefix"
-msgstr ""
-"无法和ldapprefix一同使用ldapbasedn, ldapbinddn, ldapbindpasswd, "
-"ldapsearchattribute或ldapurl"
+msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter, or ldapurl together with ldapprefix"
+msgstr "无法和ldapprefix一同使用ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter或ldapurl"
# fe-auth.c:640
-#: libpq/hba.c:1373
+#: libpq/hba.c:1533
#, c-format
-msgid ""
-"authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix"
-"\", or \"ldapsuffix\" to be set"
-msgstr ""
-"在认证方法\"ldap\"中需要设置参数 \"ldapbasedn\", \"ldapprefix\"或\"ldapsuffix"
-"\""
+msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set"
+msgstr "在认证方法\"ldap\"中需要设置参数 \"ldapbasedn\", \"ldapprefix\"或\"ldapsuffix\""
+
+#: libpq/hba.c:1549
+#, c-format
+msgid "cannot use ldapsearchattribute together with ldapsearchfilter"
+msgstr "无法和ldapsearchfilter一同使用ldapsearchattribute"
+
+#: libpq/hba.c:1566
+#, c-format
+msgid "list of RADIUS servers cannot be empty"
+msgstr "RADIUS服务器列表不能为空"
+
+#: libpq/hba.c:1576
+#, c-format
+msgid "list of RADIUS secrets cannot be empty"
+msgstr "RADIUS机密(secret)列表不能为空 "
+
+#: libpq/hba.c:1629
+#, c-format
+msgid "the number of %s (%d) must be 1 or the same as the number of %s (%d)"
+msgstr "%s的数目(%d)必须是1或与%s (%d)的数目相同"
-#: libpq/hba.c:1416
+#: libpq/hba.c:1663
msgid "ident, peer, gssapi, sspi, and cert"
msgstr "ident, peer, gssapi, sspi和cert"
-#: libpq/hba.c:1429
+#: libpq/hba.c:1672
#, c-format
msgid "clientcert can only be configured for \"hostssl\" rows"
msgstr "只能为\"hostssl\" 记录配置clientcert "
-#: libpq/hba.c:1440
-#, c-format
-msgid ""
-"client certificates can only be checked if a root certificate store is "
-"available"
-msgstr "只有在根认证有效的情况下才能检查客户端认证"
-
-#: libpq/hba.c:1454
+#: libpq/hba.c:1688
#, c-format
msgid "clientcert can not be set to 0 when using \"cert\" authentication"
msgstr "当使用\"cert\"认证时clientcert不能设置为0"
# fe-lobj.c:400 fe-lobj.c:483
-#: libpq/hba.c:1490
+#: libpq/hba.c:1725
#, c-format
msgid "could not parse LDAP URL \"%s\": %s"
msgstr "无法解析LDAP URL \"%s\": %s"
-#: libpq/hba.c:1498
+#: libpq/hba.c:1736
#, c-format
msgid "unsupported LDAP URL scheme: %s"
msgstr "不支持的LDAP URL模式: %s"
-#: libpq/hba.c:1514
-#, c-format
-msgid "filters not supported in LDAP URLs"
-msgstr "LDAP的URL不支持过滤器"
-
-#: libpq/hba.c:1522
+#: libpq/hba.c:1760
#, c-format
msgid "LDAP URLs not supported on this platform"
msgstr "LDAP URL不能用于此平台"
-#: libpq/hba.c:1546
+#: libpq/hba.c:1778
+#, c-format
+msgid "invalid ldapscheme value: \"%s\""
+msgstr "无效的 sslmode 值: \"%s\""
+
+#: libpq/hba.c:1796
#, c-format
msgid "invalid LDAP port number: \"%s\""
msgstr "无效LDAP端口号: \"%s\""
-#: libpq/hba.c:1586 libpq/hba.c:1593
+#: libpq/hba.c:1842 libpq/hba.c:1849
msgid "gssapi and sspi"
msgstr "gssapi, 和sspi"
-#: libpq/hba.c:1602 libpq/hba.c:1611
+#: libpq/hba.c:1858 libpq/hba.c:1867
msgid "sspi"
msgstr "sspi"
-#: libpq/hba.c:1653
+#: libpq/hba.c:1889
+#, c-format
+msgid "could not parse RADIUS server list \"%s\""
+msgstr "无法分析RADIUS服务器列表\"%s\""
+
+#: libpq/hba.c:1937
+#, c-format
+msgid "could not parse RADIUS port list \"%s\""
+msgstr "无法分析RADIUS端口列表\"%s\""
+
+#: libpq/hba.c:1951
#, c-format
msgid "invalid RADIUS port number: \"%s\""
msgstr "无效RADIUS端口号: \"%s\""
-#: libpq/hba.c:1673
+#: libpq/hba.c:1973
+#, c-format
+msgid "could not parse RADIUS secret list \"%s\""
+msgstr "无法分析RADIUS秘密(secret)列表\"%s\""
+
+#: libpq/hba.c:1995
+#, c-format
+msgid "could not parse RADIUS identifiers list \"%s\""
+msgstr "无法分析RADIUS标识符列表\"%s\""
+
+#: libpq/hba.c:2009
#, c-format
msgid "unrecognized authentication option name: \"%s\""
msgstr "未知认证选项名称:\"%s\""
-#: libpq/hba.c:1859
+#: libpq/hba.c:2193
#, c-format
msgid "configuration file \"%s\" contains no entries"
msgstr "配置文件 \"%s\" 没有配置项"
-#: libpq/hba.c:1955
+#: libpq/hba.c:2706
#, c-format
msgid "invalid regular expression \"%s\": %s"
msgstr "无效的正则表达式\"%s\": %s"
-#: libpq/hba.c:2015
+#: libpq/hba.c:2766
#, c-format
msgid "regular expression match for \"%s\" failed: %s"
msgstr "正则表达式匹配\"%s\"失败:%s"
-#: libpq/hba.c:2034
+#: libpq/hba.c:2785
#, c-format
-msgid ""
-"regular expression \"%s\" has no subexpressions as requested by "
-"backreference in \"%s\""
+msgid "regular expression \"%s\" has no subexpressions as requested by backreference in \"%s\""
msgstr "正则表达式\"%s\"没有在\"%s\"中的后项引用所要求的子表达式."
-#: libpq/hba.c:2131
+#: libpq/hba.c:2882
#, c-format
msgid "provided user name (%s) and authenticated user name (%s) do not match"
msgstr "所提供的用户名(%s)和被认证的用户名(%s) 不匹配"
-#: libpq/hba.c:2151
+#: libpq/hba.c:2902
#, c-format
msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
msgstr "对于以\"%3$s\"身份认证为的用户\"%2$s\",在用户映射\"%1$s\"中没有匹配"
-#: libpq/hba.c:2186
+#: libpq/hba.c:2935
#, c-format
msgid "could not open usermap file \"%s\": %m"
msgstr "无法打开用户映射文件\"%s\": %m"
-#: libpq/pqcomm.c:202
+#: libpq/pqcomm.c:220
#, c-format
msgid "could not set socket to nonblocking mode: %m"
msgstr "无法将套接字设为非阻塞模式: %m"
-#: libpq/pqcomm.c:354
+#: libpq/pqcomm.c:374
#, c-format
msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)"
msgstr "Unix域的套接字路径 \"%s\" 超长(最大为%d字节)"
-#: libpq/pqcomm.c:375
+#: libpq/pqcomm.c:395
#, c-format
msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
msgstr "无法解析主机名 \"%s\", 服务 \"%s\" 到地址: %s"
-#: libpq/pqcomm.c:379
+#: libpq/pqcomm.c:399
#, c-format
msgid "could not translate service \"%s\" to address: %s"
msgstr "无法解析服务 \"%s\" 到地址: %s"
-#: libpq/pqcomm.c:406
+#: libpq/pqcomm.c:426
#, c-format
msgid "could not bind to all requested addresses: MAXLISTEN (%d) exceeded"
msgstr "无法绑定所有需要的地址:超过最大数量MAXLISTEN (%d)"
-#: libpq/pqcomm.c:415
+#: libpq/pqcomm.c:435
msgid "IPv4"
msgstr "IPv4"
-#: libpq/pqcomm.c:419
+#: libpq/pqcomm.c:439
msgid "IPv6"
msgstr "IPv6"
-#: libpq/pqcomm.c:424
+#: libpq/pqcomm.c:444
msgid "Unix"
msgstr "Unix"
-#: libpq/pqcomm.c:429
+#: libpq/pqcomm.c:449
#, c-format
msgid "unrecognized address family %d"
msgstr "不认可的地址族 %d"
-#. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:440
+#. translator: first %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:475
#, c-format
-msgid "could not create %s socket: %m"
-msgstr "无法创建 %s 套接字: %m"
+msgid "could not create %s socket for address \"%s\": %m"
+msgstr "无法为地址\"%2$s\"创建%1$s套接字: %m"
-#: libpq/pqcomm.c:465
+#. translator: first %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:501
#, c-format
-msgid "setsockopt(SO_REUSEADDR) failed: %m"
-msgstr "setsockopt(SO_REUSEADDR) 失败: %m"
+msgid "setsockopt(SO_REUSEADDR) failed for %s address \"%s\": %m"
+msgstr "%s地址\"%s\"的setsockopt(SO_REUSEADDR) 失败: %m"
-#: libpq/pqcomm.c:480
+#. translator: first %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:518
#, c-format
-msgid "setsockopt(IPV6_V6ONLY) failed: %m"
-msgstr "setsockopt(IPV6_V6ONLY) 失败: %m"
+msgid "setsockopt(IPV6_V6ONLY) failed for %s address \"%s\": %m"
+msgstr "%s地址\"%s\"的setsockopt(IPV6_V6ONLY) 失败: %m"
-#. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:499
+#. translator: first %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:538
#, c-format
-msgid "could not bind %s socket: %m"
-msgstr "无法绑定 %s 套接字: %m"
+msgid "could not bind %s address \"%s\": %m"
+msgstr "无法绑定%s地址\"%s\": %m"
-#: libpq/pqcomm.c:502
+#: libpq/pqcomm.c:541
#, c-format
-msgid ""
-"Is another postmaster already running on port %d? If not, remove socket file "
-"\"%s\" and retry."
-msgstr ""
-"是否有其它 postmaster 已经在端口 %d 上运行了? 如果没有, 删除套接字文件 \"%s"
-"\" 然后再重试."
+msgid "Is another postmaster already running on port %d? If not, remove socket file \"%s\" and retry."
+msgstr "是否有其它 postmaster 已经在端口 %d 上运行了? 如果没有, 删除套接字文件 \"%s\" 然后再重试."
-#: libpq/pqcomm.c:505
+#: libpq/pqcomm.c:544
#, c-format
-msgid ""
-"Is another postmaster already running on port %d? If not, wait a few seconds "
-"and retry."
-msgstr ""
-"是否有其它 postmaster 已经在端口 %d 上运行了? 如果没有, 请等待几秒钟后然后再"
-"重试."
+msgid "Is another postmaster already running on port %d? If not, wait a few seconds and retry."
+msgstr "是否有其它 postmaster 已经在端口 %d 上运行了? 如果没有, 请等待几秒钟后然后再重试."
-#. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:538
+#. translator: first %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:577
+#, c-format
+msgid "could not listen on %s address \"%s\": %m"
+msgstr "无法监听%s地址\"%s\": %m"
+
+#: libpq/pqcomm.c:586
+#, c-format
+msgid "listening on Unix socket \"%s\""
+msgstr "在Unix套接字 \"%s\"上侦听"
+
+#. translator: first %s is IPv4 or IPv6
+#: libpq/pqcomm.c:592
#, c-format
-msgid "could not listen on %s socket: %m"
-msgstr "æ\97 æ³\95å\9c¨ %s å¥\97æ\8e¥å\97ä¸\8aç\9b\91å\90¬: %m"
+msgid "listening on %s address \"%s\", port %d"
+msgstr "æ£å\9c¨ç\9b\91å\90¬%så\9c°å\9d\80\"%s\"ï¼\8c端å\8f£ %d"
-#: libpq/pqcomm.c:623
+#: libpq/pqcomm.c:675
#, c-format
msgid "group \"%s\" does not exist"
msgstr "组 \"%s\" 不存在"
-#: libpq/pqcomm.c:633
+#: libpq/pqcomm.c:685
#, c-format
msgid "could not set group of file \"%s\": %m"
msgstr "无法设置文件 \"%s\" 的组: %m"
-#: libpq/pqcomm.c:644
+#: libpq/pqcomm.c:696
#, c-format
msgid "could not set permissions of file \"%s\": %m"
msgstr "无法设置文件 \"%s\" 的权限: %m"
-#: libpq/pqcomm.c:674
+#: libpq/pqcomm.c:726
#, c-format
msgid "could not accept new connection: %m"
msgstr "无法访问新联接: %m"
-#: libpq/pqcomm.c:885
+#: libpq/pqcomm.c:927
#, c-format
msgid "there is no client connection"
msgstr "没有客户端连接"
-#: libpq/pqcomm.c:936 libpq/pqcomm.c:1032
+#: libpq/pqcomm.c:978 libpq/pqcomm.c:1074
#, c-format
msgid "could not receive data from client: %m"
msgstr "无法从客户端获得数据: %m"
-#: libpq/pqcomm.c:1177 tcop/postgres.c:3906
+#: libpq/pqcomm.c:1219 tcop/postgres.c:4020
#, c-format
msgid "terminating connection because protocol synchronization was lost"
msgstr "由于协议同步丢失而中断连接"
-#: libpq/pqcomm.c:1243
+#: libpq/pqcomm.c:1285
#, c-format
msgid "unexpected EOF within message length word"
msgstr "在信息长度字里有意外的 EOF"
-#: libpq/pqcomm.c:1254
+#: libpq/pqcomm.c:1296
#, c-format
msgid "invalid message length"
msgstr "无效的信息长度"
-#: libpq/pqcomm.c:1276 libpq/pqcomm.c:1289
+#: libpq/pqcomm.c:1318 libpq/pqcomm.c:1331
#, c-format
msgid "incomplete message from client"
msgstr "从客户端过来的不完整信息"
-#: libpq/pqcomm.c:1422
+#: libpq/pqcomm.c:1464
#, c-format
msgid "could not send data to client: %m"
msgstr "无法发送数据给客户端: %m"
-#: libpq/pqformat.c:436
+#: libpq/pqformat.c:406
#, c-format
msgid "no data left in message"
msgstr "信息中已经没有数据了"
-#: libpq/pqformat.c:556 libpq/pqformat.c:574 libpq/pqformat.c:595
-#: utils/adt/arrayfuncs.c:1457 utils/adt/rowtypes.c:563
+#: libpq/pqformat.c:517 libpq/pqformat.c:535 libpq/pqformat.c:556
+#: utils/adt/arrayfuncs.c:1470 utils/adt/rowtypes.c:566
#, c-format
msgid "insufficient data left in message"
msgstr "信息中剩下的数据不够"
-#: libpq/pqformat.c:636
+#: libpq/pqformat.c:597 libpq/pqformat.c:626
#, c-format
msgid "invalid string in message"
msgstr "信息中的无效字串"
-#: libpq/pqformat.c:652
+#: libpq/pqformat.c:642
#, c-format
msgid "invalid message format"
msgstr "无效的信息格式"
msgid "%s: WSAStartup failed: %d\n"
msgstr "%s: WSAStartup 失败: %d\n"
-#: main/main.c:327
+#: main/main.c:328
#, c-format
msgid ""
"%s is the PostgreSQL server.\n"
"%s 是 PostgreSQL 服务器.\n"
"\n"
-#: main/main.c:328
+#: main/main.c:329
#, c-format
msgid ""
"Usage:\n"
" %s [选项]...\n"
"\n"
-#: main/main.c:329
+#: main/main.c:330
#, c-format
msgid "Options:\n"
msgstr "选项:\n"
-#: main/main.c:330
+#: main/main.c:331
#, c-format
msgid " -B NBUFFERS number of shared buffers\n"
msgstr " -B NBUFFERS 共享缓冲区的数量\n"
-#: main/main.c:331
+#: main/main.c:332
#, c-format
msgid " -c NAME=VALUE set run-time parameter\n"
msgstr " -c NAME=VALUE 设置运行时参数\n"
-#: main/main.c:332
+#: main/main.c:333
#, c-format
msgid " -C NAME print value of run-time parameter, then exit\n"
msgstr " -C NAME 打印运行时参数, 然后退出\n"
-#: main/main.c:333
+#: main/main.c:334
#, c-format
msgid " -d 1-5 debugging level\n"
msgstr " -d 1-5 调试级别\n"
-#: main/main.c:334
+#: main/main.c:335
#, c-format
msgid " -D DATADIR database directory\n"
msgstr " -D DATADIR 数据库目录\n"
-#: main/main.c:335
+#: main/main.c:336
#, c-format
msgid " -e use European date input format (DMY)\n"
msgstr " -e 使用欧洲日期输入格式 (DMY)\n"
-#: main/main.c:336
+#: main/main.c:337
#, c-format
msgid " -F turn fsync off\n"
-msgstr " -F 关闭 fsync\n"
+msgstr " -F 关闭 fsync\n"
-#: main/main.c:337
+#: main/main.c:338
#, c-format
msgid " -h HOSTNAME host name or IP address to listen on\n"
msgstr " -h HOSTNAME 侦听的主机名或者 IP 地址\n"
-#: main/main.c:338
+#: main/main.c:339
#, c-format
msgid " -i enable TCP/IP connections\n"
msgstr " -i 打开 TCP/IP 连接\n"
-#: main/main.c:339
+#: main/main.c:340
#, c-format
msgid " -k DIRECTORY Unix-domain socket location\n"
msgstr " -k DIRECTORY Unix 域套接字的目录位置\n"
-#: main/main.c:341
+#: main/main.c:342
#, c-format
msgid " -l enable SSL connections\n"
msgstr " -l 开启 SSL 连接\n"
-#: main/main.c:343
+#: main/main.c:344
#, c-format
msgid " -N MAX-CONNECT maximum number of allowed connections\n"
msgstr " -N MAX-CONNECT 允许建立的最大连接数目\n"
-#: main/main.c:344
+#: main/main.c:345
#, c-format
-msgid ""
-" -o OPTIONS pass \"OPTIONS\" to each server process (obsolete)\n"
-msgstr ""
-" -o OPTIONS 把 \"OPTIONS\" 传递给每一个后端服务器进程(已作废)\n"
+msgid " -o OPTIONS pass \"OPTIONS\" to each server process (obsolete)\n"
+msgstr " -o OPTIONS 把 \"OPTIONS\" 传递给每一个后端服务器进程(已作废)\n"
-#: main/main.c:345
+#: main/main.c:346
#, c-format
msgid " -p PORT port number to listen on\n"
msgstr " -p PORT 监听的端口号\n"
-#: main/main.c:346
+#: main/main.c:347
#, c-format
msgid " -s show statistics after each query\n"
msgstr " -s 每个查询后显示统计信息\n"
-#: main/main.c:347
+#: main/main.c:348
#, c-format
msgid " -S WORK-MEM set amount of memory for sorts (in kB)\n"
msgstr " -S WORK-MEM 设置排序内存数量 (单位为 kB)\n"
-#: main/main.c:348
+#: main/main.c:349
#, c-format
msgid " -V, --version output version information, then exit\n"
msgstr " -V, --version 输出版本信息,然后退出\n"
-#: main/main.c:349
+#: main/main.c:350
#, c-format
msgid " --NAME=VALUE set run-time parameter\n"
msgstr " --NAME=VALUE 设置运行时参数\n"
-#: main/main.c:350
+#: main/main.c:351
#, c-format
msgid " --describe-config describe configuration parameters, then exit\n"
msgstr " --describe-config 描述配置参数, 然后退出\n"
-#: main/main.c:351
+#: main/main.c:352
#, c-format
msgid " -?, --help show this help, then exit\n"
msgstr " -?, --help 显示帮助信息,然后退出\n"
-#: main/main.c:353
+#: main/main.c:354
#, c-format
msgid ""
"\n"
"\n"
"开发人员选项:\n"
-#: main/main.c:354
+#: main/main.c:355
#, c-format
msgid " -f s|i|n|m|h forbid use of some plan types\n"
msgstr " -f s|i|n|m|h 禁止一些计划类型的使用\n"
-#: main/main.c:355
+#: main/main.c:356
#, c-format
-msgid ""
-" -n do not reinitialize shared memory after abnormal exit\n"
+msgid " -n do not reinitialize shared memory after abnormal exit\n"
msgstr " -n 在异常退出之后不再重新初始化共享内存\n"
-#: main/main.c:356
+#: main/main.c:357
#, c-format
msgid " -O allow system table structure changes\n"
-msgstr " -O 允许改变系统表结构\n"
+msgstr " -O 允许改变系统表结构\n"
-#: main/main.c:357
+#: main/main.c:358
#, c-format
msgid " -P disable system indexes\n"
msgstr " -P 关闭系统索引\n"
-#: main/main.c:358
+#: main/main.c:359
#, c-format
msgid " -t pa|pl|ex show timings after each query\n"
msgstr " -t pa|pl|ex 每个查询后显示计时\n"
-#: main/main.c:359
+#: main/main.c:360
#, c-format
-msgid ""
-" -T send SIGSTOP to all backend processes if one dies\n"
-msgstr ""
-" -T 如果一个后端进程退出, 那么向所有后端进程发送 SIGSTOP\n"
+msgid " -T send SIGSTOP to all backend processes if one dies\n"
+msgstr " -T 如果一个后端进程退出, 那么向所有后端进程发送 SIGSTOP\n"
-#: main/main.c:360
+#: main/main.c:361
#, c-format
msgid " -W NUM wait NUM seconds to allow attach from a debugger\n"
-msgstr " -W NUM 等待 NUM 秒, 以便允许调试器加入调试\n"
+msgstr " -W NUM 等待 NUM 秒, 以便允许调试器加入调试\n"
-#: main/main.c:362
+#: main/main.c:363
#, c-format
msgid ""
"\n"
"单用户模式的选项:\n"
# help.c:109
-#: main/main.c:363
+#: main/main.c:364
#, c-format
-msgid ""
-" --single selects single-user mode (must be first argument)\n"
+msgid " --single selects single-user mode (must be first argument)\n"
msgstr " --single 选择单用户模式(必须是第一个参数)\n"
# help.c:136
-#: main/main.c:364
+#: main/main.c:365
#, c-format
msgid " DBNAME database name (defaults to user name)\n"
msgstr " DBNAME 数据库名称(对用户名缺省)\n"
-#: main/main.c:365
+#: main/main.c:366
#, c-format
msgid " -d 0-5 override debugging level\n"
msgstr " -d 0-5 覆盖调试级别\n"
-#: main/main.c:366
+#: main/main.c:367
#, c-format
msgid " -E echo statement before execution\n"
msgstr " -E 执行前显示语句\n"
-#: main/main.c:367
+#: main/main.c:368
#, c-format
-msgid ""
-" -j do not use newline as interactive query delimiter\n"
+msgid " -j do not use newline as interactive query delimiter\n"
msgstr " -j 不使用新行作为交互查询的分隔符\n"
-#: main/main.c:368 main/main.c:373
+#: main/main.c:369 main/main.c:374
#, c-format
msgid " -r FILENAME send stdout and stderr to given file\n"
msgstr " -r FILENAME 把标准输出和标准错误发送到指定的文件中\n"
-#: main/main.c:370
+#: main/main.c:371
#, c-format
msgid ""
"\n"
"\n"
"引导模式的选项:\n"
-#: main/main.c:371
+#: main/main.c:372
#, c-format
-msgid ""
-" --boot selects bootstrapping mode (must be first argument)\n"
+msgid " --boot selects bootstrapping mode (must be first argument)\n"
msgstr " --boot 选择引导模式(必须是第一个参数)\n"
-#: main/main.c:372
+#: main/main.c:373
#, c-format
-msgid ""
-" DBNAME database name (mandatory argument in bootstrapping "
-"mode)\n"
+msgid " DBNAME database name (mandatory argument in bootstrapping mode)\n"
msgstr " DBNAME 数据库名称(在引导模式中是必选参数)\n"
-#: main/main.c:374
+#: main/main.c:375
#, c-format
msgid " -x NUM internal use\n"
msgstr " -x NUM 内部使用\n"
-#: main/main.c:376
+#: main/main.c:377
#, c-format
msgid ""
"\n"
"\n"
"请向 <pgsql-bugs@postgresql.org> 报告臭虫.\n"
-#: main/main.c:390
+#: main/main.c:391
#, c-format
msgid ""
"\"root\" execution of the PostgreSQL server is not permitted.\n"
"可能的系统安全性问题. 参阅文档获取更多\n"
"有关如何正确启动服务器的信息.\n"
-#: main/main.c:407
+#: main/main.c:408
#, c-format
msgid "%s: real and effective user IDs must match\n"
msgstr "%s: 真实和有效用户标识必须相互匹配\n"
-#: main/main.c:414
+#: main/main.c:415
#, c-format
msgid ""
"Execution of PostgreSQL by a user with administrative permissions is not\n"
#: nodes/extensible.c:66
#, c-format
-#| msgid "extension \"%s\" already exists"
msgid "extensible node type \"%s\" already exists"
msgstr "可扩展节点类型 \"%s\" 已存在"
#: nodes/extensible.c:114
#, c-format
-#| msgid "extension \"%s\" does not exist"
msgid "ExtensibleNodeMethods \"%s\" was not registered"
msgstr "ExtensibleNodeMethods \"%s\" 没有注册"
-#: nodes/nodeFuncs.c:123 nodes/nodeFuncs.c:154 parser/parse_coerce.c:1820
-#: parser/parse_coerce.c:1848 parser/parse_coerce.c:1924
-#: parser/parse_expr.c:1981 parser/parse_func.c:597 parser/parse_oper.c:952
+#: nodes/nodeFuncs.c:123 nodes/nodeFuncs.c:154 parser/parse_coerce.c:1915
+#: parser/parse_coerce.c:1943 parser/parse_coerce.c:2019
+#: parser/parse_expr.c:2119 parser/parse_func.c:695 parser/parse_oper.c:967
#, c-format
msgid "could not find array type for data type %s"
msgstr "无法为数据类型 %s 找到数组类型"
-#: optimizer/path/allpaths.c:2608
-#, c-format
-msgid "WHERE CURRENT OF is not supported on a view with no underlying relation"
-msgstr "在一个没有基础关系的视图上不支持WHERE CURRENT OF"
-
-#: optimizer/path/allpaths.c:2613
-#, c-format
-msgid ""
-"WHERE CURRENT OF is not supported on a view with more than one underlying "
-"relation"
-msgstr "在一个有多于一个基础关系的视图上不支持WHERE CURRENT OF"
-
-#: optimizer/path/allpaths.c:2618
-#, c-format
-msgid ""
-"WHERE CURRENT OF is not supported on a view with grouping or aggregation"
-msgstr "在一个带有分组或者聚集的视图上不支持WHERE CURRENT OF"
-
-#: optimizer/path/joinrels.c:802
+#: optimizer/path/joinrels.c:839
#, c-format
-msgid ""
-"FULL JOIN is only supported with merge-joinable or hash-joinable join "
-"conditions"
+msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions"
msgstr "只有在合并连接或哈希连接的查询条件中才支持FULL JOIN"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/initsplan.c:1124
+#: optimizer/plan/initsplan.c:1212
#, c-format
msgid "%s cannot be applied to the nullable side of an outer join"
msgstr "%s 不能用于外连接中的空值一边"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1473 parser/analyze.c:1481 parser/analyze.c:1679
-#: parser/analyze.c:2460
+#: optimizer/plan/planner.c:1768 parser/analyze.c:1655 parser/analyze.c:1854
+#: parser/analyze.c:2687
#, c-format
msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
msgstr "%s不允许使用UNION/INTERSECT/EXCEPT"
-#: optimizer/plan/planner.c:3752
+#: optimizer/plan/planner.c:2340 optimizer/plan/planner.c:4061
#, c-format
msgid "could not implement GROUP BY"
msgstr "无法实现GROUP BY语句"
-#: optimizer/plan/planner.c:3753 optimizer/plan/planner.c:4095
-#: optimizer/prep/prepunion.c:927
+#: optimizer/plan/planner.c:2341 optimizer/plan/planner.c:4062
+#: optimizer/plan/planner.c:4805 optimizer/prep/prepunion.c:1080
#, c-format
-msgid ""
-"Some of the datatypes only support hashing, while others only support "
-"sorting."
+msgid "Some of the datatypes only support hashing, while others only support sorting."
msgstr "一些数据类型只支持哈希,同时另外一些数据类型只支持排序."
-#: optimizer/plan/planner.c:4094
+#: optimizer/plan/planner.c:4804
#, c-format
msgid "could not implement DISTINCT"
msgstr "无法实现DISTINCT语句"
-#: optimizer/plan/planner.c:4633
+#: optimizer/plan/planner.c:5487
#, c-format
msgid "could not implement window PARTITION BY"
msgstr "无法实现与窗口函数一同使用PARTITION BY子句"
-#: optimizer/plan/planner.c:4634
+#: optimizer/plan/planner.c:5488
#, c-format
msgid "Window partitioning columns must be of sortable datatypes."
msgstr "窗口分区列必须属于可排序的数据类型"
-#: optimizer/plan/planner.c:4638
+#: optimizer/plan/planner.c:5492
#, c-format
msgid "could not implement window ORDER BY"
msgstr "无法实现与窗口函数一同使用ORDER BY 语句"
-#: optimizer/plan/planner.c:4639
+#: optimizer/plan/planner.c:5493
#, c-format
msgid "Window ordering columns must be of sortable datatypes."
msgstr "窗口的排序列必须属于可排序的数据类型"
-#: optimizer/plan/setrefs.c:423
+#: optimizer/plan/setrefs.c:414
#, c-format
msgid "too many range table entries"
msgstr "太多范围表"
-#: optimizer/prep/prepunion.c:480
+#: optimizer/prep/prepunion.c:544
#, c-format
msgid "could not implement recursive UNION"
msgstr "无法实现递归UNION操作"
-#: optimizer/prep/prepunion.c:481
+#: optimizer/prep/prepunion.c:545
#, c-format
msgid "All column datatypes must be hashable."
msgstr "所有列的数据类型必须可进行哈希计算."
#. translator: %s is UNION, INTERSECT, or EXCEPT
-#: optimizer/prep/prepunion.c:926
+#: optimizer/prep/prepunion.c:1079
#, c-format
msgid "could not implement %s"
msgstr "无法实现%s"
-#: optimizer/util/clauses.c:4965
+#: optimizer/util/clauses.c:4924
#, c-format
msgid "SQL function \"%s\" during inlining"
msgstr "SQL 函数 \"%s\" 在内联 (inlining) 期间"
-#: optimizer/util/plancat.c:114
+#: optimizer/util/plancat.c:127
#, c-format
msgid "cannot access temporary or unlogged relations during recovery"
msgstr "无法在恢复过程中访问临时关系或非事务日志关系"
-#: optimizer/util/plancat.c:591
+#: optimizer/util/plancat.c:651
#, c-format
-msgid "system columns cannot be used in an ON CONFLICT clause"
-msgstr "在ON CONFLICT子句中不能使用系统列"
+msgid "whole row unique index inference specifications are not supported"
+msgstr "不支持整行唯一索引推理规范"
-#: optimizer/util/plancat.c:609
+#: optimizer/util/plancat.c:668
#, c-format
msgid "constraint in ON CONFLICT clause has no associated index"
msgstr "ON CONFLICT子句中的约束没有相关的索引"
-#: optimizer/util/plancat.c:661
+#: optimizer/util/plancat.c:719
#, c-format
msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints"
msgstr "ON CONFLICT DO UPDATE不支持和排除约束一起使用"
-#: optimizer/util/plancat.c:768
+#: optimizer/util/plancat.c:824
#, c-format
-msgid ""
-"there is no unique or exclusion constraint matching the ON CONFLICT "
-"specification"
+msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification"
msgstr "没有匹配ON CONFLICT说明的唯一或者排除约束"
-#: parser/analyze.c:639 parser/analyze.c:1253
+#: parser/analyze.c:711 parser/analyze.c:1418
#, c-format
msgid "VALUES lists must all be the same length"
msgstr "在VALUES列表中每个成员的长度必须相同"
-#: parser/analyze.c:811
+#: parser/analyze.c:921
#, c-format
msgid "INSERT has more expressions than target columns"
msgstr "INSERT 的表达式多于指定的字段数"
-#: parser/analyze.c:829
+#: parser/analyze.c:939
#, c-format
msgid "INSERT has more target columns than expressions"
msgstr "INSERT 的指定字段数多于表达式"
-#: parser/analyze.c:833
+#: parser/analyze.c:943
#, c-format
-msgid ""
-"The insertion source is a row expression containing the same number of "
-"columns expected by the INSERT. Did you accidentally use extra parentheses?"
-msgstr ""
-"插入源是一个行表达式,里边的列个数与INSERT期望值相同. 您是否偶尔使用了额外的"
-"父表达式?"
+msgid "The insertion source is a row expression containing the same number of columns expected by the INSERT. Did you accidentally use extra parentheses?"
+msgstr "插入源是一个行表达式,里边的列个数与INSERT期望值相同. 您是否偶尔使用了额外的父表达式?"
-#: parser/analyze.c:1074 parser/analyze.c:1454
+#: parser/analyze.c:1229 parser/analyze.c:1628
#, c-format
msgid "SELECT ... INTO is not allowed here"
msgstr "这儿不允许使用SELECT ... INTO"
-#: parser/analyze.c:1267
-#, c-format
-msgid "DEFAULT can only appear in a VALUES list within INSERT"
-msgstr "DEFAULT只能在INSERT语句中的VALUES列表中出现"
-
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:1386 parser/analyze.c:2630
+#: parser/analyze.c:1560 parser/analyze.c:2866
#, c-format
msgid "%s cannot be applied to VALUES"
msgstr "%s 不能用于 VALUES"
-#: parser/analyze.c:1607
+#: parser/analyze.c:1779
#, c-format
msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
msgstr "无效的UNION/INTERSECT/EXCEPT ORDER BY 子句"
-#: parser/analyze.c:1608
+#: parser/analyze.c:1780
#, c-format
msgid "Only result column names can be used, not expressions or functions."
msgstr "无法使用表达式或函数,只有结果列的名称可以使用."
-#: parser/analyze.c:1609
+#: parser/analyze.c:1781
#, c-format
-msgid ""
-"Add the expression/function to every SELECT, or move the UNION into a FROM "
-"clause."
+msgid "Add the expression/function to every SELECT, or move the UNION into a FROM clause."
msgstr "对每个SELECT语句增加表达式/函数, 或者将UNION移动到FROM子句中."
-#: parser/analyze.c:1669
+#: parser/analyze.c:1844
#, c-format
msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
msgstr "INTO 只允许在 UNION/INTERSECT/EXCEPT 的第一个 SELECT 上使用"
-#: parser/analyze.c:1733
+#: parser/analyze.c:1916
#, c-format
-msgid ""
-"UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of "
-"same query level"
+msgid "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of same query level"
msgstr "UNION/INTERSECT/EXCEPT的成员语句不能参考相同查询层次的其它关系"
-#: parser/analyze.c:1822
+#: parser/analyze.c:2005
#, c-format
msgid "each %s query must have the same number of columns"
msgstr "每一个 %s 查询必须有相同的字段个数"
-#: parser/analyze.c:2215
+#: parser/analyze.c:2398
#, c-format
msgid "RETURNING must have at least one column"
msgstr "RETURNING 必须至少有一列"
-#: parser/analyze.c:2252
+#: parser/analyze.c:2439
#, c-format
msgid "cannot specify both SCROLL and NO SCROLL"
msgstr "不可同时指定 SCROLL 和 NO SCROLL"
-#: parser/analyze.c:2270
+#: parser/analyze.c:2458
#, c-format
msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
msgstr "DECLARE CURSOR不能在WITH子句中包含修改数据的操作"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2278
+#: parser/analyze.c:2466
#, c-format
msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
msgstr "DECLARE CURSOR WITH HOLD ... %s不能使用"
-#: parser/analyze.c:2281
+#: parser/analyze.c:2469
#, c-format
msgid "Holdable cursors must be READ ONLY."
msgstr "可保持游标必须为只读."
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2289
+#: parser/analyze.c:2477
#, c-format
msgid "DECLARE SCROLL CURSOR ... %s is not supported"
msgstr "DECLARE SCROLL CURSOR ... %s不能使用"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2300
+#: parser/analyze.c:2488
#, c-format
msgid "DECLARE INSENSITIVE CURSOR ... %s is not supported"
msgstr "DECLARE INSENSITIVE CURSOR ... %s不能使用"
-#: parser/analyze.c:2303
+#: parser/analyze.c:2491
#, c-format
msgid "Insensitive cursors must be READ ONLY."
msgstr "非敏感游标必须为只读模式(READ ONLY)."
-#: parser/analyze.c:2369
+#: parser/analyze.c:2557
#, c-format
msgid "materialized views must not use data-modifying statements in WITH"
msgstr "物化视图不能包含修改数据的WITH子句"
-#: parser/analyze.c:2379
+#: parser/analyze.c:2567
#, c-format
msgid "materialized views must not use temporary tables or views"
msgstr "物化视图不能使用临时表或视图"
-#: parser/analyze.c:2389
+#: parser/analyze.c:2577
#, c-format
msgid "materialized views may not be defined using bound parameters"
msgstr "物化视图在绑定参数里可能没被定义"
-#: parser/analyze.c:2401
+#: parser/analyze.c:2589
#, c-format
msgid "materialized views cannot be UNLOGGED"
msgstr "物化视图不能使用UNLOGGED"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2467
+#: parser/analyze.c:2694
#, c-format
msgid "%s is not allowed with DISTINCT clause"
msgstr "%s不能用于DISTINCT子句中"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2474
+#: parser/analyze.c:2701
#, c-format
msgid "%s is not allowed with GROUP BY clause"
msgstr "%s不能用于GROUP BY子句中"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2481
+#: parser/analyze.c:2708
#, c-format
msgid "%s is not allowed with HAVING clause"
msgstr "%s不能用于HAVING子句中"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2488
+#: parser/analyze.c:2715
#, c-format
msgid "%s is not allowed with aggregate functions"
msgstr "%s不能用于聚合函数中"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2495
+#: parser/analyze.c:2722
#, c-format
msgid "%s is not allowed with window functions"
msgstr "%s不能用于窗口函数中"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2502
+#: parser/analyze.c:2729
#, c-format
msgid "%s is not allowed with set-returning functions in the target list"
msgstr "%s不能用于目标列表中的返回集合的函数中"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2581
+#: parser/analyze.c:2808
#, c-format
msgid "%s must specify unqualified relation names"
msgstr "%s 必须指定不合格的关系名"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2612
+#: parser/analyze.c:2839
#, c-format
msgid "%s cannot be applied to a join"
msgstr "%s 不能用于连接(join)操作"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2621
+#: parser/analyze.c:2848
#, c-format
msgid "%s cannot be applied to a function"
msgstr "%s不能用于函数"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2639
+#: parser/analyze.c:2857
+#, c-format
+msgid "%s cannot be applied to a table function"
+msgstr "%s不能应用于表函数"
+
+#. translator: %s is a SQL row locking clause such as FOR UPDATE
+#: parser/analyze.c:2875
#, c-format
msgid "%s cannot be applied to a WITH query"
msgstr "%s 不能用于WITH查询"
#. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2656
+#: parser/analyze.c:2884
+#, c-format
+msgid "%s cannot be applied to a named tuplestore"
+msgstr "%s不能应用于命名的tuplestore"
+
+#. translator: %s is a SQL row locking clause such as FOR UPDATE
+#: parser/analyze.c:2901
#, c-format
msgid "relation \"%s\" in %s clause not found in FROM clause"
msgstr "子句%2$s中的关系 \"%1$s\" 在FROM子句中无法找到"
-#: parser/parse_agg.c:208 parser/parse_oper.c:220
+#: parser/parse_agg.c:221 parser/parse_oper.c:222
#, c-format
msgid "could not identify an ordering operator for type %s"
msgstr "无法为类型%s识别顺序操作符"
-#: parser/parse_agg.c:210
+#: parser/parse_agg.c:223
#, c-format
msgid "Aggregates with DISTINCT must be able to sort their inputs."
msgstr "带有DISTINCT关键字的聚合函数必须能够对它们的输入进行排序"
-#: parser/parse_agg.c:245
+#: parser/parse_agg.c:258
#, c-format
msgid "GROUPING must have fewer than 32 arguments"
msgstr "GROUPING的参数不能超过32个"
-#: parser/parse_agg.c:348
+#: parser/parse_agg.c:361
msgid "aggregate functions are not allowed in JOIN conditions"
msgstr "聚合函数不允许出现在 JOIN 条件中"
-#: parser/parse_agg.c:350
+#: parser/parse_agg.c:363
msgid "grouping operations are not allowed in JOIN conditions"
msgstr "JOIN条件中不允许分组操作"
-#: parser/parse_agg.c:362
-msgid ""
-"aggregate functions are not allowed in FROM clause of their own query level"
+#: parser/parse_agg.c:375
+msgid "aggregate functions are not allowed in FROM clause of their own query level"
msgstr "聚合函数不允许出现在它们自己查询级别的FROM子句中"
-#: parser/parse_agg.c:364
-msgid ""
-"grouping operations are not allowed in FROM clause of their own query level"
+#: parser/parse_agg.c:377
+msgid "grouping operations are not allowed in FROM clause of their own query level"
msgstr "分组操作不允许出现在它们所在查询级别的FROM子句中"
-#: parser/parse_agg.c:369
+#: parser/parse_agg.c:382
msgid "aggregate functions are not allowed in functions in FROM"
msgstr "聚合函数不允许出现在FROM子句中的函数里"
-#: parser/parse_agg.c:371
+#: parser/parse_agg.c:384
msgid "grouping operations are not allowed in functions in FROM"
msgstr "分组操作不允许出现在FROM中的函数内"
-#: parser/parse_agg.c:379
+#: parser/parse_agg.c:392
msgid "aggregate functions are not allowed in policy expressions"
msgstr "策略表达式中不允许聚集函数"
-#: parser/parse_agg.c:381
+#: parser/parse_agg.c:394
msgid "grouping operations are not allowed in policy expressions"
msgstr "策略表达式中不允许分组操作"
-#: parser/parse_agg.c:398
+#: parser/parse_agg.c:411
msgid "aggregate functions are not allowed in window RANGE"
msgstr "在聚合函数不允许出现在窗口范围子句里"
-#: parser/parse_agg.c:400
+#: parser/parse_agg.c:413
msgid "grouping operations are not allowed in window RANGE"
msgstr "窗口RANGE中不允许分组操作"
-#: parser/parse_agg.c:405
+#: parser/parse_agg.c:418
msgid "aggregate functions are not allowed in window ROWS"
msgstr "聚合函数不允许出现在窗口ROWS子句里"
-#: parser/parse_agg.c:407
+#: parser/parse_agg.c:420
msgid "grouping operations are not allowed in window ROWS"
msgstr "窗口ROWS中不允许分组操作"
-#: parser/parse_agg.c:440
+#: parser/parse_agg.c:425
+msgid "aggregate functions are not allowed in window GROUPS"
+msgstr "聚合函数不允许出现在窗口GROUPS子句里"
+
+#: parser/parse_agg.c:427
+msgid "grouping operations are not allowed in window GROUPS"
+msgstr "窗口GROUPS中不允许分组操作"
+
+#: parser/parse_agg.c:461
msgid "aggregate functions are not allowed in check constraints"
msgstr "聚合函数不允许出现在check约束中"
-#: parser/parse_agg.c:442
+#: parser/parse_agg.c:463
msgid "grouping operations are not allowed in check constraints"
msgstr "检查约束中不允许分组操作"
-#: parser/parse_agg.c:449
+#: parser/parse_agg.c:470
msgid "aggregate functions are not allowed in DEFAULT expressions"
msgstr "聚合函数不允许出现在DEFAULT表达式中"
-#: parser/parse_agg.c:451
+#: parser/parse_agg.c:472
msgid "grouping operations are not allowed in DEFAULT expressions"
msgstr "DEFAULT表达式中不允许分组操作"
-#: parser/parse_agg.c:456
+#: parser/parse_agg.c:477
msgid "aggregate functions are not allowed in index expressions"
msgstr "聚合函数不允许出现在索引表达式中"
-#: parser/parse_agg.c:458
+#: parser/parse_agg.c:479
msgid "grouping operations are not allowed in index expressions"
msgstr "索引表达式中不允许分组操作"
-#: parser/parse_agg.c:463
+#: parser/parse_agg.c:484
msgid "aggregate functions are not allowed in index predicates"
msgstr "聚合函数不允许出现在索引判定子句当中"
-#: parser/parse_agg.c:465
+#: parser/parse_agg.c:486
msgid "grouping operations are not allowed in index predicates"
msgstr "索引谓词中不允许分组操作"
-#: parser/parse_agg.c:470
+#: parser/parse_agg.c:491
msgid "aggregate functions are not allowed in transform expressions"
msgstr "聚合函数不允许出现在转换表达式中"
-#: parser/parse_agg.c:472
+#: parser/parse_agg.c:493
msgid "grouping operations are not allowed in transform expressions"
msgstr "转换表达式中不允许分组操作"
-#: parser/parse_agg.c:477
+#: parser/parse_agg.c:498
msgid "aggregate functions are not allowed in EXECUTE parameters"
msgstr "聚合函数不允许出现在EXECUTE参数中"
-#: parser/parse_agg.c:479
+#: parser/parse_agg.c:500
msgid "grouping operations are not allowed in EXECUTE parameters"
msgstr "EXECUTE参数中不允许分组操作"
-#: parser/parse_agg.c:484
+#: parser/parse_agg.c:505
msgid "aggregate functions are not allowed in trigger WHEN conditions"
msgstr "聚合函数不允许出现在触发器WHEN条件中"
-#: parser/parse_agg.c:486
+#: parser/parse_agg.c:507
msgid "grouping operations are not allowed in trigger WHEN conditions"
msgstr "触发器WHEN条件中不允许分组操作"
+#: parser/parse_agg.c:512
+msgid "aggregate functions are not allowed in partition key expressions"
+msgstr "聚合函数不允许出现在分区键表达式中"
+
+#: parser/parse_agg.c:514
+msgid "grouping operations are not allowed in partition key expressions"
+msgstr "分区键表达式中不允许分组操作"
+
+#: parser/parse_agg.c:520
+msgid "aggregate functions are not allowed in CALL arguments"
+msgstr "聚合函数不允许出现在CALL参数中"
+
+#: parser/parse_agg.c:522
+msgid "grouping operations are not allowed in CALL arguments"
+msgstr "CALL参数中不允许分组操作"
+
#. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:509 parser/parse_clause.c:1550
+#: parser/parse_agg.c:545 parser/parse_clause.c:1818
#, c-format
msgid "aggregate functions are not allowed in %s"
msgstr "聚合函数不允许出现在%s中"
#. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:512
+#: parser/parse_agg.c:548
#, c-format
msgid "grouping operations are not allowed in %s"
msgstr "%s中不允许分组操作"
-#: parser/parse_agg.c:620
+#: parser/parse_agg.c:656
#, c-format
-msgid ""
-"outer-level aggregate cannot contain a lower-level variable in its direct "
-"arguments"
+msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments"
msgstr "outer-level 聚集函数在其直接参数里不能包含更低级别的变量"
-#: parser/parse_agg.c:691
+#: parser/parse_agg.c:735
+#, c-format
+msgid "aggregate function calls cannot contain set-returning function calls"
+msgstr "对于聚合函数调用不能包含将返回集合函数的调用"
+
+#: parser/parse_agg.c:736 parser/parse_expr.c:1766 parser/parse_expr.c:2246
+#: parser/parse_func.c:866
+#, c-format
+msgid "You might be able to move the set-returning function into a LATERAL FROM item."
+msgstr "您可以将返回集合函数移到LATERAL FROM项中"
+
+#: parser/parse_agg.c:741
#, c-format
msgid "aggregate function calls cannot contain window function calls"
msgstr "对于聚合函数调用不能包含窗口函数的调用"
-#: parser/parse_agg.c:769
+#: parser/parse_agg.c:820
msgid "window functions are not allowed in JOIN conditions"
msgstr "窗口函数不允许出现在JOIN条件中"
-#: parser/parse_agg.c:776
+#: parser/parse_agg.c:827
msgid "window functions are not allowed in functions in FROM"
msgstr "窗口函数不允许出现在FROM的函数中"
-#: parser/parse_agg.c:782
+#: parser/parse_agg.c:833
msgid "window functions are not allowed in policy expressions"
msgstr "策略表达式中不允许窗口函数"
-#: parser/parse_agg.c:794
+#: parser/parse_agg.c:846
msgid "window functions are not allowed in window definitions"
msgstr "窗口函数不允许出现在窗口定义中"
-#: parser/parse_agg.c:825
+#: parser/parse_agg.c:878
msgid "window functions are not allowed in check constraints"
msgstr "窗口函数不允许出现在check约束中"
-#: parser/parse_agg.c:829
+#: parser/parse_agg.c:882
msgid "window functions are not allowed in DEFAULT expressions"
msgstr "窗口函数不允许出现在DEFAULT表达式中"
-#: parser/parse_agg.c:832
+#: parser/parse_agg.c:885
msgid "window functions are not allowed in index expressions"
msgstr "在窗口函数不允许出现在索引表达式中"
-#: parser/parse_agg.c:835
+#: parser/parse_agg.c:888
msgid "window functions are not allowed in index predicates"
msgstr "在窗口函数不允许出现在索引判定子句中"
-#: parser/parse_agg.c:838
+#: parser/parse_agg.c:891
msgid "window functions are not allowed in transform expressions"
msgstr "窗口函数不允许出现在转换表达式中"
-#: parser/parse_agg.c:841
+#: parser/parse_agg.c:894
msgid "window functions are not allowed in EXECUTE parameters"
msgstr "窗口函数不允许出现在EXECUTE参数中"
-#: parser/parse_agg.c:844
+#: parser/parse_agg.c:897
msgid "window functions are not allowed in trigger WHEN conditions"
msgstr "窗口函数不允许出现在触发器WHEN条件中"
+#: parser/parse_agg.c:900
+msgid "window functions are not allowed in partition key expressions"
+msgstr "在窗口函数不允许出现在分区键表达式中"
+
+#: parser/parse_agg.c:903
+msgid "window functions are not allowed in CALL arguments"
+msgstr "窗口函数不允许出现在CALL参数中"
+
#. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:864 parser/parse_clause.c:1559
+#: parser/parse_agg.c:923 parser/parse_clause.c:1827
#, c-format
msgid "window functions are not allowed in %s"
msgstr "窗口函数不允许出现在%s中"
-#: parser/parse_agg.c:898 parser/parse_clause.c:2396
+#: parser/parse_agg.c:957 parser/parse_clause.c:2663
#, c-format
msgid "window \"%s\" does not exist"
msgstr "窗口\"%s\"不存在"
-#: parser/parse_agg.c:983
+#: parser/parse_agg.c:1042
#, c-format
msgid "too many grouping sets present (maximum 4096)"
msgstr "出现过多分组集合(最大4096个)"
-#: parser/parse_agg.c:1132
+#: parser/parse_agg.c:1191
#, c-format
-msgid ""
-"aggregate functions are not allowed in a recursive query's recursive term"
+msgid "aggregate functions are not allowed in a recursive query's recursive term"
msgstr "聚合函数不允许出现在递归查询的递归项中"
-#: parser/parse_agg.c:1325
+#: parser/parse_agg.c:1384
#, c-format
-msgid ""
-"column \"%s.%s\" must appear in the GROUP BY clause or be used in an "
-"aggregate function"
+msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function"
msgstr "字段 \"%s.%s\" 必须出现在 GROUP BY 子句中或者在聚合函数中使用"
-#: parser/parse_agg.c:1328
+#: parser/parse_agg.c:1387
#, c-format
-msgid ""
-"Direct arguments of an ordered-set aggregate must use only grouped columns."
+msgid "Direct arguments of an ordered-set aggregate must use only grouped columns."
msgstr "有序聚集函数的直接参数必须使用分组列."
-#: parser/parse_agg.c:1333
+#: parser/parse_agg.c:1392
#, c-format
msgid "subquery uses ungrouped column \"%s.%s\" from outer query"
msgstr "子查询使用了外层查询中的非分组列 \"%s.%s\" "
-#: parser/parse_agg.c:1497
+#: parser/parse_agg.c:1556
#, c-format
-msgid ""
-"arguments to GROUPING must be grouping expressions of the associated query "
-"level"
+msgid "arguments to GROUPING must be grouping expressions of the associated query level"
msgstr "GROUPING的参数必须是相关查询层次的分组表达式"
-#: parser/parse_clause.c:649
+#: parser/parse_clause.c:199
+#, c-format
+msgid "relation \"%s\" cannot be the target of a modifying statement"
+msgstr "关系\"%s\"不能作为修改语句的目标"
+
+#: parser/parse_clause.c:615 parser/parse_clause.c:643 parser/parse_func.c:2284
+#, c-format
+msgid "set-returning functions must appear at top level of FROM"
+msgstr "返回集合函数必须出现在FROM的顶层."
+
+#: parser/parse_clause.c:655
#, c-format
msgid "multiple column definition lists are not allowed for the same function"
msgstr "多列定义列表不允许了现在相同的函数中"
-#: parser/parse_clause.c:682
+#: parser/parse_clause.c:688
#, c-format
-msgid ""
-"ROWS FROM() with multiple functions cannot have a column definition list"
+msgid "ROWS FROM() with multiple functions cannot have a column definition list"
msgstr "带多函数的ROWS FROM() 不能带有列定义列表"
-#: parser/parse_clause.c:683
+#: parser/parse_clause.c:689
#, c-format
-msgid ""
-"Put a separate column definition list for each function inside ROWS FROM()."
+msgid "Put a separate column definition list for each function inside ROWS FROM()."
msgstr "在ROWS FROM()里为每个函数放置独立的列定义列表."
-#: parser/parse_clause.c:689
+#: parser/parse_clause.c:695
#, c-format
msgid "UNNEST() with multiple arguments cannot have a column definition list"
msgstr "带多个参数的UNNEST() 不能带有列定义列表"
-#: parser/parse_clause.c:690
+#: parser/parse_clause.c:696
#, c-format
-msgid ""
-"Use separate UNNEST() calls inside ROWS FROM(), and attach a column "
-"definition list to each one."
+msgid "Use separate UNNEST() calls inside ROWS FROM(), and attach a column definition list to each one."
msgstr "在ROWS FROM()里使用独立的UNNEST()调用, 并为每个调用附上一个列定义列表."
-#: parser/parse_clause.c:697
+#: parser/parse_clause.c:703
#, c-format
msgid "WITH ORDINALITY cannot be used with a column definition list"
msgstr "WITH ORDINALITY 不能使用列定义列表"
-#: parser/parse_clause.c:698
+#: parser/parse_clause.c:704
#, c-format
msgid "Put the column definition list inside ROWS FROM()."
msgstr "在 ROWS FROM()时旋转列定义列表."
-#: parser/parse_clause.c:753
+#: parser/parse_clause.c:807
+#, c-format
+msgid "only one FOR ORDINALITY column is allowed"
+msgstr "只允许一个FOR ORDINALITY列"
+
+#: parser/parse_clause.c:868
+#, c-format
+msgid "column name \"%s\" is not unique"
+msgstr "列名 \"%s\" 不是唯一的"
+
+#: parser/parse_clause.c:910
+#, c-format
+msgid "namespace name \"%s\" is not unique"
+msgstr "命名空间名称 \"%s\" 不是唯一的"
+
+#: parser/parse_clause.c:920
+#, c-format
+msgid "only one default namespace is allowed"
+msgstr "只允许一个默认命名空间"
+
+#: parser/parse_clause.c:982
#, c-format
msgid "tablesample method %s does not exist"
msgstr "表采样方法\"%s\"不存在"
# fe-auth.c:640
-#: parser/parse_clause.c:775
+#: parser/parse_clause.c:1004
#, c-format
msgid "tablesample method %s requires %d argument, not %d"
msgid_plural "tablesample method %s requires %d arguments, not %d"
msgstr[0] "表采样方法%s要求%d个参数,而不是%d个"
-#: parser/parse_clause.c:809
+#: parser/parse_clause.c:1038
#, c-format
msgid "tablesample method %s does not support REPEATABLE"
msgstr "表采样方法%s不支持REPEATABLE"
-#: parser/parse_clause.c:940
+#: parser/parse_clause.c:1208
#, c-format
msgid "TABLESAMPLE clause can only be applied to tables and materialized views"
msgstr "TABLESAMPLE子句只能被应用于表和物化视图"
-#: parser/parse_clause.c:1110
+#: parser/parse_clause.c:1378
#, c-format
msgid "column name \"%s\" appears more than once in USING clause"
msgstr "在 USING 子句中字段名 \"%s\" 出现多次"
-#: parser/parse_clause.c:1125
+#: parser/parse_clause.c:1393
#, c-format
msgid "common column name \"%s\" appears more than once in left table"
msgstr "共同的字段名 \"%s\" 在左边的表中出现了多次"
-#: parser/parse_clause.c:1134
+#: parser/parse_clause.c:1402
#, c-format
msgid "column \"%s\" specified in USING clause does not exist in left table"
msgstr "USING 子句中指定的字段 \"%s\" 在左边的表中不存在"
-#: parser/parse_clause.c:1148
+#: parser/parse_clause.c:1416
#, c-format
msgid "common column name \"%s\" appears more than once in right table"
msgstr "共同的字段名 \"%s\" 在右边的表中出现了多次"
-#: parser/parse_clause.c:1157
+#: parser/parse_clause.c:1425
#, c-format
msgid "column \"%s\" specified in USING clause does not exist in right table"
msgstr "USING 子句中指定的字段 \"%s\" 在右边的表中不存在"
-#: parser/parse_clause.c:1211
+#: parser/parse_clause.c:1479
#, c-format
msgid "column alias list for \"%s\" has too many entries"
msgstr "\"%s\" 的字段别名列表有太多记录"
#. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1520
+#: parser/parse_clause.c:1788
#, c-format
msgid "argument of %s must not contain variables"
msgstr "%s 的参数不能包含变量"
#. translator: first %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1685
+#: parser/parse_clause.c:1953
#, c-format
msgid "%s \"%s\" is ambiguous"
msgstr "%s \"%s\" 是不明确的"
#. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1714
+#: parser/parse_clause.c:1982
#, c-format
msgid "non-integer constant in %s"
msgstr "在 %s 中的非整数常量"
#. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1736
+#: parser/parse_clause.c:2004
#, c-format
msgid "%s position %d is not in select list"
msgstr "%s 位置%d不在select列表中."
-#: parser/parse_clause.c:2178
+#: parser/parse_clause.c:2445
#, c-format
msgid "CUBE is limited to 12 elements"
msgstr "CUBE被限制为12个元素"
-#: parser/parse_clause.c:2384
+#: parser/parse_clause.c:2651
#, c-format
msgid "window \"%s\" is already defined"
msgstr "已经定义窗口\"%s\""
-#: parser/parse_clause.c:2446
+#: parser/parse_clause.c:2712
#, c-format
msgid "cannot override PARTITION BY clause of window \"%s\""
msgstr "无法覆盖窗口\"%s\"的PARTITION BY子句"
-#: parser/parse_clause.c:2458
+#: parser/parse_clause.c:2724
#, c-format
msgid "cannot override ORDER BY clause of window \"%s\""
msgstr "无法覆盖窗口 \"%s\"的ORDER BY子句"
-#: parser/parse_clause.c:2488 parser/parse_clause.c:2494
+#: parser/parse_clause.c:2754 parser/parse_clause.c:2760
#, c-format
msgid "cannot copy window \"%s\" because it has a frame clause"
msgstr "因为已有frame子句,无法复制窗口\"%s\""
-#: parser/parse_clause.c:2496
+#: parser/parse_clause.c:2762
#, c-format
msgid "Omit the parentheses in this OVER clause."
msgstr "在这个 OVER 子句里忽略其父语句."
-#: parser/parse_clause.c:2562
+#: parser/parse_clause.c:2782
#, c-format
-msgid ""
-"in an aggregate with DISTINCT, ORDER BY expressions must appear in argument "
-"list"
-msgstr ""
-"在带有DISTINCT子句的聚合函数中,ORDER BY子句后面的表达式必须在参数列表中出现"
+msgid "RANGE with offset PRECEDING/FOLLOWING requires exactly one ORDER BY column"
+msgstr "偏移量PRECEDING/FOLLOWING的范围只需要一个按列排序"
+
+#: parser/parse_clause.c:2805
+#, c-format
+msgid "GROUPS mode requires an ORDER BY clause"
+msgstr "GROUPS模式需要一个ORDER BY子句"
+
+#: parser/parse_clause.c:2875
+#, c-format
+msgid "in an aggregate with DISTINCT, ORDER BY expressions must appear in argument list"
+msgstr "在带有DISTINCT子句的聚合函数中,ORDER BY子句后面的表达式必须在参数列表中出现"
-#: parser/parse_clause.c:2563
+#: parser/parse_clause.c:2876
#, c-format
msgid "for SELECT DISTINCT, ORDER BY expressions must appear in select list"
msgstr "在查询列表中必须出现SELECT DISTINCT, ORDER BY表达式"
-#: parser/parse_clause.c:2596
+#: parser/parse_clause.c:2908
#, c-format
msgid "an aggregate with DISTINCT must have at least one argument"
msgstr "带有DISTINCT关键字的聚合函数必须至少有一个参数"
-#: parser/parse_clause.c:2597
+#: parser/parse_clause.c:2909
#, c-format
msgid "SELECT DISTINCT must have at least one column"
msgstr "SELECT DISTINCT 至少拥有一列"
-#: parser/parse_clause.c:2663 parser/parse_clause.c:2695
+#: parser/parse_clause.c:2975 parser/parse_clause.c:3007
#, c-format
msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
msgstr "表达式SELECT DISTINCT ON必须匹配初始化的ORDER BY表达式"
-#: parser/parse_clause.c:2774
+#: parser/parse_clause.c:3085
#, c-format
msgid "ASC/DESC is not allowed in ON CONFLICT clause"
msgstr "ON CONFLICT子句中不允许ASC/DESC"
-#: parser/parse_clause.c:2780
+#: parser/parse_clause.c:3091
#, c-format
msgid "NULLS FIRST/LAST is not allowed in ON CONFLICT clause"
msgstr "ON CONFLICT子句中不允许NULLS FIRST/LAST"
-#: parser/parse_clause.c:2860
+#: parser/parse_clause.c:3170
#, c-format
-msgid ""
-"ON CONFLICT DO UPDATE requires inference specification or constraint name"
+msgid "ON CONFLICT DO UPDATE requires inference specification or constraint name"
msgstr "ON CONFLICT DO UPDATE需要推理规范或者约束名称"
-#: parser/parse_clause.c:2861
+#: parser/parse_clause.c:3171
#, c-format
msgid "For example, ON CONFLICT (column_name)."
msgstr "例如:ON CONFLICT (column_name)。"
-#: parser/parse_clause.c:2872
+#: parser/parse_clause.c:3182
#, c-format
msgid "ON CONFLICT is not supported with system catalog tables"
msgstr "系统目录表不支持ON CONFLICT"
-#: parser/parse_clause.c:2880
+#: parser/parse_clause.c:3190
#, c-format
msgid "ON CONFLICT is not supported on table \"%s\" used as a catalog table"
msgstr "在用作目录表的表\"%s\"上不支持ON CONFLICT"
-#: parser/parse_clause.c:3012
+#: parser/parse_clause.c:3333
#, c-format
msgid "operator %s is not a valid ordering operator"
msgstr "操作符%s不时有效的排序操作符"
-#: parser/parse_clause.c:3014
+#: parser/parse_clause.c:3335
#, c-format
-msgid ""
-"Ordering operators must be \"<\" or \">\" members of btree operator families."
+msgid "Ordering operators must be \"<\" or \">\" members of btree operator families."
msgstr "顺序操作符必须是btree操作符家族的成员\"<\"或\">\"."
-#: parser/parse_coerce.c:971 parser/parse_coerce.c:1001
-#: parser/parse_coerce.c:1019 parser/parse_coerce.c:1034
-#: parser/parse_expr.c:2015 parser/parse_expr.c:2528 parser/parse_target.c:874
+#: parser/parse_clause.c:3646
+#, c-format
+msgid "RANGE with offset PRECEDING/FOLLOWING is not supported for column type %s"
+msgstr "列类型 %s不支持偏移量PRECEDING/FOLLOWING的范围"
+
+#: parser/parse_clause.c:3652
+#, c-format
+msgid "RANGE with offset PRECEDING/FOLLOWING is not supported for column type %s and offset type %s"
+msgstr "对于列类型%s和偏移量类型%s,不支持偏移量在PRECEDING/FOLLOWING的范围"
+
+#: parser/parse_clause.c:3655
+#, c-format
+msgid "Cast the offset value to an appropriate type."
+msgstr "将偏移值强制转换为适当的类型."
+
+#: parser/parse_clause.c:3660
+#, c-format
+msgid "RANGE with offset PRECEDING/FOLLOWING has multiple interpretations for column type %s and offset type %s"
+msgstr "偏移量在PRECEDING/FOLLOWING的范围对列类型%s和偏移量类型%s有多个解释"
+
+#: parser/parse_clause.c:3663
+#, c-format
+msgid "Cast the offset value to the exact intended type."
+msgstr "将偏移值强制转换为准确的预期类型."
+
+#: parser/parse_coerce.c:1022 parser/parse_coerce.c:1060
+#: parser/parse_coerce.c:1078 parser/parse_coerce.c:1093
+#: parser/parse_expr.c:2153 parser/parse_expr.c:2741 parser/parse_target.c:961
#, c-format
msgid "cannot cast type %s to %s"
msgstr "无法把类型 %s 转换为 %s"
-#: parser/parse_coerce.c:1004
+#: parser/parse_coerce.c:1063
#, c-format
msgid "Input has too few columns."
msgstr "输入字段太少"
-#: parser/parse_coerce.c:1022
+#: parser/parse_coerce.c:1081
#, c-format
msgid "Cannot cast type %s to %s in column %d."
msgstr "不能把第 %3$d 个字段的类型 %1$s 转换为 %2$s."
-#: parser/parse_coerce.c:1037
+#: parser/parse_coerce.c:1096
#, c-format
msgid "Input has too many columns."
msgstr "输入字段太多"
#. translator: first %s is name of a SQL construct, eg WHERE
-#: parser/parse_coerce.c:1080
+#. translator: first %s is name of a SQL construct, eg LIMIT
+#: parser/parse_coerce.c:1151 parser/parse_coerce.c:1199
#, c-format
-msgid "argument of %s must be type boolean, not type %s"
-msgstr "%s 的参数必需是布尔类型, 而不是 %s 类型"
+msgid "argument of %s must be type %s, not type %s"
+msgstr "%s 的参数必需是类型%s, 而不是类型%s "
#. translator: %s is name of a SQL construct, eg WHERE
#. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:1090 parser/parse_coerce.c:1139
+#: parser/parse_coerce.c:1162 parser/parse_coerce.c:1211
#, c-format
msgid "argument of %s must not return a set"
msgstr "%s 的参数不能返回一个组合"
-#. translator: first %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:1127
-#, c-format
-msgid "argument of %s must be type %s, not type %s"
-msgstr "%s 的参数必需是类型%s, 而不是类型%s "
-
#. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1260
+#: parser/parse_coerce.c:1351
#, c-format
msgid "%s types %s and %s cannot be matched"
msgstr "%s 的类型 %s 和 %s 不匹配"
#. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1327
+#: parser/parse_coerce.c:1418
#, c-format
msgid "%s could not convert type %s to %s"
msgstr "%s 无法转换类型 %s 为 %s"
-#: parser/parse_coerce.c:1629
+#: parser/parse_coerce.c:1720
#, c-format
msgid "arguments declared \"anyelement\" are not all alike"
msgstr "参数声明的 \"anyelement\" 不全相同"
-#: parser/parse_coerce.c:1649
+#: parser/parse_coerce.c:1740
#, c-format
msgid "arguments declared \"anyarray\" are not all alike"
msgstr "参数声明的 \"anyarray\" 不全相同"
-#: parser/parse_coerce.c:1669
+#: parser/parse_coerce.c:1760
#, c-format
msgid "arguments declared \"anyrange\" are not all alike"
msgstr "声明为 \"anyarray\" 的参数不全相同"
-#: parser/parse_coerce.c:1698 parser/parse_coerce.c:1909
-#: parser/parse_coerce.c:1943
-#, c-format
-msgid "argument declared \"anyarray\" is not an array but type %s"
-msgstr "参数声明的 \"anyarray\" 不是一个数组, 但是类型为 %s"
-
-#: parser/parse_coerce.c:1714
+#: parser/parse_coerce.c:1789 parser/parse_coerce.c:2004
+#: parser/parse_coerce.c:2038
#, c-format
-msgid ""
-"argument declared \"anyarray\" is not consistent with argument declared "
-"\"anyelement\""
-msgstr "参数声明的 \"anyarray\" 和参数声明的 \"anyelement\" 不一致"
+msgid "argument declared %s is not an array but type %s"
+msgstr "参数声明%s不是一个数组, 但是类型为 %s"
-#: parser/parse_coerce.c:1735 parser/parse_coerce.c:1956
+#: parser/parse_coerce.c:1805 parser/parse_coerce.c:1844
#, c-format
-msgid "argument declared \"anyrange\" is not a range type but type %s"
-msgstr "声æ\98\8e为 \"anyarray\" ç\9a\84å\8f\82æ\95°ç\9a\84ç±»å\9e\8bä¸\8dæ\98¯è\8c\83å\9b´ç±»å\9e\8b, å\85¶ç±»å\9e\8b为 %s"
+msgid "argument declared %s is not consistent with argument declared %s"
+msgstr "å\8f\82æ\95°å£°æ\98\8e%s å\92\8cå\8f\82æ\95°å£°æ\98\8e%s ä¸\8dä¸\80è\87´"
-#: parser/parse_coerce.c:1751
+#: parser/parse_coerce.c:1827 parser/parse_coerce.c:2051
#, c-format
-msgid ""
-"argument declared \"anyrange\" is not consistent with argument declared "
-"\"anyelement\""
-msgstr "声明为 \"anyarray\" 的参数和声明为 \"anyelement\"的参数 不一致"
+msgid "argument declared %s is not a range type but type %s"
+msgstr "声明为%s的参数的类型不是范围类型, 其类型为 %s"
-#: parser/parse_coerce.c:1771
+#: parser/parse_coerce.c:1865
#, c-format
-msgid "could not determine polymorphic type because input has type \"unknown\""
-msgstr "无法确定多态类型, 因为输入类型为 \"unknown\""
+msgid "could not determine polymorphic type because input has type %s"
+msgstr "无法确定多态类型, 因为输入类型为%s"
-#: parser/parse_coerce.c:1781
+#: parser/parse_coerce.c:1876
#, c-format
msgid "type matched to anynonarray is an array type: %s"
msgstr "与anynonarray匹配的类型是一个数组类型:%s"
-#: parser/parse_coerce.c:1791
+#: parser/parse_coerce.c:1886
#, c-format
msgid "type matched to anyenum is not an enum type: %s"
msgstr "匹配anyenum的类型不是枚举类型:%s"
-#: parser/parse_coerce.c:1831 parser/parse_coerce.c:1861
+#: parser/parse_coerce.c:1926 parser/parse_coerce.c:1956
#, c-format
msgid "could not find range type for data type %s"
msgstr "无法为数据类型 %s 找到范围类型"
#: parser/parse_collate.c:228 parser/parse_collate.c:475
-#: parser/parse_collate.c:986
+#: parser/parse_collate.c:981
#, c-format
msgid "collation mismatch between implicit collations \"%s\" and \"%s\""
msgstr "排序名:\"%s\" 和 \"%s\"之间的排序规则不匹配"
#: parser/parse_collate.c:231 parser/parse_collate.c:478
-#: parser/parse_collate.c:989
+#: parser/parse_collate.c:984
#, c-format
-msgid ""
-"You can choose the collation by applying the COLLATE clause to one or both "
-"expressions."
+msgid "You can choose the collation by applying the COLLATE clause to one or both expressions."
msgstr "通过对一个或两个表达式应用 COLLATE 子句来选择排序规则."
-#: parser/parse_collate.c:834
+#: parser/parse_collate.c:831
#, c-format
msgid "collation mismatch between explicit collations \"%s\" and \"%s\""
msgstr "排序名:\"%s\" 和 \"%s\"之间的排序规则不匹配"
#: parser/parse_cte.c:42
#, c-format
-msgid ""
-"recursive reference to query \"%s\" must not appear within its non-recursive "
-"term"
+msgid "recursive reference to query \"%s\" must not appear within its non-recursive term"
msgstr "对查询 \"%s\" 的递归引用不能出现在它的非递归形式中"
#: parser/parse_cte.c:44
#: parser/parse_cte.c:46
#, c-format
-msgid ""
-"recursive reference to query \"%s\" must not appear within an outer join"
+msgid "recursive reference to query \"%s\" must not appear within an outer join"
msgstr "对查询 \"%s\" 的递归引用不能出现在外连接中"
#: parser/parse_cte.c:48
#: parser/parse_cte.c:264
#, c-format
-msgid ""
-"WITH clause containing a data-modifying statement must be at the top level"
+msgid "WITH clause containing a data-modifying statement must be at the top level"
msgstr "包含修改数据的WITH子句只能在最上层出现"
#: parser/parse_cte.c:313
#, c-format
-msgid ""
-"recursive query \"%s\" column %d has type %s in non-recursive term but type "
-"%s overall"
+msgid "recursive query \"%s\" column %d has type %s in non-recursive term but type %s overall"
msgstr "递归查询\"%s\"的列%d在非递归术语中的类型是%s,但是全部类型都是%s"
#: parser/parse_cte.c:319
#: parser/parse_cte.c:324
#, c-format
-msgid ""
-"recursive query \"%s\" column %d has collation \"%s\" in non-recursive term "
-"but collation \"%s\" overall"
-msgstr ""
-"递归查询\"%s\"的列%d在非递归术语中应有排序规则\"%s\",但是其排序规则都是%s"
+msgid "recursive query \"%s\" column %d has collation \"%s\" in non-recursive term but collation \"%s\" overall"
+msgstr "递归查询\"%s\"的列%d在非递归术语中应有排序规则\"%s\",但是其排序规则都是%s"
#: parser/parse_cte.c:328
#, c-format
msgid "Use the COLLATE clause to set the collation of the non-recursive term."
msgstr "使用COLLATE子句设置非递归项的排序规则."
-#: parser/parse_cte.c:419
+#: parser/parse_cte.c:418
#, c-format
msgid "WITH query \"%s\" has %d columns available but %d columns specified"
msgstr "WITH 查询\"%s\"有%d个有效字段, 但只指定了%d个字段"
-#: parser/parse_cte.c:599
+#: parser/parse_cte.c:598
#, c-format
msgid "mutual recursion between WITH items is not implemented"
msgstr "没有实现在WITH成员之间的相互递归引用"
-#: parser/parse_cte.c:651
+#: parser/parse_cte.c:650
#, c-format
msgid "recursive query \"%s\" must not contain data-modifying statements"
msgstr "递归查询 \"%s\" 不能包含数据修改语句"
-#: parser/parse_cte.c:659
+#: parser/parse_cte.c:658
#, c-format
-msgid ""
-"recursive query \"%s\" does not have the form non-recursive-term UNION [ALL] "
-"recursive-term"
+msgid "recursive query \"%s\" does not have the form non-recursive-term UNION [ALL] recursive-term"
msgstr "递归查询\"%s\"没有非递归术语UNION [ALL]递归术语这种形式"
-#: parser/parse_cte.c:703
+#: parser/parse_cte.c:702
#, c-format
msgid "ORDER BY in a recursive query is not implemented"
msgstr "在递归查询中没有实现ORDER BY "
-#: parser/parse_cte.c:709
+#: parser/parse_cte.c:708
#, c-format
msgid "OFFSET in a recursive query is not implemented"
msgstr "在递归查询终未实现OFFSET"
-#: parser/parse_cte.c:715
+#: parser/parse_cte.c:714
#, c-format
msgid "LIMIT in a recursive query is not implemented"
msgstr "在递归查询终的未实现LIMIT"
-#: parser/parse_cte.c:721
+#: parser/parse_cte.c:720
#, c-format
msgid "FOR UPDATE/SHARE in a recursive query is not implemented"
msgstr "在递归查询中没有实现FOR UPDATE/SHARE "
-#: parser/parse_cte.c:778
+#: parser/parse_cte.c:777
#, c-format
msgid "recursive reference to query \"%s\" must not appear more than once"
msgstr "对查询\"%s\"的递归引用不能出现多次"
-#: parser/parse_expr.c:387 parser/parse_relation.c:3083
-#: parser/parse_relation.c:3103
+#: parser/parse_expr.c:350
+#, c-format
+msgid "DEFAULT is not allowed in this context"
+msgstr "此上下文中不允许使用默认值"
+
+#: parser/parse_expr.c:403 parser/parse_relation.c:3287
+#: parser/parse_relation.c:3307
#, c-format
msgid "column %s.%s does not exist"
msgstr "字段 %s.%s 不存在"
-#: parser/parse_expr.c:399
+#: parser/parse_expr.c:415
#, c-format
msgid "column \"%s\" not found in data type %s"
msgstr "在数据类型 %2$s 中未找到字段 \"%1$s\""
-#: parser/parse_expr.c:405
+#: parser/parse_expr.c:421
#, c-format
msgid "could not identify column \"%s\" in record data type"
msgstr "在记录数据类型中无法确认字段 \"%s\""
-#: parser/parse_expr.c:411
+#: parser/parse_expr.c:427
#, c-format
msgid "column notation .%s applied to type %s, which is not a composite type"
msgstr "将列符号.%s应用到类型%s(这个类型不是组合类型)"
-#: parser/parse_expr.c:441 parser/parse_target.c:660
+#: parser/parse_expr.c:458 parser/parse_target.c:728
#, c-format
msgid "row expansion via \"*\" is not supported here"
msgstr "不支持通过\"*\"实现的记录扩展"
-#: parser/parse_expr.c:767 parser/parse_relation.c:667
-#: parser/parse_relation.c:767 parser/parse_target.c:1109
+#: parser/parse_expr.c:771 parser/parse_relation.c:689
+#: parser/parse_relation.c:789 parser/parse_target.c:1199
#, c-format
msgid "column reference \"%s\" is ambiguous"
msgstr "字段关联 \"%s\" 是不明确的"
-#: parser/parse_expr.c:823 parser/parse_param.c:110 parser/parse_param.c:142
+#: parser/parse_expr.c:827 parser/parse_param.c:110 parser/parse_param.c:142
#: parser/parse_param.c:199 parser/parse_param.c:298
#, c-format
msgid "there is no parameter $%d"
msgstr "没有参数 $%d"
-#: parser/parse_expr.c:1034
+#: parser/parse_expr.c:1070
#, c-format
msgid "NULLIF requires = operator to yield boolean"
msgstr "在NULLIF操作中需要等号操作符来产生布尔类型的返回值"
-#: parser/parse_expr.c:1697
+#. translator: %s is name of a SQL construct, eg NULLIF
+#: parser/parse_expr.c:1076 parser/parse_expr.c:3057
+#, c-format
+msgid "%s must not return a set"
+msgstr "%s 不能返回一个组合"
+
+#: parser/parse_expr.c:1524 parser/parse_expr.c:1556
+#, c-format
+msgid "number of columns does not match number of values"
+msgstr "列的数量与值的数量不匹配"
+
+#: parser/parse_expr.c:1570
+#, c-format
+msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() expression"
+msgstr "多列更新项的源必须是sub-SELECT或 ROW()表达式"
+
+#. translator: %s is name of a SQL construct, eg GROUP BY
+#: parser/parse_expr.c:1764 parser/parse_expr.c:2244 parser/parse_func.c:2391
+#, c-format
+msgid "set-returning functions are not allowed in %s"
+msgstr "返回集合函数不允许出现在%s中"
+
+#: parser/parse_expr.c:1825
msgid "cannot use subquery in check constraint"
msgstr "在检查约束中不可以使用子查询"
-#: parser/parse_expr.c:1701
+#: parser/parse_expr.c:1829
msgid "cannot use subquery in DEFAULT expression"
msgstr "DEFAULT表达式中不能使用子查询"
-#: parser/parse_expr.c:1704
+#: parser/parse_expr.c:1832
msgid "cannot use subquery in index expression"
msgstr "索引表达式中不能使用子查询"
-#: parser/parse_expr.c:1707
+#: parser/parse_expr.c:1835
msgid "cannot use subquery in index predicate"
msgstr "索引声明中不能使用子查询"
-#: parser/parse_expr.c:1710
+#: parser/parse_expr.c:1838
msgid "cannot use subquery in transform expression"
msgstr "在转换表达式中不能使用子查询"
-#: parser/parse_expr.c:1713
+#: parser/parse_expr.c:1841
msgid "cannot use subquery in EXECUTE parameter"
msgstr "在 EXECUTE 参数中不可以使用子查询"
-#: parser/parse_expr.c:1716
+#: parser/parse_expr.c:1844
msgid "cannot use subquery in trigger WHEN condition"
msgstr "在触发器的WHEN条件中无法使用子查询"
-#: parser/parse_expr.c:1770
+#: parser/parse_expr.c:1847
+msgid "cannot use subquery in partition key expression"
+msgstr "分区键表达式中不能使用子查询"
+
+#: parser/parse_expr.c:1850
+msgid "cannot use subquery in CALL argument"
+msgstr "在 CALL 参数中不可以使用子查询"
+
+#: parser/parse_expr.c:1903
#, c-format
msgid "subquery must return only one column"
msgstr "子查询必须只能返回一个字段"
-#: parser/parse_expr.c:1854
+#: parser/parse_expr.c:1987
#, c-format
msgid "subquery has too many columns"
msgstr "子查询有太多的字段"
-#: parser/parse_expr.c:1859
+#: parser/parse_expr.c:1992
#, c-format
msgid "subquery has too few columns"
msgstr "子查询字段太少"
-#: parser/parse_expr.c:1955
+#: parser/parse_expr.c:2093
#, c-format
msgid "cannot determine type of empty array"
msgstr "无法确定空数组的类型"
-#: parser/parse_expr.c:1956
+#: parser/parse_expr.c:2094
#, c-format
msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]."
msgstr "显式地将值指派为期望类型,例如ARRAY[]::integer[]."
-#: parser/parse_expr.c:1970
+#: parser/parse_expr.c:2108
#, c-format
msgid "could not find element type for data type %s"
msgstr "无法为数据类型%s找到成员类型"
-#: parser/parse_expr.c:2193
+#: parser/parse_expr.c:2395
#, c-format
msgid "unnamed XML attribute value must be a column reference"
msgstr "未命名的XML属性值必须是一个列引用"
-#: parser/parse_expr.c:2194
+#: parser/parse_expr.c:2396
#, c-format
msgid "unnamed XML element value must be a column reference"
msgstr "未命名的XML成员值必须是一个列引用"
-#: parser/parse_expr.c:2209
+#: parser/parse_expr.c:2411
#, c-format
msgid "XML attribute name \"%s\" appears more than once"
msgstr "XML属性名称\"%s\"出现多次"
-#: parser/parse_expr.c:2316
+#: parser/parse_expr.c:2518
#, c-format
msgid "cannot cast XMLSERIALIZE result to %s"
msgstr "无法把XMLSERIALIZE强制转换为%s"
-#: parser/parse_expr.c:2601 parser/parse_expr.c:2797
+#: parser/parse_expr.c:2814 parser/parse_expr.c:3010
#, c-format
msgid "unequal number of entries in row expressions"
msgstr "在记录表达式中,项的数量不相等"
-#: parser/parse_expr.c:2611
+#: parser/parse_expr.c:2824
#, c-format
msgid "cannot compare rows of zero length"
msgstr "无法比较零长度的记录"
-#: parser/parse_expr.c:2636
+#: parser/parse_expr.c:2849
#, c-format
msgid "row comparison operator must yield type boolean, not type %s"
msgstr "行比较操作符必需返回布尔类型, 而不是类型%s"
-#: parser/parse_expr.c:2643
+#: parser/parse_expr.c:2856
#, c-format
msgid "row comparison operator must not return a set"
msgstr "行比较操作符不能返回一个集合"
-#: parser/parse_expr.c:2702 parser/parse_expr.c:2743
+#: parser/parse_expr.c:2915 parser/parse_expr.c:2956
#, c-format
msgid "could not determine interpretation of row comparison operator %s"
msgstr "无法确定行比较操作符%s的说明"
-#: parser/parse_expr.c:2704
+#: parser/parse_expr.c:2917
#, c-format
-msgid ""
-"Row comparison operators must be associated with btree operator families."
+msgid "Row comparison operators must be associated with btree operator families."
msgstr "记录比较表达式必须与btree操作符相关联."
-#: parser/parse_expr.c:2745
+#: parser/parse_expr.c:2958
#, c-format
msgid "There are multiple equally-plausible candidates."
msgstr "有多个相等的类似候选."
-#: parser/parse_expr.c:2837
+#: parser/parse_expr.c:3051
#, c-format
msgid "IS DISTINCT FROM requires = operator to yield boolean"
msgstr "IS DISTINCT FROM操作中需要等号来产生布尔类型的值"
-#: parser/parse_expr.c:3127 parser/parse_expr.c:3145
+#: parser/parse_expr.c:3370 parser/parse_expr.c:3388
#, c-format
msgid "operator precedence change: %s is now lower precedence than %s"
msgstr "操作符优先级改变:%s现在比%s的优先级低"
-#: parser/parse_func.c:174
+#: parser/parse_func.c:185
#, c-format
msgid "argument name \"%s\" used more than once"
msgstr "参数名称\"%s\"被使用多次"
-#: parser/parse_func.c:185
+#: parser/parse_func.c:196
#, c-format
msgid "positional argument cannot follow named argument"
msgstr "已确定位置的参数不能在已命名参数的后面"
-#: parser/parse_func.c:270
+#: parser/parse_func.c:278 parser/parse_func.c:2184
+#, c-format
+msgid "%s is not a procedure"
+msgstr "%s 不是过程"
+
+#: parser/parse_func.c:282
+#, c-format
+msgid "To call a function, use SELECT."
+msgstr "要调用函数,请使用SELECT."
+
+#: parser/parse_func.c:288
+#, c-format
+msgid "%s is a procedure"
+msgstr "%s 是一个过程"
+
+#: parser/parse_func.c:292
+#, c-format
+msgid "To call a procedure, use CALL."
+msgstr "要调用过程,请使用CALL"
+
+#: parser/parse_func.c:306
#, c-format
msgid "%s(*) specified, but %s is not an aggregate function"
msgstr "指定了 %s(*), 但是 %s 不是一个聚合函数"
-#: parser/parse_func.c:277
+#: parser/parse_func.c:313
#, c-format
msgid "DISTINCT specified, but %s is not an aggregate function"
msgstr "指定了 DISTINCT, 但是 %s 不是一个聚合函数"
-#: parser/parse_func.c:283
+#: parser/parse_func.c:319
#, c-format
msgid "WITHIN GROUP specified, but %s is not an aggregate function"
msgstr "指定了 WITHIN GROUP , 但是 %s 不是一个聚合函数"
-#: parser/parse_func.c:289
+#: parser/parse_func.c:325
#, c-format
msgid "ORDER BY specified, but %s is not an aggregate function"
msgstr "指定了ORDER BY语句, 但是%s不是一个聚合函数"
-#: parser/parse_func.c:295
+#: parser/parse_func.c:331
#, c-format
msgid "FILTER specified, but %s is not an aggregate function"
msgstr "FILTER指定了, 但是 %s 不是一个聚合函数"
-#: parser/parse_func.c:301
+#: parser/parse_func.c:337
#, c-format
-msgid ""
-"OVER specified, but %s is not a window function nor an aggregate function"
+msgid "OVER specified, but %s is not a window function nor an aggregate function"
msgstr "指定了OVER关键字,但是%s不是窗口函数或聚合函数"
-#: parser/parse_func.c:331
+#: parser/parse_func.c:375
#, c-format
msgid "WITHIN GROUP is required for ordered-set aggregate %s"
msgstr "WITHIN GROUP在有序聚集函数 %s中是必需的"
-#: parser/parse_func.c:337
+#: parser/parse_func.c:381
#, c-format
msgid "OVER is not supported for ordered-set aggregate %s"
msgstr "OVER不能用于有序聚集函数 %s中"
-#: parser/parse_func.c:368 parser/parse_func.c:397
+#: parser/parse_func.c:412 parser/parse_func.c:441
#, c-format
-msgid ""
-"There is an ordered-set aggregate %s, but it requires %d direct arguments, "
-"not %d."
+msgid "There is an ordered-set aggregate %s, but it requires %d direct arguments, not %d."
msgstr "存在有序聚集函数 %s, 它需要 %d 个直接参数, 不是 %d个."
-#: parser/parse_func.c:422
+#: parser/parse_func.c:466
#, c-format
-msgid ""
-"To use the hypothetical-set aggregate %s, the number of hypothetical direct "
-"arguments (here %d) must match the number of ordering columns (here %d)."
-msgstr ""
-"使用判定集聚集函数 %s, 直接参数的个数 (这里是 %d) 必须与有序列的数目相匹配 "
-"(这里是 %d)."
+msgid "To use the hypothetical-set aggregate %s, the number of hypothetical direct arguments (here %d) must match the number of ordering columns (here %d)."
+msgstr "使用判定集聚集函数 %s, 直接参数的个数 (这里是 %d) 必须与有序列的数目相匹配 (这里是 %d)."
-#: parser/parse_func.c:436
+#: parser/parse_func.c:480
#, c-format
-msgid ""
-"There is an ordered-set aggregate %s, but it requires at least %d direct "
-"arguments."
+msgid "There is an ordered-set aggregate %s, but it requires at least %d direct arguments."
msgstr "存在有序集聚集函数%s, 它至少需要%d个直接参数."
-#: parser/parse_func.c:455
+#: parser/parse_func.c:499
#, c-format
msgid "%s is not an ordered-set aggregate, so it cannot have WITHIN GROUP"
msgstr "%s 不是有序集聚集函数, 因此它不能使用 WITHIN GROUP"
-#: parser/parse_func.c:468
+#: parser/parse_func.c:512
#, c-format
msgid "window function %s requires an OVER clause"
msgstr "窗口函数 %s需要一个OVER子句"
-#: parser/parse_func.c:475
+#: parser/parse_func.c:519
#, c-format
msgid "window function %s cannot have WITHIN GROUP"
msgstr "窗口函数%s不能使用WITHIN GROUP子句"
-#: parser/parse_func.c:496
+#: parser/parse_func.c:548
+#, c-format
+msgid "procedure %s is not unique"
+msgstr "过程 %s 不是唯一的"
+
+#: parser/parse_func.c:551
+#, c-format
+msgid "Could not choose a best candidate procedure. You might need to add explicit type casts."
+msgstr "无法选择最佳候选过程. 您也许需要增加显式的类型转换."
+
+#: parser/parse_func.c:557
#, c-format
msgid "function %s is not unique"
msgstr "函数 %s 不是唯一的"
-#: parser/parse_func.c:499
+#: parser/parse_func.c:560
#, c-format
-msgid ""
-"Could not choose a best candidate function. You might need to add explicit "
-"type casts."
+msgid "Could not choose a best candidate function. You might need to add explicit type casts."
msgstr "无法选择最佳候选函数. 你也许需要增加明确的类型转换."
-#: parser/parse_func.c:510
+#: parser/parse_func.c:599
#, c-format
-msgid ""
-"No aggregate function matches the given name and argument types. Perhaps you "
-"misplaced ORDER BY; ORDER BY must appear after all regular arguments of the "
-"aggregate."
-msgstr ""
-"没有匹配指定名称和参数类型的函数. 您可能将ORDER BY子句放在了不正确的位置;"
-"ORDER BY子句必须出现在所有聚合函数的常规参数的后面."
+msgid "No aggregate function matches the given name and argument types. Perhaps you misplaced ORDER BY; ORDER BY must appear after all regular arguments of the aggregate."
+msgstr "没有匹配指定名称和参数类型的函数. 您可能将ORDER BY子句放在了不正确的位置;ORDER BY子句必须出现在所有聚合函数的常规参数的后面."
-#: parser/parse_func.c:521
+#: parser/parse_func.c:607 parser/parse_func.c:2172
#, c-format
-msgid ""
-"No function matches the given name and argument types. You might need to add "
-"explicit type casts."
+msgid "procedure %s does not exist"
+msgstr "过程 %s 不存在"
+
+#: parser/parse_func.c:610
+#, c-format
+msgid "No procedure matches the given name and argument types. You might need to add explicit type casts."
+msgstr "没有匹配指定名称和参数类型的过程. 您也许需要增加明确的类型转换."
+
+#: parser/parse_func.c:619
+#, c-format
+msgid "No function matches the given name and argument types. You might need to add explicit type casts."
msgstr "没有匹配指定名称和参数类型的函数. 您也许需要增加明确的类型转换."
-#: parser/parse_func.c:623
+#: parser/parse_func.c:721
#, c-format
msgid "VARIADIC argument must be an array"
msgstr "参数VARIADIC 必须是一个数组"
-#: parser/parse_func.c:669 parser/parse_func.c:733
+#: parser/parse_func.c:773 parser/parse_func.c:837
#, c-format
msgid "%s(*) must be used to call a parameterless aggregate function"
msgstr "%s(*)必须用来调用没有参数的聚合函数"
-#: parser/parse_func.c:676
+#: parser/parse_func.c:780
#, c-format
msgid "aggregates cannot return sets"
msgstr "聚合函数可以不返回集合"
-#: parser/parse_func.c:691
+#: parser/parse_func.c:795
#, c-format
msgid "aggregates cannot use named arguments"
msgstr "聚合函数不能使用已命名的参数"
-#: parser/parse_func.c:723
+#: parser/parse_func.c:827
#, c-format
msgid "DISTINCT is not implemented for window functions"
msgstr "对于窗口函数,没有实现DISTINCT"
-#: parser/parse_func.c:743
+#: parser/parse_func.c:847
#, c-format
msgid "aggregate ORDER BY is not implemented for window functions"
msgstr "对于窗口函数,没有实现在按照聚合函数进行ORDER BY操作的功能"
-#: parser/parse_func.c:752
+#: parser/parse_func.c:856
#, c-format
msgid "FILTER is not implemented for non-aggregate window functions"
msgstr "FILTER在非聚合窗口函数里并未被实现"
-#: parser/parse_func.c:758
+#: parser/parse_func.c:865
+#, c-format
+msgid "window function calls cannot contain set-returning function calls"
+msgstr "窗口函数调用不能包含返回集合函数的调用"
+
+#: parser/parse_func.c:873
#, c-format
msgid "window functions cannot return sets"
msgstr "窗口函数不能返回集合"
-#: parser/parse_func.c:2008
+#: parser/parse_func.c:2059
+#, c-format
+msgid "function name \"%s\" is not unique"
+msgstr "函数名 \"%s\" 不是唯一的"
+
+#: parser/parse_func.c:2061
+#, c-format
+msgid "Specify the argument list to select the function unambiguously."
+msgstr "指定参数列表以明确选择函数"
+
+#: parser/parse_func.c:2071
+#, c-format
+msgid "could not find a function named \"%s\""
+msgstr "无法找到函数名\"%s\""
+
+#: parser/parse_func.c:2153
+#, c-format
+msgid "%s is not a function"
+msgstr "%s 不是一个函数"
+
+#: parser/parse_func.c:2167
+#, c-format
+msgid "could not find a procedure named \"%s\""
+msgstr "找不到名为\"%s\"的过程"
+
+# describe.c:641
+#: parser/parse_func.c:2198
+#, c-format
+msgid "could not find an aggregate named \"%s\""
+msgstr "找不到名为\"%s\"的聚合"
+
+#: parser/parse_func.c:2203
#, c-format
msgid "aggregate %s(*) does not exist"
msgstr "聚合函数 %s(*) 不存在"
-#: parser/parse_func.c:2013
+#: parser/parse_func.c:2208
#, c-format
msgid "aggregate %s does not exist"
msgstr "聚合函数 %s(*) 不存在"
-#: parser/parse_func.c:2032
+#: parser/parse_func.c:2221
#, c-format
msgid "function %s is not an aggregate"
msgstr "函数 \"%s\" 不是一个聚合函数"
-#: parser/parse_node.c:84
+#: parser/parse_func.c:2271
+msgid "set-returning functions are not allowed in JOIN conditions"
+msgstr "返回集合函数不允许出现在JOIN条件中"
+
+#: parser/parse_func.c:2292
+msgid "set-returning functions are not allowed in policy expressions"
+msgstr "策略表达式中不允许返回集合函数"
+
+#: parser/parse_func.c:2308
+msgid "set-returning functions are not allowed in window definitions"
+msgstr "返回集合函数不允许出现在窗口定义中"
+
+#: parser/parse_func.c:2346
+msgid "set-returning functions are not allowed in check constraints"
+msgstr "返回集合函数不允许出现在check约束中"
+
+#: parser/parse_func.c:2350
+msgid "set-returning functions are not allowed in DEFAULT expressions"
+msgstr "返回集合函数不允许出现在DEFAULT表达式中"
+
+#: parser/parse_func.c:2353
+msgid "set-returning functions are not allowed in index expressions"
+msgstr "在返回集合函数不允许出现在索引表达式中"
+
+#: parser/parse_func.c:2356
+msgid "set-returning functions are not allowed in index predicates"
+msgstr "返回函数集合不允许出现在索引判定子句中"
+
+#: parser/parse_func.c:2359
+msgid "set-returning functions are not allowed in transform expressions"
+msgstr "返回集合函数不允许出现在转换表达式中"
+
+#: parser/parse_func.c:2362
+msgid "set-returning functions are not allowed in EXECUTE parameters"
+msgstr "返回集合函数不允许出现在EXECUTE参数中"
+
+#: parser/parse_func.c:2365
+msgid "set-returning functions are not allowed in trigger WHEN conditions"
+msgstr "返回集合函数不允许出现在触发器WHEN条件中"
+
+#: parser/parse_func.c:2368
+msgid "set-returning functions are not allowed in partition key expressions"
+msgstr "在返回集合函数不允许出现在分区键表达式中"
+
+#: parser/parse_func.c:2371
+msgid "set-returning functions are not allowed in CALL arguments"
+msgstr "返回集合函数不允许出现在CALL参数中"
+
+#: parser/parse_node.c:87
#, c-format
msgid "target lists can have at most %d entries"
msgstr "目标列表最多可以有 %d 个字段"
-#: parser/parse_node.c:253
+#: parser/parse_node.c:256
#, c-format
msgid "cannot subscript type %s because it is not an array"
msgstr "无法下标类型 %s, 因为它不是一个数组"
-#: parser/parse_node.c:356 parser/parse_node.c:393
+#: parser/parse_node.c:358 parser/parse_node.c:395
#, c-format
msgid "array subscript must have type integer"
msgstr "数组下标必须为整数类型"
-#: parser/parse_node.c:424
+#: parser/parse_node.c:426
#, c-format
msgid "array assignment requires type %s but expression is of type %s"
msgstr "数组分配要求类型%s,但是表达式属于类型%s"
-#: parser/parse_oper.c:125 parser/parse_oper.c:722 utils/adt/regproc.c:583
-#: utils/adt/regproc.c:603 utils/adt/regproc.c:787
+#: parser/parse_oper.c:125 parser/parse_oper.c:724 utils/adt/regproc.c:520
+#: utils/adt/regproc.c:704
#, c-format
msgid "operator does not exist: %s"
msgstr "操作符不存在: %s"
-#: parser/parse_oper.c:222
+#: parser/parse_oper.c:224
#, c-format
msgid "Use an explicit ordering operator or modify the query."
msgstr "使用显式操作符或修改查询"
-#: parser/parse_oper.c:226 utils/adt/array_userfuncs.c:782
-#: utils/adt/array_userfuncs.c:920 utils/adt/arrayfuncs.c:3639
-#: utils/adt/arrayfuncs.c:4077 utils/adt/arrayfuncs.c:6055
-#: utils/adt/rowtypes.c:1167
-#, c-format
-msgid "could not identify an equality operator for type %s"
-msgstr "无法为类型%s识别等于操作符"
-
-#: parser/parse_oper.c:478
+#: parser/parse_oper.c:480
#, c-format
msgid "operator requires run-time type coercion: %s"
msgstr "操作符需要运行时类型强制: %s"
-#: parser/parse_oper.c:714
+#: parser/parse_oper.c:716
#, c-format
msgid "operator is not unique: %s"
msgstr "操作符不是唯一的: %s"
-#: parser/parse_oper.c:716
+#: parser/parse_oper.c:718
#, c-format
-msgid ""
-"Could not choose a best candidate operator. You might need to add explicit "
-"type casts."
+msgid "Could not choose a best candidate operator. You might need to add explicit type casts."
msgstr "无法选择最佳候选操作符. 您也许需要增加显式的类型转换."
-#: parser/parse_oper.c:724
+#: parser/parse_oper.c:727
#, c-format
-msgid ""
-"No operator matches the given name and argument type(s). You might need to "
-"add explicit type casts."
+msgid "No operator matches the given name and argument type. You might need to add an explicit type cast."
+msgstr "没有匹配指定名称和参数类型的操作符. 您也许需要增加明确的类型转换."
+
+#: parser/parse_oper.c:729
+#, c-format
+msgid "No operator matches the given name and argument types. You might need to add explicit type casts."
msgstr "没有匹配指定名称和参数类型的操作符. 您也许需要增加明确的类型转换."
-#: parser/parse_oper.c:783 parser/parse_oper.c:897
+#: parser/parse_oper.c:790 parser/parse_oper.c:912
#, c-format
msgid "operator is only a shell: %s"
msgstr "操作符只是一个shell: %s"
-#: parser/parse_oper.c:885
+#: parser/parse_oper.c:900
#, c-format
msgid "op ANY/ALL (array) requires array on right side"
msgstr "操作符ANY/ALL (array)要求数组在右边"
-#: parser/parse_oper.c:927
+#: parser/parse_oper.c:942
#, c-format
msgid "op ANY/ALL (array) requires operator to yield boolean"
msgstr "操作ANY/ALL (array)需要产生布尔值的操作符."
-#: parser/parse_oper.c:932
+#: parser/parse_oper.c:947
#, c-format
msgid "op ANY/ALL (array) requires operator not to return a set"
msgstr "操作ANY/ALL (array)需要不返回集合的操作符"
msgid "inconsistent types deduced for parameter $%d"
msgstr "对于参数$%d,推断出不一致的类型"
-#: parser/parse_relation.c:174
+#: parser/parse_relation.c:176
#, c-format
msgid "table reference \"%s\" is ambiguous"
msgstr "表关联 \"%s\" 是不明确的"
-#: parser/parse_relation.c:218
+#: parser/parse_relation.c:220
#, c-format
msgid "table reference %u is ambiguous"
msgstr "表关联 %u 是不明确的"
-#: parser/parse_relation.c:397
+#: parser/parse_relation.c:419
#, c-format
msgid "table name \"%s\" specified more than once"
msgstr "表名 \"%s\" 被指定多次"
-#: parser/parse_relation.c:424 parser/parse_relation.c:3023
+#: parser/parse_relation.c:446 parser/parse_relation.c:3227
#, c-format
msgid "invalid reference to FROM-clause entry for table \"%s\""
msgstr "对于表 \"%s\"的FROM子句项的引用无效 "
-#: parser/parse_relation.c:427 parser/parse_relation.c:3028
+#: parser/parse_relation.c:449 parser/parse_relation.c:3232
#, c-format
-msgid ""
-"There is an entry for table \"%s\", but it cannot be referenced from this "
-"part of the query."
+msgid "There is an entry for table \"%s\", but it cannot be referenced from this part of the query."
msgstr "这里有一个对于表\"%s\"的项,但是不能从查询的这个部分中引用."
-#: parser/parse_relation.c:429
+#: parser/parse_relation.c:451
#, c-format
msgid "The combining JOIN type must be INNER or LEFT for a LATERAL reference."
msgstr "在LATERAL引用里,组合的JOIN必须是INNER或LEFT JOIN类型."
-#: parser/parse_relation.c:705
+#: parser/parse_relation.c:727
#, c-format
msgid "system column \"%s\" reference in check constraint is invalid"
msgstr "check约束中的系统列\"%s\"参照是无效的"
-#: parser/parse_relation.c:1065 parser/parse_relation.c:1345
-#: parser/parse_relation.c:1847
+#: parser/parse_relation.c:1086 parser/parse_relation.c:1366
+#: parser/parse_relation.c:1936
#, c-format
msgid "table \"%s\" has %d columns available but %d columns specified"
msgstr "表 \"%s\" 有 %d 个有效字段, 但指定了 %d 个字段"
-#: parser/parse_relation.c:1152
+#: parser/parse_relation.c:1173
#, c-format
-msgid ""
-"There is a WITH item named \"%s\", but it cannot be referenced from this "
-"part of the query."
+msgid "There is a WITH item named \"%s\", but it cannot be referenced from this part of the query."
msgstr "这里有一个名称为\"%s\"的WITH成员,但是不能从查询的这个部分引用它."
-#: parser/parse_relation.c:1154
+#: parser/parse_relation.c:1175
#, c-format
-msgid ""
-"Use WITH RECURSIVE, or re-order the WITH items to remove forward references."
+msgid "Use WITH RECURSIVE, or re-order the WITH items to remove forward references."
msgstr "使用WITH RECURSIVE或重新排序WITH成员来删除前向引用."
-#: parser/parse_relation.c:1465
+#: parser/parse_relation.c:1486
#, c-format
-msgid ""
-"a column definition list is only allowed for functions returning \"record\""
+msgid "a column definition list is only allowed for functions returning \"record\""
msgstr "一个字段定义列表只允许返回 \"record\" 的函数"
-#: parser/parse_relation.c:1474
+#: parser/parse_relation.c:1495
#, c-format
msgid "a column definition list is required for functions returning \"record\""
msgstr "一个字段定义列表需要返回 \"record\" 的函数"
-#: parser/parse_relation.c:1553
+#: parser/parse_relation.c:1575
#, c-format
msgid "function \"%s\" in FROM has unsupported return type %s"
msgstr "FROM 中的函数 \"%s\" 不支持返回类型 %s"
-#: parser/parse_relation.c:1675
+#: parser/parse_relation.c:1764
#, c-format
msgid "VALUES lists \"%s\" have %d columns available but %d columns specified"
msgstr "VALUES列表\"%s\"中有%d列有效, 但指定了%d个列."
-#: parser/parse_relation.c:1730
+#: parser/parse_relation.c:1819
#, c-format
msgid "joins can have at most %d columns"
msgstr "连接最多可以有 %d 个字段"
-#: parser/parse_relation.c:1820
+#: parser/parse_relation.c:1909
#, c-format
msgid "WITH query \"%s\" does not have a RETURNING clause"
msgstr "WITH 查询 \"%s\" 没有RETURNING子句"
-#: parser/parse_relation.c:2652 parser/parse_relation.c:2807
+#: parser/parse_relation.c:2846 parser/parse_relation.c:2884
+#: parser/parse_relation.c:3011
#, c-format
msgid "column %d of relation \"%s\" does not exist"
msgstr "在关系\"%2$s\"中的列 %1$d 不存在"
-#: parser/parse_relation.c:3026
+#: parser/parse_relation.c:3230
#, c-format
msgid "Perhaps you meant to reference the table alias \"%s\"."
msgstr "可能您是要引用表的化名 \"%s\"."
-#: parser/parse_relation.c:3034
+#: parser/parse_relation.c:3238
#, c-format
msgid "missing FROM-clause entry for table \"%s\""
msgstr "对于表\"%s\",丢失FROM子句项"
-#: parser/parse_relation.c:3086
+#: parser/parse_relation.c:3290
#, c-format
msgid "Perhaps you meant to reference the column \"%s.%s\"."
msgstr "也许您想要引用列\"%s.%s\"。"
-#: parser/parse_relation.c:3088
+#: parser/parse_relation.c:3292
#, c-format
-msgid ""
-"There is a column named \"%s\" in table \"%s\", but it cannot be referenced "
-"from this part of the query."
-msgstr ""
-"表\"%2$s\"中存在一列,名为\"%1$s\", 但是这个表名并不能从这部分查询里引用."
+msgid "There is a column named \"%s\" in table \"%s\", but it cannot be referenced from this part of the query."
+msgstr "表\"%2$s\"中存在一列,名为\"%1$s\", 但是这个表名并不能从这部分查询里引用."
-#: parser/parse_relation.c:3105
+#: parser/parse_relation.c:3309
#, c-format
-msgid ""
-"Perhaps you meant to reference the column \"%s.%s\" or the column \"%s.%s\"."
+msgid "Perhaps you meant to reference the column \"%s.%s\" or the column \"%s.%s\"."
msgstr "也许您想要引用列\"%s.%s\"或者列\"%s.%s\"。"
-#: parser/parse_target.c:421 parser/parse_target.c:713
+#: parser/parse_target.c:483 parser/parse_target.c:790
#, c-format
msgid "cannot assign to system column \"%s\""
msgstr "不能指定系统字段名 \"%s\""
-#: parser/parse_target.c:449
+#: parser/parse_target.c:511
#, c-format
msgid "cannot set an array element to DEFAULT"
msgstr "不能设置一个数组元素为 DEFAULT"
-#: parser/parse_target.c:454
+#: parser/parse_target.c:516
#, c-format
msgid "cannot set a subfield to DEFAULT"
msgstr "不能设置子字段为 DEFAULT"
-#: parser/parse_target.c:523
+#: parser/parse_target.c:585
#, c-format
msgid "column \"%s\" is of type %s but expression is of type %s"
msgstr "字段 \"%s\" 的类型为 %s, 但表达式的类型为 %s"
-#: parser/parse_target.c:697
+#: parser/parse_target.c:774
#, c-format
-msgid ""
-"cannot assign to field \"%s\" of column \"%s\" because its type %s is not a "
-"composite type"
-msgstr ""
-"无法指定列 \"%2$s\" 的字段 \"%1$s\", 因为它的类型 %3$s 不是一个复合类型"
+msgid "cannot assign to field \"%s\" of column \"%s\" because its type %s is not a composite type"
+msgstr "无法指定列 \"%2$s\" 的字段 \"%1$s\", 因为它的类型 %3$s 不是一个复合类型"
-#: parser/parse_target.c:706
+#: parser/parse_target.c:783
#, c-format
-msgid ""
-"cannot assign to field \"%s\" of column \"%s\" because there is no such "
-"column in data type %s"
-msgstr ""
-"无法给字段 \"%2$s\" 的数据域 \"%1$s\" 赋值, 因为在数据类型 %3$s 中没有此列"
+msgid "cannot assign to field \"%s\" of column \"%s\" because there is no such column in data type %s"
+msgstr "无法给字段 \"%2$s\" 的数据域 \"%1$s\" 赋值, 因为在数据类型 %3$s 中没有此列"
-#: parser/parse_target.c:773
+#: parser/parse_target.c:860
#, c-format
-msgid ""
-"array assignment to \"%s\" requires type %s but expression is of type %s"
+msgid "array assignment to \"%s\" requires type %s but expression is of type %s"
msgstr "将数组分配给\"%s\" 时需要类型%s,但是表达式属于类型%s"
-#: parser/parse_target.c:783
+#: parser/parse_target.c:870
#, c-format
msgid "subfield \"%s\" is of type %s but expression is of type %s"
msgstr "子字段 \"%s\" 的类型为 %s, 但表达式的类型为 %s"
-#: parser/parse_target.c:1199
+#: parser/parse_target.c:1289
#, c-format
msgid "SELECT * with no tables specified is not valid"
msgstr "SELECT * 没有指定表是无效的"
msgid "type reference %s converted to %s"
msgstr "类型关联 %s 转换为 %s"
-#: parser/parse_type.c:261 parser/parse_type.c:805 utils/cache/typcache.c:239
+#: parser/parse_type.c:261 parser/parse_type.c:838 utils/cache/typcache.c:373
#, c-format
msgid "type \"%s\" is only a shell"
msgstr "类型 \"%s\" 只是一个 shell"
msgid "type modifiers must be simple constants or identifiers"
msgstr "类型修改器必须是简单的常量或标示符."
-#: parser/parse_type.c:671 parser/parse_type.c:770
+#: parser/parse_type.c:704 parser/parse_type.c:803
#, c-format
msgid "invalid type name \"%s\""
msgstr "无效的类型名字 \"%s\""
-#: parser/parse_utilcmd.c:399
+#: parser/parse_utilcmd.c:272
#, c-format
-msgid "array of serial is not implemented"
-msgstr "æ\9cªå®\9eç\8e°åº\8få\8f·æ\95°ç»\84"
+msgid "cannot create partitioned table as inheritance child"
+msgstr "æ\97 æ³\95å°\86å\88\86å\8cºè¡¨å\88\9b建为继æ\89¿å\90级"
-#: parser/parse_utilcmd.c:447
+#: parser/parse_utilcmd.c:448
#, c-format
msgid "%s will create implicit sequence \"%s\" for serial column \"%s.%s\""
msgstr "%1$s 将为 serial 字段 \"%3$s.%4$s\" 创建隐含序列 \"%2$s\""
-#: parser/parse_utilcmd.c:541 parser/parse_utilcmd.c:553
+#: parser/parse_utilcmd.c:571
#, c-format
-msgid ""
-"conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
+msgid "array of serial is not implemented"
+msgstr "未实现序号数组"
+
+#: parser/parse_utilcmd.c:647 parser/parse_utilcmd.c:659
+#, c-format
+msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
msgstr "表 \"%2$s\" 的字段 \"%1$s\" 声明 NULL/NOT NULL 冲突"
-#: parser/parse_utilcmd.c:565
+#: parser/parse_utilcmd.c:671
#, c-format
msgid "multiple default values specified for column \"%s\" of table \"%s\""
msgstr "对表 \"%2$s\" 的字段 \"%1$s\" 指定了多遍默认值"
-#: parser/parse_utilcmd.c:582 parser/parse_utilcmd.c:673
+#: parser/parse_utilcmd.c:688
+#, c-format
+msgid "identity columns are not supported on typed tables"
+msgstr "类型表不支持标识列"
+
+#: parser/parse_utilcmd.c:692
+#, c-format
+msgid "identity columns are not supported on partitions"
+msgstr "分区上不支持标识列"
+
+#: parser/parse_utilcmd.c:701
+#, c-format
+msgid "multiple identity specifications for column \"%s\" of table \"%s\""
+msgstr "表\"%2$s\" 的的字段 \"%1$s\"的多个标识规范"
+
+#: parser/parse_utilcmd.c:724 parser/parse_utilcmd.c:823
#, c-format
msgid "primary key constraints are not supported on foreign tables"
msgstr "外部表上不支持主键约束"
-#: parser/parse_utilcmd.c:591 parser/parse_utilcmd.c:683
+#: parser/parse_utilcmd.c:733 parser/parse_utilcmd.c:833
#, c-format
msgid "unique constraints are not supported on foreign tables"
msgstr "外部表上不支持唯一约束"
-#: parser/parse_utilcmd.c:608 parser/parse_utilcmd.c:707
+#: parser/parse_utilcmd.c:750 parser/parse_utilcmd.c:863
#, c-format
msgid "foreign key constraints are not supported on foreign tables"
msgstr "外部表上不支持外键约束"
-#: parser/parse_utilcmd.c:693
+#: parser/parse_utilcmd.c:778
+#, c-format
+msgid "both default and identity specified for column \"%s\" of table \"%s\""
+msgstr "对表 \"%2$s\" 的字段 \"%1$s\" 指定了默认值和标识"
+
+#: parser/parse_utilcmd.c:843
#, c-format
msgid "exclusion constraints are not supported on foreign tables"
msgstr "外部表上不支持排除约束"
-#: parser/parse_utilcmd.c:757
+#: parser/parse_utilcmd.c:849
+#, c-format
+msgid "exclusion constraints are not supported on partitioned tables"
+msgstr "分区表上不支持排除约束"
+
+#: parser/parse_utilcmd.c:913
#, c-format
msgid "LIKE is not supported for creating foreign tables"
msgstr "LIKE不能用于创建外部表"
-#: parser/parse_utilcmd.c:1288 parser/parse_utilcmd.c:1364
+#: parser/parse_utilcmd.c:1516 parser/parse_utilcmd.c:1623
#, c-format
msgid "Index \"%s\" contains a whole-row table reference."
msgstr "索引 \"%s\" 包含一个整行表引用."
-#: parser/parse_utilcmd.c:1634
+#: parser/parse_utilcmd.c:1973
#, c-format
msgid "cannot use an existing index in CREATE TABLE"
msgstr " CREATE TABLE语句不能使用一个已存在的索引"
-#: parser/parse_utilcmd.c:1654
+#: parser/parse_utilcmd.c:1993
#, c-format
msgid "index \"%s\" is already associated with a constraint"
msgstr "index \"%s\"与某个约束已经关联"
-#: parser/parse_utilcmd.c:1662
+#: parser/parse_utilcmd.c:2001
#, c-format
msgid "index \"%s\" does not belong to table \"%s\""
msgstr "索引 \"%s\" 不属于表\"%s\""
-#: parser/parse_utilcmd.c:1669
+#: parser/parse_utilcmd.c:2008
#, c-format
msgid "index \"%s\" is not valid"
msgstr "索引 \"%s\" 无效"
-#: parser/parse_utilcmd.c:1675
+#: parser/parse_utilcmd.c:2014
#, c-format
msgid "\"%s\" is not a unique index"
msgstr "\"%s\" 不是唯一索引"
-#: parser/parse_utilcmd.c:1676 parser/parse_utilcmd.c:1683
-#: parser/parse_utilcmd.c:1690 parser/parse_utilcmd.c:1760
+#: parser/parse_utilcmd.c:2015 parser/parse_utilcmd.c:2022
+#: parser/parse_utilcmd.c:2029 parser/parse_utilcmd.c:2101
#, c-format
msgid "Cannot create a primary key or unique constraint using such an index."
msgstr "无法使用该索引创建主键或唯一约束."
-#: parser/parse_utilcmd.c:1682
+#: parser/parse_utilcmd.c:2021
#, c-format
msgid "index \"%s\" contains expressions"
msgstr "索引 \"%s\" 含有表达式"
-#: parser/parse_utilcmd.c:1689
+#: parser/parse_utilcmd.c:2028
#, c-format
msgid "\"%s\" is a partial index"
msgstr "\"%s\" 是一个部分索引"
-#: parser/parse_utilcmd.c:1701
+#: parser/parse_utilcmd.c:2040
#, c-format
msgid "\"%s\" is a deferrable index"
msgstr "\"%s\" 不是一个延迟索引"
-#: parser/parse_utilcmd.c:1702
+#: parser/parse_utilcmd.c:2041
#, c-format
msgid "Cannot create a non-deferrable constraint using a deferrable index."
msgstr "无法为使用可延迟索引的约束创建非可延迟约束"
-#: parser/parse_utilcmd.c:1759
+#: parser/parse_utilcmd.c:2100
#, c-format
msgid "index \"%s\" does not have default sorting behavior"
msgstr "索引 \"%s\"没有缺省的排序行为"
-#: parser/parse_utilcmd.c:1906
+#: parser/parse_utilcmd.c:2249
#, c-format
msgid "column \"%s\" appears twice in primary key constraint"
msgstr "在主键约束中字段 \"%s\" 出现了两次"
-#: parser/parse_utilcmd.c:1912
+#: parser/parse_utilcmd.c:2255
#, c-format
msgid "column \"%s\" appears twice in unique constraint"
msgstr "字段 \"%s\" 在唯一约束中出现两次"
-#: parser/parse_utilcmd.c:2116
-#, c-format
-msgid "index expression cannot return a set"
-msgstr "索引表达式不能返回一个集合"
-
-#: parser/parse_utilcmd.c:2127
+#: parser/parse_utilcmd.c:2578
#, c-format
-msgid ""
-"index expressions and predicates can refer only to the table being indexed"
+msgid "index expressions and predicates can refer only to the table being indexed"
msgstr "索引表达式和声明只能指向要建索引的表"
-#: parser/parse_utilcmd.c:2173
+#: parser/parse_utilcmd.c:2624
#, c-format
msgid "rules on materialized views are not supported"
msgstr "物化视图不能使用规则(rules)"
-#: parser/parse_utilcmd.c:2234
+#: parser/parse_utilcmd.c:2685
#, c-format
msgid "rule WHERE condition cannot contain references to other relations"
msgstr "规则的WHERE条件不能包含到其它关系的引用"
-#: parser/parse_utilcmd.c:2306
+#: parser/parse_utilcmd.c:2757
#, c-format
-msgid ""
-"rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE "
-"actions"
+msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE actions"
msgstr "带有WHERE 条件的规则只允许有操作 SELECT, INSERT, UPDATE, 或者 DELETE "
-#: parser/parse_utilcmd.c:2324 parser/parse_utilcmd.c:2423
-#: rewrite/rewriteHandler.c:485 rewrite/rewriteManip.c:1015
+#: parser/parse_utilcmd.c:2775 parser/parse_utilcmd.c:2874
+#: rewrite/rewriteHandler.c:498 rewrite/rewriteManip.c:1015
#, c-format
msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
msgstr "条件工具语句 UNION/INTERSECT/EXCEPT 没有实现"
-#: parser/parse_utilcmd.c:2342
+#: parser/parse_utilcmd.c:2793
#, c-format
msgid "ON SELECT rule cannot use OLD"
msgstr "规则ON SELECT不能使用关键词OLD"
-#: parser/parse_utilcmd.c:2346
+#: parser/parse_utilcmd.c:2797
#, c-format
msgid "ON SELECT rule cannot use NEW"
msgstr "规则ON SELECT不能使用关键词NEW"
-#: parser/parse_utilcmd.c:2355
+#: parser/parse_utilcmd.c:2806
#, c-format
msgid "ON INSERT rule cannot use OLD"
msgstr "规则ON INSERT不能使用关键词OLD"
-#: parser/parse_utilcmd.c:2361
+#: parser/parse_utilcmd.c:2812
#, c-format
msgid "ON DELETE rule cannot use NEW"
msgstr "规则ON DELETE不能使用关键词NEW"
-#: parser/parse_utilcmd.c:2389
+#: parser/parse_utilcmd.c:2840
#, c-format
msgid "cannot refer to OLD within WITH query"
msgstr "WITH查询中无法引用OLD"
-#: parser/parse_utilcmd.c:2396
+#: parser/parse_utilcmd.c:2847
#, c-format
msgid "cannot refer to NEW within WITH query"
msgstr "WITH 查询无法引用NEW"
-#: parser/parse_utilcmd.c:2599
-#, c-format
-msgid "transform expression must not return a set"
-msgstr "转换表达式不能返回一个组合"
-
-#: parser/parse_utilcmd.c:2713
+#: parser/parse_utilcmd.c:3285
#, c-format
msgid "misplaced DEFERRABLE clause"
msgstr "DEFERRABLE 子句位置错误"
-#: parser/parse_utilcmd.c:2718 parser/parse_utilcmd.c:2733
+#: parser/parse_utilcmd.c:3290 parser/parse_utilcmd.c:3305
#, c-format
msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
msgstr "不允许多个 DEFERRABLE/NOT DEFERRABLE 子句"
-#: parser/parse_utilcmd.c:2728
+#: parser/parse_utilcmd.c:3300
#, c-format
msgid "misplaced NOT DEFERRABLE clause"
msgstr "NOT DEFERRABLE 子句位置错误"
-#: parser/parse_utilcmd.c:2749
+#: parser/parse_utilcmd.c:3321
#, c-format
msgid "misplaced INITIALLY DEFERRED clause"
msgstr "INITIALLY DEFERRED 子句位置错误"
-#: parser/parse_utilcmd.c:2754 parser/parse_utilcmd.c:2780
+#: parser/parse_utilcmd.c:3326 parser/parse_utilcmd.c:3352
#, c-format
msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
msgstr "不允许多个 INITIALLY IMMEDIATE/DEFERRED 子句"
-#: parser/parse_utilcmd.c:2775
+#: parser/parse_utilcmd.c:3347
#, c-format
msgid "misplaced INITIALLY IMMEDIATE clause"
msgstr "INITIALLY IMMEDIATE 子句位置错误"
-#: parser/parse_utilcmd.c:2966
+#: parser/parse_utilcmd.c:3538
#, c-format
-msgid ""
-"CREATE specifies a schema (%s) different from the one being created (%s)"
+msgid "CREATE specifies a schema (%s) different from the one being created (%s)"
msgstr "CREATE 指定的模式 (%s) 和将要创建的 (%s) 不同"
+#: parser/parse_utilcmd.c:3572
+#, c-format
+msgid "table \"%s\" is not partitioned"
+msgstr "表\"%s\"未分区"
+
+#: parser/parse_utilcmd.c:3579
+#, c-format
+msgid "index \"%s\" is not partitioned"
+msgstr "索引 \"%s\" 未分区"
+
+#: parser/parse_utilcmd.c:3613
+#, c-format
+msgid "a hash-partitioned table may not have a default partition"
+msgstr "哈希分区表可能没有默认分区"
+
+#: parser/parse_utilcmd.c:3630
+#, c-format
+msgid "invalid bound specification for a hash partition"
+msgstr "哈希分区的绑定规范无效"
+
+#: parser/parse_utilcmd.c:3636 partitioning/partbounds.c:2127
+#, c-format
+msgid "modulus for hash partition must be a positive integer"
+msgstr "哈希分区的模数必须是正整数"
+
+#: parser/parse_utilcmd.c:3643 partitioning/partbounds.c:2135
+#, c-format
+msgid "remainder for hash partition must be less than modulus"
+msgstr "哈希分区的余数必须小于模数"
+
+#: parser/parse_utilcmd.c:3655
+#, c-format
+msgid "invalid bound specification for a list partition"
+msgstr "列表分区的绑定规范无效"
+
+#: parser/parse_utilcmd.c:3711
+#, c-format
+msgid "invalid bound specification for a range partition"
+msgstr "范围分区的绑定规范无效"
+
+#: parser/parse_utilcmd.c:3717
+#, c-format
+msgid "FROM must specify exactly one value per partitioning column"
+msgstr "FROM必须为每个分区列指定一个值"
+
+#: parser/parse_utilcmd.c:3721
+#, c-format
+msgid "TO must specify exactly one value per partitioning column"
+msgstr "TO必须为每个分区列指定一个值"
+
+#: parser/parse_utilcmd.c:3768 parser/parse_utilcmd.c:3782
+#, c-format
+msgid "cannot specify NULL in range bound"
+msgstr "无法在范围绑定中指定 NULL"
+
+#: parser/parse_utilcmd.c:3829
+#, c-format
+msgid "every bound following MAXVALUE must also be MAXVALUE"
+msgstr "MAXVALUE后面的每个绑定也必须是MAXVALUE"
+
+#: parser/parse_utilcmd.c:3836
+#, c-format
+msgid "every bound following MINVALUE must also be MINVALUE"
+msgstr "MINVALUE后面的每个绑定也必须是MINVALUE"
+
+#: parser/parse_utilcmd.c:3867 parser/parse_utilcmd.c:3879
+#, c-format
+msgid "specified value cannot be cast to type %s for column \"%s\""
+msgstr "不能将指定的值强制转换为列\"%2$s\"的类型%1$s"
+
+#: parser/parse_utilcmd.c:3881
+#, c-format
+msgid "The cast requires a non-immutable conversion."
+msgstr "强制转换需要不可变的转换."
+
+#: parser/parse_utilcmd.c:3882
+#, c-format
+msgid "Try putting the literal value in single quotes."
+msgstr "尝试将文字值放在单引号中."
+
#: parser/scansup.c:204
#, c-format
msgid "identifier \"%s\" will be truncated to \"%s\""
msgstr "标识符\"%s\"将会被截断为\"%s\""
-#: port/pg_sema.c:113 port/sysv_sema.c:113
+#: partitioning/partbounds.c:331
#, c-format
-msgid "could not create semaphores: %m"
-msgstr "无法创建信号量: %m"
+msgid "partition \"%s\" conflicts with existing default partition \"%s\""
+msgstr "分区\"%s\"与现有默认分区\"%s\"冲突"
-#: port/pg_sema.c:114 port/sysv_sema.c:114
+#: partitioning/partbounds.c:390
#, c-format
-msgid "Failed system call was semget(%lu, %d, 0%o)."
-msgstr "semget(%lu, %d, 0%o) 系统调用失败."
+msgid "every hash partition modulus must be a factor of the next larger modulus"
+msgstr "每个散列分区模必须是下一个较大模的因子"
-#: port/pg_sema.c:118 port/sysv_sema.c:118
+#: partitioning/partbounds.c:486
#, c-format
-msgid ""
-"This error does *not* mean that you have run out of disk space. It occurs "
-"when either the system limit for the maximum number of semaphore sets "
-"(SEMMNI), or the system wide maximum number of semaphores (SEMMNS), would be "
-"exceeded. You need to raise the respective kernel parameter. "
-"Alternatively, reduce PostgreSQL's consumption of semaphores by reducing its "
-"max_connections parameter.\n"
-"The PostgreSQL documentation contains more information about configuring "
-"your system for PostgreSQL."
-msgstr ""
-"这个错误不表示磁盘空间已经用完. 发生的原因有可能超过系统对于最大数量信号灯集"
-"合(由参数SEMMNI表示),或者是对系统范围内最大可使用信号灯(由参数SEMMNS表示)的"
-"限制.您需要增加这两个系统核心参数的值。另外也可以通过i减小PostgreSQL参数"
-"max_connections来减少它所消耗的信号灯总数.\n"
-"在PostgreSQL文档中包含了更多关于如何配置PostgreSQL的信息。"
+msgid "empty range bound specified for partition \"%s\""
+msgstr "为分区\"%s\"指定的空范围绑定"
-#: port/pg_sema.c:148 port/sysv_sema.c:148
+#: partitioning/partbounds.c:488
#, c-format
-msgid ""
-"You possibly need to raise your kernel's SEMVMX value to be at least %d. "
-"Look into the PostgreSQL documentation for details."
-msgstr ""
-"你可能需要增加内核的 SEMVMX 值至少为 %d. 详细信息请查找 PostgreSQL 文档."
+msgid "Specified lower bound %s is greater than or equal to upper bound %s."
+msgstr "指定的下限%s大于或等于上限%s"
+
+#: partitioning/partbounds.c:585
+#, c-format
+msgid "partition \"%s\" would overlap partition \"%s\""
+msgstr "分区 \"%s\"会重叠分区\"%s\""
+
+#: partitioning/partbounds.c:685
+#, c-format
+msgid "skipped scanning foreign table \"%s\" which is a partition of default partition \"%s\""
+msgstr "跳过扫描外部表\"%s\",该表是默认分区 \"%s\"的分区"
+
+#: partitioning/partbounds.c:724
+#, c-format
+msgid "updated partition constraint for default partition \"%s\" would be violated by some row"
+msgstr "某些行将违反默认分区\"%s\"的更新分区约束"
+
+#: partitioning/partbounds.c:2131
+#, c-format
+msgid "remainder for hash partition must be a non-negative integer"
+msgstr "哈希分区的余数必须是非负整数"
+
+#: partitioning/partbounds.c:2158
+#, c-format
+msgid "\"%s\" is not a hash partitioned table"
+msgstr "\"%s\" 不是哈希分区表"
+
+#: partitioning/partbounds.c:2169 partitioning/partbounds.c:2285
+#, c-format
+msgid "number of partitioning columns (%d) does not match number of partition keys provided (%d)"
+msgstr "分区列数(%d)与提供的分区键数(%d)不匹配"
-#: port/pg_shmem.c:141 port/sysv_shmem.c:141
+#: partitioning/partbounds.c:2189 partitioning/partbounds.c:2221
+#, c-format
+msgid "column %d of the partition key has type \"%s\", but supplied value is of type \"%s\""
+msgstr "分区键的列%d的类型为\"%s\",但提供的值的类型为\"%s\""
+
+#: port/pg_shmem.c:196 port/sysv_shmem.c:196
#, c-format
msgid "could not create shared memory segment: %m"
msgstr "无法创建共享内存段: %m"
-#: port/pg_shmem.c:142 port/sysv_shmem.c:142
+#: port/pg_shmem.c:197 port/sysv_shmem.c:197
#, c-format
msgid "Failed system call was shmget(key=%lu, size=%zu, 0%o)."
msgstr "系统调用shmget(key=%lu, size=%zu, 0%o) 执行失败."
-#: port/pg_shmem.c:146 port/sysv_shmem.c:146
+#: port/pg_shmem.c:201 port/sysv_shmem.c:201
#, c-format
msgid ""
-"This error usually means that PostgreSQL's request for a shared memory "
-"segment exceeded your kernel's SHMMAX parameter, or possibly that it is less "
-"than your kernel's SHMMIN parameter.\n"
-"The PostgreSQL documentation contains more information about shared memory "
-"configuration."
+"This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter, or possibly that it is less than your kernel's SHMMIN parameter.\n"
+"The PostgreSQL documentation contains more information about shared memory configuration."
msgstr ""
-"这个错误通常表示PostgreSQL所请求的共享内存段超过了内核中的SHMMAX参数值,或者"
-"小于内核中的SHMMIN参数值。\n"
+"这个错误通常表示PostgreSQL所请求的共享内存段超过了内核中的SHMMAX参数值,或者小于内核中的SHMMIN参数值。\n"
"PostgreSQL文档包含了关于如何配置共享内存的更多信息."
-#: port/pg_shmem.c:153 port/sysv_shmem.c:153
+#: port/pg_shmem.c:208 port/sysv_shmem.c:208
#, c-format
msgid ""
-"This error usually means that PostgreSQL's request for a shared memory "
-"segment exceeded your kernel's SHMALL parameter. You might need to "
-"reconfigure the kernel with larger SHMALL.\n"
-"The PostgreSQL documentation contains more information about shared memory "
-"configuration."
+"This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMALL parameter. You might need to reconfigure the kernel with larger SHMALL.\n"
+"The PostgreSQL documentation contains more information about shared memory configuration."
msgstr ""
-"这个错误通常表示PostgreSQL所请求的共享内存段超过了内核中设定的SHMALL参数值。"
-"您可以重新配置内核, 使用更大的SHMALL参数值.\n"
+"这个错误通常表示PostgreSQL所请求的共享内存段超过了内核中设定的SHMALL参数值。您可以重新配置内核, 使用更大的SHMALL参数值.\n"
"PostgreSQL文档包含了关于如何配置共享内存的更多信息."
-#: port/pg_shmem.c:159 port/sysv_shmem.c:159
+#: port/pg_shmem.c:214 port/sysv_shmem.c:214
#, c-format
msgid ""
-"This error does *not* mean that you have run out of disk space. It occurs "
-"either if all available shared memory IDs have been taken, in which case you "
-"need to raise the SHMMNI parameter in your kernel, or because the system's "
-"overall limit for shared memory has been reached.\n"
-"The PostgreSQL documentation contains more information about shared memory "
-"configuration."
+"This error does *not* mean that you have run out of disk space. It occurs either if all available shared memory IDs have been taken, in which case you need to raise the SHMMNI parameter in your kernel, or because the system's overall limit for shared memory has been reached.\n"
+"The PostgreSQL documentation contains more information about shared memory configuration."
msgstr ""
-"这个错误不表示您系统上磁盘空间已经用尽.原因既有可能是系统上所有的有效共享内存"
-"ID不存在了,这样需要在内核中升高SHMMNI参数的值,或者是因为已到达系统最大的共"
-"享内存限制.如果无法增加共享内存的上限值.\n"
+"这个错误不表示您系统上磁盘空间已经用尽.原因既有可能是系统上所有的有效共享内存ID不存在了,这样需要在内核中升高SHMMNI参数的值,或者是因为已到达系统最大的共享内存限制.如果无法增加共享内存的上限值.\n"
"在PostgreSQL文档中包含了关于如何配置共享内存的更多信息."
-#: port/pg_shmem.c:340 port/sysv_shmem.c:340
-#, c-format
-msgid "huge TLB pages not supported on this platform"
-msgstr "在此平台上不支持巨型的TLB页"
-
-#: port/pg_shmem.c:390 port/sysv_shmem.c:390
+#: port/pg_shmem.c:505 port/sysv_shmem.c:505
#, c-format
msgid "could not map anonymous shared memory: %m"
msgstr "无法映射匿名共享内存: %m"
-#: port/pg_shmem.c:392 port/sysv_shmem.c:392
+#: port/pg_shmem.c:507 port/sysv_shmem.c:507
#, c-format
-msgid ""
-"This error usually means that PostgreSQL's request for a shared memory "
-"segment exceeded available memory, swap space, or huge pages. To reduce the "
-"request size (currently %zu bytes), reduce PostgreSQL's shared memory usage, "
-"perhaps by reducing shared_buffers or max_connections."
-msgstr ""
-"这个错误通常表示PostgreSQL所请求的共享内存段超过了可用内存总量或者交换空间或"
-"者巨型页大小。为减少所请求空间的大小(当前是%zu字节),减少PostgreSQL文档包含了"
-"关于如何配置共享内存的更多信息."
+msgid "This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory, swap space, or huge pages. To reduce the request size (currently %zu bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections."
+msgstr "这个错误通常表示PostgreSQL所请求的共享内存段超过了可用内存总量或者交换空间或者巨型页大小。为减少所请求空间的大小(当前是%zu字节),减少PostgreSQL文档包含了关于如何配置共享内存的更多信息."
-#: port/pg_shmem.c:439 port/sysv_shmem.c:439 port/win32_shmem.c:134
+#: port/pg_shmem.c:573 port/sysv_shmem.c:573
#, c-format
msgid "huge pages not supported on this platform"
msgstr "此平台不支持巨型页"
-#: port/pg_shmem.c:553 port/sysv_shmem.c:553
+#: port/pg_shmem.c:668 port/sysv_shmem.c:668
#, c-format
msgid "could not stat data directory \"%s\": %m"
msgstr "无法取目录 \"%s\" 状态: %m"
-#: port/win32/crashdump.c:108
+#: port/sysv_sema.c:123
+#, c-format
+msgid "could not create semaphores: %m"
+msgstr "无法创建信号量: %m"
+
+#: port/sysv_sema.c:124
+#, c-format
+msgid "Failed system call was semget(%lu, %d, 0%o)."
+msgstr "semget(%lu, %d, 0%o) 系统调用失败."
+
+#: port/sysv_sema.c:128
+#, c-format
+msgid ""
+"This error does *not* mean that you have run out of disk space. It occurs when either the system limit for the maximum number of semaphore sets (SEMMNI), or the system wide maximum number of semaphores (SEMMNS), would be exceeded. You need to raise the respective kernel parameter. Alternatively, reduce PostgreSQL's consumption of semaphores by reducing its max_connections parameter.\n"
+"The PostgreSQL documentation contains more information about configuring your system for PostgreSQL."
+msgstr ""
+"这个错误不表示磁盘空间已经用完. 发生的原因有可能超过系统对于最大数量信号灯集合(由参数SEMMNI表示),或者是对系统范围内最大可使用信号灯(由参数SEMMNS表示)的限制.您需要增加这两个系统核心参数的值。另外也可以通过i减小PostgreSQL参数max_connections来减少它所消耗的信号灯总数.\n"
+"在PostgreSQL文档中包含了更多关于如何配置PostgreSQL的信息。"
+
+#: port/sysv_sema.c:158
+#, c-format
+msgid "You possibly need to raise your kernel's SEMVMX value to be at least %d. Look into the PostgreSQL documentation for details."
+msgstr "你可能需要增加内核的 SEMVMX 值至少为 %d. 详细信息请查找 PostgreSQL 文档."
+
+#: port/win32/crashdump.c:121
#, c-format
msgid "could not load dbghelp.dll, cannot write crash dump\n"
msgstr "无法加载dbghelp.dll动态库, 无法生成崩溃转储文件\n"
-#: port/win32/crashdump.c:116
+#: port/win32/crashdump.c:129
#, c-format
-msgid ""
-"could not load required functions in dbghelp.dll, cannot write crash dump\n"
+msgid "could not load required functions in dbghelp.dll, cannot write crash dump\n"
msgstr "无法从dbghelp.dll动态库中加载所需要的函数, 无法生成崩溃转储文件\n"
-#: port/win32/crashdump.c:147
+#: port/win32/crashdump.c:160
#, c-format
msgid "could not open crash dump file \"%s\" for writing: error code %lu\n"
msgstr "无法打开崩溃转储文件 \"%s\"执行写操作: 错误码 %lu\n"
# command.c:646
-#: port/win32/crashdump.c:154
+#: port/win32/crashdump.c:167
#, c-format
msgid "wrote crash dump to file \"%s\"\n"
msgstr "生成崩溃转储文件\"%s\"\n"
-#: port/win32/crashdump.c:156
+#: port/win32/crashdump.c:169
#, c-format
msgid "could not write crash dump to file \"%s\": error code %lu\n"
msgstr "无法写入崩溃转储文件 \"%s\": 错误码 %lu\n"
msgid "could not create signal dispatch thread: error code %lu\n"
msgstr "无法创建信号分发线程: 错误码 %lu\n"
-#: port/win32_sema.c:94
+#: port/win32_sema.c:104
#, c-format
msgid "could not create semaphore: error code %lu"
msgstr "无法创建信号量: 错误代码 %lu"
-#: port/win32_sema.c:167
+#: port/win32_sema.c:181
#, c-format
msgid "could not lock semaphore: error code %lu"
msgstr "无法锁定信号灯(semaphore): 错误代码%lu"
-#: port/win32_sema.c:187
+#: port/win32_sema.c:201
#, c-format
msgid "could not unlock semaphore: error code %lu"
msgstr "无法对信号灯(semaphore)解锁: 错误代码 %lu"
-#: port/win32_sema.c:216
+#: port/win32_sema.c:231
#, c-format
msgid "could not try-lock semaphore: error code %lu"
msgstr "无法进行锁定信号灯(semaphore)的尝试: 错误代码 %lu"
-#: port/win32_shmem.c:173 port/win32_shmem.c:208 port/win32_shmem.c:226
+#: port/win32_shmem.c:122 port/win32_shmem.c:130 port/win32_shmem.c:142
+#: port/win32_shmem.c:157
+#, c-format
+msgid "could not enable Lock Pages in Memory user right: error code %lu"
+msgstr "无法在内存中启用锁定页用户权限: 错误码%lu"
+
+#: port/win32_shmem.c:123 port/win32_shmem.c:131 port/win32_shmem.c:143
+#: port/win32_shmem.c:158
+#, c-format
+msgid "Failed system call was %s."
+msgstr "失败的系统调用是%s."
+
+#: port/win32_shmem.c:153
+#, c-format
+msgid "could not enable Lock Pages in Memory user right"
+msgstr "无法在内存中启用锁定页用户权限"
+
+#: port/win32_shmem.c:154
+#, c-format
+msgid "Assign Lock Pages in Memory user right to the Windows user account which runs PostgreSQL."
+msgstr "为运行PostgreSQL的Windows用户帐户分配内存中的锁定页用户权限."
+
+#: port/win32_shmem.c:210
+#, c-format
+msgid "the processor does not support large pages"
+msgstr "处理器不支持大页面"
+
+#: port/win32_shmem.c:212 port/win32_shmem.c:217
+#, c-format
+msgid "disabling huge pages"
+msgstr "禁用大页面"
+
+#: port/win32_shmem.c:279 port/win32_shmem.c:315 port/win32_shmem.c:333
#, c-format
msgid "could not create shared memory segment: error code %lu"
msgstr "无法创建共享内存段: 错误码%lu"
-#: port/win32_shmem.c:174
+#: port/win32_shmem.c:280
#, c-format
msgid "Failed system call was CreateFileMapping(size=%zu, name=%s)."
msgstr "系统调用CreateFileMapping(size=%zu, name=%s)执行失败."
-#: port/win32_shmem.c:198
+#: port/win32_shmem.c:305
#, c-format
msgid "pre-existing shared memory block is still in use"
msgstr "已存在的共享内存块仍在使用中"
-#: port/win32_shmem.c:199
+#: port/win32_shmem.c:306
#, c-format
-msgid ""
-"Check if there are any old server processes still running, and terminate "
-"them."
+msgid "Check if there are any old server processes still running, and terminate them."
msgstr "检查原先的服务器进程是否仍在运行,如果是的话请终止这些进程."
-#: port/win32_shmem.c:209
+#: port/win32_shmem.c:316
#, c-format
msgid "Failed system call was DuplicateHandle."
msgstr "系统调用DuplicateHandle执行失败"
-#: port/win32_shmem.c:227
+#: port/win32_shmem.c:334
#, c-format
msgid "Failed system call was MapViewOfFileEx."
msgstr "系统调用MapViewOfFileEx执行失败."
-#: postmaster/autovacuum.c:377
+#: postmaster/autovacuum.c:406
#, c-format
msgid "could not fork autovacuum launcher process: %m"
msgstr "无法派生autovacuum启动进程: %m"
-#: postmaster/autovacuum.c:413
+#: postmaster/autovacuum.c:442
#, c-format
msgid "autovacuum launcher started"
msgstr "已启动autovacuum"
-#: postmaster/autovacuum.c:775
+#: postmaster/autovacuum.c:832
#, c-format
msgid "autovacuum launcher shutting down"
msgstr "正在关闭autovacuum启动进程"
-#: postmaster/autovacuum.c:1443
+#: postmaster/autovacuum.c:1494
#, c-format
msgid "could not fork autovacuum worker process: %m"
msgstr "无法派生autovacuum工作进程: %m"
-#: postmaster/autovacuum.c:1639
+#: postmaster/autovacuum.c:1700
#, c-format
msgid "autovacuum: processing database \"%s\""
msgstr "autovacuum: 正在处理数据库 \"%s\""
-#: postmaster/autovacuum.c:2051
-#, c-format
-msgid "autovacuum: dropping orphan temp table \"%s\".\"%s\" in database \"%s\""
-msgstr "autovacuum: 正在数据库\"%3$s\"中删除遗留的临时表\"%1$s\".\"%2$s\""
-
-#: postmaster/autovacuum.c:2063
+#: postmaster/autovacuum.c:2269
#, c-format
-msgid "autovacuum: found orphan temp table \"%s\".\"%s\" in database \"%s\""
-msgstr "autovacuum: 在数据库\"%3$s\"中找到遗留的临时表\"%1$s\".\"%2$s\""
+msgid "autovacuum: dropping orphan temp table \"%s.%s.%s\""
+msgstr "autovacuum: 正在删除遗留的临时表\"%s.%s.%s\""
-#: postmaster/autovacuum.c:2346
+#: postmaster/autovacuum.c:2498
#, c-format
msgid "automatic vacuum of table \"%s.%s.%s\""
msgstr "对表\"%s.%s.%s\"进行自动清理"
-#: postmaster/autovacuum.c:2349
+#: postmaster/autovacuum.c:2501
#, c-format
msgid "automatic analyze of table \"%s.%s.%s\""
msgstr "对表\"%s.%s.%s\"进行自动分析"
-#: postmaster/autovacuum.c:2877
+#: postmaster/autovacuum.c:2694
+#, c-format
+msgid "processing work entry for relation \"%s.%s.%s\""
+msgstr "正在处理关系\"%s.%s.%s\"的工作项"
+
+#: postmaster/autovacuum.c:3273
#, c-format
msgid "autovacuum not started because of misconfiguration"
msgstr "因为配制错误,而无法启动autovacuum"
-#: postmaster/autovacuum.c:2878
+#: postmaster/autovacuum.c:3274
#, c-format
msgid "Enable the \"track_counts\" option."
msgstr "启用选项\"track_counts\" "
-#: postmaster/bgworker.c:346 postmaster/bgworker.c:746
+#: postmaster/bgworker.c:395 postmaster/bgworker.c:855
#, c-format
msgid "registering background worker \"%s\""
msgstr "注册后台工作进程 \"%s\""
-#: postmaster/bgworker.c:375
+#: postmaster/bgworker.c:427
#, c-format
msgid "unregistering background worker \"%s\""
msgstr "注销后台工作进程 \"%s\""
-#: postmaster/bgworker.c:484
+#: postmaster/bgworker.c:592
#, c-format
-msgid ""
-"background worker \"%s\": must attach to shared memory in order to request a "
-"database connection"
+msgid "background worker \"%s\": must attach to shared memory in order to request a database connection"
msgstr "后台工作进程 \"%s\": 必须关联到共享内存,以用于请求一个数据库连接 "
-#: postmaster/bgworker.c:493
+#: postmaster/bgworker.c:601
#, c-format
-msgid ""
-"background worker \"%s\": cannot request database access if starting at "
-"postmaster start"
-msgstr ""
-"后台工作进程 \"%s\": 如果是在postmaster启动时启动,则无法请求数据库访问 "
+msgid "background worker \"%s\": cannot request database access if starting at postmaster start"
+msgstr "后台工作进程 \"%s\": 如果是在postmaster启动时启动,则无法请求数据库访问 "
-#: postmaster/bgworker.c:507
+#: postmaster/bgworker.c:615
#, c-format
msgid "background worker \"%s\": invalid restart interval"
msgstr "后台工作进程 \"%s\": 无效的重启时间间隔"
-#: postmaster/bgworker.c:552
+#: postmaster/bgworker.c:630
+#, c-format
+msgid "background worker \"%s\": parallel workers may not be configured for restart"
+msgstr "后台工作进程 \"%s\": 不能为重新启动配置并行工作线程"
+
+#: postmaster/bgworker.c:674
#, c-format
msgid "terminating background worker \"%s\" due to administrator command"
msgstr "由于管理员命令中断后台工作进程\"%s\""
-#: postmaster/bgworker.c:753
+#: postmaster/bgworker.c:863
#, c-format
-msgid ""
-"background worker \"%s\": must be registered in shared_preload_libraries"
+msgid "background worker \"%s\": must be registered in shared_preload_libraries"
msgstr "后台工作进程 \"%s\": 必须注册于库 shared_preload_libraries中"
-#: postmaster/bgworker.c:765
+#: postmaster/bgworker.c:875
#, c-format
-msgid ""
-"background worker \"%s\": only dynamic background workers can request "
-"notification"
+msgid "background worker \"%s\": only dynamic background workers can request notification"
msgstr "后台工作进程 \"%s\": 只有动态工作进程可以请求通知"
-#: postmaster/bgworker.c:780
+#: postmaster/bgworker.c:890
#, c-format
msgid "too many background workers"
msgstr "太多后台工作进程"
-#: postmaster/bgworker.c:781
+#: postmaster/bgworker.c:891
#, c-format
msgid "Up to %d background worker can be registered with the current settings."
-msgid_plural ""
-"Up to %d background workers can be registered with the current settings."
+msgid_plural "Up to %d background workers can be registered with the current settings."
msgstr[0] "当前设置里最多可以注册%d个后台工作进程."
-#: postmaster/bgworker.c:785
+#: postmaster/bgworker.c:895
#, c-format
-msgid ""
-"Consider increasing the configuration parameter \"max_worker_processes\"."
+msgid "Consider increasing the configuration parameter \"max_worker_processes\"."
msgstr "考虑增大配置参数 \"max_worker_processes\"的值."
-#: postmaster/checkpointer.c:465
+#: postmaster/checkpointer.c:464
#, c-format
msgid "checkpoints are occurring too frequently (%d second apart)"
msgid_plural "checkpoints are occurring too frequently (%d seconds apart)"
msgstr[0] "检查点事件发生过于频繁(%d 秒间隔)"
-#: postmaster/checkpointer.c:469
+#: postmaster/checkpointer.c:468
#, c-format
msgid "Consider increasing the configuration parameter \"max_wal_size\"."
msgstr "考虑增大配置参数 \"max_wal_size\"的值。"
-#: postmaster/checkpointer.c:616
-#, c-format
-msgid "transaction log switch forced (archive_timeout=%d)"
-msgstr "强制切换事务日志 (archive_timeout=%d)"
-
-#: postmaster/checkpointer.c:1074
+#: postmaster/checkpointer.c:1082
#, c-format
msgid "checkpoint request failed"
msgstr "检查点请求失败"
-#: postmaster/checkpointer.c:1075
+#: postmaster/checkpointer.c:1083
#, c-format
msgid "Consult recent messages in the server log for details."
msgstr "详细信息请参考服务器日志."
-#: postmaster/checkpointer.c:1270
+#: postmaster/checkpointer.c:1278
#, c-format
msgid "compacted fsync request queue from %d entries to %d entries"
msgstr "将fsync请求队列从%d压缩至%d项"
-#: postmaster/pgarch.c:149
+#: postmaster/pgarch.c:148
#, c-format
msgid "could not fork archiver: %m"
msgstr "无法 fork archiver: %m"
#: postmaster/pgarch.c:484
#, c-format
-msgid ""
-"archiving transaction log file \"%s\" failed too many times, will try again "
-"later"
-msgstr "归档事务日志文件 \"%s\" 多次失败, 将会重试"
+msgid "archiving write-ahead log file \"%s\" failed too many times, will try again later"
+msgstr "归档预写日志文件 \"%s\" 多次失败, 将会重试"
-#: postmaster/pgarch.c:587
+#: postmaster/pgarch.c:585
#, c-format
msgid "archive command failed with exit code %d"
msgstr "归档命令执行失败,退出代码为 %d"
-#: postmaster/pgarch.c:589 postmaster/pgarch.c:599 postmaster/pgarch.c:606
-#: postmaster/pgarch.c:612 postmaster/pgarch.c:621
+#: postmaster/pgarch.c:587 postmaster/pgarch.c:597 postmaster/pgarch.c:604
+#: postmaster/pgarch.c:610 postmaster/pgarch.c:619
#, c-format
msgid "The failed archive command was: %s"
msgstr "执行失败的归档命令是: %s"
-#: postmaster/pgarch.c:596
+#: postmaster/pgarch.c:594
#, c-format
msgid "archive command was terminated by exception 0x%X"
msgstr "归档命令被异常 0x%X 终止"
-#: postmaster/pgarch.c:598 postmaster/postmaster.c:3478
+#: postmaster/pgarch.c:596 postmaster/postmaster.c:3567
#, c-format
-msgid ""
-"See C include file \"ntstatus.h\" for a description of the hexadecimal value."
+msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value."
msgstr "关于对16进制值的描述, 参见C语言的引用文件 \"ntstatus.h\" "
-#: postmaster/pgarch.c:603
+#: postmaster/pgarch.c:601
#, c-format
msgid "archive command was terminated by signal %d: %s"
msgstr "归档命令被信号%d终止:%s"
-#: postmaster/pgarch.c:610
+#: postmaster/pgarch.c:608
#, c-format
msgid "archive command was terminated by signal %d"
msgstr "归档命令被信号%d终止"
-#: postmaster/pgarch.c:619
+#: postmaster/pgarch.c:617
#, c-format
msgid "archive command exited with unrecognized status %d"
msgstr "归档命令已退出, 未知状态 %d"
-#: postmaster/pgarch.c:631
-#, c-format
-msgid "archived transaction log file \"%s\""
-msgstr "归档事务日志文件 \"%s\""
-
-#: postmaster/pgarch.c:680
-#, c-format
-msgid "could not open archive status directory \"%s\": %m"
-msgstr "无法打开归档状态目录 \"%s\": %m"
-
-#: postmaster/pgstat.c:356
+#: postmaster/pgstat.c:395
#, c-format
msgid "could not resolve \"localhost\": %s"
msgstr "无法解析 \"localhost\": %s"
-#: postmaster/pgstat.c:379
+#: postmaster/pgstat.c:418
#, c-format
msgid "trying another address for the statistics collector"
msgstr "为统计信息收集器尝试另一个地址"
-#: postmaster/pgstat.c:388
+#: postmaster/pgstat.c:427
#, c-format
msgid "could not create socket for statistics collector: %m"
msgstr "无法为统计收集器创建套接字: %m"
-#: postmaster/pgstat.c:400
+#: postmaster/pgstat.c:439
#, c-format
msgid "could not bind socket for statistics collector: %m"
msgstr "无法绑定统计收集器的套接字: %m"
-#: postmaster/pgstat.c:411
+#: postmaster/pgstat.c:450
#, c-format
msgid "could not get address of socket for statistics collector: %m"
msgstr "无法获得统计收集器的套接字地址: %m"
-#: postmaster/pgstat.c:427
+#: postmaster/pgstat.c:466
#, c-format
msgid "could not connect socket for statistics collector: %m"
msgstr "无法联接统计收集器的套接字: %m"
-#: postmaster/pgstat.c:448
+#: postmaster/pgstat.c:487
#, c-format
msgid "could not send test message on socket for statistics collector: %m"
msgstr "无法为统计收集器在套接字上发送测试信息: %m"
-#: postmaster/pgstat.c:474
+#: postmaster/pgstat.c:513
#, c-format
msgid "select() failed in statistics collector: %m"
msgstr "在统计收集器中 select() 失败: %m"
-#: postmaster/pgstat.c:489
+#: postmaster/pgstat.c:528
#, c-format
msgid "test message did not get through on socket for statistics collector"
msgstr "统计收集器的测试消息没有通过套接字"
-#: postmaster/pgstat.c:504
+#: postmaster/pgstat.c:543
#, c-format
msgid "could not receive test message on socket for statistics collector: %m"
msgstr "无法为统计收集器在套接字上接收测试信息: %m"
-#: postmaster/pgstat.c:514
+#: postmaster/pgstat.c:553
#, c-format
msgid "incorrect test message transmission on socket for statistics collector"
msgstr "统计收集器在套接字上不正确的测试消息传输"
-#: postmaster/pgstat.c:537
+#: postmaster/pgstat.c:576
#, c-format
msgid "could not set statistics collector socket to nonblocking mode: %m"
msgstr "无法把统计收集器的套接字设置为非阻塞模式: %m"
-#: postmaster/pgstat.c:547
+#: postmaster/pgstat.c:615
#, c-format
msgid "disabling statistics collector for lack of working socket"
msgstr "当缺乏可用套接字时取消统计收集器"
-#: postmaster/pgstat.c:694
+#: postmaster/pgstat.c:762
#, c-format
msgid "could not fork statistics collector: %m"
msgstr "无法派生 (fork) 统计收集器: %m"
-#: postmaster/pgstat.c:1262
+#: postmaster/pgstat.c:1342
#, c-format
msgid "unrecognized reset target: \"%s\""
msgstr "未识别的重置目标:\"%s\""
-#: postmaster/pgstat.c:1263
+#: postmaster/pgstat.c:1343
#, c-format
msgid "Target must be \"archiver\" or \"bgwriter\"."
msgstr "目标必须是\"archiver\"或\"bgwriter\"."
-#: postmaster/pgstat.c:3578
+#: postmaster/pgstat.c:4362
#, c-format
msgid "could not read statistics message: %m"
msgstr "无法读取统计信息: %m"
-#: postmaster/pgstat.c:3909 postmaster/pgstat.c:4086
+#: postmaster/pgstat.c:4694 postmaster/pgstat.c:4851
#, c-format
msgid "could not open temporary statistics file \"%s\": %m"
msgstr "无法打开临时统计文件 \"%s\": %m"
-#: postmaster/pgstat.c:3977 postmaster/pgstat.c:4131
+#: postmaster/pgstat.c:4761 postmaster/pgstat.c:4896
#, c-format
msgid "could not write temporary statistics file \"%s\": %m"
msgstr "无法写临时统计文件 \"%s\": %m"
-#: postmaster/pgstat.c:3986 postmaster/pgstat.c:4140
+#: postmaster/pgstat.c:4770 postmaster/pgstat.c:4905
#, c-format
msgid "could not close temporary statistics file \"%s\": %m"
msgstr "无法关闭临时统计文件 \"%s\": %m"
-#: postmaster/pgstat.c:3994 postmaster/pgstat.c:4148
+#: postmaster/pgstat.c:4778 postmaster/pgstat.c:4913
#, c-format
msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m"
msgstr "无法把临时统计文件 \"%s\" 重命名为 \"%s\": %m"
-#: postmaster/pgstat.c:4230 postmaster/pgstat.c:4413 postmaster/pgstat.c:4568
+#: postmaster/pgstat.c:5002 postmaster/pgstat.c:5208 postmaster/pgstat.c:5361
#, c-format
msgid "could not open statistics file \"%s\": %m"
msgstr "无法打开统计文件 \"%s\": %m"
-#: postmaster/pgstat.c:4242 postmaster/pgstat.c:4252 postmaster/pgstat.c:4262
-#: postmaster/pgstat.c:4283 postmaster/pgstat.c:4298 postmaster/pgstat.c:4354
-#: postmaster/pgstat.c:4425 postmaster/pgstat.c:4445 postmaster/pgstat.c:4463
-#: postmaster/pgstat.c:4479 postmaster/pgstat.c:4497 postmaster/pgstat.c:4513
-#: postmaster/pgstat.c:4580 postmaster/pgstat.c:4592 postmaster/pgstat.c:4604
-#: postmaster/pgstat.c:4629 postmaster/pgstat.c:4651
+#: postmaster/pgstat.c:5014 postmaster/pgstat.c:5024 postmaster/pgstat.c:5045
+#: postmaster/pgstat.c:5067 postmaster/pgstat.c:5082 postmaster/pgstat.c:5145
+#: postmaster/pgstat.c:5220 postmaster/pgstat.c:5240 postmaster/pgstat.c:5258
+#: postmaster/pgstat.c:5274 postmaster/pgstat.c:5292 postmaster/pgstat.c:5308
+#: postmaster/pgstat.c:5373 postmaster/pgstat.c:5385 postmaster/pgstat.c:5397
+#: postmaster/pgstat.c:5422 postmaster/pgstat.c:5444
#, c-format
msgid "corrupted statistics file \"%s\""
msgstr "统计文件损坏\"%s\""
-#: postmaster/pgstat.c:4768
+#: postmaster/pgstat.c:5573
#, c-format
-msgid ""
-"using stale statistics instead of current ones because stats collector is "
-"not responding"
+msgid "using stale statistics instead of current ones because stats collector is not responding"
msgstr "由于统计收集器无响应而使用旧的统计信息来代替当前的统计信息"
-#: postmaster/pgstat.c:5086
+#: postmaster/pgstat.c:5900
#, c-format
msgid "database hash table corrupted during cleanup --- abort"
msgstr "清理过程中数据库散列表毁坏 --- 终止"
-#: postmaster/postmaster.c:676
+#: postmaster/postmaster.c:717
#, c-format
msgid "%s: invalid argument for option -f: \"%s\"\n"
msgstr "%s: 选项-f的参数无效: \"%s\"\n"
-#: postmaster/postmaster.c:762
+#: postmaster/postmaster.c:803
#, c-format
msgid "%s: invalid argument for option -t: \"%s\"\n"
msgstr "%s: -t选项的参数无效: \"%s\"\n"
-#: postmaster/postmaster.c:813
+#: postmaster/postmaster.c:854
#, c-format
msgid "%s: invalid argument: \"%s\"\n"
msgstr "%s: 无效参数: \"%s\"\n"
-#: postmaster/postmaster.c:848
-#, c-format
-msgid "%s: superuser_reserved_connections must be less than max_connections\n"
-msgstr "%s: 超级用户保留联接数必须小于最大联接数\n"
-
-#: postmaster/postmaster.c:853
+#: postmaster/postmaster.c:896
#, c-format
-msgid "%s: max_wal_senders must be less than max_connections\n"
-msgstr "%s: max_wal_senders必须小于最大连接数\n"
+msgid "%s: superuser_reserved_connections (%d) plus max_wal_senders (%d) must be less than max_connections (%d)\n"
+msgstr "%s: superuser_reserved_connections (%d) 加上 max_wal_senders (%d) 必须低于max_connections (%d)\n"
-#: postmaster/postmaster.c:858
+#: postmaster/postmaster.c:903
#, c-format
msgid "WAL archival cannot be enabled when wal_level is \"minimal\""
msgstr "当wal_level是\"minimal\"时无法启用WAL归档"
-#: postmaster/postmaster.c:861
+#: postmaster/postmaster.c:906
#, c-format
-#| msgid ""
-#| "WAL streaming (max_wal_senders > 0) requires wal_level \"archive\", "
-#| "\"hot_standby\", or \"logical\""
-msgid ""
-"WAL streaming (max_wal_senders > 0) requires wal_level \"replica\" or "
-"\"logical\""
-msgstr ""
-"WAL 流复制(max_wal_senders > 0)要求将 wal_level 设置为 \"replica\" 或 "
-"\"logical\""
+msgid "WAL streaming (max_wal_senders > 0) requires wal_level \"replica\" or \"logical\""
+msgstr "WAL 流复制(max_wal_senders > 0)要求将 wal_level 设置为 \"replica\" 或 \"logical\""
-#: postmaster/postmaster.c:869
+#: postmaster/postmaster.c:914
#, c-format
msgid "%s: invalid datetoken tables, please fix\n"
msgstr "%s: 无效的 datetoken 表, 请修复\n"
-#: postmaster/postmaster.c:961 postmaster/postmaster.c:1059
-#: utils/init/miscinit.c:1429
+#: postmaster/postmaster.c:1028 postmaster/postmaster.c:1126
+#: utils/init/miscinit.c:1555
#, c-format
msgid "invalid list syntax in parameter \"%s\""
msgstr "在参数\"%s\"中列表语法无效"
-#: postmaster/postmaster.c:992
+#: postmaster/postmaster.c:1059
#, c-format
msgid "could not create listen socket for \"%s\""
msgstr "无法为 \"%s\" 创建监听套接字"
# fe-connect.c:891
-#: postmaster/postmaster.c:998
+#: postmaster/postmaster.c:1065
#, c-format
msgid "could not create any TCP/IP sockets"
msgstr "无法创建TCP/IP套接字"
-#: postmaster/postmaster.c:1081
+#: postmaster/postmaster.c:1148
#, c-format
msgid "could not create Unix-domain socket in directory \"%s\""
msgstr "在目录\"%s\"下不能创建Unix域的网络套接字"
-#: postmaster/postmaster.c:1087
+#: postmaster/postmaster.c:1154
#, c-format
msgid "could not create any Unix-domain sockets"
msgstr "无法创建 Unix域 套接字"
-#: postmaster/postmaster.c:1099
+#: postmaster/postmaster.c:1166
#, c-format
msgid "no socket created for listening"
msgstr "没有为监听创建套接字"
# fe-lobj.c:412
-#: postmaster/postmaster.c:1139
+#: postmaster/postmaster.c:1206
#, c-format
msgid "could not create I/O completion port for child queue"
msgstr "无法为子队列创建I/O完成端口"
-#: postmaster/postmaster.c:1168
+#: postmaster/postmaster.c:1235
#, c-format
msgid "%s: could not change permissions of external PID file \"%s\": %s\n"
msgstr "%s: 无法改变外部PID文件 \"%s\" 的权限: %s\n"
-#: postmaster/postmaster.c:1172
+#: postmaster/postmaster.c:1239
#, c-format
msgid "%s: could not write external PID file \"%s\": %s\n"
msgstr "%s: 无法写入外部 PID 文件 \"%s\": %s\n"
-#: postmaster/postmaster.c:1223
+#: postmaster/postmaster.c:1296
#, c-format
msgid "ending log output to stderr"
msgstr "终止日志输出到标准错误输出设备"
-#: postmaster/postmaster.c:1224
+#: postmaster/postmaster.c:1297
#, c-format
msgid "Future log output will go to log destination \"%s\"."
msgstr "后续的日志输出将进入到目标日志 \"%s\"."
-#: postmaster/postmaster.c:1250 utils/init/postinit.c:214
+#: postmaster/postmaster.c:1323 utils/init/postinit.c:214
#, c-format
msgid "could not load pg_hba.conf"
msgstr "无法加载pg_hba.conf"
-#: postmaster/postmaster.c:1276
+#: postmaster/postmaster.c:1349
#, c-format
msgid "postmaster became multithreaded during startup"
msgstr "在启动期间postmaster变成多线程的"
-#: postmaster/postmaster.c:1277
+#: postmaster/postmaster.c:1350
#, c-format
msgid "Set the LC_ALL environment variable to a valid locale."
msgstr "设定LC_ALL环境变量为一个合法的区域。"
-#: postmaster/postmaster.c:1374
+#: postmaster/postmaster.c:1455
#, c-format
msgid "%s: could not locate matching postgres executable"
msgstr "%s: 无法找到匹配的 postgres 执行文件"
-#: postmaster/postmaster.c:1397 utils/misc/tzparser.c:341
-#, c-format
-msgid ""
-"This may indicate an incomplete PostgreSQL installation, or that the file "
-"\"%s\" has been moved away from its proper location."
-msgstr ""
-"这可能表示PostgreSQL安装未完成,或者文件\"%s\"已经从正确的位置移动到另外的位"
-"置了."
-
-#: postmaster/postmaster.c:1425
-#, c-format
-msgid "data directory \"%s\" does not exist"
-msgstr "数据目录 \"%s\" 不存在"
-
-#: postmaster/postmaster.c:1430
-#, c-format
-msgid "could not read permissions of directory \"%s\": %m"
-msgstr "没有读取目录 \"%s\" 的权限: %m"
-
-#: postmaster/postmaster.c:1438
-#, c-format
-msgid "specified data directory \"%s\" is not a directory"
-msgstr "所指定的数据目录 \"%s\"不是一个目录."
-
-#: postmaster/postmaster.c:1454
-#, c-format
-msgid "data directory \"%s\" has wrong ownership"
-msgstr "data目录 \"%s\"的所有者权限错误."
-
-#: postmaster/postmaster.c:1456
-#, c-format
-msgid "The server must be started by the user that owns the data directory."
-msgstr "服务器必须由拥有data目录的用户启动"
-
-#: postmaster/postmaster.c:1476
-#, c-format
-msgid "data directory \"%s\" has group or world access"
-msgstr "组或其他用户都可以访问数据目录 \"%s\""
-
-#: postmaster/postmaster.c:1478
+#: postmaster/postmaster.c:1478 utils/misc/tzparser.c:341
#, c-format
-msgid "Permissions should be u=rwx (0700)."
-msgstr "权限应该为 u=rwx (0700)."
+msgid "This may indicate an incomplete PostgreSQL installation, or that the file \"%s\" has been moved away from its proper location."
+msgstr "这可能表示PostgreSQL安装未完成,或者文件\"%s\"已经从正确的位置移动到另外的位置了."
-#: postmaster/postmaster.c:1489
+#: postmaster/postmaster.c:1505
#, c-format
msgid ""
"%s: could not find the database system\n"
"预期在目录 \"%s\" 找到,\n"
"但是无法打开文件 \"%s\": %s\n"
-#: postmaster/postmaster.c:1666
+#: postmaster/postmaster.c:1682
#, c-format
msgid "select() failed in postmaster: %m"
msgstr "postmaster select() 失败: %m"
-#: postmaster/postmaster.c:1816
+#: postmaster/postmaster.c:1837
#, c-format
-msgid ""
-"performing immediate shutdown because data directory lock file is invalid"
+msgid "performing immediate shutdown because data directory lock file is invalid"
msgstr "由于数据目录锁文件非法而执行立即关闭"
-#: postmaster/postmaster.c:1894 postmaster/postmaster.c:1925
+#: postmaster/postmaster.c:1915 postmaster/postmaster.c:1946
#, c-format
msgid "incomplete startup packet"
msgstr "不完整的启动包"
-#: postmaster/postmaster.c:1906
+#: postmaster/postmaster.c:1927
#, c-format
msgid "invalid length of startup packet"
msgstr "无效的启动包长度"
-#: postmaster/postmaster.c:1964
+#: postmaster/postmaster.c:1985
#, c-format
msgid "failed to send SSL negotiation response: %m"
msgstr "发送 SSL 协商响应失败: %m"
-#: postmaster/postmaster.c:1993
+#: postmaster/postmaster.c:2011
#, c-format
msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u"
msgstr "不支持的前端协议 %u.%u: 服务端支持 %u.0 到 %u.%u"
-#: postmaster/postmaster.c:2056 utils/misc/guc.c:5657 utils/misc/guc.c:5750
-#: utils/misc/guc.c:7047 utils/misc/guc.c:9783 utils/misc/guc.c:9817
+#: postmaster/postmaster.c:2075 utils/misc/guc.c:6013 utils/misc/guc.c:6106
+#: utils/misc/guc.c:7432 utils/misc/guc.c:10195 utils/misc/guc.c:10229
#, c-format
msgid "invalid value for parameter \"%s\": \"%s\""
msgstr "参数 \"%s\" 的值无效: \"%s\""
-#: postmaster/postmaster.c:2059
+#: postmaster/postmaster.c:2078
#, c-format
msgid "Valid values are: \"false\", 0, \"true\", 1, \"database\"."
msgstr "有效值为:\"false\"、0、\"true\"、1、\"database\"。"
-#: postmaster/postmaster.c:2079
+#: postmaster/postmaster.c:2108
#, c-format
msgid "invalid startup packet layout: expected terminator as last byte"
msgstr "无效的启动包格式: 预计结束符为最后一个字节"
-#: postmaster/postmaster.c:2107
+#: postmaster/postmaster.c:2146
#, c-format
msgid "no PostgreSQL user name specified in startup packet"
msgstr "在启动包中没有指定 PostgreSQL 用户名"
-#: postmaster/postmaster.c:2166
+#: postmaster/postmaster.c:2205
#, c-format
msgid "the database system is starting up"
msgstr "数据库系统启动中"
-#: postmaster/postmaster.c:2171
+#: postmaster/postmaster.c:2210
#, c-format
msgid "the database system is shutting down"
msgstr "数据库系统停止中"
-#: postmaster/postmaster.c:2176
+#: postmaster/postmaster.c:2215
#, c-format
msgid "the database system is in recovery mode"
msgstr "数据库系统在恢复模式中"
-#: postmaster/postmaster.c:2181 storage/ipc/procarray.c:297
-#: storage/ipc/sinvaladt.c:298 storage/lmgr/proc.c:340
+#: postmaster/postmaster.c:2220 storage/ipc/procarray.c:292
+#: storage/ipc/sinvaladt.c:298 storage/lmgr/proc.c:346
#, c-format
msgid "sorry, too many clients already"
msgstr "对不起, 已经有太多的客户"
-#: postmaster/postmaster.c:2243
+#: postmaster/postmaster.c:2310
#, c-format
msgid "wrong key in cancel request for process %d"
msgstr "对于进程 %d,在取消请求中的键值错误"
-#: postmaster/postmaster.c:2251
+#: postmaster/postmaster.c:2318
#, c-format
msgid "PID %d in cancel request did not match any process"
msgstr "没有进程与取消请求中的PID %d 相匹配"
-#: postmaster/postmaster.c:2471
+#: postmaster/postmaster.c:2529
#, c-format
msgid "received SIGHUP, reloading configuration files"
msgstr "接收到 SIGHUP, 重载配置文件"
-#: postmaster/postmaster.c:2496
+#: postmaster/postmaster.c:2554
#, c-format
-msgid "pg_hba.conf not reloaded"
+msgid "pg_hba.conf was not reloaded"
msgstr "没有重新加载pg_hba.conf"
-#: postmaster/postmaster.c:2500
+#: postmaster/postmaster.c:2558
#, c-format
-msgid "pg_ident.conf not reloaded"
+msgid "pg_ident.conf was not reloaded"
msgstr "pg_ident.conf 没有重新加载"
-#: postmaster/postmaster.c:2541
+#: postmaster/postmaster.c:2568
+#, c-format
+msgid "SSL configuration was not reloaded"
+msgstr "SSL配置没有重新加载"
+
+#: postmaster/postmaster.c:2616
#, c-format
msgid "received smart shutdown request"
msgstr "接到到智能 (smart) 停止请求"
-#: postmaster/postmaster.c:2596
+#: postmaster/postmaster.c:2674
#, c-format
msgid "received fast shutdown request"
msgstr "接收到快速 (fast) 停止请求"
-#: postmaster/postmaster.c:2625
+#: postmaster/postmaster.c:2707
#, c-format
msgid "aborting any active transactions"
msgstr "中断任何激活事务"
-#: postmaster/postmaster.c:2659
+#: postmaster/postmaster.c:2741
#, c-format
msgid "received immediate shutdown request"
msgstr "接收到立即 (immediate) 停止请求"
-#: postmaster/postmaster.c:2723
+#: postmaster/postmaster.c:2808
#, c-format
msgid "shutdown at recovery target"
msgstr "在恢复目标处关闭"
-#: postmaster/postmaster.c:2739 postmaster/postmaster.c:2762
+#: postmaster/postmaster.c:2824 postmaster/postmaster.c:2847
msgid "startup process"
msgstr "启动进程"
-#: postmaster/postmaster.c:2742
+#: postmaster/postmaster.c:2827
#, c-format
msgid "aborting startup due to startup process failure"
msgstr "由于启动进程失败, 终止启动"
-#: postmaster/postmaster.c:2803
+#: postmaster/postmaster.c:2888
#, c-format
msgid "database system is ready to accept connections"
msgstr "数据库系统准备接受连接"
-#: postmaster/postmaster.c:2822
+#: postmaster/postmaster.c:2909
msgid "background writer process"
msgstr "后台写入进程"
-#: postmaster/postmaster.c:2876
+#: postmaster/postmaster.c:2963
msgid "checkpointer process"
msgstr "检查点(checkpointer)进程"
-#: postmaster/postmaster.c:2892
+#: postmaster/postmaster.c:2979
msgid "WAL writer process"
msgstr "WAL写入进程"
-#: postmaster/postmaster.c:2906
+#: postmaster/postmaster.c:2994
msgid "WAL receiver process"
msgstr "WAL接收进程"
-#: postmaster/postmaster.c:2921
+#: postmaster/postmaster.c:3009
msgid "autovacuum launcher process"
msgstr "autovacuum启动进程"
-#: postmaster/postmaster.c:2936
+#: postmaster/postmaster.c:3024
msgid "archiver process"
msgstr "归档进程"
-#: postmaster/postmaster.c:2952
+#: postmaster/postmaster.c:3040
msgid "statistics collector process"
msgstr "统计收集器进程"
-#: postmaster/postmaster.c:2966
+#: postmaster/postmaster.c:3054
msgid "system logger process"
msgstr "系统日志进程"
-#: postmaster/postmaster.c:3028
-msgid "worker process"
-msgstr "工作进程"
+#: postmaster/postmaster.c:3116
+#, c-format
+msgid "background worker \"%s\""
+msgstr "后台工作进程 \"%s\""
-#: postmaster/postmaster.c:3111 postmaster/postmaster.c:3131
-#: postmaster/postmaster.c:3138 postmaster/postmaster.c:3156
+#: postmaster/postmaster.c:3200 postmaster/postmaster.c:3220
+#: postmaster/postmaster.c:3227 postmaster/postmaster.c:3245
msgid "server process"
msgstr "服务器进程"
-#: postmaster/postmaster.c:3210
+#: postmaster/postmaster.c:3299
#, c-format
msgid "terminating any other active server processes"
msgstr "中断任何其它已激活的服务器进程"
#. translator: %s is a noun phrase describing a child process, such as
#. "server process"
-#: postmaster/postmaster.c:3466
+#: postmaster/postmaster.c:3555
#, c-format
msgid "%s (PID %d) exited with exit code %d"
msgstr "%s (PID %d) 已退出, 退出代码 %d"
-#: postmaster/postmaster.c:3468 postmaster/postmaster.c:3479
-#: postmaster/postmaster.c:3490 postmaster/postmaster.c:3499
-#: postmaster/postmaster.c:3509
+#: postmaster/postmaster.c:3557 postmaster/postmaster.c:3568
+#: postmaster/postmaster.c:3579 postmaster/postmaster.c:3588
+#: postmaster/postmaster.c:3598
#, c-format
msgid "Failed process was running: %s"
msgstr "失败进程:%s正在运行"
#. translator: %s is a noun phrase describing a child process, such as
#. "server process"
-#: postmaster/postmaster.c:3476
+#: postmaster/postmaster.c:3565
#, c-format
msgid "%s (PID %d) was terminated by exception 0x%X"
msgstr "%s (PID %d) 被异常 0x%X 终止"
#. translator: %s is a noun phrase describing a child process, such as
#. "server process"
-#: postmaster/postmaster.c:3486
+#: postmaster/postmaster.c:3575
#, c-format
msgid "%s (PID %d) was terminated by signal %d: %s"
msgstr "%s (PID %d) 被信号 %d 中断: %s"
#. translator: %s is a noun phrase describing a child process, such as
#. "server process"
-#: postmaster/postmaster.c:3497
+#: postmaster/postmaster.c:3586
#, c-format
msgid "%s (PID %d) was terminated by signal %d"
msgstr "%s (PID %d) 被信号 %d 中断"
#. translator: %s is a noun phrase describing a child process, such as
#. "server process"
-#: postmaster/postmaster.c:3507
+#: postmaster/postmaster.c:3596
#, c-format
msgid "%s (PID %d) exited with unrecognized status %d"
msgstr "%s (PID %d) 已退出, 意外状态 %d"
-#: postmaster/postmaster.c:3694
+#: postmaster/postmaster.c:3783
#, c-format
msgid "abnormal database system shutdown"
msgstr "数据库系统异常关闭"
-#: postmaster/postmaster.c:3734
+#: postmaster/postmaster.c:3823
#, c-format
msgid "all server processes terminated; reinitializing"
msgstr "所有的服务器进程被中止; 重新初始化"
-#: postmaster/postmaster.c:3946
+#: postmaster/postmaster.c:3993 postmaster/postmaster.c:5418
+#: postmaster/postmaster.c:5782
+#, c-format
+msgid "could not generate random cancel key"
+msgstr "无法生成随机取消密钥"
+
+#: postmaster/postmaster.c:4047
#, c-format
msgid "could not fork new process for connection: %m"
msgstr "无法为联接派生新进程: %m"
-#: postmaster/postmaster.c:3988
+#: postmaster/postmaster.c:4089
msgid "could not fork new process for connection: "
msgstr "无法为联接派生新进程: "
-#: postmaster/postmaster.c:4102
+#: postmaster/postmaster.c:4203
#, c-format
msgid "connection received: host=%s port=%s"
msgstr "已接收到连接: 主机=%s 端口=%s"
-#: postmaster/postmaster.c:4107
+#: postmaster/postmaster.c:4208
#, c-format
msgid "connection received: host=%s"
msgstr "已接收到连接: 主机=%s"
-#: postmaster/postmaster.c:4390
+#: postmaster/postmaster.c:4493
#, c-format
msgid "could not execute server process \"%s\": %m"
msgstr "无法执行服务器进程 \"%s\": %m"
-#: postmaster/postmaster.c:4955
+#: postmaster/postmaster.c:4646
+#, c-format
+msgid "giving up after too many tries to reserve shared memory"
+msgstr "过多尝试保留共享内存后放弃"
+
+#: postmaster/postmaster.c:4647
+#, c-format
+msgid "This might be caused by ASLR or antivirus software."
+msgstr "这可能是由ASLR或防病毒软件引起的."
+
+#: postmaster/postmaster.c:4858
+#, c-format
+msgid "SSL configuration could not be loaded in child process"
+msgstr "无法在子进程中加载SSL配置"
+
+#: postmaster/postmaster.c:4990
+#, c-format
+msgid "Please report this to <pgsql-bugs@postgresql.org>."
+msgstr "请向 <pgsql-bugs@postgresql.org>发送报告."
+
+#: postmaster/postmaster.c:5077
#, c-format
msgid "database system is ready to accept read only connections"
msgstr "数据库系统准备接受只读请求的连接"
-#: postmaster/postmaster.c:5242
+#: postmaster/postmaster.c:5346
#, c-format
msgid "could not fork startup process: %m"
msgstr "无法派生启动进程: %m"
-#: postmaster/postmaster.c:5246
+#: postmaster/postmaster.c:5350
#, c-format
msgid "could not fork background writer process: %m"
msgstr "无法 fork 后台写入进程: %m"
-#: postmaster/postmaster.c:5250
+#: postmaster/postmaster.c:5354
#, c-format
msgid "could not fork checkpointer process: %m"
msgstr "无法派生检查点进程: %m"
-#: postmaster/postmaster.c:5254
+#: postmaster/postmaster.c:5358
#, c-format
msgid "could not fork WAL writer process: %m"
msgstr "无法派生WAL写入进程: %m"
-#: postmaster/postmaster.c:5258
+#: postmaster/postmaster.c:5362
#, c-format
msgid "could not fork WAL receiver process: %m"
msgstr "无法派生WAL接收进程: %m"
-#: postmaster/postmaster.c:5262
+#: postmaster/postmaster.c:5366
#, c-format
msgid "could not fork process: %m"
msgstr "无法派生进程: %m"
-#: postmaster/postmaster.c:5424 postmaster/postmaster.c:5447
+#: postmaster/postmaster.c:5553 postmaster/postmaster.c:5576
#, c-format
msgid "database connection requirement not indicated during registration"
msgstr "在注册阶段没有指定需要的数据库连接"
-#: postmaster/postmaster.c:5431 postmaster/postmaster.c:5454
+#: postmaster/postmaster.c:5560 postmaster/postmaster.c:5583
#, c-format
msgid "invalid processing mode in background worker"
msgstr "后台工作进程中的无效处理模式"
-#: postmaster/postmaster.c:5506
+#: postmaster/postmaster.c:5655
#, c-format
msgid "starting background worker process \"%s\""
msgstr "启动后台工作进程\"%s\""
-#: postmaster/postmaster.c:5517
+#: postmaster/postmaster.c:5667
#, c-format
msgid "could not fork worker process: %m"
msgstr "无法创建工作进程:%m"
-#: postmaster/postmaster.c:5895
+#: postmaster/postmaster.c:6100
#, c-format
msgid "could not duplicate socket %d for use in backend: error code %d"
msgstr "无法为后端使用复制套接字 %d: 错误码为 %d"
-#: postmaster/postmaster.c:5927
+#: postmaster/postmaster.c:6132
#, c-format
msgid "could not create inherited socket: error code %d\n"
msgstr "无法创建继承套接字: 错误码为 %d\n"
-#: postmaster/postmaster.c:5956
+#: postmaster/postmaster.c:6161
#, c-format
msgid "could not open backend variables file \"%s\": %s\n"
msgstr "无法打开后端变量文件\"%s\":%s\n"
-#: postmaster/postmaster.c:5963
+#: postmaster/postmaster.c:6168
#, c-format
msgid "could not read from backend variables file \"%s\": %s\n"
msgstr "无法从后端可变 (variables) 文件 \"%s\" 读取: %s\n"
-#: postmaster/postmaster.c:5972
+#: postmaster/postmaster.c:6177
#, c-format
msgid "could not remove file \"%s\": %s\n"
msgstr "无法删除文件 \"%s\": %s\n"
-#: postmaster/postmaster.c:5989
+#: postmaster/postmaster.c:6194
#, c-format
msgid "could not map view of backend variables: error code %lu\n"
msgstr "无法映射后端变量视图: 错误码为 %lu\n"
-#: postmaster/postmaster.c:5998
+#: postmaster/postmaster.c:6203
#, c-format
msgid "could not unmap view of backend variables: error code %lu\n"
msgstr "无法取消后端变量视图的映射: 错误码为 %lu\n"
-#: postmaster/postmaster.c:6005
+#: postmaster/postmaster.c:6210
#, c-format
msgid "could not close handle to backend parameter variables: error code %lu\n"
msgstr "无法关闭后端参数变量的句柄: 错误码为 %lu\n"
-#: postmaster/postmaster.c:6166
+#: postmaster/postmaster.c:6371
#, c-format
msgid "could not read exit code for process\n"
msgstr "无法为进程读取退出代码\n"
-#: postmaster/postmaster.c:6171
+#: postmaster/postmaster.c:6376
#, c-format
msgid "could not post child completion status\n"
msgstr "无法传递子队列的结束状态\n"
-#: postmaster/syslogger.c:441 postmaster/syslogger.c:1041
+#: postmaster/syslogger.c:470 postmaster/syslogger.c:1146
#, c-format
msgid "could not read from logger pipe: %m"
msgstr "无法从日志管道读取: %m"
-#: postmaster/syslogger.c:490
+#: postmaster/syslogger.c:520
#, c-format
msgid "logger shutting down"
msgstr "日志正在关闭"
-#: postmaster/syslogger.c:534 postmaster/syslogger.c:548
+#: postmaster/syslogger.c:564 postmaster/syslogger.c:578
#, c-format
msgid "could not create pipe for syslog: %m"
msgstr "无法为统计日志 (syslog) 创建管道: %m"
-#: postmaster/syslogger.c:584
+#: postmaster/syslogger.c:629
#, c-format
msgid "could not fork system logger: %m"
msgstr "无法派生 (fork) 系统日志: %m"
-#: postmaster/syslogger.c:620
+#: postmaster/syslogger.c:665
#, c-format
msgid "redirecting log output to logging collector process"
msgstr "日志输出重定向到日志收集进程"
-#: postmaster/syslogger.c:621
+#: postmaster/syslogger.c:666
#, c-format
msgid "Future log output will appear in directory \"%s\"."
msgstr "后续的日志输出将出现在目录 \"%s\"中."
-#: postmaster/syslogger.c:629
+#: postmaster/syslogger.c:674
#, c-format
msgid "could not redirect stdout: %m"
msgstr "无法重定向到标准输出 (stdout) : %m"
-#: postmaster/syslogger.c:634 postmaster/syslogger.c:651
+#: postmaster/syslogger.c:679 postmaster/syslogger.c:696
#, c-format
msgid "could not redirect stderr: %m"
msgstr "无法重定向到标准错误 (stderr) : %m"
-#: postmaster/syslogger.c:996
+#: postmaster/syslogger.c:1101
#, c-format
msgid "could not write to log file: %s\n"
msgstr "无法写入日志文件: %s\n"
-#: postmaster/syslogger.c:1136
+#: postmaster/syslogger.c:1218
#, c-format
msgid "could not open log file \"%s\": %m"
msgstr "无法打开事务日志文件 \"%s\": %m"
-#: postmaster/syslogger.c:1198 postmaster/syslogger.c:1242
+#: postmaster/syslogger.c:1280 postmaster/syslogger.c:1330
#, c-format
msgid "disabling automatic rotation (use SIGHUP to re-enable)"
msgstr "取消自动轮寻 (使用 SIGHUP re-enable)"
-#: regex/regc_pg_locale.c:261
+#: regex/regc_pg_locale.c:262
#, c-format
msgid "could not determine which collation to use for regular expression"
msgstr "无法确定正规表达式中使用何种排序规则"
-#: repl_gram.y:260 repl_gram.y:292
+#: repl_gram.y:336 repl_gram.y:368
#, c-format
msgid "invalid timeline %u"
msgstr "无效时间线%u"
-#: repl_scanner.l:120
+#: repl_scanner.l:129
msgid "invalid streaming start location"
msgstr "无效的流起始位置"
-#: repl_scanner.l:171 scan.l:671
+#: repl_scanner.l:180 scan.l:683
msgid "unterminated quoted string"
msgstr "未结束的引用字符串"
-#: repl_scanner.l:181
-#, c-format
-msgid "syntax error: unexpected character \"%s\""
-msgstr "语法错误: 遇到意外字符\"%s\""
-
-#: replication/basebackup.c:230
+#: replication/basebackup.c:343
#, c-format
msgid "could not stat control file \"%s\": %m"
msgstr "无法统计控制文件 \"%s\": %m"
-#: replication/basebackup.c:339
+#: replication/basebackup.c:450
#, c-format
msgid "could not find any WAL files"
msgstr "无法找到任何WAL文件"
-#: replication/basebackup.c:352 replication/basebackup.c:366
-#: replication/basebackup.c:375
+#: replication/basebackup.c:464 replication/basebackup.c:479
+#: replication/basebackup.c:488
#, c-format
msgid "could not find WAL file \"%s\""
msgstr "找不到WAL文件\"%s\""
-#: replication/basebackup.c:414 replication/basebackup.c:440
+#: replication/basebackup.c:530 replication/basebackup.c:558
#, c-format
msgid "unexpected WAL file size \"%s\""
msgstr "意外的WAL文件大小\"%s\""
-#: replication/basebackup.c:426 replication/basebackup.c:1172
+#: replication/basebackup.c:544 replication/basebackup.c:1536
#, c-format
msgid "base backup could not send data, aborting backup"
msgstr "基础备份无法发送数据,终止备份"
-#: replication/basebackup.c:528 replication/basebackup.c:537
-#: replication/basebackup.c:546 replication/basebackup.c:555
-#: replication/basebackup.c:564 replication/basebackup.c:575
-#: replication/basebackup.c:592
+#: replication/basebackup.c:616
+#, c-format
+msgid "%s total checksum verification failures"
+msgstr "%s 校验和验证失败总数"
+
+#: replication/basebackup.c:620
+#, c-format
+msgid "checksum verification failure during base backup"
+msgstr "基础备份期间的校验和验证失败"
+
+#: replication/basebackup.c:664 replication/basebackup.c:673
+#: replication/basebackup.c:682 replication/basebackup.c:691
+#: replication/basebackup.c:700 replication/basebackup.c:711
+#: replication/basebackup.c:728 replication/basebackup.c:737
#, c-format
msgid "duplicate option \"%s\""
msgstr "重复选项 \"%s\""
-#: replication/basebackup.c:581 utils/misc/guc.c:5667
+#: replication/basebackup.c:717 utils/misc/guc.c:6023
#, c-format
msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
msgstr "%d 超出了参数 \"%s\" (%d .. %d) 的有效范围"
-#: replication/basebackup.c:855 replication/basebackup.c:957
+#: replication/basebackup.c:991 replication/basebackup.c:1161
#, c-format
msgid "could not stat file or directory \"%s\": %m"
msgstr "无法统计文件或目录\"%s\": %m"
-#: replication/basebackup.c:1124
+#: replication/basebackup.c:1316
#, c-format
msgid "skipping special file \"%s\""
msgstr "跳过特殊文件 \"%s\""
-#: replication/basebackup.c:1235
+#: replication/basebackup.c:1421
+#, c-format
+msgid "invalid segment number %d in file \"%s\""
+msgstr "文件\"%2$s\"中的段号%1$d无效"
+
+#: replication/basebackup.c:1440
+#, c-format
+msgid "cannot verify checksum in file \"%s\", block %d: read buffer size %d and page size %d differ"
+msgstr "无法验证文件\"%s\"、块%d中的校验和:读取缓冲区大小%d和页大小%d不同"
+
+#: replication/basebackup.c:1484 replication/basebackup.c:1500
+#, c-format
+msgid "could not fseek in file \"%s\": %m"
+msgstr "无法在文件\"%s\"进行查找: %m"
+
+#: replication/basebackup.c:1492
+#, c-format
+msgid "could not reread block %d of file \"%s\": %m"
+msgstr "无法在文件\"%2$s\"中重新读取块%1$d: %3$m"
+
+#: replication/basebackup.c:1516
+#, c-format
+msgid "checksum verification failed in file \"%s\", block %d: calculated %X but expected %X"
+msgstr "校验和验证在文件\"%s\"中失败,块%d :计算的为%X,但应为%X"
+
+#: replication/basebackup.c:1523
+#, c-format
+msgid "further checksum verification failures in file \"%s\" will not be reported"
+msgstr "将不会报告文件 \"%s\"中的进一步校验和验证失败。"
+
+#: replication/basebackup.c:1581
+#, c-format
+msgid "file \"%s\" has a total of %d checksum verification failures"
+msgstr "文件\"%s\"总共有%d个校验和验证失败"
+
+#: replication/basebackup.c:1609
#, c-format
msgid "file name too long for tar format: \"%s\""
msgstr "文件名对于tar格式超长:\"%s\""
-#: replication/basebackup.c:1240
+#: replication/basebackup.c:1614
#, c-format
-msgid ""
-"symbolic link target too long for tar format: file name \"%s\", target \"%s\""
+msgid "symbolic link target too long for tar format: file name \"%s\", target \"%s\""
msgstr "符号链接目标对于tar格式过长:文件名是\"%s\",目标是\"%s\""
-#: replication/libpqwalreceiver/libpqwalreceiver.c:116
+#: replication/libpqwalreceiver/libpqwalreceiver.c:235
#, c-format
-msgid "could not connect to the primary server: %s"
-msgstr "æ\97 æ³\95è¿\9eæ\8e¥å\88°ä¸»ç\94¨æ\9c\8då\8a¡å\99¨ï¼\9a%s"
+msgid "invalid connection string syntax: %s"
+msgstr "æ\97 æ\95\88ç\9a\84è¿\9eæ\8e¥å\97ç¬¦ä¸²è¯æ³\95: %s"
-#: replication/libpqwalreceiver/libpqwalreceiver.c:140
+#: replication/libpqwalreceiver/libpqwalreceiver.c:259
#, c-format
-msgid ""
-"could not receive database system identifier and timeline ID from the "
-"primary server: %s"
+msgid "could not parse connection string: %s"
+msgstr "无法分析连接字符串: %s"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:332
+#, c-format
+msgid "could not receive database system identifier and timeline ID from the primary server: %s"
msgstr "无法从主用服务器接收数据库系统标识符和时间线ID:%s"
-#: replication/libpqwalreceiver/libpqwalreceiver.c:151
-#: replication/libpqwalreceiver/libpqwalreceiver.c:305
+#: replication/libpqwalreceiver/libpqwalreceiver.c:343
+#: replication/libpqwalreceiver/libpqwalreceiver.c:550
#, c-format
msgid "invalid response from primary server"
msgstr "来自主用服务器的回应无效"
-#: replication/libpqwalreceiver/libpqwalreceiver.c:152
+#: replication/libpqwalreceiver/libpqwalreceiver.c:344
#, c-format
-msgid ""
-"Could not identify system: got %d rows and %d fields, expected %d rows and "
-"%d or more fields."
+msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields."
msgstr "无法识别系统: 得到 %d 行和 %d 列, 期望值为: %d 行和 %d 列."
-#: replication/libpqwalreceiver/libpqwalreceiver.c:168
-#, c-format
-msgid "database system identifier differs between the primary and standby"
-msgstr "在主用服务器和备用服务器之间,数据库系统标识符是不一样的。"
-
-#: replication/libpqwalreceiver/libpqwalreceiver.c:169
-#, c-format
-msgid "The primary's identifier is %s, the standby's identifier is %s."
-msgstr "主用服务器的标识符是%s,备用服务器的标识符是%s。"
-
-#: replication/libpqwalreceiver/libpqwalreceiver.c:211
+#: replication/libpqwalreceiver/libpqwalreceiver.c:410
+#: replication/libpqwalreceiver/libpqwalreceiver.c:416
+#: replication/libpqwalreceiver/libpqwalreceiver.c:441
#, c-format
msgid "could not start WAL streaming: %s"
msgstr "无法启动WAL流复制: %s"
# fe-misc.c:702
-#: replication/libpqwalreceiver/libpqwalreceiver.c:229
+#: replication/libpqwalreceiver/libpqwalreceiver.c:460
#, c-format
msgid "could not send end-of-streaming message to primary: %s"
msgstr "无法向主服务器:%s发送流终止的消息"
# fe-exec.c:1371
-#: replication/libpqwalreceiver/libpqwalreceiver.c:251
+#: replication/libpqwalreceiver/libpqwalreceiver.c:482
#, c-format
msgid "unexpected result set after end-of-streaming"
msgstr "流结束时出现意外的结果集"
-#: replication/libpqwalreceiver/libpqwalreceiver.c:263
+#: replication/libpqwalreceiver/libpqwalreceiver.c:496
+#, c-format
+msgid "error while shutting down streaming COPY: %s"
+msgstr "关闭流式复制时出错: %s"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:505
#, c-format
msgid "error reading result of streaming command: %s"
msgstr "读流命令的结果时出错: %s"
# fe-exec.c:1371
-#: replication/libpqwalreceiver/libpqwalreceiver.c:271
+#: replication/libpqwalreceiver/libpqwalreceiver.c:513
+#: replication/libpqwalreceiver/libpqwalreceiver.c:741
#, c-format
msgid "unexpected result after CommandComplete: %s"
msgstr "CommandComplete %s结束后出现意外结果"
-#: replication/libpqwalreceiver/libpqwalreceiver.c:294
+#: replication/libpqwalreceiver/libpqwalreceiver.c:539
+#, c-format
+msgid "could not receive timeline history file from the primary server: %s"
+msgstr "无法从主服务器:%s接收历史时间线"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:551
+#, c-format
+msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields."
+msgstr "期望得到带有两个字段的一条记录,但是现在得到了%d条记录,每条带有%d个字段."
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:705
+#: replication/libpqwalreceiver/libpqwalreceiver.c:756
+#: replication/libpqwalreceiver/libpqwalreceiver.c:762
+#, c-format
+msgid "could not receive data from WAL stream: %s"
+msgstr "无法从WAL流中获得数据: %s"
+
+# fe-misc.c:702
+#: replication/libpqwalreceiver/libpqwalreceiver.c:781
+#, c-format
+msgid "could not send data to WAL stream: %s"
+msgstr "无法向WAL流:%s发送数据"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:830
+#, c-format
+msgid "could not create replication slot \"%s\": %s"
+msgstr "无法创建复制槽\"%s\": %s"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:864
+#, c-format
+msgid "invalid query response"
+msgstr "无效的查询响应"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:865
+#, c-format
+msgid "Expected %d fields, got %d fields."
+msgstr "应输入%d个字段,得到%d个字段."
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:934
+#, c-format
+msgid "the query interface requires a database connection"
+msgstr "查询接口需要数据库连接"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:965
+msgid "empty query"
+msgstr "空查询"
+
+#: replication/logical/launcher.c:310
+#, c-format
+msgid "starting logical replication worker for subscription \"%s\""
+msgstr "正在为订阅\"%s\"启动逻辑复制工作线程"
+
+#: replication/logical/launcher.c:317
+#, c-format
+msgid "cannot start logical replication workers when max_replication_slots = 0"
+msgstr "当max_replication_slots = 0时,无法启动逻辑复制工作进程"
+
+#: replication/logical/launcher.c:397
+#, c-format
+msgid "out of logical replication worker slots"
+msgstr "逻辑复制工作槽不足"
+
+#: replication/logical/launcher.c:398
#, c-format
-msgid "could not receive timeline history file from the primary server: %s"
-msgstr "æ\97 æ³\95ä»\8e主æ\9c\8då\8a¡å\99¨:%sæ\8e¥æ\94¶å\8e\86å\8f²æ\97¶é\97´çº¿"
+msgid "You might need to increase max_logical_replication_workers."
+msgstr "æ\82¨å\8f¯è\83½é\9c\80è¦\81å¢\9eå\8a å\8f\82æ\95°max_logical_replication_workers."
-#: replication/libpqwalreceiver/libpqwalreceiver.c:306
+#: replication/logical/launcher.c:453
#, c-format
-msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields."
-msgstr ""
-"期望得到带有两个字段的一条记录,但是现在得到了%d条记录,每条带有%d个字段."
+msgid "out of background worker slots"
+msgstr "超出后台工作线程槽"
-#: replication/libpqwalreceiver/libpqwalreceiver.c:334
+#: replication/logical/launcher.c:454
#, c-format
-#| msgid "invalid mask length: %d"
-msgid "invalid socket: %s"
-msgstr "无效的套接字:%s"
+msgid "You might need to increase max_worker_processes."
+msgstr "您可能需要增加参数max_worker_processes."
-#: replication/libpqwalreceiver/libpqwalreceiver.c:374
-#: storage/ipc/latch.c:1271
+#: replication/logical/launcher.c:661
#, c-format
-msgid "select() failed: %m"
-msgstr "执行select()失败: %m"
+msgid "logical replication worker slot %d is empty, cannot attach"
+msgstr "逻辑复制工作槽%d为空,无法附加"
-#: replication/libpqwalreceiver/libpqwalreceiver.c:497
-#: replication/libpqwalreceiver/libpqwalreceiver.c:524
-#: replication/libpqwalreceiver/libpqwalreceiver.c:530
+#: replication/logical/launcher.c:670
#, c-format
-msgid "could not receive data from WAL stream: %s"
-msgstr "无法从WAL流中获得数据: %s"
+msgid "logical replication worker slot %d is already used by another worker, cannot attach"
+msgstr "逻辑复制工作槽%d已被另一个工作进程使用,无法附加"
-# fe-misc.c:702
-#: replication/libpqwalreceiver/libpqwalreceiver.c:549
+#: replication/logical/launcher.c:988
#, c-format
-msgid "could not send data to WAL stream: %s"
-msgstr "无法向WAL流:%s发送数据"
+msgid "logical replication launcher started"
+msgstr "逻辑复制启动程序已启动"
-#: replication/logical/logical.c:83
+#: replication/logical/logical.c:90
#, c-format
msgid "logical decoding requires wal_level >= logical"
msgstr "逻辑解码要求wal_level >= logical"
-#: replication/logical/logical.c:88
+#: replication/logical/logical.c:95
#, c-format
msgid "logical decoding requires a database connection"
msgstr "逻辑解码需要一个数据库连接"
-#: replication/logical/logical.c:106
+#: replication/logical/logical.c:113
#, c-format
msgid "logical decoding cannot be used while in recovery"
msgstr "逻辑解码不能用于恢复操作"
-#: replication/logical/logical.c:238 replication/logical/logical.c:342
+#: replication/logical/logical.c:255 replication/logical/logical.c:386
#, c-format
msgid "cannot use physical replication slot for logical decoding"
msgstr "逻辑解码不能使用物理复制槽"
-#: replication/logical/logical.c:243 replication/logical/logical.c:347
+#: replication/logical/logical.c:260 replication/logical/logical.c:391
#, c-format
msgid "replication slot \"%s\" was not created in this database"
msgstr "复制槽\"%s\"不能用于此数据库"
-#: replication/logical/logical.c:250
+#: replication/logical/logical.c:267
#, c-format
-msgid ""
-"cannot create logical replication slot in transaction that has performed "
-"writes"
+msgid "cannot create logical replication slot in transaction that has performed writes"
msgstr "已经执行了写操作的事务里,不能创建逻辑复制槽"
-#: replication/logical/logical.c:384
+#: replication/logical/logical.c:431
#, c-format
msgid "starting logical decoding for slot \"%s\""
msgstr "开始为槽\"%s\"进行逻辑解码"
-#: replication/logical/logical.c:386
+#: replication/logical/logical.c:433
#, c-format
-msgid "streaming transactions committing after %X/%X, reading WAL from %X/%X"
-msgstr "流事务在%X/%X后提交,从%X/%X位置读"
+msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X."
+msgstr "流事务在%X/%X后提交,从%X/%X位置读."
-#: replication/logical/logical.c:521
+#: replication/logical/logical.c:583
#, c-format
-msgid ""
-"slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X"
+msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X"
msgstr "槽 \"%s\", 输出插件 \"%s\", 在 %s 回调, 关联的 LSN 地址为%X/%X"
-#: replication/logical/logical.c:528
+#: replication/logical/logical.c:590
#, c-format
msgid "slot \"%s\", output plugin \"%s\", in the %s callback"
msgstr "槽 \"%s\", 输出插件 \"%s\", 在 %s 回调"
-#: replication/logical/logicalfuncs.c:113 replication/slotfuncs.c:32
+#: replication/logical/logicalfuncs.c:114 replication/slotfuncs.c:35
#, c-format
msgid "must be superuser or replication role to use replication slots"
msgstr "只有超级用户或者拥有复制角色的用户才能使用复制槽"
-#: replication/logical/logicalfuncs.c:152
+#: replication/logical/logicalfuncs.c:153
#, c-format
-#| msgid "field name must not be null"
msgid "slot name must not be null"
msgstr "槽名称不能为空"
-#: replication/logical/logicalfuncs.c:168
+#: replication/logical/logicalfuncs.c:169
#, c-format
-#| msgid "typmod array must not contain nulls"
msgid "options array must not be null"
msgstr "选项数组不能为空"
-#: replication/logical/logicalfuncs.c:199
+#: replication/logical/logicalfuncs.c:200
#, c-format
msgid "array must be one-dimensional"
msgstr "数组必须是一维的"
-#: replication/logical/logicalfuncs.c:205
+#: replication/logical/logicalfuncs.c:206
#, c-format
msgid "array must not contain nulls"
msgstr "数组不能包含空值"
-#: replication/logical/logicalfuncs.c:221 utils/adt/json.c:2277
-#: utils/adt/jsonb.c:1356
+#: replication/logical/logicalfuncs.c:222 utils/adt/json.c:2310
+#: utils/adt/jsonb.c:1269
#, c-format
msgid "array must have even number of elements"
msgstr "数组必须包含偶数个元素"
-#: replication/logical/logicalfuncs.c:261
+#: replication/logical/logicalfuncs.c:269
#, c-format
-msgid ""
-"logical decoding output plugin \"%s\" produces binary output, but function "
-"\"%s\" expects textual data"
+msgid "logical decoding output plugin \"%s\" produces binary output, but function \"%s\" expects textual data"
msgstr "逻辑解码输出插件\"%s\"产生二进制输出,但是函数\"%s\"期待的是文本数据"
-#: replication/logical/origin.c:181
+#: replication/logical/origin.c:185
#, c-format
msgid "only superusers can query or manipulate replication origins"
msgstr "只有超级用户能查询或者操纵复制源头"
-#: replication/logical/origin.c:186
+#: replication/logical/origin.c:190
#, c-format
-msgid ""
-"cannot query or manipulate replication origin when max_replication_slots = 0"
+msgid "cannot query or manipulate replication origin when max_replication_slots = 0"
msgstr "当max_replication_slots = 0时无法查询或者操纵复制源头"
-#: replication/logical/origin.c:191
+#: replication/logical/origin.c:195
#, c-format
msgid "cannot manipulate replication origins during recovery"
msgstr "无法在恢复期间操作复制源头"
-#: replication/logical/origin.c:316
+#: replication/logical/origin.c:230
+#, c-format
+msgid "replication origin \"%s\" does not exist"
+msgstr "复制源\"%s\"不存在"
+
+#: replication/logical/origin.c:321
#, c-format
msgid "could not find free replication origin OID"
msgstr "无法找到空闲的复制源头OID"
-#: replication/logical/origin.c:353
+#: replication/logical/origin.c:369
#, c-format
msgid "could not drop replication origin with OID %d, in use by PID %d"
msgstr "无法删除具有OID %d的复制源头,PID %d正在使用它"
-#: replication/logical/origin.c:671
+#: replication/logical/origin.c:461
+#, c-format
+msgid "replication origin with OID %u does not exist"
+msgstr "OID为%u的复制源不存在"
+
+#: replication/logical/origin.c:725
#, c-format
msgid "replication checkpoint has wrong magic %u instead of %u"
msgstr "复制检查点具有错误的magic值%u而不是%u"
-#: replication/logical/origin.c:703
+#: replication/logical/origin.c:757
#, c-format
msgid "could not read file \"%s\": read %d of %zu"
msgstr "无法读取文件\"%1$s\":读取了%3$zu中的%2$d"
-#: replication/logical/origin.c:712
+#: replication/logical/origin.c:766
#, c-format
msgid "could not find free replication state, increase max_replication_slots"
msgstr "无法找到空闲的复制状态,请增加max_replication_slots的值"
-#: replication/logical/origin.c:730
+#: replication/logical/origin.c:784
#, c-format
msgid "replication slot checkpoint has wrong checksum %u, expected %u"
msgstr "复制槽检查点具有错误的校验和%u,正确的应该是%u"
-#: replication/logical/origin.c:854
+#: replication/logical/origin.c:908
#, c-format
msgid "replication origin with OID %d is already active for PID %d"
msgstr "OID为%d的复制源头已经被用于PID %d"
-#: replication/logical/origin.c:865 replication/logical/origin.c:1045
+#: replication/logical/origin.c:919 replication/logical/origin.c:1106
#, c-format
-msgid ""
-"could not find free replication state slot for replication origin with OID %u"
+msgid "could not find free replication state slot for replication origin with OID %u"
msgstr "无法为带有OID %u的复制源头找到空闲的复制状态槽"
-#: replication/logical/origin.c:867 replication/logical/origin.c:1047
-#: replication/slot.c:1288
+#: replication/logical/origin.c:921 replication/logical/origin.c:1108
+#: replication/slot.c:1559
#, c-format
msgid "Increase max_replication_slots and try again."
msgstr "增大 max_replication_slots的值再重试."
-#: replication/logical/origin.c:1004
+#: replication/logical/origin.c:1065
#, c-format
msgid "cannot setup replication origin when one is already setup"
msgstr "在已经设置了一个复制源头的情况下无法再设置复制源头"
-#: replication/logical/origin.c:1033
+#: replication/logical/origin.c:1094
#, c-format
msgid "replication identifier %d is already active for PID %d"
msgstr "复制标识符%d已经被用于PID %d"
-#: replication/logical/origin.c:1079 replication/logical/origin.c:1274
-#: replication/logical/origin.c:1294
+#: replication/logical/origin.c:1145 replication/logical/origin.c:1343
+#: replication/logical/origin.c:1363
#, c-format
msgid "no replication origin is configured"
msgstr "没有配置复制源头"
-#: replication/logical/reorderbuffer.c:2309
+#: replication/logical/relation.c:255
+#, c-format
+msgid "logical replication target relation \"%s.%s\" does not exist"
+msgstr "逻辑复制目标关系\"%s.%s\"不存在"
+
+#: replication/logical/relation.c:297
+#, c-format
+msgid "logical replication target relation \"%s.%s\" is missing some replicated columns"
+msgstr "逻辑复制目标关系\"%s.%s\"缺少某些已复制列"
+
+#: replication/logical/relation.c:337
+#, c-format
+msgid "logical replication target relation \"%s.%s\" uses system columns in REPLICA IDENTITY index"
+msgstr "逻辑复制目标关系\"%s.%s\"使用REPLICA IDENTITY索引中的系统列"
+
+#: replication/logical/reorderbuffer.c:2503
#, c-format
msgid "could not write to data file for XID %u: %m"
msgstr "无法将XID %u:%m写入数据文件"
-#: replication/logical/reorderbuffer.c:2405
-#: replication/logical/reorderbuffer.c:2425
+#: replication/logical/reorderbuffer.c:2596
+#: replication/logical/reorderbuffer.c:2618
#, c-format
msgid "could not read from reorderbuffer spill file: %m"
msgstr "无法读取重排缓冲的溢出文件:%m"
-#: replication/logical/reorderbuffer.c:2409
-#: replication/logical/reorderbuffer.c:2429
+#: replication/logical/reorderbuffer.c:2600
+#: replication/logical/reorderbuffer.c:2622
#, c-format
-msgid ""
-"could not read from reorderbuffer spill file: read %d instead of %u bytes"
+msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes"
msgstr "无法读取重排缓冲的溢出文件, 读到了%d字节,而不是%u字节"
-#: replication/logical/reorderbuffer.c:3084
+#: replication/logical/reorderbuffer.c:2845
+#, c-format
+msgid "could not remove file \"%s\" during removal of pg_replslot/%s/*.xid: %m"
+msgstr "在删除pg_replslot/%2$s/*.xid期间无法删除文件\"%1$s\": %3$m"
+
+#: replication/logical/reorderbuffer.c:3311
#, c-format
msgid "could not read from file \"%s\": read %d instead of %d bytes"
msgstr "无法读文件\"%s\": 读到了%d字节,而不是%d字节"
-#: replication/logical/snapbuild.c:600
+#: replication/logical/snapbuild.c:612
+#, c-format
+msgid "initial slot snapshot too large"
+msgstr "初始槽快照太大"
+
+#: replication/logical/snapbuild.c:664
#, c-format
msgid "exported logical decoding snapshot: \"%s\" with %u transaction ID"
-msgid_plural ""
-"exported logical decoding snapshot: \"%s\" with %u transaction IDs"
+msgid_plural "exported logical decoding snapshot: \"%s\" with %u transaction IDs"
msgstr[0] "导出逻辑解码快照: \"%s\" 带有 %u 个事务 ID"
-#: replication/logical/snapbuild.c:919 replication/logical/snapbuild.c:1284
-#: replication/logical/snapbuild.c:1815
+#: replication/logical/snapbuild.c:1269 replication/logical/snapbuild.c:1362
+#: replication/logical/snapbuild.c:1872
#, c-format
msgid "logical decoding found consistent point at %X/%X"
msgstr "在 %X/%X处,逻辑解码发现一致点"
-#: replication/logical/snapbuild.c:921
-#, c-format
-msgid "Transaction ID %u finished; no more running transactions."
-msgstr "事务ID %u已结束;已没有正运行的事务."
-
-#: replication/logical/snapbuild.c:1286
+#: replication/logical/snapbuild.c:1271
#, c-format
msgid "There are no running transactions."
msgstr "没有正运行的事务."
-#: replication/logical/snapbuild.c:1348
+#: replication/logical/snapbuild.c:1313
#, c-format
msgid "logical decoding found initial starting point at %X/%X"
msgstr "逻辑解码在 %X/%X发现初始化的起始点"
-#: replication/logical/snapbuild.c:1350
+#: replication/logical/snapbuild.c:1315 replication/logical/snapbuild.c:1339
#, c-format
-msgid "%u transaction needs to finish."
-msgid_plural "%u transactions need to finish."
-msgstr[0] "有%u笔事务需要结束."
+msgid "Waiting for transactions (approximately %d) older than %u to end."
+msgstr "等待超过%2$u的事务(大约%1$d)结束."
-#: replication/logical/snapbuild.c:1689 replication/logical/snapbuild.c:1715
-#: replication/logical/snapbuild.c:1729 replication/logical/snapbuild.c:1743
+#: replication/logical/snapbuild.c:1337
+#, c-format
+msgid "logical decoding found initial consistent point at %X/%X"
+msgstr "在 %X/%X处,逻辑解码发现初始一致点"
+
+#: replication/logical/snapbuild.c:1364
+#, c-format
+msgid "There are no old transactions anymore."
+msgstr "不再有旧的事务."
+
+#: replication/logical/snapbuild.c:1736 replication/logical/snapbuild.c:1767
+#: replication/logical/snapbuild.c:1787 replication/logical/snapbuild.c:1806
#, c-format
msgid "could not read file \"%s\", read %d of %d: %m"
msgstr "无法读取文件 \"%1$s\", 从%3$d:%4$m中读取了%2$d"
-#: replication/logical/snapbuild.c:1695
+#: replication/logical/snapbuild.c:1742
#, c-format
msgid "snapbuild state file \"%s\" has wrong magic number: %u instead of %u"
msgstr "快照构建状态文件\"%s\"具有错误的magic号:%u而不是%u"
-#: replication/logical/snapbuild.c:1700
+#: replication/logical/snapbuild.c:1747
#, c-format
msgid "snapbuild state file \"%s\" has unsupported version: %u instead of %u"
msgstr "快照构建状态文件\"%s\"具有不被支持的版本:%u而不是%u"
-#: replication/logical/snapbuild.c:1756
+#: replication/logical/snapbuild.c:1819
#, c-format
msgid "checksum mismatch for snapbuild state file \"%s\": is %u, should be %u"
msgstr "快照构建状态文件\"%s\"的校验和不匹配:现在的值是%u,正确值应该是%u"
-#: replication/logical/snapbuild.c:1817
+#: replication/logical/snapbuild.c:1874
#, c-format
msgid "Logical decoding will begin using saved snapshot."
msgstr "逻辑解码将从使用已存的快照开始."
-#: replication/logical/snapbuild.c:1890
+#: replication/logical/snapbuild.c:1946
#, c-format
msgid "could not parse file name \"%s\""
msgstr "无法解析文件名 \"%s\""
-#: replication/slot.c:183
+#: replication/logical/tablesync.c:138
+#, c-format
+msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished"
+msgstr "订阅\"%s\"、表 \"%s\" 的逻辑复制表同步工作线程已完成"
+
+#: replication/logical/tablesync.c:685
+#, c-format
+msgid "could not fetch table info for table \"%s.%s\" from publisher: %s"
+msgstr "无法从发布服务器获取表\"%s.%s\"的表信息: %s"
+
+#: replication/logical/tablesync.c:691
+#, c-format
+msgid "table \"%s.%s\" not found on publisher"
+msgstr "在发布服务器上找不到表\"%s.%s\""
+
+#: replication/logical/tablesync.c:721
+#, c-format
+msgid "could not fetch table info for table \"%s.%s\": %s"
+msgstr "无法获取表\"%s.%s\"的表信息: %s"
+
+#: replication/logical/tablesync.c:791
+#, c-format
+msgid "could not start initial contents copy for table \"%s.%s\": %s"
+msgstr "无法启动表\"%s.%s\"的初始内容复制: %s"
+
+#: replication/logical/tablesync.c:904
+#, c-format
+msgid "table copy could not start transaction on publisher"
+msgstr "表复制无法在发布服务器上启动事务"
+
+#: replication/logical/tablesync.c:926
+#, c-format
+msgid "table copy could not finish transaction on publisher"
+msgstr "表复制无法完成发布服务器上的事务"
+
+#: replication/logical/worker.c:307
+#, c-format
+msgid "processing remote data for replication target relation \"%s.%s\" column \"%s\", remote type %s, local type %s"
+msgstr "正在处理复制目标关系\"%s.%s\" 列\"%s\",远程类型%s,本地类型%s的远程数据"
+
+#: replication/logical/worker.c:528
+#, c-format
+msgid "ORIGIN message sent out of order"
+msgstr "源消息发送不正常"
+
+#: replication/logical/worker.c:661
+#, c-format
+msgid "publisher did not send replica identity column expected by the logical replication target relation \"%s.%s\""
+msgstr "发布服务器没有发送逻辑复制目标关系\"%s.%s\"所需的副本标识列"
+
+#: replication/logical/worker.c:668
+#, c-format
+msgid "logical replication target relation \"%s.%s\" has neither REPLICA IDENTITY index nor PRIMARY KEY and published relation does not have REPLICA IDENTITY FULL"
+msgstr "逻辑复制目标关系\"%s.%s\"既没有REPLICA IDENTITY索引,也没有PRIMARY KEY,并且发布的关系没有REPLICA IDENTITY FULL"
+
+#: replication/logical/worker.c:1007
+#, c-format
+msgid "invalid logical replication message type \"%c\""
+msgstr "无效的逻辑复制消息类型 \"%c\""
+
+#: replication/logical/worker.c:1148
+#, c-format
+msgid "data stream from publisher has ended"
+msgstr "来自发布服务器的数据流已结束"
+
+#: replication/logical/worker.c:1307
+#, c-format
+msgid "terminating logical replication worker due to timeout"
+msgstr "由于超时而终止逻辑复制工作线程"
+
+#: replication/logical/worker.c:1455
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was removed"
+msgstr "订阅\"%s\"的逻辑复制应用工作线程将停止,因为该订阅已被删除。"
+
+#: replication/logical/worker.c:1469
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was disabled"
+msgstr "订阅\"%s\"的逻辑复制应用工作线程将停止,因为该订阅已被禁用"
+
+#: replication/logical/worker.c:1483
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" will restart because the connection information was changed"
+msgstr "订阅\"%s\"的逻辑复制应用工作线程将重新启动,因为连接信息已更改"
+
+#: replication/logical/worker.c:1497
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" will restart because subscription was renamed"
+msgstr "订阅\"%s\"的逻辑复制应用工作线程将重新启动,因为订阅已重命名"
+
+#: replication/logical/worker.c:1514
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" will restart because the replication slot name was changed"
+msgstr "订阅\"%s\"的逻辑复制应用工作线程将重新启动,因为复制槽名称已更改"
+
+#: replication/logical/worker.c:1528
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" will restart because subscription's publications were changed"
+msgstr "订阅\"%s\"的逻辑复制应用工作线程将重新启动,因为订阅的发布已更改"
+
+#: replication/logical/worker.c:1631
+#, c-format
+msgid "logical replication apply worker for subscription %u will not start because the subscription was removed during startup"
+msgstr "订阅%u的逻辑复制应用工作线程将不会启动,因为在启动期间已删除该订阅"
+
+#: replication/logical/worker.c:1643
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" will not start because the subscription was disabled during startup"
+msgstr "订阅\"%s\"的逻辑复制应用工作进程将不会启动,因为在启动过程中禁用了订阅"
+
+#: replication/logical/worker.c:1661
+#, c-format
+msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has started"
+msgstr "订阅\"%s\"、表\"%s\"的逻辑复制表同步工作线程已启动"
+
+#: replication/logical/worker.c:1665
+#, c-format
+msgid "logical replication apply worker for subscription \"%s\" has started"
+msgstr "订阅\"%s\"的逻辑复制应用工作线程已启动 "
+
+#: replication/logical/worker.c:1705
+#, c-format
+msgid "subscription has no replication slot set"
+msgstr "订阅没有复制槽集"
+
+#: replication/pgoutput/pgoutput.c:117
+#, c-format
+msgid "invalid proto_version"
+msgstr "无效的proto_version"
+
+#: replication/pgoutput/pgoutput.c:122
+#, c-format
+msgid "proto_version \"%s\" out of range"
+msgstr "proto_version \"%s\"超出范围"
+
+#: replication/pgoutput/pgoutput.c:139
+#, c-format
+msgid "invalid publication_names syntax"
+msgstr "无效的publication_names语法"
+
+#: replication/pgoutput/pgoutput.c:181
+#, c-format
+msgid "client sent proto_version=%d but we only support protocol %d or lower"
+msgstr "客户端发送的协议版本为%d,但我们只支持协议%d或更低版本"
+
+#: replication/pgoutput/pgoutput.c:187
+#, c-format
+msgid "client sent proto_version=%d but we only support protocol %d or higher"
+msgstr "客户端发送的协议版本为%d,但我们只支持协议%d或更高版本"
+
+#: replication/pgoutput/pgoutput.c:193
+#, c-format
+msgid "publication_names parameter missing"
+msgstr "缺少publication_names参数"
+
+#: replication/slot.c:182
#, c-format
msgid "replication slot name \"%s\" is too short"
msgstr "复制槽名 \"%s\" 太短"
-#: replication/slot.c:192
+#: replication/slot.c:191
#, c-format
msgid "replication slot name \"%s\" is too long"
msgstr "复制槽名 \"%s\" 太长"
-#: replication/slot.c:205
+#: replication/slot.c:204
#, c-format
msgid "replication slot name \"%s\" contains invalid character"
msgstr "复制槽名 \"%s\"中包含无效的数据"
-#: replication/slot.c:207
+#: replication/slot.c:206
#, c-format
-msgid ""
-"Replication slot names may only contain lower case letters, numbers, and the "
-"underscore character."
+msgid "Replication slot names may only contain lower case letters, numbers, and the underscore character."
msgstr "复制槽的名字只能包含小写字母、数字以及下划线字符。"
-#: replication/slot.c:254
+#: replication/slot.c:253
#, c-format
msgid "replication slot \"%s\" already exists"
msgstr "复制槽名 \"%s\" 已经存在"
-#: replication/slot.c:264
+#: replication/slot.c:263
#, c-format
msgid "all replication slots are in use"
msgstr "所有的复制槽都在使用中"
-#: replication/slot.c:265
+#: replication/slot.c:264
#, c-format
msgid "Free one or increase max_replication_slots."
msgstr "释放一个槽或者增大max_replication_slots的值."
-#: replication/slot.c:351
+#: replication/slot.c:387
#, c-format
msgid "replication slot \"%s\" does not exist"
msgstr "复制槽名 \"%s\" 不存在"
-#: replication/slot.c:355
+#: replication/slot.c:398 replication/slot.c:948
#, c-format
-#| msgid "replication slot \"%s\" is already active for PID %d"
msgid "replication slot \"%s\" is active for PID %d"
msgstr "复制槽 \"%s\" 正用于 PID %d"
-#: replication/slot.c:501 replication/slot.c:912 replication/slot.c:1249
+#: replication/slot.c:632 replication/slot.c:1141 replication/slot.c:1495
#, c-format
msgid "could not remove directory \"%s\""
msgstr "无法删除目录 \"%s\""
-#: replication/slot.c:761
+#: replication/slot.c:983
#, c-format
msgid "replication slots can only be used if max_replication_slots > 0"
msgstr "复制槽只有当 max_replication_slots > 0时才能使用"
-#: replication/slot.c:766
+#: replication/slot.c:988
#, c-format
-#| msgid "replication slots can only be used if wal_level >= archive"
msgid "replication slots can only be used if wal_level >= replica"
msgstr "复制槽只有当 wal_level >= replica 时才能使用"
-#: replication/slot.c:1181 replication/slot.c:1219
+#: replication/slot.c:1427 replication/slot.c:1467
#, c-format
msgid "could not read file \"%s\", read %d of %u: %m"
msgstr "无法读取文件 \"%s\", 读到了%d字节,从%u:%m处"
-#: replication/slot.c:1190
+#: replication/slot.c:1436
#, c-format
msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u"
msgstr "复制槽文件\"%s\"具有错误的magic号:%u,正确的应该是%u"
-#: replication/slot.c:1197
+#: replication/slot.c:1443
#, c-format
msgid "replication slot file \"%s\" has unsupported version %u"
msgstr "复制槽文件 \"%s\" 的版本号%u不被支持"
-#: replication/slot.c:1204
+#: replication/slot.c:1450
#, c-format
msgid "replication slot file \"%s\" has corrupted length %u"
msgstr "复制槽文件 \"%s\" 的长度 %u已损坏"
-#: replication/slot.c:1234
+#: replication/slot.c:1482
#, c-format
msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u"
msgstr "复制槽文件\"%s\"的校验和不匹配:值为 %u,正确值应该是 %u"
-#: replication/slot.c:1287
+#: replication/slot.c:1516
+#, c-format
+msgid "logical replication slot \"%s\" exists, but wal_level < logical"
+msgstr "存在逻辑复制槽\"%s\",但wal_level < logical"
+
+#: replication/slot.c:1518
+#, c-format
+msgid "Change wal_level to be logical or higher."
+msgstr "将 wal_level更改为logical或更高级别."
+
+#: replication/slot.c:1522
+#, c-format
+msgid "physical replication slot \"%s\" exists, but wal_level < replica"
+msgstr "物理复制槽\"%s\"存在,但wal_level < replica"
+
+#: replication/slot.c:1524
+#, c-format
+msgid "Change wal_level to be replica or higher."
+msgstr "将wal_level更改为replica或更高级别."
+
+#: replication/slot.c:1558
#, c-format
msgid "too many replication slots active before shutdown"
msgstr "关闭前有太多活动的复制槽"
-#: replication/syncrep.c:228
+#: replication/slotfuncs.c:490
#, c-format
-msgid ""
-"canceling the wait for synchronous replication and terminating connection "
-"due to administrator command"
+msgid "invalid target wal lsn"
+msgstr "无效的目标wal lsn"
+
+#: replication/slotfuncs.c:512
+#, c-format
+msgid "cannot advance replication slot that has not previously reserved WAL"
+msgstr "无法前进以前没有保留的WAL的复制槽"
+
+#: replication/slotfuncs.c:528
+#, c-format
+msgid "cannot advance replication slot to %X/%X, minimum is %X/%X"
+msgstr "无法将复制槽前进到%X/%X,最小值为%X/%X"
+
+#: replication/syncrep.c:246
+#, c-format
+msgid "canceling the wait for synchronous replication and terminating connection due to administrator command"
msgstr "取消等待同步复制,听从管理员命令终断连接"
-#: replication/syncrep.c:229 replication/syncrep.c:246
+#: replication/syncrep.c:247 replication/syncrep.c:264
#, c-format
-msgid ""
-"The transaction has already committed locally, but might not have been "
-"replicated to the standby."
+msgid "The transaction has already committed locally, but might not have been replicated to the standby."
msgstr "事务已经在本地提交, 但有可能还没完成到备用节点的复制."
-#: replication/syncrep.c:245
+#: replication/syncrep.c:263
#, c-format
msgid "canceling wait for synchronous replication due to user request"
msgstr "听从用户请求,取消等待同步复制"
-#: replication/syncrep.c:380
+#: replication/syncrep.c:397
#, c-format
msgid "standby \"%s\" now has synchronous standby priority %u"
msgstr "备用节点 \"%s\" 现在拥有同步备用优先级: %u"
-#: replication/syncrep.c:440
+#: replication/syncrep.c:460
#, c-format
-#| msgid "standby \"%s\" is now the synchronous standby with priority %u"
msgid "standby \"%s\" is now a synchronous standby with priority %u"
msgstr "后备 \"%s\" 现在是具有优先级 %u 的一个同步后备"
-#: replication/syncrep.c:969
+#: replication/syncrep.c:464
#, c-format
-msgid "synchronous_standby_names parser returned %d"
-msgstr "synchronous_standby_names 解析器返回 %d"
+msgid "standby \"%s\" is now a candidate for quorum synchronous standby"
+msgstr "待机 \"%s\"现在是仲裁同步待机的候选"
-#: replication/syncrep.c:1014
+#: replication/syncrep.c:1164
#, c-format
-msgid ""
-"The configured number of synchronous standbys (%d) exceeds the number of "
-"names of potential synchronous ones (%d)"
-msgstr "配置的同步后备的数量(%d)超过了潜在同步后备的名称数量(%d)"
+msgid "synchronous_standby_names parser failed"
+msgstr "synchronous_standby_names 解析失败"
-#: replication/syncrep.c:1016
+#: replication/syncrep.c:1170
#, c-format
-#| msgid "List of names of potential synchronous standbys."
-msgid ""
-"Specify more names of potential synchronous standbys in "
-"synchronous_standby_names."
-msgstr "在 synchronous_standby_names 中指定更多潜在同步后备的名称。"
+msgid "number of synchronous standbys (%d) must be greater than zero"
+msgstr "同步备用的数目(%d)必须大于零"
-#: replication/walreceiver.c:172
+#: replication/walreceiver.c:169
#, c-format
msgid "terminating walreceiver process due to administrator command"
msgstr "由于管理员命令中断walreceiver进程"
-#: replication/walreceiver.c:324
+#: replication/walreceiver.c:309
+#, c-format
+msgid "could not connect to the primary server: %s"
+msgstr "无法连接到主用服务器:%s"
+
+#: replication/walreceiver.c:359
+#, c-format
+msgid "database system identifier differs between the primary and standby"
+msgstr "在主用服务器和备用服务器之间,数据库系统标识符是不一样的。"
+
+#: replication/walreceiver.c:360
+#, c-format
+msgid "The primary's identifier is %s, the standby's identifier is %s."
+msgstr "主用服务器的标识符是%s,备用服务器的标识符是%s。"
+
+#: replication/walreceiver.c:371
#, c-format
msgid "highest timeline %u of the primary is behind recovery timeline %u"
msgstr "主服务器上的最高时间线%u还在恢复时间线%u的后边"
-#: replication/walreceiver.c:357
+#: replication/walreceiver.c:407
#, c-format
msgid "started streaming WAL from primary at %X/%X on timeline %u"
msgstr "在时间点: %X/%X (时间安排%u)启动日志的流操作"
-#: replication/walreceiver.c:362
+#: replication/walreceiver.c:412
#, c-format
msgid "restarted WAL streaming at %X/%X on timeline %u"
msgstr "在%X/%X处时间线%u上重启WAL流操作"
-#: replication/walreceiver.c:391
+#: replication/walreceiver.c:441
#, c-format
msgid "cannot continue WAL streaming, recovery has already ended"
msgstr "无法继续进行WAL流复制操作,恢复已经结束"
-#: replication/walreceiver.c:428
+#: replication/walreceiver.c:478
#, c-format
msgid "replication terminated by primary server"
msgstr "复制由主用服务器终止"
-#: replication/walreceiver.c:429
+#: replication/walreceiver.c:479
#, c-format
msgid "End of WAL reached on timeline %u at %X/%X."
msgstr "WAL结束时,到了时间线%u和地址%X/%X."
-#: replication/walreceiver.c:523
+#: replication/walreceiver.c:574
#, c-format
msgid "terminating walreceiver due to timeout"
msgstr "由于超时, 中止walreceiver进程"
-#: replication/walreceiver.c:563
+#: replication/walreceiver.c:614
#, c-format
msgid "primary server contains no more WAL on requested timeline %u"
msgstr "主服务器 在时间点 %u不再有WAL"
-#: replication/walreceiver.c:578 replication/walreceiver.c:936
+#: replication/walreceiver.c:629 replication/walreceiver.c:982
#, c-format
msgid "could not close log segment %s: %m"
msgstr "无法关闭日志段%s: %m"
-#: replication/walreceiver.c:702
+#: replication/walreceiver.c:754
#, c-format
msgid "fetching timeline history file for timeline %u from primary server"
msgstr "从主服务器的时间点%u获取时间点历史文件"
-#: replication/walreceiver.c:990
+#: replication/walreceiver.c:1036
#, c-format
msgid "could not write to log segment %s at offset %u, length %lu: %m"
msgstr "无法在偏移量 %2$u,长度 %3$lu写入日志文件%1$s, 段:%4$m"
-#: replication/walsender.c:485
+#: replication/walsender.c:494
#, c-format
msgid "could not seek to beginning of file \"%s\": %m"
msgstr "无法查找到文件\"%s\"的起始位置: %m"
-#: replication/walsender.c:536
+#: replication/walsender.c:535
+#, c-format
+msgid "IDENTIFY_SYSTEM has not been run before START_REPLICATION"
+msgstr "IDENTIFY_SYSTEM在START_REPLICATION之前未运行"
+
+#: replication/walsender.c:552
#, c-format
msgid "cannot use a logical replication slot for physical replication"
msgstr "物理复制操作不能使用逻辑复制槽"
-#: replication/walsender.c:599
+#: replication/walsender.c:615
#, c-format
-msgid ""
-"requested starting point %X/%X on timeline %u is not in this server's history"
+msgid "requested starting point %X/%X on timeline %u is not in this server's history"
msgstr "请求的起始点%X/%X, 时间线%u,不在该服务器的时间线历史记录里"
-#: replication/walsender.c:603
+#: replication/walsender.c:619
#, c-format
msgid "This server's history forked from timeline %u at %X/%X."
msgstr "服务器的历史时间线在时间线%u,地址%X/%X处产生了分支."
-#: replication/walsender.c:648
+#: replication/walsender.c:664
#, c-format
-msgid ""
-"requested starting point %X/%X is ahead of the WAL flush position of this "
-"server %X/%X"
+msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X"
msgstr "请求的起始点 %X/%X 位于该服务器的WAL刷新位置%X/%X之前"
-#: replication/walsender.c:974
+#: replication/walsender.c:893
+#, c-format
+msgid "CREATE_REPLICATION_SLOT ... EXPORT_SNAPSHOT must not be called inside a transaction"
+msgstr "不能在事务内部调用CREATE_REPLICATION_SLOT ... EXPORT_SNAPSHOT"
+
+#: replication/walsender.c:902
+#, c-format
+msgid "CREATE_REPLICATION_SLOT ... USE_SNAPSHOT must be called inside a transaction"
+msgstr "必须在事务内部调用CREATE_REPLICATION_SLOT ... USE_SNAPSHOT"
+
+#: replication/walsender.c:907
+#, c-format
+msgid "CREATE_REPLICATION_SLOT ... USE_SNAPSHOT must be called in REPEATABLE READ isolation mode transaction"
+msgstr "必须在REPEATABLE READ隔离模式事务中调用CREATE_REPLICATION_SLOT ... USE_SNAPSHOT"
+
+#: replication/walsender.c:912
+#, c-format
+msgid "CREATE_REPLICATION_SLOT ... USE_SNAPSHOT must be called before any query"
+msgstr "在任何查询之前必须调用CREATE_REPLICATION_SLOT ... USE_SNAPSHOT"
+
+#: replication/walsender.c:917
+#, c-format
+msgid "CREATE_REPLICATION_SLOT ... USE_SNAPSHOT must not be called in a subtransaction"
+msgstr "不能在子事务中调用CREATE_REPLICATION_SLOT ... USE_SNAPSHOT"
+
+#: replication/walsender.c:1063
#, c-format
msgid "terminating walsender process after promotion"
msgstr "在提升后, 中断walreceiver进程"
-#: replication/walsender.c:1300
+#: replication/walsender.c:1448
+#, c-format
+msgid "cannot execute new commands while WAL sender is in stopping mode"
+msgstr "当WAL sender处于停止模式时,无法执行新命令"
+
+#: replication/walsender.c:1481
#, c-format
msgid "received replication command: %s"
msgstr "收到的复制命令:%s"
-#: replication/walsender.c:1393 replication/walsender.c:1409
+#: replication/walsender.c:1497 tcop/fastpath.c:279 tcop/postgres.c:1033
+#: tcop/postgres.c:1357 tcop/postgres.c:1617 tcop/postgres.c:2023
+#: tcop/postgres.c:2396 tcop/postgres.c:2475
+#, c-format
+msgid "current transaction is aborted, commands ignored until end of transaction block"
+msgstr "当前事务被终止, 事务块结束之前的查询被忽略"
+
+#: replication/walsender.c:1562
+#, c-format
+msgid "cannot execute SQL commands in WAL sender for physical replication"
+msgstr "无法在WAL sender中执行用于物理复制的SQL命令"
+
+#: replication/walsender.c:1610 replication/walsender.c:1626
#, c-format
msgid "unexpected EOF on standby connection"
msgstr "在备用服务器连接上的出现意外的EOF"
-#: replication/walsender.c:1423
+#: replication/walsender.c:1640
#, c-format
msgid "unexpected standby message type \"%c\", after receiving CopyDone"
msgstr "在接收CopyDone后出现意外的消息类型\"%c\""
-#: replication/walsender.c:1461
+#: replication/walsender.c:1678
#, c-format
msgid "invalid standby message type \"%c\""
msgstr "无效的备用节点消息类型 \"%c\""
-#: replication/walsender.c:1502
+#: replication/walsender.c:1719
#, c-format
msgid "unexpected message type \"%c\""
msgstr "意外的消息类型\"%c\""
-#: replication/walsender.c:1786
+#: replication/walsender.c:2097
#, c-format
msgid "terminating walsender process due to replication timeout"
msgstr "由于复制超时, 中断walreceiver进程"
-#: replication/walsender.c:1879
+#: replication/walsender.c:2181
#, c-format
-msgid "standby \"%s\" has now caught up with primary"
-msgstr "备用节点 \"%s\" 现在遇上了主节点"
+msgid "\"%s\" has now caught up with upstream server"
+msgstr "现在,\"%s\"已赶上上游服务器"
-#: replication/walsender.c:1982
+#: replication/walsender.c:2290
#, c-format
-msgid ""
-"number of requested standby connections exceeds max_wal_senders (currently "
-"%d)"
+msgid "number of requested standby connections exceeds max_wal_senders (currently %d)"
msgstr "所要求的备用服务器连接数超过了参数max_wal_senders的值(当前设置为%d)"
-#: rewrite/rewriteDefine.c:112 rewrite/rewriteDefine.c:973
+#: rewrite/rewriteDefine.c:112 rewrite/rewriteDefine.c:980
#, c-format
msgid "rule \"%s\" for relation \"%s\" already exists"
msgstr "关系 \"%2$s\" 的规则 \"%1$s\" 已经存在"
-#: rewrite/rewriteDefine.c:297
+#: rewrite/rewriteDefine.c:296
#, c-format
msgid "rule actions on OLD are not implemented"
msgstr "在 OLD 上的规则动作没有实现"
-#: rewrite/rewriteDefine.c:298
+#: rewrite/rewriteDefine.c:297
#, c-format
msgid "Use views or triggers instead."
msgstr "请使用视图或触发器代替."
-#: rewrite/rewriteDefine.c:302
+#: rewrite/rewriteDefine.c:301
#, c-format
msgid "rule actions on NEW are not implemented"
msgstr "在 NEW 上的规则动作没有实现"
-#: rewrite/rewriteDefine.c:303
+#: rewrite/rewriteDefine.c:302
#, c-format
msgid "Use triggers instead."
msgstr "请使用触发器代替."
-#: rewrite/rewriteDefine.c:316
+#: rewrite/rewriteDefine.c:315
#, c-format
msgid "INSTEAD NOTHING rules on SELECT are not implemented"
msgstr "在 SELECT 上的 INSTEAD NOTHING 规则没有实现"
-#: rewrite/rewriteDefine.c:317
+#: rewrite/rewriteDefine.c:316
#, c-format
msgid "Use views instead."
msgstr "请使用视图代替."
-#: rewrite/rewriteDefine.c:325
+#: rewrite/rewriteDefine.c:324
#, c-format
msgid "multiple actions for rules on SELECT are not implemented"
msgstr "在 SELECT 上的多动作规则没有实现"
-#: rewrite/rewriteDefine.c:336
+#: rewrite/rewriteDefine.c:334
#, c-format
msgid "rules on SELECT must have action INSTEAD SELECT"
msgstr "在 SELECT 上的规则必须有 INSTEAD SELECT 动作"
-#: rewrite/rewriteDefine.c:344
+#: rewrite/rewriteDefine.c:342
#, c-format
msgid "rules on SELECT must not contain data-modifying statements in WITH"
msgstr "SELECT上的规则: 不能在WITH子句中包含数据修改操作"
-#: rewrite/rewriteDefine.c:352
+#: rewrite/rewriteDefine.c:350
#, c-format
msgid "event qualifications are not implemented for rules on SELECT"
msgstr "在 SELECT 上规则的事件条件没有实现"
-#: rewrite/rewriteDefine.c:379
+#: rewrite/rewriteDefine.c:377
#, c-format
msgid "\"%s\" is already a view"
msgstr "\"%s\" 已经是一个视图了"
-#: rewrite/rewriteDefine.c:403
+#: rewrite/rewriteDefine.c:401
#, c-format
msgid "view rule for \"%s\" must be named \"%s\""
msgstr "用于 \"%s\" 的视图规则必须命名为 \"%s\""
-#: rewrite/rewriteDefine.c:432
+#: rewrite/rewriteDefine.c:428
+#, c-format
+msgid "cannot convert partitioned table \"%s\" to a view"
+msgstr "无法将分区表\"%s\"转换为视图"
+
+#: rewrite/rewriteDefine.c:434
+#, c-format
+msgid "cannot convert partition \"%s\" to a view"
+msgstr "无法将分区\"%s\"转换为视图"
+
+#: rewrite/rewriteDefine.c:442
#, c-format
msgid "could not convert table \"%s\" to a view because it is not empty"
msgstr "无法把表 \"%s\" 转化为视图, 因为它不是空的"
-#: rewrite/rewriteDefine.c:440
+#: rewrite/rewriteDefine.c:450
#, c-format
msgid "could not convert table \"%s\" to a view because it has triggers"
msgstr "无法把表 \"%s\" 转换为视图, 因为它有触发器"
-#: rewrite/rewriteDefine.c:442
+#: rewrite/rewriteDefine.c:452
#, c-format
-msgid ""
-"In particular, the table cannot be involved in any foreign key relationships."
+msgid "In particular, the table cannot be involved in any foreign key relationships."
msgstr "特别是在任何外键关系中不能涉及表"
-#: rewrite/rewriteDefine.c:447
+#: rewrite/rewriteDefine.c:457
#, c-format
msgid "could not convert table \"%s\" to a view because it has indexes"
msgstr "无法把表 \"%s\" 转换为视图, 因为它有索引"
-#: rewrite/rewriteDefine.c:453
+#: rewrite/rewriteDefine.c:463
#, c-format
msgid "could not convert table \"%s\" to a view because it has child tables"
msgstr "无法把表 \"%s\" 转换为视图, 因为它有子表"
-#: rewrite/rewriteDefine.c:459
+#: rewrite/rewriteDefine.c:469
#, c-format
-msgid ""
-"could not convert table \"%s\" to a view because it has row security enabled"
+msgid "could not convert table \"%s\" to a view because it has row security enabled"
msgstr "无法把表\"%s\"转换为视图,因为它的行级安全性被启用"
-#: rewrite/rewriteDefine.c:465
+#: rewrite/rewriteDefine.c:475
#, c-format
-msgid ""
-"could not convert table \"%s\" to a view because it has row security policies"
+msgid "could not convert table \"%s\" to a view because it has row security policies"
msgstr "无法把表\"%s\"转换为视图,因为它有行级安全性策略"
-#: rewrite/rewriteDefine.c:492
+#: rewrite/rewriteDefine.c:502
#, c-format
msgid "cannot have multiple RETURNING lists in a rule"
msgstr "在一个规则中不能有多个RETURNING列表"
-#: rewrite/rewriteDefine.c:497
+#: rewrite/rewriteDefine.c:507
#, c-format
msgid "RETURNING lists are not supported in conditional rules"
msgstr "在条件规则中不支持RETURNING列表"
-#: rewrite/rewriteDefine.c:501
+#: rewrite/rewriteDefine.c:511
#, c-format
msgid "RETURNING lists are not supported in non-INSTEAD rules"
msgstr "在非INSTEAD规则中不支持RETURNING列表"
-#: rewrite/rewriteDefine.c:667
+#: rewrite/rewriteDefine.c:675
#, c-format
msgid "SELECT rule's target list has too many entries"
msgstr "SELECT 规则的目标列表的记录太多"
-#: rewrite/rewriteDefine.c:668
+#: rewrite/rewriteDefine.c:676
#, c-format
msgid "RETURNING list has too many entries"
msgstr "RETURNING列表中的项太多."
-#: rewrite/rewriteDefine.c:695
+#: rewrite/rewriteDefine.c:703
#, c-format
msgid "cannot convert relation containing dropped columns to view"
msgstr "无法转换包含已删除字段的关系为视图"
-#: rewrite/rewriteDefine.c:696
+#: rewrite/rewriteDefine.c:704
#, c-format
-#| msgid "cannot convert relation containing dropped columns to view"
-msgid ""
-"cannot create a RETURNING list for a relation containing dropped columns"
+msgid "cannot create a RETURNING list for a relation containing dropped columns"
msgstr "无法为一个包含有被删除列的关系创建一个 RETURNING 列表"
-#: rewrite/rewriteDefine.c:702
+#: rewrite/rewriteDefine.c:710
#, c-format
-msgid ""
-"SELECT rule's target entry %d has different column name from column \"%s\""
+msgid "SELECT rule's target entry %d has different column name from column \"%s\""
msgstr "SELECT 规则的目标记录 %d 的字段名和字段 \"%s\" 不同"
-#: rewrite/rewriteDefine.c:704
+#: rewrite/rewriteDefine.c:712
#, c-format
msgid "SELECT target entry is named \"%s\"."
-msgstr "SELECT 目标项命名为\"%s\","
+msgstr "SELECT 目标项命名为\"%s\"."
-#: rewrite/rewriteDefine.c:713
+#: rewrite/rewriteDefine.c:721
#, c-format
msgid "SELECT rule's target entry %d has different type from column \"%s\""
msgstr "SELECT 规则的目标记录 %d 和字段 \"%s\" 的类型不同"
-#: rewrite/rewriteDefine.c:715
+#: rewrite/rewriteDefine.c:723
#, c-format
msgid "RETURNING list's entry %d has different type from column \"%s\""
msgstr "RETURNING列表中的第%d项与列\"%s\"的类型不同"
-#: rewrite/rewriteDefine.c:718 rewrite/rewriteDefine.c:742
+#: rewrite/rewriteDefine.c:726 rewrite/rewriteDefine.c:750
#, c-format
msgid "SELECT target entry has type %s, but column has type %s."
msgstr "SELECT 目标项类型为%s, 但其列类型为%s."
-#: rewrite/rewriteDefine.c:721 rewrite/rewriteDefine.c:746
+#: rewrite/rewriteDefine.c:729 rewrite/rewriteDefine.c:754
#, c-format
msgid "RETURNING list entry has type %s, but column has type %s."
msgstr "RETURNING列表项类型为%s, 但是其列类型为%s."
-#: rewrite/rewriteDefine.c:737
+#: rewrite/rewriteDefine.c:745
#, c-format
msgid "SELECT rule's target entry %d has different size from column \"%s\""
msgstr "SELECT 规则的目标记录 %d 与字段 \"%s\" 的大小不同"
-#: rewrite/rewriteDefine.c:739
+#: rewrite/rewriteDefine.c:747
#, c-format
msgid "RETURNING list's entry %d has different size from column \"%s\""
msgstr "在RETURNING列表中的第%d项的大小与列 \"%s\"不同"
-#: rewrite/rewriteDefine.c:756
+#: rewrite/rewriteDefine.c:764
#, c-format
msgid "SELECT rule's target list has too few entries"
msgstr "SELECT 规则的目标列表记录数太少"
-#: rewrite/rewriteDefine.c:757
+#: rewrite/rewriteDefine.c:765
#, c-format
msgid "RETURNING list has too few entries"
msgstr "RETURNING 列表后面的项太少"
-#: rewrite/rewriteDefine.c:849 rewrite/rewriteDefine.c:964
-#: rewrite/rewriteSupport.c:112
+#: rewrite/rewriteDefine.c:857 rewrite/rewriteDefine.c:971
+#: rewrite/rewriteSupport.c:109
#, c-format
msgid "rule \"%s\" for relation \"%s\" does not exist"
msgstr "关系 \"%2$s\" 的 \"%1$s\" 规则不存在"
-#: rewrite/rewriteDefine.c:983
+#: rewrite/rewriteDefine.c:990
#, c-format
msgid "renaming an ON SELECT rule is not allowed"
msgstr "不允许重命名一个ON SELECT规则"
-#: rewrite/rewriteHandler.c:528
+#: rewrite/rewriteHandler.c:541
#, c-format
-msgid ""
-"WITH query name \"%s\" appears in both a rule action and the query being "
-"rewritten"
+msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten"
msgstr "WITH 查询名 \"%s\" 看起来好像在某规则行为和查询重写里同时出现"
-#: rewrite/rewriteHandler.c:588
+#: rewrite/rewriteHandler.c:601
#, c-format
msgid "cannot have RETURNING lists in multiple rules"
msgstr "无法在多个规则中拥有RETURNING列表"
-#: rewrite/rewriteHandler.c:928 rewrite/rewriteHandler.c:946
+#: rewrite/rewriteHandler.c:823
#, c-format
-msgid "multiple assignments to same column \"%s\""
-msgstr "对同一列\"%s\"进行了多次分配"
+msgid "cannot insert into column \"%s\""
+msgstr "无法插入到列\"%s\""
-#: rewrite/rewriteHandler.c:1721 rewrite/rewriteHandler.c:3331
+#: rewrite/rewriteHandler.c:824 rewrite/rewriteHandler.c:839
#, c-format
-msgid "infinite recursion detected in rules for relation \"%s\""
-msgstr "在关系 \"%s\" 的规则中发现无限循环"
+msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS."
+msgstr "列\"%s\"是定义为GENERATED ALWAYS的标识列."
+
+#: rewrite/rewriteHandler.c:826
+#, c-format
+msgid "Use OVERRIDING SYSTEM VALUE to override."
+msgstr "使用OVERRIDING SYSTEM VALUE覆盖."
+
+#: rewrite/rewriteHandler.c:838
+#, c-format
+msgid "column \"%s\" can only be updated to DEFAULT"
+msgstr "列\"%s\"只能更新为默认值"
+
+#: rewrite/rewriteHandler.c:1000 rewrite/rewriteHandler.c:1018
+#, c-format
+msgid "multiple assignments to same column \"%s\""
+msgstr "对同一列\"%s\"进行了多次分配"
-#: rewrite/rewriteHandler.c:1806
+#: rewrite/rewriteHandler.c:1921
#, c-format
msgid "infinite recursion detected in policy for relation \"%s\""
msgstr "在关系\"%s\"的策略中检测到无限循环"
-#: rewrite/rewriteHandler.c:2123
+#: rewrite/rewriteHandler.c:2241
msgid "Junk view columns are not updatable."
msgstr "废弃视图列不可更新."
-#: rewrite/rewriteHandler.c:2128
-msgid ""
-"View columns that are not columns of their base relation are not updatable."
+#: rewrite/rewriteHandler.c:2246
+msgid "View columns that are not columns of their base relation are not updatable."
msgstr "不属于基础关系的列的那些视图列不能用于更新操作."
-#: rewrite/rewriteHandler.c:2131
+#: rewrite/rewriteHandler.c:2249
msgid "View columns that refer to system columns are not updatable."
msgstr "引用系统列的视图列不能用于更新操作."
-#: rewrite/rewriteHandler.c:2134
+#: rewrite/rewriteHandler.c:2252
msgid "View columns that return whole-row references are not updatable."
msgstr "返回整行引用的视图列不能更新"
-#: rewrite/rewriteHandler.c:2192
+#: rewrite/rewriteHandler.c:2313
msgid "Views containing DISTINCT are not automatically updatable."
msgstr "包含DISTINCT的视图列不能自动更新."
-#: rewrite/rewriteHandler.c:2195
+#: rewrite/rewriteHandler.c:2316
msgid "Views containing GROUP BY are not automatically updatable."
msgstr "包含 GROUP BY 的视图列不能自动更新."
-#: rewrite/rewriteHandler.c:2198
+#: rewrite/rewriteHandler.c:2319
msgid "Views containing HAVING are not automatically updatable."
msgstr "包含 HAVING 的视图列不能自动更新."
-#: rewrite/rewriteHandler.c:2201
-msgid ""
-"Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable."
+#: rewrite/rewriteHandler.c:2322
+msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable."
msgstr "包含 UNION, INTERSECT, 或 EXCEPT 不能用于自动更新."
-#: rewrite/rewriteHandler.c:2204
+#: rewrite/rewriteHandler.c:2325
msgid "Views containing WITH are not automatically updatable."
msgstr "包含 WITH 的视图不能自动更新."
-#: rewrite/rewriteHandler.c:2207
+#: rewrite/rewriteHandler.c:2328
msgid "Views containing LIMIT or OFFSET are not automatically updatable."
msgstr "包含 LIMIT 或 OFFSET 的视图不能自动更新."
-#: rewrite/rewriteHandler.c:2219
+#: rewrite/rewriteHandler.c:2340
msgid "Views that return aggregate functions are not automatically updatable."
msgstr "返回聚集函数的视图不能自动更新."
-#: rewrite/rewriteHandler.c:2222
+#: rewrite/rewriteHandler.c:2343
msgid "Views that return window functions are not automatically updatable."
msgstr "返回窗口函数的视图不能自动更新."
-#: rewrite/rewriteHandler.c:2225
-msgid ""
-"Views that return set-returning functions are not automatically updatable."
+#: rewrite/rewriteHandler.c:2346
+msgid "Views that return set-returning functions are not automatically updatable."
msgstr "返回自返回函数的视图不能自动更新."
-#: rewrite/rewriteHandler.c:2232 rewrite/rewriteHandler.c:2236
-#: rewrite/rewriteHandler.c:2243
-msgid ""
-"Views that do not select from a single table or view are not automatically "
-"updatable."
+#: rewrite/rewriteHandler.c:2353 rewrite/rewriteHandler.c:2357
+#: rewrite/rewriteHandler.c:2365
+msgid "Views that do not select from a single table or view are not automatically updatable."
msgstr "不来自单表或单视图的视图不能自动更新."
-#: rewrite/rewriteHandler.c:2246
+#: rewrite/rewriteHandler.c:2368
msgid "Views containing TABLESAMPLE are not automatically updatable."
msgstr "包含TABLESAMPLE的视图不能自动更新。"
-#: rewrite/rewriteHandler.c:2270
+#: rewrite/rewriteHandler.c:2392
msgid "Views that have no updatable columns are not automatically updatable."
msgstr "没有更新列的视图不能自动更新."
-#: rewrite/rewriteHandler.c:2724
+#: rewrite/rewriteHandler.c:2849
#, c-format
msgid "cannot insert into column \"%s\" of view \"%s\""
msgstr "无法插入列\"%s\"到视图\"%s\""
-#: rewrite/rewriteHandler.c:2732
+#: rewrite/rewriteHandler.c:2857
#, c-format
msgid "cannot update column \"%s\" of view \"%s\""
msgstr "无法更新视图 \"%2$s\" 的字段 \"%1$s\""
-#: rewrite/rewriteHandler.c:3130
+#: rewrite/rewriteHandler.c:3327
#, c-format
-msgid ""
-"DO INSTEAD NOTHING rules are not supported for data-modifying statements in "
-"WITH"
+msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH"
msgstr "DO INSTEAD NOTHING规则不支持在WITH子句中执行数据修改操作"
-#: rewrite/rewriteHandler.c:3144
+#: rewrite/rewriteHandler.c:3341
#, c-format
-msgid ""
-"conditional DO INSTEAD rules are not supported for data-modifying statements "
-"in WITH"
+msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH"
msgstr "DO INSTEAD 条件规则不支持在WITH子句中执行数据修改操作"
-#: rewrite/rewriteHandler.c:3148
+#: rewrite/rewriteHandler.c:3345
#, c-format
msgid "DO ALSO rules are not supported for data-modifying statements in WITH"
msgstr "DO ALSO 规则不支持在WITH子句中执行数据修改操作"
-#: rewrite/rewriteHandler.c:3153
+#: rewrite/rewriteHandler.c:3350
#, c-format
-msgid ""
-"multi-statement DO INSTEAD rules are not supported for data-modifying "
-"statements in WITH"
+msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH"
msgstr "多语句 DO INSTEAD 规则不支持在WITH子句中执行数据修改操作"
-#: rewrite/rewriteHandler.c:3368
+#: rewrite/rewriteHandler.c:3569
#, c-format
msgid "cannot perform INSERT RETURNING on relation \"%s\""
msgstr "无法在关系\"%s\"上执行INSERT RETURNING "
-#: rewrite/rewriteHandler.c:3370
+#: rewrite/rewriteHandler.c:3571
#, c-format
-msgid ""
-"You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause."
+msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause."
msgstr "您需要一个无条件, 且带有RETURNING子句的ON INSERT DO INSTEAD的规则."
-#: rewrite/rewriteHandler.c:3375
+#: rewrite/rewriteHandler.c:3576
#, c-format
msgid "cannot perform UPDATE RETURNING on relation \"%s\""
msgstr "无法在关系\"%s\"执行UPDATE RETURNING"
-#: rewrite/rewriteHandler.c:3377
+#: rewrite/rewriteHandler.c:3578
#, c-format
-msgid ""
-"You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause."
+msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause."
msgstr "您需要一个无条件的 ON UPDATE DO INSTEAD 规则."
-#: rewrite/rewriteHandler.c:3382
+#: rewrite/rewriteHandler.c:3583
#, c-format
msgid "cannot perform DELETE RETURNING on relation \"%s\""
msgstr "无法在关系 \"%s\"上执行DELETE RETURNING"
-#: rewrite/rewriteHandler.c:3384
+#: rewrite/rewriteHandler.c:3585
#, c-format
-msgid ""
-"You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause."
+msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause."
msgstr "您需要一个无条件, 且带有RETURNING子句的ON DELETE DO INSTEAD 规则."
-#: rewrite/rewriteHandler.c:3402
+#: rewrite/rewriteHandler.c:3603
#, c-format
-msgid ""
-"INSERT with ON CONFLICT clause cannot be used with table that has INSERT or "
-"UPDATE rules"
+msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules"
msgstr "无法对具有INSERT或者UPDATE规则的表使用带有ON CONFLICT子句的INSERT"
-#: rewrite/rewriteHandler.c:3459
+#: rewrite/rewriteHandler.c:3660
#, c-format
-msgid ""
-"WITH cannot be used in a query that is rewritten by rules into multiple "
-"queries"
+msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries"
msgstr "WITH 不能用于按规则可重写为多个查询的查询语句中"
#: rewrite/rewriteManip.c:1003
msgid "WHERE CURRENT OF on a view is not implemented"
msgstr "未实现在视图上的WHERE CURRENT OF操作"
-#: rewrite/rewriteManip.c:1434
-#, c-format
-msgid ""
-"NEW variables in ON UPDATE rules cannot reference columns that are part of a "
-"multiple assignment in the subject UPDATE command"
-msgstr ""
-"ON UPDATE规则中的NEW变量不能引用主UPDATE命令中作为一个多重赋值的组成部分的列"
-
-#: rewrite/rewriteSupport.c:154
-#, c-format
-msgid "rule \"%s\" does not exist"
-msgstr "规则 \"%s\" 不存在"
-
-#: rewrite/rewriteSupport.c:167
-#, c-format
-msgid "there are multiple rules named \"%s\""
-msgstr "有多条规则的名字是 \"%s\""
-
-#: rewrite/rewriteSupport.c:168
+#: rewrite/rewriteManip.c:1503
#, c-format
-msgid "Specify a relation name as well as a rule name."
-msgstr "指定一个关系名称, 和规则名称一样."
+msgid "NEW variables in ON UPDATE rules cannot reference columns that are part of a multiple assignment in the subject UPDATE command"
+msgstr "ON UPDATE规则中的NEW变量不能引用主UPDATE命令中作为一个多重赋值的组成部分的列"
-#: scan.l:433
+#: scan.l:445
msgid "unterminated /* comment"
msgstr "/* 注释没有结束"
-#: scan.l:462
+#: scan.l:474
msgid "unterminated bit string literal"
msgstr "未结束的bit字符串常量"
-#: scan.l:483
+#: scan.l:495
msgid "unterminated hexadecimal string literal"
msgstr "未结束的16进制字符串常量"
-#: scan.l:533
+#: scan.l:545
#, c-format
msgid "unsafe use of string constant with Unicode escapes"
msgstr "这种使用带有Unicode转义字符的字符串常量的方法不安全."
-#: scan.l:534
+#: scan.l:546
#, c-format
-msgid ""
-"String constants with Unicode escapes cannot be used when "
-"standard_conforming_strings is off."
-msgstr ""
-"当参数standard_conforming_strings处于关闭状态时,无法使用带有Unicode转义字符"
-"的字符串常量."
+msgid "String constants with Unicode escapes cannot be used when standard_conforming_strings is off."
+msgstr "当参数standard_conforming_strings处于关闭状态时,无法使用带有Unicode转义字符的字符串常量."
-#: scan.l:580 scan.l:779
+#: scan.l:592 scan.l:791
msgid "invalid Unicode escape character"
msgstr "无效Unicode转义字符"
-#: scan.l:606 scan.l:614 scan.l:622 scan.l:623 scan.l:624 scan.l:1338
-#: scan.l:1365 scan.l:1369 scan.l:1407 scan.l:1411 scan.l:1433
+#: scan.l:618 scan.l:626 scan.l:634 scan.l:635 scan.l:636 scan.l:1380
+#: scan.l:1407 scan.l:1411 scan.l:1449 scan.l:1453 scan.l:1475 scan.l:1485
msgid "invalid Unicode surrogate pair"
msgstr "无效的Unicode代理项对(surrogate pair)"
-#: scan.l:628
+#: scan.l:640
#, c-format
msgid "invalid Unicode escape"
msgstr "无效的Unicode转义字符"
-#: scan.l:629
+#: scan.l:641
#, c-format
msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX."
msgstr "Unicode转义字符必须是\\uXXXX或\\UXXXXXXXX."
-#: scan.l:640
+#: scan.l:652
#, c-format
msgid "unsafe use of \\' in a string literal"
msgstr "在字符串常量中使用\\不安全"
-#: scan.l:641
+#: scan.l:653
#, c-format
-msgid ""
-"Use '' to write quotes in strings. \\' is insecure in client-only encodings."
+msgid "Use '' to write quotes in strings. \\' is insecure in client-only encodings."
msgstr "使用''在字符串中表示引号,在只有客户端使用的编码中使用\\'不安全."
-#: scan.l:716
+#: scan.l:728
msgid "unterminated dollar-quoted string"
msgstr "未结束的用$符号引用的字符串"
-#: scan.l:733 scan.l:759 scan.l:774
+#: scan.l:745 scan.l:771 scan.l:786
msgid "zero-length delimited identifier"
msgstr "长度为0的分隔标示符"
-#: scan.l:794
+#: scan.l:806 syncrep_scanner.l:91
msgid "unterminated quoted identifier"
msgstr "未结束的引用标识符"
-#: scan.l:925
+#: scan.l:969
msgid "operator too long"
msgstr "操作符太长"
#. translator: %s is typically the translation of "syntax error"
-#: scan.l:1078
+#: scan.l:1125
#, c-format
msgid "%s at end of input"
msgstr "%s 在输入的末尾"
#. translator: first %s is typically the translation of "syntax error"
-#: scan.l:1086 syncrep_scanner.l:115
+#: scan.l:1133
#, c-format
msgid "%s at or near \"%s\""
msgstr "%s 在 \"%s\" 或附近的"
-#: scan.l:1252 scan.l:1284
-msgid ""
-"Unicode escape values cannot be used for code point values above 007F when "
-"the server encoding is not UTF8"
+#: scan.l:1294 scan.l:1326
+msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8"
msgstr "当服务器的编码不是UTF8时,无法为在007F以上的码点值使用Unicode转义值."
-#: scan.l:1280 scan.l:1425
+#: scan.l:1322 scan.l:1467
msgid "invalid Unicode escape value"
msgstr "无效的Unicode转义值"
-#: scan.l:1482
+#: scan.l:1531
#, c-format
msgid "nonstandard use of \\' in a string literal"
msgstr "在字符串常量中以不标准的方法使用\\'"
-#: scan.l:1483
+#: scan.l:1532
#, c-format
-msgid ""
-"Use '' to write quotes in strings, or use the escape string syntax (E'...')."
+msgid "Use '' to write quotes in strings, or use the escape string syntax (E'...')."
msgstr "使用''或者转义字符串语法(E'...')将字符串引起来."
-#: scan.l:1492
+#: scan.l:1541
#, c-format
msgid "nonstandard use of \\\\ in a string literal"
msgstr "在字符串常量中以不标准的方法使用\\\\ "
-#: scan.l:1493
+#: scan.l:1542
#, c-format
msgid "Use the escape string syntax for backslashes, e.g., E'\\\\'."
msgstr "为反斜线使用转移字符串语法,例如.,E'\\\\'."
-#: scan.l:1507
+#: scan.l:1556
#, c-format
msgid "nonstandard use of escape in a string literal"
msgstr "在字符串常量中以不标准的方法使用转义字符"
-#: scan.l:1508
+#: scan.l:1557
#, c-format
msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'."
msgstr "对转移字符使用转义字符串语法,例如 E'\\r\\n'."
msgid "no Snowball stemmer available for language \"%s\" and encoding \"%s\""
msgstr "对于语言\"%s\" 和编码\"%s\"来说,没有有效的Snowball stemmer "
-#: snowball/dict_snowball.c:200 tsearch/dict_ispell.c:73
-#: tsearch/dict_simple.c:48
+#: snowball/dict_snowball.c:200 tsearch/dict_ispell.c:74
+#: tsearch/dict_simple.c:49
#, c-format
msgid "multiple StopWords parameters"
msgstr "多个 StopWords参数"
msgid "missing Language parameter"
msgstr "缺少语言参数"
+#: statistics/dependencies.c:534
+#, c-format
+msgid "invalid zero-length item array in MVDependencies"
+msgstr "MVDependencies中的零长度项数组无效"
+
+#: statistics/dependencies.c:672 statistics/dependencies.c:725
+#: statistics/mvdistinct.c:341 statistics/mvdistinct.c:394
+#: utils/adt/pseudotypes.c:94 utils/adt/pseudotypes.c:122
+#: utils/adt/pseudotypes.c:147 utils/adt/pseudotypes.c:171
+#: utils/adt/pseudotypes.c:282 utils/adt/pseudotypes.c:307
+#: utils/adt/pseudotypes.c:335 utils/adt/pseudotypes.c:363
+#: utils/adt/pseudotypes.c:393
+#, c-format
+msgid "cannot accept a value of type %s"
+msgstr "无法接受一个类型%s的值"
+
+#: statistics/extended_stats.c:104
+#, c-format
+msgid "statistics object \"%s.%s\" could not be computed for relation \"%s.%s\""
+msgstr "无法为关系\"%3$s.%4$s\"计算统计对象\"%1$s.%2$s\""
+
+#: statistics/mvdistinct.c:262
+#, c-format
+msgid "invalid ndistinct magic %08x (expected %08x)"
+msgstr "无效的 ndistinct magic %08x(应为%08x)"
+
+#: statistics/mvdistinct.c:267
+#, c-format
+msgid "invalid ndistinct type %d (expected %d)"
+msgstr "无效的ndistinct类型%d(应为%d)"
+
+#: statistics/mvdistinct.c:272
+#, c-format
+msgid "invalid zero-length item array in MVNDistinct"
+msgstr "MVNDistinct中的无效零长度项数组"
+
+#: statistics/mvdistinct.c:281
+#, c-format
+msgid "invalid MVNDistinct size %zd (expected at least %zd)"
+msgstr "无效的MVNDistinct大小%zd(至少应为%zd) "
+
#: storage/buffer/bufmgr.c:544 storage/buffer/bufmgr.c:657
#, c-format
msgid "cannot access temporary tables of other sessions"
#: storage/buffer/bufmgr.c:809
#, c-format
-msgid ""
-"This has been seen to occur with buggy kernels; consider updating your "
-"system."
+msgid "This has been seen to occur with buggy kernels; consider updating your system."
msgstr "这是由于内核缺陷所致;请考虑更新您的操作系统."
#: storage/buffer/bufmgr.c:907
msgid "invalid page in block %u of relation %s; zeroing out page"
msgstr "关系 \"%2$s\" 中的块 %1$u 无效的页;正在对页进行清零操作"
-#: storage/buffer/bufmgr.c:3951
+#: storage/buffer/bufmgr.c:4013
#, c-format
msgid "could not write block %u of %s"
msgstr "无法写入%2$s的块%1$u"
-#: storage/buffer/bufmgr.c:3953
+#: storage/buffer/bufmgr.c:4015
#, c-format
msgid "Multiple failures --- write error might be permanent."
msgstr "多次失败 --- 写错误可能是永久性的"
-#: storage/buffer/bufmgr.c:3974 storage/buffer/bufmgr.c:3993
+#: storage/buffer/bufmgr.c:4036 storage/buffer/bufmgr.c:4055
#, c-format
msgid "writing block %u of relation %s"
msgstr "写入关系%2$s的块%1$u"
-#: storage/buffer/bufmgr.c:4317
+#: storage/buffer/bufmgr.c:4358
#, c-format
-#| msgid "snapshot_id"
msgid "snapshot too old"
msgstr "快照太旧"
-#: storage/buffer/localbuf.c:198
+#: storage/buffer/localbuf.c:199
#, c-format
msgid "no empty local buffer available"
msgstr "没有可用的本地缓冲区"
-#: storage/file/fd.c:436 storage/file/fd.c:508 storage/file/fd.c:544
+#: storage/buffer/localbuf.c:427
+#, c-format
+msgid "cannot access temporary tables during a parallel operation"
+msgstr "不能在并行操作期间访问临时表"
+
+#: storage/file/buffile.c:317
+#, c-format
+msgid "could not open temporary file \"%s\" from BufFile \"%s\": %m"
+msgstr "无法打开BufFile \"%2$s\"中的临时文件\"%1$s\" :%3$m"
+
+#: storage/file/buffile.c:814
+#, c-format
+msgid "could not determine size of temporary file \"%s\" from BufFile \"%s\": %m"
+msgstr "无法从BufFile \"%2$s\"确定临时文件\"%1$s\"的大小:%3$m"
+
+#: storage/file/fd.c:451 storage/file/fd.c:523 storage/file/fd.c:559
#, c-format
-#| msgid "could not redirect stdout: %m"
msgid "could not flush dirty data: %m"
msgstr "无法刷出脏数据:%m"
-#: storage/file/fd.c:466
+#: storage/file/fd.c:481
#, c-format
-#| msgid "could not determine input data type"
msgid "could not determine dirty data size: %m"
msgstr "无法确定脏数据的尺寸:%m"
-#: storage/file/fd.c:518
+#: storage/file/fd.c:533
#, c-format
-#| msgid "could not uncompress data: %s\n"
msgid "could not munmap() while flushing data: %m"
msgstr "在刷写数据时不能 munmap():%m"
-#: storage/file/fd.c:682
+#: storage/file/fd.c:734
#, c-format
msgid "could not link file \"%s\" to \"%s\": %m"
msgstr "无法把文件 \"%s\" 链接到 \"%s\": %m"
# fe-misc.c:389 fe-misc.c:423 fe-misc.c:838
-#: storage/file/fd.c:776
+#: storage/file/fd.c:828
#, c-format
msgid "getrlimit failed: %m"
msgstr "函数getrlimit执行失败: %m"
-#: storage/file/fd.c:866
+#: storage/file/fd.c:918
#, c-format
msgid "insufficient file descriptors available to start server process"
msgstr "启动服务器进程的有效文件描述符不足"
-#: storage/file/fd.c:867
+#: storage/file/fd.c:919
#, c-format
msgid "System allows %d, we need at least %d."
msgstr "系统允许 %d, 我们至少需要 %d."
-#: storage/file/fd.c:908 storage/file/fd.c:2001 storage/file/fd.c:2094
-#: storage/file/fd.c:2242
+#: storage/file/fd.c:970 storage/file/fd.c:2379 storage/file/fd.c:2489
+#: storage/file/fd.c:2640
#, c-format
msgid "out of file descriptors: %m; release and retry"
msgstr "超出文件描述符: %m; 释放再重试"
-#: storage/file/fd.c:1482
+#: storage/file/fd.c:1313
#, c-format
msgid "temporary file: path \"%s\", size %lu"
msgstr "临时文件: 路径 \"%s\", 大小%lu"
-#: storage/file/fd.c:1656
+#: storage/file/fd.c:1445
+#, c-format
+msgid "cannot create temporary directory \"%s\": %m"
+msgstr "无法创建临时目录 \"%s\": %m"
+
+#: storage/file/fd.c:1452
+#, c-format
+msgid "cannot create temporary subdirectory \"%s\": %m"
+msgstr "无法创建临时子目录\"%s\": %m"
+
+#: storage/file/fd.c:1645
+#, c-format
+msgid "could not create temporary file \"%s\": %m"
+msgstr "无法创建临时文件\"%s\": %m"
+
+# command.c:1148
+#: storage/file/fd.c:1680
+#, c-format
+msgid "could not open temporary file \"%s\": %m"
+msgstr "无法打开临时文件 \"%s\": %m"
+
+# command.c:1148
+#: storage/file/fd.c:1721
+#, c-format
+msgid "cannot unlink temporary file \"%s\": %m"
+msgstr "无法取消链接临时文件 \"%s\": %m"
+
+#: storage/file/fd.c:2010
#, c-format
msgid "temporary file size exceeds temp_file_limit (%dkB)"
msgstr "临时文件大小超过最大允许值temp_file_limit(%dkB)"
-#: storage/file/fd.c:1977 storage/file/fd.c:2027
+#: storage/file/fd.c:2355 storage/file/fd.c:2414
#, c-format
msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\""
msgstr "试图打开文件 \"%2$s\"超出了最大描述符范围值 (%1$d)"
-#: storage/file/fd.c:2067
+#: storage/file/fd.c:2459
#, c-format
msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\""
msgstr "试图执行命令 \"%2$s\"时,超出了最大描述符范围值 (%1$d)"
-#: storage/file/fd.c:2218
+#: storage/file/fd.c:2616
#, c-format
msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\""
msgstr "试图打开目录 \"%2$s\"时,超出了最大描述符范围值 (%1$d)"
-#: storage/file/fd.c:2304
+#: storage/file/fd.c:2707
#, c-format
msgid "could not read directory \"%s\": %m"
msgstr "无法读取目录 \"%s\": %m"
-#: storage/ipc/dsm.c:363
+# command.c:1148
+#: storage/file/fd.c:3139
+#, c-format
+msgid "unexpected file found in temporary-files directory: \"%s\""
+msgstr "在临时文件目录中发现意外文件: \"%s\""
+
+#: storage/file/fd.c:3461
+#, c-format
+msgid "could not rmdir directory \"%s\": %m"
+msgstr "无法删除目录\"%s\": %m"
+
+#: storage/file/sharedfileset.c:93
+#, c-format
+msgid "could not attach to a SharedFileSet that is already destroyed"
+msgstr "无法附加到已被破坏的SharedFileSet"
+
+#: storage/ipc/dsm.c:351
#, c-format
msgid "dynamic shared memory control segment is corrupt"
msgstr "动态共享内存控制段被毁坏"
-#: storage/ipc/dsm.c:410
+#: storage/ipc/dsm.c:398
#, c-format
msgid "dynamic shared memory is disabled"
msgstr "动态共享内存被禁用"
-#: storage/ipc/dsm.c:411
+#: storage/ipc/dsm.c:399
#, c-format
msgid "Set dynamic_shared_memory_type to a value other than \"none\"."
msgstr "设置 dynamic_shared_memory_type 的值为非 \"none\"."
-#: storage/ipc/dsm.c:431
+#: storage/ipc/dsm.c:419
#, c-format
msgid "dynamic shared memory control segment is not valid"
msgstr "动态共享内存控制段无效"
-#: storage/ipc/dsm.c:516
+#: storage/ipc/dsm.c:515
#, c-format
msgid "too many dynamic shared memory segments"
msgstr "太多动态共享内存段"
-#: storage/ipc/dsm_impl.c:261 storage/ipc/dsm_impl.c:361
-#: storage/ipc/dsm_impl.c:533 storage/ipc/dsm_impl.c:648
-#: storage/ipc/dsm_impl.c:811 storage/ipc/dsm_impl.c:953
+#: storage/ipc/dsm_impl.c:264 storage/ipc/dsm_impl.c:373
+#: storage/ipc/dsm_impl.c:594 storage/ipc/dsm_impl.c:709
+#: storage/ipc/dsm_impl.c:880 storage/ipc/dsm_impl.c:1024
#, c-format
msgid "could not unmap shared memory segment \"%s\": %m"
msgstr "无法解除映射共享内存段 \"%s\": %m"
-#: storage/ipc/dsm_impl.c:271 storage/ipc/dsm_impl.c:543
-#: storage/ipc/dsm_impl.c:658 storage/ipc/dsm_impl.c:821
+#: storage/ipc/dsm_impl.c:274 storage/ipc/dsm_impl.c:604
+#: storage/ipc/dsm_impl.c:719 storage/ipc/dsm_impl.c:890
#, c-format
msgid "could not remove shared memory segment \"%s\": %m"
msgstr "无法删除共享内存段 \"%s\": %m"
-#: storage/ipc/dsm_impl.c:292 storage/ipc/dsm_impl.c:721
-#: storage/ipc/dsm_impl.c:835
+#: storage/ipc/dsm_impl.c:295 storage/ipc/dsm_impl.c:790
+#: storage/ipc/dsm_impl.c:904
#, c-format
msgid "could not open shared memory segment \"%s\": %m"
msgstr "无法打开共享内存段 \"%s\": %m"
-#: storage/ipc/dsm_impl.c:316 storage/ipc/dsm_impl.c:559
-#: storage/ipc/dsm_impl.c:766 storage/ipc/dsm_impl.c:859
+#: storage/ipc/dsm_impl.c:319 storage/ipc/dsm_impl.c:620
+#: storage/ipc/dsm_impl.c:835 storage/ipc/dsm_impl.c:928
#, c-format
msgid "could not stat shared memory segment \"%s\": %m"
msgstr "无法统计共享内存段 \"%s\": %m"
-#: storage/ipc/dsm_impl.c:335 storage/ipc/dsm_impl.c:878
-#: storage/ipc/dsm_impl.c:926
+#: storage/ipc/dsm_impl.c:347 storage/ipc/dsm_impl.c:947
+#: storage/ipc/dsm_impl.c:997
#, c-format
msgid "could not resize shared memory segment \"%s\" to %zu bytes: %m"
msgstr "无法重新设置共享内存段\"%s\"的大小为%zu字节: %m"
-#: storage/ipc/dsm_impl.c:385 storage/ipc/dsm_impl.c:580
-#: storage/ipc/dsm_impl.c:742 storage/ipc/dsm_impl.c:977
+#: storage/ipc/dsm_impl.c:397 storage/ipc/dsm_impl.c:641
+#: storage/ipc/dsm_impl.c:811 storage/ipc/dsm_impl.c:1048
#, c-format
msgid "could not map shared memory segment \"%s\": %m"
msgstr "无法映射共享内存段 \"%s\": %m"
-#: storage/ipc/dsm_impl.c:515
+#: storage/ipc/dsm_impl.c:576
#, c-format
msgid "could not get shared memory segment: %m"
msgstr "无法得到共享内存段: %m"
-#: storage/ipc/dsm_impl.c:694
+#: storage/ipc/dsm_impl.c:775
#, c-format
msgid "could not create shared memory segment \"%s\": %m"
msgstr "无法创建共享内存段\"%s\": %m"
-#: storage/ipc/dsm_impl.c:1018
+#: storage/ipc/dsm_impl.c:1090 storage/ipc/dsm_impl.c:1138
#, c-format
msgid "could not duplicate handle for \"%s\": %m"
msgstr "无法复制句柄 \"%s\": %m"
-#: storage/ipc/latch.c:769
+#: storage/ipc/latch.c:829
#, c-format
-#| msgid "poll() failed: %m"
msgid "epoll_ctl() failed: %m"
msgstr "epoll_ctl() 失败:%m"
-#: storage/ipc/latch.c:993
+#: storage/ipc/latch.c:1060
#, c-format
-#| msgid "poll() failed: %m"
msgid "epoll_wait() failed: %m"
msgstr "epoll_wait() 失败:%m"
-#: storage/ipc/latch.c:1113
+#: storage/ipc/latch.c:1182
#, c-format
msgid "poll() failed: %m"
msgstr "poll()失败: %m"
-#: storage/ipc/shm_toc.c:108 storage/ipc/shm_toc.c:189 storage/ipc/shmem.c:210
-#: storage/lmgr/lock.c:883 storage/lmgr/lock.c:917 storage/lmgr/lock.c:2682
-#: storage/lmgr/lock.c:4007 storage/lmgr/lock.c:4072 storage/lmgr/lock.c:4364
-#: storage/lmgr/predicate.c:2329 storage/lmgr/predicate.c:2344
-#: storage/lmgr/predicate.c:3736 storage/lmgr/predicate.c:4879
-#: storage/lmgr/proc.c:203 utils/hash/dynahash.c:1045
+#: storage/ipc/shm_toc.c:118 storage/ipc/shm_toc.c:200 storage/lmgr/lock.c:905
+#: storage/lmgr/lock.c:943 storage/lmgr/lock.c:2730 storage/lmgr/lock.c:4055
+#: storage/lmgr/lock.c:4120 storage/lmgr/lock.c:4412
+#: storage/lmgr/predicate.c:2355 storage/lmgr/predicate.c:2370
+#: storage/lmgr/predicate.c:3762 storage/lmgr/predicate.c:4905
+#: utils/hash/dynahash.c:1065
#, c-format
msgid "out of shared memory"
msgstr "共享内存用尽"
-#: storage/ipc/shmem.c:366 storage/ipc/shmem.c:417
+#: storage/ipc/shmem.c:165 storage/ipc/shmem.c:246
#, c-format
-msgid ""
-"not enough shared memory for data structure \"%s\" (%zu bytes requested)"
-msgstr "没有足够的共享内存提供给数据结构\"%s\" (需要%zu个字节)"
+msgid "out of shared memory (%zu bytes requested)"
+msgstr "共享内存不足 (需要%zu个字节)"
-#: storage/ipc/shmem.c:385
+#: storage/ipc/shmem.c:421
#, c-format
msgid "could not create ShmemIndex entry for data structure \"%s\""
msgstr "无法为数据结构\"%s\"创建ShmemIndex项"
-#: storage/ipc/shmem.c:400
+#: storage/ipc/shmem.c:436
#, c-format
-msgid ""
-"ShmemIndex entry size is wrong for data structure \"%s\": expected %zu, "
-"actual %zu"
-msgstr ""
-"对于数据结构\"%s\"来说ShmemIndex项的大小错误:所期望的值是%zu,实的值是%zu"
+msgid "ShmemIndex entry size is wrong for data structure \"%s\": expected %zu, actual %zu"
+msgstr "对于数据结构\"%s\"来说ShmemIndex项的大小错误:所期望的值是%zu,实的值是%zu"
+
+#: storage/ipc/shmem.c:453
+#, c-format
+msgid "not enough shared memory for data structure \"%s\" (%zu bytes requested)"
+msgstr "没有足够的共享内存提供给数据结构\"%s\" (需要%zu个字节)"
-#: storage/ipc/shmem.c:445 storage/ipc/shmem.c:464
+#: storage/ipc/shmem.c:484 storage/ipc/shmem.c:503
#, c-format
msgid "requested shared memory size overflows size_t"
msgstr "所要求的共享内存大小超过size_t"
-#: storage/ipc/standby.c:527 tcop/postgres.c:2963
+#: storage/ipc/standby.c:558 tcop/postgres.c:3056
#, c-format
msgid "canceling statement due to conflict with recovery"
msgstr "由于与恢复操作冲突,正在取消语句命令"
-#: storage/ipc/standby.c:528 tcop/postgres.c:2265
+#: storage/ipc/standby.c:559 tcop/postgres.c:2329
#, c-format
msgid "User transaction caused buffer deadlock with recovery."
msgstr "用户事务造成了恢复操作期间缓冲区的死锁"
-#: storage/large_object/inv_api.c:203
+#: storage/large_object/inv_api.c:190
#, c-format
msgid "pg_largeobject entry for OID %u, page %d has invalid data field size %d"
msgstr "pg_largeobject 的 OID为 %u, 页号 %d , 数据域的大小 %d为无效值"
-#: storage/large_object/inv_api.c:284
+#: storage/large_object/inv_api.c:271
#, c-format
msgid "invalid flags for opening a large object: %d"
msgstr "打开大对象的无效标记: %d"
-#: storage/large_object/inv_api.c:436
+#: storage/large_object/inv_api.c:461
#, c-format
msgid "invalid whence setting: %d"
msgstr "无效的根源设置: %d"
-#: storage/large_object/inv_api.c:593
+#: storage/large_object/inv_api.c:633
#, c-format
msgid "invalid large object write request size: %d"
msgstr "无效的大对象写请求大小: %d"
msgid "See server log for query details."
msgstr "详细信息请查看服务器日志."
-#: storage/lmgr/lmgr.c:719
+#: storage/lmgr/lmgr.c:767
#, c-format
msgid "while updating tuple (%u,%u) in relation \"%s\""
msgstr "当更新关系\"%3$s\"的元组(%1$u, %2$u)时"
-#: storage/lmgr/lmgr.c:722
+#: storage/lmgr/lmgr.c:770
#, c-format
msgid "while deleting tuple (%u,%u) in relation \"%s\""
msgstr "当删除关系\"%3$s\"的元组(%1$u, %2$u)时"
-#: storage/lmgr/lmgr.c:725
+#: storage/lmgr/lmgr.c:773
#, c-format
msgid "while locking tuple (%u,%u) in relation \"%s\""
msgstr "当锁定关系\"%3$s\"的元组(%1$u, %2$u)时"
-#: storage/lmgr/lmgr.c:728
+#: storage/lmgr/lmgr.c:776
#, c-format
msgid "while locking updated version (%u,%u) of tuple in relation \"%s\""
msgstr "在锁定关系\"%3$s\"中的元组的更新版本 (%1$u,%2$u) 时"
-#: storage/lmgr/lmgr.c:731
+#: storage/lmgr/lmgr.c:779
#, c-format
msgid "while inserting index tuple (%u,%u) in relation \"%s\""
msgstr "在往关系\"%3$s\"中插入索引元组 (%1$u,%2$u) 时"
-#: storage/lmgr/lmgr.c:734
+#: storage/lmgr/lmgr.c:782
#, c-format
msgid "while checking uniqueness of tuple (%u,%u) in relation \"%s\""
msgstr "在检查关系\"%3$s\"中元组(%1$u, %2$u)的唯一性时"
-#: storage/lmgr/lmgr.c:737
+#: storage/lmgr/lmgr.c:785
#, c-format
msgid "while rechecking updated tuple (%u,%u) in relation \"%s\""
msgstr "重新检查关系 \"%3$s\"中已更新的元组(%1$u, %2$u)时"
-#: storage/lmgr/lmgr.c:740
+#: storage/lmgr/lmgr.c:788
#, c-format
msgid "while checking exclusion constraint on tuple (%u,%u) in relation \"%s\""
msgstr "在检查关系\"%3$s\"中的元组(%1$u, %2$u)的排它性依赖时"
-#: storage/lmgr/lmgr.c:960
+#: storage/lmgr/lmgr.c:1008
#, c-format
msgid "relation %u of database %u"
msgstr "数据库%2$u的关系%1$u"
-#: storage/lmgr/lmgr.c:966
+#: storage/lmgr/lmgr.c:1014
#, c-format
msgid "extension of relation %u of database %u"
msgstr "数据库%2$u的关系%1$u的扩展"
-#: storage/lmgr/lmgr.c:972
+#: storage/lmgr/lmgr.c:1020
#, c-format
msgid "page %u of relation %u of database %u"
msgstr "数据库%3$u的关系%2$u的页%1$u"
-#: storage/lmgr/lmgr.c:979
+#: storage/lmgr/lmgr.c:1027
#, c-format
msgid "tuple (%u,%u) of relation %u of database %u"
msgstr "数据库%4$u的关系%3$u中的元组(%1$u,%2$u)"
-#: storage/lmgr/lmgr.c:987
+#: storage/lmgr/lmgr.c:1035
#, c-format
msgid "transaction %u"
msgstr "事务 %u"
# sql_help.h:101
# sql_help.h:413
-#: storage/lmgr/lmgr.c:992
+#: storage/lmgr/lmgr.c:1040
#, c-format
msgid "virtual transaction %d/%u"
msgstr "虚拟事务 %d/%u"
-#: storage/lmgr/lmgr.c:998
+#: storage/lmgr/lmgr.c:1046
#, c-format
msgid "speculative token %u of transaction %u"
msgstr "事务%2$u的推测记号是%1$u"
-#: storage/lmgr/lmgr.c:1004
+#: storage/lmgr/lmgr.c:1052
#, c-format
msgid "object %u of class %u of database %u"
msgstr "数据库%3$u的类%2$u的对象%1$u"
-#: storage/lmgr/lmgr.c:1012
+#: storage/lmgr/lmgr.c:1060
#, c-format
msgid "user lock [%u,%u,%u]"
msgstr "用户锁[%u,%u,%u]"
-#: storage/lmgr/lmgr.c:1019
+#: storage/lmgr/lmgr.c:1067
#, c-format
msgid "advisory lock [%u,%u,%u,%u]"
msgstr "建议锁 [%u,%u,%u,%u]"
-#: storage/lmgr/lmgr.c:1027
+#: storage/lmgr/lmgr.c:1075
#, c-format
msgid "unrecognized locktag type %d"
msgstr "未知的locktag 类型 %d"
-#: storage/lmgr/lock.c:732
+#: storage/lmgr/lock.c:740
#, c-format
-msgid ""
-"cannot acquire lock mode %s on database objects while recovery is in progress"
+msgid "cannot acquire lock mode %s on database objects while recovery is in progress"
msgstr "在恢复操作的过程中不能在数据库对象上获取锁模式%s"
-#: storage/lmgr/lock.c:734
+#: storage/lmgr/lock.c:742
#, c-format
-msgid ""
-"Only RowExclusiveLock or less can be acquired on database objects during "
-"recovery."
+msgid "Only RowExclusiveLock or less can be acquired on database objects during recovery."
msgstr "在恢复操作期间只有在数据对象上获取RowExclusiveLock或者更低级别的锁。"
-#: storage/lmgr/lock.c:884 storage/lmgr/lock.c:918 storage/lmgr/lock.c:2683
-#: storage/lmgr/lock.c:4008 storage/lmgr/lock.c:4073 storage/lmgr/lock.c:4365
+#: storage/lmgr/lock.c:906 storage/lmgr/lock.c:944 storage/lmgr/lock.c:2731
+#: storage/lmgr/lock.c:4056 storage/lmgr/lock.c:4121 storage/lmgr/lock.c:4413
#, c-format
msgid "You might need to increase max_locks_per_transaction."
msgstr "您可能需要增加参数max_locks_per_transaction."
-#: storage/lmgr/lock.c:3124 storage/lmgr/lock.c:3240
+#: storage/lmgr/lock.c:3172 storage/lmgr/lock.c:3288
#, c-format
-msgid ""
-"cannot PREPARE while holding both session-level and transaction-level locks "
-"on the same object"
+msgid "cannot PREPARE while holding both session-level and transaction-level locks on the same object"
msgstr "在一个对象上同时拥有会话级和事务级锁时,无法执行PREPARE"
-#: storage/lmgr/predicate.c:675
+#: storage/lmgr/predicate.c:682
#, c-format
msgid "not enough elements in RWConflictPool to record a read/write conflict"
msgstr "RWConflictPool(读写冲突池)没有足够的元素来记录读/写冲突"
-#: storage/lmgr/predicate.c:676 storage/lmgr/predicate.c:704
+#: storage/lmgr/predicate.c:683 storage/lmgr/predicate.c:711
#, c-format
-msgid ""
-"You might need to run fewer transactions at a time or increase "
-"max_connections."
+msgid "You might need to run fewer transactions at a time or increase max_connections."
msgstr "您可能需要每次执行更少的事务,要么增大max_connections值."
-#: storage/lmgr/predicate.c:703
+#: storage/lmgr/predicate.c:710
#, c-format
-msgid ""
-"not enough elements in RWConflictPool to record a potential read/write "
-"conflict"
+msgid "not enough elements in RWConflictPool to record a potential read/write conflict"
msgstr "RWConflictPool(读写冲突池)没有足够的元素来记录可能的读/写冲突"
-#: storage/lmgr/predicate.c:909
-#, c-format
-msgid "memory for serializable conflict tracking is nearly exhausted"
-msgstr "串行化冲突跟踪所需要的内存几乎耗尽"
-
-#: storage/lmgr/predicate.c:910
-#, c-format
-msgid ""
-"There might be an idle transaction or a forgotten prepared transaction "
-"causing this."
-msgstr "可能是由于空闲事务或者一个忘了准备的事务导致此问题."
-
-#: storage/lmgr/predicate.c:1190 storage/lmgr/predicate.c:1261
-#, c-format
-msgid ""
-"not enough shared memory for elements of data structure \"%s\" (%zu bytes "
-"requested)"
-msgstr "没有足够的共享内存供数据结构\"%s\"使用 (它需要%zu个字节)"
-
-#: storage/lmgr/predicate.c:1549
+#: storage/lmgr/predicate.c:1515
#, c-format
msgid "deferrable snapshot was unsafe; trying a new one"
msgstr "可延缓的快照不安全;请尝试使用新的快照"
-#: storage/lmgr/predicate.c:1588
+#: storage/lmgr/predicate.c:1604
#, c-format
msgid "\"default_transaction_isolation\" is set to \"serializable\"."
msgstr "\"default_transaction_isolation\"被设置为\"可串行化\"."
-#: storage/lmgr/predicate.c:1589
+#: storage/lmgr/predicate.c:1605
#, c-format
-msgid ""
-"You can use \"SET default_transaction_isolation = 'repeatable read'\" to "
-"change the default."
-msgstr ""
-"您可以使用 \"SET default_transaction_isolation = 'repeatable read'\"来改变缺"
-"省值."
+msgid "You can use \"SET default_transaction_isolation = 'repeatable read'\" to change the default."
+msgstr "您可以使用 \"SET default_transaction_isolation = 'repeatable read'\"来改变缺省值."
-#: storage/lmgr/predicate.c:1628
+#: storage/lmgr/predicate.c:1645
#, c-format
msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE"
msgstr "快照导入事务不能是可延缓的只读事务"
-#: storage/lmgr/predicate.c:1706 utils/time/snapmgr.c:535
-#: utils/time/snapmgr.c:541
+#: storage/lmgr/predicate.c:1725 utils/time/snapmgr.c:621
+#: utils/time/snapmgr.c:627
#, c-format
msgid "could not import the requested snapshot"
msgstr "无法导入请求的快照"
-#: storage/lmgr/predicate.c:1707 utils/time/snapmgr.c:542
+#: storage/lmgr/predicate.c:1726 utils/time/snapmgr.c:628
#, c-format
-msgid "The source transaction %u is not running anymore."
-msgstr "源事务 %u 不再运行."
+msgid "The source process with PID %d is not running anymore."
+msgstr "PID为%d的源进程不再运行."
-#: storage/lmgr/predicate.c:2330 storage/lmgr/predicate.c:2345
-#: storage/lmgr/predicate.c:3737
+#: storage/lmgr/predicate.c:2356 storage/lmgr/predicate.c:2371
+#: storage/lmgr/predicate.c:3763
#, c-format
msgid "You might need to increase max_pred_locks_per_transaction."
msgstr "您可能需要增大参数max_pred_locks_per_transaction的值."
-#: storage/lmgr/predicate.c:3891 storage/lmgr/predicate.c:3980
-#: storage/lmgr/predicate.c:3988 storage/lmgr/predicate.c:4027
-#: storage/lmgr/predicate.c:4266 storage/lmgr/predicate.c:4603
-#: storage/lmgr/predicate.c:4615 storage/lmgr/predicate.c:4657
-#: storage/lmgr/predicate.c:4695
+#: storage/lmgr/predicate.c:3917 storage/lmgr/predicate.c:4006
+#: storage/lmgr/predicate.c:4014 storage/lmgr/predicate.c:4053
+#: storage/lmgr/predicate.c:4292 storage/lmgr/predicate.c:4629
+#: storage/lmgr/predicate.c:4641 storage/lmgr/predicate.c:4683
+#: storage/lmgr/predicate.c:4721
#, c-format
-msgid ""
-"could not serialize access due to read/write dependencies among transactions"
+msgid "could not serialize access due to read/write dependencies among transactions"
msgstr "由于多个事务间的读/写依赖而无法串行访问"
-#: storage/lmgr/predicate.c:3893 storage/lmgr/predicate.c:3982
-#: storage/lmgr/predicate.c:3990 storage/lmgr/predicate.c:4029
-#: storage/lmgr/predicate.c:4268 storage/lmgr/predicate.c:4605
-#: storage/lmgr/predicate.c:4617 storage/lmgr/predicate.c:4659
-#: storage/lmgr/predicate.c:4697
+#: storage/lmgr/predicate.c:3919 storage/lmgr/predicate.c:4008
+#: storage/lmgr/predicate.c:4016 storage/lmgr/predicate.c:4055
+#: storage/lmgr/predicate.c:4294 storage/lmgr/predicate.c:4631
+#: storage/lmgr/predicate.c:4643 storage/lmgr/predicate.c:4685
+#: storage/lmgr/predicate.c:4723
#, c-format
msgid "The transaction might succeed if retried."
msgstr "该事务如果重试,有可能成功."
-#: storage/lmgr/proc.c:1263
+#: storage/lmgr/proc.c:1318
#, c-format
msgid "Process %d waits for %s on %s."
msgstr "进程%1$d等待在%3$s上的%2$s"
-#: storage/lmgr/proc.c:1274
+#: storage/lmgr/proc.c:1329
#, c-format
msgid "sending cancel to blocking autovacuum PID %d"
msgstr "向阻塞的自动清理(autovacuum)进程%d发送取消(cancel)请求"
-#: storage/lmgr/proc.c:1292 utils/adt/misc.c:270
+#: storage/lmgr/proc.c:1347 utils/adt/misc.c:270
#, c-format
msgid "could not send signal to process %d: %m"
msgstr "无法发送信号到进程 %d: %m"
-#: storage/lmgr/proc.c:1394
+#: storage/lmgr/proc.c:1449
#, c-format
-msgid ""
-"process %d avoided deadlock for %s on %s by rearranging queue order after "
-"%ld.%03d ms"
-msgstr ""
-"进程%1$d在%4$ld.%5$03d ms通过重新安排序列顺序来避免在%3$s上的%2$s的死锁"
+msgid "process %d avoided deadlock for %s on %s by rearranging queue order after %ld.%03d ms"
+msgstr "进程%1$d在%4$ld.%5$03d ms通过重新安排序列顺序来避免在%3$s上的%2$s的死锁"
-#: storage/lmgr/proc.c:1409
+#: storage/lmgr/proc.c:1464
#, c-format
-msgid ""
-"process %d detected deadlock while waiting for %s on %s after %ld.%03d ms"
+msgid "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms"
msgstr "进程%1$d在%4$ld.%5$03d ms等待在%3$s上的%2$s同时监测到死锁"
-#: storage/lmgr/proc.c:1418
+#: storage/lmgr/proc.c:1473
#, c-format
msgid "process %d still waiting for %s on %s after %ld.%03d ms"
msgstr "进程%1$d在%4$ld.%5$03d ms仍然等待在%3$s上的%2$s"
-#: storage/lmgr/proc.c:1425
+#: storage/lmgr/proc.c:1480
#, c-format
msgid "process %d acquired %s on %s after %ld.%03d ms"
msgstr "进程%1$d在%4$ld.%5$03d ms后获取在%3$s上的%2$s"
-#: storage/lmgr/proc.c:1441
+#: storage/lmgr/proc.c:1496
#, c-format
msgid "process %d failed to acquire %s on %s after %ld.%03d ms"
msgstr "进程%1$d在%4$ld.%5$03d ms后获取在%3$s上的%2$s失败"
-#: storage/page/bufpage.c:144
+#: storage/page/bufpage.c:151
#, c-format
msgid "page verification failed, calculated checksum %u but expected %u"
msgstr "页校验失败,计算出的校验和为%u,但期望值是%u"
-#: storage/page/bufpage.c:200 storage/page/bufpage.c:490
-#: storage/page/bufpage.c:705 storage/page/bufpage.c:836
-#: storage/page/bufpage.c:936
+#: storage/page/bufpage.c:213 storage/page/bufpage.c:507
+#: storage/page/bufpage.c:744 storage/page/bufpage.c:877
+#: storage/page/bufpage.c:973 storage/page/bufpage.c:1083
#, c-format
msgid "corrupted page pointers: lower = %u, upper = %u, special = %u"
msgstr "已损坏的页指针:低位=%u, 高位=%u, 特定=%u"
-#: storage/page/bufpage.c:534
+#: storage/page/bufpage.c:529
#, c-format
msgid "corrupted item pointer: %u"
msgstr "已损坏的成员指针: %u"
-#: storage/page/bufpage.c:545 storage/page/bufpage.c:887
-#: storage/page/bufpage.c:1042
+#: storage/page/bufpage.c:556 storage/page/bufpage.c:928
#, c-format
msgid "corrupted item lengths: total %u, available space %u"
msgstr "已损坏的成员长度: 总长度%u,可有效使用的空间%u"
-#: storage/page/bufpage.c:724 storage/page/bufpage.c:860
+#: storage/page/bufpage.c:763 storage/page/bufpage.c:989
+#: storage/page/bufpage.c:1099
#, c-format
msgid "corrupted item pointer: offset = %u, size = %u"
msgstr "已损坏的成员指针: 偏移量 = %u, 大小 = %u"
-#: storage/page/bufpage.c:965
+#: storage/page/bufpage.c:901
#, c-format
msgid "corrupted item pointer: offset = %u, length = %u"
msgstr "损坏的项指针:偏移量 = %u,长度 = %u"
-#: storage/smgr/md.c:442 storage/smgr/md.c:962
+#: storage/smgr/md.c:448 storage/smgr/md.c:974
#, c-format
msgid "could not truncate file \"%s\": %m"
msgstr "无法截断文件 \"%s\": %m"
-#: storage/smgr/md.c:509
+#: storage/smgr/md.c:515
#, c-format
msgid "cannot extend file \"%s\" beyond %u blocks"
msgstr "扩展文件\"%s\"的大小不能超过%u个数据块"
-#: storage/smgr/md.c:531 storage/smgr/md.c:743 storage/smgr/md.c:818
+#: storage/smgr/md.c:537 storage/smgr/md.c:754 storage/smgr/md.c:830
#, c-format
msgid "could not seek to block %u in file \"%s\": %m"
msgstr "无法在文件\"%2$s\"中查找到数据块%1$u: %3$m"
-#: storage/smgr/md.c:539
+#: storage/smgr/md.c:545
#, c-format
msgid "could not extend file \"%s\": %m"
msgstr "无法扩展文件 \"%s\": %m"
-#: storage/smgr/md.c:541 storage/smgr/md.c:548 storage/smgr/md.c:845
+#: storage/smgr/md.c:547 storage/smgr/md.c:554 storage/smgr/md.c:857
#, c-format
msgid "Check free disk space."
msgstr "检查空闲磁盘控件."
-#: storage/smgr/md.c:545
+#: storage/smgr/md.c:551
#, c-format
msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u"
msgstr "无法扩展文件\"%1$s\": 只能在块%4$u上写%3$d字节的%2$d"
-#: storage/smgr/md.c:761
+#: storage/smgr/md.c:772
#, c-format
msgid "could not read block %u in file \"%s\": %m"
msgstr "无法在文件\"%2$s\"中读取块%1$u: %3$m"
-#: storage/smgr/md.c:777
+#: storage/smgr/md.c:788
#, c-format
msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
msgstr "无法读取文件\"%2$s\"的块%1$u:只读取了%4$d字节的%3$d"
-#: storage/smgr/md.c:836
+#: storage/smgr/md.c:848
#, c-format
msgid "could not write block %u in file \"%s\": %m"
msgstr "无法在文件 \"%2$s\"中写入块%1$u: %3$m"
-#: storage/smgr/md.c:841
+#: storage/smgr/md.c:853
#, c-format
msgid "could not write block %u in file \"%s\": wrote only %d of %d bytes"
msgstr "无法对文件\"%2$s\"写操作数据块%1$u: 只写了%4$d字节的%3$d"
-#: storage/smgr/md.c:938
+#: storage/smgr/md.c:945
#, c-format
msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now"
msgstr "无法将文件\"%s\"截断到%u个数据块;它现在只有%u个数据块"
-#: storage/smgr/md.c:987
+#: storage/smgr/md.c:1000
#, c-format
msgid "could not truncate file \"%s\" to %u blocks: %m"
msgstr "无法将文件\"%s\"截断到%u个数据块: %m"
-#: storage/smgr/md.c:1267
+#: storage/smgr/md.c:1295
#, c-format
msgid "could not fsync file \"%s\" but retrying: %m"
msgstr "无法对文件\"%s\"进行fsync操作但是正在重新尝试: %m"
-#: storage/smgr/md.c:1430
+#: storage/smgr/md.c:1458
#, c-format
msgid "could not forward fsync request because request queue is full"
msgstr "请求队列已满,无法转发fsync请求"
-#: storage/smgr/md.c:1825
+#: storage/smgr/md.c:1964
+#, c-format
+msgid "could not open file \"%s\" (target block %u): previous segment is only %u blocks"
+msgstr "无法打开文件\"%s\"(目标块%u):上一段只有%u个块"
+
+#: storage/smgr/md.c:1978
#, c-format
msgid "could not open file \"%s\" (target block %u): %m"
msgstr "无法打开文件\"%s\"(目标数据块%u): %m"
-#: tcop/fastpath.c:111 tcop/fastpath.c:475 tcop/fastpath.c:605
+#: tcop/fastpath.c:109 tcop/fastpath.c:461 tcop/fastpath.c:591
#, c-format
msgid "invalid argument size %d in function call message"
msgstr "在函数调用信息中, 参数大小 %d 是无效的"
-#: tcop/fastpath.c:291 tcop/postgres.c:992 tcop/postgres.c:1303
-#: tcop/postgres.c:1561 tcop/postgres.c:1966 tcop/postgres.c:2333
-#: tcop/postgres.c:2408
-#, c-format
-msgid ""
-"current transaction is aborted, commands ignored until end of transaction "
-"block"
-msgstr "当前事务被终止, 事务块结束之前的查询被忽略"
-
-#: tcop/fastpath.c:319
+#: tcop/fastpath.c:307
#, c-format
msgid "fastpath function call: \"%s\" (OID %u)"
msgstr "快捷路径函数调用: \"%s\" (OID %u)"
-#: tcop/fastpath.c:401 tcop/postgres.c:1163 tcop/postgres.c:1428
-#: tcop/postgres.c:1807 tcop/postgres.c:2024
+#: tcop/fastpath.c:389 tcop/postgres.c:1218 tcop/postgres.c:1482
+#: tcop/postgres.c:1864 tcop/postgres.c:2085
#, c-format
msgid "duration: %s ms"
msgstr "执行时间: %s ms"
-#: tcop/fastpath.c:405
+#: tcop/fastpath.c:393
#, c-format
msgid "duration: %s ms fastpath function call: \"%s\" (OID %u)"
msgstr "持续时间: %s ms 快速路经的函数调用: \"%s\" (OID %u)"
-#: tcop/fastpath.c:443 tcop/fastpath.c:570
+#: tcop/fastpath.c:429 tcop/fastpath.c:556
#, c-format
msgid "function call message contains %d arguments but function requires %d"
msgstr "函数调用信息包含 %d 个参数, 但函数需要 %d 个"
-#: tcop/fastpath.c:451
+#: tcop/fastpath.c:437
#, c-format
msgid "function call message contains %d argument formats but %d arguments"
msgstr "函数调用信息为包含 %d 个参数的格式, 但给定了 %d 个参数"
-#: tcop/fastpath.c:538 tcop/fastpath.c:621
+#: tcop/fastpath.c:524 tcop/fastpath.c:607
#, c-format
msgid "incorrect binary data format in function argument %d"
msgstr "函数参数 %d 为不正确的二进制数据格式"
-#: tcop/postgres.c:352 tcop/postgres.c:388 tcop/postgres.c:415
+#: tcop/postgres.c:359 tcop/postgres.c:395 tcop/postgres.c:422
#, c-format
msgid "unexpected EOF on client connection"
msgstr "在客户端联接上的意外 EOF"
-#: tcop/postgres.c:438 tcop/postgres.c:450 tcop/postgres.c:461
-#: tcop/postgres.c:473 tcop/postgres.c:4297
+#: tcop/postgres.c:445 tcop/postgres.c:457 tcop/postgres.c:468
+#: tcop/postgres.c:480 tcop/postgres.c:4408
#, c-format
msgid "invalid frontend message type %d"
msgstr "无效前端信息类型 %d"
-#: tcop/postgres.c:933
+#: tcop/postgres.c:973
#, c-format
msgid "statement: %s"
msgstr "语句: %s"
-#: tcop/postgres.c:1168
+#: tcop/postgres.c:1223
#, c-format
msgid "duration: %s ms statement: %s"
msgstr "执行时间: %s ms 语句: %s"
# common.c:170
# copy.c:530
# copy.c:575
-#: tcop/postgres.c:1218
+#: tcop/postgres.c:1273
#, c-format
msgid "parse %s: %s"
msgstr "解析 %s: %s"
-#: tcop/postgres.c:1276
+#: tcop/postgres.c:1330
#, c-format
msgid "cannot insert multiple commands into a prepared statement"
msgstr "无法插入多条命令到一个准备好的语句中"
-#: tcop/postgres.c:1433
+#: tcop/postgres.c:1487
#, c-format
msgid "duration: %s ms parse %s: %s"
msgstr "执行时间: %s ms 解析 %s: %s"
-#: tcop/postgres.c:1478
+#: tcop/postgres.c:1532
#, c-format
msgid "bind %s to %s"
msgstr "将%s绑定到%s"
-#: tcop/postgres.c:1497 tcop/postgres.c:2314
+#: tcop/postgres.c:1551 tcop/postgres.c:2377
#, c-format
msgid "unnamed prepared statement does not exist"
msgstr "未命名的准备语句不存在"
-#: tcop/postgres.c:1539
+#: tcop/postgres.c:1594
#, c-format
msgid "bind message has %d parameter formats but %d parameters"
msgstr "绑定信息有%d个参数格式,但是实际上有%d个参数"
-#: tcop/postgres.c:1545
+#: tcop/postgres.c:1600
#, c-format
-msgid ""
-"bind message supplies %d parameters, but prepared statement \"%s\" requires "
-"%d"
+msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d"
msgstr "绑定消息提供了%d个参数,但是已准备好语句\"%s\" 要求%d个参数"
-#: tcop/postgres.c:1714
+#: tcop/postgres.c:1771
#, c-format
msgid "incorrect binary data format in bind parameter %d"
msgstr "在绑定参数%d中出现不正确的二进制数据"
-#: tcop/postgres.c:1812
+#: tcop/postgres.c:1869
#, c-format
msgid "duration: %s ms bind %s%s%s: %s"
msgstr "执行时间: %s ms 绑定%s%s%s: %s"
-#: tcop/postgres.c:1860 tcop/postgres.c:2394
+#: tcop/postgres.c:1917 tcop/postgres.c:2461
#, c-format
msgid "portal \"%s\" does not exist"
msgstr "入口 \"%s\" 不存在"
-#: tcop/postgres.c:1945
+#: tcop/postgres.c:2002
#, c-format
msgid "%s %s%s%s: %s"
msgstr "%s %s%s%s: %s"
-#: tcop/postgres.c:1947 tcop/postgres.c:2032
+#: tcop/postgres.c:2004 tcop/postgres.c:2093
msgid "execute fetch from"
msgstr "执行FETCH操作"
-#: tcop/postgres.c:1948 tcop/postgres.c:2033
+#: tcop/postgres.c:2005 tcop/postgres.c:2094
msgid "execute"
msgstr "执行"
-#: tcop/postgres.c:2029
+#: tcop/postgres.c:2090
#, c-format
msgid "duration: %s ms %s %s%s%s: %s"
msgstr "执行时间: %s ms %s%s%s%s: %s"
-#: tcop/postgres.c:2155
+#: tcop/postgres.c:2216
#, c-format
msgid "prepare: %s"
msgstr "准备: %s"
-#: tcop/postgres.c:2218
+#: tcop/postgres.c:2282
#, c-format
msgid "parameters: %s"
msgstr "参数: %s"
-#: tcop/postgres.c:2237
+#: tcop/postgres.c:2301
#, c-format
msgid "abort reason: recovery conflict"
msgstr "中断原因:与恢复操作相冲突"
-#: tcop/postgres.c:2253
+#: tcop/postgres.c:2317
#, c-format
msgid "User was holding shared buffer pin for too long."
msgstr "用户所持有共享缓存锁的时间太长了."
-#: tcop/postgres.c:2256
+#: tcop/postgres.c:2320
#, c-format
msgid "User was holding a relation lock for too long."
msgstr "用户对一个关系正在持有的锁的时间太长了."
-#: tcop/postgres.c:2259
+#: tcop/postgres.c:2323
#, c-format
msgid "User was or might have been using tablespace that must be dropped."
msgstr "用户正在使用一个必须被删除的表空间"
-#: tcop/postgres.c:2262
+#: tcop/postgres.c:2326
#, c-format
msgid "User query might have needed to see row versions that must be removed."
msgstr "用户查询可能需要看到而必须被删除的行版本号"
# large_obj.c:36
-#: tcop/postgres.c:2268
+#: tcop/postgres.c:2332
#, c-format
msgid "User was connected to a database that must be dropped."
msgstr "用户连接到必须被删除的数据库"
-#: tcop/postgres.c:2597
+#: tcop/postgres.c:2657
#, c-format
msgid "terminating connection because of crash of another server process"
msgstr "中断联接, 因为其它服务器进程崩溃"
-#: tcop/postgres.c:2598
+#: tcop/postgres.c:2658
#, c-format
-msgid ""
-"The postmaster has commanded this server process to roll back the current "
-"transaction and exit, because another server process exited abnormally and "
-"possibly corrupted shared memory."
-msgstr ""
-"Postmaster 命令此服务器进程回滚当前事物并退出, 因为其它服务器进程不正常的退出"
-"可能毁坏了共享内存."
+msgid "The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory."
+msgstr "Postmaster 命令此服务器进程回滚当前事物并退出, 因为其它服务器进程不正常的退出可能毁坏了共享内存."
-#: tcop/postgres.c:2602 tcop/postgres.c:2906
+#: tcop/postgres.c:2662 tcop/postgres.c:2986
#, c-format
-msgid ""
-"In a moment you should be able to reconnect to the database and repeat your "
-"command."
+msgid "In a moment you should be able to reconnect to the database and repeat your command."
msgstr "一会儿你将可以重联接数据库并且重复你的命令."
-#: tcop/postgres.c:2688
+#: tcop/postgres.c:2744
#, c-format
msgid "floating-point exception"
msgstr "浮点异常"
-#: tcop/postgres.c:2689
+#: tcop/postgres.c:2745
#, c-format
-msgid ""
-"An invalid floating-point operation was signaled. This probably means an out-"
-"of-range result or an invalid operation, such as division by zero."
+msgid "An invalid floating-point operation was signaled. This probably means an out-of-range result or an invalid operation, such as division by zero."
msgstr "无效的浮点数操作.这表示结果越界或者进行了无效的操作,例如除零."
-#: tcop/postgres.c:2851
+#: tcop/postgres.c:2916
#, c-format
msgid "canceling authentication due to timeout"
msgstr "由于超时,正在取消认证鉴权命令"
-#: tcop/postgres.c:2855
+#: tcop/postgres.c:2920
#, c-format
msgid "terminating autovacuum process due to administrator command"
msgstr "由于管理员命令中断autovacuum进程"
-#: tcop/postgres.c:2861 tcop/postgres.c:2871 tcop/postgres.c:2904
+#: tcop/postgres.c:2924
+#, c-format
+msgid "terminating logical replication worker due to administrator command"
+msgstr "由于管理员命令而终止逻辑复制工作线程"
+
+#: tcop/postgres.c:2928
+#, c-format
+msgid "logical replication launcher shutting down"
+msgstr "逻辑复制启动程序正在关闭"
+
+#: tcop/postgres.c:2941 tcop/postgres.c:2951 tcop/postgres.c:2984
#, c-format
msgid "terminating connection due to conflict with recovery"
msgstr "由于与恢复操作相冲突而中断连接"
-#: tcop/postgres.c:2877
+#: tcop/postgres.c:2957
#, c-format
msgid "terminating connection due to administrator command"
msgstr "由于管理员命令中断联接"
# common.c:298
-#: tcop/postgres.c:2887
+#: tcop/postgres.c:2967
#, c-format
msgid "connection to client lost"
msgstr "丢失了到客户端的连接"
-#: tcop/postgres.c:2940
+#: tcop/postgres.c:3033
#, c-format
msgid "canceling statement due to lock timeout"
msgstr "由于锁超时,取消语句操作"
-#: tcop/postgres.c:2947
+#: tcop/postgres.c:3040
#, c-format
msgid "canceling statement due to statement timeout"
msgstr "由于语句执行超时,正在取消查询命令"
-#: tcop/postgres.c:2954
+#: tcop/postgres.c:3047
#, c-format
msgid "canceling autovacuum task"
msgstr "正在取消自动清理任务"
-#: tcop/postgres.c:2977
+#: tcop/postgres.c:3070
#, c-format
msgid "canceling statement due to user request"
msgstr "由于用户请求而正在取消查询"
-#: tcop/postgres.c:2987
+#: tcop/postgres.c:3080
#, c-format
-#| msgid "terminating connection due to administrator command"
msgid "terminating connection due to idle-in-transaction timeout"
msgstr "由于空载事务超时而终止连接"
-#: tcop/postgres.c:3101
+#: tcop/postgres.c:3194
#, c-format
msgid "stack depth limit exceeded"
msgstr "堆栈深度超过限制"
-#: tcop/postgres.c:3102
+#: tcop/postgres.c:3195
#, c-format
-msgid ""
-"Increase the configuration parameter \"max_stack_depth\" (currently %dkB), "
-"after ensuring the platform's stack depth limit is adequate."
-msgstr ""
-"在确定了平台的堆栈深度限制是足够大后,增加配置参数 \"max_stack_depth\"的值(当"
-"前值为%dkB)."
+msgid "Increase the configuration parameter \"max_stack_depth\" (currently %dkB), after ensuring the platform's stack depth limit is adequate."
+msgstr "在确定了平台的堆栈深度限制是足够大后,增加配置参数 \"max_stack_depth\"的值(当前值为%dkB)."
-#: tcop/postgres.c:3165
+#: tcop/postgres.c:3258
#, c-format
msgid "\"max_stack_depth\" must not exceed %ldkB."
msgstr "\"max_stack_depth\"不能超过%ldkB."
-#: tcop/postgres.c:3167
+#: tcop/postgres.c:3260
#, c-format
-msgid ""
-"Increase the platform's stack depth limit via \"ulimit -s\" or local "
-"equivalent."
+msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent."
msgstr "通过命令\"ulimit -s\"或本地相同的命令来增加平台的堆栈深度限制."
-#: tcop/postgres.c:3527
+#: tcop/postgres.c:3620
#, c-format
msgid "invalid command-line argument for server process: %s"
msgstr "服务器进程:%s的无效命令行参数"
-#: tcop/postgres.c:3528 tcop/postgres.c:3534
+#: tcop/postgres.c:3621 tcop/postgres.c:3627
#, c-format
msgid "Try \"%s --help\" for more information."
msgstr "请用 \"%s --help\" 获取更多的信息."
-#: tcop/postgres.c:3532
+#: tcop/postgres.c:3625
#, c-format
msgid "%s: invalid command-line argument: %s"
msgstr "%s: 无效的命令行参数:%s"
-#: tcop/postgres.c:3594
+#: tcop/postgres.c:3687
#, c-format
msgid "%s: no database nor user name specified"
msgstr "%s: 没有指定数据库, 也没有指定用户名"
-#: tcop/postgres.c:4205
+#: tcop/postgres.c:4316
#, c-format
msgid "invalid CLOSE message subtype %d"
msgstr "无效的 CLOSE 信息子类型 %d"
-#: tcop/postgres.c:4240
+#: tcop/postgres.c:4351
#, c-format
msgid "invalid DESCRIBE message subtype %d"
msgstr "无效的 DESCRIBE 信息子类型 %d"
-#: tcop/postgres.c:4318
+#: tcop/postgres.c:4429
#, c-format
msgid "fastpath function calls not supported in a replication connection"
msgstr "复制连接不能使用fastpath函数调用"
-#: tcop/postgres.c:4322
+#: tcop/postgres.c:4433
#, c-format
msgid "extended query protocol not supported in a replication connection"
msgstr "扩展的查询协议在复制连接里不支持"
-#: tcop/postgres.c:4492
+#: tcop/postgres.c:4610
#, c-format
-msgid ""
-"disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s"
-"%s"
+msgid "disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s%s"
msgstr "断开连接: 会话时间: %d:%02d:%02d.%03d user=%s database=%s host=%s%s%s"
-#: tcop/pquery.c:663
+#: tcop/pquery.c:645
#, c-format
msgid "bind message has %d result formats but query has %d columns"
msgstr "绑定信息有%d个结果格式,但是在查询中有%d列."
-#: tcop/pquery.c:965
+#: tcop/pquery.c:952
#, c-format
msgid "cursor can only scan forward"
msgstr "游标能够只向前扫描"
-#: tcop/pquery.c:966
+#: tcop/pquery.c:953
#, c-format
msgid "Declare it with SCROLL option to enable backward scan."
msgstr "带 SCROLL 选项声明允许向后扫描"
#. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:235
+#: tcop/utility.c:245
#, c-format
msgid "cannot execute %s in a read-only transaction"
msgstr "不能在一个只读模式的事务中执行%s"
#. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:253
+#: tcop/utility.c:263
#, c-format
msgid "cannot execute %s during a parallel operation"
msgstr "并行操作期间不能执行%s"
#. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:272
+#: tcop/utility.c:282
#, c-format
msgid "cannot execute %s during recovery"
msgstr "无法在恢复期间执行%s"
#. translator: %s is name of a SQL command, eg PREPARE
-#: tcop/utility.c:290
+#: tcop/utility.c:300
#, c-format
msgid "cannot execute %s within security-restricted operation"
msgstr "无法在安全限制操作中执行%s"
-#: tcop/utility.c:744
+#: tcop/utility.c:760
#, c-format
msgid "must be superuser to do CHECKPOINT"
msgstr "只有超级用户可以做 CHECKPOINT"
-#: tsearch/dict_ispell.c:51 tsearch/dict_thesaurus.c:623
+#: tcop/utility.c:1341
+#, c-format
+msgid "cannot create index on partitioned table \"%s\""
+msgstr "无法在分区表 \"%s\"上创建索引"
+
+#: tcop/utility.c:1343
+#, c-format
+msgid "Table \"%s\" contains partitions that are foreign tables."
+msgstr "表\"%s\"包含属于外部表的分区."
+
+#: tsearch/dict_ispell.c:52 tsearch/dict_thesaurus.c:624
#, c-format
msgid "multiple DictFile parameters"
msgstr "多个DictFile参数"
-#: tsearch/dict_ispell.c:62
+#: tsearch/dict_ispell.c:63
#, c-format
msgid "multiple AffFile parameters"
msgstr "多个AffFile参数"
-#: tsearch/dict_ispell.c:81
+#: tsearch/dict_ispell.c:82
#, c-format
msgid "unrecognized Ispell parameter: \"%s\""
msgstr "未识别的Ispell参数: \"%s\""
-#: tsearch/dict_ispell.c:95
+#: tsearch/dict_ispell.c:96
#, c-format
msgid "missing AffFile parameter"
msgstr "丢失AffFile参数"
-#: tsearch/dict_ispell.c:101 tsearch/dict_thesaurus.c:647
+#: tsearch/dict_ispell.c:102 tsearch/dict_thesaurus.c:648
#, c-format
msgid "missing DictFile parameter"
msgstr "丢失DictFile参数"
-#: tsearch/dict_simple.c:57
+#: tsearch/dict_simple.c:58
#, c-format
msgid "multiple Accept parameters"
msgstr "多个接受参数"
-#: tsearch/dict_simple.c:65
+#: tsearch/dict_simple.c:66
#, c-format
msgid "unrecognized simple dictionary parameter: \"%s\""
msgstr "未识别简单字典参数:\"%s\""
-#: tsearch/dict_synonym.c:117
+#: tsearch/dict_synonym.c:118
#, c-format
msgid "unrecognized synonym parameter: \"%s\""
msgstr "未识别的同义词参数: \"%s\""
-#: tsearch/dict_synonym.c:124
+#: tsearch/dict_synonym.c:125
#, c-format
msgid "missing Synonyms parameter"
msgstr "丢失同义词参数"
-#: tsearch/dict_synonym.c:131
+#: tsearch/dict_synonym.c:132
#, c-format
msgid "could not open synonym file \"%s\": %m"
msgstr "无法打开synonym文件 \"%s\": %m"
-#: tsearch/dict_thesaurus.c:178
+#: tsearch/dict_thesaurus.c:179
#, c-format
msgid "could not open thesaurus file \"%s\": %m"
msgstr "无法打开同义词词典文件 \"%s\": %m"
-#: tsearch/dict_thesaurus.c:211
+#: tsearch/dict_thesaurus.c:212
#, c-format
msgid "unexpected delimiter"
msgstr "意外出现的分隔符"
-#: tsearch/dict_thesaurus.c:261 tsearch/dict_thesaurus.c:277
+#: tsearch/dict_thesaurus.c:262 tsearch/dict_thesaurus.c:278
#, c-format
msgid "unexpected end of line or lexeme"
msgstr "意外出现的行或词汇末尾"
-#: tsearch/dict_thesaurus.c:286
+#: tsearch/dict_thesaurus.c:287
#, c-format
msgid "unexpected end of line"
msgstr "意外的输入末尾"
-#: tsearch/dict_thesaurus.c:296
+#: tsearch/dict_thesaurus.c:297
#, c-format
msgid "too many lexemes in thesaurus entry"
msgstr "辞典项里有大多的语义"
-#: tsearch/dict_thesaurus.c:420
+#: tsearch/dict_thesaurus.c:421
#, c-format
-msgid ""
-"thesaurus sample word \"%s\" isn't recognized by subdictionary (rule %d)"
+msgid "thesaurus sample word \"%s\" isn't recognized by subdictionary (rule %d)"
msgstr "(规则 %2$d)子字典没有识别同义词字典样例词\"%1$s\" "
-#: tsearch/dict_thesaurus.c:426
+#: tsearch/dict_thesaurus.c:427
#, c-format
msgid "thesaurus sample word \"%s\" is a stop word (rule %d)"
msgstr "(规则 %2$d)同义词字典样例词\"%1$s\"是一个终止词. "
-#: tsearch/dict_thesaurus.c:429
+#: tsearch/dict_thesaurus.c:430
#, c-format
msgid "Use \"?\" to represent a stop word within a sample phrase."
msgstr "在示例短语中使用\"?\" 来代表一个结束词."
-#: tsearch/dict_thesaurus.c:575
+#: tsearch/dict_thesaurus.c:576
#, c-format
msgid "thesaurus substitute word \"%s\" is a stop word (rule %d)"
msgstr "(规则 %2$d)同义词字典替代词\"%1$s\"是一个终止词. "
-#: tsearch/dict_thesaurus.c:582
+#: tsearch/dict_thesaurus.c:583
#, c-format
-msgid ""
-"thesaurus substitute word \"%s\" isn't recognized by subdictionary (rule %d)"
+msgid "thesaurus substitute word \"%s\" isn't recognized by subdictionary (rule %d)"
msgstr "(规则 %2$d)子字典没有识别同义词字典替代词\"%1$s\""
-#: tsearch/dict_thesaurus.c:594
+#: tsearch/dict_thesaurus.c:595
#, c-format
msgid "thesaurus substitute phrase is empty (rule %d)"
msgstr "(规则 %d)同义词字典替代短语是空的"
-#: tsearch/dict_thesaurus.c:632
+#: tsearch/dict_thesaurus.c:633
#, c-format
msgid "multiple Dictionary parameters"
msgstr "多个字典参数"
-#: tsearch/dict_thesaurus.c:639
+#: tsearch/dict_thesaurus.c:640
#, c-format
msgid "unrecognized Thesaurus parameter: \"%s\""
msgstr "未识别的同义词字典参数 \"%s\""
-#: tsearch/dict_thesaurus.c:651
+#: tsearch/dict_thesaurus.c:652
#, c-format
msgid "missing Dictionary parameter"
msgstr "丢失字典参数"
-#: tsearch/spell.c:382 tsearch/spell.c:399 tsearch/spell.c:408
+#: tsearch/spell.c:380 tsearch/spell.c:397 tsearch/spell.c:406
#: tsearch/spell.c:1034
#, c-format
-#| msgid "invalid data in file \"%s\""
msgid "invalid affix flag \"%s\""
msgstr "无效的词缀标志 \"%s\""
-#: tsearch/spell.c:386 tsearch/spell.c:1038
+#: tsearch/spell.c:384 tsearch/spell.c:1038
#, c-format
-#| msgid "%s: transfer rate \"%s\" is out of range\n"
msgid "affix flag \"%s\" is out of range"
msgstr "词缀标志 \"%s\" 超过范围"
-#: tsearch/spell.c:416
+#: tsearch/spell.c:414
#, c-format
-#| msgid "invalid data in file \"%s\""
msgid "invalid character in affix flag \"%s\""
msgstr "词缀标志 \"%s\" 中有无效字符"
-#: tsearch/spell.c:436
+#: tsearch/spell.c:434
#, c-format
-msgid "invalid affix flag \"%s\" with long flag value"
-msgstr "无效的具有 long 标志值的词缀标志 \"%s\""
+msgid "invalid affix flag \"%s\" with \"long\" flag value"
+msgstr "带有\"long\"标志值的附加标志\"%s\"无效"
-#: tsearch/spell.c:523
+#: tsearch/spell.c:522
#, c-format
msgid "could not open dictionary file \"%s\": %m"
msgstr "无法打开字典文件 \"%s\": %m"
-#: tsearch/spell.c:740 utils/adt/regexp.c:204
+#: tsearch/spell.c:740 utils/adt/regexp.c:208
#, c-format
msgid "invalid regular expression: %s"
msgstr "无效的正则表达式: %s"
-#: tsearch/spell.c:1161 tsearch/spell.c:1716
+#: tsearch/spell.c:1161 tsearch/spell.c:1726
#, c-format
-#| msgid "invalid cidr value: \"%s\""
msgid "invalid affix alias \"%s\""
msgstr "无效的词缀别名 \"%s\""
-#: tsearch/spell.c:1210 tsearch/spell.c:1280 tsearch/spell.c:1422
+#: tsearch/spell.c:1211 tsearch/spell.c:1282 tsearch/spell.c:1431
#, c-format
msgid "could not open affix file \"%s\": %m"
msgstr "无法打开affix文件 \"%s\": %m"
-#: tsearch/spell.c:1264
+#: tsearch/spell.c:1265
#, c-format
-#| msgid "Ispell dictionary supports only default flag value"
-msgid "Ispell dictionary supports only default, long and num flag value"
-msgstr "Ispell 字典只支持 default、long 和 num 标志值"
+msgid "Ispell dictionary supports only \"default\", \"long\", and \"num\" flag values"
+msgstr "Ispell 字典只支持\"default\", \"long\"和 \"num\"标志值"
-#: tsearch/spell.c:1307
+#: tsearch/spell.c:1309
#, c-format
-#| msgid "%s: invalid number of parallel jobs\n"
msgid "invalid number of flag vector aliases"
msgstr "标志向量别名的数量无效"
-#: tsearch/spell.c:1538
+#: tsearch/spell.c:1332
+#, c-format
+msgid "number of aliases exceeds specified number %d"
+msgstr "别名的数目超过了指定的数目%d"
+
+#: tsearch/spell.c:1547
#, c-format
msgid "affix file contains both old-style and new-style commands"
msgstr "附加文件同时包含老式和新式命令"
-#: tsearch/to_tsany.c:170 utils/adt/tsvector.c:270
-#: utils/adt/tsvector_op.c:1064
+#: tsearch/to_tsany.c:185 utils/adt/tsvector.c:271 utils/adt/tsvector_op.c:1134
#, c-format
msgid "string is too long for tsvector (%d bytes, max %d bytes)"
msgstr "字符串对于tsvector来说太长了(当前 %d字节, 最大允许值是%d字节)"
-#: tsearch/ts_locale.c:177
+#: tsearch/ts_locale.c:185
#, c-format
msgid "line %d of configuration file \"%s\": \"%s\""
msgstr "配置文件\"%2$s\"的第%1$d行: \"%3$s\""
-#: tsearch/ts_locale.c:299
+#: tsearch/ts_locale.c:302
#, c-format
msgid "conversion from wchar_t to server encoding failed: %m"
msgstr "从wchar_t转换到服务器编码失败: %m"
msgid "could not open stop-word file \"%s\": %m"
msgstr "无法打开stop-word 文件 \"%s\": %m"
-#: tsearch/wparser.c:306
+#: tsearch/wparser.c:322 tsearch/wparser.c:410 tsearch/wparser.c:487
#, c-format
msgid "text search parser does not support headline creation"
msgstr "文本搜索解析器不支持标题创建"
-#: tsearch/wparser_def.c:2583
+#: tsearch/wparser_def.c:2486
#, c-format
msgid "unrecognized headline parameter: \"%s\""
msgstr "未识别的标题参数: \"%s\""
-#: tsearch/wparser_def.c:2592
+#: tsearch/wparser_def.c:2495
#, c-format
msgid "MinWords should be less than MaxWords"
msgstr "MinWords的值应该小于MaxWords的值"
-#: tsearch/wparser_def.c:2596
+#: tsearch/wparser_def.c:2499
#, c-format
msgid "MinWords should be positive"
msgstr "MinWord应该是正数."
-#: tsearch/wparser_def.c:2600
+#: tsearch/wparser_def.c:2503
#, c-format
msgid "ShortWord should be >= 0"
msgstr "ShortWord应该大于等于0"
-#: tsearch/wparser_def.c:2604
+#: tsearch/wparser_def.c:2507
#, c-format
msgid "MaxFragments should be >= 0"
msgstr "MaxFragments应该大于等于0"
-#: utils/adt/acl.c:170 utils/adt/name.c:91
+#: utils/adt/acl.c:171 utils/adt/name.c:91
#, c-format
msgid "identifier too long"
msgstr "标识符太长"
-#: utils/adt/acl.c:171 utils/adt/name.c:92
+#: utils/adt/acl.c:172 utils/adt/name.c:92
#, c-format
msgid "Identifier must be less than %d characters."
msgstr "标识符必须小于 %d 个字符."
-#: utils/adt/acl.c:257
+#: utils/adt/acl.c:258
#, c-format
msgid "unrecognized key word: \"%s\""
msgstr "未知的键值: \"%s\""
-#: utils/adt/acl.c:258
+#: utils/adt/acl.c:259
#, c-format
msgid "ACL key word must be \"group\" or \"user\"."
msgstr "ACL 键值必须为 \"group\" 或者 \"user\"."
-#: utils/adt/acl.c:263
+#: utils/adt/acl.c:264
#, c-format
msgid "missing name"
msgstr "缺少名字"
-#: utils/adt/acl.c:264
+#: utils/adt/acl.c:265
#, c-format
msgid "A name must follow the \"group\" or \"user\" key word."
msgstr "一个名字必须为 \"group\" 或者 \"user\" 键值."
-#: utils/adt/acl.c:270
+#: utils/adt/acl.c:271
#, c-format
msgid "missing \"=\" sign"
msgstr "缺少 \"=\" 符号"
-#: utils/adt/acl.c:323
+#: utils/adt/acl.c:324
#, c-format
msgid "invalid mode character: must be one of \"%s\""
msgstr "无效的模式字符: 必须是 \"%s\" 其中的一个"
-#: utils/adt/acl.c:345
+#: utils/adt/acl.c:346
#, c-format
msgid "a name must follow the \"/\" sign"
msgstr "名字必须再 \"/\" 符号后"
-#: utils/adt/acl.c:353
+#: utils/adt/acl.c:354
#, c-format
msgid "defaulting grantor to user ID %u"
msgstr "缺省将授权者身份给予用户ID %u"
-#: utils/adt/acl.c:544
+#: utils/adt/acl.c:545
#, c-format
msgid "ACL array contains wrong data type"
msgstr "ACL数组包含错误数据类型"
-#: utils/adt/acl.c:548
+#: utils/adt/acl.c:549
#, c-format
msgid "ACL arrays must be one-dimensional"
msgstr "ACL数组必须是一维数组"
-#: utils/adt/acl.c:552
+#: utils/adt/acl.c:553
#, c-format
msgid "ACL arrays must not contain null values"
msgstr "ACL数组不能包含空值"
-#: utils/adt/acl.c:576
+#: utils/adt/acl.c:577
#, c-format
msgid "extra garbage at the end of the ACL specification"
msgstr "在ACL定义的结束部分的多余的无用部分"
-#: utils/adt/acl.c:1196
+#: utils/adt/acl.c:1213
#, c-format
msgid "grant options cannot be granted back to your own grantor"
msgstr "不能将grant选项授予您自己的授予者 "
-#: utils/adt/acl.c:1257
+#: utils/adt/acl.c:1274
#, c-format
msgid "dependent privileges exist"
msgstr "存在依赖权限"
-#: utils/adt/acl.c:1258
+#: utils/adt/acl.c:1275
#, c-format
msgid "Use CASCADE to revoke them too."
msgstr "使用CASCADE回收这些权限"
msgid "unrecognized privilege type: \"%s\""
msgstr "未知的权限类型: \"%s\""
-#: utils/adt/acl.c:3427 utils/adt/regproc.c:123 utils/adt/regproc.c:144
-#: utils/adt/regproc.c:319
+#: utils/adt/acl.c:3487 utils/adt/regproc.c:102 utils/adt/regproc.c:277
#, c-format
msgid "function \"%s\" does not exist"
msgstr "函数 \"%s\" 不存在"
-#: utils/adt/acl.c:4881
+#: utils/adt/acl.c:4959
#, c-format
msgid "must be member of role \"%s\""
msgstr "必须是角色\"%s\"的成员"
-#: utils/adt/acl.c:5279 utils/adt/acl.c:5285
-#, c-format
-#| msgid "role name \"%s\" is reserved"
-msgid "role \"%s\" is reserved"
-msgstr "角色 \"%s\" 是被保留的"
-
-#: utils/adt/array_expanded.c:276 utils/adt/arrayfuncs.c:931
-#: utils/adt/arrayfuncs.c:1519 utils/adt/arrayfuncs.c:3251
-#: utils/adt/arrayfuncs.c:3389 utils/adt/arrayfuncs.c:5864
-#: utils/adt/arrayfuncs.c:6175 utils/adt/arrayutils.c:93
+#: utils/adt/array_expanded.c:274 utils/adt/arrayfuncs.c:932
+#: utils/adt/arrayfuncs.c:1532 utils/adt/arrayfuncs.c:3235
+#: utils/adt/arrayfuncs.c:3375 utils/adt/arrayfuncs.c:5910
+#: utils/adt/arrayfuncs.c:6221 utils/adt/arrayutils.c:93
#: utils/adt/arrayutils.c:102 utils/adt/arrayutils.c:109
#, c-format
msgid "array size exceeds the maximum allowed (%d)"
msgstr "数组的大小超过了最大允许值(%d)"
-#: utils/adt/array_userfuncs.c:67 utils/adt/array_userfuncs.c:529
-#: utils/adt/array_userfuncs.c:609 utils/adt/json.c:1759 utils/adt/json.c:1854
-#: utils/adt/json.c:1892 utils/adt/jsonb.c:1126 utils/adt/jsonb.c:1155
-#: utils/adt/jsonb.c:1591 utils/adt/jsonb.c:1755 utils/adt/jsonb.c:1765
+#: utils/adt/array_userfuncs.c:80 utils/adt/array_userfuncs.c:466
+#: utils/adt/array_userfuncs.c:546 utils/adt/json.c:1829 utils/adt/json.c:1924
+#: utils/adt/json.c:1962 utils/adt/jsonb.c:1083 utils/adt/jsonb.c:1112
+#: utils/adt/jsonb.c:1504 utils/adt/jsonb.c:1668 utils/adt/jsonb.c:1678
#, c-format
msgid "could not determine input data type"
msgstr "无法确定输入数据类型"
-#: utils/adt/array_userfuncs.c:72
+#: utils/adt/array_userfuncs.c:85
#, c-format
msgid "input data type is not an array"
msgstr "输入数据类型不是一个数组"
-#: utils/adt/array_userfuncs.c:120 utils/adt/array_userfuncs.c:174
-#: utils/adt/arrayfuncs.c:1322 utils/adt/float.c:1221 utils/adt/float.c:1280
-#: utils/adt/float.c:3509 utils/adt/float.c:3525 utils/adt/int.c:623
-#: utils/adt/int.c:652 utils/adt/int.c:673 utils/adt/int.c:704
-#: utils/adt/int.c:737 utils/adt/int.c:759 utils/adt/int.c:907
-#: utils/adt/int.c:928 utils/adt/int.c:955 utils/adt/int.c:995
-#: utils/adt/int.c:1016 utils/adt/int.c:1043 utils/adt/int.c:1076
-#: utils/adt/int.c:1159 utils/adt/int8.c:1298 utils/adt/numeric.c:2907
-#: utils/adt/numeric.c:2916 utils/adt/varbit.c:1173 utils/adt/varbit.c:1565
-#: utils/adt/varlena.c:1055 utils/adt/varlena.c:2807
+#: utils/adt/array_userfuncs.c:129 utils/adt/array_userfuncs.c:181
+#: utils/adt/arrayfuncs.c:1335 utils/adt/float.c:1376 utils/adt/float.c:1464
+#: utils/adt/float.c:3765 utils/adt/float.c:3779 utils/adt/int.c:755
+#: utils/adt/int.c:777 utils/adt/int.c:791 utils/adt/int.c:805
+#: utils/adt/int.c:836 utils/adt/int.c:857 utils/adt/int.c:974
+#: utils/adt/int.c:988 utils/adt/int.c:1002 utils/adt/int.c:1035
+#: utils/adt/int.c:1049 utils/adt/int.c:1063 utils/adt/int.c:1094
+#: utils/adt/int.c:1176 utils/adt/int8.c:1164 utils/adt/numeric.c:3117
+#: utils/adt/numeric.c:3126 utils/adt/varbit.c:1173 utils/adt/varbit.c:1575
+#: utils/adt/varlena.c:1053 utils/adt/varlena.c:2983
#, c-format
msgid "integer out of range"
msgstr "整数超出范围"
-#: utils/adt/array_userfuncs.c:127 utils/adt/array_userfuncs.c:184
+#: utils/adt/array_userfuncs.c:136 utils/adt/array_userfuncs.c:191
#, c-format
msgid "argument must be empty or one-dimensional array"
msgstr "参数必须为空或者一维数组"
-#: utils/adt/array_userfuncs.c:266 utils/adt/array_userfuncs.c:305
-#: utils/adt/array_userfuncs.c:342 utils/adt/array_userfuncs.c:371
-#: utils/adt/array_userfuncs.c:399
+#: utils/adt/array_userfuncs.c:273 utils/adt/array_userfuncs.c:312
+#: utils/adt/array_userfuncs.c:349 utils/adt/array_userfuncs.c:378
+#: utils/adt/array_userfuncs.c:406
#, c-format
msgid "cannot concatenate incompatible arrays"
msgstr "无法连结不兼容的数组"
-#: utils/adt/array_userfuncs.c:267
+#: utils/adt/array_userfuncs.c:274
#, c-format
-msgid ""
-"Arrays with element types %s and %s are not compatible for concatenation."
+msgid "Arrays with element types %s and %s are not compatible for concatenation."
msgstr "成员类型是%s和%s的数组对于串联操作是不兼容的."
-#: utils/adt/array_userfuncs.c:306
+#: utils/adt/array_userfuncs.c:313
#, c-format
msgid "Arrays of %d and %d dimensions are not compatible for concatenation."
msgstr "维度是%d和%d的数组对于串联操作不兼容"
-#: utils/adt/array_userfuncs.c:343
+#: utils/adt/array_userfuncs.c:350
#, c-format
-msgid ""
-"Arrays with differing element dimensions are not compatible for "
-"concatenation."
+msgid "Arrays with differing element dimensions are not compatible for concatenation."
msgstr "带有不同成员维度的数组对于串联操作不兼容"
-#: utils/adt/array_userfuncs.c:372 utils/adt/array_userfuncs.c:400
+#: utils/adt/array_userfuncs.c:379 utils/adt/array_userfuncs.c:407
#, c-format
msgid "Arrays with differing dimensions are not compatible for concatenation."
msgstr "带有不同维度的数组对于串联操作不兼容."
-#: utils/adt/array_userfuncs.c:468 utils/adt/arrayfuncs.c:1284
-#: utils/adt/arrayfuncs.c:3357 utils/adt/arrayfuncs.c:5764
-#, c-format
-msgid "invalid number of dimensions: %d"
-msgstr "无效的大小值: %d"
-
-#: utils/adt/array_userfuncs.c:725 utils/adt/array_userfuncs.c:876
+#: utils/adt/array_userfuncs.c:662 utils/adt/array_userfuncs.c:814
#, c-format
msgid "searching for elements in multidimensional arrays is not supported"
msgstr "不支持在多维数组中搜索元素"
-#: utils/adt/array_userfuncs.c:749
+#: utils/adt/array_userfuncs.c:686
#, c-format
msgid "initial position must not be null"
msgstr "初始位置不能为空"
-#: utils/adt/arrayfuncs.c:268 utils/adt/arrayfuncs.c:282
-#: utils/adt/arrayfuncs.c:293 utils/adt/arrayfuncs.c:315
-#: utils/adt/arrayfuncs.c:330 utils/adt/arrayfuncs.c:344
-#: utils/adt/arrayfuncs.c:350 utils/adt/arrayfuncs.c:357
-#: utils/adt/arrayfuncs.c:488 utils/adt/arrayfuncs.c:504
-#: utils/adt/arrayfuncs.c:515 utils/adt/arrayfuncs.c:530
-#: utils/adt/arrayfuncs.c:551 utils/adt/arrayfuncs.c:581
-#: utils/adt/arrayfuncs.c:588 utils/adt/arrayfuncs.c:596
-#: utils/adt/arrayfuncs.c:630 utils/adt/arrayfuncs.c:653
-#: utils/adt/arrayfuncs.c:673 utils/adt/arrayfuncs.c:785
-#: utils/adt/arrayfuncs.c:794 utils/adt/arrayfuncs.c:824
-#: utils/adt/arrayfuncs.c:839 utils/adt/arrayfuncs.c:892
+#: utils/adt/arrayfuncs.c:269 utils/adt/arrayfuncs.c:283
+#: utils/adt/arrayfuncs.c:294 utils/adt/arrayfuncs.c:316
+#: utils/adt/arrayfuncs.c:331 utils/adt/arrayfuncs.c:345
+#: utils/adt/arrayfuncs.c:351 utils/adt/arrayfuncs.c:358
+#: utils/adt/arrayfuncs.c:489 utils/adt/arrayfuncs.c:505
+#: utils/adt/arrayfuncs.c:516 utils/adt/arrayfuncs.c:531
+#: utils/adt/arrayfuncs.c:552 utils/adt/arrayfuncs.c:582
+#: utils/adt/arrayfuncs.c:589 utils/adt/arrayfuncs.c:597
+#: utils/adt/arrayfuncs.c:631 utils/adt/arrayfuncs.c:654
+#: utils/adt/arrayfuncs.c:674 utils/adt/arrayfuncs.c:786
+#: utils/adt/arrayfuncs.c:795 utils/adt/arrayfuncs.c:825
+#: utils/adt/arrayfuncs.c:840 utils/adt/arrayfuncs.c:893
#, c-format
msgid "malformed array literal: \"%s\""
msgstr "有缺陷的数组常量:\"%s\""
-#: utils/adt/arrayfuncs.c:269
+#: utils/adt/arrayfuncs.c:270
#, c-format
msgid "\"[\" must introduce explicitly-specified array dimensions."
msgstr "\"[\"必须引入显式指定的数组规模。"
-#: utils/adt/arrayfuncs.c:283
+#: utils/adt/arrayfuncs.c:284
#, c-format
msgid "Missing array dimension value."
msgstr "缺少数组尺寸值。"
-#: utils/adt/arrayfuncs.c:294 utils/adt/arrayfuncs.c:331
+#: utils/adt/arrayfuncs.c:295 utils/adt/arrayfuncs.c:332
#, c-format
msgid "Missing \"%s\" after array dimensions."
msgstr "数组维度后缺少\"%s\""
-#: utils/adt/arrayfuncs.c:303 utils/adt/arrayfuncs.c:2870
-#: utils/adt/arrayfuncs.c:2902 utils/adt/arrayfuncs.c:2917
+#: utils/adt/arrayfuncs.c:304 utils/adt/arrayfuncs.c:2883
+#: utils/adt/arrayfuncs.c:2915 utils/adt/arrayfuncs.c:2930
#, c-format
msgid "upper bound cannot be less than lower bound"
msgstr "上限不能小于底限"
-#: utils/adt/arrayfuncs.c:316
+#: utils/adt/arrayfuncs.c:317
#, c-format
msgid "Array value must start with \"{\" or dimension information."
msgstr "数组值必须以 \"{\" 或者维度信息开始。"
-#: utils/adt/arrayfuncs.c:345
+#: utils/adt/arrayfuncs.c:346
#, c-format
msgid "Array contents must start with \"{\"."
msgstr "数组内容必须以\"{\"开始。"
-#: utils/adt/arrayfuncs.c:351 utils/adt/arrayfuncs.c:358
+#: utils/adt/arrayfuncs.c:352 utils/adt/arrayfuncs.c:359
#, c-format
msgid "Specified array dimensions do not match array contents."
msgstr "指定的数组维数与数组内容不匹配"
-#: utils/adt/arrayfuncs.c:489 utils/adt/arrayfuncs.c:516
-#: utils/adt/rangetypes.c:2124 utils/adt/rangetypes.c:2132
-#: utils/adt/rowtypes.c:208 utils/adt/rowtypes.c:216
+#: utils/adt/arrayfuncs.c:490 utils/adt/arrayfuncs.c:517
+#: utils/adt/rangetypes.c:2178 utils/adt/rangetypes.c:2186
+#: utils/adt/rowtypes.c:209 utils/adt/rowtypes.c:217
#, c-format
msgid "Unexpected end of input."
msgstr "意外的输入末尾"
-#: utils/adt/arrayfuncs.c:505 utils/adt/arrayfuncs.c:552
-#: utils/adt/arrayfuncs.c:582 utils/adt/arrayfuncs.c:631
+#: utils/adt/arrayfuncs.c:506 utils/adt/arrayfuncs.c:553
+#: utils/adt/arrayfuncs.c:583 utils/adt/arrayfuncs.c:632
#, c-format
msgid "Unexpected \"%c\" character."
msgstr "意外的\"%c\"字符"
-#: utils/adt/arrayfuncs.c:531 utils/adt/arrayfuncs.c:654
+#: utils/adt/arrayfuncs.c:532 utils/adt/arrayfuncs.c:655
#, c-format
msgid "Unexpected array element."
msgstr "意外的数组元素。"
-#: utils/adt/arrayfuncs.c:589
+#: utils/adt/arrayfuncs.c:590
#, c-format
msgid "Unmatched \"%c\" character."
msgstr "不匹配的\"%c\"字符。"
-#: utils/adt/arrayfuncs.c:597
+#: utils/adt/arrayfuncs.c:598 utils/adt/jsonfuncs.c:2398
#, c-format
msgid "Multidimensional arrays must have sub-arrays with matching dimensions."
msgstr "多维数组必须有具有匹配维度的子数组"
-#: utils/adt/arrayfuncs.c:674
+#: utils/adt/arrayfuncs.c:675
#, c-format
msgid "Junk after closing right brace."
msgstr "结尾的右括号后的是无用的内容。"
-#: utils/adt/arrayfuncs.c:1295
+#: utils/adt/arrayfuncs.c:1297 utils/adt/arrayfuncs.c:3343
+#: utils/adt/arrayfuncs.c:5816
+#, c-format
+msgid "invalid number of dimensions: %d"
+msgstr "无效的大小值: %d"
+
+#: utils/adt/arrayfuncs.c:1308
#, c-format
msgid "invalid array flags"
msgstr "无效的数组标记"
-#: utils/adt/arrayfuncs.c:1303
+#: utils/adt/arrayfuncs.c:1316
#, c-format
msgid "wrong element type"
msgstr "错误的元素类型"
-#: utils/adt/arrayfuncs.c:1353 utils/adt/rangetypes.c:334
-#: utils/cache/lsyscache.c:2651
+#: utils/adt/arrayfuncs.c:1366 utils/adt/rangetypes.c:334
+#: utils/cache/lsyscache.c:2725
#, c-format
msgid "no binary input function available for type %s"
msgstr "没有类型 %s 的有效二进制输入函数"
-#: utils/adt/arrayfuncs.c:1493
+#: utils/adt/arrayfuncs.c:1506
#, c-format
msgid "improper binary format in array element %d"
msgstr "数组元素 %d 为不正确的二进制格式"
-#: utils/adt/arrayfuncs.c:1574 utils/adt/rangetypes.c:339
-#: utils/cache/lsyscache.c:2684
+#: utils/adt/arrayfuncs.c:1587 utils/adt/rangetypes.c:339
+#: utils/cache/lsyscache.c:2758
#, c-format
msgid "no binary output function available for type %s"
msgstr "没有类型 %s 的有效二进制输出函数"
-#: utils/adt/arrayfuncs.c:2052
+#: utils/adt/arrayfuncs.c:2065
#, c-format
msgid "slices of fixed-length arrays not implemented"
msgstr "没有实现固定长度数组的部分"
-#: utils/adt/arrayfuncs.c:2230 utils/adt/arrayfuncs.c:2252
-#: utils/adt/arrayfuncs.c:2301 utils/adt/arrayfuncs.c:2537
-#: utils/adt/arrayfuncs.c:2848 utils/adt/arrayfuncs.c:5744
-#: utils/adt/arrayfuncs.c:5776 utils/adt/arrayfuncs.c:5793
-#: utils/adt/json.c:2290 utils/adt/json.c:2365 utils/adt/jsonb.c:1369
-#: utils/adt/jsonb.c:1455 utils/adt/jsonfuncs.c:3537
-#: utils/adt/jsonfuncs.c:3582 utils/adt/jsonfuncs.c:3629
+#: utils/adt/arrayfuncs.c:2243 utils/adt/arrayfuncs.c:2265
+#: utils/adt/arrayfuncs.c:2314 utils/adt/arrayfuncs.c:2550
+#: utils/adt/arrayfuncs.c:2861 utils/adt/arrayfuncs.c:5802
+#: utils/adt/arrayfuncs.c:5828 utils/adt/arrayfuncs.c:5839
+#: utils/adt/json.c:2323 utils/adt/json.c:2398 utils/adt/jsonb.c:1282
+#: utils/adt/jsonb.c:1368 utils/adt/jsonfuncs.c:4295 utils/adt/jsonfuncs.c:4446
+#: utils/adt/jsonfuncs.c:4491 utils/adt/jsonfuncs.c:4538
#, c-format
msgid "wrong number of array subscripts"
msgstr "错误的数组下标"
-#: utils/adt/arrayfuncs.c:2235 utils/adt/arrayfuncs.c:2343
-#: utils/adt/arrayfuncs.c:2601 utils/adt/arrayfuncs.c:2907
+#: utils/adt/arrayfuncs.c:2248 utils/adt/arrayfuncs.c:2356
+#: utils/adt/arrayfuncs.c:2614 utils/adt/arrayfuncs.c:2920
#, c-format
msgid "array subscript out of range"
msgstr "数组下标超出范围"
-#: utils/adt/arrayfuncs.c:2240
+#: utils/adt/arrayfuncs.c:2253
#, c-format
msgid "cannot assign null value to an element of a fixed-length array"
msgstr "无法将空值分配给固定长度数组的成员"
-#: utils/adt/arrayfuncs.c:2795
+#: utils/adt/arrayfuncs.c:2808
#, c-format
msgid "updates on slices of fixed-length arrays not implemented"
msgstr "没有实现在固定长度数组部分上的更新操作"
-#: utils/adt/arrayfuncs.c:2826
+#: utils/adt/arrayfuncs.c:2839
#, c-format
-#| msgid "array subscript must have type integer"
msgid "array slice subscript must provide both boundaries"
msgstr "数组切片下标必须提供两个边界"
-#: utils/adt/arrayfuncs.c:2827
+#: utils/adt/arrayfuncs.c:2840
#, c-format
-msgid ""
-"When assigning to a slice of an empty array value, slice boundaries must be "
-"fully specified."
+msgid "When assigning to a slice of an empty array value, slice boundaries must be fully specified."
msgstr "在给一个空数组值的切片赋值时,必须完全指定切片的边界。"
-#: utils/adt/arrayfuncs.c:2838 utils/adt/arrayfuncs.c:2933
+#: utils/adt/arrayfuncs.c:2851 utils/adt/arrayfuncs.c:2946
#, c-format
msgid "source array too small"
msgstr "源数组太小"
-#: utils/adt/arrayfuncs.c:3513
+#: utils/adt/arrayfuncs.c:3499
#, c-format
msgid "null array element not allowed in this context"
msgstr "不支持空数组元素"
-#: utils/adt/arrayfuncs.c:3615 utils/adt/arrayfuncs.c:3786
-#: utils/adt/arrayfuncs.c:4060
+#: utils/adt/arrayfuncs.c:3601 utils/adt/arrayfuncs.c:3772
+#: utils/adt/arrayfuncs.c:4124
#, c-format
msgid "cannot compare arrays of different element types"
msgstr "无法比较不同元素类型的数组"
-#: utils/adt/arrayfuncs.c:3962 utils/adt/rangetypes.c:1253
+#: utils/adt/arrayfuncs.c:3948 utils/adt/rangetypes.c:1253
+#: utils/adt/rangetypes.c:1317
#, c-format
msgid "could not identify a hash function for type %s"
msgstr "无法为类型 %s 确认一个哈希函数"
-#: utils/adt/arrayfuncs.c:5156
+#: utils/adt/arrayfuncs.c:4040
+#, c-format
+msgid "could not identify an extended hash function for type %s"
+msgstr "无法识别类型%s的扩展哈希函数"
+
+#: utils/adt/arrayfuncs.c:5216
#, c-format
msgid "data type %s is not an array type"
msgstr "数据类型%s不是一个数组类型"
-#: utils/adt/arrayfuncs.c:5213
+#: utils/adt/arrayfuncs.c:5271
#, c-format
msgid "cannot accumulate null arrays"
msgstr "无法累计空值数组"
-#: utils/adt/arrayfuncs.c:5241
+#: utils/adt/arrayfuncs.c:5299
#, c-format
msgid "cannot accumulate empty arrays"
msgstr "无法累计空数组"
-#: utils/adt/arrayfuncs.c:5270 utils/adt/arrayfuncs.c:5276
+#: utils/adt/arrayfuncs.c:5328 utils/adt/arrayfuncs.c:5334
#, c-format
msgid "cannot accumulate arrays of different dimensionality"
msgstr "无法累积不同维度的数组"
-#: utils/adt/arrayfuncs.c:5642 utils/adt/arrayfuncs.c:5682
+#: utils/adt/arrayfuncs.c:5700 utils/adt/arrayfuncs.c:5740
#, c-format
msgid "dimension array or low bound array cannot be null"
msgstr "维度数组或低界数组不能为空(null)"
-#: utils/adt/arrayfuncs.c:5745 utils/adt/arrayfuncs.c:5777
+#: utils/adt/arrayfuncs.c:5803 utils/adt/arrayfuncs.c:5829
#, c-format
msgid "Dimension array must be one dimensional."
msgstr "维度数组必须是一维"
-#: utils/adt/arrayfuncs.c:5750 utils/adt/arrayfuncs.c:5782
-#, c-format
-msgid "wrong range of array subscripts"
-msgstr "无效的数组下标范围"
-
-#: utils/adt/arrayfuncs.c:5751 utils/adt/arrayfuncs.c:5783
-#, c-format
-msgid "Lower bound of dimension array must be one."
-msgstr "维度数组的低界必须是1"
-
-#: utils/adt/arrayfuncs.c:5756 utils/adt/arrayfuncs.c:5788
+#: utils/adt/arrayfuncs.c:5808 utils/adt/arrayfuncs.c:5834
#, c-format
msgid "dimension values cannot be null"
msgstr "维度值不能为空"
-#: utils/adt/arrayfuncs.c:5794
+#: utils/adt/arrayfuncs.c:5840
#, c-format
msgid "Low bound array has different size than dimensions array."
msgstr "低界数组的大小与多维数组不同"
-#: utils/adt/arrayfuncs.c:6040
+#: utils/adt/arrayfuncs.c:6086
#, c-format
msgid "removing elements from multidimensional arrays is not supported"
msgstr "不支持多维数组中删除元素的操作"
-#: utils/adt/arrayfuncs.c:6317
+#: utils/adt/arrayfuncs.c:6363
#, c-format
msgid "thresholds must be one-dimensional array"
msgstr "thresholds必须是一维数组"
-#: utils/adt/arrayfuncs.c:6322
+#: utils/adt/arrayfuncs.c:6368
#, c-format
msgid "thresholds array must not contain NULLs"
msgstr "thresholds数组不能包含空值"
msgid "typmod array must not contain nulls"
msgstr "typmod不能包含空值"
-#: utils/adt/ascii.c:75
+#: utils/adt/ascii.c:76
#, c-format
msgid "encoding conversion from %s to ASCII not supported"
msgstr "编码转换不支持从 %s 到 ASCII 的转换"
-#: utils/adt/bool.c:153
+#. translator: first %s is inet or cidr
+#: utils/adt/bool.c:153 utils/adt/cash.c:277 utils/adt/datetime.c:3788
+#: utils/adt/float.c:241 utils/adt/float.c:315 utils/adt/float.c:339
+#: utils/adt/float.c:458 utils/adt/float.c:541 utils/adt/float.c:567
+#: utils/adt/geo_ops.c:155 utils/adt/geo_ops.c:165 utils/adt/geo_ops.c:177
+#: utils/adt/geo_ops.c:209 utils/adt/geo_ops.c:254 utils/adt/geo_ops.c:264
+#: utils/adt/geo_ops.c:934 utils/adt/geo_ops.c:1320 utils/adt/geo_ops.c:1355
+#: utils/adt/geo_ops.c:1363 utils/adt/geo_ops.c:3429 utils/adt/geo_ops.c:4562
+#: utils/adt/geo_ops.c:4578 utils/adt/geo_ops.c:4585 utils/adt/mac.c:94
+#: utils/adt/mac8.c:93 utils/adt/mac8.c:166 utils/adt/mac8.c:184
+#: utils/adt/mac8.c:202 utils/adt/mac8.c:221 utils/adt/nabstime.c:1542
+#: utils/adt/network.c:58 utils/adt/numeric.c:604 utils/adt/numeric.c:631
+#: utils/adt/numeric.c:5662 utils/adt/numeric.c:5686 utils/adt/numeric.c:5710
+#: utils/adt/numeric.c:6516 utils/adt/numeric.c:6542 utils/adt/oid.c:44
+#: utils/adt/oid.c:58 utils/adt/oid.c:64 utils/adt/oid.c:86
+#: utils/adt/pg_lsn.c:44 utils/adt/pg_lsn.c:50 utils/adt/tid.c:72
+#: utils/adt/tid.c:80 utils/adt/tid.c:88 utils/adt/txid.c:405
+#: utils/adt/uuid.c:136
#, c-format
-msgid "invalid input syntax for type boolean: \"%s\""
-msgstr "无效的布尔类型输入语法: \"%s\""
+msgid "invalid input syntax for type %s: \"%s\""
+msgstr "无效的类型 %s 输入语法: \"%s\""
-#: utils/adt/cash.c:246
+#: utils/adt/cash.c:215 utils/adt/cash.c:240 utils/adt/cash.c:250
+#: utils/adt/cash.c:290 utils/adt/int8.c:117 utils/adt/numutils.c:75
+#: utils/adt/numutils.c:82 utils/adt/oid.c:70 utils/adt/oid.c:109
#, c-format
-msgid "invalid input syntax for type money: \"%s\""
-msgstr "无效的货币类型输入语法: \"%s\""
+msgid "value \"%s\" is out of range for type %s"
+msgstr "值 \"%s\" 超出类型 %s 的范围"
-#: utils/adt/cash.c:607 utils/adt/cash.c:657 utils/adt/cash.c:708
-#: utils/adt/cash.c:757 utils/adt/cash.c:809 utils/adt/cash.c:859
-#: utils/adt/float.c:848 utils/adt/float.c:912 utils/adt/float.c:3268
-#: utils/adt/float.c:3331 utils/adt/geo_ops.c:4085 utils/adt/int.c:719
-#: utils/adt/int.c:861 utils/adt/int.c:969 utils/adt/int.c:1058
-#: utils/adt/int.c:1097 utils/adt/int.c:1125 utils/adt/int8.c:597
-#: utils/adt/int8.c:657 utils/adt/int8.c:897 utils/adt/int8.c:1005
-#: utils/adt/int8.c:1094 utils/adt/int8.c:1202 utils/adt/numeric.c:6800
-#: utils/adt/numeric.c:7089 utils/adt/numeric.c:8090
-#: utils/adt/timestamp.c:3446
+#: utils/adt/cash.c:652 utils/adt/cash.c:702 utils/adt/cash.c:753
+#: utils/adt/cash.c:802 utils/adt/cash.c:854 utils/adt/cash.c:904
+#: utils/adt/float.c:852 utils/adt/float.c:916 utils/adt/float.c:3526
+#: utils/adt/float.c:3589 utils/adt/geo_ops.c:4092 utils/adt/int.c:820
+#: utils/adt/int.c:936 utils/adt/int.c:1016 utils/adt/int.c:1078
+#: utils/adt/int.c:1116 utils/adt/int.c:1144 utils/adt/int8.c:592
+#: utils/adt/int8.c:650 utils/adt/int8.c:850 utils/adt/int8.c:930
+#: utils/adt/int8.c:992 utils/adt/int8.c:1072 utils/adt/numeric.c:7080
+#: utils/adt/numeric.c:7369 utils/adt/numeric.c:8381 utils/adt/timestamp.c:3238
#, c-format
msgid "division by zero"
msgstr "除以零"
msgid "\"char\" out of range"
msgstr "\"char\" 超出范围"
-#: utils/adt/date.c:67 utils/adt/timestamp.c:94 utils/adt/varbit.c:52
-#: utils/adt/varchar.c:45
+#: utils/adt/date.c:65 utils/adt/timestamp.c:95 utils/adt/varbit.c:54
+#: utils/adt/varchar.c:46
#, c-format
msgid "invalid type modifier"
msgstr "无效的类型修改器"
-#: utils/adt/date.c:72
+#: utils/adt/date.c:77
#, c-format
msgid "TIME(%d)%s precision must not be negative"
msgstr "TIME(%d)%s 精确度不能为负数"
-#: utils/adt/date.c:78
+#: utils/adt/date.c:83
#, c-format
msgid "TIME(%d)%s precision reduced to maximum allowed, %d"
msgstr "TIME(%d)%s精度减少到最大允许值,%d"
-#: utils/adt/date.c:141 utils/adt/datetime.c:1277 utils/adt/datetime.c:2148
+#: utils/adt/date.c:144 utils/adt/datetime.c:1193 utils/adt/datetime.c:2104
#, c-format
msgid "date/time value \"current\" is no longer supported"
msgstr "日期/时间值 \"current\" 不再被支持了"
-#: utils/adt/date.c:167 utils/adt/date.c:175 utils/adt/formatting.c:3535
-#: utils/adt/formatting.c:3544
+#: utils/adt/date.c:170 utils/adt/date.c:178 utils/adt/formatting.c:3606
+#: utils/adt/formatting.c:3615
#, c-format
msgid "date out of range: \"%s\""
msgstr "时间戳超出范围: \"%s\""
-#: utils/adt/date.c:222 utils/adt/date.c:456 utils/adt/date.c:480
-#: utils/adt/xml.c:2029
+#: utils/adt/date.c:225 utils/adt/date.c:537 utils/adt/date.c:561
+#: utils/adt/xml.c:2092
#, c-format
msgid "date out of range"
msgstr "日期超出范围"
-#: utils/adt/date.c:264 utils/adt/timestamp.c:593
+#: utils/adt/date.c:271 utils/adt/timestamp.c:564
#, c-format
msgid "date field value out of range: %d-%02d-%02d"
msgstr "日期字段值超出范围: %d-%02d-%02d"
-#: utils/adt/date.c:271 utils/adt/date.c:280 utils/adt/timestamp.c:599
+#: utils/adt/date.c:278 utils/adt/date.c:287 utils/adt/timestamp.c:570
#, c-format
msgid "date out of range: %d-%02d-%02d"
msgstr "日期超出范围: %d-%02d-%02d"
-#: utils/adt/date.c:431
+#: utils/adt/date.c:325 utils/adt/date.c:348 utils/adt/date.c:374
+#: utils/adt/date.c:1118 utils/adt/date.c:1164 utils/adt/date.c:1704
+#: utils/adt/date.c:1735 utils/adt/date.c:1764 utils/adt/date.c:2596
+#: utils/adt/datetime.c:1677 utils/adt/formatting.c:3472
+#: utils/adt/formatting.c:3504 utils/adt/formatting.c:3581
+#: utils/adt/json.c:1621 utils/adt/json.c:1641 utils/adt/nabstime.c:459
+#: utils/adt/nabstime.c:502 utils/adt/nabstime.c:532 utils/adt/nabstime.c:575
+#: utils/adt/timestamp.c:230 utils/adt/timestamp.c:262
+#: utils/adt/timestamp.c:692 utils/adt/timestamp.c:701
+#: utils/adt/timestamp.c:779 utils/adt/timestamp.c:812
+#: utils/adt/timestamp.c:2817 utils/adt/timestamp.c:2838
+#: utils/adt/timestamp.c:2851 utils/adt/timestamp.c:2860
+#: utils/adt/timestamp.c:2868 utils/adt/timestamp.c:2923
+#: utils/adt/timestamp.c:2946 utils/adt/timestamp.c:2959
+#: utils/adt/timestamp.c:2970 utils/adt/timestamp.c:2978
+#: utils/adt/timestamp.c:3638 utils/adt/timestamp.c:3763
+#: utils/adt/timestamp.c:3804 utils/adt/timestamp.c:3894
+#: utils/adt/timestamp.c:3940 utils/adt/timestamp.c:4043
+#: utils/adt/timestamp.c:4450 utils/adt/timestamp.c:4549
+#: utils/adt/timestamp.c:4559 utils/adt/timestamp.c:4651
+#: utils/adt/timestamp.c:4753 utils/adt/timestamp.c:4763
+#: utils/adt/timestamp.c:4995 utils/adt/timestamp.c:5009
+#: utils/adt/timestamp.c:5014 utils/adt/timestamp.c:5028
+#: utils/adt/timestamp.c:5073 utils/adt/timestamp.c:5105
+#: utils/adt/timestamp.c:5112 utils/adt/timestamp.c:5145
+#: utils/adt/timestamp.c:5149 utils/adt/timestamp.c:5218
+#: utils/adt/timestamp.c:5222 utils/adt/timestamp.c:5236
+#: utils/adt/timestamp.c:5270 utils/adt/xml.c:2114 utils/adt/xml.c:2121
+#: utils/adt/xml.c:2141 utils/adt/xml.c:2148
+#, c-format
+msgid "timestamp out of range"
+msgstr "时间戳超出范围"
+
+#: utils/adt/date.c:512
#, c-format
msgid "cannot subtract infinite dates"
msgstr "无法减去无限大的日期"
-#: utils/adt/date.c:509 utils/adt/date.c:544 utils/adt/date.c:566
-#: utils/adt/date.c:2629 utils/adt/date.c:2643
+#: utils/adt/date.c:590 utils/adt/date.c:621 utils/adt/date.c:639
+#: utils/adt/date.c:2633 utils/adt/date.c:2643
#, c-format
msgid "date out of range for timestamp"
msgstr "日期超出了时间戳的范围"
-#: utils/adt/date.c:1022 utils/adt/date.c:1068 utils/adt/date.c:1678
-#: utils/adt/date.c:1714 utils/adt/date.c:1748 utils/adt/date.c:2592
-#: utils/adt/formatting.c:3410 utils/adt/formatting.c:3442
-#: utils/adt/formatting.c:3510 utils/adt/json.c:1534 utils/adt/json.c:1556
-#: utils/adt/jsonb.c:823 utils/adt/jsonb.c:847 utils/adt/nabstime.c:455
-#: utils/adt/nabstime.c:498 utils/adt/nabstime.c:528 utils/adt/nabstime.c:571
-#: utils/adt/timestamp.c:224 utils/adt/timestamp.c:268
-#: utils/adt/timestamp.c:726 utils/adt/timestamp.c:735
-#: utils/adt/timestamp.c:820 utils/adt/timestamp.c:860
-#: utils/adt/timestamp.c:3021 utils/adt/timestamp.c:3042
-#: utils/adt/timestamp.c:3055 utils/adt/timestamp.c:3064
-#: utils/adt/timestamp.c:3072 utils/adt/timestamp.c:3127
-#: utils/adt/timestamp.c:3150 utils/adt/timestamp.c:3163
-#: utils/adt/timestamp.c:3174 utils/adt/timestamp.c:3182
-#: utils/adt/timestamp.c:3756 utils/adt/timestamp.c:3885
-#: utils/adt/timestamp.c:3926 utils/adt/timestamp.c:4014
-#: utils/adt/timestamp.c:4060 utils/adt/timestamp.c:4171
-#: utils/adt/timestamp.c:4578 utils/adt/timestamp.c:4694
-#: utils/adt/timestamp.c:4704 utils/adt/timestamp.c:4800
-#: utils/adt/timestamp.c:4919 utils/adt/timestamp.c:4929
-#: utils/adt/timestamp.c:5250 utils/adt/timestamp.c:5264
-#: utils/adt/timestamp.c:5269 utils/adt/timestamp.c:5283
-#: utils/adt/timestamp.c:5366 utils/adt/timestamp.c:5398
-#: utils/adt/timestamp.c:5405 utils/adt/timestamp.c:5431
-#: utils/adt/timestamp.c:5435 utils/adt/timestamp.c:5504
-#: utils/adt/timestamp.c:5508 utils/adt/timestamp.c:5522
-#: utils/adt/timestamp.c:5560 utils/adt/xml.c:2051 utils/adt/xml.c:2058
-#: utils/adt/xml.c:2078 utils/adt/xml.c:2085
-#, c-format
-msgid "timestamp out of range"
-msgstr "时间戳超出范围"
-
-#: utils/adt/date.c:1094
+#: utils/adt/date.c:1190
#, c-format
msgid "cannot convert reserved abstime value to date"
msgstr "不能转换保留 abstime 值为 date"
-#: utils/adt/date.c:1112 utils/adt/date.c:1118
+#: utils/adt/date.c:1208 utils/adt/date.c:1214
#, c-format
-#| msgid "date out of range for timestamp"
msgid "abstime out of range for date"
msgstr "abstime 超过了日期范围"
-#: utils/adt/date.c:1258 utils/adt/date.c:1265 utils/adt/date.c:2082
-#: utils/adt/date.c:2089
+#: utils/adt/date.c:1327 utils/adt/date.c:2091
#, c-format
msgid "time out of range"
msgstr "时间超出范围"
-#: utils/adt/date.c:1326 utils/adt/timestamp.c:618
+#: utils/adt/date.c:1383 utils/adt/timestamp.c:589
#, c-format
msgid "time field value out of range: %d:%02d:%02g"
msgstr "日期/时间值超出范围: %d:%02d:%02g"
-#: utils/adt/date.c:1960 utils/adt/date.c:1977
+#: utils/adt/date.c:1893 utils/adt/date.c:2395 utils/adt/float.c:1202
+#: utils/adt/float.c:1271 utils/adt/int.c:612 utils/adt/int.c:659
+#: utils/adt/int.c:694 utils/adt/int8.c:491 utils/adt/numeric.c:2189
+#: utils/adt/timestamp.c:3287 utils/adt/timestamp.c:3318
+#: utils/adt/timestamp.c:3349
+#, c-format
+msgid "invalid preceding or following size in window function"
+msgstr "窗口函数中的前导或后导大小无效"
+
+#: utils/adt/date.c:1978 utils/adt/date.c:1991
#, c-format
msgid "\"time\" units \"%s\" not recognized"
msgstr "\"time\" 单位 \"%s\" 不被认可"
-#: utils/adt/date.c:2098
+#: utils/adt/date.c:2099
#, c-format
msgid "time zone displacement out of range"
msgstr "时间区域置换超出范围"
-#: utils/adt/date.c:2740 utils/adt/date.c:2757
+#: utils/adt/date.c:2728 utils/adt/date.c:2741
#, c-format
msgid "\"time with time zone\" units \"%s\" not recognized"
msgstr "\"time with time zone\" 单位 \"%s\" 不被认可"
-#: utils/adt/date.c:2830 utils/adt/datetime.c:994 utils/adt/datetime.c:1874
-#: utils/adt/datetime.c:4700 utils/adt/timestamp.c:532
-#: utils/adt/timestamp.c:559 utils/adt/timestamp.c:5275
-#: utils/adt/timestamp.c:5514
+#: utils/adt/date.c:2814 utils/adt/datetime.c:915 utils/adt/datetime.c:1835
+#: utils/adt/datetime.c:4625 utils/adt/timestamp.c:503
+#: utils/adt/timestamp.c:530 utils/adt/timestamp.c:5020
+#: utils/adt/timestamp.c:5228
#, c-format
msgid "time zone \"%s\" not recognized"
msgstr "时区 \"%s\" 不被认可"
-#: utils/adt/date.c:2870 utils/adt/timestamp.c:5351 utils/adt/timestamp.c:5545
+#: utils/adt/date.c:2846 utils/adt/timestamp.c:5062 utils/adt/timestamp.c:5259
#, c-format
msgid "interval time zone \"%s\" must not include months or days"
msgstr "间隔时区\"%s\"不能包含月或天"
-#: utils/adt/datetime.c:1749
-#, c-format
-msgid "time zone abbreviation \"%s\" is not used in time zone \"%s\""
-msgstr "时区缩写\"%s\"不能用于时区\"%s\""
-
-#: utils/adt/datetime.c:3835 utils/adt/datetime.c:3842
+#: utils/adt/datetime.c:3761 utils/adt/datetime.c:3768
#, c-format
msgid "date/time field value out of range: \"%s\""
msgstr "日期/时间值超出范围: \"%s\""
-#: utils/adt/datetime.c:3844
+#: utils/adt/datetime.c:3770
#, c-format
msgid "Perhaps you need a different \"datestyle\" setting."
msgstr "也许你需要不同的 \"datesytle\" 设置."
-#: utils/adt/datetime.c:3849
+#: utils/adt/datetime.c:3775
#, c-format
msgid "interval field value out of range: \"%s\""
msgstr "间隔字段超出范围: \"%s\""
-#: utils/adt/datetime.c:3855
+#: utils/adt/datetime.c:3781
#, c-format
msgid "time zone displacement out of range: \"%s\""
msgstr "时间区域置换超出范围: \"%s\""
-#. translator: first %s is inet or cidr
-#: utils/adt/datetime.c:3862 utils/adt/float.c:454 utils/adt/float.c:537
-#: utils/adt/float.c:563 utils/adt/geo_ops.c:156 utils/adt/geo_ops.c:166
-#: utils/adt/geo_ops.c:178 utils/adt/geo_ops.c:210 utils/adt/geo_ops.c:255
-#: utils/adt/geo_ops.c:265 utils/adt/geo_ops.c:935 utils/adt/geo_ops.c:1321
-#: utils/adt/geo_ops.c:1356 utils/adt/geo_ops.c:1364 utils/adt/geo_ops.c:3422
-#: utils/adt/geo_ops.c:4555 utils/adt/geo_ops.c:4571 utils/adt/geo_ops.c:4578
-#: utils/adt/network.c:58
-#, c-format
-msgid "invalid input syntax for type %s: \"%s\""
-msgstr "无效的类型 %s 输入语法: \"%s\""
-
-#: utils/adt/datetime.c:4702
+#: utils/adt/datetime.c:4627
#, c-format
-msgid ""
-"This time zone name appears in the configuration file for time zone "
-"abbreviation \"%s\"."
+msgid "This time zone name appears in the configuration file for time zone abbreviation \"%s\"."
msgstr "缩写时区 \"%s\"对应的时区名出现在配置文件中."
#: utils/adt/datum.c:86 utils/adt/datum.c:98
msgid "invalid Datum pointer"
msgstr "无效的 Datum 指针"
-#: utils/adt/dbsize.c:110
-#, c-format
-msgid "could not open tablespace directory \"%s\": %m"
-msgstr "无法打开表空间目录 \"%s\": %m"
-
-#: utils/adt/dbsize.c:757 utils/adt/dbsize.c:776 utils/adt/dbsize.c:828
+#: utils/adt/dbsize.c:759 utils/adt/dbsize.c:827
#, c-format
-#| msgid "invalid cidr value: \"%s\""
msgid "invalid size: \"%s\""
msgstr "无效的尺寸: \"%s\""
-#: utils/adt/dbsize.c:829
+#: utils/adt/dbsize.c:828
#, c-format
-#| msgid "invalid time zone name: \"%s\""
msgid "Invalid size unit: \"%s\"."
msgstr "无效的尺寸单位: \"%s\"."
-#: utils/adt/dbsize.c:830
+#: utils/adt/dbsize.c:829
#, c-format
-#| msgid ""
-#| "Valid units for this parameter are \"kB\", \"MB\", \"GB\", and \"TB\"."
msgid "Valid units are \"bytes\", \"kB\", \"MB\", \"GB\", and \"TB\"."
msgstr "有效的单位是 \"bytes\"、\"kB\"、\"MB\"、\"GB\" 以及 \"TB\"。"
-#: utils/adt/domains.c:85
+#: utils/adt/domains.c:92
#, c-format
msgid "type %s is not a domain"
msgstr "类型%s不是一个域"
msgid "Input data is missing padding, is truncated, or is otherwise corrupted."
msgstr "输入数据缺少填充,或者已经被截断,又或者已被损坏。"
-#: utils/adt/encode.c:442 utils/adt/encode.c:507 utils/adt/varlena.c:297
-#: utils/adt/varlena.c:338
+#: utils/adt/encode.c:442 utils/adt/encode.c:507 utils/adt/json.c:786
+#: utils/adt/json.c:826 utils/adt/json.c:842 utils/adt/json.c:854
+#: utils/adt/json.c:864 utils/adt/json.c:915 utils/adt/json.c:947
+#: utils/adt/json.c:966 utils/adt/json.c:978 utils/adt/json.c:990
+#: utils/adt/json.c:1135 utils/adt/json.c:1149 utils/adt/json.c:1160
+#: utils/adt/json.c:1168 utils/adt/json.c:1176 utils/adt/json.c:1184
+#: utils/adt/json.c:1192 utils/adt/json.c:1200 utils/adt/json.c:1208
+#: utils/adt/json.c:1216 utils/adt/json.c:1246 utils/adt/varlena.c:296
+#: utils/adt/varlena.c:337
#, c-format
-msgid "invalid input syntax for type bytea"
-msgstr "无效的 bytea 类型输入语法"
+msgid "invalid input syntax for type %s"
+msgstr "类型%s的输入语法无效"
#: utils/adt/enum.c:48 utils/adt/enum.c:58 utils/adt/enum.c:113
#: utils/adt/enum.c:123
msgid "invalid input value for enum %s: \"%s\""
msgstr "对于枚举%s的输入值无效: \"%s\""
-#: utils/adt/enum.c:85 utils/adt/enum.c:148 utils/adt/enum.c:198
+#: utils/adt/enum.c:85 utils/adt/enum.c:148 utils/adt/enum.c:207
#, c-format
msgid "invalid internal value for enum: %u"
msgstr "对于枚举的无效内部值: %u"
-#: utils/adt/enum.c:356 utils/adt/enum.c:385 utils/adt/enum.c:425
-#: utils/adt/enum.c:445
+#: utils/adt/enum.c:360 utils/adt/enum.c:389 utils/adt/enum.c:429
+#: utils/adt/enum.c:449
#, c-format
msgid "could not determine actual enum type"
msgstr "无法确定实际的枚举类型"
-#: utils/adt/enum.c:364 utils/adt/enum.c:393
+#: utils/adt/enum.c:368 utils/adt/enum.c:397
#, c-format
msgid "enum %s contains no values"
msgstr "枚举 \"%s\" 没有值"
-#: utils/adt/float.c:58
+#: utils/adt/expandedrecord.c:98 utils/adt/expandedrecord.c:230
+#: utils/cache/typcache.c:1563 utils/cache/typcache.c:1719
+#: utils/cache/typcache.c:1849 utils/fmgr/funcapi.c:430
+#, c-format
+msgid "type %s is not composite"
+msgstr "类型 %s 不是复合类型"
+
+#: utils/adt/float.c:55
#, c-format
msgid "value out of range: overflow"
msgstr "值超出范围: 上溢"
-#: utils/adt/float.c:63
+#: utils/adt/float.c:60
#, c-format
msgid "value out of range: underflow"
msgstr "值超出范围: 下溢"
-#: utils/adt/float.c:237 utils/adt/float.c:311 utils/adt/float.c:335
-#, c-format
-msgid "invalid input syntax for type real: \"%s\""
-msgstr "无效的实数类型输入语法: \"%s\""
-
-#: utils/adt/float.c:305
+#: utils/adt/float.c:309
#, c-format
msgid "\"%s\" is out of range for type real"
msgstr "\"%s\" 超出实数类型的范围"
-#: utils/adt/float.c:530
+#: utils/adt/float.c:534
#, c-format
msgid "\"%s\" is out of range for type double precision"
msgstr "\"%s\" 超出双精度类型的范围"
-#: utils/adt/float.c:1239 utils/adt/float.c:1297 utils/adt/int.c:349
-#: utils/adt/int.c:775 utils/adt/int.c:804 utils/adt/int.c:825
-#: utils/adt/int.c:845 utils/adt/int.c:879 utils/adt/int.c:1174
-#: utils/adt/int8.c:1323 utils/adt/numeric.c:3004 utils/adt/numeric.c:3013
+#: utils/adt/float.c:1408 utils/adt/float.c:1496 utils/adt/int.c:332
+#: utils/adt/int.c:870 utils/adt/int.c:892 utils/adt/int.c:906
+#: utils/adt/int.c:920 utils/adt/int.c:952 utils/adt/int.c:1190
+#: utils/adt/int8.c:1185 utils/adt/numeric.c:3214 utils/adt/numeric.c:3223
#, c-format
msgid "smallint out of range"
msgstr "smallint 超出范围"
-#: utils/adt/float.c:1423 utils/adt/numeric.c:7522
+#: utils/adt/float.c:1622 utils/adt/numeric.c:7802
#, c-format
msgid "cannot take square root of a negative number"
msgstr "无法为负数做平方根"
-#: utils/adt/float.c:1465 utils/adt/numeric.c:2807
+#: utils/adt/float.c:1683 utils/adt/numeric.c:3017
#, c-format
msgid "zero raised to a negative power is undefined"
msgstr "被提升到负乘方的最低点没有定义."
-#: utils/adt/float.c:1469 utils/adt/numeric.c:2813
+#: utils/adt/float.c:1687 utils/adt/numeric.c:3023
#, c-format
msgid "a negative number raised to a non-integer power yields a complex result"
msgstr "被升为非整数的平方的负数产生了一个复杂结果."
-#: utils/adt/float.c:1535 utils/adt/float.c:1565 utils/adt/numeric.c:7787
+#: utils/adt/float.c:1753 utils/adt/float.c:1783 utils/adt/numeric.c:8068
#, c-format
msgid "cannot take logarithm of zero"
msgstr "无法取零的对数"
-#: utils/adt/float.c:1539 utils/adt/float.c:1569 utils/adt/numeric.c:7791
+#: utils/adt/float.c:1757 utils/adt/float.c:1787 utils/adt/numeric.c:8072
#, c-format
msgid "cannot take logarithm of a negative number"
msgstr "无法取负数的对数"
-#: utils/adt/float.c:1599 utils/adt/float.c:1629 utils/adt/float.c:1721
-#: utils/adt/float.c:1747 utils/adt/float.c:1774 utils/adt/float.c:1800
-#: utils/adt/float.c:1922 utils/adt/float.c:1957 utils/adt/float.c:2110
-#: utils/adt/float.c:2163 utils/adt/float.c:2226 utils/adt/float.c:2280
+#: utils/adt/float.c:1817 utils/adt/float.c:1847 utils/adt/float.c:1939
+#: utils/adt/float.c:1965 utils/adt/float.c:1992 utils/adt/float.c:2018
+#: utils/adt/float.c:2165 utils/adt/float.c:2200 utils/adt/float.c:2364
+#: utils/adt/float.c:2418 utils/adt/float.c:2482 utils/adt/float.c:2537
#, c-format
msgid "input is out of range"
msgstr "输入超出范围"
-#: utils/adt/float.c:3485 utils/adt/numeric.c:1447
+#: utils/adt/float.c:3743 utils/adt/numeric.c:1504
#, c-format
msgid "count must be greater than zero"
msgstr "总数必须大于零"
-#: utils/adt/float.c:3490 utils/adt/numeric.c:1454
+#: utils/adt/float.c:3748 utils/adt/numeric.c:1511
#, c-format
msgid "operand, lower bound, and upper bound cannot be NaN"
msgstr "操作数,下限和上限不能是NaN"
-#: utils/adt/float.c:3496
+#: utils/adt/float.c:3754
#, c-format
msgid "lower and upper bounds must be finite"
msgstr "地位和高位边界必须是有限的."
-#: utils/adt/float.c:3534 utils/adt/numeric.c:1467
+#: utils/adt/float.c:3788 utils/adt/numeric.c:1524
#, c-format
msgid "lower bound cannot equal upper bound"
msgstr "下限不能等于上限"
-#: utils/adt/formatting.c:485
+#: utils/adt/formatting.c:488
#, c-format
msgid "invalid format specification for an interval value"
msgstr "间隔值的格式定义无效"
-#: utils/adt/formatting.c:486
+#: utils/adt/formatting.c:489
#, c-format
msgid "Intervals are not tied to specific calendar dates."
msgstr "间隔没有与特定的日历的日期相联系"
#: utils/adt/formatting.c:1212
#, c-format
-msgid ""
-"\"EEEE\" may only be used together with digit and decimal point patterns."
+msgid "\"EEEE\" may only be used together with digit and decimal point patterns."
msgstr "\"EEEE\"只能与数字和小数模式一同使用"
-#: utils/adt/formatting.c:1412
+#: utils/adt/formatting.c:1392
#, c-format
msgid "\"%s\" is not a number"
msgstr "\"%s\" 不是一个数字"
-#: utils/adt/formatting.c:1513 utils/adt/formatting.c:1565
+#: utils/adt/formatting.c:1470
+#, c-format
+msgid "case conversion failed: %s"
+msgstr "case转换失败: %s"
+
+#: utils/adt/formatting.c:1535
#, c-format
msgid "could not determine which collation to use for lower() function"
msgstr "无法确定函数lower()使用哪个排序规则"
-#: utils/adt/formatting.c:1633 utils/adt/formatting.c:1685
+#: utils/adt/formatting.c:1657
#, c-format
msgid "could not determine which collation to use for upper() function"
msgstr "无法确定函数upper()使用哪个排序规则"
-#: utils/adt/formatting.c:1754 utils/adt/formatting.c:1818
+#: utils/adt/formatting.c:1780
#, c-format
msgid "could not determine which collation to use for initcap() function"
msgstr "无法确定函数initcap()使用哪个排序规则"
# fe-connect.c:2558
-#: utils/adt/formatting.c:2122
+#: utils/adt/formatting.c:2148
#, c-format
msgid "invalid combination of date conventions"
msgstr "无效的日期约定格式组合"
-#: utils/adt/formatting.c:2123
+#: utils/adt/formatting.c:2149
#, c-format
-msgid ""
-"Do not mix Gregorian and ISO week date conventions in a formatting template."
+msgid "Do not mix Gregorian and ISO week date conventions in a formatting template."
msgstr "在格式模板中不要混用Gregorian和ISO周日期转换. "
-#: utils/adt/formatting.c:2140
+#: utils/adt/formatting.c:2166
#, c-format
msgid "conflicting values for \"%s\" field in formatting string"
msgstr "在格式化字符串中对于\"%s\"字段的值冲突"
-#: utils/adt/formatting.c:2142
+#: utils/adt/formatting.c:2168
#, c-format
msgid "This value contradicts a previous setting for the same field type."
msgstr "这个值与先前设定的同一字段类型相抵触"
-#: utils/adt/formatting.c:2203
+#: utils/adt/formatting.c:2229
#, c-format
msgid "source string too short for \"%s\" formatting field"
msgstr "对于\"%s\" 格式化字段的源字符串太短"
-#: utils/adt/formatting.c:2205
+#: utils/adt/formatting.c:2231
#, c-format
msgid "Field requires %d characters, but only %d remain."
msgstr "字段要求有%d个字符,但是这里只有%d个"
-#: utils/adt/formatting.c:2208 utils/adt/formatting.c:2222
+#: utils/adt/formatting.c:2234 utils/adt/formatting.c:2248
#, c-format
-msgid ""
-"If your source string is not fixed-width, try using the \"FM\" modifier."
+msgid "If your source string is not fixed-width, try using the \"FM\" modifier."
msgstr "如果源字符串不是固定长度,请尝试使用\"FM\"修改器."
-#: utils/adt/formatting.c:2218 utils/adt/formatting.c:2231
-#: utils/adt/formatting.c:2361
+#: utils/adt/formatting.c:2244 utils/adt/formatting.c:2257
+#: utils/adt/formatting.c:2387
#, c-format
msgid "invalid value \"%s\" for \"%s\""
msgstr "\"%s\"的值\"%s\"无效"
-#: utils/adt/formatting.c:2220
+#: utils/adt/formatting.c:2246
#, c-format
msgid "Field requires %d characters, but only %d could be parsed."
msgstr "字段要求%d个字符, 但是只能解析%d个字符."
-#: utils/adt/formatting.c:2233
+#: utils/adt/formatting.c:2259
#, c-format
msgid "Value must be an integer."
msgstr "值必须是一个整数"
-#: utils/adt/formatting.c:2238
+#: utils/adt/formatting.c:2264
#, c-format
msgid "value for \"%s\" in source string is out of range"
msgstr "在源字符串中\"%s\"的值超出了范围"
-#: utils/adt/formatting.c:2240
+#: utils/adt/formatting.c:2266
#, c-format
msgid "Value must be in the range %d to %d."
msgstr "值必须是在范围%d到%d之间."
-#: utils/adt/formatting.c:2363
+#: utils/adt/formatting.c:2389
#, c-format
msgid "The given value did not match any of the allowed values for this field."
msgstr "给定的值与这个字段所允许的值不匹配."
-#: utils/adt/formatting.c:2558 utils/adt/formatting.c:2578
-#: utils/adt/formatting.c:2598 utils/adt/formatting.c:2618
-#: utils/adt/formatting.c:2637 utils/adt/formatting.c:2656
-#: utils/adt/formatting.c:2680 utils/adt/formatting.c:2698
-#: utils/adt/formatting.c:2716 utils/adt/formatting.c:2734
-#: utils/adt/formatting.c:2751 utils/adt/formatting.c:2768
+#: utils/adt/formatting.c:2587 utils/adt/formatting.c:2607
+#: utils/adt/formatting.c:2627 utils/adt/formatting.c:2647
+#: utils/adt/formatting.c:2666 utils/adt/formatting.c:2685
+#: utils/adt/formatting.c:2709 utils/adt/formatting.c:2727
+#: utils/adt/formatting.c:2745 utils/adt/formatting.c:2763
+#: utils/adt/formatting.c:2780 utils/adt/formatting.c:2797
#, c-format
msgid "localized string format value too long"
msgstr "本地化字符串格式值太长"
-#: utils/adt/formatting.c:3055
+#: utils/adt/formatting.c:3084
#, c-format
-msgid "\"TZ\"/\"tz\"/\"OF\" format patterns are not supported in to_date"
-msgstr "å\9c¨to_dateä¸ä¸\8dæ\94¯æ\8c\81\"TZ\"/\"tz\"/\"OF\"ç\9a\84æ ¼å¼\8f模å¼\8f"
+msgid "formatting field \"%s\" is only supported in to_char"
+msgstr "å\8fªæ\9c\89å\9c¨to_char䏿\89\8dæ\94¯æ\8c\81æ ¼å¼\8få\8c\96å\97段\"%s\""
-#: utils/adt/formatting.c:3163
+#: utils/adt/formatting.c:3209
#, c-format
msgid "invalid input string for \"Y,YYY\""
msgstr "对于\"Y,YYY\", 所输入的字符串无效"
-#: utils/adt/formatting.c:3674
+#: utils/adt/formatting.c:3724
#, c-format
msgid "hour \"%d\" is invalid for the 12-hour clock"
msgstr "对于12小时制的钟表,小时数\"%d\"无效"
-#: utils/adt/formatting.c:3676
+#: utils/adt/formatting.c:3726
#, c-format
msgid "Use the 24-hour clock, or give an hour between 1 and 12."
msgstr "使用24小时制的钟表,或者将小时数限定在1到12之间."
-#: utils/adt/formatting.c:3771
+#: utils/adt/formatting.c:3832
#, c-format
msgid "cannot calculate day of year without year information"
msgstr "没有年份信息无法计算年的天数"
-#: utils/adt/formatting.c:4620
+#: utils/adt/formatting.c:4737
#, c-format
msgid "\"EEEE\" not supported for input"
msgstr "不支持为输入使用\"EEEE\""
-#: utils/adt/formatting.c:4632
+#: utils/adt/formatting.c:4749
#, c-format
msgid "\"RN\" not supported for input"
msgstr "不支持为输入使用\"RN\""
-#: utils/adt/genfile.c:62
+#: utils/adt/genfile.c:79
#, c-format
msgid "reference to parent directory (\"..\") not allowed"
msgstr "不允许引用源目录(\"..\") "
-#: utils/adt/genfile.c:73
+#: utils/adt/genfile.c:90
#, c-format
msgid "absolute path not allowed"
msgstr "不允许使用绝对路径"
-#: utils/adt/genfile.c:78
+#: utils/adt/genfile.c:95
#, c-format
msgid "path must be in or below the current directory"
msgstr "路径必须在当前目录或其子目录下"
-#: utils/adt/genfile.c:125 utils/adt/oracle_compat.c:184
-#: utils/adt/oracle_compat.c:282 utils/adt/oracle_compat.c:758
-#: utils/adt/oracle_compat.c:1059
+#: utils/adt/genfile.c:142 utils/adt/oracle_compat.c:185
+#: utils/adt/oracle_compat.c:283 utils/adt/oracle_compat.c:759
+#: utils/adt/oracle_compat.c:1054
#, c-format
msgid "requested length too large"
msgstr "请求长度太大"
-#: utils/adt/genfile.c:142
+#: utils/adt/genfile.c:159
#, c-format
msgid "could not seek in file \"%s\": %m"
msgstr "无法在文件\"%s\"进行查找: %m"
-#: utils/adt/genfile.c:200 utils/adt/genfile.c:241
+#: utils/adt/genfile.c:219
#, c-format
-msgid "must be superuser to read files"
-msgstr "å\8fªæ\9c\89è¶\85级ç\94¨æ\88·è\83½å¯¹æ\96\87ä»¶è¿\9bè¡\8c读æ\93\8dä½\9c"
+msgid "must be superuser to read files with adminpack 1.0"
+msgstr "å¿\85é¡»æ\98¯è¶\85级ç\94¨æ\88·æ\89\8dè\83½ä½¿ç\94¨adminpack 1.0读å\8f\96æ\96\87ä»¶"
-#: utils/adt/genfile.c:318
+#: utils/adt/genfile.c:220
#, c-format
-msgid "must be superuser to get file information"
-msgstr "只有超级用户才能获取文件信息"
+msgid "Consider using pg_file_read(), which is part of core, instead."
+msgstr "考虑使用pg_file_read(),它是核心的一部分."
-#: utils/adt/genfile.c:404
-#, c-format
-msgid "must be superuser to get directory listings"
-msgstr "只有超级用户才能获取目录列表"
-
-#: utils/adt/geo_ops.c:940
+#: utils/adt/geo_ops.c:939
#, c-format
msgid "invalid line specification: A and B cannot both be zero"
msgstr "无效的行规格: A和B不能同时为0"
-#: utils/adt/geo_ops.c:948
+#: utils/adt/geo_ops.c:947
#, c-format
msgid "invalid line specification: must be two distinct points"
msgstr "无效的线规格: 必须是两个不同的点"
-#: utils/adt/geo_ops.c:1342 utils/adt/geo_ops.c:3432 utils/adt/geo_ops.c:4245
-#: utils/adt/geo_ops.c:5173
+#: utils/adt/geo_ops.c:1341 utils/adt/geo_ops.c:3439 utils/adt/geo_ops.c:4252
+#: utils/adt/geo_ops.c:5180
#, c-format
msgid "too many points requested"
msgstr "要求了太多的点"
-#: utils/adt/geo_ops.c:1404
+#: utils/adt/geo_ops.c:1403
#, c-format
msgid "invalid number of points in external \"path\" value"
msgstr "在外部 \"path\" 值中的点数量无效."
-#: utils/adt/geo_ops.c:2555
+#: utils/adt/geo_ops.c:2554
#, c-format
msgid "function \"dist_lb\" not implemented"
msgstr "函数 \"dist_lb\" 没有实现"
-#: utils/adt/geo_ops.c:3007
+#: utils/adt/geo_ops.c:3014
#, c-format
msgid "function \"close_sl\" not implemented"
msgstr "函数 \"close_sl\" 没有实现"
-#: utils/adt/geo_ops.c:3109
+#: utils/adt/geo_ops.c:3116
#, c-format
msgid "function \"close_lb\" not implemented"
msgstr "函数 \"close_lb\" 没有实现"
-#: utils/adt/geo_ops.c:3398
+#: utils/adt/geo_ops.c:3405
#, c-format
msgid "cannot create bounding box for empty polygon"
msgstr "无法为空多边形创建 bounding box"
-#: utils/adt/geo_ops.c:3479
+#: utils/adt/geo_ops.c:3486
#, c-format
msgid "invalid number of points in external \"polygon\" value"
msgstr "在外部\"polygon\" 值中的点数量无效."
-#: utils/adt/geo_ops.c:4004
+#: utils/adt/geo_ops.c:4011
#, c-format
msgid "function \"poly_distance\" not implemented"
msgstr "函数 \"poly_distance\" 没有实现"
-#: utils/adt/geo_ops.c:4357
+#: utils/adt/geo_ops.c:4364
#, c-format
msgid "function \"path_center\" not implemented"
msgstr "函数 \"path_center\" 没有实现"
-#: utils/adt/geo_ops.c:4374
+#: utils/adt/geo_ops.c:4381
#, c-format
msgid "open path cannot be converted to polygon"
msgstr "打开的路径不能转换为多态型"
-#: utils/adt/geo_ops.c:4623
+#: utils/adt/geo_ops.c:4630
#, c-format
msgid "invalid radius in external \"circle\" value"
msgstr "在外部\"circle\" 值中的半径无效"
-#: utils/adt/geo_ops.c:5159
+#: utils/adt/geo_ops.c:5166
#, c-format
msgid "cannot convert circle with radius zero to polygon"
msgstr "无法将半径为0的圆转换为多边类型"
-#: utils/adt/geo_ops.c:5164
+#: utils/adt/geo_ops.c:5171
#, c-format
msgid "must request at least 2 points"
msgstr "必须要求至少两个点."
-#: utils/adt/geo_ops.c:5208
+#: utils/adt/geo_ops.c:5215
#, c-format
msgid "cannot convert empty polygon to circle"
msgstr "无法转换空的多边形到圆形"
-#: utils/adt/int.c:162
+#: utils/adt/int.c:160
#, c-format
msgid "int2vector has too many elements"
msgstr "int2vector 有太多的元素"
-#: utils/adt/int.c:237
+#: utils/adt/int.c:235
#, c-format
msgid "invalid int2vector data"
msgstr "无效的int2vector数据"
-#: utils/adt/int.c:243 utils/adt/oid.c:212 utils/adt/oid.c:293
+#: utils/adt/int.c:241 utils/adt/oid.c:215 utils/adt/oid.c:296
#, c-format
msgid "oidvector has too many elements"
msgstr "oidvector 有太多元素"
-#: utils/adt/int.c:1362 utils/adt/int8.c:1460 utils/adt/numeric.c:1355
-#: utils/adt/timestamp.c:5611 utils/adt/timestamp.c:5692
+#: utils/adt/int.c:1379 utils/adt/int8.c:1325 utils/adt/numeric.c:1412
+#: utils/adt/timestamp.c:5321 utils/adt/timestamp.c:5402
#, c-format
msgid "step size cannot equal zero"
msgstr "单步执行大小不能等于0"
-#: utils/adt/int8.c:98 utils/adt/int8.c:133 utils/adt/numutils.c:51
-#: utils/adt/numutils.c:61 utils/adt/numutils.c:103
+#: utils/adt/int8.c:125 utils/adt/numutils.c:51 utils/adt/numutils.c:61
+#: utils/adt/numutils.c:105
#, c-format
msgid "invalid input syntax for integer: \"%s\""
msgstr "无效的整数类型输入语法: \"%s\""
-#: utils/adt/int8.c:114
-#, c-format
-msgid "value \"%s\" is out of range for type bigint"
-msgstr "值 \"%s\" 超出 bigint 类型范围"
-
-#: utils/adt/int8.c:500 utils/adt/int8.c:529 utils/adt/int8.c:550
-#: utils/adt/int8.c:581 utils/adt/int8.c:615 utils/adt/int8.c:640
-#: utils/adt/int8.c:697 utils/adt/int8.c:714 utils/adt/int8.c:741
-#: utils/adt/int8.c:758 utils/adt/int8.c:834 utils/adt/int8.c:855
-#: utils/adt/int8.c:882 utils/adt/int8.c:915 utils/adt/int8.c:943
-#: utils/adt/int8.c:964 utils/adt/int8.c:991 utils/adt/int8.c:1031
-#: utils/adt/int8.c:1052 utils/adt/int8.c:1079 utils/adt/int8.c:1112
-#: utils/adt/int8.c:1140 utils/adt/int8.c:1161 utils/adt/int8.c:1188
-#: utils/adt/int8.c:1361 utils/adt/int8.c:1400 utils/adt/numeric.c:2959
-#: utils/adt/varbit.c:1645
+#: utils/adt/int8.c:526 utils/adt/int8.c:549 utils/adt/int8.c:563
+#: utils/adt/int8.c:577 utils/adt/int8.c:608 utils/adt/int8.c:632
+#: utils/adt/int8.c:687 utils/adt/int8.c:701 utils/adt/int8.c:725
+#: utils/adt/int8.c:738 utils/adt/int8.c:807 utils/adt/int8.c:821
+#: utils/adt/int8.c:835 utils/adt/int8.c:866 utils/adt/int8.c:888
+#: utils/adt/int8.c:902 utils/adt/int8.c:916 utils/adt/int8.c:949
+#: utils/adt/int8.c:963 utils/adt/int8.c:977 utils/adt/int8.c:1008
+#: utils/adt/int8.c:1030 utils/adt/int8.c:1044 utils/adt/int8.c:1058
+#: utils/adt/int8.c:1227 utils/adt/int8.c:1269 utils/adt/numeric.c:3169
+#: utils/adt/varbit.c:1655
#, c-format
msgid "bigint out of range"
msgstr "bigint 超出范围"
-#: utils/adt/int8.c:1417
+#: utils/adt/int8.c:1282
#, c-format
msgid "OID out of range"
msgstr "OID 超出范围"
-#: utils/adt/json.c:785 utils/adt/json.c:825 utils/adt/json.c:840
-#: utils/adt/json.c:851 utils/adt/json.c:861 utils/adt/json.c:912
-#: utils/adt/json.c:943 utils/adt/json.c:961 utils/adt/json.c:973
-#: utils/adt/json.c:985 utils/adt/json.c:1130 utils/adt/json.c:1144
-#: utils/adt/json.c:1155 utils/adt/json.c:1163 utils/adt/json.c:1171
-#: utils/adt/json.c:1179 utils/adt/json.c:1187 utils/adt/json.c:1195
-#: utils/adt/json.c:1203 utils/adt/json.c:1211 utils/adt/json.c:1241
-#, c-format
-msgid "invalid input syntax for type json"
-msgstr "json类型使用了无效的输入语法"
-
-#: utils/adt/json.c:786
+#: utils/adt/json.c:787
#, c-format
msgid "Character with value 0x%02x must be escaped."
msgstr "值为 0x%02x 的字符必须进行转义处理."
-#: utils/adt/json.c:826
+#: utils/adt/json.c:828
#, c-format
msgid "\"\\u\" must be followed by four hexadecimal digits."
msgstr "\"\\u\" 后必须紧跟有效的十六进制数数字"
-#: utils/adt/json.c:841
+#: utils/adt/json.c:844
#, c-format
msgid "Unicode high surrogate must not follow a high surrogate."
msgstr "Unicode 的高位代理项不能紧随另一个高位代理项."
-#: utils/adt/json.c:852 utils/adt/json.c:862 utils/adt/json.c:913
-#: utils/adt/json.c:974 utils/adt/json.c:986
+#: utils/adt/json.c:855 utils/adt/json.c:865 utils/adt/json.c:917
+#: utils/adt/json.c:979 utils/adt/json.c:991
#, c-format
msgid "Unicode low surrogate must follow a high surrogate."
msgstr "Unicode 代位代理项必须紧随一个高位代理项."
-#: utils/adt/json.c:877 utils/adt/json.c:900
+#: utils/adt/json.c:880 utils/adt/json.c:903
#, c-format
msgid "unsupported Unicode escape sequence"
msgstr "不支持的Unicode转义序列"
-#: utils/adt/json.c:878
+#: utils/adt/json.c:881
#, c-format
msgid "\\u0000 cannot be converted to text."
msgstr "\\u0000不能被转换为文本。"
-#: utils/adt/json.c:901
+#: utils/adt/json.c:904
#, c-format
-msgid ""
-"Unicode escape values cannot be used for code point values above 007F when "
-"the server encoding is not UTF8."
+msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8."
msgstr "当服务器的编码不是UTF8时,Unicode转义值就不能用作007F以上的码点值."
-#: utils/adt/json.c:944 utils/adt/json.c:962
+#: utils/adt/json.c:949 utils/adt/json.c:967
#, c-format
msgid "Escape sequence \"\\%s\" is invalid."
msgstr "转义序列 \"\\%s\" 无效."
-#: utils/adt/json.c:1131
+#: utils/adt/json.c:1136
#, c-format
msgid "The input string ended unexpectedly."
msgstr "输入字符串意外终止."
-#: utils/adt/json.c:1145
+#: utils/adt/json.c:1150
#, c-format
msgid "Expected end of input, but found \"%s\"."
msgstr "期望输入结束,结果发现是\"%s\"."
-#: utils/adt/json.c:1156
+#: utils/adt/json.c:1161
#, c-format
msgid "Expected JSON value, but found \"%s\"."
msgstr "期望 是JSON值, 但结果发现是\"%s\"."
-#: utils/adt/json.c:1164 utils/adt/json.c:1212
+#: utils/adt/json.c:1169 utils/adt/json.c:1217
#, c-format
msgid "Expected string, but found \"%s\"."
msgstr "期望是字符串, 但发现结果是\"%s\"."
-#: utils/adt/json.c:1172
+#: utils/adt/json.c:1177
#, c-format
msgid "Expected array element or \"]\", but found \"%s\"."
msgstr "期望为数组元素或者\"]\",但发现结果是\"%s\"."
-#: utils/adt/json.c:1180
+#: utils/adt/json.c:1185
#, c-format
msgid "Expected \",\" or \"]\", but found \"%s\"."
msgstr "期望是\",\" 或 \"]\",但发现结果是\"%s\"."
-#: utils/adt/json.c:1188
+#: utils/adt/json.c:1193
#, c-format
msgid "Expected string or \"}\", but found \"%s\"."
msgstr "期望是字符串或\"}\",但发现结果是\"%s\"."
-#: utils/adt/json.c:1196
+#: utils/adt/json.c:1201
#, c-format
msgid "Expected \":\", but found \"%s\"."
msgstr "期望得到 \":\",但发现结果是\"%s\"."
-#: utils/adt/json.c:1204
+#: utils/adt/json.c:1209
#, c-format
msgid "Expected \",\" or \"}\", but found \"%s\"."
msgstr "期望是 \",\" 或 \"}\",但发现结果是\"%s\"."
-#: utils/adt/json.c:1242
+#: utils/adt/json.c:1247
#, c-format
msgid "Token \"%s\" is invalid."
msgstr "令牌 \"%s\" 无效."
-#: utils/adt/json.c:1314
+#: utils/adt/json.c:1319
#, c-format
msgid "JSON data, line %d: %s%s%s"
msgstr "JSON数据, 行 %d: %s%s%s"
-#: utils/adt/json.c:1469 utils/adt/jsonb.c:724
+#: utils/adt/json.c:1475 utils/adt/jsonb.c:728
#, c-format
msgid "key value must be scalar, not array, composite, or json"
msgstr "键值必须是标量,不能是数组、复合值或json值"
-#: utils/adt/json.c:2006
-#, c-format
-msgid "could not determine data type for argument 1"
-msgstr "无法确定参数1的数据类型"
-
-#: utils/adt/json.c:2016
+#: utils/adt/json.c:2076 utils/adt/json.c:2086 utils/fmgr/funcapi.c:1564
#, c-format
-msgid "could not determine data type for argument 2"
-msgstr "无法确定参数2的数据类型"
+msgid "could not determine data type for argument %d"
+msgstr "无法确定参数 %d 的数据类型"
-#: utils/adt/json.c:2040 utils/adt/jsonb.c:1781
+#: utils/adt/json.c:2110 utils/adt/jsonb.c:1694
#, c-format
msgid "field name must not be null"
msgstr "字段名不能为空"
-#: utils/adt/json.c:2117
+#: utils/adt/json.c:2194 utils/adt/jsonb.c:1146
#, c-format
msgid "argument list must have even number of elements"
msgstr "参数列表的元素个数必须为偶数"
-#: utils/adt/json.c:2118
+#: utils/adt/json.c:2195
#, c-format
-msgid ""
-"The arguments of json_build_object() must consist of alternating keys and "
-"values."
+msgid "The arguments of json_build_object() must consist of alternating keys and values."
msgstr "json_build_object()的参数必须包含可替代的键和对应的值."
-#: utils/adt/json.c:2142 utils/adt/json.c:2163 utils/adt/json.c:2222
-#, c-format
-msgid "could not determine data type for argument %d"
-msgstr "无法确定参数 %d 的数据类型"
-
-#: utils/adt/json.c:2148
+#: utils/adt/json.c:2210
#, c-format
msgid "argument %d cannot be null"
msgstr "参数%d不能为空"
-#: utils/adt/json.c:2149
+#: utils/adt/json.c:2211
#, c-format
msgid "Object keys should be text."
msgstr "对象的键必须是文本"
-#: utils/adt/json.c:2284 utils/adt/jsonb.c:1363
+#: utils/adt/json.c:2317 utils/adt/jsonb.c:1276
#, c-format
msgid "array must have two columns"
msgstr "数组必须有两列"
-#: utils/adt/json.c:2308 utils/adt/json.c:2392 utils/adt/jsonb.c:1387
-#: utils/adt/jsonb.c:1482
+#: utils/adt/json.c:2341 utils/adt/json.c:2425 utils/adt/jsonb.c:1300
+#: utils/adt/jsonb.c:1395
#, c-format
msgid "null value not allowed for object key"
msgstr "空值不能用于对象的键当中"
-#: utils/adt/json.c:2381 utils/adt/jsonb.c:1471
+#: utils/adt/json.c:2414 utils/adt/jsonb.c:1384
#, c-format
msgid "mismatched array dimensions"
msgstr "不匹配的数组维数"
-#: utils/adt/jsonb.c:257
+#: utils/adt/jsonb.c:258
#, c-format
msgid "string too long to represent as jsonb string"
msgstr "用于描述jsonb字符串的字符串太长了"
-#: utils/adt/jsonb.c:258
+#: utils/adt/jsonb.c:259
#, c-format
-msgid ""
-"Due to an implementation restriction, jsonb strings cannot exceed %d bytes."
+msgid "Due to an implementation restriction, jsonb strings cannot exceed %d bytes."
msgstr "因为实现方面的限制,jsonb字符串不能超过%d个字节."
-#: utils/adt/jsonb.c:1182
+#: utils/adt/jsonb.c:1147
#, c-format
-msgid "invalid number of arguments: object must be matched key value pairs"
-msgstr "无效的参数数量:对象必须是匹配的键值对"
+msgid "The arguments of jsonb_build_object() must consist of alternating keys and values."
+msgstr "jsonb_build_object()的参数必须包含可替代的键和对应的值."
-#: utils/adt/jsonb.c:1195
+#: utils/adt/jsonb.c:1159
#, c-format
msgid "argument %d: key must not be null"
msgstr "参数%d:键不能为空"
-#: utils/adt/jsonb.c:1214 utils/adt/jsonb.c:1237 utils/adt/jsonb.c:1297
-#, c-format
-msgid "argument %d: could not determine data type"
-msgstr "参数%d:不能确定数据类型"
-
-#: utils/adt/jsonb.c:1834
+#: utils/adt/jsonb.c:1747
#, c-format
msgid "object keys must be strings"
msgstr "对象键必须是字符串"
-#: utils/adt/jsonb_util.c:656
+#: utils/adt/jsonb.c:1910
+#, c-format
+msgid "cannot cast jsonb null to type %s"
+msgstr "无法把jsonb null转换成类型%s"
+
+#: utils/adt/jsonb.c:1911
+#, c-format
+msgid "cannot cast jsonb string to type %s"
+msgstr "无法把jsonb string转换为类型%s"
+
+#: utils/adt/jsonb.c:1912
+#, c-format
+msgid "cannot cast jsonb numeric to type %s"
+msgstr "无法把jsonb numeric转换为类型%s"
+
+#: utils/adt/jsonb.c:1913
+#, c-format
+msgid "cannot cast jsonb boolean to type %s"
+msgstr "无法把jsonb boolean转换为类型%s"
+
+#: utils/adt/jsonb.c:1914
+#, c-format
+msgid "cannot cast jsonb array to type %s"
+msgstr "无法把jsonb array转换为类型%s"
+
+#: utils/adt/jsonb.c:1915
+#, c-format
+msgid "cannot cast jsonb object to type %s"
+msgstr "无法把jsonb object转换为类型%s"
+
+#: utils/adt/jsonb.c:1916
+#, c-format
+msgid "cannot cast jsonb array or object to type %s"
+msgstr "无法把jsonb array或object转换为类型%s"
+
+#: utils/adt/jsonb_util.c:657
#, c-format
msgid "number of jsonb object pairs exceeds the maximum allowed (%zu)"
msgstr "jsonb对象结对的数目超过了最大允许值(%zu)"
-#: utils/adt/jsonb_util.c:697
+#: utils/adt/jsonb_util.c:698
#, c-format
msgid "number of jsonb array elements exceeds the maximum allowed (%zu)"
msgstr "jsonb数组元素的数目超过了最大允许值(%zu)"
-#: utils/adt/jsonb_util.c:1525 utils/adt/jsonb_util.c:1545
+#: utils/adt/jsonb_util.c:1569 utils/adt/jsonb_util.c:1589
#, c-format
msgid "total size of jsonb array elements exceeds the maximum of %u bytes"
msgstr "jsonb数组的元素的总大小超过了最大值%u字节"
-#: utils/adt/jsonb_util.c:1606 utils/adt/jsonb_util.c:1641
-#: utils/adt/jsonb_util.c:1661
+#: utils/adt/jsonb_util.c:1650 utils/adt/jsonb_util.c:1685
+#: utils/adt/jsonb_util.c:1705
#, c-format
msgid "total size of jsonb object elements exceeds the maximum of %u bytes"
msgstr "jsonb对象元素的总大小不能超过最大 %u 字节"
-#: utils/adt/jsonfuncs.c:305 utils/adt/jsonfuncs.c:470
-#: utils/adt/jsonfuncs.c:2065 utils/adt/jsonfuncs.c:2506
-#: utils/adt/jsonfuncs.c:3012
+#: utils/adt/jsonfuncs.c:523 utils/adt/jsonfuncs.c:688
+#: utils/adt/jsonfuncs.c:2276 utils/adt/jsonfuncs.c:2716
+#: utils/adt/jsonfuncs.c:3473 utils/adt/jsonfuncs.c:3830
#, c-format
msgid "cannot call %s on a scalar"
msgstr "无法在标量上调用%s"
-#: utils/adt/jsonfuncs.c:310 utils/adt/jsonfuncs.c:457
-#: utils/adt/jsonfuncs.c:2495
+#: utils/adt/jsonfuncs.c:528 utils/adt/jsonfuncs.c:675
+#: utils/adt/jsonfuncs.c:2718 utils/adt/jsonfuncs.c:3462
#, c-format
msgid "cannot call %s on an array"
msgstr "无法在数组上调用%s"
-#: utils/adt/jsonfuncs.c:1373 utils/adt/jsonfuncs.c:1408
+#: utils/adt/jsonfuncs.c:1591 utils/adt/jsonfuncs.c:1626
#, c-format
msgid "cannot get array length of a scalar"
msgstr "无法得到一个标题的数组长度"
-#: utils/adt/jsonfuncs.c:1377 utils/adt/jsonfuncs.c:1396
+#: utils/adt/jsonfuncs.c:1595 utils/adt/jsonfuncs.c:1614
#, c-format
msgid "cannot get array length of a non-array"
msgstr "无法从一个非数组里得到数组的长度"
-#: utils/adt/jsonfuncs.c:1473
+#: utils/adt/jsonfuncs.c:1691
#, c-format
msgid "cannot call %s on a non-object"
msgstr "不能在非对象上调用 %s "
-#: utils/adt/jsonfuncs.c:1491 utils/adt/jsonfuncs.c:2178
-#: utils/adt/jsonfuncs.c:2715
+#: utils/adt/jsonfuncs.c:1709 utils/adt/jsonfuncs.c:3266
+#: utils/adt/jsonfuncs.c:3621
#, c-format
-msgid ""
-"function returning record called in context that cannot accept type record"
+msgid "function returning record called in context that cannot accept type record"
msgstr "返回值类型是记录的函数在不接受使用记录类型的环境中调用"
-#: utils/adt/jsonfuncs.c:1734
+#: utils/adt/jsonfuncs.c:1949
#, c-format
msgid "cannot deconstruct an array as an object"
msgstr "不能将一个数组析构为一个对象"
-#: utils/adt/jsonfuncs.c:1746
+#: utils/adt/jsonfuncs.c:1961
#, c-format
msgid "cannot deconstruct a scalar"
msgstr "无法析构一个标量"
-#: utils/adt/jsonfuncs.c:1792
+#: utils/adt/jsonfuncs.c:2007
#, c-format
msgid "cannot extract elements from a scalar"
msgstr "无法从标题值时提取元素"
-#: utils/adt/jsonfuncs.c:1796
+#: utils/adt/jsonfuncs.c:2011
#, c-format
msgid "cannot extract elements from an object"
msgstr "无法从一个对象里提取元素"
-#: utils/adt/jsonfuncs.c:2052 utils/adt/jsonfuncs.c:2811
+#: utils/adt/jsonfuncs.c:2263 utils/adt/jsonfuncs.c:3714
#, c-format
msgid "cannot call %s on a non-array"
msgstr "非数组上不能调用%s"
-#: utils/adt/jsonfuncs.c:2139 utils/adt/jsonfuncs.c:2691
+#: utils/adt/jsonfuncs.c:2333 utils/adt/jsonfuncs.c:2338
+#: utils/adt/jsonfuncs.c:2355 utils/adt/jsonfuncs.c:2361
+#, c-format
+msgid "expected JSON array"
+msgstr "应为JSON数组"
+
+#: utils/adt/jsonfuncs.c:2334
+#, c-format
+msgid "See the value of key \"%s\"."
+msgstr "查看键\"%s\"的值."
+
+#: utils/adt/jsonfuncs.c:2356
+#, c-format
+msgid "See the array element %s of key \"%s\"."
+msgstr "查看数组元素%s的键值\"%s\"."
+
+#: utils/adt/jsonfuncs.c:2362
+#, c-format
+msgid "See the array element %s."
+msgstr "查看数组元素%s."
+
+#: utils/adt/jsonfuncs.c:2397
+#, c-format
+msgid "malformed JSON array"
+msgstr "有缺陷的JSON数组"
+
+#: utils/adt/jsonfuncs.c:3250 utils/adt/jsonfuncs.c:3606
#, c-format
msgid "first argument of %s must be a row type"
msgstr "%s 的第一个参数必需是一个行类型"
-#: utils/adt/jsonfuncs.c:2180
+#: utils/adt/jsonfuncs.c:3268 utils/adt/jsonfuncs.c:3623
#, c-format
-msgid ""
-"Try calling the function in the FROM clause using a column definition list."
+msgid "Try calling the function in the FROM clause using a column definition list."
msgstr "试图在FROM子句时在,使用列定义列表调用该函数."
-#: utils/adt/jsonfuncs.c:2827 utils/adt/jsonfuncs.c:2994
+#: utils/adt/jsonfuncs.c:3731 utils/adt/jsonfuncs.c:3812
#, c-format
msgid "argument of %s must be an array of objects"
msgstr "%s 的参数必须是一个对象数组"
-#: utils/adt/jsonfuncs.c:2851
+#: utils/adt/jsonfuncs.c:3764
#, c-format
msgid "cannot call %s on an object"
msgstr "不能在一个对象上调用%s"
-#: utils/adt/jsonfuncs.c:3418 utils/adt/jsonfuncs.c:3471
+#: utils/adt/jsonfuncs.c:4241 utils/adt/jsonfuncs.c:4300
+#: utils/adt/jsonfuncs.c:4380
#, c-format
msgid "cannot delete from scalar"
msgstr "无法从标量删除"
-#: utils/adt/jsonfuncs.c:3476
+#: utils/adt/jsonfuncs.c:4385
#, c-format
-#| msgid "cannot delete from object using integer subscript"
msgid "cannot delete from object using integer index"
msgstr "不能使用整数索引从对象删除"
-#: utils/adt/jsonfuncs.c:3542 utils/adt/jsonfuncs.c:3634
+#: utils/adt/jsonfuncs.c:4451 utils/adt/jsonfuncs.c:4543
#, c-format
msgid "cannot set path in scalar"
msgstr "无法在标量中设置路径"
-#: utils/adt/jsonfuncs.c:3587
+#: utils/adt/jsonfuncs.c:4496
#, c-format
msgid "cannot delete path in scalar"
msgstr "无法在标量中删除路径"
# fe-connect.c:2558
-#: utils/adt/jsonfuncs.c:3757
+#: utils/adt/jsonfuncs.c:4666
#, c-format
msgid "invalid concatenation of jsonb objects"
msgstr "jsonb对象的无效串接"
-#: utils/adt/jsonfuncs.c:3791
+#: utils/adt/jsonfuncs.c:4700
#, c-format
msgid "path element at position %d is null"
msgstr "位置 %d 的路径元素为空"
-#: utils/adt/jsonfuncs.c:3877
+#: utils/adt/jsonfuncs.c:4786
#, c-format
-#| msgid "cannot reopen stdin\n"
msgid "cannot replace existing key"
msgstr "不能替换已经存在的键"
-#: utils/adt/jsonfuncs.c:3878
+#: utils/adt/jsonfuncs.c:4787
#, c-format
msgid "Try using the function jsonb_set to replace key value."
msgstr "尝试使用 jsonb_set 来替换键值。"
-#: utils/adt/jsonfuncs.c:3960
+#: utils/adt/jsonfuncs.c:4869
#, c-format
-#| msgid "plpy.prepare: type name at ordinal position %d is not a string"
msgid "path element at position %d is not an integer: \"%s\""
msgstr "位置 %d 的路径元素不是一个整数:\"%s\""
+#: utils/adt/jsonfuncs.c:4988
+#, c-format
+msgid "wrong flag type, only arrays and scalars are allowed"
+msgstr "错误的标志类型,只允许数组和标量"
+
+#: utils/adt/jsonfuncs.c:4995
+#, c-format
+msgid "flag array element is not a string"
+msgstr "标志数组元素不是字符串"
+
+#: utils/adt/jsonfuncs.c:4996 utils/adt/jsonfuncs.c:5018
+#, c-format
+msgid "Possible values are: \"string\", \"numeric\", \"boolean\", \"key\", and \"all\""
+msgstr "可能的值有:\"string\", \"numeric\", \"boolean\", \"key\", 和 \"all\""
+
+#: utils/adt/jsonfuncs.c:5016
+#, c-format
+msgid "wrong flag in flag array: \"%s\""
+msgstr "标志数组中的标志错误: \"%s\""
+
#: utils/adt/levenshtein.c:133
#, c-format
-#| msgid "argument exceeds the maximum length of %d bytes"
msgid "levenshtein argument exceeds maximum length of %d characters"
msgstr "levenshtein 参数超过了 %d 字符的最大长度"
-#: utils/adt/like.c:212 utils/adt/selfuncs.c:5329
+#: utils/adt/like.c:183 utils/adt/selfuncs.c:5806
#, c-format
msgid "could not determine which collation to use for ILIKE"
msgstr "无法确定ILIKE使用哪种排序规则"
msgid "LIKE pattern must not end with escape character"
msgstr "LIKE模式不能以转义字符结束"
-#: utils/adt/like_match.c:292 utils/adt/regexp.c:698
+#: utils/adt/like_match.c:292 utils/adt/regexp.c:702
#, c-format
msgid "invalid escape string"
msgstr "无效的逃逸字符串"
-#: utils/adt/like_match.c:293 utils/adt/regexp.c:699
+#: utils/adt/like_match.c:293 utils/adt/regexp.c:703
#, c-format
msgid "Escape string must be empty or one character."
msgstr "逃逸字符串必须为空或者一个字符."
-#: utils/adt/lockfuncs.c:545
+#: utils/adt/lockfuncs.c:664
#, c-format
msgid "cannot use advisory locks during a parallel operation"
msgstr "在并行操作期间无法使用咨询锁"
-#: utils/adt/mac.c:68
-#, c-format
-msgid "invalid input syntax for type macaddr: \"%s\""
-msgstr "无效的 macaddr 类型输入语法: \"%s\""
-
-#: utils/adt/mac.c:75
+#: utils/adt/mac.c:102
#, c-format
msgid "invalid octet value in \"macaddr\" value: \"%s\""
msgstr "在 \"macaddr\" 值中的无效八位值: \"%s\""
+#: utils/adt/mac8.c:563
+#, c-format
+msgid "macaddr8 data out of range to convert to macaddr"
+msgstr "macaddr8数据超出范围,无法转换为macaddr"
+
+#: utils/adt/mac8.c:564
+#, c-format
+msgid "Only addresses that have FF and FE as values in the 4th and 5th bytes from the left, for example xx:xx:xx:ff:fe:xx:xx:xx, are eligible to be converted from macaddr8 to macaddr."
+msgstr "只有在左边第4和第5个字节中具有FF和FE值的地址(例如,xx:xx:xx:ff:fe:xx:xx:xx)才有资格从macaddr8转换为macaddr."
+
#: utils/adt/misc.c:239
#, c-format
msgid "PID %d is not a PostgreSQL server process"
#: utils/adt/misc.c:295
#, c-format
-#| msgid "must be a member of the role whose query is being canceled"
-msgid ""
-"must be a member of the role whose query is being canceled or member of "
-"pg_signal_backend"
+msgid "must be a member of the role whose query is being canceled or member of pg_signal_backend"
msgstr "必须是其查询被取消的角色的一个成员或者 pg_signal_backend 的一个成员"
#: utils/adt/misc.c:314
#: utils/adt/misc.c:319
#, c-format
-#| msgid "must be a member of the role whose process is being terminated"
-msgid ""
-"must be a member of the role whose process is being terminated or member of "
-"pg_signal_backend"
+msgid "must be a member of the role whose process is being terminated or member of pg_signal_backend"
msgstr "必须是其进程被终止的角色的一个成员或者 pg_signal_backend 的一个成员"
#: utils/adt/misc.c:336
msgid "failed to send signal to postmaster: %m"
msgstr "无法发送信号到postmaster进程: %m"
+#: utils/adt/misc.c:355
+#, c-format
+msgid "must be superuser to rotate log files with adminpack 1.0"
+msgstr "必须是超级用户才能使用adminpack 1.0旋转日志文件"
+
#: utils/adt/misc.c:356
#, c-format
+msgid "Consider using pg_logfile_rotate(), which is part of core, instead."
+msgstr "考虑使用 pg_logfile_rotate(),它是核心的一部分,代替"
+
+#: utils/adt/misc.c:361 utils/adt/misc.c:381
+#, c-format
msgid "rotation not possible because log collection not active"
msgstr "日志切换无法进行,因为没有激活日志收集功能"
-#: utils/adt/misc.c:393
+#: utils/adt/misc.c:418
#, c-format
msgid "global tablespace never has databases"
msgstr "全局表空间没有数据库"
-#: utils/adt/misc.c:414
+#: utils/adt/misc.c:439
#, c-format
msgid "%u is not a tablespace OID"
msgstr "%u 不是一个表空间 OID"
-#: utils/adt/misc.c:611
+#: utils/adt/misc.c:626
msgid "unreserved"
msgstr "未保留"
-#: utils/adt/misc.c:615
+#: utils/adt/misc.c:630
msgid "unreserved (cannot be function or type name)"
msgstr "未保留(不能是函数或者类型名称)"
-#: utils/adt/misc.c:619
+#: utils/adt/misc.c:634
msgid "reserved (can be function or type name)"
msgstr "已保留(可以是函数或类型名称)"
-#: utils/adt/misc.c:623
+#: utils/adt/misc.c:638
msgid "reserved"
msgstr "已保留"
-#: utils/adt/misc.c:797 utils/adt/misc.c:811 utils/adt/misc.c:850
-#: utils/adt/misc.c:856 utils/adt/misc.c:862 utils/adt/misc.c:885
+#: utils/adt/misc.c:812 utils/adt/misc.c:826 utils/adt/misc.c:865
+#: utils/adt/misc.c:871 utils/adt/misc.c:877 utils/adt/misc.c:900
#, c-format
-#| msgid "invalid snapshot identifier: \"%s\""
msgid "string is not a valid identifier: \"%s\""
msgstr "字符串不是一个合法的标识符:\"%s\""
-#: utils/adt/misc.c:799
+#: utils/adt/misc.c:814
#, c-format
msgid "String has unclosed double quotes."
msgstr "字符串有未封闭的双引号。"
-#: utils/adt/misc.c:813
+#: utils/adt/misc.c:828
#, c-format
-#| msgid "Extension names must not be empty."
msgid "Quoted identifier must not be empty."
msgstr "被引用的标识符不能为空。"
-#: utils/adt/misc.c:852
+#: utils/adt/misc.c:867
#, c-format
-msgid "No valid identifier before \".\" symbol."
+msgid "No valid identifier before \".\"."
msgstr "\".\" 符号前没有合法的标识符。"
-#: utils/adt/misc.c:858
+#: utils/adt/misc.c:873
#, c-format
-msgid "No valid identifier after \".\" symbol."
+msgid "No valid identifier after \".\"."
msgstr "\".\" 符号后没有合法的标识符。"
-#: utils/adt/nabstime.c:136
+#: utils/adt/misc.c:934
+#, c-format
+msgid "log format \"%s\" is not supported"
+msgstr "不支持日志格式\"%s\""
+
+#: utils/adt/misc.c:935
+#, c-format
+msgid "The supported log formats are \"stderr\" and \"csvlog\"."
+msgstr "支持的日志格式为\"stderr\"和\"csvlog\"."
+
+#: utils/adt/nabstime.c:140
#, c-format
msgid "invalid time zone name: \"%s\""
msgstr "无效时区名字: \"%s\""
-#: utils/adt/nabstime.c:481 utils/adt/nabstime.c:554
+#: utils/adt/nabstime.c:485 utils/adt/nabstime.c:558
#, c-format
msgid "cannot convert abstime \"invalid\" to timestamp"
msgstr "无法把 abstime \"invalid\" 转换为 timestamp."
-#: utils/adt/nabstime.c:781
+#: utils/adt/nabstime.c:785
#, c-format
msgid "invalid status in external \"tinterval\" value"
msgstr "无效的外部 \"tinterval\" 值状态"
msgid "cannot convert reltime \"invalid\" to interval"
msgstr "无法把 reltime \"invalid\" 转换为 interval"
-#: utils/adt/nabstime.c:1550
-#, c-format
-msgid "invalid input syntax for type tinterval: \"%s\""
-msgstr "无效的 tinterval 类型输入语法: \"%s\""
-
#: utils/adt/network.c:69
#, c-format
msgid "invalid cidr value: \"%s\""
msgid "Value has bits set to right of mask."
msgstr "这个值带有的bit集合,在掩码的右边."
-#: utils/adt/network.c:111 utils/adt/network.c:607 utils/adt/network.c:632
-#: utils/adt/network.c:657
+#: utils/adt/network.c:111 utils/adt/network.c:592 utils/adt/network.c:617
+#: utils/adt/network.c:642
#, c-format
msgid "could not format inet value: %m"
msgstr "无法格式化 inet 值: %m"
msgid "invalid external \"cidr\" value"
msgstr "无效的外部 \"cidr\" 值"
-#: utils/adt/network.c:321 utils/adt/network.c:348
+#: utils/adt/network.c:295 utils/adt/network.c:318
#, c-format
msgid "invalid mask length: %d"
msgstr "无效掩码长度: %d"
-#: utils/adt/network.c:675
+#: utils/adt/network.c:660
#, c-format
msgid "could not format cidr value: %m"
msgstr "无法格式化cidr值: %m"
-#: utils/adt/network.c:917
+#: utils/adt/network.c:893
#, c-format
msgid "cannot merge addresses from different families"
msgstr "无法合并来自不同族的地址"
-#: utils/adt/network.c:1343
+#: utils/adt/network.c:1309
#, c-format
msgid "cannot AND inet values of different sizes"
msgstr "无法为不同大小的inet类型值进行与 (AND) 位运算"
-#: utils/adt/network.c:1375
+#: utils/adt/network.c:1341
#, c-format
msgid "cannot OR inet values of different sizes"
msgstr "无法为不同大小的inet类型值进行或 (OR) 运算"
-#: utils/adt/network.c:1436 utils/adt/network.c:1512
+#: utils/adt/network.c:1402 utils/adt/network.c:1478
#, c-format
msgid "result is out of range"
msgstr "结果超出范围"
-#: utils/adt/network.c:1477
+#: utils/adt/network.c:1443
#, c-format
msgid "cannot subtract inet values of different sizes"
msgstr "无法为不同大小的inet类型值进行减法运算"
-#: utils/adt/numeric.c:542 utils/adt/numeric.c:569 utils/adt/numeric.c:5394
-#: utils/adt/numeric.c:5417 utils/adt/numeric.c:5441 utils/adt/numeric.c:5448
-#, c-format
-msgid "invalid input syntax for type numeric: \"%s\""
-msgstr "无效的数字类型输入语法: \"%s\""
-
-#: utils/adt/numeric.c:759
-#, c-format
-msgid "invalid length in external \"numeric\" value"
-msgstr "无效的外部 \"numeric\" 值长度"
-
-#: utils/adt/numeric.c:772
+#: utils/adt/numeric.c:830
#, c-format
msgid "invalid sign in external \"numeric\" value"
msgstr "无效的外部 \"numeric\" 值符号"
-#: utils/adt/numeric.c:778
+#: utils/adt/numeric.c:836
#, c-format
msgid "invalid scale in external \"numeric\" value"
msgstr "外部\"numeric\"值中范围无效"
-#: utils/adt/numeric.c:787
+#: utils/adt/numeric.c:845
#, c-format
msgid "invalid digit in external \"numeric\" value"
msgstr "无效的外部 \"numeric\" 值位数"
-#: utils/adt/numeric.c:978 utils/adt/numeric.c:992
+#: utils/adt/numeric.c:1035 utils/adt/numeric.c:1049
#, c-format
msgid "NUMERIC precision %d must be between 1 and %d"
msgstr "NUMERIC %d 的精度必须在 1 和 %d 之间"
-#: utils/adt/numeric.c:983
+#: utils/adt/numeric.c:1040
#, c-format
msgid "NUMERIC scale %d must be between 0 and precision %d"
msgstr "NUMERIC 数值范围 %d 必须在 0 和精度 %d 之间"
# fe-exec.c:2055
-#: utils/adt/numeric.c:1001
+#: utils/adt/numeric.c:1058
#, c-format
msgid "invalid NUMERIC type modifier"
msgstr "无效的NUMERIC类型修改器"
-#: utils/adt/numeric.c:1333
+#: utils/adt/numeric.c:1390
#, c-format
msgid "start value cannot be NaN"
msgstr "开始值不能是NaN"
-#: utils/adt/numeric.c:1338
+#: utils/adt/numeric.c:1395
#, c-format
msgid "stop value cannot be NaN"
msgstr "停止值不能是NaN"
-#: utils/adt/numeric.c:1348
+#: utils/adt/numeric.c:1405
#, c-format
msgid "step size cannot be NaN"
msgstr "步长不能是NaN"
-#: utils/adt/numeric.c:2543 utils/adt/numeric.c:5894 utils/adt/numeric.c:7597
-#: utils/adt/numeric.c:8126 utils/adt/numeric.c:8199
+#: utils/adt/numeric.c:2736 utils/adt/numeric.c:5725 utils/adt/numeric.c:6170
+#: utils/adt/numeric.c:7878 utils/adt/numeric.c:8303 utils/adt/numeric.c:8417
+#: utils/adt/numeric.c:8490
#, c-format
msgid "value overflows numeric format"
msgstr "值溢出数字格式"
-#: utils/adt/numeric.c:2885
+#: utils/adt/numeric.c:3095
#, c-format
msgid "cannot convert NaN to integer"
msgstr "无法转化 NaN 为整数"
-#: utils/adt/numeric.c:2951
+#: utils/adt/numeric.c:3161
#, c-format
msgid "cannot convert NaN to bigint"
msgstr "无法转换 NaN 为 bigint"
-#: utils/adt/numeric.c:2996
+#: utils/adt/numeric.c:3206
#, c-format
msgid "cannot convert NaN to smallint"
msgstr "无法转换 NaN 为 smallint"
-#: utils/adt/numeric.c:5964
+#: utils/adt/numeric.c:3243 utils/adt/numeric.c:3314
+#, c-format
+msgid "cannot convert infinity to numeric"
+msgstr "无法转化无穷大为整数"
+
+#: utils/adt/numeric.c:6240
#, c-format
msgid "numeric field overflow"
msgstr "数字字段溢出"
-#: utils/adt/numeric.c:5965
+#: utils/adt/numeric.c:6241
#, c-format
-msgid ""
-"A field with precision %d, scale %d must round to an absolute value less "
-"than %s%d."
+msgid "A field with precision %d, scale %d must round to an absolute value less than %s%d."
msgstr "精度为%d,范围是%d的字段必须四舍五入到小于%s%d的绝对值."
-#: utils/adt/numeric.c:6236 utils/adt/numeric.c:6262
-#, c-format
-msgid "invalid input syntax for type double precision: \"%s\""
-msgstr "无效的双精度类型输入语法: \"%s\""
-
-#: utils/adt/numutils.c:75
-#, c-format
-msgid "value \"%s\" is out of range for type integer"
-msgstr "值 \"%s\" 超出整数类型范围"
-
-#: utils/adt/numutils.c:81
-#, c-format
-msgid "value \"%s\" is out of range for type smallint"
-msgstr "值 \"%s\" 超出 smallint 类型范围"
-
-#: utils/adt/numutils.c:87
+#: utils/adt/numutils.c:89
#, c-format
msgid "value \"%s\" is out of range for 8-bit integer"
msgstr "值 \"%s\" 超出 8 位整数范围"
-#: utils/adt/oid.c:43 utils/adt/oid.c:57 utils/adt/oid.c:63 utils/adt/oid.c:84
-#, c-format
-msgid "invalid input syntax for type oid: \"%s\""
-msgstr "无效的 oid 类型输入语法: \"%s\""
-
-#: utils/adt/oid.c:69 utils/adt/oid.c:107
-#, c-format
-msgid "value \"%s\" is out of range for type oid"
-msgstr "值 \"%s\" 超出类型 oid 范围"
-
-#: utils/adt/oid.c:287
+#: utils/adt/oid.c:290
#, c-format
msgid "invalid oidvector data"
msgstr "无效的oidvector数据"
-#: utils/adt/oracle_compat.c:895
+#: utils/adt/oracle_compat.c:896
#, c-format
msgid "requested character too large"
msgstr "所请求的字符太大"
-#: utils/adt/oracle_compat.c:945 utils/adt/oracle_compat.c:1007
+#: utils/adt/oracle_compat.c:946 utils/adt/oracle_compat.c:1008
#, c-format
msgid "requested character too large for encoding: %d"
msgstr "对于编码来说所要求的字符太大了: %d"
-#: utils/adt/oracle_compat.c:986
+#: utils/adt/oracle_compat.c:987
#, c-format
msgid "requested character not valid for encoding: %d"
msgstr "请求的字符对于编码:%d是无效的"
-#: utils/adt/oracle_compat.c:1000
+#: utils/adt/oracle_compat.c:1001
#, c-format
msgid "null character not permitted"
msgstr "不允许使用空字符"
-#: utils/adt/orderedsetaggs.c:425 utils/adt/orderedsetaggs.c:530
-#: utils/adt/orderedsetaggs.c:669
+#: utils/adt/orderedsetaggs.c:442 utils/adt/orderedsetaggs.c:546
+#: utils/adt/orderedsetaggs.c:684
#, c-format
msgid "percentile value %g is not between 0 and 1"
msgstr "百分比值 %g 不在0和1之间"
-#: utils/adt/pg_locale.c:917
-#, c-format
-msgid "Apply system library package updates."
-msgstr "应用系统库包更新。"
-
-#: utils/adt/pg_locale.c:1122
-#, c-format
-msgid "could not create locale \"%s\": %m"
-msgstr "无法创建本地化环境 \"%s\": %m"
-
-#: utils/adt/pg_locale.c:1125
-#, c-format
-msgid ""
-"The operating system could not find any locale data for the locale name \"%s"
-"\"."
-msgstr "操作系统无法找到本地化名 \"%s\"对应的任何本地化数据."
-
-#: utils/adt/pg_locale.c:1212
-#, c-format
-msgid ""
-"collations with different collate and ctype values are not supported on this "
-"platform"
-msgstr "在此平台上不支持带有不同collate和ctype值的排序规则"
-
-#: utils/adt/pg_locale.c:1227
-#, c-format
-msgid "nondefault collations are not supported on this platform"
-msgstr "在这个平台上不支持使用非缺省的排序规则"
-
-#: utils/adt/pg_locale.c:1398
-#, c-format
-msgid "invalid multibyte character for locale"
-msgstr "无效的多字节字符, 对于 locale"
-
-#: utils/adt/pg_locale.c:1399
-#, c-format
-msgid ""
-"The server's LC_CTYPE locale is probably incompatible with the database "
-"encoding."
-msgstr "服务器本地 LC_CTYPE 可能与数据库编码不兼容."
-
-#: utils/adt/pg_lsn.c:44 utils/adt/pg_lsn.c:49
-#, c-format
-msgid "invalid input syntax for type pg_lsn: \"%s\""
-msgstr "类型 pg_lsn: \"%s\"使用了无效的输入语法"
-
-#: utils/adt/pg_upgrade_support.c:40
-#, c-format
-msgid "function can only be called when server is in binary upgrade mode"
-msgstr "只有当服务器处于二进制升级模式时才能调用函数"
-
-#: utils/adt/pgstatfuncs.c:569
-#, c-format
-#| msgid "invalid locale name: \"%s\""
-msgid "invalid command name: \"%s\""
-msgstr "无效的命令名:\"%s\""
-
-#: utils/adt/pseudotypes.c:95
-#, c-format
-msgid "cannot accept a value of type any"
-msgstr "无法接受一个 any 类型值"
-
-#: utils/adt/pseudotypes.c:108
-#, c-format
-msgid "cannot display a value of type any"
-msgstr "无法显示一个 any 类型值"
-
-#: utils/adt/pseudotypes.c:122 utils/adt/pseudotypes.c:150
-#, c-format
-msgid "cannot accept a value of type anyarray"
-msgstr "无法接受一个 anyarray 类型值"
-
-#: utils/adt/pseudotypes.c:175
-#, c-format
-msgid "cannot accept a value of type anyenum"
-msgstr "无法接受一个anyenum类型值"
-
-#: utils/adt/pseudotypes.c:199
-#, c-format
-msgid "cannot accept a value of type anyrange"
-msgstr "无法接受类型为anyrange的值"
-
-#: utils/adt/pseudotypes.c:276
+#: utils/adt/pg_locale.c:1034
#, c-format
-msgid "cannot accept a value of type trigger"
-msgstr "无法接受一个 trigger 类型值"
+msgid "Apply system library package updates."
+msgstr "应用系统库包更新。"
-#: utils/adt/pseudotypes.c:289
+#: utils/adt/pg_locale.c:1249
#, c-format
-msgid "cannot display a value of type trigger"
-msgstr "无法显示一个 trigger 类型值"
+msgid "could not create locale \"%s\": %m"
+msgstr "无法创建本地化环境 \"%s\": %m"
-#: utils/adt/pseudotypes.c:303
+#: utils/adt/pg_locale.c:1252
#, c-format
-msgid "cannot accept a value of type event_trigger"
-msgstr "æ\97 æ³\95æ\8e¥å\8f\97ä¸\80个 äº\8b件触å\8f\91å\99¨ç\9a\84 ç±»å\9e\8bå\80¼"
+msgid "The operating system could not find any locale data for the locale name \"%s\"."
+msgstr "æ\93\8dä½\9cç³»ç»\9fæ\97 æ³\95æ\89¾å\88°æ\9c¬å\9c°å\8c\96å\90\8d \"%s\"对åº\94ç\9a\84ä»»ä½\95æ\9c¬å\9c°å\8c\96æ\95°æ\8d®."
-#: utils/adt/pseudotypes.c:316
+#: utils/adt/pg_locale.c:1353
#, c-format
-msgid "cannot display a value of type event_trigger"
-msgstr "无法显示一个 事件触发器的 类型值"
+msgid "collations with different collate and ctype values are not supported on this platform"
+msgstr "在此平台上不支持带有不同collate和ctype值的排序规则"
-#: utils/adt/pseudotypes.c:330
+#: utils/adt/pg_locale.c:1362
#, c-format
-msgid "cannot accept a value of type language_handler"
-msgstr "æ\97 æ³\95æ\8e¥å\8f\97ä¸\80个 language_handler ç±»å\9e\8bå\80¼"
+msgid "collation provider LIBC is not supported on this platform"
+msgstr "æ¤å¹³å\8f°ä¸\8dæ\94¯æ\8c\81æ\8e\92åº\8fè§\84å\88\99æ\8f\90ä¾\9bç¨\8båº\8fLIBC"
-#: utils/adt/pseudotypes.c:343
+#: utils/adt/pg_locale.c:1374
#, c-format
-msgid "cannot display a value of type language_handler"
-msgstr "无法显示一个 language_handler 类型值"
+msgid "collations with different collate and ctype values are not supported by ICU"
+msgstr "ICU不支持带有不同collate和ctype值的排序规则"
-#: utils/adt/pseudotypes.c:357
+#: utils/adt/pg_locale.c:1380 utils/adt/pg_locale.c:1468
#, c-format
-msgid "cannot accept a value of type fdw_handler"
-msgstr "æ\97 æ³\95æ\8e¥å\8f\97ä¸\80个 fdw_handler ç±»å\9e\8bå\80¼"
+msgid "could not open collator for locale \"%s\": %s"
+msgstr "æ\97 æ³\95æ\89\93å¼\80å\8cºå\9f\9f设置\"%s\"ç\9a\84æ\8e\92åº\8få\99¨: %s"
-#: utils/adt/pseudotypes.c:370
+# input.c:213
+#: utils/adt/pg_locale.c:1391
#, c-format
-msgid "cannot display a value of type fdw_handler"
-msgstr "无法显示一个 fdw_handler 类型值"
+msgid "ICU is not supported in this build"
+msgstr "这个版本的安装不支持使用ICU"
-#: utils/adt/pseudotypes.c:384
+#: utils/adt/pg_locale.c:1392
#, c-format
-#| msgid "cannot accept a value of type tsm_handler"
-msgid "cannot accept a value of type index_am_handler"
-msgstr "无法接受一个类型 index_am_handler 的值"
+msgid "You need to rebuild PostgreSQL using --with-icu."
+msgstr "您需要使用--with-icu选项重新生成PostgreSQL"
-#: utils/adt/pseudotypes.c:397
+#: utils/adt/pg_locale.c:1412
#, c-format
-#| msgid "cannot display a value of type tsm_handler"
-msgid "cannot display a value of type index_am_handler"
-msgstr "无法显示一个类型 index_am_handler 的值"
+msgid "collation \"%s\" has no actual version, but a version was specified"
+msgstr "排序规则\"%s\"没有实际版本,但指定了版本"
-#: utils/adt/pseudotypes.c:411
+#: utils/adt/pg_locale.c:1419
#, c-format
-msgid "cannot accept a value of type tsm_handler"
-msgstr "æ\97 æ³\95æ\8e¥å\8f\97ä¸\80个类å\9e\8btsm_handlerç\9a\84å\80¼"
+msgid "collation \"%s\" has version mismatch"
+msgstr "æ\8e\92åº\8fè§\84å\88\99\"%s\"ç\9a\84ç\89\88æ\9c¬ä¸\8då\8c¹é\85\8d"
-#: utils/adt/pseudotypes.c:424
+#: utils/adt/pg_locale.c:1421
#, c-format
-msgid "cannot display a value of type tsm_handler"
-msgstr "æ\97 æ³\95æ\98¾ç¤ºä¸\80个类å\9e\8btsm_handlerç\9a\84å\80¼"
+msgid "The collation in the database was created using version %s, but the operating system provides version %s."
+msgstr "æ\95°æ\8d®åº\93ä¸ç\9a\84æ\8e\92åº\8fè§\84å\88\99æ\98¯ä½¿ç\94¨ç\89\88æ\9c¬%så\88\9b建ç\9a\84ï¼\8cä½\86æ\93\8dä½\9cç³»ç»\9fæ\8f\90ä¾\9bç\89\88æ\9c¬%s."
-#: utils/adt/pseudotypes.c:438
+#: utils/adt/pg_locale.c:1424
#, c-format
-msgid "cannot accept a value of type internal"
-msgstr "无法接受一个 internal 类型值"
+msgid "Rebuild all objects affected by this collation and run ALTER COLLATION %s REFRESH VERSION, or build PostgreSQL with the right library version."
+msgstr "重新生成受此排序规则影响的所有对象,并运行ALTER COLLATION %s REFRESH VERSION,,或使用正确的库版本生成PostgreSQL."
-#: utils/adt/pseudotypes.c:451
+#: utils/adt/pg_locale.c:1508
#, c-format
-msgid "cannot display a value of type internal"
-msgstr "æ\97 æ³\95æ\98¾ç¤ºä¸\80个 internal ç±»å\9e\8bå\80¼"
+msgid "could not open ICU converter for encoding \"%s\": %s"
+msgstr "æ\97 æ³\95æ\89\93å¼\80ç¼\96ç \81\"%s\"ç\9a\84ICU转æ\8d¢å\99¨: %s"
-#: utils/adt/pseudotypes.c:465
+#: utils/adt/pg_locale.c:1539 utils/adt/pg_locale.c:1548
#, c-format
-msgid "cannot accept a value of type opaque"
-msgstr "无法接受一个 opaque 类型值"
+msgid "ucnv_toUChars failed: %s"
+msgstr "ucnv_toUChars调用失败: %s"
-#: utils/adt/pseudotypes.c:478
+#: utils/adt/pg_locale.c:1577 utils/adt/pg_locale.c:1586
#, c-format
-msgid "cannot display a value of type opaque"
-msgstr "无法显示一个 opaque 类型值"
+msgid "ucnv_fromUChars failed: %s"
+msgstr "ucnv_fromUChars调用失败: %s"
-#: utils/adt/pseudotypes.c:492
+#: utils/adt/pg_locale.c:1758
#, c-format
-msgid "cannot accept a value of type anyelement"
-msgstr "æ\97 æ³\95æ\8e¥å\8f\97ä¸\80个 anyelement ç±»å\9e\8bå\80¼"
+msgid "invalid multibyte character for locale"
+msgstr "æ\97 æ\95\88ç\9a\84å¤\9aå\97è\8a\82å\97符, 对äº\8e locale"
-#: utils/adt/pseudotypes.c:505
+#: utils/adt/pg_locale.c:1759
#, c-format
-msgid "cannot display a value of type anyelement"
-msgstr "æ\97 æ³\95æ\98¾ç¤ºä¸\80个 anyelement ç±»å\9e\8bå\80¼"
+msgid "The server's LC_CTYPE locale is probably incompatible with the database encoding."
+msgstr "æ\9c\8då\8a¡å\99¨æ\9c¬å\9c° LC_CTYPE å\8f¯è\83½ä¸\8eæ\95°æ\8d®åº\93ç¼\96ç \81ä¸\8då\85¼å®¹."
-#: utils/adt/pseudotypes.c:518
+#: utils/adt/pg_upgrade_support.c:29
#, c-format
-msgid "cannot accept a value of type anynonarray"
-msgstr "无法接受一个anynonarray类型值"
+msgid "function can only be called when server is in binary upgrade mode"
+msgstr "只有当服务器处于二进制升级模式时才能调用函数"
-#: utils/adt/pseudotypes.c:531
+#: utils/adt/pgstatfuncs.c:474
#, c-format
-msgid "cannot display a value of type anynonarray"
-msgstr "æ\97 æ³\95æ\98¾ç¤ºä¸\80个anynonarrayç±»å\9e\8bç\9a\84å\80¼"
+msgid "invalid command name: \"%s\""
+msgstr "æ\97 æ\95\88ç\9a\84å\91½ä»¤å\90\8dï¼\9a\"%s\""
-#: utils/adt/pseudotypes.c:544
+#: utils/adt/pseudotypes.c:247
#, c-format
msgid "cannot accept a value of a shell type"
msgstr "无法接受一个shell类型的值"
-#: utils/adt/pseudotypes.c:557
+#: utils/adt/pseudotypes.c:260
#, c-format
msgid "cannot display a value of a shell type"
msgstr "无法显示一个shell类型值"
-#: utils/adt/pseudotypes.c:579 utils/adt/pseudotypes.c:604
-#: utils/adt/pseudotypes.c:632 utils/adt/pseudotypes.c:660
-#, c-format
-msgid "cannot accept a value of type %s"
-msgstr "无法接受一个类型%s的值"
-
-#: utils/adt/pseudotypes.c:647 utils/adt/pseudotypes.c:673
+#: utils/adt/pseudotypes.c:350 utils/adt/pseudotypes.c:376
#, c-format
msgid "cannot output a value of type %s"
msgstr "无法输出一个类型%s的值"
+#: utils/adt/pseudotypes.c:403
+#, c-format
+msgid "cannot display a value of type %s"
+msgstr "无法显示类型为%s的值"
+
#: utils/adt/rangetypes.c:405
#, c-format
msgid "range constructor flags argument must not be null"
msgid "result of range union would not be contiguous"
msgstr "范围并的结果不能是连续的"
-#: utils/adt/rangetypes.c:1543
+#: utils/adt/rangetypes.c:1597
#, c-format
msgid "range lower bound must be less than or equal to range upper bound"
msgstr "范围下限必须小于或等于其上限"
-#: utils/adt/rangetypes.c:1926 utils/adt/rangetypes.c:1939
-#: utils/adt/rangetypes.c:1953
+#: utils/adt/rangetypes.c:1980 utils/adt/rangetypes.c:1993
+#: utils/adt/rangetypes.c:2007
#, c-format
msgid "invalid range bound flags"
msgstr "无效的范围边界标记"
-#: utils/adt/rangetypes.c:1927 utils/adt/rangetypes.c:1940
-#: utils/adt/rangetypes.c:1954
+#: utils/adt/rangetypes.c:1981 utils/adt/rangetypes.c:1994
+#: utils/adt/rangetypes.c:2008
#, c-format
msgid "Valid values are \"[]\", \"[)\", \"(]\", and \"()\"."
msgstr "有效值为\"[]\", \"[)\", \"(]\", 和 \"()\"."
-#: utils/adt/rangetypes.c:2019 utils/adt/rangetypes.c:2036
-#: utils/adt/rangetypes.c:2049 utils/adt/rangetypes.c:2067
-#: utils/adt/rangetypes.c:2078 utils/adt/rangetypes.c:2122
-#: utils/adt/rangetypes.c:2130
+#: utils/adt/rangetypes.c:2073 utils/adt/rangetypes.c:2090
+#: utils/adt/rangetypes.c:2103 utils/adt/rangetypes.c:2121
+#: utils/adt/rangetypes.c:2132 utils/adt/rangetypes.c:2176
+#: utils/adt/rangetypes.c:2184
#, c-format
msgid "malformed range literal: \"%s\""
msgstr "有缺陷的范围字串:\"%s\""
-#: utils/adt/rangetypes.c:2021
+#: utils/adt/rangetypes.c:2075
#, c-format
msgid "Junk after \"empty\" key word."
msgstr "\"empty\" 关键字后有Junk标识."
-#: utils/adt/rangetypes.c:2038
+#: utils/adt/rangetypes.c:2092
#, c-format
msgid "Missing left parenthesis or bracket."
msgstr "缺少一个左大括弧或左方括弧."
-#: utils/adt/rangetypes.c:2051
+#: utils/adt/rangetypes.c:2105
#, c-format
msgid "Missing comma after lower bound."
msgstr "下界后缺少逗号."
-#: utils/adt/rangetypes.c:2069
+#: utils/adt/rangetypes.c:2123
#, c-format
msgid "Too many commas."
msgstr "太多逗号."
-#: utils/adt/rangetypes.c:2080
+#: utils/adt/rangetypes.c:2134
#, c-format
msgid "Junk after right parenthesis or bracket."
msgstr "右大括号或右中括弧后的内容无用."
-#: utils/adt/regexp.c:285 utils/adt/regexp.c:1288 utils/adt/varlena.c:3829
+#: utils/adt/regexp.c:289 utils/adt/regexp.c:1424 utils/adt/varlena.c:4105
#, c-format
msgid "regular expression failed: %s"
msgstr "正则表达式失败: %s"
-#: utils/adt/regexp.c:422
+#: utils/adt/regexp.c:426
#, c-format
msgid "invalid regexp option: \"%c\""
msgstr "无效的正则表达式选项: \"%c\""
-#: utils/adt/regexp.c:948
+#: utils/adt/regexp.c:866
+#, c-format
+msgid "regexp_match does not support the global option"
+msgstr "regexp_match 不支持全局选项"
+
+#: utils/adt/regexp.c:867
+#, c-format
+msgid "Use the regexp_matches function instead."
+msgstr "改用regexp_matches函数"
+
+#: utils/adt/regexp.c:1049
#, c-format
-msgid "regexp_split does not support the global option"
-msgstr "regexp_split 不支持全局选项"
+msgid "too many regular expression matches"
+msgstr "匹配的正则表达式太多"
-#: utils/adt/regproc.c:128 utils/adt/regproc.c:148
+#: utils/adt/regexp.c:1244
+#, c-format
+msgid "regexp_split_to_table does not support the global option"
+msgstr "regexp_split_to_table不支持全局选项"
+
+#: utils/adt/regexp.c:1297
+#, c-format
+msgid "regexp_split_to_array does not support the global option"
+msgstr "regexp_split_to_array不支持全局选项"
+
+#: utils/adt/regproc.c:106
#, c-format
msgid "more than one function named \"%s\""
msgstr "多个函数名为 \"%s\""
-#: utils/adt/regproc.c:587 utils/adt/regproc.c:607
+#: utils/adt/regproc.c:524
#, c-format
msgid "more than one operator named %s"
msgstr "多个操作符名为 %s"
-#: utils/adt/regproc.c:779 utils/adt/regproc.c:820 utils/adt/regproc.c:2006
-#: utils/adt/ruleutils.c:8173 utils/adt/ruleutils.c:8298
+#: utils/adt/regproc.c:696 utils/adt/regproc.c:737 utils/adt/regproc.c:1865
+#: utils/adt/ruleutils.c:9134 utils/adt/ruleutils.c:9302
#, c-format
msgid "too many arguments"
msgstr "太多参数"
-#: utils/adt/regproc.c:780 utils/adt/regproc.c:821
+#: utils/adt/regproc.c:697 utils/adt/regproc.c:738
#, c-format
msgid "Provide two argument types for operator."
msgstr "为操作符提供两个参数类型."
-#: utils/adt/regproc.c:1594 utils/adt/regproc.c:1618 utils/adt/regproc.c:1715
-#: utils/adt/regproc.c:1739 utils/adt/regproc.c:1841 utils/adt/regproc.c:1846
-#: utils/adt/varlena.c:3084 utils/adt/varlena.c:3089
+#: utils/adt/regproc.c:1449 utils/adt/regproc.c:1473 utils/adt/regproc.c:1574
+#: utils/adt/regproc.c:1598 utils/adt/regproc.c:1700 utils/adt/regproc.c:1705
+#: utils/adt/varlena.c:3246 utils/adt/varlena.c:3251
#, c-format
msgid "invalid name syntax"
msgstr "无效的名字语法"
-#: utils/adt/regproc.c:1904
+#: utils/adt/regproc.c:1763
#, c-format
msgid "expected a left parenthesis"
msgstr "需要一个左括弧"
-#: utils/adt/regproc.c:1920
+#: utils/adt/regproc.c:1779
#, c-format
msgid "expected a right parenthesis"
msgstr "需要一个右括弧"
-#: utils/adt/regproc.c:1939
+#: utils/adt/regproc.c:1798
#, c-format
msgid "expected a type name"
msgstr "需要一个类型名字"
-#: utils/adt/regproc.c:1971
+#: utils/adt/regproc.c:1830
#, c-format
msgid "improper type name"
msgstr "不正确的类型名字"
-#: utils/adt/ri_triggers.c:345 utils/adt/ri_triggers.c:2492
-#: utils/adt/ri_triggers.c:3317
+#: utils/adt/ri_triggers.c:337 utils/adt/ri_triggers.c:2085
+#: utils/adt/ri_triggers.c:2767
#, c-format
msgid "insert or update on table \"%s\" violates foreign key constraint \"%s\""
msgstr "插入或更新表 \"%s\" 违反外键约束 \"%s\""
-#: utils/adt/ri_triggers.c:348 utils/adt/ri_triggers.c:2495
+#: utils/adt/ri_triggers.c:340 utils/adt/ri_triggers.c:2088
#, c-format
msgid "MATCH FULL does not allow mixing of null and nonnull key values."
msgstr "MATCH FULL 不允许空和非空键值的混合."
-#: utils/adt/ri_triggers.c:2734
+#: utils/adt/ri_triggers.c:2273
#, c-format
msgid "function \"%s\" must be fired for INSERT"
msgstr "函数 \"%s\"必须为INSERT操作触发"
-#: utils/adt/ri_triggers.c:2740
+#: utils/adt/ri_triggers.c:2279
#, c-format
msgid "function \"%s\" must be fired for UPDATE"
msgstr "函数 \"%s\"必须为UPDATE操作触发"
-#: utils/adt/ri_triggers.c:2746
+#: utils/adt/ri_triggers.c:2285
#, c-format
msgid "function \"%s\" must be fired for DELETE"
msgstr "函数 \"%s\"必须为DELETE操作触发"
-#: utils/adt/ri_triggers.c:2769
+#: utils/adt/ri_triggers.c:2308
#, c-format
msgid "no pg_constraint entry for trigger \"%s\" on table \"%s\""
msgstr "在pg_constraint上没有对于表 \"%2$s\" 上的触发器 \"%1$s\" 的项"
-#: utils/adt/ri_triggers.c:2771
+#: utils/adt/ri_triggers.c:2310
#, c-format
-msgid ""
-"Remove this referential integrity trigger and its mates, then do ALTER TABLE "
-"ADD CONSTRAINT."
-msgstr ""
-"删除这个参照完整性触发器和与它相关的对象,然后执行ALTER TABLE ADD CONSTRAINT"
-"操作."
+msgid "Remove this referential integrity trigger and its mates, then do ALTER TABLE ADD CONSTRAINT."
+msgstr "删除这个参照完整性触发器和与它相关的对象,然后执行ALTER TABLE ADD CONSTRAINT操作."
-#: utils/adt/ri_triggers.c:3227
+#: utils/adt/ri_triggers.c:2614
#, c-format
-msgid ""
-"referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave "
-"unexpected result"
-msgstr ""
-"从在\"%3$s\"的约束\"%2$s\"中在\"%1$s\"上执行的参照完整性查询得出非期待结果."
+msgid "referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave unexpected result"
+msgstr "从在\"%3$s\"的约束\"%2$s\"中在\"%1$s\"上执行的参照完整性查询得出非期待结果."
-#: utils/adt/ri_triggers.c:3231
+#: utils/adt/ri_triggers.c:2618
#, c-format
msgid "This is most likely due to a rule having rewritten the query."
msgstr "这很可能是由于规则正在重写查询"
-#: utils/adt/ri_triggers.c:3321
+#: utils/adt/ri_triggers.c:2771
#, c-format
msgid "Key (%s)=(%s) is not present in table \"%s\"."
msgstr "键值对(%s)=(%s)没有在表\"%s\"中出现."
-#: utils/adt/ri_triggers.c:3324
+#: utils/adt/ri_triggers.c:2774
#, c-format
msgid "Key is not present in table \"%s\"."
msgstr "表\"%s\"中没有出现键。"
-#: utils/adt/ri_triggers.c:3330
+#: utils/adt/ri_triggers.c:2780
#, c-format
-msgid ""
-"update or delete on table \"%s\" violates foreign key constraint \"%s\" on "
-"table \"%s\""
+msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\""
msgstr "在 \"%1$s\" 上的更新或删除操作违反了在 \"%3$s\" 上的外键约束 \"%2$s\""
-#: utils/adt/ri_triggers.c:3335
+#: utils/adt/ri_triggers.c:2785
#, c-format
msgid "Key (%s)=(%s) is still referenced from table \"%s\"."
msgstr "键值对(%s)=(%s)仍然是从表\"%s\"引用的."
-#: utils/adt/ri_triggers.c:3338
+#: utils/adt/ri_triggers.c:2788
#, c-format
msgid "Key is still referenced from table \"%s\"."
msgstr "表\"%s\"中仍然有对键的引用。"
-#: utils/adt/rowtypes.c:103 utils/adt/rowtypes.c:479
+#: utils/adt/rowtypes.c:103 utils/adt/rowtypes.c:481
#, c-format
msgid "input of anonymous composite types is not implemented"
msgstr "匿名复合类型输入仍未实现"
-#: utils/adt/rowtypes.c:155 utils/adt/rowtypes.c:183 utils/adt/rowtypes.c:206
-#: utils/adt/rowtypes.c:214 utils/adt/rowtypes.c:266 utils/adt/rowtypes.c:274
+#: utils/adt/rowtypes.c:155 utils/adt/rowtypes.c:184 utils/adt/rowtypes.c:207
+#: utils/adt/rowtypes.c:215 utils/adt/rowtypes.c:267 utils/adt/rowtypes.c:275
#, c-format
msgid "malformed record literal: \"%s\""
msgstr "有缺陷的记录常量: \"%s\""
msgid "Missing left parenthesis."
msgstr "缺少一个左括弧"
-#: utils/adt/rowtypes.c:184
+#: utils/adt/rowtypes.c:185
#, c-format
msgid "Too few columns."
msgstr "字段太少."
-#: utils/adt/rowtypes.c:267
+#: utils/adt/rowtypes.c:268
#, c-format
msgid "Too many columns."
msgstr "太多字段."
-#: utils/adt/rowtypes.c:275
+#: utils/adt/rowtypes.c:276
#, c-format
msgid "Junk after right parenthesis."
msgstr "右括号后的内容无用."
-#: utils/adt/rowtypes.c:528
+#: utils/adt/rowtypes.c:530
#, c-format
msgid "wrong number of columns: %d, expected %d"
msgstr "错误的字段个数: %d, 期望为 %d"
-#: utils/adt/rowtypes.c:555
+#: utils/adt/rowtypes.c:558
#, c-format
msgid "wrong data type: %u, expected %u"
msgstr "错误的数据类型: %u, 期望为 %u"
-#: utils/adt/rowtypes.c:616
+#: utils/adt/rowtypes.c:619
#, c-format
msgid "improper binary format in record column %d"
msgstr "在记录字段 %d 为不正确的二进制格式"
-#: utils/adt/rowtypes.c:902 utils/adt/rowtypes.c:1142
-#: utils/adt/rowtypes.c:1396 utils/adt/rowtypes.c:1673
+#: utils/adt/rowtypes.c:910 utils/adt/rowtypes.c:1154 utils/adt/rowtypes.c:1413
+#: utils/adt/rowtypes.c:1657
#, c-format
msgid "cannot compare dissimilar column types %s and %s at record column %d"
msgstr "在记录列%3$d上不能对不相似的列类型%1$s和%2$s进行比较"
-#: utils/adt/rowtypes.c:991 utils/adt/rowtypes.c:1213
-#: utils/adt/rowtypes.c:1529 utils/adt/rowtypes.c:1769
+#: utils/adt/rowtypes.c:999 utils/adt/rowtypes.c:1225 utils/adt/rowtypes.c:1508
+#: utils/adt/rowtypes.c:1731
#, c-format
msgid "cannot compare record types with different numbers of columns"
msgstr "无法比较不同元素类型的数组"
-#: utils/adt/ruleutils.c:4153
+#: utils/adt/ruleutils.c:4825
#, c-format
msgid "rule \"%s\" has unsupported event type %d"
msgstr "规则 \"%s\" 不支持事件类型 %d"
-#: utils/adt/selfuncs.c:5314
+#: utils/adt/selfuncs.c:5791
#, c-format
msgid "case insensitive matching not supported on type bytea"
msgstr "在类型bytea上不支持对不区分大小写的匹配"
-#: utils/adt/selfuncs.c:5417
+#: utils/adt/selfuncs.c:5893
#, c-format
msgid "regular-expression matching not supported on type bytea"
msgstr "在 bytea 类型上不支持正则表达式匹配"
-#: utils/adt/tid.c:71 utils/adt/tid.c:79 utils/adt/tid.c:87
-#, c-format
-msgid "invalid input syntax for type tid: \"%s\""
-msgstr "无效的 tid 类型输入语法: \"%s\""
-
-#: utils/adt/timestamp.c:99
+#: utils/adt/timestamp.c:107
#, c-format
msgid "TIMESTAMP(%d)%s precision must not be negative"
msgstr "TIMESTAMP(%d)%s 精确度不能为负数"
-#: utils/adt/timestamp.c:105
+#: utils/adt/timestamp.c:113
#, c-format
msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d"
msgstr "将TIMESTAMP(%d)%s减少到最大允许值,%d"
-#: utils/adt/timestamp.c:170 utils/adt/timestamp.c:445
+#: utils/adt/timestamp.c:176 utils/adt/timestamp.c:416
#, c-format
msgid "timestamp out of range: \"%s\""
msgstr "时间戳超出范围: \"%s\""
-#: utils/adt/timestamp.c:188 utils/adt/timestamp.c:463
-#: utils/adt/timestamp.c:993
+#: utils/adt/timestamp.c:194 utils/adt/timestamp.c:434
+#: utils/adt/timestamp.c:941
#, c-format
msgid "date/time value \"%s\" is no longer supported"
msgstr "日期/时间值 \"%s\" 不再被支持"
-#: utils/adt/timestamp.c:258 utils/adt/timestamp.c:754
-#, c-format
-msgid "timestamp cannot be NaN"
-msgstr "时间戳不能是NaN"
-
-#: utils/adt/timestamp.c:380
+#: utils/adt/timestamp.c:362
#, c-format
msgid "timestamp(%d) precision must be between %d and %d"
msgstr "timestamp(%d) 的精确度必需在 %d 到 %d 之间"
-#: utils/adt/timestamp.c:513
+#: utils/adt/timestamp.c:484
#, c-format
msgid "invalid input syntax for numeric time zone: \"%s\""
msgstr "数字时区使用了无效的输入语法: \"%s\""
-#: utils/adt/timestamp.c:515
+#: utils/adt/timestamp.c:486
#, c-format
msgid "Numeric time zones must have \"-\" or \"+\" as first character."
msgstr "数字时区必须是以\"-\" or \"+\" 作为第一个字符."
-#: utils/adt/timestamp.c:528
+#: utils/adt/timestamp.c:499
#, c-format
msgid "numeric time zone \"%s\" out of range"
msgstr "数字时区\"%s\"超出范围"
-#: utils/adt/timestamp.c:631 utils/adt/timestamp.c:641
-#: utils/adt/timestamp.c:653
+#: utils/adt/timestamp.c:601 utils/adt/timestamp.c:611
+#: utils/adt/timestamp.c:619
#, c-format
msgid "timestamp out of range: %d-%02d-%02d %d:%02d:%02g"
msgstr "时间戳超出范围:%d-%02d-%02d %d:%02d:%02g"
-#: utils/adt/timestamp.c:770 utils/adt/timestamp.c:776
-#: utils/adt/timestamp.c:791
+#: utils/adt/timestamp.c:720
+#, c-format
+msgid "timestamp cannot be NaN"
+msgstr "时间戳不能是NaN"
+
+#: utils/adt/timestamp.c:738 utils/adt/timestamp.c:750
#, c-format
-#| msgid "timestamp out of range: \"%s\""
msgid "timestamp out of range: \"%g\""
msgstr "时间戳超出范围: \"%g\""
-#: utils/adt/timestamp.c:987 utils/adt/timestamp.c:1558
-#: utils/adt/timestamp.c:2068 utils/adt/timestamp.c:3220
-#: utils/adt/timestamp.c:3225 utils/adt/timestamp.c:3230
-#: utils/adt/timestamp.c:3280 utils/adt/timestamp.c:3287
-#: utils/adt/timestamp.c:3294 utils/adt/timestamp.c:3314
-#: utils/adt/timestamp.c:3321 utils/adt/timestamp.c:3328
-#: utils/adt/timestamp.c:3358 utils/adt/timestamp.c:3366
-#: utils/adt/timestamp.c:3411 utils/adt/timestamp.c:3751
-#: utils/adt/timestamp.c:3880 utils/adt/timestamp.c:4271
+#: utils/adt/timestamp.c:935 utils/adt/timestamp.c:1505
+#: utils/adt/timestamp.c:1918 utils/adt/timestamp.c:3016
+#: utils/adt/timestamp.c:3021 utils/adt/timestamp.c:3026
+#: utils/adt/timestamp.c:3076 utils/adt/timestamp.c:3083
+#: utils/adt/timestamp.c:3090 utils/adt/timestamp.c:3110
+#: utils/adt/timestamp.c:3117 utils/adt/timestamp.c:3124
+#: utils/adt/timestamp.c:3154 utils/adt/timestamp.c:3162
+#: utils/adt/timestamp.c:3206 utils/adt/timestamp.c:3633
+#: utils/adt/timestamp.c:3758 utils/adt/timestamp.c:4143
#, c-format
msgid "interval out of range"
msgstr "interval 超出范围"
-#: utils/adt/timestamp.c:1128 utils/adt/timestamp.c:1161
+#: utils/adt/timestamp.c:1068 utils/adt/timestamp.c:1101
#, c-format
msgid "invalid INTERVAL type modifier"
msgstr "无效的INTERVAL类型修改器"
-#: utils/adt/timestamp.c:1144
+#: utils/adt/timestamp.c:1084
#, c-format
msgid "INTERVAL(%d) precision must not be negative"
msgstr "INTERVAL(%d) 的精确度不能为负数"
-#: utils/adt/timestamp.c:1150
+#: utils/adt/timestamp.c:1090
#, c-format
msgid "INTERVAL(%d) precision reduced to maximum allowed, %d"
msgstr "将INTERVAL(%d)减少到最大允许值,%d"
-#: utils/adt/timestamp.c:1502
+#: utils/adt/timestamp.c:1462
#, c-format
msgid "interval(%d) precision must be between %d and %d"
msgstr "interval(%d) 的精确度必需在 %d 到 %d 之间"
-#: utils/adt/timestamp.c:2797
+#: utils/adt/timestamp.c:2617
#, c-format
msgid "cannot subtract infinite timestamps"
msgstr "无法减去无限长的时间戳"
-#: utils/adt/timestamp.c:4006 utils/adt/timestamp.c:4531
-#: utils/adt/timestamp.c:4715 utils/adt/timestamp.c:4740
+#: utils/adt/timestamp.c:3886 utils/adt/timestamp.c:4403
+#: utils/adt/timestamp.c:4570 utils/adt/timestamp.c:4591
#, c-format
msgid "timestamp units \"%s\" not supported"
msgstr "不支持时间戳单位 \"%s\""
-#: utils/adt/timestamp.c:4020 utils/adt/timestamp.c:4485
-#: utils/adt/timestamp.c:4750
+#: utils/adt/timestamp.c:3900 utils/adt/timestamp.c:4357
+#: utils/adt/timestamp.c:4601
#, c-format
msgid "timestamp units \"%s\" not recognized"
msgstr "时间戳单位 \"%s\" 不被认可"
-#: utils/adt/timestamp.c:4160 utils/adt/timestamp.c:4526
-#: utils/adt/timestamp.c:4937 utils/adt/timestamp.c:4963
+#: utils/adt/timestamp.c:4032 utils/adt/timestamp.c:4398
+#: utils/adt/timestamp.c:4771 utils/adt/timestamp.c:4793
#, c-format
msgid "timestamp with time zone units \"%s\" not supported"
msgstr "不支持带时区的时间戳单位 \"%s\""
-#: utils/adt/timestamp.c:4177 utils/adt/timestamp.c:4480
-#: utils/adt/timestamp.c:4972
+#: utils/adt/timestamp.c:4049 utils/adt/timestamp.c:4352
+#: utils/adt/timestamp.c:4802
#, c-format
msgid "timestamp with time zone units \"%s\" not recognized"
msgstr "带时区的时间戳单位 \"%s\" 不被认可"
-#: utils/adt/timestamp.c:4258
+#: utils/adt/timestamp.c:4130
#, c-format
-msgid ""
-"interval units \"%s\" not supported because months usually have fractional "
-"weeks"
+msgid "interval units \"%s\" not supported because months usually have fractional weeks"
msgstr "时间间隔的单位 \"%s\"不支持使用,因为月以周来计算时,通常带有分数值"
-#: utils/adt/timestamp.c:4264 utils/adt/timestamp.c:5078
+#: utils/adt/timestamp.c:4136 utils/adt/timestamp.c:4896
#, c-format
msgid "interval units \"%s\" not supported"
msgstr "不支持 \"%s\" 的 interval 单位"
-#: utils/adt/timestamp.c:4280 utils/adt/timestamp.c:5105
+#: utils/adt/timestamp.c:4152 utils/adt/timestamp.c:4919
#, c-format
msgid "interval units \"%s\" not recognized"
msgstr "interval 单位 \"%s\" 不被认可"
msgid "suppress_redundant_updates_trigger: must be called for each row"
msgstr "suppress_redundant_updates_trigger: 必须为每条记录调用"
-#: utils/adt/tsgistidx.c:99
+#: utils/adt/tsgistidx.c:100
#, c-format
msgid "gtsvector_in not implemented"
msgstr "没有实现gtsvector_in"
-#: utils/adt/tsquery.c:166
+#: utils/adt/tsquery.c:200
#, c-format
msgid "distance in phrase operator should not be greater than %d"
msgstr "短语操作符中的距离不应该大于 %d"
-#: utils/adt/tsquery.c:254 utils/adt/tsquery.c:513
-#: utils/adt/tsvector_parser.c:141
+#: utils/adt/tsquery.c:310 utils/adt/tsquery.c:725
+#: utils/adt/tsvector_parser.c:133
#, c-format
msgid "syntax error in tsquery: \"%s\""
msgstr "在tsquery中的语法错误:\"%s\""
-#: utils/adt/tsquery.c:275
+#: utils/adt/tsquery.c:334
#, c-format
msgid "no operand in tsquery: \"%s\""
msgstr "在tsquery中没有操作数:\"%s\""
-#: utils/adt/tsquery.c:358
+#: utils/adt/tsquery.c:568
#, c-format
msgid "value is too big in tsquery: \"%s\""
msgstr "在tsquery中的值太大了:\"%s\""
-#: utils/adt/tsquery.c:363
+#: utils/adt/tsquery.c:573
#, c-format
msgid "operand is too long in tsquery: \"%s\""
msgstr "在tsquery中操作数太长了: \"%s\""
-#: utils/adt/tsquery.c:391
+#: utils/adt/tsquery.c:601
#, c-format
msgid "word is too long in tsquery: \"%s\""
msgstr "在tsquery中的词太长了:\"%s\" "
-#: utils/adt/tsquery.c:648
+#: utils/adt/tsquery.c:870
#, c-format
msgid "text-search query doesn't contain lexemes: \"%s\""
msgstr "文本搜索查询没有包含词汇单位:\"%s\""
-#: utils/adt/tsquery.c:659 utils/adt/tsquery_util.c:347
+#: utils/adt/tsquery.c:881 utils/adt/tsquery_util.c:375
#, c-format
msgid "tsquery is too large"
msgstr "tsquery查询太大"
-#: utils/adt/tsquery_cleanup.c:580
+#: utils/adt/tsquery_cleanup.c:407
#, c-format
-msgid ""
-"text-search query contains only stop words or doesn't contain lexemes, "
-"ignored"
+msgid "text-search query contains only stop words or doesn't contain lexemes, ignored"
msgstr "文本搜索查询只包含结束词或者不包含词汇单位, 被忽略"
-#: utils/adt/tsquery_op.c:122
+#: utils/adt/tsquery_op.c:123
#, c-format
msgid "distance in phrase operator should be non-negative and less than %d"
msgstr "短语操作符中的距离应该为非负并且小于 %d"
-#: utils/adt/tsquery_rewrite.c:292
+#: utils/adt/tsquery_rewrite.c:321
#, c-format
msgid "ts_rewrite query must return two tsquery columns"
msgstr "ts_rewrite查询必须返回两个tsquery字段的记录"
-#: utils/adt/tsrank.c:412
+#: utils/adt/tsrank.c:413
#, c-format
msgid "array of weight must be one-dimensional"
msgstr "权重数组必须为空或者一维数组"
-#: utils/adt/tsrank.c:417
+#: utils/adt/tsrank.c:418
#, c-format
msgid "array of weight is too short"
msgstr "权重数组太短了."
-#: utils/adt/tsrank.c:422
+#: utils/adt/tsrank.c:423
#, c-format
msgid "array of weight must not contain nulls"
msgstr "权重数组不能包含空值"
-#: utils/adt/tsrank.c:431 utils/adt/tsrank.c:862
+#: utils/adt/tsrank.c:432 utils/adt/tsrank.c:869
#, c-format
msgid "weight out of range"
msgstr "权重 超出范围"
-#: utils/adt/tsvector.c:213
+#: utils/adt/tsvector.c:214
#, c-format
msgid "word is too long (%ld bytes, max %ld bytes)"
msgstr "词太长了(%ld字节, 最大 %ld 字节)"
-#: utils/adt/tsvector.c:220
+#: utils/adt/tsvector.c:221
#, c-format
msgid "string is too long for tsvector (%ld bytes, max %ld bytes)"
msgstr "字符串对于tsvector来说太长了(当前 %ld字节, 最大允许值是%ld字节)"
-#: utils/adt/tsvector_op.c:317 utils/adt/tsvector_op.c:565
-#: utils/adt/tsvector_op.c:731
+#: utils/adt/tsvector_op.c:323 utils/adt/tsvector_op.c:610
+#: utils/adt/tsvector_op.c:778
#, c-format
-#| msgid "array must not contain nulls"
msgid "lexeme array may not contain nulls"
msgstr "词位数组不能包含空值"
-#: utils/adt/tsvector_op.c:789
+#: utils/adt/tsvector_op.c:853
#, c-format
-#| msgid "array must not contain nulls"
msgid "weight array may not contain nulls"
msgstr "权重数组不能包含空值"
-#: utils/adt/tsvector_op.c:1976
+#: utils/adt/tsvector_op.c:877
+#, c-format
+msgid "unrecognized weight: \"%c\""
+msgstr "无法识别的权重: \"%c\""
+
+#: utils/adt/tsvector_op.c:2314
#, c-format
msgid "ts_stat query must return one tsvector column"
msgstr "ts_stat查询必须在tsvector类型列上返回"
-#: utils/adt/tsvector_op.c:2158
+#: utils/adt/tsvector_op.c:2496
#, c-format
msgid "tsvector column \"%s\" does not exist"
msgstr "tsvector字段 \"%s\" 不存在"
-#: utils/adt/tsvector_op.c:2164
+#: utils/adt/tsvector_op.c:2503
#, c-format
msgid "column \"%s\" is not of tsvector type"
msgstr "列\"%s\"不属于tsvector类型"
-#: utils/adt/tsvector_op.c:2176
+#: utils/adt/tsvector_op.c:2515
#, c-format
msgid "configuration column \"%s\" does not exist"
msgstr "配置字段 \"%s\" 不存在"
-#: utils/adt/tsvector_op.c:2182
+#: utils/adt/tsvector_op.c:2521
#, c-format
msgid "column \"%s\" is not of regconfig type"
msgstr "列\"%s\"不属于regconfig类型"
-#: utils/adt/tsvector_op.c:2189
+#: utils/adt/tsvector_op.c:2528
#, c-format
msgid "configuration column \"%s\" must not be null"
msgstr "配置列\"%s\"不能为空"
-#: utils/adt/tsvector_op.c:2202
+#: utils/adt/tsvector_op.c:2541
#, c-format
msgid "text search configuration name \"%s\" must be schema-qualified"
msgstr "文本搜索配置名称\"%s\"必须是模式限定的。"
-#: utils/adt/tsvector_op.c:2227
+#: utils/adt/tsvector_op.c:2566
#, c-format
msgid "column \"%s\" is not of a character type"
msgstr "字段 \"%s\"不属于字符类型"
-#: utils/adt/tsvector_parser.c:142
+#: utils/adt/tsvector_parser.c:134
#, c-format
msgid "syntax error in tsvector: \"%s\""
msgstr "在tsvector中的语法错误:\"%s\" "
-#: utils/adt/tsvector_parser.c:207
+#: utils/adt/tsvector_parser.c:200
#, c-format
msgid "there is no escaped character: \"%s\""
msgstr "那里没有转义的字符: \"%s\""
-#: utils/adt/tsvector_parser.c:324
+#: utils/adt/tsvector_parser.c:318
#, c-format
msgid "wrong position info in tsvector: \"%s\""
msgstr "在tsvector中的错误位置信息: \"%s\""
-#: utils/adt/txid.c:339
+#: utils/adt/txid.c:135
#, c-format
-msgid "invalid input syntax for type txid_snapshot: \"%s\""
-msgstr "类型txid_snapshot的无效输入语法:\"%s\""
+msgid "transaction ID %s is in the future"
+msgstr "事务ID %s 在将来"
-#: utils/adt/txid.c:534
+#: utils/adt/txid.c:624
#, c-format
msgid "invalid external txid_snapshot data"
msgstr "无效的外部txid_snapshot数据"
-#: utils/adt/uuid.c:145
-#, c-format
-msgid "invalid input syntax for uuid: \"%s\""
-msgstr "uuid的输入语法无效:\"%s\" "
-
-#: utils/adt/varbit.c:57 utils/adt/varchar.c:50
+#: utils/adt/varbit.c:59 utils/adt/varchar.c:51
#, c-format
msgid "length for type %s must be at least 1"
msgstr "类型 %s 的长度至少为 1"
-#: utils/adt/varbit.c:62 utils/adt/varchar.c:54
+#: utils/adt/varbit.c:64 utils/adt/varchar.c:55
#, c-format
msgid "length for type %s cannot exceed %d"
msgstr "类型 %s 的长度不能超过 %d"
-#: utils/adt/varbit.c:163 utils/adt/varbit.c:475 utils/adt/varbit.c:973
+#: utils/adt/varbit.c:165 utils/adt/varbit.c:477 utils/adt/varbit.c:974
#, c-format
msgid "bit string length exceeds the maximum allowed (%d)"
msgstr "位字符串长度超过了最大允许值(%d)"
-#: utils/adt/varbit.c:177 utils/adt/varbit.c:320 utils/adt/varbit.c:377
+#: utils/adt/varbit.c:179 utils/adt/varbit.c:322 utils/adt/varbit.c:379
#, c-format
msgid "bit string length %d does not match type bit(%d)"
msgstr "bit字符串的长度(%d)与bit类型(%d)不匹配."
-#: utils/adt/varbit.c:199 utils/adt/varbit.c:511
+#: utils/adt/varbit.c:201 utils/adt/varbit.c:513
#, c-format
msgid "\"%c\" is not a valid binary digit"
msgstr "\"%c\" 不是一个有效的二进制数"
-#: utils/adt/varbit.c:224 utils/adt/varbit.c:536
+#: utils/adt/varbit.c:226 utils/adt/varbit.c:538
#, c-format
msgid "\"%c\" is not a valid hexadecimal digit"
msgstr "\"%c\" 不是一个有效的十六进制数"
-#: utils/adt/varbit.c:311 utils/adt/varbit.c:627
+#: utils/adt/varbit.c:313 utils/adt/varbit.c:629
#, c-format
msgid "invalid length in external bit string"
msgstr "无效的外部位串长度"
-#: utils/adt/varbit.c:489 utils/adt/varbit.c:636 utils/adt/varbit.c:731
+#: utils/adt/varbit.c:491 utils/adt/varbit.c:638 utils/adt/varbit.c:732
#, c-format
msgid "bit string too long for type bit varying(%d)"
msgstr "bit字符串对于可变bit类型(%d)来说太长了."
-#: utils/adt/varbit.c:1066 utils/adt/varbit.c:1168 utils/adt/varlena.c:842
-#: utils/adt/varlena.c:906 utils/adt/varlena.c:1050 utils/adt/varlena.c:2735
-#: utils/adt/varlena.c:2802
+#: utils/adt/varbit.c:1067 utils/adt/varbit.c:1169 utils/adt/varlena.c:841
+#: utils/adt/varlena.c:905 utils/adt/varlena.c:1049 utils/adt/varlena.c:2912
+#: utils/adt/varlena.c:2979
#, c-format
msgid "negative substring length not allowed"
msgstr "不允许子串长度为负数"
msgid "cannot XOR bit strings of different sizes"
msgstr "无法为不同大小的字符串进行异或 (XOR) 位运算"
-#: utils/adt/varbit.c:1793 utils/adt/varbit.c:1851
+#: utils/adt/varbit.c:1803 utils/adt/varbit.c:1861
#, c-format
msgid "bit index %d out of valid range (0..%d)"
msgstr "比特索引 %d 超出有效范围 (0..%d)"
-#: utils/adt/varbit.c:1802 utils/adt/varlena.c:3002
+#: utils/adt/varbit.c:1812 utils/adt/varlena.c:3170
#, c-format
msgid "new bit must be 0 or 1"
msgstr "新的位必须为 0 或 1"
-#: utils/adt/varchar.c:154 utils/adt/varchar.c:307
+#: utils/adt/varchar.c:155 utils/adt/varchar.c:308
#, c-format
msgid "value too long for type character(%d)"
msgstr "对于字符类型来说这个值太长了(%d)"
-#: utils/adt/varchar.c:469 utils/adt/varchar.c:623
+#: utils/adt/varchar.c:470 utils/adt/varchar.c:623
#, c-format
msgid "value too long for type character varying(%d)"
msgstr "对于可变字符类型来说,值太长了(%d)"
-#: utils/adt/varlena.c:1420 utils/adt/varlena.c:1825
+#: utils/adt/varlena.c:1415 utils/adt/varlena.c:1880
#, c-format
msgid "could not determine which collation to use for string comparison"
msgstr "无法确定字符串比较中使用哪种排序规则"
-#: utils/adt/varlena.c:1478 utils/adt/varlena.c:1491
+#: utils/adt/varlena.c:1472 utils/adt/varlena.c:1485
#, c-format
msgid "could not convert string to UTF-16: error code %lu"
msgstr "无法将字符串转换为UTF-16编码: 错误码 %lu"
-#: utils/adt/varlena.c:1506
+#: utils/adt/varlena.c:1500
#, c-format
msgid "could not compare Unicode strings: %m"
msgstr "无法比较Unicode类型字符串: %m"
-#: utils/adt/varlena.c:2880 utils/adt/varlena.c:2911 utils/adt/varlena.c:2947
-#: utils/adt/varlena.c:2990
+#: utils/adt/varlena.c:1555 utils/adt/varlena.c:2176
+#, c-format
+msgid "collation failed: %s"
+msgstr "排序规则失败: %s"
+
+#: utils/adt/varlena.c:2394
+#, c-format
+msgid "sort key generation failed: %s"
+msgstr "排序键生成失败: %s"
+
+#: utils/adt/varlena.c:3056 utils/adt/varlena.c:3087 utils/adt/varlena.c:3122
+#: utils/adt/varlena.c:3158
#, c-format
msgid "index %d out of valid range, 0..%d"
msgstr "索引 %d 超出有效范围, 0..%d"
-#: utils/adt/varlena.c:3925
+#: utils/adt/varlena.c:4201
#, c-format
msgid "field position must be greater than zero"
msgstr "字段的位置必须大于0"
-#: utils/adt/varlena.c:4804
+#: utils/adt/varlena.c:5080
#, c-format
-#| msgid "unterminated format specifier"
msgid "unterminated format() type specifier"
msgstr "未结束的 format() 类型说明符"
-#: utils/adt/varlena.c:4805 utils/adt/varlena.c:4939 utils/adt/varlena.c:5060
+#: utils/adt/varlena.c:5081 utils/adt/varlena.c:5215 utils/adt/varlena.c:5336
#, c-format
msgid "For a single \"%%\" use \"%%%%\"."
msgstr "对于单个 \"%%\" 应使用 \"%%%%\"。"
-#: utils/adt/varlena.c:4937 utils/adt/varlena.c:5058
+#: utils/adt/varlena.c:5213 utils/adt/varlena.c:5334
#, c-format
-#| msgid "unrecognized conversion type specifier \"%c\""
msgid "unrecognized format() type specifier \"%c\""
msgstr "未识别的 format() 类型说明符 \"%c\""
-#: utils/adt/varlena.c:4950
+#: utils/adt/varlena.c:5226 utils/adt/varlena.c:5283
#, c-format
-#| msgid "too few arguments for format"
msgid "too few arguments for format()"
msgstr "format() 的参数太少"
-#: utils/adt/varlena.c:5007
-#, c-format
-msgid "too few arguments for format"
-msgstr "格式化的参数太少"
-
-#: utils/adt/varlena.c:5102 utils/adt/varlena.c:5285
+#: utils/adt/varlena.c:5379 utils/adt/varlena.c:5561
#, c-format
msgid "number is out of range"
msgstr "数字超出范围"
-#: utils/adt/varlena.c:5166 utils/adt/varlena.c:5194
+#: utils/adt/varlena.c:5442 utils/adt/varlena.c:5470
#, c-format
msgid "format specifies argument 0, but arguments are numbered from 1"
msgstr "格式指定了参数 0, 但参数值序号从 1开始记起"
-#: utils/adt/varlena.c:5187
+#: utils/adt/varlena.c:5463
#, c-format
msgid "width argument position must be ended by \"$\""
msgstr "width参数位置必须以\"$\"结束"
-#: utils/adt/varlena.c:5232
+#: utils/adt/varlena.c:5508
#, c-format
msgid "null values cannot be formatted as an SQL identifier"
msgstr "null值不能格式化为SQL标识符"
msgid "argument of nth_value must be greater than zero"
msgstr "nth_value的参数必须大于零"
-#: utils/adt/xml.c:171
+#: utils/adt/xml.c:220
#, c-format
msgid "unsupported XML feature"
msgstr "不支持的XML特性"
-#: utils/adt/xml.c:172
+#: utils/adt/xml.c:221
#, c-format
msgid "This functionality requires the server to be built with libxml support."
msgstr "这个功能是需要在创建服务器时带有对libxml的支持才能实现 "
-#: utils/adt/xml.c:173
+#: utils/adt/xml.c:222
#, c-format
msgid "You need to rebuild PostgreSQL using --with-libxml."
msgstr "您需要使用--with-libxml选项重新生成PostgreSQL"
-#: utils/adt/xml.c:192 utils/mb/mbutils.c:523
+#: utils/adt/xml.c:241 utils/mb/mbutils.c:512
#, c-format
msgid "invalid encoding name \"%s\""
msgstr "无效的编码名称 \"%s\""
# command.c:122
-#: utils/adt/xml.c:435 utils/adt/xml.c:440
+#: utils/adt/xml.c:484 utils/adt/xml.c:489
#, c-format
msgid "invalid XML comment"
msgstr "无效的XML注释"
-#: utils/adt/xml.c:569
+#: utils/adt/xml.c:618
#, c-format
msgid "not an XML document"
msgstr "不是一个XML文档"
-#: utils/adt/xml.c:728 utils/adt/xml.c:751
+#: utils/adt/xml.c:777 utils/adt/xml.c:800
#, c-format
msgid "invalid XML processing instruction"
msgstr "无效的XML处理命令"
-#: utils/adt/xml.c:729
+#: utils/adt/xml.c:778
#, c-format
msgid "XML processing instruction target name cannot be \"%s\"."
msgstr "XML处理命令目标名称不能是\"%s\"."
-#: utils/adt/xml.c:752
+#: utils/adt/xml.c:801
#, c-format
msgid "XML processing instruction cannot contain \"?>\"."
msgstr "XML处理命令不能包含\"?>\"."
-#: utils/adt/xml.c:831
+#: utils/adt/xml.c:880
#, c-format
msgid "xmlvalidate is not implemented"
msgstr "没有实现xmlvalidate"
-#: utils/adt/xml.c:910
+#: utils/adt/xml.c:959
#, c-format
msgid "could not initialize XML library"
msgstr "无法初始化XML库"
-#: utils/adt/xml.c:911
+#: utils/adt/xml.c:960
#, c-format
-msgid ""
-"libxml2 has incompatible char type: sizeof(char)=%u, sizeof(xmlChar)=%u."
+msgid "libxml2 has incompatible char type: sizeof(char)=%u, sizeof(xmlChar)=%u."
msgstr "libxml2具有不兼容的字符类型: sizeof(char)=%u, sizeof(xmlChar)=%u. "
-#: utils/adt/xml.c:997
+#: utils/adt/xml.c:1046
#, c-format
msgid "could not set up XML error handler"
msgstr "无法设置XML错误处理函数"
-#: utils/adt/xml.c:998
+#: utils/adt/xml.c:1047
#, c-format
-msgid ""
-"This probably indicates that the version of libxml2 being used is not "
-"compatible with the libxml2 header files that PostgreSQL was built with."
-msgstr ""
-"这可能意味着正使用的libxml2版本与PostgreSQL编译 时使用的libxml2头文件不兼容"
+msgid "This probably indicates that the version of libxml2 being used is not compatible with the libxml2 header files that PostgreSQL was built with."
+msgstr "这可能意味着正使用的libxml2版本与PostgreSQL编译 时使用的libxml2头文件不兼容"
-#: utils/adt/xml.c:1737
+#: utils/adt/xml.c:1800
msgid "Invalid character value."
msgstr "无效的字符值"
-#: utils/adt/xml.c:1740
+#: utils/adt/xml.c:1803
msgid "Space required."
msgstr "要求空格"
-#: utils/adt/xml.c:1743
+#: utils/adt/xml.c:1806
msgid "standalone accepts only 'yes' or 'no'."
msgstr "单机只接受'yes'或'no'."
-#: utils/adt/xml.c:1746
+#: utils/adt/xml.c:1809
msgid "Malformed declaration: missing version."
msgstr "有缺陷的声明: 丢失版本."
-#: utils/adt/xml.c:1749
+#: utils/adt/xml.c:1812
msgid "Missing encoding in text declaration."
msgstr "在文本声明中丢失编码"
-#: utils/adt/xml.c:1752
+#: utils/adt/xml.c:1815
msgid "Parsing XML declaration: '?>' expected."
msgstr "正在解析XML声明: 期望'?>' "
-#: utils/adt/xml.c:1755
+#: utils/adt/xml.c:1818
#, c-format
msgid "Unrecognized libxml error code: %d."
msgstr "未知的libxml错误码: %d"
-#: utils/adt/xml.c:2030
+#: utils/adt/xml.c:2093
#, c-format
msgid "XML does not support infinite date values."
msgstr "XML不支持无限日期值"
-#: utils/adt/xml.c:2052 utils/adt/xml.c:2079
+#: utils/adt/xml.c:2115 utils/adt/xml.c:2142
#, c-format
msgid "XML does not support infinite timestamp values."
msgstr "XML不支持无限时间戳值"
-#: utils/adt/xml.c:2470
+#: utils/adt/xml.c:2554
#, c-format
msgid "invalid query"
msgstr "无效的查询"
-#: utils/adt/xml.c:3795
+#: utils/adt/xml.c:3877
#, c-format
msgid "invalid array for XML namespace mapping"
msgstr "对于XML命名空间映射的无效数组"
-#: utils/adt/xml.c:3796
+#: utils/adt/xml.c:3878
#, c-format
-msgid ""
-"The array must be two-dimensional with length of the second axis equal to 2."
+msgid "The array must be two-dimensional with length of the second axis equal to 2."
msgstr "数组必须是第二个坐标轴等于2的两维数组"
-#: utils/adt/xml.c:3820
+#: utils/adt/xml.c:3902
#, c-format
msgid "empty XPath expression"
msgstr "空的XPath表达式"
-#: utils/adt/xml.c:3869
+#: utils/adt/xml.c:3954
#, c-format
msgid "neither namespace name nor URI may be null"
msgstr "URI或者命名空间名称不可为空."
# fe-misc.c:702
-#: utils/adt/xml.c:3876
+#: utils/adt/xml.c:3961
#, c-format
msgid "could not register XML namespace with name \"%s\" and URI \"%s\""
msgstr "无法以名称\"%s\"和URI\"%s\"来注册XML命名空间"
-#: utils/cache/lsyscache.c:2580 utils/cache/lsyscache.c:2613
-#: utils/cache/lsyscache.c:2646 utils/cache/lsyscache.c:2679
+#: utils/adt/xml.c:4312
+#, c-format
+msgid "DEFAULT namespace is not supported"
+msgstr "不支持默认命名空间"
+
+#: utils/adt/xml.c:4341
+#, c-format
+msgid "row path filter must not be empty string"
+msgstr "行路径筛选器不能为空字符串"
+
+#: utils/adt/xml.c:4372
+#, c-format
+msgid "column path filter must not be empty string"
+msgstr "列路径筛选器不能为空字符串"
+
+#: utils/adt/xml.c:4558
+#, c-format
+msgid "more than one value returned by column XPath expression"
+msgstr "列XPath表达式返回了多个值"
+
+#: utils/cache/lsyscache.c:2654 utils/cache/lsyscache.c:2687
+#: utils/cache/lsyscache.c:2720 utils/cache/lsyscache.c:2753
#, c-format
msgid "type %s is only a shell"
msgstr "类型 %s 只是一个 shell"
-#: utils/cache/lsyscache.c:2585
+#: utils/cache/lsyscache.c:2659
#, c-format
msgid "no input function available for type %s"
msgstr "没有有效的 %s 类型输入函数"
-#: utils/cache/lsyscache.c:2618
+#: utils/cache/lsyscache.c:2692
#, c-format
msgid "no output function available for type %s"
msgstr "没有有效的 %s 类型输出函数"
-#: utils/cache/plancache.c:745
+#: utils/cache/partcache.c:202
+#, c-format
+msgid "operator class \"%s\" of access method %s is missing support function %d for type %s"
+msgstr "访问方法%2$s的运算符类\"%1$s\"缺少类型%4$s的支持函数%3$d"
+
+#: utils/cache/plancache.c:723
#, c-format
msgid "cached plan must not change result type"
msgstr "已缓冲的计划不能改变结果类型"
-#: utils/cache/relcache.c:5135
+#: utils/cache/relcache.c:5800
#, c-format
msgid "could not create relation-cache initialization file \"%s\": %m"
msgstr "无法创建 relation-cache 初始化文件 \"%s\": %m"
-#: utils/cache/relcache.c:5137
+#: utils/cache/relcache.c:5802
#, c-format
msgid "Continuing anyway, but there's something wrong."
msgstr "仍继续, 但肯定有些错误存在."
-#: utils/cache/relcache.c:5365
+#: utils/cache/relcache.c:6156
#, c-format
msgid "could not remove cache file \"%s\": %m"
msgstr "无法删除缓存文件 \"%s\": %m"
-#: utils/cache/relmapper.c:508
+#: utils/cache/relmapper.c:513
#, c-format
msgid "cannot PREPARE a transaction that modified relation mapping"
msgstr "不支持对修改关系映射的事务进行PREPARE操作"
-#: utils/cache/relmapper.c:651 utils/cache/relmapper.c:751
+#: utils/cache/relmapper.c:655 utils/cache/relmapper.c:755
#, c-format
msgid "could not open relation mapping file \"%s\": %m"
msgstr "无法打开关系映射文件 \"%s\": %m"
-#: utils/cache/relmapper.c:664
+#: utils/cache/relmapper.c:669
#, c-format
msgid "could not read relation mapping file \"%s\": %m"
msgstr "无法读取关系映射文件 \"%s\": %m"
-#: utils/cache/relmapper.c:674
+#: utils/cache/relmapper.c:680
#, c-format
msgid "relation mapping file \"%s\" contains invalid data"
msgstr "在关系映射文件\"%s\"中包含无效的数据"
-#: utils/cache/relmapper.c:684
+#: utils/cache/relmapper.c:690
#, c-format
msgid "relation mapping file \"%s\" contains incorrect checksum"
msgstr "在关系映射文件\"%s\"中包含不正确的检验和"
-#: utils/cache/relmapper.c:784
+#: utils/cache/relmapper.c:789
#, c-format
msgid "could not write to relation mapping file \"%s\": %m"
msgstr "无法对关系映射文件 \"%s\" 进行写操作: %m"
-#: utils/cache/relmapper.c:797
+#: utils/cache/relmapper.c:804
#, c-format
msgid "could not fsync relation mapping file \"%s\": %m"
msgstr "无法将关系映射文件\"%s\"的内容刷新到磁盘: %m"
-#: utils/cache/relmapper.c:803
+#: utils/cache/relmapper.c:811
#, c-format
msgid "could not close relation mapping file \"%s\": %m"
msgstr "无法关闭关系映射文件\"%s\": %m"
-#: utils/cache/typcache.c:1211
-#, c-format
-msgid "type %s is not composite"
-msgstr "类型 %s 不是复合类型"
-
-#: utils/cache/typcache.c:1225
+#: utils/cache/typcache.c:1623 utils/fmgr/funcapi.c:435
#, c-format
msgid "record type has not been registered"
msgstr "记录类型没有注册"
msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d)\n"
msgstr "TRAP: %s(\"%s\", 文件: \"%s\", 行数: %d)\n"
-#: utils/error/elog.c:322 utils/error/elog.c:1306
+#: utils/error/elog.c:322 utils/error/elog.c:1304
#, c-format
msgid "error occurred at %s:%d before error message processing is available\n"
msgstr "能得到错误消息处理之前, 错误出现在%s:%d\n"
-#: utils/error/elog.c:1880
+#: utils/error/elog.c:1882
#, c-format
msgid "could not reopen file \"%s\" as stderr: %m"
msgstr "无法作为标准错误重新打开文件 \"%s\": %m"
-#: utils/error/elog.c:1893
+#: utils/error/elog.c:1895
#, c-format
msgid "could not reopen file \"%s\" as stdout: %m"
msgstr "无法作为标准输出重新打开文件 \"%s\": %m"
-#: utils/error/elog.c:2380 utils/error/elog.c:2397 utils/error/elog.c:2413
+#: utils/error/elog.c:2387 utils/error/elog.c:2404 utils/error/elog.c:2420
msgid "[unknown]"
msgstr "[未知]"
-#: utils/error/elog.c:2872 utils/error/elog.c:3171 utils/error/elog.c:3279
+#: utils/error/elog.c:2880 utils/error/elog.c:3183 utils/error/elog.c:3291
msgid "missing error text"
msgstr "缺少错误信息"
-#: utils/error/elog.c:2875 utils/error/elog.c:2878 utils/error/elog.c:3282
-#: utils/error/elog.c:3285
+#: utils/error/elog.c:2883 utils/error/elog.c:2886 utils/error/elog.c:3294
+#: utils/error/elog.c:3297
#, c-format
msgid " at character %d"
msgstr " 第 %d 个字符处"
-#: utils/error/elog.c:2888 utils/error/elog.c:2895
+#: utils/error/elog.c:2896 utils/error/elog.c:2903
msgid "DETAIL: "
msgstr "详细信息: "
-#: utils/error/elog.c:2902
+#: utils/error/elog.c:2910
msgid "HINT: "
msgstr "提示: "
-#: utils/error/elog.c:2909
+#: utils/error/elog.c:2917
msgid "QUERY: "
msgstr "查询: "
-#: utils/error/elog.c:2916
+#: utils/error/elog.c:2924
msgid "CONTEXT: "
msgstr "上下文: "
-#: utils/error/elog.c:2926
+#: utils/error/elog.c:2934
#, c-format
msgid "LOCATION: %s, %s:%d\n"
msgstr "位置: %s, %s:%d\n"
-#: utils/error/elog.c:2933
+#: utils/error/elog.c:2941
#, c-format
msgid "LOCATION: %s:%d\n"
msgstr "位置: %s:%d\n"
-#: utils/error/elog.c:2947
+#: utils/error/elog.c:2955
msgid "STATEMENT: "
msgstr "语句: "
#. translator: This string will be truncated at 47
#. characters expanded.
-#: utils/error/elog.c:3400
+#: utils/error/elog.c:3412
#, c-format
msgid "operating system error %d"
msgstr "操作系统错误 %d"
-#: utils/error/elog.c:3595
+#: utils/error/elog.c:3610
msgid "DEBUG"
msgstr "调试"
-#: utils/error/elog.c:3599
+#: utils/error/elog.c:3614
msgid "LOG"
msgstr "日志"
-#: utils/error/elog.c:3602
+#: utils/error/elog.c:3617
msgid "INFO"
msgstr "信息"
-#: utils/error/elog.c:3605
+#: utils/error/elog.c:3620
msgid "NOTICE"
msgstr "注意"
-#: utils/error/elog.c:3608
+#: utils/error/elog.c:3623
msgid "WARNING"
msgstr "警告"
-#: utils/error/elog.c:3611
+#: utils/error/elog.c:3626
msgid "ERROR"
msgstr "错误"
-#: utils/error/elog.c:3614
+#: utils/error/elog.c:3629
msgid "FATAL"
msgstr "致命错误"
-#: utils/error/elog.c:3617
+#: utils/error/elog.c:3632
msgid "PANIC"
msgstr "比致命错误还过分的错误"
-#: utils/fmgr/dfmgr.c:117
+#: utils/fmgr/dfmgr.c:121
#, c-format
msgid "could not find function \"%s\" in file \"%s\""
msgstr "在文件 \"%2$s\" 中无法找到函数 \"%1$s\""
-#: utils/fmgr/dfmgr.c:196 utils/fmgr/dfmgr.c:405 utils/fmgr/dfmgr.c:453
-#, c-format
-msgid "could not access file \"%s\": %m"
-msgstr "无法访问文件 \"%s\": %m"
-
-#: utils/fmgr/dfmgr.c:234
+#: utils/fmgr/dfmgr.c:239
#, c-format
msgid "could not load library \"%s\": %s"
msgstr "无法加载库 \"%s\": %s"
-#: utils/fmgr/dfmgr.c:266
+#: utils/fmgr/dfmgr.c:271
#, c-format
msgid "incompatible library \"%s\": missing magic block"
msgstr "库\"%s\"不兼容:丢失魔法块"
-#: utils/fmgr/dfmgr.c:268
+#: utils/fmgr/dfmgr.c:273
#, c-format
msgid "Extension libraries are required to use the PG_MODULE_MAGIC macro."
msgstr "需要扩展库来使用宏PG_MODULE_MAGIC。"
-#: utils/fmgr/dfmgr.c:304
+#: utils/fmgr/dfmgr.c:319
#, c-format
msgid "incompatible library \"%s\": version mismatch"
msgstr "库 \"%s\"不兼容:版本不匹配"
-#: utils/fmgr/dfmgr.c:306
+#: utils/fmgr/dfmgr.c:321
#, c-format
-msgid "Server is version %d.%d, library is version %d.%d."
-msgstr "服务器版本是%d.%d,库的版本是%d.%d."
+msgid "Server is version %d, library is version %s."
+msgstr "服务器版本是%d,库的版本是%s."
-#: utils/fmgr/dfmgr.c:325
+#: utils/fmgr/dfmgr.c:338
#, c-format
msgid "Server has FUNC_MAX_ARGS = %d, library has %d."
msgstr "服务器有FUNC_MAX_ARGS = %d, 库有%d"
-#: utils/fmgr/dfmgr.c:334
+#: utils/fmgr/dfmgr.c:347
#, c-format
msgid "Server has INDEX_MAX_KEYS = %d, library has %d."
msgstr "服务器有INDEX_MAX_KEYS = %d, 库有%d"
-#: utils/fmgr/dfmgr.c:343
+#: utils/fmgr/dfmgr.c:356
#, c-format
msgid "Server has NAMEDATALEN = %d, library has %d."
msgstr "服务器有NAMEDATALEN = %d, 库有%d"
-#: utils/fmgr/dfmgr.c:352
+#: utils/fmgr/dfmgr.c:365
#, c-format
msgid "Server has FLOAT4PASSBYVAL = %s, library has %s."
msgstr "服务器有FLOAT4PASSBYVAL = %s, 库有%s."
-#: utils/fmgr/dfmgr.c:361
+#: utils/fmgr/dfmgr.c:374
#, c-format
msgid "Server has FLOAT8PASSBYVAL = %s, library has %s."
msgstr "服务器有FLOAT8PASSBYVAL = %s, 库有%s."
-#: utils/fmgr/dfmgr.c:368
+#: utils/fmgr/dfmgr.c:381
msgid "Magic block has unexpected length or padding difference."
msgstr "Magic块带有未期望的长度或者填充的方式不同."
-#: utils/fmgr/dfmgr.c:371
+#: utils/fmgr/dfmgr.c:384
#, c-format
msgid "incompatible library \"%s\": magic block mismatch"
msgstr "不兼容的库\"%s\": 魔法块不匹配"
-#: utils/fmgr/dfmgr.c:535
+#: utils/fmgr/dfmgr.c:548
#, c-format
msgid "access to library \"%s\" is not allowed"
msgstr "不允许对库 \"%s\"进行访问"
-#: utils/fmgr/dfmgr.c:561
+#: utils/fmgr/dfmgr.c:574
#, c-format
msgid "invalid macro name in dynamic library path: %s"
msgstr "动态库路径中无效的宏名字: %s"
-#: utils/fmgr/dfmgr.c:601
+#: utils/fmgr/dfmgr.c:614
#, c-format
msgid "zero-length component in parameter \"dynamic_library_path\""
msgstr "在参数\"dynamic_library_path\"的组件长度为零"
-#: utils/fmgr/dfmgr.c:620
+#: utils/fmgr/dfmgr.c:633
#, c-format
msgid "component in parameter \"dynamic_library_path\" is not an absolute path"
msgstr "在参数\"dynamic_library_path\"中的组成部分不是绝对路径."
-#: utils/fmgr/fmgr.c:272
+#: utils/fmgr/fmgr.c:236
#, c-format
msgid "internal function \"%s\" is not in internal lookup table"
msgstr "内部函数 \"%s\" 不在内部查找表中"
-#: utils/fmgr/fmgr.c:479
+#: utils/fmgr/fmgr.c:485
#, c-format
-msgid "unrecognized API version %d reported by info function \"%s\""
-msgstr "信息函数\"%2$s\"报告无法识别的API版本%1$d."
+msgid "could not find function information for function \"%s\""
+msgstr "找不到函数\"%s\"的函数信息"
+
+#: utils/fmgr/fmgr.c:487
+#, c-format
+msgid "SQL-callable functions need an accompanying PG_FUNCTION_INFO_V1(funcname)."
+msgstr "SQL可调用函数需要一个附带的PG_FUNCTION_INFO_V1(funcname)."
-#: utils/fmgr/fmgr.c:849 utils/fmgr/fmgr.c:2110
+#: utils/fmgr/fmgr.c:505
#, c-format
-msgid "function %u has too many arguments (%d, maximum is %d)"
-msgstr "函数 %u 参数太多 (%d, 最大个数为 %d)"
+msgid "unrecognized API version %d reported by info function \"%s\""
+msgstr "信息函数\"%2$s\"报告无法识别的API版本%1$d."
-#: utils/fmgr/fmgr.c:2531
+#: utils/fmgr/fmgr.c:2210
#, c-format
msgid "language validation function %u called for language %u instead of %u"
msgstr "语言校验函数 %u 调用的目标语言是 %u ,而不是 %u"
-#: utils/fmgr/funcapi.c:355
+#: utils/fmgr/funcapi.c:358
#, c-format
-msgid ""
-"could not determine actual result type for function \"%s\" declared to "
-"return type %s"
+msgid "could not determine actual result type for function \"%s\" declared to return type %s"
msgstr "无法确定声明为返回类型%2$s的函数\"%1$s\"的实际结果类型"
-#: utils/fmgr/funcapi.c:1342 utils/fmgr/funcapi.c:1373
+#: utils/fmgr/funcapi.c:1403 utils/fmgr/funcapi.c:1435
#, c-format
msgid "number of aliases does not match number of columns"
msgstr "别名个数与字段个数不匹配"
-#: utils/fmgr/funcapi.c:1367
+#: utils/fmgr/funcapi.c:1429
#, c-format
msgid "no column alias was provided"
msgstr "没有提供字段别名"
-#: utils/fmgr/funcapi.c:1391
+#: utils/fmgr/funcapi.c:1453
#, c-format
msgid "could not determine row description for function returning record"
msgstr "无法确定函数返回记录的行描述"
+#: utils/init/miscinit.c:108
+#, c-format
+msgid "data directory \"%s\" does not exist"
+msgstr "数据目录 \"%s\" 不存在"
+
+#: utils/init/miscinit.c:113
+#, c-format
+msgid "could not read permissions of directory \"%s\": %m"
+msgstr "没有读取目录 \"%s\" 的权限: %m"
+
#: utils/init/miscinit.c:121
#, c-format
+msgid "specified data directory \"%s\" is not a directory"
+msgstr "所指定的数据目录 \"%s\"不是一个目录."
+
+#: utils/init/miscinit.c:137
+#, c-format
+msgid "data directory \"%s\" has wrong ownership"
+msgstr "data目录 \"%s\"的所有者权限错误."
+
+#: utils/init/miscinit.c:139
+#, c-format
+msgid "The server must be started by the user that owns the data directory."
+msgstr "服务器必须由拥有data目录的用户启动"
+
+#: utils/init/miscinit.c:157
+#, c-format
+msgid "data directory \"%s\" has invalid permissions"
+msgstr "数据目录\"%s\"的权限无效"
+
+#: utils/init/miscinit.c:159
+#, c-format
+msgid "Permissions should be u=rwx (0700) or u=rwx,g=rx (0750)."
+msgstr "权限应该为 u=rwx (0700) 或者u=rwx,g=rx (0750)."
+
+#: utils/init/miscinit.c:218
+#, c-format
msgid "could not change directory to \"%s\": %m"
msgstr "无法跳转到目录 \"%s\" 中: %m"
-#: utils/init/miscinit.c:449 utils/misc/guc.c:6012
+#: utils/init/miscinit.c:554 utils/misc/guc.c:6370
#, c-format
msgid "cannot set parameter \"%s\" within security-restricted operation"
msgstr "无法在对安全有严格限制的操作中设置参数\"%s\" "
-#: utils/init/miscinit.c:510
+#: utils/init/miscinit.c:615
#, c-format
msgid "role with OID %u does not exist"
msgstr "OID为%u的角色不存在"
-#: utils/init/miscinit.c:540
+#: utils/init/miscinit.c:645
#, c-format
msgid "role \"%s\" is not permitted to log in"
msgstr "不允许角色\"%s\" 进行登录"
-#: utils/init/miscinit.c:558
+#: utils/init/miscinit.c:663
#, c-format
msgid "too many connections for role \"%s\""
msgstr "由角色\"%s\"发起的连接太多了"
-#: utils/init/miscinit.c:618
+#: utils/init/miscinit.c:723
#, c-format
msgid "permission denied to set session authorization"
msgstr "设置会话认证权限不允许"
-#: utils/init/miscinit.c:701
+#: utils/init/miscinit.c:806
#, c-format
msgid "invalid role OID: %u"
msgstr "无效的角色OID:%u"
-#: utils/init/miscinit.c:755
+#: utils/init/miscinit.c:860
#, c-format
msgid "database system is shut down"
msgstr "数据库系统已关闭"
-#: utils/init/miscinit.c:842
+#: utils/init/miscinit.c:947
#, c-format
msgid "could not create lock file \"%s\": %m"
msgstr "无法创建锁文件 \"%s\": %m"
-#: utils/init/miscinit.c:856
+#: utils/init/miscinit.c:961
#, c-format
msgid "could not open lock file \"%s\": %m"
msgstr "无法打开锁文件 \"%s\": %m"
-#: utils/init/miscinit.c:862
+#: utils/init/miscinit.c:968
#, c-format
msgid "could not read lock file \"%s\": %m"
msgstr "无法读取锁文件 \"%s\": %m"
-#: utils/init/miscinit.c:870
+#: utils/init/miscinit.c:977
#, c-format
msgid "lock file \"%s\" is empty"
msgstr "锁文件 \"%s\" 为空"
-#: utils/init/miscinit.c:871
+#: utils/init/miscinit.c:978
#, c-format
-msgid ""
-"Either another server is starting, or the lock file is the remnant of a "
-"previous server startup crash."
-msgstr ""
-"或者另一个服务正在启动,或者锁文件是因为前一次服务器启动崩溃时产生导致的."
+msgid "Either another server is starting, or the lock file is the remnant of a previous server startup crash."
+msgstr "或者另一个服务正在启动,或者锁文件是因为前一次服务器启动崩溃时产生导致的."
-#: utils/init/miscinit.c:918
+#: utils/init/miscinit.c:1022
#, c-format
msgid "lock file \"%s\" already exists"
msgstr "锁文件 \"%s\" 已经存在"
-#: utils/init/miscinit.c:922
+#: utils/init/miscinit.c:1026
#, c-format
msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
msgstr "是否其它 postgres (PID %d) 运行在数据目录 \"%s\"?"
-#: utils/init/miscinit.c:924
+#: utils/init/miscinit.c:1028
#, c-format
msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
msgstr "是否其它 postmaster (PID %d) 运行在数据目录 \"%s\"?"
-#: utils/init/miscinit.c:927
+#: utils/init/miscinit.c:1031
#, c-format
msgid "Is another postgres (PID %d) using socket file \"%s\"?"
msgstr "是否其它 postgres (PID %d) 使用套接字文件 \"%s\"?"
-#: utils/init/miscinit.c:929
+#: utils/init/miscinit.c:1033
#, c-format
msgid "Is another postmaster (PID %d) using socket file \"%s\"?"
msgstr "是否其它 postmaster (PID %d) 使用套接字文件 \"%s\"?"
-#: utils/init/miscinit.c:965
+#: utils/init/miscinit.c:1069
#, c-format
msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
msgstr "先前存在的共享内存块 (key %lu, ID %lu) 仍在使用中"
-#: utils/init/miscinit.c:968
+#: utils/init/miscinit.c:1072
#, c-format
-msgid ""
-"If you're sure there are no old server processes still running, remove the "
-"shared memory block or just delete the file \"%s\"."
-msgstr ""
-"如果你确认没有旧的服务器进程在运行, 删除共享内存块,或者只删除文件 \"%s\"."
+msgid "If you're sure there are no old server processes still running, remove the shared memory block or just delete the file \"%s\"."
+msgstr "如果你确认没有旧的服务器进程在运行, 删除共享内存块,或者只删除文件 \"%s\"."
-#: utils/init/miscinit.c:984
+#: utils/init/miscinit.c:1088
#, c-format
msgid "could not remove old lock file \"%s\": %m"
msgstr "无法删除旧的锁文件 \"%s\": %m"
-#: utils/init/miscinit.c:986
+#: utils/init/miscinit.c:1090
#, c-format
-msgid ""
-"The file seems accidentally left over, but it could not be removed. Please "
-"remove the file by hand and try again."
+msgid "The file seems accidentally left over, but it could not be removed. Please remove the file by hand and try again."
msgstr "文件像是意外留下的, 但是不能删除它. 请手工删除此文件, 然后再重试一次."
-#: utils/init/miscinit.c:1022 utils/init/miscinit.c:1033
-#: utils/init/miscinit.c:1043
+#: utils/init/miscinit.c:1127 utils/init/miscinit.c:1141
+#: utils/init/miscinit.c:1152
#, c-format
msgid "could not write lock file \"%s\": %m"
msgstr "无法写入锁文件 \"%s\": %m"
-#: utils/init/miscinit.c:1172 utils/init/miscinit.c:1301 utils/misc/guc.c:8806
+#: utils/init/miscinit.c:1284 utils/init/miscinit.c:1427 utils/misc/guc.c:9211
#, c-format
msgid "could not read from file \"%s\": %m"
msgstr "无法读取文件 \"%s\": %m"
-#: utils/init/miscinit.c:1291
+#: utils/init/miscinit.c:1415
#, c-format
msgid "could not open file \"%s\": %m; continuing anyway"
msgstr "无法打开文件\"%s\":%m;仍然继续"
-#: utils/init/miscinit.c:1314
+#: utils/init/miscinit.c:1440
#, c-format
msgid "lock file \"%s\" contains wrong PID: %ld instead of %ld"
msgstr "锁文件\"%s\"包含错误的PID:应该是%ld而不是%ld"
-#: utils/init/miscinit.c:1356 utils/init/miscinit.c:1369
+#: utils/init/miscinit.c:1479 utils/init/miscinit.c:1495
#, c-format
msgid "\"%s\" is not a valid data directory"
msgstr "\"%s\" 不是一个有效的数据目录"
-#: utils/init/miscinit.c:1358
+#: utils/init/miscinit.c:1481
#, c-format
msgid "File \"%s\" is missing."
msgstr "文件 \"%s\" 丢失."
-#: utils/init/miscinit.c:1371
+#: utils/init/miscinit.c:1497
#, c-format
msgid "File \"%s\" does not contain valid data."
msgstr "文件 \"%s\" 没有包含有效数据."
-#: utils/init/miscinit.c:1373
+#: utils/init/miscinit.c:1499
#, c-format
msgid "You might need to initdb."
msgstr "您需要初始化数据库 (initdb)."
-#: utils/init/miscinit.c:1381
+#: utils/init/miscinit.c:1507
#, c-format
-msgid ""
-"The data directory was initialized by PostgreSQL version %ld.%ld, which is "
-"not compatible with this version %s."
-msgstr "数据目录是以 PostgreSQL 版本 %ld.%ld 初始化的, 它于当前版本 %s 不兼容."
+msgid "The data directory was initialized by PostgreSQL version %s, which is not compatible with this version %s."
+msgstr "数据目录是以 PostgreSQL 版本 %s 初始化的, 它于当前版本 %s 不兼容."
-#: utils/init/miscinit.c:1452
+#: utils/init/miscinit.c:1574
#, c-format
msgid "loaded library \"%s\""
msgstr "已加载的库 \"%s\""
#: utils/init/postinit.c:252
#, c-format
-msgid ""
-"replication connection authorized: user=%s SSL enabled (protocol=%s, cipher="
-"%s, compression=%s)"
-msgstr ""
-"复制连接已经授权: user =%s SSL 已启用 (protocol=%s, cipher=%s, compression="
-"%s)"
+msgid "replication connection authorized: user=%s SSL enabled (protocol=%s, cipher=%s, bits=%d, compression=%s)"
+msgstr "复制连接已经授权: user =%s SSL 已启用 (protocol=%s, cipher=%s, bits=%d, compression=%s)"
# help.c:48
-#: utils/init/postinit.c:254 utils/init/postinit.c:268
+#: utils/init/postinit.c:257 utils/init/postinit.c:274
msgid "off"
msgstr "关闭"
# help.c:48
-#: utils/init/postinit.c:254 utils/init/postinit.c:268
+#: utils/init/postinit.c:257 utils/init/postinit.c:274
msgid "on"
msgstr "开启"
-#: utils/init/postinit.c:258
+#: utils/init/postinit.c:261
#, c-format
msgid "replication connection authorized: user=%s"
msgstr "复制连接已经授权: 用户=%s"
-#: utils/init/postinit.c:266
+#: utils/init/postinit.c:269
#, c-format
-msgid ""
-"connection authorized: user=%s database=%s SSL enabled (protocol=%s, cipher="
-"%s, compression=%s)"
-msgstr ""
-"连接授权: user=%s database=%s SSL 启用 (protocol=%s, cipher=%s, compression="
-"%s)"
+msgid "connection authorized: user=%s database=%s SSL enabled (protocol=%s, cipher=%s, bits=%d, compression=%s)"
+msgstr "连接授权: user=%s database=%s SSL 启用 ((protocol=%s, cipher=%s, bits=%d, compression=%s)"
-#: utils/init/postinit.c:272
+#: utils/init/postinit.c:278
#, c-format
msgid "connection authorized: user=%s database=%s"
msgstr "联接认证: 主机=%s 数据库=%s"
-#: utils/init/postinit.c:304
+#: utils/init/postinit.c:310
#, c-format
msgid "database \"%s\" has disappeared from pg_database"
msgstr "关于数据库\"%s\"的记录在系统目录视图pg_database中不存在"
-#: utils/init/postinit.c:306
+#: utils/init/postinit.c:312
#, c-format
msgid "Database OID %u now seems to belong to \"%s\"."
msgstr "数据库OID%u现在属于\"%s\"."
-#: utils/init/postinit.c:326
+#: utils/init/postinit.c:332
#, c-format
msgid "database \"%s\" is not currently accepting connections"
msgstr "数据库 \"%s\" 当前不接受联接"
-#: utils/init/postinit.c:339
+#: utils/init/postinit.c:345
#, c-format
msgid "permission denied for database \"%s\""
msgstr "访问数据库\"%s\"的权限不够"
-#: utils/init/postinit.c:340
+#: utils/init/postinit.c:346
#, c-format
msgid "User does not have CONNECT privilege."
msgstr "用户没有CONNECT权限."
# command.c:981
-#: utils/init/postinit.c:357
+#: utils/init/postinit.c:363
#, c-format
msgid "too many connections for database \"%s\""
msgstr "到数据库 \"%s\"的连接太多了"
-#: utils/init/postinit.c:379 utils/init/postinit.c:386
+#: utils/init/postinit.c:385 utils/init/postinit.c:392
#, c-format
msgid "database locale is incompatible with operating system"
msgstr "数据库所使用的语言环境和操作系统的不兼容"
-#: utils/init/postinit.c:380
+#: utils/init/postinit.c:386
#, c-format
-msgid ""
-"The database was initialized with LC_COLLATE \"%s\", which is not "
-"recognized by setlocale()."
-msgstr ""
-"数据库集群是以 LC_COLLATE \"%s\"来初始化的,这个排序规则无法由setlocale()识别"
+msgid "The database was initialized with LC_COLLATE \"%s\", which is not recognized by setlocale()."
+msgstr "数据库集群是以 LC_COLLATE \"%s\"来初始化的,这个排序规则无法由setlocale()识别"
-#: utils/init/postinit.c:382 utils/init/postinit.c:389
+#: utils/init/postinit.c:388 utils/init/postinit.c:395
#, c-format
-msgid ""
-"Recreate the database with another locale or install the missing locale."
+msgid "Recreate the database with another locale or install the missing locale."
msgstr "以另外一种语言环境重新创建数据库,或者安装丢失的语言环境."
-#: utils/init/postinit.c:387
+#: utils/init/postinit.c:393
#, c-format
-msgid ""
-"The database was initialized with LC_CTYPE \"%s\", which is not recognized "
-"by setlocale()."
-msgstr ""
-"数据库集群是带 LC_CTYPE \"%s\" 初始化的, 但此 LC_CTYPE 是不被 setlocale() 认"
-"可的."
+msgid "The database was initialized with LC_CTYPE \"%s\", which is not recognized by setlocale()."
+msgstr "数据库集群是带 LC_CTYPE \"%s\" 初始化的, 但此 LC_CTYPE 是不被 setlocale() 认可的."
-#: utils/init/postinit.c:715
+#: utils/init/postinit.c:726
#, c-format
msgid "no roles are defined in this database system"
msgstr "当前数据库系统中没有定义角色"
-#: utils/init/postinit.c:716
+#: utils/init/postinit.c:727
#, c-format
msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;."
msgstr "您应该立即运行 CREATE USER \"%s\" SUPERUSER;."
-#: utils/init/postinit.c:752
+#: utils/init/postinit.c:763
#, c-format
msgid "new replication connections are not allowed during database shutdown"
msgstr "在数据库服务器关闭期间不允许接受新的复制连接"
-#: utils/init/postinit.c:756
+#: utils/init/postinit.c:767
#, c-format
msgid "must be superuser to connect during database shutdown"
msgstr "只有超级用户才能在数据库关闭期间连接数据库"
-#: utils/init/postinit.c:766
+#: utils/init/postinit.c:777
#, c-format
msgid "must be superuser to connect in binary upgrade mode"
msgstr "只有超级用户才能以二进制升级模式进行连接"
-#: utils/init/postinit.c:780
+#: utils/init/postinit.c:791
#, c-format
-msgid ""
-"remaining connection slots are reserved for non-replication superuser "
-"connections"
+msgid "remaining connection slots are reserved for non-replication superuser connections"
msgstr "已保留的连接位置为执行非复制请求的超级用户预留"
-#: utils/init/postinit.c:790
+#: utils/init/postinit.c:801
#, c-format
msgid "must be superuser or replication role to start walsender"
msgstr "只有超级用户或者拥有复制角色的用户才能启动 walsender"
-#: utils/init/postinit.c:859
+#: utils/init/postinit.c:870
#, c-format
msgid "database %u does not exist"
msgstr "数据库%u不存在"
-#: utils/init/postinit.c:945
+#: utils/init/postinit.c:959
#, c-format
msgid "It seems to have just been dropped or renamed."
msgstr "它已经被删除或者改名了."
-#: utils/init/postinit.c:963
+#: utils/init/postinit.c:977
#, c-format
msgid "The database subdirectory \"%s\" is missing."
msgstr "数据库子目录 \"%s\" 丢失."
-#: utils/init/postinit.c:968
+#: utils/init/postinit.c:982
#, c-format
msgid "could not access directory \"%s\": %m"
msgstr "无法访问目录 \"%s\": %m"
-#: utils/mb/conv.c:405 utils/mb/conv.c:591
+#: utils/mb/conv.c:488 utils/mb/conv.c:680
#, c-format
msgid "invalid encoding number: %d"
msgstr "无效编码编号: %d"
-#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:137
-#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:169
+#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:122
+#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:154
#, c-format
msgid "unexpected encoding ID %d for ISO 8859 character sets"
msgstr " ISO 8859 字符集出现非期望的编码ID%d"
-#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:127
-#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:159
+#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:103
+#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:135
#, c-format
msgid "unexpected encoding ID %d for WIN character sets"
msgstr "WIN字符集出现非期望的编码ID%d"
-#: utils/mb/encnames.c:496
+#: utils/mb/encnames.c:473
+#, c-format
+msgid "encoding \"%s\" not supported by ICU"
+msgstr "ICU不支持编码\"%s\""
+
+#: utils/mb/encnames.c:572
#, c-format
msgid "encoding name too long"
msgstr "编码名字太长"
-#: utils/mb/mbutils.c:307
+#: utils/mb/mbutils.c:296
#, c-format
msgid "conversion between %s and %s is not supported"
msgstr "不支持 %s 和 %s 之间的编码转换"
-#: utils/mb/mbutils.c:366
+#: utils/mb/mbutils.c:355
#, c-format
-msgid ""
-"default conversion function for encoding \"%s\" to \"%s\" does not exist"
+msgid "default conversion function for encoding \"%s\" to \"%s\" does not exist"
msgstr "默认的 \"%s\" 到 \"%s\" 的编码转换函数不存在"
-#: utils/mb/mbutils.c:377 utils/mb/mbutils.c:710
+#: utils/mb/mbutils.c:366 utils/mb/mbutils.c:699
#, c-format
msgid "String of %d bytes is too long for encoding conversion."
msgstr "对于编码转化来说带有%d个字节的字符串太长."
-#: utils/mb/mbutils.c:464
+#: utils/mb/mbutils.c:453
#, c-format
msgid "invalid source encoding name \"%s\""
msgstr "无效的源编码名称 \"%s\""
-#: utils/mb/mbutils.c:469
+#: utils/mb/mbutils.c:458
#, c-format
msgid "invalid destination encoding name \"%s\""
msgstr "无效的目标编码名称 \"%s\""
-#: utils/mb/mbutils.c:609
+#: utils/mb/mbutils.c:598
#, c-format
msgid "invalid byte value for encoding \"%s\": 0x%02x"
msgstr "对于编码\"%s\"的字节值无效: 0x%02x"
-#: utils/mb/mbutils.c:951
+#: utils/mb/mbutils.c:940
#, c-format
msgid "bind_textdomain_codeset failed"
msgstr "操作bind_textdomain_codeset 失败了"
#: utils/mb/wchar.c:2048
#, c-format
-msgid ""
-"character with byte sequence %s in encoding \"%s\" has no equivalent in "
-"encoding \"%s\""
+msgid "character with byte sequence %s in encoding \"%s\" has no equivalent in encoding \"%s\""
msgstr "编码\"%2$s\"的字符0x%1$s在编码\"%3$s\"没有相对应值"
-#: utils/misc/guc.c:548
+#: utils/misc/guc.c:572
msgid "Ungrouped"
msgstr "取消组"
-#: utils/misc/guc.c:550
+#: utils/misc/guc.c:574
msgid "File Locations"
msgstr "文件位置"
-#: utils/misc/guc.c:552
+#: utils/misc/guc.c:576
msgid "Connections and Authentication"
msgstr "联接和认证"
-#: utils/misc/guc.c:554
+#: utils/misc/guc.c:578
msgid "Connections and Authentication / Connection Settings"
msgstr "联接和认证 / 联接设置"
-#: utils/misc/guc.c:556
-msgid "Connections and Authentication / Security and Authentication"
-msgstr "联接和认证 / 安全和认证"
+#: utils/misc/guc.c:580
+msgid "Connections and Authentication / Authentication"
+msgstr "连接和身份验证 / 身份验证"
+
+#: utils/misc/guc.c:582
+msgid "Connections and Authentication / SSL"
+msgstr "联接和身份认证 / SSL"
-#: utils/misc/guc.c:558
+#: utils/misc/guc.c:584
msgid "Resource Usage"
msgstr "资源使用"
-#: utils/misc/guc.c:560
+#: utils/misc/guc.c:586
msgid "Resource Usage / Memory"
msgstr "资源使用 / 内存"
-#: utils/misc/guc.c:562
+#: utils/misc/guc.c:588
msgid "Resource Usage / Disk"
msgstr "资源使用/磁盘"
-#: utils/misc/guc.c:564
+#: utils/misc/guc.c:590
msgid "Resource Usage / Kernel Resources"
msgstr "资源使用 / 内核资源"
-#: utils/misc/guc.c:566
+#: utils/misc/guc.c:592
msgid "Resource Usage / Cost-Based Vacuum Delay"
msgstr "资源使用 / 基于开销的Vacuum延迟"
-#: utils/misc/guc.c:568
+#: utils/misc/guc.c:594
msgid "Resource Usage / Background Writer"
msgstr "资源使用 / 后台写入进程"
-#: utils/misc/guc.c:570
+#: utils/misc/guc.c:596
msgid "Resource Usage / Asynchronous Behavior"
msgstr "资源使用 / 异步系统行为"
-#: utils/misc/guc.c:572
+#: utils/misc/guc.c:598
msgid "Write-Ahead Log"
msgstr "Write-Ahead 日志"
-#: utils/misc/guc.c:574
+#: utils/misc/guc.c:600
msgid "Write-Ahead Log / Settings"
msgstr "Write-Ahead 日志 / 设置"
-#: utils/misc/guc.c:576
+#: utils/misc/guc.c:602
msgid "Write-Ahead Log / Checkpoints"
msgstr "Write-Ahead 日志 / Checkpoints"
-#: utils/misc/guc.c:578
+#: utils/misc/guc.c:604
msgid "Write-Ahead Log / Archiving"
msgstr "Write-Ahead 日志 / 归档"
-#: utils/misc/guc.c:580
+#: utils/misc/guc.c:606
msgid "Replication"
msgstr "复制"
-#: utils/misc/guc.c:582
+#: utils/misc/guc.c:608
msgid "Replication / Sending Servers"
msgstr "复制/发送服务器"
-#: utils/misc/guc.c:584
+#: utils/misc/guc.c:610
msgid "Replication / Master Server"
msgstr "复制/主服务器"
-#: utils/misc/guc.c:586
+#: utils/misc/guc.c:612
msgid "Replication / Standby Servers"
msgstr "复制 / 备用服务器"
-#: utils/misc/guc.c:588
+#: utils/misc/guc.c:614
+msgid "Replication / Subscribers"
+msgstr "复制 / 订阅者"
+
+#: utils/misc/guc.c:616
msgid "Query Tuning"
msgstr "查询调整"
-#: utils/misc/guc.c:590
+#: utils/misc/guc.c:618
msgid "Query Tuning / Planner Method Configuration"
msgstr "查询调整 / 规划器方法配置"
-#: utils/misc/guc.c:592
+#: utils/misc/guc.c:620
msgid "Query Tuning / Planner Cost Constants"
msgstr "查询调整 / Planner Cost Constants"
-#: utils/misc/guc.c:594
+#: utils/misc/guc.c:622
msgid "Query Tuning / Genetic Query Optimizer"
msgstr "查询调整 / 基因查询优化"
-#: utils/misc/guc.c:596
+#: utils/misc/guc.c:624
msgid "Query Tuning / Other Planner Options"
msgstr "查询调整 / 其它规划器选项"
-#: utils/misc/guc.c:598
+#: utils/misc/guc.c:626
msgid "Reporting and Logging"
msgstr "报告和日志"
-#: utils/misc/guc.c:600
+#: utils/misc/guc.c:628
msgid "Reporting and Logging / Where to Log"
msgstr "报告和日志 / 日志位置"
-#: utils/misc/guc.c:602
+#: utils/misc/guc.c:630
msgid "Reporting and Logging / When to Log"
msgstr "报告和日志 / 日志时间"
-#: utils/misc/guc.c:604
+#: utils/misc/guc.c:632
msgid "Reporting and Logging / What to Log"
msgstr "报告和日志 / 日志内容"
-#: utils/misc/guc.c:606
+#: utils/misc/guc.c:634
msgid "Process Title"
msgstr "进程标题"
-#: utils/misc/guc.c:608
+#: utils/misc/guc.c:636
msgid "Statistics"
msgstr "统计信息"
-#: utils/misc/guc.c:610
+#: utils/misc/guc.c:638
msgid "Statistics / Monitoring"
msgstr "统计信息 / 监控"
-#: utils/misc/guc.c:612
+#: utils/misc/guc.c:640
msgid "Statistics / Query and Index Statistics Collector"
msgstr "统计信息 / 查询和索引统计收集器"
-#: utils/misc/guc.c:614
+#: utils/misc/guc.c:642
msgid "Autovacuum"
msgstr "Autovacuum"
-#: utils/misc/guc.c:616
+#: utils/misc/guc.c:644
msgid "Client Connection Defaults"
msgstr "客户端联接默认"
-#: utils/misc/guc.c:618
+#: utils/misc/guc.c:646
msgid "Client Connection Defaults / Statement Behavior"
msgstr "客户端联接默认 / 语句动作"
-#: utils/misc/guc.c:620
+#: utils/misc/guc.c:648
msgid "Client Connection Defaults / Locale and Formatting"
msgstr "客户端联接默认 / 本地化和格式化"
-#: utils/misc/guc.c:622
+#: utils/misc/guc.c:650
msgid "Client Connection Defaults / Shared Library Preloading"
msgstr "客户端联接默认 / 共享库预先加载"
-#: utils/misc/guc.c:624
+#: utils/misc/guc.c:652
msgid "Client Connection Defaults / Other Defaults"
msgstr "客户端联接默认 / 其它默认"
-#: utils/misc/guc.c:626
+#: utils/misc/guc.c:654
msgid "Lock Management"
msgstr "锁管理"
-#: utils/misc/guc.c:628
+#: utils/misc/guc.c:656
msgid "Version and Platform Compatibility"
msgstr "版本和平台兼容性"
-#: utils/misc/guc.c:630
+#: utils/misc/guc.c:658
msgid "Version and Platform Compatibility / Previous PostgreSQL Versions"
msgstr "版本和平台兼容性 / 上一个 PostgreSQL 版本"
-#: utils/misc/guc.c:632
+#: utils/misc/guc.c:660
msgid "Version and Platform Compatibility / Other Platforms and Clients"
msgstr "版本和平台兼容性 / 其它平台和客户端"
-#: utils/misc/guc.c:634
+#: utils/misc/guc.c:662
msgid "Error Handling"
msgstr "错误处理"
-#: utils/misc/guc.c:636
+#: utils/misc/guc.c:664
msgid "Preset Options"
msgstr "预置选项"
-#: utils/misc/guc.c:638
+#: utils/misc/guc.c:666
msgid "Customized Options"
msgstr "定制选项"
-#: utils/misc/guc.c:640
+#: utils/misc/guc.c:668
msgid "Developer Options"
msgstr "开发人员选项"
-#: utils/misc/guc.c:697
-msgid "Valid units for this parameter are \"kB\", \"MB\", \"GB\", and \"TB\"."
-msgstr "这个参数的有效单位是\"kB\", \"MB\", \"GB\"和\"TB\"."
+#: utils/misc/guc.c:722
+msgid "Valid units for this parameter are \"B\", \"kB\", \"MB\", \"GB\", and \"TB\"."
+msgstr "这个参数的有效单位是\"B\", \"kB\", \"MB\", \"GB\"和\"TB\"."
-#: utils/misc/guc.c:724
-msgid ""
-"Valid units for this parameter are \"ms\", \"s\", \"min\", \"h\", and \"d\"."
+#: utils/misc/guc.c:764
+msgid "Valid units for this parameter are \"ms\", \"s\", \"min\", \"h\", and \"d\"."
msgstr "这个参数可使用的有效单元是\"ms\", \"s\", \"min\", \"h\", 和\"d\"."
-#: utils/misc/guc.c:783
+#: utils/misc/guc.c:823
msgid "Enables the planner's use of sequential-scan plans."
msgstr "启用查询计划器的顺序扫描计划."
-#: utils/misc/guc.c:792
+#: utils/misc/guc.c:832
msgid "Enables the planner's use of index-scan plans."
msgstr "启用查询计划器的索引扫描计划."
-#: utils/misc/guc.c:801
+#: utils/misc/guc.c:841
msgid "Enables the planner's use of index-only-scan plans."
msgstr "启用查询计划器的仅索引扫描计划."
-#: utils/misc/guc.c:810
+#: utils/misc/guc.c:850
msgid "Enables the planner's use of bitmap-scan plans."
msgstr "启用查询计划器的位图扫描计划."
-#: utils/misc/guc.c:819
+#: utils/misc/guc.c:859
msgid "Enables the planner's use of TID scan plans."
msgstr "启用查询计划器的TID扫描计划."
-#: utils/misc/guc.c:828
+#: utils/misc/guc.c:868
msgid "Enables the planner's use of explicit sort steps."
msgstr "启用查询计划器的显式排序步骤."
-#: utils/misc/guc.c:837
+#: utils/misc/guc.c:877
msgid "Enables the planner's use of hashed aggregation plans."
msgstr "启用查询计划器的哈希聚合计划."
-#: utils/misc/guc.c:846
+#: utils/misc/guc.c:886
msgid "Enables the planner's use of materialization."
msgstr "启用查询计划器的实体化使用."
-#: utils/misc/guc.c:855
+#: utils/misc/guc.c:895
msgid "Enables the planner's use of nested-loop join plans."
msgstr "启用查询计划器的嵌套循环连接计划."
-#: utils/misc/guc.c:864
+#: utils/misc/guc.c:904
msgid "Enables the planner's use of merge join plans."
msgstr "启用查询计划器的合并连接计划."
-#: utils/misc/guc.c:873
+#: utils/misc/guc.c:913
msgid "Enables the planner's use of hash join plans."
msgstr "启用查询计划器的哈希连接计划."
-#: utils/misc/guc.c:882
-msgid "Enables use of foreign keys for estimating joins."
-msgstr "启用外键来估计连接。"
+#: utils/misc/guc.c:922
+msgid "Enables the planner's use of gather merge plans."
+msgstr "允许查询计划器使用收集合并计划."
+
+#: utils/misc/guc.c:931
+msgid "Enables partitionwise join."
+msgstr "启用分区连接."
+
+#: utils/misc/guc.c:940
+msgid "Enables partitionwise aggregation and grouping."
+msgstr "启用分区聚合和分组."
+
+#: utils/misc/guc.c:949
+msgid "Enables the planner's use of parallel append plans."
+msgstr "启用查询计划器使用并行追加计划."
+
+#: utils/misc/guc.c:958
+msgid "Enables the planner's use of parallel hash plans."
+msgstr "启用查询计划器使用并行哈希计划."
+
+#: utils/misc/guc.c:967
+msgid "Enable plan-time and run-time partition pruning."
+msgstr "启用计划时间和运行时分区修剪."
+
+#: utils/misc/guc.c:968
+msgid "Allows the query planner and executor to compare partition bounds to conditions in the query to determine which partitions must be scanned."
+msgstr "允许查询计划器和执行器将分区边界与查询中的条件进行比较,以确定必须扫描哪些分区"
-#: utils/misc/guc.c:892
+#: utils/misc/guc.c:978
msgid "Enables genetic query optimization."
msgstr "启用基因查询优化."
-#: utils/misc/guc.c:893
+#: utils/misc/guc.c:979
msgid "This algorithm attempts to do planning without exhaustive searching."
msgstr "算法企图执行不带有无穷搜索的计划."
-#: utils/misc/guc.c:903
+#: utils/misc/guc.c:989
msgid "Shows whether the current user is a superuser."
msgstr "显示当前用户是否是超级用户."
-#: utils/misc/guc.c:913
+#: utils/misc/guc.c:999
msgid "Enables advertising the server via Bonjour."
msgstr "启用通过Bonjour的方式来宣布数据库服务器在网络中的存在."
-#: utils/misc/guc.c:922
+#: utils/misc/guc.c:1008
msgid "Collects transaction commit time."
msgstr "收集事务提交时间。"
-#: utils/misc/guc.c:931
+#: utils/misc/guc.c:1017
msgid "Enables SSL connections."
msgstr "启用 SSL 联接."
-#: utils/misc/guc.c:940
+#: utils/misc/guc.c:1026
+msgid "Also use ssl_passphrase_command during server reload."
+msgstr "在服务器重新加载期间也使用ssl_passphrase_command"
+
+#: utils/misc/guc.c:1035
msgid "Give priority to server ciphersuite order."
msgstr "为服务器密码组的顺序提供优先."
-#: utils/misc/guc.c:949
+#: utils/misc/guc.c:1044
msgid "Forces synchronization of updates to disk."
msgstr "强制和磁盘同步更新"
-#: utils/misc/guc.c:950
-msgid ""
-"The server will use the fsync() system call in several places to make sure "
-"that updates are physically written to disk. This insures that a database "
-"cluster will recover to a consistent state after an operating system or "
-"hardware crash."
-msgstr ""
-"服务器将在多个位置使用系统调用fsync()来确定更新操作已经将数据写入磁盘.这将确"
-"保在操作系统或硬件崩溃后数据库集群将恢复到一个一致性状态. "
+#: utils/misc/guc.c:1045
+msgid "The server will use the fsync() system call in several places to make sure that updates are physically written to disk. This insures that a database cluster will recover to a consistent state after an operating system or hardware crash."
+msgstr "服务器将在多个位置使用系统调用fsync()来确定更新操作已经将数据写入磁盘.这将确保在操作系统或硬件崩溃后数据库集群将恢复到一个一致性状态. "
-#: utils/misc/guc.c:961
+#: utils/misc/guc.c:1056
msgid "Continues processing after a checksum failure."
msgstr "校验失败后继续处理."
-#: utils/misc/guc.c:962
-msgid ""
-"Detection of a checksum failure normally causes PostgreSQL to report an "
-"error, aborting the current transaction. Setting ignore_checksum_failure to "
-"true causes the system to ignore the failure (but still report a warning), "
-"and continue processing. This behavior could cause crashes or other serious "
-"problems. Only has an effect if checksums are enabled."
-msgstr ""
-"发现校验失败通常会使PostgreSQL报告一个错误, 并中止当前事务.将参数"
-"zero_damaged_pages设置为true可以使系统忽略失败(只报告一个警告信息),并且能够"
-"继续处理当前事务.这种情况将导致系统崩溃或者其它严重问题,这也只有在启用校验时"
-"才有效."
+#: utils/misc/guc.c:1057
+msgid "Detection of a checksum failure normally causes PostgreSQL to report an error, aborting the current transaction. Setting ignore_checksum_failure to true causes the system to ignore the failure (but still report a warning), and continue processing. This behavior could cause crashes or other serious problems. Only has an effect if checksums are enabled."
+msgstr "发现校验失败通常会使PostgreSQL报告一个错误, 并中止当前事务.将参数zero_damaged_pages设置为true可以使系统忽略失败(只报告一个警告信息),并且能够继续处理当前事务.这种情况将导致系统崩溃或者其它严重问题,这也只有在启用校验时才有效."
-#: utils/misc/guc.c:976
+#: utils/misc/guc.c:1071
msgid "Continues processing past damaged page headers."
msgstr "继续处理已损坏的页头."
-#: utils/misc/guc.c:977
-msgid ""
-"Detection of a damaged page header normally causes PostgreSQL to report an "
-"error, aborting the current transaction. Setting zero_damaged_pages to true "
-"causes the system to instead report a warning, zero out the damaged page, "
-"and continue processing. This behavior will destroy data, namely all the "
-"rows on the damaged page."
-msgstr ""
-"对已损坏页头的检测通常会使PostgreSQL报告一个错误, 并中止当前事务.将参数"
-"zero_damaged_pages设置为true可以使系统只报告一个警告信息,不输出已损坏的页,"
-"并且能够继续处理当前事务.这种情况将使毁坏数据,因为这样通常会使所有的记录在已"
-"损坏的页上存放."
+#: utils/misc/guc.c:1072
+msgid "Detection of a damaged page header normally causes PostgreSQL to report an error, aborting the current transaction. Setting zero_damaged_pages to true causes the system to instead report a warning, zero out the damaged page, and continue processing. This behavior will destroy data, namely all the rows on the damaged page."
+msgstr "对已损坏页头的检测通常会使PostgreSQL报告一个错误, 并中止当前事务.将参数zero_damaged_pages设置为true可以使系统只报告一个警告信息,不输出已损坏的页,并且能够继续处理当前事务.这种情况将使毁坏数据,因为这样通常会使所有的记录在已损坏的页上存放."
-#: utils/misc/guc.c:990
+#: utils/misc/guc.c:1085
msgid "Writes full pages to WAL when first modified after a checkpoint."
msgstr "在检查点事件发生后发生第一次修改数据时,把所有的页写到WAL文件中"
-#: utils/misc/guc.c:991
-msgid ""
-"A page write in process during an operating system crash might be only "
-"partially written to disk. During recovery, the row changes stored in WAL "
-"are not enough to recover. This option writes pages when first modified "
-"after a checkpoint to WAL so full recovery is possible."
-msgstr ""
-"在操作系统崩溃过程中正在写入的页上的数据可能已经部分写入磁盘.在恢复期间,在WAL"
-"文件中所保存的已改变记录不足以进行恢复.当对WAL发生检查点事件后进行第一次修改"
-"操作时这个选项可以写入页。这样将允许进行完全恢复."
+#: utils/misc/guc.c:1086
+msgid "A page write in process during an operating system crash might be only partially written to disk. During recovery, the row changes stored in WAL are not enough to recover. This option writes pages when first modified after a checkpoint to WAL so full recovery is possible."
+msgstr "在操作系统崩溃过程中正在写入的页上的数据可能已经部分写入磁盘.在恢复期间,在WAL文件中所保存的已改变记录不足以进行恢复.当对WAL发生检查点事件后进行第一次修改操作时这个选项可以写入页。这样将允许进行完全恢复."
-#: utils/misc/guc.c:1004
-msgid ""
-"Writes full pages to WAL when first modified after a checkpoint, even for a "
-"non-critical modifications."
-msgstr ""
-"在检查点事件发生后发生第一次修改数据甚至是非关键修改时,把所有的页写到WAL文件"
-"中"
+#: utils/misc/guc.c:1099
+msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modifications."
+msgstr "在检查点事件发生后发生第一次修改数据甚至是非关键修改时,把所有的页写到WAL文件中"
-#: utils/misc/guc.c:1014
+#: utils/misc/guc.c:1109
msgid "Compresses full-page writes written in WAL file."
msgstr "压缩写入WAL文件的整页写。"
-#: utils/misc/guc.c:1024
+#: utils/misc/guc.c:1119
msgid "Logs each checkpoint."
msgstr "记录每一个检查点事件"
-#: utils/misc/guc.c:1033
+#: utils/misc/guc.c:1128
msgid "Logs each successful connection."
msgstr "记录每一个成功的联接."
-#: utils/misc/guc.c:1042
+#: utils/misc/guc.c:1137
msgid "Logs end of a session, including duration."
msgstr "对会话的结束时间和整个会话的持续时间进行日志记录"
-#: utils/misc/guc.c:1051
+#: utils/misc/guc.c:1146
msgid "Logs each replication command."
msgstr "记录每一个复制命令。"
-#: utils/misc/guc.c:1060
+#: utils/misc/guc.c:1155
msgid "Shows whether the running server has assertion checks enabled."
msgstr "显示正在运行的服务器是否启用了断言检查。"
-#: utils/misc/guc.c:1075
+#: utils/misc/guc.c:1170
msgid "Terminate session on any error."
msgstr "只要遇错即终止会话."
-#: utils/misc/guc.c:1084
+#: utils/misc/guc.c:1179
msgid "Reinitialize server after backend crash."
msgstr "后端服务器崩溃时重新初始化服务器."
-#: utils/misc/guc.c:1094
+#: utils/misc/guc.c:1189
msgid "Logs the duration of each completed SQL statement."
msgstr "记录每一条完成了的 SQL 语句过程."
-#: utils/misc/guc.c:1103
+#: utils/misc/guc.c:1198
msgid "Logs each query's parse tree."
msgstr "对每个查询的分析树进行日志记录"
-#: utils/misc/guc.c:1112
+#: utils/misc/guc.c:1207
msgid "Logs each query's rewritten parse tree."
msgstr "对每个查询的重写分析树进行日志记录"
-#: utils/misc/guc.c:1121
+#: utils/misc/guc.c:1216
msgid "Logs each query's execution plan."
msgstr "记录每一个查询的执行计划"
-#: utils/misc/guc.c:1130
+#: utils/misc/guc.c:1225
msgid "Indents parse and plan tree displays."
msgstr "显示缩进的解析和计划树"
-#: utils/misc/guc.c:1139
+#: utils/misc/guc.c:1234
msgid "Writes parser performance statistics to the server log."
msgstr "把分析器性能统计信息写入到服务器日志中."
-#: utils/misc/guc.c:1148
+#: utils/misc/guc.c:1243
msgid "Writes planner performance statistics to the server log."
msgstr "把规划器性能统计信息写入到服务器日志中."
-#: utils/misc/guc.c:1157
+#: utils/misc/guc.c:1252
msgid "Writes executor performance statistics to the server log."
msgstr "把执行器 (executor) 性能统计信息写入到服务器日志中."
-#: utils/misc/guc.c:1166
+#: utils/misc/guc.c:1261
msgid "Writes cumulative performance statistics to the server log."
msgstr "把 cumulative 性能统计信息写入到服务器日志中."
-#: utils/misc/guc.c:1176
-msgid ""
-"Logs system resource usage statistics (memory and CPU) on various B-tree "
-"operations."
+#: utils/misc/guc.c:1271
+msgid "Logs system resource usage statistics (memory and CPU) on various B-tree operations."
msgstr "基于可变的B-树操作的日志系统资源使用统计 (内存和CPU) ."
-#: utils/misc/guc.c:1188
+#: utils/misc/guc.c:1283
msgid "Collects information about executing commands."
msgstr "收集执行命令的统计信息."
-#: utils/misc/guc.c:1189
-msgid ""
-"Enables the collection of information on the currently executing command of "
-"each session, along with the time at which that command began execution."
+#: utils/misc/guc.c:1284
+msgid "Enables the collection of information on the currently executing command of each session, along with the time at which that command began execution."
msgstr "在每个会话当前正在执行的命令上启用信息收集, 并带有命令开始执行的时间."
-#: utils/misc/guc.c:1199
+#: utils/misc/guc.c:1294
msgid "Collects statistics on database activity."
msgstr "在数据库上正在执行的事务上收集统计信息."
-#: utils/misc/guc.c:1208
+#: utils/misc/guc.c:1303
msgid "Collects timing statistics for database I/O activity."
msgstr "为数据库I/O活动进行时间统计."
-#: utils/misc/guc.c:1218
+#: utils/misc/guc.c:1313
msgid "Updates the process title to show the active SQL command."
msgstr "更新进程标题来显示处于活动状态的SQL命令"
-#: utils/misc/guc.c:1219
-msgid ""
-"Enables updating of the process title every time a new SQL command is "
-"received by the server."
+#: utils/misc/guc.c:1314
+msgid "Enables updating of the process title every time a new SQL command is received by the server."
msgstr "每一次服务器开始运行新的SQL命令时启用进程标题的更新."
-#: utils/misc/guc.c:1228
+#: utils/misc/guc.c:1327
msgid "Starts the autovacuum subprocess."
msgstr "启动autovacuum子进程."
-#: utils/misc/guc.c:1238
+#: utils/misc/guc.c:1337
msgid "Generates debugging output for LISTEN and NOTIFY."
msgstr "为 LISTEN 和 NOTIFY 生成出错信息."
-#: utils/misc/guc.c:1250
+#: utils/misc/guc.c:1349
msgid "Emits information about lock usage."
msgstr "发出有关锁使用的信息."
-#: utils/misc/guc.c:1260
+#: utils/misc/guc.c:1359
msgid "Emits information about user lock usage."
msgstr "发出有关用户锁使用情况的信息."
-#: utils/misc/guc.c:1270
+#: utils/misc/guc.c:1369
msgid "Emits information about lightweight lock usage."
msgstr "发出有关轻量锁使用的相关信息."
-#: utils/misc/guc.c:1280
-msgid ""
-"Dumps information about all current locks when a deadlock timeout occurs."
+#: utils/misc/guc.c:1379
+msgid "Dumps information about all current locks when a deadlock timeout occurs."
msgstr "输出死锁超时发生时所有当前锁的相关信息."
-#: utils/misc/guc.c:1292
+#: utils/misc/guc.c:1391
msgid "Logs long lock waits."
msgstr "对长时间的锁等待记日志"
-#: utils/misc/guc.c:1302
+#: utils/misc/guc.c:1401
msgid "Logs the host name in the connection logs."
msgstr "在联接日志中记录主机名."
-#: utils/misc/guc.c:1303
-msgid ""
-"By default, connection logs only show the IP address of the connecting host. "
-"If you want them to show the host name you can turn this on, but depending "
-"on your host name resolution setup it might impose a non-negligible "
-"performance penalty."
-msgstr ""
-"在缺省情况下,连接日志只显示每个正在连接主机的IP地址.如果想要显示主机名,那么"
-"必须把它打开,但是这取决于主机名解析的设置,这在性能上不会有影响."
-
-#: utils/misc/guc.c:1314
-msgid "Causes subtables to be included by default in various commands."
-msgstr "使子表在不同的命令中被缺省包含"
-
-#: utils/misc/guc.c:1323
-msgid "Encrypt passwords."
-msgstr "加密口令."
+#: utils/misc/guc.c:1402
+msgid "By default, connection logs only show the IP address of the connecting host. If you want them to show the host name you can turn this on, but depending on your host name resolution setup it might impose a non-negligible performance penalty."
+msgstr "在缺省情况下,连接日志只显示每个正在连接主机的IP地址.如果想要显示主机名,那么必须把它打开,但是这取决于主机名解析的设置,这在性能上不会有影响."
-#: utils/misc/guc.c:1324
-msgid ""
-"When a password is specified in CREATE USER or ALTER USER without writing "
-"either ENCRYPTED or UNENCRYPTED, this parameter determines whether the "
-"password is to be encrypted."
-msgstr ""
-"当在 CREATE USER 或者 ALTER USER 语句中指定的口令没有用 ENCRYPTED 或者 "
-"UNENCRYPTED, 此参数确定口令是否加密."
-
-#: utils/misc/guc.c:1334
+#: utils/misc/guc.c:1413
msgid "Treats \"expr=NULL\" as \"expr IS NULL\"."
msgstr "\"expr=NULL\" 看作为 \"expr IS NULL\"."
-#: utils/misc/guc.c:1335
-msgid ""
-"When turned on, expressions of the form expr = NULL (or NULL = expr) are "
-"treated as expr IS NULL, that is, they return true if expr evaluates to the "
-"null value, and false otherwise. The correct behavior of expr = NULL is to "
-"always return null (unknown)."
-msgstr ""
-"当打开选项, expr = NULL (或 NULL = expr)形式的表达式会被当作expr IS NUL而进"
-"行处理, 那就是说,如果expr计算为空值那么会返回true,否则返回为false。表达式"
-"expr = NULL的正确行为应该是永远返回为空(未知)"
+#: utils/misc/guc.c:1414
+msgid "When turned on, expressions of the form expr = NULL (or NULL = expr) are treated as expr IS NULL, that is, they return true if expr evaluates to the null value, and false otherwise. The correct behavior of expr = NULL is to always return null (unknown)."
+msgstr "当打开选项, expr = NULL (或 NULL = expr)形式的表达式会被当作expr IS NUL而进行处理, 那就是说,如果expr计算为空值那么会返回true,否则返回为false。表达式expr = NULL的正确行为应该是永远返回为空(未知)"
-#: utils/misc/guc.c:1347
+#: utils/misc/guc.c:1426
msgid "Enables per-database user names."
msgstr "启用每个数据库的用户名"
-#: utils/misc/guc.c:1356
+#: utils/misc/guc.c:1435
msgid "Sets the default read-only status of new transactions."
msgstr "为新事物设置默认的只读状态."
-#: utils/misc/guc.c:1365
+#: utils/misc/guc.c:1444
msgid "Sets the current transaction's read-only status."
msgstr "设置当前事务的只读状态."
-#: utils/misc/guc.c:1375
+#: utils/misc/guc.c:1454
msgid "Sets the default deferrable status of new transactions."
msgstr "为新事物设置默认的可延迟状态."
-#: utils/misc/guc.c:1384
-msgid ""
-"Whether to defer a read-only serializable transaction until it can be "
-"executed with no possible serialization failures."
-msgstr ""
-"是否要延期执行一个只读可串行化事务,直到执行时不会出现任何可串行化失败."
+#: utils/misc/guc.c:1463
+msgid "Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures."
+msgstr "是否要延期执行一个只读可串行化事务,直到执行时不会出现任何可串行化失败."
-#: utils/misc/guc.c:1394
+#: utils/misc/guc.c:1473
msgid "Enable row security."
msgstr "启用行安全。"
# sql_help.h:117
-#: utils/misc/guc.c:1395
+#: utils/misc/guc.c:1474
msgid "When enabled, row security will be applied to all users."
msgstr "当被启用时,行安全性将被应用到所有用户。"
-#: utils/misc/guc.c:1403
+#: utils/misc/guc.c:1482
msgid "Check function bodies during CREATE FUNCTION."
msgstr "在创建函数过程中检查函数体."
-#: utils/misc/guc.c:1412
+#: utils/misc/guc.c:1491
msgid "Enable input of NULL elements in arrays."
msgstr "在数组中启用空值成员输入"
-#: utils/misc/guc.c:1413
-msgid ""
-"When turned on, unquoted NULL in an array input value means a null value; "
-"otherwise it is taken literally."
-msgstr ""
-"当打开这个选项的时候,在数组输入值中没有引用的NULL表示空值;否则是按照字面上的"
-"含义进行解释."
+#: utils/misc/guc.c:1492
+msgid "When turned on, unquoted NULL in an array input value means a null value; otherwise it is taken literally."
+msgstr "当打开这个选项的时候,在数组输入值中没有引用的NULL表示空值;否则是按照字面上的含义进行解释."
-#: utils/misc/guc.c:1423
+#: utils/misc/guc.c:1502
msgid "Create new tables with OIDs by default."
msgstr "缺省下使用OIDs来创建表."
-#: utils/misc/guc.c:1432
-msgid ""
-"Start a subprocess to capture stderr output and/or csvlogs into log files."
+#: utils/misc/guc.c:1511
+msgid "Start a subprocess to capture stderr output and/or csvlogs into log files."
msgstr "启动一个子进程用来捕获stderr输出或csvlogs,写到到日志文件中."
-#: utils/misc/guc.c:1441
+#: utils/misc/guc.c:1520
msgid "Truncate existing log files of same name during log rotation."
msgstr "在日志切换期间截断相同名称的日志文件"
-#: utils/misc/guc.c:1452
+#: utils/misc/guc.c:1531
msgid "Emit information about resource usage in sorting."
msgstr "发出在排序中关于资源使用的信息."
-#: utils/misc/guc.c:1466
+#: utils/misc/guc.c:1545
msgid "Generate debugging output for synchronized scanning."
msgstr "为同步扫描生成调试信息."
-#: utils/misc/guc.c:1481
+#: utils/misc/guc.c:1560
msgid "Enable bounded sorting using heap sort."
msgstr "使用堆排序来启用有界排序."
-#: utils/misc/guc.c:1494
+#: utils/misc/guc.c:1573
msgid "Emit WAL-related debugging output."
msgstr "发出与WAL相关的调试信息输出"
-#: utils/misc/guc.c:1506
+#: utils/misc/guc.c:1585
msgid "Datetimes are integer based."
msgstr "日期时间类型值是基于整数类型的"
-#: utils/misc/guc.c:1521
-msgid ""
-"Sets whether Kerberos and GSSAPI user names should be treated as case-"
-"insensitive."
+#: utils/misc/guc.c:1596
+msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive."
msgstr "设置 Kerberos和GSSAPI的用户名是否应该区分大小写."
-#: utils/misc/guc.c:1531
+#: utils/misc/guc.c:1606
msgid "Warn about backslash escapes in ordinary string literals."
msgstr "在顺序字符串文字中关于反斜线转义的警告"
-#: utils/misc/guc.c:1541
+#: utils/misc/guc.c:1616
msgid "Causes '...' strings to treat backslashes literally."
msgstr "使字符串'...' 按照字面含义处理反斜线"
-#: utils/misc/guc.c:1552
+#: utils/misc/guc.c:1627
msgid "Enable synchronized sequential scans."
msgstr "启用同步序列扫描"
-#: utils/misc/guc.c:1562
+#: utils/misc/guc.c:1637
msgid "Allows connections and queries during recovery."
msgstr "允许在恢复期间进行连接和查询."
-#: utils/misc/guc.c:1572
-msgid ""
-"Allows feedback from a hot standby to the primary that will avoid query "
-"conflicts."
+#: utils/misc/guc.c:1647
+msgid "Allows feedback from a hot standby to the primary that will avoid query conflicts."
msgstr "允许来自热备节点到主节点的响应,以避免查询冲突."
-#: utils/misc/guc.c:1582
+#: utils/misc/guc.c:1657
msgid "Allows modifications of the structure of system tables."
msgstr "允许修改系统表的结构."
-#: utils/misc/guc.c:1593
+#: utils/misc/guc.c:1668
msgid "Disables reading from system indexes."
msgstr "禁止从系统索引中进行读操作"
-#: utils/misc/guc.c:1594
-msgid ""
-"It does not prevent updating the indexes, so it is safe to use. The worst "
-"consequence is slowness."
+#: utils/misc/guc.c:1669
+msgid "It does not prevent updating the indexes, so it is safe to use. The worst consequence is slowness."
msgstr "这不能防止更新索引,所以应该安全的使用。最糟糕的结果是使系统性能变慢."
-#: utils/misc/guc.c:1605
-msgid ""
-"Enables backward compatibility mode for privilege checks on large objects."
+#: utils/misc/guc.c:1680
+msgid "Enables backward compatibility mode for privilege checks on large objects."
msgstr "为在大对象上的权限检查启用向后兼容模式."
-#: utils/misc/guc.c:1606
-msgid ""
-"Skips privilege checks when reading or modifying large objects, for "
-"compatibility with PostgreSQL releases prior to 9.0."
-msgstr ""
-"为了与9.0版本之前的PostgreSQL相兼容,在读取或修改大对象时候不进行权限检查"
+#: utils/misc/guc.c:1681
+msgid "Skips privilege checks when reading or modifying large objects, for compatibility with PostgreSQL releases prior to 9.0."
+msgstr "为了与9.0版本之前的PostgreSQL相兼容,在读取或修改大对象时候不进行权限检查"
-#: utils/misc/guc.c:1616
-msgid ""
-"Emit a warning for constructs that changed meaning since PostgreSQL 9.4."
+#: utils/misc/guc.c:1691
+msgid "Emit a warning for constructs that changed meaning since PostgreSQL 9.4."
msgstr "为从PostgreSQL 9.4以来改变了含义的结构发出一个警告。"
-#: utils/misc/guc.c:1626
+#: utils/misc/guc.c:1701
msgid "When generating SQL fragments, quote all identifiers."
msgstr "在生成SQL片段时,对所有标识符加引号括起来."
-#: utils/misc/guc.c:1636
+#: utils/misc/guc.c:1711
msgid "Shows whether data checksums are turned on for this cluster."
msgstr "显示当前簇是否开启数据校验和."
-#: utils/misc/guc.c:1647
+#: utils/misc/guc.c:1722
msgid "Add sequence number to syslog messages to avoid duplicate suppression."
msgstr "向 syslog 消息中增加序号以避免抑制重复。"
-#: utils/misc/guc.c:1657
+#: utils/misc/guc.c:1732
msgid "Split messages sent to syslog by lines and to fit into 1024 bytes."
msgstr "将发送给 syslog 的消息用行分离并且让每个部分适合于 1024 字节。"
-#: utils/misc/guc.c:1676
-msgid ""
-"Forces a switch to the next xlog file if a new file has not been started "
-"within N seconds."
-msgstr "如果新的文件没有在N秒内启动,那么强制切换到下一个xlog文件."
+#: utils/misc/guc.c:1742
+msgid "Controls whether Gather and Gather Merge also run subplans."
+msgstr "控制收集和收集合并是否也运行子计划."
+
+#: utils/misc/guc.c:1743
+msgid "Should gather nodes also run subplans, or just gather tuples?"
+msgstr "收集节点也应该运行子计划,或者只是收集元组?"
+
+#: utils/misc/guc.c:1752
+msgid "Allow JIT compilation."
+msgstr "允许JIT编译."
+
+#: utils/misc/guc.c:1762
+msgid "Register JIT compiled function with debugger."
+msgstr "向调试器注册JIT编译函数."
+
+#: utils/misc/guc.c:1779
+msgid "Write out LLVM bitcode to facilitate JIT debugging."
+msgstr "写出LLVM比特码,便于JIT调试."
+
+#: utils/misc/guc.c:1790
+msgid "Allow JIT compilation of expressions."
+msgstr "允许JIT编译表达式."
+
+#: utils/misc/guc.c:1801
+msgid "Register JIT compiled function with perf profiler."
+msgstr "用性能分析器注册JIT编译函数."
-#: utils/misc/guc.c:1687
+#: utils/misc/guc.c:1818
+msgid "Allow JIT compilation of tuple deforming."
+msgstr "允许对元组变形进行JIT编译."
+
+#: utils/misc/guc.c:1829
+msgid "Whether to continue running after a failure to sync data files."
+msgstr "同步数据文件失败后是否继续运行."
+
+#: utils/misc/guc.c:1847
+msgid "Forces a switch to the next WAL file if a new file has not been started within N seconds."
+msgstr "如果新的文件没有在N秒内启动,那么强制切换到下一个WAL文件."
+
+#: utils/misc/guc.c:1858
msgid "Waits N seconds on connection startup after authentication."
msgstr "完成认证后,在启动的连接上等待N秒"
-#: utils/misc/guc.c:1688 utils/misc/guc.c:2211
+#: utils/misc/guc.c:1859 utils/misc/guc.c:2410
msgid "This allows attaching a debugger to the process."
msgstr "允许将调试器添加到进程"
-#: utils/misc/guc.c:1697
+#: utils/misc/guc.c:1868
msgid "Sets the default statistics target."
msgstr "设置默认统计对象."
-#: utils/misc/guc.c:1698
-msgid ""
-"This applies to table columns that have not had a column-specific target set "
-"via ALTER TABLE SET STATISTICS."
+#: utils/misc/guc.c:1869
+msgid "This applies to table columns that have not had a column-specific target set via ALTER TABLE SET STATISTICS."
msgstr "在没有通过ALTER TABLE SET STATISTICS产生列定义目标集合的列上使用."
-#: utils/misc/guc.c:1707
+#: utils/misc/guc.c:1878
msgid "Sets the FROM-list size beyond which subqueries are not collapsed."
msgstr "所设置的FROM列表大小超过子查询所允许的最大长度"
-#: utils/misc/guc.c:1709
-msgid ""
-"The planner will merge subqueries into upper queries if the resulting FROM "
-"list would have no more than this many items."
-msgstr ""
-"如果所产生的FROM列表成员不超过上层查询的相应的数量,那么计划器会把子查询合并到"
-"上层查询中."
+#: utils/misc/guc.c:1880
+msgid "The planner will merge subqueries into upper queries if the resulting FROM list would have no more than this many items."
+msgstr "如果所产生的FROM列表成员不超过上层查询的相应的数量,那么计划器会把子查询合并到上层查询中."
-#: utils/misc/guc.c:1719
+#: utils/misc/guc.c:1890
msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened."
msgstr "设置的FROM列表大小超过没有展平的JOIN结构大小."
-#: utils/misc/guc.c:1721
-msgid ""
-"The planner will flatten explicit JOIN constructs into lists of FROM items "
-"whenever a list of no more than this many items would result."
-msgstr ""
-"无论什么时候产生不超过这个数量的成员,计划器都将显式的JOIN结构展平到FROM子句后"
-"面的成员列表中."
+#: utils/misc/guc.c:1892
+msgid "The planner will flatten explicit JOIN constructs into lists of FROM items whenever a list of no more than this many items would result."
+msgstr "无论什么时候产生不超过这个数量的成员,计划器都将显式的JOIN结构展平到FROM子句后面的成员列表中."
-#: utils/misc/guc.c:1731
+#: utils/misc/guc.c:1902
msgid "Sets the threshold of FROM items beyond which GEQO is used."
msgstr "设置超过GEQO使用的FROM列表成员数量门限值."
-#: utils/misc/guc.c:1740
+#: utils/misc/guc.c:1911
msgid "GEQO: effort is used to set the default for other GEQO parameters."
msgstr "GEQO: 为其它GEQO参数设置缺省值"
-#: utils/misc/guc.c:1749
+#: utils/misc/guc.c:1920
msgid "GEQO: number of individuals in the population."
msgstr "GEQO: 人群 (population) 个体 (individual) 数"
-#: utils/misc/guc.c:1750 utils/misc/guc.c:1759
+#: utils/misc/guc.c:1921 utils/misc/guc.c:1930
msgid "Zero selects a suitable default value."
msgstr "没有选择出一个合适的缺省值"
-#: utils/misc/guc.c:1758
+#: utils/misc/guc.c:1929
msgid "GEQO: number of iterations of the algorithm."
msgstr "GEQO: 算法的迭代次数"
-#: utils/misc/guc.c:1769
+#: utils/misc/guc.c:1940
msgid "Sets the time to wait on a lock before checking for deadlock."
msgstr "在检查死锁前设置在一个锁上的等待时间."
-#: utils/misc/guc.c:1780
-msgid ""
-"Sets the maximum delay before canceling queries when a hot standby server is "
-"processing archived WAL data."
+#: utils/misc/guc.c:1951
+msgid "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data."
msgstr "当热备服务器在处理已归档的WAL数据时,在取消查询请求前设置最大的延迟."
-#: utils/misc/guc.c:1791
-msgid ""
-"Sets the maximum delay before canceling queries when a hot standby server is "
-"processing streamed WAL data."
-msgstr ""
-"当热备服务器在处理通过流复制的WAL数据时,在取消查询请求前设置最大的延迟."
+#: utils/misc/guc.c:1962
+msgid "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data."
+msgstr "当热备服务器在处理通过流复制的WAL数据时,在取消查询请求前设置最大的延迟."
-#: utils/misc/guc.c:1802
-msgid ""
-"Sets the maximum interval between WAL receiver status reports to the primary."
+#: utils/misc/guc.c:1973
+msgid "Sets the maximum interval between WAL receiver status reports to the primary."
msgstr "为WAL接受进程的状态报告(向主节点)设置最大时间间隔."
-#: utils/misc/guc.c:1813
+#: utils/misc/guc.c:1984
msgid "Sets the maximum wait time to receive data from the primary."
msgstr "设置从主节点上接收数据的最大等待时间."
-#: utils/misc/guc.c:1824
+#: utils/misc/guc.c:1995
msgid "Sets the maximum number of concurrent connections."
msgstr "设置并发联接的最大个数."
-#: utils/misc/guc.c:1834
+#: utils/misc/guc.c:2006
msgid "Sets the number of connection slots reserved for superusers."
msgstr "设置为超级用户保留的联接数."
-#: utils/misc/guc.c:1848
+#: utils/misc/guc.c:2020
msgid "Sets the number of shared memory buffers used by the server."
msgstr "设置服务器使用的共享内存缓冲区的数量."
-#: utils/misc/guc.c:1859
+#: utils/misc/guc.c:2031
msgid "Sets the maximum number of temporary buffers used by each session."
msgstr "设置每个会话可使用的临时缓冲区的最大数量."
-#: utils/misc/guc.c:1870
+#: utils/misc/guc.c:2042
msgid "Sets the TCP port the server listens on."
msgstr "设置服务器监听的 TCP 端口号."
-#: utils/misc/guc.c:1880
+#: utils/misc/guc.c:2052
msgid "Sets the access permissions of the Unix-domain socket."
msgstr "设置 Unix-domain 套接字的访问权限."
-#: utils/misc/guc.c:1881
-msgid ""
-"Unix-domain sockets use the usual Unix file system permission set. The "
-"parameter value is expected to be a numeric mode specification in the form "
-"accepted by the chmod and umask system calls. (To use the customary octal "
-"format the number must start with a 0 (zero).)"
-msgstr ""
-"Unix-domain 套接字使用普通的Unix文件许可集合.参数值应该是数值模式定义, 它的形"
-"式应该是系统调用chmod和umask可接受的.(为了使用习惯上以0开头的八进制格式数值)"
+#: utils/misc/guc.c:2053
+msgid "Unix-domain sockets use the usual Unix file system permission set. The parameter value is expected to be a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
+msgstr "Unix-domain 套接字使用普通的Unix文件许可集合.参数值应该是数值模式定义, 它的形式应该是系统调用chmod和umask可接受的.(为了使用习惯上以0开头的八进制格式数值)"
-#: utils/misc/guc.c:1895
+#: utils/misc/guc.c:2067
msgid "Sets the file permissions for log files."
msgstr "设置日志文件的文件访问权限."
-#: utils/misc/guc.c:1896
-msgid ""
-"The parameter value is expected to be a numeric mode specification in the "
-"form accepted by the chmod and umask system calls. (To use the customary "
-"octal format the number must start with a 0 (zero).)"
-msgstr ""
-"参数值期望使用数值模式来指定, 它的形式应该是系统调用chmod和umask可接受的.(为"
-"了使用习惯上以0开头的八进制格式数值)"
+#: utils/misc/guc.c:2068
+msgid "The parameter value is expected to be a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
+msgstr "参数值期望使用数值模式来指定, 它的形式应该是系统调用chmod和umask可接受的.(为了使用习惯上以0开头的八进制格式数值)"
-#: utils/misc/guc.c:1909
+#: utils/misc/guc.c:2082
+msgid "Mode of the data directory."
+msgstr "数据目录的模式."
+
+#: utils/misc/guc.c:2083
+msgid "The parameter value is a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
+msgstr "参数使用数值模式来指定, 它的形式应该是系统调用chmod和umask可接受的.(为了使用习惯上以0开头的八进制格式数值)"
+
+#: utils/misc/guc.c:2096
msgid "Sets the maximum memory to be used for query workspaces."
msgstr "设置查询工作空间使用的最大内存数."
-#: utils/misc/guc.c:1910
-msgid ""
-"This much memory can be used by each internal sort operation and hash table "
-"before switching to temporary disk files."
-msgstr ""
-"这些内存将可以由每一个内部排序操作和转换到临时磁盘文件之前的散列表来使用"
+#: utils/misc/guc.c:2097
+msgid "This much memory can be used by each internal sort operation and hash table before switching to temporary disk files."
+msgstr "这些内存将可以由每一个内部排序操作和转换到临时磁盘文件之前的散列表来使用"
-#: utils/misc/guc.c:1922
+#: utils/misc/guc.c:2109
msgid "Sets the maximum memory to be used for maintenance operations."
msgstr "设置维护操作使用的最大内存数."
-#: utils/misc/guc.c:1923
+#: utils/misc/guc.c:2110
msgid "This includes operations such as VACUUM and CREATE INDEX."
msgstr "此处动作包括 VACUUM 和 CREATE INDEX."
-#: utils/misc/guc.c:1933
-#| msgid "Sets the maximum number of temporary buffers used by each session."
-msgid ""
-"Sets the maximum number of tuples to be sorted using replacement selection."
-msgstr "设定要使用替换选择进行排序的最大元组数。"
-
-#: utils/misc/guc.c:1934
-msgid "When more tuples than this are present, quicksort will be used."
-msgstr "当存在超过这么多个元组时,将使用快速排序。"
-
-#: utils/misc/guc.c:1948
+#: utils/misc/guc.c:2125
msgid "Sets the maximum stack depth, in kilobytes."
msgstr "设置最大的堆栈深度,单位是千字节."
-#: utils/misc/guc.c:1959
-msgid "Limits the total size of all temporary files used by each session."
-msgstr "为每个会话可使用的所有临时文件限制最大大小."
+#: utils/misc/guc.c:2136
+msgid "Limits the total size of all temporary files used by each process."
+msgstr "限制每个进程使用的所有临时文件的总大小."
-#: utils/misc/guc.c:1960
+#: utils/misc/guc.c:2137
msgid "-1 means no limit."
msgstr "-1 意指没有限制."
-#: utils/misc/guc.c:1970
+#: utils/misc/guc.c:2147
msgid "Vacuum cost for a page found in the buffer cache."
msgstr "在缓冲区缓存中找到对于一个页进行清理的开销."
-#: utils/misc/guc.c:1980
+#: utils/misc/guc.c:2157
msgid "Vacuum cost for a page not found in the buffer cache."
msgstr "在缓冲区缓存中没有找到对于一个页进行清理的开销."
-#: utils/misc/guc.c:1990
+#: utils/misc/guc.c:2167
msgid "Vacuum cost for a page dirtied by vacuum."
msgstr "由vacuum进程对脏页进行清理的开销."
-#: utils/misc/guc.c:2000
+#: utils/misc/guc.c:2177
msgid "Vacuum cost amount available before napping."
msgstr "在暂停前可用的清理开销总量."
-#: utils/misc/guc.c:2010
+#: utils/misc/guc.c:2187
msgid "Vacuum cost delay in milliseconds."
msgstr "Vacuum开销延迟是以毫秒为单位"
-#: utils/misc/guc.c:2021
+#: utils/misc/guc.c:2198
msgid "Vacuum cost delay in milliseconds, for autovacuum."
msgstr "对于autovacuum来说,Vacuum开销延迟是以毫秒为单位"
-#: utils/misc/guc.c:2032
+#: utils/misc/guc.c:2209
msgid "Vacuum cost amount available before napping, for autovacuum."
msgstr "对于autovacuum进程,在暂停前前进行清理有效开销总量."
-#: utils/misc/guc.c:2042
-msgid ""
-"Sets the maximum number of simultaneously open files for each server process."
+#: utils/misc/guc.c:2219
+msgid "Sets the maximum number of simultaneously open files for each server process."
msgstr "设置每一个服务器进程同时打开文件的最大个数."
-#: utils/misc/guc.c:2055
+#: utils/misc/guc.c:2232
msgid "Sets the maximum number of simultaneously prepared transactions."
msgstr "设置同步的已准备好事务的最大个数."
-#: utils/misc/guc.c:2066
+#: utils/misc/guc.c:2243
msgid "Sets the minimum OID of tables for tracking locks."
msgstr "设置跟踪锁的表的最小OID."
-#: utils/misc/guc.c:2067
+#: utils/misc/guc.c:2244
msgid "Is used to avoid output on system tables."
msgstr "用于避免输出到系统表."
-#: utils/misc/guc.c:2076
+#: utils/misc/guc.c:2253
msgid "Sets the OID of the table with unconditionally lock tracing."
msgstr "设置无条件锁追踪的表的OID."
-#: utils/misc/guc.c:2088
+#: utils/misc/guc.c:2265
msgid "Sets the maximum allowed duration of any statement."
msgstr "设置任何语句执行时间的最大值 (单位毫秒)."
-#: utils/misc/guc.c:2089 utils/misc/guc.c:2100 utils/misc/guc.c:2111
+#: utils/misc/guc.c:2266 utils/misc/guc.c:2277 utils/misc/guc.c:2288
msgid "A value of 0 turns off the timeout."
msgstr "值为 0 的时候关闭超时."
-#: utils/misc/guc.c:2099
+#: utils/misc/guc.c:2276
msgid "Sets the maximum allowed duration of any wait for a lock."
msgstr "等待锁的的最长时间值."
-#: utils/misc/guc.c:2110
-#| msgid "Sets the maximum allowed duration of any statement."
+#: utils/misc/guc.c:2287
msgid "Sets the maximum allowed duration of any idling transaction."
msgstr "设定任何空载事务的最大允许持续时间。"
-#: utils/misc/guc.c:2121
+#: utils/misc/guc.c:2298
msgid "Minimum age at which VACUUM should freeze a table row."
msgstr "VACUUM应该冻结一行记录的最小时间."
-#: utils/misc/guc.c:2131
+#: utils/misc/guc.c:2308
msgid "Age at which VACUUM should scan whole table to freeze tuples."
msgstr "这是VACUUM应该扫描整个表来冻结元组的时候."
-#: utils/misc/guc.c:2141
+#: utils/misc/guc.c:2318
msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row."
msgstr "VACUUM用于冻结表中某行对应的MultiXactId的最小时间范围."
-#: utils/misc/guc.c:2151
+#: utils/misc/guc.c:2328
msgid "Multixact age at which VACUUM should scan whole table to freeze tuples."
msgstr "这是VACUUM应该扫描整个表来冻结元组的事务时间范围."
-#: utils/misc/guc.c:2161
-msgid ""
-"Number of transactions by which VACUUM and HOT cleanup should be deferred, "
-"if any."
+#: utils/misc/guc.c:2338
+msgid "Number of transactions by which VACUUM and HOT cleanup should be deferred, if any."
msgstr "VACUUM和热清理操作应该延迟的事务数量."
-#: utils/misc/guc.c:2174
+#: utils/misc/guc.c:2351
msgid "Sets the maximum number of locks per transaction."
msgstr "设置每一个事物锁的最大个数."
-#: utils/misc/guc.c:2175
-msgid ""
-"The shared lock table is sized on the assumption that at most "
-"max_locks_per_transaction * max_connections distinct objects will need to be "
-"locked at any one time."
-msgstr ""
-"持有共享锁表的大小是基于最多max_locks_per_transaction * max_connections个不同"
-"对象需要在任何时刻被锁定的假设来指定的."
+#: utils/misc/guc.c:2352
+msgid "The shared lock table is sized on the assumption that at most max_locks_per_transaction * max_connections distinct objects will need to be locked at any one time."
+msgstr "持有共享锁表的大小是基于最多max_locks_per_transaction * max_connections个不同对象需要在任何时刻被锁定的假设来指定的."
-#: utils/misc/guc.c:2186
+#: utils/misc/guc.c:2363
msgid "Sets the maximum number of predicate locks per transaction."
msgstr "设置每一个事物的断言锁的最大个数."
-#: utils/misc/guc.c:2187
-msgid ""
-"The shared predicate lock table is sized on the assumption that at most "
-"max_pred_locks_per_transaction * max_connections distinct objects will need "
-"to be locked at any one time."
-msgstr ""
-"共享断言锁表的大小是基于最多max_locks_per_transaction * max_connections个不同"
-"对象需要在任何时刻被锁定的假设来指定的."
+#: utils/misc/guc.c:2364
+msgid "The shared predicate lock table is sized on the assumption that at most max_pred_locks_per_transaction * max_connections distinct objects will need to be locked at any one time."
+msgstr "共享断言锁表的大小是基于最多max_locks_per_transaction * max_connections个不同对象需要在任何时刻被锁定的假设来指定的."
-#: utils/misc/guc.c:2198
+#: utils/misc/guc.c:2375
+msgid "Sets the maximum number of predicate-locked pages and tuples per relation."
+msgstr "设置每个关系的断言锁定页和元组的最大数目."
+
+#: utils/misc/guc.c:2376
+msgid "If more than this total of pages and tuples in the same relation are locked by a connection, those locks are replaced by a relation-level lock."
+msgstr "如果一个连接锁定了同一关系中超过此总数的页和元组,则这些锁将替换为关系级别锁."
+
+#: utils/misc/guc.c:2386
+msgid "Sets the maximum number of predicate-locked tuples per page."
+msgstr "设置每页断言锁定元组的最大数目."
+
+#: utils/misc/guc.c:2387
+msgid "If more than this number of tuples on the same page are locked by a connection, those locks are replaced by a page-level lock."
+msgstr "如果一个连接锁定了同一页上超过此数目的元组,则这些锁将被页级锁替换."
+
+#: utils/misc/guc.c:2397
msgid "Sets the maximum allowed time to complete client authentication."
msgstr "设置完成客户端认证的需要等待的最长时间"
-#: utils/misc/guc.c:2210
+#: utils/misc/guc.c:2409
msgid "Waits N seconds on connection startup before authentication."
msgstr "在认证前在连接启动上需要等待N秒"
-#: utils/misc/guc.c:2221
+#: utils/misc/guc.c:2420
msgid "Sets the number of WAL files held for standby servers."
msgstr "设置用于备用服务器而持有WAL文件的数量."
-#: utils/misc/guc.c:2231
+#: utils/misc/guc.c:2430
msgid "Sets the minimum size to shrink the WAL to."
msgstr "设置要把WAL收缩到的最小尺寸。"
-#: utils/misc/guc.c:2242
+#: utils/misc/guc.c:2442
msgid "Sets the WAL size that triggers a checkpoint."
msgstr "设置触发一次检查点的WAL尺寸。"
-#: utils/misc/guc.c:2253
+#: utils/misc/guc.c:2454
msgid "Sets the maximum time between automatic WAL checkpoints."
msgstr "设置两次自动WAL检查点事件之间需要等待的最大时间"
-#: utils/misc/guc.c:2264
-msgid ""
-"Enables warnings if checkpoint segments are filled more frequently than this."
+#: utils/misc/guc.c:2465
+msgid "Enables warnings if checkpoint segments are filled more frequently than this."
msgstr "如果检查点段的填充频度超过了最大值,启用警告功能。"
-#: utils/misc/guc.c:2266
-msgid ""
-"Write a message to the server log if checkpoints caused by the filling of "
-"checkpoint segment files happens more frequently than this number of "
-"seconds. Zero turns off the warning."
-msgstr ""
-"如果检查点事件是由于填充检查点段比这个数量的秒数更加频繁所引起,那么会向服务"
-"器日志写一条消息. 如果把参数设置为0,那么可以关掉警告功能."
+#: utils/misc/guc.c:2467
+msgid "Write a message to the server log if checkpoints caused by the filling of checkpoint segment files happens more frequently than this number of seconds. Zero turns off the warning."
+msgstr "如果检查点事件是由于填充检查点段比这个数量的秒数更加频繁所引起,那么会向服务器日志写一条消息. 如果把参数设置为0,那么可以关掉警告功能."
+
+#: utils/misc/guc.c:2479 utils/misc/guc.c:2636 utils/misc/guc.c:2664
+msgid "Number of pages after which previously performed writes are flushed to disk."
+msgstr "页面数,在此之后以前执行的写操作会被刷写到磁盘。"
-#: utils/misc/guc.c:2278
+#: utils/misc/guc.c:2490
msgid "Sets the number of disk-page buffers in shared memory for WAL."
msgstr "为 WAL 设置共享内存中磁盘页缓冲区的个数."
-#: utils/misc/guc.c:2289
+#: utils/misc/guc.c:2501
msgid "Time between WAL flushes performed in the WAL writer."
msgstr "WAL 写入器中执行 WAL 刷写之间的时间。"
-#: utils/misc/guc.c:2300
-msgid "Amount of WAL written out by WAL writer triggering a flush."
+#: utils/misc/guc.c:2512
+msgid "Amount of WAL written out by WAL writer that triggers a flush."
msgstr "触发一次刷写的 WAL 写入器写出的 WAL 数量。"
-#: utils/misc/guc.c:2312
+#: utils/misc/guc.c:2524
msgid "Sets the maximum number of simultaneously running WAL sender processes."
msgstr "设置同时运行的WAL发送进程最大数量"
-#: utils/misc/guc.c:2323
+#: utils/misc/guc.c:2535
msgid "Sets the maximum number of simultaneously defined replication slots."
msgstr "设置同步的已定义复制槽的最大数."
-#: utils/misc/guc.c:2333
+#: utils/misc/guc.c:2545
msgid "Sets the maximum time to wait for WAL replication."
msgstr "设置最大时间,等待WAL复制."
-#: utils/misc/guc.c:2344
-msgid ""
-"Sets the delay in microseconds between transaction commit and flushing WAL "
-"to disk."
+#: utils/misc/guc.c:2556
+msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk."
msgstr "设置事物提交和刷新 WAL 到磁盘间的延迟时间, 单位微秒."
-#: utils/misc/guc.c:2356
-msgid ""
-"Sets the minimum concurrent open transactions before performing commit_delay."
+#: utils/misc/guc.c:2568
+msgid "Sets the minimum concurrent open transactions before performing commit_delay."
msgstr "在执行commit_delay前,设置最少的可同步打开事务的数量."
-#: utils/misc/guc.c:2367
+#: utils/misc/guc.c:2579
msgid "Sets the number of digits displayed for floating-point values."
msgstr "设置浮点数显示的位数."
-#: utils/misc/guc.c:2368
-msgid ""
-"This affects real, double precision, and geometric data types. The parameter "
-"value is added to the standard number of digits (FLT_DIG or DBL_DIG as "
-"appropriate)."
-msgstr ""
-"这将影响实数,双精度类型和几何数据类型.参数被加到位数的标准数量(视情况而定,可"
-"能是FLT_DIG或DBL_DIG)"
+#: utils/misc/guc.c:2580
+msgid "This affects real, double precision, and geometric data types. The parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate)."
+msgstr "这将影响实数,双精度类型和几何数据类型.参数被加到位数的标准数量(视情况而定,可能是FLT_DIG或DBL_DIG)"
-#: utils/misc/guc.c:2379
+#: utils/misc/guc.c:2591
msgid "Sets the minimum execution time above which statements will be logged."
msgstr "设置最小执行时间,执行时间大于等于这个值的语句都将被记录."
-#: utils/misc/guc.c:2381
+#: utils/misc/guc.c:2593
msgid "Zero prints all queries. -1 turns this feature off."
-msgstr ""
-"如果值设置为0,那么打印出所有查询. 如果设置为-1,那么将把这个功能特性关闭"
+msgstr "如果值设置为0,那么打印出所有查询. 如果设置为-1,那么将把这个功能特性关闭"
-#: utils/misc/guc.c:2391
-msgid ""
-"Sets the minimum execution time above which autovacuum actions will be "
-"logged."
-msgstr ""
-"设置最小执行时间,如果autovacuum操作时间大于等于这个值,那么将记录这些操作."
+#: utils/misc/guc.c:2603
+msgid "Sets the minimum execution time above which autovacuum actions will be logged."
+msgstr "设置最小执行时间,如果autovacuum操作时间大于等于这个值,那么将记录这些操作."
-#: utils/misc/guc.c:2393
+#: utils/misc/guc.c:2605
msgid "Zero prints all actions. -1 turns autovacuum logging off."
msgstr "0表示打印出所有的操作.-1表示关闭对autovacuum的日志记录功能"
-#: utils/misc/guc.c:2403
+#: utils/misc/guc.c:2615
msgid "Background writer sleep time between rounds."
msgstr "后台写入进程 (Background writer) 两次运行之间的休眠时间."
-#: utils/misc/guc.c:2414
+#: utils/misc/guc.c:2626
msgid "Background writer maximum number of LRU pages to flush per round."
msgstr "后台写入进程 (Background writer) 每次可刷新LRU页的最大数量"
-#: utils/misc/guc.c:2426
-msgid ""
-"Number of simultaneous requests that can be handled efficiently by the disk "
-"subsystem."
+#: utils/misc/guc.c:2649
+msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem."
msgstr "可以由磁盘子系统有效处理的并发请求数量."
-#: utils/misc/guc.c:2427
-msgid ""
-"For RAID arrays, this should be approximately the number of drive spindles "
-"in the array."
+#: utils/misc/guc.c:2650
+msgid "For RAID arrays, this should be approximately the number of drive spindles in the array."
msgstr "对于RAID磁盘阵列来说,同步可处理的请求与磁盘阵列中磁盘数量应该相近."
-#: utils/misc/guc.c:2440 utils/misc/guc.c:2452 utils/misc/guc.c:2464
-msgid ""
-"Number of pages after which previously performed writes are flushed to disk."
-msgstr "页面数,在此之后以前执行的写操作会被刷写到磁盘。"
-
-#: utils/misc/guc.c:2478
+#: utils/misc/guc.c:2677
msgid "Maximum number of concurrent worker processes."
msgstr "最大并发工作进程数."
-#: utils/misc/guc.c:2488
+#: utils/misc/guc.c:2689
+msgid "Maximum number of logical replication worker processes."
+msgstr "逻辑复制工作进程的最大数目."
+
+#: utils/misc/guc.c:2701
+msgid "Maximum number of table synchronization workers per subscription."
+msgstr "每个订阅的表同步工作线程的最大数目."
+
+#: utils/misc/guc.c:2711
msgid "Automatic log file rotation will occur after N minutes."
msgstr "在N分钟后将会产生自动日志文件切换."
-#: utils/misc/guc.c:2499
+#: utils/misc/guc.c:2722
msgid "Automatic log file rotation will occur after N kilobytes."
msgstr "当写入了N千字节会发生自动日志文件切换"
-#: utils/misc/guc.c:2510
+#: utils/misc/guc.c:2733
msgid "Shows the maximum number of function arguments."
msgstr "显示函数参数的最大个数."
-#: utils/misc/guc.c:2521
+#: utils/misc/guc.c:2744
msgid "Shows the maximum number of index keys."
msgstr "显示索引键值的最大个数."
-#: utils/misc/guc.c:2532
+#: utils/misc/guc.c:2755
msgid "Shows the maximum identifier length."
msgstr "显示标识符最大长度"
-#: utils/misc/guc.c:2543
+#: utils/misc/guc.c:2766
msgid "Shows the size of a disk block."
msgstr "显示一个磁盘块的大小"
-#: utils/misc/guc.c:2554
+#: utils/misc/guc.c:2777
msgid "Shows the number of pages per disk file."
msgstr "显示在每个磁盘文件中页的数量."
-#: utils/misc/guc.c:2565
+#: utils/misc/guc.c:2788
msgid "Shows the block size in the write ahead log."
msgstr "显示预写日志中的块大小."
-#: utils/misc/guc.c:2576
-msgid ""
-"Sets the time to wait before retrying to retrieve WAL after a failed attempt."
+#: utils/misc/guc.c:2799
+msgid "Sets the time to wait before retrying to retrieve WAL after a failed attempt."
msgstr "设置在尝试失败后重试检索WAL之前要等待的时间。"
-#: utils/misc/guc.c:2588
-msgid "Shows the number of pages per write ahead log segment."
-msgstr "显示æ¯\8f个é¢\84å\86\99æ\97¥å¿\97段ä¸é¡µç\9a\84æ\95°é\87\8f."
+#: utils/misc/guc.c:2811
+msgid "Shows the size of write ahead log segments."
+msgstr "显示é¢\84å\86\99æ\97¥å¿\97段ç\9a\84大å°\8f."
-#: utils/misc/guc.c:2601
+#: utils/misc/guc.c:2824
msgid "Time to sleep between autovacuum runs."
msgstr "两次运行autovacuum进程的休眠时间"
-#: utils/misc/guc.c:2611
+#: utils/misc/guc.c:2834
msgid "Minimum number of tuple updates or deletes prior to vacuum."
msgstr "设置激活清理操作所需要最小数量的更新或删除元组."
-#: utils/misc/guc.c:2620
+#: utils/misc/guc.c:2843
msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze."
msgstr "分析前可插入,更新或删除元组的最小数量"
-#: utils/misc/guc.c:2630
-msgid ""
-"Age at which to autovacuum a table to prevent transaction ID wraparound."
+#: utils/misc/guc.c:2853
+msgid "Age at which to autovacuum a table to prevent transaction ID wraparound."
msgstr "这是应该自动清理一张表以避免事务ID重叠的时间段."
-#: utils/misc/guc.c:2641
-msgid ""
-"Multixact age at which to autovacuum a table to prevent multixact wraparound."
+#: utils/misc/guc.c:2864
+msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound."
msgstr "自动清理一张表以避免事务ID重叠的时间范围."
-#: utils/misc/guc.c:2651
-msgid ""
-"Sets the maximum number of simultaneously running autovacuum worker "
-"processes."
+#: utils/misc/guc.c:2874
+msgid "Sets the maximum number of simultaneously running autovacuum worker processes."
msgstr "设置最大可同时运行的autovacuum工作进程数量"
-#: utils/misc/guc.c:2661
-#| msgid "Sets the maximum number of predicate locks per transaction."
+#: utils/misc/guc.c:2884
+msgid "Sets the maximum number of parallel processes per maintenance operation."
+msgstr "设置每个维护操作的最大并行进程数."
+
+#: utils/misc/guc.c:2894
msgid "Sets the maximum number of parallel processes per executor node."
msgstr "设定一个执行器节点上的最大并行进程数。"
-#: utils/misc/guc.c:2671
+#: utils/misc/guc.c:2904
+msgid "Sets the maximum number of parallel workers that can be active at one time."
+msgstr "设置一次可以激活的最大并行工作数."
+
+#: utils/misc/guc.c:2914
msgid "Sets the maximum memory to be used by each autovacuum worker process."
msgstr "设置每个自动清理(autovacuum)工作进程要使用的最大内存数."
-#: utils/misc/guc.c:2682
-msgid ""
-"Time before a snapshot is too old to read pages changed after the snapshot "
-"was taken."
+#: utils/misc/guc.c:2925
+msgid "Time before a snapshot is too old to read pages changed after the snapshot was taken."
msgstr "快照在被取得多久以后,会变得对于读取改变的页面太旧。"
-#: utils/misc/guc.c:2683
-#| msgid "A value of 0 uses the system default."
+#: utils/misc/guc.c:2926
msgid "A value of -1 disables this feature."
msgstr "值为 -1 将禁用这个特性."
-#: utils/misc/guc.c:2693
+#: utils/misc/guc.c:2936
msgid "Time between issuing TCP keepalives."
msgstr "启动TCP存活定时器的间隔"
-#: utils/misc/guc.c:2694 utils/misc/guc.c:2705
+#: utils/misc/guc.c:2937 utils/misc/guc.c:2948
msgid "A value of 0 uses the system default."
msgstr "值为0的时候表示系统缺省值"
-#: utils/misc/guc.c:2704
+#: utils/misc/guc.c:2947
msgid "Time between TCP keepalive retransmits."
msgstr "在两次TCP存活启动器重新传送之间需要花费的时间"
-#: utils/misc/guc.c:2715
-#| msgid "SSL regenotiation is no longer supported; this can only be 0."
+#: utils/misc/guc.c:2958
msgid "SSL renegotiation is no longer supported; this can only be 0."
msgstr "SSL 重协商已经不再被支持,这里只能是 0。"
-#: utils/misc/guc.c:2726
+#: utils/misc/guc.c:2969
msgid "Maximum number of TCP keepalive retransmits."
msgstr "设置每一个事物锁的最大个数."
-#: utils/misc/guc.c:2727
-msgid ""
-"This controls the number of consecutive keepalive retransmits that can be "
-"lost before a connection is considered dead. A value of 0 uses the system "
-"default."
-msgstr ""
-"用于控制连续存活器再次传输数量,这些存活器重在连接被认为断开前会丢失.值0用于"
-"表示系统缺省."
+#: utils/misc/guc.c:2970
+msgid "This controls the number of consecutive keepalive retransmits that can be lost before a connection is considered dead. A value of 0 uses the system default."
+msgstr "用于控制连续存活器再次传输数量,这些存活器重在连接被认为断开前会丢失.值0用于表示系统缺省."
-#: utils/misc/guc.c:2738
+#: utils/misc/guc.c:2981
msgid "Sets the maximum allowed result for exact search by GIN."
msgstr "设置由GIN进行的精确搜索所允许的最大允许结果."
-#: utils/misc/guc.c:2749
-msgid "Sets the planner's assumption about the size of the disk cache."
-msgstr "设置关于计划器对磁盘缓冲大小的假设."
+#: utils/misc/guc.c:2992
+msgid "Sets the planner's assumption about the total size of the data caches."
+msgstr "设置查询计划器对数据缓存总大小的假设."
-#: utils/misc/guc.c:2750
-msgid ""
-"That is, the portion of the kernel's disk cache that will be used for "
-"PostgreSQL data files. This is measured in disk pages, which are normally 8 "
-"kB each."
-msgstr "将要用于存储PostgreSQL数据文件的内核磁盘缓冲部分,以8K大小的页为单位."
+#: utils/misc/guc.c:2993
+msgid "That is, the total size of the caches (kernel cache and shared buffers) used for PostgreSQL data files. This is measured in disk pages, which are normally 8 kB each."
+msgstr "PostgreSQL数据文件使用的缓存(内核缓存和共享缓冲区)的总大小,这是以磁盘页为单位测量的,通常每个磁盘页为8KB."
+
+#: utils/misc/guc.c:3004
+msgid "Sets the minimum amount of table data for a parallel scan."
+msgstr "为并行扫描设置表数据的最小量."
+
+#: utils/misc/guc.c:3005
+msgid "If the planner estimates that it will read a number of table pages too small to reach this limit, a parallel scan will not be considered."
+msgstr "如果查询计划器估计它将读取的表页太小,无法达到此限制,则不会考虑并行扫描."
+
+#: utils/misc/guc.c:3015
+msgid "Sets the minimum amount of index data for a parallel scan."
+msgstr "设置并行扫描的最小索引数据量."
-#: utils/misc/guc.c:2763
+#: utils/misc/guc.c:3016
+msgid "If the planner estimates that it will read a number of index pages too small to reach this limit, a parallel scan will not be considered."
+msgstr "如果查询计划器估计它将读取的索引页太小,无法达到此限制,则不会考虑并行扫描."
+
+#: utils/misc/guc.c:3027
msgid "Shows the server version as an integer."
msgstr "以整数的形式显示服务器版本信息."
-#: utils/misc/guc.c:2774
+#: utils/misc/guc.c:3038
msgid "Log the use of temporary files larger than this number of kilobytes."
msgstr "记录对超过这个数量(以千字节为单位)的临时文件的使用."
-#: utils/misc/guc.c:2775
+#: utils/misc/guc.c:3039
msgid "Zero logs all files. The default is -1 (turning this feature off)."
msgstr "如果设置为0,打印所有查询. 默认值为 -1 (表示关闭此功能)."
-#: utils/misc/guc.c:2785
+#: utils/misc/guc.c:3049
msgid "Sets the size reserved for pg_stat_activity.query, in bytes."
msgstr "设置为pg_stat_activity.query所保留的空间大小,以字节为单位."
-#: utils/misc/guc.c:2800
+#: utils/misc/guc.c:3060
msgid "Sets the maximum size of the pending list for GIN index."
msgstr "为GIN索引设置待处理列表的最大尺寸。"
-#: utils/misc/guc.c:2820
-msgid ""
-"Sets the planner's estimate of the cost of a sequentially fetched disk page."
+#: utils/misc/guc.c:3080
+msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page."
msgstr "设置计划器对顺序获取磁盘页的开销估算"
-#: utils/misc/guc.c:2830
-msgid ""
-"Sets the planner's estimate of the cost of a nonsequentially fetched disk "
-"page."
+#: utils/misc/guc.c:3090
+msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page."
msgstr "设置计划器对非顺序获取磁盘页的开销估算."
-#: utils/misc/guc.c:2840
+#: utils/misc/guc.c:3100
msgid "Sets the planner's estimate of the cost of processing each tuple (row)."
msgstr "设置计划器对处理每个元组(也就是记录)的开销估算"
-#: utils/misc/guc.c:2850
-msgid ""
-"Sets the planner's estimate of the cost of processing each index entry "
-"during an index scan."
+#: utils/misc/guc.c:3110
+msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan."
msgstr "设置计划器在索引扫描期间对处理每个索引项的开销估算."
-#: utils/misc/guc.c:2860
-msgid ""
-"Sets the planner's estimate of the cost of processing each operator or "
-"function call."
+#: utils/misc/guc.c:3120
+msgid "Sets the planner's estimate of the cost of processing each operator or function call."
msgstr "设置计划器对处理每个操作符和函数调用的开销估算."
-#: utils/misc/guc.c:2870
-#| msgid ""
-#| "Sets the planner's estimate of the cost of processing each tuple (row)."
-msgid ""
-"Sets the planner's estimate of the cost of passing each tuple (row) from "
-"worker to master backend."
+#: utils/misc/guc.c:3130
+msgid "Sets the planner's estimate of the cost of passing each tuple (row) from worker to master backend."
msgstr "设定规划器对于从工作者向主控后端传递每一个元组(行)的代价估计。"
-#: utils/misc/guc.c:2880
-#| msgid ""
-#| "Sets the planner's estimate of the cost of processing each tuple (row)."
-msgid ""
-"Sets the planner's estimate of the cost of starting up worker processes for "
-"parallel query."
+#: utils/misc/guc.c:3140
+msgid "Sets the planner's estimate of the cost of starting up worker processes for parallel query."
msgstr "设定规划器对于启动并行查询的工作者进程的代价估计。"
-#: utils/misc/guc.c:2891
-msgid ""
-"Sets the planner's estimate of the fraction of a cursor's rows that will be "
-"retrieved."
+#: utils/misc/guc.c:3151
+msgid "Perform JIT compilation if query is more expensive."
+msgstr "如果查询更昂贵,则执行JIT编译."
+
+#: utils/misc/guc.c:3152
+msgid "-1 disables JIT compilation."
+msgstr "使用-1禁用JIT编译."
+
+#: utils/misc/guc.c:3161
+msgid "Optimize JITed functions if query is more expensive."
+msgstr "如果查询成本更高,则优化JITed函数"
+
+#: utils/misc/guc.c:3162
+msgid "-1 disables optimization."
+msgstr "使用-1禁用优化."
+
+#: utils/misc/guc.c:3171
+msgid "Perform JIT inlining if query is more expensive."
+msgstr "如果查询更昂贵,则执行JIT内联."
+
+#: utils/misc/guc.c:3172
+msgid "-1 disables inlining."
+msgstr "使用-1禁用内联."
+
+#: utils/misc/guc.c:3181
+msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved."
msgstr "设置计划器对于通过游标取回记录部分的估算."
-#: utils/misc/guc.c:2902
+#: utils/misc/guc.c:3192
msgid "GEQO: selective pressure within the population."
msgstr "GEQO: 在总体中的选择性压力"
-#: utils/misc/guc.c:2912
+#: utils/misc/guc.c:3202
msgid "GEQO: seed for random path selection."
msgstr "GEQO:用于随机路径选择的种子."
-#: utils/misc/guc.c:2922
+#: utils/misc/guc.c:3212
msgid "Multiple of the average buffer usage to free per round."
msgstr "每一次释放平均缓冲区使用量的倍数大小"
-#: utils/misc/guc.c:2932
+#: utils/misc/guc.c:3222
msgid "Sets the seed for random-number generation."
msgstr "设置生成随机数的种子."
-#: utils/misc/guc.c:2943
-msgid ""
-"Number of tuple updates or deletes prior to vacuum as a fraction of "
-"reltuples."
+#: utils/misc/guc.c:3233
+msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples."
msgstr "在清理前需要插入,删除或更新元组的数量,这个数量是作为表大小的百分比"
-#: utils/misc/guc.c:2952
-msgid ""
-"Number of tuple inserts, updates, or deletes prior to analyze as a fraction "
-"of reltuples."
+#: utils/misc/guc.c:3242
+msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples."
msgstr "在分析前插入,更新或删除元组的数量,这个数量以表大小的百分比的形式出现"
-#: utils/misc/guc.c:2962
-msgid ""
-"Time spent flushing dirty buffers during checkpoint, as fraction of "
-"checkpoint interval."
-msgstr ""
-"在检查点事件期间花费在将缓冲区中脏页刷新到磁盘的时间, 这个时间作为检查点间隔"
-"的百分比。"
+#: utils/misc/guc.c:3252
+msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval."
+msgstr "在检查点事件期间花费在将缓冲区中脏页刷新到磁盘的时间, 这个时间作为检查点间隔的百分比。"
-#: utils/misc/guc.c:2981
+#: utils/misc/guc.c:3262
+msgid "Number of tuple inserts prior to index cleanup as a fraction of reltuples."
+msgstr "在索引清理之前作为元组的一部分插入的元组数."
+
+#: utils/misc/guc.c:3281
msgid "Sets the shell command that will be called to archive a WAL file."
msgstr "设置用于对WAL文件进行归档的shell命令"
-#: utils/misc/guc.c:2991
+#: utils/misc/guc.c:3291
msgid "Sets the client's character set encoding."
msgstr "设置客户端编码"
-#: utils/misc/guc.c:3002
+#: utils/misc/guc.c:3302
msgid "Controls information prefixed to each log line."
msgstr "将控制信息作为每条日志文本的前缀"
-#: utils/misc/guc.c:3003
+#: utils/misc/guc.c:3303
msgid "If blank, no prefix is used."
msgstr "如果是空的,那么不使用前缀"
-#: utils/misc/guc.c:3012
+#: utils/misc/guc.c:3312
msgid "Sets the time zone to use in log messages."
msgstr "设置在日志消息中使用的时间区域"
-#: utils/misc/guc.c:3022
+#: utils/misc/guc.c:3322
msgid "Sets the display format for date and time values."
msgstr "设置日期和时间值的显示格式."
-#: utils/misc/guc.c:3023
+#: utils/misc/guc.c:3323
msgid "Also controls interpretation of ambiguous date inputs."
msgstr "控制对模糊日期输入的解释."
-#: utils/misc/guc.c:3034
+#: utils/misc/guc.c:3334
msgid "Sets the default tablespace to create tables and indexes in."
msgstr "设置用于创建表和索引的缺省表空间."
-#: utils/misc/guc.c:3035
+#: utils/misc/guc.c:3335
msgid "An empty string selects the database's default tablespace."
msgstr "使用空字符串表示数据库的缺省表空间."
-#: utils/misc/guc.c:3045
+#: utils/misc/guc.c:3345
msgid "Sets the tablespace(s) to use for temporary tables and sort files."
msgstr "将表空间设置为用于存放临时表和排序文件"
-#: utils/misc/guc.c:3056
+#: utils/misc/guc.c:3356
msgid "Sets the path for dynamically loadable modules."
msgstr "设置动态加载摸组的路径."
-#: utils/misc/guc.c:3057
-msgid ""
-"If a dynamically loadable module needs to be opened and the specified name "
-"does not have a directory component (i.e., the name does not contain a "
-"slash), the system will search this path for the specified file."
-msgstr ""
-"如果一个动态加载模块需要打开并且指定名字没有路径 (例如, 名字中没包含斜杠), 系"
-"统将在此路径中查找指定的文件."
+#: utils/misc/guc.c:3357
+msgid "If a dynamically loadable module needs to be opened and the specified name does not have a directory component (i.e., the name does not contain a slash), the system will search this path for the specified file."
+msgstr "如果一个动态加载模块需要打开并且指定名字没有路径 (例如, 名字中没包含斜杠), 系统将在此路径中查找指定的文件."
-#: utils/misc/guc.c:3070
+#: utils/misc/guc.c:3370
msgid "Sets the location of the Kerberos server key file."
msgstr "设置 Kerberos 服务器密钥文件位置."
-#: utils/misc/guc.c:3081
+#: utils/misc/guc.c:3381
msgid "Sets the Bonjour service name."
msgstr "设置Bonjour服务名称."
-#: utils/misc/guc.c:3093
+#: utils/misc/guc.c:3393
msgid "Shows the collation order locale."
msgstr "显示排序规则顺序的语言环境"
-#: utils/misc/guc.c:3104
+#: utils/misc/guc.c:3404
msgid "Shows the character classification and case conversion locale."
msgstr "显示字符分类和按条件转换的语言环境."
-#: utils/misc/guc.c:3115
+#: utils/misc/guc.c:3415
msgid "Sets the language in which messages are displayed."
msgstr "设置信息显示语言."
-#: utils/misc/guc.c:3125
+#: utils/misc/guc.c:3425
msgid "Sets the locale for formatting monetary amounts."
msgstr "为货币数量格式设置 locale."
-#: utils/misc/guc.c:3135
+#: utils/misc/guc.c:3435
msgid "Sets the locale for formatting numbers."
msgstr "为数字格式设置 locale"
-#: utils/misc/guc.c:3145
+#: utils/misc/guc.c:3445
msgid "Sets the locale for formatting date and time values."
msgstr "为日期和时间值格式设置 locale"
-#: utils/misc/guc.c:3155
+#: utils/misc/guc.c:3455
msgid "Lists shared libraries to preload into each backend."
msgstr "列出预先加载到每个后台进程的共享库."
-#: utils/misc/guc.c:3166
+#: utils/misc/guc.c:3466
msgid "Lists shared libraries to preload into server."
msgstr "列出预装入服务器的共享库."
-#: utils/misc/guc.c:3177
+#: utils/misc/guc.c:3477
msgid "Lists unprivileged shared libraries to preload into each backend."
msgstr "列出预先加载到每个后台进程的非优先的共享库."
-#: utils/misc/guc.c:3188
+#: utils/misc/guc.c:3488
msgid "Sets the schema search order for names that are not schema-qualified."
msgstr "为不是模式限定的名称设置模式搜索顺序"
-#: utils/misc/guc.c:3200
+#: utils/misc/guc.c:3500
msgid "Sets the server (database) character set encoding."
msgstr "设置服务器 (数据库) 字符编码."
-#: utils/misc/guc.c:3212
+#: utils/misc/guc.c:3512
msgid "Shows the server version."
msgstr "显示服务器版本信息."
-#: utils/misc/guc.c:3224
+#: utils/misc/guc.c:3524
msgid "Sets the current role."
msgstr "设置当前的角色"
-#: utils/misc/guc.c:3236
+#: utils/misc/guc.c:3536
msgid "Sets the session user name."
msgstr "设置会话用户名称."
-#: utils/misc/guc.c:3247
+#: utils/misc/guc.c:3547
msgid "Sets the destination for server log output."
msgstr "设置服务器日志输出目标."
-#: utils/misc/guc.c:3248
-msgid ""
-"Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", and "
-"\"eventlog\", depending on the platform."
-msgstr ""
-"有效值为 \"stderr\", \"syslog\", \"csvlog\", and \"eventlog\" 的组合, 这取决"
-"于平台的种类."
+#: utils/misc/guc.c:3548
+msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", and \"eventlog\", depending on the platform."
+msgstr "有效值为 \"stderr\", \"syslog\", \"csvlog\", and \"eventlog\" 的组合, 这取决于平台的种类."
-#: utils/misc/guc.c:3259
+#: utils/misc/guc.c:3559
msgid "Sets the destination directory for log files."
msgstr "设置日志文件目的目录."
-#: utils/misc/guc.c:3260
+#: utils/misc/guc.c:3560
msgid "Can be specified as relative to the data directory or as absolute path."
msgstr "可以指定为data目录的相对目录或绝对目录."
-#: utils/misc/guc.c:3270
+#: utils/misc/guc.c:3570
msgid "Sets the file name pattern for log files."
msgstr "设置日志文件的文件名字模式."
-#: utils/misc/guc.c:3281
+#: utils/misc/guc.c:3581
msgid "Sets the program name used to identify PostgreSQL messages in syslog."
msgstr "设置在系统日志 (syslog) 中确认 PostgreSQL 信息的程序名."
-#: utils/misc/guc.c:3292
-msgid ""
-"Sets the application name used to identify PostgreSQL messages in the event "
-"log."
+#: utils/misc/guc.c:3592
+msgid "Sets the application name used to identify PostgreSQL messages in the event log."
msgstr "设置在事件日志 (syslog) 中用于标识 PostgreSQL 消息的程序名."
-#: utils/misc/guc.c:3303
+#: utils/misc/guc.c:3603
msgid "Sets the time zone for displaying and interpreting time stamps."
msgstr "设置显示和解释时间戳的时区."
-#: utils/misc/guc.c:3313
+#: utils/misc/guc.c:3613
msgid "Selects a file of time zone abbreviations."
msgstr "选择时间区域缩写的文件"
-#: utils/misc/guc.c:3323
+#: utils/misc/guc.c:3623
msgid "Sets the current transaction's isolation level."
msgstr "设置当前事物的隔离级别."
-#: utils/misc/guc.c:3334
+#: utils/misc/guc.c:3634
msgid "Sets the owning group of the Unix-domain socket."
msgstr "设置 Unix-domain 套接字的属组."
-#: utils/misc/guc.c:3335
-msgid ""
-"The owning user of the socket is always the user that starts the server."
+#: utils/misc/guc.c:3635
+msgid "The owning user of the socket is always the user that starts the server."
msgstr "套接字的属主用户也是起动服务的用户."
-#: utils/misc/guc.c:3345
+#: utils/misc/guc.c:3645
msgid "Sets the directories where Unix-domain sockets will be created."
msgstr "设置用于创建Unix-domain套接字的目录."
-#: utils/misc/guc.c:3360
+#: utils/misc/guc.c:3660
msgid "Sets the host name or IP address(es) to listen to."
msgstr "设置监听的主机名或 IP 地址."
-#: utils/misc/guc.c:3375
+#: utils/misc/guc.c:3675
msgid "Sets the server's data directory."
msgstr "设置服务器的数据目录"
-#: utils/misc/guc.c:3386
+#: utils/misc/guc.c:3686
msgid "Sets the server's main configuration file."
msgstr "设置服务器的主配置文件"
-#: utils/misc/guc.c:3397
+#: utils/misc/guc.c:3697
msgid "Sets the server's \"hba\" configuration file."
msgstr "设置服务器的 \"hba\" 配置文件"
-#: utils/misc/guc.c:3408
+#: utils/misc/guc.c:3708
msgid "Sets the server's \"ident\" configuration file."
msgstr "设置服务器的 \"ident\" 配置文件"
-#: utils/misc/guc.c:3419
+#: utils/misc/guc.c:3719
msgid "Writes the postmaster PID to the specified file."
msgstr "把 postmaster PID 写到指定文件."
-#: utils/misc/guc.c:3430
+#: utils/misc/guc.c:3730
msgid "Location of the SSL server certificate file."
msgstr "SSL服务器证书文件的位置"
-#: utils/misc/guc.c:3440
+#: utils/misc/guc.c:3740
msgid "Location of the SSL server private key file."
msgstr "SSL服务器私钥文件的位置."
-#: utils/misc/guc.c:3450
+#: utils/misc/guc.c:3750
msgid "Location of the SSL certificate authority file."
msgstr "SSL证书授权文件的位置."
-#: utils/misc/guc.c:3460
+#: utils/misc/guc.c:3760
msgid "Location of the SSL certificate revocation list file."
msgstr "SSL证书撤销列表文件的位置."
-#: utils/misc/guc.c:3470
+#: utils/misc/guc.c:3770
msgid "Writes temporary statistics files to the specified directory."
msgstr "将临时统计信息文件写到指定的目录"
-#: utils/misc/guc.c:3481
-#| msgid "List of names of potential synchronous standbys."
-msgid ""
-"Number of synchronous standbys and list of names of potential synchronous "
-"ones."
+#: utils/misc/guc.c:3781
+msgid "Number of synchronous standbys and list of names of potential synchronous ones."
msgstr "同步后备的数量以及潜在的同步后备的名称列表。"
# describe.c:97
-#: utils/misc/guc.c:3492
+#: utils/misc/guc.c:3792
msgid "Sets default text search configuration."
msgstr "设置缺省文本搜索配置"
-#: utils/misc/guc.c:3502
+#: utils/misc/guc.c:3802
msgid "Sets the list of allowed SSL ciphers."
msgstr "设置日志信息的冗长."
-#: utils/misc/guc.c:3517
+#: utils/misc/guc.c:3817
msgid "Sets the curve to use for ECDH."
msgstr "设置该曲线,用于ECDH."
-#: utils/misc/guc.c:3532
+#: utils/misc/guc.c:3832
+msgid "Location of the SSL DH parameters file."
+msgstr "SSL DH参数文件的位置."
+
+#: utils/misc/guc.c:3843
+msgid "Command to obtain passphrases for SSL."
+msgstr "获取SSL密码的命令"
+
+#: utils/misc/guc.c:3853
msgid "Sets the application name to be reported in statistics and logs."
msgstr "设置在统计和日志中出现的应用程序名称."
-#: utils/misc/guc.c:3543
+#: utils/misc/guc.c:3864
msgid "Sets the name of the cluster, which is included in the process title."
msgstr "设定集簇的名称,它会被包括在进程的标题中。"
-#: utils/misc/guc.c:3563
+#: utils/misc/guc.c:3875
+msgid "Sets the WAL resource managers for which WAL consistency checks are done."
+msgstr "设置对其进行WAL一致性检查的WAL资源管理器"
+
+#: utils/misc/guc.c:3876
+msgid "Full-page images will be logged for all data blocks and cross-checked against the results of WAL replay."
+msgstr "将记录所有数据块的整页图像,并对照WAL重放结果进行交叉检查."
+
+#: utils/misc/guc.c:3886
+msgid "JIT provider to use."
+msgstr "要使用的JIT提供程序."
+
+#: utils/misc/guc.c:3906
msgid "Sets whether \"\\'\" is allowed in string literals."
msgstr "在字符串常量中设置是否允许使用\"\\'\""
-#: utils/misc/guc.c:3573
+#: utils/misc/guc.c:3916
msgid "Sets the output format for bytea."
msgstr "设置bytea类型数据的输出格式"
-#: utils/misc/guc.c:3583
+#: utils/misc/guc.c:3926
msgid "Sets the message levels that are sent to the client."
msgstr "设置发送到客户端的信息级别."
-#: utils/misc/guc.c:3584 utils/misc/guc.c:3637 utils/misc/guc.c:3648
-#: utils/misc/guc.c:3714
-msgid ""
-"Each level includes all the levels that follow it. The later the level, the "
-"fewer messages are sent."
+#: utils/misc/guc.c:3927 utils/misc/guc.c:3980 utils/misc/guc.c:3991
+#: utils/misc/guc.c:4057
+msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent."
msgstr "每一层都包含在这一层后面的层次, 对于越往后的层次,就会发送越少的消息."
-#: utils/misc/guc.c:3594
+#: utils/misc/guc.c:3937
msgid "Enables the planner to use constraints to optimize queries."
msgstr "使计划器可以使用约束来优化查询."
-#: utils/misc/guc.c:3595
-msgid ""
-"Table scans will be skipped if their constraints guarantee that no rows "
-"match the query."
+#: utils/misc/guc.c:3938
+msgid "Table scans will be skipped if their constraints guarantee that no rows match the query."
msgstr "如果约束能够确保没有列符合查询条件,那么将跳过表扫描."
-#: utils/misc/guc.c:3605
+#: utils/misc/guc.c:3948
msgid "Sets the transaction isolation level of each new transaction."
msgstr "设置每一个新事物的隔离 (isolation) 级别."
-#: utils/misc/guc.c:3615
+#: utils/misc/guc.c:3958
msgid "Sets the display format for interval values."
msgstr "设置时间间隔值的显示格式."
-#: utils/misc/guc.c:3626
+#: utils/misc/guc.c:3969
msgid "Sets the verbosity of logged messages."
msgstr "设置日志信息的冗长."
-#: utils/misc/guc.c:3636
+#: utils/misc/guc.c:3979
msgid "Sets the message levels that are logged."
msgstr "设置日志记录的信息级别."
-#: utils/misc/guc.c:3647
-msgid ""
-"Causes all statements generating error at or above this level to be logged."
+#: utils/misc/guc.c:3990
+msgid "Causes all statements generating error at or above this level to be logged."
msgstr "在此级别或以上级别, 所有语句产生的错误将被记录."
-#: utils/misc/guc.c:3658
+#: utils/misc/guc.c:4001
msgid "Sets the type of statements logged."
msgstr "设置记录语句的类型."
-#: utils/misc/guc.c:3668
+#: utils/misc/guc.c:4011
msgid "Sets the syslog \"facility\" to be used when syslog enabled."
msgstr "当启用系统日志 (syslog), 设置系统日志使用 \"facility\"."
-#: utils/misc/guc.c:3683
+#: utils/misc/guc.c:4026
msgid "Sets the session's behavior for triggers and rewrite rules."
msgstr "为触发器和重写规则设置会话的行为"
-#: utils/misc/guc.c:3693
+#: utils/misc/guc.c:4036
msgid "Sets the current transaction's synchronization level."
msgstr "设置当前事物的同步级别."
-#: utils/misc/guc.c:3703
+#: utils/misc/guc.c:4046
msgid "Allows archiving of WAL files using archive_command."
msgstr "允许使用archive_command参数对WAL文件进行归档."
-#: utils/misc/guc.c:3713
+#: utils/misc/guc.c:4056
msgid "Enables logging of recovery-related debugging information."
msgstr "启用日志功能,对与恢复操作相关的调试信息进行记录."
-#: utils/misc/guc.c:3729
+#: utils/misc/guc.c:4072
msgid "Collects function-level statistics on database activity."
msgstr "在数据库运行的事务中收集函数级别统计信息."
-#: utils/misc/guc.c:3739
+#: utils/misc/guc.c:4082
msgid "Set the level of information written to the WAL."
msgstr "设置写入WAL文件的信息的内容详细级别"
-#: utils/misc/guc.c:3749
+#: utils/misc/guc.c:4092
msgid "Selects the dynamic shared memory implementation used."
msgstr "选择过去的动态共享内存实现."
-#: utils/misc/guc.c:3759
+#: utils/misc/guc.c:4102
msgid "Selects the method used for forcing WAL updates to disk."
msgstr "选择用于强制将WAL缓冲区的内容更新到磁盘的方法."
-#: utils/misc/guc.c:3769
+#: utils/misc/guc.c:4112
msgid "Sets how binary values are to be encoded in XML."
msgstr "设置在XML中如何对二进制的值进行编码."
-#: utils/misc/guc.c:3779
-msgid ""
-"Sets whether XML data in implicit parsing and serialization operations is to "
-"be considered as documents or content fragments."
+#: utils/misc/guc.c:4122
+msgid "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments."
msgstr "设置在隐式分析和串行操作中的XML数据是否被当作文档或者内容片断."
-#: utils/misc/guc.c:3790
-msgid "Use of huge pages on Linux."
-msgstr "使用Linux上的超大(huge)页"
+#: utils/misc/guc.c:4133
+msgid "Use of huge pages on Linux or Windows."
+msgstr "在Linux或Windows上使用大页面."
-#: utils/misc/guc.c:3800
+#: utils/misc/guc.c:4143
msgid "Forces use of parallel query facilities."
msgstr "强制使用并行查询功能。"
-#: utils/misc/guc.c:3801
-msgid ""
-"If possible, run query using a parallel worker and with parallel "
-"restrictions."
+#: utils/misc/guc.c:4144
+msgid "If possible, run query using a parallel worker and with parallel restrictions."
msgstr "如果可能,使用一个并行工作者并且加上并行限制来运行查询。"
-#: utils/misc/guc.c:4601
+#: utils/misc/guc.c:4153
+msgid "Encrypt passwords."
+msgstr "加密口令."
+
+#: utils/misc/guc.c:4154
+msgid "When a password is specified in CREATE USER or ALTER USER without writing either ENCRYPTED or UNENCRYPTED, this parameter determines whether the password is to be encrypted."
+msgstr "当在 CREATE USER 或者 ALTER USER 语句中指定的口令没有用 ENCRYPTED 或者 UNENCRYPTED, 此参数确定口令是否加密."
+
+#: utils/misc/guc.c:4956
#, c-format
msgid "%s: could not access directory \"%s\": %s\n"
msgstr "%s: 无法访问目录 \"%s\": %s\n"
-#: utils/misc/guc.c:4606
+#: utils/misc/guc.c:4961
#, c-format
-#| msgid ""
-#| "%s initializes a PostgreSQL database cluster.\n"
-#| "\n"
-msgid ""
-"Run initdb or pg_basebackup to initialize a PostgreSQL data directory.\n"
+msgid "Run initdb or pg_basebackup to initialize a PostgreSQL data directory.\n"
msgstr "运行 initdb 或者 pg_basebackup 以初始化一个 PostgreSQL 数据目录.\n"
-#: utils/misc/guc.c:4626
+#: utils/misc/guc.c:4981
#, c-format
msgid ""
"%s does not know where to find the server configuration file.\n"
-"You must specify the --config-file or -D invocation option or set the PGDATA "
-"environment variable.\n"
+"You must specify the --config-file or -D invocation option or set the PGDATA environment variable.\n"
msgstr ""
"%s 不知道在哪里可以找到数据库系统配置文件.\n"
"你必须通过 --config-file 或 -D 选项指定或者通过设置 PGDATA 环境变量.\n"
-#: utils/misc/guc.c:4645
+#: utils/misc/guc.c:5000
#, c-format
-#| msgid "%s cannot access the server configuration file \"%s\": %s\n"
msgid "%s: could not access the server configuration file \"%s\": %s\n"
msgstr "%s:无法访问服务器配置文件 \"%s\": %s\n"
-#: utils/misc/guc.c:4671
+#: utils/misc/guc.c:5026
#, c-format
msgid ""
"%s does not know where to find the database system data.\n"
-"This can be specified as \"data_directory\" in \"%s\", or by the -D "
-"invocation option, or by the PGDATA environment variable.\n"
+"This can be specified as \"data_directory\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
msgstr ""
"%s 不知道在哪里可以找到数据库系统数据.\n"
-"可以在 \"%s\" 中指定 \"data_directory\", 或者通过 -D 选项指定或者通过设置 "
-"PGDATA 环境变量.\n"
+"可以在 \"%s\" 中指定 \"data_directory\", 或者通过 -D 选项指定或者通过设置 PGDATA 环境变量.\n"
-#: utils/misc/guc.c:4719
+#: utils/misc/guc.c:5074
#, c-format
msgid ""
"%s does not know where to find the \"hba\" configuration file.\n"
-"This can be specified as \"hba_file\" in \"%s\", or by the -D invocation "
-"option, or by the PGDATA environment variable.\n"
+"This can be specified as \"hba_file\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
msgstr ""
"%s 不知道在哪里可以找到 \"hba\" 配置文件.\n"
-"可以在 \"%s\" 中指定 \"hba_file\", 或者通过 -D 选项指定或者通过设置PGDATA 环"
-"境变量.\n"
+"可以在 \"%s\" 中指定 \"hba_file\", 或者通过 -D 选项指定或者通过设置PGDATA 环境变量.\n"
-#: utils/misc/guc.c:4742
+#: utils/misc/guc.c:5097
#, c-format
msgid ""
"%s does not know where to find the \"ident\" configuration file.\n"
-"This can be specified as \"ident_file\" in \"%s\", or by the -D invocation "
-"option, or by the PGDATA environment variable.\n"
+"This can be specified as \"ident_file\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
msgstr ""
"%s 不知道在哪里可以找到 \"ident\" 配置文件.\n"
-"可以在 \"%s\" 中指定 \"ident_file\", 或者通过 -D 选项指定或者通过设置PGDATA "
-"环境变量.\n"
+"可以在 \"%s\" 中指定 \"ident_file\", 或者通过 -D 选项指定或者通过设置PGDATA 环境变量.\n"
-#: utils/misc/guc.c:5416 utils/misc/guc.c:5463
+#: utils/misc/guc.c:5772 utils/misc/guc.c:5819
msgid "Value exceeds integer range."
msgstr "值已超过整数范围"
-#: utils/misc/guc.c:5686
+#: utils/misc/guc.c:6042
#, c-format
msgid "parameter \"%s\" requires a numeric value"
msgstr "参数 \"%s\" 需要一个数字值"
-#: utils/misc/guc.c:5695
+#: utils/misc/guc.c:6051
#, c-format
msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
msgstr "%g 超出了参数 \"%s\" (%g .. %g) 的有效范围"
-#: utils/misc/guc.c:5848 utils/misc/guc.c:7190
+#: utils/misc/guc.c:6204 utils/misc/guc.c:7574
#, c-format
msgid "cannot set parameters during a parallel operation"
msgstr "在并行操作期间不能设置参数"
-#: utils/misc/guc.c:5855 utils/misc/guc.c:6605 utils/misc/guc.c:6657
-#: utils/misc/guc.c:7018 utils/misc/guc.c:7778 utils/misc/guc.c:7946
-#: utils/misc/guc.c:9603
+#: utils/misc/guc.c:6211 utils/misc/guc.c:6963 utils/misc/guc.c:7016
+#: utils/misc/guc.c:7067 utils/misc/guc.c:7403 utils/misc/guc.c:8170
+#: utils/misc/guc.c:8338 utils/misc/guc.c:10015
#, c-format
msgid "unrecognized configuration parameter \"%s\""
msgstr "未认可的配置参数 \"%s\""
-#: utils/misc/guc.c:5870 utils/misc/guc.c:7030
+#: utils/misc/guc.c:6226 utils/misc/guc.c:7415
#, c-format
msgid "parameter \"%s\" cannot be changed"
msgstr "参数 \"%s\" 不可以改变"
-#: utils/misc/guc.c:5903
+#: utils/misc/guc.c:6259
#, c-format
msgid "parameter \"%s\" cannot be changed now"
msgstr "参数 \"%s\" 现在不能改变"
-#: utils/misc/guc.c:5921 utils/misc/guc.c:5966 utils/misc/guc.c:9619
+#: utils/misc/guc.c:6277 utils/misc/guc.c:6324 utils/misc/guc.c:10031
#, c-format
msgid "permission denied to set parameter \"%s\""
msgstr "设置参数 \"%s\" 权限不允许"
-#: utils/misc/guc.c:5956
+#: utils/misc/guc.c:6314
#, c-format
msgid "parameter \"%s\" cannot be set after connection start"
msgstr "联接启动后, 参数 \"%s\" 不能设置"
-#: utils/misc/guc.c:6004
+#: utils/misc/guc.c:6362
#, c-format
msgid "cannot set parameter \"%s\" within security-definer function"
msgstr "无法在安全定义者操作中设置参数\"%s\" "
-#: utils/misc/guc.c:6613 utils/misc/guc.c:6661 utils/misc/guc.c:7952
+#: utils/misc/guc.c:6971 utils/misc/guc.c:7021 utils/misc/guc.c:8345
#, c-format
-msgid "must be superuser to examine \"%s\""
-msgstr "检查 \"%s\" 必须为超级用户"
+msgid "must be superuser or a member of pg_read_all_settings to examine \"%s\""
+msgstr "必须是超级用户或pg_read_all_settings的成员才能检查\"%s\""
-#: utils/misc/guc.c:6727
+#: utils/misc/guc.c:7112
#, c-format
msgid "SET %s takes only one argument"
msgstr "SET %s 只能带一个参数"
-#: utils/misc/guc.c:6978
+#: utils/misc/guc.c:7363
#, c-format
msgid "must be superuser to execute ALTER SYSTEM command"
msgstr "只有超级用户才能执行命令ALTER SYSTEM"
-#: utils/misc/guc.c:7063
+#: utils/misc/guc.c:7448
#, c-format
msgid "parameter value for ALTER SYSTEM must not contain a newline"
msgstr "用于 ALTER SYSTEM 的参数值不能包含新行"
-#: utils/misc/guc.c:7108
+#: utils/misc/guc.c:7493
#, c-format
msgid "could not parse contents of file \"%s\""
msgstr "无法解析文件\"%s\"的内容"
-#: utils/misc/guc.c:7266
+#: utils/misc/guc.c:7650
#, c-format
msgid "SET LOCAL TRANSACTION SNAPSHOT is not implemented"
msgstr "SET LOCAL TRANSACTION SNAPSHOT没有实现"
-#: utils/misc/guc.c:7351
+#: utils/misc/guc.c:7734
#, c-format
msgid "SET requires parameter name"
msgstr "SET 需要参数名字"
-#: utils/misc/guc.c:7475
+#: utils/misc/guc.c:7867
#, c-format
msgid "attempt to redefine parameter \"%s\""
msgstr "尝试重新定义参数 \"%s\""
-#: utils/misc/guc.c:9236
+#: utils/misc/guc.c:9648
#, c-format
msgid "parameter \"%s\" could not be set"
msgstr "参数\"%s\" 不能被设置"
-#: utils/misc/guc.c:9323
+#: utils/misc/guc.c:9735
#, c-format
msgid "could not parse setting for parameter \"%s\""
msgstr "无法分析参数 \"%s\" 的设置"
-#: utils/misc/guc.c:9681 utils/misc/guc.c:9715
+#: utils/misc/guc.c:10093 utils/misc/guc.c:10127
#, c-format
msgid "invalid value for parameter \"%s\": %d"
msgstr "参数 \"%s\" 的值无效: %d"
-#: utils/misc/guc.c:9749
+#: utils/misc/guc.c:10161
#, c-format
msgid "invalid value for parameter \"%s\": %g"
msgstr "参数 \"%s\" 的值无效: %g"
-#: utils/misc/guc.c:9939
+#: utils/misc/guc.c:10445
#, c-format
-msgid ""
-"\"temp_buffers\" cannot be changed after any temporary tables have been "
-"accessed in the session."
-msgstr ""
-"在当前会话中,如果有任何临时表被访问,就不能改变\"temp_buffers\"中的内容."
+msgid "\"temp_buffers\" cannot be changed after any temporary tables have been accessed in the session."
+msgstr "在当前会话中,如果有任何临时表被访问,就不能改变\"temp_buffers\"中的内容."
# input.c:213
-#: utils/misc/guc.c:9951
+#: utils/misc/guc.c:10457
#, c-format
msgid "Bonjour is not supported by this build"
msgstr "这个版本的安装不支持使用Bonjour "
# input.c:213
-#: utils/misc/guc.c:9964
+#: utils/misc/guc.c:10470
#, c-format
msgid "SSL is not supported by this build"
msgstr "这个版本的安装不支持使用SSL"
-#: utils/misc/guc.c:9976
+#: utils/misc/guc.c:10482
#, c-format
msgid "Cannot enable parameter when \"log_statement_stats\" is true."
msgstr "当 \"log_statement_stats\" 为 true 时, 不能启动参数."
-#: utils/misc/guc.c:9988
+#: utils/misc/guc.c:10494
#, c-format
-msgid ""
-"Cannot enable \"log_statement_stats\" when \"log_parser_stats\", "
-"\"log_planner_stats\", or \"log_executor_stats\" is true."
-msgstr ""
-"当 \"log_parser_stats\", \"log_planner_stats\", 或者 \"log_executor_stats\" "
-"为 true 时, 无法启用 \"log_statement_stats\"."
+msgid "Cannot enable \"log_statement_stats\" when \"log_parser_stats\", \"log_planner_stats\", or \"log_executor_stats\" is true."
+msgstr "当 \"log_parser_stats\", \"log_planner_stats\", 或者 \"log_executor_stats\" 为 true 时, 无法启用 \"log_statement_stats\"."
+
+#: utils/misc/guc.c:10710
+#, c-format
+msgid "effective_io_concurrency must be set to 0 on platforms that lack posix_fadvise()"
+msgstr "在没有posix_fadvise()的平台上,effective_io_concurrency必须设置为0"
#: utils/misc/help_config.c:131
#, c-format
msgid "internal error: unrecognized run-time parameter type\n"
msgstr "内部错误: 未知的运行时参数类型\n"
-#: utils/misc/pg_config.c:61
+#: utils/misc/pg_config.c:60
#, c-format
-msgid ""
-"query-specified return tuple and function return type are not compatible"
+msgid "query-specified return tuple and function return type are not compatible"
msgstr "查询指定返回的元组和函数返回类型不兼容"
+#: utils/misc/pg_controldata.c:59 utils/misc/pg_controldata.c:137
+#: utils/misc/pg_controldata.c:241 utils/misc/pg_controldata.c:308
+#, c-format
+msgid "calculated CRC checksum does not match value stored in file"
+msgstr "计算得到的 CRC 校验与存储在文件中的值不匹配"
+
+#: utils/misc/pg_rusage.c:64
+#, c-format
+msgid "CPU: user: %d.%02d s, system: %d.%02d s, elapsed: %d.%02d s"
+msgstr "CPU:用户:%d.%02d s,系统:%d.%02d s,已用时间:%d.%02d s"
+
#: utils/misc/rls.c:127
#, c-format
-#| msgid "new row violates row-level security policy for table \"%s\""
msgid "query would be affected by row-level security policy for table \"%s\""
msgstr "查询将被表 \"%s\" 的行级安全性策略所影响"
#: utils/misc/rls.c:129
#, c-format
-msgid ""
-"To disable the policy for the table's owner, use ALTER TABLE NO FORCE ROW "
-"LEVEL SECURITY."
+msgid "To disable the policy for the table's owner, use ALTER TABLE NO FORCE ROW LEVEL SECURITY."
msgstr "要禁用对表拥有者的策略,使用 ALTER TABLE NO FORCE ROW LEVEL SECURITY。"
#: utils/misc/timeout.c:388
#: utils/misc/tzparser.c:61
#, c-format
-msgid ""
-"time zone abbreviation \"%s\" is too long (maximum %d characters) in time "
-"zone file \"%s\", line %d"
+msgid "time zone abbreviation \"%s\" is too long (maximum %d characters) in time zone file \"%s\", line %d"
msgstr "在时区文件\"%3$s\"的第%4$d行中时区缩写\"%1$s\"太长了(最大允许%2$d字符)"
#: utils/misc/tzparser.c:73
#: utils/misc/tzparser.c:239
#, c-format
-msgid ""
-"Entry in time zone file \"%s\", line %d, conflicts with entry in file \"%s"
-"\", line %d."
+msgid "Entry in time zone file \"%s\", line %d, conflicts with entry in file \"%s\", line %d."
msgstr "在时区文件\"%s\"中第%d行的项, 与在文件\"%s\"第%d行中的项相冲突."
#: utils/misc/tzparser.c:301
msgid "@INCLUDE without file name in time zone file \"%s\", line %d"
msgstr "在时间区域文件\"%s\"中的第%d行中,@INCLUDE没有带文件名 "
-#: utils/mmgr/aset.c:506
+#: utils/mmgr/aset.c:485 utils/mmgr/generation.c:250 utils/mmgr/slab.c:240
#, c-format
msgid "Failed while creating memory context \"%s\"."
msgstr "创建内存上下文 \"%s\" 失败."
-#: utils/mmgr/mcxt.c:771 utils/mmgr/mcxt.c:806 utils/mmgr/mcxt.c:843
-#: utils/mmgr/mcxt.c:880 utils/mmgr/mcxt.c:914 utils/mmgr/mcxt.c:943
-#: utils/mmgr/mcxt.c:977 utils/mmgr/mcxt.c:1059 utils/mmgr/mcxt.c:1093
-#: utils/mmgr/mcxt.c:1142
+#: utils/mmgr/dsa.c:519 utils/mmgr/dsa.c:1325
#, c-format
-msgid "Failed on request of size %zu."
-msgstr "无法请求大小 %zu."
+msgid "could not attach to dynamic shared area"
+msgstr "无法附加到动态共享区域"
-#: utils/mmgr/portalmem.c:208
+#: utils/mmgr/mcxt.c:797 utils/mmgr/mcxt.c:833 utils/mmgr/mcxt.c:871
+#: utils/mmgr/mcxt.c:909 utils/mmgr/mcxt.c:945 utils/mmgr/mcxt.c:976
+#: utils/mmgr/mcxt.c:1012 utils/mmgr/mcxt.c:1064 utils/mmgr/mcxt.c:1099
+#: utils/mmgr/mcxt.c:1134
+#, c-format
+msgid "Failed on request of size %zu in memory context \"%s\"."
+msgstr "在内存上下文\"%2$s\"中请求大小为%1$zu时失败."
+
+#: utils/mmgr/portalmem.c:187
#, c-format
msgid "cursor \"%s\" already exists"
msgstr "游标 \"%s\" 已经存在"
-#: utils/mmgr/portalmem.c:212
+#: utils/mmgr/portalmem.c:191
#, c-format
msgid "closing existing cursor \"%s\""
msgstr "关闭已存在的游标 \"%s\""
-#: utils/mmgr/portalmem.c:419
+#: utils/mmgr/portalmem.c:398
#, c-format
msgid "portal \"%s\" cannot be run"
msgstr "入口 \"%s\" 不可以运行"
-#: utils/mmgr/portalmem.c:499
+#: utils/mmgr/portalmem.c:476
+#, c-format
+msgid "cannot drop pinned portal \"%s\""
+msgstr "无法删除固定的portal \"%s\""
+
+#: utils/mmgr/portalmem.c:484
#, c-format
msgid "cannot drop active portal \"%s\""
msgstr "不能删除处于活动状态的portal \"%s\""
-#: utils/mmgr/portalmem.c:689
+#: utils/mmgr/portalmem.c:729
#, c-format
msgid "cannot PREPARE a transaction that has created a cursor WITH HOLD"
msgstr "无法对一个已经创建带有WITH HOLD游标的事务执行PREPARE操作."
-#: utils/sort/logtape.c:226
+#: utils/mmgr/portalmem.c:1263
+#, c-format
+msgid "cannot perform transaction commands inside a cursor loop that is not read-only"
+msgstr "不能在非只读的游标循环内执行事务命令"
+
+#: utils/sort/logtape.c:276
#, c-format
msgid "could not read block %ld of temporary file: %m"
msgstr "无法读取临时文件块 %ld: %m"
-#: utils/sort/tuplesort.c:3360
+#: utils/sort/sharedtuplestore.c:208
+#, c-format
+msgid "could not write to temporary file: %m"
+msgstr "无法写入临时文件: %m"
+
+#: utils/sort/sharedtuplestore.c:437 utils/sort/sharedtuplestore.c:446
+#: utils/sort/sharedtuplestore.c:469 utils/sort/sharedtuplestore.c:486
+#: utils/sort/sharedtuplestore.c:503 utils/sort/sharedtuplestore.c:575
+#: utils/sort/sharedtuplestore.c:581
+#, c-format
+msgid "could not read from shared tuplestore temporary file"
+msgstr "无法从共享的元组存储临时文件读取"
+
+#: utils/sort/sharedtuplestore.c:492
+#, c-format
+msgid "unexpected chunk in shared tuplestore temporary file"
+msgstr "共享的元组存储临时文件中的意外块"
+
+#: utils/sort/tuplesort.c:2967
#, c-format
-#| msgid "cannot use more than %d columns in an index"
msgid "cannot have more than %d runs for an external sort"
msgstr "不能为一次外部排序运行超过 %d 次"
-#: utils/sort/tuplesort.c:4416
+#: utils/sort/tuplesort.c:4051
#, c-format
msgid "could not create unique index \"%s\""
msgstr "无法创建唯一索引\"%s\""
-#: utils/sort/tuplesort.c:4418
+#: utils/sort/tuplesort.c:4053
#, c-format
msgid "Key %s is duplicated."
msgstr "键值%s重复了"
-#: utils/sort/tuplesort.c:4419
+#: utils/sort/tuplesort.c:4054
#, c-format
msgid "Duplicate keys exist."
msgstr "存在重复键。"
-#: utils/sort/tuplestore.c:515 utils/sort/tuplestore.c:525
-#: utils/sort/tuplestore.c:852 utils/sort/tuplestore.c:956
-#: utils/sort/tuplestore.c:1020 utils/sort/tuplestore.c:1037
-#: utils/sort/tuplestore.c:1239 utils/sort/tuplestore.c:1304
-#: utils/sort/tuplestore.c:1313
+#: utils/sort/tuplestore.c:518 utils/sort/tuplestore.c:528
+#: utils/sort/tuplestore.c:869 utils/sort/tuplestore.c:973
+#: utils/sort/tuplestore.c:1037 utils/sort/tuplestore.c:1054
+#: utils/sort/tuplestore.c:1256 utils/sort/tuplestore.c:1321
+#: utils/sort/tuplestore.c:1330
#, c-format
msgid "could not seek in tuplestore temporary file: %m"
msgstr "无法在元组存储临时文件中定位: %m"
-#: utils/sort/tuplestore.c:1460 utils/sort/tuplestore.c:1533
-#: utils/sort/tuplestore.c:1539
+#: utils/sort/tuplestore.c:1477 utils/sort/tuplestore.c:1550
+#: utils/sort/tuplestore.c:1556
#, c-format
msgid "could not read from tuplestore temporary file: %m"
msgstr "无法从元组存储临时文件读取: %m"
-#: utils/sort/tuplestore.c:1501 utils/sort/tuplestore.c:1506
-#: utils/sort/tuplestore.c:1512
+#: utils/sort/tuplestore.c:1518 utils/sort/tuplestore.c:1523
+#: utils/sort/tuplestore.c:1529
#, c-format
msgid "could not write to tuplestore temporary file: %m"
msgstr "无法写入元组存储临时文件: %m"
-#: utils/time/snapmgr.c:536
+#: utils/time/snapmgr.c:622
#, c-format
msgid "The source transaction is not running anymore."
msgstr "源事务已不再运行."
-#: utils/time/snapmgr.c:1090
+#: utils/time/snapmgr.c:1200
#, c-format
msgid "cannot export a snapshot from a subtransaction"
msgstr "子事务中无法导出一个快照"
-#: utils/time/snapmgr.c:1239 utils/time/snapmgr.c:1244
-#: utils/time/snapmgr.c:1249 utils/time/snapmgr.c:1264
-#: utils/time/snapmgr.c:1269 utils/time/snapmgr.c:1274
-#: utils/time/snapmgr.c:1373 utils/time/snapmgr.c:1389
-#: utils/time/snapmgr.c:1414
+#: utils/time/snapmgr.c:1359 utils/time/snapmgr.c:1364
+#: utils/time/snapmgr.c:1369 utils/time/snapmgr.c:1384
+#: utils/time/snapmgr.c:1389 utils/time/snapmgr.c:1394
+#: utils/time/snapmgr.c:1409 utils/time/snapmgr.c:1414
+#: utils/time/snapmgr.c:1419 utils/time/snapmgr.c:1519
+#: utils/time/snapmgr.c:1535 utils/time/snapmgr.c:1560
#, c-format
msgid "invalid snapshot data in file \"%s\""
msgstr "文件 \"%s\" 中存在无效快照数据"
-#: utils/time/snapmgr.c:1311
+#: utils/time/snapmgr.c:1456
#, c-format
msgid "SET TRANSACTION SNAPSHOT must be called before any query"
msgstr "SET TRANSACTION SNAPSHOT 必须在任何查询之前调用"
-#: utils/time/snapmgr.c:1320
+#: utils/time/snapmgr.c:1465
#, c-format
-msgid ""
-"a snapshot-importing transaction must have isolation level SERIALIZABLE or "
-"REPEATABLE READ"
-msgstr ""
-"一个snapshot-importing事务的隔离级只能是SERIALIZABLE或者REPEATABLE READ"
+msgid "a snapshot-importing transaction must have isolation level SERIALIZABLE or REPEATABLE READ"
+msgstr "一个snapshot-importing事务的隔离级只能是SERIALIZABLE或者REPEATABLE READ"
-#: utils/time/snapmgr.c:1329 utils/time/snapmgr.c:1338
+#: utils/time/snapmgr.c:1474 utils/time/snapmgr.c:1483
#, c-format
msgid "invalid snapshot identifier: \"%s\""
msgstr "无效快照标识符: \"%s\""
-#: utils/time/snapmgr.c:1427
+#: utils/time/snapmgr.c:1573
#, c-format
-msgid ""
-"a serializable transaction cannot import a snapshot from a non-serializable "
-"transaction"
+msgid "a serializable transaction cannot import a snapshot from a non-serializable transaction"
msgstr "一个可串行化事务不能从非可串行化事务中导入一个快照"
-#: utils/time/snapmgr.c:1431
+#: utils/time/snapmgr.c:1577
#, c-format
-msgid ""
-"a non-read-only serializable transaction cannot import a snapshot from a "
-"read-only transaction"
+msgid "a non-read-only serializable transaction cannot import a snapshot from a read-only transaction"
msgstr "非只读可串行化事务无法导入来自只读事务的快照"
-#: utils/time/snapmgr.c:1446
+#: utils/time/snapmgr.c:1592
#, c-format
msgid "cannot import a snapshot from a different database"
msgstr "无法导入来自不同数据库的快照"
-
-#~ msgid "user name lookup failure: %s"
-#~ msgstr "用户名: %s查找失败"
-
-#~ msgid "mapped win32 error code %lu to %d"
-#~ msgstr "将win32错误代码%2$d映射为%1$lu"
-
-#~ msgid "unrecognized win32 error code: %lu"
-#~ msgstr "未知的 win32 错误码: %lu"
-
-#~ msgid "redo record is at %X/%X; shutdown %s"
-#~ msgstr "重做记录是在%X/%X; 关闭 %s"
-
-#~ msgid "next transaction ID: %u/%u; next OID: %u"
-#~ msgstr "下一个事务ID: %u/%u; 下一个 OID: %u"
-
-#~ msgid "next MultiXactId: %u; next MultiXactOffset: %u"
-#~ msgstr "下一个MultiXactId: %u; 下一个MultiXactOffset: %u"
-
-#~ msgid "oldest unfrozen transaction ID: %u, in database %u"
-#~ msgstr "在数据库%2$u中,最旧的非冻结事务ID是%1$u"
-
-#~ msgid "=> is deprecated as an operator name"
-#~ msgstr "=>做为操作符名称已被废弃"
-
-#~ msgid ""
-#~ "This name may be disallowed altogether in future versions of PostgreSQL."
-#~ msgstr "在将来的PostgreSQL版本中不允许使用这个名称."
-
-#~ msgid "inherited relation \"%s\" is not a table"
-#~ msgstr "继承关系 \"%s\" 不是一个表"
-
-#~ msgid "Specify a USING expression to perform the conversion."
-#~ msgstr "指定一个USING表达式来执行转换"
-
-#~ msgid ""
-#~ "%.0f dead row versions cannot be removed yet.\n"
-#~ "There were %.0f unused item pointers.\n"
-#~ "%u pages are entirely empty.\n"
-#~ "%s."
-#~ msgstr ""
-#~ "已不用的行版本%.0f还不能删除.\n"
-#~ "那里有%.0f个没使用的成员指针.\n"
-#~ "%u页当前完全是空的.\n"
-#~ "%s."
-
-#~ msgid "interval precision specified twice"
-#~ msgstr "两次指定间隔精度"
-
-#~ msgid "received password packet"
-#~ msgstr "接收到口令包"
-
-#~ msgid "could not complete SSL handshake on renegotiation, too many failures"
-#~ msgstr "在再次协商阶段无法完成 SSL 握手 , 因为其间出现了太多的失败"
-
-#~ msgid "could not set socket to blocking mode: %m"
-#~ msgstr "无法将套接字设置为阻塞模式: %m"
-
-#~ msgid "%s: setsysinfo failed: %s\n"
-#~ msgstr "%s: setsysinfo 失败: %s\n"
-
-#~ msgid " -A 1|0 enable/disable run-time assert checking\n"
-#~ msgstr " -A 1|0 打开/关闭运行时断言检查\n"
-
-#~ msgid "subquery must return a column"
-#~ msgstr "子查询必须返回一个字段"
-
-#~ msgid ""
-#~ "Consider increasing the configuration parameter \"checkpoint_segments\"."
-#~ msgstr "认为增加配置参数 \"checkpoint_segments\"."
-
-#~ msgid "archive member \"%s\" too large for tar format"
-#~ msgstr "在 tar 格式中归档成员\"%s\"太大"
-
-#~ msgid "could not determine input data types"
-#~ msgstr "无法确定输入数据类型"
-
-#~ msgid "neither input type is an array"
-#~ msgstr "没有输入类型是数组"
-
-#~ msgid "missing assignment operator"
-#~ msgstr "缺少指定的操作符"
-
-#~ msgid "invalid symbol"
-#~ msgstr "无效符号"
-
-#~ msgid ""
-#~ "must be superuser or have the same role to cancel queries running in "
-#~ "other server processes"
-#~ msgstr "只有超级用户或拥有相同角色的用户可以取消其他服务器进程中的查询"
-
-#~ msgid ""
-#~ "must be superuser or have the same role to terminate other server "
-#~ "processes"
-#~ msgstr "只有超级用户或拥有相同角色的用户可以终止其他服务器进程"
-
-#~ msgid "cannot accept a value of type pg_node_tree"
-#~ msgstr "无法接受一个 pg_node_tree类型值"
-
-#~ msgid "Turns on various assertion checks."
-#~ msgstr "打开各种判断检查."
-
-#~ msgid "This is a debugging aid."
-#~ msgstr "这是一个出错帮助."
-
-#~ msgid "This parameter doesn't do anything."
-#~ msgstr "这个参数不做任何事情."
-
-#~ msgid ""
-#~ "It's just here so that we won't choke on SET AUTOCOMMIT TO ON from 7.3-"
-#~ "vintage clients."
-#~ msgstr "只是这里我们不能从7.3版本的客户端中阻止运行SET AUTOCOMMIT TO ON."
-
-#~ msgid ""
-#~ "Sets the maximum distance in log segments between automatic WAL "
-#~ "checkpoints."
-#~ msgstr "在自动WAL检查点之间设置log段中的最大距离."
-
-#~ msgid ""
-#~ "Set the amount of traffic to send and receive before renegotiating the "
-#~ "encryption keys."
-#~ msgstr "在重新设定加密键之前设定需要进行发送和接收的流量总和"
-
-#~ msgid "SET AUTOCOMMIT TO OFF is no longer supported"
-#~ msgstr "SET AUTOCOMMIT TO OFF 不再被支持"
-
-#~ msgid "assertion checking is not supported by this build"
-#~ msgstr "这个版本的安装不支持使用断言检查"
-
-#~ msgid "Perhaps out of disk space?"
-#~ msgstr "可能超出磁盘空间?"
-
-#~ msgid ""
-#~ "time zone offset %d is not a multiple of 900 sec (15 min) in time zone "
-#~ "file \"%s\", line %d"
-#~ msgstr ""
-#~ "在时区文件 \"%2$s\"中的第%3$d行中时区偏移%1$d不是900秒(15分钟)的倍数."
-
-#~ msgid "Sets the name of the Kerberos service."
-#~ msgstr "设置Kerberos服务的名称"
-
-#~ msgid "No description available."
-#~ msgstr "没有可用的描述"
-
-#~ msgid "insufficient privilege to bypass row-level security"
-#~ msgstr "没有足够的特权绕过行级安全性"
-
-#~ msgid "WAL writer sleep time between WAL flushes."
-#~ msgstr "WAL写进程在两次刷新WAL缓存内容之间的睡眠时间"
-
-#~ msgid "could not convert to time zone \"%s\""
-#~ msgstr "无法转换到时间区域\"%s\""
-
-#~ msgid "argument for function \"exp\" too big"
-#~ msgstr "对于函数 \"exp\" 参数太大"
-
-#~ msgid "must be superuser to rotate log files"
-#~ msgstr "只有超级用户能切换日志文件"
-
-#~ msgid "must be superuser to signal the postmaster"
-#~ msgstr "只有超级用户可以发送信号到postmaster进程"
-
-#~ msgid "could not format \"circle\" value"
-#~ msgstr "无法格式化 \"circle\" 的值"
-
-#~ msgid "invalid input syntax for type circle: \"%s\""
-#~ msgstr "无效的 circle 类型输入语法: \"%s\""
-
-#~ msgid "invalid input syntax for type polygon: \"%s\""
-#~ msgstr "无效的 polygon 类型输入语法: \"%s\""
-
-#~ msgid "invalid input syntax for type lseg: \"%s\""
-#~ msgstr "无效的 lseg 类型输入语法: \"%s\""
-
-#~ msgid "invalid input syntax for type point: \"%s\""
-#~ msgstr "无效的 point 类型输入语法: \"%s\""
-
-#~ msgid "invalid input syntax for type path: \"%s\""
-#~ msgstr "无效的 path 类型输入语法: \"%s\""
-
-#~ msgid "invalid input syntax for type line: \"%s\""
-#~ msgstr "无效的 line 类型输入语法: \"%s\""
-
-#~ msgid "invalid input syntax for type box: \"%s\""
-#~ msgstr "无效的 box 类型输入语法: \"%s\""
-
-#~ msgid "could not format \"path\" value"
-#~ msgstr "无法格式化 \"path\" 值"
-
-#~ msgid "multibyte flag character is not allowed"
-#~ msgstr "不允许使用多字节标志字符"