diff --git a/.abi-compliance-history b/.abi-compliance-history index 68f8b3bcfc1..58c0b0de296 100644 --- a/.abi-compliance-history +++ b/.abi-compliance-history @@ -18,6 +18,52 @@ # Be sure to replace "" with details of your change and # why it is deemed acceptable. +33e3de6d77e87d6c3c6f8f878dd8de42d37c3b8f +# +# Add file_extend_method=posix_fallocate,write_zeros. +# 2026-02-06 17:38:39 +1300 +# +# Modifying GUC tables isn't really an ABI break: the relevant object has +# incomplete type so its layout is unknown to other C translation units. +# +# Discussion: https://www.postgresql.org/message-id/flat/e1f0cd3b-0164-45f5-9705-e922e59df90f%40dunslane.net#8a350b54012c0042f9869d288e978cfe + +492a69e1407029f8c673484f44aa719a63323d77 +# +# Reject ADD CONSTRAINT NOT NULL if name mismatches existing constraint +# 2026-02-03 12:33:29 +0100 +# +# This commit added the constraint name as a parameter to +# AdjustNotNullInheritance(), which it needed to verify that the new name +# matches the existing one. PGXN contained no calls to that function. + +c6ce4dcf9d3b7a8a89aca386124c473f98fc329e +# +# Fix trigger transition table capture for MERGE in CTE queries. +# 2026-01-24 11:30:48 +0000 +# +# This commit changed the TransitionCaptureState structure, replacing +# the "tcs_private" field with 3 separate fields. This structure can +# only be built using MakeTransitionCaptureState(), and PGXN contained +# no calls to MakeTransitionCaptureState() or uses of the +# TransitionCaptureState structure. + +bae8ca82fd00603ebafa0658640d6e4dfe20af92 +# +# Revisit cosmetics of "For inplace update, send nontransactional invalidations." +# 2025-12-15 12:19:53 -0800 +# +# This removed a CacheInvalidateHeapTupleInplace() parameter. PGXN contained +# no calls to that function. + +00eb646ea43410e5df77fed96f4a981e66811796 +# +# Check for CREATE privilege on the schema in CREATE STATISTICS. +# 2025-11-10 09:00:00 -0600 +# +# This commit added a parameter to CreateStatistics(). We are unaware of any +# impacted third-party code. + c8af5019bee5c57502db830f8005a01cba60fee0 # # Fix lookups in pg_{clear,restore}_{attribute,relation}_stats(). diff --git a/.cirrus.tasks.yml b/.cirrus.tasks.yml index dd24afd3567..1f32c53bf83 100644 --- a/.cirrus.tasks.yml +++ b/.cirrus.tasks.yml @@ -340,9 +340,6 @@ task: su postgres <<-EOF set -e ulimit -c unlimited - # Otherwise tests will fail on OpenBSD, due to inability to start enough - # processes. - ulimit -p 256 meson test $MTEST_ARGS --num-processes ${TEST_JOBS} EOF @@ -596,7 +593,7 @@ task: env: CPUS: 4 # always get that much for cirrusci macOS instances BUILD_JOBS: $CPUS - # Test performance regresses noticably when using all cores. 8 seems to + # Test performance regresses noticeably when using all cores. 8 seems to # work OK. See # https://postgr.es/m/20220927040208.l3shfcidovpzqxfh%40awork3.anarazel.de TEST_JOBS: 8 diff --git a/COPYRIGHT b/COPYRIGHT index 3b79b1b4ca0..0a397648dcd 100644 --- a/COPYRIGHT +++ b/COPYRIGHT @@ -1,7 +1,7 @@ PostgreSQL Database Management System (also known as Postgres, formerly known as Postgres95) -Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group +Portions Copyright (c) 1996-2026, PostgreSQL Global Development Group Portions Copyright (c) 1994, The Regents of the University of California diff --git a/configure b/configure index f81fbdff9d6..85f409a593f 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for PostgreSQL 18.1. +# Generated by GNU Autoconf 2.69 for PostgreSQL 18.2. # # Report bugs to . # @@ -582,8 +582,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='PostgreSQL' PACKAGE_TARNAME='postgresql' -PACKAGE_VERSION='18.1' -PACKAGE_STRING='PostgreSQL 18.1' +PACKAGE_VERSION='18.2' +PACKAGE_STRING='PostgreSQL 18.2' PACKAGE_BUGREPORT='pgsql-bugs@lists.postgresql.org' PACKAGE_URL='https://www.postgresql.org/' @@ -1470,7 +1470,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures PostgreSQL 18.1 to adapt to many kinds of systems. +\`configure' configures PostgreSQL 18.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1535,7 +1535,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of PostgreSQL 18.1:";; + short | recursive ) echo "Configuration of PostgreSQL 18.2:";; esac cat <<\_ACEOF @@ -1727,7 +1727,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -PostgreSQL configure 18.1 +PostgreSQL configure 18.2 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2480,7 +2480,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by PostgreSQL $as_me 18.1, which was +It was created by PostgreSQL $as_me 18.2, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -20176,7 +20176,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by PostgreSQL $as_me 18.1, which was +This file was extended by PostgreSQL $as_me 18.2, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -20247,7 +20247,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -PostgreSQL config.status 18.1 +PostgreSQL config.status 18.2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 61e38377d10..70ab05498a5 100644 --- a/configure.ac +++ b/configure.ac @@ -17,7 +17,7 @@ dnl Read the Autoconf manual for details. dnl m4_pattern_forbid(^PGAC_)dnl to catch undefined macros -AC_INIT([PostgreSQL], [18.1], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/]) +AC_INIT([PostgreSQL], [18.2], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/]) m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required. Untested combinations of 'autoconf' and PostgreSQL versions are not diff --git a/contrib/amcheck/t/002_cic.pl b/contrib/amcheck/t/002_cic.pl index 6a0c4f61125..983d0b3cbdd 100644 --- a/contrib/amcheck/t/002_cic.pl +++ b/contrib/amcheck/t/002_cic.pl @@ -64,5 +64,29 @@ ) }); +# Test bt_index_parent_check() with indexes created with +# CREATE INDEX CONCURRENTLY. +$node->safe_psql('postgres', q(CREATE TABLE quebec(i int primary key))); +# Insert two rows into index +$node->safe_psql('postgres', + q(INSERT INTO quebec SELECT i FROM generate_series(1, 2) s(i);)); + +# start background transaction +my $in_progress_h = $node->background_psql('postgres'); +$in_progress_h->query_safe(q(BEGIN; SELECT pg_current_xact_id();)); + +# delete one row from table, while background transaction is in progress +$node->safe_psql('postgres', q(DELETE FROM quebec WHERE i = 1;)); +# create index concurrently, which will skip the deleted row +$node->safe_psql('postgres', + q(CREATE INDEX CONCURRENTLY oscar ON quebec(i);)); + +# check index using bt_index_parent_check +my $result = $node->psql('postgres', + q(SELECT bt_index_parent_check('oscar', heapallindexed => true))); +is($result, '0', 'bt_index_parent_check for CIC after removed row'); + +$in_progress_h->quit; + $node->stop; done_testing(); diff --git a/contrib/amcheck/verify_nbtree.c b/contrib/amcheck/verify_nbtree.c index 5be144ecf05..3de1c06c7cf 100644 --- a/contrib/amcheck/verify_nbtree.c +++ b/contrib/amcheck/verify_nbtree.c @@ -92,9 +92,11 @@ typedef struct BtreeCheckState BufferAccessStrategy checkstrategy; /* - * Info for uniqueness checking. Fill these fields once per index check. + * Info for uniqueness checking. Fill this field and the one below once + * per index check. */ IndexInfo *indexinfo; + /* Table scan snapshot for heapallindexed and checkunique */ Snapshot snapshot; /* @@ -382,7 +384,6 @@ bt_check_every_level(Relation rel, Relation heaprel, bool heapkeyspace, BTMetaPageData *metad; uint32 previouslevel; BtreeLevel current; - Snapshot snapshot = SnapshotAny; if (!readonly) elog(DEBUG1, "verifying consistency of tree structure for index \"%s\"", @@ -433,54 +434,46 @@ bt_check_every_level(Relation rel, Relation heaprel, bool heapkeyspace, state->heaptuplespresent = 0; /* - * Register our own snapshot in !readonly case, rather than asking + * Register our own snapshot for heapallindexed, rather than asking * table_index_build_scan() to do this for us later. This needs to * happen before index fingerprinting begins, so we can later be * certain that index fingerprinting should have reached all tuples * returned by table_index_build_scan(). */ - if (!state->readonly) - { - snapshot = RegisterSnapshot(GetTransactionSnapshot()); + state->snapshot = RegisterSnapshot(GetTransactionSnapshot()); - /* - * GetTransactionSnapshot() always acquires a new MVCC snapshot in - * READ COMMITTED mode. A new snapshot is guaranteed to have all - * the entries it requires in the index. - * - * We must defend against the possibility that an old xact - * snapshot was returned at higher isolation levels when that - * snapshot is not safe for index scans of the target index. This - * is possible when the snapshot sees tuples that are before the - * index's indcheckxmin horizon. Throwing an error here should be - * very rare. It doesn't seem worth using a secondary snapshot to - * avoid this. - */ - if (IsolationUsesXactSnapshot() && rel->rd_index->indcheckxmin && - !TransactionIdPrecedes(HeapTupleHeaderGetXmin(rel->rd_indextuple->t_data), - snapshot->xmin)) - ereport(ERROR, - (errcode(ERRCODE_T_R_SERIALIZATION_FAILURE), - errmsg("index \"%s\" cannot be verified using transaction snapshot", - RelationGetRelationName(rel)))); - } + /* + * GetTransactionSnapshot() always acquires a new MVCC snapshot in + * READ COMMITTED mode. A new snapshot is guaranteed to have all the + * entries it requires in the index. + * + * We must defend against the possibility that an old xact snapshot + * was returned at higher isolation levels when that snapshot is not + * safe for index scans of the target index. This is possible when + * the snapshot sees tuples that are before the index's indcheckxmin + * horizon. Throwing an error here should be very rare. It doesn't + * seem worth using a secondary snapshot to avoid this. + */ + if (IsolationUsesXactSnapshot() && rel->rd_index->indcheckxmin && + !TransactionIdPrecedes(HeapTupleHeaderGetXmin(rel->rd_indextuple->t_data), + state->snapshot->xmin)) + ereport(ERROR, + errcode(ERRCODE_T_R_SERIALIZATION_FAILURE), + errmsg("index \"%s\" cannot be verified using transaction snapshot", + RelationGetRelationName(rel))); } /* - * We need a snapshot to check the uniqueness of the index. For better - * performance take it once per index check. If snapshot already taken - * reuse it. + * We need a snapshot to check the uniqueness of the index. For better + * performance, take it once per index check. If one was already taken + * above, use that. */ if (state->checkunique) { state->indexinfo = BuildIndexInfo(state->rel); - if (state->indexinfo->ii_Unique) - { - if (snapshot != SnapshotAny) - state->snapshot = snapshot; - else - state->snapshot = RegisterSnapshot(GetTransactionSnapshot()); - } + + if (state->indexinfo->ii_Unique && state->snapshot == InvalidSnapshot) + state->snapshot = RegisterSnapshot(GetTransactionSnapshot()); } Assert(!state->rootdescend || state->readonly); @@ -555,13 +548,12 @@ bt_check_every_level(Relation rel, Relation heaprel, bool heapkeyspace, /* * Create our own scan for table_index_build_scan(), rather than * getting it to do so for us. This is required so that we can - * actually use the MVCC snapshot registered earlier in !readonly - * case. + * actually use the MVCC snapshot registered earlier. * * Note that table_index_build_scan() calls heap_endscan() for us. */ scan = table_beginscan_strat(state->heaprel, /* relation */ - snapshot, /* snapshot */ + state->snapshot, /* snapshot */ 0, /* number of keys */ NULL, /* scan key */ true, /* buffer access strategy OK */ @@ -569,16 +561,15 @@ bt_check_every_level(Relation rel, Relation heaprel, bool heapkeyspace, /* * Scan will behave as the first scan of a CREATE INDEX CONCURRENTLY - * behaves in !readonly case. + * behaves. * * It's okay that we don't actually use the same lock strength for the - * heap relation as any other ii_Concurrent caller would in !readonly - * case. We have no reason to care about a concurrent VACUUM - * operation, since there isn't going to be a second scan of the heap - * that needs to be sure that there was no concurrent recycling of - * TIDs. + * heap relation as any other ii_Concurrent caller would. We have no + * reason to care about a concurrent VACUUM operation, since there + * isn't going to be a second scan of the heap that needs to be sure + * that there was no concurrent recycling of TIDs. */ - indexinfo->ii_Concurrent = !state->readonly; + indexinfo->ii_Concurrent = true; /* * Don't wait for uncommitted tuple xact commit/abort when index is a @@ -602,14 +593,11 @@ bt_check_every_level(Relation rel, Relation heaprel, bool heapkeyspace, state->heaptuplespresent, RelationGetRelationName(heaprel), 100.0 * bloom_prop_bits_set(state->filter)))); - if (snapshot != SnapshotAny) - UnregisterSnapshot(snapshot); - bloom_free(state->filter); } /* Be tidy: */ - if (snapshot == SnapshotAny && state->snapshot != InvalidSnapshot) + if (state->snapshot != InvalidSnapshot) UnregisterSnapshot(state->snapshot); MemoryContextDelete(state->targetcontext); } diff --git a/contrib/btree_gist/btree_utils_var.c b/contrib/btree_gist/btree_utils_var.c index d9df2356cd1..96cc08f9054 100644 --- a/contrib/btree_gist/btree_utils_var.c +++ b/contrib/btree_gist/btree_utils_var.c @@ -115,36 +115,47 @@ gbt_var_leaf2node(GBT_VARKEY *leaf, const gbtree_vinfo *tinfo, FmgrInfo *flinfo) /* * returns the common prefix length of a node key + * + * If the underlying type is character data, the prefix length may point in + * the middle of a multibyte character. */ static int32 gbt_var_node_cp_len(const GBT_VARKEY *node, const gbtree_vinfo *tinfo) { GBT_VARKEY_R r = gbt_var_key_readable(node); int32 i = 0; - int32 l = 0; + int32 l_left_to_match = 0; + int32 l_total = 0; int32 t1len = VARSIZE(r.lower) - VARHDRSZ; int32 t2len = VARSIZE(r.upper) - VARHDRSZ; int32 ml = Min(t1len, t2len); char *p1 = VARDATA(r.lower); char *p2 = VARDATA(r.upper); + const char *end1 = p1 + t1len; + const char *end2 = p2 + t2len; if (ml == 0) return 0; while (i < ml) { - if (tinfo->eml > 1 && l == 0) + if (tinfo->eml > 1 && l_left_to_match == 0) { - if ((l = pg_mblen(p1)) != pg_mblen(p2)) + l_total = pg_mblen_range(p1, end1); + if (l_total != pg_mblen_range(p2, end2)) { return i; } + l_left_to_match = l_total; } if (*p1 != *p2) { if (tinfo->eml > 1) { - return (i - l + 1); + int32 l_matched_subset = l_total - l_left_to_match; + + /* end common prefix at final byte of last matching char */ + return i - l_matched_subset; } else { @@ -154,7 +165,7 @@ gbt_var_node_cp_len(const GBT_VARKEY *node, const gbtree_vinfo *tinfo) p1++; p2++; - l--; + l_left_to_match--; i++; } return ml; /* lower == upper */ diff --git a/contrib/dict_xsyn/dict_xsyn.c b/contrib/dict_xsyn/dict_xsyn.c index 1ec5285d6d1..c4eb2ec8bce 100644 --- a/contrib/dict_xsyn/dict_xsyn.c +++ b/contrib/dict_xsyn/dict_xsyn.c @@ -54,14 +54,14 @@ find_word(char *in, char **end) *end = NULL; while (*in && isspace((unsigned char) *in)) - in += pg_mblen(in); + in += pg_mblen_cstr(in); if (!*in || *in == '#') return NULL; start = in; while (*in && !isspace((unsigned char) *in)) - in += pg_mblen(in); + in += pg_mblen_cstr(in); *end = in; diff --git a/contrib/file_fdw/expected/file_fdw.out b/contrib/file_fdw/expected/file_fdw.out index 246e3d3e566..2bbaea29e40 100644 --- a/contrib/file_fdw/expected/file_fdw.out +++ b/contrib/file_fdw/expected/file_fdw.out @@ -456,6 +456,21 @@ SELECT tableoid::regclass, * FROM p2; p2 | 2 | xyzzy (3 rows) +-- Test DELETE/UPDATE/MERGE on a partitioned table when all partitions +-- are excluded and only the dummy root result relation remains. The +-- operation is a no-op but should not fail regardless of whether the +-- foreign child was processed (pruning off) or not (pruning on). +DROP TABLE p2; +SET enable_partition_pruning TO off; +DELETE FROM pt WHERE false; +UPDATE pt SET b = 'x' WHERE false; +MERGE INTO pt t USING (VALUES (1, 'x'::text)) AS s(a, b) + ON false WHEN MATCHED THEN UPDATE SET b = s.b; +SET enable_partition_pruning TO on; +DELETE FROM pt WHERE false; +UPDATE pt SET b = 'x' WHERE false; +MERGE INTO pt t USING (VALUES (1, 'x'::text)) AS s(a, b) + ON false WHEN MATCHED THEN UPDATE SET b = s.b; DROP TABLE pt; -- generated column tests \set filename :abs_srcdir '/data/list1.csv' diff --git a/contrib/file_fdw/sql/file_fdw.sql b/contrib/file_fdw/sql/file_fdw.sql index 1a397ad4bd1..4ccdcbb8d06 100644 --- a/contrib/file_fdw/sql/file_fdw.sql +++ b/contrib/file_fdw/sql/file_fdw.sql @@ -242,6 +242,24 @@ UPDATE pt set a = 1 where a = 2; -- ERROR SELECT tableoid::regclass, * FROM pt; SELECT tableoid::regclass, * FROM p1; SELECT tableoid::regclass, * FROM p2; + +-- Test DELETE/UPDATE/MERGE on a partitioned table when all partitions +-- are excluded and only the dummy root result relation remains. The +-- operation is a no-op but should not fail regardless of whether the +-- foreign child was processed (pruning off) or not (pruning on). +DROP TABLE p2; +SET enable_partition_pruning TO off; +DELETE FROM pt WHERE false; +UPDATE pt SET b = 'x' WHERE false; +MERGE INTO pt t USING (VALUES (1, 'x'::text)) AS s(a, b) + ON false WHEN MATCHED THEN UPDATE SET b = s.b; + +SET enable_partition_pruning TO on; +DELETE FROM pt WHERE false; +UPDATE pt SET b = 'x' WHERE false; +MERGE INTO pt t USING (VALUES (1, 'x'::text)) AS s(a, b) + ON false WHEN MATCHED THEN UPDATE SET b = s.b; + DROP TABLE pt; -- generated column tests diff --git a/contrib/hstore/hstore_io.c b/contrib/hstore/hstore_io.c index 4f867e4bd1f..6cdc6c8cc31 100644 --- a/contrib/hstore/hstore_io.c +++ b/contrib/hstore/hstore_io.c @@ -67,7 +67,7 @@ prssyntaxerror(HSParser *state) errsave(state->escontext, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("syntax error in hstore, near \"%.*s\" at position %d", - pg_mblen(state->ptr), state->ptr, + pg_mblen_cstr(state->ptr), state->ptr, (int) (state->ptr - state->begin)))); /* In soft error situation, return false as convenience for caller */ return false; diff --git a/contrib/intarray/_int_selfuncs.c b/contrib/intarray/_int_selfuncs.c index 9bf64486242..60fd163668f 100644 --- a/contrib/intarray/_int_selfuncs.c +++ b/contrib/intarray/_int_selfuncs.c @@ -19,6 +19,7 @@ #include "catalog/pg_operator.h" #include "catalog/pg_statistic.h" #include "catalog/pg_type.h" +#include "commands/extension.h" #include "miscadmin.h" #include "utils/fmgrprotos.h" #include "utils/lsyscache.h" @@ -170,7 +171,18 @@ _int_matchsel(PG_FUNCTION_ARGS) PG_RETURN_FLOAT8(0.0); } - /* The caller made sure the const is a query, so get it now */ + /* + * Verify that the Const is a query_int, else return a default estimate. + * (This could only fail if someone attached this estimator to the wrong + * operator.) + */ + if (((Const *) other)->consttype != + get_function_sibling_type(fcinfo->flinfo->fn_oid, "query_int")) + { + ReleaseVariableStats(vardata); + PG_RETURN_FLOAT8(DEFAULT_EQ_SEL); + } + query = DatumGetQueryTypeP(((Const *) other)->constvalue); /* Empty query matches nothing */ @@ -326,7 +338,12 @@ static int compare_val_int4(const void *a, const void *b) { int32 key = *(int32 *) a; - const Datum *t = (const Datum *) b; + int32 value = DatumGetInt32(*(const Datum *) b); - return key - DatumGetInt32(*t); + if (key < value) + return -1; + else if (key > value) + return 1; + else + return 0; } diff --git a/contrib/ltree/crc32.c b/contrib/ltree/crc32.c index 134f46a805e..3bcdaa3dce1 100644 --- a/contrib/ltree/crc32.c +++ b/contrib/ltree/crc32.c @@ -10,31 +10,77 @@ #include "postgres.h" #include "ltree.h" +#include "crc32.h" +#include "utils/pg_crc.h" #ifdef LOWER_NODE -#include -#define TOLOWER(x) tolower((unsigned char) (x)) -#else -#define TOLOWER(x) (x) +#include "catalog/pg_collation.h" +#include "utils/pg_locale.h" #endif -#include "crc32.h" -#include "utils/pg_crc.h" +#ifdef LOWER_NODE unsigned int ltree_crc32_sz(const char *buf, int size) { pg_crc32 crc; const char *p = buf; + const char *end = buf + size; + static pg_locale_t locale = NULL; + + if (!locale) + locale = pg_newlocale_from_collation(DEFAULT_COLLATION_OID); INIT_TRADITIONAL_CRC32(crc); - while (size > 0) + if (locale->ctype_is_c) { - char c = (char) TOLOWER(*p); + while (size > 0) + { + char c = pg_ascii_tolower(*p); + + COMP_TRADITIONAL_CRC32(crc, &c, 1); + size--; + p++; + } + } + else + { + while (size > 0) + { + char foldstr[UNICODE_CASEMAP_BUFSZ]; + int srclen = pg_mblen_range(p, end); + size_t foldlen; + + /* fold one codepoint at a time */ + foldlen = pg_strfold(foldstr, UNICODE_CASEMAP_BUFSZ, p, srclen, + locale); + + COMP_TRADITIONAL_CRC32(crc, foldstr, foldlen); + + size -= srclen; + p += srclen; + } + } + FIN_TRADITIONAL_CRC32(crc); + return (unsigned int) crc; +} + +#else - COMP_TRADITIONAL_CRC32(crc, &c, 1); +unsigned int +ltree_crc32_sz(const char *buf, int size) +{ + pg_crc32 crc; + const char *p = buf; + + INIT_TRADITIONAL_CRC32(crc); + while (size > 0) + { + COMP_TRADITIONAL_CRC32(crc, p, 1); size--; p++; } FIN_TRADITIONAL_CRC32(crc); return (unsigned int) crc; } + +#endif /* !LOWER_NODE */ diff --git a/contrib/ltree/lquery_op.c b/contrib/ltree/lquery_op.c index a6466f575fd..14d84e81c0b 100644 --- a/contrib/ltree/lquery_op.c +++ b/contrib/ltree/lquery_op.c @@ -27,21 +27,22 @@ getlexeme(char *start, char *end, int *len) char *ptr; while (start < end && t_iseq(start, '_')) - start += pg_mblen(start); + start += pg_mblen_range(start, end); ptr = start; if (ptr >= end) return NULL; while (ptr < end && !t_iseq(ptr, '_')) - ptr += pg_mblen(ptr); + ptr += pg_mblen_range(ptr, end); *len = ptr - start; return start; } bool -compare_subnode(ltree_level *t, char *qn, int len, int (*cmpptr) (const char *, const char *, size_t), bool anyend) +compare_subnode(ltree_level *t, char *qn, int len, + ltree_prefix_eq_func prefix_eq, bool anyend) { char *endt = t->name + t->len; char *endq = qn + len; @@ -57,7 +58,7 @@ compare_subnode(ltree_level *t, char *qn, int len, int (*cmpptr) (const char *, while ((tn = getlexeme(tn, endt, &lent)) != NULL) { if ((lent == lenq || (lent > lenq && anyend)) && - (*cmpptr) (qn, tn, lenq) == 0) + (*prefix_eq) (qn, lenq, tn, lent)) { isok = true; @@ -74,14 +75,79 @@ compare_subnode(ltree_level *t, char *qn, int len, int (*cmpptr) (const char *, return true; } -int -ltree_strncasecmp(const char *a, const char *b, size_t s) +/* + * Check if 'a' is a prefix of 'b'. + */ +bool +ltree_prefix_eq(const char *a, size_t a_sz, const char *b, size_t b_sz) +{ + if (a_sz > b_sz) + return false; + else + return (strncmp(a, b, a_sz) == 0); +} + +/* + * Case-insensitive check if 'a' is a prefix of 'b'. + */ +bool +ltree_prefix_eq_ci(const char *a, size_t a_sz, const char *b, size_t b_sz) { - char *al = str_tolower(a, s, DEFAULT_COLLATION_OID); - char *bl = str_tolower(b, s, DEFAULT_COLLATION_OID); - int res; + static pg_locale_t locale = NULL; + size_t al_sz = a_sz + 1; + size_t al_len; + char *al; + size_t bl_sz = b_sz + 1; + size_t bl_len; + char *bl; + bool res; + + if (!locale) + locale = pg_newlocale_from_collation(DEFAULT_COLLATION_OID); + + if (locale->ctype_is_c) + { + if (a_sz > b_sz) + return false; + + for (int i = 0; i < a_sz; i++) + { + if (pg_ascii_tolower(a[i]) != pg_ascii_tolower(b[i])) + return false; + } + + return true; + } + + al = palloc(al_sz); + bl = palloc(bl_sz); + + /* casefold both a and b */ + + al_len = pg_strfold(al, al_sz, a, a_sz, locale); + if (al_len + 1 > al_sz) + { + /* grow buffer if needed and retry */ + al_sz = al_len + 1; + al = repalloc(al, al_sz); + al_len = pg_strfold(al, al_sz, a, a_sz, locale); + Assert(al_len + 1 <= al_sz); + } + + bl_len = pg_strfold(bl, bl_sz, b, b_sz, locale); + if (bl_len + 1 > bl_sz) + { + /* grow buffer if needed and retry */ + bl_sz = bl_len + 1; + bl = repalloc(bl, bl_sz); + bl_len = pg_strfold(bl, bl_sz, b, b_sz, locale); + Assert(bl_len + 1 <= bl_sz); + } - res = strncmp(al, bl, s); + if (al_len > bl_len) + res = false; + else + res = (strncmp(al, bl, al_len) == 0); pfree(al); pfree(bl); @@ -109,19 +175,19 @@ checkLevel(lquery_level *curq, ltree_level *curt) for (int i = 0; i < curq->numvar; i++) { - int (*cmpptr) (const char *, const char *, size_t); + ltree_prefix_eq_func prefix_eq; - cmpptr = (curvar->flag & LVAR_INCASE) ? ltree_strncasecmp : strncmp; + prefix_eq = (curvar->flag & LVAR_INCASE) ? ltree_prefix_eq_ci : ltree_prefix_eq; if (curvar->flag & LVAR_SUBLEXEME) { - if (compare_subnode(curt, curvar->name, curvar->len, cmpptr, + if (compare_subnode(curt, curvar->name, curvar->len, prefix_eq, (curvar->flag & LVAR_ANYEND))) return success; } else if ((curvar->len == curt->len || (curt->len > curvar->len && (curvar->flag & LVAR_ANYEND))) && - (*cmpptr) (curvar->name, curt->name, curvar->len) == 0) + (*prefix_eq) (curvar->name, curvar->len, curt->name, curt->len)) return success; curvar = LVAR_NEXT(curvar); diff --git a/contrib/ltree/ltree.h b/contrib/ltree/ltree.h index 5e0761641d3..b0ded40eba9 100644 --- a/contrib/ltree/ltree.h +++ b/contrib/ltree/ltree.h @@ -127,7 +127,7 @@ typedef struct #define LQUERY_HASNOT 0x01 /* valid label chars are alphanumerics, underscores and hyphens */ -#define ISLABEL(x) ( t_isalnum(x) || t_iseq(x, '_') || t_iseq(x, '-') ) +#define ISLABEL(x) ( t_isalnum_cstr(x) || t_iseq(x, '_') || t_iseq(x, '-') ) /* full text query */ @@ -157,6 +157,8 @@ typedef struct char data[FLEXIBLE_ARRAY_MEMBER]; } ltxtquery; +typedef bool (*ltree_prefix_eq_func) (const char *, size_t, const char *, size_t); + #define HDRSIZEQT MAXALIGN(VARHDRSZ + sizeof(int32)) #define COMPUTESIZE(size,lenofoperand) ( HDRSIZEQT + (size) * sizeof(ITEM) + (lenofoperand) ) #define LTXTQUERY_TOO_BIG(size,lenofoperand) \ @@ -208,9 +210,10 @@ bool ltree_execute(ITEM *curitem, void *checkval, int ltree_compare(const ltree *a, const ltree *b); bool inner_isparent(const ltree *c, const ltree *p); bool compare_subnode(ltree_level *t, char *qn, int len, - int (*cmpptr) (const char *, const char *, size_t), bool anyend); + ltree_prefix_eq_func prefix_eq, bool anyend); ltree *lca_inner(ltree **a, int len); -int ltree_strncasecmp(const char *a, const char *b, size_t s); +bool ltree_prefix_eq(const char *a, size_t a_sz, const char *b, size_t b_sz); +bool ltree_prefix_eq_ci(const char *a, size_t a_sz, const char *b, size_t b_sz); /* fmgr macros for ltree objects */ #define DatumGetLtreeP(X) ((ltree *) PG_DETOAST_DATUM(X)) diff --git a/contrib/ltree/ltree_io.c b/contrib/ltree/ltree_io.c index b54a15d6c68..f42592144c5 100644 --- a/contrib/ltree/ltree_io.c +++ b/contrib/ltree/ltree_io.c @@ -54,7 +54,7 @@ parse_ltree(const char *buf, struct Node *escontext) ptr = buf; while (*ptr) { - charlen = pg_mblen(ptr); + charlen = pg_mblen_cstr(ptr); if (t_iseq(ptr, '.')) num++; ptr += charlen; @@ -69,7 +69,7 @@ parse_ltree(const char *buf, struct Node *escontext) ptr = buf; while (*ptr) { - charlen = pg_mblen(ptr); + charlen = pg_mblen_cstr(ptr); switch (state) { @@ -291,7 +291,7 @@ parse_lquery(const char *buf, struct Node *escontext) ptr = buf; while (*ptr) { - charlen = pg_mblen(ptr); + charlen = pg_mblen_cstr(ptr); if (t_iseq(ptr, '.')) num++; @@ -311,7 +311,7 @@ parse_lquery(const char *buf, struct Node *escontext) ptr = buf; while (*ptr) { - charlen = pg_mblen(ptr); + charlen = pg_mblen_cstr(ptr); switch (state) { diff --git a/contrib/ltree/ltxtquery_io.c b/contrib/ltree/ltxtquery_io.c index ec331607793..3dbb0a10773 100644 --- a/contrib/ltree/ltxtquery_io.c +++ b/contrib/ltree/ltxtquery_io.c @@ -64,7 +64,7 @@ gettoken_query(QPRS_STATE *state, int32 *val, int32 *lenval, char **strval, uint for (;;) { - charlen = pg_mblen(state->buf); + charlen = pg_mblen_cstr(state->buf); switch (state->state) { diff --git a/contrib/ltree/ltxtquery_op.c b/contrib/ltree/ltxtquery_op.c index 002102c9c75..3dcbab2c484 100644 --- a/contrib/ltree/ltxtquery_op.c +++ b/contrib/ltree/ltxtquery_op.c @@ -58,19 +58,19 @@ checkcondition_str(void *checkval, ITEM *val) ltree_level *level = LTREE_FIRST(((CHKVAL *) checkval)->node); int tlen = ((CHKVAL *) checkval)->node->numlevel; char *op = ((CHKVAL *) checkval)->operand + val->distance; - int (*cmpptr) (const char *, const char *, size_t); + ltree_prefix_eq_func prefix_eq; - cmpptr = (val->flag & LVAR_INCASE) ? ltree_strncasecmp : strncmp; + prefix_eq = (val->flag & LVAR_INCASE) ? ltree_prefix_eq_ci : ltree_prefix_eq; while (tlen > 0) { if (val->flag & LVAR_SUBLEXEME) { - if (compare_subnode(level, op, val->length, cmpptr, (val->flag & LVAR_ANYEND))) + if (compare_subnode(level, op, val->length, prefix_eq, (val->flag & LVAR_ANYEND))) return true; } else if ((val->length == level->len || (level->len > val->length && (val->flag & LVAR_ANYEND))) && - (*cmpptr) (op, level->name, val->length) == 0) + (*prefix_eq) (op, val->length, level->name, level->len)) return true; tlen--; diff --git a/contrib/pageinspect/heapfuncs.c b/contrib/pageinspect/heapfuncs.c index 377ae30d1fa..e58f5f9cdf7 100644 --- a/contrib/pageinspect/heapfuncs.c +++ b/contrib/pageinspect/heapfuncs.c @@ -101,7 +101,7 @@ text_to_bits(char *str, int len) ereport(ERROR, (errcode(ERRCODE_DATA_CORRUPTED), errmsg("invalid character \"%.*s\" in t_bits string", - pg_mblen(str + off), str + off))); + pg_mblen_cstr(str + off), str + off))); if (off % 8 == 7) bits[off / 8] = byte; diff --git a/contrib/pg_buffercache/pg_buffercache_pages.c b/contrib/pg_buffercache/pg_buffercache_pages.c index 3df04c98959..7d6af3f55eb 100644 --- a/contrib/pg_buffercache/pg_buffercache_pages.c +++ b/contrib/pg_buffercache/pg_buffercache_pages.c @@ -366,7 +366,7 @@ pg_buffercache_numa_pages(PG_FUNCTION_ARGS) /* Used to determine the NUMA node for all OS pages at once */ os_page_ptrs = palloc0(sizeof(void *) * os_page_count); - os_page_status = palloc(sizeof(uint64) * os_page_count); + os_page_status = palloc(sizeof(int) * os_page_count); /* Fill pointers for all the memory pages. */ idx = 0; @@ -526,8 +526,18 @@ pg_buffercache_numa_pages(PG_FUNCTION_ARGS) values[1] = Int64GetDatum(fctx->record[i].page_num); nulls[1] = false; - values[2] = Int32GetDatum(fctx->record[i].numa_node); - nulls[2] = false; + /* status is valid node number */ + if (fctx->record[i].numa_node >= 0) + { + values[2] = Int32GetDatum(fctx->record[i].numa_node); + nulls[2] = false; + } + else + { + /* some kind of error (e.g. pages moved to swap) */ + values[2] = (Datum) 0; + nulls[2] = true; + } /* Build and return the tuple. */ tuple = heap_form_tuple(fctx->tupdesc, values, nulls); diff --git a/contrib/pg_stat_statements/expected/select.out b/contrib/pg_stat_statements/expected/select.out index 75c896f3885..a069119c790 100644 --- a/contrib/pg_stat_statements/expected/select.out +++ b/contrib/pg_stat_statements/expected/select.out @@ -459,6 +459,102 @@ SELECT COUNT(*) FROM pg_stat_statements WHERE query LIKE '%FETCH FIRST%'; 2 (1 row) +-- GROUP BY, HAVING, GROUPING +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a; + count +------- + 1 +(1 row) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b; + count +------- + 1 +(1 row) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a, b; + count +------- + 1 +(1 row) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b, a; + count +------- + 1 +(1 row) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY GROUPING SETS(a, ()); + count +------- + 1 + 1 +(2 rows) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY GROUPING SETS(b, ()); + count +------- + 1 + 1 +(2 rows) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a HAVING a = 1; + count +------- + 1 +(1 row) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a HAVING a = 2; + count +------- +(0 rows) + +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b HAVING b = 1; + count +------- +(0 rows) + +SELECT GROUPING(a) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a; + grouping +---------- + 0 +(1 row) + +SELECT GROUPING(b) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b; + grouping +---------- + 0 +(1 row) + +SELECT GROUPING(b) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a, b; + grouping +---------- + 0 +(1 row) + +SELECT GROUPING(b) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b, a; + grouping +---------- + 0 +(1 row) + +SELECT calls, query FROM pg_stat_statements WHERE query LIKE '%GROUP BY%' ORDER BY query COLLATE "C"; + calls | query +-------+------------------------------------------------------------------------------------------- + 1 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY GROUPING SETS(a, ()) + 1 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY GROUPING SETS(b, ()) + 1 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY a + 2 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY a HAVING a = $3 + 1 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY a, b + 1 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY b + 1 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY b HAVING b = $3 + 1 | SELECT COUNT(*) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY b, a + 1 | SELECT GROUPING(a) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY a + 1 | SELECT GROUPING(b) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY a, b + 1 | SELECT GROUPING(b) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY b + 1 | SELECT GROUPING(b) FROM (VALUES ($1::INT, $2::INT)) AS t(a, b) GROUP BY b, a +(12 rows) + -- GROUP BY [DISTINCT] SELECT a, b, c FROM (VALUES (1, 2, 3), (4, NULL, 6), (7, 8, 9)) AS t (a, b, c) @@ -548,7 +644,7 @@ SELECT ( SELECT COUNT(*) FROM pg_stat_statements WHERE query LIKE '%SELECT GROUPING%'; count ------- - 2 + 6 (1 row) SELECT pg_stat_statements_reset() IS NOT NULL AS t; diff --git a/contrib/pg_stat_statements/expected/squashing.out b/contrib/pg_stat_statements/expected/squashing.out index d5bb67c7222..6963a434db9 100644 --- a/contrib/pg_stat_statements/expected/squashing.out +++ b/contrib/pg_stat_statements/expected/squashing.out @@ -872,6 +872,23 @@ SELECT (ROW(ARRAY[1, 2], ARRAY[1, $1, 3])).*, 1 \bind 1 {1,2} | {1,1,3} | 1 (1 row) +-- IN and ANY clauses with Vars are not squashed. +SELECT * FROM test_squash a, test_squash b WHERE a.id IN (1, 2, 3, b.id, b.id + 1); + id | data | id | data +----+------+----+------ +(0 rows) + +SELECT * FROM test_squash a, test_squash b WHERE a.id = ANY (array[1, ((b.id + b.id * 2)), 5]); + id | data | id | data +----+------+----+------ +(0 rows) + +SELECT * FROM test_squash a, test_squash b WHERE a.id IN ($1, $2, $3, b.id, b.id + $4) \bind 1 2 3 1 +; + id | data | id | data +----+------+----+------ +(0 rows) + SELECT query, calls FROM pg_stat_statements ORDER BY query COLLATE "C"; query | calls -------------------------------------------------------------------------------------------------------------+------- @@ -884,8 +901,11 @@ SELECT query, calls FROM pg_stat_statements ORDER BY query COLLATE "C"; SELECT (ROW(ARRAY[$1 /*, ... */])).* | 1 SELECT (ROW(ARRAY[$1 /*, ... */], ARRAY[$2 /*, ... */])).* | 1 SELECT (ROW(ARRAY[$1 /*, ... */], ARRAY[$2 /*, ... */])).*, $3 | 1 + SELECT * FROM test_squash a, test_squash b WHERE a.id = ANY (array[$1, ((b.id + b.id * $2)), $3]) | 1 + SELECT * FROM test_squash a, test_squash b WHERE a.id IN ($1, $2, $3, b.id, b.id + $4) | 1 + SELECT * FROM test_squash a, test_squash b WHERE a.id IN ($1, $2, $3, b.id, b.id + $4) | 1 SELECT pg_stat_statements_reset() IS NOT NULL AS t | 1 -(8 rows) +(11 rows) -- -- cleanup diff --git a/contrib/pg_stat_statements/sql/select.sql b/contrib/pg_stat_statements/sql/select.sql index 11662cde08c..a10d618c034 100644 --- a/contrib/pg_stat_statements/sql/select.sql +++ b/contrib/pg_stat_statements/sql/select.sql @@ -158,6 +158,22 @@ FETCH FIRST 2 ROW ONLY; SELECT COUNT(*) FROM pg_stat_statements WHERE query LIKE '%FETCH FIRST%'; +-- GROUP BY, HAVING, GROUPING +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a; +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b; +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a, b; +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b, a; +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY GROUPING SETS(a, ()); +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY GROUPING SETS(b, ()); +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a HAVING a = 1; +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a HAVING a = 2; +SELECT COUNT(*) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b HAVING b = 1; +SELECT GROUPING(a) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a; +SELECT GROUPING(b) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b; +SELECT GROUPING(b) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY a, b; +SELECT GROUPING(b) FROM (VALUES (1::INT, 2::INT)) AS t(a, b) GROUP BY b, a; +SELECT calls, query FROM pg_stat_statements WHERE query LIKE '%GROUP BY%' ORDER BY query COLLATE "C"; + -- GROUP BY [DISTINCT] SELECT a, b, c FROM (VALUES (1, 2, 3), (4, NULL, 6), (7, 8, 9)) AS t (a, b, c) diff --git a/contrib/pg_stat_statements/sql/squashing.sql b/contrib/pg_stat_statements/sql/squashing.sql index 03b0515f872..2100f2d83fd 100644 --- a/contrib/pg_stat_statements/sql/squashing.sql +++ b/contrib/pg_stat_statements/sql/squashing.sql @@ -313,6 +313,12 @@ SELECT (ROW(ARRAY[1, 2], ARRAY[1, 2, 3])).*; SELECT 1, 2, (ROW(ARRAY[1, 2], ARRAY[1, 2, 3])).*, 3, 4; SELECT (ROW(ARRAY[1, 2], ARRAY[1, $1, 3])).*, 1 \bind 1 ; + +-- IN and ANY clauses with Vars are not squashed. +SELECT * FROM test_squash a, test_squash b WHERE a.id IN (1, 2, 3, b.id, b.id + 1); +SELECT * FROM test_squash a, test_squash b WHERE a.id = ANY (array[1, ((b.id + b.id * 2)), 5]); +SELECT * FROM test_squash a, test_squash b WHERE a.id IN ($1, $2, $3, b.id, b.id + $4) \bind 1 2 3 1 +; SELECT query, calls FROM pg_stat_statements ORDER BY query COLLATE "C"; -- diff --git a/contrib/pg_trgm/Makefile b/contrib/pg_trgm/Makefile index 1fbdc9ec1ef..c1756993ec7 100644 --- a/contrib/pg_trgm/Makefile +++ b/contrib/pg_trgm/Makefile @@ -14,7 +14,7 @@ DATA = pg_trgm--1.5--1.6.sql pg_trgm--1.4--1.5.sql pg_trgm--1.3--1.4.sql \ pg_trgm--1.0--1.1.sql PGFILEDESC = "pg_trgm - trigram matching" -REGRESS = pg_trgm pg_word_trgm pg_strict_word_trgm +REGRESS = pg_trgm pg_utf8_trgm pg_word_trgm pg_strict_word_trgm ifdef USE_PGXS PG_CONFIG = pg_config diff --git a/contrib/pg_trgm/data/trgm_utf8.data b/contrib/pg_trgm/data/trgm_utf8.data new file mode 100644 index 00000000000..713856e76a6 --- /dev/null +++ b/contrib/pg_trgm/data/trgm_utf8.data @@ -0,0 +1,50 @@ +Mathematics +数学 +गणित +Matemáticas +رياضيات +Mathématiques +গণিত +Matemática +Математика +ریاضی +Matematika +Mathematik +数学 +Mathematics +गणित +గణితం +Matematik +கணிதம் +數學 +Toán học +Matematika +数学 +수학 +ریاضی +Lissafi +Hisabati +Matematika +Matematica +ریاضی +ಗಣಿತ +ગણિત +คณิตศาสตร์ +ሂሳብ +गणित +ਗਣਿਤ +數學 +数学 +Iṣiro +數學 +သင်္ချာ +Herrega +رياضي +गणित +Математика +Matematyka +ഗണിതം +Matematika +رياضي +Matematika +Matematică diff --git a/contrib/pg_trgm/expected/pg_utf8_trgm.out b/contrib/pg_trgm/expected/pg_utf8_trgm.out new file mode 100644 index 00000000000..0768e7d6a83 --- /dev/null +++ b/contrib/pg_trgm/expected/pg_utf8_trgm.out @@ -0,0 +1,8 @@ +SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset +\if :skip_test +\quit +\endif +-- Index 50 translations of the word "Mathematics" +CREATE TEMP TABLE mb (s text); +\copy mb from 'data/trgm_utf8.data' +CREATE INDEX ON mb USING gist(s gist_trgm_ops); diff --git a/contrib/pg_trgm/expected/pg_utf8_trgm_1.out b/contrib/pg_trgm/expected/pg_utf8_trgm_1.out new file mode 100644 index 00000000000..8505c4fa552 --- /dev/null +++ b/contrib/pg_trgm/expected/pg_utf8_trgm_1.out @@ -0,0 +1,3 @@ +SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset +\if :skip_test +\quit diff --git a/contrib/pg_trgm/meson.build b/contrib/pg_trgm/meson.build index a31aa5c574d..b808215f74d 100644 --- a/contrib/pg_trgm/meson.build +++ b/contrib/pg_trgm/meson.build @@ -39,6 +39,7 @@ tests += { 'regress': { 'sql': [ 'pg_trgm', + 'pg_utf8_trgm', 'pg_word_trgm', 'pg_strict_word_trgm', ], diff --git a/contrib/pg_trgm/sql/pg_utf8_trgm.sql b/contrib/pg_trgm/sql/pg_utf8_trgm.sql new file mode 100644 index 00000000000..0dd962ced83 --- /dev/null +++ b/contrib/pg_trgm/sql/pg_utf8_trgm.sql @@ -0,0 +1,9 @@ +SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset +\if :skip_test +\quit +\endif + +-- Index 50 translations of the word "Mathematics" +CREATE TEMP TABLE mb (s text); +\copy mb from 'data/trgm_utf8.data' +CREATE INDEX ON mb USING gist(s gist_trgm_ops); diff --git a/contrib/pg_trgm/trgm.h b/contrib/pg_trgm/trgm.h index ca017585369..ca23aad4dd9 100644 --- a/contrib/pg_trgm/trgm.h +++ b/contrib/pg_trgm/trgm.h @@ -47,7 +47,7 @@ typedef char trgm[3]; } while(0) extern int (*CMPTRGM) (const void *a, const void *b); -#define ISWORDCHR(c) (t_isalnum(c)) +#define ISWORDCHR(c, len) (t_isalnum_with_len(c, len)) #define ISPRINTABLECHAR(a) ( isascii( *(unsigned char*)(a) ) && (isalnum( *(unsigned char*)(a) ) || *(unsigned char*)(a)==' ') ) #define ISPRINTABLETRGM(t) ( ISPRINTABLECHAR( ((char*)(t)) ) && ISPRINTABLECHAR( ((char*)(t))+1 ) && ISPRINTABLECHAR( ((char*)(t))+2 ) ) diff --git a/contrib/pg_trgm/trgm_gist.c b/contrib/pg_trgm/trgm_gist.c index 5ba895217b0..43afd11fa67 100644 --- a/contrib/pg_trgm/trgm_gist.c +++ b/contrib/pg_trgm/trgm_gist.c @@ -699,10 +699,13 @@ gtrgm_penalty(PG_FUNCTION_ARGS) if (ISARRKEY(newval)) { char *cache = (char *) fcinfo->flinfo->fn_extra; - TRGM *cachedVal = (TRGM *) (cache + MAXALIGN(siglen)); + TRGM *cachedVal = NULL; Size newvalsize = VARSIZE(newval); BITVECP sign; + if (cache != NULL) + cachedVal = (TRGM *) (cache + MAXALIGN(siglen)); + /* * Cache the sign data across multiple calls with the same newval. */ diff --git a/contrib/pg_trgm/trgm_op.c b/contrib/pg_trgm/trgm_op.c index 29b39ec8a4c..ca33cb63fc3 100644 --- a/contrib/pg_trgm/trgm_op.c +++ b/contrib/pg_trgm/trgm_op.c @@ -66,6 +66,78 @@ typedef uint8 TrgmBound; #define WORD_SIMILARITY_STRICT 0x02 /* force bounds of extent to match * word bounds */ +/* + * A growable array of trigrams + * + * The actual array of trigrams is in 'datum'. Note that the other fields in + * 'datum', i.e. datum->flags and the varlena length, are not kept up to date + * when items are added to the growable array. We merely reserve the space + * for them here. You must fill those other fields before using 'datum' as a + * proper TRGM datum. + */ +typedef struct +{ + TRGM *datum; /* trigram array */ + int length; /* number of trigrams in the array */ + int allocated; /* allocated size of 'datum' (# of trigrams) */ +} growable_trgm_array; + +/* + * Allocate a new growable array. + * + * 'slen' is the size of the source string that we're extracting the trigrams + * from. It is used to choose the initial size of the array. + */ +static void +init_trgm_array(growable_trgm_array *arr, int slen) +{ + size_t init_size; + + /* + * In the extreme case, the input string consists entirely of one + * character words, like "a b c", where each word is expanded to two + * trigrams. This is not a strict upper bound though, because when + * IGNORECASE is defined, we convert the input string to lowercase before + * extracting the trigrams, which in rare cases can expand one input + * character into multiple characters. + */ + init_size = (size_t) slen + 1; + + /* + * Guard against possible overflow in the palloc request. (We don't worry + * about the additive constants, since palloc can detect requests that are + * a little above MaxAllocSize --- we just need to prevent integer + * overflow in the multiplications.) + */ + if (init_size > MaxAllocSize / sizeof(trgm)) + ereport(ERROR, + (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), + errmsg("out of memory"))); + + arr->datum = palloc(CALCGTSIZE(ARRKEY, init_size)); + arr->allocated = init_size; + arr->length = 0; +} + +/* Make sure the array can hold at least 'needed' more trigrams */ +static void +enlarge_trgm_array(growable_trgm_array *arr, int needed) +{ + size_t new_needed = (size_t) arr->length + needed; + + if (new_needed > arr->allocated) + { + /* Guard against possible overflow, like in init_trgm_array */ + if (new_needed > MaxAllocSize / sizeof(trgm)) + ereport(ERROR, + (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), + errmsg("out of memory"))); + + arr->datum = repalloc(arr->datum, CALCGTSIZE(ARRKEY, new_needed)); + arr->allocated = new_needed; + } +} + /* * Module load callback */ @@ -220,22 +292,31 @@ comp_trgm(const void *a, const void *b) * endword points to the character after word */ static char * -find_word(char *str, int lenstr, char **endword, int *charlen) +find_word(char *str, int lenstr, char **endword) { char *beginword = str; + const char *endstr = str + lenstr; - while (beginword - str < lenstr && !ISWORDCHR(beginword)) - beginword += pg_mblen(beginword); + while (beginword < endstr) + { + int clen = pg_mblen_range(beginword, endstr); - if (beginword - str >= lenstr) + if (ISWORDCHR(beginword, clen)) + break; + beginword += clen; + } + + if (beginword >= endstr) return NULL; *endword = beginword; - *charlen = 0; - while (*endword - str < lenstr && ISWORDCHR(*endword)) + while (*endword < endstr) { - *endword += pg_mblen(*endword); - (*charlen)++; + int clen = pg_mblen_range(*endword, endstr); + + if (!ISWORDCHR(*endword, clen)) + break; + *endword += clen; } return beginword; @@ -269,78 +350,138 @@ compact_trigram(trgm *tptr, char *str, int bytelen) } /* - * Adds trigrams from words (already padded). + * Adds trigrams from the word in 'str' (already padded if necessary). */ -static trgm * -make_trigrams(trgm *tptr, char *str, int bytelen, int charlen) +static void +make_trigrams(growable_trgm_array *dst, char *str, int bytelen) { + trgm *tptr; char *ptr = str; - if (charlen < 3) - return tptr; + if (bytelen < 3) + return; - if (bytelen > charlen) - { - /* Find multibyte character boundaries and apply compact_trigram */ - int lenfirst = pg_mblen(str), - lenmiddle = pg_mblen(str + lenfirst), - lenlast = pg_mblen(str + lenfirst + lenmiddle); + /* max number of trigrams = strlen - 2 */ + enlarge_trgm_array(dst, bytelen - 2); + tptr = GETARR(dst->datum) + dst->length; - while ((ptr - str) + lenfirst + lenmiddle + lenlast <= bytelen) + if (pg_encoding_max_length(GetDatabaseEncoding()) == 1) + { + while (ptr < str + bytelen - 2) { - compact_trigram(tptr, ptr, lenfirst + lenmiddle + lenlast); - - ptr += lenfirst; + CPTRGM(tptr, ptr); + ptr++; tptr++; - - lenfirst = lenmiddle; - lenmiddle = lenlast; - lenlast = pg_mblen(ptr + lenfirst + lenmiddle); } } else { - /* Fast path when there are no multibyte characters */ - Assert(bytelen == charlen); + int lenfirst, + lenmiddle, + lenlast; + char *endptr; - while (ptr - str < bytelen - 2 /* number of trigrams = strlen - 2 */ ) + /* + * Fast path as long as there are no multibyte characters + */ + if (!IS_HIGHBIT_SET(ptr[0]) && !IS_HIGHBIT_SET(ptr[1])) { - CPTRGM(tptr, ptr); - ptr++; + while (!IS_HIGHBIT_SET(ptr[2])) + { + CPTRGM(tptr, ptr); + ptr++; + tptr++; + + if (ptr == str + bytelen - 2) + goto done; + } + + lenfirst = 1; + lenmiddle = 1; + lenlast = pg_mblen_unbounded(ptr + 2); + } + else + { + lenfirst = pg_mblen_unbounded(ptr); + if (ptr + lenfirst >= str + bytelen) + goto done; + lenmiddle = pg_mblen_unbounded(ptr + lenfirst); + if (ptr + lenfirst + lenmiddle >= str + bytelen) + goto done; + lenlast = pg_mblen_unbounded(ptr + lenfirst + lenmiddle); + } + + /* + * Slow path to handle any remaining multibyte characters + * + * As we go, 'ptr' points to the beginning of the current + * three-character string and 'endptr' points to just past it. + */ + endptr = ptr + lenfirst + lenmiddle + lenlast; + while (endptr <= str + bytelen) + { + compact_trigram(tptr, ptr, endptr - ptr); tptr++; + + /* Advance to the next character */ + if (endptr == str + bytelen) + break; + ptr += lenfirst; + lenfirst = lenmiddle; + lenmiddle = lenlast; + lenlast = pg_mblen_unbounded(endptr); + endptr += lenlast; } } - return tptr; +done: + dst->length = tptr - GETARR(dst->datum); + Assert(dst->length <= dst->allocated); } /* * Make array of trigrams without sorting and removing duplicate items. * - * trg: where to return the array of trigrams. + * dst: where to return the array of trigrams. * str: source string, of length slen bytes. - * bounds: where to return bounds of trigrams (if needed). - * - * Returns length of the generated array. + * bounds_p: where to return bounds of trigrams (if needed). */ -static int -generate_trgm_only(trgm *trg, char *str, int slen, TrgmBound *bounds) +static void +generate_trgm_only(growable_trgm_array *dst, char *str, int slen, TrgmBound **bounds_p) { - trgm *tptr; + size_t buflen; char *buf; - int charlen, - bytelen; + int bytelen; char *bword, *eword; + TrgmBound *bounds = NULL; + int bounds_allocated = 0; - if (slen + LPADDING + RPADDING < 3 || slen == 0) - return 0; + init_trgm_array(dst, slen); - tptr = trg; + /* + * If requested, allocate an array for the bounds, with the same size as + * the trigram array. + */ + if (bounds_p) + { + bounds_allocated = dst->allocated; + bounds = *bounds_p = palloc0_array(TrgmBound, bounds_allocated); + } - /* Allocate a buffer for case-folded, blank-padded words */ - buf = (char *) palloc(slen * pg_database_encoding_max_length() + 4); + if (slen + LPADDING + RPADDING < 3 || slen == 0) + return; + /* + * Allocate a buffer for case-folded, blank-padded words. + * + * As an initial guess, allocate a buffer large enough to hold the + * original string with padding, which is always enough when compiled with + * !IGNORECASE. If the case-folding produces a string longer than the + * original, we'll grow the buffer. + */ + buflen = (size_t) slen + 4; + buf = (char *) palloc(buflen); if (LPADDING > 0) { *buf = ' '; @@ -349,52 +490,59 @@ generate_trgm_only(trgm *trg, char *str, int slen, TrgmBound *bounds) } eword = str; - while ((bword = find_word(eword, slen - (eword - str), &eword, &charlen)) != NULL) + while ((bword = find_word(eword, slen - (eword - str), &eword)) != NULL) { + int oldlen; + + /* Convert word to lower case before extracting trigrams from it */ #ifdef IGNORECASE - bword = str_tolower(bword, eword - bword, DEFAULT_COLLATION_OID); - bytelen = strlen(bword); + { + char *lowered; + + lowered = str_tolower(bword, eword - bword, DEFAULT_COLLATION_OID); + bytelen = strlen(lowered); + + /* grow the buffer if necessary */ + if (bytelen > buflen - 4) + { + pfree(buf); + buflen = (size_t) bytelen + 4; + buf = (char *) palloc(buflen); + if (LPADDING > 0) + { + *buf = ' '; + if (LPADDING > 1) + *(buf + 1) = ' '; + } + } + memcpy(buf + LPADDING, lowered, bytelen); + pfree(lowered); + } #else bytelen = eword - bword; -#endif - memcpy(buf + LPADDING, bword, bytelen); - -#ifdef IGNORECASE - pfree(bword); #endif buf[LPADDING + bytelen] = ' '; buf[LPADDING + bytelen + 1] = ' '; /* Calculate trigrams marking their bounds if needed */ + oldlen = dst->length; + make_trigrams(dst, buf, bytelen + LPADDING + RPADDING); if (bounds) - bounds[tptr - trg] |= TRGM_BOUND_LEFT; - tptr = make_trigrams(tptr, buf, bytelen + LPADDING + RPADDING, - charlen + LPADDING + RPADDING); - if (bounds) - bounds[tptr - trg - 1] |= TRGM_BOUND_RIGHT; + { + if (bounds_allocated < dst->length) + { + bounds = repalloc0_array(bounds, TrgmBound, bounds_allocated, dst->allocated); + bounds_allocated = dst->allocated; + } + + bounds[oldlen] |= TRGM_BOUND_LEFT; + bounds[dst->length - 1] |= TRGM_BOUND_RIGHT; + } } pfree(buf); - - return tptr - trg; -} - -/* - * Guard against possible overflow in the palloc requests below. (We - * don't worry about the additive constants, since palloc can detect - * requests that are a little above MaxAllocSize --- we just need to - * prevent integer overflow in the multiplications.) - */ -static void -protect_out_of_mem(int slen) -{ - if ((Size) (slen / 2) >= (MaxAllocSize / (sizeof(trgm) * 3)) || - (Size) slen >= (MaxAllocSize / pg_database_encoding_max_length())) - ereport(ERROR, - (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), - errmsg("out of memory"))); } /* @@ -408,19 +556,14 @@ TRGM * generate_trgm(char *str, int slen) { TRGM *trg; + growable_trgm_array arr; int len; - protect_out_of_mem(slen); - - trg = (TRGM *) palloc(TRGMHDRSIZE + sizeof(trgm) * (slen / 2 + 1) * 3); + generate_trgm_only(&arr, str, slen, NULL); + len = arr.length; + trg = arr.datum; trg->flag = ARRKEY; - len = generate_trgm_only(GETARR(trg), str, slen, NULL); - SET_VARSIZE(trg, CALCGTSIZE(ARRKEY, len)); - - if (len == 0) - return trg; - /* * Make trigrams unique. */ @@ -675,8 +818,8 @@ calc_word_similarity(char *str1, int slen1, char *str2, int slen2, { bool *found; pos_trgm *ptrg; - trgm *trg1; - trgm *trg2; + growable_trgm_array trg1; + growable_trgm_array trg2; int len1, len2, len, @@ -685,27 +828,21 @@ calc_word_similarity(char *str1, int slen1, char *str2, int slen2, ulen1; int *trg2indexes; float4 result; - TrgmBound *bounds; - - protect_out_of_mem(slen1 + slen2); + TrgmBound *bounds = NULL; /* Make positional trigrams */ - trg1 = (trgm *) palloc(sizeof(trgm) * (slen1 / 2 + 1) * 3); - trg2 = (trgm *) palloc(sizeof(trgm) * (slen2 / 2 + 1) * 3); - if (flags & WORD_SIMILARITY_STRICT) - bounds = (TrgmBound *) palloc0(sizeof(TrgmBound) * (slen2 / 2 + 1) * 3); - else - bounds = NULL; - len1 = generate_trgm_only(trg1, str1, slen1, NULL); - len2 = generate_trgm_only(trg2, str2, slen2, bounds); + generate_trgm_only(&trg1, str1, slen1, NULL); + len1 = trg1.length; + generate_trgm_only(&trg2, str2, slen2, (flags & WORD_SIMILARITY_STRICT) ? &bounds : NULL); + len2 = trg2.length; - ptrg = make_positional_trgm(trg1, len1, trg2, len2); + ptrg = make_positional_trgm(GETARR(trg1.datum), len1, GETARR(trg2.datum), len2); len = len1 + len2; qsort(ptrg, len, sizeof(pos_trgm), comp_ptrgm); - pfree(trg1); - pfree(trg2); + pfree(trg1.datum); + pfree(trg2.datum); /* * Merge positional trigrams array: enumerate each trigram and find its @@ -761,20 +898,20 @@ calc_word_similarity(char *str1, int slen1, char *str2, int slen2, * str: source string, of length lenstr bytes (need not be null-terminated) * buf: where to return the substring (must be long enough) * *bytelen: receives byte length of the found substring - * *charlen: receives character length of the found substring * * Returns pointer to end+1 of the found substring in the source string. - * Returns NULL if no word found (in which case buf, bytelen, charlen not set) + * Returns NULL if no word found (in which case buf, bytelen is not set) * * If the found word is bounded by non-word characters or string boundaries * then this function will include corresponding padding spaces into buf. */ static const char * get_wildcard_part(const char *str, int lenstr, - char *buf, int *bytelen, int *charlen) + char *buf, int *bytelen) { const char *beginword = str; const char *endword; + const char *endstr = str + lenstr; char *s = buf; bool in_leading_wildcard_meta = false; bool in_trailing_wildcard_meta = false; @@ -787,11 +924,13 @@ get_wildcard_part(const char *str, int lenstr, * from this loop to the next one, since we may exit at a word character * that is in_escape. */ - while (beginword - str < lenstr) + while (beginword < endstr) { + clen = pg_mblen_range(beginword, endstr); + if (in_escape) { - if (ISWORDCHR(beginword)) + if (ISWORDCHR(beginword, clen)) break; in_escape = false; in_leading_wildcard_meta = false; @@ -802,12 +941,12 @@ get_wildcard_part(const char *str, int lenstr, in_escape = true; else if (ISWILDCARDCHAR(beginword)) in_leading_wildcard_meta = true; - else if (ISWORDCHR(beginword)) + else if (ISWORDCHR(beginword, clen)) break; else in_leading_wildcard_meta = false; } - beginword += pg_mblen(beginword); + beginword += clen; } /* @@ -820,18 +959,13 @@ get_wildcard_part(const char *str, int lenstr, * Add left padding spaces if preceding character wasn't wildcard * meta-character. */ - *charlen = 0; if (!in_leading_wildcard_meta) { if (LPADDING > 0) { *s++ = ' '; - (*charlen)++; if (LPADDING > 1) - { *s++ = ' '; - (*charlen)++; - } } } @@ -840,15 +974,14 @@ get_wildcard_part(const char *str, int lenstr, * string boundary. Strip escapes during copy. */ endword = beginword; - while (endword - str < lenstr) + while (endword < endstr) { - clen = pg_mblen(endword); + clen = pg_mblen_range(endword, endstr); if (in_escape) { - if (ISWORDCHR(endword)) + if (ISWORDCHR(endword, clen)) { memcpy(s, endword, clen); - (*charlen)++; s += clen; } else @@ -873,10 +1006,9 @@ get_wildcard_part(const char *str, int lenstr, in_trailing_wildcard_meta = true; break; } - else if (ISWORDCHR(endword)) + else if (ISWORDCHR(endword, clen)) { memcpy(s, endword, clen); - (*charlen)++; s += clen; } else @@ -894,12 +1026,8 @@ get_wildcard_part(const char *str, int lenstr, if (RPADDING > 0) { *s++ = ' '; - (*charlen)++; if (RPADDING > 1) - { *s++ = ' '; - (*charlen)++; - } } } @@ -918,24 +1046,21 @@ TRGM * generate_wildcard_trgm(const char *str, int slen) { TRGM *trg; - char *buf, - *buf2; - trgm *tptr; + growable_trgm_array arr; + char *buf; int len, - charlen, bytelen; const char *eword; - protect_out_of_mem(slen); - - trg = (TRGM *) palloc(TRGMHDRSIZE + sizeof(trgm) * (slen / 2 + 1) * 3); - trg->flag = ARRKEY; - SET_VARSIZE(trg, TRGMHDRSIZE); - if (slen + LPADDING + RPADDING < 3 || slen == 0) + { + trg = (TRGM *) palloc(TRGMHDRSIZE); + trg->flag = ARRKEY; + SET_VARSIZE(trg, TRGMHDRSIZE); return trg; + } - tptr = GETARR(trg); + init_trgm_array(&arr, slen); /* Allocate a buffer for blank-padded, but not yet case-folded, words */ buf = palloc(sizeof(char) * (slen + 4)); @@ -945,39 +1070,41 @@ generate_wildcard_trgm(const char *str, int slen) */ eword = str; while ((eword = get_wildcard_part(eword, slen - (eword - str), - buf, &bytelen, &charlen)) != NULL) + buf, &bytelen)) != NULL) { + char *word; + #ifdef IGNORECASE - buf2 = str_tolower(buf, bytelen, DEFAULT_COLLATION_OID); - bytelen = strlen(buf2); + word = str_tolower(buf, bytelen, DEFAULT_COLLATION_OID); + bytelen = strlen(word); #else - buf2 = buf; + word = buf; #endif /* * count trigrams */ - tptr = make_trigrams(tptr, buf2, bytelen, charlen); + make_trigrams(&arr, word, bytelen); #ifdef IGNORECASE - pfree(buf2); + pfree(word); #endif } pfree(buf); - if ((len = tptr - GETARR(trg)) == 0) - return trg; - /* * Make trigrams unique. */ + trg = arr.datum; + len = arr.length; if (len > 1) { qsort(GETARR(trg), len, sizeof(trgm), comp_trgm); len = qunique(GETARR(trg), len, sizeof(trgm), comp_trgm); } + trg->flag = ARRKEY; SET_VARSIZE(trg, CALCGTSIZE(ARRKEY, len)); return trg; diff --git a/contrib/pg_trgm/trgm_regexp.c b/contrib/pg_trgm/trgm_regexp.c index 149f9eb259c..b21b959b6c8 100644 --- a/contrib/pg_trgm/trgm_regexp.c +++ b/contrib/pg_trgm/trgm_regexp.c @@ -483,7 +483,7 @@ static TRGM *createTrgmNFAInternal(regex_t *regex, TrgmPackedGraph **graph, static void RE_compile(regex_t *regex, text *text_re, int cflags, Oid collation); static void getColorInfo(regex_t *regex, TrgmNFA *trgmNFA); -static bool convertPgWchar(pg_wchar c, trgm_mb_char *result); +static int convertPgWchar(pg_wchar c, trgm_mb_char *result); static void transformGraph(TrgmNFA *trgmNFA); static void processState(TrgmNFA *trgmNFA, TrgmState *state); static void addKey(TrgmNFA *trgmNFA, TrgmState *state, TrgmStateKey *key); @@ -808,10 +808,11 @@ getColorInfo(regex_t *regex, TrgmNFA *trgmNFA) for (j = 0; j < charsCount; j++) { trgm_mb_char c; + int clen = convertPgWchar(chars[j], &c); - if (!convertPgWchar(chars[j], &c)) + if (!clen) continue; /* ok to ignore it altogether */ - if (ISWORDCHR(c.bytes)) + if (ISWORDCHR(c.bytes, clen)) colorInfo->wordChars[colorInfo->wordCharsCount++] = c; else colorInfo->containsNonWord = true; @@ -823,13 +824,15 @@ getColorInfo(regex_t *regex, TrgmNFA *trgmNFA) /* * Convert pg_wchar to multibyte format. - * Returns false if the character should be ignored completely. + * Returns 0 if the character should be ignored completely, else returns its + * byte length. */ -static bool +static int convertPgWchar(pg_wchar c, trgm_mb_char *result) { /* "s" has enough space for a multibyte character and a trailing NUL */ char s[MAX_MULTIBYTE_CHAR_LEN + 1]; + int clen; /* * We can ignore the NUL character, since it can never appear in a PG text @@ -837,11 +840,11 @@ convertPgWchar(pg_wchar c, trgm_mb_char *result) * reconstructing trigrams. */ if (c == 0) - return false; + return 0; /* Do the conversion, making sure the result is NUL-terminated */ memset(s, 0, sizeof(s)); - pg_wchar2mb_with_len(&c, s, 1); + clen = pg_wchar2mb_with_len(&c, s, 1); /* * In IGNORECASE mode, we can ignore uppercase characters. We assume that @@ -858,12 +861,12 @@ convertPgWchar(pg_wchar c, trgm_mb_char *result) */ #ifdef IGNORECASE { - char *lowerCased = str_tolower(s, strlen(s), DEFAULT_COLLATION_OID); + char *lowerCased = str_tolower(s, clen, DEFAULT_COLLATION_OID); if (strcmp(lowerCased, s) != 0) { pfree(lowerCased); - return false; + return 0; } pfree(lowerCased); } @@ -871,7 +874,7 @@ convertPgWchar(pg_wchar c, trgm_mb_char *result) /* Fill result with exactly MAX_MULTIBYTE_CHAR_LEN bytes */ memcpy(result->bytes, s, MAX_MULTIBYTE_CHAR_LEN); - return true; + return clen; } diff --git a/contrib/pgcrypto/Makefile b/contrib/pgcrypto/Makefile index 69afa375011..17d2b0c5ed1 100644 --- a/contrib/pgcrypto/Makefile +++ b/contrib/pgcrypto/Makefile @@ -44,7 +44,8 @@ REGRESS = init md5 sha1 hmac-md5 hmac-sha1 blowfish rijndael \ sha2 des 3des cast5 \ crypt-des crypt-md5 crypt-blowfish crypt-xdes \ pgp-armor pgp-decrypt pgp-encrypt pgp-encrypt-md5 $(CF_PGP_TESTS) \ - pgp-pubkey-decrypt pgp-pubkey-encrypt pgp-info crypt-shacrypt + pgp-pubkey-decrypt pgp-pubkey-encrypt pgp-pubkey-session \ + pgp-info crypt-shacrypt ifdef USE_PGXS PG_CONFIG = pg_config diff --git a/contrib/pgcrypto/crypt-sha.c b/contrib/pgcrypto/crypt-sha.c index 7ec21771a83..e8f32bc3896 100644 --- a/contrib/pgcrypto/crypt-sha.c +++ b/contrib/pgcrypto/crypt-sha.c @@ -328,7 +328,7 @@ px_crypt_shacrypt(const char *pw, const char *salt, char *passwd, unsigned dstle ereport(ERROR, errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("invalid character in salt string: \"%.*s\"", - pg_mblen(ep), ep)); + pg_mblen_cstr(ep), ep)); } else { diff --git a/contrib/pgcrypto/expected/pgp-decrypt.out b/contrib/pgcrypto/expected/pgp-decrypt.out index eb049ba9d44..8ce6466f2e9 100644 --- a/contrib/pgcrypto/expected/pgp-decrypt.out +++ b/contrib/pgcrypto/expected/pgp-decrypt.out @@ -315,7 +315,7 @@ SaV9L04ky1qECNDx3XjnoKLC+H7IOQ== \xda39a3ee5e6b4b0d3255bfef95601890afd80709 (1 row) -select digest(pgp_sym_decrypt(dearmor(' +select digest(pgp_sym_decrypt_bytea(dearmor(' -----BEGIN PGP MESSAGE----- Comment: dat3.aes.sha1.mdc.s2k3.z0 @@ -387,6 +387,28 @@ ERROR: Wrong key or corrupt data select pgp_sym_decrypt(pgp_sym_encrypt_bytea('P', 'key'), 'key', 'debug=1'); NOTICE: dbg: parse_literal_data: data type=b ERROR: Not text data +-- NUL byte in text decrypt. Ciphertext source: +-- printf 'a\x00\xc' | gpg --homedir /nonexistent \ +-- --personal-compress-preferences uncompressed --textmode \ +-- --personal-cipher-preferences aes --no-emit-version --batch \ +-- --symmetric --passphrase key --armor +do $$ +begin + perform pgp_sym_decrypt(dearmor(' +-----BEGIN PGP MESSAGE----- + +jA0EBwMCXLc8pozB10Fg0jQBVUID59TLvWutJp0j6eh9ZgjqIRzdYaIymFB8y4XH +vu0YlJP5D5BX7yqZ+Pry7TlDmiFO +=rV7z +-----END PGP MESSAGE----- +'), 'key', 'debug=1'); +exception when others then + raise '%', + regexp_replace(sqlerrm, 'encoding "[^"]*"', 'encoding [REDACTED]'); +end +$$; +ERROR: invalid byte sequence for encoding [REDACTED]: 0x00 +CONTEXT: PL/pgSQL function inline_code_block line 12 at RAISE -- Decryption with a certain incorrect key yields an apparent BZip2-compressed -- plaintext. Ciphertext source: iterative pgp_sym_encrypt('secret', 'key') -- until the random prefix gave rise to that property. diff --git a/contrib/pgcrypto/expected/pgp-decrypt_1.out b/contrib/pgcrypto/expected/pgp-decrypt_1.out index 80a4c48613d..ee57ad43cb7 100644 --- a/contrib/pgcrypto/expected/pgp-decrypt_1.out +++ b/contrib/pgcrypto/expected/pgp-decrypt_1.out @@ -311,7 +311,7 @@ SaV9L04ky1qECNDx3XjnoKLC+H7IOQ== \xda39a3ee5e6b4b0d3255bfef95601890afd80709 (1 row) -select digest(pgp_sym_decrypt(dearmor(' +select digest(pgp_sym_decrypt_bytea(dearmor(' -----BEGIN PGP MESSAGE----- Comment: dat3.aes.sha1.mdc.s2k3.z0 @@ -383,6 +383,28 @@ ERROR: Wrong key or corrupt data select pgp_sym_decrypt(pgp_sym_encrypt_bytea('P', 'key'), 'key', 'debug=1'); NOTICE: dbg: parse_literal_data: data type=b ERROR: Not text data +-- NUL byte in text decrypt. Ciphertext source: +-- printf 'a\x00\xc' | gpg --homedir /nonexistent \ +-- --personal-compress-preferences uncompressed --textmode \ +-- --personal-cipher-preferences aes --no-emit-version --batch \ +-- --symmetric --passphrase key --armor +do $$ +begin + perform pgp_sym_decrypt(dearmor(' +-----BEGIN PGP MESSAGE----- + +jA0EBwMCXLc8pozB10Fg0jQBVUID59TLvWutJp0j6eh9ZgjqIRzdYaIymFB8y4XH +vu0YlJP5D5BX7yqZ+Pry7TlDmiFO +=rV7z +-----END PGP MESSAGE----- +'), 'key', 'debug=1'); +exception when others then + raise '%', + regexp_replace(sqlerrm, 'encoding "[^"]*"', 'encoding [REDACTED]'); +end +$$; +ERROR: invalid byte sequence for encoding [REDACTED]: 0x00 +CONTEXT: PL/pgSQL function inline_code_block line 12 at RAISE -- Decryption with a certain incorrect key yields an apparent BZip2-compressed -- plaintext. Ciphertext source: iterative pgp_sym_encrypt('secret', 'key') -- until the random prefix gave rise to that property. diff --git a/contrib/pgcrypto/expected/pgp-pubkey-session.out b/contrib/pgcrypto/expected/pgp-pubkey-session.out new file mode 100644 index 00000000000..f724d98eb24 --- /dev/null +++ b/contrib/pgcrypto/expected/pgp-pubkey-session.out @@ -0,0 +1,47 @@ +-- Test for overflow with session key at decrypt. +-- Data automatically generated by scripts/pgp_session_data.py. +-- See this file for details explaining how this data is generated. +SELECT pgp_pub_decrypt_bytea( +'\xc1c04c030000000000000000020800a46f5b9b1905b49457a6485474f71ed9b46c2527e1 +da08e1f7871e12c3d38828f2076b984a595bf60f616599ca5729d547de06a258bfbbcd30 +94a321e4668cd43010f0ca8ecf931e5d39bda1152c50c367b11c723f270729245d3ebdbd +0694d320c5a5aa6a405fb45182acb3d7973cbce398e0c5060af7603cfd9ed186ebadd616 +3b50ae42bea5f6d14dda24e6d4687b434c175084515d562e896742b0ba9a1c87d5642e10 +a5550379c71cc490a052ada483b5d96526c0a600fc51755052aa77fdf72f7b4989b920e7 +b90f4b30787a46482670d5caecc7a515a926055ad5509d135702ce51a0e4c1033f2d939d +8f0075ec3428e17310da37d3d2d7ad1ce99adcc91cd446c366c402ae1ee38250343a7fcc +0f8bc28020e603d7a4795ef0dcc1c04c030000000000000000020800a46f5b9b1905b494 +57a6485474f71ed9b46c2527e1da08e1f7871e12c3d38828f2076b984a595bf60f616599 +ca5729d547de06a258bfbbcd3094a321e4668cd43010f0ca8ecf931e5d39bda1152c50c3 +67b11c723f270729245d3ebdbd0694d320c5a5aa6a405fb45182acb3d7973cbce398e0c5 +060af7603cfd9ed186ebadd6163b50ae42bea5f6d14dda24e6d4687b434c175084515d56 +2e896742b0ba9a1c87d5642e10a5550379c71cc490a052ada483b5d96526c0a600fc5175 +5052aa77fdf72f7b4989b920e7b90f4b30787a46482670d5caecc7a515a926055ad5509d +135702ce51a0e4c1033f2d939d8f0075ec3428e17310da37d3d2d7ad1ce99adc'::bytea, +'\xc7c2d8046965d657020800eef8bf1515adb1a3ee7825f75c668ea8dd3e3f9d13e958f6ad +9c55adc0c931a4bb00abe1d52cf7bb0c95d537949d277a5292ede375c6b2a67a3bf7d19f +f975bb7e7be35c2d8300dacba360a0163567372f7dc24000cc7cb6170bedc8f3b1f98c12 +07a6cb4de870a4bc61319b139dcc0e20c368fd68f8fd346d2c0b69c5aed560504e2ec6f1 +23086fe3c5540dc4dd155c0c67257c4ada862f90fe172ace344089da8135e92aca5c2709 +f1c1bc521798bb8c0365841496e709bd184132d387e0c9d5f26dc00fd06c3a76ef66a75c +138285038684707a847b7bd33cfbefbf1d336be954a8048946af97a66352adef8e8b5ae4 +c4748c6f2510265b7a8267bc370dbb00110100010007ff7e72d4f95d2d39901ac12ca5c5 +18e767e719e72340c3fab51c8c5ab1c40f31db8eaffe43533fa61e2dbca2c3f4396c0847 +e5434756acbb1f68128f4136bb135710c89137d74538908dac77967de9e821c559700dd9 +de5a2727eec1f5d12d5d74869dd1de45ed369d94a8814d23861dd163f8c27744b26b98f0 +239c2e6dd1e3493b8cc976fdc8f9a5e250f715aa4c3d7d5f237f8ee15d242e8fa941d1a0 +ed9550ab632d992a97518d142802cb0a97b251319bf5742db8d9d8cbaa06cdfba2d75bc9 +9d77a51ff20bd5ba7f15d7af6e85b904de2855d19af08d45f39deb85403033c69c767a8e +74a343b1d6c8911d34ea441ac3850e57808ed3d885835cbe6c79d10400ef16256f3d5c4c +3341516a2d2aa888df81b603f48a27f3666b40f992a857c1d11ff639cd764a9b42d5a1f8 +58b4aeee36b85508bb5e8b91ef88a7737770b330224479d9b44eae8c631bc43628b69549 +507c0a1af0be0dd7696015abea722b571eb35eefc4ab95595378ec12814727443f625fcd +183bb9b3bccf53b54dd0e5e7a50400ffe08537b2d4e6074e4a1727b658cfccdec8962302 +25e300c05690de45f7065c3d40d86f544a64d51a3e94424f9851a16d1322ebdb41fa8a45 +3131f3e2dc94e858e6396722643df382680f815e53bcdcde5da622f50530a83b217f1103 +cdd6e5e9babe1e415bbff28d44bd18c95f43bbd04afeb2a2a99af38a571c7540de21df03 +ff62c0a33d9143dd3f639893f47732c11c5a12c6052d1935f4d507b7ae1f76ab0e9a69b8 +7305a7f7c19bd509daf4903bff614bc26d118f03e461469c72c12d3a2bb4f78e4d342ce8 +487723649a01ed2b9eb11c662134502c098d55dfcd361939d8370873422c3da75a515a75 +9ffedfe7df44fb3c20f81650801a30d43b5c90b98b3eee'::bytea); +ERROR: Public key too big diff --git a/contrib/pgcrypto/meson.build b/contrib/pgcrypto/meson.build index 7d5ef9b6d32..3927c54458f 100644 --- a/contrib/pgcrypto/meson.build +++ b/contrib/pgcrypto/meson.build @@ -52,6 +52,7 @@ pgcrypto_regress = [ 'pgp-encrypt-md5', 'pgp-pubkey-decrypt', 'pgp-pubkey-encrypt', + 'pgp-pubkey-session', 'pgp-info', 'crypt-shacrypt' ] diff --git a/contrib/pgcrypto/pgp-pgsql.c b/contrib/pgcrypto/pgp-pgsql.c index 7c9f4c7b39b..464ca6e06c9 100644 --- a/contrib/pgcrypto/pgp-pgsql.c +++ b/contrib/pgcrypto/pgp-pgsql.c @@ -631,6 +631,7 @@ pgp_sym_decrypt_text(PG_FUNCTION_ARGS) arg = PG_GETARG_TEXT_PP(2); res = decrypt_internal(0, 1, data, key, NULL, arg); + pg_verifymbstr(VARDATA_ANY(res), VARSIZE_ANY_EXHDR(res), false); PG_FREE_IF_COPY(data, 0); PG_FREE_IF_COPY(key, 1); @@ -732,6 +733,7 @@ pgp_pub_decrypt_text(PG_FUNCTION_ARGS) arg = PG_GETARG_TEXT_PP(3); res = decrypt_internal(1, 1, data, key, psw, arg); + pg_verifymbstr(VARDATA_ANY(res), VARSIZE_ANY_EXHDR(res), false); PG_FREE_IF_COPY(data, 0); PG_FREE_IF_COPY(key, 1); diff --git a/contrib/pgcrypto/pgp-pubdec.c b/contrib/pgcrypto/pgp-pubdec.c index a0a5738a40e..2a13aa3e6ad 100644 --- a/contrib/pgcrypto/pgp-pubdec.c +++ b/contrib/pgcrypto/pgp-pubdec.c @@ -157,6 +157,7 @@ pgp_parse_pubenc_sesskey(PGP_Context *ctx, PullFilter *pkt) uint8 *msg; int msglen; PGP_MPI *m; + unsigned sess_key_len; pk = ctx->pub_key; if (pk == NULL) @@ -220,11 +221,19 @@ pgp_parse_pubenc_sesskey(PGP_Context *ctx, PullFilter *pkt) if (res < 0) goto out; + sess_key_len = msglen - 3; + if (sess_key_len > PGP_MAX_KEY) + { + px_debug("incorrect session key length=%u", sess_key_len); + res = PXE_PGP_KEY_TOO_BIG; + goto out; + } + /* * got sesskey */ ctx->cipher_algo = *msg; - ctx->sess_key_len = msglen - 3; + ctx->sess_key_len = sess_key_len; memcpy(ctx->sess_key, msg + 1, ctx->sess_key_len); out: diff --git a/contrib/pgcrypto/px.c b/contrib/pgcrypto/px.c index d35ccca7774..a7cb248f6b7 100644 --- a/contrib/pgcrypto/px.c +++ b/contrib/pgcrypto/px.c @@ -65,6 +65,7 @@ static const struct error_desc px_err_list[] = { {PXE_PGP_UNEXPECTED_PKT, "Unexpected packet in key data"}, {PXE_PGP_MATH_FAILED, "Math operation failed"}, {PXE_PGP_SHORT_ELGAMAL_KEY, "Elgamal keys must be at least 1024 bits long"}, + {PXE_PGP_KEY_TOO_BIG, "Public key too big"}, {PXE_PGP_UNKNOWN_PUBALGO, "Unknown public-key encryption algorithm"}, {PXE_PGP_WRONG_KEY, "Wrong key"}, {PXE_PGP_MULTIPLE_KEYS, diff --git a/contrib/pgcrypto/px.h b/contrib/pgcrypto/px.h index 4b81fceab8e..a09533a3582 100644 --- a/contrib/pgcrypto/px.h +++ b/contrib/pgcrypto/px.h @@ -75,7 +75,7 @@ /* -108 is unused */ #define PXE_PGP_MATH_FAILED -109 #define PXE_PGP_SHORT_ELGAMAL_KEY -110 -/* -111 is unused */ +#define PXE_PGP_KEY_TOO_BIG -111 #define PXE_PGP_UNKNOWN_PUBALGO -112 #define PXE_PGP_WRONG_KEY -113 #define PXE_PGP_MULTIPLE_KEYS -114 diff --git a/contrib/pgcrypto/scripts/pgp_session_data.py b/contrib/pgcrypto/scripts/pgp_session_data.py new file mode 100644 index 00000000000..999350bb2bc --- /dev/null +++ b/contrib/pgcrypto/scripts/pgp_session_data.py @@ -0,0 +1,491 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Generate PGP data to check the session key length of the input data provided +# to pgp_pub_decrypt_bytea(). +# +# First, the crafted data is generated from valid RSA data, freshly generated +# by this script each time it is run, see generate_rsa_keypair(). +# Second, the crafted PGP data is built, see build_message_data() and +# build_key_data(). Finally, the resulting SQL script is generated. +# +# This script generates in stdout the SQL file that is used in the regression +# tests of pgcrypto. The following command can be used to regenerate the file +# which should never be manually manipulated: +# python3 scripts/pgp_session_data.py > sql/pgp-pubkey-session.sql + +import os +import re +import struct +import secrets +import sys +import time + +# pwn for binary manipulation (p32, p64) +from pwn import * + +# Cryptographic libraries, to craft the PGP data. +from Crypto.Cipher import AES +from Crypto.PublicKey import RSA +from Crypto.Util.number import inverse + +# AES key used for session key encryption (16 bytes for AES-128) +AES_KEY = b'\x01' * 16 + +def generate_rsa_keypair(key_size: int = 2048) -> dict: + """ + Generate a fresh RSA key pair. + + The generated key includes all components needed for PGP operations: + - n: public modulus (p * q) + - e: public exponent (typically 65537) + - d: private exponent (e^-1 mod phi(n)) + - p, q: prime factors of n + - u: coefficient (p^-1 mod q) for CRT optimization + + The caller can pass the wanted key size in input, for a default of 2048 + bytes. This function returns the RSA key components, after performing + some validation on them. + """ + + start_time = time.time() + + # Generate RSA key + key = RSA.generate(key_size) + + # Extract all key components + rsa_components = { + 'n': key.n, # Public modulus (p * q) + 'e': key.e, # Public exponent (typically 65537) + 'd': key.d, # Private exponent (e^-1 mod phi(n)) + 'p': key.p, # First prime factor + 'q': key.q, # Second prime factor + 'u': inverse(key.p, key.q) # Coefficient for CRT: p^-1 mod q + } + + # Validate key components for correctness + validate_rsa_key(rsa_components) + + return rsa_components + +def validate_rsa_key(rsa: dict) -> None: + """ + Validate a generated RSA key. + + This function performs basic validation to ensure the RSA key is properly + constructed and all components are consistent, at least mathematically. + + Validations performed: + 1. n = p * q (modulus is product of primes) + 2. gcd(e, phi(n)) = 1 (public exponent is coprime to phi(n)) + 3. (d * e) mod(phi(n)) = 1 (private exponent is multiplicative inverse) + 4. (u * p) (mod q) = 1 (coefficient is correct for CRT) + """ + + n, e, d, p, q, u = rsa['n'], rsa['e'], rsa['d'], rsa['p'], rsa['q'], rsa['u'] + + # Check that n = p * q + if n != p * q: + raise ValueError("RSA validation failed: n <> p * q") + + # Check that p and q are different + if p == q: + raise ValueError("RSA validation failed: p = q (not allowed)") + + # Calculate phi(n) = (p-1)(q-1) + phi_n = (p - 1) * (q - 1) + + # Check that gcd(e, phi(n)) = 1 + def gcd(a, b): + while b: + a, b = b, a % b + return a + + if gcd(e, phi_n) != 1: + raise ValueError("RSA validation failed: gcd(e, phi(n)) <> 1") + + # Check that (d * e) mod(phi(n)) = 1 + if (d * e) % phi_n != 1: + raise ValueError("RSA validation failed: d * e <> 1 (mod phi(n))") + + # Check that (u * p) (mod q) = 1 + if (u * p) % q != 1: + raise ValueError("RSA validation failed: u * p <> 1 (mod q)") + +def mpi_encode(x: int) -> bytes: + """ + Encode an integer as an OpenPGP Multi-Precision Integer (MPI). + + Format (RFC 4880, Section 3.2): + - 2 bytes: bit length of the integer (big-endian) + - N bytes: the integer in big-endian format + + This is used to encode RSA key components (n, e, d, p, q, u) in PGP + packets. + + The integer to encode is given in input, returning an MPI-encoded + integer. + + For example: + mpi_encode(65537) -> b'\x00\x11\x01\x00\x01' + (17 bits, value 0x010001) + """ + if x < 0: + raise ValueError("MPI cannot encode negative integers") + + if x == 0: + # Special case: zero has 0 bits and empty magnitude + bits = 0 + mag = b"" + else: + # Calculate bit length and convert to bytes + bits = x.bit_length() + mag = x.to_bytes((bits + 7) // 8, 'big') + + # Pack: 2-byte bit length + magnitude bytes + return struct.pack('>H', bits) + mag + +def new_packet(tag: int, payload: bytes) -> bytes: + """ + Create a new OpenPGP packet with a proper header. + + OpenPGP packet format (RFC 4880, Section 4.2): + - New packet format: 0xC0 | tag + - Length encoding depends on payload size: + * 0-191: single byte + * 192-8383: two bytes (192 + ((length - 192) >> 8), (length - 192) & 0xFF) + * 8384+: five bytes (0xFF + 4-byte big-endian length) + + The packet is built from a "tag" (1-63) and some "payload" data. The + result generated is a complete OpenPGP packet. + + For example: + new_packet(1, b'data') -> b'\xC1\x04data' + (Tag 1, length 4, payload 'data') + """ + # New packet format: set bit 7 and 6, clear bit 5, tag in bits 0-5 + first = 0xC0 | (tag & 0x3F) + ln = len(payload) + + # Encode length according to OpenPGP specification + if ln <= 191: + # Single byte length for small packets + llen = bytes([ln]) + elif ln <= 8383: + # Two-byte length for medium packets + ln2 = ln - 192 + llen = bytes([192 + (ln2 >> 8), ln2 & 0xFF]) + else: + # Five-byte length for large packets + llen = bytes([255]) + struct.pack('>I', ln) + + return bytes([first]) + llen + payload + +def build_key_data(rsa: dict) -> bytes: + """ + Build the key data, containing an RSA private key. + + The RSA contents should have been generated previously. + + Format (see RFC 4880, Section 5.5.3): + - 1 byte: version (4) + - 4 bytes: creation time (current Unix timestamp) + - 1 byte: public key algorithm (2 = RSA encrypt) + - MPI: RSA public modulus n + - MPI: RSA public exponent e + - 1 byte: string-to-key usage (0 = no encryption) + - MPI: RSA private exponent d + - MPI: RSA prime p + - MPI: RSA prime q + - MPI: RSA coefficient u = p^-1 mod q + - 2 bytes: checksum of private key material + + This function takes a set of RSA key components in input (n, e, d, p, q, u) + and returns a secret key packet. + """ + + # Public key portion + ver = bytes([4]) # Version 4 key + ctime = struct.pack('>I', int(time.time())) # Current Unix timestamp + algo = bytes([2]) # RSA encrypt algorithm + n_mpi = mpi_encode(rsa['n']) # Public modulus + e_mpi = mpi_encode(rsa['e']) # Public exponent + pub = ver + ctime + algo + n_mpi + e_mpi + + # Private key portion + hide_type = bytes([0]) # No string-to-key encryption + d_mpi = mpi_encode(rsa['d']) # Private exponent + p_mpi = mpi_encode(rsa['p']) # Prime p + q_mpi = mpi_encode(rsa['q']) # Prime q + u_mpi = mpi_encode(rsa['u']) # Coefficient u = p^-1 mod q + + # Calculate checksum of private key material (simple sum mod 65536) + private_data = d_mpi + p_mpi + q_mpi + u_mpi + cksum = sum(private_data) & 0xFFFF + + secret = hide_type + private_data + struct.pack('>H', cksum) + payload = pub + secret + + return new_packet(7, payload) + +def pgp_cfb_encrypt_resync(key, plaintext): + """ + Implement OpenPGP CFB mode with resync. + + OpenPGP CFB mode is a variant of standard CFB with a resync operation + after the first two blocks. + + Algorithm (RFC 4880, Section 13.9): + 1. Block 1: FR=zeros, encrypt full block_size bytes + 2. Block 2: FR=block1, encrypt only 2 bytes + 3. Resync: FR = block1[2:] + block2 + 4. Remaining blocks: standard CFB mode + + This function uses the following arguments: + - key: AES encryption key (16 bytes for AES-128) + - plaintext: Data to encrypt + """ + block_size = 16 # AES block size + cipher = AES.new(key[:16], AES.MODE_ECB) # Use ECB for manual CFB + ciphertext = b'' + + # Block 1: FR=zeros, encrypt full 16 bytes + FR = b'\x00' * block_size + FRE = cipher.encrypt(FR) # Encrypt the feedback register + block1 = bytes(a ^ b for a, b in zip(FRE, plaintext[0:16])) + ciphertext += block1 + + # Block 2: FR=block1, encrypt only 2 bytes + FR = block1 + FRE = cipher.encrypt(FR) + block2 = bytes(a ^ b for a, b in zip(FRE[0:2], plaintext[16:18])) + ciphertext += block2 + + # Resync: FR = block1[2:16] + block2[0:2] + # This is the key difference from standard CFB mode + FR = block1[2:] + block2 + + # Block 3+: Continue with standard CFB mode + pos = 18 + while pos < len(plaintext): + FRE = cipher.encrypt(FR) + chunk_len = min(block_size, len(plaintext) - pos) + chunk = plaintext[pos:pos+chunk_len] + enc_chunk = bytes(a ^ b for a, b in zip(FRE[:chunk_len], chunk)) + ciphertext += enc_chunk + + # Update feedback register for next iteration + if chunk_len == block_size: + FR = enc_chunk + else: + # Partial block: pad with old FR bytes + FR = enc_chunk + FR[chunk_len:] + pos += chunk_len + + return ciphertext + +def build_literal_data_packet(data: bytes) -> bytes: + """ + Build a literal data packet containing a message. + + Format (RFC 4880, Section 5.9): + - 1 byte: data format ('b' = binary, 't' = text, 'u' = UTF-8 text) + - 1 byte: filename length (0 = no filename) + - N bytes: filename (empty in this case) + - 4 bytes: date (current Unix timestamp) + - M bytes: literal data + + The data used to build the packet is given in input, with the generated + result returned. + """ + body = bytes([ + ord('b'), # Binary data format + 0, # Filename length (0 = no filename) + ]) + struct.pack('>I', int(time.time())) + data # Current timestamp + data + + return new_packet(11, body) + +def build_symenc_data_packet(sess_key: bytes, cipher_algo: int, payload: bytes) -> bytes: + """ + Build a symmetrically-encrypted data packet using AES-128-CFB. + + This packet contains encrypted data using the session key. The format + includes a random prefix, for security (see RFC 4880, Section 5.7). + + Packet structure: + - Random prefix (block_size bytes) + - Prefix repeat (last 2 bytes of prefix repeated) + - Encrypted literal data packet + + This function uses the following set of arguments: + - sess_key: Session key for encryption + - cipher_algo: Cipher algorithm identifier (7 = AES-128) + - payload: Data to encrypt (wrapped in literal data packet) + """ + block_size = 16 # AES-128 block size + key = sess_key[:16] # Use first 16 bytes for AES-128 + + # Create random prefix + repeat last 2 bytes (total 18 bytes) + # This is required by OpenPGP for integrity checking + prefix_random = secrets.token_bytes(block_size) + prefix = prefix_random + prefix_random[-2:] # 18 bytes total + + # Wrap payload in literal data packet + literal_pkt = build_literal_data_packet(payload) + + # Plaintext = prefix + literal data packet + plaintext = prefix + literal_pkt + + # Encrypt using OpenPGP CFB mode with resync + ciphertext = pgp_cfb_encrypt_resync(key, plaintext) + + return new_packet(9, ciphertext) + +def build_tag1_packet(rsa: dict, sess_key: bytes) -> bytes: + """ + Build a public-key encrypted key. + + This is a very important function, as it is able to create the packet + triggering the overflow check. This function can also be used to create + "legit" packet data. + + Format (RFC 4880, Section 5.1): + - 1 byte: version (3) + - 8 bytes: key ID (0 = any key accepted) + - 1 byte: public key algorithm (2 = RSA encrypt) + - MPI: RSA-encrypted session key + + This uses in arguments the generated RSA key pair, and the session key + to encrypt. The latter is manipulated to trigger the overflow. + + This function returns a complete packet encrypted by a session key. + """ + + # Calculate RSA modulus size in bytes + n_bytes = (rsa['n'].bit_length() + 7) // 8 + + # Session key message format: + # - 1 byte: symmetric cipher algorithm (7 = AES-128) + # - N bytes: session key + # - 2 bytes: checksum (simple sum of session key bytes) + algo_byte = bytes([7]) # AES-128 algorithm identifier + cksum = sum(sess_key) & 0xFFFF # 16-bit checksum + M = algo_byte + sess_key + struct.pack('>H', cksum) + + # PKCS#1 v1.5 padding construction + # Format: 0x02 || PS || 0x00 || M + # Total padded message must be exactly n_bytes long. + total_len = n_bytes # Total length must equal modulus size in bytes + ps_len = total_len - len(M) - 2 # Subtract 2 for 0x02 and 0x00 bytes + + if ps_len < 8: + raise ValueError(f"Padding string too short ({ps_len} bytes); need at least 8 bytes. " + f"Message length: {len(M)}, Modulus size: {n_bytes} bytes") + + # Create padding string with *ALL* bytes being 0xFF (no zero separator!) + PS = bytes([0xFF]) * ps_len + + # Construct the complete padded message + # Normal PKCS#1 v1.5 padding: 0x02 || PS || 0x00 || M + padded = bytes([0x02]) + PS + bytes([0x00]) + M + + # Verify padding construction + if len(padded) != n_bytes: + raise ValueError(f"Padded message length ({len(padded)}) doesn't match RSA modulus size ({n_bytes})") + + # Convert padded message to integer and encrypt with RSA + m_int = int.from_bytes(padded, 'big') + + # Ensure message is smaller than modulus (required for RSA) + if m_int >= rsa['n']: + raise ValueError("Padded message is larger than RSA modulus") + + # RSA encryption: c = m^e mod n + c_int = pow(m_int, rsa['e'], rsa['n']) + + # Encode encrypted result as MPI + c_mpi = mpi_encode(c_int) + + # Build complete packet + ver = bytes([3]) # Version 3 packet + key_id = b"\x00" * 8 # Key ID (0 = any key accepted) + algo = bytes([2]) # RSA encrypt algorithm + payload = ver + key_id + algo + c_mpi + + return new_packet(1, payload) + +def build_message_data(rsa: dict) -> bytes: + """ + This function creates a crafted message, with a long session key + length. + + This takes in input the RSA key components generated previously, + returning a concatenated set of PGP packets crafted for the purpose + of this test. + """ + + # Base prefix for session key (AES key + padding + size). + # Note that the crafted size is the important part for this test. + prefix = AES_KEY + b"\x00" * 16 + p32(0x10) + + # Build encrypted data packet, legit. + sedata = build_symenc_data_packet(AES_KEY, cipher_algo=7, payload=b"\x0a\x00") + + # Build multiple packets + packets = [ + # First packet, legit. + build_tag1_packet(rsa, prefix), + + # Encrypted data packet, legit. + sedata, + + # Second packet: information payload. + # + # This packet contains a longer-crafted session key, able to trigger + # the overflow check in pgcrypto. This is the critical part, and + # and you are right to pay a lot of attention here if you are + # reading this code. + build_tag1_packet(rsa, prefix) + ] + + return b"".join(packets) + +def main(): + # Default key size. + # This number can be set to a higher number if wanted, like 4096. We + # just do not need to do that here. + key_size = 2048 + + # Generate fresh RSA key pair + rsa = generate_rsa_keypair(key_size) + + # Generate the message data. + print("### Building message data", file=sys.stderr) + message_data = build_message_data(rsa) + + # Build the key containing the RSA private key + print("### Building key data", file=sys.stderr) + key_data = build_key_data(rsa) + + # Convert to hexadecimal, for the bytea used in the SQL file. + message_data = message_data.hex() + key_data = key_data.hex() + + # Split each value into lines of 72 characters, for readability. + message_data = re.sub("(.{72})", "\\1\n", message_data, 0, re.DOTALL) + key_data = re.sub("(.{72})", "\\1\n", key_data, 0, re.DOTALL) + + # Get the script filename for documentation + file_basename = os.path.basename(__file__) + + # Output the SQL test case + print(f'''-- Test for overflow with session key at decrypt. +-- Data automatically generated by scripts/{file_basename}. +-- See this file for details explaining how this data is generated. +SELECT pgp_pub_decrypt_bytea( +'\\x{message_data}'::bytea, +'\\x{key_data}'::bytea);''', + file=sys.stdout) + +if __name__ == "__main__": + main() diff --git a/contrib/pgcrypto/sql/pgp-decrypt.sql b/contrib/pgcrypto/sql/pgp-decrypt.sql index 49a0267bbcb..b499bf757b0 100644 --- a/contrib/pgcrypto/sql/pgp-decrypt.sql +++ b/contrib/pgcrypto/sql/pgp-decrypt.sql @@ -228,7 +228,7 @@ SaV9L04ky1qECNDx3XjnoKLC+H7IOQ== -----END PGP MESSAGE----- '), '0123456789abcdefghij'), 'sha1'); -select digest(pgp_sym_decrypt(dearmor(' +select digest(pgp_sym_decrypt_bytea(dearmor(' -----BEGIN PGP MESSAGE----- Comment: dat3.aes.sha1.mdc.s2k3.z0 @@ -282,6 +282,27 @@ VsxxqLSPzNLAeIspJk5G -- Routine text/binary mismatch. select pgp_sym_decrypt(pgp_sym_encrypt_bytea('P', 'key'), 'key', 'debug=1'); +-- NUL byte in text decrypt. Ciphertext source: +-- printf 'a\x00\xc' | gpg --homedir /nonexistent \ +-- --personal-compress-preferences uncompressed --textmode \ +-- --personal-cipher-preferences aes --no-emit-version --batch \ +-- --symmetric --passphrase key --armor +do $$ +begin + perform pgp_sym_decrypt(dearmor(' +-----BEGIN PGP MESSAGE----- + +jA0EBwMCXLc8pozB10Fg0jQBVUID59TLvWutJp0j6eh9ZgjqIRzdYaIymFB8y4XH +vu0YlJP5D5BX7yqZ+Pry7TlDmiFO +=rV7z +-----END PGP MESSAGE----- +'), 'key', 'debug=1'); +exception when others then + raise '%', + regexp_replace(sqlerrm, 'encoding "[^"]*"', 'encoding [REDACTED]'); +end +$$; + -- Decryption with a certain incorrect key yields an apparent BZip2-compressed -- plaintext. Ciphertext source: iterative pgp_sym_encrypt('secret', 'key') -- until the random prefix gave rise to that property. diff --git a/contrib/pgcrypto/sql/pgp-pubkey-session.sql b/contrib/pgcrypto/sql/pgp-pubkey-session.sql new file mode 100644 index 00000000000..51792f1f4d8 --- /dev/null +++ b/contrib/pgcrypto/sql/pgp-pubkey-session.sql @@ -0,0 +1,46 @@ +-- Test for overflow with session key at decrypt. +-- Data automatically generated by scripts/pgp_session_data.py. +-- See this file for details explaining how this data is generated. +SELECT pgp_pub_decrypt_bytea( +'\xc1c04c030000000000000000020800a46f5b9b1905b49457a6485474f71ed9b46c2527e1 +da08e1f7871e12c3d38828f2076b984a595bf60f616599ca5729d547de06a258bfbbcd30 +94a321e4668cd43010f0ca8ecf931e5d39bda1152c50c367b11c723f270729245d3ebdbd +0694d320c5a5aa6a405fb45182acb3d7973cbce398e0c5060af7603cfd9ed186ebadd616 +3b50ae42bea5f6d14dda24e6d4687b434c175084515d562e896742b0ba9a1c87d5642e10 +a5550379c71cc490a052ada483b5d96526c0a600fc51755052aa77fdf72f7b4989b920e7 +b90f4b30787a46482670d5caecc7a515a926055ad5509d135702ce51a0e4c1033f2d939d +8f0075ec3428e17310da37d3d2d7ad1ce99adcc91cd446c366c402ae1ee38250343a7fcc +0f8bc28020e603d7a4795ef0dcc1c04c030000000000000000020800a46f5b9b1905b494 +57a6485474f71ed9b46c2527e1da08e1f7871e12c3d38828f2076b984a595bf60f616599 +ca5729d547de06a258bfbbcd3094a321e4668cd43010f0ca8ecf931e5d39bda1152c50c3 +67b11c723f270729245d3ebdbd0694d320c5a5aa6a405fb45182acb3d7973cbce398e0c5 +060af7603cfd9ed186ebadd6163b50ae42bea5f6d14dda24e6d4687b434c175084515d56 +2e896742b0ba9a1c87d5642e10a5550379c71cc490a052ada483b5d96526c0a600fc5175 +5052aa77fdf72f7b4989b920e7b90f4b30787a46482670d5caecc7a515a926055ad5509d +135702ce51a0e4c1033f2d939d8f0075ec3428e17310da37d3d2d7ad1ce99adc'::bytea, +'\xc7c2d8046965d657020800eef8bf1515adb1a3ee7825f75c668ea8dd3e3f9d13e958f6ad +9c55adc0c931a4bb00abe1d52cf7bb0c95d537949d277a5292ede375c6b2a67a3bf7d19f +f975bb7e7be35c2d8300dacba360a0163567372f7dc24000cc7cb6170bedc8f3b1f98c12 +07a6cb4de870a4bc61319b139dcc0e20c368fd68f8fd346d2c0b69c5aed560504e2ec6f1 +23086fe3c5540dc4dd155c0c67257c4ada862f90fe172ace344089da8135e92aca5c2709 +f1c1bc521798bb8c0365841496e709bd184132d387e0c9d5f26dc00fd06c3a76ef66a75c +138285038684707a847b7bd33cfbefbf1d336be954a8048946af97a66352adef8e8b5ae4 +c4748c6f2510265b7a8267bc370dbb00110100010007ff7e72d4f95d2d39901ac12ca5c5 +18e767e719e72340c3fab51c8c5ab1c40f31db8eaffe43533fa61e2dbca2c3f4396c0847 +e5434756acbb1f68128f4136bb135710c89137d74538908dac77967de9e821c559700dd9 +de5a2727eec1f5d12d5d74869dd1de45ed369d94a8814d23861dd163f8c27744b26b98f0 +239c2e6dd1e3493b8cc976fdc8f9a5e250f715aa4c3d7d5f237f8ee15d242e8fa941d1a0 +ed9550ab632d992a97518d142802cb0a97b251319bf5742db8d9d8cbaa06cdfba2d75bc9 +9d77a51ff20bd5ba7f15d7af6e85b904de2855d19af08d45f39deb85403033c69c767a8e +74a343b1d6c8911d34ea441ac3850e57808ed3d885835cbe6c79d10400ef16256f3d5c4c +3341516a2d2aa888df81b603f48a27f3666b40f992a857c1d11ff639cd764a9b42d5a1f8 +58b4aeee36b85508bb5e8b91ef88a7737770b330224479d9b44eae8c631bc43628b69549 +507c0a1af0be0dd7696015abea722b571eb35eefc4ab95595378ec12814727443f625fcd +183bb9b3bccf53b54dd0e5e7a50400ffe08537b2d4e6074e4a1727b658cfccdec8962302 +25e300c05690de45f7065c3d40d86f544a64d51a3e94424f9851a16d1322ebdb41fa8a45 +3131f3e2dc94e858e6396722643df382680f815e53bcdcde5da622f50530a83b217f1103 +cdd6e5e9babe1e415bbff28d44bd18c95f43bbd04afeb2a2a99af38a571c7540de21df03 +ff62c0a33d9143dd3f639893f47732c11c5a12c6052d1935f4d507b7ae1f76ab0e9a69b8 +7305a7f7c19bd509daf4903bff614bc26d118f03e461469c72c12d3a2bb4f78e4d342ce8 +487723649a01ed2b9eb11c662134502c098d55dfcd361939d8370873422c3da75a515a75 +9ffedfe7df44fb3c20f81650801a30d43b5c90b98b3eee'::bytea); diff --git a/contrib/unaccent/unaccent.c b/contrib/unaccent/unaccent.c index 336ba31047a..84d5e68a860 100644 --- a/contrib/unaccent/unaccent.c +++ b/contrib/unaccent/unaccent.c @@ -156,7 +156,7 @@ initTrie(const char *filename) state = 0; for (ptr = line; *ptr; ptr += ptrlen) { - ptrlen = pg_mblen(ptr); + ptrlen = pg_mblen_cstr(ptr); /* ignore whitespace, but end src or trg */ if (isspace((unsigned char) *ptr)) { @@ -382,6 +382,7 @@ unaccent_lexize(PG_FUNCTION_ARGS) char *srcchar = (char *) PG_GETARG_POINTER(1); int32 len = PG_GETARG_INT32(2); char *srcstart = srcchar; + const char *srcend = srcstart + len; TSLexeme *res; StringInfoData buf; @@ -409,7 +410,7 @@ unaccent_lexize(PG_FUNCTION_ARGS) } else { - matchlen = pg_mblen(srcchar); + matchlen = pg_mblen_range(srcchar, srcend); if (buf.data != NULL) appendBinaryStringInfo(&buf, srcchar, matchlen); } diff --git a/doc/src/sgml/amcheck.sgml b/doc/src/sgml/amcheck.sgml index 211a0ae1945..0402172a5ff 100644 --- a/doc/src/sgml/amcheck.sgml +++ b/doc/src/sgml/amcheck.sgml @@ -382,7 +382,7 @@ SET client_min_messages = DEBUG1; verification functions is true, an additional phase of verification is performed against the table associated with the target index relation. This consists of a dummy - CREATE INDEX operation, which checks for the + CREATE INDEX CONCURRENTLY operation, which checks for the presence of all hypothetical new index tuples against a temporary, in-memory summarizing structure (this is built when needed during the basic first phase of verification). The summarizing structure diff --git a/doc/src/sgml/client-auth.sgml b/doc/src/sgml/client-auth.sgml index 51b95ed04f3..105f1a975dc 100644 --- a/doc/src/sgml/client-auth.sgml +++ b/doc/src/sgml/client-auth.sgml @@ -889,16 +889,16 @@ host all all 192.168.0.0/16 ident map=omicro # list of names of administrators. Passwords are required in all cases. # # TYPE DATABASE USER ADDRESS METHOD -local sameuser all md5 -local all /^.*helpdesk$ md5 -local all @admins md5 -local all +support md5 +local sameuser all scram-sha-256 +local all /^.*helpdesk$ scram-sha-256 +local all @admins scram-sha-256 +local all +support scram-sha-256 # The last two lines above can be combined into a single line: -local all @admins,+support md5 +local all @admins,+support scram-sha-256 # The database column can also use lists and file names: -local db1,db2,@demodbs all md5 +local db1,db2,@demodbs all scram-sha-256 diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 217b04b180f..b7aae61af56 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -1680,7 +1680,7 @@ include_dir 'conf.d' This parameter determines whether the passphrase command set by ssl_passphrase_command will also be called during a configuration reload if a key file needs a passphrase. If this - parameter is off (the default), then + parameter is off (the default), then ssl_passphrase_command will be ignored during a reload and the SSL configuration will not be reloaded if a passphrase is needed. That setting is appropriate for a command that requires a @@ -1688,6 +1688,12 @@ include_dir 'conf.d' running. Setting this parameter to on might be appropriate if the passphrase is obtained from a file, for example. + + This parameter must be set to on when running on + Windows since all connections + will perform a configuration reload due to the different process model + of that platform. + This parameter can only be set in the postgresql.conf file or on the server command line. @@ -2404,6 +2410,43 @@ include_dir 'conf.d' + + file_extend_method (enum) + + file_extend_method configuration parameter + + + + + Specifies the method used to extend data files during bulk operations + such as COPY. The first available option is used as + the default, depending on the operating system: + + + + posix_fallocate (Unix) uses the standard POSIX + interface for allocating disk space, but is missing on some systems. + If it is present but the underlying file system doesn't support it, + this option silently falls back to write_zeros. + Current versions of BTRFS are known to disable compression when + this option is used. + This is the default on systems that have the function. + + + + + write_zeros extends files by writing out blocks + of zero bytes. This is the default on systems that don't have the + function posix_fallocate. + + + + The write_zeros method is always used when data + files are extended by 8 blocks or fewer. + + + + max_notify_queue_pages (integer) @@ -2651,7 +2694,7 @@ include_dir 'conf.d' Higher values will have the most impact on higher latency storage where queries otherwise experience noticeable I/O stalls and on devices with high IOPs. Unnecessarily high values may increase I/O - latency for all queries on the system + latency for all queries on the system. @@ -4702,45 +4745,6 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows - - synchronized_standby_slots (string) - - synchronized_standby_slots configuration parameter - - - - - A comma-separated list of streaming replication standby server slot names - that logical WAL sender processes will wait for. Logical WAL sender processes - will send decoded changes to plugins only after the specified replication - slots confirm receiving WAL. This guarantees that logical replication - failover slots do not consume changes until those changes are received - and flushed to corresponding physical standbys. If a - logical replication connection is meant to switch to a physical standby - after the standby is promoted, the physical replication slot for the - standby should be listed here. Note that logical replication will not - proceed if the slots specified in the - synchronized_standby_slots do not exist or are invalidated. - Additionally, the replication management functions - - pg_replication_slot_advance, - - pg_logical_slot_get_changes, and - - pg_logical_slot_peek_changes, - when used with logical failover slots, will block until all - physical slots specified in synchronized_standby_slots have - confirmed WAL receipt. - - - The standbys corresponding to the physical replication slots in - synchronized_standby_slots must configure - sync_replication_slots = true so they can receive - logical failover slot changes from the primary. - - - - @@ -4889,6 +4893,45 @@ ANY num_sync ( + synchronized_standby_slots (string) + + synchronized_standby_slots configuration parameter + + + + + A comma-separated list of streaming replication standby server slot names + that logical WAL sender processes will wait for. Logical WAL sender processes + will send decoded changes to plugins only after the specified replication + slots confirm receiving WAL. This guarantees that logical replication + failover slots do not consume changes until those changes are received + and flushed to corresponding physical standbys. If a + logical replication connection is meant to switch to a physical standby + after the standby is promoted, the physical replication slot for the + standby should be listed here. Note that logical replication will not + proceed if the slots specified in the + synchronized_standby_slots do not exist or are invalidated. + Additionally, the replication management functions + + pg_replication_slot_advance, + + pg_logical_slot_get_changes, and + + pg_logical_slot_peek_changes, + when used with logical failover slots, will block until all + physical slots specified in synchronized_standby_slots have + confirmed WAL receipt. + + + The standbys corresponding to the physical replication slots in + synchronized_standby_slots must configure + sync_replication_slots = true so they can receive + logical failover slot changes from the primary. + + diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml index 65bc070d2e5..49c98967d50 100644 --- a/doc/src/sgml/ddl.sgml +++ b/doc/src/sgml/ddl.sgml @@ -1558,7 +1558,7 @@ CREATE TABLE circles ( locate the row version very quickly, a row's ctid will change if it is updated or moved by VACUUM FULL. Therefore - ctid is useless as a long-term row + ctid should not be used as a row identifier. A primary key should be used to identify logical rows. @@ -1959,6 +1959,8 @@ ALTER TABLE table_name OWNER TO new_owne Superusers can always do this; ordinary roles can only do it if they are both the current owner of the object (or inherit the privileges of the owning role) and able to SET ROLE to the new owning role. + All object privileges of the old owner are transferred to the new owner + along with the ownership. diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml index e7a53f3c9d0..d6f1161374c 100644 --- a/doc/src/sgml/ecpg.sgml +++ b/doc/src/sgml/ecpg.sgml @@ -1823,7 +1823,7 @@ while (1) representation of that type is (%f,%f), which is defined in the functions complex_in() - and complex_out() functions + and complex_out() in . The following example inserts the complex type values (1,1) and (3,3) into the diff --git a/doc/src/sgml/file-fdw.sgml b/doc/src/sgml/file-fdw.sgml index 882d9a76d21..e3fe796b897 100644 --- a/doc/src/sgml/file-fdw.sgml +++ b/doc/src/sgml/file-fdw.sgml @@ -115,6 +115,17 @@ + + default + + + + Specifies the string that represents a default value, + the same as COPY's DEFAULT option. + + + + encoding diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 6fd18fd6731..1128763d04d 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -26398,6 +26398,21 @@ SELECT pg_type_is_visible('myschema.widget'::regtype); + + + + pg_get_partition_constraintdef + + pg_get_partition_constraintdef ( table oid ) + text + + + Reconstructs the definition of a partition constraint. + (This is a decompiled reconstruction, not the original text + of the command.) + + + diff --git a/doc/src/sgml/gist.sgml b/doc/src/sgml/gist.sgml index ee86e170055..423f691dd42 100644 --- a/doc/src/sgml/gist.sgml +++ b/doc/src/sgml/gist.sgml @@ -291,7 +291,7 @@ CREATE INDEX ON my_table USING GIST (my_inet_column inet_ops); speed up building a GiST index. The optional twelfth method stratnum is used to translate compare types (from - src/include/nodes/primnodes.h) into strategy numbers + src/include/access/cmptype.h) into strategy numbers used by the operator class. This lets the core code look up operators for temporal constraint indexes. @@ -1174,7 +1174,7 @@ my_sortsupport(PG_FUNCTION_ARGS) Given a CompareType value from - src/include/nodes/primnodes.h, returns a strategy + src/include/access/cmptype.h, returns a strategy number used by this operator class for matching functionality. The function should return InvalidStrategy if the operator class has no matching strategy. diff --git a/doc/src/sgml/hash.sgml b/doc/src/sgml/hash.sgml index 9e69ef91fe8..34f3b2cb0c1 100644 --- a/doc/src/sgml/hash.sgml +++ b/doc/src/sgml/hash.sgml @@ -125,11 +125,10 @@ Both scanning the index and inserting tuples require locating the bucket where a given tuple ought to be located. To do this, we need the bucket count, highmask, and lowmask from the metapage; however, it's undesirable - for performance reasons to have to have to lock and pin the metapage for - every such operation. Instead, we retain a cached copy of the metapage - in each backend's relcache entry. This will produce the correct bucket - mapping as long as the target bucket hasn't been split since the last - cache refresh. + for performance reasons to have to lock and pin the metapage for every such + operation. Instead, we retain a cached copy of the metapage in each + backend's relcache entry. This will produce the correct bucket mapping as + long as the target bucket hasn't been split since the last cache refresh. diff --git a/doc/src/sgml/high-availability.sgml b/doc/src/sgml/high-availability.sgml index b47d8b4106e..aa256e2ec51 100644 --- a/doc/src/sgml/high-availability.sgml +++ b/doc/src/sgml/high-availability.sgml @@ -857,7 +857,7 @@ archive_cleanup_command = 'pg_archivecleanup /path/to/archive %r' # as a replication standby if the user's password is correctly supplied. # # TYPE DATABASE USER ADDRESS METHOD -host replication foo 192.168.1.100/32 md5 +host replication foo 192.168.1.100/32 scram-sha-256 diff --git a/doc/src/sgml/history.sgml b/doc/src/sgml/history.sgml index 8bfa1db670d..628f13ce123 100644 --- a/doc/src/sgml/history.sgml +++ b/doc/src/sgml/history.sgml @@ -171,7 +171,7 @@ A short tutorial introducing regular SQL features as well as those of Postgres95 was distributed with the - source code + source code. diff --git a/doc/src/sgml/legal.sgml b/doc/src/sgml/legal.sgml index 75c1309cf73..742c0146f7f 100644 --- a/doc/src/sgml/legal.sgml +++ b/doc/src/sgml/legal.sgml @@ -1,9 +1,9 @@ -2025 +2026 - 1996–2025 + 1996–2026 The PostgreSQL Global Development Group @@ -16,7 +16,7 @@ - Portions Copyright © 1996-2025, PostgreSQL Global Development Group + Portions Copyright © 1996-2026, PostgreSQL Global Development Group Portions Copyright © 1994, The Regents of the University of California diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml index cbb29b6ed40..e50f0cbd8c7 100644 --- a/doc/src/sgml/libpq.sgml +++ b/doc/src/sgml/libpq.sgml @@ -1,6 +1,6 @@ - + <application>libpq</application> — C Library @@ -10412,10 +10412,14 @@ typedef struct PGoauthBearerRequest /* Hook outputs */ - /* Callback implementing a custom asynchronous OAuth flow. */ + /* + * Callback implementing a custom asynchronous OAuth flow. The signature is + * platform-dependent: PQ_SOCKTYPE is SOCKET on Windows, and int everywhere + * else. + */ PostgresPollingStatusType (*async) (PGconn *conn, struct PGoauthBearerRequest *request, - SOCKTYPE *altsock); + PQ_SOCKTYPE *altsock); /* Callback to clean up custom allocations. */ void (*cleanup) (PGconn *conn, struct PGoauthBearerRequest *request); @@ -10472,7 +10476,7 @@ typedef struct PGoauthBearerRequest hook. When the callback cannot make further progress without blocking, it should return either PGRES_POLLING_READING or PGRES_POLLING_WRITING after setting - *pgsocket to the file descriptor that will be marked + *altsock to the file descriptor that will be marked ready to read/write when progress can be made again. (This descriptor is then provided to the top-level polling loop via PQsocket().) Return PGRES_POLLING_OK diff --git a/doc/src/sgml/logical-replication.sgml b/doc/src/sgml/logical-replication.sgml index adb676cb900..fd2edc1addb 100644 --- a/doc/src/sgml/logical-replication.sgml +++ b/doc/src/sgml/logical-replication.sgml @@ -3215,7 +3215,7 @@ wal_level = logical (the values here depend on your actual network configuration and user you want to use for connecting): -host all repuser 0.0.0.0/0 md5 +host all repuser 0.0.0.0/0 scram-sha-256 diff --git a/doc/src/sgml/maintenance.sgml b/doc/src/sgml/maintenance.sgml index e7a9f58c015..1571a895fc8 100644 --- a/doc/src/sgml/maintenance.sgml +++ b/doc/src/sgml/maintenance.sgml @@ -933,12 +933,16 @@ vacuum threshold = Minimum(vacuum max threshold, vacuum base threshold + vacuum The table is also vacuumed if the number of tuples inserted since the last vacuum has exceeded the defined insert threshold, which is defined as: -vacuum insert threshold = vacuum base insert threshold + vacuum insert scale factor * number of tuples +vacuum insert threshold = vacuum base insert threshold + vacuum insert scale factor * number of tuples * percent of table not frozen where the vacuum insert base threshold is , - and vacuum insert scale factor is - . + the vacuum insert scale factor is + , + the number of tuples is + pg_class.reltuples, + and the percent of the table not frozen is + 1 - pg_class.relallfrozen / pg_class.relpages. Such vacuums may allow portions of the table to be marked as all visible and also allow tuples to be frozen, which can reduce the work required in subsequent vacuums. diff --git a/doc/src/sgml/pgbuffercache.sgml b/doc/src/sgml/pgbuffercache.sgml index eeb85a0e049..6817cf5d215 100644 --- a/doc/src/sgml/pgbuffercache.sgml +++ b/doc/src/sgml/pgbuffercache.sgml @@ -497,7 +497,7 @@ - The <structname>pg_buffercache_evict_relation()</structname> Function + The <function>pg_buffercache_evict_relation()</function> Function The pg_buffercache_evict_relation() function is very similar to the pg_buffercache_evict() function. The @@ -515,7 +515,7 @@ - The <structname>pg_buffercache_evict_all()</structname> Function + The <function>pg_buffercache_evict_all()</function> Function The pg_buffercache_evict_all() function is very similar to the pg_buffercache_evict() function. The diff --git a/doc/src/sgml/pgoverexplain.sgml b/doc/src/sgml/pgoverexplain.sgml index 377ddc8139e..e399c1cbad5 100644 --- a/doc/src/sgml/pgoverexplain.sgml +++ b/doc/src/sgml/pgoverexplain.sgml @@ -39,8 +39,8 @@ LOAD 'pg_overexplain'; The DEBUG option displays miscellaneous information from the plan tree that is not normally shown because it is not expected to be of general interest. For each individual plan node, it will display the - following fields. See Plan in - nodes/plannodes.h for additional documentation of these + following fields. See Plan in + nodes/plannodes.h for additional documentation of these fields. @@ -82,8 +82,8 @@ LOAD 'pg_overexplain'; Once per query, the DEBUG option will display the - following fields. See PlannedStmt in - nodes/plannodes.h for additional detail. + following fields. See PlannedStmt in + nodes/plannodes.h for additional detail. @@ -97,7 +97,7 @@ LOAD 'pg_overexplain'; Flags. A comma-separated list of Boolean structure - member names from the PlannedStmt that are set to + member names from the PlannedStmt that are set to true. It covers the following structure members: hasReturning, hasModifyingCTE, canSetTag, transientPlan, @@ -177,7 +177,7 @@ LOAD 'pg_overexplain'; table entry (e.g. relation, subquery, or join), followed by the contents of various range table entry fields that are not normally part of - EXPLAIN output. Some of these fields are only displayed + EXPLAIN output. Some of these fields are only displayed for certain kinds of range table entries. For example, Eref is displayed for all types of range table entries, but CTE Name is displayed only for range table entries @@ -186,7 +186,7 @@ LOAD 'pg_overexplain'; For more information about range table entries, see the definition of - RangeTblEntry in nodes/plannodes.h. + RangeTblEntry in nodes/parsenodes.h. diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml index e937491e6b8..5492a66f7ee 100644 --- a/doc/src/sgml/plpgsql.sgml +++ b/doc/src/sgml/plpgsql.sgml @@ -4962,13 +4962,13 @@ $$ LANGUAGE plpgsql; Variable substitution currently works only in SELECT, INSERT, UPDATE, - DELETE, and commands containing one of - these (such as EXPLAIN and CREATE TABLE - ... AS SELECT), - because the main SQL engine allows query parameters only in these - commands. To use a non-constant name or value in other statement - types (generically called utility statements), you must construct - the utility statement as a string and EXECUTE it. + DELETE, MERGE and commands + containing one of these (such as EXPLAIN and + CREATE TABLE ... AS SELECT), because the main SQL + engine allows query parameters only in these commands. To use a + non-constant name or value in other statement types (generically called + utility statements), you must construct the utility statement as a string + and EXECUTE it. diff --git a/doc/src/sgml/plpython.sgml b/doc/src/sgml/plpython.sgml index cb065bf5f88..bee817ea822 100644 --- a/doc/src/sgml/plpython.sgml +++ b/doc/src/sgml/plpython.sgml @@ -1,6 +1,6 @@ - + PL/Python — Python Procedural Language PL/Python diff --git a/doc/src/sgml/ref/alter_publication.sgml b/doc/src/sgml/ref/alter_publication.sgml index d5ea383e8bc..d7f1a5a7229 100644 --- a/doc/src/sgml/ref/alter_publication.sgml +++ b/doc/src/sgml/ref/alter_publication.sgml @@ -23,15 +23,24 @@ PostgreSQL documentation ALTER PUBLICATION name ADD publication_object [, ...] ALTER PUBLICATION name SET publication_object [, ...] -ALTER PUBLICATION name DROP publication_object [, ...] +ALTER PUBLICATION name DROP publication_drop_object [, ...] ALTER PUBLICATION name SET ( publication_parameter [= value] [, ... ] ) ALTER PUBLICATION name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER } ALTER PUBLICATION name RENAME TO new_name where publication_object is one of: - TABLE [ ONLY ] table_name [ * ] [ ( column_name [, ... ] ) ] [ WHERE ( expression ) ] [, ... ] + TABLE table_and_columns [, ... ] TABLES IN SCHEMA { schema_name | CURRENT_SCHEMA } [, ... ] + +and publication_drop_object is one of: + + TABLE [ ONLY ] table_name [ * ] [, ... ] + TABLES IN SCHEMA { schema_name | CURRENT_SCHEMA } [, ... ] + +and table_and_columns is: + + [ ONLY ] table_name [ * ] [ ( column_name [, ... ] ) ] [ WHERE ( expression ) ] @@ -57,8 +66,7 @@ ALTER PUBLICATION name RENAME TO DROP TABLES IN SCHEMA will not drop any schema tables that were specified using FOR TABLE/ - ADD TABLE, and the combination of DROP - with a WHERE clause is not allowed. + ADD TABLE. diff --git a/doc/src/sgml/ref/create_policy.sgml b/doc/src/sgml/ref/create_policy.sgml index e76c342d3da..42d43ad7bf4 100644 --- a/doc/src/sgml/ref/create_policy.sgml +++ b/doc/src/sgml/ref/create_policy.sgml @@ -49,6 +49,8 @@ CREATE POLICY name ON WITH CHECK. When a USING expression returns true for a given row then that row is visible to the user, while if false or null is returned then the row is not visible. + Typically, no error occurs when a row is not visible, but see + for exceptions. When a WITH CHECK expression returns true for a row then that row is inserted or updated, while if false or null is returned then an error occurs. @@ -194,8 +196,9 @@ CREATE POLICY name ON SELECT), and will not be available for modification (in an UPDATE - or DELETE). Such rows are silently suppressed; no error - is reported. + or DELETE). Typically, such rows are silently + suppressed; no error is reported (but see + for exceptions). @@ -251,8 +254,10 @@ CREATE POLICY name ON INSERT or UPDATE command attempts to add rows to the table that do not pass the ALL - policy's WITH CHECK expression, the entire - command will be aborted. + policy's WITH CHECK expression (or its + USING expression, if it does not have a + WITH CHECK expression), the entire command will + be aborted. @@ -268,11 +273,50 @@ CREATE POLICY name ON SELECT policy will be returned during a SELECT query, and that queries that require SELECT permissions, such as - UPDATE, will also only see those records + UPDATE, DELETE, and + MERGE, will also only see those records that are allowed by the SELECT policy. A SELECT policy cannot have a WITH CHECK expression, as it only applies in cases where - records are being retrieved from the relation. + records are being retrieved from the relation, except as described + below. + + + If a data-modifying query has a RETURNING clause, + SELECT permissions are required on the relation, + and any newly inserted or updated rows from the relation must satisfy + the relation's SELECT policies in order to be + available to the RETURNING clause. If a newly + inserted or updated row does not satisfy the relation's + SELECT policies, an error will be thrown (inserted + or updated rows to be returned are never + silently ignored). + + + If an INSERT has an ON CONFLICT DO + NOTHING/UPDATE clause, SELECT + permissions are required on the relation, and the rows proposed for + insertion are checked using the relation's SELECT + policies. If a row proposed for insertion does not satisfy the + relation's SELECT policies, an error is thrown + (the INSERT is never silently + avoided). In addition, if the UPDATE path is + taken, the row to be updated and the new updated row are checked + against the relation's SELECT policies, and an + error is thrown if they are not satisfied (an auxiliary + UPDATE is never silently + avoided). + + + A MERGE command requires SELECT + permissions on both the source and target relations, and so each + relation's SELECT policies are applied before they + are joined, and the MERGE actions will only see + those records that are allowed by those policies. In addition, if + an UPDATE action is executed, the target relation's + SELECT policies are applied to the updated row, as + for a standalone UPDATE, except that an error is + thrown if they are not satisfied. @@ -292,10 +336,11 @@ CREATE POLICY name ON - Note that INSERT with ON CONFLICT DO - UPDATE checks INSERT policies' - WITH CHECK expressions only for rows appended - to the relation by the INSERT path. + Note that an INSERT with an ON CONFLICT + DO NOTHING/UPDATE clause will check the + INSERT policies' WITH CHECK + expressions for all rows proposed for insertion, regardless of + whether or not they end up being inserted. @@ -305,12 +350,12 @@ CREATE POLICY name ON Using UPDATE for a policy means that it will apply - to UPDATE, SELECT FOR UPDATE + to UPDATE, SELECT FOR UPDATE, and SELECT FOR SHARE commands, as well as auxiliary ON CONFLICT DO UPDATE clauses of - INSERT commands. - MERGE commands containing UPDATE - actions are affected as well. Since UPDATE + INSERT commands, and MERGE + commands containing UPDATE actions. + Since an UPDATE command involves pulling an existing record and replacing it with a new modified record, UPDATE policies accept both a USING expression and @@ -356,7 +401,8 @@ CREATE POLICY name ON USING expressions, an error will be thrown (the UPDATE path will never be silently - avoided). + avoided). The same applies to an UPDATE action + of a MERGE command. @@ -366,12 +412,18 @@ CREATE POLICY name ON Using DELETE for a policy means that it will apply - to DELETE commands. Only rows that pass this - policy will be seen by a DELETE command. There can - be rows that are visible through a SELECT that are - not available for deletion, if they do not pass the - USING expression for - the DELETE policy. + to DELETE commands and MERGE + commands containing DELETE actions. For a + DELETE command, only rows that pass this policy + will be seen by the DELETE command. There can + be rows that are visible through a SELECT policy + that are not available for deletion, if they do not pass the + USING expression for the DELETE + policy. Note, however, that a DELETE action in a + MERGE command will see rows that are visible + through SELECT policies, and if the + DELETE policy does not pass for such a row, an + error will be thrown. @@ -400,6 +452,15 @@ CREATE POLICY name ON + + summarizes how the different + types of policy apply to specific commands. In the table, + check means that the policy expression is checked and an + error is thrown if it returns false or null, whereas filter + means that the row is silently ignored if the policy expression returns + false or null. + + Policies Applied by Command Type @@ -424,8 +485,8 @@ CREATE POLICY name ON - SELECT - Existing row + SELECT / COPY ... TO + Filter existing row @@ -433,63 +494,117 @@ CREATE POLICY name ON SELECT FOR UPDATE/SHARE - Existing row + Filter existing row - Existing row + Filter existing row - INSERT / MERGE ... THEN INSERT + INSERT + + Check new row  + + If read access is required to either the existing or new row (for + example, a WHERE or RETURNING + clause that refers to columns from the relation). + + + + Check new row - New row + + + UPDATE + + Filter existing row  & + check new row  + + + Filter existing row + Check new row - INSERT ... RETURNING + DELETE - New row + Filter existing row  + + + + + Filter existing row + + + INSERT ... ON CONFLICT + + Check new row  - If read access is required to the existing or new row (for example, - a WHERE or RETURNING clause - that refers to columns from the relation). + Row proposed for insertion is checked regardless of whether or not a + conflict occurs. - New row + + Check new row  + - UPDATE / MERGE ... THEN UPDATE + ON CONFLICT DO UPDATE - Existing & new rows + Check existing & new rows  + + New row of the auxiliary UPDATE command, which + might be different from the new row of the original + INSERT command. + + - Existing row - New row + Check existing row + + Check new row  + - DELETE + MERGE + Filter source & target rows + + + + + + + MERGE ... THEN INSERT - Existing row + Check new row  + Check new row - Existing row - ON CONFLICT DO UPDATE - Existing & new rows + MERGE ... THEN UPDATE + Check new row + + Check existing row + Check new row + + + + MERGE ... THEN DELETE + + - Existing row - New row + Check existing row diff --git a/doc/src/sgml/ref/create_publication.sgml b/doc/src/sgml/ref/create_publication.sgml index 802630f2df1..e83da50e4fe 100644 --- a/doc/src/sgml/ref/create_publication.sgml +++ b/doc/src/sgml/ref/create_publication.sgml @@ -28,8 +28,12 @@ CREATE PUBLICATION namewhere publication_object is one of: - TABLE [ ONLY ] table_name [ * ] [ ( column_name [, ... ] ) ] [ WHERE ( expression ) ] [, ... ] + TABLE table_and_columns [, ... ] TABLES IN SCHEMA { schema_name | CURRENT_SCHEMA } [, ... ] + +and table_and_columns is: + + [ ONLY ] table_name [ * ] [ ( column_name [, ... ] ) ] [ WHERE ( expression ) ] @@ -231,13 +235,15 @@ CREATE PUBLICATION namepublish_via_partition_root (boolean) - This parameter determines whether changes in a partitioned table (or - on its partitions) contained in the publication will be published - using the identity and schema of the partitioned table rather than - that of the individual partitions that are actually changed; the - latter is the default. Enabling this allows the changes to be - replicated into a non-partitioned table or a partitioned table - consisting of a different set of partitions. + This parameter controls how changes to a partitioned table (or any of + its partitions) are published. When set to true, + changes are published using the identity and schema of the + root partitioned table. When set to false (the + default), changes are published using the identity and schema of the + individual partitions where the changes actually occurred. Enabling + this option allows the changes to be replicated into a + non-partitioned table or into a partitioned table whose partition + structure differs from that of the publisher. diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml index dc000e913c1..927d5417814 100644 --- a/doc/src/sgml/ref/create_table.sgml +++ b/doc/src/sgml/ref/create_table.sgml @@ -1379,8 +1379,8 @@ WITH ( MODULUS numeric_literal, REM REFERENCES (foreign key) constraints accept this clause. NOT NULL and CHECK constraints are not deferrable. Note that deferrable constraints cannot be used as - conflict arbitrators in an INSERT statement that - includes an ON CONFLICT DO UPDATE clause. + conflict arbiters in an INSERT statement that + includes an ON CONFLICT clause. diff --git a/doc/src/sgml/ref/createuser.sgml b/doc/src/sgml/ref/createuser.sgml index 5c34c623423..0c061428514 100644 --- a/doc/src/sgml/ref/createuser.sgml +++ b/doc/src/sgml/ref/createuser.sgml @@ -539,7 +539,7 @@ PostgreSQL documentation $ createuser -P -s -e joeEnter password for new role: xyzzyEnter it again: xyzzy -CREATE ROLE joe PASSWORD 'md5b5f5ba1a423792b526f799ae4eb3d59e' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN; +CREATE ROLE joe PASSWORD 'SCRAM-SHA-256$4096:44560wPMLfjqiAzyPDZ/eQ==$4CA054rZlSFEq8Z3FEhToBTa2X6KnWFxFkPwIbKoDe0=:L/nbSZRCjp6RhOhKK56GoR1zibCCSePKshCJ9lnl3yw=' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN NOREPLICATION NOBYPASSRLS; In the above example, the new password isn't actually echoed when typed, but we show what was typed for clarity. As you see, the password is diff --git a/doc/src/sgml/ref/delete.sgml b/doc/src/sgml/ref/delete.sgml index 29649f6afd6..f88a03f821e 100644 --- a/doc/src/sgml/ref/delete.sgml +++ b/doc/src/sgml/ref/delete.sgml @@ -323,6 +323,9 @@ DELETE FROM user_logs AS dl USING delete_batch AS del WHERE dl.ctid = del.ctid; + This use of ctid is only safe because + the query is repeatedly run, avoiding the problem of changed + ctids. diff --git a/doc/src/sgml/ref/pg_dump.sgml b/doc/src/sgml/ref/pg_dump.sgml index efd85996688..7146e4feaa7 100644 --- a/doc/src/sgml/ref/pg_dump.sgml +++ b/doc/src/sgml/ref/pg_dump.sgml @@ -1402,7 +1402,7 @@ PostgreSQL documentation - Dump statistics. + Dump optimizer statistics. @@ -1412,7 +1412,7 @@ PostgreSQL documentation Dump only the statistics, not the schema (data definitions) or data. - Statistics for tables, materialized views, foreign tables, + Optimizer statistics for tables, materialized views, foreign tables, and indexes are dumped. @@ -1708,11 +1708,12 @@ CREATE DATABASE foo WITH TEMPLATE template0; - If is specified, + When is specified, pg_dump will include most optimizer statistics in the - resulting dump file. However, some statistics may not be included, such as - those created explicitly with or - custom statistics added by an extension. Therefore, it may be useful to + resulting dump file. This does not include all statistics, such as + those created explicitly with , + custom statistics added by an extension, or statistics collected by the + cumulative statistics system. Therefore, it may still be useful to run ANALYZE after restoring from a dump file to ensure optimal performance; see and for more information. diff --git a/doc/src/sgml/ref/pg_dumpall.sgml b/doc/src/sgml/ref/pg_dumpall.sgml index 66337edef08..9445693e06e 100644 --- a/doc/src/sgml/ref/pg_dumpall.sgml +++ b/doc/src/sgml/ref/pg_dumpall.sgml @@ -648,7 +648,7 @@ exclude database PATTERN - Dump statistics. + Dump optimizer statistics. @@ -658,7 +658,7 @@ exclude database PATTERN Dump only the statistics, not the schema (data definitions) or data. - Statistics for tables, materialized views, foreign tables, + Optimizer statistics for tables, materialized views, foreign tables, and indexes are dumped. @@ -899,11 +899,12 @@ exclude database PATTERN - If is specified, + When is specified, pg_dumpall will include most optimizer statistics in the - resulting dump file. However, some statistics may not be included, such as - those created explicitly with or - custom statistics added by an extension. Therefore, it may be useful to + resulting dump file. This does not include all statistics, such as + those created explicitly with , + custom statistics added by an extension, or statistics collected by the + cumulative statistics system. Therefore, it may still be useful to run ANALYZE on each database after restoring from a dump file to ensure optimal performance. You can also run vacuumdb -a -z to analyze all databases. diff --git a/doc/src/sgml/ref/pg_rewind.sgml b/doc/src/sgml/ref/pg_rewind.sgml index 5485033ed8c..c696cec1a1c 100644 --- a/doc/src/sgml/ref/pg_rewind.sgml +++ b/doc/src/sgml/ref/pg_rewind.sgml @@ -97,9 +97,9 @@ PostgreSQL documentation pg_rewind requires that the target server either has the option enabled in postgresql.conf or data checksums enabled when - the cluster was initialized with initdb. Neither of these - are currently on by default. - must also be set to on, but is enabled by default. + the cluster was initialized with initdb (the + default). must also be set to + on, but is enabled by default. diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml index b5a8942a71a..1445579429f 100644 --- a/doc/src/sgml/ref/pgupgrade.sgml +++ b/doc/src/sgml/ref/pgupgrade.sgml @@ -833,10 +833,10 @@ psql --username=postgres --file=script.sql postgres Unless the option is specified, pg_upgrade will transfer most optimizer statistics - from the old cluster to the new cluster. However, some statistics may - not be transferred, such as those created explicitly with or custom statistics added by an - extension. + from the old cluster to the new cluster. This does not transfer + all statistics, such as those created explicitly with + , custom statistics added by + an extension, or statistics collected by the cumulative statistics system. diff --git a/doc/src/sgml/ref/update.sgml b/doc/src/sgml/ref/update.sgml index 40cca063946..b523766abe3 100644 --- a/doc/src/sgml/ref/update.sgml +++ b/doc/src/sgml/ref/update.sgml @@ -503,6 +503,9 @@ UPDATE work_item SET status = 'failed' WHERE work_item.ctid = emr.ctid; This command will need to be repeated until no rows remain to be updated. + (This use of ctid is only safe because + the query is repeatedly run, avoiding the problem of changed + ctids.) Use of an ORDER BY clause allows the command to prioritize which rows will be updated; it can also prevent deadlock with other update operations if they use the same ordering. diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index f35082861e0..923001f0a55 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -1,6 +1,1803 @@ + + Release 18.2 + + + Release date: + 2026-02-12 + + + + This release contains a variety of fixes from 18.1. + For information about new features in major release 18, see + . + + + + Migration to Version 18.2 + + + A dump/restore is not required for those running 18.X. + + + + However, if you have any indexes on ltree columns, it may + be necessary to reindex them after updating. See the sixth changelog + entry below. + + + + + Changes + + + + + + + Guard against unexpected dimensions + of oidvector/int2vector (Tom Lane) + § + + + + These data types are expected to be 1-dimensional arrays containing + no nulls, but there are cast pathways that permit violating those + expectations. Add checks to some functions that were depending on + those expectations without verifying them, and could misbehave in + consequence. + + + + The PostgreSQL Project thanks + Altan Birler for reporting this problem. + (CVE-2026-2003) + + + + + + + Harden selectivity estimators against being attached to operators + that accept unexpected data types (Tom Lane) + § + § + + + + contrib/intarray contained a selectivity + estimation function that could be abused for arbitrary code + execution, because it did not check that its input was of the + expected data type. Third-party extensions should check for similar + hazards and add defenses using the technique intarray now uses. + Since such extension fixes will take time, we now require superuser + privilege to attach a non-built-in selectivity estimator to an + operator. + + + + The PostgreSQL Project thanks + Daniel Firer, as part of zeroday.cloud, for reporting this problem. + (CVE-2026-2004) + + + + + + + Fix buffer overrun in contrib/pgcrypto's + PGP decryption functions (Michael Paquier) + § + + + + Decrypting a crafted message with an overlength session key caused a + buffer overrun, with consequences as bad as arbitrary code + execution. + + + + The PostgreSQL Project thanks + Team Xint Code, as part of zeroday.cloud, for reporting this problem. + (CVE-2026-2005) + + + + + + + Fix inadequate validation of multibyte character lengths + (Thomas Munro, Noah Misch) + § + § + § + § + § + § + + + + Assorted bugs allowed an attacker able to issue crafted SQL to + overrun string buffers, with consequences as bad as arbitrary code + execution. After these fixes, applications may + observe invalid byte sequence for encoding errors + when string functions process invalid text that has been stored in + the database. + + + + The PostgreSQL Project thanks Paul Gerste + and Moritz Sanft, as part of zeroday.cloud, for reporting this + problem. + (CVE-2026-2006) + + + + + + + Harden contrib/pg_trgm against changes in + string lowercasing behavior (Heikki Linnakangas) + § + § + + + + Fix potential buffer overruns arising from the fact that in some + locales lower-casing a string can produce more characters (not + bytes) than were in the original. That behavior is new in version + 18, and so is the bug. + + + + The PostgreSQL Project thanks + Heikki Linnakangas for reporting this problem. + (CVE-2026-2007) + + + + + + + Fix inconsistent case-insensitive matching + in contrib/ltree (Jeff Davis) + § + § + + + + Index-related routines in ltree used a + different implementation of case-folding than the primary operators + did. Their behavior was equivalent only if the default collation + provider was libc and the encoding was single-byte. + + + + To fix, change the code to use case-folding with the database's + default collation. + This change will require reindexing indexes on ltree + columns (regardless of the index access method) unless the database + uses libc as collation provider and its encoding is single-byte. + Without that, searches of such indexes will fail to locate relevant + entries. + + + + + + + When using ALTER TABLE ... ADD CONSTRAINT to add + a not-null constraint with an explicit name, if the column is + already marked NOT NULL, require that the provided name match the + existing constraint name (Álvaro Herrera, Srinath Reddy Sadipiralla) + § + + + + + + + Don't allow CTE references in sub-selects to determine semantic + levels of aggregate functions (Tom Lane) + § + + + + This change undoes a change made two minor releases ago, instead + throwing an error if a sub-select references a CTE that's below the + semantic level that standard SQL rules would assign to the aggregate + based on contained column references and aggregates. The attempted + fix turned out to cause problems of its own, and it's unclear what + to do instead. Since sub-selects within aggregates are disallowed + altogether by the SQL standard, treating such cases as errors seems + sufficient. + + + + + + + Fix trigger transition table capture for MERGE + in CTE queries (Dean Rasheed) + § + + + + When executing a data-modifying CTE query containing both + a MERGE and another DML operation on a table with + statement-level AFTER triggers, the transition + tables passed to the triggers would not include the rows affected by + the MERGE, only those affected by the other + operation(s). + + + + + + + Fix incorrect pruning of rowmarks belonging to non-relation + rangetable entries, such as subqueries (Dean Rasheed) + § + + + + This led to incorrect results if a proposed row update needed to be + modified by EvalPlanQual rechecking, as could happen if there was a + concurrent update to that row. + + + + + + + Fix failure when all children of a partitioned target table + of an update or delete have been pruned (Amit Langote) + § + + + + In such cases, the executor could report could not find junk + ctid column errors, even though nothing needs to be done. + + + + + + + Fix expression evaluation bug for a sub-select within an array + subscript (Andres Freund) + § + + + + + + + Fix text substring search for non-deterministic collations + (Laurenz Albe) + § + + + + When using a non-deterministic collation, we failed to detect a + match occurring at the very end of the searched string. + + + + + + + Avoid possible planner failure when a query contains duplicate + window function calls (Meng Zhang, David Rowley) + § + + + + Confusion over de-duplication of such calls could result in errors + like WindowFunc with winref 2 assigned to WindowAgg with + winref 1. + + + + + + + Fix planner error with set-returning functions and grouping sets + (Richard Guo) + § + + + + When constructing a ProjectSet plan node, the planner failed to + detect that subexpressions involving grouping expressions were + already computed by the input plan. This led to inefficient plans + or errors such as variable not found in subplan target + list. + + + + + + + Avoid incorrect optimization when a subquery's grouping clause + contains a volatile or set-returning function (Richard Guo) + § + + + + The planner was willing to push down outer-query restrictions + referencing such a grouping column, leading to incorrect behavior + due to multiple evaluation of a volatile function, or errors caused + by introduction of a set-returning function into the + subquery's WHERE/HAVING + clauses. + + + + + + + Look through PlaceHolderVar nodes when searching for statistics + about an expression (Richard Guo) + § + + + + This change allows the planner to find relevant statistics about + expressions pulled up from subqueries or used in GROUP + BY, avoiding falling back to a default estimate. + (Arguably we should adjust any found statistics to account for an + increased probability of the value being NULL, but we've never done + the equivalent thing for plain Vars either.) While this restriction + is old, changes in PostgreSQL version 18 + made PlaceHolderVars more common than before, so make the change to + avoid plan regressions in affected cases. + + + + + + + Look through no-op PlaceHolderVar nodes when matching expressions to + indexes (Richard Guo) + § + + + + Because PostgreSQL version 18 uses + PlaceHolderVars in more cases than before, some queries that + formerly could use an index failed to do so. Add logic to prevent + that regression. + + + + + + + Fix planner's conversion of OR clauses to + ScalarArrayOp index conditions (Tender Wang, Tom Lane) + § + + + + The code did not handle RelabelType nodes correctly, and could + generate invalid expressions or fail to perform a valid conversion. + + + + + + + Allow indexscans on partial hash indexes even when the index's + predicate implies the truth of the WHERE clause (Tom Lane) + § + + + + Normally we drop a WHERE clause that is implied by the predicate, + since it's pointless to test it; it must hold for every index + entry. However that can prevent creation of an indexscan plan if + the index is one that requires a WHERE clause on the leading index + key, as hash indexes do. Don't drop implied clauses when + considering such an index. + + + + + + + Do not emit WAL for unlogged BRIN indexes (Kirill Reshke) + § + + + + One seldom-taken code path incorrectly emitted a WAL record + relating to a BRIN index even if the index was marked unlogged. + Crash recovery would then fail to replay that record, complaining + that the file already exists. + + + + + + + Use the correct ordering function in parallel GIN index builds + (Tomas Vondra) + § + + + + The parallel code used the default ordering operator (which is + determined by the column data type's btree opclass), whereas it + should use the ordering function specified by the GIN opclass, if + any. This led to a failure if the data type has no btree opclass, + or to an invalid index if the opclass specifies an ordering function + that doesn't agree with the btree opclass. + + + + + + + Prevent truncation of CLOG that is still needed by + unread NOTIFY messages (Joel Jacobson, Heikki + Linnakangas) + § + § + § + + + + This fix prevents could not access status of + transaction errors when a backend is slow to + absorb NOTIFY messages. + + + + + + + Escalate errors occurring during NOTIFY message + processing to FATAL, i.e. close the connection (Heikki Linnakangas) + § + + + + Formerly, if a backend got an error while absorbing + a NOTIFY message, it would advance past that + message, report the error to the client, and move on. That behavior + was fraught with problems though. One big concern is that the + client has no good way to know that a notification was lost, and + certainly no way to know what was in it. Depending on the + application logic, missing a notification could cause the + application to get stuck waiting, for example. Also, any remaining + messages would not get processed until someone sent a + new NOTIFY. + + + + Also, if the connection is idle at the time of receiving + a NOTIFY signal, any ERROR would be escalated to + FATAL anyway, due to unrelated concerns. Therefore, we've chosen to + make that happen in all cases, for consistency and to provide a + clear signal to the application that it might have missed some + notifications. + + + + + + + Consider grouping expressions when computing a query ID hash + (Jian He) + § + + + + Previously, two queries that were the same except in GROUP + BY expressions would be merged + by contrib/pg_stat_statements and other users + of query IDs. + + + + + + + Fix erroneous counting of updates in EXPLAIN ANALYZE + MERGE with a concurrent update (Dean Rasheed) + § + + + + This situation led to an incorrect count of skipped + tuples in EXPLAIN's output, or to an assertion + failure in an assert-enabled build. + + + + + + + Fix bug in following update chain when locking a tuple (Jasper + Smit) + § + + + + This code path neglected to check the xmin of the first new tuple in + the update chain, making it possible to lock an unrelated tuple if + the original updater aborted and the space was immediately reclaimed + by VACUUM and then re-used. + That could cause unexpected transaction delays or deadlocks. + Errors associated with having identified the wrong tuple have also + been observed. + + + + + + + Fix incorrect handling of incremental backups of large tables + (Robert Haas, Oleg Tkachenko) + § + + + + If a table exceeding 1GB (or in general, the installation's segment + size) is truncated by VACUUM between the base + backup and the incremental + backup, pg_combinebackup could fail with + an error about truncation block length in excess of segment + size. This prevented restoring the incremental backup. + + + + + + + Fix potential backend process crash at process exit due to trying to + release a lock in an already-unmapped shared memory segment + (Rahila Syed) + § + + + + + + + Fix race condition in async I/O code (Andres Freund) + § + + + + It was possible for the result code of an asynchronous I/O operation + to be overwritten before it was fetched. + + + + + + + Guard against incorrect truncation of the multixact log after a + crash (Heikki Linnakangas) + § + + + + + + + Fix possibly mis-encoded result + of pg_stat_get_backend_activity() (Chao Li) + § + + + + The shared-memory buffer holding a session's activity string can + end with an incomplete multibyte character. Readers are supposed + to truncate off any such incomplete character, but this function + failed to do so. + + + + + + + Guard against recursive memory context logging (Fujii Masao) + § + + + + A constant flow of signals requesting memory context logging could + cause recursive execution of the logging code, which in theory could + lead to stack overflow. + + + + + + + Fix memory context usage when reinitializing a parallel execution + context (Jakub Wartak, Jeevan Chalke) + § + + + + This error could result in a crash due to a subsidiary data + structure having a shorter lifespan than the parallel context. + The problem is not known to be reachable using only + core PostgreSQL, but we have reports of + trouble in extensions. + + + + + + + Set next multixid's offset when creating a new multixid, to remove + the wait loop that was needed in corner cases (Andrey Borodin) + § + § + + + + The previous logic could get stuck waiting for an update that would + never occur. + + + + + + + Avoid rewriting data-modifying CTEs more than once (Bernice Southey, + Dean Rasheed) + § + + + + Formerly, when updating an auto-updatable view or a relation with + rules, if the original query had any data-modifying CTEs, the rewriter + would rewrite those CTEs multiple times due to recursion. This was + inefficient and could produce false errors if a CTE included an + update of an always-generated column. + + + + + + + Allow retrying initialization of a DSM registry entry + (Nathan Bossart) + § + + + + If we fail partway through initialization of a dynamic shared memory + entry, allow the next attempt to use that entry to retry + initialization. Previously the entry was left in a + permanently-failed state. + + + + + + + Avoid failure of NUMA status views when a page has been swapped out + (Tomas Vondra) + § + + + + + + + Avoid operation not permitted errors when querying + NUMA page status with older libnuma versions (Tomas Vondra) + § + + + + + + + Fail recovery if WAL does not exist back to the redo point indicated + by the checkpoint record (Nitin Jadhav) + § + + + + Add an explicit check for this before starting recovery, so that no + harm is done and a useful error message is provided. Previously, + recovery might crash or corrupt the database in this situation. + + + + + + + Avoid scribbling on the source query tree during ALTER + PUBLICATION (Sunil S) + § + + + + This error had the visible effect that an event trigger fired for + the query would see only the first publish + option, even if several had been specified. If such a query were + set up as a prepared statement, re-executions would misbehave too. + + + + + + + Pass connection options specified in CREATE SUBSCRIPTION + ... CONNECTION to the publisher's walsender (Fujii Masao) + § + + + + Before this fix, the options connection option + (if any) was ignored, thus for example preventing setting custom + server parameter values in the walsender session. It was intended + for that to work, and it did work before refactoring + in PostgreSQL version 15 broke it, so + restore the previous behavior. + + + + + + + Prevent invalidation of newly created or newly synced replication + slots (Zhijie Hou) + § + § + § + + + + A race condition with a concurrent checkpoint could allow WAL to be + removed that is needed by the replication slot, causing the slot to + immediately get marked invalid. + + + + + + + Fix race condition in computing a replication slot's required xmin + (Zhijie Hou) + § + + + + This could lead to the error cannot build an initial slot + snapshot as oldest safe xid follows snapshot's xmin. + + + + + + + During initial synchronization of a logical replication + subscription, commit the addition of + a pg_replication_origin entry before + starting to copy data (Zhijie Hou) + § + + + + Previously, if the copy step failed, the + new pg_replication_origin entry would be + lost due to transaction rollback. This led to inconsistent state in + shared memory. + + + + + + + Don't advance logical replication progress after a parallel worker + apply failure (Zhijie Hou) + § + + + + The previous behavior allowed transactions to be lost by a + subscriber. + + + + + + + Fix logical replication slotsync worker processes to handle + LOCK_TIMEOUT signals correctly (Zhijie Hou) + § + + + + Previously, timeout signals were effectively ignored. + + + + + + + Fix possible failure with unexpected data beyond EOF + during restart of a streaming replica server (Anthonin Bonnefoy) + § + + + + + + + Fix error reporting for SQL/JSON path type mismatches (Jian He) + § + + + + The code could produce a cache lookup failed for type 0 + error instead of the intended complaint about the path expression + not being of the right type. + + + + + + + Fix erroneous tracking of column position when parsing partition + range bounds (myzhen) + § + + + + This could, for example, lead to the wrong column name being cited + in error messages about casting partition bound values to the + column's data type. + + + + + + + Fix assorted minor errors in error messages (Man Zeng, Tianchen Zhang) + § + § + § + § + § + + + + For example, an error report about mismatched timeline number in a + backup manifest showed the starting timeline number where it meant + to show the ending timeline number. + + + + + + + Fix failure to perform function inlining when doing JIT compilation + with LLVM version 17 or later (Anthonin Bonnefoy) + § + + + + + + + Adjust our JIT code to work with LLVM 21 (Holger Hoffstätte) + § + + + + The previous coding failed to compile on aarch64 machines. + + + + + + + Fix aarch64-specific code to build with old (RHEL7-era) system + header files (Tom Lane) + § + § + + + + + + + Fix incorrect configure probe + for io_uring_queue_init_mem() (Masahiko Sawada) + § + + + + This error resulted in failure to optimize async I/O buffer + allocations in autotools-based builds, though the code did work when + building with meson. The main impact of the omission was + slower-than-necessary backend process exits. + + + + + + + Add new server parameter to + control use of posix_fallocate() (Thomas Munro) + § + + + + PostgreSQL version 16 and later will + use posix_fallocate(), if the platform provides + it, to extend relation files. However, this has been reported to + interact poorly with some file systems: BTRFS compression is + disabled by the use of posix_fallocate(), and + XFS could produce spurious ENOSPC errors in older + Linux kernel versions. To provide a workaround, introduce this new + server parameter. Setting file_extend_method + to write_zeros will cause the server to return to + the old method of extending files by writing blocks of zeroes. + + + + + + + Honor open()'s O_CLOEXEC + flag on Windows (Bryan Green, Thomas Munro) + § + § + § + + + + Make this flag work like it does on POSIX platforms, so that we + don't leak file handles into child processes such as COPY + TO/FROM PROGRAM. While that leakage hasn't caused many + problems, it seems undesirable. + + + + + + + Fix failure to parse long options on the server command line in + Solaris executables built with meson (Tom Lane) + § + + + + + + + Support process title changes on GNU/Hurd (Michael Banck) + § + + + + + + + Fix psql's tab completion + for VACUUM option values (Yugo Nagata) + § + + + + + + + In psql command prompts, + do not show a value for %P (pipeline status) when + there is no server connection (Chao Li) + § + + + + This makes %P act like other prompt escape + sequences whose values depend on the active connection. + + + + + + + Fix pg_dump's logic for collecting + sequence values (Nathan Bossart) + § + § + + + + pg_dump failed if a sequence was dropped + concurrently with the dump, even if the sequence was not among the + database objects to be dumped. Also, if the calling user lacks + privileges to read a sequence's + value, pg_dump emitted incorrect values + rather than failing as expected. + + + + + + + Fix potentially-incorrect quoting + of oauth_validator_libraries values + by pg_dump (ChangAo Chen) + § + + + + pg_dump applied the wrong quoting rule if + it needed to dump a value of this setting. + + + + + + + Avoid pg_dump assertion failure in + binary-upgrade mode (Vignesh C) + § + + + + Failure to handle subscription-relation objects in the object + sorting code triggered an assertion, though there were no serious + ill effects in production builds. + + + + + + + Fix incorrect error handling in pgbench + with multiple \syncpipeline commands + in pipeline mode (Yugo Nagata) + § + + + + If multiple \syncpipeline commands are + encountered after a query error, pgbench + would report failed to exit pipeline mode, or get an + assertion failure in an assert-enabled build. + + + + + + + Make pg_resetwal print the updated value + when changing OldestXID (Heikki Linnakangas) + § + + + + It already did that for every other variable it can change. + + + + + + + Make pg_resetwal allow setting next + multixact xid to 0 or next multixact offset to UINT32_MAX (Maxim + Orlov) + § + + + + These are valid values, so rejecting them was incorrect. In the + worst case, if a pg_upgrade is attempted when exactly at the point + of multixact wraparound, the upgrade would fail. + + + + + + + In contrib/amcheck, use the correct snapshot + for btree index parent checks (Mihail Nikalayeu) + § + § + + + + The previous coding caused spurious errors when examining indexes + created with CREATE INDEX CONCURRENTLY. + + + + + + + Fix contrib/amcheck to + handle half-dead btree index pages correctly + (Heikki Linnakangas) + § + + + + amcheck expected such a page to have a parent + downlink, but it does not, leading to a false error report + about mismatch between parent key and child high key. + + + + + + + Fix contrib/amcheck to + handle incomplete btree root page splits correctly + (Heikki Linnakangas) + § + + + + amcheck could report a false error + about block is not true root. + + + + + + + Fix excessive memory allocation + in contrib/pg_buffercache (David Geier) + § + + + + The code allocated twice as much memory as it needed for NUMA + page status. + + + + + + + Fix edge-case integer overflow + in contrib/intarray's selectivity estimator + for @@ (Chao Li) + § + + + + This could cause poor selectivity estimates to be produced for cases + involving the maximum integer value. + + + + + + + Fix multibyte-encoding issue in contrib/ltree + (Jeff Davis) + § + + + + The previous coding could pass an incomplete multibyte character + to lower(), probably resulting in incorrect + behavior. + + + + + + + Avoid crash in contrib/pg_stat_statements when + an IN list contains both constants and + non-constant expressions (Sami Imseih) + § + + + + + + + Update time zone data files to tzdata + release 2025c (Tom Lane) + § + + + + The only change is in historical data for pre-1976 timestamps in + Baja California. + + + + + + + + Release 18.1 @@ -3873,7 +5670,7 @@ Author: Tom Lane - <xref linkend="libpq"/> + <link linkend="libpq">Libpq</link> @@ -4860,8 +6657,8 @@ Author: Peter Eisentraut - Add support for Python "Limited API" in (Peter Eisentraut) + Add support for Python "Limited API" in PL/Python (Peter Eisentraut) § § diff --git a/meson.build b/meson.build index 57f95434143..aad550ea05b 100644 --- a/meson.build +++ b/meson.build @@ -8,7 +8,7 @@ project('postgresql', ['c'], - version: '18.1', + version: '18.2', license: 'PostgreSQL', # We want < 0.56 for python 3.5 compatibility on old platforms. EPEL for @@ -451,6 +451,14 @@ else segsize = (get_option('segsize') * 1024 * 1024 * 1024) / blocksize endif +# If we don't have largefile support, can't handle segment size >= 2GB. +if cc.sizeof('off_t', args: test_c_args) < 8 + segsize_bytes = segsize * blocksize + if segsize_bytes >= (2 * 1024 * 1024 * 1024) + error('Large file support is not enabled. Segment size cannot be larger than 1GB.') + endif +endif + cdata.set('BLCKSZ', blocksize, description: '''Size of a disk block --- this also limits the size of a tuple. You can set it bigger if you need bigger tuples (although TOAST should reduce the need @@ -993,7 +1001,7 @@ if liburing.found() if cc.has_function('io_uring_queue_init_mem', dependencies: liburing, args: test_c_args) - cdata.set('HAVE_LIBURING_QUEUE_INIT_MEM', 1) + cdata.set('HAVE_IO_URING_QUEUE_INIT_MEM', 1) endif endif @@ -2848,7 +2856,7 @@ gnugetopt_dep = cc.find_library('gnugetopt', required: false) # (i.e., allow '-' as a flag character), so use our version on those platforms # - We want to use system's getopt_long() only if the system provides struct # option -always_replace_getopt = host_system in ['windows', 'cygwin', 'openbsd', 'solaris'] +always_replace_getopt = host_system in ['windows', 'cygwin', 'openbsd', 'sunos'] always_replace_getopt_long = host_system in ['windows', 'cygwin'] or not cdata.has('HAVE_STRUCT_OPTION') # Required on BSDs diff --git a/src/backend/Makefile b/src/backend/Makefile index 7344c8c7f5c..c0be9410383 100644 --- a/src/backend/Makefile +++ b/src/backend/Makefile @@ -114,9 +114,6 @@ parser/gram.h: parser/gram.y storage/lmgr/lwlocknames.h: storage/lmgr/generate-lwlocknames.pl ../include/storage/lwlocklist.h utils/activity/wait_event_names.txt $(MAKE) -C storage/lmgr lwlocknames.h -utils/activity/wait_event_types.h: utils/activity/generate-wait_event_types.pl utils/activity/wait_event_names.txt - $(MAKE) -C utils/activity wait_event_types.h pgstat_wait_event.c wait_event_funcs_data.c - # run this unconditionally to avoid needing to know its dependencies here: submake-catalog-headers: $(MAKE) -C ../include/catalog generated-headers @@ -141,18 +138,13 @@ submake-utils-headers: .PHONY: generated-headers -generated-headers: $(top_builddir)/src/include/storage/lwlocknames.h $(top_builddir)/src/include/utils/wait_event_types.h submake-catalog-headers submake-nodes-headers submake-utils-headers parser/gram.h +generated-headers: $(top_builddir)/src/include/storage/lwlocknames.h submake-catalog-headers submake-nodes-headers submake-utils-headers parser/gram.h $(top_builddir)/src/include/storage/lwlocknames.h: storage/lmgr/lwlocknames.h prereqdir=`cd '$(dir $<)' >/dev/null && pwd` && \ cd '$(dir $@)' && rm -f $(notdir $@) && \ $(LN_S) "$$prereqdir/$(notdir $<)" . -$(top_builddir)/src/include/utils/wait_event_types.h: utils/activity/wait_event_types.h - prereqdir=`cd '$(dir $<)' >/dev/null && pwd` && \ - cd '$(dir $@)' && rm -f $(notdir $@) && \ - $(LN_S) "$$prereqdir/$(notdir $<)" . - utils/probes.o: utils/probes.d $(SUBDIROBJS) $(DTRACE) $(DTRACEFLAGS) -C -G -s $(call expand_subsys,$^) -o $@ diff --git a/src/backend/access/brin/brin_pageops.c b/src/backend/access/brin/brin_pageops.c index 6d8dd1512d6..a5187a6202f 100644 --- a/src/backend/access/brin/brin_pageops.c +++ b/src/backend/access/brin/brin_pageops.c @@ -893,7 +893,11 @@ brin_initialize_empty_new_buffer(Relation idxrel, Buffer buffer) page = BufferGetPage(buffer); brin_page_init(page, BRIN_PAGETYPE_REGULAR); MarkBufferDirty(buffer); - log_newpage_buffer(buffer, true); + + /* XLOG stuff */ + if (RelationNeedsWAL(idxrel)) + log_newpage_buffer(buffer, true); + END_CRIT_SECTION(); /* diff --git a/src/backend/access/hash/README b/src/backend/access/hash/README index 13dc59c124a..fc9031117c9 100644 --- a/src/backend/access/hash/README +++ b/src/backend/access/hash/README @@ -171,11 +171,10 @@ Metapage Caching Both scanning the index and inserting tuples require locating the bucket where a given tuple ought to be located. To do this, we need the bucket count, highmask, and lowmask from the metapage; however, it's undesirable -for performance reasons to have to have to lock and pin the metapage for -every such operation. Instead, we retain a cached copy of the metapage -in each backend's relcache entry. This will produce the correct -bucket mapping as long as the target bucket hasn't been split since the -last cache refresh. +for performance reasons to have to lock and pin the metapage for every such +operation. Instead, we retain a cached copy of the metapage in each backend's +relcache entry. This will produce the correct bucket mapping as long as the +target bucket hasn't been split since the last cache refresh. To guard against the possibility that such a split has occurred, the primary page of each bucket chain stores the number of buckets that diff --git a/src/backend/access/hash/hashfunc.c b/src/backend/access/hash/hashfunc.c index ec96348942e..adab96b9f13 100644 --- a/src/backend/access/hash/hashfunc.c +++ b/src/backend/access/hash/hashfunc.c @@ -27,6 +27,7 @@ #include "postgres.h" #include "common/hashfn.h" +#include "utils/builtins.h" #include "utils/float.h" #include "utils/fmgrprotos.h" #include "utils/pg_locale.h" @@ -233,6 +234,7 @@ hashoidvector(PG_FUNCTION_ARGS) { oidvector *key = (oidvector *) PG_GETARG_POINTER(0); + check_valid_oidvector(key); return hash_any((unsigned char *) key->values, key->dim1 * sizeof(Oid)); } @@ -241,6 +243,7 @@ hashoidvectorextended(PG_FUNCTION_ARGS) { oidvector *key = (oidvector *) PG_GETARG_POINTER(0); + check_valid_oidvector(key); return hash_any_extended((unsigned char *) key->values, key->dim1 * sizeof(Oid), PG_GETARG_INT64(1)); diff --git a/src/backend/access/heap/README.tuplock b/src/backend/access/heap/README.tuplock index 843c2e58f92..16f7d78b7d2 100644 --- a/src/backend/access/heap/README.tuplock +++ b/src/backend/access/heap/README.tuplock @@ -199,3 +199,35 @@ under a reader holding a pin. A reader of a heap_fetch() result tuple may witness a torn read. Current inplace-updated fields are aligned and are no wider than four bytes, and current readers don't need consistency across fields. Hence, they get by with just fetching each field once. + +During logical decoding, caches reflect an inplace update no later than the +next XLOG_XACT_INVALIDATIONS. That record witnesses the end of a command. +Tuples of its cmin are then visible to decoding, as are inplace updates of any +lower LSN. Inplace updates of a higher LSN may also be visible, even if those +updates would have been invisible to a non-historic snapshot matching +decoding's historic snapshot. (In other words, decoding may see inplace +updates that were not visible to a similar snapshot taken during original +transaction processing.) That's a consequence of inplace update violating +MVCC: there are no snapshot-specific versions of inplace-updated values. This +all makes it hard to reason about inplace-updated column reads during logical +decoding, but the behavior does suffice for relhasindex. A relhasindex=t in +CREATE INDEX becomes visible no later than the new pg_index row. While it may +be visible earlier, that's harmless. Finding zero indexes despite +relhasindex=t is normal in more cases than this, e.g. after DROP INDEX. +Example of a case that meaningfully reacts to the inplace inval: + +CREATE TABLE cat (c int) WITH (user_catalog_table = true); +CREATE TABLE normal (d int); +... +CREATE INDEX ON cat (c)\; INSERT INTO normal VALUES (1); + +If the output plugin reads "cat" during decoding of the INSERT, it's fair to +want that read to see relhasindex=t and use the new index. + +An alternative would be to have decoding of XLOG_HEAP_INPLACE immediately +execute its invals. That would behave more like invals during original +transaction processing. It would remove the decoding-specific delay in e.g. a +decoding plugin witnessing a relfrozenxid change. However, a good use case +for that is unlikely, since the plugin would still witness relfrozenxid +changes prematurely. Hence, inplace update takes the trivial approach of +delegating to XLOG_XACT_INVALIDATIONS. diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c index abe7957d191..dae9ebdefbf 100644 --- a/src/backend/access/heap/heapam.c +++ b/src/backend/access/heap/heapam.c @@ -86,8 +86,11 @@ static void compute_new_xmax_infomask(TransactionId xmax, uint16 old_infomask, LockTupleMode mode, bool is_update, TransactionId *result_xmax, uint16 *result_infomask, uint16 *result_infomask2); -static TM_Result heap_lock_updated_tuple(Relation rel, HeapTuple tuple, - ItemPointer ctid, TransactionId xid, +static TM_Result heap_lock_updated_tuple(Relation rel, + uint16 prior_infomask, + TransactionId prior_rawxmax, + const ItemPointerData *prior_ctid, + TransactionId xid, LockTupleMode mode); static void GetMultiXactIdHintBits(MultiXactId multi, uint16 *new_infomask, uint16 *new_infomask2); @@ -1060,7 +1063,7 @@ heapgettup_pagemode(HeapScanDesc scan, ItemId lpp; OffsetNumber lineoff; - Assert(lineindex <= scan->rs_ntuples); + Assert(lineindex < scan->rs_ntuples); lineoff = scan->rs_vistuples[lineindex]; lpp = PageGetItemId(page, lineoff); Assert(ItemIdIsNormal(lpp)); @@ -4808,11 +4811,13 @@ heap_lock_tuple(Relation relation, HeapTuple tuple, * If there are updates, follow the update chain; bail out if * that cannot be done. */ - if (follow_updates && updated) + if (follow_updates && updated && + !ItemPointerEquals(&tuple->t_self, &t_ctid)) { TM_Result res; - res = heap_lock_updated_tuple(relation, tuple, &t_ctid, + res = heap_lock_updated_tuple(relation, + infomask, xwait, &t_ctid, GetCurrentTransactionId(), mode); if (res != TM_Ok) @@ -5055,11 +5060,13 @@ heap_lock_tuple(Relation relation, HeapTuple tuple, } /* if there are updates, follow the update chain */ - if (follow_updates && !HEAP_XMAX_IS_LOCKED_ONLY(infomask)) + if (follow_updates && !HEAP_XMAX_IS_LOCKED_ONLY(infomask) && + !ItemPointerEquals(&tuple->t_self, &t_ctid)) { TM_Result res; - res = heap_lock_updated_tuple(relation, tuple, &t_ctid, + res = heap_lock_updated_tuple(relation, + infomask, xwait, &t_ctid, GetCurrentTransactionId(), mode); if (res != TM_Ok) @@ -5714,7 +5721,8 @@ test_lockmode_for_conflict(MultiXactStatus status, TransactionId xid, * version as well. */ static TM_Result -heap_lock_updated_tuple_rec(Relation rel, ItemPointer tid, TransactionId xid, +heap_lock_updated_tuple_rec(Relation rel, TransactionId priorXmax, + const ItemPointerData *tid, TransactionId xid, LockTupleMode mode) { TM_Result result; @@ -5727,7 +5735,6 @@ heap_lock_updated_tuple_rec(Relation rel, ItemPointer tid, TransactionId xid, old_infomask2; TransactionId xmax, new_xmax; - TransactionId priorXmax = InvalidTransactionId; bool cleared_all_frozen = false; bool pinned_desired_page; Buffer vmbuffer = InvalidBuffer; @@ -6041,7 +6048,10 @@ heap_lock_updated_tuple_rec(Relation rel, ItemPointer tid, TransactionId xid, * Follow update chain when locking an updated tuple, acquiring locks (row * marks) on the updated versions. * - * The initial tuple is assumed to be already locked. + * 'prior_infomask', 'prior_raw_xmax' and 'prior_ctid' are the corresponding + * fields from the initial tuple. We will lock the tuples starting from the + * one that 'prior_ctid' points to. Note: This function does not lock the + * initial tuple itself. * * This function doesn't check visibility, it just unconditionally marks the * tuple(s) as locked. If any tuple in the updated chain is being deleted @@ -6059,16 +6069,22 @@ heap_lock_updated_tuple_rec(Relation rel, ItemPointer tid, TransactionId xid, * levels, because that would lead to a serializability failure. */ static TM_Result -heap_lock_updated_tuple(Relation rel, HeapTuple tuple, ItemPointer ctid, +heap_lock_updated_tuple(Relation rel, + uint16 prior_infomask, + TransactionId prior_raw_xmax, + const ItemPointerData *prior_ctid, TransactionId xid, LockTupleMode mode) { + INJECTION_POINT("heap_lock_updated_tuple", NULL); + /* - * If the tuple has not been updated, or has moved into another partition - * (effectively a delete) stop here. + * If the tuple has moved into another partition (effectively a delete) + * stop here. */ - if (!HeapTupleHeaderIndicatesMovedPartitions(tuple->t_data) && - !ItemPointerEquals(&tuple->t_self, ctid)) + if (!ItemPointerIndicatesMovedPartitions(prior_ctid)) { + TransactionId prior_xmax; + /* * If this is the first possibly-multixact-able operation in the * current transaction, set my per-backend OldestMemberMXactId @@ -6080,7 +6096,9 @@ heap_lock_updated_tuple(Relation rel, HeapTuple tuple, ItemPointer ctid, */ MultiXactIdSetOldestMember(); - return heap_lock_updated_tuple_rec(rel, ctid, xid, mode); + prior_xmax = (prior_infomask & HEAP_XMAX_IS_MULTI) ? + MultiXactIdGetUpdateXid(prior_raw_xmax, prior_infomask) : prior_raw_xmax; + return heap_lock_updated_tuple_rec(rel, prior_xmax, prior_ctid, xid, mode); } /* nothing to lock */ @@ -6398,15 +6416,17 @@ heap_inplace_lock(Relation relation, Assert(BufferIsValid(buffer)); /* - * Construct shared cache inval if necessary. Because we pass a tuple - * version without our own inplace changes or inplace changes other - * sessions complete while we wait for locks, inplace update mustn't - * change catcache lookup keys. But we aren't bothering with index - * updates either, so that's true a fortiori. After LockBuffer(), it - * would be too late, because this might reach a - * CatalogCacheInitializeCache() that locks "buffer". + * Register shared cache invals if necessary. Other sessions may finish + * inplace updates of this tuple between this step and LockTuple(). Since + * inplace updates don't change cache keys, that's harmless. + * + * While it's tempting to register invals only after confirming we can + * return true, the following obstacle precludes reordering steps that + * way. Registering invals might reach a CatalogCacheInitializeCache() + * that locks "buffer". That would hang indefinitely if running after our + * own LockBuffer(). Hence, we must register invals before LockBuffer(). */ - CacheInvalidateHeapTupleInplace(relation, oldtup_ptr, NULL); + CacheInvalidateHeapTupleInplace(relation, oldtup_ptr); LockTuple(relation, &oldtup.t_self, InplaceUpdateTupleLock); LockBuffer(buffer, BUFFER_LOCK_EXCLUSIVE); @@ -6644,10 +6664,6 @@ heap_inplace_update_and_unlock(Relation relation, /* * Send invalidations to shared queue. SearchSysCacheLocked1() assumes we * do this before UnlockTuple(). - * - * If we're mutating a tuple visible only to this transaction, there's an - * equivalent transactional inval from the action that created the tuple, - * and this inval is superfluous. */ AtInplace_Inval(); @@ -6658,10 +6674,10 @@ heap_inplace_update_and_unlock(Relation relation, AcceptInvalidationMessages(); /* local processing of just-sent inval */ /* - * Queue a transactional inval. The immediate invalidation we just sent - * is the only one known to be necessary. To reduce risk from the - * transition to immediate invalidation, continue sending a transactional - * invalidation like we've long done. Third-party code might rely on it. + * Queue a transactional inval, for logical decoding and for third-party + * code that might have been relying on it since long before inplace + * update adopted immediate invalidation. See README.tuplock section + * "Reading inplace-updated columns" for logical decoding details. */ if (!IsBootstrapProcessingMode()) CacheInvalidateHeapTuple(relation, tuple, NULL); diff --git a/src/backend/access/heap/heaptoast.c b/src/backend/access/heap/heaptoast.c index cb1e57030f6..c6022ff139c 100644 --- a/src/backend/access/heap/heaptoast.c +++ b/src/backend/access/heap/heaptoast.c @@ -768,7 +768,7 @@ heap_fetch_toast_slice(Relation toastrel, Oid valueid, int32 attrsize, chcpyend = (sliceoffset + slicelength - 1) % TOAST_MAX_CHUNK_SIZE; memcpy(VARDATA(result) + - (curchunk * TOAST_MAX_CHUNK_SIZE - sliceoffset) + chcpystrt, + curchunk * TOAST_MAX_CHUNK_SIZE - sliceoffset + chcpystrt, chunkdata + chcpystrt, (chcpyend - chcpystrt) + 1); diff --git a/src/backend/access/nbtree/nbtcompare.c b/src/backend/access/nbtree/nbtcompare.c index 4da5a3c1d16..458cd1ae0a0 100644 --- a/src/backend/access/nbtree/nbtcompare.c +++ b/src/backend/access/nbtree/nbtcompare.c @@ -57,6 +57,7 @@ #include +#include "utils/builtins.h" #include "utils/fmgrprotos.h" #include "utils/skipsupport.h" #include "utils/sortsupport.h" @@ -525,6 +526,9 @@ btoidvectorcmp(PG_FUNCTION_ARGS) oidvector *b = (oidvector *) PG_GETARG_POINTER(1); int i; + check_valid_oidvector(a); + check_valid_oidvector(b); + /* We arbitrarily choose to sort first by vector length */ if (a->dim1 != b->dim1) PG_RETURN_INT32(a->dim1 - b->dim1); diff --git a/src/backend/access/nbtree/nbtpreprocesskeys.c b/src/backend/access/nbtree/nbtpreprocesskeys.c index 842ab94f189..d09384a813a 100644 --- a/src/backend/access/nbtree/nbtpreprocesskeys.c +++ b/src/backend/access/nbtree/nbtpreprocesskeys.c @@ -120,6 +120,10 @@ static int _bt_compare_array_elements(const void *a, const void *b, void *arg); * For the first attribute without an "=" key, any "<" and "<=" keys are * marked SK_BT_REQFWD while any ">" and ">=" keys are marked SK_BT_REQBKWD. * This can be seen to be correct by considering the above example. + * (Actually, the z key _will_ be marked SK_BT_REQFWD, since preprocessing + * will generate a skip array on y -- except when DEBUG_DISABLE_SKIP_SCAN. + * See below description of how and why we generate skip array = keys in the + * presence of a "contradictory" condition such as "y < 4".) * * If we never generated skip array scan keys, it would be possible for "gaps" * to appear that make it unsafe to mark any subsequent input scan keys @@ -175,13 +179,18 @@ static int _bt_compare_array_elements(const void *a, const void *b, void *arg); * array will generate its array elements from a range that's constrained by * any merged input inequalities (which won't get output in so->keyData[]). * - * Row comparison keys currently have a couple of notable limitations. - * Right now we just transfer them into the preprocessed array without any - * editorialization. We can treat them the same as an ordinary inequality - * comparison on the row's first index column, for the purposes of the logic - * about required keys. Also, we are unable to merge a row comparison key - * into a skip array (only ordinary inequalities are merged). A key that - * comes after a Row comparison key is therefore never marked as required. + * Row compares are treated as ordinary inequality comparisons on the row's + * first index column whenever possible. We treat their first subkey as if it + * was a simple scalar inequality for the purposes of the logic about required + * keys. This also gives us limited ability to detect contradictory/redundant + * conditions involving a row compare: we can do so whenever it involves an + * SK_ISNULL condition on a row compare's first column (the same rules used + * with simple inequalities work just as well here). We have no ability to + * detect redundant/contradictory conditions in any other row compare case. + * Note in particular that we are unable to merge a row comparison key into a + * skip array (only ordinary inequalities are merged). Any so->keyData[] key + * on a column that comes after a row comparison's first column can therefore + * never be marked as required at present. * * Note: the reason we have to copy the preprocessed scan keys into private * storage is that we are modifying the array based on comparisons of the @@ -1395,7 +1404,7 @@ _bt_skiparray_strat_adjust(IndexScanDesc scan, ScanKey arraysk, } /* - * Convert skip array's > low_compare key into a >= key + * Convert skip array's < high_compare key into a <= key */ static void _bt_skiparray_strat_decrement(IndexScanDesc scan, ScanKey arraysk, @@ -1453,7 +1462,7 @@ _bt_skiparray_strat_decrement(IndexScanDesc scan, ScanKey arraysk, } /* - * Convert skip array's < low_compare key into a <= key + * Convert skip array's > low_compare key into a >= key */ static void _bt_skiparray_strat_increment(IndexScanDesc scan, ScanKey arraysk, diff --git a/src/backend/access/transam/multixact.c b/src/backend/access/transam/multixact.c index f94445bdd07..d5ac2d87380 100644 --- a/src/backend/access/transam/multixact.c +++ b/src/backend/access/transam/multixact.c @@ -84,7 +84,6 @@ #include "pg_trace.h" #include "pgstat.h" #include "postmaster/autovacuum.h" -#include "storage/condition_variable.h" #include "storage/pmsignal.h" #include "storage/proc.h" #include "storage/procarray.h" @@ -276,12 +275,6 @@ typedef struct MultiXactStateData /* support for members anti-wraparound measures */ MultiXactOffset offsetStopLimit; /* known if oldestOffsetKnown */ - /* - * This is used to sleep until a multixact offset is written when we want - * to create the next one. - */ - ConditionVariable nextoff_cv; - /* * Per-backend data starts here. We have two arrays stored in the area * immediately following the MultiXactStateData struct. Each is indexed by @@ -386,6 +379,9 @@ static MemoryContext MXactContext = NULL; #define debug_elog6(a,b,c,d,e,f) #endif +/* hack to deal with WAL generated with older minor versions */ +static int64 pre_initialized_offsets_page = -1; + /* internal MultiXactId management */ static void MultiXactIdSetOldestVisible(void); static void RecordNewMultiXact(MultiXactId multi, MultiXactOffset offset, @@ -922,13 +918,66 @@ RecordNewMultiXact(MultiXactId multi, MultiXactOffset offset, int entryno; int slotno; MultiXactOffset *offptr; - int i; + MultiXactId next; + int64 next_pageno; + int next_entryno; + MultiXactOffset *next_offptr; + MultiXactOffset next_offset; LWLock *lock; LWLock *prevlock = NULL; + /* position of this multixid in the offsets SLRU area */ pageno = MultiXactIdToOffsetPage(multi); entryno = MultiXactIdToOffsetEntry(multi); + /* position of the next multixid */ + next = multi + 1; + if (next < FirstMultiXactId) + next = FirstMultiXactId; + next_pageno = MultiXactIdToOffsetPage(next); + next_entryno = MultiXactIdToOffsetEntry(next); + + /* + * Older minor versions didn't set the next multixid's offset in this + * function, and therefore didn't initialize the next page until the next + * multixid was assigned. If we're replaying WAL that was generated by + * such a version, the next page might not be initialized yet. Initialize + * it now. + */ + if (InRecovery && + next_pageno != pageno && + pg_atomic_read_u64(&MultiXactOffsetCtl->shared->latest_page_number) == pageno) + { + elog(DEBUG1, "next offsets page is not initialized, initializing it now"); + + lock = SimpleLruGetBankLock(MultiXactOffsetCtl, next_pageno); + LWLockAcquire(lock, LW_EXCLUSIVE); + + /* Create and zero the page */ + slotno = SimpleLruZeroPage(MultiXactOffsetCtl, next_pageno); + + /* Make sure it's written out */ + SimpleLruWritePage(MultiXactOffsetCtl, slotno); + Assert(!MultiXactOffsetCtl->shared->page_dirty[slotno]); + + LWLockRelease(lock); + + /* + * Remember that we initialized the page, so that we don't zero it + * again at the XLOG_MULTIXACT_ZERO_OFF_PAGE record. + */ + pre_initialized_offsets_page = next_pageno; + } + + /* + * Set the starting offset of this multixid's members. + * + * In the common case, it was already be set by the previous + * RecordNewMultiXact call, as this was the next multixid of the previous + * multixid. But if multiple backends are generating multixids + * concurrently, we might race ahead and get called before the previous + * multixid. + */ lock = SimpleLruGetBankLock(MultiXactOffsetCtl, pageno); LWLockAcquire(lock, LW_EXCLUSIVE); @@ -943,22 +992,54 @@ RecordNewMultiXact(MultiXactId multi, MultiXactOffset offset, offptr = (MultiXactOffset *) MultiXactOffsetCtl->shared->page_buffer[slotno]; offptr += entryno; - *offptr = offset; + if (*offptr != offset) + { + /* should already be set to the correct value, or not at all */ + Assert(*offptr == 0); + *offptr = offset; + MultiXactOffsetCtl->shared->page_dirty[slotno] = true; + } + + /* + * Set the next multixid's offset to the end of this multixid's members. + */ + if (next_pageno == pageno) + { + next_offptr = offptr + 1; + } + else + { + /* must be the first entry on the page */ + Assert(next_entryno == 0 || next == FirstMultiXactId); + + /* Swap the lock for a lock on the next page */ + LWLockRelease(lock); + lock = SimpleLruGetBankLock(MultiXactOffsetCtl, next_pageno); + LWLockAcquire(lock, LW_EXCLUSIVE); - MultiXactOffsetCtl->shared->page_dirty[slotno] = true; + slotno = SimpleLruReadPage(MultiXactOffsetCtl, next_pageno, true, next); + next_offptr = (MultiXactOffset *) MultiXactOffsetCtl->shared->page_buffer[slotno]; + next_offptr += next_entryno; + } + + /* Like in GetNewMultiXactId(), skip over offset 0 */ + next_offset = offset + nmembers; + if (next_offset == 0) + next_offset = 1; + if (*next_offptr != next_offset) + { + /* should already be set to the correct value, or not at all */ + Assert(*next_offptr == 0); + *next_offptr = next_offset; + MultiXactOffsetCtl->shared->page_dirty[slotno] = true; + } /* Release MultiXactOffset SLRU lock. */ LWLockRelease(lock); - /* - * If anybody was waiting to know the offset of this multixact ID we just - * wrote, they can read it now, so wake them up. - */ - ConditionVariableBroadcast(&MultiXactState->nextoff_cv); - prev_pageno = -1; - for (i = 0; i < nmembers; i++, offset++) + for (int i = 0; i < nmembers; i++, offset++) { TransactionId *memberptr; uint32 *flagsptr; @@ -1148,8 +1229,11 @@ GetNewMultiXactId(int nmembers, MultiXactOffset *offset) result = FirstMultiXactId; } - /* Make sure there is room for the MXID in the file. */ - ExtendMultiXactOffset(result); + /* + * Make sure there is room for the next MXID in the file. Assigning this + * MXID sets the next MXID's offset already. + */ + ExtendMultiXactOffset(result + 1); /* * Reserve the members space, similarly to above. Also, be careful not to @@ -1314,7 +1398,6 @@ GetMultiXactIdMembers(MultiXactId multi, MultiXactMember **members, MultiXactOffset nextOffset; MultiXactMember *ptr; LWLock *lock; - bool slept = false; debug_elog3(DEBUG2, "GetMembers: asked for %u", multi); @@ -1391,23 +1474,14 @@ GetMultiXactIdMembers(MultiXactId multi, MultiXactMember **members, * one's. However, there are some corner cases to worry about: * * 1. This multixact may be the latest one created, in which case there is - * no next one to look at. In this case the nextOffset value we just - * saved is the correct endpoint. - * - * 2. The next multixact may still be in process of being filled in: that - * is, another process may have done GetNewMultiXactId but not yet written - * the offset entry for that ID. In that scenario, it is guaranteed that - * the offset entry for that multixact exists (because GetNewMultiXactId - * won't release MultiXactGenLock until it does) but contains zero - * (because we are careful to pre-zero offset pages). Because - * GetNewMultiXactId will never return zero as the starting offset for a - * multixact, when we read zero as the next multixact's offset, we know we - * have this case. We handle this by sleeping on the condition variable - * we have just for this; the process in charge will signal the CV as soon - * as it has finished writing the multixact offset. + * no next one to look at. The next multixact's offset should be set + * already, as we set it in RecordNewMultiXact(), but we used to not do + * that in older minor versions. To cope with that case, if this + * multixact is the latest one created, use the nextOffset value we read + * above as the endpoint. * - * 3. Because GetNewMultiXactId increments offset zero to offset one to - * handle case #2, there is an ambiguity near the point of offset + * 2. Because GetNewMultiXactId skips over offset zero, to reserve zero + * for to mean "unset", there is an ambiguity near the point of offset * wraparound. If we see next multixact's offset is one, is that our * multixact's actual endpoint, or did it end at zero with a subsequent * increment? We handle this using the knowledge that if the zero'th @@ -1419,7 +1493,6 @@ GetMultiXactIdMembers(MultiXactId multi, MultiXactMember **members, * cases, so it seems better than holding the MultiXactGenLock for a long * time on every multixact creation. */ -retry: pageno = MultiXactIdToOffsetPage(multi); entryno = MultiXactIdToOffsetEntry(multi); @@ -1482,18 +1555,10 @@ GetMultiXactIdMembers(MultiXactId multi, MultiXactMember **members, nextMXOffset = *offptr; if (nextMXOffset == 0) - { - /* Corner case 2: next multixact is still being filled in */ - LWLockRelease(lock); - CHECK_FOR_INTERRUPTS(); - - INJECTION_POINT("multixact-get-members-cv-sleep", NULL); - - ConditionVariableSleep(&MultiXactState->nextoff_cv, - WAIT_EVENT_MULTIXACT_CREATION); - slept = true; - goto retry; - } + ereport(ERROR, + (errcode(ERRCODE_DATA_CORRUPTED), + errmsg("MultiXact %u has invalid next offset", + multi))); length = nextMXOffset - offset; } @@ -1501,12 +1566,6 @@ GetMultiXactIdMembers(MultiXactId multi, MultiXactMember **members, LWLockRelease(lock); lock = NULL; - /* - * If we slept above, clean up state; it's no longer needed. - */ - if (slept) - ConditionVariableCancelSleep(); - ptr = (MultiXactMember *) palloc(length * sizeof(MultiXactMember)); truelength = 0; @@ -1549,7 +1608,10 @@ GetMultiXactIdMembers(MultiXactId multi, MultiXactMember **members, if (!TransactionIdIsValid(*xactptr)) { - /* Corner case 3: we must be looking at unused slot zero */ + /* + * Corner case 2: offset must have wrapped around to unused slot + * zero. + */ Assert(offset == 0); continue; } @@ -1996,7 +2058,6 @@ MultiXactShmemInit(void) /* Make sure we zero out the per-backend state */ MemSet(MultiXactState, 0, SHARED_MULTIXACT_STATE_SIZE); - ConditionVariableInit(&MultiXactState->nextoff_cv); } else Assert(found); @@ -2203,26 +2264,34 @@ TrimMultiXact(void) pageno); /* - * Zero out the remainder of the current offsets page. See notes in - * TrimCLOG() for background. Unlike CLOG, some WAL record covers every - * pg_multixact SLRU mutation. Since, also unlike CLOG, we ignore the WAL - * rule "write xlog before data," nextMXact successors may carry obsolete, - * nonzero offset values. Zero those so case 2 of GetMultiXactIdMembers() - * operates normally. + * Set the offset of nextMXact on the offsets page. This is normally done + * in RecordNewMultiXact() of the previous multixact, but we used to not + * do that in older minor versions. To ensure that the next offset is set + * if the binary was just upgraded from an older minor version, do it now. + * + * Zero out the remainder of the page. See notes in TrimCLOG() for + * background. Unlike CLOG, some WAL record covers every pg_multixact + * SLRU mutation. Since, also unlike CLOG, we ignore the WAL rule "write + * xlog before data," nextMXact successors may carry obsolete, nonzero + * offset values. */ entryno = MultiXactIdToOffsetEntry(nextMXact); - if (entryno != 0) { int slotno; MultiXactOffset *offptr; LWLock *lock = SimpleLruGetBankLock(MultiXactOffsetCtl, pageno); LWLockAcquire(lock, LW_EXCLUSIVE); - slotno = SimpleLruReadPage(MultiXactOffsetCtl, pageno, true, nextMXact); + if (entryno == 0) + slotno = SimpleLruZeroPage(MultiXactOffsetCtl, pageno); + else + slotno = SimpleLruReadPage(MultiXactOffsetCtl, pageno, true, nextMXact); offptr = (MultiXactOffset *) MultiXactOffsetCtl->shared->page_buffer[slotno]; offptr += entryno; - MemSet(offptr, 0, BLCKSZ - (entryno * sizeof(MultiXactOffset))); + *offptr = offset; + if (entryno != 0 && (entryno + 1) * sizeof(MultiXactOffset) != BLCKSZ) + MemSet(offptr + 1, 0, BLCKSZ - (entryno + 1) * sizeof(MultiXactOffset)); MultiXactOffsetCtl->shared->page_dirty[slotno] = true; LWLockRelease(lock); @@ -3210,6 +3279,23 @@ TruncateMultiXact(MultiXactId newOldestMulti, Oid newOldestMultiDB) return; } + /* + * On crash, MultiXactIdCreateFromMembers() can leave behind multixids + * that were not yet written out and hence have zero offset on disk. If + * such a multixid becomes oldestMulti, we won't be able to look up its + * offset. That should be rare, so we don't try to do anything smart about + * it. Just skip the truncation, and hope that by the next truncation + * attempt, oldestMulti has advanced to a valid multixid. + */ + if (newOldestOffset == 0) + { + ereport(LOG, + (errmsg("cannot truncate up to MultiXact %u because it has invalid offset, skipping truncation", + newOldestMulti))); + LWLockRelease(MultiXactTruncationLock); + return; + } + elog(DEBUG1, "performing multixact truncation: " "offsets [%u, %u), offsets segments [%" PRIx64 ", %" PRIx64 "), " "members [%u, %u), members segments [%" PRIx64 ", %" PRIx64 ")", @@ -3407,14 +3493,24 @@ multixact_redo(XLogReaderState *record) memcpy(&pageno, XLogRecGetData(record), sizeof(pageno)); - lock = SimpleLruGetBankLock(MultiXactOffsetCtl, pageno); - LWLockAcquire(lock, LW_EXCLUSIVE); + /* + * Skip the record if we already initialized the page at the previous + * XLOG_MULTIXACT_CREATE_ID record. See RecordNewMultiXact(). + */ + if (pre_initialized_offsets_page != pageno) + { + lock = SimpleLruGetBankLock(MultiXactOffsetCtl, pageno); + LWLockAcquire(lock, LW_EXCLUSIVE); - slotno = ZeroMultiXactOffsetPage(pageno, false); - SimpleLruWritePage(MultiXactOffsetCtl, slotno); - Assert(!MultiXactOffsetCtl->shared->page_dirty[slotno]); + slotno = ZeroMultiXactOffsetPage(pageno, false); + SimpleLruWritePage(MultiXactOffsetCtl, slotno); + Assert(!MultiXactOffsetCtl->shared->page_dirty[slotno]); - LWLockRelease(lock); + LWLockRelease(lock); + } + else + elog(DEBUG1, "skipping initialization of offsets page " INT64_FORMAT " because it was already initialized on multixid creation", pageno); + pre_initialized_offsets_page = -1; } else if (info == XLOG_MULTIXACT_ZERO_MEM_PAGE) { @@ -3440,6 +3536,22 @@ multixact_redo(XLogReaderState *record) TransactionId max_xid; int i; + if (pre_initialized_offsets_page != -1) + { + /* + * If we implicitly initialized the next offsets page while + * replaying an XLOG_MULTIXACT_CREATE_ID record that was generated + * with an older minor version, we still expect to see an + * XLOG_MULTIXACT_ZERO_OFF_PAGE record for it before any other + * XLOG_MULTIXACT_CREATE_ID records. Therefore this case should + * not happen. If it does, we'll continue with the replay, but + * log a message to note that something's funny. + */ + elog(LOG, "expected to see an XLOG_MULTIXACT_ZERO_OFF_PAGE record for page " INT64_FORMAT " that was implicitly initialized earlier", + pre_initialized_offsets_page); + pre_initialized_offsets_page = -1; + } + /* Store the data back into the SLRU files */ RecordNewMultiXact(xlrec->mid, xlrec->moff, xlrec->nmembers, xlrec->members); diff --git a/src/backend/access/transam/parallel.c b/src/backend/access/transam/parallel.c index 94db1ec3012..5e6d21969e1 100644 --- a/src/backend/access/transam/parallel.c +++ b/src/backend/access/transam/parallel.c @@ -507,8 +507,12 @@ InitializeParallelDSM(ParallelContext *pcxt) void ReinitializeParallelDSM(ParallelContext *pcxt) { + MemoryContext oldcontext; FixedParallelState *fps; + /* We might be running in a very short-lived memory context. */ + oldcontext = MemoryContextSwitchTo(TopTransactionContext); + /* Wait for any old workers to exit. */ if (pcxt->nworkers_launched > 0) { @@ -546,6 +550,9 @@ ReinitializeParallelDSM(ParallelContext *pcxt) pcxt->worker[i].error_mqh = shm_mq_attach(mq, pcxt->seg, NULL); } } + + /* Restore previous memory context. */ + MemoryContextSwitchTo(oldcontext); } /* diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index eff5d4c5fa2..edd58f32782 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -692,7 +692,6 @@ static XLogRecPtr CreateOverwriteContrecordRecord(XLogRecPtr aborted_lsn, static void PreCheckPointGuts(int flags); static void CheckPointGuts(XLogRecPtr checkPointRedo, int flags); static void KeepLogSeg(XLogRecPtr recptr, XLogSegNo *logSegNo); -static XLogRecPtr XLogGetReplicationSlotMinimumLSN(void); static void AdvanceXLInsertBuffer(XLogRecPtr upto, TimeLineID tli, bool opportunistic); @@ -2707,7 +2706,7 @@ XLogSetReplicationSlotMinimumLSN(XLogRecPtr lsn) * Return the oldest LSN we must retain to satisfy the needs of some * replication slot. */ -static XLogRecPtr +XLogRecPtr XLogGetReplicationSlotMinimumLSN(void) { XLogRecPtr retval; @@ -8028,6 +8027,9 @@ CreateRestartPoint(int flags) replayPtr = GetXLogReplayRecPtr(&replayTLI); endptr = (receivePtr < replayPtr) ? replayPtr : receivePtr; KeepLogSeg(endptr, &_logSegNo); + + INJECTION_POINT("restartpoint-before-slot-invalidation", NULL); + if (InvalidateObsoleteReplicationSlots(RS_INVAL_WAL_REMOVED | RS_INVAL_IDLE_TIMEOUT, _logSegNo, InvalidOid, InvalidTransactionId)) diff --git a/src/backend/access/transam/xlogrecovery.c b/src/backend/access/transam/xlogrecovery.c index fcf4ae99d2f..0a2b9dadf10 100644 --- a/src/backend/access/transam/xlogrecovery.c +++ b/src/backend/access/transam/xlogrecovery.c @@ -916,6 +916,16 @@ InitWalRecovery(ControlFileData *ControlFile, bool *wasShutdown_ptr, } memcpy(&checkPoint, XLogRecGetData(xlogreader), sizeof(CheckPoint)); wasShutdown = ((record->xl_info & ~XLR_INFO_MASK) == XLOG_CHECKPOINT_SHUTDOWN); + + /* Make sure that REDO location exists. */ + if (checkPoint.redo < CheckPointLoc) + { + XLogPrefetcherBeginRead(xlogprefetcher, checkPoint.redo); + if (!ReadRecord(xlogprefetcher, LOG, false, checkPoint.ThisTimeLineID)) + ereport(PANIC, + errmsg("could not find redo location %X/%08X referenced by checkpoint record at %X/%08X", + LSN_FORMAT_ARGS(checkPoint.redo), LSN_FORMAT_ARGS(CheckPointLoc))); + } } if (ArchiveRecoveryRequested) diff --git a/src/backend/backup/backup_manifest.c b/src/backend/backup/backup_manifest.c index 22e2be37c95..f40e775bf18 100644 --- a/src/backend/backup/backup_manifest.c +++ b/src/backend/backup/backup_manifest.c @@ -253,7 +253,7 @@ AddWALInfoToBackupManifest(backup_manifest_info *manifest, XLogRecPtr startptr, if (first_wal_range && endtli != entry->tli) ereport(ERROR, errmsg("expected end timeline %u but found timeline %u", - starttli, entry->tli)); + endtli, entry->tli)); /* * If this timeline entry matches with the timeline on which the diff --git a/src/backend/backup/basebackup_incremental.c b/src/backend/backup/basebackup_incremental.c index 28491b1e0ab..0fc4042693f 100644 --- a/src/backend/backup/basebackup_incremental.c +++ b/src/backend/backup/basebackup_incremental.c @@ -850,8 +850,22 @@ GetFileBackupMethod(IncrementalBackupInfo *ib, const char *path, { unsigned relative_limit = limit_block - segno * RELSEG_SIZE; + /* + * We can't set a truncation_block_length in excess of the limit block + * number (relativized to the current segment). To do so would be to + * treat blocks from older backups as valid current contents even if + * they were subsequently truncated away. + */ if (*truncation_block_length < relative_limit) *truncation_block_length = relative_limit; + + /* + * We also can't set a truncation_block_length in excess of the + * segment size, since the reconstructed file can't be larger than + * that. + */ + if (*truncation_block_length > RELSEG_SIZE) + *truncation_block_length = RELSEG_SIZE; } /* Send it incrementally. */ diff --git a/src/backend/backup/walsummary.c b/src/backend/backup/walsummary.c index c7a2c65cc6a..5e37ee47801 100644 --- a/src/backend/backup/walsummary.c +++ b/src/backend/backup/walsummary.c @@ -214,7 +214,7 @@ OpenWalSummaryFile(WalSummaryFile *ws, bool missing_ok) LSN_FORMAT_ARGS(ws->end_lsn)); file = PathNameOpenFile(path, O_RDONLY); - if (file < 0 && (errno != EEXIST || !missing_ok)) + if (file < 0 && (errno != ENOENT || !missing_ok)) ereport(ERROR, (errcode_for_file_access(), errmsg("could not open file \"%s\": %m", path))); @@ -251,7 +251,7 @@ RemoveWalSummaryIfOlderThan(WalSummaryFile *ws, time_t cutoff_time) if (unlink(path) != 0) ereport(ERROR, (errcode_for_file_access(), - errmsg("could not stat file \"%s\": %m", path))); + errmsg("could not remove file \"%s\": %m", path))); ereport(DEBUG2, (errmsg_internal("removing file \"%s\"", path))); } diff --git a/src/backend/catalog/aclchk.c b/src/backend/catalog/aclchk.c index 24948c1f05e..17816481760 100644 --- a/src/backend/catalog/aclchk.c +++ b/src/backend/catalog/aclchk.c @@ -1208,7 +1208,8 @@ SetDefaultACL(InternalDefaultACL *iacls) if (OidIsValid(iacls->nspid)) ereport(ERROR, (errcode(ERRCODE_INVALID_GRANT_OPERATION), - errmsg("cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS"))); + errmsg("cannot use IN SCHEMA clause when using %s", + "GRANT/REVOKE ON SCHEMAS"))); objtype = DEFACLOBJ_NAMESPACE; if (iacls->all_privs && this_privileges == ACL_NO_RIGHTS) this_privileges = ACL_ALL_RIGHTS_SCHEMA; @@ -1218,7 +1219,8 @@ SetDefaultACL(InternalDefaultACL *iacls) if (OidIsValid(iacls->nspid)) ereport(ERROR, (errcode(ERRCODE_INVALID_GRANT_OPERATION), - errmsg("cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS"))); + errmsg("cannot use IN SCHEMA clause when using %s", + "GRANT/REVOKE ON LARGE OBJECTS"))); objtype = DEFACLOBJ_LARGEOBJECT; if (iacls->all_privs && this_privileges == ACL_NO_RIGHTS) this_privileges = ACL_ALL_RIGHTS_LARGEOBJECT; diff --git a/src/backend/catalog/heap.c b/src/backend/catalog/heap.c index fd6537567ea..5b558f30c7a 100644 --- a/src/backend/catalog/heap.c +++ b/src/backend/catalog/heap.c @@ -2635,6 +2635,7 @@ AddRelationNewConstraints(Relation rel, * requested validity. */ if (AdjustNotNullInheritance(RelationGetRelid(rel), colnum, + cdef->conname, is_local, cdef->is_no_inherit, cdef->skip_validation)) continue; diff --git a/src/backend/catalog/pg_constraint.c b/src/backend/catalog/pg_constraint.c index 2d5ac1ea813..afdfac8eca6 100644 --- a/src/backend/catalog/pg_constraint.c +++ b/src/backend/catalog/pg_constraint.c @@ -731,14 +731,15 @@ extractNotNullColumn(HeapTuple constrTup) * If a constraint exists but the connoinherit flag is not what the caller * wants, throw an error about the incompatibility. If the desired * constraint is valid but the existing constraint is not valid, also - * throw an error about that (the opposite case is acceptable). + * throw an error about that (the opposite case is acceptable). If + * the proposed constraint has a different name, also throw an error. * * If everything checks out, we adjust conislocal/coninhcount and return * true. If is_local is true we flip conislocal true, or do nothing if * it's already true; otherwise we increment coninhcount by 1. */ bool -AdjustNotNullInheritance(Oid relid, AttrNumber attnum, +AdjustNotNullInheritance(Oid relid, AttrNumber attnum, const char *new_conname, bool is_local, bool is_no_inherit, bool is_notvalid) { HeapTuple tup; @@ -777,6 +778,22 @@ AdjustNotNullInheritance(Oid relid, AttrNumber attnum, errhint("You might need to validate it using %s.", "ALTER TABLE ... VALIDATE CONSTRAINT")); + /* + * If, for a new constraint that is being defined locally (i.e., not + * being passed down via inheritance), a name was specified, then + * verify that the existing constraint has the same name. Otherwise + * throw an error. Names of inherited constraints are ignored because + * they are not directly user-specified, so matching is not important. + */ + if (is_local && new_conname && + strcmp(new_conname, NameStr(conform->conname)) != 0) + ereport(ERROR, + errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE), + errmsg("cannot create not-null constraint \"%s\" on column \"%s\" of table \"%s\"", + new_conname, get_attname(relid, attnum, false), get_rel_name(relid)), + errdetail("A not-null constraint named \"%s\" already exists for this column.", + NameStr(conform->conname))); + if (!is_local) { if (pg_add_s16_overflow(conform->coninhcount, 1, diff --git a/src/backend/catalog/pg_depend.c b/src/backend/catalog/pg_depend.c index c8b11f887e2..70635d9f81a 100644 --- a/src/backend/catalog/pg_depend.c +++ b/src/backend/catalog/pg_depend.c @@ -23,12 +23,14 @@ #include "catalog/pg_constraint.h" #include "catalog/pg_depend.h" #include "catalog/pg_extension.h" +#include "catalog/pg_type.h" #include "catalog/partition.h" #include "commands/extension.h" #include "miscadmin.h" #include "utils/fmgroids.h" #include "utils/lsyscache.h" #include "utils/rel.h" +#include "utils/syscache.h" static bool isObjectPinned(const ObjectAddress *object); @@ -813,6 +815,77 @@ getAutoExtensionsOfObject(Oid classId, Oid objectId) return result; } +/* + * Look up a type belonging to an extension. + * + * Returns the type's OID, or InvalidOid if not found. + * + * Notice that the type is specified by name only, without a schema. + * That's because this will typically be used by relocatable extensions + * which can't make a-priori assumptions about which schema their objects + * are in. As long as the extension only defines one type of this name, + * the answer is unique anyway. + * + * We might later add the ability to look up functions, operators, etc. + */ +Oid +getExtensionType(Oid extensionOid, const char *typname) +{ + Oid result = InvalidOid; + Relation depRel; + ScanKeyData key[3]; + SysScanDesc scan; + HeapTuple tup; + + depRel = table_open(DependRelationId, AccessShareLock); + + ScanKeyInit(&key[0], + Anum_pg_depend_refclassid, + BTEqualStrategyNumber, F_OIDEQ, + ObjectIdGetDatum(ExtensionRelationId)); + ScanKeyInit(&key[1], + Anum_pg_depend_refobjid, + BTEqualStrategyNumber, F_OIDEQ, + ObjectIdGetDatum(extensionOid)); + ScanKeyInit(&key[2], + Anum_pg_depend_refobjsubid, + BTEqualStrategyNumber, F_INT4EQ, + Int32GetDatum(0)); + + scan = systable_beginscan(depRel, DependReferenceIndexId, true, + NULL, 3, key); + + while (HeapTupleIsValid(tup = systable_getnext(scan))) + { + Form_pg_depend depform = (Form_pg_depend) GETSTRUCT(tup); + + if (depform->classid == TypeRelationId && + depform->deptype == DEPENDENCY_EXTENSION) + { + Oid typoid = depform->objid; + HeapTuple typtup; + + typtup = SearchSysCache1(TYPEOID, ObjectIdGetDatum(typoid)); + if (!HeapTupleIsValid(typtup)) + continue; /* should we throw an error? */ + if (strcmp(NameStr(((Form_pg_type) GETSTRUCT(typtup))->typname), + typname) == 0) + { + result = typoid; + ReleaseSysCache(typtup); + break; /* no need to keep searching */ + } + ReleaseSysCache(typtup); + } + } + + systable_endscan(scan); + + table_close(depRel, AccessShareLock); + + return result; +} + /* * Detect whether a sequence is marked as "owned" by a column * diff --git a/src/backend/catalog/pg_proc.c b/src/backend/catalog/pg_proc.c index 5fdcf24d5f8..9d8c02847de 100644 --- a/src/backend/catalog/pg_proc.c +++ b/src/backend/catalog/pg_proc.c @@ -1181,7 +1181,7 @@ match_prosrc_to_literal(const char *prosrc, const char *literal, if (cursorpos > 0) newcp++; } - chlen = pg_mblen(prosrc); + chlen = pg_mblen_cstr(prosrc); if (strncmp(prosrc, literal, chlen) != 0) goto fail; prosrc += chlen; diff --git a/src/backend/commands/async.c b/src/backend/commands/async.c index 4bd37d5beb5..e1cf659485a 100644 --- a/src/backend/commands/async.c +++ b/src/backend/commands/async.c @@ -446,9 +446,8 @@ static double asyncQueueUsage(void); static void asyncQueueFillWarning(void); static void SignalBackends(void); static void asyncQueueReadAllNotifications(void); -static bool asyncQueueProcessPageEntries(volatile QueuePosition *current, +static bool asyncQueueProcessPageEntries(QueuePosition *current, QueuePosition stop, - char *page_buffer, Snapshot snapshot); static void asyncQueueAdvanceTail(void); static void ProcessIncomingNotify(bool flush); @@ -1419,6 +1418,7 @@ asyncQueueAddEntries(ListCell *nextNotify) */ qe.length = QUEUE_PAGESIZE - offset; qe.dboid = InvalidOid; + qe.xid = InvalidTransactionId; qe.data[0] = '\0'; /* empty channel */ qe.data[1] = '\0'; /* empty payload */ } @@ -1850,17 +1850,10 @@ ProcessNotifyInterrupt(bool flush) static void asyncQueueReadAllNotifications(void) { - volatile QueuePosition pos; + QueuePosition pos; QueuePosition head; Snapshot snapshot; - /* page_buffer must be adequately aligned, so use a union */ - union - { - char buf[QUEUE_PAGESIZE]; - AsyncQueueEntry align; - } page_buffer; - /* Fetch current state */ LWLockAcquire(NotifyQueueLock, LW_SHARED); /* Assert checks that we have a valid state entry */ @@ -1920,49 +1913,27 @@ asyncQueueReadAllNotifications(void) * It is possible that we fail while trying to send a message to our * frontend (for example, because of encoding conversion failure). If * that happens it is critical that we not try to send the same message - * over and over again. Therefore, we place a PG_TRY block here that will - * forcibly advance our queue position before we lose control to an error. - * (We could alternatively retake NotifyQueueLock and move the position - * before handling each individual message, but that seems like too much - * lock traffic.) + * over and over again. Therefore, we set ExitOnAnyError to upgrade any + * ERRORs to FATAL, causing the client connection to be closed on error. + * + * We used to only skip over the offending message and try to soldier on, + * but it was somewhat questionable to lose a notification and give the + * client an ERROR instead. A client application is not be prepared for + * that and can't tell that a notification was missed. It was also not + * very useful in practice because notifications are often processed while + * a connection is idle and reading a message from the client, and in that + * state, any error is upgraded to FATAL anyway. Closing the connection + * is a clear signal to the application that it might have missed + * notifications. */ - PG_TRY(); { + bool save_ExitOnAnyError = ExitOnAnyError; bool reachedStop; + ExitOnAnyError = true; + do { - int64 curpage = QUEUE_POS_PAGE(pos); - int curoffset = QUEUE_POS_OFFSET(pos); - int slotno; - int copysize; - - /* - * We copy the data from SLRU into a local buffer, so as to avoid - * holding the SLRU lock while we are examining the entries and - * possibly transmitting them to our frontend. Copy only the part - * of the page we will actually inspect. - */ - slotno = SimpleLruReadPage_ReadOnly(NotifyCtl, curpage, - InvalidTransactionId); - if (curpage == QUEUE_POS_PAGE(head)) - { - /* we only want to read as far as head */ - copysize = QUEUE_POS_OFFSET(head) - curoffset; - if (copysize < 0) - copysize = 0; /* just for safety */ - } - else - { - /* fetch all the rest of the page */ - copysize = QUEUE_PAGESIZE - curoffset; - } - memcpy(page_buffer.buf + curoffset, - NotifyCtl->shared->page_buffer[slotno] + curoffset, - copysize); - /* Release lock that we got from SimpleLruReadPage_ReadOnly() */ - LWLockRelease(SimpleLruGetBankLock(NotifyCtl, curpage)); - /* * Process messages up to the stop position, end of page, or an * uncommitted message. @@ -1978,19 +1949,16 @@ asyncQueueReadAllNotifications(void) * rewrite pages under us. Especially we don't want to hold a lock * while sending the notifications to the frontend. */ - reachedStop = asyncQueueProcessPageEntries(&pos, head, - page_buffer.buf, - snapshot); + reachedStop = asyncQueueProcessPageEntries(&pos, head, snapshot); } while (!reachedStop); - } - PG_FINALLY(); - { + /* Update shared state */ LWLockAcquire(NotifyQueueLock, LW_SHARED); QUEUE_BACKEND_POS(MyProcNumber) = pos; LWLockRelease(NotifyQueueLock); + + ExitOnAnyError = save_ExitOnAnyError; } - PG_END_TRY(); /* Done with snapshot */ UnregisterSnapshot(snapshot); @@ -2000,31 +1968,42 @@ asyncQueueReadAllNotifications(void) * Fetch notifications from the shared queue, beginning at position current, * and deliver relevant ones to my frontend. * - * The current page must have been fetched into page_buffer from shared - * memory. (We could access the page right in shared memory, but that - * would imply holding the SLRU bank lock throughout this routine.) - * - * We stop if we reach the "stop" position, or reach a notification from an - * uncommitted transaction, or reach the end of the page. - * * The function returns true once we have reached the stop position or an * uncommitted notification, and false if we have finished with the page. * In other words: once it returns true there is no need to look further. * The QueuePosition *current is advanced past all processed messages. */ static bool -asyncQueueProcessPageEntries(volatile QueuePosition *current, +asyncQueueProcessPageEntries(QueuePosition *current, QueuePosition stop, - char *page_buffer, Snapshot snapshot) { + int64 curpage = QUEUE_POS_PAGE(*current); + int slotno; + char *page_buffer; bool reachedStop = false; bool reachedEndOfPage; - AsyncQueueEntry *qe; + + /* + * We copy the entries into a local buffer to avoid holding the SLRU lock + * while we transmit them to our frontend. The local buffer must be + * adequately aligned, so use a union. + */ + union + { + char buf[QUEUE_PAGESIZE]; + AsyncQueueEntry align; + } local_buf; + char *local_buf_end = local_buf.buf; + + slotno = SimpleLruReadPage_ReadOnly(NotifyCtl, curpage, + InvalidTransactionId); + page_buffer = NotifyCtl->shared->page_buffer[slotno]; do { QueuePosition thisentry = *current; + AsyncQueueEntry *qe; if (QUEUE_POS_EQUAL(thisentry, stop)) break; @@ -2066,18 +2045,23 @@ asyncQueueProcessPageEntries(volatile QueuePosition *current, reachedStop = true; break; } - else if (TransactionIdDidCommit(qe->xid)) - { - /* qe->data is the null-terminated channel name */ - char *channel = qe->data; - if (IsListeningOn(channel)) - { - /* payload follows channel name */ - char *payload = qe->data + strlen(channel) + 1; + /* + * Quick check for the case that we're not listening on any + * channels, before calling TransactionIdDidCommit(). This makes + * that case a little faster, but more importantly, it ensures + * that if there's a bad entry in the queue for which + * TransactionIdDidCommit() fails for some reason, we can skip + * over it on the first LISTEN in a session, and not get stuck on + * it indefinitely. + */ + if (listenChannels == NIL) + continue; - NotifyMyFrontEnd(channel, payload, qe->srcPid); - } + if (TransactionIdDidCommit(qe->xid)) + { + memcpy(local_buf_end, qe, qe->length); + local_buf_end += qe->length; } else { @@ -2091,6 +2075,32 @@ asyncQueueProcessPageEntries(volatile QueuePosition *current, /* Loop back if we're not at end of page */ } while (!reachedEndOfPage); + /* Release lock that we got from SimpleLruReadPage_ReadOnly() */ + LWLockRelease(SimpleLruGetBankLock(NotifyCtl, curpage)); + + /* + * Now that we have let go of the SLRU bank lock, send the notifications + * to our backend + */ + Assert(local_buf_end - local_buf.buf <= BLCKSZ); + for (char *p = local_buf.buf; p < local_buf_end;) + { + AsyncQueueEntry *qe = (AsyncQueueEntry *) p; + + /* qe->data is the null-terminated channel name */ + char *channel = qe->data; + + if (IsListeningOn(channel)) + { + /* payload follows channel name */ + char *payload = qe->data + strlen(channel) + 1; + + NotifyMyFrontEnd(channel, payload, qe->srcPid); + } + + p += qe->length; + } + if (QUEUE_POS_EQUAL(*current, stop)) reachedStop = true; @@ -2168,6 +2178,120 @@ asyncQueueAdvanceTail(void) LWLockRelease(NotifyQueueTailLock); } +/* + * AsyncNotifyFreezeXids + * + * Prepare the async notification queue for CLOG truncation by freezing + * transaction IDs that are about to become inaccessible. + * + * This function is called by VACUUM before advancing datfrozenxid. It scans + * the notification queue and replaces XIDs that would become inaccessible + * after CLOG truncation with special markers: + * - Committed transactions are set to FrozenTransactionId + * - Aborted/crashed transactions are set to InvalidTransactionId + * + * Only XIDs < newFrozenXid are processed, as those are the ones whose CLOG + * pages will be truncated. If XID < newFrozenXid, it cannot still be running + * (or it would have held back newFrozenXid through ProcArray). + * Therefore, if TransactionIdDidCommit returns false, we know the transaction + * either aborted explicitly or crashed, and we can safely mark it invalid. + */ +void +AsyncNotifyFreezeXids(TransactionId newFrozenXid) +{ + QueuePosition pos; + QueuePosition head; + int64 curpage = -1; + int slotno = -1; + char *page_buffer = NULL; + bool page_dirty = false; + + /* + * Acquire locks in the correct order to avoid deadlocks. As per the + * locking protocol: NotifyQueueTailLock, then NotifyQueueLock, then SLRU + * bank locks. + * + * We only need SHARED mode since we're just reading the head/tail + * positions, not modifying them. + */ + LWLockAcquire(NotifyQueueTailLock, LW_SHARED); + LWLockAcquire(NotifyQueueLock, LW_SHARED); + + pos = QUEUE_TAIL; + head = QUEUE_HEAD; + + /* Release NotifyQueueLock early, we only needed to read the positions */ + LWLockRelease(NotifyQueueLock); + + /* + * Scan the queue from tail to head, freezing XIDs as needed. We hold + * NotifyQueueTailLock throughout to ensure the tail doesn't move while + * we're working. + */ + while (!QUEUE_POS_EQUAL(pos, head)) + { + AsyncQueueEntry *qe; + TransactionId xid; + int64 pageno = QUEUE_POS_PAGE(pos); + int offset = QUEUE_POS_OFFSET(pos); + + /* If we need a different page, release old lock and get new one */ + if (pageno != curpage) + { + LWLock *lock; + + /* Release previous page if any */ + if (slotno >= 0) + { + if (page_dirty) + { + NotifyCtl->shared->page_dirty[slotno] = true; + page_dirty = false; + } + LWLockRelease(SimpleLruGetBankLock(NotifyCtl, curpage)); + } + + lock = SimpleLruGetBankLock(NotifyCtl, pageno); + LWLockAcquire(lock, LW_EXCLUSIVE); + slotno = SimpleLruReadPage(NotifyCtl, pageno, true, + InvalidTransactionId); + page_buffer = NotifyCtl->shared->page_buffer[slotno]; + curpage = pageno; + } + + qe = (AsyncQueueEntry *) (page_buffer + offset); + xid = qe->xid; + + if (TransactionIdIsNormal(xid) && + TransactionIdPrecedes(xid, newFrozenXid)) + { + if (TransactionIdDidCommit(xid)) + { + qe->xid = FrozenTransactionId; + page_dirty = true; + } + else + { + qe->xid = InvalidTransactionId; + page_dirty = true; + } + } + + /* Advance to next entry */ + asyncQueueAdvance(&pos, qe->length); + } + + /* Release final page lock if we acquired one */ + if (slotno >= 0) + { + if (page_dirty) + NotifyCtl->shared->page_dirty[slotno] = true; + LWLockRelease(SimpleLruGetBankLock(NotifyCtl, curpage)); + } + + LWLockRelease(NotifyQueueTailLock); +} + /* * ProcessIncomingNotify * diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c index 54a08e4102e..94a5aee90b5 100644 --- a/src/backend/commands/cluster.c +++ b/src/backend/commands/cluster.c @@ -124,8 +124,8 @@ cluster(ParseState *pstate, ClusterStmt *stmt, bool isTopLevel) else ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("unrecognized CLUSTER option \"%s\"", - opt->defname), + errmsg("unrecognized %s option \"%s\"", + "CLUSTER", opt->defname), parser_errposition(pstate, opt->location))); } diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c index f9b7f1ee0c2..aed9296f22d 100644 --- a/src/backend/commands/dbcommands.c +++ b/src/backend/commands/dbcommands.c @@ -2364,7 +2364,8 @@ DropDatabase(ParseState *pstate, DropdbStmt *stmt) else ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("unrecognized DROP DATABASE option \"%s\"", opt->defname), + errmsg("unrecognized %s option \"%s\"", + "DROP DATABASE", opt->defname), parser_errposition(pstate, opt->location))); } diff --git a/src/backend/commands/explain_state.c b/src/backend/commands/explain_state.c index 72768d1322e..2d7b571c959 100644 --- a/src/backend/commands/explain_state.c +++ b/src/backend/commands/explain_state.c @@ -134,8 +134,8 @@ ParseExplainOptionList(ExplainState *es, List *options, ParseState *pstate) else ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), - errmsg("unrecognized value for EXPLAIN option \"%s\": \"%s\"", - opt->defname, p), + errmsg("unrecognized value for %s option \"%s\": \"%s\"", + "EXPLAIN", opt->defname, p), parser_errposition(pstate, opt->location))); } else @@ -159,15 +159,15 @@ ParseExplainOptionList(ExplainState *es, List *options, ParseState *pstate) else ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), - errmsg("unrecognized value for EXPLAIN option \"%s\": \"%s\"", - opt->defname, p), + errmsg("unrecognized value for %s option \"%s\": \"%s\"", + "EXPLAIN", opt->defname, p), parser_errposition(pstate, opt->location))); } else if (!ApplyExtensionExplainOption(es, opt, pstate)) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("unrecognized EXPLAIN option \"%s\"", - opt->defname), + errmsg("unrecognized %s option \"%s\"", + "EXPLAIN", opt->defname), parser_errposition(pstate, opt->location))); } @@ -211,7 +211,8 @@ ParseExplainOptionList(ExplainState *es, List *options, ParseState *pstate) if (es->generic && es->analyze) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), - errmsg("EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together"))); + errmsg("%s options %s and %s cannot be used together", + "EXPLAIN", "ANALYZE", "GENERIC_PLAN"))); /* if the summary was not set explicitly, set default value */ es->summary = (summary_set) ? es->summary : es->analyze; diff --git a/src/backend/commands/extension.c b/src/backend/commands/extension.c index 610bf21cb70..bc20c246e95 100644 --- a/src/backend/commands/extension.c +++ b/src/backend/commands/extension.c @@ -45,6 +45,7 @@ #include "catalog/pg_depend.h" #include "catalog/pg_extension.h" #include "catalog/pg_namespace.h" +#include "catalog/pg_proc.h" #include "catalog/pg_type.h" #include "commands/alter.h" #include "commands/comment.h" @@ -62,6 +63,7 @@ #include "utils/builtins.h" #include "utils/conffiles.h" #include "utils/fmgroids.h" +#include "utils/inval.h" #include "utils/lsyscache.h" #include "utils/memutils.h" #include "utils/rel.h" @@ -126,7 +128,26 @@ typedef struct ParseLoc stmt_len; /* length in bytes; 0 means "rest of string" */ } script_error_callback_arg; +/* + * Cache structure for get_function_sibling_type (and maybe later, + * allied lookup functions). + */ +typedef struct ExtensionSiblingCache +{ + struct ExtensionSiblingCache *next; /* list link */ + /* lookup key: requesting function's OID and type name */ + Oid reqfuncoid; + const char *typname; + bool valid; /* is entry currently valid? */ + uint32 exthash; /* cache hash of owning extension's OID */ + Oid typeoid; /* OID associated with typname */ +} ExtensionSiblingCache; + +/* Head of linked list of ExtensionSiblingCache structs */ +static ExtensionSiblingCache *ext_sibling_list = NULL; + /* Local functions */ +static void ext_sibling_callback(Datum arg, int cacheid, uint32 hashvalue); static List *find_update_path(List *evi_list, ExtensionVersionInfo *evi_start, ExtensionVersionInfo *evi_target, @@ -224,6 +245,114 @@ get_extension_schema(Oid ext_oid) return result; } +/* + * get_function_sibling_type - find a type belonging to same extension as func + * + * Returns the type's OID, or InvalidOid if not found. + * + * This is useful in extensions, which won't have fixed object OIDs. + * We work from the calling function's own OID, which it can get from its + * FunctionCallInfo parameter, and look up the owning extension and thence + * a type belonging to the same extension. + * + * Notice that the type is specified by name only, without a schema. + * That's because this will typically be used by relocatable extensions + * which can't make a-priori assumptions about which schema their objects + * are in. As long as the extension only defines one type of this name, + * the answer is unique anyway. + * + * We might later add the ability to look up functions, operators, etc. + * + * This code is simply a frontend for some pg_depend lookups. Those lookups + * are fairly expensive, so we provide a simple cache facility. We assume + * that the passed typname is actually a C constant, or at least permanently + * allocated, so that we need not copy that string. + */ +Oid +get_function_sibling_type(Oid funcoid, const char *typname) +{ + ExtensionSiblingCache *cache_entry; + Oid extoid; + Oid typeoid; + + /* + * See if we have the answer cached. Someday there may be enough callers + * to justify a hash table, but for now, a simple linked list is fine. + */ + for (cache_entry = ext_sibling_list; cache_entry != NULL; + cache_entry = cache_entry->next) + { + if (funcoid == cache_entry->reqfuncoid && + strcmp(typname, cache_entry->typname) == 0) + break; + } + if (cache_entry && cache_entry->valid) + return cache_entry->typeoid; + + /* + * Nope, so do the expensive lookups. We do not expect failures, so we do + * not cache negative results. + */ + extoid = getExtensionOfObject(ProcedureRelationId, funcoid); + if (!OidIsValid(extoid)) + return InvalidOid; + typeoid = getExtensionType(extoid, typname); + if (!OidIsValid(typeoid)) + return InvalidOid; + + /* + * Build, or revalidate, cache entry. + */ + if (cache_entry == NULL) + { + /* Register invalidation hook if this is first entry */ + if (ext_sibling_list == NULL) + CacheRegisterSyscacheCallback(EXTENSIONOID, + ext_sibling_callback, + (Datum) 0); + + /* Momentarily zero the space to ensure valid flag is false */ + cache_entry = (ExtensionSiblingCache *) + MemoryContextAllocZero(CacheMemoryContext, + sizeof(ExtensionSiblingCache)); + cache_entry->next = ext_sibling_list; + ext_sibling_list = cache_entry; + } + + cache_entry->reqfuncoid = funcoid; + cache_entry->typname = typname; + cache_entry->exthash = GetSysCacheHashValue1(EXTENSIONOID, + ObjectIdGetDatum(extoid)); + cache_entry->typeoid = typeoid; + /* Mark it valid only once it's fully populated */ + cache_entry->valid = true; + + return typeoid; +} + +/* + * ext_sibling_callback + * Syscache inval callback function for EXTENSIONOID cache + * + * It seems sufficient to invalidate ExtensionSiblingCache entries when + * the owning extension's pg_extension entry is modified or deleted. + * Neither a requesting function's OID, nor the OID of the object it's + * looking for, could change without an extension update or drop/recreate. + */ +static void +ext_sibling_callback(Datum arg, int cacheid, uint32 hashvalue) +{ + ExtensionSiblingCache *cache_entry; + + for (cache_entry = ext_sibling_list; cache_entry != NULL; + cache_entry = cache_entry->next) + { + if (hashvalue == 0 || + cache_entry->exthash == hashvalue) + cache_entry->valid = false; + } +} + /* * Utility functions to check validity of extension and version names */ diff --git a/src/backend/commands/indexcmds.c b/src/backend/commands/indexcmds.c index 6f753ab6d7a..14679ff6373 100644 --- a/src/backend/commands/indexcmds.c +++ b/src/backend/commands/indexcmds.c @@ -2440,8 +2440,8 @@ GetDefaultOpClass(Oid type_id, Oid am_id) * Finds an operator from a CompareType. This is used for temporal index * constraints (and other temporal features) to look up equality and overlaps * operators. We ask an opclass support function to translate from the - * compare type to the internal strategy numbers. If the function isn't - * defined or it gives no result, we set *strat to InvalidStrategy. + * compare type to the internal strategy numbers. Raises ERROR on search + * failure. */ void GetOperatorFromCompareType(Oid opclass, Oid rhstype, CompareType cmptype, @@ -2843,8 +2843,8 @@ ExecReindex(ParseState *pstate, const ReindexStmt *stmt, bool isTopLevel) else ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("unrecognized REINDEX option \"%s\"", - opt->defname), + errmsg("unrecognized %s option \"%s\"", + "REINDEX", opt->defname), parser_errposition(pstate, opt->location))); } diff --git a/src/backend/commands/operatorcmds.c b/src/backend/commands/operatorcmds.c index 673648f1fc6..6274edcd1a9 100644 --- a/src/backend/commands/operatorcmds.c +++ b/src/backend/commands/operatorcmds.c @@ -276,7 +276,6 @@ ValidateRestrictionEstimator(List *restrictionName) { Oid typeId[4]; Oid restrictionOid; - AclResult aclresult; typeId[0] = INTERNALOID; /* PlannerInfo */ typeId[1] = OIDOID; /* operator OID */ @@ -292,11 +291,33 @@ ValidateRestrictionEstimator(List *restrictionName) errmsg("restriction estimator function %s must return type %s", NameListToString(restrictionName), "float8"))); - /* Require EXECUTE rights for the estimator */ - aclresult = object_aclcheck(ProcedureRelationId, restrictionOid, GetUserId(), ACL_EXECUTE); - if (aclresult != ACLCHECK_OK) - aclcheck_error(aclresult, OBJECT_FUNCTION, - NameListToString(restrictionName)); + /* + * If the estimator is not a built-in function, require superuser + * privilege to install it. This protects against using something that is + * not a restriction estimator or has hard-wired assumptions about what + * data types it is working with. (Built-in estimators are required to + * defend themselves adequately against unexpected data type choices, but + * it seems impractical to expect that of extensions' estimators.) + * + * If it is built-in, only require EXECUTE rights. + */ + if (restrictionOid >= FirstGenbkiObjectId) + { + if (!superuser()) + ereport(ERROR, + (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), + errmsg("must be superuser to specify a non-built-in restriction estimator function"))); + } + else + { + AclResult aclresult; + + aclresult = object_aclcheck(ProcedureRelationId, restrictionOid, + GetUserId(), ACL_EXECUTE); + if (aclresult != ACLCHECK_OK) + aclcheck_error(aclresult, OBJECT_FUNCTION, + NameListToString(restrictionName)); + } return restrictionOid; } @@ -312,7 +333,6 @@ ValidateJoinEstimator(List *joinName) Oid typeId[5]; Oid joinOid; Oid joinOid2; - AclResult aclresult; typeId[0] = INTERNALOID; /* PlannerInfo */ typeId[1] = OIDOID; /* operator OID */ @@ -350,11 +370,24 @@ ValidateJoinEstimator(List *joinName) errmsg("join estimator function %s must return type %s", NameListToString(joinName), "float8"))); - /* Require EXECUTE rights for the estimator */ - aclresult = object_aclcheck(ProcedureRelationId, joinOid, GetUserId(), ACL_EXECUTE); - if (aclresult != ACLCHECK_OK) - aclcheck_error(aclresult, OBJECT_FUNCTION, - NameListToString(joinName)); + /* privilege checks are the same as in ValidateRestrictionEstimator */ + if (joinOid >= FirstGenbkiObjectId) + { + if (!superuser()) + ereport(ERROR, + (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), + errmsg("must be superuser to specify a non-built-in join estimator function"))); + } + else + { + AclResult aclresult; + + aclresult = object_aclcheck(ProcedureRelationId, joinOid, + GetUserId(), ACL_EXECUTE); + if (aclresult != ACLCHECK_OK) + aclcheck_error(aclresult, OBJECT_FUNCTION, + NameListToString(joinName)); + } return joinOid; } diff --git a/src/backend/commands/publicationcmds.c b/src/backend/commands/publicationcmds.c index 6dda800a89d..f7c3aefd08a 100644 --- a/src/backend/commands/publicationcmds.c +++ b/src/backend/commands/publicationcmds.c @@ -122,7 +122,12 @@ parse_publication_options(ParseState *pstate, pubactions->pubtruncate = false; *publish_given = true; - publish = defGetString(defel); + + /* + * SplitIdentifierString destructively modifies its input, so make + * a copy so we don't modify the memory of the executing statement + */ + publish = pstrdup(defGetString(defel)); if (!SplitIdentifierString(publish, ',', &publish_list)) ereport(ERROR, diff --git a/src/backend/commands/sequence.c b/src/backend/commands/sequence.c index 4e5829bd28c..50e64461d31 100644 --- a/src/backend/commands/sequence.c +++ b/src/backend/commands/sequence.c @@ -1795,7 +1795,6 @@ pg_get_sequence_data(PG_FUNCTION_ARGS) { #define PG_GET_SEQUENCE_DATA_COLS 2 Oid relid = PG_GETARG_OID(0); - SeqTable elm; Relation seqrel; Datum values[PG_GET_SEQUENCE_DATA_COLS] = {0}; bool isnull[PG_GET_SEQUENCE_DATA_COLS] = {0}; @@ -1810,13 +1809,15 @@ pg_get_sequence_data(PG_FUNCTION_ARGS) BOOLOID, -1, 0); resultTupleDesc = BlessTupleDesc(resultTupleDesc); - init_sequence(relid, &elm, &seqrel); + seqrel = try_relation_open(relid, AccessShareLock); /* - * Return all NULLs for sequences for which we lack privileges, other - * sessions' temporary sequences, and unlogged sequences on standbys. + * Return all NULLs for missing sequences, sequences for which we lack + * privileges, other sessions' temporary sequences, and unlogged sequences + * on standbys. */ - if (pg_class_aclcheck(relid, GetUserId(), ACL_SELECT) == ACLCHECK_OK && + if (seqrel && seqrel->rd_rel->relkind == RELKIND_SEQUENCE && + pg_class_aclcheck(relid, GetUserId(), ACL_SELECT) == ACLCHECK_OK && !RELATION_IS_OTHER_TEMP(seqrel) && (RelationIsPermanent(seqrel) || !RecoveryInProgress())) { @@ -1834,7 +1835,8 @@ pg_get_sequence_data(PG_FUNCTION_ARGS) else memset(isnull, true, sizeof(isnull)); - sequence_close(seqrel, NoLock); + if (seqrel) + relation_close(seqrel, AccessShareLock); resultHeapTuple = heap_form_tuple(resultTupleDesc, values, isnull); result = HeapTupleGetDatum(resultHeapTuple); diff --git a/src/backend/commands/statscmds.c b/src/backend/commands/statscmds.c index 2b89aa06788..08dad5fa155 100644 --- a/src/backend/commands/statscmds.c +++ b/src/backend/commands/statscmds.c @@ -134,7 +134,13 @@ CreateStatistics(CreateStatsStmt *stmt, bool check_rights) RelationGetRelationName(rel)), errdetail_relkind_not_supported(rel->rd_rel->relkind))); - /* You must own the relation to create stats on it */ + /* + * You must own the relation to create stats on it. + * + * NB: Concurrent changes could cause this function's lookup to find a + * different relation than a previous lookup by the caller, so we must + * perform this check even when check_rights == false. + */ if (!object_ownercheck(RelationRelationId, RelationGetRelid(rel), stxowner)) aclcheck_error(ACLCHECK_NOT_OWNER, get_relkind_objtype(rel->rd_rel->relkind), RelationGetRelationName(rel)); diff --git a/src/backend/commands/subscriptioncmds.c b/src/backend/commands/subscriptioncmds.c index cde62ea4120..0514229ba71 100644 --- a/src/backend/commands/subscriptioncmds.c +++ b/src/backend/commands/subscriptioncmds.c @@ -983,10 +983,10 @@ AlterSubscription_refresh(Subscription *sub, bool copy_data, * * It is possible that the origin is not yet created for * tablesync worker, this can happen for the states before - * SUBREL_STATE_FINISHEDCOPY. The tablesync worker or - * apply worker can also concurrently try to drop the - * origin and by this time the origin might be already - * removed. For these reasons, passing missing_ok = true. + * SUBREL_STATE_DATASYNC. The tablesync worker or apply + * worker can also concurrently try to drop the origin and + * by this time the origin might be already removed. For + * these reasons, passing missing_ok = true. */ ReplicationOriginNameForLogicalRep(sub->oid, relid, originname, sizeof(originname)); @@ -1790,7 +1790,7 @@ DropSubscription(DropSubscriptionStmt *stmt, bool isTopLevel) * * It is possible that the origin is not yet created for tablesync * worker so passing missing_ok = true. This can happen for the states - * before SUBREL_STATE_FINISHEDCOPY. + * before SUBREL_STATE_DATASYNC. */ ReplicationOriginNameForLogicalRep(subid, relid, originname, sizeof(originname)); diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c index 71014c65b49..17f1e224f91 100644 --- a/src/backend/commands/trigger.c +++ b/src/backend/commands/trigger.c @@ -3920,21 +3920,10 @@ struct AfterTriggersTableData bool after_trig_done; /* did we already queue AS triggers? */ AfterTriggerEventList after_trig_events; /* if so, saved list pointer */ - /* - * We maintain separate transition tables for UPDATE/INSERT/DELETE since - * MERGE can run all three actions in a single statement. Note that UPDATE - * needs both old and new transition tables whereas INSERT needs only new, - * and DELETE needs only old. - */ - - /* "old" transition table for UPDATE, if any */ - Tuplestorestate *old_upd_tuplestore; - /* "new" transition table for UPDATE, if any */ - Tuplestorestate *new_upd_tuplestore; - /* "old" transition table for DELETE, if any */ - Tuplestorestate *old_del_tuplestore; - /* "new" transition table for INSERT, if any */ - Tuplestorestate *new_ins_tuplestore; + /* "old" transition table for UPDATE/DELETE, if any */ + Tuplestorestate *old_tuplestore; + /* "new" transition table for INSERT/UPDATE, if any */ + Tuplestorestate *new_tuplestore; TupleTableSlot *storeslot; /* for converting to tuplestore's format */ }; @@ -3961,6 +3950,7 @@ static Tuplestorestate *GetAfterTriggersTransitionTable(int event, TupleTableSlot *newslot, TransitionCaptureState *transition_capture); static void TransitionTableAddTuple(EState *estate, + int event, TransitionCaptureState *transition_capture, ResultRelInfo *relinfo, TupleTableSlot *slot, @@ -4528,19 +4518,13 @@ AfterTriggerExecute(EState *estate, { if (LocTriggerData.tg_trigger->tgoldtable) { - if (TRIGGER_FIRED_BY_UPDATE(evtshared->ats_event)) - LocTriggerData.tg_oldtable = evtshared->ats_table->old_upd_tuplestore; - else - LocTriggerData.tg_oldtable = evtshared->ats_table->old_del_tuplestore; + LocTriggerData.tg_oldtable = evtshared->ats_table->old_tuplestore; evtshared->ats_table->closed = true; } if (LocTriggerData.tg_trigger->tgnewtable) { - if (TRIGGER_FIRED_BY_INSERT(evtshared->ats_event)) - LocTriggerData.tg_newtable = evtshared->ats_table->new_ins_tuplestore; - else - LocTriggerData.tg_newtable = evtshared->ats_table->new_upd_tuplestore; + LocTriggerData.tg_newtable = evtshared->ats_table->new_tuplestore; evtshared->ats_table->closed = true; } } @@ -4887,6 +4871,11 @@ GetAfterTriggersTableData(Oid relid, CmdType cmdType) MemoryContext oldcxt; ListCell *lc; + /* At this level, cmdType should not be, eg, CMD_MERGE */ + Assert(cmdType == CMD_INSERT || + cmdType == CMD_UPDATE || + cmdType == CMD_DELETE); + /* Caller should have ensured query_depth is OK. */ Assert(afterTriggers.query_depth >= 0 && afterTriggers.query_depth < afterTriggers.maxquerydepth); @@ -4973,7 +4962,9 @@ MakeTransitionCaptureState(TriggerDesc *trigdesc, Oid relid, CmdType cmdType) need_new_upd, need_old_del, need_new_ins; - AfterTriggersTableData *table; + AfterTriggersTableData *ins_table; + AfterTriggersTableData *upd_table; + AfterTriggersTableData *del_table; MemoryContext oldcxt; ResourceOwner saveResourceOwner; @@ -5020,10 +5011,15 @@ MakeTransitionCaptureState(TriggerDesc *trigdesc, Oid relid, CmdType cmdType) AfterTriggerEnlargeQueryState(); /* - * Find or create an AfterTriggersTableData struct to hold the + * Find or create AfterTriggersTableData struct(s) to hold the * tuplestore(s). If there's a matching struct but it's marked closed, * ignore it; we need a newer one. * + * Note: MERGE must use the same AfterTriggersTableData structs as INSERT, + * UPDATE, and DELETE, so that any MERGE'd tuples are added to the same + * tuplestores as tuples from any INSERT, UPDATE, or DELETE commands + * running in the same top-level command (e.g., in a writable CTE). + * * Note: the AfterTriggersTableData list, as well as the tuplestores, are * allocated in the current (sub)transaction's CurTransactionContext, and * the tuplestores are managed by the (sub)transaction's resource owner. @@ -5031,21 +5027,34 @@ MakeTransitionCaptureState(TriggerDesc *trigdesc, Oid relid, CmdType cmdType) * transition tables to be deferrable; they will be fired during * AfterTriggerEndQuery, after which it's okay to delete the data. */ - table = GetAfterTriggersTableData(relid, cmdType); + if (need_new_ins) + ins_table = GetAfterTriggersTableData(relid, CMD_INSERT); + else + ins_table = NULL; + + if (need_old_upd || need_new_upd) + upd_table = GetAfterTriggersTableData(relid, CMD_UPDATE); + else + upd_table = NULL; + + if (need_old_del) + del_table = GetAfterTriggersTableData(relid, CMD_DELETE); + else + del_table = NULL; /* Now create required tuplestore(s), if we don't have them already. */ oldcxt = MemoryContextSwitchTo(CurTransactionContext); saveResourceOwner = CurrentResourceOwner; CurrentResourceOwner = CurTransactionResourceOwner; - if (need_old_upd && table->old_upd_tuplestore == NULL) - table->old_upd_tuplestore = tuplestore_begin_heap(false, false, work_mem); - if (need_new_upd && table->new_upd_tuplestore == NULL) - table->new_upd_tuplestore = tuplestore_begin_heap(false, false, work_mem); - if (need_old_del && table->old_del_tuplestore == NULL) - table->old_del_tuplestore = tuplestore_begin_heap(false, false, work_mem); - if (need_new_ins && table->new_ins_tuplestore == NULL) - table->new_ins_tuplestore = tuplestore_begin_heap(false, false, work_mem); + if (need_old_upd && upd_table->old_tuplestore == NULL) + upd_table->old_tuplestore = tuplestore_begin_heap(false, false, work_mem); + if (need_new_upd && upd_table->new_tuplestore == NULL) + upd_table->new_tuplestore = tuplestore_begin_heap(false, false, work_mem); + if (need_old_del && del_table->old_tuplestore == NULL) + del_table->old_tuplestore = tuplestore_begin_heap(false, false, work_mem); + if (need_new_ins && ins_table->new_tuplestore == NULL) + ins_table->new_tuplestore = tuplestore_begin_heap(false, false, work_mem); CurrentResourceOwner = saveResourceOwner; MemoryContextSwitchTo(oldcxt); @@ -5056,7 +5065,9 @@ MakeTransitionCaptureState(TriggerDesc *trigdesc, Oid relid, CmdType cmdType) state->tcs_update_old_table = need_old_upd; state->tcs_update_new_table = need_new_upd; state->tcs_insert_new_table = need_new_ins; - state->tcs_private = table; + state->tcs_insert_private = ins_table; + state->tcs_update_private = upd_table; + state->tcs_delete_private = del_table; return state; } @@ -5234,20 +5245,12 @@ AfterTriggerFreeQuery(AfterTriggersQueryData *qs) { AfterTriggersTableData *table = (AfterTriggersTableData *) lfirst(lc); - ts = table->old_upd_tuplestore; - table->old_upd_tuplestore = NULL; - if (ts) - tuplestore_end(ts); - ts = table->new_upd_tuplestore; - table->new_upd_tuplestore = NULL; - if (ts) - tuplestore_end(ts); - ts = table->old_del_tuplestore; - table->old_del_tuplestore = NULL; + ts = table->old_tuplestore; + table->old_tuplestore = NULL; if (ts) tuplestore_end(ts); - ts = table->new_ins_tuplestore; - table->new_ins_tuplestore = NULL; + ts = table->new_tuplestore; + table->new_tuplestore = NULL; if (ts) tuplestore_end(ts); if (table->storeslot) @@ -5558,17 +5561,17 @@ GetAfterTriggersTransitionTable(int event, { Assert(TupIsNull(newslot)); if (event == TRIGGER_EVENT_DELETE && delete_old_table) - tuplestore = transition_capture->tcs_private->old_del_tuplestore; + tuplestore = transition_capture->tcs_delete_private->old_tuplestore; else if (event == TRIGGER_EVENT_UPDATE && update_old_table) - tuplestore = transition_capture->tcs_private->old_upd_tuplestore; + tuplestore = transition_capture->tcs_update_private->old_tuplestore; } else if (!TupIsNull(newslot)) { Assert(TupIsNull(oldslot)); if (event == TRIGGER_EVENT_INSERT && insert_new_table) - tuplestore = transition_capture->tcs_private->new_ins_tuplestore; + tuplestore = transition_capture->tcs_insert_private->new_tuplestore; else if (event == TRIGGER_EVENT_UPDATE && update_new_table) - tuplestore = transition_capture->tcs_private->new_upd_tuplestore; + tuplestore = transition_capture->tcs_update_private->new_tuplestore; } return tuplestore; @@ -5582,6 +5585,7 @@ GetAfterTriggersTransitionTable(int event, */ static void TransitionTableAddTuple(EState *estate, + int event, TransitionCaptureState *transition_capture, ResultRelInfo *relinfo, TupleTableSlot *slot, @@ -5600,9 +5604,26 @@ TransitionTableAddTuple(EState *estate, tuplestore_puttupleslot(tuplestore, original_insert_tuple); else if ((map = ExecGetChildToRootMap(relinfo)) != NULL) { - AfterTriggersTableData *table = transition_capture->tcs_private; + AfterTriggersTableData *table; TupleTableSlot *storeslot; + switch (event) + { + case TRIGGER_EVENT_INSERT: + table = transition_capture->tcs_insert_private; + break; + case TRIGGER_EVENT_UPDATE: + table = transition_capture->tcs_update_private; + break; + case TRIGGER_EVENT_DELETE: + table = transition_capture->tcs_delete_private; + break; + default: + elog(ERROR, "invalid after-trigger event code: %d", event); + table = NULL; /* keep compiler quiet */ + break; + } + storeslot = GetAfterTriggersStoreSlot(table, map->outdesc); execute_attr_map_slot(map->attrMap, slot, storeslot); tuplestore_puttupleslot(tuplestore, storeslot); @@ -6196,7 +6217,7 @@ AfterTriggerSaveEvent(EState *estate, ResultRelInfo *relinfo, oldslot, NULL, transition_capture); - TransitionTableAddTuple(estate, transition_capture, relinfo, + TransitionTableAddTuple(estate, event, transition_capture, relinfo, oldslot, NULL, old_tuplestore); } @@ -6212,7 +6233,7 @@ AfterTriggerSaveEvent(EState *estate, ResultRelInfo *relinfo, NULL, newslot, transition_capture); - TransitionTableAddTuple(estate, transition_capture, relinfo, + TransitionTableAddTuple(estate, event, transition_capture, relinfo, newslot, original_insert_tuple, new_tuplestore); } @@ -6515,7 +6536,24 @@ AfterTriggerSaveEvent(EState *estate, ResultRelInfo *relinfo, new_shared.ats_firing_id = 0; if ((trigger->tgoldtable || trigger->tgnewtable) && transition_capture != NULL) - new_shared.ats_table = transition_capture->tcs_private; + { + switch (event) + { + case TRIGGER_EVENT_INSERT: + new_shared.ats_table = transition_capture->tcs_insert_private; + break; + case TRIGGER_EVENT_UPDATE: + new_shared.ats_table = transition_capture->tcs_update_private; + break; + case TRIGGER_EVENT_DELETE: + new_shared.ats_table = transition_capture->tcs_delete_private; + break; + default: + /* Must be TRUNCATE, see switch above */ + new_shared.ats_table = NULL; + break; + } + } else new_shared.ats_table = NULL; new_shared.ats_modifiedcols = modifiedCols; diff --git a/src/backend/commands/vacuum.c b/src/backend/commands/vacuum.c index 02993d320da..be863db81cb 100644 --- a/src/backend/commands/vacuum.c +++ b/src/backend/commands/vacuum.c @@ -37,6 +37,7 @@ #include "catalog/namespace.h" #include "catalog/pg_database.h" #include "catalog/pg_inherits.h" +#include "commands/async.h" #include "commands/cluster.h" #include "commands/defrem.h" #include "commands/progress.h" @@ -230,7 +231,8 @@ ExecVacuum(ParseState *pstate, VacuumStmt *vacstmt, bool isTopLevel) else if (!vacstmt->is_vacuumcmd) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("unrecognized ANALYZE option \"%s\"", opt->defname), + errmsg("unrecognized %s option \"%s\"", + "ANALYZE", opt->defname), parser_errposition(pstate, opt->location))); /* Parse options available on VACUUM */ @@ -303,7 +305,8 @@ ExecVacuum(ParseState *pstate, VacuumStmt *vacstmt, bool isTopLevel) else ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("unrecognized VACUUM option \"%s\"", opt->defname), + errmsg("unrecognized %s option \"%s\"", + "VACUUM", opt->defname), parser_errposition(pstate, opt->location))); } @@ -1957,6 +1960,12 @@ vac_truncate_clog(TransactionId frozenXID, return; } + /* + * Freeze any old transaction IDs in the async notification queue before + * CLOG truncation. + */ + AsyncNotifyFreezeXids(frozenXID); + /* * Advance the oldest value for commit timestamps before truncating, so * that if a user requests a timestamp for a transaction we're truncating diff --git a/src/backend/executor/execExpr.c b/src/backend/executor/execExpr.c index f1569879b52..038a93c5cc7 100644 --- a/src/backend/executor/execExpr.c +++ b/src/backend/executor/execExpr.c @@ -2833,12 +2833,13 @@ ExecInitSubPlanExpr(SubPlan *subplan, /* * Generate steps to evaluate input arguments for the subplan. * - * We evaluate the argument expressions into ExprState's resvalue/resnull, - * and then use PARAM_SET to update the parameter. We do that, instead of - * evaluating directly into the param, to avoid depending on the pointer - * value remaining stable / being included in the generated expression. No - * danger of conflicts with other uses of resvalue/resnull as storing and - * using the value always is in subsequent steps. + * We evaluate the argument expressions into resv/resnull, and then use + * PARAM_SET to update the parameter. We do that, instead of evaluating + * directly into the param, to avoid depending on the pointer value + * remaining stable / being included in the generated expression. It's ok + * to use resv/resnull for multiple params, as each parameter evaluation + * is immediately followed by an EEOP_PARAM_SET (and thus are saved before + * they could be overwritten again). * * Any calculation we have to do can be done in the parent econtext, since * the Param values don't need to have per-query lifetime. @@ -2849,10 +2850,11 @@ ExecInitSubPlanExpr(SubPlan *subplan, int paramid = lfirst_int(l); Expr *arg = (Expr *) lfirst(pvar); - ExecInitExprRec(arg, state, - &state->resvalue, &state->resnull); + ExecInitExprRec(arg, state, resv, resnull); scratch.opcode = EEOP_PARAM_SET; + scratch.resvalue = resv; + scratch.resnull = resnull; scratch.d.param.paramid = paramid; /* paramtype's not actually used, but we might as well fill it */ scratch.d.param.paramtype = exprType((Node *) arg); diff --git a/src/backend/executor/execExprInterp.c b/src/backend/executor/execExprInterp.c index 1a37737d4a2..b0d63f59eab 100644 --- a/src/backend/executor/execExprInterp.c +++ b/src/backend/executor/execExprInterp.c @@ -3107,7 +3107,7 @@ ExecEvalParamExtern(ExprState *state, ExprEvalStep *op, ExprContext *econtext) /* * Set value of a param (currently always PARAM_EXEC) from - * state->res{value,null}. + * op->res{value,null}. */ void ExecEvalParamSet(ExprState *state, ExprEvalStep *op, ExprContext *econtext) @@ -3119,8 +3119,8 @@ ExecEvalParamSet(ExprState *state, ExprEvalStep *op, ExprContext *econtext) /* Shouldn't have a pending evaluation anymore */ Assert(prm->execPlan == NULL); - prm->value = state->resvalue; - prm->isnull = state->resnull; + prm->value = *op->resvalue; + prm->isnull = *op->resnull; } /* diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index 5470580f523..01617edc582 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -890,21 +890,25 @@ InitPlan(QueryDesc *queryDesc, int eflags) foreach(l, plannedstmt->rowMarks) { PlanRowMark *rc = (PlanRowMark *) lfirst(l); + RangeTblEntry *rte = exec_rt_fetch(rc->rti, estate); Oid relid; Relation relation; ExecRowMark *erm; + /* ignore "parent" rowmarks; they are irrelevant at runtime */ + if (rc->isParent) + continue; + /* - * Ignore "parent" rowmarks, because they are irrelevant at - * runtime. Also ignore the rowmarks belonging to child tables - * that have been pruned in ExecDoInitialPruning(). + * Also ignore rowmarks belonging to child tables that have been + * pruned in ExecDoInitialPruning(). */ - if (rc->isParent || + if (rte->rtekind == RTE_RELATION && !bms_is_member(rc->rti, estate->es_unpruned_relids)) continue; /* get relation's OID (will produce InvalidOid if subquery) */ - relid = exec_rt_fetch(rc->rti, estate)->relid; + relid = rte->relid; /* open relation, if we need to access it for this mark type */ switch (rc->markType) diff --git a/src/backend/executor/nodeHash.c b/src/backend/executor/nodeHash.c index 7e0c93247a6..2b114f12b22 100644 --- a/src/backend/executor/nodeHash.c +++ b/src/backend/executor/nodeHash.c @@ -897,7 +897,7 @@ ExecChooseHashTableSize(double ntuples, int tupwidth, bool useskew, */ while (nbatch > 1) { - /* Check that buckets wont't overflow MaxAllocSize */ + /* Check that buckets won't overflow MaxAllocSize */ if (nbuckets > (MaxAllocSize / sizeof(HashJoinTuple) / 2)) break; @@ -905,7 +905,7 @@ ExecChooseHashTableSize(double ntuples, int tupwidth, bool useskew, Assert((*num_skew_mcvs) < (INT_MAX / 2)); /* - * Check that space_allowed won't overlow SIZE_MAX. + * Check that space_allowed won't overflow SIZE_MAX. * * We don't use hash_table_bytes here, because it does not include the * skew buckets. And we want to limit the overall memory limit. diff --git a/src/backend/executor/nodeLockRows.c b/src/backend/executor/nodeLockRows.c index a8afbf93b48..5d38bd4095c 100644 --- a/src/backend/executor/nodeLockRows.c +++ b/src/backend/executor/nodeLockRows.c @@ -344,15 +344,19 @@ ExecInitLockRows(LockRows *node, EState *estate, int eflags) foreach(lc, node->rowMarks) { PlanRowMark *rc = lfirst_node(PlanRowMark, lc); + RangeTblEntry *rte = exec_rt_fetch(rc->rti, estate); ExecRowMark *erm; ExecAuxRowMark *aerm; + /* ignore "parent" rowmarks; they are irrelevant at runtime */ + if (rc->isParent) + continue; + /* - * Ignore "parent" rowmarks, because they are irrelevant at runtime. - * Also ignore the rowmarks belonging to child tables that have been + * Also ignore rowmarks belonging to child tables that have been * pruned in ExecDoInitialPruning(). */ - if (rc->isParent || + if (rte->rtekind == RTE_RELATION && !bms_is_member(rc->rti, estate->es_unpruned_relids)) continue; diff --git a/src/backend/executor/nodeModifyTable.c b/src/backend/executor/nodeModifyTable.c index 4c5647ac38a..a7670abb03b 100644 --- a/src/backend/executor/nodeModifyTable.c +++ b/src/backend/executor/nodeModifyTable.c @@ -2809,14 +2809,6 @@ ExecOnConflictUpdate(ModifyTableContext *context, (errcode(ERRCODE_T_R_SERIALIZATION_FAILURE), errmsg("could not serialize access due to concurrent update"))); - /* - * As long as we don't support an UPDATE of INSERT ON CONFLICT for - * a partitioned table we shouldn't reach to a case where tuple to - * be lock is moved to another partition due to concurrent update - * of the partition key. - */ - Assert(!ItemPointerIndicatesMovedPartitions(&tmfd.ctid)); - /* * Tell caller to try again from the very start. * @@ -2834,7 +2826,6 @@ ExecOnConflictUpdate(ModifyTableContext *context, errmsg("could not serialize access due to concurrent delete"))); /* see TM_Updated case */ - Assert(!ItemPointerIndicatesMovedPartitions(&tmfd.ctid)); ExecClearTuple(existing); return false; @@ -3467,7 +3458,28 @@ ExecMergeMatched(ModifyTableContext *context, ResultRelInfo *resultRelInfo, /* Switch lists, if necessary */ if (!*matched) + { actionStates = mergeActions[MERGE_WHEN_NOT_MATCHED_BY_SOURCE]; + + /* + * If we have both NOT MATCHED BY SOURCE + * and NOT MATCHED BY TARGET actions (a + * full join between the source and target + * relations), the single previously + * matched tuple from the outer plan node + * is treated as two not matched tuples, + * in the same way as if they had not + * matched to start with. Therefore, we + * must adjust the outer plan node's tuple + * count, if we're instrumenting the + * query, to get the correct "skipped" row + * count --- see show_modifytable_info(). + */ + if (outerPlanState(mtstate)->instrument && + mergeActions[MERGE_WHEN_NOT_MATCHED_BY_SOURCE] && + mergeActions[MERGE_WHEN_NOT_MATCHED_BY_TARGET]) + InstrUpdateTupleCount(outerPlanState(mtstate)->instrument, 1.0); + } } /* @@ -4348,8 +4360,12 @@ ExecModifyTable(PlanState *pstate) relkind == RELKIND_MATVIEW || relkind == RELKIND_PARTITIONED_TABLE) { - /* ri_RowIdAttNo refers to a ctid attribute */ - Assert(AttributeNumberIsValid(resultRelInfo->ri_RowIdAttNo)); + /* + * ri_RowIdAttNo refers to a ctid attribute. See the comment + * in ExecInitModifyTable(). + */ + Assert(AttributeNumberIsValid(resultRelInfo->ri_RowIdAttNo) || + relkind == RELKIND_PARTITIONED_TABLE); datum = ExecGetJunkAttribute(slot, resultRelInfo->ri_RowIdAttNo, &isNull); @@ -4863,7 +4879,16 @@ ExecInitModifyTable(ModifyTable *node, EState *estate, int eflags) { resultRelInfo->ri_RowIdAttNo = ExecFindJunkAttributeInTlist(subplan->targetlist, "ctid"); - if (!AttributeNumberIsValid(resultRelInfo->ri_RowIdAttNo)) + + /* + * For heap relations, a ctid junk attribute must be present. + * Partitioned tables should only appear here when all leaf + * partitions were pruned, in which case no rows can be + * produced and ctid is not needed. + */ + if (relkind == RELKIND_PARTITIONED_TABLE) + Assert(nrels == 1); + else if (!AttributeNumberIsValid(resultRelInfo->ri_RowIdAttNo)) elog(ERROR, "could not find junk ctid column"); } else if (relkind == RELKIND_FOREIGN_TABLE) @@ -5072,15 +5097,19 @@ ExecInitModifyTable(ModifyTable *node, EState *estate, int eflags) foreach(l, node->rowMarks) { PlanRowMark *rc = lfirst_node(PlanRowMark, l); + RangeTblEntry *rte = exec_rt_fetch(rc->rti, estate); ExecRowMark *erm; ExecAuxRowMark *aerm; + /* ignore "parent" rowmarks; they are irrelevant at runtime */ + if (rc->isParent) + continue; + /* - * Ignore "parent" rowmarks, because they are irrelevant at runtime. - * Also ignore the rowmarks belonging to child tables that have been + * Also ignore rowmarks belonging to child tables that have been * pruned in ExecDoInitialPruning(). */ - if (rc->isParent || + if (rte->rtekind == RTE_RELATION && !bms_is_member(rc->rti, estate->es_unpruned_relids)) continue; diff --git a/src/backend/jit/llvm/Makefile b/src/backend/jit/llvm/Makefile index 68677ba42e1..7a65290a85a 100644 --- a/src/backend/jit/llvm/Makefile +++ b/src/backend/jit/llvm/Makefile @@ -22,12 +22,6 @@ endif PGFILEDESC = "llvmjit - JIT using LLVM" NAME = llvmjit -# LLVM 14 produces deprecation warnings. We'll need to make some changes -# before the relevant functions are removed, but for now silence the warnings. -ifeq ($(GCC), yes) -LLVM_CFLAGS += -Wno-deprecated-declarations -endif - # All files in this directory use LLVM. CFLAGS += $(LLVM_CFLAGS) CXXFLAGS += $(LLVM_CXXFLAGS) diff --git a/src/backend/jit/llvm/llvmjit.c b/src/backend/jit/llvm/llvmjit.c index 46511624f01..3e76785debe 100644 --- a/src/backend/jit/llvm/llvmjit.c +++ b/src/backend/jit/llvm/llvmjit.c @@ -673,7 +673,11 @@ llvm_optimize_module(LLVMJitContext *context, LLVMModuleRef module) if (context->base.flags & PGJIT_OPT3) passes = "default"; + else if (context->base.flags & PGJIT_INLINE) + /* if doing inlining, but no expensive optimization, add inline pass */ + passes = "default,mem2reg,inline"; else + /* default includes always-inline pass */ passes = "default,mem2reg"; options = LLVMCreatePassBuilderOptions(); @@ -1193,7 +1197,8 @@ llvm_create_object_layer(void *Ctx, LLVMOrcExecutionSessionRef ES, const char *T { LLVMJITEventListenerRef l = LLVMCreatePerfJITEventListener(); - LLVMOrcRTDyldObjectLinkingLayerRegisterJITEventListener(objlayer, l); + if (l) + LLVMOrcRTDyldObjectLinkingLayerRegisterJITEventListener(objlayer, l); } #endif diff --git a/src/backend/jit/llvm/llvmjit_expr.c b/src/backend/jit/llvm/llvmjit_expr.c index 3a442c9339f..de01cd64760 100644 --- a/src/backend/jit/llvm/llvmjit_expr.c +++ b/src/backend/jit/llvm/llvmjit_expr.c @@ -698,8 +698,8 @@ llvm_compile_expr(ExprState *state) LLVMBuildStore(b, l_sbool_const(1), v_resnullp); /* create blocks for checking args, one for each */ - b_checkargnulls = - palloc(sizeof(LLVMBasicBlockRef *) * op->d.func.nargs); + b_checkargnulls = (LLVMBasicBlockRef *) + palloc(sizeof(LLVMBasicBlockRef) * op->d.func.nargs); for (int argno = 0; argno < op->d.func.nargs; argno++) b_checkargnulls[argno] = l_bb_before_v(b_nonull, "b.%d.isnull.%d", opno, diff --git a/src/backend/jit/llvm/llvmjit_wrap.cpp b/src/backend/jit/llvm/llvmjit_wrap.cpp index da850d67ab6..c31a57b8563 100644 --- a/src/backend/jit/llvm/llvmjit_wrap.cpp +++ b/src/backend/jit/llvm/llvmjit_wrap.cpp @@ -53,7 +53,14 @@ DEFINE_SIMPLE_CONVERSION_FUNCTIONS(llvm::orc::ObjectLayer, LLVMOrcObjectLayerRef LLVMOrcObjectLayerRef LLVMOrcCreateRTDyldObjectLinkingLayerWithSafeSectionMemoryManager(LLVMOrcExecutionSessionRef ES) { +#if LLVM_VERSION_MAJOR >= 21 + return wrap(new llvm::orc::RTDyldObjectLinkingLayer( + *unwrap(ES), [](const llvm::MemoryBuffer&) { + return std::make_unique(nullptr, true); + })); +#else return wrap(new llvm::orc::RTDyldObjectLinkingLayer( *unwrap(ES), [] { return std::make_unique(nullptr, true); })); +#endif } #endif diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index a20eb2c44e2..8feeed9f303 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -3752,9 +3752,33 @@ recurse_pushdown_safe(Node *setOp, Query *topquery, static void check_output_expressions(Query *subquery, pushdown_safety_info *safetyInfo) { + List *flattened_targetList = subquery->targetList; ListCell *lc; - foreach(lc, subquery->targetList) + /* + * We must be careful with grouping Vars and join alias Vars in the + * subquery's outputs, as they hide the underlying expressions. + * + * We need to expand grouping Vars to their underlying expressions (the + * grouping clauses) because the grouping expressions themselves might be + * volatile or set-returning. However, we do not need to expand join + * alias Vars, as their underlying structure does not introduce volatile + * or set-returning functions at the current level. + * + * In neither case do we need to recursively examine the Vars contained in + * these underlying expressions. Even if they reference outputs from + * lower-level subqueries (at any depth), those references are guaranteed + * not to expand to volatile or set-returning functions, because + * subqueries containing such functions in their targetlists are never + * pulled up. + */ + if (subquery->hasGroupRTE) + { + flattened_targetList = (List *) + flatten_group_exprs(NULL, subquery, (Node *) subquery->targetList); + } + + foreach(lc, flattened_targetList) { TargetEntry *tle = (TargetEntry *) lfirst(lc); diff --git a/src/backend/optimizer/path/indxpath.c b/src/backend/optimizer/path/indxpath.c index 4d891aedeca..4fe8e5164c7 100644 --- a/src/backend/optimizer/path/indxpath.c +++ b/src/backend/optimizer/path/indxpath.c @@ -196,6 +196,8 @@ static Expr *match_clause_to_ordering_op(IndexOptInfo *index, static bool ec_member_matches_indexcol(PlannerInfo *root, RelOptInfo *rel, EquivalenceClass *ec, EquivalenceMember *em, void *arg); +static bool contain_strippable_phv_walker(Node *node, void *context); +static Node *strip_phvs_in_index_operand_mutator(Node *node, void *context); /* @@ -3289,8 +3291,8 @@ match_rowcompare_to_indexcol(PlannerInfo *root, * * In this routine, we attempt to transform a list of OR-clause args into a * single SAOP expression matching the target index column. On success, - * return an IndexClause, containing the transformed expression or NULL, - * if failed. + * return an IndexClause containing the transformed expression. + * Return NULL if the transformation fails. */ static IndexClause * match_orclause_to_indexcol(PlannerInfo *root, @@ -3298,24 +3300,21 @@ match_orclause_to_indexcol(PlannerInfo *root, int indexcol, IndexOptInfo *index) { - ListCell *lc; BoolExpr *orclause = (BoolExpr *) rinfo->orclause; - Node *indexExpr = NULL; List *consts = NIL; - ScalarArrayOpExpr *saopexpr = NULL; + Node *indexExpr = NULL; Oid matchOpno = InvalidOid; - IndexClause *iclause; Oid consttype = InvalidOid; Oid arraytype = InvalidOid; Oid inputcollid = InvalidOid; bool firstTime = true; bool haveNonConst = false; Index indexRelid = index->rel->relid; + ScalarArrayOpExpr *saopexpr; + IndexClause *iclause; + ListCell *lc; - Assert(IsA(orclause, BoolExpr)); - Assert(orclause->boolop == OR_EXPR); - - /* Ignore index if it doesn't support SAOP clauses */ + /* Forget it if index doesn't support SAOP clauses */ if (!index->amsearcharray) return NULL; @@ -3328,55 +3327,32 @@ match_orclause_to_indexcol(PlannerInfo *root, */ foreach(lc, orclause->args) { - RestrictInfo *subRinfo; + RestrictInfo *subRinfo = (RestrictInfo *) lfirst(lc); OpExpr *subClause; Oid opno; Node *leftop, *rightop; Node *constExpr; - if (!IsA(lfirst(lc), RestrictInfo)) + /* If it's not a RestrictInfo (i.e. it's a sub-AND), we can't use it */ + if (!IsA(subRinfo, RestrictInfo)) break; - subRinfo = (RestrictInfo *) lfirst(lc); - - /* Only operator clauses can match */ + /* Only operator clauses can match */ if (!IsA(subRinfo->clause, OpExpr)) break; subClause = (OpExpr *) subRinfo->clause; opno = subClause->opno; - /* Only binary operators can match */ + /* Only binary operators can match */ if (list_length(subClause->args) != 2) break; - /* - * The parameters below must match between sub-rinfo and its parent as - * make_restrictinfo() fills them with the same values, and further - * modifications are also the same for the whole subtree. However, - * still make a sanity check. - */ - Assert(subRinfo->is_pushed_down == rinfo->is_pushed_down); - Assert(subRinfo->is_clone == rinfo->is_clone); - Assert(subRinfo->security_level == rinfo->security_level); - Assert(bms_equal(subRinfo->incompatible_relids, rinfo->incompatible_relids)); - Assert(bms_equal(subRinfo->outer_relids, rinfo->outer_relids)); - - /* - * Also, check that required_relids in sub-rinfo is subset of parent's - * required_relids. - */ - Assert(bms_is_subset(subRinfo->required_relids, rinfo->required_relids)); - - /* Only the operator returning a boolean suit the transformation. */ - if (get_op_rettype(opno) != BOOLOID) - break; - /* * Check for clauses of the form: (indexkey operator constant) or - * (constant operator indexkey). See match_clause_to_indexcol's notes - * about const-ness. + * (constant operator indexkey). These tests should agree with + * match_opclause_to_indexcol. */ leftop = (Node *) linitial(subClause->args); rightop = (Node *) lsecond(subClause->args); @@ -3405,22 +3381,6 @@ match_orclause_to_indexcol(PlannerInfo *root, break; } - /* - * Ignore any RelabelType node above the operands. This is needed to - * be able to apply indexscanning in binary-compatible-operator cases. - * Note: we can assume there is at most one RelabelType node; - * eval_const_expressions() will have simplified if more than one. - */ - if (IsA(constExpr, RelabelType)) - constExpr = (Node *) ((RelabelType *) constExpr)->arg; - if (IsA(indexExpr, RelabelType)) - indexExpr = (Node *) ((RelabelType *) indexExpr)->arg; - - /* Forbid transformation for composite types, records. */ - if (type_is_rowtype(exprType(constExpr)) || - type_is_rowtype(exprType(indexExpr))) - break; - /* * Save information about the operator, type, and collation for the * first matching qual. Then, check that subsequent quals match the @@ -3438,54 +3398,71 @@ match_orclause_to_indexcol(PlannerInfo *root, * the expression collation matches the index collation. Also, * there must be an array type to construct an array later. */ - if (!IndexCollMatchesExprColl(index->indexcollations[indexcol], inputcollid) || + if (!IndexCollMatchesExprColl(index->indexcollations[indexcol], + inputcollid) || !op_in_opfamily(matchOpno, index->opfamily[indexcol]) || !OidIsValid(arraytype)) break; + + /* + * Disallow if either type is RECORD, mainly because we can't be + * positive that all the RHS expressions are the same record type. + */ + if (consttype == RECORDOID || exprType(indexExpr) == RECORDOID) + break; + firstTime = false; } else { - if (opno != matchOpno || + if (matchOpno != opno || inputcollid != subClause->inputcollid || consttype != exprType(constExpr)) break; } /* - * Check if our list of constants in match_clause_to_indexcol's - * understanding of const-ness have something other than Const. + * The righthand inputs don't necessarily have to be plain Consts, but + * make_SAOP_expr needs to know if any are not. */ if (!IsA(constExpr, Const)) haveNonConst = true; + consts = lappend(consts, constExpr); } /* * Handle failed conversion from breaking out of the loop because of an - * unsupported qual. Free the consts list and return NULL to indicate the - * conversion failed. + * unsupported qual. Also check that we have an indexExpr, just in case + * the OR list was somehow empty (it shouldn't be). Return NULL to + * indicate the conversion failed. */ - if (lc != NULL) + if (lc != NULL || indexExpr == NULL) { - list_free(consts); + list_free(consts); /* might as well */ return NULL; } + /* + * Build the new SAOP node. We use the indexExpr from the last OR arm; + * since all the arms passed match_index_to_operand, it shouldn't matter + * which one we use. But using "inputcollid" twice is a bit of a cheat: + * we might end up with an array Const node that is labeled with a + * collation despite its elements being of a noncollatable type. But + * nothing is likely to complain about that, so we don't bother being more + * accurate. + */ saopexpr = make_SAOP_expr(matchOpno, indexExpr, consttype, inputcollid, inputcollid, consts, haveNonConst); + Assert(saopexpr != NULL); /* - * Finally, build an IndexClause based on the SAOP node. Use - * make_simple_restrictinfo() to get RestrictInfo with clean selectivity - * estimations, because they may differ from the estimation made for an OR - * clause. Although it is not a lossy expression, keep the original rinfo - * in iclause->rinfo as prescribed. + * Finally, build an IndexClause based on the SAOP node. It's not lossy. */ iclause = makeNode(IndexClause); iclause->rinfo = rinfo; iclause->indexquals = list_make1(make_simple_restrictinfo(root, - &saopexpr->xpr)); + (Expr *) saopexpr)); iclause->lossy = false; iclause->indexcol = indexcol; iclause->indexcols = NIL; @@ -4075,6 +4052,16 @@ check_index_predicates(PlannerInfo *root, RelOptInfo *rel) if (is_target_rel) continue; + /* + * If index is !amoptionalkey, also leave indrestrictinfo as set + * above. Otherwise we risk removing all quals for the first index + * key and then not being able to generate an indexscan at all. It + * would be better to be more selective, but we've not yet identified + * which if any of the quals match the first index key. + */ + if (!index->amoptionalkey) + continue; + /* Else compute indrestrictinfo as the non-implied quals */ index->indrestrictinfo = NIL; foreach(lcr, rel->baserestrictinfo) @@ -4430,12 +4417,23 @@ match_index_to_operand(Node *operand, int indkey; /* - * Ignore any RelabelType node above the operand. This is needed to be - * able to apply indexscanning in binary-compatible-operator cases. Note: - * we can assume there is at most one RelabelType node; - * eval_const_expressions() will have simplified if more than one. + * Ignore any PlaceHolderVar node contained in the operand. This is + * needed to be able to apply indexscanning in cases where the operand (or + * a subtree) has been wrapped in PlaceHolderVars to enforce separate + * identity or as a result of outer joins. + */ + operand = strip_phvs_in_index_operand(operand); + + /* + * Ignore any RelabelType node above the operand. This is needed to be + * able to apply indexscanning in binary-compatible-operator cases. + * + * Note: we must handle nested RelabelType nodes here. While + * eval_const_expressions() will have simplified them to at most one + * layer, our prior stripping of PlaceHolderVars may have brought separate + * RelabelTypes into adjacency. */ - if (operand && IsA(operand, RelabelType)) + while (operand && IsA(operand, RelabelType)) operand = (Node *) ((RelabelType *) operand)->arg; indkey = index->indexkeys[indexcol]; @@ -4488,6 +4486,92 @@ match_index_to_operand(Node *operand, return false; } +/* + * strip_phvs_in_index_operand + * Strip PlaceHolderVar nodes from the given operand expression to + * facilitate matching against an index's key. + * + * A PlaceHolderVar appearing in a relation-scan-level expression is + * effectively a no-op. Nevertheless, to play it safe, we strip only + * PlaceHolderVars that are not marked nullable. + * + * The removal is performed recursively because PlaceHolderVars can be nested + * or interleaved with other node types. We must peel back all layers to + * expose the base operand. + * + * As a performance optimization, we first use a lightweight walker to check + * for the presence of strippable PlaceHolderVars. The expensive mutator is + * invoked only if a candidate is found, avoiding unnecessary memory allocation + * and tree copying in the common case where no PlaceHolderVars are present. + */ +Node * +strip_phvs_in_index_operand(Node *operand) +{ + /* Don't mutate/copy if no target PHVs exist */ + if (!contain_strippable_phv_walker(operand, NULL)) + return operand; + + return strip_phvs_in_index_operand_mutator(operand, NULL); +} + +/* + * contain_strippable_phv_walker + * Detect if there are any PlaceHolderVars in the tree that are candidates + * for stripping. + * + * We identify a PlaceHolderVar as strippable only if its phnullingrels is + * empty. + */ +static bool +contain_strippable_phv_walker(Node *node, void *context) +{ + if (node == NULL) + return false; + + if (IsA(node, PlaceHolderVar)) + { + PlaceHolderVar *phv = (PlaceHolderVar *) node; + + if (bms_is_empty(phv->phnullingrels)) + return true; + } + + return expression_tree_walker(node, contain_strippable_phv_walker, + context); +} + +/* + * strip_phvs_in_index_operand_mutator + * Recursively remove PlaceHolderVars in the tree that match the criteria. + * + * We strip a PlaceHolderVar only if its phnullingrels is empty, replacing it + * with its contained expression. + */ +static Node * +strip_phvs_in_index_operand_mutator(Node *node, void *context) +{ + if (node == NULL) + return NULL; + + if (IsA(node, PlaceHolderVar)) + { + PlaceHolderVar *phv = (PlaceHolderVar *) node; + + /* If matches the criteria, strip it */ + if (bms_is_empty(phv->phnullingrels)) + { + /* Recurse on its contained expression */ + return strip_phvs_in_index_operand_mutator((Node *) phv->phexpr, + context); + } + + /* Otherwise, keep this PHV but check its contained expression */ + } + + return expression_tree_mutator(node, strip_phvs_in_index_operand_mutator, + context); +} + /* * is_pseudo_constant_for_index() * Test whether the given expression can be used as an indexscan diff --git a/src/backend/optimizer/plan/createplan.c b/src/backend/optimizer/plan/createplan.c index d721471e2af..06128a9f243 100644 --- a/src/backend/optimizer/plan/createplan.c +++ b/src/backend/optimizer/plan/createplan.c @@ -5256,7 +5256,8 @@ fix_indexqual_clause(PlannerInfo *root, IndexOptInfo *index, int indexcol, * equal to the index's attribute number (index column position). * * Most of the code here is just for sanity cross-checking that the given - * expression actually matches the index column it's claimed to. + * expression actually matches the index column it's claimed to. It should + * match the logic in match_index_to_operand(). */ static Node * fix_indexqual_operand(Node *node, IndexOptInfo *index, int indexcol) @@ -5265,14 +5266,19 @@ fix_indexqual_operand(Node *node, IndexOptInfo *index, int indexcol) int pos; ListCell *indexpr_item; + Assert(indexcol >= 0 && indexcol < index->ncolumns); + + /* + * Remove any PlaceHolderVar wrapping of the indexkey + */ + node = strip_phvs_in_index_operand(node); + /* * Remove any binary-compatible relabeling of the indexkey */ - if (IsA(node, RelabelType)) + while (IsA(node, RelabelType)) node = (Node *) ((RelabelType *) node)->arg; - Assert(indexcol >= 0 && indexcol < index->ncolumns); - if (index->indexkeys[indexcol] != 0) { /* It's a simple index column */ diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index 15aebe7dbb5..70653374307 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -1751,9 +1751,10 @@ grouping_planner(PlannerInfo *root, double tuple_fraction, sort_input_target = linitial_node(PathTarget, sort_input_targets); Assert(!linitial_int(sort_input_targets_contain_srfs)); /* likewise for grouping_target vs. scanjoin_target */ - split_pathtarget_at_srfs(root, grouping_target, scanjoin_target, - &grouping_targets, - &grouping_targets_contain_srfs); + split_pathtarget_at_srfs_grouping(root, + grouping_target, scanjoin_target, + &grouping_targets, + &grouping_targets_contain_srfs); grouping_target = linitial_node(PathTarget, grouping_targets); Assert(!linitial_int(grouping_targets_contain_srfs)); /* scanjoin_target will not have any SRFs precomputed for it */ @@ -5950,6 +5951,41 @@ optimize_window_clauses(PlannerInfo *root, WindowFuncLists *wflists) } } } + + /* + * XXX remove any duplicate WindowFuncs from each WindowClause. This has + * been done only in the back branches. Previously, the deduplication was + * done in find_window_functions(), but that caused issues with the code + * above when moving a WindowFunc to another WindowClause as any duplicate + * WindowFuncs won't receive the adjusted winref when merging + * WindowClauses. The deduplication below has been done only so that we + * maintain the same cost calculations. As it turns out, the previous + * deduplication code thought it was saving effort during execution by + * getting rid of duplicates, but that was not true as the expression + * evaluation code will evaluate each WindowFunc mentioned in the + * targetlist. + */ + foreach(lc, windowClause) + { + WindowClause *wc = lfirst_node(WindowClause, lc); + ListCell *lc2; + List *list = wflists->windowFuncs[wc->winref]; + List *newlist = NIL; + + if (list == NIL) + continue; + + foreach(lc2, list) + { + if (!list_member(newlist, lfirst(lc2))) + newlist = lappend(newlist, lfirst(lc2)); + else + wflists->numWindowFuncs--; + } + list_free(list); + + wflists->windowFuncs[wc->winref] = newlist; + } } /* diff --git a/src/backend/optimizer/util/clauses.c b/src/backend/optimizer/util/clauses.c index 593d91454ab..8e44e92057d 100644 --- a/src/backend/optimizer/util/clauses.c +++ b/src/backend/optimizer/util/clauses.c @@ -250,13 +250,10 @@ find_window_functions_walker(Node *node, WindowFuncLists *lists) if (wfunc->winref > lists->maxWinRef) elog(ERROR, "WindowFunc contains out-of-range winref %u", wfunc->winref); - /* eliminate duplicates, so that we avoid repeated computation */ - if (!list_member(lists->windowFuncs[wfunc->winref], wfunc)) - { - lists->windowFuncs[wfunc->winref] = - lappend(lists->windowFuncs[wfunc->winref], wfunc); - lists->numWindowFuncs++; - } + + lists->windowFuncs[wfunc->winref] = + lappend(lists->windowFuncs[wfunc->winref], wfunc); + lists->numWindowFuncs++; /* * We assume that the parser checked that there are no window diff --git a/src/backend/optimizer/util/tlist.c b/src/backend/optimizer/util/tlist.c index d2b4ecc5e51..8ee565a9b13 100644 --- a/src/backend/optimizer/util/tlist.c +++ b/src/backend/optimizer/util/tlist.c @@ -19,6 +19,7 @@ #include "optimizer/cost.h" #include "optimizer/optimizer.h" #include "optimizer/tlist.h" +#include "rewrite/rewriteManip.h" /* @@ -45,6 +46,8 @@ typedef struct typedef struct { + PlannerInfo *root; + bool is_grouping_target; /* true if processing grouping target */ /* This is a List of bare expressions: */ List *input_target_exprs; /* exprs available from input */ /* These are Lists of Lists of split_pathtarget_items: */ @@ -59,6 +62,12 @@ typedef struct Index current_sgref; /* current subexpr's sortgroupref, or 0 */ } split_pathtarget_context; +static void split_pathtarget_at_srfs_extended(PlannerInfo *root, + PathTarget *target, + PathTarget *input_target, + List **targets, + List **targets_contain_srfs, + bool is_grouping_target); static bool split_pathtarget_walker(Node *node, split_pathtarget_context *context); static void add_sp_item_to_pathtarget(PathTarget *target, @@ -822,6 +831,51 @@ apply_pathtarget_labeling_to_tlist(List *tlist, PathTarget *target) /* * split_pathtarget_at_srfs + * Split given PathTarget into multiple levels to position SRFs safely, + * performing exact matching against input_target. + * + * This is a wrapper for split_pathtarget_at_srfs_extended() that is used when + * both targets are on the same side of the grouping boundary (i.e., both are + * pre-grouping or both are post-grouping). In this case, no special handling + * for the grouping nulling bit is required. + * + * See split_pathtarget_at_srfs_extended() for more details. + */ +void +split_pathtarget_at_srfs(PlannerInfo *root, + PathTarget *target, PathTarget *input_target, + List **targets, List **targets_contain_srfs) +{ + split_pathtarget_at_srfs_extended(root, target, input_target, + targets, targets_contain_srfs, + false); +} + +/* + * split_pathtarget_at_srfs_grouping + * Split given PathTarget into multiple levels to position SRFs safely, + * ignoring the grouping nulling bit when matching against input_target. + * + * This variant is used when the targets cross the grouping boundary (i.e., + * target is post-grouping while input_target is pre-grouping). In this case, + * we need to ignore the grouping nulling bit when checking for expression + * availability to avoid incorrectly re-evaluating SRFs that have already been + * computed in input_target. + * + * See split_pathtarget_at_srfs_extended() for more details. + */ +void +split_pathtarget_at_srfs_grouping(PlannerInfo *root, + PathTarget *target, PathTarget *input_target, + List **targets, List **targets_contain_srfs) +{ + split_pathtarget_at_srfs_extended(root, target, input_target, + targets, targets_contain_srfs, + true); +} + +/* + * split_pathtarget_at_srfs_extended * Split given PathTarget into multiple levels to position SRFs safely * * The executor can only handle set-returning functions that appear at the @@ -860,6 +914,13 @@ apply_pathtarget_labeling_to_tlist(List *tlist, PathTarget *target) * already meant as a reference to a lower subexpression). So, don't expand * any tlist expressions that appear in input_target, if that's not NULL. * + * This check requires extra care when processing the grouping target + * (indicated by the is_grouping_target flag). In this case input_target is + * pre-grouping while target is post-grouping, so the latter may carry + * nullingrels bits from the grouping step that are absent in the former. We + * must ignore those bits to correctly recognize that the tlist expressions are + * available in input_target. + * * It's also important that we preserve any sortgroupref annotation appearing * in the given target, especially on expressions matching input_target items. * @@ -877,10 +938,11 @@ apply_pathtarget_labeling_to_tlist(List *tlist, PathTarget *target) * are only a few possible patterns for which levels contain SRFs. * But this representation decouples callers from that knowledge. */ -void -split_pathtarget_at_srfs(PlannerInfo *root, - PathTarget *target, PathTarget *input_target, - List **targets, List **targets_contain_srfs) +static void +split_pathtarget_at_srfs_extended(PlannerInfo *root, + PathTarget *target, PathTarget *input_target, + List **targets, List **targets_contain_srfs, + bool is_grouping_target) { split_pathtarget_context context; int max_depth; @@ -905,7 +967,12 @@ split_pathtarget_at_srfs(PlannerInfo *root, return; } - /* Pass any input_target exprs down to split_pathtarget_walker() */ + /* + * Pass 'root', the is_grouping_target flag, and any input_target exprs + * down to split_pathtarget_walker(). + */ + context.root = root; + context.is_grouping_target = is_grouping_target; context.input_target_exprs = input_target ? input_target->exprs : NIL; /* @@ -1076,9 +1143,27 @@ split_pathtarget_at_srfs(PlannerInfo *root, static bool split_pathtarget_walker(Node *node, split_pathtarget_context *context) { + Node *sanitized_node = node; + if (node == NULL) return false; + /* + * If we are crossing the grouping boundary (post-grouping target vs + * pre-grouping input_target), we must ignore the grouping nulling bit to + * correctly check if the subexpression is available in input_target. This + * aligns with the matching logic in set_upper_references(). + */ + if (context->is_grouping_target && + context->root->parse->hasGroupRTE && + context->root->parse->groupingSets != NIL) + { + sanitized_node = + remove_nulling_relids(node, + bms_make_singleton(context->root->group_rtindex), + NULL); + } + /* * A subexpression that matches an expression already computed in * input_target can be treated like a Var (which indeed it will be after @@ -1087,7 +1172,7 @@ split_pathtarget_walker(Node *node, split_pathtarget_context *context) * substructure. (Note in particular that this preserves the identity of * any expressions that appear as sortgrouprefs in input_target.) */ - if (list_member(context->input_target_exprs, node)) + if (list_member(context->input_target_exprs, sanitized_node)) { split_pathtarget_item *item = palloc(sizeof(split_pathtarget_item)); diff --git a/src/backend/optimizer/util/var.c b/src/backend/optimizer/util/var.c index 8065237a189..9428cf5bb9c 100644 --- a/src/backend/optimizer/util/var.c +++ b/src/backend/optimizer/util/var.c @@ -959,10 +959,14 @@ flatten_join_alias_vars_mutator(Node *node, * wrapper. * * NOTE: this is also used by ruleutils.c, to deparse one query parsetree back - * to source text. For that use-case, root will be NULL, which is why we have - * to pass the Query separately. We need the root itself only for preserving + * to source text, and by check_output_expressions() to check for unsafe + * pushdowns. For these use-cases, root will be NULL, which is why we have to + * pass the Query separately. We need the root itself only for preserving * varnullingrels. We can avoid preserving varnullingrels in the ruleutils.c's * usage because it does not make any difference to the deparsed source text. + * We can also avoid it in check_output_expressions() because that function + * uses the expanded expressions solely to check for volatile or set-returning + * functions, which is independent of the Vars' nullingrels. */ Node * flatten_group_exprs(PlannerInfo *root, Query *query, Node *node) diff --git a/src/backend/parser/parse_agg.c b/src/backend/parser/parse_agg.c index 3254c83cc6c..b8340557b34 100644 --- a/src/backend/parser/parse_agg.c +++ b/src/backend/parser/parse_agg.c @@ -38,6 +38,8 @@ typedef struct ParseState *pstate; int min_varlevel; int min_agglevel; + int min_ctelevel; + RangeTblEntry *min_cte; int sublevels_up; } check_agg_arguments_context; @@ -58,7 +60,8 @@ typedef struct static int check_agg_arguments(ParseState *pstate, List *directargs, List *args, - Expr *filter); + Expr *filter, + int agglocation); static bool check_agg_arguments_walker(Node *node, check_agg_arguments_context *context); static Node *substitute_grouped_columns(Node *node, ParseState *pstate, Query *qry, @@ -339,7 +342,8 @@ check_agglevels_and_constraints(ParseState *pstate, Node *expr) min_varlevel = check_agg_arguments(pstate, directargs, args, - filter); + filter, + location); *p_levelsup = min_varlevel; @@ -641,7 +645,8 @@ static int check_agg_arguments(ParseState *pstate, List *directargs, List *args, - Expr *filter) + Expr *filter, + int agglocation) { int agglevel; check_agg_arguments_context context; @@ -649,6 +654,8 @@ check_agg_arguments(ParseState *pstate, context.pstate = pstate; context.min_varlevel = -1; /* signifies nothing found yet */ context.min_agglevel = -1; + context.min_ctelevel = -1; + context.min_cte = NULL; context.sublevels_up = 0; (void) check_agg_arguments_walker((Node *) args, &context); @@ -686,6 +693,20 @@ check_agg_arguments(ParseState *pstate, parser_errposition(pstate, aggloc))); } + /* + * If there's a non-local CTE that's below the aggregate's semantic level, + * complain. It's not quite clear what we should do to fix up such a case + * (treating the CTE reference like a Var seems wrong), and it's also + * unclear whether there is a real-world use for such cases. + */ + if (context.min_ctelevel >= 0 && context.min_ctelevel < agglevel) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("outer-level aggregate cannot use a nested CTE"), + errdetail("CTE \"%s\" is below the aggregate's semantic level.", + context.min_cte->eref->aliasname), + parser_errposition(pstate, agglocation))); + /* * Now check for vars/aggs in the direct arguments, and throw error if * needed. Note that we allow a Var of the agg's semantic level, but not @@ -699,6 +720,7 @@ check_agg_arguments(ParseState *pstate, { context.min_varlevel = -1; context.min_agglevel = -1; + context.min_ctelevel = -1; (void) check_agg_arguments_walker((Node *) directargs, &context); if (context.min_varlevel >= 0 && context.min_varlevel < agglevel) ereport(ERROR, @@ -714,6 +736,13 @@ check_agg_arguments(ParseState *pstate, parser_errposition(pstate, locate_agg_of_level((Node *) directargs, context.min_agglevel)))); + if (context.min_ctelevel >= 0 && context.min_ctelevel < agglevel) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("outer-level aggregate cannot use a nested CTE"), + errdetail("CTE \"%s\" is below the aggregate's semantic level.", + context.min_cte->eref->aliasname), + parser_errposition(pstate, agglocation))); } return agglevel; } @@ -794,11 +823,6 @@ check_agg_arguments_walker(Node *node, if (IsA(node, RangeTblEntry)) { - /* - * CTE references act similarly to Vars of the CTE's level. Without - * this we might conclude that the Agg can be evaluated above the CTE, - * leading to trouble. - */ RangeTblEntry *rte = (RangeTblEntry *) node; if (rte->rtekind == RTE_CTE) @@ -810,9 +834,12 @@ check_agg_arguments_walker(Node *node, /* ignore local CTEs of subqueries */ if (ctelevelsup >= 0) { - if (context->min_varlevel < 0 || - context->min_varlevel > ctelevelsup) - context->min_varlevel = ctelevelsup; + if (context->min_ctelevel < 0 || + context->min_ctelevel > ctelevelsup) + { + context->min_ctelevel = ctelevelsup; + context->min_cte = rte; + } } } return false; /* allow range_table_walker to continue */ diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c index fcb900652e4..b6d30ddc298 100644 --- a/src/backend/parser/parse_expr.c +++ b/src/backend/parser/parse_expr.c @@ -1131,6 +1131,7 @@ transformAExprIn(ParseState *pstate, A_Expr *a) List *rnonvars; bool useOr; ListCell *l; + bool has_rvars = false; /* * If the operator is <>, combine with AND not OR. @@ -1159,7 +1160,10 @@ transformAExprIn(ParseState *pstate, A_Expr *a) rexprs = lappend(rexprs, rexpr); if (contain_vars_of_level(rexpr, 0)) + { rvars = lappend(rvars, rexpr); + has_rvars = true; + } else rnonvars = lappend(rnonvars, rexpr); } @@ -1224,10 +1228,15 @@ transformAExprIn(ParseState *pstate, A_Expr *a) newa->element_typeid = scalar_type; newa->elements = aexprs; newa->multidims = false; - newa->list_start = a->rexpr_list_start; - newa->list_end = a->rexpr_list_end; newa->location = -1; + /* + * If the IN expression contains Vars, disable query jumbling + * squashing. Vars cannot be safely jumbled. + */ + newa->list_start = has_rvars ? -1 : a->rexpr_list_start; + newa->list_end = has_rvars ? -1 : a->rexpr_list_end; + result = (Node *) make_scalar_array_op(pstate, a->name, useOr, @@ -4285,6 +4294,9 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) { JsonExpr *jsexpr; Node *path_spec; + Oid pathspec_type; + int pathspec_loc; + Node *coerced_path_spec; const char *func_name = NULL; JsonFormatType default_format; @@ -4500,17 +4512,21 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) jsexpr->format = func->context_item->format; path_spec = transformExprRecurse(pstate, func->pathspec); - path_spec = coerce_to_target_type(pstate, path_spec, exprType(path_spec), - JSONPATHOID, -1, - COERCION_EXPLICIT, COERCE_IMPLICIT_CAST, - exprLocation(path_spec)); - if (path_spec == NULL) + pathspec_type = exprType(path_spec); + pathspec_loc = exprLocation(path_spec); + coerced_path_spec = coerce_to_target_type(pstate, path_spec, + pathspec_type, + JSONPATHOID, -1, + COERCION_EXPLICIT, + COERCE_IMPLICIT_CAST, + pathspec_loc); + if (coerced_path_spec == NULL) ereport(ERROR, (errcode(ERRCODE_DATATYPE_MISMATCH), errmsg("JSON path expression must be of type %s, not of type %s", - "jsonpath", format_type_be(exprType(path_spec))), - parser_errposition(pstate, exprLocation(path_spec)))); - jsexpr->path_spec = path_spec; + "jsonpath", format_type_be(pathspec_type)), + parser_errposition(pstate, pathspec_loc))); + jsexpr->path_spec = coerced_path_spec; /* Transform and coerce the PASSING arguments to jsonb. */ transformJsonPassingArgs(pstate, func_name, diff --git a/src/backend/parser/parse_utilcmd.c b/src/backend/parser/parse_utilcmd.c index e96b38a59d5..1d6864f9521 100644 --- a/src/backend/parser/parse_utilcmd.c +++ b/src/backend/parser/parse_utilcmd.c @@ -4439,12 +4439,14 @@ transformPartitionRangeBounds(ParseState *pstate, List *blist, int i, j; - i = j = 0; + j = 0; foreach(lc, blist) { Node *expr = lfirst(lc); PartitionRangeDatum *prd = NULL; + i = foreach_current_index(lc); + /* * Infinite range bounds -- "minvalue" and "maxvalue" -- get passed in * as ColumnRefs. @@ -4522,7 +4524,6 @@ transformPartitionRangeBounds(ParseState *pstate, List *blist, prd = makeNode(PartitionRangeDatum); prd->kind = PARTITION_RANGE_DATUM_VALUE; prd->value = (Node *) value; - ++i; } prd->location = exprLocation(expr); diff --git a/src/backend/po/de.po b/src/backend/po/de.po index 6e156e98dbb..6826e3240bd 100644 --- a/src/backend/po/de.po +++ b/src/backend/po/de.po @@ -1,5 +1,5 @@ # German message translation file for PostgreSQL server -# Peter Eisentraut , 2001 - 2025. +# Peter Eisentraut , 2001 - 2026. # # Use these quotes: »%s« # @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-07 06:11+0000\n" -"PO-Revision-Date: 2025-11-07 08:38+0100\n" +"POT-Creation-Date: 2026-02-07 08:11+0000\n" +"PO-Revision-Date: 2026-02-07 09:53+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -88,15 +88,15 @@ msgstr "konnte Datei »%s« nicht zum Lesen öffnen: %m" #: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 #: access/transam/timeline.c:143 access/transam/timeline.c:362 -#: access/transam/twophase.c:1353 access/transam/xlog.c:3479 -#: access/transam/xlog.c:4370 access/transam/xlogrecovery.c:1247 -#: access/transam/xlogrecovery.c:1345 access/transam/xlogrecovery.c:1382 -#: access/transam/xlogrecovery.c:1449 backup/basebackup.c:2128 +#: access/transam/twophase.c:1353 access/transam/xlog.c:3478 +#: access/transam/xlog.c:4369 access/transam/xlogrecovery.c:1257 +#: access/transam/xlogrecovery.c:1355 access/transam/xlogrecovery.c:1392 +#: access/transam/xlogrecovery.c:1459 backup/basebackup.c:2128 #: backup/walsummary.c:283 commands/extension.c:3841 libpq/hba.c:769 #: replication/logical/origin.c:768 replication/logical/origin.c:804 #: replication/logical/reorderbuffer.c:5366 -#: replication/logical/snapbuild.c:1951 replication/slot.c:2505 -#: replication/slot.c:2546 replication/walsender.c:643 +#: replication/logical/snapbuild.c:1951 replication/slot.c:2546 +#: replication/slot.c:2587 replication/walsender.c:643 #: storage/file/buffile.c:470 storage/file/copydir.c:201 #: utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 #, c-format @@ -104,10 +104,10 @@ msgid "could not read file \"%s\": %m" msgstr "konnte Datei »%s« nicht lesen: %m" #: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 -#: access/transam/xlog.c:3484 access/transam/xlog.c:4375 +#: access/transam/xlog.c:3483 access/transam/xlog.c:4374 #: replication/logical/origin.c:773 replication/logical/origin.c:812 -#: replication/logical/snapbuild.c:1956 replication/slot.c:2509 -#: replication/slot.c:2550 replication/walsender.c:648 +#: replication/logical/snapbuild.c:1956 replication/slot.c:2550 +#: replication/slot.c:2591 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -118,18 +118,18 @@ msgstr "konnte Datei »%s« nicht lesen: %d von %zu gelesen" #: access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 #: access/transam/timeline.c:392 access/transam/timeline.c:438 #: access/transam/timeline.c:512 access/transam/twophase.c:1365 -#: access/transam/twophase.c:1783 access/transam/xlog.c:3325 -#: access/transam/xlog.c:3519 access/transam/xlog.c:3524 -#: access/transam/xlog.c:3660 access/transam/xlog.c:4340 -#: access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 +#: access/transam/twophase.c:1783 access/transam/xlog.c:3324 +#: access/transam/xlog.c:3518 access/transam/xlog.c:3523 +#: access/transam/xlog.c:3659 access/transam/xlog.c:4339 +#: access/transam/xlog.c:5311 commands/copyfrom.c:1929 commands/copyto.c:598 #: libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 #: replication/logical/origin.c:706 replication/logical/origin.c:845 #: replication/logical/reorderbuffer.c:5418 #: replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 -#: replication/slot.c:2391 replication/slot.c:2557 replication/walsender.c:658 +#: replication/slot.c:2432 replication/slot.c:2598 replication/walsender.c:658 #: storage/file/copydir.c:224 storage/file/copydir.c:229 -#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:825 -#: storage/file/fd.c:3815 storage/file/fd.c:3921 utils/cache/relmapper.c:841 +#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:828 +#: storage/file/fd.c:3818 storage/file/fd.c:3924 utils/cache/relmapper.c:841 #: utils/cache/relmapper.c:956 #, c-format msgid "could not close file \"%s\": %m" @@ -158,10 +158,10 @@ msgstr "" #: ../common/file_utils.c:428 ../common/file_utils.c:502 #: access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 #: access/transam/timeline.c:251 access/transam/timeline.c:348 -#: access/transam/twophase.c:1309 access/transam/xlog.c:3215 -#: access/transam/xlog.c:3395 access/transam/xlog.c:3434 -#: access/transam/xlog.c:3627 access/transam/xlog.c:4360 -#: access/transam/xlogrecovery.c:4297 access/transam/xlogrecovery.c:4398 +#: access/transam/twophase.c:1309 access/transam/xlog.c:3214 +#: access/transam/xlog.c:3394 access/transam/xlog.c:3433 +#: access/transam/xlog.c:3626 access/transam/xlog.c:4359 +#: access/transam/xlogrecovery.c:4307 access/transam/xlogrecovery.c:4408 #: access/transam/xlogutils.c:825 backup/basebackup.c:549 #: backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 #: postmaster/syslogger.c:1512 replication/logical/origin.c:758 @@ -169,10 +169,10 @@ msgstr "" #: replication/logical/reorderbuffer.c:4573 #: replication/logical/reorderbuffer.c:5346 #: replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 -#: replication/slot.c:2477 replication/walsender.c:616 +#: replication/slot.c:2518 replication/walsender.c:616 #: replication/walsender.c:3094 storage/file/copydir.c:167 -#: storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 -#: storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 +#: storage/file/copydir.c:255 storage/file/fd.c:803 storage/file/fd.c:3575 +#: storage/file/fd.c:3805 storage/file/fd.c:3895 storage/smgr/md.c:686 #: utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 #: utils/error/elog.c:2132 utils/init/miscinit.c:1586 #: utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 @@ -183,7 +183,7 @@ msgstr "konnte Datei »%s« nicht öffnen: %m" #: ../common/controldata_utils.c:246 ../common/controldata_utils.c:249 #: access/transam/twophase.c:1756 access/transam/twophase.c:1765 -#: access/transam/xlog.c:9338 access/transam/xlogfuncs.c:699 +#: access/transam/xlog.c:9340 access/transam/xlogfuncs.c:699 #: backup/basebackup_server.c:173 backup/basebackup_server.c:266 #: backup/walsummary.c:304 postmaster/postmaster.c:4105 #: postmaster/syslogger.c:1523 postmaster/syslogger.c:1536 @@ -197,12 +197,12 @@ msgstr "konnte Datei »%s« nicht schreiben: %m" #: access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 #: access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 #: access/transam/timeline.c:506 access/transam/twophase.c:1777 -#: access/transam/xlog.c:3315 access/transam/xlog.c:3513 -#: access/transam/xlog.c:4333 access/transam/xlog.c:8724 -#: access/transam/xlog.c:8768 backup/basebackup_server.c:207 +#: access/transam/xlog.c:3314 access/transam/xlog.c:3512 +#: access/transam/xlog.c:4332 access/transam/xlog.c:8726 +#: access/transam/xlog.c:8770 backup/basebackup_server.c:207 #: commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 -#: replication/slot.c:2375 replication/slot.c:2487 storage/file/fd.c:817 -#: storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 +#: replication/slot.c:2416 replication/slot.c:2528 storage/file/fd.c:820 +#: storage/file/fd.c:3916 storage/smgr/md.c:1469 storage/smgr/md.c:1529 #: storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" @@ -221,10 +221,10 @@ msgstr "konnte Datei »%s« nicht fsyncen: %m" #: libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 #: postmaster/bgworker.c:1023 postmaster/postmaster.c:3575 #: postmaster/walsummarizer.c:938 -#: replication/libpqwalreceiver/libpqwalreceiver.c:351 +#: replication/libpqwalreceiver/libpqwalreceiver.c:364 #: replication/logical/logical.c:212 replication/walsender.c:825 -#: storage/buffer/localbuf.c:745 storage/file/fd.c:909 storage/file/fd.c:1444 -#: storage/file/fd.c:1605 storage/file/fd.c:2589 storage/ipc/procarray.c:1465 +#: storage/buffer/localbuf.c:745 storage/file/fd.c:912 storage/file/fd.c:1447 +#: storage/file/fd.c:1608 storage/file/fd.c:2592 storage/ipc/procarray.c:1465 #: storage/ipc/procarray.c:2217 storage/ipc/procarray.c:2224 #: storage/ipc/procarray.c:2727 storage/ipc/procarray.c:3436 #: utils/activity/pgstat_shmem.c:535 utils/adt/pg_locale.c:517 @@ -237,7 +237,7 @@ msgstr "konnte Datei »%s« nicht fsyncen: %m" #: utils/misc/guc.c:672 utils/misc/guc.c:1060 utils/misc/guc.c:4505 #: utils/misc/tzparser.c:479 utils/mmgr/aset.c:451 utils/mmgr/bump.c:183 #: utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 utils/mmgr/dsa.c:810 -#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1159 utils/mmgr/slab.c:370 +#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1162 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "Speicher aufgebraucht" @@ -315,7 +315,7 @@ msgstr "Speicher aufgebraucht\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "kann NULL-Zeiger nicht kopieren (interner Fehler)\n" -#: ../common/file_utils.c:75 storage/file/fd.c:3578 +#: ../common/file_utils.c:75 storage/file/fd.c:3581 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "konnte Dateisystem für Datei »%s« nicht synchronisieren: %m" @@ -324,11 +324,11 @@ msgstr "konnte Dateisystem für Datei »%s« nicht synchronisieren: %m" #: ../common/file_utils.c:592 access/transam/twophase.c:1321 #: access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:235 #: backup/basebackup.c:357 backup/basebackup.c:555 backup/basebackup.c:626 -#: backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1889 -#: commands/copyto.c:979 commands/extension.c:3820 commands/tablespace.c:804 +#: backup/walsummary.c:247 commands/copyfrom.c:1889 commands/copyto.c:979 +#: commands/extension.c:3820 commands/tablespace.c:804 #: commands/tablespace.c:893 postmaster/pgarch.c:682 #: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 -#: storage/file/fd.c:1969 storage/file/fd.c:2057 storage/file/fd.c:3626 +#: storage/file/fd.c:1972 storage/file/fd.c:2060 storage/file/fd.c:3629 #: utils/adt/dbsize.c:105 utils/adt/dbsize.c:266 utils/adt/dbsize.c:355 #: utils/adt/genfile.c:437 utils/adt/genfile.c:612 utils/adt/misc.c:340 #, c-format @@ -343,22 +343,22 @@ msgstr "diese Installation unterstützt Sync-Methode »%s« nicht" #: ../common/file_utils.c:156 ../common/file_utils.c:304 #: ../common/pgfnames.c:48 ../common/rmtree.c:63 commands/tablespace.c:728 #: commands/tablespace.c:738 postmaster/postmaster.c:1496 -#: storage/file/fd.c:2994 storage/file/reinit.c:126 utils/adt/misc.c:256 +#: storage/file/fd.c:2997 storage/file/reinit.c:126 utils/adt/misc.c:256 #: utils/misc/tzparser.c:340 #, c-format msgid "could not open directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht öffnen: %m" #: ../common/file_utils.c:174 ../common/file_utils.c:338 -#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3006 +#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3009 #, c-format msgid "could not read directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht lesen: %m" #: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 #: postmaster/pgarch.c:836 postmaster/syslogger.c:1560 -#: replication/logical/snapbuild.c:1708 replication/slot.c:1023 -#: replication/slot.c:2258 replication/slot.c:2407 storage/file/fd.c:835 +#: replication/logical/snapbuild.c:1708 replication/slot.c:1027 +#: replication/slot.c:2299 replication/slot.c:2448 storage/file/fd.c:838 #: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" @@ -715,12 +715,12 @@ msgstr "konnte Statuscode des Subprozesses nicht ermitteln: Fehlercode %lu" #: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 #: access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 -#: access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 -#: postmaster/syslogger.c:1489 replication/logical/origin.c:614 -#: replication/logical/reorderbuffer.c:4841 +#: access/transam/xlogarchive.c:399 backup/walsummary.c:254 +#: postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 +#: replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 #: replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 -#: replication/slot.c:2461 storage/file/fd.c:875 storage/file/fd.c:3440 -#: storage/file/fd.c:3502 storage/file/reinit.c:261 storage/ipc/dsm.c:343 +#: replication/slot.c:2502 storage/file/fd.c:878 storage/file/fd.c:3443 +#: storage/file/fd.c:3505 storage/file/reinit.c:261 storage/ipc/dsm.c:343 #: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 #: utils/time/snapmgr.c:1609 #, c-format @@ -728,8 +728,8 @@ msgid "could not remove file \"%s\": %m" msgstr "konnte Datei »%s« nicht löschen: %m" #: ../common/rmtree.c:124 commands/tablespace.c:767 commands/tablespace.c:780 -#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3432 -#: storage/file/fd.c:3841 +#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3435 +#: storage/file/fd.c:3844 #, c-format msgid "could not remove directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht löschen: %m" @@ -841,25 +841,25 @@ msgstr "konnte Junction für »%s« nicht ermitteln: %s" msgid "could not get junction for \"%s\": %s\n" msgstr "konnte Junction für »%s« nicht ermitteln: %s\n" -#: ../port/open.c:115 +#: ../port/open.c:125 #, c-format msgid "could not open file \"%s\": %s" msgstr "konnte Datei »%s« nicht öffnen: %s" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "lock violation" msgstr "Sperrverletzung" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "sharing violation" msgstr "Zugriffsverletzung (Sharing Violation)" -#: ../port/open.c:117 +#: ../port/open.c:127 #, c-format msgid "Continuing to retry for 30 seconds." msgstr "Versuche werden für 30 Sekunden wiederholt." -#: ../port/open.c:118 +#: ../port/open.c:128 #, c-format msgid "You might have antivirus, backup, or similar software interfering with the database system." msgstr "Möglicherweise stört eine Antivirus-, Datensicherungs- oder ähnliche Software das Datenbanksystem." @@ -1194,7 +1194,7 @@ msgstr "konnte Tupel mit Index »%s« nicht erneut finden" #: access/gin/gininsert.c:1310 access/gin/ginutil.c:152 #: executor/execExpr.c:2244 utils/adt/array_userfuncs.c:1963 #: utils/adt/arrayfuncs.c:4028 utils/adt/arrayfuncs.c:6726 -#: utils/adt/rowtypes.c:974 +#: utils/adt/rowtypes.c:974 utils/sort/tuplesortvariants.c:646 #, c-format msgid "could not identify a comparison function for type %s" msgstr "konnte keine Vergleichsfunktion für Typ %s ermitteln" @@ -1295,7 +1295,7 @@ msgstr "konnte die für das Zeichenketten-Hashing zu verwendende Sortierfolge ni #: utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 #: utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 #: utils/adt/like_support.c:1020 utils/adt/varchar.c:738 -#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1592 +#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1603 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "Verwenden Sie die COLLATE-Klausel, um die Sortierfolge explizit zu setzen." @@ -1346,38 +1346,38 @@ msgstr "in Operatorfamilie »%s« für Zugriffsmethode %s fehlt Support-Funktion msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)" msgstr "in Operatorfamilie »%s« für Zugriffsmethode %s fehlen typübergreifende Operatoren" -#: access/heap/heapam.c:2280 +#: access/heap/heapam.c:2283 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "in einem parallelen Arbeitsprozess können keine Tupel eingefügt werden" -#: access/heap/heapam.c:2803 +#: access/heap/heapam.c:2806 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "während einer parallelen Operation können keine Tupel gelöscht werden" -#: access/heap/heapam.c:2850 +#: access/heap/heapam.c:2853 #, c-format msgid "attempted to delete invisible tuple" msgstr "Versuch ein unsichtbares Tupel zu löschen" -#: access/heap/heapam.c:3300 access/index/genam.c:829 +#: access/heap/heapam.c:3303 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "während einer parallelen Operation können keine Tupel aktualisiert werden" -#: access/heap/heapam.c:3477 +#: access/heap/heapam.c:3480 #, c-format msgid "attempted to update invisible tuple" msgstr "Versuch ein unsichtbares Tupel zu aktualisieren" -#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 -#: access/heap/heapam.c:5291 access/heap/heapam_handler.c:470 +#: access/heap/heapam.c:4993 access/heap/heapam.c:5031 +#: access/heap/heapam.c:5298 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "konnte Sperre für Zeile in Relation »%s« nicht setzen" -#: access/heap/heapam.c:6405 commands/trigger.c:3401 +#: access/heap/heapam.c:6425 commands/trigger.c:3401 #: executor/nodeModifyTable.c:2568 executor/nodeModifyTable.c:2658 #, c-format msgid "tuple to be updated was already modified by an operation triggered by the current command" @@ -1400,13 +1400,13 @@ msgstr "konnte nicht in Datei »%s« schreiben, %d von %d geschrieben: %m" #: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 #: access/transam/timeline.c:329 access/transam/timeline.c:481 -#: access/transam/xlog.c:3240 access/transam/xlog.c:3448 -#: access/transam/xlog.c:4312 access/transam/xlog.c:9327 +#: access/transam/xlog.c:3239 access/transam/xlog.c:3447 +#: access/transam/xlog.c:4311 access/transam/xlog.c:9329 #: access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 #: backup/basebackup_server.c:242 commands/dbcommands.c:495 #: postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 #: postmaster/walsummarizer.c:1215 replication/logical/origin.c:626 -#: replication/slot.c:2319 storage/file/copydir.c:173 +#: replication/slot.c:2360 storage/file/copydir.c:173 #: storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 #, c-format msgid "could not create file \"%s\": %m" @@ -1419,12 +1419,12 @@ msgstr "konnte Datei »%s« nicht auf %u kürzen: %m" #: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 #: access/transam/timeline.c:424 access/transam/timeline.c:498 -#: access/transam/xlog.c:3301 access/transam/xlog.c:3504 -#: access/transam/xlog.c:4324 commands/dbcommands.c:507 +#: access/transam/xlog.c:3300 access/transam/xlog.c:3503 +#: access/transam/xlog.c:4323 commands/dbcommands.c:507 #: postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 #: replication/logical/origin.c:638 replication/logical/origin.c:680 #: replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 -#: replication/slot.c:2355 storage/file/buffile.c:545 +#: replication/slot.c:2396 storage/file/buffile.c:545 #: storage/file/copydir.c:213 utils/init/miscinit.c:1661 #: utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 #: utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 @@ -1791,7 +1791,7 @@ msgstr "tid (%u, %u) ist nicht gültig für Relation »%s«" msgid "\"%s\" cannot be empty." msgstr "»%s« kann nicht leer sein." -#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4902 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4912 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "»%s« ist zu lang (maximal %d Zeichen)." @@ -1831,13 +1831,13 @@ msgstr "Stellen Sie sicher, dass der Konfigurationsparameter »%s« auf dem Prim msgid "Make sure the configuration parameter \"%s\" is set." msgstr "Stellen Sie sicher, dass der Konfigurationsparameter »%s« gesetzt ist." -#: access/transam/multixact.c:1098 +#: access/transam/multixact.c:1179 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database \"%s\"" msgstr "Datenbank nimmt keine Befehle an, die neue MultiXactIds zuweisen, um Datenverlust wegen Transaktionsnummernüberlauf in Datenbank »%s« zu vermeiden" -#: access/transam/multixact.c:1100 access/transam/multixact.c:1107 -#: access/transam/multixact.c:1131 access/transam/multixact.c:1140 +#: access/transam/multixact.c:1181 access/transam/multixact.c:1188 +#: access/transam/multixact.c:1212 access/transam/multixact.c:1221 #: access/transam/varsup.c:158 access/transam/varsup.c:165 #, c-format msgid "" @@ -1847,65 +1847,70 @@ msgstr "" "Führen Sie ein datenbankweites VACUUM in dieser Datenbank aus.\n" "Eventuell müssen Sie auch alte vorbereitete Transaktionen committen oder zurückrollen oder unbenutzte Replikations-Slots löschen." -#: access/transam/multixact.c:1105 +#: access/transam/multixact.c:1186 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database with OID %u" msgstr "Datenbank nimmt keine Befehle an, die neue MultiXactIds zuweisen, um Datenverlust wegen Transaktionsnummernüberlauf in Datenbank mit OID %u zu vermeiden" -#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1207 access/transam/multixact.c:2552 #, 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" msgstr[0] "Datenbank »%s« muss gevacuumt werden, bevor %u weitere MultiXactId aufgebraucht ist" msgstr[1] "Datenbank »%s« muss gevacuumt werden, bevor %u weitere MultiXactIds aufgebraucht sind" -#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 +#: access/transam/multixact.c:1216 access/transam/multixact.c:2561 #, 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" msgstr[0] "Datenbank mit OID %u muss gevacuumt werden, bevor %u weitere MultiXactId aufgebraucht ist" msgstr[1] "Datenbank mit OID %u muss gevacuumt werden, bevor %u weitere MultiXactIds aufgebraucht sind" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1280 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "Grenzwert für Multixact-»Members« überschritten" -#: access/transam/multixact.c:1197 +#: access/transam/multixact.c:1281 #, 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] "Dieser Befehl würde eine Multixact mit %u Mitgliedern erzeugen, aber es ist nur genug Platz für %u Mitglied." msgstr[1] "Dieser Befehl würde eine Multixact mit %u Mitgliedern erzeugen, aber es ist nur genug Platz für %u Mitglieder." -#: access/transam/multixact.c:1202 +#: access/transam/multixact.c:1286 #, 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 "Führen Sie ein datenbankweites VACUUM in der Datenbank mit OID %u aus, mit reduzierten Einstellungen für »vacuum_multixact_freeze_min_age« und »vacuum_multixact_freeze_table_age«." -#: access/transam/multixact.c:1233 +#: access/transam/multixact.c:1317 #, 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" msgstr[0] "Datenbank mit OID %u muss gevacuumt werden, bevor %d weiteres Multixact-Mitglied aufgebraucht ist" msgstr[1] "Datenbank mit OID %u muss gevacuumt werden, bevor %d weitere Multixact-Mitglieder aufgebraucht sind" -#: access/transam/multixact.c:1238 +#: access/transam/multixact.c:1322 #, 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 "Führen Sie ein datenbankweites VACUUM in dieser Datenbank aus, mit reduzierten Einstellungen für »vacuum_multixact_freeze_min_age« und »vacuum_multixact_freeze_table_age«." -#: access/transam/multixact.c:1378 +#: access/transam/multixact.c:1461 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u existiert nicht mehr -- anscheinender Überlauf" -#: access/transam/multixact.c:1384 +#: access/transam/multixact.c:1467 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "MultiXactId %u wurde noch nicht erzeugt -- anscheinender Überlauf" -#: access/transam/multixact.c:2488 access/transam/multixact.c:2497 +#: access/transam/multixact.c:1560 +#, c-format +msgid "MultiXact %u has invalid next offset" +msgstr "MultiXact %u hat ungültiges nächstes Offset" + +#: access/transam/multixact.c:2557 access/transam/multixact.c:2566 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1914,61 +1919,66 @@ msgstr "" "Um Scheitern von MultiXactId-Zuweisungen zu vermeiden, führen Sie ein komplettes VACUUM über diese Datenbank aus.\n" "Eventuell müssen Sie auch alte vorbereitete Transaktionen committen oder zurückrollen oder unbenutzte Replikations-Slots löschen." -#: access/transam/multixact.c:2776 +#: access/transam/multixact.c:2845 #, c-format msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk" msgstr "MultiXact-Member-Wraparound-Schutz ist deaktiviert, weil die älteste gecheckpointete MultiXact %u nicht auf der Festplatte existiert" -#: access/transam/multixact.c:2798 +#: access/transam/multixact.c:2867 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "MultiXact-Member-Wraparound-Schutz ist jetzt aktiviert" -#: access/transam/multixact.c:3189 +#: access/transam/multixact.c:3258 #, c-format msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" msgstr "älteste MultiXact %u nicht gefunden, älteste ist MultiXact %u, Truncate wird ausgelassen" -#: access/transam/multixact.c:3207 +#: access/transam/multixact.c:3276 #, c-format msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation" msgstr "kann nicht bis MultiXact %u trunkieren, weil sie nicht auf der Festplatte existiert, Trunkierung wird ausgelassen" -#: access/transam/multixact.c:3526 +#: access/transam/multixact.c:3293 +#, c-format +msgid "cannot truncate up to MultiXact %u because it has invalid offset, skipping truncation" +msgstr "kann nicht bis MultiXact %u trunkieren, weil es ein ungültiges Offset hat, Trunkierung wird ausgelassen" + +#: access/transam/multixact.c:3638 #, c-format msgid "invalid MultiXactId: %u" msgstr "ungültige MultiXactId: %u" -#: access/transam/parallel.c:752 access/transam/parallel.c:871 +#: access/transam/parallel.c:759 access/transam/parallel.c:878 #, c-format msgid "parallel worker failed to initialize" msgstr "Initialisierung von parallelem Arbeitsprozess fehlgeschlagen" -#: access/transam/parallel.c:753 access/transam/parallel.c:872 +#: access/transam/parallel.c:760 access/transam/parallel.c:879 #, c-format msgid "More details may be available in the server log." msgstr "Weitere Einzelheiten sind möglicherweise im Serverlog zu finden." -#: access/transam/parallel.c:933 +#: access/transam/parallel.c:940 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "Postmaster beendete während einer parallelen Transaktion" -#: access/transam/parallel.c:1120 +#: access/transam/parallel.c:1127 #, c-format msgid "lost connection to parallel worker" msgstr "Verbindung mit parallelem Arbeitsprozess verloren" -#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 +#: access/transam/parallel.c:1183 access/transam/parallel.c:1185 msgid "parallel worker" msgstr "paralleler Arbeitsprozess" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:897 +#: access/transam/parallel.c:1355 replication/logical/applyparallelworker.c:897 #, c-format msgid "could not map dynamic shared memory segment" msgstr "konnte dynamisches Shared-Memory-Segment nicht mappen" -#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:903 +#: access/transam/parallel.c:1360 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "ungültige magische Zahl in dynamischem Shared-Memory-Segment" @@ -2308,7 +2318,7 @@ msgstr "konnte Zweiphasen-Statusdatei für Transaktion %u nicht wiederherstellen msgid "Two-phase state file has been found in WAL record %X/%X, but this transaction has already been restored from disk." msgstr "Zweiphasen-Statusdatei wurde in WAL-Eintrag %X/%X gefunden, aber diese Transaktion wurde schon von der Festplatte wiederhergestellt." -#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:214 +#: access/transam/twophase.c:2523 storage/file/fd.c:514 utils/fmgr/dfmgr.c:214 #, c-format msgid "could not access file \"%s\": %m" msgstr "konnte nicht auf Datei »%s« zugreifen: %m" @@ -2466,132 +2476,132 @@ msgstr "während einer parallelen Operation kann nicht auf einen Sicherungspunkt msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "kann nicht mehr als 2^32-1 Subtransaktionen in einer Transaktion haben" -#: access/transam/xlog.c:1545 +#: access/transam/xlog.c:1544 #, c-format msgid "request to flush past end of generated WAL; request %X/%X, current position %X/%X" msgstr "Flush hinter das Ende des erzeugten WAL angefordert; Anforderung %X/%X, aktuelle Position %X/%X" -#: access/transam/xlog.c:1772 +#: access/transam/xlog.c:1771 #, c-format msgid "cannot read past end of generated WAL: requested %X/%X, current position %X/%X" msgstr "kann nicht hinter das Ende des erzeugten WAL lesen: Anforderung %X/%X, aktuelle Position %X/%X" -#: access/transam/xlog.c:2219 access/transam/xlog.c:4548 +#: access/transam/xlog.c:2218 access/transam/xlog.c:4547 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "Die WAL-Segmentgröße muss eine Zweierpotenz zwischen 1 MB und 1 GB sein." -#: access/transam/xlog.c:2455 +#: access/transam/xlog.c:2454 #, c-format msgid "could not write to log file \"%s\" at offset %u, length %zu: %m" msgstr "konnte nicht in Logdatei »%s« bei Position %u, Länge %zu schreiben: %m" -#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 +#: access/transam/xlog.c:3740 access/transam/xlogutils.c:820 #: replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "das angeforderte WAL-Segment %s wurde schon entfernt" -#: access/transam/xlog.c:4063 +#: access/transam/xlog.c:4062 #, c-format msgid "could not rename file \"%s\": %m" msgstr "konnte Datei »%s« nicht umbenennen: %m" -#: access/transam/xlog.c:4106 access/transam/xlog.c:4117 -#: access/transam/xlog.c:4138 +#: access/transam/xlog.c:4105 access/transam/xlog.c:4116 +#: access/transam/xlog.c:4137 #, c-format msgid "required WAL directory \"%s\" does not exist" msgstr "benötigtes WAL-Verzeichnis »%s« existiert nicht" -#: access/transam/xlog.c:4123 access/transam/xlog.c:4144 +#: access/transam/xlog.c:4122 access/transam/xlog.c:4143 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "erzeuge fehlendes WAL-Verzeichnis »%s«" -#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 -#: commands/dbcommands.c:3301 +#: access/transam/xlog.c:4126 access/transam/xlog.c:4146 +#: commands/dbcommands.c:3302 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "konnte fehlendes Verzeichnis »%s« nicht erzeugen: %m" -#: access/transam/xlog.c:4214 +#: access/transam/xlog.c:4213 #, c-format msgid "could not generate secret authorization token" msgstr "konnte geheimes Autorisierungstoken nicht erzeugen" -#: access/transam/xlog.c:4392 access/transam/xlog.c:4402 -#: access/transam/xlog.c:4428 access/transam/xlog.c:4438 -#: access/transam/xlog.c:4448 access/transam/xlog.c:4454 -#: access/transam/xlog.c:4464 access/transam/xlog.c:4474 -#: access/transam/xlog.c:4484 access/transam/xlog.c:4494 -#: access/transam/xlog.c:4504 access/transam/xlog.c:4514 -#: access/transam/xlog.c:4526 access/transam/xlog.c:4534 +#: access/transam/xlog.c:4391 access/transam/xlog.c:4401 +#: access/transam/xlog.c:4427 access/transam/xlog.c:4437 +#: access/transam/xlog.c:4447 access/transam/xlog.c:4453 +#: access/transam/xlog.c:4463 access/transam/xlog.c:4473 +#: access/transam/xlog.c:4483 access/transam/xlog.c:4493 +#: access/transam/xlog.c:4503 access/transam/xlog.c:4513 +#: access/transam/xlog.c:4525 access/transam/xlog.c:4533 #: utils/init/miscinit.c:1818 #, c-format msgid "database files are incompatible with server" msgstr "Datenbankdateien sind inkompatibel mit Server" -#: access/transam/xlog.c:4393 +#: access/transam/xlog.c:4392 #, 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 "Der Datenbank-Cluster wurde mit PG_CONTROL_VERSION %d (0x%08x) initialisiert, aber der Server wurde mit PG_CONTROL_VERSION %d (0x%08x) kompiliert." -#: access/transam/xlog.c:4397 +#: access/transam/xlog.c:4396 #, c-format msgid "This could be a problem of mismatched byte ordering. It looks like you need to initdb." msgstr "Das Problem könnte eine falsche Byte-Reihenfolge sein. Es sieht so aus, dass Sie initdb ausführen müssen." -#: access/transam/xlog.c:4403 +#: access/transam/xlog.c:4402 #, c-format msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d." msgstr "Der Datenbank-Cluster wurde mit PG_CONTROL_VERSION %d initialisiert, aber der Server wurde mit PG_CONTROL_VERSION %d kompiliert." -#: access/transam/xlog.c:4406 access/transam/xlog.c:4434 -#: access/transam/xlog.c:4444 access/transam/xlog.c:4450 +#: access/transam/xlog.c:4405 access/transam/xlog.c:4433 +#: access/transam/xlog.c:4443 access/transam/xlog.c:4449 #, c-format msgid "It looks like you need to initdb." msgstr "Es sieht so aus, dass Sie initdb ausführen müssen." -#: access/transam/xlog.c:4418 +#: access/transam/xlog.c:4417 #, c-format msgid "incorrect checksum in control file" msgstr "falsche Prüfsumme in Kontrolldatei" #. translator: %s is a variable name and %d is its value -#: access/transam/xlog.c:4430 access/transam/xlog.c:4440 -#: access/transam/xlog.c:4456 access/transam/xlog.c:4466 -#: access/transam/xlog.c:4476 access/transam/xlog.c:4486 -#: access/transam/xlog.c:4496 access/transam/xlog.c:4506 -#: access/transam/xlog.c:4516 +#: access/transam/xlog.c:4429 access/transam/xlog.c:4439 +#: access/transam/xlog.c:4455 access/transam/xlog.c:4465 +#: access/transam/xlog.c:4475 access/transam/xlog.c:4485 +#: access/transam/xlog.c:4495 access/transam/xlog.c:4505 +#: access/transam/xlog.c:4515 #, c-format msgid "The database cluster was initialized with %s %d, but the server was compiled with %s %d." msgstr "Der Datenbank-Cluster wurde mit %s %d initialisiert, aber der Server wurde mit %s %d kompiliert." -#: access/transam/xlog.c:4449 +#: access/transam/xlog.c:4448 #, c-format msgid "The database cluster appears to use a different floating-point number format than the server executable." msgstr "Der Datenbank-Cluster verwendet anscheinend ein anderes Fließkommazahlenformat als das Serverprogramm." -#: access/transam/xlog.c:4460 access/transam/xlog.c:4470 -#: access/transam/xlog.c:4480 access/transam/xlog.c:4490 -#: access/transam/xlog.c:4500 access/transam/xlog.c:4510 -#: access/transam/xlog.c:4520 access/transam/xlog.c:4529 -#: access/transam/xlog.c:4537 +#: access/transam/xlog.c:4459 access/transam/xlog.c:4469 +#: access/transam/xlog.c:4479 access/transam/xlog.c:4489 +#: access/transam/xlog.c:4499 access/transam/xlog.c:4509 +#: access/transam/xlog.c:4519 access/transam/xlog.c:4528 +#: access/transam/xlog.c:4536 #, c-format msgid "It looks like you need to recompile or initdb." msgstr "Es sieht so aus, dass Sie neu kompilieren oder initdb ausführen müssen." -#: access/transam/xlog.c:4527 +#: access/transam/xlog.c:4526 #, c-format msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL." msgstr "Der Datenbank-Cluster wurde ohne USE_FLOAT8_BYVAL initialisiert, aber der Server wurde mit USE_FLOAT8_BYVAL kompiliert." -#: access/transam/xlog.c:4535 +#: access/transam/xlog.c:4534 #, c-format msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL." msgstr "Der Datenbank-Cluster wurde mit USE_FLOAT8_BYVAL initialisiert, aber der Server wurde ohne USE_FLOAT8_BYVAL kompiliert." -#: access/transam/xlog.c:4544 +#: access/transam/xlog.c:4543 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -2599,283 +2609,283 @@ msgstr[0] "ungültige WAL-Segmentgröße in Kontrolldatei (%d Byte)" msgstr[1] "ungültige WAL-Segmentgröße in Kontrolldatei (%d Bytes)" #. translator: both %s are GUC names -#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 +#: access/transam/xlog.c:4557 access/transam/xlog.c:4563 #, c-format msgid "\"%s\" must be at least twice \"%s\"" msgstr "»%s« muss mindestens zweimal so groß wie »%s« sein" -#: access/transam/xlog.c:4726 catalog/namespace.c:4699 +#: access/transam/xlog.c:4725 catalog/namespace.c:4699 #: commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 -#: replication/slot.c:2727 tcop/postgres.c:3626 utils/error/elog.c:2257 +#: replication/slot.c:2768 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "Die Listensyntax ist ungültig." -#: access/transam/xlog.c:4772 commands/user.c:2547 commands/variable.c:173 +#: access/transam/xlog.c:4771 commands/user.c:2547 commands/variable.c:173 #: tcop/postgres.c:3642 utils/error/elog.c:2283 #, c-format msgid "Unrecognized key word: \"%s\"." msgstr "Unbekanntes Schlüsselwort: »%s«." -#: access/transam/xlog.c:5195 +#: access/transam/xlog.c:5194 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "konnte Bootstrap-Write-Ahead-Log-Datei nicht schreiben: %m" -#: access/transam/xlog.c:5203 +#: access/transam/xlog.c:5202 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "konnte Bootstrap-Write-Ahead-Log-Datei nicht fsyncen: %m" -#: access/transam/xlog.c:5209 +#: access/transam/xlog.c:5208 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "konnte Bootstrap-Write-Ahead-Log-Datei nicht schließen: %m" -#: access/transam/xlog.c:5434 +#: access/transam/xlog.c:5433 #, c-format msgid "WAL was generated with \"wal_level=minimal\", cannot continue recovering" msgstr "WAL wurde mit »wal_level=minimal« erzeugt, Wiederherstellung kann nicht fortgesetzt werden" -#: access/transam/xlog.c:5435 +#: access/transam/xlog.c:5434 #, c-format msgid "This happens if you temporarily set \"wal_level=minimal\" on the server." msgstr "Das passiert, wenn auf dem Server vorübergehend »wal_level=minimal« gesetzt wurde." -#: access/transam/xlog.c:5436 +#: access/transam/xlog.c:5435 #, c-format msgid "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." msgstr "Verwenden Sie ein Backup, das durchgeführt wurde, nachdem »wal_level« auf höher als »minimal« gesetzt wurde." -#: access/transam/xlog.c:5501 +#: access/transam/xlog.c:5500 #, c-format msgid "control file contains invalid checkpoint location" msgstr "Kontrolldatei enthält ungültige Checkpoint-Position" -#: access/transam/xlog.c:5512 +#: access/transam/xlog.c:5511 #, c-format msgid "database system was shut down at %s" msgstr "Datenbanksystem wurde am %s heruntergefahren" -#: access/transam/xlog.c:5518 +#: access/transam/xlog.c:5517 #, c-format msgid "database system was shut down in recovery at %s" msgstr "Datenbanksystem wurde während der Wiederherstellung am %s heruntergefahren" -#: access/transam/xlog.c:5524 +#: access/transam/xlog.c:5523 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "Datenbanksystem wurde beim Herunterfahren unterbrochen; letzte bekannte Aktion am %s" -#: access/transam/xlog.c:5530 +#: access/transam/xlog.c:5529 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "Datenbanksystem wurde während der Wiederherstellung am %s unterbrochen" -#: access/transam/xlog.c:5532 +#: access/transam/xlog.c:5531 #, c-format msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery." msgstr "Das bedeutet wahrscheinlich, dass einige Daten verfälscht sind und Sie die letzte Datensicherung zur Wiederherstellung verwenden müssen." -#: access/transam/xlog.c:5538 +#: access/transam/xlog.c:5537 #, c-format msgid "database system was interrupted while in recovery at log time %s" msgstr "Datenbanksystem wurde während der Wiederherstellung bei Logzeit %s unterbrochen" -#: access/transam/xlog.c:5540 +#: access/transam/xlog.c:5539 #, 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 "Wenn dies mehr als einmal vorgekommen ist, dann sind einige Daten möglicherweise verfälscht und Sie müssen ein früheres Wiederherstellungsziel wählen." -#: access/transam/xlog.c:5546 +#: access/transam/xlog.c:5545 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "Datenbanksystem wurde unterbrochen; letzte bekannte Aktion am %s" -#: access/transam/xlog.c:5553 +#: access/transam/xlog.c:5552 #, c-format msgid "control file contains invalid database cluster state" msgstr "Kontrolldatei enthält ungültigen Datenbankclusterstatus" -#: access/transam/xlog.c:5941 +#: access/transam/xlog.c:5940 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL endet vor dem Ende der Online-Sicherung" -#: access/transam/xlog.c:5942 +#: access/transam/xlog.c:5941 #, c-format msgid "All WAL generated while online backup was taken must be available at recovery." msgstr "Der komplette WAL, der während der Online-Sicherung erzeugt wurde, muss bei der Wiederherstellung verfügbar sein." -#: access/transam/xlog.c:5946 +#: access/transam/xlog.c:5945 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL endet vor einem konsistenten Wiederherstellungspunkt" -#: access/transam/xlog.c:5992 +#: access/transam/xlog.c:5991 #, c-format msgid "selected new timeline ID: %u" msgstr "gewählte neue Zeitleisten-ID: %u" -#: access/transam/xlog.c:6025 +#: access/transam/xlog.c:6024 #, c-format msgid "archive recovery complete" msgstr "Wiederherstellung aus Archiv abgeschlossen" -#: access/transam/xlog.c:6654 +#: access/transam/xlog.c:6653 #, c-format msgid "shutting down" msgstr "fahre herunter" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6693 +#: access/transam/xlog.c:6692 #, c-format msgid "restartpoint starting:%s%s%s%s%s%s%s%s" msgstr "Restart-Punkt beginnt:%s%s%s%s%s%s%s%s" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6705 +#: access/transam/xlog.c:6704 #, c-format msgid "checkpoint starting:%s%s%s%s%s%s%s%s" msgstr "Checkpoint beginnt:%s%s%s%s%s%s%s%s" -#: access/transam/xlog.c:6770 +#: access/transam/xlog.c:6769 #, c-format msgid "restartpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" msgstr "Restart-Punkt komplett: %d Puffer geschrieben (%.1f%%), %d SLRU-Puffer geschrieben; %d WAL-Datei(en) hinzugefügt, %d entfernt, %d wiederverwendet; Schreiben=%ld,%03d s, Sync=%ld,%03d s, gesamt=%ld,%03d s; sync. Dateien=%d, längste=%ld,%03d s, Durchschnitt=%ld.%03d s; Entfernung=%d kB, Schätzung=%d kB; LSN=%X/%X, Redo-LSN=%X/%X" -#: access/transam/xlog.c:6794 +#: access/transam/xlog.c:6793 #, c-format msgid "checkpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" msgstr "Checkpoint komplett: %d Puffer geschrieben (%.1f%%), %d SLRU-Puffer geschrieben; %d WAL-Datei(en) hinzugefügt, %d entfernt, %d wiederverwendet; Schreiben=%ld,%03d s, Sync=%ld,%03d s, gesamt=%ld,%03d s; sync. Dateien=%d, längste=%ld,%03d s, Durchschnitt=%ld.%03d s; Entfernung=%d kB, Schätzung=%d kB; LSN=%X/%X, Redo-LSN=%X/%X" -#: access/transam/xlog.c:7280 +#: access/transam/xlog.c:7279 #, c-format msgid "concurrent write-ahead log activity while database system is shutting down" msgstr "gleichzeitige Write-Ahead-Log-Aktivität während das Datenbanksystem herunterfährt" -#: access/transam/xlog.c:7869 +#: access/transam/xlog.c:7871 #, c-format msgid "recovery restart point at %X/%X" msgstr "Recovery-Restart-Punkt bei %X/%X" -#: access/transam/xlog.c:7871 +#: access/transam/xlog.c:7873 #, c-format msgid "Last completed transaction was at log time %s." msgstr "Die letzte vollständige Transaktion war bei Logzeit %s." -#: access/transam/xlog.c:8135 +#: access/transam/xlog.c:8137 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "Restore-Punkt »%s« erzeugt bei %X/%X" -#: access/transam/xlog.c:8342 +#: access/transam/xlog.c:8344 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "Online-Sicherung wurde storniert, Wiederherstellung kann nicht fortgesetzt werden" -#: access/transam/xlog.c:8400 +#: access/transam/xlog.c:8402 #, c-format msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "unerwartete Zeitleisten-ID %u (sollte %u sein) im Shutdown-Checkpoint-Datensatz" -#: access/transam/xlog.c:8466 +#: access/transam/xlog.c:8468 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "unerwartete Zeitleisten-ID %u (sollte %u sein) im Online-Checkpoint-Datensatz" -#: access/transam/xlog.c:8503 +#: access/transam/xlog.c:8505 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "unerwartete Zeitleisten-ID %u (sollte %u sein) im End-of-Recovery-Datensatz" -#: access/transam/xlog.c:8773 +#: access/transam/xlog.c:8775 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "konnte Write-Through-Logdatei »%s« nicht fsyncen: %m" -#: access/transam/xlog.c:8778 +#: access/transam/xlog.c:8780 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "konnte Datei »%s« nicht fdatasyncen: %m" -#: access/transam/xlog.c:8855 access/transam/xlog.c:9191 +#: access/transam/xlog.c:8857 access/transam/xlog.c:9193 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "WAL-Level nicht ausreichend, um Online-Sicherung durchzuführen" -#: access/transam/xlog.c:8856 access/transam/xlog.c:9192 +#: access/transam/xlog.c:8858 access/transam/xlog.c:9194 #: access/transam/xlogfuncs.c:249 #, c-format msgid "\"wal_level\" must be set to \"replica\" or \"logical\" at server start." msgstr "»wal_level« muss beim Serverstart auf »replica« oder »logical« gesetzt werden." -#: access/transam/xlog.c:8861 +#: access/transam/xlog.c:8863 #, c-format msgid "backup label too long (max %d bytes)" msgstr "Backup-Label zu lang (maximal %d Bytes)" -#: access/transam/xlog.c:8982 +#: access/transam/xlog.c:8984 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed since last restartpoint" msgstr "mit »full_page_writes=off« erzeugtes WAL wurde seit dem letzten Restart-Punkt zurückgespielt" -#: access/transam/xlog.c:8984 access/transam/xlog.c:9280 +#: access/transam/xlog.c:8986 access/transam/xlog.c:9282 #, 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 primary, and then try an online backup again." msgstr "Das bedeutet, dass die aktuelle Datensicherung auf dem Standby-Server verfälscht ist und nicht verwendet werden sollte. Schalten Sie auf dem Primärserver »full_page_writes« ein, führen Sie dort CHECKPOINT aus und versuchen Sie dann die Online-Sicherung erneut." -#: access/transam/xlog.c:9064 backup/basebackup.c:1419 utils/adt/misc.c:354 +#: access/transam/xlog.c:9066 backup/basebackup.c:1419 utils/adt/misc.c:354 #, c-format msgid "could not read symbolic link \"%s\": %m" msgstr "konnte symbolische Verknüpfung »%s« nicht lesen: %m" -#: access/transam/xlog.c:9071 backup/basebackup.c:1424 utils/adt/misc.c:359 +#: access/transam/xlog.c:9073 backup/basebackup.c:1424 utils/adt/misc.c:359 #, c-format msgid "symbolic link \"%s\" target is too long" msgstr "Ziel für symbolische Verknüpfung »%s« ist zu lang" -#: access/transam/xlog.c:9230 backup/basebackup.c:1283 +#: access/transam/xlog.c:9232 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "der Standby-Server wurde während der Online-Sicherung zum Primärserver befördert" -#: access/transam/xlog.c:9231 backup/basebackup.c:1284 +#: access/transam/xlog.c:9233 backup/basebackup.c:1284 #, c-format msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup." msgstr "Das bedeutet, dass die aktuelle Online-Sicherung verfälscht ist und nicht verwendet werden sollte. Versuchen Sie, eine neue Online-Sicherung durchzuführen." -#: access/transam/xlog.c:9278 +#: access/transam/xlog.c:9280 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed during online backup" msgstr "mit »full_page_writes=off« erzeugtes WAL wurde während der Online-Sicherung zurückgespielt" -#: access/transam/xlog.c:9394 +#: access/transam/xlog.c:9396 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "Basissicherung beendet, warte bis die benötigten WAL-Segmente archiviert sind" -#: access/transam/xlog.c:9408 +#: access/transam/xlog.c:9410 #, c-format msgid "still waiting for all required WAL segments to be archived (%d seconds elapsed)" msgstr "warte immer noch, bis alle benötigten WAL-Segmente archiviert sind (%d Sekunden abgelaufen)" -#: access/transam/xlog.c:9410 +#: access/transam/xlog.c:9412 #, c-format msgid "Check that your \"archive_command\" is executing properly. You can safely cancel this backup, but the database backup will not be usable without all the WAL segments." msgstr "Prüfen Sie, ob das »archive_command« korrekt ausgeführt wird. Dieser Sicherungsvorgang kann gefahrlos abgebrochen werden, aber die Datenbanksicherung wird ohne die fehlenden WAL-Segmente nicht benutzbar sein." -#: access/transam/xlog.c:9417 +#: access/transam/xlog.c:9419 #, c-format msgid "all required WAL segments have been archived" msgstr "alle benötigten WAL-Segmente wurden archiviert" -#: access/transam/xlog.c:9421 +#: access/transam/xlog.c:9423 #, 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-Archivierung ist nicht eingeschaltet; Sie müssen dafür sorgen, dass alle benötigten WAL-Segmente auf andere Art kopiert werden, um die Sicherung abzuschließen" -#: access/transam/xlog.c:9460 +#: access/transam/xlog.c:9462 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "Backup wird abgebrochen, weil Backend-Prozess beendete, bevor pg_backup_stop aufgerufen wurde" @@ -3233,409 +3243,414 @@ msgstr "starte Wiederherstellung aus Backup neu mit Redo-LSN %X/%X" msgid "could not locate a valid checkpoint record at %X/%X" msgstr "konnte keinen gültigen Checkpoint-Datensatz bei %X/%X finden" -#: access/transam/xlogrecovery.c:813 +#: access/transam/xlogrecovery.c:814 +#, c-format +msgid "could not find redo location %X/%08X referenced by checkpoint record at %X/%08X" +msgstr "konnte die Redo-Position %X/%08X, die vom Checkpoint-Datensatz bei %X/%08X referenziert wird, nicht finden" + +#: access/transam/xlogrecovery.c:823 #, c-format msgid "entering standby mode" msgstr "Standby-Modus eingeschaltet" -#: access/transam/xlogrecovery.c:816 +#: access/transam/xlogrecovery.c:826 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "starte Point-in-Time-Recovery bis XID %u" -#: access/transam/xlogrecovery.c:820 +#: access/transam/xlogrecovery.c:830 #, c-format msgid "starting point-in-time recovery to %s" msgstr "starte Point-in-Time-Recovery bis %s" -#: access/transam/xlogrecovery.c:824 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "starte Point-in-Time-Recovery bis »%s«" -#: access/transam/xlogrecovery.c:828 +#: access/transam/xlogrecovery.c:838 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "starte Point-in-Time-Recovery bis WAL-Position (LSN) »%X/%X«" -#: access/transam/xlogrecovery.c:832 +#: access/transam/xlogrecovery.c:842 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "starte Point-in-Time-Recovery bis zum frühesten konsistenten Punkt" -#: access/transam/xlogrecovery.c:835 +#: access/transam/xlogrecovery.c:845 #, c-format msgid "starting archive recovery" msgstr "starte Wiederherstellung aus Archiv" -#: access/transam/xlogrecovery.c:856 +#: access/transam/xlogrecovery.c:866 #, c-format msgid "requested timeline %u is not a child of this server's history" msgstr "angeforderte Zeitleiste %u ist kein Kind der History dieses Servers" #. translator: %s is a backup_label file or a pg_control file -#: access/transam/xlogrecovery.c:859 +#: access/transam/xlogrecovery.c:869 #, c-format msgid "Latest checkpoint in file \"%s\" 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 "Neuester Checkpoint in Datei »%s« ist bei %X/%X auf Zeitleiste %u, aber in der History der angeforderten Zeitleiste zweigte der Server von dieser Zeitleiste bei %X/%X ab." -#: access/transam/xlogrecovery.c:874 +#: access/transam/xlogrecovery.c:884 #, c-format msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u" msgstr "angeforderte Zeitleiste %u enthält nicht den minimalen Wiederherstellungspunkt %X/%X auf Zeitleiste %u" -#: access/transam/xlogrecovery.c:902 +#: access/transam/xlogrecovery.c:912 #, c-format msgid "invalid next transaction ID" msgstr "ungültige nächste Transaktions-ID" -#: access/transam/xlogrecovery.c:907 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo in checkpoint record" msgstr "ungültiges Redo im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:918 +#: access/transam/xlogrecovery.c:928 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "ungültiger Redo-Datensatz im Shutdown-Checkpoint" -#: access/transam/xlogrecovery.c:947 +#: access/transam/xlogrecovery.c:957 #, c-format msgid "database system was not properly shut down; automatic recovery in progress" msgstr "Datenbanksystem wurde nicht richtig heruntergefahren; automatische Wiederherstellung läuft" -#: access/transam/xlogrecovery.c:951 +#: access/transam/xlogrecovery.c:961 #, c-format msgid "crash recovery starts in timeline %u and has target timeline %u" msgstr "Wiederherstellung nach Absturz beginnt in Zeitleiste %u und hat Zielzeitleiste %u" -#: access/transam/xlogrecovery.c:994 +#: access/transam/xlogrecovery.c:1004 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "Daten in backup_label stimmen nicht mit Kontrolldatei überein" -#: access/transam/xlogrecovery.c:995 +#: access/transam/xlogrecovery.c:1005 #, c-format msgid "This means that the backup is corrupted and you will have to use another backup for recovery." msgstr "Das bedeutet, dass die Datensicherung verfälscht ist und Sie eine andere Datensicherung zur Wiederherstellung verwenden werden müssen." -#: access/transam/xlogrecovery.c:1049 +#: access/transam/xlogrecovery.c:1059 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "Verwendung von Recovery-Befehlsdatei »%s« wird nicht unterstützt" -#: access/transam/xlogrecovery.c:1114 +#: access/transam/xlogrecovery.c:1124 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "Standby-Modus wird von Servern im Einzelbenutzermodus nicht unterstützt" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1141 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "weder »primary_conninfo« noch »restore_command« angegeben" -#: access/transam/xlogrecovery.c:1132 +#: access/transam/xlogrecovery.c:1142 #, c-format msgid "The database server will regularly poll the pg_wal subdirectory to check for files placed there." msgstr "Der Datenbankserver prüft das Unterverzeichnis pg_wal regelmäßig auf dort abgelegte Dateien." -#: access/transam/xlogrecovery.c:1140 +#: access/transam/xlogrecovery.c:1150 #, c-format msgid "must specify \"restore_command\" when standby mode is not enabled" msgstr "»restore_command« muss angegeben werden, wenn der Standby-Modus nicht eingeschaltet ist" -#: access/transam/xlogrecovery.c:1178 +#: access/transam/xlogrecovery.c:1188 #, c-format msgid "recovery target timeline %u does not exist" msgstr "recovery_target_timeline %u existiert nicht" -#: access/transam/xlogrecovery.c:1261 access/transam/xlogrecovery.c:1268 -#: access/transam/xlogrecovery.c:1327 access/transam/xlogrecovery.c:1415 -#: access/transam/xlogrecovery.c:1424 access/transam/xlogrecovery.c:1444 +#: access/transam/xlogrecovery.c:1271 access/transam/xlogrecovery.c:1278 +#: access/transam/xlogrecovery.c:1337 access/transam/xlogrecovery.c:1425 +#: access/transam/xlogrecovery.c:1434 access/transam/xlogrecovery.c:1454 #, c-format msgid "invalid data in file \"%s\"" msgstr "ungültige Daten in Datei »%s«" -#: access/transam/xlogrecovery.c:1328 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "Gelesene Zeitleisten-ID ist %u, aber %u wurde erwartet." -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1349 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "dies ist ein inkrementelles Backup, kein Datenverzeichnis" -#: access/transam/xlogrecovery.c:1340 +#: access/transam/xlogrecovery.c:1350 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "Verwenden Sie pg_combinebackup, um ein gültiges Datenverzeichnis zu rekonstruieren." -#: access/transam/xlogrecovery.c:1726 +#: access/transam/xlogrecovery.c:1736 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "unerwarteter Datensatztyp bei Redo-Position %X/%X gefunden" -#: access/transam/xlogrecovery.c:1749 +#: access/transam/xlogrecovery.c:1759 #, c-format msgid "redo starts at %X/%X" msgstr "Redo beginnt bei %X/%X" -#: access/transam/xlogrecovery.c:1762 +#: access/transam/xlogrecovery.c:1772 #, c-format msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X" msgstr "Redo im Gang, abgelaufene Zeit: %ld.%02d s, aktuelle LSN: %X/%X" -#: access/transam/xlogrecovery.c:1852 +#: access/transam/xlogrecovery.c:1862 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "angeforderter Recovery-Endpunkt ist vor konsistentem Recovery-Punkt" -#: access/transam/xlogrecovery.c:1884 +#: access/transam/xlogrecovery.c:1894 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "Redo fertig bei %X/%X Systembenutzung: %s" -#: access/transam/xlogrecovery.c:1890 +#: access/transam/xlogrecovery.c:1900 #, c-format msgid "last completed transaction was at log time %s" msgstr "letzte vollständige Transaktion war bei Logzeit %s" -#: access/transam/xlogrecovery.c:1899 +#: access/transam/xlogrecovery.c:1909 #, c-format msgid "redo is not required" msgstr "Redo nicht nötig" -#: access/transam/xlogrecovery.c:1911 +#: access/transam/xlogrecovery.c:1921 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "Wiederherstellung endete bevor das konfigurierte Wiederherstellungsziel erreicht wurde" -#: access/transam/xlogrecovery.c:2105 +#: access/transam/xlogrecovery.c:2115 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "fehlender Contrecord bei %X/%X erfolgreich übersprungen, überschrieben am %s" -#: access/transam/xlogrecovery.c:2172 +#: access/transam/xlogrecovery.c:2182 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "unerwarteter Verzeichniseintrag »%s« in %s gefunden" -#: access/transam/xlogrecovery.c:2174 +#: access/transam/xlogrecovery.c:2184 #, c-format msgid "All directory entries in %s/ should be symbolic links." msgstr "Alle Verzeichniseinträge in %s/ sollten symbolische Verknüpfungen sein." -#: access/transam/xlogrecovery.c:2176 +#: access/transam/xlogrecovery.c:2186 #, c-format msgid "Remove those directories, or set \"allow_in_place_tablespaces\" to ON transiently to let recovery complete." msgstr "Entfernen Sie diese Verzeichnisse oder setzen Sie »allow_in_place_tablespaces« vorrübergehend auf ON, damit die Wiederherstellung abschließen kann." -#: access/transam/xlogrecovery.c:2228 +#: access/transam/xlogrecovery.c:2238 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "Wiederherstellung aus Backup abgeschlossen mit Redo-LSN %X/%X und End-LSN %X/%X" -#: access/transam/xlogrecovery.c:2259 +#: access/transam/xlogrecovery.c:2269 #, c-format msgid "consistent recovery state reached at %X/%X" msgstr "konsistenter Wiederherstellungszustand erreicht bei %X/%X" #. translator: %s is a WAL record description -#: access/transam/xlogrecovery.c:2297 +#: access/transam/xlogrecovery.c:2307 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "WAL-Redo bei %X/%X für %s" -#: access/transam/xlogrecovery.c:2395 +#: access/transam/xlogrecovery.c:2405 #, c-format msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record" msgstr "unerwartete vorherige Zeitleisten-ID %u (aktuelle Zeitleisten-ID %u) im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:2404 +#: access/transam/xlogrecovery.c:2414 #, c-format msgid "unexpected timeline ID %u (after %u) in checkpoint record" msgstr "unerwartete Zeitleisten-ID %u (nach %u) im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:2420 +#: access/transam/xlogrecovery.c:2430 #, c-format msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u" msgstr "unerwartete Zeitleisten-ID %u in Checkpoint-Datensatz, bevor der minimale Wiederherstellungspunkt %X/%X auf Zeitleiste %u erreicht wurde" -#: access/transam/xlogrecovery.c:2604 access/transam/xlogrecovery.c:2880 +#: access/transam/xlogrecovery.c:2614 access/transam/xlogrecovery.c:2890 #, c-format msgid "recovery stopping after reaching consistency" msgstr "Wiederherstellung beendet nachdem Konsistenz erreicht wurde" -#: access/transam/xlogrecovery.c:2625 +#: access/transam/xlogrecovery.c:2635 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "Wiederherstellung beendet vor WAL-Position (LSN) »%X/%X«" -#: access/transam/xlogrecovery.c:2715 +#: access/transam/xlogrecovery.c:2725 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "Wiederherstellung beendet vor Commit der Transaktion %u, Zeit %s" -#: access/transam/xlogrecovery.c:2722 +#: access/transam/xlogrecovery.c:2732 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "Wiederherstellung beendet vor Abbruch der Transaktion %u, Zeit %s" -#: access/transam/xlogrecovery.c:2775 +#: access/transam/xlogrecovery.c:2785 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "Wiederherstellung beendet bei Restore-Punkt »%s«, Zeit %s" -#: access/transam/xlogrecovery.c:2793 +#: access/transam/xlogrecovery.c:2803 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "Wiederherstellung beendet nach WAL-Position (LSN) »%X/%X«" -#: access/transam/xlogrecovery.c:2860 +#: access/transam/xlogrecovery.c:2870 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "Wiederherstellung beendet nach Commit der Transaktion %u, Zeit %s" -#: access/transam/xlogrecovery.c:2868 +#: access/transam/xlogrecovery.c:2878 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "Wiederherstellung beendet nach Abbruch der Transaktion %u, Zeit %s" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2959 #, c-format msgid "pausing at the end of recovery" msgstr "pausiere am Ende der Wiederherstellung" -#: access/transam/xlogrecovery.c:2950 +#: access/transam/xlogrecovery.c:2960 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Führen Sie pg_wal_replay_resume() aus, um den Server zum Primärserver zu befördern." -#: access/transam/xlogrecovery.c:2953 access/transam/xlogrecovery.c:4710 +#: access/transam/xlogrecovery.c:2963 access/transam/xlogrecovery.c:4720 #, c-format msgid "recovery has paused" msgstr "Wiederherstellung wurde pausiert" -#: access/transam/xlogrecovery.c:2954 +#: access/transam/xlogrecovery.c:2964 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Führen Sie pg_wal_replay_resume() aus um fortzusetzen." -#: access/transam/xlogrecovery.c:3217 +#: access/transam/xlogrecovery.c:3227 #, c-format msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u" msgstr "unerwartete Zeitleisten-ID %u in WAL-Segment %s, LSN %X/%X, Offset %u" -#: access/transam/xlogrecovery.c:3433 +#: access/transam/xlogrecovery.c:3443 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m" msgstr "konnte nicht aus WAL-Segment %s, LSN %X/%X, Position %u lesen: %m" -#: access/transam/xlogrecovery.c:3440 +#: access/transam/xlogrecovery.c:3450 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" msgstr "konnte nicht aus WAL-Segment %s, LSN %X/%X, Position %u lesen: %d von %zu gelesen" -#: access/transam/xlogrecovery.c:4094 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint location" msgstr "ungültige Checkpoint-Position" -#: access/transam/xlogrecovery.c:4104 +#: access/transam/xlogrecovery.c:4114 #, c-format msgid "invalid checkpoint record" msgstr "ungültiger Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:4110 +#: access/transam/xlogrecovery.c:4120 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "ungültige Resource-Manager-ID im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:4118 +#: access/transam/xlogrecovery.c:4128 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "ungültige xl_info im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:4124 +#: access/transam/xlogrecovery.c:4134 #, c-format msgid "invalid length of checkpoint record" msgstr "ungültige Länge des Checkpoint-Datensatzes" -#: access/transam/xlogrecovery.c:4178 +#: access/transam/xlogrecovery.c:4188 #, c-format msgid "new timeline %u is not a child of database system timeline %u" msgstr "neue Zeitleiste %u ist kein Kind der Datenbanksystemzeitleiste %u" -#: access/transam/xlogrecovery.c:4192 +#: access/transam/xlogrecovery.c:4202 #, c-format msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X" msgstr "neue Zeitleiste %u zweigte von der aktuellen Datenbanksystemzeitleiste %u vor dem aktuellen Wiederherstellungspunkt %X/%X ab" -#: access/transam/xlogrecovery.c:4211 +#: access/transam/xlogrecovery.c:4221 #, c-format msgid "new target timeline is %u" msgstr "neue Zielzeitleiste ist %u" -#: access/transam/xlogrecovery.c:4412 +#: access/transam/xlogrecovery.c:4422 #, c-format msgid "WAL receiver process shutdown requested" msgstr "Herunterfahren des WAL-Receiver-Prozesses verlangt" -#: access/transam/xlogrecovery.c:4472 +#: access/transam/xlogrecovery.c:4482 #, c-format msgid "received promote request" msgstr "Anforderung zum Befördern empfangen" -#: access/transam/xlogrecovery.c:4701 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "hot standby is not possible because of insufficient parameter settings" msgstr "Hot Standby ist nicht möglich wegen unzureichender Parametereinstellungen" -#: access/transam/xlogrecovery.c:4702 access/transam/xlogrecovery.c:4729 -#: access/transam/xlogrecovery.c:4759 +#: access/transam/xlogrecovery.c:4712 access/transam/xlogrecovery.c:4739 +#: access/transam/xlogrecovery.c:4769 #, c-format msgid "%s = %d is a lower setting than on the primary server, where its value was %d." msgstr "%s = %d ist eine niedrigere Einstellung als auf dem Primärserver, wo der Wert %d war." -#: access/transam/xlogrecovery.c:4711 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "Wenn die Wiederherstellungspause beendet wird, wird der Server herunterfahren." -#: access/transam/xlogrecovery.c:4712 +#: access/transam/xlogrecovery.c:4722 #, c-format msgid "You can then restart the server after making the necessary configuration changes." msgstr "Sie können den Server dann neu starten, nachdem die nötigen Konfigurationsänderungen getätigt worden sind." -#: access/transam/xlogrecovery.c:4723 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "Beförderung ist nicht möglich wegen unzureichender Parametereinstellungen" -#: access/transam/xlogrecovery.c:4733 +#: access/transam/xlogrecovery.c:4743 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "Starten Sie den Server neu, nachdem die nötigen Konfigurationsänderungen getätigt worden sind." -#: access/transam/xlogrecovery.c:4757 +#: access/transam/xlogrecovery.c:4767 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "Wiederherstellung abgebrochen wegen unzureichender Parametereinstellungen" -#: access/transam/xlogrecovery.c:4763 +#: access/transam/xlogrecovery.c:4773 #, c-format msgid "You can restart the server after making the necessary configuration changes." msgstr "Sie können den Server neu starten, nachdem die nötigen Konfigurationsänderungen getätigt worden sind." -#: access/transam/xlogrecovery.c:4783 access/transam/xlogrecovery.c:4785 +#: access/transam/xlogrecovery.c:4793 access/transam/xlogrecovery.c:4795 #: catalog/dependency.c:1153 catalog/dependency.c:1160 #: catalog/dependency.c:1171 commands/tablecmds.c:1519 #: commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:225 commands/view.c:441 executor/execExprInterp.c:5211 +#: commands/vacuum.c:226 commands/view.c:441 executor/execExprInterp.c:5211 #: executor/execExprInterp.c:5219 libpq/auth.c:320 -#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1670 -#: replication/slot.c:2742 replication/slot.c:2744 replication/syncrep.c:1079 +#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1705 +#: replication/slot.c:2783 replication/slot.c:2785 replication/syncrep.c:1079 #: storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 #: storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 #: utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 @@ -3644,27 +3659,27 @@ msgstr "Sie können den Server neu starten, nachdem die nötigen Konfigurations msgid "%s" msgstr "%s" -#: access/transam/xlogrecovery.c:4815 +#: access/transam/xlogrecovery.c:4825 #, c-format msgid "multiple recovery targets specified" msgstr "mehrere Wiederherstellungsziele angegeben" -#: access/transam/xlogrecovery.c:4816 +#: access/transam/xlogrecovery.c:4826 #, c-format msgid "At most one of \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", \"recovery_target_xid\" may be set." msgstr "Höchstens eins aus »recovery_target«, »recovery_target_lsn«, »recovery_target_name«, »recovery_target_time«, »recovery_target_xid« darf gesetzt sein." -#: access/transam/xlogrecovery.c:4827 +#: access/transam/xlogrecovery.c:4837 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "Der einzige erlaubte Wert ist »immediate«." -#: access/transam/xlogrecovery.c:4981 +#: access/transam/xlogrecovery.c:4991 #, c-format msgid "Timestamp out of range: \"%s\"." msgstr "Timestamp ist außerhalb des gültigen Bereichs: »%s«." -#: access/transam/xlogrecovery.c:5026 +#: access/transam/xlogrecovery.c:5036 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "»recovery_target_timeline« ist keine gültige Zahl." @@ -3933,12 +3948,12 @@ msgstr "WAL-Zusammenfassungen auf Zeitleiste %u von %X/%X bis %X/%X werden benö msgid "The first unsummarized LSN in this range is %X/%X." msgstr "Die erste nicht zusammengefasste LSN in diesem Bereich ist %X/%X." -#: backup/basebackup_incremental.c:934 +#: backup/basebackup_incremental.c:948 #, c-format msgid "backup manifest version 1 does not support incremental backup" msgstr "Backup-Manifest Version 1 unterstützt kein inkrementelles Backup" -#: backup/basebackup_incremental.c:952 +#: backup/basebackup_incremental.c:966 #, c-format msgid "system identifier in backup manifest is %, but database system identifier is %" msgstr "Systemidentifikator im Backup-Manifest ist %, aber Datenbanksystemidentifikator ist %" @@ -3965,7 +3980,7 @@ msgstr "relativer Pfad nicht erlaubt für auf dem Server abgelegtes Backup" #: backup/basebackup_server.c:102 commands/dbcommands.c:478 #: commands/tablespace.c:157 commands/tablespace.c:173 -#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2246 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2287 #: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" @@ -3984,7 +3999,7 @@ msgstr "konnte nicht auf Verzeichnis »%s« zugreifen: %m" #: backup/basebackup_server.c:175 backup/basebackup_server.c:182 #: backup/basebackup_server.c:268 backup/basebackup_server.c:275 #: backup/walsummary.c:312 storage/smgr/md.c:519 storage/smgr/md.c:526 -#: storage/smgr/md.c:608 storage/smgr/md.c:630 storage/smgr/md.c:1123 +#: storage/smgr/md.c:619 storage/smgr/md.c:641 storage/smgr/md.c:1134 #, c-format msgid "Check free disk space." msgstr "Prüfen Sie den freien Festplattenplatz." @@ -4191,18 +4206,13 @@ msgstr "Vorgabeprivilegien können nicht für Spalten gesetzt werden" msgid "permission denied to change default privileges" msgstr "keine Berechtigung, um Vorgabeprivilegien zu ändern" -#: catalog/aclchk.c:1211 -#, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgstr "Klausel IN SCHEMA kann nicht verwendet werden, wenn GRANT/REVOKE ON SCHEMAS verwendet wird" - -#: catalog/aclchk.c:1221 +#: catalog/aclchk.c:1211 catalog/aclchk.c:1222 #, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" -msgstr "Klausel IN SCHEMA kann nicht verwendet werden, wenn GRANT/REVOKE ON LARGE OBJECTS verwendet wird" +msgid "cannot use IN SCHEMA clause when using %s" +msgstr "Klausel IN SCHEMA kann nicht verwendet werden, wenn %s verwendet wird" -#: catalog/aclchk.c:1575 catalog/catalog.c:684 catalog/heap.c:2621 -#: catalog/heap.c:2940 catalog/objectaddress.c:1528 +#: catalog/aclchk.c:1577 catalog/catalog.c:684 catalog/heap.c:2621 +#: catalog/heap.c:2941 catalog/objectaddress.c:1528 #: catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1039 #: commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 #: commands/tablecmds.c:8130 commands/tablecmds.c:8259 @@ -4222,17 +4232,17 @@ msgstr "Klausel IN SCHEMA kann nicht verwendet werden, wenn GRANT/REVOKE ON LARG msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "Spalte »%s« von Relation »%s« existiert nicht" -#: catalog/aclchk.c:1820 +#: catalog/aclchk.c:1822 #, c-format msgid "\"%s\" is an index" msgstr "»%s« ist ein Index" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16146 commands/tablecmds.c:19675 +#: catalog/aclchk.c:1829 commands/tablecmds.c:16146 commands/tablecmds.c:19675 #, c-format msgid "\"%s\" is a composite type" msgstr "»%s« ist ein zusammengesetzter Typ" -#: catalog/aclchk.c:1835 catalog/objectaddress.c:1368 commands/tablecmds.c:266 +#: catalog/aclchk.c:1837 catalog/objectaddress.c:1368 commands/tablecmds.c:266 #: commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 #: utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 #: utils/adt/acl.c:2283 @@ -4240,426 +4250,426 @@ msgstr "»%s« ist ein zusammengesetzter Typ" msgid "\"%s\" is not a sequence" msgstr "»%s« ist keine Sequenz" -#: catalog/aclchk.c:1873 +#: catalog/aclchk.c:1875 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "Sequenz »%s« unterstützt nur die Privilegien USAGE, SELECT und UPDATE" -#: catalog/aclchk.c:1890 +#: catalog/aclchk.c:1892 #, c-format msgid "invalid privilege type %s for table" msgstr "ungültiger Privilegtyp %s für Tabelle" -#: catalog/aclchk.c:2055 +#: catalog/aclchk.c:2057 #, c-format msgid "invalid privilege type %s for column" msgstr "ungültiger Privilegtyp %s für Spalte" -#: catalog/aclchk.c:2068 +#: catalog/aclchk.c:2070 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "Sequenz »%s« unterstützt nur den Spaltenprivilegientyp SELECT" -#: catalog/aclchk.c:2259 +#: catalog/aclchk.c:2261 #, c-format msgid "language \"%s\" is not trusted" msgstr "Sprache »%s« ist nicht »trusted«" -#: catalog/aclchk.c:2261 +#: catalog/aclchk.c:2263 #, c-format msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages." msgstr "GRANT und REVOKE sind für nicht vertrauenswürdige Sprachen nicht erlaubt, weil nur Superuser nicht vertrauenswürdige Sprachen verwenden können." -#: catalog/aclchk.c:2412 +#: catalog/aclchk.c:2414 #, c-format msgid "cannot set privileges of array types" msgstr "für Array-Typen können keine Privilegien gesetzt werden" -#: catalog/aclchk.c:2413 +#: catalog/aclchk.c:2415 #, c-format msgid "Set the privileges of the element type instead." msgstr "Setzen Sie stattdessen die Privilegien des Elementtyps." -#: catalog/aclchk.c:2417 +#: catalog/aclchk.c:2419 #, c-format msgid "cannot set privileges of multirange types" msgstr "für Multirange-Typen können keine Privilegien gesetzt werden" -#: catalog/aclchk.c:2418 +#: catalog/aclchk.c:2420 #, c-format msgid "Set the privileges of the range type instead." msgstr "Setzen Sie stattdessen die Privilegien des Range-Typs." -#: catalog/aclchk.c:2601 +#: catalog/aclchk.c:2603 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "unbekannter Privilegtyp »%s«" -#: catalog/aclchk.c:2668 +#: catalog/aclchk.c:2670 #, c-format msgid "permission denied for aggregate %s" msgstr "keine Berechtigung für Aggregatfunktion %s" -#: catalog/aclchk.c:2671 +#: catalog/aclchk.c:2673 #, c-format msgid "permission denied for collation %s" msgstr "keine Berechtigung für Sortierfolge %s" -#: catalog/aclchk.c:2674 +#: catalog/aclchk.c:2676 #, c-format msgid "permission denied for column %s" msgstr "keine Berechtigung für Spalte %s" -#: catalog/aclchk.c:2677 +#: catalog/aclchk.c:2679 #, c-format msgid "permission denied for conversion %s" msgstr "keine Berechtigung für Konversion %s" -#: catalog/aclchk.c:2680 +#: catalog/aclchk.c:2682 #, c-format msgid "permission denied for database %s" msgstr "keine Berechtigung für Datenbank %s" -#: catalog/aclchk.c:2683 +#: catalog/aclchk.c:2685 #, c-format msgid "permission denied for domain %s" msgstr "keine Berechtigung für Domäne %s" -#: catalog/aclchk.c:2686 +#: catalog/aclchk.c:2688 #, c-format msgid "permission denied for event trigger %s" msgstr "keine Berechtigung für Ereignistrigger %s" -#: catalog/aclchk.c:2689 +#: catalog/aclchk.c:2691 #, c-format msgid "permission denied for extension %s" msgstr "keine Berechtigung für Erweiterung %s" -#: catalog/aclchk.c:2692 +#: catalog/aclchk.c:2694 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "keine Berechtigung für Fremddaten-Wrapper %s" -#: catalog/aclchk.c:2695 +#: catalog/aclchk.c:2697 #, c-format msgid "permission denied for foreign server %s" msgstr "keine Berechtigung für Fremdserver %s" -#: catalog/aclchk.c:2698 +#: catalog/aclchk.c:2700 #, c-format msgid "permission denied for foreign table %s" msgstr "keine Berechtigung für Fremdtabelle %s" -#: catalog/aclchk.c:2701 +#: catalog/aclchk.c:2703 #, c-format msgid "permission denied for function %s" msgstr "keine Berechtigung für Funktion %s" -#: catalog/aclchk.c:2704 +#: catalog/aclchk.c:2706 #, c-format msgid "permission denied for index %s" msgstr "keine Berechtigung für Index %s" -#: catalog/aclchk.c:2707 +#: catalog/aclchk.c:2709 #, c-format msgid "permission denied for language %s" msgstr "keine Berechtigung für Sprache %s" -#: catalog/aclchk.c:2710 +#: catalog/aclchk.c:2712 #, c-format msgid "permission denied for large object %s" msgstr "keine Berechtigung für Large Object %s" -#: catalog/aclchk.c:2713 +#: catalog/aclchk.c:2715 #, c-format msgid "permission denied for materialized view %s" msgstr "keine Berechtigung für materialisierte Sicht %s" -#: catalog/aclchk.c:2716 +#: catalog/aclchk.c:2718 #, c-format msgid "permission denied for operator class %s" msgstr "keine Berechtigung für Operatorklasse %s" -#: catalog/aclchk.c:2719 +#: catalog/aclchk.c:2721 #, c-format msgid "permission denied for operator %s" msgstr "keine Berechtigung für Operator %s" -#: catalog/aclchk.c:2722 +#: catalog/aclchk.c:2724 #, c-format msgid "permission denied for operator family %s" msgstr "keine Berechtigung für Operatorfamilie %s" -#: catalog/aclchk.c:2725 +#: catalog/aclchk.c:2727 #, c-format msgid "permission denied for parameter %s" msgstr "keine Berechtigung für Parameter %s" -#: catalog/aclchk.c:2728 +#: catalog/aclchk.c:2730 #, c-format msgid "permission denied for policy %s" msgstr "keine Berechtigung für Policy %s" -#: catalog/aclchk.c:2731 +#: catalog/aclchk.c:2733 #, c-format msgid "permission denied for procedure %s" msgstr "keine Berechtigung für Prozedur %s" -#: catalog/aclchk.c:2734 +#: catalog/aclchk.c:2736 #, c-format msgid "permission denied for publication %s" msgstr "keine Berechtigung für Publikation %s" -#: catalog/aclchk.c:2737 +#: catalog/aclchk.c:2739 #, c-format msgid "permission denied for routine %s" msgstr "keine Berechtigung für Routine %s" -#: catalog/aclchk.c:2740 +#: catalog/aclchk.c:2742 #, c-format msgid "permission denied for schema %s" msgstr "keine Berechtigung für Schema %s" -#: catalog/aclchk.c:2743 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2745 commands/sequence.c:654 commands/sequence.c:880 #: commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 #, c-format msgid "permission denied for sequence %s" msgstr "keine Berechtigung für Sequenz %s" -#: catalog/aclchk.c:2746 +#: catalog/aclchk.c:2748 #, c-format msgid "permission denied for statistics object %s" msgstr "keine Berechtigung für Statistikobjekt %s" -#: catalog/aclchk.c:2749 +#: catalog/aclchk.c:2751 #, c-format msgid "permission denied for subscription %s" msgstr "keine Berechtigung für Subskription %s" -#: catalog/aclchk.c:2752 +#: catalog/aclchk.c:2754 #, c-format msgid "permission denied for table %s" msgstr "keine Berechtigung für Tabelle %s" -#: catalog/aclchk.c:2755 +#: catalog/aclchk.c:2757 #, c-format msgid "permission denied for tablespace %s" msgstr "keine Berechtigung für Tablespace %s" -#: catalog/aclchk.c:2758 +#: catalog/aclchk.c:2760 #, c-format msgid "permission denied for text search configuration %s" msgstr "keine Berechtigung für Textsuchekonfiguration %s" -#: catalog/aclchk.c:2761 +#: catalog/aclchk.c:2763 #, c-format msgid "permission denied for text search dictionary %s" msgstr "keine Berechtigung für Textsuchewörterbuch %s" -#: catalog/aclchk.c:2764 +#: catalog/aclchk.c:2766 #, c-format msgid "permission denied for type %s" msgstr "keine Berechtigung für Typ %s" -#: catalog/aclchk.c:2767 +#: catalog/aclchk.c:2769 #, c-format msgid "permission denied for view %s" msgstr "keine Berechtigung für Sicht %s" -#: catalog/aclchk.c:2803 +#: catalog/aclchk.c:2805 #, c-format msgid "must be owner of aggregate %s" msgstr "Berechtigung nur für Eigentümer der Aggregatfunktion %s" -#: catalog/aclchk.c:2806 +#: catalog/aclchk.c:2808 #, c-format msgid "must be owner of collation %s" msgstr "Berechtigung nur für Eigentümer der Sortierfolge %s" -#: catalog/aclchk.c:2809 +#: catalog/aclchk.c:2811 #, c-format msgid "must be owner of conversion %s" msgstr "Berechtigung nur für Eigentümer der Konversion %s" -#: catalog/aclchk.c:2812 +#: catalog/aclchk.c:2814 #, c-format msgid "must be owner of database %s" msgstr "Berechtigung nur für Eigentümer der Datenbank %s" -#: catalog/aclchk.c:2815 +#: catalog/aclchk.c:2817 #, c-format msgid "must be owner of domain %s" msgstr "Berechtigung nur für Eigentümer der Domäne %s" -#: catalog/aclchk.c:2818 +#: catalog/aclchk.c:2820 #, c-format msgid "must be owner of event trigger %s" msgstr "Berechtigung nur für Eigentümer des Ereignistriggers %s" -#: catalog/aclchk.c:2821 +#: catalog/aclchk.c:2823 #, c-format msgid "must be owner of extension %s" msgstr "Berechtigung nur für Eigentümer der Erweiterung %s" -#: catalog/aclchk.c:2824 +#: catalog/aclchk.c:2826 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "Berechtigung nur für Eigentümer des Fremddaten-Wrappers %s" -#: catalog/aclchk.c:2827 +#: catalog/aclchk.c:2829 #, c-format msgid "must be owner of foreign server %s" msgstr "Berechtigung nur für Eigentümer des Fremdservers %s" -#: catalog/aclchk.c:2830 +#: catalog/aclchk.c:2832 #, c-format msgid "must be owner of foreign table %s" msgstr "Berechtigung nur für Eigentümer der Fremdtabelle %s" -#: catalog/aclchk.c:2833 +#: catalog/aclchk.c:2835 #, c-format msgid "must be owner of function %s" msgstr "Berechtigung nur für Eigentümer der Funktion %s" -#: catalog/aclchk.c:2836 +#: catalog/aclchk.c:2838 #, c-format msgid "must be owner of index %s" msgstr "Berechtigung nur für Eigentümer des Index %s" -#: catalog/aclchk.c:2839 +#: catalog/aclchk.c:2841 #, c-format msgid "must be owner of language %s" msgstr "Berechtigung nur für Eigentümer der Sprache %s" -#: catalog/aclchk.c:2842 +#: catalog/aclchk.c:2844 #, c-format msgid "must be owner of large object %s" msgstr "Berechtigung nur für Eigentümer des Large Object %s" -#: catalog/aclchk.c:2845 +#: catalog/aclchk.c:2847 #, c-format msgid "must be owner of materialized view %s" msgstr "Berechtigung nur für Eigentümer der materialisierten Sicht %s" -#: catalog/aclchk.c:2848 +#: catalog/aclchk.c:2850 #, c-format msgid "must be owner of operator class %s" msgstr "Berechtigung nur für Eigentümer der Operatorklasse %s" -#: catalog/aclchk.c:2851 +#: catalog/aclchk.c:2853 #, c-format msgid "must be owner of operator %s" msgstr "Berechtigung nur für Eigentümer des Operators %s" -#: catalog/aclchk.c:2854 +#: catalog/aclchk.c:2856 #, c-format msgid "must be owner of operator family %s" msgstr "Berechtigung nur für Eigentümer der Operatorfamilie %s" -#: catalog/aclchk.c:2857 +#: catalog/aclchk.c:2859 #, c-format msgid "must be owner of procedure %s" msgstr "Berechtigung nur für Eigentümer der Prozedur %s" -#: catalog/aclchk.c:2860 +#: catalog/aclchk.c:2862 #, c-format msgid "must be owner of publication %s" msgstr "Berechtigung nur für Eigentümer der Publikation %s" -#: catalog/aclchk.c:2863 +#: catalog/aclchk.c:2865 #, c-format msgid "must be owner of routine %s" msgstr "Berechtigung nur für Eigentümer der Routine %s" -#: catalog/aclchk.c:2866 +#: catalog/aclchk.c:2868 #, c-format msgid "must be owner of sequence %s" msgstr "Berechtigung nur für Eigentümer der Sequenz %s" -#: catalog/aclchk.c:2869 +#: catalog/aclchk.c:2871 #, c-format msgid "must be owner of subscription %s" msgstr "Berechtigung nur für Eigentümer der Subskription %s" -#: catalog/aclchk.c:2872 +#: catalog/aclchk.c:2874 #, c-format msgid "must be owner of table %s" msgstr "Berechtigung nur für Eigentümer der Tabelle %s" -#: catalog/aclchk.c:2875 +#: catalog/aclchk.c:2877 #, c-format msgid "must be owner of type %s" msgstr "Berechtigung nur für Eigentümer des Typs %s" -#: catalog/aclchk.c:2878 +#: catalog/aclchk.c:2880 #, c-format msgid "must be owner of view %s" msgstr "Berechtigung nur für Eigentümer der Sicht %s" -#: catalog/aclchk.c:2881 +#: catalog/aclchk.c:2883 #, c-format msgid "must be owner of schema %s" msgstr "Berechtigung nur für Eigentümer des Schemas %s" -#: catalog/aclchk.c:2884 +#: catalog/aclchk.c:2886 #, c-format msgid "must be owner of statistics object %s" msgstr "Berechtigung nur für Eigentümer des Statistikobjekts %s" -#: catalog/aclchk.c:2887 +#: catalog/aclchk.c:2889 #, c-format msgid "must be owner of tablespace %s" msgstr "Berechtigung nur für Eigentümer des Tablespace %s" -#: catalog/aclchk.c:2890 +#: catalog/aclchk.c:2892 #, c-format msgid "must be owner of text search configuration %s" msgstr "Berechtigung nur für Eigentümer der Textsuchekonfiguration %s" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2895 #, c-format msgid "must be owner of text search dictionary %s" msgstr "Berechtigung nur für Eigentümer des Textsuchewörterbuches %s" -#: catalog/aclchk.c:2907 +#: catalog/aclchk.c:2909 #, c-format msgid "must be owner of relation %s" msgstr "Berechtigung nur für Eigentümer der Relation %s" -#: catalog/aclchk.c:2953 +#: catalog/aclchk.c:2955 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "keine Berechtigung für Spalte »%s« von Relation »%s«" -#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 +#: catalog/aclchk.c:3189 catalog/aclchk.c:3208 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "Attribut %d der Relation mit OID %u existiert nicht" -#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 +#: catalog/aclchk.c:3246 catalog/aclchk.c:3309 catalog/aclchk.c:3948 #, c-format msgid "relation with OID %u does not exist" msgstr "Relation mit OID %u existiert nicht" -#: catalog/aclchk.c:3492 +#: catalog/aclchk.c:3494 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "Parameter-ACL mit OID %u existiert nicht" -#: catalog/aclchk.c:3571 catalog/objectaddress.c:1055 +#: catalog/aclchk.c:3573 catalog/objectaddress.c:1055 #: catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 #: storage/large_object/inv_api.c:247 #, c-format msgid "large object %u does not exist" msgstr "Large Object %u existiert nicht" -#: catalog/aclchk.c:3665 commands/collationcmds.c:849 -#: commands/publicationcmds.c:1846 +#: catalog/aclchk.c:3667 commands/collationcmds.c:849 +#: commands/publicationcmds.c:1851 #, c-format msgid "schema with OID %u does not exist" msgstr "Schema mit OID %u existiert nicht" -#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 +#: catalog/aclchk.c:3741 catalog/aclchk.c:3768 catalog/aclchk.c:3797 #: utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" @@ -4840,7 +4850,7 @@ msgstr "zusammengesetzter Typ %s kann nicht Teil von sich selbst werden" msgid "virtual generated column \"%s\" cannot have a user-defined type" msgstr "virtuelle generierte Spalte »%s« kann keinen benutzerdefinierten Typ haben" -#: catalog/heap.c:674 catalog/heap.c:3294 +#: catalog/heap.c:674 catalog/heap.c:3295 #, c-format msgid "Virtual generated columns that make use of user-defined types are not yet supported." msgstr "Virtuelle generierte Spalten, die benutzerdefinierte Typen verwenden, werden noch nicht unterstützt." @@ -4900,43 +4910,43 @@ msgstr "zur partitionierten Tabelle »%s« kann kein NO-INHERIT-Constraint hinzu msgid "check constraint \"%s\" already exists" msgstr "Check-Constraint »%s« existiert bereits" -#: catalog/heap.c:2626 catalog/heap.c:2946 +#: catalog/heap.c:2626 catalog/heap.c:2947 #, c-format msgid "cannot add not-null constraint on system column \"%s\"" msgstr "zur Systemspalte »%s« kann kein Not-Null-Constraint hinzugefügt werden" -#: catalog/heap.c:2653 catalog/heap.c:2779 catalog/heap.c:3030 -#: catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9821 +#: catalog/heap.c:2654 catalog/heap.c:2780 catalog/heap.c:3031 +#: catalog/index.c:915 catalog/pg_constraint.c:1025 commands/tablecmds.c:9821 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "Constraint »%s« existiert bereits für Relation »%s«" -#: catalog/heap.c:2786 +#: catalog/heap.c:2787 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\"" msgstr "Constraint »%s« kollidiert mit nicht vererbtem Constraint für Relation »%s«" -#: catalog/heap.c:2797 +#: catalog/heap.c:2798 #, c-format msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgstr "Constraint »%s« kollidiert mit vererbtem Constraint für Relation »%s«" -#: catalog/heap.c:2807 +#: catalog/heap.c:2808 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\"" msgstr "Constraint »%s« kollidiert mit NOT-VALID-Constraint für Relation »%s«" -#: catalog/heap.c:2819 +#: catalog/heap.c:2820 #, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on relation \"%s\"" msgstr "Constraint »%s« kollidiert mit NOT-ENFORCED-Constraint für Relation »%s«" -#: catalog/heap.c:2824 +#: catalog/heap.c:2825 #, c-format msgid "merging constraint \"%s\" with inherited definition" msgstr "Constraint »%s« wird mit geerbter Definition zusammengeführt" -#: catalog/heap.c:2848 catalog/pg_constraint.c:786 catalog/pg_constraint.c:1137 +#: catalog/heap.c:2849 catalog/pg_constraint.c:803 catalog/pg_constraint.c:1154 #: commands/tablecmds.c:3179 commands/tablecmds.c:3499 #: commands/tablecmds.c:7286 commands/tablecmds.c:7967 #: commands/tablecmds.c:17583 commands/tablecmds.c:17765 @@ -4944,104 +4954,104 @@ msgstr "Constraint »%s« wird mit geerbter Definition zusammengeführt" msgid "too many inheritance parents" msgstr "zu viele Elterntabellen" -#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 +#: catalog/heap.c:2966 parser/parse_utilcmd.c:2655 #, c-format msgid "conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" msgstr "widersprüchliche NO INHERIT-Deklaration für Not-Null-Constraint für Spalte »%s«" -#: catalog/heap.c:2979 +#: catalog/heap.c:2980 #, c-format msgid "conflicting not-null constraint names \"%s\" and \"%s\"" msgstr "widersprüchliche Not-Null-Constraint-Namen »%s« und »%s«" -#: catalog/heap.c:3009 +#: catalog/heap.c:3010 #, c-format msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" msgstr "kann keinen Not-Null-Constraint mit NO INHERIT für Spalte »%s« definieren" -#: catalog/heap.c:3011 +#: catalog/heap.c:3012 #, c-format msgid "The column has an inherited not-null constraint." msgstr "Die Spalte hat einen geerbten Not-Null-Constraint." -#: catalog/heap.c:3201 +#: catalog/heap.c:3202 #, c-format msgid "cannot use generated column \"%s\" in column generation expression" msgstr "generierte Spalte »%s« kann nicht im Spaltengenerierungsausdruck verwendet werden" -#: catalog/heap.c:3203 +#: catalog/heap.c:3204 #, c-format msgid "A generated column cannot reference another generated column." msgstr "Eine generierte Spalte kann nicht auf eine andere generierte Spalte verweisen." -#: catalog/heap.c:3209 +#: catalog/heap.c:3210 #, c-format msgid "cannot use whole-row variable in column generation expression" msgstr "Variable mit Verweis auf die ganze Zeile kann nicht im Spaltengenerierungsausdruck verwendet werden" -#: catalog/heap.c:3210 +#: catalog/heap.c:3211 #, c-format msgid "This would cause the generated column to depend on its own value." msgstr "Dadurch würde die generierte Spalte von ihrem eigenen Wert abhängen." -#: catalog/heap.c:3277 +#: catalog/heap.c:3278 #, c-format msgid "generation expression uses user-defined function" msgstr "Generierungsausdruck verwendet benutzerdefinierte Funktion" -#: catalog/heap.c:3278 +#: catalog/heap.c:3279 #, c-format msgid "Virtual generated columns that make use of user-defined functions are not yet supported." msgstr "Virtuelle generierte Spalten, die benutzerdefinierte Funktionen verwenden, werden noch nicht unterstützt." -#: catalog/heap.c:3293 +#: catalog/heap.c:3294 #, c-format msgid "generation expression uses user-defined type" msgstr "Generierungsausdruck verwendet benutzerdefinierten Typ" -#: catalog/heap.c:3345 +#: catalog/heap.c:3346 #, c-format msgid "generation expression is not immutable" msgstr "Generierungsausdruck ist nicht »immutable«" -#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 +#: catalog/heap.c:3378 rewrite/rewriteHandler.c:1288 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "Spalte »%s« hat Typ %s, aber der Vorgabeausdruck hat Typ %s" -#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 +#: catalog/heap.c:3383 commands/prepare.c:334 parser/analyze.c:2906 #: parser/parse_target.c:595 parser/parse_target.c:885 -#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1290 +#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1293 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "Sie müssen den Ausdruck umschreiben oder eine Typumwandlung vornehmen." -#: catalog/heap.c:3429 +#: catalog/heap.c:3430 #, c-format msgid "only table \"%s\" can be referenced in check constraint" msgstr "nur Verweise auf Tabelle »%s« sind im Check-Constraint zugelassen" -#: catalog/heap.c:3735 +#: catalog/heap.c:3736 #, c-format msgid "unsupported ON COMMIT and foreign key combination" msgstr "nicht unterstützte Kombination aus ON COMMIT und Fremdschlüssel" -#: catalog/heap.c:3736 +#: catalog/heap.c:3737 #, c-format msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting." msgstr "Tabelle »%s« verweist auf »%s«, aber sie haben nicht die gleiche ON-COMMIT-Einstellung." -#: catalog/heap.c:3741 +#: catalog/heap.c:3742 #, c-format msgid "cannot truncate a table referenced in a foreign key constraint" msgstr "kann eine Tabelle, die in einen Fremdschlüssel-Constraint eingebunden ist, nicht leeren" -#: catalog/heap.c:3742 +#: catalog/heap.c:3743 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "Tabelle »%s« verweist auf »%s«." -#: catalog/heap.c:3744 +#: catalog/heap.c:3745 #, c-format msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "Leeren Sie die Tabelle »%s« gleichzeitig oder verwenden Sie TRUNCATE ... CASCADE." @@ -5139,7 +5149,7 @@ msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "ungültiger Index »%s.%s« einer TOAST-Tabelle kann nicht reindizert werden, wird übersprungen" #: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 -#: commands/trigger.c:5817 +#: commands/trigger.c:5838 #, c-format msgid "cross-database references are not implemented: \"%s.%s.%s\"" msgstr "Verweise auf andere Datenbanken sind nicht implementiert: »%s.%s.%s«" @@ -5986,48 +5996,58 @@ msgstr "Sortierfolge »%s« existiert bereits" msgid "collation \"%s\" for encoding \"%s\" already exists" msgstr "Sortierfolge »%s« für Kodierung »%s« existiert bereits" -#: catalog/pg_constraint.c:763 commands/tablecmds.c:7952 +#: catalog/pg_constraint.c:764 commands/tablecmds.c:7952 #, c-format msgid "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation \"%s\"" msgstr "NO INHERIT-Status von NOT-NULL-Constraint »%s« von Relation »%s« kann nicht geändert werden" -#: catalog/pg_constraint.c:765 commands/tablecmds.c:9584 +#: catalog/pg_constraint.c:766 commands/tablecmds.c:9584 #, c-format msgid "You might need to make the existing constraint inheritable using %s." msgstr "Sie müssen möglicherweise den bestehenden Constraint mit %s vererbbar machen." -#: catalog/pg_constraint.c:775 commands/tablecmds.c:8301 +#: catalog/pg_constraint.c:776 commands/tablecmds.c:8301 #, c-format msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" msgstr "inkompatibler NOT-VALID-Constraint »%s« für Relation »%s«" -#: catalog/pg_constraint.c:777 commands/tablecmds.c:8303 +#: catalog/pg_constraint.c:778 commands/tablecmds.c:8303 #: commands/tablecmds.c:9596 #, c-format msgid "You might need to validate it using %s." msgstr "Sie müssen ihn möglicherweise mit %s validieren." -#: catalog/pg_constraint.c:1016 +#: catalog/pg_constraint.c:792 +#, c-format +msgid "cannot create not-null constraint \"%s\" on column \"%s\" of table \"%s\"" +msgstr "kann Not-Null-Constraint »%s« für Spalte »%s« von Tabelle »%s« nicht erzeugen" + +#: catalog/pg_constraint.c:794 +#, c-format +msgid "A not-null constraint named \"%s\" already exists for this column." +msgstr "Ein Not-Null-Constraint namens »%s« existiert bereits für diese Spalte." + +#: catalog/pg_constraint.c:1033 #, c-format msgid "constraint \"%s\" for domain %s already exists" msgstr "Constraint »%s« für Domäne %s existiert bereits" -#: catalog/pg_constraint.c:1217 catalog/pg_constraint.c:1310 +#: catalog/pg_constraint.c:1234 catalog/pg_constraint.c:1327 #, c-format msgid "constraint \"%s\" for table \"%s\" does not exist" msgstr "Constraint »%s« für Tabelle »%s« existiert nicht" -#: catalog/pg_constraint.c:1410 +#: catalog/pg_constraint.c:1427 #, c-format msgid "constraint \"%s\" for domain %s does not exist" msgstr "Constraint »%s« für Domäne %s existiert nicht" -#: catalog/pg_constraint.c:1664 +#: catalog/pg_constraint.c:1681 #, c-format msgid "invalid type for PERIOD part of foreign key" msgstr "ungültiger Typ für den PERIOD-Teil des Fremdschlüssels" -#: catalog/pg_constraint.c:1665 +#: catalog/pg_constraint.c:1682 #, c-format msgid "Only range and multirange are supported." msgstr "Nur range und multirange werden unterstützt." @@ -6618,7 +6638,7 @@ msgstr "Server »%s« existiert bereits" msgid "language \"%s\" already exists" msgstr "Sprache »%s« existiert bereits" -#: commands/alter.c:95 commands/publicationcmds.c:865 +#: commands/alter.c:95 commands/publicationcmds.c:870 #, c-format msgid "publication \"%s\" already exists" msgstr "Publikation »%s« existiert bereits" @@ -6765,27 +6785,27 @@ msgstr "überspringe Analysieren des Vererbungsbaums »%s.%s« --- dieser Vererb msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables" msgstr "überspringe Analysieren des Vererbungsbaums »%s.%s« --- dieser Vererbungsbaum enthält keine analysierbaren abgeleiteten Tabellen" -#: commands/async.c:612 +#: commands/async.c:611 #, c-format msgid "channel name cannot be empty" msgstr "Kanalname kann nicht leer sein" -#: commands/async.c:618 +#: commands/async.c:617 #, c-format msgid "channel name too long" msgstr "Kanalname zu lang" -#: commands/async.c:623 +#: commands/async.c:622 #, c-format msgid "payload string too long" msgstr "Payload-Zeichenkette zu lang" -#: commands/async.c:842 +#: commands/async.c:841 #, c-format msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY" msgstr "PREPARE kann nicht in einer Transaktion ausgeführt werden, die LISTEN, UNLISTEN oder NOTIFY ausgeführt hat" -#: commands/async.c:946 +#: commands/async.c:945 #, c-format msgid "too many notifications in the NOTIFY queue" msgstr "zu viele Benachrichtigungen in NOTIFY-Schlange" @@ -6805,10 +6825,12 @@ msgstr "Der Serverprozess mit PID %d gehört zu denen mit den ältesten Transakt msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction." msgstr "Die NOTIFY-Schlange kann erst geleert werden, wenn dieser Prozess seine aktuelle Transaktion beendet." -#: commands/cluster.c:127 +#: commands/cluster.c:127 commands/dbcommands.c:2356 +#: commands/explain_state.c:165 commands/indexcmds.c:2846 commands/vacuum.c:234 +#: commands/vacuum.c:308 #, c-format -msgid "unrecognized CLUSTER option \"%s\"" -msgstr "unbekannte CLUSTER-Option »%s«" +msgid "unrecognized %s option \"%s\"" +msgstr "unbekannte %s-Option »%s«" #: commands/cluster.c:158 commands/cluster.c:421 #, c-format @@ -6902,9 +6924,9 @@ msgstr "Attribut »%s« für Sortierfolge unbekannt" #: commands/collationcmds.c:123 commands/collationcmds.c:129 #: commands/define.c:375 commands/tablecmds.c:8394 #: replication/pgoutput/pgoutput.c:321 replication/pgoutput/pgoutput.c:344 -#: replication/pgoutput/pgoutput.c:358 replication/pgoutput/pgoutput.c:368 -#: replication/pgoutput/pgoutput.c:378 replication/pgoutput/pgoutput.c:388 -#: replication/pgoutput/pgoutput.c:400 replication/walsender.c:1137 +#: replication/pgoutput/pgoutput.c:362 replication/pgoutput/pgoutput.c:372 +#: replication/pgoutput/pgoutput.c:382 replication/pgoutput/pgoutput.c:392 +#: replication/pgoutput/pgoutput.c:404 replication/walsender.c:1137 #: replication/walsender.c:1159 replication/walsender.c:1169 #: replication/walsender.c:1178 replication/walsender.c:1420 #: replication/walsender.c:1429 @@ -6984,17 +7006,17 @@ msgstr "Version der Standardsortierfolge kann nicht aufgefrischt werden" msgid "Use %s instead." msgstr "Verwenden Sie stattdessen %s." -#: commands/collationcmds.c:476 commands/dbcommands.c:2605 +#: commands/collationcmds.c:476 commands/dbcommands.c:2606 #, c-format msgid "changing version from %s to %s" msgstr "Version wird von %s in %s geändert" -#: commands/collationcmds.c:491 commands/dbcommands.c:2618 +#: commands/collationcmds.c:491 commands/dbcommands.c:2619 #, c-format msgid "version has not changed" msgstr "Version hat sich nicht geändert" -#: commands/collationcmds.c:524 commands/dbcommands.c:2788 +#: commands/collationcmds.c:524 commands/dbcommands.c:2789 #: utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" @@ -7017,8 +7039,8 @@ msgstr "keine brauchbaren System-Locales gefunden" #: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 #: commands/dbcommands.c:2034 commands/dbcommands.c:2232 -#: commands/dbcommands.c:2472 commands/dbcommands.c:2565 -#: commands/dbcommands.c:2689 commands/dbcommands.c:3200 +#: commands/dbcommands.c:2473 commands/dbcommands.c:2566 +#: commands/dbcommands.c:2690 commands/dbcommands.c:3201 #: utils/init/postinit.c:1016 utils/init/postinit.c:1080 #: utils/init/postinit.c:1153 #, c-format @@ -7112,7 +7134,7 @@ msgstr "generierte Spalten werden in COPY-FROM-WHERE-Bedingungen nicht unterstü #: commands/copy.c:183 commands/tablecmds.c:14418 commands/tablecmds.c:19824 #: commands/tablecmds.c:19906 commands/trigger.c:660 -#: rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 +#: rewrite/rewriteHandler.c:952 rewrite/rewriteHandler.c:987 #, c-format msgid "Column \"%s\" is a generated column." msgstr "Spalte »%s« ist eine generierte Spalte." @@ -7179,7 +7201,7 @@ msgstr "Argument von Option »%s« muss eine Liste aus Spaltennamen sein" msgid "argument to option \"%s\" must be a valid encoding name" msgstr "Argument von Option »%s« muss ein gültiger Kodierungsname sein" -#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2421 #, c-format msgid "option \"%s\" not recognized" msgstr "Option »%s« nicht erkannt" @@ -7277,7 +7299,7 @@ msgstr "Spalte »%s« ist eine generierte Spalte" msgid "Generated columns cannot be used in COPY." msgstr "Generierte Spalten können nicht in COPY verwendet werden." -#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:239 +#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:260 #: commands/tablecmds.c:2593 commands/tablecmds.c:3101 #: commands/tablecmds.c:3930 parser/parse_relation.c:3798 #: parser/parse_relation.c:3808 parser/parse_relation.c:3826 @@ -7735,7 +7757,7 @@ msgstr "%s ist kein gültiger Kodierungsname" msgid "unrecognized locale provider: %s" msgstr "unbekannter Locale-Provider: %s" -#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2454 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" @@ -7756,7 +7778,7 @@ msgstr "Template-Datenbank »%s« existiert nicht" msgid "cannot use invalid database \"%s\" as template" msgstr "ungültige Datenbank »%s« kann nicht als Template verwendet werden" -#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2484 #: utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." @@ -8030,62 +8052,57 @@ msgstr "einige Relationen von Datenbank »%s« ist bereits in Tablespace »%s«" msgid "You must move them back to the database's default tablespace before using this command." msgstr "Sie müssen sie zurück in den Standard-Tablespace der Datenbank verschieben, bevor Sie diesen Befehl verwenden können." -#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 -#: commands/dbcommands.c:3338 commands/dbcommands.c:3452 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3039 +#: commands/dbcommands.c:3339 commands/dbcommands.c:3453 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "einige nutzlose Dateien wurde möglicherweise im alten Datenbankverzeichnis »%s« zurückgelassen" -#: commands/dbcommands.c:2356 -#, c-format -msgid "unrecognized DROP DATABASE option \"%s\"" -msgstr "unbekannte DROP-DATABASE-Option »%s«" - -#: commands/dbcommands.c:2434 +#: commands/dbcommands.c:2435 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "Option »%s« kann nicht mit anderen Optionen angegeben werden" -#: commands/dbcommands.c:2482 +#: commands/dbcommands.c:2483 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "ungültige Datenbank »%s« kann nicht geändert werden" -#: commands/dbcommands.c:2499 +#: commands/dbcommands.c:2500 #, c-format msgid "cannot disallow connections for current database" msgstr "Verbindungen mit der aktuellen Datenbank können nicht verboten werden" -#: commands/dbcommands.c:2729 +#: commands/dbcommands.c:2730 #, c-format msgid "permission denied to change owner of database" msgstr "keine Berechtigung, um Eigentümer der Datenbank zu ändern" -#: commands/dbcommands.c:3144 +#: commands/dbcommands.c:3145 #, c-format msgid "There are %d other session(s) and %d prepared transaction(s) using the database." msgstr "%d andere Sitzung(en) und %d vorbereitete Transaktion(en) verwenden die Datenbank." -#: commands/dbcommands.c:3147 +#: commands/dbcommands.c:3148 #, c-format msgid "There is %d other session using the database." msgid_plural "There are %d other sessions using the database." msgstr[0] "%d andere Sitzung verwendet die Datenbank." msgstr[1] "%d andere Sitzungen verwenden die Datenbank." -#: commands/dbcommands.c:3152 storage/ipc/procarray.c:3860 +#: commands/dbcommands.c:3153 storage/ipc/procarray.c:3860 #, c-format msgid "There is %d prepared transaction using the database." msgid_plural "There are %d prepared transactions using the database." msgstr[0] "%d vorbereitete Transaktion verwendet die Datenbank." msgstr[1] "%d vorbereitete Transaktionen verwenden die Datenbank." -#: commands/dbcommands.c:3294 +#: commands/dbcommands.c:3295 #, c-format msgid "missing directory \"%s\"" msgstr "Verzeichnis »%s« fehlt" -#: commands/dbcommands.c:3352 commands/tablespace.c:184 +#: commands/dbcommands.c:3353 commands/tablespace.c:184 #: commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" @@ -8165,7 +8182,7 @@ msgstr "Sortierfolge »%s« existiert nicht, wird übersprungen" msgid "conversion \"%s\" does not exist, skipping" msgstr "Konversion »%s« existiert nicht, wird übersprungen" -#: commands/dropcmds.c:288 commands/statscmds.c:682 +#: commands/dropcmds.c:288 commands/statscmds.c:703 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "Statistikobjekt »%s« existiert nicht, wird übersprungen" @@ -8358,14 +8375,10 @@ msgid "%s can only be called in an event trigger function" msgstr "%s kann nur in einer Ereignistriggerfunktion aufgerufen werden" #: commands/explain_state.c:133 commands/explain_state.c:158 +#: replication/walsender.c:1151 #, c-format -msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" -msgstr "unbekannter Wert für EXPLAIN-Option »%s«: »%s«" - -#: commands/explain_state.c:165 -#, c-format -msgid "unrecognized EXPLAIN option \"%s\"" -msgstr "unbekannte EXPLAIN-Option »%s«" +msgid "unrecognized value for %s option \"%s\": \"%s\"" +msgstr "unbekannter Wert für %s-Option »%s«: »%s«" #: commands/explain_state.c:174 commands/explain_state.c:186 #: commands/explain_state.c:192 @@ -8375,8 +8388,8 @@ msgstr "EXPLAIN-Option %s erfordert ANALYZE" #: commands/explain_state.c:198 #, c-format -msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" -msgstr "EXPLAIN-Optionen ANALYZE und GENERIC_PLAN können nicht zusammen verwendet werden" +msgid "%s options %s and %s cannot be used together" +msgstr "%s-Optionen %s und %s können nicht zusammen verwendet werden" #: commands/extension.c:177 commands/extension.c:3323 #, c-format @@ -9336,7 +9349,7 @@ msgid "could not determine which collation to use for index expression" msgstr "konnte die für den Indexausdruck zu verwendende Sortierfolge nicht bestimmen" #: commands/indexcmds.c:2097 commands/tablecmds.c:19994 commands/typecmds.c:812 -#: parser/parse_expr.c:2806 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 +#: parser/parse_expr.c:2815 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 #: utils/adt/misc.c:630 #, c-format msgid "collations are not supported by type %s" @@ -9414,11 +9427,6 @@ msgstr "konnte keinen Contained-By-Operator für Typ %s ermitteln" msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." msgstr "Konnte Vergleichstyp %d für Operatorfamilie »%s« von Zugriffsmethode »%s« nicht übersetzen." -#: commands/indexcmds.c:2846 -#, c-format -msgid "unrecognized REINDEX option \"%s\"" -msgstr "unbekannte REINDEX-Option »%s«" - #: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" @@ -9844,7 +9852,7 @@ msgstr "Operator-Attribut »%s« kann nicht geändert werden" msgid "operator attribute \"%s\" cannot be changed if it has already been set" msgstr "Operator-Attribut »%s« kann nicht geändert werden, wenn es schon gesetzt wurde" -#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:146 +#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:152 #: commands/tablecmds.c:1800 commands/tablecmds.c:2400 #: commands/tablecmds.c:3824 commands/tablecmds.c:6793 #: commands/tablecmds.c:10114 commands/tablecmds.c:19565 @@ -9946,210 +9954,210 @@ msgstr "vorbereitete Anweisung »%s« existiert nicht" msgid "must be superuser to create custom procedural language" msgstr "nur Superuser können maßgeschneiderte prozedurale Sprachen erzeugen" -#: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 +#: commands/publicationcmds.c:135 libpq/auth-oauth.c:850 #: postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 #: utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "ungültige Listensyntax für Parameter »%s«" -#: commands/publicationcmds.c:149 +#: commands/publicationcmds.c:154 #, c-format msgid "unrecognized value for publication option \"%s\": \"%s\"" msgstr "unbekannter Wert für Publikationsoption »%s«: »%s«" -#: commands/publicationcmds.c:170 +#: commands/publicationcmds.c:175 #, c-format msgid "unrecognized publication parameter: \"%s\"" msgstr "unbekannter Publikationsparameter: »%s«" -#: commands/publicationcmds.c:211 +#: commands/publicationcmds.c:216 #, c-format msgid "no schema has been selected for CURRENT_SCHEMA" msgstr "kein Schema für CURRENT_SCHEMA ausgewählt" -#: commands/publicationcmds.c:592 +#: commands/publicationcmds.c:597 msgid "System columns are not allowed." msgstr "Systemspalten sind nicht erlaubt." -#: commands/publicationcmds.c:599 commands/publicationcmds.c:604 -#: commands/publicationcmds.c:621 +#: commands/publicationcmds.c:604 commands/publicationcmds.c:609 +#: commands/publicationcmds.c:626 msgid "User-defined operators are not allowed." msgstr "Benutzerdefinierte Operatoren sind nicht erlaubt." -#: commands/publicationcmds.c:645 +#: commands/publicationcmds.c:650 msgid "Only columns, constants, built-in operators, built-in data types, built-in collations, and immutable built-in functions are allowed." msgstr "Nur Spalten, Konstanten, eingebaute Operatoren, eingebaute Datentypen, eingebaute Sortierfolgen und eingebaute Funktionen, die »immutable« sind, sind erlaubt." -#: commands/publicationcmds.c:657 +#: commands/publicationcmds.c:662 msgid "User-defined types are not allowed." msgstr "Benutzerdefinierte Typen sind nicht erlaubt." -#: commands/publicationcmds.c:660 +#: commands/publicationcmds.c:665 msgid "User-defined or built-in mutable functions are not allowed." msgstr "Benutzerdefinierte Funktionen oder eingebaute Funktionen, die nicht »immutable« sind, sind nicht erlaubt." -#: commands/publicationcmds.c:663 +#: commands/publicationcmds.c:668 msgid "User-defined collations are not allowed." msgstr "Benutzerdefinierte Sortierfolgen sind nicht erlaubt." -#: commands/publicationcmds.c:673 +#: commands/publicationcmds.c:678 #, c-format msgid "invalid publication WHERE expression" msgstr "ungültiger WHERE-Ausdruck für Publikation" -#: commands/publicationcmds.c:726 +#: commands/publicationcmds.c:731 #, c-format msgid "cannot use publication WHERE clause for relation \"%s\"" msgstr "Publikations-WHERE-Ausdruck kann nicht für Relation »%s« verwendet werden" -#: commands/publicationcmds.c:728 +#: commands/publicationcmds.c:733 #, c-format msgid "WHERE clause cannot be used for a partitioned table when %s is false." msgstr "WHERE-Klausel kann nicht für eine partitionierte Tabelle verwendet werden, wenn %s falsch ist." -#: commands/publicationcmds.c:801 commands/publicationcmds.c:815 +#: commands/publicationcmds.c:806 commands/publicationcmds.c:820 #, c-format msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" msgstr "für Relation »%s.%s« in Publikation »%s« kann keine Spaltenliste verwendet werden" -#: commands/publicationcmds.c:804 +#: commands/publicationcmds.c:809 #, c-format msgid "Column lists cannot be specified in publications containing FOR TABLES IN SCHEMA elements." msgstr "Spaltenlisten können nicht in Publikationen, die FOR-TABLES-IN-SCHEMA-Elemente enthalten, angegeben werden." -#: commands/publicationcmds.c:818 +#: commands/publicationcmds.c:823 #, c-format msgid "Column lists cannot be specified for partitioned tables when %s is false." msgstr "Spaltenlisten können nicht für partitionierte Tabellen angegeben werden, wenn %s falsch ist." -#: commands/publicationcmds.c:855 +#: commands/publicationcmds.c:860 #, c-format msgid "must be superuser to create FOR ALL TABLES publication" msgstr "nur Superuser können eine Publikation FOR ALL TABLES erzeugen" -#: commands/publicationcmds.c:930 +#: commands/publicationcmds.c:935 #, c-format msgid "must be superuser to create FOR TABLES IN SCHEMA publication" msgstr "nur Superuser können eine Publikation FOR TABLES IN SCHEMA erzeugen" -#: commands/publicationcmds.c:966 +#: commands/publicationcmds.c:971 #, c-format msgid "\"wal_level\" is insufficient to publish logical changes" msgstr "»wal_level« ist nicht ausreichend, um logische Veränderungen zu publizieren" -#: commands/publicationcmds.c:967 +#: commands/publicationcmds.c:972 #, c-format msgid "Set \"wal_level\" to \"logical\" before creating subscriptions." msgstr "Setzen Sie »wal_level« auf »logical« bevor Sie Subskriptionen erzeugen." -#: commands/publicationcmds.c:1067 commands/publicationcmds.c:1075 +#: commands/publicationcmds.c:1072 commands/publicationcmds.c:1080 #, c-format msgid "cannot set parameter \"%s\" to false for publication \"%s\"" msgstr "Parameter »%s« kann für Publikation »%s« nicht auf falsch gesetzt werden" -#: commands/publicationcmds.c:1070 +#: commands/publicationcmds.c:1075 #, c-format msgid "The publication contains a WHERE clause for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "Die Publikation enthält eine WHERE-Klausel für die partitionierte Tabelle »%s«, was nicht erlaubt ist, wenn »%s« falsch ist." -#: commands/publicationcmds.c:1078 +#: commands/publicationcmds.c:1083 #, c-format msgid "The publication contains a column list for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "Die Publikation enthält eine Spaltenliste für die partitionierte Tabelle »%s«, was nicht erlaubt ist, wenn »%s« falsch ist." -#: commands/publicationcmds.c:1399 +#: commands/publicationcmds.c:1404 #, c-format msgid "cannot add schema to publication \"%s\"" msgstr "Schema kann nicht zu Publikation »%s« hinzugefügt werden" -#: commands/publicationcmds.c:1401 +#: commands/publicationcmds.c:1406 #, c-format msgid "Schemas cannot be added if any tables that specify a column list are already part of the publication." msgstr "Schemas können nicht hinzugefügt werden, wenn Tabellen, die eine Spaltenliste angeben, schon Teil der Publikation sind." -#: commands/publicationcmds.c:1449 +#: commands/publicationcmds.c:1454 #, c-format msgid "must be superuser to add or set schemas" msgstr "nur Superuser können Schemas hinzufügen oder setzen" -#: commands/publicationcmds.c:1458 commands/publicationcmds.c:1466 +#: commands/publicationcmds.c:1463 commands/publicationcmds.c:1471 #, c-format msgid "publication \"%s\" is defined as FOR ALL TABLES" msgstr "Publikation »%s« ist als FOR ALL TABLES definiert" -#: commands/publicationcmds.c:1460 +#: commands/publicationcmds.c:1465 #, c-format msgid "Schemas cannot be added to or dropped from FOR ALL TABLES publications." msgstr "In einer FOR-ALL-TABLES-Publikation können keine Schemas hinzugefügt oder entfernt werden." -#: commands/publicationcmds.c:1468 +#: commands/publicationcmds.c:1473 #, c-format msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications." msgstr "In einer FOR-ALL-TABLES-Publikation können keine Tabellen hinzugefügt oder entfernt werden." -#: commands/publicationcmds.c:1492 commands/publicationcmds.c:1531 -#: commands/publicationcmds.c:2068 utils/cache/lsyscache.c:3774 +#: commands/publicationcmds.c:1497 commands/publicationcmds.c:1536 +#: commands/publicationcmds.c:2073 utils/cache/lsyscache.c:3774 #, c-format msgid "publication \"%s\" does not exist" msgstr "Publikation »%s« existiert nicht" -#: commands/publicationcmds.c:1694 commands/publicationcmds.c:1757 +#: commands/publicationcmds.c:1699 commands/publicationcmds.c:1762 #, c-format msgid "conflicting or redundant WHERE clauses for table \"%s\"" msgstr "widersprüchliche oder überflüssige WHERE-Klauseln für Tabelle »%s«" -#: commands/publicationcmds.c:1701 commands/publicationcmds.c:1769 +#: commands/publicationcmds.c:1706 commands/publicationcmds.c:1774 #, c-format msgid "conflicting or redundant column lists for table \"%s\"" msgstr "widersprüchliche oder überflüssige Spaltenlisten für Tabelle »%s«" -#: commands/publicationcmds.c:1903 +#: commands/publicationcmds.c:1908 #, c-format msgid "column list must not be specified in ALTER PUBLICATION ... DROP" msgstr "in ALTER PUBLICATION ... DROP darf keine Spaltenliste angegeben werden" -#: commands/publicationcmds.c:1915 +#: commands/publicationcmds.c:1920 #, c-format msgid "relation \"%s\" is not part of the publication" msgstr "Relation »%s« ist nicht Teil der Publikation" -#: commands/publicationcmds.c:1922 +#: commands/publicationcmds.c:1927 #, c-format msgid "cannot use a WHERE clause when removing a table from a publication" msgstr "WHERE-Klausel kann nicht verwendet werden, wenn eine Tabelle aus einer Publikation entfernt wird" -#: commands/publicationcmds.c:1982 +#: commands/publicationcmds.c:1987 #, c-format msgid "tables from schema \"%s\" are not part of the publication" msgstr "Tabellen von Schema »%s« sind nicht Teil der Publikation" -#: commands/publicationcmds.c:2025 commands/publicationcmds.c:2032 +#: commands/publicationcmds.c:2030 commands/publicationcmds.c:2037 #, c-format msgid "permission denied to change owner of publication \"%s\"" msgstr "keine Berechtigung, um Eigentümer der Publikation »%s« zu ändern" -#: commands/publicationcmds.c:2027 +#: commands/publicationcmds.c:2032 #, c-format msgid "The owner of a FOR ALL TABLES publication must be a superuser." msgstr "Der Eigentümer einer FOR-ALL-TABLES-Publikation muss ein Superuser sein." -#: commands/publicationcmds.c:2034 +#: commands/publicationcmds.c:2039 #, c-format msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser." msgstr "Der Eigentümer einer FOR-TABLES-IN-SCHEMA-Publikation muss ein Superuser sein." -#: commands/publicationcmds.c:2100 +#: commands/publicationcmds.c:2105 #, c-format msgid "publication with OID %u does not exist" msgstr "Publikation mit OID %u existiert nicht" -#: commands/publicationcmds.c:2133 +#: commands/publicationcmds.c:2138 #, c-format msgid "invalid value for publication parameter \"%s\": \"%s\"" msgstr "ungültiger Wert für Publikationsparameter »%s«: »%s«" -#: commands/publicationcmds.c:2134 +#: commands/publicationcmds.c:2139 #, c-format msgid "Valid values are \"%s\" and \"%s\"." msgstr "Gültige Werte sind »%s« und »%s«." @@ -10325,82 +10333,82 @@ msgstr "in CREATE STATISTICS ist nur eine einzelne Relation erlaubt" msgid "cannot define statistics for relation \"%s\"" msgstr "für Relation »%s« können keine Statistiken definiert werden" -#: commands/statscmds.c:187 +#: commands/statscmds.c:208 #, c-format msgid "statistics object \"%s\" already exists, skipping" msgstr "Statistikobjekt »%s« existiert bereits, wird übersprungen" -#: commands/statscmds.c:195 +#: commands/statscmds.c:216 #, c-format msgid "statistics object \"%s\" already exists" msgstr "Statistikobjekt »%s« existiert bereits" -#: commands/statscmds.c:206 +#: commands/statscmds.c:227 #, c-format msgid "cannot have more than %d columns in statistics" msgstr "Statistiken können nicht mehr als %d Spalten enthalten" -#: commands/statscmds.c:247 commands/statscmds.c:276 commands/statscmds.c:316 +#: commands/statscmds.c:268 commands/statscmds.c:297 commands/statscmds.c:337 #, c-format msgid "statistics creation on system columns is not supported" msgstr "Statistikerzeugung für Systemspalten wird nicht unterstützt" -#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#: commands/statscmds.c:274 commands/statscmds.c:303 commands/statscmds.c:343 #, c-format msgid "statistics creation on virtual generated columns is not supported" msgstr "Statistikerzeugung für virtuelle generierte Spalten wird nicht unterstützt" -#: commands/statscmds.c:260 commands/statscmds.c:289 +#: commands/statscmds.c:281 commands/statscmds.c:310 #, c-format msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class" msgstr "Spalte »%s« kann nicht in Statistiken verwendet werden, weil ihr Typ %s keine Standardoperatorklasse für btree hat" -#: commands/statscmds.c:339 +#: commands/statscmds.c:360 #, c-format msgid "expression cannot be used in multivariate statistics because its type %s has no default btree operator class" msgstr "Ausdruck kann nicht in multivariaten Statistiken verwendet werden, weil sein Typ %s keine Standardoperatorklasse für btree hat" -#: commands/statscmds.c:360 +#: commands/statscmds.c:381 #, c-format msgid "when building statistics on a single expression, statistics kinds may not be specified" msgstr "wenn Statistiken für einen einzelnen Ausdruck gebaut werden, kann die Statistikart nicht angegeben werden" -#: commands/statscmds.c:389 +#: commands/statscmds.c:410 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "unbekannte Statistikart »%s«" -#: commands/statscmds.c:418 +#: commands/statscmds.c:439 #, c-format msgid "extended statistics require at least 2 columns" msgstr "erweiterte Statistiken benötigen mindestens 2 Spalten" -#: commands/statscmds.c:436 +#: commands/statscmds.c:457 #, c-format msgid "duplicate column name in statistics definition" msgstr "doppelter Spaltenname in Statistikdefinition" -#: commands/statscmds.c:471 +#: commands/statscmds.c:492 #, c-format msgid "duplicate expression in statistics definition" msgstr "doppelter Ausdruck in Statistikdefinition" -#: commands/statscmds.c:646 commands/tablecmds.c:8939 +#: commands/statscmds.c:667 commands/tablecmds.c:8939 #, c-format msgid "statistics target %d is too low" msgstr "Statistikziel %d ist zu niedrig" -#: commands/statscmds.c:654 commands/tablecmds.c:8947 +#: commands/statscmds.c:675 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "setze Statistikziel auf %d herab" -#: commands/statscmds.c:678 +#: commands/statscmds.c:699 #, c-format msgid "statistics object \"%s.%s\" does not exist, skipping" msgstr "Statistikobjekt »%s.%s« existiert nicht, wird übersprungen" -#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:411 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:415 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "unbekannter Origin-Wert: »%s«" @@ -10612,7 +10620,7 @@ msgid "Verify that initial data copied from the publisher tables did not come fr msgstr "Überprüfen Sie, dass die von den publizierten Tabellen kopierten initialen Daten nicht von anderen Origins kamen." #: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 -#: replication/pgoutput/pgoutput.c:1185 +#: replication/pgoutput/pgoutput.c:1189 #, c-format msgid "cannot use different column lists for table \"%s.%s\" in different publications" msgstr "für Tabelle »%s.%s« können nicht verschiedene Spaltenlisten für verschiedene Publikationen verwendet werden" @@ -10984,7 +10992,7 @@ msgid "column \"%s\" has a collation conflict" msgstr "für Spalte »%s« besteht ein Sortierfolgenkonflikt" #: commands/tablecmds.c:3282 commands/tablecmds.c:3448 -#: commands/tablecmds.c:7277 parser/parse_expr.c:4776 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4792 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "»%s« gegen »%s«" @@ -12655,8 +12663,8 @@ msgstr "aus abgeleiteten Fremdtabellen können keine Übergangstupel gesammelt w #: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 #: executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 -#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 -#: executor/nodeModifyTable.c:3502 +#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3322 +#: executor/nodeModifyTable.c:3514 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "Verwenden Sie einen AFTER-Trigger anstelle eines BEFORE-Triggers, um Änderungen an andere Zeilen zu propagieren." @@ -12670,23 +12678,23 @@ msgid "could not serialize access due to concurrent update" msgstr "konnte Zugriff nicht serialisieren wegen gleichzeitiger Aktualisierung" #: commands/trigger.c:3452 executor/nodeModifyTable.c:1793 -#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2834 -#: executor/nodeModifyTable.c:3349 +#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2826 +#: executor/nodeModifyTable.c:3340 #, c-format msgid "could not serialize access due to concurrent delete" msgstr "konnte Zugriff nicht serialisieren wegen gleichzeitigem Löschen" -#: commands/trigger.c:4687 +#: commands/trigger.c:4671 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "aufgeschobener Trigger kann nicht in einer sicherheitsbeschränkten Operation ausgelöst werden" -#: commands/trigger.c:5868 +#: commands/trigger.c:5889 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "Constraint »%s« ist nicht aufschiebbar" -#: commands/trigger.c:5891 +#: commands/trigger.c:5912 #, c-format msgid "constraint \"%s\" does not exist" msgstr "Constraint »%s« existiert nicht" @@ -13472,117 +13480,107 @@ msgstr "abhängige Privilegien existieren" msgid "Use CASCADE to revoke them too." msgstr "Verwenden Sie CASCADE, um diese auch zu entziehen." -#: commands/vacuum.c:147 +#: commands/vacuum.c:148 #, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "»%s« muss 0 sein oder zwischen %d kB und %d kB liegen." -#: commands/vacuum.c:223 +#: commands/vacuum.c:224 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "Option BUFFER_USAGE_LIMIT muss 0 sein oder zwischen %d kB und %d kB liegen" -#: commands/vacuum.c:233 -#, c-format -msgid "unrecognized ANALYZE option \"%s\"" -msgstr "unbekannte ANALYZE-Option »%s«" - -#: commands/vacuum.c:273 +#: commands/vacuum.c:275 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "Option PARALLEL benötigt einen Wert zwischen 0 und %d" -#: commands/vacuum.c:285 +#: commands/vacuum.c:287 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "parallele Arbeitsprozesse für Vacuum müssen zwischen 0 und %d sein" -#: commands/vacuum.c:306 -#, c-format -msgid "unrecognized VACUUM option \"%s\"" -msgstr "unbekannte VACUUM-Option »%s«" - -#: commands/vacuum.c:332 +#: commands/vacuum.c:335 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL kann nicht parallel ausgeführt werden" -#: commands/vacuum.c:343 +#: commands/vacuum.c:346 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "BUFFER_USAGE_LIMIT kann nicht für VACUUM FULL angegeben werden" -#: commands/vacuum.c:357 +#: commands/vacuum.c:360 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "Option ANALYZE muss angegeben werden, wenn eine Spaltenliste angegeben ist" -#: commands/vacuum.c:369 +#: commands/vacuum.c:372 #, c-format msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL" msgstr "VACUUM-Option DISABLE_PAGE_SKIPPING kann nicht zusammen mit FULL verwendet werden" -#: commands/vacuum.c:376 +#: commands/vacuum.c:379 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "PROCESS_TOAST benötigt VACUUM FULL" -#: commands/vacuum.c:385 +#: commands/vacuum.c:388 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables" msgstr "ONLY_DATABASE_STATS kann nicht mit einer Tabellenliste angegeben werden" -#: commands/vacuum.c:394 +#: commands/vacuum.c:397 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STATS kann nicht mit anderen VACUUM-Optionen angegeben werden" -#: commands/vacuum.c:534 +#: commands/vacuum.c:537 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s kann nicht aus VACUUM oder ANALYZE ausgeführt werden" -#: commands/vacuum.c:756 +#: commands/vacuum.c:759 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "keine Berechtigung für Vacuum von »%s«, wird übersprungen" -#: commands/vacuum.c:769 +#: commands/vacuum.c:772 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "keine Berechtigung für Analyze von »%s«, wird übersprungen" -#: commands/vacuum.c:847 commands/vacuum.c:948 +#: commands/vacuum.c:850 commands/vacuum.c:951 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "überspringe Vacuum von »%s« --- Sperre nicht verfügbar" -#: commands/vacuum.c:852 +#: commands/vacuum.c:855 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "überspringe Vacuum von »%s« --- Relation existiert nicht mehr" -#: commands/vacuum.c:868 commands/vacuum.c:953 +#: commands/vacuum.c:871 commands/vacuum.c:956 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "überspringe Analyze von »%s« --- Sperre nicht verfügbar" -#: commands/vacuum.c:873 +#: commands/vacuum.c:876 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "überspringe Analyze von »%s« --- Relation existiert nicht mehr" -#: commands/vacuum.c:989 +#: commands/vacuum.c:992 #, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" msgstr "VACUUM ONLY für partitionierte Tabelle »%s« hat keine Auswirkung" -#: commands/vacuum.c:1180 +#: commands/vacuum.c:1183 #, c-format msgid "cutoff for removing and freezing tuples is far in the past" msgstr "Obergrenze für das Entfernen und Einfrieren von Tuples ist weit in der Vergangenheit" -#: commands/vacuum.c:1181 commands/vacuum.c:1186 +#: commands/vacuum.c:1184 commands/vacuum.c:1189 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -13591,37 +13589,37 @@ msgstr "" "Schließen Sie bald alle offenen Transaktionen, um Überlaufprobleme zu vermeiden.\n" "Eventuell müssen Sie auch alte vorbereitete Transaktionen committen oder zurückrollen oder unbenutzte Replikations-Slots löschen." -#: commands/vacuum.c:1185 +#: commands/vacuum.c:1188 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "Obergrenze für das Einfrieren von Multixacts ist weit in der Vergangenheit" -#: commands/vacuum.c:1947 +#: commands/vacuum.c:1950 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "einige Datenbanken sind seit über 2 Milliarden Transaktionen nicht gevacuumt worden" -#: commands/vacuum.c:1948 +#: commands/vacuum.c:1951 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "Sie haben möglicherweise bereits Daten wegen Transaktionsnummernüberlauf verloren." -#: commands/vacuum.c:2134 +#: commands/vacuum.c:2143 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "überspringe »%s« --- kann Nicht-Tabellen oder besondere Systemtabellen nicht vacuumen" -#: commands/vacuum.c:2650 +#: commands/vacuum.c:2659 #, c-format msgid "scanned index \"%s\" to remove % row versions" msgstr "Index »%s« gelesen und % Zeilenversionen entfernt" -#: commands/vacuum.c:2669 +#: commands/vacuum.c:2678 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "Index »%s« enthält %.0f Zeilenversionen in %u Seiten" -#: commands/vacuum.c:2673 +#: commands/vacuum.c:2682 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -13887,7 +13885,7 @@ msgstr "Anfrage liefert einen Wert für eine gelöschte Spalte auf Position %d." msgid "Table has type %s at ordinal position %d, but query expects %s." msgstr "Tabelle hat Typ %s auf Position %d, aber Anfrage erwartet %s." -#: executor/execExpr.c:1157 parser/parse_agg.c:869 +#: executor/execExpr.c:1157 parser/parse_agg.c:896 #, c-format msgid "window function calls cannot be nested" msgstr "Aufrufe von Fensterfunktionen können nicht geschachtelt werden" @@ -13916,12 +13914,12 @@ msgstr[1] "kann nicht mehr als %d Argumente an eine Funktion übergeben" msgid "set-valued function called in context that cannot accept a set" msgstr "Funktion mit Mengenergebnis in einem Zusammenhang aufgerufen, der keine Mengenergebnisse verarbeiten kann" -#: executor/execExpr.c:3262 parser/parse_node.c:272 parser/parse_node.c:322 +#: executor/execExpr.c:3264 parser/parse_node.c:272 parser/parse_node.c:322 #, c-format msgid "cannot subscript type %s because it does not support subscripting" msgstr "kann aus Typ %s kein Element auswählen, weil er Subscripting nicht unterstützt" -#: executor/execExpr.c:3390 executor/execExpr.c:3412 +#: executor/execExpr.c:3392 executor/execExpr.c:3414 #, c-format msgid "type %s does not support subscripted assignment" msgstr "Typ %s unterstützt Wertzuweisungen in Elemente nicht" @@ -14076,139 +14074,139 @@ msgstr "Der Schlüssel kollidiert mit einem vorhandenen Schlüssel." msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "leerer WITHOUT-OVERLAPS-Wert gefunden in Spalte »%s« in Relation »%s«" -#: executor/execMain.c:1085 +#: executor/execMain.c:1089 #, c-format msgid "cannot change sequence \"%s\"" msgstr "kann Sequenz »%s« nicht ändern" -#: executor/execMain.c:1091 +#: executor/execMain.c:1095 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "kann TOAST-Relation »%s« nicht ändern" -#: executor/execMain.c:1110 +#: executor/execMain.c:1114 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "kann materialisierte Sicht »%s« nicht ändern" -#: executor/execMain.c:1122 +#: executor/execMain.c:1126 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "kann nicht in Fremdtabelle »%s« einfügen" -#: executor/execMain.c:1128 +#: executor/execMain.c:1132 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "Fremdtabelle »%s« erlaubt kein Einfügen" -#: executor/execMain.c:1135 +#: executor/execMain.c:1139 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "kann Fremdtabelle »%s« nicht aktualisieren" -#: executor/execMain.c:1141 +#: executor/execMain.c:1145 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "Fremdtabelle »%s« erlaubt kein Aktualisieren" -#: executor/execMain.c:1148 +#: executor/execMain.c:1152 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "kann nicht aus Fremdtabelle »%s« löschen" -#: executor/execMain.c:1154 +#: executor/execMain.c:1158 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "Fremdtabelle »%s« erlaubt kein Löschen" -#: executor/execMain.c:1165 +#: executor/execMain.c:1169 #, c-format msgid "cannot change relation \"%s\"" msgstr "kann Relation »%s« nicht ändern" -#: executor/execMain.c:1192 +#: executor/execMain.c:1196 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "kann Zeilen in Sequenz »%s« nicht sperren" -#: executor/execMain.c:1199 +#: executor/execMain.c:1203 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "kann Zeilen in TOAST-Relation »%s« nicht sperren" -#: executor/execMain.c:1206 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "kann Zeilen in Sicht »%s« nicht sperren" -#: executor/execMain.c:1214 +#: executor/execMain.c:1218 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "kann Zeilen in materialisierter Sicht »%s« nicht sperren" -#: executor/execMain.c:1223 executor/execMain.c:2865 +#: executor/execMain.c:1227 executor/execMain.c:2869 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "kann Zeilen in Fremdtabelle »%s« nicht sperren" -#: executor/execMain.c:1229 +#: executor/execMain.c:1233 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "kann Zeilen in Relation »%s« nicht sperren" -#: executor/execMain.c:1962 +#: executor/execMain.c:1966 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "neue Zeile für Relation »%s« verletzt Partitions-Constraint" -#: executor/execMain.c:1964 executor/execMain.c:2076 executor/execMain.c:2214 -#: executor/execMain.c:2322 +#: executor/execMain.c:1968 executor/execMain.c:2080 executor/execMain.c:2218 +#: executor/execMain.c:2326 #, c-format msgid "Failing row contains %s." msgstr "Fehlgeschlagene Zeile enthält %s." -#: executor/execMain.c:2074 +#: executor/execMain.c:2078 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "neue Zeile für Relation »%s« verletzt Check-Constraint »%s«" -#: executor/execMain.c:2211 +#: executor/execMain.c:2215 #, c-format msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "NULL-Wert in Spalte »%s« von Relation »%s« verletzt Not-Null-Constraint" -#: executor/execMain.c:2320 +#: executor/execMain.c:2324 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "neue Zeile verletzt Check-Option für Sicht »%s«" -#: executor/execMain.c:2330 +#: executor/execMain.c:2334 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "neue Zeile verletzt Policy für Sicherheit auf Zeilenebene »%s« für Tabelle »%s«" -#: executor/execMain.c:2335 +#: executor/execMain.c:2339 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "neue Zeile verletzt Policy für Sicherheit auf Zeilenebene für Tabelle »%s«" -#: executor/execMain.c:2343 +#: executor/execMain.c:2347 #, c-format msgid "target row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "Zielzeile verletzt Policy für Sicherheit auf Zeilenebene »%s« (USING-Ausdruck) für Tabelle »%s«" -#: executor/execMain.c:2348 +#: executor/execMain.c:2352 #, c-format msgid "target row violates row-level security policy (USING expression) for table \"%s\"" msgstr "Zielzeile verletzt Policy für Sicherheit auf Zeilenebene (USING-Ausdruck) für Tabelle »%s«" -#: executor/execMain.c:2355 +#: executor/execMain.c:2359 #, c-format msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "neue Zeile verletzt Policy für Sicherheit auf Zeilenebene »%s« (USING-Ausdruck) für Tabelle »%s«" -#: executor/execMain.c:2360 +#: executor/execMain.c:2364 #, c-format msgid "new row violates row-level security policy (USING expression) for table \"%s\"" msgstr "neue Zeile verletzt Policy für Sicherheit auf Zeilenebene (USING-Ausdruck) für Tabelle »%s«" @@ -14443,7 +14441,7 @@ msgstr "Rückgabetyp %s wird von SQL-Funktionen nicht unterstützt" msgid "aggregate %u needs to have compatible input type and transition type" msgstr "Aggregatfunktion %u muss kompatiblen Eingabe- und Übergangstyp haben" -#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:692 parser/parse_agg.c:735 #, c-format msgid "aggregate function calls cannot be nested" msgstr "Aufrufe von Aggregatfunktionen können nicht geschachtelt werden" @@ -14524,8 +14522,8 @@ msgid "Consider defining the foreign key on table \"%s\"." msgstr "Definieren Sie den Fremdschlüssel eventuell für Tabelle »%s«." #. translator: %s is a SQL command name -#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 -#: executor/nodeModifyTable.c:3508 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3328 +#: executor/nodeModifyTable.c:3520 #, c-format msgid "%s command cannot affect row a second time" msgstr "Befehl in %s kann eine Zeile nicht ein zweites Mal ändern" @@ -14535,17 +14533,17 @@ msgstr "Befehl in %s kann eine Zeile nicht ein zweites Mal ändern" msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values." msgstr "Stellen Sie sicher, dass keine im selben Befehl fürs Einfügen vorgesehene Zeilen doppelte Werte haben, die einen Constraint verletzen würden." -#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 +#: executor/nodeModifyTable.c:3321 executor/nodeModifyTable.c:3513 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "das zu aktualisierende oder zu löschende Tupel wurde schon durch eine vom aktuellen Befehl ausgelöste Operation verändert" -#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3522 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "Stellen Sie sicher, dass nicht mehr als eine Quellzeile auf jede Zielzeile passt." -#: executor/nodeModifyTable.c:3408 +#: executor/nodeModifyTable.c:3399 #, c-format msgid "tuple to be merged was already moved to another partition due to concurrent update" msgstr "das zu mergende Tupel wurde schon durch ein gleichzeitiges Update in eine andere Partition verschoben" @@ -14708,7 +14706,7 @@ msgstr "konnte Tupel nicht an Shared-Memory-Queue senden" msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "Benutzerabbildung für Benutzer »%s«, Server »%s« nicht gefunden" -#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7299 #: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" @@ -17394,7 +17392,7 @@ msgstr "Relation »%s« hat keinen zusammengesetzten Typ" #: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2602 #: parser/parse_coerce.c:2740 parser/parse_coerce.c:2787 -#: parser/parse_expr.c:2121 parser/parse_func.c:710 parser/parse_oper.c:869 +#: parser/parse_expr.c:2130 parser/parse_func.c:710 parser/parse_oper.c:869 #: utils/adt/array_userfuncs.c:1950 utils/fmgr/funcapi.c:669 #, c-format msgid "could not find array type for data type %s" @@ -17415,8 +17413,8 @@ msgstr "unbenanntes Portal mit Parametern: %s" msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "FULL JOIN wird nur für Merge- oder Hash-Verbund-fähige Verbundbedingungen unterstützt" -#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7321 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1692 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "MERGE kann für Relation »%s« nicht ausgeführt werden" @@ -17434,38 +17432,38 @@ msgstr "%s kann nicht auf die nullbare Seite eines äußeren Verbundes angewende msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s ist nicht in UNION/INTERSECT/EXCEPT erlaubt" -#: optimizer/plan/planner.c:2257 optimizer/plan/planner.c:4143 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 #, c-format msgid "could not implement GROUP BY" msgstr "konnte GROUP BY nicht implementieren" -#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 -#: optimizer/plan/planner.c:4825 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2259 optimizer/plan/planner.c:4145 +#: optimizer/plan/planner.c:4826 optimizer/prep/prepunion.c:1073 #, c-format msgid "Some of the datatypes only support hashing, while others only support sorting." msgstr "Einige Datentypen unterstützen nur Hashing, während andere nur Sortieren unterstützen." -#: optimizer/plan/planner.c:4824 +#: optimizer/plan/planner.c:4825 #, c-format msgid "could not implement DISTINCT" msgstr "konnte DISTINCT nicht implementieren" -#: optimizer/plan/planner.c:6286 +#: optimizer/plan/planner.c:6322 #, c-format msgid "could not implement window PARTITION BY" msgstr "konnte PARTITION BY für Fenster nicht implementieren" -#: optimizer/plan/planner.c:6287 +#: optimizer/plan/planner.c:6323 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Fensterpartitionierungsspalten müssen sortierbare Datentypen haben." -#: optimizer/plan/planner.c:6291 +#: optimizer/plan/planner.c:6327 #, c-format msgid "could not implement window ORDER BY" msgstr "konnte ORDER BY für Fenster nicht implementieren" -#: optimizer/plan/planner.c:6292 +#: optimizer/plan/planner.c:6328 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Fenstersortierspalten müssen sortierbare Datentypen haben." @@ -17496,7 +17494,7 @@ msgstr "Attribut »%s« von Relation »%s« stimmt nicht mit dem Typ der Elternt msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" msgstr "Attribut »%s« von Relation »%s« stimmt nicht mit der Sortierfolge der Elterntabelle überein" -#: optimizer/util/clauses.c:4968 +#: optimizer/util/clauses.c:4965 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "SQL-Funktion »%s« beim Inlining" @@ -17757,331 +17755,341 @@ msgstr "%s kann nicht auf einen benannten Tupelstore angewendet werden" msgid "relation \"%s\" in %s clause not found in FROM clause" msgstr "Relation »%s« in %s nicht in der FROM-Klausel gefunden" -#: parser/parse_agg.c:215 parser/parse_oper.c:215 +#: parser/parse_agg.c:218 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" msgstr "konnte keinen Sortieroperator für Typ %s ermitteln" -#: parser/parse_agg.c:217 +#: parser/parse_agg.c:220 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "Aggregatfunktionen mit DISTINCT müssen ihre Eingaben sortieren können." -#: parser/parse_agg.c:275 +#: parser/parse_agg.c:278 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPING muss weniger als 32 Argumente haben" -#: parser/parse_agg.c:378 +#: parser/parse_agg.c:382 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "Aggregatfunktionen sind in JOIN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:380 +#: parser/parse_agg.c:384 msgid "grouping operations are not allowed in JOIN conditions" msgstr "Gruppieroperationen sind in JOIN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:390 +#: parser/parse_agg.c:394 msgid "aggregate functions are not allowed in FROM clause of their own query level" msgstr "Aggregatfunktionen sind nicht in der FROM-Klausel ihrer eigenen Anfrageebene erlaubt" -#: parser/parse_agg.c:392 +#: parser/parse_agg.c:396 msgid "grouping operations are not allowed in FROM clause of their own query level" msgstr "Gruppieroperationen sind nicht in der FROM-Klausel ihrer eigenen Anfrageebene erlaubt" -#: parser/parse_agg.c:397 +#: parser/parse_agg.c:401 msgid "aggregate functions are not allowed in functions in FROM" msgstr "Aggregatfunktionen sind in Funktionen in FROM nicht erlaubt" -#: parser/parse_agg.c:399 +#: parser/parse_agg.c:403 msgid "grouping operations are not allowed in functions in FROM" msgstr "Gruppieroperationen sind in Funktionen in FROM nicht erlaubt" -#: parser/parse_agg.c:407 +#: parser/parse_agg.c:411 msgid "aggregate functions are not allowed in policy expressions" msgstr "Aggregatfunktionen sind in Policy-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:409 +#: parser/parse_agg.c:413 msgid "grouping operations are not allowed in policy expressions" msgstr "Gruppieroperationen sind in Policy-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:426 +#: parser/parse_agg.c:430 msgid "aggregate functions are not allowed in window RANGE" msgstr "Aggregatfunktionen sind in der Fenster-RANGE-Klausel nicht erlaubt" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:432 msgid "grouping operations are not allowed in window RANGE" msgstr "Gruppieroperationen sind in der Fenster-RANGE-Klausel nicht erlaubt" -#: parser/parse_agg.c:433 +#: parser/parse_agg.c:437 msgid "aggregate functions are not allowed in window ROWS" msgstr "Aggregatfunktionen sind in der Fenster-ROWS-Klausel nicht erlaubt" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:439 msgid "grouping operations are not allowed in window ROWS" msgstr "Gruppieroperationen sind in der Fenster-ROWS-Klausel nicht erlaubt" -#: parser/parse_agg.c:440 +#: parser/parse_agg.c:444 msgid "aggregate functions are not allowed in window GROUPS" msgstr "Aggregatfunktionen sind in der Fenster-GROUPS-Klausel nicht erlaubt" -#: parser/parse_agg.c:442 +#: parser/parse_agg.c:446 msgid "grouping operations are not allowed in window GROUPS" msgstr "Gruppieroperationen sind in der Fenster-GROUPS-Klausel nicht erlaubt" -#: parser/parse_agg.c:455 +#: parser/parse_agg.c:459 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "Aggregatfunktionen sind in MERGE-WHEN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:457 +#: parser/parse_agg.c:461 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "Gruppieroperationen sind in MERGE-WHEN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:484 +#: parser/parse_agg.c:488 msgid "aggregate functions are not allowed in check constraints" msgstr "Aggregatfunktionen sind in Check-Constraints nicht erlaubt" -#: parser/parse_agg.c:486 +#: parser/parse_agg.c:490 msgid "grouping operations are not allowed in check constraints" msgstr "Gruppieroperationen sind in Check-Constraints nicht erlaubt" -#: parser/parse_agg.c:493 +#: parser/parse_agg.c:497 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "Aggregatfunktionen sind in DEFAULT-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:499 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "Gruppieroperationen sind in DEFAULT-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:500 +#: parser/parse_agg.c:504 msgid "aggregate functions are not allowed in index expressions" msgstr "Aggregatfunktionen sind in Indexausdrücken nicht erlaubt" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:506 msgid "grouping operations are not allowed in index expressions" msgstr "Gruppieroperationen sind in Indexausdrücken nicht erlaubt" -#: parser/parse_agg.c:507 +#: parser/parse_agg.c:511 msgid "aggregate functions are not allowed in index predicates" msgstr "Aggregatfunktionen sind in Indexprädikaten nicht erlaubt" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:513 msgid "grouping operations are not allowed in index predicates" msgstr "Gruppieroperationen sind in Indexprädikaten nicht erlaubt" -#: parser/parse_agg.c:514 +#: parser/parse_agg.c:518 msgid "aggregate functions are not allowed in statistics expressions" msgstr "Aggregatfunktionen sind in Statistikausdrücken nicht erlaubt" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:520 msgid "grouping operations are not allowed in statistics expressions" msgstr "Gruppieroperationen sind in Statistikausdrücken nicht erlaubt" -#: parser/parse_agg.c:521 +#: parser/parse_agg.c:525 msgid "aggregate functions are not allowed in transform expressions" msgstr "Aggregatfunktionen sind in Umwandlungsausdrücken nicht erlaubt" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:527 msgid "grouping operations are not allowed in transform expressions" msgstr "Gruppieroperationen sind in Umwandlungsausdrücken nicht erlaubt" -#: parser/parse_agg.c:528 +#: parser/parse_agg.c:532 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "Aggregatfunktionen sind in EXECUTE-Parametern nicht erlaubt" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:534 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "Gruppieroperationen sind in EXECUTE-Parametern nicht erlaubt" -#: parser/parse_agg.c:535 +#: parser/parse_agg.c:539 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "Aggregatfunktionen sind in der WHEN-Bedingung eines Triggers nicht erlaubt" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:541 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "Gruppieroperationen sind in der WHEN-Bedingung eines Triggers nicht erlaubt" -#: parser/parse_agg.c:542 +#: parser/parse_agg.c:546 msgid "aggregate functions are not allowed in partition bound" msgstr "Aggregatfunktionen sind in Partitionsbegrenzungen nicht erlaubt" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:548 msgid "grouping operations are not allowed in partition bound" msgstr "Gruppieroperationen sind in Partitionsbegrenzungen nicht erlaubt" -#: parser/parse_agg.c:549 +#: parser/parse_agg.c:553 msgid "aggregate functions are not allowed in partition key expressions" msgstr "Aggregatfunktionen sind in Partitionierungsschlüsselausdrücken nicht erlaubt" -#: parser/parse_agg.c:551 +#: parser/parse_agg.c:555 msgid "grouping operations are not allowed in partition key expressions" msgstr "Gruppieroperationen sind in Partitionierungsschlüsselausdrücken nicht erlaubt" -#: parser/parse_agg.c:557 +#: parser/parse_agg.c:561 msgid "aggregate functions are not allowed in column generation expressions" msgstr "Aggregatfunktionen sind in Spaltengenerierungsausdrücken nicht erlaubt" -#: parser/parse_agg.c:559 +#: parser/parse_agg.c:563 msgid "grouping operations are not allowed in column generation expressions" msgstr "Gruppieroperationen sind in Spaltengenerierungsausdrücken nicht erlaubt" -#: parser/parse_agg.c:565 +#: parser/parse_agg.c:569 msgid "aggregate functions are not allowed in CALL arguments" msgstr "Aggregatfunktionen sind in CALL-Argumenten nicht erlaubt" -#: parser/parse_agg.c:567 +#: parser/parse_agg.c:571 msgid "grouping operations are not allowed in CALL arguments" msgstr "Gruppieroperationen sind in CALL-Argumenten nicht erlaubt" -#: parser/parse_agg.c:573 +#: parser/parse_agg.c:577 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "Aggregatfunktionen sind in COPY-FROM-WHERE-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:575 +#: parser/parse_agg.c:579 msgid "grouping operations are not allowed in COPY FROM WHERE conditions" msgstr "Gruppieroperationen sind in COPY-FROM-WHERE-Bedingungen nicht erlaubt" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:602 parser/parse_clause.c:1962 +#: parser/parse_agg.c:606 parser/parse_clause.c:1962 #, c-format msgid "aggregate functions are not allowed in %s" msgstr "Aggregatfunktionen sind in %s nicht erlaubt" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:605 +#: parser/parse_agg.c:609 #, c-format msgid "grouping operations are not allowed in %s" msgstr "Gruppieroperationen sind in %s nicht erlaubt" -#: parser/parse_agg.c:706 +#: parser/parse_agg.c:705 parser/parse_agg.c:742 +#, c-format +msgid "outer-level aggregate cannot use a nested CTE" +msgstr "Aggregatfunktionen auf äußerer Ebene kann keine geschachtelte CTE verwenden" + +#: parser/parse_agg.c:706 parser/parse_agg.c:743 +#, c-format +msgid "CTE \"%s\" is below the aggregate's semantic level." +msgstr "CTE »%s« ist unterhalb der semantischen Ebene der Aggregatfunktion." + +#: parser/parse_agg.c:728 #, c-format msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments" msgstr "Aggregatfunktion auf äußerer Ebene kann keine Variable einer unteren Ebene in ihren direkten Argumenten haben" -#: parser/parse_agg.c:784 +#: parser/parse_agg.c:813 #, c-format msgid "aggregate function calls cannot contain set-returning function calls" msgstr "Aufrufe von Aggregatfunktionen können keine Aufrufe von Funktionen mit Ergebnismenge enthalten" -#: parser/parse_agg.c:785 parser/parse_expr.c:1763 parser/parse_expr.c:2256 +#: parser/parse_agg.c:814 parser/parse_expr.c:1772 parser/parse_expr.c:2265 #: parser/parse_func.c:885 #, c-format msgid "You might be able to move the set-returning function into a LATERAL FROM item." msgstr "Sie können möglicherweise die Funktion mit Ergebnismenge in ein LATERAL-FROM-Element verschieben." -#: parser/parse_agg.c:790 +#: parser/parse_agg.c:819 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "Aufrufe von Aggregatfunktionen können keine Aufrufe von Fensterfunktionen enthalten" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:922 msgid "window functions are not allowed in JOIN conditions" msgstr "Fensterfunktionen sind in JOIN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:902 +#: parser/parse_agg.c:929 msgid "window functions are not allowed in functions in FROM" msgstr "Fensterfunktionen sind in Funktionen in FROM nicht erlaubt" -#: parser/parse_agg.c:908 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in policy expressions" msgstr "Fensterfunktionen sind in Policy-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:921 +#: parser/parse_agg.c:948 msgid "window functions are not allowed in window definitions" msgstr "Fensterfunktionen sind in Fensterdefinitionen nicht erlaubt" -#: parser/parse_agg.c:932 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "Fensterfunktionen sind in MERGE-WHEN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:984 msgid "window functions are not allowed in check constraints" msgstr "Fensterfunktionen sind in Check-Constraints nicht erlaubt" -#: parser/parse_agg.c:961 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in DEFAULT expressions" msgstr "Fensterfunktionen sind in DEFAULT-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:964 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in index expressions" msgstr "Fensterfunktionen sind in Indexausdrücken nicht erlaubt" -#: parser/parse_agg.c:967 +#: parser/parse_agg.c:994 msgid "window functions are not allowed in statistics expressions" msgstr "Fensterfunktionen sind in Statistikausdrücken nicht erlaubt" -#: parser/parse_agg.c:970 +#: parser/parse_agg.c:997 msgid "window functions are not allowed in index predicates" msgstr "Fensterfunktionen sind in Indexprädikaten nicht erlaubt" -#: parser/parse_agg.c:973 +#: parser/parse_agg.c:1000 msgid "window functions are not allowed in transform expressions" msgstr "Fensterfunktionen sind in Umwandlungsausdrücken nicht erlaubt" -#: parser/parse_agg.c:976 +#: parser/parse_agg.c:1003 msgid "window functions are not allowed in EXECUTE parameters" msgstr "Fensterfunktionen sind in EXECUTE-Parametern nicht erlaubt" -#: parser/parse_agg.c:979 +#: parser/parse_agg.c:1006 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "Fensterfunktionen sind in der WHEN-Bedingung eines Triggers nicht erlaubt" -#: parser/parse_agg.c:982 +#: parser/parse_agg.c:1009 msgid "window functions are not allowed in partition bound" msgstr "Fensterfunktionen sind in Partitionsbegrenzungen nicht erlaubt" -#: parser/parse_agg.c:985 +#: parser/parse_agg.c:1012 msgid "window functions are not allowed in partition key expressions" msgstr "Fensterfunktionen sind in Partitionierungsschlüsselausdrücken nicht erlaubt" -#: parser/parse_agg.c:988 +#: parser/parse_agg.c:1015 msgid "window functions are not allowed in CALL arguments" msgstr "Fensterfunktionen sind in CALL-Argumenten nicht erlaubt" -#: parser/parse_agg.c:991 +#: parser/parse_agg.c:1018 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "Fensterfunktionen sind in COPY-FROM-WHERE-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:994 +#: parser/parse_agg.c:1021 msgid "window functions are not allowed in column generation expressions" msgstr "Fensterfunktionen sind in Spaltengenerierungsausdrücken nicht erlaubt" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:1017 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1044 parser/parse_clause.c:1971 #, c-format msgid "window functions are not allowed in %s" msgstr "Fensterfunktionen sind in %s nicht erlaubt" -#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1078 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "Fenster »%s« existiert nicht" -#: parser/parse_agg.c:1141 +#: parser/parse_agg.c:1168 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "zu viele Grouping-Sets vorhanden (maximal 4096)" -#: parser/parse_agg.c:1302 +#: parser/parse_agg.c:1329 #, c-format msgid "aggregate functions are not allowed in a recursive query's recursive term" msgstr "Aggregatfunktionen sind nicht im rekursiven Ausdruck einer rekursiven Anfrage erlaubt" -#: parser/parse_agg.c:1525 +#: parser/parse_agg.c:1552 #, c-format msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function" msgstr "Spalte »%s.%s« muss in der GROUP-BY-Klausel erscheinen oder in einer Aggregatfunktion verwendet werden" -#: parser/parse_agg.c:1528 +#: parser/parse_agg.c:1555 #, c-format msgid "Direct arguments of an ordered-set aggregate must use only grouped columns." msgstr "Direkte Argumente einer Ordered-Set-Aggregatfunktion dürfen nur gruppierte Spalten verwenden." -#: parser/parse_agg.c:1533 +#: parser/parse_agg.c:1560 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "Unteranfrage verwendet nicht gruppierte Spalte »%s.%s« aus äußerer Anfrage" -#: parser/parse_agg.c:1698 +#: parser/parse_agg.c:1725 #, c-format msgid "arguments to GROUPING must be grouping expressions of the associated query level" msgstr "Argumente von GROUPING müssen Gruppierausdrücke der zugehörigen Anfrageebene sein" @@ -18359,8 +18367,8 @@ msgstr "Wandeln Sie den Offset-Wert in den genauen beabsichtigten Typ um." #: parser/parse_coerce.c:1048 parser/parse_coerce.c:1086 #: parser/parse_coerce.c:1104 parser/parse_coerce.c:1119 -#: parser/parse_expr.c:2155 parser/parse_expr.c:2775 parser/parse_expr.c:3426 -#: parser/parse_expr.c:3655 parser/parse_target.c:1001 +#: parser/parse_expr.c:2164 parser/parse_expr.c:2784 parser/parse_expr.c:3435 +#: parser/parse_expr.c:3664 parser/parse_target.c:1001 #, c-format msgid "cannot cast type %s to %s" msgstr "kann Typ %s nicht in Typ %s umwandeln" @@ -18753,273 +18761,273 @@ msgid "there is no parameter $%d" msgstr "es gibt keinen Parameter $%d" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1102 parser/parse_expr.c:3086 +#: parser/parse_expr.c:1102 parser/parse_expr.c:3095 #, c-format msgid "%s requires = operator to yield boolean" msgstr "%s erfordert, dass Operator = boolean ergibt" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1108 parser/parse_expr.c:3093 +#: parser/parse_expr.c:1108 parser/parse_expr.c:3102 #, c-format msgid "%s must not return a set" msgstr "%s darf keine Ergebnismenge zurückgeben" -#: parser/parse_expr.c:1396 +#: parser/parse_expr.c:1405 #, c-format msgid "MERGE_ACTION() can only be used in the RETURNING list of a MERGE command" msgstr "MERGE_ACTION() kann nur in der RETURNING-Liste eines MERGE-Befehls verwendet werden" -#: parser/parse_expr.c:1520 parser/parse_expr.c:1552 +#: parser/parse_expr.c:1529 parser/parse_expr.c:1561 #, c-format msgid "number of columns does not match number of values" msgstr "Anzahl der Spalten stimmt nicht mit der Anzahl der Werte überein" -#: parser/parse_expr.c:1566 +#: parser/parse_expr.c:1575 #, c-format msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() expression" msgstr "die Quelle für ein UPDATE-Element mit mehreren Spalten muss ein Sub-SELECT oder ein ROW()-Ausdruck sein" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_expr.c:1761 parser/parse_expr.c:2254 parser/parse_func.c:2679 +#: parser/parse_expr.c:1770 parser/parse_expr.c:2263 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "Funktionen mit Ergebnismenge sind in %s nicht erlaubt" -#: parser/parse_expr.c:1825 +#: parser/parse_expr.c:1834 msgid "cannot use subquery in check constraint" msgstr "Unteranfragen können nicht in Check-Constraints verwendet werden" -#: parser/parse_expr.c:1829 +#: parser/parse_expr.c:1838 msgid "cannot use subquery in DEFAULT expression" msgstr "Unteranfragen können nicht in DEFAULT-Ausdrücken verwendet werden" -#: parser/parse_expr.c:1832 +#: parser/parse_expr.c:1841 msgid "cannot use subquery in index expression" msgstr "Unteranfragen können nicht in Indexausdrücken verwendet werden" -#: parser/parse_expr.c:1835 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in index predicate" msgstr "Unteranfragen können nicht im Indexprädikat verwendet werden" -#: parser/parse_expr.c:1838 +#: parser/parse_expr.c:1847 msgid "cannot use subquery in statistics expression" msgstr "Unteranfragen können nicht in Statistikausdrücken verwendet werden" -#: parser/parse_expr.c:1841 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in transform expression" msgstr "Unteranfragen können in Umwandlungsausdrücken nicht verwendet werden" -#: parser/parse_expr.c:1844 +#: parser/parse_expr.c:1853 msgid "cannot use subquery in EXECUTE parameter" msgstr "Unteranfragen können nicht in EXECUTE-Parameter verwendet werden" -#: parser/parse_expr.c:1847 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in trigger WHEN condition" msgstr "Unteranfragen können nicht in der WHEN-Bedingung eines Triggers verwendet werden" -#: parser/parse_expr.c:1850 +#: parser/parse_expr.c:1859 msgid "cannot use subquery in partition bound" msgstr "Unteranfragen können nicht in Partitionsbegrenzungen verwendet werden" -#: parser/parse_expr.c:1853 +#: parser/parse_expr.c:1862 msgid "cannot use subquery in partition key expression" msgstr "Unteranfragen können nicht in Partitionierungsschlüsselausdrücken verwendet werden" -#: parser/parse_expr.c:1856 +#: parser/parse_expr.c:1865 msgid "cannot use subquery in CALL argument" msgstr "Unteranfragen können nicht in CALL-Argument verwendet werden" -#: parser/parse_expr.c:1859 +#: parser/parse_expr.c:1868 msgid "cannot use subquery in COPY FROM WHERE condition" msgstr "Unteranfragen können nicht in COPY-FROM-WHERE-Bedingungen verwendet werden" -#: parser/parse_expr.c:1862 +#: parser/parse_expr.c:1871 msgid "cannot use subquery in column generation expression" msgstr "Unteranfragen können nicht in Spaltengenerierungsausdrücken verwendet werden" -#: parser/parse_expr.c:1915 parser/parse_expr.c:3785 +#: parser/parse_expr.c:1924 parser/parse_expr.c:3794 #, c-format msgid "subquery must return only one column" msgstr "Unteranfrage darf nur eine Spalte zurückgeben" -#: parser/parse_expr.c:1986 +#: parser/parse_expr.c:1995 #, c-format msgid "subquery has too many columns" msgstr "Unteranfrage hat zu viele Spalten" -#: parser/parse_expr.c:1991 +#: parser/parse_expr.c:2000 #, c-format msgid "subquery has too few columns" msgstr "Unteranfrage hat zu wenige Spalten" -#: parser/parse_expr.c:2095 +#: parser/parse_expr.c:2104 #, c-format msgid "cannot determine type of empty array" msgstr "kann Typ eines leeren Arrays nicht bestimmen" -#: parser/parse_expr.c:2096 +#: parser/parse_expr.c:2105 #, c-format msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]." msgstr "Wandeln Sie ausdrücklich in den gewünschten Typ um, zum Beispiel ARRAY[]::integer[]." -#: parser/parse_expr.c:2110 +#: parser/parse_expr.c:2119 #, c-format msgid "could not find element type for data type %s" msgstr "konnte Elementtyp für Datentyp %s nicht finden" -#: parser/parse_expr.c:2195 +#: parser/parse_expr.c:2204 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "ROW-Ausdrücke können höchstens %d Einträge haben" -#: parser/parse_expr.c:2400 +#: parser/parse_expr.c:2409 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "unbenannter XML-Attributwert muss ein Spaltenverweis sein" -#: parser/parse_expr.c:2401 +#: parser/parse_expr.c:2410 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "unbenannter XML-Elementwert muss ein Spaltenverweis sein" -#: parser/parse_expr.c:2416 +#: parser/parse_expr.c:2425 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "XML-Attributname »%s« einscheint mehrmals" -#: parser/parse_expr.c:2524 +#: parser/parse_expr.c:2533 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "kann das Ergebnis von XMLSERIALIZE nicht in Typ %s umwandeln" -#: parser/parse_expr.c:2848 parser/parse_expr.c:3044 +#: parser/parse_expr.c:2857 parser/parse_expr.c:3053 #, c-format msgid "unequal number of entries in row expressions" msgstr "ungleiche Anzahl Einträge in Zeilenausdrücken" -#: parser/parse_expr.c:2858 +#: parser/parse_expr.c:2867 #, c-format msgid "cannot compare rows of zero length" msgstr "kann Zeilen mit Länge null nicht vergleichen" -#: parser/parse_expr.c:2883 +#: parser/parse_expr.c:2892 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "Zeilenvergleichsoperator muss Typ boolean zurückgeben, nicht Typ %s" -#: parser/parse_expr.c:2890 +#: parser/parse_expr.c:2899 #, c-format msgid "row comparison operator must not return a set" msgstr "Zeilenvergleichsoperator darf keine Ergebnismenge zurückgeben" -#: parser/parse_expr.c:2949 parser/parse_expr.c:2990 +#: parser/parse_expr.c:2958 parser/parse_expr.c:2999 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "konnte Interpretation des Zeilenvergleichsoperators %s nicht bestimmen" -#: parser/parse_expr.c:2951 +#: parser/parse_expr.c:2960 #, c-format msgid "Row comparison operators must be associated with btree operator families." msgstr "Zeilenvergleichsoperatoren müssen einer »btree«-Operatorfamilie zugeordnet sein." -#: parser/parse_expr.c:2992 +#: parser/parse_expr.c:3001 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Es gibt mehrere gleichermaßen plausible Kandidaten." -#: parser/parse_expr.c:3327 +#: parser/parse_expr.c:3336 #, c-format msgid "JSON ENCODING clause is only allowed for bytea input type" msgstr "JSON-ENCODING-Klausel ist nur für Eingabetyp bytea erlaubt" -#: parser/parse_expr.c:3391 +#: parser/parse_expr.c:3400 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" msgstr "implizite FORMAT-JSON-Klausel kann nicht mit Typen verwendet werden, die keine Zeichenketten sind" -#: parser/parse_expr.c:3392 +#: parser/parse_expr.c:3401 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" msgstr "explizite FORMAT-JSON-Klausel kann nicht mit Typen verwendet werden, die keine Zeichenketten sind" -#: parser/parse_expr.c:3481 +#: parser/parse_expr.c:3490 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "Format JSON kann nicht mit Ausgabetypen verwendet werden, die keine Zeichenketten sind" -#: parser/parse_expr.c:3494 +#: parser/parse_expr.c:3503 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "JSON-Kodierung kann nur für Ausgabetyp bytea gesetzt werden" -#: parser/parse_expr.c:3499 +#: parser/parse_expr.c:3508 #, c-format msgid "unsupported JSON encoding" msgstr "nicht unterstützte JSON-Kodierung" -#: parser/parse_expr.c:3500 +#: parser/parse_expr.c:3509 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Nur die JSON-Kodierung UTF8 wird unterstützt." -#: parser/parse_expr.c:3537 +#: parser/parse_expr.c:3546 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "Rückgabe von SETOF-Typen wird in SQL/JSON-Funktionen nicht unterstützt" -#: parser/parse_expr.c:3542 +#: parser/parse_expr.c:3551 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" msgstr "Rückgabe von Pseudotypen wird in SQL/JSON-Funktionen nicht unterstützt" -#: parser/parse_expr.c:3870 parser/parse_func.c:866 +#: parser/parse_expr.c:3879 parser/parse_func.c:866 #, c-format msgid "aggregate ORDER BY is not implemented for window functions" msgstr "ORDER BY in Aggregatfunktion ist für Fensterfunktionen nicht implementiert" -#: parser/parse_expr.c:4093 +#: parser/parse_expr.c:4102 #, c-format msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types" msgstr "JSON-FORMAT-ENCODING-Klausel kann nur für Eingabetyp bytea verwendet werden" -#: parser/parse_expr.c:4113 +#: parser/parse_expr.c:4122 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "Typ %s kann nicht im IS-JSON-Prädikat verwendet werden" -#: parser/parse_expr.c:4139 parser/parse_expr.c:4260 +#: parser/parse_expr.c:4148 parser/parse_expr.c:4269 #, c-format msgid "cannot use type %s in RETURNING clause of %s" msgstr "Typ %s kann nicht in der RETURNING-Klausel von %s verwendet werden" -#: parser/parse_expr.c:4141 +#: parser/parse_expr.c:4150 #, c-format msgid "Try returning json or jsonb." msgstr "Versuchen Sie json oder jsonb zurückzugeben." -#: parser/parse_expr.c:4189 +#: parser/parse_expr.c:4198 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" msgstr "Klausel WITH UNIQUE KEYS kann nicht mit Typen verwendet werden, die keine Zeichenketten sind" -#: parser/parse_expr.c:4263 +#: parser/parse_expr.c:4272 #, c-format msgid "Try returning a string type or bytea." msgstr "Versuchen Sie einen Zeichenkettentyp oder bytea zurückzugeben." -#: parser/parse_expr.c:4328 +#: parser/parse_expr.c:4340 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "FORMAT JSON kann nicht in der RETURNING-Klausel von %s() angegeben werden" -#: parser/parse_expr.c:4341 +#: parser/parse_expr.c:4353 #, c-format msgid "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" msgstr "SQL/JSON-QUOTES-Verhalten darf nicht angegeben werden, wenn WITH WRAPPER verwendet wird" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4355 parser/parse_expr.c:4384 parser/parse_expr.c:4415 -#: parser/parse_expr.c:4441 parser/parse_expr.c:4467 +#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 parser/parse_expr.c:4427 +#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 #: parser/parse_jsontable.c:92 #, c-format msgid "invalid %s behavior" @@ -19027,7 +19035,7 @@ msgstr "ungültiges »%s«-Verhalten" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 +#: parser/parse_expr.c:4370 parser/parse_expr.c:4399 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for %s." msgstr "Nur ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT oder DEFAULT-Ausdruck sind erlaubt in %s für %s." @@ -19035,73 +19043,73 @@ msgstr "Nur ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT oder DEFAULT-Ausdruck sind er #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 -#: parser/parse_expr.c:4451 parser/parse_expr.c:4477 +#: parser/parse_expr.c:4377 parser/parse_expr.c:4406 parser/parse_expr.c:4435 +#: parser/parse_expr.c:4463 parser/parse_expr.c:4489 #, c-format msgid "invalid %s behavior for column \"%s\"" msgstr "ungültiges »%s«-Verhalten für Spalte »%s«" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 +#: parser/parse_expr.c:4380 parser/parse_expr.c:4409 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for formatted columns." msgstr "Nur ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT oder DEFAULT-Ausdruck sind erlaubt in %s für formatierte Spalten." -#: parser/parse_expr.c:4416 +#: parser/parse_expr.c:4428 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." msgstr "Nur ERROR, TRUE, FALSE oder UNKNOWN sind erlaubt in %s für %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4426 +#: parser/parse_expr.c:4438 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." msgstr "Nur ERROR, TRUE, FALSE oder UNKNOWN sind erlaubt in %s für EXISTS-Spalten." #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 +#: parser/parse_expr.c:4456 parser/parse_expr.c:4482 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." msgstr "Nur ERROR, NULL oder DEFAULT-Ausdruck sind erlaubt in %s für %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 +#: parser/parse_expr.c:4466 parser/parse_expr.c:4492 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." msgstr "Nur ERROR, NULL oder DEFAULT-Ausdruck sind erlaubt in %s für skalare Spalten." -#: parser/parse_expr.c:4510 +#: parser/parse_expr.c:4526 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "JSON-Pfadausdruck muss Typ %s haben, nicht Typ %s" -#: parser/parse_expr.c:4750 +#: parser/parse_expr.c:4766 #, c-format msgid "can only specify a constant, non-aggregate function, or operator expression for DEFAULT" msgstr "für DEFAULT kann nur eine Konstante, Nicht-Aggregat-Funktion oder ein Operatorausdruck angegeben werden" -#: parser/parse_expr.c:4755 +#: parser/parse_expr.c:4771 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "DEFAULT-Ausdruck darf keine Spaltenverweise enthalten" -#: parser/parse_expr.c:4760 +#: parser/parse_expr.c:4776 #, c-format msgid "DEFAULT expression must not return a set" msgstr "DEFAULT-Ausdruck darf keine Ergebnismenge zurückgeben" -#: parser/parse_expr.c:4775 +#: parser/parse_expr.c:4791 #, c-format msgid "collation of DEFAULT expression conflicts with RETURNING clause" msgstr "Sortierfolge des DEFAULT-Ausdrucks kollidiert mit der RETURNING-Klausel" -#: parser/parse_expr.c:4854 parser/parse_expr.c:4863 +#: parser/parse_expr.c:4870 parser/parse_expr.c:4879 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "kann Verhaltensausdruck nicht von Typ %s in %s umwandeln" -#: parser/parse_expr.c:4857 +#: parser/parse_expr.c:4873 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "Sie werden den Ausdruck ausdrücklich in Typ %s umwandeln müssen." @@ -20116,22 +20124,22 @@ msgstr "FROM muss genau einen Wert pro Partitionierungsspalte angeben" msgid "TO must specify exactly one value per partitioning column" msgstr "TO muss genau einen Wert pro Partitionierungsspalte angeben" -#: parser/parse_utilcmd.c:4521 +#: parser/parse_utilcmd.c:4523 #, c-format msgid "cannot specify NULL in range bound" msgstr "NULL kann nicht in der Bereichsgrenze angegeben werden" -#: parser/parse_utilcmd.c:4570 +#: parser/parse_utilcmd.c:4571 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "jede Begrenzung, die auf MAXVALUE folgt, muss auch MAXVALUE sein" -#: parser/parse_utilcmd.c:4577 +#: parser/parse_utilcmd.c:4578 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "jede Begrenzung, die auf MINVALUE folgt, muss auch MINVALUE sein" -#: parser/parse_utilcmd.c:4620 +#: parser/parse_utilcmd.c:4621 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "angegebener Wert kann nicht in Typ %s für Spalte »%s« umgewandelt werden" @@ -20149,7 +20157,7 @@ msgstr "ungültiges Unicode-Escape-Zeichen" msgid "invalid Unicode escape value" msgstr "ungültiger Unicode-Escape-Wert" -#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6842 +#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6853 #, c-format msgid "invalid Unicode escape" msgstr "ungültiges Unicode-Escape" @@ -20160,7 +20168,7 @@ msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "Unicode-Escapes müssen \\XXXX oder \\+XXXXXX sein." #: parser/parser.c:523 scan.l:663 scan.l:679 scan.l:695 -#: utils/adt/varlena.c:6867 +#: utils/adt/varlena.c:6878 #, c-format msgid "invalid Unicode surrogate pair" msgstr "ungültiges Unicode-Surrogatpaar" @@ -21198,144 +21206,144 @@ msgstr "ungültige Zeitleiste %u" msgid "invalid streaming start location" msgstr "ungültige Streaming-Startposition" -#: replication/libpqwalreceiver/libpqwalreceiver.c:230 -#: replication/libpqwalreceiver/libpqwalreceiver.c:322 +#: replication/libpqwalreceiver/libpqwalreceiver.c:243 +#: replication/libpqwalreceiver/libpqwalreceiver.c:335 #, c-format msgid "password is required" msgstr "Passwort wird benötigt" -#: replication/libpqwalreceiver/libpqwalreceiver.c:231 +#: replication/libpqwalreceiver/libpqwalreceiver.c:244 #, c-format msgid "Non-superuser cannot connect if the server does not request a password." msgstr "Nicht-Superuser kann nicht verbinden, wenn der Server kein Passwort anfordert." -#: replication/libpqwalreceiver/libpqwalreceiver.c:232 +#: replication/libpqwalreceiver/libpqwalreceiver.c:245 #, c-format msgid "Target server's authentication method must be changed, or set password_required=false in the subscription parameters." msgstr "Die Authentifizierungsmethode des Zielservers muss geändern werden oder setzen Sie password_required=false in den Subskriptionsparametern." -#: replication/libpqwalreceiver/libpqwalreceiver.c:249 +#: replication/libpqwalreceiver/libpqwalreceiver.c:262 #, c-format msgid "could not clear search path: %s" msgstr "konnte Suchpfad nicht auf leer setzen: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:295 -#: replication/libpqwalreceiver/libpqwalreceiver.c:483 +#: replication/libpqwalreceiver/libpqwalreceiver.c:308 +#: replication/libpqwalreceiver/libpqwalreceiver.c:508 #, c-format msgid "invalid connection string syntax: %s" msgstr "ungültige Syntax für Verbindungszeichenkette: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:323 +#: replication/libpqwalreceiver/libpqwalreceiver.c:336 #, c-format msgid "Non-superusers must provide a password in the connection string." msgstr "Nicht-Superuser müssen ein Passwort in den Verbindungsparametern angeben." -#: replication/libpqwalreceiver/libpqwalreceiver.c:350 +#: replication/libpqwalreceiver/libpqwalreceiver.c:363 #, c-format msgid "could not parse connection string: %s" msgstr "konnte Verbindungsparameter nicht interpretieren: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:425 +#: replication/libpqwalreceiver/libpqwalreceiver.c:438 #, c-format msgid "could not receive database system identifier and timeline ID from the primary server: %s" msgstr "konnte Datenbanksystemidentifikator und Zeitleisten-ID nicht vom Primärserver empfangen: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:442 -#: replication/libpqwalreceiver/libpqwalreceiver.c:737 +#: replication/libpqwalreceiver/libpqwalreceiver.c:455 +#: replication/libpqwalreceiver/libpqwalreceiver.c:762 #, c-format msgid "invalid response from primary server" msgstr "ungültige Antwort vom Primärserver" -#: replication/libpqwalreceiver/libpqwalreceiver.c:443 +#: replication/libpqwalreceiver/libpqwalreceiver.c:456 #, c-format msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields." msgstr "Konnte System nicht identifizieren: %d Zeilen und %d Felder erhalten, %d Zeilen und %d oder mehr Felder erwartet." -#: replication/libpqwalreceiver/libpqwalreceiver.c:572 -#: replication/libpqwalreceiver/libpqwalreceiver.c:579 -#: replication/libpqwalreceiver/libpqwalreceiver.c:611 +#: replication/libpqwalreceiver/libpqwalreceiver.c:597 +#: replication/libpqwalreceiver/libpqwalreceiver.c:604 +#: replication/libpqwalreceiver/libpqwalreceiver.c:636 #, c-format msgid "could not start WAL streaming: %s" msgstr "konnte WAL-Streaming nicht starten: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:635 +#: replication/libpqwalreceiver/libpqwalreceiver.c:660 #, c-format msgid "could not send end-of-streaming message to primary: %s" msgstr "konnte End-of-Streaming-Nachricht nicht an Primärserver senden: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:659 +#: replication/libpqwalreceiver/libpqwalreceiver.c:684 #, c-format msgid "unexpected result set after end-of-streaming" msgstr "unerwartete Ergebnismenge nach End-of-Streaming" -#: replication/libpqwalreceiver/libpqwalreceiver.c:675 +#: replication/libpqwalreceiver/libpqwalreceiver.c:700 #, c-format msgid "error while shutting down streaming COPY: %s" msgstr "Fehler beim Beenden des COPY-Datenstroms: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:686 +#: replication/libpqwalreceiver/libpqwalreceiver.c:711 #, c-format msgid "error reading result of streaming command: %s" msgstr "Fehler beim Lesen des Ergebnisses von Streaming-Befehl: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:696 -#: replication/libpqwalreceiver/libpqwalreceiver.c:832 +#: replication/libpqwalreceiver/libpqwalreceiver.c:721 +#: replication/libpqwalreceiver/libpqwalreceiver.c:857 #, c-format msgid "unexpected result after CommandComplete: %s" msgstr "unerwartetes Ergebnis nach CommandComplete: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:725 +#: replication/libpqwalreceiver/libpqwalreceiver.c:750 #, c-format msgid "could not receive timeline history file from the primary server: %s" msgstr "konnte Zeitleisten-History-Datei nicht vom Primärserver empfangen: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:738 +#: replication/libpqwalreceiver/libpqwalreceiver.c:763 #, c-format msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields." msgstr "1 Tupel mit 2 Feldern erwartet, %d Tupel mit %d Feldern erhalten." -#: replication/libpqwalreceiver/libpqwalreceiver.c:793 -#: replication/libpqwalreceiver/libpqwalreceiver.c:848 -#: replication/libpqwalreceiver/libpqwalreceiver.c:855 +#: replication/libpqwalreceiver/libpqwalreceiver.c:818 +#: replication/libpqwalreceiver/libpqwalreceiver.c:873 +#: replication/libpqwalreceiver/libpqwalreceiver.c:880 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "konnte keine Daten vom WAL-Stream empfangen: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:875 +#: replication/libpqwalreceiver/libpqwalreceiver.c:900 #, c-format msgid "could not send data to WAL stream: %s" msgstr "konnte keine Daten an den WAL-Stream senden: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:978 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1003 #, c-format msgid "could not create replication slot \"%s\": %s" msgstr "konnte Replikations-Slot »%s« nicht erzeugen: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1030 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1055 #, c-format msgid "could not alter replication slot \"%s\": %s" msgstr "konnte Replikations-Slot »%s« nicht ändern: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1064 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1089 #, c-format msgid "invalid query response" msgstr "ungültige Antwort auf Anfrage" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1065 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1090 #, c-format msgid "Expected %d fields, got %d fields." msgstr "%d Felder erwartet, %d Feldern erhalten." -#: replication/libpqwalreceiver/libpqwalreceiver.c:1135 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1160 #, c-format msgid "the query interface requires a database connection" msgstr "Ausführen von Anfragen benötigt eine Datenbankverbindung" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1169 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1194 msgid "empty query" msgstr "leere Anfrage" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1200 msgid "unexpected pipeline mode" msgstr "unerwarteter Pipeline-Modus" @@ -21500,7 +21508,7 @@ msgstr "alle Slots für Arbeitsprozesse für logische Replikation belegt" #. translator: %s is a GUC variable name #: replication/logical/launcher.c:438 replication/logical/launcher.c:524 -#: replication/slot.c:1635 replication/slot.c:1655 storage/lmgr/lock.c:1042 +#: replication/slot.c:1670 replication/slot.c:1690 storage/lmgr/lock.c:1042 #: storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 #: storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 #: storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 @@ -21534,12 +21542,12 @@ msgstr "logische Dekodierung erfordert »wal_level« >= »logical«" msgid "logical decoding requires a database connection" msgstr "logische Dekodierung benötigt eine Datenbankverbindung" -#: replication/logical/logical.c:367 replication/logical/logical.c:521 +#: replication/logical/logical.c:367 replication/logical/logical.c:523 #, c-format msgid "cannot use physical replication slot for logical decoding" msgstr "physischer Replikations-Slot kann nicht für logisches Dekodieren verwendet werden" -#: replication/logical/logical.c:372 replication/logical/logical.c:531 +#: replication/logical/logical.c:372 replication/logical/logical.c:533 #, c-format msgid "replication slot \"%s\" was not created in this database" msgstr "Replikations-Slot »%s« wurde nicht in dieser Datenbank erzeugt" @@ -21549,56 +21557,56 @@ msgstr "Replikations-Slot »%s« wurde nicht in dieser Datenbank erzeugt" msgid "cannot create logical replication slot in transaction that has performed writes" msgstr "logischer Replikations-Slot kann nicht in einer Transaktion erzeugt werden, die Schreibvorgänge ausgeführt hat" -#: replication/logical/logical.c:542 +#: replication/logical/logical.c:544 #, c-format msgid "cannot use replication slot \"%s\" for logical decoding" msgstr "physischer Replikations-Slot »%s« kann nicht für logisches Dekodieren verwendet werden" -#: replication/logical/logical.c:544 replication/slot.c:864 -#: replication/slot.c:899 +#: replication/logical/logical.c:546 replication/slot.c:858 +#: replication/slot.c:903 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Dieser Replikations-Slot wird vom Primärserver synchronisiert." -#: replication/logical/logical.c:545 +#: replication/logical/logical.c:547 #, c-format msgid "Specify another replication slot." msgstr "Geben Sie einen anderen Replikations-Slot an." -#: replication/logical/logical.c:611 +#: replication/logical/logical.c:613 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "starte logisches Dekodieren für Slot »%s«" -#: replication/logical/logical.c:613 +#: replication/logical/logical.c:615 #, c-format msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X." msgstr "Streaming beginnt bei Transaktionen, die nach %X/%X committen; lese WAL ab %X/%X." -#: replication/logical/logical.c:761 +#: replication/logical/logical.c:763 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X" msgstr "Slot »%s«, Ausgabe-Plugin »%s«, im Callback %s, zugehörige LSN %X/%X" -#: replication/logical/logical.c:767 +#: replication/logical/logical.c:769 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback" msgstr "Slot »%s«, Ausgabe-Plugin »%s«, im Callback %s" -#: replication/logical/logical.c:938 replication/logical/logical.c:983 -#: replication/logical/logical.c:1028 replication/logical/logical.c:1074 +#: replication/logical/logical.c:940 replication/logical/logical.c:985 +#: replication/logical/logical.c:1030 replication/logical/logical.c:1076 #, c-format msgid "logical replication at prepare time requires a %s callback" msgstr "logische Replikation bei PREPARE TRANSACTION benötigt einen %s-Callback" -#: replication/logical/logical.c:1306 replication/logical/logical.c:1355 -#: replication/logical/logical.c:1396 replication/logical/logical.c:1482 -#: replication/logical/logical.c:1531 +#: replication/logical/logical.c:1308 replication/logical/logical.c:1357 +#: replication/logical/logical.c:1398 replication/logical/logical.c:1484 +#: replication/logical/logical.c:1533 #, c-format msgid "logical streaming requires a %s callback" msgstr "logisches Streaming benötigt einen %s-Callback" -#: replication/logical/logical.c:1441 +#: replication/logical/logical.c:1443 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "logisches Streaming bei PREPARE TRANSACTION benötigt einen %s-Callback" @@ -21790,7 +21798,7 @@ msgstr "konnte Datei »%s« nicht löschen, beim Löschen von %s/%s/xid*: %m" msgid "could not read from file \"%s\": read %d instead of %d bytes" msgstr "konnte nicht aus Datei »%s« lesen: %d statt %d Bytes gelesen" -#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:595 +#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:596 #, c-format msgid "could not synchronize replication slot \"%s\"" msgstr "konnte Replikations-Slot »%s« nicht synchronisieren" @@ -21805,48 +21813,48 @@ msgstr "Synchronisation könnte zu Datenverlust führen, weil der Remote-Slot WA msgid "dropped replication slot \"%s\" of database with OID %u" msgstr "Replikations-Slot »%s« von Datenbank mit OID %u wurde gelöscht" -#: replication/logical/slotsync.c:596 +#: replication/logical/slotsync.c:597 #, c-format msgid "Synchronization could lead to data loss, because the standby could not build a consistent snapshot to decode WALs at LSN %X/%X." msgstr "Synchronisation könnte zu Datenverlust führen, weil der Standby keinen konsistenten Snapshot zum Dekodieren von WAL bei LSN %X/%X bauen konnte." -#: replication/logical/slotsync.c:605 +#: replication/logical/slotsync.c:606 #, c-format msgid "newly created replication slot \"%s\" is sync-ready now" msgstr "neu erzeugter Replikations-Slot »%s« ist jetzt bereit für die Synchronisierung" -#: replication/logical/slotsync.c:644 +#: replication/logical/slotsync.c:645 #, c-format msgid "skipping slot synchronization because the received slot sync LSN %X/%X for slot \"%s\" is ahead of the standby position %X/%X" msgstr "Slot-Synchronisierung wird übersprungen, weil die empfangene Slot-Sync-LSN %X/%X für Slot »%s« der Position %X/%X des Standbys voraus ist" -#: replication/logical/slotsync.c:666 +#: replication/logical/slotsync.c:667 #, c-format msgid "exiting from slot synchronization because same name slot \"%s\" already exists on the standby" msgstr "verlasse Slot-Synchronisierung, weil der gleiche Slot »%s« schon auf dem Standby existiert" -#: replication/logical/slotsync.c:835 +#: replication/logical/slotsync.c:838 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "konnte Informationen über logische Failover-Slots nicht vom Primärserver holen: %s" -#: replication/logical/slotsync.c:984 +#: replication/logical/slotsync.c:987 #, c-format msgid "could not fetch primary slot name \"%s\" info from the primary server: %s" msgstr "konnte Informationen über primary_slot_name »%s« nicht vom Primärserver holen: %s" -#: replication/logical/slotsync.c:986 +#: replication/logical/slotsync.c:989 #, c-format msgid "Check if \"primary_slot_name\" is configured correctly." msgstr "Prüfen Sie, ob »primary_slot_name« korrekt konfiguriert ist." -#: replication/logical/slotsync.c:1006 +#: replication/logical/slotsync.c:1009 #, c-format msgid "cannot synchronize replication slots from a standby server" msgstr "Replikations-Slots können nicht von einem Standby-Server synchronisiert werden" #. translator: second %s is a GUC variable name -#: replication/logical/slotsync.c:1015 +#: replication/logical/slotsync.c:1018 #, c-format msgid "replication slot \"%s\" specified by \"%s\" does not exist on primary server" msgstr "Replikations-Slot »%s«, der in »%s« angegeben ist, existiert auf dem Publikationsserver nicht" @@ -21854,60 +21862,60 @@ msgstr "Replikations-Slot »%s«, der in »%s« angegeben ist, existiert auf dem #. translator: first %s is a connection option; second %s is a GUC #. variable name #. -#: replication/logical/slotsync.c:1048 +#: replication/logical/slotsync.c:1051 #, c-format msgid "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "Replikations-Slot-Synchronisierung erfordert, dass »%s« in »%s« angegeben wird" -#: replication/logical/slotsync.c:1067 +#: replication/logical/slotsync.c:1070 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "Replikations-Slot-Synchronisierung erfordert »wal_level« >= »logical«" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1082 replication/logical/slotsync.c:1110 +#: replication/logical/slotsync.c:1085 replication/logical/slotsync.c:1113 #, c-format msgid "replication slot synchronization requires \"%s\" to be set" msgstr "Replikations-Slot-Synchronisierung erfordert, dass »%s« definiert ist" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1096 +#: replication/logical/slotsync.c:1099 #, c-format msgid "replication slot synchronization requires \"%s\" to be enabled" msgstr "Replikations-Slot-Synchronisierung erfordert, dass »%s« eingeschaltet ist" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1148 +#: replication/logical/slotsync.c:1151 #, c-format msgid "replication slot synchronization worker will shut down because \"%s\" is disabled" msgstr "Arbeitsprozess für Replikations-Slot-Synchronisierung wird herunterfahren, weil »%s« deaktiviert ist" -#: replication/logical/slotsync.c:1157 +#: replication/logical/slotsync.c:1160 #, c-format msgid "replication slot synchronization worker will restart because of a parameter change" msgstr "Arbeitsprozess für Replikations-Slot-Synchronisierung wird neu starten wegen einer Parameteränderung" -#: replication/logical/slotsync.c:1181 +#: replication/logical/slotsync.c:1184 #, c-format -msgid "replication slot synchronization worker is shutting down on receiving SIGINT" -msgstr "Arbeitsprozess für Replikations-Slot-Synchronisierung fährt herunter, weil SIGINT empfangen wurde" +msgid "replication slot synchronization worker is shutting down because promotion is triggered" +msgstr "Arbeitsprozess für Replikations-Slot-Synchronisierung fährt herunter, weil Beförderung ausgelöst wurde" -#: replication/logical/slotsync.c:1306 +#: replication/logical/slotsync.c:1309 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "Replikations-Slots können nicht synchronisiert werden, während die Standby-Beförderung läuft" -#: replication/logical/slotsync.c:1314 +#: replication/logical/slotsync.c:1317 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "Replikations-Slots können nicht nebenläufig synchronisiert werden" -#: replication/logical/slotsync.c:1422 +#: replication/logical/slotsync.c:1425 #, c-format msgid "slot sync worker started" msgstr "Slot-Sync-Arbeitsprozess gestartet" -#: replication/logical/slotsync.c:1484 replication/slotfuncs.c:928 +#: replication/logical/slotsync.c:1487 replication/slotfuncs.c:928 #, c-format msgid "synchronization worker \"%s\" could not connect to the primary server: %s" msgstr "Synchronisierungs-Arbeitsprozess »%s« konnte nicht mit dem Primärserver verbinden: %s" @@ -22020,22 +22028,17 @@ msgstr "konnte Kopieren des Anfangsinhalts für Tabelle »%s.%s« nicht starten: msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" msgstr "Arbeitsprozess für Tabellensynchronisation für Subskription »%s« konnte nicht mit dem Publikationsserver verbinden: %s" -#: replication/logical/tablesync.c:1466 +#: replication/logical/tablesync.c:1480 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "beim Kopieren der Tabelle konnte die Transaktion auf dem Publikationsserver nicht gestartet werden: %s" -#: replication/logical/tablesync.c:1509 -#, c-format -msgid "replication origin \"%s\" already exists" -msgstr "Replication-Origin »%s« existiert bereits" - -#: replication/logical/tablesync.c:1542 replication/logical/worker.c:2378 +#: replication/logical/tablesync.c:1540 replication/logical/worker.c:2378 #, c-format msgid "user \"%s\" cannot replicate into relation with row-level security enabled: \"%s\"" msgstr "Benutzer »%s« kann nicht in eine Relation mit Sicherheit auf Zeilenebene replizieren: »%s«" -#: replication/logical/tablesync.c:1555 +#: replication/logical/tablesync.c:1553 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "beim Kopieren der Tabelle konnte die Transaktion auf dem Publikationsserver nicht beenden werden: %s" @@ -22140,62 +22143,62 @@ msgstr "Arbeitsprozess für logische Replikation für Tabellensynchronisation f msgid "logical replication apply worker for subscription \"%s\" has started" msgstr "Apply-Worker für logische Replikation für Subskription »%s« hat gestartet" -#: replication/logical/worker.c:4871 +#: replication/logical/worker.c:4875 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "Subskription »%s« wurde wegen eines Fehlers deaktiviert" -#: replication/logical/worker.c:4919 +#: replication/logical/worker.c:4923 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "logische Replikation beginnt Überspringen von Transaktion bei %X/%X" -#: replication/logical/worker.c:4933 +#: replication/logical/worker.c:4937 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "logische Replikation beendet Überspringen von Transaktion bei %X/%X" -#: replication/logical/worker.c:5021 +#: replication/logical/worker.c:5025 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "Skip-LSN von Subskription »%s« gelöscht" -#: replication/logical/worker.c:5022 +#: replication/logical/worker.c:5026 #, c-format msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X." msgstr "Die WAL-Endposition (LSN) %X/%X der Remote-Transaktion stimmte nicht mit der Skip-LSN %X/%X überein." -#: replication/logical/worker.c:5050 +#: replication/logical/worker.c:5054 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\"" msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachrichtentyp »%s«" -#: replication/logical/worker.c:5054 +#: replication/logical/worker.c:5058 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u" msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachrichtentyp »%s« in Transaktion %u" -#: replication/logical/worker.c:5059 +#: replication/logical/worker.c:5063 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X" msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachrichtentyp »%s« in Transaktion %u, beendet bei %X/%X" -#: replication/logical/worker.c:5070 +#: replication/logical/worker.c:5074 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u" msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachrichtentyp »%s« für Replikationszielrelation »%s.%s« in Transaktion %u" -#: replication/logical/worker.c:5077 +#: replication/logical/worker.c:5081 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u, finished at %X/%X" msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachrichtentyp »%s« für Replikationszielrelation »%s.%s« in Transaktion %u, beendet bei %X/%X" -#: replication/logical/worker.c:5088 +#: replication/logical/worker.c:5092 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u" msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachrichtentyp »%s« für Replikationszielrelation »%s.%s« Spalte »%s« in Transaktion %u" -#: replication/logical/worker.c:5096 +#: replication/logical/worker.c:5100 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u, finished at %X/%X" msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachrichtentyp »%s« für Replikationszielrelation »%s.%s« Spalte »%s« in Transaktion %u, beendet bei %X/%X" @@ -22210,67 +22213,67 @@ msgstr "ungültige proto_version" msgid "proto_version \"%s\" out of range" msgstr "proto_version »%s« ist außerhalb des gültigen Bereichs" -#: replication/pgoutput/pgoutput.c:351 +#: replication/pgoutput/pgoutput.c:355 #, c-format msgid "invalid publication_names syntax" msgstr "ungültige Syntax für publication_names" -#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 +#: replication/pgoutput/pgoutput.c:425 replication/pgoutput/pgoutput.c:429 #, c-format msgid "option \"%s\" missing" msgstr "Option »%s« fehlt" -#: replication/pgoutput/pgoutput.c:492 +#: replication/pgoutput/pgoutput.c:496 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or lower" msgstr "Client sendete proto_version=%d, aber Server unterstützt nur Protokoll %d oder niedriger" -#: replication/pgoutput/pgoutput.c:498 +#: replication/pgoutput/pgoutput.c:502 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or higher" msgstr "Client sendete proto_version=%d, aber Server unterstützt nur Protokoll %d oder höher" -#: replication/pgoutput/pgoutput.c:513 +#: replication/pgoutput/pgoutput.c:517 #, c-format msgid "requested proto_version=%d does not support streaming, need %d or higher" msgstr "angeforderte proto_version=%d unterstützt Streaming nicht, benötigt %d oder höher" -#: replication/pgoutput/pgoutput.c:519 +#: replication/pgoutput/pgoutput.c:523 #, c-format msgid "requested proto_version=%d does not support parallel streaming, need %d or higher" msgstr "angeforderte proto_version=%d unterstützt paralleles Streaming nicht, benötigt %d oder höher" -#: replication/pgoutput/pgoutput.c:524 +#: replication/pgoutput/pgoutput.c:528 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "Streaming angefordert, aber wird vom Ausgabe-Plugin nicht unterstützt" -#: replication/pgoutput/pgoutput.c:538 +#: replication/pgoutput/pgoutput.c:542 #, c-format msgid "requested proto_version=%d does not support two-phase commit, need %d or higher" msgstr "angeforderte proto_version=%d unterstützt Zwei-Phasen-Commit nicht, benötigt %d oder höher" -#: replication/pgoutput/pgoutput.c:543 +#: replication/pgoutput/pgoutput.c:547 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "Zwei-Phasen-Commit angefordert, aber wird vom Ausgabe-Plugin nicht unterstützt" -#: replication/pgoutput/pgoutput.c:1108 +#: replication/pgoutput/pgoutput.c:1112 #, c-format msgid "cannot use different values of publish_generated_columns for table \"%s.%s\" in different publications" msgstr "für Tabelle »%s.%s« können nicht verschiedene Werte für publish_generated_columns für verschiedene Publikationen verwendet werden" -#: replication/pgoutput/pgoutput.c:1811 +#: replication/pgoutput/pgoutput.c:1815 #, c-format msgid "skipped loading publication \"%s\"" msgstr "Laden der Publikation »%s« übersprungen" -#: replication/pgoutput/pgoutput.c:1812 +#: replication/pgoutput/pgoutput.c:1816 #, c-format msgid "The publication does not exist at this point in the WAL." msgstr "Die Publikation existiert an diesem Punkt im WAL nicht." -#: replication/pgoutput/pgoutput.c:1813 +#: replication/pgoutput/pgoutput.c:1817 #, c-format msgid "Create the publication if it does not exist." msgstr "Erzeugen Sie die Publikation, wenn sie nicht existiert." @@ -22294,255 +22297,255 @@ msgstr "Replikations-Slot-Name »%s« enthält ungültiges Zeichen" msgid "Replication slot names may only contain lower case letters, numbers, and the underscore character." msgstr "Replikations-Slot-Namen dürfen nur Kleinbuchstaben, Zahlen und Unterstriche enthalten." -#: replication/slot.c:383 +#: replication/slot.c:377 #, c-format msgid "cannot enable failover for a replication slot created on the standby" msgstr "Failover kann nicht für einen auf dem Standby erzeugten Replikations-Slot eingeschaltet werden" -#: replication/slot.c:395 replication/slot.c:921 +#: replication/slot.c:389 replication/slot.c:925 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "Failover kann nicht für einen temporären Replikations-Slot eingeschaltet werden" -#: replication/slot.c:420 +#: replication/slot.c:414 #, c-format msgid "replication slot \"%s\" already exists" msgstr "Replikations-Slot »%s« existiert bereits" -#: replication/slot.c:430 +#: replication/slot.c:424 #, c-format msgid "all replication slots are in use" msgstr "alle Replikations-Slots sind in Benutzung" -#: replication/slot.c:431 +#: replication/slot.c:425 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Geben Sie einen frei oder erhöhen Sie »max_replication_slots«." -#: replication/slot.c:615 replication/slotfuncs.c:664 +#: replication/slot.c:609 replication/slotfuncs.c:664 #: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:739 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "Replikations-Slot »%s« existiert nicht" -#: replication/slot.c:670 replication/slot.c:1466 +#: replication/slot.c:664 replication/slot.c:1499 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "Replikations-Slot »%s« ist aktiv für PID %d" -#: replication/slot.c:687 +#: replication/slot.c:681 #, c-format msgid "can no longer access replication slot \"%s\"" msgstr "auf Replikations-Slot »%s« kann nicht mehr zugegriffen werden" -#: replication/slot.c:689 +#: replication/slot.c:683 #, c-format msgid "This replication slot has been invalidated due to \"%s\"." msgstr "Dieser Replikations-Slot wurde wegen »%s« ungültig gemacht." -#: replication/slot.c:708 +#: replication/slot.c:702 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "logischer Replikations-Slot »%s« wurde akquiriert" -#: replication/slot.c:710 +#: replication/slot.c:704 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "physischer Replikations-Slot »%s« wurde akquiriert" -#: replication/slot.c:795 +#: replication/slot.c:789 #, c-format msgid "released logical replication slot \"%s\"" msgstr "logischer Replikations-Slot »%s« wurde freigegeben" -#: replication/slot.c:797 +#: replication/slot.c:791 #, c-format msgid "released physical replication slot \"%s\"" msgstr "physischer Replikations-Slot »%s« wurde freigegeben" -#: replication/slot.c:863 +#: replication/slot.c:857 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "kann Replikations-Slot »%s« nicht löschen" -#: replication/slot.c:886 +#: replication/slot.c:890 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "%s kann nicht mit einem physischem Replikations-Slot verwendet werden" -#: replication/slot.c:898 +#: replication/slot.c:902 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "Replikations-Slot »%s« kann nicht geändert werden" -#: replication/slot.c:908 +#: replication/slot.c:912 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "Failover kann nicht für einen Replikations-Slot auf dem Standby eingeschaltet werden" -#: replication/slot.c:1056 replication/slot.c:2187 replication/slot.c:2580 +#: replication/slot.c:1060 replication/slot.c:2228 replication/slot.c:2621 #, c-format msgid "could not remove directory \"%s\"" msgstr "konnte Verzeichnis »%s« nicht löschen" -#: replication/slot.c:1501 +#: replication/slot.c:1534 #, c-format msgid "replication slots can only be used if \"max_replication_slots\" > 0" msgstr "Replikations-Slots können nur verwendet werden, wenn »max_replication_slots« > 0" -#: replication/slot.c:1506 +#: replication/slot.c:1539 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "Replikations-Slots können nur verwendet werden, wenn »wal_level« >= replica" -#: replication/slot.c:1518 +#: replication/slot.c:1551 #, c-format msgid "permission denied to use replication slots" msgstr "keine Berechtigung, um Replikations-Slots zu verwenden" -#: replication/slot.c:1519 +#: replication/slot.c:1552 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "Nur Rollen mit dem %s-Attribut können Replikations-Slots verwenden." -#: replication/slot.c:1629 +#: replication/slot.c:1664 #, c-format msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by % bytes." msgstr[0] "Die restart_lsn des Slots %X/%X überschreitet das Maximum um % Byte." msgstr[1] "Die restart_lsn des Slots %X/%X überschreitet das Maximum um % Bytes." -#: replication/slot.c:1640 +#: replication/slot.c:1675 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "Der Slot kollidierte mit dem xid-Horizont %u." -#: replication/slot.c:1645 +#: replication/slot.c:1680 msgid "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the primary server." msgstr "Logische Dekodierung auf dem Standby-Server erfordert »wal_level« >= »logical« auf dem Primärserver." #. translator: %s is a GUC variable name -#: replication/slot.c:1651 +#: replication/slot.c:1686 #, c-format msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." msgstr "Die Leerlaufzeit des Slots von %lds überschreitet die durch »%s« konfigurierte Dauer von %ds." -#: replication/slot.c:1665 +#: replication/slot.c:1700 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "Prozess %d wird beendet, um Replikations-Slot »%s« freizugeben" -#: replication/slot.c:1667 +#: replication/slot.c:1702 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "obsoleter Replikations-Slot »%s« wird ungültig gemacht" -#: replication/slot.c:2518 +#: replication/slot.c:2559 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "Replikations-Slot-Datei »%s« hat falsche magische Zahl: %u statt %u" -#: replication/slot.c:2525 +#: replication/slot.c:2566 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "Replikations-Slot-Datei »%s« hat nicht unterstützte Version %u" -#: replication/slot.c:2532 +#: replication/slot.c:2573 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "Replikations-Slot-Datei »%s« hat falsche Länge %u" -#: replication/slot.c:2568 +#: replication/slot.c:2609 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "Prüfsummenfehler bei Replikations-Slot-Datei »%s«: ist %u, sollte %u sein" -#: replication/slot.c:2604 +#: replication/slot.c:2645 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "logischer Replikations-Slot »%s« existiert, aber »wal_level« < »logical«" -#: replication/slot.c:2606 +#: replication/slot.c:2647 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Ändern Sie »wal_level« in »logical« oder höher." -#: replication/slot.c:2618 +#: replication/slot.c:2659 #, c-format msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" msgstr "logischer Replikations-Slot »%s« existiert auf dem Standby, aber »hot_standby« = »off«" -#: replication/slot.c:2620 +#: replication/slot.c:2661 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "Ändern Sie »hot_standby« auf »on«." -#: replication/slot.c:2625 +#: replication/slot.c:2666 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "physischer Replikations-Slot »%s« existiert, aber »wal_level« < »replica«" -#: replication/slot.c:2627 +#: replication/slot.c:2668 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Ändern Sie »wal_level« in »replica« oder höher." -#: replication/slot.c:2674 +#: replication/slot.c:2715 #, c-format msgid "too many replication slots active before shutdown" msgstr "zu viele aktive Replikations-Slots vor dem Herunterfahren" -#: replication/slot.c:2675 +#: replication/slot.c:2716 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "Erhöhen Sie »max_replication_slots« und versuchen Sie es erneut." -#: replication/slot.c:2912 +#: replication/slot.c:2953 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "Replikations-Slot »%s«, der in Parameter »%s« angegeben ist, existiert nicht" -#: replication/slot.c:2914 replication/slot.c:2948 replication/slot.c:2963 +#: replication/slot.c:2955 replication/slot.c:2989 replication/slot.c:3004 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "Logische Replikation wartet auf den Standby, der zum Replikations-Slot »%s« gehört." -#: replication/slot.c:2916 +#: replication/slot.c:2957 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "Erzeugen Sie den Replikations-Slot »%s« oder berichtigen Sie den Parameter »%s«." -#: replication/slot.c:2926 +#: replication/slot.c:2967 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "logischer Replikations-Slot »%s« kann nicht in Parameter »%s« angegeben werden" -#: replication/slot.c:2928 +#: replication/slot.c:2969 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "Logische Replikation wartet auf Korrektur bei Replikations-Slot »%s«." -#: replication/slot.c:2930 +#: replication/slot.c:2971 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "Entfernen Sie den Replikations-Slot »%s« aus dem Parameter »%s«." -#: replication/slot.c:2946 +#: replication/slot.c:2987 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" msgstr "der physische Replikations-Slot »%s«, der in Parameter »%s« angegeben wurde, wurde ungültig gemacht" -#: replication/slot.c:2950 +#: replication/slot.c:2991 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "Löschen Sie den Replikations-Slot »%s« und erzeugen Sie ihn neu, oder berichtigen Sie den Parameter »%s«." -#: replication/slot.c:2961 +#: replication/slot.c:3002 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not have active_pid" msgstr "der Replikations-Slot »%s«, der in Parameter »%s« angegeben wurde, hat keine active_pid" -#: replication/slot.c:2965 +#: replication/slot.c:3006 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." msgstr "Starten Sie den zum Replikations-Slot »%s« gehörenden Standby oder berichtigen Sie den Parameter »%s«." @@ -22732,7 +22735,7 @@ msgstr "konnte nicht in WAL-Segment %s bei Position %d, Länge %lu schreiben: %m msgid "cannot use %s with a logical replication slot" msgstr "%s kann nicht mit einem logischem Replikations-Slot verwendet werden" -#: replication/walsender.c:623 storage/smgr/md.c:1867 +#: replication/walsender.c:623 storage/smgr/md.c:1881 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "konnte Positionszeiger nicht ans Ende der Datei »%s« setzen: %m" @@ -22762,11 +22765,6 @@ msgstr "Die History dieses Servers zweigte von Zeitleiste %u bei %X/%X ab." msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X" msgstr "angeforderter Startpunkt %X/%X ist vor der WAL-Flush-Position dieses Servers %X/%X" -#: replication/walsender.c:1151 -#, c-format -msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" -msgstr "unbekannter Wert für CREATE_REPLICATION_SLOT-Option »%s«: »%s«" - #. translator: %s is a CREATE_REPLICATION_SLOT statement #: replication/walsender.c:1257 #, c-format @@ -23031,266 +23029,266 @@ msgstr "Umbenennen einer ON-SELECT-Regel ist nicht erlaubt" msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten" msgstr "WITH-Anfragename »%s« erscheint sowohl in der Regelaktion als auch in der umzuschreibenden Anfrage" -#: rewrite/rewriteHandler.c:617 +#: rewrite/rewriteHandler.c:620 #, c-format msgid "INSERT ... SELECT rule actions are not supported for queries having data-modifying statements in WITH" msgstr "INSERT ... SELECT-Regelaktionen werden für Anfrangen mit datenmodifizierenden Anweisungen in WITH nicht unterstützt" -#: rewrite/rewriteHandler.c:671 +#: rewrite/rewriteHandler.c:674 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "RETURNING-Listen können nicht in mehreren Regeln auftreten" -#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 +#: rewrite/rewriteHandler.c:911 rewrite/rewriteHandler.c:950 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "kann keinen Wert außer DEFAULT in Spalte »%s« einfügen" -#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 +#: rewrite/rewriteHandler.c:913 rewrite/rewriteHandler.c:979 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "Spalte »%s« ist eine Identitätsspalte, die als GENERATED ALWAYS definiert ist." -#: rewrite/rewriteHandler.c:912 +#: rewrite/rewriteHandler.c:915 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "Verwenden Sie OVERRIDING SYSTEM VALUE, um diese Einschränkung außer Kraft zu setzen." -#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 +#: rewrite/rewriteHandler.c:977 rewrite/rewriteHandler.c:985 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "Spalte »%s« kann nur auf DEFAULT aktualisiert werden" -#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 +#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "mehrere Zuweisungen zur selben Spalte »%s«" -#: rewrite/rewriteHandler.c:1691 +#: rewrite/rewriteHandler.c:1694 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE wird für Relationen mit Regeln nicht unterstützt." -#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 +#: rewrite/rewriteHandler.c:1734 rewrite/rewriteHandler.c:3274 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "Zugriff auf Nicht-System-Sicht »%s« ist beschränkt" -#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 +#: rewrite/rewriteHandler.c:2133 rewrite/rewriteHandler.c:4285 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "unendliche Rekursion entdeckt in Regeln für Relation »%s«" -#: rewrite/rewriteHandler.c:2235 +#: rewrite/rewriteHandler.c:2238 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "unendliche Rekursion entdeckt in Policys für Relation »%s«" -#: rewrite/rewriteHandler.c:2598 +#: rewrite/rewriteHandler.c:2601 msgid "Junk view columns are not updatable." msgstr "Junk-Sichtspalten sind nicht aktualisierbar." -#: rewrite/rewriteHandler.c:2603 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that are not columns of their base relation are not updatable." msgstr "Sichtspalten, die nicht Spalten ihrer Basisrelation sind, sind nicht aktualisierbar." -#: rewrite/rewriteHandler.c:2606 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that refer to system columns are not updatable." msgstr "Sichtspalten, die auf Systemspalten verweisen, sind nicht aktualisierbar." -#: rewrite/rewriteHandler.c:2609 +#: rewrite/rewriteHandler.c:2612 msgid "View columns that return whole-row references are not updatable." msgstr "Sichtspalten, die Verweise auf ganze Zeilen zurückgeben, sind nicht aktualisierbar." -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing DISTINCT are not automatically updatable." msgstr "Sichten, die DISTINCT enthalten, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2673 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing GROUP BY are not automatically updatable." msgstr "Sichten, die GROUP BY enthalten, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2679 msgid "Views containing HAVING are not automatically updatable." msgstr "Sichten, die HAVING enthalten, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2679 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "Sichten, die UNION, INTERSECT oder EXCEPT enthalten, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2682 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing WITH are not automatically updatable." msgstr "Sichten, die WITH enthalten, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2685 +#: rewrite/rewriteHandler.c:2688 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "Sichten, die LIMIT oder OFFSET enthalten, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2697 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return aggregate functions are not automatically updatable." msgstr "Sichten, die Aggregatfunktionen zurückgeben, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2700 +#: rewrite/rewriteHandler.c:2703 msgid "Views that return window functions are not automatically updatable." msgstr "Sichten, die Fensterfunktionen zurückgeben, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2703 +#: rewrite/rewriteHandler.c:2706 msgid "Views that return set-returning functions are not automatically updatable." msgstr "Sichten, die Funktionen mit Ergebnismenge zurückgeben, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 -#: rewrite/rewriteHandler.c:2722 +#: rewrite/rewriteHandler.c:2713 rewrite/rewriteHandler.c:2717 +#: rewrite/rewriteHandler.c:2725 msgid "Views that do not select from a single table or view are not automatically updatable." msgstr "Sichten, die nicht aus einer einzigen Tabelle oder Sicht lesen, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2725 +#: rewrite/rewriteHandler.c:2728 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "Sichten, die TABLESAMPLE enthalten, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:2749 +#: rewrite/rewriteHandler.c:2752 msgid "Views that have no updatable columns are not automatically updatable." msgstr "Sichten, die keine aktualisierbaren Spalten haben, sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3133 rewrite/rewriteHandler.c:3168 #, c-format msgid "cannot insert into view \"%s\"" msgstr "kann nicht in Sicht »%s« einfügen" -#: rewrite/rewriteHandler.c:3133 +#: rewrite/rewriteHandler.c:3136 #, c-format msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule." msgstr "Um Einfügen in die Sicht zu ermöglichen, richten Sie einen INSTEAD OF INSERT Trigger oder eine ON INSERT DO INSTEAD Regel ohne Bedingung ein." -#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3141 rewrite/rewriteHandler.c:3177 #, c-format msgid "cannot update view \"%s\"" msgstr "kann Sicht »%s« nicht aktualisieren" -#: rewrite/rewriteHandler.c:3141 +#: rewrite/rewriteHandler.c:3144 #, c-format msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule." msgstr "Um Aktualisieren der Sicht zu ermöglichen, richten Sie einen INSTEAD OF UPDATE Trigger oder eine ON UPDATE DO INSTEAD Regel ohne Bedingung ein." -#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 +#: rewrite/rewriteHandler.c:3149 rewrite/rewriteHandler.c:3186 #, c-format msgid "cannot delete from view \"%s\"" msgstr "kann nicht aus Sicht »%s« löschen" -#: rewrite/rewriteHandler.c:3149 +#: rewrite/rewriteHandler.c:3152 #, c-format msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule." msgstr "Um Löschen aus der Sicht zu ermöglichen, richten Sie einen INSTEAD OF DELETE Trigger oder eine ON DELETE DO INSTEAD Regel ohne Bedingung ein." -#: rewrite/rewriteHandler.c:3168 +#: rewrite/rewriteHandler.c:3171 #, c-format msgid "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT trigger." msgstr "Um Einfügen in die Sicht mit MERGE zu ermöglichen, richten Sie einen INSTEAD OF INSERT Trigger ein." -#: rewrite/rewriteHandler.c:3177 +#: rewrite/rewriteHandler.c:3180 #, c-format msgid "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE trigger." msgstr "Um Aktualisieren der Sicht mit MERGE zu ermöglichen, richten Sie einen INSTEAD OF UPDATE Trigger ein." -#: rewrite/rewriteHandler.c:3186 +#: rewrite/rewriteHandler.c:3189 #, c-format msgid "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE trigger." msgstr "Um Löschen aus der Sicht zu ermöglichen, richten Sie einen INSTEAD OF DELETE Trigger ein." -#: rewrite/rewriteHandler.c:3361 +#: rewrite/rewriteHandler.c:3364 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "kann nicht in Spalte »%s« von Sicht »%s« einfügen" -#: rewrite/rewriteHandler.c:3369 +#: rewrite/rewriteHandler.c:3372 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "kann Spalte »%s« von Sicht »%s« nicht aktualisieren" -#: rewrite/rewriteHandler.c:3377 +#: rewrite/rewriteHandler.c:3380 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "kann nicht in Spalte »%s« von Sicht »%s« mergen" -#: rewrite/rewriteHandler.c:3405 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "cannot merge into view \"%s\"" msgstr "kann nicht in Sicht »%s« mergen" -#: rewrite/rewriteHandler.c:3407 +#: rewrite/rewriteHandler.c:3410 #, c-format msgid "MERGE is not supported for views with INSTEAD OF triggers for some actions but not all." msgstr "MERGE wird nicht unterstützt für Sichten mit INSTEAD-OF-Trigger für einige Aktionen aber nicht für alle." -#: rewrite/rewriteHandler.c:3408 +#: rewrite/rewriteHandler.c:3411 #, c-format msgid "To enable merging into the view, either provide a full set of INSTEAD OF triggers or drop the existing INSTEAD OF triggers." msgstr "Um Mergen in die Sicht zu ermöglichen, richten Sie entweder einen vollen Satz an INSTEAD-OF-Triggern ein oder löschen Sie die bestehenden INSTEAD-OF-Trigger." -#: rewrite/rewriteHandler.c:3923 +#: rewrite/rewriteHandler.c:3942 #, c-format msgid "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in WITH" msgstr "DO-INSTEAD-NOTIFY-Regeln werden für datenmodifizierende Anweisungen in WITH nicht unterstützt" -#: rewrite/rewriteHandler.c:3934 +#: rewrite/rewriteHandler.c:3953 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH" msgstr "DO-INSTEAD-NOTHING-Regeln werden für datenmodifizierende Anweisungen in WITH nicht unterstützt" -#: rewrite/rewriteHandler.c:3948 +#: rewrite/rewriteHandler.c:3967 #, c-format msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "DO-INSTEAD-Regeln mit Bedingung werden für datenmodifizierende Anweisungen in WITH nicht unterstützt" -#: rewrite/rewriteHandler.c:3952 +#: rewrite/rewriteHandler.c:3971 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "DO-ALSO-Regeln werden für datenmodifizierende Anweisungen in WITH nicht unterstützt" -#: rewrite/rewriteHandler.c:3957 +#: rewrite/rewriteHandler.c:3976 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "DO-INSTEAD-Regeln mit mehreren Anweisungen werden für datenmodifizierende Anweisungen in WITH nicht unterstützt" -#: rewrite/rewriteHandler.c:4217 +#: rewrite/rewriteHandler.c:4237 msgid "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "Sichten mit DO-INSTEAD-Regeln mit Bedingung sind nicht automatisch aktualisierbar." -#: rewrite/rewriteHandler.c:4314 +#: rewrite/rewriteHandler.c:4335 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "INSERT RETURNING kann in Relation »%s« nicht ausgeführt werden" -#: rewrite/rewriteHandler.c:4316 +#: rewrite/rewriteHandler.c:4337 #, c-format msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." msgstr "Sie benötigen eine ON INSERT DO INSTEAD Regel ohne Bedingung, mit RETURNING-Klausel." -#: rewrite/rewriteHandler.c:4321 +#: rewrite/rewriteHandler.c:4342 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "UPDATE RETURNING kann in Relation »%s« nicht ausgeführt werden" -#: rewrite/rewriteHandler.c:4323 +#: rewrite/rewriteHandler.c:4344 #, c-format msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." msgstr "Sie benötigen eine ON UPDATE DO INSTEAD Regel ohne Bedingung, mit RETURNING-Klausel." -#: rewrite/rewriteHandler.c:4328 +#: rewrite/rewriteHandler.c:4349 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "DELETE RETURNING kann in Relation »%s« nicht ausgeführt werden" -#: rewrite/rewriteHandler.c:4330 +#: rewrite/rewriteHandler.c:4351 #, c-format msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." msgstr "Sie benötigen eine ON DELETE DO INSTEAD Regel ohne Bedingung, mit RETURNING-Klausel." -#: rewrite/rewriteHandler.c:4348 +#: rewrite/rewriteHandler.c:4369 #, c-format msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules" msgstr "INSERT mit ON-CONFLICT-Klausel kann nicht mit Tabelle verwendet werden, die INSERT- oder UPDATE-Regeln hat" -#: rewrite/rewriteHandler.c:4405 +#: rewrite/rewriteHandler.c:4426 #, c-format msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries" msgstr "WITH kann nicht in einer Anfrage verwendet werden, die durch Regeln in mehrere Anfragen umgeschrieben wird" @@ -23777,7 +23775,7 @@ msgstr "konnte Größe von temporärer Datei »%s« von BufFile »%s« nicht bes msgid "could not delete fileset \"%s\": %m" msgstr "konnte Fileset »%s« nicht löschen: %m" -#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1318 +#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1332 #, c-format msgid "could not truncate file \"%s\": %m" msgstr "kann Datei »%s« nicht kürzen: %m" @@ -23787,138 +23785,138 @@ msgstr "kann Datei »%s« nicht kürzen: %m" msgid "could not clone file \"%s\" to \"%s\": %m" msgstr "konnte Datei »%s« nicht nach »%s« klonen: %m" -#: storage/file/fd.c:580 storage/file/fd.c:652 storage/file/fd.c:688 +#: storage/file/fd.c:583 storage/file/fd.c:655 storage/file/fd.c:691 #, c-format msgid "could not flush dirty data: %m" msgstr "konnte schmutzige Daten nicht flushen: %m" -#: storage/file/fd.c:610 +#: storage/file/fd.c:613 #, c-format msgid "could not determine dirty data size: %m" msgstr "konnte Größe der schmutzigen Daten nicht bestimmen: %m" -#: storage/file/fd.c:662 +#: storage/file/fd.c:665 #, c-format msgid "could not munmap() while flushing data: %m" msgstr "munmap() fehlgeschlagen beim Flushen von Daten: %m" -#: storage/file/fd.c:980 +#: storage/file/fd.c:983 #, c-format msgid "getrlimit failed: %m" msgstr "getrlimit fehlgeschlagen: %m" -#: storage/file/fd.c:1071 +#: storage/file/fd.c:1074 #, c-format msgid "insufficient file descriptors available to start server process" msgstr "nicht genug Dateideskriptoren verfügbar, um Serverprozess zu starten" -#: storage/file/fd.c:1072 +#: storage/file/fd.c:1075 #, c-format msgid "System allows %d, server needs at least %d, %d files are already open." msgstr "System erlaubt %d, Server benötigt mindestens %d, %d Dateien sind bereit offen." -#: storage/file/fd.c:1161 storage/file/fd.c:2676 storage/file/fd.c:2785 -#: storage/file/fd.c:2939 +#: storage/file/fd.c:1164 storage/file/fd.c:2679 storage/file/fd.c:2788 +#: storage/file/fd.c:2942 #, c-format msgid "out of file descriptors: %m; release and retry" msgstr "keine Dateideskriptoren mehr: %m; freigeben und nochmal versuchen" -#: storage/file/fd.c:1537 +#: storage/file/fd.c:1540 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "temporäre Datei: Pfad »%s«, Größe %lu" -#: storage/file/fd.c:1676 +#: storage/file/fd.c:1679 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "konnte temporäres Verzeichnis »%s« nicht erzeugen: %m" -#: storage/file/fd.c:1683 +#: storage/file/fd.c:1686 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "konnte temporäres Unterverzeichnis »%s« nicht erzeugen: %m" -#: storage/file/fd.c:1880 +#: storage/file/fd.c:1883 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "konnte temporäre Datei »%s« nicht erzeugen: %m" -#: storage/file/fd.c:1916 +#: storage/file/fd.c:1919 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "konnte temporäre Datei »%s« nicht öffnen: %m" -#: storage/file/fd.c:1957 +#: storage/file/fd.c:1960 #, c-format msgid "could not unlink temporary file \"%s\": %m" msgstr "konnte temporäre Datei »%s« nicht löschen: %m" -#: storage/file/fd.c:2047 +#: storage/file/fd.c:2050 #, c-format msgid "could not delete file \"%s\": %m" msgstr "konnte Datei »%s« nicht löschen: %m" -#: storage/file/fd.c:2286 +#: storage/file/fd.c:2289 #, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" msgstr "Größe der temporären Datei überschreitet »temp_file_limit« (%dkB)" -#: storage/file/fd.c:2652 storage/file/fd.c:2711 +#: storage/file/fd.c:2655 storage/file/fd.c:2714 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\"" msgstr "maxAllocatedDescs (%d) überschritten beim Versuch, die Datei »%s« zu öffnen" -#: storage/file/fd.c:2756 +#: storage/file/fd.c:2759 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\"" msgstr "maxAllocatedDescs (%d) überschritten beim Versuch, den Befehl »%s« auszuführen" -#: storage/file/fd.c:2915 +#: storage/file/fd.c:2918 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\"" msgstr "maxAllocatedDescs (%d) überschritten beim Versuch, das Verzeichnis »%s« zu öffnen" -#: storage/file/fd.c:3446 +#: storage/file/fd.c:3449 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "unerwartete Datei im Verzeichnis für temporäre Dateien gefunden: »%s«" -#: storage/file/fd.c:3564 +#: storage/file/fd.c:3567 #, c-format msgid "syncing data directory (syncfs), elapsed time: %ld.%02d s, current path: %s" msgstr "synchronisiere Datenverzeichnis (syncfs), abgelaufene Zeit: %ld.%02d s, aktueller Pfad: %s" -#: storage/file/fd.c:3791 +#: storage/file/fd.c:3794 #, c-format msgid "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "synchronisiere Datenverzeichnis (pre-fsync), abgelaufene Zeit: %ld.%02d s, aktueller Pfad: %s" -#: storage/file/fd.c:3823 +#: storage/file/fd.c:3826 #, c-format msgid "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "synchronisiere Datenverzeichnis (fsync), abgelaufene Zeit: %ld.%02d s, aktueller Pfad: %s" -#: storage/file/fd.c:4012 +#: storage/file/fd.c:4015 #, c-format msgid "\"%s\" is not supported on this platform." msgstr "»%s« wird auf dieser Plattform nicht unterstützt." -#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 +#: storage/file/fd.c:4030 tcop/backend_startup.c:1080 #, c-format msgid "Invalid list syntax in parameter \"%s\"." msgstr "Ungültige Listensyntax für Parameter »%s«." -#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 +#: storage/file/fd.c:4050 tcop/backend_startup.c:1054 #, c-format msgid "Invalid option \"%s\"." msgstr "Ungültige Option »%s«." -#: storage/file/fd.c:4060 +#: storage/file/fd.c:4063 #, c-format msgid "\"%s\" is not supported for WAL because %s is too small." msgstr "»%s« wird für WAL nicht unterstützt, weil %s zu klein ist." -#: storage/file/fd.c:4068 +#: storage/file/fd.c:4071 #, c-format msgid "\"%s\" is not supported for data because %s is too small." msgstr "»%s« wird für Daten nicht unterstützt, weil %s zu klein ist." @@ -24008,22 +24006,22 @@ msgstr "konnte Shared-Memory-Segment »%s« nicht schließen: %m" msgid "could not duplicate handle for \"%s\": %m" msgstr "konnte Handle für »%s« nicht duplizieren: %m" -#: storage/ipc/dsm_registry.c:142 +#: storage/ipc/dsm_registry.c:144 #, c-format msgid "DSM segment name cannot be empty" msgstr "DSM-Segmentname kann nicht leer sein" -#: storage/ipc/dsm_registry.c:146 +#: storage/ipc/dsm_registry.c:148 #, c-format msgid "DSM segment name too long" msgstr "DSN-Segmentname zu lang" -#: storage/ipc/dsm_registry.c:150 +#: storage/ipc/dsm_registry.c:152 #, c-format msgid "DSM segment size must be nonzero" msgstr "DSM-Segmentgröße darf nicht null sein" -#: storage/ipc/dsm_registry.c:176 +#: storage/ipc/dsm_registry.c:168 #, c-format msgid "requested DSM segment size does not match size of existing segment" msgstr "angeforderte DSM-Segmentgröße stimmt nicht mit der Größe des existierenden Segments überein" @@ -24526,7 +24524,7 @@ msgstr "verfälschter Line-Pointer: offset = %u, size = %u" msgid "cannot extend file \"%s\" beyond %u blocks" msgstr "kann Datei »%s« nicht auf über %u Blöcke erweitern" -#: storage/smgr/md.c:517 storage/smgr/md.c:628 +#: storage/smgr/md.c:517 storage/smgr/md.c:639 #, c-format msgid "could not extend file \"%s\": %m" msgstr "konnte Datei »%s« nicht erweitern: %m" @@ -24536,62 +24534,62 @@ msgstr "konnte Datei »%s« nicht erweitern: %m" msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u" msgstr "konnte Datei »%s« nicht erweitern: es wurden nur %d von %d Bytes bei Block %u geschrieben" -#: storage/smgr/md.c:606 +#: storage/smgr/md.c:617 #, c-format msgid "could not extend file \"%s\" with FileFallocate(): %m" msgstr "konnte Datei »%s« nicht mit FileFallocate() erweitern: %m" -#: storage/smgr/md.c:899 storage/smgr/md.c:2047 +#: storage/smgr/md.c:910 storage/smgr/md.c:2061 #, c-format msgid "could not read blocks %u..%u in file \"%s\": %m" msgstr "konnte Blöcke %u..%u in Datei »%s« nicht lesen: %m" -#: storage/smgr/md.c:946 storage/smgr/md.c:2060 +#: storage/smgr/md.c:957 storage/smgr/md.c:2074 #, c-format msgid "could not read blocks %u..%u in file \"%s\": read only %zu of %zu bytes" msgstr "konnte Blöcke %u..%u in Datei »%s« nicht lesen: es wurden nur %zu von %zu Bytes gelesen" -#: storage/smgr/md.c:1023 +#: storage/smgr/md.c:1034 #, c-format msgid "could not start reading blocks %u..%u in file \"%s\": %m" msgstr "konnte nicht anfangen, die Blöcke %u..%u in Datei »%s« zu lesen: %m" -#: storage/smgr/md.c:1119 +#: storage/smgr/md.c:1130 #, c-format msgid "could not write blocks %u..%u in file \"%s\": %m" msgstr "konnte Blöcke %u..%u in Datei »%s« nicht schreiben: %m" -#: storage/smgr/md.c:1289 +#: storage/smgr/md.c:1303 #, c-format msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now" msgstr "konnte Datei »%s« nicht auf %u Blöcke kürzen: es sind jetzt nur %u Blöcke" -#: storage/smgr/md.c:1344 +#: storage/smgr/md.c:1358 #, c-format msgid "could not truncate file \"%s\" to %u blocks: %m" msgstr "konnte Datei »%s« nicht auf %u Blöcke kürzen: %m" -#: storage/smgr/md.c:1832 +#: storage/smgr/md.c:1846 #, c-format msgid "could not open file \"%s\" (target block %u): previous segment is only %u blocks" msgstr "konnte Datei »%s« nicht öffnen (Zielblock %u): vorhergehendes Segment hat nur %u Blöcke" -#: storage/smgr/md.c:1846 +#: storage/smgr/md.c:1860 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "konnte Datei »%s« nicht öffnen (Zielblock %u): %m" -#: storage/smgr/smgr.c:1106 +#: storage/smgr/smgr.c:1115 #, c-format msgid "file \"%s\"" msgstr "Datei »%s«" -#: storage/smgr/smgr.c:1108 +#: storage/smgr/smgr.c:1117 #, c-format msgid "block %u in file \"%s\"" msgstr "Block %u in Datei »%s«" -#: storage/smgr/smgr.c:1112 +#: storage/smgr/smgr.c:1121 #, c-format msgid "blocks %u..%u in file \"%s\"" msgstr "Blöcke %u..%u in Datei »%s«" @@ -25655,7 +25653,7 @@ msgstr "Eingabedatentyp ist kein Array" #: utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 #: utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 #: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 -#: utils/adt/varlena.c:3184 utils/adt/varlena.c:4118 +#: utils/adt/varlena.c:3195 utils/adt/varlena.c:4129 #, c-format msgid "integer out of range" msgstr "integer ist außerhalb des gültigen Bereichs" @@ -25901,8 +25899,8 @@ msgstr "NULL-Werte im Array sind in diesem Zusammenhang nicht erlaubt" msgid "cannot compare arrays of different element types" msgstr "kann Arrays mit verschiedenen Elementtypen nicht vergleichen" -#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2805 -#: utils/adt/multirangetypes.c:2877 utils/adt/rangetypes.c:1425 +#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2806 +#: utils/adt/multirangetypes.c:2878 utils/adt/rangetypes.c:1425 #: utils/adt/rangetypes.c:1489 utils/adt/rowtypes.c:1893 #, c-format msgid "could not identify a hash function for type %s" @@ -26376,7 +26374,7 @@ msgstr "»%s« ist außerhalb des gültigen Bereichs für Typ double precision" #: utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 #: utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 #: utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 -#: utils/adt/varlena.c:4093 +#: utils/adt/varlena.c:4104 #, c-format msgid "smallint out of range" msgstr "smallint ist außerhalb des gültigen Bereichs" @@ -26805,7 +26803,7 @@ msgstr "Schrittgröße kann nicht gleich null sein" #: utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 #: utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 #: utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 -#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4143 +#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4154 #, c-format msgid "bigint out of range" msgstr "bigint ist außerhalb des gültigen Bereichs" @@ -27548,12 +27546,12 @@ msgstr "Start einer Range erwartet." msgid "Expected comma or end of multirange." msgstr "Komma oder Ende der Multirange erwartet." -#: utils/adt/multirangetypes.c:981 +#: utils/adt/multirangetypes.c:982 #, c-format msgid "multiranges cannot be constructed from multidimensional arrays" msgstr "Multiranges können nicht aus mehrdimensionalen Arrays konstruiert werden" -#: utils/adt/multirangetypes.c:1007 +#: utils/adt/multirangetypes.c:1008 #, c-format msgid "multirange values cannot contain null members" msgstr "Multirange-Werte können keine Mitglieder, die NULL sind, haben" @@ -28067,7 +28065,7 @@ msgstr "Zu viele Kommas." msgid "Junk after right parenthesis or bracket." msgstr "Müll nach rechter runder oder eckiger Klammer." -#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4486 #, c-format msgid "regular expression failed: %s" msgstr "regulärer Ausdruck fehlgeschlagen: %s" @@ -28135,7 +28133,7 @@ msgid "Provide two argument types for operator." msgstr "Geben Sie zwei Argumente für den Operator an." #: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 -#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3481 utils/adt/varlena.c:3486 +#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3492 utils/adt/varlena.c:3497 #, c-format msgid "invalid name syntax" msgstr "ungültige Namenssyntax" @@ -28691,8 +28689,8 @@ msgid "bit string too long for type bit varying(%d)" msgstr "Bitkette ist zu lang für Typ bit varying(%d)" #: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 -#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3102 -#: utils/adt/varlena.c:3180 +#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3113 +#: utils/adt/varlena.c:3191 #, c-format msgid "negative substring length not allowed" msgstr "negative Teilzeichenkettenlänge nicht erlaubt" @@ -28717,7 +28715,7 @@ msgstr "binäres »Exklusiv-Oder« nicht mit Bitketten unterschiedlicher Länge msgid "bit index %d out of valid range (0..%d)" msgstr "Bitindex %d ist außerhalb des gültigen Bereichs (0..%d)" -#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3395 #, c-format msgid "new bit must be 0 or 1" msgstr "neues Bit muss 0 oder 1 sein" @@ -28732,92 +28730,92 @@ msgstr "Wert zu lang für Typ character(%d)" msgid "value too long for type character varying(%d)" msgstr "Wert zu lang für Typ character varying(%d)" -#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1602 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "konnte die für den Zeichenkettenvergleich zu verwendende Sortierfolge nicht bestimmen" -#: utils/adt/varlena.c:1864 +#: utils/adt/varlena.c:1875 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "nichtdeterministische Sortierfolgen werden für Teilzeichenkettensuchen nicht unterstützt" -#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 +#: utils/adt/varlena.c:3279 utils/adt/varlena.c:3346 #, c-format msgid "index %d out of valid range, 0..%d" msgstr "Index %d ist außerhalb des gültigen Bereichs, 0..%d" -#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#: utils/adt/varlena.c:3310 utils/adt/varlena.c:3382 #, c-format msgid "index % out of valid range, 0..%" msgstr "Index % ist außerhalb des gültigen Bereichs, 0..%" -#: utils/adt/varlena.c:4587 +#: utils/adt/varlena.c:4598 #, c-format msgid "field position must not be zero" msgstr "Feldposition darf nicht null sein" -#: utils/adt/varlena.c:5832 +#: utils/adt/varlena.c:5843 #, c-format msgid "unterminated format() type specifier" msgstr "Typspezifikation in format() nicht abgeschlossen" -#: utils/adt/varlena.c:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 +#: utils/adt/varlena.c:5844 utils/adt/varlena.c:5978 utils/adt/varlena.c:6099 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "Für ein einzelnes »%%« geben Sie »%%%%« an." -#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 +#: utils/adt/varlena.c:5976 utils/adt/varlena.c:6097 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "unbekannte Typspezifikation in format(): »%.*s«" -#: utils/adt/varlena.c:5978 utils/adt/varlena.c:6035 +#: utils/adt/varlena.c:5989 utils/adt/varlena.c:6046 #, c-format msgid "too few arguments for format()" msgstr "zu wenige Argumente für format()" -#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 +#: utils/adt/varlena.c:6142 utils/adt/varlena.c:6324 #, c-format msgid "number is out of range" msgstr "Zahl ist außerhalb des gültigen Bereichs" -#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 +#: utils/adt/varlena.c:6205 utils/adt/varlena.c:6233 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "Format gibt Argument 0 an, aber die Argumente sind von 1 an nummeriert" -#: utils/adt/varlena.c:6215 +#: utils/adt/varlena.c:6226 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "Argumentposition der Breitenangabe muss mit »$« enden" -#: utils/adt/varlena.c:6260 +#: utils/adt/varlena.c:6271 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "NULL-Werte können nicht als SQL-Bezeichner formatiert werden" -#: utils/adt/varlena.c:6468 +#: utils/adt/varlena.c:6479 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "Unicode-Normalisierung kann nur durchgeführt werden, wenn die Serverkodierung UTF8 ist" -#: utils/adt/varlena.c:6481 +#: utils/adt/varlena.c:6492 #, c-format msgid "invalid normalization form: %s" msgstr "ungültige Normalisierungsform: %s" -#: utils/adt/varlena.c:6526 +#: utils/adt/varlena.c:6537 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "Unicode-Kategorisierung kann nur durchgeführt werden, wenn die Serverkodierung UTF8 ist" -#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 +#: utils/adt/varlena.c:6754 utils/adt/varlena.c:6789 utils/adt/varlena.c:6824 #, c-format msgid "invalid Unicode code point: %04X" msgstr "ungültiger Unicode-Codepunkt: %04X" -#: utils/adt/varlena.c:6843 +#: utils/adt/varlena.c:6854 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "Unicode-Escapes müssen \\XXXX, \\+XXXXXX, \\uXXXX oder \\UXXXXXXXX sein." @@ -30080,2268 +30078,2272 @@ msgstr "SET %s darf nur ein Argument haben" msgid "SET requires parameter name" msgstr "SET benötigt Parameternamen" -#: utils/misc/guc_tables.c:692 +#: utils/misc/guc_tables.c:701 msgid "Ungrouped" msgstr "Ungruppiert" -#: utils/misc/guc_tables.c:693 +#: utils/misc/guc_tables.c:702 msgid "File Locations" msgstr "Dateipfade" -#: utils/misc/guc_tables.c:694 +#: utils/misc/guc_tables.c:703 msgid "Connections and Authentication / Connection Settings" msgstr "Verbindungen und Authentifizierung / Verbindungseinstellungen" -#: utils/misc/guc_tables.c:695 +#: utils/misc/guc_tables.c:704 msgid "Connections and Authentication / TCP Settings" msgstr "Verbindungen und Authentifizierung / TCP-Einstellungen" -#: utils/misc/guc_tables.c:696 +#: utils/misc/guc_tables.c:705 msgid "Connections and Authentication / Authentication" msgstr "Verbindungen und Authentifizierung / Authentifizierung" -#: utils/misc/guc_tables.c:697 +#: utils/misc/guc_tables.c:706 msgid "Connections and Authentication / SSL" msgstr "Verbindungen und Authentifizierung / SSL" -#: utils/misc/guc_tables.c:698 +#: utils/misc/guc_tables.c:707 msgid "Resource Usage / Memory" msgstr "Resourcenbenutzung / Speicher" -#: utils/misc/guc_tables.c:699 +#: utils/misc/guc_tables.c:708 msgid "Resource Usage / Disk" msgstr "Resourcenbenutzung / Festplatte" -#: utils/misc/guc_tables.c:700 +#: utils/misc/guc_tables.c:709 msgid "Resource Usage / Kernel Resources" msgstr "Resourcenbenutzung / Kernelresourcen" -#: utils/misc/guc_tables.c:701 +#: utils/misc/guc_tables.c:710 msgid "Resource Usage / Background Writer" msgstr "Resourcenbenutzung / Background-Writer" -#: utils/misc/guc_tables.c:702 +#: utils/misc/guc_tables.c:711 msgid "Resource Usage / I/O" msgstr "Resourcenbenutzung / I/O" -#: utils/misc/guc_tables.c:703 +#: utils/misc/guc_tables.c:712 msgid "Resource Usage / Worker Processes" msgstr "Resourcenbenutzung / Arbeitsprozesse" -#: utils/misc/guc_tables.c:704 +#: utils/misc/guc_tables.c:713 msgid "Write-Ahead Log / Settings" msgstr "Write-Ahead-Log / Einstellungen" -#: utils/misc/guc_tables.c:705 +#: utils/misc/guc_tables.c:714 msgid "Write-Ahead Log / Checkpoints" msgstr "Write-Ahead-Log / Checkpoints" -#: utils/misc/guc_tables.c:706 +#: utils/misc/guc_tables.c:715 msgid "Write-Ahead Log / Archiving" msgstr "Write-Ahead-Log / Archivierung" -#: utils/misc/guc_tables.c:707 +#: utils/misc/guc_tables.c:716 msgid "Write-Ahead Log / Recovery" msgstr "Write-Ahead-Log / Wiederherstellung" -#: utils/misc/guc_tables.c:708 +#: utils/misc/guc_tables.c:717 msgid "Write-Ahead Log / Archive Recovery" msgstr "Write-Ahead-Log / Archivwiederherstellung" -#: utils/misc/guc_tables.c:709 +#: utils/misc/guc_tables.c:718 msgid "Write-Ahead Log / Recovery Target" msgstr "Write-Ahead-Log / Wiederherstellungsziele" -#: utils/misc/guc_tables.c:710 +#: utils/misc/guc_tables.c:719 msgid "Write-Ahead Log / Summarization" msgstr "Write-Ahead-Log / Zusammenfassung (Summarization)" -#: utils/misc/guc_tables.c:711 +#: utils/misc/guc_tables.c:720 msgid "Replication / Sending Servers" msgstr "Replikation / sendende Server" -#: utils/misc/guc_tables.c:712 +#: utils/misc/guc_tables.c:721 msgid "Replication / Primary Server" msgstr "Replikation / Primärserver" -#: utils/misc/guc_tables.c:713 +#: utils/misc/guc_tables.c:722 msgid "Replication / Standby Servers" msgstr "Replikation / Standby-Server" -#: utils/misc/guc_tables.c:714 +#: utils/misc/guc_tables.c:723 msgid "Replication / Subscribers" msgstr "Replikation / Subskriptionsserver" -#: utils/misc/guc_tables.c:715 +#: utils/misc/guc_tables.c:724 msgid "Query Tuning / Planner Method Configuration" msgstr "Anfragetuning / Planermethoden" -#: utils/misc/guc_tables.c:716 +#: utils/misc/guc_tables.c:725 msgid "Query Tuning / Planner Cost Constants" msgstr "Anfragetuning / Planerkosten" -#: utils/misc/guc_tables.c:717 +#: utils/misc/guc_tables.c:726 msgid "Query Tuning / Genetic Query Optimizer" msgstr "Anfragetuning / Genetischer Anfrageoptimierer" -#: utils/misc/guc_tables.c:718 +#: utils/misc/guc_tables.c:727 msgid "Query Tuning / Other Planner Options" msgstr "Anfragetuning / Andere Planeroptionen" -#: utils/misc/guc_tables.c:719 +#: utils/misc/guc_tables.c:728 msgid "Reporting and Logging / Where to Log" msgstr "Berichte und Logging / Wohin geloggt wird" -#: utils/misc/guc_tables.c:720 +#: utils/misc/guc_tables.c:729 msgid "Reporting and Logging / When to Log" msgstr "Berichte und Logging / Wann geloggt wird" -#: utils/misc/guc_tables.c:721 +#: utils/misc/guc_tables.c:730 msgid "Reporting and Logging / What to Log" msgstr "Berichte und Logging / Was geloggt wird" -#: utils/misc/guc_tables.c:722 +#: utils/misc/guc_tables.c:731 msgid "Reporting and Logging / Process Title" msgstr "Berichte und Logging / Prozesstitel" -#: utils/misc/guc_tables.c:723 +#: utils/misc/guc_tables.c:732 msgid "Statistics / Monitoring" msgstr "Statistiken / Überwachung" -#: utils/misc/guc_tables.c:724 +#: utils/misc/guc_tables.c:733 msgid "Statistics / Cumulative Query and Index Statistics" msgstr "Statistiken / Kumulierte Anfrage- und Indexstatistiken" -#: utils/misc/guc_tables.c:725 +#: utils/misc/guc_tables.c:734 msgid "Vacuuming / Automatic Vacuuming" msgstr "Vacuum / Automatisches Vacuum" -#: utils/misc/guc_tables.c:726 +#: utils/misc/guc_tables.c:735 msgid "Vacuuming / Cost-Based Vacuum Delay" msgstr "Vacuum / Kostenbasierte Vacuum-Verzögerung" -#: utils/misc/guc_tables.c:727 +#: utils/misc/guc_tables.c:736 msgid "Vacuuming / Default Behavior" msgstr "Vacuum / Voreinstellungen" -#: utils/misc/guc_tables.c:728 +#: utils/misc/guc_tables.c:737 msgid "Vacuuming / Freezing" msgstr "Vacuum / Einfrieren" -#: utils/misc/guc_tables.c:729 +#: utils/misc/guc_tables.c:738 msgid "Client Connection Defaults / Statement Behavior" msgstr "Standardeinstellungen für Clientverbindungen / Anweisungsverhalten" -#: utils/misc/guc_tables.c:730 +#: utils/misc/guc_tables.c:739 msgid "Client Connection Defaults / Locale and Formatting" msgstr "Standardeinstellungen für Clientverbindungen / Locale und Formatierung" -#: utils/misc/guc_tables.c:731 +#: utils/misc/guc_tables.c:740 msgid "Client Connection Defaults / Shared Library Preloading" msgstr "Standardeinstellungen für Clientverbindungen / Shared Library Preloading" -#: utils/misc/guc_tables.c:732 +#: utils/misc/guc_tables.c:741 msgid "Client Connection Defaults / Other Defaults" msgstr "Standardeinstellungen für Clientverbindungen / Andere" -#: utils/misc/guc_tables.c:733 +#: utils/misc/guc_tables.c:742 msgid "Lock Management" msgstr "Sperrenverwaltung" -#: utils/misc/guc_tables.c:734 +#: utils/misc/guc_tables.c:743 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions" msgstr "Versions- und Plattformkompatibilität / Frühere PostgreSQL-Versionen" -#: utils/misc/guc_tables.c:735 +#: utils/misc/guc_tables.c:744 msgid "Version and Platform Compatibility / Other Platforms and Clients" msgstr "Versions- und Plattformkompatibilität / Andere Plattformen und Clients" -#: utils/misc/guc_tables.c:736 +#: utils/misc/guc_tables.c:745 msgid "Error Handling" msgstr "Fehlerbehandlung" -#: utils/misc/guc_tables.c:737 +#: utils/misc/guc_tables.c:746 msgid "Preset Options" msgstr "Voreingestellte Optionen" -#: utils/misc/guc_tables.c:738 +#: utils/misc/guc_tables.c:747 msgid "Customized Options" msgstr "Angepasste Optionen" -#: utils/misc/guc_tables.c:739 +#: utils/misc/guc_tables.c:748 msgid "Developer Options" msgstr "Entwickleroptionen" -#: utils/misc/guc_tables.c:794 +#: utils/misc/guc_tables.c:803 msgid "Enables the planner's use of sequential-scan plans." msgstr "Ermöglicht sequenzielle Scans in Planer." -#: utils/misc/guc_tables.c:804 +#: utils/misc/guc_tables.c:813 msgid "Enables the planner's use of index-scan plans." msgstr "Ermöglicht Index-Scans im Planer." -#: utils/misc/guc_tables.c:814 +#: utils/misc/guc_tables.c:823 msgid "Enables the planner's use of index-only-scan plans." msgstr "Ermöglicht Index-Only-Scans im Planer." -#: utils/misc/guc_tables.c:824 +#: utils/misc/guc_tables.c:833 msgid "Enables the planner's use of bitmap-scan plans." msgstr "Ermöglicht Bitmap-Scans im Planer." -#: utils/misc/guc_tables.c:834 +#: utils/misc/guc_tables.c:843 msgid "Enables the planner's use of TID scan plans." msgstr "Ermöglicht TID-Scans im Planer." -#: utils/misc/guc_tables.c:844 +#: utils/misc/guc_tables.c:853 msgid "Enables the planner's use of explicit sort steps." msgstr "Ermöglicht Sortierschritte im Planer." -#: utils/misc/guc_tables.c:854 +#: utils/misc/guc_tables.c:863 msgid "Enables the planner's use of incremental sort steps." msgstr "Ermöglicht inkrementelle Sortierschritte im Planer." -#: utils/misc/guc_tables.c:864 +#: utils/misc/guc_tables.c:873 msgid "Enables the planner's use of hashed aggregation plans." msgstr "Ermöglicht Hash-Aggregierung im Planer." -#: utils/misc/guc_tables.c:874 +#: utils/misc/guc_tables.c:883 msgid "Enables the planner's use of materialization." msgstr "Ermöglicht Materialisierung im Planer." -#: utils/misc/guc_tables.c:884 +#: utils/misc/guc_tables.c:893 msgid "Enables the planner's use of memoization." msgstr "Ermöglicht Memoization im Planer." -#: utils/misc/guc_tables.c:894 +#: utils/misc/guc_tables.c:903 msgid "Enables the planner's use of nested-loop join plans." msgstr "Ermöglicht Nested-Loop-Verbunde im Planer." -#: utils/misc/guc_tables.c:904 +#: utils/misc/guc_tables.c:913 msgid "Enables the planner's use of merge join plans." msgstr "Ermöglicht Merge-Verbunde im Planer." -#: utils/misc/guc_tables.c:914 +#: utils/misc/guc_tables.c:923 msgid "Enables the planner's use of hash join plans." msgstr "Ermöglicht Hash-Verbunde im Planer." -#: utils/misc/guc_tables.c:924 +#: utils/misc/guc_tables.c:933 msgid "Enables the planner's use of gather merge plans." msgstr "Ermöglicht Gather-Merge-Pläne im Planer." -#: utils/misc/guc_tables.c:934 +#: utils/misc/guc_tables.c:943 msgid "Enables partitionwise join." msgstr "Ermöglicht partitionsweise Verbunde." -#: utils/misc/guc_tables.c:944 +#: utils/misc/guc_tables.c:953 msgid "Enables partitionwise aggregation and grouping." msgstr "Ermöglicht partitionsweise Aggregierung und Gruppierung." -#: utils/misc/guc_tables.c:954 +#: utils/misc/guc_tables.c:963 msgid "Enables the planner's use of parallel append plans." msgstr "Ermöglicht parallele Append-Pläne im Planer." -#: utils/misc/guc_tables.c:964 +#: utils/misc/guc_tables.c:973 msgid "Enables the planner's use of parallel hash plans." msgstr "Ermöglicht parallele Hash-Pläne im Planer." -#: utils/misc/guc_tables.c:974 +#: utils/misc/guc_tables.c:983 msgid "Enables plan-time and execution-time partition pruning." msgstr "Ermöglicht Partition-Pruning zur Planzeit und zur Ausführungszeit." -#: utils/misc/guc_tables.c:975 +#: utils/misc/guc_tables.c:984 msgid "Allows the query planner and executor to compare partition bounds to conditions in the query to determine which partitions must be scanned." msgstr "Erlaubt es dem Planer und dem Executor, Partitionsbegrenzungen mit Bedingungen in der Anfrage zu vergleichen, um festzustellen, welche Partitionen gelesen werden müssen." -#: utils/misc/guc_tables.c:986 +#: utils/misc/guc_tables.c:995 msgid "Enables the planner's ability to produce plans that provide presorted input for ORDER BY / DISTINCT aggregate functions." msgstr "Schaltet die Fähigkeit des Planers ein, Pläne zu erzeugen, die vorsortierte Eingaben für ORDER-BY-/DISTINCT-Aggregatfunktionen bereitstellen." -#: utils/misc/guc_tables.c:989 +#: utils/misc/guc_tables.c:998 msgid "Allows the query planner to build plans that provide presorted input for aggregate functions with an ORDER BY / DISTINCT clause. When disabled, implicit sorts are always performed during execution." msgstr "Erlaubt es dem Planer, Pläne zu bauen, die vorsortierte Eingaben für Aggregatfunktionen mit ORDER-BY-/DISTINCT-Klausel bereitstellen. Wenn ausgeschaltet, werden immer implizite Sortierschritte bei der Ausführung durchgeführt." -#: utils/misc/guc_tables.c:1001 +#: utils/misc/guc_tables.c:1010 msgid "Enables the planner's use of async append plans." msgstr "Ermöglicht asynchrone Append-Pläne im Planer." -#: utils/misc/guc_tables.c:1011 +#: utils/misc/guc_tables.c:1020 msgid "Enables removal of unique self-joins." msgstr "Ermöglicht das Entfernen von Unique Self-Joins." -#: utils/misc/guc_tables.c:1021 +#: utils/misc/guc_tables.c:1030 msgid "Enables reordering of GROUP BY keys." msgstr "Ermöglicht Umordnen von GROUP-BY-Schlüsseln." -#: utils/misc/guc_tables.c:1031 +#: utils/misc/guc_tables.c:1040 msgid "Enables reordering of DISTINCT keys." msgstr "Ermöglicht Umordnen von DISTINCT-Schlüsseln." -#: utils/misc/guc_tables.c:1041 +#: utils/misc/guc_tables.c:1050 msgid "Enables genetic query optimization." msgstr "Ermöglicht genetische Anfrageoptimierung." -#: utils/misc/guc_tables.c:1042 +#: utils/misc/guc_tables.c:1051 msgid "This algorithm attempts to do planning without exhaustive searching." msgstr "Dieser Algorithmus versucht das Planen ohne erschöpfende Suche durchzuführen." -#: utils/misc/guc_tables.c:1056 +#: utils/misc/guc_tables.c:1065 msgid "Shows whether the current user is a superuser." msgstr "Zeigt, ob der aktuelle Benutzer ein Superuser ist." -#: utils/misc/guc_tables.c:1071 +#: utils/misc/guc_tables.c:1080 msgid "Allows running the ALTER SYSTEM command." msgstr "Erlaubt das Ausführen des Befehls ALTER SYSTEM." -#: utils/misc/guc_tables.c:1072 +#: utils/misc/guc_tables.c:1081 msgid "Can be set to off for environments where global configuration changes should be made using a different method." msgstr "Kann auf aus gesetzt werden in Umgebungen, wo globale Konfigurationsänderungen mit einer anderen Methode gemacht werden sollten." -#: utils/misc/guc_tables.c:1082 +#: utils/misc/guc_tables.c:1091 msgid "Enables advertising the server via Bonjour." msgstr "Ermöglicht die Bekanntgabe des Servers mit Bonjour." -#: utils/misc/guc_tables.c:1091 +#: utils/misc/guc_tables.c:1100 msgid "Collects transaction commit time." msgstr "Sammelt Commit-Timestamps von Transaktionen." -#: utils/misc/guc_tables.c:1100 +#: utils/misc/guc_tables.c:1109 msgid "Enables SSL connections." msgstr "Ermöglicht SSL-Verbindungen." -#: utils/misc/guc_tables.c:1109 +#: utils/misc/guc_tables.c:1118 msgid "Controls whether \"ssl_passphrase_command\" is called during server reload." msgstr "Kontrolliert, ob »ssl_passphrase_command« beim Neuladen des Servers aufgerufen wird." -#: utils/misc/guc_tables.c:1118 +#: utils/misc/guc_tables.c:1127 msgid "Give priority to server ciphersuite order." msgstr "Der Ciphersuite-Reihenfolge des Servers Vorrang geben." -#: utils/misc/guc_tables.c:1127 +#: utils/misc/guc_tables.c:1136 msgid "Forces synchronization of updates to disk." msgstr "Erzwingt die Synchronisierung von Aktualisierungen auf Festplatte." -#: utils/misc/guc_tables.c:1128 +#: utils/misc/guc_tables.c:1137 msgid "The server will use the fsync() system call in several places to make sure that updates are physically written to disk. This ensures that a database cluster will recover to a consistent state after an operating system or hardware crash." msgstr "Der Server verwendet den Systemaufruf fsync() an mehreren Stellen, um sicherzustellen, dass Datenänderungen physikalisch auf die Festplatte geschrieben werden. Das stellt sicher, dass der Datenbankcluster nach einem Betriebssystemabsturz oder Hardwarefehler in einem korrekten Zustand wiederhergestellt werden kann." -#: utils/misc/guc_tables.c:1139 +#: utils/misc/guc_tables.c:1148 msgid "Continues processing after a checksum failure." msgstr "Setzt die Verarbeitung trotz Prüfsummenfehler fort." -#: utils/misc/guc_tables.c:1140 +#: utils/misc/guc_tables.c:1149 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 "Wenn eine fehlerhafte Prüfsumme entdeckt wird, gibt PostgreSQL normalerweise ein Fehler aus und bricht die aktuelle Transaktion ab. Wenn »ignore_checksum_failure« an ist, dann wird der Fehler ignoriert (aber trotzdem eine Warnung ausgegeben) und die Verarbeitung geht weiter. Dieses Verhalten kann Abstürze und andere ernsthafte Probleme verursachen. Es hat keine Auswirkungen, wenn Prüfsummen nicht eingeschaltet sind." -#: utils/misc/guc_tables.c:1154 +#: utils/misc/guc_tables.c:1163 msgid "Continues processing past damaged page headers." msgstr "Setzt die Verarbeitung trotz kaputter Seitenköpfe fort." -#: utils/misc/guc_tables.c:1155 +#: utils/misc/guc_tables.c:1164 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 "Wenn ein kaputter Seitenkopf entdeckt wird, gibt PostgreSQL normalerweise einen Fehler aus und bricht die aktuelle Transaktion ab. Wenn »zero_damaged_pages« an ist, dann wird eine Warnung ausgegeben, die kaputte Seite mit Nullen gefüllt und die Verarbeitung geht weiter. Dieses Verhalten zerstört Daten, nämlich alle Zeilen in der kaputten Seite." -#: utils/misc/guc_tables.c:1168 +#: utils/misc/guc_tables.c:1177 msgid "Continues recovery after an invalid pages failure." msgstr "Setzt die Wiederherstellung trotz Fehler durch ungültige Seiten fort." -#: utils/misc/guc_tables.c:1169 +#: utils/misc/guc_tables.c:1178 msgid "Detection of WAL records having references to invalid pages during recovery causes PostgreSQL to raise a PANIC-level error, aborting the recovery. Setting \"ignore_invalid_pages\" to true causes the system to ignore invalid page references in WAL records (but still report a warning), and continue recovery. This behavior may cause crashes, data loss, propagate or hide corruption, or other serious problems. Only has an effect during recovery or in standby mode." msgstr "Wenn WAL-Einträge mit Verweisen auf ungültige Seiten bei der Wiederherstellung erkannt werden, verursacht das einen PANIC-Fehler, wodurch die Wiederherstellung abgebrochen wird. Wenn »ignore_invalid_pages« an ist, dann werden ungültige Seitenverweise in WAL-Einträgen ignoriert (aber trotzen eine Warnung ausgegeben) und die Wiederherstellung wird fortgesetzt. Dieses Verhalten kann Abstürze und Datenverlust verursachen, Datenverfälschung verbreiten oder verstecken sowie andere ernsthafte Probleme verursachen. Es hat nur Auswirkungen im Wiederherstellungs- oder Standby-Modus." -#: utils/misc/guc_tables.c:1187 +#: utils/misc/guc_tables.c:1196 msgid "Writes full pages to WAL when first modified after a checkpoint." msgstr "Schreibt volle Seiten in den WAL, sobald sie nach einem Checkpoint geändert werden." -#: utils/misc/guc_tables.c:1188 +#: utils/misc/guc_tables.c:1197 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 "Ein Seitenschreibvorgang während eines Betriebssystemabsturzes könnte eventuell nur teilweise geschrieben worden sein. Bei der Wiederherstellung sind die im WAL gespeicherten Zeilenänderungen nicht ausreichend. Diese Option schreibt Seiten, sobald sie nach einem Checkpoint geändert worden sind, damit eine volle Wiederherstellung möglich ist." -#: utils/misc/guc_tables.c:1201 +#: utils/misc/guc_tables.c:1210 msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modification." msgstr "Schreibt volle Seiten in den WAL, sobald sie nach einem Checkpoint geändert werden, auch für eine nicht kritische Änderung." -#: utils/misc/guc_tables.c:1211 +#: utils/misc/guc_tables.c:1220 msgid "Writes zeroes to new WAL files before first use." msgstr "Schreibt Nullen in neue WAL-Dateien vor der ersten Verwendung." -#: utils/misc/guc_tables.c:1221 +#: utils/misc/guc_tables.c:1230 msgid "Recycles WAL files by renaming them." msgstr "WAL-Dateien werden durch Umbenennen wiederverwendet." -#: utils/misc/guc_tables.c:1231 +#: utils/misc/guc_tables.c:1240 msgid "Logs each checkpoint." msgstr "Schreibt jeden Checkpoint in den Log." -#: utils/misc/guc_tables.c:1240 +#: utils/misc/guc_tables.c:1249 msgid "Logs details of pre-authentication connection handshake." msgstr "Schreibt Details über den Verbindungs-Handshake vor der Authentifizierung in den Log." -#: utils/misc/guc_tables.c:1250 +#: utils/misc/guc_tables.c:1259 msgid "Logs end of a session, including duration." msgstr "Schreibt jedes Verbindungsende mit Sitzungszeit in den Log." -#: utils/misc/guc_tables.c:1259 +#: utils/misc/guc_tables.c:1268 msgid "Logs each replication command." msgstr "Schreibt jeden Replikationsbefehl in den Log." -#: utils/misc/guc_tables.c:1268 +#: utils/misc/guc_tables.c:1277 msgid "Shows whether the running server has assertion checks enabled." msgstr "Zeigt, ob der laufende Server Assertion-Prüfungen aktiviert hat." -#: utils/misc/guc_tables.c:1279 +#: utils/misc/guc_tables.c:1288 msgid "Terminate session on any error." msgstr "Sitzung bei jedem Fehler abbrechen." -#: utils/misc/guc_tables.c:1288 +#: utils/misc/guc_tables.c:1297 msgid "Reinitialize server after backend crash." msgstr "Server nach Absturz eines Serverprozesses reinitialisieren." -#: utils/misc/guc_tables.c:1297 +#: utils/misc/guc_tables.c:1306 msgid "Remove temporary files after backend crash." msgstr "Temporäre Dateien nach Absturz eines Serverprozesses löschen." -#: utils/misc/guc_tables.c:1307 +#: utils/misc/guc_tables.c:1316 msgid "Send SIGABRT not SIGQUIT to child processes after backend crash." msgstr "SIGABRT statt SIGQUIT an Kindprozesse noch Absturz eines Serverprozesses senden." -#: utils/misc/guc_tables.c:1317 +#: utils/misc/guc_tables.c:1326 msgid "Send SIGABRT not SIGKILL to stuck child processes." msgstr "SIGABRT statt SIGKILL an feststeckende Kindprozesse senden." -#: utils/misc/guc_tables.c:1328 +#: utils/misc/guc_tables.c:1337 msgid "Logs the duration of each completed SQL statement." msgstr "Loggt die Dauer jeder abgeschlossenen SQL-Anweisung." -#: utils/misc/guc_tables.c:1338 +#: utils/misc/guc_tables.c:1347 msgid "Set this to force all parse and plan trees to be passed through copyObject(), to facilitate catching errors and omissions in copyObject()." msgstr "Wenn dies gesetzt ist, werden alle Parse- und Plan-Bäume durch copyObject() geschickt, um Fehler und Versäumnisse in copyObject() finden zu können." -#: utils/misc/guc_tables.c:1355 +#: utils/misc/guc_tables.c:1364 msgid "Set this to force all parse and plan trees to be passed through outfuncs.c/readfuncs.c, to facilitate catching errors and omissions in those modules." msgstr "Wenn dies gesetzt ist, werden alle Parse- und Plan-Bäume durch outfuncs.c/readfuncs.c geschickt, um Fehler und Versäumnisse in diesen Modulen finden zu können." -#: utils/misc/guc_tables.c:1372 +#: utils/misc/guc_tables.c:1381 msgid "Set this to force all raw parse trees for DML statements to be scanned by raw_expression_tree_walker(), to facilitate catching errors and omissions in that function." msgstr "Wenn dies gesetzt ist, werden alle Raw-Parse-Bäume für DML-Anweisungen durch raw_expression_tree_walker() geprüft, um Fehler und Versäumnisse in dieser Funktion finden zu können." -#: utils/misc/guc_tables.c:1390 +#: utils/misc/guc_tables.c:1399 msgid "Logs each query's parse tree." msgstr "Scheibt den Parsebaum jeder Anfrage in den Log." -#: utils/misc/guc_tables.c:1399 +#: utils/misc/guc_tables.c:1408 msgid "Logs each query's rewritten parse tree." msgstr "Schreibt den umgeschriebenen Parsebaum jeder Anfrage in den Log." -#: utils/misc/guc_tables.c:1408 +#: utils/misc/guc_tables.c:1417 msgid "Logs each query's execution plan." msgstr "Schreibt den Ausführungsplan jeder Anfrage in den Log." -#: utils/misc/guc_tables.c:1417 +#: utils/misc/guc_tables.c:1426 msgid "Indents parse and plan tree displays." msgstr "Rückt die Anzeige von Parse- und Planbäumen ein." -#: utils/misc/guc_tables.c:1426 +#: utils/misc/guc_tables.c:1435 msgid "Writes parser performance statistics to the server log." msgstr "Schreibt Parser-Leistungsstatistiken in den Serverlog." -#: utils/misc/guc_tables.c:1435 +#: utils/misc/guc_tables.c:1444 msgid "Writes planner performance statistics to the server log." msgstr "Schreibt Planer-Leistungsstatistiken in den Serverlog." -#: utils/misc/guc_tables.c:1444 +#: utils/misc/guc_tables.c:1453 msgid "Writes executor performance statistics to the server log." msgstr "Schreibt Executor-Leistungsstatistiken in den Serverlog." -#: utils/misc/guc_tables.c:1453 +#: utils/misc/guc_tables.c:1462 msgid "Writes cumulative performance statistics to the server log." msgstr "Schreibt Gesamtleistungsstatistiken in den Serverlog." -#: utils/misc/guc_tables.c:1463 +#: utils/misc/guc_tables.c:1472 msgid "Logs system resource usage statistics (memory and CPU) on various B-tree operations." msgstr "Loggt Statistiken über Systemressourcen (Speicher und CPU) während diverser B-Baum-Operationen." -#: utils/misc/guc_tables.c:1475 +#: utils/misc/guc_tables.c:1484 msgid "Collects information about executing commands." msgstr "Sammelt Informationen über ausgeführte Befehle." -#: utils/misc/guc_tables.c:1476 +#: utils/misc/guc_tables.c:1485 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 "Schaltet die Sammlung von Informationen über den aktuell ausgeführten Befehl jeder Sitzung ein, einschließlich der Zeit, and dem die Befehlsausführung begann." -#: utils/misc/guc_tables.c:1486 +#: utils/misc/guc_tables.c:1495 msgid "Collects statistics on database activity." msgstr "Sammelt Statistiken über Datenbankaktivität." -#: utils/misc/guc_tables.c:1495 +#: utils/misc/guc_tables.c:1504 msgid "Collects timing statistics for cost-based vacuum delay." msgstr "Sammelt Zeitmessungsstatistiken über kostenbasierte Vacuum-Verzögerung." -#: utils/misc/guc_tables.c:1504 +#: utils/misc/guc_tables.c:1513 msgid "Collects timing statistics for database I/O activity." msgstr "Sammelt Zeitmessungsstatistiken über Datenbank-I/O-Aktivität." -#: utils/misc/guc_tables.c:1513 +#: utils/misc/guc_tables.c:1522 msgid "Collects timing statistics for WAL I/O activity." msgstr "Sammelt Zeitmessungsstatistiken über WAL-I/O-Aktivität." -#: utils/misc/guc_tables.c:1523 +#: utils/misc/guc_tables.c:1532 msgid "Updates the process title to show the active SQL command." msgstr "Der Prozesstitel wird aktualisiert, um den aktuellen SQL-Befehl anzuzeigen." -#: utils/misc/guc_tables.c:1524 +#: utils/misc/guc_tables.c:1533 msgid "Enables updating of the process title every time a new SQL command is received by the server." msgstr "Ermöglicht das Aktualisieren des Prozesstitels bei jedem von Server empfangenen neuen SQL-Befehl." -#: utils/misc/guc_tables.c:1533 +#: utils/misc/guc_tables.c:1542 msgid "Starts the autovacuum subprocess." msgstr "Startet den Autovacuum-Prozess." -#: utils/misc/guc_tables.c:1543 +#: utils/misc/guc_tables.c:1552 msgid "Generates debugging output for LISTEN and NOTIFY." msgstr "Erzeugt Debug-Ausgabe für LISTEN und NOTIFY." -#: utils/misc/guc_tables.c:1555 +#: utils/misc/guc_tables.c:1564 msgid "Emits information about lock usage." msgstr "Gibt Informationen über Sperrenverwendung aus." -#: utils/misc/guc_tables.c:1565 +#: utils/misc/guc_tables.c:1574 msgid "Emits information about user lock usage." msgstr "Gibt Informationen über Benutzersperrenverwendung aus." -#: utils/misc/guc_tables.c:1575 +#: utils/misc/guc_tables.c:1584 msgid "Emits information about lightweight lock usage." msgstr "Gibt Informationen über die Verwendung von Lightweight Locks aus." -#: utils/misc/guc_tables.c:1585 +#: utils/misc/guc_tables.c:1594 msgid "Dumps information about all current locks when a deadlock timeout occurs." msgstr "Gibt Informationen über alle aktuellen Sperren aus, wenn eine Verklemmung auftritt." -#: utils/misc/guc_tables.c:1597 +#: utils/misc/guc_tables.c:1606 msgid "Logs long lock waits." msgstr "Schreibt Meldungen über langes Warten auf Sperren in den Log." -#: utils/misc/guc_tables.c:1606 +#: utils/misc/guc_tables.c:1615 msgid "Logs lock failures." msgstr "Schreibt Meldungen über fehlgeschlagenes Sperren in den Log." -#: utils/misc/guc_tables.c:1615 +#: utils/misc/guc_tables.c:1624 msgid "Logs standby recovery conflict waits." msgstr "Schreibt Meldungen über Warten wegen Konflikten bei Wiederherstellung in den Log." -#: utils/misc/guc_tables.c:1624 +#: utils/misc/guc_tables.c:1633 msgid "Logs the host name in the connection logs." msgstr "Schreibt den Hostnamen jeder Verbindung in den Log." -#: utils/misc/guc_tables.c:1625 +#: utils/misc/guc_tables.c:1634 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 "In der Standardeinstellung zeigen die Verbindungslogs nur die IP-Adresse der Clienthosts. Wenn Sie den Hostnamen auch anzeigen wollen, dann können Sie diese Option anschalten, aber je nachdem, wie Ihr DNS eingerichtet ist, kann das die Leistung nicht unerheblich beeinträchtigen." -#: utils/misc/guc_tables.c:1636 +#: utils/misc/guc_tables.c:1645 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"." msgstr "Behandelt »ausdruck=NULL« als »ausdruck IS NULL«." -#: utils/misc/guc_tables.c:1637 +#: utils/misc/guc_tables.c:1646 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 "Wenn an, dann werden Ausdrücke der Form ausdruck = NULL (oder NULL = ausdruck) wie ausdruck IS NULL behandelt, das heißt, sie ergeben wahr, wenn das Ergebnis von ausdruck der NULL-Wert ist, und ansonsten falsch. Das korrekte Verhalten von ausdruck = NULL ist immer den NULL-Wert (für unbekannt) zurückzugeben." -#: utils/misc/guc_tables.c:1649 +#: utils/misc/guc_tables.c:1658 msgid "Sets the default read-only status of new transactions." msgstr "Setzt den Standardwert für die Read-Only-Einstellung einer neuen Transaktion." -#: utils/misc/guc_tables.c:1659 +#: utils/misc/guc_tables.c:1668 msgid "Sets the current transaction's read-only status." msgstr "Setzt die Read-Only-Einstellung der aktuellen Transaktion." -#: utils/misc/guc_tables.c:1669 +#: utils/misc/guc_tables.c:1678 msgid "Sets the default deferrable status of new transactions." msgstr "Setzt den Standardwert für die Deferrable-Einstellung einer neuen Transaktion." -#: utils/misc/guc_tables.c:1678 +#: utils/misc/guc_tables.c:1687 msgid "Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures." msgstr "Ob eine serialisierbare Read-Only-Transaktion aufgeschoben werden soll, bis sie ohne mögliche Serialisierungsfehler ausgeführt werden kann." -#: utils/misc/guc_tables.c:1688 +#: utils/misc/guc_tables.c:1697 msgid "Enables row security." msgstr "Schaltet Sicherheit auf Zeilenebene ein." -#: utils/misc/guc_tables.c:1689 +#: utils/misc/guc_tables.c:1698 msgid "When enabled, row security will be applied to all users." msgstr "Wenn eingeschaltet, wird Sicherheit auf Zeilenebene auf alle Benutzer angewendet." -#: utils/misc/guc_tables.c:1697 +#: utils/misc/guc_tables.c:1706 msgid "Check routine bodies during CREATE FUNCTION and CREATE PROCEDURE." msgstr "Prüft Funktionskörper bei der Ausführung von CREATE FUNCTION und CREATE PROCEDURE." -#: utils/misc/guc_tables.c:1706 +#: utils/misc/guc_tables.c:1715 msgid "Enables input of NULL elements in arrays." msgstr "Ermöglicht die Eingabe von NULL-Elementen in Arrays." -#: utils/misc/guc_tables.c:1707 +#: utils/misc/guc_tables.c:1716 msgid "When turned on, unquoted NULL in an array input value means a null value; otherwise it is taken literally." msgstr "Wenn dies eingeschaltet ist, wird ein nicht gequotetes NULL in einem Array-Eingabewert als NULL-Wert interpretiert, ansonsten als Zeichenkette." -#: utils/misc/guc_tables.c:1723 +#: utils/misc/guc_tables.c:1732 msgid "WITH OIDS is no longer supported; this can only be false." msgstr "WITH OIDS wird nicht mehr unterstützt; kann nur auf falsch gesetzt werden." -#: utils/misc/guc_tables.c:1733 +#: utils/misc/guc_tables.c:1742 msgid "Start a subprocess to capture stderr, csvlog and/or jsonlog into log files." msgstr "Startet einen Subprozess, um stderr, csvlog und/oder jsonlog in Logdateien auszugeben." -#: utils/misc/guc_tables.c:1742 +#: utils/misc/guc_tables.c:1751 msgid "Truncate existing log files of same name during log rotation." msgstr "Kürzt existierende Logdateien mit dem selben Namen beim Rotieren." -#: utils/misc/guc_tables.c:1752 +#: utils/misc/guc_tables.c:1761 msgid "Emit information about resource usage in sorting." msgstr "Gibt Informationen über die Ressourcenverwendung beim Sortieren aus." -#: utils/misc/guc_tables.c:1765 +#: utils/misc/guc_tables.c:1774 msgid "Generate debugging output for synchronized scanning." msgstr "Erzeugt Debug-Ausgabe für synchronisiertes Scannen." -#: utils/misc/guc_tables.c:1780 +#: utils/misc/guc_tables.c:1789 msgid "Enables bounded sorting using heap sort." msgstr "Ermöglicht Bounded Sorting mittels Heap-Sort." -#: utils/misc/guc_tables.c:1793 +#: utils/misc/guc_tables.c:1802 msgid "Emit WAL-related debugging output." msgstr "Gibt diverse Debug-Meldungen über WAL aus." -#: utils/misc/guc_tables.c:1805 +#: utils/misc/guc_tables.c:1814 msgid "Shows whether datetimes are integer based." msgstr "Zeigt ob Datum/Zeit intern ganze Zahlen verwendet." -#: utils/misc/guc_tables.c:1816 +#: utils/misc/guc_tables.c:1825 msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive." msgstr "Bestimmt, ob Groß-/Kleinschreibung bei Kerberos- und GSSAPI-Benutzernamen ignoriert werden soll." -#: utils/misc/guc_tables.c:1826 +#: utils/misc/guc_tables.c:1835 msgid "Sets whether GSSAPI delegation should be accepted from the client." msgstr "Bestimmt, ob GSSAPI-Delegation vom Client akzeptiert werden soll." -#: utils/misc/guc_tables.c:1836 +#: utils/misc/guc_tables.c:1845 msgid "Warn about backslash escapes in ordinary string literals." msgstr "Warnt bei Backslash-Escapes in normalen Zeichenkettenkonstanten." -#: utils/misc/guc_tables.c:1846 +#: utils/misc/guc_tables.c:1855 msgid "Causes '...' strings to treat backslashes literally." msgstr "Bewirkt, dass Zeichenketten der Art '...' Backslashes als normales Zeichen behandeln." -#: utils/misc/guc_tables.c:1857 +#: utils/misc/guc_tables.c:1866 msgid "Enables synchronized sequential scans." msgstr "Ermöglicht synchronisierte sequenzielle Scans." -#: utils/misc/guc_tables.c:1867 +#: utils/misc/guc_tables.c:1876 msgid "Sets whether to include or exclude transaction with recovery target." msgstr "Setzt ob die Transaktion mit dem Wiederherstellungsziel einbezogen oder ausgeschlossen wird." -#: utils/misc/guc_tables.c:1877 +#: utils/misc/guc_tables.c:1886 msgid "Starts the WAL summarizer process to enable incremental backup." msgstr "Startet den WAL-Summarizer-Prozess, um inkrementelle Backups zu ermöglichen." -#: utils/misc/guc_tables.c:1887 +#: utils/misc/guc_tables.c:1896 msgid "Allows connections and queries during recovery." msgstr "Erlaubt Verbindungen und Anfragen während der Wiederherstellung." -#: utils/misc/guc_tables.c:1897 +#: utils/misc/guc_tables.c:1906 msgid "Allows feedback from a hot standby to the primary that will avoid query conflicts." msgstr "Erlaubt Rückmeldungen von einem Hot Standby an den Primärserver, um Anfragekonflikte zu vermeiden." -#: utils/misc/guc_tables.c:1907 +#: utils/misc/guc_tables.c:1916 msgid "Shows whether hot standby is currently active." msgstr "Zeigt, ob Hot Standby aktuell aktiv ist." -#: utils/misc/guc_tables.c:1918 +#: utils/misc/guc_tables.c:1927 msgid "Allows modifications of the structure of system tables." msgstr "Erlaubt Änderungen an der Struktur von Systemtabellen." -#: utils/misc/guc_tables.c:1929 +#: utils/misc/guc_tables.c:1938 msgid "Disables reading from system indexes." msgstr "Schaltet das Lesen aus Systemindexen ab." -#: utils/misc/guc_tables.c:1930 +#: utils/misc/guc_tables.c:1939 msgid "It does not prevent updating the indexes, so it is safe to use. The worst consequence is slowness." msgstr "Das Aktualisieren der Indexe wird nicht verhindert, also ist die Verwendung unbedenklich. Schlimmstenfalls wird alles langsamer." -#: utils/misc/guc_tables.c:1941 +#: utils/misc/guc_tables.c:1950 msgid "Allows tablespaces directly inside pg_tblspc, for testing." msgstr "Erlaubt Tablespaces direkt in pg_tblspc, zum Testen." -#: utils/misc/guc_tables.c:1952 +#: utils/misc/guc_tables.c:1961 msgid "Enables backward compatibility mode for privilege checks on large objects." msgstr "Schaltet den rückwärtskompatiblen Modus für Privilegienprüfungen bei Large Objects ein." -#: utils/misc/guc_tables.c:1953 +#: utils/misc/guc_tables.c:1962 msgid "Skips privilege checks when reading or modifying large objects, for compatibility with PostgreSQL releases prior to 9.0." msgstr "Überspringt Privilegienprüfungen beim Lesen oder Ändern von Large Objects, zur Kompatibilität mit PostgreSQL-Versionen vor 9.0." -#: utils/misc/guc_tables.c:1963 +#: utils/misc/guc_tables.c:1972 msgid "When generating SQL fragments, quote all identifiers." msgstr "Wenn SQL-Fragmente erzeugt werden, alle Bezeichner quoten." -#: utils/misc/guc_tables.c:1973 +#: utils/misc/guc_tables.c:1982 msgid "Shows whether data checksums are turned on for this cluster." msgstr "Zeigt, ob Datenprüfsummen in diesem Cluster angeschaltet sind." -#: utils/misc/guc_tables.c:1984 +#: utils/misc/guc_tables.c:1993 msgid "Add sequence number to syslog messages to avoid duplicate suppression." msgstr "Syslog-Nachrichten mit Sequenznummern versehen, um Unterdrückung doppelter Nachrichten zu unterbinden." -#: utils/misc/guc_tables.c:1994 +#: utils/misc/guc_tables.c:2003 msgid "Split messages sent to syslog by lines and to fit into 1024 bytes." msgstr "An Syslog gesendete Nachrichten nach Zeilen und in maximal 1024 Bytes aufteilen." -#: utils/misc/guc_tables.c:2004 +#: utils/misc/guc_tables.c:2013 msgid "Controls whether Gather and Gather Merge also run subplans." msgstr "Kontrolliert, ob Gather und Gather Merge auch Subpläne ausführen." -#: utils/misc/guc_tables.c:2005 +#: utils/misc/guc_tables.c:2014 msgid "Should gather nodes also run subplans or just gather tuples?" msgstr "Sollen Gather-Knoten auch Subpläne ausführen oder nur Tupel sammeln?" -#: utils/misc/guc_tables.c:2015 +#: utils/misc/guc_tables.c:2024 msgid "Allow JIT compilation." msgstr "Erlaubt JIT-Kompilierung." -#: utils/misc/guc_tables.c:2026 +#: utils/misc/guc_tables.c:2035 msgid "Register JIT-compiled functions with debugger." msgstr "JIT-kompilierte Funktionen im Debugger registrieren." -#: utils/misc/guc_tables.c:2043 +#: utils/misc/guc_tables.c:2052 msgid "Write out LLVM bitcode to facilitate JIT debugging." msgstr "LLVM-Bitcode in Dateien schreiben, um Debuggen von JIT zu erleichtern." -#: utils/misc/guc_tables.c:2054 +#: utils/misc/guc_tables.c:2063 msgid "Allow JIT compilation of expressions." msgstr "Erlaubt JIT-Kompilierung von Ausdrücken." -#: utils/misc/guc_tables.c:2065 +#: utils/misc/guc_tables.c:2074 msgid "Register JIT-compiled functions with perf profiler." msgstr "JIT-kompilierte Funktionen im Profiler perf registrieren." -#: utils/misc/guc_tables.c:2082 +#: utils/misc/guc_tables.c:2091 msgid "Allow JIT compilation of tuple deforming." msgstr "Erlaubt JIT-Kompilierung von Tuple-Deforming." -#: utils/misc/guc_tables.c:2093 +#: utils/misc/guc_tables.c:2102 msgid "Whether to continue running after a failure to sync data files." msgstr "Ob nach fehlgeschlagenem Synchronisieren von Datendateien fortgesetzt werden soll." -#: utils/misc/guc_tables.c:2102 +#: utils/misc/guc_tables.c:2111 msgid "Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured." msgstr "Bestimmt, ob der WAL-Receiver einen temporären Replikations-Slot erzeugen soll, wenn kein permanenter Slot konfiguriert ist." -#: utils/misc/guc_tables.c:2111 +#: utils/misc/guc_tables.c:2120 msgid "Enables event triggers." msgstr "Schaltet Ereignistrigger ein." -#: utils/misc/guc_tables.c:2112 +#: utils/misc/guc_tables.c:2121 msgid "When enabled, event triggers will fire for all applicable statements." msgstr "Wenn eingeschaltet, werden Ereignistrigger für alle passenden Anweisungen ausgelöst." -#: utils/misc/guc_tables.c:2121 +#: utils/misc/guc_tables.c:2130 msgid "Enables a physical standby to synchronize logical failover replication slots from the primary server." msgstr "Ermöglicht, dass ein physischer Standby logische Failover-Replikations-Slots vom Primärserver synchronisiert." -#: utils/misc/guc_tables.c:2130 +#: utils/misc/guc_tables.c:2139 msgid "Enables deprecation warnings for MD5 passwords." msgstr "Ermöglicht Warnungen über veraltete Verwendung von MD5-Passwörtern." -#: utils/misc/guc_tables.c:2139 +#: utils/misc/guc_tables.c:2148 msgid "Enables vacuum to truncate empty pages at the end of the table." msgstr "Ermöglicht es Vacuum, leere Seiten am Ende der Tabelle abzuschneiden." -#: utils/misc/guc_tables.c:2157 +#: utils/misc/guc_tables.c:2166 msgid "Sets the amount of time to wait before forcing a switch to the next WAL file." msgstr "Setzt die Zeit, die gewartet wird, bevor ein Umschalten auf die nächste WAL-Datei erzwungen wird." -#: utils/misc/guc_tables.c:2159 utils/misc/guc_tables.c:2313 -#: utils/misc/guc_tables.c:2732 utils/misc/guc_tables.c:2743 -#: utils/misc/guc_tables.c:2754 utils/misc/guc_tables.c:2765 -#: utils/misc/guc_tables.c:2776 +#: utils/misc/guc_tables.c:2168 utils/misc/guc_tables.c:2322 +#: utils/misc/guc_tables.c:2741 utils/misc/guc_tables.c:2752 +#: utils/misc/guc_tables.c:2763 utils/misc/guc_tables.c:2774 +#: utils/misc/guc_tables.c:2785 msgid "0 disables the timeout." msgstr "0 schaltet Zeitüberschreitungen aus." -#: utils/misc/guc_tables.c:2168 +#: utils/misc/guc_tables.c:2177 msgid "Sets the amount of time to wait after authentication on connection startup." msgstr "Setzt die Zeit, die nach der Authentifizierung beim Verbindungsstart gewartet wird." -#: utils/misc/guc_tables.c:2170 utils/misc/guc_tables.c:2908 +#: utils/misc/guc_tables.c:2179 utils/misc/guc_tables.c:2917 msgid "This allows attaching a debugger to the process." msgstr "Das ermöglicht es, einen Debugger in den Prozess einzuhängen." -#: utils/misc/guc_tables.c:2179 +#: utils/misc/guc_tables.c:2188 msgid "Sets the default statistics target." msgstr "Setzt das voreingestellte Statistikziel." -#: utils/misc/guc_tables.c:2180 +#: utils/misc/guc_tables.c:2189 msgid "This applies to table columns that have not had a column-specific target set via ALTER TABLE SET STATISTICS." msgstr "Diese Einstellung gilt für Tabellenspalten, für die kein spaltenspezifisches Ziel mit ALTER TABLE SET STATISTICS gesetzt worden ist." -#: utils/misc/guc_tables.c:2189 +#: utils/misc/guc_tables.c:2198 msgid "Sets the FROM-list size beyond which subqueries are not collapsed." msgstr "Setzt die Größe der FROM-Liste, ab der Unteranfragen nicht kollabiert werden." -#: utils/misc/guc_tables.c:2191 +#: utils/misc/guc_tables.c:2200 msgid "The planner will merge subqueries into upper queries if the resulting FROM list would have no more than this many items." msgstr "Der Planer bindet Unteranfragen in die übergeordneten Anfragen ein, wenn die daraus resultierende FROM-Liste nicht mehr als so viele Elemente haben würde." -#: utils/misc/guc_tables.c:2202 +#: utils/misc/guc_tables.c:2211 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened." msgstr "Setzt die Größe der FROM-Liste, ab der JOIN-Konstrukte nicht aufgelöst werden." -#: utils/misc/guc_tables.c:2204 +#: utils/misc/guc_tables.c:2213 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 "Der Planer löst ausdrückliche JOIN-Konstrukte in FROM-Listen auf, wenn die daraus resultierende FROM-Liste nicht mehr als so viele Elemente haben würde." -#: utils/misc/guc_tables.c:2215 +#: utils/misc/guc_tables.c:2224 msgid "Sets the threshold of FROM items beyond which GEQO is used." msgstr "Setzt die Anzahl der Elemente in der FROM-Liste, ab der GEQO verwendet wird." -#: utils/misc/guc_tables.c:2225 +#: utils/misc/guc_tables.c:2234 msgid "GEQO: effort is used to set the default for other GEQO parameters." msgstr "GEQO: wird für die Berechnung der Vorgabewerte anderer GEQO-Parameter verwendet." -#: utils/misc/guc_tables.c:2235 +#: utils/misc/guc_tables.c:2244 msgid "GEQO: number of individuals in the population." msgstr "GEQO: Anzahl der Individien in der Bevölkerung." -#: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 +#: utils/misc/guc_tables.c:2245 utils/misc/guc_tables.c:2255 msgid "0 means use a suitable default value." msgstr "0 bedeutet, dass ein passender Vorgabewert verwendet wird." -#: utils/misc/guc_tables.c:2245 +#: utils/misc/guc_tables.c:2254 msgid "GEQO: number of iterations of the algorithm." msgstr "GEQO: Anzahl der Iterationen im Algorithmus." -#: utils/misc/guc_tables.c:2257 +#: utils/misc/guc_tables.c:2266 msgid "Sets the time to wait on a lock before checking for deadlock." msgstr "Setzt die Zeit, die gewartet wird, bis auf Verklemmung geprüft wird." -#: utils/misc/guc_tables.c:2268 +#: utils/misc/guc_tables.c:2277 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data." msgstr "Setzt die maximale Verzögerung bevor Anfragen storniert werden, wenn ein Hot-Standby-Server archivierte WAL-Daten verarbeitet." -#: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 +#: utils/misc/guc_tables.c:2278 utils/misc/guc_tables.c:2289 msgid "-1 means wait forever." msgstr "-1 bedeutet ewig warten." -#: utils/misc/guc_tables.c:2279 +#: utils/misc/guc_tables.c:2288 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data." msgstr "Setzt die maximale Verzögerung bevor Anfragen storniert werden, wenn ein Hot-Standby-Server gestreamte WAL-Daten verarbeitet." -#: utils/misc/guc_tables.c:2290 +#: utils/misc/guc_tables.c:2299 msgid "Sets the minimum delay for applying changes during recovery." msgstr "Setzt die minimale Verzögerung für das Einspielen von Änderungen während der Wiederherstellung." -#: utils/misc/guc_tables.c:2301 +#: utils/misc/guc_tables.c:2310 msgid "Sets the maximum interval between WAL receiver status reports to the sending server." msgstr "Setzt das maximale Intervall zwischen Statusberichten des WAL-Receivers an den sendenden Server." -#: utils/misc/guc_tables.c:2312 +#: utils/misc/guc_tables.c:2321 msgid "Sets the maximum wait time to receive data from the sending server." msgstr "Setzt die maximale Zeit, um auf den Empfang von Daten vom sendenden Server zu warten." -#: utils/misc/guc_tables.c:2323 +#: utils/misc/guc_tables.c:2332 msgid "Sets the maximum number of concurrent connections." msgstr "Setzt die maximale Anzahl gleichzeitiger Verbindungen." -#: utils/misc/guc_tables.c:2334 +#: utils/misc/guc_tables.c:2343 msgid "Sets the number of connection slots reserved for superusers." msgstr "Setzt die Anzahl der für Superuser reservierten Verbindungen." -#: utils/misc/guc_tables.c:2344 +#: utils/misc/guc_tables.c:2353 msgid "Sets the number of connection slots reserved for roles with privileges of pg_use_reserved_connections." msgstr "Setzt die Anzahl der Verbindungen, die für Rollen mit den Privilegien der Rolle pg_use_reserved_connections reserviert sind." -#: utils/misc/guc_tables.c:2355 +#: utils/misc/guc_tables.c:2364 msgid "Amount of dynamic shared memory reserved at startup." msgstr "Menge des beim Start reservierten dynamischen Shared Memory." -#: utils/misc/guc_tables.c:2370 +#: utils/misc/guc_tables.c:2379 msgid "Sets the number of shared memory buffers used by the server." msgstr "Setzt die Anzahl der vom Server verwendeten Shared-Memory-Puffer." -#: utils/misc/guc_tables.c:2381 +#: utils/misc/guc_tables.c:2390 msgid "Sets the buffer pool size for VACUUM, ANALYZE, and autovacuum." msgstr "Setzt die Buffer-Pool-Größe für VACUUM, ANALYZE und Autovacuum." -#: utils/misc/guc_tables.c:2392 +#: utils/misc/guc_tables.c:2401 msgid "Shows the size of the server's main shared memory area (rounded up to the nearest MB)." msgstr "Zeigt die Größe des primären Shared-Memory-Bereichs des Servers (aufgerundet zum nächsten MB)." -#: utils/misc/guc_tables.c:2403 +#: utils/misc/guc_tables.c:2412 msgid "Shows the number of huge pages needed for the main shared memory area." msgstr "Zeigt die Anzahl der Huge Pages, die für den primären Shared-Memory-Bereich benötigt werden." -#: utils/misc/guc_tables.c:2404 +#: utils/misc/guc_tables.c:2413 msgid "-1 means huge pages are not supported." msgstr "-1 bedeutet, dass Huge Page nicht unterstützt werden." -#: utils/misc/guc_tables.c:2414 +#: utils/misc/guc_tables.c:2423 msgid "Shows the number of semaphores required for the server." msgstr "Zeigt die Anzahl der vom Server benötigten Semaphore." -#: utils/misc/guc_tables.c:2425 +#: utils/misc/guc_tables.c:2434 msgid "Sets the size of the dedicated buffer pool used for the commit timestamp cache." msgstr "Setzt die Größe des für den Commit-Timestamp-Cache bestimmten Buffer-Pools." -#: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 -#: utils/misc/guc_tables.c:2492 +#: utils/misc/guc_tables.c:2435 utils/misc/guc_tables.c:2490 +#: utils/misc/guc_tables.c:2501 msgid "0 means use a fraction of \"shared_buffers\"." msgstr "0 bedeutet, einen Bruchteil von »shared_buffers« zu verwenden." -#: utils/misc/guc_tables.c:2436 +#: utils/misc/guc_tables.c:2445 msgid "Sets the size of the dedicated buffer pool used for the MultiXact member cache." msgstr "Setzt die Größe des für den MultiXact-Member-Cache bestimmten Buffer-Pools." -#: utils/misc/guc_tables.c:2447 +#: utils/misc/guc_tables.c:2456 msgid "Sets the size of the dedicated buffer pool used for the MultiXact offset cache." msgstr "Setzt die Größe des für den MultiXact-Offset-Cache bestimmten Buffer-Pools." -#: utils/misc/guc_tables.c:2458 +#: utils/misc/guc_tables.c:2467 msgid "Sets the size of the dedicated buffer pool used for the LISTEN/NOTIFY message cache." msgstr "Setzt die Größe des für den LISTEN/NOTIFY-Message-Cache bestimmten Buffer-Pools." -#: utils/misc/guc_tables.c:2469 +#: utils/misc/guc_tables.c:2478 msgid "Sets the size of the dedicated buffer pool used for the serializable transaction cache." msgstr "Setzt die Größe des für den Cache für serialisierbare Transaktionen bestimmten Buffer-Pools." -#: utils/misc/guc_tables.c:2480 +#: utils/misc/guc_tables.c:2489 msgid "Sets the size of the dedicated buffer pool used for the subtransaction cache." msgstr "Setzt die Größe des für den Subtransaktions-Cache bestimmten Buffer-Pools." -#: utils/misc/guc_tables.c:2491 +#: utils/misc/guc_tables.c:2500 msgid "Sets the size of the dedicated buffer pool used for the transaction status cache." msgstr "Setzt die Größe des für den Transaktionsstatus-Cache bestimmten Buffer-Pools." -#: utils/misc/guc_tables.c:2502 +#: utils/misc/guc_tables.c:2511 msgid "Sets the maximum number of temporary buffers used by each session." msgstr "Setzt die maximale Anzahl der von jeder Sitzung verwendeten temporären Puffer." -#: utils/misc/guc_tables.c:2513 +#: utils/misc/guc_tables.c:2522 msgid "Sets the TCP port the server listens on." msgstr "Setzt den TCP-Port, auf dem der Server auf Verbindungen wartet." -#: utils/misc/guc_tables.c:2523 +#: utils/misc/guc_tables.c:2532 msgid "Sets the access permissions of the Unix-domain socket." msgstr "Setzt die Zugriffsrechte für die Unix-Domain-Socket." -#: utils/misc/guc_tables.c:2524 +#: utils/misc/guc_tables.c:2533 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-Sockets verwenden die üblichen Zugriffsrechte für Unix-Dateisysteme. Der Wert dieser Option muss ein numerischer Wert in der von den Systemaufrufen chmod und umask verwendeten Form sein. (Um das gebräuchliche Oktalformat zu verwenden, muss die Zahl mit 0 (einer Null) anfangen.)" -#: utils/misc/guc_tables.c:2538 +#: utils/misc/guc_tables.c:2547 msgid "Sets the file permissions for log files." msgstr "Setzt die Dateizugriffsrechte für Logdateien." -#: utils/misc/guc_tables.c:2539 +#: utils/misc/guc_tables.c:2548 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 "Der Wert dieser Option muss ein numerischer Wert in der von den Systemaufrufen chmod und umask verwendeten Form sein. (Um das gebräuchliche Oktalformat zu verwenden, muss die Zahl mit 0 (einer Null) anfangen.)" -#: utils/misc/guc_tables.c:2553 +#: utils/misc/guc_tables.c:2562 msgid "Shows the mode of the data directory." msgstr "Zeigt die Zugriffsrechte des Datenverzeichnisses." -#: utils/misc/guc_tables.c:2554 +#: utils/misc/guc_tables.c:2563 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 "Der Wert dieser Option muss ein numerischer Wert in der von den Systemaufrufen chmod und umask verwendeten Form sein. (Um das gebräuchliche Oktalformat zu verwenden, muss die Zahl mit 0 (einer Null) anfangen.)" -#: utils/misc/guc_tables.c:2567 +#: utils/misc/guc_tables.c:2576 msgid "Sets the maximum memory to be used for query workspaces." msgstr "Setzt die maximale Speichergröße für Anfrage-Arbeitsbereiche." -#: utils/misc/guc_tables.c:2568 +#: utils/misc/guc_tables.c:2577 msgid "This much memory can be used by each internal sort operation and hash table before switching to temporary disk files." msgstr "Gibt die Speichermenge an, die für interne Sortiervorgänge und Hashtabellen verwendet werden kann, bevor auf temporäre Dateien umgeschaltet wird." -#: utils/misc/guc_tables.c:2585 +#: utils/misc/guc_tables.c:2594 msgid "Sets the maximum memory to be used for maintenance operations." msgstr "Setzt die maximale Speichergröße für Wartungsoperationen." -#: utils/misc/guc_tables.c:2586 +#: utils/misc/guc_tables.c:2595 msgid "This includes operations such as VACUUM and CREATE INDEX." msgstr "Das schließt Operationen wie VACUUM und CREATE INDEX ein." -#: utils/misc/guc_tables.c:2596 +#: utils/misc/guc_tables.c:2605 msgid "Sets the maximum memory to be used for logical decoding." msgstr "Setzt die maximale Speichergröße für logische Dekodierung." -#: utils/misc/guc_tables.c:2597 +#: utils/misc/guc_tables.c:2606 msgid "This much memory can be used by each internal reorder buffer before spilling to disk." msgstr "Gibt die Speichermenge an, die für jeden internen Reorder-Puffer verwendet werden kann, bevor auf Festplatte ausgelagert wird." -#: utils/misc/guc_tables.c:2613 +#: utils/misc/guc_tables.c:2622 msgid "Sets the maximum stack depth, in kilobytes." msgstr "Setzt die maximale Stackgröße, in Kilobytes." -#: utils/misc/guc_tables.c:2624 +#: utils/misc/guc_tables.c:2633 msgid "Limits the total size of all temporary files used by each process." msgstr "Beschränkt die Gesamtgröße aller temporären Dateien, die von einem Prozess verwendet werden." -#: utils/misc/guc_tables.c:2625 +#: utils/misc/guc_tables.c:2634 msgid "-1 means no limit." msgstr "-1 bedeutet keine Grenze." -#: utils/misc/guc_tables.c:2635 +#: utils/misc/guc_tables.c:2644 msgid "Vacuum cost for a page found in the buffer cache." msgstr "Vacuum-Kosten für eine im Puffer-Cache gefundene Seite." -#: utils/misc/guc_tables.c:2645 +#: utils/misc/guc_tables.c:2654 msgid "Vacuum cost for a page not found in the buffer cache." msgstr "Vacuum-Kosten für eine nicht im Puffer-Cache gefundene Seite." -#: utils/misc/guc_tables.c:2655 +#: utils/misc/guc_tables.c:2664 msgid "Vacuum cost for a page dirtied by vacuum." msgstr "Vacuum-Kosten für eine durch Vacuum schmutzig gemachte Seite." -#: utils/misc/guc_tables.c:2665 +#: utils/misc/guc_tables.c:2674 msgid "Vacuum cost amount available before napping." msgstr "Verfügbare Vacuum-Kosten vor Nickerchen." -#: utils/misc/guc_tables.c:2675 +#: utils/misc/guc_tables.c:2684 msgid "Vacuum cost amount available before napping, for autovacuum." msgstr "Verfügbare Vacuum-Kosten vor Nickerchen, für Autovacuum." -#: utils/misc/guc_tables.c:2676 +#: utils/misc/guc_tables.c:2685 msgid "-1 means use \"vacuum_cost_limit\"." msgstr "-1 bedeutet, »vacuum_cost_limit« zu verwenden." -#: utils/misc/guc_tables.c:2685 +#: utils/misc/guc_tables.c:2694 msgid "Sets the maximum number of files each server process is allowed to open simultaneously." msgstr "Setzt die maximale Zahl Dateien, die jeder Serverprozess gleichzeitig öffnen darf." -#: utils/misc/guc_tables.c:2698 +#: utils/misc/guc_tables.c:2707 msgid "Sets the maximum number of simultaneously prepared transactions." msgstr "Setzt die maximale Anzahl von gleichzeitig vorbereiteten Transaktionen." -#: utils/misc/guc_tables.c:2709 +#: utils/misc/guc_tables.c:2718 msgid "Sets the minimum OID of tables for tracking locks." msgstr "Setzt die minimale Tabellen-OID für das Verfolgen von Sperren." -#: utils/misc/guc_tables.c:2710 +#: utils/misc/guc_tables.c:2719 msgid "Is used to avoid output on system tables." msgstr "Wird verwendet, um Ausgabe für Systemtabellen zu vermeiden." -#: utils/misc/guc_tables.c:2719 +#: utils/misc/guc_tables.c:2728 msgid "Sets the OID of the table with unconditionally lock tracing." msgstr "Setzt die OID der Tabelle mit bedingungsloser Sperrenverfolgung." -#: utils/misc/guc_tables.c:2731 +#: utils/misc/guc_tables.c:2740 msgid "Sets the maximum allowed duration of any statement." msgstr "Setzt die maximal erlaubte Dauer jeder Anweisung." -#: utils/misc/guc_tables.c:2742 +#: utils/misc/guc_tables.c:2751 msgid "Sets the maximum allowed duration of any wait for a lock." msgstr "Setzt die maximal erlaubte Dauer, um auf eine Sperre zu warten." -#: utils/misc/guc_tables.c:2753 +#: utils/misc/guc_tables.c:2762 msgid "Sets the maximum allowed idle time between queries, when in a transaction." msgstr "Setzt die maximal erlaubte inaktive Zeit zwischen Anfragen, wenn in einer Transaktion." -#: utils/misc/guc_tables.c:2764 +#: utils/misc/guc_tables.c:2773 msgid "Sets the maximum allowed duration of any transaction within a session (not a prepared transaction)." msgstr "Setzt die maximal erlaubte Dauer jeder Transaktion innerhalb einer Sitzung (keine vorbereitete Transaktion)." -#: utils/misc/guc_tables.c:2775 +#: utils/misc/guc_tables.c:2784 msgid "Sets the maximum allowed idle time between queries, when not in a transaction." msgstr "Setzt die maximal erlaubte inaktive Zeit zwischen Anfragen, wenn nicht in einer Transaktion." -#: utils/misc/guc_tables.c:2786 +#: utils/misc/guc_tables.c:2795 msgid "Minimum age at which VACUUM should freeze a table row." msgstr "Mindestalter, bei dem VACUUM eine Tabellenzeile einfrieren soll." -#: utils/misc/guc_tables.c:2796 +#: utils/misc/guc_tables.c:2805 msgid "Age at which VACUUM should scan whole table to freeze tuples." msgstr "Alter, bei dem VACUUM die ganze Tabelle durchsuchen soll, um Zeilen einzufrieren." -#: utils/misc/guc_tables.c:2806 +#: utils/misc/guc_tables.c:2815 msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row." msgstr "Mindestalter, bei dem VACUUM eine MultiXactId in einer Tabellenzeile einfrieren soll." -#: utils/misc/guc_tables.c:2816 +#: utils/misc/guc_tables.c:2825 msgid "Multixact age at which VACUUM should scan whole table to freeze tuples." msgstr "Multixact-Alter, bei dem VACUUM die ganze Tabelle durchsuchen soll, um Zeilen einzufrieren." -#: utils/misc/guc_tables.c:2826 +#: utils/misc/guc_tables.c:2835 msgid "Age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Alter, bei dem VACUUM die Ausfallsicherung auslösen soll, um Ausfall wegen Transaktionsnummernüberlauf zu verhindern." -#: utils/misc/guc_tables.c:2835 +#: utils/misc/guc_tables.c:2844 msgid "Multixact age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Multixact-Alter, bei dem VACUUM die Ausfallsicherung auslösen soll, um Ausfall wegen Transaktionsnummernüberlauf zu verhindern." -#: utils/misc/guc_tables.c:2848 +#: utils/misc/guc_tables.c:2857 msgid "Sets the maximum number of locks per transaction." msgstr "Setzt die maximale Anzahl Sperren pro Transaktion." -#: utils/misc/guc_tables.c:2849 +#: utils/misc/guc_tables.c:2858 msgid "The shared lock table is sized on the assumption that at most \"max_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." msgstr "Die globale Sperrentabelle wird mit der Annahme angelegt, das höchstens »max_locks_per_transaction« Objekte pro Serverprozess oder vorbereitete Transaktion gleichzeitig gesperrt werden müssen." -#: utils/misc/guc_tables.c:2860 +#: utils/misc/guc_tables.c:2869 msgid "Sets the maximum number of predicate locks per transaction." msgstr "Setzt die maximale Anzahl Prädikatsperren pro Transaktion." -#: utils/misc/guc_tables.c:2861 +#: utils/misc/guc_tables.c:2870 msgid "The shared predicate lock table is sized on the assumption that at most \"max_pred_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." msgstr "Die globale Prädikatsperrentabelle wird mit der Annahme angelegt, das höchstens »max_pred_locks_per_transaction« Objekte pro Serverprozess oder vorbereitete Transaktion gleichzeitig gesperrt werden müssen." -#: utils/misc/guc_tables.c:2872 +#: utils/misc/guc_tables.c:2881 msgid "Sets the maximum number of predicate-locked pages and tuples per relation." msgstr "Setzt die maximale Anzahl Prädikatsperren für Seiten und Tupel pro Relation." -#: utils/misc/guc_tables.c:2873 +#: utils/misc/guc_tables.c:2882 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 "Wenn mehr als diese Gesamtzahl Seiten und Tupel in der selben Relation von einer Verbindung gesperrt sind, werden diese Sperren durch eine Sperre auf Relationsebene ersetzt." -#: utils/misc/guc_tables.c:2883 +#: utils/misc/guc_tables.c:2892 msgid "Sets the maximum number of predicate-locked tuples per page." msgstr "Setzt die maximale Anzahl Prädikatsperren für Tupel pro Seite." -#: utils/misc/guc_tables.c:2884 +#: utils/misc/guc_tables.c:2893 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 "Wenn mehr als diese Anzahl Tupel auf der selben Seite von einer Verbindung gesperrt sind, werden diese Sperren durch eine Sperre auf Seitenebene ersetzt." -#: utils/misc/guc_tables.c:2894 +#: utils/misc/guc_tables.c:2903 msgid "Sets the maximum allowed time to complete client authentication." msgstr "Setzt die maximale Zeit, um die Client-Authentifizierung zu beenden." -#: utils/misc/guc_tables.c:2906 +#: utils/misc/guc_tables.c:2915 msgid "Sets the amount of time to wait before authentication on connection startup." msgstr "Setzt die Zeit, die vor der Authentifizierung beim Verbindungsstart gewartet wird." -#: utils/misc/guc_tables.c:2918 +#: utils/misc/guc_tables.c:2927 msgid "Sets the maximum number of allocated pages for NOTIFY / LISTEN queue." msgstr "Setzt die maximale Anzahl bereitgestellte Seiten für die NOTIFY/LISTEN-Warteschlange." -#: utils/misc/guc_tables.c:2928 +#: utils/misc/guc_tables.c:2937 msgid "Buffer size for reading ahead in the WAL during recovery." msgstr "Puffergröße für WAL-Read-Ahead während der Wiederherstellung." -#: utils/misc/guc_tables.c:2929 +#: utils/misc/guc_tables.c:2938 msgid "Maximum distance to read ahead in the WAL to prefetch referenced data blocks." msgstr "Maximale Entfernung, die im WAL vorausgelesen wird, um Datenblöcke, auf die verwiesen wird, vorab einzulesen." -#: utils/misc/guc_tables.c:2939 +#: utils/misc/guc_tables.c:2948 msgid "Sets the size of WAL files held for standby servers." msgstr "Setzt die Größe der für Standby-Server vorgehaltenen WAL-Dateien." -#: utils/misc/guc_tables.c:2950 +#: utils/misc/guc_tables.c:2959 msgid "Sets the minimum size to shrink the WAL to." msgstr "Setzt die minimale Größe, auf die der WAL geschrumpft wird." -#: utils/misc/guc_tables.c:2962 +#: utils/misc/guc_tables.c:2971 msgid "Sets the WAL size that triggers a checkpoint." msgstr "Setzt die WAL-Größe, die einen Checkpoint auslöst." -#: utils/misc/guc_tables.c:2974 +#: utils/misc/guc_tables.c:2983 msgid "Sets the maximum time between automatic WAL checkpoints." msgstr "Setzt die maximale Zeit zwischen automatischen WAL-Checkpoints." -#: utils/misc/guc_tables.c:2985 +#: utils/misc/guc_tables.c:2994 msgid "Sets the maximum time before warning if checkpoints triggered by WAL volume happen too frequently." msgstr "Setzt die maximale Zeit, bevor gewarnt wird, wenn durch WAL-Volumen ausgelöste Checkpoints zu häufig passieren." -#: utils/misc/guc_tables.c:2987 +#: utils/misc/guc_tables.c:2996 msgid "Write a message to the server log if checkpoints caused by the filling of WAL segment files happen more frequently than this amount of time. 0 disables the warning." msgstr "Schreibe Meldung in den Serverlog, wenn Checkpoints, die durch Füllen der WAL-Segmentdateien ausgelöst werden, häufiger als dieser Zeitraum passieren. 0 schaltet die Warnung ab." -#: utils/misc/guc_tables.c:3000 utils/misc/guc_tables.c:3230 -#: utils/misc/guc_tables.c:3322 +#: utils/misc/guc_tables.c:3009 utils/misc/guc_tables.c:3239 +#: utils/misc/guc_tables.c:3331 msgid "Number of pages after which previously performed writes are flushed to disk." msgstr "Anzahl der Seiten, nach denen getätigte Schreibvorgänge auf die Festplatte zurückgeschrieben werden." -#: utils/misc/guc_tables.c:3001 utils/misc/guc_tables.c:3231 -#: utils/misc/guc_tables.c:3323 +#: utils/misc/guc_tables.c:3010 utils/misc/guc_tables.c:3240 +#: utils/misc/guc_tables.c:3332 msgid "0 disables forced writeback." msgstr "0 schaltet das erzwungene Zurückschreiben aus." -#: utils/misc/guc_tables.c:3011 +#: utils/misc/guc_tables.c:3020 msgid "Sets the number of disk-page buffers in shared memory for WAL." msgstr "Setzt die Anzahl Diskseitenpuffer für WAL im Shared Memory." -#: utils/misc/guc_tables.c:3012 +#: utils/misc/guc_tables.c:3021 msgid "-1 means use a fraction of \"shared_buffers\"." msgstr "-1 bedeutet, einen Bruchteil von »shared_buffers« zu verwenden." -#: utils/misc/guc_tables.c:3022 +#: utils/misc/guc_tables.c:3031 msgid "Time between WAL flushes performed in the WAL writer." msgstr "Zeit zwischen WAL-Flush-Operationen im WAL-Writer." -#: utils/misc/guc_tables.c:3033 +#: utils/misc/guc_tables.c:3042 msgid "Amount of WAL written out by WAL writer that triggers a flush." msgstr "Ein Flush wird ausgelöst, wenn diese Menge WAL vom WAL-Writer geschrieben worden ist." -#: utils/misc/guc_tables.c:3044 +#: utils/misc/guc_tables.c:3053 msgid "Minimum size of new file to fsync instead of writing WAL." msgstr "Mindestgröße ab der neue Datei gefsynct wird statt WAL zu schreiben." -#: utils/misc/guc_tables.c:3055 +#: utils/misc/guc_tables.c:3064 msgid "Sets the maximum number of simultaneously running WAL sender processes." msgstr "Setzt die maximale Anzahl gleichzeitig laufender WAL-Sender-Prozesse." -#: utils/misc/guc_tables.c:3066 +#: utils/misc/guc_tables.c:3075 msgid "Sets the maximum number of simultaneously defined replication slots." msgstr "Setzt die maximale Anzahl von gleichzeitig definierten Replikations-Slots." -#: utils/misc/guc_tables.c:3076 +#: utils/misc/guc_tables.c:3085 msgid "Sets the maximum WAL size that can be reserved by replication slots." msgstr "Setzt die maximale WAL-Größe, die von Replikations-Slots reserviert werden kann." -#: utils/misc/guc_tables.c:3077 +#: utils/misc/guc_tables.c:3086 msgid "Replication slots will be marked as failed, and segments released for deletion or recycling, if this much space is occupied by WAL on disk. -1 means no maximum." msgstr "Replikations-Slots werden als fehlgeschlagen markiert, und Segmente zum Löschen oder Wiederverwenden freigegeben, wenn so viel Platz von WAL auf der Festplatte belegt wird. -1 bedeutet kein Maximum." -#: utils/misc/guc_tables.c:3089 +#: utils/misc/guc_tables.c:3098 msgid "Sets the maximum time to wait for WAL replication." msgstr "Setzt die maximale Zeit, um auf WAL-Replikation zu warten." -#: utils/misc/guc_tables.c:3100 +#: utils/misc/guc_tables.c:3109 msgid "Sets the duration a replication slot can remain idle before it is invalidated." msgstr "Setzt die Dauer, die ein Replikations-Slot inaktiv sein kann, bevor er ungültig gemacht wird." -#: utils/misc/guc_tables.c:3112 +#: utils/misc/guc_tables.c:3121 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk." msgstr "Setzt die Verzögerung in Millisekunden zwischen Transaktionsabschluss und dem Schreiben von WAL auf die Festplatte." -#: utils/misc/guc_tables.c:3124 +#: utils/misc/guc_tables.c:3133 msgid "Sets the minimum number of concurrent open transactions required before performing \"commit_delay\"." msgstr "Setzt die notwendige minimale Anzahl gleichzeitig offener Transaktionen bevor »commit_delay« angewendet wird." -#: utils/misc/guc_tables.c:3135 +#: utils/misc/guc_tables.c:3144 msgid "Sets the number of digits displayed for floating-point values." msgstr "Setzt die Anzahl ausgegebener Ziffern für Fließkommawerte." -#: utils/misc/guc_tables.c:3136 +#: utils/misc/guc_tables.c:3145 msgid "This affects real, double precision, and geometric data types. A zero or negative parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate). Any value greater than zero selects precise output mode." msgstr "Diese Einstellung betrifft real, double precision und geometrische Datentypen. Null oder ein negativer Parameterwert wird zur Standardziffernanzahl (FLT_DIG bzw. DBL_DIG) hinzuaddiert. Ein Wert größer als Null wählt präzisen Ausgabemodus." -#: utils/misc/guc_tables.c:3148 +#: utils/misc/guc_tables.c:3157 msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by \"log_statement_sample_rate\"." msgstr "Setzt die minimale Ausführungszeit, über der Stichproben aller Anweisungen geloggt werden. Die Stichproben werden durch »log_statement_sample_rate« bestimmt." -#: utils/misc/guc_tables.c:3151 +#: utils/misc/guc_tables.c:3160 msgid "-1 disables sampling. 0 means sample all statements." msgstr "-1 schaltet Stichproben aus. 0 bedeutet, alle Anweisungen zu einzubeziehen." -#: utils/misc/guc_tables.c:3161 +#: utils/misc/guc_tables.c:3170 msgid "Sets the minimum execution time above which all statements will be logged." msgstr "Setzt die minimale Ausführungszeit, über der alle Anweisungen geloggt werden." -#: utils/misc/guc_tables.c:3163 +#: utils/misc/guc_tables.c:3172 msgid "-1 disables logging statement durations. 0 means log all statement durations." msgstr "-1 schaltet das Loggen der Ausführungszeit aus. 0 bedeutet, die Ausführungszeit aller Anweisungen zu loggen." -#: utils/misc/guc_tables.c:3173 +#: utils/misc/guc_tables.c:3182 msgid "Sets the minimum execution time above which autovacuum actions will be logged." msgstr "Setzt die minimale Ausführungszeit, über der Autovacuum-Aktionen geloggt werden." -#: utils/misc/guc_tables.c:3175 +#: utils/misc/guc_tables.c:3184 msgid "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." msgstr "-1 schaltet das Loggen der Autovacuum-Aktionen aus. 0 bedeutet, alle Autovacuum-Aktionen zu loggen." -#: utils/misc/guc_tables.c:3185 +#: utils/misc/guc_tables.c:3194 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements." msgstr "Setzt die maximale Länge in Bytes für geloggte Daten von Bind-Parametern, wenn Anfragen geloggt werden." -#: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 +#: utils/misc/guc_tables.c:3196 utils/misc/guc_tables.c:3208 msgid "-1 means log values in full." msgstr "-1 bedeutet, die vollen Werte zu loggen." -#: utils/misc/guc_tables.c:3197 +#: utils/misc/guc_tables.c:3206 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements, on error." msgstr "Setzt die maximale Länge in Bytes für bei Fehlern geloggte Daten von Bind-Parametern, wenn Anfragen geloggt werden." -#: utils/misc/guc_tables.c:3209 +#: utils/misc/guc_tables.c:3218 msgid "Background writer sleep time between rounds." msgstr "Schlafzeit zwischen Durchläufen des Background-Writers." -#: utils/misc/guc_tables.c:3220 +#: utils/misc/guc_tables.c:3229 msgid "Background writer maximum number of LRU pages to flush per round." msgstr "Maximale Anzahl der vom Background-Writer pro Durchlauf zu flushenden LRU-Seiten." -#: utils/misc/guc_tables.c:3221 +#: utils/misc/guc_tables.c:3230 msgid "0 disables background writing." msgstr "0 schaltet Schreiben im Hintergrund aus." -#: utils/misc/guc_tables.c:3243 +#: utils/misc/guc_tables.c:3252 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem." msgstr "Anzahl simultaner Anfragen, die das Festplattensubsystem effizient bearbeiten kann." -#: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 +#: utils/misc/guc_tables.c:3253 utils/misc/guc_tables.c:3267 msgid "0 disables simultaneous requests." msgstr "0 schaltet simultane Anfragen aus." -#: utils/misc/guc_tables.c:3257 +#: utils/misc/guc_tables.c:3266 msgid "A variant of \"effective_io_concurrency\" that is used for maintenance work." msgstr "Eine Variante von »effective_io_concurrency«, die für Wartungsarbeiten verwendet wird." -#: utils/misc/guc_tables.c:3272 +#: utils/misc/guc_tables.c:3281 msgid "Server-wide limit that clamps io_combine_limit." msgstr "Serverweites Limit, das io_combine_limit beschränkt." -#: utils/misc/guc_tables.c:3286 +#: utils/misc/guc_tables.c:3295 msgid "Limit on the size of data reads and writes." msgstr "Begrenzung der Größe von Datenlese- und -schreibvorgängen." -#: utils/misc/guc_tables.c:3300 +#: utils/misc/guc_tables.c:3309 msgid "Max number of IOs that one process can execute simultaneously." msgstr "Maximale Anzahl IOs, die ein Prozess gleichzeitig ausführen kann." -#: utils/misc/guc_tables.c:3312 +#: utils/misc/guc_tables.c:3321 msgid "Number of IO worker processes, for io_method=worker." msgstr "Anzahl IO-Worker-Prozesse, für io_method=worker." -#: utils/misc/guc_tables.c:3335 +#: utils/misc/guc_tables.c:3344 msgid "Maximum number of concurrent worker processes." msgstr "Maximale Anzahl gleichzeitiger Worker-Prozesse." -#: utils/misc/guc_tables.c:3347 +#: utils/misc/guc_tables.c:3356 msgid "Maximum number of logical replication worker processes." msgstr "Maximale Anzahl Arbeitsprozesse für logische Replikation." -#: utils/misc/guc_tables.c:3359 +#: utils/misc/guc_tables.c:3368 msgid "Maximum number of table synchronization workers per subscription." msgstr "Maximale Anzahl Arbeitsprozesse für Tabellensynchronisation pro Subskription." -#: utils/misc/guc_tables.c:3371 +#: utils/misc/guc_tables.c:3380 msgid "Maximum number of parallel apply workers per subscription." msgstr "Maximale Anzahl Parallel-Apply-Worker pro Subskription." -#: utils/misc/guc_tables.c:3383 +#: utils/misc/guc_tables.c:3392 msgid "Sets the maximum number of active replication origins." msgstr "Setzt die maximale Anzahl aktiver Replication-Origins." -#: utils/misc/guc_tables.c:3393 +#: utils/misc/guc_tables.c:3402 msgid "Sets the amount of time to wait before forcing log file rotation." msgstr "Setzt die Zeit, die gewartet wird, bevor Logdateirotation erzwungen wird." -#: utils/misc/guc_tables.c:3395 +#: utils/misc/guc_tables.c:3404 msgid "0 disables time-based creation of new log files." msgstr "0 schaltet zeitbasierende Erzeugung neuer Logdateien aus." -#: utils/misc/guc_tables.c:3405 +#: utils/misc/guc_tables.c:3414 msgid "Sets the maximum size a log file can reach before being rotated." msgstr "Setzt die maximale Größe, die eine Logdatei erreichen kann, bevor sie rotiert wird." -#: utils/misc/guc_tables.c:3407 +#: utils/misc/guc_tables.c:3416 msgid "0 disables size-based creation of new log files." msgstr "0 schaltet größenbasierende Erzeugung neuer Logdateien aus." -#: utils/misc/guc_tables.c:3417 +#: utils/misc/guc_tables.c:3426 msgid "Shows the maximum number of function arguments." msgstr "Setzt die maximale Anzahl von Funktionsargumenten." -#: utils/misc/guc_tables.c:3428 +#: utils/misc/guc_tables.c:3437 msgid "Shows the maximum number of index keys." msgstr "Zeigt die maximale Anzahl von Indexschlüsseln." -#: utils/misc/guc_tables.c:3439 +#: utils/misc/guc_tables.c:3448 msgid "Shows the maximum identifier length." msgstr "Zeigt die maximale Länge von Bezeichnern." -#: utils/misc/guc_tables.c:3450 +#: utils/misc/guc_tables.c:3459 msgid "Shows the size of a disk block." msgstr "Zeigt die Größe eines Diskblocks." -#: utils/misc/guc_tables.c:3461 +#: utils/misc/guc_tables.c:3470 msgid "Shows the number of pages per disk file." msgstr "Zeigt die Anzahl Seiten pro Diskdatei." -#: utils/misc/guc_tables.c:3472 +#: utils/misc/guc_tables.c:3481 msgid "Shows the block size in the write ahead log." msgstr "Zeigt die Blockgröße im Write-Ahead-Log." -#: utils/misc/guc_tables.c:3483 +#: utils/misc/guc_tables.c:3492 msgid "Sets the time to wait before retrying to retrieve WAL after a failed attempt." msgstr "Setzt die Zeit, die gewartet wird, bevor nach einem fehlgeschlagenen Versuch neue WAL-Daten angefordert werden." -#: utils/misc/guc_tables.c:3495 +#: utils/misc/guc_tables.c:3504 msgid "Shows the size of write ahead log segments." msgstr "Zeigt die Größe eines Write-Ahead-Log-Segments." -#: utils/misc/guc_tables.c:3508 +#: utils/misc/guc_tables.c:3517 msgid "Time for which WAL summary files should be kept." msgstr "Zeit, für die WAL-Summary-Dateien aufgehoben werden sollen." -#: utils/misc/guc_tables.c:3509 +#: utils/misc/guc_tables.c:3518 msgid "0 disables automatic summary file deletion." msgstr "0 schaltet das automatische Löschen von Summary-Dateien aus." -#: utils/misc/guc_tables.c:3521 +#: utils/misc/guc_tables.c:3530 msgid "Time to sleep between autovacuum runs." msgstr "Wartezeit zwischen Autovacuum-Durchläufen." -#: utils/misc/guc_tables.c:3531 +#: utils/misc/guc_tables.c:3540 msgid "Minimum number of tuple updates or deletes prior to vacuum." msgstr "Mindestanzahl an geänderten oder gelöschten Tupeln vor einem Vacuum." -#: utils/misc/guc_tables.c:3540 +#: utils/misc/guc_tables.c:3549 msgid "Maximum number of tuple updates or deletes prior to vacuum." msgstr "Höchstanzahl an geänderten oder gelöschten Tupeln vor einem Vacuum." -#: utils/misc/guc_tables.c:3541 +#: utils/misc/guc_tables.c:3550 msgid "-1 disables the maximum threshold." msgstr "-1 schaltet die Höchstanzahl aus." -#: utils/misc/guc_tables.c:3549 +#: utils/misc/guc_tables.c:3558 msgid "Minimum number of tuple inserts prior to vacuum." msgstr "Mindestanzahl an eingefügten Tupeln vor einem Vacuum." -#: utils/misc/guc_tables.c:3550 +#: utils/misc/guc_tables.c:3559 msgid "-1 disables insert vacuums." msgstr "-1 schaltet Vacuum aufgrund von Einfügen aus." -#: utils/misc/guc_tables.c:3558 +#: utils/misc/guc_tables.c:3567 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." msgstr "Mindestanzahl an Einfüge-, Änderungs- oder Löschoperationen vor einem Analyze." -#: utils/misc/guc_tables.c:3568 +#: utils/misc/guc_tables.c:3577 msgid "Age at which to autovacuum a table to prevent transaction ID wraparound." msgstr "Alter, nach dem eine Tabelle automatisch gevacuumt wird, um Transaktionsnummernüberlauf zu verhindern." -#: utils/misc/guc_tables.c:3580 +#: utils/misc/guc_tables.c:3589 msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound." msgstr "Multixact-Alter, nach dem eine Tabelle automatisch gevacuumt wird, um Transaktionsnummernüberlauf zu verhindern." -#: utils/misc/guc_tables.c:3590 +#: utils/misc/guc_tables.c:3599 msgid "Sets the number of backend slots to allocate for autovacuum workers." msgstr "Setzt die Anzahl der für Autovacuum-Worker bereitgestellten Backend-Slots." -#: utils/misc/guc_tables.c:3599 +#: utils/misc/guc_tables.c:3608 msgid "Sets the maximum number of simultaneously running autovacuum worker processes." msgstr "Setzt die maximale Anzahl gleichzeitig laufender Autovacuum-Worker-Prozesse." -#: utils/misc/guc_tables.c:3609 +#: utils/misc/guc_tables.c:3618 msgid "Sets the maximum number of parallel processes per maintenance operation." msgstr "Setzt die maximale Anzahl paralleler Prozesse pro Wartungsoperation." -#: utils/misc/guc_tables.c:3619 +#: utils/misc/guc_tables.c:3628 msgid "Sets the maximum number of parallel processes per executor node." msgstr "Setzt die maximale Anzahl paralleler Prozesse pro Executor-Knoten." -#: utils/misc/guc_tables.c:3630 +#: utils/misc/guc_tables.c:3639 msgid "Sets the maximum number of parallel workers that can be active at one time." msgstr "Setzt die maximale Anzahl paralleler Arbeitsprozesse, die gleichzeitig aktiv sein können." -#: utils/misc/guc_tables.c:3641 +#: utils/misc/guc_tables.c:3650 msgid "Sets the maximum memory to be used by each autovacuum worker process." msgstr "Setzt die maximale Speichergröße für jeden Autovacuum-Worker-Prozess." -#: utils/misc/guc_tables.c:3642 +#: utils/misc/guc_tables.c:3651 msgid "-1 means use \"maintenance_work_mem\"." msgstr "-1 bedeutet, »maintenance_work_mem« zu verwenden." -#: utils/misc/guc_tables.c:3652 +#: utils/misc/guc_tables.c:3661 msgid "Time between issuing TCP keepalives." msgstr "Zeit zwischen TCP-Keepalive-Sendungen." -#: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 -#: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 +#: utils/misc/guc_tables.c:3662 utils/misc/guc_tables.c:3673 +#: utils/misc/guc_tables.c:3796 utils/misc/guc_tables.c:3807 msgid "0 means use the system default." msgstr "0 bedeutet, die Systemvoreinstellung zu verwenden." -#: utils/misc/guc_tables.c:3663 +#: utils/misc/guc_tables.c:3672 msgid "Time between TCP keepalive retransmits." msgstr "Zeit zwischen TCP-Keepalive-Neuübertragungen." -#: utils/misc/guc_tables.c:3674 +#: utils/misc/guc_tables.c:3683 msgid "SSL renegotiation is no longer supported; this can only be 0." msgstr "SSL-Renegotiation wird nicht mehr unterstützt; kann nur auf 0 gesetzt werden." -#: utils/misc/guc_tables.c:3685 +#: utils/misc/guc_tables.c:3694 msgid "Maximum number of TCP keepalive retransmits." msgstr "Maximale Anzahl an TCP-Keepalive-Neuübertragungen." -#: utils/misc/guc_tables.c:3686 +#: utils/misc/guc_tables.c:3695 msgid "Number of consecutive keepalive retransmits that can be lost before a connection is considered dead. 0 means use the system default." msgstr "Anzahl von aufeinanderfolgenden Keepalive-Neuübertragungen, die verloren gehen dürfen, bis die Verbindung als tot betrachtet wird. 0 bedeutet, die Betriebssystemvoreinstellung zu verwenden." -#: utils/misc/guc_tables.c:3697 +#: utils/misc/guc_tables.c:3706 msgid "Sets the maximum allowed result for exact search by GIN." msgstr "Setzt die maximal erlaubte Anzahl Ergebnisse für eine genaue Suche mit GIN." -#: utils/misc/guc_tables.c:3698 +#: utils/misc/guc_tables.c:3707 msgid "0 means no limit." msgstr "0 bedeutet keine Grenze." -#: utils/misc/guc_tables.c:3707 +#: utils/misc/guc_tables.c:3716 msgid "Sets the planner's assumption about the total size of the data caches." msgstr "Setzt die Annahme des Planers über die Gesamtgröße der Daten-Caches." -#: utils/misc/guc_tables.c:3708 +#: utils/misc/guc_tables.c:3717 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 "Das heißt, die Gesamtgröße der Caches (Kernel-Cache und Shared Buffers), die für Datendateien von PostgreSQL verwendet wird. Das wird in Diskseiten gemessen, welche normalerweise 8 kB groß sind." -#: utils/misc/guc_tables.c:3719 +#: utils/misc/guc_tables.c:3728 msgid "Sets the minimum amount of table data for a parallel scan." msgstr "Setzt die Mindestmenge an Tabellendaten für einen parallelen Scan." -#: utils/misc/guc_tables.c:3720 +#: utils/misc/guc_tables.c:3729 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 "Wenn der Planer schätzt, dass zu wenige Tabellenseiten gelesen werden werden um diesen Wert zu erreichen, dann wird kein paralleler Scan in Erwägung gezogen werden." -#: utils/misc/guc_tables.c:3730 +#: utils/misc/guc_tables.c:3739 msgid "Sets the minimum amount of index data for a parallel scan." msgstr "Setzt die Mindestmenge an Indexdaten für einen parallelen Scan." -#: utils/misc/guc_tables.c:3731 +#: utils/misc/guc_tables.c:3740 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 "Wenn der Planer schätzt, dass zu wenige Indexseiten gelesen werden werden um diesen Wert zu erreichen, dann wird kein paralleler Scan in Erwägung gezogen werden." -#: utils/misc/guc_tables.c:3742 +#: utils/misc/guc_tables.c:3751 msgid "Shows the server version as an integer." msgstr "Zeigt die Serverversion als Zahl." -#: utils/misc/guc_tables.c:3753 +#: utils/misc/guc_tables.c:3762 msgid "Log the use of temporary files larger than this number of kilobytes." msgstr "Schreibt Meldungen über die Verwendung von temporären Dateien in den Log, wenn sie größer als diese Anzahl an Kilobytes sind." -#: utils/misc/guc_tables.c:3754 +#: utils/misc/guc_tables.c:3763 msgid "-1 disables logging temporary files. 0 means log all temporary files." msgstr "-1 schaltet Loggen von temporären Dateien aus. 0 bedeutet, dass alle temporären Dateien geloggt werden." -#: utils/misc/guc_tables.c:3764 +#: utils/misc/guc_tables.c:3773 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." msgstr "Setzt die für pg_stat_activity.query reservierte Größe, in Bytes." -#: utils/misc/guc_tables.c:3775 +#: utils/misc/guc_tables.c:3784 msgid "Sets the maximum size of the pending list for GIN index." msgstr "Setzt die maximale Größe der Pending-Liste eines GIN-Index." -#: utils/misc/guc_tables.c:3786 +#: utils/misc/guc_tables.c:3795 msgid "TCP user timeout." msgstr "TCP-User-Timeout." -#: utils/misc/guc_tables.c:3797 +#: utils/misc/guc_tables.c:3806 msgid "The size of huge page that should be requested." msgstr "Huge-Page-Größe, die angefordert werden soll." -#: utils/misc/guc_tables.c:3808 +#: utils/misc/guc_tables.c:3817 msgid "Aggressively flush system caches for debugging purposes." msgstr "System-Caches aggressiv flushen, zum Debuggen." -#: utils/misc/guc_tables.c:3809 +#: utils/misc/guc_tables.c:3818 msgid "0 means use normal caching behavior." msgstr "0 bedeutet, das normale Caching-Verhalten zu verwenden." -#: utils/misc/guc_tables.c:3831 +#: utils/misc/guc_tables.c:3840 msgid "Sets the time interval between checks for disconnection while running queries." msgstr "Setzt das Zeitintervall zwischen Prüfungen auf Verbindungsabbruch während Anfragen laufen." -#: utils/misc/guc_tables.c:3832 +#: utils/misc/guc_tables.c:3841 msgid "0 disables connection checks." msgstr "0 schaltet Verbindungsprüfungen aus." -#: utils/misc/guc_tables.c:3842 +#: utils/misc/guc_tables.c:3851 msgid "Time between progress updates for long-running startup operations." msgstr "Zeit zwischen Fortschrittsnachrichten für lange laufende Operationen beim Serverstart." -#: utils/misc/guc_tables.c:3844 +#: utils/misc/guc_tables.c:3853 msgid "0 disables progress updates." msgstr "0 schaltet Fortschrittsnachrichten aus." -#: utils/misc/guc_tables.c:3854 +#: utils/misc/guc_tables.c:3863 msgid "Sets the iteration count for SCRAM secret generation." msgstr "Setzt die Iterationszahl für die Erzeugung von SCRAM-Geheimnissen." -#: utils/misc/guc_tables.c:3874 +#: utils/misc/guc_tables.c:3883 msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page." msgstr "Setzt den vom Planer geschätzten Aufwand, um eine sequenzielle Diskseite zu lesen." -#: utils/misc/guc_tables.c:3885 +#: utils/misc/guc_tables.c:3894 msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page." msgstr "Setzt den vom Planer geschätzten Aufwand, um eine nichtsequenzielle Diskseite zu lesen." -#: utils/misc/guc_tables.c:3896 +#: utils/misc/guc_tables.c:3905 msgid "Sets the planner's estimate of the cost of processing each tuple (row)." msgstr "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung einer Zeile." -#: utils/misc/guc_tables.c:3907 +#: utils/misc/guc_tables.c:3916 msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan." msgstr "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung eines Indexeintrags während eines Index-Scans." -#: utils/misc/guc_tables.c:3918 +#: utils/misc/guc_tables.c:3927 msgid "Sets the planner's estimate of the cost of processing each operator or function call." msgstr "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung eines Operators oder Funktionsaufrufs." -#: utils/misc/guc_tables.c:3929 +#: utils/misc/guc_tables.c:3938 msgid "Sets the planner's estimate of the cost of passing each tuple (row) from worker to leader backend." msgstr "Setzt den vom Planer geschätzten Aufwand, um eine Zeile vom Arbeitsprozess an das Leader-Backend zu senden." -#: utils/misc/guc_tables.c:3940 +#: utils/misc/guc_tables.c:3949 msgid "Sets the planner's estimate of the cost of starting up worker processes for parallel query." msgstr "Setzt den vom Planer geschätzten Aufwand für das Starten von Arbeitsprozessen für parallele Anfragen." -#: utils/misc/guc_tables.c:3952 +#: utils/misc/guc_tables.c:3961 msgid "Perform JIT compilation if query is more expensive." msgstr "JIT-Kompilierung durchführen, wenn die Anfrage teurer ist." -#: utils/misc/guc_tables.c:3953 +#: utils/misc/guc_tables.c:3962 msgid "-1 disables JIT compilation." msgstr "-1 schaltet JIT-Kompilierung aus." -#: utils/misc/guc_tables.c:3963 +#: utils/misc/guc_tables.c:3972 msgid "Optimize JIT-compiled functions if query is more expensive." msgstr "JIT-kompilierte Funktionen optimieren, wenn die Anfrage teurer ist." -#: utils/misc/guc_tables.c:3964 +#: utils/misc/guc_tables.c:3973 msgid "-1 disables optimization." msgstr "-1 schaltet Optimierung aus." -#: utils/misc/guc_tables.c:3974 +#: utils/misc/guc_tables.c:3983 msgid "Perform JIT inlining if query is more expensive." msgstr "JIT-Inlining durchführen, wenn die Anfrage teurer ist." -#: utils/misc/guc_tables.c:3975 +#: utils/misc/guc_tables.c:3984 msgid "-1 disables inlining." msgstr "-1 schaltet Inlining aus." -#: utils/misc/guc_tables.c:3985 +#: utils/misc/guc_tables.c:3994 msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved." msgstr "Setzt die Planerschätzung für den Anteil der Cursor-Zeilen, die ausgelesen werden werden." -#: utils/misc/guc_tables.c:3997 +#: utils/misc/guc_tables.c:4006 msgid "Sets the planner's estimate of the average size of a recursive query's working table." msgstr "Setzt die Planerschätzung für die durchschnittliche Größe der Arbeitstabelle einer rekursiven Anfrage." -#: utils/misc/guc_tables.c:4009 +#: utils/misc/guc_tables.c:4018 msgid "GEQO: selective pressure within the population." msgstr "GEQO: selektiver Auswahldruck in der Bevölkerung." -#: utils/misc/guc_tables.c:4020 +#: utils/misc/guc_tables.c:4029 msgid "GEQO: seed for random path selection." msgstr "GEQO: Ausgangswert für die zufällige Pfadauswahl." -#: utils/misc/guc_tables.c:4031 +#: utils/misc/guc_tables.c:4040 msgid "Multiple of \"work_mem\" to use for hash tables." msgstr "Vielfaches von »work_mem« zur Verwendung bei Hash-Tabellen." -#: utils/misc/guc_tables.c:4042 +#: utils/misc/guc_tables.c:4051 msgid "Multiple of the average buffer usage to free per round." msgstr "Vielfaches der durchschnittlichen freizugebenden Pufferverwendung pro Runde." -#: utils/misc/guc_tables.c:4052 +#: utils/misc/guc_tables.c:4061 msgid "Sets the seed for random-number generation." msgstr "Setzt den Ausgangswert für die Zufallszahlenerzeugung." -#: utils/misc/guc_tables.c:4063 +#: utils/misc/guc_tables.c:4072 msgid "Vacuum cost delay in milliseconds." msgstr "Vacuum-Kosten-Verzögerung in Millisekunden." -#: utils/misc/guc_tables.c:4074 +#: utils/misc/guc_tables.c:4083 msgid "Vacuum cost delay in milliseconds, for autovacuum." msgstr "Vacuum-Kosten-Verzögerung in Millisekunden, für Autovacuum." -#: utils/misc/guc_tables.c:4075 +#: utils/misc/guc_tables.c:4084 msgid "-1 means use \"vacuum_cost_delay\"." msgstr "-1 bedeutet, »vacuum_cost_delay« zu verwenden." -#: utils/misc/guc_tables.c:4085 +#: utils/misc/guc_tables.c:4094 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples." msgstr "Anzahl geänderter oder gelöschter Tupel vor einem Vacuum, relativ zu reltuples." -#: utils/misc/guc_tables.c:4095 +#: utils/misc/guc_tables.c:4104 msgid "Number of tuple inserts prior to vacuum as a fraction of reltuples." msgstr "Anzahl eingefügter Tupel vor einem Vacuum, relativ zu reltuples." -#: utils/misc/guc_tables.c:4105 +#: utils/misc/guc_tables.c:4114 msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples." msgstr "Anzahl eingefügter, geänderter oder gelöschter Tupel vor einem Analyze, relativ zu reltuples." -#: utils/misc/guc_tables.c:4115 +#: utils/misc/guc_tables.c:4124 msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval." msgstr "Zeit, die damit verbracht wird, modifizierte Puffer während eines Checkpoints zurückzuschreiben, als Bruchteil des Checkpoint-Intervalls." -#: utils/misc/guc_tables.c:4125 +#: utils/misc/guc_tables.c:4134 msgid "Fraction of statements exceeding \"log_min_duration_sample\" to be logged." msgstr "Anteil der zu loggenden Anweisungen, die »log_min_duration_sample« überschreiten." -#: utils/misc/guc_tables.c:4126 +#: utils/misc/guc_tables.c:4135 msgid "Use a value between 0.0 (never log) and 1.0 (always log)." msgstr "Verwenden Sie einen Wert zwischen 0.0 (nie loggen) und 1.0 (immer loggen)." -#: utils/misc/guc_tables.c:4135 +#: utils/misc/guc_tables.c:4144 msgid "Sets the fraction of transactions from which to log all statements." msgstr "Setzt den Bruchteil der Transaktionen, aus denen alle Anweisungen geloggt werden." -#: utils/misc/guc_tables.c:4136 +#: utils/misc/guc_tables.c:4145 msgid "Use a value between 0.0 (never log) and 1.0 (log all statements for all transactions)." msgstr "Verwenden Sie einen Wert zwischen 0.0 (nie loggen) und 1.0 (alle Anweisungen für alle Transaktionen loggen)." -#: utils/misc/guc_tables.c:4146 +#: utils/misc/guc_tables.c:4155 msgid "Fraction of pages in a relation vacuum can scan and fail to freeze before disabling eager scanning." msgstr "Bruchteil an Seiten in einer Relation, die Vacuum scannen kann aber nicht einfrieren kann, bevor Eager Scanning ausgeschaltet wird." -#: utils/misc/guc_tables.c:4147 +#: utils/misc/guc_tables.c:4156 msgid "A value of 0.0 disables eager scanning and a value of 1.0 will eagerly scan up to 100 percent of the all-visible pages in the relation. If vacuum successfully freezes these pages, the cap is lower than 100 percent, because the goal is to amortize page freezing across multiple vacuums." msgstr "Der Wert 0.0 schaltet Eager Scanning aus und der Wert 1.0 wird bis zu 100 Prozent der all-visible Seiten in der Relation mit Eager Scanning lesen. Wenn Vacuum diese Seiten erfolgreich einfriert, dann ist die Deckelung niedriger als 100 Prozent, weil das Ziel ist, die Kosten für das Einfrieren von Seiten über mehrere Vacuums zu amortisieren." -#: utils/misc/guc_tables.c:4165 +#: utils/misc/guc_tables.c:4174 msgid "Sets the shell command that will be called to archive a WAL file." msgstr "Setzt den Shell-Befehl, der aufgerufen wird, um eine WAL-Datei zu archivieren." -#: utils/misc/guc_tables.c:4166 +#: utils/misc/guc_tables.c:4175 msgid "An empty string means use \"archive_library\"." msgstr "Ein leerer Wert bedeutet, »archive_library« zu verwenden." -#: utils/misc/guc_tables.c:4175 +#: utils/misc/guc_tables.c:4184 msgid "Sets the library that will be called to archive a WAL file." msgstr "Setzt die Bibliothek, die aufgerufen wird, um eine WAL-Datei zu archivieren." -#: utils/misc/guc_tables.c:4176 +#: utils/misc/guc_tables.c:4185 msgid "An empty string means use \"archive_command\"." msgstr "Eine leere Zeichenkette bedeutet, »archive_command« zu verwenden." -#: utils/misc/guc_tables.c:4185 +#: utils/misc/guc_tables.c:4194 msgid "Sets the shell command that will be called to retrieve an archived WAL file." msgstr "Setzt den Shell-Befehl, der aufgerufen wird, um eine archivierte WAL-Datei zurückzuholen." -#: utils/misc/guc_tables.c:4195 +#: utils/misc/guc_tables.c:4204 msgid "Sets the shell command that will be executed at every restart point." msgstr "Setzt den Shell-Befehl, der bei jedem Restart-Punkt ausgeführt wird." -#: utils/misc/guc_tables.c:4205 +#: utils/misc/guc_tables.c:4214 msgid "Sets the shell command that will be executed once at the end of recovery." msgstr "Setzt den Shell-Befehl, der einmal am Ende der Wiederherstellung ausgeführt wird." -#: utils/misc/guc_tables.c:4215 +#: utils/misc/guc_tables.c:4224 msgid "Specifies the timeline to recover into." msgstr "Gibt die Zeitleiste für die Wiederherstellung an." -#: utils/misc/guc_tables.c:4225 +#: utils/misc/guc_tables.c:4234 msgid "Set to \"immediate\" to end recovery as soon as a consistent state is reached." msgstr "Auf »immediate« setzen, um die Wiederherstellung zu beenden, sobald ein konsistenter Zustand erreicht ist." -#: utils/misc/guc_tables.c:4234 +#: utils/misc/guc_tables.c:4243 msgid "Sets the transaction ID up to which recovery will proceed." msgstr "Setzt die Transaktions-ID, bis zu der die Wiederherstellung voranschreiten wird." -#: utils/misc/guc_tables.c:4243 +#: utils/misc/guc_tables.c:4252 msgid "Sets the time stamp up to which recovery will proceed." msgstr "Setzt den Zeitstempel, bis zu dem die Wiederherstellung voranschreiten wird." -#: utils/misc/guc_tables.c:4252 +#: utils/misc/guc_tables.c:4261 msgid "Sets the named restore point up to which recovery will proceed." msgstr "Setzt den benannten Restore-Punkt, bis zu dem die Wiederherstellung voranschreiten wird." -#: utils/misc/guc_tables.c:4261 +#: utils/misc/guc_tables.c:4270 msgid "Sets the LSN of the write-ahead log location up to which recovery will proceed." msgstr "Setzt die LSN der Write-Ahead-Log-Position, bis zu der die Wiederherstellung voranschreiten wird." -#: utils/misc/guc_tables.c:4271 +#: utils/misc/guc_tables.c:4280 msgid "Sets the connection string to be used to connect to the sending server." msgstr "Setzt die Verbindungszeichenkette zur Verbindung mit dem sendenden Server." -#: utils/misc/guc_tables.c:4282 +#: utils/misc/guc_tables.c:4291 msgid "Sets the name of the replication slot to use on the sending server." msgstr "Setzt den Namen des zu verwendenden Replikations-Slots auf dem sendenden Server." -#: utils/misc/guc_tables.c:4292 +#: utils/misc/guc_tables.c:4301 msgid "Sets the client's character set encoding." msgstr "Setzt die Zeichensatzkodierung des Clients." -#: utils/misc/guc_tables.c:4303 +#: utils/misc/guc_tables.c:4312 msgid "Controls information prefixed to each log line." msgstr "Bestimmt die Informationen, die vor jede Logzeile geschrieben werden." -#: utils/misc/guc_tables.c:4304 +#: utils/misc/guc_tables.c:4313 msgid "An empty string means no prefix." msgstr "Ein leerer Wert bedeutet, keinen Präfix zu schreiben." -#: utils/misc/guc_tables.c:4313 +#: utils/misc/guc_tables.c:4322 msgid "Sets the time zone to use in log messages." msgstr "Setzt die in Logmeldungen verwendete Zeitzone." -#: utils/misc/guc_tables.c:4323 +#: utils/misc/guc_tables.c:4332 msgid "Sets the display format for date and time values." msgstr "Setzt das Ausgabeformat für Datums- und Zeitwerte." -#: utils/misc/guc_tables.c:4324 +#: utils/misc/guc_tables.c:4333 msgid "Also controls interpretation of ambiguous date inputs." msgstr "Kontrolliert auch die Interpretation von zweideutigen Datumseingaben." -#: utils/misc/guc_tables.c:4335 +#: utils/misc/guc_tables.c:4344 msgid "Sets the default table access method for new tables." msgstr "Setzt die Standard-Tabellenzugriffsmethode für neue Tabellen." -#: utils/misc/guc_tables.c:4346 +#: utils/misc/guc_tables.c:4355 msgid "Sets the default tablespace to create tables and indexes in." msgstr "Setzt den Standard-Tablespace für Tabellen und Indexe." -#: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 +#: utils/misc/guc_tables.c:4356 utils/misc/guc_tables.c:4367 msgid "An empty string means use the database's default tablespace." msgstr "Eine leere Zeichenkette bedeutet, den Standard-Tablespace der Datenbank zu verwenden." -#: utils/misc/guc_tables.c:4357 +#: utils/misc/guc_tables.c:4366 msgid "Sets the tablespace(s) to use for temporary tables and sort files." msgstr "Setzt den oder die Tablespaces für temporäre Tabellen und Sortierdateien." -#: utils/misc/guc_tables.c:4368 +#: utils/misc/guc_tables.c:4377 msgid "Sets whether a CREATEROLE user automatically grants the role to themselves, and with which options." msgstr "Bestimmt, ob ein CREATEROLE-Benutzer sich die Rolle automatisch selbst gewährt, und mit welchen Optionen." -#: utils/misc/guc_tables.c:4370 +#: utils/misc/guc_tables.c:4379 msgid "An empty string disables automatic self grants." msgstr "Eine leere Zeichenkette schaltet automatische Selbst-Grants aus." -#: utils/misc/guc_tables.c:4380 +#: utils/misc/guc_tables.c:4389 msgid "Sets the path for dynamically loadable modules." msgstr "Setzt den Pfad für ladbare dynamische Bibliotheken." -#: utils/misc/guc_tables.c:4381 +#: utils/misc/guc_tables.c:4390 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 "Wenn ein dynamisch ladbares Modul geöffnet werden muss und der angegebene Name keine Verzeichniskomponente hat (das heißt er enthält keinen Schrägstrich), dann sucht das System in diesem Pfad nach der angegebenen Datei." -#: utils/misc/guc_tables.c:4394 +#: utils/misc/guc_tables.c:4403 msgid "Sets the path for extension control files." msgstr "Setzt den Pfad für Kontrolldateien von Erweiterungen." -#: utils/misc/guc_tables.c:4395 +#: utils/misc/guc_tables.c:4404 msgid "The remaining extension script and secondary control files are then loaded from the same directory where the primary control file was found." msgstr "Die übrigen Skriptdateien und sekundären Kontrolldateien von Erweiterungen werden aus dem selben Verzeichnis geladen, wo die primäre Kontrolldatei gefunden wurde." -#: utils/misc/guc_tables.c:4406 +#: utils/misc/guc_tables.c:4415 msgid "Sets the location of the Kerberos server key file." msgstr "Setzt den Ort der Kerberos-Server-Schlüsseldatei." -#: utils/misc/guc_tables.c:4417 +#: utils/misc/guc_tables.c:4426 msgid "Sets the Bonjour service name." msgstr "Setzt den Bonjour-Servicenamen." -#: utils/misc/guc_tables.c:4418 +#: utils/misc/guc_tables.c:4427 msgid "An empty string means use the computer name." msgstr "Eine leere Zeichenkette bedeutet, den Computer-Namen zu verwenden." -#: utils/misc/guc_tables.c:4427 +#: utils/misc/guc_tables.c:4436 msgid "Sets the language in which messages are displayed." msgstr "Setzt die Sprache, in der Mitteilungen ausgegeben werden." -#: utils/misc/guc_tables.c:4428 utils/misc/guc_tables.c:4438 -#: utils/misc/guc_tables.c:4448 utils/misc/guc_tables.c:4458 +#: utils/misc/guc_tables.c:4437 utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4457 utils/misc/guc_tables.c:4467 msgid "An empty string means use the operating system setting." msgstr "Eine leere Zeichenkette bedeutet, die Betriebssystemeinstellung zu verwenden." -#: utils/misc/guc_tables.c:4437 +#: utils/misc/guc_tables.c:4446 msgid "Sets the locale for formatting monetary amounts." msgstr "Setzt die Locale für die Formatierung von Geldbeträgen." -#: utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4456 msgid "Sets the locale for formatting numbers." msgstr "Setzt die Locale für die Formatierung von Zahlen." -#: utils/misc/guc_tables.c:4457 +#: utils/misc/guc_tables.c:4466 msgid "Sets the locale for formatting date and time values." msgstr "Setzt die Locale für die Formatierung von Datums- und Zeitwerten." -#: utils/misc/guc_tables.c:4467 +#: utils/misc/guc_tables.c:4476 msgid "Lists shared libraries to preload into each backend." msgstr "Listet dynamische Bibliotheken, die vorab in jeden Serverprozess geladen werden." -#: utils/misc/guc_tables.c:4478 +#: utils/misc/guc_tables.c:4487 msgid "Lists shared libraries to preload into server." msgstr "Listet dynamische Bibliotheken, die vorab in den Server geladen werden." -#: utils/misc/guc_tables.c:4489 +#: utils/misc/guc_tables.c:4498 msgid "Lists unprivileged shared libraries to preload into each backend." msgstr "Listet unprivilegierte dynamische Bibliotheken, die vorab in jeden Serverprozess geladen werden." -#: utils/misc/guc_tables.c:4500 +#: utils/misc/guc_tables.c:4509 msgid "Sets the schema search order for names that are not schema-qualified." msgstr "Setzt die Schemasuchreihenfolge für Namen ohne Schemaqualifikation." -#: utils/misc/guc_tables.c:4512 +#: utils/misc/guc_tables.c:4521 msgid "Shows the server (database) character set encoding." msgstr "Zeigt die Zeichensatzkodierung des Servers (der Datenbank)." -#: utils/misc/guc_tables.c:4524 +#: utils/misc/guc_tables.c:4533 msgid "Shows the server version." msgstr "Zeigt die Serverversion." -#: utils/misc/guc_tables.c:4536 +#: utils/misc/guc_tables.c:4545 msgid "Sets the current role." msgstr "Setzt die aktuelle Rolle." -#: utils/misc/guc_tables.c:4548 +#: utils/misc/guc_tables.c:4557 msgid "Sets the session user name." msgstr "Setzt den Sitzungsbenutzernamen." -#: utils/misc/guc_tables.c:4559 +#: utils/misc/guc_tables.c:4568 msgid "Sets the destination for server log output." msgstr "Setzt das Ziel für die Serverlogausgabe." -#: utils/misc/guc_tables.c:4560 +#: utils/misc/guc_tables.c:4569 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", \"jsonlog\", and \"eventlog\", depending on the platform." msgstr "Gültige Werte sind Kombinationen von »stderr«, »syslog«, »csvlog«, »jsonlog« und »eventlog«, je nach Plattform." -#: utils/misc/guc_tables.c:4571 +#: utils/misc/guc_tables.c:4580 msgid "Sets the destination directory for log files." msgstr "Bestimmt das Zielverzeichnis für Logdateien." -#: utils/misc/guc_tables.c:4572 +#: utils/misc/guc_tables.c:4581 msgid "Can be specified as relative to the data directory or as absolute path." msgstr "Kann relativ zum Datenverzeichnis oder als absoluter Pfad angegeben werden." -#: utils/misc/guc_tables.c:4582 +#: utils/misc/guc_tables.c:4591 msgid "Sets the file name pattern for log files." msgstr "Bestimmt das Dateinamenmuster für Logdateien." -#: utils/misc/guc_tables.c:4593 +#: utils/misc/guc_tables.c:4602 msgid "Sets the program name used to identify PostgreSQL messages in syslog." msgstr "Setzt den Programmnamen, mit dem PostgreSQL-Meldungen im Syslog identifiziert werden." -#: utils/misc/guc_tables.c:4604 +#: utils/misc/guc_tables.c:4613 msgid "Sets the application name used to identify PostgreSQL messages in the event log." msgstr "Setzt den Programmnamen, mit dem PostgreSQL-Meldungen im Ereignisprotokoll identifiziert werden." -#: utils/misc/guc_tables.c:4615 +#: utils/misc/guc_tables.c:4624 msgid "Sets the time zone for displaying and interpreting time stamps." msgstr "Setzt die Zeitzone, in der Zeitangaben interpretiert und ausgegeben werden." -#: utils/misc/guc_tables.c:4625 +#: utils/misc/guc_tables.c:4634 msgid "Selects a file of time zone abbreviations." msgstr "Wählt eine Datei mit Zeitzonenabkürzungen." -#: utils/misc/guc_tables.c:4635 +#: utils/misc/guc_tables.c:4644 msgid "Sets the owning group of the Unix-domain socket." msgstr "Setzt die Eigentümergruppe der Unix-Domain-Socket." -#: utils/misc/guc_tables.c:4636 +#: utils/misc/guc_tables.c:4645 msgid "The owning user of the socket is always the user that starts the server. An empty string means use the user's default group." msgstr "Der Eigentümer ist immer der Benutzer, der den Server startet. Eine leere Zeichenkette bedeutet, die Standardgruppe des Benutzers zu verwenden." -#: utils/misc/guc_tables.c:4646 +#: utils/misc/guc_tables.c:4655 msgid "Sets the directories where Unix-domain sockets will be created." msgstr "Setzt die Verzeichnisse, in denen Unix-Domain-Sockets erzeugt werden sollen." -#: utils/misc/guc_tables.c:4657 +#: utils/misc/guc_tables.c:4666 msgid "Sets the host name or IP address(es) to listen to." msgstr "Setzt den Hostnamen oder die IP-Adresse(n), auf der auf Verbindungen gewartet wird." -#: utils/misc/guc_tables.c:4672 +#: utils/misc/guc_tables.c:4681 msgid "Sets the server's data directory." msgstr "Setzt das Datenverzeichnis des Servers." -#: utils/misc/guc_tables.c:4683 +#: utils/misc/guc_tables.c:4692 msgid "Sets the server's main configuration file." msgstr "Setzt die Hauptkonfigurationsdatei des Servers." -#: utils/misc/guc_tables.c:4694 +#: utils/misc/guc_tables.c:4703 msgid "Sets the server's \"hba\" configuration file." msgstr "Setzt die »hba«-Konfigurationsdatei des Servers." -#: utils/misc/guc_tables.c:4705 +#: utils/misc/guc_tables.c:4714 msgid "Sets the server's \"ident\" configuration file." msgstr "Setzt die »ident«-Konfigurationsdatei des Servers." -#: utils/misc/guc_tables.c:4716 +#: utils/misc/guc_tables.c:4725 msgid "Writes the postmaster PID to the specified file." msgstr "Schreibt die Postmaster-PID in die angegebene Datei." -#: utils/misc/guc_tables.c:4727 +#: utils/misc/guc_tables.c:4736 msgid "Shows the name of the SSL library." msgstr "Zeigt den Namen der SSL-Bibliothek." -#: utils/misc/guc_tables.c:4742 +#: utils/misc/guc_tables.c:4751 msgid "Location of the SSL server certificate file." msgstr "Ort der SSL-Serverzertifikatsdatei." -#: utils/misc/guc_tables.c:4752 +#: utils/misc/guc_tables.c:4761 msgid "Location of the SSL server private key file." msgstr "Setzt den Ort der Datei mit dem privaten SSL-Server-Schlüssel." -#: utils/misc/guc_tables.c:4762 +#: utils/misc/guc_tables.c:4771 msgid "Location of the SSL certificate authority file." msgstr "Ort der SSL-Certificate-Authority-Datei." -#: utils/misc/guc_tables.c:4772 +#: utils/misc/guc_tables.c:4781 msgid "Location of the SSL certificate revocation list file." msgstr "Ort der SSL-Certificate-Revocation-List-Datei." -#: utils/misc/guc_tables.c:4782 +#: utils/misc/guc_tables.c:4791 msgid "Location of the SSL certificate revocation list directory." msgstr "Ort des SSL-Certificate-Revocation-List-Verzeichnisses." -#: utils/misc/guc_tables.c:4792 +#: utils/misc/guc_tables.c:4801 msgid "Number of synchronous standbys and list of names of potential synchronous ones." msgstr "Anzahl synchroner Standbys und Liste der Namen der möglichen synchronen Standbys." -#: utils/misc/guc_tables.c:4803 +#: utils/misc/guc_tables.c:4812 msgid "Sets default text search configuration." msgstr "Setzt die vorgegebene Textsuchekonfiguration." -#: utils/misc/guc_tables.c:4813 +#: utils/misc/guc_tables.c:4822 msgid "Sets the list of allowed TLSv1.3 cipher suites." msgstr "Setzt die Liste der erlaubten Verschlüsselungsalgorithmen für TLSv1.3." -#: utils/misc/guc_tables.c:4814 +#: utils/misc/guc_tables.c:4823 msgid "An empty string means use the default cipher suites." msgstr "Eine leere Zeichenkette bedeutet, die voreingestellten Verschlüsselungsalgorithmen zu verwenden." -#: utils/misc/guc_tables.c:4824 +#: utils/misc/guc_tables.c:4833 msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." msgstr "Setzt die Liste der erlaubten Verschlüsselungsalgorithmen für TLSv1.2 (und älter)." -#: utils/misc/guc_tables.c:4839 +#: utils/misc/guc_tables.c:4848 msgid "Sets the group(s) to use for Diffie-Hellman key exchange." msgstr "Setzt die für Diffie-Hellman-Schlüsselaustausch zu verwendenden Gruppen." -#: utils/misc/guc_tables.c:4840 +#: utils/misc/guc_tables.c:4849 msgid "Multiple groups can be specified using a colon-separated list." msgstr "Mehrere Gruppen können in einer durch Doppelpunkte getrennten Liste angegeben werden." -#: utils/misc/guc_tables.c:4854 +#: utils/misc/guc_tables.c:4863 msgid "Location of the SSL DH parameters file." msgstr "Setzt den Ort der SSL-DH-Parameter-Datei." -#: utils/misc/guc_tables.c:4855 +#: utils/misc/guc_tables.c:4864 msgid "An empty string means use compiled-in default parameters." msgstr "Eine leere Zeichenkette bedeutet, die einkompilierten Standardparameter zu verwenden." -#: utils/misc/guc_tables.c:4865 +#: utils/misc/guc_tables.c:4874 msgid "Command to obtain passphrases for SSL." msgstr "Befehl zum Einlesen von Passphrasen für SSL." -#: utils/misc/guc_tables.c:4866 +#: utils/misc/guc_tables.c:4875 msgid "An empty string means use the built-in prompting mechanism." msgstr "Eine leere Zeichenkette bedeutet, den eingebauten Prompt-Mechanismus zu verwenden." -#: utils/misc/guc_tables.c:4876 +#: utils/misc/guc_tables.c:4885 msgid "Sets the application name to be reported in statistics and logs." msgstr "Setzt den Anwendungsnamen, der in Statistiken und Logs verzeichnet wird." -#: utils/misc/guc_tables.c:4887 +#: utils/misc/guc_tables.c:4896 msgid "Sets the name of the cluster, which is included in the process title." msgstr "Setzt den Namen des Clusters, welcher im Prozesstitel angezeigt wird." -#: utils/misc/guc_tables.c:4898 +#: utils/misc/guc_tables.c:4907 msgid "Sets the WAL resource managers for which WAL consistency checks are done." msgstr "Setzt die WAL-Resource-Manager, für die WAL-Konsistenzprüfungen durchgeführt werden." -#: utils/misc/guc_tables.c:4899 +#: utils/misc/guc_tables.c:4908 msgid "Full-page images will be logged for all data blocks and cross-checked against the results of WAL replay." msgstr "Volle Seitenabbilder werden für alle Datenblöcke geloggt und gegen die Resultate der WAL-Wiederherstellung geprüft." -#: utils/misc/guc_tables.c:4909 +#: utils/misc/guc_tables.c:4918 msgid "JIT provider to use." msgstr "Zu verwendender JIT-Provider." -#: utils/misc/guc_tables.c:4920 +#: utils/misc/guc_tables.c:4929 msgid "Log backtrace for errors in these functions." msgstr "Backtrace für Fehler in diesen Funktionen loggen." -#: utils/misc/guc_tables.c:4931 +#: utils/misc/guc_tables.c:4940 msgid "Use direct I/O for file access." msgstr "Direct-I/O für Dateizugriff verwenden." -#: utils/misc/guc_tables.c:4932 +#: utils/misc/guc_tables.c:4941 msgid "An empty string disables direct I/O." msgstr "Eine leere Zeichenkette schaltet Direct-I/O aus." -#: utils/misc/guc_tables.c:4942 +#: utils/misc/guc_tables.c:4951 msgid "Lists streaming replication standby server replication slot names that logical WAL sender processes will wait for." msgstr "Listet Replikations-Slot-Namen von Streaming-Replication-Standby-Servern, auf die logische WAL-Sender warten werden." -#: utils/misc/guc_tables.c:4944 +#: utils/misc/guc_tables.c:4953 msgid "Logical WAL sender processes will send decoded changes to output plugins only after the specified replication slots have confirmed receiving WAL." msgstr "Logische WAL-Sender-Prozesse werden dekodierte Änderungen erst an die Ausgabe-Plugins senden, nachdem die angegebenen Replikations-Slots den Empfang von WAL bestätigt haben." -#: utils/misc/guc_tables.c:4956 +#: utils/misc/guc_tables.c:4965 msgid "Prohibits access to non-system relations of specified kinds." msgstr "Verbietet Zugriff auf Nicht-System-Relationen der angegeben Arten." -#: utils/misc/guc_tables.c:4967 +#: utils/misc/guc_tables.c:4976 msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." msgstr "Listet Bibliotheken, die aufgerufen werden können, um OAuth-v2-Bearer-Tokens zu validieren." -#: utils/misc/guc_tables.c:4978 +#: utils/misc/guc_tables.c:4987 msgid "Logs specified aspects of connection establishment and setup." msgstr "Loggt die angegebenen Aspekte des Verbindungsaufbaus." -#: utils/misc/guc_tables.c:4999 +#: utils/misc/guc_tables.c:5008 msgid "Sets whether \"\\'\" is allowed in string literals." msgstr "Bestimmt, ob »\\'« in Zeichenkettenkonstanten erlaubt ist." -#: utils/misc/guc_tables.c:5009 +#: utils/misc/guc_tables.c:5018 msgid "Sets the output format for bytea." msgstr "Setzt das Ausgabeformat für bytea." -#: utils/misc/guc_tables.c:5019 +#: utils/misc/guc_tables.c:5028 msgid "Sets the message levels that are sent to the client." msgstr "Setzt die Meldungstypen, die an den Client gesendet werden." -#: utils/misc/guc_tables.c:5020 utils/misc/guc_tables.c:5116 -#: utils/misc/guc_tables.c:5127 +#: utils/misc/guc_tables.c:5029 utils/misc/guc_tables.c:5125 +#: utils/misc/guc_tables.c:5136 msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent." msgstr "Jeder Wert schließt alle ihm folgenden Werte mit ein. Je weiter hinten der Wert steht, desto weniger Meldungen werden gesendet werden." -#: utils/misc/guc_tables.c:5030 +#: utils/misc/guc_tables.c:5039 msgid "Enables in-core computation of query identifiers." msgstr "Schaltet die eingebaute Berechnung von Anfragebezeichnern ein." -#: utils/misc/guc_tables.c:5040 +#: utils/misc/guc_tables.c:5049 msgid "Enables the planner to use constraints to optimize queries." msgstr "Ermöglicht dem Planer die Verwendung von Constraints, um Anfragen zu optimieren." -#: utils/misc/guc_tables.c:5041 +#: utils/misc/guc_tables.c:5050 msgid "Table scans will be skipped if their constraints guarantee that no rows match the query." msgstr "Tabellen-Scans werden übersprungen, wenn deren Constraints garantieren, dass keine Zeile mit der Abfrage übereinstimmt." -#: utils/misc/guc_tables.c:5052 +#: utils/misc/guc_tables.c:5061 msgid "Sets the default compression method for compressible values." msgstr "Setzt die Standard-Komprimierungsmethode für komprimierbare Werte." -#: utils/misc/guc_tables.c:5063 +#: utils/misc/guc_tables.c:5072 msgid "Sets the transaction isolation level of each new transaction." msgstr "Setzt den Transaktionsisolationsgrad neuer Transaktionen." -#: utils/misc/guc_tables.c:5073 +#: utils/misc/guc_tables.c:5082 msgid "Sets the current transaction's isolation level." msgstr "Zeigt den Isolationsgrad der aktuellen Transaktion." -#: utils/misc/guc_tables.c:5084 +#: utils/misc/guc_tables.c:5093 msgid "Sets the display format for interval values." msgstr "Setzt das Ausgabeformat für Intervallwerte." -#: utils/misc/guc_tables.c:5095 +#: utils/misc/guc_tables.c:5104 msgid "Log level for reporting invalid ICU locale strings." msgstr "Loglevel für Meldungen über ungültige ICU-Locale-Zeichenketten." -#: utils/misc/guc_tables.c:5105 +#: utils/misc/guc_tables.c:5114 msgid "Sets the verbosity of logged messages." msgstr "Setzt den Detailgrad von geloggten Meldungen." -#: utils/misc/guc_tables.c:5115 +#: utils/misc/guc_tables.c:5124 msgid "Sets the message levels that are logged." msgstr "Setzt die Meldungstypen, die geloggt werden." -#: utils/misc/guc_tables.c:5126 +#: utils/misc/guc_tables.c:5135 msgid "Causes all statements generating error at or above this level to be logged." msgstr "Schreibt alle Anweisungen, die einen Fehler auf dieser Stufe oder höher verursachen, in den Log." -#: utils/misc/guc_tables.c:5137 +#: utils/misc/guc_tables.c:5146 msgid "Sets the type of statements logged." msgstr "Setzt die Anweisungsarten, die geloggt werden." -#: utils/misc/guc_tables.c:5147 +#: utils/misc/guc_tables.c:5156 msgid "Sets the syslog \"facility\" to be used when syslog enabled." msgstr "Setzt die zu verwendende Syslog-»Facility«, wenn Syslog angeschaltet ist." -#: utils/misc/guc_tables.c:5158 +#: utils/misc/guc_tables.c:5167 msgid "Sets the session's behavior for triggers and rewrite rules." msgstr "Setzt das Sitzungsverhalten für Trigger und Regeln." -#: utils/misc/guc_tables.c:5168 +#: utils/misc/guc_tables.c:5177 msgid "Sets the current transaction's synchronization level." msgstr "Setzt den Synchronisationsgrad der aktuellen Transaktion." -#: utils/misc/guc_tables.c:5178 +#: utils/misc/guc_tables.c:5187 msgid "Allows archiving of WAL files using \"archive_command\"." msgstr "Erlaubt die Archivierung von WAL-Dateien mittels »archive_command«." -#: utils/misc/guc_tables.c:5188 +#: utils/misc/guc_tables.c:5197 msgid "Sets the action to perform upon reaching the recovery target." msgstr "Setzt die Aktion, die beim Erreichen des Wiederherstellungsziels durchgeführt wird." -#: utils/misc/guc_tables.c:5198 +#: utils/misc/guc_tables.c:5207 msgid "Collects function-level statistics on database activity." msgstr "Sammelt Statistiken auf Funktionsebene über Datenbankaktivität." -#: utils/misc/guc_tables.c:5209 +#: utils/misc/guc_tables.c:5218 msgid "Sets the consistency of accesses to statistics data." msgstr "Setzt die Konsistenz von Zugriffen auf Statistikdaten." -#: utils/misc/guc_tables.c:5219 +#: utils/misc/guc_tables.c:5228 msgid "Compresses full-page writes written in WAL file with specified method." msgstr "Komprimiert in WAL-Dateien geschriebene volle Seiten mit der angegebenen Methode." -#: utils/misc/guc_tables.c:5229 +#: utils/misc/guc_tables.c:5238 msgid "Sets the level of information written to the WAL." msgstr "Setzt den Umfang der in den WAL geschriebenen Informationen." -#: utils/misc/guc_tables.c:5239 +#: utils/misc/guc_tables.c:5248 msgid "Selects the dynamic shared memory implementation used." msgstr "Wählt die zu verwendende Implementierung von dynamischem Shared Memory." -#: utils/misc/guc_tables.c:5249 +#: utils/misc/guc_tables.c:5258 msgid "Selects the shared memory implementation used for the main shared memory region." msgstr "Wählt die Shared-Memory-Implementierung, die für den Haupt-Shared-Memory-Bereich verwendet wird." -#: utils/misc/guc_tables.c:5259 +#: utils/misc/guc_tables.c:5268 msgid "Selects the file copy method." msgstr "Wählt die Methode, um Dateien zu kopieren." -#: utils/misc/guc_tables.c:5269 +#: utils/misc/guc_tables.c:5278 +msgid "Selects the method used for extending data files." +msgstr "Wählt die Methode, um Datendateien zu erweitern." + +#: utils/misc/guc_tables.c:5288 msgid "Selects the method used for forcing WAL updates to disk." msgstr "Wählt die Methode, um das Schreiben von WAL-Änderungen auf die Festplatte zu erzwingen." -#: utils/misc/guc_tables.c:5279 +#: utils/misc/guc_tables.c:5298 msgid "Sets how binary values are to be encoded in XML." msgstr "Setzt, wie binäre Werte in XML kodiert werden." -#: utils/misc/guc_tables.c:5289 +#: utils/misc/guc_tables.c:5308 msgid "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments." msgstr "Setzt, ob XML-Daten in impliziten Parse- und Serialisierungsoperationen als Dokument oder Fragment betrachtet werden sollen." -#: utils/misc/guc_tables.c:5300 +#: utils/misc/guc_tables.c:5319 msgid "Use of huge pages on Linux or Windows." msgstr "Huge Pages auf Linux oder Windows verwenden." -#: utils/misc/guc_tables.c:5310 +#: utils/misc/guc_tables.c:5329 msgid "Indicates the status of huge pages." msgstr "Zeigt den Status von Huge Pages an." -#: utils/misc/guc_tables.c:5321 +#: utils/misc/guc_tables.c:5340 msgid "Prefetch referenced blocks during recovery." msgstr "Während der Wiederherstellung Blöcke, auf die verwiesen wird, vorab einlesen." -#: utils/misc/guc_tables.c:5322 +#: utils/misc/guc_tables.c:5341 msgid "Look ahead in the WAL to find references to uncached data." msgstr "Im WAL vorausschauen, um Verweise auf ungecachte Daten zu finden." -#: utils/misc/guc_tables.c:5331 +#: utils/misc/guc_tables.c:5350 msgid "Forces the planner's use parallel query nodes." msgstr "Erzwingt die Verwendung von Parallel-Query-Knoten im Planer." -#: utils/misc/guc_tables.c:5332 +#: utils/misc/guc_tables.c:5351 msgid "This can be useful for testing the parallel query infrastructure by forcing the planner to generate plans that contain nodes that perform tuple communication between workers and the main process." msgstr "Das kann nützlich sein, um die Parallel-Query-Infrastruktur zu testen, indem der Planer gezwungen wird, Pläne zu erzeugen, die Knoten enthalten, die Tupelkommunikation zwischen Worker- und Hauptprozess durchführen." -#: utils/misc/guc_tables.c:5344 +#: utils/misc/guc_tables.c:5363 msgid "Chooses the algorithm for encrypting passwords." msgstr "Wählt den Algorithmus zum Verschlüsseln von Passwörtern." -#: utils/misc/guc_tables.c:5354 +#: utils/misc/guc_tables.c:5373 msgid "Controls the planner's selection of custom or generic plan." msgstr "Kontrolliert, ob der Planer einen maßgeschneiderten oder einen allgemeinen Plan verwendet." -#: utils/misc/guc_tables.c:5355 +#: utils/misc/guc_tables.c:5374 msgid "Prepared statements can have custom and generic plans, and the planner will attempt to choose which is better. This can be set to override the default behavior." msgstr "Vorbereitete Anweisungen können maßgeschneiderte oder allgemeine Pläne haben und der Planer wird versuchen, den besseren auszuwählen. Diese Einstellung kann das Standardverhalten außer Kraft setzen." -#: utils/misc/guc_tables.c:5367 +#: utils/misc/guc_tables.c:5386 msgid "Sets the minimum SSL/TLS protocol version to use." msgstr "Setzt die minimale zu verwendende SSL/TLS-Protokollversion." -#: utils/misc/guc_tables.c:5379 +#: utils/misc/guc_tables.c:5398 msgid "Sets the maximum SSL/TLS protocol version to use." msgstr "Setzt die maximale zu verwendende SSL/TLS-Protokollversion." -#: utils/misc/guc_tables.c:5391 +#: utils/misc/guc_tables.c:5410 msgid "Sets the method for synchronizing the data directory before crash recovery." msgstr "Setzt die Methode für das Synchronisieren des Datenverzeichnisses vor der Wiederherstellung nach einem Absturz." -#: utils/misc/guc_tables.c:5400 +#: utils/misc/guc_tables.c:5419 msgid "Forces immediate streaming or serialization of changes in large transactions." msgstr "Erzwingt sofortiges Streaming oder sofortige Serialisierung von Änderungen in großen Transaktionen." -#: utils/misc/guc_tables.c:5401 +#: utils/misc/guc_tables.c:5420 msgid "On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction." msgstr "Auf dem Publikationsserver erlaubt es Streaming oder Serialisierung jeder Änderung aus logischer Dekodierung. Auf dem Subskriptionsserver erlaubt es die Serialisierung aller Änderungen in Dateien und benachrichtigt die Parallel-Apply-Worker, sie nach dem Ende der Transaktion zu lesen und anzuwenden." -#: utils/misc/guc_tables.c:5413 +#: utils/misc/guc_tables.c:5432 msgid "Selects the method for executing asynchronous I/O." msgstr "Wählt die Methode zum Ausführen von asynchronem I/O." @@ -32472,12 +32474,12 @@ msgstr "Fehler während der Erzeugung des Speicherkontexts »%s«." msgid "could not attach to dynamic shared area" msgstr "konnte nicht an dynamische Shared Area anbinden" -#: utils/mmgr/mcxt.c:1160 +#: utils/mmgr/mcxt.c:1163 #, c-format msgid "Failed on request of size %zu in memory context \"%s\"." msgstr "Fehler bei Anfrage mit Größe %zu im Speicherkontext »%s«." -#: utils/mmgr/mcxt.c:1304 +#: utils/mmgr/mcxt.c:1319 #, c-format msgid "logging memory contexts of PID %d" msgstr "logge Speicherkontexte von PID %d" @@ -32522,12 +32524,12 @@ msgstr "in einer Cursor-Schleife, die nicht nur liest, können keine Transaktion msgid "could not seek to block % of temporary file" msgstr "konnte Positionszeiger in temporärer Datei nicht auf Block % setzen" -#: utils/sort/sharedtuplestore.c:466 +#: utils/sort/sharedtuplestore.c:467 #, c-format msgid "unexpected chunk in shared tuplestore temporary file" msgstr "unerwarteter Chunk in temporärer Datei für Shared-Tuplestore" -#: utils/sort/sharedtuplestore.c:548 +#: utils/sort/sharedtuplestore.c:549 #, c-format msgid "could not seek to block %u in shared tuplestore temporary file" msgstr "konnte Positionszeiger in temporärer Datei für Shared-Tuplestore nicht auf Block %u setzen" @@ -32537,17 +32539,17 @@ msgstr "konnte Positionszeiger in temporärer Datei für Shared-Tuplestore nicht msgid "cannot have more than %d runs for an external sort" msgstr "ein externer Sortiervorgang kann nicht mehr als %d Durchgänge haben" -#: utils/sort/tuplesortvariants.c:1671 +#: utils/sort/tuplesortvariants.c:1688 #, c-format msgid "could not create unique index \"%s\"" msgstr "konnte Unique Index »%s« nicht erstellen" -#: utils/sort/tuplesortvariants.c:1673 +#: utils/sort/tuplesortvariants.c:1690 #, c-format msgid "Key %s is duplicated." msgstr "Schlüssel %s ist doppelt vorhanden." -#: utils/sort/tuplesortvariants.c:1674 +#: utils/sort/tuplesortvariants.c:1691 #, c-format msgid "Duplicate keys exist." msgstr "Es existieren doppelte Schlüssel." diff --git a/src/backend/po/es.po b/src/backend/po/es.po index 5e04960ac57..fa0e06417c9 100644 --- a/src/backend/po/es.po +++ b/src/backend/po/es.po @@ -64,8 +64,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL server 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:10+0000\n" -"PO-Revision-Date: 2025-09-22 11:54+0200\n" +"POT-Creation-Date: 2026-02-06 23:10+0000\n" +"PO-Revision-Date: 2026-02-07 10:17+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -146,15 +146,15 @@ msgstr "no se pudo abrir archivo «%s» para lectura: %m" #: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 #: access/transam/timeline.c:143 access/transam/timeline.c:362 -#: access/transam/twophase.c:1353 access/transam/xlog.c:3479 -#: access/transam/xlog.c:4370 access/transam/xlogrecovery.c:1247 -#: access/transam/xlogrecovery.c:1345 access/transam/xlogrecovery.c:1382 -#: access/transam/xlogrecovery.c:1449 backup/basebackup.c:2128 +#: access/transam/twophase.c:1353 access/transam/xlog.c:3478 +#: access/transam/xlog.c:4369 access/transam/xlogrecovery.c:1257 +#: access/transam/xlogrecovery.c:1355 access/transam/xlogrecovery.c:1392 +#: access/transam/xlogrecovery.c:1459 backup/basebackup.c:2128 #: backup/walsummary.c:283 commands/extension.c:3841 libpq/hba.c:769 #: replication/logical/origin.c:768 replication/logical/origin.c:804 #: replication/logical/reorderbuffer.c:5366 -#: replication/logical/snapbuild.c:1951 replication/slot.c:2505 -#: replication/slot.c:2546 replication/walsender.c:643 +#: replication/logical/snapbuild.c:1951 replication/slot.c:2546 +#: replication/slot.c:2587 replication/walsender.c:643 #: storage/file/buffile.c:470 storage/file/copydir.c:201 #: utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 #, c-format @@ -162,10 +162,10 @@ msgid "could not read file \"%s\": %m" msgstr "no se pudo leer el archivo «%s»: %m" #: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 -#: access/transam/xlog.c:3484 access/transam/xlog.c:4375 +#: access/transam/xlog.c:3483 access/transam/xlog.c:4374 #: replication/logical/origin.c:773 replication/logical/origin.c:812 -#: replication/logical/snapbuild.c:1956 replication/slot.c:2509 -#: replication/slot.c:2550 replication/walsender.c:648 +#: replication/logical/snapbuild.c:1956 replication/slot.c:2550 +#: replication/slot.c:2591 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -176,18 +176,18 @@ msgstr "no se pudo leer el archivo «%s»: leídos %d de %zu" #: access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 #: access/transam/timeline.c:392 access/transam/timeline.c:438 #: access/transam/timeline.c:512 access/transam/twophase.c:1365 -#: access/transam/twophase.c:1783 access/transam/xlog.c:3325 -#: access/transam/xlog.c:3519 access/transam/xlog.c:3524 -#: access/transam/xlog.c:3660 access/transam/xlog.c:4340 -#: access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 +#: access/transam/twophase.c:1783 access/transam/xlog.c:3324 +#: access/transam/xlog.c:3518 access/transam/xlog.c:3523 +#: access/transam/xlog.c:3659 access/transam/xlog.c:4339 +#: access/transam/xlog.c:5311 commands/copyfrom.c:1929 commands/copyto.c:598 #: libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 #: replication/logical/origin.c:706 replication/logical/origin.c:845 #: replication/logical/reorderbuffer.c:5418 #: replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 -#: replication/slot.c:2391 replication/slot.c:2557 replication/walsender.c:658 +#: replication/slot.c:2432 replication/slot.c:2598 replication/walsender.c:658 #: storage/file/copydir.c:224 storage/file/copydir.c:229 -#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:825 -#: storage/file/fd.c:3815 storage/file/fd.c:3921 utils/cache/relmapper.c:841 +#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:828 +#: storage/file/fd.c:3818 storage/file/fd.c:3924 utils/cache/relmapper.c:841 #: utils/cache/relmapper.c:956 #, c-format msgid "could not close file \"%s\": %m" @@ -216,10 +216,10 @@ msgstr "" #: ../common/file_utils.c:428 ../common/file_utils.c:502 #: access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 #: access/transam/timeline.c:251 access/transam/timeline.c:348 -#: access/transam/twophase.c:1309 access/transam/xlog.c:3215 -#: access/transam/xlog.c:3395 access/transam/xlog.c:3434 -#: access/transam/xlog.c:3627 access/transam/xlog.c:4360 -#: access/transam/xlogrecovery.c:4297 access/transam/xlogrecovery.c:4398 +#: access/transam/twophase.c:1309 access/transam/xlog.c:3214 +#: access/transam/xlog.c:3394 access/transam/xlog.c:3433 +#: access/transam/xlog.c:3626 access/transam/xlog.c:4359 +#: access/transam/xlogrecovery.c:4307 access/transam/xlogrecovery.c:4408 #: access/transam/xlogutils.c:825 backup/basebackup.c:549 #: backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 #: postmaster/syslogger.c:1512 replication/logical/origin.c:758 @@ -227,10 +227,10 @@ msgstr "" #: replication/logical/reorderbuffer.c:4573 #: replication/logical/reorderbuffer.c:5346 #: replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 -#: replication/slot.c:2477 replication/walsender.c:616 +#: replication/slot.c:2518 replication/walsender.c:616 #: replication/walsender.c:3094 storage/file/copydir.c:167 -#: storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 -#: storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 +#: storage/file/copydir.c:255 storage/file/fd.c:803 storage/file/fd.c:3575 +#: storage/file/fd.c:3805 storage/file/fd.c:3895 storage/smgr/md.c:686 #: utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 #: utils/error/elog.c:2132 utils/init/miscinit.c:1586 #: utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 @@ -241,7 +241,7 @@ msgstr "no se pudo abrir el archivo «%s»: %m" #: ../common/controldata_utils.c:246 ../common/controldata_utils.c:249 #: access/transam/twophase.c:1756 access/transam/twophase.c:1765 -#: access/transam/xlog.c:9338 access/transam/xlogfuncs.c:699 +#: access/transam/xlog.c:9340 access/transam/xlogfuncs.c:699 #: backup/basebackup_server.c:173 backup/basebackup_server.c:266 #: backup/walsummary.c:304 postmaster/postmaster.c:4105 #: postmaster/syslogger.c:1523 postmaster/syslogger.c:1536 @@ -255,12 +255,12 @@ msgstr "no se pudo escribir el archivo «%s»: %m" #: access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 #: access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 #: access/transam/timeline.c:506 access/transam/twophase.c:1777 -#: access/transam/xlog.c:3315 access/transam/xlog.c:3513 -#: access/transam/xlog.c:4333 access/transam/xlog.c:8724 -#: access/transam/xlog.c:8768 backup/basebackup_server.c:207 +#: access/transam/xlog.c:3314 access/transam/xlog.c:3512 +#: access/transam/xlog.c:4332 access/transam/xlog.c:8726 +#: access/transam/xlog.c:8770 backup/basebackup_server.c:207 #: commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 -#: replication/slot.c:2375 replication/slot.c:2487 storage/file/fd.c:817 -#: storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 +#: replication/slot.c:2416 replication/slot.c:2528 storage/file/fd.c:820 +#: storage/file/fd.c:3916 storage/smgr/md.c:1469 storage/smgr/md.c:1529 #: storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" @@ -279,10 +279,10 @@ msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m" #: libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 #: postmaster/bgworker.c:1023 postmaster/postmaster.c:3575 #: postmaster/walsummarizer.c:938 -#: replication/libpqwalreceiver/libpqwalreceiver.c:351 +#: replication/libpqwalreceiver/libpqwalreceiver.c:364 #: replication/logical/logical.c:212 replication/walsender.c:825 -#: storage/buffer/localbuf.c:745 storage/file/fd.c:909 storage/file/fd.c:1444 -#: storage/file/fd.c:1605 storage/file/fd.c:2589 storage/ipc/procarray.c:1465 +#: storage/buffer/localbuf.c:745 storage/file/fd.c:912 storage/file/fd.c:1447 +#: storage/file/fd.c:1608 storage/file/fd.c:2592 storage/ipc/procarray.c:1465 #: storage/ipc/procarray.c:2217 storage/ipc/procarray.c:2224 #: storage/ipc/procarray.c:2727 storage/ipc/procarray.c:3436 #: utils/activity/pgstat_shmem.c:535 utils/adt/pg_locale.c:517 @@ -295,7 +295,7 @@ msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m" #: utils/misc/guc.c:672 utils/misc/guc.c:1060 utils/misc/guc.c:4505 #: utils/misc/tzparser.c:479 utils/mmgr/aset.c:451 utils/mmgr/bump.c:183 #: utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 utils/mmgr/dsa.c:810 -#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1159 utils/mmgr/slab.c:370 +#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1162 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "memoria agotada" @@ -373,7 +373,7 @@ msgstr "memoria agotada\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "no se puede duplicar un puntero nulo (error interno)\n" -#: ../common/file_utils.c:75 storage/file/fd.c:3578 +#: ../common/file_utils.c:75 storage/file/fd.c:3581 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "no se pudo sincronizar el sistema de archivos para el archivo «%s»: %m" @@ -382,11 +382,11 @@ msgstr "no se pudo sincronizar el sistema de archivos para el archivo «%s»: %m #: ../common/file_utils.c:592 access/transam/twophase.c:1321 #: access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:235 #: backup/basebackup.c:357 backup/basebackup.c:555 backup/basebackup.c:626 -#: backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1889 -#: commands/copyto.c:979 commands/extension.c:3820 commands/tablespace.c:804 +#: backup/walsummary.c:247 commands/copyfrom.c:1889 commands/copyto.c:979 +#: commands/extension.c:3820 commands/tablespace.c:804 #: commands/tablespace.c:893 postmaster/pgarch.c:682 #: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 -#: storage/file/fd.c:1969 storage/file/fd.c:2057 storage/file/fd.c:3626 +#: storage/file/fd.c:1972 storage/file/fd.c:2060 storage/file/fd.c:3629 #: utils/adt/dbsize.c:105 utils/adt/dbsize.c:266 utils/adt/dbsize.c:355 #: utils/adt/genfile.c:437 utils/adt/genfile.c:612 utils/adt/misc.c:340 #, c-format @@ -401,22 +401,22 @@ msgstr "esta instalación no soporta el método de sync «%s»" #: ../common/file_utils.c:156 ../common/file_utils.c:304 #: ../common/pgfnames.c:48 ../common/rmtree.c:63 commands/tablespace.c:728 #: commands/tablespace.c:738 postmaster/postmaster.c:1496 -#: storage/file/fd.c:2994 storage/file/reinit.c:126 utils/adt/misc.c:256 +#: storage/file/fd.c:2997 storage/file/reinit.c:126 utils/adt/misc.c:256 #: utils/misc/tzparser.c:340 #, c-format msgid "could not open directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%s»: %m" #: ../common/file_utils.c:174 ../common/file_utils.c:338 -#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3006 +#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3009 #, c-format msgid "could not read directory \"%s\": %m" msgstr "no se pudo leer el directorio «%s»: %m" #: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 #: postmaster/pgarch.c:836 postmaster/syslogger.c:1560 -#: replication/logical/snapbuild.c:1708 replication/slot.c:1023 -#: replication/slot.c:2258 replication/slot.c:2407 storage/file/fd.c:835 +#: replication/logical/snapbuild.c:1708 replication/slot.c:1027 +#: replication/slot.c:2299 replication/slot.c:2448 storage/file/fd.c:838 #: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" @@ -773,12 +773,12 @@ msgstr "no se pudo obtener el código de salida del subproceso»: código de err #: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 #: access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 -#: access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 -#: postmaster/syslogger.c:1489 replication/logical/origin.c:614 -#: replication/logical/reorderbuffer.c:4841 +#: access/transam/xlogarchive.c:399 backup/walsummary.c:254 +#: postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 +#: replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 #: replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 -#: replication/slot.c:2461 storage/file/fd.c:875 storage/file/fd.c:3440 -#: storage/file/fd.c:3502 storage/file/reinit.c:261 storage/ipc/dsm.c:343 +#: replication/slot.c:2502 storage/file/fd.c:878 storage/file/fd.c:3443 +#: storage/file/fd.c:3505 storage/file/reinit.c:261 storage/ipc/dsm.c:343 #: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 #: utils/time/snapmgr.c:1609 #, c-format @@ -786,8 +786,8 @@ msgid "could not remove file \"%s\": %m" msgstr "no se pudo eliminar el archivo «%s»: %m" #: ../common/rmtree.c:124 commands/tablespace.c:767 commands/tablespace.c:780 -#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3432 -#: storage/file/fd.c:3841 +#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3435 +#: storage/file/fd.c:3844 #, c-format msgid "could not remove directory \"%s\": %m" msgstr "no se pudo eliminar el directorio «%s»: %m" @@ -805,10 +805,9 @@ msgid "could not encode server key" msgstr "no se pudo codificar la llave del servidor" #: ../common/stringinfo.c:362 -#, fuzzy, c-format -#| msgid "bit string length exceeds the maximum allowed (%d)" +#, c-format msgid "string buffer exceeds maximum allowed length (%zu bytes)" -msgstr "el tamaño de la cadena de bits excede el máximo permitido (%d)" +msgstr "el tamaño del búfer de cadena excede el máximo permitido (%zu)" #: ../common/stringinfo.c:363 #, c-format @@ -816,17 +815,13 @@ msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes." msgstr "No se puede agrandar el búfer de cadena que ya tiene %d bytes en %d bytes adicionales." #: ../common/stringinfo.c:367 -#, fuzzy, c-format -#| msgid "" -#| "out of memory\n" -#| "\n" -#| "Cannot enlarge string buffer containing %d bytes by %d more bytes.\n" +#, c-format msgid "" "string buffer exceeds maximum allowed length (%zu bytes)\n" "\n" "Cannot enlarge string buffer containing %d bytes by %d more bytes.\n" msgstr "" -"memoria agotada\n" +"el tamaño del búfer de cadena excede el máximo permitido (%zu)\n" "\n" "No se puede agrandar el búfer de cadena que ya tiene %d bytes en %d bytes adicionales.\n" @@ -904,25 +899,25 @@ msgstr "no se pudo obtener junction para «%s»: %s" msgid "could not get junction for \"%s\": %s\n" msgstr "no se pudo obtener junction para «%s»: %s\n" -#: ../port/open.c:115 +#: ../port/open.c:125 #, c-format msgid "could not open file \"%s\": %s" msgstr "no se pudo abrir el archivo «%s»: %s" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "lock violation" msgstr "infracción de bloqueo (locking violation)" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "sharing violation" msgstr "infracción de uso compartido (sharing violation)" -#: ../port/open.c:117 +#: ../port/open.c:127 #, c-format msgid "Continuing to retry for 30 seconds." msgstr "Reintentando durante 30 segundos." -#: ../port/open.c:118 +#: ../port/open.c:128 #, c-format msgid "You might have antivirus, backup, or similar software interfering with the database system." msgstr "Es posible que tenga antivirus, sistema de respaldos, o software similar interfiriendo con el sistema de bases de datos." @@ -974,10 +969,9 @@ msgid "BRIN control functions cannot be executed during recovery." msgstr "Las funciones de control de BRIN no pueden ejecutarse durante la recuperación." #: access/brin/brin.c:1403 access/brin/brin.c:1510 -#, fuzzy, c-format -#| msgid "block number out of range: %lld" +#, c-format msgid "block number out of range: %" -msgstr "número de bloque fuera de rango: %lld" +msgstr "número de bloque fuera de rango: %" #: access/brin/brin.c:1447 access/brin/brin.c:1536 #, c-format @@ -1082,10 +1076,9 @@ msgid "operator class \"%s\" of access method %s is missing support function %d" msgstr "falta la función de soporte %3$d de la clase de operadores «%1$s» del método de acceso %2$s" #: access/common/attmap.c:118 -#, fuzzy, c-format -#| msgid "Returned type %s does not match expected type %s in column %d." +#, c-format msgid "Returned type %s does not match expected type %s in column \"%s\" (position %d)." -msgstr "El tipo retornado %s no coincide con el tipo de registro esperado %s en la columna %d." +msgstr "El tipo retornado %s no coincide con el tipo de esperado %s en la columna «%s» (posición %d)." #: access/common/attmap.c:147 #, c-format @@ -1152,10 +1145,9 @@ msgid "unrecognized parameter namespace \"%s\"" msgstr "espacio de nombre de parámetro «%s» no reconocido" #: access/common/reloptions.c:1305 commands/foreigncmds.c:86 -#, fuzzy, c-format -#| msgid "Extension names must not contain \"--\"." +#, c-format msgid "invalid option name \"%s\": must not contain \"=\"" -msgstr "Los nombres de extensión no deben contener «--»." +msgstr "nombre de opción «%s» no válido: no debe contener «=»" #: access/common/reloptions.c:1320 commands/variable.c:1240 #, c-format @@ -1260,7 +1252,7 @@ msgstr "no se pudo volver a encontrar la tupla dentro del índice «%s»" #: access/gin/gininsert.c:1310 access/gin/ginutil.c:152 #: executor/execExpr.c:2244 utils/adt/array_userfuncs.c:1963 #: utils/adt/arrayfuncs.c:4028 utils/adt/arrayfuncs.c:6726 -#: utils/adt/rowtypes.c:974 +#: utils/adt/rowtypes.c:974 utils/sort/tuplesortvariants.c:646 #, c-format msgid "could not identify a comparison function for type %s" msgstr "no se pudo identificar una función de comparación para el tipo %s" @@ -1361,7 +1353,7 @@ msgstr "no se pudo determinar qué ordenamiento usar para el hashing de cadenas" #: utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 #: utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 #: utils/adt/like_support.c:1020 utils/adt/varchar.c:738 -#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1592 +#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1603 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "Use la cláusula COLLATE para establecer el ordenamiento explícitamente." @@ -1412,38 +1404,38 @@ msgstr "la familia de operadores «%s» del método de acceso %s no tiene funci msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)" msgstr "faltan operadores entre tipos en la familia de operadores «%s» del método de acceso %s" -#: access/heap/heapam.c:2280 +#: access/heap/heapam.c:2283 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "no se pueden insertar tuplas en un ayudante paralelo" -#: access/heap/heapam.c:2803 +#: access/heap/heapam.c:2806 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "no se pueden eliminar tuplas durante una operación paralela" -#: access/heap/heapam.c:2850 +#: access/heap/heapam.c:2853 #, c-format msgid "attempted to delete invisible tuple" msgstr "se intentó eliminar una tupla invisible" -#: access/heap/heapam.c:3300 access/index/genam.c:829 +#: access/heap/heapam.c:3303 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "no se pueden actualizar tuplas durante una operación paralela" -#: access/heap/heapam.c:3477 +#: access/heap/heapam.c:3480 #, c-format msgid "attempted to update invisible tuple" msgstr "se intentó actualizar una tupla invisible" -#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 -#: access/heap/heapam.c:5291 access/heap/heapam_handler.c:470 +#: access/heap/heapam.c:4993 access/heap/heapam.c:5031 +#: access/heap/heapam.c:5298 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "no se pudo bloquear un “lock” en la fila de la relación «%s»" -#: access/heap/heapam.c:6405 commands/trigger.c:3401 +#: access/heap/heapam.c:6425 commands/trigger.c:3401 #: executor/nodeModifyTable.c:2568 executor/nodeModifyTable.c:2658 #, c-format msgid "tuple to be updated was already modified by an operation triggered by the current command" @@ -1466,13 +1458,13 @@ msgstr "no se pudo escribir al archivo «%s», se escribió %d de %d: %m" #: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 #: access/transam/timeline.c:329 access/transam/timeline.c:481 -#: access/transam/xlog.c:3240 access/transam/xlog.c:3448 -#: access/transam/xlog.c:4312 access/transam/xlog.c:9327 +#: access/transam/xlog.c:3239 access/transam/xlog.c:3447 +#: access/transam/xlog.c:4311 access/transam/xlog.c:9329 #: access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 #: backup/basebackup_server.c:242 commands/dbcommands.c:495 #: postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 #: postmaster/walsummarizer.c:1215 replication/logical/origin.c:626 -#: replication/slot.c:2319 storage/file/copydir.c:173 +#: replication/slot.c:2360 storage/file/copydir.c:173 #: storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 #, c-format msgid "could not create file \"%s\": %m" @@ -1485,12 +1477,12 @@ msgstr "no se pudo truncar el archivo «%s» a %u: %m" #: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 #: access/transam/timeline.c:424 access/transam/timeline.c:498 -#: access/transam/xlog.c:3301 access/transam/xlog.c:3504 -#: access/transam/xlog.c:4324 commands/dbcommands.c:507 +#: access/transam/xlog.c:3300 access/transam/xlog.c:3503 +#: access/transam/xlog.c:4323 commands/dbcommands.c:507 #: postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 #: replication/logical/origin.c:638 replication/logical/origin.c:680 #: replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 -#: replication/slot.c:2355 storage/file/buffile.c:545 +#: replication/slot.c:2396 storage/file/buffile.c:545 #: storage/file/copydir.c:213 utils/init/miscinit.c:1661 #: utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 #: utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 @@ -1535,22 +1527,19 @@ msgid "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n" msgstr "vacuum automático de la tabla «%s.%s.%s»: recorridos de índice: %d\n" #: access/heap/vacuumlazy.c:1015 -#, fuzzy, c-format -#| msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n" +#, c-format msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total), %u eagerly scanned\n" -msgstr "páginas: %u eliminadas, %u quedan, %u recorridas (%.2f%% del total)\n" +msgstr "páginas: %u eliminadas, %u quedan, %u recorridas (%.2f%% del total), %u recorridas ávidamente\n" #: access/heap/vacuumlazy.c:1024 -#, fuzzy, c-format -#| msgid "tuples: %lld removed, %lld remain, %lld are dead but not yet removable\n" +#, c-format msgid "tuples: % removed, % remain, % are dead but not yet removable\n" -msgstr "tuplas: %lld eliminadas, %lld permanecen, %lld están muertas pero aún no se pueden quitar\n" +msgstr "tuplas: % eliminadas, % permanecen, % están muertas pero aún no se pueden quitar\n" #: access/heap/vacuumlazy.c:1030 -#, fuzzy, c-format -#| msgid "tuples missed: %lld dead from %u pages not removed due to cleanup lock contention\n" +#, c-format msgid "tuples missed: % dead from %u pages not removed due to cleanup lock contention\n" -msgstr "tuplas faltantes: %lld muertas en %u páginas no eliminadas debido a contención del lock de limpieza\n" +msgstr "tuplas faltantes: % muertas en %u páginas no eliminadas debido a contención del lock de limpieza\n" #: access/heap/vacuumlazy.c:1036 #, c-format @@ -1568,10 +1557,9 @@ msgid "new relminmxid: %u, which is %d MXIDs ahead of previous value\n" msgstr "nuevo relminmxid: %u, que está %d MXIDs más adelante del valor anterior\n" #: access/heap/vacuumlazy.c:1054 -#, fuzzy, c-format -#| msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n" +#, c-format msgid "frozen: %u pages from table (%.2f%% of total) had % tuples frozen\n" -msgstr "congelado: %u páginas de la tabla (%.2f%% del total) tuvieron %lld tuplas congeladas\n" +msgstr "congelado: %u páginas de la tabla (%.2f%% del total) tuvieron % tuplas congeladas\n" #: access/heap/vacuumlazy.c:1062 #, c-format @@ -1587,10 +1575,9 @@ msgid "index scan needed: " msgstr "recorrido de índice necesario: " #: access/heap/vacuumlazy.c:1074 -#, fuzzy, c-format -#| msgid "%u pages from table (%.2f%% of total) had %lld dead item identifiers removed\n" +#, c-format msgid "%u pages from table (%.2f%% of total) had % dead item identifiers removed\n" -msgstr "en %u páginas de la tabla (%.2f%% del total) se eliminaron %lld identificadores de elementos muertos\n" +msgstr "en %u páginas de la tabla (%.2f%% del total) se eliminaron % identificadores de elementos muertos\n" #: access/heap/vacuumlazy.c:1079 msgid "index scan bypassed: " @@ -1601,10 +1588,9 @@ msgid "index scan bypassed by failsafe: " msgstr "recorrido de índice pasado por alto debido a modo failsafe: " #: access/heap/vacuumlazy.c:1083 -#, fuzzy, c-format -#| msgid "%u pages from table (%.2f%% of total) have %lld dead item identifiers\n" +#, c-format msgid "%u pages from table (%.2f%% of total) have % dead item identifiers\n" -msgstr "%u páginas de la tabla (%.2f%% del total) tienen %lld identificadores de elementos muertos\n" +msgstr "%u páginas de la tabla (%.2f%% del total) tienen % identificadores de elementos muertos\n" #: access/heap/vacuumlazy.c:1098 #, c-format @@ -1612,10 +1598,9 @@ msgid "index \"%s\": pages: %u in total, %u newly deleted, %u currently deleted, msgstr "índice «%s»: páginas: %u en total, %u recientemente eliminadas, %u eliminadas hasta ahora, %u reusables\n" #: access/heap/vacuumlazy.c:1113 commands/analyze.c:817 -#, fuzzy, c-format -#| msgid "Time: %.3f ms\n" +#, c-format msgid "delay time: %.3f ms\n" -msgstr "Duración: %.3f ms\n" +msgstr "tiempo de retardo: %.3f ms\n" #: access/heap/vacuumlazy.c:1121 commands/analyze.c:825 #, c-format @@ -1628,16 +1613,14 @@ msgid "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n" msgstr "tasa lectura promedio: %.3f MB/s, tasa escritura promedio: %.3f MB/s\n" #: access/heap/vacuumlazy.c:1134 commands/analyze.c:830 -#, fuzzy, c-format -#| msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n" +#, c-format msgid "buffer usage: % hits, % reads, % dirtied\n" -msgstr "uso de búfers: %lld aciertos, %lld fallos, %lld ensuciados\n" +msgstr "uso de búfers: % aciertos, % fallos, % ensuciados\n" #: access/heap/vacuumlazy.c:1139 commands/analyze.c:835 -#, fuzzy, c-format -#| msgid "WAL usage: %lld records, %lld full page images, %llu bytes\n" +#, c-format msgid "WAL usage: % records, % full page images, % bytes, % buffers full\n" -msgstr "uso de WAL: %lld registros, %lld imágenes de página completa, %llu bytes\n" +msgstr "uso de WAL: % registros, % imágenes de página completa, % bytes, % búfers llenos\n" #: access/heap/vacuumlazy.c:1144 commands/analyze.c:840 #, c-format @@ -1645,15 +1628,14 @@ msgid "system usage: %s" msgstr "uso de sistema: %s" #: access/heap/vacuumlazy.c:1432 -#, c-format +#, fuzzy, c-format msgid "disabling eager scanning after freezing %u eagerly scanned blocks of relation \"%s.%s.%s\"" -msgstr "" +msgstr "inhabilitando el recorrido “eager” después de hacer “freeze” en %u bloques recorridos “eagerly” de la relación «%s.%s.%s»" #: access/heap/vacuumlazy.c:2821 -#, fuzzy, c-format -#| msgid "table \"%s\": removed %lld dead item identifiers in %u pages" +#, c-format msgid "table \"%s\": removed % dead item identifiers in %u pages" -msgstr "tabla «%s»: se eliminaron %lld identificadores de elementos muertos en %u páginas" +msgstr "tabla «%s»: se eliminaron % identificadores de elementos muertos en %u páginas" #: access/heap/vacuumlazy.c:2982 #, c-format @@ -1867,7 +1849,7 @@ msgstr "el tid (%u, %u) no es válido para la relación «%s»" msgid "\"%s\" cannot be empty." msgstr "«%s» no puede ser vacío." -#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4902 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4912 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "«%s» es demasiado largo (máximo %d caracteres)." @@ -1907,13 +1889,13 @@ msgstr "Asegúrese que el parámetro de configuración «%s» esté definido en msgid "Make sure the configuration parameter \"%s\" is set." msgstr "Asegúrese que el parámetro de configuración «%s» esté definido." -#: access/transam/multixact.c:1098 +#: access/transam/multixact.c:1179 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database \"%s\"" msgstr "la base de datos no está aceptando órdenes que asignen nuevos MultiXactIds para evitar pérdida de datos debido al “wraparound” en la base de datos «%s»" -#: access/transam/multixact.c:1100 access/transam/multixact.c:1107 -#: access/transam/multixact.c:1131 access/transam/multixact.c:1140 +#: access/transam/multixact.c:1181 access/transam/multixact.c:1188 +#: access/transam/multixact.c:1212 access/transam/multixact.c:1221 #: access/transam/varsup.c:158 access/transam/varsup.c:165 #, c-format msgid "" @@ -1923,65 +1905,70 @@ msgstr "" "Ejecute VACUUM de la base completa en esa base de datos.\n" "Puede que además necesite comprometer o abortar transacciones preparadas antiguas, o eliminar slots de replicación añejos." -#: access/transam/multixact.c:1105 +#: access/transam/multixact.c:1186 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database with OID %u" msgstr "la base de datos no está aceptando órdenes que asignen nuevos MultiXactIds para evitar pérdida de datos debido al “wraparound” en la base con OID %u" -#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1207 access/transam/multixact.c:2552 #, 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" msgstr[0] "base de datos «%s» debe ser limpiada antes de que %u más MultiXactId sea usado" msgstr[1] "base de datos «%s» debe ser limpiada dentro de que %u más MultiXactIds sean usados" -#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 +#: access/transam/multixact.c:1216 access/transam/multixact.c:2561 #, 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" msgstr[0] "base de datos con OID %u debe ser limpiada antes de que %u más MultiXactId sea usado" msgstr[1] "base de datos con OID %u debe ser limpiada antes de que %u más MultiXactIds sean usados" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1280 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "límite de miembros de multixact alcanzado" -#: access/transam/multixact.c:1197 +#: access/transam/multixact.c:1281 #, 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] "Esta orden crearía un multixact con %u miembros, pero el espacio que queda sólo sirve para %u miembro." msgstr[1] "Esta orden crearía un multixact con %u miembros, pero el espacio que queda sólo sirve para %u miembros." -#: access/transam/multixact.c:1202 +#: access/transam/multixact.c:1286 #, 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 "Ejecute un VACUUM de la base completa en la base de datos con OID %u con «vacuum_multixact_freeze_min_age» y «vacuum_multixact_freeze_table_age» reducidos." -#: access/transam/multixact.c:1233 +#: access/transam/multixact.c:1317 #, 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" msgstr[0] "base de datos con OID %u debe ser limpiada antes de que %d miembro más de multixact sea usado" msgstr[1] "base de datos con OID %u debe ser limpiada antes de que %d más miembros de multixact sean usados" -#: access/transam/multixact.c:1238 +#: access/transam/multixact.c:1322 #, 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 "Ejecute un VACUUM de la base completa en esa base de datos con «vacuum_multixact_freeze_min_age» y «vacuum_multixact_freeze_table_age» reducidos." -#: access/transam/multixact.c:1378 +#: access/transam/multixact.c:1461 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "el MultiXactId %u ya no existe -- “wraparound” aparente" -#: access/transam/multixact.c:1384 +#: access/transam/multixact.c:1467 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "el MultiXactId %u no se ha creado aún -- “wraparound” aparente" -#: access/transam/multixact.c:2488 access/transam/multixact.c:2497 +#: access/transam/multixact.c:1560 +#, c-format +msgid "MultiXact %u has invalid next offset" +msgstr "el MultiXact %u tiene un siguiente offset no válido" + +#: access/transam/multixact.c:2557 access/transam/multixact.c:2566 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1990,61 +1977,67 @@ msgstr "" "Para evitar fallos de asignación de MultiXactId, ejecute VACUUM en esa base de datos.\n" "Puede que además necesite comprometer o abortar transacciones preparadas antiguas, o eliminar slots de replicación añejos." -#: access/transam/multixact.c:2776 +#: access/transam/multixact.c:2845 #, c-format msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk" msgstr "las protecciones de “wraparound” de multixact están inhabilitadas porque el multixact más antiguo %u en checkpoint no existe en disco" -#: access/transam/multixact.c:2798 +#: access/transam/multixact.c:2867 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "las protecciones de “wraparound” de miembros de multixact están habilitadas" -#: access/transam/multixact.c:3189 +#: access/transam/multixact.c:3258 #, c-format msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" msgstr "multixact más antiguo %u no encontrado, multixact más antiguo es %u, omitiendo el truncado" -#: access/transam/multixact.c:3207 +#: access/transam/multixact.c:3276 #, c-format msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation" msgstr "no se puede truncar hasta el MultiXact %u porque no existe en disco, omitiendo el truncado" -#: access/transam/multixact.c:3526 +#: access/transam/multixact.c:3293 +#, fuzzy, 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 has invalid offset, skipping truncation" +msgstr "no se puede truncar hasta el MultiXact %u porque no existe en disco, omitiendo el truncado" + +#: access/transam/multixact.c:3638 #, c-format msgid "invalid MultiXactId: %u" msgstr "el MultiXactId no es válido: %u" -#: access/transam/parallel.c:752 access/transam/parallel.c:871 +#: access/transam/parallel.c:759 access/transam/parallel.c:878 #, c-format msgid "parallel worker failed to initialize" msgstr "el ayudante paralelo no pudo iniciar" -#: access/transam/parallel.c:753 access/transam/parallel.c:872 +#: access/transam/parallel.c:760 access/transam/parallel.c:879 #, c-format msgid "More details may be available in the server log." msgstr "Puede haber más detalles disponibles en el log del servidor." -#: access/transam/parallel.c:933 +#: access/transam/parallel.c:940 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "postmaster terminó durante una transacción paralela" -#: access/transam/parallel.c:1120 +#: access/transam/parallel.c:1127 #, c-format msgid "lost connection to parallel worker" msgstr "se ha perdido la conexión al ayudante paralelo" -#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 +#: access/transam/parallel.c:1183 access/transam/parallel.c:1185 msgid "parallel worker" msgstr "ayudante paralelo" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:897 +#: access/transam/parallel.c:1355 replication/logical/applyparallelworker.c:897 #, c-format msgid "could not map dynamic shared memory segment" msgstr "no se pudo mapear el segmento de memoria compartida dinámica" -#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:903 +#: access/transam/parallel.c:1360 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "número mágico no válido en segmento de memoria compartida dinámica" @@ -2106,10 +2099,9 @@ msgid "registered custom resource manager \"%s\" with ID %d" msgstr "se registró el gestor de recursos «%s» con ID %d" #: access/transam/slru.c:361 -#, fuzzy, c-format -#| msgid "\"%s\" must be a multiple of %d" +#, c-format msgid "\"%s\" must be a multiple of %d." -msgstr "«%s» debe ser múltiple de %d" +msgstr "«%s» debe ser múltiple de %d." #: access/transam/slru.c:833 #, c-format @@ -2385,7 +2377,7 @@ msgstr "no se pudo recuperar el archivo de estado de dos fases para la transacci msgid "Two-phase state file has been found in WAL record %X/%X, but this transaction has already been restored from disk." msgstr "El archivo de estado en dos fases ha sido encontrado en el registro de WAL %X/%X, pero esta transacción ya ha sido restaurada desde disco." -#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:214 +#: access/transam/twophase.c:2523 storage/file/fd.c:514 utils/fmgr/dfmgr.c:214 #, c-format msgid "could not access file \"%s\": %m" msgstr "no se pudo acceder al archivo «%s»: %m" @@ -2543,133 +2535,132 @@ msgstr "no se puede hacer rollback a un savepoint durante una operación paralel msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "no se pueden tener más de 2^32-1 subtransacciones en una transacción" -#: access/transam/xlog.c:1545 +#: access/transam/xlog.c:1544 #, c-format msgid "request to flush past end of generated WAL; request %X/%X, current position %X/%X" msgstr "petición para sincronizar (flush) más allá del final del WAL generado; petición %X/%X, posición actual %X/%X" -#: access/transam/xlog.c:1772 +#: access/transam/xlog.c:1771 #, c-format msgid "cannot read past end of generated WAL: requested %X/%X, current position %X/%X" msgstr "no se puede ler más allá del final del WAL generado; petición %X/%X, posición actual %X/%X" -#: access/transam/xlog.c:2219 access/transam/xlog.c:4548 +#: access/transam/xlog.c:2218 access/transam/xlog.c:4547 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "El tamaño de segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB." -#: access/transam/xlog.c:2455 +#: access/transam/xlog.c:2454 #, c-format msgid "could not write to log file \"%s\" at offset %u, length %zu: %m" msgstr "no se pudo escribir archivo de registro «%s» en la posición %u, largo %zu: %m" -#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 +#: access/transam/xlog.c:3740 access/transam/xlogutils.c:820 #: replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "el segmento de WAL solicitado %s ya ha sido eliminado" -#: access/transam/xlog.c:4063 +#: access/transam/xlog.c:4062 #, c-format msgid "could not rename file \"%s\": %m" msgstr "no se pudo renombrar el archivo «%s»: %m" -#: access/transam/xlog.c:4106 access/transam/xlog.c:4117 -#: access/transam/xlog.c:4138 +#: access/transam/xlog.c:4105 access/transam/xlog.c:4116 +#: access/transam/xlog.c:4137 #, c-format msgid "required WAL directory \"%s\" does not exist" msgstr "no existe el directorio WAL «%s»" -#: access/transam/xlog.c:4123 access/transam/xlog.c:4144 +#: access/transam/xlog.c:4122 access/transam/xlog.c:4143 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "creando el directorio WAL faltante «%s»" -#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 -#: commands/dbcommands.c:3301 +#: access/transam/xlog.c:4126 access/transam/xlog.c:4146 +#: commands/dbcommands.c:3302 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "no se pudo crear el directorio faltante «%s»: %m" -#: access/transam/xlog.c:4214 +#: access/transam/xlog.c:4213 #, c-format msgid "could not generate secret authorization token" msgstr "no se pudo generar un token de autorización secreto" -#: access/transam/xlog.c:4392 access/transam/xlog.c:4402 -#: access/transam/xlog.c:4428 access/transam/xlog.c:4438 -#: access/transam/xlog.c:4448 access/transam/xlog.c:4454 -#: access/transam/xlog.c:4464 access/transam/xlog.c:4474 -#: access/transam/xlog.c:4484 access/transam/xlog.c:4494 -#: access/transam/xlog.c:4504 access/transam/xlog.c:4514 -#: access/transam/xlog.c:4526 access/transam/xlog.c:4534 +#: access/transam/xlog.c:4391 access/transam/xlog.c:4401 +#: access/transam/xlog.c:4427 access/transam/xlog.c:4437 +#: access/transam/xlog.c:4447 access/transam/xlog.c:4453 +#: access/transam/xlog.c:4463 access/transam/xlog.c:4473 +#: access/transam/xlog.c:4483 access/transam/xlog.c:4493 +#: access/transam/xlog.c:4503 access/transam/xlog.c:4513 +#: access/transam/xlog.c:4525 access/transam/xlog.c:4533 #: utils/init/miscinit.c:1818 #, c-format msgid "database files are incompatible with server" msgstr "los archivos de base de datos son incompatibles con el servidor" -#: access/transam/xlog.c:4393 +#: access/transam/xlog.c:4392 #, 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 "Los archivos de base de datos fueron inicializados con PG_CONTROL_VERSION %d (0x%08x), pero el servidor fue compilado con PG_CONTROL_VERSION %d (0x%08x)." -#: access/transam/xlog.c:4397 +#: access/transam/xlog.c:4396 #, c-format msgid "This could be a problem of mismatched byte ordering. It looks like you need to initdb." msgstr "Este puede ser un problema de discordancia en el orden de bytes. Parece que necesitará ejecutar initdb." -#: access/transam/xlog.c:4403 +#: access/transam/xlog.c:4402 #, c-format msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d." msgstr "Los archivos de base de datos fueron inicializados con PG_CONTROL_VERSION %d, pero el servidor fue compilado con PG_CONTROL_VERSION %d." -#: access/transam/xlog.c:4406 access/transam/xlog.c:4434 -#: access/transam/xlog.c:4444 access/transam/xlog.c:4450 +#: access/transam/xlog.c:4405 access/transam/xlog.c:4433 +#: access/transam/xlog.c:4443 access/transam/xlog.c:4449 #, c-format msgid "It looks like you need to initdb." msgstr "Parece que necesita ejecutar initdb." -#: access/transam/xlog.c:4418 +#: access/transam/xlog.c:4417 #, c-format msgid "incorrect checksum in control file" msgstr "la suma de verificación es incorrecta en el archivo de control" #. translator: %s is a variable name and %d is its value -#: access/transam/xlog.c:4430 access/transam/xlog.c:4440 -#: access/transam/xlog.c:4456 access/transam/xlog.c:4466 -#: access/transam/xlog.c:4476 access/transam/xlog.c:4486 -#: access/transam/xlog.c:4496 access/transam/xlog.c:4506 -#: access/transam/xlog.c:4516 -#, fuzzy, c-format -#| msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d." +#: access/transam/xlog.c:4429 access/transam/xlog.c:4439 +#: access/transam/xlog.c:4455 access/transam/xlog.c:4465 +#: access/transam/xlog.c:4475 access/transam/xlog.c:4485 +#: access/transam/xlog.c:4495 access/transam/xlog.c:4505 +#: access/transam/xlog.c:4515 +#, c-format msgid "The database cluster was initialized with %s %d, but the server was compiled with %s %d." -msgstr "Los archivos de base de datos fueron inicializados con BLCKSZ %d, pero el servidor fue compilado con BLCKSZ %d." +msgstr "Los archivos de base de datos fueron inicializados con %s %d, pero el servidor fue compilado con %s %d." -#: access/transam/xlog.c:4449 +#: access/transam/xlog.c:4448 #, c-format msgid "The database cluster appears to use a different floating-point number format than the server executable." msgstr "Los archivos de la base de datos parecen usar un formato de número de coma flotante distinto al del ejecutable del servidor." -#: access/transam/xlog.c:4460 access/transam/xlog.c:4470 -#: access/transam/xlog.c:4480 access/transam/xlog.c:4490 -#: access/transam/xlog.c:4500 access/transam/xlog.c:4510 -#: access/transam/xlog.c:4520 access/transam/xlog.c:4529 -#: access/transam/xlog.c:4537 +#: access/transam/xlog.c:4459 access/transam/xlog.c:4469 +#: access/transam/xlog.c:4479 access/transam/xlog.c:4489 +#: access/transam/xlog.c:4499 access/transam/xlog.c:4509 +#: access/transam/xlog.c:4519 access/transam/xlog.c:4528 +#: access/transam/xlog.c:4536 #, c-format msgid "It looks like you need to recompile or initdb." msgstr "Parece que necesita recompilar o ejecutar initdb." -#: access/transam/xlog.c:4527 +#: access/transam/xlog.c:4526 #, c-format msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL." msgstr "Los archivos de base de datos fueron inicializados sin USE_FLOAT8_BYVAL, pero el servidor fue compilado con USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4535 +#: access/transam/xlog.c:4534 #, c-format msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL." msgstr "Los archivos de base de datos fueron inicializados con USE_FLOAT8_BYVAL, pero el servidor fue compilado sin USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4544 +#: access/transam/xlog.c:4543 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -2677,286 +2668,283 @@ msgstr[0] "tamaño de segmento de WAL no válido (%d byte) en archivo de control msgstr[1] "tamaño de segmento de WAL no válido (%d bytes) en archivo de control" #. translator: both %s are GUC names -#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 -#, fuzzy, c-format -#| msgid "%s must be less than %s" +#: access/transam/xlog.c:4557 access/transam/xlog.c:4563 +#, c-format msgid "\"%s\" must be at least twice \"%s\"" -msgstr "%s debe ser menor que %s" +msgstr "«%s» debe ser al menos el doble que «%s»" -#: access/transam/xlog.c:4726 catalog/namespace.c:4699 +#: access/transam/xlog.c:4725 catalog/namespace.c:4699 #: commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 -#: replication/slot.c:2727 tcop/postgres.c:3626 utils/error/elog.c:2257 +#: replication/slot.c:2768 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "La sintaxis de lista no es válida." -#: access/transam/xlog.c:4772 commands/user.c:2547 commands/variable.c:173 +#: access/transam/xlog.c:4771 commands/user.c:2547 commands/variable.c:173 #: tcop/postgres.c:3642 utils/error/elog.c:2283 #, c-format msgid "Unrecognized key word: \"%s\"." msgstr "Palabra clave no reconocida: «%s»." -#: access/transam/xlog.c:5195 +#: access/transam/xlog.c:5194 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "no se pudo escribir el archivo WAL de boostrap: %m" -#: access/transam/xlog.c:5203 +#: access/transam/xlog.c:5202 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "no se pudo sincronizar (fsync) el archivo de WAL de bootstrap: %m" -#: access/transam/xlog.c:5209 +#: access/transam/xlog.c:5208 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "no se pudo cerrar el archivo WAL de bootstrap: %m" -#: access/transam/xlog.c:5434 +#: access/transam/xlog.c:5433 #, c-format msgid "WAL was generated with \"wal_level=minimal\", cannot continue recovering" msgstr "el WAL fue generado con «wal_level=minimal», no se puede continuar con la recuperación" -#: access/transam/xlog.c:5435 +#: access/transam/xlog.c:5434 #, c-format msgid "This happens if you temporarily set \"wal_level=minimal\" on the server." msgstr "Esto sucede si temporalmente define «wal_level=minimal» en el servidor." -#: access/transam/xlog.c:5436 +#: access/transam/xlog.c:5435 #, c-format msgid "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." msgstr "Utilice un respaldo tomado después de establecer «wal_level» a un valor superior a «minimal»." -#: access/transam/xlog.c:5501 +#: access/transam/xlog.c:5500 #, c-format msgid "control file contains invalid checkpoint location" msgstr "el archivo de control contiene una ubicación no válida de checkpoint" -#: access/transam/xlog.c:5512 +#: access/transam/xlog.c:5511 #, c-format msgid "database system was shut down at %s" msgstr "el sistema de bases de datos fue apagado en %s" -#: access/transam/xlog.c:5518 +#: access/transam/xlog.c:5517 #, c-format msgid "database system was shut down in recovery at %s" msgstr "el sistema de bases de datos fue apagado durante la recuperación en %s" -#: access/transam/xlog.c:5524 +#: access/transam/xlog.c:5523 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "el apagado del sistema de datos fue interrumpido; última vez registrada en funcionamiento en %s" -#: access/transam/xlog.c:5530 +#: access/transam/xlog.c:5529 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "el sistema de bases de datos fue interrumpido durante la recuperación en %s" -#: access/transam/xlog.c:5532 +#: access/transam/xlog.c:5531 #, c-format msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery." msgstr "Esto probablemente significa que algunos datos están corruptos y tendrá que usar el respaldo más reciente para la recuperación." -#: access/transam/xlog.c:5538 +#: access/transam/xlog.c:5537 #, c-format msgid "database system was interrupted while in recovery at log time %s" msgstr "el sistema de bases de datos fue interrumpido durante la recuperación en el instante de registro %s" -#: access/transam/xlog.c:5540 +#: access/transam/xlog.c:5539 #, 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 "Si esto ha ocurrido más de una vez, algunos datos podrían estar corruptos y podría ser necesario escoger un punto de recuperación anterior." -#: access/transam/xlog.c:5546 +#: access/transam/xlog.c:5545 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "el sistema de bases de datos fue interrumpido; última vez en funcionamiento en %s" -#: access/transam/xlog.c:5553 +#: access/transam/xlog.c:5552 #, c-format msgid "control file contains invalid database cluster state" msgstr "el archivo de control contiene un estado no válido del clúster" -#: access/transam/xlog.c:5941 +#: access/transam/xlog.c:5940 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL termina antes del fin del respaldo en línea" -#: access/transam/xlog.c:5942 +#: access/transam/xlog.c:5941 #, c-format msgid "All WAL generated while online backup was taken must be available at recovery." msgstr "Todo el WAL generado durante el respaldo en línea debe estar disponible durante la recuperación." -#: access/transam/xlog.c:5946 +#: access/transam/xlog.c:5945 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL termina antes del punto de recuperación consistente" -#: access/transam/xlog.c:5992 +#: access/transam/xlog.c:5991 #, c-format msgid "selected new timeline ID: %u" msgstr "seleccionado nuevo ID de timeline: %u" -#: access/transam/xlog.c:6025 +#: access/transam/xlog.c:6024 #, c-format msgid "archive recovery complete" msgstr "recuperación completa" -#: access/transam/xlog.c:6654 +#: access/transam/xlog.c:6653 #, c-format msgid "shutting down" msgstr "apagando" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6693 +#: access/transam/xlog.c:6692 #, c-format msgid "restartpoint starting:%s%s%s%s%s%s%s%s" msgstr "empezando restartpoint:%s%s%s%s%s%s%s%s" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6705 +#: access/transam/xlog.c:6704 #, c-format msgid "checkpoint starting:%s%s%s%s%s%s%s%s" msgstr "empezando checkpoint:%s%s%s%s%s%s%s%s" -#: access/transam/xlog.c:6770 -#, fuzzy, c-format -#| msgid "restartpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" +#: access/transam/xlog.c:6769 +#, c-format msgid "restartpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" -msgstr "restartpoint completo: escritos %d búfers (%.1f%%); %d archivos WAL añadidos, %d eliminados, %d reciclados; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; archivos sincronizados=%d, más largo=%ld.%03d s, promedio=%ld.%03d s; distancia=%d kB, estimación=%d kB; lsn=%X/%X, lsn de redo=%X/%X" +msgstr "restartpoint completo: escritos %d búfers (%.1f%%); escritos %d búfers SLRU; %d archivos WAL añadidos, %d eliminados, %d reciclados; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; archivos sincronizados=%d, más largo=%ld.%03d s, promedio=%ld.%03d s; distancia=%d kB, estimación=%d kB; lsn=%X/%X, lsn de redo=%X/%X" -#: access/transam/xlog.c:6794 -#, fuzzy, c-format -#| msgid "checkpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" +#: access/transam/xlog.c:6793 +#, c-format msgid "checkpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" -msgstr "checkpoint completo: escritos %d búfers (%.1f%%); %d archivos WAL añadidos, %d eliminados, %d reciclados; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; archivos sincronizados=%d, más largo=%ld.%03d s, promedio=%ld.%03d s; distancia=%d kB, estimación=%d kB; lsn=%X/%X, lsn de redo=%X/%X" +msgstr "checkpoint completo: escritos %d búfers (%.1f%%); escritos %d búfers SLRU; %d archivos WAL añadidos, %d eliminados, %d reciclados; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; archivos sincronizados=%d, más largo=%ld.%03d s, promedio=%ld.%03d s; distancia=%d kB, estimación=%d kB; lsn=%X/%X, lsn de redo=%X/%X" -#: access/transam/xlog.c:7280 +#: access/transam/xlog.c:7279 #, c-format msgid "concurrent write-ahead log activity while database system is shutting down" msgstr "hay actividad de WAL mientras el sistema se está apagando" -#: access/transam/xlog.c:7869 +#: access/transam/xlog.c:7871 #, c-format msgid "recovery restart point at %X/%X" msgstr "restartpoint de recuperación en %X/%X" -#: access/transam/xlog.c:7871 +#: access/transam/xlog.c:7873 #, c-format msgid "Last completed transaction was at log time %s." msgstr "Última transacción completada al tiempo de registro %s." -#: access/transam/xlog.c:8135 +#: access/transam/xlog.c:8137 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "punto de recuperación «%s» creado en %X/%X" -#: access/transam/xlog.c:8342 +#: access/transam/xlog.c:8344 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "el respaldo en línea fue cancelado, la recuperación no puede continuar" -#: access/transam/xlog.c:8400 +#: access/transam/xlog.c:8402 #, c-format msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "ID de timeline %u inesperado (debería ser %u) en el registro de checkpoint de detención" -#: access/transam/xlog.c:8466 +#: access/transam/xlog.c:8468 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "ID de timeline %u inesperado (debería ser %u) en el registro de checkpoint «online»" -#: access/transam/xlog.c:8503 +#: access/transam/xlog.c:8505 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "ID de timeline %u inesperado (debería ser %u) en el registro de fin-de-recuperación" -#: access/transam/xlog.c:8773 +#: access/transam/xlog.c:8775 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "no se pudo sincronizar (fsync write-through) el archivo «%s»: %m" -#: access/transam/xlog.c:8778 +#: access/transam/xlog.c:8780 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "no se pudo sincronizar (fdatasync) archivo «%s»: %m" -#: access/transam/xlog.c:8855 access/transam/xlog.c:9191 +#: access/transam/xlog.c:8857 access/transam/xlog.c:9193 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "el nivel de WAL no es suficiente para hacer un respaldo en línea" -#: access/transam/xlog.c:8856 access/transam/xlog.c:9192 +#: access/transam/xlog.c:8858 access/transam/xlog.c:9194 #: access/transam/xlogfuncs.c:249 #, c-format msgid "\"wal_level\" must be set to \"replica\" or \"logical\" at server start." msgstr "«wal_level» debe ser definido a «replica» o «logical» al inicio del servidor." -#: access/transam/xlog.c:8861 +#: access/transam/xlog.c:8863 #, c-format msgid "backup label too long (max %d bytes)" msgstr "la etiqueta de respaldo es demasiado larga (máximo %d bytes)" -#: access/transam/xlog.c:8982 +#: access/transam/xlog.c:8984 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed since last restartpoint" msgstr "el WAL generado con «full_page_writes=off» fue restaurado desde el último restartpoint" -#: access/transam/xlog.c:8984 access/transam/xlog.c:9280 +#: access/transam/xlog.c:8986 access/transam/xlog.c:9282 #, 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 primary, and then try an online backup again." msgstr "Esto significa que el respaldo que estaba siendo tomado en el standby está corrupto y no debería usarse. Active «full_page_writes» y ejecute CHECKPOINT en el primario, luego trate de ejecutar un respaldo en línea nuevamente." -#: access/transam/xlog.c:9064 backup/basebackup.c:1419 utils/adt/misc.c:354 +#: access/transam/xlog.c:9066 backup/basebackup.c:1419 utils/adt/misc.c:354 #, c-format msgid "could not read symbolic link \"%s\": %m" msgstr "no se pudo leer el enlace simbólico «%s»: %m" -#: access/transam/xlog.c:9071 backup/basebackup.c:1424 utils/adt/misc.c:359 +#: access/transam/xlog.c:9073 backup/basebackup.c:1424 utils/adt/misc.c:359 #, c-format msgid "symbolic link \"%s\" target is too long" msgstr "la ruta «%s» del enlace simbólico es demasiado larga" -#: access/transam/xlog.c:9230 backup/basebackup.c:1283 +#: access/transam/xlog.c:9232 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "el standby fue promovido durante el respaldo en línea" -#: access/transam/xlog.c:9231 backup/basebackup.c:1284 +#: access/transam/xlog.c:9233 backup/basebackup.c:1284 #, c-format msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup." msgstr "Esto significa que el respaldo que se estaba tomando está corrupto y no debería ser usado. Trate de ejecutar un nuevo respaldo en línea." -#: access/transam/xlog.c:9278 +#: access/transam/xlog.c:9280 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed during online backup" msgstr "el WAL generado con «full_page_writes=off» fue restaurado durante el respaldo en línea" -#: access/transam/xlog.c:9394 +#: access/transam/xlog.c:9396 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "respaldo base completo, esperando que se archiven los segmentos WAL requeridos" -#: access/transam/xlog.c:9408 +#: access/transam/xlog.c:9410 #, c-format msgid "still waiting for all required WAL segments to be archived (%d seconds elapsed)" msgstr "todavía en espera de que todos los segmentos WAL requeridos sean archivados (han pasado %d segundos)" -#: access/transam/xlog.c:9410 +#: access/transam/xlog.c:9412 #, c-format msgid "Check that your \"archive_command\" is executing properly. You can safely cancel this backup, but the database backup will not be usable without all the WAL segments." msgstr "Verifique que su «archive_command» se esté ejecutando con normalidad. Puede cancelar este respaldo con confianza, pero el respaldo de la base de datos no será utilizable a menos que disponga de todos los segmentos de WAL." -#: access/transam/xlog.c:9417 +#: access/transam/xlog.c:9419 #, c-format msgid "all required WAL segments have been archived" msgstr "todos los segmentos de WAL requeridos han sido archivados" -#: access/transam/xlog.c:9421 +#: access/transam/xlog.c:9423 #, 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 "el archivado de WAL no está activo; debe asegurarse que todos los segmentos WAL requeridos se copian por algún otro mecanismo para completar el respaldo" -#: access/transam/xlog.c:9460 +#: access/transam/xlog.c:9462 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "abortando el backup porque el proceso servidor terminó antes de que pg_backup_stop fuera invocada" @@ -3099,10 +3087,9 @@ msgstr[0] "el servidor no se promovió en %d segundo" msgstr[1] "el servidor no se promovió en %d segundos" #: access/transam/xlogprefetcher.c:1086 -#, fuzzy, c-format -#| msgid "\"recovery_prefetch\" is not supported on platforms that lack posix_fadvise()." +#, c-format msgid "\"recovery_prefetch\" is not supported on platforms that lack support for issuing read-ahead advice." -msgstr "«recovery_prefetch» no está soportado en plataformas que no tienen posix_fadvise()." +msgstr "«recovery_prefetch» no está soportado en plataformas que no tienen soporte para enviar indicaciones de lectura adelantada." #: access/transam/xlogreader.c:620 #, c-format @@ -3316,411 +3303,415 @@ msgstr "reiniciando recuperación del backup con LSN de redo «%X/%X»" msgid "could not locate a valid checkpoint record at %X/%X" msgstr "no se pudo localizar un registro de válido en %X/%X" -#: access/transam/xlogrecovery.c:813 +#: access/transam/xlogrecovery.c:814 +#, fuzzy, c-format +#| msgid "could not find redo location %X/%X referenced by checkpoint record at %X/%X" +msgid "could not find redo location %X/%08X referenced by checkpoint record at %X/%08X" +msgstr "no se pudo encontrar la ubicación de redo %X/%X referida por el registro de checkpoint en %X/%X" + +#: access/transam/xlogrecovery.c:823 #, c-format msgid "entering standby mode" msgstr "entrando al modo standby" -#: access/transam/xlogrecovery.c:816 +#: access/transam/xlogrecovery.c:826 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "comenzando el proceso de recuperación hasta el XID %u" -#: access/transam/xlogrecovery.c:820 +#: access/transam/xlogrecovery.c:830 #, c-format msgid "starting point-in-time recovery to %s" msgstr "comenzando el proceso de recuperación hasta %s" -#: access/transam/xlogrecovery.c:824 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "comenzando el proceso de recuperación hasta «%s»" -#: access/transam/xlogrecovery.c:828 +#: access/transam/xlogrecovery.c:838 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "comenzando el proceso de recuperación punto-en-el-tiempo a la ubicación (LSN) de WAL «%X/%X»" -#: access/transam/xlogrecovery.c:832 +#: access/transam/xlogrecovery.c:842 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "comenzando recuperación a un punto en el tiempo hasta alcanzar un estado consistente" -#: access/transam/xlogrecovery.c:835 +#: access/transam/xlogrecovery.c:845 #, c-format msgid "starting archive recovery" msgstr "comenzando proceso de recuperación" -#: access/transam/xlogrecovery.c:856 +#: access/transam/xlogrecovery.c:866 #, c-format msgid "requested timeline %u is not a child of this server's history" msgstr "el timeline solicitado %u no es un hijo de la historia de este servidor" #. translator: %s is a backup_label file or a pg_control file -#: access/transam/xlogrecovery.c:859 -#, fuzzy, 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." +#: access/transam/xlogrecovery.c:869 +#, c-format msgid "Latest checkpoint in file \"%s\" 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 "El checkpoint más reciente está en %X/%X en el timeline %u, pero en la historia del timeline solicitado, el servidor se desvió desde ese timeline en %X/%X." +msgstr "El checkpoint más reciente en el archivo «%s» está en %X/%X en el timeline %u, pero en la historia del timeline solicitado, el servidor se desvió desde ese timeline en %X/%X." -#: access/transam/xlogrecovery.c:874 +#: access/transam/xlogrecovery.c:884 #, c-format msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u" msgstr "el timeline solicitado %u no contiene el punto mínimo de recuperación %X/%X en el timeline %u" -#: access/transam/xlogrecovery.c:902 +#: access/transam/xlogrecovery.c:912 #, c-format msgid "invalid next transaction ID" msgstr "el siguiente ID de transacción no es válido" -#: access/transam/xlogrecovery.c:907 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo in checkpoint record" msgstr "redo no es válido en el registro de checkpoint" -#: access/transam/xlogrecovery.c:918 +#: access/transam/xlogrecovery.c:928 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "registro redo no es válido en el checkpoint de apagado" -#: access/transam/xlogrecovery.c:947 +#: access/transam/xlogrecovery.c:957 #, c-format msgid "database system was not properly shut down; automatic recovery in progress" msgstr "el sistema de bases de datos no fue apagado apropiadamente; se está efectuando la recuperación automática" -#: access/transam/xlogrecovery.c:951 +#: access/transam/xlogrecovery.c:961 #, c-format msgid "crash recovery starts in timeline %u and has target timeline %u" msgstr "la recuperación comienza en el timeline %u y tiene un timeline de destino %u" -#: access/transam/xlogrecovery.c:994 +#: access/transam/xlogrecovery.c:1004 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_label contiene datos inconsistentes con el archivo de control" -#: access/transam/xlogrecovery.c:995 +#: access/transam/xlogrecovery.c:1005 #, c-format msgid "This means that the backup is corrupted and you will have to use another backup for recovery." msgstr "Esto significa que el respaldo está corrupto y deberá usar otro respaldo para la recuperación." -#: access/transam/xlogrecovery.c:1049 +#: access/transam/xlogrecovery.c:1059 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "el uso del archivo de configuración de recuperación «%s» no está soportado" -#: access/transam/xlogrecovery.c:1114 +#: access/transam/xlogrecovery.c:1124 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "el modo standby no está soportado en el modo mono-usuario" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1141 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "no se especifica «primary_conninfo» ni «restore_command»" -#: access/transam/xlogrecovery.c:1132 +#: access/transam/xlogrecovery.c:1142 #, c-format msgid "The database server will regularly poll the pg_wal subdirectory to check for files placed there." msgstr "El servidor de bases de datos monitoreará el subdirectorio pg_wal con regularidad en búsqueda de archivos almacenados ahí." -#: access/transam/xlogrecovery.c:1140 +#: access/transam/xlogrecovery.c:1150 #, c-format msgid "must specify \"restore_command\" when standby mode is not enabled" msgstr "debe especificarse «restore_command» cuando el modo standby no está activo" -#: access/transam/xlogrecovery.c:1178 +#: access/transam/xlogrecovery.c:1188 #, c-format msgid "recovery target timeline %u does not exist" msgstr "no existe el timeline %u especificado como destino de recuperación" -#: access/transam/xlogrecovery.c:1261 access/transam/xlogrecovery.c:1268 -#: access/transam/xlogrecovery.c:1327 access/transam/xlogrecovery.c:1415 -#: access/transam/xlogrecovery.c:1424 access/transam/xlogrecovery.c:1444 +#: access/transam/xlogrecovery.c:1271 access/transam/xlogrecovery.c:1278 +#: access/transam/xlogrecovery.c:1337 access/transam/xlogrecovery.c:1425 +#: access/transam/xlogrecovery.c:1434 access/transam/xlogrecovery.c:1454 #, c-format msgid "invalid data in file \"%s\"" msgstr "datos no válidos en archivo «%s»" -#: access/transam/xlogrecovery.c:1328 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "El ID de timeline interpretado es %u, pero se esperaba %u." -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1349 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "esto es un backup incremental, no un directorio de datos" -#: access/transam/xlogrecovery.c:1340 +#: access/transam/xlogrecovery.c:1350 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "Use pg_combinebackup para reconstruir un directorio de datos válido." -#: access/transam/xlogrecovery.c:1726 +#: access/transam/xlogrecovery.c:1736 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "se encontró registro de tipo inesperada en el punto de redo %X/%X" -#: access/transam/xlogrecovery.c:1749 +#: access/transam/xlogrecovery.c:1759 #, c-format msgid "redo starts at %X/%X" msgstr "redo comienza en %X/%X" -#: access/transam/xlogrecovery.c:1762 +#: access/transam/xlogrecovery.c:1772 #, c-format msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X" msgstr "redo en progreso, tiempo transcurrido: %ld.%02d s, LSN actual: %X/%X" -#: access/transam/xlogrecovery.c:1852 +#: access/transam/xlogrecovery.c:1862 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "el punto de detención de recuperación pedido es antes del punto de recuperación consistente" -#: access/transam/xlogrecovery.c:1884 +#: access/transam/xlogrecovery.c:1894 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "redo listo en %X/%X utilización del sistema: %s" -#: access/transam/xlogrecovery.c:1890 +#: access/transam/xlogrecovery.c:1900 #, c-format msgid "last completed transaction was at log time %s" msgstr "última transacción completada al tiempo de registro %s" -#: access/transam/xlogrecovery.c:1899 +#: access/transam/xlogrecovery.c:1909 #, c-format msgid "redo is not required" msgstr "no se requiere redo" -#: access/transam/xlogrecovery.c:1911 +#: access/transam/xlogrecovery.c:1921 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "la recuperación terminó antes de alcanzar el punto configurado como destino de recuperación" -#: access/transam/xlogrecovery.c:2105 +#: access/transam/xlogrecovery.c:2115 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "se omitió con éxito contrecord no encontrado en %X/%X, sobrescrito en %s" -#: access/transam/xlogrecovery.c:2172 +#: access/transam/xlogrecovery.c:2182 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "entrada de directorio inesperada «%s» fue encontrada en %s" -#: access/transam/xlogrecovery.c:2174 -#, fuzzy, c-format -#| msgid "All directory entries in pg_tblspc/ should be symbolic links." +#: access/transam/xlogrecovery.c:2184 +#, c-format msgid "All directory entries in %s/ should be symbolic links." -msgstr "Todas las entradas de directorio en pg_tblspc deberían ser enlaces simbólicos" +msgstr "Todas las entradas de directorio en %s/ deberían ser enlaces simbólicos." -#: access/transam/xlogrecovery.c:2176 +#: access/transam/xlogrecovery.c:2186 #, c-format msgid "Remove those directories, or set \"allow_in_place_tablespaces\" to ON transiently to let recovery complete." msgstr "Elimine esos directorios, o defina «allow_in_place_tablespaces» a ON transitoriamente para permitir que la recuperación pueda completarse." -#: access/transam/xlogrecovery.c:2228 +#: access/transam/xlogrecovery.c:2238 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "se completó la recuperación de backup con LSN de redo %X/%X y LSN de término %X/%X" -#: access/transam/xlogrecovery.c:2259 +#: access/transam/xlogrecovery.c:2269 #, c-format msgid "consistent recovery state reached at %X/%X" msgstr "el estado de recuperación consistente fue alcanzado en %X/%X" #. translator: %s is a WAL record description -#: access/transam/xlogrecovery.c:2297 +#: access/transam/xlogrecovery.c:2307 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "redo WAL en %X/%X para %s" -#: access/transam/xlogrecovery.c:2395 +#: access/transam/xlogrecovery.c:2405 #, c-format msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record" msgstr "ID de timeline previo %u inesperado (timeline actual %u) en el registro de checkpoint" -#: access/transam/xlogrecovery.c:2404 +#: access/transam/xlogrecovery.c:2414 #, c-format msgid "unexpected timeline ID %u (after %u) in checkpoint record" msgstr "ID de timeline %u inesperado (después de %u) en el registro de checkpoint" -#: access/transam/xlogrecovery.c:2420 +#: access/transam/xlogrecovery.c:2430 #, c-format msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u" msgstr "timeline ID %u inesperado en registro de checkpoint, antes de alcanzar el punto mínimo de recuperación %X/%X en el timeline %u" -#: access/transam/xlogrecovery.c:2604 access/transam/xlogrecovery.c:2880 +#: access/transam/xlogrecovery.c:2614 access/transam/xlogrecovery.c:2890 #, c-format msgid "recovery stopping after reaching consistency" msgstr "deteniendo recuperación al alcanzar un estado consistente" -#: access/transam/xlogrecovery.c:2625 +#: access/transam/xlogrecovery.c:2635 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "deteniendo recuperación antes de la ubicación (LSN) de WAL «%X/%X»" -#: access/transam/xlogrecovery.c:2715 +#: access/transam/xlogrecovery.c:2725 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "deteniendo recuperación antes de comprometer la transacción %u, hora %s" -#: access/transam/xlogrecovery.c:2722 +#: access/transam/xlogrecovery.c:2732 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "deteniendo recuperación antes de abortar la transacción %u, hora %s" -#: access/transam/xlogrecovery.c:2775 +#: access/transam/xlogrecovery.c:2785 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "deteniendo recuperación en el punto de recuperación «%s», hora %s" -#: access/transam/xlogrecovery.c:2793 +#: access/transam/xlogrecovery.c:2803 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "deteniendo recuperación después de la ubicación (LSN) de WAL «%X/%X»" -#: access/transam/xlogrecovery.c:2860 +#: access/transam/xlogrecovery.c:2870 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "deteniendo recuperación de comprometer la transacción %u, hora %s" -#: access/transam/xlogrecovery.c:2868 +#: access/transam/xlogrecovery.c:2878 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "deteniendo recuperación después de abortar la transacción %u, hora %s" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2959 #, c-format msgid "pausing at the end of recovery" msgstr "pausando al final de la recuperación" -#: access/transam/xlogrecovery.c:2950 +#: access/transam/xlogrecovery.c:2960 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Ejecute pg_wal_replay_resume() para promover." -#: access/transam/xlogrecovery.c:2953 access/transam/xlogrecovery.c:4710 +#: access/transam/xlogrecovery.c:2963 access/transam/xlogrecovery.c:4720 #, c-format msgid "recovery has paused" msgstr "la recuperación está en pausa" -#: access/transam/xlogrecovery.c:2954 +#: access/transam/xlogrecovery.c:2964 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Ejecute pg_wal_replay_resume() para continuar." -#: access/transam/xlogrecovery.c:3217 +#: access/transam/xlogrecovery.c:3227 #, c-format msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u" msgstr "ID de timeline %u inesperado en segmento WAL %s, LSN %X/%X, posición %u" -#: access/transam/xlogrecovery.c:3433 +#: access/transam/xlogrecovery.c:3443 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m" msgstr "no se pudo leer desde el segmento de WAL %s, LSN %X/%X, posición %u: %m" -#: access/transam/xlogrecovery.c:3440 +#: access/transam/xlogrecovery.c:3450 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" msgstr "no se pudo leer del segmento de WAL %s, LSN %X/%X, posición %u: leídos %d de %zu" -#: access/transam/xlogrecovery.c:4094 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint location" msgstr "ubicación de checkpoint no válida" -#: access/transam/xlogrecovery.c:4104 +#: access/transam/xlogrecovery.c:4114 #, c-format msgid "invalid checkpoint record" msgstr "el registro del checkpoint no es válido" -#: access/transam/xlogrecovery.c:4110 +#: access/transam/xlogrecovery.c:4120 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "el ID de gestor de recursos en el registro del checkpoint no es válido" -#: access/transam/xlogrecovery.c:4118 +#: access/transam/xlogrecovery.c:4128 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "xl_info en el registro del checkpoint no es válido" -#: access/transam/xlogrecovery.c:4124 +#: access/transam/xlogrecovery.c:4134 #, c-format msgid "invalid length of checkpoint record" msgstr "la longitud del registro de checkpoint no es válida" -#: access/transam/xlogrecovery.c:4178 +#: access/transam/xlogrecovery.c:4188 #, c-format msgid "new timeline %u is not a child of database system timeline %u" msgstr "el nuevo timeline %u especificado no es hijo del timeline de sistema %u" -#: access/transam/xlogrecovery.c:4192 +#: access/transam/xlogrecovery.c:4202 #, c-format msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X" msgstr "el nuevo timeline %u bifurcó del timeline del sistema actual %u antes del punto re recuperación actual %X/%X" -#: access/transam/xlogrecovery.c:4211 +#: access/transam/xlogrecovery.c:4221 #, c-format msgid "new target timeline is %u" msgstr "el nuevo timeline destino es %u" -#: access/transam/xlogrecovery.c:4412 +#: access/transam/xlogrecovery.c:4422 #, c-format msgid "WAL receiver process shutdown requested" msgstr "se recibió una petición de apagado para el proceso receptor de wal" -#: access/transam/xlogrecovery.c:4472 +#: access/transam/xlogrecovery.c:4482 #, c-format msgid "received promote request" msgstr "se recibió petición de promoción" -#: access/transam/xlogrecovery.c:4701 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "hot standby is not possible because of insufficient parameter settings" msgstr "hot standby no es posible porque la configuración de parámetros no es suficiente" -#: access/transam/xlogrecovery.c:4702 access/transam/xlogrecovery.c:4729 -#: access/transam/xlogrecovery.c:4759 +#: access/transam/xlogrecovery.c:4712 access/transam/xlogrecovery.c:4739 +#: access/transam/xlogrecovery.c:4769 #, c-format msgid "%s = %d is a lower setting than on the primary server, where its value was %d." msgstr "%s = %d es una configuración menor que en el servidor primario, donde su valor era %d." -#: access/transam/xlogrecovery.c:4711 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "Si se continúa con la recuperación, el servidor se apagará." -#: access/transam/xlogrecovery.c:4712 +#: access/transam/xlogrecovery.c:4722 #, c-format msgid "You can then restart the server after making the necessary configuration changes." msgstr "Luego puede reiniciar el servidor después de hacer los cambios necesarios en la configuración." -#: access/transam/xlogrecovery.c:4723 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "la promoción no es posible porque la configuración de parámetros no es suficiente" -#: access/transam/xlogrecovery.c:4733 +#: access/transam/xlogrecovery.c:4743 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "Reinicie el servidor luego de hacer los cambios necesarios en la configuración." -#: access/transam/xlogrecovery.c:4757 +#: access/transam/xlogrecovery.c:4767 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "se abortó la recuperación porque la configuración de parámetros no es suficiente" -#: access/transam/xlogrecovery.c:4763 +#: access/transam/xlogrecovery.c:4773 #, c-format msgid "You can restart the server after making the necessary configuration changes." msgstr "Puede reiniciar el servidor luego de hacer los cambios necesarios en la configuración." -#: access/transam/xlogrecovery.c:4783 access/transam/xlogrecovery.c:4785 +#: access/transam/xlogrecovery.c:4793 access/transam/xlogrecovery.c:4795 #: catalog/dependency.c:1153 catalog/dependency.c:1160 #: catalog/dependency.c:1171 commands/tablecmds.c:1519 #: commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:225 commands/view.c:441 executor/execExprInterp.c:5211 +#: commands/vacuum.c:226 commands/view.c:441 executor/execExprInterp.c:5211 #: executor/execExprInterp.c:5219 libpq/auth.c:320 -#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1670 -#: replication/slot.c:2742 replication/slot.c:2744 replication/syncrep.c:1079 +#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1705 +#: replication/slot.c:2783 replication/slot.c:2785 replication/syncrep.c:1079 #: storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 #: storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 #: utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 @@ -3729,28 +3720,27 @@ msgstr "Puede reiniciar el servidor luego de hacer los cambios necesarios en la msgid "%s" msgstr "%s" -#: access/transam/xlogrecovery.c:4815 +#: access/transam/xlogrecovery.c:4825 #, c-format msgid "multiple recovery targets specified" msgstr "múltiples valores de destino de recuperación especificados" -#: access/transam/xlogrecovery.c:4816 +#: access/transam/xlogrecovery.c:4826 #, c-format msgid "At most one of \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", \"recovery_target_xid\" may be set." msgstr "A lo más uno de «recovery_target», «recovery_target_lsn», «recovery_target_name», «recovery_target_time», «recovery_target_xid» puede estar definido." -#: access/transam/xlogrecovery.c:4827 +#: access/transam/xlogrecovery.c:4837 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "El único valor permitido es «immediate»." -#: access/transam/xlogrecovery.c:4981 -#, fuzzy, c-format -#| msgid "timestamp out of range: \"%s\"" +#: access/transam/xlogrecovery.c:4991 +#, c-format msgid "Timestamp out of range: \"%s\"." -msgstr "timestamp fuera de rango: «%s»" +msgstr "Timestamp fuera de rango: «%s»." -#: access/transam/xlogrecovery.c:5026 +#: access/transam/xlogrecovery.c:5036 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "«recovery_target_timeline» no es un número válido." @@ -4019,16 +4009,15 @@ msgstr "se requieren sumarizaciones de WAL en el timeline %u desde %X/%X hasta % msgid "The first unsummarized LSN in this range is %X/%X." msgstr "El primer LSN sin sumarización en este rango es %X/%X." -#: backup/basebackup_incremental.c:934 +#: backup/basebackup_incremental.c:948 #, c-format msgid "backup manifest version 1 does not support incremental backup" msgstr "el manifiesto de backup versión 1 no soporta backups incrementales" -#: backup/basebackup_incremental.c:952 -#, fuzzy, c-format -#| msgid "system identifier in backup manifest is %llu, but database system identifier is %llu" +#: backup/basebackup_incremental.c:966 +#, c-format msgid "system identifier in backup manifest is %, but database system identifier is %" -msgstr "el identificador de sistema en el manifiesto de backup es %llu, pero el identificador en el sistema es %llu" +msgstr "el identificador de sistema en el manifiesto de backup es %, pero el identificador en el sistema es %" #: backup/basebackup_lz4.c:67 #, c-format @@ -4052,7 +4041,7 @@ msgstr "no se permiten rutas relativas para un respaldo almacenado en el servido #: backup/basebackup_server.c:102 commands/dbcommands.c:478 #: commands/tablespace.c:157 commands/tablespace.c:173 -#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2246 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2287 #: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" @@ -4071,7 +4060,7 @@ msgstr "no se pudo acceder al directorio «%s»: %m" #: backup/basebackup_server.c:175 backup/basebackup_server.c:182 #: backup/basebackup_server.c:268 backup/basebackup_server.c:275 #: backup/walsummary.c:312 storage/smgr/md.c:519 storage/smgr/md.c:526 -#: storage/smgr/md.c:608 storage/smgr/md.c:630 storage/smgr/md.c:1123 +#: storage/smgr/md.c:619 storage/smgr/md.c:641 storage/smgr/md.c:1134 #, c-format msgid "Check free disk space." msgstr "Verifique el espacio libre en disco." @@ -4108,16 +4097,14 @@ msgid "could not enable long-distance mode: %s" msgstr "no se pudo habilitar el modo “long-distance”: %s" #: backup/walsummaryfuncs.c:95 -#, fuzzy, c-format -#| msgid "invalid timeline %lld" +#, c-format msgid "invalid timeline %" -msgstr "timeline %lld no válido" +msgstr "timeline % no válido" #: bootstrap/bootstrap.c:239 postmaster/postmaster.c:626 tcop/postgres.c:3858 -#, fuzzy, c-format -#| msgid "%s must be positive" +#, c-format msgid "--%s must be first argument" -msgstr "%s debe ser positivo" +msgstr "--%s debe ser el primer argumento" #: bootstrap/bootstrap.c:253 postmaster/postmaster.c:640 tcop/postgres.c:3872 #, c-format @@ -4280,19 +4267,13 @@ msgstr "los privilegios por omisión no pueden definirse para columnas" msgid "permission denied to change default privileges" msgstr "se ha denegado el permiso para cambiar los privilegios por omisión" -#: catalog/aclchk.c:1211 +#: catalog/aclchk.c:1211 catalog/aclchk.c:1222 #, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgstr "No puede utilizar la cláusula IN SCHEMA cuando se utiliza GRANT / REVOKE ON SCHEMAS" - -#: catalog/aclchk.c:1221 -#, fuzzy, c-format -#| msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" -msgstr "No puede utilizar la cláusula IN SCHEMA cuando se utiliza GRANT / REVOKE ON SCHEMAS" +msgid "cannot use IN SCHEMA clause when using %s" +msgstr "No puede utilizar la cláusula IN SCHEMA cuando se utiliza %s" -#: catalog/aclchk.c:1575 catalog/catalog.c:684 catalog/heap.c:2621 -#: catalog/heap.c:2940 catalog/objectaddress.c:1528 +#: catalog/aclchk.c:1577 catalog/catalog.c:684 catalog/heap.c:2621 +#: catalog/heap.c:2941 catalog/objectaddress.c:1528 #: catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1039 #: commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 #: commands/tablecmds.c:8130 commands/tablecmds.c:8259 @@ -4312,17 +4293,17 @@ msgstr "No puede utilizar la cláusula IN SCHEMA cuando se utiliza GRANT / REVOK msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "no existe la columna «%s» en la relación «%s»" -#: catalog/aclchk.c:1820 +#: catalog/aclchk.c:1822 #, c-format msgid "\"%s\" is an index" msgstr "«%s» es un índice" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16146 commands/tablecmds.c:19675 +#: catalog/aclchk.c:1829 commands/tablecmds.c:16146 commands/tablecmds.c:19675 #, c-format msgid "\"%s\" is a composite type" msgstr "«%s» es un tipo compuesto" -#: catalog/aclchk.c:1835 catalog/objectaddress.c:1368 commands/tablecmds.c:266 +#: catalog/aclchk.c:1837 catalog/objectaddress.c:1368 commands/tablecmds.c:266 #: commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 #: utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 #: utils/adt/acl.c:2283 @@ -4330,426 +4311,426 @@ msgstr "«%s» es un tipo compuesto" msgid "\"%s\" is not a sequence" msgstr "«%s» no es una secuencia" -#: catalog/aclchk.c:1873 +#: catalog/aclchk.c:1875 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "la secuencia «%s» sólo soporta los privilegios USAGE, SELECT, y UPDATE" -#: catalog/aclchk.c:1890 +#: catalog/aclchk.c:1892 #, c-format msgid "invalid privilege type %s for table" msgstr "el tipo de privilegio %s no es válido para una tabla" -#: catalog/aclchk.c:2055 +#: catalog/aclchk.c:2057 #, c-format msgid "invalid privilege type %s for column" msgstr "el tipo de privilegio %s no es válido para una columna" -#: catalog/aclchk.c:2068 +#: catalog/aclchk.c:2070 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "la secuencia «%s» sólo soporta el privilegio SELECT" -#: catalog/aclchk.c:2259 +#: catalog/aclchk.c:2261 #, c-format msgid "language \"%s\" is not trusted" msgstr "el lenguaje «%s» no es confiable (trusted)" -#: catalog/aclchk.c:2261 +#: catalog/aclchk.c:2263 #, c-format msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages." msgstr "GRANT y REVOKE no están permitidos en lenguajes no confiables, porque sólo los superusuarios pueden usar lenguajes no confiables." -#: catalog/aclchk.c:2412 +#: catalog/aclchk.c:2414 #, c-format msgid "cannot set privileges of array types" msgstr "no se puede definir privilegios para tipos de array" -#: catalog/aclchk.c:2413 +#: catalog/aclchk.c:2415 #, c-format msgid "Set the privileges of the element type instead." msgstr "Defina los privilegios del tipo elemento en su lugar." -#: catalog/aclchk.c:2417 +#: catalog/aclchk.c:2419 #, c-format msgid "cannot set privileges of multirange types" msgstr "no se puede definir privilegios para tipos multirango" -#: catalog/aclchk.c:2418 +#: catalog/aclchk.c:2420 #, c-format msgid "Set the privileges of the range type instead." msgstr "Defina los privilegios del tipo de rango en su lugar." -#: catalog/aclchk.c:2601 +#: catalog/aclchk.c:2603 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "tipo de privilegio «%s» no reconocido" -#: catalog/aclchk.c:2668 +#: catalog/aclchk.c:2670 #, c-format msgid "permission denied for aggregate %s" msgstr "permiso denegado a la función de agregación %s" -#: catalog/aclchk.c:2671 +#: catalog/aclchk.c:2673 #, c-format msgid "permission denied for collation %s" msgstr "permiso denegado al ordenamiento (collation) %s" -#: catalog/aclchk.c:2674 +#: catalog/aclchk.c:2676 #, c-format msgid "permission denied for column %s" msgstr "permiso denegado a la columna %s" -#: catalog/aclchk.c:2677 +#: catalog/aclchk.c:2679 #, c-format msgid "permission denied for conversion %s" msgstr "permiso denegado a la conversión %s" -#: catalog/aclchk.c:2680 +#: catalog/aclchk.c:2682 #, c-format msgid "permission denied for database %s" msgstr "permiso denegado a la base de datos %s" -#: catalog/aclchk.c:2683 +#: catalog/aclchk.c:2685 #, c-format msgid "permission denied for domain %s" msgstr "permiso denegado al dominio %s" -#: catalog/aclchk.c:2686 +#: catalog/aclchk.c:2688 #, c-format msgid "permission denied for event trigger %s" msgstr "permiso denegado al “trigger” por eventos %s" -#: catalog/aclchk.c:2689 +#: catalog/aclchk.c:2691 #, c-format msgid "permission denied for extension %s" msgstr "permiso denegado a la extensión %s" -#: catalog/aclchk.c:2692 +#: catalog/aclchk.c:2694 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "permiso denegado al conector de datos externos %s" -#: catalog/aclchk.c:2695 +#: catalog/aclchk.c:2697 #, c-format msgid "permission denied for foreign server %s" msgstr "permiso denegado al servidor foráneo %s" -#: catalog/aclchk.c:2698 +#: catalog/aclchk.c:2700 #, c-format msgid "permission denied for foreign table %s" msgstr "permiso denegado a la tabla foránea %s" -#: catalog/aclchk.c:2701 +#: catalog/aclchk.c:2703 #, c-format msgid "permission denied for function %s" msgstr "permiso denegado a la función %s" -#: catalog/aclchk.c:2704 +#: catalog/aclchk.c:2706 #, c-format msgid "permission denied for index %s" msgstr "permiso denegado al índice %s" -#: catalog/aclchk.c:2707 +#: catalog/aclchk.c:2709 #, c-format msgid "permission denied for language %s" msgstr "permiso denegado al lenguaje %s" -#: catalog/aclchk.c:2710 +#: catalog/aclchk.c:2712 #, c-format msgid "permission denied for large object %s" msgstr "permiso denegado al objeto grande %s" -#: catalog/aclchk.c:2713 +#: catalog/aclchk.c:2715 #, c-format msgid "permission denied for materialized view %s" msgstr "permiso denegado a la vista materializada %s" -#: catalog/aclchk.c:2716 +#: catalog/aclchk.c:2718 #, c-format msgid "permission denied for operator class %s" msgstr "permiso denegado a la clase de operadores %s" -#: catalog/aclchk.c:2719 +#: catalog/aclchk.c:2721 #, c-format msgid "permission denied for operator %s" msgstr "permiso denegado al operador %s" -#: catalog/aclchk.c:2722 +#: catalog/aclchk.c:2724 #, c-format msgid "permission denied for operator family %s" msgstr "permiso denegado a la familia de operadores %s" -#: catalog/aclchk.c:2725 +#: catalog/aclchk.c:2727 #, c-format msgid "permission denied for parameter %s" msgstr "permiso denegado al parámetro %s" -#: catalog/aclchk.c:2728 +#: catalog/aclchk.c:2730 #, c-format msgid "permission denied for policy %s" msgstr "permiso denegado a la política %s" -#: catalog/aclchk.c:2731 +#: catalog/aclchk.c:2733 #, c-format msgid "permission denied for procedure %s" msgstr "permiso denegado al procedimiento %s" -#: catalog/aclchk.c:2734 +#: catalog/aclchk.c:2736 #, c-format msgid "permission denied for publication %s" msgstr "permiso denegado a la publicación %s" -#: catalog/aclchk.c:2737 +#: catalog/aclchk.c:2739 #, c-format msgid "permission denied for routine %s" msgstr "permiso denegado a la rutina %s" -#: catalog/aclchk.c:2740 +#: catalog/aclchk.c:2742 #, c-format msgid "permission denied for schema %s" msgstr "permiso denegado al esquema %s" -#: catalog/aclchk.c:2743 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2745 commands/sequence.c:654 commands/sequence.c:880 #: commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 #, c-format msgid "permission denied for sequence %s" msgstr "permiso denegado a la secuencia %s" -#: catalog/aclchk.c:2746 +#: catalog/aclchk.c:2748 #, c-format msgid "permission denied for statistics object %s" msgstr "permiso denegado al objeto de estadísticas %s" -#: catalog/aclchk.c:2749 +#: catalog/aclchk.c:2751 #, c-format msgid "permission denied for subscription %s" msgstr "permiso denegado a la suscripción %s" -#: catalog/aclchk.c:2752 +#: catalog/aclchk.c:2754 #, c-format msgid "permission denied for table %s" msgstr "permiso denegado a la tabla %s" -#: catalog/aclchk.c:2755 +#: catalog/aclchk.c:2757 #, c-format msgid "permission denied for tablespace %s" msgstr "permiso denegado al tablespace %s" -#: catalog/aclchk.c:2758 +#: catalog/aclchk.c:2760 #, c-format msgid "permission denied for text search configuration %s" msgstr "permiso denegado a la configuración de búsqueda en texto %s" -#: catalog/aclchk.c:2761 +#: catalog/aclchk.c:2763 #, c-format msgid "permission denied for text search dictionary %s" msgstr "permiso denegado a la configuración de búsqueda en texto %s" -#: catalog/aclchk.c:2764 +#: catalog/aclchk.c:2766 #, c-format msgid "permission denied for type %s" msgstr "permiso denegado al tipo %s" -#: catalog/aclchk.c:2767 +#: catalog/aclchk.c:2769 #, c-format msgid "permission denied for view %s" msgstr "permiso denegado a la vista %s" -#: catalog/aclchk.c:2803 +#: catalog/aclchk.c:2805 #, c-format msgid "must be owner of aggregate %s" msgstr "debe ser dueño de la función de agregación %s" -#: catalog/aclchk.c:2806 +#: catalog/aclchk.c:2808 #, c-format msgid "must be owner of collation %s" msgstr "debe ser dueño del ordenamiento (collation) %s" -#: catalog/aclchk.c:2809 +#: catalog/aclchk.c:2811 #, c-format msgid "must be owner of conversion %s" msgstr "debe ser dueño de la conversión %s" -#: catalog/aclchk.c:2812 +#: catalog/aclchk.c:2814 #, c-format msgid "must be owner of database %s" msgstr "debe ser dueño de la base de datos %s" -#: catalog/aclchk.c:2815 +#: catalog/aclchk.c:2817 #, c-format msgid "must be owner of domain %s" msgstr "debe ser dueño del dominio %s" -#: catalog/aclchk.c:2818 +#: catalog/aclchk.c:2820 #, c-format msgid "must be owner of event trigger %s" msgstr "debe ser dueño del “trigger” por eventos %s" -#: catalog/aclchk.c:2821 +#: catalog/aclchk.c:2823 #, c-format msgid "must be owner of extension %s" msgstr "debe ser dueño de la extensión %s" -#: catalog/aclchk.c:2824 +#: catalog/aclchk.c:2826 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "debe ser dueño del conector de datos externos %s" -#: catalog/aclchk.c:2827 +#: catalog/aclchk.c:2829 #, c-format msgid "must be owner of foreign server %s" msgstr "debe ser dueño del servidor foráneo %s" -#: catalog/aclchk.c:2830 +#: catalog/aclchk.c:2832 #, c-format msgid "must be owner of foreign table %s" msgstr "debe ser dueño de la tabla foránea %s" -#: catalog/aclchk.c:2833 +#: catalog/aclchk.c:2835 #, c-format msgid "must be owner of function %s" msgstr "debe ser dueño de la función %s" -#: catalog/aclchk.c:2836 +#: catalog/aclchk.c:2838 #, c-format msgid "must be owner of index %s" msgstr "debe ser dueño del índice %s" -#: catalog/aclchk.c:2839 +#: catalog/aclchk.c:2841 #, c-format msgid "must be owner of language %s" msgstr "debe ser dueño del lenguaje %s" -#: catalog/aclchk.c:2842 +#: catalog/aclchk.c:2844 #, c-format msgid "must be owner of large object %s" msgstr "debe ser dueño del objeto grande %s" -#: catalog/aclchk.c:2845 +#: catalog/aclchk.c:2847 #, c-format msgid "must be owner of materialized view %s" msgstr "debe ser dueño de la vista materializada %s" -#: catalog/aclchk.c:2848 +#: catalog/aclchk.c:2850 #, c-format msgid "must be owner of operator class %s" msgstr "debe ser dueño de la clase de operadores %s" -#: catalog/aclchk.c:2851 +#: catalog/aclchk.c:2853 #, c-format msgid "must be owner of operator %s" msgstr "debe ser dueño del operador %s" -#: catalog/aclchk.c:2854 +#: catalog/aclchk.c:2856 #, c-format msgid "must be owner of operator family %s" msgstr "debe ser dueño de la familia de operadores %s" -#: catalog/aclchk.c:2857 +#: catalog/aclchk.c:2859 #, c-format msgid "must be owner of procedure %s" msgstr "debe ser dueño del procedimiento %s" -#: catalog/aclchk.c:2860 +#: catalog/aclchk.c:2862 #, c-format msgid "must be owner of publication %s" msgstr "debe ser dueño de la publicación %s" -#: catalog/aclchk.c:2863 +#: catalog/aclchk.c:2865 #, c-format msgid "must be owner of routine %s" msgstr "debe ser dueño de la rutina %s" -#: catalog/aclchk.c:2866 +#: catalog/aclchk.c:2868 #, c-format msgid "must be owner of sequence %s" msgstr "debe ser dueño de la secuencia %s" -#: catalog/aclchk.c:2869 +#: catalog/aclchk.c:2871 #, c-format msgid "must be owner of subscription %s" msgstr "debe ser dueño de la suscripción %s" -#: catalog/aclchk.c:2872 +#: catalog/aclchk.c:2874 #, c-format msgid "must be owner of table %s" msgstr "debe ser dueño de la tabla %s" -#: catalog/aclchk.c:2875 +#: catalog/aclchk.c:2877 #, c-format msgid "must be owner of type %s" msgstr "debe ser dueño del tipo %s" -#: catalog/aclchk.c:2878 +#: catalog/aclchk.c:2880 #, c-format msgid "must be owner of view %s" msgstr "debe ser dueño de la vista %s" -#: catalog/aclchk.c:2881 +#: catalog/aclchk.c:2883 #, c-format msgid "must be owner of schema %s" msgstr "debe ser dueño del esquema %s" -#: catalog/aclchk.c:2884 +#: catalog/aclchk.c:2886 #, c-format msgid "must be owner of statistics object %s" msgstr "debe ser dueño del objeto de estadísticas %s" -#: catalog/aclchk.c:2887 +#: catalog/aclchk.c:2889 #, c-format msgid "must be owner of tablespace %s" msgstr "debe ser dueño del tablespace %s" -#: catalog/aclchk.c:2890 +#: catalog/aclchk.c:2892 #, c-format msgid "must be owner of text search configuration %s" msgstr "debe ser dueño de la configuración de búsqueda en texto %s" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2895 #, c-format msgid "must be owner of text search dictionary %s" msgstr "debe ser dueño del diccionario de búsqueda en texto %s" -#: catalog/aclchk.c:2907 +#: catalog/aclchk.c:2909 #, c-format msgid "must be owner of relation %s" msgstr "debe ser dueño de la relación %s" -#: catalog/aclchk.c:2953 +#: catalog/aclchk.c:2955 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "permiso denegado a la columna «%s» de la relación «%s»" -#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 +#: catalog/aclchk.c:3189 catalog/aclchk.c:3208 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "no existe el atributo %d de la relación con OID %u" -#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 +#: catalog/aclchk.c:3246 catalog/aclchk.c:3309 catalog/aclchk.c:3948 #, c-format msgid "relation with OID %u does not exist" msgstr "no existe la relación con OID %u" -#: catalog/aclchk.c:3492 +#: catalog/aclchk.c:3494 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "no existe el ACL de parámetro con OID %u" -#: catalog/aclchk.c:3571 catalog/objectaddress.c:1055 +#: catalog/aclchk.c:3573 catalog/objectaddress.c:1055 #: catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 #: storage/large_object/inv_api.c:247 #, c-format msgid "large object %u does not exist" msgstr "no existe el objeto grande %u" -#: catalog/aclchk.c:3665 commands/collationcmds.c:849 -#: commands/publicationcmds.c:1846 +#: catalog/aclchk.c:3667 commands/collationcmds.c:849 +#: commands/publicationcmds.c:1851 #, c-format msgid "schema with OID %u does not exist" msgstr "no existe el esquema con OID %u" -#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 +#: catalog/aclchk.c:3741 catalog/aclchk.c:3768 catalog/aclchk.c:3797 #: utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" @@ -4761,22 +4742,18 @@ msgid "still searching for an unused OID in relation \"%s\"" msgstr "aún se está buscando algún OID sin utilizar en la relación «%s»" #: catalog/catalog.c:506 -#, fuzzy, c-format -#| msgid "OID candidates have been checked %llu time, but no unused OID has been found yet." -#| msgid_plural "OID candidates have been checked %llu times, but no unused OID has been found yet." +#, c-format msgid "OID candidates have been checked % time, but no unused OID has been found yet." msgid_plural "OID candidates have been checked % times, but no unused OID has been found yet." -msgstr[0] "se han revisado los OID candidatos %llu vez, pero aún no se ha encontrado algún OID sin utilizar." -msgstr[1] "se han revisado los OID candidatos %llu veces, pero aún no se ha encontrado algún OID sin utilizar." +msgstr[0] "se han revisado los OID candidatos % vez, pero aún no se ha encontrado algún OID sin utilizar." +msgstr[1] "se han revisado los OID candidatos % veces, pero aún no se ha encontrado algún OID sin utilizar." #: catalog/catalog.c:531 -#, fuzzy, c-format -#| msgid "new OID has been assigned in relation \"%s\" after %llu retry" -#| msgid_plural "new OID has been assigned in relation \"%s\" after %llu retries" +#, c-format msgid "new OID has been assigned in relation \"%s\" after % retry" msgid_plural "new OID has been assigned in relation \"%s\" after % retries" -msgstr[0] "se ha asignado un nuevo OID en la relación «%s» luego de %llu reintento" -msgstr[1] "se ha asignado un nuevo OID en la relación «%s» luego de %llu reintentos" +msgstr[0] "se ha asignado un nuevo OID en la relación «%s» luego de % reintento" +msgstr[1] "se ha asignado un nuevo OID en la relación «%s» luego de % reintentos" #: catalog/catalog.c:662 catalog/catalog.c:729 #, c-format @@ -4872,7 +4849,6 @@ msgstr "no se puede usar una constante de tipo %s aquí" #: catalog/dependency.c:2205 #, c-format -#| msgid "only table \"%s\" can be referenced in check constraint" msgid "transition table \"%s\" cannot be referenced in a persistent object" msgstr "la tabla de transición «%s» no puede ser referida en un objeto persistente" @@ -4921,10 +4897,9 @@ msgid "column \"%s\" has pseudo-type %s" msgstr "la columna «%s» tiene pseudotipo %s" #: catalog/heap.c:595 -#, fuzzy, c-format -#| msgid "default for column \"%s\" cannot be cast automatically to type %s" +#, c-format msgid "virtual generated column \"%s\" cannot have a domain type" -msgstr "el valor por omisión para la columna «%s» no puede ser convertido automáticamente al tipo %s" +msgstr "la columna generada virtual «%s» no puede tener tipo que sea un dominio" #: catalog/heap.c:622 #, c-format @@ -4937,7 +4912,7 @@ msgstr "un tipo compuesto %s no puede ser hecho miembro de sí mismo" msgid "virtual generated column \"%s\" cannot have a user-defined type" msgstr "Las columnas generadas no pueden usarse en COPY." -#: catalog/heap.c:674 catalog/heap.c:3294 +#: catalog/heap.c:674 catalog/heap.c:3295 #, c-format msgid "Virtual generated columns that make use of user-defined types are not yet supported." msgstr "Las columnas virtuales generadas que usan tipos de datos definidos por el usuario no están soportados aún." @@ -4997,45 +4972,45 @@ msgstr "no se puede agregar una restricción NO INHERIT a la tabla particionada msgid "check constraint \"%s\" already exists" msgstr "la restricción «check» «%s» ya existe" -#: catalog/heap.c:2626 catalog/heap.c:2946 +#: catalog/heap.c:2626 catalog/heap.c:2947 #, fuzzy, c-format #| msgid "cannot assign to system column \"%s\"" msgid "cannot add not-null constraint on system column \"%s\"" msgstr "no se puede asignar a la columna de sistema «%s»" -#: catalog/heap.c:2653 catalog/heap.c:2779 catalog/heap.c:3030 -#: catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9821 +#: catalog/heap.c:2654 catalog/heap.c:2780 catalog/heap.c:3031 +#: catalog/index.c:915 catalog/pg_constraint.c:1025 commands/tablecmds.c:9821 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "la restricción «%s» para la relación «%s» ya existe" -#: catalog/heap.c:2786 +#: catalog/heap.c:2787 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción no heredada de la relación «%s»" -#: catalog/heap.c:2797 +#: catalog/heap.c:2798 #, c-format msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción heredada de la relación «%s»" -#: catalog/heap.c:2807 +#: catalog/heap.c:2808 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción NOT VALID de la relación «%s»" -#: catalog/heap.c:2819 +#: catalog/heap.c:2820 #, fuzzy, c-format #| msgid "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\"" msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on relation \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción NOT VALID de la relación «%s»" -#: catalog/heap.c:2824 +#: catalog/heap.c:2825 #, c-format msgid "merging constraint \"%s\" with inherited definition" msgstr "mezclando la restricción «%s» con la definición heredada" -#: catalog/heap.c:2848 catalog/pg_constraint.c:786 catalog/pg_constraint.c:1137 +#: catalog/heap.c:2849 catalog/pg_constraint.c:803 catalog/pg_constraint.c:1154 #: commands/tablecmds.c:3179 commands/tablecmds.c:3499 #: commands/tablecmds.c:7286 commands/tablecmds.c:7967 #: commands/tablecmds.c:17583 commands/tablecmds.c:17765 @@ -5043,109 +5018,108 @@ msgstr "mezclando la restricción «%s» con la definición heredada" msgid "too many inheritance parents" msgstr "demasiados padres de herencia" -#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 +#: catalog/heap.c:2966 parser/parse_utilcmd.c:2655 #, fuzzy, c-format #| msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" msgid "conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" msgstr "las declaraciones NULL/NOT NULL no son coincidentes para la columna «%s» de la tabla «%s»" -#: catalog/heap.c:2979 +#: catalog/heap.c:2980 #, fuzzy, c-format #| msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgid "conflicting not-null constraint names \"%s\" and \"%s\"" msgstr "no se puede modificar la restricción «%s» en la relación «%s»" -#: catalog/heap.c:3009 +#: catalog/heap.c:3010 #, c-format msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" msgstr "no se puede definir una restricción “not-null” con NO INHERIT en la columna «%s»" -#: catalog/heap.c:3011 +#: catalog/heap.c:3012 #, c-format -#| msgid "finding table check constraints" msgid "The column has an inherited not-null constraint." msgstr "La columna tiene una restricción “not-null” heredada." -#: catalog/heap.c:3201 +#: catalog/heap.c:3202 #, c-format msgid "cannot use generated column \"%s\" in column generation expression" msgstr "no se puede usar la columna generada «%s» en una expresión de generación de columna" -#: catalog/heap.c:3203 +#: catalog/heap.c:3204 #, c-format msgid "A generated column cannot reference another generated column." msgstr "Una columna generada no puede hacer referencia a otra columna generada." -#: catalog/heap.c:3209 +#: catalog/heap.c:3210 #, c-format msgid "cannot use whole-row variable in column generation expression" msgstr "no se puede usar una variable de fila completa (whole-row) en una expresión de generación de columna" -#: catalog/heap.c:3210 +#: catalog/heap.c:3211 #, c-format msgid "This would cause the generated column to depend on its own value." msgstr "Esto causaría que la columna generada dependa de su propio valor." -#: catalog/heap.c:3277 +#: catalog/heap.c:3278 #, fuzzy, c-format #| msgid "reading user-defined functions" msgid "generation expression uses user-defined function" msgstr "leyendo las funciones definidas por el usuario" -#: catalog/heap.c:3278 +#: catalog/heap.c:3279 #, c-format msgid "Virtual generated columns that make use of user-defined functions are not yet supported." msgstr "Las columnas generadas virtuales que usan tipos de datos definidos por el usuario no están soportadas aún." -#: catalog/heap.c:3293 +#: catalog/heap.c:3294 #, fuzzy, c-format #| msgid "generation expression is not immutable" msgid "generation expression uses user-defined type" msgstr "la expresión de generación no es inmutable" -#: catalog/heap.c:3345 +#: catalog/heap.c:3346 #, c-format msgid "generation expression is not immutable" msgstr "la expresión de generación no es inmutable" -#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 +#: catalog/heap.c:3378 rewrite/rewriteHandler.c:1288 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "la columna «%s» es de tipo %s pero la expresión default es de tipo %s" -#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 +#: catalog/heap.c:3383 commands/prepare.c:334 parser/analyze.c:2906 #: parser/parse_target.c:595 parser/parse_target.c:885 -#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1290 +#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1293 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "Necesitará reescribir la expresión o aplicarle una conversión de tipo." -#: catalog/heap.c:3429 +#: catalog/heap.c:3430 #, c-format msgid "only table \"%s\" can be referenced in check constraint" msgstr "sólo la tabla «%s» puede ser referenciada en una restricción «check»" -#: catalog/heap.c:3735 +#: catalog/heap.c:3736 #, c-format msgid "unsupported ON COMMIT and foreign key combination" msgstr "combinación de ON COMMIT y llaves foráneas no soportada" -#: catalog/heap.c:3736 +#: catalog/heap.c:3737 #, c-format msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting." msgstr "La tabla «%s» se refiere a «%s», pero no tienen la misma expresión para ON COMMIT." -#: catalog/heap.c:3741 +#: catalog/heap.c:3742 #, c-format msgid "cannot truncate a table referenced in a foreign key constraint" msgstr "no se puede truncar una tabla referida en una llave foránea" -#: catalog/heap.c:3742 +#: catalog/heap.c:3743 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "La tabla «%s» hace referencia a «%s»." -#: catalog/heap.c:3744 +#: catalog/heap.c:3745 #, c-format msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "Trunque la tabla «%s» al mismo tiempo, o utilice TRUNCATE ... CASCADE." @@ -5243,7 +5217,7 @@ msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "no se puede reindexar el índice no válido «%s.%s» en tabla TOAST, omitiendo" #: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 -#: commands/trigger.c:5817 +#: commands/trigger.c:5838 #, c-format msgid "cross-database references are not implemented: \"%s.%s.%s\"" msgstr "no están implementadas las referencias entre bases de datos: «%s.%s.%s»" @@ -6092,51 +6066,63 @@ msgstr "el ordenamiento «%s» ya existe" msgid "collation \"%s\" for encoding \"%s\" already exists" msgstr "la codificación «%2$s» ya tiene un ordenamiento llamado «%1$s»" -#: catalog/pg_constraint.c:763 commands/tablecmds.c:7952 +#: catalog/pg_constraint.c:764 commands/tablecmds.c:7952 #, fuzzy, c-format #| msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgid "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation \"%s\"" msgstr "no se puede modificar la restricción «%s» en la relación «%s»" -#: catalog/pg_constraint.c:765 commands/tablecmds.c:9584 +#: catalog/pg_constraint.c:766 commands/tablecmds.c:9584 #, c-format msgid "You might need to make the existing constraint inheritable using %s." msgstr "Puede que sea necesario hacer heredable la restricción existente usando %s." -#: catalog/pg_constraint.c:775 commands/tablecmds.c:8301 +#: catalog/pg_constraint.c:776 commands/tablecmds.c:8301 #, fuzzy, c-format #| msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" msgstr "no se puede modificar la restricción «%s» en la relación «%s»" -#: catalog/pg_constraint.c:777 commands/tablecmds.c:8303 +#: catalog/pg_constraint.c:778 commands/tablecmds.c:8303 #: commands/tablecmds.c:9596 #, fuzzy, c-format #| msgid "You might need to increase \"%s\"." msgid "You might need to validate it using %s." msgstr "Puede ser necesario incrementar «%s»." -#: catalog/pg_constraint.c:1016 +#: catalog/pg_constraint.c:792 +#, fuzzy, c-format +#| msgid "cannot assign to system column \"%s\"" +msgid "cannot create not-null constraint \"%s\" on column \"%s\" of table \"%s\"" +msgstr "no se puede asignar a la columna de sistema «%s»" + +#: catalog/pg_constraint.c:794 +#, fuzzy, c-format +#| msgid "check constraint \"%s\" already exists" +msgid "A not-null constraint named \"%s\" already exists for this column." +msgstr "la restricción «check» «%s» ya existe" + +#: catalog/pg_constraint.c:1033 #, c-format msgid "constraint \"%s\" for domain %s already exists" msgstr "el dominio %2$s ya contiene una restricción llamada «%1$s»" -#: catalog/pg_constraint.c:1217 catalog/pg_constraint.c:1310 +#: catalog/pg_constraint.c:1234 catalog/pg_constraint.c:1327 #, c-format msgid "constraint \"%s\" for table \"%s\" does not exist" msgstr "no existe la restricción «%s» para la tabla «%s»" -#: catalog/pg_constraint.c:1410 +#: catalog/pg_constraint.c:1427 #, c-format msgid "constraint \"%s\" for domain %s does not exist" msgstr "no existe la restricción «%s» para el dominio %s" -#: catalog/pg_constraint.c:1664 +#: catalog/pg_constraint.c:1681 #, c-format msgid "invalid type for PERIOD part of foreign key" msgstr "tipo no válido para la parte PERIOD de la llave foránea" -#: catalog/pg_constraint.c:1665 +#: catalog/pg_constraint.c:1682 #, c-format msgid "Only range and multirange are supported." msgstr "Sólo de admiten rangos y multirangos." @@ -6729,7 +6715,7 @@ msgstr "el servidor «%s» ya existe" msgid "language \"%s\" already exists" msgstr "ya existe el lenguaje «%s»" -#: commands/alter.c:95 commands/publicationcmds.c:865 +#: commands/alter.c:95 commands/publicationcmds.c:870 #, c-format msgid "publication \"%s\" already exists" msgstr "la publicación «%s» ya existe" @@ -6877,27 +6863,27 @@ msgstr "omitiendo el análisis del árbol de herencia «%s.%s» --- este árbol msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables" msgstr "omitiendo el análisis del árbol de herencia «%s.%s» --- este árbol no contiene tablas hijas analizables" -#: commands/async.c:612 +#: commands/async.c:611 #, c-format msgid "channel name cannot be empty" msgstr "el nombre de canal no puede ser vacío" -#: commands/async.c:618 +#: commands/async.c:617 #, c-format msgid "channel name too long" msgstr "el nombre de canal es demasiado largo" -#: commands/async.c:623 +#: commands/async.c:622 #, c-format msgid "payload string too long" msgstr "la cadena de carga es demasiado larga" -#: commands/async.c:842 +#: commands/async.c:841 #, c-format msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY" msgstr "no se puede hacer PREPARE de una transacción que ha ejecutado LISTEN, UNLISTEN o NOTIFY" -#: commands/async.c:946 +#: commands/async.c:945 #, c-format msgid "too many notifications in the NOTIFY queue" msgstr "demasiadas notificaciones en la cola NOTIFY" @@ -6917,10 +6903,13 @@ msgstr "El proceso servidor con PID %d está entre aquellos con transacciones m msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction." msgstr "La cola NOTIFY no puede vaciarse hasta que ese proceso cierre su transacción actual." -#: commands/cluster.c:127 -#, c-format -msgid "unrecognized CLUSTER option \"%s\"" -msgstr "opción de CLUSTER «%s» no reconocida" +#: commands/cluster.c:127 commands/dbcommands.c:2356 +#: commands/explain_state.c:165 commands/indexcmds.c:2846 commands/vacuum.c:234 +#: commands/vacuum.c:308 +#, fuzzy, c-format +#| msgid "unrecognized role option \"%s\"" +msgid "unrecognized %s option \"%s\"" +msgstr "opción de rol «%s» no reconocida" #: commands/cluster.c:158 commands/cluster.c:421 #, c-format @@ -7014,9 +7003,9 @@ msgstr "el atributo de ordenamiento (collation) «%s» no es reconocido" #: commands/collationcmds.c:123 commands/collationcmds.c:129 #: commands/define.c:375 commands/tablecmds.c:8394 #: replication/pgoutput/pgoutput.c:321 replication/pgoutput/pgoutput.c:344 -#: replication/pgoutput/pgoutput.c:358 replication/pgoutput/pgoutput.c:368 -#: replication/pgoutput/pgoutput.c:378 replication/pgoutput/pgoutput.c:388 -#: replication/pgoutput/pgoutput.c:400 replication/walsender.c:1137 +#: replication/pgoutput/pgoutput.c:362 replication/pgoutput/pgoutput.c:372 +#: replication/pgoutput/pgoutput.c:382 replication/pgoutput/pgoutput.c:392 +#: replication/pgoutput/pgoutput.c:404 replication/walsender.c:1137 #: replication/walsender.c:1159 replication/walsender.c:1169 #: replication/walsender.c:1178 replication/walsender.c:1420 #: replication/walsender.c:1429 @@ -7096,17 +7085,17 @@ msgstr "no se puede refrescar la versión del ordenamiento por omisión" msgid "Use %s instead." msgstr "Use %s en su lugar." -#: commands/collationcmds.c:476 commands/dbcommands.c:2605 +#: commands/collationcmds.c:476 commands/dbcommands.c:2606 #, c-format msgid "changing version from %s to %s" msgstr "cambiando versión de %s a %s" -#: commands/collationcmds.c:491 commands/dbcommands.c:2618 +#: commands/collationcmds.c:491 commands/dbcommands.c:2619 #, c-format msgid "version has not changed" msgstr "la versión no ha cambiado" -#: commands/collationcmds.c:524 commands/dbcommands.c:2788 +#: commands/collationcmds.c:524 commands/dbcommands.c:2789 #: utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" @@ -7129,8 +7118,8 @@ msgstr "no se encontraron locales de sistema utilizables" #: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 #: commands/dbcommands.c:2034 commands/dbcommands.c:2232 -#: commands/dbcommands.c:2472 commands/dbcommands.c:2565 -#: commands/dbcommands.c:2689 commands/dbcommands.c:3200 +#: commands/dbcommands.c:2473 commands/dbcommands.c:2566 +#: commands/dbcommands.c:2690 commands/dbcommands.c:3201 #: utils/init/postinit.c:1016 utils/init/postinit.c:1080 #: utils/init/postinit.c:1153 #, c-format @@ -7218,14 +7207,13 @@ msgid "Only roles with privileges of the \"%s\" role may COPY to a file." msgstr "Sólo los roles con privilegios del rol «%s» pueden hacer COPY hacia un archivo." #: commands/copy.c:182 -#, fuzzy, c-format -#| msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" +#, c-format msgid "generated columns are not supported in COPY FROM WHERE conditions" -msgstr "no se permiten funciones de agregación en las condiciones WHERE de COPY FROM" +msgstr "no se permiten columnas generadas en las condiciones WHERE de COPY FROM" #: commands/copy.c:183 commands/tablecmds.c:14418 commands/tablecmds.c:19824 #: commands/tablecmds.c:19906 commands/trigger.c:660 -#: rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 +#: rewrite/rewriteHandler.c:952 rewrite/rewriteHandler.c:987 #, c-format msgid "Column \"%s\" is a generated column." msgstr "La columna «%s» es una columna generada." @@ -7293,7 +7281,7 @@ msgstr "el argumento de la opción «%s» debe ser una lista de nombres de colum msgid "argument to option \"%s\" must be a valid encoding name" msgstr "el argumento de la opción «%s» debe ser un nombre válido de codificación" -#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2421 #, c-format msgid "option \"%s\" not recognized" msgstr "no se reconoce la opción «%s»" @@ -7392,7 +7380,7 @@ msgstr "la columna «%s» es una columna generada" msgid "Generated columns cannot be used in COPY." msgstr "Las columnas generadas no pueden usarse en COPY." -#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:239 +#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:260 #: commands/tablecmds.c:2593 commands/tablecmds.c:3101 #: commands/tablecmds.c:3930 parser/parse_relation.c:3798 #: parser/parse_relation.c:3808 parser/parse_relation.c:3826 @@ -7414,34 +7402,29 @@ msgid "COPY %s" msgstr "COPY %s" #: commands/copyfrom.c:268 -#, fuzzy, c-format -#| msgid "COPY %s, line %llu, column %s" +#, c-format msgid "COPY %s, line %, column %s" -msgstr "COPY %s, línea %llu, columna %s" +msgstr "COPY %s, línea %, columna %s" #: commands/copyfrom.c:273 commands/copyfrom.c:319 -#, fuzzy, c-format -#| msgid "COPY %s, line %llu" +#, c-format msgid "COPY %s, line %" -msgstr "COPY %s, línea %llu" +msgstr "COPY %s, línea %" #: commands/copyfrom.c:285 -#, fuzzy, c-format -#| msgid "COPY %s, line %llu, column %s: \"%s\"" +#, c-format msgid "COPY %s, line %, column %s: \"%s\"" -msgstr "COPY %s, línea %llu, columna %s: «%s»" +msgstr "COPY %s, línea %, columna %s: «%s»" #: commands/copyfrom.c:295 -#, fuzzy, c-format -#| msgid "COPY %s, line %llu, column %s: null input" +#, c-format msgid "COPY %s, line %, column %s: null input" -msgstr "COPY %s, línea %llu, columna %s: entrada nula" +msgstr "COPY %s, línea %, columna %s: entrada nula" #: commands/copyfrom.c:312 -#, fuzzy, c-format -#| msgid "COPY %s, line %llu: \"%s\"" +#, c-format msgid "COPY %s, line %: \"%s\"" -msgstr "COPY %s, línea %llu: «%s»" +msgstr "COPY %s, línea %: «%s»" #: commands/copyfrom.c:823 #, c-format @@ -7497,13 +7480,11 @@ msgid "skipped more than REJECT_LIMIT (%) rows due to data type incompat msgstr "%llu fila fue ignorada por incompatibilidad de tipo de dato" #: commands/copyfrom.c:1474 -#, fuzzy, c-format -#| msgid "%llu row was skipped due to data type incompatibility" -#| msgid_plural "%llu rows were skipped due to data type incompatibility" +#, c-format msgid "% row was skipped due to data type incompatibility" msgid_plural "% rows were skipped due to data type incompatibility" -msgstr[0] "%llu fila fue ignorada por incompatibilidad de tipo de dato" -msgstr[1] "%llu filas fueron ignoradas por incompatibilidad de tipo de dato" +msgstr[0] "% fila fue ignorada por incompatibilidad de tipo de dato" +msgstr[1] "% filas fueron ignoradas por incompatibilidad de tipo de dato" #. translator: first %s is the name of a COPY option, e.g. FORCE_NOT_NULL #. translator: %s is the name of a COPY option, e.g. FORCE_NOT_NULL @@ -7615,16 +7596,14 @@ msgid "missing data for column \"%s\"" msgstr "faltan datos en la columna «%s»" #: commands/copyfromparse.c:1056 -#, fuzzy, c-format -#| msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": \"%s\"" +#, c-format msgid "skipping row due to data type incompatibility at line % for column \"%s\": \"%s\"" -msgstr "omitiendo fila debido a incompatibilidad de tipo en la línea %llu para la columna «%s»: «%s»" +msgstr "omitiendo fila debido a incompatibilidad de tipo en la línea % para la columna «%s»: «%s»" #: commands/copyfromparse.c:1064 -#, fuzzy, c-format -#| msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": null input" +#, c-format msgid "skipping row due to data type incompatibility at line % for column \"%s\": null input" -msgstr "omitiendo fila debido a incompatibilidad de tipo en la línea %llu para la columna «%s»: entrada nula" +msgstr "omitiendo fila debido a incompatibilidad de tipo en la línea % para la columna «%s»: entrada nula" #: commands/copyfromparse.c:1122 #, c-format @@ -7864,7 +7843,7 @@ msgstr "%s no es un nombre válido de codificación" msgid "unrecognized locale provider: %s" msgstr "proveedor de ordenamiento no reconocido: %s" -#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2454 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" @@ -7885,7 +7864,7 @@ msgstr "no existe la base de datos patrón «%s»" msgid "cannot use invalid database \"%s\" as template" msgstr "no se puede usar la base de datos «%s» no válida como plantilla" -#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2484 #: utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." @@ -8161,62 +8140,57 @@ msgstr "algunas relaciones de la base de datos «%s» ya están en el tablespace msgid "You must move them back to the database's default tablespace before using this command." msgstr "Debe moverlas de vuelta al tablespace por omisión de la base de datos antes de ejecutar esta orden." -#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 -#: commands/dbcommands.c:3338 commands/dbcommands.c:3452 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3039 +#: commands/dbcommands.c:3339 commands/dbcommands.c:3453 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "algunos archivos inútiles pueden haber quedado en el directorio \"%s\"" -#: commands/dbcommands.c:2356 -#, c-format -msgid "unrecognized DROP DATABASE option \"%s\"" -msgstr "opción de DROP DATABASE «%s» no reconocida" - -#: commands/dbcommands.c:2434 +#: commands/dbcommands.c:2435 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "la opción «%s» no puede ser especificada con otras opciones" -#: commands/dbcommands.c:2482 +#: commands/dbcommands.c:2483 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "no se puede alterar base de datos no válida «%s»" -#: commands/dbcommands.c:2499 +#: commands/dbcommands.c:2500 #, c-format msgid "cannot disallow connections for current database" msgstr "no se pueden prohibir las conexiones para la base de datos actual" -#: commands/dbcommands.c:2729 +#: commands/dbcommands.c:2730 #, c-format msgid "permission denied to change owner of database" msgstr "se ha denegado el permiso para cambiar el dueño de la base de datos" -#: commands/dbcommands.c:3144 +#: commands/dbcommands.c:3145 #, c-format msgid "There are %d other session(s) and %d prepared transaction(s) using the database." msgstr "Hay otras %d sesiones y %d transacciones preparadas usando la base de datos." -#: commands/dbcommands.c:3147 +#: commands/dbcommands.c:3148 #, c-format msgid "There is %d other session using the database." msgid_plural "There are %d other sessions using the database." msgstr[0] "Hay %d otra sesión usando la base de datos." msgstr[1] "Hay otras %d sesiones usando la base de datos." -#: commands/dbcommands.c:3152 storage/ipc/procarray.c:3860 +#: commands/dbcommands.c:3153 storage/ipc/procarray.c:3860 #, c-format msgid "There is %d prepared transaction using the database." msgid_plural "There are %d prepared transactions using the database." msgstr[0] "Hay %d otra transacción preparada usando la base de datos." msgstr[1] "Hay otras %d transacciones preparadas usando la base de datos." -#: commands/dbcommands.c:3294 +#: commands/dbcommands.c:3295 #, c-format msgid "missing directory \"%s\"" msgstr "directorio «%s» faltante" -#: commands/dbcommands.c:3352 commands/tablespace.c:184 +#: commands/dbcommands.c:3353 commands/tablespace.c:184 #: commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" @@ -8296,7 +8270,7 @@ msgstr "no existe el ordenamiento (collation) «%s», omitiendo" msgid "conversion \"%s\" does not exist, skipping" msgstr "no existe la conversión «%s», omitiendo" -#: commands/dropcmds.c:288 commands/statscmds.c:682 +#: commands/dropcmds.c:288 commands/statscmds.c:703 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "no existe el objeto de estadísticas «%s», omitiendo" @@ -8489,14 +8463,11 @@ msgid "%s can only be called in an event trigger function" msgstr "%s sólo puede invocarse en una función de un “trigger” por eventos" #: commands/explain_state.c:133 commands/explain_state.c:158 -#, c-format -msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" -msgstr "valor no reconocido para la opción de EXPLAIN «%s»: «%s»" - -#: commands/explain_state.c:165 -#, c-format -msgid "unrecognized EXPLAIN option \"%s\"" -msgstr "opción de EXPLAIN «%s» no reconocida" +#: replication/walsender.c:1151 +#, fuzzy, c-format +#| msgid "unrecognized value for role option \"%s\": \"%s\"" +msgid "unrecognized value for %s option \"%s\": \"%s\"" +msgstr "valor no reconocido para la opción de rol «%s»: «%s»" #: commands/explain_state.c:174 commands/explain_state.c:186 #: commands/explain_state.c:192 @@ -8506,9 +8477,10 @@ msgid "EXPLAIN option %s requires ANALYZE" msgstr "la opción WAL de EXPLAIN requiere ANALYZE" #: commands/explain_state.c:198 -#, c-format -msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" -msgstr "las opciones ANALYZE y GENERIC_PLAN de EXPLAIN no pueden usarse juntas" +#, fuzzy, c-format +#| msgid "options %s and %s cannot be used together" +msgid "%s options %s and %s cannot be used together" +msgstr "las opciones %s y %s no pueden usarse juntas" #: commands/extension.c:177 commands/extension.c:3323 #, c-format @@ -9477,7 +9449,7 @@ msgid "could not determine which collation to use for index expression" msgstr "no se pudo determinar qué ordenamiento (collation) usar para la expresión de índice" #: commands/indexcmds.c:2097 commands/tablecmds.c:19994 commands/typecmds.c:812 -#: parser/parse_expr.c:2806 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 +#: parser/parse_expr.c:2815 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 #: utils/adt/misc.c:630 #, c-format msgid "collations are not supported by type %s" @@ -9558,11 +9530,6 @@ msgstr "no se pudo identificar un operador de desigualdad para el tipo %s" msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." msgstr "No se pudo traducir el nombre de host del cliente «%s» a una dirección IP: %s." -#: commands/indexcmds.c:2846 -#, c-format -msgid "unrecognized REINDEX option \"%s\"" -msgstr "opción de REINDEX «%s» no reconocida" - #: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" @@ -10001,7 +9968,7 @@ msgstr "el atributo de operador «%s» no puede ser cambiado" msgid "operator attribute \"%s\" cannot be changed if it has already been set" msgstr "el atributo de operador «%s» no puede ser cambiado si ya se ha establecido" -#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:146 +#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:152 #: commands/tablecmds.c:1800 commands/tablecmds.c:2400 #: commands/tablecmds.c:3824 commands/tablecmds.c:6793 #: commands/tablecmds.c:10114 commands/tablecmds.c:19565 @@ -10103,211 +10070,211 @@ msgstr "no existe la sentencia preparada «%s»" msgid "must be superuser to create custom procedural language" msgstr "debe ser superusuario para crear un lenguaje procedural personalizado" -#: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 +#: commands/publicationcmds.c:135 libpq/auth-oauth.c:850 #: postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 #: utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "la sintaxis de lista no es válida para el parámetro «%s»" -#: commands/publicationcmds.c:149 +#: commands/publicationcmds.c:154 #, c-format msgid "unrecognized value for publication option \"%s\": \"%s\"" msgstr "valor no reconocido para la opción de publicación «%s»: «%s»" -#: commands/publicationcmds.c:170 +#: commands/publicationcmds.c:175 #, c-format msgid "unrecognized publication parameter: \"%s\"" msgstr "parámetro de publicación no reconocido: «%s»" -#: commands/publicationcmds.c:211 +#: commands/publicationcmds.c:216 #, c-format msgid "no schema has been selected for CURRENT_SCHEMA" msgstr "no se ha seleccionado ningún esquema para CURRENT_SCHEMA" -#: commands/publicationcmds.c:592 +#: commands/publicationcmds.c:597 msgid "System columns are not allowed." msgstr "Las columnas de sistema no son permitidas." -#: commands/publicationcmds.c:599 commands/publicationcmds.c:604 -#: commands/publicationcmds.c:621 +#: commands/publicationcmds.c:604 commands/publicationcmds.c:609 +#: commands/publicationcmds.c:626 msgid "User-defined operators are not allowed." msgstr "Los operadores definidos por el usuario no están permitidos." -#: commands/publicationcmds.c:645 +#: commands/publicationcmds.c:650 msgid "Only columns, constants, built-in operators, built-in data types, built-in collations, and immutable built-in functions are allowed." msgstr "Sólo columnas, constantes, operadores built-in, tipos de datos built-in, configuraciones regionales built-in y funciones built-in inmutables son permitidas." -#: commands/publicationcmds.c:657 +#: commands/publicationcmds.c:662 msgid "User-defined types are not allowed." msgstr "Los tipos definidos por el usuario no están permitidos." -#: commands/publicationcmds.c:660 +#: commands/publicationcmds.c:665 msgid "User-defined or built-in mutable functions are not allowed." msgstr "Las funciones definidas por el usuario, o las que son mutables, no están permitidas." -#: commands/publicationcmds.c:663 +#: commands/publicationcmds.c:668 msgid "User-defined collations are not allowed." msgstr "Los «collations» definidos por el usuario no están permitidos." -#: commands/publicationcmds.c:673 +#: commands/publicationcmds.c:678 #, c-format msgid "invalid publication WHERE expression" msgstr "sintaxis de cláusula WHERE de publicación no válida" -#: commands/publicationcmds.c:726 +#: commands/publicationcmds.c:731 #, c-format msgid "cannot use publication WHERE clause for relation \"%s\"" msgstr "no se puede usar cláusula WHERE de la publicación para la relación «%s»" -#: commands/publicationcmds.c:728 +#: commands/publicationcmds.c:733 #, c-format msgid "WHERE clause cannot be used for a partitioned table when %s is false." msgstr "la cláusula WHERE no puede ser usada para una tabla particionada cuando %s es falso." -#: commands/publicationcmds.c:801 commands/publicationcmds.c:815 +#: commands/publicationcmds.c:806 commands/publicationcmds.c:820 #, c-format msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" msgstr "no se puede usar lista de columnas para la relación «%s.%s» en la publicación «%s»" -#: commands/publicationcmds.c:804 +#: commands/publicationcmds.c:809 #, c-format msgid "Column lists cannot be specified in publications containing FOR TABLES IN SCHEMA elements." msgstr "Las listas de columnas no pueden ser especificadas en publicaciones que contienen elementos FOR TABLES IN SCHEMA." -#: commands/publicationcmds.c:818 +#: commands/publicationcmds.c:823 #, c-format msgid "Column lists cannot be specified for partitioned tables when %s is false." msgstr "Las listas de columnas no pueden ser especificadas para tablas particionadas cuando %s es falso." -#: commands/publicationcmds.c:855 +#: commands/publicationcmds.c:860 #, c-format msgid "must be superuser to create FOR ALL TABLES publication" msgstr "debe ser superusuario para crear publicaciones FOR ALL TABLES" -#: commands/publicationcmds.c:930 +#: commands/publicationcmds.c:935 #, c-format msgid "must be superuser to create FOR TABLES IN SCHEMA publication" msgstr "debe ser superusuario para crear publicaciones FOR TABLES IN SCHEMA" -#: commands/publicationcmds.c:966 +#: commands/publicationcmds.c:971 #, c-format msgid "\"wal_level\" is insufficient to publish logical changes" msgstr "«wal_level» es insuficiente para publicar cambios lógicos" -#: commands/publicationcmds.c:967 +#: commands/publicationcmds.c:972 #, c-format msgid "Set \"wal_level\" to \"logical\" before creating subscriptions." msgstr "Cambie «wal_level» a «logical» antes de crear suscripciones." -#: commands/publicationcmds.c:1067 commands/publicationcmds.c:1075 +#: commands/publicationcmds.c:1072 commands/publicationcmds.c:1080 #, c-format msgid "cannot set parameter \"%s\" to false for publication \"%s\"" msgstr "no se puede definir el parámetro «%s» a falso para la publicación «%s»" -#: commands/publicationcmds.c:1070 +#: commands/publicationcmds.c:1075 #, c-format msgid "The publication contains a WHERE clause for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "La publicación contiene una cláusula WHERE para la tabla particionada «%s», que no está permitido cuando «%s» es falso." -#: commands/publicationcmds.c:1078 +#: commands/publicationcmds.c:1083 #, c-format msgid "The publication contains a column list for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "La publicación contiene una lista de columns para la tabla particionada «%s», que no está permitido cuando «%s» es falso." -#: commands/publicationcmds.c:1399 +#: commands/publicationcmds.c:1404 #, c-format msgid "cannot add schema to publication \"%s\"" msgstr "no se puede agregar el esquema «%s» a la publicación" -#: commands/publicationcmds.c:1401 +#: commands/publicationcmds.c:1406 #, c-format msgid "Schemas cannot be added if any tables that specify a column list are already part of the publication." msgstr "Los esquemas no pueden ser añadidos si alguna tabla que especifica una lista de columnas ya es parte de la publicación." -#: commands/publicationcmds.c:1449 +#: commands/publicationcmds.c:1454 #, c-format msgid "must be superuser to add or set schemas" msgstr "debe ser superusuario para agregar o definir esquemas" -#: commands/publicationcmds.c:1458 commands/publicationcmds.c:1466 +#: commands/publicationcmds.c:1463 commands/publicationcmds.c:1471 #, c-format msgid "publication \"%s\" is defined as FOR ALL TABLES" msgstr "la publicación \"%s\" se define como FOR ALL TABLES" -#: commands/publicationcmds.c:1460 +#: commands/publicationcmds.c:1465 #, c-format msgid "Schemas cannot be added to or dropped from FOR ALL TABLES publications." msgstr "No se pueden agregar ni eliminar esquemas de las publicaciones FOR ALL TABLES." -#: commands/publicationcmds.c:1468 +#: commands/publicationcmds.c:1473 #, c-format msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications." msgstr "Las tablas no se pueden agregar ni eliminar de las publicaciones FOR ALL TABLES." -#: commands/publicationcmds.c:1492 commands/publicationcmds.c:1531 -#: commands/publicationcmds.c:2068 utils/cache/lsyscache.c:3774 +#: commands/publicationcmds.c:1497 commands/publicationcmds.c:1536 +#: commands/publicationcmds.c:2073 utils/cache/lsyscache.c:3774 #, c-format msgid "publication \"%s\" does not exist" msgstr "no existe la publicación «%s»" -#: commands/publicationcmds.c:1694 commands/publicationcmds.c:1757 +#: commands/publicationcmds.c:1699 commands/publicationcmds.c:1762 #, c-format msgid "conflicting or redundant WHERE clauses for table \"%s\"" msgstr "cláusulas WHERE en conflicto o redundantes para la tabla «%s»" -#: commands/publicationcmds.c:1701 commands/publicationcmds.c:1769 +#: commands/publicationcmds.c:1706 commands/publicationcmds.c:1774 #, c-format msgid "conflicting or redundant column lists for table \"%s\"" msgstr "listas de columnas contradictorias o redundantes para la tabla «%s»" -#: commands/publicationcmds.c:1903 +#: commands/publicationcmds.c:1908 #, c-format msgid "column list must not be specified in ALTER PUBLICATION ... DROP" msgstr "la lista de columnas no debe ser especificada en ALTER PUBLICATION ... DROP" -#: commands/publicationcmds.c:1915 +#: commands/publicationcmds.c:1920 #, c-format msgid "relation \"%s\" is not part of the publication" msgstr "relación «%s» no es parte de la publicación" -#: commands/publicationcmds.c:1922 +#: commands/publicationcmds.c:1927 #, c-format msgid "cannot use a WHERE clause when removing a table from a publication" msgstr "no se puede usar una cláusula WHERE cuando se elimina una tabla de una publicación" -#: commands/publicationcmds.c:1982 +#: commands/publicationcmds.c:1987 #, c-format msgid "tables from schema \"%s\" are not part of the publication" msgstr "las tablas del esquema «%s» no son parte de la publicación" -#: commands/publicationcmds.c:2025 commands/publicationcmds.c:2032 +#: commands/publicationcmds.c:2030 commands/publicationcmds.c:2037 #, c-format msgid "permission denied to change owner of publication \"%s\"" msgstr "se ha denegado el permiso para cambiar el dueño de la publicación «%s»" -#: commands/publicationcmds.c:2027 +#: commands/publicationcmds.c:2032 #, c-format msgid "The owner of a FOR ALL TABLES publication must be a superuser." msgstr "El dueño de una publicación FOR ALL TABLES debe ser un superusuario." -#: commands/publicationcmds.c:2034 +#: commands/publicationcmds.c:2039 #, c-format msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser." msgstr "El dueño de una publicación FOR TABLES IN SCHEMA debe ser un superusuario." -#: commands/publicationcmds.c:2100 +#: commands/publicationcmds.c:2105 #, c-format msgid "publication with OID %u does not exist" msgstr "no existe la publicación con OID %u" -#: commands/publicationcmds.c:2133 +#: commands/publicationcmds.c:2138 #, fuzzy, c-format #| msgid "invalid value for parameter \"%s\": \"%s\"" msgid "invalid value for publication parameter \"%s\": \"%s\"" msgstr "valor no válido para el parámetro «%s»: «%s»" -#: commands/publicationcmds.c:2134 +#: commands/publicationcmds.c:2139 #, fuzzy, c-format #| msgid "Valid values are between \"%d\" and \"%d\"." msgid "Valid values are \"%s\" and \"%s\"." @@ -10495,83 +10462,83 @@ msgstr "sólo se permite una relación en CREATE STATISTICS" msgid "cannot define statistics for relation \"%s\"" msgstr "no se puede definir estadísticas para la relación «%s»" -#: commands/statscmds.c:187 +#: commands/statscmds.c:208 #, c-format msgid "statistics object \"%s\" already exists, skipping" msgstr "el objeto de estadísticas «%s» ya existe, omitiendo" -#: commands/statscmds.c:195 +#: commands/statscmds.c:216 #, c-format msgid "statistics object \"%s\" already exists" msgstr "el objeto de estadísticas «%s» ya existe" -#: commands/statscmds.c:206 +#: commands/statscmds.c:227 #, c-format msgid "cannot have more than %d columns in statistics" msgstr "no se puede tener más de %d columnas en estadísticas" -#: commands/statscmds.c:247 commands/statscmds.c:276 commands/statscmds.c:316 +#: commands/statscmds.c:268 commands/statscmds.c:297 commands/statscmds.c:337 #, c-format msgid "statistics creation on system columns is not supported" msgstr "la creación de estadísticas en columnas de sistema no está soportada" -#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#: commands/statscmds.c:274 commands/statscmds.c:303 commands/statscmds.c:343 #, fuzzy, c-format #| msgid "statistics creation on system columns is not supported" msgid "statistics creation on virtual generated columns is not supported" msgstr "la creación de estadísticas en columnas de sistema no está soportada" -#: commands/statscmds.c:260 commands/statscmds.c:289 +#: commands/statscmds.c:281 commands/statscmds.c:310 #, c-format msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class" msgstr "la columna «%s» no puede ser usado en estadísticas porque su tipo %s no tiene una clase de operadores por omisión para btree" -#: commands/statscmds.c:339 +#: commands/statscmds.c:360 #, c-format msgid "expression cannot be used in multivariate statistics because its type %s has no default btree operator class" msgstr "la expresión no puede ser usada en estadísticas multivariantes porque su tipo %s no tiene una clase de operadores por omisión para btree" -#: commands/statscmds.c:360 +#: commands/statscmds.c:381 #, c-format msgid "when building statistics on a single expression, statistics kinds may not be specified" msgstr "al crear estadísticas sobre una sola expresión, no se deben especificar tipos de estadísticas" -#: commands/statscmds.c:389 +#: commands/statscmds.c:410 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "tipo de estadísticas «%s» no reconocido" -#: commands/statscmds.c:418 +#: commands/statscmds.c:439 #, c-format msgid "extended statistics require at least 2 columns" msgstr "las estadísticas extendidas requieren al menos 2 columnas" -#: commands/statscmds.c:436 +#: commands/statscmds.c:457 #, c-format msgid "duplicate column name in statistics definition" msgstr "nombre de columna duplicado en definición de estadísticas" -#: commands/statscmds.c:471 +#: commands/statscmds.c:492 #, c-format msgid "duplicate expression in statistics definition" msgstr "expresión duplicada en definición de estadísticas" -#: commands/statscmds.c:646 commands/tablecmds.c:8939 +#: commands/statscmds.c:667 commands/tablecmds.c:8939 #, c-format msgid "statistics target %d is too low" msgstr "el valor de estadísticas %d es demasiado bajo" -#: commands/statscmds.c:654 commands/tablecmds.c:8947 +#: commands/statscmds.c:675 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "bajando el valor de estadísticas a %d" -#: commands/statscmds.c:678 +#: commands/statscmds.c:699 #, c-format msgid "statistics object \"%s.%s\" does not exist, skipping" msgstr "no existe el objeto de estadísticas «%s.%s», omitiendo" -#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:411 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:415 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "valor de origen no reconocido: «%s»" @@ -10789,7 +10756,7 @@ msgid "Verify that initial data copied from the publisher tables did not come fr msgstr "Verifique que los datos iniciales copiados desde el publicador no vinieron de otros orígenes." #: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 -#: replication/pgoutput/pgoutput.c:1185 +#: replication/pgoutput/pgoutput.c:1189 #, c-format msgid "cannot use different column lists for table \"%s.%s\" in different publications" msgstr "no se puede usar distintas listas de columnas para la tabla «%s.%s» en distintas publicaciones" @@ -11163,7 +11130,7 @@ msgid "column \"%s\" has a collation conflict" msgstr "la columna «%s» tiene conflicto de ordenamientos (collation)" #: commands/tablecmds.c:3282 commands/tablecmds.c:3448 -#: commands/tablecmds.c:7277 parser/parse_expr.c:4776 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4792 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "«%s» versus «%s»" @@ -11672,7 +11639,7 @@ msgstr "la llave foránea usa PERIOD en la tabla referente pero no en la tabla r #: commands/tablecmds.c:10217 #, c-format msgid "foreign key must use PERIOD when referencing a primary key using WITHOUT OVERLAPS" -msgstr "" +msgstr "una llave foránea debe usar PERIOD si hace referencia a una llave primaria que tenga WITHOUT OVERLAPS" #: commands/tablecmds.c:10241 commands/tablecmds.c:10247 #, c-format @@ -11722,7 +11689,7 @@ msgstr "Las columnas llave «%s» y «%s» son de tipos incompatibles: %s y %s" #: commands/tablecmds.c:10457 #, c-format msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table have incompatible collations: \"%s\" and \"%s\". If either collation is nondeterministic, then both collations have to be the same." -msgstr "" +msgstr "Las columnas llave «%s» de la tabla referenciante y «%s» de la tabla referenciada tienen ordenamientos incompatibles: «%s» y «%s». Si alguno de los ordenamientos es no determinístico, entonces ambos deben ser el mismo." #: commands/tablecmds.c:10663 #, c-format @@ -12853,8 +12820,8 @@ msgstr "no se puede recolectar tuplas de transición desde tablas foráneas hija #: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 #: executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 -#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 -#: executor/nodeModifyTable.c:3502 +#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3322 +#: executor/nodeModifyTable.c:3514 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "Considere usar un “trigger” AFTER en lugar de un “trigger” BEFORE para propagar cambios a otros registros." @@ -12868,23 +12835,23 @@ msgid "could not serialize access due to concurrent update" msgstr "no se pudo serializar el acceso debido a un update concurrente" #: commands/trigger.c:3452 executor/nodeModifyTable.c:1793 -#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2834 -#: executor/nodeModifyTable.c:3349 +#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2826 +#: executor/nodeModifyTable.c:3340 #, c-format msgid "could not serialize access due to concurrent delete" msgstr "no se pudo serializar el acceso debido a un delete concurrente" -#: commands/trigger.c:4687 +#: commands/trigger.c:4671 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "no se puede ejecutar un “trigger” postergado dentro de una operación restringida por seguridad" -#: commands/trigger.c:5868 +#: commands/trigger.c:5889 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "la restricción «%s» no es postergable" -#: commands/trigger.c:5891 +#: commands/trigger.c:5912 #, c-format msgid "constraint \"%s\" does not exist" msgstr "no existe la restricción «%s»" @@ -13671,117 +13638,107 @@ msgstr "existen privilegios dependientes" msgid "Use CASCADE to revoke them too." msgstr "Use CASCADE para revocarlos también." -#: commands/vacuum.c:147 +#: commands/vacuum.c:148 #, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "«%s» debe ser 0 o estar entre %d kB y %d kB." -#: commands/vacuum.c:223 +#: commands/vacuum.c:224 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "la opción BUFFER_USAGE_LIMIT debe ser 0 o estar entre %d kB y %d kB" -#: commands/vacuum.c:233 -#, c-format -msgid "unrecognized ANALYZE option \"%s\"" -msgstr "opción de ANALYZE «%s» no reconocida" - -#: commands/vacuum.c:273 +#: commands/vacuum.c:275 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "la opción parallel requiere un valor entre 0 y %d" -#: commands/vacuum.c:285 +#: commands/vacuum.c:287 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "el número de procesos paralelos para vacuum debe estar entre 0 y %d" -#: commands/vacuum.c:306 -#, c-format -msgid "unrecognized VACUUM option \"%s\"" -msgstr "opción de VACUUM «%s» no reconocida" - -#: commands/vacuum.c:332 +#: commands/vacuum.c:335 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL no puede ser ejecutado en paralelo" -#: commands/vacuum.c:343 +#: commands/vacuum.c:346 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "BUFFER_USAGE_LIMIT no puede ser especificado para VACUUM FULL" -#: commands/vacuum.c:357 +#: commands/vacuum.c:360 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "la opción ANALYZE debe especificarse cuando se provee una lista de columnas" -#: commands/vacuum.c:369 +#: commands/vacuum.c:372 #, c-format msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL" msgstr "la opción DISABLE_PAGE_SKIPPING de VACUUM no puede usarse con FULL" -#: commands/vacuum.c:376 +#: commands/vacuum.c:379 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "se requiere especificar PROCESS_TOAST al hacer VACUUM FULL" -#: commands/vacuum.c:385 +#: commands/vacuum.c:388 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables" msgstr "ONLY_DATABASE_STATS no se puede especificar con una lista de tablas" -#: commands/vacuum.c:394 +#: commands/vacuum.c:397 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STATS no puede ser especificada con otras opciones de VACUUM" -#: commands/vacuum.c:534 +#: commands/vacuum.c:537 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s no puede ejecutarse desde VACUUM o ANALYZE" -#: commands/vacuum.c:756 +#: commands/vacuum.c:759 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "permiso denegado a hacer vacuum a «%s», ignorando" -#: commands/vacuum.c:769 +#: commands/vacuum.c:772 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "se ha denegado el permiso para hacer analyze a «%s», ignorando" -#: commands/vacuum.c:847 commands/vacuum.c:948 +#: commands/vacuum.c:850 commands/vacuum.c:951 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "omitiendo el vacuum de «%s»: el “lock” no está disponible" -#: commands/vacuum.c:852 +#: commands/vacuum.c:855 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "omitiendo el vacuum de «%s» --- la relación ya no existe" -#: commands/vacuum.c:868 commands/vacuum.c:953 +#: commands/vacuum.c:871 commands/vacuum.c:956 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "omitiendo analyze de «%s»: el “lock” no está disponible" -#: commands/vacuum.c:873 +#: commands/vacuum.c:876 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "omitiendo analyze de «%s» --- la relación ya no existe" -#: commands/vacuum.c:989 +#: commands/vacuum.c:992 #, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" msgstr "VACUUM ONLY de la tabla particionada «%s» no tiene efecto" -#: commands/vacuum.c:1180 +#: commands/vacuum.c:1183 #, c-format msgid "cutoff for removing and freezing tuples is far in the past" msgstr "el punto de corte para eliminar y congelar tuplas es demasiado antiguo" -#: commands/vacuum.c:1181 commands/vacuum.c:1186 +#: commands/vacuum.c:1184 commands/vacuum.c:1189 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -13790,37 +13747,37 @@ msgstr "" "Cierre transaciones abiertas pronto para impedir problemas por “wraparound”.\n" "Puede que además necesite comprometer o abortar transacciones preparadas antiguas, o eliminar slots de replicación añejos." -#: commands/vacuum.c:1185 +#: commands/vacuum.c:1188 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "el punto de corte para congelar multixacts es demasiado antiguo" -#: commands/vacuum.c:1947 +#: commands/vacuum.c:1950 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "algunas bases de datos no han tenido VACUUM en más de 2 mil millones de transacciones" -#: commands/vacuum.c:1948 +#: commands/vacuum.c:1951 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "Puede haber sufrido ya problemas de pérdida de datos por “wraparound” del contador de transacciones." -#: commands/vacuum.c:2134 +#: commands/vacuum.c:2143 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "omitiendo «%s»: no se puede aplicar VACUUM a objetos que no son tablas o a tablas especiales de sistema" -#: commands/vacuum.c:2650 +#: commands/vacuum.c:2659 #, c-format msgid "scanned index \"%s\" to remove % row versions" msgstr "se recorrió el índice «%s» para eliminar % versiones de filas" -#: commands/vacuum.c:2669 +#: commands/vacuum.c:2678 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "el índice «%s» ahora contiene %.0f versiones de filas en %u páginas" -#: commands/vacuum.c:2673 +#: commands/vacuum.c:2682 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -14086,7 +14043,7 @@ msgstr "La consulta entrega un valor para una columna eliminada en la posición msgid "Table has type %s at ordinal position %d, but query expects %s." msgstr "La tabla tiene tipo %s en posición ordinal %d, pero la consulta esperaba %s." -#: executor/execExpr.c:1157 parser/parse_agg.c:869 +#: executor/execExpr.c:1157 parser/parse_agg.c:896 #, c-format msgid "window function calls cannot be nested" msgstr "no se pueden anidar llamadas a funciones de ventana deslizante" @@ -14115,12 +14072,12 @@ msgstr[1] "no se pueden pasar más de %d argumentos a una función" msgid "set-valued function called in context that cannot accept a set" msgstr "se llamó una función que retorna un conjunto en un contexto que no puede aceptarlo" -#: executor/execExpr.c:3262 parser/parse_node.c:272 parser/parse_node.c:322 +#: executor/execExpr.c:3264 parser/parse_node.c:272 parser/parse_node.c:322 #, c-format msgid "cannot subscript type %s because it does not support subscripting" msgstr "no se puede poner subíndices al tipo %s porque no soporta subíndices" -#: executor/execExpr.c:3390 executor/execExpr.c:3412 +#: executor/execExpr.c:3392 executor/execExpr.c:3414 #, c-format msgid "type %s does not support subscripted assignment" msgstr "el tipo %s no soporta asignación subindexada" @@ -14275,139 +14232,139 @@ msgstr "La llave está en conflicto con una llave existente." msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "valor vacío WITH OVERLAPS encontrado en la columna «%s» de relación «%s»" -#: executor/execMain.c:1085 +#: executor/execMain.c:1089 #, c-format msgid "cannot change sequence \"%s\"" msgstr "no se puede cambiar la secuencia «%s»" -#: executor/execMain.c:1091 +#: executor/execMain.c:1095 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "no se puede cambiar la relación TOAST «%s»" -#: executor/execMain.c:1110 +#: executor/execMain.c:1114 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "no se puede cambiar la vista materializada «%s»" -#: executor/execMain.c:1122 +#: executor/execMain.c:1126 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "no se puede insertar en la tabla foránea «%s»" -#: executor/execMain.c:1128 +#: executor/execMain.c:1132 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "la tabla foránea «%s» no permite inserciones" -#: executor/execMain.c:1135 +#: executor/execMain.c:1139 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "no se puede actualizar la tabla foránea «%s»" -#: executor/execMain.c:1141 +#: executor/execMain.c:1145 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "la tabla foránea «%s» no permite actualizaciones" -#: executor/execMain.c:1148 +#: executor/execMain.c:1152 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "no se puede eliminar desde la tabla foránea «%s»" -#: executor/execMain.c:1154 +#: executor/execMain.c:1158 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "la tabla foránea «%s» no permite eliminaciones" -#: executor/execMain.c:1165 +#: executor/execMain.c:1169 #, c-format msgid "cannot change relation \"%s\"" msgstr "no se puede cambiar la relación «%s»" -#: executor/execMain.c:1192 +#: executor/execMain.c:1196 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "no se puede bloquear registros de la secuencia «%s»" -#: executor/execMain.c:1199 +#: executor/execMain.c:1203 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "no se puede bloquear registros en la relación TOAST «%s»" -#: executor/execMain.c:1206 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "no se puede bloquear registros en la vista «%s»" -#: executor/execMain.c:1214 +#: executor/execMain.c:1218 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "no se puede bloquear registros en la vista materializada «%s»" -#: executor/execMain.c:1223 executor/execMain.c:2865 +#: executor/execMain.c:1227 executor/execMain.c:2869 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "no se puede bloquear registros en la tabla foránea «%s»" -#: executor/execMain.c:1229 +#: executor/execMain.c:1233 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "no se puede bloquear registros en la tabla «%s»" -#: executor/execMain.c:1962 +#: executor/execMain.c:1966 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "el nuevo registro para la relación «%s» viola la restricción de partición" -#: executor/execMain.c:1964 executor/execMain.c:2076 executor/execMain.c:2214 -#: executor/execMain.c:2322 +#: executor/execMain.c:1968 executor/execMain.c:2080 executor/execMain.c:2218 +#: executor/execMain.c:2326 #, c-format msgid "Failing row contains %s." msgstr "La fila que falla contiene %s." -#: executor/execMain.c:2074 +#: executor/execMain.c:2078 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "el nuevo registro para la relación «%s» viola la restricción «check» «%s»" -#: executor/execMain.c:2211 +#: executor/execMain.c:2215 #, c-format msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "el valor nulo en la columna «%s» de la relación «%s» viola la restricción “not-null”" -#: executor/execMain.c:2320 +#: executor/execMain.c:2324 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "el nuevo registro para la vista «%s» viola la opción check" -#: executor/execMain.c:2330 +#: executor/execMain.c:2334 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "el nuevo registro viola la política de seguridad de registros «%s» para la tabla «%s»" -#: executor/execMain.c:2335 +#: executor/execMain.c:2339 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "el nuevo registro viola la política de seguridad de registros para la tabla «%s»" -#: executor/execMain.c:2343 +#: executor/execMain.c:2347 #, c-format msgid "target row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "el registro destino viola la política de seguridad de registros «%s» (expresión USING) para la tabla «%s»" -#: executor/execMain.c:2348 +#: executor/execMain.c:2352 #, c-format msgid "target row violates row-level security policy (USING expression) for table \"%s\"" msgstr "el registro destino viola la política de seguridad de registros (expresión USING) para la tabla «%s»" -#: executor/execMain.c:2355 +#: executor/execMain.c:2359 #, c-format msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "el nuevo registro viola la política de seguridad de registros «%s» (expresión USING) para la tabla «%s»" -#: executor/execMain.c:2360 +#: executor/execMain.c:2364 #, c-format msgid "new row violates row-level security policy (USING expression) for table \"%s\"" msgstr "el nuevo registro viola la política de seguridad de registros (expresión USING) para la tabla «%s»" @@ -14642,7 +14599,7 @@ msgstr "el tipo de retorno %s no es soportado en funciones SQL" msgid "aggregate %u needs to have compatible input type and transition type" msgstr "la función de agregación %u necesita tener tipos de entrada y transición compatibles" -#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:692 parser/parse_agg.c:735 #, c-format msgid "aggregate function calls cannot be nested" msgstr "no se pueden anidar llamadas a funciones de agregación" @@ -14723,8 +14680,8 @@ msgid "Consider defining the foreign key on table \"%s\"." msgstr "Considere definir una llave foránea en la tabla «%s»." #. translator: %s is a SQL command name -#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 -#: executor/nodeModifyTable.c:3508 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3328 +#: executor/nodeModifyTable.c:3520 #, c-format msgid "%s command cannot affect row a second time" msgstr "la orden %s no puede afectar una fila por segunda vez" @@ -14734,17 +14691,17 @@ msgstr "la orden %s no puede afectar una fila por segunda vez" msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values." msgstr "Asegúrese de que ningún registro propuesto para inserción dentro de la misma orden tenga valores duplicados restringidos." -#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 +#: executor/nodeModifyTable.c:3321 executor/nodeModifyTable.c:3513 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "la tupla a ser actualizada o borrada ya fue modificada por una operación disparada por la orden actual" -#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3522 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "Asegúrese que no más de un registro de origen coincide con cada registro de destino." -#: executor/nodeModifyTable.c:3408 +#: executor/nodeModifyTable.c:3399 #, c-format msgid "tuple to be merged was already moved to another partition due to concurrent update" msgstr "la tupla a ser mezclada ya fue movida a otra partición por un update concurrente" @@ -14907,7 +14864,7 @@ msgstr "no se pudo enviar la tupla a la cola en memoria compartida" msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "no se encontró un mapeo para el usuario «%s», servidor «%s»" -#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7299 #: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" @@ -15030,17 +14987,17 @@ msgstr "El mensaje contiene un par llave/valor sin terminar." #: libpq/auth-oauth.c:439 #, c-format msgid "Message contains a key without a value." -msgstr "" +msgstr "El mensaje contiene una llave sin un valor." #: libpq/auth-oauth.c:453 #, c-format msgid "Message contains multiple auth values." -msgstr "" +msgstr "El mensaje contiene múltiples valores «auth»." #: libpq/auth-oauth.c:473 #, c-format msgid "Message did not contain a final terminator." -msgstr "" +msgstr "El mensaje no contiene un terminador final." #: libpq/auth-oauth.c:499 #, fuzzy, c-format @@ -15051,7 +15008,7 @@ msgstr "unidad «%s» no reconocida para el tipo %s" #: libpq/auth-oauth.c:500 #, c-format msgid "The issuer and scope parameters must be set in pg_hba.conf." -msgstr "" +msgstr "Los parámetros emisor y “scope” deben estar definidos en pg_hba.conf." #: libpq/auth-oauth.c:585 libpq/auth-oauth.c:602 libpq/auth-oauth.c:624 #, fuzzy, c-format @@ -15074,17 +15031,17 @@ msgstr "El búfer de consulta está vacío." #: libpq/auth-oauth.c:625 #, c-format msgid "Bearer token is not in the correct format." -msgstr "" +msgstr "E" #: libpq/auth-oauth.c:656 #, c-format msgid "validation of OAuth token requested without a validator loaded" -msgstr "" +msgstr "se solicitó validación de “token” OAuth sin haber cargado un validador" #: libpq/auth-oauth.c:665 #, c-format msgid "internal error in OAuth validator module" -msgstr "" +msgstr "error interno en el módulo validador OAuth" #: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:302 #, fuzzy, c-format @@ -15093,14 +15050,14 @@ msgid "OAuth bearer authentication failed for user \"%s\"" msgstr "la autentificación Peer falló para el usuario «%s»" #: libpq/auth-oauth.c:681 -#, c-format +#, fuzzy, c-format msgid "Validator failed to authorize the provided token." -msgstr "" +msgstr "El validador " #: libpq/auth-oauth.c:705 #, c-format msgid "Validator provided no identity." -msgstr "" +msgstr "El validador no proveyó una identidad." #: libpq/auth-oauth.c:760 #, fuzzy, c-format @@ -15117,7 +15074,7 @@ msgstr "biblioteca «%s» incompatible: bloque mágico no coincide" #: libpq/auth-oauth.c:775 #, c-format msgid "Server has magic number 0x%08X, module has 0x%08X." -msgstr "" +msgstr "El servidor tiene número mágico 0x%08X, el módulo tiene 0x%08X." #: libpq/auth-oauth.c:784 #, fuzzy, c-format @@ -16433,7 +16390,7 @@ msgstr "opción de autentificación en formato nombre=valor: %s" #: libpq/hba.c:1918 #, c-format msgid "cannot mix options for simple bind and search+bind modes" -msgstr "" +msgstr "no se pueden mezclar opciones para los modos de “bind simple” y “search+bind”" #: libpq/hba.c:1929 #, c-format @@ -17083,7 +17040,7 @@ msgstr "la relación «%s» no tiene un tipo compuesto" #: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2602 #: parser/parse_coerce.c:2740 parser/parse_coerce.c:2787 -#: parser/parse_expr.c:2121 parser/parse_func.c:710 parser/parse_oper.c:869 +#: parser/parse_expr.c:2130 parser/parse_func.c:710 parser/parse_oper.c:869 #: utils/adt/array_userfuncs.c:1950 utils/fmgr/funcapi.c:669 #, c-format msgid "could not find array type for data type %s" @@ -17104,8 +17061,8 @@ msgstr "portal sin nombre con parámetros: %s" msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "FULL JOIN sólo está soportado con condiciones que se pueden usar con merge join o hash join" -#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7321 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1692 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "no se puede ejecutar MERGE en la relación «%s»" @@ -17123,38 +17080,38 @@ msgstr "%s no puede ser aplicado al lado nulable de un outer join" msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s no está permitido con UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2257 optimizer/plan/planner.c:4143 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 #, c-format msgid "could not implement GROUP BY" msgstr "no se pudo implementar GROUP BY" -#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 -#: optimizer/plan/planner.c:4825 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2259 optimizer/plan/planner.c:4145 +#: optimizer/plan/planner.c:4826 optimizer/prep/prepunion.c:1073 #, c-format msgid "Some of the datatypes only support hashing, while others only support sorting." msgstr "Algunos de los tipos sólo soportan hashing, mientras que otros sólo soportan ordenamiento." -#: optimizer/plan/planner.c:4824 +#: optimizer/plan/planner.c:4825 #, c-format msgid "could not implement DISTINCT" msgstr "no se pudo implementar DISTINCT" -#: optimizer/plan/planner.c:6286 +#: optimizer/plan/planner.c:6322 #, c-format msgid "could not implement window PARTITION BY" msgstr "No se pudo implementar PARTITION BY de ventana" -#: optimizer/plan/planner.c:6287 +#: optimizer/plan/planner.c:6323 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Las columnas de particionamiento de ventana deben de tipos que se puedan ordenar." -#: optimizer/plan/planner.c:6291 +#: optimizer/plan/planner.c:6327 #, c-format msgid "could not implement window ORDER BY" msgstr "no se pudo implementar ORDER BY de ventana" -#: optimizer/plan/planner.c:6292 +#: optimizer/plan/planner.c:6328 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Las columnas de ordenamiento de ventana debe ser de tipos que se puedan ordenar." @@ -17185,7 +17142,7 @@ msgstr "el atributo «%s» de la relación «%s» no coincide con el tipo del pa msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" msgstr "el atributo «%s» de la relación «%s» no coincide con el ordenamiento (collation) de la relación padre" -#: optimizer/util/clauses.c:4968 +#: optimizer/util/clauses.c:4965 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "función SQL «%s», durante expansión en línea" @@ -17446,331 +17403,341 @@ msgstr "%s no puede ser aplicado a un «tuplestore» con nombre" msgid "relation \"%s\" in %s clause not found in FROM clause" msgstr "la relación «%s» en la cláusula %s no fue encontrada en la cláusula FROM" -#: parser/parse_agg.c:215 parser/parse_oper.c:215 +#: parser/parse_agg.c:218 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" msgstr "no se pudo identificar un operador de ordenamiento para el tipo %s" -#: parser/parse_agg.c:217 +#: parser/parse_agg.c:220 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "Las funciones de agregación con DISTINCT deben ser capaces de ordenar sus valores de entrada." -#: parser/parse_agg.c:275 +#: parser/parse_agg.c:278 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPING debe tener menos de 32 argumentos" -#: parser/parse_agg.c:378 +#: parser/parse_agg.c:382 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "no se permiten funciones de agregación en las condiciones de JOIN" -#: parser/parse_agg.c:380 +#: parser/parse_agg.c:384 msgid "grouping operations are not allowed in JOIN conditions" msgstr "no se permiten las operaciones «grouping» en condiciones JOIN" -#: parser/parse_agg.c:390 +#: parser/parse_agg.c:394 msgid "aggregate functions are not allowed in FROM clause of their own query level" msgstr "las funciones de agregación no están permitidas en la cláusula FROM de su mismo nivel de consulta" -#: parser/parse_agg.c:392 +#: parser/parse_agg.c:396 msgid "grouping operations are not allowed in FROM clause of their own query level" msgstr "las operaciones «grouping» no están permitidas en la cláusula FROM de su mismo nivel de consulta" -#: parser/parse_agg.c:397 +#: parser/parse_agg.c:401 msgid "aggregate functions are not allowed in functions in FROM" msgstr "no se permiten funciones de agregación en una función en FROM" -#: parser/parse_agg.c:399 +#: parser/parse_agg.c:403 msgid "grouping operations are not allowed in functions in FROM" msgstr "no se permiten operaciones «grouping» en funciones en FROM" -#: parser/parse_agg.c:407 +#: parser/parse_agg.c:411 msgid "aggregate functions are not allowed in policy expressions" msgstr "no se permiten funciones de agregación en expresiones de políticas" -#: parser/parse_agg.c:409 +#: parser/parse_agg.c:413 msgid "grouping operations are not allowed in policy expressions" msgstr "no se permiten operaciones «grouping» en expresiones de políticas" -#: parser/parse_agg.c:426 +#: parser/parse_agg.c:430 msgid "aggregate functions are not allowed in window RANGE" msgstr "no se permiten funciones de agregación en RANGE de ventana deslizante" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:432 msgid "grouping operations are not allowed in window RANGE" msgstr "no se permiten operaciones «grouping» en RANGE de ventana deslizante" -#: parser/parse_agg.c:433 +#: parser/parse_agg.c:437 msgid "aggregate functions are not allowed in window ROWS" msgstr "no se permiten funciones de agregación en ROWS de ventana deslizante" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:439 msgid "grouping operations are not allowed in window ROWS" msgstr "no se permiten operaciones «grouping» en ROWS de ventana deslizante" -#: parser/parse_agg.c:440 +#: parser/parse_agg.c:444 msgid "aggregate functions are not allowed in window GROUPS" msgstr "no se permiten funciones de agregación en GROUPS de ventana deslizante" -#: parser/parse_agg.c:442 +#: parser/parse_agg.c:446 msgid "grouping operations are not allowed in window GROUPS" msgstr "no se permiten operaciones «grouping» en GROUPS de ventana deslizante" -#: parser/parse_agg.c:455 +#: parser/parse_agg.c:459 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "no se permiten funciones de agregación en condiciones MERGE WHEN" -#: parser/parse_agg.c:457 +#: parser/parse_agg.c:461 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "no se permiten operaciones «grouping» en condiciones MERGE WHEN" -#: parser/parse_agg.c:484 +#: parser/parse_agg.c:488 msgid "aggregate functions are not allowed in check constraints" msgstr "no se permiten funciones de agregación en restricciones «check»" -#: parser/parse_agg.c:486 +#: parser/parse_agg.c:490 msgid "grouping operations are not allowed in check constraints" msgstr "no se permiten operaciones «grouping» en restricciones «check»" -#: parser/parse_agg.c:493 +#: parser/parse_agg.c:497 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "no se permiten funciones de agregación en expresiones DEFAULT" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:499 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "no se permiten operaciones «grouping» en expresiones DEFAULT" -#: parser/parse_agg.c:500 +#: parser/parse_agg.c:504 msgid "aggregate functions are not allowed in index expressions" msgstr "no se permiten funciones de agregación en una expresión de índice" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:506 msgid "grouping operations are not allowed in index expressions" msgstr "no se permiten operaciones «grouping» en expresiones de índice" -#: parser/parse_agg.c:507 +#: parser/parse_agg.c:511 msgid "aggregate functions are not allowed in index predicates" msgstr "no se permiten funciones de agregación en predicados de índice" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:513 msgid "grouping operations are not allowed in index predicates" msgstr "no se permiten operaciones «grouping» en predicados de índice" -#: parser/parse_agg.c:514 +#: parser/parse_agg.c:518 msgid "aggregate functions are not allowed in statistics expressions" msgstr "no se permiten funciones de agregación en expresiones de estadísticas" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:520 msgid "grouping operations are not allowed in statistics expressions" msgstr "no se permiten operaciones «grouping» en expresiones de estadísticas" -#: parser/parse_agg.c:521 +#: parser/parse_agg.c:525 msgid "aggregate functions are not allowed in transform expressions" msgstr "no se permiten funciones de agregación en una expresión de transformación" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:527 msgid "grouping operations are not allowed in transform expressions" msgstr "no se permiten operaciones «grouping» en expresiones de transformación" -#: parser/parse_agg.c:528 +#: parser/parse_agg.c:532 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "no se permiten funciones de agregación en un parámetro a EXECUTE" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:534 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "no se permiten operaciones «grouping» en parámetros a EXECUTE" -#: parser/parse_agg.c:535 +#: parser/parse_agg.c:539 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "no se permiten funciones de agregación en condición WHEN de un “trigger”" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:541 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "no se permiten operaciones «grouping» en condiciones WHEN de un “trigger”" -#: parser/parse_agg.c:542 +#: parser/parse_agg.c:546 msgid "aggregate functions are not allowed in partition bound" msgstr "no se permiten funciones de agregación en borde de partición" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:548 msgid "grouping operations are not allowed in partition bound" msgstr "no se permiten operaciones «grouping» en borde de partición" -#: parser/parse_agg.c:549 +#: parser/parse_agg.c:553 msgid "aggregate functions are not allowed in partition key expressions" msgstr "no se permiten funciones de agregación en una expresión de llave de particionamiento" -#: parser/parse_agg.c:551 +#: parser/parse_agg.c:555 msgid "grouping operations are not allowed in partition key expressions" msgstr "no se permiten operaciones «grouping» en expresiones de llave de particionamiento" -#: parser/parse_agg.c:557 +#: parser/parse_agg.c:561 msgid "aggregate functions are not allowed in column generation expressions" msgstr "no se permiten funciones de agregación en expresiones de generación de columna" -#: parser/parse_agg.c:559 +#: parser/parse_agg.c:563 msgid "grouping operations are not allowed in column generation expressions" msgstr "no se permiten operaciones «grouping» en expresiones de generación de columna" -#: parser/parse_agg.c:565 +#: parser/parse_agg.c:569 msgid "aggregate functions are not allowed in CALL arguments" msgstr "no se permiten funciones de agregación en argumentos de CALL" -#: parser/parse_agg.c:567 +#: parser/parse_agg.c:571 msgid "grouping operations are not allowed in CALL arguments" msgstr "no se permiten operaciones «grouping» en argumentos de CALL" -#: parser/parse_agg.c:573 +#: parser/parse_agg.c:577 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "no se permiten funciones de agregación en las condiciones WHERE de COPY FROM" -#: parser/parse_agg.c:575 +#: parser/parse_agg.c:579 msgid "grouping operations are not allowed in COPY FROM WHERE conditions" msgstr "no se permiten las operaciones «grouping» en condiciones WHERE de COPY FROM" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:602 parser/parse_clause.c:1962 +#: parser/parse_agg.c:606 parser/parse_clause.c:1962 #, c-format msgid "aggregate functions are not allowed in %s" msgstr "no se permiten funciones de agregación en %s" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:605 +#: parser/parse_agg.c:609 #, c-format msgid "grouping operations are not allowed in %s" msgstr "no se permiten operaciones «grouping» en %s" -#: parser/parse_agg.c:706 +#: parser/parse_agg.c:705 parser/parse_agg.c:742 +#, c-format +msgid "outer-level aggregate cannot use a nested CTE" +msgstr "una función de agregación de nivel externo no puede usar un CTE anidado" + +#: parser/parse_agg.c:706 parser/parse_agg.c:743 +#, c-format +msgid "CTE \"%s\" is below the aggregate's semantic level." +msgstr "El CTE «%s» está debajo del nivel semántico de la función de agregación." + +#: parser/parse_agg.c:728 #, c-format msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments" msgstr "una función de agregación de nivel exterior no puede contener una variable de nivel inferior en sus argumentos directos" -#: parser/parse_agg.c:784 +#: parser/parse_agg.c:813 #, c-format msgid "aggregate function calls cannot contain set-returning function calls" msgstr "las llamadas a funciones de agregación no pueden contener llamadas a funciones que retornan conjuntos" -#: parser/parse_agg.c:785 parser/parse_expr.c:1763 parser/parse_expr.c:2256 +#: parser/parse_agg.c:814 parser/parse_expr.c:1772 parser/parse_expr.c:2265 #: parser/parse_func.c:885 #, c-format msgid "You might be able to move the set-returning function into a LATERAL FROM item." msgstr "Puede intentar mover la función que retorna conjuntos a un elemento LATERAL FROM." -#: parser/parse_agg.c:790 +#: parser/parse_agg.c:819 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "las llamadas a funciones de agregación no pueden contener llamadas a funciones de ventana deslizante" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:922 msgid "window functions are not allowed in JOIN conditions" msgstr "no se permiten funciones de ventana deslizante en condiciones JOIN" -#: parser/parse_agg.c:902 +#: parser/parse_agg.c:929 msgid "window functions are not allowed in functions in FROM" msgstr "no se permiten funciones de ventana deslizante en funciones en FROM" -#: parser/parse_agg.c:908 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in policy expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones de políticas" -#: parser/parse_agg.c:921 +#: parser/parse_agg.c:948 msgid "window functions are not allowed in window definitions" msgstr "no se permiten funciones de ventana deslizante en definiciones de ventana deslizante" -#: parser/parse_agg.c:932 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "no se permiten funciones de ventana deslizante en condiciones MERGE WHEN" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:984 msgid "window functions are not allowed in check constraints" msgstr "no se permiten funciones de ventana deslizante en restricciones «check»" -#: parser/parse_agg.c:961 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in DEFAULT expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones DEFAULT" -#: parser/parse_agg.c:964 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in index expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones de índice" -#: parser/parse_agg.c:967 +#: parser/parse_agg.c:994 msgid "window functions are not allowed in statistics expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones de estadísticas" -#: parser/parse_agg.c:970 +#: parser/parse_agg.c:997 msgid "window functions are not allowed in index predicates" msgstr "no se permiten funciones de ventana deslizante en predicados de índice" -#: parser/parse_agg.c:973 +#: parser/parse_agg.c:1000 msgid "window functions are not allowed in transform expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones de transformación" -#: parser/parse_agg.c:976 +#: parser/parse_agg.c:1003 msgid "window functions are not allowed in EXECUTE parameters" msgstr "no se permiten funciones de ventana deslizante en parámetros a EXECUTE" -#: parser/parse_agg.c:979 +#: parser/parse_agg.c:1006 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "no se permiten funciones de ventana deslizante en condiciones WHEN de un “trigger”" -#: parser/parse_agg.c:982 +#: parser/parse_agg.c:1009 msgid "window functions are not allowed in partition bound" msgstr "no se permiten funciones de ventana deslizante en borde de partición" -#: parser/parse_agg.c:985 +#: parser/parse_agg.c:1012 msgid "window functions are not allowed in partition key expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones de llave de particionamiento" -#: parser/parse_agg.c:988 +#: parser/parse_agg.c:1015 msgid "window functions are not allowed in CALL arguments" msgstr "no se permiten funciones de ventana deslizante en argumentos de CALL" -#: parser/parse_agg.c:991 +#: parser/parse_agg.c:1018 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "no se permiten funciones de ventana deslizante en las condiciones WHERE de COPY FROM" -#: parser/parse_agg.c:994 +#: parser/parse_agg.c:1021 msgid "window functions are not allowed in column generation expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones de generación de columna" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:1017 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1044 parser/parse_clause.c:1971 #, c-format msgid "window functions are not allowed in %s" msgstr "no se permiten funciones de ventana deslizante en %s" -#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1078 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "la ventana «%s» no existe" -#: parser/parse_agg.c:1141 +#: parser/parse_agg.c:1168 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "demasiados conjuntos «grouping» presentes (máximo 4096)" -#: parser/parse_agg.c:1302 +#: parser/parse_agg.c:1329 #, c-format msgid "aggregate functions are not allowed in a recursive query's recursive term" msgstr "no se permiten funciones de agregación en el término recursivo de una consulta recursiva" -#: parser/parse_agg.c:1525 +#: parser/parse_agg.c:1552 #, c-format msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function" msgstr "la columna «%s.%s» debe aparecer en la cláusula GROUP BY o ser usada en una función de agregación" -#: parser/parse_agg.c:1528 +#: parser/parse_agg.c:1555 #, c-format msgid "Direct arguments of an ordered-set aggregate must use only grouped columns." msgstr "Argumentos directos de una función de agregación de conjuntos ordenados debe usar sólo columnas agrupadas." -#: parser/parse_agg.c:1533 +#: parser/parse_agg.c:1560 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "la subconsulta usa la columna «%s.%s» no agrupada de una consulta exterior" -#: parser/parse_agg.c:1698 +#: parser/parse_agg.c:1725 #, c-format msgid "arguments to GROUPING must be grouping expressions of the associated query level" msgstr "los argumentos de GROUPING deben ser expresiones agrupantes del nivel de consulta asociado" @@ -18048,8 +18015,8 @@ msgstr "Convierta el valor de desplazamiento al tipo deseado exacto." #: parser/parse_coerce.c:1048 parser/parse_coerce.c:1086 #: parser/parse_coerce.c:1104 parser/parse_coerce.c:1119 -#: parser/parse_expr.c:2155 parser/parse_expr.c:2775 parser/parse_expr.c:3426 -#: parser/parse_expr.c:3655 parser/parse_target.c:1001 +#: parser/parse_expr.c:2164 parser/parse_expr.c:2784 parser/parse_expr.c:3435 +#: parser/parse_expr.c:3664 parser/parse_target.c:1001 #, c-format msgid "cannot cast type %s to %s" msgstr "no se puede convertir el tipo %s a %s" @@ -18442,273 +18409,273 @@ msgid "there is no parameter $%d" msgstr "no hay parámetro $%d" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1102 parser/parse_expr.c:3086 +#: parser/parse_expr.c:1102 parser/parse_expr.c:3095 #, c-format msgid "%s requires = operator to yield boolean" msgstr "%s requiere que el operador = retorne boolean" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1108 parser/parse_expr.c:3093 +#: parser/parse_expr.c:1108 parser/parse_expr.c:3102 #, c-format msgid "%s must not return a set" msgstr "%s no debe retornar un conjunto" -#: parser/parse_expr.c:1396 +#: parser/parse_expr.c:1405 #, c-format msgid "MERGE_ACTION() can only be used in the RETURNING list of a MERGE command" msgstr "MERGE_ACTION() sólo puede usarse en la lista RETURNING de una orden MERGE" -#: parser/parse_expr.c:1520 parser/parse_expr.c:1552 +#: parser/parse_expr.c:1529 parser/parse_expr.c:1561 #, c-format msgid "number of columns does not match number of values" msgstr "el número de columnas no coincide con el número de valores" -#: parser/parse_expr.c:1566 +#: parser/parse_expr.c:1575 #, c-format msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() expression" msgstr "el origen para un UPDATE de varias columnas debe ser una expresión sub-SELECT o ROW ()" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_expr.c:1761 parser/parse_expr.c:2254 parser/parse_func.c:2679 +#: parser/parse_expr.c:1770 parser/parse_expr.c:2263 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "no se permiten funciones que retornan conjuntos en %s" -#: parser/parse_expr.c:1825 +#: parser/parse_expr.c:1834 msgid "cannot use subquery in check constraint" msgstr "no se pueden usar subconsultas en una restricción «check»" -#: parser/parse_expr.c:1829 +#: parser/parse_expr.c:1838 msgid "cannot use subquery in DEFAULT expression" msgstr "no se puede usar una subconsulta en una expresión DEFAULT" -#: parser/parse_expr.c:1832 +#: parser/parse_expr.c:1841 msgid "cannot use subquery in index expression" msgstr "no se puede usar una subconsulta en una expresión de índice" -#: parser/parse_expr.c:1835 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in index predicate" msgstr "no se puede usar una subconsulta en un predicado de índice" -#: parser/parse_expr.c:1838 +#: parser/parse_expr.c:1847 msgid "cannot use subquery in statistics expression" msgstr "no se puede usar una subconsulta en una expresión de estadísticas" -#: parser/parse_expr.c:1841 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in transform expression" msgstr "no se puede usar una subconsulta en una expresión de transformación" -#: parser/parse_expr.c:1844 +#: parser/parse_expr.c:1853 msgid "cannot use subquery in EXECUTE parameter" msgstr "no se puede usar una subconsulta en un parámetro a EXECUTE" -#: parser/parse_expr.c:1847 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in trigger WHEN condition" msgstr "no se puede usar una subconsulta en la condición WHEN de un “trigger”" -#: parser/parse_expr.c:1850 +#: parser/parse_expr.c:1859 msgid "cannot use subquery in partition bound" msgstr "no se puede usar una subconsulta en un borde de partición" -#: parser/parse_expr.c:1853 +#: parser/parse_expr.c:1862 msgid "cannot use subquery in partition key expression" msgstr "no se puede usar una subconsulta en una expresión de llave de partición" -#: parser/parse_expr.c:1856 +#: parser/parse_expr.c:1865 msgid "cannot use subquery in CALL argument" msgstr "no se puede usar una subconsulta en un argumento a CALL" -#: parser/parse_expr.c:1859 +#: parser/parse_expr.c:1868 msgid "cannot use subquery in COPY FROM WHERE condition" msgstr "no se puede usar una subconsulta en la condición WHERE de COPY FROM" -#: parser/parse_expr.c:1862 +#: parser/parse_expr.c:1871 msgid "cannot use subquery in column generation expression" msgstr "no se puede usar una subconsulta en una expresión de generación de columna" -#: parser/parse_expr.c:1915 parser/parse_expr.c:3785 +#: parser/parse_expr.c:1924 parser/parse_expr.c:3794 #, c-format msgid "subquery must return only one column" msgstr "la subconsulta debe retornar sólo una columna" -#: parser/parse_expr.c:1986 +#: parser/parse_expr.c:1995 #, c-format msgid "subquery has too many columns" msgstr "la subconsulta tiene demasiadas columnas" -#: parser/parse_expr.c:1991 +#: parser/parse_expr.c:2000 #, c-format msgid "subquery has too few columns" msgstr "la subconsulta tiene muy pocas columnas" -#: parser/parse_expr.c:2095 +#: parser/parse_expr.c:2104 #, c-format msgid "cannot determine type of empty array" msgstr "no se puede determinar el tipo de un array vacío" -#: parser/parse_expr.c:2096 +#: parser/parse_expr.c:2105 #, c-format msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]." msgstr "Agregue una conversión de tipo explícita al tipo deseado, por ejemplo ARRAY[]::integer[]." -#: parser/parse_expr.c:2110 +#: parser/parse_expr.c:2119 #, c-format msgid "could not find element type for data type %s" msgstr "no se pudo encontrar el tipo de dato de elemento para el tipo de dato %s" -#: parser/parse_expr.c:2195 +#: parser/parse_expr.c:2204 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "las expresiones ROW pueden tener a lo más %d entradas" -#: parser/parse_expr.c:2400 +#: parser/parse_expr.c:2409 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "el valor del atributo XML sin nombre debe ser una referencia a una columna" -#: parser/parse_expr.c:2401 +#: parser/parse_expr.c:2410 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "el valor del elemento XML sin nombre debe ser una referencia a una columna" -#: parser/parse_expr.c:2416 +#: parser/parse_expr.c:2425 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "el nombre de atributo XML «%s» aparece más de una vez" -#: parser/parse_expr.c:2524 +#: parser/parse_expr.c:2533 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "no se puede convertir el resultado de XMLSERIALIZE a %s" -#: parser/parse_expr.c:2848 parser/parse_expr.c:3044 +#: parser/parse_expr.c:2857 parser/parse_expr.c:3053 #, c-format msgid "unequal number of entries in row expressions" msgstr "número desigual de entradas en expresiones de registro" -#: parser/parse_expr.c:2858 +#: parser/parse_expr.c:2867 #, c-format msgid "cannot compare rows of zero length" msgstr "no se pueden comparar registros de largo cero" -#: parser/parse_expr.c:2883 +#: parser/parse_expr.c:2892 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "el operador de comparación de registros debe retornar tipo boolean, no tipo %s" -#: parser/parse_expr.c:2890 +#: parser/parse_expr.c:2899 #, c-format msgid "row comparison operator must not return a set" msgstr "el operador de comparación de registros no puede retornar un conjunto" -#: parser/parse_expr.c:2949 parser/parse_expr.c:2990 +#: parser/parse_expr.c:2958 parser/parse_expr.c:2999 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "no se pudo determinar la interpretación del operador de comparación de registros %s" -#: parser/parse_expr.c:2951 +#: parser/parse_expr.c:2960 #, c-format msgid "Row comparison operators must be associated with btree operator families." msgstr "Los operadores de comparación de registros deben estar asociados a una familia de operadores btree." -#: parser/parse_expr.c:2992 +#: parser/parse_expr.c:3001 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Hay múltiples candidatos igualmente plausibles." -#: parser/parse_expr.c:3327 +#: parser/parse_expr.c:3336 #, c-format msgid "JSON ENCODING clause is only allowed for bytea input type" msgstr "la cláusula ENCODING de JSON sólo está permitida para el tipo de entrada bytea" -#: parser/parse_expr.c:3391 +#: parser/parse_expr.c:3400 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" msgstr "no se puede usar tipos que no son string con la cláusula implícita FORMAT JSON" -#: parser/parse_expr.c:3392 +#: parser/parse_expr.c:3401 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" msgstr "no se puede usar tipos que no son string con la cláusula explítica FORMAT JSON" -#: parser/parse_expr.c:3481 +#: parser/parse_expr.c:3490 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "no se puede usar formato JSON con tipos de salida que no son string" -#: parser/parse_expr.c:3494 +#: parser/parse_expr.c:3503 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "no se puede definir codificación JSON para tipos de salida que no sea bytea" -#: parser/parse_expr.c:3499 +#: parser/parse_expr.c:3508 #, c-format msgid "unsupported JSON encoding" msgstr "codificación JSON no soportada" -#: parser/parse_expr.c:3500 +#: parser/parse_expr.c:3509 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Sólo la codificación JSON UTF8 está soportada." -#: parser/parse_expr.c:3537 +#: parser/parse_expr.c:3546 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "retornar tipos SETOF no está soportado en funciones SQL/JSON" -#: parser/parse_expr.c:3542 +#: parser/parse_expr.c:3551 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" msgstr "retornar pseudo-tipos no está soportado en funciones SQL/JSON" -#: parser/parse_expr.c:3870 parser/parse_func.c:866 +#: parser/parse_expr.c:3879 parser/parse_func.c:866 #, c-format msgid "aggregate ORDER BY is not implemented for window functions" msgstr "el ORDER BY de funciones de agregación no está implementado para funciones de ventana deslizante" -#: parser/parse_expr.c:4093 +#: parser/parse_expr.c:4102 #, c-format msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types" msgstr "no se puede usar la cláusula FORMAT ENCODING de JSON para tipos de entrada que no son bytea" -#: parser/parse_expr.c:4113 +#: parser/parse_expr.c:4122 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "no se puede tipo %s en predicado IS JSON" -#: parser/parse_expr.c:4139 parser/parse_expr.c:4260 +#: parser/parse_expr.c:4148 parser/parse_expr.c:4269 #, c-format msgid "cannot use type %s in RETURNING clause of %s" msgstr "no se puede usar el tipo %s en la cláusula RETURNING de %s" -#: parser/parse_expr.c:4141 +#: parser/parse_expr.c:4150 #, c-format msgid "Try returning json or jsonb." msgstr "Intente retornando tipo json o jsonb." -#: parser/parse_expr.c:4189 +#: parser/parse_expr.c:4198 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" msgstr "no se puede usar tipos que no sean strings con cláusula WITH UNIQUE KEYS" -#: parser/parse_expr.c:4263 +#: parser/parse_expr.c:4272 #, c-format msgid "Try returning a string type or bytea." msgstr "Intente retornando un tipo de string o bytea." -#: parser/parse_expr.c:4328 +#: parser/parse_expr.c:4340 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "no se puede especificar FORMAT JSON en la cláusula RETURNING de %s()" -#: parser/parse_expr.c:4341 +#: parser/parse_expr.c:4353 #, c-format msgid "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" msgstr "el comportamiento QUOTES de SQL/JSON no debe ser especificado cuando se usa WITH WRAPPER" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4355 parser/parse_expr.c:4384 parser/parse_expr.c:4415 -#: parser/parse_expr.c:4441 parser/parse_expr.c:4467 +#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 parser/parse_expr.c:4427 +#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 #: parser/parse_jsontable.c:92 #, c-format msgid "invalid %s behavior" @@ -18716,7 +18683,7 @@ msgstr "especificación %s no válida" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 +#: parser/parse_expr.c:4370 parser/parse_expr.c:4399 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for %s." msgstr "Sólo ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT o expresión DEFAULT se permite en %s para %s." @@ -18724,73 +18691,73 @@ msgstr "Sólo ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT o expresión DEFAULT se per #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 -#: parser/parse_expr.c:4451 parser/parse_expr.c:4477 +#: parser/parse_expr.c:4377 parser/parse_expr.c:4406 parser/parse_expr.c:4435 +#: parser/parse_expr.c:4463 parser/parse_expr.c:4489 #, c-format msgid "invalid %s behavior for column \"%s\"" msgstr "comportamiento %s no válido para la columna «%s»" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 +#: parser/parse_expr.c:4380 parser/parse_expr.c:4409 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for formatted columns." msgstr "Sólo ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT o expresión DEFAULT se permite en %s para columnas con formato." -#: parser/parse_expr.c:4416 +#: parser/parse_expr.c:4428 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." msgstr "Sólo ERROR, TRUE, FALSE o UNKNOWN están permitidos en %s para %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4426 +#: parser/parse_expr.c:4438 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." msgstr "Sólo ERROR, TRUE, FALSE o UNKNOWN están permitidos en %s para columnas EXISTS." #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 +#: parser/parse_expr.c:4456 parser/parse_expr.c:4482 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." msgstr "Sólo ERROR, NULL o expresión DEFAULT se permite en %s para %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 +#: parser/parse_expr.c:4466 parser/parse_expr.c:4492 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." msgstr "Sólo ERROR, NULL o expresión DEFAULT se permite en %s para columnas escalares." -#: parser/parse_expr.c:4510 +#: parser/parse_expr.c:4526 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "la expresión de ruta JSON debe ser de tipo %s, no tipo %s" -#: parser/parse_expr.c:4750 +#: parser/parse_expr.c:4766 #, c-format msgid "can only specify a constant, non-aggregate function, or operator expression for DEFAULT" msgstr "sólo se puede especificar constantes, funciones no de agregación, o expresión de operador para DEFAULT" -#: parser/parse_expr.c:4755 +#: parser/parse_expr.c:4771 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "las expresiones DEFAULT no pueden contener referencias a columnas" -#: parser/parse_expr.c:4760 +#: parser/parse_expr.c:4776 #, c-format msgid "DEFAULT expression must not return a set" msgstr "las expresiones DEFAULT no deben retornar un conjunto" -#: parser/parse_expr.c:4775 +#: parser/parse_expr.c:4791 #, c-format msgid "collation of DEFAULT expression conflicts with RETURNING clause" -msgstr "" +msgstr "el ordenamiento (collation) de la expresión DEFAULT está en conflicto con la cláusula RETURNING" -#: parser/parse_expr.c:4854 parser/parse_expr.c:4863 +#: parser/parse_expr.c:4870 parser/parse_expr.c:4879 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "no se puede convertir la expresión de tipo %s a %s" -#: parser/parse_expr.c:4857 +#: parser/parse_expr.c:4873 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "Necesitará aplicar una conversión de la expresión a tipo %s." @@ -19632,12 +19599,12 @@ msgstr "la columna «%s» aparece dos veces en restricción unique" #: parser/parse_utilcmd.c:2798 #, c-format msgid "column \"%s\" in WITHOUT OVERLAPS is not a range or multirange type" -msgstr "" +msgstr "la columna «%s» en WITHOUT OVERLAPS no es de un tipo rango o multirango" #: parser/parse_utilcmd.c:2826 #, c-format msgid "constraint using WITHOUT OVERLAPS needs at least two columns" -msgstr "" +msgstr "la restricción WITHOUT OVERLAPS necesita al menos dos columnas" #: parser/parse_utilcmd.c:3123 #, c-format @@ -19810,22 +19777,22 @@ msgstr "FROM debe especificar exactamente un valor por cada columna de particion msgid "TO must specify exactly one value per partitioning column" msgstr "TO debe especificar exactamente un valor por cada columna de particionado" -#: parser/parse_utilcmd.c:4521 +#: parser/parse_utilcmd.c:4523 #, c-format msgid "cannot specify NULL in range bound" msgstr "no se puede especificar NULL en borde de rango" -#: parser/parse_utilcmd.c:4570 +#: parser/parse_utilcmd.c:4571 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "cada borde que sigue a un MAXVALUE debe ser también MAXVALUE" -#: parser/parse_utilcmd.c:4577 +#: parser/parse_utilcmd.c:4578 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "cada borde que siga a un MINVALUE debe ser también MINVALUE" -#: parser/parse_utilcmd.c:4620 +#: parser/parse_utilcmd.c:4621 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "el valor especificado no puede ser convertido al tipo %s para la columna «%s»" @@ -19843,7 +19810,7 @@ msgstr "carácter de escape Unicode no válido" msgid "invalid Unicode escape value" msgstr "valor de escape Unicode no válido" -#: parser/parser.c:494 utils/adt/varlena.c:6842 scan.l:702 +#: parser/parser.c:494 utils/adt/varlena.c:6853 scan.l:702 #, c-format msgid "invalid Unicode escape" msgstr "valor de escape Unicode no válido" @@ -19853,7 +19820,7 @@ msgstr "valor de escape Unicode no válido" msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "Los escapes Unicode deben ser \\XXXX o \\+XXXXXX." -#: parser/parser.c:523 utils/adt/varlena.c:6867 scan.l:663 scan.l:679 +#: parser/parser.c:523 utils/adt/varlena.c:6878 scan.l:663 scan.l:679 #: scan.l:695 #, c-format msgid "invalid Unicode surrogate pair" @@ -20191,12 +20158,12 @@ msgstr "Active la opción «track_counts»." #: postmaster/autovacuum.c:3471 #, c-format msgid "\"autovacuum_max_workers\" (%d) should be less than or equal to \"autovacuum_worker_slots\" (%d)" -msgstr "" +msgstr "«autovacuum_max_workers» (%d) debería ser menor o igual a «autovacuum_worker_slots» (%d)" #: postmaster/autovacuum.c:3473 #, c-format msgid "The server will only start up to \"autovacuum_worker_slots\" (%d) autovacuum workers at a given time." -msgstr "" +msgstr "El servidor sólo iniciará hasta «autovacuum_worker_slots» (%d) procesos de autovacuum en cualquier momento dado." #: postmaster/bgworker.c:260 #, c-format @@ -20663,7 +20630,7 @@ msgstr "proceso sincronizador de slot" #: postmaster/postmaster.c:2523 utils/init/miscinit.c:297 msgid "io worker" -msgstr "" +msgstr "proceso de “io”" #: postmaster/postmaster.c:2545 postmaster/postmaster.c:2547 msgid "untracked child process" @@ -20884,144 +20851,144 @@ msgstr "no se pudo determinar qué ordenamiento usar para la expresión regular" msgid "nondeterministic collations are not supported for regular expressions" msgstr "los ordenamientos no determinísticos no están soportados para expresiones regulares" -#: replication/libpqwalreceiver/libpqwalreceiver.c:230 -#: replication/libpqwalreceiver/libpqwalreceiver.c:322 +#: replication/libpqwalreceiver/libpqwalreceiver.c:243 +#: replication/libpqwalreceiver/libpqwalreceiver.c:335 #, c-format msgid "password is required" msgstr "una contraseña es requerida" -#: replication/libpqwalreceiver/libpqwalreceiver.c:231 +#: replication/libpqwalreceiver/libpqwalreceiver.c:244 #, c-format msgid "Non-superuser cannot connect if the server does not request a password." msgstr "No-superusuario no se puede conectar si el servidor no pide una constraseña." -#: replication/libpqwalreceiver/libpqwalreceiver.c:232 +#: replication/libpqwalreceiver/libpqwalreceiver.c:245 #, c-format msgid "Target server's authentication method must be changed, or set password_required=false in the subscription parameters." msgstr "El método de autenticación del servidor de destino debe cambiarse, o definir password_required=false en los parámetros de suscripción." -#: replication/libpqwalreceiver/libpqwalreceiver.c:249 +#: replication/libpqwalreceiver/libpqwalreceiver.c:262 #, c-format msgid "could not clear search path: %s" msgstr "no se pudo limpiar la ruta de búsqueda: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:295 -#: replication/libpqwalreceiver/libpqwalreceiver.c:483 +#: replication/libpqwalreceiver/libpqwalreceiver.c:308 +#: replication/libpqwalreceiver/libpqwalreceiver.c:508 #, c-format msgid "invalid connection string syntax: %s" msgstr "sintaxis de cadena de conexión no válida: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:323 +#: replication/libpqwalreceiver/libpqwalreceiver.c:336 #, c-format msgid "Non-superusers must provide a password in the connection string." msgstr "No-superusuario debe proveer una contraseña en la cadena de conexión." -#: replication/libpqwalreceiver/libpqwalreceiver.c:350 +#: replication/libpqwalreceiver/libpqwalreceiver.c:363 #, c-format msgid "could not parse connection string: %s" msgstr "no se pudo interpretar la cadena de conexión: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:425 +#: replication/libpqwalreceiver/libpqwalreceiver.c:438 #, c-format msgid "could not receive database system identifier and timeline ID from the primary server: %s" msgstr "no se pudo recibir el identificador de sistema y el ID de timeline del servidor primario: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:442 -#: replication/libpqwalreceiver/libpqwalreceiver.c:737 +#: replication/libpqwalreceiver/libpqwalreceiver.c:455 +#: replication/libpqwalreceiver/libpqwalreceiver.c:762 #, c-format msgid "invalid response from primary server" msgstr "respuesta no válida del servidor primario" -#: replication/libpqwalreceiver/libpqwalreceiver.c:443 +#: replication/libpqwalreceiver/libpqwalreceiver.c:456 #, c-format msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields." msgstr "No se pudo identificar el sistema: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d o más campos." -#: replication/libpqwalreceiver/libpqwalreceiver.c:572 -#: replication/libpqwalreceiver/libpqwalreceiver.c:579 -#: replication/libpqwalreceiver/libpqwalreceiver.c:611 +#: replication/libpqwalreceiver/libpqwalreceiver.c:597 +#: replication/libpqwalreceiver/libpqwalreceiver.c:604 +#: replication/libpqwalreceiver/libpqwalreceiver.c:636 #, c-format msgid "could not start WAL streaming: %s" msgstr "no se pudo iniciar el flujo de WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:635 +#: replication/libpqwalreceiver/libpqwalreceiver.c:660 #, c-format msgid "could not send end-of-streaming message to primary: %s" msgstr "no se pudo enviar el mensaje fin-de-flujo al primario: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:659 +#: replication/libpqwalreceiver/libpqwalreceiver.c:684 #, c-format msgid "unexpected result set after end-of-streaming" msgstr "conjunto de resultados inesperado después del fin-de-flujo" -#: replication/libpqwalreceiver/libpqwalreceiver.c:675 +#: replication/libpqwalreceiver/libpqwalreceiver.c:700 #, c-format msgid "error while shutting down streaming COPY: %s" msgstr "ocurrió un error mientras se apagaba el flujo COPY: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:686 +#: replication/libpqwalreceiver/libpqwalreceiver.c:711 #, c-format msgid "error reading result of streaming command: %s" msgstr "ocurrió un error mientras se leía la orden de flujo: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:696 -#: replication/libpqwalreceiver/libpqwalreceiver.c:832 +#: replication/libpqwalreceiver/libpqwalreceiver.c:721 +#: replication/libpqwalreceiver/libpqwalreceiver.c:857 #, c-format msgid "unexpected result after CommandComplete: %s" msgstr "resultado inesperado después de CommandComplete: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:725 +#: replication/libpqwalreceiver/libpqwalreceiver.c:750 #, c-format msgid "could not receive timeline history file from the primary server: %s" msgstr "no se pudo recibir el archivo de historia de timeline del servidor primario: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:738 +#: replication/libpqwalreceiver/libpqwalreceiver.c:763 #, c-format msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields." msgstr "Se esperaba 1 tupla con 2 campos, se obtuvieron %d tuplas con %d campos." -#: replication/libpqwalreceiver/libpqwalreceiver.c:793 -#: replication/libpqwalreceiver/libpqwalreceiver.c:848 -#: replication/libpqwalreceiver/libpqwalreceiver.c:855 +#: replication/libpqwalreceiver/libpqwalreceiver.c:818 +#: replication/libpqwalreceiver/libpqwalreceiver.c:873 +#: replication/libpqwalreceiver/libpqwalreceiver.c:880 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "no se pudo recibir datos desde el flujo de WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:875 +#: replication/libpqwalreceiver/libpqwalreceiver.c:900 #, c-format msgid "could not send data to WAL stream: %s" msgstr "no se pudo enviar datos al flujo de WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:978 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1003 #, c-format msgid "could not create replication slot \"%s\": %s" msgstr "no se pudo crear el slot de replicación «%s»: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1030 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1055 #, c-format msgid "could not alter replication slot \"%s\": %s" msgstr "no se pudo alterar el slot de replicación «%s»: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1064 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1089 #, c-format msgid "invalid query response" msgstr "respuesta no válida a consulta" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1065 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1090 #, c-format msgid "Expected %d fields, got %d fields." msgstr "Se esperaban %d campos, se obtuvieron %d campos." -#: replication/libpqwalreceiver/libpqwalreceiver.c:1135 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1160 #, c-format msgid "the query interface requires a database connection" msgstr "la interfaz de consulta requiere una conexión a base de datos" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1169 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1194 msgid "empty query" msgstr "consulta vacía" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1200 msgid "unexpected pipeline mode" msgstr "modo pipeline inesperado" @@ -21070,37 +21037,37 @@ msgstr "no se puede usar lista de columnas para la relación «%s.%s» en la pub #: replication/logical/conflict.c:223 #, c-format msgid "Key already exists in unique index \"%s\", modified locally in transaction %u at %s." -msgstr "" +msgstr "La llave ya existe en el índice único «%s», modificada localmente en la transacción %u en %s." #: replication/logical/conflict.c:227 #, c-format msgid "Key already exists in unique index \"%s\", modified by origin \"%s\" in transaction %u at %s." -msgstr "" +msgstr "La llave ya existe en el índice único «%s», modificada por el origen «%s» en la transacción %u en %s." #: replication/logical/conflict.c:239 #, c-format msgid "Key already exists in unique index \"%s\", modified by a non-existent origin in transaction %u at %s." -msgstr "" +msgstr "La llave ya existe en el índice único «%s», modificada por un origen inexistente en la transacción %u en %s." #: replication/logical/conflict.c:244 #, c-format msgid "Key already exists in unique index \"%s\", modified in transaction %u." -msgstr "" +msgstr "La llave ya existe en el índice único «%s», modificado en la transacción %u." #: replication/logical/conflict.c:251 #, c-format msgid "Updating the row that was modified locally in transaction %u at %s." -msgstr "" +msgstr "Actualizando la fila que fue modificada localmente en la transacción %u en %s." #: replication/logical/conflict.c:254 #, c-format msgid "Updating the row that was modified by a different origin \"%s\" in transaction %u at %s." -msgstr "" +msgstr "Actualizando la fila que fue modificada por un origen «%s» distinto en la transacción %u en %s." #: replication/logical/conflict.c:259 #, c-format msgid "Updating the row that was modified by a non-existent origin in transaction %u at %s." -msgstr "" +msgstr "Actualizando la fila que fue modificada por un origen inexistente en la transacción %u en %s." #: replication/logical/conflict.c:265 #, fuzzy @@ -21111,28 +21078,27 @@ msgstr "no se pudo encontrar un «%s» para ejecutar" #: replication/logical/conflict.c:270 #, c-format msgid "Deleting the row that was modified locally in transaction %u at %s." -msgstr "" +msgstr "Eliminando la fila que fue modificada localmente en la transacción %u en %s." #: replication/logical/conflict.c:273 #, c-format msgid "Deleting the row that was modified by a different origin \"%s\" in transaction %u at %s." -msgstr "" +msgstr "Eliminando la fila que fue modificada por un origen «%s» diferente en la transacción %u en %s." #: replication/logical/conflict.c:278 #, c-format msgid "Deleting the row that was modified by a non-existent origin in transaction %u at %s." -msgstr "" +msgstr "Eliminando la fila que fue modificada por un origen inexistente en la transacción %u en %s." #: replication/logical/conflict.c:284 -#, fuzzy #| msgid "could not find a \"%s\" to execute" msgid "Could not find the row to be deleted." -msgstr "no se pudo encontrar un «%s» para ejecutar" +msgstr "No se pudo encontrar la fila a ser eliminada." #: replication/logical/conflict.c:347 #, c-format msgid "Key %s" -msgstr "" +msgstr "Llave %s" #: replication/logical/conflict.c:364 #, fuzzy, c-format @@ -21143,23 +21109,23 @@ msgstr "cerrando el cursor «%s» preexistente" #: replication/logical/conflict.c:369 #, c-format msgid "Existing local row %s" -msgstr "" +msgstr "Fila local existente %s" #: replication/logical/conflict.c:396 #, c-format msgid "remote row %s" -msgstr "" +msgstr "fila remota %s" #: replication/logical/conflict.c:400 #, c-format msgid "Remote row %s" -msgstr "" +msgstr "Fila remota %s" #: replication/logical/conflict.c:434 -#, fuzzy, c-format +#, c-format #| msgid ", replica identity" msgid "replica identity %s" -msgstr ", identidad de replicación" +msgstr "identidad de replicación %s" #: replication/logical/conflict.c:435 #, fuzzy, c-format @@ -21171,7 +21137,7 @@ msgstr ", identidad de replicación" #, fuzzy, c-format #| msgid "Replica Identity" msgid "Replica identity %s" -msgstr "Identidad de replicación" +msgstr "Identidad de replicación %s" #: replication/logical/conflict.c:441 #, fuzzy, c-format @@ -21186,10 +21152,10 @@ msgid "logical decoding on standby requires \"wal_level\" >= \"logical\" on the msgstr "la decodificación lógica en standby requiere «wal_level» >= «logical» en el primario" #: replication/logical/launcher.c:344 -#, fuzzy, c-format +#, c-format #| msgid "cannot start logical replication workers when max_replication_slots = 0" msgid "cannot start logical replication workers when \"max_active_replication_origins\" is 0" -msgstr "no se pueden iniciar procesos ayudantes de replicación lógica cuando max_replication_slots = 0" +msgstr "no se pueden iniciar procesos ayudantes de replicación lógica cuando «max_active_replication_origins» es 0" #: replication/logical/launcher.c:437 #, c-format @@ -21198,7 +21164,7 @@ msgstr "se agotaron los slots de procesos ayudantes de replicación lógica" #. translator: %s is a GUC variable name #: replication/logical/launcher.c:438 replication/logical/launcher.c:524 -#: replication/slot.c:1635 replication/slot.c:1655 storage/lmgr/lock.c:1042 +#: replication/slot.c:1670 replication/slot.c:1690 storage/lmgr/lock.c:1042 #: storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 #: storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 #: storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 @@ -21233,12 +21199,12 @@ msgstr "la decodificación lógica requiere «wal_level» >= «logical»" msgid "logical decoding requires a database connection" msgstr "decodificación lógica requiere una conexión a una base de datos" -#: replication/logical/logical.c:367 replication/logical/logical.c:521 +#: replication/logical/logical.c:367 replication/logical/logical.c:523 #, c-format msgid "cannot use physical replication slot for logical decoding" msgstr "no se puede usar un slot de replicación física para decodificación lógica" -#: replication/logical/logical.c:372 replication/logical/logical.c:531 +#: replication/logical/logical.c:372 replication/logical/logical.c:533 #, c-format msgid "replication slot \"%s\" was not created in this database" msgstr "el slot de replicación «%s» no fue creado en esta base de datos" @@ -21248,57 +21214,57 @@ msgstr "el slot de replicación «%s» no fue creado en esta base de datos" msgid "cannot create logical replication slot in transaction that has performed writes" msgstr "no se puede crear un slot de replicación lógica en una transacción que ha efectuado escrituras" -#: replication/logical/logical.c:542 +#: replication/logical/logical.c:544 #, c-format msgid "cannot use replication slot \"%s\" for logical decoding" msgstr "no se puede usar el slot de replicación «%s» para decodificación lógica" -#: replication/logical/logical.c:544 replication/slot.c:864 -#: replication/slot.c:899 +#: replication/logical/logical.c:546 replication/slot.c:858 +#: replication/slot.c:903 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Este slot de replicación está siendo sincronizado desde el servidor primario." -#: replication/logical/logical.c:545 +#: replication/logical/logical.c:547 #, c-format msgid "Specify another replication slot." msgstr "Especifique otro slot de replicación." -#: replication/logical/logical.c:611 +#: replication/logical/logical.c:613 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "iniciando la decodificación lógica para el slot «%s»" -#: replication/logical/logical.c:613 +#: replication/logical/logical.c:615 #, c-format msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X." msgstr "Transacciones en flujo comprometiendo después de %X/%X, leyendo WAL desde %X/%X." -#: replication/logical/logical.c:761 +#: replication/logical/logical.c:763 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X" msgstr "slot «%s», plugin de salida «%s», en el callback %s, LSN asociado %X/%X" # FIXME must quote callback name? Need a translator: comment? -#: replication/logical/logical.c:767 +#: replication/logical/logical.c:769 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback" msgstr "slot «%s», plugin de salida «%s», en el callback %s" -#: replication/logical/logical.c:938 replication/logical/logical.c:983 -#: replication/logical/logical.c:1028 replication/logical/logical.c:1074 +#: replication/logical/logical.c:940 replication/logical/logical.c:985 +#: replication/logical/logical.c:1030 replication/logical/logical.c:1076 #, c-format msgid "logical replication at prepare time requires a %s callback" msgstr "durante la preparación, la replicación lógica requiere una función callback %s" -#: replication/logical/logical.c:1306 replication/logical/logical.c:1355 -#: replication/logical/logical.c:1396 replication/logical/logical.c:1482 -#: replication/logical/logical.c:1531 +#: replication/logical/logical.c:1308 replication/logical/logical.c:1357 +#: replication/logical/logical.c:1398 replication/logical/logical.c:1484 +#: replication/logical/logical.c:1533 #, c-format msgid "logical streaming requires a %s callback" msgstr "el flujo lógico requiere una función callback %s" -#: replication/logical/logical.c:1441 +#: replication/logical/logical.c:1443 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "durante la preparación, el flujo lógico requiere una función callback %s" @@ -21499,66 +21465,65 @@ msgstr "no se pudo borrar el archivo «%s» durante la eliminación de pg_replsl msgid "could not read from file \"%s\": read %d instead of %d bytes" msgstr "no se pudo leer del archivo «%s»: se leyeron %d en lugar de %d bytes" -#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:595 +#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:596 #, c-format msgid "could not synchronize replication slot \"%s\"" msgstr "no se pudo sincronizar el slot de replicación «%s»" #: replication/logical/slotsync.c:216 -#, fuzzy, c-format -#| msgid "The remote slot has LSN %X/%X and catalog xmin %u, but the local slot has LSN %X/%X and catalog xmin %u." +#, c-format msgid "Synchronization could lead to data loss, because the remote slot needs WAL at LSN %X/%X and catalog xmin %u, but the standby has LSN %X/%X and catalog xmin %u." -msgstr "El slot remoto tiene LSN %X/%X y xmin de catálogo %u, pero el slot local tiene LSN %X/%X y xmin de catálogo %u." +msgstr "La sincronización podría llevar a pérdida de datos, porque el slot remoto necesita WAL del LSN %X/%X y xmin de catálogo %u, pero el standby tiene LSN %X/%X y xmin de catálogo %u." #: replication/logical/slotsync.c:475 #, c-format msgid "dropped replication slot \"%s\" of database with OID %u" msgstr "se eliminó el slot de replicación «%s» de la base de datos con OID %u" -#: replication/logical/slotsync.c:596 +#: replication/logical/slotsync.c:597 #, c-format msgid "Synchronization could lead to data loss, because the standby could not build a consistent snapshot to decode WALs at LSN %X/%X." -msgstr "" +msgstr "La sincronización podría llevar a pérdida de datos, porque el standby no pudo construir un snapshot consistente para decodificar datos en el LSN %X/%X" -#: replication/logical/slotsync.c:605 +#: replication/logical/slotsync.c:606 #, c-format msgid "newly created replication slot \"%s\" is sync-ready now" msgstr "el slot de replicación «%s» recién creado está listo para la sincronización" -#: replication/logical/slotsync.c:644 +#: replication/logical/slotsync.c:645 #, c-format msgid "skipping slot synchronization because the received slot sync LSN %X/%X for slot \"%s\" is ahead of the standby position %X/%X" msgstr "omitiendo sincronización de slot porque el LSN %X/%X de sincronización recibido para el slot «%s» está adelantado respecto a la posición del standby %X/%X" -#: replication/logical/slotsync.c:666 +#: replication/logical/slotsync.c:667 #, c-format msgid "exiting from slot synchronization because same name slot \"%s\" already exists on the standby" msgstr "saliendo de la sincronización de slot porque un slot con el mismo nombre «%s» ya existe en el standby" -#: replication/logical/slotsync.c:835 +#: replication/logical/slotsync.c:838 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "no se pudo obtener la información de slots “failover” de replicación lógica del servidor primario: %s" -#: replication/logical/slotsync.c:984 +#: replication/logical/slotsync.c:987 #, fuzzy, c-format #| msgid "could not fetch primary_slot_name \"%s\" info from the primary server: %s" msgid "could not fetch primary slot name \"%s\" info from the primary server: %s" msgstr "no se pudo obtener información del primary_slot_name «%s» del servidor primario: %s" -#: replication/logical/slotsync.c:986 +#: replication/logical/slotsync.c:989 #, fuzzy, c-format #| msgid "Check if primary_slot_name is configured correctly." msgid "Check if \"primary_slot_name\" is configured correctly." msgstr "Verificando si primary_slot_name está configurado correctamente." -#: replication/logical/slotsync.c:1006 +#: replication/logical/slotsync.c:1009 #, c-format msgid "cannot synchronize replication slots from a standby server" msgstr "no puede sincronizar slots de replicación de un servidor standby" #. translator: second %s is a GUC variable name -#: replication/logical/slotsync.c:1015 +#: replication/logical/slotsync.c:1018 #, c-format msgid "replication slot \"%s\" specified by \"%s\" does not exist on primary server" msgstr "el slot de replicación «%s» especificado por «%s» no existe en el servidor primario" @@ -21566,61 +21531,62 @@ msgstr "el slot de replicación «%s» especificado por «%s» no existe en el s #. translator: first %s is a connection option; second %s is a GUC #. variable name #. -#: replication/logical/slotsync.c:1048 +#: replication/logical/slotsync.c:1051 #, c-format msgid "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "la sincronización de slots de replicación requiere que «%s» esté especificado en «%s»" # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/logical/slotsync.c:1067 +#: replication/logical/slotsync.c:1070 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "la sincronización de slots de replicación requiere «wal_level» >= «logical»" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1082 replication/logical/slotsync.c:1110 +#: replication/logical/slotsync.c:1085 replication/logical/slotsync.c:1113 #, c-format msgid "replication slot synchronization requires \"%s\" to be set" msgstr "la sincronización de slots de replicación requiere que «%s» esté definido" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1096 +#: replication/logical/slotsync.c:1099 #, c-format msgid "replication slot synchronization requires \"%s\" to be enabled" msgstr "la sincronización de slots de replicación requiere que «%s» esté activado" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1148 +#: replication/logical/slotsync.c:1151 #, c-format msgid "replication slot synchronization worker will shut down because \"%s\" is disabled" msgstr "el proceso de sincronización de slots de replicación terminará porque «%s» está desactivado" -#: replication/logical/slotsync.c:1157 +#: replication/logical/slotsync.c:1160 #, c-format msgid "replication slot synchronization worker will restart because of a parameter change" msgstr "el proceso de sincronización de slots de replicación se reiniciará debido a un cambio de parámetro" -#: replication/logical/slotsync.c:1181 -#, c-format -msgid "replication slot synchronization worker is shutting down on receiving SIGINT" -msgstr "el trabajador de sincronización de slots de replicación está apagándose al recibir SIGINT" +#: replication/logical/slotsync.c:1184 +#, fuzzy, c-format +#| msgid "replication slot synchronization worker will shut down because \"%s\" is disabled" +msgid "replication slot synchronization worker is shutting down because promotion is triggered" +msgstr "el proceso de sincronización de slots de replicación terminará porque «%s» está desactivado" -#: replication/logical/slotsync.c:1306 +#: replication/logical/slotsync.c:1309 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "no se puede sincronizar los slots de replicación cuando la promoción de standby está teniendo lugar" -#: replication/logical/slotsync.c:1314 +#: replication/logical/slotsync.c:1317 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "no se puede sincronizar slots de replicación concurrentemente" -#: replication/logical/slotsync.c:1422 +#: replication/logical/slotsync.c:1425 #, c-format msgid "slot sync worker started" msgstr "iniciado el trabajador de sincronización de slots" -#: replication/logical/slotsync.c:1484 replication/slotfuncs.c:928 +#: replication/logical/slotsync.c:1487 replication/slotfuncs.c:928 #, fuzzy, c-format #| msgid "could not connect to the primary server: %s" msgid "synchronization worker \"%s\" could not connect to the primary server: %s" @@ -21737,22 +21703,17 @@ msgstr "no se pudo iniciar la copia de contenido inicial para de la tabla «%s.% msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" msgstr "el ayudante de sincronización de tabla de replicación lógica para la suscripción «%s», tabla «%s» ha terminado" -#: replication/logical/tablesync.c:1466 +#: replication/logical/tablesync.c:1480 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "la copia de la tabla no pudo iniciar una transacción en el publicador: %s" -#: replication/logical/tablesync.c:1509 -#, c-format -msgid "replication origin \"%s\" already exists" -msgstr "el origen de replicación «%s» ya existe" - -#: replication/logical/tablesync.c:1542 replication/logical/worker.c:2378 +#: replication/logical/tablesync.c:1540 replication/logical/worker.c:2378 #, c-format msgid "user \"%s\" cannot replicate into relation with row-level security enabled: \"%s\"" msgstr "el usuario «%s» no puede replicar en relaciones con seguridad de registros activa: «%s»" -#: replication/logical/tablesync.c:1555 +#: replication/logical/tablesync.c:1553 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "la copia de tabla no pudo terminar la transacción en el publicador: %s" @@ -21858,62 +21819,62 @@ msgstr "el ayudante de sincronización de tabla de replicación lógica para la msgid "logical replication apply worker for subscription \"%s\" has started" msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» ha iniciado" -#: replication/logical/worker.c:4871 +#: replication/logical/worker.c:4875 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "la suscripción «%s» ha sido inhabilitada debido a un error" -#: replication/logical/worker.c:4919 +#: replication/logical/worker.c:4923 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "iniciando el ignorado en la replicación lógica de la transacción en el LSN %X/%X" -#: replication/logical/worker.c:4933 +#: replication/logical/worker.c:4937 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "finalizó el ignorado en la replicación lógica de la transacción en el LSN %X/%X" -#: replication/logical/worker.c:5021 +#: replication/logical/worker.c:5025 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "el «skip-LSN» de la suscripción «%s» ha sido borrado" -#: replication/logical/worker.c:5022 +#: replication/logical/worker.c:5026 #, c-format msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X." msgstr "La ubicación de WAL (LSN) de término %X/%X de la transacción remota no coincidió con el skip-LSN %X/%X." -#: replication/logical/worker.c:5050 +#: replication/logical/worker.c:5054 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\"" msgstr "procesando datos remotos de origen de replicación «%s» durante el mensaje de tipo «%s»" -#: replication/logical/worker.c:5054 +#: replication/logical/worker.c:5058 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u" msgstr "procesando datos remotos de origen de replicación «%s» durante el mensaje de tipo «%s» en la transacción %u" -#: replication/logical/worker.c:5059 +#: replication/logical/worker.c:5063 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X" msgstr "procesando datos remotos de origen de replicación «%s» durante el mensaje de tipo «%s» en la transacción %u, concluida en %X/%X" -#: replication/logical/worker.c:5070 +#: replication/logical/worker.c:5074 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u" msgstr "procesando datos remotos de origen de replicación «%s» durante el mensaje de tipo «%s» para la relación destino de replicación «%s.%s» en la transacción %u" -#: replication/logical/worker.c:5077 +#: replication/logical/worker.c:5081 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u, finished at %X/%X" msgstr "procesando datos remotos de origen de replicación «%s» durante el mensaje de tipo «%s» para la relación de destino «%s.%s» en la transacción %u, concluida en %X/%X" -#: replication/logical/worker.c:5088 +#: replication/logical/worker.c:5092 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u" msgstr "procesando datos remotos de origen de replicación «%s» durante el mensaje de tipo «%s» para la relación de destino «%s.%s» columna «%s» en la transacción %u" -#: replication/logical/worker.c:5096 +#: replication/logical/worker.c:5100 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u, finished at %X/%X" msgstr "procesando datos remotos de origen de replicación «%s» durante el mensaje de tipo «%s» para la relación de destino «%s.%s» columna «%s» en la transacción %u, concluida en %X/%X" @@ -21928,71 +21889,71 @@ msgstr "proto_version no válido" msgid "proto_version \"%s\" out of range" msgstr "proto_version «%s» fuera de rango" -#: replication/pgoutput/pgoutput.c:351 +#: replication/pgoutput/pgoutput.c:355 #, c-format msgid "invalid publication_names syntax" msgstr "sintaxis de publication_names no válida" -#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 +#: replication/pgoutput/pgoutput.c:425 replication/pgoutput/pgoutput.c:429 #, c-format msgid "option \"%s\" missing" msgstr "falta la opción «%s»" -#: replication/pgoutput/pgoutput.c:492 +#: replication/pgoutput/pgoutput.c:496 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or lower" msgstr "el cliente envió proto_version=%d pero el servidor sólo soporta el protocolo %d o inferior" -#: replication/pgoutput/pgoutput.c:498 +#: replication/pgoutput/pgoutput.c:502 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or higher" msgstr "el cliente envió proto_version=%d pero el servidor sólo soporta el protocolo %d o superior" -#: replication/pgoutput/pgoutput.c:513 +#: replication/pgoutput/pgoutput.c:517 #, c-format msgid "requested proto_version=%d does not support streaming, need %d or higher" msgstr "la proto_version=%d no soporta flujo, se necesita %d o superior" -#: replication/pgoutput/pgoutput.c:519 +#: replication/pgoutput/pgoutput.c:523 #, c-format msgid "requested proto_version=%d does not support parallel streaming, need %d or higher" msgstr "la proto_version=%d solicitada no soporta flujo en paralelo, se necesita %d o superior" -#: replication/pgoutput/pgoutput.c:524 +#: replication/pgoutput/pgoutput.c:528 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "se solicitó flujo, pero no está soportado por plugin de salida" -#: replication/pgoutput/pgoutput.c:538 +#: replication/pgoutput/pgoutput.c:542 #, c-format msgid "requested proto_version=%d does not support two-phase commit, need %d or higher" msgstr "la proto_version=%d solicitada no soporta «two-phase commit», se necesita %d o superior" -#: replication/pgoutput/pgoutput.c:543 +#: replication/pgoutput/pgoutput.c:547 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "«two-phase commit» fue solicitado, pero no está soportado por el plugin de salida" -#: replication/pgoutput/pgoutput.c:1108 +#: replication/pgoutput/pgoutput.c:1112 #, fuzzy, c-format #| msgid "cannot use different column lists for table \"%s.%s\" in different publications" msgid "cannot use different values of publish_generated_columns for table \"%s.%s\" in different publications" msgstr "no se puede usar distintas listas de columnas para la tabla «%s.%s» en distintas publicaciones" -#: replication/pgoutput/pgoutput.c:1811 +#: replication/pgoutput/pgoutput.c:1815 #, fuzzy, c-format #| msgid "reading publications" msgid "skipped loading publication \"%s\"" msgstr "leyendo publicaciones" -#: replication/pgoutput/pgoutput.c:1812 +#: replication/pgoutput/pgoutput.c:1816 #, fuzzy, c-format #| msgid "publication %s does not exist on the publisher" #| msgid_plural "publications %s do not exist on the publisher" msgid "The publication does not exist at this point in the WAL." msgstr "no existe la publicación «%s» en el “publisher”" -#: replication/pgoutput/pgoutput.c:1813 +#: replication/pgoutput/pgoutput.c:1817 #, fuzzy, c-format #| msgid "publication \"%s\" does not exist" msgid "Create the publication if it does not exist." @@ -22017,266 +21978,263 @@ msgstr "el nombre de slot de replicación «%s» contiene caracteres no válidos msgid "Replication slot names may only contain lower case letters, numbers, and the underscore character." msgstr "Los nombres de slots de replicación sólo pueden contener letras minúsculas, números y el carácter «_»." -#: replication/slot.c:383 +#: replication/slot.c:377 #, c-format msgid "cannot enable failover for a replication slot created on the standby" msgstr "no se puede activar “failover” para un slot de replicación creado en el standby" -#: replication/slot.c:395 replication/slot.c:921 +#: replication/slot.c:389 replication/slot.c:925 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "no se puede activar “failover” para un slot de replicación temporal" -#: replication/slot.c:420 +#: replication/slot.c:414 #, c-format msgid "replication slot \"%s\" already exists" msgstr "el slot de replicación «%s» ya existe" -#: replication/slot.c:430 +#: replication/slot.c:424 #, c-format msgid "all replication slots are in use" msgstr "todos los slots de replicación están en uso" -#: replication/slot.c:431 +#: replication/slot.c:425 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Libere uno o incremente «max_replication_slots»." -#: replication/slot.c:615 replication/slotfuncs.c:664 +#: replication/slot.c:609 replication/slotfuncs.c:664 #: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:739 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "no existe el slot de replicación «%s»" -#: replication/slot.c:670 replication/slot.c:1466 +#: replication/slot.c:664 replication/slot.c:1499 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "el slot de replicación «%s» está activo para el PID %d" -#: replication/slot.c:687 +#: replication/slot.c:681 #, fuzzy, c-format #| msgid "can no longer get changes from replication slot \"%s\"" msgid "can no longer access replication slot \"%s\"" msgstr "ya no se pueden recibir cambios desde el slot de replicación «%s»" -#: replication/slot.c:689 +#: replication/slot.c:683 #, fuzzy, c-format #| msgid "The source replication slot was modified incompatibly during the copy operation." msgid "This replication slot has been invalidated due to \"%s\"." msgstr "El slot de replicación de origen fue modificado incompatiblemente durante la operación de copia." -#: replication/slot.c:708 +#: replication/slot.c:702 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "se adquirió el slot de replicación lógica «%s»" -#: replication/slot.c:710 +#: replication/slot.c:704 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "se adquirió el slot de replicación física «%s»" -#: replication/slot.c:795 +#: replication/slot.c:789 #, c-format msgid "released logical replication slot \"%s\"" msgstr "se liberó el slot de replicación lógica «%s»" -#: replication/slot.c:797 +#: replication/slot.c:791 #, c-format msgid "released physical replication slot \"%s\"" msgstr "se liberó el slot de replicación física «%s»" -#: replication/slot.c:863 +#: replication/slot.c:857 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "no se puede eliminar el slot de replicación «%s»" -#: replication/slot.c:886 +#: replication/slot.c:890 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "no se puede usar %s con un slot de replicación física" -#: replication/slot.c:898 +#: replication/slot.c:902 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "no se puede alterar el slot de replicación «%s»" -#: replication/slot.c:908 +#: replication/slot.c:912 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "no se puede activar el “failover” para un slot de replicación en el standby" -#: replication/slot.c:1056 replication/slot.c:2187 replication/slot.c:2580 +#: replication/slot.c:1060 replication/slot.c:2228 replication/slot.c:2621 #, c-format msgid "could not remove directory \"%s\"" msgstr "no se pudo eliminar el directorio «%s»" -#: replication/slot.c:1501 +#: replication/slot.c:1534 #, c-format msgid "replication slots can only be used if \"max_replication_slots\" > 0" msgstr "los slots de replicación sólo pueden usarse si «max_replication_slots» > 0" # FIXME see logical.c:81 -#: replication/slot.c:1506 +#: replication/slot.c:1539 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "los slots de replicación sólo pueden usarse si «wal_level» >= «replica»" -#: replication/slot.c:1518 +#: replication/slot.c:1551 #, c-format msgid "permission denied to use replication slots" msgstr "permiso denegado a usar slots de replicación" -#: replication/slot.c:1519 +#: replication/slot.c:1552 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "Sólo roles con el atributo %s pueden usar slots de replicación." -#: replication/slot.c:1629 -#, fuzzy, c-format -#| msgid "The slot's restart_lsn %X/%X exceeds the limit by %llu byte." -#| msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by %llu bytes." +#: replication/slot.c:1664 +#, c-format msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by % bytes." -msgstr[0] "El restart_lsn %X/%X del slot excede el límite por %llu byte." -msgstr[1] "El restart_lsn %X/%X del slot excede el límite por %llu bytes." +msgstr[0] "El restart_lsn %X/%X del slot excede el límite por % byte." +msgstr[1] "El restart_lsn %X/%X del slot excede el límite por % bytes." -#: replication/slot.c:1640 +#: replication/slot.c:1675 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "El slot estaba en conflicto con el horizonte de XID %u." # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/slot.c:1645 +#: replication/slot.c:1680 msgid "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the primary server." msgstr "La decodificación lógica en standby requiere «wal_level» >= «logical» en el primario." #. translator: %s is a GUC variable name -#: replication/slot.c:1651 +#: replication/slot.c:1686 #, c-format msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." -msgstr "" +msgstr "El tiempo de inactividad del slot de %lds excede la duración configurada «%s» de %ds." -#: replication/slot.c:1665 +#: replication/slot.c:1700 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "terminando el proceso %d para liberar el slot de replicación «%s»" -#: replication/slot.c:1667 +#: replication/slot.c:1702 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "invalidando el slot de replicación obsoleto «%s»" -#: replication/slot.c:2518 +#: replication/slot.c:2559 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "el archivo de slot de replicación «%s» tiene número mágico erróneo: %u en lugar de %u" -#: replication/slot.c:2525 +#: replication/slot.c:2566 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "el archivo de slot de replicación «%s» tiene versión no soportada %u" -#: replication/slot.c:2532 +#: replication/slot.c:2573 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "el archivo de slot de replicación «%s» tiene largo corrupto %u" -#: replication/slot.c:2568 +#: replication/slot.c:2609 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "suma de verificación no coincidente en archivo de slot de replicación «%s»: es %u, debería ser %u" # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/slot.c:2604 +#: replication/slot.c:2645 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "existe el slot de replicación lógica «%s», pero «wal_level» < «logical»" -#: replication/slot.c:2606 +#: replication/slot.c:2647 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Cambie «wal_level» a «logical» o superior." # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/slot.c:2618 -#, fuzzy, c-format -#| msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" +#: replication/slot.c:2659 +#, c-format msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" -msgstr "existe el slot de replicación lógica «%s», pero «wal_level» < «logical»" +msgstr "el slot de replicación lógica «%s» existe en el standby, pero «hot_standby» = «off»" -#: replication/slot.c:2620 +#: replication/slot.c:2661 #, c-format msgid "Change \"hot_standby\" to be \"on\"." -msgstr "" +msgstr "Cambie «hot_standby» a «on»." # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/slot.c:2625 +#: replication/slot.c:2666 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "existe el slot de replicación lógica «%s», pero «wal_level» < «replica»" # <> hello vim -#: replication/slot.c:2627 +#: replication/slot.c:2668 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Cambie «wal_level» a «replica» o superior." -#: replication/slot.c:2674 +#: replication/slot.c:2715 #, c-format msgid "too many replication slots active before shutdown" msgstr "demasiados slots de replicación activos antes del apagado" -#: replication/slot.c:2675 +#: replication/slot.c:2716 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "Aumente «max_replication_slots» y reintente." -#: replication/slot.c:2912 +#: replication/slot.c:2953 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "el slot de replicación «%s» especificado en el parámetro «%s» no existe" -#: replication/slot.c:2914 replication/slot.c:2948 replication/slot.c:2963 +#: replication/slot.c:2955 replication/slot.c:2989 replication/slot.c:3004 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "La replicación lógica está esperando al standby asociado con el slot de replicación «%s»." -#: replication/slot.c:2916 +#: replication/slot.c:2957 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "Cree el slot de replicación «%s» o corrija el parámetro «%s»." -#: replication/slot.c:2926 +#: replication/slot.c:2967 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "no se puede especificar el slot de replicación lógica «%s» en el parámetro «%s»" -#: replication/slot.c:2928 +#: replication/slot.c:2969 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "La replicación lógica está esperando a una corrección en el slot de replicación «%s»." -#: replication/slot.c:2930 +#: replication/slot.c:2971 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "Elimine el slot de replicación lógica «%s» del parámetro «%s»." -#: replication/slot.c:2946 +#: replication/slot.c:2987 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" msgstr "el slot de replicación física «%s» especificado en el parámetro «%s» ha sido invalidado" -#: replication/slot.c:2950 +#: replication/slot.c:2991 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "Elimine y vuelva a crear el slot de replicación «%s», o corrija el parámetro «%s»." -#: replication/slot.c:2961 +#: replication/slot.c:3002 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not have active_pid" msgstr "el slot de replicación «%s» especificado en el parámetro «%s» no tiene active_pid" -#: replication/slot.c:2965 +#: replication/slot.c:3006 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." msgstr "Inicie el standby asociado con el slot de replicación «%s», o corrija el parámetro «%s»." @@ -22317,10 +22275,9 @@ msgid "cannot copy a replication slot that doesn't reserve WAL" msgstr "no puede copiar un slot de replicación que no ha reservado WAL" #: replication/slotfuncs.c:691 -#, fuzzy, c-format -#| msgid "cannot alter replication slot \"%s\"" +#, c-format msgid "cannot copy invalidated replication slot \"%s\"" -msgstr "no se puede alterar el slot de replicación «%s»" +msgstr "no se puede copiar el slot de replicación «%s» invalidado" #: replication/slotfuncs.c:783 #, c-format @@ -22343,16 +22300,14 @@ msgid "Retry when the source replication slot's confirmed_flush_lsn is valid." msgstr "Reintente cuando el confirmed_flush_lsn del slot de replicación de origen sea válido." #: replication/slotfuncs.c:805 -#, fuzzy, c-format -#| msgid "cannot drop replication slot \"%s\"" +#, c-format msgid "cannot copy replication slot \"%s\"" -msgstr "no se puede eliminar el slot de replicación «%s»" +msgstr "no se puede copiar el slot de replicación «%s»" #: replication/slotfuncs.c:807 -#, fuzzy, c-format -#| msgid "The source replication slot was modified incompatibly during the copy operation." +#, c-format msgid "The source replication slot was invalidated during the copy operation." -msgstr "El slot de replicación de origen fue modificado incompatiblemente durante la operación de copia." +msgstr "El slot de replicación de origen fue invalidado durante la operación de copia." # FIXME see logical.c:81 #: replication/slotfuncs.c:906 @@ -22386,10 +22341,10 @@ msgid "standby \"%s\" is now a candidate for quorum synchronous standby" msgstr "el standby «%s» es ahora un candidato para standby sincrónico de quórum" #: replication/syncrep.c:1081 -#, fuzzy, c-format +#, c-format #| msgid "\"%s\" failed" msgid "\"%s\" parser failed." -msgstr "«%s» falló" +msgstr "El intérprete de «%s» falló." #: replication/syncrep.c:1088 #, c-format @@ -22397,10 +22352,10 @@ msgid "number of synchronous standbys (%d) must be greater than zero" msgstr "el argumento de standby sincrónicos (%d) debe ser mayor que cero" #: replication/walreceiver.c:276 -#, fuzzy, c-format +#, c-format #| msgid "could not connect to the primary server: %s" msgid "streaming replication receiver \"%s\" could not connect to the primary server: %s" -msgstr "no se pudo conectar al servidor primario: %s" +msgstr "el receptor de replicación “streaming” «%s» no se pudo conectar al servidor primario: %s" #: replication/walreceiver.c:324 #, c-format @@ -22472,7 +22427,7 @@ msgstr "no se pudo escribir al segmento de WAL %s en la posición %d, largo %lu: msgid "cannot use %s with a logical replication slot" msgstr "no se puede usar %s con un slot de replicación lógica" -#: replication/walsender.c:623 storage/smgr/md.c:1867 +#: replication/walsender.c:623 storage/smgr/md.c:1881 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "no se pudo posicionar (seek) al fin del archivo «%s»: %m" @@ -22502,11 +22457,6 @@ msgstr "La historia de este servidor bifurcó desde el timeline %u en %X/%X." msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X" msgstr "el punto de inicio solicitado %X/%X está más adelante que la posición de sincronización (flush) de WAL de este servidor %X/%X" -#: replication/walsender.c:1151 -#, c-format -msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" -msgstr "valor no reconocido para la opción de CREATE_REPLICATION_SLOT «%s»: «%s»" - #. translator: %s is a CREATE_REPLICATION_SLOT statement #: replication/walsender.c:1257 #, c-format @@ -22771,268 +22721,268 @@ msgstr "no se permite cambiar el nombre de una regla ON SELECT" msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten" msgstr "el nombre de consulta WITH «%s» aparece tanto en una acción de regla y en la consulta que está siendo reescrita" -#: rewrite/rewriteHandler.c:617 +#: rewrite/rewriteHandler.c:620 #, c-format msgid "INSERT ... SELECT rule actions are not supported for queries having data-modifying statements in WITH" msgstr "las acciones de regla INSERT ... SELECT no están soportadas para sentencias que modifiquen datos en WITH" -#: rewrite/rewriteHandler.c:671 +#: rewrite/rewriteHandler.c:674 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "no se puede usar RETURNING en múltiples reglas" -#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 +#: rewrite/rewriteHandler.c:911 rewrite/rewriteHandler.c:950 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "no se puede insertar un valor no-predeterminado en la columna «%s»" -#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 +#: rewrite/rewriteHandler.c:913 rewrite/rewriteHandler.c:979 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "La columna \"%s\" es una columna de identidad definida como GENERATED ALWAYS." -#: rewrite/rewriteHandler.c:912 +#: rewrite/rewriteHandler.c:915 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "Use OVERRIDING SYSTEM VALUE para controlar manualmente." -#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 +#: rewrite/rewriteHandler.c:977 rewrite/rewriteHandler.c:985 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "la columna «%s» sólo puede actualizarse a DEFAULT" -#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 +#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "hay múltiples asignaciones a la misma columna «%s»" -#: rewrite/rewriteHandler.c:1691 +#: rewrite/rewriteHandler.c:1694 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE no está soportado para relaciones con reglas." -#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 +#: rewrite/rewriteHandler.c:1734 rewrite/rewriteHandler.c:3274 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "el acceso a la vista no de sistema «%s» está restringido" -#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 +#: rewrite/rewriteHandler.c:2133 rewrite/rewriteHandler.c:4285 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "se detectó recursión infinita en las reglas de la relación «%s»" -#: rewrite/rewriteHandler.c:2235 +#: rewrite/rewriteHandler.c:2238 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "se detectó recursión infinita en la política para la relación «%s»" -#: rewrite/rewriteHandler.c:2598 +#: rewrite/rewriteHandler.c:2601 msgid "Junk view columns are not updatable." msgstr "Las columnas «basura» de vistas no son actualizables." -#: rewrite/rewriteHandler.c:2603 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that are not columns of their base relation are not updatable." msgstr "Las columnas de vistas que no son columnas de su relación base no son actualizables." -#: rewrite/rewriteHandler.c:2606 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that refer to system columns are not updatable." msgstr "Las columnas de vistas que se refieren a columnas de sistema no son actualizables." -#: rewrite/rewriteHandler.c:2609 +#: rewrite/rewriteHandler.c:2612 msgid "View columns that return whole-row references are not updatable." msgstr "Las columnas de vistas que retornan referencias a la fila completa no son actualizables." # XXX a %s here would be nice ... -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing DISTINCT are not automatically updatable." msgstr "Las vistas que contienen DISTINCT no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2673 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing GROUP BY are not automatically updatable." msgstr "Las vistas que contienen GROUP BY no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2679 msgid "Views containing HAVING are not automatically updatable." msgstr "Las vistas que contienen HAVING no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2679 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "Las vistas que contienen UNION, INTERSECT o EXCEPT no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2682 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing WITH are not automatically updatable." msgstr "Las vistas que contienen WITH no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2685 +#: rewrite/rewriteHandler.c:2688 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "Las vistas que contienen LIMIT u OFFSET no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2697 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return aggregate functions are not automatically updatable." msgstr "Las vistas que retornan funciones de agregación no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2700 +#: rewrite/rewriteHandler.c:2703 msgid "Views that return window functions are not automatically updatable." msgstr "Las vistas que retornan funciones ventana no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2703 +#: rewrite/rewriteHandler.c:2706 msgid "Views that return set-returning functions are not automatically updatable." msgstr "Las vistas que retornan funciones-que-retornan-conjuntos no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 -#: rewrite/rewriteHandler.c:2722 +#: rewrite/rewriteHandler.c:2713 rewrite/rewriteHandler.c:2717 +#: rewrite/rewriteHandler.c:2725 msgid "Views that do not select from a single table or view are not automatically updatable." msgstr "Las vistas que no extraen desde una única tabla o vista no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2725 +#: rewrite/rewriteHandler.c:2728 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "Las vistas que contienen TABLESAMPLE no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2749 +#: rewrite/rewriteHandler.c:2752 msgid "Views that have no updatable columns are not automatically updatable." msgstr "Las vistas que no tienen columnas actualizables no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3133 rewrite/rewriteHandler.c:3168 #, c-format msgid "cannot insert into view \"%s\"" msgstr "no se puede insertar en la vista «%s»" -#: rewrite/rewriteHandler.c:3133 +#: rewrite/rewriteHandler.c:3136 #, c-format msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule." msgstr "Para posibilitar las inserciones en la vista, provea un “trigger” INSTEAD OF INSERT o una regla incodicional ON INSERT DO INSTEAD." -#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3141 rewrite/rewriteHandler.c:3177 #, c-format msgid "cannot update view \"%s\"" msgstr "no se puede actualizar la vista «%s»" -#: rewrite/rewriteHandler.c:3141 +#: rewrite/rewriteHandler.c:3144 #, c-format msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule." msgstr "Para posibilitar las actualizaciones en la vista, provea un “trigger” INSTEAD OF UPDATE o una regla incondicional ON UPDATE DO INSTEAD." -#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 +#: rewrite/rewriteHandler.c:3149 rewrite/rewriteHandler.c:3186 #, c-format msgid "cannot delete from view \"%s\"" msgstr "no se puede eliminar de la vista «%s»" -#: rewrite/rewriteHandler.c:3149 +#: rewrite/rewriteHandler.c:3152 #, c-format msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule." msgstr "Para posibilitar las eliminaciones en la vista, provea un “trigger” INSTEAD OF DELETE o una regla incondicional ON DELETE DO INSTEAD." -#: rewrite/rewriteHandler.c:3168 +#: rewrite/rewriteHandler.c:3171 #, c-format msgid "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT trigger." msgstr "Para posibilitar insertar en la vista usando MERGE, provea un “trigger” INSTEAD OF INSERT." -#: rewrite/rewriteHandler.c:3177 +#: rewrite/rewriteHandler.c:3180 #, c-format msgid "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE trigger." msgstr "Para posibilitar actualizar la vista usando MERGE, provea un “trigger” INSTEAD OF UPDATE." -#: rewrite/rewriteHandler.c:3186 +#: rewrite/rewriteHandler.c:3189 #, c-format msgid "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE trigger." msgstr "Para posibilitar eliminar de la vista usando MERGE, provea un “trigger” INSTEAD OF DELETE." -#: rewrite/rewriteHandler.c:3361 +#: rewrite/rewriteHandler.c:3364 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "no se puede insertar en la columna «%s» de la vista «%s»" -#: rewrite/rewriteHandler.c:3369 +#: rewrite/rewriteHandler.c:3372 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "no se puede actualizar la columna «%s» vista «%s»" -#: rewrite/rewriteHandler.c:3377 +#: rewrite/rewriteHandler.c:3380 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "no se puede hacer «merge» en la columna «%s» de la vista «%s»" -#: rewrite/rewriteHandler.c:3405 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "cannot merge into view \"%s\"" msgstr "no se puede hacer «merge» en la vista «%s»" -#: rewrite/rewriteHandler.c:3407 +#: rewrite/rewriteHandler.c:3410 #, c-format msgid "MERGE is not supported for views with INSTEAD OF triggers for some actions but not all." msgstr "MERGE no está soportado para vistas con triggers INSTEAD OF para algunas acciones pero no todas." -#: rewrite/rewriteHandler.c:3408 +#: rewrite/rewriteHandler.c:3411 #, c-format msgid "To enable merging into the view, either provide a full set of INSTEAD OF triggers or drop the existing INSTEAD OF triggers." msgstr "Para posibilitar hacer “merge” en la vista, provea un conjunto completo de “triggers” INSTEAD OF o elimine los “triggers” INSTEAD OF existentes." -#: rewrite/rewriteHandler.c:3923 +#: rewrite/rewriteHandler.c:3942 #, c-format msgid "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in WITH" msgstr "las reglas DO INSTEAD NOTIFY no están soportadas para sentencias que modifiquen datos en WITH" -#: rewrite/rewriteHandler.c:3934 +#: rewrite/rewriteHandler.c:3953 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH" msgstr "las reglas DO INSTEAD NOTHING no están soportadas para sentencias que modifiquen datos en WITH" -#: rewrite/rewriteHandler.c:3948 +#: rewrite/rewriteHandler.c:3967 #, c-format msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "las reglas DO INSTEAD condicionales no están soportadas para sentencias que modifiquen datos en WITH" -#: rewrite/rewriteHandler.c:3952 +#: rewrite/rewriteHandler.c:3971 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "las reglas DO ALSO no están soportadas para sentencias que modifiquen datos en WITH" -#: rewrite/rewriteHandler.c:3957 +#: rewrite/rewriteHandler.c:3976 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "las reglas DO INSTEAD de múltiples sentencias no están soportadas para sentencias que modifiquen datos en WITH" # XXX a %s here would be nice ... -#: rewrite/rewriteHandler.c:4217 +#: rewrite/rewriteHandler.c:4237 msgid "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "Las vistas con reglas DO INSTEAD condicionales no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:4314 +#: rewrite/rewriteHandler.c:4335 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "no se puede hacer INSERT RETURNING a la relación «%s»" -#: rewrite/rewriteHandler.c:4316 +#: rewrite/rewriteHandler.c:4337 #, c-format msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." msgstr "Necesita un regla incondicional ON INSERT DO INSTEAD con una cláusula RETURNING." -#: rewrite/rewriteHandler.c:4321 +#: rewrite/rewriteHandler.c:4342 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "no se puede hacer UPDATE RETURNING a la relación «%s»" -#: rewrite/rewriteHandler.c:4323 +#: rewrite/rewriteHandler.c:4344 #, c-format msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." msgstr "Necesita un regla incondicional ON UPDATE DO INSTEAD con una cláusula RETURNING." -#: rewrite/rewriteHandler.c:4328 +#: rewrite/rewriteHandler.c:4349 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "no se puede hacer DELETE RETURNING a la relación «%s»" -#: rewrite/rewriteHandler.c:4330 +#: rewrite/rewriteHandler.c:4351 #, c-format msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." msgstr "Necesita un regla incondicional ON DELETE DO INSTEAD con una clásula RETURNING." -#: rewrite/rewriteHandler.c:4348 +#: rewrite/rewriteHandler.c:4369 #, c-format msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules" msgstr "INSERT con una cláusula ON CONFLICT no puede usarse con una tabla que tiene reglas INSERT o UPDATE" -#: rewrite/rewriteHandler.c:4405 +#: rewrite/rewriteHandler.c:4426 #, c-format msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries" msgstr "WITH no puede ser usado en una consulta que está siendo convertida en múltiples consultas a través de reglas" @@ -23236,7 +23186,7 @@ msgstr "el argumento de %s debe ser un nombre" #: statistics/stat_utils.c:316 #, c-format msgid "Provide an even number of variadic arguments that can be divided into pairs." -msgstr "" +msgstr "Provea un número par de argumentos variádicos que puedan ser separados en pares." #: statistics/stat_utils.c:330 #, fuzzy, c-format @@ -23247,28 +23197,27 @@ msgstr "el elemento en la posición %d de la ruta es null" #: statistics/stat_utils.c:334 #, c-format msgid "name at variadic position %d has type %s, expected type %s" -msgstr "" +msgstr "el nombre en la posición variádica %d tiene tipo %s, se esperaba tipo %s" #: storage/aio/aio.c:1343 #, c-format msgid "Only -1 or values bigger than 0 are valid." -msgstr "" +msgstr "Sólo -1 o valores mayores que 0 son válidos." #: storage/aio/method_io_uring.c:369 msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." -msgstr "" +msgstr "Verifique si io_uring está desactivado vía /proc/sys/kernel/io_uring_disabled." #: storage/aio/method_io_uring.c:374 -#, fuzzy, c-format +#, c-format #| msgid "Consider increasing the configuration parameter \"%s\"." msgid "Consider increasing \"ulimit -n\" to at least %d." -msgstr "Considere incrementar el parámetro de configuración «%s»." +msgstr "Considere incrementar «ulimit -n» al menos a %d." #: storage/aio/method_io_uring.c:380 -#, fuzzy #| msgid "The server (version %s) does not support subscriptions." msgid "The kernel does not support io_uring." -msgstr "El servidor (versión %s) no soporta suscripciones." +msgstr "El kernel no soporta io_uring." #: storage/aio/method_io_uring.c:388 #, fuzzy, c-format @@ -23279,12 +23228,12 @@ msgstr "no se pudo borrar el archivo «%s»: %m" #: storage/aio/method_io_uring.c:522 #, c-format msgid "completing I/O on behalf of process %d" -msgstr "" +msgstr "completando I/O a nombre del proceso %d" #: storage/aio/method_worker.c:382 #, c-format msgid "I/O worker executing I/O on behalf of process %d" -msgstr "" +msgstr "trabajador I/O ejecutando I/O a nombre del proceso %d" #: storage/buffer/bufmgr.c:662 storage/buffer/bufmgr.c:818 #, c-format @@ -23297,10 +23246,10 @@ msgid "cannot extend relation %s beyond %u blocks" msgstr "no se puede extender la relación %s más allá de %u bloques" #: storage/buffer/bufmgr.c:2774 -#, fuzzy, c-format +#, c-format #| msgid "unexpected data beyond EOF in block %u of relation %s" msgid "unexpected data beyond EOF in block %u of relation \"%s\"" -msgstr "datos inesperados más allá del EOF en el bloque %u de relación %s" +msgstr "datos inesperados más allá del EOF en el bloque %u de relación «%s»" #: storage/buffer/bufmgr.c:2777 #, c-format @@ -23318,10 +23267,10 @@ msgid "Multiple failures --- write error might be permanent." msgstr "Múltiples fallas --- el error de escritura puede ser permanente." #: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 -#, fuzzy, c-format +#, c-format #| msgid "writing block %u of relation %s" msgid "writing block %u of relation \"%s\"" -msgstr "escribiendo el bloque %u de la relación %s" +msgstr "escribiendo el bloque %u de la relación «%s»" #: storage/buffer/bufmgr.c:7317 #, c-format @@ -23439,7 +23388,7 @@ msgstr "no se pudo determinar el tamaño del archivo temporal «%s» del BufFile msgid "could not delete fileset \"%s\": %m" msgstr "no se pudo borrar el “fileset” «%s»: %m" -#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1318 +#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1332 #, c-format msgid "could not truncate file \"%s\": %m" msgstr "no se pudo truncar el archivo «%s»: %m" @@ -23450,144 +23399,144 @@ msgstr "no se pudo truncar el archivo «%s»: %m" msgid "could not clone file \"%s\" to \"%s\": %m" msgstr "no se pudo copiar el archivo de «%s» a «%s»: %m" -#: storage/file/fd.c:580 storage/file/fd.c:652 storage/file/fd.c:688 +#: storage/file/fd.c:583 storage/file/fd.c:655 storage/file/fd.c:691 #, c-format msgid "could not flush dirty data: %m" msgstr "no se pudo sincronizar (flush) datos «sucios»: %m" -#: storage/file/fd.c:610 +#: storage/file/fd.c:613 #, c-format msgid "could not determine dirty data size: %m" msgstr "no se pudo determinar el tamaño de los datos «sucios»: %m" -#: storage/file/fd.c:662 +#: storage/file/fd.c:665 #, c-format msgid "could not munmap() while flushing data: %m" msgstr "no se pudo ejecutar munmap() mientras se sincronizaban (flush) datos: %m" -#: storage/file/fd.c:980 +#: storage/file/fd.c:983 #, c-format msgid "getrlimit failed: %m" msgstr "getrlimit falló: %m" -#: storage/file/fd.c:1071 +#: storage/file/fd.c:1074 #, c-format msgid "insufficient file descriptors available to start server process" msgstr "los descriptores de archivo disponibles son insuficientes para iniciar un proceso servidor" -#: storage/file/fd.c:1072 +#: storage/file/fd.c:1075 #, fuzzy, c-format #| msgid "System allows %d, server needs at least %d." msgid "System allows %d, server needs at least %d, %d files are already open." msgstr "El sistema permite %d, el servidor necesita al menos %d." -#: storage/file/fd.c:1161 storage/file/fd.c:2676 storage/file/fd.c:2785 -#: storage/file/fd.c:2939 +#: storage/file/fd.c:1164 storage/file/fd.c:2679 storage/file/fd.c:2788 +#: storage/file/fd.c:2942 #, c-format msgid "out of file descriptors: %m; release and retry" msgstr "se agotaron los descriptores de archivo: %m; libere e intente nuevamente" -#: storage/file/fd.c:1537 +#: storage/file/fd.c:1540 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "archivo temporal: ruta «%s», tamaño %lu" -#: storage/file/fd.c:1676 +#: storage/file/fd.c:1679 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "no se pudo crear el directorio temporal «%s»: %m" -#: storage/file/fd.c:1683 +#: storage/file/fd.c:1686 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "no se pudo crear el subdirectorio temporal «%s»: %m" -#: storage/file/fd.c:1880 +#: storage/file/fd.c:1883 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "no se pudo crear el archivo temporal «%s»: %m" -#: storage/file/fd.c:1916 +#: storage/file/fd.c:1919 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "no se pudo abrir el archivo temporal «%s»: %m" -#: storage/file/fd.c:1957 +#: storage/file/fd.c:1960 #, c-format msgid "could not unlink temporary file \"%s\": %m" msgstr "no se pudo eliminar (unlink) el archivo temporal «%s»: %m" -#: storage/file/fd.c:2047 +#: storage/file/fd.c:2050 #, c-format msgid "could not delete file \"%s\": %m" msgstr "no se pudo borrar el archivo «%s»: %m" -#: storage/file/fd.c:2286 +#: storage/file/fd.c:2289 #, fuzzy, c-format #| msgid "temporary file size exceeds temp_file_limit (%dkB)" msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" msgstr "el tamaño del archivo temporal excede temp_file_limit permitido (%dkB)" -#: storage/file/fd.c:2652 storage/file/fd.c:2711 +#: storage/file/fd.c:2655 storage/file/fd.c:2714 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\"" msgstr "se excedió maxAllocatedDescs (%d) mientras se trataba de abrir el archivo «%s»" -#: storage/file/fd.c:2756 +#: storage/file/fd.c:2759 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\"" msgstr "se excedió maxAllocatedDescs (%d) mientras se trataba de ejecutar la orden «%s»" -#: storage/file/fd.c:2915 +#: storage/file/fd.c:2918 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\"" msgstr "se excedió maxAllocatedDescs (%d) mientras se trataba de abrir el directorio «%s»" -#: storage/file/fd.c:3446 +#: storage/file/fd.c:3449 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "archivo inesperado en directorio de archivos temporales: «%s»" -#: storage/file/fd.c:3564 +#: storage/file/fd.c:3567 #, c-format msgid "syncing data directory (syncfs), elapsed time: %ld.%02d s, current path: %s" msgstr "sincronizando el directorio de datos (syncfs), transcurrido: %ld.%02d s, ruta actual: %s" -#: storage/file/fd.c:3791 +#: storage/file/fd.c:3794 #, c-format msgid "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "sincronizando el directorio de datos (pre-fsync), transcurrido: %ld.%02d s, ruta actual: %s" -#: storage/file/fd.c:3823 +#: storage/file/fd.c:3826 #, c-format msgid "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "sincronizando el directorio de datos (fsync), transcurrido: %ld.%02d s, ruta actual: %s" -#: storage/file/fd.c:4012 +#: storage/file/fd.c:4015 #, fuzzy, c-format #| msgid "LDAP URLs not supported on this platform" msgid "\"%s\" is not supported on this platform." msgstr "las URLs LDAP no está soportado en esta plataforma" -#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 +#: storage/file/fd.c:4030 tcop/backend_startup.c:1080 #, fuzzy, c-format #| msgid "Invalid list syntax in parameter \"%s\"" msgid "Invalid list syntax in parameter \"%s\"." msgstr "Sintaxis de lista no válida en el parámetro «%s»" -#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 +#: storage/file/fd.c:4050 tcop/backend_startup.c:1054 #, fuzzy, c-format #| msgid "Invalid option \"%s\"" msgid "Invalid option \"%s\"." msgstr "Nombre de opción «%s» no válido." -#: storage/file/fd.c:4060 +#: storage/file/fd.c:4063 #, fuzzy, c-format #| msgid "\"debug_io_direct\" is not supported for WAL because XLOG_BLCKSZ is too small" msgid "\"%s\" is not supported for WAL because %s is too small." msgstr "«debug_io_direct» no está soportado para WAL porque XLOG_BLCKSZ es demasiado pequeño" -#: storage/file/fd.c:4068 +#: storage/file/fd.c:4071 #, fuzzy, c-format #| msgid "\"debug_io_direct\" is not supported for data because BLCKSZ is too small" msgid "\"%s\" is not supported for data because %s is too small." @@ -23678,22 +23627,22 @@ msgstr "no se pudo cerrar el segmento de memoria compartida «%s»: %m" msgid "could not duplicate handle for \"%s\": %m" msgstr "no se pudo duplicar el «handle» para «%s»: %m" -#: storage/ipc/dsm_registry.c:142 +#: storage/ipc/dsm_registry.c:144 #, c-format msgid "DSM segment name cannot be empty" msgstr "el nombre del segmento DSM no puede ser vacío" -#: storage/ipc/dsm_registry.c:146 +#: storage/ipc/dsm_registry.c:148 #, c-format msgid "DSM segment name too long" msgstr "nombre de segmento DSM es demasiado largo" -#: storage/ipc/dsm_registry.c:150 +#: storage/ipc/dsm_registry.c:152 #, c-format msgid "DSM segment size must be nonzero" msgstr "el tamaño del segmento DSM debe ser distinto de cero" -#: storage/ipc/dsm_registry.c:176 +#: storage/ipc/dsm_registry.c:168 #, c-format msgid "requested DSM segment size does not match size of existing segment" msgstr "el tamaño solicitado de segmento de DSM no coincide con el tamaño del segmento existente" @@ -24199,7 +24148,7 @@ msgstr "puntero de ítem corrupto: desplazamiento = %u, tamaño = %u" msgid "cannot extend file \"%s\" beyond %u blocks" msgstr "no se pudo extender el archivo «%s» más allá de %u bloques" -#: storage/smgr/md.c:517 storage/smgr/md.c:628 +#: storage/smgr/md.c:517 storage/smgr/md.c:639 #, c-format msgid "could not extend file \"%s\": %m" msgstr "no se pudo extender el archivo «%s»: %m" @@ -24209,65 +24158,65 @@ msgstr "no se pudo extender el archivo «%s»: %m" msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u" msgstr "no se pudo extender el archivo «%s»: sólo se escribieron %d de %d bytes en el bloque %u" -#: storage/smgr/md.c:606 +#: storage/smgr/md.c:617 #, c-format msgid "could not extend file \"%s\" with FileFallocate(): %m" msgstr "no se pudo extender el archivo «%s» con FileFallocate(): %m" -#: storage/smgr/md.c:899 storage/smgr/md.c:2047 +#: storage/smgr/md.c:910 storage/smgr/md.c:2061 #, c-format msgid "could not read blocks %u..%u in file \"%s\": %m" msgstr "no se pudo leer los bloques %u..%u del archivo «%s»: %m" -#: storage/smgr/md.c:946 storage/smgr/md.c:2060 +#: storage/smgr/md.c:957 storage/smgr/md.c:2074 #, c-format msgid "could not read blocks %u..%u in file \"%s\": read only %zu of %zu bytes" msgstr "no se pudo leer los bloques %u..%u del archivo «%s»: se leyeron sólo %zu de %zu bytes" -#: storage/smgr/md.c:1023 +#: storage/smgr/md.c:1034 #, fuzzy, c-format #| msgid "could not read blocks %u..%u in file \"%s\": %m" msgid "could not start reading blocks %u..%u in file \"%s\": %m" msgstr "no se pudo leer los bloques %u..%u del archivo «%s»: %m" -#: storage/smgr/md.c:1119 +#: storage/smgr/md.c:1130 #, c-format msgid "could not write blocks %u..%u in file \"%s\": %m" msgstr "no se pudo escribir los bloques %u..%u en el archivo «%s»: %m" -#: storage/smgr/md.c:1289 +#: storage/smgr/md.c:1303 #, c-format msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now" msgstr "no se pudo truncar el archivo «%s» a %u bloques: es de sólo %u bloques ahora" -#: storage/smgr/md.c:1344 +#: storage/smgr/md.c:1358 #, c-format msgid "could not truncate file \"%s\" to %u blocks: %m" msgstr "no se pudo truncar el archivo «%s» a %u bloques: %m" -#: storage/smgr/md.c:1832 +#: storage/smgr/md.c:1846 #, c-format msgid "could not open file \"%s\" (target block %u): previous segment is only %u blocks" msgstr "no se pudo abrir el archivo «%s» (bloque buscado %u): el segmento previo sólo tiene %u bloques" -#: storage/smgr/md.c:1846 +#: storage/smgr/md.c:1860 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "no se pudo abrir el archivo «%s» (bloque buscado %u): %m" -#: storage/smgr/smgr.c:1106 +#: storage/smgr/smgr.c:1115 #, fuzzy, c-format #| msgid ", \"%s\"" msgid "file \"%s\"" msgstr ", «%s»" -#: storage/smgr/smgr.c:1108 +#: storage/smgr/smgr.c:1117 #, fuzzy, c-format #| msgid "could not read block %u in file \"%s\": %m" msgid "block %u in file \"%s\"" msgstr "no se pudo leer el bloque %u del archivo «%s»: %m" -#: storage/smgr/smgr.c:1112 +#: storage/smgr/smgr.c:1121 #, fuzzy, c-format #| msgid "could not read blocks %u..%u in file \"%s\": %m" msgid "blocks %u..%u in file \"%s\"" @@ -24859,7 +24808,7 @@ msgstr "Sólo los roles con privilegios del rol «%s» pueden ejecutar esta sent #: tcop/utility.c:1886 #, c-format msgid "CREATE STATISTICS only supports relation names in the FROM clause" -msgstr "" +msgstr "CREATE STATISTICS sólo puede aceptar nombres de relación en la cláusula FROM" #: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:616 #, c-format @@ -25221,10 +25170,9 @@ msgid "Failed while allocating entry %u/%u/%." msgstr "Falló mientras se emplazaba un procesador de lectura de WAL." #: utils/activity/pgstat_xact.c:366 -#, fuzzy, c-format -#| msgid "resetting existing statistics for kind %s, db=%u, oid=%u" +#, c-format msgid "resetting existing statistics for kind %s, db=%u, oid=%" -msgstr "reseteando estadísticas existentes para el tipo %s, db=%u, oid=%u" +msgstr "reseteando estadísticas existentes para el tipo %s, db=%u, oid=%" #: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format @@ -25360,7 +25308,7 @@ msgstr "el tipo de entrada no es un array" #: utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 #: utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 #: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 -#: utils/adt/varlena.c:3184 utils/adt/varlena.c:4118 +#: utils/adt/varlena.c:3195 utils/adt/varlena.c:4129 #, c-format msgid "integer out of range" msgstr "entero fuera de rango" @@ -25606,8 +25554,8 @@ msgstr "los arrays con elementos null no son permitidos en este contexto" msgid "cannot compare arrays of different element types" msgstr "no se pueden comparar arrays con elementos de distintos tipos" -#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2805 -#: utils/adt/multirangetypes.c:2877 utils/adt/rangetypes.c:1425 +#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2806 +#: utils/adt/multirangetypes.c:2878 utils/adt/rangetypes.c:1425 #: utils/adt/rangetypes.c:1489 utils/adt/rowtypes.c:1893 #, c-format msgid "could not identify a hash function for type %s" @@ -26090,7 +26038,7 @@ msgstr "«%s» está fuera de rango para el tipo double precision" #: utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 #: utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 #: utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 -#: utils/adt/varlena.c:4093 +#: utils/adt/varlena.c:4104 #, c-format msgid "smallint out of range" msgstr "smallint fuera de rango" @@ -26524,7 +26472,7 @@ msgstr "el tamaño de paso no puede ser cero" #: utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 #: utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 #: utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 -#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4143 +#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4154 #, c-format msgid "bigint out of range" msgstr "bigint fuera de rango" @@ -27274,12 +27222,12 @@ msgstr "Se esperaba inicio de rango." msgid "Expected comma or end of multirange." msgstr "Se esperaba una coma o el final del multirango." -#: utils/adt/multirangetypes.c:981 +#: utils/adt/multirangetypes.c:982 #, c-format msgid "multiranges cannot be constructed from multidimensional arrays" msgstr "no se puede construir multirangos a partir de arrays multidimensionales" -#: utils/adt/multirangetypes.c:1007 +#: utils/adt/multirangetypes.c:1008 #, c-format msgid "multirange values cannot contain null members" msgstr "valores de multirango no pueden contener miembros nulos" @@ -27793,7 +27741,7 @@ msgstr "Demasiadas comas." msgid "Junk after right parenthesis or bracket." msgstr "Basura después del paréntesis o corchete derecho." -#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4486 #, c-format msgid "regular expression failed: %s" msgstr "la expresión regular falló: %s" @@ -27871,7 +27819,7 @@ msgid "Provide two argument types for operator." msgstr "Provea dos tipos de argumento para un operador." #: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 -#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3481 utils/adt/varlena.c:3486 +#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3492 utils/adt/varlena.c:3497 #, c-format msgid "invalid name syntax" msgstr "la sintaxis de nombre no es válida" @@ -28437,8 +28385,8 @@ msgid "bit string too long for type bit varying(%d)" msgstr "la cadena de bits es demasiado larga para el tipo bit varying(%d)" #: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 -#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3102 -#: utils/adt/varlena.c:3180 +#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3113 +#: utils/adt/varlena.c:3191 #, c-format msgid "negative substring length not allowed" msgstr "no se permite un largo negativo de subcadena" @@ -28463,7 +28411,7 @@ msgstr "no se puede hacer XOR entre cadenas de bits de distintos tamaños" msgid "bit index %d out of valid range (0..%d)" msgstr "el índice de bit %d está fuera del rango válido (0..%d)" -#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3395 #, c-format msgid "new bit must be 0 or 1" msgstr "el nuevo bit debe ser 0 o 1" @@ -28478,93 +28426,93 @@ msgstr "el valor es demasiado largo para el tipo character(%d)" msgid "value too long for type character varying(%d)" msgstr "el valor es demasiado largo para el tipo character varying(%d)" -#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1602 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "no se pudo determinar qué ordenamiento usar para la comparación de cadenas" -#: utils/adt/varlena.c:1864 +#: utils/adt/varlena.c:1875 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "los ordenamientos no determinísticos no están soportados para búsquedas de sub-cadenas" -#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 +#: utils/adt/varlena.c:3279 utils/adt/varlena.c:3346 #, c-format msgid "index %d out of valid range, 0..%d" msgstr "el índice %d está fuera de rango [0..%d]" -#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#: utils/adt/varlena.c:3310 utils/adt/varlena.c:3382 #, fuzzy, c-format #| msgid "index %d out of valid range, 0..%d" msgid "index % out of valid range, 0..%" msgstr "el índice %d está fuera de rango [0..%d]" -#: utils/adt/varlena.c:4587 +#: utils/adt/varlena.c:4598 #, c-format msgid "field position must not be zero" msgstr "la posición del campo no debe ser cero" -#: utils/adt/varlena.c:5832 +#: utils/adt/varlena.c:5843 #, c-format msgid "unterminated format() type specifier" msgstr "especificador de tipo inconcluso en format()" -#: utils/adt/varlena.c:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 +#: utils/adt/varlena.c:5844 utils/adt/varlena.c:5978 utils/adt/varlena.c:6099 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "Para un «%%» solo, use «%%%%»." -#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 +#: utils/adt/varlena.c:5976 utils/adt/varlena.c:6097 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "especificador de tipo no reconocido «%.*s» en format()" -#: utils/adt/varlena.c:5978 utils/adt/varlena.c:6035 +#: utils/adt/varlena.c:5989 utils/adt/varlena.c:6046 #, c-format msgid "too few arguments for format()" msgstr "muy pocos argumentos para format()" -#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 +#: utils/adt/varlena.c:6142 utils/adt/varlena.c:6324 #, c-format msgid "number is out of range" msgstr "el número está fuera de rango" -#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 +#: utils/adt/varlena.c:6205 utils/adt/varlena.c:6233 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "la conversión especifica el argumento 0, pero los argumentos se numeran desde 1" -#: utils/adt/varlena.c:6215 +#: utils/adt/varlena.c:6226 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "la posición del argumento de anchura debe terminar con «$»" -#: utils/adt/varlena.c:6260 +#: utils/adt/varlena.c:6271 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "los valores nulos no pueden ser formateados como un identificador SQL" -#: utils/adt/varlena.c:6468 +#: utils/adt/varlena.c:6479 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "la normalización Unicode sólo puede ser hecha si la codificación de servidor es UTF8" -#: utils/adt/varlena.c:6481 +#: utils/adt/varlena.c:6492 #, c-format msgid "invalid normalization form: %s" msgstr "forma de normalización no válida: %s" -#: utils/adt/varlena.c:6526 +#: utils/adt/varlena.c:6537 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "la categorización Unicode sólo puede ser hecha si la codificación de servidor es UTF8" -#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 +#: utils/adt/varlena.c:6754 utils/adt/varlena.c:6789 utils/adt/varlena.c:6824 #, c-format msgid "invalid Unicode code point: %04X" msgstr "punto de código Unicode no válido: %04X" -#: utils/adt/varlena.c:6843 +#: utils/adt/varlena.c:6854 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "Los escapes Unicode deben ser \\XXXX, \\+XXXXXX, \\uXXXX o \\UXXXXXXXX." @@ -29851,2360 +29799,2366 @@ msgstr "SET %s lleva sólo un argumento" msgid "SET requires parameter name" msgstr "SET requiere el nombre de un parámetro" -#: utils/misc/guc_tables.c:692 +#: utils/misc/guc_tables.c:701 msgid "Ungrouped" msgstr "Sin Grupo" -#: utils/misc/guc_tables.c:693 +#: utils/misc/guc_tables.c:702 msgid "File Locations" msgstr "Ubicaciones de Archivos" -#: utils/misc/guc_tables.c:694 +#: utils/misc/guc_tables.c:703 msgid "Connections and Authentication / Connection Settings" msgstr "Conexiones y Autentificación / Parámetros de Conexión" -#: utils/misc/guc_tables.c:695 +#: utils/misc/guc_tables.c:704 msgid "Connections and Authentication / TCP Settings" msgstr "Conexiones y Autentificación / Parámetros TCP" -#: utils/misc/guc_tables.c:696 +#: utils/misc/guc_tables.c:705 msgid "Connections and Authentication / Authentication" msgstr "Conexiones y Autentificación / Autentificación" -#: utils/misc/guc_tables.c:697 +#: utils/misc/guc_tables.c:706 msgid "Connections and Authentication / SSL" msgstr "Conexiones y Autentificación / SSL" -#: utils/misc/guc_tables.c:698 +#: utils/misc/guc_tables.c:707 msgid "Resource Usage / Memory" msgstr "Uso de Recursos / Memoria" -#: utils/misc/guc_tables.c:699 +#: utils/misc/guc_tables.c:708 msgid "Resource Usage / Disk" msgstr "Uso de Recursos / Disco" -#: utils/misc/guc_tables.c:700 +#: utils/misc/guc_tables.c:709 msgid "Resource Usage / Kernel Resources" msgstr "Uso de Recursos / Recursos del Kernel" -#: utils/misc/guc_tables.c:701 +#: utils/misc/guc_tables.c:710 msgid "Resource Usage / Background Writer" msgstr "Uso de Recursos / Escritor en Segundo Plano" -#: utils/misc/guc_tables.c:702 +#: utils/misc/guc_tables.c:711 #, fuzzy #| msgid "Resource Usage / Disk" msgid "Resource Usage / I/O" msgstr "Uso de Recursos / Disco" -#: utils/misc/guc_tables.c:703 +#: utils/misc/guc_tables.c:712 #, fuzzy #| msgid "Resource Usage / Kernel Resources" msgid "Resource Usage / Worker Processes" msgstr "Uso de Recursos / Recursos del Kernel" -#: utils/misc/guc_tables.c:704 +#: utils/misc/guc_tables.c:713 msgid "Write-Ahead Log / Settings" msgstr "Write-Ahead Log / Configuraciones" -#: utils/misc/guc_tables.c:705 +#: utils/misc/guc_tables.c:714 msgid "Write-Ahead Log / Checkpoints" msgstr "Write-Ahead Log / Puntos de Control (Checkpoints)" -#: utils/misc/guc_tables.c:706 +#: utils/misc/guc_tables.c:715 msgid "Write-Ahead Log / Archiving" msgstr "Write-Ahead Log / Archivado" -#: utils/misc/guc_tables.c:707 +#: utils/misc/guc_tables.c:716 msgid "Write-Ahead Log / Recovery" msgstr "Write-Ahead Log / Recuperación" -#: utils/misc/guc_tables.c:708 +#: utils/misc/guc_tables.c:717 msgid "Write-Ahead Log / Archive Recovery" msgstr "Write-Ahead Log / Recuperación desde Archivo" -#: utils/misc/guc_tables.c:709 +#: utils/misc/guc_tables.c:718 msgid "Write-Ahead Log / Recovery Target" msgstr "Write-Ahead Log / Destino de Recuperación" -#: utils/misc/guc_tables.c:710 +#: utils/misc/guc_tables.c:719 msgid "Write-Ahead Log / Summarization" msgstr "Write-Ahead Log / Sumarización" -#: utils/misc/guc_tables.c:711 +#: utils/misc/guc_tables.c:720 msgid "Replication / Sending Servers" msgstr "Replicación / Servidores de Envío" -#: utils/misc/guc_tables.c:712 +#: utils/misc/guc_tables.c:721 msgid "Replication / Primary Server" msgstr "Replicación / Servidor Primario" -#: utils/misc/guc_tables.c:713 +#: utils/misc/guc_tables.c:722 msgid "Replication / Standby Servers" msgstr "Replicación / Servidores Standby" -#: utils/misc/guc_tables.c:714 +#: utils/misc/guc_tables.c:723 msgid "Replication / Subscribers" msgstr "Replicación / Suscriptores" -#: utils/misc/guc_tables.c:715 +#: utils/misc/guc_tables.c:724 msgid "Query Tuning / Planner Method Configuration" msgstr "Afinamiento de Consultas / Configuración de Métodos del Planner" -#: utils/misc/guc_tables.c:716 +#: utils/misc/guc_tables.c:725 msgid "Query Tuning / Planner Cost Constants" msgstr "Afinamiento de Consultas / Constantes de Costo del Planner" -#: utils/misc/guc_tables.c:717 +#: utils/misc/guc_tables.c:726 msgid "Query Tuning / Genetic Query Optimizer" msgstr "Afinamiento de Consultas / Optimizador Genético de Consultas" -#: utils/misc/guc_tables.c:718 +#: utils/misc/guc_tables.c:727 msgid "Query Tuning / Other Planner Options" msgstr "Afinamiento de Consultas / Otras Opciones del Planner" -#: utils/misc/guc_tables.c:719 +#: utils/misc/guc_tables.c:728 msgid "Reporting and Logging / Where to Log" msgstr "Reporte y Registro / Dónde Registrar" -#: utils/misc/guc_tables.c:720 +#: utils/misc/guc_tables.c:729 msgid "Reporting and Logging / When to Log" msgstr "Reporte y Registro / Cuándo Registrar" -#: utils/misc/guc_tables.c:721 +#: utils/misc/guc_tables.c:730 msgid "Reporting and Logging / What to Log" msgstr "Reporte y Registro / Qué Registrar" -#: utils/misc/guc_tables.c:722 +#: utils/misc/guc_tables.c:731 msgid "Reporting and Logging / Process Title" msgstr "Reporte y Registro / Título del Proceso" -#: utils/misc/guc_tables.c:723 +#: utils/misc/guc_tables.c:732 msgid "Statistics / Monitoring" msgstr "Estadísticas / Monitoreo" -#: utils/misc/guc_tables.c:724 +#: utils/misc/guc_tables.c:733 msgid "Statistics / Cumulative Query and Index Statistics" msgstr "Estadísticas / Acumuladores de Consultas e Índices" -#: utils/misc/guc_tables.c:725 +#: utils/misc/guc_tables.c:734 msgid "Vacuuming / Automatic Vacuuming" msgstr "" -#: utils/misc/guc_tables.c:726 +#: utils/misc/guc_tables.c:735 #, fuzzy #| msgid "Resource Usage / Cost-Based Vacuum Delay" msgid "Vacuuming / Cost-Based Vacuum Delay" msgstr "Uso de Recursos / Retardo de Vacuum por Costos" -#: utils/misc/guc_tables.c:727 +#: utils/misc/guc_tables.c:736 msgid "Vacuuming / Default Behavior" msgstr "" -#: utils/misc/guc_tables.c:728 +#: utils/misc/guc_tables.c:737 msgid "Vacuuming / Freezing" msgstr "" -#: utils/misc/guc_tables.c:729 +#: utils/misc/guc_tables.c:738 msgid "Client Connection Defaults / Statement Behavior" msgstr "Valores por Omisión de Conexiones / Comportamiento de Sentencias" -#: utils/misc/guc_tables.c:730 +#: utils/misc/guc_tables.c:739 msgid "Client Connection Defaults / Locale and Formatting" msgstr "Valores por Omisión de Conexiones / Configuraciones Regionales y Formateo" -#: utils/misc/guc_tables.c:731 +#: utils/misc/guc_tables.c:740 msgid "Client Connection Defaults / Shared Library Preloading" msgstr "Valores por Omisión de Conexiones / Precargado de Bibliotecas Compartidas" -#: utils/misc/guc_tables.c:732 +#: utils/misc/guc_tables.c:741 msgid "Client Connection Defaults / Other Defaults" msgstr "Valores por Omisión de Conexiones / Otros Valores" -#: utils/misc/guc_tables.c:733 +#: utils/misc/guc_tables.c:742 msgid "Lock Management" msgstr "Manejo de Bloqueos" -#: utils/misc/guc_tables.c:734 +#: utils/misc/guc_tables.c:743 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions" msgstr "Compatibilidad de Versión y Plataforma / Versiones Anteriores de PostgreSQL" -#: utils/misc/guc_tables.c:735 +#: utils/misc/guc_tables.c:744 msgid "Version and Platform Compatibility / Other Platforms and Clients" msgstr "Compatibilidad de Versión y Plataforma / Otras Plataformas y Clientes" -#: utils/misc/guc_tables.c:736 +#: utils/misc/guc_tables.c:745 msgid "Error Handling" msgstr "Gestión de Errores" -#: utils/misc/guc_tables.c:737 +#: utils/misc/guc_tables.c:746 msgid "Preset Options" msgstr "Opciones Predefinidas" -#: utils/misc/guc_tables.c:738 +#: utils/misc/guc_tables.c:747 msgid "Customized Options" msgstr "Opciones Personalizadas" -#: utils/misc/guc_tables.c:739 +#: utils/misc/guc_tables.c:748 msgid "Developer Options" msgstr "Opciones de Desarrollador" -#: utils/misc/guc_tables.c:794 +#: utils/misc/guc_tables.c:803 msgid "Enables the planner's use of sequential-scan plans." msgstr "Permitir el uso de planes de recorrido secuencial." -#: utils/misc/guc_tables.c:804 +#: utils/misc/guc_tables.c:813 msgid "Enables the planner's use of index-scan plans." msgstr "Permitir el uso de planes de recorrido de índice." -#: utils/misc/guc_tables.c:814 +#: utils/misc/guc_tables.c:823 msgid "Enables the planner's use of index-only-scan plans." msgstr "Permitir el uso de planes de recorrido de sólo-índice." -#: utils/misc/guc_tables.c:824 +#: utils/misc/guc_tables.c:833 msgid "Enables the planner's use of bitmap-scan plans." msgstr "Permitir el uso de planes de recorrido de índice por mapas de bits." -#: utils/misc/guc_tables.c:834 +#: utils/misc/guc_tables.c:843 msgid "Enables the planner's use of TID scan plans." msgstr "Permitir el uso de planes de recorrido por TID." -#: utils/misc/guc_tables.c:844 +#: utils/misc/guc_tables.c:853 msgid "Enables the planner's use of explicit sort steps." msgstr "Permitir el uso de pasos explícitos de ordenamiento." -#: utils/misc/guc_tables.c:854 +#: utils/misc/guc_tables.c:863 msgid "Enables the planner's use of incremental sort steps." msgstr "Permitir el uso de pasos incrementales de ordenamiento." -#: utils/misc/guc_tables.c:864 +#: utils/misc/guc_tables.c:873 msgid "Enables the planner's use of hashed aggregation plans." msgstr "Permitir el uso de planes de agregación a través de hash." -#: utils/misc/guc_tables.c:874 +#: utils/misc/guc_tables.c:883 msgid "Enables the planner's use of materialization." msgstr "Permitir el uso de materialización de planes." -#: utils/misc/guc_tables.c:884 +#: utils/misc/guc_tables.c:893 msgid "Enables the planner's use of memoization." msgstr "Permitir el uso de memoización de planes." -#: utils/misc/guc_tables.c:894 +#: utils/misc/guc_tables.c:903 msgid "Enables the planner's use of nested-loop join plans." msgstr "Permitir el uso de planes «nested-loop join»." -#: utils/misc/guc_tables.c:904 +#: utils/misc/guc_tables.c:913 msgid "Enables the planner's use of merge join plans." msgstr "Permitir el uso de planes «merge join»." -#: utils/misc/guc_tables.c:914 +#: utils/misc/guc_tables.c:923 msgid "Enables the planner's use of hash join plans." msgstr "Permitir el uso de planes «hash join»." -#: utils/misc/guc_tables.c:924 +#: utils/misc/guc_tables.c:933 msgid "Enables the planner's use of gather merge plans." msgstr "Permitir el uso de planes «gather merge»." -#: utils/misc/guc_tables.c:934 +#: utils/misc/guc_tables.c:943 msgid "Enables partitionwise join." msgstr "Permitir el uso de joins por particiones." -#: utils/misc/guc_tables.c:944 +#: utils/misc/guc_tables.c:953 msgid "Enables partitionwise aggregation and grouping." msgstr "Permitir el uso de agregación y agrupamiento por particiones." -#: utils/misc/guc_tables.c:954 +#: utils/misc/guc_tables.c:963 msgid "Enables the planner's use of parallel append plans." msgstr "Permitir el uso de planes «append» paralelos." -#: utils/misc/guc_tables.c:964 +#: utils/misc/guc_tables.c:973 msgid "Enables the planner's use of parallel hash plans." msgstr "Permitir el uso de planes «hash join» paralelos." -#: utils/misc/guc_tables.c:974 +#: utils/misc/guc_tables.c:983 msgid "Enables plan-time and execution-time partition pruning." msgstr "Permitir el uso de poda de particiones en tiempo de plan y ejecución." -#: utils/misc/guc_tables.c:975 +#: utils/misc/guc_tables.c:984 msgid "Allows the query planner and executor to compare partition bounds to conditions in the query to determine which partitions must be scanned." msgstr "Permite al optimizador de consultas y al ejecutor a comparar bordes de particiones a condiciones en las consultas para determinar qué particiones deben recorrerse." -#: utils/misc/guc_tables.c:986 +#: utils/misc/guc_tables.c:995 msgid "Enables the planner's ability to produce plans that provide presorted input for ORDER BY / DISTINCT aggregate functions." msgstr "Activa la capacidad del optimizador de permitir planes que proveen entrada pre-ordenada para funciones de agregación ORDER BY / DISTINCT" -#: utils/misc/guc_tables.c:989 +#: utils/misc/guc_tables.c:998 msgid "Allows the query planner to build plans that provide presorted input for aggregate functions with an ORDER BY / DISTINCT clause. When disabled, implicit sorts are always performed during execution." msgstr "Permite al optimizador construir planes que proveen entrada pre-ordenada para funciones de agregación con una cláusula ORDER BY / DISTINCT. Cuando está desactivado, siempre se efectúan ordenamientos implícitos durante la ejecución." -#: utils/misc/guc_tables.c:1001 +#: utils/misc/guc_tables.c:1010 msgid "Enables the planner's use of async append plans." msgstr "Permitir el uso de planes «append» asíncronos." -#: utils/misc/guc_tables.c:1011 +#: utils/misc/guc_tables.c:1020 msgid "Enables removal of unique self-joins." msgstr "" -#: utils/misc/guc_tables.c:1021 +#: utils/misc/guc_tables.c:1030 msgid "Enables reordering of GROUP BY keys." msgstr "Activa el reordenamiento de claves GROUP BY." -#: utils/misc/guc_tables.c:1031 +#: utils/misc/guc_tables.c:1040 #, fuzzy #| msgid "Enables reordering of GROUP BY keys." msgid "Enables reordering of DISTINCT keys." msgstr "Activa el reordenamiento de claves GROUP BY." -#: utils/misc/guc_tables.c:1041 +#: utils/misc/guc_tables.c:1050 msgid "Enables genetic query optimization." msgstr "Permitir el uso del optimizador genético de consultas." -#: utils/misc/guc_tables.c:1042 +#: utils/misc/guc_tables.c:1051 msgid "This algorithm attempts to do planning without exhaustive searching." msgstr "Este algoritmo intenta planear las consultas sin hacer búsqueda exhaustiva." -#: utils/misc/guc_tables.c:1056 +#: utils/misc/guc_tables.c:1065 msgid "Shows whether the current user is a superuser." msgstr "Indica si el usuario actual es superusuario." -#: utils/misc/guc_tables.c:1071 +#: utils/misc/guc_tables.c:1080 msgid "Allows running the ALTER SYSTEM command." msgstr "Permite ejecutar la orden ALTER SYSTEM." -#: utils/misc/guc_tables.c:1072 +#: utils/misc/guc_tables.c:1081 msgid "Can be set to off for environments where global configuration changes should be made using a different method." msgstr "Puede desactivarse en ambientes donde los cambios globales de configuración deban hacerse usando un método diferente." -#: utils/misc/guc_tables.c:1082 +#: utils/misc/guc_tables.c:1091 msgid "Enables advertising the server via Bonjour." msgstr "Permitir la publicación del servidor vía Bonjour." -#: utils/misc/guc_tables.c:1091 +#: utils/misc/guc_tables.c:1100 msgid "Collects transaction commit time." msgstr "Recolectar tiempo de compromiso de transacciones." -#: utils/misc/guc_tables.c:1100 +#: utils/misc/guc_tables.c:1109 msgid "Enables SSL connections." msgstr "Permitir conexiones SSL." -#: utils/misc/guc_tables.c:1109 +#: utils/misc/guc_tables.c:1118 msgid "Controls whether \"ssl_passphrase_command\" is called during server reload." msgstr "Controla si «ssl_passphrase_command» es invocado durante el “reload” del servidor." -#: utils/misc/guc_tables.c:1118 +#: utils/misc/guc_tables.c:1127 msgid "Give priority to server ciphersuite order." msgstr "Da prioridad al orden de algoritmos de cifrado especificado por el servidor." -#: utils/misc/guc_tables.c:1127 +#: utils/misc/guc_tables.c:1136 msgid "Forces synchronization of updates to disk." msgstr "Forzar la sincronización de escrituras a disco." -#: utils/misc/guc_tables.c:1128 +#: utils/misc/guc_tables.c:1137 msgid "The server will use the fsync() system call in several places to make sure that updates are physically written to disk. This ensures that a database cluster will recover to a consistent state after an operating system or hardware crash." msgstr "El servidor usará la llamada a sistema fsync() en varios lugares para asegurarse que las actualizaciones son escritas físicamente a disco. Esto asegura que las bases de datos se recuperarán a un estado consistente después de una caída de hardware o sistema operativo." -#: utils/misc/guc_tables.c:1139 +#: utils/misc/guc_tables.c:1148 msgid "Continues processing after a checksum failure." msgstr "Continuar procesando después de una falla de suma de verificación." -#: utils/misc/guc_tables.c:1140 +#: utils/misc/guc_tables.c:1149 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 "La detección de una suma de verificación que no coincide normalmente hace que PostgreSQL reporte un error, abortando la transacción en curso. Definiendo ignore_checksum_failure a true hace que el sistema ignore la falla (pero aún así reporta un mensaje de warning), y continúe el procesamiento. Este comportamiento podría causar caídas del sistema u otros problemas serios. Sólo tiene efecto si las sumas de verificación están activadas." -#: utils/misc/guc_tables.c:1154 +#: utils/misc/guc_tables.c:1163 msgid "Continues processing past damaged page headers." msgstr "Continuar procesando después de detectar encabezados de página dañados." -#: utils/misc/guc_tables.c:1155 +#: utils/misc/guc_tables.c:1164 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 "La detección de un encabezado de página dañado normalmente hace que PostgreSQL reporte un error, abortando la transacción en curso. Definiendo «zero_damaged_pages» a true hace que el sistema reporte un mensaje de warning, escriba ceros en toda la página, y continúe el procesamiento. Este comportamiento destruirá datos; en particular, todas las tuplas en la página dañada." -#: utils/misc/guc_tables.c:1168 +#: utils/misc/guc_tables.c:1177 msgid "Continues recovery after an invalid pages failure." msgstr "Continuar procesando después de una falla de páginas no válidas." -#: utils/misc/guc_tables.c:1169 +#: utils/misc/guc_tables.c:1178 msgid "Detection of WAL records having references to invalid pages during recovery causes PostgreSQL to raise a PANIC-level error, aborting the recovery. Setting \"ignore_invalid_pages\" to true causes the system to ignore invalid page references in WAL records (but still report a warning), and continue recovery. This behavior may cause crashes, data loss, propagate or hide corruption, or other serious problems. Only has an effect during recovery or in standby mode." msgstr "La detección de que registros de WAL tengan referencias a páginas no válidas durante la recuperación hace que PostgreSQL produzca un error de nivel PANIC, abortando la recuperación. Establecer el valor de «ignore_invalid_pages» a true hace que el sistema ignore las referencias a páginas no válidas en registros de WAL (pero aún así reporta un mensaje de warning), y continúe la recuperación. Este comportamiento podría causar caídas del sistema, pérdida de datos, propagar u ocultar corrupción, u otros problemas serios. Sólo tiene efecto durante la recuperación o en modo standby." -#: utils/misc/guc_tables.c:1187 +#: utils/misc/guc_tables.c:1196 msgid "Writes full pages to WAL when first modified after a checkpoint." msgstr "Escribe páginas completas a WAL cuando son modificadas después de un checkpoint." -#: utils/misc/guc_tables.c:1188 +#: utils/misc/guc_tables.c:1197 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 "Una escritura de página que está siendo procesada durante una caída del sistema operativo puede ser completada sólo parcialmente. Durante la recuperación, los cambios de registros (tuplas) almacenados en WAL no son suficientes para la recuperación. Esta opción activa la escritura de las páginas a WAL cuando son modificadas por primera vez después de un checkpoint, de manera que una recuperación total es posible." -#: utils/misc/guc_tables.c:1201 +#: utils/misc/guc_tables.c:1210 msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modification." msgstr "Escribir páginas completas al WAL cuando son modificadas después de un checkpoint, incluso para una modificación no crítica." -#: utils/misc/guc_tables.c:1211 +#: utils/misc/guc_tables.c:1220 msgid "Writes zeroes to new WAL files before first use." msgstr "Escribir ceros a nuevos archivos WAL antes del primer uso." -#: utils/misc/guc_tables.c:1221 +#: utils/misc/guc_tables.c:1230 msgid "Recycles WAL files by renaming them." msgstr "Reciclar archivos de WAL cambiándoles de nombre." -#: utils/misc/guc_tables.c:1231 +#: utils/misc/guc_tables.c:1240 msgid "Logs each checkpoint." msgstr "Registrar cada checkpoint." -#: utils/misc/guc_tables.c:1240 +#: utils/misc/guc_tables.c:1249 msgid "Logs details of pre-authentication connection handshake." msgstr "Registrar detalles de “handshake” de conexión anteriores a la autentificación." -#: utils/misc/guc_tables.c:1250 +#: utils/misc/guc_tables.c:1259 msgid "Logs end of a session, including duration." msgstr "Registrar el fin de una sesión, incluyendo su duración." -#: utils/misc/guc_tables.c:1259 +#: utils/misc/guc_tables.c:1268 msgid "Logs each replication command." msgstr "Registrar cada orden de replicación." -#: utils/misc/guc_tables.c:1268 +#: utils/misc/guc_tables.c:1277 msgid "Shows whether the running server has assertion checks enabled." msgstr "Indica si el servidor actual tiene activas las aseveraciones (asserts) activas." -#: utils/misc/guc_tables.c:1279 +#: utils/misc/guc_tables.c:1288 msgid "Terminate session on any error." msgstr "Terminar sesión ante cualquier error." -#: utils/misc/guc_tables.c:1288 +#: utils/misc/guc_tables.c:1297 msgid "Reinitialize server after backend crash." msgstr "Reinicializar el servidor después de una caída de un proceso servidor." -#: utils/misc/guc_tables.c:1297 +#: utils/misc/guc_tables.c:1306 msgid "Remove temporary files after backend crash." msgstr "Eliminar archivos temporales después de una caída de un proceso servidor." -#: utils/misc/guc_tables.c:1307 +#: utils/misc/guc_tables.c:1316 msgid "Send SIGABRT not SIGQUIT to child processes after backend crash." msgstr "Enviar SIGABRT en vez de SIGQUIT a procesos hijos después de una caída de un proceso servidor." -#: utils/misc/guc_tables.c:1317 +#: utils/misc/guc_tables.c:1326 msgid "Send SIGABRT not SIGKILL to stuck child processes." msgstr "Enviar SIGABRT en vez de SIGKILL a procesos hijos atascados." -#: utils/misc/guc_tables.c:1328 +#: utils/misc/guc_tables.c:1337 msgid "Logs the duration of each completed SQL statement." msgstr "Registrar la duración de cada sentencia SQL ejecutada." -#: utils/misc/guc_tables.c:1338 +#: utils/misc/guc_tables.c:1347 msgid "Set this to force all parse and plan trees to be passed through copyObject(), to facilitate catching errors and omissions in copyObject()." msgstr "" -#: utils/misc/guc_tables.c:1355 +#: utils/misc/guc_tables.c:1364 msgid "Set this to force all parse and plan trees to be passed through outfuncs.c/readfuncs.c, to facilitate catching errors and omissions in those modules." msgstr "" -#: utils/misc/guc_tables.c:1372 +#: utils/misc/guc_tables.c:1381 msgid "Set this to force all raw parse trees for DML statements to be scanned by raw_expression_tree_walker(), to facilitate catching errors and omissions in that function." msgstr "" -#: utils/misc/guc_tables.c:1390 +#: utils/misc/guc_tables.c:1399 msgid "Logs each query's parse tree." msgstr "Registrar cada arbol analizado de consulta " -#: utils/misc/guc_tables.c:1399 +#: utils/misc/guc_tables.c:1408 msgid "Logs each query's rewritten parse tree." msgstr "Registrar cada reescritura del arból analizado de consulta" -#: utils/misc/guc_tables.c:1408 +#: utils/misc/guc_tables.c:1417 msgid "Logs each query's execution plan." msgstr "Registrar el plan de ejecución de cada consulta." -#: utils/misc/guc_tables.c:1417 +#: utils/misc/guc_tables.c:1426 msgid "Indents parse and plan tree displays." msgstr "Indentar los árboles de parse y plan." -#: utils/misc/guc_tables.c:1426 +#: utils/misc/guc_tables.c:1435 msgid "Writes parser performance statistics to the server log." msgstr "Escribir estadísticas de parser al registro del servidor." -#: utils/misc/guc_tables.c:1435 +#: utils/misc/guc_tables.c:1444 msgid "Writes planner performance statistics to the server log." msgstr "Escribir estadísticas de planner al registro del servidor." -#: utils/misc/guc_tables.c:1444 +#: utils/misc/guc_tables.c:1453 msgid "Writes executor performance statistics to the server log." msgstr "Escribir estadísticas del executor al registro del servidor." -#: utils/misc/guc_tables.c:1453 +#: utils/misc/guc_tables.c:1462 msgid "Writes cumulative performance statistics to the server log." msgstr "Escribir estadísticas acumulativas al registro del servidor." -#: utils/misc/guc_tables.c:1463 +#: utils/misc/guc_tables.c:1472 msgid "Logs system resource usage statistics (memory and CPU) on various B-tree operations." msgstr "Registrar uso de recursos de sistema (memoria y CPU) en varias operaciones B-tree." -#: utils/misc/guc_tables.c:1475 +#: utils/misc/guc_tables.c:1484 msgid "Collects information about executing commands." msgstr "Recolectar estadísticas sobre órdenes en ejecución." -#: utils/misc/guc_tables.c:1476 +#: utils/misc/guc_tables.c:1485 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 "Activa la recolección de información sobre la orden actualmente en ejecución en cada sesión, junto con el momento en el cual esa orden comenzó la ejecución." -#: utils/misc/guc_tables.c:1486 +#: utils/misc/guc_tables.c:1495 msgid "Collects statistics on database activity." msgstr "Recolectar estadísticas de actividad de la base de datos." -#: utils/misc/guc_tables.c:1495 +#: utils/misc/guc_tables.c:1504 #, fuzzy #| msgid "Collects timing statistics for database I/O activity." msgid "Collects timing statistics for cost-based vacuum delay." msgstr "Recolectar estadísticas de tiempos en las operaciones de I/O de la base de datos." -#: utils/misc/guc_tables.c:1504 +#: utils/misc/guc_tables.c:1513 msgid "Collects timing statistics for database I/O activity." msgstr "Recolectar estadísticas de tiempos en las operaciones de I/O de la base de datos." -#: utils/misc/guc_tables.c:1513 +#: utils/misc/guc_tables.c:1522 msgid "Collects timing statistics for WAL I/O activity." msgstr "Recolectar estadísticas de tiempos en las operaciones de I/O del WAL." -#: utils/misc/guc_tables.c:1523 +#: utils/misc/guc_tables.c:1532 msgid "Updates the process title to show the active SQL command." msgstr "Actualiza el título del proceso para mostrar la orden SQL activo." -#: utils/misc/guc_tables.c:1524 +#: utils/misc/guc_tables.c:1533 msgid "Enables updating of the process title every time a new SQL command is received by the server." msgstr "Habilita que se actualice el título del proceso cada vez que una orden SQL es recibido por el servidor." -#: utils/misc/guc_tables.c:1533 +#: utils/misc/guc_tables.c:1542 msgid "Starts the autovacuum subprocess." msgstr "Iniciar el subproceso de autovacuum." -#: utils/misc/guc_tables.c:1543 +#: utils/misc/guc_tables.c:1552 msgid "Generates debugging output for LISTEN and NOTIFY." msgstr "Generar salida de depuración para LISTEN y NOTIFY." -#: utils/misc/guc_tables.c:1555 +#: utils/misc/guc_tables.c:1564 msgid "Emits information about lock usage." msgstr "Emitir información acerca del uso de locks." -#: utils/misc/guc_tables.c:1565 +#: utils/misc/guc_tables.c:1574 msgid "Emits information about user lock usage." msgstr "Emitir información acerca del uso de locks de usuario." -#: utils/misc/guc_tables.c:1575 +#: utils/misc/guc_tables.c:1584 msgid "Emits information about lightweight lock usage." msgstr "Emitir información acerca del uso de «lightweight locks»." -#: utils/misc/guc_tables.c:1585 +#: utils/misc/guc_tables.c:1594 msgid "Dumps information about all current locks when a deadlock timeout occurs." msgstr "Volcar información acerca de los locks existentes cuando se agota el tiempo de deadlock." -#: utils/misc/guc_tables.c:1597 +#: utils/misc/guc_tables.c:1606 msgid "Logs long lock waits." msgstr "Registrar esperas largas de bloqueos." -#: utils/misc/guc_tables.c:1606 +#: utils/misc/guc_tables.c:1615 #, fuzzy #| msgid "Logs long lock waits." msgid "Logs lock failures." msgstr "Registrar esperas largas de bloqueos." -#: utils/misc/guc_tables.c:1615 +#: utils/misc/guc_tables.c:1624 msgid "Logs standby recovery conflict waits." msgstr "Registrar esperas por conflictos en recuperación de standby" -#: utils/misc/guc_tables.c:1624 +#: utils/misc/guc_tables.c:1633 msgid "Logs the host name in the connection logs." msgstr "Registrar el nombre del host en la conexión." -#: utils/misc/guc_tables.c:1625 +#: utils/misc/guc_tables.c:1634 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 "Por omisión, los registros de conexión sólo muestran la dirección IP del host que establece la conexión. Si desea que se despliegue el nombre del host puede activar esta opción, pero dependiendo de su configuración de resolución de nombres esto puede imponer una penalización de rendimiento no despreciable." -#: utils/misc/guc_tables.c:1636 +#: utils/misc/guc_tables.c:1645 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"." msgstr "Tratar expr=NULL como expr IS NULL." -#: utils/misc/guc_tables.c:1637 +#: utils/misc/guc_tables.c:1646 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 "Cuando está activado, expresiones de la forma expr = NULL (o NULL = expr) son tratadas como expr IS NULL, esto es, retornarán verdadero si expr es evaluada al valor nulo, y falso en caso contrario. El comportamiento correcto de expr = NULL es retornar siempre null (desconocido)." -#: utils/misc/guc_tables.c:1649 +#: utils/misc/guc_tables.c:1658 msgid "Sets the default read-only status of new transactions." msgstr "Estado por omisión de sólo lectura de nuevas transacciones." -#: utils/misc/guc_tables.c:1659 +#: utils/misc/guc_tables.c:1668 msgid "Sets the current transaction's read-only status." msgstr "Activa el estado de sólo lectura de la transacción en curso." -#: utils/misc/guc_tables.c:1669 +#: utils/misc/guc_tables.c:1678 msgid "Sets the default deferrable status of new transactions." msgstr "Estado por omisión de postergable de nuevas transacciones." -#: utils/misc/guc_tables.c:1678 +#: utils/misc/guc_tables.c:1687 msgid "Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures." msgstr "Si está activo, las transacciones serializables de sólo lectura serán pausadas hasta que puedan ejecutarse sin posibles fallas de serialización." -#: utils/misc/guc_tables.c:1688 +#: utils/misc/guc_tables.c:1697 #, fuzzy #| msgid "Enable row security." msgid "Enables row security." msgstr "Activar seguridad de registros." -#: utils/misc/guc_tables.c:1689 +#: utils/misc/guc_tables.c:1698 msgid "When enabled, row security will be applied to all users." msgstr "Cuando está activada, la seguridad de registros se aplicará a todos los usuarios." -#: utils/misc/guc_tables.c:1697 +#: utils/misc/guc_tables.c:1706 msgid "Check routine bodies during CREATE FUNCTION and CREATE PROCEDURE." msgstr "Verificar definición de rutinas durante CREATE FUNCTION y CREATE PROCEDURE." -#: utils/misc/guc_tables.c:1706 +#: utils/misc/guc_tables.c:1715 #, fuzzy #| msgid "Enable input of NULL elements in arrays." msgid "Enables input of NULL elements in arrays." msgstr "Habilita el ingreso de elementos nulos en arrays." -#: utils/misc/guc_tables.c:1707 +#: utils/misc/guc_tables.c:1716 msgid "When turned on, unquoted NULL in an array input value means a null value; otherwise it is taken literally." msgstr "Cuando está activo, un valor NULL sin comillas en la entrada de un array significa un valor nulo; en caso contrario es tomado literalmente." -#: utils/misc/guc_tables.c:1723 +#: utils/misc/guc_tables.c:1732 msgid "WITH OIDS is no longer supported; this can only be false." msgstr "WITH OIDS ya no está soportado; esto sólo puede ser false." -#: utils/misc/guc_tables.c:1733 +#: utils/misc/guc_tables.c:1742 msgid "Start a subprocess to capture stderr, csvlog and/or jsonlog into log files." msgstr "Lanzar un subproceso para capturar stderr, csvlog y/o jsonlog en archivos de log." -#: utils/misc/guc_tables.c:1742 +#: utils/misc/guc_tables.c:1751 msgid "Truncate existing log files of same name during log rotation." msgstr "Truncar archivos de log del mismo nombre durante la rotación." -#: utils/misc/guc_tables.c:1752 +#: utils/misc/guc_tables.c:1761 msgid "Emit information about resource usage in sorting." msgstr "Emitir información acerca de uso de recursos durante los ordenamientos." -#: utils/misc/guc_tables.c:1765 +#: utils/misc/guc_tables.c:1774 msgid "Generate debugging output for synchronized scanning." msgstr "Generar salida de depuración para recorrido sincronizado." -#: utils/misc/guc_tables.c:1780 +#: utils/misc/guc_tables.c:1789 #, fuzzy #| msgid "Enable bounded sorting using heap sort." msgid "Enables bounded sorting using heap sort." msgstr "Activar ordenamiento acotado usando «heap sort»." -#: utils/misc/guc_tables.c:1793 +#: utils/misc/guc_tables.c:1802 msgid "Emit WAL-related debugging output." msgstr "Activar salida de depuración de WAL." -#: utils/misc/guc_tables.c:1805 +#: utils/misc/guc_tables.c:1814 msgid "Shows whether datetimes are integer based." msgstr "Mostrar si las fechas y horas se basan en tipos enteros." -#: utils/misc/guc_tables.c:1816 +#: utils/misc/guc_tables.c:1825 msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive." msgstr "Define que los nombres de usuario Kerberos y GSSAPI deberían ser tratados sin distinción de mayúsculas." -#: utils/misc/guc_tables.c:1826 +#: utils/misc/guc_tables.c:1835 msgid "Sets whether GSSAPI delegation should be accepted from the client." msgstr "Define si la delegación GSSAPI debería ser aceptada por el cliente." -#: utils/misc/guc_tables.c:1836 +#: utils/misc/guc_tables.c:1845 msgid "Warn about backslash escapes in ordinary string literals." msgstr "Avisa acerca de escapes de backslash en literales de cadena corrientes." -#: utils/misc/guc_tables.c:1846 +#: utils/misc/guc_tables.c:1855 msgid "Causes '...' strings to treat backslashes literally." msgstr "Provoca que las cadenas '...' traten las barras inclinadas inversas (\\) en forma literal." -#: utils/misc/guc_tables.c:1857 +#: utils/misc/guc_tables.c:1866 #, fuzzy #| msgid "Enable synchronized sequential scans." msgid "Enables synchronized sequential scans." msgstr "Permitir la sincronización de recorridos secuenciales." -#: utils/misc/guc_tables.c:1867 +#: utils/misc/guc_tables.c:1876 msgid "Sets whether to include or exclude transaction with recovery target." msgstr "Define si incluir o excluir la transacción con el destino de recuperación." -#: utils/misc/guc_tables.c:1877 +#: utils/misc/guc_tables.c:1886 msgid "Starts the WAL summarizer process to enable incremental backup." msgstr "Inicia el proceso sumarizador de WAL para activar backups incrementales." -#: utils/misc/guc_tables.c:1887 +#: utils/misc/guc_tables.c:1896 msgid "Allows connections and queries during recovery." msgstr "Permite conexiones y consultas durante la recuperación." -#: utils/misc/guc_tables.c:1897 +#: utils/misc/guc_tables.c:1906 msgid "Allows feedback from a hot standby to the primary that will avoid query conflicts." msgstr "Permite retroalimentación desde un hot standby hacia el primario que evitará conflictos en consultas." -#: utils/misc/guc_tables.c:1907 +#: utils/misc/guc_tables.c:1916 msgid "Shows whether hot standby is currently active." msgstr "Muestra si hot standby está activo actualmente." -#: utils/misc/guc_tables.c:1918 +#: utils/misc/guc_tables.c:1927 msgid "Allows modifications of the structure of system tables." msgstr "Permite modificaciones de la estructura de las tablas del sistema." -#: utils/misc/guc_tables.c:1929 +#: utils/misc/guc_tables.c:1938 msgid "Disables reading from system indexes." msgstr "Deshabilita lectura de índices del sistema." -#: utils/misc/guc_tables.c:1930 +#: utils/misc/guc_tables.c:1939 msgid "It does not prevent updating the indexes, so it is safe to use. The worst consequence is slowness." msgstr "No evita la actualización de índices, así que es seguro. Lo peor que puede ocurrir es lentitud del sistema." -#: utils/misc/guc_tables.c:1941 +#: utils/misc/guc_tables.c:1950 msgid "Allows tablespaces directly inside pg_tblspc, for testing." msgstr "Permite tablespaces directamente dentro de pg_tblspc, para pruebas." -#: utils/misc/guc_tables.c:1952 +#: utils/misc/guc_tables.c:1961 msgid "Enables backward compatibility mode for privilege checks on large objects." msgstr "Activa el modo de compatibilidad con versiones anteriores de las comprobaciones de privilegios de objetos grandes." -#: utils/misc/guc_tables.c:1953 +#: utils/misc/guc_tables.c:1962 msgid "Skips privilege checks when reading or modifying large objects, for compatibility with PostgreSQL releases prior to 9.0." msgstr "Omite las comprobaciones de privilegios cuando se leen o modifican los objetos grandes, para compatibilidad con versiones de PostgreSQL anteriores a 9.0." -#: utils/misc/guc_tables.c:1963 +#: utils/misc/guc_tables.c:1972 msgid "When generating SQL fragments, quote all identifiers." msgstr "Al generar fragmentos SQL, entrecomillar todos los identificadores." -#: utils/misc/guc_tables.c:1973 +#: utils/misc/guc_tables.c:1982 msgid "Shows whether data checksums are turned on for this cluster." msgstr "Indica si las sumas de verificación están activas en este cluster." -#: utils/misc/guc_tables.c:1984 +#: utils/misc/guc_tables.c:1993 msgid "Add sequence number to syslog messages to avoid duplicate suppression." msgstr "Agregar número de secuencia a mensajes syslog para evitar supresión de duplicados." -#: utils/misc/guc_tables.c:1994 +#: utils/misc/guc_tables.c:2003 msgid "Split messages sent to syslog by lines and to fit into 1024 bytes." msgstr "Dividir mensajes enviados a syslog en líneas y que quepan en 1024 bytes." -#: utils/misc/guc_tables.c:2004 +#: utils/misc/guc_tables.c:2013 msgid "Controls whether Gather and Gather Merge also run subplans." msgstr "Controla si los Gather y Gather Merge también ejecutan subplanes." -#: utils/misc/guc_tables.c:2005 +#: utils/misc/guc_tables.c:2014 msgid "Should gather nodes also run subplans or just gather tuples?" msgstr "¿Deben los nodos de recolección ejecutar subplanes o sólo recolectar tuplas?" -#: utils/misc/guc_tables.c:2015 +#: utils/misc/guc_tables.c:2024 msgid "Allow JIT compilation." msgstr "Permitir compilación JIT." -#: utils/misc/guc_tables.c:2026 +#: utils/misc/guc_tables.c:2035 msgid "Register JIT-compiled functions with debugger." msgstr "Registrar las funciones JIT compiladas con el depurador." -#: utils/misc/guc_tables.c:2043 +#: utils/misc/guc_tables.c:2052 msgid "Write out LLVM bitcode to facilitate JIT debugging." msgstr "Escribe el bitcode LLVM para facilitar depuración de JIT." -#: utils/misc/guc_tables.c:2054 +#: utils/misc/guc_tables.c:2063 msgid "Allow JIT compilation of expressions." msgstr "Permitir compilación JIT de expresiones." -#: utils/misc/guc_tables.c:2065 +#: utils/misc/guc_tables.c:2074 msgid "Register JIT-compiled functions with perf profiler." msgstr "Registrar las funciones JIT compiladas con el analizador «perf»." -#: utils/misc/guc_tables.c:2082 +#: utils/misc/guc_tables.c:2091 msgid "Allow JIT compilation of tuple deforming." msgstr "Permitir compilación JIT de deformación de tuplas." -#: utils/misc/guc_tables.c:2093 +#: utils/misc/guc_tables.c:2102 msgid "Whether to continue running after a failure to sync data files." msgstr "Si continuar ejecutando después de una falla al sincronizar archivos de datos." -#: utils/misc/guc_tables.c:2102 +#: utils/misc/guc_tables.c:2111 msgid "Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured." msgstr "Definir si un receptor de WAL debe crear un slot de replicación temporal en caso de no haber configurado un slot permanente." -#: utils/misc/guc_tables.c:2111 +#: utils/misc/guc_tables.c:2120 msgid "Enables event triggers." msgstr "Activa “triggers” por evento." -#: utils/misc/guc_tables.c:2112 +#: utils/misc/guc_tables.c:2121 msgid "When enabled, event triggers will fire for all applicable statements." msgstr "Cuando se activa, los “triggers” por evento se ejecutarán para todas las sentencias aplicables." -#: utils/misc/guc_tables.c:2121 +#: utils/misc/guc_tables.c:2130 msgid "Enables a physical standby to synchronize logical failover replication slots from the primary server." msgstr "Habilita un standby físico para sincronizar slots de “failover” de replicación lógica desde el servidor primario." -#: utils/misc/guc_tables.c:2130 +#: utils/misc/guc_tables.c:2139 msgid "Enables deprecation warnings for MD5 passwords." msgstr "" -#: utils/misc/guc_tables.c:2139 +#: utils/misc/guc_tables.c:2148 #, fuzzy #| msgid " --no-truncate don't truncate empty pages at the end of the table\n" msgid "Enables vacuum to truncate empty pages at the end of the table." msgstr " --no-truncate no truncar las páginas vacías al final de la tabla\n" -#: utils/misc/guc_tables.c:2157 +#: utils/misc/guc_tables.c:2166 msgid "Sets the amount of time to wait before forcing a switch to the next WAL file." msgstr "Define el tiempo a esperar antes de forzar un cambio al siguiente archivo WAL." -#: utils/misc/guc_tables.c:2159 utils/misc/guc_tables.c:2313 -#: utils/misc/guc_tables.c:2732 utils/misc/guc_tables.c:2743 -#: utils/misc/guc_tables.c:2754 utils/misc/guc_tables.c:2765 -#: utils/misc/guc_tables.c:2776 +#: utils/misc/guc_tables.c:2168 utils/misc/guc_tables.c:2322 +#: utils/misc/guc_tables.c:2741 utils/misc/guc_tables.c:2752 +#: utils/misc/guc_tables.c:2763 utils/misc/guc_tables.c:2774 +#: utils/misc/guc_tables.c:2785 #, fuzzy #| msgid "-1 disables optimization." msgid "0 disables the timeout." msgstr "-1 inhabilita la optimización." -#: utils/misc/guc_tables.c:2168 +#: utils/misc/guc_tables.c:2177 msgid "Sets the amount of time to wait after authentication on connection startup." msgstr "Define el tiempo máximo a esperar la autentificación durante el establecimiento de una conexión." -#: utils/misc/guc_tables.c:2170 utils/misc/guc_tables.c:2908 +#: utils/misc/guc_tables.c:2179 utils/misc/guc_tables.c:2917 msgid "This allows attaching a debugger to the process." msgstr "Esto permite adjuntar un depurador al proceso." -#: utils/misc/guc_tables.c:2179 +#: utils/misc/guc_tables.c:2188 msgid "Sets the default statistics target." msgstr "Definir el valor por omisión de toma de estadísticas." -#: utils/misc/guc_tables.c:2180 +#: utils/misc/guc_tables.c:2189 msgid "This applies to table columns that have not had a column-specific target set via ALTER TABLE SET STATISTICS." msgstr "Esto se aplica a columnas de tablas que no tienen un valor definido a través de ALTER TABLE SET STATISTICS." -#: utils/misc/guc_tables.c:2189 +#: utils/misc/guc_tables.c:2198 msgid "Sets the FROM-list size beyond which subqueries are not collapsed." msgstr "Tamaño de lista de FROM a partir del cual subconsultas no serán colapsadas." -#: utils/misc/guc_tables.c:2191 +#: utils/misc/guc_tables.c:2200 msgid "The planner will merge subqueries into upper queries if the resulting FROM list would have no more than this many items." msgstr "El planner mezclará subconsultas en consultas de nivel superior si la lista FROM resultante es menor que esta cantidad de ítems." -#: utils/misc/guc_tables.c:2202 +#: utils/misc/guc_tables.c:2211 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened." msgstr "Tamaño de lista de FROM a partir del cual constructos JOIN no serán aplanados." -#: utils/misc/guc_tables.c:2204 +#: utils/misc/guc_tables.c:2213 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 "El planner aplanará constructos JOIN explícitos en listas de ítems FROM siempre que la lista resultante no tenga más que esta cantidad de ítems." -#: utils/misc/guc_tables.c:2215 +#: utils/misc/guc_tables.c:2224 msgid "Sets the threshold of FROM items beyond which GEQO is used." msgstr "Umbral de ítems en FROM a partir del cual se usará GEQO." -#: utils/misc/guc_tables.c:2225 +#: utils/misc/guc_tables.c:2234 msgid "GEQO: effort is used to set the default for other GEQO parameters." msgstr "GEQO: effort se usa para determinar los valores por defecto para otros parámetros." -#: utils/misc/guc_tables.c:2235 +#: utils/misc/guc_tables.c:2244 msgid "GEQO: number of individuals in the population." msgstr "GEQO: número de individuos en una población." -#: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 +#: utils/misc/guc_tables.c:2245 utils/misc/guc_tables.c:2255 #, fuzzy #| msgid "Zero selects a suitable default value." msgid "0 means use a suitable default value." msgstr "Cero selecciona un valor por omisión razonable." -#: utils/misc/guc_tables.c:2245 +#: utils/misc/guc_tables.c:2254 msgid "GEQO: number of iterations of the algorithm." msgstr "GEQO: número de iteraciones del algoritmo." -#: utils/misc/guc_tables.c:2257 +#: utils/misc/guc_tables.c:2266 msgid "Sets the time to wait on a lock before checking for deadlock." msgstr "Define el tiempo a esperar un lock antes de buscar un deadlock." -#: utils/misc/guc_tables.c:2268 +#: utils/misc/guc_tables.c:2277 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data." msgstr "Define el máximo retardo antes de cancelar consultas cuando un servidor hot standby está procesando datos de WAL archivado." -#: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 +#: utils/misc/guc_tables.c:2278 utils/misc/guc_tables.c:2289 #, fuzzy #| msgid "-1 means no limit." msgid "-1 means wait forever." msgstr "-1 significa sin límite." -#: utils/misc/guc_tables.c:2279 +#: utils/misc/guc_tables.c:2288 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data." msgstr "Define el máximo retardo antes de cancelar consultas cuando un servidor hot standby está procesando datos de WAL en flujo." -#: utils/misc/guc_tables.c:2290 +#: utils/misc/guc_tables.c:2299 msgid "Sets the minimum delay for applying changes during recovery." msgstr "Define el retraso mínimo para aplicar cambios durante la recuperación." -#: utils/misc/guc_tables.c:2301 +#: utils/misc/guc_tables.c:2310 msgid "Sets the maximum interval between WAL receiver status reports to the sending server." msgstr "Define el intervalo máximo entre reportes de estado que el receptor de WAL envía al servidor origen." -#: utils/misc/guc_tables.c:2312 +#: utils/misc/guc_tables.c:2321 msgid "Sets the maximum wait time to receive data from the sending server." msgstr "Define el máximo tiempo de espera para recibir datos desde el servidor origen." -#: utils/misc/guc_tables.c:2323 +#: utils/misc/guc_tables.c:2332 msgid "Sets the maximum number of concurrent connections." msgstr "Número máximo de conexiones concurrentes." -#: utils/misc/guc_tables.c:2334 +#: utils/misc/guc_tables.c:2343 msgid "Sets the number of connection slots reserved for superusers." msgstr "Número de conexiones reservadas para superusuarios." -#: utils/misc/guc_tables.c:2344 +#: utils/misc/guc_tables.c:2353 msgid "Sets the number of connection slots reserved for roles with privileges of pg_use_reserved_connections." msgstr "Número de conexiones reservadas para con privilegios de pg_use_reserved_connections." -#: utils/misc/guc_tables.c:2355 +#: utils/misc/guc_tables.c:2364 msgid "Amount of dynamic shared memory reserved at startup." msgstr "Cantidad de memoria compartida dinámica reservada al iniciar." -#: utils/misc/guc_tables.c:2370 +#: utils/misc/guc_tables.c:2379 msgid "Sets the number of shared memory buffers used by the server." msgstr "Número de búfers de memoria compartida usados por el servidor." -#: utils/misc/guc_tables.c:2381 +#: utils/misc/guc_tables.c:2390 msgid "Sets the buffer pool size for VACUUM, ANALYZE, and autovacuum." msgstr "Define el tamaño del pool de búfers para VACUUM, ANALYZE y autovacuum." -#: utils/misc/guc_tables.c:2392 +#: utils/misc/guc_tables.c:2401 msgid "Shows the size of the server's main shared memory area (rounded up to the nearest MB)." msgstr "Muestra el tamaño del área principal de memoria compartida del servidor (redondeado al número de MB más cercano)." -#: utils/misc/guc_tables.c:2403 +#: utils/misc/guc_tables.c:2412 msgid "Shows the number of huge pages needed for the main shared memory area." msgstr "Muestra la cantidad de “huge pages” necesarias para el área de memoria compartida principal." -#: utils/misc/guc_tables.c:2404 +#: utils/misc/guc_tables.c:2413 #, fuzzy #| msgid "event triggers are not supported for %s" msgid "-1 means huge pages are not supported." msgstr "los “triggers” por evento no están soportados para %s" -#: utils/misc/guc_tables.c:2414 +#: utils/misc/guc_tables.c:2423 #, fuzzy #| msgid "Sets the number of shared memory buffers used by the server." msgid "Shows the number of semaphores required for the server." msgstr "Número de búfers de memoria compartida usados por el servidor." -#: utils/misc/guc_tables.c:2425 +#: utils/misc/guc_tables.c:2434 msgid "Sets the size of the dedicated buffer pool used for the commit timestamp cache." msgstr "Define el tamaño del pool de búfers dedicado al caché de timestamps de commit." -#: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 -#: utils/misc/guc_tables.c:2492 +#: utils/misc/guc_tables.c:2435 utils/misc/guc_tables.c:2490 +#: utils/misc/guc_tables.c:2501 #, fuzzy #| msgid "Specify 0 to have this value determined as a fraction of shared_buffers." msgid "0 means use a fraction of \"shared_buffers\"." msgstr "Especifique 0 para que este valor sea determinado como fracción de shared_buffers." -#: utils/misc/guc_tables.c:2436 +#: utils/misc/guc_tables.c:2445 msgid "Sets the size of the dedicated buffer pool used for the MultiXact member cache." msgstr "Define el tamaño del pool de búfers dedicado al caché de miembros de MultiXact." -#: utils/misc/guc_tables.c:2447 +#: utils/misc/guc_tables.c:2456 msgid "Sets the size of the dedicated buffer pool used for the MultiXact offset cache." msgstr "Define el tamaño del pool de búfers dedicado al caché de offsets de MultiXact." -#: utils/misc/guc_tables.c:2458 +#: utils/misc/guc_tables.c:2467 msgid "Sets the size of the dedicated buffer pool used for the LISTEN/NOTIFY message cache." msgstr "Define el tamaño del pool de búfers dedicado al caché de mensajes LISTEN/NOTIFY." -#: utils/misc/guc_tables.c:2469 +#: utils/misc/guc_tables.c:2478 msgid "Sets the size of the dedicated buffer pool used for the serializable transaction cache." msgstr "Define el tamaño del pool de búfers dedicado al caché de transacciones serializables." -#: utils/misc/guc_tables.c:2480 +#: utils/misc/guc_tables.c:2489 msgid "Sets the size of the dedicated buffer pool used for the subtransaction cache." msgstr "Define el tamaño del pool de búfers dedicado al caché de subtransacciones." -#: utils/misc/guc_tables.c:2491 +#: utils/misc/guc_tables.c:2500 msgid "Sets the size of the dedicated buffer pool used for the transaction status cache." msgstr "Define el tamaño del pool de búfers dedicado al caché de estatus de transacciones." -#: utils/misc/guc_tables.c:2502 +#: utils/misc/guc_tables.c:2511 msgid "Sets the maximum number of temporary buffers used by each session." msgstr "Número de búfers de memoria temporal usados por cada sesión." -#: utils/misc/guc_tables.c:2513 +#: utils/misc/guc_tables.c:2522 msgid "Sets the TCP port the server listens on." msgstr "Puerto TCP en el cual escuchará el servidor." -#: utils/misc/guc_tables.c:2523 +#: utils/misc/guc_tables.c:2532 msgid "Sets the access permissions of the Unix-domain socket." msgstr "Privilegios de acceso al socket Unix." -#: utils/misc/guc_tables.c:2524 +#: utils/misc/guc_tables.c:2533 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 "Los sockets de dominio Unix usan la funcionalidad de permisos de archivos estándar de Unix. Se espera que el valor de esta opción sea una especificación numérica de modo, en la forma aceptada por las llamadas a sistema chmod y umask. Para usar el modo octal acostumbrado, comience el número con un 0 (cero)." -#: utils/misc/guc_tables.c:2538 +#: utils/misc/guc_tables.c:2547 msgid "Sets the file permissions for log files." msgstr "Define los privilegios para los archivos del registro del servidor." -#: utils/misc/guc_tables.c:2539 +#: utils/misc/guc_tables.c:2548 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 "Se espera que el valor de esta opción sea una especificación numérica de modo, en la forma aceptada por las llamadas a sistema chmod y umask. Para usar el modo octal acostumbrado, comience el número con un 0 (cero)." -#: utils/misc/guc_tables.c:2553 +#: utils/misc/guc_tables.c:2562 msgid "Shows the mode of the data directory." msgstr "Muestra el modo del directorio de datos." -#: utils/misc/guc_tables.c:2554 +#: utils/misc/guc_tables.c:2563 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 "El valor del parámetro es una especificación numérica de modo, en la forma aceptada por las llamadas a sistema chmod y umask. (Para usar el modo octal acostumbrado, comience el número con un 0 (cero).)" -#: utils/misc/guc_tables.c:2567 +#: utils/misc/guc_tables.c:2576 msgid "Sets the maximum memory to be used for query workspaces." msgstr "Establece el límite de memoria que se usará para espacios de trabajo de consultas." -#: utils/misc/guc_tables.c:2568 +#: utils/misc/guc_tables.c:2577 msgid "This much memory can be used by each internal sort operation and hash table before switching to temporary disk files." msgstr "Esta es la cantidad máxima de memoria que se usará para operaciones internas de ordenamiento y tablas de hashing, antes de comenzar a usar archivos temporales en disco." -#: utils/misc/guc_tables.c:2585 +#: utils/misc/guc_tables.c:2594 msgid "Sets the maximum memory to be used for maintenance operations." msgstr "Establece el límite de memoria que se usará para operaciones de mantención." -#: utils/misc/guc_tables.c:2586 +#: utils/misc/guc_tables.c:2595 msgid "This includes operations such as VACUUM and CREATE INDEX." msgstr "Esto incluye operaciones como VACUUM y CREATE INDEX." -#: utils/misc/guc_tables.c:2596 +#: utils/misc/guc_tables.c:2605 msgid "Sets the maximum memory to be used for logical decoding." msgstr "Establece el límite de memoria que se usará para decodificación lógica." -#: utils/misc/guc_tables.c:2597 +#: utils/misc/guc_tables.c:2606 msgid "This much memory can be used by each internal reorder buffer before spilling to disk." msgstr "Esta es la cantidad máxima de memoria que puede ser usada para cada búfer interno de ordenamiento, antes de comenzar a usar disco." -#: utils/misc/guc_tables.c:2613 +#: utils/misc/guc_tables.c:2622 msgid "Sets the maximum stack depth, in kilobytes." msgstr "Establece el tamaño máximo del stack, en kilobytes." -#: utils/misc/guc_tables.c:2624 +#: utils/misc/guc_tables.c:2633 msgid "Limits the total size of all temporary files used by each process." msgstr "Limita el tamaño total de todos los archivos temporales usados en cada proceso." -#: utils/misc/guc_tables.c:2625 +#: utils/misc/guc_tables.c:2634 msgid "-1 means no limit." msgstr "-1 significa sin límite." -#: utils/misc/guc_tables.c:2635 +#: utils/misc/guc_tables.c:2644 msgid "Vacuum cost for a page found in the buffer cache." msgstr "Costo de Vacuum de una página encontrada en el buffer." -#: utils/misc/guc_tables.c:2645 +#: utils/misc/guc_tables.c:2654 msgid "Vacuum cost for a page not found in the buffer cache." msgstr "Costo de Vacuum de una página no encontrada en el cache." -#: utils/misc/guc_tables.c:2655 +#: utils/misc/guc_tables.c:2664 msgid "Vacuum cost for a page dirtied by vacuum." msgstr "Costo de Vacuum de una página ensuciada por vacuum." -#: utils/misc/guc_tables.c:2665 +#: utils/misc/guc_tables.c:2674 msgid "Vacuum cost amount available before napping." msgstr "Costo de Vacuum disponible antes de descansar." -#: utils/misc/guc_tables.c:2675 +#: utils/misc/guc_tables.c:2684 msgid "Vacuum cost amount available before napping, for autovacuum." msgstr "Costo de Vacuum disponible antes de descansar, para autovacuum." -#: utils/misc/guc_tables.c:2676 +#: utils/misc/guc_tables.c:2685 #, fuzzy #| msgid "-1 means no limit." msgid "-1 means use \"vacuum_cost_limit\"." msgstr "-1 significa sin límite." -#: utils/misc/guc_tables.c:2685 +#: utils/misc/guc_tables.c:2694 #, fuzzy #| msgid "Sets the maximum number of simultaneously open files for each server process." msgid "Sets the maximum number of files each server process is allowed to open simultaneously." msgstr "Define la cantidad máxima de archivos abiertos por cada subproceso." -#: utils/misc/guc_tables.c:2698 +#: utils/misc/guc_tables.c:2707 msgid "Sets the maximum number of simultaneously prepared transactions." msgstr "Define la cantidad máxima de transacciones preparadas simultáneas." -#: utils/misc/guc_tables.c:2709 +#: utils/misc/guc_tables.c:2718 msgid "Sets the minimum OID of tables for tracking locks." msgstr "Define el OID mínimo para hacer seguimiento de locks." -#: utils/misc/guc_tables.c:2710 +#: utils/misc/guc_tables.c:2719 msgid "Is used to avoid output on system tables." msgstr "Se usa para evitar salida excesiva por tablas de sistema." -#: utils/misc/guc_tables.c:2719 +#: utils/misc/guc_tables.c:2728 msgid "Sets the OID of the table with unconditionally lock tracing." msgstr "Define el OID de una tabla con trazado incondicional de locks." -#: utils/misc/guc_tables.c:2731 +#: utils/misc/guc_tables.c:2740 msgid "Sets the maximum allowed duration of any statement." msgstr "Define la duración máxima permitida de sentencias." -#: utils/misc/guc_tables.c:2742 +#: utils/misc/guc_tables.c:2751 msgid "Sets the maximum allowed duration of any wait for a lock." msgstr "Define la duración máxima permitida de cualquier espera por un lock." -#: utils/misc/guc_tables.c:2753 +#: utils/misc/guc_tables.c:2762 msgid "Sets the maximum allowed idle time between queries, when in a transaction." msgstr "Define el tiempo máximo permitido de inactividad entre consultas, cuando están dentro de una transacción." -#: utils/misc/guc_tables.c:2764 +#: utils/misc/guc_tables.c:2773 msgid "Sets the maximum allowed duration of any transaction within a session (not a prepared transaction)." msgstr "Define la duración máxima permitida cualquier transacción dentro de una sesión (no una transacción preparada)." -#: utils/misc/guc_tables.c:2775 +#: utils/misc/guc_tables.c:2784 msgid "Sets the maximum allowed idle time between queries, when not in a transaction." msgstr "Define el tiempo máximo permitido de inactividad entre consultas, cuando no están dentro de una transacción." -#: utils/misc/guc_tables.c:2786 +#: utils/misc/guc_tables.c:2795 msgid "Minimum age at which VACUUM should freeze a table row." msgstr "Mínima edad a la cual VACUUM debería congelar (freeze) una fila de una tabla." -#: utils/misc/guc_tables.c:2796 +#: utils/misc/guc_tables.c:2805 msgid "Age at which VACUUM should scan whole table to freeze tuples." msgstr "Edad a la cual VACUUM debería recorrer una tabla completa para congelar (freeze) las filas." -#: utils/misc/guc_tables.c:2806 +#: utils/misc/guc_tables.c:2815 msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row." msgstr "Mínima edad a la cual VACUUM debería congelar (freeze) el multixact en una fila." -#: utils/misc/guc_tables.c:2816 +#: utils/misc/guc_tables.c:2825 msgid "Multixact age at which VACUUM should scan whole table to freeze tuples." msgstr "Edad de multixact a la cual VACUUM debería recorrer una tabla completa para congelar (freeze) las filas." -#: utils/misc/guc_tables.c:2826 +#: utils/misc/guc_tables.c:2835 msgid "Age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Edad a la cual VACUUM debería activar el modo failsafe para evitar pérdida de servicio por ”wraparound”." -#: utils/misc/guc_tables.c:2835 +#: utils/misc/guc_tables.c:2844 msgid "Multixact age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Edad de multixact a la cual VACUUM debería activar el modo failsafe para evitar pérdida de servicio por “wraparound”." -#: utils/misc/guc_tables.c:2848 +#: utils/misc/guc_tables.c:2857 msgid "Sets the maximum number of locks per transaction." msgstr "Cantidad máxima de “locks” por transacción." -#: utils/misc/guc_tables.c:2849 +#: utils/misc/guc_tables.c:2858 msgid "The shared lock table is sized on the assumption that at most \"max_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." msgstr "La tabla compartida de “locks” se dimensiona bajo la suposoción que a lo más «max_locks_per_transaction» objetos por cada proceso servidor o transacción preparada necesitarán ser bloqueados en un momento dado." -#: utils/misc/guc_tables.c:2860 +#: utils/misc/guc_tables.c:2869 msgid "Sets the maximum number of predicate locks per transaction." msgstr "Cantidad máxima de “locks” de predicado por transacción." -#: utils/misc/guc_tables.c:2861 +#: utils/misc/guc_tables.c:2870 msgid "The shared predicate lock table is sized on the assumption that at most \"max_pred_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." msgstr "La tabla compartida de “locks” de predicados se dimensiona bajo la suposición de que a lo más «max_pred_locks_per_transaction» objetos por cada proceso servidor o transacción preparada necesitarán ser bloqueados en un momento dado." -#: utils/misc/guc_tables.c:2872 +#: utils/misc/guc_tables.c:2881 msgid "Sets the maximum number of predicate-locked pages and tuples per relation." msgstr "Cantidad máxima de páginas y tuplas bloqueadas por predicado." -#: utils/misc/guc_tables.c:2873 +#: utils/misc/guc_tables.c:2882 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 "Si más que este total de páginas y tuplas en la misma relación están bloqueadas por una conexión, esos locks son reemplazados por un lock a nivel de relación." -#: utils/misc/guc_tables.c:2883 +#: utils/misc/guc_tables.c:2892 msgid "Sets the maximum number of predicate-locked tuples per page." msgstr "Cantidad máxima de locks de predicado por página." -#: utils/misc/guc_tables.c:2884 +#: utils/misc/guc_tables.c:2893 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 "Si más que este número de tuplas de la misma página están bloqueadas por una conexión, esos locks son reemplazados por un lock a nivel de página." -#: utils/misc/guc_tables.c:2894 +#: utils/misc/guc_tables.c:2903 msgid "Sets the maximum allowed time to complete client authentication." msgstr "Define el tiempo máximo para completar proceso de autentificación." -#: utils/misc/guc_tables.c:2906 +#: utils/misc/guc_tables.c:2915 msgid "Sets the amount of time to wait before authentication on connection startup." msgstr "Define el tiempo máximo a esperar antes de la autentificación al abrir una conexión." -#: utils/misc/guc_tables.c:2918 +#: utils/misc/guc_tables.c:2927 msgid "Sets the maximum number of allocated pages for NOTIFY / LISTEN queue." msgstr "Cantidad máxima de páginas dedicadas a la cola de NOTIFY / LISTEN." -#: utils/misc/guc_tables.c:2928 +#: utils/misc/guc_tables.c:2937 msgid "Buffer size for reading ahead in the WAL during recovery." msgstr "Tamaño de búfer para lectura adelantada de WAL durante la recuperación." -#: utils/misc/guc_tables.c:2929 +#: utils/misc/guc_tables.c:2938 msgid "Maximum distance to read ahead in the WAL to prefetch referenced data blocks." msgstr "Máxima distancia que leer adelantado en el WAL para pre-cargar bloques de datos referenciados." -#: utils/misc/guc_tables.c:2939 +#: utils/misc/guc_tables.c:2948 msgid "Sets the size of WAL files held for standby servers." msgstr "Establece el tamaño de los archivos de WAL retenidos para los servidores standby." -#: utils/misc/guc_tables.c:2950 +#: utils/misc/guc_tables.c:2959 msgid "Sets the minimum size to shrink the WAL to." msgstr "Define el tamaño mínimo al cual reducir el WAL." -#: utils/misc/guc_tables.c:2962 +#: utils/misc/guc_tables.c:2971 msgid "Sets the WAL size that triggers a checkpoint." msgstr "Define el tamaño de WAL que desencadena un checkpoint." -#: utils/misc/guc_tables.c:2974 +#: utils/misc/guc_tables.c:2983 msgid "Sets the maximum time between automatic WAL checkpoints." msgstr "Define el tiempo máximo entre puntos de control de WAL automáticos." -#: utils/misc/guc_tables.c:2985 +#: utils/misc/guc_tables.c:2994 msgid "Sets the maximum time before warning if checkpoints triggered by WAL volume happen too frequently." msgstr "Define el máximo tiempo antes de emitir un advertencia si los checkpoints iniciados a causa del volumen de WAL ocurren con demasiada frecuencia." -#: utils/misc/guc_tables.c:2987 +#: utils/misc/guc_tables.c:2996 #, fuzzy #| msgid "Write a message to the server log if checkpoints caused by the filling of WAL segment files happen more frequently than this amount of time. Zero turns off the warning." msgid "Write a message to the server log if checkpoints caused by the filling of WAL segment files happen more frequently than this amount of time. 0 disables the warning." msgstr "Escribe una advertencia al log del servidor si los checkpoints causados por el llenado de segmentos de WAL occur más frecuentemente que esta cantidad de tiempo. Cero inhabilita la advertencia." -#: utils/misc/guc_tables.c:3000 utils/misc/guc_tables.c:3230 -#: utils/misc/guc_tables.c:3322 +#: utils/misc/guc_tables.c:3009 utils/misc/guc_tables.c:3239 +#: utils/misc/guc_tables.c:3331 msgid "Number of pages after which previously performed writes are flushed to disk." msgstr "Número de páginas después del cual las escrituras previamente ejecutadas se sincronizan a disco." -#: utils/misc/guc_tables.c:3001 utils/misc/guc_tables.c:3231 -#: utils/misc/guc_tables.c:3323 +#: utils/misc/guc_tables.c:3010 utils/misc/guc_tables.c:3240 +#: utils/misc/guc_tables.c:3332 msgid "0 disables forced writeback." msgstr "" -#: utils/misc/guc_tables.c:3011 +#: utils/misc/guc_tables.c:3020 msgid "Sets the number of disk-page buffers in shared memory for WAL." msgstr "Búfers en memoria compartida para páginas de WAL." -#: utils/misc/guc_tables.c:3012 +#: utils/misc/guc_tables.c:3021 #, fuzzy #| msgid "Specify -1 to have this value determined as a fraction of shared_buffers." msgid "-1 means use a fraction of \"shared_buffers\"." msgstr "Especifique -1 para que este valor sea determinado como fracción de shared_buffers." -#: utils/misc/guc_tables.c:3022 +#: utils/misc/guc_tables.c:3031 msgid "Time between WAL flushes performed in the WAL writer." msgstr "Tiempo entre sincronizaciones de WAL ejecutadas por el proceso escritor de WAL." -#: utils/misc/guc_tables.c:3033 +#: utils/misc/guc_tables.c:3042 msgid "Amount of WAL written out by WAL writer that triggers a flush." msgstr "Cantidad de WAL escrito por el proceso escritor de WAL que desencadena una sincronización (flush)." -#: utils/misc/guc_tables.c:3044 +#: utils/misc/guc_tables.c:3053 msgid "Minimum size of new file to fsync instead of writing WAL." msgstr "Tamaño mínimo del nuevo archivo para hacer fsync en lugar de escribir WAL." -#: utils/misc/guc_tables.c:3055 +#: utils/misc/guc_tables.c:3064 msgid "Sets the maximum number of simultaneously running WAL sender processes." msgstr "Define la cantidad máxima de procesos “WAL sender” simultáneos." -#: utils/misc/guc_tables.c:3066 +#: utils/misc/guc_tables.c:3075 msgid "Sets the maximum number of simultaneously defined replication slots." msgstr "Define la cantidad máxima de slots de replicación definidos simultáneamente." -#: utils/misc/guc_tables.c:3076 +#: utils/misc/guc_tables.c:3085 msgid "Sets the maximum WAL size that can be reserved by replication slots." msgstr "Define el tamaño máximo de WAL que puede ser reservado por slots de replicación." -#: utils/misc/guc_tables.c:3077 +#: utils/misc/guc_tables.c:3086 #, fuzzy #| msgid "Replication slots will be marked as failed, and segments released for deletion or recycling, if this much space is occupied by WAL on disk." msgid "Replication slots will be marked as failed, and segments released for deletion or recycling, if this much space is occupied by WAL on disk. -1 means no maximum." msgstr "Los slots de replicación serán invalidados, y los segmentos de WAL eliminados o reciclados, si se usa esta cantidad de espacio de disco en WAL." -#: utils/misc/guc_tables.c:3089 +#: utils/misc/guc_tables.c:3098 msgid "Sets the maximum time to wait for WAL replication." msgstr "Define el tiempo máximo a esperar la replicación de WAL." -#: utils/misc/guc_tables.c:3100 +#: utils/misc/guc_tables.c:3109 #, fuzzy #| msgid "User was using a logical replication slot that must be invalidated." msgid "Sets the duration a replication slot can remain idle before it is invalidated." msgstr "El usuario estaba usando un slot de replicación lógica que debía ser invalidado." -#: utils/misc/guc_tables.c:3112 +#: utils/misc/guc_tables.c:3121 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk." msgstr "Retardo en microsegundos entre completar una transacción y escribir WAL a disco." -#: utils/misc/guc_tables.c:3124 +#: utils/misc/guc_tables.c:3133 msgid "Sets the minimum number of concurrent open transactions required before performing \"commit_delay\"." msgstr "Número mínimo de transacciones abiertas concurrentes antes de efectuar «commit_delay»." -#: utils/misc/guc_tables.c:3135 +#: utils/misc/guc_tables.c:3144 msgid "Sets the number of digits displayed for floating-point values." msgstr "Ajustar el número de dígitos mostrados para valores de coma flotante." -#: utils/misc/guc_tables.c:3136 +#: utils/misc/guc_tables.c:3145 msgid "This affects real, double precision, and geometric data types. A zero or negative parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate). Any value greater than zero selects precise output mode." msgstr "Esto afecta los tipos real, de doble precisión, y geométricos. Un valor del parámetro cero o negativo se agrega a la cantidad estándar de dígitos (FLT_DIG o DBL_DIG, según sea apropiado). Cualquier valor mayor que cero selecciona el modo de salida preciso." -#: utils/misc/guc_tables.c:3148 +#: utils/misc/guc_tables.c:3157 #, fuzzy #| msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by log_statement_sample_rate." msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by \"log_statement_sample_rate\"." msgstr "Establece el tiempo mínimo de ejecución a partir del cual se registra una muestra de la sentencia. El muestreo es determinado por log_statement_sample_rate." -#: utils/misc/guc_tables.c:3151 +#: utils/misc/guc_tables.c:3160 msgid "-1 disables sampling. 0 means sample all statements." msgstr "" -#: utils/misc/guc_tables.c:3161 +#: utils/misc/guc_tables.c:3170 msgid "Sets the minimum execution time above which all statements will be logged." msgstr "Establece el tiempo mínimo de ejecución a partir del cual se registran todas las sentencias." -#: utils/misc/guc_tables.c:3163 +#: utils/misc/guc_tables.c:3172 msgid "-1 disables logging statement durations. 0 means log all statement durations." msgstr "" -#: utils/misc/guc_tables.c:3173 +#: utils/misc/guc_tables.c:3182 msgid "Sets the minimum execution time above which autovacuum actions will be logged." msgstr "Tiempo mínimo de ejecución a partir del cual se registran las acciones de autovacuum." -#: utils/misc/guc_tables.c:3175 +#: utils/misc/guc_tables.c:3184 msgid "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." msgstr "" -#: utils/misc/guc_tables.c:3185 +#: utils/misc/guc_tables.c:3194 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements." msgstr "Define el largo máximo en bytes de valores de parámetros «bind» enviados al log al registrar sentencias." -#: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 +#: utils/misc/guc_tables.c:3196 utils/misc/guc_tables.c:3208 #, fuzzy #| msgid "-1 to print values in full." msgid "-1 means log values in full." msgstr "-1 para mostrar los valores completos." -#: utils/misc/guc_tables.c:3197 +#: utils/misc/guc_tables.c:3206 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements, on error." msgstr "Define el largo máximo en bytes de valores de parámetros «bind» enviados al log, en caso de error." -#: utils/misc/guc_tables.c:3209 +#: utils/misc/guc_tables.c:3218 msgid "Background writer sleep time between rounds." msgstr "Tiempo de descanso entre rondas del background writer" -#: utils/misc/guc_tables.c:3220 +#: utils/misc/guc_tables.c:3229 msgid "Background writer maximum number of LRU pages to flush per round." msgstr "Número máximo de páginas LRU a escribir en cada ronda del background writer" -#: utils/misc/guc_tables.c:3221 +#: utils/misc/guc_tables.c:3230 #, fuzzy #| msgid "-1 disables inlining." msgid "0 disables background writing." msgstr "-1 inhabilita el «inlining»." -#: utils/misc/guc_tables.c:3243 +#: utils/misc/guc_tables.c:3252 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem." msgstr "Cantidad máxima de peticiones simultáneas que pueden ser manejadas eficientemente por el sistema de disco." -#: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 +#: utils/misc/guc_tables.c:3253 utils/misc/guc_tables.c:3267 msgid "0 disables simultaneous requests." msgstr "" -#: utils/misc/guc_tables.c:3257 +#: utils/misc/guc_tables.c:3266 msgid "A variant of \"effective_io_concurrency\" that is used for maintenance work." msgstr "Una variante de «effective_io_concurrency» que se usa para tareas de mantención." -#: utils/misc/guc_tables.c:3272 +#: utils/misc/guc_tables.c:3281 msgid "Server-wide limit that clamps io_combine_limit." msgstr "" -#: utils/misc/guc_tables.c:3286 +#: utils/misc/guc_tables.c:3295 msgid "Limit on the size of data reads and writes." msgstr "Límite del tamaño de lecturas y escrituras de datos." -#: utils/misc/guc_tables.c:3300 +#: utils/misc/guc_tables.c:3309 msgid "Max number of IOs that one process can execute simultaneously." msgstr "" -#: utils/misc/guc_tables.c:3312 +#: utils/misc/guc_tables.c:3321 msgid "Number of IO worker processes, for io_method=worker." msgstr "" -#: utils/misc/guc_tables.c:3335 +#: utils/misc/guc_tables.c:3344 msgid "Maximum number of concurrent worker processes." msgstr "Número máximo de procesos ayudantes concurrentes." -#: utils/misc/guc_tables.c:3347 +#: utils/misc/guc_tables.c:3356 msgid "Maximum number of logical replication worker processes." msgstr "Número máximo de procesos ayudantes de replicación lógica." -#: utils/misc/guc_tables.c:3359 +#: utils/misc/guc_tables.c:3368 msgid "Maximum number of table synchronization workers per subscription." msgstr "Número máximo de procesos ayudantes de sincronización por suscripción." -#: utils/misc/guc_tables.c:3371 +#: utils/misc/guc_tables.c:3380 msgid "Maximum number of parallel apply workers per subscription." msgstr "Número máximo de procesos ayudantes de “apply” por suscripción." -#: utils/misc/guc_tables.c:3383 +#: utils/misc/guc_tables.c:3392 #, fuzzy #| msgid "Sets the maximum number of simultaneously defined replication slots." msgid "Sets the maximum number of active replication origins." msgstr "Define la cantidad máxima de slots de replicación definidos simultáneamente." -#: utils/misc/guc_tables.c:3393 +#: utils/misc/guc_tables.c:3402 msgid "Sets the amount of time to wait before forcing log file rotation." msgstr "Define el tiempo a esperar antes de forzar la rotación del archivo de registro del servidor." -#: utils/misc/guc_tables.c:3395 +#: utils/misc/guc_tables.c:3404 msgid "0 disables time-based creation of new log files." msgstr "" -#: utils/misc/guc_tables.c:3405 +#: utils/misc/guc_tables.c:3414 msgid "Sets the maximum size a log file can reach before being rotated." msgstr "Define el tamaño máximo que un archivo de registro del servidor puede alcanzar antes de ser rotado." -#: utils/misc/guc_tables.c:3407 +#: utils/misc/guc_tables.c:3416 msgid "0 disables size-based creation of new log files." msgstr "" -#: utils/misc/guc_tables.c:3417 +#: utils/misc/guc_tables.c:3426 msgid "Shows the maximum number of function arguments." msgstr "Muestra la cantidad máxima de argumentos de funciones." -#: utils/misc/guc_tables.c:3428 +#: utils/misc/guc_tables.c:3437 msgid "Shows the maximum number of index keys." msgstr "Muestra la cantidad máxima de claves de índices." -#: utils/misc/guc_tables.c:3439 +#: utils/misc/guc_tables.c:3448 msgid "Shows the maximum identifier length." msgstr "Muestra el largo máximo de identificadores." -#: utils/misc/guc_tables.c:3450 +#: utils/misc/guc_tables.c:3459 msgid "Shows the size of a disk block." msgstr "Muestra el tamaño de un bloque de disco." -#: utils/misc/guc_tables.c:3461 +#: utils/misc/guc_tables.c:3470 msgid "Shows the number of pages per disk file." msgstr "Muestra el número de páginas por archivo en disco." -#: utils/misc/guc_tables.c:3472 +#: utils/misc/guc_tables.c:3481 msgid "Shows the block size in the write ahead log." msgstr "Muestra el tamaño de bloque en el write-ahead log." -#: utils/misc/guc_tables.c:3483 +#: utils/misc/guc_tables.c:3492 msgid "Sets the time to wait before retrying to retrieve WAL after a failed attempt." msgstr "Define el tiempo a esperar antes de reintentar obtener WAL después de un intento fallido." -#: utils/misc/guc_tables.c:3495 +#: utils/misc/guc_tables.c:3504 msgid "Shows the size of write ahead log segments." msgstr "Muestra el tamaño de los segmentos de WAL." -#: utils/misc/guc_tables.c:3508 +#: utils/misc/guc_tables.c:3517 msgid "Time for which WAL summary files should be kept." msgstr "Período durante el cual se deberían conservar los archivos de sumarización de WAL." -#: utils/misc/guc_tables.c:3509 +#: utils/misc/guc_tables.c:3518 msgid "0 disables automatic summary file deletion." msgstr "" -#: utils/misc/guc_tables.c:3521 +#: utils/misc/guc_tables.c:3530 msgid "Time to sleep between autovacuum runs." msgstr "Tiempo de descanso entre ejecuciones de autovacuum." -#: utils/misc/guc_tables.c:3531 +#: utils/misc/guc_tables.c:3540 msgid "Minimum number of tuple updates or deletes prior to vacuum." msgstr "Número mínimo de updates o deletes antes de ejecutar vacuum." -#: utils/misc/guc_tables.c:3540 +#: utils/misc/guc_tables.c:3549 #, fuzzy #| msgid "Minimum number of tuple updates or deletes prior to vacuum." msgid "Maximum number of tuple updates or deletes prior to vacuum." msgstr "Número mínimo de updates o deletes antes de ejecutar vacuum." -#: utils/misc/guc_tables.c:3541 +#: utils/misc/guc_tables.c:3550 #, fuzzy #| msgid "-1 disables optimization." msgid "-1 disables the maximum threshold." msgstr "-1 inhabilita la optimización." -#: utils/misc/guc_tables.c:3549 +#: utils/misc/guc_tables.c:3558 #, fuzzy #| msgid "Minimum number of tuple updates or deletes prior to vacuum." msgid "Minimum number of tuple inserts prior to vacuum." msgstr "Número mínimo de updates o deletes antes de ejecutar vacuum." -#: utils/misc/guc_tables.c:3550 +#: utils/misc/guc_tables.c:3559 #, fuzzy #| msgid "-1 disables inlining." msgid "-1 disables insert vacuums." msgstr "-1 inhabilita el «inlining»." -#: utils/misc/guc_tables.c:3558 +#: utils/misc/guc_tables.c:3567 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." msgstr "Número mínimo de inserciones, actualizaciones y eliminaciones de tuplas antes de ejecutar analyze." -#: utils/misc/guc_tables.c:3568 +#: utils/misc/guc_tables.c:3577 msgid "Age at which to autovacuum a table to prevent transaction ID wraparound." msgstr "Edad a la cual aplicar VACUUM automáticamente a una tabla para prevenir problemas por “wraparound” de ID de transacción." -#: utils/misc/guc_tables.c:3580 +#: utils/misc/guc_tables.c:3589 msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound." msgstr "Edad de multixact a la cual aplicar VACUUM automáticamente a una tabla para prevenir problemas por “wraparound” de ID de multixacts." -#: utils/misc/guc_tables.c:3590 +#: utils/misc/guc_tables.c:3599 #, fuzzy #| msgid "Sets the maximum memory to be used by each autovacuum worker process." msgid "Sets the number of backend slots to allocate for autovacuum workers." msgstr "Establece el límite de memoria que cada proceso «autovacuum worker» usará." -#: utils/misc/guc_tables.c:3599 +#: utils/misc/guc_tables.c:3608 msgid "Sets the maximum number of simultaneously running autovacuum worker processes." msgstr "Define la cantidad máxima de procesos «autovacuum worker» simultáneos." -#: utils/misc/guc_tables.c:3609 +#: utils/misc/guc_tables.c:3618 msgid "Sets the maximum number of parallel processes per maintenance operation." msgstr "Cantidad máxima de procesos ayudantes paralelos por operación de mantención." -#: utils/misc/guc_tables.c:3619 +#: utils/misc/guc_tables.c:3628 msgid "Sets the maximum number of parallel processes per executor node." msgstr "Cantidad máxima de locks de predicado por nodo de ejecución." -#: utils/misc/guc_tables.c:3630 +#: utils/misc/guc_tables.c:3639 msgid "Sets the maximum number of parallel workers that can be active at one time." msgstr "Define la cantidad máxima de procesos ayudantes que pueden estar activos en un momento dado." -#: utils/misc/guc_tables.c:3641 +#: utils/misc/guc_tables.c:3650 msgid "Sets the maximum memory to be used by each autovacuum worker process." msgstr "Establece el límite de memoria que cada proceso «autovacuum worker» usará." -#: utils/misc/guc_tables.c:3642 +#: utils/misc/guc_tables.c:3651 #, fuzzy #| msgid "Reduce \"maintenance_work_mem\"." msgid "-1 means use \"maintenance_work_mem\"." msgstr "Reduzca «maintenance_work_mem»." -#: utils/misc/guc_tables.c:3652 +#: utils/misc/guc_tables.c:3661 msgid "Time between issuing TCP keepalives." msgstr "Tiempo entre cada emisión de TCP keepalive." -#: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 -#: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 +#: utils/misc/guc_tables.c:3662 utils/misc/guc_tables.c:3673 +#: utils/misc/guc_tables.c:3796 utils/misc/guc_tables.c:3807 #, fuzzy #| msgid "A value of 0 uses the system default." msgid "0 means use the system default." msgstr "Un valor 0 usa el valor por omisión del sistema." -#: utils/misc/guc_tables.c:3663 +#: utils/misc/guc_tables.c:3672 msgid "Time between TCP keepalive retransmits." msgstr "Tiempo entre retransmisiones TCP keepalive." -#: utils/misc/guc_tables.c:3674 +#: utils/misc/guc_tables.c:3683 msgid "SSL renegotiation is no longer supported; this can only be 0." msgstr "La renegociación SSL ya no está soportada; esto sólo puede ser 0." -#: utils/misc/guc_tables.c:3685 +#: utils/misc/guc_tables.c:3694 msgid "Maximum number of TCP keepalive retransmits." msgstr "Cantidad máxima de retransmisiones TCP keepalive." -#: utils/misc/guc_tables.c:3686 +#: utils/misc/guc_tables.c:3695 #, fuzzy #| msgid "Number of consecutive keepalive retransmits that can be lost before a connection is considered dead. A value of 0 uses the system default." msgid "Number of consecutive keepalive retransmits that can be lost before a connection is considered dead. 0 means use the system default." msgstr "Número de retransmisiones consecutivas de keepalive que pueden ser perdidas antes que una conexión se considere muerta. Cero usa el valor por omisión del sistema." -#: utils/misc/guc_tables.c:3697 +#: utils/misc/guc_tables.c:3706 msgid "Sets the maximum allowed result for exact search by GIN." msgstr "Define el máximo de resultados permitidos por búsquedas exactas con GIN." -#: utils/misc/guc_tables.c:3698 +#: utils/misc/guc_tables.c:3707 #, fuzzy #| msgid "-1 means no limit." msgid "0 means no limit." msgstr "-1 significa sin límite." -#: utils/misc/guc_tables.c:3707 +#: utils/misc/guc_tables.c:3716 msgid "Sets the planner's assumption about the total size of the data caches." msgstr "Define la suposición del optimizador sobre el tamaño total de los caches de datos." -#: utils/misc/guc_tables.c:3708 +#: utils/misc/guc_tables.c:3717 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 "Esto es, el tamaño total de caches (cache del kernel y búfers compartidos) usados por archivos de datos de PostgreSQL. Esto se mide en páginas de disco, que normalmente son de 8 kB cada una." -#: utils/misc/guc_tables.c:3719 +#: utils/misc/guc_tables.c:3728 msgid "Sets the minimum amount of table data for a parallel scan." msgstr "Define la cantidad mínima de datos en una tabla para un recorrido paralelo." -#: utils/misc/guc_tables.c:3720 +#: utils/misc/guc_tables.c:3729 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 "Si el planificador estima que leerá un número de páginas de tabla demasiado pequeñas para alcanzar este límite, no se considerará una búsqueda paralela." -#: utils/misc/guc_tables.c:3730 +#: utils/misc/guc_tables.c:3739 msgid "Sets the minimum amount of index data for a parallel scan." msgstr "Define la cantidad mínima de datos en un índice para un recorrido paralelo." -#: utils/misc/guc_tables.c:3731 +#: utils/misc/guc_tables.c:3740 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 "Si el planificador estima que leerá un número de páginas de índice demasiado pequeñas para alcanzar este límite, no se considerará una búsqueda paralela." -#: utils/misc/guc_tables.c:3742 +#: utils/misc/guc_tables.c:3751 msgid "Shows the server version as an integer." msgstr "Muestra la versión del servidor como un número entero." -#: utils/misc/guc_tables.c:3753 +#: utils/misc/guc_tables.c:3762 msgid "Log the use of temporary files larger than this number of kilobytes." msgstr "Registra el uso de archivos temporales que crezcan más allá de este número de kilobytes." -#: utils/misc/guc_tables.c:3754 +#: utils/misc/guc_tables.c:3763 #, fuzzy #| msgid "constraints on temporary tables may reference only temporary tables" msgid "-1 disables logging temporary files. 0 means log all temporary files." msgstr "las restricciones en tablas temporales sólo pueden hacer referencia a tablas temporales" -#: utils/misc/guc_tables.c:3764 +#: utils/misc/guc_tables.c:3773 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." msgstr "Tamaño reservado para pg_stat_activity.query, en bytes." -#: utils/misc/guc_tables.c:3775 +#: utils/misc/guc_tables.c:3784 msgid "Sets the maximum size of the pending list for GIN index." msgstr "Define el tamaño máximo de la lista de pendientes de un índice GIN." -#: utils/misc/guc_tables.c:3786 +#: utils/misc/guc_tables.c:3795 msgid "TCP user timeout." msgstr "Tiempo de expiración de TCP." -#: utils/misc/guc_tables.c:3797 +#: utils/misc/guc_tables.c:3806 msgid "The size of huge page that should be requested." msgstr "El tamaño de huge page que se debería solicitar." -#: utils/misc/guc_tables.c:3808 +#: utils/misc/guc_tables.c:3817 msgid "Aggressively flush system caches for debugging purposes." msgstr "Escribir cachés de sistema de forma agresiva para propósitos de depuración." -#: utils/misc/guc_tables.c:3809 +#: utils/misc/guc_tables.c:3818 msgid "0 means use normal caching behavior." msgstr "" -#: utils/misc/guc_tables.c:3831 +#: utils/misc/guc_tables.c:3840 msgid "Sets the time interval between checks for disconnection while running queries." msgstr "Establece el intervalo entre revisiones de desconexión mientras se ejecutan consultas." -#: utils/misc/guc_tables.c:3832 +#: utils/misc/guc_tables.c:3841 #, fuzzy #| msgid "Enables SSL connections." msgid "0 disables connection checks." msgstr "Permitir conexiones SSL." -#: utils/misc/guc_tables.c:3842 +#: utils/misc/guc_tables.c:3851 msgid "Time between progress updates for long-running startup operations." msgstr "Tiempo a esperar entre actualizaciones para operaciones largas durante el inicio." -#: utils/misc/guc_tables.c:3844 +#: utils/misc/guc_tables.c:3853 msgid "0 disables progress updates." msgstr "" -#: utils/misc/guc_tables.c:3854 +#: utils/misc/guc_tables.c:3863 msgid "Sets the iteration count for SCRAM secret generation." msgstr "Define la cantidad de iteraciones para generación de secretos SCRAM." -#: utils/misc/guc_tables.c:3874 +#: utils/misc/guc_tables.c:3883 msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page." msgstr "Estimación del costo de una página leída secuencialmente." -#: utils/misc/guc_tables.c:3885 +#: utils/misc/guc_tables.c:3894 msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page." msgstr "Estimación del costo de una página leída no secuencialmente." -#: utils/misc/guc_tables.c:3896 +#: utils/misc/guc_tables.c:3905 msgid "Sets the planner's estimate of the cost of processing each tuple (row)." msgstr "Estimación del costo de procesar cada tupla (fila)." -#: utils/misc/guc_tables.c:3907 +#: utils/misc/guc_tables.c:3916 msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan." msgstr "Estimación del costo de procesar cada fila de índice durante un recorrido de índice." -#: utils/misc/guc_tables.c:3918 +#: utils/misc/guc_tables.c:3927 msgid "Sets the planner's estimate of the cost of processing each operator or function call." msgstr "Estimación del costo de procesar cada operador o llamada a función." -#: utils/misc/guc_tables.c:3929 +#: utils/misc/guc_tables.c:3938 msgid "Sets the planner's estimate of the cost of passing each tuple (row) from worker to leader backend." msgstr "Estimación del costo de pasar cada tupla (fila) desde un proceso ayudante al proceso servidor principal." -#: utils/misc/guc_tables.c:3940 +#: utils/misc/guc_tables.c:3949 msgid "Sets the planner's estimate of the cost of starting up worker processes for parallel query." msgstr "Estimación del costo de lanzar procesos ayudantes para consultas en paralelo." -#: utils/misc/guc_tables.c:3952 +#: utils/misc/guc_tables.c:3961 msgid "Perform JIT compilation if query is more expensive." msgstr "Ejecutar compilación JIT si la consulta es más cara." -#: utils/misc/guc_tables.c:3953 +#: utils/misc/guc_tables.c:3962 msgid "-1 disables JIT compilation." msgstr "-1 inhabilita compilación JIT." -#: utils/misc/guc_tables.c:3963 +#: utils/misc/guc_tables.c:3972 msgid "Optimize JIT-compiled functions if query is more expensive." msgstr "Optimizar funciones compiladas en tiempo de ejecución (JIT) si la consulta es más cara." -#: utils/misc/guc_tables.c:3964 +#: utils/misc/guc_tables.c:3973 msgid "-1 disables optimization." msgstr "-1 inhabilita la optimización." -#: utils/misc/guc_tables.c:3974 +#: utils/misc/guc_tables.c:3983 msgid "Perform JIT inlining if query is more expensive." msgstr "Ejecutar «inlining» JIT si la consulta es más cara." -#: utils/misc/guc_tables.c:3975 +#: utils/misc/guc_tables.c:3984 msgid "-1 disables inlining." msgstr "-1 inhabilita el «inlining»." -#: utils/misc/guc_tables.c:3985 +#: utils/misc/guc_tables.c:3994 msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved." msgstr "Estimación de la fracción de filas de un cursor que serán extraídas." -#: utils/misc/guc_tables.c:3997 +#: utils/misc/guc_tables.c:4006 msgid "Sets the planner's estimate of the average size of a recursive query's working table." msgstr "Estimación del tamaño promedio de la tabla de trabajo de una consulta recursiva." -#: utils/misc/guc_tables.c:4009 +#: utils/misc/guc_tables.c:4018 msgid "GEQO: selective pressure within the population." msgstr "GEQO: presión selectiva dentro de la población." -#: utils/misc/guc_tables.c:4020 +#: utils/misc/guc_tables.c:4029 msgid "GEQO: seed for random path selection." msgstr "GEQO: semilla para la selección aleatoria de caminos." -#: utils/misc/guc_tables.c:4031 +#: utils/misc/guc_tables.c:4040 msgid "Multiple of \"work_mem\" to use for hash tables." msgstr "Múltiplo de «work_mem» para el uso de tablas de hash." -#: utils/misc/guc_tables.c:4042 +#: utils/misc/guc_tables.c:4051 msgid "Multiple of the average buffer usage to free per round." msgstr "Múltiplo del uso promedio de búfers que liberar en cada ronda." -#: utils/misc/guc_tables.c:4052 +#: utils/misc/guc_tables.c:4061 msgid "Sets the seed for random-number generation." msgstr "Semilla para la generación de números aleatorios." -#: utils/misc/guc_tables.c:4063 +#: utils/misc/guc_tables.c:4072 msgid "Vacuum cost delay in milliseconds." msgstr "Tiempo de descanso de vacuum en milisegundos." -#: utils/misc/guc_tables.c:4074 +#: utils/misc/guc_tables.c:4083 msgid "Vacuum cost delay in milliseconds, for autovacuum." msgstr "Tiempo de descanso de vacuum en milisegundos, para autovacuum." -#: utils/misc/guc_tables.c:4075 +#: utils/misc/guc_tables.c:4084 msgid "-1 means use \"vacuum_cost_delay\"." msgstr "" -#: utils/misc/guc_tables.c:4085 +#: utils/misc/guc_tables.c:4094 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples." msgstr "Número de updates o deletes de tuplas antes de ejecutar un vacuum, como fracción de reltuples." -#: utils/misc/guc_tables.c:4095 +#: utils/misc/guc_tables.c:4104 msgid "Number of tuple inserts prior to vacuum as a fraction of reltuples." msgstr "Número de inserts de tuplas antes de ejecutar un vacuum, como fracción de reltuples." -#: utils/misc/guc_tables.c:4105 +#: utils/misc/guc_tables.c:4114 msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples." msgstr "Número mínimo de inserciones, actualizaciones y eliminaciones de tuplas antes de ejecutar analyze, como fracción de reltuples." -#: utils/misc/guc_tables.c:4115 +#: utils/misc/guc_tables.c:4124 msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval." msgstr "Tiempo utilizado en escribir páginas «sucias» durante los puntos de control, medido como fracción del intervalo del checkpoint." -#: utils/misc/guc_tables.c:4125 +#: utils/misc/guc_tables.c:4134 msgid "Fraction of statements exceeding \"log_min_duration_sample\" to be logged." msgstr "Fracción de sentencias que duren más de «log_min_duration_sample» a ser registradas." -#: utils/misc/guc_tables.c:4126 +#: utils/misc/guc_tables.c:4135 msgid "Use a value between 0.0 (never log) and 1.0 (always log)." msgstr "Use un valor entre 0.0 (no registrar nunca) y 1.0 (registrar siempre)." -#: utils/misc/guc_tables.c:4135 +#: utils/misc/guc_tables.c:4144 msgid "Sets the fraction of transactions from which to log all statements." msgstr "Define la fracción de transacciones desde la cual registrar en el log todas las sentencias." -#: utils/misc/guc_tables.c:4136 +#: utils/misc/guc_tables.c:4145 msgid "Use a value between 0.0 (never log) and 1.0 (log all statements for all transactions)." msgstr "Use un valor entre 0.0 (nunca registrar) y 1.0 (registrar todas las sentencias de todas las transacciones)." -#: utils/misc/guc_tables.c:4146 +#: utils/misc/guc_tables.c:4155 msgid "Fraction of pages in a relation vacuum can scan and fail to freeze before disabling eager scanning." msgstr "" -#: utils/misc/guc_tables.c:4147 +#: utils/misc/guc_tables.c:4156 msgid "A value of 0.0 disables eager scanning and a value of 1.0 will eagerly scan up to 100 percent of the all-visible pages in the relation. If vacuum successfully freezes these pages, the cap is lower than 100 percent, because the goal is to amortize page freezing across multiple vacuums." msgstr "" -#: utils/misc/guc_tables.c:4165 +#: utils/misc/guc_tables.c:4174 msgid "Sets the shell command that will be called to archive a WAL file." msgstr "Orden de shell que se invocará para archivar un archivo WAL." -#: utils/misc/guc_tables.c:4166 +#: utils/misc/guc_tables.c:4175 msgid "An empty string means use \"archive_library\"." msgstr "" -#: utils/misc/guc_tables.c:4175 +#: utils/misc/guc_tables.c:4184 msgid "Sets the library that will be called to archive a WAL file." msgstr "Biblioteca que se invocará para archivar un archivo WAL." -#: utils/misc/guc_tables.c:4176 +#: utils/misc/guc_tables.c:4185 #, fuzzy #| msgid "An empty string indicates that \"archive_command\" should be used." msgid "An empty string means use \"archive_command\"." msgstr "Una cadena vacía indica que «archive_command» debería usarse." -#: utils/misc/guc_tables.c:4185 +#: utils/misc/guc_tables.c:4194 msgid "Sets the shell command that will be called to retrieve an archived WAL file." msgstr "Orden de shell que se invocará para recuperar un archivo WAL archivado." -#: utils/misc/guc_tables.c:4195 +#: utils/misc/guc_tables.c:4204 msgid "Sets the shell command that will be executed at every restart point." msgstr "Orden de shell que se invocará en cada «restart point»." -#: utils/misc/guc_tables.c:4205 +#: utils/misc/guc_tables.c:4214 msgid "Sets the shell command that will be executed once at the end of recovery." msgstr "Orden de shell que se invocará una vez al terminar la recuperación." -#: utils/misc/guc_tables.c:4215 +#: utils/misc/guc_tables.c:4224 msgid "Specifies the timeline to recover into." msgstr "Especifica la línea de tiempo a la cual recuperar." -#: utils/misc/guc_tables.c:4225 +#: utils/misc/guc_tables.c:4234 msgid "Set to \"immediate\" to end recovery as soon as a consistent state is reached." msgstr "Defina a «immediate» para terminar la recuperación en cuando se alcance el estado consistente." -#: utils/misc/guc_tables.c:4234 +#: utils/misc/guc_tables.c:4243 msgid "Sets the transaction ID up to which recovery will proceed." msgstr "Define el ID de transacción hasta el cual se ejecutará la recuperación." -#: utils/misc/guc_tables.c:4243 +#: utils/misc/guc_tables.c:4252 msgid "Sets the time stamp up to which recovery will proceed." msgstr "Define la marca de tiempo hasta la cual se ejecutará la recuperación." -#: utils/misc/guc_tables.c:4252 +#: utils/misc/guc_tables.c:4261 msgid "Sets the named restore point up to which recovery will proceed." msgstr "Define el nombre del punto de restauración hasta el cual se ejecutará la recuperación." -#: utils/misc/guc_tables.c:4261 +#: utils/misc/guc_tables.c:4270 msgid "Sets the LSN of the write-ahead log location up to which recovery will proceed." msgstr "Define el LSN de la ubicación de WAL hasta la cual se ejecutará la recuperación." -#: utils/misc/guc_tables.c:4271 +#: utils/misc/guc_tables.c:4280 msgid "Sets the connection string to be used to connect to the sending server." msgstr "Define la cadena de conexión que se usará para conectarse al servidor de origen." -#: utils/misc/guc_tables.c:4282 +#: utils/misc/guc_tables.c:4291 msgid "Sets the name of the replication slot to use on the sending server." msgstr "Define el nombre del slot de replicación a utilizar en el servidor de origen." -#: utils/misc/guc_tables.c:4292 +#: utils/misc/guc_tables.c:4301 msgid "Sets the client's character set encoding." msgstr "Codificación del juego de caracteres del cliente." -#: utils/misc/guc_tables.c:4303 +#: utils/misc/guc_tables.c:4312 msgid "Controls information prefixed to each log line." msgstr "Controla el prefijo que antecede cada línea registrada." -#: utils/misc/guc_tables.c:4304 +#: utils/misc/guc_tables.c:4313 msgid "An empty string means no prefix." msgstr "" -#: utils/misc/guc_tables.c:4313 +#: utils/misc/guc_tables.c:4322 msgid "Sets the time zone to use in log messages." msgstr "Define el huso horario usando en los mensajes registrados." -#: utils/misc/guc_tables.c:4323 +#: utils/misc/guc_tables.c:4332 msgid "Sets the display format for date and time values." msgstr "Formato de salida para valores de horas y fechas." -#: utils/misc/guc_tables.c:4324 +#: utils/misc/guc_tables.c:4333 msgid "Also controls interpretation of ambiguous date inputs." msgstr "También controla la interpretación de entradas ambiguas de fechas" -#: utils/misc/guc_tables.c:4335 +#: utils/misc/guc_tables.c:4344 msgid "Sets the default table access method for new tables." msgstr "Define el método de acceso a tablas por omisión para nuevas tablas." -#: utils/misc/guc_tables.c:4346 +#: utils/misc/guc_tables.c:4355 msgid "Sets the default tablespace to create tables and indexes in." msgstr "Define el tablespace en el cual crear tablas e índices." -#: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 +#: utils/misc/guc_tables.c:4356 utils/misc/guc_tables.c:4367 #, fuzzy #| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use the database's default tablespace." msgstr "Una cadena vacía especifica el tablespace por omisión de la base de datos." -#: utils/misc/guc_tables.c:4357 +#: utils/misc/guc_tables.c:4366 msgid "Sets the tablespace(s) to use for temporary tables and sort files." msgstr "Define el/los tablespace/s en el cual crear tablas temporales y archivos de ordenamiento." -#: utils/misc/guc_tables.c:4368 +#: utils/misc/guc_tables.c:4377 msgid "Sets whether a CREATEROLE user automatically grants the role to themselves, and with which options." msgstr "define si un rol con CREATEROLE automáticamente se otorga ese rol a si mismo, y con qué opciones." -#: utils/misc/guc_tables.c:4370 +#: utils/misc/guc_tables.c:4379 msgid "An empty string disables automatic self grants." msgstr "" -#: utils/misc/guc_tables.c:4380 +#: utils/misc/guc_tables.c:4389 msgid "Sets the path for dynamically loadable modules." msgstr "Ruta para módulos dinámicos." -#: utils/misc/guc_tables.c:4381 +#: utils/misc/guc_tables.c:4390 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 "Si se necesita abrir un módulo dinámico y el nombre especificado no tiene un componente de directorio (es decir, no contiene un slash), el sistema buscará el archivo especificado en esta ruta." -#: utils/misc/guc_tables.c:4394 +#: utils/misc/guc_tables.c:4403 #, fuzzy #| msgid "Sets the file permissions for log files." msgid "Sets the path for extension control files." msgstr "Define los privilegios para los archivos del registro del servidor." -#: utils/misc/guc_tables.c:4395 +#: utils/misc/guc_tables.c:4404 msgid "The remaining extension script and secondary control files are then loaded from the same directory where the primary control file was found." msgstr "" -#: utils/misc/guc_tables.c:4406 +#: utils/misc/guc_tables.c:4415 msgid "Sets the location of the Kerberos server key file." msgstr "Ubicación del archivo de llave del servidor Kerberos." -#: utils/misc/guc_tables.c:4417 +#: utils/misc/guc_tables.c:4426 msgid "Sets the Bonjour service name." msgstr "Nombre del servicio Bonjour." -#: utils/misc/guc_tables.c:4418 +#: utils/misc/guc_tables.c:4427 msgid "An empty string means use the computer name." msgstr "" -#: utils/misc/guc_tables.c:4427 +#: utils/misc/guc_tables.c:4436 msgid "Sets the language in which messages are displayed." msgstr "Idioma en el que se despliegan los mensajes." -#: utils/misc/guc_tables.c:4428 utils/misc/guc_tables.c:4438 -#: utils/misc/guc_tables.c:4448 utils/misc/guc_tables.c:4458 +#: utils/misc/guc_tables.c:4437 utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4457 utils/misc/guc_tables.c:4467 msgid "An empty string means use the operating system setting." msgstr "" -#: utils/misc/guc_tables.c:4437 +#: utils/misc/guc_tables.c:4446 msgid "Sets the locale for formatting monetary amounts." msgstr "Configuración regional para formatos de moneda." -#: utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4456 msgid "Sets the locale for formatting numbers." msgstr "Configuración regional para formatos de números." -#: utils/misc/guc_tables.c:4457 +#: utils/misc/guc_tables.c:4466 msgid "Sets the locale for formatting date and time values." msgstr "Configuración regional para formatos de horas y fechas." -#: utils/misc/guc_tables.c:4467 +#: utils/misc/guc_tables.c:4476 msgid "Lists shared libraries to preload into each backend." msgstr "Bibliotecas compartidas a precargar en cada proceso." -#: utils/misc/guc_tables.c:4478 +#: utils/misc/guc_tables.c:4487 msgid "Lists shared libraries to preload into server." msgstr "Bibliotecas compartidas a precargar en el servidor." -#: utils/misc/guc_tables.c:4489 +#: utils/misc/guc_tables.c:4498 msgid "Lists unprivileged shared libraries to preload into each backend." msgstr "Bibliotecas compartidas no privilegiadas a precargar en cada proceso." -#: utils/misc/guc_tables.c:4500 +#: utils/misc/guc_tables.c:4509 msgid "Sets the schema search order for names that are not schema-qualified." msgstr "Orden de búsqueda en schemas para nombres que no especifican schema." -#: utils/misc/guc_tables.c:4512 +#: utils/misc/guc_tables.c:4521 msgid "Shows the server (database) character set encoding." msgstr "Muestra la codificación de caracteres del servidor (base de datos)." -#: utils/misc/guc_tables.c:4524 +#: utils/misc/guc_tables.c:4533 msgid "Shows the server version." msgstr "Versión del servidor." -#: utils/misc/guc_tables.c:4536 +#: utils/misc/guc_tables.c:4545 msgid "Sets the current role." msgstr "Define el rol actual." -#: utils/misc/guc_tables.c:4548 +#: utils/misc/guc_tables.c:4557 msgid "Sets the session user name." msgstr "Define el nombre del usuario de sesión." -#: utils/misc/guc_tables.c:4559 +#: utils/misc/guc_tables.c:4568 msgid "Sets the destination for server log output." msgstr "Define el destino de la salida del registro del servidor." -#: utils/misc/guc_tables.c:4560 +#: utils/misc/guc_tables.c:4569 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", \"jsonlog\", and \"eventlog\", depending on the platform." msgstr "Son aceptables combinaciones de «stderr», «syslog», «csvlog», «jsonlog» y «eventlog», dependendiendo de la plataforma." -#: utils/misc/guc_tables.c:4571 +#: utils/misc/guc_tables.c:4580 msgid "Sets the destination directory for log files." msgstr "Define el directorio de destino de los archivos del registro del servidor." -#: utils/misc/guc_tables.c:4572 +#: utils/misc/guc_tables.c:4581 msgid "Can be specified as relative to the data directory or as absolute path." msgstr "Puede ser una ruta relativa al directorio de datos o una ruta absoluta." -#: utils/misc/guc_tables.c:4582 +#: utils/misc/guc_tables.c:4591 msgid "Sets the file name pattern for log files." msgstr "Define el patrón para los nombres de archivo del registro del servidor." -#: utils/misc/guc_tables.c:4593 +#: utils/misc/guc_tables.c:4602 msgid "Sets the program name used to identify PostgreSQL messages in syslog." msgstr "Nombre de programa para identificar PostgreSQL en mensajes de syslog." -#: utils/misc/guc_tables.c:4604 +#: utils/misc/guc_tables.c:4613 msgid "Sets the application name used to identify PostgreSQL messages in the event log." msgstr "Nombre de programa para identificar PostgreSQL en mensajes del log de eventos." -#: utils/misc/guc_tables.c:4615 +#: utils/misc/guc_tables.c:4624 msgid "Sets the time zone for displaying and interpreting time stamps." msgstr "Huso horario para desplegar e interpretar valores de tiempo." -#: utils/misc/guc_tables.c:4625 +#: utils/misc/guc_tables.c:4634 msgid "Selects a file of time zone abbreviations." msgstr "Selecciona un archivo de abreviaciones de huso horario." -#: utils/misc/guc_tables.c:4635 +#: utils/misc/guc_tables.c:4644 msgid "Sets the owning group of the Unix-domain socket." msgstr "Grupo dueño del socket de dominio Unix." -#: utils/misc/guc_tables.c:4636 +#: utils/misc/guc_tables.c:4645 #, fuzzy #| msgid "The owning user of the socket is always the user that starts the server." msgid "The owning user of the socket is always the user that starts the server. An empty string means use the user's default group." msgstr "El usuario dueño del socket siempre es el usuario que inicia el servidor." -#: utils/misc/guc_tables.c:4646 +#: utils/misc/guc_tables.c:4655 msgid "Sets the directories where Unix-domain sockets will be created." msgstr "Directorios donde se crearán los sockets de dominio Unix." -#: utils/misc/guc_tables.c:4657 +#: utils/misc/guc_tables.c:4666 msgid "Sets the host name or IP address(es) to listen to." msgstr "Define el nombre de anfitrión o dirección IP en la cual escuchar." -#: utils/misc/guc_tables.c:4672 +#: utils/misc/guc_tables.c:4681 msgid "Sets the server's data directory." msgstr "Define la ubicación del directorio de datos." -#: utils/misc/guc_tables.c:4683 +#: utils/misc/guc_tables.c:4692 msgid "Sets the server's main configuration file." msgstr "Define la ubicación del archivo principal de configuración del servidor." -#: utils/misc/guc_tables.c:4694 +#: utils/misc/guc_tables.c:4703 msgid "Sets the server's \"hba\" configuration file." msgstr "Define la ubicación del archivo de configuración «hba» del servidor." -#: utils/misc/guc_tables.c:4705 +#: utils/misc/guc_tables.c:4714 msgid "Sets the server's \"ident\" configuration file." msgstr "Define la ubicación del archivo de configuración «ident» del servidor." -#: utils/misc/guc_tables.c:4716 +#: utils/misc/guc_tables.c:4725 msgid "Writes the postmaster PID to the specified file." msgstr "Registra el PID de postmaster en el archivo especificado." -#: utils/misc/guc_tables.c:4727 +#: utils/misc/guc_tables.c:4736 msgid "Shows the name of the SSL library." msgstr "Muestra el nombre de la biblioteca SSL." -#: utils/misc/guc_tables.c:4742 +#: utils/misc/guc_tables.c:4751 msgid "Location of the SSL server certificate file." msgstr "Ubicación del archivo de certificado SSL del servidor." -#: utils/misc/guc_tables.c:4752 +#: utils/misc/guc_tables.c:4761 msgid "Location of the SSL server private key file." msgstr "Ubicación del archivo de la llave SSL privada del servidor." -#: utils/misc/guc_tables.c:4762 +#: utils/misc/guc_tables.c:4771 msgid "Location of the SSL certificate authority file." msgstr "Ubicación del archivo de autoridad certificadora SSL." -#: utils/misc/guc_tables.c:4772 +#: utils/misc/guc_tables.c:4781 msgid "Location of the SSL certificate revocation list file." msgstr "Ubicación del archivo de lista de revocación de certificados SSL" -#: utils/misc/guc_tables.c:4782 +#: utils/misc/guc_tables.c:4791 msgid "Location of the SSL certificate revocation list directory." msgstr "Ubicación del directorio de lista de revocación de certificados SSL" -#: utils/misc/guc_tables.c:4792 +#: utils/misc/guc_tables.c:4801 msgid "Number of synchronous standbys and list of names of potential synchronous ones." msgstr "Número de standbys sincrónicos y lista de nombres de los potenciales sincrónicos." -#: utils/misc/guc_tables.c:4803 +#: utils/misc/guc_tables.c:4812 msgid "Sets default text search configuration." msgstr "Define la configuración de búsqueda en texto por omisión." -#: utils/misc/guc_tables.c:4813 +#: utils/misc/guc_tables.c:4822 #, fuzzy #| msgid "Sets the list of allowed SSL ciphers." msgid "Sets the list of allowed TLSv1.3 cipher suites." msgstr "Define la lista de cifrados SSL permitidos." -#: utils/misc/guc_tables.c:4814 +#: utils/misc/guc_tables.c:4823 #, fuzzy #| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use the default cipher suites." msgstr "Una cadena vacía especifica el tablespace por omisión de la base de datos." -#: utils/misc/guc_tables.c:4824 +#: utils/misc/guc_tables.c:4833 #, fuzzy #| msgid "Sets the list of allowed SSL ciphers." msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." msgstr "Define la lista de cifrados SSL permitidos." -#: utils/misc/guc_tables.c:4839 +#: utils/misc/guc_tables.c:4848 msgid "Sets the group(s) to use for Diffie-Hellman key exchange." msgstr "" -#: utils/misc/guc_tables.c:4840 +#: utils/misc/guc_tables.c:4849 msgid "Multiple groups can be specified using a colon-separated list." msgstr "" -#: utils/misc/guc_tables.c:4854 +#: utils/misc/guc_tables.c:4863 msgid "Location of the SSL DH parameters file." msgstr "Ubicación del archivo de parámetros DH para SSL." -#: utils/misc/guc_tables.c:4855 +#: utils/misc/guc_tables.c:4864 #, fuzzy #| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use compiled-in default parameters." msgstr "Una cadena vacía especifica el tablespace por omisión de la base de datos." -#: utils/misc/guc_tables.c:4865 +#: utils/misc/guc_tables.c:4874 msgid "Command to obtain passphrases for SSL." msgstr "Orden para obtener frases clave para SSL." -#: utils/misc/guc_tables.c:4866 +#: utils/misc/guc_tables.c:4875 msgid "An empty string means use the built-in prompting mechanism." msgstr "" -#: utils/misc/guc_tables.c:4876 +#: utils/misc/guc_tables.c:4885 msgid "Sets the application name to be reported in statistics and logs." msgstr "Define el nombre de aplicación a reportarse en estadísticas y logs." -#: utils/misc/guc_tables.c:4887 +#: utils/misc/guc_tables.c:4896 msgid "Sets the name of the cluster, which is included in the process title." msgstr "Define el nombre del clúster, el cual se incluye en el título de proceso." -#: utils/misc/guc_tables.c:4898 +#: utils/misc/guc_tables.c:4907 msgid "Sets the WAL resource managers for which WAL consistency checks are done." msgstr "Define los gestores de recursos WAL para los cuales hacer verificaciones de consistencia WAL." -#: utils/misc/guc_tables.c:4899 +#: utils/misc/guc_tables.c:4908 msgid "Full-page images will be logged for all data blocks and cross-checked against the results of WAL replay." msgstr "Se registrarán imágenes de página completa para todos los bloques de datos, y comparados con los resultados de la aplicación de WAL." -#: utils/misc/guc_tables.c:4909 +#: utils/misc/guc_tables.c:4918 msgid "JIT provider to use." msgstr "Proveedor JIT a usar." -#: utils/misc/guc_tables.c:4920 +#: utils/misc/guc_tables.c:4929 msgid "Log backtrace for errors in these functions." msgstr "Registrar el backtrace para errores que se produzcan en estas funciones." -#: utils/misc/guc_tables.c:4931 +#: utils/misc/guc_tables.c:4940 msgid "Use direct I/O for file access." msgstr "Usar I/O directo para accesos a archivos." -#: utils/misc/guc_tables.c:4932 +#: utils/misc/guc_tables.c:4941 msgid "An empty string disables direct I/O." msgstr "" -#: utils/misc/guc_tables.c:4942 +#: utils/misc/guc_tables.c:4951 msgid "Lists streaming replication standby server replication slot names that logical WAL sender processes will wait for." msgstr "Lista los nombres de slots de replicación de servidores standby a los que los procesos “WAL sender” esperarán." -#: utils/misc/guc_tables.c:4944 +#: utils/misc/guc_tables.c:4953 msgid "Logical WAL sender processes will send decoded changes to output plugins only after the specified replication slots have confirmed receiving WAL." msgstr "Los procesos “WAL sender” lógicos enviarán cambios decodificados a los “plugins” de salida sólo después de que los slots de replicación especificados han confirmado recibir el WAL." -#: utils/misc/guc_tables.c:4956 +#: utils/misc/guc_tables.c:4965 msgid "Prohibits access to non-system relations of specified kinds." msgstr "Prohibir acceso a las relaciones no de sistema de los tipos especificados." -#: utils/misc/guc_tables.c:4967 +#: utils/misc/guc_tables.c:4976 msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." msgstr "" -#: utils/misc/guc_tables.c:4978 +#: utils/misc/guc_tables.c:4987 msgid "Logs specified aspects of connection establishment and setup." msgstr "" -#: utils/misc/guc_tables.c:4999 +#: utils/misc/guc_tables.c:5008 msgid "Sets whether \"\\'\" is allowed in string literals." msgstr "Define si «\\'» está permitido en literales de cadena." -#: utils/misc/guc_tables.c:5009 +#: utils/misc/guc_tables.c:5018 msgid "Sets the output format for bytea." msgstr "Formato de salida para bytea." -#: utils/misc/guc_tables.c:5019 +#: utils/misc/guc_tables.c:5028 msgid "Sets the message levels that are sent to the client." msgstr "Nivel de mensajes enviados al cliente." -#: utils/misc/guc_tables.c:5020 utils/misc/guc_tables.c:5116 -#: utils/misc/guc_tables.c:5127 +#: utils/misc/guc_tables.c:5029 utils/misc/guc_tables.c:5125 +#: utils/misc/guc_tables.c:5136 msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent." msgstr "Cada nivel incluye todos los niveles que lo siguen. Mientras más posterior el nivel, menos mensajes se enviarán." -#: utils/misc/guc_tables.c:5030 +#: utils/misc/guc_tables.c:5039 msgid "Enables in-core computation of query identifiers." msgstr "Habilita el cálculo de identificadores de consulta." -#: utils/misc/guc_tables.c:5040 +#: utils/misc/guc_tables.c:5049 msgid "Enables the planner to use constraints to optimize queries." msgstr "Permitir el uso de restricciones para limitar los accesos a tablas." -#: utils/misc/guc_tables.c:5041 +#: utils/misc/guc_tables.c:5050 msgid "Table scans will be skipped if their constraints guarantee that no rows match the query." msgstr "Las tablas no serán recorridas si sus restricciones garantizan que ninguna fila coincidirá con la consulta." -#: utils/misc/guc_tables.c:5052 +#: utils/misc/guc_tables.c:5061 msgid "Sets the default compression method for compressible values." msgstr "Define el método de compresión por omisión para valores comprimibles." -#: utils/misc/guc_tables.c:5063 +#: utils/misc/guc_tables.c:5072 msgid "Sets the transaction isolation level of each new transaction." msgstr "Nivel de aislación (isolation level) de transacciones nuevas." -#: utils/misc/guc_tables.c:5073 +#: utils/misc/guc_tables.c:5082 msgid "Sets the current transaction's isolation level." msgstr "Define el nivel de aislación de la transacción en curso." -#: utils/misc/guc_tables.c:5084 +#: utils/misc/guc_tables.c:5093 msgid "Sets the display format for interval values." msgstr "Formato de salida para valores de intervalos." -#: utils/misc/guc_tables.c:5095 +#: utils/misc/guc_tables.c:5104 msgid "Log level for reporting invalid ICU locale strings." msgstr "Nivel de log a usar para reportar cadenas de configuración ICU no válidas." -#: utils/misc/guc_tables.c:5105 +#: utils/misc/guc_tables.c:5114 msgid "Sets the verbosity of logged messages." msgstr "Verbosidad de los mensajes registrados." -#: utils/misc/guc_tables.c:5115 +#: utils/misc/guc_tables.c:5124 msgid "Sets the message levels that are logged." msgstr "Nivel de mensajes registrados." -#: utils/misc/guc_tables.c:5126 +#: utils/misc/guc_tables.c:5135 msgid "Causes all statements generating error at or above this level to be logged." msgstr "Registrar sentencias que generan error de nivel superior o igual a éste." -#: utils/misc/guc_tables.c:5137 +#: utils/misc/guc_tables.c:5146 msgid "Sets the type of statements logged." msgstr "Define el tipo de sentencias que se registran." -#: utils/misc/guc_tables.c:5147 +#: utils/misc/guc_tables.c:5156 msgid "Sets the syslog \"facility\" to be used when syslog enabled." msgstr "«Facility» de syslog que se usará cuando syslog esté habilitado." -#: utils/misc/guc_tables.c:5158 +#: utils/misc/guc_tables.c:5167 msgid "Sets the session's behavior for triggers and rewrite rules." msgstr "Define el comportamiento de la sesión con respecto a “triggers” y reglas de reescritura." -#: utils/misc/guc_tables.c:5168 +#: utils/misc/guc_tables.c:5177 msgid "Sets the current transaction's synchronization level." msgstr "Define el nivel de sincronización de la transacción en curso." -#: utils/misc/guc_tables.c:5178 +#: utils/misc/guc_tables.c:5187 msgid "Allows archiving of WAL files using \"archive_command\"." msgstr "Permite el archivado de WAL usando «archive_command»." -#: utils/misc/guc_tables.c:5188 +#: utils/misc/guc_tables.c:5197 msgid "Sets the action to perform upon reaching the recovery target." msgstr "Acción a ejecutar al alcanzar el destino de recuperación." -#: utils/misc/guc_tables.c:5198 +#: utils/misc/guc_tables.c:5207 msgid "Collects function-level statistics on database activity." msgstr "Recolectar estadísticas de actividad de funciones en la base de datos." -#: utils/misc/guc_tables.c:5209 +#: utils/misc/guc_tables.c:5218 msgid "Sets the consistency of accesses to statistics data." msgstr "Definir la consistencia de accesos a los datos de estadísticas." -#: utils/misc/guc_tables.c:5219 +#: utils/misc/guc_tables.c:5228 msgid "Compresses full-page writes written in WAL file with specified method." msgstr "Comprime las páginas completas escritas a WAL (FPI) con el método especificado." -#: utils/misc/guc_tables.c:5229 +#: utils/misc/guc_tables.c:5238 msgid "Sets the level of information written to the WAL." msgstr "Establece el nivel de información escrita al WAL." -#: utils/misc/guc_tables.c:5239 +#: utils/misc/guc_tables.c:5248 msgid "Selects the dynamic shared memory implementation used." msgstr "Escoge la implementación de memoria compartida dinámica que se usará." -#: utils/misc/guc_tables.c:5249 +#: utils/misc/guc_tables.c:5258 msgid "Selects the shared memory implementation used for the main shared memory region." msgstr "Escoge la implementación de memoria compartida dinámica que se usará para la región principal de memoria compartida." -#: utils/misc/guc_tables.c:5259 +#: utils/misc/guc_tables.c:5268 msgid "Selects the file copy method." msgstr "" -#: utils/misc/guc_tables.c:5269 +#: utils/misc/guc_tables.c:5278 +#, fuzzy +#| msgid "Selects the method used for forcing WAL updates to disk." +msgid "Selects the method used for extending data files." +msgstr "Selecciona el método usado para forzar escritura de WAL a disco." + +#: utils/misc/guc_tables.c:5288 msgid "Selects the method used for forcing WAL updates to disk." msgstr "Selecciona el método usado para forzar escritura de WAL a disco." -#: utils/misc/guc_tables.c:5279 +#: utils/misc/guc_tables.c:5298 msgid "Sets how binary values are to be encoded in XML." msgstr "Define cómo se codificarán los valores binarios en XML." -#: utils/misc/guc_tables.c:5289 +#: utils/misc/guc_tables.c:5308 msgid "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments." msgstr "Define si los datos XML implícitos en operaciones de análisis y serialización serán considerados documentos o fragmentos de contenido." -#: utils/misc/guc_tables.c:5300 +#: utils/misc/guc_tables.c:5319 msgid "Use of huge pages on Linux or Windows." msgstr "Usar páginas grandes (huge) en Linux o Windows." -#: utils/misc/guc_tables.c:5310 +#: utils/misc/guc_tables.c:5329 msgid "Indicates the status of huge pages." msgstr "Indica el estado de las “huge pages”." -#: utils/misc/guc_tables.c:5321 +#: utils/misc/guc_tables.c:5340 msgid "Prefetch referenced blocks during recovery." msgstr "Pre-cargar bloques referenciados durante la recuperación." -#: utils/misc/guc_tables.c:5322 +#: utils/misc/guc_tables.c:5341 msgid "Look ahead in the WAL to find references to uncached data." msgstr "Busca adelantadamente en el WAL para encontrar referencias a datos que no están en cache." -#: utils/misc/guc_tables.c:5331 +#: utils/misc/guc_tables.c:5350 msgid "Forces the planner's use parallel query nodes." msgstr "Fuerza al optimizador a usar planes paralelos." -#: utils/misc/guc_tables.c:5332 +#: utils/misc/guc_tables.c:5351 msgid "This can be useful for testing the parallel query infrastructure by forcing the planner to generate plans that contain nodes that perform tuple communication between workers and the main process." msgstr "Esto puede usarse para verificar la infrastructura de consultas paralelas forzando al optimizar a generar planes que contienen nodos que utilizan la comunicación entre procesos hijos y el principal." -#: utils/misc/guc_tables.c:5344 +#: utils/misc/guc_tables.c:5363 msgid "Chooses the algorithm for encrypting passwords." msgstr "Escoge el algoritmo para cifrar contraseñas." -#: utils/misc/guc_tables.c:5354 +#: utils/misc/guc_tables.c:5373 msgid "Controls the planner's selection of custom or generic plan." msgstr "Controla la selección del optimizador de planes genéricos o «custom»." -#: utils/misc/guc_tables.c:5355 +#: utils/misc/guc_tables.c:5374 msgid "Prepared statements can have custom and generic plans, and the planner will attempt to choose which is better. This can be set to override the default behavior." msgstr "Las sentencias preparadas pueden tener planes genéricos y «custom», y el optimizador intentará escoger cuál es mejor. Esto puede usarse para controlar manualmente el comportamiento." -#: utils/misc/guc_tables.c:5367 +#: utils/misc/guc_tables.c:5386 msgid "Sets the minimum SSL/TLS protocol version to use." msgstr "Define la versión mínima del protocolo SSL/TLS a usar." -#: utils/misc/guc_tables.c:5379 +#: utils/misc/guc_tables.c:5398 msgid "Sets the maximum SSL/TLS protocol version to use." msgstr "Define la versión máxima del protocolo SSL/TLS a usar." -#: utils/misc/guc_tables.c:5391 +#: utils/misc/guc_tables.c:5410 msgid "Sets the method for synchronizing the data directory before crash recovery." msgstr "Establece el método para sincronizar el directorio de datos antes de la recuperación ante una caída." -#: utils/misc/guc_tables.c:5400 +#: utils/misc/guc_tables.c:5419 msgid "Forces immediate streaming or serialization of changes in large transactions." msgstr "Fuerza el flujo o serialización inmediatos de los cambios en transacciones grandes." -#: utils/misc/guc_tables.c:5401 +#: utils/misc/guc_tables.c:5420 msgid "On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction." msgstr "En el publicador, permite serializar o transmitir en flujo cada cambio en la decodificación lógica. En el suscriptor, permite la serialización de todos los cambios a archivos y notifica a los procesos paralelos de “apply” para leerlos y aplicarlos al término de la transacción." -#: utils/misc/guc_tables.c:5413 +#: utils/misc/guc_tables.c:5432 #, fuzzy #| msgid "Selects the method used for forcing WAL updates to disk." msgid "Selects the method for executing asynchronous I/O." @@ -32338,12 +32292,12 @@ msgstr "Falla al crear el contexto de memoria «%s»." msgid "could not attach to dynamic shared area" msgstr "no se pudo adjuntar al segmento de memoria compartida dinámica" -#: utils/mmgr/mcxt.c:1160 +#: utils/mmgr/mcxt.c:1163 #, c-format msgid "Failed on request of size %zu in memory context \"%s\"." msgstr "Falló una petición de tamaño %zu en el contexto de memoria «%s»." -#: utils/mmgr/mcxt.c:1304 +#: utils/mmgr/mcxt.c:1319 #, c-format msgid "logging memory contexts of PID %d" msgstr "registrando contextos de memoria del PID %d" @@ -32389,12 +32343,12 @@ msgstr "no se pueden ejecutar órdenes de transacción dentro de un bucle de cur msgid "could not seek to block % of temporary file" msgstr "no se pudo posicionar (seek) en el bloque %lld del archivo temporal" -#: utils/sort/sharedtuplestore.c:466 +#: utils/sort/sharedtuplestore.c:467 #, c-format msgid "unexpected chunk in shared tuplestore temporary file" msgstr "trozo inesperado en archivo temporal del tuplestore compartido" -#: utils/sort/sharedtuplestore.c:548 +#: utils/sort/sharedtuplestore.c:549 #, c-format msgid "could not seek to block %u in shared tuplestore temporary file" msgstr "no se pudo posicionar (seek) en el bloque %u en el archivo temporal del tuplestore compartido" @@ -32404,17 +32358,17 @@ msgstr "no se pudo posicionar (seek) en el bloque %u en el archivo temporal del msgid "cannot have more than %d runs for an external sort" msgstr "no se pueden tener más de %d pasadas para un ordenamiento externo" -#: utils/sort/tuplesortvariants.c:1671 +#: utils/sort/tuplesortvariants.c:1688 #, c-format msgid "could not create unique index \"%s\"" msgstr "no se pudo crear el índice único «%s»" -#: utils/sort/tuplesortvariants.c:1673 +#: utils/sort/tuplesortvariants.c:1690 #, c-format msgid "Key %s is duplicated." msgstr "La llave %s está duplicada." -#: utils/sort/tuplesortvariants.c:1674 +#: utils/sort/tuplesortvariants.c:1691 #, c-format msgid "Duplicate keys exist." msgstr "Existe una llave duplicada." @@ -32654,10 +32608,9 @@ msgid "unrecognized column option \"%s\"" msgstr "opción de columna «%s» no reconocida" #: gram.y:14263 -#, fuzzy, c-format -#| msgid "block label \"%s\" cannot be used in CONTINUE" +#, c-format msgid "option name \"%s\" cannot be used in XMLTABLE" -msgstr "la etiqueta de bloque «%s» no puede usarse en CONTINUE" +msgstr "el nombre de opción «%s» no puede usarse en XMLTABLE" #: gram.y:14319 #, c-format @@ -33096,3 +33049,47 @@ msgstr "uso no estandar de escape en un literal de cadena" #, c-format msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'." msgstr "Use la sintaxis de escape para cadenas, por ej. E'\\r\\n'." + +#, c-format +#~ msgid "unrecognized CLUSTER option \"%s\"" +#~ msgstr "opción de CLUSTER «%s» no reconocida" + +#, c-format +#~ msgid "unrecognized DROP DATABASE option \"%s\"" +#~ msgstr "opción de DROP DATABASE «%s» no reconocida" + +#, c-format +#~ msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" +#~ msgstr "valor no reconocido para la opción de EXPLAIN «%s»: «%s»" + +#, c-format +#~ msgid "unrecognized EXPLAIN option \"%s\"" +#~ msgstr "opción de EXPLAIN «%s» no reconocida" + +#, c-format +#~ msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" +#~ msgstr "las opciones ANALYZE y GENERIC_PLAN de EXPLAIN no pueden usarse juntas" + +#, c-format +#~ msgid "unrecognized REINDEX option \"%s\"" +#~ msgstr "opción de REINDEX «%s» no reconocida" + +#, c-format +#~ msgid "unrecognized ANALYZE option \"%s\"" +#~ msgstr "opción de ANALYZE «%s» no reconocida" + +#, c-format +#~ msgid "unrecognized VACUUM option \"%s\"" +#~ msgstr "opción de VACUUM «%s» no reconocida" + +#, c-format +#~ msgid "replication slot synchronization worker is shutting down on receiving SIGINT" +#~ msgstr "el trabajador de sincronización de slots de replicación está apagándose al recibir SIGINT" + +#, c-format +#~ msgid "replication origin \"%s\" already exists" +#~ msgstr "el origen de replicación «%s» ya existe" + +#, c-format +#~ msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" +#~ msgstr "valor no reconocido para la opción de CREATE_REPLICATION_SLOT «%s»: «%s»" diff --git a/src/backend/po/ja.po b/src/backend/po/ja.po index d94dc1ea505..0fd28b8ef37 100644 --- a/src/backend/po/ja.po +++ b/src/backend/po/ja.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: postgres (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-05 10:30+0900\n" -"PO-Revision-Date: 2025-11-05 11:21+0900\n" +"POT-Creation-Date: 2025-12-10 10:30+0900\n" +"PO-Revision-Date: 2025-12-10 10:50+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: jpug-doc \n" "Language: ja\n" @@ -88,18 +88,18 @@ msgid "could not open file \"%s\" for reading: %m" msgstr "ファイル\"%s\"を読み込み用にオープンできませんでした: %m" #: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 access/transam/timeline.c:143 access/transam/timeline.c:362 access/transam/twophase.c:1353 access/transam/xlog.c:3479 access/transam/xlog.c:4370 access/transam/xlogrecovery.c:1247 access/transam/xlogrecovery.c:1345 access/transam/xlogrecovery.c:1382 access/transam/xlogrecovery.c:1449 backup/basebackup.c:2128 backup/walsummary.c:283 commands/extension.c:3841 libpq/hba.c:769 -#: replication/logical/origin.c:768 replication/logical/origin.c:804 replication/logical/reorderbuffer.c:5366 replication/logical/snapbuild.c:1951 replication/slot.c:2505 replication/slot.c:2546 replication/walsender.c:643 storage/file/buffile.c:470 storage/file/copydir.c:201 utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 +#: replication/logical/origin.c:768 replication/logical/origin.c:804 replication/logical/reorderbuffer.c:5366 replication/logical/snapbuild.c:1951 replication/slot.c:2513 replication/slot.c:2554 replication/walsender.c:643 storage/file/buffile.c:470 storage/file/copydir.c:201 utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 #, c-format msgid "could not read file \"%s\": %m" msgstr "ファイル\"%s\"の読み込みに失敗しました: %m" -#: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 access/transam/xlog.c:3484 access/transam/xlog.c:4375 replication/logical/origin.c:773 replication/logical/origin.c:812 replication/logical/snapbuild.c:1956 replication/slot.c:2509 replication/slot.c:2550 replication/walsender.c:648 utils/cache/relmapper.c:833 +#: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 access/transam/xlog.c:3484 access/transam/xlog.c:4375 replication/logical/origin.c:773 replication/logical/origin.c:812 replication/logical/snapbuild.c:1956 replication/slot.c:2517 replication/slot.c:2558 replication/walsender.c:648 utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" msgstr "ファイル\"%1$s\"を読み込めませんでした: %3$zuバイトのうち%2$dバイトを読み込みました" #: ../common/controldata_utils.c:128 ../common/controldata_utils.c:132 ../common/controldata_utils.c:277 ../common/controldata_utils.c:280 access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 access/transam/timeline.c:392 access/transam/timeline.c:438 access/transam/timeline.c:512 access/transam/twophase.c:1365 access/transam/twophase.c:1783 access/transam/xlog.c:3325 access/transam/xlog.c:3519 access/transam/xlog.c:3524 access/transam/xlog.c:3660 -#: access/transam/xlog.c:4340 access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 replication/logical/origin.c:706 replication/logical/origin.c:845 replication/logical/reorderbuffer.c:5418 replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 replication/slot.c:2391 replication/slot.c:2557 replication/walsender.c:658 storage/file/copydir.c:224 storage/file/copydir.c:229 +#: access/transam/xlog.c:4340 access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 replication/logical/origin.c:706 replication/logical/origin.c:845 replication/logical/reorderbuffer.c:5418 replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 replication/slot.c:2399 replication/slot.c:2565 replication/walsender.c:658 storage/file/copydir.c:224 storage/file/copydir.c:229 #: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:825 storage/file/fd.c:3815 storage/file/fd.c:3921 utils/cache/relmapper.c:841 utils/cache/relmapper.c:956 #, c-format msgid "could not close file \"%s\": %m" @@ -124,7 +124,7 @@ msgstr "" #: ../common/controldata_utils.c:225 ../common/controldata_utils.c:230 ../common/file_utils.c:69 ../common/file_utils.c:370 ../common/file_utils.c:428 ../common/file_utils.c:502 access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 access/transam/timeline.c:251 access/transam/timeline.c:348 access/transam/twophase.c:1309 access/transam/xlog.c:3215 access/transam/xlog.c:3395 access/transam/xlog.c:3434 access/transam/xlog.c:3627 access/transam/xlog.c:4360 #: access/transam/xlogrecovery.c:4297 access/transam/xlogrecovery.c:4398 access/transam/xlogutils.c:825 backup/basebackup.c:549 backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 postmaster/syslogger.c:1512 replication/logical/origin.c:758 replication/logical/reorderbuffer.c:4019 replication/logical/reorderbuffer.c:4573 replication/logical/reorderbuffer.c:5346 replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 -#: replication/slot.c:2477 replication/walsender.c:616 replication/walsender.c:3094 storage/file/copydir.c:167 storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 utils/error/elog.c:2132 utils/init/miscinit.c:1586 utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 utils/misc/guc.c:4829 +#: replication/slot.c:2485 replication/walsender.c:616 replication/walsender.c:3094 storage/file/copydir.c:167 storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 utils/error/elog.c:2132 utils/init/miscinit.c:1586 utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 utils/misc/guc.c:4829 #, c-format msgid "could not open file \"%s\": %m" msgstr "ファイル\"%s\"をオープンできませんでした: %m" @@ -135,7 +135,7 @@ msgid "could not write file \"%s\": %m" msgstr "ファイル\"%s\"を書き出せませんでした: %m" #: ../common/controldata_utils.c:263 ../common/controldata_utils.c:268 ../common/file_utils.c:440 ../common/file_utils.c:510 access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 access/transam/timeline.c:506 access/transam/twophase.c:1777 access/transam/xlog.c:3315 access/transam/xlog.c:3513 access/transam/xlog.c:4333 access/transam/xlog.c:8724 access/transam/xlog.c:8768 -#: backup/basebackup_server.c:207 commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 replication/slot.c:2375 replication/slot.c:2487 storage/file/fd.c:817 storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 storage/sync/sync.c:446 utils/misc/guc.c:4527 +#: backup/basebackup_server.c:207 commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 replication/slot.c:2383 replication/slot.c:2495 storage/file/fd.c:817 storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "ファイル\"%s\"をfsyncできませんでした: %m" @@ -237,7 +237,7 @@ msgstr "ディレクトリ\"%s\"をオープンできませんでした: %m" msgid "could not read directory \"%s\": %m" msgstr "ディレクトリ\"%s\"を読み取れませんでした: %m" -#: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 postmaster/pgarch.c:836 postmaster/syslogger.c:1560 replication/logical/snapbuild.c:1708 replication/slot.c:1023 replication/slot.c:2258 replication/slot.c:2407 storage/file/fd.c:835 utils/time/snapmgr.c:1273 +#: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 postmaster/pgarch.c:836 postmaster/syslogger.c:1560 replication/logical/snapbuild.c:1708 replication/slot.c:1023 replication/slot.c:2266 replication/slot.c:2415 storage/file/fd.c:835 utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "ファイル\"%s\"の名前を\"%s\"に変更できませんでした: %m" @@ -586,7 +586,7 @@ msgstr "制限付きトークンで再実行できませんでした: %lu" msgid "could not get exit code from subprocess: error code %lu" msgstr "サブプロセスの終了コードを取得できませんでした: エラーコード %lu" -#: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 replication/slot.c:2461 storage/file/fd.c:875 storage/file/fd.c:3440 storage/file/fd.c:3502 +#: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 replication/slot.c:2469 storage/file/fd.c:875 storage/file/fd.c:3440 storage/file/fd.c:3502 #: storage/file/reinit.c:261 storage/ipc/dsm.c:343 storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 utils/time/snapmgr.c:1609 #, c-format msgid "could not remove file \"%s\": %m" @@ -704,25 +704,25 @@ msgstr "\"%s\"のジャンクションを取得できませんでした: %s" msgid "could not get junction for \"%s\": %s\n" msgstr "\"%s\"のジャンクションを取得できませんでした: %s\n" -#: ../port/open.c:115 +#: ../port/open.c:125 #, c-format msgid "could not open file \"%s\": %s" msgstr "ファイル\"%s\"をオープンできませんでした: %s" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "lock violation" msgstr "ロック違反" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "sharing violation" msgstr "共有違反" -#: ../port/open.c:117 +#: ../port/open.c:127 #, c-format msgid "Continuing to retry for 30 seconds." msgstr "再試行を30秒間続けます。" -#: ../port/open.c:118 +#: ../port/open.c:128 #, c-format msgid "You might have antivirus, backup, or similar software interfering with the database system." msgstr "データベースシステムに干渉するアンチウィルス、バックアップといったソフトウェアが存在する可能性があります。" @@ -1111,7 +1111,7 @@ msgid "could not determine which collation to use for string hashing" msgstr "文字列のハッシュ値計算で使用する照合順序を特定できませんでした" #: access/hash/hashfunc.c:278 access/hash/hashfunc.c:333 catalog/heap.c:688 catalog/heap.c:694 commands/createas.c:203 commands/createas.c:515 commands/indexcmds.c:2090 commands/tablecmds.c:19987 commands/view.c:80 regex/regc_pg_locale.c:242 utils/adt/formatting.c:1655 utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 utils/adt/like_support.c:1020 utils/adt/varchar.c:738 -#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1592 +#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1603 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "照合順序を明示するには COLLATE 句を使います。" @@ -1212,7 +1212,7 @@ msgid "could not write to file \"%s\", wrote %d of %d: %m" msgstr "ファイル\"%1$s\"に書き込めませんでした、%3$dバイト中%2$dバイト書き込みました: %m" #: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 access/transam/timeline.c:329 access/transam/timeline.c:481 access/transam/xlog.c:3240 access/transam/xlog.c:3448 access/transam/xlog.c:4312 access/transam/xlog.c:9327 access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 backup/basebackup_server.c:242 commands/dbcommands.c:495 postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 postmaster/walsummarizer.c:1215 -#: replication/logical/origin.c:626 replication/slot.c:2319 storage/file/copydir.c:173 storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 +#: replication/logical/origin.c:626 replication/slot.c:2327 storage/file/copydir.c:173 storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 #, c-format msgid "could not create file \"%s\": %m" msgstr "ファイル\"%s\"を作成できませんでした: %m" @@ -1222,7 +1222,7 @@ msgstr "ファイル\"%s\"を作成できませんでした: %m" msgid "could not truncate file \"%s\" to %u: %m" msgstr "ファイル\"%s\"を%uバイトに切り詰められませんでした: %m" -#: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 access/transam/timeline.c:424 access/transam/timeline.c:498 access/transam/xlog.c:3301 access/transam/xlog.c:3504 access/transam/xlog.c:4324 commands/dbcommands.c:507 postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 replication/logical/origin.c:638 replication/logical/origin.c:680 replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 replication/slot.c:2355 +#: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 access/transam/timeline.c:424 access/transam/timeline.c:498 access/transam/xlog.c:3301 access/transam/xlog.c:3504 access/transam/xlog.c:4324 commands/dbcommands.c:507 postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 replication/logical/origin.c:638 replication/logical/origin.c:680 replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 replication/slot.c:2363 #: storage/file/buffile.c:545 storage/file/copydir.c:213 utils/init/miscinit.c:1661 utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 utils/time/snapmgr.c:1257 utils/time/snapmgr.c:1264 #, c-format msgid "could not write to file \"%s\": %m" @@ -1624,12 +1624,12 @@ msgstr "プライマリサーバーで設定パラメータ\"%s\"がonに設定 msgid "Make sure the configuration parameter \"%s\" is set." msgstr "設定パラメータ\"%s\"が設定されていることを確認してください。" -#: access/transam/multixact.c:1098 +#: access/transam/multixact.c:1179 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database \"%s\"" msgstr "データベース\"%s\"はMultiXactIds周回によるデータ損失を防ぐために、新規のMultiXactIdsを割り当てるコマンドを受け付けていません" -#: access/transam/multixact.c:1100 access/transam/multixact.c:1107 access/transam/multixact.c:1131 access/transam/multixact.c:1140 access/transam/varsup.c:158 access/transam/varsup.c:165 +#: access/transam/multixact.c:1181 access/transam/multixact.c:1188 access/transam/multixact.c:1212 access/transam/multixact.c:1221 access/transam/varsup.c:158 access/transam/varsup.c:165 #, c-format msgid "" "Execute a database-wide VACUUM in that database.\n" @@ -1638,61 +1638,66 @@ msgstr "" "そのデータベース全体の VACUUM を実行してください。\n" "古い準備済みトランザクションのコミットまたはロールバック、もしくは古いレプリケーションスロットの削除も必要かもしれません。" -#: access/transam/multixact.c:1105 +#: access/transam/multixact.c:1186 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database with OID %u" msgstr "OID %u のデータベースは周回によるデータ損失を防ぐために、新規のMultiXactIdsを割り当てるコマンドを受け付けていません" -#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1207 access/transam/multixact.c:2549 #, 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" msgstr[0] "データベース\"%s\"はあと%u個のMultiXactIdが使われる前にVACUUMする必要があります" -#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 +#: access/transam/multixact.c:1216 access/transam/multixact.c:2558 #, 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" msgstr[0] "OID %u のデータベースはあと%u個のMultiXactIdが使われる前にVACUUMする必要があります" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1280 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "マルチトランザクションの\"メンバ\"が制限を超えました" -#: access/transam/multixact.c:1197 +#: access/transam/multixact.c:1281 #, 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 個のメンバ分しかありません。" -#: access/transam/multixact.c:1202 +#: access/transam/multixact.c:1286 #, 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を実行してください。" -#: access/transam/multixact.c:1233 +#: access/transam/multixact.c:1317 #, 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" msgstr[0] "OID %u のデータベースは更に%d個のマルチトランザクションメンバが使用される前にVACUUMを実行する必要があります" -#: access/transam/multixact.c:1238 +#: access/transam/multixact.c:1322 #, 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を実行してください。" -#: access/transam/multixact.c:1378 +#: access/transam/multixact.c:1461 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %uはもう存在しません: 周回しているようです" -#: access/transam/multixact.c:1384 +#: access/transam/multixact.c:1467 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "MultiXactId %uを作成できませんでした: 周回している様子" -#: access/transam/multixact.c:2488 access/transam/multixact.c:2497 +#: access/transam/multixact.c:1560 +#, c-format +msgid "MultiXact %u has invalid next offset" +msgstr "MultiXact %u の次のオフセットが不正です" + +#: access/transam/multixact.c:2554 access/transam/multixact.c:2563 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1701,27 +1706,27 @@ msgstr "" "MultiXactIdの割り当て失敗を防ぐために、このデータベースでデータベース全体に対するVACUUMを実行してください。\n" "古い準備済みトランザクションのコミットまたはロールバック、もしくは古いレプリケーションスロットの削除も必要かもしれません。" -#: access/transam/multixact.c:2776 +#: access/transam/multixact.c:2842 #, c-format msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk" msgstr "最古のチェックポイント済みのマルチトランザクション%uがディスク上に存在しないため、マルチトランザクションメンバーの周回防止機能を無効にしました" -#: access/transam/multixact.c:2798 +#: access/transam/multixact.c:2864 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "マルチトランザクションメンバーの周回防止機能が有効になりました" -#: access/transam/multixact.c:3189 +#: access/transam/multixact.c:3255 #, c-format msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" msgstr "最古のマルチトランザクション%uが見つかりません、アクセス可能な最古のものは%u、切り詰めをスキップします" -#: access/transam/multixact.c:3207 +#: access/transam/multixact.c:3273 #, c-format msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation" msgstr "マルチトランザクション%uがディスク上に存在しないため、そこまでの切り詰めができません、切り詰めをスキップします" -#: access/transam/multixact.c:3526 +#: access/transam/multixact.c:3618 #, c-format msgid "invalid MultiXactId: %u" msgstr "不正なMultiXactId: %u" @@ -2279,7 +2284,7 @@ msgstr "WALディレクトリ\"%s\"は存在しません" msgid "creating missing WAL directory \"%s\"" msgstr "なかったWALディレクトリ\"%s\"を作成しています" -#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 commands/dbcommands.c:3301 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 commands/dbcommands.c:3302 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "なかったディレクトリ\"%s\"の作成に失敗しました: %m" @@ -2357,7 +2362,7 @@ msgstr[0] "制御ファイル中の不正なWALセグメントサイズ (%dバ msgid "\"%s\" must be at least twice \"%s\"" msgstr "\"%s\"は\"%s\"の2倍以上でなければなりません" -#: access/transam/xlog.c:4726 catalog/namespace.c:4699 commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 replication/slot.c:2727 tcop/postgres.c:3626 utils/error/elog.c:2257 +#: access/transam/xlog.c:4726 catalog/namespace.c:4699 commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 replication/slot.c:2735 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "リスト文法が無効です" @@ -3367,8 +3372,8 @@ msgstr "不十分なパラメータ設定値のためリカバリが停止しま msgid "You can restart the server after making the necessary configuration changes." msgstr "必要な設定変更を行うことでサーバーを再起動できます。" -#: access/transam/xlogrecovery.c:4783 access/transam/xlogrecovery.c:4785 catalog/dependency.c:1153 catalog/dependency.c:1160 catalog/dependency.c:1171 commands/tablecmds.c:1519 commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 commands/vacuum.c:225 commands/view.c:441 executor/execExprInterp.c:5211 executor/execExprInterp.c:5219 libpq/auth.c:320 replication/logical/applyparallelworker.c:1048 replication/slot.c:1670 replication/slot.c:2742 -#: replication/slot.c:2744 replication/syncrep.c:1079 storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 utils/misc/guc.c:6902 utils/misc/guc.c:6945 utils/misc/guc.c:6987 +#: access/transam/xlogrecovery.c:4783 access/transam/xlogrecovery.c:4785 catalog/dependency.c:1153 catalog/dependency.c:1160 catalog/dependency.c:1171 commands/tablecmds.c:1519 commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 commands/vacuum.c:226 commands/view.c:441 executor/execExprInterp.c:5211 executor/execExprInterp.c:5219 libpq/auth.c:320 replication/logical/applyparallelworker.c:1048 replication/slot.c:1672 replication/slot.c:2750 +#: replication/slot.c:2752 replication/syncrep.c:1079 storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 utils/misc/guc.c:6902 utils/misc/guc.c:6945 utils/misc/guc.c:6987 #, c-format msgid "%s" msgstr "%s" @@ -3685,7 +3690,7 @@ msgstr "\"%s\"ロールの権限を持つロールのみが、サーバー上に msgid "relative path not allowed for backup stored on server" msgstr "サーバー上に格納されるバックアップでは相対パスは指定できません" -#: backup/basebackup_server.c:102 commands/dbcommands.c:478 commands/tablespace.c:157 commands/tablespace.c:173 commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2246 storage/file/copydir.c:58 +#: backup/basebackup_server.c:102 commands/dbcommands.c:478 commands/tablespace.c:157 commands/tablespace.c:173 commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2254 storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "ディレクトリ\"%s\"を作成できませんでした: %m" @@ -3905,454 +3910,449 @@ msgstr "デフォルト権限は列には設定できません" msgid "permission denied to change default privileges" msgstr "デフォルト権限を変更する権限がありません" -#: catalog/aclchk.c:1211 +#: catalog/aclchk.c:1211 catalog/aclchk.c:1222 #, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgstr "GRANT/REVOKE ON SCHEMAS を使っている時には IN SCHEMA 句は指定できません" +msgid "cannot use IN SCHEMA clause when using %s" +msgstr "%s の使用時には IN SCHEMA 句は指定できません" -#: catalog/aclchk.c:1221 -#, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" -msgstr "GRANT/REVOKE ON LARGE OBJECTS を使っている時には IN SCHEMA 句は指定できません" - -#: catalog/aclchk.c:1575 catalog/catalog.c:684 catalog/heap.c:2621 catalog/heap.c:2940 catalog/objectaddress.c:1528 catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1000 commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 commands/tablecmds.c:8130 commands/tablecmds.c:8259 commands/tablecmds.c:8413 commands/tablecmds.c:8507 commands/tablecmds.c:8610 commands/tablecmds.c:8776 commands/tablecmds.c:8806 +#: catalog/aclchk.c:1577 catalog/catalog.c:684 catalog/heap.c:2621 catalog/heap.c:2940 catalog/objectaddress.c:1528 catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1039 commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 commands/tablecmds.c:8130 commands/tablecmds.c:8259 commands/tablecmds.c:8413 commands/tablecmds.c:8507 commands/tablecmds.c:8610 commands/tablecmds.c:8776 commands/tablecmds.c:8806 #: commands/tablecmds.c:8961 commands/tablecmds.c:9064 commands/tablecmds.c:9198 commands/tablecmds.c:9311 commands/tablecmds.c:14397 commands/tablecmds.c:14600 commands/tablecmds.c:14761 commands/tablecmds.c:15989 commands/tablecmds.c:18756 commands/trigger.c:948 parser/analyze.c:2575 parser/parse_relation.c:749 parser/parse_target.c:1070 parser/parse_type.c:144 parser/parse_utilcmd.c:3662 parser/parse_utilcmd.c:3702 parser/parse_utilcmd.c:3744 #: statistics/attribute_stats.c:212 statistics/attribute_stats.c:955 utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "リレーション\"%2$s\"の列\"%1$s\"は存在しません" -#: catalog/aclchk.c:1820 +#: catalog/aclchk.c:1822 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\"はインデックスです" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16146 commands/tablecmds.c:19675 +#: catalog/aclchk.c:1829 commands/tablecmds.c:16146 commands/tablecmds.c:19675 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\"は複合型です" -#: catalog/aclchk.c:1835 catalog/objectaddress.c:1368 commands/tablecmds.c:266 commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 utils/adt/acl.c:2283 +#: catalog/aclchk.c:1837 catalog/objectaddress.c:1368 commands/tablecmds.c:266 commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 utils/adt/acl.c:2283 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\"はシーケンスではありません" -#: catalog/aclchk.c:1873 +#: catalog/aclchk.c:1875 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "シーケンス \"%s\"では USAGE, SELECT, UPDATE 権限のみをサポートします" -#: catalog/aclchk.c:1890 +#: catalog/aclchk.c:1892 #, c-format msgid "invalid privilege type %s for table" msgstr "テーブルに対する権限タイプ%sは不正です" -#: catalog/aclchk.c:2055 +#: catalog/aclchk.c:2057 #, c-format msgid "invalid privilege type %s for column" msgstr "列では権限タイプ %s は無効です" -#: catalog/aclchk.c:2068 +#: catalog/aclchk.c:2070 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "シーケンス \"%s\"では USAGE, SELECT, UPDATE のみをサポートします" -#: catalog/aclchk.c:2259 +#: catalog/aclchk.c:2261 #, c-format msgid "language \"%s\" is not trusted" msgstr "言語\"%s\"は信頼されていません" -#: catalog/aclchk.c:2261 +#: catalog/aclchk.c:2263 #, c-format msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages." msgstr "信頼されない言語はスーパーユーザーのみが使用可能なため、GRANTとREVOKEは信頼されない言語上では実行不可です。" -#: catalog/aclchk.c:2412 +#: catalog/aclchk.c:2414 #, c-format msgid "cannot set privileges of array types" msgstr "配列型の権限を設定できません" -#: catalog/aclchk.c:2413 +#: catalog/aclchk.c:2415 #, c-format msgid "Set the privileges of the element type instead." msgstr "代わりに要素型の権限を設定してください。" -#: catalog/aclchk.c:2417 +#: catalog/aclchk.c:2419 #, c-format msgid "cannot set privileges of multirange types" msgstr "複範囲型の権限を設定できません" -#: catalog/aclchk.c:2418 +#: catalog/aclchk.c:2420 #, c-format msgid "Set the privileges of the range type instead." msgstr "代わりに範囲型の権限を設定してください。" -#: catalog/aclchk.c:2601 +#: catalog/aclchk.c:2603 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "認識できない権限タイプ\"%s\"" -#: catalog/aclchk.c:2668 +#: catalog/aclchk.c:2670 #, c-format msgid "permission denied for aggregate %s" msgstr "集約 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2671 +#: catalog/aclchk.c:2673 #, c-format msgid "permission denied for collation %s" msgstr "照合順序 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2674 +#: catalog/aclchk.c:2676 #, c-format msgid "permission denied for column %s" msgstr "列 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2677 +#: catalog/aclchk.c:2679 #, c-format msgid "permission denied for conversion %s" msgstr "変換 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2680 +#: catalog/aclchk.c:2682 #, c-format msgid "permission denied for database %s" msgstr "データベース %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2683 +#: catalog/aclchk.c:2685 #, c-format msgid "permission denied for domain %s" msgstr "ドメイン %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2686 +#: catalog/aclchk.c:2688 #, c-format msgid "permission denied for event trigger %s" msgstr "イベントトリガ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2689 +#: catalog/aclchk.c:2691 #, c-format msgid "permission denied for extension %s" msgstr "機能拡張 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2692 +#: catalog/aclchk.c:2694 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "外部データラッパ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2695 +#: catalog/aclchk.c:2697 #, c-format msgid "permission denied for foreign server %s" msgstr "外部サーバー %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2698 +#: catalog/aclchk.c:2700 #, c-format msgid "permission denied for foreign table %s" msgstr "外部テーブル %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2701 +#: catalog/aclchk.c:2703 #, c-format msgid "permission denied for function %s" msgstr "関数 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2704 +#: catalog/aclchk.c:2706 #, c-format msgid "permission denied for index %s" msgstr "インデックス %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2707 +#: catalog/aclchk.c:2709 #, c-format msgid "permission denied for language %s" msgstr "言語 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2710 +#: catalog/aclchk.c:2712 #, c-format msgid "permission denied for large object %s" msgstr "ラージオブジェクト %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2713 +#: catalog/aclchk.c:2715 #, c-format msgid "permission denied for materialized view %s" msgstr "実体化ビュー %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2716 +#: catalog/aclchk.c:2718 #, c-format msgid "permission denied for operator class %s" msgstr "演算子クラス %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2719 +#: catalog/aclchk.c:2721 #, c-format msgid "permission denied for operator %s" msgstr "演算子 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2722 +#: catalog/aclchk.c:2724 #, c-format msgid "permission denied for operator family %s" msgstr "演算子族 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2725 +#: catalog/aclchk.c:2727 #, c-format msgid "permission denied for parameter %s" msgstr "パラメータ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2728 +#: catalog/aclchk.c:2730 #, c-format msgid "permission denied for policy %s" msgstr "ポリシ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2731 +#: catalog/aclchk.c:2733 #, c-format msgid "permission denied for procedure %s" msgstr "プロシージャ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2734 +#: catalog/aclchk.c:2736 #, c-format msgid "permission denied for publication %s" msgstr "パブリケーション%sへのアクセスが拒否されました" -#: catalog/aclchk.c:2737 +#: catalog/aclchk.c:2739 #, c-format msgid "permission denied for routine %s" msgstr "ルーチン %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2740 +#: catalog/aclchk.c:2742 #, c-format msgid "permission denied for schema %s" msgstr "スキーマ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2743 commands/sequence.c:654 commands/sequence.c:880 commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 +#: catalog/aclchk.c:2745 commands/sequence.c:654 commands/sequence.c:880 commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 #, c-format msgid "permission denied for sequence %s" msgstr "シーケンス %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2746 +#: catalog/aclchk.c:2748 #, c-format msgid "permission denied for statistics object %s" msgstr "統計情報オブジェクト %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2749 +#: catalog/aclchk.c:2751 #, c-format msgid "permission denied for subscription %s" msgstr "サブスクリプション %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2752 +#: catalog/aclchk.c:2754 #, c-format msgid "permission denied for table %s" msgstr "テーブル %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2755 +#: catalog/aclchk.c:2757 #, c-format msgid "permission denied for tablespace %s" msgstr "テーブル空間 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2758 +#: catalog/aclchk.c:2760 #, c-format msgid "permission denied for text search configuration %s" msgstr "テキスト検索設定 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2761 +#: catalog/aclchk.c:2763 #, c-format msgid "permission denied for text search dictionary %s" msgstr "テキスト検索辞書 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2764 +#: catalog/aclchk.c:2766 #, c-format msgid "permission denied for type %s" msgstr "型 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2767 +#: catalog/aclchk.c:2769 #, c-format msgid "permission denied for view %s" msgstr "ビュー %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2803 +#: catalog/aclchk.c:2805 #, c-format msgid "must be owner of aggregate %s" msgstr "集約 %s の所有者である必要があります" -#: catalog/aclchk.c:2806 +#: catalog/aclchk.c:2808 #, c-format msgid "must be owner of collation %s" msgstr "照合順序 %s の所有者である必要があります" -#: catalog/aclchk.c:2809 +#: catalog/aclchk.c:2811 #, c-format msgid "must be owner of conversion %s" msgstr "変換 %s の所有者である必要があります" -#: catalog/aclchk.c:2812 +#: catalog/aclchk.c:2814 #, c-format msgid "must be owner of database %s" msgstr "データベース %s の所有者である必要があります" -#: catalog/aclchk.c:2815 +#: catalog/aclchk.c:2817 #, c-format msgid "must be owner of domain %s" msgstr "ドメイン %s の所有者である必要があります" -#: catalog/aclchk.c:2818 +#: catalog/aclchk.c:2820 #, c-format msgid "must be owner of event trigger %s" msgstr "イベントトリガ %s の所有者である必要があります" -#: catalog/aclchk.c:2821 +#: catalog/aclchk.c:2823 #, c-format msgid "must be owner of extension %s" msgstr "機能拡張 %s の所有者である必要があります" -#: catalog/aclchk.c:2824 +#: catalog/aclchk.c:2826 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "外部データラッパー %s の所有者である必要があります" -#: catalog/aclchk.c:2827 +#: catalog/aclchk.c:2829 #, c-format msgid "must be owner of foreign server %s" msgstr "外部サーバー %s の所有者である必要があります" -#: catalog/aclchk.c:2830 +#: catalog/aclchk.c:2832 #, c-format msgid "must be owner of foreign table %s" msgstr "外部テーブル %s の所有者である必要があります" -#: catalog/aclchk.c:2833 +#: catalog/aclchk.c:2835 #, c-format msgid "must be owner of function %s" msgstr "関数 %s の所有者である必要があります" -#: catalog/aclchk.c:2836 +#: catalog/aclchk.c:2838 #, c-format msgid "must be owner of index %s" msgstr "インデックス %s の所有者である必要があります" -#: catalog/aclchk.c:2839 +#: catalog/aclchk.c:2841 #, c-format msgid "must be owner of language %s" msgstr "言語 %s の所有者である必要があります" -#: catalog/aclchk.c:2842 +#: catalog/aclchk.c:2844 #, c-format msgid "must be owner of large object %s" msgstr "ラージオブジェクト %s の所有者である必要があります" -#: catalog/aclchk.c:2845 +#: catalog/aclchk.c:2847 #, c-format msgid "must be owner of materialized view %s" msgstr "実体化ビュー %s の所有者である必要があります" -#: catalog/aclchk.c:2848 +#: catalog/aclchk.c:2850 #, c-format msgid "must be owner of operator class %s" msgstr "演算子クラス %s の所有者である必要があります" -#: catalog/aclchk.c:2851 +#: catalog/aclchk.c:2853 #, c-format msgid "must be owner of operator %s" msgstr "演算子 %s の所有者である必要があります" -#: catalog/aclchk.c:2854 +#: catalog/aclchk.c:2856 #, c-format msgid "must be owner of operator family %s" msgstr "演算子族 %s の所有者である必要があります" -#: catalog/aclchk.c:2857 +#: catalog/aclchk.c:2859 #, c-format msgid "must be owner of procedure %s" msgstr "プロシージャ %s の所有者である必要があります" -#: catalog/aclchk.c:2860 +#: catalog/aclchk.c:2862 #, c-format msgid "must be owner of publication %s" msgstr "パブリケーション %s の所有者である必要があります" -#: catalog/aclchk.c:2863 +#: catalog/aclchk.c:2865 #, c-format msgid "must be owner of routine %s" msgstr "ルーチン %s の所有者である必要があります" -#: catalog/aclchk.c:2866 +#: catalog/aclchk.c:2868 #, c-format msgid "must be owner of sequence %s" msgstr "シーケンス %s の所有者である必要があります" -#: catalog/aclchk.c:2869 +#: catalog/aclchk.c:2871 #, c-format msgid "must be owner of subscription %s" msgstr "サブスクリプション %s の所有者である必要があります" -#: catalog/aclchk.c:2872 +#: catalog/aclchk.c:2874 #, c-format msgid "must be owner of table %s" msgstr "テーブル %s の所有者である必要があります" -#: catalog/aclchk.c:2875 +#: catalog/aclchk.c:2877 #, c-format msgid "must be owner of type %s" msgstr "型 %s の所有者である必要があります" -#: catalog/aclchk.c:2878 +#: catalog/aclchk.c:2880 #, c-format msgid "must be owner of view %s" msgstr "ビュー %s の所有者である必要があります" -#: catalog/aclchk.c:2881 +#: catalog/aclchk.c:2883 #, c-format msgid "must be owner of schema %s" msgstr "スキーマ %s の所有者である必要があります" -#: catalog/aclchk.c:2884 +#: catalog/aclchk.c:2886 #, c-format msgid "must be owner of statistics object %s" msgstr "統計情報オブジェクト %s の所有者である必要があります" -#: catalog/aclchk.c:2887 +#: catalog/aclchk.c:2889 #, c-format msgid "must be owner of tablespace %s" msgstr "テーブル空間 %s の所有者である必要があります" -#: catalog/aclchk.c:2890 +#: catalog/aclchk.c:2892 #, c-format msgid "must be owner of text search configuration %s" msgstr "テキスト検索設定 %s の所有者である必要があります" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2895 #, c-format msgid "must be owner of text search dictionary %s" msgstr "テキスト検索辞書 %s の所有者である必要があります" -#: catalog/aclchk.c:2907 +#: catalog/aclchk.c:2909 #, c-format msgid "must be owner of relation %s" msgstr "リレーション %s の所有者である必要があります" -#: catalog/aclchk.c:2953 +#: catalog/aclchk.c:2955 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "リレーション\"%2$s\"の列\"%1$s\"へのアクセスが拒否されました" -#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 +#: catalog/aclchk.c:3189 catalog/aclchk.c:3208 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "OID %2$uのリレーションに属性%1$dは存在しません" -#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 +#: catalog/aclchk.c:3246 catalog/aclchk.c:3309 catalog/aclchk.c:3948 #, c-format msgid "relation with OID %u does not exist" msgstr "OID %uのリレーションは存在しません" -#: catalog/aclchk.c:3492 +#: catalog/aclchk.c:3494 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "OID %uのパラメータACLは存在しません" -#: catalog/aclchk.c:3571 catalog/objectaddress.c:1055 catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 storage/large_object/inv_api.c:247 +#: catalog/aclchk.c:3573 catalog/objectaddress.c:1055 catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 storage/large_object/inv_api.c:247 #, c-format msgid "large object %u does not exist" msgstr "ラージオブジェクト%uは存在しません" -#: catalog/aclchk.c:3665 commands/collationcmds.c:849 commands/publicationcmds.c:1846 +#: catalog/aclchk.c:3667 commands/collationcmds.c:849 commands/publicationcmds.c:1846 #, c-format msgid "schema with OID %u does not exist" msgstr "OID %uのスキーマは存在しません" -#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 utils/cache/typcache.c:473 utils/cache/typcache.c:528 +#: catalog/aclchk.c:3741 catalog/aclchk.c:3768 catalog/aclchk.c:3797 utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" msgstr "OID %uの型は存在しません" @@ -4679,12 +4679,12 @@ msgstr "生成式でユーザー定義型が使用されています" msgid "generation expression is not immutable" msgstr "生成式は不変ではありません" -#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 +#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1288 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "列\"%s\"の型は%sですが、デフォルト式の型は%sです" -#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 parser/parse_target.c:595 parser/parse_target.c:885 parser/parse_target.c:895 rewrite/rewriteHandler.c:1290 +#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 parser/parse_target.c:595 parser/parse_target.c:885 parser/parse_target.c:895 rewrite/rewriteHandler.c:1293 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "式を書き換えるかキャストする必要があります。" @@ -6393,27 +6393,27 @@ msgstr "継承ツリー\"%s.%s\"のANALYZEをスキップします --- このツ msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables" msgstr "継承ツリー\"%s.%s\"のANALYZEをスキップします --- このツリーにはアナライズ可能な子テーブルがありません" -#: commands/async.c:612 +#: commands/async.c:611 #, c-format msgid "channel name cannot be empty" msgstr "チャネル名が空であることはできません" -#: commands/async.c:618 +#: commands/async.c:617 #, c-format msgid "channel name too long" msgstr "チャネル名が長すぎます" -#: commands/async.c:623 +#: commands/async.c:622 #, c-format msgid "payload string too long" msgstr "ペイロード文字列が長すぎます" -#: commands/async.c:842 +#: commands/async.c:841 #, c-format msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY" msgstr "LISTEN / UNLISTEN / NOTIFY を実行しているトランザクションは PREPARE できません" -#: commands/async.c:946 +#: commands/async.c:945 #, c-format msgid "too many notifications in the NOTIFY queue" msgstr "NOTIFY キューで発生した通知イベントが多すぎます" @@ -6433,10 +6433,10 @@ msgstr "PID %d のサーバープロセスは、この中で最も古いトラ msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction." msgstr "このプロセスが現在のトランザクションを終了するまで NOTYFY キューを空にすることはできません" -#: commands/cluster.c:127 +#: commands/cluster.c:127 commands/dbcommands.c:2356 commands/explain_state.c:165 commands/indexcmds.c:2846 commands/vacuum.c:234 commands/vacuum.c:308 #, c-format -msgid "unrecognized CLUSTER option \"%s\"" -msgstr "認識できないCLUSTERオプション \"%s\"" +msgid "unrecognized %s option \"%s\"" +msgstr "%s のオプション\"%s\"が認識できません" #: commands/cluster.c:158 commands/cluster.c:421 #, c-format @@ -6602,17 +6602,17 @@ msgstr "デフォルト照合順序のバーションはリフレッシュでき msgid "Use %s instead." msgstr "代わりに%sを使用してください" -#: commands/collationcmds.c:476 commands/dbcommands.c:2605 +#: commands/collationcmds.c:476 commands/dbcommands.c:2606 #, c-format msgid "changing version from %s to %s" msgstr "バージョン%sから%sへの変更" -#: commands/collationcmds.c:491 commands/dbcommands.c:2618 +#: commands/collationcmds.c:491 commands/dbcommands.c:2619 #, c-format msgid "version has not changed" msgstr "バージョンが変わっていません" -#: commands/collationcmds.c:524 commands/dbcommands.c:2788 utils/adt/dbsize.c:180 +#: commands/collationcmds.c:524 commands/dbcommands.c:2789 utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" msgstr "OID %uのデータベースは存在しません" @@ -6632,7 +6632,7 @@ msgstr "システム照合順序をインポートするにはスーパーユー msgid "no usable system locales were found" msgstr "使用できるシステムロケールが見つかりません" -#: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 commands/dbcommands.c:2034 commands/dbcommands.c:2232 commands/dbcommands.c:2472 commands/dbcommands.c:2565 commands/dbcommands.c:2689 commands/dbcommands.c:3200 utils/init/postinit.c:1016 utils/init/postinit.c:1080 utils/init/postinit.c:1153 +#: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 commands/dbcommands.c:2034 commands/dbcommands.c:2232 commands/dbcommands.c:2473 commands/dbcommands.c:2566 commands/dbcommands.c:2690 commands/dbcommands.c:3201 utils/init/postinit.c:1016 utils/init/postinit.c:1080 utils/init/postinit.c:1153 #, c-format msgid "database \"%s\" does not exist" msgstr "データベース\"%s\"は存在しません" @@ -6717,166 +6717,176 @@ msgstr "COPYでファイルへの出力を行う権限がありません" msgid "Only roles with privileges of the \"%s\" role may COPY to a file." msgstr "\"%s\"ロールの権限を持つロールのみがCOPYによるファイルへの出力を行うことができます。" -#: commands/copy.c:193 +#: commands/copy.c:182 +#, c-format +msgid "generated columns are not supported in COPY FROM WHERE conditions" +msgstr "生成列は COPY FROM の WHERE 条件ではサポートされていません" + +#: commands/copy.c:183 commands/tablecmds.c:14418 commands/tablecmds.c:19824 commands/tablecmds.c:19906 commands/trigger.c:660 rewrite/rewriteHandler.c:952 rewrite/rewriteHandler.c:987 +#, c-format +msgid "Column \"%s\" is a generated column." +msgstr "列\"%s\"は生成カラムです。" + +#: commands/copy.c:232 #, c-format msgid "COPY FROM not supported with row-level security" msgstr "COPY FROM で行レベルセキュリティはサポートされていません" -#: commands/copy.c:194 +#: commands/copy.c:233 #, c-format msgid "Use INSERT statements instead." msgstr "代わりにINSERTを文使用してください。" -#: commands/copy.c:375 +#: commands/copy.c:414 #, c-format msgid "cannot use \"%s\" with HEADER in COPY TO" msgstr "COPY TO の HEADERで\"%s\"は使用できません" -#: commands/copy.c:384 +#: commands/copy.c:423 #, c-format msgid "%s requires a Boolean value or \"match\"" msgstr "パラメータ\"%s\"はBoolean値または\"match\"のみを取ります" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR, #. second %s is a COPY with direction, e.g. COPY TO -#: commands/copy.c:402 commands/copy.c:818 commands/copy.c:834 commands/copy.c:851 commands/copy.c:877 commands/copy.c:887 +#: commands/copy.c:441 commands/copy.c:857 commands/copy.c:873 commands/copy.c:890 commands/copy.c:916 commands/copy.c:926 #, c-format msgid "COPY %s cannot be used with %s" msgstr "COPY %s は %s と同時には使えません" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:416 commands/copy.c:474 +#: commands/copy.c:455 commands/copy.c:513 #, c-format msgid "COPY %s \"%s\" not recognized" msgstr "COPY %s \"%s\"を認識できません" -#: commands/copy.c:436 commands/define.c:73 commands/define.c:84 commands/define.c:178 commands/define.c:196 commands/define.c:211 commands/define.c:229 +#: commands/copy.c:475 commands/define.c:73 commands/define.c:84 commands/define.c:178 commands/define.c:196 commands/define.c:211 commands/define.c:229 #, c-format msgid "%s requires a numeric value" msgstr "%sは数値が必要です" -#: commands/copy.c:446 +#: commands/copy.c:485 #, c-format msgid "REJECT_LIMIT (%) must be greater than zero" msgstr "REJECT_LIMIT (%)は0より大きくなければなりません" -#: commands/copy.c:536 +#: commands/copy.c:575 #, c-format msgid "COPY format \"%s\" not recognized" msgstr "COPY フォーマット\"%s\"を認識できません" -#: commands/copy.c:594 commands/copy.c:609 commands/copy.c:624 commands/copy.c:643 +#: commands/copy.c:633 commands/copy.c:648 commands/copy.c:663 commands/copy.c:682 #, c-format msgid "argument to option \"%s\" must be a list of column names" msgstr "オプション\"%s\"の引数は列名のリストでなければなりません" -#: commands/copy.c:655 +#: commands/copy.c:694 #, c-format msgid "argument to option \"%s\" must be a valid encoding name" msgstr "オプション\"%s\"の引数は有効なエンコーディング名でなければなりません" -#: commands/copy.c:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2421 #, c-format msgid "option \"%s\" not recognized" msgstr "タイムゾーン\"%s\"を認識できません" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:696 commands/copy.c:701 commands/copy.c:706 commands/copy.c:776 +#: commands/copy.c:735 commands/copy.c:740 commands/copy.c:745 commands/copy.c:815 #, c-format msgid "cannot specify %s in BINARY mode" msgstr "BINARYモードでは%sを指定できません" -#: commands/copy.c:728 +#: commands/copy.c:767 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "COPYの区切り文字は単一の1バイト文字でなければなりません" -#: commands/copy.c:735 +#: commands/copy.c:774 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "COPYの区切り文字は改行や復帰記号とすることができません" -#: commands/copy.c:741 +#: commands/copy.c:780 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "COPYのNULL表現には改行や復帰記号を使用することはできません" -#: commands/copy.c:751 +#: commands/copy.c:790 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "COPYのデフォルト表現には改行や復帰記号を使用することはできません" -#: commands/copy.c:769 +#: commands/copy.c:808 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "COPYの区切り文字を\"%s\"とすることはできません" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:783 commands/copy.c:800 commands/copy.c:812 commands/copy.c:827 commands/copy.c:843 +#: commands/copy.c:822 commands/copy.c:839 commands/copy.c:851 commands/copy.c:866 commands/copy.c:882 #, c-format msgid "COPY %s requires CSV mode" msgstr "COPY %s はCSVモードを要求します" -#: commands/copy.c:788 +#: commands/copy.c:827 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "COPYの引用符は単一の1バイト文字でなければなりません" -#: commands/copy.c:793 +#: commands/copy.c:832 #, c-format msgid "COPY delimiter and quote must be different" msgstr "COPYの区切り文字と引用符は異なる文字でなければなりません" -#: commands/copy.c:805 +#: commands/copy.c:844 #, c-format msgid "COPY escape must be a single one-byte character" msgstr "COPYのエスケープは単一の1バイト文字でなければなりません" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:859 commands/copy.c:895 +#: commands/copy.c:898 commands/copy.c:934 #, c-format msgid "COPY delimiter character must not appear in the %s specification" msgstr "COPYの区切り文字は%s指定では使用できません" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:868 commands/copy.c:904 +#: commands/copy.c:907 commands/copy.c:943 #, c-format msgid "CSV quote character must not appear in the %s specification" msgstr "COPYの引用符は%s指定では使用できません" -#: commands/copy.c:913 +#: commands/copy.c:952 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "NULL指定とDEFAULT指定は同じにはできません" -#: commands/copy.c:919 +#: commands/copy.c:958 #, c-format msgid "only ON_ERROR STOP is allowed in BINARY mode" msgstr "BINARYモードではN_ERROR STOPのみ使用可能です" #. translator: first and second %s are the names of COPY option, e.g. #. * ON_ERROR, third is the value of the COPY option, e.g. IGNORE -#: commands/copy.c:926 +#: commands/copy.c:965 #, c-format msgid "COPY %s requires %s to be set to %s" msgstr "COPY %s では %s が %s に設定されている必要があります" -#: commands/copy.c:988 +#: commands/copy.c:1027 #, c-format msgid "column \"%s\" is a generated column" msgstr "列\"%s\"は生成カラムです" -#: commands/copy.c:990 +#: commands/copy.c:1029 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "生成カラムはCOPYでは使えません。" -#: commands/copy.c:1005 commands/indexcmds.c:1959 commands/statscmds.c:239 commands/tablecmds.c:2593 commands/tablecmds.c:3101 commands/tablecmds.c:3930 parser/parse_relation.c:3798 parser/parse_relation.c:3808 parser/parse_relation.c:3826 parser/parse_relation.c:3833 parser/parse_relation.c:3847 utils/adt/tsvector_op.c:2853 +#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:260 commands/tablecmds.c:2593 commands/tablecmds.c:3101 commands/tablecmds.c:3930 parser/parse_relation.c:3798 parser/parse_relation.c:3808 parser/parse_relation.c:3826 parser/parse_relation.c:3833 parser/parse_relation.c:3847 utils/adt/tsvector_op.c:2853 #, c-format msgid "column \"%s\" does not exist" msgstr "列\"%s\"は存在しません" -#: commands/copy.c:1012 commands/tablecmds.c:2619 commands/trigger.c:957 parser/parse_target.c:1086 parser/parse_target.c:1097 +#: commands/copy.c:1051 commands/tablecmds.c:2619 commands/trigger.c:957 parser/parse_target.c:1086 parser/parse_target.c:1097 #, c-format msgid "column \"%s\" specified more than once" msgstr "列\"%s\"が複数指定されました" @@ -7319,7 +7329,7 @@ msgstr "%sは有効な符号化方式名ではありません" msgid "unrecognized locale provider: %s" msgstr "認識できない照合順序プロバイダ: %s" -#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 commands/user.c:739 +#: commands/dbcommands.c:958 commands/dbcommands.c:2454 commands/user.c:299 commands/user.c:739 #, c-format msgid "invalid connection limit: %d" msgstr "不正な接続数制限: %d" @@ -7339,7 +7349,7 @@ msgstr "テンプレートデータベース\"%s\"は存在しません" msgid "cannot use invalid database \"%s\" as template" msgstr "無効なデータベース\"%s\"はテンプレートとして使用できません" -#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 utils/init/postinit.c:1095 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2484 utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." msgstr "DROP DATABASEを使用して無効なデータベースを削除してください。" @@ -7606,59 +7616,54 @@ msgstr "データベース\"%s\"のリレーションの中に、テーブルス msgid "You must move them back to the database's default tablespace before using this command." msgstr "このコマンドを使う前に、データベースのデフォルトのテーブルスペースに戻す必要があります。" -#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 commands/dbcommands.c:3338 commands/dbcommands.c:3452 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3039 commands/dbcommands.c:3339 commands/dbcommands.c:3453 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "元のデータベースのディレクトリ\"%s\"に不要なファイルが残っているかもしれません" -#: commands/dbcommands.c:2356 -#, c-format -msgid "unrecognized DROP DATABASE option \"%s\"" -msgstr "DROP DATABASEのオプション\"%s\"が認識できません" - -#: commands/dbcommands.c:2434 +#: commands/dbcommands.c:2435 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "オプション\"%s\"は他のオプションと一緒に指定はできません" -#: commands/dbcommands.c:2482 +#: commands/dbcommands.c:2483 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "無効なデータベース\"%s\"は変更できません" -#: commands/dbcommands.c:2499 +#: commands/dbcommands.c:2500 #, c-format msgid "cannot disallow connections for current database" msgstr "現在のデータベースへの接続は禁止できません" -#: commands/dbcommands.c:2729 +#: commands/dbcommands.c:2730 #, c-format msgid "permission denied to change owner of database" msgstr "データベースの所有者を変更する権限がありません" -#: commands/dbcommands.c:3144 +#: commands/dbcommands.c:3145 #, c-format msgid "There are %d other session(s) and %d prepared transaction(s) using the database." msgstr "他にこのデータベースを使っている %d 個のセッションと %d 個の準備済みトランザクションがあります。" -#: commands/dbcommands.c:3147 +#: commands/dbcommands.c:3148 #, 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:3152 storage/ipc/procarray.c:3860 +#: commands/dbcommands.c:3153 storage/ipc/procarray.c:3860 #, 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/dbcommands.c:3294 +#: commands/dbcommands.c:3295 #, c-format msgid "missing directory \"%s\"" msgstr "ディレクトリ\"%s\"がありません" -#: commands/dbcommands.c:3352 commands/tablespace.c:184 commands/tablespace.c:633 +#: commands/dbcommands.c:3353 commands/tablespace.c:184 commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" msgstr "ディレクトリ\"%s\"のstatができませんでした: %m" @@ -7733,7 +7738,7 @@ msgstr "照合順序\"%s\"は存在しません、スキップします" msgid "conversion \"%s\" does not exist, skipping" msgstr "変換\"%sは存在しません、スキップします" -#: commands/dropcmds.c:288 commands/statscmds.c:682 +#: commands/dropcmds.c:288 commands/statscmds.c:703 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "統計情報オブジェクト\"%s\"は存在しません、スキップします" @@ -7924,15 +7929,10 @@ msgstr "%sはtable_rewriteイベントトリガ関数でのみ呼び出すこと msgid "%s can only be called in an event trigger function" msgstr "%sはイベントトリガ関数でのみ呼び出すことができます" -#: commands/explain_state.c:133 commands/explain_state.c:158 +#: commands/explain_state.c:133 commands/explain_state.c:158 replication/walsender.c:1151 #, c-format -msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" -msgstr "EXPLAIN オプション\"%s\"が認識できない値です: \"%s\"" - -#: commands/explain_state.c:165 -#, c-format -msgid "unrecognized EXPLAIN option \"%s\"" -msgstr "EXPLAIN オプション\"%s\"が認識できません" +msgid "unrecognized value for %s option \"%s\": \"%s\"" +msgstr "%s のオプション\"%s\"に対する認識できない値: \"%s\"" #: commands/explain_state.c:174 commands/explain_state.c:186 commands/explain_state.c:192 #, c-format @@ -7941,8 +7941,8 @@ msgstr "EXPLAINのオプション %s には ANALYZE 指定が必要です" #: commands/explain_state.c:198 #, c-format -msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" -msgstr "EXPLAINのオプションANALYZEとGENERIC_PLANは同時に使用できません" +msgid "%s options %s and %s cannot be used together" +msgstr "%s のオプション %s と %s は同時には使用できません" #: commands/extension.c:177 commands/extension.c:3323 #, c-format @@ -8965,11 +8965,6 @@ msgstr "型%sの被包含演算子を特定できませんでした" msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." msgstr "アクセスメソッド\"%3$s\"の演算子ファミリー\"%2$s\"の比較方式%1$dを変換できませんでした。" -#: commands/indexcmds.c:2846 -#, c-format -msgid "unrecognized REINDEX option \"%s\"" -msgstr "認識できないREINDEXのオプション \"%s\"" - #: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" @@ -9390,7 +9385,7 @@ msgstr "演算子の属性\"%s\"は変更できません" msgid "operator attribute \"%s\" cannot be changed if it has already been set" msgstr "演算子の属性\"%s\"は、すでに設定されている場合には変更できません" -#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:146 commands/tablecmds.c:1800 commands/tablecmds.c:2400 commands/tablecmds.c:3824 commands/tablecmds.c:6793 commands/tablecmds.c:10114 commands/tablecmds.c:19565 commands/tablecmds.c:19600 commands/trigger.c:319 commands/trigger.c:1338 commands/trigger.c:1448 rewrite/rewriteDefine.c:268 rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 +#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:152 commands/tablecmds.c:1800 commands/tablecmds.c:2400 commands/tablecmds.c:3824 commands/tablecmds.c:6793 commands/tablecmds.c:10114 commands/tablecmds.c:19565 commands/tablecmds.c:19600 commands/trigger.c:319 commands/trigger.c:1338 commands/trigger.c:1448 rewrite/rewriteDefine.c:268 rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 #, c-format msgid "permission denied: \"%s\" is a system catalog" msgstr "権限がありません: \"%s\"はシステムカタログです" @@ -9860,77 +9855,77 @@ msgstr "CREATE STATISTICSで指定可能なリレーションは一つのみで msgid "cannot define statistics for relation \"%s\"" msgstr "リレーション\"%s\"に対して統計情報を定義できません" -#: commands/statscmds.c:187 +#: commands/statscmds.c:208 #, c-format msgid "statistics object \"%s\" already exists, skipping" msgstr "統計情報オブジェクト\"%s\"はすでに存在します、スキップします" -#: commands/statscmds.c:195 +#: commands/statscmds.c:216 #, c-format msgid "statistics object \"%s\" already exists" msgstr "統計情報オブジェクト\"%s\"はすでに存在します" -#: commands/statscmds.c:206 +#: commands/statscmds.c:227 #, c-format msgid "cannot have more than %d columns in statistics" msgstr "統計情報は%dを超える列を使用できません" -#: commands/statscmds.c:247 commands/statscmds.c:276 commands/statscmds.c:316 +#: commands/statscmds.c:268 commands/statscmds.c:297 commands/statscmds.c:337 #, c-format msgid "statistics creation on system columns is not supported" msgstr "システム列に対する統計情報の作成はサポートされていません" -#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#: commands/statscmds.c:274 commands/statscmds.c:303 commands/statscmds.c:343 #, c-format msgid "statistics creation on virtual generated columns is not supported" msgstr "仮想生成列に対する統計情報の作成はサポートされていません" -#: commands/statscmds.c:260 commands/statscmds.c:289 +#: commands/statscmds.c:281 commands/statscmds.c:310 #, c-format msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class" msgstr "列\"%s\"の型%sはデフォルトのbtreeオペレータクラスを持たないため統計情報では利用できません" -#: commands/statscmds.c:339 +#: commands/statscmds.c:360 #, c-format msgid "expression cannot be used in multivariate statistics because its type %s has no default btree operator class" msgstr "式の型%sがデフォルトbtree演算子クラスを持たないためこの式は多値統計情報では使用できません" -#: commands/statscmds.c:360 +#: commands/statscmds.c:381 #, c-format msgid "when building statistics on a single expression, statistics kinds may not be specified" msgstr "単一式上の統計情報の構築時には、統計種別は指定できません" -#: commands/statscmds.c:389 +#: commands/statscmds.c:410 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "認識できない統計情報種別\"%s\"" -#: commands/statscmds.c:418 +#: commands/statscmds.c:439 #, c-format msgid "extended statistics require at least 2 columns" msgstr "拡張統計情報には最低でも2つの列が必要です" -#: commands/statscmds.c:436 +#: commands/statscmds.c:457 #, c-format msgid "duplicate column name in statistics definition" msgstr "定形情報定義中の列名が重複しています" -#: commands/statscmds.c:471 +#: commands/statscmds.c:492 #, c-format msgid "duplicate expression in statistics definition" msgstr "統計情報定義内に重複した式" -#: commands/statscmds.c:646 commands/tablecmds.c:8939 +#: commands/statscmds.c:667 commands/tablecmds.c:8939 #, c-format msgid "statistics target %d is too low" msgstr "統計情報目標%dは小さすぎます" -#: commands/statscmds.c:654 commands/tablecmds.c:8947 +#: commands/statscmds.c:675 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "統計情報目標を%dに減らします" -#: commands/statscmds.c:678 +#: commands/statscmds.c:699 #, c-format msgid "statistics object \"%s.%s\" does not exist, skipping" msgstr "統計情報オブジェクト\"%s.%s\"は存在しません、スキップします" @@ -10494,7 +10489,7 @@ msgstr "%s対%s" msgid "column \"%s\" has a collation conflict" msgstr "列\"%s\"の照合順序が競合しています" -#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 commands/tablecmds.c:7277 parser/parse_expr.c:4776 +#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 commands/tablecmds.c:7277 parser/parse_expr.c:4783 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\"対\"%s\"" @@ -11188,11 +11183,6 @@ msgstr "型付けされたテーブルの列の型を変更できません" msgid "cannot specify USING when altering type of generated column" msgstr "生成列の型変更の際にはUSINGを指定することはできません" -#: commands/tablecmds.c:14418 commands/tablecmds.c:19824 commands/tablecmds.c:19906 commands/trigger.c:660 rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 -#, c-format -msgid "Column \"%s\" is a generated column." -msgstr "列\"%s\"は生成カラムです。" - #: commands/tablecmds.c:14429 #, c-format msgid "cannot alter inherited column \"%s\"" @@ -12149,7 +12139,7 @@ msgstr "トリガ\"%s\"の実行前には、この行はパーティション\"% msgid "cannot collect transition tuples from child foreign tables" msgstr "外部子テーブルからは遷移タプルを収集できません" -#: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 executor/nodeModifyTable.c:3502 +#: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 executor/nodeModifyTable.c:3523 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "他の行への変更を伝搬させるためにBEFOREトリガではなくAFTERトリガの使用を検討してください" @@ -12948,117 +12938,107 @@ msgstr "依存する権限が存在します" msgid "Use CASCADE to revoke them too." msgstr "これらも剥奪するにはCASCADEを使用してください" -#: commands/vacuum.c:147 +#: commands/vacuum.c:148 #, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "\"%s\"は0または%d kBと%d kBとの間でなければなりません。" -#: commands/vacuum.c:223 +#: commands/vacuum.c:224 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "BUFFER_USAGE_LIMITオプションは0または%d kBと%d kBの間でなければなりません" -#: commands/vacuum.c:233 -#, c-format -msgid "unrecognized ANALYZE option \"%s\"" -msgstr "ANALYZEオプション\"%s\"が認識できません" - -#: commands/vacuum.c:273 +#: commands/vacuum.c:275 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "パラレルオプションには0から%dまでの値である必要があります" -#: commands/vacuum.c:285 +#: commands/vacuum.c:287 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "VACUUMの並列ワーカーの数はは0から%dまでの値でなければなりません" -#: commands/vacuum.c:306 -#, c-format -msgid "unrecognized VACUUM option \"%s\"" -msgstr "認識できないVACUUMオプション \"%s\"" - -#: commands/vacuum.c:332 +#: commands/vacuum.c:335 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULLは並列実行できません" -#: commands/vacuum.c:343 +#: commands/vacuum.c:346 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "BUFFER_USAGE_LIMITはVACUUM FULLに対しては指定できません" -#: commands/vacuum.c:357 +#: commands/vacuum.c:360 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "ANALYZE オプションは列リストが与えられているときのみ指定できます" -#: commands/vacuum.c:369 +#: commands/vacuum.c:372 #, c-format msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL" msgstr "VACUUM のオプションDISABLE_PAGE_SKIPPINGはFULLと同時には指定できません" -#: commands/vacuum.c:376 +#: commands/vacuum.c:379 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "VACUUM FULLではPROCESS_TOASTの指定が必須です" -#: commands/vacuum.c:385 +#: commands/vacuum.c:388 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables" msgstr "ONLY_DATABASE_STATSはテーブルのリストと一緒に指定することはできません" -#: commands/vacuum.c:394 +#: commands/vacuum.c:397 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STATSは他のVACUUMオプションと一緒に指定することはできません" -#: commands/vacuum.c:534 +#: commands/vacuum.c:537 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%sはVACUUMやANALYZEからは実行できません" -#: commands/vacuum.c:756 +#: commands/vacuum.c:759 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "列%sのVACUUMを行う権限がありません、スキップします" -#: commands/vacuum.c:769 +#: commands/vacuum.c:772 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "列%sのANALYZEを行う権限がありません、スキップします" -#: commands/vacuum.c:847 commands/vacuum.c:948 +#: commands/vacuum.c:850 commands/vacuum.c:951 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "\"%s\"のVACUUM処理をスキップしています -- ロックを獲得できませんでした" -#: commands/vacuum.c:852 +#: commands/vacuum.c:855 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "\"%s\"のVACUUM処理をスキップしています -- リレーションはすでに存在しません" -#: commands/vacuum.c:868 commands/vacuum.c:953 +#: commands/vacuum.c:871 commands/vacuum.c:956 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "\"%s\"のANALYZEをスキップしています --- ロック獲得できませんでした" -#: commands/vacuum.c:873 +#: commands/vacuum.c:876 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "\"%s\"のANALYZEをスキップします --- リレーションはすでに存在しません" -#: commands/vacuum.c:989 +#: commands/vacuum.c:992 #, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" msgstr "パーティション親テーブル\"%s\"に対する VACUUM ONLY は効果がありません" -#: commands/vacuum.c:1180 +#: commands/vacuum.c:1183 #, c-format msgid "cutoff for removing and freezing tuples is far in the past" msgstr "タプルの削除およびフリーズのカットオフ値が古すぎます" -#: commands/vacuum.c:1181 commands/vacuum.c:1186 +#: commands/vacuum.c:1184 commands/vacuum.c:1189 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -13067,37 +13047,37 @@ msgstr "" "周回問題を回避するためにすぐに実行中のトランザクションを終了してください。\n" "古い準備済みトランザクションのコミットまたはロールバック、もしくは古いレプリケーションスロットの削除が必要な場合もあります。" -#: commands/vacuum.c:1185 +#: commands/vacuum.c:1188 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "マルチトランザクションのフリーズのカットオフ値が古すぎます" -#: commands/vacuum.c:1947 +#: commands/vacuum.c:1950 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "データベースの一部は20億トランザクション以上の間にVACUUMを実行されていませんでした" -#: commands/vacuum.c:1948 +#: commands/vacuum.c:1951 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "トランザクションの周回によるデータ損失が発生している可能性があります" -#: commands/vacuum.c:2134 +#: commands/vacuum.c:2143 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "\"%s\"をスキップしています --- テーブルではないものや、特別なシステムテーブルに対してはVACUUMを実行できません" -#: commands/vacuum.c:2650 +#: commands/vacuum.c:2659 #, c-format msgid "scanned index \"%s\" to remove % row versions" msgstr "インデックス\"%s\"をスキャンして%の行バージョンを削除しました" -#: commands/vacuum.c:2669 +#: commands/vacuum.c:2678 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "現在インデックス\"%s\"は%.0f行バージョンを%uページで含んでいます" -#: commands/vacuum.c:2673 +#: commands/vacuum.c:2682 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -13355,7 +13335,7 @@ msgstr "問い合わせで %d 番目に削除される列の値を指定して msgid "Table has type %s at ordinal position %d, but query expects %s." msgstr "テーブルでは %2$d 番目の型は %1$s ですが、問い合わせでは %3$s を想定しています。" -#: executor/execExpr.c:1157 parser/parse_agg.c:869 +#: executor/execExpr.c:1157 parser/parse_agg.c:896 #, c-format msgid "window function calls cannot be nested" msgstr "ウィンドウ関数の呼び出しを入れ子にすることはできません" @@ -13882,7 +13862,7 @@ msgstr "戻り値型%sはSQL関数でサポートされていません" msgid "aggregate %u needs to have compatible input type and transition type" msgstr "集約%uは入力データ型と遷移用の型間で互換性が必要です" -#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:692 parser/parse_agg.c:735 #, c-format msgid "aggregate function calls cannot be nested" msgstr "集約関数の呼び出しを入れ子にすることはできません" @@ -13963,7 +13943,7 @@ msgid "Consider defining the foreign key on table \"%s\"." msgstr "テーブル\"%s\"上に外部キー制約を定義することを検討してください。" #. translator: %s is a SQL command name -#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3508 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3529 #, c-format msgid "%s command cannot affect row a second time" msgstr "%sコマンドは単一の行に2度は適用できません" @@ -13973,12 +13953,12 @@ msgstr "%sコマンドは単一の行に2度は適用できません" msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values." msgstr "同じコマンドでの挿入候補の行が同じ制約値を持つことがないようにしてください" -#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3522 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "更新または削除対象のタプルは、現在のコマンドによって発火した操作トリガーによってすでに更新されています" -#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3531 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "ソース行が2行以上ターゲット行に合致しないようにしてください。" @@ -16812,7 +16792,7 @@ msgstr "パラメータを持つ無名ポータル: %s" msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "FULL JOIN はマージ結合可能もしくはハッシュ結合可能な場合のみサポートされています" -#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1692 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "リレーション\"%s\"に対してMERGEは実行できません" @@ -17150,330 +17130,340 @@ msgstr "%sは名前付きタプルストアには適用できません" msgid "relation \"%s\" in %s clause not found in FROM clause" msgstr "%2$s句のリレーション\"%1$s\"はFROM句にありません" -#: parser/parse_agg.c:215 parser/parse_oper.c:215 +#: parser/parse_agg.c:218 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" msgstr "型%sの順序演算子を特定できませんでした" -#: parser/parse_agg.c:217 +#: parser/parse_agg.c:220 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "DISTINCT 付きの集約関数は、入力がソート可能である必要があります。" -#: parser/parse_agg.c:275 +#: parser/parse_agg.c:278 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPINGの引数は32より少くなければなりません" -#: parser/parse_agg.c:378 +#: parser/parse_agg.c:382 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "JOIN条件で集約関数を使用できません" -#: parser/parse_agg.c:380 +#: parser/parse_agg.c:384 msgid "grouping operations are not allowed in JOIN conditions" msgstr "グルーピング演算はJOIN条件の中では使用できません" -#: parser/parse_agg.c:390 +#: parser/parse_agg.c:394 msgid "aggregate functions are not allowed in FROM clause of their own query level" msgstr "集約関数は自身の問い合わせレベルのFROM句の中では使用できません" -#: parser/parse_agg.c:392 +#: parser/parse_agg.c:396 msgid "grouping operations are not allowed in FROM clause of their own query level" msgstr "グルーピング演算は自身のクエリレベルのFROM句の中では使用できません" -#: parser/parse_agg.c:397 +#: parser/parse_agg.c:401 msgid "aggregate functions are not allowed in functions in FROM" msgstr "集約関数はFROM句内の関数では使用できません" -#: parser/parse_agg.c:399 +#: parser/parse_agg.c:403 msgid "grouping operations are not allowed in functions in FROM" msgstr "グルーピング演算はFROM句内の関数では使用できません" -#: parser/parse_agg.c:407 +#: parser/parse_agg.c:411 msgid "aggregate functions are not allowed in policy expressions" msgstr "集約関数はポリシ式では使用できません" -#: parser/parse_agg.c:409 +#: parser/parse_agg.c:413 msgid "grouping operations are not allowed in policy expressions" msgstr "グルーピング演算はポリシ式では使用できません" -#: parser/parse_agg.c:426 +#: parser/parse_agg.c:430 msgid "aggregate functions are not allowed in window RANGE" msgstr "集約関数はウィンドウRANGEの中では集約関数を使用できません" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:432 msgid "grouping operations are not allowed in window RANGE" msgstr "ウィンドウ定義のRANGE句の中ではグルーピング演算は使用できません" -#: parser/parse_agg.c:433 +#: parser/parse_agg.c:437 msgid "aggregate functions are not allowed in window ROWS" msgstr "ウィンドウ定義のROWS句では集約関数は使用できません" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:439 msgid "grouping operations are not allowed in window ROWS" msgstr "ウィンドウ定義のROWS句ではグルーピング演算は使用できません" -#: parser/parse_agg.c:440 +#: parser/parse_agg.c:444 msgid "aggregate functions are not allowed in window GROUPS" msgstr "ウィンドウ定義のGROUPS句では集約関数は使用できません" -#: parser/parse_agg.c:442 +#: parser/parse_agg.c:446 msgid "grouping operations are not allowed in window GROUPS" msgstr "ウィンドウ定義のGROUPS句ではグルーピング演算は使用できません" -#: parser/parse_agg.c:455 +#: parser/parse_agg.c:459 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "MERGE WHEN条件では集約関数を使用できません" -#: parser/parse_agg.c:457 +#: parser/parse_agg.c:461 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "MERGE WHEN条件ではグルーピング演算を使用できません" -#: parser/parse_agg.c:484 +#: parser/parse_agg.c:488 msgid "aggregate functions are not allowed in check constraints" msgstr "検査制約では集約関数を使用できません" -#: parser/parse_agg.c:486 +#: parser/parse_agg.c:490 msgid "grouping operations are not allowed in check constraints" msgstr "検査制約ではグルーピング演算を使用できません" -#: parser/parse_agg.c:493 +#: parser/parse_agg.c:497 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "DEFAULT式では集約関数を使用できません" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:499 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "DEFAULT式ではグルーピング演算を使用できません" -#: parser/parse_agg.c:500 +#: parser/parse_agg.c:504 msgid "aggregate functions are not allowed in index expressions" msgstr "インデックス式では集約関数を使用できません" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:506 msgid "grouping operations are not allowed in index expressions" msgstr "インデックス式ではグルーピング演算を使用できません" -#: parser/parse_agg.c:507 +#: parser/parse_agg.c:511 msgid "aggregate functions are not allowed in index predicates" msgstr "インデックス述語では集約関数を使用できません" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:513 msgid "grouping operations are not allowed in index predicates" msgstr "インデックス述語ではグルーピング演算を使用できません" -#: parser/parse_agg.c:514 +#: parser/parse_agg.c:518 msgid "aggregate functions are not allowed in statistics expressions" msgstr "統計情報式では集約関数を使用できません" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:520 msgid "grouping operations are not allowed in statistics expressions" msgstr "統計情報式ではグルーピング演算使用できません" -#: parser/parse_agg.c:521 +#: parser/parse_agg.c:525 msgid "aggregate functions are not allowed in transform expressions" msgstr "変換式では集約関数を使用できません" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:527 msgid "grouping operations are not allowed in transform expressions" msgstr "変換式ではグルーピング演算を使用できません" -#: parser/parse_agg.c:528 +#: parser/parse_agg.c:532 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "EXECUTEのパラメータでは集約関数を使用できません" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:534 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "EXECUTEのパラメータではグルーピング演算を使用できません" -#: parser/parse_agg.c:535 +#: parser/parse_agg.c:539 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "トリガのWHEN条件では集約関数を使用できません" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:541 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "トリガのWHEN条件ではグルーピング演算を使用できません" -#: parser/parse_agg.c:542 +#: parser/parse_agg.c:546 msgid "aggregate functions are not allowed in partition bound" msgstr "集約関数はパーティション境界では使用できません" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:548 msgid "grouping operations are not allowed in partition bound" msgstr "グルーピング演算はパーティション境界では使用できません" -#: parser/parse_agg.c:549 +#: parser/parse_agg.c:553 msgid "aggregate functions are not allowed in partition key expressions" msgstr "パーティションキー式では集約関数は使用できません" -#: parser/parse_agg.c:551 +#: parser/parse_agg.c:555 msgid "grouping operations are not allowed in partition key expressions" msgstr "パーティションキー式ではグルーピング演算は使用できません" -#: parser/parse_agg.c:557 +#: parser/parse_agg.c:561 msgid "aggregate functions are not allowed in column generation expressions" msgstr "集約関数はカラム生成式では使用できません" -#: parser/parse_agg.c:559 +#: parser/parse_agg.c:563 msgid "grouping operations are not allowed in column generation expressions" msgstr "グルーピング演算はカラム生成式では使用できません" -#: parser/parse_agg.c:565 +#: parser/parse_agg.c:569 msgid "aggregate functions are not allowed in CALL arguments" msgstr "CALLの引数では集約関数を使用できません" -#: parser/parse_agg.c:567 +#: parser/parse_agg.c:571 msgid "grouping operations are not allowed in CALL arguments" msgstr "CALLの引数ではグルーピング演算を使用できません" -#: parser/parse_agg.c:573 +#: parser/parse_agg.c:577 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "集約関数は COPY FROM の WHERE 条件では使用できません" -#: parser/parse_agg.c:575 +#: parser/parse_agg.c:579 msgid "grouping operations are not allowed in COPY FROM WHERE conditions" msgstr "グルーピング演算は COPY FROM の WHERE 条件の中では使用できません" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:602 parser/parse_clause.c:1962 +#: parser/parse_agg.c:606 parser/parse_clause.c:1962 #, 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:605 +#: parser/parse_agg.c:609 #, c-format msgid "grouping operations are not allowed in %s" msgstr "%sではグルーピング演算を使用できません" -#: parser/parse_agg.c:706 +#: parser/parse_agg.c:705 parser/parse_agg.c:742 +#, c-format +msgid "outer-level aggregate cannot use a nested CTE" +msgstr "上位レベルの集約では、下位レベルのCTEを使用することはできません" + +#: parser/parse_agg.c:706 parser/parse_agg.c:743 +#, c-format +msgid "CTE \"%s\" is below the aggregate's semantic level." +msgstr "CTE \"%s\" は、この集約のクエリレベルよりも下位にあります。" + +#: parser/parse_agg.c:728 #, c-format msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments" msgstr "アウタレベルの集約は直接引数に低位の変数を含むことができません" -#: parser/parse_agg.c:784 +#: parser/parse_agg.c:813 #, c-format msgid "aggregate function calls cannot contain set-returning function calls" msgstr "集合返却関数の呼び出しに集約関数の呼び出しを含むことはできません" -#: parser/parse_agg.c:785 parser/parse_expr.c:1763 parser/parse_expr.c:2256 parser/parse_func.c:885 +#: parser/parse_agg.c:814 parser/parse_expr.c:1763 parser/parse_expr.c:2256 parser/parse_func.c:885 #, 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:790 +#: parser/parse_agg.c:819 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "集約関数の呼び出しにウィンドウ関数の呼び出しを含むことはできません" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:922 msgid "window functions are not allowed in JOIN conditions" msgstr "JOIN条件ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:902 +#: parser/parse_agg.c:929 msgid "window functions are not allowed in functions in FROM" msgstr "FROM句内の関数ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:908 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in policy expressions" msgstr "ポリシ式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:921 +#: parser/parse_agg.c:948 msgid "window functions are not allowed in window definitions" msgstr "ウィンドウ定義ではウィンドウ関数は使用できません" -#: parser/parse_agg.c:932 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "MERGE WHEN条件ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:984 msgid "window functions are not allowed in check constraints" msgstr "検査制約の中ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:961 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in DEFAULT expressions" msgstr "DEFAULT式の中ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:964 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in index expressions" msgstr "インデックス式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:967 +#: parser/parse_agg.c:994 msgid "window functions are not allowed in statistics expressions" msgstr "統計情報式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:970 +#: parser/parse_agg.c:997 msgid "window functions are not allowed in index predicates" msgstr "インデックス述語ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:973 +#: parser/parse_agg.c:1000 msgid "window functions are not allowed in transform expressions" msgstr "変換式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:976 +#: parser/parse_agg.c:1003 msgid "window functions are not allowed in EXECUTE parameters" msgstr "EXECUTEパラメータではウィンドウ関数を使用できません" -#: parser/parse_agg.c:979 +#: parser/parse_agg.c:1006 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "トリガのWHEN条件ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:982 +#: parser/parse_agg.c:1009 msgid "window functions are not allowed in partition bound" msgstr "ウィンドウ関数はパーティション境界では使用できません" -#: parser/parse_agg.c:985 +#: parser/parse_agg.c:1012 msgid "window functions are not allowed in partition key expressions" msgstr "パーティションキー式ではウィンドウ関数は使用できません" -#: parser/parse_agg.c:988 +#: parser/parse_agg.c:1015 msgid "window functions are not allowed in CALL arguments" msgstr "CALLの引数ではウィンドウ関数は使用できません" -#: parser/parse_agg.c:991 +#: parser/parse_agg.c:1018 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "ウィンドウ関数は COPY FROM の WHERE 条件では使用できません" -#: parser/parse_agg.c:994 +#: parser/parse_agg.c:1021 msgid "window functions are not allowed in column generation expressions" msgstr "ウィンドウ関数はカラム生成式では使用できません" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:1017 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1044 parser/parse_clause.c:1971 #, c-format msgid "window functions are not allowed in %s" msgstr "%sの中ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1078 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "ウィンドウ\"%s\"は存在しません" -#: parser/parse_agg.c:1141 +#: parser/parse_agg.c:1168 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "グルーピングセットの数が多すぎます (最大4096)" -#: parser/parse_agg.c:1302 +#: parser/parse_agg.c:1329 #, c-format msgid "aggregate functions are not allowed in a recursive query's recursive term" msgstr "再帰問い合わせの再帰項では集約関数を使用できません" -#: parser/parse_agg.c:1525 +#: parser/parse_agg.c:1552 #, c-format 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:1528 +#: parser/parse_agg.c:1555 #, c-format msgid "Direct arguments of an ordered-set aggregate must use only grouped columns." msgstr "順序集合集約の直接引数はグルーピングされた列のみを使用しなければなりません。" -#: parser/parse_agg.c:1533 +#: parser/parse_agg.c:1560 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "外部問い合わせから副問い合わせがグループ化されていない列\"%s.%s\"を使用しています" -#: parser/parse_agg.c:1698 +#: parser/parse_agg.c:1725 #, c-format msgid "arguments to GROUPING must be grouping expressions of the associated query level" msgstr "GROUPINGの引数は関連するクエリレベルのグルーピング式でなければなりません" @@ -18381,25 +18371,25 @@ msgstr "非文字列型はWITH UNIQUE KEYS句とともには使用できませ msgid "Try returning a string type or bytea." msgstr "文字列型またはBYTEA型での返却を試してください。" -#: parser/parse_expr.c:4328 +#: parser/parse_expr.c:4331 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "%s()のRETURNING節ではFORMAT JSONは指定できません" -#: parser/parse_expr.c:4341 +#: parser/parse_expr.c:4344 #, c-format msgid "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" msgstr "WITH WRAPPERが使われてるときにはSQL/JSONのQUOTESの挙動は指定できまえん" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4355 parser/parse_expr.c:4384 parser/parse_expr.c:4415 parser/parse_expr.c:4441 parser/parse_expr.c:4467 parser/parse_jsontable.c:92 +#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 parser/parse_expr.c:4418 parser/parse_expr.c:4444 parser/parse_expr.c:4470 parser/parse_jsontable.c:92 #, c-format msgid "invalid %s behavior" msgstr "不正な%s挙動指定" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 +#: parser/parse_expr.c:4361 parser/parse_expr.c:4390 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for %s." msgstr "%2$sに対する%1$s句ではERROR, NULL, EMPTY ARRAY, EMPTY OBJECTまたはDEFAULT式のみが使用可能です。" @@ -18407,72 +18397,72 @@ msgstr "%2$sに対する%1$s句ではERROR, NULL, EMPTY ARRAY, EMPTY OBJECTま #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 parser/parse_expr.c:4451 parser/parse_expr.c:4477 +#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 parser/parse_expr.c:4426 parser/parse_expr.c:4454 parser/parse_expr.c:4480 #, c-format msgid "invalid %s behavior for column \"%s\"" msgstr "列\"%s\"に対する不正な%s挙動指定" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 +#: parser/parse_expr.c:4371 parser/parse_expr.c:4400 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for formatted columns." msgstr "フォーマット化対象列に対する%s句ではERROR, NULL, EMPTY ARRAY, EMPTY OBJECTまたはDEFAULT式のみが使用可能です。" -#: parser/parse_expr.c:4416 +#: parser/parse_expr.c:4419 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." msgstr "%2$sに対する%1$s句ではERROR, TRUE, FALSEまたはUNKNOWNのみが使用可能です。" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4426 +#: parser/parse_expr.c:4429 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." msgstr "EXIST列に対する%s句ではERROR, TRUE, FALSEまたはUNKNOWNのみが使用可能です。" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 +#: parser/parse_expr.c:4447 parser/parse_expr.c:4473 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." msgstr "%2$sに対する%1$s句ではERROR, NULLまたはDEFAULT式のみが使用可能です。" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 +#: parser/parse_expr.c:4457 parser/parse_expr.c:4483 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." msgstr "スカラー列に対する%s句ではERROR, NULLまたはDEFAULT式のみが使用可能です。" -#: parser/parse_expr.c:4510 +#: parser/parse_expr.c:4517 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "JSONパス式は型%2$sではなく%1$s型でなければなりません" -#: parser/parse_expr.c:4750 +#: parser/parse_expr.c:4757 #, c-format msgid "can only specify a constant, non-aggregate function, or operator expression for DEFAULT" msgstr "DEFAULTには定数、非集約関数、および演算子式のみ指定可能です" -#: parser/parse_expr.c:4755 +#: parser/parse_expr.c:4762 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "DEFAULT式は列参照を含むことができません" -#: parser/parse_expr.c:4760 +#: parser/parse_expr.c:4767 #, c-format msgid "DEFAULT expression must not return a set" msgstr "DEFAULT式は集合を返してはなりません" -#: parser/parse_expr.c:4775 +#: parser/parse_expr.c:4782 #, c-format msgid "collation of DEFAULT expression conflicts with RETURNING clause" msgstr "DEFAULT式の照合順序がRETURNING句と競合しています" -#: parser/parse_expr.c:4854 parser/parse_expr.c:4863 +#: parser/parse_expr.c:4861 parser/parse_expr.c:4870 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "型%sの挙動式の%sへの型変換はできません" -#: parser/parse_expr.c:4857 +#: parser/parse_expr.c:4864 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "式を%s型に明示的にキャストする必要があります。" @@ -19338,7 +19328,7 @@ msgstr "ルールのWHERE条件に他のリレーションへの参照を持た msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE actions" msgstr "ルールのWHERE条件はSELECT、INSERT、UPDATE、DELETE動作のみを持つことができます" -#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1187 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "条件付きのUNION/INTERSECT/EXCEPT文は実装されていません" @@ -19511,7 +19501,7 @@ msgstr "不正なUnicodeエスケープ文字" msgid "invalid Unicode escape value" msgstr "不正なUnicodeエスケープシーケンスの値" -#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6842 +#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6853 #, c-format msgid "invalid Unicode escape" msgstr "不正なUnicodeエスケープ" @@ -19521,7 +19511,7 @@ msgstr "不正なUnicodeエスケープ" msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "Unicodeエスケープは\\XXXXまたは\\+XXXXXXでなければなりません。" -#: parser/parser.c:523 scan.l:663 scan.l:679 scan.l:695 utils/adt/varlena.c:6867 +#: parser/parser.c:523 scan.l:663 scan.l:679 scan.l:695 utils/adt/varlena.c:6878 #, c-format msgid "invalid Unicode surrogate pair" msgstr "不正なUnicodeサロゲートペア" @@ -20843,7 +20833,7 @@ msgid "out of logical replication worker slots" msgstr "論理レプリケーションワーカースロットは全て使用中です" #. translator: %s is a GUC variable name -#: replication/logical/launcher.c:438 replication/logical/launcher.c:524 replication/slot.c:1635 replication/slot.c:1655 storage/lmgr/lock.c:1042 storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 storage/lmgr/predicate.c:3891 +#: replication/logical/launcher.c:438 replication/logical/launcher.c:524 replication/slot.c:1637 replication/slot.c:1657 storage/lmgr/lock.c:1042 storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 storage/lmgr/predicate.c:3891 #, c-format msgid "You might need to increase \"%s\"." msgstr "\"%s\"を大きくする必要があるかもしれません。" @@ -21218,8 +21208,8 @@ msgstr "パラメータの変更があったため、レプリケーションス #: replication/logical/slotsync.c:1181 #, c-format -msgid "replication slot synchronization worker is shutting down on receiving SIGINT" -msgstr "SIGINTを受信したためレプリケーションスロット同期ワーカーがシャットダウンします" +msgid "replication slot synchronization worker is shutting down because promotion is triggered" +msgstr "昇格がトリガーされたため、レプリケーションスロット同期ワーカーがシャットダウンします" #: replication/logical/slotsync.c:1306 #, c-format @@ -21706,7 +21696,7 @@ msgstr "レプリケーションスロット\"%s\"を変更できませんでし msgid "cannot enable failover for a replication slot on the standby" msgstr "スタンバイ上ではレプリケーションスロットのフェイルオーバーを有効にすることはできません" -#: replication/slot.c:1056 replication/slot.c:2187 replication/slot.c:2580 +#: replication/slot.c:1056 replication/slot.c:2195 replication/slot.c:2588 #, c-format msgid "could not remove directory \"%s\"" msgstr "ディレクトリ\"%s\"を削除できませんでした" @@ -21731,143 +21721,143 @@ msgstr "レプリケーションスロットを使用する権限がありませ msgid "Only roles with the %s attribute may use replication slots." msgstr "%s属性を持つロールのみがレプリケーションスロットを使用できます。" -#: replication/slot.c:1629 +#: replication/slot.c:1631 #, c-format msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by % bytes." msgstr[0] "このスロットのrestart_lsn %X/%Xは制限を%バイト超過しています。" -#: replication/slot.c:1640 +#: replication/slot.c:1642 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "このスロットはXID地平線%uと競合しました。" -#: replication/slot.c:1645 +#: replication/slot.c:1647 msgid "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the primary server." msgstr "論理デコードを行うためにはプライマリサーバー上で\"wal_level\" >= \"logical\" である必要があります。" #. translator: %s is a GUC variable name -#: replication/slot.c:1651 +#: replication/slot.c:1653 #, c-format msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." msgstr "このスロットのアイドル時間 %ld秒が、\"%s\"で設定された %d秒を超えています。" -#: replication/slot.c:1665 +#: replication/slot.c:1667 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "プロセス%dを終了してレプリケーションスロット\"%s\"を解放します" -#: replication/slot.c:1667 +#: replication/slot.c:1669 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "使用不能のレプリケーションスロット\"%s\"を無効化します" -#: replication/slot.c:2518 +#: replication/slot.c:2526 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "レプリケーションスロットファイル\"%1$s\"のマジックナンバーが不正です: %3$uのはずが%2$uでした" -#: replication/slot.c:2525 +#: replication/slot.c:2533 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "レプリケーションスロットファイル\"%s\"はサポート外のバージョン%uです" -#: replication/slot.c:2532 +#: replication/slot.c:2540 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "レプリケーションスロットファイル\"%s\"のサイズ%uは異常です" -#: replication/slot.c:2568 +#: replication/slot.c:2576 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "レプリケーションスロットファイル\"%s\"のチェックサムが一致しません: %uですが、%uであるべきです" -#: replication/slot.c:2604 +#: replication/slot.c:2612 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "論理レプリケーションスロット\"%s\"がありますが、\"wal_level\" < \"logical\" です" -#: replication/slot.c:2606 +#: replication/slot.c:2614 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "\"wal_level\"を\"logical\"もしくはそれより上位の設定にしてください。" -#: replication/slot.c:2618 +#: replication/slot.c:2626 #, c-format msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" msgstr "論理レプリケーションスロット\"%s\"がありますが、\"hot_standby\" = \"off\" です" -#: replication/slot.c:2620 +#: replication/slot.c:2628 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "\"hot_standby\" を \"on\" に変更してください。" -#: replication/slot.c:2625 +#: replication/slot.c:2633 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "物理レプリケーションスロット\"%s\"がありますが、\"wal_level\" < \"replica\" です" -#: replication/slot.c:2627 +#: replication/slot.c:2635 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "\"wal_level\"を\"replica\"もしくはそれより上位の設定にしてください。" -#: replication/slot.c:2674 +#: replication/slot.c:2682 #, c-format msgid "too many replication slots active before shutdown" msgstr "シャットダウン前のアクティブなレプリケーションスロットの数が多すぎます" -#: replication/slot.c:2675 +#: replication/slot.c:2683 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "\"max_replication_slots\"を増やして再度試してください" -#: replication/slot.c:2912 +#: replication/slot.c:2920 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "パラメータ\"%2$s\"で指定されているレプリケーションスロット\"%1$s\"は存在しません" -#: replication/slot.c:2914 replication/slot.c:2948 replication/slot.c:2963 +#: replication/slot.c:2922 replication/slot.c:2956 replication/slot.c:2971 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "論理レプリケーションはレプリケーションスロット”%s\"に対応するスタンバイを待っています。 " -#: replication/slot.c:2916 +#: replication/slot.c:2924 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "レプリケーションスロット\"%s\"を作成するか、パラメータ\"%s\"を修正してください。" -#: replication/slot.c:2926 +#: replication/slot.c:2934 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "パラメータ\"%2$s\"では論理レプリケーションスロット\"%1$s\"は指定できません" -#: replication/slot.c:2928 +#: replication/slot.c:2936 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "論理レプリケーションはレプリケーションスロット\"%s\"が修正されるのを待っています。" -#: replication/slot.c:2930 +#: replication/slot.c:2938 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "論理レプリケーションスロット\"%s\"をパラメータ\"%s\"から削除してください。" -#: replication/slot.c:2946 +#: replication/slot.c:2954 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" msgstr "パラメータ\"%2$s\"で指定された物理レプリケーションスロット\"%1$s\"は無効化されています" -#: replication/slot.c:2950 +#: replication/slot.c:2958 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "レプリケーションスロット\"%s\"を削除して再作成するか、パラメータ\"%s\"を修正してください。" -#: replication/slot.c:2961 +#: replication/slot.c:2969 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not have active_pid" msgstr "\"%2$s\"で指定されたレプリケーションスロット\"%1$s\"にはactive_pidがありません" -#: replication/slot.c:2965 +#: replication/slot.c:2973 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." msgstr "レプリケーションスロット\"%s\"に関連付けられているスタンバイを起動するか、パラメータ%sを修正してください。" @@ -22088,11 +22078,6 @@ msgstr "サーバーの履歴はタイムライン%uの%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:1151 -#, c-format -msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" -msgstr "CREATE_REPLICATION_SLOTのオプション\"%s\"に対する認識できない値: \"%s\"" - #. translator: %s is a CREATE_REPLICATION_SLOT statement #: replication/walsender.c:1257 #, c-format @@ -22354,280 +22339,280 @@ msgstr "ON SELECTルールの名前を変更することはできません" msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten" msgstr "WITH の問い合わせ名\"%s\"が、ルールのアクションと書き換えられようとしている問い合わせの両方に現れています" -#: rewrite/rewriteHandler.c:617 +#: rewrite/rewriteHandler.c:620 #, c-format msgid "INSERT ... SELECT rule actions are not supported for queries having data-modifying statements in WITH" msgstr "INSERT ... SELECTルールのアクションはWITHにデータ更新文を持つ問い合わせに対してはサポートされません" -#: rewrite/rewriteHandler.c:671 +#: rewrite/rewriteHandler.c:674 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "複数ルールではRETURNINGリストを持つことはできません" -#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 +#: rewrite/rewriteHandler.c:911 rewrite/rewriteHandler.c:950 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "列\"%s\"への非デフォルト値の挿入はできません" -#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 +#: rewrite/rewriteHandler.c:913 rewrite/rewriteHandler.c:979 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "列\"%s\"は GENERATED ALWAYS として定義されています。" -#: rewrite/rewriteHandler.c:912 +#: rewrite/rewriteHandler.c:915 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "OVERRIDING SYSTEM VALUE を指定することで挿入を強制できます。" -#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 +#: rewrite/rewriteHandler.c:977 rewrite/rewriteHandler.c:985 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "列\"%s\"はDEFAULTにのみ更新可能です" -#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 +#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "同じ列\"%s\"に複数の代入があります" -#: rewrite/rewriteHandler.c:1691 +#: rewrite/rewriteHandler.c:1694 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGEはルールを持つリレーションに対してはサポートされません。" -#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 +#: rewrite/rewriteHandler.c:1734 rewrite/rewriteHandler.c:3274 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "非システムのビュー\"%s\"へのアクセスは制限されています" -#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 +#: rewrite/rewriteHandler.c:2133 rewrite/rewriteHandler.c:4285 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "リレーション\"%s\"のルールで無限再帰を検出しました" -#: rewrite/rewriteHandler.c:2235 +#: rewrite/rewriteHandler.c:2238 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "リレーション\"%s\"のポリシで無限再帰を検出しました" -#: rewrite/rewriteHandler.c:2598 +#: rewrite/rewriteHandler.c:2601 msgid "Junk view columns are not updatable." msgstr "ジャンクビュー列は更新不可です。" -#: rewrite/rewriteHandler.c:2603 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that are not columns of their base relation are not updatable." msgstr "基底リレーションの列ではないビュー列は更新不可です。" -#: rewrite/rewriteHandler.c:2606 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that refer to system columns are not updatable." msgstr "システム列を参照するビュー列は更新不可です。" -#: rewrite/rewriteHandler.c:2609 +#: rewrite/rewriteHandler.c:2612 msgid "View columns that return whole-row references are not updatable." msgstr "行全体参照を返すビュー列は更新不可です。" -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing DISTINCT are not automatically updatable." msgstr "DISTINCTを含むビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2673 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing GROUP BY are not automatically updatable." msgstr "GROUP BYを含むビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2679 msgid "Views containing HAVING are not automatically updatable." msgstr "HAVINGを含むビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2679 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "UNION、INTERSECT、EXCEPTを含むビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2682 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing WITH are not automatically updatable." msgstr "WITHを含むビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2685 +#: rewrite/rewriteHandler.c:2688 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "LIMIT、OFFSETを含むビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2697 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return aggregate functions are not automatically updatable." msgstr "集約関数を返すビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2700 +#: rewrite/rewriteHandler.c:2703 msgid "Views that return window functions are not automatically updatable." msgstr "ウィンドウ関数を返すビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2703 +#: rewrite/rewriteHandler.c:2706 msgid "Views that return set-returning functions are not automatically updatable." msgstr "集合返却関数を返すビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 rewrite/rewriteHandler.c:2722 +#: rewrite/rewriteHandler.c:2713 rewrite/rewriteHandler.c:2717 rewrite/rewriteHandler.c:2725 msgid "Views that do not select from a single table or view are not automatically updatable." msgstr "単一のテーブルまたはビューからselectしていないビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2725 +#: rewrite/rewriteHandler.c:2728 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "TABLESAMPLEを含むビューは自動更新できません。" -#: rewrite/rewriteHandler.c:2749 +#: rewrite/rewriteHandler.c:2752 msgid "Views that have no updatable columns are not automatically updatable." msgstr "更新可能な列を持たないビューは自動更新できません。" -#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3133 rewrite/rewriteHandler.c:3168 #, c-format msgid "cannot insert into view \"%s\"" msgstr "ビュー\"%s\"へは挿入(INSERT)できません" -#: rewrite/rewriteHandler.c:3133 +#: rewrite/rewriteHandler.c:3136 #, 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ルールを作成してください。" -#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3141 rewrite/rewriteHandler.c:3177 #, c-format msgid "cannot update view \"%s\"" msgstr "ビュー\"%s\"は更新できません" -#: rewrite/rewriteHandler.c:3141 +#: rewrite/rewriteHandler.c:3144 #, 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ルールを作成してください。" -#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 +#: rewrite/rewriteHandler.c:3149 rewrite/rewriteHandler.c:3186 #, c-format msgid "cannot delete from view \"%s\"" msgstr "ビュー\"%s\"からは削除できません" -#: rewrite/rewriteHandler.c:3149 +#: rewrite/rewriteHandler.c:3152 #, 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ルールを作成してください。" -#: rewrite/rewriteHandler.c:3168 +#: rewrite/rewriteHandler.c:3171 #, c-format msgid "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT trigger." msgstr "MERGEを用いたビューへの挿入を可能にするには、INSTEAD OF INSERTトリガーを作成してください。" -#: rewrite/rewriteHandler.c:3177 +#: rewrite/rewriteHandler.c:3180 #, c-format msgid "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE trigger." msgstr "MERGEを用いたビューの更新を可能にするには、INSTEAD OF UPDATEトリガーを作成してください。" -#: rewrite/rewriteHandler.c:3186 +#: rewrite/rewriteHandler.c:3189 #, c-format msgid "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE trigger." msgstr "MERGEを用いたビューからの削除を可能にするためには、INSTEAD OF DELETEトリガーを作成してください。" -#: rewrite/rewriteHandler.c:3361 +#: rewrite/rewriteHandler.c:3364 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "ビュー\"%2$s\"の列\"%1$s\"への挿入はできません" -#: rewrite/rewriteHandler.c:3369 +#: rewrite/rewriteHandler.c:3372 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "ビュー\"%2$s\"の列\"%1$s\"は更新できません" -#: rewrite/rewriteHandler.c:3377 +#: rewrite/rewriteHandler.c:3380 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "ビュー\"%2$s\"の列\"%1$s\"への統合はできません" -#: rewrite/rewriteHandler.c:3405 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "cannot merge into view \"%s\"" msgstr "ビュー\"%s\"への統合はできません" -#: rewrite/rewriteHandler.c:3407 +#: rewrite/rewriteHandler.c:3410 #, c-format msgid "MERGE is not supported for views with INSTEAD OF triggers for some actions but not all." msgstr "MERGEはINSTEAD OFトリガーが全てではなく一部のアクションに対してのみ設定されてるビューではサポートされません。" -#: rewrite/rewriteHandler.c:3408 +#: rewrite/rewriteHandler.c:3411 #, c-format msgid "To enable merging into the view, either provide a full set of INSTEAD OF triggers or drop the existing INSTEAD OF triggers." msgstr "ビューへの統合を可能にするためには、完全なINSTEAD OF INSERTトリガーを作成するか、または既存のINSTEAD OFトリガーを削除してください。" -#: rewrite/rewriteHandler.c:3923 +#: rewrite/rewriteHandler.c:3942 #, c-format msgid "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in WITH" msgstr "DO INSTEAD NOTIFYルールはWITH内のデータ更新文に対してはサポートされません" -#: rewrite/rewriteHandler.c:3934 +#: rewrite/rewriteHandler.c:3953 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH" msgstr "WITH にデータを変更するステートメントがある場合は DO INSTEAD NOTHING ルールはサポートされません" -#: rewrite/rewriteHandler.c:3948 +#: rewrite/rewriteHandler.c:3967 #, c-format msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "WITH にデータを変更するステートメントがある場合は、条件付き DO INSTEAD ルールはサポートされません" -#: rewrite/rewriteHandler.c:3952 +#: rewrite/rewriteHandler.c:3971 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "WITH にデータを変更するステートメントがある場合は DO ALSO ルールはサポートされません" -#: rewrite/rewriteHandler.c:3957 +#: rewrite/rewriteHandler.c:3976 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "WITH にデータを変更するステートメントがある場合はマルチステートメントの DO INSTEAD ルールはサポートされません" -#: rewrite/rewriteHandler.c:4217 +#: rewrite/rewriteHandler.c:4237 msgid "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "条件付きDO INSTEADルールを持つビューは自動更新できません。" -#: rewrite/rewriteHandler.c:4314 +#: rewrite/rewriteHandler.c:4335 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "リレーション\"%s\"へのINSERT RETURNINGを行うことはできません" -#: rewrite/rewriteHandler.c:4316 +#: rewrite/rewriteHandler.c:4337 #, c-format msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." msgstr "RETURNING句を持つ無条件のON INSERT DO INSTEADルールが必要です。" -#: rewrite/rewriteHandler.c:4321 +#: rewrite/rewriteHandler.c:4342 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "リレーション\"%s\"へのUPDATE RETURNINGを行うことはできません" -#: rewrite/rewriteHandler.c:4323 +#: rewrite/rewriteHandler.c:4344 #, c-format msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." msgstr "RETURNING句を持つ無条件のON UPDATE DO INSTEADルールが必要です。" -#: rewrite/rewriteHandler.c:4328 +#: rewrite/rewriteHandler.c:4349 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "リレーション\"%s\"へのDELETE RETURNINGを行うことはできません" -#: rewrite/rewriteHandler.c:4330 +#: rewrite/rewriteHandler.c:4351 #, c-format msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." msgstr "RETURNING句を持つ無条件のON DELETE DO INSTEADルールが必要です。" -#: rewrite/rewriteHandler.c:4348 +#: rewrite/rewriteHandler.c:4369 #, c-format msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules" msgstr "ON CONFLICT句を伴うINSERTは、INSERTまたはUPDATEルールを持つテーブルでは使えません" -#: rewrite/rewriteHandler.c:4405 +#: rewrite/rewriteHandler.c:4426 #, c-format msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries" msgstr "複数問い合わせに対するルールにより書き換えられた問い合わせでは WITH を使用できません" -#: rewrite/rewriteManip.c:1178 +#: rewrite/rewriteManip.c:1175 #, c-format msgid "conditional utility statements are not implemented" msgstr "条件付きのユーティリティ文は実装されていません" -#: rewrite/rewriteManip.c:1523 +#: rewrite/rewriteManip.c:1520 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "ビューに対するWHERE CURRENT OFは実装されていません" -#: rewrite/rewriteManip.c:1926 +#: rewrite/rewriteManip.c:1923 #, 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コマンドでの複数列代入の一部となる列を参照することはできません" @@ -23320,25 +23305,25 @@ msgstr "共有メモリセグメント\"%s\"をクローズできませんでし msgid "could not duplicate handle for \"%s\": %m" msgstr "\"%s\"のハンドルの複製ができませんでした: %m" -#: storage/ipc/dsm_registry.c:142 +#: storage/ipc/dsm_registry.c:144 #, c-format msgid "DSM segment name cannot be empty" msgstr "DSMセグメント名は空文字列にはできません" -#: storage/ipc/dsm_registry.c:146 +#: storage/ipc/dsm_registry.c:148 #, c-format msgid "DSM segment name too long" msgstr "DSMセグメント名が長すぎます" -#: storage/ipc/dsm_registry.c:150 +#: storage/ipc/dsm_registry.c:152 #, c-format msgid "DSM segment size must be nonzero" msgstr "DSMセグメントサイズは0以外の値である必要があります" -#: storage/ipc/dsm_registry.c:176 +#: storage/ipc/dsm_registry.c:168 #, c-format msgid "requested DSM segment size does not match size of existing segment" -msgstr "要求されたDSMセグメントサイズが既存のセグメントのサイズと異なっています" +msgstr "要求されたDSMセグメントのサイズが既存のセグメントのサイズと一致しません" #: storage/ipc/procarray.c:488 storage/lmgr/proc.c:457 tcop/backend_startup.c:343 #, c-format @@ -24926,7 +24911,7 @@ msgid "input data type is not an array" msgstr "入力データ型は配列ではありません" #: utils/adt/array_userfuncs.c:167 utils/adt/array_userfuncs.c:249 utils/adt/float.c:1229 utils/adt/float.c:1303 utils/adt/float.c:4107 utils/adt/float.c:4145 utils/adt/int.c:778 utils/adt/int.c:800 utils/adt/int.c:814 utils/adt/int.c:828 utils/adt/int.c:859 utils/adt/int.c:880 utils/adt/int.c:997 utils/adt/int.c:1011 utils/adt/int.c:1025 utils/adt/int.c:1058 utils/adt/int.c:1072 utils/adt/int.c:1086 utils/adt/int.c:1117 utils/adt/int.c:1199 utils/adt/int.c:1263 -#: utils/adt/int.c:1331 utils/adt/int.c:1337 utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 utils/adt/varlena.c:3184 utils/adt/varlena.c:4118 +#: utils/adt/int.c:1331 utils/adt/int.c:1337 utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 utils/adt/varlena.c:3195 utils/adt/varlena.c:4129 #, c-format msgid "integer out of range" msgstr "integerの範囲外です" @@ -25543,7 +25528,7 @@ msgstr "型realでは\"%s\"は範囲外です" msgid "\"%s\" is out of range for type double precision" msgstr "型double precisionでは\"%s\"は範囲外です" -#: utils/adt/float.c:1254 utils/adt/float.c:1328 utils/adt/int.c:355 utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 utils/adt/varlena.c:4093 +#: utils/adt/float.c:1254 utils/adt/float.c:1328 utils/adt/int.c:355 utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 utils/adt/varlena.c:4104 #, c-format msgid "smallint out of range" msgstr "smallintの範囲外です" @@ -25944,7 +25929,7 @@ msgid "step size cannot equal zero" msgstr "ステップ数をゼロにすることはできません" #: utils/adt/int8.c:448 utils/adt/int8.c:471 utils/adt/int8.c:485 utils/adt/int8.c:499 utils/adt/int8.c:530 utils/adt/int8.c:554 utils/adt/int8.c:636 utils/adt/int8.c:704 utils/adt/int8.c:710 utils/adt/int8.c:736 utils/adt/int8.c:750 utils/adt/int8.c:774 utils/adt/int8.c:787 utils/adt/int8.c:899 utils/adt/int8.c:913 utils/adt/int8.c:927 utils/adt/int8.c:958 utils/adt/int8.c:980 utils/adt/int8.c:994 utils/adt/int8.c:1008 utils/adt/int8.c:1041 utils/adt/int8.c:1055 -#: utils/adt/int8.c:1069 utils/adt/int8.c:1100 utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 utils/adt/varbit.c:1676 utils/adt/varlena.c:4143 +#: utils/adt/int8.c:1069 utils/adt/int8.c:1100 utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 utils/adt/varbit.c:1676 utils/adt/varlena.c:4154 #, c-format msgid "bigint out of range" msgstr "bigintの範囲外です" @@ -27169,7 +27154,7 @@ msgstr "カンマが多すぎます" msgid "Junk after right parenthesis or bracket." msgstr "右括弧または右角括弧の後にごみがあります" -#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4486 #, c-format msgid "regular expression failed: %s" msgstr "正規表現が失敗しました: %s" @@ -27230,7 +27215,7 @@ msgstr "引数が多すぎます" msgid "Provide two argument types for operator." msgstr "演算子では2つの引数型を指定してください" -#: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 utils/adt/regproc.c:1815 utils/adt/varlena.c:3481 utils/adt/varlena.c:3486 +#: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 utils/adt/regproc.c:1815 utils/adt/varlena.c:3492 utils/adt/varlena.c:3497 #, c-format msgid "invalid name syntax" msgstr "不正な名前の構文" @@ -27766,7 +27751,7 @@ msgstr "ビット列の外部値の不正な長さ" msgid "bit string too long for type bit varying(%d)" msgstr "ビット列は型bit varying(%d)には長すぎます" -#: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3102 utils/adt/varlena.c:3180 +#: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3113 utils/adt/varlena.c:3191 #, c-format msgid "negative substring length not allowed" msgstr "負の長さのsubstringは許可されません" @@ -27791,7 +27776,7 @@ msgstr "サイズが異なるビット列のXORはできません" msgid "bit index %d out of valid range (0..%d)" msgstr "ビットのインデックス%dが有効範囲0..%dの間にありません" -#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3395 #, c-format msgid "new bit must be 0 or 1" msgstr "新しいビットは0か1でなければなりません" @@ -27806,92 +27791,92 @@ msgstr "値は型character(%d)としては長すぎます" msgid "value too long for type character varying(%d)" msgstr "値は型character varying(%d)としては長すぎます" -#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1602 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "文字列比較で使用する照合順序を特定できませんでした" -#: utils/adt/varlena.c:1864 +#: utils/adt/varlena.c:1875 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "非決定的照合順序は部分文字列探索ではサポートされません" -#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 +#: utils/adt/varlena.c:3279 utils/adt/varlena.c:3346 #, c-format msgid "index %d out of valid range, 0..%d" msgstr "インデックス%dは有効範囲0..%dの間にありません" -#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#: utils/adt/varlena.c:3310 utils/adt/varlena.c:3382 #, c-format msgid "index % out of valid range, 0..%" msgstr "インデックス%は有効範囲0..%の間にありません" -#: utils/adt/varlena.c:4587 +#: utils/adt/varlena.c:4598 #, c-format msgid "field position must not be zero" msgstr "フィールド位置には0は指定できません" -#: utils/adt/varlena.c:5832 +#: utils/adt/varlena.c:5843 #, c-format msgid "unterminated format() type specifier" msgstr "終端されていないformat()型指定子" -#: utils/adt/varlena.c:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 +#: utils/adt/varlena.c:5844 utils/adt/varlena.c:5978 utils/adt/varlena.c:6099 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "一つの\"%%\"には\"%%%%\"を使ってください。" -#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 +#: utils/adt/varlena.c:5976 utils/adt/varlena.c:6097 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "認識できない format() の型指定子\"%.*s\"" -#: utils/adt/varlena.c:5978 utils/adt/varlena.c:6035 +#: utils/adt/varlena.c:5989 utils/adt/varlena.c:6046 #, c-format msgid "too few arguments for format()" msgstr "format()の引数が少なすぎます" -#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 +#: utils/adt/varlena.c:6142 utils/adt/varlena.c:6324 #, c-format msgid "number is out of range" msgstr "数値が範囲外です" -#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 +#: utils/adt/varlena.c:6205 utils/adt/varlena.c:6233 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "書式は引数0を指定していますが、引数が1から始まっています" -#: utils/adt/varlena.c:6215 +#: utils/adt/varlena.c:6226 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "width引数の位置は\"$\"で終わらなければなりません" -#: utils/adt/varlena.c:6260 +#: utils/adt/varlena.c:6271 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "NULLはSQL識別子として書式付けできません" -#: utils/adt/varlena.c:6468 +#: utils/adt/varlena.c:6479 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "Unicode正規化はサーバーエンコーディングがUTF-8の場合にのみ実行されます" -#: utils/adt/varlena.c:6481 +#: utils/adt/varlena.c:6492 #, c-format msgid "invalid normalization form: %s" msgstr "不正な正規化形式: %s" -#: utils/adt/varlena.c:6526 +#: utils/adt/varlena.c:6537 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "Unicodeカテゴリー分類はサーバーエンコーディングがUTF-8の場合にのみ実行可能です" -#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 +#: utils/adt/varlena.c:6754 utils/adt/varlena.c:6789 utils/adt/varlena.c:6824 #, c-format msgid "invalid Unicode code point: %04X" msgstr "不正なUnicodeコードポイント: %04X" -#: utils/adt/varlena.c:6843 +#: utils/adt/varlena.c:6854 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "Unicodeエスケープは \\XXXX、\\+XXXXXX、\\uXXXX または \\UXXXXXXXX でなければなりません。" @@ -31687,6 +31672,9 @@ msgstr "異なるデータベースからのスナップショットを読み込 #~ msgid "Cannot set STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM or STATISTIC_KIND_BOUNDS_HISTOGRAM." #~ msgstr "STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM および STATISTIC_KIND_BOUNDS_HISTOGRAM は設定できません。" +#~ msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" +#~ msgstr "EXPLAINのオプションANALYZEとGENERIC_PLANは同時に使用できません" + #~ msgid "Replication slot \"%s\" does not exist." #~ msgstr "レプリケーションスロット\"%s\"は存在しません。" @@ -31699,5 +31687,38 @@ msgstr "異なるデータベースからのスナップショットを読み込 #~ msgid "cannot specify both attname and attnum" #~ msgstr "attname と attnum の両方を指定することはできません" +#~ msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" +#~ msgstr "GRANT/REVOKE ON LARGE OBJECTS を使っている時には IN SCHEMA 句は指定できません" + #~ msgid "reltuples cannot be < -1.0" #~ msgstr "reltuplesは-1.0未満にはできません" + +#~ msgid "replication slot synchronization worker is shutting down on receiving SIGINT" +#~ msgstr "SIGINTを受信したためレプリケーションスロット同期ワーカーがシャットダウンします" + +#~ msgid "requested DSM segment \"%s\" failed initialization" +#~ msgstr "要求されたDSMセグメント\"%s\"の初期化に失敗しました" + +#~ msgid "unrecognized ANALYZE option \"%s\"" +#~ msgstr "ANALYZEオプション\"%s\"が認識できません" + +#~ msgid "unrecognized CLUSTER option \"%s\"" +#~ msgstr "認識できないCLUSTERオプション \"%s\"" + +#~ msgid "unrecognized DROP DATABASE option \"%s\"" +#~ msgstr "DROP DATABASEのオプション\"%s\"が認識できません" + +#~ msgid "unrecognized EXPLAIN option \"%s\"" +#~ msgstr "EXPLAIN オプション\"%s\"が認識できません" + +#~ msgid "unrecognized REINDEX option \"%s\"" +#~ msgstr "認識できないREINDEXのオプション \"%s\"" + +#~ msgid "unrecognized VACUUM option \"%s\"" +#~ msgstr "認識できないVACUUMオプション \"%s\"" + +#~ msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" +#~ msgstr "CREATE_REPLICATION_SLOTのオプション\"%s\"に対する認識できない値: \"%s\"" + +#~ msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" +#~ msgstr "EXPLAIN オプション\"%s\"が認識できない値です: \"%s\"" diff --git a/src/backend/po/ka.po b/src/backend/po/ka.po index 0787988180b..163f4f488f8 100644 --- a/src/backend/po/ka.po +++ b/src/backend/po/ka.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: postgres (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-17 20:13+0000\n" -"PO-Revision-Date: 2025-08-18 18:54+0200\n" +"POT-Creation-Date: 2026-01-16 13:43+0000\n" +"PO-Revision-Date: 2026-01-17 03:41+0100\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.6\n" +"X-Generator: Poedit 3.8\n" #: ../common/binaryheap.c:121 ../common/binaryheap.c:159 #, c-format @@ -76,24 +76,24 @@ msgstr "შეკუმშვის ალგორითმს \"%s\" long-dist msgid "not recorded" msgstr "ჩაწერილი არაა" -#: ../common/controldata_utils.c:93 ../common/controldata_utils.c:97 commands/copyfrom.c:1879 commands/extension.c:3807 utils/adt/genfile.c:123 utils/time/snapmgr.c:1437 +#: ../common/controldata_utils.c:93 ../common/controldata_utils.c:97 commands/copyfrom.c:1879 commands/extension.c:3831 utils/adt/genfile.c:123 utils/time/snapmgr.c:1448 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "ფაილის (%s) გახსნის შეცდომა: %m" -#: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 access/transam/timeline.c:143 access/transam/timeline.c:362 access/transam/twophase.c:1353 access/transam/xlog.c:3612 access/transam/xlog.c:4503 access/transam/xlogrecovery.c:1246 access/transam/xlogrecovery.c:1344 access/transam/xlogrecovery.c:1381 access/transam/xlogrecovery.c:1448 backup/basebackup.c:2128 backup/walsummary.c:283 commands/extension.c:3817 libpq/hba.c:769 -#: replication/logical/origin.c:768 replication/logical/origin.c:804 replication/logical/reorderbuffer.c:5366 replication/logical/snapbuild.c:1951 replication/slot.c:2485 replication/slot.c:2526 replication/walsender.c:629 storage/file/buffile.c:470 storage/file/copydir.c:201 utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 +#: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 access/transam/timeline.c:143 access/transam/timeline.c:362 access/transam/twophase.c:1353 access/transam/xlog.c:3479 access/transam/xlog.c:4370 access/transam/xlogrecovery.c:1257 access/transam/xlogrecovery.c:1355 access/transam/xlogrecovery.c:1392 access/transam/xlogrecovery.c:1459 backup/basebackup.c:2128 backup/walsummary.c:283 commands/extension.c:3841 libpq/hba.c:769 +#: replication/logical/origin.c:768 replication/logical/origin.c:804 replication/logical/reorderbuffer.c:5366 replication/logical/snapbuild.c:1951 replication/slot.c:2546 replication/slot.c:2587 replication/walsender.c:643 storage/file/buffile.c:470 storage/file/copydir.c:201 utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 #, c-format msgid "could not read file \"%s\": %m" msgstr "ფაილის (%s) წაკითხვის შეცდომა: %m" -#: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 access/transam/xlog.c:3617 access/transam/xlog.c:4508 replication/logical/origin.c:773 replication/logical/origin.c:812 replication/logical/snapbuild.c:1956 replication/slot.c:2489 replication/slot.c:2530 replication/walsender.c:634 utils/cache/relmapper.c:833 +#: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 access/transam/xlog.c:3484 access/transam/xlog.c:4375 replication/logical/origin.c:773 replication/logical/origin.c:812 replication/logical/snapbuild.c:1956 replication/slot.c:2550 replication/slot.c:2591 replication/walsender.c:648 utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" msgstr "\"%s\"-ის წაკითხვის შეცდომა: წაკითხულია %d %zu-დან" -#: ../common/controldata_utils.c:128 ../common/controldata_utils.c:132 ../common/controldata_utils.c:277 ../common/controldata_utils.c:280 access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 access/transam/timeline.c:392 access/transam/timeline.c:438 access/transam/timeline.c:512 access/transam/twophase.c:1365 access/transam/twophase.c:1783 access/transam/xlog.c:3458 access/transam/xlog.c:3652 access/transam/xlog.c:3657 access/transam/xlog.c:3793 -#: access/transam/xlog.c:4473 access/transam/xlog.c:5449 commands/copyfrom.c:1929 commands/copyto.c:598 libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 replication/logical/origin.c:706 replication/logical/origin.c:845 replication/logical/reorderbuffer.c:5418 replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 replication/slot.c:2373 replication/slot.c:2537 replication/walsender.c:644 storage/file/copydir.c:224 storage/file/copydir.c:229 +#: ../common/controldata_utils.c:128 ../common/controldata_utils.c:132 ../common/controldata_utils.c:277 ../common/controldata_utils.c:280 access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 access/transam/timeline.c:392 access/transam/timeline.c:438 access/transam/timeline.c:512 access/transam/twophase.c:1365 access/transam/twophase.c:1783 access/transam/xlog.c:3325 access/transam/xlog.c:3519 access/transam/xlog.c:3524 access/transam/xlog.c:3660 +#: access/transam/xlog.c:4340 access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 replication/logical/origin.c:706 replication/logical/origin.c:845 replication/logical/reorderbuffer.c:5418 replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 replication/slot.c:2432 replication/slot.c:2598 replication/walsender.c:658 storage/file/copydir.c:224 storage/file/copydir.c:229 #: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:825 storage/file/fd.c:3815 storage/file/fd.c:3921 utils/cache/relmapper.c:841 utils/cache/relmapper.c:956 #, c-format msgid "could not close file \"%s\": %m" @@ -115,28 +115,29 @@ msgstr "" "ბაიტების მიმდევრობა შესაძლოა არ ემთხვეოდეს ამ პროგრამის მიერ გამოყენებულს. ამ შემთხვევაში ქვემოთ \n" "მოცემული შედეგები არასწორი იქნება და PostgreSQL ეს აგება ამ მონაცემთა საქაღალდესთან შეუთავსებელი იქნება." -#: ../common/controldata_utils.c:225 ../common/controldata_utils.c:230 ../common/file_utils.c:69 ../common/file_utils.c:370 ../common/file_utils.c:428 ../common/file_utils.c:502 access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 access/transam/timeline.c:251 access/transam/timeline.c:348 access/transam/twophase.c:1309 access/transam/xlog.c:3348 access/transam/xlog.c:3528 access/transam/xlog.c:3567 access/transam/xlog.c:3760 access/transam/xlog.c:4493 -#: access/transam/xlogrecovery.c:4285 access/transam/xlogrecovery.c:4386 access/transam/xlogutils.c:825 backup/basebackup.c:549 backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 postmaster/syslogger.c:1512 replication/logical/origin.c:758 replication/logical/reorderbuffer.c:4019 replication/logical/reorderbuffer.c:4573 replication/logical/reorderbuffer.c:5346 replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 -#: replication/slot.c:2457 replication/walsender.c:602 replication/walsender.c:3080 storage/file/copydir.c:167 storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 utils/error/elog.c:2132 utils/init/miscinit.c:1586 utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 utils/misc/guc.c:4829 +#: ../common/controldata_utils.c:225 ../common/controldata_utils.c:230 ../common/file_utils.c:69 ../common/file_utils.c:370 ../common/file_utils.c:428 ../common/file_utils.c:502 access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 access/transam/timeline.c:251 access/transam/timeline.c:348 access/transam/twophase.c:1309 access/transam/xlog.c:3215 access/transam/xlog.c:3395 access/transam/xlog.c:3434 access/transam/xlog.c:3627 access/transam/xlog.c:4360 +#: access/transam/xlogrecovery.c:4307 access/transam/xlogrecovery.c:4408 access/transam/xlogutils.c:825 backup/basebackup.c:549 backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 postmaster/syslogger.c:1512 replication/logical/origin.c:758 replication/logical/reorderbuffer.c:4019 replication/logical/reorderbuffer.c:4573 replication/logical/reorderbuffer.c:5346 replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 +#: replication/slot.c:2518 replication/walsender.c:616 replication/walsender.c:3094 storage/file/copydir.c:167 storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 utils/error/elog.c:2132 utils/init/miscinit.c:1586 utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 utils/misc/guc.c:4829 #, c-format msgid "could not open file \"%s\": %m" msgstr "ფაილის (%s) გახსნის შეცდომა: %m" -#: ../common/controldata_utils.c:246 ../common/controldata_utils.c:249 access/transam/twophase.c:1756 access/transam/twophase.c:1765 access/transam/xlog.c:9464 access/transam/xlogfuncs.c:699 backup/basebackup_server.c:173 backup/basebackup_server.c:266 backup/walsummary.c:304 postmaster/postmaster.c:4105 postmaster/syslogger.c:1523 postmaster/syslogger.c:1536 postmaster/syslogger.c:1549 utils/cache/relmapper.c:947 +#: ../common/controldata_utils.c:246 ../common/controldata_utils.c:249 access/transam/twophase.c:1756 access/transam/twophase.c:1765 access/transam/xlog.c:9338 access/transam/xlogfuncs.c:699 backup/basebackup_server.c:173 backup/basebackup_server.c:266 backup/walsummary.c:304 postmaster/postmaster.c:4105 postmaster/syslogger.c:1523 postmaster/syslogger.c:1536 postmaster/syslogger.c:1549 utils/cache/relmapper.c:947 #, c-format msgid "could not write file \"%s\": %m" msgstr "ფაილში (%s) ჩაწერის შეცდომა: %m" -#: ../common/controldata_utils.c:263 ../common/controldata_utils.c:268 ../common/file_utils.c:440 ../common/file_utils.c:510 access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 access/transam/timeline.c:506 access/transam/twophase.c:1777 access/transam/xlog.c:3448 access/transam/xlog.c:3646 access/transam/xlog.c:4466 access/transam/xlog.c:8850 access/transam/xlog.c:8894 -#: backup/basebackup_server.c:207 commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 replication/slot.c:2359 replication/slot.c:2467 storage/file/fd.c:817 storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 storage/sync/sync.c:446 utils/misc/guc.c:4527 +#: ../common/controldata_utils.c:263 ../common/controldata_utils.c:268 ../common/file_utils.c:440 ../common/file_utils.c:510 access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 access/transam/timeline.c:506 access/transam/twophase.c:1777 access/transam/xlog.c:3315 access/transam/xlog.c:3513 access/transam/xlog.c:4333 access/transam/xlog.c:8724 access/transam/xlog.c:8768 +#: backup/basebackup_server.c:207 commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 replication/slot.c:2416 replication/slot.c:2528 storage/file/fd.c:817 storage/file/fd.c:3913 storage/smgr/md.c:1458 storage/smgr/md.c:1518 storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "ფაილის (%s) fsync-ის შეცდომა: %m" #: ../common/cryptohash.c:261 ../common/cryptohash_openssl.c:158 ../common/cryptohash_openssl.c:356 ../common/exec.c:543 ../common/exec.c:588 ../common/exec.c:680 ../common/hmac.c:309 ../common/hmac.c:325 ../common/hmac_openssl.c:151 ../common/hmac_openssl.c:339 ../common/jsonapi.c:2410 ../common/md5_common.c:156 ../common/parse_manifest.c:157 ../common/parse_manifest.c:852 ../common/psprintf.c:140 ../common/scram-common.c:268 ../port/path.c:829 ../port/path.c:866 -#: ../port/path.c:883 access/transam/twophase.c:1418 access/transam/xlogrecovery.c:570 lib/dshash.c:253 libpq/auth.c:1353 libpq/auth.c:1397 libpq/auth.c:1959 libpq/be-secure-gssapi.c:537 libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 postmaster/bgworker.c:1023 postmaster/postmaster.c:3575 postmaster/walsummarizer.c:938 replication/libpqwalreceiver/libpqwalreceiver.c:351 replication/logical/logical.c:212 replication/walsender.c:811 -#: storage/buffer/localbuf.c:745 storage/file/fd.c:909 storage/file/fd.c:1444 storage/file/fd.c:1605 storage/file/fd.c:2589 storage/ipc/procarray.c:1465 storage/ipc/procarray.c:2217 storage/ipc/procarray.c:2224 storage/ipc/procarray.c:2727 storage/ipc/procarray.c:3436 utils/adt/pg_locale.c:510 utils/adt/pg_locale.c:584 utils/adt/pg_locale_icu.c:358 utils/adt/pg_locale_libc.c:207 utils/adt/pg_locale_libc.c:302 utils/adt/pg_locale_libc.c:390 utils/fmgr/dfmgr.c:227 -#: utils/hash/dynahash.c:517 utils/hash/dynahash.c:617 utils/hash/dynahash.c:1100 utils/mb/mbutils.c:402 utils/mb/mbutils.c:430 utils/mb/mbutils.c:815 utils/mb/mbutils.c:842 utils/misc/guc.c:647 utils/misc/guc.c:672 utils/misc/guc.c:1060 utils/misc/guc.c:4505 utils/misc/tzparser.c:479 utils/mmgr/aset.c:451 utils/mmgr/bump.c:183 utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 utils/mmgr/dsa.c:810 utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1159 utils/mmgr/slab.c:370 +#: ../port/path.c:883 access/transam/twophase.c:1418 access/transam/xlogrecovery.c:571 lib/dshash.c:253 libpq/auth.c:1353 libpq/auth.c:1397 libpq/auth.c:1959 libpq/be-secure-gssapi.c:537 libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 postmaster/bgworker.c:1023 postmaster/postmaster.c:3575 postmaster/walsummarizer.c:938 replication/libpqwalreceiver/libpqwalreceiver.c:364 replication/logical/logical.c:212 replication/walsender.c:825 +#: storage/buffer/localbuf.c:745 storage/file/fd.c:909 storage/file/fd.c:1444 storage/file/fd.c:1605 storage/file/fd.c:2589 storage/ipc/procarray.c:1465 storage/ipc/procarray.c:2217 storage/ipc/procarray.c:2224 storage/ipc/procarray.c:2727 storage/ipc/procarray.c:3436 utils/activity/pgstat_shmem.c:535 utils/adt/pg_locale.c:517 utils/adt/pg_locale.c:591 utils/adt/pg_locale_icu.c:358 utils/adt/pg_locale_libc.c:207 utils/adt/pg_locale_libc.c:302 +#: utils/adt/pg_locale_libc.c:390 utils/fmgr/dfmgr.c:234 utils/hash/dynahash.c:517 utils/hash/dynahash.c:617 utils/hash/dynahash.c:1100 utils/mb/mbutils.c:402 utils/mb/mbutils.c:430 utils/mb/mbutils.c:815 utils/mb/mbutils.c:842 utils/misc/guc.c:647 utils/misc/guc.c:672 utils/misc/guc.c:1060 utils/misc/guc.c:4505 utils/misc/tzparser.c:479 utils/mmgr/aset.c:451 utils/mmgr/bump.c:183 utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 utils/mmgr/dsa.c:810 +#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1162 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "არასაკმარისი მეხსიერება" @@ -188,7 +189,7 @@ msgstr "ბრძანებიდან \"%s\" წაკითხვის შ msgid "no data was returned by command \"%s\"" msgstr "ბრძანებამ \"%s\" მონაცემები არ დააბრუნა" -#: ../common/exec.c:405 libpq/pqcomm.c:193 storage/ipc/waiteventset.c:782 storage/ipc/waiteventset.c:962 storage/ipc/waiteventset.c:1202 storage/ipc/waiteventset.c:1364 storage/ipc/waiteventset.c:1490 +#: ../common/exec.c:405 libpq/pqcomm.c:193 storage/ipc/waiteventset.c:783 storage/ipc/waiteventset.c:963 storage/ipc/waiteventset.c:1203 storage/ipc/waiteventset.c:1365 storage/ipc/waiteventset.c:1491 #, c-format msgid "%s() failed: %m" msgstr "%s()-ის შეცდომა: %m" @@ -208,7 +209,7 @@ msgstr "ნულოვანი მაჩვენებლის დუბლ msgid "could not synchronize file system for file \"%s\": %m" msgstr "შეუძლებელია ფაილური სისტემის სინქრონიზაცია ფაილისთვის \"%s\": %m" -#: ../common/file_utils.c:123 ../common/file_utils.c:588 ../common/file_utils.c:592 access/transam/twophase.c:1321 access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:235 backup/basebackup.c:357 backup/basebackup.c:555 backup/basebackup.c:626 backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1889 commands/copyto.c:979 commands/extension.c:3796 commands/tablespace.c:804 commands/tablespace.c:893 postmaster/pgarch.c:682 +#: ../common/file_utils.c:123 ../common/file_utils.c:588 ../common/file_utils.c:592 access/transam/twophase.c:1321 access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:235 backup/basebackup.c:357 backup/basebackup.c:555 backup/basebackup.c:626 backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1889 commands/copyto.c:979 commands/extension.c:3820 commands/tablespace.c:804 commands/tablespace.c:893 postmaster/pgarch.c:682 #: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 storage/file/fd.c:1969 storage/file/fd.c:2057 storage/file/fd.c:3626 utils/adt/dbsize.c:105 utils/adt/dbsize.c:266 utils/adt/dbsize.c:355 utils/adt/genfile.c:437 utils/adt/genfile.c:612 utils/adt/misc.c:340 #, c-format msgid "could not stat file \"%s\": %m" @@ -229,7 +230,7 @@ msgstr "საქაღალდის (%s) გახსნის შეცდ msgid "could not read directory \"%s\": %m" msgstr "საქაღალდის (%s) წაკითხვის შეცდომა: %m" -#: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 postmaster/pgarch.c:836 postmaster/syslogger.c:1560 replication/logical/snapbuild.c:1708 replication/slot.c:988 replication/slot.c:2245 replication/slot.c:2387 storage/file/fd.c:835 utils/time/snapmgr.c:1262 +#: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 postmaster/pgarch.c:836 postmaster/syslogger.c:1560 replication/logical/snapbuild.c:1708 replication/slot.c:1027 replication/slot.c:2299 replication/slot.c:2448 storage/file/fd.c:835 utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "გადარქმევის შეცდომა %s - %s: %m" @@ -578,8 +579,8 @@ msgstr "შეზღუდულ კოდის ხელახლა შეს msgid "could not get exit code from subprocess: error code %lu" msgstr "ქვეპროცესიდან გასასვლელი კოდი ვერ მივიღე: შეცდომის კოდი %lu" -#: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 replication/slot.c:2441 storage/file/fd.c:875 storage/file/fd.c:3440 storage/file/fd.c:3502 -#: storage/file/reinit.c:261 storage/ipc/dsm.c:343 storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 utils/time/snapmgr.c:1598 +#: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 replication/slot.c:2502 storage/file/fd.c:875 storage/file/fd.c:3440 storage/file/fd.c:3502 +#: storage/file/reinit.c:261 storage/ipc/dsm.c:343 storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 utils/time/snapmgr.c:1609 #, c-format msgid "could not remove file \"%s\": %m" msgstr "ფაილის წაშლის შეცდომა \"%s\": %m" @@ -696,25 +697,25 @@ msgstr "\"%s\"-ისთვის შეერთების მიღება msgid "could not get junction for \"%s\": %s\n" msgstr "\"%s\"-ისთვის შეერთების მიღება ვერ მოხერხდა: %s\n" -#: ../port/open.c:115 +#: ../port/open.c:125 #, c-format msgid "could not open file \"%s\": %s" msgstr "ფაილის გახსნის შეცდომა \"%s\": %s" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "lock violation" msgstr "ბლოკის დარღვევა" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "sharing violation" msgstr "გაზიარების დარღვევა" -#: ../port/open.c:117 +#: ../port/open.c:127 #, c-format msgid "Continuing to retry for 30 seconds." msgstr "ვაგრძელებ თავიდან ცდას 30 წამით." -#: ../port/open.c:118 +#: ../port/open.c:128 #, c-format msgid "You might have antivirus, backup, or similar software interfering with the database system." msgstr "შეიძლება თქვენი ანტივირუსი, მარქაფი ან რამე სხვა პროგრამა ხელს უშლის მონაცემთა ბაზის სისტემის მუშაობას." @@ -749,7 +750,7 @@ msgstr "კოდის წევრობის წვდომის შემ msgid "request for BRIN range summarization for index \"%s\" page %u was not recorded" msgstr "\"BRIN\" შეჯამების დიაპაზონის ინდექსისთვის \"%s\" გვერდი %u ჩაწერილი არაა" -#: access/brin/brin.c:1397 access/brin/brin.c:1504 access/gin/ginfast.c:1040 access/transam/xlogfuncs.c:184 access/transam/xlogfuncs.c:209 access/transam/xlogfuncs.c:242 access/transam/xlogfuncs.c:281 access/transam/xlogfuncs.c:302 access/transam/xlogfuncs.c:323 access/transam/xlogfuncs.c:389 access/transam/xlogfuncs.c:447 statistics/attribute_stats.c:190 statistics/attribute_stats.c:931 statistics/relation_stats.c:97 +#: access/brin/brin.c:1397 access/brin/brin.c:1504 access/gin/ginfast.c:1040 access/transam/xlogfuncs.c:184 access/transam/xlogfuncs.c:209 access/transam/xlogfuncs.c:242 access/transam/xlogfuncs.c:281 access/transam/xlogfuncs.c:302 access/transam/xlogfuncs.c:323 access/transam/xlogfuncs.c:389 access/transam/xlogfuncs.c:447 statistics/attribute_stats.c:191 statistics/attribute_stats.c:936 statistics/relation_stats.c:97 #, c-format msgid "recovery is in progress" msgstr "აღდგენა მიმდინარეობს" @@ -774,7 +775,7 @@ msgstr "\"%s\" BRIN ინდექსი არაა" msgid "could not open parent table of index \"%s\"" msgstr "ინდექსის \"%s\" მშობელი ცხრილის გახსნის შეცდომა" -#: access/brin/brin.c:1472 access/brin/brin.c:1568 access/gin/ginfast.c:1085 parser/parse_utilcmd.c:2455 +#: access/brin/brin.c:1472 access/brin/brin.c:1568 access/gin/ginfast.c:1085 parser/parse_utilcmd.c:2454 #, c-format msgid "index \"%s\" is not valid" msgstr "ინდექსი არასწორია: \"%s\"" @@ -1017,17 +1018,17 @@ msgstr "სხვა სესიების დროებით ინდე msgid "failed to re-find tuple within index \"%s\"" msgstr "კორტეჟის თავიდან პოვნის შეცდომა ინდექსში \"%s\"" -#: access/gin/gininsert.c:1283 access/gin/ginutil.c:152 executor/execExpr.c:2244 utils/adt/array_userfuncs.c:1963 utils/adt/arrayfuncs.c:4028 utils/adt/arrayfuncs.c:6726 utils/adt/rowtypes.c:974 +#: access/gin/gininsert.c:1310 access/gin/ginutil.c:152 executor/execExpr.c:2244 utils/adt/array_userfuncs.c:1963 utils/adt/arrayfuncs.c:4028 utils/adt/arrayfuncs.c:6726 utils/adt/rowtypes.c:974 #, c-format msgid "could not identify a comparison function for type %s" msgstr "ტიპისთვის \"%s\" შედარების ფუნქცია ვერ ვიპოვე" -#: access/gin/ginscan.c:437 +#: access/gin/ginscan.c:480 #, c-format msgid "old GIN indexes do not support whole-index scans nor searches for nulls" msgstr "ძველ GIN ინდექსებს არც ინდექსების სრული სკანირების მხარდაჭერა აქვს, არც ნულების ძებნის" -#: access/gin/ginscan.c:438 +#: access/gin/ginscan.c:481 #, c-format msgid "To fix this, do REINDEX INDEX \"%s\"." msgstr "გასასწორებლად გაუშვით REINDEX INDEX \"%s\"." @@ -1102,8 +1103,8 @@ msgstr "ოპერატორის ოჯახი \"%s\" (წვდომ msgid "could not determine which collation to use for string hashing" msgstr "სტრიქონების ჰეშირებისთვის საჭირო კოლაციის გარკვევა შეუძლებელია" -#: access/hash/hashfunc.c:278 access/hash/hashfunc.c:333 catalog/heap.c:688 catalog/heap.c:694 commands/createas.c:203 commands/createas.c:515 commands/indexcmds.c:2090 commands/tablecmds.c:19952 commands/view.c:80 regex/regc_pg_locale.c:242 utils/adt/formatting.c:1655 utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 utils/adt/like_support.c:1020 utils/adt/varchar.c:738 -#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1592 +#: access/hash/hashfunc.c:278 access/hash/hashfunc.c:333 catalog/heap.c:688 catalog/heap.c:694 commands/createas.c:203 commands/createas.c:515 commands/indexcmds.c:2090 commands/tablecmds.c:19987 commands/view.c:80 regex/regc_pg_locale.c:242 utils/adt/formatting.c:1655 utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 utils/adt/like_support.c:1020 utils/adt/varchar.c:738 +#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1603 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "კოლაციის ხელით მისათითებლად გამოიყენეთ COLLATE." @@ -1153,37 +1154,37 @@ msgstr "ოპერატორის ოჯახს \"%s\" (წვდომ msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)" msgstr "ოპერატორის ოჯახს \"%s\" წვდომის მეთოდში %s ჯვარედინი ტიპის ოპერატორები აკლია" -#: access/heap/heapam.c:2280 +#: access/heap/heapam.c:2283 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "პარალელურ დამხმარე პროცესში კორტეჟებს ვერ ჩასვამთ" -#: access/heap/heapam.c:2803 +#: access/heap/heapam.c:2806 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "პარალელური ოპერაციის დროს კორტეჟის წაშლა შეუძლებელია" -#: access/heap/heapam.c:2850 +#: access/heap/heapam.c:2853 #, c-format msgid "attempted to delete invisible tuple" msgstr "უხილავი კორტეჟის წაშლის მცდელობა" -#: access/heap/heapam.c:3300 access/index/genam.c:829 +#: access/heap/heapam.c:3303 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "პარალელური ოპერაციის დროს კორტეჟის განახლება შეუძლებელია" -#: access/heap/heapam.c:3477 +#: access/heap/heapam.c:3480 #, c-format msgid "attempted to update invisible tuple" msgstr "უხილავი კორტეჟის განახლების მცდელობა" -#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 access/heap/heapam.c:5291 access/heap/heapam_handler.c:470 +#: access/heap/heapam.c:4993 access/heap/heapam.c:5031 access/heap/heapam.c:5298 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "ურთიერთობაში \"%s\" მწკრივის დაბლოკვის შეცდომა" -#: access/heap/heapam.c:6405 commands/trigger.c:3401 executor/nodeModifyTable.c:2568 executor/nodeModifyTable.c:2658 +#: access/heap/heapam.c:6425 commands/trigger.c:3401 executor/nodeModifyTable.c:2568 executor/nodeModifyTable.c:2658 #, c-format msgid "tuple to be updated was already modified by an operation triggered by the current command" msgstr "" @@ -1203,8 +1204,8 @@ msgstr "მწკრივი ძალიან დიდია: ზომა % msgid "could not write to file \"%s\", wrote %d of %d: %m" msgstr "ფაილში \"%s\" ჩაწერა შეუძლებელია. ჩაწერილია %d %d-დან: %m" -#: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 access/transam/timeline.c:329 access/transam/timeline.c:481 access/transam/xlog.c:3373 access/transam/xlog.c:3581 access/transam/xlog.c:4445 access/transam/xlog.c:9453 access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 backup/basebackup_server.c:242 commands/dbcommands.c:495 postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 postmaster/walsummarizer.c:1215 -#: replication/logical/origin.c:626 replication/slot.c:2306 storage/file/copydir.c:173 storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1241 +#: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 access/transam/timeline.c:329 access/transam/timeline.c:481 access/transam/xlog.c:3240 access/transam/xlog.c:3448 access/transam/xlog.c:4312 access/transam/xlog.c:9327 access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 backup/basebackup_server.c:242 commands/dbcommands.c:495 postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 postmaster/walsummarizer.c:1215 +#: replication/logical/origin.c:626 replication/slot.c:2360 storage/file/copydir.c:173 storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 #, c-format msgid "could not create file \"%s\": %m" msgstr "ფაილის (%s) შექმნის შეცდომა: %m" @@ -1214,8 +1215,8 @@ msgstr "ფაილის (%s) შექმნის შეცდომა: %m" msgid "could not truncate file \"%s\" to %u: %m" msgstr "ფაილის (%s) %u-მდე მოკვეთის შეცდომა: %m" -#: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 access/transam/timeline.c:424 access/transam/timeline.c:498 access/transam/xlog.c:3434 access/transam/xlog.c:3637 access/transam/xlog.c:4457 commands/dbcommands.c:507 postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 replication/logical/origin.c:638 replication/logical/origin.c:680 replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 replication/slot.c:2341 -#: storage/file/buffile.c:545 storage/file/copydir.c:213 utils/init/miscinit.c:1661 utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 utils/time/snapmgr.c:1246 utils/time/snapmgr.c:1253 +#: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 access/transam/timeline.c:424 access/transam/timeline.c:498 access/transam/xlog.c:3301 access/transam/xlog.c:3504 access/transam/xlog.c:4324 commands/dbcommands.c:507 postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 replication/logical/origin.c:638 replication/logical/origin.c:680 replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 replication/slot.c:2396 +#: storage/file/buffile.c:545 storage/file/copydir.c:213 utils/init/miscinit.c:1661 utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 utils/time/snapmgr.c:1257 utils/time/snapmgr.c:1264 #, c-format msgid "could not write to file \"%s\": %m" msgstr "ფაილში (%s) ჩაწერის შეცდომა: %m" @@ -1405,47 +1406,47 @@ msgstr "ცხრილი %s: წაკვეთის შეჩერება msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel" msgstr "%s-ზე პარალელური მომტვერსასრუტების გამორთვა --- დროებითი ცხრილების პარალელური მომტვერსასრუტება შეუძლებელია" -#: access/heap/vacuumlazy.c:3766 +#: access/heap/vacuumlazy.c:3768 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "ურთიერთობის(%3$s.%4$s) წანაცვლების(%2$u) ბლოკის(%1$u) სკანირებისას" -#: access/heap/vacuumlazy.c:3769 +#: access/heap/vacuumlazy.c:3771 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "%u ბლოკის (ურთიერთობის %s.%s) სკანირებისას" -#: access/heap/vacuumlazy.c:3773 +#: access/heap/vacuumlazy.c:3775 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "ურთიერთობის სკანირებისას \"%s.%s\"" -#: access/heap/vacuumlazy.c:3781 +#: access/heap/vacuumlazy.c:3783 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "ბლოკის %u, წანაცვლება %u (ურთიერთობის \"%s.%s\") მომტვერსასრუტებისას" -#: access/heap/vacuumlazy.c:3784 +#: access/heap/vacuumlazy.c:3786 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "ბლოკის (%u) მომტვერსასრუტებისას (ურთიერთობიდან \"%s.%s\")" -#: access/heap/vacuumlazy.c:3788 +#: access/heap/vacuumlazy.c:3790 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "ურთერთობის დამტვერსასრუტებისას \"%s.%s\"" -#: access/heap/vacuumlazy.c:3793 commands/vacuumparallel.c:1126 +#: access/heap/vacuumlazy.c:3795 commands/vacuumparallel.c:1126 #, c-format msgid "while vacuuming index \"%s\" of relation \"%s.%s\"" msgstr "ინდექსის (%s) მომტვერსასრუტებისას (ურთიერთობიდან \"%s.%s\")" -#: access/heap/vacuumlazy.c:3798 commands/vacuumparallel.c:1132 +#: access/heap/vacuumlazy.c:3800 commands/vacuumparallel.c:1132 #, c-format msgid "while cleaning up index \"%s\" of relation \"%s.%s\"" msgstr "ინდექსის \"%s\" მოსუფთავებისას, რომელიც ეკუთვნის ურთიერთობას \"%s.%s\"" -#: access/heap/vacuumlazy.c:3804 +#: access/heap/vacuumlazy.c:3806 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "ურთიერთობის \"%s.%s\" %u ბლოკამდე მოკვეთისას" @@ -1470,7 +1471,7 @@ msgstr "ტრანზაქცია გაუქმდა სისტემ msgid "cannot access index \"%s\" while it is being reindexed" msgstr "ინდექსთან \"%s\" წვდომა მაშინ, როცა მისი რეინდექსი მიმდინარეობს, შეუძლებელია" -#: access/index/indexam.c:203 catalog/objectaddress.c:1361 commands/indexcmds.c:3016 commands/tablecmds.c:284 commands/tablecmds.c:308 commands/tablecmds.c:19641 commands/tablecmds.c:21569 +#: access/index/indexam.c:203 catalog/objectaddress.c:1361 commands/indexcmds.c:3016 commands/tablecmds.c:284 commands/tablecmds.c:308 commands/tablecmds.c:19666 commands/tablecmds.c:21608 #, c-format msgid "\"%s\" is not an index" msgstr "\"%s\" ინდექსი არაა" @@ -1495,7 +1496,7 @@ msgstr "გასაღები უკვე არსებობს: %s." msgid "This may be because of a non-immutable index expression." msgstr "შეიძლებa ინდექსის გამოსახულების შეცვლადობის ბრალი იყოს." -#: access/nbtree/nbtpage.c:157 access/nbtree/nbtpage.c:611 parser/parse_utilcmd.c:2505 +#: access/nbtree/nbtpage.c:157 access/nbtree/nbtpage.c:611 parser/parse_utilcmd.c:2504 #, c-format msgid "index \"%s\" is not a btree" msgstr "ინდექსი \"%s\" ორობითი ხე არაა" @@ -1515,17 +1516,17 @@ msgstr "ინდექსი (\"%s\") ნახევრად მკვდა msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it." msgstr "შესაძლებელია გამოწვეული იყოს შეწყვეტილი მომტვერსასრუტების მიერ 9.3 ან უფრო ძველ ვერსიაში. განახლებამდე საჭიროა REINDEX-ის გადატარება." -#: access/nbtree/nbtutils.c:4196 +#: access/nbtree/nbtutils.c:4233 #, c-format msgid "index row size %zu exceeds btree version %u maximum %zu for index \"%s\"" msgstr "ინდექსის სტრიქონის ზომა %zu btree-ის ვერსიის (%u) მაქსიმალურ (%zu) მნიშვნელობაზე მეტია, ინდექსისთვის \"%s\"" -#: access/nbtree/nbtutils.c:4201 +#: access/nbtree/nbtutils.c:4238 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "ინდექსის მწკრივები გადაბმულია კორტეჟზე (%u, %u) ურთიერთობაში \"%s\"." -#: access/nbtree/nbtutils.c:4205 +#: access/nbtree/nbtutils.c:4242 #, c-format msgid "" "Values larger than 1/3 of a buffer page cannot be indexed.\n" @@ -1539,7 +1540,7 @@ msgstr "" msgid "operator family \"%s\" of access method %s is missing support function for types %s and %s" msgstr "ოპერატორის ოჯახი \"%s\" წვდომის მეთოდის %s აკლია მხარდაჭერის ფუნქცია ტიპებისთვის %s და %s" -#: access/sequence/sequence.c:75 access/table/table.c:145 optimizer/util/plancat.c:144 +#: access/sequence/sequence.c:75 access/table/table.c:145 optimizer/util/plancat.c:145 #, c-format msgid "cannot open relation \"%s\"" msgstr "ურთიერთობის (\"%s\") გახსნა შეუძლებელია" @@ -1574,7 +1575,7 @@ msgstr "კორტეჟის იდენტიფიკატორი (%u, msgid "\"%s\" cannot be empty." msgstr "\"%s\" ცარიელი არ შეიძლება იყოს." -#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4879 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4912 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "\"%s\" ძალიან გრძელია (მაქს %d სიმბოლო)" @@ -1614,12 +1615,12 @@ msgstr "დარწმუნდით, რომ ძირითად სე msgid "Make sure the configuration parameter \"%s\" is set." msgstr "დარწმუნდით, რომ კონფიგურაციის პარამეტრი \"%s\" დაყენებულია." -#: access/transam/multixact.c:1097 +#: access/transam/multixact.c:1179 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database \"%s\"" msgstr "ბაზაში (\"%s\") მონაცემების ჩაციკვლის თავიდან ასაცილებლად მონაცემთა ბაზა ბრძანებებს, რომლებიც ახალ მულტიტრანზაქციებს ანიჭებენ, არ იღებს" -#: access/transam/multixact.c:1099 access/transam/multixact.c:1106 access/transam/multixact.c:1130 access/transam/multixact.c:1139 access/transam/varsup.c:158 access/transam/varsup.c:165 +#: access/transam/multixact.c:1181 access/transam/multixact.c:1188 access/transam/multixact.c:1212 access/transam/multixact.c:1221 access/transam/varsup.c:158 access/transam/varsup.c:165 #, c-format msgid "" "Execute a database-wide VACUUM in that database.\n" @@ -1628,65 +1629,70 @@ msgstr "" "გაუშვით მთელი ბაზის მომტვერსასრუტება.\n" "ასევე შეიძლება დაგჭირდეთ ძველი მომზადებული ტრანზაქციების გადაცემა ან გაუქმება, ან წაშალეთ გაჭედილი რეპლიკაციის სლოტები." -#: access/transam/multixact.c:1104 +#: access/transam/multixact.c:1186 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database with OID %u" msgstr "ბაზაში (OID-ით \"%u\") მონაცემების გადატანის თავიდან ასაცილებლად მონაცემთა ბაზა ბრძანებებს, რომლებიც ახალ მულტიტრანზაქციებს ანიჭებენ, არ იღებს" -#: access/transam/multixact.c:1125 access/transam/multixact.c:2482 +#: access/transam/multixact.c:1207 access/transam/multixact.c:2552 #, 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" msgstr[0] "კიდევ %2$u მულტიტრანზაქციის გამოსაყენებლად ბაზის (%1$s) მომტვერსასრუტებაა საჭირო" msgstr[1] "კიდევ %2$u მულტიტრანზაქციის გამოსაყენებლად ბაზის (%1$s) მომტვერსასრუტებაა საჭირო" -#: access/transam/multixact.c:1134 access/transam/multixact.c:2491 +#: access/transam/multixact.c:1216 access/transam/multixact.c:2561 #, 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" msgstr[0] "კიდევ %2$u მულტიტრანზაქციის გამოსაყენებლად OID-ი %1$u -ის მქონე ბაზა ჯერ უნდა დამტვერსასრუტდეს" msgstr[1] "კიდევ %2$u მულტიტრანზაქციის გამოსაყენებლად OID-ი %1$u -ის მქონე ბაზა ჯერ უნდა დამტვერსასრუტდეს" -#: access/transam/multixact.c:1195 +#: access/transam/multixact.c:1280 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "მულტიტრანზაქციული \"წევრების\" ლიმიტი გადაჭარბებულია" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1281 #, 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 წევრს ეყოფა." msgstr[1] "ბრძანება კი შექმნიდა %u-წევრიან მულტიტრანზაქციას, მაგრამ დარჩენილი ადგილი მხოლოდ %u წევრს ეყოფა." -#: access/transam/multixact.c:1201 +#: access/transam/multixact.c:1286 #, 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 "მთელ ბაზაზე მომტვერსასრუტების შესრულება ბაზაში OID-ით %u შემცირებული \"vacuum_multixact_freeze_min_age\" და \"vacuum_multixact_freeze_table_age\" პარამეტრებით." -#: access/transam/multixact.c:1232 +#: access/transam/multixact.c:1317 #, 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" msgstr[0] "ბაზა OID-ით %u უნდა მომტვერსასრუტდეს მანამდე, სანამ კიდევ %d მულტიტრანზაქციული წევრი იქნება გამოყენებული" msgstr[1] "ბაზა OID-ით %u უნდა მომტვერსასრუტდეს მანამდე, სანამ კიდევ %d მულტიტრანზაქციული წევრი იქნება გამოყენებული" -#: access/transam/multixact.c:1237 +#: access/transam/multixact.c:1322 #, 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\" პარამეტრებით." -#: access/transam/multixact.c:1377 +#: access/transam/multixact.c:1461 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u აღარ არსებობს - აშკარა გადატანა" -#: access/transam/multixact.c:1383 +#: access/transam/multixact.c:1467 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "MultiXactId %u ჯერ არ არის შექმნილი - აშკარა გადატანა" -#: access/transam/multixact.c:2487 access/transam/multixact.c:2496 +#: access/transam/multixact.c:1560 +#, c-format +msgid "MultiXact %u has invalid next offset" +msgstr "მულტიტრანზაქციას %u არასწორი წანაცვლება აქვს" + +#: access/transam/multixact.c:2557 access/transam/multixact.c:2566 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1695,61 +1701,66 @@ msgstr "" "მულტიტრანზაქციების მინიჭებების თავიდან ასაცილებლად გაუშვით VACUUM მთელ ბაზაზე იმ მონაცემთა ბაზისთვის.\n" "შეიძლება, ასევე, დაგჭირდეთ ძველი მომზადებული ტრანზაქციების კომიტი ან დაბრუნება, ან გამოუყენებელი რეპლიკაციის სლოტების წაშლა." -#: access/transam/multixact.c:2775 +#: access/transam/multixact.c:2845 #, c-format msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk" msgstr "მულტიტრანზაქციული წევრის გადატანის დაცვის ფუნქციები გათიშულია, რადგან უძველესი საკონტროლო წერტილის მქონე მულტიტრანზაქცია %u დისკზე არ არსებობს" -#: access/transam/multixact.c:2797 +#: access/transam/multixact.c:2867 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "მულტიტრანზაქციების ჩაციკვლისგან დაცვის მექანიზმები ახლა ჩართულია" -#: access/transam/multixact.c:3188 +#: access/transam/multixact.c:3258 #, c-format msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" msgstr "უძველესი მულტიტრანზაქცია %u ვერ ვიპოვე. უახლესი მულტიტრანზაქციაა %u. წაკვეთა გამოტოვებული იქნება" -#: access/transam/multixact.c:3206 +#: access/transam/multixact.c:3276 #, c-format msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation" msgstr "მულტიტრანზაქციამდე %u მოკვეთა შეუძლებელია, რადგან ის დისკზე არ არსებობს. მოკვეთა გამოტოვებული იქნება" -#: access/transam/multixact.c:3525 +#: access/transam/multixact.c:3293 +#, c-format +msgid "cannot truncate up to MultiXact %u because it has invalid offset, skipping truncation" +msgstr "მულტიტრანზაქციამდე %u მოკვეთა შეუძლებელია, რადგან მისი წანაცვლება არასწორია. მოკვეთა გამოტოვებული იქნება" + +#: access/transam/multixact.c:3638 #, c-format msgid "invalid MultiXactId: %u" msgstr "არასწორი MultiXactId: %u" -#: access/transam/parallel.c:752 access/transam/parallel.c:871 +#: access/transam/parallel.c:759 access/transam/parallel.c:878 #, c-format msgid "parallel worker failed to initialize" msgstr "პარალელური დამხმარე პროცესის ინიციალიზაციის შეცდომა" -#: access/transam/parallel.c:753 access/transam/parallel.c:872 +#: access/transam/parallel.c:760 access/transam/parallel.c:879 #, c-format msgid "More details may be available in the server log." msgstr "მეტი დეტალები შეიძლება სერვერის ჟურნალში იყოს ხელმისაწვდომი." -#: access/transam/parallel.c:933 +#: access/transam/parallel.c:940 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "postmaster-ი დასრულდა პარალელური ტრანზაქციისას" -#: access/transam/parallel.c:1120 +#: access/transam/parallel.c:1127 #, c-format msgid "lost connection to parallel worker" msgstr "პარალელური დამხმარე პროცესთან კავშირი დაკარგულია" -#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 +#: access/transam/parallel.c:1183 access/transam/parallel.c:1185 msgid "parallel worker" msgstr "პარალელური დამხმარე პროცესი" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1355 replication/logical/applyparallelworker.c:897 #, c-format msgid "could not map dynamic shared memory segment" msgstr "დინამიური გაზიარებული მეხსიერების სეგმენტის მიბმის შეცდომა" -#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:896 +#: access/transam/parallel.c:1360 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "დინამიური გაზიარებული მეხსიერების სეგმენტის არასწორი მაგიური რიცხვი" @@ -1809,62 +1820,62 @@ msgstr "რესურსის მმართველს ID-ით %d იგ msgid "registered custom resource manager \"%s\" with ID %d" msgstr "რეგისტრირებულია მორგებული რესურსის მმართველი \"%s\" ID-ით %d" -#: access/transam/slru.c:360 +#: access/transam/slru.c:361 #, c-format msgid "\"%s\" must be a multiple of %d." msgstr "\"%s\" %d-ის ნამრავლი უნდა იყოს." -#: access/transam/slru.c:832 +#: access/transam/slru.c:833 #, c-format msgid "file \"%s\" doesn't exist, reading as zeroes" msgstr "ფაილი \"%s\" არ არსებობს. წაკითხული იქნება, როგორც ნულებ" -#: access/transam/slru.c:1061 access/transam/slru.c:1067 access/transam/slru.c:1075 access/transam/slru.c:1080 access/transam/slru.c:1087 access/transam/slru.c:1092 access/transam/slru.c:1099 access/transam/slru.c:1106 +#: access/transam/slru.c:1062 access/transam/slru.c:1068 access/transam/slru.c:1076 access/transam/slru.c:1081 access/transam/slru.c:1088 access/transam/slru.c:1093 access/transam/slru.c:1100 access/transam/slru.c:1107 #, c-format msgid "could not access status of transaction %u" msgstr "ტრანზაქციის %u სტატუსის წვდომის შეცდომა" -#: access/transam/slru.c:1062 +#: access/transam/slru.c:1063 #, c-format msgid "Could not open file \"%s\": %m." msgstr "ფაილის (%s) გახსნის შეცდომა: %m." -#: access/transam/slru.c:1068 +#: access/transam/slru.c:1069 #, c-format msgid "Could not seek in file \"%s\" to offset %d: %m." msgstr "ფაილში \"%s\" წანაცვლებაზე %d გადახვევის შეცდომა: %m." -#: access/transam/slru.c:1076 +#: access/transam/slru.c:1077 #, c-format msgid "Could not read from file \"%s\" at offset %d: %m." msgstr "კითხვის შეცდომა ფაილიდან \"%s\" წანაცვლებასთან %d: %m." -#: access/transam/slru.c:1081 +#: access/transam/slru.c:1082 #, c-format msgid "Could not read from file \"%s\" at offset %d: read too few bytes." msgstr "კითხვის შეცდომა ფაილიდან \"%s\" წანაცვლებასთან %d: ყველა ბაიტის წაკითხვა შეუძლებელია." -#: access/transam/slru.c:1088 +#: access/transam/slru.c:1089 #, c-format msgid "Could not write to file \"%s\" at offset %d: %m." msgstr "ფაილში (\"%s\") ჩაწერის შეცდომა წანაცვლებასთან %d: %m." -#: access/transam/slru.c:1093 +#: access/transam/slru.c:1094 #, c-format msgid "Could not write to file \"%s\" at offset %d: wrote too few bytes." msgstr "ფაილში (\"%s\") ჩაწერის შეცდომა წანაცვლებასთან %d: ყველა ბაიტის ჩაწერა შეუძლებელია." -#: access/transam/slru.c:1100 +#: access/transam/slru.c:1101 #, c-format msgid "Could not fsync file \"%s\": %m." msgstr "ფაილის (%s) fsync-ის შეცდომა: %m." -#: access/transam/slru.c:1107 +#: access/transam/slru.c:1108 #, c-format msgid "Could not close file \"%s\": %m." msgstr "ფაილის (%s) დახურვის შეცდომა: %m." -#: access/transam/slru.c:1433 +#: access/transam/slru.c:1434 #, c-format msgid "could not truncate directory \"%s\": apparent wraparound" msgstr "საქაღალდის გასუფთავების შეცდომა: \"%s\" აშკარა ჩაციკვლა" @@ -2006,7 +2017,7 @@ msgstr "ფაილში (\"%s\") დამახსოვრებული msgid "calculated CRC checksum does not match value stored in file \"%s\"" msgstr "გამოთვლილი CRC საკონტროლო ჯამი არ ემთხვევა მნიშვნელობას, რომელიც ფაილში \"%s\" წერია" -#: access/transam/twophase.c:1419 access/transam/xlogrecovery.c:571 postmaster/walsummarizer.c:939 replication/logical/logical.c:213 replication/walsender.c:812 +#: access/transam/twophase.c:1419 access/transam/xlogrecovery.c:572 postmaster/walsummarizer.c:939 replication/logical/logical.c:213 replication/walsender.c:826 #, c-format msgid "Failed while allocating a WAL reading processor." msgstr "შეცდომა WAL კითხვის პროცესორის გამოყოფისას." @@ -2083,7 +2094,7 @@ msgstr "ორფაზიანი მდგომარეობის ფა msgid "Two-phase state file has been found in WAL record %X/%X, but this transaction has already been restored from disk." msgstr "" -#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:207 +#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:214 #, c-format msgid "could not access file \"%s\": %m" msgstr "ფაილის (%s) წვდომის შეცდომა: %m" @@ -2235,113 +2246,113 @@ msgstr "პარალელური ოპერაციის დროს msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "ტრანზაქციაში 2^32-1 ქვეტრანზაქციაზე მეტი ვერ იქნება" -#: access/transam/xlog.c:1556 +#: access/transam/xlog.c:1545 #, c-format msgid "request to flush past end of generated WAL; request %X/%X, current position %X/%X" msgstr "" -#: access/transam/xlog.c:1783 +#: access/transam/xlog.c:1772 #, c-format msgid "cannot read past end of generated WAL: requested %X/%X, current position %X/%X" msgstr "" -#: access/transam/xlog.c:2352 access/transam/xlog.c:4681 +#: access/transam/xlog.c:2219 access/transam/xlog.c:4548 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "WAL სეგმენტის ზომა ორის ხარისხი უნდა იყოს, შუალედიდან 1მბ-1გბ." -#: access/transam/xlog.c:2588 +#: access/transam/xlog.c:2455 #, c-format msgid "could not write to log file \"%s\" at offset %u, length %zu: %m" msgstr "ჟურნალის ფაილში \"%s\" ჩაწერის შეცდომა წანაცვლება %u, სიგრძე %zu: %m" -#: access/transam/xlog.c:3874 access/transam/xlogutils.c:820 replication/walsender.c:3074 +#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "მოთხოვნილი WAL სეგმენტი %s უკვე წაშლილია" -#: access/transam/xlog.c:4196 +#: access/transam/xlog.c:4063 #, c-format msgid "could not rename file \"%s\": %m" msgstr "ფაილის გადარქმევის შეცდომა %s: %m" -#: access/transam/xlog.c:4239 access/transam/xlog.c:4250 access/transam/xlog.c:4271 +#: access/transam/xlog.c:4106 access/transam/xlog.c:4117 access/transam/xlog.c:4138 #, c-format msgid "required WAL directory \"%s\" does not exist" msgstr "wal-ის აუცილებელი საქაღალდე \"%s\" არ არსებობს" -#: access/transam/xlog.c:4256 access/transam/xlog.c:4277 +#: access/transam/xlog.c:4123 access/transam/xlog.c:4144 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "ნაკლული WAL საქაღალდის შექმნა: \"%s\"" -#: access/transam/xlog.c:4260 access/transam/xlog.c:4280 commands/dbcommands.c:3301 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 commands/dbcommands.c:3302 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "ნაკლული საქაღალდის (\"%s\") შექმნის შეცდომა: %m" -#: access/transam/xlog.c:4347 +#: access/transam/xlog.c:4214 #, c-format msgid "could not generate secret authorization token" msgstr "ავთენტიკაციისთვის ერთჯერადი კოდის გენერაციის შეცდომა" -#: access/transam/xlog.c:4525 access/transam/xlog.c:4535 access/transam/xlog.c:4561 access/transam/xlog.c:4571 access/transam/xlog.c:4581 access/transam/xlog.c:4587 access/transam/xlog.c:4597 access/transam/xlog.c:4607 access/transam/xlog.c:4617 access/transam/xlog.c:4627 access/transam/xlog.c:4637 access/transam/xlog.c:4647 access/transam/xlog.c:4659 access/transam/xlog.c:4667 utils/init/miscinit.c:1818 +#: access/transam/xlog.c:4392 access/transam/xlog.c:4402 access/transam/xlog.c:4428 access/transam/xlog.c:4438 access/transam/xlog.c:4448 access/transam/xlog.c:4454 access/transam/xlog.c:4464 access/transam/xlog.c:4474 access/transam/xlog.c:4484 access/transam/xlog.c:4494 access/transam/xlog.c:4504 access/transam/xlog.c:4514 access/transam/xlog.c:4526 access/transam/xlog.c:4534 utils/init/miscinit.c:1818 #, c-format msgid "database files are incompatible with server" msgstr "ბაზის ფაილები სერვერთან თავსებადი არაა" -#: access/transam/xlog.c:4526 +#: access/transam/xlog.c:4393 #, 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)." -#: access/transam/xlog.c:4530 +#: access/transam/xlog.c:4397 #, c-format msgid "This could be a problem of mismatched byte ordering. It looks like you need to initdb." msgstr "ეს შეიძლება ბაიტების არასწორი დალაგების პრობლემაც იყოს. როგორც ჩანს, initdb გჭირდებათ." -#: access/transam/xlog.c:4536 +#: access/transam/xlog.c:4403 #, 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." -#: access/transam/xlog.c:4539 access/transam/xlog.c:4567 access/transam/xlog.c:4577 access/transam/xlog.c:4583 +#: access/transam/xlog.c:4406 access/transam/xlog.c:4434 access/transam/xlog.c:4444 access/transam/xlog.c:4450 #, c-format msgid "It looks like you need to initdb." msgstr "როგორც ჩანს, initdb გჭირდებათ." -#: access/transam/xlog.c:4551 +#: access/transam/xlog.c:4418 #, c-format msgid "incorrect checksum in control file" msgstr "არასწორი საკონტროლო ჯამი pg_control-ის ფაილში" #. translator: %s is a variable name and %d is its value -#: access/transam/xlog.c:4563 access/transam/xlog.c:4573 access/transam/xlog.c:4589 access/transam/xlog.c:4599 access/transam/xlog.c:4609 access/transam/xlog.c:4619 access/transam/xlog.c:4629 access/transam/xlog.c:4639 access/transam/xlog.c:4649 +#: access/transam/xlog.c:4430 access/transam/xlog.c:4440 access/transam/xlog.c:4456 access/transam/xlog.c:4466 access/transam/xlog.c:4476 access/transam/xlog.c:4486 access/transam/xlog.c:4496 access/transam/xlog.c:4506 access/transam/xlog.c:4516 #, c-format msgid "The database cluster was initialized with %s %d, but the server was compiled with %s %d." msgstr "მონაცემთა ბაზის კლასტერის ინიციალიზაცია მოხდა %s %d -ით, მაგრამ სერვერი აგებულია %s %d-ით." -#: access/transam/xlog.c:4582 +#: access/transam/xlog.c:4449 #, c-format msgid "The database cluster appears to use a different floating-point number format than the server executable." msgstr "როგორც ჩანს, ბაზის კლასტერი წილადი რიცხვების სხვა ფორმატს იყენებს, ვიდრე სერვერის გამშვები ფაილი." -#: access/transam/xlog.c:4593 access/transam/xlog.c:4603 access/transam/xlog.c:4613 access/transam/xlog.c:4623 access/transam/xlog.c:4633 access/transam/xlog.c:4643 access/transam/xlog.c:4653 access/transam/xlog.c:4662 access/transam/xlog.c:4670 +#: access/transam/xlog.c:4460 access/transam/xlog.c:4470 access/transam/xlog.c:4480 access/transam/xlog.c:4490 access/transam/xlog.c:4500 access/transam/xlog.c:4510 access/transam/xlog.c:4520 access/transam/xlog.c:4529 access/transam/xlog.c:4537 #, c-format msgid "It looks like you need to recompile or initdb." msgstr "როგორც ჩანს, გჭირდებათ თავიდან ააგოთ პროდუქტი, ან initdb." -#: access/transam/xlog.c:4660 +#: access/transam/xlog.c:4527 #, 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-ით." -#: access/transam/xlog.c:4668 +#: access/transam/xlog.c:4535 #, c-format msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL." msgstr "მონაცემთა ბაზის კლასტერის ინიციალიზაცია მოხდა USE_FLOAT8_BYVA -ის გარეშე, მაგრამ სერვერი აგებულია USE_FLOAT8_BYVAL-ით." -#: access/transam/xlog.c:4677 +#: access/transam/xlog.c:4544 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -2349,279 +2360,279 @@ msgstr[0] "არასწორი WAL სეგმენტის ზომა msgstr[1] "არასწორი WAL სეგმენტის ზომა კონტროლის ფაილში (%d ბაიტი)" #. translator: both %s are GUC names -#: access/transam/xlog.c:4691 access/transam/xlog.c:4697 +#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 #, c-format msgid "\"%s\" must be at least twice \"%s\"" msgstr "\"%s\", სულ ცოტა, ორჯერ მეტი უნდა იყოს \"%s\"-ზე" -#: access/transam/xlog.c:4859 catalog/namespace.c:4696 commands/tablespace.c:1210 commands/user.c:2542 commands/variable.c:72 replication/slot.c:2711 tcop/postgres.c:3626 utils/error/elog.c:2257 +#: access/transam/xlog.c:4726 catalog/namespace.c:4699 commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 replication/slot.c:2768 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "სია სინტაქსი არასწორია." -#: access/transam/xlog.c:4905 commands/user.c:2558 commands/variable.c:173 tcop/postgres.c:3642 utils/error/elog.c:2283 +#: access/transam/xlog.c:4772 commands/user.c:2547 commands/variable.c:173 tcop/postgres.c:3642 utils/error/elog.c:2283 #, c-format msgid "Unrecognized key word: \"%s\"." msgstr "უცნობი საკვანძო სიტყვა: \"%s\"." -#: access/transam/xlog.c:5332 +#: access/transam/xlog.c:5195 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "ფაილში წინასწარ-ჩაწერადი ჟურნალის ფაილის დასაწყისის ჩაწერის შეცდომა: %m" -#: access/transam/xlog.c:5340 +#: access/transam/xlog.c:5203 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "ფაილში წინასწარ-ჩაწერადი ჟურნალის ფაილის დასაწყისის fsync-ის შეცდომა: %m" -#: access/transam/xlog.c:5346 +#: access/transam/xlog.c:5209 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "ფაილში წინასწარ-ჩაწერადი ჟურნალის ფაილის დასაწყისის დახურვის შეცდომა: %m" -#: access/transam/xlog.c:5571 +#: access/transam/xlog.c:5434 #, c-format msgid "WAL was generated with \"wal_level=minimal\", cannot continue recovering" msgstr "WAL-ი გენერირებული იყო \"wal_level=minimal\"-ით. აღდგენა ვერ გაგრძელდება" -#: access/transam/xlog.c:5572 +#: access/transam/xlog.c:5435 #, c-format msgid "This happens if you temporarily set \"wal_level=minimal\" on the server." msgstr "ეს ხდება, თუ სერვერზე დროებით \"wal_level=minimal\"-ს დააყენებთ." -#: access/transam/xlog.c:5573 +#: access/transam/xlog.c:5436 #, c-format msgid "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." msgstr "გამოიყენეთ მარქაფი, რომელიც \"wal_level\"-ის \"minimal\"-ზე მეტზე დაყენების შემდეგ აიღეთ." -#: access/transam/xlog.c:5638 +#: access/transam/xlog.c:5501 #, c-format msgid "control file contains invalid checkpoint location" msgstr "საკონტროლო ფაილი საკონტროლო წერტილის არასწორ მდებარეობას შეიცავს" -#: access/transam/xlog.c:5649 +#: access/transam/xlog.c:5512 #, c-format msgid "database system was shut down at %s" msgstr "მონაცემთა ბაზის სისტემის გათიშვის დრო: %s" -#: access/transam/xlog.c:5655 +#: access/transam/xlog.c:5518 #, c-format msgid "database system was shut down in recovery at %s" msgstr "მონაცემთა ბაზის სისტემის აღდგენისას გათიშვის დრო: %s" -#: access/transam/xlog.c:5661 +#: access/transam/xlog.c:5524 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "მონაცემთა ბაზა შეწყვეტილია; ბოლოს ჩართული იყო: %s" -#: access/transam/xlog.c:5667 +#: access/transam/xlog.c:5530 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "მონაცემთა ბაზის სისტემის აღდგენისას გათიშვის დრო: %s" -#: access/transam/xlog.c:5669 +#: access/transam/xlog.c:5532 #, c-format 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:5675 +#: access/transam/xlog.c:5538 #, c-format msgid "database system was interrupted while in recovery at log time %s" msgstr "მონაცემთა ბაზის სისტემა გაითიშა აღდგენისას ჟურნალის დროს %s" -#: access/transam/xlog.c:5677 +#: access/transam/xlog.c:5540 #, 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 "თუ ეს კიდევ ერთხელ მაინც მოხდა, ეს ნიშნავს, რომ მონაცემები დაზიანებულია და უფრო ძველი აღდგენის სამიზნე უნდა აირჩიოთ." -#: access/transam/xlog.c:5683 +#: access/transam/xlog.c:5546 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "მონაცემთა ბაზა შეწყვეტილია; ბოლოს ჩართული იყო: %s" -#: access/transam/xlog.c:5690 +#: access/transam/xlog.c:5553 #, c-format msgid "control file contains invalid database cluster state" msgstr "კონტროლის ფაილი ბაზის კლასტერის არასწორ მდგომარეობას შეიცავს" -#: access/transam/xlog.c:6078 +#: access/transam/xlog.c:5941 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL ონლაინ მარქაფის დასასრულამდე მთავრდება" -#: access/transam/xlog.c:6079 +#: access/transam/xlog.c:5942 #, c-format msgid "All WAL generated while online backup was taken must be available at recovery." msgstr "აღდგენისას ონლაინ მარქაფის აღებისას გენერირებული ყველა WAL-ი ხელმისაწვდომი უნდა იყოს." -#: access/transam/xlog.c:6083 +#: access/transam/xlog.c:5946 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL აღდგენის შეთანხმებულ წერტილამდე მთავრდება" -#: access/transam/xlog.c:6129 +#: access/transam/xlog.c:5992 #, c-format msgid "selected new timeline ID: %u" msgstr "დროის ახალი ხაზის არჩეული ID: %u" -#: access/transam/xlog.c:6162 +#: access/transam/xlog.c:6025 #, c-format msgid "archive recovery complete" msgstr "არქივიდან აღდგენა დასრულდა" -#: access/transam/xlog.c:6794 +#: access/transam/xlog.c:6654 #, c-format msgid "shutting down" msgstr "მიმდინარეობს გამორთვა" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6833 +#: access/transam/xlog.c:6693 #, c-format msgid "restartpoint starting:%s%s%s%s%s%s%s%s" msgstr "გადატვირთვის წერტილი დაიწყო:%s%s%s%s%s%s%s%s" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6845 +#: access/transam/xlog.c:6705 #, c-format msgid "checkpoint starting:%s%s%s%s%s%s%s%s" msgstr "საკონტროლო წერტილი იწყება:%s%s%s%s%s%s%s%s" -#: access/transam/xlog.c:6910 +#: access/transam/xlog.c:6770 #, c-format msgid "restartpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" msgstr "" -#: access/transam/xlog.c:6934 +#: access/transam/xlog.c:6794 #, c-format msgid "checkpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" msgstr "" -#: access/transam/xlog.c:7420 +#: access/transam/xlog.c:7280 #, c-format msgid "concurrent write-ahead log activity while database system is shutting down" msgstr "კონკურენტული წინასწარ-ჩაწერადი ჟურნალის აქტივობა, სანამ მონაცემთა ბაზა მუშაობას ასრულებს" -#: access/transam/xlog.c:8011 +#: access/transam/xlog.c:7869 #, c-format msgid "recovery restart point at %X/%X" msgstr "აღდგენის გადატვირთვის წერტილი: %X/%X" -#: access/transam/xlog.c:8013 +#: access/transam/xlog.c:7871 #, c-format msgid "Last completed transaction was at log time %s." msgstr "უკანასკნელად დასრულებული ტრანზაქცია მოხდა ჟურნალის დროით %s." -#: access/transam/xlog.c:8277 +#: access/transam/xlog.c:8135 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "აღდგენის წერტილი \"%s\" შექმნილია %X/%X -სთან" -#: access/transam/xlog.c:8484 +#: access/transam/xlog.c:8342 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "ონლაინ მარქაფი გაუქმდა. აღდგენა ვერ გაგრძელდება" -#: access/transam/xlog.c:8542 +#: access/transam/xlog.c:8400 #, c-format msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "გამორთვის საკონტროლო წერტილში ნაპოვნია დროის ხაზი %u მოულოდნელია (უნდა იყოს %u)" -#: access/transam/xlog.c:8600 +#: access/transam/xlog.c:8466 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "ჩართვის საკონტროლო წერტილში ნაპოვნია დროის ხაზი %u მოულოდნელია (უნდა იყოს %u)" -#: access/transam/xlog.c:8629 +#: access/transam/xlog.c:8503 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "აღდგენის ბოლო საკონტროლო წერტილში ნაპოვნია დროის ხაზი %u მოულოდნელია (უნდა იყოს %u)" -#: access/transam/xlog.c:8899 +#: access/transam/xlog.c:8773 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "გამჭოლად-ჩაწერადი ფაილის (%s) fsync-ის შეცდომა: %m" -#: access/transam/xlog.c:8904 +#: access/transam/xlog.c:8778 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "ფაილის \"%s\" fdatasync შეუძლებელია: %m" -#: access/transam/xlog.c:8981 access/transam/xlog.c:9317 +#: access/transam/xlog.c:8855 access/transam/xlog.c:9191 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "ონლაინ მარქაფისთვის WAL-ის მიმდინარე დონე საკმარისი არაა" -#: access/transam/xlog.c:8982 access/transam/xlog.c:9318 access/transam/xlogfuncs.c:249 +#: access/transam/xlog.c:8856 access/transam/xlog.c:9192 access/transam/xlogfuncs.c:249 #, c-format msgid "\"wal_level\" must be set to \"replica\" or \"logical\" at server start." msgstr "სერვისის გაშვებისას \"wal_level\"-ის მნიშვნელობა უნდა იყოს \"replica\" ან \"logical\"." -#: access/transam/xlog.c:8987 +#: access/transam/xlog.c:8861 #, c-format msgid "backup label too long (max %d bytes)" msgstr "მარქაფის ჭდე ძალიან გრძელია (max %d ბაიტი)" -#: access/transam/xlog.c:9108 +#: access/transam/xlog.c:8982 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed since last restartpoint" msgstr "" -#: access/transam/xlog.c:9110 access/transam/xlog.c:9406 +#: access/transam/xlog.c:8984 access/transam/xlog.c:9280 #, 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 primary, and then try an online backup again." msgstr "ეს ნიშნავს, რომ უქმეზე აღებული მარქაფი დაზიანებულია და არ უნდა გამოიყენოთ. ჩართეთ ძირითად სერვერზე \"full_page_writes\" და გაუშვით CHECKPOINT და მხოლოდ შემდეგ სცადეთ ონლაინ აღდგენა." -#: access/transam/xlog.c:9190 backup/basebackup.c:1419 utils/adt/misc.c:354 +#: access/transam/xlog.c:9064 backup/basebackup.c:1419 utils/adt/misc.c:354 #, c-format msgid "could not read symbolic link \"%s\": %m" msgstr "სიმბოლური ბმის \"%s\" წაკითხვის შეცდომა: %m" -#: access/transam/xlog.c:9197 backup/basebackup.c:1424 utils/adt/misc.c:359 +#: access/transam/xlog.c:9071 backup/basebackup.c:1424 utils/adt/misc.c:359 #, c-format msgid "symbolic link \"%s\" target is too long" msgstr "%s: სიმბმული ძალიან გრძელია" -#: access/transam/xlog.c:9356 backup/basebackup.c:1283 +#: access/transam/xlog.c:9230 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "უქმე წახალისდა ონლაინ მარქაფის მიმდინარეობის დროს" -#: access/transam/xlog.c:9357 backup/basebackup.c:1284 +#: access/transam/xlog.c:9231 backup/basebackup.c:1284 #, c-format 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:9404 +#: access/transam/xlog.c:9278 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed during online backup" msgstr "" -#: access/transam/xlog.c:9520 +#: access/transam/xlog.c:9394 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "ძირითადი მარქაფი დასრულდა. ველოდები აუცილებელი WAL-ის სეგმენტების დაარქივებას" -#: access/transam/xlog.c:9534 +#: access/transam/xlog.c:9408 #, c-format msgid "still waiting for all required WAL segments to be archived (%d seconds elapsed)" msgstr "ჯერ კიდევ ველოდები ყველა აუცილებელი WAL სეგმენტის დაარქივებას (გასულია %d წამი)" -#: access/transam/xlog.c:9536 +#: access/transam/xlog.c:9410 #, c-format msgid "Check that your \"archive_command\" is executing properly. You can safely cancel this backup, but the database backup will not be usable without all the WAL segments." msgstr "" -#: access/transam/xlog.c:9543 +#: access/transam/xlog.c:9417 #, c-format msgid "all required WAL segments have been archived" msgstr "ყველა საჭირო WAL სეგმენტი დაარქივებულია" -#: access/transam/xlog.c:9547 +#: access/transam/xlog.c:9421 #, 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 "" -#: access/transam/xlog.c:9586 +#: access/transam/xlog.c:9460 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "მარქაფი გაუქმდა, რადგან უკანაბოლომ მუშაობა pg_backup_stop-ის გამოძახებამდე დაასრულა" @@ -2916,17 +2927,17 @@ msgstr "ასლის აღდგენის შეცდომა მის msgid "could not decompress image at %X/%X, block %d" msgstr "არასწორად შეკუმშული ასლი მისამართზე %X/%X, ბლოკი %d" -#: access/transam/xlogrecovery.c:623 +#: access/transam/xlogrecovery.c:624 #, c-format msgid "starting backup recovery with redo LSN %X/%X, checkpoint LSN %X/%X, on timeline ID %u" msgstr "იწყება მარქაფის აღდგენა გამეორების LSN-ით %X/%X საკონტროლო წერტილზე %X/%X დროის ხაზზე ID-ით %u" -#: access/transam/xlogrecovery.c:655 +#: access/transam/xlogrecovery.c:656 #, c-format msgid "could not find redo location %X/%X referenced by checkpoint record at %X/%X" msgstr "ვერ ვიპოვე გამეორების მდებარეობა %X/%X, რომელსაც მიმართავს საკონტროლო წერტილის ჩანაწერი მისამართზე %X/%X" -#: access/transam/xlogrecovery.c:657 access/transam/xlogrecovery.c:668 +#: access/transam/xlogrecovery.c:658 access/transam/xlogrecovery.c:669 #, c-format msgid "" "If you are restoring from a backup, touch \"%s/recovery.signal\" or \"%s/standby.signal\" and add required recovery options.\n" @@ -2934,454 +2945,465 @@ msgid "" "Be careful: removing \"%s/backup_label\" will result in a corrupt cluster if restoring from a backup." msgstr "" -#: access/transam/xlogrecovery.c:666 +#: access/transam/xlogrecovery.c:667 #, c-format msgid "could not locate required checkpoint record at %X/%X" msgstr "აუცილებელი საკონტროლო წერტილის მოძებნა შეუძლებელია მისამართზე %X/%X" -#: access/transam/xlogrecovery.c:696 commands/tablespace.c:664 +#: access/transam/xlogrecovery.c:697 commands/tablespace.c:664 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "სიმბმულის შექმნის შეცდომა %s: %m" -#: access/transam/xlogrecovery.c:729 access/transam/xlogrecovery.c:735 +#: access/transam/xlogrecovery.c:730 access/transam/xlogrecovery.c:736 #, c-format msgid "ignoring file \"%s\" because no file \"%s\" exists" msgstr "ფაილის (\"%s\") იგნორირება იმიტომ, რომ ფაილი \"%s\" არ არსებობს" -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:732 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "სახელშეცვლილია '%s' -დან '%s'-ზე." -#: access/transam/xlogrecovery.c:737 +#: access/transam/xlogrecovery.c:738 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "გადარქმევის შეცდომა %s - %s: %m." -#: access/transam/xlogrecovery.c:776 +#: access/transam/xlogrecovery.c:777 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "მარქაფის აღდგენის თავიდან გაშვება გამეორების LSN-ით %X/%X" -#: access/transam/xlogrecovery.c:801 +#: access/transam/xlogrecovery.c:802 #, c-format msgid "could not locate a valid checkpoint record at %X/%X" msgstr "სწორი საკონტროლო წერტილის ჩანაწერის მოძებნა შეუძლებელია მისამართზე %X/%X" -#: access/transam/xlogrecovery.c:812 +#: access/transam/xlogrecovery.c:814 +#, c-format +msgid "could not find redo location %X/%08X referenced by checkpoint record at %X/%08X" +msgstr "ვერ ვიპოვე გამეორების მდებარეობა %X/%08X, რომელსაც მიმართავს საკონტროლო წერტილის ჩანაწერი მისამართზე %X/%08X" + +#: access/transam/xlogrecovery.c:823 #, c-format msgid "entering standby mode" msgstr "უქმე რეჟიმზე გადართვა" -#: access/transam/xlogrecovery.c:815 +#: access/transam/xlogrecovery.c:826 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "დროში-მითითებული-წერტილით აღდგენის დასაწყისი XID-მდე %u" -#: access/transam/xlogrecovery.c:819 +#: access/transam/xlogrecovery.c:830 #, c-format msgid "starting point-in-time recovery to %s" msgstr "დროში-მითითებული-წერტილით აღდგენის დასაწყისი %s" -#: access/transam/xlogrecovery.c:823 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "დროში-მითითებული-წერტილით აღდგენის დასაწყისი \"%s\"" -#: access/transam/xlogrecovery.c:827 +#: access/transam/xlogrecovery.c:838 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "" -#: access/transam/xlogrecovery.c:831 +#: access/transam/xlogrecovery.c:842 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "უახლოეს თანმიმდევრულ წერტილამდე დროში-მითითებული-წერტილით აღდგენის დასაწყისი" -#: access/transam/xlogrecovery.c:834 +#: access/transam/xlogrecovery.c:845 #, c-format msgid "starting archive recovery" msgstr "არქივიდან აღდგენა დაიწყო" -#: access/transam/xlogrecovery.c:855 +#: access/transam/xlogrecovery.c:866 #, c-format msgid "requested timeline %u is not a child of this server's history" msgstr "მოთხოვნილი დროის ხაზი %u სერვერის ისტორიის შვილი არაა" #. translator: %s is a backup_label file or a pg_control file -#: access/transam/xlogrecovery.c:858 +#: access/transam/xlogrecovery.c:869 #, c-format msgid "Latest checkpoint in file \"%s\" 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 "" -#: access/transam/xlogrecovery.c:873 +#: access/transam/xlogrecovery.c:884 #, c-format msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u" msgstr "" -#: access/transam/xlogrecovery.c:901 +#: access/transam/xlogrecovery.c:912 #, c-format msgid "invalid next transaction ID" msgstr "შემდეგი ტრანზაქციის არასწორი ID" -#: access/transam/xlogrecovery.c:906 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo in checkpoint record" msgstr "არასწორი გამეორება საკონტროლო წერტილის ჩანაწერში" -#: access/transam/xlogrecovery.c:917 +#: access/transam/xlogrecovery.c:928 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "გამეორების არასწორი ჩანაწერი გამორთვის საკონტროლო წერტილში" -#: access/transam/xlogrecovery.c:946 +#: access/transam/xlogrecovery.c:957 #, c-format msgid "database system was not properly shut down; automatic recovery in progress" msgstr "მონაცემთა ბაზა არასწორად გამოირთო; მიმდინარეობს ავტომატური აღდეგენა" -#: access/transam/xlogrecovery.c:950 +#: access/transam/xlogrecovery.c:961 #, c-format msgid "crash recovery starts in timeline %u and has target timeline %u" msgstr "ავარიიდან აღდგენა იწყება დროის ხაზზე %u და სამიზნედ დროის ხაზი %u აქვს" -#: access/transam/xlogrecovery.c:993 +#: access/transam/xlogrecovery.c:1004 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_label შეიცავს მონაცემებს, რომელიც კონტროლის ფაილს არ შეესაბამება" -#: access/transam/xlogrecovery.c:994 +#: access/transam/xlogrecovery.c:1005 #, c-format msgid "This means that the backup is corrupted and you will have to use another backup for recovery." msgstr "ეს ნიშნავს, რომ მარქაფი დაზიანებულია და აღდგენისთვის სხვა მარქაფის გამოყენება მოგიწევთ." -#: access/transam/xlogrecovery.c:1048 +#: access/transam/xlogrecovery.c:1059 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "აღდგენის ბრძანების ფაილი \"%s\" მხარდაუჭერელია" -#: access/transam/xlogrecovery.c:1113 +#: access/transam/xlogrecovery.c:1124 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "ერთმომხმარებლიან სერვერებს უქმე რეჟიმი არ გააჩნიათ" -#: access/transam/xlogrecovery.c:1130 +#: access/transam/xlogrecovery.c:1141 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "მითითებულია არც\" primary_conninfo\" და არც \"restore_command\"" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1142 #, c-format msgid "The database server will regularly poll the pg_wal subdirectory to check for files placed there." msgstr "" -#: access/transam/xlogrecovery.c:1139 +#: access/transam/xlogrecovery.c:1150 #, c-format msgid "must specify \"restore_command\" when standby mode is not enabled" msgstr "როცა უქმე რეჟიმი ჩართული არაა, \"restore_command\" პარამეტრის მითითება აუცილებელია" -#: access/transam/xlogrecovery.c:1177 +#: access/transam/xlogrecovery.c:1188 #, c-format msgid "recovery target timeline %u does not exist" msgstr "აღდგენის სამიზნე დროის ხაზი არ არსებობს: %u" -#: access/transam/xlogrecovery.c:1260 access/transam/xlogrecovery.c:1267 access/transam/xlogrecovery.c:1326 access/transam/xlogrecovery.c:1414 access/transam/xlogrecovery.c:1423 access/transam/xlogrecovery.c:1443 +#: access/transam/xlogrecovery.c:1271 access/transam/xlogrecovery.c:1278 access/transam/xlogrecovery.c:1337 access/transam/xlogrecovery.c:1425 access/transam/xlogrecovery.c:1434 access/transam/xlogrecovery.c:1454 #, c-format msgid "invalid data in file \"%s\"" msgstr "არასწორი მონაცემები ფაილში \"%s\"" -#: access/transam/xlogrecovery.c:1327 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "დროის დამუშავებული ID %u-ა. მოველოდი მნშვნელობას %u." -#: access/transam/xlogrecovery.c:1338 +#: access/transam/xlogrecovery.c:1349 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "ეს ინკრემენტული მარქაფია და არა მონაცემების საქაღალდე" -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1350 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "სწორი მონაცემების საქაღალდის თავიდან ასაგებად გამოიყენეთ ბრძანება pg_combinebackup." -#: access/transam/xlogrecovery.c:1725 +#: access/transam/xlogrecovery.c:1736 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "აღმოჩენილია მოულოდნელი ჩანაწერის ტიპი გამეორების წერტილზე %X/%X" -#: access/transam/xlogrecovery.c:1748 +#: access/transam/xlogrecovery.c:1759 #, c-format msgid "redo starts at %X/%X" msgstr "გამეორება დაიწყება მისამართიდან %X/%X" -#: access/transam/xlogrecovery.c:1761 +#: access/transam/xlogrecovery.c:1772 #, c-format msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X" msgstr "მიმდინარეობს გამეორება. გასული დრო: %ld.%02d მიმდინარე LSN: %X/%X" -#: access/transam/xlogrecovery.c:1851 +#: access/transam/xlogrecovery.c:1862 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "მოთხოვნილი აღდგენის წერტილი მუდმივი აღდგენის წერტილამდეა" -#: access/transam/xlogrecovery.c:1883 +#: access/transam/xlogrecovery.c:1894 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "გამეორება დასრულდა %X/%X -სთან. სისტემის დატვირთვა: %s" -#: access/transam/xlogrecovery.c:1889 +#: access/transam/xlogrecovery.c:1900 #, c-format msgid "last completed transaction was at log time %s" msgstr "უკანასკნელად დასრულებული ტრანზაქცია მოხდა ჟურნალის დროით %s" -#: access/transam/xlogrecovery.c:1898 +#: access/transam/xlogrecovery.c:1909 #, c-format msgid "redo is not required" msgstr "გამეორება საჭირო არაა" -#: access/transam/xlogrecovery.c:1910 +#: access/transam/xlogrecovery.c:1921 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "აღდგენა მითითებული აღდგენის სამიზნის მიღწევამდე დასრულდა" -#: access/transam/xlogrecovery.c:2104 +#: access/transam/xlogrecovery.c:2115 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "" -#: access/transam/xlogrecovery.c:2171 +#: access/transam/xlogrecovery.c:2182 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "%2$s-ში ნაპოვნია მოულოდნელი საქაღალდის ჩანაწერი \"%1$s\"" -#: access/transam/xlogrecovery.c:2173 +#: access/transam/xlogrecovery.c:2184 #, c-format msgid "All directory entries in %s/ should be symbolic links." msgstr "ყველა საქაღალდის ტიპის ელემენტი \"%s/-ში სიმბმულს უნდა წარმოადგენდეს." -#: access/transam/xlogrecovery.c:2175 +#: access/transam/xlogrecovery.c:2186 #, c-format msgid "Remove those directories, or set \"allow_in_place_tablespaces\" to ON transiently to let recovery complete." msgstr "" -#: access/transam/xlogrecovery.c:2227 +#: access/transam/xlogrecovery.c:2238 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "" -#: access/transam/xlogrecovery.c:2258 +#: access/transam/xlogrecovery.c:2269 #, c-format msgid "consistent recovery state reached at %X/%X" msgstr "თანმიმდევრული აღდგენის მდგომარეობა მიღწეულია მისამართზე %X/%X" #. translator: %s is a WAL record description -#: access/transam/xlogrecovery.c:2296 +#: access/transam/xlogrecovery.c:2307 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "WAL გამეორება %X/%X %s-სთვის" -#: access/transam/xlogrecovery.c:2394 +#: access/transam/xlogrecovery.c:2405 #, c-format msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record" msgstr "მოულოდნელი წინა დროის ხაზის ID %u (მიმდინარე დროის ხაზის ID %u) საკონტროლო წერტილის ჩანაწერში" -#: access/transam/xlogrecovery.c:2403 +#: access/transam/xlogrecovery.c:2414 #, c-format msgid "unexpected timeline ID %u (after %u) in checkpoint record" msgstr "მოულოდნელი დროის ხაზის ID %u (%u-ის შემდეგ) საკონტროლო წერტილის ჩანაწერში" -#: access/transam/xlogrecovery.c:2419 +#: access/transam/xlogrecovery.c:2430 #, c-format msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u" msgstr "" -#: access/transam/xlogrecovery.c:2603 access/transam/xlogrecovery.c:2879 +#: access/transam/xlogrecovery.c:2614 access/transam/xlogrecovery.c:2890 #, c-format msgid "recovery stopping after reaching consistency" msgstr "აღდგენა შეთანხმებული მდგომარეობის მიღწევისას დასრულდება" -#: access/transam/xlogrecovery.c:2624 +#: access/transam/xlogrecovery.c:2635 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "აღდგენა შეწყდა WAL-ის მდებარეობამდე (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2714 +#: access/transam/xlogrecovery.c:2725 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "აღდგენა შეწყდა ტრანზაქციის (%u) გადაცემამდე. დრო %s" -#: access/transam/xlogrecovery.c:2721 +#: access/transam/xlogrecovery.c:2732 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "აღდგენა შეწყდა ტრანზაქციის (%u) გაუქმებამდე. დრო %s" -#: access/transam/xlogrecovery.c:2774 +#: access/transam/xlogrecovery.c:2785 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "აღდგენა შეწყდა აღდგენის წერტილთან \"%s\". დრო %s" -#: access/transam/xlogrecovery.c:2792 +#: access/transam/xlogrecovery.c:2803 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "აღდგენა შეწყდა WAL-ის მდებარეობამდე (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2859 +#: access/transam/xlogrecovery.c:2870 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "აღდგენა შეწყდა ტრანზაქციის (%u) გადაცემამდე. დრო %s" -#: access/transam/xlogrecovery.c:2867 +#: access/transam/xlogrecovery.c:2878 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "აღდგენა ტრანზაქციის (%u) გაუქმების შემდეგ შეწყდა. დრო %s" -#: access/transam/xlogrecovery.c:2948 +#: access/transam/xlogrecovery.c:2959 #, c-format msgid "pausing at the end of recovery" msgstr "შეჩერება აღდგენის ბოლოს" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2960 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "წასახალისებლად გაუშვით pg_wal_replay_resume()." -#: access/transam/xlogrecovery.c:2952 access/transam/xlogrecovery.c:4698 +#: access/transam/xlogrecovery.c:2963 access/transam/xlogrecovery.c:4720 #, c-format msgid "recovery has paused" msgstr "აღდგენა შეჩერდა" -#: access/transam/xlogrecovery.c:2953 +#: access/transam/xlogrecovery.c:2964 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "გასაგრძელებლად გაუშვით pg_wal_replay_resume()." -#: access/transam/xlogrecovery.c:3216 +#: access/transam/xlogrecovery.c:3227 #, c-format msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u" msgstr "მოულოდნელი დროის ხაზის ID %u WAL სეგმენტში %s, LSN %X/%X, წანაცვლება %u" -#: access/transam/xlogrecovery.c:3432 +#: access/transam/xlogrecovery.c:3443 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m" msgstr "ჟურნალის სეგმენტიდან (%s, LSN %X/%X, წანაცვლება %u) წაკითხვის შეცდომა: %m" -#: access/transam/xlogrecovery.c:3439 +#: access/transam/xlogrecovery.c:3450 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" msgstr "ჟურნალის სეგმენტიდან (%s, LSN %X/%X, წანაცვლება %u) წაკითხვის შეცდომა: წავიკითხე %d %zu-დან" -#: access/transam/xlogrecovery.c:4082 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint location" msgstr "საკონტროლო წერტილის არასწორი მდებარეობა" -#: access/transam/xlogrecovery.c:4092 +#: access/transam/xlogrecovery.c:4114 #, c-format msgid "invalid checkpoint record" msgstr "საკონტროლო წერტილის არასწორი ჩანაწერი" -#: access/transam/xlogrecovery.c:4098 +#: access/transam/xlogrecovery.c:4120 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "რესურსის მმართველის არასწორი ID საკონტროლო წერტილის ჩანაწერში" -#: access/transam/xlogrecovery.c:4106 +#: access/transam/xlogrecovery.c:4128 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "საკონტროლო წერტილის არასწორი xl_info" -#: access/transam/xlogrecovery.c:4112 +#: access/transam/xlogrecovery.c:4134 #, c-format msgid "invalid length of checkpoint record" msgstr "საკონტროლო წერტილის ჩანაწერის არასწორი სიგრძე" -#: access/transam/xlogrecovery.c:4166 +#: access/transam/xlogrecovery.c:4188 #, c-format msgid "new timeline %u is not a child of database system timeline %u" msgstr "ახალი დროის ხაზი %u ბაზის სისტემის დროის ხაზის %u შვილი არაა" -#: access/transam/xlogrecovery.c:4180 +#: access/transam/xlogrecovery.c:4202 #, c-format msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X" msgstr "" -#: access/transam/xlogrecovery.c:4199 +#: access/transam/xlogrecovery.c:4221 #, c-format msgid "new target timeline is %u" msgstr "ახალი სამიზნის დროის ხაზია %u" -#: access/transam/xlogrecovery.c:4400 +#: access/transam/xlogrecovery.c:4422 #, c-format msgid "WAL receiver process shutdown requested" msgstr "მოთხოვნილია WAL-ის მიმღები პროცესის გამორთვა" -#: access/transam/xlogrecovery.c:4460 +#: access/transam/xlogrecovery.c:4482 #, c-format msgid "received promote request" msgstr "მიღებულა დაწინაურების მოთხოვნა" -#: access/transam/xlogrecovery.c:4689 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "hot standby is not possible because of insufficient parameter settings" msgstr "ცხელი მომლოდინე სერვერის არსებობა შეუძლებელია არასაკმარისი პარამეტრის მნიშვნელობების გამო" -#: access/transam/xlogrecovery.c:4690 access/transam/xlogrecovery.c:4717 access/transam/xlogrecovery.c:4747 +#: access/transam/xlogrecovery.c:4712 access/transam/xlogrecovery.c:4739 access/transam/xlogrecovery.c:4769 #, c-format msgid "%s = %d is a lower setting than on the primary server, where its value was %d." msgstr "%s = %d ნაკლებია, ვიდრე ძირითად სერვერზე, სადაც მისი მნიშვნელობაა %d." -#: access/transam/xlogrecovery.c:4699 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "თუ აღდგენა გაგრძელდება, სერვერი გამოირთვება." -#: access/transam/xlogrecovery.c:4700 +#: access/transam/xlogrecovery.c:4722 #, c-format msgid "You can then restart the server after making the necessary configuration changes." msgstr "კონფიგურაციაში საჭირო ცვლილებების შეტანის შემდეგ შეგიძლიათ სერვერი დაარესტარტოთ." -#: access/transam/xlogrecovery.c:4711 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "დაწინაურება შეუძლებელია არასაკმარისი პარამეტრების მნიშვნელობების გამო" -#: access/transam/xlogrecovery.c:4721 +#: access/transam/xlogrecovery.c:4743 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "კონფიგურაციაში საჭირო ცვლილებების შეტანის შემდეგ გადატვირთეთ სერვერი." -#: access/transam/xlogrecovery.c:4745 +#: access/transam/xlogrecovery.c:4767 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "აღდგენა შეწყვეტილია არასაკმარისი პარამეტრების მნიშვნელობების გამო" -#: access/transam/xlogrecovery.c:4751 +#: access/transam/xlogrecovery.c:4773 #, c-format msgid "You can restart the server after making the necessary configuration changes." msgstr "კონფიგურაციაში საჭირო ცვლილებების შეტანის შემდეგ შეგიძლიათ სერვერი დაარესტარტოთ." -#: access/transam/xlogrecovery.c:4792 +#: access/transam/xlogrecovery.c:4793 access/transam/xlogrecovery.c:4795 catalog/dependency.c:1153 catalog/dependency.c:1160 catalog/dependency.c:1171 commands/tablecmds.c:1519 commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 commands/vacuum.c:226 commands/view.c:441 executor/execExprInterp.c:5211 executor/execExprInterp.c:5219 libpq/auth.c:320 replication/logical/applyparallelworker.c:1048 replication/slot.c:1705 replication/slot.c:2783 +#: replication/slot.c:2785 replication/syncrep.c:1079 storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 utils/misc/guc.c:6902 utils/misc/guc.c:6945 utils/misc/guc.c:6987 +#, c-format +msgid "%s" +msgstr "%s" + +#: access/transam/xlogrecovery.c:4825 #, c-format msgid "multiple recovery targets specified" msgstr "მითითებულია აღდგენის მრავალი სამიზნე" -#: access/transam/xlogrecovery.c:4793 +#: access/transam/xlogrecovery.c:4826 #, c-format msgid "At most one of \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", \"recovery_target_xid\" may be set." msgstr "პარამეტრებიდან \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\" და \"recovery_target_xid\" მხოლოდ ერთის დაყენება შეგიძლიათ." -#: access/transam/xlogrecovery.c:4804 +#: access/transam/xlogrecovery.c:4837 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "დაშვებულია მხოლოდ ერთი მნიშვნელობა: \"immediate\"." -#: access/transam/xlogrecovery.c:4958 +#: access/transam/xlogrecovery.c:4991 #, c-format msgid "Timestamp out of range: \"%s\"." msgstr "დროის შტამპი დიაპაზონს გარეთაა: \"%s\"." -#: access/transam/xlogrecovery.c:5003 +#: access/transam/xlogrecovery.c:5036 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "\"recovery_target_timeline\" სწორი რიცხვი არაა." @@ -3675,7 +3697,7 @@ msgstr "სერვერზე შენახული მარქაფი msgid "relative path not allowed for backup stored on server" msgstr "სერვერზე დამახსოვრებული მარქაფისთვის ფარდობითი ბილიკი დაშვებული არაა" -#: backup/basebackup_server.c:102 commands/dbcommands.c:478 commands/tablespace.c:157 commands/tablespace.c:173 commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2233 storage/file/copydir.c:58 +#: backup/basebackup_server.c:102 commands/dbcommands.c:478 commands/tablespace.c:157 commands/tablespace.c:173 commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2287 storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "საქაღალდის (%s) შექმნის შეცდომა: %m" @@ -3805,12 +3827,12 @@ msgstr "\"%s\"-ზე ყველა პრივილეგიის გა msgid "grantor must be current user" msgstr "მიმნიჭებელი მიმდინარე მომხმარებელი უნდა იყოს" -#: catalog/aclchk.c:480 catalog/aclchk.c:982 +#: catalog/aclchk.c:480 catalog/aclchk.c:996 #, c-format msgid "invalid privilege type %s for relation" msgstr "ურთიერთობის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:484 catalog/aclchk.c:986 +#: catalog/aclchk.c:484 catalog/aclchk.c:1000 #, c-format msgid "invalid privilege type %s for sequence" msgstr "მიმდევრობის პრივილეგიის არასწორი ტიპი: %s" @@ -3825,7 +3847,7 @@ msgstr "ბაზის პრივილეგიის არასწორ msgid "invalid privilege type %s for domain" msgstr "დომენის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:496 catalog/aclchk.c:990 +#: catalog/aclchk.c:496 catalog/aclchk.c:1004 #, c-format msgid "invalid privilege type %s for function" msgstr "ფუნქციის პრივილეგიის არასწორი ტიპი: %s" @@ -3835,22 +3857,22 @@ msgstr "ფუნქციის პრივილეგიის არას msgid "invalid privilege type %s for language" msgstr "ენის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:504 catalog/aclchk.c:1010 +#: catalog/aclchk.c:504 catalog/aclchk.c:1024 #, c-format msgid "invalid privilege type %s for large object" msgstr "დიდი ობიექტის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:508 catalog/aclchk.c:1006 +#: catalog/aclchk.c:508 catalog/aclchk.c:1020 #, c-format msgid "invalid privilege type %s for schema" msgstr "სქემის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:512 catalog/aclchk.c:994 +#: catalog/aclchk.c:512 catalog/aclchk.c:1008 #, c-format msgid "invalid privilege type %s for procedure" msgstr "პროცედურის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:516 catalog/aclchk.c:998 +#: catalog/aclchk.c:516 catalog/aclchk.c:1012 #, c-format msgid "invalid privilege type %s for routine" msgstr "ქვეპროგრამის პრივილეგიის არასწორი ტიპი: %s" @@ -3860,7 +3882,7 @@ msgstr "ქვეპროგრამის პრივილეგიის msgid "invalid privilege type %s for tablespace" msgstr "ცხრილის სივრცის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:524 catalog/aclchk.c:1002 +#: catalog/aclchk.c:524 catalog/aclchk.c:1016 #, c-format msgid "invalid privilege type %s for type" msgstr "ტიპის პრივილეგიის არასწორი ტიპი: %s" @@ -3885,464 +3907,459 @@ msgstr "პარამეტრის პრივილეგიის არ msgid "column privileges are only valid for relations" msgstr "სვეტის პრივილეგიები მხოლოდ ურთიერთობებისთვის მოქმედებს" -#: catalog/aclchk.c:1043 +#: catalog/aclchk.c:1057 #, c-format msgid "default privileges cannot be set for columns" msgstr "სვეტებისთვის ნაგულისხმევი პრივილეგიების დაყენება შეუძლებელია" -#: catalog/aclchk.c:1079 +#: catalog/aclchk.c:1093 #, c-format msgid "permission denied to change default privileges" msgstr "ნაგულისხმევი პრივილეგიების შეცვლის წვდომა აკრძალულია" -#: catalog/aclchk.c:1197 -#, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgstr "'IN SCHEMA' პირობის გამოყენება GRANT/REVOKE ON SCHEMAS-ის გამოყენებისას შეუძლებელია" - -#: catalog/aclchk.c:1207 +#: catalog/aclchk.c:1211 catalog/aclchk.c:1222 #, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" -msgstr "'IN SCHEMA' პირობის გამოყენება GRANT/REVOKE ON LARGE OBJECT-ის გამოყენებისას შეუძლებელია" +msgid "cannot use IN SCHEMA clause when using %s" +msgstr "'IN SCHEMA' პირობის გამოყენება %s-ის გამოყენებისას შეუძლებელია" -#: catalog/aclchk.c:1561 catalog/catalog.c:684 catalog/heap.c:2621 catalog/heap.c:2940 catalog/objectaddress.c:1528 catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1000 commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 commands/tablecmds.c:8130 commands/tablecmds.c:8259 commands/tablecmds.c:8388 commands/tablecmds.c:8482 commands/tablecmds.c:8585 commands/tablecmds.c:8751 commands/tablecmds.c:8781 -#: commands/tablecmds.c:8936 commands/tablecmds.c:9039 commands/tablecmds.c:9173 commands/tablecmds.c:9286 commands/tablecmds.c:14372 commands/tablecmds.c:14575 commands/tablecmds.c:14736 commands/tablecmds.c:15964 commands/tablecmds.c:18731 commands/trigger.c:948 parser/analyze.c:2575 parser/parse_relation.c:749 parser/parse_target.c:1070 parser/parse_type.c:144 parser/parse_utilcmd.c:3663 parser/parse_utilcmd.c:3703 parser/parse_utilcmd.c:3745 -#: statistics/attribute_stats.c:209 statistics/attribute_stats.c:948 utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 +#: catalog/aclchk.c:1577 catalog/catalog.c:684 catalog/heap.c:2621 catalog/heap.c:2940 catalog/objectaddress.c:1528 catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1039 commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 commands/tablecmds.c:8130 commands/tablecmds.c:8259 commands/tablecmds.c:8413 commands/tablecmds.c:8507 commands/tablecmds.c:8610 commands/tablecmds.c:8776 commands/tablecmds.c:8806 +#: commands/tablecmds.c:8961 commands/tablecmds.c:9064 commands/tablecmds.c:9198 commands/tablecmds.c:9311 commands/tablecmds.c:14397 commands/tablecmds.c:14600 commands/tablecmds.c:14761 commands/tablecmds.c:15989 commands/tablecmds.c:18756 commands/trigger.c:948 parser/analyze.c:2575 parser/parse_relation.c:749 parser/parse_target.c:1070 parser/parse_type.c:144 parser/parse_utilcmd.c:3662 parser/parse_utilcmd.c:3702 parser/parse_utilcmd.c:3744 +#: statistics/attribute_stats.c:212 statistics/attribute_stats.c:955 utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "სვეტი \"%s\" ურთიერთობაში %s არ არსებობს" -#: catalog/aclchk.c:1806 +#: catalog/aclchk.c:1822 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\" ინდექსია" -#: catalog/aclchk.c:1813 commands/tablecmds.c:16121 commands/tablecmds.c:19650 +#: catalog/aclchk.c:1829 commands/tablecmds.c:16146 commands/tablecmds.c:19675 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\" კომპოზიტური ტიპია" -#: catalog/aclchk.c:1821 catalog/objectaddress.c:1368 commands/tablecmds.c:266 commands/tablecmds.c:19614 utils/adt/acl.c:2122 utils/adt/acl.c:2152 utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 utils/adt/acl.c:2283 +#: catalog/aclchk.c:1837 catalog/objectaddress.c:1368 commands/tablecmds.c:266 commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 utils/adt/acl.c:2283 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\" მიმდევრობა არაა" -#: catalog/aclchk.c:1859 +#: catalog/aclchk.c:1875 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "მიმდევრობა \"%s\"-ს მხოლოდ USAGE, SELECT და UPDATE პრივილეგიების მხარდაჭერა გააჩნიათ" -#: catalog/aclchk.c:1876 +#: catalog/aclchk.c:1892 #, c-format msgid "invalid privilege type %s for table" msgstr "ცხრილის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:2041 +#: catalog/aclchk.c:2057 #, c-format msgid "invalid privilege type %s for column" msgstr "სვეტის პრივილეგიის არასწორი ტიპი: %s" -#: catalog/aclchk.c:2054 +#: catalog/aclchk.c:2070 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "მიმდევრობა \"%s\"-ს მხოლოდ SELECT სვეტის პრივილეგიების მხარდაჭერა გააჩნია" -#: catalog/aclchk.c:2245 +#: catalog/aclchk.c:2261 #, c-format msgid "language \"%s\" is not trusted" msgstr "ენა \"%s\" სანდო არაა" -#: catalog/aclchk.c:2247 +#: catalog/aclchk.c:2263 #, c-format msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages." msgstr "GRANT და REVOKE არასანდო ენებზე დაშვებული არაა, რადგან არასანდო ენების გამოყენება მხოლოდ ზემომხმარებლებს შეუძლიათ." -#: catalog/aclchk.c:2398 +#: catalog/aclchk.c:2414 #, c-format msgid "cannot set privileges of array types" msgstr "მასივის ტიპების პრივილეგიის დაყენება შეუძლებელია" -#: catalog/aclchk.c:2399 +#: catalog/aclchk.c:2415 #, c-format msgid "Set the privileges of the element type instead." msgstr "ნაცვლად დააყენეთ ელემენტის ტიპის პრივილეგიები." -#: catalog/aclchk.c:2403 +#: catalog/aclchk.c:2419 #, c-format msgid "cannot set privileges of multirange types" msgstr "მრავალშუალედიანი ტიპების პრივილეგიების დაყენება შეუძლებელია" -#: catalog/aclchk.c:2404 +#: catalog/aclchk.c:2420 #, c-format msgid "Set the privileges of the range type instead." msgstr "სანაცვლოდ შუალედის ტიპის პრივილეგიების დაყენება." -#: catalog/aclchk.c:2587 +#: catalog/aclchk.c:2603 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "პრივილეგიის უცნობი ტიპი \"%s\"" -#: catalog/aclchk.c:2654 +#: catalog/aclchk.c:2670 #, c-format msgid "permission denied for aggregate %s" msgstr "წვდომა აკრძალულია აგრეგატზე: \"%s\"" -#: catalog/aclchk.c:2657 +#: catalog/aclchk.c:2673 #, c-format msgid "permission denied for collation %s" msgstr "წვდომა აკრძალულია კოლაციაზე: \"%s\"" -#: catalog/aclchk.c:2660 +#: catalog/aclchk.c:2676 #, c-format msgid "permission denied for column %s" msgstr "წვდომა აკრძალულია სვეტზე: \"%s\"" -#: catalog/aclchk.c:2663 +#: catalog/aclchk.c:2679 #, c-format msgid "permission denied for conversion %s" msgstr "წვდომა აკრძალულია გადაყვანაზე: \"%s\"" -#: catalog/aclchk.c:2666 +#: catalog/aclchk.c:2682 #, c-format msgid "permission denied for database %s" msgstr "წვდომა აკრძალულია აგრეგატზე: \"%s\"" -#: catalog/aclchk.c:2669 +#: catalog/aclchk.c:2685 #, c-format msgid "permission denied for domain %s" msgstr "წვდომა აკრძალულია დომენზე: \"%s\"" -#: catalog/aclchk.c:2672 +#: catalog/aclchk.c:2688 #, c-format msgid "permission denied for event trigger %s" msgstr "წვდომა აკრძალულია მოვლენის ტრიგერზე: \"%s\"" -#: catalog/aclchk.c:2675 +#: catalog/aclchk.c:2691 #, c-format msgid "permission denied for extension %s" msgstr "წვდომა აკრძალულია გაფართოებაზე: \"%s\"" -#: catalog/aclchk.c:2678 +#: catalog/aclchk.c:2694 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "წვდომა აკრძალულია გარე მონაცემების გადამტანზე: \"%s\"" -#: catalog/aclchk.c:2681 +#: catalog/aclchk.c:2697 #, c-format msgid "permission denied for foreign server %s" msgstr "წვდომა აკრძალულია გარე სერვერზე: \"%s\"" -#: catalog/aclchk.c:2684 +#: catalog/aclchk.c:2700 #, c-format msgid "permission denied for foreign table %s" msgstr "წვდომა აკრძალულია გარე ცხრილზე: \"%s\"" -#: catalog/aclchk.c:2687 +#: catalog/aclchk.c:2703 #, c-format msgid "permission denied for function %s" msgstr "წვდომა აკრძალულია ფუნქციაზე: \"%s\"" -#: catalog/aclchk.c:2690 +#: catalog/aclchk.c:2706 #, c-format msgid "permission denied for index %s" msgstr "წვდომა აკრძალულია ინდექზე: \"%s\"" -#: catalog/aclchk.c:2693 +#: catalog/aclchk.c:2709 #, c-format msgid "permission denied for language %s" msgstr "წვდომა აკრძალულია ენაზე: \"%s\"" -#: catalog/aclchk.c:2696 +#: catalog/aclchk.c:2712 #, c-format msgid "permission denied for large object %s" msgstr "წვდომა აკრძალულია დიდ ობიექტზე: \"%s\"" -#: catalog/aclchk.c:2699 +#: catalog/aclchk.c:2715 #, c-format msgid "permission denied for materialized view %s" msgstr "წვდომა აკრძალულია მატერიალიზებულ ხედზე: \"%s\"" -#: catalog/aclchk.c:2702 +#: catalog/aclchk.c:2718 #, c-format msgid "permission denied for operator class %s" msgstr "წვდომა აკრძალულია ოპერატორის კლასზე: \"%s\"" -#: catalog/aclchk.c:2705 +#: catalog/aclchk.c:2721 #, c-format msgid "permission denied for operator %s" msgstr "წვდომა აკრძალულია ოპერატორზე: \"%s\"" -#: catalog/aclchk.c:2708 +#: catalog/aclchk.c:2724 #, c-format msgid "permission denied for operator family %s" msgstr "წვდომა აკრძალულია ოპერატორის ოჯახზე: \"%s\"" -#: catalog/aclchk.c:2711 +#: catalog/aclchk.c:2727 #, c-format msgid "permission denied for parameter %s" msgstr "წვდომა აკრძალულია პარამეტრზე: \"%s\"" -#: catalog/aclchk.c:2714 +#: catalog/aclchk.c:2730 #, c-format msgid "permission denied for policy %s" msgstr "წვდომა აკრძალულია წესზე: \"%s\"" -#: catalog/aclchk.c:2717 +#: catalog/aclchk.c:2733 #, c-format msgid "permission denied for procedure %s" msgstr "წვდომა აკრძალულია პროცედურაზე: \"%s\"" -#: catalog/aclchk.c:2720 +#: catalog/aclchk.c:2736 #, c-format msgid "permission denied for publication %s" msgstr "წვდომა აკრძალულია პუბლიკაციაზე: \"%s\"" -#: catalog/aclchk.c:2723 +#: catalog/aclchk.c:2739 #, c-format msgid "permission denied for routine %s" msgstr "წვდომა აკრძალულია ქვეპროგრამაზე: \"%s\"" -#: catalog/aclchk.c:2726 +#: catalog/aclchk.c:2742 #, c-format msgid "permission denied for schema %s" msgstr "წვდომა აკრძალულია სქემაზე: \"%s\"" -#: catalog/aclchk.c:2729 commands/sequence.c:654 commands/sequence.c:880 commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 +#: catalog/aclchk.c:2745 commands/sequence.c:654 commands/sequence.c:880 commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 #, c-format msgid "permission denied for sequence %s" msgstr "წვდომა აკრძალულია მიმდევრობაზე: \"%s\"" -#: catalog/aclchk.c:2732 +#: catalog/aclchk.c:2748 #, c-format msgid "permission denied for statistics object %s" msgstr "წვდომა აკრძალულია სტატისტიკის ობიექტზე: \"%s\"" -#: catalog/aclchk.c:2735 +#: catalog/aclchk.c:2751 #, c-format msgid "permission denied for subscription %s" msgstr "წვდომა აკრძალულია გამოწერაზე: \"%s\"" -#: catalog/aclchk.c:2738 +#: catalog/aclchk.c:2754 #, c-format msgid "permission denied for table %s" msgstr "წვდომა აკრძალულია ცხრილზე: \"%s\"" -#: catalog/aclchk.c:2741 +#: catalog/aclchk.c:2757 #, c-format msgid "permission denied for tablespace %s" msgstr "წვდომა აკრძალულია ცხრილების სივრცეზე: \"%s\"" -#: catalog/aclchk.c:2744 +#: catalog/aclchk.c:2760 #, c-format msgid "permission denied for text search configuration %s" msgstr "წვდომა აკრძალულია ტექსტის ძებნის კონფიგურაციაზე: \"%s\"" -#: catalog/aclchk.c:2747 +#: catalog/aclchk.c:2763 #, c-format msgid "permission denied for text search dictionary %s" msgstr "წვდომა აკრძალულია ტექსტის ძებნის ლექსიკონზე: \"%s\"" -#: catalog/aclchk.c:2750 +#: catalog/aclchk.c:2766 #, c-format msgid "permission denied for type %s" msgstr "წვდომა აკრძალულია ტიპტზე: \"%s\"" -#: catalog/aclchk.c:2753 +#: catalog/aclchk.c:2769 #, c-format msgid "permission denied for view %s" msgstr "წვდომა აკრძალულია ხედზე: \"%s\"" -#: catalog/aclchk.c:2789 +#: catalog/aclchk.c:2805 #, c-format msgid "must be owner of aggregate %s" msgstr "უნდა ბრძანდებოდეთ აგრეგატის მფლობელი: %s" -#: catalog/aclchk.c:2792 +#: catalog/aclchk.c:2808 #, c-format msgid "must be owner of collation %s" msgstr "უნდა ბრძანდებოდეთ კოლაციის მფლობელი: %s" -#: catalog/aclchk.c:2795 +#: catalog/aclchk.c:2811 #, c-format msgid "must be owner of conversion %s" msgstr "უნდა ბრძანდებოდეთ გადაყვანის მფლობელი: %s" -#: catalog/aclchk.c:2798 +#: catalog/aclchk.c:2814 #, c-format msgid "must be owner of database %s" msgstr "უნდა ბრძანდებოდეთ ბაზის მფლობელი: %s" -#: catalog/aclchk.c:2801 +#: catalog/aclchk.c:2817 #, c-format msgid "must be owner of domain %s" msgstr "უნდა ბრძანდებოდეთ დომენის მფლობელი: %s" -#: catalog/aclchk.c:2804 +#: catalog/aclchk.c:2820 #, c-format msgid "must be owner of event trigger %s" msgstr "უნდა ბრძანდებოდეთ მოვლენის ტრიგერის მფლობელი: %s" -#: catalog/aclchk.c:2807 +#: catalog/aclchk.c:2823 #, c-format msgid "must be owner of extension %s" msgstr "უნდა ბრძანდებოდეთ გაფართოების მფლობელი: %s" -#: catalog/aclchk.c:2810 +#: catalog/aclchk.c:2826 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "უნდა ბრძანდებოდეთ გარე ინფორმაციის გადამტანის მფლობელი: %s" -#: catalog/aclchk.c:2813 +#: catalog/aclchk.c:2829 #, c-format msgid "must be owner of foreign server %s" msgstr "უნდა ბრძანდებოდეთ გარე სერვერის მფლობელი: %s" -#: catalog/aclchk.c:2816 +#: catalog/aclchk.c:2832 #, c-format msgid "must be owner of foreign table %s" msgstr "უნდა ბრძანდებოდეთ გარე ცხრილის მფლობელი: %s" -#: catalog/aclchk.c:2819 +#: catalog/aclchk.c:2835 #, c-format msgid "must be owner of function %s" msgstr "უნდა ბრძანდებოდეთ ფუნქციის მფლობელი: %s" -#: catalog/aclchk.c:2822 +#: catalog/aclchk.c:2838 #, c-format msgid "must be owner of index %s" msgstr "უნდა ბრძანდებოდეთ ინდექსის მფლობელი: %s" -#: catalog/aclchk.c:2825 +#: catalog/aclchk.c:2841 #, c-format msgid "must be owner of language %s" msgstr "უნდა ბრძანდებოდეთ ენის მფლობელი: %s" -#: catalog/aclchk.c:2828 +#: catalog/aclchk.c:2844 #, c-format msgid "must be owner of large object %s" msgstr "უნდა ბრძანდებოდეთ დიდი ობიექტის მფლობელი: %s" -#: catalog/aclchk.c:2831 +#: catalog/aclchk.c:2847 #, c-format msgid "must be owner of materialized view %s" msgstr "უნდა ბრძანდებოდეთ მატერიალიზებული ხედის მფლობელი: %s" -#: catalog/aclchk.c:2834 +#: catalog/aclchk.c:2850 #, c-format msgid "must be owner of operator class %s" msgstr "უნდა ბრძანდებოდეთ ოპერატორის კლასის მფლობელი: %s" -#: catalog/aclchk.c:2837 +#: catalog/aclchk.c:2853 #, c-format msgid "must be owner of operator %s" msgstr "უნდა ბრძანდებოდეთ ოპერატორის მფლობელი: %s" -#: catalog/aclchk.c:2840 +#: catalog/aclchk.c:2856 #, c-format msgid "must be owner of operator family %s" msgstr "უნდა ბრძანდებოდეთ ოპერატორის ოჯახის მფლობელი: %s" -#: catalog/aclchk.c:2843 +#: catalog/aclchk.c:2859 #, c-format msgid "must be owner of procedure %s" msgstr "უნდა ბრძანდებოდეთ პროცედურის მფლობელი: %s" -#: catalog/aclchk.c:2846 +#: catalog/aclchk.c:2862 #, c-format msgid "must be owner of publication %s" msgstr "უნდა ბრძანდებოდეთ პუბლიკაციისმფლობელი: %s" -#: catalog/aclchk.c:2849 +#: catalog/aclchk.c:2865 #, c-format msgid "must be owner of routine %s" msgstr "უნდა ბრძანდებოდეთ ქვეპროგრამის მფლობელი: %s" -#: catalog/aclchk.c:2852 +#: catalog/aclchk.c:2868 #, c-format msgid "must be owner of sequence %s" msgstr "უნდა ბრძანდებოდეთ მიმდევრობის მფლობელი: %s" -#: catalog/aclchk.c:2855 +#: catalog/aclchk.c:2871 #, c-format msgid "must be owner of subscription %s" msgstr "უნდა ბრძანდებოდეთ გამოწერის მფლობელი: %s" -#: catalog/aclchk.c:2858 +#: catalog/aclchk.c:2874 #, c-format msgid "must be owner of table %s" msgstr "უნდა ბრძანდებოდეთ ცხრილის მფლობელი: %s" -#: catalog/aclchk.c:2861 +#: catalog/aclchk.c:2877 #, c-format msgid "must be owner of type %s" msgstr "უნდა ბრძანდებოდეთ ტიპის მფლობელი: %s" -#: catalog/aclchk.c:2864 +#: catalog/aclchk.c:2880 #, c-format msgid "must be owner of view %s" msgstr "უნდა ბრძანდებოდეთ ხედის მფლობელი: %s" -#: catalog/aclchk.c:2867 +#: catalog/aclchk.c:2883 #, c-format msgid "must be owner of schema %s" msgstr "უნდა ბრძანდებოდეთ სქემის მფლობელი: %s" -#: catalog/aclchk.c:2870 +#: catalog/aclchk.c:2886 #, c-format msgid "must be owner of statistics object %s" msgstr "უნდა ბრძანდებოდეთ სტატისტიკის ობიექტის მფლობელი: %s" -#: catalog/aclchk.c:2873 +#: catalog/aclchk.c:2889 #, c-format msgid "must be owner of tablespace %s" msgstr "უნდა ბრძანდებოდეთ ცხრილების სივრცის მფლობელი: %s" -#: catalog/aclchk.c:2876 +#: catalog/aclchk.c:2892 #, c-format msgid "must be owner of text search configuration %s" msgstr "უნდა ბრძანდებოდეთ ტექსტის ძებნის კონფიგურაციის მფლობელი: %s" -#: catalog/aclchk.c:2879 +#: catalog/aclchk.c:2895 #, c-format msgid "must be owner of text search dictionary %s" msgstr "უნდა ბრძანდებოდეთ ტექსტის ძებნის ლექსიკონის მფლობელი: %s" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2909 #, c-format msgid "must be owner of relation %s" msgstr "უნდა ბრძანდებოდეთ ურთიერთობის მფლობელი: %s" -#: catalog/aclchk.c:2939 +#: catalog/aclchk.c:2955 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "რელაციის (%2$s) სვეტზე (%1$s) წვდომა აკრძალულია" -#: catalog/aclchk.c:3173 catalog/aclchk.c:3192 +#: catalog/aclchk.c:3189 catalog/aclchk.c:3208 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "ურთერთობის (OID-ით %2$u) ატრიბუტი არ არსებობს: %1$d" -#: catalog/aclchk.c:3230 catalog/aclchk.c:3293 catalog/aclchk.c:3932 +#: catalog/aclchk.c:3246 catalog/aclchk.c:3309 catalog/aclchk.c:3948 #, c-format msgid "relation with OID %u does not exist" msgstr "ურთიერთობა OID-ით %u არ არსებობს" -#: catalog/aclchk.c:3478 +#: catalog/aclchk.c:3494 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "პარამეტრის ACL OID-ით %u არ არსებობს" -#: catalog/aclchk.c:3557 catalog/objectaddress.c:1055 catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 storage/large_object/inv_api.c:247 +#: catalog/aclchk.c:3573 catalog/objectaddress.c:1055 catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 storage/large_object/inv_api.c:247 #, c-format msgid "large object %u does not exist" msgstr "დიდი ობიექტი %u არ არსებობს" -#: catalog/aclchk.c:3651 commands/collationcmds.c:849 commands/publicationcmds.c:1846 +#: catalog/aclchk.c:3667 commands/collationcmds.c:849 commands/publicationcmds.c:1851 #, c-format msgid "schema with OID %u does not exist" msgstr "სქემა OID-ით %u არ არსებობს" -#: catalog/aclchk.c:3725 catalog/aclchk.c:3752 catalog/aclchk.c:3781 utils/cache/typcache.c:473 utils/cache/typcache.c:528 +#: catalog/aclchk.c:3741 catalog/aclchk.c:3768 catalog/aclchk.c:3797 utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" msgstr "ტიპი OID-ით %u არ არსებობს" @@ -4376,7 +4393,7 @@ msgstr "%s()-ის გამოსაძახებლად ზემომ msgid "pg_nextoid() can only be used on system catalogs" msgstr "pg_nextoid() მხოლოდ სისტემურ კატალოგებზე შეიძლება იყოს გამოყენებული" -#: catalog/catalog.c:676 parser/parse_utilcmd.c:2448 +#: catalog/catalog.c:676 parser/parse_utilcmd.c:2447 #, c-format msgid "index \"%s\" does not belong to table \"%s\"" msgstr "ინდექსი %s ცხრილს \"%s\" არ მიეკუთვნება" @@ -4436,12 +4453,6 @@ msgstr[1] "" msgid "cannot drop %s because other objects depend on it" msgstr "%s-ის წაშლა შეუძლებელია, რადგან არის ობიექტები, რომლებიც მას ეყრდნობა" -#: catalog/dependency.c:1153 catalog/dependency.c:1160 catalog/dependency.c:1171 commands/tablecmds.c:1519 commands/tablecmds.c:16715 commands/tablespace.c:460 commands/user.c:1302 commands/vacuum.c:225 commands/view.c:441 executor/execExprInterp.c:5211 executor/execExprInterp.c:5219 libpq/auth.c:320 replication/logical/applyparallelworker.c:1041 replication/slot.c:1635 replication/syncrep.c:1079 storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 -#: storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 utils/misc/guc.c:6902 utils/misc/guc.c:6945 utils/misc/guc.c:6987 -#, c-format -msgid "%s" -msgstr "%s" - #: catalog/dependency.c:1154 catalog/dependency.c:1161 #, c-format msgid "Use DROP ... CASCADE to drop the dependent objects too." @@ -4469,7 +4480,7 @@ msgstr "%s ტიპის კონსტანტის აქ გამოყ msgid "transition table \"%s\" cannot be referenced in a persistent object" msgstr "გარდასვლის ცხრილზე \"%s\" მიმართვა შეუძლებელია მუდმივი ობიექტიდან" -#: catalog/dependency.c:2390 parser/parse_relation.c:3513 parser/parse_relation.c:3523 statistics/attribute_stats.c:221 +#: catalog/dependency.c:2390 parser/parse_relation.c:3513 parser/parse_relation.c:3523 statistics/attribute_stats.c:224 statistics/attribute_stats.c:596 statistics/attribute_stats.c:604 #, c-format msgid "column %d of relation \"%s\" does not exist" msgstr "სვეტი \"%d\" ურთიერთობაში %s არ არსებობს" @@ -4586,7 +4597,7 @@ msgstr "შეზღუდვის შემმოწმებელი \"%s\" msgid "cannot add not-null constraint on system column \"%s\"" msgstr "არანულოვანი შეზღუდვის დამატება შეუძლებელია სისტემურ სვეტზე \"%s\"" -#: catalog/heap.c:2653 catalog/heap.c:2779 catalog/heap.c:3030 catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9796 +#: catalog/heap.c:2653 catalog/heap.c:2779 catalog/heap.c:3030 catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9821 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "შეზღუდვა \"%s\" ურთიერთობისთვის \"%s\" უკვე არსებობს" @@ -4616,12 +4627,12 @@ msgstr "შეზღუდვა \"%s\" კონფლიქტშია შე msgid "merging constraint \"%s\" with inherited definition" msgstr "შეზღუდვის (\"%s\") შერწყმა მემკვიდრეობითი აღწერით" -#: catalog/heap.c:2848 catalog/pg_constraint.c:786 catalog/pg_constraint.c:1137 commands/tablecmds.c:3179 commands/tablecmds.c:3499 commands/tablecmds.c:7286 commands/tablecmds.c:7967 commands/tablecmds.c:17558 commands/tablecmds.c:17740 +#: catalog/heap.c:2848 catalog/pg_constraint.c:786 catalog/pg_constraint.c:1137 commands/tablecmds.c:3179 commands/tablecmds.c:3499 commands/tablecmds.c:7286 commands/tablecmds.c:7967 commands/tablecmds.c:17583 commands/tablecmds.c:17765 #, c-format msgid "too many inheritance parents" msgstr "მეტისმეტად ბევრი მემკვიდრეობის მშობლები" -#: catalog/heap.c:2965 parser/parse_utilcmd.c:2656 +#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 #, c-format msgid "conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" msgstr "" @@ -4681,12 +4692,12 @@ msgstr "თაობის გამოსახულება მომხმ msgid "generation expression is not immutable" msgstr "თაობის გამოსახულება უცვლელი არაა" -#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 +#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1288 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "სვეტის \"%s\" ტიპია %s, მაგრამ ნაგულისხმევი გამოსახულების ტიპია %s" -#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 parser/parse_target.c:595 parser/parse_target.c:885 parser/parse_target.c:895 rewrite/rewriteHandler.c:1290 +#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 parser/parse_target.c:595 parser/parse_target.c:885 parser/parse_target.c:895 rewrite/rewriteHandler.c:1293 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "საჭიროა გამოსახულების გარდაქმნა ან გადაყვანა." @@ -4721,7 +4732,7 @@ msgstr "ცხრილი \"%s\" მიუთითებს \"%s\"." msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "წაშალეთ შემცველობა ცხრილისთვის \"%s\" პარალელურად, ან გამოიყენეთ TRUNCATE ... CASCADE." -#: catalog/index.c:220 parser/parse_utilcmd.c:2353 +#: catalog/index.c:220 parser/parse_utilcmd.c:2352 #, c-format msgid "multiple primary keys for table \"%s\" are not allowed" msgstr "ცხრილისთვის \"%s\" ერთზე მეტი ძირითადი გასაღები დაუშვებელია" @@ -4831,7 +4842,7 @@ msgstr "ბლოკის მიღების შეცდომა ურთ msgid "could not obtain lock on relation \"%s\"" msgstr "ბლოკის მიღების შეცდომა ურთიერთობაზე %s\"" -#: catalog/namespace.c:633 parser/parse_relation.c:1447 statistics/stat_utils.c:231 +#: catalog/namespace.c:633 parser/parse_relation.c:1447 #, c-format msgid "relation \"%s.%s\" does not exist" msgstr "ურთიერთობა \"%s.%s\" არ არსებობს" @@ -4841,7 +4852,7 @@ msgstr "ურთიერთობა \"%s.%s\" არ არსებობს msgid "relation \"%s\" does not exist" msgstr "ურთიერთობა \"%s\" არ არსებობს" -#: catalog/namespace.c:704 catalog/namespace.c:3522 commands/extension.c:1804 commands/extension.c:1810 +#: catalog/namespace.c:704 catalog/namespace.c:3525 commands/extension.c:1804 commands/extension.c:1810 #, c-format msgid "no schema has been selected to create in" msgstr "შიგნით შესაქმნელი სქემა მონიშნული არაა" @@ -4866,97 +4877,97 @@ msgstr "დროებით სქემებში მხოლოდ დრ msgid "statistics object \"%s\" does not exist" msgstr "სტატისტიკის ობიექტი \"%s\" არ არსებობს" -#: catalog/namespace.c:2761 +#: catalog/namespace.c:2764 #, c-format msgid "text search parser \"%s\" does not exist" msgstr "ტექსტის ძებნის დამმუშავებელი \"%s\" არ არსებობს" -#: catalog/namespace.c:2906 utils/adt/regproc.c:1459 +#: catalog/namespace.c:2909 utils/adt/regproc.c:1459 #, c-format msgid "text search dictionary \"%s\" does not exist" msgstr "ტექსტის ძებნის ლექსიკონი \"%s\" არ არსებობს" -#: catalog/namespace.c:3052 +#: catalog/namespace.c:3055 #, c-format msgid "text search template \"%s\" does not exist" msgstr "ტექსტის ძებნის შაბლონი \"%s\" არ არსებობს" -#: catalog/namespace.c:3197 commands/tsearchcmds.c:1168 utils/adt/regproc.c:1349 utils/cache/ts_cache.c:635 +#: catalog/namespace.c:3200 commands/tsearchcmds.c:1168 utils/adt/regproc.c:1349 utils/cache/ts_cache.c:635 #, c-format msgid "text search configuration \"%s\" does not exist" msgstr "ტექსტის ძებნის კონფიგურაცია \"%s\" არ არსებობს" -#: catalog/namespace.c:3329 parser/parse_expr.c:866 parser/parse_target.c:1262 +#: catalog/namespace.c:3332 parser/parse_expr.c:867 parser/parse_target.c:1262 #, c-format msgid "cross-database references are not implemented: %s" msgstr "ბაზებს შორის ბმულები განხორციელებული არაა: %s" -#: catalog/namespace.c:3335 gram.y:19355 gram.y:19395 parser/parse_expr.c:873 parser/parse_target.c:1269 +#: catalog/namespace.c:3338 gram.y:19355 gram.y:19395 parser/parse_expr.c:874 parser/parse_target.c:1269 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "არასწორი სრული სახელი (ძალიან ბევრი წერტილიანი სახელი): %s" -#: catalog/namespace.c:3465 +#: catalog/namespace.c:3468 #, c-format msgid "cannot move objects into or out of temporary schemas" msgstr "ობიექტის დროებითი სქემიდან გამოტანა ან სქემაში შეტანა შეუძლებელია" -#: catalog/namespace.c:3471 +#: catalog/namespace.c:3474 #, c-format msgid "cannot move objects into or out of TOAST schema" msgstr "\"TOAST\" სქემიდან ობიექტს ვერც გამოიტანთ, ვერც შეიტანთ" -#: catalog/namespace.c:3544 commands/schemacmds.c:264 commands/schemacmds.c:344 commands/tablecmds.c:1464 utils/adt/regproc.c:1688 +#: catalog/namespace.c:3547 commands/schemacmds.c:264 commands/schemacmds.c:344 commands/tablecmds.c:1464 utils/adt/regproc.c:1688 #, c-format msgid "schema \"%s\" does not exist" msgstr "სქემა \"%s\" არ არსებობს" -#: catalog/namespace.c:3575 +#: catalog/namespace.c:3578 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "ურთიერთობის არასწორი სახელი (ძალიან ბევრი წერტილიანი სახელი): %s" -#: catalog/namespace.c:4016 utils/adt/regproc.c:1056 +#: catalog/namespace.c:4019 utils/adt/regproc.c:1056 #, c-format msgid "collation \"%s\" for encoding \"%s\" does not exist" msgstr "კოლაცია \"%s\" კოდირებისთვის \"%s\" არ არსებობს" -#: catalog/namespace.c:4071 +#: catalog/namespace.c:4074 #, c-format msgid "conversion \"%s\" does not exist" msgstr "გადაყვანა \"%s\" არ არსებობს" -#: catalog/namespace.c:4412 +#: catalog/namespace.c:4415 #, c-format msgid "permission denied to create temporary tables in database \"%s\"" msgstr "ბაზაში \"%s\" დროებითი ცხრილების შექმნის წვდომა აკრძალულია" -#: catalog/namespace.c:4428 +#: catalog/namespace.c:4431 #, c-format msgid "cannot create temporary tables during recovery" msgstr "აღდგენისას დროებითი ცხრილების შექმნა შეუძლებელია" -#: catalog/namespace.c:4434 +#: catalog/namespace.c:4437 #, c-format msgid "cannot create temporary tables during a parallel operation" msgstr "პარალელური ოპერაციის მიმდინარეობისას დროებითი ცხრილების შექმნა შეუძლებელია" -#: catalog/objectaddress.c:1376 commands/policy.c:93 commands/policy.c:373 commands/tablecmds.c:260 commands/tablecmds.c:302 commands/tablecmds.c:2387 commands/tablecmds.c:14510 +#: catalog/objectaddress.c:1376 commands/policy.c:93 commands/policy.c:373 commands/tablecmds.c:260 commands/tablecmds.c:302 commands/tablecmds.c:2387 commands/tablecmds.c:14535 #, c-format msgid "\"%s\" is not a table" msgstr "\"%s\" ცხრილი არაა" -#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 commands/tablecmds.c:19619 commands/view.c:113 +#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 commands/tablecmds.c:19644 commands/view.c:113 #, c-format msgid "\"%s\" is not a view" msgstr "\"%s\" ხედი არაა" -#: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 commands/tablecmds.c:19624 +#: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 commands/tablecmds.c:19649 #, c-format msgid "\"%s\" is not a materialized view" msgstr "\"%s\" არ არის მატერიალიზებული ხედი" -#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 commands/tablecmds.c:19629 +#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 commands/tablecmds.c:19654 #, c-format msgid "\"%s\" is not a foreign table" msgstr "\"%s\" გარე ცხრილი არაა" @@ -5639,17 +5650,17 @@ msgstr "კოლაცია \"%s\" კოდირებისთვის \"% msgid "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation \"%s\"" msgstr "ურთიერთობაზე \"%2$s\" NOT NULL შეზღუდვის \"%1$s\" NO INHERIT სტატუსს ვერ შეცვლით" -#: catalog/pg_constraint.c:765 commands/tablecmds.c:9559 +#: catalog/pg_constraint.c:765 commands/tablecmds.c:9584 #, c-format msgid "You might need to make the existing constraint inheritable using %s." msgstr "" -#: catalog/pg_constraint.c:775 +#: catalog/pg_constraint.c:775 commands/tablecmds.c:8301 #, c-format msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" msgstr "შეუთავსებელი NOT VALID შეზღუდვა \"%s\" ურთიერთობაზე \"%s\"" -#: catalog/pg_constraint.c:777 commands/tablecmds.c:9571 +#: catalog/pg_constraint.c:777 commands/tablecmds.c:8303 commands/tablecmds.c:9596 #, c-format msgid "You might need to validate it using %s." msgstr "როგორც ჩანს, საჭიროა მისი სისწორე %s-ით დაამოწმოთ." @@ -5689,12 +5700,12 @@ msgstr "გადაყვანა უკვე არსებობს: \"%s\ msgid "default conversion for %s to %s already exists" msgstr "%s-დან %s-ზე ნაგულისხმევი გადაყვანა უკვე არსებობს" -#: catalog/pg_depend.c:223 commands/extension.c:3665 +#: catalog/pg_depend.c:223 commands/extension.c:3689 #, c-format msgid "%s is already a member of extension \"%s\"" msgstr "%s გაფართოების (\"%s\") წევრს უკვე წარმოადგენს" -#: catalog/pg_depend.c:230 catalog/pg_depend.c:281 commands/extension.c:3705 +#: catalog/pg_depend.c:230 catalog/pg_depend.c:281 commands/extension.c:3729 #, c-format msgid "%s is not a member of extension \"%s\"" msgstr "%s გაფართოების \"%s\"წევრი არაა" @@ -5759,7 +5770,7 @@ msgstr "დანაყოფის \"%s\" მოხსნის შეცდო msgid "The partition is being detached concurrently or has an unfinished detach." msgstr "ხდება დანაყოფის პარალელური მოხსნა ან მოხსნა დაუმთავრებელია." -#: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 commands/tablecmds.c:17866 +#: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 commands/tablecmds.c:17891 #, c-format msgid "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending detach operation." msgstr "მოხსნის ოპერაციის დასასრულებლად გამოიყენეთ ALTER TABLE ... DETACH PARTITION ... FINALIZE ." @@ -6146,10 +6157,10 @@ msgstr "შეცდომა მრავალდიაპაზონია msgid "You can manually specify a multirange type name using the \"multirange_type_name\" attribute." msgstr "მრავალდიაპაზონიანი ტიპის სახელი ხელით, \"multirange_type_name\" ატრიბუტით უნდა მიუთითოთ." -#: catalog/storage.c:549 storage/buffer/bufmgr.c:7332 +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7338 #, c-format -msgid "invalid page in block %u of relation %s" -msgstr "ურთიერთობის (%2$s) ბლოკის (%1$u) არასწორ გვერდი" +msgid "invalid page in block %u of relation \"%s\"" +msgstr "არასწორი გვერდი ბლოკში %u ურთიერთობისთვის \"%s\"" #: commands/aggregatecmds.c:167 #, c-format @@ -6241,7 +6252,7 @@ msgstr "პარამეტრი \"parallel\" SAFE, RESTRICTED ან UNSAFE msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE" msgstr "პარამეტრი \"%s\" READ_ONLY, SHAREABLE, ან READ_WRITE უნდა იყოს" -#: commands/alter.c:83 commands/event_trigger.c:191 +#: commands/alter.c:83 commands/event_trigger.c:195 #, c-format msgid "event trigger \"%s\" already exists" msgstr "მოვლენის ტრიგერი უკვე არსებობს: %s" @@ -6261,7 +6272,7 @@ msgstr "სერვერი \"%s\" უკვე არსებობს" msgid "language \"%s\" already exists" msgstr "ენა \"%s\" უკვე არსებობს" -#: commands/alter.c:95 commands/publicationcmds.c:865 +#: commands/alter.c:95 commands/publicationcmds.c:870 #, c-format msgid "publication \"%s\" already exists" msgstr "პუბლიკაცია \"%s\" უკვე არსებობს" @@ -6306,12 +6317,12 @@ msgstr "ტექსტის ძიების კონფიგურაც msgid "must be superuser to rename %s" msgstr "%s -ის სახელის გადარქმევისთვის საჭიროა ზემომხმარებლის უფლებები" -#: commands/alter.c:256 commands/subscriptioncmds.c:608 commands/subscriptioncmds.c:1147 commands/subscriptioncmds.c:1231 commands/subscriptioncmds.c:1989 +#: commands/alter.c:256 commands/subscriptioncmds.c:608 commands/subscriptioncmds.c:1147 commands/subscriptioncmds.c:1231 commands/subscriptioncmds.c:1991 #, c-format msgid "password_required=false is superuser-only" msgstr "password_required=false მხოლოდ superuser-only-სთვისაა" -#: commands/alter.c:257 commands/subscriptioncmds.c:609 commands/subscriptioncmds.c:1148 commands/subscriptioncmds.c:1232 commands/subscriptioncmds.c:1990 +#: commands/alter.c:257 commands/subscriptioncmds.c:609 commands/subscriptioncmds.c:1148 commands/subscriptioncmds.c:1232 commands/subscriptioncmds.c:1992 #, c-format msgid "Subscriptions with the password_required option set to false may only be created or modified by the superuser." msgstr "გამოწერები, რომლის password_required პარამეტრი ჭეშმარიტი არაა, მხოლოდ ზემომხმარებლის მიერ შეიძლება შეიქმნას და შეიცვალოს." @@ -6346,7 +6357,7 @@ msgstr "წვდომის მეთოდი \"%s\" არ არსებ msgid "handler function is not specified" msgstr "დამმუშავებელი ფუნქცია მითითებული არაა" -#: commands/amcmds.c:264 commands/event_trigger.c:200 commands/foreigncmds.c:500 commands/proclang.c:78 commands/trigger.c:706 parser/parse_clause.c:941 +#: commands/amcmds.c:264 commands/event_trigger.c:204 commands/foreigncmds.c:500 commands/proclang.c:78 commands/trigger.c:706 parser/parse_clause.c:941 #, c-format msgid "function %s must return type %s" msgstr "ფუნქციამ (%s) აუცილებლად უნდა დააბრუნოს ტიპი %s" @@ -6401,27 +6412,27 @@ msgstr "\"%s.%s\"-ის მემკვიდრეობის ხის ა msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables" msgstr "\"%s.%s\"-ის მემკვიდრეობის ხის ანალიზის გამოტოვება --- მემკვიდრეობითობის ხე გაანალიზებად შვილ ცხრილებს არ შეიცავს" -#: commands/async.c:612 +#: commands/async.c:611 #, c-format msgid "channel name cannot be empty" msgstr "არხის სახელი ცარიელი არ შეიძლება იყოს" -#: commands/async.c:618 +#: commands/async.c:617 #, c-format msgid "channel name too long" msgstr "არხის სახელი ძალიან გრძელია" -#: commands/async.c:623 +#: commands/async.c:622 #, c-format msgid "payload string too long" msgstr "სასარგებლო დატვირთვის სტრიქონი ძალიან გრძელია" -#: commands/async.c:842 +#: commands/async.c:841 #, c-format msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY" msgstr "შეუძლებელია განვახორციელო PREPARE ტრანზაქციაზე, რომელმაც შეასრულა LISTEN, UNLSTEN ან NOTIFY" -#: commands/async.c:946 +#: commands/async.c:945 #, c-format msgid "too many notifications in the NOTIFY queue" msgstr "\"NOTIFY\" რიგში მეტისმეტად ბევრი გაფრთხილებაა" @@ -6441,10 +6452,10 @@ msgstr "სერვერის პროცესი PID-ით %d უძვ msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction." msgstr "რიგის NOTIFY დაცარიელება პროცესის მიერ მიმდინარე ტრანზაქციის დასრულებამდე შეუძლებელია." -#: commands/cluster.c:127 +#: commands/cluster.c:127 commands/dbcommands.c:2356 commands/explain_state.c:165 commands/indexcmds.c:2846 commands/vacuum.c:234 commands/vacuum.c:308 #, c-format -msgid "unrecognized CLUSTER option \"%s\"" -msgstr "\"CLUSTER\"-ის უცნობი პარამეტრი \"%s\"" +msgid "unrecognized %s option \"%s\"" +msgstr "უცნობი %s-ის პარამეტრი: \"%s\"" #: commands/cluster.c:158 commands/cluster.c:421 #, c-format @@ -6456,7 +6467,7 @@ msgstr "სხვა სესიების დროებით ცხრი msgid "there is no previously clustered index for table \"%s\"" msgstr "ცხრილისთვის \"%s\" წინასწარ დაკლასტერებული ინდექსი არ არსებობს" -#: commands/cluster.c:190 commands/tablecmds.c:16422 commands/tablecmds.c:18488 +#: commands/cluster.c:190 commands/tablecmds.c:16447 commands/tablecmds.c:18513 #, c-format msgid "index \"%s\" for table \"%s\" does not exist" msgstr "ინდექსი %s ცხრილისთვის %s არ არსებობს" @@ -6471,7 +6482,7 @@ msgstr "გაზიარებული კატალოგის დაკ msgid "cannot vacuum temporary tables of other sessions" msgstr "სხვა სესიების დროებითი ცხრილების მომტვერსასრუტება შეუძლებელია" -#: commands/cluster.c:507 commands/tablecmds.c:18498 +#: commands/cluster.c:507 commands/tablecmds.c:18523 #, c-format msgid "\"%s\" is not an index for table \"%s\"" msgstr "\"%s\" არ წარმოადგენს ინდექსს ცხრილისთვის \"%s\"" @@ -6535,8 +6546,8 @@ msgstr "კლასტერისთვის \"%s\" წვდომა აკ msgid "collation attribute \"%s\" not recognized" msgstr "კოლაციის უცნობი ატრიბუტი: \"%s\"" -#: commands/collationcmds.c:123 commands/collationcmds.c:129 commands/define.c:375 commands/tablecmds.c:8369 replication/pgoutput/pgoutput.c:320 replication/pgoutput/pgoutput.c:343 replication/pgoutput/pgoutput.c:357 replication/pgoutput/pgoutput.c:367 replication/pgoutput/pgoutput.c:377 replication/pgoutput/pgoutput.c:387 replication/pgoutput/pgoutput.c:399 replication/walsender.c:1123 replication/walsender.c:1145 replication/walsender.c:1155 -#: replication/walsender.c:1164 replication/walsender.c:1406 replication/walsender.c:1415 +#: commands/collationcmds.c:123 commands/collationcmds.c:129 commands/define.c:375 commands/tablecmds.c:8394 replication/pgoutput/pgoutput.c:321 replication/pgoutput/pgoutput.c:344 replication/pgoutput/pgoutput.c:362 replication/pgoutput/pgoutput.c:372 replication/pgoutput/pgoutput.c:382 replication/pgoutput/pgoutput.c:392 replication/pgoutput/pgoutput.c:404 replication/walsender.c:1137 replication/walsender.c:1159 replication/walsender.c:1169 +#: replication/walsender.c:1178 replication/walsender.c:1420 replication/walsender.c:1429 #, c-format msgid "conflicting or redundant options" msgstr "კონფლიქტური ან ზედმეტი პარამეტრები" @@ -6603,22 +6614,22 @@ msgstr "ნაგულისხმევი კოლაციის ვერ #. translator: %s is an SQL command #. translator: %s is an SQL ALTER command -#: commands/collationcmds.c:443 commands/subscriptioncmds.c:1445 commands/tablecmds.c:8146 commands/tablecmds.c:8156 commands/tablecmds.c:8158 commands/tablecmds.c:16124 commands/tablecmds.c:19652 commands/tablecmds.c:19673 commands/typecmds.c:3786 commands/typecmds.c:3871 commands/typecmds.c:4225 +#: commands/collationcmds.c:443 commands/subscriptioncmds.c:1445 commands/tablecmds.c:8146 commands/tablecmds.c:8156 commands/tablecmds.c:8158 commands/tablecmds.c:16149 commands/tablecmds.c:19677 commands/tablecmds.c:19698 commands/typecmds.c:3786 commands/typecmds.c:3871 commands/typecmds.c:4225 #, c-format msgid "Use %s instead." msgstr "ამის ნაცვლად %s გამოიყენეთ." -#: commands/collationcmds.c:476 commands/dbcommands.c:2605 +#: commands/collationcmds.c:476 commands/dbcommands.c:2606 #, c-format msgid "changing version from %s to %s" msgstr "ვერსიის შეცვლა %s-დან %s-ზე" -#: commands/collationcmds.c:491 commands/dbcommands.c:2618 +#: commands/collationcmds.c:491 commands/dbcommands.c:2619 #, c-format msgid "version has not changed" msgstr "ვერსია არ შეცვლილა" -#: commands/collationcmds.c:524 commands/dbcommands.c:2788 utils/adt/dbsize.c:180 +#: commands/collationcmds.c:524 commands/dbcommands.c:2789 utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" msgstr "ბაზა OID-ით %u არ არსებობს" @@ -6638,7 +6649,7 @@ msgstr "სისტემური კოლაციების შემო msgid "no usable system locales were found" msgstr "გამოყენებადი სისტემური ენები ნაპოვნი არაა" -#: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 commands/dbcommands.c:2034 commands/dbcommands.c:2232 commands/dbcommands.c:2472 commands/dbcommands.c:2565 commands/dbcommands.c:2689 commands/dbcommands.c:3200 utils/init/postinit.c:1016 utils/init/postinit.c:1080 utils/init/postinit.c:1153 +#: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 commands/dbcommands.c:2034 commands/dbcommands.c:2232 commands/dbcommands.c:2473 commands/dbcommands.c:2566 commands/dbcommands.c:2690 commands/dbcommands.c:3201 utils/init/postinit.c:1016 utils/init/postinit.c:1080 utils/init/postinit.c:1153 #, c-format msgid "database \"%s\" does not exist" msgstr "მონაცემთა ბაზა \"%s\" არ არსებობს" @@ -6723,166 +6734,176 @@ msgstr "ფაილში COPY-ის წვდომა აკრძალუ msgid "Only roles with privileges of the \"%s\" role may COPY to a file." msgstr "ფაილში COPY-ის უფლებები მხოლოდ '%s' როლს გააჩნია." -#: commands/copy.c:193 +#: commands/copy.c:182 +#, c-format +msgid "generated columns are not supported in COPY FROM WHERE conditions" +msgstr "გენერირებული სვეტები COPY FROM WHERE პირობებში მხარდაჭერილი არაა" + +#: commands/copy.c:183 commands/tablecmds.c:14418 commands/tablecmds.c:19824 commands/tablecmds.c:19906 commands/trigger.c:660 rewrite/rewriteHandler.c:952 rewrite/rewriteHandler.c:987 +#, c-format +msgid "Column \"%s\" is a generated column." +msgstr "სვეტი \"%s\" გენერირებული სვეტია." + +#: commands/copy.c:232 #, c-format msgid "COPY FROM not supported with row-level security" msgstr "მწკრივის-დონის უსაფრთხოებით COPY FROM მხარდაჭერილი არაა" -#: commands/copy.c:194 +#: commands/copy.c:233 #, c-format msgid "Use INSERT statements instead." msgstr "უკეთესია გამოიყენოთ INSERT ოპერატორი." -#: commands/copy.c:375 +#: commands/copy.c:414 #, c-format msgid "cannot use \"%s\" with HEADER in COPY TO" msgstr "\"COPY TO\"-ში %s-ის HEADER-თან ერთად გამოყენება შეუძლებელია" -#: commands/copy.c:384 +#: commands/copy.c:423 #, c-format msgid "%s requires a Boolean value or \"match\"" msgstr "%s -ს ლოგიკური მნიშვნელობა უნდა ჰქონდეს, ან \"match\"" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR, #. second %s is a COPY with direction, e.g. COPY TO -#: commands/copy.c:402 commands/copy.c:818 commands/copy.c:834 commands/copy.c:851 commands/copy.c:877 commands/copy.c:887 +#: commands/copy.c:441 commands/copy.c:857 commands/copy.c:873 commands/copy.c:890 commands/copy.c:916 commands/copy.c:926 #, c-format msgid "COPY %s cannot be used with %s" msgstr "COPY %s-ს %s-სთან ერთად ვერ გამოიყენებთ" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:416 commands/copy.c:474 +#: commands/copy.c:455 commands/copy.c:513 #, c-format msgid "COPY %s \"%s\" not recognized" msgstr "COPY %s \"%s\" უცნობია" -#: commands/copy.c:436 commands/define.c:73 commands/define.c:84 commands/define.c:178 commands/define.c:196 commands/define.c:211 commands/define.c:229 +#: commands/copy.c:475 commands/define.c:73 commands/define.c:84 commands/define.c:178 commands/define.c:196 commands/define.c:211 commands/define.c:229 #, c-format msgid "%s requires a numeric value" msgstr "%s მოითხოვს რიცხვით მნიშვნელობას" -#: commands/copy.c:446 +#: commands/copy.c:485 #, c-format msgid "REJECT_LIMIT (%) must be greater than zero" msgstr "REJECT_LIMIT (%) ნულზე მეტი უნდა იყოს" -#: commands/copy.c:536 +#: commands/copy.c:575 #, c-format msgid "COPY format \"%s\" not recognized" msgstr "COPY-ის უცნობი ფორმატი: \"%s\"" -#: commands/copy.c:594 commands/copy.c:609 commands/copy.c:624 commands/copy.c:643 +#: commands/copy.c:633 commands/copy.c:648 commands/copy.c:663 commands/copy.c:682 #, c-format msgid "argument to option \"%s\" must be a list of column names" msgstr "პარამეტრის (%s) არგუმენტი სვეტების სახელების სია უნდა იყოს" -#: commands/copy.c:655 +#: commands/copy.c:694 #, c-format msgid "argument to option \"%s\" must be a valid encoding name" msgstr "პარამეტრის (%s) არგუმენტი კოდირების სწორი სახელი უნდა იყოს" -#: commands/copy.c:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2421 #, c-format msgid "option \"%s\" not recognized" msgstr "უცნობი პარამეტრი: %s" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:696 commands/copy.c:701 commands/copy.c:706 commands/copy.c:776 +#: commands/copy.c:735 commands/copy.c:740 commands/copy.c:745 commands/copy.c:815 #, c-format msgid "cannot specify %s in BINARY mode" msgstr "რეჟიმში BINARY \"%s\"-ს ვერ მიუთითებთ" -#: commands/copy.c:728 +#: commands/copy.c:767 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "COPY-ის გამყოფი ერთბაიტიანი სიმბოლო უნდა იყოს" -#: commands/copy.c:735 +#: commands/copy.c:774 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "COPY-ის გამყოფი ხაზის გადატანა ან კარეტის დაბრუნება არ უნდა იყოს" -#: commands/copy.c:741 +#: commands/copy.c:780 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "COPY-ის ნულოვან რეპრეზენტაციას ახალი ხაზის ან კარეტის დაბრუნება გამოყენება არ შეუძლია" -#: commands/copy.c:751 +#: commands/copy.c:790 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "COPY-ის ნაგულისხმევ რეპრეზენტაციას ახალი ხაზის ან კარეტის დაბრუნება გამოყენება არ შეუძლია" -#: commands/copy.c:769 +#: commands/copy.c:808 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "COPY-ის გამყოფი \"%s\" არ შეიძლება იყოს" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:783 commands/copy.c:800 commands/copy.c:812 commands/copy.c:827 commands/copy.c:843 +#: commands/copy.c:822 commands/copy.c:839 commands/copy.c:851 commands/copy.c:866 commands/copy.c:882 #, c-format msgid "COPY %s requires CSV mode" msgstr "COPY %s-ს CSV რეჟიმი სჭირდება" -#: commands/copy.c:788 +#: commands/copy.c:827 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "COPY-ის ბრჭყალი ერთბაიტიანი სიმბოლო უნდა იყოს" -#: commands/copy.c:793 +#: commands/copy.c:832 #, c-format msgid "COPY delimiter and quote must be different" msgstr "COPY-ის გამყოფი და ბრჭყალი სხვადასხვა სიმბოლო უნდა იყოს" -#: commands/copy.c:805 +#: commands/copy.c:844 #, c-format msgid "COPY escape must be a single one-byte character" msgstr "COPY-ის სპეცსიმბოლო ერთბაიტიანი სიმბოლო უნდა იყოს" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:859 commands/copy.c:895 +#: commands/copy.c:898 commands/copy.c:934 #, c-format msgid "COPY delimiter character must not appear in the %s specification" msgstr "COPY-ის გამყოფი სიმბოლო %s-ის სპეციფიკაციაში არ უნდა ჩანდეს" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:868 commands/copy.c:904 +#: commands/copy.c:907 commands/copy.c:943 #, c-format msgid "CSV quote character must not appear in the %s specification" msgstr "CSV-ის ბრჭყალის სიმბოლო %s-ის სპეციფიკაციაში არ უნდა გამოჩნდეს" -#: commands/copy.c:913 +#: commands/copy.c:952 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "NULL-ის სპეციფიკაცია და DEFAULT-ის სპეციფიკაცია ერთი და იგივე ვერ იქნება" -#: commands/copy.c:919 +#: commands/copy.c:958 #, c-format msgid "only ON_ERROR STOP is allowed in BINARY mode" -msgstr "" +msgstr "BINARY რეჟიმში დაშვებულია, მხოლოდ, ON_ERROR_STOP" #. translator: first and second %s are the names of COPY option, e.g. #. * ON_ERROR, third is the value of the COPY option, e.g. IGNORE -#: commands/copy.c:926 +#: commands/copy.c:965 #, c-format msgid "COPY %s requires %s to be set to %s" msgstr "COPY %s-ს სჭირდება %s დაყენებული იყოს მნიშვნელობაზე %s" -#: commands/copy.c:988 +#: commands/copy.c:1027 #, c-format msgid "column \"%s\" is a generated column" msgstr "სვეტი \"%s\" გენერირებული სვეტია" -#: commands/copy.c:990 +#: commands/copy.c:1029 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "გენერირებული სვეტები COPY-ში არ გამოიყენება." -#: commands/copy.c:1005 commands/indexcmds.c:1959 commands/statscmds.c:239 commands/tablecmds.c:2593 commands/tablecmds.c:3101 commands/tablecmds.c:3930 parser/parse_relation.c:3798 parser/parse_relation.c:3808 parser/parse_relation.c:3826 parser/parse_relation.c:3833 parser/parse_relation.c:3847 utils/adt/tsvector_op.c:2853 +#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:260 commands/tablecmds.c:2593 commands/tablecmds.c:3101 commands/tablecmds.c:3930 parser/parse_relation.c:3798 parser/parse_relation.c:3808 parser/parse_relation.c:3826 parser/parse_relation.c:3833 parser/parse_relation.c:3847 utils/adt/tsvector_op.c:2853 #, c-format msgid "column \"%s\" does not exist" msgstr "სვეტი არ არსებობს: \"%s\"" -#: commands/copy.c:1012 commands/tablecmds.c:2619 commands/trigger.c:957 parser/parse_target.c:1086 parser/parse_target.c:1097 +#: commands/copy.c:1051 commands/tablecmds.c:2619 commands/trigger.c:957 parser/parse_target.c:1086 parser/parse_target.c:1097 #, c-format msgid "column \"%s\" specified more than once" msgstr "სვეტი ერთზე მეტჯერაა მითითებული: \"%s\"" @@ -7041,17 +7062,17 @@ msgstr "\"COPY\"-ის ფაილის არასწორი თავს msgid "could not read from COPY file: %m" msgstr "\"COPY\" ფაილიდან წაკითხვის შეცდომა: %m" -#: commands/copyfromparse.c:278 commands/copyfromparse.c:303 replication/walsender.c:732 replication/walsender.c:758 tcop/postgres.c:369 +#: commands/copyfromparse.c:278 commands/copyfromparse.c:303 replication/walsender.c:746 replication/walsender.c:772 tcop/postgres.c:369 #, c-format msgid "unexpected EOF on client connection with an open transaction" msgstr "მოულოდნელი EOF ღია ტრანზაქციის მქონე კლიენტის შეერთებაზე" -#: commands/copyfromparse.c:294 replication/walsender.c:748 +#: commands/copyfromparse.c:294 replication/walsender.c:762 #, c-format msgid "unexpected message type 0x%02X during COPY from stdin" msgstr "stdin-დან COPY ოპერაციისას მიღებულია მოულოდნელი შეტყობინების ტიპი 0x%02X" -#: commands/copyfromparse.c:317 replication/walsender.c:779 +#: commands/copyfromparse.c:317 replication/walsender.c:793 #, c-format msgid "COPY from stdin failed: %s" msgstr "COPY-ი stdin-დან წარუმატებელია: %s" @@ -7326,7 +7347,7 @@ msgstr "\"%s\" კოდირების სწორ სახელს ა msgid "unrecognized locale provider: %s" msgstr "ენის უცნობი მომწოდებელი: %s" -#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:300 commands/user.c:739 +#: commands/dbcommands.c:958 commands/dbcommands.c:2454 commands/user.c:299 commands/user.c:739 #, c-format msgid "invalid connection limit: %d" msgstr "კავშირის არასწორი ლიმიტი: %d" @@ -7346,7 +7367,7 @@ msgstr "შაბლონური ბაზა \"%s\" არ არსებ msgid "cannot use invalid database \"%s\" as template" msgstr "არასწორი მონაცემთა ბაზის \"%s\" შაბლონად გამოყენება შეუძლებელია" -#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 utils/init/postinit.c:1095 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2484 utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." msgstr "არასწორი მონაცემთა ბაზების წასაშლელად გამოიყენეთ ბრძანება DROP DATABASE." @@ -7531,7 +7552,7 @@ msgstr "ბაზის OID %u უკვე გამოიყენება msgid "data directory with the specified OID %u already exists" msgstr "მონაცემების საქაღალდე მითითებული OID-ით (%u) უკვე არსებობს" -#: commands/dbcommands.c:1610 commands/dbcommands.c:1625 utils/adt/pg_locale.c:1518 +#: commands/dbcommands.c:1610 commands/dbcommands.c:1625 utils/adt/pg_locale.c:1532 #, c-format msgid "encoding \"%s\" does not match locale \"%s\"" msgstr "კოდირება (%s) ენას (%s) არ ემთხვევა" @@ -7615,61 +7636,56 @@ msgstr "ბაზის (%s) ზოგიერთი ურთიერთო msgid "You must move them back to the database's default tablespace before using this command." msgstr "ამ ბრძანების გამოყენებამდე ბაზის ნაგულისხმევ ცხრილების სივრცეში უნდა დაბრუნდეთ." -#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 commands/dbcommands.c:3338 commands/dbcommands.c:3451 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3039 commands/dbcommands.c:3339 commands/dbcommands.c:3453 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "ძველი ბაზის საქაღალდეში \"%s\" შეიძლება რამდენიმე გამოუსადეგარი ფაილი დარჩა" -#: commands/dbcommands.c:2356 -#, c-format -msgid "unrecognized DROP DATABASE option \"%s\"" -msgstr "\"DROP DATABASE\"-ის უცნობი პარამეტრი \"%s\"" - -#: commands/dbcommands.c:2434 +#: commands/dbcommands.c:2435 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "პარამეტრის \"%s\" მითითება სხვა პარამეტრებთან ერთად აკრძალულია" -#: commands/dbcommands.c:2482 +#: commands/dbcommands.c:2483 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "არასწორი ბაზის (\"%s\") შეცვლა შეუძლებელია" -#: commands/dbcommands.c:2499 +#: commands/dbcommands.c:2500 #, c-format msgid "cannot disallow connections for current database" msgstr "მიმდინარე ბაზასთან დაკავშირების უარყოფა შეუძლებელია" -#: commands/dbcommands.c:2729 +#: commands/dbcommands.c:2730 #, c-format msgid "permission denied to change owner of database" msgstr "ბაზის მფლობელის შეცვლის წვდომა აკრძალულია" -#: commands/dbcommands.c:3144 +#: commands/dbcommands.c:3145 #, c-format msgid "There are %d other session(s) and %d prepared transaction(s) using the database." msgstr "ამ ბაზას %d სხვა სესია და %d მომზადებული ტრანზაქცია იყენებს." -#: commands/dbcommands.c:3147 +#: commands/dbcommands.c:3148 #, c-format msgid "There is %d other session using the database." msgid_plural "There are %d other sessions using the database." msgstr[0] "%d სხვა სესია, რომელიც ბაზას იყენებს." msgstr[1] "%d სხვა სესია, რომელიც ბაზას იყენებს." -#: commands/dbcommands.c:3152 storage/ipc/procarray.c:3860 +#: commands/dbcommands.c:3153 storage/ipc/procarray.c:3860 #, c-format msgid "There is %d prepared transaction using the database." msgid_plural "There are %d prepared transactions using the database." msgstr[0] "ბაზას %d მომზადებული ტრანზაქცია იყენებს." msgstr[1] "ბაზას %d მომზადებული ტრანზაქცია იყენებს." -#: commands/dbcommands.c:3294 +#: commands/dbcommands.c:3295 #, c-format msgid "missing directory \"%s\"" msgstr "ნაკლული საქაღალდე \"%s\"" -#: commands/dbcommands.c:3352 commands/tablespace.c:184 commands/tablespace.c:633 +#: commands/dbcommands.c:3353 commands/tablespace.c:184 commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" msgstr "საქაღალდის \"%s\" პოვნა შეუძლებელია: %m" @@ -7714,7 +7730,7 @@ msgstr "\"%s\" აგრეგატული ფუნქციაა" msgid "Use DROP AGGREGATE to drop aggregate functions." msgstr "აგრეგირებული ფუნქციების წასაშლელად გამოიყენეთ DROP AGGREGATE." -#: commands/dropcmds.c:153 commands/sequence.c:462 commands/tablecmds.c:4014 commands/tablecmds.c:4175 commands/tablecmds.c:4227 commands/tablecmds.c:18929 tcop/utility.c:1328 +#: commands/dropcmds.c:153 commands/sequence.c:462 commands/tablecmds.c:4014 commands/tablecmds.c:4175 commands/tablecmds.c:4227 commands/tablecmds.c:18954 tcop/utility.c:1328 #, c-format msgid "relation \"%s\" does not exist, skipping" msgstr "ურთიერთობა \"%s\" არ არსებობს, გამოტოვებს" @@ -7744,7 +7760,7 @@ msgstr "კოლაცია \"%s\" არ არსებობს, გამ msgid "conversion \"%s\" does not exist, skipping" msgstr "გადაყვანა\"%s\" არ არსებობს, გამოტოვება" -#: commands/dropcmds.c:288 commands/statscmds.c:682 +#: commands/dropcmds.c:288 commands/statscmds.c:703 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "სტატისტიკის ობიექტი \"%s\" არ არსებობს, გამოტოვება" @@ -7859,91 +7875,86 @@ msgstr "ოპერატორის ოჯახი \"%s\" წვდომი msgid "publication \"%s\" does not exist, skipping" msgstr "პუბლიკაცია \"%s\" არ არსებობს, გამოტოვება" -#: commands/event_trigger.c:137 +#: commands/event_trigger.c:141 #, c-format msgid "permission denied to create event trigger \"%s\"" msgstr "მოვლენის ტრიგერის (\"%s\") შექმნის წვდომა აკრძალულია" -#: commands/event_trigger.c:139 +#: commands/event_trigger.c:143 #, c-format msgid "Must be superuser to create an event trigger." msgstr "მოვლენის ტრიგერის შესაქმნელად საჭიროა ზემომხმარებლის პრივილეგიები." -#: commands/event_trigger.c:149 +#: commands/event_trigger.c:153 #, c-format msgid "unrecognized event name \"%s\"" msgstr "მოვლენის უცნობი სახელი \"%s\"" -#: commands/event_trigger.c:166 +#: commands/event_trigger.c:170 #, c-format msgid "unrecognized filter variable \"%s\"" msgstr "ფილტრის უცნობი ცვლადი \"%s\"" -#: commands/event_trigger.c:181 +#: commands/event_trigger.c:185 #, c-format msgid "tag filtering is not supported for login event triggers" msgstr "ჭდის გაფილტვრა მხარდაუჭერელია შესვლის მოვლენის ტრიგერისთვის" -#: commands/event_trigger.c:224 +#: commands/event_trigger.c:228 #, c-format msgid "filter value \"%s\" not recognized for filter variable \"%s\"" msgstr "ფილტრის მნიშვნელობა \"%s\" ფილტრის ცვლადისთვის \"%s\" უცნობია" #. translator: %s represents an SQL statement name -#: commands/event_trigger.c:230 commands/event_trigger.c:252 +#: commands/event_trigger.c:234 commands/event_trigger.c:256 #, c-format msgid "event triggers are not supported for %s" msgstr "მოვლენის ტრიგერები %s-ისთვის მხარდაჭერილი არაა" -#: commands/event_trigger.c:265 +#: commands/event_trigger.c:269 #, c-format msgid "filter variable \"%s\" specified more than once" msgstr "ფილტრის ცვლადი ერთზე მეტჯერაა მითითებული: %s" -#: commands/event_trigger.c:438 commands/event_trigger.c:490 commands/event_trigger.c:584 +#: commands/event_trigger.c:442 commands/event_trigger.c:494 commands/event_trigger.c:588 #, c-format msgid "event trigger \"%s\" does not exist" msgstr "მოვლენის ტრიგერი არ არსებობს: \"%s\"" -#: commands/event_trigger.c:522 +#: commands/event_trigger.c:526 #, c-format msgid "event trigger with OID %u does not exist" msgstr "მოვლენის ტრიგერი OID-ით %u არ არსებობს" -#: commands/event_trigger.c:552 +#: commands/event_trigger.c:556 #, c-format msgid "permission denied to change owner of event trigger \"%s\"" msgstr "მოვლენის ტრიგერის მფლობელის შეცვლის წვდომა აკრძალულია: %s" -#: commands/event_trigger.c:554 +#: commands/event_trigger.c:558 #, c-format msgid "The owner of an event trigger must be a superuser." msgstr "მოვლენის ტრიგერის მფლობელი ზემომხმარებელი უნდა იყოს." -#: commands/event_trigger.c:1404 +#: commands/event_trigger.c:1536 #, c-format msgid "%s can only be called in a sql_drop event trigger function" msgstr "%s-ის გამოძახება sql_drop მოვლენის ტრიგერიდან შეგიძლიათ" -#: commands/event_trigger.c:1497 commands/event_trigger.c:1518 +#: commands/event_trigger.c:1629 commands/event_trigger.c:1650 #, c-format msgid "%s can only be called in a table_rewrite event trigger function" msgstr "%s-ის გამოძახება table_rewrite მოვლენის ტრიგერიდან შეგიძლიათ" -#: commands/event_trigger.c:1931 +#: commands/event_trigger.c:2063 #, c-format msgid "%s can only be called in an event trigger function" msgstr "%s-ის გამოძახება მხოლოდ მოვლენის ტრიგერის ფუნქციიდან შეგიძლიათ" -#: commands/explain_state.c:133 commands/explain_state.c:158 -#, c-format -msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" -msgstr "\"EXPLAIN\"-ის უცნობი პარამეტრი \"%s\": \"%s\"" - -#: commands/explain_state.c:165 +#: commands/explain_state.c:133 commands/explain_state.c:158 replication/walsender.c:1151 #, c-format -msgid "unrecognized EXPLAIN option \"%s\"" -msgstr "\"EXPLAIN\"-ის უცნობი პარამეტრი \"%s\"" +msgid "unrecognized value for %s option \"%s\": \"%s\"" +msgstr "უცნობი მნიშვნელობა %s პარამეტრისთვის \"%s\": \"%s\"" #: commands/explain_state.c:174 commands/explain_state.c:186 commands/explain_state.c:192 #, c-format @@ -7952,10 +7963,10 @@ msgstr "EXPLAIN -ის პარამეტრს %s ANALYZE სჭირდ #: commands/explain_state.c:198 #, c-format -msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" -msgstr "EXPLAIN-ის პარამეტრები ANALYZE და GENERIC_PLAN ერთად არ შეიძლება, გამოიყენოთ" +msgid "%s options %s and %s cannot be used together" +msgstr "%s-ის პარამეტრებს %s და %s ერთად ვერ გამოიყენებთ" -#: commands/extension.c:177 commands/extension.c:3299 +#: commands/extension.c:177 commands/extension.c:3323 #, c-format msgid "extension \"%s\" does not exist" msgstr "გაფართოება %s არ არსებობს" @@ -8120,7 +8131,7 @@ msgstr "არასწორი სიმბოლო გაფართოე msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\"" msgstr "გაფართოებას \"%s\" ვერსიიდან \"%s\" ვერსიამდე \"%s\" განახლების ბილიკი არ გააჩნია" -#: commands/extension.c:1693 commands/extension.c:3357 +#: commands/extension.c:1693 commands/extension.c:3381 #, c-format msgid "version to install must be specified" msgstr "საჭიროა დასაყენებელი ვერსიის მითითება" @@ -8175,77 +8186,77 @@ msgstr "ჩადგმული CREATE EXTENSION მხარდაუჭერ msgid "cannot drop extension \"%s\" because it is being modified" msgstr "გაფართოების \"%s\" წაშლა შეუძლებელია, რადგან მიმდინარეობს მისი ჩასწორება" -#: commands/extension.c:2665 +#: commands/extension.c:2689 #, c-format msgid "%s can only be called from an SQL script executed by CREATE EXTENSION" msgstr "%s-ის გამოძახება მხოლოდ CREATE EXTENSION-ის მიერ შესრულებულ SQL სკრიპტიდან შეგიძლიათ" -#: commands/extension.c:2677 +#: commands/extension.c:2701 #, c-format msgid "OID %u does not refer to a table" msgstr "OID %u ცხრილს არ ეხება" -#: commands/extension.c:2682 +#: commands/extension.c:2706 #, c-format msgid "table \"%s\" is not a member of the extension being created" msgstr "ცხრილი (%s) არ წარმოადგენს იმ გაფართოების წევრს, რომლის შექმნაც მიმდინარეობს" -#: commands/extension.c:3081 +#: commands/extension.c:3105 #, c-format msgid "cannot move extension \"%s\" into schema \"%s\" because the extension contains the schema" msgstr "გაფართოების (\"%s\") სქემაში (\"%s\") გადატანა შეუძლებელია იმიტომ, რომ გაფართოება სქემას შეიცავს" -#: commands/extension.c:3122 commands/extension.c:3216 +#: commands/extension.c:3146 commands/extension.c:3240 #, c-format msgid "extension \"%s\" does not support SET SCHEMA" msgstr "გაფართოებას SET SCHEMA-ის მხარდაჭერა არ გააჩნია: %s" -#: commands/extension.c:3179 +#: commands/extension.c:3203 #, c-format msgid "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it" msgstr "გაფართოება \"%s\"-ის SET SCHEMA შეუძლებელია, რადგან ეს იკრძალება სხვა გაფართოებების მიერ" -#: commands/extension.c:3181 +#: commands/extension.c:3205 #, c-format msgid "Extension \"%s\" requests no relocation of extension \"%s\"." msgstr "გაფართოება \"%s\" გაფართოების \"%s\" გადაადგილებას არ მოითხოვს." -#: commands/extension.c:3218 +#: commands/extension.c:3242 #, c-format msgid "%s is not in the extension's schema \"%s\"" msgstr "%s არ წარმოადგენს გაფართოების სქემას \"%s\"" -#: commands/extension.c:3279 +#: commands/extension.c:3303 #, c-format msgid "nested ALTER EXTENSION is not supported" msgstr "ჩადგმული ALTER EXTENSION მხარდაუჭერელია" -#: commands/extension.c:3368 +#: commands/extension.c:3392 #, c-format msgid "version \"%s\" of extension \"%s\" is already installed" msgstr "გაფართოების %2$s ვერსია %1$s უკვე დაყენებულია" -#: commands/extension.c:3579 +#: commands/extension.c:3603 #, c-format msgid "cannot add an object of this type to an extension" msgstr "ამ ტიპის ობიექტის გაფართოებაზე დამატება შეუძლებელია" -#: commands/extension.c:3677 +#: commands/extension.c:3701 #, c-format msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension" msgstr "სქემის (\"%s\") გაფართოებაში (\"%s\") ჩამატება შეუძლებელია, რადგან სქემა გაფართოებას შეიცავს" -#: commands/extension.c:3759 commands/typecmds.c:4041 utils/fmgr/funcapi.c:725 +#: commands/extension.c:3783 commands/typecmds.c:4041 utils/fmgr/funcapi.c:725 #, c-format msgid "could not find multirange type for data type %s" msgstr "მონაცემების ტიპისთვის %s მრავალდიაპაზონიანი ტიპი ვერ ვიპოვე" -#: commands/extension.c:3801 +#: commands/extension.c:3825 #, c-format msgid "file \"%s\" is too large" msgstr "%s: ფაილი ძალიან დიდია" -#: commands/extension.c:3894 utils/fmgr/dfmgr.c:618 +#: commands/extension.c:3918 utils/fmgr/dfmgr.c:625 #, c-format msgid "component in parameter \"%s\" is not an absolute path" msgstr "პარამეტრში \"%s\" კომპონენტი აბსოლუტური ბილიკი არაა" @@ -8718,7 +8729,7 @@ msgstr "ჩადგმული კოდი მითითებული ა #: commands/functioncmds.c:2168 #, c-format msgid "language \"%s\" does not support inline code execution" -msgstr "" +msgstr "ენას \"%s\" ხაზშივე კოდის შესრულების მხარდაჭერა არ აქვს" #: commands/functioncmds.c:2263 #, c-format @@ -8862,12 +8873,12 @@ msgstr "ცხრილი (%s) შეიცავს დანაყოფე msgid "functions in index predicate must be marked IMMUTABLE" msgstr "ფუნქციები ინდექსის პრედიკატში მონიშნეთ, როგორც IMMUTABLE" -#: commands/indexcmds.c:1954 parser/parse_utilcmd.c:2736 parser/parse_utilcmd.c:2919 +#: commands/indexcmds.c:1954 parser/parse_utilcmd.c:2735 parser/parse_utilcmd.c:2918 #, c-format msgid "column \"%s\" named in key does not exist" msgstr "გასაღებში დასახელებული სვეტი არ არსებობს: %s" -#: commands/indexcmds.c:1978 parser/parse_utilcmd.c:1989 +#: commands/indexcmds.c:1978 parser/parse_utilcmd.c:1988 #, c-format msgid "expressions are not supported in included columns" msgstr "ჩასმულ სვეტებში გამოსახულებები მხარდაჭერილი არაა" @@ -8902,7 +8913,7 @@ msgstr "ჩასმულ სვეტს NULLS FIRST/LAST მხარდა msgid "could not determine which collation to use for index expression" msgstr "ინდექსის გამოსახულებისთვის გამოსაყენებელი კოლაციის გამოცნობა შეუძლებელია" -#: commands/indexcmds.c:2097 commands/tablecmds.c:19959 commands/typecmds.c:812 parser/parse_expr.c:2805 parser/parse_type.c:568 parser/parse_utilcmd.c:4065 utils/adt/misc.c:630 +#: commands/indexcmds.c:2097 commands/tablecmds.c:19994 commands/typecmds.c:812 parser/parse_expr.c:2806 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 utils/adt/misc.c:630 #, c-format msgid "collations are not supported by type %s" msgstr "ტიპს \"%s\" კოლაციების მხარდაჭერა არ გააჩნია" @@ -8937,7 +8948,7 @@ msgstr "წვდომის მეთოდს \"%s\" ASC/DESC პარამ msgid "access method \"%s\" does not support NULLS FIRST/LAST options" msgstr "წვდომის მეთოდს \"%s\" 'NULLS FIRST/LAST' პარამეტრების მხარდაჭერა არ გააჩნია" -#: commands/indexcmds.c:2277 commands/tablecmds.c:19984 commands/tablecmds.c:19990 commands/typecmds.c:2349 +#: commands/indexcmds.c:2277 commands/tablecmds.c:20019 commands/tablecmds.c:20025 commands/typecmds.c:2349 #, c-format msgid "data type %s has no default operator class for access method \"%s\"" msgstr "მონაცემის ტიპს %s წვდომის მეთოდისთვის \"%s\" ნაგულისხმევი ოპერატორის კლასი არ გააჩნია" @@ -8972,16 +8983,11 @@ msgstr "ვერ აღმოვაჩინე გადაფარვებ msgid "could not identify a contained-by operator for type %s" msgstr "ტიპისთვის \"%s\" ოპერატორი constained-by ვერ ვიპოვე" -#: commands/indexcmds.c:2472 commands/tablecmds.c:10333 +#: commands/indexcmds.c:2472 commands/tablecmds.c:10358 #, c-format msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." msgstr "ვერ ვთარგმნე შედარების ტიპი %d ოპერატორის ოჯახისთვის \"%s\" წვდომის მეთოდის \"%s\"." -#: commands/indexcmds.c:2846 -#, c-format -msgid "unrecognized REINDEX option \"%s\"" -msgstr "\"REINDEX\"-ის უცნობი პარამეტრი \"%s\"" - #: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" @@ -9402,7 +9408,7 @@ msgstr "ოპერატორის ატრიბუტის შეცვ msgid "operator attribute \"%s\" cannot be changed if it has already been set" msgstr "ოპერატორის ატრიბუტს \"%s\", თუ ის უკვე დაყენებულია, ვერ შეცვლით" -#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:146 commands/tablecmds.c:1800 commands/tablecmds.c:2400 commands/tablecmds.c:3824 commands/tablecmds.c:6793 commands/tablecmds.c:10089 commands/tablecmds.c:19540 commands/tablecmds.c:19575 commands/trigger.c:319 commands/trigger.c:1338 commands/trigger.c:1448 rewrite/rewriteDefine.c:268 rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 +#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:152 commands/tablecmds.c:1800 commands/tablecmds.c:2400 commands/tablecmds.c:3824 commands/tablecmds.c:6793 commands/tablecmds.c:10114 commands/tablecmds.c:19565 commands/tablecmds.c:19600 commands/trigger.c:319 commands/trigger.c:1338 commands/trigger.c:1448 rewrite/rewriteDefine.c:268 rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 #, c-format msgid "permission denied: \"%s\" is a system catalog" msgstr "წვდომა აკრძალულია: '%s\" სისტემური კატალოგია" @@ -9497,206 +9503,206 @@ msgstr "მომზადებული ოპერატორი \"%s\" ა msgid "must be superuser to create custom procedural language" msgstr "პროცედურული ენის ხელით მისათითებლად ზემომხმარებლის პრივილეგიებია საჭირო" -#: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 utils/init/miscinit.c:1871 +#: commands/publicationcmds.c:135 libpq/auth-oauth.c:850 postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "არასწორი სიის სინტაქსი პარამეტრში \"%s\"" -#: commands/publicationcmds.c:149 +#: commands/publicationcmds.c:154 #, c-format msgid "unrecognized value for publication option \"%s\": \"%s\"" msgstr "პუბლიკაციის პარამეტრის (\"%s\") უცნობი მნიშვნელობა: \"%s\"" -#: commands/publicationcmds.c:170 +#: commands/publicationcmds.c:175 #, c-format msgid "unrecognized publication parameter: \"%s\"" msgstr "პუბლიკაციის უცნობი პარამეტრი: \"%s\"" -#: commands/publicationcmds.c:211 +#: commands/publicationcmds.c:216 #, c-format msgid "no schema has been selected for CURRENT_SCHEMA" msgstr "'CURRENT_SCHEMA'-სთვის სქემა არჩეული არაა" -#: commands/publicationcmds.c:592 +#: commands/publicationcmds.c:597 msgid "System columns are not allowed." msgstr "სისტემური სვეტები დაუშვებელია." -#: commands/publicationcmds.c:599 commands/publicationcmds.c:604 commands/publicationcmds.c:621 +#: commands/publicationcmds.c:604 commands/publicationcmds.c:609 commands/publicationcmds.c:626 msgid "User-defined operators are not allowed." msgstr "მომხმარებლის მიერ აღწერილი ოპერატორები დაშვებული არაა." -#: commands/publicationcmds.c:645 +#: commands/publicationcmds.c:650 msgid "Only columns, constants, built-in operators, built-in data types, built-in collations, and immutable built-in functions are allowed." msgstr "დაშვებულია მხოლოდ სვეტები, მუდმივები, ჩაშენებული ოპერატორები, ჩაშენებული მონაცემის ტიპები, ჩაშენებული კოლაციები და არადადუმებადი ჩაშენებული ფუნქციები." -#: commands/publicationcmds.c:657 +#: commands/publicationcmds.c:662 msgid "User-defined types are not allowed." msgstr "მომხმარებლის მიერ განსაზღვრული ტიპები დაშვებული არაა." -#: commands/publicationcmds.c:660 +#: commands/publicationcmds.c:665 msgid "User-defined or built-in mutable functions are not allowed." msgstr "მომხმარებლის-მიერ-აღწერილი ან ჩაშენებული დადუმებადი ფუნქციები დაშვებული არაა." -#: commands/publicationcmds.c:663 +#: commands/publicationcmds.c:668 msgid "User-defined collations are not allowed." msgstr "მომხმარებლის მიერ განსაზღვრული კოლაციები დაუშვებელია." -#: commands/publicationcmds.c:673 +#: commands/publicationcmds.c:678 #, c-format msgid "invalid publication WHERE expression" msgstr "პუბლიკაციის არასწორი WHERE გამოსახულება" -#: commands/publicationcmds.c:726 +#: commands/publicationcmds.c:731 #, c-format msgid "cannot use publication WHERE clause for relation \"%s\"" msgstr "ურთიერთობისთვის \"%s\"გამოცემის პირობას WHERE ვერ გამოიყენებთ" -#: commands/publicationcmds.c:728 +#: commands/publicationcmds.c:733 #, c-format msgid "WHERE clause cannot be used for a partitioned table when %s is false." msgstr "დაყოფილ ცხრილზე პირობის WHERE გამოყენება შეუძლებელია, როცა %s ჭეშმარიტი არაა." -#: commands/publicationcmds.c:801 commands/publicationcmds.c:815 +#: commands/publicationcmds.c:806 commands/publicationcmds.c:820 #, c-format msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" msgstr "შეუძლებელია სვეტების სიის გამოყენება ურთიერთობისთვის \"%s.%s\" პუბლიკაციაში \"%s\"" -#: commands/publicationcmds.c:804 +#: commands/publicationcmds.c:809 #, c-format msgid "Column lists cannot be specified in publications containing FOR TABLES IN SCHEMA elements." msgstr "გამოცემებში რომლებიც ელემენტებს FOR TABLES IN SCHEMA შეიცავენ, სვეტების სიას ვერ მიუთითებთ." -#: commands/publicationcmds.c:818 +#: commands/publicationcmds.c:823 #, c-format msgid "Column lists cannot be specified for partitioned tables when %s is false." msgstr "სვეტების სია შეუძლებელია მიუთითოთ დაყოფილ ცხრილს, როცა %s false-ა." -#: commands/publicationcmds.c:855 +#: commands/publicationcmds.c:860 #, c-format msgid "must be superuser to create FOR ALL TABLES publication" msgstr "'FOR ALL TABLES' პუბლიკაციის შექმნისთვის ზემომხმარებლის უფლებები აუცილებელია" -#: commands/publicationcmds.c:930 +#: commands/publicationcmds.c:935 #, c-format msgid "must be superuser to create FOR TABLES IN SCHEMA publication" msgstr "\"FOR TABLES IN SCHEMA\" პუბლიკაციის შესაქმნელად ზემომხმარებელი უნდა ბრძანდებოდეთ" -#: commands/publicationcmds.c:966 +#: commands/publicationcmds.c:971 #, c-format msgid "\"wal_level\" is insufficient to publish logical changes" msgstr "\"wal_level\" არასაკმარისია ლოგიკური ცვლილებების გამოსაქვეყნებლად" -#: commands/publicationcmds.c:967 +#: commands/publicationcmds.c:972 #, c-format msgid "Set \"wal_level\" to \"logical\" before creating subscriptions." msgstr "გამოწერების შექმნამდე საჭიროა \"wal_level\" -ის \"logical\" (ლოგიკურზე) დაყენება." -#: commands/publicationcmds.c:1067 commands/publicationcmds.c:1075 +#: commands/publicationcmds.c:1072 commands/publicationcmds.c:1080 #, c-format msgid "cannot set parameter \"%s\" to false for publication \"%s\"" msgstr "პარამეტრის (\"%s\") false-ზე დაყენება პუბლიკაციისთვის \"%s\" შეუძლებელია" -#: commands/publicationcmds.c:1070 +#: commands/publicationcmds.c:1075 #, c-format msgid "The publication contains a WHERE clause for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "გამოცემა შეიცავს პირობას WHERE დაყოფილი ცხრილისთვის \"%s\", რაც, მაშინ, როცა \"%s\" ჭეშმარიტი არა, დაშვებული არაა." -#: commands/publicationcmds.c:1078 +#: commands/publicationcmds.c:1083 #, c-format msgid "The publication contains a column list for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "გამოცემა შეიცავს სვეტების სიას დაყოფილი ცხრილისთვის \"%s\", რაც მაშინ, როცა \"%s\" ჭეშმარიტი არაა, დაუშვებელია." -#: commands/publicationcmds.c:1399 +#: commands/publicationcmds.c:1404 #, c-format msgid "cannot add schema to publication \"%s\"" msgstr "პუბლიკაციისთვის (%s) სქემის დამატება შეუძლებელია" -#: commands/publicationcmds.c:1401 +#: commands/publicationcmds.c:1406 #, c-format msgid "Schemas cannot be added if any tables that specify a column list are already part of the publication." msgstr "სქემების დამატება შეუძლებელია, თუ ნებისმიერი ცხრილი, რომელიც შეიცავს სვეტების სიას, რომელიც უკვე გამოცემის ნაწილია." -#: commands/publicationcmds.c:1449 +#: commands/publicationcmds.c:1454 #, c-format msgid "must be superuser to add or set schemas" msgstr "სქემის დამატების ან დაყენებისთვის ზემომხმარებლის უფლებებია საჭირო" -#: commands/publicationcmds.c:1458 commands/publicationcmds.c:1466 +#: commands/publicationcmds.c:1463 commands/publicationcmds.c:1471 #, c-format msgid "publication \"%s\" is defined as FOR ALL TABLES" msgstr "პუბლიკაცია %s აღწერილია, როგორც FOR ALL TABLES" -#: commands/publicationcmds.c:1460 +#: commands/publicationcmds.c:1465 #, c-format msgid "Schemas cannot be added to or dropped from FOR ALL TABLES publications." msgstr "სქემების FOR ALL TABLES გამოცემებიდან წაშლა ან მასში ჩამატება შეუძლებელია." -#: commands/publicationcmds.c:1468 +#: commands/publicationcmds.c:1473 #, c-format msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications." msgstr "FOR ALL TABLES გამოცემებში ცხრილების ჩამატება ან მათი წაშლა შეუძლებელია." -#: commands/publicationcmds.c:1492 commands/publicationcmds.c:1531 commands/publicationcmds.c:2068 utils/cache/lsyscache.c:3774 +#: commands/publicationcmds.c:1497 commands/publicationcmds.c:1536 commands/publicationcmds.c:2073 utils/cache/lsyscache.c:3774 #, c-format msgid "publication \"%s\" does not exist" msgstr "პუბლიკაცია \"%s\" არ არსებობს" -#: commands/publicationcmds.c:1694 commands/publicationcmds.c:1757 +#: commands/publicationcmds.c:1699 commands/publicationcmds.c:1762 #, c-format msgid "conflicting or redundant WHERE clauses for table \"%s\"" msgstr "კონფლიქტური ან ზედმეტი WHERE პირობები ცხრილისთვის \"%s\"" -#: commands/publicationcmds.c:1701 commands/publicationcmds.c:1769 +#: commands/publicationcmds.c:1706 commands/publicationcmds.c:1774 #, c-format msgid "conflicting or redundant column lists for table \"%s\"" msgstr "კონფლიქტური ან ზედმეტი სვეტის სიები ცხრილისთვის \"%s\"" -#: commands/publicationcmds.c:1903 +#: commands/publicationcmds.c:1908 #, c-format msgid "column list must not be specified in ALTER PUBLICATION ... DROP" msgstr "column list must not be specified in ALTER PUBLICATION ... DROP" -#: commands/publicationcmds.c:1915 +#: commands/publicationcmds.c:1920 #, c-format msgid "relation \"%s\" is not part of the publication" msgstr "ურთიერთობა (%s) პუბლიკაციის ნაწილს არ წარმოადგენს" -#: commands/publicationcmds.c:1922 +#: commands/publicationcmds.c:1927 #, c-format msgid "cannot use a WHERE clause when removing a table from a publication" msgstr "გამოცემის ცხრილიდან წაშლისას პირობას WHERE ვერ გამოიყენებთ" -#: commands/publicationcmds.c:1982 +#: commands/publicationcmds.c:1987 #, c-format msgid "tables from schema \"%s\" are not part of the publication" msgstr "ცხრილი სქემიდან \"%s\" პუბლიკაციის ნაწილს არ წარმოადგენს" -#: commands/publicationcmds.c:2025 commands/publicationcmds.c:2032 +#: commands/publicationcmds.c:2030 commands/publicationcmds.c:2037 #, c-format msgid "permission denied to change owner of publication \"%s\"" msgstr "პუბლიკაციის (%s) მფლობელის შეცვლის წვდომა აკრძალულია" -#: commands/publicationcmds.c:2027 +#: commands/publicationcmds.c:2032 #, c-format msgid "The owner of a FOR ALL TABLES publication must be a superuser." msgstr "FOR ALL TABLES გამოცემის მფლობელი ზემომხმარებელი უნდა იყოს." -#: commands/publicationcmds.c:2034 +#: commands/publicationcmds.c:2039 #, c-format msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser." msgstr "FOR TABLES IN SCHEMA პუბლიკაციის მფლობელი ზემომხმარებელი უნდა იყოს." -#: commands/publicationcmds.c:2100 +#: commands/publicationcmds.c:2105 #, c-format msgid "publication with OID %u does not exist" msgstr "პუბლიკაცია OID-ით %u არ არსებობს" -#: commands/publicationcmds.c:2133 +#: commands/publicationcmds.c:2138 #, c-format msgid "invalid value for publication parameter \"%s\": \"%s\"" msgstr "არასწორი მნიშვნელობა გამოცემის პარამეტრისთვის \"%s\": \"%s\"" -#: commands/publicationcmds.c:2134 +#: commands/publicationcmds.c:2139 #, c-format msgid "Valid values are \"%s\" and \"%s\"." msgstr "სწორი მნიშვნელობებია \"%s\" და \"%s\"." @@ -9856,12 +9862,12 @@ msgstr "მიმდევრობას იგივე სქემა უნ msgid "cannot change ownership of identity sequence" msgstr "იდენტიფიკაციის მიმდევრობის მფლობელის შეცვლა შეუძლებელია" -#: commands/sequence.c:1671 commands/tablecmds.c:16111 commands/tablecmds.c:18949 +#: commands/sequence.c:1671 commands/tablecmds.c:16136 commands/tablecmds.c:18974 #, c-format msgid "Sequence \"%s\" is linked to table \"%s\"." msgstr "მიმდევრობა %s მიბმულია ცხრილზე \"%s\"." -#: commands/statscmds.c:106 commands/statscmds.c:115 tcop/utility.c:1886 +#: commands/statscmds.c:106 commands/statscmds.c:115 #, c-format msgid "only a single relation is allowed in CREATE STATISTICS" msgstr "'CREATE STATISTICS'-ში მხოლოდ ერთი ურთიერთობაა დაშვებული" @@ -9871,82 +9877,82 @@ msgstr "'CREATE STATISTICS'-ში მხოლოდ ერთი ურთი msgid "cannot define statistics for relation \"%s\"" msgstr "სტატისტიკის აღწერა ურთიერთობისთვის %s შეუძლებელია" -#: commands/statscmds.c:187 +#: commands/statscmds.c:208 #, c-format msgid "statistics object \"%s\" already exists, skipping" msgstr "სტატისტიკის ობიექტის %s უკვე არსებობს. გამოტოვება" -#: commands/statscmds.c:195 +#: commands/statscmds.c:216 #, c-format msgid "statistics object \"%s\" already exists" msgstr "სტატისტიკის ობიექტი უკვე არსებობს: %s" -#: commands/statscmds.c:206 +#: commands/statscmds.c:227 #, c-format msgid "cannot have more than %d columns in statistics" msgstr "სტატისტიკაში %d-ზე მეტი სვეტი ვერ გექნებათ" -#: commands/statscmds.c:247 commands/statscmds.c:276 commands/statscmds.c:316 +#: commands/statscmds.c:268 commands/statscmds.c:297 commands/statscmds.c:337 #, c-format msgid "statistics creation on system columns is not supported" msgstr "სისტემურ სვეტებზე სტატისტიკის შექმნა შეუძლებელია" -#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#: commands/statscmds.c:274 commands/statscmds.c:303 commands/statscmds.c:343 #, c-format msgid "statistics creation on virtual generated columns is not supported" msgstr "ვირტუალურ გენერირებულ სვეტებზე სტატისტიკის შექმნა მხარდაჭერილი არაა" -#: commands/statscmds.c:260 commands/statscmds.c:289 +#: commands/statscmds.c:281 commands/statscmds.c:310 #, c-format msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class" msgstr "სვეტს \"%s\" სტატისტიკაში ვერ გამოიყენებთ, რადგან მის ტიპს (\"%s\") ნაგულისხმევი ორობითი ხის ოპერატორის კლასი არ გააჩნია" -#: commands/statscmds.c:339 +#: commands/statscmds.c:360 #, c-format msgid "expression cannot be used in multivariate statistics because its type %s has no default btree operator class" msgstr "" -#: commands/statscmds.c:360 +#: commands/statscmds.c:381 #, c-format msgid "when building statistics on a single expression, statistics kinds may not be specified" msgstr "როცა სტატისტიკის აგება ერთ გამოსახულებაზე მიმდინარეობს, სტატისტიკის ტიპის მითითება შეუძლებელია" -#: commands/statscmds.c:389 +#: commands/statscmds.c:410 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "სტატისტიკის უცნობი ტიპი: \"%s\"" -#: commands/statscmds.c:418 +#: commands/statscmds.c:439 #, c-format msgid "extended statistics require at least 2 columns" msgstr "გაფართოებულ სტატისტიკას მინიმუმ 2 სვეტი სჭირდება" -#: commands/statscmds.c:436 +#: commands/statscmds.c:457 #, c-format msgid "duplicate column name in statistics definition" msgstr "სვეტის დუბლირებული სახელი სტატისტიკის აღწერაში" -#: commands/statscmds.c:471 +#: commands/statscmds.c:492 #, c-format msgid "duplicate expression in statistics definition" msgstr "დუბლირებული გამოსახულება სტატისტიკის აღწერაში" -#: commands/statscmds.c:646 commands/tablecmds.c:8914 +#: commands/statscmds.c:667 commands/tablecmds.c:8939 #, c-format msgid "statistics target %d is too low" msgstr "სტატისტიკის სამიზნე %d ძალიან დაბალია" -#: commands/statscmds.c:654 commands/tablecmds.c:8922 +#: commands/statscmds.c:675 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "სტატისტიკის სამიზნის ჩამოწევა %d-მდე" -#: commands/statscmds.c:678 +#: commands/statscmds.c:699 #, c-format msgid "statistics object \"%s.%s\" does not exist, skipping" msgstr "სტატისტიკის ობიექტი \"%s.%s\" არ არსებობს, გამოტოვება" -#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:410 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:415 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "\"origin\"-ის უცნობი მნიშვნელობა: \"%s\"" @@ -10025,7 +10031,7 @@ msgstr "ჩართული გამოწერისთვის პარ msgid "cannot set option \"%s\" for a subscription that does not have a slot name" msgstr "გამოწერებისთვის, რომლებსაც სლოტის სახელი არ აქვთ, პარამეტრს %s ვერ დავაყენებ" -#: commands/subscriptioncmds.c:1127 commands/subscriptioncmds.c:1663 commands/subscriptioncmds.c:2044 utils/cache/lsyscache.c:3824 +#: commands/subscriptioncmds.c:1127 commands/subscriptioncmds.c:1665 commands/subscriptioncmds.c:2046 utils/cache/lsyscache.c:3824 #, c-format msgid "subscription \"%s\" does not exist" msgstr "გამოწერა \"%s\" არ არსებობს" @@ -10111,85 +10117,85 @@ msgstr "გამოიყენეთ ALTER SUBSCRIPTION ... REFRESH 'copy_data msgid "skip WAL location (LSN %X/%X) must be greater than origin LSN %X/%X" msgstr "გამოტოვება WAL-ის მდებარეობა (LSN %X/%X) საწყის LSN-ზე %X/%X დიდი უნდა იყოს" -#: commands/subscriptioncmds.c:1667 +#: commands/subscriptioncmds.c:1669 #, c-format msgid "subscription \"%s\" does not exist, skipping" msgstr "გამოწერა \"%s\" არ არსებობს. გამოტოვება" -#: commands/subscriptioncmds.c:1934 +#: commands/subscriptioncmds.c:1936 #, c-format msgid "dropped replication slot \"%s\" on publisher" msgstr "გამომცემელზე რეპლიკაციის სეტი \"%s\" წაშლილია" -#: commands/subscriptioncmds.c:1943 commands/subscriptioncmds.c:1951 +#: commands/subscriptioncmds.c:1945 commands/subscriptioncmds.c:1953 #, c-format msgid "could not drop replication slot \"%s\" on publisher: %s" msgstr "შეუძლებელია რეპლიკაციის სლოტის \"%s\" წაშლა გამომცემელზე: %s" -#: commands/subscriptioncmds.c:2076 +#: commands/subscriptioncmds.c:2078 #, c-format msgid "subscription with OID %u does not exist" msgstr "გამოწერა OID-ით %u არ არსებობს" -#: commands/subscriptioncmds.c:2150 commands/subscriptioncmds.c:2274 +#: commands/subscriptioncmds.c:2152 commands/subscriptioncmds.c:2276 #, c-format msgid "could not receive list of replicated tables from the publisher: %s" msgstr "შეცდომა რეპლიცირებული ცხრილების სიის მიგება გამომცემლისგან: %s" -#: commands/subscriptioncmds.c:2186 +#: commands/subscriptioncmds.c:2188 #, c-format msgid "subscription \"%s\" requested copy_data with origin = NONE but might copy data that had a different origin" msgstr "" -#: commands/subscriptioncmds.c:2188 +#: commands/subscriptioncmds.c:2190 #, c-format msgid "The subscription being created subscribes to a publication (%s) that contains tables that are written to by other subscriptions." msgid_plural "The subscription being created subscribes to publications (%s) that contain tables that are written to by other subscriptions." msgstr[0] "" msgstr[1] "" -#: commands/subscriptioncmds.c:2191 +#: commands/subscriptioncmds.c:2193 #, c-format msgid "Verify that initial data copied from the publisher tables did not come from other origins." msgstr "" -#: commands/subscriptioncmds.c:2296 replication/logical/tablesync.c:933 replication/pgoutput/pgoutput.c:1162 +#: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 replication/pgoutput/pgoutput.c:1189 #, c-format msgid "cannot use different column lists for table \"%s.%s\" in different publications" msgstr "" -#: commands/subscriptioncmds.c:2346 +#: commands/subscriptioncmds.c:2348 #, c-format msgid "could not connect to publisher when attempting to drop replication slot \"%s\": %s" msgstr "რეპლიკაციის სლოტის \"%s\" წაშლის მცდელობისას გამომცემელთან მიერთება შეუძლებელია: %s" #. translator: %s is an SQL ALTER command -#: commands/subscriptioncmds.c:2349 +#: commands/subscriptioncmds.c:2351 #, c-format msgid "Use %s to disable the subscription, and then use %s to disassociate it from the slot." msgstr "გამოწერის გასათიშად გამოიყენეთ %s, შემდეგ კი, სლოტთან ასოცირების მოსახსნელად, %s გამოიყენეთ." -#: commands/subscriptioncmds.c:2380 +#: commands/subscriptioncmds.c:2382 #, c-format msgid "publication name \"%s\" used more than once" msgstr "პუბლიკაციის სახელი \"%s\" ერთზე მეტჯერ გამოიყენება" -#: commands/subscriptioncmds.c:2424 +#: commands/subscriptioncmds.c:2426 #, c-format msgid "publication \"%s\" is already in subscription \"%s\"" msgstr "პუბლიკაცია \"%s\" უკვე \"%s\" გამოწერაშია" -#: commands/subscriptioncmds.c:2438 +#: commands/subscriptioncmds.c:2440 #, c-format msgid "publication \"%s\" is not in subscription \"%s\"" msgstr "პუბლიკაცია \"%s\" \"%s\" გამოწერაში არაა" -#: commands/subscriptioncmds.c:2449 +#: commands/subscriptioncmds.c:2451 #, c-format msgid "cannot drop all the publications from a subscription" msgstr "გამოწერიდან ყველა პუბლიკაციას ვერ წაშლით" -#: commands/subscriptioncmds.c:2506 +#: commands/subscriptioncmds.c:2508 #, c-format msgid "%s requires a Boolean value or \"parallel\"" msgstr "%s -ს ლოგიკური მნიშვნელობა უნდა ჰქონდეს, ან \"parallel\"" @@ -10250,7 +10256,7 @@ msgstr "მატერიალიზებული ხედი \"%s\" არ msgid "Use DROP MATERIALIZED VIEW to remove a materialized view." msgstr "მატერიალიზებული ხედის წასაშლელად გამოიყენეთ DROP MATERIALIZED VIEW." -#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 parser/parse_utilcmd.c:2429 +#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21651 parser/parse_utilcmd.c:2428 #, c-format msgid "index \"%s\" does not exist" msgstr "ინდექსი \"%s\" არ არსებობს" @@ -10273,7 +10279,7 @@ msgstr "\"%s\" ტიპი არაა" msgid "Use DROP TYPE to remove a type." msgstr "ტიპის წასაშლელად გამოიყენეთ DROP TYPE." -#: commands/tablecmds.c:294 commands/tablecmds.c:15950 commands/tablecmds.c:18651 +#: commands/tablecmds.c:294 commands/tablecmds.c:15975 commands/tablecmds.c:18676 #, c-format msgid "foreign table \"%s\" does not exist" msgstr "გარე ცხრილი \"%s\" არ არსებობს" @@ -10302,7 +10308,7 @@ msgstr "დაყოფილი ცხრილების ჟურნალ msgid "cannot create temporary table within security-restricted operation" msgstr "უსაფრთხოებაზე-შეზღუდული ოპერაციის შიგნით დროებითი ცხრილის შექმნა შეუძლებელია" -#: commands/tablecmds.c:875 commands/tablecmds.c:17375 +#: commands/tablecmds.c:875 commands/tablecmds.c:17400 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "ურთიერთობა \"%s\" მემკვირდრეობით ერზე მეტჯერ იქნებოდა მიღებული" @@ -10327,7 +10333,7 @@ msgstr "დაყოფილი ცხრილის (%s) გარე და msgid "Table \"%s\" contains indexes that are unique." msgstr "ცხრილი %s შეიცავს სვეტებს, რომლებიც უნიკალურია." -#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14952 #, c-format msgid "too many array dimensions" msgstr "მასივის მეტისმეტად ბევრი განზომილება" @@ -10377,7 +10383,7 @@ msgstr "გარე ცხრილის (\"%s\") მოკვეთის შ msgid "cannot truncate temporary tables of other sessions" msgstr "სხვა სესიების დროებითი ცხრილების მოკვეთის შეცდომა" -#: commands/tablecmds.c:2675 commands/tablecmds.c:17272 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17297 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "დაყოფილი ცხრილიდან \"%s\" მემკვიდრეობის მიღება შეუძლებელია" @@ -10387,7 +10393,7 @@ msgstr "დაყოფილი ცხრილიდან \"%s\" მემკ msgid "cannot inherit from partition \"%s\"" msgstr "დანაყოფიდან \"%s\" მემკვიდრეობის მიღება შეუძლებელია" -#: commands/tablecmds.c:2688 parser/parse_utilcmd.c:2700 parser/parse_utilcmd.c:2888 +#: commands/tablecmds.c:2688 parser/parse_utilcmd.c:2699 parser/parse_utilcmd.c:2887 #, c-format msgid "inherited relation \"%s\" is not a table or foreign table" msgstr "მემკვიდრეობით მიღებული ურთიერთობა \"%s\" ცხრილს ან გარე ცხრილს არ წარმოადგენს" @@ -10397,17 +10403,17 @@ msgstr "მემკვიდრეობით მიღებული ურ msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "შეუძლებელია შექმნათ დროებით ურთიერთობა, რომელიც მუდმივი ურთიერთობის \"%s\" დანაყოფი იქნება" -#: commands/tablecmds.c:2709 commands/tablecmds.c:17251 +#: commands/tablecmds.c:2709 commands/tablecmds.c:17276 #, c-format msgid "cannot inherit from temporary relation \"%s\"" msgstr "დროებითი ურთიერთობიდან (%s) მემკვიდრეობითობა შეუძლებელია" -#: commands/tablecmds.c:2719 commands/tablecmds.c:17259 +#: commands/tablecmds.c:2719 commands/tablecmds.c:17284 #, c-format msgid "cannot inherit from temporary relation of another session" msgstr "სხვა სესიის დროებითი ურთიერთობიდან მემკვიდრეობითობა შეუძლებელია" -#: commands/tablecmds.c:2874 commands/tablecmds.c:2928 commands/tablecmds.c:14610 parser/parse_utilcmd.c:1440 parser/parse_utilcmd.c:1485 parser/parse_utilcmd.c:1917 parser/parse_utilcmd.c:2025 +#: commands/tablecmds.c:2874 commands/tablecmds.c:2928 commands/tablecmds.c:14635 parser/parse_utilcmd.c:1440 parser/parse_utilcmd.c:1484 parser/parse_utilcmd.c:1916 parser/parse_utilcmd.c:2024 #, c-format msgid "cannot convert whole-row table reference" msgstr "" @@ -10417,7 +10423,7 @@ msgstr "" msgid "Generation expression for column \"%s\" contains a whole-row reference to table \"%s\"." msgstr "" -#: commands/tablecmds.c:2929 parser/parse_utilcmd.c:1486 +#: commands/tablecmds.c:2929 parser/parse_utilcmd.c:1485 #, c-format msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"." msgstr "" @@ -10442,12 +10448,12 @@ msgstr "შვილი სვეტისთვის \"%s\" მითითე msgid "A child table column cannot be generated unless its parent column is." msgstr "შვილი ცხრილის სვეტი არ შეიძლება, გენერირებული იყოს, თუ მისი მშობელიც არაა." -#: commands/tablecmds.c:3072 commands/tablecmds.c:3366 commands/tablecmds.c:17537 +#: commands/tablecmds.c:3072 commands/tablecmds.c:3366 commands/tablecmds.c:17562 #, c-format msgid "column \"%s\" inherits from generated column of different kind" msgstr "ცხრილი \"%s\" მემკვიდრეობით იღებს სხვა ტიპის გენერირებული სვეტიდან" -#: commands/tablecmds.c:3074 commands/tablecmds.c:3368 commands/tablecmds.c:17538 +#: commands/tablecmds.c:3074 commands/tablecmds.c:3368 commands/tablecmds.c:17563 #, c-format msgid "Parent column is %s, child column is %s." msgstr "მშობელი სვეტია %s, შვილი სვეტია %s." @@ -10507,7 +10513,7 @@ msgstr "%s-ი %s-ის წინააღმდეგ" msgid "column \"%s\" has a collation conflict" msgstr "კოლაციის კონფლიქტი სვეტში \"%s\"" -#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 commands/tablecmds.c:7277 +#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 commands/tablecmds.c:7277 parser/parse_expr.c:4783 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "'%s\" -ი \"%s\"-ის წინააღმდეგ" @@ -10710,12 +10716,12 @@ msgstr "ტიპიზირებულ ცხრილში სვეტე msgid "cannot add column to a partition" msgstr "დანაყოფს სვეტს ვერ დაუმატებთ" -#: commands/tablecmds.c:7269 commands/tablecmds.c:17493 +#: commands/tablecmds.c:7269 commands/tablecmds.c:17518 #, c-format msgid "child table \"%s\" has different type for column \"%s\"" msgstr "შვილ ცხრილს \"%s\" სვეტისთვის \"%s\" სხვა ტიპი გააჩნია" -#: commands/tablecmds.c:7275 commands/tablecmds.c:17499 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17524 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "შვილ ცხრილს \"%s\" სვეტისთვის \"%s\" სხვა კოლაცია გააჩნია" @@ -10745,12 +10751,12 @@ msgstr "ურთიერთობის (%2$s) სვეტი %1$s უკვ msgid "column \"%s\" of relation \"%s\" already exists" msgstr "ურთიერთობის (%2$s) სვეტი %1$s უკვე რსებობს" -#: commands/tablecmds.c:7769 commands/tablecmds.c:7936 commands/tablecmds.c:8137 commands/tablecmds.c:8268 commands/tablecmds.c:8397 commands/tablecmds.c:8491 commands/tablecmds.c:8594 commands/tablecmds.c:8790 commands/tablecmds.c:8956 commands/tablecmds.c:9047 commands/tablecmds.c:9181 commands/tablecmds.c:14382 commands/tablecmds.c:15973 commands/tablecmds.c:18740 +#: commands/tablecmds.c:7769 commands/tablecmds.c:7936 commands/tablecmds.c:8137 commands/tablecmds.c:8268 commands/tablecmds.c:8422 commands/tablecmds.c:8516 commands/tablecmds.c:8619 commands/tablecmds.c:8815 commands/tablecmds.c:8981 commands/tablecmds.c:9072 commands/tablecmds.c:9206 commands/tablecmds.c:14407 commands/tablecmds.c:15998 commands/tablecmds.c:18765 #, c-format msgid "cannot alter system column \"%s\"" msgstr "სისტემური სვეტის \"%s\" შეცვლა შეუძლებელია" -#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 commands/tablecmds.c:14143 +#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 commands/tablecmds.c:14168 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" იდენტიფიკატორი სვეტია" @@ -10760,12 +10766,12 @@ msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" ი msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "სვეტი \"%s\" მშობელ ცხრილში NOT NULL-ით დანიშნული არაა" -#: commands/tablecmds.c:8014 commands/tablecmds.c:9988 +#: commands/tablecmds.c:8014 commands/tablecmds.c:10013 #, c-format msgid "constraint must be added to child tables too" msgstr "შეზღუდვა შვილ ცხრილებსაც უნდა დაემატოთ" -#: commands/tablecmds.c:8015 commands/tablecmds.c:8246 commands/tablecmds.c:8353 commands/tablecmds.c:8470 commands/tablecmds.c:9354 commands/tablecmds.c:12182 +#: commands/tablecmds.c:8015 commands/tablecmds.c:8246 commands/tablecmds.c:8378 commands/tablecmds.c:8495 commands/tablecmds.c:9379 commands/tablecmds.c:12207 #, c-format msgid "Do not specify the ONLY keyword." msgstr "ONLY არ მიუთითოთ." @@ -10790,1009 +10796,1004 @@ msgstr "დანაყოფს სვეტს იდენტიფიკა 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:8285 +#: commands/tablecmds.c:8310 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" უკვე იდენტიფიკატორი სვეტია" -#: commands/tablecmds.c:8291 +#: commands/tablecmds.c:8316 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "ურთიერთობის \"%2$s\" სვეტს \"%1$s\" ნაგულისხმევი მნიშვნელობა უკვე გააჩნია" -#: commands/tablecmds.c:8352 +#: commands/tablecmds.c:8377 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "მხოლოდ, დაყოფილი ცხრილის იდენტიფიკაციის სვეტს ვერ შეცვლით" -#: commands/tablecmds.c:8358 +#: commands/tablecmds.c:8383 #, c-format msgid "cannot change identity column of a partition" msgstr "დანაყოფის იდენტიფიკაციის სვეტს ვერ შეცვლით" -#: commands/tablecmds.c:8403 commands/tablecmds.c:8499 +#: commands/tablecmds.c:8428 commands/tablecmds.c:8524 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column" msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" იდენტიფიკატორი სვეტი არაა" -#: commands/tablecmds.c:8469 +#: commands/tablecmds.c:8494 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "მხოლოდ, დაყოფილი ცხრილში სვეტიდან იდენტიფიკაციას ვერ წაშლით" -#: commands/tablecmds.c:8475 +#: commands/tablecmds.c:8500 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "დანაყოფს სვეტიდან იდენტიფიკატორს ვერ წაშლით" -#: commands/tablecmds.c:8504 +#: commands/tablecmds.c:8529 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" იდენტიფიკატორი სვეტი არაა. გამოტოვება" -#: commands/tablecmds.c:8601 commands/tablecmds.c:8811 +#: commands/tablecmds.c:8626 commands/tablecmds.c:8836 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column" msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" გენერირებული სვეტი არაა" -#: commands/tablecmds.c:8612 +#: commands/tablecmds.c:8637 #, c-format msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables with check constraints" msgstr "ALTER TABLE / SET EXPRESSION მხარდაჭერილი არაა ვირტუალური გენერირებული სვეტებისთვის შეზღუდვების შემოწმების მქონე ცხრილებში" -#: commands/tablecmds.c:8613 commands/tablecmds.c:8631 commands/tablecmds.c:8803 +#: commands/tablecmds.c:8638 commands/tablecmds.c:8656 commands/tablecmds.c:8828 #, c-format msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" ვირტუალური გენერირებული სვეტია." -#: commands/tablecmds.c:8630 +#: commands/tablecmds.c:8655 #, c-format msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables that are part of a publication" msgstr "ALTER TABLE / SET EXPRESSION მხარდაჭერილი არაა ვირტუალურ გენერირებულ სვეტებზე ცხრილებში, რომლებიც გამოცემის ნაწილი არიან" -#: commands/tablecmds.c:8737 +#: commands/tablecmds.c:8762 #, c-format msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" msgstr "ALTER TABLE / DROP EXPRESSION შვილ ცხრილებზეც უნდა გადატარდეს" -#: commands/tablecmds.c:8759 +#: commands/tablecmds.c:8784 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "მემკვიდრეობითი სვეტიდან გენერაციის გამოსახულების წაშლა შეუძლებელია" -#: commands/tablecmds.c:8802 +#: commands/tablecmds.c:8827 #, c-format msgid "ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" msgstr "ALTER TABLE / DROP EXPRESSION ვირტუალურ გენერირებულ სვეტებზე მხარდაჭერილი არაა" -#: commands/tablecmds.c:8816 +#: commands/tablecmds.c:8841 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" გენერირებული სვეტი არაა. გამოტოვება" -#: commands/tablecmds.c:8894 +#: commands/tablecmds.c:8919 #, c-format msgid "cannot refer to non-index column by number" msgstr "არა-ინდექსი სვეტის ნომრით მიმართვა შეუძლებელია" -#: commands/tablecmds.c:8946 +#: commands/tablecmds.c:8971 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "ურთიერთობის (%2$s) სვეტი (%1$d) არ არსებობს" -#: commands/tablecmds.c:8966 +#: commands/tablecmds.c:8991 #, c-format msgid "cannot alter statistics on virtual generated column \"%s\"" msgstr "შეუძლებელია სტატისტიკის შეცვლა ვირტუალურ გენერირებულ სვეტზე \"%s\"" -#: commands/tablecmds.c:8975 +#: commands/tablecmds.c:9000 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "ინდექსის \"%2$s\" ჩასმული სვეტის \"%1$s\" სტატისტიკის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:8980 +#: commands/tablecmds.c:9005 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "" -#: commands/tablecmds.c:8982 +#: commands/tablecmds.c:9007 #, c-format msgid "Alter statistics on table column instead." msgstr "ამის ნაცვლად ცხრილის სვეტის სტატისტიკა შეცვალეთ." -#: commands/tablecmds.c:9228 +#: commands/tablecmds.c:9253 #, c-format msgid "cannot drop column from typed table" msgstr "ტიპიზირებული ცხრილის სვეტის წაშლა შეუძლებელია" -#: commands/tablecmds.c:9292 +#: commands/tablecmds.c:9317 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "სვეტი \"%s\" ურთიერთობაში \"%s\" არ არსებობს. გამოტოვება" -#: commands/tablecmds.c:9305 +#: commands/tablecmds.c:9330 #, c-format msgid "cannot drop system column \"%s\"" msgstr "სისტემური სვეტის \"%s\" წაშლა შეუძლებელია" -#: commands/tablecmds.c:9315 +#: commands/tablecmds.c:9340 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "მემკვიდრეობით მიღებული სვეტის \"%s\" წაშლა შეუძლებელია" -#: commands/tablecmds.c:9328 +#: commands/tablecmds.c:9353 #, c-format msgid "cannot drop column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "" -#: commands/tablecmds.c:9353 +#: commands/tablecmds.c:9378 #, c-format msgid "cannot drop column from only the partitioned table when partitions exist" msgstr "" -#: commands/tablecmds.c:9518 +#: commands/tablecmds.c:9543 #, c-format msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" msgstr "ცხრილის \"%2$s\" სვეტი \"%1$s\" არაა დანიშნული, როგორც NOT NULL" -#: commands/tablecmds.c:9554 commands/tablecmds.c:9566 +#: commands/tablecmds.c:9579 commands/tablecmds.c:9591 #, c-format msgid "cannot create primary key on column \"%s\"" msgstr "ძირითადი გასაღების შექმნა სვეტზე \"%s\" შეუძლებელია" #. translator: fourth %s is a constraint characteristic such as NOT VALID -#: commands/tablecmds.c:9556 commands/tablecmds.c:9568 +#: commands/tablecmds.c:9581 commands/tablecmds.c:9593 #, c-format msgid "The constraint \"%s\" on column \"%s\" of table \"%s\", marked %s, is incompatible with a primary key." msgstr "" -#: commands/tablecmds.c:9692 +#: commands/tablecmds.c:9717 #, 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:9717 +#: commands/tablecmds.c:9742 #, 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:10075 +#: commands/tablecmds.c:10100 #, c-format msgid "cannot use ONLY for foreign key on partitioned table \"%s\" referencing relation \"%s\"" msgstr "" -#: commands/tablecmds.c:10083 commands/tablecmds.c:10710 +#: commands/tablecmds.c:10108 commands/tablecmds.c:10735 #, c-format msgid "referenced relation \"%s\" is not a table" msgstr "მითითებული ურთიერთობა \"%s\" ცხრილი არაა" -#: commands/tablecmds.c:10106 +#: commands/tablecmds.c:10131 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "მუდმივ ცხრილებზე არსებული შეზღუდვები მხოლოდ მუდმივ ცხრილებზე შეიძლება, მიუთითებდეს" -#: commands/tablecmds.c:10113 +#: commands/tablecmds.c:10138 #, c-format msgid "constraints on unlogged tables may reference only permanent or unlogged tables" msgstr "ჟურნალის გარეშე მყოფი ცხრილების შეზღუდვები მხოლოდ მუდმივ ან ჟურნალის გარეშე მყოფ ცხრილებზე შეიძლება, მიუთითებდეს" -#: commands/tablecmds.c:10119 +#: commands/tablecmds.c:10144 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "დროებით ცხრილებზე არსებული შეზღუდვები მხოლოდ დროებით ცხრილებზე შეიძლება, მიუთითებდეს" -#: commands/tablecmds.c:10123 +#: commands/tablecmds.c:10148 #, c-format msgid "constraints on temporary tables must involve temporary tables of this session" msgstr "დროებითი ცხრილის შეზღუდვები მიმდინარე სესიის დროებით ცხრილებს უნდა მიმართავდეს" -#: commands/tablecmds.c:10138 commands/tablecmds.c:10166 +#: commands/tablecmds.c:10163 commands/tablecmds.c:10191 #, c-format msgid "foreign key uses PERIOD on the referenced table but not the referencing table" msgstr "" -#: commands/tablecmds.c:10178 +#: commands/tablecmds.c:10203 #, c-format msgid "foreign key uses PERIOD on the referencing table but not the referenced table" msgstr "" -#: commands/tablecmds.c:10192 +#: commands/tablecmds.c:10217 #, c-format msgid "foreign key must use PERIOD when referencing a primary key using WITHOUT OVERLAPS" msgstr "" -#: commands/tablecmds.c:10216 commands/tablecmds.c:10222 +#: commands/tablecmds.c:10241 commands/tablecmds.c:10247 #, c-format msgid "invalid %s action for foreign key constraint containing generated column" msgstr "არასწორი ქმედება %s გარე გასაღების შეზღუდვის შემცველი გენერირებული სვეტისთვის" -#: commands/tablecmds.c:10237 +#: commands/tablecmds.c:10262 #, c-format msgid "foreign key constraints on virtual generated columns are not supported" msgstr "ვირტუალურ გენერირებულ სვეტებზე გარე გასაღების შეზღუდვები მხარდაჭერილი არაა" -#: commands/tablecmds.c:10251 commands/tablecmds.c:10260 +#: commands/tablecmds.c:10276 commands/tablecmds.c:10285 #, c-format msgid "unsupported %s action for foreign key constraint using PERIOD" msgstr "მხარდაუჭერელი %s ქმედება გარე გასაღების შეზღუდვისთვის, რომელიც PERIOD-ს იყენებს" -#: commands/tablecmds.c:10275 +#: commands/tablecmds.c:10300 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "" -#: commands/tablecmds.c:10331 +#: commands/tablecmds.c:10356 #, c-format msgid "could not identify an overlaps operator for foreign key" msgstr "ვერ აღმოვაჩინე გადაფარვების ოპერატორი გარე გასაღებისთვის" -#: commands/tablecmds.c:10332 +#: commands/tablecmds.c:10357 #, c-format msgid "could not identify an equality operator for foreign key" msgstr "გარე გასაღებისთვის ტოლობის ოპერატორი ვერ ვიპოვე" -#: commands/tablecmds.c:10397 commands/tablecmds.c:10431 +#: commands/tablecmds.c:10422 commands/tablecmds.c:10456 #, c-format msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "გარე გასაღების შეზღუდვის \"%s\" განხორციელება შეუძლებელია" -#: commands/tablecmds.c:10399 +#: commands/tablecmds.c:10424 #, c-format msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table are of incompatible types: %s and %s." msgstr "მიმმართველი ცხრილის გასაღების სვეტები \"%s\" და მიმართვადი ცხრილის გასაღების სვეტები \"%s\" შეუთავსებელი ტიპისაა: %s და %s." -#: commands/tablecmds.c:10432 +#: commands/tablecmds.c:10457 #, c-format msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table have incompatible collations: \"%s\" and \"%s\". If either collation is nondeterministic, then both collations have to be the same." msgstr "" -#: commands/tablecmds.c:10638 +#: commands/tablecmds.c:10663 #, c-format msgid "column \"%s\" referenced in ON DELETE SET action must be part of foreign key" msgstr "" -#: commands/tablecmds.c:11022 commands/tablecmds.c:11455 parser/parse_utilcmd.c:941 parser/parse_utilcmd.c:1086 +#: commands/tablecmds.c:11047 commands/tablecmds.c:11480 parser/parse_utilcmd.c:941 parser/parse_utilcmd.c:1086 #, c-format msgid "foreign key constraints are not supported on foreign tables" msgstr "გარე გასაღების შეზღუდვები გარე ცხრილებზე მხარდაჭერილი არაა" -#: commands/tablecmds.c:11438 +#: commands/tablecmds.c:11463 #, c-format msgid "cannot attach table \"%s\" as a partition because it is referenced by foreign key \"%s\"" msgstr "ცხრილს \"%s\" ვერ მივამაგრებ დანაყოფს, რომელსაც მიმართავს გარე გარე გასაღები \"%s\"" -#: commands/tablecmds.c:11719 +#: commands/tablecmds.c:11744 #, c-format msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" msgstr "შეზღუდვის \"%s\" ნაძალადევობა კონფლიქტშია შეზღუდვასთან \"%s\" ურთიერთობაზე \"%s\"" -#: commands/tablecmds.c:12181 +#: commands/tablecmds.c:12206 #, c-format msgid "constraint must be altered in child tables too" msgstr "შეზღუდვა შვილ ცხრილებშიც უნდა შეიცვალოს" -#: commands/tablecmds.c:12210 commands/tablecmds.c:12907 commands/tablecmds.c:14022 commands/tablecmds.c:14251 +#: commands/tablecmds.c:12235 commands/tablecmds.c:12932 commands/tablecmds.c:14047 commands/tablecmds.c:14276 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist" msgstr "ურთიერთობის \"%2$s\" შეზღუდვა \"%1$s\" არ არსებობს" -#: commands/tablecmds.c:12217 +#: commands/tablecmds.c:12242 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "ურთიერთობის (\"%2$s\") შეზღუდვა \"%1$s\" გარე გასაღების შეზღუდვა არაა" -#: commands/tablecmds.c:12222 +#: commands/tablecmds.c:12247 #, c-format msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" msgstr "ურთიერთობაზე \"%2$s\" შეზღუდვის \"%1$s\" ძალით დაყენებადობის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:12228 +#: commands/tablecmds.c:12253 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" msgstr "ურთიერთობის \"%2$s\" შეზღუდვა \"%1$s\" არანულოვანი შეზღუდვა არაა" -#: commands/tablecmds.c:12236 +#: commands/tablecmds.c:12261 #, c-format msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" msgstr "ურთიერთობაზე \"%2$s\" მემკვიდრეობით მიღებული შეზღუდვის \"%1$s\" წაშლა შეუძლებელია" -#: commands/tablecmds.c:12276 +#: commands/tablecmds.c:12301 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "ურთიერთობაზე \"%2$s\" შეზღუდვის \"%1$s\" შეცვლა შეუძლებელია" -#: commands/tablecmds.c:12279 +#: commands/tablecmds.c:12304 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "შეზღუდვა \"%1$s\" ურთიერთობის \"%3$s\" შეზღუდვიდანა \"%2$s\"-ია ნაწარმოები." -#: commands/tablecmds.c:12281 +#: commands/tablecmds.c:12306 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "ამის მაგიერ, შეიგძლიათ, შეცვალოთ შეზღუდვა, რომლიდანაც ის მიღებულია." -#: commands/tablecmds.c:12916 +#: commands/tablecmds.c:12941 #, c-format msgid "cannot validate constraint \"%s\" of relation \"%s\"" msgstr "ვერ გადავამოწმე შეზღუდვა \"%s\" ურთიერთობისთვის \"%s\"" -#: commands/tablecmds.c:12918 +#: commands/tablecmds.c:12943 #, c-format msgid "This operation is not supported for this type of constraint." msgstr "ეს ოპერაცია ამ ტიპის შეზღუდვისთვის მხარდაჭერილი არაა." -#: commands/tablecmds.c:12923 +#: commands/tablecmds.c:12948 #, c-format msgid "cannot validate NOT ENFORCED constraint" msgstr "შეზღუდვის NOT ENFORCED დადასტურება შეუძლებელია" -#: commands/tablecmds.c:13132 commands/tablecmds.c:13232 +#: commands/tablecmds.c:13157 commands/tablecmds.c:13257 #, c-format msgid "constraint must be validated on child tables too" msgstr "შეზღუდვა შვილ ცხრილებზეც უნდა გადამოწმდეს" -#: commands/tablecmds.c:13309 +#: commands/tablecmds.c:13334 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "გარე გასაღების შეზღუდვაში მითითებული სვეტი \"%s\" არ არსებობს" -#: commands/tablecmds.c:13315 +#: commands/tablecmds.c:13340 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "უცხო გასაღებებში სისტემურ სვეტებს ვერ გამოიყენებთ" -#: commands/tablecmds.c:13319 +#: commands/tablecmds.c:13344 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "გარე გასაღებში %d გასაღებზე მეტი ვერ გექნებათ" -#: commands/tablecmds.c:13387 +#: commands/tablecmds.c:13412 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "" -#: commands/tablecmds.c:13404 +#: commands/tablecmds.c:13429 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "მითითებული ცხრილისთვის \"%s\" ძირითადი გასაღები არ არსებობს" -#: commands/tablecmds.c:13477 +#: commands/tablecmds.c:13502 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "" -#: commands/tablecmds.c:13580 +#: commands/tablecmds.c:13605 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "" -#: commands/tablecmds.c:13585 +#: commands/tablecmds.c:13610 #, c-format msgid "there is no unique constraint matching given keys for referenced table \"%s\"" msgstr "" -#: commands/tablecmds.c:14026 +#: commands/tablecmds.c:14051 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" msgstr "ურთიერთობის (\"%2$s\") შეზღუდვა (\"%1$s\") არ არსებობს. გამოტოვება" -#: commands/tablecmds.c:14071 +#: commands/tablecmds.c:14096 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "მემკვიდრეობით მიღებული ურთიერთობის \"%2$s\" შეზღუდვის \"%1$s\" წაშლა შეუძლებელია" -#: commands/tablecmds.c:14123 +#: commands/tablecmds.c:14148 #, c-format msgid "column \"%s\" is in a primary key" msgstr "სვეტი \"%s\" პირველადი გასაღებია" -#: commands/tablecmds.c:14131 +#: commands/tablecmds.c:14156 #, c-format msgid "column \"%s\" is in index used as replica identity" msgstr "სვეტი \"%s\" რეპლიკის იდენტიფიკატორად გამოყენებული ინდექსია" -#: commands/tablecmds.c:14364 +#: commands/tablecmds.c:14389 #, c-format msgid "cannot alter column type of typed table" msgstr "ტიპიზირებული ცხრილის სვეტის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14392 +#: commands/tablecmds.c:14417 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "გენერირებული სვეტის ტიპის შეცვლისას USING-ს ვერ მიუთითებთ" -#: commands/tablecmds.c:14393 commands/tablecmds.c:19799 commands/tablecmds.c:19892 commands/trigger.c:660 rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 -#, c-format -msgid "Column \"%s\" is a generated column." -msgstr "სვეტი \"%s\" გენერირებული სვეტია." - -#: commands/tablecmds.c:14404 +#: commands/tablecmds.c:14429 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "მემკვიდრეობით მიღებული სვეტის \"%s\" შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14413 +#: commands/tablecmds.c:14438 #, c-format msgid "cannot alter column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "სვეტის \"%s\" შეცვლა შეუძლებელია, რადგან ის ურთიერთობის \"%s\" დანაყოფის გასაღების ნაწილია" -#: commands/tablecmds.c:14468 +#: commands/tablecmds.c:14493 #, c-format msgid "result of USING clause for column \"%s\" cannot be cast automatically to type %s" msgstr "" -#: commands/tablecmds.c:14471 +#: commands/tablecmds.c:14496 #, c-format msgid "You might need to add an explicit cast." msgstr "შეიძლება აშკარა დაკასტვა უნდა დაამატოთ." -#: commands/tablecmds.c:14475 +#: commands/tablecmds.c:14500 #, 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:14479 +#: commands/tablecmds.c:14504 #, c-format msgid "You might need to specify \"USING %s::%s\"." msgstr "შეიძლება, გჭირდებათ, მიუთითოთ \"USING %s::%s\"." -#: commands/tablecmds.c:14582 +#: commands/tablecmds.c:14607 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "ურთიერთობის \"%2$s\" სვეტის \"%1$s\" შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14611 +#: commands/tablecmds.c:14636 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "" -#: commands/tablecmds.c:14622 +#: commands/tablecmds.c:14647 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "" -#: commands/tablecmds.c:14747 +#: commands/tablecmds.c:14772 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "სვეტის (\"%s\") ტიპის ორჯერ შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14785 +#: commands/tablecmds.c:14810 #, c-format msgid "generation expression for column \"%s\" cannot be cast automatically to type %s" msgstr "" -#: commands/tablecmds.c:14790 +#: commands/tablecmds.c:14815 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "" -#: commands/tablecmds.c:15094 +#: commands/tablecmds.c:15119 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "ფუნქციის ან პროცედურის მიერ გამოყენებული სვეტის ტიპის შექმნა შეუძლებელია" -#: commands/tablecmds.c:15095 commands/tablecmds.c:15110 commands/tablecmds.c:15130 commands/tablecmds.c:15149 commands/tablecmds.c:15208 +#: commands/tablecmds.c:15120 commands/tablecmds.c:15135 commands/tablecmds.c:15155 commands/tablecmds.c:15174 commands/tablecmds.c:15233 #, c-format msgid "%s depends on column \"%s\"" msgstr "%s ეყრდნობა სვეტს \"%s\"" -#: commands/tablecmds.c:15109 +#: commands/tablecmds.c:15134 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "ხედის ან წესის მიერ გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15129 +#: commands/tablecmds.c:15154 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "ტრიგერის აღწერაში გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15148 +#: commands/tablecmds.c:15173 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "პოლიტიკის აღწერაში გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15179 +#: commands/tablecmds.c:15204 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "გენერირებული სვეტის მიერ გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15180 +#: commands/tablecmds.c:15205 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "სვეტი (%s\") გენერირებული სვეტის (%s) მიერ გამოიყენება." -#: commands/tablecmds.c:15207 +#: commands/tablecmds.c:15232 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "გამოცემის WHERE პირობის მიერ გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16081 commands/tablecmds.c:16093 +#: commands/tablecmds.c:16106 commands/tablecmds.c:16118 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "ინდექსის \"%s\" მფლობელის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16083 commands/tablecmds.c:16095 +#: commands/tablecmds.c:16108 commands/tablecmds.c:16120 #, c-format msgid "Change the ownership of the index's table instead." msgstr "ამის მაგიერ ინდექსის ცხრილის მფლობელი შეცვალეთ." -#: commands/tablecmds.c:16109 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "მიმდევრობის \"%s\" მფლობელის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16134 +#: commands/tablecmds.c:16159 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "ურთიერთობის \"%s\" მფლობელის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16601 +#: commands/tablecmds.c:16626 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "ერთზე მეტი SET TABLESPACE ქვებრძანება ვერ გექნებათ" -#: commands/tablecmds.c:16680 +#: commands/tablecmds.c:16705 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "ურთიერთობის (%s) პარამეტრების დაყენება შეუძლებელია" -#: commands/tablecmds.c:16714 commands/view.c:440 +#: commands/tablecmds.c:16739 commands/view.c:440 #, c-format msgid "WITH CHECK OPTION is supported only on automatically updatable views" msgstr "WITH CHECK OPTION მხოლოდ ავტომატურად განახლებად ხედებზეა მხარდაჭერილი" -#: commands/tablecmds.c:16967 +#: commands/tablecmds.c:16992 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "ცხრილის სივრცეში მხოლოდ ცხრილები, ინდექსები და მატერიალიზებული ხედები შეიძლება არსებობდეს" -#: commands/tablecmds.c:16979 +#: commands/tablecmds.c:17004 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "ცხრილების სივრცეში pg_globl ურთიერთობების შეტანა/გამოტანა შეუძლებელია" -#: commands/tablecmds.c:17071 +#: commands/tablecmds.c:17096 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "შეწყვეტა, რადგან ბლოკი ურთიერთობაზე \"%s.%s\" ხელმისაწვდომი არაა" -#: commands/tablecmds.c:17087 +#: commands/tablecmds.c:17112 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "ცხრილების სივრცეში \"%s\" ურთიერთობა, რომელიც ემთხვევა, ვერ ვიპოვე" -#: commands/tablecmds.c:17209 +#: commands/tablecmds.c:17234 #, c-format msgid "cannot change inheritance of typed table" msgstr "ტიპიზირებული ცხრილის მემკვიდრეობითობის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:17214 commands/tablecmds.c:17798 +#: commands/tablecmds.c:17239 commands/tablecmds.c:17823 #, c-format msgid "cannot change inheritance of a partition" msgstr "დანაყოფის მემკვიდრეობითობის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:17219 +#: commands/tablecmds.c:17244 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "დაყოფილი ცხრილის მემკვიდრეობითობის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:17266 +#: commands/tablecmds.c:17291 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "სხვა სესიის დროებითი ურთიერთობის მემკვიდრეობით მიღება შეუძლებელია" -#: commands/tablecmds.c:17279 +#: commands/tablecmds.c:17304 #, c-format msgid "cannot inherit from a partition" msgstr "დანაყოფიდან მემკვიდრეობითობა შეუძლებელია" -#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 +#: commands/tablecmds.c:17326 commands/tablecmds.c:20347 #, c-format msgid "circular inheritance not allowed" msgstr "წრიული მემკვიდრეობითობა დაუშვებელია" -#: commands/tablecmds.c:17302 commands/tablecmds.c:20313 +#: commands/tablecmds.c:17327 commands/tablecmds.c:20348 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "\"%s\" უკვე \"%s\"-ის შვილია." -#: commands/tablecmds.c:17315 +#: commands/tablecmds.c:17340 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "ტრიგერი \"%s\" ხელს უშლის ცხრილს \"%s\" მემკვიდრეობის შვილად გადაიქცეს" -#: commands/tablecmds.c:17317 +#: commands/tablecmds.c:17342 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "ROW ტრიგერები, რომლებსაც გარდამავალი ცხრილები გააჩნიათ, მემკვიდრეობითობის იერარქიებში მხარდაჭერილი არაა." -#: commands/tablecmds.c:17518 commands/tablecmds.c:17767 +#: commands/tablecmds.c:17543 commands/tablecmds.c:17792 #, c-format msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" msgstr "სვეტი \"%s\" შვილ ცხრილში \"%s\" NOT NULL-ით უნდა იყოს დანიშნული" -#: commands/tablecmds.c:17528 +#: commands/tablecmds.c:17553 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "შვილ ცხრილში სვეტი \"%s\" გენერირებული სვეტი არ უნდა იყოს" -#: commands/tablecmds.c:17532 +#: commands/tablecmds.c:17557 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "შვილ ცხრილში სვეტი \"%s\" გენერირებული სვეტი არ უნდა იყოს" -#: commands/tablecmds.c:17578 +#: commands/tablecmds.c:17603 #, c-format msgid "child table is missing column \"%s\"" msgstr "შვილ ცხრილს აკლია სვეტი \"%s\"" -#: commands/tablecmds.c:17695 +#: commands/tablecmds.c:17720 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "შვილ ცხრილს \"%s\" შემოწმების შეზღუდვისთვის \"%s\" სხვა განსაზღვრება გააჩნია" -#: commands/tablecmds.c:17704 +#: commands/tablecmds.c:17729 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "შეზღუდვა \"%s\" კონფლიქტშია არა-მემკვიდრეობით მიღებულ შეზღუდვასთან შვილ ცხრილზე \"%s\"" -#: commands/tablecmds.c:17715 +#: commands/tablecmds.c:17740 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "შეზღუდვა \"%s\" კონფლიქტშია შეზღუდვასთან NOT VALID შვილ ცხრილზე \"%s\"" -#: commands/tablecmds.c:17726 +#: commands/tablecmds.c:17751 #, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" msgstr "შეზღუდვა \"%s\" კონფლიქტშია შეზღუდვასთან NOT ENFORCED შვილ ცხრილზე \"%s\"" -#: commands/tablecmds.c:17775 +#: commands/tablecmds.c:17800 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "შვილ ცხრილს აკლია შეზღუდვა \"%s\"" -#: commands/tablecmds.c:17862 +#: commands/tablecmds.c:17887 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "დანაყოფი \"%s\" უკვე დაყოფილი ცხრილიდან \"%s.%s\" მოხსნის რიგშია" -#: commands/tablecmds.c:17891 commands/tablecmds.c:17939 +#: commands/tablecmds.c:17916 commands/tablecmds.c:17964 #, c-format msgid "relation \"%s\" is not a partition of relation \"%s\"" msgstr "ურთიერთობა \"%s\" ურთიერთობის \"%s\" დანაყოფს არ წარმოადგენს" -#: commands/tablecmds.c:17945 +#: commands/tablecmds.c:17970 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "ურთიერთობა \"%s\" ურთიერთობის \"%s\" მშობელს არ წარმოადგენს" -#: commands/tablecmds.c:18216 +#: commands/tablecmds.c:18241 #, c-format msgid "typed tables cannot inherit" msgstr "ტიპიზირებულ ცხრილებს მემკვიდრეობითობა არ შეუძლიათ" -#: commands/tablecmds.c:18246 +#: commands/tablecmds.c:18271 #, c-format msgid "table is missing column \"%s\"" msgstr "ცხრილს აკლია სვეტი \"%s\"" -#: commands/tablecmds.c:18257 +#: commands/tablecmds.c:18282 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "ცხრილს აქვს სვეტი \"%s\" მაშინ, როცა ტიპი \"%s\"-ს მოითხოვს" -#: commands/tablecmds.c:18266 +#: commands/tablecmds.c:18291 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "ცხრილს \"%s\" სვეტისთვის \"%s\" სხვა ტიპი აქვს" -#: commands/tablecmds.c:18280 +#: commands/tablecmds.c:18305 #, c-format msgid "table has extra column \"%s\"" msgstr "ცხრილს აქვს დამატებითი სვეტი \"%s\"" -#: commands/tablecmds.c:18332 +#: commands/tablecmds.c:18357 #, c-format msgid "\"%s\" is not a typed table" msgstr "\"%s\" ტიპიზირებული ცხრილი არაა" -#: commands/tablecmds.c:18512 +#: commands/tablecmds.c:18537 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "არაუნიკალურ ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ" -#: commands/tablecmds.c:18518 +#: commands/tablecmds.c:18543 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "არასაუყოვნებლივ ინდექსს \"%s\" რეპლიკის იდენფიტიკაციისთვის ვერ გამოიყენებთ" -#: commands/tablecmds.c:18524 +#: commands/tablecmds.c:18549 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "გამოსახულების ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ" -#: commands/tablecmds.c:18530 +#: commands/tablecmds.c:18555 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "ნაწილობრივი ინდექსის (\"%s\") რეპლიკის იდენტიფიკატორად გამოყენება შეუძლებელია" -#: commands/tablecmds.c:18547 +#: commands/tablecmds.c:18572 #, c-format msgid "index \"%s\" cannot be used as replica identity because column %d is a system column" msgstr "ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ, რადგან სვეტი %d სისტემური სვეტია" -#: commands/tablecmds.c:18554 +#: commands/tablecmds.c:18579 #, c-format msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable" msgstr "ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ, რადგან სვეტი %s განულებადია" -#: commands/tablecmds.c:18803 +#: commands/tablecmds.c:18828 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "ცხრილის \"%s\" ჟურნალში ჩაწერის სტატუსის შეცვლა შეუძლებელია, რადგან ის დროებითია" -#: commands/tablecmds.c:18827 +#: commands/tablecmds.c:18852 #, c-format msgid "cannot change table \"%s\" to unlogged because it is part of a publication" msgstr "" -#: commands/tablecmds.c:18829 +#: commands/tablecmds.c:18854 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "უჟურნალო ურთიერთობების რეპლიკაცია შეუძლებელია." -#: commands/tablecmds.c:18874 +#: commands/tablecmds.c:18899 #, c-format msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\"" msgstr "" -#: commands/tablecmds.c:18884 +#: commands/tablecmds.c:18909 #, c-format msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\"" msgstr "" -#: commands/tablecmds.c:18948 +#: commands/tablecmds.c:18973 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "მფლობელობაში არსებული მიმდევრობის სხვა სქემაში გადატანა შეუძლებელია" -#: commands/tablecmds.c:19056 +#: commands/tablecmds.c:19081 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "სქემაში (%2$s) ურთიერთობა (%1$s) უკვე არსებობს" -#: commands/tablecmds.c:19481 +#: commands/tablecmds.c:19506 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "\"%s\" ცხრილი ან მატერიალიზებული ხედი არაა" -#: commands/tablecmds.c:19634 +#: commands/tablecmds.c:19659 #, c-format msgid "\"%s\" is not a composite type" msgstr "ტიპი %s კომპოზიტური არაა" -#: commands/tablecmds.c:19664 +#: commands/tablecmds.c:19689 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "ინდექსის (%s) სქემის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:19666 commands/tablecmds.c:19680 +#: commands/tablecmds.c:19691 commands/tablecmds.c:19705 #, c-format msgid "Change the schema of the table instead." msgstr "ამის მაგიერ ცხრილის სქემა შეცვლათ." -#: commands/tablecmds.c:19670 +#: commands/tablecmds.c:19695 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "კომპოზიტური ტიპის (%s) სქემის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:19678 +#: commands/tablecmds.c:19703 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "\"TOAST\" ცხრილის (%s) სქემის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:19710 +#: commands/tablecmds.c:19735 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "ერთზე მეტ სვეტთან ერთად დაყოფის სტრატეგიას \"list\" ვერ გამოიყენებთ" -#: commands/tablecmds.c:19776 +#: commands/tablecmds.c:19801 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "დანაყოფის გასაღებში დასახელებული სვეტი \"%s\" არ არსებობს" -#: commands/tablecmds.c:19784 +#: commands/tablecmds.c:19809 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "დანაყოფის გასაღებში სისტემური სვეტის (%s) გამოყენება შეუძლებელია" -#: commands/tablecmds.c:19798 commands/tablecmds.c:19891 +#: commands/tablecmds.c:19823 commands/tablecmds.c:19905 #, c-format msgid "cannot use generated column in partition key" msgstr "გენერირებულ სვეტს დანაყოფის გასაღებში ვერ გამოიყენებთ" -#: commands/tablecmds.c:19871 +#: commands/tablecmds.c:19892 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "დანაყოფის გასაღების გამოსახულებები, არ შეიძლება, სისტემურ სვეტზე მითითებებს შეიცავდნენ" -#: commands/tablecmds.c:19921 +#: commands/tablecmds.c:19956 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "ფუნქცია დანაყოფის გასაღების გამოსახულებაში აუცილებლად უნდა იყოს მონიშნული, როგორც IMMUTABLE" -#: commands/tablecmds.c:19930 +#: commands/tablecmds.c:19965 #, c-format msgid "cannot use constant expression as partition key" msgstr "დაყოფის გასაღების გამოსახულებაში მუდმივ გამოსახულებას ვერ გამოიყენებთ" -#: commands/tablecmds.c:19951 +#: commands/tablecmds.c:19986 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "დანაყოფის გამოსახულებისათვის კოლაციის დადგენა შეუძლებელია" -#: commands/tablecmds.c:19986 +#: commands/tablecmds.c:20021 #, c-format msgid "You must specify a hash operator class or define a default hash operator class for the data type." msgstr "" -#: commands/tablecmds.c:19992 +#: commands/tablecmds.c:20027 #, c-format msgid "You must specify a btree operator class or define a default btree operator class for the data type." msgstr "" -#: commands/tablecmds.c:20252 +#: commands/tablecmds.c:20287 #, c-format msgid "\"%s\" is already a partition" msgstr "\"%s\" უკვე დანაყოფია" -#: commands/tablecmds.c:20258 +#: commands/tablecmds.c:20293 #, c-format msgid "cannot attach a typed table as partition" msgstr "ტიპიზირებული ცხრილის, როგორც დანაყოფის მიბმა შეუძლებელია" -#: commands/tablecmds.c:20274 +#: commands/tablecmds.c:20309 #, c-format msgid "cannot attach inheritance child as partition" msgstr "მემკვიდრეობის შვილის დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20288 +#: commands/tablecmds.c:20323 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "მემკვიდრეობის მშობლის დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20322 +#: commands/tablecmds.c:20357 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "დროებითი ურითერთობის, როგორც მუდმივი ურთიერთობის (\"%s\") დანაყოფის მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20330 +#: commands/tablecmds.c:20365 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "მუდმივი ურთიერთობის, როგორც დროებითი ურთიერთობის (%s) დანაყოფის მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20338 +#: commands/tablecmds.c:20373 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "სხვა სესიის დროებითი ურთიერთობის დანაყოფის მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20345 +#: commands/tablecmds.c:20380 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "სხვა სესიის დროებითი ურთიერთობის დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20365 +#: commands/tablecmds.c:20400 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "ცხრილი \"%s\", რომლის მიმაგრებაც მიმდინარეობს, შეიცავს იდენტიფიკაციის სვეტს \"%s\"" -#: commands/tablecmds.c:20367 +#: commands/tablecmds.c:20402 #, c-format msgid "The new partition may not contain an identity column." msgstr "ახალი დანაყოფი არ შეიძლება, იდენტიფიკატორის სვეტს შეიცავდეს." -#: commands/tablecmds.c:20375 +#: commands/tablecmds.c:20410 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "ცხრილი \"%s\" შეიცავს სვეტს \"%s\", რომელიც მშობელში \"%s\" აღმოჩენილი არაა" -#: commands/tablecmds.c:20378 +#: commands/tablecmds.c:20413 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "ახალი დანაყოფი მხოლოდ მშობელში არსებულ სვეტებს შეიძლება, შეიცავდეს." -#: commands/tablecmds.c:20390 +#: commands/tablecmds.c:20425 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "ტრიგერი \"%s\" ხელს უშლის ცხრილს \"%s\" დანაყოფად გადაიქცეს" -#: commands/tablecmds.c:20392 +#: commands/tablecmds.c:20427 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "დანაყოფებზე იდენტიფიკაციის სვეტები მხარდაჭერილი არაა." -#: commands/tablecmds.c:20574 +#: commands/tablecmds.c:20609 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "გარე ცხრილის \"%s\" დაყოფილი ცხრილის (\"%s\") დანაყოფის სახით მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20577 +#: commands/tablecmds.c:20612 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "დაყოფილი ცხრილი \"%s\" უნიკალურ ცხრილებს შეიცავს." -#: commands/tablecmds.c:20900 +#: commands/tablecmds.c:20936 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "ნაგულისხმევი დანაყოფის არსებობის შემთხვევაში დანაყოფების ერთდროული მოხსნა შეუძლებელია" -#: commands/tablecmds.c:21009 +#: commands/tablecmds.c:21048 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "დაყოფილი ცხრილი \"%s\" ერთდროულად წაიშალა" -#: commands/tablecmds.c:21015 +#: commands/tablecmds.c:21054 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "დანაყოფი \"%s\" ერთდროულად წაიშალა" -#: commands/tablecmds.c:21646 commands/tablecmds.c:21666 commands/tablecmds.c:21687 commands/tablecmds.c:21706 commands/tablecmds.c:21755 +#: commands/tablecmds.c:21685 commands/tablecmds.c:21705 commands/tablecmds.c:21726 commands/tablecmds.c:21745 commands/tablecmds.c:21794 #, c-format msgid "cannot attach index \"%s\" as a partition of index \"%s\"" msgstr "ერთი ინდექსის ინდექსის (%s) მეორე ინდექსის (\"%s) დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:21649 +#: commands/tablecmds.c:21688 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "ინდექსი %s სხვა ინდექსზეა უკვე მიმაგრებული." -#: commands/tablecmds.c:21669 +#: commands/tablecmds.c:21708 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "ინდექსი %s ცხრილის (%s) არცერთი დანაყოფის ინდექსი არაა." -#: commands/tablecmds.c:21690 +#: commands/tablecmds.c:21729 #, c-format msgid "The index definitions do not match." msgstr "ინდექსის აღწერები არ ემთხვევა." -#: commands/tablecmds.c:21709 +#: commands/tablecmds.c:21748 #, c-format msgid "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint exists for index \"%s\"." msgstr "" -#: commands/tablecmds.c:21758 +#: commands/tablecmds.c:21797 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "ცხრილისთვის %s სხვა ინდექსი უკვე მიმაგრებულია." -#: commands/tablecmds.c:21881 +#: commands/tablecmds.c:21920 #, c-format msgid "invalid primary key definition" msgstr "არასწორი ძირითადი გასაღების აღწერა" -#: commands/tablecmds.c:21882 +#: commands/tablecmds.c:21921 #, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" არაა დანიშნული, როგორც NOT NULL." -#: commands/tablecmds.c:22017 +#: commands/tablecmds.c:22056 #, c-format msgid "column data type %s does not support compression" msgstr "სვეტის მონაცემის ტიპს (%s) შეკუმშვის მხარდაჭერა არ გააჩნია" -#: commands/tablecmds.c:22024 +#: commands/tablecmds.c:22063 #, c-format msgid "invalid compression method \"%s\"" msgstr "შეკუმშვის არასწორი მეთოდი \"%s\"" -#: commands/tablecmds.c:22050 +#: commands/tablecmds.c:22089 #, c-format msgid "invalid storage type \"%s\"" msgstr "საცავის არასწორი ტიპი \"%s\"" -#: commands/tablecmds.c:22060 +#: commands/tablecmds.c:22099 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "სვეტის მონაცემების ტიპს %s საცავის ტიპად მხოლოდ PLAIN შეიძლება, ჰქონდეს" @@ -12162,7 +12163,7 @@ msgstr "ტრიგერის \"%s\" შესრულებამდე ს msgid "cannot collect transition tuples from child foreign tables" msgstr "გარდასვლის კორტეჟების მოგროვება შეუძლებელია შვილი უცხო ცხრილებიდან" -#: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 executor/nodeModifyTable.c:3501 +#: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 executor/nodeModifyTable.c:3523 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "" @@ -12360,7 +12361,7 @@ msgstr "კონფლიქტური NULL/NOT NULL შეზღუდვე #: commands/typecmds.c:952 #, c-format msgid "redundant NOT NULL constraint definition" -msgstr "" +msgstr "დამატებითი NOT NULL შეზღუდვის აღწერა" #: commands/typecmds.c:958 #, c-format @@ -12652,47 +12653,47 @@ msgstr "ტიპის შესაცვლელად ზემომხმ msgid "%s is not a base type" msgstr "%s საბაზისო ტიპი არაა" -#: commands/user.c:201 +#: commands/user.c:200 #, c-format msgid "SYSID can no longer be specified" msgstr "SYSID-ის შეცვლა ახლა უკვე შეუძლებელია" -#: commands/user.c:319 commands/user.c:325 commands/user.c:331 commands/user.c:337 commands/user.c:343 +#: commands/user.c:318 commands/user.c:324 commands/user.c:330 commands/user.c:336 commands/user.c:342 #, c-format msgid "permission denied to create role" msgstr "როლის შექმნის წვდომა აკრძალულია" -#: commands/user.c:320 +#: commands/user.c:319 #, c-format msgid "Only roles with the %s attribute may create roles." msgstr "როლების შექმნა მხოლოდ %s ატრიბუტის მქონე როლებს შეუძლიათ." -#: commands/user.c:326 commands/user.c:332 commands/user.c:338 commands/user.c:344 +#: commands/user.c:325 commands/user.c:331 commands/user.c:337 commands/user.c:343 #, c-format msgid "Only roles with the %s attribute may create roles with the %s attribute." msgstr "მხოლოდ როლებს, რომლებსაც %s ატრიბუტი გააჩნიათ, შეუძლიათ როლის შექმნა, რომელსაც აქვს ატრიბუტი %s." -#: commands/user.c:355 commands/user.c:1386 commands/user.c:1393 gram.y:17473 gram.y:17519 utils/adt/acl.c:5707 utils/adt/acl.c:5713 +#: commands/user.c:354 commands/user.c:1386 commands/user.c:1393 gram.y:17473 gram.y:17519 utils/adt/acl.c:5707 utils/adt/acl.c:5713 #, c-format msgid "role name \"%s\" is reserved" msgstr "როლის სახელი \"%s\" დაცულია" -#: commands/user.c:357 commands/user.c:1388 commands/user.c:1395 +#: commands/user.c:356 commands/user.c:1388 commands/user.c:1395 #, c-format msgid "Role names starting with \"pg_\" are reserved." msgstr "როლის სახელები, რომლებიც \"pg_\"-ით იწყება, დაცულია." -#: commands/user.c:378 commands/user.c:1410 +#: commands/user.c:377 commands/user.c:1410 #, c-format msgid "role \"%s\" already exists" msgstr "როლი \"%s\" უკვე არსებობს" -#: commands/user.c:440 commands/user.c:924 +#: commands/user.c:439 commands/user.c:924 #, c-format msgid "empty string is not a valid password, clearing password" msgstr "ცარიელი სტრიქონი არ არის სწორი პაროლი, პაროლის გაწმენდა" -#: commands/user.c:469 +#: commands/user.c:468 #, c-format msgid "pg_authid OID value not set when in binary upgrade mode" msgstr "ბინარული განახლების რეჟიმში pg_authid-ის OID-ის მნიშვნელობა დაყენებული არაა" @@ -12886,229 +12887,219 @@ msgstr "%s პარამეტრს მომნიჭებელს ვე msgid "role \"%s\" has already been granted membership in role \"%s\" by role \"%s\"" msgstr "როლი \"%s\" უკვე გაწევრდა როლში \"%s\" \"%s\" როლის მიერ" -#: commands/user.c:2036 +#: commands/user.c:2025 #, c-format msgid "role \"%s\" has not been granted membership in role \"%s\" by role \"%s\"" msgstr "როლს \"%s\" უარი ეთქვა როლში \"%s\" გაწევრებაზე \"%s\" როლის მიერ" -#: commands/user.c:2137 +#: commands/user.c:2126 #, c-format msgid "role \"%s\" cannot have explicit members" msgstr "როლი \"%s\" არ შეიძლება, აშკარა წევრებს შეიცავდეს" -#: commands/user.c:2148 commands/user.c:2171 +#: commands/user.c:2137 commands/user.c:2160 #, c-format msgid "permission denied to grant role \"%s\"" msgstr "როლის (\"%s\") დაყენების წვდომა აკრძალულია" -#: commands/user.c:2150 +#: commands/user.c:2139 #, c-format msgid "Only roles with the %s attribute may grant roles with the %s attribute." msgstr "მხოლოდ როლებს, რომლებსაც %s ატრიბუტი გააჩნიათ, შეუძლიათ, როლებს %s ატრიბუტი მიანიჭონ." -#: commands/user.c:2155 commands/user.c:2178 +#: commands/user.c:2144 commands/user.c:2167 #, c-format msgid "permission denied to revoke role \"%s\"" msgstr "როლის (\"%s\") გაუქმების წვდომა აკრძალულია" -#: commands/user.c:2157 +#: commands/user.c:2146 #, c-format msgid "Only roles with the %s attribute may revoke roles with the %s attribute." msgstr "მხოლოდ როლებს, რომლებსაც %s ატრიბუტი გააჩნიათ, შეუძლიათ, როლებს %s ატრიბუტი მოაცილონ." -#: commands/user.c:2173 +#: commands/user.c:2162 #, c-format msgid "Only roles with the %s option on role \"%s\" may grant this role." msgstr "მხოლოდ როლებს, რომლებსაც როლზე \"%2$s\" პარამეტრი \"%1$s\" გააჩნიათ, შეუძლიათ, მიანიჭონ ეს როლი." -#: commands/user.c:2180 +#: commands/user.c:2169 #, c-format msgid "Only roles with the %s option on role \"%s\" may revoke this role." msgstr "მხოლოდ როლებს, რომლებსაც როლზე \"%2$s\" პარამეტრი \"%1$s\" გააჩნიათ, შეუძლიათ, მოაცილონ ეს როლი." -#: commands/user.c:2260 commands/user.c:2269 +#: commands/user.c:2249 commands/user.c:2258 #, c-format msgid "permission denied to grant privileges as role \"%s\"" msgstr "როლის (\"%s\") მინიჭების წვდომა აკრძალულია" -#: commands/user.c:2262 +#: commands/user.c:2251 #, c-format msgid "Only roles with privileges of role \"%s\" may grant privileges as this role." msgstr "მხოლოდ როლებს, რომლებსაც როლის \"%s\" პრივილეგიები გააჩნიათ, შეუძლიათ პრივილეგიები, როგორც, ამ როლმა, მიანიჭონ." -#: commands/user.c:2271 +#: commands/user.c:2260 #, c-format msgid "The grantor must have the %s option on role \"%s\"." msgstr "მიმნიჭებელს უნდა ჰქონდეს %s პარამეტრი როლზე \"%s\"." -#: commands/user.c:2279 +#: commands/user.c:2268 #, c-format msgid "permission denied to revoke privileges granted by role \"%s\"" msgstr "როლის (\"%s\") მიერ მინიჭებული პრივილეგიების გაუქმების წვდომა აკრძალულია" -#: commands/user.c:2281 +#: commands/user.c:2270 #, c-format msgid "Only roles with privileges of role \"%s\" may revoke privileges granted by this role." msgstr "მხოლოდ როლებს, რომლებსაც როლის \"%s\" პრივილეგიები გააჩნიათ, შეუძლიათ ამ როლის მიერ მინიჭებული პრივილეგიები მოაცილონ." -#: commands/user.c:2504 utils/adt/acl.c:1342 +#: commands/user.c:2493 utils/adt/acl.c:1342 #, c-format msgid "dependent privileges exist" msgstr "დამოკიდებული პრივილეგიები არსებობს" -#: commands/user.c:2505 utils/adt/acl.c:1343 +#: commands/user.c:2494 utils/adt/acl.c:1343 #, c-format msgid "Use CASCADE to revoke them too." msgstr "მათ გასაუქმებლადაც CASCADE გამოიყენეთ." -#: commands/vacuum.c:147 +#: commands/vacuum.c:148 #, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "\"%s\"-ის მნიშვნელობა 0 ან %d კბ-სა და %d კბ-ს შორის უნდა იყოს." -#: commands/vacuum.c:223 +#: commands/vacuum.c:224 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "BUFFER_USAGE_LIMIT პარამეტრი 0 ან %d კბ-სა და %d კბ-ს შორის უნდა იყოს" -#: commands/vacuum.c:233 -#, c-format -msgid "unrecognized ANALYZE option \"%s\"" -msgstr "\"ANALYZE\"-ის უცნობი პარამეტრი: %s" - -#: commands/vacuum.c:273 +#: commands/vacuum.c:275 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "პარალელურ პარამეტრს ესაჭიროება მნიშვნელობა 0-სა და %d-ს შორის" -#: commands/vacuum.c:285 +#: commands/vacuum.c:287 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "პარალელური დამხმარე პროცესების რაოდენობა მომტვერსასრუტებისთვის 0-სა და %d-ს შორის უნდა იყოს" -#: commands/vacuum.c:306 -#, c-format -msgid "unrecognized VACUUM option \"%s\"" -msgstr "\"VACUUM\"-ის უცნობი პარამეტრი: %s" - -#: commands/vacuum.c:332 +#: commands/vacuum.c:335 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL პარალელურად ვერ შესრულდება" -#: commands/vacuum.c:343 +#: commands/vacuum.c:346 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "VACUUM FULL-სთვის BUFFER_USAGE_LIMIT-ს ვერ მიუთითებთ" -#: commands/vacuum.c:357 +#: commands/vacuum.c:360 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "როცა მიწოდებულია სვეტების სია, პარამეტრის ANALYZE მითითება აუცილებელია" -#: commands/vacuum.c:369 +#: commands/vacuum.c:372 #, c-format msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL" msgstr "VACUUM-ის პარამეტრს 'DISABLE_PAGE_SKIPPING' FULL-თან ერთად ვერ გამოიყენებთ" -#: commands/vacuum.c:376 +#: commands/vacuum.c:379 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "VACUUM FULL-თან ერთად PROCESS_TOAST აუცილებელია" -#: commands/vacuum.c:385 +#: commands/vacuum.c:388 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables" msgstr "ONLY_DATABASE_STATS -ის მითითება ცხრილების სიასთან ერთად შეუძლებელია" -#: commands/vacuum.c:394 +#: commands/vacuum.c:397 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STAT-ის მითითება სხვა VACUMM პარამეტრებთან ერთად შეუძლებელია" -#: commands/vacuum.c:534 +#: commands/vacuum.c:537 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s-ს VACUUM-დან ან ANALYZE-დან ვერ შეასარულებთ" -#: commands/vacuum.c:756 +#: commands/vacuum.c:759 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "\"%s\"-ის მომტვერსასრუტების წვდომა აკრძალულია. გამოტოვება" -#: commands/vacuum.c:769 +#: commands/vacuum.c:772 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "\"%s\"-ის ანალიზისთვის წვდომა აკრძალულია. გამოტოვება" -#: commands/vacuum.c:847 commands/vacuum.c:948 +#: commands/vacuum.c:850 commands/vacuum.c:951 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "\"%s\"-ის მომტვერსასრუტება გამოტოვებულია -- ბლოკი ხელმისაწვდომი არაა" -#: commands/vacuum.c:852 +#: commands/vacuum.c:855 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "\"%s\"-ის მომტვერსასრუტება გამოტოვებულია -- ურთიერთობა აღარ არსებობს" -#: commands/vacuum.c:868 commands/vacuum.c:953 +#: commands/vacuum.c:871 commands/vacuum.c:956 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "\"%s\"-ის ანალიზი გამოტოვებულია -- ბლოკი ხელმისაწვდომი არაა" -#: commands/vacuum.c:873 +#: commands/vacuum.c:876 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "\"%s\"-ის ანალიზი გამოტოვებულია -- ურთიერთობა აღარ არსებობს" -#: commands/vacuum.c:989 +#: commands/vacuum.c:992 #, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" msgstr "დაყოფილ ცხრილზე \"%s\" ბრძანებას VACUUM ONLY გავლენა არ აქვს" -#: commands/vacuum.c:1180 +#: commands/vacuum.c:1183 #, c-format msgid "cutoff for removing and freezing tuples is far in the past" msgstr "" -#: commands/vacuum.c:1181 commands/vacuum.c:1186 +#: commands/vacuum.c:1184 commands/vacuum.c:1189 #, c-format 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 "" -#: commands/vacuum.c:1185 +#: commands/vacuum.c:1188 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "" -#: commands/vacuum.c:1947 +#: commands/vacuum.c:1950 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "ზოგიერთი ბაზა 2 მილიარდ ტრანზაქციაზე მეტია, რაც არ მომტვერსასრუტებულა" -#: commands/vacuum.c:1948 +#: commands/vacuum.c:1951 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "" -#: commands/vacuum.c:2134 +#: commands/vacuum.c:2143 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "" -#: commands/vacuum.c:2650 +#: commands/vacuum.c:2659 #, c-format msgid "scanned index \"%s\" to remove % row versions" msgstr "სკანირებული ინდექსი \"%s\" % მწკრივის ვერსიის წაშლას აპირებს" -#: commands/vacuum.c:2669 +#: commands/vacuum.c:2678 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "ინდექსი \"%s\" ახლა %.0f მწკრივის ვერსიას შეიცავს, %u გვერდში" -#: commands/vacuum.c:2673 +#: commands/vacuum.c:2682 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -13365,7 +13356,7 @@ msgstr "" msgid "Table has type %s at ordinal position %d, but query expects %s." msgstr "" -#: executor/execExpr.c:1157 parser/parse_agg.c:843 +#: executor/execExpr.c:1157 parser/parse_agg.c:896 #, c-format msgid "window function calls cannot be nested" msgstr "ფანჯრის ფუნქციის გამოძახებებს ერთმანეთში ვერ ჩადგამთ" @@ -13387,20 +13378,20 @@ msgid_plural "cannot pass more than %d arguments to a function" msgstr[0] "ფუნქციისთვის %d -ზე მეტი არგუმენტის გადაცემა შეუძლებელია" msgstr[1] "ფუნქციისთვის %d -ზე მეტი არგუმენტის გადაცემა შეუძლებელია" -#: executor/execExpr.c:2756 executor/execSRF.c:738 executor/functions.c:1581 utils/adt/jsonfuncs.c:4056 utils/fmgr/funcapi.c:89 utils/fmgr/funcapi.c:143 +#: executor/execExpr.c:2756 executor/execSRF.c:738 executor/functions.c:1604 utils/adt/jsonfuncs.c:4056 utils/fmgr/funcapi.c:89 utils/fmgr/funcapi.c:143 #, c-format msgid "set-valued function called in context that cannot accept a set" msgstr "ფუნქცია, რომელიც სეტს აბრუნებს, გამოძახებულია კონტექსტში, რომელიც სეტებს ვერ იღებს" -#: executor/execExpr.c:3262 parser/parse_node.c:272 parser/parse_node.c:322 +#: executor/execExpr.c:3264 parser/parse_node.c:272 parser/parse_node.c:322 #, c-format msgid "cannot subscript type %s because it does not support subscripting" msgstr "" -#: executor/execExpr.c:3390 executor/execExpr.c:3412 +#: executor/execExpr.c:3392 executor/execExpr.c:3414 #, c-format msgid "type %s does not support subscripted assignment" -msgstr "" +msgstr "ტიპს %s გამოწერილი მინიჭების მხარდაჭერა არ გააჩნია" #: executor/execExprInterp.c:2415 #, c-format @@ -13536,137 +13527,137 @@ msgstr "გასაღები აქტიურ გასაღებთა msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "" -#: executor/execMain.c:1066 +#: executor/execMain.c:1089 #, c-format msgid "cannot change sequence \"%s\"" msgstr "მიმდევრობის შეცვლა შეუძლებელია: \"%s\"" -#: executor/execMain.c:1072 +#: executor/execMain.c:1095 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "'TOAST' ტიპის ურთიერთობის \"%s\" შეცვლა შეუძლებელია" -#: executor/execMain.c:1091 +#: executor/execMain.c:1114 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "მატერიალიზებული ხედის შეცვლა შეუძლებელია: %s" -#: executor/execMain.c:1103 +#: executor/execMain.c:1126 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "გარე ცხრილში ჩამატების შეცდომა: %s" -#: executor/execMain.c:1109 +#: executor/execMain.c:1132 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "გარე ცხრილი ჩამატების საშუალებას არ იძლევა: %s" -#: executor/execMain.c:1116 +#: executor/execMain.c:1139 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "გარე ცხრილის განახლების შეცდომა: %s" -#: executor/execMain.c:1122 +#: executor/execMain.c:1145 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "გარე ცხრილი განახლებების საშუალებას არ იძლევა: %s" -#: executor/execMain.c:1129 +#: executor/execMain.c:1152 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "გარე ცხრილიდან წაშლის შეცდომა: %s" -#: executor/execMain.c:1135 +#: executor/execMain.c:1158 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "გარე ცხრილი წაშლის საშუალებას არ იძლევა: %s" -#: executor/execMain.c:1146 +#: executor/execMain.c:1169 #, c-format msgid "cannot change relation \"%s\"" msgstr "ურთიერთობის შეცვლის შეცდომა: %s" -#: executor/execMain.c:1173 +#: executor/execMain.c:1196 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "მიმდევრობაში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1180 +#: executor/execMain.c:1203 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "\"TOAST\" ურთიერთობაში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1187 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "ხედში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1195 +#: executor/execMain.c:1218 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "მატერიალიზებულ ხედში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1204 executor/execMain.c:2836 executor/nodeLockRows.c:135 +#: executor/execMain.c:1227 executor/execMain.c:2869 executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "გარე ცხრილში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1210 +#: executor/execMain.c:1233 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "ურთიერთობაში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1933 +#: executor/execMain.c:1966 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "ახალი მწკრივი ურთიერთობისთვის \"%s\" დანაყოფის შეზღუდვას არღვევს" -#: executor/execMain.c:1935 executor/execMain.c:2047 executor/execMain.c:2185 executor/execMain.c:2293 +#: executor/execMain.c:1968 executor/execMain.c:2080 executor/execMain.c:2218 executor/execMain.c:2326 #, c-format msgid "Failing row contains %s." msgstr "შეცდომიანი მწკრივი \"%s\"-ს შეიცავს." -#: executor/execMain.c:2045 +#: executor/execMain.c:2078 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "ახალი მწკრივი ურთიერთობისთვის \"%s\" არღვევს შემოწმების შეზღუდვას \"%s\"" -#: executor/execMain.c:2182 +#: executor/execMain.c:2215 #, c-format msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "ნულოვანი მნიშვნელობა სვეტში \"%s\" ურთიერთობისთვის \"%s\" არანულოვან შეზღუდვას არღვევს" -#: executor/execMain.c:2291 +#: executor/execMain.c:2324 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "ახალი მწკრივი არღვევს შემოწმების პარამეტრს ხედისთვის \"%s\"" -#: executor/execMain.c:2301 +#: executor/execMain.c:2334 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "ახალი მწკრივი არღვევს მწკრივის-დონის უსაფრთხოების პოლიტიკას \"%s\" ცხრილისთვის \"%s\"" -#: executor/execMain.c:2306 +#: executor/execMain.c:2339 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "ახალი მწკრივი ცხრილისთვის \"%s\" მწკრივის-დონის უსაფრთხოების პოლიტიკა არღვევს" -#: executor/execMain.c:2314 +#: executor/execMain.c:2347 #, c-format msgid "target row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "" -#: executor/execMain.c:2319 +#: executor/execMain.c:2352 #, c-format msgid "target row violates row-level security policy (USING expression) for table \"%s\"" msgstr "" -#: executor/execMain.c:2326 +#: executor/execMain.c:2359 #, c-format msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "" -#: executor/execMain.c:2331 +#: executor/execMain.c:2364 #, c-format msgid "new row violates row-level security policy (USING expression) for table \"%s\"" msgstr "" @@ -13808,84 +13799,84 @@ msgstr "ამ კონტექსტში საცავის კორტ msgid "materialized view \"%s\" has not been populated" msgstr "მატერიალიზებული ხედი \"%s\" შევსებული არაა" -#: executor/functions.c:291 +#: executor/functions.c:292 #, c-format msgid "could not determine actual type of argument declared %s" msgstr "არგუმენტის, აღწერილის, როგორც '%s' ტიპის დადგენა შეუძლებელია" -#: executor/functions.c:714 +#: executor/functions.c:737 #, c-format msgid "cannot COPY to/from client in an SQL function" msgstr "'SQL' ფუნქციაში კლიენტიდან/კლიენტამდე COPY შეუძლებელია" #. translator: %s is a SQL statement name -#: executor/functions.c:720 +#: executor/functions.c:743 #, c-format msgid "%s is not allowed in an SQL function" msgstr "%s SQL ფუნქციაში დაშვებული არაა" #. translator: %s is a SQL statement name -#: executor/functions.c:728 executor/spi.c:1744 executor/spi.c:2657 +#: executor/functions.c:751 executor/spi.c:1744 executor/spi.c:2657 #, c-format msgid "%s is not allowed in a non-volatile function" msgstr "%s-ის გამოყენება არააქროლად ფუნქციაში დაუშვებელია" -#: executor/functions.c:1162 executor/functions.c:2195 executor/functions.c:2233 executor/functions.c:2247 executor/functions.c:2337 executor/functions.c:2370 executor/functions.c:2384 +#: executor/functions.c:1185 executor/functions.c:2224 executor/functions.c:2262 executor/functions.c:2276 executor/functions.c:2366 executor/functions.c:2399 executor/functions.c:2413 #, c-format msgid "return type mismatch in function declared to return %s" msgstr "დაბრუნების ტიპის შეცდომა ფუნქციაში, რომელსაც აღწერილი აქვს, დააბრუნოს %s" -#: executor/functions.c:1164 executor/functions.c:2197 +#: executor/functions.c:1187 executor/functions.c:2226 #, c-format msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE/MERGE RETURNING." msgstr "ფუნქციის ბოლო გამოსახულება SELECT ან INSERT/UPDATE/DELETE/MERGE RETURNING უნდა იყოს." -#: executor/functions.c:1247 utils/cache/plancache.c:860 +#: executor/functions.c:1270 utils/cache/plancache.c:860 #, c-format msgid "cached plan must not change result type" msgstr "დაკეშილი გეგმა შედეგის ტიპს არ უნდა ცვლიდეს" -#: executor/functions.c:1893 executor/functions.c:1924 +#: executor/functions.c:1922 executor/functions.c:1953 #, c-format msgid "SQL function \"%s\" during startup" msgstr "SQL ფუნქცია \"%s\" გაშვებისას" -#: executor/functions.c:1921 +#: executor/functions.c:1950 #, c-format msgid "SQL function \"%s\" statement %d" msgstr "SQL ფუნქცია \"%s\" გამოსახულება %d" -#: executor/functions.c:2046 +#: executor/functions.c:2075 #, c-format msgid "calling procedures with output arguments is not supported in SQL functions" msgstr "გამოტანის არგუმენტების მქონე პროცედურების გამოძახება SQL-ის ფუნქციებში მხარდაჭერილი არაა" -#: executor/functions.c:2235 +#: executor/functions.c:2264 #, c-format msgid "Final statement must return exactly one column." msgstr "პირველი გამოსახულება ზუსტად ერთ სვეტს უნდა აბრუნებდეს." -#: executor/functions.c:2249 +#: executor/functions.c:2278 #, c-format msgid "Actual return type is %s." msgstr "დაბრუნების ნამდვილი ტიპია %s." -#: executor/functions.c:2339 +#: executor/functions.c:2368 #, c-format msgid "Final statement returns too many columns." msgstr "პირველი გამოსახულება მეტისმეტად ბევრ სვეტს აბრუნებს." -#: executor/functions.c:2372 +#: executor/functions.c:2401 #, c-format msgid "Final statement returns %s instead of %s at column %d." msgstr "" -#: executor/functions.c:2386 +#: executor/functions.c:2415 #, c-format msgid "Final statement returns too few columns." msgstr "ბოლო გამოსახულება მეტისმეტად ცოტა სვეტს აბრუნებს." -#: executor/functions.c:2414 +#: executor/functions.c:2443 #, c-format msgid "return type %s is not supported for SQL functions" msgstr "დაბრუნების ტიპი %s SQL ფუნქციებში მხარდაჭერილი არაა" @@ -13895,7 +13886,7 @@ msgstr "დაბრუნების ტიპი %s SQL ფუნქციე msgid "aggregate %u needs to have compatible input type and transition type" msgstr "" -#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:692 parser/parse_agg.c:735 #, c-format msgid "aggregate function calls cannot be nested" msgstr "აგრეგატულ ფუნქციებს ერთანეთში ვერ ჩადგამთ" @@ -13976,7 +13967,7 @@ msgid "Consider defining the foreign key on table \"%s\"." msgstr "განიხილეთ გარე გასაღების აღწერა ცხრილზე \"%s\"." #. translator: %s is a SQL command name -#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3507 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3529 #, c-format msgid "%s command cannot affect row a second time" msgstr "ბრძანებას %s მწკრივის მეორედ შეცვლა არ შეუძლია" @@ -13986,12 +13977,12 @@ msgstr "ბრძანებას %s მწკრივის მეორე msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values." msgstr "" -#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3500 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3522 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "გასაახლებელი ან წასაშლელ კორტეჟი მიმდინარე ბრძანების მიერ დატრიგერებულმა ოპერაციამ უკვე შეცვალა" -#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3509 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3531 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "" @@ -14011,7 +14002,7 @@ msgstr "TABLESAMPLE პარამეტრი ნულოვანი ვე msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "TABLESAMPLE REPEATABLE პარამეტრი ნულოვანი ვერ იქნება" -#: executor/nodeSubplan.c:317 executor/nodeSubplan.c:343 executor/nodeSubplan.c:397 executor/nodeSubplan.c:1182 +#: executor/nodeSubplan.c:298 executor/nodeSubplan.c:324 executor/nodeSubplan.c:378 executor/nodeSubplan.c:1166 #, c-format msgid "more than one row returned by a subquery used as an expression" msgstr "" @@ -14117,7 +14108,7 @@ msgstr "%s გამოსახულების კურსორის ს msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported" msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE მხარდაჭერილი არაა" -#: executor/spi.c:1719 parser/analyze.c:3076 +#: executor/spi.c:1719 parser/analyze.c:3077 #, c-format msgid "Scrollable cursors must be READ ONLY." msgstr "გადახვევადი კურსორები READ ONLY უნდა იყოს." @@ -14158,7 +14149,7 @@ msgstr "გაზიარებული-მეხსიერების მ msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "\"%s\"-სთვის მომხმარებლის ასახვა ვერ ვიპოვე. სერვერი \"%s\"" -#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 optimizer/util/plancat.c:538 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7299 optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" msgstr "" @@ -14297,7 +14288,7 @@ msgstr "CREATE OR REPLACE CONSTRAINT TRIGGER მხარდაუჭერე msgid "duplicate trigger events specified" msgstr "მითითებულია ტრიგერი მეორდება" -#: gram.y:6229 parser/parse_utilcmd.c:3947 parser/parse_utilcmd.c:3973 +#: gram.y:6229 parser/parse_utilcmd.c:3946 parser/parse_utilcmd.c:3972 #, c-format msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE" msgstr "შეზღუდვა, რომელიც აღწერილია, როგორც 'INITIALLY DEFERRED' DEFERRABLE ტიპის უნდა იყოს" @@ -14862,7 +14853,7 @@ msgstr "" #: libpq/auth-oauth.c:760 #, c-format msgid "%s module \"%s\" must define the symbol %s" -msgstr "" +msgstr "%s მოდულმა \"%s\" უნდა აღწეროს სიმბოლო %s" #: libpq/auth-oauth.c:773 #, c-format @@ -14872,7 +14863,7 @@ msgstr "%s-ის მოდული \"%s\": ჯადოსნური რი #: libpq/auth-oauth.c:775 #, c-format msgid "Server has magic number 0x%08X, module has 0x%08X." -msgstr "" +msgstr "სერვერს აქვს ჯადოსნური რიცხვი 0x%08X, მოდულს აქვს 0x%08X." #: libpq/auth-oauth.c:784 #, c-format @@ -16788,7 +16779,7 @@ msgstr "ExtensibleNodeMethods \"%s\" რეგისტრირებული msgid "relation \"%s\" does not have a composite type" msgstr "ურთიერთობას \"%s\" კომპოზიტური ტიპი არ გააჩნია" -#: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2602 parser/parse_coerce.c:2740 parser/parse_coerce.c:2787 parser/parse_expr.c:2120 parser/parse_func.c:710 parser/parse_oper.c:869 utils/adt/array_userfuncs.c:1950 utils/fmgr/funcapi.c:669 +#: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2602 parser/parse_coerce.c:2740 parser/parse_coerce.c:2787 parser/parse_expr.c:2121 parser/parse_func.c:710 parser/parse_oper.c:869 utils/adt/array_userfuncs.c:1950 utils/fmgr/funcapi.c:669 #, c-format msgid "could not find array type for data type %s" msgstr "მონაცემების ტიპისთვის %s მასივის ტიპი ვერ ვიპოვე" @@ -16808,7 +16799,7 @@ msgstr "უსახელო პორტალი პარამეტრე msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "" -#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7321 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1692 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "ურთიერთობაზე \"%s\" MERGE-ს ვერ გაუშვებთ" @@ -16820,42 +16811,42 @@ msgid "%s cannot be applied to the nullable side of an outer join" msgstr "" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 parser/analyze.c:3395 +#: optimizer/plan/planner.c:1512 parser/analyze.c:1815 parser/analyze.c:2074 parser/analyze.c:3396 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s აკრძალულია UNION/INTERSECT/EXCEPT-სთან ერთად" -#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 #, c-format msgid "could not implement GROUP BY" msgstr "\"GROUP BY\"-ის განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 optimizer/plan/planner.c:4806 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2259 optimizer/plan/planner.c:4145 optimizer/plan/planner.c:4826 optimizer/prep/prepunion.c:1073 #, c-format msgid "Some of the datatypes only support hashing, while others only support sorting." msgstr "ზოგიერთ მონაცემის ტიპს მხოლოდ ჰეშირების მხარდაჭერა გააჩნია, მაშინ, როცა სხვებს მხოლოდ დალაგება შეუძლიათ." -#: optimizer/plan/planner.c:4805 +#: optimizer/plan/planner.c:4825 #, c-format msgid "could not implement DISTINCT" msgstr "\"DISTINCT\"-ის განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:6267 +#: optimizer/plan/planner.c:6287 #, c-format msgid "could not implement window PARTITION BY" msgstr "ფანჯრის, \"PARTITION BY\" განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:6268 +#: optimizer/plan/planner.c:6288 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "ფანჯრის დამყოფი სვეტები დალაგებადი მონაცემის ტიპის უნდა იყოს." -#: optimizer/plan/planner.c:6272 +#: optimizer/plan/planner.c:6292 #, c-format msgid "could not implement window ORDER BY" msgstr "ფანჯრის, \"ORDER BY\" განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:6273 +#: optimizer/plan/planner.c:6293 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "ფანჯრის დამლაგებელი სვეტები დალაგებადი მონაცემის ტიპის უნდა იყოს." @@ -16886,32 +16877,32 @@ msgstr "ურთიერთობის \"%2$s\" ატრიბუტი \"%1 msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" msgstr "ურთიერთობის \"%2$s\" ატრიბუტი \"%1$s\" მშობლის კოლაციას არ ემთხვევა" -#: optimizer/util/clauses.c:4966 +#: optimizer/util/clauses.c:4968 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "SQL ფუნქცია \"%s\" ხაზში ჩასმისას" -#: optimizer/util/plancat.c:153 +#: optimizer/util/plancat.c:154 #, c-format msgid "cannot access temporary or unlogged relations during recovery" msgstr "აღდგენისას დროებით ან უჟურნალო ურთიერთობებთან წვდომა შეუძლებელია" -#: optimizer/util/plancat.c:770 +#: optimizer/util/plancat.c:776 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "" -#: optimizer/util/plancat.c:787 +#: optimizer/util/plancat.c:793 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "შეზღუდვას ON CONFLICT პირობაში ასოცირებული ინდექსი არ გააჩნია" -#: optimizer/util/plancat.c:837 +#: optimizer/util/plancat.c:843 #, c-format msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints" msgstr "ON CONFLICT DO UPDATE გამორიცხვის შეზღუდვებთან ერთად მხარდაჭერილი არაა" -#: optimizer/util/plancat.c:954 +#: optimizer/util/plancat.c:960 #, c-format msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification" msgstr "უნიკალური ან გამორიცხვის შეზღუდვა, რომელიც ON CONFLICT-ის აღწერას ემთხვევა, არ არსებობს" @@ -16942,7 +16933,7 @@ msgid "SELECT ... INTO is not allowed here" msgstr "SELECT ... INTO აქ დაშვებული არაა" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:1717 parser/analyze.c:3627 +#: parser/analyze.c:1717 parser/analyze.c:3628 #, c-format msgid "%s cannot be applied to VALUES" msgstr "%s-ს VALUES-ზე ვერ გამოიყენებთ" @@ -16991,7 +16982,7 @@ msgstr "%s-ის რამდენჯერმე მითითება ა #: parser/analyze.c:2690 parser/parse_relation.c:473 #, c-format msgid "table name \"%s\" specified more than once" -msgstr "" +msgstr "ცხრილის სახელი \"%s\" ერთზე მეტჯერაა მითითებული" #: parser/analyze.c:2738 #, c-format @@ -17011,466 +17002,476 @@ msgid "variable \"%s\" is of type %s but expression is of type %s" msgstr "\"%s\" ცვლადის ტიპია \"%s\", მაგრამ გამოსახულება %s ტიპისაა" #. translator: %s is a SQL keyword -#: parser/analyze.c:3026 parser/analyze.c:3034 +#: parser/analyze.c:3027 parser/analyze.c:3035 #, c-format msgid "cannot specify both %s and %s" msgstr "ორივე, %s და %s ერთად მითითება შეუძლებელია" -#: parser/analyze.c:3054 +#: parser/analyze.c:3055 #, 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:3062 +#: parser/analyze.c:3063 #, c-format msgid "DECLARE CURSOR WITH HOLD ... %s is not supported" msgstr "DECLARE CURSOR WITH HOLD ... %s მხარდაჭერილი არაა" -#: parser/analyze.c:3065 +#: parser/analyze.c:3066 #, c-format msgid "Holdable cursors must be READ ONLY." msgstr "შენახვადი კურსორები READ ONLY ტიპის უნდა იყოს." #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3073 +#: parser/analyze.c:3074 #, 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:3084 +#: parser/analyze.c:3085 #, c-format msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid" msgstr "DECLARE INSENSITIVE CURSOR ... %s არასწორია" -#: parser/analyze.c:3087 +#: parser/analyze.c:3088 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "დამოუკიდებელი კურსორები READ ONLY ტიპის უნდა იყოს." -#: parser/analyze.c:3181 +#: parser/analyze.c:3182 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "მატერიალიზებულმა ხედებმა WITH-ში მონაცემების-შემცვლელი გამოსახულებები არ უნდა გამოიყენონ" -#: parser/analyze.c:3191 +#: parser/analyze.c:3192 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "მატერიალიზებულმა ხედებმა დროებითი ცხრილები ან ხედები არ უნდა გამოიყენონ" -#: parser/analyze.c:3201 +#: parser/analyze.c:3202 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "მატერიალიზებული ხედის აღწერა მიმაგრებული პარამეტრების გამოყენებით შეუძლებელია" -#: parser/analyze.c:3213 +#: parser/analyze.c:3214 #, c-format msgid "materialized views cannot be unlogged" msgstr "მატერიალიზებული ხედების ჟურნალის გამორთვა შეუძლებელია" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3402 +#: parser/analyze.c:3403 #, 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:3409 +#: parser/analyze.c:3410 #, 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:3416 +#: parser/analyze.c:3417 #, 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:3423 +#: parser/analyze.c:3424 #, 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:3430 +#: parser/analyze.c:3431 #, 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:3437 +#: parser/analyze.c:3438 #, 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:3536 +#: parser/analyze.c:3537 #, c-format msgid "%s must specify unqualified relation names" msgstr "" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3600 +#: parser/analyze.c:3601 #, 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:3609 +#: parser/analyze.c:3610 #, 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:3618 +#: parser/analyze.c:3619 #, 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:3636 +#: parser/analyze.c:3637 #, 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:3645 +#: parser/analyze.c:3646 #, c-format msgid "%s cannot be applied to a named tuplestore" msgstr "" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3665 +#: parser/analyze.c:3666 #, c-format msgid "relation \"%s\" in %s clause not found in FROM clause" msgstr "" -#: parser/parse_agg.c:215 parser/parse_oper.c:215 +#: parser/parse_agg.c:218 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" msgstr "ტიპისთვის %s დალაგების ოპერატორის იდენტიფიკაცია შეუძლებელია" -#: parser/parse_agg.c:217 +#: parser/parse_agg.c:220 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "DISTINCT-ის მქონე აგრეგატებს შეყვანილი ინფორმაციის დალაგება თვითონ უნდა შეეძლოთ." -#: parser/parse_agg.c:275 +#: parser/parse_agg.c:278 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPING-ის არგუმენტების რიცხვი 32-ზე ნაკლები უნდა იყოს" -#: parser/parse_agg.c:378 +#: parser/parse_agg.c:382 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "აგრეგატულ ფუნქციებს JOIN-ის პირობებში ვერ გამოიყენებთ" -#: parser/parse_agg.c:380 +#: parser/parse_agg.c:384 msgid "grouping operations are not allowed in JOIN conditions" msgstr "დაჯგუფების ოპერაციებს JOIN-ის პირობებში ვერ გამოიყენებთ" -#: parser/parse_agg.c:390 +#: parser/parse_agg.c:394 msgid "aggregate functions are not allowed in FROM clause of their own query level" msgstr "აგრეგატული ფუნქციები მათი საკუთარი მოთხოვნის დონის FROM პირობაში დაშვებული არაა" -#: parser/parse_agg.c:392 +#: parser/parse_agg.c:396 msgid "grouping operations are not allowed in FROM clause of their own query level" msgstr "დაჯგუფების ფუნქციები მათი საკუთარი მოთხოვნის დონის FROM პირობაში დაშვებული არაა" -#: parser/parse_agg.c:397 +#: parser/parse_agg.c:401 msgid "aggregate functions are not allowed in functions in FROM" msgstr "აგრეგატულ ფუნქციებს FROM-ში ვერ გამოიყენებთ" -#: parser/parse_agg.c:399 +#: parser/parse_agg.c:403 msgid "grouping operations are not allowed in functions in FROM" msgstr "დაჯგუფების ოპერაციებს FROM-ში ვერ გამოიყენებთ" -#: parser/parse_agg.c:407 +#: parser/parse_agg.c:411 msgid "aggregate functions are not allowed in policy expressions" msgstr "წესის გამოსახულებებში აგრეგატული ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:409 +#: parser/parse_agg.c:413 msgid "grouping operations are not allowed in policy expressions" msgstr "წესის გამოსახულებებში დაჯგუფების ოპერაციები დაუშვებელია" -#: parser/parse_agg.c:426 +#: parser/parse_agg.c:430 msgid "aggregate functions are not allowed in window RANGE" msgstr "ფანჯრის RANGE-ში აგრეგატული ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:432 msgid "grouping operations are not allowed in window RANGE" msgstr "ფანჯრის RANGE-ში დაჯგუფების ოპერაციები დაუშვებელია" -#: parser/parse_agg.c:433 +#: parser/parse_agg.c:437 msgid "aggregate functions are not allowed in window ROWS" msgstr "ფანჯრის ROWS-ში აგრეგატული ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:439 msgid "grouping operations are not allowed in window ROWS" msgstr "ფანჯრის ROWS_ში დაჯგუფების ოპერაციები დაუშვებელია" -#: parser/parse_agg.c:440 +#: parser/parse_agg.c:444 msgid "aggregate functions are not allowed in window GROUPS" msgstr "აგრეგატული ფუნქციები ფანჯრის GROUPS-ში დაშვებული არაა" -#: parser/parse_agg.c:442 +#: parser/parse_agg.c:446 msgid "grouping operations are not allowed in window GROUPS" msgstr "დაჯგუფების ფუნქციები ფანჯრის GROUPS-ში დაშვებული არაა" -#: parser/parse_agg.c:455 +#: parser/parse_agg.c:459 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "აგრეგატული ფუნქციები MERGE WHEN-ის პირობებში დაშვებული არაა" -#: parser/parse_agg.c:457 +#: parser/parse_agg.c:461 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "დაჯგუფების ფუნქციები MERGE WHEN-ის პირობებში დაშვებული არაა" -#: parser/parse_agg.c:484 +#: parser/parse_agg.c:488 msgid "aggregate functions are not allowed in check constraints" msgstr "აგრეგატული ფუნქციები შეზღუდვის შემოწმებებში დაშვებული არაა" -#: parser/parse_agg.c:486 +#: parser/parse_agg.c:490 msgid "grouping operations are not allowed in check constraints" msgstr "დაჯგუფების ფუნქციები შეზღუდვის შემოწმებებში დაშვებული არაა" -#: parser/parse_agg.c:493 +#: parser/parse_agg.c:497 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "აგრეგატული ფუნქციები DEFAULT გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:499 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "დაჯგუფების ფუნქციები DEFAULT გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:500 +#: parser/parse_agg.c:504 msgid "aggregate functions are not allowed in index expressions" msgstr "აგრეგატული ფუნქციები ინდექსის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:506 msgid "grouping operations are not allowed in index expressions" msgstr "დაჯგუფების ფუნქციები ინდექსის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:507 +#: parser/parse_agg.c:511 msgid "aggregate functions are not allowed in index predicates" msgstr "აგრეგატული ფუნქციები ინდექსის პრედიკატებში დაშვებული არაა" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:513 msgid "grouping operations are not allowed in index predicates" msgstr "დაშვებული ფუნქციები ინდექსის პრედიკატებში დაშვებული არაა" -#: parser/parse_agg.c:514 +#: parser/parse_agg.c:518 msgid "aggregate functions are not allowed in statistics expressions" msgstr "აგრეგატული ფუნქციები სტატისტიკის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:520 msgid "grouping operations are not allowed in statistics expressions" msgstr "დაჯგუფების ფუნქციები სტატისტიკის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:521 +#: parser/parse_agg.c:525 msgid "aggregate functions are not allowed in transform expressions" msgstr "აგრეგატული ფუნქციები გადაყვანის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:527 msgid "grouping operations are not allowed in transform expressions" msgstr "დაჯგუფების ფუნქციები გადაყვანის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:528 +#: parser/parse_agg.c:532 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "აგრეგატული ფუნქციები EXECUTE-ის პარამეტრებში დაშვებული არაა" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:534 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "დაჯგუფების ფუნქციები EXECUTE-ის პარამეტრებში დაშვებული არაა" -#: parser/parse_agg.c:535 +#: parser/parse_agg.c:539 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "აგრეგატული ფუნქციები WHEN-ის ტრიგერის პირობებში დაშვებული არაა" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:541 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "დაჯგუფების ფუნქციები WHEN-ის ტრიგერის პირობებში დაშვებული არაა" -#: parser/parse_agg.c:542 +#: parser/parse_agg.c:546 msgid "aggregate functions are not allowed in partition bound" msgstr "აგრეგატული ფუნქციები დანაყოფის საზღვარში დაშვებული არაა" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:548 msgid "grouping operations are not allowed in partition bound" msgstr "დაჯგუფების ფუნქციები დანაყოფის საზღვარში დაშვებული არაა" -#: parser/parse_agg.c:549 +#: parser/parse_agg.c:553 msgid "aggregate functions are not allowed in partition key expressions" msgstr "აგრეგატული ფუნქციები დანაყოფის გასაღების გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:551 +#: parser/parse_agg.c:555 msgid "grouping operations are not allowed in partition key expressions" msgstr "დაჯგუფების ფუნქციები დანაყოფის გასაღების გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:557 +#: parser/parse_agg.c:561 msgid "aggregate functions are not allowed in column generation expressions" msgstr "აგრეგატული ფუნქციები სვეტის გენერაციის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:559 +#: parser/parse_agg.c:563 msgid "grouping operations are not allowed in column generation expressions" msgstr "დაჯგუფების ფუნქციები სვეტის გენერაციის გამოსახულებებში დაშვებული არაა" -#: parser/parse_agg.c:565 +#: parser/parse_agg.c:569 msgid "aggregate functions are not allowed in CALL arguments" msgstr "აგრეგატული ფუნქციები CALL-ის არგუმენტებში დაშვებული არაა" -#: parser/parse_agg.c:567 +#: parser/parse_agg.c:571 msgid "grouping operations are not allowed in CALL arguments" msgstr "დაჯგუფების ფუნქციები CALL-ის არგუმენტებში დაშვებული არაა" -#: parser/parse_agg.c:573 +#: parser/parse_agg.c:577 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "აგრეგატული ფუნქციები COPY FROM WHERE პირობებში დაშვებული არაა" -#: parser/parse_agg.c:575 +#: parser/parse_agg.c:579 msgid "grouping operations are not allowed in COPY FROM WHERE conditions" msgstr "დაჯგუფების ფუნქციები COPY FROM WHERE პირობებში დაშვებული არაა" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:602 parser/parse_clause.c:1962 +#: parser/parse_agg.c:606 parser/parse_clause.c:1962 #, 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:605 +#: parser/parse_agg.c:609 #, c-format msgid "grouping operations are not allowed in %s" msgstr "დაჯგუფების ფუნქციები %s-ში დაშვებული არაა" -#: parser/parse_agg.c:706 +#: parser/parse_agg.c:705 parser/parse_agg.c:742 +#, c-format +msgid "outer-level aggregate cannot use a nested CTE" +msgstr "გარე დონის აგრეგატი ერთმანეთში ჩასმულ CTE-ს ვერ გამოიყენებს" + +#: parser/parse_agg.c:706 parser/parse_agg.c:743 +#, c-format +msgid "CTE \"%s\" is below the aggregate's semantic level." +msgstr "" + +#: parser/parse_agg.c:728 #, c-format msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments" msgstr "" -#: parser/parse_agg.c:784 +#: parser/parse_agg.c:813 #, c-format msgid "aggregate function calls cannot contain set-returning function calls" msgstr "აგრეგატული ფუნქციის გამოძახებები არ შეძლება, სეტების დამბრუნებელი ფუნქციის გამოძახებებს შეიცავდეს" -#: parser/parse_agg.c:785 parser/parse_expr.c:1762 parser/parse_expr.c:2255 parser/parse_func.c:885 +#: parser/parse_agg.c:814 parser/parse_expr.c:1763 parser/parse_expr.c:2256 parser/parse_func.c:885 #, c-format msgid "You might be able to move the set-returning function into a LATERAL FROM item." msgstr "" -#: parser/parse_agg.c:790 +#: parser/parse_agg.c:819 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "აგრეგატული ფუნქციის გამოძახებები არ შეიძლება, ფანჯრის ფუნქციის გამოძახებებს შეიცავდეს" -#: parser/parse_agg.c:869 +#: parser/parse_agg.c:922 msgid "window functions are not allowed in JOIN conditions" msgstr "\"JOIN\"-ის პირობებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:876 +#: parser/parse_agg.c:929 msgid "window functions are not allowed in functions in FROM" msgstr "\"FROM\"-ის ფუნქციებში ფანჯრების ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:882 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in policy expressions" msgstr "წესების გამოსახულებებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:948 msgid "window functions are not allowed in window definitions" msgstr "ფანჯრის აღწერებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:906 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "\"MERGE WHEN\" პირობებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:931 +#: parser/parse_agg.c:984 msgid "window functions are not allowed in check constraints" msgstr "შეზღუდვის შემოწმებაში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:935 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in DEFAULT expressions" msgstr "ნაგულისხმევ გამოსახულებებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:938 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in index expressions" msgstr "ინდექსის გამოსახულებებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:941 +#: parser/parse_agg.c:994 msgid "window functions are not allowed in statistics expressions" msgstr "სტატისტიკის გამოსახულებებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:944 +#: parser/parse_agg.c:997 msgid "window functions are not allowed in index predicates" msgstr "ინდექსის პრედიკატებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:947 +#: parser/parse_agg.c:1000 msgid "window functions are not allowed in transform expressions" msgstr "გადაყვანის გამოსახულებებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:950 +#: parser/parse_agg.c:1003 msgid "window functions are not allowed in EXECUTE parameters" msgstr "\"EXECUTE\"-ის პარამეტრებში ფანჯრის ფუნქციები დაუშვებელია\"" -#: parser/parse_agg.c:953 +#: parser/parse_agg.c:1006 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "\"WHEN\"-ის პირობების ტრიგერში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:956 +#: parser/parse_agg.c:1009 msgid "window functions are not allowed in partition bound" msgstr "დანაყოფის საზღვარში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:959 +#: parser/parse_agg.c:1012 msgid "window functions are not allowed in partition key expressions" msgstr "დანაყოფის გასაღების გამოსახულებებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:962 +#: parser/parse_agg.c:1015 msgid "window functions are not allowed in CALL arguments" msgstr "\"CALL\"-ის არგუმენტებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:965 +#: parser/parse_agg.c:1018 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "\"COPY FROM WHERE\"-ის პირობებში ფანჯრის ფუნქციები დაუშვებელია" -#: parser/parse_agg.c:968 +#: parser/parse_agg.c:1021 msgid "window functions are not allowed in column generation expressions" msgstr "სვეტის გენერაციის გამოსახულებებში ფანჯრის ფუნქციები დაუშვებელია" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:991 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1044 parser/parse_clause.c:1971 #, c-format msgid "window functions are not allowed in %s" msgstr "ფანჯრის ფუნქციები არ არის დაშვებული %s-ში" -#: parser/parse_agg.c:1025 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1078 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "ფანჯარა \"%s\" არ არსებობს" -#: parser/parse_agg.c:1115 +#: parser/parse_agg.c:1168 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "ძალიან ბევრი დაჯგუფების ნაკრებია (მაქსიმუმ 4096)" -#: parser/parse_agg.c:1276 +#: parser/parse_agg.c:1329 #, c-format msgid "aggregate functions are not allowed in a recursive query's recursive term" msgstr "" -#: parser/parse_agg.c:1499 +#: parser/parse_agg.c:1552 #, c-format msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function" msgstr "" -#: parser/parse_agg.c:1502 +#: parser/parse_agg.c:1555 #, c-format msgid "Direct arguments of an ordered-set aggregate must use only grouped columns." msgstr "" -#: parser/parse_agg.c:1507 +#: parser/parse_agg.c:1560 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "ქვემოთხოვნა outer მოთხოვნიდან დაუჯგუფებელ სვეტს \"%s.%s\" იყენებს" -#: parser/parse_agg.c:1672 +#: parser/parse_agg.c:1725 #, c-format msgid "arguments to GROUPING must be grouping expressions of the associated query level" msgstr "" @@ -17746,7 +17747,7 @@ msgstr "" msgid "Cast the offset value to the exact intended type." msgstr "წანაცვლების მნიშვნელობის ზუსტად განსაზღვრულ ტიპში დაკასტვა." -#: parser/parse_coerce.c:1048 parser/parse_coerce.c:1086 parser/parse_coerce.c:1104 parser/parse_coerce.c:1119 parser/parse_expr.c:2154 parser/parse_expr.c:2774 parser/parse_expr.c:3425 parser/parse_expr.c:3654 parser/parse_target.c:1001 +#: parser/parse_coerce.c:1048 parser/parse_coerce.c:1086 parser/parse_coerce.c:1104 parser/parse_coerce.c:1119 parser/parse_expr.c:2155 parser/parse_expr.c:2775 parser/parse_expr.c:3426 parser/parse_expr.c:3655 parser/parse_target.c:1001 #, c-format msgid "cannot cast type %s to %s" msgstr "%s ტიპის %s-ში გადაყვანა შეუძლებელია" @@ -18076,328 +18077,328 @@ msgstr "რეკურსიულ მოთხოვნაში FOR UPDATE/SH msgid "recursive reference to query \"%s\" must not appear more than once" msgstr "" -#: parser/parse_expr.c:311 +#: parser/parse_expr.c:312 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "ამ კონტექსტში ნაგულისხმევს ვერ გამოიყენებთ" -#: parser/parse_expr.c:404 parser/parse_relation.c:3797 parser/parse_relation.c:3807 parser/parse_relation.c:3825 parser/parse_relation.c:3832 parser/parse_relation.c:3846 +#: parser/parse_expr.c:405 parser/parse_relation.c:3797 parser/parse_relation.c:3807 parser/parse_relation.c:3825 parser/parse_relation.c:3832 parser/parse_relation.c:3846 #, c-format msgid "column %s.%s does not exist" msgstr "სვეტი %s.%s არ არსებობს" -#: parser/parse_expr.c:416 +#: parser/parse_expr.c:417 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "სვეტი \"%s\" მონაცემის ტიპში %s აღმოჩენილი არაა" -#: parser/parse_expr.c:422 +#: parser/parse_expr.c:423 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "ჩანაწერის მონაცემის ტიპში სვეტის \"%s\" იდენტიფიკაცია შეუძლებელია" -#: parser/parse_expr.c:428 +#: parser/parse_expr.c:429 #, c-format msgid "column notation .%s applied to type %s, which is not a composite type" msgstr "" -#: parser/parse_expr.c:459 parser/parse_target.c:735 +#: parser/parse_expr.c:460 parser/parse_target.c:735 #, c-format msgid "row expansion via \"*\" is not supported here" msgstr "" -#: parser/parse_expr.c:582 +#: parser/parse_expr.c:583 msgid "cannot use column reference in DEFAULT expression" msgstr "" -#: parser/parse_expr.c:585 +#: parser/parse_expr.c:586 msgid "cannot use column reference in partition bound expression" msgstr "" -#: parser/parse_expr.c:844 parser/parse_relation.c:848 parser/parse_relation.c:930 parser/parse_target.c:1241 +#: parser/parse_expr.c:845 parser/parse_relation.c:848 parser/parse_relation.c:930 parser/parse_target.c:1241 #, c-format msgid "column reference \"%s\" is ambiguous" msgstr "სვეტის მითითება \"%s\" ორაზროვანია" -#: parser/parse_expr.c:900 parser/parse_param.c:111 parser/parse_param.c:143 parser/parse_param.c:205 parser/parse_param.c:304 +#: parser/parse_expr.c:901 parser/parse_param.c:111 parser/parse_param.c:143 parser/parse_param.c:205 parser/parse_param.c:304 #, c-format msgid "there is no parameter $%d" msgstr "პარამეტრი $%d არ არსებობს" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1101 parser/parse_expr.c:3085 +#: parser/parse_expr.c:1102 parser/parse_expr.c:3086 #, c-format msgid "%s requires = operator to yield boolean" msgstr "%s-სთვის აუცილებელია = ოპერატორი, რომ ლოგიკური მნიშვნელობა დააბრუნოს" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1107 parser/parse_expr.c:3092 +#: parser/parse_expr.c:1108 parser/parse_expr.c:3093 #, c-format msgid "%s must not return a set" msgstr "%s -მა სეტი არ უნდა დააბრუნოს" -#: parser/parse_expr.c:1395 +#: parser/parse_expr.c:1396 #, c-format msgid "MERGE_ACTION() can only be used in the RETURNING list of a MERGE command" msgstr "" -#: parser/parse_expr.c:1519 parser/parse_expr.c:1551 +#: parser/parse_expr.c:1520 parser/parse_expr.c:1552 #, c-format msgid "number of columns does not match number of values" msgstr "" -#: parser/parse_expr.c:1565 +#: parser/parse_expr.c:1566 #, c-format msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() expression" msgstr "" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_expr.c:1760 parser/parse_expr.c:2253 parser/parse_func.c:2679 +#: parser/parse_expr.c:1761 parser/parse_expr.c:2254 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "%s-ში სეტის-დამბრუნებელი ფუნქციები დაშვებული არაა" -#: parser/parse_expr.c:1824 +#: parser/parse_expr.c:1825 msgid "cannot use subquery in check constraint" msgstr "შეზღუდვის შემმოწმებელში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1828 +#: parser/parse_expr.c:1829 msgid "cannot use subquery in DEFAULT expression" msgstr "ნაგულისხმევ გამოსახულებაში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1831 +#: parser/parse_expr.c:1832 msgid "cannot use subquery in index expression" msgstr "ინდექსის გამოსახულებაში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1834 +#: parser/parse_expr.c:1835 msgid "cannot use subquery in index predicate" msgstr "ინდექსის პრედიკატში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1837 +#: parser/parse_expr.c:1838 msgid "cannot use subquery in statistics expression" msgstr "სტატისტიკის გამოსახულებაში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1840 +#: parser/parse_expr.c:1841 msgid "cannot use subquery in transform expression" msgstr "გარდაქმნის გამოსახულებაში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1843 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in EXECUTE parameter" msgstr "პარამეტრში \"EXECUTE\" ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1846 +#: parser/parse_expr.c:1847 msgid "cannot use subquery in trigger WHEN condition" msgstr "\"WHEN\" პირობის ტრიგერში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1849 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in partition bound" msgstr "დანაყოფის საზღვარში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1852 +#: parser/parse_expr.c:1853 msgid "cannot use subquery in partition key expression" msgstr "დანაყოფის გასაღების გამოსახულებაში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1855 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in CALL argument" msgstr "\"CALL\"-ის არგუმენტში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1858 +#: parser/parse_expr.c:1859 msgid "cannot use subquery in COPY FROM WHERE condition" msgstr "\"COPY FROM WHERE\" პირობაში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1861 +#: parser/parse_expr.c:1862 msgid "cannot use subquery in column generation expression" msgstr "სვეტების გენერაციის გამოსახულებაში ქვემოთხოვნას ვერ გამოიყენებთ" -#: parser/parse_expr.c:1914 parser/parse_expr.c:3784 +#: parser/parse_expr.c:1915 parser/parse_expr.c:3785 #, c-format msgid "subquery must return only one column" msgstr "ქვემოთხოვნამ მხოლოდ ერთი სვეტი უნდა დააბრუნოს" -#: parser/parse_expr.c:1985 +#: parser/parse_expr.c:1986 #, c-format msgid "subquery has too many columns" msgstr "ქვემოთხოვნას ძალიან ბევრი სვეტი აქვს" -#: parser/parse_expr.c:1990 +#: parser/parse_expr.c:1991 #, c-format msgid "subquery has too few columns" msgstr "ქვემოთხოვნას ძალიან ცოტა სვეტი აქვს" -#: parser/parse_expr.c:2094 +#: parser/parse_expr.c:2095 #, c-format msgid "cannot determine type of empty array" msgstr "ცარიელი მასივის ტიპის დადგენა შეუძლებელია" -#: parser/parse_expr.c:2095 +#: parser/parse_expr.c:2096 #, c-format msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]." msgstr "" -#: parser/parse_expr.c:2109 +#: parser/parse_expr.c:2110 #, c-format msgid "could not find element type for data type %s" -msgstr "" +msgstr "ვერ ვიპოვე ელემენტის ტიპი მონაცემების ტიპისთვის %s" -#: parser/parse_expr.c:2194 +#: parser/parse_expr.c:2195 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "ROW გამოსახულებებს მაქსიმუმ %d ელემენტი შეიძლება ჰქონდეს" -#: parser/parse_expr.c:2399 +#: parser/parse_expr.c:2400 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "უსახელო XML ატრიბუტის მნიშვნელობა სვეტის მიმართვას უნდა წარმოადგენდეს" -#: parser/parse_expr.c:2400 +#: parser/parse_expr.c:2401 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "უსახელო XML ელემენტის მნიშვნელობა სვეტის მიმართვას უნდა წარმოადგენდეს" -#: parser/parse_expr.c:2415 +#: parser/parse_expr.c:2416 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "XML ატრიბუტის სახელი \"%s\" ერთზე მეტჯერ გამოჩნდა" -#: parser/parse_expr.c:2523 +#: parser/parse_expr.c:2524 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "'XMLSERIALIZE'-ის შედეგის %s-ში დაკასტვა შეუძლებელია" -#: parser/parse_expr.c:2847 parser/parse_expr.c:3043 +#: parser/parse_expr.c:2848 parser/parse_expr.c:3044 #, c-format msgid "unequal number of entries in row expressions" msgstr "მწკრივის გამოსახულებებში ჩანაწერების რაოდენობა ტოლი არაა" -#: parser/parse_expr.c:2857 +#: parser/parse_expr.c:2858 #, c-format msgid "cannot compare rows of zero length" msgstr "ნულოვანი სიგრძის მწკრივების შედარება შეუძლებელია" -#: parser/parse_expr.c:2882 +#: parser/parse_expr.c:2883 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "მწკრივის შედარების ოპერატორმა ლოგიკური მნიშვნელობა უნდა დააბრუნოს და არა ტიპი %s" -#: parser/parse_expr.c:2889 +#: parser/parse_expr.c:2890 #, c-format msgid "row comparison operator must not return a set" msgstr "მწკრივის შედარების ოპერატორმა სეტი არ უნდა დააბრუნოს" -#: parser/parse_expr.c:2948 parser/parse_expr.c:2989 +#: parser/parse_expr.c:2949 parser/parse_expr.c:2990 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "მწკრივის შედარების ოპერატორის %s ინტერპრეტაციის დადგენა შეუძლებელია" -#: parser/parse_expr.c:2950 +#: parser/parse_expr.c:2951 #, c-format msgid "Row comparison operators must be associated with btree operator families." msgstr "მწკრივის შედარების ოპერატორები ბინარული ხის ოპერატორის ოჯახებთან უნდა იყოს ასოცირებული." -#: parser/parse_expr.c:2991 +#: parser/parse_expr.c:2992 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "" -#: parser/parse_expr.c:3326 +#: parser/parse_expr.c:3327 #, c-format msgid "JSON ENCODING clause is only allowed for bytea input type" msgstr "" -#: parser/parse_expr.c:3390 +#: parser/parse_expr.c:3391 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" -msgstr "" +msgstr "ვერ ვიპოვე არამწკრივი ტიპები ცხადი FORMAT JSON პირობისთვის" -#: parser/parse_expr.c:3391 +#: parser/parse_expr.c:3392 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" -msgstr "" +msgstr "ვერ ვიპოვე არამწკრივი ტიპები არაცხადი FORMAT JSON პირობისთვის" -#: parser/parse_expr.c:3480 +#: parser/parse_expr.c:3481 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "'JSON' ფორმატის არა-სტრიქონის გამოტანის ტიპებთან ერთად გამოყენება შეუძლებელია" -#: parser/parse_expr.c:3493 +#: parser/parse_expr.c:3494 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "" -#: parser/parse_expr.c:3498 +#: parser/parse_expr.c:3499 #, c-format msgid "unsupported JSON encoding" msgstr "\"JSON\"-ის არასწორი კოდირება" -#: parser/parse_expr.c:3499 +#: parser/parse_expr.c:3500 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "მხარდაჭერილია მხოლოდ UTF8 JSON კოდირება." -#: parser/parse_expr.c:3536 +#: parser/parse_expr.c:3537 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "" -#: parser/parse_expr.c:3541 +#: parser/parse_expr.c:3542 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" msgstr "ფსევდოტიპების დაბრუნება SQL/JSON ფუნქციებში მხარდაჭერილი არაა" -#: parser/parse_expr.c:3869 parser/parse_func.c:866 +#: parser/parse_expr.c:3870 parser/parse_func.c:866 #, c-format msgid "aggregate ORDER BY is not implemented for window functions" msgstr "ფანჯრის ფუნქციებისთვის აგრეგატული ORDER BY განხორციელებული არაა" -#: parser/parse_expr.c:4092 +#: parser/parse_expr.c:4093 #, c-format msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types" msgstr "" -#: parser/parse_expr.c:4112 +#: parser/parse_expr.c:4113 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "%s ტიპის IS JSON პრედიკატში გამოყენება შეუძლებელია" -#: parser/parse_expr.c:4138 parser/parse_expr.c:4259 +#: parser/parse_expr.c:4139 parser/parse_expr.c:4260 #, c-format msgid "cannot use type %s in RETURNING clause of %s" msgstr "%s ტიპის გამოყენება %s-ის RETURNING პირობაში შეუძლებელია" -#: parser/parse_expr.c:4140 +#: parser/parse_expr.c:4141 #, c-format msgid "Try returning json or jsonb." -msgstr "" +msgstr "სცადეთ, დააბრუნოთ json ან jsonb." -#: parser/parse_expr.c:4188 +#: parser/parse_expr.c:4189 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" -msgstr "" +msgstr "არასტრიქონის ტიპებს WITH UNIQUE KEYS პირობასთან ერთად ვერ გამოიყენებთ" -#: parser/parse_expr.c:4262 +#: parser/parse_expr.c:4263 #, c-format msgid "Try returning a string type or bytea." -msgstr "" +msgstr "სცადეთ, დააბრუნოთ სტრიქონის ტიპი, ან bytea." -#: parser/parse_expr.c:4327 +#: parser/parse_expr.c:4331 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "" -#: parser/parse_expr.c:4340 +#: parser/parse_expr.c:4344 #, c-format msgid "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" msgstr "" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4354 parser/parse_expr.c:4383 parser/parse_expr.c:4414 parser/parse_expr.c:4440 parser/parse_expr.c:4466 parser/parse_jsontable.c:92 +#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 parser/parse_expr.c:4418 parser/parse_expr.c:4444 parser/parse_expr.c:4470 parser/parse_jsontable.c:92 #, c-format msgid "invalid %s behavior" msgstr "%s-ის არასწორი ქცევა" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4357 parser/parse_expr.c:4386 +#: parser/parse_expr.c:4361 parser/parse_expr.c:4390 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for %s." msgstr "" @@ -18405,67 +18406,72 @@ msgstr "" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4364 parser/parse_expr.c:4393 parser/parse_expr.c:4422 parser/parse_expr.c:4450 parser/parse_expr.c:4476 +#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 parser/parse_expr.c:4426 parser/parse_expr.c:4454 parser/parse_expr.c:4480 #, c-format msgid "invalid %s behavior for column \"%s\"" msgstr "%s-ის არასწორი ქცევა სვეტისთვის \"%s\"" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 +#: parser/parse_expr.c:4371 parser/parse_expr.c:4400 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for formatted columns." msgstr "" -#: parser/parse_expr.c:4415 +#: parser/parse_expr.c:4419 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." msgstr "" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4425 +#: parser/parse_expr.c:4429 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." msgstr "" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4443 parser/parse_expr.c:4469 +#: parser/parse_expr.c:4447 parser/parse_expr.c:4473 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." msgstr "" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 +#: parser/parse_expr.c:4457 parser/parse_expr.c:4483 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." msgstr "" -#: parser/parse_expr.c:4509 +#: parser/parse_expr.c:4517 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "JSON ბილიკის გამოსახულების ტიპი %s უნდა იყოს და არა %s" -#: parser/parse_expr.c:4727 +#: parser/parse_expr.c:4757 #, c-format msgid "can only specify a constant, non-aggregate function, or operator expression for DEFAULT" msgstr "" -#: parser/parse_expr.c:4732 +#: parser/parse_expr.c:4762 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "DEFAULT გამოსახულება სვეტზე მიმართვებს არ უნდა შეიცავდეს" -#: parser/parse_expr.c:4737 +#: parser/parse_expr.c:4767 #, c-format msgid "DEFAULT expression must not return a set" msgstr "DEFAULT გამოსახულებამ სეტი არ უნდა დააბრუნოს" -#: parser/parse_expr.c:4813 parser/parse_expr.c:4822 +#: parser/parse_expr.c:4782 +#, c-format +msgid "collation of DEFAULT expression conflicts with RETURNING clause" +msgstr "" + +#: parser/parse_expr.c:4861 parser/parse_expr.c:4870 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "%s ქცევის გამოსახულების ტიპის %s-ში გადაყვანა შეუძლებელია" -#: parser/parse_expr.c:4816 +#: parser/parse_expr.c:4864 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "დაგჭირდებათ გამოსახულების აშკარად გადაყვანა ტიპში %s." @@ -19102,12 +19108,12 @@ msgstr "" #: parser/parse_target.c:890 #, c-format msgid "subfield \"%s\" is of type %s but expression is of type %s" -msgstr "" +msgstr "ქვეხედს \"%s\" აქვს ტიპი %s, მაგრამ გამოსახულების ტიპია %s" #: parser/parse_target.c:1330 #, c-format msgid "SELECT * with no tables specified is not valid" -msgstr "" +msgstr "SELECT * ცხრილების მითითების გარეშე სწორი არაა" #: parser/parse_type.c:100 #, c-format @@ -19239,242 +19245,242 @@ msgstr "" msgid "relation \"%s\" is invalid in LIKE clause" msgstr "პირობაში LIKE ურთიერთობა \"%s\" არასწორია" -#: parser/parse_utilcmd.c:1918 parser/parse_utilcmd.c:2026 +#: parser/parse_utilcmd.c:1917 parser/parse_utilcmd.c:2025 #, c-format msgid "Index \"%s\" contains a whole-row table reference." msgstr "" -#: parser/parse_utilcmd.c:2420 +#: parser/parse_utilcmd.c:2419 #, c-format msgid "cannot use an existing index in CREATE TABLE" msgstr "'CREATE TABLE'-ში არსებულ ინდექსს ვერ გამოიყენებთ" -#: parser/parse_utilcmd.c:2440 +#: parser/parse_utilcmd.c:2439 #, c-format msgid "index \"%s\" is already associated with a constraint" msgstr "ინდექსი \"%s\" შეზღუდვასთან უკვე ასოცირებულია" -#: parser/parse_utilcmd.c:2466 +#: parser/parse_utilcmd.c:2465 #, c-format msgid "\"%s\" is not a unique index" msgstr "\"%s\" უნიკალური ინდექსი არაა" -#: parser/parse_utilcmd.c:2467 parser/parse_utilcmd.c:2474 parser/parse_utilcmd.c:2481 parser/parse_utilcmd.c:2557 +#: parser/parse_utilcmd.c:2466 parser/parse_utilcmd.c:2473 parser/parse_utilcmd.c:2480 parser/parse_utilcmd.c:2556 #, c-format msgid "Cannot create a primary key or unique constraint using such an index." msgstr "" -#: parser/parse_utilcmd.c:2473 +#: parser/parse_utilcmd.c:2472 #, c-format msgid "index \"%s\" contains expressions" msgstr "ინდექსი \"%s\" გამოსახულებებს შეიცავს" -#: parser/parse_utilcmd.c:2480 +#: parser/parse_utilcmd.c:2479 #, c-format msgid "\"%s\" is a partial index" msgstr "\"%s\" ნაწილობრივი ინდექსია" -#: parser/parse_utilcmd.c:2492 +#: parser/parse_utilcmd.c:2491 #, c-format msgid "\"%s\" is a deferrable index" msgstr "\"%s\" გადადებადი ინდექსია" -#: parser/parse_utilcmd.c:2493 +#: parser/parse_utilcmd.c:2492 #, c-format msgid "Cannot create a non-deferrable constraint using a deferrable index." msgstr "" -#: parser/parse_utilcmd.c:2556 +#: parser/parse_utilcmd.c:2555 #, c-format msgid "index \"%s\" column number %d does not have default sorting behavior" msgstr "" -#: parser/parse_utilcmd.c:2748 +#: parser/parse_utilcmd.c:2747 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "" -#: parser/parse_utilcmd.c:2754 +#: parser/parse_utilcmd.c:2753 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "" -#: parser/parse_utilcmd.c:2799 +#: parser/parse_utilcmd.c:2798 #, c-format msgid "column \"%s\" in WITHOUT OVERLAPS is not a range or multirange type" msgstr "" -#: parser/parse_utilcmd.c:2827 +#: parser/parse_utilcmd.c:2826 #, c-format msgid "constraint using WITHOUT OVERLAPS needs at least two columns" msgstr "" -#: parser/parse_utilcmd.c:3124 +#: parser/parse_utilcmd.c:3123 #, c-format msgid "index expressions and predicates can refer only to the table being indexed" msgstr "" -#: parser/parse_utilcmd.c:3196 +#: parser/parse_utilcmd.c:3195 #, c-format msgid "statistics expressions can refer only to the table being referenced" msgstr "" -#: parser/parse_utilcmd.c:3239 +#: parser/parse_utilcmd.c:3238 #, c-format msgid "rules on materialized views are not supported" msgstr "მატერიალიზებულ ხედებზე წესები მხარდაჭერილი არაა" -#: parser/parse_utilcmd.c:3299 +#: parser/parse_utilcmd.c:3298 #, c-format msgid "rule WHERE condition cannot contain references to other relations" msgstr "" -#: parser/parse_utilcmd.c:3371 +#: parser/parse_utilcmd.c:3370 #, c-format msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE actions" msgstr "" -#: parser/parse_utilcmd.c:3389 parser/parse_utilcmd.c:3490 rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1187 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "პირობითი UNION/INTERSECT/EXCEPT ოპერატორები განხორციელებული არაა" -#: parser/parse_utilcmd.c:3407 +#: parser/parse_utilcmd.c:3406 #, c-format msgid "ON SELECT rule cannot use OLD" msgstr "ON SELECT წესში OLD-ს ვერ გამოიყენებთ" -#: parser/parse_utilcmd.c:3411 +#: parser/parse_utilcmd.c:3410 #, c-format msgid "ON SELECT rule cannot use NEW" msgstr "ON SELECT წესში NEW-ს ვერ გამოიყენებთ" -#: parser/parse_utilcmd.c:3420 +#: parser/parse_utilcmd.c:3419 #, c-format msgid "ON INSERT rule cannot use OLD" msgstr "ON INSERT წესში OLD-ს ვერ გამოიყენებთ" -#: parser/parse_utilcmd.c:3426 +#: parser/parse_utilcmd.c:3425 #, c-format msgid "ON DELETE rule cannot use NEW" msgstr "ON DELETE წესში NEW-ს ვერ გამოიყენებთ" -#: parser/parse_utilcmd.c:3454 +#: parser/parse_utilcmd.c:3453 #, c-format msgid "cannot refer to OLD within WITH query" msgstr "'WITH' მოთხოვნაში OLD-ზე მიმართვა შეუძლებელია" -#: parser/parse_utilcmd.c:3461 +#: parser/parse_utilcmd.c:3460 #, c-format msgid "cannot refer to NEW within WITH query" msgstr "'WITH' მოთხოვნაში NEW-ზე მიმართვა შეუძლებელია" -#: parser/parse_utilcmd.c:3919 +#: parser/parse_utilcmd.c:3918 #, c-format msgid "misplaced DEFERRABLE clause" msgstr "არასწორ ადგილას დასმული DEFERRABLE პირობა" -#: parser/parse_utilcmd.c:3924 parser/parse_utilcmd.c:3939 +#: parser/parse_utilcmd.c:3923 parser/parse_utilcmd.c:3938 #, c-format msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed" msgstr "ერთზე მეტი DEFERRABLE/NOT DEFERRABLE პირობა დაშვებული არაა" -#: parser/parse_utilcmd.c:3934 +#: parser/parse_utilcmd.c:3933 #, c-format msgid "misplaced NOT DEFERRABLE clause" msgstr "არასწორ ადგილას დასმული NOT DEFERRABLE პირობა" -#: parser/parse_utilcmd.c:3955 +#: parser/parse_utilcmd.c:3954 #, c-format msgid "misplaced INITIALLY DEFERRED clause" msgstr "არასწორ ადგილას დასმული INITIALLY DEFERRABLE პირობა" -#: parser/parse_utilcmd.c:3960 parser/parse_utilcmd.c:3986 +#: parser/parse_utilcmd.c:3959 parser/parse_utilcmd.c:3985 #, c-format msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed" msgstr "ერთზე მეტი INITIALLY IMMEDIATE/DEFERRED დაშვებული არაა" -#: parser/parse_utilcmd.c:3981 +#: parser/parse_utilcmd.c:3980 #, c-format msgid "misplaced INITIALLY IMMEDIATE clause" msgstr "არასწორ ადგილას დასმული INITIALLY IMMEDIATE პირობა" -#: parser/parse_utilcmd.c:3998 +#: parser/parse_utilcmd.c:3997 #, c-format msgid "misplaced ENFORCED clause" msgstr "არასწორ ადგილას დასმული ENFORCED პირობა" -#: parser/parse_utilcmd.c:4003 parser/parse_utilcmd.c:4020 +#: parser/parse_utilcmd.c:4002 parser/parse_utilcmd.c:4019 #, c-format msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" msgstr "ერთზე მეტი ENFORCED/NOT ENFORCED პირობა დაშვებული არაა" -#: parser/parse_utilcmd.c:4015 +#: parser/parse_utilcmd.c:4014 #, c-format msgid "misplaced NOT ENFORCED clause" msgstr "არასწორ ადგილას დასმული NOT ENFORCED პირობა" -#: parser/parse_utilcmd.c:4213 +#: parser/parse_utilcmd.c:4212 #, c-format msgid "CREATE specifies a schema (%s) different from the one being created (%s)" msgstr "" -#: parser/parse_utilcmd.c:4248 +#: parser/parse_utilcmd.c:4247 #, c-format msgid "\"%s\" is not a partitioned table" msgstr "\"%s\" დაყოფილი ცხრილი არაა" -#: parser/parse_utilcmd.c:4255 +#: parser/parse_utilcmd.c:4254 #, c-format msgid "table \"%s\" is not partitioned" msgstr "ცხრილი \"%s\" დაყოფილი არაა" -#: parser/parse_utilcmd.c:4262 +#: parser/parse_utilcmd.c:4261 #, c-format msgid "index \"%s\" is not partitioned" msgstr "ინდექსი \"%s\" დაყოფილი არაა" -#: parser/parse_utilcmd.c:4302 +#: parser/parse_utilcmd.c:4301 #, c-format msgid "a hash-partitioned table may not have a default partition" msgstr "" -#: parser/parse_utilcmd.c:4319 +#: parser/parse_utilcmd.c:4318 #, c-format msgid "invalid bound specification for a hash partition" msgstr "" -#: parser/parse_utilcmd.c:4325 partitioning/partbounds.c:4802 +#: parser/parse_utilcmd.c:4324 partitioning/partbounds.c:4802 #, c-format msgid "modulus for hash partition must be an integer value greater than zero" msgstr "" -#: parser/parse_utilcmd.c:4332 partitioning/partbounds.c:4810 +#: parser/parse_utilcmd.c:4331 partitioning/partbounds.c:4810 #, c-format msgid "remainder for hash partition must be less than modulus" msgstr "" -#: parser/parse_utilcmd.c:4345 +#: parser/parse_utilcmd.c:4344 #, c-format msgid "invalid bound specification for a list partition" msgstr "" -#: parser/parse_utilcmd.c:4398 +#: parser/parse_utilcmd.c:4397 #, c-format msgid "invalid bound specification for a range partition" msgstr "" -#: parser/parse_utilcmd.c:4404 +#: parser/parse_utilcmd.c:4403 #, c-format msgid "FROM must specify exactly one value per partitioning column" msgstr "" -#: parser/parse_utilcmd.c:4408 +#: parser/parse_utilcmd.c:4407 #, c-format msgid "TO must specify exactly one value per partitioning column" msgstr "" -#: parser/parse_utilcmd.c:4522 +#: parser/parse_utilcmd.c:4523 #, c-format msgid "cannot specify NULL in range bound" msgstr "დიაპაზონის საზღვრებში NULL-ის მითითება შეუძლებელია" @@ -19507,7 +19513,7 @@ msgstr "უნიკოდის სპეცკოდის არასწო msgid "invalid Unicode escape value" msgstr "უნიკოდის სპეცკოდის არასწორი მნიშვნელობა" -#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6842 +#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6853 #, c-format msgid "invalid Unicode escape" msgstr "უნიკოდის არასწორი სპეცკოდი" @@ -19517,7 +19523,7 @@ msgstr "უნიკოდის არასწორი სპეცკოდ msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "უნიკოდის სპეცკოდების შესაძლო ვარიანტებია \\XXXX და \\+XXXXXXXX." -#: parser/parser.c:523 scan.l:663 scan.l:679 scan.l:695 utils/adt/varlena.c:6867 +#: parser/parser.c:523 scan.l:663 scan.l:679 scan.l:695 utils/adt/varlena.c:6878 #, c-format msgid "invalid Unicode surrogate pair" msgstr "უნკოდის არასწორი სუროგატული წყვილი" @@ -19822,27 +19828,27 @@ msgstr "ცხრილის ავტოდამტვერსასრუ msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "ცხრილის ავტოანალიზი: \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2674 +#: postmaster/autovacuum.c:2677 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "" -#: postmaster/autovacuum.c:3345 +#: postmaster/autovacuum.c:3348 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "ავტომომტვერსასრუტება არ გაშვებულა კონფიგურაციის შეცდომის გამო" -#: postmaster/autovacuum.c:3346 +#: postmaster/autovacuum.c:3349 #, c-format msgid "Enable the \"track_counts\" option." msgstr "ჩართეთ \"track_counts\" პარამეტრი." -#: postmaster/autovacuum.c:3468 +#: postmaster/autovacuum.c:3471 #, c-format msgid "\"autovacuum_max_workers\" (%d) should be less than or equal to \"autovacuum_worker_slots\" (%d)" msgstr "" -#: postmaster/autovacuum.c:3470 +#: postmaster/autovacuum.c:3473 #, c-format msgid "The server will only start up to \"autovacuum_worker_slots\" (%d) autovacuum workers at a given time." msgstr "" @@ -20538,136 +20544,136 @@ msgstr "დროის არასწორი ხაზი: %u" msgid "invalid streaming start location" msgstr "ნაკადის დასაწყისის არასწორი მდებარეობა" -#: replication/libpqwalreceiver/libpqwalreceiver.c:230 replication/libpqwalreceiver/libpqwalreceiver.c:322 +#: replication/libpqwalreceiver/libpqwalreceiver.c:243 replication/libpqwalreceiver/libpqwalreceiver.c:335 #, c-format msgid "password is required" msgstr "პაროლი სავალდებულოა" -#: replication/libpqwalreceiver/libpqwalreceiver.c:231 +#: replication/libpqwalreceiver/libpqwalreceiver.c:244 #, c-format msgid "Non-superuser cannot connect if the server does not request a password." msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:232 +#: replication/libpqwalreceiver/libpqwalreceiver.c:245 #, c-format msgid "Target server's authentication method must be changed, or set password_required=false in the subscription parameters." msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:249 +#: replication/libpqwalreceiver/libpqwalreceiver.c:262 #, c-format msgid "could not clear search path: %s" msgstr "ძებნის ბილიკების გასუფთავების შეცდომა: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:295 replication/libpqwalreceiver/libpqwalreceiver.c:483 +#: replication/libpqwalreceiver/libpqwalreceiver.c:308 replication/libpqwalreceiver/libpqwalreceiver.c:508 #, c-format msgid "invalid connection string syntax: %s" msgstr "შეერთების სტრიქონის არასწორი სინტაქსი: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:323 +#: replication/libpqwalreceiver/libpqwalreceiver.c:336 #, c-format msgid "Non-superusers must provide a password in the connection string." msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:350 +#: replication/libpqwalreceiver/libpqwalreceiver.c:363 #, c-format msgid "could not parse connection string: %s" msgstr "შეერთების სტრიქონის დამუშავების შეცდომა: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:425 +#: replication/libpqwalreceiver/libpqwalreceiver.c:438 #, c-format msgid "could not receive database system identifier and timeline ID from the primary server: %s" msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:442 replication/libpqwalreceiver/libpqwalreceiver.c:737 +#: replication/libpqwalreceiver/libpqwalreceiver.c:455 replication/libpqwalreceiver/libpqwalreceiver.c:762 #, c-format msgid "invalid response from primary server" msgstr "ძირითადი სერვერის არასწორი პასუხი" -#: replication/libpqwalreceiver/libpqwalreceiver.c:443 +#: replication/libpqwalreceiver/libpqwalreceiver.c:456 #, c-format msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields." msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:572 replication/libpqwalreceiver/libpqwalreceiver.c:579 replication/libpqwalreceiver/libpqwalreceiver.c:611 +#: replication/libpqwalreceiver/libpqwalreceiver.c:597 replication/libpqwalreceiver/libpqwalreceiver.c:604 replication/libpqwalreceiver/libpqwalreceiver.c:636 #, c-format msgid "could not start WAL streaming: %s" msgstr "wal ნაკადის დაწყების შეცდომა: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:635 +#: replication/libpqwalreceiver/libpqwalreceiver.c:660 #, c-format msgid "could not send end-of-streaming message to primary: %s" msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:659 +#: replication/libpqwalreceiver/libpqwalreceiver.c:684 #, c-format msgid "unexpected result set after end-of-streaming" msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:675 +#: replication/libpqwalreceiver/libpqwalreceiver.c:700 #, c-format msgid "error while shutting down streaming COPY: %s" msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:686 +#: replication/libpqwalreceiver/libpqwalreceiver.c:711 #, c-format msgid "error reading result of streaming command: %s" msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:696 replication/libpqwalreceiver/libpqwalreceiver.c:832 +#: replication/libpqwalreceiver/libpqwalreceiver.c:721 replication/libpqwalreceiver/libpqwalreceiver.c:857 #, c-format msgid "unexpected result after CommandComplete: %s" msgstr "მოულოდნელი შედეგი CommandComplete-ის შემდეგ: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:725 +#: replication/libpqwalreceiver/libpqwalreceiver.c:750 #, c-format msgid "could not receive timeline history file from the primary server: %s" msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:738 +#: replication/libpqwalreceiver/libpqwalreceiver.c:763 #, c-format msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields." msgstr "" -#: replication/libpqwalreceiver/libpqwalreceiver.c:793 replication/libpqwalreceiver/libpqwalreceiver.c:848 replication/libpqwalreceiver/libpqwalreceiver.c:855 +#: replication/libpqwalreceiver/libpqwalreceiver.c:818 replication/libpqwalreceiver/libpqwalreceiver.c:873 replication/libpqwalreceiver/libpqwalreceiver.c:880 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "\"WAL\" ნაკადიდან მონაცემების მიღების შეცდომა: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:875 +#: replication/libpqwalreceiver/libpqwalreceiver.c:900 #, c-format msgid "could not send data to WAL stream: %s" msgstr "'WAL' ნაკადისთვის მონაცემების გაგზავნა შეუძლებელია: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:978 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1003 #, c-format msgid "could not create replication slot \"%s\": %s" msgstr "რეპლიკაციის სლოტის \"%s\" შექმნის შეცდომა: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1030 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1055 #, c-format msgid "could not alter replication slot \"%s\": %s" msgstr "რეპლიკაციის სლოტის \"%s\" შეცვლა შეუძლებელია: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1064 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1089 #, c-format msgid "invalid query response" msgstr "მოთხოვნის არასწორი პასუხი" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1065 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1090 #, c-format msgid "Expected %d fields, got %d fields." msgstr "მოველოდი %d ველს. მივიღე %d." -#: replication/libpqwalreceiver/libpqwalreceiver.c:1135 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1160 #, c-format msgid "the query interface requires a database connection" msgstr "მოთხოვნის ინტერფეისს ბაზასთან მიერთება სჭირდება" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1169 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1194 msgid "empty query" msgstr "ცარიელი მოთხოვნა" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1200 msgid "unexpected pipeline mode" msgstr "არხის მოულოდნელი რეჟიმი" @@ -20681,26 +20687,26 @@ msgstr "" msgid "lost connection to the logical replication apply worker" msgstr "ლოგიკური რეპლიკაციის გადატარების დამხმარე პროცესთან კავშირი დაკარგულია" -#: replication/logical/applyparallelworker.c:1024 replication/logical/applyparallelworker.c:1026 +#: replication/logical/applyparallelworker.c:1031 replication/logical/applyparallelworker.c:1033 msgid "logical replication parallel apply worker" msgstr "ლოგიკური რეპლიკაციის პარალელური გადატარების დამხმარე პროცესი" -#: replication/logical/applyparallelworker.c:1040 +#: replication/logical/applyparallelworker.c:1047 #, c-format msgid "logical replication parallel apply worker exited due to error" msgstr "" -#: replication/logical/applyparallelworker.c:1127 replication/logical/applyparallelworker.c:1300 +#: replication/logical/applyparallelworker.c:1134 replication/logical/applyparallelworker.c:1307 #, c-format msgid "lost connection to the logical replication parallel apply worker" msgstr "ლოგიკური რეპლიკაციის პარალელური გადატარების დამხმარე პროცესთან კავშირი დაკარგულია" -#: replication/logical/applyparallelworker.c:1180 +#: replication/logical/applyparallelworker.c:1187 #, c-format msgid "could not send data to shared-memory queue" msgstr "გაზიარებული-მეხსიერების მქონე რიგში მონაცემების გაგზავნა შეუძლებელია" -#: replication/logical/applyparallelworker.c:1215 +#: replication/logical/applyparallelworker.c:1222 #, c-format msgid "logical replication apply worker will serialize the remaining changes of remote transaction %u to a file" msgstr "" @@ -20771,27 +20777,27 @@ msgstr "წასაშლელი მწკრივის აღმოჩე #: replication/logical/conflict.c:347 #, c-format msgid "Key %s" -msgstr "" +msgstr "გასაღები %s" #: replication/logical/conflict.c:364 #, c-format -msgid "existing local tuple %s" -msgstr "" +msgid "existing local row %s" +msgstr "არსებული ლოკალური მწკრივი %s" #: replication/logical/conflict.c:369 #, c-format -msgid "Existing local tuple %s" +msgid "Existing local row %s" msgstr "" #: replication/logical/conflict.c:396 #, c-format -msgid "remote tuple %s" -msgstr "დაშორებული კორტეჟი %s" +msgid "remote row %s" +msgstr "დაშორებული მწკრივი %s" #: replication/logical/conflict.c:400 #, c-format -msgid "Remote tuple %s" -msgstr "დაშორებული კორტეჟი %s" +msgid "Remote row %s" +msgstr "დაშორებული მწკრივი %s" #: replication/logical/conflict.c:434 #, c-format @@ -20829,7 +20835,7 @@ msgid "out of logical replication worker slots" msgstr "ლოგიკური რეპლიკაციის დამხმარე პროგრამის სლოტები არასაკმარისია" #. translator: %s is a GUC variable name -#: replication/logical/launcher.c:438 replication/logical/launcher.c:524 replication/slot.c:1600 replication/slot.c:1620 storage/lmgr/lock.c:1042 storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 storage/lmgr/predicate.c:3891 +#: replication/logical/launcher.c:438 replication/logical/launcher.c:524 replication/slot.c:1670 replication/slot.c:1690 storage/lmgr/lock.c:1042 storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 storage/lmgr/predicate.c:3891 #, c-format msgid "You might need to increase \"%s\"." msgstr "როგორც ჩანს, გჭირდებათ, \"%s\" გაზარდოთ." @@ -20859,12 +20865,12 @@ msgstr "ლოგიკურ გაშიფვრას \"wal_level\" >= \"log msgid "logical decoding requires a database connection" msgstr "ლოგიკურ გაშიფვრას ბაზასთან მიერთება ესაჭიროება" -#: replication/logical/logical.c:367 replication/logical/logical.c:521 +#: replication/logical/logical.c:367 replication/logical/logical.c:523 #, c-format msgid "cannot use physical replication slot for logical decoding" msgstr "ლოგიკური გაშიფვრისთვის ფიზიკური რეპლიკაციის სლოტის გამოყენება შეუძლებელია" -#: replication/logical/logical.c:372 replication/logical/logical.c:531 +#: replication/logical/logical.c:372 replication/logical/logical.c:533 #, c-format msgid "replication slot \"%s\" was not created in this database" msgstr "რეპლიკაციის სლოტი \"%s\" ამ ბაზაში არ შექმნილა" @@ -20874,52 +20880,52 @@ msgstr "რეპლიკაციის სლოტი \"%s\" ამ ბა msgid "cannot create logical replication slot in transaction that has performed writes" msgstr "შეუძლებელია ლოგიკური რეპლიკაციის სლოტის შექმნა ტრანზაქციაში, რომელიც ჩაწერებს ახორციელებს" -#: replication/logical/logical.c:542 +#: replication/logical/logical.c:544 #, c-format msgid "cannot use replication slot \"%s\" for logical decoding" msgstr "ლოგიკური გაშიფვრისთვის რეპლიკაციის სლოტის \"%s\" გამოყენება შეუძლებელია" -#: replication/logical/logical.c:544 replication/slot.c:829 replication/slot.c:864 +#: replication/logical/logical.c:546 replication/slot.c:858 replication/slot.c:903 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "მიმდინარეობს ამ რეპლიკაციის სლოტის სინქრონიზაცია ძირითადი სერვერიდან." -#: replication/logical/logical.c:545 +#: replication/logical/logical.c:547 #, c-format msgid "Specify another replication slot." msgstr "მიუთითეთ სხვა რეპლიკაციის სლოტი." -#: replication/logical/logical.c:611 +#: replication/logical/logical.c:613 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "იწყება ლოგიკური გაშიფვრა სლოტისთვის \"%s\"" -#: replication/logical/logical.c:613 +#: replication/logical/logical.c:615 #, c-format msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X." msgstr "" -#: replication/logical/logical.c:761 +#: replication/logical/logical.c:763 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X" msgstr "" -#: replication/logical/logical.c:767 +#: replication/logical/logical.c:769 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback" msgstr "" -#: replication/logical/logical.c:938 replication/logical/logical.c:983 replication/logical/logical.c:1028 replication/logical/logical.c:1074 +#: replication/logical/logical.c:940 replication/logical/logical.c:985 replication/logical/logical.c:1030 replication/logical/logical.c:1076 #, c-format msgid "logical replication at prepare time requires a %s callback" msgstr "" -#: replication/logical/logical.c:1306 replication/logical/logical.c:1355 replication/logical/logical.c:1396 replication/logical/logical.c:1482 replication/logical/logical.c:1531 +#: replication/logical/logical.c:1308 replication/logical/logical.c:1357 replication/logical/logical.c:1398 replication/logical/logical.c:1484 replication/logical/logical.c:1533 #, c-format msgid "logical streaming requires a %s callback" msgstr "" -#: replication/logical/logical.c:1441 +#: replication/logical/logical.c:1443 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "" @@ -21142,28 +21148,28 @@ msgstr "" msgid "exiting from slot synchronization because same name slot \"%s\" already exists on the standby" msgstr "" -#: replication/logical/slotsync.c:835 +#: replication/logical/slotsync.c:837 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "ვერ გამოვითხოვე გადართვის ლოგიკური სლოტების ინფორმაცია ძირითადი სერვერიდან: %s" -#: replication/logical/slotsync.c:984 +#: replication/logical/slotsync.c:986 #, c-format msgid "could not fetch primary slot name \"%s\" info from the primary server: %s" msgstr "ვერ გამოვითხოვე ძირითადი სლოტის სახელის \"%s\" ინფორმაცია ძირითადი სერვერიდან: %s" -#: replication/logical/slotsync.c:986 +#: replication/logical/slotsync.c:988 #, c-format msgid "Check if \"primary_slot_name\" is configured correctly." msgstr "" -#: replication/logical/slotsync.c:1006 +#: replication/logical/slotsync.c:1008 #, c-format msgid "cannot synchronize replication slots from a standby server" msgstr "უქმე სერვერიდან რეპლიკაციის სლოტების სინქრონიზაცია შეუძლებელია" #. translator: second %s is a GUC variable name -#: replication/logical/slotsync.c:1015 +#: replication/logical/slotsync.c:1017 #, c-format msgid "replication slot \"%s\" specified by \"%s\" does not exist on primary server" msgstr "რეპლიკაციის სლოტი \"%s\", რომელიც \"%s\"-მა მიუთითა, არ არსებობს ძირითად სერვერზე" @@ -21171,60 +21177,60 @@ msgstr "რეპლიკაციის სლოტი \"%s\", რომე #. translator: first %s is a connection option; second %s is a GUC #. variable name #. -#: replication/logical/slotsync.c:1048 +#: replication/logical/slotsync.c:1050 #, c-format msgid "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "რეპლიკაციის სლოტის სინქრონიზაციას სჭირდება, რომ \"%s\" მითითებული იყოს \"%s\"-ში" -#: replication/logical/slotsync.c:1067 +#: replication/logical/slotsync.c:1069 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "რეპლიკაციის სლოტის სინქრონიზაციას \"wal_level\" >= \"logical\" ესაჭიროება" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1082 replication/logical/slotsync.c:1110 +#: replication/logical/slotsync.c:1084 replication/logical/slotsync.c:1112 #, c-format msgid "replication slot synchronization requires \"%s\" to be set" msgstr "რეპლიკაციის სლოტის სინქრონიზაციას \"%s\"-ის დაყენება სჭირდება" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1096 +#: replication/logical/slotsync.c:1098 #, c-format msgid "replication slot synchronization requires \"%s\" to be enabled" msgstr "რეპლიკაციის სლოტის სინქრონიზაციას \"%s\"-ის ჩართვა სჭირდება" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1148 +#: replication/logical/slotsync.c:1150 #, c-format msgid "replication slot synchronization worker will shut down because \"%s\" is disabled" msgstr "" -#: replication/logical/slotsync.c:1157 +#: replication/logical/slotsync.c:1159 #, c-format msgid "replication slot synchronization worker will restart because of a parameter change" msgstr "" -#: replication/logical/slotsync.c:1181 +#: replication/logical/slotsync.c:1183 #, c-format -msgid "replication slot synchronization worker is shutting down on receiving SIGINT" -msgstr "" +msgid "replication slot synchronization worker is shutting down because promotion is triggered" +msgstr "რეპლიკაციის სლოტის სინქრონიზაციის დამხმარე პროგრამა ითიშება, რადგან დატრიგერდა წახალისება" -#: replication/logical/slotsync.c:1306 +#: replication/logical/slotsync.c:1308 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "რეპლიკაციის სლოტების სინქრონიზაცია შეუძლებელია უქმეს წახალისების მიმდინარეობისას" -#: replication/logical/slotsync.c:1314 +#: replication/logical/slotsync.c:1316 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "რეპლიკაციის სლოტების ერთდროული სინქრონიზაცია შეუძლებელია" -#: replication/logical/slotsync.c:1422 +#: replication/logical/slotsync.c:1424 #, c-format msgid "slot sync worker started" msgstr "სლოტის სინქრონიზაციის დამხმარე პროცესი გაეშვა" -#: replication/logical/slotsync.c:1485 replication/slotfuncs.c:929 +#: replication/logical/slotsync.c:1486 replication/slotfuncs.c:928 #, c-format msgid "synchronization worker \"%s\" could not connect to the primary server: %s" msgstr "სინქრონიზაციის დამხმარე პროცესი \"%s\" ვერ მიუერთდა ძირითად სერვერს: %s" @@ -21336,22 +21342,17 @@ msgstr "" msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" msgstr "" -#: replication/logical/tablesync.c:1466 +#: replication/logical/tablesync.c:1480 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "ცხრილის კოპირებამ ვერ გაუშვა ტრანზაქცია გამომცემელზე: %s" -#: replication/logical/tablesync.c:1509 -#, c-format -msgid "replication origin \"%s\" already exists" -msgstr "რეპლიკაციის წყარო \"%s\" უკვე არსებობს" - -#: replication/logical/tablesync.c:1542 replication/logical/worker.c:2378 +#: replication/logical/tablesync.c:1540 replication/logical/worker.c:2378 #, c-format msgid "user \"%s\" cannot replicate into relation with row-level security enabled: \"%s\"" msgstr "" -#: replication/logical/tablesync.c:1555 +#: replication/logical/tablesync.c:1553 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "ცხრილის კოპირებამ ვერ დაასრულა ტრანზაქცია გამომცემელზე: %s" @@ -21436,439 +21437,428 @@ msgstr "გამოწერას რეპლიკაციის სლო msgid "apply worker for subscription \"%s\" could not connect to the publisher: %s" msgstr "დამხმარე პროცესის გამოყენება გამოწერისთვის \"%s\" ვერ მიუერთდა გამომცემელს: %s" -#: replication/logical/worker.c:4689 +#: replication/logical/worker.c:4696 #, c-format msgid "logical replication worker for subscription %u will not start because the subscription was removed during startup" msgstr "" -#: replication/logical/worker.c:4705 +#: replication/logical/worker.c:4712 #, c-format msgid "logical replication worker for subscription \"%s\" will not start because the subscription was disabled during startup" msgstr "" -#: replication/logical/worker.c:4729 +#: replication/logical/worker.c:4736 #, c-format msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has started" msgstr "" -#: replication/logical/worker.c:4734 +#: replication/logical/worker.c:4741 #, c-format msgid "logical replication apply worker for subscription \"%s\" has started" msgstr "გაეშვა ლოგიკური რეპლიკაციის გადატარების დამხმარე პროცესი გამოწერისთვის \"%s\"" -#: replication/logical/worker.c:4864 +#: replication/logical/worker.c:4875 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "გამოწერა \"%s\" გაითიშა შეცდომის გამო" -#: replication/logical/worker.c:4912 +#: replication/logical/worker.c:4923 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "ლოგიკური რეპლიკაცია იწყებს ტრანზაქციის გამოტოვებას მისამართზე LSN %X/%X" -#: replication/logical/worker.c:4926 +#: replication/logical/worker.c:4937 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "ლოგიკურმა რეპლიკაციამ დაასრულა ტრანზაქციის გამოტოვება მისამართზე LSN %X/%X" -#: replication/logical/worker.c:5014 +#: replication/logical/worker.c:5025 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "skip-LSN გამოწერისთვის \"%s\" გასუფთავებულია" -#: replication/logical/worker.c:5015 +#: replication/logical/worker.c:5026 #, c-format msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X." msgstr "" -#: replication/logical/worker.c:5043 +#: replication/logical/worker.c:5054 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\"" msgstr "" -#: replication/logical/worker.c:5047 +#: replication/logical/worker.c:5058 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u" msgstr "" -#: replication/logical/worker.c:5052 +#: replication/logical/worker.c:5063 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X" msgstr "" -#: replication/logical/worker.c:5063 +#: replication/logical/worker.c:5074 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u" msgstr "" -#: replication/logical/worker.c:5070 +#: replication/logical/worker.c:5081 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u, finished at %X/%X" msgstr "" -#: replication/logical/worker.c:5081 +#: replication/logical/worker.c:5092 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u" msgstr "" -#: replication/logical/worker.c:5089 +#: replication/logical/worker.c:5100 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u, finished at %X/%X" msgstr "" -#: replication/pgoutput/pgoutput.c:328 +#: replication/pgoutput/pgoutput.c:329 #, c-format msgid "invalid proto_version" msgstr "არასწორი proto_version" -#: replication/pgoutput/pgoutput.c:333 +#: replication/pgoutput/pgoutput.c:334 #, c-format msgid "proto_version \"%s\" out of range" msgstr "proto_version \"%s\" დიაპაზონს გარეთაა" -#: replication/pgoutput/pgoutput.c:350 +#: replication/pgoutput/pgoutput.c:355 #, c-format msgid "invalid publication_names syntax" msgstr "არასწორი publication_names syntax" -#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 +#: replication/pgoutput/pgoutput.c:425 replication/pgoutput/pgoutput.c:429 #, c-format msgid "option \"%s\" missing" msgstr "პარამეტრი \"%s\" აკლია" -#: replication/pgoutput/pgoutput.c:469 +#: replication/pgoutput/pgoutput.c:496 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or lower" msgstr "კლიენტმა გამოაგზავნა proto_version=%d მაგრამ სერვერს მხოლოდ %d პროტოკოლის და ქვემოთ გააჩნია მხარდაჭერა" -#: replication/pgoutput/pgoutput.c:475 +#: replication/pgoutput/pgoutput.c:502 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or higher" msgstr "კლიენტმა გამოაგზავნა proto_version=%d მაგრამ სერვერს მხოლოდ %d პროტოკოლის და ზემოთ გააჩნია მხარდაჭერა" -#: replication/pgoutput/pgoutput.c:490 +#: replication/pgoutput/pgoutput.c:517 #, c-format msgid "requested proto_version=%d does not support streaming, need %d or higher" msgstr "" -#: replication/pgoutput/pgoutput.c:496 +#: replication/pgoutput/pgoutput.c:523 #, c-format msgid "requested proto_version=%d does not support parallel streaming, need %d or higher" msgstr "" -#: replication/pgoutput/pgoutput.c:501 +#: replication/pgoutput/pgoutput.c:528 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "" -#: replication/pgoutput/pgoutput.c:515 +#: replication/pgoutput/pgoutput.c:542 #, c-format msgid "requested proto_version=%d does not support two-phase commit, need %d or higher" msgstr "" -#: replication/pgoutput/pgoutput.c:520 +#: replication/pgoutput/pgoutput.c:547 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "" -#: replication/pgoutput/pgoutput.c:1085 +#: replication/pgoutput/pgoutput.c:1112 #, c-format msgid "cannot use different values of publish_generated_columns for table \"%s.%s\" in different publications" msgstr "" -#: replication/pgoutput/pgoutput.c:1792 +#: replication/pgoutput/pgoutput.c:1815 #, c-format msgid "skipped loading publication \"%s\"" msgstr "გამოტოვებულია ჩატვირთვა პუბლიკაციისთვის \"%s\"" -#: replication/pgoutput/pgoutput.c:1793 +#: replication/pgoutput/pgoutput.c:1816 #, c-format msgid "The publication does not exist at this point in the WAL." msgstr "WAL-ში ამ წერტილთან პუბლიკაცია არ არსებობს." -#: replication/pgoutput/pgoutput.c:1794 +#: replication/pgoutput/pgoutput.c:1817 #, c-format msgid "Create the publication if it does not exist." msgstr "პუბლიკაციის შექმნა, თუ ის არ არსებობს." -#: replication/slot.c:275 +#: replication/slot.c:313 #, c-format msgid "replication slot name \"%s\" is too short" msgstr "რეპლიკაციის სლოტის სახელი \"%s\" ძალიან მოკლეა" -#: replication/slot.c:284 +#: replication/slot.c:321 #, c-format msgid "replication slot name \"%s\" is too long" msgstr "რეპლიკაციის სლოტის სახელი \"%s\" ძალიან გრძელია" -#: replication/slot.c:297 +#: replication/slot.c:333 #, c-format msgid "replication slot name \"%s\" contains invalid character" msgstr "რეპლიკაციის სლოტის სახელი \"%s\" არასწორ სიმბოლოს შეიცავს" -#: replication/slot.c:299 -#, c-format +#: replication/slot.c:334 msgid "Replication slot names may only contain lower case letters, numbers, and the underscore character." msgstr "" -#: replication/slot.c:348 +#: replication/slot.c:377 #, c-format msgid "cannot enable failover for a replication slot created on the standby" msgstr "" -#: replication/slot.c:360 replication/slot.c:886 +#: replication/slot.c:389 replication/slot.c:925 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "დროებითი რეპლიკაციის სლოტისთვის გადართვის ჩართვა შეუძლებელია" -#: replication/slot.c:385 +#: replication/slot.c:414 #, c-format msgid "replication slot \"%s\" already exists" msgstr "რეპლიკაციის სლოტი \"%s\" უკვე არსებობს" -#: replication/slot.c:395 +#: replication/slot.c:424 #, c-format msgid "all replication slots are in use" msgstr "ყველა რეპლიკაციის სლოტი გამოიყენება" -#: replication/slot.c:396 +#: replication/slot.c:425 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "გაათავისუფლეთ ერთი მაინც ან გაზარდეთ \"max_replication_slots\"." -#: replication/slot.c:580 replication/slotfuncs.c:664 utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:739 +#: replication/slot.c:609 replication/slotfuncs.c:664 utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:739 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "რეპლიკაციის სლოტი არ არსებობს: %s" -#: replication/slot.c:635 replication/slot.c:1431 +#: replication/slot.c:664 replication/slot.c:1499 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "რეპლიკაციის სლოტი (%s) აქტიურია PID-ისთვის %d" -#: replication/slot.c:652 +#: replication/slot.c:681 #, c-format msgid "can no longer access replication slot \"%s\"" msgstr "რეპლიკაციის სლოტთან \"%s\" წვდომა აღარ მაქვს" -#: replication/slot.c:654 +#: replication/slot.c:683 #, c-format msgid "This replication slot has been invalidated due to \"%s\"." msgstr "ეს რეპლიკაციის სლოტი მონიშნულია, როგორც არასწორი \"%s\"-ის გამო." -#: replication/slot.c:673 +#: replication/slot.c:702 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "მივიღე ლოგიკური რეპლიკაციის სლოტი \"%s\"" -#: replication/slot.c:675 +#: replication/slot.c:704 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "მივიღე ფიზიკური რეპლიკაციის სლოტი \"%s\"" -#: replication/slot.c:760 +#: replication/slot.c:789 #, c-format msgid "released logical replication slot \"%s\"" msgstr "გათავისუფლდა ლოგიკური რეპლიკაციის სლოტი \"%s\"" -#: replication/slot.c:762 +#: replication/slot.c:791 #, c-format msgid "released physical replication slot \"%s\"" msgstr "გათავისუფლდა ფიზიკური რეპლიკაციის სლოტი \"%s\"" -#: replication/slot.c:828 +#: replication/slot.c:857 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "რეპლიკაციის სლოტის \"%s\" წაშლის შეცდომა" -#: replication/slot.c:851 +#: replication/slot.c:890 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "%s-ის გამოყენება ფიზიკური რეპლიკაციის სლოტთან ერთად შეუძლებელია" -#: replication/slot.c:863 +#: replication/slot.c:902 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "რეპლიკაციის სლოტის \"%s\" შეცვლა შეუძლებელია" -#: replication/slot.c:873 +#: replication/slot.c:912 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "" -#: replication/slot.c:1021 replication/slot.c:2174 replication/slot.c:2560 +#: replication/slot.c:1060 replication/slot.c:2228 replication/slot.c:2621 #, c-format msgid "could not remove directory \"%s\"" msgstr "საქაღალდის (\"%s\") წაშლის შეცდომა" -#: replication/slot.c:1466 +#: replication/slot.c:1534 #, c-format msgid "replication slots can only be used if \"max_replication_slots\" > 0" msgstr "რეპლიკაციის სლოტების გამოყენება შესაძლებელია, მხოლოდ, როცა \"max_replication_slots\" > 0" -#: replication/slot.c:1471 +#: replication/slot.c:1539 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "რეპლიკაციის სლოტების გამოყენება შესაძლებელია, მხოლოდ, როცა \"wal_level\" >= \"replica\"" -#: replication/slot.c:1483 +#: replication/slot.c:1551 #, c-format msgid "permission denied to use replication slots" msgstr "რეპლიკაციის სლოტების გამოყენების წვდომა აკრძალულია" -#: replication/slot.c:1484 +#: replication/slot.c:1552 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "" -#: replication/slot.c:1594 +#: replication/slot.c:1664 #, c-format msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by % bytes." msgstr[0] "" msgstr[1] "" -#: replication/slot.c:1605 +#: replication/slot.c:1675 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "სლოტი კონფლიქტშია XID-ის ჰორიზონტთან %u." -#: replication/slot.c:1610 +#: replication/slot.c:1680 msgid "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the primary server." msgstr "ლოგიკურ გაშიფვრას უქმეზე ძირითად სერვერზე \"wal_level\" >= \"logical\" ესაჭიროება." #. translator: %s is a GUC variable name -#: replication/slot.c:1616 +#: replication/slot.c:1686 #, c-format msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." msgstr "" -#: replication/slot.c:1630 +#: replication/slot.c:1700 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "რეპლიკაციის სლოტის (%2$s) გასათავისუფლებლად მოხდება პროცესის მოკვლა: %1$d" -#: replication/slot.c:1632 +#: replication/slot.c:1702 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "მოძველებული რეპლიკაციის სლოტის (\"%s\") არასწორად გამოცხადება" -#: replication/slot.c:2498 +#: replication/slot.c:2559 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "რეპლიკაციის სლოტის (%s) ფაილის არასწორი მაგიური რიცხვი: %u (უნდა იყოს %u)" -#: replication/slot.c:2505 +#: replication/slot.c:2566 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "რეპლიკაციის სლოტის ფაილის (%s) მხარდაუჭერელი ვერსია %u" -#: replication/slot.c:2512 +#: replication/slot.c:2573 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "რეპლიკაციის სლოტის ფაილის (%s) დაზიანებული სიგრძე: %u" -#: replication/slot.c:2548 +#: replication/slot.c:2609 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "" -#: replication/slot.c:2584 +#: replication/slot.c:2645 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "ლოგიკური რეპლიკაციის სლოტი\"%s\" არსებობს, მაგრამ \"wal_level\" < \"logical\"" -#: replication/slot.c:2586 +#: replication/slot.c:2647 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "შეცვალეთ \"wal_level\" \"logical\"-ზე ან უფრო მაღალზე." -#: replication/slot.c:2598 +#: replication/slot.c:2659 #, c-format msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" msgstr "ლოგიკური რეპლიკაციის სლოტი\"%s\" არსებობს, მაგრამ \"hot_standby\" = \"off\"" -#: replication/slot.c:2600 +#: replication/slot.c:2661 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "" -#: replication/slot.c:2605 +#: replication/slot.c:2666 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "ფიზიკური რეპლიკაციის სლოტი\"%s\" არსებობს, მაგრამ \"wal_level\" < \"replica\"" -#: replication/slot.c:2607 +#: replication/slot.c:2668 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "შეცვალეთ \"wal_level\" \"replica\"-ზე ან ზემოთ." -#: replication/slot.c:2654 +#: replication/slot.c:2715 #, c-format msgid "too many replication slots active before shutdown" msgstr "გამორთვამდე მეტისმეტად ბევრი რეპლიკაციის სლოტი იყო აქტიური" -#: replication/slot.c:2655 +#: replication/slot.c:2716 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "გაზარდეთ \"max_replication_slots\"-ის მნიშვნელობა და თავიდან სცადეთ." -#: replication/slot.c:2732 -#, c-format -msgid "Replication slot \"%s\" does not exist." -msgstr "რეპლიკაციის სლოტი \"%s\" არ არსებობს." - -#: replication/slot.c:2740 -#, c-format -msgid "\"%s\" is not a physical replication slot." -msgstr "\"%s\" ფიზიკური რეპლიკაციის სლოტი არაა." - -#: replication/slot.c:2919 +#: replication/slot.c:2953 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "რეპლიკაციის სლოტი \"%s\", მითითებული პარამეტრში %s, არ არსებობს" -#: replication/slot.c:2921 replication/slot.c:2955 replication/slot.c:2970 +#: replication/slot.c:2955 replication/slot.c:2989 replication/slot.c:3004 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "ლოგიკური რეპლიკაცია ელოდება უქმე სლოტს, რომელიც დაკავშირებულია რეპლიკაციის სლოტთან \"%s\"." -#: replication/slot.c:2923 +#: replication/slot.c:2957 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "შექმენით რეპლიკაციის სლოტი \"%s\" ან შეცვალეთ პარამეტრი \"%s\"." -#: replication/slot.c:2933 +#: replication/slot.c:2967 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "ვერ მიუთითებთ ლოგიკური რეპლიკაციის სლოტს \"%s\" პარამეტრში \"%s\"" -#: replication/slot.c:2935 +#: replication/slot.c:2969 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "ლოგიკური რეპლიკაცია ელოდება კორექტირებას რეპლიკაციის სლოტზე \"%s\"." -#: replication/slot.c:2937 +#: replication/slot.c:2971 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "წაშალეთ ლოგიკური რეპლიკაციის სლოტი \"%s\" პარამეტრიდან \"%s\"." -#: replication/slot.c:2953 +#: replication/slot.c:2987 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" msgstr "ფიზიკური რეპლიკაციის სლოტი \"%s\", მითითებული პარამეტრში \"%s\", გაუქმებულია" -#: replication/slot.c:2957 +#: replication/slot.c:2991 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "განიხილეთ მოცილება ან თავიდან შექმნა სლოტისთვის \"%s\" ან მიაწერეთ პარამეტრი \"%s\"." -#: replication/slot.c:2968 +#: replication/slot.c:3002 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not have active_pid" msgstr "რეპლიკაციის სლოტი \"%s\", რომელიც მითითებულია პარამეტრში \"%s\", active_pid არ გააჩნია" -#: replication/slot.c:2972 +#: replication/slot.c:3006 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." msgstr "გაუშვით უქმე, ასოცირებული რეპლიკაციის სლოტთან \"%s\", ან მიაწერეთ პარამეტრი \"%s\"." @@ -22053,123 +22043,118 @@ msgstr "" msgid "could not write to WAL segment %s at offset %d, length %lu: %m" msgstr "'WAL'-ის სეგმენტში (%s) ჩაწერის შეცდომა. წანაცვლება %d, სიგრძე %lu: %m" -#: replication/walsender.c:505 +#: replication/walsender.c:519 #, c-format msgid "cannot use %s with a logical replication slot" msgstr "%s-ის გამოყენება ლოგიკური რეპლიკაციის სლოტთან ერთად შეუძლებელია" -#: replication/walsender.c:609 storage/smgr/md.c:1867 +#: replication/walsender.c:623 storage/smgr/md.c:1870 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "ფაილის (\"%s\") ბოლოში გადახვევის პრობლემა: %m" -#: replication/walsender.c:613 +#: replication/walsender.c:627 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "ფაილის (\"%s\") დასაწყისში გადახვევის პრობლემა: %m" -#: replication/walsender.c:829 +#: replication/walsender.c:843 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "" -#: replication/walsender.c:895 +#: replication/walsender.c:909 #, c-format msgid "requested starting point %X/%X on timeline %u is not in this server's history" msgstr "" -#: replication/walsender.c:898 +#: replication/walsender.c:912 #, c-format msgid "This server's history forked from timeline %u at %X/%X." msgstr "" -#: replication/walsender.c:942 +#: replication/walsender.c:956 #, c-format msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X" msgstr "" -#: replication/walsender.c:1137 -#, c-format -msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" -msgstr "უცნობი მნიშვნელობა CREATE_REPLICATION_SLOT-ის პარამეტრისთვის \"%s\": \"%s\"" - #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1243 +#: replication/walsender.c:1257 #, c-format msgid "%s must not be called inside a transaction" msgstr "%s ტრანზაქცის შიგნიდან არ უნდა გამოიძახოთ" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1253 +#: replication/walsender.c:1267 #, c-format msgid "%s must be called inside a transaction" msgstr "%s ტრანზაქციის შიგნიდან უნდა გამოიძახოთ" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1259 +#: replication/walsender.c:1273 #, c-format msgid "%s must be called in REPEATABLE READ isolation mode transaction" msgstr "" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1264 +#: replication/walsender.c:1278 #, c-format msgid "%s must be called in a read-only transaction" msgstr "%s მხოლოდ-წაკითხვად ტრანზაქციაში უნდა გამოიძახოთ" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1270 +#: replication/walsender.c:1284 #, c-format msgid "%s must be called before any query" msgstr "%s ყველა მოთხოვნაზე ადრე უნდა გამოიძახოთ" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1276 +#: replication/walsender.c:1290 #, c-format msgid "%s must not be called in a subtransaction" msgstr "%s ქვეტრანზაქციაში არ უნდა გამოიძახოთ" -#: replication/walsender.c:1453 +#: replication/walsender.c:1467 #, c-format msgid "terminating walsender process after promotion" msgstr "walsender პროცესის შეწყვეტა დაწინაურების შემდეგ" -#: replication/walsender.c:1996 +#: replication/walsender.c:2010 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "'WAL'-გამგზავნის გაჩერების რეჟიმში ყოფნის დროს ახალი ბრძანებების შესრულება შეუძლებელია" -#: replication/walsender.c:2050 +#: replication/walsender.c:2064 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "ფიზიკური რეპლიკაციისთვის WAL-ის გამგზავნში SQL ბრძანებების შესრულება შეუძლებელია" -#: replication/walsender.c:2081 +#: replication/walsender.c:2095 #, c-format msgid "received replication command: %s" msgstr "მიღებულია რეპლიკაციის ბრძანება: %s" -#: replication/walsender.c:2089 tcop/fastpath.c:208 tcop/postgres.c:1137 tcop/postgres.c:1494 tcop/postgres.c:1746 tcop/postgres.c:2251 tcop/postgres.c:2688 tcop/postgres.c:2765 +#: replication/walsender.c:2103 tcop/fastpath.c:208 tcop/postgres.c:1137 tcop/postgres.c:1494 tcop/postgres.c:1746 tcop/postgres.c:2251 tcop/postgres.c:2688 tcop/postgres.c:2765 #, c-format msgid "current transaction is aborted, commands ignored until end of transaction block" msgstr "" -#: replication/walsender.c:2249 replication/walsender.c:2284 +#: replication/walsender.c:2263 replication/walsender.c:2298 #, c-format msgid "unexpected EOF on standby connection" msgstr "მოულოდნელი EOF მომლოდინის მიერთებაზე" -#: replication/walsender.c:2272 +#: replication/walsender.c:2286 #, c-format msgid "invalid standby message type \"%c\"" msgstr "არასწორი მომლოდინის შეტყობინების ტიპი \"%c\"" -#: replication/walsender.c:2361 +#: replication/walsender.c:2375 #, c-format msgid "unexpected message type \"%c\"" msgstr "შეტყობინების მოულოდნელი ტიპი: \"%c\"" -#: replication/walsender.c:2775 +#: replication/walsender.c:2789 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "walsender პროცესის შეწყვეტა რეპლიკაციის მოლოდინის ვადის ამოწურვის გამო" @@ -22354,280 +22339,280 @@ msgstr "'ON SELECT' წესზე სახელის გადარქმ msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten" msgstr "" -#: rewrite/rewriteHandler.c:617 +#: rewrite/rewriteHandler.c:620 #, c-format msgid "INSERT ... SELECT rule actions are not supported for queries having data-modifying statements in WITH" msgstr "INSERT … SELECT წესის ქმედებები მხარდაუჭერელია მოთხოვნებისთვის, რომლებსაც WITH-ის შემცველი მონაცემების შემცვლელი გამოსახულებები გააჩნიათ" -#: rewrite/rewriteHandler.c:671 +#: rewrite/rewriteHandler.c:674 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "" -#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 +#: rewrite/rewriteHandler.c:911 rewrite/rewriteHandler.c:950 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "" -#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 +#: rewrite/rewriteHandler.c:913 rewrite/rewriteHandler.c:979 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "" -#: rewrite/rewriteHandler.c:912 +#: rewrite/rewriteHandler.c:915 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "გადასაფარად გამოიყენეთ OVERRIDING SYSTEM VALUE." -#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 +#: rewrite/rewriteHandler.c:977 rewrite/rewriteHandler.c:985 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "სვეტი \"%s\" მხოლოდ DEFAULT-მდე შეიძლება, განახლდეს" -#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 +#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "" -#: rewrite/rewriteHandler.c:1691 +#: rewrite/rewriteHandler.c:1694 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "წესების მქონე ურთიერთობებისთვის MERGE მხარდაჭერილი არაა." -#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 +#: rewrite/rewriteHandler.c:1734 rewrite/rewriteHandler.c:3274 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "" -#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 +#: rewrite/rewriteHandler.c:2133 rewrite/rewriteHandler.c:4285 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "" -#: rewrite/rewriteHandler.c:2235 +#: rewrite/rewriteHandler.c:2238 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "" -#: rewrite/rewriteHandler.c:2598 +#: rewrite/rewriteHandler.c:2601 msgid "Junk view columns are not updatable." msgstr "ნაგვის ნახვის სვეტები განახლებადი არაა." -#: rewrite/rewriteHandler.c:2603 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that are not columns of their base relation are not updatable." msgstr "ხედის სვეტები, რომლებიც მათი საბაზისო ურთიერთობის სვეტები არიან, განახლებადი არაა." -#: rewrite/rewriteHandler.c:2606 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that refer to system columns are not updatable." msgstr "ხედის სვეტები, რომლებიც სისტემურ სვეტებზეა მიბმული, განახლებადი არაა." -#: rewrite/rewriteHandler.c:2609 +#: rewrite/rewriteHandler.c:2612 msgid "View columns that return whole-row references are not updatable." msgstr "ხედის სვეტები, რომლებიც მთელ-მწკრივიან ბმებზე მიუთითებენ, განახლებადი არაა." -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing DISTINCT are not automatically updatable." msgstr "\"DISTINCT\"-ის შემცველი ხედები განახლებადი არაა." -#: rewrite/rewriteHandler.c:2673 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing GROUP BY are not automatically updatable." msgstr "\"GROUP BY\"-ის შემცველი ხედები თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2679 msgid "Views containing HAVING are not automatically updatable." msgstr "\"HAVING\"-ის შემცველი ხედები თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2679 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "\"UNION\"-ის, \"INTERSECT\"-ის და \"EXCEPT\"-ის შემცველი ხედები თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2682 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing WITH are not automatically updatable." msgstr "\"WITH\"-ის შემცველი ხედები თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2685 +#: rewrite/rewriteHandler.c:2688 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "\"LIMIT\"-ის და \"OFFSET\"-ის შემცველი ხედები თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2697 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return aggregate functions are not automatically updatable." msgstr "ხედები, რომლებიც აგრეგატულ ფუნქციებს აბრუნებენ, თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2700 +#: rewrite/rewriteHandler.c:2703 msgid "Views that return window functions are not automatically updatable." msgstr "ხედები, რომლებიც ფანჯრის ფუნქციებს აბრუნებენ, თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2703 +#: rewrite/rewriteHandler.c:2706 msgid "Views that return set-returning functions are not automatically updatable." msgstr "ხედები, რომლებიც აბრუნებენ ფუნქციებს, რომლებიც სეტებს აბრუნებენ, თვითგანახლებადი არაა." -#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 rewrite/rewriteHandler.c:2722 +#: rewrite/rewriteHandler.c:2713 rewrite/rewriteHandler.c:2717 rewrite/rewriteHandler.c:2725 msgid "Views that do not select from a single table or view are not automatically updatable." msgstr "" -#: rewrite/rewriteHandler.c:2725 +#: rewrite/rewriteHandler.c:2728 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "" -#: rewrite/rewriteHandler.c:2749 +#: rewrite/rewriteHandler.c:2752 msgid "Views that have no updatable columns are not automatically updatable." msgstr "ხედები, რომლებსაც განახლებადი ცხრილები არ გააჩნია, ავტომატურად განახლებადები არ არიან." -#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3133 rewrite/rewriteHandler.c:3168 #, c-format msgid "cannot insert into view \"%s\"" msgstr "ხედში ჩამატება შეუძლებელია: %s" -#: rewrite/rewriteHandler.c:3133 +#: rewrite/rewriteHandler.c:3136 #, c-format msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule." msgstr "" -#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3141 rewrite/rewriteHandler.c:3177 #, c-format msgid "cannot update view \"%s\"" msgstr "ხედის განახლება შეუძლებელია: %s" -#: rewrite/rewriteHandler.c:3141 +#: rewrite/rewriteHandler.c:3144 #, c-format msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule." msgstr "" -#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 +#: rewrite/rewriteHandler.c:3149 rewrite/rewriteHandler.c:3186 #, c-format msgid "cannot delete from view \"%s\"" msgstr "ხედიდან წაშლა შეუძლებელია: %s" -#: rewrite/rewriteHandler.c:3149 +#: rewrite/rewriteHandler.c:3152 #, c-format msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule." msgstr "" -#: rewrite/rewriteHandler.c:3168 +#: rewrite/rewriteHandler.c:3171 #, c-format msgid "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT trigger." msgstr "ხედში MERGE-ით ჩასმის ჩასართავად მიუთითეთ INSTEAD OF INSERT ტრიგერი." -#: rewrite/rewriteHandler.c:3177 +#: rewrite/rewriteHandler.c:3180 #, c-format msgid "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE trigger." msgstr "ხედის MERGE-ით განახლების ჩასართავად მიუთითეთ INSTEAD OF UPDATE ტრიგერი." -#: rewrite/rewriteHandler.c:3186 +#: rewrite/rewriteHandler.c:3189 #, c-format msgid "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE trigger." msgstr "ამ ხედიდან MERGE-ის საშუალებით წაშლის ჩასართავად მიუთითეთ INSTEAD OF DELETE ტრიგერი." -#: rewrite/rewriteHandler.c:3361 +#: rewrite/rewriteHandler.c:3364 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "ხედის (\"%2$s\") სვეტში \"%1$s\" მონაცემის ჩასმა შეუძლებელია" -#: rewrite/rewriteHandler.c:3369 +#: rewrite/rewriteHandler.c:3372 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "ხედის (\"%2$s\") სვეტის \"%1$s\" განახლება შეუძლებელია" -#: rewrite/rewriteHandler.c:3377 +#: rewrite/rewriteHandler.c:3380 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "ხედის (\"%2$s\") სვეტთან \"%1$s\" შერწყმა შეუძლებელია" -#: rewrite/rewriteHandler.c:3405 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "cannot merge into view \"%s\"" msgstr "შეუძლებელია შერწყმა ხედში \"%s\"" -#: rewrite/rewriteHandler.c:3407 +#: rewrite/rewriteHandler.c:3410 #, c-format msgid "MERGE is not supported for views with INSTEAD OF triggers for some actions but not all." msgstr "" -#: rewrite/rewriteHandler.c:3408 +#: rewrite/rewriteHandler.c:3411 #, c-format msgid "To enable merging into the view, either provide a full set of INSTEAD OF triggers or drop the existing INSTEAD OF triggers." msgstr "ამ ხედში შერწყმის ჩასართავად, ან შეიყვანეთ INSTEAD OF ტრიგერების სრული სია, ან წაშალეთ არსებული INSTEAD OF ტრიგერები." -#: rewrite/rewriteHandler.c:3923 +#: rewrite/rewriteHandler.c:3942 #, c-format msgid "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in WITH" msgstr "" -#: rewrite/rewriteHandler.c:3934 +#: rewrite/rewriteHandler.c:3953 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH" msgstr "" -#: rewrite/rewriteHandler.c:3948 +#: rewrite/rewriteHandler.c:3967 #, c-format msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "" -#: rewrite/rewriteHandler.c:3952 +#: rewrite/rewriteHandler.c:3971 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "" -#: rewrite/rewriteHandler.c:3957 +#: rewrite/rewriteHandler.c:3976 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "" -#: rewrite/rewriteHandler.c:4217 +#: rewrite/rewriteHandler.c:4237 msgid "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "" -#: rewrite/rewriteHandler.c:4314 +#: rewrite/rewriteHandler.c:4335 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "ურთიერთობაზე \"%s\" 'INSERT RETURNING'-ის განხორციელება შეუძლებელია" -#: rewrite/rewriteHandler.c:4316 +#: rewrite/rewriteHandler.c:4337 #, c-format msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." msgstr "" -#: rewrite/rewriteHandler.c:4321 +#: rewrite/rewriteHandler.c:4342 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "ურთიერთობაზე \"%s\" 'UPDATE RETURNING'-ის განხორციელება შეუძლებელია" -#: rewrite/rewriteHandler.c:4323 +#: rewrite/rewriteHandler.c:4344 #, c-format msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." msgstr "" -#: rewrite/rewriteHandler.c:4328 +#: rewrite/rewriteHandler.c:4349 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "ურთიერთობაზე \"%s\" 'DELETE RETURNING'-ის განხორციელება შეუძლებელია" -#: rewrite/rewriteHandler.c:4330 +#: rewrite/rewriteHandler.c:4351 #, c-format msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." msgstr "" -#: rewrite/rewriteHandler.c:4348 +#: rewrite/rewriteHandler.c:4369 #, c-format msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules" msgstr "" -#: rewrite/rewriteHandler.c:4405 +#: rewrite/rewriteHandler.c:4426 #, c-format msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries" msgstr "" -#: rewrite/rewriteManip.c:1178 +#: rewrite/rewriteManip.c:1175 #, c-format msgid "conditional utility statements are not implemented" msgstr "პირობითი სამსახურეობრივი გამოსახულებები განხორციელებული არაა" -#: rewrite/rewriteManip.c:1523 +#: rewrite/rewriteManip.c:1520 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "WHERE CURRENT OF ხედზე განხორციელებული არაა" -#: rewrite/rewriteManip.c:1926 +#: rewrite/rewriteManip.c:1923 #, 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 "" @@ -22781,72 +22766,57 @@ msgstr "" msgid "missing Language parameter" msgstr "აკლია პარამეტრი Language" -#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:932 statistics/relation_stats.c:98 +#: statistics/attribute_stats.c:192 statistics/attribute_stats.c:937 statistics/relation_stats.c:98 #, c-format msgid "Statistics cannot be modified during recovery." msgstr "აღდგენის დროს სტატისტიკას ვერ შეცვლით." -#: statistics/attribute_stats.c:202 +#: statistics/attribute_stats.c:205 #, c-format -msgid "cannot specify both attname and attnum" -msgstr "ორივეს attname და attnum ვერ მიუთითებთ" +msgid "cannot specify both \"%s\" and \"%s\"" +msgstr "ორივეს, \"%s\" და \"%s\" ერთად მითითება შეუძლებელია" -#: statistics/attribute_stats.c:228 +#: statistics/attribute_stats.c:231 #, c-format -msgid "must specify either attname or attnum" -msgstr "აუცილებელია, მიუთითოთ attname ან attnum" +msgid "must specify either \"%s\" or \"%s\"" +msgstr "უნდა მიუთითოთ \"%s\" ან \"%s\"" -#: statistics/attribute_stats.c:236 +#: statistics/attribute_stats.c:239 #, c-format msgid "cannot modify statistics on system column \"%s\"" msgstr "სტატისტიკის შეცვლა შეუძლებელია სისტემურ სვეტზე \"%s\"" -#: statistics/attribute_stats.c:300 -#, c-format -msgid "unable to determine element type of attribute \"%s\"" -msgstr "ატრიბუტის \"%s\" ელემენტის დადგენა შეუძლებელია" - -#: statistics/attribute_stats.c:301 +#: statistics/attribute_stats.c:303 #, c-format -msgid "Cannot set STATISTIC_KIND_MCELEM or STATISTIC_KIND_DECHIST." -msgstr "" +msgid "could not determine element type of column \"%s\"" +msgstr "სვეტისთვის \"%s\" ელემენტის ტიპის დადგენა შეუძლებელია" -#: statistics/attribute_stats.c:316 +#: statistics/attribute_stats.c:304 statistics/attribute_stats.c:321 statistics/attribute_stats.c:336 #, c-format -msgid "could not determine less-than operator for attribute \"%s\"" -msgstr "შეუძლებელია ნაკლებია ვიდრე ოპერატორის დადგენა ატრიბუტისთვის \"%s\"" +msgid "Cannot set %s or %s." +msgstr "%s-ის ან %s-ის დაყენება შეუძლებელია." -#: statistics/attribute_stats.c:317 +#: statistics/attribute_stats.c:320 #, c-format -msgid "Cannot set STATISTIC_KIND_HISTOGRAM or STATISTIC_KIND_CORRELATION." -msgstr "" +msgid "could not determine less-than operator for column \"%s\"" +msgstr "შეუძლებელია ნაკლებია ვიდრე ოპერატორის დადგენა სვეტისთვის \"%s\"" -#: statistics/attribute_stats.c:330 +#: statistics/attribute_stats.c:335 #, c-format -msgid "attribute \"%s\" is not a range type" -msgstr "ატრიბუტი \"%s\" შუალედის ტიპი არაა" +msgid "column \"%s\" is not a range type" +msgstr "სვეტი \"%s\" შუალედის ტიპი არაა" -#: statistics/attribute_stats.c:331 +#: statistics/attribute_stats.c:738 #, c-format -msgid "Cannot set STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM or STATISTIC_KIND_BOUNDS_HISTOGRAM." -msgstr "" +msgid "\"%s\" array must not contain null values" +msgstr "\"%s\" მასივები ნულოვან მნიშვნელობებს არ უნდა შეიცავდეს" -#: statistics/attribute_stats.c:590 statistics/attribute_stats.c:598 -#, c-format -msgid "attribute %d of relation \"%s\" does not exist" -msgstr "ატრიბუტი %d ურთიერთობისთვის \"%s\" არ არსებობს" - -#: statistics/attribute_stats.c:732 statistics/stat_utils.c:80 -#, c-format -msgid "\"%s\" array cannot contain NULL values" -msgstr "\"%s\" მასივი, არ შეიძლება, NULL მნიშვნელობებს შეიცავდეს" - -#: statistics/attribute_stats.c:775 +#: statistics/attribute_stats.c:781 #, c-format msgid "maximum number of statistics slots exceeded: %d" msgstr "გადაცილებულია სტატისტიკის სლოტების მაქსიმალური რაოდენობა: %d" -#: statistics/attribute_stats.c:942 +#: statistics/attribute_stats.c:949 #, c-format msgid "cannot clear statistics on system column \"%s\"" msgstr "სტატისტიკის გასუფთავება შეუძლებელია სისტემურ სვეტზე \"%s\"" @@ -22861,67 +22831,82 @@ msgstr "" msgid "function returning record called in context that cannot accept type record" msgstr "ფუნქცია, რომელიც ჩანაწერს აბრუნებს, გამოძახებულია კონტექსტში, რომელსაც ჩანაწერის მიღება არ შეუძლია" -#: statistics/relation_stats.c:115 +#: statistics/relation_stats.c:117 #, c-format -msgid "reltuples cannot be < -1.0" -msgstr "reltuples ვერ იქნება < -1.0" +msgid "argument \"%s\" must not be less than -1.0" +msgstr "არგუმენტი \"%s\" -1.0-ზე ნაკლები არ უნდა იყოს" -#: statistics/stat_utils.c:44 +#: statistics/stat_utils.c:47 #, c-format -msgid "\"%s\" cannot be NULL" -msgstr "\"%s\" არ შეიძლება, NULL იყოს" +msgid "argument \"%s\" must not be null" +msgstr "არგუმენტი \"%s\" ნულოვანი არ უნდა იყოს" -#: statistics/stat_utils.c:71 +#: statistics/stat_utils.c:74 #, c-format -msgid "\"%s\" cannot be a multidimensional array" -msgstr "\"%s\" მრავალგანზომილებიანი მასივი ვერ იქნება" +msgid "argument \"%s\" must not be a multidimensional array" +msgstr "\"%s\" მრავალგანზომილებიანი მასივი არ უნდა იყოს" -#: statistics/stat_utils.c:111 +#: statistics/stat_utils.c:83 #, c-format -msgid "\"%s\" must be specified when \"%s\" is specified" -msgstr "\"%s\"-ის მითითება აუცილებელია, როცა მიუთითებთ \"%s\"-ს" +msgid "argument \"%s\" array must not contain null values" +msgstr "არგუმენტის \"%s\" მასივები ნულოვან მნიშვნელობებს არ უნდა შეიცავდეს" -#: statistics/stat_utils.c:178 +#: statistics/stat_utils.c:114 +#, c-format +msgid "argument \"%s\" must be specified when argument \"%s\" is specified" +msgstr "არგუმენტის \"%s\" მითითება აუცილებელია, როცა მითითებულია არგუმენტი \"%s\"" + +#: statistics/stat_utils.c:177 +#, c-format +msgid "index \"%s\" was concurrently dropped" +msgstr "ინდექსი \"%s\" სხვა პროცესის მიერ წაიშალა" + +#: statistics/stat_utils.c:192 +#, c-format +msgid "index \"%s\" was concurrently created" +msgstr "ინდექსი \"%s\" სხვა პროცესის მიერ შეიქმნა" + +#: statistics/stat_utils.c:212 #, c-format msgid "cannot modify statistics for relation \"%s\"" msgstr "სტატისტიკის შეცვლა ურთიერთობისთვის \"%s\" შეუძლებელია" -#: statistics/stat_utils.c:199 +#: statistics/stat_utils.c:220 #, c-format msgid "cannot modify statistics for shared relation" msgstr "გაზიარებული ურთიერთობისთვის სტატისტიკის შეცვლა შეუძლებელია" -#: statistics/stat_utils.c:252 +#: statistics/stat_utils.c:260 #, c-format msgid "unrecognized argument name: \"%s\"" msgstr "უცნობი არგუმენტის სახელი: \"%s\"" -#: statistics/stat_utils.c:266 +#: statistics/stat_utils.c:274 #, c-format -msgid "argument \"%s\" has type \"%s\", expected type \"%s\"" -msgstr "არგუმენტს \"%s\" აქვს ტიპი \"%s\". მოველოდი ტიპს \"%s\"" +msgid "argument \"%s\" has type %s, expected type %s" +msgstr "არგუმენტს \"%s\" აქვს ტიპი %s. მოველოდი ტიპს %s" -#: statistics/stat_utils.c:307 +#: statistics/stat_utils.c:315 #, c-format msgid "variadic arguments must be name/value pairs" msgstr "variadic არგუმენტები სახელი/მნიშვნელობის წყვილები უნდა იყოს" -#: statistics/stat_utils.c:308 +#: statistics/stat_utils.c:316 #, c-format msgid "Provide an even number of variadic arguments that can be divided into pairs." msgstr "" -#: statistics/stat_utils.c:322 +#: statistics/stat_utils.c:330 #, c-format -msgid "name at variadic position %d is NULL" -msgstr "სახელი variadic მდებარეობაზე %d NULL-ს უდრის" +msgid "name at variadic position %d is null" +msgstr "სახელი variadic მდებარეობაზე %d ნულოვანია" -#: statistics/stat_utils.c:326 +#: statistics/stat_utils.c:334 #, c-format -msgid "name at variadic position %d has type \"%s\", expected type \"%s\"" +msgid "name at variadic position %d has type %s, expected type %s" msgstr "" -#: storage/aio/aio.c:1340 +#: storage/aio/aio.c:1343 #, c-format msgid "Only -1 or values bigger than 0 are valid." msgstr "" @@ -22936,7 +22921,7 @@ msgid "Consider increasing \"ulimit -n\" to at least %d." msgstr "განიხილეთ 'ulimit -n'-ის გაზრდა მინიმუმ %d-მდე." #: storage/aio/method_io_uring.c:380 -msgid "Kernel does not support io_uring." +msgid "The kernel does not support io_uring." msgstr "ბირთვს io_uring_ის მხარდაჭერა არ გააჩნია." #: storage/aio/method_io_uring.c:388 @@ -22966,8 +22951,8 @@ msgstr "" #: storage/buffer/bufmgr.c:2774 #, c-format -msgid "unexpected data beyond EOF in block %u of relation %s" -msgstr "" +msgid "unexpected data beyond EOF in block %u of relation \"%s\"" +msgstr "მოულოდნელი მონაცემები EOF-ის მიღმა ბლოკში %u ურთიერთობისთვის \"%s\"" #: storage/buffer/bufmgr.c:2777 #, c-format @@ -22986,70 +22971,72 @@ msgstr "ბევრი შეცდომა --- ჩაწერის შე #: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 #, c-format -msgid "writing block %u of relation %s" -msgstr "" +msgid "writing block %u of relation \"%s\"" +msgstr "მიმდინარეობს %u ბლოკის ჩაწერა ურთიერთობისთვის \"%s\"" -#: storage/buffer/bufmgr.c:7313 +#: storage/buffer/bufmgr.c:7317 #, c-format -msgid "zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u of relation %s" -msgstr "" +msgid "zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u of relation \"%s\"" +msgstr "%u გვერდის განულება და %u საკონტროლო ჯამის ჩავარდნა ბლოკების %u..%u გასწვრივ ურთიერთობისთვის \"%s\"" -#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7342 +#: storage/buffer/bufmgr.c:7320 storage/buffer/bufmgr.c:7348 #, c-format -msgid "Block %u held first zeroed page." +msgid "Block %u held the first zeroed page." msgstr "" -#: storage/buffer/bufmgr.c:7318 +#: storage/buffer/bufmgr.c:7322 #, c-format -msgid "See server log for details about the other %d invalid block(s)." -msgstr "სხვა %d ბლოკ(ებ)-ის დეტალების შესახებ ინფორმაციისთვის იხილეთ სერვერის ჟურნალი." +msgid "See server log for details about the other %d invalid block." +msgid_plural "See server log for details about the other %d invalid blocks." +msgstr[0] "სხვა %d ბლოკის დეტალების შესახებ ინფორმაციისთვის იხილეთ სერვერის ჟურნალი." +msgstr[1] "სხვა %d ბლოკის დეტალების შესახებ ინფორმაციისთვის იხილეთ სერვერის ჟურნალი." -#: storage/buffer/bufmgr.c:7333 +#: storage/buffer/bufmgr.c:7339 #, c-format -msgid "%u invalid pages among blocks %u..%u of relation %s" -msgstr "%u არასწორი გვერდი ბლოკების %u..%u გასწვრივ ურთიერთობისთვის %s" +msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "%u არასწორი გვერდი ბლოკების %u..%u გასწვრივ ურთიერთობისთვის \"%s\"" -#: storage/buffer/bufmgr.c:7334 +#: storage/buffer/bufmgr.c:7340 #, c-format -msgid "Block %u held first invalid page." +msgid "Block %u held the first invalid page." msgstr "" -#: storage/buffer/bufmgr.c:7335 +#: storage/buffer/bufmgr.c:7341 #, c-format msgid "See server log for the other %u invalid block(s)." msgstr "დარჩენილი %u არასწორი ბლოკისთვის იხილეთ სერვერის ჟურნალი." -#: storage/buffer/bufmgr.c:7340 +#: storage/buffer/bufmgr.c:7346 #, c-format -msgid "invalid page in block %u of relation %s; zeroing out page" -msgstr "" +msgid "invalid page in block %u of relation \"%s\"; zeroing out page" +msgstr "არასწორი გვერდი ბლოკში %u ურთიერთობისთვის \"%s\". გვერდი განულდება" -#: storage/buffer/bufmgr.c:7341 +#: storage/buffer/bufmgr.c:7347 #, c-format -msgid "zeroing out %u invalid pages among blocks %u..%u of relation %s" -msgstr "მიმდინარეობს %u არასწორი გვერდის განულება ბლოკების %u..%u გასწვრივ ურთიერთობისთვის %s" +msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "მიმდინარეობს %u არასწორი გვერდის განულება ბლოკების %u..%u გასწვრივ ურთიერთობისთვის \"%s\"" -#: storage/buffer/bufmgr.c:7343 +#: storage/buffer/bufmgr.c:7349 #, c-format msgid "See server log for the other %u zeroed block(s)." msgstr "დარჩენილი %u განულებული ბლოკისთვის იხილეთ სერვერის ჟურნალი." -#: storage/buffer/bufmgr.c:7348 +#: storage/buffer/bufmgr.c:7354 #, c-format -msgid "ignoring checksum failure in block %u of relation %s" -msgstr "ურთიერთობის (%2$s) ბლოკის (%1$u) საკონტროლო ჯამის გამოთვლის ჩავარდნა გამოტოვებული იქნება" +msgid "ignoring checksum failure in block %u of relation \"%s\"" +msgstr "საკონტროლო ჯამის ჩავარდნის იგნორი ბლოკში %u ურთიერთობისთვის \"%s\"" -#: storage/buffer/bufmgr.c:7349 +#: storage/buffer/bufmgr.c:7355 #, c-format -msgid "ignoring %u checksum failures among blocks %u..%u of relation %s" -msgstr "გამოტოვებული იქნება %u საკონტროლო ჯამის გამოთვლის ჩავარდნა ბლოკების %u..%u გასწვრივ ურთიერთობისთვის %s" +msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" +msgstr "გამოტოვებული იქნება %u საკონტროლო ჯამის გამოთვლის ჩავარდნა ბლოკების %u..%u გასწვრივ ურთიერთობისთვის \"%s\"" -#: storage/buffer/bufmgr.c:7350 +#: storage/buffer/bufmgr.c:7356 #, c-format -msgid "Block %u held first ignored page." +msgid "Block %u held the first ignored page." msgstr "" -#: storage/buffer/bufmgr.c:7351 +#: storage/buffer/bufmgr.c:7357 #, c-format msgid "See server log for the other %u ignored block(s)." msgstr "დარჩენილი %u გამოტოვებული ბლოკისთვის იხილეთ სერვერის ჟურნალი." @@ -23094,7 +23081,7 @@ msgstr "" msgid "could not delete fileset \"%s\": %m" msgstr "ფაილების სეტის (\"%s\") წაშლის შეცდომა: %m" -#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1318 +#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1321 #, c-format msgid "could not truncate file \"%s\": %m" msgstr "ფაილის (%s) მოკვეთის შეცდომა: %m" @@ -23319,22 +23306,22 @@ msgstr "მეხსიერების გაზიარებული ს msgid "could not duplicate handle for \"%s\": %m" msgstr "\"%s\"-ის დამმუშავებლის დუბლირება შეუძლებელია: %m" -#: storage/ipc/dsm_registry.c:142 +#: storage/ipc/dsm_registry.c:144 #, c-format msgid "DSM segment name cannot be empty" msgstr "DSM სეგმენტის სახელი, ცარიელი, არ შეიძლება იყოს" -#: storage/ipc/dsm_registry.c:146 +#: storage/ipc/dsm_registry.c:148 #, c-format msgid "DSM segment name too long" msgstr "DSM სეგმენტის სახელი მეტისმეტად გრძელია" -#: storage/ipc/dsm_registry.c:150 +#: storage/ipc/dsm_registry.c:152 #, c-format msgid "DSM segment size must be nonzero" msgstr "DSM სეგმენტის ზომა არანულოვანი უნდა იყოს" -#: storage/ipc/dsm_registry.c:176 +#: storage/ipc/dsm_registry.c:168 #, c-format msgid "requested DSM segment size does not match size of existing segment" msgstr "" @@ -23733,12 +23720,12 @@ msgstr "" msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE" msgstr "" -#: storage/lmgr/predicate.c:1827 utils/time/snapmgr.c:556 utils/time/snapmgr.c:562 +#: storage/lmgr/predicate.c:1827 utils/time/snapmgr.c:567 utils/time/snapmgr.c:573 #, c-format msgid "could not import the requested snapshot" msgstr "მოთხოვნილი სწრაფი ასლის შემოტანა შეუძლებელია" -#: storage/lmgr/predicate.c:1828 utils/time/snapmgr.c:563 +#: storage/lmgr/predicate.c:1828 utils/time/snapmgr.c:574 #, c-format msgid "The source process with PID %d is not running anymore." msgstr "საწყისი პროცესი PID-ით %d გაშვებული აღარაა." @@ -23828,12 +23815,12 @@ msgstr "" msgid "could not extend file \"%s\" with FileFallocate(): %m" msgstr "ფაილის (\"%s\") FileFallocate()-ით გაფართოების შეცდომა: %m" -#: storage/smgr/md.c:899 storage/smgr/md.c:2047 +#: storage/smgr/md.c:899 storage/smgr/md.c:2050 #, c-format msgid "could not read blocks %u..%u in file \"%s\": %m" msgstr "ბლოკების %u..%u წაკითხვის შეცდომა ფაილში \"%s\": %m" -#: storage/smgr/md.c:946 storage/smgr/md.c:2060 +#: storage/smgr/md.c:946 storage/smgr/md.c:2063 #, c-format msgid "could not read blocks %u..%u in file \"%s\": read only %zu of %zu bytes" msgstr "ვერ წავიკითხე ბლოკები %u..%u ფაილში \"%s\": წავიკითხე, მხოლოდ, %zu ბაიტი %zu-დან" @@ -23848,37 +23835,37 @@ msgstr "ბლოკების %u..%u წაკითხვის დაწყ msgid "could not write blocks %u..%u in file \"%s\": %m" msgstr "ბლოკის %u..%u ჩაწერის შეცდომა ფაილში \"%s\": %m" -#: storage/smgr/md.c:1289 +#: storage/smgr/md.c:1292 #, c-format msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now" msgstr "" -#: storage/smgr/md.c:1344 +#: storage/smgr/md.c:1347 #, c-format msgid "could not truncate file \"%s\" to %u blocks: %m" msgstr "" -#: storage/smgr/md.c:1832 +#: storage/smgr/md.c:1835 #, c-format msgid "could not open file \"%s\" (target block %u): previous segment is only %u blocks" msgstr "" -#: storage/smgr/md.c:1846 +#: storage/smgr/md.c:1849 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "" -#: storage/smgr/smgr.c:1106 +#: storage/smgr/smgr.c:1115 #, c-format msgid "file \"%s\"" msgstr "ფაილი \"%s\"" -#: storage/smgr/smgr.c:1108 +#: storage/smgr/smgr.c:1117 #, c-format msgid "block %u in file \"%s\"" msgstr "ბლოკი %u ფაილში \"%s\"" -#: storage/smgr/smgr.c:1112 +#: storage/smgr/smgr.c:1121 #, c-format msgid "blocks %u..%u in file \"%s\"" msgstr "ბლოკები %u..%u ფაილში \"%s\"" @@ -24462,6 +24449,11 @@ msgstr "ბრძანების შესრულების წვდო msgid "Only roles with privileges of the \"%s\" role may execute this command." msgstr "ამ ბრძანების შესრულება მხოლოდ \"%s\" როლის პრივილეგიების მქონეებს შეუძლიათ." +#: tcop/utility.c:1886 +#, c-format +msgid "CREATE STATISTICS only supports relation names in the FROM clause" +msgstr "" + #: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:616 #, c-format msgid "multiple DictFile parameters" @@ -24690,7 +24682,7 @@ msgstr "%s დადებითი უნდა იყოს" #: tsearch/wparser_def.c:2682 tsearch/wparser_def.c:2686 #, c-format msgid "%s must be >= 0" -msgstr "" +msgstr "%s უნდა იყოს >= 0" #: utils/activity/pgstat.c:534 #, c-format @@ -24777,7 +24769,7 @@ msgstr "სტატისტიკის დროებითი ფაილ msgid "could not open statistics file \"%s\": %m" msgstr "სტატისტიკის ფაილის (\"%s\") გახსნა შეუძლებელია: %m" -#: utils/activity/pgstat.c:2021 +#: utils/activity/pgstat.c:2032 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "სტატისტიკის დაზიანებული ფაილი \"%s\"" @@ -24787,6 +24779,11 @@ msgstr "სტატისტიკის დაზიანებული ფ msgid "function call to dropped function" msgstr "ფუნქცია წაშლილ ფუნქციას იძახებს" +#: utils/activity/pgstat_shmem.c:536 +#, c-format +msgid "Failed while allocating entry %u/%u/%." +msgstr "" + #: utils/activity/pgstat_xact.c:366 #, c-format msgid "resetting existing statistics for kind %s, db=%u, oid=%" @@ -24913,7 +24910,7 @@ msgid "input data type is not an array" msgstr "შემოტანის მონაცემების ტიპი მასივი არაა" #: utils/adt/array_userfuncs.c:167 utils/adt/array_userfuncs.c:249 utils/adt/float.c:1229 utils/adt/float.c:1303 utils/adt/float.c:4107 utils/adt/float.c:4145 utils/adt/int.c:778 utils/adt/int.c:800 utils/adt/int.c:814 utils/adt/int.c:828 utils/adt/int.c:859 utils/adt/int.c:880 utils/adt/int.c:997 utils/adt/int.c:1011 utils/adt/int.c:1025 utils/adt/int.c:1058 utils/adt/int.c:1072 utils/adt/int.c:1086 utils/adt/int.c:1117 utils/adt/int.c:1199 utils/adt/int.c:1263 -#: utils/adt/int.c:1331 utils/adt/int.c:1337 utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 utils/adt/varlena.c:3184 utils/adt/varlena.c:4118 +#: utils/adt/int.c:1331 utils/adt/int.c:1337 utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 utils/adt/varlena.c:3195 utils/adt/varlena.c:4129 #, c-format msgid "integer out of range" msgstr "მთელი მნიშვნელობა დიაპაზონს გარეთაა" @@ -25530,7 +25527,7 @@ msgstr "%s დიაპაზონს გარეთაა ტიპისთ msgid "\"%s\" is out of range for type double precision" msgstr "%s დიაპაზონს გარეთაა ტიპისთვის: double precision" -#: utils/adt/float.c:1254 utils/adt/float.c:1328 utils/adt/int.c:355 utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 utils/adt/varlena.c:4093 +#: utils/adt/float.c:1254 utils/adt/float.c:1328 utils/adt/int.c:355 utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 utils/adt/varlena.c:4104 #, c-format msgid "smallint out of range" msgstr "smallint დიაპაზონს გარეთაა" @@ -25931,7 +25928,7 @@ msgid "step size cannot equal zero" msgstr "ბიჯის ზომა ნულის ტოლი ვერ იქნება" #: utils/adt/int8.c:448 utils/adt/int8.c:471 utils/adt/int8.c:485 utils/adt/int8.c:499 utils/adt/int8.c:530 utils/adt/int8.c:554 utils/adt/int8.c:636 utils/adt/int8.c:704 utils/adt/int8.c:710 utils/adt/int8.c:736 utils/adt/int8.c:750 utils/adt/int8.c:774 utils/adt/int8.c:787 utils/adt/int8.c:899 utils/adt/int8.c:913 utils/adt/int8.c:927 utils/adt/int8.c:958 utils/adt/int8.c:980 utils/adt/int8.c:994 utils/adt/int8.c:1008 utils/adt/int8.c:1041 utils/adt/int8.c:1055 -#: utils/adt/int8.c:1069 utils/adt/int8.c:1100 utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 utils/adt/varbit.c:1676 utils/adt/varlena.c:4143 +#: utils/adt/int8.c:1069 utils/adt/int8.c:1100 utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 utils/adt/varbit.c:1676 utils/adt/varlena.c:4154 #, c-format msgid "bigint out of range" msgstr "bigint დიაპაზონს გარეთაა" @@ -26524,12 +26521,12 @@ msgstr "" msgid "LIKE pattern must not end with escape character" msgstr "" -#: utils/adt/like_match.c:437 utils/adt/regexp.c:803 +#: utils/adt/like_match.c:437 utils/adt/regexp.c:801 #, c-format msgid "invalid escape string" msgstr "არასწორი სპეციალური სიმბოლო" -#: utils/adt/like_match.c:438 utils/adt/regexp.c:804 +#: utils/adt/like_match.c:438 utils/adt/regexp.c:802 #, c-format msgid "Escape string must be empty or one character." msgstr "" @@ -26896,57 +26893,57 @@ msgstr "მოთხოვნილი სიმბოლო არასწო msgid "percentile value %g is not between 0 and 1" msgstr "" -#: utils/adt/pg_locale.c:304 utils/adt/pg_locale.c:336 +#: utils/adt/pg_locale.c:311 utils/adt/pg_locale.c:343 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "ლოკალის სახელი \"%s\" არა-ASCII სიმბოლოებს შეიცავს" -#: utils/adt/pg_locale.c:1120 +#: utils/adt/pg_locale.c:1127 #, c-format msgid "collation \"%s\" has no actual version, but a version was recorded" msgstr "" -#: utils/adt/pg_locale.c:1126 +#: utils/adt/pg_locale.c:1133 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "კოლაციის ვერსია არ ემთხვევა: %s" -#: utils/adt/pg_locale.c:1128 +#: utils/adt/pg_locale.c:1135 #, c-format msgid "The collation in the database was created using version %s, but the operating system provides version %s." msgstr "" -#: utils/adt/pg_locale.c:1131 +#: utils/adt/pg_locale.c:1138 #, c-format msgid "Rebuild all objects affected by this collation and run ALTER COLLATION %s REFRESH VERSION, or build PostgreSQL with the right library version." msgstr "" -#: utils/adt/pg_locale.c:1484 utils/adt/pg_locale.c:1511 utils/adt/pg_locale_builtin.c:188 +#: utils/adt/pg_locale.c:1498 utils/adt/pg_locale.c:1525 utils/adt/pg_locale_builtin.c:188 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "არასწორი ლოკალის სახელი \"%s\" ჩაშენებული მომწოდებლისთვის" -#: utils/adt/pg_locale.c:1576 +#: utils/adt/pg_locale.c:1590 #, c-format msgid "could not convert locale name \"%s\" to language tag: %s" msgstr "მდებარეობის კოდის \"%s\" ენის ჭდეში (%s) გადაყვანის შეცდომა" -#: utils/adt/pg_locale.c:1585 utils/adt/pg_locale.c:1660 utils/adt/pg_locale_icu.c:215 +#: utils/adt/pg_locale.c:1599 utils/adt/pg_locale.c:1674 utils/adt/pg_locale_icu.c:215 #, c-format msgid "ICU is not supported in this build" msgstr "ამ აგებაში ICU-ის მხარდაჭერა არ არსებბს" -#: utils/adt/pg_locale.c:1618 +#: utils/adt/pg_locale.c:1632 #, c-format msgid "could not get language from ICU locale \"%s\": %s" msgstr "'ICU' ლოკალიდან \"%s\" ენის მიღების შეცდომა: %s" -#: utils/adt/pg_locale.c:1620 utils/adt/pg_locale.c:1650 +#: utils/adt/pg_locale.c:1634 utils/adt/pg_locale.c:1664 #, c-format msgid "To disable ICU locale validation, set the parameter \"%s\" to \"%s\"." msgstr "ICU ლოკალის გადამოწმების გასათიშად პარამეტრი \"%s\" დააყენეთ მნიშვნელობაზე \"%s\"." -#: utils/adt/pg_locale.c:1648 +#: utils/adt/pg_locale.c:1662 #, c-format msgid "ICU locale \"%s\" has unknown language \"%s\"" msgstr "ICU ლოკალს \"%s\" გააჩნია უცნობი ენა \"%s\"" @@ -27156,7 +27153,7 @@ msgstr "ძალიან ბევრი მძიმე." msgid "Junk after right parenthesis or bracket." msgstr "ნაგავი მარჯვენა ფრჩხილის ან მრგვალი ფრჩხილის შემდეგ." -#: utils/adt/regexp.c:304 utils/adt/regexp.c:2022 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4486 #, c-format msgid "regular expression failed: %s" msgstr "რეგულარული გამოსახულების შეცდომა: %s" @@ -27171,28 +27168,28 @@ msgstr "რეგულარული გამოსახულების msgid "If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly." msgstr "" -#: utils/adt/regexp.c:716 utils/adt/regexp.c:725 utils/adt/regexp.c:1108 utils/adt/regexp.c:1172 utils/adt/regexp.c:1181 utils/adt/regexp.c:1190 utils/adt/regexp.c:1199 utils/adt/regexp.c:1879 utils/adt/regexp.c:1888 utils/adt/regexp.c:1897 utils/misc/guc.c:6829 utils/misc/guc.c:6863 +#: utils/adt/regexp.c:716 utils/adt/regexp.c:725 utils/adt/regexp.c:1151 utils/adt/regexp.c:1215 utils/adt/regexp.c:1224 utils/adt/regexp.c:1233 utils/adt/regexp.c:1242 utils/adt/regexp.c:1922 utils/adt/regexp.c:1931 utils/adt/regexp.c:1940 utils/misc/guc.c:6829 utils/misc/guc.c:6863 #, c-format msgid "invalid value for parameter \"%s\": %d" msgstr "არასწორი მნიშვნელობა პარამეტრისთვის \"%s\": %d" -#: utils/adt/regexp.c:939 +#: utils/adt/regexp.c:948 #, c-format msgid "SQL regular expression may not contain more than two escape-double-quote separators" msgstr "" #. translator: %s is a SQL function name -#: utils/adt/regexp.c:1119 utils/adt/regexp.c:1210 utils/adt/regexp.c:1297 utils/adt/regexp.c:1336 utils/adt/regexp.c:1724 utils/adt/regexp.c:1779 utils/adt/regexp.c:1908 +#: utils/adt/regexp.c:1162 utils/adt/regexp.c:1253 utils/adt/regexp.c:1340 utils/adt/regexp.c:1379 utils/adt/regexp.c:1767 utils/adt/regexp.c:1822 utils/adt/regexp.c:1951 #, c-format msgid "%s does not support the \"global\" option" msgstr "%s-ს პარამეტრის \"global\" მხარდაჭერა არ გააჩნია" -#: utils/adt/regexp.c:1338 +#: utils/adt/regexp.c:1381 #, c-format msgid "Use the regexp_matches function instead." msgstr "სამაგიეროდ ფუნქცია regexp_matches გამოიყენეთ." -#: utils/adt/regexp.c:1526 +#: utils/adt/regexp.c:1569 #, c-format msgid "too many regular expression matches" msgstr "რეგულარული გამოსახულების ძალიან ბევრი დამთხვევა" @@ -27217,7 +27214,7 @@ msgstr "მეტისმეტად ბევრი არგუმენტ msgid "Provide two argument types for operator." msgstr "ოპერატორისთვის ორი არგუმენტის ტიპი მიაწოდეთ." -#: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 utils/adt/regproc.c:1815 utils/adt/varlena.c:3481 utils/adt/varlena.c:3486 +#: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 utils/adt/regproc.c:1815 utils/adt/varlena.c:3492 utils/adt/varlena.c:3497 #, c-format msgid "invalid name syntax" msgstr "სახელის არასწორი სინტაქსი" @@ -27425,7 +27422,7 @@ msgstr "" #: utils/adt/tid.c:369 #, c-format msgid "the view has no rules" -msgstr "" +msgstr "ხედს წესები არ აქვს" #: utils/adt/tid.c:381 #, c-format @@ -27450,7 +27447,7 @@ msgstr "დროის შტამპი დიაპაზონს გარ #: utils/adt/timestamp.c:396 #, c-format msgid "timestamp(%d) precision must be between %d and %d" -msgstr "" +msgstr "timestamp(%d)-ის სიზუსტე უნდა იყოს შუალედიდან %d - %d" #: utils/adt/timestamp.c:514 #, c-format @@ -27753,7 +27750,7 @@ msgstr "გარე ბიტური სტრიქონის არას msgid "bit string too long for type bit varying(%d)" msgstr "" -#: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3102 utils/adt/varlena.c:3180 +#: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3113 utils/adt/varlena.c:3191 #, c-format msgid "negative substring length not allowed" msgstr "ქვესტრიქონის სიგრძე უარყოფითი არ შეიძლება იყოს" @@ -27778,7 +27775,7 @@ msgstr "განსხვავებული სიგრძის სტრ msgid "bit index %d out of valid range (0..%d)" msgstr "" -#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3395 #, c-format msgid "new bit must be 0 or 1" msgstr "ახალი ბიტი უნდა იყოს 0 ან 1" @@ -27793,92 +27790,92 @@ msgstr "მნიშვნელობა სიმბოლოს ტიპი msgid "value too long for type character varying(%d)" msgstr "" -#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1602 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "" -#: utils/adt/varlena.c:1864 +#: utils/adt/varlena.c:1875 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "" -#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 +#: utils/adt/varlena.c:3279 utils/adt/varlena.c:3346 #, c-format msgid "index %d out of valid range, 0..%d" msgstr "ინდექსი %d დასაშვებ დიაპაზონს (0..%d) გარეთაა" -#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#: utils/adt/varlena.c:3310 utils/adt/varlena.c:3382 #, c-format msgid "index % out of valid range, 0..%" msgstr "ინდექსი % დასაშვებ დიაპაზონს (0..%) გარეთაა" -#: utils/adt/varlena.c:4587 +#: utils/adt/varlena.c:4598 #, c-format msgid "field position must not be zero" msgstr "ველის მდებარეობა ნულოვანი ვერ იქნება" -#: utils/adt/varlena.c:5832 +#: utils/adt/varlena.c:5843 #, c-format msgid "unterminated format() type specifier" msgstr "" -#: utils/adt/varlena.c:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 +#: utils/adt/varlena.c:5844 utils/adt/varlena.c:5978 utils/adt/varlena.c:6099 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "ერთი \"%%\"-სთვის გამოიყენეთ \"%%%%\"." -#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 +#: utils/adt/varlena.c:5976 utils/adt/varlena.c:6097 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "" -#: utils/adt/varlena.c:5978 utils/adt/varlena.c:6035 +#: utils/adt/varlena.c:5989 utils/adt/varlena.c:6046 #, c-format msgid "too few arguments for format()" msgstr "format()-ის არგუმენტები საკმარისი არაა" -#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 +#: utils/adt/varlena.c:6142 utils/adt/varlena.c:6324 #, c-format msgid "number is out of range" msgstr "რიცხვი დიაპაზონს გარეთაა" -#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 +#: utils/adt/varlena.c:6205 utils/adt/varlena.c:6233 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "" -#: utils/adt/varlena.c:6215 +#: utils/adt/varlena.c:6226 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "" -#: utils/adt/varlena.c:6260 +#: utils/adt/varlena.c:6271 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "" -#: utils/adt/varlena.c:6468 +#: utils/adt/varlena.c:6479 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "" -#: utils/adt/varlena.c:6481 +#: utils/adt/varlena.c:6492 #, c-format msgid "invalid normalization form: %s" msgstr "ნორმალიზაციის არასწორი ფორმა: %s" -#: utils/adt/varlena.c:6526 +#: utils/adt/varlena.c:6537 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "" -#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 +#: utils/adt/varlena.c:6754 utils/adt/varlena.c:6789 utils/adt/varlena.c:6824 #, c-format msgid "invalid Unicode code point: %04X" msgstr "უნიკოდის კოდის არასწორი წერტილი: %04X" -#: utils/adt/varlena.c:6843 +#: utils/adt/varlena.c:6854 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "" @@ -27936,12 +27933,12 @@ msgstr "xml-ის დამუშავების არასწორი #: utils/adt/xml.c:1021 #, c-format msgid "XML processing instruction target name cannot be \"%s\"." -msgstr "" +msgstr "XML-ის დამუშავების ინსტრუქციის სამიზნე არ შეიძლება, იყოს \"%s\"." #: utils/adt/xml.c:1044 #, c-format msgid "XML processing instruction cannot contain \"?>\"." -msgstr "" +msgstr "XML-ის დამუშავების ინსტრუქცია არ შეიძლება, შეიცავდეს სიმბოლოს \"?>\"." #: utils/adt/xml.c:1123 #, c-format @@ -27990,7 +27987,7 @@ msgstr "ტექსტის აღწერაში კოდირება #: utils/adt/xml.c:2298 msgid "Parsing XML declaration: '?>' expected." -msgstr "" +msgstr "XML-ის აღწერის დამუშავება: მოველოდი '?>'." #: utils/adt/xml.c:2301 #, c-format @@ -28246,78 +28243,78 @@ msgstr "ფატალური" msgid "PANIC" msgstr "პანიკა" -#: utils/fmgr/dfmgr.c:126 +#: utils/fmgr/dfmgr.c:133 #, c-format msgid "could not find function \"%s\" in file \"%s\"" msgstr "ფაილში \"%1$s\" ფუნქცია \"%2$s\" არ არსებობს" -#: utils/fmgr/dfmgr.c:245 +#: utils/fmgr/dfmgr.c:252 #, c-format msgid "could not load library \"%s\": %s" msgstr "ბიბლიოთეკის (\"%s\") ჩატვირთვის შეცდომა: %s" -#: utils/fmgr/dfmgr.c:282 +#: utils/fmgr/dfmgr.c:289 #, c-format msgid "incompatible library \"%s\": missing magic block" msgstr "არათავსებადი ბიბლიოთეკა \"%s\": მაგიური ბლოკი აღმოჩენილი არაა" -#: utils/fmgr/dfmgr.c:284 +#: utils/fmgr/dfmgr.c:291 #, c-format msgid "Extension libraries are required to use the PG_MODULE_MAGIC macro." msgstr "გაფართოების ბიბლიოთეკების მიერ PG_MODULE_MAGIC მაკროს გამოყენება აუცილებელია." -#: utils/fmgr/dfmgr.c:330 +#: utils/fmgr/dfmgr.c:337 #, c-format msgid "incompatible library \"%s\": version mismatch" msgstr "არათავსებადი ბიბლიოთეკა \"%s\": შეუსაბამო ვერსია" -#: utils/fmgr/dfmgr.c:332 +#: utils/fmgr/dfmgr.c:339 #, c-format msgid "Server is version %d, library is version %s." msgstr "სერვერის ვერსიაა %d. ბიბლიოთეკის კი %s." -#: utils/fmgr/dfmgr.c:344 +#: utils/fmgr/dfmgr.c:351 #, c-format msgid "incompatible library \"%s\": ABI mismatch" msgstr "არათავსებადი ბიბლიოთეკა \"%s\": ABI არ ემთხვევა" -#: utils/fmgr/dfmgr.c:346 +#: utils/fmgr/dfmgr.c:353 #, c-format msgid "Server has ABI \"%s\", library has \"%s\"." msgstr "სერვერის ABI \"%s\"-ა, ბიბლიოთეკის კი \"%s\"." #. translator: %s is a variable name and %d its values -#: utils/fmgr/dfmgr.c:365 utils/fmgr/dfmgr.c:375 utils/fmgr/dfmgr.c:385 +#: utils/fmgr/dfmgr.c:372 utils/fmgr/dfmgr.c:382 utils/fmgr/dfmgr.c:392 #, c-format msgid "Server has %s = %d, library has %d." msgstr "სერვერს აქვს %s = %d, ბიბლიოთეკას აქვს %d." #. translator: %s is a variable name and %d its values -#: utils/fmgr/dfmgr.c:395 +#: utils/fmgr/dfmgr.c:402 #, c-format msgid "Server has %s = %s, library has %s." msgstr "სერვერს აქვს %s = %s, ბიბლიოთეკას აქვს %s." -#: utils/fmgr/dfmgr.c:402 +#: utils/fmgr/dfmgr.c:409 msgid "Magic block has unexpected length or padding difference." msgstr "" -#: utils/fmgr/dfmgr.c:405 +#: utils/fmgr/dfmgr.c:412 #, c-format msgid "incompatible library \"%s\": magic block mismatch" msgstr "არათავსებადი ბიბლიოთეკა \"%s\": მაგიური ბლოკი არ ემთხვევა" -#: utils/fmgr/dfmgr.c:520 +#: utils/fmgr/dfmgr.c:527 #, c-format msgid "access to library \"%s\" is not allowed" msgstr "წვდომა ბიბლიოთეკასთან \"%s\"" -#: utils/fmgr/dfmgr.c:547 +#: utils/fmgr/dfmgr.c:554 #, c-format msgid "invalid macro name in path: %s" msgstr "მაკროს არასწორი სახელი ბილიკში: %s" -#: utils/fmgr/dfmgr.c:599 +#: utils/fmgr/dfmgr.c:606 #, c-format msgid "zero-length component in parameter \"%s\"" msgstr "ნულოვანი სიგრძის კომპონენტი პარამეტრში \"%s\"" @@ -29453,7 +29450,7 @@ msgstr "" #: utils/misc/guc_tables.c:1118 msgid "Give priority to server ciphersuite order." -msgstr "" +msgstr "პრიორიტეტის მინიჭება სერვერის შიფრების მიმდევრობისთვის." #: utils/misc/guc_tables.c:1127 msgid "Forces synchronization of updates to disk." @@ -30657,7 +30654,7 @@ msgstr "" #: utils/misc/guc_tables.c:3809 msgid "0 means use normal caching behavior." -msgstr "" +msgstr "0 ნიშნავს ნორმალური კეშინგის ქცევის გამოყენებას." #: utils/misc/guc_tables.c:3831 msgid "Sets the time interval between checks for disconnection while running queries." @@ -30673,7 +30670,7 @@ msgstr "" #: utils/misc/guc_tables.c:3844 msgid "0 disables progress updates." -msgstr "" +msgstr "0 გათიშავს მიმდევრობის განახლებებს." #: utils/misc/guc_tables.c:3854 msgid "Sets the iteration count for SCRAM secret generation." @@ -30881,7 +30878,7 @@ msgstr "ჟურნალის თითოეული ჩანაწერ #: utils/misc/guc_tables.c:4304 msgid "An empty string means no prefix." -msgstr "" +msgstr "ცარიელი სტრიქონი ნიშნავს პრეფიქსის არქონას." #: utils/misc/guc_tables.c:4313 msgid "Sets the time zone to use in log messages." @@ -30945,7 +30942,7 @@ msgstr "Bonjour-ის სერვისის სახელის დაყ #: utils/misc/guc_tables.c:4418 msgid "An empty string means use the computer name." -msgstr "" +msgstr "ცარიელი სტრიქონი ნიშნავს კომპიუტერის სახელის გამოყენებას." #: utils/misc/guc_tables.c:4427 msgid "Sets the language in which messages are displayed." @@ -30953,7 +30950,7 @@ msgstr "შეტყობინებების საჩვენებე #: utils/misc/guc_tables.c:4428 utils/misc/guc_tables.c:4438 utils/misc/guc_tables.c:4448 utils/misc/guc_tables.c:4458 msgid "An empty string means use the operating system setting." -msgstr "" +msgstr "ცარიელი სტრიქონი ნიშნავს ოპერაციული სისტემის პარამეტრის გამოყენებას." #: utils/misc/guc_tables.c:4437 msgid "Sets the locale for formatting monetary amounts." @@ -31301,7 +31298,7 @@ msgstr "" #: utils/misc/guc_tables.c:5259 msgid "Selects the file copy method." -msgstr "" +msgstr "ირჩევს ფაილის კოპირების მეთოდს." #: utils/misc/guc_tables.c:5269 msgid "Selects the method used for forcing WAL updates to disk." @@ -31500,12 +31497,12 @@ msgstr "შეცდომა მეხსიერების კონტე msgid "could not attach to dynamic shared area" msgstr "დინამიური გაზიარებული მეხსიერების მიმაგრების შეცდომა" -#: utils/mmgr/mcxt.c:1160 +#: utils/mmgr/mcxt.c:1163 #, c-format msgid "Failed on request of size %zu in memory context \"%s\"." msgstr "%zu ზომის მეხსიერების კონტექსტიდან \"%s\" გამოთხოვა ჩავარდა." -#: utils/mmgr/mcxt.c:1304 +#: utils/mmgr/mcxt.c:1319 #, c-format msgid "logging memory contexts of PID %d" msgstr "პროცესის, PID-ით %d მეხსიერების კონტექსტები ჟურნალში ჩაიწერება" @@ -31585,52 +31582,52 @@ msgstr "არსებობს დუბლიკატი გასაღე msgid "could not seek in tuplestore temporary file" msgstr "კორტეჟების საცავი დროებითი ფაილის გადახვევა შეუძლებელია" -#: utils/time/snapmgr.c:557 +#: utils/time/snapmgr.c:568 #, c-format msgid "The source transaction is not running anymore." msgstr "საწყისი ტრანზაქცია გაშვებული აღარაა." -#: utils/time/snapmgr.c:1143 +#: utils/time/snapmgr.c:1154 #, c-format msgid "cannot export a snapshot from a subtransaction" msgstr "ქვეტრანზაქციიდან სწრაფი ასლის გამოტანა შეუძლებელია" -#: utils/time/snapmgr.c:1303 utils/time/snapmgr.c:1308 utils/time/snapmgr.c:1313 utils/time/snapmgr.c:1328 utils/time/snapmgr.c:1333 utils/time/snapmgr.c:1338 utils/time/snapmgr.c:1353 utils/time/snapmgr.c:1358 utils/time/snapmgr.c:1363 utils/time/snapmgr.c:1477 utils/time/snapmgr.c:1493 utils/time/snapmgr.c:1518 +#: utils/time/snapmgr.c:1314 utils/time/snapmgr.c:1319 utils/time/snapmgr.c:1324 utils/time/snapmgr.c:1339 utils/time/snapmgr.c:1344 utils/time/snapmgr.c:1349 utils/time/snapmgr.c:1364 utils/time/snapmgr.c:1369 utils/time/snapmgr.c:1374 utils/time/snapmgr.c:1488 utils/time/snapmgr.c:1504 utils/time/snapmgr.c:1529 #, c-format msgid "invalid snapshot data in file \"%s\"" msgstr "სწრაფი ასლის არასწორი მონაცემები ფაილში \"%s\"" -#: utils/time/snapmgr.c:1400 +#: utils/time/snapmgr.c:1411 #, c-format msgid "SET TRANSACTION SNAPSHOT must be called before any query" msgstr "SET TRANSACTION SNAPSHOT ყველა მოთხოვნაზე ადრე უნდა გამოიძახოთ" -#: utils/time/snapmgr.c:1409 +#: utils/time/snapmgr.c:1420 #, c-format msgid "a snapshot-importing transaction must have isolation level SERIALIZABLE or REPEATABLE READ" msgstr "" -#: utils/time/snapmgr.c:1418 +#: utils/time/snapmgr.c:1429 #, c-format msgid "invalid snapshot identifier: \"%s\"" msgstr "სწრაფი ასლის არასწორი იდენტიფიკატორი: \"%s\"" -#: utils/time/snapmgr.c:1433 +#: utils/time/snapmgr.c:1444 #, c-format msgid "snapshot \"%s\" does not exist" msgstr "სწრაფი ასლი \"%s\" არ არსებობს" -#: utils/time/snapmgr.c:1531 +#: utils/time/snapmgr.c:1542 #, c-format msgid "a serializable transaction cannot import a snapshot from a non-serializable transaction" msgstr "" -#: utils/time/snapmgr.c:1535 +#: utils/time/snapmgr.c:1546 #, c-format msgid "a non-read-only serializable transaction cannot import a snapshot from a read-only transaction" msgstr "" -#: utils/time/snapmgr.c:1550 +#: utils/time/snapmgr.c:1561 #, c-format msgid "cannot import a snapshot from a different database" msgstr "სხვა ბაზიდან სწრაფი ასლის შემოტანა შეუძლებელია" @@ -31639,10 +31636,22 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid " GSS (authenticated=%s, encrypted=%s)" #~ msgstr " GSS (ავთენტიფიცირებული=%s, დაშიფრული=%s)" +#, c-format +#~ msgid "\"%s\" array cannot contain NULL values" +#~ msgstr "\"%s\" მასივი, არ შეიძლება, NULL მნიშვნელობებს შეიცავდეს" + +#, c-format +#~ msgid "\"%s\" cannot be NULL" +#~ msgstr "\"%s\" არ შეიძლება, NULL იყოს" + #, c-format #~ msgid "\"%s\" is not a partition" #~ msgstr "\"%s\" დანაყოფი არაა" +#, c-format +#~ msgid "\"%s\" is not a physical replication slot." +#~ msgstr "\"%s\" ფიზიკური რეპლიკაციის სლოტი არაა." + #, c-format #~ msgid "\"%s\" must be set to -1 during binary upgrade mode." #~ msgstr "ბინარული განახლების რეჟიმისას \"%s\"-ის მნიშვნელობა -1-ზე უნდა დააყენოთ." @@ -31826,6 +31835,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "EXPLAIN option TIMING requires ANALYZE" #~ msgstr "EXPLAIN -ის პარამეტრ TIMING-ს ANALYZE სჭირდება" +#, c-format +#~ msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" +#~ msgstr "EXPLAIN-ის პარამეტრები ANALYZE და GENERIC_PLAN ერთად არ შეიძლება, გამოიყენოთ" + #~ msgid "Enables logging of recovery-related debugging information." #~ msgstr "აღდგენასთან კავშირში მყოფი გამართვის ინფორმაციის ჟურნალში ჩაწერის ჩართვა." @@ -31930,6 +31943,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "Recursive descent parser cannot use incremental lexer" #~ msgstr "რეკურსიულ დაღმავალ დამმუშავებელს ინკრემენტული lexer-ის გამოყენება არ შეუძლია" +#, c-format +#~ msgid "Replication slot \"%s\" does not exist." +#~ msgstr "რეპლიკაციის სლოტი \"%s\" არ არსებობს." + #~ msgid "Resource Usage / Asynchronous Behavior" #~ msgstr "რესურსების გამოყენება / ასინქრონული ქცევა" @@ -32060,6 +32077,14 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "argument %d cannot be null" #~ msgstr "არგუმენტი %d ნულოვანი ვერ იქნება" +#, c-format +#~ msgid "attribute \"%s\" is not a range type" +#~ msgstr "ატრიბუტი \"%s\" შუალედის ტიპი არაა" + +#, c-format +#~ msgid "attribute %d of relation \"%s\" does not exist" +#~ msgstr "ატრიბუტი %d ურთიერთობისთვის \"%s\" არ არსებობს" + #, c-format #~ msgid "authentication file token too long, skipping: \"%s\"" #~ msgstr "ავთენტიკაციის ფაილის კოდი ძალიან გრძელია. გამოტოვება: \"%s\"" @@ -32135,6 +32160,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "cannot specify HEADER in BINARY mode" #~ msgstr "რეჟიმში BINARY \"HEADER\"-ს ვერ მიუთითებთ" +#, c-format +#~ msgid "cannot specify both attname and attnum" +#~ msgstr "ორივეს attname და attnum ვერ მიუთითებთ" + #, c-format #~ msgid "cannot start subtransactions during a parallel operation" #~ msgstr "პარალელური ოპერაციის დროს ქვეტრანსაქციების დაწყება შეუძლებელია" @@ -32143,6 +32172,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "cannot subtract infinite timestamps" #~ msgstr "უსასრულო დროის შტამპების გამოკლება შეუძლებელია" +#, c-format +#~ msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" +#~ msgstr "'IN SCHEMA' პირობის გამოყენება GRANT/REVOKE ON LARGE OBJECT-ის გამოყენებისას შეუძლებელია" + #, c-format #~ msgid "cannot use RETURNING type %s in %s" #~ msgstr "'RETURNING'-ის ტიპს '%s' %s-ში ვერ გამოიყენებთ" @@ -32557,6 +32590,14 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "record length %u at %X/%X too long" #~ msgstr "ჩანაწერის სიგრძე %u მისამართზე %X/%X ძალიან გრძელია" +#, c-format +#~ msgid "reltuples cannot be < -1.0" +#~ msgstr "reltuples ვერ იქნება < -1.0" + +#, c-format +#~ msgid "replication origin \"%s\" already exists" +#~ msgstr "რეპლიკაციის წყარო \"%s\" უკვე არსებობს" + #~ msgid "server process" #~ msgstr "სერვერის პროცესი" @@ -32631,6 +32672,38 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "unlinked permanent statistics file \"%s\"" #~ msgstr "სტატისტიკის მუდმივი ფაილი მოხსნილია: %s" +#, c-format +#~ msgid "unrecognized ANALYZE option \"%s\"" +#~ msgstr "\"ANALYZE\"-ის უცნობი პარამეტრი: %s" + +#, c-format +#~ msgid "unrecognized CLUSTER option \"%s\"" +#~ msgstr "\"CLUSTER\"-ის უცნობი პარამეტრი \"%s\"" + +#, c-format +#~ msgid "unrecognized DROP DATABASE option \"%s\"" +#~ msgstr "\"DROP DATABASE\"-ის უცნობი პარამეტრი \"%s\"" + +#, c-format +#~ msgid "unrecognized EXPLAIN option \"%s\"" +#~ msgstr "\"EXPLAIN\"-ის უცნობი პარამეტრი \"%s\"" + +#, c-format +#~ msgid "unrecognized REINDEX option \"%s\"" +#~ msgstr "\"REINDEX\"-ის უცნობი პარამეტრი \"%s\"" + +#, c-format +#~ msgid "unrecognized VACUUM option \"%s\"" +#~ msgstr "\"VACUUM\"-ის უცნობი პარამეტრი: %s" + +#, c-format +#~ msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" +#~ msgstr "უცნობი მნიშვნელობა CREATE_REPLICATION_SLOT-ის პარამეტრისთვის \"%s\": \"%s\"" + +#, c-format +#~ msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" +#~ msgstr "\"EXPLAIN\"-ის უცნობი პარამეტრი \"%s\": \"%s\"" + #, c-format #~ msgid "upper bound of partition \"%s\" is greater than upper bound of split partition" #~ msgstr "ზედა ზღვარი დანაყოფისთვის \"%s\" დაყოფილი დანაყოფის ზედა საზღვარზე მეტია" diff --git a/src/backend/po/ru.po b/src/backend/po/ru.po index f0be745c440..58c13a0d2a0 100644 --- a/src/backend/po/ru.po +++ b/src/backend/po/ru.po @@ -4,14 +4,14 @@ # Serguei A. Mokhov , 2001-2005. # Oleg Bartunov , 2004-2005. # Dmitriy Olshevskiy , 2014. -# SPDX-FileCopyrightText: 2012-2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2012-2025, 2026 Alexander Lakhin # Maxim Yablokov , 2021, 2022, 2024. msgid "" msgstr "" "Project-Id-Version: postgres (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-09 06:28+0200\n" -"PO-Revision-Date: 2025-11-09 08:27+0200\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 10:42+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -96,15 +96,15 @@ msgstr "не удалось открыть файл \"%s\" для чтения: #: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 #: access/transam/timeline.c:143 access/transam/timeline.c:362 -#: access/transam/twophase.c:1353 access/transam/xlog.c:3479 -#: access/transam/xlog.c:4370 access/transam/xlogrecovery.c:1247 -#: access/transam/xlogrecovery.c:1345 access/transam/xlogrecovery.c:1382 -#: access/transam/xlogrecovery.c:1449 backup/basebackup.c:2128 +#: access/transam/twophase.c:1353 access/transam/xlog.c:3478 +#: access/transam/xlog.c:4369 access/transam/xlogrecovery.c:1257 +#: access/transam/xlogrecovery.c:1355 access/transam/xlogrecovery.c:1392 +#: access/transam/xlogrecovery.c:1459 backup/basebackup.c:2128 #: backup/walsummary.c:283 commands/extension.c:3841 libpq/hba.c:769 #: replication/logical/origin.c:768 replication/logical/origin.c:804 #: replication/logical/reorderbuffer.c:5366 -#: replication/logical/snapbuild.c:1951 replication/slot.c:2505 -#: replication/slot.c:2546 replication/walsender.c:643 +#: replication/logical/snapbuild.c:1951 replication/slot.c:2546 +#: replication/slot.c:2587 replication/walsender.c:643 #: storage/file/buffile.c:470 storage/file/copydir.c:201 #: utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 #, c-format @@ -112,10 +112,10 @@ msgid "could not read file \"%s\": %m" msgstr "не удалось прочитать файл \"%s\": %m" #: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 -#: access/transam/xlog.c:3484 access/transam/xlog.c:4375 +#: access/transam/xlog.c:3483 access/transam/xlog.c:4374 #: replication/logical/origin.c:773 replication/logical/origin.c:812 -#: replication/logical/snapbuild.c:1956 replication/slot.c:2509 -#: replication/slot.c:2550 replication/walsender.c:648 +#: replication/logical/snapbuild.c:1956 replication/slot.c:2550 +#: replication/slot.c:2591 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -126,18 +126,18 @@ msgstr "не удалось прочитать файл \"%s\" (прочитан #: access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 #: access/transam/timeline.c:392 access/transam/timeline.c:438 #: access/transam/timeline.c:512 access/transam/twophase.c:1365 -#: access/transam/twophase.c:1783 access/transam/xlog.c:3325 -#: access/transam/xlog.c:3519 access/transam/xlog.c:3524 -#: access/transam/xlog.c:3660 access/transam/xlog.c:4340 -#: access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 +#: access/transam/twophase.c:1783 access/transam/xlog.c:3324 +#: access/transam/xlog.c:3518 access/transam/xlog.c:3523 +#: access/transam/xlog.c:3659 access/transam/xlog.c:4339 +#: access/transam/xlog.c:5311 commands/copyfrom.c:1929 commands/copyto.c:598 #: libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 #: replication/logical/origin.c:706 replication/logical/origin.c:845 #: replication/logical/reorderbuffer.c:5418 #: replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 -#: replication/slot.c:2391 replication/slot.c:2557 replication/walsender.c:658 +#: replication/slot.c:2432 replication/slot.c:2598 replication/walsender.c:658 #: storage/file/copydir.c:224 storage/file/copydir.c:229 -#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:825 -#: storage/file/fd.c:3815 storage/file/fd.c:3921 utils/cache/relmapper.c:841 +#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:828 +#: storage/file/fd.c:3818 storage/file/fd.c:3924 utils/cache/relmapper.c:841 #: utils/cache/relmapper.c:956 #, c-format msgid "could not close file \"%s\": %m" @@ -166,10 +166,10 @@ msgstr "" #: ../common/file_utils.c:428 ../common/file_utils.c:502 #: access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 #: access/transam/timeline.c:251 access/transam/timeline.c:348 -#: access/transam/twophase.c:1309 access/transam/xlog.c:3215 -#: access/transam/xlog.c:3395 access/transam/xlog.c:3434 -#: access/transam/xlog.c:3627 access/transam/xlog.c:4360 -#: access/transam/xlogrecovery.c:4297 access/transam/xlogrecovery.c:4398 +#: access/transam/twophase.c:1309 access/transam/xlog.c:3214 +#: access/transam/xlog.c:3394 access/transam/xlog.c:3433 +#: access/transam/xlog.c:3626 access/transam/xlog.c:4359 +#: access/transam/xlogrecovery.c:4307 access/transam/xlogrecovery.c:4408 #: access/transam/xlogutils.c:825 backup/basebackup.c:549 #: backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 #: postmaster/syslogger.c:1512 replication/logical/origin.c:758 @@ -177,10 +177,10 @@ msgstr "" #: replication/logical/reorderbuffer.c:4573 #: replication/logical/reorderbuffer.c:5346 #: replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 -#: replication/slot.c:2477 replication/walsender.c:616 +#: replication/slot.c:2518 replication/walsender.c:616 #: replication/walsender.c:3094 storage/file/copydir.c:167 -#: storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 -#: storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 +#: storage/file/copydir.c:255 storage/file/fd.c:803 storage/file/fd.c:3575 +#: storage/file/fd.c:3805 storage/file/fd.c:3895 storage/smgr/md.c:686 #: utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 #: utils/error/elog.c:2132 utils/init/miscinit.c:1586 #: utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 @@ -191,7 +191,7 @@ msgstr "не удалось открыть файл \"%s\": %m" #: ../common/controldata_utils.c:246 ../common/controldata_utils.c:249 #: access/transam/twophase.c:1756 access/transam/twophase.c:1765 -#: access/transam/xlog.c:9338 access/transam/xlogfuncs.c:699 +#: access/transam/xlog.c:9340 access/transam/xlogfuncs.c:699 #: backup/basebackup_server.c:173 backup/basebackup_server.c:266 #: backup/walsummary.c:304 postmaster/postmaster.c:4105 #: postmaster/syslogger.c:1523 postmaster/syslogger.c:1536 @@ -205,12 +205,12 @@ msgstr "не удалось записать файл \"%s\": %m" #: access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 #: access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 #: access/transam/timeline.c:506 access/transam/twophase.c:1777 -#: access/transam/xlog.c:3315 access/transam/xlog.c:3513 -#: access/transam/xlog.c:4333 access/transam/xlog.c:8724 -#: access/transam/xlog.c:8768 backup/basebackup_server.c:207 +#: access/transam/xlog.c:3314 access/transam/xlog.c:3512 +#: access/transam/xlog.c:4332 access/transam/xlog.c:8726 +#: access/transam/xlog.c:8770 backup/basebackup_server.c:207 #: commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 -#: replication/slot.c:2375 replication/slot.c:2487 storage/file/fd.c:817 -#: storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 +#: replication/slot.c:2416 replication/slot.c:2528 storage/file/fd.c:820 +#: storage/file/fd.c:3916 storage/smgr/md.c:1469 storage/smgr/md.c:1529 #: storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" @@ -229,10 +229,10 @@ msgstr "не удалось синхронизировать с ФС файл \" #: libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 #: postmaster/bgworker.c:1023 postmaster/postmaster.c:3575 #: postmaster/walsummarizer.c:938 -#: replication/libpqwalreceiver/libpqwalreceiver.c:351 +#: replication/libpqwalreceiver/libpqwalreceiver.c:364 #: replication/logical/logical.c:212 replication/walsender.c:825 -#: storage/buffer/localbuf.c:745 storage/file/fd.c:909 storage/file/fd.c:1444 -#: storage/file/fd.c:1605 storage/file/fd.c:2589 storage/ipc/procarray.c:1465 +#: storage/buffer/localbuf.c:745 storage/file/fd.c:912 storage/file/fd.c:1447 +#: storage/file/fd.c:1608 storage/file/fd.c:2592 storage/ipc/procarray.c:1465 #: storage/ipc/procarray.c:2217 storage/ipc/procarray.c:2224 #: storage/ipc/procarray.c:2727 storage/ipc/procarray.c:3436 #: utils/activity/pgstat_shmem.c:535 utils/adt/pg_locale.c:517 @@ -245,7 +245,7 @@ msgstr "не удалось синхронизировать с ФС файл \" #: utils/misc/guc.c:672 utils/misc/guc.c:1060 utils/misc/guc.c:4505 #: utils/misc/tzparser.c:479 utils/mmgr/aset.c:451 utils/mmgr/bump.c:183 #: utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 utils/mmgr/dsa.c:810 -#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1159 utils/mmgr/slab.c:370 +#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1162 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "нехватка памяти" @@ -323,7 +323,7 @@ msgstr "нехватка памяти\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "попытка дублирования нулевого указателя (внутренняя ошибка)\n" -#: ../common/file_utils.c:75 storage/file/fd.c:3578 +#: ../common/file_utils.c:75 storage/file/fd.c:3581 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не удалось синхронизировать с ФС файл \"%s\": %m" @@ -332,11 +332,11 @@ msgstr "не удалось синхронизировать с ФС файл \" #: ../common/file_utils.c:592 access/transam/twophase.c:1321 #: access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:235 #: backup/basebackup.c:357 backup/basebackup.c:555 backup/basebackup.c:626 -#: backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1889 -#: commands/copyto.c:979 commands/extension.c:3820 commands/tablespace.c:804 +#: backup/walsummary.c:247 commands/copyfrom.c:1889 commands/copyto.c:979 +#: commands/extension.c:3820 commands/tablespace.c:804 #: commands/tablespace.c:893 postmaster/pgarch.c:682 #: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 -#: storage/file/fd.c:1969 storage/file/fd.c:2057 storage/file/fd.c:3626 +#: storage/file/fd.c:1972 storage/file/fd.c:2060 storage/file/fd.c:3629 #: utils/adt/dbsize.c:105 utils/adt/dbsize.c:266 utils/adt/dbsize.c:355 #: utils/adt/genfile.c:437 utils/adt/genfile.c:612 utils/adt/misc.c:340 #, c-format @@ -351,22 +351,22 @@ msgstr "эта сборка программы не поддерживает м #: ../common/file_utils.c:156 ../common/file_utils.c:304 #: ../common/pgfnames.c:48 ../common/rmtree.c:63 commands/tablespace.c:728 #: commands/tablespace.c:738 postmaster/postmaster.c:1496 -#: storage/file/fd.c:2994 storage/file/reinit.c:126 utils/adt/misc.c:256 +#: storage/file/fd.c:2997 storage/file/reinit.c:126 utils/adt/misc.c:256 #: utils/misc/tzparser.c:340 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не удалось открыть каталог \"%s\": %m" #: ../common/file_utils.c:174 ../common/file_utils.c:338 -#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3006 +#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3009 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не удалось прочитать каталог \"%s\": %m" #: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 #: postmaster/pgarch.c:836 postmaster/syslogger.c:1560 -#: replication/logical/snapbuild.c:1708 replication/slot.c:1023 -#: replication/slot.c:2258 replication/slot.c:2407 storage/file/fd.c:835 +#: replication/logical/snapbuild.c:1708 replication/slot.c:1027 +#: replication/slot.c:2299 replication/slot.c:2448 storage/file/fd.c:838 #: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" @@ -735,12 +735,12 @@ msgstr "не удалось получить код выхода от подпр #: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 #: access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 -#: access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 -#: postmaster/syslogger.c:1489 replication/logical/origin.c:614 -#: replication/logical/reorderbuffer.c:4841 +#: access/transam/xlogarchive.c:399 backup/walsummary.c:254 +#: postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 +#: replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 #: replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 -#: replication/slot.c:2461 storage/file/fd.c:875 storage/file/fd.c:3440 -#: storage/file/fd.c:3502 storage/file/reinit.c:261 storage/ipc/dsm.c:343 +#: replication/slot.c:2502 storage/file/fd.c:878 storage/file/fd.c:3443 +#: storage/file/fd.c:3505 storage/file/reinit.c:261 storage/ipc/dsm.c:343 #: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 #: utils/time/snapmgr.c:1609 #, c-format @@ -748,8 +748,8 @@ msgid "could not remove file \"%s\": %m" msgstr "не удалось стереть файл \"%s\": %m" #: ../common/rmtree.c:124 commands/tablespace.c:767 commands/tablespace.c:780 -#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3432 -#: storage/file/fd.c:3841 +#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3435 +#: storage/file/fd.c:3844 #, c-format msgid "could not remove directory \"%s\": %m" msgstr "ошибка при удалении каталога \"%s\": %m" @@ -864,25 +864,25 @@ msgstr "не удалось получить связь для каталога msgid "could not get junction for \"%s\": %s\n" msgstr "не удалось получить связь для каталога \"%s\": %s\n" -#: ../port/open.c:115 +#: ../port/open.c:125 #, c-format msgid "could not open file \"%s\": %s" msgstr "не удалось открыть файл \"%s\": %s" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "lock violation" msgstr "нарушение блокировки" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "sharing violation" msgstr "нарушение совместного доступа" -#: ../port/open.c:117 +#: ../port/open.c:127 #, c-format msgid "Continuing to retry for 30 seconds." msgstr "Попытки будут продолжены в течение 30 секунд." -#: ../port/open.c:118 +#: ../port/open.c:128 #, c-format msgid "" "You might have antivirus, backup, or similar software interfering with the " @@ -1266,7 +1266,7 @@ msgstr "не удалось повторно найти кортеж в инде #: access/gin/gininsert.c:1310 access/gin/ginutil.c:152 #: executor/execExpr.c:2244 utils/adt/array_userfuncs.c:1963 #: utils/adt/arrayfuncs.c:4028 utils/adt/arrayfuncs.c:6726 -#: utils/adt/rowtypes.c:974 +#: utils/adt/rowtypes.c:974 utils/sort/tuplesortvariants.c:646 #, c-format msgid "could not identify a comparison function for type %s" msgstr "не удалось найти функцию сравнения для типа %s" @@ -1394,7 +1394,7 @@ msgstr "" #: utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 #: utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 #: utils/adt/like_support.c:1020 utils/adt/varchar.c:738 -#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1592 +#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1603 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "Задайте правило сортировки явно в предложении COLLATE." @@ -1451,38 +1451,38 @@ msgid "" msgstr "" "в семействе операторов \"%s\" метода доступа %s нет межтипового оператора(ов)" -#: access/heap/heapam.c:2280 +#: access/heap/heapam.c:2283 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "вставлять кортежи в параллельном исполнителе нельзя" -#: access/heap/heapam.c:2803 +#: access/heap/heapam.c:2806 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "удалять кортежи во время параллельных операций нельзя" -#: access/heap/heapam.c:2850 +#: access/heap/heapam.c:2853 #, c-format msgid "attempted to delete invisible tuple" msgstr "попытка удаления невидимого кортежа" -#: access/heap/heapam.c:3300 access/index/genam.c:829 +#: access/heap/heapam.c:3303 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "изменять кортежи во время параллельных операций нельзя" -#: access/heap/heapam.c:3477 +#: access/heap/heapam.c:3480 #, c-format msgid "attempted to update invisible tuple" msgstr "попытка изменения невидимого кортежа" -#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 -#: access/heap/heapam.c:5291 access/heap/heapam_handler.c:470 +#: access/heap/heapam.c:4993 access/heap/heapam.c:5031 +#: access/heap/heapam.c:5298 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "не удалось получить блокировку строки в таблице \"%s\"" -#: access/heap/heapam.c:6405 commands/trigger.c:3401 +#: access/heap/heapam.c:6425 commands/trigger.c:3401 #: executor/nodeModifyTable.c:2568 executor/nodeModifyTable.c:2658 #, c-format msgid "" @@ -1513,13 +1513,13 @@ msgstr "не удалось записать в файл \"%s\" (записан #: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 #: access/transam/timeline.c:329 access/transam/timeline.c:481 -#: access/transam/xlog.c:3240 access/transam/xlog.c:3448 -#: access/transam/xlog.c:4312 access/transam/xlog.c:9327 +#: access/transam/xlog.c:3239 access/transam/xlog.c:3447 +#: access/transam/xlog.c:4311 access/transam/xlog.c:9329 #: access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 #: backup/basebackup_server.c:242 commands/dbcommands.c:495 #: postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 #: postmaster/walsummarizer.c:1215 replication/logical/origin.c:626 -#: replication/slot.c:2319 storage/file/copydir.c:173 +#: replication/slot.c:2360 storage/file/copydir.c:173 #: storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 #, c-format msgid "could not create file \"%s\": %m" @@ -1532,12 +1532,12 @@ msgstr "не удалось обрезать файл \"%s\" до нужного #: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 #: access/transam/timeline.c:424 access/transam/timeline.c:498 -#: access/transam/xlog.c:3301 access/transam/xlog.c:3504 -#: access/transam/xlog.c:4324 commands/dbcommands.c:507 +#: access/transam/xlog.c:3300 access/transam/xlog.c:3503 +#: access/transam/xlog.c:4323 commands/dbcommands.c:507 #: postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 #: replication/logical/origin.c:638 replication/logical/origin.c:680 #: replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 -#: replication/slot.c:2355 storage/file/buffile.c:545 +#: replication/slot.c:2396 storage/file/buffile.c:545 #: storage/file/copydir.c:213 utils/init/miscinit.c:1661 #: utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 #: utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 @@ -2005,7 +2005,7 @@ msgid "\"%s\" cannot be empty." msgstr "Значение \"%s\" не может быть пустым." # well-spelled: симв -#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4902 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4912 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "Длина \"%s\" превышает предел (%d симв.)." @@ -2047,7 +2047,7 @@ msgstr "" msgid "Make sure the configuration parameter \"%s\" is set." msgstr "Убедитесь, что в конфигурации установлен параметр \"%s\"." -#: access/transam/multixact.c:1098 +#: access/transam/multixact.c:1179 #, c-format msgid "" "database is not accepting commands that assign new MultiXactIds to avoid " @@ -2056,8 +2056,8 @@ msgstr "" "база данных не принимает команды, назначающие новые MultiXactId, во " "избежание потери данных из-за зацикливания в базе данных \"%s\"" -#: access/transam/multixact.c:1100 access/transam/multixact.c:1107 -#: access/transam/multixact.c:1131 access/transam/multixact.c:1140 +#: access/transam/multixact.c:1181 access/transam/multixact.c:1188 +#: access/transam/multixact.c:1212 access/transam/multixact.c:1221 #: access/transam/varsup.c:158 access/transam/varsup.c:165 #, c-format msgid "" @@ -2069,7 +2069,7 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: access/transam/multixact.c:1105 +#: access/transam/multixact.c:1186 #, c-format msgid "" "database is not accepting commands that assign new MultiXactIds to avoid " @@ -2078,7 +2078,7 @@ msgstr "" "база данных не принимает команды, назначающие новые MultiXactId, во " "избежание потери данных из-за зацикливания в базе данных с OID %u" -#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1207 access/transam/multixact.c:2552 #, c-format msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used" msgid_plural "" @@ -2093,7 +2093,7 @@ msgstr[2] "" "база данных \"%s\" должна быть очищена, прежде чем будут использованы " "оставшиеся MultiXactId (%u)" -#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 +#: access/transam/multixact.c:1216 access/transam/multixact.c:2561 #, c-format msgid "" "database with OID %u must be vacuumed before %u more MultiXactId is used" @@ -2109,12 +2109,12 @@ msgstr[2] "" "база данных с OID %u должна быть очищена, прежде чем будут использованы " "оставшиеся MultiXactId (%u)" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1280 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "слишком много членов мультитранзакции" -#: access/transam/multixact.c:1197 +#: access/transam/multixact.c:1281 #, c-format msgid "" "This command would create a multixact with %u members, but the remaining " @@ -2132,7 +2132,7 @@ msgstr[2] "" "Мультитранзакция, создаваемая этой командой, должна включать членов: %u, но " "оставшегося места хватает только для %u." -#: access/transam/multixact.c:1202 +#: access/transam/multixact.c:1286 #, c-format msgid "" "Execute a database-wide VACUUM in database with OID %u with reduced " @@ -2142,7 +2142,7 @@ msgstr "" "Выполните очистку (VACUUM) всей базы данных с OID %u, уменьшив значения " "\"vacuum_multixact_freeze_min_age\" и \"vacuum_multixact_freeze_table_age\"." -#: access/transam/multixact.c:1233 +#: access/transam/multixact.c:1317 #, c-format msgid "" "database with OID %u must be vacuumed before %d more multixact member is used" @@ -2159,7 +2159,7 @@ msgstr[2] "" "база данных с OID %u должна быть очищена, пока не использованы оставшиеся " "члены мультитранзакций (%d)" -#: access/transam/multixact.c:1238 +#: access/transam/multixact.c:1322 #, c-format msgid "" "Execute a database-wide VACUUM in that database with reduced " @@ -2169,17 +2169,22 @@ msgstr "" "Выполните очистку (VACUUM) всей этой базы данных, уменьшив значения " "\"vacuum_multixact_freeze_min_age\" и \"vacuum_multixact_freeze_table_age\"." -#: access/transam/multixact.c:1378 +#: access/transam/multixact.c:1461 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u прекратил существование: видимо, произошло зацикливание" -#: access/transam/multixact.c:1384 +#: access/transam/multixact.c:1467 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "MultiXactId %u ещё не был создан: видимо, произошло зацикливание" -#: access/transam/multixact.c:2488 access/transam/multixact.c:2497 +#: access/transam/multixact.c:1560 +#, c-format +msgid "MultiXact %u has invalid next offset" +msgstr "для мультитранзакции %u получено некорректное следующее смещение" + +#: access/transam/multixact.c:2557 access/transam/multixact.c:2566 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in " @@ -2192,7 +2197,7 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: access/transam/multixact.c:2776 +#: access/transam/multixact.c:2845 #, c-format msgid "" "MultiXact member wraparound protections are disabled because oldest " @@ -2201,12 +2206,12 @@ msgstr "" "Защита от зацикливания членов мультитранзакций отключена, так как старейшая " "отмеченная мультитранзакция %u не найдена на диске" -#: access/transam/multixact.c:2798 +#: access/transam/multixact.c:2867 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "Защита от зацикливания мультитранзакций сейчас включена" -#: access/transam/multixact.c:3189 +#: access/transam/multixact.c:3258 #, c-format msgid "" "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" @@ -2214,7 +2219,7 @@ msgstr "" "старейшая мультитранзакция %u не найдена, новейшая мультитранзакция: %u, " "усечение пропускается" -#: access/transam/multixact.c:3207 +#: access/transam/multixact.c:3276 #, c-format msgid "" "cannot truncate up to MultiXact %u because it does not exist on disk, " @@ -2223,41 +2228,50 @@ msgstr "" "выполнить усечение до мультитранзакции %u нельзя ввиду её отсутствия на " "диске, усечение пропускается" -#: access/transam/multixact.c:3526 +#: access/transam/multixact.c:3293 +#, c-format +msgid "" +"cannot truncate up to MultiXact %u because it has invalid offset, skipping " +"truncation" +msgstr "" +"выполнить усечение до мультитранзакции %u нельзя из-за некорректного " +"смещения, усечение пропускается" + +#: access/transam/multixact.c:3638 #, c-format msgid "invalid MultiXactId: %u" msgstr "неверный MultiXactId: %u" -#: access/transam/parallel.c:752 access/transam/parallel.c:871 +#: access/transam/parallel.c:759 access/transam/parallel.c:878 #, c-format msgid "parallel worker failed to initialize" msgstr "не удалось инициализировать параллельный исполнитель" -#: access/transam/parallel.c:753 access/transam/parallel.c:872 +#: access/transam/parallel.c:760 access/transam/parallel.c:879 #, c-format msgid "More details may be available in the server log." msgstr "Дополнительная информация может быть в журнале сервера." -#: access/transam/parallel.c:933 +#: access/transam/parallel.c:940 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "postmaster завершился в процессе параллельной транзакции" -#: access/transam/parallel.c:1120 +#: access/transam/parallel.c:1127 #, c-format msgid "lost connection to parallel worker" msgstr "потеряно подключение к параллельному исполнителю" -#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 +#: access/transam/parallel.c:1183 access/transam/parallel.c:1185 msgid "parallel worker" msgstr "параллельный исполнитель" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:897 +#: access/transam/parallel.c:1355 replication/logical/applyparallelworker.c:897 #, c-format msgid "could not map dynamic shared memory segment" msgstr "не удалось отобразить динамический сегмент разделяемой памяти" -#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:903 +#: access/transam/parallel.c:1360 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "неверное магическое число в динамическом сегменте разделяемой памяти" @@ -2632,7 +2646,7 @@ msgstr "" "Для WAL-записи %X/%X найден файл состояния двухфазной фиксации, но эта " "транзакция уже была восстановлена с диска." -#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:214 +#: access/transam/twophase.c:2523 storage/file/fd.c:514 utils/fmgr/dfmgr.c:214 #, c-format msgid "could not access file \"%s\": %m" msgstr "ошибка при обращении к файлу \"%s\": %m" @@ -2813,7 +2827,7 @@ msgstr "откатиться к точке сохранения во время msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "в одной транзакции не может быть больше 2^32-1 подтранзакций" -#: access/transam/xlog.c:1545 +#: access/transam/xlog.c:1544 #, c-format msgid "" "request to flush past end of generated WAL; request %X/%X, current position " @@ -2822,7 +2836,7 @@ msgstr "" "запрос на сброс данных за концом сгенерированного WAL; запрошена позиция %X/" "%X, текущая позиция %X/%X" -#: access/transam/xlog.c:1772 +#: access/transam/xlog.c:1771 #, c-format msgid "" "cannot read past end of generated WAL: requested %X/%X, current position %X/" @@ -2831,64 +2845,64 @@ msgstr "" "чтение за концом сгенерированного WAL невозможно: запрошена позиция %X/%X, " "текущая позиция %X/%X" -#: access/transam/xlog.c:2219 access/transam/xlog.c:4548 +#: access/transam/xlog.c:2218 access/transam/xlog.c:4547 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "" "Размер сегмента WAL должен задаваться степенью 2 в интервале от 1 МБ до 1 ГБ." -#: access/transam/xlog.c:2455 +#: access/transam/xlog.c:2454 #, c-format msgid "could not write to log file \"%s\" at offset %u, length %zu: %m" msgstr "" "не удалось записать в файл журнала \"%s\" (смещение: %u, длина: %zu): %m" -#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 +#: access/transam/xlog.c:3740 access/transam/xlogutils.c:820 #: replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "запрошенный сегмент WAL %s уже удалён" -#: access/transam/xlog.c:4063 +#: access/transam/xlog.c:4062 #, c-format msgid "could not rename file \"%s\": %m" msgstr "не удалось переименовать файл \"%s\": %m" -#: access/transam/xlog.c:4106 access/transam/xlog.c:4117 -#: access/transam/xlog.c:4138 +#: access/transam/xlog.c:4105 access/transam/xlog.c:4116 +#: access/transam/xlog.c:4137 #, c-format msgid "required WAL directory \"%s\" does not exist" msgstr "требуемый каталог WAL \"%s\" не существует" -#: access/transam/xlog.c:4123 access/transam/xlog.c:4144 +#: access/transam/xlog.c:4122 access/transam/xlog.c:4143 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "создаётся отсутствующий каталог WAL \"%s\"" -#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 -#: commands/dbcommands.c:3301 +#: access/transam/xlog.c:4126 access/transam/xlog.c:4146 +#: commands/dbcommands.c:3302 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "не удалось создать отсутствующий каталог \"%s\": %m" -#: access/transam/xlog.c:4214 +#: access/transam/xlog.c:4213 #, c-format msgid "could not generate secret authorization token" msgstr "не удалось сгенерировать случайное число для аутентификации" -#: access/transam/xlog.c:4392 access/transam/xlog.c:4402 -#: access/transam/xlog.c:4428 access/transam/xlog.c:4438 -#: access/transam/xlog.c:4448 access/transam/xlog.c:4454 -#: access/transam/xlog.c:4464 access/transam/xlog.c:4474 -#: access/transam/xlog.c:4484 access/transam/xlog.c:4494 -#: access/transam/xlog.c:4504 access/transam/xlog.c:4514 -#: access/transam/xlog.c:4526 access/transam/xlog.c:4534 +#: access/transam/xlog.c:4391 access/transam/xlog.c:4401 +#: access/transam/xlog.c:4427 access/transam/xlog.c:4437 +#: access/transam/xlog.c:4447 access/transam/xlog.c:4453 +#: access/transam/xlog.c:4463 access/transam/xlog.c:4473 +#: access/transam/xlog.c:4483 access/transam/xlog.c:4493 +#: access/transam/xlog.c:4503 access/transam/xlog.c:4513 +#: access/transam/xlog.c:4525 access/transam/xlog.c:4533 #: utils/init/miscinit.c:1818 #, c-format msgid "database files are incompatible with server" msgstr "файлы базы данных несовместимы с сервером" -#: access/transam/xlog.c:4393 +#: access/transam/xlog.c:4392 #, c-format msgid "" "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), " @@ -2897,7 +2911,7 @@ msgstr "" "Кластер баз данных был инициализирован с PG_CONTROL_VERSION %d (0x%08x), но " "сервер скомпилирован с PG_CONTROL_VERSION %d (0x%08x)." -#: access/transam/xlog.c:4397 +#: access/transam/xlog.c:4396 #, c-format msgid "" "This could be a problem of mismatched byte ordering. It looks like you need " @@ -2906,7 +2920,7 @@ msgstr "" "Возможно, проблема вызвана разным порядком байт. Кажется, вам надо выполнить " "initdb." -#: access/transam/xlog.c:4403 +#: access/transam/xlog.c:4402 #, c-format msgid "" "The database cluster was initialized with PG_CONTROL_VERSION %d, but the " @@ -2915,23 +2929,23 @@ msgstr "" "Кластер баз данных был инициализирован с PG_CONTROL_VERSION %d, но сервер " "скомпилирован с PG_CONTROL_VERSION %d." -#: access/transam/xlog.c:4406 access/transam/xlog.c:4434 -#: access/transam/xlog.c:4444 access/transam/xlog.c:4450 +#: access/transam/xlog.c:4405 access/transam/xlog.c:4433 +#: access/transam/xlog.c:4443 access/transam/xlog.c:4449 #, c-format msgid "It looks like you need to initdb." msgstr "Кажется, вам надо выполнить initdb." -#: access/transam/xlog.c:4418 +#: access/transam/xlog.c:4417 #, c-format msgid "incorrect checksum in control file" msgstr "ошибка контрольной суммы в файле pg_control" #. translator: %s is a variable name and %d is its value -#: access/transam/xlog.c:4430 access/transam/xlog.c:4440 -#: access/transam/xlog.c:4456 access/transam/xlog.c:4466 -#: access/transam/xlog.c:4476 access/transam/xlog.c:4486 -#: access/transam/xlog.c:4496 access/transam/xlog.c:4506 -#: access/transam/xlog.c:4516 +#: access/transam/xlog.c:4429 access/transam/xlog.c:4439 +#: access/transam/xlog.c:4455 access/transam/xlog.c:4465 +#: access/transam/xlog.c:4475 access/transam/xlog.c:4485 +#: access/transam/xlog.c:4495 access/transam/xlog.c:4505 +#: access/transam/xlog.c:4515 #, c-format msgid "" "The database cluster was initialized with %s %d, but the server was compiled " @@ -2940,7 +2954,7 @@ msgstr "" "Кластер баз данных был инициализирован с %s %d, но сервер скомпилирован с %s " "%d." -#: access/transam/xlog.c:4449 +#: access/transam/xlog.c:4448 #, c-format msgid "" "The database cluster appears to use a different floating-point number format " @@ -2949,16 +2963,16 @@ msgstr "" "Кажется, в кластере баз данных и в программе сервера используются разные " "форматы чисел с плавающей точкой." -#: access/transam/xlog.c:4460 access/transam/xlog.c:4470 -#: access/transam/xlog.c:4480 access/transam/xlog.c:4490 -#: access/transam/xlog.c:4500 access/transam/xlog.c:4510 -#: access/transam/xlog.c:4520 access/transam/xlog.c:4529 -#: access/transam/xlog.c:4537 +#: access/transam/xlog.c:4459 access/transam/xlog.c:4469 +#: access/transam/xlog.c:4479 access/transam/xlog.c:4489 +#: access/transam/xlog.c:4499 access/transam/xlog.c:4509 +#: access/transam/xlog.c:4519 access/transam/xlog.c:4528 +#: access/transam/xlog.c:4536 #, c-format msgid "It looks like you need to recompile or initdb." msgstr "Кажется, вам надо перекомпилировать сервер или выполнить initdb." -#: access/transam/xlog.c:4527 +#: access/transam/xlog.c:4526 #, c-format msgid "" "The database cluster was initialized without USE_FLOAT8_BYVAL but the server " @@ -2967,7 +2981,7 @@ msgstr "" "Кластер баз данных был инициализирован без USE_FLOAT8_BYVAL, но сервер " "скомпилирован с USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4535 +#: access/transam/xlog.c:4534 #, c-format msgid "" "The database cluster was initialized with USE_FLOAT8_BYVAL but the server " @@ -2976,7 +2990,7 @@ msgstr "" "Кластер баз данных был инициализирован с USE_FLOAT8_BYVAL, но сервер был " "скомпилирован без USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4544 +#: access/transam/xlog.c:4543 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -2985,40 +2999,40 @@ msgstr[1] "управляющий файл содержит неверный р msgstr[2] "управляющий файл содержит неверный размер сегмента WAL (%d Б)" #. translator: both %s are GUC names -#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 +#: access/transam/xlog.c:4557 access/transam/xlog.c:4563 #, c-format msgid "\"%s\" must be at least twice \"%s\"" msgstr "\"%s\" должно быть как минимум вдвое больше \"%s\"" -#: access/transam/xlog.c:4726 catalog/namespace.c:4699 +#: access/transam/xlog.c:4725 catalog/namespace.c:4699 #: commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 -#: replication/slot.c:2727 tcop/postgres.c:3626 utils/error/elog.c:2257 +#: replication/slot.c:2768 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "Ошибка синтаксиса в списке." -#: access/transam/xlog.c:4772 commands/user.c:2547 commands/variable.c:173 +#: access/transam/xlog.c:4771 commands/user.c:2547 commands/variable.c:173 #: tcop/postgres.c:3642 utils/error/elog.c:2283 #, c-format msgid "Unrecognized key word: \"%s\"." msgstr "нераспознанное ключевое слово: \"%s\"." -#: access/transam/xlog.c:5195 +#: access/transam/xlog.c:5194 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "не удалось записать начальный файл журнала предзаписи: %m" -#: access/transam/xlog.c:5203 +#: access/transam/xlog.c:5202 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "не удалось сбросить на диск начальный файл журнала предзаписи: %m" -#: access/transam/xlog.c:5209 +#: access/transam/xlog.c:5208 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "не удалось закрыть начальный файл журнала предзаписи: %m" -#: access/transam/xlog.c:5434 +#: access/transam/xlog.c:5433 #, c-format msgid "" "WAL was generated with \"wal_level=minimal\", cannot continue recovering" @@ -3026,13 +3040,13 @@ msgstr "" "WAL был создан с параметром \"wal_level=minimal\", продолжение " "восстановления невозможно" -#: access/transam/xlog.c:5435 +#: access/transam/xlog.c:5434 #, c-format msgid "" "This happens if you temporarily set \"wal_level=minimal\" on the server." msgstr "Это происходит, если вы на время устанавливали \"wal_level=minimal\"." -#: access/transam/xlog.c:5436 +#: access/transam/xlog.c:5435 #, c-format msgid "" "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." @@ -3040,32 +3054,32 @@ msgstr "" "Используйте резервную копию, сделанную после переключения \"wal_level\" на " "любой уровень выше \"minimal\"." -#: access/transam/xlog.c:5501 +#: access/transam/xlog.c:5500 #, c-format msgid "control file contains invalid checkpoint location" msgstr "файл pg_control содержит неправильную позицию контрольной точки" -#: access/transam/xlog.c:5512 +#: access/transam/xlog.c:5511 #, c-format msgid "database system was shut down at %s" msgstr "система БД была выключена: %s" -#: access/transam/xlog.c:5518 +#: access/transam/xlog.c:5517 #, c-format msgid "database system was shut down in recovery at %s" msgstr "система БД была выключена в процессе восстановления: %s" -#: access/transam/xlog.c:5524 +#: access/transam/xlog.c:5523 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "выключение системы БД было прервано; последний момент работы: %s" -#: access/transam/xlog.c:5530 +#: access/transam/xlog.c:5529 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "работа системы БД была прервана во время восстановления: %s" -#: access/transam/xlog.c:5532 +#: access/transam/xlog.c:5531 #, c-format msgid "" "This probably means that some data is corrupted and you will have to use the " @@ -3074,14 +3088,14 @@ msgstr "" "Это скорее всего означает, что некоторые данные повреждены и вам придётся " "восстановить БД из последней резервной копии." -#: access/transam/xlog.c:5538 +#: access/transam/xlog.c:5537 #, c-format msgid "database system was interrupted while in recovery at log time %s" msgstr "" "работа системы БД была прервана в процессе восстановления, время в журнале: " "%s" -#: access/transam/xlog.c:5540 +#: access/transam/xlog.c:5539 #, c-format msgid "" "If this has occurred more than once some data might be corrupted and you " @@ -3090,22 +3104,22 @@ msgstr "" "Если это происходит постоянно, возможно, какие-то данные были испорчены и " "для восстановления стоит выбрать более раннюю точку." -#: access/transam/xlog.c:5546 +#: access/transam/xlog.c:5545 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "работа системы БД была прервана; последний момент работы: %s" -#: access/transam/xlog.c:5553 +#: access/transam/xlog.c:5552 #, c-format msgid "control file contains invalid database cluster state" msgstr "файл pg_control содержит неверный код состояния кластера" -#: access/transam/xlog.c:5941 +#: access/transam/xlog.c:5940 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL закончился без признака окончания копирования" -#: access/transam/xlog.c:5942 +#: access/transam/xlog.c:5941 #, c-format msgid "" "All WAL generated while online backup was taken must be available at " @@ -3114,40 +3128,40 @@ msgstr "" "Все журналы WAL, созданные во время резервного копирования \"на ходу\", " "должны быть в наличии для восстановления." -#: access/transam/xlog.c:5946 +#: access/transam/xlog.c:5945 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL закончился до согласованной точки восстановления" -#: access/transam/xlog.c:5992 +#: access/transam/xlog.c:5991 #, c-format msgid "selected new timeline ID: %u" msgstr "выбранный ID новой линии времени: %u" -#: access/transam/xlog.c:6025 +#: access/transam/xlog.c:6024 #, c-format msgid "archive recovery complete" msgstr "восстановление архива завершено" -#: access/transam/xlog.c:6654 +#: access/transam/xlog.c:6653 #, c-format msgid "shutting down" msgstr "выключение" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6693 +#: access/transam/xlog.c:6692 #, c-format msgid "restartpoint starting:%s%s%s%s%s%s%s%s" msgstr "начата точка перезапуска:%s%s%s%s%s%s%s%s" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6705 +#: access/transam/xlog.c:6704 #, c-format msgid "checkpoint starting:%s%s%s%s%s%s%s%s" msgstr "начата контрольная точка:%s%s%s%s%s%s%s%s" # well-spelled: синхр -#: access/transam/xlog.c:6770 +#: access/transam/xlog.c:6769 #, c-format msgid "" "restartpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d " @@ -3162,7 +3176,7 @@ msgstr "" "%03d сек.; расстояние=%d КБ, ожидалось=%d КБ; lsn=%X/%X, lsn redo=%X/%X" # well-spelled: синхр -#: access/transam/xlog.c:6794 +#: access/transam/xlog.c:6793 #, c-format msgid "" "checkpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d " @@ -3176,7 +3190,7 @@ msgstr "" "синхронизировано_файлов=%d, самая_долгая_синхр.=%ld.%03d сек., средняя=%ld." "%03d сек.; расстояние=%d КБ, ожидалось=%d КБ; lsn=%X/%X, lsn redo=%X/%X" -#: access/transam/xlog.c:7280 +#: access/transam/xlog.c:7279 #, c-format msgid "" "concurrent write-ahead log activity while database system is shutting down" @@ -3184,64 +3198,64 @@ msgstr "" "во время выключения системы баз данных отмечена активность в журнале " "предзаписи" -#: access/transam/xlog.c:7869 +#: access/transam/xlog.c:7871 #, c-format msgid "recovery restart point at %X/%X" msgstr "точка перезапуска восстановления в позиции %X/%X" -#: access/transam/xlog.c:7871 +#: access/transam/xlog.c:7873 #, c-format msgid "Last completed transaction was at log time %s." msgstr "Последняя завершённая транзакция была выполнена в %s." -#: access/transam/xlog.c:8135 +#: access/transam/xlog.c:8137 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "точка восстановления \"%s\" создана в позиции %X/%X" -#: access/transam/xlog.c:8342 +#: access/transam/xlog.c:8344 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "" "резервное копирование \"на ходу\" было отменено, продолжить восстановление " "нельзя" -#: access/transam/xlog.c:8400 +#: access/transam/xlog.c:8402 #, c-format msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "" "неожиданный ID линии времени %u (должен быть %u) в записи точки выключения" -#: access/transam/xlog.c:8466 +#: access/transam/xlog.c:8468 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "" "неожиданный ID линии времени %u (должен быть %u) в записи точки активности" -#: access/transam/xlog.c:8503 +#: access/transam/xlog.c:8505 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "" "неожиданный ID линии времени %u (должен быть %u) в записи конец-" "восстановления" -#: access/transam/xlog.c:8773 +#: access/transam/xlog.c:8775 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "не удалось синхронизировать с ФС файл сквозной записи %s: %m" -#: access/transam/xlog.c:8778 +#: access/transam/xlog.c:8780 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "не удалось синхронизировать с ФС данные (fdatasync) файла \"%s\": %m" -#: access/transam/xlog.c:8855 access/transam/xlog.c:9191 +#: access/transam/xlog.c:8857 access/transam/xlog.c:9193 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "" "Выбранный уровень WAL недостаточен для резервного копирования \"на ходу\"" -#: access/transam/xlog.c:8856 access/transam/xlog.c:9192 +#: access/transam/xlog.c:8858 access/transam/xlog.c:9194 #: access/transam/xlogfuncs.c:249 #, c-format msgid "" @@ -3250,12 +3264,12 @@ msgstr "" "Параметр \"wal_level\" должен иметь значение \"replica\" или \"logical\" при " "запуске сервера." -#: access/transam/xlog.c:8861 +#: access/transam/xlog.c:8863 #, c-format msgid "backup label too long (max %d bytes)" msgstr "длина метки резервной копии превышает предел (%d байт)" -#: access/transam/xlog.c:8982 +#: access/transam/xlog.c:8984 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed since last " @@ -3264,7 +3278,7 @@ msgstr "" "после последней точки перезапуска был воспроизведён WAL, созданный в режиме " "\"full_page_writes=off\"" -#: access/transam/xlog.c:8984 access/transam/xlog.c:9280 +#: access/transam/xlog.c:8986 access/transam/xlog.c:9282 #, c-format msgid "" "This means that the backup being taken on the standby is corrupt and should " @@ -3276,23 +3290,23 @@ msgstr "" "CHECKPOINT на ведущем сервере, а затем попробуйте резервное копирование \"на " "ходу\" ещё раз." -#: access/transam/xlog.c:9064 backup/basebackup.c:1419 utils/adt/misc.c:354 +#: access/transam/xlog.c:9066 backup/basebackup.c:1419 utils/adt/misc.c:354 #, c-format msgid "could not read symbolic link \"%s\": %m" msgstr "не удалось прочитать символическую ссылку \"%s\": %m" -#: access/transam/xlog.c:9071 backup/basebackup.c:1424 utils/adt/misc.c:359 +#: access/transam/xlog.c:9073 backup/basebackup.c:1424 utils/adt/misc.c:359 #, c-format msgid "symbolic link \"%s\" target is too long" msgstr "целевой путь символической ссылки \"%s\" слишком длинный" -#: access/transam/xlog.c:9230 backup/basebackup.c:1283 +#: access/transam/xlog.c:9232 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "" "ведомый сервер был повышен в процессе резервного копирования \"на ходу\"" -#: access/transam/xlog.c:9231 backup/basebackup.c:1284 +#: access/transam/xlog.c:9233 backup/basebackup.c:1284 #, c-format msgid "" "This means that the backup being taken is corrupt and should not be used. " @@ -3301,7 +3315,7 @@ msgstr "" "Это означает, что создаваемая резервная копия испорчена и использовать её не " "следует. Попробуйте резервное копирование \"на ходу\" ещё раз." -#: access/transam/xlog.c:9278 +#: access/transam/xlog.c:9280 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed during online backup" @@ -3309,13 +3323,13 @@ msgstr "" "в процессе резервного копирования \"на ходу\" был воспроизведён WAL, " "созданный в режиме \"full_page_writes=off\"" -#: access/transam/xlog.c:9394 +#: access/transam/xlog.c:9396 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "" "базовое копирование выполнено, ожидается архивация нужных сегментов WAL" -#: access/transam/xlog.c:9408 +#: access/transam/xlog.c:9410 #, c-format msgid "" "still waiting for all required WAL segments to be archived (%d seconds " @@ -3323,7 +3337,7 @@ msgid "" msgstr "" "продолжается ожидание архивации всех нужных сегментов WAL (прошло %d сек.)" -#: access/transam/xlog.c:9410 +#: access/transam/xlog.c:9412 #, c-format msgid "" "Check that your \"archive_command\" is executing properly. You can safely " @@ -3334,12 +3348,12 @@ msgstr "" "копирования можно отменить безопасно, но резервная копия базы будет " "непригодна без всех сегментов WAL." -#: access/transam/xlog.c:9417 +#: access/transam/xlog.c:9419 #, c-format msgid "all required WAL segments have been archived" msgstr "все нужные сегменты WAL заархивированы" -#: access/transam/xlog.c:9421 +#: access/transam/xlog.c:9423 #, c-format msgid "" "WAL archiving is not enabled; you must ensure that all required WAL segments " @@ -3348,7 +3362,7 @@ msgstr "" "архивация WAL не настроена; вы должны обеспечить копирование всех требуемых " "сегментов WAL другими средствами для получения резервной копии" -#: access/transam/xlog.c:9460 +#: access/transam/xlog.c:9462 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "" @@ -3779,50 +3793,59 @@ msgstr "перезапуск восстановления копии с LSN redo msgid "could not locate a valid checkpoint record at %X/%X" msgstr "не удалось найти корректную запись контрольной точки в %X/%X" -#: access/transam/xlogrecovery.c:813 +#: access/transam/xlogrecovery.c:814 +#, c-format +msgid "" +"could not find redo location %X/%08X referenced by checkpoint record at %X/" +"%08X" +msgstr "" +"не удалось найти положение REDO %X/%08X, указанное в записи контрольной " +"точки в %X/%08X" + +#: access/transam/xlogrecovery.c:823 #, c-format msgid "entering standby mode" msgstr "переход в режим резервного сервера" -#: access/transam/xlogrecovery.c:816 +#: access/transam/xlogrecovery.c:826 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "начинается восстановление точки во времени до XID %u" -#: access/transam/xlogrecovery.c:820 +#: access/transam/xlogrecovery.c:830 #, c-format msgid "starting point-in-time recovery to %s" msgstr "начинается восстановление точки во времени до %s" -#: access/transam/xlogrecovery.c:824 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "начинается восстановление точки во времени до \"%s\"" -#: access/transam/xlogrecovery.c:828 +#: access/transam/xlogrecovery.c:838 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "" "начинается восстановление точки во времени до позиции в WAL (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:832 +#: access/transam/xlogrecovery.c:842 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "" "начинается восстановление точки во времени до первой точки согласованности" -#: access/transam/xlogrecovery.c:835 +#: access/transam/xlogrecovery.c:845 #, c-format msgid "starting archive recovery" msgstr "начинается восстановление архива" -#: access/transam/xlogrecovery.c:856 +#: access/transam/xlogrecovery.c:866 #, c-format msgid "requested timeline %u is not a child of this server's history" msgstr "в истории сервера нет ответвления запрошенной линии времени %u" #. translator: %s is a backup_label file or a pg_control file -#: access/transam/xlogrecovery.c:859 +#: access/transam/xlogrecovery.c:869 #, c-format msgid "" "Latest checkpoint in file \"%s\" is at %X/%X on timeline %u, but in the " @@ -3832,7 +3855,7 @@ msgstr "" "Последняя контрольная точка в файле \"%s\": %X/%X на линии времени %u, но в " "истории запрошенной линии времени сервер ответвился с этой линии в %X/%X." -#: access/transam/xlogrecovery.c:874 +#: access/transam/xlogrecovery.c:884 #, c-format msgid "" "requested timeline %u does not contain minimum recovery point %X/%X on " @@ -3841,22 +3864,22 @@ msgstr "" "запрошенная линия времени %u не содержит минимальную точку восстановления %X/" "%X на линии времени %u" -#: access/transam/xlogrecovery.c:902 +#: access/transam/xlogrecovery.c:912 #, c-format msgid "invalid next transaction ID" msgstr "неверный ID следующей транзакции" -#: access/transam/xlogrecovery.c:907 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo in checkpoint record" msgstr "неверная запись REDO в контрольной точке" -#: access/transam/xlogrecovery.c:918 +#: access/transam/xlogrecovery.c:928 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "неверная запись REDO в контрольной точке выключения" -#: access/transam/xlogrecovery.c:947 +#: access/transam/xlogrecovery.c:957 #, c-format msgid "" "database system was not properly shut down; automatic recovery in progress" @@ -3864,19 +3887,19 @@ msgstr "" "система БД была остановлена нештатно; производится автоматическое " "восстановление" -#: access/transam/xlogrecovery.c:951 +#: access/transam/xlogrecovery.c:961 #, c-format msgid "crash recovery starts in timeline %u and has target timeline %u" msgstr "" "восстановление после сбоя начинается на линии времени %u, целевая линия " "времени: %u" -#: access/transam/xlogrecovery.c:994 +#: access/transam/xlogrecovery.c:1004 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_label содержит данные, не согласованные с файлом pg_control" -#: access/transam/xlogrecovery.c:995 +#: access/transam/xlogrecovery.c:1005 #, c-format msgid "" "This means that the backup is corrupted and you will have to use another " @@ -3885,24 +3908,24 @@ msgstr "" "Это означает, что резервная копия повреждена и для восстановления БД " "придётся использовать другую копию." -#: access/transam/xlogrecovery.c:1049 +#: access/transam/xlogrecovery.c:1059 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "" "использование файла с конфигурацией восстановления \"%s\" не поддерживается" -#: access/transam/xlogrecovery.c:1114 +#: access/transam/xlogrecovery.c:1124 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "" "режим резервного сервера не поддерживается однопользовательским сервером" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1141 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "не указано ни \"primary_conninfo\", ни \"restore_command\"" -#: access/transam/xlogrecovery.c:1132 +#: access/transam/xlogrecovery.c:1142 #, c-format msgid "" "The database server will regularly poll the pg_wal subdirectory to check for " @@ -3911,102 +3934,102 @@ msgstr "" "Сервер БД будет регулярно опрашивать подкаталог pg_wal и проверять " "содержащиеся в нём файлы." -#: access/transam/xlogrecovery.c:1140 +#: access/transam/xlogrecovery.c:1150 #, c-format msgid "must specify \"restore_command\" when standby mode is not enabled" msgstr "" "необходимо задать \"restore_command\", если не выбран режим резервного " "сервера" -#: access/transam/xlogrecovery.c:1178 +#: access/transam/xlogrecovery.c:1188 #, c-format msgid "recovery target timeline %u does not exist" msgstr "целевая линия времени для восстановления %u не существует" -#: access/transam/xlogrecovery.c:1261 access/transam/xlogrecovery.c:1268 -#: access/transam/xlogrecovery.c:1327 access/transam/xlogrecovery.c:1415 -#: access/transam/xlogrecovery.c:1424 access/transam/xlogrecovery.c:1444 +#: access/transam/xlogrecovery.c:1271 access/transam/xlogrecovery.c:1278 +#: access/transam/xlogrecovery.c:1337 access/transam/xlogrecovery.c:1425 +#: access/transam/xlogrecovery.c:1434 access/transam/xlogrecovery.c:1454 #, c-format msgid "invalid data in file \"%s\"" msgstr "неверные данные в файле \"%s\"" -#: access/transam/xlogrecovery.c:1328 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "Получен идентификатор линии времени %u, но ожидался %u." -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1349 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "это каталог инкрементальной копии, не каталог данных" -#: access/transam/xlogrecovery.c:1340 +#: access/transam/xlogrecovery.c:1350 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "" "Реконструируйте полноценный каталог данных, используя pg_combinebackup." -#: access/transam/xlogrecovery.c:1726 +#: access/transam/xlogrecovery.c:1736 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "в точке redo %X/%X обнаружена запись неожиданного типа" -#: access/transam/xlogrecovery.c:1749 +#: access/transam/xlogrecovery.c:1759 #, c-format msgid "redo starts at %X/%X" msgstr "запись REDO начинается со смещения %X/%X" -#: access/transam/xlogrecovery.c:1762 +#: access/transam/xlogrecovery.c:1772 #, c-format msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X" msgstr "" "выполняется воспроизведение, прошло времени: %ld.%02d с, текущий LSN: %X/%X" -#: access/transam/xlogrecovery.c:1852 +#: access/transam/xlogrecovery.c:1862 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "" "запрошенная точка остановки восстановления предшествует согласованной точке " "восстановления" -#: access/transam/xlogrecovery.c:1884 +#: access/transam/xlogrecovery.c:1894 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "записи REDO обработаны до смещения %X/%X, нагрузка системы: %s" -#: access/transam/xlogrecovery.c:1890 +#: access/transam/xlogrecovery.c:1900 #, c-format msgid "last completed transaction was at log time %s" msgstr "последняя завершённая транзакция была выполнена в %s" -#: access/transam/xlogrecovery.c:1899 +#: access/transam/xlogrecovery.c:1909 #, c-format msgid "redo is not required" msgstr "данные REDO не требуются" -#: access/transam/xlogrecovery.c:1911 +#: access/transam/xlogrecovery.c:1921 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "восстановление окончилось до достижения заданной цели восстановления" -#: access/transam/xlogrecovery.c:2105 +#: access/transam/xlogrecovery.c:2115 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "" "успешно пропущена отсутствующая запись contrecord в %X/%X, перезаписанная в " "%s" -#: access/transam/xlogrecovery.c:2172 +#: access/transam/xlogrecovery.c:2182 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "в %2$s обнаружен недопустимый элемент-каталог \"%1$s\"" -#: access/transam/xlogrecovery.c:2174 +#: access/transam/xlogrecovery.c:2184 #, c-format msgid "All directory entries in %s/ should be symbolic links." msgstr "Все элементы-каталоги в %s/ должны быть символическими ссылками." -#: access/transam/xlogrecovery.c:2176 +#: access/transam/xlogrecovery.c:2186 #, c-format msgid "" "Remove those directories, or set \"allow_in_place_tablespaces\" to ON " @@ -4015,23 +4038,23 @@ msgstr "" "Удалите эти каталоги или на время установите в " "\"allow_in_place_tablespaces\" значение ON, чтобы восстановление завершилось." -#: access/transam/xlogrecovery.c:2228 +#: access/transam/xlogrecovery.c:2238 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "завершено восстановление копии с LSN redo %X/%X и конечным LSN %X/%X" -#: access/transam/xlogrecovery.c:2259 +#: access/transam/xlogrecovery.c:2269 #, c-format msgid "consistent recovery state reached at %X/%X" msgstr "согласованное состояние восстановления достигнуто в позиции %X/%X" #. translator: %s is a WAL record description -#: access/transam/xlogrecovery.c:2297 +#: access/transam/xlogrecovery.c:2307 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "запись REDO в WAL в позиции %X/%X для %s" -#: access/transam/xlogrecovery.c:2395 +#: access/transam/xlogrecovery.c:2405 #, c-format msgid "" "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint " @@ -4040,13 +4063,13 @@ msgstr "" "неожиданный ID предыдущей линии времени %u (ID текущей линии времени %u) в " "записи контрольной точки" -#: access/transam/xlogrecovery.c:2404 +#: access/transam/xlogrecovery.c:2414 #, c-format msgid "unexpected timeline ID %u (after %u) in checkpoint record" msgstr "неожиданный ID линии времени %u (после %u) в записи контрольной точки" # skip-rule: capital-letter-first -#: access/transam/xlogrecovery.c:2420 +#: access/transam/xlogrecovery.c:2430 #, c-format msgid "" "unexpected timeline ID %u in checkpoint record, before reaching minimum " @@ -4055,83 +4078,83 @@ msgstr "" "неожиданный ID линии времени %u в записи контрольной точки, до достижения " "минимальной к. т. %X/%X на линии времени %u" -#: access/transam/xlogrecovery.c:2604 access/transam/xlogrecovery.c:2880 +#: access/transam/xlogrecovery.c:2614 access/transam/xlogrecovery.c:2890 #, c-format msgid "recovery stopping after reaching consistency" msgstr "" "восстановление останавливается после достижения согласованного состояния" -#: access/transam/xlogrecovery.c:2625 +#: access/transam/xlogrecovery.c:2635 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "восстановление останавливается перед позицией в WAL (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2715 +#: access/transam/xlogrecovery.c:2725 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "" "восстановление останавливается перед фиксированием транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2722 +#: access/transam/xlogrecovery.c:2732 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "" "восстановление останавливается перед прерыванием транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2775 +#: access/transam/xlogrecovery.c:2785 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "восстановление останавливается в точке восстановления \"%s\", время %s" -#: access/transam/xlogrecovery.c:2793 +#: access/transam/xlogrecovery.c:2803 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "восстановление останавливается после позиции в WAL (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2860 +#: access/transam/xlogrecovery.c:2870 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "" "восстановление останавливается после фиксирования транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2868 +#: access/transam/xlogrecovery.c:2878 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "" "восстановление останавливается после прерывания транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2959 #, c-format msgid "pausing at the end of recovery" msgstr "остановка в конце восстановления" -#: access/transam/xlogrecovery.c:2950 +#: access/transam/xlogrecovery.c:2960 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Выполните pg_wal_replay_resume() для повышения." -#: access/transam/xlogrecovery.c:2953 access/transam/xlogrecovery.c:4710 +#: access/transam/xlogrecovery.c:2963 access/transam/xlogrecovery.c:4720 #, c-format msgid "recovery has paused" msgstr "восстановление приостановлено" -#: access/transam/xlogrecovery.c:2954 +#: access/transam/xlogrecovery.c:2964 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Выполните pg_wal_replay_resume() для продолжения." -#: access/transam/xlogrecovery.c:3217 +#: access/transam/xlogrecovery.c:3227 #, c-format msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u" msgstr "" "неожиданный ID линии времени %u в сегменте WAL %s, LSN %X/%X, смещение %u" -#: access/transam/xlogrecovery.c:3433 +#: access/transam/xlogrecovery.c:3443 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m" msgstr "не удалось прочитать сегмент WAL %s, LSN %X/%X, смещение %u: %m" -#: access/transam/xlogrecovery.c:3440 +#: access/transam/xlogrecovery.c:3450 #, c-format msgid "" "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" @@ -4139,38 +4162,38 @@ msgstr "" "не удалось прочитать сегмент WAL %s, LSN %X/%X, смещение %u (прочитано байт: " "%d из %zu)" -#: access/transam/xlogrecovery.c:4094 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint location" msgstr "неверное положение контрольной точки" -#: access/transam/xlogrecovery.c:4104 +#: access/transam/xlogrecovery.c:4114 #, c-format msgid "invalid checkpoint record" msgstr "неверная запись контрольной точки" -#: access/transam/xlogrecovery.c:4110 +#: access/transam/xlogrecovery.c:4120 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "неверный ID менеджера ресурсов в записи контрольной точки" -#: access/transam/xlogrecovery.c:4118 +#: access/transam/xlogrecovery.c:4128 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "неверные флаги xl_info в записи контрольной точки" -#: access/transam/xlogrecovery.c:4124 +#: access/transam/xlogrecovery.c:4134 #, c-format msgid "invalid length of checkpoint record" msgstr "неверная длина записи контрольной точки" -#: access/transam/xlogrecovery.c:4178 +#: access/transam/xlogrecovery.c:4188 #, c-format msgid "new timeline %u is not a child of database system timeline %u" msgstr "" "новая линия времени %u не является ответвлением линии времени системы БД %u" -#: access/transam/xlogrecovery.c:4192 +#: access/transam/xlogrecovery.c:4202 #, c-format msgid "" "new timeline %u forked off current database system timeline %u before " @@ -4179,30 +4202,30 @@ msgstr "" "новая линия времени %u ответвилась от текущей линии времени базы данных %u " "до текущей точки восстановления %X/%X" -#: access/transam/xlogrecovery.c:4211 +#: access/transam/xlogrecovery.c:4221 #, c-format msgid "new target timeline is %u" msgstr "новая целевая линия времени %u" -#: access/transam/xlogrecovery.c:4412 +#: access/transam/xlogrecovery.c:4422 #, c-format msgid "WAL receiver process shutdown requested" msgstr "получен запрос на выключение процесса приёмника WAL" -#: access/transam/xlogrecovery.c:4472 +#: access/transam/xlogrecovery.c:4482 #, c-format msgid "received promote request" msgstr "получен запрос повышения статуса" -#: access/transam/xlogrecovery.c:4701 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "hot standby is not possible because of insufficient parameter settings" msgstr "" "режим горячего резерва невозможен из-за отсутствия достаточных значений " "параметров" -#: access/transam/xlogrecovery.c:4702 access/transam/xlogrecovery.c:4729 -#: access/transam/xlogrecovery.c:4759 +#: access/transam/xlogrecovery.c:4712 access/transam/xlogrecovery.c:4739 +#: access/transam/xlogrecovery.c:4769 #, c-format msgid "" "%s = %d is a lower setting than on the primary server, where its value was " @@ -4210,12 +4233,12 @@ msgid "" msgstr "" "Параметр %s = %d меньше, чем на ведущем сервере, где его значение было %d." -#: access/transam/xlogrecovery.c:4711 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "В случае возобновления восстановления сервер отключится." -#: access/transam/xlogrecovery.c:4712 +#: access/transam/xlogrecovery.c:4722 #, c-format msgid "" "You can then restart the server after making the necessary configuration " @@ -4224,24 +4247,24 @@ msgstr "" "Затем вы можете перезапустить сервер после внесения необходимых изменений " "конфигурации." -#: access/transam/xlogrecovery.c:4723 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "повышение невозможно из-за отсутствия достаточных значений параметров" -#: access/transam/xlogrecovery.c:4733 +#: access/transam/xlogrecovery.c:4743 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "" "Перезапустите сервер после внесения необходимых изменений конфигурации." -#: access/transam/xlogrecovery.c:4757 +#: access/transam/xlogrecovery.c:4767 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "" "восстановление прервано из-за отсутствия достаточных значений параметров" -#: access/transam/xlogrecovery.c:4763 +#: access/transam/xlogrecovery.c:4773 #, c-format msgid "" "You can restart the server after making the necessary configuration changes." @@ -4249,14 +4272,14 @@ msgstr "" "Вы можете перезапустить сервер после внесения необходимых изменений " "конфигурации." -#: access/transam/xlogrecovery.c:4783 access/transam/xlogrecovery.c:4785 +#: access/transam/xlogrecovery.c:4793 access/transam/xlogrecovery.c:4795 #: catalog/dependency.c:1153 catalog/dependency.c:1160 #: catalog/dependency.c:1171 commands/tablecmds.c:1519 #: commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:225 commands/view.c:441 executor/execExprInterp.c:5211 +#: commands/vacuum.c:226 commands/view.c:441 executor/execExprInterp.c:5211 #: executor/execExprInterp.c:5219 libpq/auth.c:320 -#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1670 -#: replication/slot.c:2742 replication/slot.c:2744 replication/syncrep.c:1079 +#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1705 +#: replication/slot.c:2783 replication/slot.c:2785 replication/syncrep.c:1079 #: storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 #: storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 #: utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 @@ -4265,12 +4288,12 @@ msgstr "" msgid "%s" msgstr "%s" -#: access/transam/xlogrecovery.c:4815 +#: access/transam/xlogrecovery.c:4825 #, c-format msgid "multiple recovery targets specified" msgstr "указано несколько целей восстановления" -#: access/transam/xlogrecovery.c:4816 +#: access/transam/xlogrecovery.c:4826 #, c-format msgid "" "At most one of \"recovery_target\", \"recovery_target_lsn\", " @@ -4281,17 +4304,17 @@ msgstr "" "\"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", " "\"recovery_target_xid\"." -#: access/transam/xlogrecovery.c:4827 +#: access/transam/xlogrecovery.c:4837 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "Единственное допустимое значение: \"immediate\"." -#: access/transam/xlogrecovery.c:4981 +#: access/transam/xlogrecovery.c:4991 #, c-format msgid "Timestamp out of range: \"%s\"." msgstr "Timestamp вне диапазона: \"%s\"." -#: access/transam/xlogrecovery.c:5026 +#: access/transam/xlogrecovery.c:5036 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "Значение \"recovery_target_timeline\" не является допустимым числом." @@ -4612,13 +4635,13 @@ msgstr "" msgid "The first unsummarized LSN in this range is %X/%X." msgstr "Первый необобщённый LSN в этом диапазоне: %X/%X." -#: backup/basebackup_incremental.c:934 +#: backup/basebackup_incremental.c:948 #, c-format msgid "backup manifest version 1 does not support incremental backup" msgstr "" "с версией 1 манифеста копии инкрементальное копирование не поддерживается" -#: backup/basebackup_incremental.c:952 +#: backup/basebackup_incremental.c:966 #, c-format msgid "" "system identifier in backup manifest is %, but database system " @@ -4655,7 +4678,7 @@ msgstr "" #: backup/basebackup_server.c:102 commands/dbcommands.c:478 #: commands/tablespace.c:157 commands/tablespace.c:173 -#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2246 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2287 #: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" @@ -4674,7 +4697,7 @@ msgstr "ошибка при обращении к каталогу \"%s\": %m" #: backup/basebackup_server.c:175 backup/basebackup_server.c:182 #: backup/basebackup_server.c:268 backup/basebackup_server.c:275 #: backup/walsummary.c:312 storage/smgr/md.c:519 storage/smgr/md.c:526 -#: storage/smgr/md.c:608 storage/smgr/md.c:630 storage/smgr/md.c:1123 +#: storage/smgr/md.c:619 storage/smgr/md.c:641 storage/smgr/md.c:1134 #, c-format msgid "Check free disk space." msgstr "Проверьте, есть ли место на диске." @@ -4885,19 +4908,13 @@ msgstr "права по умолчанию нельзя определить д msgid "permission denied to change default privileges" msgstr "нет полномочий для изменения прав доступа по умолчанию" -#: catalog/aclchk.c:1211 +#: catalog/aclchk.c:1211 catalog/aclchk.c:1222 #, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgstr "предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON SCHEMAS" +msgid "cannot use IN SCHEMA clause when using %s" +msgstr "предложение IN SCHEMA нельзя использовать в %s" -#: catalog/aclchk.c:1221 -#, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" -msgstr "" -"предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON LARGE OBJECTS" - -#: catalog/aclchk.c:1575 catalog/catalog.c:684 catalog/heap.c:2621 -#: catalog/heap.c:2940 catalog/objectaddress.c:1528 +#: catalog/aclchk.c:1577 catalog/catalog.c:684 catalog/heap.c:2621 +#: catalog/heap.c:2941 catalog/objectaddress.c:1528 #: catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1039 #: commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 #: commands/tablecmds.c:8130 commands/tablecmds.c:8259 @@ -4917,17 +4934,17 @@ msgstr "" msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "столбец \"%s\" в таблице \"%s\" не существует" -#: catalog/aclchk.c:1820 +#: catalog/aclchk.c:1822 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\" - это индекс" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16146 commands/tablecmds.c:19675 +#: catalog/aclchk.c:1829 commands/tablecmds.c:16146 commands/tablecmds.c:19675 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\" - это составной тип" -#: catalog/aclchk.c:1835 catalog/objectaddress.c:1368 commands/tablecmds.c:266 +#: catalog/aclchk.c:1837 catalog/objectaddress.c:1368 commands/tablecmds.c:266 #: commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 #: utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 #: utils/adt/acl.c:2283 @@ -4935,34 +4952,34 @@ msgstr "\"%s\" - это составной тип" msgid "\"%s\" is not a sequence" msgstr "\"%s\" - это не последовательность" -#: catalog/aclchk.c:1873 +#: catalog/aclchk.c:1875 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "" "для последовательности \"%s\" применимы только права USAGE, SELECT и UPDATE" -#: catalog/aclchk.c:1890 +#: catalog/aclchk.c:1892 #, c-format msgid "invalid privilege type %s for table" msgstr "право %s неприменимо для таблиц" -#: catalog/aclchk.c:2055 +#: catalog/aclchk.c:2057 #, c-format msgid "invalid privilege type %s for column" msgstr "право %s неприменимо для столбцов" -#: catalog/aclchk.c:2068 +#: catalog/aclchk.c:2070 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "для последовательности \"%s\" применимо только право SELECT" # TO REVIEW -#: catalog/aclchk.c:2259 +#: catalog/aclchk.c:2261 #, c-format msgid "language \"%s\" is not trusted" msgstr "язык \"%s\" не является доверенным" -#: catalog/aclchk.c:2261 +#: catalog/aclchk.c:2263 #, c-format msgid "" "GRANT and REVOKE are not allowed on untrusted languages, because only " @@ -4971,396 +4988,396 @@ msgstr "" "GRANT и REVOKE не допускаются для недоверенных языков, так как использовать " "такие языки могут только суперпользователи." -#: catalog/aclchk.c:2412 +#: catalog/aclchk.c:2414 #, c-format msgid "cannot set privileges of array types" msgstr "для типов массивов нельзя определить права" -#: catalog/aclchk.c:2413 +#: catalog/aclchk.c:2415 #, c-format msgid "Set the privileges of the element type instead." msgstr "Вместо этого установите права для типа элемента." -#: catalog/aclchk.c:2417 +#: catalog/aclchk.c:2419 #, c-format msgid "cannot set privileges of multirange types" msgstr "для мультидиапазонных типов нельзя определить права" -#: catalog/aclchk.c:2418 +#: catalog/aclchk.c:2420 #, c-format msgid "Set the privileges of the range type instead." msgstr "Вместо этого установите права для диапазонного типа." -#: catalog/aclchk.c:2601 +#: catalog/aclchk.c:2603 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "нераспознанное право: \"%s\"" -#: catalog/aclchk.c:2668 +#: catalog/aclchk.c:2670 #, c-format msgid "permission denied for aggregate %s" msgstr "нет доступа к агрегату %s" -#: catalog/aclchk.c:2671 +#: catalog/aclchk.c:2673 #, c-format msgid "permission denied for collation %s" msgstr "нет доступа к правилу сортировки %s" -#: catalog/aclchk.c:2674 +#: catalog/aclchk.c:2676 #, c-format msgid "permission denied for column %s" msgstr "нет доступа к столбцу %s" -#: catalog/aclchk.c:2677 +#: catalog/aclchk.c:2679 #, c-format msgid "permission denied for conversion %s" msgstr "нет доступа к преобразованию %s" -#: catalog/aclchk.c:2680 +#: catalog/aclchk.c:2682 #, c-format msgid "permission denied for database %s" msgstr "нет доступа к базе данных %s" -#: catalog/aclchk.c:2683 +#: catalog/aclchk.c:2685 #, c-format msgid "permission denied for domain %s" msgstr "нет доступа к домену %s" -#: catalog/aclchk.c:2686 +#: catalog/aclchk.c:2688 #, c-format msgid "permission denied for event trigger %s" msgstr "нет доступа к событийному триггеру %s" -#: catalog/aclchk.c:2689 +#: catalog/aclchk.c:2691 #, c-format msgid "permission denied for extension %s" msgstr "нет доступа к расширению %s" -#: catalog/aclchk.c:2692 +#: catalog/aclchk.c:2694 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "нет доступа к обёртке сторонних данных %s" -#: catalog/aclchk.c:2695 +#: catalog/aclchk.c:2697 #, c-format msgid "permission denied for foreign server %s" msgstr "нет доступа к стороннему серверу %s" -#: catalog/aclchk.c:2698 +#: catalog/aclchk.c:2700 #, c-format msgid "permission denied for foreign table %s" msgstr "нет доступа к сторонней таблице %s" -#: catalog/aclchk.c:2701 +#: catalog/aclchk.c:2703 #, c-format msgid "permission denied for function %s" msgstr "нет доступа к функции %s" -#: catalog/aclchk.c:2704 +#: catalog/aclchk.c:2706 #, c-format msgid "permission denied for index %s" msgstr "нет доступа к индексу %s" -#: catalog/aclchk.c:2707 +#: catalog/aclchk.c:2709 #, c-format msgid "permission denied for language %s" msgstr "нет доступа к языку %s" -#: catalog/aclchk.c:2710 +#: catalog/aclchk.c:2712 #, c-format msgid "permission denied for large object %s" msgstr "нет доступа к большому объекту %s" -#: catalog/aclchk.c:2713 +#: catalog/aclchk.c:2715 #, c-format msgid "permission denied for materialized view %s" msgstr "нет доступа к материализованному представлению %s" -#: catalog/aclchk.c:2716 +#: catalog/aclchk.c:2718 #, c-format msgid "permission denied for operator class %s" msgstr "нет доступа к классу операторов %s" -#: catalog/aclchk.c:2719 +#: catalog/aclchk.c:2721 #, c-format msgid "permission denied for operator %s" msgstr "нет доступа к оператору %s" -#: catalog/aclchk.c:2722 +#: catalog/aclchk.c:2724 #, c-format msgid "permission denied for operator family %s" msgstr "нет доступа к семейству операторов %s" -#: catalog/aclchk.c:2725 +#: catalog/aclchk.c:2727 #, c-format msgid "permission denied for parameter %s" msgstr "нет доступа к параметру %s" -#: catalog/aclchk.c:2728 +#: catalog/aclchk.c:2730 #, c-format msgid "permission denied for policy %s" msgstr "нет доступа к политике %s" -#: catalog/aclchk.c:2731 +#: catalog/aclchk.c:2733 #, c-format msgid "permission denied for procedure %s" msgstr "нет доступа к процедуре %s" -#: catalog/aclchk.c:2734 +#: catalog/aclchk.c:2736 #, c-format msgid "permission denied for publication %s" msgstr "нет доступа к публикации %s" -#: catalog/aclchk.c:2737 +#: catalog/aclchk.c:2739 #, c-format msgid "permission denied for routine %s" msgstr "нет доступа к подпрограмме %s" -#: catalog/aclchk.c:2740 +#: catalog/aclchk.c:2742 #, c-format msgid "permission denied for schema %s" msgstr "нет доступа к схеме %s" -#: catalog/aclchk.c:2743 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2745 commands/sequence.c:654 commands/sequence.c:880 #: commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 #, c-format msgid "permission denied for sequence %s" msgstr "нет доступа к последовательности %s" -#: catalog/aclchk.c:2746 +#: catalog/aclchk.c:2748 #, c-format msgid "permission denied for statistics object %s" msgstr "нет доступа к объекту статистики %s" -#: catalog/aclchk.c:2749 +#: catalog/aclchk.c:2751 #, c-format msgid "permission denied for subscription %s" msgstr "нет доступа к подписке %s" -#: catalog/aclchk.c:2752 +#: catalog/aclchk.c:2754 #, c-format msgid "permission denied for table %s" msgstr "нет доступа к таблице %s" -#: catalog/aclchk.c:2755 +#: catalog/aclchk.c:2757 #, c-format msgid "permission denied for tablespace %s" msgstr "нет доступа к табличному пространству %s" -#: catalog/aclchk.c:2758 +#: catalog/aclchk.c:2760 #, c-format msgid "permission denied for text search configuration %s" msgstr "нет доступа к конфигурации текстового поиска %s" -#: catalog/aclchk.c:2761 +#: catalog/aclchk.c:2763 #, c-format msgid "permission denied for text search dictionary %s" msgstr "нет доступа к словарю текстового поиска %s" -#: catalog/aclchk.c:2764 +#: catalog/aclchk.c:2766 #, c-format msgid "permission denied for type %s" msgstr "нет доступа к типу %s" -#: catalog/aclchk.c:2767 +#: catalog/aclchk.c:2769 #, c-format msgid "permission denied for view %s" msgstr "нет доступа к представлению %s" -#: catalog/aclchk.c:2803 +#: catalog/aclchk.c:2805 #, c-format msgid "must be owner of aggregate %s" msgstr "нужно быть владельцем агрегата %s" -#: catalog/aclchk.c:2806 +#: catalog/aclchk.c:2808 #, c-format msgid "must be owner of collation %s" msgstr "нужно быть владельцем правила сортировки %s" -#: catalog/aclchk.c:2809 +#: catalog/aclchk.c:2811 #, c-format msgid "must be owner of conversion %s" msgstr "нужно быть владельцем преобразования %s" -#: catalog/aclchk.c:2812 +#: catalog/aclchk.c:2814 #, c-format msgid "must be owner of database %s" msgstr "нужно быть владельцем базы %s" -#: catalog/aclchk.c:2815 +#: catalog/aclchk.c:2817 #, c-format msgid "must be owner of domain %s" msgstr "нужно быть владельцем домена %s" -#: catalog/aclchk.c:2818 +#: catalog/aclchk.c:2820 #, c-format msgid "must be owner of event trigger %s" msgstr "нужно быть владельцем событийного триггера %s" -#: catalog/aclchk.c:2821 +#: catalog/aclchk.c:2823 #, c-format msgid "must be owner of extension %s" msgstr "нужно быть владельцем расширения %s" -#: catalog/aclchk.c:2824 +#: catalog/aclchk.c:2826 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "нужно быть владельцем обёртки сторонних данных %s" -#: catalog/aclchk.c:2827 +#: catalog/aclchk.c:2829 #, c-format msgid "must be owner of foreign server %s" msgstr "нужно быть \"владельцем\" стороннего сервера %s" -#: catalog/aclchk.c:2830 +#: catalog/aclchk.c:2832 #, c-format msgid "must be owner of foreign table %s" msgstr "нужно быть владельцем сторонней таблицы %s" -#: catalog/aclchk.c:2833 +#: catalog/aclchk.c:2835 #, c-format msgid "must be owner of function %s" msgstr "нужно быть владельцем функции %s" -#: catalog/aclchk.c:2836 +#: catalog/aclchk.c:2838 #, c-format msgid "must be owner of index %s" msgstr "нужно быть владельцем индекса %s" -#: catalog/aclchk.c:2839 +#: catalog/aclchk.c:2841 #, c-format msgid "must be owner of language %s" msgstr "нужно быть владельцем языка %s" -#: catalog/aclchk.c:2842 +#: catalog/aclchk.c:2844 #, c-format msgid "must be owner of large object %s" msgstr "нужно быть владельцем большого объекта %s" -#: catalog/aclchk.c:2845 +#: catalog/aclchk.c:2847 #, c-format msgid "must be owner of materialized view %s" msgstr "нужно быть владельцем материализованного представления %s" -#: catalog/aclchk.c:2848 +#: catalog/aclchk.c:2850 #, c-format msgid "must be owner of operator class %s" msgstr "нужно быть владельцем класса операторов %s" -#: catalog/aclchk.c:2851 +#: catalog/aclchk.c:2853 #, c-format msgid "must be owner of operator %s" msgstr "нужно быть владельцем оператора %s" -#: catalog/aclchk.c:2854 +#: catalog/aclchk.c:2856 #, c-format msgid "must be owner of operator family %s" msgstr "нужно быть владельцем семейства операторов %s" -#: catalog/aclchk.c:2857 +#: catalog/aclchk.c:2859 #, c-format msgid "must be owner of procedure %s" msgstr "нужно быть владельцем процедуры %s" -#: catalog/aclchk.c:2860 +#: catalog/aclchk.c:2862 #, c-format msgid "must be owner of publication %s" msgstr "нужно быть владельцем публикации %s" -#: catalog/aclchk.c:2863 +#: catalog/aclchk.c:2865 #, c-format msgid "must be owner of routine %s" msgstr "нужно быть владельцем подпрограммы %s" -#: catalog/aclchk.c:2866 +#: catalog/aclchk.c:2868 #, c-format msgid "must be owner of sequence %s" msgstr "нужно быть владельцем последовательности %s" -#: catalog/aclchk.c:2869 +#: catalog/aclchk.c:2871 #, c-format msgid "must be owner of subscription %s" msgstr "нужно быть владельцем подписки %s" -#: catalog/aclchk.c:2872 +#: catalog/aclchk.c:2874 #, c-format msgid "must be owner of table %s" msgstr "нужно быть владельцем таблицы %s" -#: catalog/aclchk.c:2875 +#: catalog/aclchk.c:2877 #, c-format msgid "must be owner of type %s" msgstr "нужно быть владельцем типа %s" -#: catalog/aclchk.c:2878 +#: catalog/aclchk.c:2880 #, c-format msgid "must be owner of view %s" msgstr "нужно быть владельцем представления %s" -#: catalog/aclchk.c:2881 +#: catalog/aclchk.c:2883 #, c-format msgid "must be owner of schema %s" msgstr "нужно быть владельцем схемы %s" -#: catalog/aclchk.c:2884 +#: catalog/aclchk.c:2886 #, c-format msgid "must be owner of statistics object %s" msgstr "нужно быть владельцем объекта статистики %s" -#: catalog/aclchk.c:2887 +#: catalog/aclchk.c:2889 #, c-format msgid "must be owner of tablespace %s" msgstr "нужно быть владельцем табличного пространства %s" -#: catalog/aclchk.c:2890 +#: catalog/aclchk.c:2892 #, c-format msgid "must be owner of text search configuration %s" msgstr "нужно быть владельцем конфигурации текстового поиска %s" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2895 #, c-format msgid "must be owner of text search dictionary %s" msgstr "нужно быть владельцем словаря текстового поиска %s" -#: catalog/aclchk.c:2907 +#: catalog/aclchk.c:2909 #, c-format msgid "must be owner of relation %s" msgstr "нужно быть владельцем отношения %s" -#: catalog/aclchk.c:2953 +#: catalog/aclchk.c:2955 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "нет доступа к столбцу \"%s\" отношения \"%s\"" -#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 +#: catalog/aclchk.c:3189 catalog/aclchk.c:3208 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "атрибут %d отношения с OID %u не существует" -#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 +#: catalog/aclchk.c:3246 catalog/aclchk.c:3309 catalog/aclchk.c:3948 #, c-format msgid "relation with OID %u does not exist" msgstr "отношение с OID %u не существует" -#: catalog/aclchk.c:3492 +#: catalog/aclchk.c:3494 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "ACL параметра с OID %u не существует" -#: catalog/aclchk.c:3571 catalog/objectaddress.c:1055 +#: catalog/aclchk.c:3573 catalog/objectaddress.c:1055 #: catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 #: storage/large_object/inv_api.c:247 #, c-format msgid "large object %u does not exist" msgstr "большой объект %u не существует" -#: catalog/aclchk.c:3665 commands/collationcmds.c:849 -#: commands/publicationcmds.c:1846 +#: catalog/aclchk.c:3667 commands/collationcmds.c:849 +#: commands/publicationcmds.c:1851 #, c-format msgid "schema with OID %u does not exist" msgstr "схема с OID %u не существует" -#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 +#: catalog/aclchk.c:3741 catalog/aclchk.c:3768 catalog/aclchk.c:3797 #: utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" @@ -5560,7 +5577,7 @@ msgid "virtual generated column \"%s\" cannot have a user-defined type" msgstr "" "виртуальный генерируемый столбец \"%s\" не может иметь пользовательский тип" -#: catalog/heap.c:674 catalog/heap.c:3294 +#: catalog/heap.c:674 catalog/heap.c:3295 #, c-format msgid "" "Virtual generated columns that make use of user-defined types are not yet " @@ -5635,32 +5652,32 @@ msgstr "" msgid "check constraint \"%s\" already exists" msgstr "ограничение-проверка \"%s\" уже существует" -#: catalog/heap.c:2626 catalog/heap.c:2946 +#: catalog/heap.c:2626 catalog/heap.c:2947 #, c-format msgid "cannot add not-null constraint on system column \"%s\"" msgstr "добавить ограничение NOT NULL для системного столбца \"%s\" нельзя" -#: catalog/heap.c:2653 catalog/heap.c:2779 catalog/heap.c:3030 -#: catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9821 +#: catalog/heap.c:2654 catalog/heap.c:2780 catalog/heap.c:3031 +#: catalog/index.c:915 catalog/pg_constraint.c:1025 commands/tablecmds.c:9821 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "ограничение \"%s\" для отношения \"%s\" уже существует" -#: catalog/heap.c:2786 +#: catalog/heap.c:2787 #, c-format msgid "" "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\"" msgstr "" "ограничение \"%s\" конфликтует с ненаследуемым ограничением таблицы \"%s\"" -#: catalog/heap.c:2797 +#: catalog/heap.c:2798 #, c-format msgid "" "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgstr "" "ограничение \"%s\" конфликтует с наследуемым ограничением таблицы \"%s\"" -#: catalog/heap.c:2807 +#: catalog/heap.c:2808 #, c-format msgid "" "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\"" @@ -5668,7 +5685,7 @@ msgstr "" "ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением " "таблицы \"%s\"" -#: catalog/heap.c:2819 +#: catalog/heap.c:2820 #, c-format msgid "" "constraint \"%s\" conflicts with NOT ENFORCED constraint on relation \"%s\"" @@ -5676,12 +5693,12 @@ msgstr "" "ограничение \"%s\" конфликтует с неконтролируемым (NOT ENFORCED) " "ограничением таблицы \"%s\"" -#: catalog/heap.c:2824 +#: catalog/heap.c:2825 #, c-format msgid "merging constraint \"%s\" with inherited definition" msgstr "слияние ограничения \"%s\" с унаследованным определением" -#: catalog/heap.c:2848 catalog/pg_constraint.c:786 catalog/pg_constraint.c:1137 +#: catalog/heap.c:2849 catalog/pg_constraint.c:803 catalog/pg_constraint.c:1154 #: commands/tablecmds.c:3179 commands/tablecmds.c:3499 #: commands/tablecmds.c:7286 commands/tablecmds.c:7967 #: commands/tablecmds.c:17583 commands/tablecmds.c:17765 @@ -5689,61 +5706,61 @@ msgstr "слияние ограничения \"%s\" с унаследованн msgid "too many inheritance parents" msgstr "слишком много родителей в иерархии наследования" -#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 +#: catalog/heap.c:2966 parser/parse_utilcmd.c:2655 #, c-format msgid "" "conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" msgstr "" "конфликтующее объявление NO INHERIT для ограничения NOT NULL столбца \"%s\"" -#: catalog/heap.c:2979 +#: catalog/heap.c:2980 #, c-format msgid "conflicting not-null constraint names \"%s\" and \"%s\"" msgstr "конфликтующие имена ограничений NOT NULL \"%s\" и \"%s\"" -#: catalog/heap.c:3009 +#: catalog/heap.c:3010 #, c-format msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" msgstr "" "добавить ограничение NOT NULL со свойством NO INHERIT для столбца \"%s\" " "нельзя" -#: catalog/heap.c:3011 +#: catalog/heap.c:3012 #, c-format msgid "The column has an inherited not-null constraint." msgstr "Столбец имеет наследуемое ограничение NOT NULL." -#: catalog/heap.c:3201 +#: catalog/heap.c:3202 #, c-format msgid "cannot use generated column \"%s\" in column generation expression" msgstr "" "использовать генерируемый столбец \"%s\" в выражении генерируемого столбца " "нельзя" -#: catalog/heap.c:3203 +#: catalog/heap.c:3204 #, c-format msgid "A generated column cannot reference another generated column." msgstr "" "Генерируемый столбец не может ссылаться на другой генерируемый столбец." -#: catalog/heap.c:3209 +#: catalog/heap.c:3210 #, c-format msgid "cannot use whole-row variable in column generation expression" msgstr "" "в выражении генерируемого столбца нельзя использовать переменные «вся строка»" -#: catalog/heap.c:3210 +#: catalog/heap.c:3211 #, c-format msgid "This would cause the generated column to depend on its own value." msgstr "" "Это сделало бы генерируемый столбец зависимым от собственного значения." -#: catalog/heap.c:3277 +#: catalog/heap.c:3278 #, c-format msgid "generation expression uses user-defined function" msgstr "генерирующее выражение использует пользовательскую функцию" -#: catalog/heap.c:3278 +#: catalog/heap.c:3279 #, c-format msgid "" "Virtual generated columns that make use of user-defined functions are not " @@ -5752,39 +5769,39 @@ msgstr "" "Виртуальные генерируемые столбцы, использующие пользовательские функции, на " "данный момент не поддерживаются." -#: catalog/heap.c:3293 +#: catalog/heap.c:3294 #, c-format msgid "generation expression uses user-defined type" msgstr "генерирующее выражение использует пользовательский тип" -#: catalog/heap.c:3345 +#: catalog/heap.c:3346 #, c-format msgid "generation expression is not immutable" msgstr "генерирующее выражение не является постоянным" -#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 +#: catalog/heap.c:3378 rewrite/rewriteHandler.c:1288 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "столбец \"%s\" имеет тип %s, но тип выражения по умолчанию %s" -#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 +#: catalog/heap.c:3383 commands/prepare.c:334 parser/analyze.c:2906 #: parser/parse_target.c:595 parser/parse_target.c:885 -#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1290 +#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1293 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "Перепишите выражение или преобразуйте его тип." -#: catalog/heap.c:3429 +#: catalog/heap.c:3430 #, c-format msgid "only table \"%s\" can be referenced in check constraint" msgstr "в ограничении-проверке можно ссылаться только на таблицу \"%s\"" -#: catalog/heap.c:3735 +#: catalog/heap.c:3736 #, c-format msgid "unsupported ON COMMIT and foreign key combination" msgstr "неподдерживаемое сочетание внешнего ключа с ON COMMIT" -#: catalog/heap.c:3736 +#: catalog/heap.c:3737 #, c-format msgid "" "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT " @@ -5792,17 +5809,17 @@ msgid "" msgstr "" "Таблица \"%s\" ссылается на \"%s\", и для них задан разный режим ON COMMIT." -#: catalog/heap.c:3741 +#: catalog/heap.c:3742 #, c-format msgid "cannot truncate a table referenced in a foreign key constraint" msgstr "опустошить таблицу, на которую ссылается внешний ключ, нельзя" -#: catalog/heap.c:3742 +#: catalog/heap.c:3743 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "Таблица \"%s\" ссылается на \"%s\"." -#: catalog/heap.c:3744 +#: catalog/heap.c:3745 #, c-format msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "" @@ -5911,7 +5928,7 @@ msgstr "" "пропускается" #: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 -#: commands/trigger.c:5817 +#: commands/trigger.c:5838 #, c-format msgid "cross-database references are not implemented: \"%s.%s.%s\"" msgstr "ссылки между базами не реализованы: \"%s.%s.%s\"" @@ -6794,7 +6811,7 @@ msgstr "правило сортировки \"%s\" уже существует" msgid "collation \"%s\" for encoding \"%s\" already exists" msgstr "правило сортировки \"%s\" для кодировки \"%s\" уже существует" -#: catalog/pg_constraint.c:763 commands/tablecmds.c:7952 +#: catalog/pg_constraint.c:764 commands/tablecmds.c:7952 #, c-format msgid "" "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation " @@ -6803,45 +6820,57 @@ msgstr "" "изменить статус NO INHERIT ограничения NOT NULL \"%s\" для отношения \"%s\" " "нельзя" -#: catalog/pg_constraint.c:765 commands/tablecmds.c:9584 +#: catalog/pg_constraint.c:766 commands/tablecmds.c:9584 #, c-format msgid "You might need to make the existing constraint inheritable using %s." msgstr "" "Возможно, существующее ограничение нужно сделать наследуемым, выполнив %s." -#: catalog/pg_constraint.c:775 commands/tablecmds.c:8301 +#: catalog/pg_constraint.c:776 commands/tablecmds.c:8301 #, c-format msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" msgstr "" "несовместимое непроверенное (NOT VALID) ограничение \"%s\" в отношении \"%s\"" -#: catalog/pg_constraint.c:777 commands/tablecmds.c:8303 +#: catalog/pg_constraint.c:778 commands/tablecmds.c:8303 #: commands/tablecmds.c:9596 #, c-format msgid "You might need to validate it using %s." msgstr "Возможно, следует проверить его, выполнив %s." -#: catalog/pg_constraint.c:1016 +#: catalog/pg_constraint.c:792 +#, c-format +msgid "" +"cannot create not-null constraint \"%s\" on column \"%s\" of table \"%s\"" +msgstr "" +"создать ограничение NOT NULL \"%s\" для столбца \"%s\" таблицы \"%s\" нельзя" + +#: catalog/pg_constraint.c:794 +#, c-format +msgid "A not-null constraint named \"%s\" already exists for this column." +msgstr "Ограничение-проверка NOT NULL \"%s\" для этого столбца уже существует." + +#: catalog/pg_constraint.c:1033 #, c-format msgid "constraint \"%s\" for domain %s already exists" msgstr "ограничение \"%s\" для домена %s уже существует" -#: catalog/pg_constraint.c:1217 catalog/pg_constraint.c:1310 +#: catalog/pg_constraint.c:1234 catalog/pg_constraint.c:1327 #, c-format msgid "constraint \"%s\" for table \"%s\" does not exist" msgstr "ограничение \"%s\" для таблицы \"%s\" не существует" -#: catalog/pg_constraint.c:1410 +#: catalog/pg_constraint.c:1427 #, c-format msgid "constraint \"%s\" for domain %s does not exist" msgstr "ограничение \"%s\" для домена %s не существует" -#: catalog/pg_constraint.c:1664 +#: catalog/pg_constraint.c:1681 #, c-format msgid "invalid type for PERIOD part of foreign key" msgstr "неправильный тип для компонента PERIOD внешнего ключа" -#: catalog/pg_constraint.c:1665 +#: catalog/pg_constraint.c:1682 #, c-format msgid "Only range and multirange are supported." msgstr "Поддерживаются только диапазоны и мультидиапазоны." @@ -7491,7 +7520,7 @@ msgstr "сервер \"%s\" уже существует" msgid "language \"%s\" already exists" msgstr "язык \"%s\" уже существует" -#: commands/alter.c:95 commands/publicationcmds.c:865 +#: commands/alter.c:95 commands/publicationcmds.c:870 #, c-format msgid "publication \"%s\" already exists" msgstr "публикация \"%s\" уже существует" @@ -7657,22 +7686,22 @@ msgstr "" "пропускается анализ дерева наследования \"%s.%s\" --- это дерево " "наследования не содержит анализируемых дочерних таблиц" -#: commands/async.c:612 +#: commands/async.c:611 #, c-format msgid "channel name cannot be empty" msgstr "имя канала не может быть пустым" -#: commands/async.c:618 +#: commands/async.c:617 #, c-format msgid "channel name too long" msgstr "слишком длинное имя канала" -#: commands/async.c:623 +#: commands/async.c:622 #, c-format msgid "payload string too long" msgstr "слишком длинная строка сообщения-нагрузки" -#: commands/async.c:842 +#: commands/async.c:841 #, c-format msgid "" "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY" @@ -7680,7 +7709,7 @@ msgstr "" "выполнить PREPARE для транзакции с командами LISTEN, UNLISTEN или NOTIFY " "нельзя" -#: commands/async.c:946 +#: commands/async.c:945 #, c-format msgid "too many notifications in the NOTIFY queue" msgstr "слишком много уведомлений в очереди NOTIFY" @@ -7707,10 +7736,12 @@ msgstr "" "Очередь NOTIFY можно будет освободить, только когда этот процесс завершит " "текущую транзакцию." -#: commands/cluster.c:127 +#: commands/cluster.c:127 commands/dbcommands.c:2356 +#: commands/explain_state.c:165 commands/indexcmds.c:2846 commands/vacuum.c:234 +#: commands/vacuum.c:308 #, c-format -msgid "unrecognized CLUSTER option \"%s\"" -msgstr "нераспознанный параметр CLUSTER: \"%s\"" +msgid "unrecognized %s option \"%s\"" +msgstr "нераспознанный параметр %s \"%s\"" #: commands/cluster.c:158 commands/cluster.c:421 #, c-format @@ -7811,9 +7842,9 @@ msgstr "атрибут COLLATION \"%s\" не распознан" #: commands/collationcmds.c:123 commands/collationcmds.c:129 #: commands/define.c:375 commands/tablecmds.c:8394 #: replication/pgoutput/pgoutput.c:321 replication/pgoutput/pgoutput.c:344 -#: replication/pgoutput/pgoutput.c:358 replication/pgoutput/pgoutput.c:368 -#: replication/pgoutput/pgoutput.c:378 replication/pgoutput/pgoutput.c:388 -#: replication/pgoutput/pgoutput.c:400 replication/walsender.c:1137 +#: replication/pgoutput/pgoutput.c:362 replication/pgoutput/pgoutput.c:372 +#: replication/pgoutput/pgoutput.c:382 replication/pgoutput/pgoutput.c:392 +#: replication/pgoutput/pgoutput.c:404 replication/walsender.c:1137 #: replication/walsender.c:1159 replication/walsender.c:1169 #: replication/walsender.c:1178 replication/walsender.c:1420 #: replication/walsender.c:1429 @@ -7895,17 +7926,17 @@ msgstr "нельзя обновить версию правила сортиро msgid "Use %s instead." msgstr "Выполните %s." -#: commands/collationcmds.c:476 commands/dbcommands.c:2605 +#: commands/collationcmds.c:476 commands/dbcommands.c:2606 #, c-format msgid "changing version from %s to %s" msgstr "изменение версии с %s на %s" -#: commands/collationcmds.c:491 commands/dbcommands.c:2618 +#: commands/collationcmds.c:491 commands/dbcommands.c:2619 #, c-format msgid "version has not changed" msgstr "версия не была изменена" -#: commands/collationcmds.c:524 commands/dbcommands.c:2788 +#: commands/collationcmds.c:524 commands/dbcommands.c:2789 #: utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" @@ -7929,8 +7960,8 @@ msgstr "пригодные системные локали не найдены" #: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 #: commands/dbcommands.c:2034 commands/dbcommands.c:2232 -#: commands/dbcommands.c:2472 commands/dbcommands.c:2565 -#: commands/dbcommands.c:2689 commands/dbcommands.c:3200 +#: commands/dbcommands.c:2473 commands/dbcommands.c:2566 +#: commands/dbcommands.c:2690 commands/dbcommands.c:3201 #: utils/init/postinit.c:1016 utils/init/postinit.c:1080 #: utils/init/postinit.c:1153 #, c-format @@ -8037,7 +8068,7 @@ msgstr "генерируемые столбцы не поддерживаютс #: commands/copy.c:183 commands/tablecmds.c:14418 commands/tablecmds.c:19824 #: commands/tablecmds.c:19906 commands/trigger.c:660 -#: rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 +#: rewrite/rewriteHandler.c:952 rewrite/rewriteHandler.c:987 #, c-format msgid "Column \"%s\" is a generated column." msgstr "Столбец \"%s\" является генерируемым." @@ -8104,7 +8135,7 @@ msgstr "аргументом параметра \"%s\" должен быть с msgid "argument to option \"%s\" must be a valid encoding name" msgstr "аргументом параметра \"%s\" должно быть название допустимой кодировки" -#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2421 #, c-format msgid "option \"%s\" not recognized" msgstr "параметр \"%s\" не распознан" @@ -8207,7 +8238,7 @@ msgstr "столбец \"%s\" — генерируемый" msgid "Generated columns cannot be used in COPY." msgstr "Генерируемые столбцы нельзя использовать в COPY." -#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:239 +#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:260 #: commands/tablecmds.c:2593 commands/tablecmds.c:3101 #: commands/tablecmds.c:3930 parser/parse_relation.c:3798 #: parser/parse_relation.c:3808 parser/parse_relation.c:3826 @@ -8704,7 +8735,7 @@ msgstr "%s не является верным названием кодиров msgid "unrecognized locale provider: %s" msgstr "нераспознанный провайдер локали: %s" -#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2454 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" @@ -8725,7 +8756,7 @@ msgstr "шаблон базы данных \"%s\" не существует" msgid "cannot use invalid database \"%s\" as template" msgstr "использовать некорректную базу \"%s\" в качестве шаблона нельзя" -#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2484 #: utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." @@ -9077,38 +9108,33 @@ msgstr "" "Прежде чем выполнять эту команду, вы должны вернуть их назад в табличное " "пространство по умолчанию для этой базы данных." -#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 -#: commands/dbcommands.c:3338 commands/dbcommands.c:3452 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3039 +#: commands/dbcommands.c:3339 commands/dbcommands.c:3453 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "в старом каталоге базы данных \"%s\" могли остаться ненужные файлы" -#: commands/dbcommands.c:2356 -#, c-format -msgid "unrecognized DROP DATABASE option \"%s\"" -msgstr "нераспознанный параметр DROP DATABASE: \"%s\"" - -#: commands/dbcommands.c:2434 +#: commands/dbcommands.c:2435 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "параметр \"%s\" нельзя задать с другими параметрами" -#: commands/dbcommands.c:2482 +#: commands/dbcommands.c:2483 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "изменить свойства некорректной базы \"%s\" нельзя" -#: commands/dbcommands.c:2499 +#: commands/dbcommands.c:2500 #, c-format msgid "cannot disallow connections for current database" msgstr "запретить подключения к текущей базе данных нельзя" -#: commands/dbcommands.c:2729 +#: commands/dbcommands.c:2730 #, c-format msgid "permission denied to change owner of database" msgstr "нет прав для изменения владельца базы данных" -#: commands/dbcommands.c:3144 +#: commands/dbcommands.c:3145 #, c-format msgid "" "There are %d other session(s) and %d prepared transaction(s) using the " @@ -9117,7 +9143,7 @@ msgstr "" "С этой базой данных связаны другие сеансы (%d) и подготовленные транзакции " "(%d)." -#: commands/dbcommands.c:3147 +#: commands/dbcommands.c:3148 #, c-format msgid "There is %d other session using the database." msgid_plural "There are %d other sessions using the database." @@ -9125,7 +9151,7 @@ msgstr[0] "Эта база данных используется ещё в %d с msgstr[1] "Эта база данных используется ещё в %d сеансах." msgstr[2] "Эта база данных используется ещё в %d сеансах." -#: commands/dbcommands.c:3152 storage/ipc/procarray.c:3860 +#: commands/dbcommands.c:3153 storage/ipc/procarray.c:3860 #, c-format msgid "There is %d prepared transaction using the database." msgid_plural "There are %d prepared transactions using the database." @@ -9133,12 +9159,12 @@ msgstr[0] "С этой базой данных связана %d подгото msgstr[1] "С этой базой данных связаны %d подготовленные транзакции." msgstr[2] "С этой базой данных связаны %d подготовленных транзакций." -#: commands/dbcommands.c:3294 +#: commands/dbcommands.c:3295 #, c-format msgid "missing directory \"%s\"" msgstr "отсутствует каталог \"%s\"" -#: commands/dbcommands.c:3352 commands/tablespace.c:184 +#: commands/dbcommands.c:3353 commands/tablespace.c:184 #: commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" @@ -9218,7 +9244,7 @@ msgstr "правило сортировки \"%s\" не существует, п msgid "conversion \"%s\" does not exist, skipping" msgstr "преобразование \"%s\" не существует, пропускается" -#: commands/dropcmds.c:288 commands/statscmds.c:682 +#: commands/dropcmds.c:288 commands/statscmds.c:703 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "объект статистики \"%s\" не существует, пропускается" @@ -9415,14 +9441,10 @@ msgid "%s can only be called in an event trigger function" msgstr "%s можно вызывать только в событийной триггерной функции" #: commands/explain_state.c:133 commands/explain_state.c:158 +#: replication/walsender.c:1151 #, c-format -msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" -msgstr "нераспознанное значение параметра EXPLAIN \"%s\": \"%s\"" - -#: commands/explain_state.c:165 -#, c-format -msgid "unrecognized EXPLAIN option \"%s\"" -msgstr "нераспознанный параметр EXPLAIN: \"%s\"" +msgid "unrecognized value for %s option \"%s\": \"%s\"" +msgstr "нераспознанное значение для параметра %s \"%s\": \"%s\"" #: commands/explain_state.c:174 commands/explain_state.c:186 #: commands/explain_state.c:192 @@ -9432,10 +9454,8 @@ msgstr "параметр %s оператора EXPLAIN требует указа #: commands/explain_state.c:198 #, c-format -msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" -msgstr "" -"параметры ANALYZE и GENERIC_PLAN оператора EXPLAIN нельзя использовать " -"одновременно" +msgid "%s options %s and %s cannot be used together" +msgstr "параметры %s %s и %s исключают друг друга" #: commands/extension.c:177 commands/extension.c:3323 #, c-format @@ -10492,7 +10512,7 @@ msgid "could not determine which collation to use for index expression" msgstr "не удалось определить правило сортировки для индексного выражения" #: commands/indexcmds.c:2097 commands/tablecmds.c:19994 commands/typecmds.c:812 -#: parser/parse_expr.c:2806 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 +#: parser/parse_expr.c:2815 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 #: utils/adt/misc.c:630 #, c-format msgid "collations are not supported by type %s" @@ -10587,11 +10607,6 @@ msgstr "" "Не удалось перевести тип сравнения %d для семейства операторов \"%s\" метода " "доступа \"%s\"." -#: commands/indexcmds.c:2846 -#, c-format -msgid "unrecognized REINDEX option \"%s\"" -msgstr "нераспознанный параметр REINDEX: \"%s\"" - #: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" @@ -11067,7 +11082,7 @@ msgstr "атрибут оператора \"%s\" нельзя изменить" msgid "operator attribute \"%s\" cannot be changed if it has already been set" msgstr "атрибут оператора \"%s\" нельзя изменить, если он уже установлен" -#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:146 +#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:152 #: commands/tablecmds.c:1800 commands/tablecmds.c:2400 #: commands/tablecmds.c:3824 commands/tablecmds.c:6793 #: commands/tablecmds.c:10114 commands/tablecmds.c:19565 @@ -11175,38 +11190,38 @@ msgid "must be superuser to create custom procedural language" msgstr "" "для создания дополнительного процедурного языка нужно быть суперпользователем" -#: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 +#: commands/publicationcmds.c:135 libpq/auth-oauth.c:850 #: postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 #: utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "неверный формат списка в параметре \"%s\"" -#: commands/publicationcmds.c:149 +#: commands/publicationcmds.c:154 #, c-format msgid "unrecognized value for publication option \"%s\": \"%s\"" msgstr "нераспознанное значение параметра публикации \"%s\": \"%s\"" -#: commands/publicationcmds.c:170 +#: commands/publicationcmds.c:175 #, c-format msgid "unrecognized publication parameter: \"%s\"" msgstr "нераспознанный параметр репликации: \"%s\"" -#: commands/publicationcmds.c:211 +#: commands/publicationcmds.c:216 #, c-format msgid "no schema has been selected for CURRENT_SCHEMA" msgstr "для CURRENT_SCHEMA требуется, чтобы была выбрана схема" -#: commands/publicationcmds.c:592 +#: commands/publicationcmds.c:597 msgid "System columns are not allowed." msgstr "Системные столбцы не допускаются." -#: commands/publicationcmds.c:599 commands/publicationcmds.c:604 -#: commands/publicationcmds.c:621 +#: commands/publicationcmds.c:604 commands/publicationcmds.c:609 +#: commands/publicationcmds.c:626 msgid "User-defined operators are not allowed." msgstr "Пользовательские операторы не допускаются." -#: commands/publicationcmds.c:645 +#: commands/publicationcmds.c:650 msgid "" "Only columns, constants, built-in operators, built-in data types, built-in " "collations, and immutable built-in functions are allowed." @@ -11214,43 +11229,43 @@ msgstr "" "Допускаются только столбцы, константы, встроенные операторы, встроенные типы " "данных, встроенные правила сортировки и встроенные постоянные функции." -#: commands/publicationcmds.c:657 +#: commands/publicationcmds.c:662 msgid "User-defined types are not allowed." msgstr "Пользовательские типы не допускаются." -#: commands/publicationcmds.c:660 +#: commands/publicationcmds.c:665 msgid "User-defined or built-in mutable functions are not allowed." msgstr "Пользовательские или встроенные непостоянные функции не допускаются." -#: commands/publicationcmds.c:663 +#: commands/publicationcmds.c:668 msgid "User-defined collations are not allowed." msgstr "Пользовательские правила сортировки не допускаются." -#: commands/publicationcmds.c:673 +#: commands/publicationcmds.c:678 #, c-format msgid "invalid publication WHERE expression" msgstr "неверное выражение в предложении WHERE публикации" -#: commands/publicationcmds.c:726 +#: commands/publicationcmds.c:731 #, c-format msgid "cannot use publication WHERE clause for relation \"%s\"" msgstr "" "использовать в публикации предложение WHERE для отношения \"%s\" нельзя" -#: commands/publicationcmds.c:728 +#: commands/publicationcmds.c:733 #, c-format msgid "WHERE clause cannot be used for a partitioned table when %s is false." msgstr "" "Предложение WHERE нельзя использовать для секционированной таблицы, когда %s " "равен false." -#: commands/publicationcmds.c:801 commands/publicationcmds.c:815 +#: commands/publicationcmds.c:806 commands/publicationcmds.c:820 #, c-format msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" msgstr "" "использовать список столбцов отношения \"%s.%s\" в публикации \"%s\" нельзя" -#: commands/publicationcmds.c:804 +#: commands/publicationcmds.c:809 #, c-format msgid "" "Column lists cannot be specified in publications containing FOR TABLES IN " @@ -11259,7 +11274,7 @@ msgstr "" "Списки столбцов нельзя задавать в публикациях, содержащих элементы FOR " "TABLES IN SCHEMA." -#: commands/publicationcmds.c:818 +#: commands/publicationcmds.c:823 #, c-format msgid "" "Column lists cannot be specified for partitioned tables when %s is false." @@ -11267,34 +11282,34 @@ msgstr "" "Списки столбцов нельзя задавать для секционированных таблиц, когда %s равен " "false." -#: commands/publicationcmds.c:855 +#: commands/publicationcmds.c:860 #, c-format msgid "must be superuser to create FOR ALL TABLES publication" msgstr "для создания публикации всех таблиц нужно быть суперпользователем" -#: commands/publicationcmds.c:930 +#: commands/publicationcmds.c:935 #, c-format msgid "must be superuser to create FOR TABLES IN SCHEMA publication" msgstr "" "для создания публикации вида FOR ALL TABLES IN SCHEMA нужно быть " "суперпользователем" -#: commands/publicationcmds.c:966 +#: commands/publicationcmds.c:971 #, c-format msgid "\"wal_level\" is insufficient to publish logical changes" msgstr "уровень \"wal_level\" недостаточен для публикации логических изменений" -#: commands/publicationcmds.c:967 +#: commands/publicationcmds.c:972 #, c-format msgid "Set \"wal_level\" to \"logical\" before creating subscriptions." msgstr "Задайте для \"wal_level\" значение \"logical\" до создания подписок." -#: commands/publicationcmds.c:1067 commands/publicationcmds.c:1075 +#: commands/publicationcmds.c:1072 commands/publicationcmds.c:1080 #, c-format msgid "cannot set parameter \"%s\" to false for publication \"%s\"" msgstr "параметру \"%s\" публикации \"%s\" нельзя присвоить false" -#: commands/publicationcmds.c:1070 +#: commands/publicationcmds.c:1075 #, c-format msgid "" "The publication contains a WHERE clause for partitioned table \"%s\", which " @@ -11303,7 +11318,7 @@ msgstr "" "Публикация содержит предложение WHERE для секционированной таблицы \"%s\", " "что не допускается, когда \"%s\" равен false." -#: commands/publicationcmds.c:1078 +#: commands/publicationcmds.c:1083 #, c-format msgid "" "The publication contains a column list for partitioned table \"%s\", which " @@ -11312,12 +11327,12 @@ msgstr "" "Публикация содержит список столбцов для секционированной таблицы \"%s\", что " "не допускается, когда \"%s\" равен false." -#: commands/publicationcmds.c:1399 +#: commands/publicationcmds.c:1404 #, c-format msgid "cannot add schema to publication \"%s\"" msgstr "добавить схему в публикацию \"%s\" нельзя" -#: commands/publicationcmds.c:1401 +#: commands/publicationcmds.c:1406 #, c-format msgid "" "Schemas cannot be added if any tables that specify a column list are already " @@ -11326,92 +11341,92 @@ msgstr "" "Схемы нельзя добавлять в публикацию, если в неё уже добавлены таблицы, для " "которых задан список столбцов." -#: commands/publicationcmds.c:1449 +#: commands/publicationcmds.c:1454 #, c-format msgid "must be superuser to add or set schemas" msgstr "для добавления или замены схем нужно быть суперпользователем" -#: commands/publicationcmds.c:1458 commands/publicationcmds.c:1466 +#: commands/publicationcmds.c:1463 commands/publicationcmds.c:1471 #, c-format msgid "publication \"%s\" is defined as FOR ALL TABLES" msgstr "публикация \"%s\" определена для всех таблиц (FOR ALL TABLES)" -#: commands/publicationcmds.c:1460 +#: commands/publicationcmds.c:1465 #, c-format msgid "Schemas cannot be added to or dropped from FOR ALL TABLES publications." msgstr "В публикации вида FOR ALL TABLES нельзя добавлять или удалять таблицы." -#: commands/publicationcmds.c:1468 +#: commands/publicationcmds.c:1473 #, c-format msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications." msgstr "В публикации всех таблиц нельзя добавлять или удалять таблицы." -#: commands/publicationcmds.c:1492 commands/publicationcmds.c:1531 -#: commands/publicationcmds.c:2068 utils/cache/lsyscache.c:3774 +#: commands/publicationcmds.c:1497 commands/publicationcmds.c:1536 +#: commands/publicationcmds.c:2073 utils/cache/lsyscache.c:3774 #, c-format msgid "publication \"%s\" does not exist" msgstr "публикация \"%s\" не существует" -#: commands/publicationcmds.c:1694 commands/publicationcmds.c:1757 +#: commands/publicationcmds.c:1699 commands/publicationcmds.c:1762 #, c-format msgid "conflicting or redundant WHERE clauses for table \"%s\"" msgstr "конфликтующие или избыточные предложения WHERE для таблицы \"%s\"" -#: commands/publicationcmds.c:1701 commands/publicationcmds.c:1769 +#: commands/publicationcmds.c:1706 commands/publicationcmds.c:1774 #, c-format msgid "conflicting or redundant column lists for table \"%s\"" msgstr "конфликтующие или избыточные списки столбцов для таблицы \"%s\"" -#: commands/publicationcmds.c:1903 +#: commands/publicationcmds.c:1908 #, c-format msgid "column list must not be specified in ALTER PUBLICATION ... DROP" msgstr "в ALTER PUBLICATION ... DROP не должен задаваться список столбцов" -#: commands/publicationcmds.c:1915 +#: commands/publicationcmds.c:1920 #, c-format msgid "relation \"%s\" is not part of the publication" msgstr "отношение \"%s\" не включено в публикацию" -#: commands/publicationcmds.c:1922 +#: commands/publicationcmds.c:1927 #, c-format msgid "cannot use a WHERE clause when removing a table from a publication" msgstr "использовать WHERE при удалении таблицы из публикации нельзя" -#: commands/publicationcmds.c:1982 +#: commands/publicationcmds.c:1987 #, c-format msgid "tables from schema \"%s\" are not part of the publication" msgstr "таблицы из схемы \"%s\" не являются частью публикации" -#: commands/publicationcmds.c:2025 commands/publicationcmds.c:2032 +#: commands/publicationcmds.c:2030 commands/publicationcmds.c:2037 #, c-format msgid "permission denied to change owner of publication \"%s\"" msgstr "нет прав для изменения владельца публикации \"%s\"" -#: commands/publicationcmds.c:2027 +#: commands/publicationcmds.c:2032 #, c-format msgid "The owner of a FOR ALL TABLES publication must be a superuser." msgstr "" "Владельцем публикации всех таблиц (FOR ALL TABLES) должен быть " "суперпользователь." -#: commands/publicationcmds.c:2034 +#: commands/publicationcmds.c:2039 #, c-format msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser." msgstr "" "Владельцем публикации вида FOR TABLES IN SCHEMA должен быть " "суперпользователь." -#: commands/publicationcmds.c:2100 +#: commands/publicationcmds.c:2105 #, c-format msgid "publication with OID %u does not exist" msgstr "публикация с OID %u не существует" -#: commands/publicationcmds.c:2133 +#: commands/publicationcmds.c:2138 #, c-format msgid "invalid value for publication parameter \"%s\": \"%s\"" msgstr "неверное значение для параметра публикации \"%s\": \"%s\"" -#: commands/publicationcmds.c:2134 +#: commands/publicationcmds.c:2139 #, c-format msgid "Valid values are \"%s\" and \"%s\"." msgstr "Допустимые значения: \"%s\" и \"%s\"." @@ -11607,33 +11622,33 @@ msgstr "в CREATE STATISTICS можно указать только одно о msgid "cannot define statistics for relation \"%s\"" msgstr "для отношения \"%s\" нельзя определить объект статистики" -#: commands/statscmds.c:187 +#: commands/statscmds.c:208 #, c-format msgid "statistics object \"%s\" already exists, skipping" msgstr "объект статистики \"%s\" уже существует, пропускается" -#: commands/statscmds.c:195 +#: commands/statscmds.c:216 #, c-format msgid "statistics object \"%s\" already exists" msgstr "объект статистики \"%s\" уже существует" -#: commands/statscmds.c:206 +#: commands/statscmds.c:227 #, c-format msgid "cannot have more than %d columns in statistics" msgstr "в статистике не может быть больше %d столбцов" -#: commands/statscmds.c:247 commands/statscmds.c:276 commands/statscmds.c:316 +#: commands/statscmds.c:268 commands/statscmds.c:297 commands/statscmds.c:337 #, c-format msgid "statistics creation on system columns is not supported" msgstr "создание статистики для системных столбцов не поддерживается" -#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#: commands/statscmds.c:274 commands/statscmds.c:303 commands/statscmds.c:343 #, c-format msgid "statistics creation on virtual generated columns is not supported" msgstr "" "создание статистики для виртуальных генерируемых столбцов не поддерживается" -#: commands/statscmds.c:260 commands/statscmds.c:289 +#: commands/statscmds.c:281 commands/statscmds.c:310 #, c-format msgid "" "column \"%s\" cannot be used in statistics because its type %s has no " @@ -11642,7 +11657,7 @@ msgstr "" "столбец \"%s\" нельзя использовать в статистике, так как для его типа %s не " "определён класс операторов B-дерева по умолчанию" -#: commands/statscmds.c:339 +#: commands/statscmds.c:360 #, c-format msgid "" "expression cannot be used in multivariate statistics because its type %s has " @@ -11651,7 +11666,7 @@ msgstr "" "выражение нельзя использовать в многовариантной статистике, так как для его " "типа %s не определён класс операторов btree по умолчанию" -#: commands/statscmds.c:360 +#: commands/statscmds.c:381 #, c-format msgid "" "when building statistics on a single expression, statistics kinds may not be " @@ -11660,42 +11675,42 @@ msgstr "" "при построении статистики по единственному выражению указывать виды " "статистики нельзя" -#: commands/statscmds.c:389 +#: commands/statscmds.c:410 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "нераспознанный вид статистики \"%s\"" -#: commands/statscmds.c:418 +#: commands/statscmds.c:439 #, c-format msgid "extended statistics require at least 2 columns" msgstr "для расширенной статистики требуются минимум 2 столбца" -#: commands/statscmds.c:436 +#: commands/statscmds.c:457 #, c-format msgid "duplicate column name in statistics definition" msgstr "повторяющееся имя столбца в определении статистики" -#: commands/statscmds.c:471 +#: commands/statscmds.c:492 #, c-format msgid "duplicate expression in statistics definition" msgstr "повторяющееся выражение в определении статистики" -#: commands/statscmds.c:646 commands/tablecmds.c:8939 +#: commands/statscmds.c:667 commands/tablecmds.c:8939 #, c-format msgid "statistics target %d is too low" msgstr "ориентир статистики слишком мал (%d)" -#: commands/statscmds.c:654 commands/tablecmds.c:8947 +#: commands/statscmds.c:675 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "ориентир статистики снижается до %d" -#: commands/statscmds.c:678 +#: commands/statscmds.c:699 #, c-format msgid "statistics object \"%s.%s\" does not exist, skipping" msgstr "объект статистики \"%s.%s\" не существует, пропускается" -#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:411 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:415 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "нераспознанное значение origin: \"%s\"" @@ -11963,7 +11978,7 @@ msgstr "" "поступили не из других источников." #: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 -#: replication/pgoutput/pgoutput.c:1185 +#: replication/pgoutput/pgoutput.c:1189 #, c-format msgid "" "cannot use different column lists for table \"%s.%s\" in different " @@ -12374,7 +12389,7 @@ msgid "column \"%s\" has a collation conflict" msgstr "конфликт правил сортировки в столбце \"%s\"" #: commands/tablecmds.c:3282 commands/tablecmds.c:3448 -#: commands/tablecmds.c:7277 parser/parse_expr.c:4776 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4792 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\" и \"%s\"" @@ -14297,8 +14312,8 @@ msgstr "собрать переходные кортежи из дочерних #: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 #: executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 -#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 -#: executor/nodeModifyTable.c:3502 +#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3322 +#: executor/nodeModifyTable.c:3514 #, c-format msgid "" "Consider using an AFTER trigger instead of a BEFORE trigger to propagate " @@ -14316,25 +14331,25 @@ msgid "could not serialize access due to concurrent update" msgstr "не удалось сериализовать доступ из-за параллельного изменения" #: commands/trigger.c:3452 executor/nodeModifyTable.c:1793 -#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2834 -#: executor/nodeModifyTable.c:3349 +#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2826 +#: executor/nodeModifyTable.c:3340 #, c-format msgid "could not serialize access due to concurrent delete" msgstr "не удалось сериализовать доступ из-за параллельного удаления" -#: commands/trigger.c:4687 +#: commands/trigger.c:4671 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "" "в рамках операции с ограничениями по безопасности нельзя вызвать отложенный " "триггер" -#: commands/trigger.c:5868 +#: commands/trigger.c:5889 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "ограничение \"%s\" не является откладываемым" -#: commands/trigger.c:5891 +#: commands/trigger.c:5912 #, c-format msgid "constraint \"%s\" does not exist" msgstr "ограничение \"%s\" не существует" @@ -15204,121 +15219,111 @@ msgstr "существуют зависимые права" msgid "Use CASCADE to revoke them too." msgstr "Используйте CASCADE, чтобы отозвать и их." -#: commands/vacuum.c:147 +#: commands/vacuum.c:148 #, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "" "Значение \"%s\" должно быть нулевым или лежать в интервале от %d КБ до %d КБ." -#: commands/vacuum.c:223 +#: commands/vacuum.c:224 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "" "параметр BUFFER_USAGE_LIMIT должен быть нулевым или лежать в диапазоне от %d " "КБ до %d КБ" -#: commands/vacuum.c:233 -#, c-format -msgid "unrecognized ANALYZE option \"%s\"" -msgstr "нераспознанный параметр ANALYZE: \"%s\"" - -#: commands/vacuum.c:273 +#: commands/vacuum.c:275 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "для параметра parallel требуется значение от 0 до %d" -#: commands/vacuum.c:285 +#: commands/vacuum.c:287 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "" "число параллельных исполнителей для выполнения очистки должно быть от 0 до %d" -#: commands/vacuum.c:306 -#, c-format -msgid "unrecognized VACUUM option \"%s\"" -msgstr "нераспознанный параметр VACUUM: \"%s\"" - -#: commands/vacuum.c:332 +#: commands/vacuum.c:335 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL нельзя выполнять в параллельном режиме" -#: commands/vacuum.c:343 +#: commands/vacuum.c:346 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "параметр BUFFER_USAGE_LIMIT нельзя задавать для VACUUM FULL" -#: commands/vacuum.c:357 +#: commands/vacuum.c:360 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "если задаётся список столбцов, необходимо указать ANALYZE" -#: commands/vacuum.c:369 +#: commands/vacuum.c:372 #, c-format msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL" msgstr "Параметр VACUUM DISABLE_PAGE_SKIPPING нельзя использовать с FULL" -#: commands/vacuum.c:376 +#: commands/vacuum.c:379 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "VACUUM FULL работает только с PROCESS_TOAST" -#: commands/vacuum.c:385 +#: commands/vacuum.c:388 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables" msgstr "ONLY_DATABASE_STATS нельзя задавать со списком таблиц" -#: commands/vacuum.c:394 +#: commands/vacuum.c:397 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STATS нельзя задавать с другими параметрами VACUUM" -#: commands/vacuum.c:534 +#: commands/vacuum.c:537 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s нельзя выполнить в ходе VACUUM или ANALYZE" -#: commands/vacuum.c:756 +#: commands/vacuum.c:759 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "нет доступа для очистки отношения \"%s\", оно пропускается" -#: commands/vacuum.c:769 +#: commands/vacuum.c:772 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "нет доступа для анализа отношения \"%s\", оно пропускается" -#: commands/vacuum.c:847 commands/vacuum.c:948 +#: commands/vacuum.c:850 commands/vacuum.c:951 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "очистка \"%s\" пропускается --- блокировка недоступна" -#: commands/vacuum.c:852 +#: commands/vacuum.c:855 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "очистка \"%s\" пропускается --- это отношение более не существует" -#: commands/vacuum.c:868 commands/vacuum.c:953 +#: commands/vacuum.c:871 commands/vacuum.c:956 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "анализ \"%s\" пропускается --- блокировка недоступна" -#: commands/vacuum.c:873 +#: commands/vacuum.c:876 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "анализ \"%s\" пропускается --- это отношение более не существует" -#: commands/vacuum.c:989 +#: commands/vacuum.c:992 #, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" msgstr "VACUUM ONLY для секционированной таблицы \"%s\" не имеет смысла" -#: commands/vacuum.c:1180 +#: commands/vacuum.c:1183 #, c-format msgid "cutoff for removing and freezing tuples is far in the past" msgstr "момент отсечки для удаления и замораживания кортежей далеко в прошлом" -#: commands/vacuum.c:1181 commands/vacuum.c:1186 +#: commands/vacuum.c:1184 commands/vacuum.c:1189 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -15330,42 +15335,42 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: commands/vacuum.c:1185 +#: commands/vacuum.c:1188 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "момент отсечки для замораживания мультитранзакций далеко в прошлом" -#: commands/vacuum.c:1947 +#: commands/vacuum.c:1950 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "" "есть базы данных, которые не очищались на протяжении более чем 2 миллиардов " "транзакций" -#: commands/vacuum.c:1948 +#: commands/vacuum.c:1951 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "" "Возможно, вы уже потеряли данные в результате зацикливания ID транзакций." -#: commands/vacuum.c:2134 +#: commands/vacuum.c:2143 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "" "\"%s\" пропускается --- очищать не таблицы или специальные системные таблицы " "нельзя" -#: commands/vacuum.c:2650 +#: commands/vacuum.c:2659 #, c-format msgid "scanned index \"%s\" to remove % row versions" msgstr "просканирован индекс \"%s\", удалено версий строк: %" -#: commands/vacuum.c:2669 +#: commands/vacuum.c:2678 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "индекс \"%s\" теперь содержит версий строк: %.0f, в страницах: %u" -#: commands/vacuum.c:2673 +#: commands/vacuum.c:2682 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -15675,7 +15680,7 @@ msgstr "" "В таблице определён тип %s (номер столбца: %d), а в запросе предполагается " "%s." -#: executor/execExpr.c:1157 parser/parse_agg.c:869 +#: executor/execExpr.c:1157 parser/parse_agg.c:896 #, c-format msgid "window function calls cannot be nested" msgstr "вложенные вызовы оконных функций недопустимы" @@ -15706,14 +15711,14 @@ msgid "set-valued function called in context that cannot accept a set" msgstr "" "функция, возвращающая множество, вызвана в контексте, где ему нет места" -#: executor/execExpr.c:3262 parser/parse_node.c:272 parser/parse_node.c:322 +#: executor/execExpr.c:3264 parser/parse_node.c:272 parser/parse_node.c:322 #, c-format msgid "cannot subscript type %s because it does not support subscripting" msgstr "" "к элементам типа %s нельзя обращаться по индексам, так как он это не " "поддерживает" -#: executor/execExpr.c:3390 executor/execExpr.c:3412 +#: executor/execExpr.c:3392 executor/execExpr.c:3414 #, c-format msgid "type %s does not support subscripted assignment" msgstr "тип %s не поддерживает изменение элемента по индексу" @@ -15883,129 +15888,129 @@ msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "" "в столбце \"%s\" отношения \"%s\" найдено пустое значение WITHOUT OVERLAPS" -#: executor/execMain.c:1085 +#: executor/execMain.c:1089 #, c-format msgid "cannot change sequence \"%s\"" msgstr "последовательность \"%s\" изменить нельзя" -#: executor/execMain.c:1091 +#: executor/execMain.c:1095 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "TOAST-отношение \"%s\" изменить нельзя" -#: executor/execMain.c:1110 +#: executor/execMain.c:1114 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "изменить материализованное представление \"%s\" нельзя" -#: executor/execMain.c:1122 +#: executor/execMain.c:1126 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "вставлять данные в стороннюю таблицу \"%s\" нельзя" -#: executor/execMain.c:1128 +#: executor/execMain.c:1132 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "сторонняя таблица \"%s\" не допускает добавления" -#: executor/execMain.c:1135 +#: executor/execMain.c:1139 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "изменять данные в сторонней таблице \"%s\"" -#: executor/execMain.c:1141 +#: executor/execMain.c:1145 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "сторонняя таблица \"%s\" не допускает изменения" -#: executor/execMain.c:1148 +#: executor/execMain.c:1152 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "удалять данные из сторонней таблицы \"%s\" нельзя" -#: executor/execMain.c:1154 +#: executor/execMain.c:1158 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "сторонняя таблица \"%s\" не допускает удаления" -#: executor/execMain.c:1165 +#: executor/execMain.c:1169 #, c-format msgid "cannot change relation \"%s\"" msgstr "отношение \"%s\" изменить нельзя" -#: executor/execMain.c:1192 +#: executor/execMain.c:1196 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "блокировать строки в последовательности \"%s\" нельзя" -#: executor/execMain.c:1199 +#: executor/execMain.c:1203 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "блокировать строки в TOAST-отношении \"%s\" нельзя" -#: executor/execMain.c:1206 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "блокировать строки в представлении \"%s\" нельзя" -#: executor/execMain.c:1214 +#: executor/execMain.c:1218 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "блокировать строки в материализованном представлении \"%s\" нельзя" -#: executor/execMain.c:1223 executor/execMain.c:2865 +#: executor/execMain.c:1227 executor/execMain.c:2869 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "блокировать строки в сторонней таблице \"%s\" нельзя" -#: executor/execMain.c:1229 +#: executor/execMain.c:1233 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "блокировать строки в отношении \"%s\" нельзя" -#: executor/execMain.c:1962 +#: executor/execMain.c:1966 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "новая строка в отношении \"%s\" нарушает ограничение секции" -#: executor/execMain.c:1964 executor/execMain.c:2076 executor/execMain.c:2214 -#: executor/execMain.c:2322 +#: executor/execMain.c:1968 executor/execMain.c:2080 executor/execMain.c:2218 +#: executor/execMain.c:2326 #, c-format msgid "Failing row contains %s." msgstr "Ошибочная строка содержит %s." -#: executor/execMain.c:2074 +#: executor/execMain.c:2078 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "новая строка в отношении \"%s\" нарушает ограничение-проверку \"%s\"" -#: executor/execMain.c:2211 +#: executor/execMain.c:2215 #, c-format msgid "" "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "" "значение NULL в столбце \"%s\" отношения \"%s\" нарушает ограничение NOT NULL" -#: executor/execMain.c:2320 +#: executor/execMain.c:2324 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "новая строка нарушает ограничение-проверку для представления \"%s\"" -#: executor/execMain.c:2330 +#: executor/execMain.c:2334 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" для таблицы " "\"%s\"" -#: executor/execMain.c:2335 +#: executor/execMain.c:2339 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк для таблицы \"%s\"" -#: executor/execMain.c:2343 +#: executor/execMain.c:2347 #, c-format msgid "" "target row violates row-level security policy \"%s\" (USING expression) for " @@ -16014,7 +16019,7 @@ msgstr "" "целевая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2348 +#: executor/execMain.c:2352 #, c-format msgid "" "target row violates row-level security policy (USING expression) for table " @@ -16023,7 +16028,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк (выражение USING) для " "таблицы \"%s\"" -#: executor/execMain.c:2355 +#: executor/execMain.c:2359 #, c-format msgid "" "new row violates row-level security policy \"%s\" (USING expression) for " @@ -16032,7 +16037,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2360 +#: executor/execMain.c:2364 #, c-format msgid "" "new row violates row-level security policy (USING expression) for table " @@ -16313,7 +16318,7 @@ msgid "aggregate %u needs to have compatible input type and transition type" msgstr "" "агрегатная функция %u должна иметь совместимые входной и переходный типы" -#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:692 parser/parse_agg.c:735 #, c-format msgid "aggregate function calls cannot be nested" msgstr "вложенные вызовы агрегатных функций недопустимы" @@ -16414,8 +16419,8 @@ msgid "Consider defining the foreign key on table \"%s\"." msgstr "Возможно, имеет смысл перенацелить внешний ключ на таблицу \"%s\"." #. translator: %s is a SQL command name -#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 -#: executor/nodeModifyTable.c:3508 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3328 +#: executor/nodeModifyTable.c:3520 #, c-format msgid "%s command cannot affect row a second time" msgstr "команда %s не может подействовать на строку дважды" @@ -16429,7 +16434,7 @@ msgstr "" "Проверьте, не содержат ли строки, которые должна добавить команда, " "дублирующиеся значения, подпадающие под ограничения." -#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 +#: executor/nodeModifyTable.c:3321 executor/nodeModifyTable.c:3513 #, c-format msgid "" "tuple to be updated or deleted was already modified by an operation " @@ -16438,14 +16443,14 @@ msgstr "" "кортеж, который должен быть изменён или удалён, уже модифицирован в " "операции, вызванной текущей командой" -#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3522 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "" "Проверьте, не может ли какой-либо целевой строке соответствовать более одной " "исходной строки." -#: executor/nodeModifyTable.c:3408 +#: executor/nodeModifyTable.c:3399 #, c-format msgid "" "tuple to be merged was already moved to another partition due to concurrent " @@ -16614,7 +16619,7 @@ msgstr "не удалось передать кортеж в очередь в msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "сопоставление для пользователя \"%s\", сервера \"%s\" не найдено" -#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7299 #: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" @@ -18964,7 +18969,7 @@ msgstr "отношение \"%s\" не имеет составного типа" #: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2602 #: parser/parse_coerce.c:2740 parser/parse_coerce.c:2787 -#: parser/parse_expr.c:2121 parser/parse_func.c:710 parser/parse_oper.c:869 +#: parser/parse_expr.c:2130 parser/parse_func.c:710 parser/parse_oper.c:869 #: utils/adt/array_userfuncs.c:1950 utils/fmgr/funcapi.c:669 #, c-format msgid "could not find array type for data type %s" @@ -18989,8 +18994,8 @@ msgstr "" "FULL JOIN поддерживается только с условиями, допускающими соединение " "слиянием или хеш-соединение" -#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7321 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1692 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "выполнить MERGE для отношения \"%s\" нельзя" @@ -19008,13 +19013,13 @@ msgstr "%s не может применяться к NULL-содержащей msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s несовместимо с UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2257 optimizer/plan/planner.c:4143 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 #, c-format msgid "could not implement GROUP BY" msgstr "не удалось реализовать GROUP BY" -#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 -#: optimizer/plan/planner.c:4825 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2259 optimizer/plan/planner.c:4145 +#: optimizer/plan/planner.c:4826 optimizer/prep/prepunion.c:1073 #, c-format msgid "" "Some of the datatypes only support hashing, while others only support " @@ -19023,27 +19028,27 @@ msgstr "" "Одни типы данных поддерживают только хеширование, а другие - только " "сортировку." -#: optimizer/plan/planner.c:4824 +#: optimizer/plan/planner.c:4825 #, c-format msgid "could not implement DISTINCT" msgstr "не удалось реализовать DISTINCT" -#: optimizer/plan/planner.c:6286 +#: optimizer/plan/planner.c:6322 #, c-format msgid "could not implement window PARTITION BY" msgstr "не удалось реализовать PARTITION BY для окна" -#: optimizer/plan/planner.c:6287 +#: optimizer/plan/planner.c:6323 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Столбцы, разбивающие окна, должны иметь сортируемые типы данных." -#: optimizer/plan/planner.c:6291 +#: optimizer/plan/planner.c:6327 #, c-format msgid "could not implement window ORDER BY" msgstr "не удалось реализовать ORDER BY для окна" -#: optimizer/plan/planner.c:6292 +#: optimizer/plan/planner.c:6328 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Столбцы, сортирующие окна, должны иметь сортируемые типы данных." @@ -19076,7 +19081,7 @@ msgstr "" "атрибут \"%s\" отношения \"%s\" не соответствует родительскому правилу " "сортировки" -#: optimizer/util/clauses.c:4968 +#: optimizer/util/clauses.c:4965 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "внедрённая в код SQL-функция \"%s\"" @@ -19365,208 +19370,218 @@ msgstr "%s нельзя применить к именованному хран msgid "relation \"%s\" in %s clause not found in FROM clause" msgstr "отношение \"%s\" в определении %s отсутствует в предложении FROM" -#: parser/parse_agg.c:215 parser/parse_oper.c:215 +#: parser/parse_agg.c:218 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" msgstr "для типа %s не удалось найти оператор сортировки" -#: parser/parse_agg.c:217 +#: parser/parse_agg.c:220 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "Агрегатным функциям с DISTINCT необходимо сортировать входные данные." -#: parser/parse_agg.c:275 +#: parser/parse_agg.c:278 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "у GROUPING должно быть меньше 32 аргументов" -#: parser/parse_agg.c:378 +#: parser/parse_agg.c:382 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "агрегатные функции нельзя применять в условиях JOIN" -#: parser/parse_agg.c:380 +#: parser/parse_agg.c:384 msgid "grouping operations are not allowed in JOIN conditions" msgstr "операции группировки нельзя применять в условиях JOIN" -#: parser/parse_agg.c:390 +#: parser/parse_agg.c:394 msgid "" "aggregate functions are not allowed in FROM clause of their own query level" msgstr "" "агрегатные функции нельзя применять в предложении FROM их уровня запроса" -#: parser/parse_agg.c:392 +#: parser/parse_agg.c:396 msgid "" "grouping operations are not allowed in FROM clause of their own query level" msgstr "" "операции группировки нельзя применять в предложении FROM их уровня запроса" -#: parser/parse_agg.c:397 +#: parser/parse_agg.c:401 msgid "aggregate functions are not allowed in functions in FROM" msgstr "агрегатные функции нельзя применять в функциях во FROM" -#: parser/parse_agg.c:399 +#: parser/parse_agg.c:403 msgid "grouping operations are not allowed in functions in FROM" msgstr "операции группировки нельзя применять в функциях во FROM" -#: parser/parse_agg.c:407 +#: parser/parse_agg.c:411 msgid "aggregate functions are not allowed in policy expressions" msgstr "агрегатные функции нельзя применять в выражениях политик" -#: parser/parse_agg.c:409 +#: parser/parse_agg.c:413 msgid "grouping operations are not allowed in policy expressions" msgstr "операции группировки нельзя применять в выражениях политик" -#: parser/parse_agg.c:426 +#: parser/parse_agg.c:430 msgid "aggregate functions are not allowed in window RANGE" msgstr "агрегатные функции нельзя применять в указании RANGE для окна" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:432 msgid "grouping operations are not allowed in window RANGE" msgstr "операции группировки нельзя применять в указании RANGE для окна" -#: parser/parse_agg.c:433 +#: parser/parse_agg.c:437 msgid "aggregate functions are not allowed in window ROWS" msgstr "агрегатные функции нельзя применять в указании ROWS для окна" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:439 msgid "grouping operations are not allowed in window ROWS" msgstr "операции группировки нельзя применять в указании ROWS для окна" -#: parser/parse_agg.c:440 +#: parser/parse_agg.c:444 msgid "aggregate functions are not allowed in window GROUPS" msgstr "агрегатные функции нельзя применять в указании GROUPS для окна" -#: parser/parse_agg.c:442 +#: parser/parse_agg.c:446 msgid "grouping operations are not allowed in window GROUPS" msgstr "операции группировки нельзя применять в указании GROUPS для окна" -#: parser/parse_agg.c:455 +#: parser/parse_agg.c:459 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "агрегатные функции нельзя применять в условиях MERGE WHEN" -#: parser/parse_agg.c:457 +#: parser/parse_agg.c:461 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "операции группировки нельзя применять в условиях MERGE WHEN" -#: parser/parse_agg.c:484 +#: parser/parse_agg.c:488 msgid "aggregate functions are not allowed in check constraints" msgstr "агрегатные функции нельзя применять в ограничениях-проверках" -#: parser/parse_agg.c:486 +#: parser/parse_agg.c:490 msgid "grouping operations are not allowed in check constraints" msgstr "операции группировки нельзя применять в ограничениях-проверках" -#: parser/parse_agg.c:493 +#: parser/parse_agg.c:497 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "агрегатные функции нельзя применять в выражениях DEFAULT" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:499 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "операции группировки нельзя применять в выражениях DEFAULT" -#: parser/parse_agg.c:500 +#: parser/parse_agg.c:504 msgid "aggregate functions are not allowed in index expressions" msgstr "агрегатные функции нельзя применять в выражениях индексов" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:506 msgid "grouping operations are not allowed in index expressions" msgstr "операции группировки нельзя применять в выражениях индексов" -#: parser/parse_agg.c:507 +#: parser/parse_agg.c:511 msgid "aggregate functions are not allowed in index predicates" msgstr "агрегатные функции нельзя применять в предикатах индексов" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:513 msgid "grouping operations are not allowed in index predicates" msgstr "операции группировки нельзя применять в предикатах индексов" -#: parser/parse_agg.c:514 +#: parser/parse_agg.c:518 msgid "aggregate functions are not allowed in statistics expressions" msgstr "агрегатные функции нельзя применять в выражениях статистики" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:520 msgid "grouping operations are not allowed in statistics expressions" msgstr "операции группировки нельзя применять в выражениях статистики" -#: parser/parse_agg.c:521 +#: parser/parse_agg.c:525 msgid "aggregate functions are not allowed in transform expressions" msgstr "агрегатные функции нельзя применять в выражениях преобразований" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:527 msgid "grouping operations are not allowed in transform expressions" msgstr "операции группировки нельзя применять в выражениях преобразований" -#: parser/parse_agg.c:528 +#: parser/parse_agg.c:532 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "агрегатные функции нельзя применять в параметрах EXECUTE" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:534 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "операции группировки нельзя применять в параметрах EXECUTE" -#: parser/parse_agg.c:535 +#: parser/parse_agg.c:539 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "агрегатные функции нельзя применять в условиях WHEN для триггеров" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:541 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "операции группировки нельзя применять в условиях WHEN для триггеров" -#: parser/parse_agg.c:542 +#: parser/parse_agg.c:546 msgid "aggregate functions are not allowed in partition bound" msgstr "агрегатные функции нельзя применять в выражении границы секции" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:548 msgid "grouping operations are not allowed in partition bound" msgstr "операции группировки нельзя применять в выражении границы секции" -#: parser/parse_agg.c:549 +#: parser/parse_agg.c:553 msgid "aggregate functions are not allowed in partition key expressions" msgstr "агрегатные функции нельзя применять в выражениях ключа секционирования" -#: parser/parse_agg.c:551 +#: parser/parse_agg.c:555 msgid "grouping operations are not allowed in partition key expressions" msgstr "" "операции группировки нельзя применять в выражениях ключа секционирования" -#: parser/parse_agg.c:557 +#: parser/parse_agg.c:561 msgid "aggregate functions are not allowed in column generation expressions" msgstr "агрегатные функции нельзя применять в выражениях генерируемых столбцов" -#: parser/parse_agg.c:559 +#: parser/parse_agg.c:563 msgid "grouping operations are not allowed in column generation expressions" msgstr "" "операции группировки нельзя применять в выражениях генерируемых столбцов" -#: parser/parse_agg.c:565 +#: parser/parse_agg.c:569 msgid "aggregate functions are not allowed in CALL arguments" msgstr "агрегатные функции нельзя применять в аргументах CALL" -#: parser/parse_agg.c:567 +#: parser/parse_agg.c:571 msgid "grouping operations are not allowed in CALL arguments" msgstr "операции группировки нельзя применять в аргументах CALL" -#: parser/parse_agg.c:573 +#: parser/parse_agg.c:577 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "агрегатные функции нельзя применять в условиях COPY FROM WHERE" -#: parser/parse_agg.c:575 +#: parser/parse_agg.c:579 msgid "grouping operations are not allowed in COPY FROM WHERE conditions" msgstr "операции группировки нельзя применять в условиях COPY FROM WHERE" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:602 parser/parse_clause.c:1962 +#: parser/parse_agg.c:606 parser/parse_clause.c:1962 #, 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:605 +#: parser/parse_agg.c:609 #, c-format msgid "grouping operations are not allowed in %s" msgstr "операции группировки нельзя применять в конструкции %s" -#: parser/parse_agg.c:706 +#: parser/parse_agg.c:705 parser/parse_agg.c:742 +#, c-format +msgid "outer-level aggregate cannot use a nested CTE" +msgstr "агрегатная функция внешнего уровня не может использовать вложенное CTE" + +#: parser/parse_agg.c:706 parser/parse_agg.c:743 +#, c-format +msgid "CTE \"%s\" is below the aggregate's semantic level." +msgstr "CTE \"%s\" находится ниже семантического уровня агрегатной функции." + +#: parser/parse_agg.c:728 #, c-format msgid "" "outer-level aggregate cannot contain a lower-level variable in its direct " @@ -19575,14 +19590,14 @@ msgstr "" "агрегатная функция внешнего уровня не может содержать в своих аргументах " "переменные нижнего уровня" -#: parser/parse_agg.c:784 +#: parser/parse_agg.c:813 #, c-format msgid "aggregate function calls cannot contain set-returning function calls" msgstr "" "вызовы агрегатных функций не могут включать вызовы функций, возвращающих " "множества" -#: parser/parse_agg.c:785 parser/parse_expr.c:1763 parser/parse_expr.c:2256 +#: parser/parse_agg.c:814 parser/parse_expr.c:1772 parser/parse_expr.c:2265 #: parser/parse_func.c:885 #, c-format msgid "" @@ -19592,107 +19607,107 @@ msgstr "" "Исправить ситуацию можно, переместив функцию, возвращающую множество, в " "элемент LATERAL FROM." -#: parser/parse_agg.c:790 +#: parser/parse_agg.c:819 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "вызовы агрегатных функций не могут включать вызовы оконных функции" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:922 msgid "window functions are not allowed in JOIN conditions" msgstr "оконные функции нельзя применять в условиях JOIN" -#: parser/parse_agg.c:902 +#: parser/parse_agg.c:929 msgid "window functions are not allowed in functions in FROM" msgstr "оконные функции нельзя применять в функциях во FROM" -#: parser/parse_agg.c:908 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in policy expressions" msgstr "оконные функции нельзя применять в выражениях политик" -#: parser/parse_agg.c:921 +#: parser/parse_agg.c:948 msgid "window functions are not allowed in window definitions" msgstr "оконные функции нельзя применять в определении окна" -#: parser/parse_agg.c:932 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "оконные функции нельзя применять в условиях MERGE WHEN" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:984 msgid "window functions are not allowed in check constraints" msgstr "оконные функции нельзя применять в ограничениях-проверках" -#: parser/parse_agg.c:961 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in DEFAULT expressions" msgstr "оконные функции нельзя применять в выражениях DEFAULT" -#: parser/parse_agg.c:964 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in index expressions" msgstr "оконные функции нельзя применять в выражениях индексов" -#: parser/parse_agg.c:967 +#: parser/parse_agg.c:994 msgid "window functions are not allowed in statistics expressions" msgstr "оконные функции нельзя применять в выражениях статистики" -#: parser/parse_agg.c:970 +#: parser/parse_agg.c:997 msgid "window functions are not allowed in index predicates" msgstr "оконные функции нельзя применять в предикатах индексов" -#: parser/parse_agg.c:973 +#: parser/parse_agg.c:1000 msgid "window functions are not allowed in transform expressions" msgstr "оконные функции нельзя применять в выражениях преобразований" -#: parser/parse_agg.c:976 +#: parser/parse_agg.c:1003 msgid "window functions are not allowed in EXECUTE parameters" msgstr "оконные функции нельзя применять в параметрах EXECUTE" -#: parser/parse_agg.c:979 +#: parser/parse_agg.c:1006 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "оконные функции нельзя применять в условиях WHEN для триггеров" -#: parser/parse_agg.c:982 +#: parser/parse_agg.c:1009 msgid "window functions are not allowed in partition bound" msgstr "оконные функции нельзя применять в выражении границы секции" -#: parser/parse_agg.c:985 +#: parser/parse_agg.c:1012 msgid "window functions are not allowed in partition key expressions" msgstr "оконные функции нельзя применять в выражениях ключа секционирования" -#: parser/parse_agg.c:988 +#: parser/parse_agg.c:1015 msgid "window functions are not allowed in CALL arguments" msgstr "оконные функции нельзя применять в аргументах CALL" -#: parser/parse_agg.c:991 +#: parser/parse_agg.c:1018 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "оконные функции нельзя применять в условиях COPY FROM WHERE" -#: parser/parse_agg.c:994 +#: parser/parse_agg.c:1021 msgid "window functions are not allowed in column generation expressions" msgstr "оконные функции нельзя применять в выражениях генерируемых столбцов" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:1017 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1044 parser/parse_clause.c:1971 #, c-format msgid "window functions are not allowed in %s" msgstr "оконные функции нельзя применять в конструкции %s" -#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1078 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "окно \"%s\" не существует" -#: parser/parse_agg.c:1141 +#: parser/parse_agg.c:1168 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "слишком много наборов группирования (при максимуме 4096)" -#: parser/parse_agg.c:1302 +#: parser/parse_agg.c:1329 #, c-format msgid "" "aggregate functions are not allowed in a recursive query's recursive term" msgstr "" "в рекурсивной части рекурсивного запроса агрегатные функции недопустимы" -#: parser/parse_agg.c:1525 +#: parser/parse_agg.c:1552 #, c-format msgid "" "column \"%s.%s\" must appear in the GROUP BY clause or be used in an " @@ -19701,7 +19716,7 @@ msgstr "" "столбец \"%s.%s\" должен фигурировать в предложении GROUP BY или " "использоваться в агрегатной функции" -#: parser/parse_agg.c:1528 +#: parser/parse_agg.c:1555 #, c-format msgid "" "Direct arguments of an ordered-set aggregate must use only grouped columns." @@ -19709,13 +19724,13 @@ msgstr "" "Прямые аргументы сортирующей агрегатной функции могут включать только " "группируемые столбцы." -#: parser/parse_agg.c:1533 +#: parser/parse_agg.c:1560 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "" "подзапрос использует негруппированный столбец \"%s.%s\" из внешнего запроса" -#: parser/parse_agg.c:1698 +#: parser/parse_agg.c:1725 #, c-format msgid "" "arguments to GROUPING must be grouping expressions of the associated query " @@ -20043,8 +20058,8 @@ msgstr "Приведите значение смещения в точности #: parser/parse_coerce.c:1048 parser/parse_coerce.c:1086 #: parser/parse_coerce.c:1104 parser/parse_coerce.c:1119 -#: parser/parse_expr.c:2155 parser/parse_expr.c:2775 parser/parse_expr.c:3426 -#: parser/parse_expr.c:3655 parser/parse_target.c:1001 +#: parser/parse_expr.c:2164 parser/parse_expr.c:2784 parser/parse_expr.c:3435 +#: parser/parse_expr.c:3664 parser/parse_target.c:1001 #, c-format msgid "cannot cast type %s to %s" msgstr "привести тип %s к %s нельзя" @@ -20512,30 +20527,30 @@ msgid "there is no parameter $%d" msgstr "параметр $%d не существует" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1102 parser/parse_expr.c:3086 +#: parser/parse_expr.c:1102 parser/parse_expr.c:3095 #, c-format msgid "%s requires = operator to yield boolean" msgstr "для %s требуется, чтобы оператор = возвращал логическое значение" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1108 parser/parse_expr.c:3093 +#: parser/parse_expr.c:1108 parser/parse_expr.c:3102 #, c-format msgid "%s must not return a set" msgstr "%s не должна возвращать множество" -#: parser/parse_expr.c:1396 +#: parser/parse_expr.c:1405 #, c-format msgid "" "MERGE_ACTION() can only be used in the RETURNING list of a MERGE command" msgstr "" "MERGE_ACTION() может использоваться только в списке RETURNING команды MERGE" -#: parser/parse_expr.c:1520 parser/parse_expr.c:1552 +#: parser/parse_expr.c:1529 parser/parse_expr.c:1561 #, c-format msgid "number of columns does not match number of values" msgstr "число столбцов не равно числу значений" -#: parser/parse_expr.c:1566 +#: parser/parse_expr.c:1575 #, c-format msgid "" "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() " @@ -20545,250 +20560,250 @@ msgstr "" "SELECT или выражение ROW()" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_expr.c:1761 parser/parse_expr.c:2254 parser/parse_func.c:2679 +#: parser/parse_expr.c:1770 parser/parse_expr.c:2263 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "функции, возвращающие множества, нельзя применять в конструкции %s" -#: parser/parse_expr.c:1825 +#: parser/parse_expr.c:1834 msgid "cannot use subquery in check constraint" msgstr "в ограничении-проверке нельзя использовать подзапросы" -#: parser/parse_expr.c:1829 +#: parser/parse_expr.c:1838 msgid "cannot use subquery in DEFAULT expression" msgstr "в выражении DEFAULT нельзя использовать подзапросы" -#: parser/parse_expr.c:1832 +#: parser/parse_expr.c:1841 msgid "cannot use subquery in index expression" msgstr "в индексном выражении нельзя использовать подзапросы" -#: parser/parse_expr.c:1835 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in index predicate" msgstr "в предикате индекса нельзя использовать подзапросы" -#: parser/parse_expr.c:1838 +#: parser/parse_expr.c:1847 msgid "cannot use subquery in statistics expression" msgstr "в выражении статистики нельзя использовать подзапросы" -#: parser/parse_expr.c:1841 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in transform expression" msgstr "нельзя использовать подзапрос в выражении преобразования" -#: parser/parse_expr.c:1844 +#: parser/parse_expr.c:1853 msgid "cannot use subquery in EXECUTE parameter" msgstr "в качестве параметра EXECUTE нельзя использовать подзапрос" -#: parser/parse_expr.c:1847 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in trigger WHEN condition" msgstr "в условии WHEN для триггера нельзя использовать подзапросы" -#: parser/parse_expr.c:1850 +#: parser/parse_expr.c:1859 msgid "cannot use subquery in partition bound" msgstr "в выражении границы секции нельзя использовать подзапросы" -#: parser/parse_expr.c:1853 +#: parser/parse_expr.c:1862 msgid "cannot use subquery in partition key expression" msgstr "в выражении ключа секционирования нельзя использовать подзапросы" -#: parser/parse_expr.c:1856 +#: parser/parse_expr.c:1865 msgid "cannot use subquery in CALL argument" msgstr "в качестве аргумента CALL нельзя использовать подзапрос" -#: parser/parse_expr.c:1859 +#: parser/parse_expr.c:1868 msgid "cannot use subquery in COPY FROM WHERE condition" msgstr "в условии COPY FROM WHERE нельзя использовать подзапросы" -#: parser/parse_expr.c:1862 +#: parser/parse_expr.c:1871 msgid "cannot use subquery in column generation expression" msgstr "в выражении генерируемого столбца нельзя использовать подзапросы" -#: parser/parse_expr.c:1915 parser/parse_expr.c:3785 +#: parser/parse_expr.c:1924 parser/parse_expr.c:3794 #, c-format msgid "subquery must return only one column" msgstr "подзапрос должен вернуть только один столбец" -#: parser/parse_expr.c:1986 +#: parser/parse_expr.c:1995 #, c-format msgid "subquery has too many columns" msgstr "в подзапросе слишком много столбцов" -#: parser/parse_expr.c:1991 +#: parser/parse_expr.c:2000 #, c-format msgid "subquery has too few columns" msgstr "в подзапросе недостаточно столбцов" -#: parser/parse_expr.c:2095 +#: parser/parse_expr.c:2104 #, c-format msgid "cannot determine type of empty array" msgstr "тип пустого массива определить нельзя" -#: parser/parse_expr.c:2096 +#: parser/parse_expr.c:2105 #, c-format msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]." msgstr "" "Приведите его к желаемому типу явным образом, например ARRAY[]::integer[]." -#: parser/parse_expr.c:2110 +#: parser/parse_expr.c:2119 #, c-format msgid "could not find element type for data type %s" msgstr "не удалось определить тип элемента для типа данных %s" -#: parser/parse_expr.c:2195 +#: parser/parse_expr.c:2204 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "число элементов в выражениях ROW ограничено %d" -#: parser/parse_expr.c:2400 +#: parser/parse_expr.c:2409 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "вместо значения XML-атрибута без имени должен указываться столбец" -#: parser/parse_expr.c:2401 +#: parser/parse_expr.c:2410 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "вместо значения XML-элемента без имени должен указываться столбец" -#: parser/parse_expr.c:2416 +#: parser/parse_expr.c:2425 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "имя XML-атрибута \"%s\" указано неоднократно" -#: parser/parse_expr.c:2524 +#: parser/parse_expr.c:2533 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "привести результат XMLSERIALIZE к типу %s нельзя" -#: parser/parse_expr.c:2848 parser/parse_expr.c:3044 +#: parser/parse_expr.c:2857 parser/parse_expr.c:3053 #, c-format msgid "unequal number of entries in row expressions" msgstr "разное число элементов в строках" -#: parser/parse_expr.c:2858 +#: parser/parse_expr.c:2867 #, c-format msgid "cannot compare rows of zero length" msgstr "строки нулевой длины сравнивать нельзя" -#: parser/parse_expr.c:2883 +#: parser/parse_expr.c:2892 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "" "оператор сравнения строк должен выдавать результат логического типа, а не %s" -#: parser/parse_expr.c:2890 +#: parser/parse_expr.c:2899 #, c-format msgid "row comparison operator must not return a set" msgstr "оператор сравнения строк не должен возвращать множество" -#: parser/parse_expr.c:2949 parser/parse_expr.c:2990 +#: parser/parse_expr.c:2958 parser/parse_expr.c:2999 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "не удалось выбрать интерпретацию оператора сравнения строк %s" -#: parser/parse_expr.c:2951 +#: parser/parse_expr.c:2960 #, c-format msgid "" "Row comparison operators must be associated with btree operator families." msgstr "" "Операторы сравнения строк должны быть связаны с семейством операторов btree." -#: parser/parse_expr.c:2992 +#: parser/parse_expr.c:3001 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Оказалось несколько равноценных кандидатур." -#: parser/parse_expr.c:3327 +#: parser/parse_expr.c:3336 #, c-format msgid "JSON ENCODING clause is only allowed for bytea input type" msgstr "" "предложение JSON ENCODING можно добавить только для входного типа bytea" -#: parser/parse_expr.c:3391 +#: parser/parse_expr.c:3400 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" msgstr "" "с неявным предложением FORMAT JSON можно использовать только строковые типы" -#: parser/parse_expr.c:3392 +#: parser/parse_expr.c:3401 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" msgstr "" "с явным предложением FORMAT JSON можно использовать только строковые типы" -#: parser/parse_expr.c:3481 +#: parser/parse_expr.c:3490 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "формат JSON можно использовать, только если возвращаемый тип строковый" -#: parser/parse_expr.c:3494 +#: parser/parse_expr.c:3503 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "" "кодировку JSON можно использовать, только если возвращаемый тип — bytea" -#: parser/parse_expr.c:3499 +#: parser/parse_expr.c:3508 #, c-format msgid "unsupported JSON encoding" msgstr "неподдерживаемая кодировка JSON" -#: parser/parse_expr.c:3500 +#: parser/parse_expr.c:3509 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Для JSON поддерживается только кодировка UTF-8." -#: parser/parse_expr.c:3537 +#: parser/parse_expr.c:3546 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "функции SQL/JSON не могут возвращать типы SETOF" -#: parser/parse_expr.c:3542 +#: parser/parse_expr.c:3551 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" msgstr "функции SQL/JSON не могут возвращать псевдотипы" -#: parser/parse_expr.c:3870 parser/parse_func.c:866 +#: parser/parse_expr.c:3879 parser/parse_func.c:866 #, c-format msgid "aggregate ORDER BY is not implemented for window functions" msgstr "агрегатное предложение ORDER BY для оконных функций не реализовано" -#: parser/parse_expr.c:4093 +#: parser/parse_expr.c:4102 #, c-format msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types" msgstr "" "предложение JSON FORMAT ENCODING можно использовать только с типом bytea" -#: parser/parse_expr.c:4113 +#: parser/parse_expr.c:4122 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "в предикате IS JSON нельзя использовать тип %s" -#: parser/parse_expr.c:4139 parser/parse_expr.c:4260 +#: parser/parse_expr.c:4148 parser/parse_expr.c:4269 #, c-format msgid "cannot use type %s in RETURNING clause of %s" msgstr "тип %s нельзя использовать в предложении RETURNING функции %s" -#: parser/parse_expr.c:4141 +#: parser/parse_expr.c:4150 #, c-format msgid "Try returning json or jsonb." msgstr "Попробуйте возвратить тип json или jsonb." -#: parser/parse_expr.c:4189 +#: parser/parse_expr.c:4198 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" msgstr "" "с предложением WITH UNIQUE KEYS можно использовать только строковые типы " "данных" -#: parser/parse_expr.c:4263 +#: parser/parse_expr.c:4272 #, c-format msgid "Try returning a string type or bytea." msgstr "Попробуйте возвратить строковый тип или bytea." -#: parser/parse_expr.c:4328 +#: parser/parse_expr.c:4340 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "FORMAT JSON не может указываться в предложении RETURNING %s()" -#: parser/parse_expr.c:4341 +#: parser/parse_expr.c:4353 #, c-format msgid "" "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" @@ -20796,8 +20811,8 @@ msgstr "" "когда используется WITH WRAPPER, поведение QUOTES в SQL/JSON задать нельзя" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4355 parser/parse_expr.c:4384 parser/parse_expr.c:4415 -#: parser/parse_expr.c:4441 parser/parse_expr.c:4467 +#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 parser/parse_expr.c:4427 +#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 #: parser/parse_jsontable.c:92 #, c-format msgid "invalid %s behavior" @@ -20805,7 +20820,7 @@ msgstr "неверное поведение %s" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 +#: parser/parse_expr.c:4370 parser/parse_expr.c:4399 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " @@ -20817,14 +20832,14 @@ msgstr "" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 -#: parser/parse_expr.c:4451 parser/parse_expr.c:4477 +#: parser/parse_expr.c:4377 parser/parse_expr.c:4406 parser/parse_expr.c:4435 +#: parser/parse_expr.c:4463 parser/parse_expr.c:4489 #, c-format msgid "invalid %s behavior for column \"%s\"" msgstr "неверное поведение %s для столбца \"%s\"" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 +#: parser/parse_expr.c:4380 parser/parse_expr.c:4409 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " @@ -20833,13 +20848,13 @@ msgstr "" "В %s для форматируемых столбцов допускается только ERROR, NULL, EMPTY ARRAY, " "EMPTY OBJECT или выражение DEFAULT." -#: parser/parse_expr.c:4416 +#: parser/parse_expr.c:4428 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." msgstr "В %s для %s допускается только ERROR, TRUE, FALSE или UNKNOWN." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4426 +#: parser/parse_expr.c:4438 #, c-format msgid "" "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." @@ -20848,13 +20863,13 @@ msgstr "" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 +#: parser/parse_expr.c:4456 parser/parse_expr.c:4482 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." msgstr "В %s для %s допускается только ERROR, NULL или выражение DEFAULT." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 +#: parser/parse_expr.c:4466 parser/parse_expr.c:4492 #, c-format msgid "" "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." @@ -20862,12 +20877,12 @@ msgstr "" "В %s для скалярных столбцов допускается только ERROR, NULL или выражение " "DEFAULT." -#: parser/parse_expr.c:4510 +#: parser/parse_expr.c:4526 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "выражение пути JSON должно быть типа %s, а не типа %s" -#: parser/parse_expr.c:4750 +#: parser/parse_expr.c:4766 #, c-format msgid "" "can only specify a constant, non-aggregate function, or operator expression " @@ -20876,28 +20891,28 @@ msgstr "" "в DEFAULT может задаваться только константа, вызов не агрегатной функции или " "выражение с оператором" -#: parser/parse_expr.c:4755 +#: parser/parse_expr.c:4771 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "выражения в DEFAULT не могут содержать ссылки на столбцы" -#: parser/parse_expr.c:4760 +#: parser/parse_expr.c:4776 #, c-format msgid "DEFAULT expression must not return a set" msgstr "выражение в DEFAULT не может возвращать множество" -#: parser/parse_expr.c:4775 +#: parser/parse_expr.c:4791 #, c-format msgid "collation of DEFAULT expression conflicts with RETURNING clause" msgstr "" "правило сортировки выражения DEFAULT конфликтует с предложением RETURNING" -#: parser/parse_expr.c:4854 parser/parse_expr.c:4863 +#: parser/parse_expr.c:4870 parser/parse_expr.c:4879 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "привести выражение поведения, имеющее тип %s, к типу %s нельзя" -#: parser/parse_expr.c:4857 +#: parser/parse_expr.c:4873 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "Приведите выражение к типу %s явно." @@ -22094,22 +22109,22 @@ msgid "TO must specify exactly one value per partitioning column" msgstr "" "в TO должно указываться ровно одно значение для секционирующего столбца" -#: parser/parse_utilcmd.c:4521 +#: parser/parse_utilcmd.c:4523 #, c-format msgid "cannot specify NULL in range bound" msgstr "указать NULL в диапазонном ограничении нельзя" -#: parser/parse_utilcmd.c:4570 +#: parser/parse_utilcmd.c:4571 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "за границей MAXVALUE могут следовать только границы MAXVALUE" -#: parser/parse_utilcmd.c:4577 +#: parser/parse_utilcmd.c:4578 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "за границей MINVALUE могут следовать только границы MINVALUE" -#: parser/parse_utilcmd.c:4620 +#: parser/parse_utilcmd.c:4621 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "указанное значение нельзя привести к типу %s столбца \"%s\"" @@ -22127,7 +22142,7 @@ msgstr "неверный символ спецкода Unicode" msgid "invalid Unicode escape value" msgstr "неверное значение спецкода Unicode" -#: parser/parser.c:494 utils/adt/varlena.c:6842 scan.l:702 +#: parser/parser.c:494 utils/adt/varlena.c:6853 scan.l:702 #, c-format msgid "invalid Unicode escape" msgstr "неверный спецкод Unicode" @@ -22137,7 +22152,7 @@ msgstr "неверный спецкод Unicode" msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "Спецкоды Unicode должны иметь вид \\XXXX или \\+XXXXXX." -#: parser/parser.c:523 utils/adt/varlena.c:6867 scan.l:663 scan.l:679 +#: parser/parser.c:523 utils/adt/varlena.c:6878 scan.l:663 scan.l:679 #: scan.l:695 #, c-format msgid "invalid Unicode surrogate pair" @@ -23344,19 +23359,19 @@ msgstr "" "недетерминированные правила сортировки не поддерживаются для регулярных " "выражений" -#: replication/libpqwalreceiver/libpqwalreceiver.c:230 -#: replication/libpqwalreceiver/libpqwalreceiver.c:322 +#: replication/libpqwalreceiver/libpqwalreceiver.c:243 +#: replication/libpqwalreceiver/libpqwalreceiver.c:335 #, c-format msgid "password is required" msgstr "требуется пароль" -#: replication/libpqwalreceiver/libpqwalreceiver.c:231 +#: replication/libpqwalreceiver/libpqwalreceiver.c:244 #, c-format msgid "Non-superuser cannot connect if the server does not request a password." msgstr "" "Только суперпользователи могут подключаться к серверу, не требующему пароль." -#: replication/libpqwalreceiver/libpqwalreceiver.c:232 +#: replication/libpqwalreceiver/libpqwalreceiver.c:245 #, c-format msgid "" "Target server's authentication method must be changed, or set " @@ -23365,30 +23380,30 @@ msgstr "" "Необходимо сменить метод аутентификации на целевом сервере или задать " "password_required=false в параметрах подписки." -#: replication/libpqwalreceiver/libpqwalreceiver.c:249 +#: replication/libpqwalreceiver/libpqwalreceiver.c:262 #, c-format msgid "could not clear search path: %s" msgstr "не удалось очистить путь поиска: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:295 -#: replication/libpqwalreceiver/libpqwalreceiver.c:483 +#: replication/libpqwalreceiver/libpqwalreceiver.c:308 +#: replication/libpqwalreceiver/libpqwalreceiver.c:508 #, c-format msgid "invalid connection string syntax: %s" msgstr "ошибочный синтаксис строки подключения: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:323 +#: replication/libpqwalreceiver/libpqwalreceiver.c:336 #, c-format msgid "Non-superusers must provide a password in the connection string." msgstr "" "Пользователи, не являющиеся суперпользователями, должны задавать пароль в " "строке соединения." -#: replication/libpqwalreceiver/libpqwalreceiver.c:350 +#: replication/libpqwalreceiver/libpqwalreceiver.c:363 #, c-format msgid "could not parse connection string: %s" msgstr "не удалось разобрать строку подключения: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:425 +#: replication/libpqwalreceiver/libpqwalreceiver.c:438 #, c-format msgid "" "could not receive database system identifier and timeline ID from the " @@ -23397,13 +23412,13 @@ msgstr "" "не удалось получить идентификатор СУБД и код линии времени с главного " "сервера: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:442 -#: replication/libpqwalreceiver/libpqwalreceiver.c:737 +#: replication/libpqwalreceiver/libpqwalreceiver.c:455 +#: replication/libpqwalreceiver/libpqwalreceiver.c:762 #, c-format msgid "invalid response from primary server" msgstr "неверный ответ главного сервера" -#: replication/libpqwalreceiver/libpqwalreceiver.c:443 +#: replication/libpqwalreceiver/libpqwalreceiver.c:456 #, c-format msgid "" "Could not identify system: got %d rows and %d fields, expected %d rows and " @@ -23412,91 +23427,91 @@ msgstr "" "Не удалось идентифицировать систему, получено строк: %d, полей: %d " "(ожидалось: %d и %d (или более))." -#: replication/libpqwalreceiver/libpqwalreceiver.c:572 -#: replication/libpqwalreceiver/libpqwalreceiver.c:579 -#: replication/libpqwalreceiver/libpqwalreceiver.c:611 +#: replication/libpqwalreceiver/libpqwalreceiver.c:597 +#: replication/libpqwalreceiver/libpqwalreceiver.c:604 +#: replication/libpqwalreceiver/libpqwalreceiver.c:636 #, c-format msgid "could not start WAL streaming: %s" msgstr "не удалось начать трансляцию WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:635 +#: replication/libpqwalreceiver/libpqwalreceiver.c:660 #, c-format msgid "could not send end-of-streaming message to primary: %s" msgstr "не удалось отправить главному серверу сообщение о конце передачи: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:659 +#: replication/libpqwalreceiver/libpqwalreceiver.c:684 #, c-format msgid "unexpected result set after end-of-streaming" msgstr "неожиданный набор данных после конца передачи" -#: replication/libpqwalreceiver/libpqwalreceiver.c:675 +#: replication/libpqwalreceiver/libpqwalreceiver.c:700 #, c-format msgid "error while shutting down streaming COPY: %s" msgstr "ошибка при остановке потоковой операции COPY: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:686 +#: replication/libpqwalreceiver/libpqwalreceiver.c:711 #, c-format msgid "error reading result of streaming command: %s" msgstr "ошибка при чтении результата команды передачи: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:696 -#: replication/libpqwalreceiver/libpqwalreceiver.c:832 +#: replication/libpqwalreceiver/libpqwalreceiver.c:721 +#: replication/libpqwalreceiver/libpqwalreceiver.c:857 #, c-format msgid "unexpected result after CommandComplete: %s" msgstr "неожиданный результат после CommandComplete: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:725 +#: replication/libpqwalreceiver/libpqwalreceiver.c:750 #, c-format msgid "could not receive timeline history file from the primary server: %s" msgstr "не удалось получить файл истории линии времени с главного сервера: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:738 +#: replication/libpqwalreceiver/libpqwalreceiver.c:763 #, c-format msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields." msgstr "Ожидался 1 кортеж с 2 полями, однако получено кортежей: %d, полей: %d." -#: replication/libpqwalreceiver/libpqwalreceiver.c:793 -#: replication/libpqwalreceiver/libpqwalreceiver.c:848 -#: replication/libpqwalreceiver/libpqwalreceiver.c:855 +#: replication/libpqwalreceiver/libpqwalreceiver.c:818 +#: replication/libpqwalreceiver/libpqwalreceiver.c:873 +#: replication/libpqwalreceiver/libpqwalreceiver.c:880 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "не удалось получить данные из потока WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:875 +#: replication/libpqwalreceiver/libpqwalreceiver.c:900 #, c-format msgid "could not send data to WAL stream: %s" msgstr "не удалось отправить данные в поток WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:978 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1003 #, c-format msgid "could not create replication slot \"%s\": %s" msgstr "не удалось создать слот репликации \"%s\": %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1030 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1055 #, c-format msgid "could not alter replication slot \"%s\": %s" msgstr "не удалось изменить свойства слота репликации \"%s\": %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1064 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1089 #, c-format msgid "invalid query response" msgstr "неверный ответ на запрос" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1065 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1090 #, c-format msgid "Expected %d fields, got %d fields." msgstr "Ожидалось полей: %d, получено: %d." -#: replication/libpqwalreceiver/libpqwalreceiver.c:1135 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1160 #, c-format msgid "the query interface requires a database connection" msgstr "для интерфейса запросов требуется подключение к БД" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1169 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1194 msgid "empty query" msgstr "пустой запрос" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1200 msgid "unexpected pipeline mode" msgstr "неожиданный режим канала" @@ -23709,7 +23724,7 @@ msgstr "недостаточно слотов для процессов логи #. translator: %s is a GUC variable name #: replication/logical/launcher.c:438 replication/logical/launcher.c:524 -#: replication/slot.c:1635 replication/slot.c:1655 storage/lmgr/lock.c:1042 +#: replication/slot.c:1670 replication/slot.c:1690 storage/lmgr/lock.c:1042 #: storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 #: storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 #: storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 @@ -23748,13 +23763,13 @@ msgstr "для логического декодирования требует msgid "logical decoding requires a database connection" msgstr "для логического декодирования требуется подключение к БД" -#: replication/logical/logical.c:367 replication/logical/logical.c:521 +#: replication/logical/logical.c:367 replication/logical/logical.c:523 #, c-format msgid "cannot use physical replication slot for logical decoding" msgstr "" "физический слот репликации нельзя использовать для логического декодирования" -#: replication/logical/logical.c:372 replication/logical/logical.c:531 +#: replication/logical/logical.c:372 replication/logical/logical.c:533 #, c-format msgid "replication slot \"%s\" was not created in this database" msgstr "слот репликации \"%s\" создан не в этой базе данных" @@ -23767,59 +23782,59 @@ msgid "" msgstr "" "нельзя создать слот логической репликации в транзакции, осуществляющей запись" -#: replication/logical/logical.c:542 +#: replication/logical/logical.c:544 #, c-format msgid "cannot use replication slot \"%s\" for logical decoding" msgstr "" "слот репликации \"%s\" нельзя использовать для логического декодирования" -#: replication/logical/logical.c:544 replication/slot.c:864 -#: replication/slot.c:899 +#: replication/logical/logical.c:546 replication/slot.c:858 +#: replication/slot.c:903 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Этот слот репликации синхронизируется с ведущего сервера." -#: replication/logical/logical.c:545 +#: replication/logical/logical.c:547 #, c-format msgid "Specify another replication slot." msgstr "Укажите другой слот репликации." -#: replication/logical/logical.c:611 +#: replication/logical/logical.c:613 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "начинается логическое декодирование для слота \"%s\"" -#: replication/logical/logical.c:613 +#: replication/logical/logical.c:615 #, c-format msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X." msgstr "Передача транзакций, фиксируемых после %X/%X, чтение WAL с %X/%X." -#: replication/logical/logical.c:761 +#: replication/logical/logical.c:763 #, c-format 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:767 +#: replication/logical/logical.c:769 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback" msgstr "слот \"%s\", модуль вывода \"%s\", в обработчике %s" -#: replication/logical/logical.c:938 replication/logical/logical.c:983 -#: replication/logical/logical.c:1028 replication/logical/logical.c:1074 +#: replication/logical/logical.c:940 replication/logical/logical.c:985 +#: replication/logical/logical.c:1030 replication/logical/logical.c:1076 #, c-format msgid "logical replication at prepare time requires a %s callback" msgstr "для логической репликации во время подготовки требуется обработчик %s" -#: replication/logical/logical.c:1306 replication/logical/logical.c:1355 -#: replication/logical/logical.c:1396 replication/logical/logical.c:1482 -#: replication/logical/logical.c:1531 +#: replication/logical/logical.c:1308 replication/logical/logical.c:1357 +#: replication/logical/logical.c:1398 replication/logical/logical.c:1484 +#: replication/logical/logical.c:1533 #, c-format msgid "logical streaming requires a %s callback" msgstr "для логической потоковой репликации требуется обработчик %s" -#: replication/logical/logical.c:1441 +#: replication/logical/logical.c:1443 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "" @@ -24066,7 +24081,7 @@ msgstr "ошибка при удалении файла \"%s\" в процесс msgid "could not read from file \"%s\": read %d instead of %d bytes" msgstr "не удалось прочитать файл \"%s\" (прочитано байт: %d, требовалось: %d)" -#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:595 +#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:596 #, c-format msgid "could not synchronize replication slot \"%s\"" msgstr "не удалось синхронизировать слот репликации \"%s\"" @@ -24087,7 +24102,7 @@ msgstr "" msgid "dropped replication slot \"%s\" of database with OID %u" msgstr "слот репликации \"%s\" базы данных с OID %u удалён" -#: replication/logical/slotsync.c:596 +#: replication/logical/slotsync.c:597 #, c-format msgid "" "Synchronization could lead to data loss, because the standby could not build " @@ -24096,12 +24111,12 @@ msgstr "" "Синхронизация могла привести к потере данных, так как резервный сервер не " "смог получить согласованный снимок для декодирования WAL в позиции LSN %X/%X." -#: replication/logical/slotsync.c:605 +#: replication/logical/slotsync.c:606 #, c-format msgid "newly created replication slot \"%s\" is sync-ready now" msgstr "созданный слот репликации \"%s\" сейчас готов к синхронизации" -#: replication/logical/slotsync.c:644 +#: replication/logical/slotsync.c:645 #, c-format msgid "" "skipping slot synchronization because the received slot sync LSN %X/%X for " @@ -24110,7 +24125,7 @@ msgstr "" "синхронизация слота пропускается, потому что полученная позиция LSN %X/%X " "для слота \"%s\" предшествует позиции %X/%X на резервном сервере" -#: replication/logical/slotsync.c:666 +#: replication/logical/slotsync.c:667 #, c-format msgid "" "exiting from slot synchronization because same name slot \"%s\" already " @@ -24119,32 +24134,32 @@ msgstr "" "синхронизация слота отменяется, потому что слот с таким же именем \"%s\" уже " "существует на резервном сервере" -#: replication/logical/slotsync.c:835 +#: replication/logical/slotsync.c:838 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "" "не удалось получить информацию о переносимых логических слотах с главного " "сервера: %s" -#: replication/logical/slotsync.c:984 +#: replication/logical/slotsync.c:987 #, c-format msgid "" "could not fetch primary slot name \"%s\" info from the primary server: %s" msgstr "не удалось получить информацию о слоте \"%s\" с главного сервера: %s" # skip-rule: nastroy1 -#: replication/logical/slotsync.c:986 +#: replication/logical/slotsync.c:989 #, c-format msgid "Check if \"primary_slot_name\" is configured correctly." msgstr "Проверьте правильность настройки \"primary_slot_name\"." -#: replication/logical/slotsync.c:1006 +#: replication/logical/slotsync.c:1009 #, c-format msgid "cannot synchronize replication slots from a standby server" msgstr "синхронизировать слоты репликации с резервного сервера нельзя" #. translator: second %s is a GUC variable name -#: replication/logical/slotsync.c:1015 +#: replication/logical/slotsync.c:1018 #, c-format msgid "" "replication slot \"%s\" specified by \"%s\" does not exist on primary server" @@ -24154,32 +24169,32 @@ msgstr "" #. translator: first %s is a connection option; second %s is a GUC #. variable name #. -#: replication/logical/slotsync.c:1048 +#: replication/logical/slotsync.c:1051 #, c-format msgid "" "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "для синхронизации слотов репликации требуется указание \"%s\" в \"%s\"" -#: replication/logical/slotsync.c:1067 +#: replication/logical/slotsync.c:1070 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "" "для синхронизации слотов репликации требуется \"wal_level\" >= \"logical\"" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1082 replication/logical/slotsync.c:1110 +#: replication/logical/slotsync.c:1085 replication/logical/slotsync.c:1113 #, c-format msgid "replication slot synchronization requires \"%s\" to be set" msgstr "для синхронизации слотов репликации требуется установить \"%s\"" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1096 +#: replication/logical/slotsync.c:1099 #, c-format msgid "replication slot synchronization requires \"%s\" to be enabled" msgstr "для синхронизации слотов репликации требуется включить \"%s\"" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1148 +#: replication/logical/slotsync.c:1151 #, c-format msgid "" "replication slot synchronization worker will shut down because \"%s\" is " @@ -24188,7 +24203,7 @@ msgstr "" "процесс синхронизации слотов репликации будет остановлен, так как \"%s\" " "отключён" -#: replication/logical/slotsync.c:1157 +#: replication/logical/slotsync.c:1160 #, c-format msgid "" "replication slot synchronization worker will restart because of a parameter " @@ -24197,32 +24212,33 @@ msgstr "" "процесс синхронизации слотов репликации будет перезапущен вследствие " "изменения параметров" -#: replication/logical/slotsync.c:1181 +#: replication/logical/slotsync.c:1184 #, c-format msgid "" -"replication slot synchronization worker is shutting down on receiving SIGINT" +"replication slot synchronization worker is shutting down because promotion " +"is triggered" msgstr "" -"процесс синхронизации слотов репликации останавливается, получив сигнал " -"SIGINT" +"процесс синхронизации слотов репликации останавливается, так как вызвана " +"процедура повышения сервера" -#: replication/logical/slotsync.c:1306 +#: replication/logical/slotsync.c:1309 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "" "синхронизировать слоты репликации, когда выполняется повышение резервного " "сервера, нельзя" -#: replication/logical/slotsync.c:1314 +#: replication/logical/slotsync.c:1317 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "многопоточная синхронизация слотов репликации не поддерживается" -#: replication/logical/slotsync.c:1422 +#: replication/logical/slotsync.c:1425 #, c-format msgid "slot sync worker started" msgstr "рабочий процесс синхронизации слотов запущен" -#: replication/logical/slotsync.c:1484 replication/slotfuncs.c:928 +#: replication/logical/slotsync.c:1487 replication/slotfuncs.c:928 #, c-format msgid "" "synchronization worker \"%s\" could not connect to the primary server: %s" @@ -24369,19 +24385,14 @@ msgstr "" "процесс синхронизации таблицы для подписки \"%s\" не смог подключиться к " "серверу публикации: %s" -#: replication/logical/tablesync.c:1466 +#: replication/logical/tablesync.c:1480 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "" "при копировании таблицы не удалось начать транзакцию на сервере публикации: " "%s" -#: replication/logical/tablesync.c:1509 -#, c-format -msgid "replication origin \"%s\" already exists" -msgstr "источник репликации \"%s\" уже существует" - -#: replication/logical/tablesync.c:1542 replication/logical/worker.c:2378 +#: replication/logical/tablesync.c:1540 replication/logical/worker.c:2378 #, c-format msgid "" "user \"%s\" cannot replicate into relation with row-level security enabled: " @@ -24390,7 +24401,7 @@ msgstr "" "пользователь \"%s\" не может реплицировать данные в отношение с включённой " "защитой на уровне строк: \"%s\"" -#: replication/logical/tablesync.c:1555 +#: replication/logical/tablesync.c:1553 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "" @@ -24557,29 +24568,29 @@ msgid "logical replication apply worker for subscription \"%s\" has started" msgstr "" "запускается применяющий процесс логической репликации для подписки \"%s\"" -#: replication/logical/worker.c:4871 +#: replication/logical/worker.c:4875 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "подписка \"%s\" была отключена из-за ошибки" -#: replication/logical/worker.c:4919 +#: replication/logical/worker.c:4923 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "" "обработчик логической репликации начинает пропускать транзакцию с LSN %X/%X" -#: replication/logical/worker.c:4933 +#: replication/logical/worker.c:4937 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "" "обработчик логической репликации завершил пропуск транзакции с LSN %X/%X" -#: replication/logical/worker.c:5021 +#: replication/logical/worker.c:5025 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "значение skip-LSN для подписки \"%s\" очищено" -#: replication/logical/worker.c:5022 +#: replication/logical/worker.c:5026 #, c-format msgid "" "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN " @@ -24588,7 +24599,7 @@ msgstr "" "Позиция завершения удалённой транзакции в WAL (LSN) %X/%X не совпала со " "значением skip-LSN %X/%X." -#: replication/logical/worker.c:5050 +#: replication/logical/worker.c:5054 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -24597,7 +24608,7 @@ msgstr "" "обработка внешних данных для источника репликации \"%s\" в контексте " "сообщения типа \"%s\"" -#: replication/logical/worker.c:5054 +#: replication/logical/worker.c:5058 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -24606,7 +24617,7 @@ msgstr "" "обработка внешних данных из источника репликации \"%s\" в контексте " "сообщения типа \"%s\" в транзакции %u" -#: replication/logical/worker.c:5059 +#: replication/logical/worker.c:5063 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -24615,7 +24626,7 @@ msgstr "" "обработка внешних данных для источника репликации \"%s\" в контексте " "сообщения типа \"%s\" в транзакции %u, конечная позиция %X/%X" -#: replication/logical/worker.c:5070 +#: replication/logical/worker.c:5074 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -24625,7 +24636,7 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\" в " "транзакции %u" -#: replication/logical/worker.c:5077 +#: replication/logical/worker.c:5081 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -24636,7 +24647,7 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\" в " "транзакции %u, конечная позиция %X/%X" -#: replication/logical/worker.c:5088 +#: replication/logical/worker.c:5092 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -24647,7 +24658,7 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\", столбца " "\"%s\", в транзакции %u" -#: replication/logical/worker.c:5096 +#: replication/logical/worker.c:5100 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -24668,17 +24679,17 @@ msgstr "неверное значение proto_version" msgid "proto_version \"%s\" out of range" msgstr "значение proto_verson \"%s\" вне диапазона" -#: replication/pgoutput/pgoutput.c:351 +#: replication/pgoutput/pgoutput.c:355 #, c-format msgid "invalid publication_names syntax" msgstr "неверный синтаксис publication_names" -#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 +#: replication/pgoutput/pgoutput.c:425 replication/pgoutput/pgoutput.c:429 #, c-format msgid "option \"%s\" missing" msgstr "параметр \"%s\" отсутствует" -#: replication/pgoutput/pgoutput.c:492 +#: replication/pgoutput/pgoutput.c:496 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or lower" @@ -24686,7 +24697,7 @@ msgstr "" "клиент передал proto_version=%d, но сервер поддерживает только протокол %d и " "ниже" -#: replication/pgoutput/pgoutput.c:498 +#: replication/pgoutput/pgoutput.c:502 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or higher" @@ -24694,7 +24705,7 @@ msgstr "" "клиент передал proto_version=%d, но сервер поддерживает только протокол %d и " "выше" -#: replication/pgoutput/pgoutput.c:513 +#: replication/pgoutput/pgoutput.c:517 #, c-format msgid "" "requested proto_version=%d does not support streaming, need %d or higher" @@ -24702,7 +24713,7 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает потоковую передачу, " "требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:519 +#: replication/pgoutput/pgoutput.c:523 #, c-format msgid "" "requested proto_version=%d does not support parallel streaming, need %d or " @@ -24711,12 +24722,12 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает параллельную потоковую " "передачу, требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:524 +#: replication/pgoutput/pgoutput.c:528 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "запрошена потоковая передача, но она не поддерживается модулем вывода" -#: replication/pgoutput/pgoutput.c:538 +#: replication/pgoutput/pgoutput.c:542 #, c-format msgid "" "requested proto_version=%d does not support two-phase commit, need %d or " @@ -24725,12 +24736,12 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает двухфазную фиксацию, " "требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:543 +#: replication/pgoutput/pgoutput.c:547 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "запрошена двухфазная фиксация, но она не поддерживается модулем вывода" -#: replication/pgoutput/pgoutput.c:1108 +#: replication/pgoutput/pgoutput.c:1112 #, c-format msgid "" "cannot use different values of publish_generated_columns for table \"%s.%s\" " @@ -24739,17 +24750,17 @@ msgstr "" "использовать различные значения publish_generated_columns для таблицы \"%s." "%s\" в разных публикациях нельзя" -#: replication/pgoutput/pgoutput.c:1811 +#: replication/pgoutput/pgoutput.c:1815 #, c-format msgid "skipped loading publication \"%s\"" msgstr "пропускается загрузка публикации \"%s\"" -#: replication/pgoutput/pgoutput.c:1812 +#: replication/pgoutput/pgoutput.c:1816 #, c-format msgid "The publication does not exist at this point in the WAL." msgstr "Публикация не существует в WAL на данный момент." -#: replication/pgoutput/pgoutput.c:1813 +#: replication/pgoutput/pgoutput.c:1817 #, c-format msgid "Create the publication if it does not exist." msgstr "Создайте публикацию, если она ещё не создана." @@ -24777,122 +24788,122 @@ msgstr "" "Имя слота репликации может содержать только буквы в нижнем регистре, цифры и " "знак подчёркивания." -#: replication/slot.c:383 +#: replication/slot.c:377 #, c-format msgid "cannot enable failover for a replication slot created on the standby" msgstr "" "слот репликации, созданный на ведомом сервере, не может быть переносимым" -#: replication/slot.c:395 replication/slot.c:921 +#: replication/slot.c:389 replication/slot.c:925 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "временный слот репликации не может быть переносимым" -#: replication/slot.c:420 +#: replication/slot.c:414 #, c-format msgid "replication slot \"%s\" already exists" msgstr "слот репликации \"%s\" уже существует" -#: replication/slot.c:430 +#: replication/slot.c:424 #, c-format msgid "all replication slots are in use" msgstr "используются все слоты репликации" -#: replication/slot.c:431 +#: replication/slot.c:425 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Освободите ненужный или увеличьте параметр \"max_replication_slots\"." -#: replication/slot.c:615 replication/slotfuncs.c:664 +#: replication/slot.c:609 replication/slotfuncs.c:664 #: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:739 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "слот репликации \"%s\" не существует" -#: replication/slot.c:670 replication/slot.c:1466 +#: replication/slot.c:664 replication/slot.c:1499 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "слот репликации \"%s\" занят процессом с PID %d" -#: replication/slot.c:687 +#: replication/slot.c:681 #, c-format msgid "can no longer access replication slot \"%s\"" msgstr "слот репликации \"%s\" стал недоступным" -#: replication/slot.c:689 +#: replication/slot.c:683 #, c-format msgid "This replication slot has been invalidated due to \"%s\"." msgstr "Исходный слот репликации был аннулирован по причине \"%s\"." -#: replication/slot.c:708 +#: replication/slot.c:702 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "получен слот логической репликации \"%s\"" -#: replication/slot.c:710 +#: replication/slot.c:704 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "получен слот физической репликации \"%s\"" -#: replication/slot.c:795 +#: replication/slot.c:789 #, c-format msgid "released logical replication slot \"%s\"" msgstr "освобождён слот логической репликации \"%s\"" -#: replication/slot.c:797 +#: replication/slot.c:791 #, c-format msgid "released physical replication slot \"%s\"" msgstr "освобождён слот физической репликации \"%s\"" -#: replication/slot.c:863 +#: replication/slot.c:857 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "удалить слот репликации \"%s\" нельзя" -#: replication/slot.c:886 +#: replication/slot.c:890 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "выполнить %s со слотом физической репликации нельзя" -#: replication/slot.c:898 +#: replication/slot.c:902 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "изменить слот репликации \"%s\" нельзя" -#: replication/slot.c:908 +#: replication/slot.c:912 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "сделать переносимым слот репликации на ведомом сервере нельзя" -#: replication/slot.c:1056 replication/slot.c:2187 replication/slot.c:2580 +#: replication/slot.c:1060 replication/slot.c:2228 replication/slot.c:2621 #, c-format msgid "could not remove directory \"%s\"" msgstr "ошибка при удалении каталога \"%s\"" -#: replication/slot.c:1501 +#: replication/slot.c:1534 #, c-format msgid "replication slots can only be used if \"max_replication_slots\" > 0" msgstr "" "слоты репликации можно использовать, только если \"max_replication_slots\" > " "0" -#: replication/slot.c:1506 +#: replication/slot.c:1539 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "" "слоты репликации можно использовать, только если \"wal_level\" >= \"replica\"" -#: replication/slot.c:1518 +#: replication/slot.c:1551 #, c-format msgid "permission denied to use replication slots" msgstr "нет прав для использования слотов репликации" -#: replication/slot.c:1519 +#: replication/slot.c:1552 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "Использовать слоты репликации могут только роли с атрибутом %s." -#: replication/slot.c:1629 +#: replication/slot.c:1664 #, c-format msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." msgid_plural "" @@ -24901,12 +24912,12 @@ msgstr[0] "Позиция restart_lsn %X/%X слота превысила пре msgstr[1] "Позиция restart_lsn %X/%X слота превысила предел на % Б." msgstr[2] "Позиция restart_lsn %X/%X слота превысила предел на % Б." -#: replication/slot.c:1640 +#: replication/slot.c:1675 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "Слот конфликтует с горизонтом xid %u." -#: replication/slot.c:1645 +#: replication/slot.c:1680 msgid "" "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the " "primary server." @@ -24915,7 +24926,7 @@ msgstr "" "\"logical\" на ведущем." #. translator: %s is a GUC variable name -#: replication/slot.c:1651 +#: replication/slot.c:1686 #, c-format msgid "" "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." @@ -24923,50 +24934,50 @@ msgstr "" "Время простоя слота %ld сек. превышает настроенную в \"%s\" длительность %d " "сек." -#: replication/slot.c:1665 +#: replication/slot.c:1700 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "завершение процесса %d для освобождения слота репликации \"%s\"" -#: replication/slot.c:1667 +#: replication/slot.c:1702 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "аннулирование устаревшего слота репликации \"%s\"" -#: replication/slot.c:2518 +#: replication/slot.c:2559 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "" "файл слота репликации \"%s\" имеет неправильную сигнатуру (%u вместо %u)" -#: replication/slot.c:2525 +#: replication/slot.c:2566 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "файл состояния snapbuild \"%s\" имеет неподдерживаемую версию %u" -#: replication/slot.c:2532 +#: replication/slot.c:2573 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "у файла слота репликации \"%s\" неверная длина: %u" -#: replication/slot.c:2568 +#: replication/slot.c:2609 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "" "в файле слота репликации \"%s\" неверная контрольная сумма (%u вместо %u)" -#: replication/slot.c:2604 +#: replication/slot.c:2645 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "" "существует слот логической репликации \"%s\", но \"wal_level\" < \"logical\"" -#: replication/slot.c:2606 +#: replication/slot.c:2647 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Смените \"wal_level\" на \"logical\" или более высокий уровень." -#: replication/slot.c:2618 +#: replication/slot.c:2659 #, c-format msgid "" "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = " @@ -24975,39 +24986,39 @@ msgstr "" "на ведомом сервере существует слот логической репликации \"%s\", но " "\"hot_standby\" = \"off\"" -#: replication/slot.c:2620 +#: replication/slot.c:2661 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "Смените значение \"hot_standby\" на \"on\"." -#: replication/slot.c:2625 +#: replication/slot.c:2666 #, c-format msgid "" "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "" "существует слот физической репликации \"%s\", но \"wal_level\" < \"replica\"" -#: replication/slot.c:2627 +#: replication/slot.c:2668 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Смените \"wal_level\" на \"replica\" или более высокий уровень." -#: replication/slot.c:2674 +#: replication/slot.c:2715 #, c-format msgid "too many replication slots active before shutdown" msgstr "перед завершением активно слишком много слотов репликации" -#: replication/slot.c:2675 +#: replication/slot.c:2716 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "Увеличьте параметр \"max_replication_slots\" и повторите попытку." -#: replication/slot.c:2912 +#: replication/slot.c:2953 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "слот репликации \"%s\", указанный в параметре \"%s\", не существует" -#: replication/slot.c:2914 replication/slot.c:2948 replication/slot.c:2963 +#: replication/slot.c:2955 replication/slot.c:2989 replication/slot.c:3004 #, c-format msgid "" "Logical replication is waiting on the standby associated with replication " @@ -25016,30 +25027,30 @@ msgstr "" "Логическая репликация ожидает резервного сервера, связанного со слотом " "репликации \"%s\"." -#: replication/slot.c:2916 +#: replication/slot.c:2957 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "Создайте слот репликации \"%s\" или опустите параметр \"%s\"." -#: replication/slot.c:2926 +#: replication/slot.c:2967 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "" "слот логической репликации \"%s\" не может быть указан в параметре \"%s\"" -#: replication/slot.c:2928 +#: replication/slot.c:2969 #, c-format msgid "" "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "Логическая репликация ожидает исправления слота репликации \"%s\"." -#: replication/slot.c:2930 +#: replication/slot.c:2971 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "" "Удалите указание слота логической репликации \"%s\" из параметра \"%s\"." -#: replication/slot.c:2946 +#: replication/slot.c:2987 #, c-format msgid "" "physical replication slot \"%s\" specified in parameter \"%s\" has been " @@ -25048,14 +25059,14 @@ msgstr "" "слот физической репликации \"%s\", указанный в параметре \"%s\", был " "аннулирован" -#: replication/slot.c:2950 +#: replication/slot.c:2991 #, c-format msgid "" "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "" "Удалите и пересоздайте слот репликации \"%s\" или опустите параметр \"%s\"." -#: replication/slot.c:2961 +#: replication/slot.c:3002 #, c-format msgid "" "replication slot \"%s\" specified in parameter \"%s\" does not have " @@ -25064,7 +25075,7 @@ msgstr "" "у слота репликации \"%s\", указанного в параметре \"%s\", нулевое значение " "active_pid" -#: replication/slot.c:2965 +#: replication/slot.c:3006 #, c-format msgid "" "Start the standby associated with the replication slot \"%s\", or amend " @@ -25293,7 +25304,7 @@ msgstr "не удалось записать в сегмент WAL %s (смещ msgid "cannot use %s with a logical replication slot" msgstr "использовать %s со слотом логической репликации нельзя" -#: replication/walsender.c:623 storage/smgr/md.c:1867 +#: replication/walsender.c:623 storage/smgr/md.c:1881 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "не удалось перейти к концу файла \"%s\": %m" @@ -25330,12 +25341,6 @@ msgstr "" "запрошенная начальная точка %X/%X впереди позиции сброшенных данных журнала " "на этом сервере (%X/%X)" -#: replication/walsender.c:1151 -#, c-format -msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" -msgstr "" -"нераспознанное значение для параметра CREATE_REPLICATION_SLOT \"%s\": \"%s\"" - #. translator: %s is a CREATE_REPLICATION_SLOT statement #: replication/walsender.c:1257 #, c-format @@ -25623,7 +25628,7 @@ msgstr "" "имя запроса WITH \"%s\" оказалось и в действии правила, и в переписываемом " "запросе" -#: rewrite/rewriteHandler.c:617 +#: rewrite/rewriteHandler.c:620 #, c-format msgid "" "INSERT ... SELECT rule actions are not supported for queries having data-" @@ -25632,123 +25637,123 @@ msgstr "" "правила INSERT ... SELECT не поддерживаются для запросов с операторами, " "изменяющими данные, в WITH" -#: rewrite/rewriteHandler.c:671 +#: rewrite/rewriteHandler.c:674 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "RETURNING можно определить только для одного правила" -#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 +#: rewrite/rewriteHandler.c:911 rewrite/rewriteHandler.c:950 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "в столбец \"%s\" можно вставить только значение по умолчанию" -#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 +#: rewrite/rewriteHandler.c:913 rewrite/rewriteHandler.c:979 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "" "Столбец \"%s\" является столбцом идентификации со свойством GENERATED ALWAYS." -#: rewrite/rewriteHandler.c:912 +#: rewrite/rewriteHandler.c:915 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "Для переопределения укажите OVERRIDING SYSTEM VALUE." -#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 +#: rewrite/rewriteHandler.c:977 rewrite/rewriteHandler.c:985 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "столбцу \"%s\" можно присвоить только значение DEFAULT" -#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 +#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "многочисленные присвоения одному столбцу \"%s\"" -#: rewrite/rewriteHandler.c:1691 +#: rewrite/rewriteHandler.c:1694 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE не поддерживается для отношений с правилами." -#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 +#: rewrite/rewriteHandler.c:1734 rewrite/rewriteHandler.c:3274 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "доступ к несистемному представлению \"%s\" ограничен" -#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 +#: rewrite/rewriteHandler.c:2133 rewrite/rewriteHandler.c:4285 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "обнаружена бесконечная рекурсия в правилах для отношения \"%s\"" -#: rewrite/rewriteHandler.c:2235 +#: rewrite/rewriteHandler.c:2238 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "обнаружена бесконечная рекурсия в политике для отношения \"%s\"" -#: rewrite/rewriteHandler.c:2598 +#: rewrite/rewriteHandler.c:2601 msgid "Junk view columns are not updatable." msgstr "Утилизируемые столбцы представлений не обновляются." -#: rewrite/rewriteHandler.c:2603 +#: rewrite/rewriteHandler.c:2606 msgid "" "View columns that are not columns of their base relation are not updatable." msgstr "" "Столбцы представлений, не являющиеся столбцами базовых отношений, не " "обновляются." -#: rewrite/rewriteHandler.c:2606 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that refer to system columns are not updatable." msgstr "" "Столбцы представлений, ссылающиеся на системные столбцы, не обновляются." -#: rewrite/rewriteHandler.c:2609 +#: rewrite/rewriteHandler.c:2612 msgid "View columns that return whole-row references are not updatable." msgstr "" "Столбцы представлений, возвращающие ссылки на всю строку, не обновляются." -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing DISTINCT are not automatically updatable." msgstr "Представления с DISTINCT не обновляются автоматически." -#: rewrite/rewriteHandler.c:2673 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing GROUP BY are not automatically updatable." msgstr "Представления с GROUP BY не обновляются автоматически." -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2679 msgid "Views containing HAVING are not automatically updatable." msgstr "Представления с HAVING не обновляются автоматически." -#: rewrite/rewriteHandler.c:2679 +#: rewrite/rewriteHandler.c:2682 msgid "" "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "" "Представления с UNION, INTERSECT или EXCEPT не обновляются автоматически." -#: rewrite/rewriteHandler.c:2682 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing WITH are not automatically updatable." msgstr "Представления с WITH не обновляются автоматически." -#: rewrite/rewriteHandler.c:2685 +#: rewrite/rewriteHandler.c:2688 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "Представления с LIMIT или OFFSET не обновляются автоматически." -#: rewrite/rewriteHandler.c:2697 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return aggregate functions are not automatically updatable." msgstr "" "Представления, возвращающие агрегатные функции, не обновляются автоматически." -#: rewrite/rewriteHandler.c:2700 +#: rewrite/rewriteHandler.c:2703 msgid "Views that return window functions are not automatically updatable." msgstr "" "Представления, возвращающие оконные функции, не обновляются автоматически." -#: rewrite/rewriteHandler.c:2703 +#: rewrite/rewriteHandler.c:2706 msgid "" "Views that return set-returning functions are not automatically updatable." msgstr "" "Представления, возвращающие функции с результатом-множеством, не обновляются " "автоматически." -#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 -#: rewrite/rewriteHandler.c:2722 +#: rewrite/rewriteHandler.c:2713 rewrite/rewriteHandler.c:2717 +#: rewrite/rewriteHandler.c:2725 msgid "" "Views that do not select from a single table or view are not automatically " "updatable." @@ -25756,22 +25761,22 @@ msgstr "" "Представления, выбирающие данные не из одной таблицы или представления, не " "обновляются автоматически." -#: rewrite/rewriteHandler.c:2725 +#: rewrite/rewriteHandler.c:2728 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "Представления, содержащие TABLESAMPLE, не обновляются автоматически." -#: rewrite/rewriteHandler.c:2749 +#: rewrite/rewriteHandler.c:2752 msgid "Views that have no updatable columns are not automatically updatable." msgstr "" "Представления, не содержащие обновляемых столбцов, не обновляются " "автоматически." -#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3133 rewrite/rewriteHandler.c:3168 #, c-format msgid "cannot insert into view \"%s\"" msgstr "вставить данные в представление \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3133 +#: rewrite/rewriteHandler.c:3136 #, c-format msgid "" "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or " @@ -25780,12 +25785,12 @@ msgstr "" "Чтобы представление допускало добавление данных, установите триггер INSTEAD " "OF INSERT или безусловное правило ON INSERT DO INSTEAD." -#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3141 rewrite/rewriteHandler.c:3177 #, c-format msgid "cannot update view \"%s\"" msgstr "изменить данные в представлении \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3141 +#: rewrite/rewriteHandler.c:3144 #, c-format msgid "" "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an " @@ -25794,12 +25799,12 @@ msgstr "" "Чтобы представление допускало изменение данных, установите триггер INSTEAD " "OF UPDATE или безусловное правило ON UPDATE DO INSTEAD." -#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 +#: rewrite/rewriteHandler.c:3149 rewrite/rewriteHandler.c:3186 #, c-format msgid "cannot delete from view \"%s\"" msgstr "удалить данные из представления \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3149 +#: rewrite/rewriteHandler.c:3152 #, c-format msgid "" "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an " @@ -25808,7 +25813,7 @@ msgstr "" "Чтобы представление допускало удаление данных, установите триггер INSTEAD OF " "DELETE или безусловное правило ON DELETE DO INSTEAD." -#: rewrite/rewriteHandler.c:3168 +#: rewrite/rewriteHandler.c:3171 #, c-format msgid "" "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT " @@ -25817,7 +25822,7 @@ msgstr "" "Чтобы представление допускало добавление данных посредством MERGE, создайте " "триггер INSTEAD OF INSERT." -#: rewrite/rewriteHandler.c:3177 +#: rewrite/rewriteHandler.c:3180 #, c-format msgid "" "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE " @@ -25826,7 +25831,7 @@ msgstr "" "Чтобы представление допускало изменение данных посредством MERGE, создайте " "триггер INSTEAD OF UPDATE." -#: rewrite/rewriteHandler.c:3186 +#: rewrite/rewriteHandler.c:3189 #, c-format msgid "" "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE " @@ -25835,27 +25840,27 @@ msgstr "" "Чтобы представление допускало удаление данных посредством MERGE, создайте " "триггер INSTEAD OF DELETE." -#: rewrite/rewriteHandler.c:3361 +#: rewrite/rewriteHandler.c:3364 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "вставить данные в столбец \"%s\" представления \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3369 +#: rewrite/rewriteHandler.c:3372 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "изменить данные в столбце \"%s\" представления \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3377 +#: rewrite/rewriteHandler.c:3380 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "столбец \"%s\" представления \"%s\" не допускает объединение данных" -#: rewrite/rewriteHandler.c:3405 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "cannot merge into view \"%s\"" msgstr "представление \"%s\" не допускает объединение данных" -#: rewrite/rewriteHandler.c:3407 +#: rewrite/rewriteHandler.c:3410 #, c-format msgid "" "MERGE is not supported for views with INSTEAD OF triggers for some actions " @@ -25864,7 +25869,7 @@ msgstr "" "MERGE не поддерживается для представлений, имеющих триггеры INSTEAD OF для " "некоторых, но не всех действий." -#: rewrite/rewriteHandler.c:3408 +#: rewrite/rewriteHandler.c:3411 #, c-format msgid "" "To enable merging into the view, either provide a full set of INSTEAD OF " @@ -25873,7 +25878,7 @@ msgstr "" "Чтобы представление допускало объединение данных, или предоставьте полный " "набор триггеров INSTEAD OF, или удалите существующие триггеры INSTEAD OF." -#: rewrite/rewriteHandler.c:3923 +#: rewrite/rewriteHandler.c:3942 #, c-format msgid "" "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in " @@ -25882,7 +25887,7 @@ msgstr "" "правила DO INSTEAD NOTIFY не поддерживаются в операторах, изменяющих данные, " "в WITH" -#: rewrite/rewriteHandler.c:3934 +#: rewrite/rewriteHandler.c:3953 #, c-format msgid "" "DO INSTEAD NOTHING rules are not supported for data-modifying statements in " @@ -25891,7 +25896,7 @@ msgstr "" "правила DO INSTEAD NOTHING не поддерживаются в операторах, изменяющих " "данные, в WITH" -#: rewrite/rewriteHandler.c:3948 +#: rewrite/rewriteHandler.c:3967 #, c-format msgid "" "conditional DO INSTEAD rules are not supported for data-modifying statements " @@ -25900,13 +25905,13 @@ msgstr "" "условные правила DO INSTEAD не поддерживаются для операторов, изменяющих " "данные, в WITH" -#: rewrite/rewriteHandler.c:3952 +#: rewrite/rewriteHandler.c:3971 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "" "правила DO ALSO не поддерживаются для операторов, изменяющих данные, в WITH" -#: rewrite/rewriteHandler.c:3957 +#: rewrite/rewriteHandler.c:3976 #, c-format msgid "" "multi-statement DO INSTEAD rules are not supported for data-modifying " @@ -25915,50 +25920,50 @@ msgstr "" "составные правила DO INSTEAD не поддерживаются для операторов, изменяющих " "данные, в WITH" -#: rewrite/rewriteHandler.c:4217 +#: rewrite/rewriteHandler.c:4237 msgid "" "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "" "Представления в сочетании с правилами DO INSTEAD с условиями не обновляются " "автоматически." -#: rewrite/rewriteHandler.c:4314 +#: rewrite/rewriteHandler.c:4335 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "выполнить INSERT RETURNING для отношения \"%s\" нельзя" -#: rewrite/rewriteHandler.c:4316 +#: rewrite/rewriteHandler.c:4337 #, c-format msgid "" "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." msgstr "" "Необходимо безусловное правило ON INSERT DO INSTEAD с предложением RETURNING." -#: rewrite/rewriteHandler.c:4321 +#: rewrite/rewriteHandler.c:4342 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "выполнить UPDATE RETURNING для отношения \"%s\" нельзя" -#: rewrite/rewriteHandler.c:4323 +#: rewrite/rewriteHandler.c:4344 #, c-format msgid "" "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." msgstr "" "Необходимо безусловное правило ON UPDATE DO INSTEAD с предложением RETURNING." -#: rewrite/rewriteHandler.c:4328 +#: rewrite/rewriteHandler.c:4349 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "выполнить DELETE RETURNING для отношения \"%s\" нельзя" -#: rewrite/rewriteHandler.c:4330 +#: rewrite/rewriteHandler.c:4351 #, c-format msgid "" "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." msgstr "" "Необходимо безусловное правило ON DELETE DO INSTEAD с предложением RETURNING." -#: rewrite/rewriteHandler.c:4348 +#: rewrite/rewriteHandler.c:4369 #, c-format msgid "" "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or " @@ -25967,7 +25972,7 @@ msgstr "" "INSERT c предложением ON CONFLICT нельзя использовать с таблицей, для " "которой заданы правила INSERT или UPDATE" -#: rewrite/rewriteHandler.c:4405 +#: rewrite/rewriteHandler.c:4426 #, c-format msgid "" "WITH cannot be used in a query that is rewritten by rules into multiple " @@ -26384,7 +26389,7 @@ msgstr "" msgid "could not delete fileset \"%s\": %m" msgstr "ошибка удаления набора файлов \"%s\": %m" -#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1318 +#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1332 #, c-format msgid "could not truncate file \"%s\": %m" msgstr "не удалось обрезать файл \"%s\": %m" @@ -26394,107 +26399,107 @@ msgstr "не удалось обрезать файл \"%s\": %m" msgid "could not clone file \"%s\" to \"%s\": %m" msgstr "не удалось клонировать файл \"%s\" в \"%s\": %m" -#: storage/file/fd.c:580 storage/file/fd.c:652 storage/file/fd.c:688 +#: storage/file/fd.c:583 storage/file/fd.c:655 storage/file/fd.c:691 #, c-format msgid "could not flush dirty data: %m" msgstr "не удалось сбросить грязные данные: %m" -#: storage/file/fd.c:610 +#: storage/file/fd.c:613 #, c-format msgid "could not determine dirty data size: %m" msgstr "не удалось определить размер грязных данных: %m" -#: storage/file/fd.c:662 +#: storage/file/fd.c:665 #, c-format msgid "could not munmap() while flushing data: %m" msgstr "ошибка в munmap() при сбросе данных на диск: %m" -#: storage/file/fd.c:980 +#: storage/file/fd.c:983 #, c-format msgid "getrlimit failed: %m" msgstr "ошибка в getrlimit(): %m" -#: storage/file/fd.c:1071 +#: storage/file/fd.c:1074 #, c-format msgid "insufficient file descriptors available to start server process" msgstr "недостаточно дескрипторов файлов для запуска серверного процесса" -#: storage/file/fd.c:1072 +#: storage/file/fd.c:1075 #, c-format msgid "System allows %d, server needs at least %d, %d files are already open." msgstr "" "Система может выделить: %d, серверу требуется минимум: %d, уже открыто " "файлов: %d." -#: storage/file/fd.c:1161 storage/file/fd.c:2676 storage/file/fd.c:2785 -#: storage/file/fd.c:2939 +#: storage/file/fd.c:1164 storage/file/fd.c:2679 storage/file/fd.c:2788 +#: storage/file/fd.c:2942 #, c-format msgid "out of file descriptors: %m; release and retry" msgstr "нехватка дескрипторов файлов: %m; освободите их и повторите попытку" -#: storage/file/fd.c:1537 +#: storage/file/fd.c:1540 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "временный файл: путь \"%s\", размер %lu" -#: storage/file/fd.c:1676 +#: storage/file/fd.c:1679 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "не удалось создать временный каталог \"%s\": %m" -#: storage/file/fd.c:1683 +#: storage/file/fd.c:1686 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "не удалось создать временный подкаталог \"%s\": %m" -#: storage/file/fd.c:1880 +#: storage/file/fd.c:1883 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "не удалось создать временный файл \"%s\": %m" -#: storage/file/fd.c:1916 +#: storage/file/fd.c:1919 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "не удалось открыть временный файл \"%s\": %m" -#: storage/file/fd.c:1957 +#: storage/file/fd.c:1960 #, c-format msgid "could not unlink temporary file \"%s\": %m" msgstr "ошибка удаления временного файла \"%s\": %m" -#: storage/file/fd.c:2047 +#: storage/file/fd.c:2050 #, c-format msgid "could not delete file \"%s\": %m" msgstr "ошибка удаления файла \"%s\": %m" -#: storage/file/fd.c:2286 +#: storage/file/fd.c:2289 #, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" msgstr "размер временного файла превышает предел \"temp_file_limit\" (%d КБ)" -#: storage/file/fd.c:2652 storage/file/fd.c:2711 +#: storage/file/fd.c:2655 storage/file/fd.c:2714 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\"" msgstr "превышен предел maxAllocatedDescs (%d) при попытке открыть файл \"%s\"" -#: storage/file/fd.c:2756 +#: storage/file/fd.c:2759 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\"" msgstr "" "превышен предел maxAllocatedDescs (%d) при попытке выполнить команду \"%s\"" -#: storage/file/fd.c:2915 +#: storage/file/fd.c:2918 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\"" msgstr "" "превышен предел maxAllocatedDescs (%d) при попытке открыть каталог \"%s\"" -#: storage/file/fd.c:3446 +#: storage/file/fd.c:3449 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "в каталоге временных файлов обнаружен неуместный файл: \"%s\"" -#: storage/file/fd.c:3564 +#: storage/file/fd.c:3567 #, c-format msgid "" "syncing data directory (syncfs), elapsed time: %ld.%02d s, current path: %s" @@ -26502,7 +26507,7 @@ msgstr "" "синхронизация каталога данных (syncfs), прошло времени: %ld.%02d с, текущий " "путь: %s" -#: storage/file/fd.c:3791 +#: storage/file/fd.c:3794 #, c-format msgid "" "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: " @@ -26511,7 +26516,7 @@ msgstr "" "синхронизация каталога данных (подготовка к fsync), прошло времени: %ld.%02d " "с, текущий путь: %s" -#: storage/file/fd.c:3823 +#: storage/file/fd.c:3826 #, c-format msgid "" "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: %s" @@ -26519,27 +26524,27 @@ msgstr "" "синхронизация каталога данных (fsync), прошло времени: %ld.%02d с, текущий " "путь: %s" -#: storage/file/fd.c:4012 +#: storage/file/fd.c:4015 #, c-format msgid "\"%s\" is not supported on this platform." msgstr "\"%s\" не поддерживается на этой платформе." -#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 +#: storage/file/fd.c:4030 tcop/backend_startup.c:1080 #, c-format msgid "Invalid list syntax in parameter \"%s\"." msgstr "Неверный формат списка в параметре \"%s\"." -#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 +#: storage/file/fd.c:4050 tcop/backend_startup.c:1054 #, c-format msgid "Invalid option \"%s\"." msgstr "Неверный параметр \"%s\"." -#: storage/file/fd.c:4060 +#: storage/file/fd.c:4063 #, c-format msgid "\"%s\" is not supported for WAL because %s is too small." msgstr "\"%s\" не поддерживается для WAL из-за слишком маленького значения %s." -#: storage/file/fd.c:4068 +#: storage/file/fd.c:4071 #, c-format msgid "\"%s\" is not supported for data because %s is too small." msgstr "" @@ -26639,22 +26644,22 @@ msgstr "не удалось закрыть сегмент разделяемой msgid "could not duplicate handle for \"%s\": %m" msgstr "не удалось продублировать указатель для \"%s\": %m" -#: storage/ipc/dsm_registry.c:142 +#: storage/ipc/dsm_registry.c:144 #, c-format msgid "DSM segment name cannot be empty" msgstr "имя DSM-сегмента не может быть пустым" -#: storage/ipc/dsm_registry.c:146 +#: storage/ipc/dsm_registry.c:148 #, c-format msgid "DSM segment name too long" msgstr "имя DSM-сегмента слишком длинное" -#: storage/ipc/dsm_registry.c:150 +#: storage/ipc/dsm_registry.c:152 #, c-format msgid "DSM segment size must be nonzero" msgstr "размер DSM-сегмента должен быть ненулевым" -#: storage/ipc/dsm_registry.c:176 +#: storage/ipc/dsm_registry.c:168 #, c-format msgid "requested DSM segment size does not match size of existing segment" msgstr "" @@ -27243,7 +27248,7 @@ msgstr "испорченный линейный указатель: смещен msgid "cannot extend file \"%s\" beyond %u blocks" msgstr "не удалось увеличить файл \"%s\" до блока %u" -#: storage/smgr/md.c:517 storage/smgr/md.c:628 +#: storage/smgr/md.c:517 storage/smgr/md.c:639 #, c-format msgid "could not extend file \"%s\": %m" msgstr "не удалось увеличить файл \"%s\": %m" @@ -27253,45 +27258,45 @@ msgstr "не удалось увеличить файл \"%s\": %m" msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u" msgstr "не удалось увеличить файл \"%s\" (записано байт: %d из %d) в блоке %u" -#: storage/smgr/md.c:606 +#: storage/smgr/md.c:617 #, c-format msgid "could not extend file \"%s\" with FileFallocate(): %m" msgstr "не удалось увеличить файл \"%s\" посредством FileFallocate(): %m" -#: storage/smgr/md.c:899 storage/smgr/md.c:2047 +#: storage/smgr/md.c:910 storage/smgr/md.c:2061 #, c-format msgid "could not read blocks %u..%u in file \"%s\": %m" msgstr "не удалось прочитать блоки %u..%u в файле \"%s\": %m" -#: storage/smgr/md.c:946 storage/smgr/md.c:2060 +#: storage/smgr/md.c:957 storage/smgr/md.c:2074 #, c-format msgid "could not read blocks %u..%u in file \"%s\": read only %zu of %zu bytes" msgstr "" "не удалось прочитать блоки %u..%u в файле \"%s\" (прочитано байт: %zu из %zu)" -#: storage/smgr/md.c:1023 +#: storage/smgr/md.c:1034 #, c-format msgid "could not start reading blocks %u..%u in file \"%s\": %m" msgstr "не удалось начать чтение блоков %u..%u в файле \"%s\": %m" -#: storage/smgr/md.c:1119 +#: storage/smgr/md.c:1130 #, c-format msgid "could not write blocks %u..%u in file \"%s\": %m" msgstr "не удалось записать блоки %u..%u в файл \"%s\": %m" -#: storage/smgr/md.c:1289 +#: storage/smgr/md.c:1303 #, 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:1344 +#: storage/smgr/md.c:1358 #, c-format msgid "could not truncate file \"%s\" to %u blocks: %m" msgstr "не удалось обрезать файл \"%s\" до нужного числа блоков (%u): %m" -#: storage/smgr/md.c:1832 +#: storage/smgr/md.c:1846 #, c-format msgid "" "could not open file \"%s\" (target block %u): previous segment is only %u " @@ -27300,22 +27305,22 @@ msgstr "" "не удалось открыть файл file \"%s\" (целевой блок %u): недостаточно блоков в " "предыдущем сегменте (всего %u)" -#: storage/smgr/md.c:1846 +#: storage/smgr/md.c:1860 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "не удалось открыть файл file \"%s\" (целевой блок %u): %m" -#: storage/smgr/smgr.c:1106 +#: storage/smgr/smgr.c:1115 #, c-format msgid "file \"%s\"" msgstr "файл \"%s\"" -#: storage/smgr/smgr.c:1108 +#: storage/smgr/smgr.c:1117 #, c-format msgid "block %u in file \"%s\"" msgstr "блок %u в файле \"%s\"" -#: storage/smgr/smgr.c:1112 +#: storage/smgr/smgr.c:1121 #, c-format msgid "blocks %u..%u in file \"%s\"" msgstr "блоки %u..%u в файле \"%s\"" @@ -28485,7 +28490,7 @@ msgstr "тип входных данных не является массиво #: utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 #: utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 #: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 -#: utils/adt/varlena.c:3184 utils/adt/varlena.c:4118 +#: utils/adt/varlena.c:3195 utils/adt/varlena.c:4129 #, c-format msgid "integer out of range" msgstr "целое вне диапазона" @@ -28742,8 +28747,8 @@ msgstr "элемент массива null недопустим в данном msgid "cannot compare arrays of different element types" msgstr "нельзя сравнивать массивы с элементами разных типов" -#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2805 -#: utils/adt/multirangetypes.c:2877 utils/adt/rangetypes.c:1425 +#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2806 +#: utils/adt/multirangetypes.c:2878 utils/adt/rangetypes.c:1425 #: utils/adt/rangetypes.c:1489 utils/adt/rowtypes.c:1893 #, c-format msgid "could not identify a hash function for type %s" @@ -29235,7 +29240,7 @@ msgstr "\"%s\" вне диапазона для типа double precision" #: utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 #: utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 #: utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 -#: utils/adt/varlena.c:4093 +#: utils/adt/varlena.c:4104 #, c-format msgid "smallint out of range" msgstr "smallint вне диапазона" @@ -29680,7 +29685,7 @@ msgstr "размер шага не может быть нулевым" #: utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 #: utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 #: utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 -#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4143 +#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4154 #, c-format msgid "bigint out of range" msgstr "bigint вне диапазона" @@ -30507,12 +30512,12 @@ msgstr "Ожидалось начало диапазона." msgid "Expected comma or end of multirange." msgstr "Ожидалась запятая или конец мультидиапазона." -#: utils/adt/multirangetypes.c:981 +#: utils/adt/multirangetypes.c:982 #, c-format msgid "multiranges cannot be constructed from multidimensional arrays" msgstr "мультидиапазоны нельзя получить из массивов мультидиапазонов" -#: utils/adt/multirangetypes.c:1007 +#: utils/adt/multirangetypes.c:1008 #, c-format msgid "multirange values cannot contain null members" msgstr "мультидиапазоны не могут содержать элементы NULL" @@ -31059,7 +31064,7 @@ msgstr "Слишком много запятых." msgid "Junk after right parenthesis or bracket." msgstr "Мусор после правой скобки." -#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4486 #, c-format msgid "regular expression failed: %s" msgstr "ошибка в регулярном выражении: %s" @@ -31146,7 +31151,7 @@ msgid "Provide two argument types for operator." msgstr "Предоставьте для оператора два типа аргументов." #: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 -#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3481 utils/adt/varlena.c:3486 +#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3492 utils/adt/varlena.c:3497 #, c-format msgid "invalid name syntax" msgstr "ошибка синтаксиса в имени" @@ -31745,8 +31750,8 @@ msgid "bit string too long for type bit varying(%d)" msgstr "строка битов не умещается в тип bit varying(%d)" #: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 -#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3102 -#: utils/adt/varlena.c:3180 +#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3113 +#: utils/adt/varlena.c:3191 #, c-format msgid "negative substring length not allowed" msgstr "подстрока должна иметь неотрицательную длину" @@ -31772,7 +31777,7 @@ msgstr "" msgid "bit index %d out of valid range (0..%d)" msgstr "индекс бита %d вне диапазона 0..%d" -#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3395 #, c-format msgid "new bit must be 0 or 1" msgstr "значением бита должен быть 0 или 1" @@ -31787,98 +31792,98 @@ msgstr "значение не умещается в тип character(%d)" msgid "value too long for type character varying(%d)" msgstr "значение не умещается в тип character varying(%d)" -#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1602 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "" "не удалось определить, какое правило сортировки использовать для сравнения " "строк" -#: utils/adt/varlena.c:1864 +#: utils/adt/varlena.c:1875 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "" "недетерминированные правила сортировки не поддерживаются для поиска подстрок" -#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 +#: utils/adt/varlena.c:3279 utils/adt/varlena.c:3346 #, c-format msgid "index %d out of valid range, 0..%d" msgstr "индекс %d вне диапазона 0..%d" -#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#: utils/adt/varlena.c:3310 utils/adt/varlena.c:3382 #, c-format msgid "index % out of valid range, 0..%" msgstr "индекс % вне диапазона 0..%" -#: utils/adt/varlena.c:4587 +#: utils/adt/varlena.c:4598 #, c-format msgid "field position must not be zero" msgstr "позиция поля должна быть отлична от 0" -#: utils/adt/varlena.c:5832 +#: utils/adt/varlena.c:5843 #, c-format msgid "unterminated format() type specifier" msgstr "незавершённый спецификатор типа format()" -#: utils/adt/varlena.c:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 +#: utils/adt/varlena.c:5844 utils/adt/varlena.c:5978 utils/adt/varlena.c:6099 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "Для представления одного знака \"%%\" запишите \"%%%%\"." -#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 +#: utils/adt/varlena.c:5976 utils/adt/varlena.c:6097 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "нераспознанный спецификатор типа format(): \"%.*s\"" -#: utils/adt/varlena.c:5978 utils/adt/varlena.c:6035 +#: utils/adt/varlena.c:5989 utils/adt/varlena.c:6046 #, c-format msgid "too few arguments for format()" msgstr "мало аргументов для format()" -#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 +#: utils/adt/varlena.c:6142 utils/adt/varlena.c:6324 #, c-format msgid "number is out of range" msgstr "число вне диапазона" -#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 +#: utils/adt/varlena.c:6205 utils/adt/varlena.c:6233 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "формат ссылается на аргумент 0, но аргументы нумеруются с 1" -#: utils/adt/varlena.c:6215 +#: utils/adt/varlena.c:6226 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "указание аргумента ширины должно оканчиваться \"$\"" -#: utils/adt/varlena.c:6260 +#: utils/adt/varlena.c:6271 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "значения null нельзя представить в виде SQL-идентификатора" -#: utils/adt/varlena.c:6468 +#: utils/adt/varlena.c:6479 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "" "нормализацию Unicode можно выполнять, только если кодировка сервера — UTF8" -#: utils/adt/varlena.c:6481 +#: utils/adt/varlena.c:6492 #, c-format msgid "invalid normalization form: %s" msgstr "неверная форма нормализации: %s" # well-spelled: категоризацию -#: utils/adt/varlena.c:6526 +#: utils/adt/varlena.c:6537 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "" "категоризацию Unicode можно выполнять, только если кодировка сервера — UTF8" -#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 +#: utils/adt/varlena.c:6754 utils/adt/varlena.c:6789 utils/adt/varlena.c:6824 #, c-format msgid "invalid Unicode code point: %04X" msgstr "неверный код символа Unicode: %04X" -#: utils/adt/varlena.c:6843 +#: utils/adt/varlena.c:6854 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "" @@ -33263,286 +33268,286 @@ msgstr "SET %s принимает только один аргумент" msgid "SET requires parameter name" msgstr "SET требует имя параметра" -#: utils/misc/guc_tables.c:692 +#: utils/misc/guc_tables.c:701 msgid "Ungrouped" msgstr "Разное" -#: utils/misc/guc_tables.c:693 +#: utils/misc/guc_tables.c:702 msgid "File Locations" msgstr "Расположения файлов" -#: utils/misc/guc_tables.c:694 +#: utils/misc/guc_tables.c:703 msgid "Connections and Authentication / Connection Settings" msgstr "Подключения и аутентификация / Параметры подключений" -#: utils/misc/guc_tables.c:695 +#: utils/misc/guc_tables.c:704 msgid "Connections and Authentication / TCP Settings" msgstr "Подключения и аутентификация / Параметры TCP" -#: utils/misc/guc_tables.c:696 +#: utils/misc/guc_tables.c:705 msgid "Connections and Authentication / Authentication" msgstr "Подключения и аутентификация / Аутентификация" -#: utils/misc/guc_tables.c:697 +#: utils/misc/guc_tables.c:706 msgid "Connections and Authentication / SSL" msgstr "Подключения и аутентификация / SSL" -#: utils/misc/guc_tables.c:698 +#: utils/misc/guc_tables.c:707 msgid "Resource Usage / Memory" msgstr "Использование ресурсов / Память" -#: utils/misc/guc_tables.c:699 +#: utils/misc/guc_tables.c:708 msgid "Resource Usage / Disk" msgstr "Использование ресурсов / Диск" -#: utils/misc/guc_tables.c:700 +#: utils/misc/guc_tables.c:709 msgid "Resource Usage / Kernel Resources" msgstr "Использование ресурсов / Ресурсы ядра" -#: utils/misc/guc_tables.c:701 +#: utils/misc/guc_tables.c:710 msgid "Resource Usage / Background Writer" msgstr "Использование ресурсов / Фоновая запись" -#: utils/misc/guc_tables.c:702 +#: utils/misc/guc_tables.c:711 msgid "Resource Usage / I/O" msgstr "Использование ресурсов / Ввод/вывод" -#: utils/misc/guc_tables.c:703 +#: utils/misc/guc_tables.c:712 msgid "Resource Usage / Worker Processes" msgstr "Использование ресурсов / Рабочие процессы" -#: utils/misc/guc_tables.c:704 +#: utils/misc/guc_tables.c:713 msgid "Write-Ahead Log / Settings" msgstr "Журнал WAL / Параметры" -#: utils/misc/guc_tables.c:705 +#: utils/misc/guc_tables.c:714 msgid "Write-Ahead Log / Checkpoints" msgstr "Журнал WAL / Контрольные точки" -#: utils/misc/guc_tables.c:706 +#: utils/misc/guc_tables.c:715 msgid "Write-Ahead Log / Archiving" msgstr "Журнал WAL / Архивация" -#: utils/misc/guc_tables.c:707 +#: utils/misc/guc_tables.c:716 msgid "Write-Ahead Log / Recovery" msgstr "Журнал WAL / Восстановление" -#: utils/misc/guc_tables.c:708 +#: utils/misc/guc_tables.c:717 msgid "Write-Ahead Log / Archive Recovery" msgstr "Журнал WAL / Восстановление из архива" -#: utils/misc/guc_tables.c:709 +#: utils/misc/guc_tables.c:718 msgid "Write-Ahead Log / Recovery Target" msgstr "Журнал WAL / Цель восстановления" -#: utils/misc/guc_tables.c:710 +#: utils/misc/guc_tables.c:719 msgid "Write-Ahead Log / Summarization" msgstr "Журнал WAL / Обобщение" -#: utils/misc/guc_tables.c:711 +#: utils/misc/guc_tables.c:720 msgid "Replication / Sending Servers" msgstr "Репликация / Передающие серверы" -#: utils/misc/guc_tables.c:712 +#: utils/misc/guc_tables.c:721 msgid "Replication / Primary Server" msgstr "Репликация / Ведущий сервер" -#: utils/misc/guc_tables.c:713 +#: utils/misc/guc_tables.c:722 msgid "Replication / Standby Servers" msgstr "Репликация / Резервные серверы" -#: utils/misc/guc_tables.c:714 +#: utils/misc/guc_tables.c:723 msgid "Replication / Subscribers" msgstr "Репликация / Подписчики" -#: utils/misc/guc_tables.c:715 +#: utils/misc/guc_tables.c:724 msgid "Query Tuning / Planner Method Configuration" msgstr "Настройка запросов / Конфигурация методов планировщика" -#: utils/misc/guc_tables.c:716 +#: utils/misc/guc_tables.c:725 msgid "Query Tuning / Planner Cost Constants" msgstr "Настройка запросов / Константы стоимости для планировщика" -#: utils/misc/guc_tables.c:717 +#: utils/misc/guc_tables.c:726 msgid "Query Tuning / Genetic Query Optimizer" msgstr "Настройка запросов / Генетический оптимизатор запросов" -#: utils/misc/guc_tables.c:718 +#: utils/misc/guc_tables.c:727 msgid "Query Tuning / Other Planner Options" msgstr "Настройка запросов / Другие параметры планировщика" -#: utils/misc/guc_tables.c:719 +#: utils/misc/guc_tables.c:728 msgid "Reporting and Logging / Where to Log" msgstr "Отчёты и протоколы / Куда записывать" -#: utils/misc/guc_tables.c:720 +#: utils/misc/guc_tables.c:729 msgid "Reporting and Logging / When to Log" msgstr "Отчёты и протоколы / Когда записывать" -#: utils/misc/guc_tables.c:721 +#: utils/misc/guc_tables.c:730 msgid "Reporting and Logging / What to Log" msgstr "Отчёты и протоколы / Что записывать" -#: utils/misc/guc_tables.c:722 +#: utils/misc/guc_tables.c:731 msgid "Reporting and Logging / Process Title" msgstr "Отчёты и протоколы / Заголовок процесса" -#: utils/misc/guc_tables.c:723 +#: utils/misc/guc_tables.c:732 msgid "Statistics / Monitoring" msgstr "Статистика / Мониторинг" -#: utils/misc/guc_tables.c:724 +#: utils/misc/guc_tables.c:733 msgid "Statistics / Cumulative Query and Index Statistics" msgstr "Статистика / Накопительная статистика по запросам и индексам" -#: utils/misc/guc_tables.c:725 +#: utils/misc/guc_tables.c:734 msgid "Vacuuming / Automatic Vacuuming" msgstr "Очистка / Автоматическая очистка" -#: utils/misc/guc_tables.c:726 +#: utils/misc/guc_tables.c:735 msgid "Vacuuming / Cost-Based Vacuum Delay" msgstr "Очистка / Задержка очистки по стоимости" -#: utils/misc/guc_tables.c:727 +#: utils/misc/guc_tables.c:736 msgid "Vacuuming / Default Behavior" msgstr "Очистка / Поведение по умолчанию" -#: utils/misc/guc_tables.c:728 +#: utils/misc/guc_tables.c:737 msgid "Vacuuming / Freezing" msgstr "Очистка / Заморозка" -#: utils/misc/guc_tables.c:729 +#: utils/misc/guc_tables.c:738 msgid "Client Connection Defaults / Statement Behavior" msgstr "Параметры клиентских подключений по умолчанию / Поведение команд" -#: utils/misc/guc_tables.c:730 +#: utils/misc/guc_tables.c:739 msgid "Client Connection Defaults / Locale and Formatting" msgstr "" "Параметры клиентских подключений по умолчанию / Языковая среда и форматы" -#: utils/misc/guc_tables.c:731 +#: utils/misc/guc_tables.c:740 msgid "Client Connection Defaults / Shared Library Preloading" msgstr "" "Параметры клиентских подключений по умолчанию / Предзагрузка разделяемых " "библиотек" -#: utils/misc/guc_tables.c:732 +#: utils/misc/guc_tables.c:741 msgid "Client Connection Defaults / Other Defaults" msgstr "Параметры клиентских подключений по умолчанию / Другие параметры" -#: utils/misc/guc_tables.c:733 +#: utils/misc/guc_tables.c:742 msgid "Lock Management" msgstr "Управление блокировками" -#: utils/misc/guc_tables.c:734 +#: utils/misc/guc_tables.c:743 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions" msgstr "Версия и совместимость платформ / Предыдущие версии PostgreSQL" -#: utils/misc/guc_tables.c:735 +#: utils/misc/guc_tables.c:744 msgid "Version and Platform Compatibility / Other Platforms and Clients" msgstr "Версия и совместимость платформ / Другие платформы и клиенты" -#: utils/misc/guc_tables.c:736 +#: utils/misc/guc_tables.c:745 msgid "Error Handling" msgstr "Обработка ошибок" -#: utils/misc/guc_tables.c:737 +#: utils/misc/guc_tables.c:746 msgid "Preset Options" msgstr "Предопределённые параметры" -#: utils/misc/guc_tables.c:738 +#: utils/misc/guc_tables.c:747 msgid "Customized Options" msgstr "Внесистемные параметры" -#: utils/misc/guc_tables.c:739 +#: utils/misc/guc_tables.c:748 msgid "Developer Options" msgstr "Параметры для разработчиков" -#: utils/misc/guc_tables.c:794 +#: utils/misc/guc_tables.c:803 msgid "Enables the planner's use of sequential-scan plans." msgstr "" "Разрешает планировщику использовать планы последовательного сканирования." -#: utils/misc/guc_tables.c:804 +#: utils/misc/guc_tables.c:813 msgid "Enables the planner's use of index-scan plans." msgstr "Разрешает планировщику использовать планы сканирования по индексу." -#: utils/misc/guc_tables.c:814 +#: utils/misc/guc_tables.c:823 msgid "Enables the planner's use of index-only-scan plans." msgstr "Разрешает планировщику использовать планы сканирования только индекса." -#: utils/misc/guc_tables.c:824 +#: utils/misc/guc_tables.c:833 msgid "Enables the planner's use of bitmap-scan plans." msgstr "" "Разрешает планировщику использовать планы сканирования по битовой карте." -#: utils/misc/guc_tables.c:834 +#: utils/misc/guc_tables.c:843 msgid "Enables the planner's use of TID scan plans." msgstr "Разрешает планировщику использовать планы сканирования TID." -#: utils/misc/guc_tables.c:844 +#: utils/misc/guc_tables.c:853 msgid "Enables the planner's use of explicit sort steps." msgstr "Разрешает планировщику использовать шаги с явной сортировкой." -#: utils/misc/guc_tables.c:854 +#: utils/misc/guc_tables.c:863 msgid "Enables the planner's use of incremental sort steps." msgstr "" "Разрешает планировщику использовать шаги с инкрементальной сортировкой." -#: utils/misc/guc_tables.c:864 +#: utils/misc/guc_tables.c:873 msgid "Enables the planner's use of hashed aggregation plans." msgstr "Разрешает планировщику использовать планы агрегирования по хешу." -#: utils/misc/guc_tables.c:874 +#: utils/misc/guc_tables.c:883 msgid "Enables the planner's use of materialization." msgstr "Разрешает планировщику использовать материализацию." # well-spelled: мемоизацию -#: utils/misc/guc_tables.c:884 +#: utils/misc/guc_tables.c:893 msgid "Enables the planner's use of memoization." msgstr "Разрешает планировщику использовать мемоизацию." -#: utils/misc/guc_tables.c:894 +#: utils/misc/guc_tables.c:903 msgid "Enables the planner's use of nested-loop join plans." msgstr "" "Разрешает планировщику использовать планы соединения с вложенными циклами." -#: utils/misc/guc_tables.c:904 +#: utils/misc/guc_tables.c:913 msgid "Enables the planner's use of merge join plans." msgstr "Разрешает планировщику использовать планы соединения слиянием." -#: utils/misc/guc_tables.c:914 +#: utils/misc/guc_tables.c:923 msgid "Enables the planner's use of hash join plans." msgstr "Разрешает планировщику использовать планы соединения по хешу." -#: utils/misc/guc_tables.c:924 +#: utils/misc/guc_tables.c:933 msgid "Enables the planner's use of gather merge plans." msgstr "Разрешает планировщику использовать планы сбора слиянием." -#: utils/misc/guc_tables.c:934 +#: utils/misc/guc_tables.c:943 msgid "Enables partitionwise join." msgstr "Включает соединения с учётом секционирования." -#: utils/misc/guc_tables.c:944 +#: utils/misc/guc_tables.c:953 msgid "Enables partitionwise aggregation and grouping." msgstr "Включает агрегирование и группировку с учётом секционирования." -#: utils/misc/guc_tables.c:954 +#: utils/misc/guc_tables.c:963 msgid "Enables the planner's use of parallel append plans." msgstr "Разрешает планировщику использовать планы параллельного добавления." -#: utils/misc/guc_tables.c:964 +#: utils/misc/guc_tables.c:973 msgid "Enables the planner's use of parallel hash plans." msgstr "" "Разрешает планировщику использовать планы параллельного соединения по хешу." -#: utils/misc/guc_tables.c:974 +#: utils/misc/guc_tables.c:983 msgid "Enables plan-time and execution-time partition pruning." msgstr "" "Включает устранение секций во время планирования и во время выполнения " "запросов." -#: utils/misc/guc_tables.c:975 +#: utils/misc/guc_tables.c:984 msgid "" "Allows the query planner and executor to compare partition bounds to " "conditions in the query to determine which partitions must be scanned." @@ -33550,7 +33555,7 @@ msgstr "" "Разрешает планировщику и исполнителю запросов сопоставлять границы секций с " "условиями в запросе и выделять отдельные секции для сканирования." -#: utils/misc/guc_tables.c:986 +#: utils/misc/guc_tables.c:995 msgid "" "Enables the planner's ability to produce plans that provide presorted input " "for ORDER BY / DISTINCT aggregate functions." @@ -33558,7 +33563,7 @@ msgstr "" "Включает в планировщике возможность формировать планы, подающие ранее " "сортированные данные на вход агрегирующим функциям с ORDER BY / DISTINCT." -#: utils/misc/guc_tables.c:989 +#: utils/misc/guc_tables.c:998 msgid "" "Allows the query planner to build plans that provide presorted input for " "aggregate functions with an ORDER BY / DISTINCT clause. When disabled, " @@ -33569,39 +33574,39 @@ msgstr "" "данные. Когда этот параметр отключён, во время выполнения всегда неявно " "производится сортировка." -#: utils/misc/guc_tables.c:1001 +#: utils/misc/guc_tables.c:1010 msgid "Enables the planner's use of async append plans." msgstr "Разрешает планировщику использовать планы асинхронного добавления." -#: utils/misc/guc_tables.c:1011 +#: utils/misc/guc_tables.c:1020 msgid "Enables removal of unique self-joins." msgstr "Включает удаление уникальных замкнутых соединений." -#: utils/misc/guc_tables.c:1021 +#: utils/misc/guc_tables.c:1030 msgid "Enables reordering of GROUP BY keys." msgstr "Включает переупорядочивание ключей GROUP BY." -#: utils/misc/guc_tables.c:1031 +#: utils/misc/guc_tables.c:1040 msgid "Enables reordering of DISTINCT keys." msgstr "Включает переупорядочивание ключей DISTINCT." -#: utils/misc/guc_tables.c:1041 +#: utils/misc/guc_tables.c:1050 msgid "Enables genetic query optimization." msgstr "Включает генетическую оптимизацию запросов." -#: utils/misc/guc_tables.c:1042 +#: utils/misc/guc_tables.c:1051 msgid "This algorithm attempts to do planning without exhaustive searching." msgstr "Этот алгоритм пытается построить план без полного перебора." -#: utils/misc/guc_tables.c:1056 +#: utils/misc/guc_tables.c:1065 msgid "Shows whether the current user is a superuser." msgstr "Показывает, является ли текущий пользователь суперпользователем." -#: utils/misc/guc_tables.c:1071 +#: utils/misc/guc_tables.c:1080 msgid "Allows running the ALTER SYSTEM command." msgstr "Разрешает выполнять команду ALTER SYSTEM." -#: utils/misc/guc_tables.c:1072 +#: utils/misc/guc_tables.c:1081 msgid "" "Can be set to off for environments where global configuration changes should " "be made using a different method." @@ -33609,34 +33614,34 @@ msgstr "" "Может быть выключен в окружениях, где изменения глобальной конфигурации " "должны производиться другим методом." -#: utils/misc/guc_tables.c:1082 +#: utils/misc/guc_tables.c:1091 msgid "Enables advertising the server via Bonjour." msgstr "Включает объявление сервера посредством Bonjour." -#: utils/misc/guc_tables.c:1091 +#: utils/misc/guc_tables.c:1100 msgid "Collects transaction commit time." msgstr "Записывает время фиксации транзакций." -#: utils/misc/guc_tables.c:1100 +#: utils/misc/guc_tables.c:1109 msgid "Enables SSL connections." msgstr "Разрешает SSL-подключения." -#: utils/misc/guc_tables.c:1109 +#: utils/misc/guc_tables.c:1118 msgid "" "Controls whether \"ssl_passphrase_command\" is called during server reload." msgstr "" "Определяет, будет ли вызываться \"ssl_passphrase_command\" при перезагрузке " "сервера." -#: utils/misc/guc_tables.c:1118 +#: utils/misc/guc_tables.c:1127 msgid "Give priority to server ciphersuite order." msgstr "Назначает более приоритетным набор шифров сервера." -#: utils/misc/guc_tables.c:1127 +#: utils/misc/guc_tables.c:1136 msgid "Forces synchronization of updates to disk." msgstr "Принудительная запись изменений на диск." -#: utils/misc/guc_tables.c:1128 +#: utils/misc/guc_tables.c:1137 msgid "" "The server will use the fsync() system call in several places to make sure " "that updates are physically written to disk. This ensures that a database " @@ -33647,11 +33652,11 @@ msgstr "" "обеспечивающую физическую запись данных на диск. Тем самым гарантируется, " "что кластер БД придёт в целостное состояние после отказа ОС или оборудования." -#: utils/misc/guc_tables.c:1139 +#: utils/misc/guc_tables.c:1148 msgid "Continues processing after a checksum failure." msgstr "Продолжает обработку при ошибке контрольной суммы." -#: utils/misc/guc_tables.c:1140 +#: utils/misc/guc_tables.c:1149 msgid "" "Detection of a checksum failure normally causes PostgreSQL to report an " "error, aborting the current transaction. Setting ignore_checksum_failure to " @@ -33665,11 +33670,11 @@ msgstr "" "что может привести к сбоям или другим серьёзным проблемам. Это имеет место, " "только если включён контроль целостности страниц." -#: utils/misc/guc_tables.c:1154 +#: utils/misc/guc_tables.c:1163 msgid "Continues processing past damaged page headers." msgstr "Продолжает обработку при повреждении заголовков страниц." -#: utils/misc/guc_tables.c:1155 +#: utils/misc/guc_tables.c:1164 msgid "" "Detection of a damaged page header normally causes PostgreSQL to report an " "error, aborting the current transaction. Setting \"zero_damaged_pages\" to " @@ -33683,12 +33688,12 @@ msgstr "" "продолжит работу. Это приведёт к потере данных, а именно строк в " "повреждённой странице." -#: utils/misc/guc_tables.c:1168 +#: utils/misc/guc_tables.c:1177 msgid "Continues recovery after an invalid pages failure." msgstr "" "Продолжает восстановление после ошибок, связанных с неправильными страницами." -#: utils/misc/guc_tables.c:1169 +#: utils/misc/guc_tables.c:1178 msgid "" "Detection of WAL records having references to invalid pages during recovery " "causes PostgreSQL to raise a PANIC-level error, aborting the recovery. " @@ -33707,12 +33712,12 @@ msgstr "" "проблемам. Данный параметр действует только при восстановлении или в режиме " "резервного сервера." -#: utils/misc/guc_tables.c:1187 +#: utils/misc/guc_tables.c:1196 msgid "Writes full pages to WAL when first modified after a checkpoint." msgstr "" "Запись полных страниц в WAL при первом изменении после контрольной точки." -#: utils/misc/guc_tables.c:1188 +#: utils/misc/guc_tables.c:1197 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 " @@ -33725,7 +33730,7 @@ msgstr "" "при первом изменении после контрольной точки, что позволяет полностью " "восстановить данные." -#: utils/misc/guc_tables.c:1201 +#: utils/misc/guc_tables.c:1210 msgid "" "Writes full pages to WAL when first modified after a checkpoint, even for a " "non-critical modification." @@ -33733,62 +33738,62 @@ msgstr "" "Запись полных страниц в WAL при первом изменении после контрольной точки, " "даже при некритическом изменении." -#: utils/misc/guc_tables.c:1211 +#: utils/misc/guc_tables.c:1220 msgid "Writes zeroes to new WAL files before first use." msgstr "Записывать нули в новые файлы WAL перед первым использованием." -#: utils/misc/guc_tables.c:1221 +#: utils/misc/guc_tables.c:1230 msgid "Recycles WAL files by renaming them." msgstr "Перерабатывать файлы WAL, производя переименование." -#: utils/misc/guc_tables.c:1231 +#: utils/misc/guc_tables.c:1240 msgid "Logs each checkpoint." msgstr "Протоколировать каждую контрольную точку." -#: utils/misc/guc_tables.c:1240 +#: utils/misc/guc_tables.c:1249 msgid "Logs details of pre-authentication connection handshake." msgstr "" "Протоколировать сообщения об установлении соединения до аутентификации." -#: utils/misc/guc_tables.c:1250 +#: utils/misc/guc_tables.c:1259 msgid "Logs end of a session, including duration." msgstr "Протоколировать конец сеанса, отмечая длительность." -#: utils/misc/guc_tables.c:1259 +#: utils/misc/guc_tables.c:1268 msgid "Logs each replication command." msgstr "Протоколировать каждую команду репликации." -#: utils/misc/guc_tables.c:1268 +#: utils/misc/guc_tables.c:1277 msgid "Shows whether the running server has assertion checks enabled." msgstr "Показывает, включены ли проверки истинности на работающем сервере." -#: utils/misc/guc_tables.c:1279 +#: utils/misc/guc_tables.c:1288 msgid "Terminate session on any error." msgstr "Завершать сеансы при любой ошибке." -#: utils/misc/guc_tables.c:1288 +#: utils/misc/guc_tables.c:1297 msgid "Reinitialize server after backend crash." msgstr "Перезапускать систему БД при аварии серверного процесса." -#: utils/misc/guc_tables.c:1297 +#: utils/misc/guc_tables.c:1306 msgid "Remove temporary files after backend crash." msgstr "Удалять временные файлы после аварии обслуживающего процесса." -#: utils/misc/guc_tables.c:1307 +#: utils/misc/guc_tables.c:1316 msgid "Send SIGABRT not SIGQUIT to child processes after backend crash." msgstr "" "Посылать дочерним процессам SIGABRT, а не SIGQUIT при сбое серверного " "процесса." -#: utils/misc/guc_tables.c:1317 +#: utils/misc/guc_tables.c:1326 msgid "Send SIGABRT not SIGKILL to stuck child processes." msgstr "Посылать SIGABRT, а не SIGKILL зависшим дочерним процессам." -#: utils/misc/guc_tables.c:1328 +#: utils/misc/guc_tables.c:1337 msgid "Logs the duration of each completed SQL statement." msgstr "Протоколировать длительность каждого выполненного SQL-оператора." -#: utils/misc/guc_tables.c:1338 +#: utils/misc/guc_tables.c:1347 msgid "" "Set this to force all parse and plan trees to be passed through " "copyObject(), to facilitate catching errors and omissions in copyObject()." @@ -33796,7 +33801,7 @@ msgstr "" "Включите, чтобы все деревья разборов и планов проходили через copyObject(), " "что помогает выявить ошибки и упущения в copyObject()." -#: utils/misc/guc_tables.c:1355 +#: utils/misc/guc_tables.c:1364 msgid "" "Set this to force all parse and plan trees to be passed through outfuncs.c/" "readfuncs.c, to facilitate catching errors and omissions in those modules." @@ -33804,7 +33809,7 @@ msgstr "" "Включите, чтобы все деревья разборов и планов проходили через outfuncs.c/" "readfuncs.c, что помогает выявить ошибки и упущения в этих модулях." -#: utils/misc/guc_tables.c:1372 +#: utils/misc/guc_tables.c:1381 msgid "" "Set this to force all raw parse trees for DML statements to be scanned by " "raw_expression_tree_walker(), to facilitate catching errors and omissions in " @@ -33813,39 +33818,39 @@ msgstr "" "Включите, чтобы все деревья разборов DML-операторов сканировались функцией " "raw_expression_tree_walker(), что помогает выявить ошибки и упущения в ней." -#: utils/misc/guc_tables.c:1390 +#: utils/misc/guc_tables.c:1399 msgid "Logs each query's parse tree." msgstr "Протоколировать дерево разбора для каждого запроса." -#: utils/misc/guc_tables.c:1399 +#: utils/misc/guc_tables.c:1408 msgid "Logs each query's rewritten parse tree." msgstr "Протоколировать перезаписанное дерево разбора для каждого запроса." -#: utils/misc/guc_tables.c:1408 +#: utils/misc/guc_tables.c:1417 msgid "Logs each query's execution plan." msgstr "Протоколировать план выполнения каждого запроса." -#: utils/misc/guc_tables.c:1417 +#: utils/misc/guc_tables.c:1426 msgid "Indents parse and plan tree displays." msgstr "Отступы при отображении деревьев разбора и плана запросов." -#: utils/misc/guc_tables.c:1426 +#: utils/misc/guc_tables.c:1435 msgid "Writes parser performance statistics to the server log." msgstr "Запись статистики разбора запросов в протокол сервера." -#: utils/misc/guc_tables.c:1435 +#: utils/misc/guc_tables.c:1444 msgid "Writes planner performance statistics to the server log." msgstr "Запись статистики планирования в протокол сервера." -#: utils/misc/guc_tables.c:1444 +#: utils/misc/guc_tables.c:1453 msgid "Writes executor performance statistics to the server log." msgstr "Запись статистики выполнения запросов в протокол сервера." -#: utils/misc/guc_tables.c:1453 +#: utils/misc/guc_tables.c:1462 msgid "Writes cumulative performance statistics to the server log." msgstr "Запись общей статистики производительности в протокол сервера." -#: utils/misc/guc_tables.c:1463 +#: utils/misc/guc_tables.c:1472 msgid "" "Logs system resource usage statistics (memory and CPU) on various B-tree " "operations." @@ -33853,11 +33858,11 @@ msgstr "" "Фиксировать статистику использования системных ресурсов (памяти и " "процессора) при различных операциях с b-деревом." -#: utils/misc/guc_tables.c:1475 +#: utils/misc/guc_tables.c:1484 msgid "Collects information about executing commands." msgstr "Собирает информацию о выполняющихся командах." -#: utils/misc/guc_tables.c:1476 +#: utils/misc/guc_tables.c:1485 msgid "" "Enables the collection of information on the currently executing command of " "each session, along with the time at which that command began execution." @@ -33865,78 +33870,78 @@ msgstr "" "Включает сбор информации о командах, выполняющихся во всех сеансах, а также " "время запуска команды." -#: utils/misc/guc_tables.c:1486 +#: utils/misc/guc_tables.c:1495 msgid "Collects statistics on database activity." msgstr "Собирает статистику активности в БД." -#: utils/misc/guc_tables.c:1495 +#: utils/misc/guc_tables.c:1504 msgid "Collects timing statistics for cost-based vacuum delay." msgstr "Собирает статистику, связанную с задержкой очистки по стоимости." -#: utils/misc/guc_tables.c:1504 +#: utils/misc/guc_tables.c:1513 msgid "Collects timing statistics for database I/O activity." msgstr "Собирает статистику по времени активности ввода/вывода." -#: utils/misc/guc_tables.c:1513 +#: utils/misc/guc_tables.c:1522 msgid "Collects timing statistics for WAL I/O activity." msgstr "Собирает статистику по времени активности ввода/вывода WAL." -#: utils/misc/guc_tables.c:1523 +#: utils/misc/guc_tables.c:1532 msgid "Updates the process title to show the active SQL command." msgstr "Выводит в заголовок процесса активную SQL-команду." -#: utils/misc/guc_tables.c:1524 +#: utils/misc/guc_tables.c:1533 msgid "" "Enables updating of the process title every time a new SQL command is " "received by the server." msgstr "Отражает в заголовке процесса каждую SQL-команду, поступающую серверу." -#: utils/misc/guc_tables.c:1533 +#: utils/misc/guc_tables.c:1542 msgid "Starts the autovacuum subprocess." msgstr "Запускает подпроцесс автоочистки." -#: utils/misc/guc_tables.c:1543 +#: utils/misc/guc_tables.c:1552 msgid "Generates debugging output for LISTEN and NOTIFY." msgstr "Генерирует отладочные сообщения для LISTEN и NOTIFY." -#: utils/misc/guc_tables.c:1555 +#: utils/misc/guc_tables.c:1564 msgid "Emits information about lock usage." msgstr "Выдавать информацию о применяемых блокировках." -#: utils/misc/guc_tables.c:1565 +#: utils/misc/guc_tables.c:1574 msgid "Emits information about user lock usage." msgstr "Выдавать информацию о применяемых пользовательских блокировках." -#: utils/misc/guc_tables.c:1575 +#: utils/misc/guc_tables.c:1584 msgid "Emits information about lightweight lock usage." msgstr "Выдавать информацию о применяемых лёгких блокировках." -#: utils/misc/guc_tables.c:1585 +#: utils/misc/guc_tables.c:1594 msgid "" "Dumps information about all current locks when a deadlock timeout occurs." msgstr "" "Выводить информацию обо всех текущих блокировках в случае тайм-аута при " "взаимоблокировке." -#: utils/misc/guc_tables.c:1597 +#: utils/misc/guc_tables.c:1606 msgid "Logs long lock waits." msgstr "Протоколировать длительные ожидания в блокировках." -#: utils/misc/guc_tables.c:1606 +#: utils/misc/guc_tables.c:1615 msgid "Logs lock failures." msgstr "Протоколировать ошибки блокировок." -#: utils/misc/guc_tables.c:1615 +#: utils/misc/guc_tables.c:1624 msgid "Logs standby recovery conflict waits." msgstr "" "Протоколировать события ожидания разрешения конфликтов при восстановлении на " "ведомом." -#: utils/misc/guc_tables.c:1624 +#: utils/misc/guc_tables.c:1633 msgid "Logs the host name in the connection logs." msgstr "Записывать имя узла в протоколы подключений." -#: utils/misc/guc_tables.c:1625 +#: utils/misc/guc_tables.c:1634 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 " @@ -33948,11 +33953,11 @@ msgstr "" "параметр, но учтите, что это может значительно повлиять на " "производительность." -#: utils/misc/guc_tables.c:1636 +#: utils/misc/guc_tables.c:1645 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"." msgstr "Обрабатывать \"expr=NULL\" как \"expr IS NULL\"." -#: utils/misc/guc_tables.c:1637 +#: utils/misc/guc_tables.c:1646 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 " @@ -33964,21 +33969,21 @@ msgstr "" "совпадает с NULL, и false в противном случае. По правилам expr = NULL всегда " "должно возвращать null (неопределённость)." -#: utils/misc/guc_tables.c:1649 +#: utils/misc/guc_tables.c:1658 msgid "Sets the default read-only status of new transactions." msgstr "" "Устанавливает режим \"только чтение\" по умолчанию для новых транзакций." -#: utils/misc/guc_tables.c:1659 +#: utils/misc/guc_tables.c:1668 msgid "Sets the current transaction's read-only status." msgstr "Устанавливает режим \"только чтение\" для текущей транзакции." -#: utils/misc/guc_tables.c:1669 +#: utils/misc/guc_tables.c:1678 msgid "Sets the default deferrable status of new transactions." msgstr "" "Устанавливает режим отложенного выполнения по умолчанию для новых транзакций." -#: utils/misc/guc_tables.c:1678 +#: utils/misc/guc_tables.c:1687 msgid "" "Whether to defer a read-only serializable transaction until it can be " "executed with no possible serialization failures." @@ -33986,26 +33991,26 @@ msgstr "" "Определяет, откладывать ли сериализуемую транзакцию \"только чтение\" до " "момента, когда сбой сериализации будет исключён." -#: utils/misc/guc_tables.c:1688 +#: utils/misc/guc_tables.c:1697 msgid "Enables row security." msgstr "Включает защиту на уровне строк." -#: utils/misc/guc_tables.c:1689 +#: utils/misc/guc_tables.c:1698 msgid "When enabled, row security will be applied to all users." msgstr "" "Когда включена, защита на уровне строк распространяется на всех " "пользователей." -#: utils/misc/guc_tables.c:1697 +#: utils/misc/guc_tables.c:1706 msgid "Check routine bodies during CREATE FUNCTION and CREATE PROCEDURE." msgstr "" "Проверять тело подпрограмм в момент CREATE FUNCTION и CREATE PROCEDURE." -#: utils/misc/guc_tables.c:1706 +#: utils/misc/guc_tables.c:1715 msgid "Enables input of NULL elements in arrays." msgstr "Разрешает ввод элементов NULL в массивы." -#: utils/misc/guc_tables.c:1707 +#: utils/misc/guc_tables.c:1716 msgid "" "When turned on, unquoted NULL in an array input value means a null value; " "otherwise it is taken literally." @@ -34013,83 +34018,83 @@ msgstr "" "Когда этот параметр включён, NULL без кавычек при вводе в массив " "воспринимается как значение NULL, иначе — как строка." -#: utils/misc/guc_tables.c:1723 +#: utils/misc/guc_tables.c:1732 msgid "WITH OIDS is no longer supported; this can only be false." msgstr "" "WITH OIDS более не поддерживается; единственное допустимое значение — false." -#: utils/misc/guc_tables.c:1733 +#: utils/misc/guc_tables.c:1742 msgid "" "Start a subprocess to capture stderr, csvlog and/or jsonlog into log files." msgstr "" "Запускает подпроцесс для чтения stderr, csvlog и/или jsonlog и записи в " "файлы протоколов." -#: utils/misc/guc_tables.c:1742 +#: utils/misc/guc_tables.c:1751 msgid "Truncate existing log files of same name during log rotation." msgstr "" "Очищать уже существующий файл с тем же именем при прокручивании протокола." -#: utils/misc/guc_tables.c:1752 +#: utils/misc/guc_tables.c:1761 msgid "Emit information about resource usage in sorting." msgstr "Выдавать сведения об использовании ресурсов при сортировке." -#: utils/misc/guc_tables.c:1765 +#: utils/misc/guc_tables.c:1774 msgid "Generate debugging output for synchronized scanning." msgstr "Выдавать отладочные сообщения для синхронного сканирования." -#: utils/misc/guc_tables.c:1780 +#: utils/misc/guc_tables.c:1789 msgid "Enables bounded sorting using heap sort." msgstr "" "Разрешает ограниченную сортировку с применением пирамидальной сортировки." -#: utils/misc/guc_tables.c:1793 +#: utils/misc/guc_tables.c:1802 msgid "Emit WAL-related debugging output." msgstr "Выдавать отладочные сообщения, связанные с WAL." -#: utils/misc/guc_tables.c:1805 +#: utils/misc/guc_tables.c:1814 msgid "Shows whether datetimes are integer based." msgstr "Показывает, является ли реализация даты/времени целочисленной." -#: utils/misc/guc_tables.c:1816 +#: utils/misc/guc_tables.c:1825 msgid "" "Sets whether Kerberos and GSSAPI user names should be treated as case-" "insensitive." msgstr "" "Включает регистронезависимую обработку имён пользователей Kerberos и GSSAPI." -#: utils/misc/guc_tables.c:1826 +#: utils/misc/guc_tables.c:1835 msgid "Sets whether GSSAPI delegation should be accepted from the client." msgstr "Разрешает принимать от клиентов делегированные учётные данные GSSAPI." -#: utils/misc/guc_tables.c:1836 +#: utils/misc/guc_tables.c:1845 msgid "Warn about backslash escapes in ordinary string literals." msgstr "Предупреждения о спецсимволах '\\' в обычных строках." -#: utils/misc/guc_tables.c:1846 +#: utils/misc/guc_tables.c:1855 msgid "Causes '...' strings to treat backslashes literally." msgstr "Включает буквальную обработку символов '\\' в строках '...'." -#: utils/misc/guc_tables.c:1857 +#: utils/misc/guc_tables.c:1866 msgid "Enables synchronized sequential scans." msgstr "Включает синхронизацию последовательного сканирования." -#: utils/misc/guc_tables.c:1867 +#: utils/misc/guc_tables.c:1876 msgid "Sets whether to include or exclude transaction with recovery target." msgstr "Определяет, включать ли транзакцию в целевую точку восстановления." -#: utils/misc/guc_tables.c:1877 +#: utils/misc/guc_tables.c:1886 msgid "Starts the WAL summarizer process to enable incremental backup." msgstr "" "Запускает процесс обобщения WAL, необходимый для инкрементального " "копирования." -#: utils/misc/guc_tables.c:1887 +#: utils/misc/guc_tables.c:1896 msgid "Allows connections and queries during recovery." msgstr "" "Разрешает принимать новые подключения и запросы в процессе восстановления." -#: utils/misc/guc_tables.c:1897 +#: utils/misc/guc_tables.c:1906 msgid "" "Allows feedback from a hot standby to the primary that will avoid query " "conflicts." @@ -34097,19 +34102,19 @@ msgstr "" "Разрешает обратную связь сервера горячего резерва с основным для " "предотвращения конфликтов при длительных запросах." -#: utils/misc/guc_tables.c:1907 +#: utils/misc/guc_tables.c:1916 msgid "Shows whether hot standby is currently active." msgstr "Показывает, активен ли в настоящий момент режим горячего резерва." -#: utils/misc/guc_tables.c:1918 +#: utils/misc/guc_tables.c:1927 msgid "Allows modifications of the structure of system tables." msgstr "Разрешает модифицировать структуру системных таблиц." -#: utils/misc/guc_tables.c:1929 +#: utils/misc/guc_tables.c:1938 msgid "Disables reading from system indexes." msgstr "Запрещает использование системных индексов." -#: utils/misc/guc_tables.c:1930 +#: utils/misc/guc_tables.c:1939 msgid "" "It does not prevent updating the indexes, so it is safe to use. The worst " "consequence is slowness." @@ -34117,20 +34122,20 @@ msgstr "" "При этом индексы продолжают обновляться, так что данное поведение безопасно. " "Худшее следствие - замедление." -#: utils/misc/guc_tables.c:1941 +#: utils/misc/guc_tables.c:1950 msgid "Allows tablespaces directly inside pg_tblspc, for testing." msgstr "" "Позволяет размещать табличные пространства внутри pg_tblspc; предназначается " "для тестирования." -#: utils/misc/guc_tables.c:1952 +#: utils/misc/guc_tables.c:1961 msgid "" "Enables backward compatibility mode for privilege checks on large objects." msgstr "" "Включает режим обратной совместимости при проверке привилегий для больших " "объектов." -#: utils/misc/guc_tables.c:1953 +#: utils/misc/guc_tables.c:1962 msgid "" "Skips privilege checks when reading or modifying large objects, for " "compatibility with PostgreSQL releases prior to 9.0." @@ -34138,66 +34143,66 @@ msgstr "" "Пропускает проверки привилегий при чтении или изменении больших объектов " "(для совместимости с версиями PostgreSQL до 9.0)." -#: utils/misc/guc_tables.c:1963 +#: utils/misc/guc_tables.c:1972 msgid "When generating SQL fragments, quote all identifiers." msgstr "" "Генерируя SQL-фрагменты, заключать все идентификаторы в двойные кавычки." -#: utils/misc/guc_tables.c:1973 +#: utils/misc/guc_tables.c:1982 msgid "Shows whether data checksums are turned on for this cluster." msgstr "Показывает, включён ли в этом кластере контроль целостности данных." -#: utils/misc/guc_tables.c:1984 +#: utils/misc/guc_tables.c:1993 msgid "Add sequence number to syslog messages to avoid duplicate suppression." msgstr "" "Добавлять последовательный номер в сообщения syslog во избежание подавления " "повторов." -#: utils/misc/guc_tables.c:1994 +#: utils/misc/guc_tables.c:2003 msgid "Split messages sent to syslog by lines and to fit into 1024 bytes." msgstr "" "Разбивать сообщения, передаваемые в syslog, по строкам размером не больше " "1024 байт." -#: utils/misc/guc_tables.c:2004 +#: utils/misc/guc_tables.c:2013 msgid "Controls whether Gather and Gather Merge also run subplans." msgstr "" "Определяет, будут ли узлы сбора и сбора слиянием также выполнять подпланы." -#: utils/misc/guc_tables.c:2005 +#: utils/misc/guc_tables.c:2014 msgid "Should gather nodes also run subplans or just gather tuples?" msgstr "" "Должны ли узлы сбора также выполнять подпланы или только собирать кортежи?" -#: utils/misc/guc_tables.c:2015 +#: utils/misc/guc_tables.c:2024 msgid "Allow JIT compilation." msgstr "Включить JIT-компиляцию." -#: utils/misc/guc_tables.c:2026 +#: utils/misc/guc_tables.c:2035 msgid "Register JIT-compiled functions with debugger." msgstr "Регистрировать JIT-скомпилированные функции в отладчике." -#: utils/misc/guc_tables.c:2043 +#: utils/misc/guc_tables.c:2052 msgid "Write out LLVM bitcode to facilitate JIT debugging." msgstr "Выводить битовый код LLVM для облегчения отладки JIT." -#: utils/misc/guc_tables.c:2054 +#: utils/misc/guc_tables.c:2063 msgid "Allow JIT compilation of expressions." msgstr "Включить JIT-компиляцию выражений." -#: utils/misc/guc_tables.c:2065 +#: utils/misc/guc_tables.c:2074 msgid "Register JIT-compiled functions with perf profiler." msgstr "Регистрировать JIT-компилируемые функции в профилировщике perf." -#: utils/misc/guc_tables.c:2082 +#: utils/misc/guc_tables.c:2091 msgid "Allow JIT compilation of tuple deforming." msgstr "Разрешить JIT-компиляцию кода преобразования кортежей." -#: utils/misc/guc_tables.c:2093 +#: utils/misc/guc_tables.c:2102 msgid "Whether to continue running after a failure to sync data files." msgstr "Продолжать работу после ошибки при сохранении файлов данных на диске." -#: utils/misc/guc_tables.c:2102 +#: utils/misc/guc_tables.c:2111 msgid "" "Sets whether a WAL receiver should create a temporary replication slot if no " "permanent slot is configured." @@ -34205,17 +34210,17 @@ msgstr "" "Определяет, должен ли приёмник WAL создавать временный слот репликации, если " "не настроен постоянный слот." -#: utils/misc/guc_tables.c:2111 +#: utils/misc/guc_tables.c:2120 msgid "Enables event triggers." msgstr "Включает событийные триггеры." -#: utils/misc/guc_tables.c:2112 +#: utils/misc/guc_tables.c:2121 msgid "When enabled, event triggers will fire for all applicable statements." msgstr "" "При включении событийные триггеры будут срабатывать для всех операторов, для " "которых применимы." -#: utils/misc/guc_tables.c:2121 +#: utils/misc/guc_tables.c:2130 msgid "" "Enables a physical standby to synchronize logical failover replication slots " "from the primary server." @@ -34223,43 +34228,43 @@ msgstr "" "Позволяет физической реплике синхронизировать переносимые слоты логической " "репликации с ведущего сервера." -#: utils/misc/guc_tables.c:2130 +#: utils/misc/guc_tables.c:2139 msgid "Enables deprecation warnings for MD5 passwords." msgstr "Включает предупреждения об устаревших паролях в MD5." -#: utils/misc/guc_tables.c:2139 +#: utils/misc/guc_tables.c:2148 msgid "Enables vacuum to truncate empty pages at the end of the table." msgstr "Включает отсечение пустых страниц в конце таблицы при очистке." -#: utils/misc/guc_tables.c:2157 +#: utils/misc/guc_tables.c:2166 msgid "" "Sets the amount of time to wait before forcing a switch to the next WAL file." msgstr "" "Задаёт время задержки перед принудительным переключением на следующий файл " "WAL." -#: utils/misc/guc_tables.c:2159 utils/misc/guc_tables.c:2313 -#: utils/misc/guc_tables.c:2732 utils/misc/guc_tables.c:2743 -#: utils/misc/guc_tables.c:2754 utils/misc/guc_tables.c:2765 -#: utils/misc/guc_tables.c:2776 +#: utils/misc/guc_tables.c:2168 utils/misc/guc_tables.c:2322 +#: utils/misc/guc_tables.c:2741 utils/misc/guc_tables.c:2752 +#: utils/misc/guc_tables.c:2763 utils/misc/guc_tables.c:2774 +#: utils/misc/guc_tables.c:2785 msgid "0 disables the timeout." msgstr "0 отключает тай-аут." -#: utils/misc/guc_tables.c:2168 +#: utils/misc/guc_tables.c:2177 msgid "" "Sets the amount of time to wait after authentication on connection startup." msgstr "" "Задаёт время ожидания после аутентификации при установлении соединения." -#: utils/misc/guc_tables.c:2170 utils/misc/guc_tables.c:2908 +#: utils/misc/guc_tables.c:2179 utils/misc/guc_tables.c:2917 msgid "This allows attaching a debugger to the process." msgstr "Это позволяет подключить к процессу отладчик." -#: utils/misc/guc_tables.c:2179 +#: utils/misc/guc_tables.c:2188 msgid "Sets the default statistics target." msgstr "Устанавливает ориентир статистики по умолчанию." -#: utils/misc/guc_tables.c:2180 +#: utils/misc/guc_tables.c:2189 msgid "" "This applies to table columns that have not had a column-specific target set " "via ALTER TABLE SET STATISTICS." @@ -34267,13 +34272,13 @@ msgstr "" "Это значение распространяется на столбцы таблицы, для которых ориентир " "статистики не задан явно через ALTER TABLE SET STATISTICS." -#: utils/misc/guc_tables.c:2189 +#: utils/misc/guc_tables.c:2198 msgid "Sets the FROM-list size beyond which subqueries are not collapsed." msgstr "" "Задаёт предел для списка FROM, при превышении которого подзапросы не " "сворачиваются." -#: utils/misc/guc_tables.c:2191 +#: utils/misc/guc_tables.c:2200 msgid "" "The planner will merge subqueries into upper queries if the resulting FROM " "list would have no more than this many items." @@ -34281,13 +34286,13 @@ msgstr "" "Планировщик объединит вложенные запросы с внешними, если в полученном списке " "FROM будет не больше заданного числа элементов." -#: utils/misc/guc_tables.c:2202 +#: utils/misc/guc_tables.c:2211 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened." msgstr "" "Задаёт предел для списка FROM, при превышении которого конструкции JOIN " "сохраняются." -#: utils/misc/guc_tables.c:2204 +#: utils/misc/guc_tables.c:2213 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." @@ -34295,34 +34300,34 @@ msgstr "" "Планировщик будет сносить явные конструкции JOIN в списки FROM, пока в " "результирующем списке не больше заданного числа элементов." -#: utils/misc/guc_tables.c:2215 +#: utils/misc/guc_tables.c:2224 msgid "Sets the threshold of FROM items beyond which GEQO is used." msgstr "" "Задаёт предел для списка FROM, при превышении которого применяется GEQO." -#: utils/misc/guc_tables.c:2225 +#: utils/misc/guc_tables.c:2234 msgid "GEQO: effort is used to set the default for other GEQO parameters." msgstr "" "GEQO: оценка усилий для планирования, задающая значения по умолчанию для " "других параметров GEQO." -#: utils/misc/guc_tables.c:2235 +#: utils/misc/guc_tables.c:2244 msgid "GEQO: number of individuals in the population." msgstr "GEQO: число особей в популяции." -#: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 +#: utils/misc/guc_tables.c:2245 utils/misc/guc_tables.c:2255 msgid "0 means use a suitable default value." msgstr "С 0 выбирается подходящее значение по умолчанию." -#: utils/misc/guc_tables.c:2245 +#: utils/misc/guc_tables.c:2254 msgid "GEQO: number of iterations of the algorithm." msgstr "GEQO: число итераций алгоритма." -#: utils/misc/guc_tables.c:2257 +#: utils/misc/guc_tables.c:2266 msgid "Sets the time to wait on a lock before checking for deadlock." msgstr "Задаёт интервал ожидания в блокировке до проверки на взаимоблокировку." -#: utils/misc/guc_tables.c:2268 +#: utils/misc/guc_tables.c:2277 msgid "" "Sets the maximum delay before canceling queries when a hot standby server is " "processing archived WAL data." @@ -34330,11 +34335,11 @@ msgstr "" "Задаёт максимальную задержку до отмены запроса, когда сервер горячего " "резерва обрабатывает данные WAL из архива." -#: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 +#: utils/misc/guc_tables.c:2278 utils/misc/guc_tables.c:2289 msgid "-1 means wait forever." msgstr "-1 означает бесконечное ожидание." -#: utils/misc/guc_tables.c:2279 +#: utils/misc/guc_tables.c:2288 msgid "" "Sets the maximum delay before canceling queries when a hot standby server is " "processing streamed WAL data." @@ -34342,13 +34347,13 @@ msgstr "" "Задаёт максимальную задержку до отмены запроса, когда сервер горячего " "резерва обрабатывает данные WAL из потока." -#: utils/misc/guc_tables.c:2290 +#: utils/misc/guc_tables.c:2299 msgid "Sets the minimum delay for applying changes during recovery." msgstr "" "Задаёт минимальную задержку для применения изменений в процессе " "восстановления." -#: utils/misc/guc_tables.c:2301 +#: utils/misc/guc_tables.c:2310 msgid "" "Sets the maximum interval between WAL receiver status reports to the sending " "server." @@ -34356,21 +34361,21 @@ msgstr "" "Задаёт максимальный интервал между отчётами о состоянии приёмника WAL, " "отправляемыми передающему серверу." -#: utils/misc/guc_tables.c:2312 +#: utils/misc/guc_tables.c:2321 msgid "Sets the maximum wait time to receive data from the sending server." msgstr "" "Задаёт предельное время ожидания для получения данных от передающего сервера." -#: utils/misc/guc_tables.c:2323 +#: utils/misc/guc_tables.c:2332 msgid "Sets the maximum number of concurrent connections." msgstr "Задаёт максимально возможное число подключений." -#: utils/misc/guc_tables.c:2334 +#: utils/misc/guc_tables.c:2343 msgid "Sets the number of connection slots reserved for superusers." msgstr "" "Определяет, сколько слотов подключений забронировано для суперпользователей." -#: utils/misc/guc_tables.c:2344 +#: utils/misc/guc_tables.c:2353 msgid "" "Sets the number of connection slots reserved for roles with privileges of " "pg_use_reserved_connections." @@ -34378,19 +34383,19 @@ msgstr "" "Определяет, сколько слотов подключений забронировано для ролей с правом " "pg_use_reserved_connections." -#: utils/misc/guc_tables.c:2355 +#: utils/misc/guc_tables.c:2364 msgid "Amount of dynamic shared memory reserved at startup." msgstr "Объём динамической разделяемой памяти, резервируемый при запуске." -#: utils/misc/guc_tables.c:2370 +#: utils/misc/guc_tables.c:2379 msgid "Sets the number of shared memory buffers used by the server." msgstr "Задаёт количество буферов в разделяемой памяти, используемых сервером." -#: utils/misc/guc_tables.c:2381 +#: utils/misc/guc_tables.c:2390 msgid "Sets the buffer pool size for VACUUM, ANALYZE, and autovacuum." msgstr "Задаёт размер пула буферов для операций VACUUM, ANALYZE и автоочистки." -#: utils/misc/guc_tables.c:2392 +#: utils/misc/guc_tables.c:2401 msgid "" "Shows the size of the server's main shared memory area (rounded up to the " "nearest MB)." @@ -34398,21 +34403,21 @@ msgstr "" "Показывает объём основной области общей памяти сервера (округляется до " "ближайшего значения в мегабайтах)." -#: utils/misc/guc_tables.c:2403 +#: utils/misc/guc_tables.c:2412 msgid "Shows the number of huge pages needed for the main shared memory area." msgstr "" "Показывает количество огромных страниц, необходимое для основной области " "общей памяти." -#: utils/misc/guc_tables.c:2404 +#: utils/misc/guc_tables.c:2413 msgid "-1 means huge pages are not supported." msgstr "-1 означает, что огромные страницы не поддерживаются." -#: utils/misc/guc_tables.c:2414 +#: utils/misc/guc_tables.c:2423 msgid "Shows the number of semaphores required for the server." msgstr "Показывает, сколько семафоров требуется для сервера." -#: utils/misc/guc_tables.c:2425 +#: utils/misc/guc_tables.c:2434 msgid "" "Sets the size of the dedicated buffer pool used for the commit timestamp " "cache." @@ -34420,12 +34425,12 @@ msgstr "" "Задаёт размер выделенного пула буферов, используемых для кеширования времени " "фиксации транзакций." -#: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 -#: utils/misc/guc_tables.c:2492 +#: utils/misc/guc_tables.c:2435 utils/misc/guc_tables.c:2490 +#: utils/misc/guc_tables.c:2501 msgid "0 means use a fraction of \"shared_buffers\"." msgstr "0 означает — использовать процент от \"shared_buffers\"." -#: utils/misc/guc_tables.c:2436 +#: utils/misc/guc_tables.c:2445 msgid "" "Sets the size of the dedicated buffer pool used for the MultiXact member " "cache." @@ -34433,7 +34438,7 @@ msgstr "" "Задаёт размер выделенного пула буферов, используемых для кеширования " "членства в MultiXact." -#: utils/misc/guc_tables.c:2447 +#: utils/misc/guc_tables.c:2456 msgid "" "Sets the size of the dedicated buffer pool used for the MultiXact offset " "cache." @@ -34441,7 +34446,7 @@ msgstr "" "Задаёт размер выделенного пула буферов, используемых для кеширования " "смещений MultiXact." -#: utils/misc/guc_tables.c:2458 +#: utils/misc/guc_tables.c:2467 msgid "" "Sets the size of the dedicated buffer pool used for the LISTEN/NOTIFY " "message cache." @@ -34449,7 +34454,7 @@ msgstr "" "Задаёт размер выделенного пула буферов, используемых для кеширования " "сообщений LISTEN/NOTIFY." -#: utils/misc/guc_tables.c:2469 +#: utils/misc/guc_tables.c:2478 msgid "" "Sets the size of the dedicated buffer pool used for the serializable " "transaction cache." @@ -34457,14 +34462,14 @@ msgstr "" "Задаёт размер выделенного пула буферов, используемых для кеширования " "сериализуемых транзакций." -#: utils/misc/guc_tables.c:2480 +#: utils/misc/guc_tables.c:2489 msgid "" "Sets the size of the dedicated buffer pool used for the subtransaction cache." msgstr "" "Задаёт размер выделенного пула буферов, используемых для кеширования " "подтранзакций." -#: utils/misc/guc_tables.c:2491 +#: utils/misc/guc_tables.c:2500 msgid "" "Sets the size of the dedicated buffer pool used for the transaction status " "cache." @@ -34472,19 +34477,19 @@ msgstr "" "Задаёт размер выделенного пула буферов, используемых для кеширования статуса " "транзакций." -#: utils/misc/guc_tables.c:2502 +#: utils/misc/guc_tables.c:2511 msgid "Sets the maximum number of temporary buffers used by each session." msgstr "Задаёт предельное число временных буферов на один сеанс." -#: utils/misc/guc_tables.c:2513 +#: utils/misc/guc_tables.c:2522 msgid "Sets the TCP port the server listens on." msgstr "Задаёт TCP-порт для работы сервера." -#: utils/misc/guc_tables.c:2523 +#: utils/misc/guc_tables.c:2532 msgid "Sets the access permissions of the Unix-domain socket." msgstr "Задаёт права доступа для Unix-сокета." -#: utils/misc/guc_tables.c:2524 +#: utils/misc/guc_tables.c:2533 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 " @@ -34496,11 +34501,11 @@ msgstr "" "воспринимаемом системными функциями chmod и umask. (Чтобы использовать " "привычный восьмеричный формат, добавьте в начало ноль (0).)" -#: utils/misc/guc_tables.c:2538 +#: utils/misc/guc_tables.c:2547 msgid "Sets the file permissions for log files." msgstr "Задаёт права доступа к файлам протоколов." -#: utils/misc/guc_tables.c:2539 +#: utils/misc/guc_tables.c:2548 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 " @@ -34510,11 +34515,11 @@ msgstr "" "функциями chmod и umask. (Чтобы использовать привычный восьмеричный формат, " "добавьте в начало ноль (0).)" -#: utils/misc/guc_tables.c:2553 +#: utils/misc/guc_tables.c:2562 msgid "Shows the mode of the data directory." msgstr "Показывает режим каталога данных." -#: utils/misc/guc_tables.c:2554 +#: utils/misc/guc_tables.c:2563 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 " @@ -34524,11 +34529,11 @@ msgstr "" "функциями chmod и umask. (Чтобы использовать привычный восьмеричный формат, " "добавьте в начало ноль (0).)" -#: utils/misc/guc_tables.c:2567 +#: utils/misc/guc_tables.c:2576 msgid "Sets the maximum memory to be used for query workspaces." msgstr "Задаёт предельный объём памяти для рабочих пространств запросов." -#: utils/misc/guc_tables.c:2568 +#: utils/misc/guc_tables.c:2577 msgid "" "This much memory can be used by each internal sort operation and hash table " "before switching to temporary disk files." @@ -34536,19 +34541,19 @@ msgstr "" "Такой объём памяти может использоваться каждой внутренней операцией " "сортировки и таблицей хешей до переключения на временные файлы на диске." -#: utils/misc/guc_tables.c:2585 +#: utils/misc/guc_tables.c:2594 msgid "Sets the maximum memory to be used for maintenance operations." msgstr "Задаёт предельный объём памяти для операций по обслуживанию." -#: utils/misc/guc_tables.c:2586 +#: utils/misc/guc_tables.c:2595 msgid "This includes operations such as VACUUM and CREATE INDEX." msgstr "Подразумеваются в частности операции VACUUM и CREATE INDEX." -#: utils/misc/guc_tables.c:2596 +#: utils/misc/guc_tables.c:2605 msgid "Sets the maximum memory to be used for logical decoding." msgstr "Задаёт предельный объём памяти для логического декодирования." -#: utils/misc/guc_tables.c:2597 +#: utils/misc/guc_tables.c:2606 msgid "" "This much memory can be used by each internal reorder buffer before spilling " "to disk." @@ -34556,46 +34561,46 @@ msgstr "" "Такой объём памяти может использоваться каждым внутренним буфером " "пересортировки до вымещения данных на диск." -#: utils/misc/guc_tables.c:2613 +#: utils/misc/guc_tables.c:2622 msgid "Sets the maximum stack depth, in kilobytes." msgstr "Задаёт максимальную глубину стека (в КБ)." -#: utils/misc/guc_tables.c:2624 +#: utils/misc/guc_tables.c:2633 msgid "Limits the total size of all temporary files used by each process." msgstr "" "Ограничивает общий размер всех временных файлов, доступный для каждого " "процесса." -#: utils/misc/guc_tables.c:2625 +#: utils/misc/guc_tables.c:2634 msgid "-1 means no limit." msgstr "-1 отключает ограничение." -#: utils/misc/guc_tables.c:2635 +#: utils/misc/guc_tables.c:2644 msgid "Vacuum cost for a page found in the buffer cache." msgstr "Стоимость очистки для страницы, найденной в кеше." -#: utils/misc/guc_tables.c:2645 +#: utils/misc/guc_tables.c:2654 msgid "Vacuum cost for a page not found in the buffer cache." msgstr "Стоимость очистки для страницы, не найденной в кеше." -#: utils/misc/guc_tables.c:2655 +#: utils/misc/guc_tables.c:2664 msgid "Vacuum cost for a page dirtied by vacuum." msgstr "Стоимость очистки для страницы, которая не была \"грязной\"." -#: utils/misc/guc_tables.c:2665 +#: utils/misc/guc_tables.c:2674 msgid "Vacuum cost amount available before napping." msgstr "Суммарная стоимость очистки, при которой нужна передышка." -#: utils/misc/guc_tables.c:2675 +#: utils/misc/guc_tables.c:2684 msgid "Vacuum cost amount available before napping, for autovacuum." msgstr "" "Суммарная стоимость очистки, при которой нужна передышка, для автоочистки." -#: utils/misc/guc_tables.c:2676 +#: utils/misc/guc_tables.c:2685 msgid "-1 means use \"vacuum_cost_limit\"." msgstr "-1 означает — использовать \"vacuum_cost_limit\"." -#: utils/misc/guc_tables.c:2685 +#: utils/misc/guc_tables.c:2694 msgid "" "Sets the maximum number of files each server process is allowed to open " "simultaneously." @@ -34603,38 +34608,38 @@ msgstr "" "Задаёт предельное число файлов, которые могут быть открыты каждым серверным " "процессом одновременно." -#: utils/misc/guc_tables.c:2698 +#: utils/misc/guc_tables.c:2707 msgid "Sets the maximum number of simultaneously prepared transactions." msgstr "Задаёт предельное число одновременно подготовленных транзакций." -#: utils/misc/guc_tables.c:2709 +#: utils/misc/guc_tables.c:2718 msgid "Sets the minimum OID of tables for tracking locks." msgstr "Задаёт минимальный OID таблиц, для которых отслеживаются блокировки." -#: utils/misc/guc_tables.c:2710 +#: utils/misc/guc_tables.c:2719 msgid "Is used to avoid output on system tables." msgstr "Применяется для игнорирования системных таблиц." -#: utils/misc/guc_tables.c:2719 +#: utils/misc/guc_tables.c:2728 msgid "Sets the OID of the table with unconditionally lock tracing." msgstr "Задаёт OID таблицы для безусловного отслеживания блокировок." -#: utils/misc/guc_tables.c:2731 +#: utils/misc/guc_tables.c:2740 msgid "Sets the maximum allowed duration of any statement." msgstr "Задаёт предельную длительность для любого оператора." -#: utils/misc/guc_tables.c:2742 +#: utils/misc/guc_tables.c:2751 msgid "Sets the maximum allowed duration of any wait for a lock." msgstr "Задаёт максимальную продолжительность ожидания блокировок." -#: utils/misc/guc_tables.c:2753 +#: utils/misc/guc_tables.c:2762 msgid "" "Sets the maximum allowed idle time between queries, when in a transaction." msgstr "" "Задаёт предельно допустимую длительность простоя между запросами в " "транзакции." -#: utils/misc/guc_tables.c:2764 +#: utils/misc/guc_tables.c:2773 msgid "" "Sets the maximum allowed duration of any transaction within a session (not a " "prepared transaction)." @@ -34642,7 +34647,7 @@ msgstr "" "Задаёт предельно допустимую длительность для любых транзакций в сеансе " "(кроме подготовленных)." -#: utils/misc/guc_tables.c:2775 +#: utils/misc/guc_tables.c:2784 msgid "" "Sets the maximum allowed idle time between queries, when not in a " "transaction." @@ -34650,37 +34655,37 @@ msgstr "" "Задаёт предельно допустимую длительность простоя между запросами вне " "транзакций." -#: utils/misc/guc_tables.c:2786 +#: utils/misc/guc_tables.c:2795 msgid "Minimum age at which VACUUM should freeze a table row." msgstr "" "Минимальный возраст строк таблицы, при котором VACUUM может их заморозить." -#: utils/misc/guc_tables.c:2796 +#: utils/misc/guc_tables.c:2805 msgid "Age at which VACUUM should scan whole table to freeze tuples." msgstr "" "Возраст, при котором VACUUM должен сканировать всю таблицу с целью " "заморозить кортежи." -#: utils/misc/guc_tables.c:2806 +#: utils/misc/guc_tables.c:2815 msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row." msgstr "" "Минимальный возраст, при котором VACUUM будет замораживать MultiXactId в " "строке таблицы." -#: utils/misc/guc_tables.c:2816 +#: utils/misc/guc_tables.c:2825 msgid "Multixact age at which VACUUM should scan whole table to freeze tuples." msgstr "" "Возраст multixact, при котором VACUUM должен сканировать всю таблицу с целью " "заморозить кортежи." -#: utils/misc/guc_tables.c:2826 +#: utils/misc/guc_tables.c:2835 msgid "" "Age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "" "Возраст, при котором VACUUM должен включить защиту от зацикливания во " "избежание отказа." -#: utils/misc/guc_tables.c:2835 +#: utils/misc/guc_tables.c:2844 msgid "" "Multixact age at which VACUUM should trigger failsafe to avoid a wraparound " "outage." @@ -34688,11 +34693,11 @@ msgstr "" "Возраст мультитранзакций, при котором VACUUM должен включить защиту от " "зацикливания во избежание отказа." -#: utils/misc/guc_tables.c:2848 +#: utils/misc/guc_tables.c:2857 msgid "Sets the maximum number of locks per transaction." msgstr "Задаёт предельное число блокировок на транзакцию." -#: utils/misc/guc_tables.c:2849 +#: utils/misc/guc_tables.c:2858 msgid "" "The shared lock table is sized on the assumption that at most " "\"max_locks_per_transaction\" objects per server process or prepared " @@ -34703,11 +34708,11 @@ msgstr "" "\"max_locks_per_transaction\" объектов для одного серверного процесса или " "подготовленной транзакции." -#: utils/misc/guc_tables.c:2860 +#: utils/misc/guc_tables.c:2869 msgid "Sets the maximum number of predicate locks per transaction." msgstr "Задаёт предельное число предикатных блокировок на транзакцию." -#: utils/misc/guc_tables.c:2861 +#: utils/misc/guc_tables.c:2870 msgid "" "The shared predicate lock table is sized on the assumption that at most " "\"max_pred_locks_per_transaction\" objects per server process or prepared " @@ -34718,14 +34723,14 @@ msgstr "" "\"max_pred_locks_per_transaction\" объектов для одного серверного процесса " "или подготовленной транзакции." -#: utils/misc/guc_tables.c:2872 +#: utils/misc/guc_tables.c:2881 msgid "" "Sets the maximum number of predicate-locked pages and tuples per relation." msgstr "" "Задаёт максимальное число страниц и кортежей, блокируемых предикатными " "блокировками в одном отношении." -#: utils/misc/guc_tables.c:2873 +#: utils/misc/guc_tables.c:2882 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." @@ -34733,13 +34738,13 @@ msgstr "" "Если одним соединением блокируется больше этого общего числа страниц и " "кортежей, эти блокировки заменяются блокировкой на уровне отношения." -#: utils/misc/guc_tables.c:2883 +#: utils/misc/guc_tables.c:2892 msgid "Sets the maximum number of predicate-locked tuples per page." msgstr "" "Задаёт максимальное число кортежей, блокируемых предикатными блокировками в " "одной странице." -#: utils/misc/guc_tables.c:2884 +#: utils/misc/guc_tables.c:2893 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." @@ -34747,50 +34752,50 @@ msgstr "" "Если одним соединением блокируется больше этого числа кортежей на одной " "странице, эти блокировки заменяются блокировкой на уровне страницы." -#: utils/misc/guc_tables.c:2894 +#: utils/misc/guc_tables.c:2903 msgid "Sets the maximum allowed time to complete client authentication." msgstr "Ограничивает время, за которое клиент должен пройти аутентификацию." -#: utils/misc/guc_tables.c:2906 +#: utils/misc/guc_tables.c:2915 msgid "" "Sets the amount of time to wait before authentication on connection startup." msgstr "Задаёт время ожидания до аутентификации при установлении соединения." -#: utils/misc/guc_tables.c:2918 +#: utils/misc/guc_tables.c:2927 msgid "Sets the maximum number of allocated pages for NOTIFY / LISTEN queue." msgstr "" "Задаёт максимальное число страниц, выделяемых для очереди NOTIFY / LISTEN." -#: utils/misc/guc_tables.c:2928 +#: utils/misc/guc_tables.c:2937 msgid "Buffer size for reading ahead in the WAL during recovery." msgstr "Размер буфера для упреждающего чтения WAL во время восстановления." -#: utils/misc/guc_tables.c:2929 +#: utils/misc/guc_tables.c:2938 msgid "" "Maximum distance to read ahead in the WAL to prefetch referenced data blocks." msgstr "" "Максимальный объём WAL, прочитываемый наперёд для осуществления предвыборки " "изменяемых блоков данных." -#: utils/misc/guc_tables.c:2939 +#: utils/misc/guc_tables.c:2948 msgid "Sets the size of WAL files held for standby servers." msgstr "" "Определяет предельный объём файлов WAL, сохраняемых для резервных серверов." -#: utils/misc/guc_tables.c:2950 +#: utils/misc/guc_tables.c:2959 msgid "Sets the minimum size to shrink the WAL to." msgstr "Задаёт минимальный размер WAL при сжатии." -#: utils/misc/guc_tables.c:2962 +#: utils/misc/guc_tables.c:2971 msgid "Sets the WAL size that triggers a checkpoint." msgstr "Задаёт размер WAL, при котором инициируется контрольная точка." -#: utils/misc/guc_tables.c:2974 +#: utils/misc/guc_tables.c:2983 msgid "Sets the maximum time between automatic WAL checkpoints." msgstr "" "Задаёт максимальное время между автоматическими контрольными точками WAL." -#: utils/misc/guc_tables.c:2985 +#: utils/misc/guc_tables.c:2994 msgid "" "Sets the maximum time before warning if checkpoints triggered by WAL volume " "happen too frequently." @@ -34798,7 +34803,7 @@ msgstr "" "Задаёт максимальный интервал, в котором выдаётся предупреждение о том, что " "контрольные точки, вызванные активностью WAL, происходят слишком часто." -#: utils/misc/guc_tables.c:2987 +#: utils/misc/guc_tables.c:2996 msgid "" "Write a message to the server log if checkpoints caused by the filling of " "WAL segment files happen more frequently than this amount of time. 0 " @@ -34808,58 +34813,58 @@ msgstr "" "контрольными точками, вызванными заполнением файлов сегментов WAL, меньше " "заданного значения. 0 отключает эти предупреждения." -#: utils/misc/guc_tables.c:3000 utils/misc/guc_tables.c:3230 -#: utils/misc/guc_tables.c:3322 +#: utils/misc/guc_tables.c:3009 utils/misc/guc_tables.c:3239 +#: utils/misc/guc_tables.c:3331 msgid "" "Number of pages after which previously performed writes are flushed to disk." msgstr "" "Число страниц, по достижении которого ранее выполненные операции записи " "сбрасываются на диск." -#: utils/misc/guc_tables.c:3001 utils/misc/guc_tables.c:3231 -#: utils/misc/guc_tables.c:3323 +#: utils/misc/guc_tables.c:3010 utils/misc/guc_tables.c:3240 +#: utils/misc/guc_tables.c:3332 msgid "0 disables forced writeback." msgstr "0 отключает принудительную запись." -#: utils/misc/guc_tables.c:3011 +#: utils/misc/guc_tables.c:3020 msgid "Sets the number of disk-page buffers in shared memory for WAL." msgstr "Задаёт число буферов дисковых страниц в разделяемой памяти для WAL." -#: utils/misc/guc_tables.c:3012 +#: utils/misc/guc_tables.c:3021 msgid "-1 means use a fraction of \"shared_buffers\"." msgstr "-1 означает — использовать процент от \"shared_buffers\"." -#: utils/misc/guc_tables.c:3022 +#: utils/misc/guc_tables.c:3031 msgid "Time between WAL flushes performed in the WAL writer." msgstr "Задержка между сбросом WAL в процессе, записывающем WAL." -#: utils/misc/guc_tables.c:3033 +#: utils/misc/guc_tables.c:3042 msgid "Amount of WAL written out by WAL writer that triggers a flush." msgstr "" "Объём WAL, обработанный пишущим WAL процессом, при котором инициируется " "сброс журнала на диск." -#: utils/misc/guc_tables.c:3044 +#: utils/misc/guc_tables.c:3053 msgid "Minimum size of new file to fsync instead of writing WAL." msgstr "" "Размер нового файла, при достижении которого файл не пишется в WAL, а " "сбрасывается на диск." -#: utils/misc/guc_tables.c:3055 +#: utils/misc/guc_tables.c:3064 msgid "Sets the maximum number of simultaneously running WAL sender processes." msgstr "" "Задаёт предельное число одновременно работающих процессов передачи WAL." -#: utils/misc/guc_tables.c:3066 +#: utils/misc/guc_tables.c:3075 msgid "Sets the maximum number of simultaneously defined replication slots." msgstr "Задаёт предельное число одновременно существующих слотов репликации." -#: utils/misc/guc_tables.c:3076 +#: utils/misc/guc_tables.c:3085 msgid "Sets the maximum WAL size that can be reserved by replication slots." msgstr "" "Задаёт максимальный размер WAL, который могут резервировать слоты репликации." -#: utils/misc/guc_tables.c:3077 +#: utils/misc/guc_tables.c:3086 msgid "" "Replication slots will be marked as failed, and segments released for " "deletion or recycling, if this much space is occupied by WAL on disk. -1 " @@ -34869,11 +34874,11 @@ msgstr "" "помечены как нерабочие, а сегменты будут освобождены для удаления или " "переработки. -1 означает отсутствие такого предела." -#: utils/misc/guc_tables.c:3089 +#: utils/misc/guc_tables.c:3098 msgid "Sets the maximum time to wait for WAL replication." msgstr "Задаёт предельное время ожидания репликации WAL." -#: utils/misc/guc_tables.c:3100 +#: utils/misc/guc_tables.c:3109 msgid "" "Sets the duration a replication slot can remain idle before it is " "invalidated." @@ -34881,7 +34886,7 @@ msgstr "" "Задаёт время, в течение которого слот репликации может простаивать, прежде " "чем он аннулируется." -#: utils/misc/guc_tables.c:3112 +#: utils/misc/guc_tables.c:3121 msgid "" "Sets the delay in microseconds between transaction commit and flushing WAL " "to disk." @@ -34889,7 +34894,7 @@ msgstr "" "Задаёт задержку в микросекундах между фиксированием транзакций и сбросом WAL " "на диск." -#: utils/misc/guc_tables.c:3124 +#: utils/misc/guc_tables.c:3133 msgid "" "Sets the minimum number of concurrent open transactions required before " "performing \"commit_delay\"." @@ -34897,11 +34902,11 @@ msgstr "" "Задаёт минимальное число одновременно открытых транзакций, которое требуется " "для применения \"commit_delay\"." -#: utils/misc/guc_tables.c:3135 +#: utils/misc/guc_tables.c:3144 msgid "Sets the number of digits displayed for floating-point values." msgstr "Задаёт число выводимых цифр для чисел с плавающей точкой." -#: utils/misc/guc_tables.c:3136 +#: utils/misc/guc_tables.c:3145 msgid "" "This affects real, double precision, and geometric data types. A zero or " "negative parameter value is added to the standard number of digits (FLT_DIG " @@ -34913,7 +34918,7 @@ msgstr "" "(FLT_DIG или DBL_DIG соответственно). Положительное значение включает режим " "точного вывода." -#: utils/misc/guc_tables.c:3148 +#: utils/misc/guc_tables.c:3157 msgid "" "Sets the minimum execution time above which a sample of statements will be " "logged. Sampling is determined by \"log_statement_sample_rate\"." @@ -34922,25 +34927,25 @@ msgstr "" "которого он выводится в журнал. Выборка определяется параметром " "\"log_statement_sample_rate\"." -#: utils/misc/guc_tables.c:3151 +#: utils/misc/guc_tables.c:3160 msgid "-1 disables sampling. 0 means sample all statements." msgstr "-1 отключает выборку. 0 означает — выбирать все операторы." -#: utils/misc/guc_tables.c:3161 +#: utils/misc/guc_tables.c:3170 msgid "" "Sets the minimum execution time above which all statements will be logged." msgstr "" "Задаёт предельное время выполнения любого оператора, при превышении которого " "он выводится в журнал." -#: utils/misc/guc_tables.c:3163 +#: utils/misc/guc_tables.c:3172 msgid "" "-1 disables logging statement durations. 0 means log all statement durations." msgstr "" "-1 отключает вывод продолжительности операторов. С 0 выводится длительность " "всех операторов." -#: utils/misc/guc_tables.c:3173 +#: utils/misc/guc_tables.c:3182 msgid "" "Sets the minimum execution time above which autovacuum actions will be " "logged." @@ -34948,14 +34953,14 @@ msgstr "" "Задаёт предельное время выполнения автоочистки, при превышении которого эта " "операция протоколируется в журнале." -#: utils/misc/guc_tables.c:3175 +#: utils/misc/guc_tables.c:3184 msgid "" "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." msgstr "" "-1 отключает запись действий автоочистки. С 0 записываются все действия " "процесса автоочистки." -#: utils/misc/guc_tables.c:3185 +#: utils/misc/guc_tables.c:3194 msgid "" "Sets the maximum length in bytes of data logged for bind parameter values " "when logging statements." @@ -34963,11 +34968,11 @@ msgstr "" "Задаёт максимальный размер данных (в байтах), выводимых в значениях " "привязанных параметров при протоколировании операторов." -#: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 +#: utils/misc/guc_tables.c:3196 utils/misc/guc_tables.c:3208 msgid "-1 means log values in full." msgstr "-1 означает — выводить значения полностью." -#: utils/misc/guc_tables.c:3197 +#: utils/misc/guc_tables.c:3206 msgid "" "Sets the maximum length in bytes of data logged for bind parameter values " "when logging statements, on error." @@ -34975,21 +34980,21 @@ msgstr "" "Задаёт максимальный размер данных (в байтах), выводимых в значениях " "привязанных параметров при протоколировании операторов в случае ошибки." -#: utils/misc/guc_tables.c:3209 +#: utils/misc/guc_tables.c:3218 msgid "Background writer sleep time between rounds." msgstr "Время простоя в процессе фоновой записи между подходами." -#: utils/misc/guc_tables.c:3220 +#: utils/misc/guc_tables.c:3229 msgid "Background writer maximum number of LRU pages to flush per round." msgstr "" "Максимальное число LRU-страниц, сбрасываемых за один подход, в процессе " "фоновой записи." -#: utils/misc/guc_tables.c:3221 +#: utils/misc/guc_tables.c:3230 msgid "0 disables background writing." msgstr "0 отключает фоновую запись." -#: utils/misc/guc_tables.c:3243 +#: utils/misc/guc_tables.c:3252 msgid "" "Number of simultaneous requests that can be handled efficiently by the disk " "subsystem." @@ -34997,174 +35002,174 @@ msgstr "" "Число одновременных запросов, которые могут быть эффективно обработаны " "дисковой подсистемой." -#: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 +#: utils/misc/guc_tables.c:3253 utils/misc/guc_tables.c:3267 msgid "0 disables simultaneous requests." msgstr "0 отключает одновременные запросы." -#: utils/misc/guc_tables.c:3257 +#: utils/misc/guc_tables.c:3266 msgid "" "A variant of \"effective_io_concurrency\" that is used for maintenance work." msgstr "" "Вариация параметра \"effective_io_concurrency\", предназначенная для " "операций обслуживания БД." -#: utils/misc/guc_tables.c:3272 +#: utils/misc/guc_tables.c:3281 msgid "Server-wide limit that clamps io_combine_limit." msgstr "Глобальный предел сервера, ограничивающий io_combine_limit." -#: utils/misc/guc_tables.c:3286 +#: utils/misc/guc_tables.c:3295 msgid "Limit on the size of data reads and writes." msgstr "Предельный размер для операций чтения и записи данных." -#: utils/misc/guc_tables.c:3300 +#: utils/misc/guc_tables.c:3309 msgid "Max number of IOs that one process can execute simultaneously." msgstr "" "Максимальное число операций ввода/вывода, которые могут выполняться " "одновременно одним процессом." -#: utils/misc/guc_tables.c:3312 +#: utils/misc/guc_tables.c:3321 msgid "Number of IO worker processes, for io_method=worker." msgstr "Число рабочих процессов ввода/вывода, для io_method=worker." -#: utils/misc/guc_tables.c:3335 +#: utils/misc/guc_tables.c:3344 msgid "Maximum number of concurrent worker processes." msgstr "Задаёт максимально возможное число рабочих процессов." -#: utils/misc/guc_tables.c:3347 +#: utils/misc/guc_tables.c:3356 msgid "Maximum number of logical replication worker processes." msgstr "" "Задаёт максимально возможное число рабочих процессов логической репликации." -#: utils/misc/guc_tables.c:3359 +#: utils/misc/guc_tables.c:3368 msgid "Maximum number of table synchronization workers per subscription." msgstr "" "Задаёт максимально возможное число процессов синхронизации таблиц для одной " "подписки." -#: utils/misc/guc_tables.c:3371 +#: utils/misc/guc_tables.c:3380 msgid "Maximum number of parallel apply workers per subscription." msgstr "" "Задаёт максимально возможное число параллельных применяющих процессов для " "одной подписки." -#: utils/misc/guc_tables.c:3383 +#: utils/misc/guc_tables.c:3392 msgid "Sets the maximum number of active replication origins." msgstr "Задаёт предельное число активных источников репликации." -#: utils/misc/guc_tables.c:3393 +#: utils/misc/guc_tables.c:3402 msgid "Sets the amount of time to wait before forcing log file rotation." msgstr "" "Задаёт время задержки перед принудительным переключением на следующий файл " "журнала." -#: utils/misc/guc_tables.c:3395 +#: utils/misc/guc_tables.c:3404 msgid "0 disables time-based creation of new log files." msgstr "0 отключает создание новых файлов журнала по времени." -#: utils/misc/guc_tables.c:3405 +#: utils/misc/guc_tables.c:3414 msgid "Sets the maximum size a log file can reach before being rotated." msgstr "" "Задаёт максимальный размер, которого может достичь файл журнала до " "переключения на другой файл." -#: utils/misc/guc_tables.c:3407 +#: utils/misc/guc_tables.c:3416 msgid "0 disables size-based creation of new log files." msgstr "0 отключает создание новых файлов журнала по размеру." -#: utils/misc/guc_tables.c:3417 +#: utils/misc/guc_tables.c:3426 msgid "Shows the maximum number of function arguments." msgstr "Показывает максимально возможное число аргументов функций." -#: utils/misc/guc_tables.c:3428 +#: utils/misc/guc_tables.c:3437 msgid "Shows the maximum number of index keys." msgstr "Показывает максимально возможное число ключей в индексе." -#: utils/misc/guc_tables.c:3439 +#: utils/misc/guc_tables.c:3448 msgid "Shows the maximum identifier length." msgstr "Показывает максимально возможную длину идентификатора." -#: utils/misc/guc_tables.c:3450 +#: utils/misc/guc_tables.c:3459 msgid "Shows the size of a disk block." msgstr "Показывает размер дискового блока." -#: utils/misc/guc_tables.c:3461 +#: utils/misc/guc_tables.c:3470 msgid "Shows the number of pages per disk file." msgstr "Показывает число страниц в одном файле." -#: utils/misc/guc_tables.c:3472 +#: utils/misc/guc_tables.c:3481 msgid "Shows the block size in the write ahead log." msgstr "Показывает размер блока в журнале WAL." -#: utils/misc/guc_tables.c:3483 +#: utils/misc/guc_tables.c:3492 msgid "" "Sets the time to wait before retrying to retrieve WAL after a failed attempt." msgstr "" "Задаёт время задержки перед повторной попыткой обращения к WAL после неудачи." -#: utils/misc/guc_tables.c:3495 +#: utils/misc/guc_tables.c:3504 msgid "Shows the size of write ahead log segments." msgstr "Показывает размер сегментов журнала предзаписи." -#: utils/misc/guc_tables.c:3508 +#: utils/misc/guc_tables.c:3517 msgid "Time for which WAL summary files should be kept." msgstr "Время, в течение которого должны сохраняться файлы обобщения WAL." -#: utils/misc/guc_tables.c:3509 +#: utils/misc/guc_tables.c:3518 msgid "0 disables automatic summary file deletion." msgstr "0 отключает автоматическое удаление файлов обобщения." -#: utils/misc/guc_tables.c:3521 +#: utils/misc/guc_tables.c:3530 msgid "Time to sleep between autovacuum runs." msgstr "Время простоя между запусками автоочистки." -#: utils/misc/guc_tables.c:3531 +#: utils/misc/guc_tables.c:3540 msgid "Minimum number of tuple updates or deletes prior to vacuum." msgstr "Минимальное число изменений или удалений кортежей, вызывающее очистку." -#: utils/misc/guc_tables.c:3540 +#: utils/misc/guc_tables.c:3549 msgid "Maximum number of tuple updates or deletes prior to vacuum." msgstr "" "Максимальное число изменений или удалений кортежей, вызывающее очистку." -#: utils/misc/guc_tables.c:3541 +#: utils/misc/guc_tables.c:3550 msgid "-1 disables the maximum threshold." msgstr "-1 отключает максимальное ограничение." -#: utils/misc/guc_tables.c:3549 +#: utils/misc/guc_tables.c:3558 msgid "Minimum number of tuple inserts prior to vacuum." msgstr "Минимальное число добавлений кортежей, вызывающее очистку." -#: utils/misc/guc_tables.c:3550 +#: utils/misc/guc_tables.c:3559 msgid "-1 disables insert vacuums." msgstr "-1 отключает очистку при добавлении." -#: utils/misc/guc_tables.c:3558 +#: utils/misc/guc_tables.c:3567 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." msgstr "" "Минимальное число добавлений, изменений или удалений кортежей, вызывающее " "анализ." -#: utils/misc/guc_tables.c:3568 +#: utils/misc/guc_tables.c:3577 msgid "" "Age at which to autovacuum a table to prevent transaction ID wraparound." msgstr "" "Возраст, при котором необходима автоочистка таблицы для предотвращения " "зацикливания ID транзакций." -#: utils/misc/guc_tables.c:3580 +#: utils/misc/guc_tables.c:3589 msgid "" "Multixact age at which to autovacuum a table to prevent multixact wraparound." msgstr "" "Возраст multixact, при котором необходима автоочистка таблицы для " "предотвращения зацикливания multixact." -#: utils/misc/guc_tables.c:3590 +#: utils/misc/guc_tables.c:3599 msgid "Sets the number of backend slots to allocate for autovacuum workers." msgstr "" "Задаёт число слотов обслуживающих процессов, выделяемых для процессов " "автоочистки." -#: utils/misc/guc_tables.c:3599 +#: utils/misc/guc_tables.c:3608 msgid "" "Sets the maximum number of simultaneously running autovacuum worker " "processes." @@ -35172,57 +35177,57 @@ msgstr "" "Задаёт предельное число одновременно выполняющихся рабочих процессов " "автоочистки." -#: utils/misc/guc_tables.c:3609 +#: utils/misc/guc_tables.c:3618 msgid "" "Sets the maximum number of parallel processes per maintenance operation." msgstr "" "Задаёт максимальное число параллельных процессов на одну операцию " "обслуживания." -#: utils/misc/guc_tables.c:3619 +#: utils/misc/guc_tables.c:3628 msgid "Sets the maximum number of parallel processes per executor node." msgstr "Задаёт максимальное число параллельных процессов на узел исполнителя." -#: utils/misc/guc_tables.c:3630 +#: utils/misc/guc_tables.c:3639 msgid "" "Sets the maximum number of parallel workers that can be active at one time." msgstr "" "Задаёт максимальное число параллельных исполнителей, которые могут быть " "активны одновременно." -#: utils/misc/guc_tables.c:3641 +#: utils/misc/guc_tables.c:3650 msgid "Sets the maximum memory to be used by each autovacuum worker process." msgstr "" "Задаёт предельный объём памяти для каждого рабочего процесса автоочистки." -#: utils/misc/guc_tables.c:3642 +#: utils/misc/guc_tables.c:3651 msgid "-1 means use \"maintenance_work_mem\"." msgstr "-1 означает — использовать \"maintenance_work_mem\"." -#: utils/misc/guc_tables.c:3652 +#: utils/misc/guc_tables.c:3661 msgid "Time between issuing TCP keepalives." msgstr "Интервал между TCP-пакетами пульса (keep-alive)." -#: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 -#: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 +#: utils/misc/guc_tables.c:3662 utils/misc/guc_tables.c:3673 +#: utils/misc/guc_tables.c:3796 utils/misc/guc_tables.c:3807 msgid "0 means use the system default." msgstr "0 означает — использовать системное значение по умолчанию." -#: utils/misc/guc_tables.c:3663 +#: utils/misc/guc_tables.c:3672 msgid "Time between TCP keepalive retransmits." msgstr "Интервал между повторениями TCP-пакетов пульса (keep-alive)." -#: utils/misc/guc_tables.c:3674 +#: utils/misc/guc_tables.c:3683 msgid "SSL renegotiation is no longer supported; this can only be 0." msgstr "" "Повторное согласование SSL более не поддерживается; единственное допустимое " "значение - 0." -#: utils/misc/guc_tables.c:3685 +#: utils/misc/guc_tables.c:3694 msgid "Maximum number of TCP keepalive retransmits." msgstr "Максимальное число повторений TCP-пакетов пульса (keep-alive)." -#: utils/misc/guc_tables.c:3686 +#: utils/misc/guc_tables.c:3695 msgid "" "Number of consecutive keepalive retransmits that can be lost before a " "connection is considered dead. 0 means use the system default." @@ -35231,19 +35236,19 @@ msgstr "" "чем соединение будет считаться пропавшим. 0 означает — использовать " "системный параметр." -#: utils/misc/guc_tables.c:3697 +#: utils/misc/guc_tables.c:3706 msgid "Sets the maximum allowed result for exact search by GIN." msgstr "Ограничивает результат точного поиска с использованием GIN." -#: utils/misc/guc_tables.c:3698 +#: utils/misc/guc_tables.c:3707 msgid "0 means no limit." msgstr "При 0 ограничение не действует." -#: utils/misc/guc_tables.c:3707 +#: utils/misc/guc_tables.c:3716 msgid "Sets the planner's assumption about the total size of the data caches." msgstr "Подсказывает планировщику примерный общий размер кешей данных." -#: utils/misc/guc_tables.c:3708 +#: utils/misc/guc_tables.c:3717 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 " @@ -35253,12 +35258,12 @@ msgstr "" "попадают файлы данных PostgreSQL. Размер задаётся в дисковых страницах " "(обычно это 8 КБ)." -#: utils/misc/guc_tables.c:3719 +#: utils/misc/guc_tables.c:3728 msgid "Sets the minimum amount of table data for a parallel scan." msgstr "" "Задаёт минимальный объём данных в таблице для параллельного сканирования." -#: utils/misc/guc_tables.c:3720 +#: utils/misc/guc_tables.c:3729 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." @@ -35267,12 +35272,12 @@ msgstr "" "задано этим ограничением, он исключает параллельное сканирование из " "рассмотрения." -#: utils/misc/guc_tables.c:3730 +#: utils/misc/guc_tables.c:3739 msgid "Sets the minimum amount of index data for a parallel scan." msgstr "" "Задаёт минимальный объём данных в индексе для параллельного сканирования." -#: utils/misc/guc_tables.c:3731 +#: utils/misc/guc_tables.c:3740 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." @@ -35281,77 +35286,77 @@ msgstr "" "задано этим ограничением, он исключает параллельное сканирование из " "рассмотрения." -#: utils/misc/guc_tables.c:3742 +#: utils/misc/guc_tables.c:3751 msgid "Shows the server version as an integer." msgstr "Показывает версию сервера в виде целого числа." -#: utils/misc/guc_tables.c:3753 +#: utils/misc/guc_tables.c:3762 msgid "Log the use of temporary files larger than this number of kilobytes." msgstr "" "Фиксирует в протоколе превышение временными файлами заданного размера (в КБ)." -#: utils/misc/guc_tables.c:3754 +#: utils/misc/guc_tables.c:3763 msgid "-1 disables logging temporary files. 0 means log all temporary files." msgstr "" "-1 отключает контроль размера временных файлов. 0 означает — фиксировать все " "временные файлы." -#: utils/misc/guc_tables.c:3764 +#: utils/misc/guc_tables.c:3773 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." msgstr "Задаёт размер, резервируемый для pg_stat_activity.query (в байтах)." -#: utils/misc/guc_tables.c:3775 +#: utils/misc/guc_tables.c:3784 msgid "Sets the maximum size of the pending list for GIN index." msgstr "Задаёт максимальный размер списка-очереди для GIN-индекса." -#: utils/misc/guc_tables.c:3786 +#: utils/misc/guc_tables.c:3795 msgid "TCP user timeout." msgstr "Пользовательский таймаут TCP." -#: utils/misc/guc_tables.c:3797 +#: utils/misc/guc_tables.c:3806 msgid "The size of huge page that should be requested." msgstr "Запрашиваемый размер огромных страниц." -#: utils/misc/guc_tables.c:3808 +#: utils/misc/guc_tables.c:3817 msgid "Aggressively flush system caches for debugging purposes." msgstr "Включает агрессивный сброс системных кешей для целей отладки." -#: utils/misc/guc_tables.c:3809 +#: utils/misc/guc_tables.c:3818 msgid "0 means use normal caching behavior." msgstr "0 означает — применять обычный режим кеширования." -#: utils/misc/guc_tables.c:3831 +#: utils/misc/guc_tables.c:3840 msgid "" "Sets the time interval between checks for disconnection while running " "queries." msgstr "" "Задаёт интервал между проверками подключения во время выполнения запросов." -#: utils/misc/guc_tables.c:3832 +#: utils/misc/guc_tables.c:3841 msgid "0 disables connection checks." msgstr "0 отключает проверки подключения." -#: utils/misc/guc_tables.c:3842 +#: utils/misc/guc_tables.c:3851 msgid "Time between progress updates for long-running startup operations." msgstr "" "Интервал между обновлениями состояния длительных операций, выполняемых при " "запуске." -#: utils/misc/guc_tables.c:3844 +#: utils/misc/guc_tables.c:3853 msgid "0 disables progress updates." msgstr "0 отключает обновления состояния." -#: utils/misc/guc_tables.c:3854 +#: utils/misc/guc_tables.c:3863 msgid "Sets the iteration count for SCRAM secret generation." msgstr "Задаёт количество итераций для формирования секрета SCRAM." -#: utils/misc/guc_tables.c:3874 +#: utils/misc/guc_tables.c:3883 msgid "" "Sets the planner's estimate of the cost of a sequentially fetched disk page." msgstr "" "Задаёт для планировщика ориентир стоимости последовательного чтения страницы." -#: utils/misc/guc_tables.c:3885 +#: utils/misc/guc_tables.c:3894 msgid "" "Sets the planner's estimate of the cost of a nonsequentially fetched disk " "page." @@ -35359,13 +35364,13 @@ msgstr "" "Задаёт для планировщика ориентир стоимости непоследовательного чтения " "страницы." -#: utils/misc/guc_tables.c:3896 +#: utils/misc/guc_tables.c:3905 msgid "Sets the planner's estimate of the cost of processing each tuple (row)." msgstr "" "Задаёт для планировщика ориентир стоимости обработки каждого кортежа " "(строки)." -#: utils/misc/guc_tables.c:3907 +#: utils/misc/guc_tables.c:3916 msgid "" "Sets the planner's estimate of the cost of processing each index entry " "during an index scan." @@ -35373,7 +35378,7 @@ msgstr "" "Задаёт для планировщика ориентир стоимости обработки каждого элемента " "индекса в процессе сканирования индекса." -#: utils/misc/guc_tables.c:3918 +#: utils/misc/guc_tables.c:3927 msgid "" "Sets the planner's estimate of the cost of processing each operator or " "function call." @@ -35381,7 +35386,7 @@ msgstr "" "Задаёт для планировщика ориентир стоимости обработки каждого оператора или " "вызова функции." -#: utils/misc/guc_tables.c:3929 +#: utils/misc/guc_tables.c:3938 msgid "" "Sets the planner's estimate of the cost of passing each tuple (row) from " "worker to leader backend." @@ -35389,7 +35394,7 @@ msgstr "" "Задаёт для планировщика ориентир стоимости передачи каждого кортежа (строки) " "ведущему процессу от рабочего." -#: utils/misc/guc_tables.c:3940 +#: utils/misc/guc_tables.c:3949 msgid "" "Sets the planner's estimate of the cost of starting up worker processes for " "parallel query." @@ -35397,40 +35402,40 @@ msgstr "" "Задаёт для планировщика ориентир стоимости запуска рабочих процессов для " "параллельного выполнения запроса." -#: utils/misc/guc_tables.c:3952 +#: utils/misc/guc_tables.c:3961 msgid "Perform JIT compilation if query is more expensive." msgstr "Стоимость запроса, при превышении которой производится JIT-компиляция." -#: utils/misc/guc_tables.c:3953 +#: utils/misc/guc_tables.c:3962 msgid "-1 disables JIT compilation." msgstr "-1 отключает JIT-компиляцию." -#: utils/misc/guc_tables.c:3963 +#: utils/misc/guc_tables.c:3972 msgid "Optimize JIT-compiled functions if query is more expensive." msgstr "" "Стоимость запроса, при превышении которой оптимизируются JIT-" "скомпилированные функции." -#: utils/misc/guc_tables.c:3964 +#: utils/misc/guc_tables.c:3973 msgid "-1 disables optimization." msgstr "-1 отключает оптимизацию." -#: utils/misc/guc_tables.c:3974 +#: utils/misc/guc_tables.c:3983 msgid "Perform JIT inlining if query is more expensive." msgstr "Стоимость запроса, при которой выполняется встраивание JIT." -#: utils/misc/guc_tables.c:3975 +#: utils/misc/guc_tables.c:3984 msgid "-1 disables inlining." msgstr "-1 отключает встраивание кода." -#: utils/misc/guc_tables.c:3985 +#: utils/misc/guc_tables.c:3994 msgid "" "Sets the planner's estimate of the fraction of a cursor's rows that will be " "retrieved." msgstr "" "Задаёт для планировщика ориентир доли требуемых строк курсора в общем числе." -#: utils/misc/guc_tables.c:3997 +#: utils/misc/guc_tables.c:4006 msgid "" "Sets the planner's estimate of the average size of a recursive query's " "working table." @@ -35438,41 +35443,41 @@ msgstr "" "Задаёт для планировщика ориентир среднего размера рабочей таблицы в " "рекурсивном запросе." -#: utils/misc/guc_tables.c:4009 +#: utils/misc/guc_tables.c:4018 msgid "GEQO: selective pressure within the population." msgstr "GEQO: селективное давление в популяции." -#: utils/misc/guc_tables.c:4020 +#: utils/misc/guc_tables.c:4029 msgid "GEQO: seed for random path selection." msgstr "GEQO: отправное значение для случайного выбора пути." -#: utils/misc/guc_tables.c:4031 +#: utils/misc/guc_tables.c:4040 msgid "Multiple of \"work_mem\" to use for hash tables." msgstr "Множитель \"work_mem\", определяющий объём памяти для хеш-таблиц." -#: utils/misc/guc_tables.c:4042 +#: utils/misc/guc_tables.c:4051 msgid "Multiple of the average buffer usage to free per round." msgstr "" "Множитель для среднего числа использованных буферов, определяющий число " "буферов, освобождаемых за один подход." -#: utils/misc/guc_tables.c:4052 +#: utils/misc/guc_tables.c:4061 msgid "Sets the seed for random-number generation." msgstr "Задаёт отправное значение для генератора случайных чисел." -#: utils/misc/guc_tables.c:4063 +#: utils/misc/guc_tables.c:4072 msgid "Vacuum cost delay in milliseconds." msgstr "Задержка очистки (в миллисекундах)." -#: utils/misc/guc_tables.c:4074 +#: utils/misc/guc_tables.c:4083 msgid "Vacuum cost delay in milliseconds, for autovacuum." msgstr "Задержка очистки для автоочистки (в миллисекундах)." -#: utils/misc/guc_tables.c:4075 +#: utils/misc/guc_tables.c:4084 msgid "-1 means use \"vacuum_cost_delay\"." msgstr "-1 означает — использовать \"vacuum_cost_delay\"." -#: utils/misc/guc_tables.c:4085 +#: utils/misc/guc_tables.c:4094 msgid "" "Number of tuple updates or deletes prior to vacuum as a fraction of " "reltuples." @@ -35480,13 +35485,13 @@ msgstr "" "Отношение числа обновлений или удалений кортежей к reltuples, определяющее " "потребность в очистке." -#: utils/misc/guc_tables.c:4095 +#: utils/misc/guc_tables.c:4104 msgid "Number of tuple inserts prior to vacuum as a fraction of reltuples." msgstr "" "Отношение числа добавлений кортежей к reltuples, определяющее потребность в " "очистке." -#: utils/misc/guc_tables.c:4105 +#: utils/misc/guc_tables.c:4114 msgid "" "Number of tuple inserts, updates, or deletes prior to analyze as a fraction " "of reltuples." @@ -35494,7 +35499,7 @@ msgstr "" "Отношение числа добавлений, обновлений или удалений кортежей к reltuples, " "определяющее потребность в анализе." -#: utils/misc/guc_tables.c:4115 +#: utils/misc/guc_tables.c:4124 msgid "" "Time spent flushing dirty buffers during checkpoint, as fraction of " "checkpoint interval." @@ -35502,26 +35507,26 @@ msgstr "" "Отношение продолжительности сброса \"грязных\" буферов во время контрольной " "точки к интервалу контрольных точек." -#: utils/misc/guc_tables.c:4125 +#: utils/misc/guc_tables.c:4134 msgid "" "Fraction of statements exceeding \"log_min_duration_sample\" to be logged." msgstr "" "Доля записываемых в журнал операторов с длительностью, превышающей " "\"log_min_duration_sample\"." -#: utils/misc/guc_tables.c:4126 +#: utils/misc/guc_tables.c:4135 msgid "Use a value between 0.0 (never log) and 1.0 (always log)." msgstr "" "Может задаваться значением от 0.0 (не записывать никакие операторы) и 1.0 " "(записывать все)." -#: utils/misc/guc_tables.c:4135 +#: utils/misc/guc_tables.c:4144 msgid "Sets the fraction of transactions from which to log all statements." msgstr "" "Задаёт долю транзакций, все операторы которых будут записываться в журнал " "сервера." -#: utils/misc/guc_tables.c:4136 +#: utils/misc/guc_tables.c:4145 msgid "" "Use a value between 0.0 (never log) and 1.0 (log all statements for all " "transactions)." @@ -35529,7 +35534,7 @@ msgstr "" "Значение 0.0 означает — не записывать никакие транзакции, а значение 1.0 — " "записывать все операторы всех транзакций." -#: utils/misc/guc_tables.c:4146 +#: utils/misc/guc_tables.c:4155 msgid "" "Fraction of pages in a relation vacuum can scan and fail to freeze before " "disabling eager scanning." @@ -35537,7 +35542,7 @@ msgstr "" "Процент страниц в отношении, которые могут быть просканированы безуспешно " "(не заморожены), прежде чем он прекратит инициативное сканирование." -#: utils/misc/guc_tables.c:4147 +#: utils/misc/guc_tables.c:4156 msgid "" "A value of 0.0 disables eager scanning and a value of 1.0 will eagerly scan " "up to 100 percent of the all-visible pages in the relation. If vacuum " @@ -35550,46 +35555,46 @@ msgstr "" "оказывается ниже 100, так как целью является распределение замораживания " "страниц между несколько операциями очистки." -#: utils/misc/guc_tables.c:4165 +#: utils/misc/guc_tables.c:4174 msgid "Sets the shell command that will be called to archive a WAL file." msgstr "Задаёт команду оболочки, вызываемую для архивации файла WAL." -#: utils/misc/guc_tables.c:4166 +#: utils/misc/guc_tables.c:4175 msgid "An empty string means use \"archive_library\"." msgstr "Пустая строка означает — использовать \"archive_library\"." -#: utils/misc/guc_tables.c:4175 +#: utils/misc/guc_tables.c:4184 msgid "Sets the library that will be called to archive a WAL file." msgstr "Задаёт библиотеку, вызываемую для архивации файла WAL." -#: utils/misc/guc_tables.c:4176 +#: utils/misc/guc_tables.c:4185 msgid "An empty string means use \"archive_command\"." msgstr "Пустая строка означает — использовать \"archive_command\"." -#: utils/misc/guc_tables.c:4185 +#: utils/misc/guc_tables.c:4194 msgid "" "Sets the shell command that will be called to retrieve an archived WAL file." msgstr "" "Задаёт команду оболочки, которая будет вызываться для извлечения из архива " "файла WAL." -#: utils/misc/guc_tables.c:4195 +#: utils/misc/guc_tables.c:4204 msgid "Sets the shell command that will be executed at every restart point." msgstr "" "Задаёт команду оболочки, которая будет выполняться при каждой точке " "перезапуска." -#: utils/misc/guc_tables.c:4205 +#: utils/misc/guc_tables.c:4214 msgid "" "Sets the shell command that will be executed once at the end of recovery." msgstr "" "Задаёт команду оболочки, которая будет выполняться в конце восстановления." -#: utils/misc/guc_tables.c:4215 +#: utils/misc/guc_tables.c:4224 msgid "Specifies the timeline to recover into." msgstr "Указывает линию времени для выполнения восстановления." -#: utils/misc/guc_tables.c:4225 +#: utils/misc/guc_tables.c:4234 msgid "" "Set to \"immediate\" to end recovery as soon as a consistent state is " "reached." @@ -35597,24 +35602,24 @@ msgstr "" "Задайте значение \"immediate\", чтобы восстановление остановилось сразу " "после достижения согласованного состояния." -#: utils/misc/guc_tables.c:4234 +#: utils/misc/guc_tables.c:4243 msgid "Sets the transaction ID up to which recovery will proceed." msgstr "" "Задаёт идентификатор транзакции, вплоть до которой будет производиться " "восстановление." -#: utils/misc/guc_tables.c:4243 +#: utils/misc/guc_tables.c:4252 msgid "Sets the time stamp up to which recovery will proceed." msgstr "" "Задаёт момент времени, вплоть до которого будет производиться восстановление." -#: utils/misc/guc_tables.c:4252 +#: utils/misc/guc_tables.c:4261 msgid "Sets the named restore point up to which recovery will proceed." msgstr "" "Задаёт именованную точку восстановления, до которой будет производиться " "восстановление." -#: utils/misc/guc_tables.c:4261 +#: utils/misc/guc_tables.c:4270 msgid "" "Sets the LSN of the write-ahead log location up to which recovery will " "proceed." @@ -35622,63 +35627,63 @@ msgstr "" "Задаёт в виде LSN позицию в журнале предзаписи, до которой будет " "производиться восстановление." -#: utils/misc/guc_tables.c:4271 +#: utils/misc/guc_tables.c:4280 msgid "Sets the connection string to be used to connect to the sending server." msgstr "" "Задаёт строку соединения, которая будет использоваться для подключения к " "передающему серверу." -#: utils/misc/guc_tables.c:4282 +#: utils/misc/guc_tables.c:4291 msgid "Sets the name of the replication slot to use on the sending server." msgstr "" "Задаёт имя слота репликации, который будет использоваться на передающем " "сервере." -#: utils/misc/guc_tables.c:4292 +#: utils/misc/guc_tables.c:4301 msgid "Sets the client's character set encoding." msgstr "Задаёт кодировку символов, используемую клиентом." -#: utils/misc/guc_tables.c:4303 +#: utils/misc/guc_tables.c:4312 msgid "Controls information prefixed to each log line." msgstr "Определяет содержимое префикса каждой строки протокола." -#: utils/misc/guc_tables.c:4304 +#: utils/misc/guc_tables.c:4313 msgid "An empty string means no prefix." msgstr "Пустая строка означает отсутствие префикса." -#: utils/misc/guc_tables.c:4313 +#: utils/misc/guc_tables.c:4322 msgid "Sets the time zone to use in log messages." msgstr "Задаёт часовой пояс для вывода времени в сообщениях протокола." -#: utils/misc/guc_tables.c:4323 +#: utils/misc/guc_tables.c:4332 msgid "Sets the display format for date and time values." msgstr "Устанавливает формат вывода дат и времени." -#: utils/misc/guc_tables.c:4324 +#: utils/misc/guc_tables.c:4333 msgid "Also controls interpretation of ambiguous date inputs." msgstr "Также помогает разбирать неоднозначно заданные вводимые даты." -#: utils/misc/guc_tables.c:4335 +#: utils/misc/guc_tables.c:4344 msgid "Sets the default table access method for new tables." msgstr "Задаёт табличный метод доступа по умолчанию для новых таблиц." -#: utils/misc/guc_tables.c:4346 +#: utils/misc/guc_tables.c:4355 msgid "Sets the default tablespace to create tables and indexes in." msgstr "" "Задаёт табличное пространство по умолчанию для новых таблиц и индексов." -#: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 +#: utils/misc/guc_tables.c:4356 utils/misc/guc_tables.c:4367 msgid "An empty string means use the database's default tablespace." msgstr "" "Пустая строка означает — использовать табличное пространство базы по " "умолчанию." -#: utils/misc/guc_tables.c:4357 +#: utils/misc/guc_tables.c:4366 msgid "Sets the tablespace(s) to use for temporary tables and sort files." msgstr "" "Задаёт табличное пространство(а) для временных таблиц и файлов сортировки." -#: utils/misc/guc_tables.c:4368 +#: utils/misc/guc_tables.c:4377 msgid "" "Sets whether a CREATEROLE user automatically grants the role to themselves, " "and with which options." @@ -35687,15 +35692,15 @@ msgstr "" "создаваемую роль и с какими параметрами." # well-spelled: самоназначение -#: utils/misc/guc_tables.c:4370 +#: utils/misc/guc_tables.c:4379 msgid "An empty string disables automatic self grants." msgstr "Пустая строка отключает автоматическое самоназначение роли." -#: utils/misc/guc_tables.c:4380 +#: utils/misc/guc_tables.c:4389 msgid "Sets the path for dynamically loadable modules." msgstr "Задаёт путь для динамически загружаемых модулей." -#: utils/misc/guc_tables.c:4381 +#: utils/misc/guc_tables.c:4390 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 " @@ -35705,11 +35710,11 @@ msgstr "" "указан путь (нет символа '/'), система будет искать этот файл в заданном " "пути." -#: utils/misc/guc_tables.c:4394 +#: utils/misc/guc_tables.c:4403 msgid "Sets the path for extension control files." msgstr "Задаёт путь к управляющим файлам расширений." -#: utils/misc/guc_tables.c:4395 +#: utils/misc/guc_tables.c:4404 msgid "" "The remaining extension script and secondary control files are then loaded " "from the same directory where the primary control file was found." @@ -35717,80 +35722,80 @@ msgstr "" "Скрипт расширения и вторичные управляющие файлы загружаются из того же " "каталога, где найден главный управляющий файл." -#: utils/misc/guc_tables.c:4406 +#: utils/misc/guc_tables.c:4415 msgid "Sets the location of the Kerberos server key file." msgstr "Задаёт размещение файла с ключом Kerberos для данного сервера." -#: utils/misc/guc_tables.c:4417 +#: utils/misc/guc_tables.c:4426 msgid "Sets the Bonjour service name." msgstr "Задаёт название службы Bonjour." -#: utils/misc/guc_tables.c:4418 +#: utils/misc/guc_tables.c:4427 msgid "An empty string means use the computer name." msgstr "Пустая строка означает — использовать имя компьютера." -#: utils/misc/guc_tables.c:4427 +#: utils/misc/guc_tables.c:4436 msgid "Sets the language in which messages are displayed." msgstr "Задаёт язык выводимых сообщений." -#: utils/misc/guc_tables.c:4428 utils/misc/guc_tables.c:4438 -#: utils/misc/guc_tables.c:4448 utils/misc/guc_tables.c:4458 +#: utils/misc/guc_tables.c:4437 utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4457 utils/misc/guc_tables.c:4467 msgid "An empty string means use the operating system setting." msgstr "Пустая строка означает — использовать настройку операционной системы." -#: utils/misc/guc_tables.c:4437 +#: utils/misc/guc_tables.c:4446 msgid "Sets the locale for formatting monetary amounts." msgstr "Задаёт локаль для форматирования денежных сумм." -#: utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4456 msgid "Sets the locale for formatting numbers." msgstr "Задаёт локаль для форматирования чисел." -#: utils/misc/guc_tables.c:4457 +#: utils/misc/guc_tables.c:4466 msgid "Sets the locale for formatting date and time values." msgstr "Задаёт локаль для форматирования дат и времени." -#: utils/misc/guc_tables.c:4467 +#: utils/misc/guc_tables.c:4476 msgid "Lists shared libraries to preload into each backend." msgstr "" "Список разделяемых библиотек, заранее загружаемых в каждый обслуживающий " "процесс." -#: utils/misc/guc_tables.c:4478 +#: utils/misc/guc_tables.c:4487 msgid "Lists shared libraries to preload into server." msgstr "Список разделяемых библиотек, заранее загружаемых в память сервера." -#: utils/misc/guc_tables.c:4489 +#: utils/misc/guc_tables.c:4498 msgid "Lists unprivileged shared libraries to preload into each backend." msgstr "" "Список непривилегированных разделяемых библиотек, заранее загружаемых в " "каждый обслуживающий процесс." -#: utils/misc/guc_tables.c:4500 +#: utils/misc/guc_tables.c:4509 msgid "Sets the schema search order for names that are not schema-qualified." msgstr "Задаёт порядок просмотра схемы при поиске неполных имён." -#: utils/misc/guc_tables.c:4512 +#: utils/misc/guc_tables.c:4521 msgid "Shows the server (database) character set encoding." msgstr "Показывает кодировку символов сервера (базы данных)." -#: utils/misc/guc_tables.c:4524 +#: utils/misc/guc_tables.c:4533 msgid "Shows the server version." msgstr "Показывает версию сервера." -#: utils/misc/guc_tables.c:4536 +#: utils/misc/guc_tables.c:4545 msgid "Sets the current role." msgstr "Задаёт текущую роль." -#: utils/misc/guc_tables.c:4548 +#: utils/misc/guc_tables.c:4557 msgid "Sets the session user name." msgstr "Задаёт имя пользователя в сеансе." -#: utils/misc/guc_tables.c:4559 +#: utils/misc/guc_tables.c:4568 msgid "Sets the destination for server log output." msgstr "Определяет, куда будет выводиться протокол сервера." -#: utils/misc/guc_tables.c:4560 +#: utils/misc/guc_tables.c:4569 msgid "" "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", " "\"jsonlog\", and \"eventlog\", depending on the platform." @@ -35798,24 +35803,24 @@ msgstr "" "Значение может включать сочетание слов \"stderr\", \"syslog\", \"csvlog\", " "\"jsonlog\" и \"eventlog\", в зависимости от платформы." -#: utils/misc/guc_tables.c:4571 +#: utils/misc/guc_tables.c:4580 msgid "Sets the destination directory for log files." msgstr "Задаёт целевой каталог для файлов протоколов." -#: utils/misc/guc_tables.c:4572 +#: utils/misc/guc_tables.c:4581 msgid "Can be specified as relative to the data directory or as absolute path." msgstr "" "Путь может быть абсолютным или указываться относительно каталога данных." -#: utils/misc/guc_tables.c:4582 +#: utils/misc/guc_tables.c:4591 msgid "Sets the file name pattern for log files." msgstr "Задаёт шаблон имени для файлов протоколов." -#: utils/misc/guc_tables.c:4593 +#: utils/misc/guc_tables.c:4602 msgid "Sets the program name used to identify PostgreSQL messages in syslog." msgstr "Задаёт имя программы для идентификации сообщений PostgreSQL в syslog." -#: utils/misc/guc_tables.c:4604 +#: utils/misc/guc_tables.c:4613 msgid "" "Sets the application name used to identify PostgreSQL messages in the event " "log." @@ -35823,20 +35828,20 @@ msgstr "" "Задаёт имя приложения для идентификации сообщений PostgreSQL в журнале " "событий." -#: utils/misc/guc_tables.c:4615 +#: utils/misc/guc_tables.c:4624 msgid "Sets the time zone for displaying and interpreting time stamps." msgstr "" "Задаёт часовой пояс для вывода и разбора строкового представления времени." -#: utils/misc/guc_tables.c:4625 +#: utils/misc/guc_tables.c:4634 msgid "Selects a file of time zone abbreviations." msgstr "Выбирает файл с сокращёнными названиями часовых поясов." -#: utils/misc/guc_tables.c:4635 +#: utils/misc/guc_tables.c:4644 msgid "Sets the owning group of the Unix-domain socket." msgstr "Задаёт группу-владельца Unix-сокета." -#: utils/misc/guc_tables.c:4636 +#: utils/misc/guc_tables.c:4645 msgid "" "The owning user of the socket is always the user that starts the server. An " "empty string means use the user's default group." @@ -35844,128 +35849,128 @@ msgstr "" "Собственно владельцем сокета всегда будет пользователь, запускающий сервер. " "Пустая строка означает — использовать группу пользователя по умолчанию." -#: utils/misc/guc_tables.c:4646 +#: utils/misc/guc_tables.c:4655 msgid "Sets the directories where Unix-domain sockets will be created." msgstr "Задаёт каталоги, где будут создаваться Unix-сокеты." -#: utils/misc/guc_tables.c:4657 +#: utils/misc/guc_tables.c:4666 msgid "Sets the host name or IP address(es) to listen to." msgstr "Задаёт имя узла или IP-адрес(а) для привязки." -#: utils/misc/guc_tables.c:4672 +#: utils/misc/guc_tables.c:4681 msgid "Sets the server's data directory." msgstr "Определяет каталог данных сервера." -#: utils/misc/guc_tables.c:4683 +#: utils/misc/guc_tables.c:4692 msgid "Sets the server's main configuration file." msgstr "Определяет основной файл конфигурации сервера." -#: utils/misc/guc_tables.c:4694 +#: utils/misc/guc_tables.c:4703 msgid "Sets the server's \"hba\" configuration file." msgstr "Задаёт путь к файлу конфигурации \"hba\"." -#: utils/misc/guc_tables.c:4705 +#: utils/misc/guc_tables.c:4714 msgid "Sets the server's \"ident\" configuration file." msgstr "Задаёт путь к файлу конфигурации \"ident\"." -#: utils/misc/guc_tables.c:4716 +#: utils/misc/guc_tables.c:4725 msgid "Writes the postmaster PID to the specified file." msgstr "Файл, в который будет записан код процесса postmaster." -#: utils/misc/guc_tables.c:4727 +#: utils/misc/guc_tables.c:4736 msgid "Shows the name of the SSL library." msgstr "Показывает имя библиотеки SSL." -#: utils/misc/guc_tables.c:4742 +#: utils/misc/guc_tables.c:4751 msgid "Location of the SSL server certificate file." msgstr "Размещение файла сертификата сервера для SSL." -#: utils/misc/guc_tables.c:4752 +#: utils/misc/guc_tables.c:4761 msgid "Location of the SSL server private key file." msgstr "Размещение файла с закрытым ключом сервера для SSL." -#: utils/misc/guc_tables.c:4762 +#: utils/misc/guc_tables.c:4771 msgid "Location of the SSL certificate authority file." msgstr "Размещение файла центра сертификации для SSL." -#: utils/misc/guc_tables.c:4772 +#: utils/misc/guc_tables.c:4781 msgid "Location of the SSL certificate revocation list file." msgstr "Размещение файла со списком отзыва сертификатов для SSL." -#: utils/misc/guc_tables.c:4782 +#: utils/misc/guc_tables.c:4791 msgid "Location of the SSL certificate revocation list directory." msgstr "Размещение каталога со списками отзыва сертификатов для SSL." -#: utils/misc/guc_tables.c:4792 +#: utils/misc/guc_tables.c:4801 msgid "" "Number of synchronous standbys and list of names of potential synchronous " "ones." msgstr "" "Количество потенциально синхронных резервных серверов и список их имён." -#: utils/misc/guc_tables.c:4803 +#: utils/misc/guc_tables.c:4812 msgid "Sets default text search configuration." msgstr "Задаёт конфигурацию текстового поиска по умолчанию." -#: utils/misc/guc_tables.c:4813 +#: utils/misc/guc_tables.c:4822 msgid "Sets the list of allowed TLSv1.3 cipher suites." msgstr "Задаёт список допустимых комплектов шифрования для TLSv1.3." -#: utils/misc/guc_tables.c:4814 +#: utils/misc/guc_tables.c:4823 msgid "An empty string means use the default cipher suites." msgstr "Пустая строка означает — использовать комплекты шифров по умолчанию." -#: utils/misc/guc_tables.c:4824 +#: utils/misc/guc_tables.c:4833 msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." msgstr "Задаёт список допустимых шифров для TLSv1.2 (и ниже)." # well-spelled: Диффи # well-spelled: Хеллмана -#: utils/misc/guc_tables.c:4839 +#: utils/misc/guc_tables.c:4848 msgid "Sets the group(s) to use for Diffie-Hellman key exchange." msgstr "" "Задаёт группу или группы, используемые для обмена ключами Диффи-Хеллмана." -#: utils/misc/guc_tables.c:4840 +#: utils/misc/guc_tables.c:4849 msgid "Multiple groups can be specified using a colon-separated list." msgstr "Несколько групп можно указать в списке через двоеточие." -#: utils/misc/guc_tables.c:4854 +#: utils/misc/guc_tables.c:4863 msgid "Location of the SSL DH parameters file." msgstr "Размещение файла с параметрами SSL DH." -#: utils/misc/guc_tables.c:4855 +#: utils/misc/guc_tables.c:4864 msgid "An empty string means use compiled-in default parameters." msgstr "" "Пустая строка означает — использовать параметры по умолчанию, выбранные при " "компиляции." -#: utils/misc/guc_tables.c:4865 +#: utils/misc/guc_tables.c:4874 msgid "Command to obtain passphrases for SSL." msgstr "Команда, позволяющая получить пароль для SSL." -#: utils/misc/guc_tables.c:4866 +#: utils/misc/guc_tables.c:4875 msgid "An empty string means use the built-in prompting mechanism." msgstr "" "Пустая строка означает — использовать встроенный механизм запроса пароля." -#: utils/misc/guc_tables.c:4876 +#: utils/misc/guc_tables.c:4885 msgid "Sets the application name to be reported in statistics and logs." msgstr "" "Задаёт имя приложения, которое будет выводиться в статистике и протоколах." -#: utils/misc/guc_tables.c:4887 +#: utils/misc/guc_tables.c:4896 msgid "Sets the name of the cluster, which is included in the process title." msgstr "Задаёт имя кластера, которое будет добавляться в название процесса." -#: utils/misc/guc_tables.c:4898 +#: utils/misc/guc_tables.c:4907 msgid "" "Sets the WAL resource managers for which WAL consistency checks are done." msgstr "" "Задаёт перечень менеджеров ресурсов WAL, для которых выполняются проверки " "целостности WAL." -#: utils/misc/guc_tables.c:4899 +#: utils/misc/guc_tables.c:4908 msgid "" "Full-page images will be logged for all data blocks and cross-checked " "against the results of WAL replay." @@ -35973,23 +35978,23 @@ msgstr "" "При этом в журнал будут записываться образы полных страниц для всех блоков " "данных для сверки с результатами воспроизведения WAL." -#: utils/misc/guc_tables.c:4909 +#: utils/misc/guc_tables.c:4918 msgid "JIT provider to use." msgstr "Используемый провайдер JIT." -#: utils/misc/guc_tables.c:4920 +#: utils/misc/guc_tables.c:4929 msgid "Log backtrace for errors in these functions." msgstr "Записывать в журнал стек в случае ошибок в перечисленных функциях." -#: utils/misc/guc_tables.c:4931 +#: utils/misc/guc_tables.c:4940 msgid "Use direct I/O for file access." msgstr "Использовать прямой ввод/вывод для работы с файлами." -#: utils/misc/guc_tables.c:4932 +#: utils/misc/guc_tables.c:4941 msgid "An empty string disables direct I/O." msgstr "Пустая строка отключает прямой ввод/вывод." -#: utils/misc/guc_tables.c:4942 +#: utils/misc/guc_tables.c:4951 msgid "" "Lists streaming replication standby server replication slot names that " "logical WAL sender processes will wait for." @@ -35997,7 +36002,7 @@ msgstr "" "Определяет список имён слотов потовой репликации, готовности которых будут " "ждать процессы передачи логических изменений." -#: utils/misc/guc_tables.c:4944 +#: utils/misc/guc_tables.c:4953 msgid "" "Logical WAL sender processes will send decoded changes to output plugins " "only after the specified replication slots have confirmed receiving WAL." @@ -36006,34 +36011,34 @@ msgstr "" "декодированные изменения модулям вывода только после того, как указанные " "слоты репликации подтвердят получение WAL." -#: utils/misc/guc_tables.c:4956 +#: utils/misc/guc_tables.c:4965 msgid "Prohibits access to non-system relations of specified kinds." msgstr "Запрещает доступ к несистемным отношениям указанных видов." -#: utils/misc/guc_tables.c:4967 +#: utils/misc/guc_tables.c:4976 msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." msgstr "" "Определяет список библиотек, которые могут вызываться для проверки токенов " "предъявителя в OAuth v2." -#: utils/misc/guc_tables.c:4978 +#: utils/misc/guc_tables.c:4987 msgid "Logs specified aspects of connection establishment and setup." msgstr "Выводит выбранные сведения об установлении и подготовке соединения." -#: utils/misc/guc_tables.c:4999 +#: utils/misc/guc_tables.c:5008 msgid "Sets whether \"\\'\" is allowed in string literals." msgstr "Определяет, можно ли использовать \"\\'\" в текстовых строках." -#: utils/misc/guc_tables.c:5009 +#: utils/misc/guc_tables.c:5018 msgid "Sets the output format for bytea." msgstr "Задаёт формат вывода данных типа bytea." -#: utils/misc/guc_tables.c:5019 +#: utils/misc/guc_tables.c:5028 msgid "Sets the message levels that are sent to the client." msgstr "Ограничивает уровень сообщений, передаваемых клиенту." -#: utils/misc/guc_tables.c:5020 utils/misc/guc_tables.c:5116 -#: utils/misc/guc_tables.c:5127 +#: utils/misc/guc_tables.c:5029 utils/misc/guc_tables.c:5125 +#: utils/misc/guc_tables.c:5136 msgid "" "Each level includes all the levels that follow it. The later the level, the " "fewer messages are sent." @@ -36041,16 +36046,16 @@ msgstr "" "Каждый уровень включает все последующие. Чем выше уровень, тем меньше " "сообщений." -#: utils/misc/guc_tables.c:5030 +#: utils/misc/guc_tables.c:5039 msgid "Enables in-core computation of query identifiers." msgstr "Включает внутреннее вычисление идентификаторов запросов." -#: utils/misc/guc_tables.c:5040 +#: utils/misc/guc_tables.c:5049 msgid "Enables the planner to use constraints to optimize queries." msgstr "" "Разрешает планировщику оптимизировать запросы, полагаясь на ограничения." -#: utils/misc/guc_tables.c:5041 +#: utils/misc/guc_tables.c:5050 msgid "" "Table scans will be skipped if their constraints guarantee that no rows " "match the query." @@ -36058,88 +36063,88 @@ msgstr "" "Сканирование таблицы не будет выполняться, если её ограничения гарантируют, " "что запросу не удовлетворяют никакие строки." -#: utils/misc/guc_tables.c:5052 +#: utils/misc/guc_tables.c:5061 msgid "Sets the default compression method for compressible values." msgstr "Задаёт выбираемый по умолчанию метод сжатия для сжимаемых значений." -#: utils/misc/guc_tables.c:5063 +#: utils/misc/guc_tables.c:5072 msgid "Sets the transaction isolation level of each new transaction." msgstr "Задаёт уровень изоляции транзакций для новых транзакций." -#: utils/misc/guc_tables.c:5073 +#: utils/misc/guc_tables.c:5082 msgid "Sets the current transaction's isolation level." msgstr "Задаёт текущий уровень изоляции транзакций." -#: utils/misc/guc_tables.c:5084 +#: utils/misc/guc_tables.c:5093 msgid "Sets the display format for interval values." msgstr "Задаёт формат отображения для внутренних значений." -#: utils/misc/guc_tables.c:5095 +#: utils/misc/guc_tables.c:5104 msgid "Log level for reporting invalid ICU locale strings." msgstr "Уровень протоколирования сообщений о некорректных строках локалей ICU." -#: utils/misc/guc_tables.c:5105 +#: utils/misc/guc_tables.c:5114 msgid "Sets the verbosity of logged messages." msgstr "Задаёт детализацию протоколируемых сообщений." -#: utils/misc/guc_tables.c:5115 +#: utils/misc/guc_tables.c:5124 msgid "Sets the message levels that are logged." msgstr "Ограничивает уровни протоколируемых сообщений." -#: utils/misc/guc_tables.c:5126 +#: utils/misc/guc_tables.c:5135 msgid "" "Causes all statements generating error at or above this level to be logged." msgstr "" "Включает протоколирование для SQL-операторов, выполненных с ошибкой этого " "или большего уровня." -#: utils/misc/guc_tables.c:5137 +#: utils/misc/guc_tables.c:5146 msgid "Sets the type of statements logged." msgstr "Задаёт тип протоколируемых операторов." -#: utils/misc/guc_tables.c:5147 +#: utils/misc/guc_tables.c:5156 msgid "Sets the syslog \"facility\" to be used when syslog enabled." msgstr "Задаёт получателя сообщений, отправляемых в syslog." -#: utils/misc/guc_tables.c:5158 +#: utils/misc/guc_tables.c:5167 msgid "Sets the session's behavior for triggers and rewrite rules." msgstr "" "Задаёт режим срабатывания триггеров и правил перезаписи для текущего сеанса." -#: utils/misc/guc_tables.c:5168 +#: utils/misc/guc_tables.c:5177 msgid "Sets the current transaction's synchronization level." msgstr "Задаёт уровень синхронизации текущей транзакции." -#: utils/misc/guc_tables.c:5178 +#: utils/misc/guc_tables.c:5187 msgid "Allows archiving of WAL files using \"archive_command\"." msgstr "Разрешает архивацию файлов WAL с использованием \"archive_command\"." -#: utils/misc/guc_tables.c:5188 +#: utils/misc/guc_tables.c:5197 msgid "Sets the action to perform upon reaching the recovery target." msgstr "" "Задаёт действие, которое будет выполняться по достижении цели восстановления." -#: utils/misc/guc_tables.c:5198 +#: utils/misc/guc_tables.c:5207 msgid "Collects function-level statistics on database activity." msgstr "Включает сбор статистики активности в БД на уровне функций." -#: utils/misc/guc_tables.c:5209 +#: utils/misc/guc_tables.c:5218 msgid "Sets the consistency of accesses to statistics data." msgstr "Задаёт режим согласования доступа к данным статистики." -#: utils/misc/guc_tables.c:5219 +#: utils/misc/guc_tables.c:5228 msgid "Compresses full-page writes written in WAL file with specified method." msgstr "Сжимать данные записываемых в WAL полных страниц заданным методом." -#: utils/misc/guc_tables.c:5229 +#: utils/misc/guc_tables.c:5238 msgid "Sets the level of information written to the WAL." msgstr "Задаёт уровень информации, записываемой в WAL." -#: utils/misc/guc_tables.c:5239 +#: utils/misc/guc_tables.c:5248 msgid "Selects the dynamic shared memory implementation used." msgstr "Выбирает используемую реализацию динамической разделяемой памяти." -#: utils/misc/guc_tables.c:5249 +#: utils/misc/guc_tables.c:5258 msgid "" "Selects the shared memory implementation used for the main shared memory " "region." @@ -36147,19 +36152,23 @@ msgstr "" "Выбирает реализацию разделяемой памяти для управления основным блоком " "разделяемой памяти." -#: utils/misc/guc_tables.c:5259 +#: utils/misc/guc_tables.c:5268 msgid "Selects the file copy method." msgstr "Выбирает метод копирования файлов." -#: utils/misc/guc_tables.c:5269 +#: utils/misc/guc_tables.c:5278 +msgid "Selects the method used for extending data files." +msgstr "Выбирает метод для расширения файлов данных." + +#: utils/misc/guc_tables.c:5288 msgid "Selects the method used for forcing WAL updates to disk." msgstr "Выбирает метод принудительной записи изменений в WAL на диск." -#: utils/misc/guc_tables.c:5279 +#: utils/misc/guc_tables.c:5298 msgid "Sets how binary values are to be encoded in XML." msgstr "Определяет, как должны кодироваться двоичные значения в XML." -#: utils/misc/guc_tables.c:5289 +#: utils/misc/guc_tables.c:5308 msgid "" "Sets whether XML data in implicit parsing and serialization operations is to " "be considered as documents or content fragments." @@ -36167,27 +36176,27 @@ msgstr "" "Определяет, следует ли рассматривать XML-данные в неявных операциях разбора " "и сериализации как документы или как фрагменты содержания." -#: utils/misc/guc_tables.c:5300 +#: utils/misc/guc_tables.c:5319 msgid "Use of huge pages on Linux or Windows." msgstr "Включает использование огромных страниц в Linux и в Windows." -#: utils/misc/guc_tables.c:5310 +#: utils/misc/guc_tables.c:5329 msgid "Indicates the status of huge pages." msgstr "Показывает состояние использования огромных страниц." -#: utils/misc/guc_tables.c:5321 +#: utils/misc/guc_tables.c:5340 msgid "Prefetch referenced blocks during recovery." msgstr "Осуществлять предвыборку изменяемых блоков в процессе восстановления." -#: utils/misc/guc_tables.c:5322 +#: utils/misc/guc_tables.c:5341 msgid "Look ahead in the WAL to find references to uncached data." msgstr "Прочитывать WAL наперёд для вычисления ещё не кешированных блоков." -#: utils/misc/guc_tables.c:5331 +#: utils/misc/guc_tables.c:5350 msgid "Forces the planner's use parallel query nodes." msgstr "Принудительно включает в планировщике узлы параллельного выполнения." -#: utils/misc/guc_tables.c:5332 +#: utils/misc/guc_tables.c:5351 msgid "" "This can be useful for testing the parallel query infrastructure by forcing " "the planner to generate plans that contain nodes that perform tuple " @@ -36197,15 +36206,15 @@ msgstr "" "выполнения, так как планировщик будет строить планы с передачей кортежей " "между параллельными исполнителями и основным процессом." -#: utils/misc/guc_tables.c:5344 +#: utils/misc/guc_tables.c:5363 msgid "Chooses the algorithm for encrypting passwords." msgstr "Выбирает алгоритм шифрования паролей." -#: utils/misc/guc_tables.c:5354 +#: utils/misc/guc_tables.c:5373 msgid "Controls the planner's selection of custom or generic plan." msgstr "Управляет выбором специализированных или общих планов планировщиком." -#: utils/misc/guc_tables.c:5355 +#: utils/misc/guc_tables.c:5374 msgid "" "Prepared statements can have custom and generic plans, and the planner will " "attempt to choose which is better. This can be set to override the default " @@ -36215,30 +36224,30 @@ msgstr "" "планы, и планировщик пытается выбрать лучший вариант. Этот параметр " "позволяет переопределить поведение по умолчанию." -#: utils/misc/guc_tables.c:5367 +#: utils/misc/guc_tables.c:5386 msgid "Sets the minimum SSL/TLS protocol version to use." msgstr "" "Задаёт минимальную версию протокола SSL/TLS, которая может использоваться." -#: utils/misc/guc_tables.c:5379 +#: utils/misc/guc_tables.c:5398 msgid "Sets the maximum SSL/TLS protocol version to use." msgstr "" "Задаёт максимальную версию протокола SSL/TLS, которая может использоваться." -#: utils/misc/guc_tables.c:5391 +#: utils/misc/guc_tables.c:5410 msgid "" "Sets the method for synchronizing the data directory before crash recovery." msgstr "" "Задаёт метод синхронизации каталога данных перед восстановления после сбоя." -#: utils/misc/guc_tables.c:5400 +#: utils/misc/guc_tables.c:5419 msgid "" "Forces immediate streaming or serialization of changes in large transactions." msgstr "" "Включает непосредственную передачу или сериализацию изменений в больших " "транзакциях." -#: utils/misc/guc_tables.c:5401 +#: utils/misc/guc_tables.c:5420 msgid "" "On the publisher, it allows streaming or serializing each change in logical " "decoding. On the subscriber, it allows serialization of all changes to files " @@ -36251,7 +36260,7 @@ msgstr "" "файлы и уведомления применяющих процессов о необходимости прочитать и " "применить изменения в конце транзакции." -#: utils/misc/guc_tables.c:5413 +#: utils/misc/guc_tables.c:5432 msgid "Selects the method for executing asynchronous I/O." msgstr "Выбирает метод для выполнения асинхронного ввода/вывода." @@ -36416,12 +36425,12 @@ msgstr "Ошибка при создании контекста памяти \"% msgid "could not attach to dynamic shared area" msgstr "не удалось подключиться к динамической разделяемой области" -#: utils/mmgr/mcxt.c:1160 +#: utils/mmgr/mcxt.c:1163 #, c-format msgid "Failed on request of size %zu in memory context \"%s\"." msgstr "Ошибка при запросе блока размером %zu в контексте памяти \"%s\"." -#: utils/mmgr/mcxt.c:1304 +#: utils/mmgr/mcxt.c:1319 #, c-format msgid "logging memory contexts of PID %d" msgstr "вывод информации о памяти процесса с PID %d" @@ -36470,12 +36479,12 @@ msgstr "" msgid "could not seek to block % of temporary file" msgstr "не удалось переместиться к блоку % временного файла" -#: utils/sort/sharedtuplestore.c:466 +#: utils/sort/sharedtuplestore.c:467 #, c-format msgid "unexpected chunk in shared tuplestore temporary file" msgstr "неожиданный фрагмент в файле общего временного хранилища кортежей" -#: utils/sort/sharedtuplestore.c:548 +#: utils/sort/sharedtuplestore.c:549 #, c-format msgid "could not seek to block %u in shared tuplestore temporary file" msgstr "" @@ -36487,17 +36496,17 @@ msgstr "" msgid "cannot have more than %d runs for an external sort" msgstr "число потоков данных для внешней сортировки не может превышать %d" -#: utils/sort/tuplesortvariants.c:1671 +#: utils/sort/tuplesortvariants.c:1688 #, c-format msgid "could not create unique index \"%s\"" msgstr "создать уникальный индекс \"%s\" не удалось" -#: utils/sort/tuplesortvariants.c:1673 +#: utils/sort/tuplesortvariants.c:1690 #, c-format msgid "Key %s is duplicated." msgstr "Ключ %s дублируется." -#: utils/sort/tuplesortvariants.c:1674 +#: utils/sort/tuplesortvariants.c:1691 #, c-format msgid "Duplicate keys exist." msgstr "Данные содержат дублирующиеся ключи." @@ -37222,6 +37231,63 @@ msgstr "нестандартное использование спецсимво msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'." msgstr "Используйте для записи спецсимволов синтаксис спецстрок E'\\r\\n'." +#, c-format +#~ msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" +#~ msgstr "" +#~ "предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON LARGE OBJECTS" + +#, c-format +#~ msgid "unrecognized CLUSTER option \"%s\"" +#~ msgstr "нераспознанный параметр CLUSTER: \"%s\"" + +#, c-format +#~ msgid "unrecognized DROP DATABASE option \"%s\"" +#~ msgstr "нераспознанный параметр DROP DATABASE: \"%s\"" + +#, c-format +#~ msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" +#~ msgstr "нераспознанное значение параметра EXPLAIN \"%s\": \"%s\"" + +#, c-format +#~ msgid "unrecognized EXPLAIN option \"%s\"" +#~ msgstr "нераспознанный параметр EXPLAIN: \"%s\"" + +#, c-format +#~ msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" +#~ msgstr "" +#~ "параметры ANALYZE и GENERIC_PLAN оператора EXPLAIN нельзя использовать " +#~ "одновременно" + +#, c-format +#~ msgid "unrecognized REINDEX option \"%s\"" +#~ msgstr "нераспознанный параметр REINDEX: \"%s\"" + +#, c-format +#~ msgid "unrecognized ANALYZE option \"%s\"" +#~ msgstr "нераспознанный параметр ANALYZE: \"%s\"" + +#, c-format +#~ msgid "unrecognized VACUUM option \"%s\"" +#~ msgstr "нераспознанный параметр VACUUM: \"%s\"" + +#, c-format +#~ msgid "" +#~ "replication slot synchronization worker is shutting down on receiving " +#~ "SIGINT" +#~ msgstr "" +#~ "процесс синхронизации слотов репликации останавливается, получив сигнал " +#~ "SIGINT" + +#, c-format +#~ msgid "replication origin \"%s\" already exists" +#~ msgstr "источник репликации \"%s\" уже существует" + +#, c-format +#~ msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" +#~ msgstr "" +#~ "нераспознанное значение для параметра CREATE_REPLICATION_SLOT \"%s\": " +#~ "\"%s\"" + #, c-format #~ msgid "Replication slot \"%s\" does not exist." #~ msgstr "Слот репликации \"%s\" не существует." diff --git a/src/backend/po/sv.po b/src/backend/po/sv.po index 499720d9a97..4f5a5af0099 100644 --- a/src/backend/po/sv.po +++ b/src/backend/po/sv.po @@ -1,5 +1,6 @@ # Swedish message translation file for postgresql -# Dennis Björklund , 2002, 2003, 2004, 2005, 2006, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025. +# Dennis Björklund , 2002, 2003, 2004, 2005, 2006, 2017, +# 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025. 2026. # # Många av termerna är tekniska termer som refererar till begrepp i SQL-satser # och liknande. Om man översätter vissa av dessa så kommer det bli väldigt @@ -23,8 +24,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-19 13:15+0000\n" -"PO-Revision-Date: 2025-09-19 20:24+0200\n" +"POT-Creation-Date: 2026-02-06 23:15+0000\n" +"PO-Revision-Date: 2026-02-07 09:26+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -104,15 +105,15 @@ msgstr "kunde inte öppna filen \"%s\" för läsning: %m" #: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 #: access/transam/timeline.c:143 access/transam/timeline.c:362 -#: access/transam/twophase.c:1353 access/transam/xlog.c:3479 -#: access/transam/xlog.c:4370 access/transam/xlogrecovery.c:1246 -#: access/transam/xlogrecovery.c:1344 access/transam/xlogrecovery.c:1381 -#: access/transam/xlogrecovery.c:1448 backup/basebackup.c:2128 +#: access/transam/twophase.c:1353 access/transam/xlog.c:3478 +#: access/transam/xlog.c:4369 access/transam/xlogrecovery.c:1257 +#: access/transam/xlogrecovery.c:1355 access/transam/xlogrecovery.c:1392 +#: access/transam/xlogrecovery.c:1459 backup/basebackup.c:2128 #: backup/walsummary.c:283 commands/extension.c:3841 libpq/hba.c:769 #: replication/logical/origin.c:768 replication/logical/origin.c:804 #: replication/logical/reorderbuffer.c:5366 -#: replication/logical/snapbuild.c:1951 replication/slot.c:2485 -#: replication/slot.c:2526 replication/walsender.c:629 +#: replication/logical/snapbuild.c:1951 replication/slot.c:2546 +#: replication/slot.c:2587 replication/walsender.c:643 #: storage/file/buffile.c:470 storage/file/copydir.c:201 #: utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 #, c-format @@ -120,10 +121,10 @@ msgid "could not read file \"%s\": %m" msgstr "kunde inte läsa fil \"%s\": %m" #: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 -#: access/transam/xlog.c:3484 access/transam/xlog.c:4375 +#: access/transam/xlog.c:3483 access/transam/xlog.c:4374 #: replication/logical/origin.c:773 replication/logical/origin.c:812 -#: replication/logical/snapbuild.c:1956 replication/slot.c:2489 -#: replication/slot.c:2530 replication/walsender.c:634 +#: replication/logical/snapbuild.c:1956 replication/slot.c:2550 +#: replication/slot.c:2591 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -134,18 +135,18 @@ msgstr "kunde inte läsa fil \"%s\": läste %d av %zu" #: access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 #: access/transam/timeline.c:392 access/transam/timeline.c:438 #: access/transam/timeline.c:512 access/transam/twophase.c:1365 -#: access/transam/twophase.c:1783 access/transam/xlog.c:3325 -#: access/transam/xlog.c:3519 access/transam/xlog.c:3524 -#: access/transam/xlog.c:3660 access/transam/xlog.c:4340 -#: access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 +#: access/transam/twophase.c:1783 access/transam/xlog.c:3324 +#: access/transam/xlog.c:3518 access/transam/xlog.c:3523 +#: access/transam/xlog.c:3659 access/transam/xlog.c:4339 +#: access/transam/xlog.c:5311 commands/copyfrom.c:1929 commands/copyto.c:598 #: libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 #: replication/logical/origin.c:706 replication/logical/origin.c:845 #: replication/logical/reorderbuffer.c:5418 #: replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 -#: replication/slot.c:2373 replication/slot.c:2537 replication/walsender.c:644 +#: replication/slot.c:2432 replication/slot.c:2598 replication/walsender.c:658 #: storage/file/copydir.c:224 storage/file/copydir.c:229 -#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:825 -#: storage/file/fd.c:3815 storage/file/fd.c:3921 utils/cache/relmapper.c:841 +#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:828 +#: storage/file/fd.c:3818 storage/file/fd.c:3924 utils/cache/relmapper.c:841 #: utils/cache/relmapper.c:956 #, c-format msgid "could not close file \"%s\": %m" @@ -173,10 +174,10 @@ msgstr "" #: ../common/file_utils.c:428 ../common/file_utils.c:502 #: access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 #: access/transam/timeline.c:251 access/transam/timeline.c:348 -#: access/transam/twophase.c:1309 access/transam/xlog.c:3215 -#: access/transam/xlog.c:3395 access/transam/xlog.c:3434 -#: access/transam/xlog.c:3627 access/transam/xlog.c:4360 -#: access/transam/xlogrecovery.c:4285 access/transam/xlogrecovery.c:4386 +#: access/transam/twophase.c:1309 access/transam/xlog.c:3214 +#: access/transam/xlog.c:3394 access/transam/xlog.c:3433 +#: access/transam/xlog.c:3626 access/transam/xlog.c:4359 +#: access/transam/xlogrecovery.c:4307 access/transam/xlogrecovery.c:4408 #: access/transam/xlogutils.c:825 backup/basebackup.c:549 #: backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 #: postmaster/syslogger.c:1512 replication/logical/origin.c:758 @@ -184,10 +185,10 @@ msgstr "" #: replication/logical/reorderbuffer.c:4573 #: replication/logical/reorderbuffer.c:5346 #: replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 -#: replication/slot.c:2457 replication/walsender.c:602 -#: replication/walsender.c:3080 storage/file/copydir.c:167 -#: storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 -#: storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 +#: replication/slot.c:2518 replication/walsender.c:616 +#: replication/walsender.c:3094 storage/file/copydir.c:167 +#: storage/file/copydir.c:255 storage/file/fd.c:803 storage/file/fd.c:3575 +#: storage/file/fd.c:3805 storage/file/fd.c:3895 storage/smgr/md.c:686 #: utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 #: utils/error/elog.c:2132 utils/init/miscinit.c:1586 #: utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 @@ -212,12 +213,12 @@ msgstr "kunde inte skriva fil \"%s\": %m" #: access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 #: access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 #: access/transam/timeline.c:506 access/transam/twophase.c:1777 -#: access/transam/xlog.c:3315 access/transam/xlog.c:3513 -#: access/transam/xlog.c:4333 access/transam/xlog.c:8726 +#: access/transam/xlog.c:3314 access/transam/xlog.c:3512 +#: access/transam/xlog.c:4332 access/transam/xlog.c:8726 #: access/transam/xlog.c:8770 backup/basebackup_server.c:207 #: commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 -#: replication/slot.c:2359 replication/slot.c:2467 storage/file/fd.c:817 -#: storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 +#: replication/slot.c:2416 replication/slot.c:2528 storage/file/fd.c:820 +#: storage/file/fd.c:3916 storage/smgr/md.c:1469 storage/smgr/md.c:1529 #: storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" @@ -231,19 +232,19 @@ msgstr "kunde inte fsync:a fil \"%s\": %m" #: ../common/parse_manifest.c:157 ../common/parse_manifest.c:852 #: ../common/psprintf.c:140 ../common/scram-common.c:268 ../port/path.c:829 #: ../port/path.c:866 ../port/path.c:883 access/transam/twophase.c:1418 -#: access/transam/xlogrecovery.c:570 lib/dshash.c:253 libpq/auth.c:1353 +#: access/transam/xlogrecovery.c:571 lib/dshash.c:253 libpq/auth.c:1353 #: libpq/auth.c:1397 libpq/auth.c:1959 libpq/be-secure-gssapi.c:537 #: libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 #: postmaster/bgworker.c:1023 postmaster/postmaster.c:3575 #: postmaster/walsummarizer.c:938 -#: replication/libpqwalreceiver/libpqwalreceiver.c:351 -#: replication/logical/logical.c:212 replication/walsender.c:811 -#: storage/buffer/localbuf.c:745 storage/file/fd.c:909 storage/file/fd.c:1444 -#: storage/file/fd.c:1605 storage/file/fd.c:2589 storage/ipc/procarray.c:1465 +#: replication/libpqwalreceiver/libpqwalreceiver.c:364 +#: replication/logical/logical.c:212 replication/walsender.c:825 +#: storage/buffer/localbuf.c:745 storage/file/fd.c:912 storage/file/fd.c:1447 +#: storage/file/fd.c:1608 storage/file/fd.c:2592 storage/ipc/procarray.c:1465 #: storage/ipc/procarray.c:2217 storage/ipc/procarray.c:2224 #: storage/ipc/procarray.c:2727 storage/ipc/procarray.c:3436 -#: utils/activity/pgstat_shmem.c:535 utils/adt/pg_locale.c:510 -#: utils/adt/pg_locale.c:584 utils/adt/pg_locale_icu.c:358 +#: utils/activity/pgstat_shmem.c:535 utils/adt/pg_locale.c:517 +#: utils/adt/pg_locale.c:591 utils/adt/pg_locale_icu.c:358 #: utils/adt/pg_locale_libc.c:207 utils/adt/pg_locale_libc.c:302 #: utils/adt/pg_locale_libc.c:390 utils/fmgr/dfmgr.c:234 #: utils/hash/dynahash.c:517 utils/hash/dynahash.c:617 @@ -252,7 +253,7 @@ msgstr "kunde inte fsync:a fil \"%s\": %m" #: utils/misc/guc.c:672 utils/misc/guc.c:1060 utils/misc/guc.c:4505 #: utils/misc/tzparser.c:479 utils/mmgr/aset.c:451 utils/mmgr/bump.c:183 #: utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 utils/mmgr/dsa.c:810 -#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1159 utils/mmgr/slab.c:370 +#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1162 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "slut på minne" @@ -309,9 +310,9 @@ msgstr "kunde inte läsa från kommando \"%s\": %m" msgid "no data was returned by command \"%s\"" msgstr "ingen data returnerades från kommandot \"%s\"" -#: ../common/exec.c:405 libpq/pqcomm.c:193 storage/ipc/waiteventset.c:782 -#: storage/ipc/waiteventset.c:962 storage/ipc/waiteventset.c:1202 -#: storage/ipc/waiteventset.c:1364 storage/ipc/waiteventset.c:1490 +#: ../common/exec.c:405 libpq/pqcomm.c:193 storage/ipc/waiteventset.c:783 +#: storage/ipc/waiteventset.c:963 storage/ipc/waiteventset.c:1203 +#: storage/ipc/waiteventset.c:1365 storage/ipc/waiteventset.c:1491 #, c-format msgid "%s() failed: %m" msgstr "%s() misslyckades: %m" @@ -330,7 +331,7 @@ msgstr "slut på minne\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "kan inte duplicera null-pekare (internt fel)\n" -#: ../common/file_utils.c:75 storage/file/fd.c:3578 +#: ../common/file_utils.c:75 storage/file/fd.c:3581 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "kan inte synkronisera filsystemet för fil \"%s\": %m" @@ -339,11 +340,11 @@ msgstr "kan inte synkronisera filsystemet för fil \"%s\": %m" #: ../common/file_utils.c:592 access/transam/twophase.c:1321 #: access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:235 #: backup/basebackup.c:357 backup/basebackup.c:555 backup/basebackup.c:626 -#: backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1889 -#: commands/copyto.c:979 commands/extension.c:3820 commands/tablespace.c:804 +#: backup/walsummary.c:247 commands/copyfrom.c:1889 commands/copyto.c:979 +#: commands/extension.c:3820 commands/tablespace.c:804 #: commands/tablespace.c:893 postmaster/pgarch.c:682 #: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 -#: storage/file/fd.c:1969 storage/file/fd.c:2057 storage/file/fd.c:3626 +#: storage/file/fd.c:1972 storage/file/fd.c:2060 storage/file/fd.c:3629 #: utils/adt/dbsize.c:105 utils/adt/dbsize.c:266 utils/adt/dbsize.c:355 #: utils/adt/genfile.c:437 utils/adt/genfile.c:612 utils/adt/misc.c:340 #, c-format @@ -358,22 +359,22 @@ msgstr "detta bygge stöder inte synkmetod \"%s\"" #: ../common/file_utils.c:156 ../common/file_utils.c:304 #: ../common/pgfnames.c:48 ../common/rmtree.c:63 commands/tablespace.c:728 #: commands/tablespace.c:738 postmaster/postmaster.c:1496 -#: storage/file/fd.c:2994 storage/file/reinit.c:126 utils/adt/misc.c:256 +#: storage/file/fd.c:2997 storage/file/reinit.c:126 utils/adt/misc.c:256 #: utils/misc/tzparser.c:340 #, c-format msgid "could not open directory \"%s\": %m" msgstr "kunde inte öppna katalog \"%s\": %m" #: ../common/file_utils.c:174 ../common/file_utils.c:338 -#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3006 +#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3009 #, c-format msgid "could not read directory \"%s\": %m" msgstr "kunde inte läsa katalog \"%s\": %m" #: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 #: postmaster/pgarch.c:836 postmaster/syslogger.c:1560 -#: replication/logical/snapbuild.c:1708 replication/slot.c:988 -#: replication/slot.c:2245 replication/slot.c:2387 storage/file/fd.c:835 +#: replication/logical/snapbuild.c:1708 replication/slot.c:1027 +#: replication/slot.c:2299 replication/slot.c:2448 storage/file/fd.c:838 #: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" @@ -730,12 +731,12 @@ msgstr "kunde inte hämta statuskod för underprocess: felkod %lu" #: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 #: access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 -#: access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 -#: postmaster/syslogger.c:1489 replication/logical/origin.c:614 -#: replication/logical/reorderbuffer.c:4841 +#: access/transam/xlogarchive.c:399 backup/walsummary.c:254 +#: postmaster/postmaster.c:1069 postmaster/syslogger.c:1489 +#: replication/logical/origin.c:614 replication/logical/reorderbuffer.c:4841 #: replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 -#: replication/slot.c:2441 storage/file/fd.c:875 storage/file/fd.c:3440 -#: storage/file/fd.c:3502 storage/file/reinit.c:261 storage/ipc/dsm.c:343 +#: replication/slot.c:2502 storage/file/fd.c:878 storage/file/fd.c:3443 +#: storage/file/fd.c:3505 storage/file/reinit.c:261 storage/ipc/dsm.c:343 #: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 #: utils/time/snapmgr.c:1609 #, c-format @@ -743,8 +744,8 @@ msgid "could not remove file \"%s\": %m" msgstr "kunde inte ta bort fil \"%s\": %m" #: ../common/rmtree.c:124 commands/tablespace.c:767 commands/tablespace.c:780 -#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3432 -#: storage/file/fd.c:3841 +#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3435 +#: storage/file/fd.c:3844 #, c-format msgid "could not remove directory \"%s\": %m" msgstr "kunde inte ta bort katalog \"%s\": %m" @@ -856,25 +857,25 @@ msgstr "kunde inte hämta knutpunkt (junction) för \"%s\": %s" msgid "could not get junction for \"%s\": %s\n" msgstr "kunde inte hämta knutpunkt (junction) för \"%s\": %s\n" -#: ../port/open.c:115 +#: ../port/open.c:125 #, c-format msgid "could not open file \"%s\": %s" msgstr "kunde inte öppna fil \"%s\": %s" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "lock violation" msgstr "lås-överträdelse" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "sharing violation" msgstr "sharing-överträdelse" -#: ../port/open.c:117 +#: ../port/open.c:127 #, c-format msgid "Continuing to retry for 30 seconds." msgstr "Fortsätter att försöka i 30 sekunder." -#: ../port/open.c:118 +#: ../port/open.c:128 #, c-format msgid "You might have antivirus, backup, or similar software interfering with the database system." msgstr "Du kan ha antivirus, backup eller liknande mjukvara som stör databassystemet" @@ -914,7 +915,7 @@ msgstr "förfrågan efter BRIN-intervallsummering för index \"%s\" sida %u har #: access/transam/xlogfuncs.c:242 access/transam/xlogfuncs.c:281 #: access/transam/xlogfuncs.c:302 access/transam/xlogfuncs.c:323 #: access/transam/xlogfuncs.c:389 access/transam/xlogfuncs.c:447 -#: statistics/attribute_stats.c:190 statistics/attribute_stats.c:934 +#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:936 #: statistics/relation_stats.c:97 #, c-format msgid "recovery is in progress" @@ -1206,10 +1207,10 @@ msgstr "kan inte flytta temporära index tillhörande andra sessioner" msgid "failed to re-find tuple within index \"%s\"" msgstr "misslyckades att återfinna tuple i index \"%s\"" -#: access/gin/gininsert.c:1283 access/gin/ginutil.c:152 +#: access/gin/gininsert.c:1310 access/gin/ginutil.c:152 #: executor/execExpr.c:2244 utils/adt/array_userfuncs.c:1963 #: utils/adt/arrayfuncs.c:4028 utils/adt/arrayfuncs.c:6726 -#: utils/adt/rowtypes.c:974 +#: utils/adt/rowtypes.c:974 utils/sort/tuplesortvariants.c:646 #, c-format msgid "could not identify a comparison function for type %s" msgstr "kunde inte hitta någon jämförelsefunktion för typen %s" @@ -1305,12 +1306,12 @@ msgstr "kunde inte bestämma vilken jämförelse (collation) som skall användas #: access/hash/hashfunc.c:278 access/hash/hashfunc.c:333 catalog/heap.c:688 #: catalog/heap.c:694 commands/createas.c:203 commands/createas.c:515 -#: commands/indexcmds.c:2090 commands/tablecmds.c:19952 commands/view.c:80 +#: commands/indexcmds.c:2090 commands/tablecmds.c:19987 commands/view.c:80 #: regex/regc_pg_locale.c:242 utils/adt/formatting.c:1655 #: utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 #: utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 #: utils/adt/like_support.c:1020 utils/adt/varchar.c:738 -#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1592 +#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1603 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "Använd en COLLATE-klausul för att sätta jämförelsen explicit." @@ -1361,38 +1362,38 @@ msgstr "operatorfamilj \"%s\" för accessmetod %s saknar supportfunktion för op msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)" msgstr "operatorfamilj \"%s\" för accessmetod %s saknar mellan-typ-operator(er)" -#: access/heap/heapam.c:2280 +#: access/heap/heapam.c:2283 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "kan inte lägga till tupler i en parellell arbetare" -#: access/heap/heapam.c:2803 +#: access/heap/heapam.c:2806 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "kan inte radera tupler under en parallell operation" -#: access/heap/heapam.c:2850 +#: access/heap/heapam.c:2853 #, c-format msgid "attempted to delete invisible tuple" msgstr "försökte ta bort en osynlig tuple" -#: access/heap/heapam.c:3300 access/index/genam.c:829 +#: access/heap/heapam.c:3303 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "kan inte uppdatera tupler under en parallell operation" -#: access/heap/heapam.c:3477 +#: access/heap/heapam.c:3480 #, c-format msgid "attempted to update invisible tuple" msgstr "försökte uppdatera en osynlig tuple" -#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 -#: access/heap/heapam.c:5291 access/heap/heapam_handler.c:470 +#: access/heap/heapam.c:4993 access/heap/heapam.c:5031 +#: access/heap/heapam.c:5298 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "kunde inte låsa rad i relationen \"%s\"" -#: access/heap/heapam.c:6405 commands/trigger.c:3401 +#: access/heap/heapam.c:6425 commands/trigger.c:3401 #: executor/nodeModifyTable.c:2568 executor/nodeModifyTable.c:2658 #, c-format msgid "tuple to be updated was already modified by an operation triggered by the current command" @@ -1415,13 +1416,13 @@ msgstr "kunde inte skriva till fil \"%s\", skrev %d av %d: %m." #: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 #: access/transam/timeline.c:329 access/transam/timeline.c:481 -#: access/transam/xlog.c:3240 access/transam/xlog.c:3448 -#: access/transam/xlog.c:4312 access/transam/xlog.c:9329 +#: access/transam/xlog.c:3239 access/transam/xlog.c:3447 +#: access/transam/xlog.c:4311 access/transam/xlog.c:9329 #: access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 #: backup/basebackup_server.c:242 commands/dbcommands.c:495 #: postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 #: postmaster/walsummarizer.c:1215 replication/logical/origin.c:626 -#: replication/slot.c:2306 storage/file/copydir.c:173 +#: replication/slot.c:2360 storage/file/copydir.c:173 #: storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 #, c-format msgid "could not create file \"%s\": %m" @@ -1434,12 +1435,12 @@ msgstr "kunde inte trunkera fil \"%s\" till %u: %m" #: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 #: access/transam/timeline.c:424 access/transam/timeline.c:498 -#: access/transam/xlog.c:3301 access/transam/xlog.c:3504 -#: access/transam/xlog.c:4324 commands/dbcommands.c:507 +#: access/transam/xlog.c:3300 access/transam/xlog.c:3503 +#: access/transam/xlog.c:4323 commands/dbcommands.c:507 #: postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 #: replication/logical/origin.c:638 replication/logical/origin.c:680 #: replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 -#: replication/slot.c:2341 storage/file/buffile.c:545 +#: replication/slot.c:2396 storage/file/buffile.c:545 #: storage/file/copydir.c:213 utils/init/miscinit.c:1661 #: utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 #: utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 @@ -1633,47 +1634,47 @@ msgstr "tabell \"%s\": pausar trunkering pga konfliktande låskrav" msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel" msgstr "stänger av parallell-flaggan för vacuumn på \"%s\" --- kan inte köra vacuum på temporära tabeller parallellt" -#: access/heap/vacuumlazy.c:3766 +#: access/heap/vacuumlazy.c:3768 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "vid skanning av block %u offset %u i relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3769 +#: access/heap/vacuumlazy.c:3771 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "vid skanning av block %u i relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3773 +#: access/heap/vacuumlazy.c:3775 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "vid skanning av relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3781 +#: access/heap/vacuumlazy.c:3783 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "vid vacuum av block %u offset %u i relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3784 +#: access/heap/vacuumlazy.c:3786 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "vid vacuum av block %u i relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3788 +#: access/heap/vacuumlazy.c:3790 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "vid vacuum av relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3793 commands/vacuumparallel.c:1126 +#: access/heap/vacuumlazy.c:3795 commands/vacuumparallel.c:1126 #, c-format msgid "while vacuuming index \"%s\" of relation \"%s.%s\"" msgstr "vid vaccum av index \"%s\" i relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3798 commands/vacuumparallel.c:1132 +#: access/heap/vacuumlazy.c:3800 commands/vacuumparallel.c:1132 #, c-format msgid "while cleaning up index \"%s\" of relation \"%s.%s\"" msgstr "vid uppstädning av index \"%s\" i relation \"%s.%s\"" -#: access/heap/vacuumlazy.c:3804 +#: access/heap/vacuumlazy.c:3806 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "vid trunkering av relation \"%s.%s\" till %u block" @@ -1700,7 +1701,7 @@ msgstr "kan inte använda index \"%s\" som håller på att indexeras om" #: access/index/indexam.c:203 catalog/objectaddress.c:1361 #: commands/indexcmds.c:3016 commands/tablecmds.c:284 commands/tablecmds.c:308 -#: commands/tablecmds.c:19641 commands/tablecmds.c:21569 +#: commands/tablecmds.c:19666 commands/tablecmds.c:21608 #, c-format msgid "\"%s\" is not an index" msgstr "\"%s\" är inte ett index" @@ -1746,17 +1747,17 @@ msgstr "index \"%s\" innehåller en halvdöd intern sida" msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it." msgstr "Detta kan ha orsakats av en avbruten VACUUM i version 9.3 eller äldre, innan uppdatering. Vänligen REINDEX:era det." -#: access/nbtree/nbtutils.c:4196 +#: access/nbtree/nbtutils.c:4233 #, c-format msgid "index row size %zu exceeds btree version %u maximum %zu for index \"%s\"" msgstr "indexradstorlek %zu överstiger btree version %u maximum %zu för index \"%s\"" -#: access/nbtree/nbtutils.c:4201 +#: access/nbtree/nbtutils.c:4238 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "Indexrad refererar tupel (%u,%u) i relation \"%s\"." -#: access/nbtree/nbtutils.c:4205 +#: access/nbtree/nbtutils.c:4242 #, c-format msgid "" "Values larger than 1/3 of a buffer page cannot be indexed.\n" @@ -1807,7 +1808,7 @@ msgstr "tid (%u, %u) är inte giltigt för relation \"%s\"" msgid "\"%s\" cannot be empty." msgstr "\"%s\" får inte vara tom." -#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4879 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4912 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "\"%s\" är för lång (maximalt %d tecken)." @@ -1847,13 +1848,13 @@ msgstr "Se till att konfigurationsparametern \"%s\" är satt på primär-servern msgid "Make sure the configuration parameter \"%s\" is set." msgstr "Se till att konfigurationsparametern \"%s\" är satt." -#: access/transam/multixact.c:1097 +#: access/transam/multixact.c:1179 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database \"%s\"" msgstr "databasen tar inte emot kommandon som tilldelar nya MultiXactId:er för att förhinda dataförlust vid \"wraparound\" i databasen \"%s\"" -#: access/transam/multixact.c:1099 access/transam/multixact.c:1106 -#: access/transam/multixact.c:1130 access/transam/multixact.c:1139 +#: access/transam/multixact.c:1181 access/transam/multixact.c:1188 +#: access/transam/multixact.c:1212 access/transam/multixact.c:1221 #: access/transam/varsup.c:158 access/transam/varsup.c:165 #, c-format msgid "" @@ -1863,65 +1864,70 @@ msgstr "" "Utför en databas-VACUUM i hela den databasen.\n" "Du kan också behöva commit:a eller rulla tillbaka gamla förberedda transaktioner eller slänga gamla replikeringsslottar." -#: access/transam/multixact.c:1104 +#: access/transam/multixact.c:1186 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database with OID %u" msgstr "databasen tar inte emot kommandon som tilldelar nya MultiXactId:er för att förhinda dataförlust vid \"wraparound\" i databasen med OID %u" -#: access/transam/multixact.c:1125 access/transam/multixact.c:2482 +#: access/transam/multixact.c:1207 access/transam/multixact.c:2552 #, 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" msgstr[0] "databasen \"%s\" måste städas innan ytterligare %u MultiXactId används" msgstr[1] "databasen \"%s\" måste städas innan ytterligare %u MultiXactId:er används" -#: access/transam/multixact.c:1134 access/transam/multixact.c:2491 +#: access/transam/multixact.c:1216 access/transam/multixact.c:2561 #, 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" msgstr[0] "databas med OID %u måste städas (vacuum) innan %u till MultiXactId används" msgstr[1] "databas med OID %u måste städas (vacuum) innan %u till MultiXactId:er används" -#: access/transam/multixact.c:1195 +#: access/transam/multixact.c:1280 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "multixact \"members\"-gräns överskriden" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1281 #, 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] "Detta kommando skapar en multixact med %u medlemmar, men återstående utrymmer räcker bara till %u medlem." msgstr[1] "Detta kommando skapar en multixact med %u medlemmar, men återstående utrymmer räcker bara till %u medlemmar." -#: access/transam/multixact.c:1201 +#: access/transam/multixact.c:1286 #, 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 "Kör en databas-VACUUM i hela databasen med OID %u med reducerade inställningar för \"vacuum_multixact_freeze_min_age\" och \"vacuum_multixact_freeze_table_age\"." -#: access/transam/multixact.c:1232 +#: access/transam/multixact.c:1317 #, 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" msgstr[0] "databas med OID %u måste städas innan %d mer multixact-medlem används" msgstr[1] "databas med OID %u måste städas innan %d fler multixact-medlemmar används" -#: access/transam/multixact.c:1237 +#: access/transam/multixact.c:1322 #, 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 "Kör en databas-VACUUM i hela den databasen med reducerade inställningar för \"vacuum_multixact_freeze_min_age\" och \"vacuum_multixact_freeze_table_age\"." -#: access/transam/multixact.c:1377 +#: access/transam/multixact.c:1461 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u finns inte längre -- troligen en wraparound" -#: access/transam/multixact.c:1383 +#: access/transam/multixact.c:1467 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "MultiXactId %u har inte skapats än -- troligen en wraparound" -#: access/transam/multixact.c:2487 access/transam/multixact.c:2496 +#: access/transam/multixact.c:1560 +#, c-format +msgid "MultiXact %u has invalid next offset" +msgstr "MultiXact %u har ett ogiltigt offset till nästa" + +#: access/transam/multixact.c:2557 access/transam/multixact.c:2566 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1930,61 +1936,66 @@ msgstr "" "För att undvika fel vid tilldelning av MultiXactId så utför en databas-VACCUM för hela den databasen.\n" "Du kan också behöva commit:a eller rulla tillbaka gamla förberedda transaktioner eller slänga gamla replikeringsslottar." -#: access/transam/multixact.c:2775 +#: access/transam/multixact.c:2845 #, c-format msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk" msgstr "MultiXact-medlems wraparound-skydd är avslagen eftersom äldsta checkpoint:ade MultiXact %u inte finns på disk" -#: access/transam/multixact.c:2797 +#: access/transam/multixact.c:2867 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "MultiXact-medlems wraparound-skydd är nu påslagen" -#: access/transam/multixact.c:3188 +#: access/transam/multixact.c:3258 #, c-format msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" msgstr "äldsta MultiXact %u hittas inte, tidigast MultiXact %u, skippar trunkering" -#: access/transam/multixact.c:3206 +#: access/transam/multixact.c:3276 #, c-format msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation" msgstr "kan inte trunkera upp till %u eftersom den inte finns på disk, skippar trunkering" -#: access/transam/multixact.c:3525 +#: access/transam/multixact.c:3293 +#, c-format +msgid "cannot truncate up to MultiXact %u because it has invalid offset, skipping truncation" +msgstr "kan inte trunkera upp till MultiXact %u eftersom den har ogitlig offset, skippar trunkering" + +#: access/transam/multixact.c:3638 #, c-format msgid "invalid MultiXactId: %u" msgstr "ogiltig MultiXactId: %u" -#: access/transam/parallel.c:752 access/transam/parallel.c:871 +#: access/transam/parallel.c:759 access/transam/parallel.c:878 #, c-format msgid "parallel worker failed to initialize" msgstr "parallell arbetare misslyckades med initiering" -#: access/transam/parallel.c:753 access/transam/parallel.c:872 +#: access/transam/parallel.c:760 access/transam/parallel.c:879 #, c-format msgid "More details may be available in the server log." msgstr "Fler detaljer kan finnas i serverloggen." -#: access/transam/parallel.c:933 +#: access/transam/parallel.c:940 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "postmaster avslutade under en parallell transaktion" -#: access/transam/parallel.c:1120 +#: access/transam/parallel.c:1127 #, c-format msgid "lost connection to parallel worker" msgstr "tappad kopplingen till parallell arbetare" -#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 +#: access/transam/parallel.c:1183 access/transam/parallel.c:1185 msgid "parallel worker" msgstr "parallell arbetare" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1355 replication/logical/applyparallelworker.c:897 #, c-format msgid "could not map dynamic shared memory segment" msgstr "kunde inte skapa dynamiskt delat minnessegment: %m" -#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:896 +#: access/transam/parallel.c:1360 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "ogiltigt magiskt nummer i dynamiskt delat minnessegment" @@ -2245,9 +2256,9 @@ msgstr "felaktig storlek lagrad i fil \"%s\"" msgid "calculated CRC checksum does not match value stored in file \"%s\"" msgstr "beräknad CRC-checksumma matchar inte värdet som är lagrat i filen \"%s\"" -#: access/transam/twophase.c:1419 access/transam/xlogrecovery.c:571 +#: access/transam/twophase.c:1419 access/transam/xlogrecovery.c:572 #: postmaster/walsummarizer.c:939 replication/logical/logical.c:213 -#: replication/walsender.c:812 +#: replication/walsender.c:826 #, c-format msgid "Failed while allocating a WAL reading processor." msgstr "Misslyckades vid allokering av en WAL-läs-processor." @@ -2324,7 +2335,7 @@ msgstr "kunde inte återställa tvåfas-statusfil för transaktion %u" msgid "Two-phase state file has been found in WAL record %X/%X, but this transaction has already been restored from disk." msgstr "Statefil för tvåfas har hittats i WAL-post %X/%X men denna transaktion har redan återställts från disk." -#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:214 +#: access/transam/twophase.c:2523 storage/file/fd.c:514 utils/fmgr/dfmgr.c:214 #, c-format msgid "could not access file \"%s\": %m" msgstr "kunde inte komma åt filen \"%s\": %m" @@ -2482,132 +2493,132 @@ msgstr "kan inte rulla tillbaka till sparpunkt under en parallell operation" msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "kan inte ha mer än 2^32-1 undertransaktioner i en transaktion" -#: access/transam/xlog.c:1545 +#: access/transam/xlog.c:1544 #, c-format msgid "request to flush past end of generated WAL; request %X/%X, current position %X/%X" msgstr "förfrågan att flush:a efter slutet av genererad WAL; efterfrågad %X/%X, aktuell position %X/%X" -#: access/transam/xlog.c:1772 +#: access/transam/xlog.c:1771 #, c-format msgid "cannot read past end of generated WAL: requested %X/%X, current position %X/%X" msgstr "kan inte läsa efter slutet av genererad WAL; efterfrågad %X/%X, aktuell position %X/%X" -#: access/transam/xlog.c:2219 access/transam/xlog.c:4548 +#: access/transam/xlog.c:2218 access/transam/xlog.c:4547 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "WAL-segmentstorleken måste vara en tvåpotens mellan 1 MB och 1 GB." -#: access/transam/xlog.c:2455 +#: access/transam/xlog.c:2454 #, c-format msgid "could not write to log file \"%s\" at offset %u, length %zu: %m" msgstr "kunde inte skriva till loggfil \"%s\" vid offset %u, längd %zu: %m" -#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 -#: replication/walsender.c:3074 +#: access/transam/xlog.c:3740 access/transam/xlogutils.c:820 +#: replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "efterfrågat WAL-segment %s har redan tagits bort" -#: access/transam/xlog.c:4063 +#: access/transam/xlog.c:4062 #, c-format msgid "could not rename file \"%s\": %m" msgstr "kunde inte byta namn på fil \"%s\": %m" -#: access/transam/xlog.c:4106 access/transam/xlog.c:4117 -#: access/transam/xlog.c:4138 +#: access/transam/xlog.c:4105 access/transam/xlog.c:4116 +#: access/transam/xlog.c:4137 #, c-format msgid "required WAL directory \"%s\" does not exist" msgstr "krävd WAL-katalog \"%s\" finns inte" -#: access/transam/xlog.c:4123 access/transam/xlog.c:4144 +#: access/transam/xlog.c:4122 access/transam/xlog.c:4143 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "skapar saknad WAL-katalog \"%s\"" -#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 -#: commands/dbcommands.c:3301 +#: access/transam/xlog.c:4126 access/transam/xlog.c:4146 +#: commands/dbcommands.c:3302 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "kunde inte skapa saknad katalog \"%s\": %m" -#: access/transam/xlog.c:4214 +#: access/transam/xlog.c:4213 #, c-format msgid "could not generate secret authorization token" msgstr "kunde inte generera hemligt auktorisationstoken" -#: access/transam/xlog.c:4392 access/transam/xlog.c:4402 -#: access/transam/xlog.c:4428 access/transam/xlog.c:4438 -#: access/transam/xlog.c:4448 access/transam/xlog.c:4454 -#: access/transam/xlog.c:4464 access/transam/xlog.c:4474 -#: access/transam/xlog.c:4484 access/transam/xlog.c:4494 -#: access/transam/xlog.c:4504 access/transam/xlog.c:4514 -#: access/transam/xlog.c:4526 access/transam/xlog.c:4534 +#: access/transam/xlog.c:4391 access/transam/xlog.c:4401 +#: access/transam/xlog.c:4427 access/transam/xlog.c:4437 +#: access/transam/xlog.c:4447 access/transam/xlog.c:4453 +#: access/transam/xlog.c:4463 access/transam/xlog.c:4473 +#: access/transam/xlog.c:4483 access/transam/xlog.c:4493 +#: access/transam/xlog.c:4503 access/transam/xlog.c:4513 +#: access/transam/xlog.c:4525 access/transam/xlog.c:4533 #: utils/init/miscinit.c:1818 #, c-format msgid "database files are incompatible with server" msgstr "databasfilerna är inkompatibla med servern" -#: access/transam/xlog.c:4393 +#: access/transam/xlog.c:4392 #, 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 "Databasklustret initierades med PG_CONTROL_VERSION %d (0x%08x), men servern kompilerades med PG_CONTROL_VERSION %d (0x%08x)." -#: access/transam/xlog.c:4397 +#: access/transam/xlog.c:4396 #, c-format msgid "This could be a problem of mismatched byte ordering. It looks like you need to initdb." msgstr "Detta kan orsakas av en felaktig byte-ordning. Du behöver troligen köra initdb." -#: access/transam/xlog.c:4403 +#: access/transam/xlog.c:4402 #, c-format msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d." msgstr "Databasklustret initierades med PG_CONTROL_VERSION %d, men servern kompilerades med PG_CONTROL_VERSION %d." -#: access/transam/xlog.c:4406 access/transam/xlog.c:4434 -#: access/transam/xlog.c:4444 access/transam/xlog.c:4450 +#: access/transam/xlog.c:4405 access/transam/xlog.c:4433 +#: access/transam/xlog.c:4443 access/transam/xlog.c:4449 #, c-format msgid "It looks like you need to initdb." msgstr "Du behöver troligen köra initdb." -#: access/transam/xlog.c:4418 +#: access/transam/xlog.c:4417 #, c-format msgid "incorrect checksum in control file" msgstr "ogiltig kontrollsumma kontrollfil" #. translator: %s is a variable name and %d is its value -#: access/transam/xlog.c:4430 access/transam/xlog.c:4440 -#: access/transam/xlog.c:4456 access/transam/xlog.c:4466 -#: access/transam/xlog.c:4476 access/transam/xlog.c:4486 -#: access/transam/xlog.c:4496 access/transam/xlog.c:4506 -#: access/transam/xlog.c:4516 +#: access/transam/xlog.c:4429 access/transam/xlog.c:4439 +#: access/transam/xlog.c:4455 access/transam/xlog.c:4465 +#: access/transam/xlog.c:4475 access/transam/xlog.c:4485 +#: access/transam/xlog.c:4495 access/transam/xlog.c:4505 +#: access/transam/xlog.c:4515 #, c-format msgid "The database cluster was initialized with %s %d, but the server was compiled with %s %d." msgstr "Databasklustret initierades med %s %d, men servern kompilerades med %s %d." -#: access/transam/xlog.c:4449 +#: access/transam/xlog.c:4448 #, c-format msgid "The database cluster appears to use a different floating-point number format than the server executable." msgstr "Databasklustret verkar använda en annan flyttalsrepresentation än vad serverprogrammet gör." -#: access/transam/xlog.c:4460 access/transam/xlog.c:4470 -#: access/transam/xlog.c:4480 access/transam/xlog.c:4490 -#: access/transam/xlog.c:4500 access/transam/xlog.c:4510 -#: access/transam/xlog.c:4520 access/transam/xlog.c:4529 -#: access/transam/xlog.c:4537 +#: access/transam/xlog.c:4459 access/transam/xlog.c:4469 +#: access/transam/xlog.c:4479 access/transam/xlog.c:4489 +#: access/transam/xlog.c:4499 access/transam/xlog.c:4509 +#: access/transam/xlog.c:4519 access/transam/xlog.c:4528 +#: access/transam/xlog.c:4536 #, c-format msgid "It looks like you need to recompile or initdb." msgstr "Det verkar som om du måste kompilera om eller köra initdb." -#: access/transam/xlog.c:4527 +#: access/transam/xlog.c:4526 #, c-format msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL." msgstr "Databasklustret initierades utan USE_FLOAT8_BYVAL, men servern kompilerades med USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4535 +#: access/transam/xlog.c:4534 #, c-format msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL." msgstr "Databasklustret initierades med USE_FLOAT8_BYVAL, men servern kompilerades utan USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4544 +#: access/transam/xlog.c:4543 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -2615,157 +2626,157 @@ msgstr[0] "ogiltigt WAL-segmentstorlek i kontrollfil (%d byte)" msgstr[1] "ogiltigt WAL-segmentstorlek i kontrollfil (%d byte)" #. translator: both %s are GUC names -#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 +#: access/transam/xlog.c:4557 access/transam/xlog.c:4563 #, c-format msgid "\"%s\" must be at least twice \"%s\"" msgstr "\"%s\" måste vara minst dubbla \"%s\"" -#: access/transam/xlog.c:4726 catalog/namespace.c:4696 +#: access/transam/xlog.c:4725 catalog/namespace.c:4699 #: commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 -#: replication/slot.c:2711 tcop/postgres.c:3626 utils/error/elog.c:2257 +#: replication/slot.c:2768 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "List-syntaxen är ogiltig." -#: access/transam/xlog.c:4772 commands/user.c:2547 commands/variable.c:173 +#: access/transam/xlog.c:4771 commands/user.c:2547 commands/variable.c:173 #: tcop/postgres.c:3642 utils/error/elog.c:2283 #, c-format msgid "Unrecognized key word: \"%s\"." msgstr "Okänt nyckelord: \"%s\"" -#: access/transam/xlog.c:5195 +#: access/transam/xlog.c:5194 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "kunde inte skriva bootstrap-write-ahead-loggfil: %m" -#: access/transam/xlog.c:5203 +#: access/transam/xlog.c:5202 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "kunde inte fsync:a bootstrap-write-ahead-loggfil: %m" -#: access/transam/xlog.c:5209 +#: access/transam/xlog.c:5208 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "kunde inte stänga bootstrap-write-ahead-loggfil: %m" -#: access/transam/xlog.c:5434 +#: access/transam/xlog.c:5433 #, c-format msgid "WAL was generated with \"wal_level=minimal\", cannot continue recovering" msgstr "WAL genererades med \"wal_level=minimal\", kan inte fortsätta återställande" -#: access/transam/xlog.c:5435 +#: access/transam/xlog.c:5434 #, c-format msgid "This happens if you temporarily set \"wal_level=minimal\" on the server." msgstr "Detta händer om du temporärt sätter \"wal_level=minimal\" på servern." -#: access/transam/xlog.c:5436 +#: access/transam/xlog.c:5435 #, c-format msgid "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." msgstr "Använd en backup som är tagen efter att inställningen \"wal_level\" satts till ett högre värde än \"minimal\"." -#: access/transam/xlog.c:5501 +#: access/transam/xlog.c:5500 #, c-format msgid "control file contains invalid checkpoint location" msgstr "kontrollfil innehåller ogiltig checkpoint-position" -#: access/transam/xlog.c:5512 +#: access/transam/xlog.c:5511 #, c-format msgid "database system was shut down at %s" msgstr "databassystemet stängdes ner vid %s" -#: access/transam/xlog.c:5518 +#: access/transam/xlog.c:5517 #, c-format msgid "database system was shut down in recovery at %s" msgstr "databassystemet stängdes ner under återställning vid %s" -#: access/transam/xlog.c:5524 +#: access/transam/xlog.c:5523 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "nedstängning av databasen avbröts; senast kända upptidpunkt vid %s" -#: access/transam/xlog.c:5530 +#: access/transam/xlog.c:5529 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "databassystemet avbröts under återställning vid %s" -#: access/transam/xlog.c:5532 +#: access/transam/xlog.c:5531 #, c-format msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery." msgstr "Det betyder troligen att en del data är förstörd och du behöver återställa databasen från den senaste backup:en." -#: access/transam/xlog.c:5538 +#: access/transam/xlog.c:5537 #, c-format msgid "database system was interrupted while in recovery at log time %s" msgstr "databassystemet avbröts under återställning vid loggtid %s" -#: access/transam/xlog.c:5540 +#: access/transam/xlog.c:5539 #, 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 "Om detta har hänt mer än en gång så kan data vara korrupt och du kanske måste återställa till ett tidigare återställningsmål." -#: access/transam/xlog.c:5546 +#: access/transam/xlog.c:5545 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "databassystemet avbröts; senast kända upptidpunkt vid %s" -#: access/transam/xlog.c:5553 +#: access/transam/xlog.c:5552 #, c-format msgid "control file contains invalid database cluster state" msgstr "kontrollfil innehåller ogiltigt databasklustertillstånd" -#: access/transam/xlog.c:5941 +#: access/transam/xlog.c:5940 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL slutar före sluttiden av online-backup:en" -#: access/transam/xlog.c:5942 +#: access/transam/xlog.c:5941 #, c-format msgid "All WAL generated while online backup was taken must be available at recovery." msgstr "Alla genererade WAL under tiden online-backup:en togs måste vara tillgängliga vid återställning." -#: access/transam/xlog.c:5946 +#: access/transam/xlog.c:5945 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL avslutas innan konstistent återställningspunkt" -#: access/transam/xlog.c:5992 +#: access/transam/xlog.c:5991 #, c-format msgid "selected new timeline ID: %u" msgstr "valt nytt tidslinje-ID: %u" -#: access/transam/xlog.c:6025 +#: access/transam/xlog.c:6024 #, c-format msgid "archive recovery complete" msgstr "arkivåterställning klar" -#: access/transam/xlog.c:6654 +#: access/transam/xlog.c:6653 #, c-format msgid "shutting down" msgstr "stänger ner" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6693 +#: access/transam/xlog.c:6692 #, c-format msgid "restartpoint starting:%s%s%s%s%s%s%s%s" msgstr "restartpoint startar:%s%s%s%s%s%s%s%s" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6705 +#: access/transam/xlog.c:6704 #, c-format msgid "checkpoint starting:%s%s%s%s%s%s%s%s" msgstr "checkpoint startar:%s%s%s%s%s%s%s%s" -#: access/transam/xlog.c:6770 +#: access/transam/xlog.c:6769 #, c-format msgid "restartpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" msgstr "restartpoint klar: skrev %d buffers (%.1f%%); skrev %d SLRU buffers; %d WAL-fil(er) tillagda, %d borttagna, %d recyclade; skriv=%ld.%03d s, synk=%ld.%03d s, totalt=%ld.%03d s; synk-filer=%d, längsta=%ld.%03d s, genomsnitt=%ld.%03d s; distans=%d kB, estimat=%d kB; lsn=%X/%X, redo-lsn=%X/%X" -#: access/transam/xlog.c:6794 +#: access/transam/xlog.c:6793 #, c-format msgid "checkpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" msgstr "checkpoint klar: skrev %d buffers (%.1f%%); skrev %d SLRU buffers; %d WAL-fil(er) tillagda, %d borttagna, %d recyclade; skriv=%ld.%03d s, synk=%ld.%03d s, totalt=%ld.%03d s; synk-filer=%d, längsta=%ld.%03d s, genomsnitt=%ld.%03d s; distans=%d kB, estimat=%d kB; lsn=%X/%X, redo-lsn=%X/%X" -#: access/transam/xlog.c:7280 +#: access/transam/xlog.c:7279 #, c-format msgid "concurrent write-ahead log activity while database system is shutting down" msgstr "samtidig write-ahead-logg-aktivitet när databassystemet stängs ner" @@ -3193,17 +3204,17 @@ msgstr "kunde inte återställa avbild vid %X/%X, komprimerad med okänd metod, msgid "could not decompress image at %X/%X, block %d" msgstr "kunde inte packa upp avbild vid %X/%X, block %d" -#: access/transam/xlogrecovery.c:623 +#: access/transam/xlogrecovery.c:624 #, c-format msgid "starting backup recovery with redo LSN %X/%X, checkpoint LSN %X/%X, on timeline ID %u" msgstr "startar backupåterställning med redo LSN %X/%X, checkpoint LSN %X/%X, på tidslinje ID %u" -#: access/transam/xlogrecovery.c:655 +#: access/transam/xlogrecovery.c:656 #, c-format msgid "could not find redo location %X/%X referenced by checkpoint record at %X/%X" msgstr "kunde inte hitta redo-position %X/%X refererad av checkpoint-post vid %X/%X" -#: access/transam/xlogrecovery.c:657 access/transam/xlogrecovery.c:668 +#: access/transam/xlogrecovery.c:658 access/transam/xlogrecovery.c:669 #, c-format msgid "" "If you are restoring from a backup, touch \"%s/recovery.signal\" or \"%s/standby.signal\" and add required recovery options.\n" @@ -3215,457 +3226,478 @@ msgstr "" "bort filen \"%s/backup_label\". Var försiktig: borttagning av \"%s/backup_label\"\n" "kommer resultera i ett trasigt kluster om du återställer från en backup." -#: access/transam/xlogrecovery.c:666 +#: access/transam/xlogrecovery.c:667 #, c-format msgid "could not locate required checkpoint record at %X/%X" msgstr "kunde inte hitta den checkpoint-post som krävs vid %X/%X" -#: access/transam/xlogrecovery.c:696 commands/tablespace.c:664 +#: access/transam/xlogrecovery.c:697 commands/tablespace.c:664 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "kan inte skapa symbolisk länk \"%s\": %m" -#: access/transam/xlogrecovery.c:729 access/transam/xlogrecovery.c:735 +#: access/transam/xlogrecovery.c:730 access/transam/xlogrecovery.c:736 #, c-format msgid "ignoring file \"%s\" because no file \"%s\" exists" msgstr "hoppar över fil \"%s\" då ingen fil \"%s\" finns" -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:732 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "Filen \"%s\" döptes om till \"%s\"." -#: access/transam/xlogrecovery.c:737 +#: access/transam/xlogrecovery.c:738 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "Kunde inte döpa om fil \"%s\" till \"%s\": %m" -#: access/transam/xlogrecovery.c:776 +#: access/transam/xlogrecovery.c:777 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "startar om backupåterställning med redo LSN %X/%X" -#: access/transam/xlogrecovery.c:801 +#: access/transam/xlogrecovery.c:802 #, c-format msgid "could not locate a valid checkpoint record at %X/%X" msgstr "kunde inte hitta en giltig checkpoint-post vid %X/%X" -#: access/transam/xlogrecovery.c:812 +#: access/transam/xlogrecovery.c:814 +#, c-format +msgid "could not find redo location %X/%08X referenced by checkpoint record at %X/%08X" +msgstr "kunde inte hitta redo-position %X/%08X refererad av checkpoint-post vid %X/%08X" + +#: access/transam/xlogrecovery.c:823 #, c-format msgid "entering standby mode" msgstr "går in i standby-läge" -#: access/transam/xlogrecovery.c:815 +#: access/transam/xlogrecovery.c:826 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "startar point-in-time-återställning till XID %u" -#: access/transam/xlogrecovery.c:819 +#: access/transam/xlogrecovery.c:830 #, c-format msgid "starting point-in-time recovery to %s" msgstr "startar point-in-time-återställning till %s" -#: access/transam/xlogrecovery.c:823 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "startar point-in-time-återställning till \"%s\"" -#: access/transam/xlogrecovery.c:827 +#: access/transam/xlogrecovery.c:838 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "startar point-in-time-återställning till WAL-position (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:831 +#: access/transam/xlogrecovery.c:842 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "startar point-in-time-återställning till tidigast konsistenta punkt" -#: access/transam/xlogrecovery.c:834 +#: access/transam/xlogrecovery.c:845 #, c-format msgid "starting archive recovery" msgstr "Startar arkivåterställning" -#: access/transam/xlogrecovery.c:855 +#: access/transam/xlogrecovery.c:866 #, c-format msgid "requested timeline %u is not a child of this server's history" msgstr "efterfrågad tidslinje %u är inte ett barn till denna servers historik" #. translator: %s is a backup_label file or a pg_control file -#: access/transam/xlogrecovery.c:858 +#: access/transam/xlogrecovery.c:869 #, c-format msgid "Latest checkpoint in file \"%s\" 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 "Senaste checkpoint i fil \"%s\" är vid %X/%X på tidslinje %u, men i historiken för efterfrågad tidslinje så avvek servern från den tidslinjen vid %X/%X." -#: access/transam/xlogrecovery.c:873 +#: access/transam/xlogrecovery.c:884 #, c-format msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u" msgstr "efterfågan tidslinje %u innehåller inte minimal återställningspunkt %X/%X på tidslinje %u" -#: access/transam/xlogrecovery.c:901 +#: access/transam/xlogrecovery.c:912 #, c-format msgid "invalid next transaction ID" msgstr "nästa transaktions-ID ogiltig" -#: access/transam/xlogrecovery.c:906 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo in checkpoint record" msgstr "ogiltig redo i checkpoint-post" -#: access/transam/xlogrecovery.c:917 +#: access/transam/xlogrecovery.c:928 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "ogiltig redo-post i nedstängnings-checkpoint" -#: access/transam/xlogrecovery.c:946 +#: access/transam/xlogrecovery.c:957 #, c-format msgid "database system was not properly shut down; automatic recovery in progress" msgstr "databassystemet stängdes inte ned korrekt; automatisk återställning pågår" -#: access/transam/xlogrecovery.c:950 +#: access/transam/xlogrecovery.c:961 #, c-format msgid "crash recovery starts in timeline %u and has target timeline %u" msgstr "krashåterställning startar i tidslinje %u och har måltidslinje %u" -#: access/transam/xlogrecovery.c:993 +#: access/transam/xlogrecovery.c:1004 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_label innehåller data som inte stämmer med kontrollfil" -#: access/transam/xlogrecovery.c:994 +#: access/transam/xlogrecovery.c:1005 #, c-format msgid "This means that the backup is corrupted and you will have to use another backup for recovery." msgstr "Det betyder att backup:en är trasig och du behöver använda en annan backup för att återställa." -#: access/transam/xlogrecovery.c:1048 +#: access/transam/xlogrecovery.c:1059 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "använda återställningskommandofil \"%s\" stöds inte" -#: access/transam/xlogrecovery.c:1113 +#: access/transam/xlogrecovery.c:1124 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "standby-läge stöd inte av enanvändarservrar" -#: access/transam/xlogrecovery.c:1130 +#: access/transam/xlogrecovery.c:1141 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "angav varken \"primary_conninfo\" eller \"restore_command\"" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1142 #, c-format msgid "The database server will regularly poll the pg_wal subdirectory to check for files placed there." msgstr "Databasservern kommer med jämna mellanrum att poll:a pg_wal-underkatalogen för att se om filer placerats där." -#: access/transam/xlogrecovery.c:1139 +#: access/transam/xlogrecovery.c:1150 #, c-format msgid "must specify \"restore_command\" when standby mode is not enabled" msgstr "måste ange \"restore_command\" när standby-läge inte är påslaget" -#: access/transam/xlogrecovery.c:1177 +#: access/transam/xlogrecovery.c:1188 #, c-format msgid "recovery target timeline %u does not exist" msgstr "återställningsmåltidslinje %u finns inte" -#: access/transam/xlogrecovery.c:1260 access/transam/xlogrecovery.c:1267 -#: access/transam/xlogrecovery.c:1326 access/transam/xlogrecovery.c:1414 -#: access/transam/xlogrecovery.c:1423 access/transam/xlogrecovery.c:1443 +#: access/transam/xlogrecovery.c:1271 access/transam/xlogrecovery.c:1278 +#: access/transam/xlogrecovery.c:1337 access/transam/xlogrecovery.c:1425 +#: access/transam/xlogrecovery.c:1434 access/transam/xlogrecovery.c:1454 #, c-format msgid "invalid data in file \"%s\"" msgstr "felaktig data i fil \"%s\"" -#: access/transam/xlogrecovery.c:1327 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "Parsad tidslinje-ID är %u men förväntade sig %u." -#: access/transam/xlogrecovery.c:1338 +#: access/transam/xlogrecovery.c:1349 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "detta är en inkrementell backup, inte en datakatalog" -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1350 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "Använd pg_combinebackup för att återskapa en giltig datakatalog." -#: access/transam/xlogrecovery.c:1725 +#: access/transam/xlogrecovery.c:1736 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "oväntad typ på post hittad vid redo-punkt %X/%X" -#: access/transam/xlogrecovery.c:1748 +#: access/transam/xlogrecovery.c:1759 #, c-format msgid "redo starts at %X/%X" msgstr "redo startar vid %X/%X" -#: access/transam/xlogrecovery.c:1761 +#: access/transam/xlogrecovery.c:1772 #, c-format msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X" msgstr "redo pågår, förbrukad tid: %ld.%02d s, nuvarande LSN: %X/%X" -#: access/transam/xlogrecovery.c:1851 +#: access/transam/xlogrecovery.c:1862 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "efterfrågad återställningsstoppunkt är före en konsistent återställningspunkt" -#: access/transam/xlogrecovery.c:1883 +#: access/transam/xlogrecovery.c:1894 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "redo gjord vid %X/%X systemanvändning: %s" -#: access/transam/xlogrecovery.c:1889 +#: access/transam/xlogrecovery.c:1900 #, c-format msgid "last completed transaction was at log time %s" msgstr "senaste kompletta transaktionen var vid loggtid %s" -#: access/transam/xlogrecovery.c:1898 +#: access/transam/xlogrecovery.c:1909 #, c-format msgid "redo is not required" msgstr "redo behövs inte" -#: access/transam/xlogrecovery.c:1910 +#: access/transam/xlogrecovery.c:1921 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "återställning avslutades innan det konfigurerade återställningsmålet nåddes" -#: access/transam/xlogrecovery.c:2104 +#: access/transam/xlogrecovery.c:2115 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "lyckades hoppa över saknad contrecord vid %X/%X, överskriven vid %s" -#: access/transam/xlogrecovery.c:2171 +#: access/transam/xlogrecovery.c:2182 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "Oväntat katalogpost \"%s\" hittades i %s" -#: access/transam/xlogrecovery.c:2173 +#: access/transam/xlogrecovery.c:2184 #, c-format msgid "All directory entries in %s/ should be symbolic links." msgstr "Alla katalogposter i %s/ skall vara symboliska länkar" -#: access/transam/xlogrecovery.c:2175 +#: access/transam/xlogrecovery.c:2186 #, c-format msgid "Remove those directories, or set \"allow_in_place_tablespaces\" to ON transiently to let recovery complete." msgstr "Ta bort dessa kataloger eller sätt \"allow_in_place_tablespaces\" temporärt till ON och låt återställningen gå klart." -#: access/transam/xlogrecovery.c:2227 +#: access/transam/xlogrecovery.c:2238 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "slutförde backupåterställning vid redo-LSN %X/%X och slut-LSN %X/%X" -#: access/transam/xlogrecovery.c:2258 +#: access/transam/xlogrecovery.c:2269 #, c-format msgid "consistent recovery state reached at %X/%X" msgstr "konsistent återställningstillstånd uppnått vid %X/%X" #. translator: %s is a WAL record description -#: access/transam/xlogrecovery.c:2296 +#: access/transam/xlogrecovery.c:2307 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "WAL-redo vid %X/%X för %s" -#: access/transam/xlogrecovery.c:2394 +#: access/transam/xlogrecovery.c:2405 #, c-format msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record" msgstr "oväntad föregående tidslinje-ID %u (nuvarande tidslinje-ID %u) i checkpoint-post" -#: access/transam/xlogrecovery.c:2403 +#: access/transam/xlogrecovery.c:2414 #, c-format msgid "unexpected timeline ID %u (after %u) in checkpoint record" msgstr "oväntad tidslinje-ID %u (efter %u) i checkpoint-post" -#: access/transam/xlogrecovery.c:2419 +#: access/transam/xlogrecovery.c:2430 #, c-format msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u" msgstr "oväntad tidslinje-ID %u i checkpoint-post, innan vi nått minimal återställningspunkt %X/%X på tidslinje %u" -#: access/transam/xlogrecovery.c:2603 access/transam/xlogrecovery.c:2879 +#: access/transam/xlogrecovery.c:2614 access/transam/xlogrecovery.c:2890 #, c-format msgid "recovery stopping after reaching consistency" msgstr "återställning stoppad efter att ha uppnått konsistens" -#: access/transam/xlogrecovery.c:2624 +#: access/transam/xlogrecovery.c:2635 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "återställning stoppad före WAL-position (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2714 +#: access/transam/xlogrecovery.c:2725 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "återställning stoppad före commit av transaktion %u, tid %s" -#: access/transam/xlogrecovery.c:2721 +#: access/transam/xlogrecovery.c:2732 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "återställning stoppad före abort av transaktion %u, tid %s" -#: access/transam/xlogrecovery.c:2774 +#: access/transam/xlogrecovery.c:2785 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "återställning stoppad vid återställningspunkt \"%s\", tid %s" -#: access/transam/xlogrecovery.c:2792 +#: access/transam/xlogrecovery.c:2803 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "återställning stoppad efter WAL-position (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2859 +#: access/transam/xlogrecovery.c:2870 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "återställning stoppad efter commit av transaktion %u, tid %s" -#: access/transam/xlogrecovery.c:2867 +#: access/transam/xlogrecovery.c:2878 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "återställning stoppad efter abort av transaktion %u, tid %s" -#: access/transam/xlogrecovery.c:2948 +#: access/transam/xlogrecovery.c:2959 #, c-format msgid "pausing at the end of recovery" msgstr "pausar vid slutet av återställning" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2960 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Kör pg_wal_replay_resume() för att befordra." -#: access/transam/xlogrecovery.c:2952 access/transam/xlogrecovery.c:4698 +#: access/transam/xlogrecovery.c:2963 access/transam/xlogrecovery.c:4720 #, c-format msgid "recovery has paused" msgstr "återställning har pausats" -#: access/transam/xlogrecovery.c:2953 +#: access/transam/xlogrecovery.c:2964 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Kör pg_wal_replay_resume() för att fortsätta." -#: access/transam/xlogrecovery.c:3216 +#: access/transam/xlogrecovery.c:3227 #, c-format msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u" msgstr "oväntad tidslinje-ID %u i WAL-segment %s, LSN %X/%X, offset %u" -#: access/transam/xlogrecovery.c:3432 +#: access/transam/xlogrecovery.c:3443 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m" msgstr "kunde inte läsa från WAL-segment %s, LSN %X/%X, offset %u: %m" -#: access/transam/xlogrecovery.c:3439 +#: access/transam/xlogrecovery.c:3450 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" msgstr "kunde inte läsa från WAL-segment %s, LSN %X/%X, offset %u, läste %d av %zu" -#: access/transam/xlogrecovery.c:4082 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint location" msgstr "ogiltig checkpoint-position" -#: access/transam/xlogrecovery.c:4092 +#: access/transam/xlogrecovery.c:4114 #, c-format msgid "invalid checkpoint record" msgstr "ogiltig checkpoint-post" -#: access/transam/xlogrecovery.c:4098 +#: access/transam/xlogrecovery.c:4120 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "ogiltig resurshanterar-ID i checkpoint-post" -#: access/transam/xlogrecovery.c:4106 +#: access/transam/xlogrecovery.c:4128 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "ogiltig xl_info i checkpoint-post" -#: access/transam/xlogrecovery.c:4112 +#: access/transam/xlogrecovery.c:4134 #, c-format msgid "invalid length of checkpoint record" msgstr "ogiltig längd på checkpoint-post" -#: access/transam/xlogrecovery.c:4166 +#: access/transam/xlogrecovery.c:4188 #, c-format msgid "new timeline %u is not a child of database system timeline %u" msgstr "ny tidslinje %u är inte ett barn till databasens systemtidslinje %u" -#: access/transam/xlogrecovery.c:4180 +#: access/transam/xlogrecovery.c:4202 #, c-format msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X" msgstr "ny tidslinje %u skapad från aktuella databasens systemtidslinje %u innan nuvarande återställningspunkt %X/%X" -#: access/transam/xlogrecovery.c:4199 +#: access/transam/xlogrecovery.c:4221 #, c-format msgid "new target timeline is %u" msgstr "ny måltidslinje är %u" -#: access/transam/xlogrecovery.c:4400 +#: access/transam/xlogrecovery.c:4422 #, c-format msgid "WAL receiver process shutdown requested" msgstr "nedstängning av WAL-mottagarprocess efterfrågad" -#: access/transam/xlogrecovery.c:4460 +#: access/transam/xlogrecovery.c:4482 #, c-format msgid "received promote request" msgstr "tog emot förfrågan om befordran" -#: access/transam/xlogrecovery.c:4689 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "hot standby is not possible because of insufficient parameter settings" msgstr "hot standby är inte möjligt på grund av otillräckliga parameterinställningar" -#: access/transam/xlogrecovery.c:4690 access/transam/xlogrecovery.c:4717 -#: access/transam/xlogrecovery.c:4747 +#: access/transam/xlogrecovery.c:4712 access/transam/xlogrecovery.c:4739 +#: access/transam/xlogrecovery.c:4769 #, c-format msgid "%s = %d is a lower setting than on the primary server, where its value was %d." msgstr "%s = %d har ett lägre värde än på primärservern där värdet var %d." -#: access/transam/xlogrecovery.c:4699 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "Om återställning avpausas så kommer servern stänga ner." -#: access/transam/xlogrecovery.c:4700 +#: access/transam/xlogrecovery.c:4722 #, c-format msgid "You can then restart the server after making the necessary configuration changes." msgstr "Du kan då återstarta servern efter att ha gjort de nödvändiga konfigurationsändringarna." -#: access/transam/xlogrecovery.c:4711 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "befordran är inte möjligt på grund av otillräckliga parameterinställningar" -#: access/transam/xlogrecovery.c:4721 +#: access/transam/xlogrecovery.c:4743 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "Starta om servern efter att ha gjort de nödvändiga konfigurationsändringarna." -#: access/transam/xlogrecovery.c:4745 +#: access/transam/xlogrecovery.c:4767 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "återställning avbruten på grund av otillräckliga parametervärden" -#: access/transam/xlogrecovery.c:4751 +#: access/transam/xlogrecovery.c:4773 #, c-format msgid "You can restart the server after making the necessary configuration changes." msgstr "Du kan starta om servern efter att du gjort de nödvändiga konfigurationsändringarna." -#: access/transam/xlogrecovery.c:4792 +#: access/transam/xlogrecovery.c:4793 access/transam/xlogrecovery.c:4795 +#: catalog/dependency.c:1153 catalog/dependency.c:1160 +#: catalog/dependency.c:1171 commands/tablecmds.c:1519 +#: commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 +#: commands/vacuum.c:226 commands/view.c:441 executor/execExprInterp.c:5211 +#: executor/execExprInterp.c:5219 libpq/auth.c:320 +#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1705 +#: replication/slot.c:2783 replication/slot.c:2785 replication/syncrep.c:1079 +#: storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 +#: storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 +#: utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 +#: utils/misc/guc.c:6902 utils/misc/guc.c:6945 utils/misc/guc.c:6987 +#, c-format +msgid "%s" +msgstr "%s" + +#: access/transam/xlogrecovery.c:4825 #, c-format msgid "multiple recovery targets specified" msgstr "multipla återställningsmål angivna" -#: access/transam/xlogrecovery.c:4793 +#: access/transam/xlogrecovery.c:4826 #, c-format msgid "At most one of \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", \"recovery_target_xid\" may be set." msgstr "Som mest en av \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\" och \"recovery_target_xid\" kan sättas." -#: access/transam/xlogrecovery.c:4804 +#: access/transam/xlogrecovery.c:4837 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "Det enda tillåtna värdet är \"immediate\"." -#: access/transam/xlogrecovery.c:4958 +#: access/transam/xlogrecovery.c:4991 #, c-format msgid "Timestamp out of range: \"%s\"." msgstr "Timestamp utanför giltigt intervall: \"%s\"." -#: access/transam/xlogrecovery.c:5003 +#: access/transam/xlogrecovery.c:5036 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "\"recovery_target_timeline\" är inte ett giltigt nummer." @@ -3934,12 +3966,12 @@ msgstr "WAL-summering krävs för tidslinje %u från %X/%X till %X/%X men summer msgid "The first unsummarized LSN in this range is %X/%X." msgstr "Den första icke summerade LSN i detta intervall är %X/%X." -#: backup/basebackup_incremental.c:934 +#: backup/basebackup_incremental.c:948 #, c-format msgid "backup manifest version 1 does not support incremental backup" msgstr "backupmanifest version 1 stöder inte inkrementell backup" -#: backup/basebackup_incremental.c:952 +#: backup/basebackup_incremental.c:966 #, c-format msgid "system identifier in backup manifest is %, but database system identifier is %" msgstr "backup-manifestets systemidentifierare är % men databasens systemidentifierare är %" @@ -3966,7 +3998,7 @@ msgstr "relativ sökväg tillåts inte för backup som sparas på servern" #: backup/basebackup_server.c:102 commands/dbcommands.c:478 #: commands/tablespace.c:157 commands/tablespace.c:173 -#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2233 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2287 #: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" @@ -3985,7 +4017,7 @@ msgstr "kunde inte komma åt katalog \"%s\": %m" #: backup/basebackup_server.c:175 backup/basebackup_server.c:182 #: backup/basebackup_server.c:268 backup/basebackup_server.c:275 #: backup/walsummary.c:312 storage/smgr/md.c:519 storage/smgr/md.c:526 -#: storage/smgr/md.c:608 storage/smgr/md.c:630 storage/smgr/md.c:1123 +#: storage/smgr/md.c:619 storage/smgr/md.c:641 storage/smgr/md.c:1134 #, c-format msgid "Check free disk space." msgstr "Kontrollera ledigt diskutrymme." @@ -4192,475 +4224,470 @@ msgstr "standardrättigheter kan inte sättas för kolumner" msgid "permission denied to change default privileges" msgstr "rättighet saknas för att ändra standardrättigheter" -#: catalog/aclchk.c:1211 +#: catalog/aclchk.c:1211 catalog/aclchk.c:1222 #, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgstr "kan inte använda IN SCHEMA-klausul samtidigt som GRANT/REVOKE ON SCHEMAS" +msgid "cannot use IN SCHEMA clause when using %s" +msgstr "kan inte använda IN SCHEMA-klausul samtidigt som %s" -#: catalog/aclchk.c:1221 -#, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" -msgstr "kan inte använda IN SCHEMA-klausul samtidigt som GRANT/REVOKE ON LARGE OBJECTS" - -#: catalog/aclchk.c:1575 catalog/catalog.c:684 catalog/heap.c:2621 -#: catalog/heap.c:2940 catalog/objectaddress.c:1528 -#: catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1000 +#: catalog/aclchk.c:1577 catalog/catalog.c:684 catalog/heap.c:2621 +#: catalog/heap.c:2941 catalog/objectaddress.c:1528 +#: catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1039 #: commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 #: commands/tablecmds.c:8130 commands/tablecmds.c:8259 -#: commands/tablecmds.c:8388 commands/tablecmds.c:8482 -#: commands/tablecmds.c:8585 commands/tablecmds.c:8751 -#: commands/tablecmds.c:8781 commands/tablecmds.c:8936 -#: commands/tablecmds.c:9039 commands/tablecmds.c:9173 -#: commands/tablecmds.c:9286 commands/tablecmds.c:14372 -#: commands/tablecmds.c:14575 commands/tablecmds.c:14736 -#: commands/tablecmds.c:15964 commands/tablecmds.c:18731 commands/trigger.c:948 +#: commands/tablecmds.c:8413 commands/tablecmds.c:8507 +#: commands/tablecmds.c:8610 commands/tablecmds.c:8776 +#: commands/tablecmds.c:8806 commands/tablecmds.c:8961 +#: commands/tablecmds.c:9064 commands/tablecmds.c:9198 +#: commands/tablecmds.c:9311 commands/tablecmds.c:14397 +#: commands/tablecmds.c:14600 commands/tablecmds.c:14761 +#: commands/tablecmds.c:15989 commands/tablecmds.c:18756 commands/trigger.c:948 #: parser/analyze.c:2575 parser/parse_relation.c:749 parser/parse_target.c:1070 #: parser/parse_type.c:144 parser/parse_utilcmd.c:3662 #: parser/parse_utilcmd.c:3702 parser/parse_utilcmd.c:3744 -#: statistics/attribute_stats.c:209 statistics/attribute_stats.c:951 +#: statistics/attribute_stats.c:212 statistics/attribute_stats.c:955 #: utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "kolumn \"%s\" i relation \"%s\" existerar inte" -#: catalog/aclchk.c:1820 +#: catalog/aclchk.c:1822 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\" är ett index" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 +#: catalog/aclchk.c:1829 commands/tablecmds.c:16146 commands/tablecmds.c:19675 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\" är en composite-typ" -#: catalog/aclchk.c:1835 catalog/objectaddress.c:1368 commands/tablecmds.c:266 -#: commands/tablecmds.c:19614 utils/adt/acl.c:2122 utils/adt/acl.c:2152 +#: catalog/aclchk.c:1837 catalog/objectaddress.c:1368 commands/tablecmds.c:266 +#: commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 #: utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 #: utils/adt/acl.c:2283 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\" är inte en sekvens" -#: catalog/aclchk.c:1873 +#: catalog/aclchk.c:1875 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "sekvensen \"%s\" stöder bara USAGE-, SELECT- och UPDATE-rättigheter" -#: catalog/aclchk.c:1890 +#: catalog/aclchk.c:1892 #, c-format msgid "invalid privilege type %s for table" msgstr "ogiltig rättighetstyp %s för tabell" -#: catalog/aclchk.c:2055 +#: catalog/aclchk.c:2057 #, c-format msgid "invalid privilege type %s for column" msgstr "ogitligt rättighetstyp %s för kolumn" -#: catalog/aclchk.c:2068 +#: catalog/aclchk.c:2070 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "sekvensen \"%s\" stöder bara kolumnrättigheten SELECT" -#: catalog/aclchk.c:2259 +#: catalog/aclchk.c:2261 #, c-format msgid "language \"%s\" is not trusted" msgstr "språket \"%s\" är inte betrott" -#: catalog/aclchk.c:2261 +#: catalog/aclchk.c:2263 #, c-format msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages." msgstr "GRANT och REVOKE är inte tillåtna på icke betrodda språk då bara en superuser kan använda icke betrodda språk." -#: catalog/aclchk.c:2412 +#: catalog/aclchk.c:2414 #, c-format msgid "cannot set privileges of array types" msgstr "kan inte sätta privilegier för array-typer" -#: catalog/aclchk.c:2413 +#: catalog/aclchk.c:2415 #, c-format msgid "Set the privileges of the element type instead." msgstr "Sätt rättigheter för elementtypen istället." -#: catalog/aclchk.c:2417 +#: catalog/aclchk.c:2419 #, c-format msgid "cannot set privileges of multirange types" msgstr "kan inte sätta privilegier för multirange-typer" -#: catalog/aclchk.c:2418 +#: catalog/aclchk.c:2420 #, c-format msgid "Set the privileges of the range type instead." msgstr "Sätt rättigheter för range-typen istället." -#: catalog/aclchk.c:2601 +#: catalog/aclchk.c:2603 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "okänd privilegietyp \"%s\"" -#: catalog/aclchk.c:2668 +#: catalog/aclchk.c:2670 #, c-format msgid "permission denied for aggregate %s" msgstr "rättighet saknas för aggregat %s" -#: catalog/aclchk.c:2671 +#: catalog/aclchk.c:2673 #, c-format msgid "permission denied for collation %s" msgstr "rättighet saknas för jämförelse %s" -#: catalog/aclchk.c:2674 +#: catalog/aclchk.c:2676 #, c-format msgid "permission denied for column %s" msgstr "rättighet saknas för kolumn %s" -#: catalog/aclchk.c:2677 +#: catalog/aclchk.c:2679 #, c-format msgid "permission denied for conversion %s" msgstr "rättighet saknas för konvertering %s" -#: catalog/aclchk.c:2680 +#: catalog/aclchk.c:2682 #, c-format msgid "permission denied for database %s" msgstr "rättighet saknas för databas %s" -#: catalog/aclchk.c:2683 +#: catalog/aclchk.c:2685 #, c-format msgid "permission denied for domain %s" msgstr "rättighet saknas för domän %s" -#: catalog/aclchk.c:2686 +#: catalog/aclchk.c:2688 #, c-format msgid "permission denied for event trigger %s" msgstr "rättighet saknas för händelsetrigger %s" -#: catalog/aclchk.c:2689 +#: catalog/aclchk.c:2691 #, c-format msgid "permission denied for extension %s" msgstr "rättighet saknas för utökning %s" -#: catalog/aclchk.c:2692 +#: catalog/aclchk.c:2694 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "rättighet saknas för främmande data-omvandlare %s" -#: catalog/aclchk.c:2695 +#: catalog/aclchk.c:2697 #, c-format msgid "permission denied for foreign server %s" msgstr "rättighet saknas för främmande server %s" -#: catalog/aclchk.c:2698 +#: catalog/aclchk.c:2700 #, c-format msgid "permission denied for foreign table %s" msgstr "rättighet saknas för främmande tabell %s" -#: catalog/aclchk.c:2701 +#: catalog/aclchk.c:2703 #, c-format msgid "permission denied for function %s" msgstr "rättighet saknas för funktion %s" -#: catalog/aclchk.c:2704 +#: catalog/aclchk.c:2706 #, c-format msgid "permission denied for index %s" msgstr "rättighet saknas för index %s" -#: catalog/aclchk.c:2707 +#: catalog/aclchk.c:2709 #, c-format msgid "permission denied for language %s" msgstr "rättighet saknas för språk %s" -#: catalog/aclchk.c:2710 +#: catalog/aclchk.c:2712 #, c-format msgid "permission denied for large object %s" msgstr "rättighet saknas för stort objekt %s" -#: catalog/aclchk.c:2713 +#: catalog/aclchk.c:2715 #, c-format msgid "permission denied for materialized view %s" msgstr "rättighet saknas för materialiserad vy %s" -#: catalog/aclchk.c:2716 +#: catalog/aclchk.c:2718 #, c-format msgid "permission denied for operator class %s" msgstr "rättighet saknas för operatorklasss %s" -#: catalog/aclchk.c:2719 +#: catalog/aclchk.c:2721 #, c-format msgid "permission denied for operator %s" msgstr "rättighet saknas för operator %s" -#: catalog/aclchk.c:2722 +#: catalog/aclchk.c:2724 #, c-format msgid "permission denied for operator family %s" msgstr "rättighet saknas för operatorfamilj %s" -#: catalog/aclchk.c:2725 +#: catalog/aclchk.c:2727 #, c-format msgid "permission denied for parameter %s" msgstr "rättighet saknas för parametern %s" -#: catalog/aclchk.c:2728 +#: catalog/aclchk.c:2730 #, c-format msgid "permission denied for policy %s" msgstr "rättighet saknas för policy %s" -#: catalog/aclchk.c:2731 +#: catalog/aclchk.c:2733 #, c-format msgid "permission denied for procedure %s" msgstr "rättighet saknas för procedur %s" -#: catalog/aclchk.c:2734 +#: catalog/aclchk.c:2736 #, c-format msgid "permission denied for publication %s" msgstr "rättighet saknas för publicering %s" -#: catalog/aclchk.c:2737 +#: catalog/aclchk.c:2739 #, c-format msgid "permission denied for routine %s" msgstr "rättighet saknas för rutin %s" -#: catalog/aclchk.c:2740 +#: catalog/aclchk.c:2742 #, c-format msgid "permission denied for schema %s" msgstr "rättighet saknas för schema %s" -#: catalog/aclchk.c:2743 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2745 commands/sequence.c:654 commands/sequence.c:880 #: commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 #, c-format msgid "permission denied for sequence %s" msgstr "rättighet saknas för sekvens %s" -#: catalog/aclchk.c:2746 +#: catalog/aclchk.c:2748 #, c-format msgid "permission denied for statistics object %s" msgstr "rättighet saknas för statistikobjekt %s" -#: catalog/aclchk.c:2749 +#: catalog/aclchk.c:2751 #, c-format msgid "permission denied for subscription %s" msgstr "rättighet saknas för prenumeration %s" -#: catalog/aclchk.c:2752 +#: catalog/aclchk.c:2754 #, c-format msgid "permission denied for table %s" msgstr "rättighet saknas för tabell %s" -#: catalog/aclchk.c:2755 +#: catalog/aclchk.c:2757 #, c-format msgid "permission denied for tablespace %s" msgstr "rättighet saknas för tabellutrymme %s" -#: catalog/aclchk.c:2758 +#: catalog/aclchk.c:2760 #, c-format msgid "permission denied for text search configuration %s" msgstr "rättighet saknas för textsökkonfigurering %s" -#: catalog/aclchk.c:2761 +#: catalog/aclchk.c:2763 #, c-format msgid "permission denied for text search dictionary %s" msgstr "rättighet saknas för textsökordlista %s" -#: catalog/aclchk.c:2764 +#: catalog/aclchk.c:2766 #, c-format msgid "permission denied for type %s" msgstr "rättighet saknas för typ %s" -#: catalog/aclchk.c:2767 +#: catalog/aclchk.c:2769 #, c-format msgid "permission denied for view %s" msgstr "rättighet saknas för vy %s" -#: catalog/aclchk.c:2803 +#: catalog/aclchk.c:2805 #, c-format msgid "must be owner of aggregate %s" msgstr "måste vara ägaren till aggregatet %s" -#: catalog/aclchk.c:2806 +#: catalog/aclchk.c:2808 #, c-format msgid "must be owner of collation %s" msgstr "måste vara ägaren till jämförelsen %s" -#: catalog/aclchk.c:2809 +#: catalog/aclchk.c:2811 #, c-format msgid "must be owner of conversion %s" msgstr "måste vara ägaren till konverteringen %s" -#: catalog/aclchk.c:2812 +#: catalog/aclchk.c:2814 #, c-format msgid "must be owner of database %s" msgstr "måste vara ägaren till databasen %s" -#: catalog/aclchk.c:2815 +#: catalog/aclchk.c:2817 #, c-format msgid "must be owner of domain %s" msgstr "måste vara ägaren av domänen %s" -#: catalog/aclchk.c:2818 +#: catalog/aclchk.c:2820 #, c-format msgid "must be owner of event trigger %s" msgstr "måste vara ägaren till händelsetrigger %s" -#: catalog/aclchk.c:2821 +#: catalog/aclchk.c:2823 #, c-format msgid "must be owner of extension %s" msgstr "måste vara ägaren till utökningen %s" -#: catalog/aclchk.c:2824 +#: catalog/aclchk.c:2826 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "måste vara ägaren till främmande data-omvandlaren %s" -#: catalog/aclchk.c:2827 +#: catalog/aclchk.c:2829 #, c-format msgid "must be owner of foreign server %s" msgstr "måste vara ägaren till främmande servern %s" -#: catalog/aclchk.c:2830 +#: catalog/aclchk.c:2832 #, c-format msgid "must be owner of foreign table %s" msgstr "måste vara ägaren till främmande tabellen %s" -#: catalog/aclchk.c:2833 +#: catalog/aclchk.c:2835 #, c-format msgid "must be owner of function %s" msgstr "måste vara ägaren till funktionen %s" -#: catalog/aclchk.c:2836 +#: catalog/aclchk.c:2838 #, c-format msgid "must be owner of index %s" msgstr "måste vara ägaren till indexet %s" -#: catalog/aclchk.c:2839 +#: catalog/aclchk.c:2841 #, c-format msgid "must be owner of language %s" msgstr "måste vara ägaren till språket %s" -#: catalog/aclchk.c:2842 +#: catalog/aclchk.c:2844 #, c-format msgid "must be owner of large object %s" msgstr "måste vara ägaren till stora objektet %s" -#: catalog/aclchk.c:2845 +#: catalog/aclchk.c:2847 #, c-format msgid "must be owner of materialized view %s" msgstr "måste vara ägaren till den materialiserade vyn %s" -#: catalog/aclchk.c:2848 +#: catalog/aclchk.c:2850 #, c-format msgid "must be owner of operator class %s" msgstr "måste vara ägaren till operatorklassen %s" -#: catalog/aclchk.c:2851 +#: catalog/aclchk.c:2853 #, c-format msgid "must be owner of operator %s" msgstr "måste vara ägaren till operatorn %s" -#: catalog/aclchk.c:2854 +#: catalog/aclchk.c:2856 #, c-format msgid "must be owner of operator family %s" msgstr "måste vara ägaren till operatorfamiljen %s" -#: catalog/aclchk.c:2857 +#: catalog/aclchk.c:2859 #, c-format msgid "must be owner of procedure %s" msgstr "måste vara ägaren till proceduren %s" -#: catalog/aclchk.c:2860 +#: catalog/aclchk.c:2862 #, c-format msgid "must be owner of publication %s" msgstr "måste vara ägaren till publiceringen %s" -#: catalog/aclchk.c:2863 +#: catalog/aclchk.c:2865 #, c-format msgid "must be owner of routine %s" msgstr "måste vara ägaren till rutinen %s" -#: catalog/aclchk.c:2866 +#: catalog/aclchk.c:2868 #, c-format msgid "must be owner of sequence %s" msgstr "måste vara ägaren till sekvensen %s" -#: catalog/aclchk.c:2869 +#: catalog/aclchk.c:2871 #, c-format msgid "must be owner of subscription %s" msgstr "måste vara ägaren till prenumerationen %s" -#: catalog/aclchk.c:2872 +#: catalog/aclchk.c:2874 #, c-format msgid "must be owner of table %s" msgstr "måste vara ägaren till tabellen %s" -#: catalog/aclchk.c:2875 +#: catalog/aclchk.c:2877 #, c-format msgid "must be owner of type %s" msgstr "måste vara ägaren till typen %s" -#: catalog/aclchk.c:2878 +#: catalog/aclchk.c:2880 #, c-format msgid "must be owner of view %s" msgstr "måste vara ägaren till vyn %s" -#: catalog/aclchk.c:2881 +#: catalog/aclchk.c:2883 #, c-format msgid "must be owner of schema %s" msgstr "måste vara ägaren till schemat %s" -#: catalog/aclchk.c:2884 +#: catalog/aclchk.c:2886 #, c-format msgid "must be owner of statistics object %s" msgstr "måste vara ägaren till statistikobjektet %s" -#: catalog/aclchk.c:2887 +#: catalog/aclchk.c:2889 #, c-format msgid "must be owner of tablespace %s" msgstr "måste vara ägaren till tabellutrymmet %s" -#: catalog/aclchk.c:2890 +#: catalog/aclchk.c:2892 #, c-format msgid "must be owner of text search configuration %s" msgstr "måste vara ägaren till textsökkonfigurationen %s" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2895 #, c-format msgid "must be owner of text search dictionary %s" msgstr "måste vara ägaren till textsökordlistan %s" -#: catalog/aclchk.c:2907 +#: catalog/aclchk.c:2909 #, c-format msgid "must be owner of relation %s" msgstr "måste vara ägaren till relationen %s" -#: catalog/aclchk.c:2953 +#: catalog/aclchk.c:2955 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "rättighet saknas för kolumn \"%s\" i relation \"%s\"" -#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 +#: catalog/aclchk.c:3189 catalog/aclchk.c:3208 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "attribut %d i relation med OID %u existerar inte" -#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 +#: catalog/aclchk.c:3246 catalog/aclchk.c:3309 catalog/aclchk.c:3948 #, c-format msgid "relation with OID %u does not exist" msgstr "relation med OID %u existerar inte" -#: catalog/aclchk.c:3492 +#: catalog/aclchk.c:3494 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "parameter ACL med OID %u existerar inte" -#: catalog/aclchk.c:3571 catalog/objectaddress.c:1055 +#: catalog/aclchk.c:3573 catalog/objectaddress.c:1055 #: catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 #: storage/large_object/inv_api.c:247 #, c-format msgid "large object %u does not exist" msgstr "stort objekt %u existerar inte" -#: catalog/aclchk.c:3665 commands/collationcmds.c:849 -#: commands/publicationcmds.c:1846 +#: catalog/aclchk.c:3667 commands/collationcmds.c:849 +#: commands/publicationcmds.c:1851 #, c-format msgid "schema with OID %u does not exist" msgstr "schema med OID %u existerar inte" -#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 +#: catalog/aclchk.c:3741 catalog/aclchk.c:3768 catalog/aclchk.c:3797 #: utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" @@ -4755,21 +4782,6 @@ msgstr[1] "" msgid "cannot drop %s because other objects depend on it" msgstr "kan inte ta bort %s eftersom andra objekt beror på den" -#: catalog/dependency.c:1153 catalog/dependency.c:1160 -#: catalog/dependency.c:1171 commands/tablecmds.c:1519 -#: commands/tablecmds.c:16715 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:225 commands/view.c:441 executor/execExprInterp.c:5211 -#: executor/execExprInterp.c:5219 libpq/auth.c:320 -#: replication/logical/applyparallelworker.c:1041 replication/slot.c:1635 -#: replication/syncrep.c:1079 storage/aio/method_io_uring.c:389 -#: storage/lmgr/deadlock.c:1137 storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 -#: utils/misc/guc.c:3207 utils/misc/guc.c:3282 utils/misc/guc.c:6834 -#: utils/misc/guc.c:6868 utils/misc/guc.c:6902 utils/misc/guc.c:6945 -#: utils/misc/guc.c:6987 -#, c-format -msgid "%s" -msgstr "%s" - #: catalog/dependency.c:1154 catalog/dependency.c:1161 #, c-format msgid "Use DROP ... CASCADE to drop the dependent objects too." @@ -4798,8 +4810,8 @@ msgid "transition table \"%s\" cannot be referenced in a persistent object" msgstr "övergångstabell \"%s\" kan inte refereras från ett permanent objekt" #: catalog/dependency.c:2390 parser/parse_relation.c:3513 -#: parser/parse_relation.c:3523 statistics/attribute_stats.c:221 -#: statistics/attribute_stats.c:593 statistics/attribute_stats.c:601 +#: parser/parse_relation.c:3523 statistics/attribute_stats.c:224 +#: statistics/attribute_stats.c:596 statistics/attribute_stats.c:604 #, c-format msgid "column %d of relation \"%s\" does not exist" msgstr "kolumn %d i relation \"%s\" finns inte" @@ -4856,7 +4868,7 @@ msgstr "composite-typ %s kan inte vara en del av sig själv" msgid "virtual generated column \"%s\" cannot have a user-defined type" msgstr "genererad virtuell kolumn \"%s\" kan inte vara en användardefinierad typ" -#: catalog/heap.c:674 catalog/heap.c:3294 +#: catalog/heap.c:674 catalog/heap.c:3295 #, c-format msgid "Virtual generated columns that make use of user-defined types are not yet supported." msgstr "Genererade virtuella kolumner som använder användardefinierade typer stöds inte än." @@ -4916,148 +4928,148 @@ msgstr "kan inte lägga till NO INHERIT-villkor till partitionerad tabell \"%s\" msgid "check constraint \"%s\" already exists" msgstr "check-villkor \"%s\" finns redan" -#: catalog/heap.c:2626 catalog/heap.c:2946 +#: catalog/heap.c:2626 catalog/heap.c:2947 #, c-format msgid "cannot add not-null constraint on system column \"%s\"" msgstr "kan inte lägga till icke-null-villkor på systemkolumn \"%s\"" -#: catalog/heap.c:2653 catalog/heap.c:2779 catalog/heap.c:3030 -#: catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9796 +#: catalog/heap.c:2654 catalog/heap.c:2780 catalog/heap.c:3031 +#: catalog/index.c:915 catalog/pg_constraint.c:1025 commands/tablecmds.c:9821 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "integritetsvillkor \"%s\" för relation \"%s\" finns redan" -#: catalog/heap.c:2786 +#: catalog/heap.c:2787 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\"" msgstr "villkor \"%s\" står i konflikt med icke-ärvt villkor på relation \"%s\"" -#: catalog/heap.c:2797 +#: catalog/heap.c:2798 #, c-format msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgstr "villkor \"%s\" står i konflikt med ärvt villkor på relation \"%s\"" -#: catalog/heap.c:2807 +#: catalog/heap.c:2808 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\"" msgstr "villkor \"%s\" står i konflikt med NOT VALID-villkor på relation \"%s\"" -#: catalog/heap.c:2819 +#: catalog/heap.c:2820 #, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on relation \"%s\"" msgstr "villkor \"%s\" står i konflikt med NOT ENFORCED-villkor på relation \"%s\"" -#: catalog/heap.c:2824 +#: catalog/heap.c:2825 #, c-format msgid "merging constraint \"%s\" with inherited definition" msgstr "slår samman villkor \"%s\" med ärvd definition" -#: catalog/heap.c:2848 catalog/pg_constraint.c:786 catalog/pg_constraint.c:1137 +#: catalog/heap.c:2849 catalog/pg_constraint.c:803 catalog/pg_constraint.c:1154 #: commands/tablecmds.c:3179 commands/tablecmds.c:3499 #: commands/tablecmds.c:7286 commands/tablecmds.c:7967 -#: commands/tablecmds.c:17558 commands/tablecmds.c:17740 +#: commands/tablecmds.c:17583 commands/tablecmds.c:17765 #, c-format msgid "too many inheritance parents" msgstr "för många föräldrar i arv" -#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 +#: catalog/heap.c:2966 parser/parse_utilcmd.c:2655 #, c-format msgid "conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" msgstr "motstridig NO INHERIT för icke-null-villkor på kolumnen \"%s\"" -#: catalog/heap.c:2979 +#: catalog/heap.c:2980 #, c-format msgid "conflicting not-null constraint names \"%s\" and \"%s\"" msgstr "de motstridiga icke-null-villkorens namn är \"%s\" och \"%s\"" -#: catalog/heap.c:3009 +#: catalog/heap.c:3010 #, c-format msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" msgstr "kan inte ange villkoret icke-null med NO INHERIT på kolumnen \"%s\"" -#: catalog/heap.c:3011 +#: catalog/heap.c:3012 #, c-format msgid "The column has an inherited not-null constraint." msgstr "kolumnen har ett ärvt vilkor för icke-null" -#: catalog/heap.c:3201 +#: catalog/heap.c:3202 #, c-format msgid "cannot use generated column \"%s\" in column generation expression" msgstr "kan inte använda genererad kolumn \"%s\" i kolumngenereringsuttryck" -#: catalog/heap.c:3203 +#: catalog/heap.c:3204 #, c-format msgid "A generated column cannot reference another generated column." msgstr "En genererad kolumn kan inte referera till en annan genererad kolumn." -#: catalog/heap.c:3209 +#: catalog/heap.c:3210 #, c-format msgid "cannot use whole-row variable in column generation expression" msgstr "kan inte använda hela-raden-variabel i kolumngenereringsuttryck" -#: catalog/heap.c:3210 +#: catalog/heap.c:3211 #, c-format msgid "This would cause the generated column to depend on its own value." msgstr "Detta skulle leda till att den genererade kolumnen beror på sitt eget värde." -#: catalog/heap.c:3277 +#: catalog/heap.c:3278 #, c-format msgid "generation expression uses user-defined function" msgstr "genereringsuttryck använder användardefinierad funktion" -#: catalog/heap.c:3278 +#: catalog/heap.c:3279 #, c-format msgid "Virtual generated columns that make use of user-defined functions are not yet supported." msgstr "Genererade virtuella kolumner som använder användardefinierade funktioner stöds inte än." -#: catalog/heap.c:3293 +#: catalog/heap.c:3294 #, c-format msgid "generation expression uses user-defined type" msgstr "genereringsuttryck avänder användardefinierad typ" -#: catalog/heap.c:3345 +#: catalog/heap.c:3346 #, c-format msgid "generation expression is not immutable" msgstr "genereringsuttryck är inte immutable" -#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 +#: catalog/heap.c:3378 rewrite/rewriteHandler.c:1288 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "kolumn \"%s\" har typ %s men default-uttryck har typen %s" -#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 +#: catalog/heap.c:3383 commands/prepare.c:334 parser/analyze.c:2906 #: parser/parse_target.c:595 parser/parse_target.c:885 -#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1290 +#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1293 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "Du måste skriva om eller typomvandla uttrycket." -#: catalog/heap.c:3429 +#: catalog/heap.c:3430 #, c-format msgid "only table \"%s\" can be referenced in check constraint" msgstr "bara tabell \"%s\" kan refereras i check-villkoret" -#: catalog/heap.c:3735 +#: catalog/heap.c:3736 #, c-format msgid "unsupported ON COMMIT and foreign key combination" msgstr "inget stöd för kombinationen ON COMMIT och främmande nyckel" -#: catalog/heap.c:3736 +#: catalog/heap.c:3737 #, c-format msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting." msgstr "Tabell \"%s\" refererar till \"%s\", men de har inte samma ON COMMIT-inställning." -#: catalog/heap.c:3741 +#: catalog/heap.c:3742 #, c-format msgid "cannot truncate a table referenced in a foreign key constraint" msgstr "kan inte trunkera en tabell som refererars till i ett främmande nyckelvillkor" -#: catalog/heap.c:3742 +#: catalog/heap.c:3743 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "Tabell \"%s\" refererar till \"%s\"." -#: catalog/heap.c:3744 +#: catalog/heap.c:3745 #, c-format msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "Trunkera tabellen \"%s\" samtidigt, eller använd TRUNCATE ... CASCADE." @@ -5155,7 +5167,7 @@ msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "kan inte omindexera ogiltigt index \"%s.%s\" på TOAST-tabell, hoppar över" #: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 -#: commands/trigger.c:5817 +#: commands/trigger.c:5838 #, c-format msgid "cross-database references are not implemented: \"%s.%s.%s\"" msgstr "referenser till andra databaser är inte implementerat: \"%s.%s.%s\"" @@ -5176,7 +5188,6 @@ msgid "could not obtain lock on relation \"%s\"" msgstr "kunde inte ta lås på relationen \"%s\"" #: catalog/namespace.c:633 parser/parse_relation.c:1447 -#: statistics/stat_utils.c:231 #, c-format msgid "relation \"%s.%s\" does not exist" msgstr "relationen \"%s.%s\" existerar inte" @@ -5187,7 +5198,7 @@ msgstr "relationen \"%s.%s\" existerar inte" msgid "relation \"%s\" does not exist" msgstr "relationen \"%s\" existerar inte" -#: catalog/namespace.c:704 catalog/namespace.c:3522 commands/extension.c:1804 +#: catalog/namespace.c:704 catalog/namespace.c:3525 commands/extension.c:1804 #: commands/extension.c:1810 #, c-format msgid "no schema has been selected to create in" @@ -5213,105 +5224,105 @@ msgstr "bara temporära relationer får skapas i temporära scheman" msgid "statistics object \"%s\" does not exist" msgstr "statistikobjektet \"%s\" existerar inte" -#: catalog/namespace.c:2761 +#: catalog/namespace.c:2764 #, c-format msgid "text search parser \"%s\" does not exist" msgstr "textsökparser \"%s\" finns inte" -#: catalog/namespace.c:2906 utils/adt/regproc.c:1459 +#: catalog/namespace.c:2909 utils/adt/regproc.c:1459 #, c-format msgid "text search dictionary \"%s\" does not exist" msgstr "textsökkatalog \"%s\" finns inte" -#: catalog/namespace.c:3052 +#: catalog/namespace.c:3055 #, c-format msgid "text search template \"%s\" does not exist" msgstr "textsökmall \"%s\" finns inte" -#: catalog/namespace.c:3197 commands/tsearchcmds.c:1168 +#: catalog/namespace.c:3200 commands/tsearchcmds.c:1168 #: utils/adt/regproc.c:1349 utils/cache/ts_cache.c:635 #, c-format msgid "text search configuration \"%s\" does not exist" msgstr "textsökkonfiguration \"%s\" finns inte" -#: catalog/namespace.c:3329 parser/parse_expr.c:866 parser/parse_target.c:1262 +#: catalog/namespace.c:3332 parser/parse_expr.c:867 parser/parse_target.c:1262 #, c-format msgid "cross-database references are not implemented: %s" msgstr "referenser till andra databaser är inte implementerat: %s" -#: catalog/namespace.c:3335 gram.y:19355 gram.y:19395 parser/parse_expr.c:873 +#: catalog/namespace.c:3338 gram.y:19355 gram.y:19395 parser/parse_expr.c:874 #: parser/parse_target.c:1269 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "ej korrekt kvalificerat namn (för många namn med punkt): %s" -#: catalog/namespace.c:3465 +#: catalog/namespace.c:3468 #, c-format msgid "cannot move objects into or out of temporary schemas" msgstr "kan inte flytta objekt in eller ut från temporära scheman" -#: catalog/namespace.c:3471 +#: catalog/namespace.c:3474 #, c-format msgid "cannot move objects into or out of TOAST schema" msgstr "kan inte flytta objekt in eller ut från TOAST-schema" -#: catalog/namespace.c:3544 commands/schemacmds.c:264 commands/schemacmds.c:344 +#: catalog/namespace.c:3547 commands/schemacmds.c:264 commands/schemacmds.c:344 #: commands/tablecmds.c:1464 utils/adt/regproc.c:1688 #, c-format msgid "schema \"%s\" does not exist" msgstr "schema \"%s\" existerar inte" -#: catalog/namespace.c:3575 +#: catalog/namespace.c:3578 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "ej korrekt relationsnamn (för många namn med punkt): %s" -#: catalog/namespace.c:4016 utils/adt/regproc.c:1056 +#: catalog/namespace.c:4019 utils/adt/regproc.c:1056 #, c-format msgid "collation \"%s\" for encoding \"%s\" does not exist" msgstr "jämförelse \"%s\" för kodning \"%s\" finns inte" -#: catalog/namespace.c:4071 +#: catalog/namespace.c:4074 #, c-format msgid "conversion \"%s\" does not exist" msgstr "konvertering \"%s\" finns inte" -#: catalog/namespace.c:4412 +#: catalog/namespace.c:4415 #, c-format msgid "permission denied to create temporary tables in database \"%s\"" msgstr "rättighet saknas för att skapa temporära tabeller i databasen \"%s\"" -#: catalog/namespace.c:4428 +#: catalog/namespace.c:4431 #, c-format msgid "cannot create temporary tables during recovery" msgstr "kan inte skapa temptabeller under återställning" -#: catalog/namespace.c:4434 +#: catalog/namespace.c:4437 #, c-format msgid "cannot create temporary tables during a parallel operation" msgstr "kan inte skapa temporära tabeller under en parallell operation" #: catalog/objectaddress.c:1376 commands/policy.c:93 commands/policy.c:373 #: commands/tablecmds.c:260 commands/tablecmds.c:302 commands/tablecmds.c:2387 -#: commands/tablecmds.c:14510 +#: commands/tablecmds.c:14535 #, c-format msgid "\"%s\" is not a table" msgstr "\"%s\" är inte en tabell" #: catalog/objectaddress.c:1383 commands/tablecmds.c:272 -#: commands/tablecmds.c:19619 commands/view.c:113 +#: commands/tablecmds.c:19644 commands/view.c:113 #, c-format msgid "\"%s\" is not a view" msgstr "\"%s\" är inte en vy" #: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 -#: commands/tablecmds.c:19624 +#: commands/tablecmds.c:19649 #, c-format msgid "\"%s\" is not a materialized view" msgstr "\"%s\" är inte en materialiserad vy" #: catalog/objectaddress.c:1397 commands/tablecmds.c:296 -#: commands/tablecmds.c:19629 +#: commands/tablecmds.c:19654 #, c-format msgid "\"%s\" is not a foreign table" msgstr "\"%s\" är inte en främmande tabell" @@ -6003,47 +6014,58 @@ msgstr "jämförelse \"%s\" finns redan" msgid "collation \"%s\" for encoding \"%s\" already exists" msgstr "jämförelse \"%s\" för kodning \"%s\" finns redan" -#: catalog/pg_constraint.c:763 commands/tablecmds.c:7952 +#: catalog/pg_constraint.c:764 commands/tablecmds.c:7952 #, c-format msgid "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation \"%s\"" msgstr "kan inte ändra NO INHERIT-status för NOT NULL-villkor \"%s\" på relationen \"%s\"" -#: catalog/pg_constraint.c:765 commands/tablecmds.c:9559 +#: catalog/pg_constraint.c:766 commands/tablecmds.c:9584 #, c-format msgid "You might need to make the existing constraint inheritable using %s." msgstr "Du kan behöva gör det existerande villkoret ärvbart med %s." -#: catalog/pg_constraint.c:775 +#: catalog/pg_constraint.c:776 commands/tablecmds.c:8301 #, c-format msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" msgstr "inkompatibelt NOT VALID-villkor \"%s\" på relationen \"%s\"" -#: catalog/pg_constraint.c:777 commands/tablecmds.c:9571 +#: catalog/pg_constraint.c:778 commands/tablecmds.c:8303 +#: commands/tablecmds.c:9596 #, c-format msgid "You might need to validate it using %s." msgstr "Du kan behöva validera det med %s." -#: catalog/pg_constraint.c:1016 +#: catalog/pg_constraint.c:792 +#, c-format +msgid "cannot create not-null constraint \"%s\" on column \"%s\" of table \"%s\"" +msgstr "kan inte skapa icke-null-villkor \"%s\" på kolumn \"%s\" i tabellen \"%s\"" + +#: catalog/pg_constraint.c:794 +#, c-format +msgid "A not-null constraint named \"%s\" already exists for this column." +msgstr "Ett icke-null-villkor med namn \"%s\" finns redan för denna kolumnen." + +#: catalog/pg_constraint.c:1033 #, c-format msgid "constraint \"%s\" for domain %s already exists" msgstr "villkor \"%s\" för domän %s finns redan" -#: catalog/pg_constraint.c:1217 catalog/pg_constraint.c:1310 +#: catalog/pg_constraint.c:1234 catalog/pg_constraint.c:1327 #, c-format msgid "constraint \"%s\" for table \"%s\" does not exist" msgstr "integritetsvillkor \"%s\" för tabell \"%s\" existerar inte" -#: catalog/pg_constraint.c:1410 +#: catalog/pg_constraint.c:1427 #, c-format msgid "constraint \"%s\" for domain %s does not exist" msgstr "villkor \"%s\" för domänen %s finns inte" -#: catalog/pg_constraint.c:1664 +#: catalog/pg_constraint.c:1681 #, c-format msgid "invalid type for PERIOD part of foreign key" msgstr "ogiltig type för PERIOD-delen av främmande nyckel" -#: catalog/pg_constraint.c:1665 +#: catalog/pg_constraint.c:1682 #, c-format msgid "Only range and multirange are supported." msgstr "Bara range och multirange stöds." @@ -6129,7 +6151,7 @@ msgid "The partition is being detached concurrently or has an unfinished detach. msgstr "Partitionen kopplas loss parallellt eller har en bortkoppling som inte är slutförd." #: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 -#: commands/tablecmds.c:17866 +#: commands/tablecmds.c:17891 #, c-format msgid "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending detach operation." msgstr "Använd ALTER TABLE ... DETACH PARTITION ... FINALIZE för att slutföra den pågående bortkopplingsoperationen." @@ -6519,7 +6541,7 @@ msgstr "Misslyckades vid skapande av multirange-typ för typen \"%s\"." msgid "You can manually specify a multirange type name using the \"multirange_type_name\" attribute." msgstr "Du kan manuellt ange en multirange-typ med hjälp av attributet \"multirange_type_name\"." -#: catalog/storage.c:549 storage/buffer/bufmgr.c:7334 +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7338 #, c-format msgid "invalid page in block %u of relation \"%s\"" msgstr "ogiltig sida i block %u i relation \"%s\"" @@ -6634,7 +6656,7 @@ msgstr "servern \"%s\" finns redan" msgid "language \"%s\" already exists" msgstr "språk \"%s\" finns redan" -#: commands/alter.c:95 commands/publicationcmds.c:865 +#: commands/alter.c:95 commands/publicationcmds.c:870 #, c-format msgid "publication \"%s\" already exists" msgstr "publicering \"%s\" finns redan" @@ -6781,27 +6803,27 @@ msgstr "hoppar över analys av arvsträd \"%s.%s\" --- detta arvsträd innehåll msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables" msgstr "hoppar över analys av arvsträd \"%s.%s\" --- detta arvsträd innehåller inga analyserbara barntabeller" -#: commands/async.c:612 +#: commands/async.c:611 #, c-format msgid "channel name cannot be empty" msgstr "kanalnamn får inte vara tomt" -#: commands/async.c:618 +#: commands/async.c:617 #, c-format msgid "channel name too long" msgstr "kanalnamn för långt" -#: commands/async.c:623 +#: commands/async.c:622 #, c-format msgid "payload string too long" msgstr "innehållssträng är för lång" -#: commands/async.c:842 +#: commands/async.c:841 #, c-format msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY" msgstr "kan inte göra PREPARE på transaktion som kört LISTEN, UNLISTEN eller NOTIFY" -#: commands/async.c:946 +#: commands/async.c:945 #, c-format msgid "too many notifications in the NOTIFY queue" msgstr "för många notifieringar i NOTIFY-kön" @@ -6821,10 +6843,12 @@ msgstr "Serverprocessen med PID %d är bland dem med den äldsta transaktionen." msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction." msgstr "NOTIFY-kön kan inte tömmas innan den processen avslutar sin nuvarande transaktion." -#: commands/cluster.c:127 +#: commands/cluster.c:127 commands/dbcommands.c:2356 +#: commands/explain_state.c:165 commands/indexcmds.c:2846 commands/vacuum.c:234 +#: commands/vacuum.c:308 #, c-format -msgid "unrecognized CLUSTER option \"%s\"" -msgstr "okänd CLUSTER-flagga \"%s\"" +msgid "unrecognized %s option \"%s\"" +msgstr "okänd %s-flagga \"%s\"" #: commands/cluster.c:158 commands/cluster.c:421 #, c-format @@ -6836,7 +6860,7 @@ msgstr "kan inte klustra temporära tabeller för andra sessioner" msgid "there is no previously clustered index for table \"%s\"" msgstr "det finns inget tidigare klustrat index för tabell \"%s\"" -#: commands/cluster.c:190 commands/tablecmds.c:16422 commands/tablecmds.c:18488 +#: commands/cluster.c:190 commands/tablecmds.c:16447 commands/tablecmds.c:18513 #, c-format msgid "index \"%s\" for table \"%s\" does not exist" msgstr "index \"%s\" för tabell \"%s\" finns inte" @@ -6851,7 +6875,7 @@ msgstr "kan inte klustra en delad katalog" msgid "cannot vacuum temporary tables of other sessions" msgstr "kan inte städa temporära tabeller för andra sessioner" -#: commands/cluster.c:507 commands/tablecmds.c:18498 +#: commands/cluster.c:507 commands/tablecmds.c:18523 #, c-format msgid "\"%s\" is not an index for table \"%s\"" msgstr "\"%s\" är inte ett index för tabell \"%s\"" @@ -6916,14 +6940,14 @@ msgid "collation attribute \"%s\" not recognized" msgstr "jämförelsesattribut \"%s\" känns inte igen" #: commands/collationcmds.c:123 commands/collationcmds.c:129 -#: commands/define.c:375 commands/tablecmds.c:8369 -#: replication/pgoutput/pgoutput.c:320 replication/pgoutput/pgoutput.c:343 -#: replication/pgoutput/pgoutput.c:357 replication/pgoutput/pgoutput.c:367 -#: replication/pgoutput/pgoutput.c:377 replication/pgoutput/pgoutput.c:387 -#: replication/pgoutput/pgoutput.c:399 replication/walsender.c:1123 -#: replication/walsender.c:1145 replication/walsender.c:1155 -#: replication/walsender.c:1164 replication/walsender.c:1406 -#: replication/walsender.c:1415 +#: commands/define.c:375 commands/tablecmds.c:8394 +#: replication/pgoutput/pgoutput.c:321 replication/pgoutput/pgoutput.c:344 +#: replication/pgoutput/pgoutput.c:362 replication/pgoutput/pgoutput.c:372 +#: replication/pgoutput/pgoutput.c:382 replication/pgoutput/pgoutput.c:392 +#: replication/pgoutput/pgoutput.c:404 replication/walsender.c:1137 +#: replication/walsender.c:1159 replication/walsender.c:1169 +#: replication/walsender.c:1178 replication/walsender.c:1420 +#: replication/walsender.c:1429 #, c-format msgid "conflicting or redundant options" msgstr "motstridiga eller redundanta inställningar" @@ -6993,24 +7017,24 @@ msgstr "kan inte refresha versionen på standardjämförelse" #. translator: %s is an SQL ALTER command #: commands/collationcmds.c:443 commands/subscriptioncmds.c:1445 #: commands/tablecmds.c:8146 commands/tablecmds.c:8156 -#: commands/tablecmds.c:8158 commands/tablecmds.c:16124 -#: commands/tablecmds.c:19652 commands/tablecmds.c:19673 +#: commands/tablecmds.c:8158 commands/tablecmds.c:16149 +#: commands/tablecmds.c:19677 commands/tablecmds.c:19698 #: commands/typecmds.c:3786 commands/typecmds.c:3871 commands/typecmds.c:4225 #, c-format msgid "Use %s instead." msgstr "Använd %s istället." -#: commands/collationcmds.c:476 commands/dbcommands.c:2605 +#: commands/collationcmds.c:476 commands/dbcommands.c:2606 #, c-format msgid "changing version from %s to %s" msgstr "byter version från %s till %s" -#: commands/collationcmds.c:491 commands/dbcommands.c:2618 +#: commands/collationcmds.c:491 commands/dbcommands.c:2619 #, c-format msgid "version has not changed" msgstr "versionen har inte ändrats" -#: commands/collationcmds.c:524 commands/dbcommands.c:2788 +#: commands/collationcmds.c:524 commands/dbcommands.c:2789 #: utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" @@ -7033,8 +7057,8 @@ msgstr "inga användbara systemlokaler hittades" #: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 #: commands/dbcommands.c:2034 commands/dbcommands.c:2232 -#: commands/dbcommands.c:2472 commands/dbcommands.c:2565 -#: commands/dbcommands.c:2689 commands/dbcommands.c:3200 +#: commands/dbcommands.c:2473 commands/dbcommands.c:2566 +#: commands/dbcommands.c:2690 commands/dbcommands.c:3201 #: utils/init/postinit.c:1016 utils/init/postinit.c:1080 #: utils/init/postinit.c:1153 #, c-format @@ -7121,167 +7145,179 @@ msgstr "rättighet saknas för att göra COPY till en fil" msgid "Only roles with privileges of the \"%s\" role may COPY to a file." msgstr "Bara roller med rättigheter från rollen \"%s\" får göra COPY till en fil." -#: commands/copy.c:193 +#: commands/copy.c:182 +#, c-format +msgid "generated columns are not supported in COPY FROM WHERE conditions" +msgstr "genererade kolumner tillåts inte i COPY FROM WHERE-villkor" + +#: commands/copy.c:183 commands/tablecmds.c:14418 commands/tablecmds.c:19824 +#: commands/tablecmds.c:19906 commands/trigger.c:660 +#: rewrite/rewriteHandler.c:952 rewrite/rewriteHandler.c:987 +#, c-format +msgid "Column \"%s\" is a generated column." +msgstr "Kolumnen \"%s\" är en genererad kolumn." + +#: commands/copy.c:232 #, c-format msgid "COPY FROM not supported with row-level security" msgstr "COPY FROM stöds inte med radnivåsäkerhet" -#: commands/copy.c:194 +#: commands/copy.c:233 #, c-format msgid "Use INSERT statements instead." msgstr "Använd INSERT-satser istället." -#: commands/copy.c:375 +#: commands/copy.c:414 #, c-format msgid "cannot use \"%s\" with HEADER in COPY TO" msgstr "kan inte ange \"%s\" med HEADER i COPY TO" -#: commands/copy.c:384 +#: commands/copy.c:423 #, c-format msgid "%s requires a Boolean value or \"match\"" msgstr "%s kräver ett booleskt värde eller \"match\"" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR, #. second %s is a COPY with direction, e.g. COPY TO -#: commands/copy.c:402 commands/copy.c:818 commands/copy.c:834 -#: commands/copy.c:851 commands/copy.c:877 commands/copy.c:887 +#: commands/copy.c:441 commands/copy.c:857 commands/copy.c:873 +#: commands/copy.c:890 commands/copy.c:916 commands/copy.c:926 #, c-format msgid "COPY %s cannot be used with %s" msgstr "COPY %s kan inte användas med %s" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:416 commands/copy.c:474 +#: commands/copy.c:455 commands/copy.c:513 #, c-format msgid "COPY %s \"%s\" not recognized" msgstr "COPY %s \"%s\" känns inte igen" -#: commands/copy.c:436 commands/define.c:73 commands/define.c:84 +#: commands/copy.c:475 commands/define.c:73 commands/define.c:84 #: commands/define.c:178 commands/define.c:196 commands/define.c:211 #: commands/define.c:229 #, c-format msgid "%s requires a numeric value" msgstr "%s kräver ett numeriskt värde" -#: commands/copy.c:446 +#: commands/copy.c:485 #, c-format msgid "REJECT_LIMIT (%) must be greater than zero" msgstr "REJECT_LIMIT (%) måste vara större än noll" -#: commands/copy.c:536 +#: commands/copy.c:575 #, c-format msgid "COPY format \"%s\" not recognized" msgstr "COPY-format \"%s\" känns inte igen" -#: commands/copy.c:594 commands/copy.c:609 commands/copy.c:624 -#: commands/copy.c:643 +#: commands/copy.c:633 commands/copy.c:648 commands/copy.c:663 +#: commands/copy.c:682 #, c-format msgid "argument to option \"%s\" must be a list of column names" msgstr "argumentet till flaggan \"%s\" måste vara en lista med kolumnnamn" -#: commands/copy.c:655 +#: commands/copy.c:694 #, c-format msgid "argument to option \"%s\" must be a valid encoding name" msgstr "argumentet till flaggan \"%s\" måste vara ett giltigt kodningsnamn" -#: commands/copy.c:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2421 #, c-format msgid "option \"%s\" not recognized" msgstr "flaggan \"%s\" känns inte igen" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:696 commands/copy.c:701 commands/copy.c:706 -#: commands/copy.c:776 +#: commands/copy.c:735 commands/copy.c:740 commands/copy.c:745 +#: commands/copy.c:815 #, c-format msgid "cannot specify %s in BINARY mode" msgstr "kan inte ange %s i läget BINARY" -#: commands/copy.c:728 +#: commands/copy.c:767 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "COPY-separatorn måste vara ett ensamt en-byte-tecken" -#: commands/copy.c:735 +#: commands/copy.c:774 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "COPY-separatorn kan inte vara nyradstecken eller vagnretur" -#: commands/copy.c:741 +#: commands/copy.c:780 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "null-representationen för COPY kan inte använda tecknen för nyrad eller vagnretur" -#: commands/copy.c:751 +#: commands/copy.c:790 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "standard-representationen för COPY kan inte använda tecknen för nyrad eller vagnretur" -#: commands/copy.c:769 +#: commands/copy.c:808 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "COPY-separatorn kan inte vara \"%s\"" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:783 commands/copy.c:800 commands/copy.c:812 -#: commands/copy.c:827 commands/copy.c:843 +#: commands/copy.c:822 commands/copy.c:839 commands/copy.c:851 +#: commands/copy.c:866 commands/copy.c:882 #, c-format msgid "COPY %s requires CSV mode" msgstr "COPY %s kräver CSV-läge" -#: commands/copy.c:788 +#: commands/copy.c:827 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "COPY-quote måste vara ett ensamt en-byte-tecken" -#: commands/copy.c:793 +#: commands/copy.c:832 #, c-format msgid "COPY delimiter and quote must be different" msgstr "COPY-separator och quote måste vara olika" -#: commands/copy.c:805 +#: commands/copy.c:844 #, c-format msgid "COPY escape must be a single one-byte character" msgstr "COPY-escape måste vara ett ensamt en-byte-tecken" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:859 commands/copy.c:895 +#: commands/copy.c:898 commands/copy.c:934 #, c-format msgid "COPY delimiter character must not appear in the %s specification" msgstr "Tecknet för COPY-separatorn får inte förekomma i %s-specifikationen" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:868 commands/copy.c:904 +#: commands/copy.c:907 commands/copy.c:943 #, c-format msgid "CSV quote character must not appear in the %s specification" msgstr "CSV-citattecken får inte förekomma i %s-specifikationen" -#: commands/copy.c:913 +#: commands/copy.c:952 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "NULL-specifikation and DEFAULT-specifikation får inte vara samma" -#: commands/copy.c:919 +#: commands/copy.c:958 #, c-format msgid "only ON_ERROR STOP is allowed in BINARY mode" msgstr "bara ON_ERROR STOP tillåts i läget BINARY" #. translator: first and second %s are the names of COPY option, e.g. #. * ON_ERROR, third is the value of the COPY option, e.g. IGNORE -#: commands/copy.c:926 +#: commands/copy.c:965 #, c-format msgid "COPY %s requires %s to be set to %s" msgstr "COPY %s kräver att %s är satt till %s" -#: commands/copy.c:988 +#: commands/copy.c:1027 #, c-format msgid "column \"%s\" is a generated column" msgstr "kolumnen \"%s\" är en genererad kolumn" -#: commands/copy.c:990 +#: commands/copy.c:1029 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "Genererade kolumner kan inte användas i COPY." -#: commands/copy.c:1005 commands/indexcmds.c:1959 commands/statscmds.c:239 +#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:260 #: commands/tablecmds.c:2593 commands/tablecmds.c:3101 #: commands/tablecmds.c:3930 parser/parse_relation.c:3798 #: parser/parse_relation.c:3808 parser/parse_relation.c:3826 @@ -7291,7 +7327,7 @@ msgstr "Genererade kolumner kan inte användas i COPY." msgid "column \"%s\" does not exist" msgstr "kolumnen \"%s\" existerar inte" -#: commands/copy.c:1012 commands/tablecmds.c:2619 commands/trigger.c:957 +#: commands/copy.c:1051 commands/tablecmds.c:2619 commands/trigger.c:957 #: parser/parse_target.c:1086 parser/parse_target.c:1097 #, c-format msgid "column \"%s\" specified more than once" @@ -7452,17 +7488,17 @@ msgid "could not read from COPY file: %m" msgstr "kunde inte läsa från COPY-fil: %m" #: commands/copyfromparse.c:278 commands/copyfromparse.c:303 -#: replication/walsender.c:732 replication/walsender.c:758 tcop/postgres.c:369 +#: replication/walsender.c:746 replication/walsender.c:772 tcop/postgres.c:369 #, c-format msgid "unexpected EOF on client connection with an open transaction" msgstr "oväntat EOF från klientanslutning med öppen transaktion" -#: commands/copyfromparse.c:294 replication/walsender.c:748 +#: commands/copyfromparse.c:294 replication/walsender.c:762 #, c-format msgid "unexpected message type 0x%02X during COPY from stdin" msgstr "oväntad meddelandetyp 0x%02X under COPY från stdin" -#: commands/copyfromparse.c:317 replication/walsender.c:779 +#: commands/copyfromparse.c:317 replication/walsender.c:793 #, c-format msgid "COPY from stdin failed: %s" msgstr "COPY från stdin misslyckades: %s" @@ -7739,7 +7775,7 @@ msgstr "\"%s\" är inte ett giltigt kodningsnamn" msgid "unrecognized locale provider: %s" msgstr "okänd lokalleverantör: %s" -#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2454 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" @@ -7760,7 +7796,7 @@ msgstr "malldatabasen \"%s\" existerar inte" msgid "cannot use invalid database \"%s\" as template" msgstr "kan inte använda ogiltig databas \"%s\" som mall" -#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2484 #: utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." @@ -7949,7 +7985,7 @@ msgid "data directory with the specified OID %u already exists" msgstr "datakatalog med angiven OID %u finns redan" #: commands/dbcommands.c:1610 commands/dbcommands.c:1625 -#: utils/adt/pg_locale.c:1518 +#: utils/adt/pg_locale.c:1532 #, c-format msgid "encoding \"%s\" does not match locale \"%s\"" msgstr "kodning \"%s\" matchar inte lokal \"%s\"" @@ -8034,62 +8070,57 @@ msgstr "vissa relationer i databasen \"%s\" finns redan i tablespace \"%s\"" msgid "You must move them back to the database's default tablespace before using this command." msgstr "Du måste flytta tillbaka dem till tabellens standard-tablespace innan du använder detta kommando." -#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 -#: commands/dbcommands.c:3338 commands/dbcommands.c:3451 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3039 +#: commands/dbcommands.c:3339 commands/dbcommands.c:3453 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "några värdelösa filer kan lämnas kvar i gammal databaskatalog \"%s\"" -#: commands/dbcommands.c:2356 -#, c-format -msgid "unrecognized DROP DATABASE option \"%s\"" -msgstr "okänd DROP DATABASE-flagga \"%s\"" - -#: commands/dbcommands.c:2434 +#: commands/dbcommands.c:2435 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "flaggan \"%s\" kan inte anges tillsammans med andra flaggor" -#: commands/dbcommands.c:2482 +#: commands/dbcommands.c:2483 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "kan inte ändra på ogiltig database \"%s\"" -#: commands/dbcommands.c:2499 +#: commands/dbcommands.c:2500 #, c-format msgid "cannot disallow connections for current database" msgstr "kan inte förbjuda anslutningar till nuvarande databas" -#: commands/dbcommands.c:2729 +#: commands/dbcommands.c:2730 #, c-format msgid "permission denied to change owner of database" msgstr "rättighet saknas för att byta ägare på databasen" -#: commands/dbcommands.c:3144 +#: commands/dbcommands.c:3145 #, c-format msgid "There are %d other session(s) and %d prepared transaction(s) using the database." msgstr "Det finns %d andra session(er) och %d förberedda transaktion(er) som använder databasen." -#: commands/dbcommands.c:3147 +#: commands/dbcommands.c:3148 #, c-format msgid "There is %d other session using the database." msgid_plural "There are %d other sessions using the database." msgstr[0] "Det finns %d annan session som använder databasen." msgstr[1] "Det finns %d andra sessioner som använder databasen." -#: commands/dbcommands.c:3152 storage/ipc/procarray.c:3860 +#: commands/dbcommands.c:3153 storage/ipc/procarray.c:3860 #, c-format msgid "There is %d prepared transaction using the database." msgid_plural "There are %d prepared transactions using the database." msgstr[0] "Det finns %d förberedd transaktion som använder databasen" msgstr[1] "Det finns %d förberedda transaktioner som använder databasen" -#: commands/dbcommands.c:3294 +#: commands/dbcommands.c:3295 #, c-format msgid "missing directory \"%s\"" msgstr "saknar katalog \"%s\"" -#: commands/dbcommands.c:3352 commands/tablespace.c:184 +#: commands/dbcommands.c:3353 commands/tablespace.c:184 #: commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" @@ -8139,7 +8170,7 @@ msgstr "Använd DROP AGGREGATE för att ta bort aggregatfunktioner." #: commands/dropcmds.c:153 commands/sequence.c:462 commands/tablecmds.c:4014 #: commands/tablecmds.c:4175 commands/tablecmds.c:4227 -#: commands/tablecmds.c:18929 tcop/utility.c:1328 +#: commands/tablecmds.c:18954 tcop/utility.c:1328 #, c-format msgid "relation \"%s\" does not exist, skipping" msgstr "relation \"%s\" finns inte, hoppar över" @@ -8169,7 +8200,7 @@ msgstr "jämförelse \"%s\" finns inte, hoppar över" msgid "conversion \"%s\" does not exist, skipping" msgstr "konvertering \"%s\" finns inte, hoppar över" -#: commands/dropcmds.c:288 commands/statscmds.c:682 +#: commands/dropcmds.c:288 commands/statscmds.c:703 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "statistikobjekt \"%s\" finns inte, hoppar över" @@ -8362,14 +8393,10 @@ msgid "%s can only be called in an event trigger function" msgstr "%s kan bara anropas i en händelsetriggerfunktion" #: commands/explain_state.c:133 commands/explain_state.c:158 +#: replication/walsender.c:1151 #, c-format -msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" -msgstr "okänt värde för EXPLAIN-flagga \"%s\": \"%s\"" - -#: commands/explain_state.c:165 -#, c-format -msgid "unrecognized EXPLAIN option \"%s\"" -msgstr "okänd EXPLAIN-flagga \"%s\"" +msgid "unrecognized value for %s option \"%s\": \"%s\"" +msgstr "okänt värde för %s-flaggan \"%s\": \"%s\"" #: commands/explain_state.c:174 commands/explain_state.c:186 #: commands/explain_state.c:192 @@ -8379,8 +8406,8 @@ msgstr "EXPLAIN-flagga %s kräver ANALYZE" #: commands/explain_state.c:198 #, c-format -msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" -msgstr "EXPLAIN-flaggorna ANALYZE och GENERIC_PLAN kan inte användas ihop" +msgid "%s options %s and %s cannot be used together" +msgstr "%s-flaggorna %s och %s kan inte användas tillsammans" #: commands/extension.c:177 commands/extension.c:3323 #, c-format @@ -9339,8 +9366,8 @@ msgstr "inkluderad kolumn stöder inte NULLS FIRST/LAST-flaggor" msgid "could not determine which collation to use for index expression" msgstr "kunde inte bestämma vilken jämförelse (collation) som skulle användas för indexuttryck" -#: commands/indexcmds.c:2097 commands/tablecmds.c:19959 commands/typecmds.c:812 -#: parser/parse_expr.c:2805 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 +#: commands/indexcmds.c:2097 commands/tablecmds.c:19994 commands/typecmds.c:812 +#: parser/parse_expr.c:2815 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 #: utils/adt/misc.c:630 #, c-format msgid "collations are not supported by type %s" @@ -9376,8 +9403,8 @@ msgstr "accessmetod \"%s\" stöder inte ASC/DESC-flaggor" msgid "access method \"%s\" does not support NULLS FIRST/LAST options" msgstr "accessmetod \"%s\" stöder inte NULLS FIRST/LAST-flaggor" -#: commands/indexcmds.c:2277 commands/tablecmds.c:19984 -#: commands/tablecmds.c:19990 commands/typecmds.c:2349 +#: commands/indexcmds.c:2277 commands/tablecmds.c:20019 +#: commands/tablecmds.c:20025 commands/typecmds.c:2349 #, c-format msgid "data type %s has no default operator class for access method \"%s\"" msgstr "datatyp %s har ingen standardoperatorklass för accessmetod \"%s\"" @@ -9413,16 +9440,11 @@ msgstr "kunde inte hitta en överlappningsoperator för typ %s" msgid "could not identify a contained-by operator for type %s" msgstr "kunde inte hitta en contained-by-operator för typ %s" -#: commands/indexcmds.c:2472 commands/tablecmds.c:10333 +#: commands/indexcmds.c:2472 commands/tablecmds.c:10358 #, c-format msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." msgstr "Kunde inte översätta jämförelsetyp %d för operatorfamilj \"%s\" till accessmetod \"%s\"." -#: commands/indexcmds.c:2846 -#, c-format -msgid "unrecognized REINDEX option \"%s\"" -msgstr "okänd REINDEX-flagga \"%s\"" - #: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" @@ -9848,11 +9870,11 @@ msgstr "operatorattribut \"%s\" kan inte ändras" msgid "operator attribute \"%s\" cannot be changed if it has already been set" msgstr "operatorattribut \"%s\" kan inte ändras när det redan har satts" -#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:146 +#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:152 #: commands/tablecmds.c:1800 commands/tablecmds.c:2400 #: commands/tablecmds.c:3824 commands/tablecmds.c:6793 -#: commands/tablecmds.c:10089 commands/tablecmds.c:19540 -#: commands/tablecmds.c:19575 commands/trigger.c:319 commands/trigger.c:1338 +#: commands/tablecmds.c:10114 commands/tablecmds.c:19565 +#: commands/tablecmds.c:19600 commands/trigger.c:319 commands/trigger.c:1338 #: commands/trigger.c:1448 rewrite/rewriteDefine.c:268 #: rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 #, c-format @@ -9950,210 +9972,210 @@ msgstr "preparerad sats \"%s\" finns inte" msgid "must be superuser to create custom procedural language" msgstr "måste vara en superuser för att skapa ett eget procedurspråk" -#: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 +#: commands/publicationcmds.c:135 libpq/auth-oauth.c:850 #: postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 #: utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "ogiltigt listsyntax för parameter \"%s\"" -#: commands/publicationcmds.c:149 +#: commands/publicationcmds.c:154 #, c-format msgid "unrecognized value for publication option \"%s\": \"%s\"" msgstr "okänt värde för publicerings-flagga \"%s\": \"%s\"" -#: commands/publicationcmds.c:170 +#: commands/publicationcmds.c:175 #, c-format msgid "unrecognized publication parameter: \"%s\"" msgstr "okänd publiceringsparameter: \"%s\"" -#: commands/publicationcmds.c:211 +#: commands/publicationcmds.c:216 #, c-format msgid "no schema has been selected for CURRENT_SCHEMA" msgstr "inget schema har valts som CURRENT_SCHEMA" -#: commands/publicationcmds.c:592 +#: commands/publicationcmds.c:597 msgid "System columns are not allowed." msgstr "Systemkolumner tillåts inte." -#: commands/publicationcmds.c:599 commands/publicationcmds.c:604 -#: commands/publicationcmds.c:621 +#: commands/publicationcmds.c:604 commands/publicationcmds.c:609 +#: commands/publicationcmds.c:626 msgid "User-defined operators are not allowed." msgstr "Användardefinierade operatorer tillåts inte." -#: commands/publicationcmds.c:645 +#: commands/publicationcmds.c:650 msgid "Only columns, constants, built-in operators, built-in data types, built-in collations, and immutable built-in functions are allowed." msgstr "Only kolumner, konstanter, inbyggda operatorer, inbyggda datatyper, inbyggda jämförelser och inbyggda immuterbara funktioner tillåts." -#: commands/publicationcmds.c:657 +#: commands/publicationcmds.c:662 msgid "User-defined types are not allowed." msgstr "Användadefinierade typer tillåts inte." -#: commands/publicationcmds.c:660 +#: commands/publicationcmds.c:665 msgid "User-defined or built-in mutable functions are not allowed." msgstr "Användardefinierade eller inbyggda muterbara funktioner tillåts inte." -#: commands/publicationcmds.c:663 +#: commands/publicationcmds.c:668 msgid "User-defined collations are not allowed." msgstr "Användardefinierade jämförelser (collation) tillåts inte." -#: commands/publicationcmds.c:673 +#: commands/publicationcmds.c:678 #, c-format msgid "invalid publication WHERE expression" msgstr "ogiltigt WHERE-uttryck för publicering" -#: commands/publicationcmds.c:726 +#: commands/publicationcmds.c:731 #, c-format msgid "cannot use publication WHERE clause for relation \"%s\"" msgstr "kan inte använda publicerings WHERE-klausul för relation \"%s\"" -#: commands/publicationcmds.c:728 +#: commands/publicationcmds.c:733 #, c-format msgid "WHERE clause cannot be used for a partitioned table when %s is false." msgstr "WHERE-klausul kan inte användas för en partitionerad tabell när %s är falsk." -#: commands/publicationcmds.c:801 commands/publicationcmds.c:815 +#: commands/publicationcmds.c:806 commands/publicationcmds.c:820 #, c-format msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" msgstr "kan inte använda kolumnlista för relationen \"%s.%s\" i publiceringen \"%s\"" -#: commands/publicationcmds.c:804 +#: commands/publicationcmds.c:809 #, c-format msgid "Column lists cannot be specified in publications containing FOR TABLES IN SCHEMA elements." msgstr "Kolumnlistor kan inte anges i publiceringar som innehåller FOR TABLES IN SCHEMA." -#: commands/publicationcmds.c:818 +#: commands/publicationcmds.c:823 #, c-format msgid "Column lists cannot be specified for partitioned tables when %s is false." msgstr "Kolumnlista kan inte anges för partitionerade tabeller när %s är falsk." -#: commands/publicationcmds.c:855 +#: commands/publicationcmds.c:860 #, c-format msgid "must be superuser to create FOR ALL TABLES publication" msgstr "måste vara en superuser för att skapa en FOR ALL TABLES-publicering" -#: commands/publicationcmds.c:930 +#: commands/publicationcmds.c:935 #, c-format msgid "must be superuser to create FOR TABLES IN SCHEMA publication" msgstr "måste vara superuser för att skapa en FOR TABLES IN SCHEMA-publicering" -#: commands/publicationcmds.c:966 +#: commands/publicationcmds.c:971 #, c-format msgid "\"wal_level\" is insufficient to publish logical changes" msgstr "\"wal_level\" är otillräcklig för att publicera logiska ändringar" -#: commands/publicationcmds.c:967 +#: commands/publicationcmds.c:972 #, c-format msgid "Set \"wal_level\" to \"logical\" before creating subscriptions." msgstr "Sätt \"wal_level\" till \"logical\" innan prenumerationer skapas." -#: commands/publicationcmds.c:1067 commands/publicationcmds.c:1075 +#: commands/publicationcmds.c:1072 commands/publicationcmds.c:1080 #, c-format msgid "cannot set parameter \"%s\" to false for publication \"%s\"" msgstr "kan inte sätta parameter \"%s\" till falsk för publicering \"%s\"" -#: commands/publicationcmds.c:1070 +#: commands/publicationcmds.c:1075 #, c-format msgid "The publication contains a WHERE clause for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "Publiceringen innehåller en WHERE-klausul för partitionerade tabellen \"%s\" som inte tillåts när \"%s\" ör falsk." -#: commands/publicationcmds.c:1078 +#: commands/publicationcmds.c:1083 #, c-format msgid "The publication contains a column list for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "Publiceringen innehåller en kolumnlista för den partitionerade tabellern \"%s\" som inte är tillåtet när \"%s\" är falsk." -#: commands/publicationcmds.c:1399 +#: commands/publicationcmds.c:1404 #, c-format msgid "cannot add schema to publication \"%s\"" msgstr "kan inte lägga till schema till publiceringen \"%s\"" -#: commands/publicationcmds.c:1401 +#: commands/publicationcmds.c:1406 #, c-format msgid "Schemas cannot be added if any tables that specify a column list are already part of the publication." msgstr "Scheman kan inte läggas till om tabeller med kolumnlistor redan är en del av publiceringen." -#: commands/publicationcmds.c:1449 +#: commands/publicationcmds.c:1454 #, c-format msgid "must be superuser to add or set schemas" msgstr "måste vara superuser för att lägga till ett sätta scheman" -#: commands/publicationcmds.c:1458 commands/publicationcmds.c:1466 +#: commands/publicationcmds.c:1463 commands/publicationcmds.c:1471 #, c-format msgid "publication \"%s\" is defined as FOR ALL TABLES" msgstr "publicering \"%s\" är definierad som FOR ALL TABLES" -#: commands/publicationcmds.c:1460 +#: commands/publicationcmds.c:1465 #, c-format msgid "Schemas cannot be added to or dropped from FOR ALL TABLES publications." msgstr "Scheman kan inte läggas till eller tas bort från FOR ALL TABLES-publiceringar." -#: commands/publicationcmds.c:1468 +#: commands/publicationcmds.c:1473 #, c-format msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications." msgstr "Tabeller kan inte läggas till eller tas bort från FOR ALL TABLES-publiceringar." -#: commands/publicationcmds.c:1492 commands/publicationcmds.c:1531 -#: commands/publicationcmds.c:2068 utils/cache/lsyscache.c:3774 +#: commands/publicationcmds.c:1497 commands/publicationcmds.c:1536 +#: commands/publicationcmds.c:2073 utils/cache/lsyscache.c:3774 #, c-format msgid "publication \"%s\" does not exist" msgstr "publiceringen \"%s\" finns inte" -#: commands/publicationcmds.c:1694 commands/publicationcmds.c:1757 +#: commands/publicationcmds.c:1699 commands/publicationcmds.c:1762 #, c-format msgid "conflicting or redundant WHERE clauses for table \"%s\"" msgstr "motstridiga eller redundanta WHERE-klausuler för tabellen \"%s\"" -#: commands/publicationcmds.c:1701 commands/publicationcmds.c:1769 +#: commands/publicationcmds.c:1706 commands/publicationcmds.c:1774 #, c-format msgid "conflicting or redundant column lists for table \"%s\"" msgstr "motstridiga eller redundanta kolumnlistor för tabellen \"%s\"" -#: commands/publicationcmds.c:1903 +#: commands/publicationcmds.c:1908 #, c-format msgid "column list must not be specified in ALTER PUBLICATION ... DROP" msgstr "kolumnlista får inte anges i ALTER PUBLICATION ... DROP" -#: commands/publicationcmds.c:1915 +#: commands/publicationcmds.c:1920 #, c-format msgid "relation \"%s\" is not part of the publication" msgstr "relation \"%s\" är inte en del av publiceringen" -#: commands/publicationcmds.c:1922 +#: commands/publicationcmds.c:1927 #, c-format msgid "cannot use a WHERE clause when removing a table from a publication" msgstr "kan inte använda en WHERE-sats när man tar bort en tabell från en publicering" -#: commands/publicationcmds.c:1982 +#: commands/publicationcmds.c:1987 #, c-format msgid "tables from schema \"%s\" are not part of the publication" msgstr "tabeller från schema \"%s\" är inte en del av publiceringen" -#: commands/publicationcmds.c:2025 commands/publicationcmds.c:2032 +#: commands/publicationcmds.c:2030 commands/publicationcmds.c:2037 #, c-format msgid "permission denied to change owner of publication \"%s\"" msgstr "rättighet saknas för att byta ägare på publicering \"%s\"" -#: commands/publicationcmds.c:2027 +#: commands/publicationcmds.c:2032 #, c-format msgid "The owner of a FOR ALL TABLES publication must be a superuser." msgstr "Ägaren av en FOR ALL TABLES-publicering måste vara en superuser." -#: commands/publicationcmds.c:2034 +#: commands/publicationcmds.c:2039 #, c-format msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser." msgstr "Ägaren av en FOR TABLES IN SCHEMA-publicering måste vara en superuser." -#: commands/publicationcmds.c:2100 +#: commands/publicationcmds.c:2105 #, c-format msgid "publication with OID %u does not exist" msgstr "publicering med OID %u existerar inte" -#: commands/publicationcmds.c:2133 +#: commands/publicationcmds.c:2138 #, c-format msgid "invalid value for publication parameter \"%s\": \"%s\"" msgstr "ogiltigt värde för publiceringsparameter \"%s\": \"%s\"" -#: commands/publicationcmds.c:2134 +#: commands/publicationcmds.c:2139 #, c-format msgid "Valid values are \"%s\" and \"%s\"." msgstr "Giltiga värden är \"%s\" och \"%s\"." @@ -10313,8 +10335,8 @@ msgstr "tabellen måste vara i samma schema som tabellen den är länkad till" msgid "cannot change ownership of identity sequence" msgstr "kan inte byta ägare på identitetssekvens" -#: commands/sequence.c:1671 commands/tablecmds.c:16111 -#: commands/tablecmds.c:18949 +#: commands/sequence.c:1671 commands/tablecmds.c:16136 +#: commands/tablecmds.c:18974 #, c-format msgid "Sequence \"%s\" is linked to table \"%s\"." msgstr "Sekvens \"%s\" är länkad till tabell \"%s\"" @@ -10329,82 +10351,82 @@ msgstr "bara en enda relation tillåts i CREATE STATISTICS" msgid "cannot define statistics for relation \"%s\"" msgstr "kan inte definiera statistik för relationen \"%s\"" -#: commands/statscmds.c:187 +#: commands/statscmds.c:208 #, c-format msgid "statistics object \"%s\" already exists, skipping" msgstr "statistikobjekt \"%s\" finns redan, hoppar över" -#: commands/statscmds.c:195 +#: commands/statscmds.c:216 #, c-format msgid "statistics object \"%s\" already exists" msgstr "statistikobjekt \"%s\" finns redan" -#: commands/statscmds.c:206 +#: commands/statscmds.c:227 #, c-format msgid "cannot have more than %d columns in statistics" msgstr "kan inte ha mer än %d kolumner i statistiken" -#: commands/statscmds.c:247 commands/statscmds.c:276 commands/statscmds.c:316 +#: commands/statscmds.c:268 commands/statscmds.c:297 commands/statscmds.c:337 #, c-format msgid "statistics creation on system columns is not supported" msgstr "skapa statistik för systemkolumner stöds inte" -#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#: commands/statscmds.c:274 commands/statscmds.c:303 commands/statscmds.c:343 #, c-format msgid "statistics creation on virtual generated columns is not supported" msgstr "skapa statistik för genererade virtuella kolumner stöds inte" -#: commands/statscmds.c:260 commands/statscmds.c:289 +#: commands/statscmds.c:281 commands/statscmds.c:310 #, c-format msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class" msgstr "kolumnen \"%s\" kan inte användas i statistiken då dess typ %s inte har någon standard btree-operatorklass" -#: commands/statscmds.c:339 +#: commands/statscmds.c:360 #, c-format msgid "expression cannot be used in multivariate statistics because its type %s has no default btree operator class" msgstr "uttryck kan inte användas i multivariat statistik då dess type %s inte har någon default btree operatorklass" -#: commands/statscmds.c:360 +#: commands/statscmds.c:381 #, c-format msgid "when building statistics on a single expression, statistics kinds may not be specified" msgstr "vid skapande av statistik för ett ensamt uttryck så kan inte statistiktyp anges" -#: commands/statscmds.c:389 +#: commands/statscmds.c:410 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "okänd statistiktyp \"%s\"" -#: commands/statscmds.c:418 +#: commands/statscmds.c:439 #, c-format msgid "extended statistics require at least 2 columns" msgstr "utökad statistik kräver minst två kolumner" -#: commands/statscmds.c:436 +#: commands/statscmds.c:457 #, c-format msgid "duplicate column name in statistics definition" msgstr "duplicerade kolumnnamn i statistikdefinition" -#: commands/statscmds.c:471 +#: commands/statscmds.c:492 #, c-format msgid "duplicate expression in statistics definition" msgstr "duplicerade uttryck i statistikdefinition" -#: commands/statscmds.c:646 commands/tablecmds.c:8914 +#: commands/statscmds.c:667 commands/tablecmds.c:8939 #, c-format msgid "statistics target %d is too low" msgstr "statistikmålet %d är för lågt" -#: commands/statscmds.c:654 commands/tablecmds.c:8922 +#: commands/statscmds.c:675 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "minskar statistikmålet till %d" -#: commands/statscmds.c:678 +#: commands/statscmds.c:699 #, c-format msgid "statistics object \"%s.%s\" does not exist, skipping" msgstr "statistikobjekt \"%s.%s\" finns inte, hoppar över" -#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:410 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:415 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "okänt källvärde: \"%s\"" @@ -10616,7 +10638,7 @@ msgid "Verify that initial data copied from the publisher tables did not come fr msgstr "Kontrollera att den initiala datan som kopieras från publicerade tabeller inte kom från andra källor." #: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 -#: replication/pgoutput/pgoutput.c:1162 +#: replication/pgoutput/pgoutput.c:1189 #, c-format msgid "cannot use different column lists for table \"%s.%s\" in different publications" msgstr "kunde inte ha olika kolumnlistor för tabellen \"%s.%s\" i olika publiceringar" @@ -10713,7 +10735,7 @@ msgstr "materialiserad vy \"%s\" finns inte, hoppar över" msgid "Use DROP MATERIALIZED VIEW to remove a materialized view." msgstr "Använd DROP MATERIALIZED VIEW för att ta bort en materialiserad vy." -#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 +#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21651 #: parser/parse_utilcmd.c:2428 #, c-format msgid "index \"%s\" does not exist" @@ -10737,8 +10759,8 @@ msgstr "\"%s\" är inte en typ" msgid "Use DROP TYPE to remove a type." msgstr "Använd DROP TYPE för att ta bort en typ." -#: commands/tablecmds.c:294 commands/tablecmds.c:15950 -#: commands/tablecmds.c:18651 +#: commands/tablecmds.c:294 commands/tablecmds.c:15975 +#: commands/tablecmds.c:18676 #, c-format msgid "foreign table \"%s\" does not exist" msgstr "främmande tabell \"%s\" finns inte" @@ -10767,7 +10789,7 @@ msgstr "partitionerade tabeller kan inte vara ologgade" msgid "cannot create temporary table within security-restricted operation" msgstr "kan inte skapa temporär tabell i en säkerhetsbegränsad operation" -#: commands/tablecmds.c:875 commands/tablecmds.c:17375 +#: commands/tablecmds.c:875 commands/tablecmds.c:17400 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "relationen \"%s\" skulle ärvas mer än en gång" @@ -10792,7 +10814,7 @@ msgstr "kan inte skapa främmande partition för partitionerad tabell \"%s\"" msgid "Table \"%s\" contains indexes that are unique." msgstr "Tabell \"%s\" innehåller index som är unika." -#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14952 #, c-format msgid "too many array dimensions" msgstr "för många array-dimensioner" @@ -10843,7 +10865,7 @@ msgstr "kan inte trunkera främmande tabell \"%s\"" msgid "cannot truncate temporary tables of other sessions" msgstr "kan inte trunkera temporära tabeller tillhörande andra sessioner" -#: commands/tablecmds.c:2675 commands/tablecmds.c:17272 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17297 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "kan inte ärva från partitionerad tabell \"%s\"" @@ -10864,18 +10886,18 @@ msgstr "ärvd relation \"%s\" är inte en tabell eller främmande tabell" msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "kan inte skapa en temporär relation som partition till en permanent relation \"%s\"" -#: commands/tablecmds.c:2709 commands/tablecmds.c:17251 +#: commands/tablecmds.c:2709 commands/tablecmds.c:17276 #, c-format msgid "cannot inherit from temporary relation \"%s\"" msgstr "kan inte ärva från en temporär relation \"%s\"" -#: commands/tablecmds.c:2719 commands/tablecmds.c:17259 +#: commands/tablecmds.c:2719 commands/tablecmds.c:17284 #, c-format msgid "cannot inherit from temporary relation of another session" msgstr "kan inte ärva från en temporär relation i en annan session" #: commands/tablecmds.c:2874 commands/tablecmds.c:2928 -#: commands/tablecmds.c:14610 parser/parse_utilcmd.c:1440 +#: commands/tablecmds.c:14635 parser/parse_utilcmd.c:1440 #: parser/parse_utilcmd.c:1484 parser/parse_utilcmd.c:1916 #: parser/parse_utilcmd.c:2024 #, c-format @@ -10913,13 +10935,13 @@ msgid "A child table column cannot be generated unless its parent column is." msgstr "En barntabellkolumn kan inte vara genererad om inte dess förälderkolumn är det." #: commands/tablecmds.c:3072 commands/tablecmds.c:3366 -#: commands/tablecmds.c:17537 +#: commands/tablecmds.c:17562 #, c-format msgid "column \"%s\" inherits from generated column of different kind" msgstr "kolumnen \"%s\" ärver från genererad kolumn av annan typ" #: commands/tablecmds.c:3074 commands/tablecmds.c:3368 -#: commands/tablecmds.c:17538 +#: commands/tablecmds.c:17563 #, c-format msgid "Parent column is %s, child column is %s." msgstr "Föräldrakolumn är %s, barnkolumn är %s." @@ -10988,7 +11010,7 @@ msgid "column \"%s\" has a collation conflict" msgstr "kolumn \"%s\" har en jämförelsekonflikt" #: commands/tablecmds.c:3282 commands/tablecmds.c:3448 -#: commands/tablecmds.c:7277 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4792 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\" kontra \"%s\"" @@ -11191,12 +11213,12 @@ msgstr "kan inte lägga till kolumn till typad tabell" msgid "cannot add column to a partition" msgstr "kan inte lägga till kolumn till partition" -#: commands/tablecmds.c:7269 commands/tablecmds.c:17493 +#: commands/tablecmds.c:7269 commands/tablecmds.c:17518 #, c-format msgid "child table \"%s\" has different type for column \"%s\"" msgstr "barntabell \"%s\" har annan typ på kolumn \"%s\"" -#: commands/tablecmds.c:7275 commands/tablecmds.c:17499 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17524 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "barntabell \"%s\" har annan jämförelse (collation) på kolumn \"%s\"" @@ -11228,17 +11250,17 @@ msgstr "kolumn \"%s\" i relation \"%s\" finns redan" #: commands/tablecmds.c:7769 commands/tablecmds.c:7936 #: commands/tablecmds.c:8137 commands/tablecmds.c:8268 -#: commands/tablecmds.c:8397 commands/tablecmds.c:8491 -#: commands/tablecmds.c:8594 commands/tablecmds.c:8790 -#: commands/tablecmds.c:8956 commands/tablecmds.c:9047 -#: commands/tablecmds.c:9181 commands/tablecmds.c:14382 -#: commands/tablecmds.c:15973 commands/tablecmds.c:18740 +#: commands/tablecmds.c:8422 commands/tablecmds.c:8516 +#: commands/tablecmds.c:8619 commands/tablecmds.c:8815 +#: commands/tablecmds.c:8981 commands/tablecmds.c:9072 +#: commands/tablecmds.c:9206 commands/tablecmds.c:14407 +#: commands/tablecmds.c:15998 commands/tablecmds.c:18765 #, c-format msgid "cannot alter system column \"%s\"" msgstr "kan inte ändra systemkolumn \"%s\"" #: commands/tablecmds.c:7775 commands/tablecmds.c:8143 -#: commands/tablecmds.c:14143 +#: commands/tablecmds.c:14168 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "kolumn \"%s\" i relation \"%s\" är en identitetskolumn" @@ -11248,14 +11270,14 @@ msgstr "kolumn \"%s\" i relation \"%s\" är en identitetskolumn" msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "kolumn \"%s\" är markerad NOT NULL i föräldratabellen" -#: commands/tablecmds.c:8014 commands/tablecmds.c:9988 +#: commands/tablecmds.c:8014 commands/tablecmds.c:10013 #, c-format msgid "constraint must be added to child tables too" msgstr "villkoret måste läggas till i barntabellerna också" #: commands/tablecmds.c:8015 commands/tablecmds.c:8246 -#: commands/tablecmds.c:8353 commands/tablecmds.c:8470 -#: commands/tablecmds.c:9354 commands/tablecmds.c:12182 +#: commands/tablecmds.c:8378 commands/tablecmds.c:8495 +#: commands/tablecmds.c:9379 commands/tablecmds.c:12207 #, c-format msgid "Do not specify the ONLY keyword." msgstr "Ange inte nyckelordet ONLY." @@ -11280,1018 +11302,1011 @@ msgstr "kan inte lägga till identitet för kolumn i en partition" msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added" msgstr "kolumn \"%s\" i relation \"%s\" måste deklareras NOT NULL innan identitet kan läggas till" -#: commands/tablecmds.c:8285 +#: commands/tablecmds.c:8310 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "kolumn \"%s\" i relation \"%s\" är redan en identitetskolumn" -#: commands/tablecmds.c:8291 +#: commands/tablecmds.c:8316 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "kolumn \"%s\" i relation \"%s\" har redan ett standardvärde" -#: commands/tablecmds.c:8352 +#: commands/tablecmds.c:8377 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "kan inte ändra identitetskolumn för bara den partitionerade tabellen" -#: commands/tablecmds.c:8358 +#: commands/tablecmds.c:8383 #, c-format msgid "cannot change identity column of a partition" msgstr "kan inte ändra identitetskolumn för en partition" -#: commands/tablecmds.c:8403 commands/tablecmds.c:8499 +#: commands/tablecmds.c:8428 commands/tablecmds.c:8524 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column" msgstr "kolumn \"%s\" i relation \"%s\" är inte en identitetkolumn" -#: commands/tablecmds.c:8469 +#: commands/tablecmds.c:8494 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "kan inte slänga identitetskolumn från bara den partitionerade tabellen" -#: commands/tablecmds.c:8475 +#: commands/tablecmds.c:8500 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "kan inte slänga identitetskolumn för en partition" -#: commands/tablecmds.c:8504 +#: commands/tablecmds.c:8529 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "kolumn \"%s\" i relation \"%s\" är inte en identitetkolumn, hoppar över" -#: commands/tablecmds.c:8601 commands/tablecmds.c:8811 +#: commands/tablecmds.c:8626 commands/tablecmds.c:8836 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column" msgstr "kolumn \"%s\" i relation \"%s\" är inte en genererad kolumn" -#: commands/tablecmds.c:8612 +#: commands/tablecmds.c:8637 #, c-format msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables with check constraints" msgstr "ALTER TABLE / SET EXPRESSION stöds inte för genererade virtuella kolumner i tabeller med check-villkort" -#: commands/tablecmds.c:8613 commands/tablecmds.c:8631 -#: commands/tablecmds.c:8803 +#: commands/tablecmds.c:8638 commands/tablecmds.c:8656 +#: commands/tablecmds.c:8828 #, c-format msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." msgstr "Kolumn \"%s\" i relation \"%s\" är en genererad virtuell kolumn" -#: commands/tablecmds.c:8630 +#: commands/tablecmds.c:8655 #, c-format msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables that are part of a publication" msgstr "ALTER TABLE / SET EXPRESSION stöds inte på genererade virtuella kolumner i tabeller som är del av en publicering" -#: commands/tablecmds.c:8737 +#: commands/tablecmds.c:8762 #, c-format msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" msgstr "ALTER TABLE / DROP EXPRESSION måste appliceras på barntabellerna också" -#: commands/tablecmds.c:8759 +#: commands/tablecmds.c:8784 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "kan inte slänga genererat uttryck på ärvd kolumn" -#: commands/tablecmds.c:8802 +#: commands/tablecmds.c:8827 #, c-format msgid "ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" msgstr "ALTER TABLE / DROP EXPRESSION stöds inte för genererade virtuella kolumner" -#: commands/tablecmds.c:8816 +#: commands/tablecmds.c:8841 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "kolumn \"%s\" i relation \"%s\" är inte en genererad kolumn, hoppar över" -#: commands/tablecmds.c:8894 +#: commands/tablecmds.c:8919 #, c-format msgid "cannot refer to non-index column by number" msgstr "kan inte referera per nummer till en icke-index-kolumn " -#: commands/tablecmds.c:8946 +#: commands/tablecmds.c:8971 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "kolumnnummer %d i relation \"%s\" finns inte" -#: commands/tablecmds.c:8966 +#: commands/tablecmds.c:8991 #, c-format msgid "cannot alter statistics on virtual generated column \"%s\"" msgstr "kan inte ändra statistik på genererad virtuell kolumn \"%s\"" -#: commands/tablecmds.c:8975 +#: commands/tablecmds.c:9000 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "kan inte ändra statistik på inkluderad kolumn \"%s\" i index \"%s\"" -#: commands/tablecmds.c:8980 +#: commands/tablecmds.c:9005 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "kan inte ändra statistik på icke-villkorskolumn \"%s\" i index \"%s\"" -#: commands/tablecmds.c:8982 +#: commands/tablecmds.c:9007 #, c-format msgid "Alter statistics on table column instead." msgstr "Ändra statistik på tabellkolumn istället." -#: commands/tablecmds.c:9228 +#: commands/tablecmds.c:9253 #, c-format msgid "cannot drop column from typed table" msgstr "kan inte ta bort kolumn från typad tabell" -#: commands/tablecmds.c:9292 +#: commands/tablecmds.c:9317 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "kolumn \"%s\" i relation \"%s\" finns inte, hoppar över" -#: commands/tablecmds.c:9305 +#: commands/tablecmds.c:9330 #, c-format msgid "cannot drop system column \"%s\"" msgstr "kan inte ta bort systemkolumn \"%s\"" -#: commands/tablecmds.c:9315 +#: commands/tablecmds.c:9340 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "kan inte ta bort ärvd kolumn \"%s\"" -#: commands/tablecmds.c:9328 +#: commands/tablecmds.c:9353 #, c-format msgid "cannot drop column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "kan inte slänga kolumnen \"%s\" då den är del av partitionsnyckeln för relationen \"%s\"" -#: commands/tablecmds.c:9353 +#: commands/tablecmds.c:9378 #, c-format msgid "cannot drop column from only the partitioned table when partitions exist" msgstr "kan inte slänga kolumn från bara den partitionerade tabellen när partitioner finns" -#: commands/tablecmds.c:9518 +#: commands/tablecmds.c:9543 #, c-format msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" msgstr "kolumn \"%s\" i tabell \"%s\" är inte markerad NOT NULL" -#: commands/tablecmds.c:9554 commands/tablecmds.c:9566 +#: commands/tablecmds.c:9579 commands/tablecmds.c:9591 #, c-format msgid "cannot create primary key on column \"%s\"" msgstr "kan inte skapa primärnyckel på kolumn \"%s\"" #. translator: fourth %s is a constraint characteristic such as NOT VALID -#: commands/tablecmds.c:9556 commands/tablecmds.c:9568 +#: commands/tablecmds.c:9581 commands/tablecmds.c:9593 #, c-format msgid "The constraint \"%s\" on column \"%s\" of table \"%s\", marked %s, is incompatible with a primary key." msgstr "Villkoret \"%s\" på kolumn \"%s\" i tabell \"%s\", markerad %s, är inkompatibel med en primärnyckel." -#: commands/tablecmds.c:9692 +#: commands/tablecmds.c:9717 #, c-format msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned tables" msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX stöds inte på partionerade tabeller" -#: commands/tablecmds.c:9717 +#: commands/tablecmds.c:9742 #, c-format msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\"" msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX kommer byta namn på index \"%s\" till \"%s\"" -#: commands/tablecmds.c:10075 +#: commands/tablecmds.c:10100 #, c-format msgid "cannot use ONLY for foreign key on partitioned table \"%s\" referencing relation \"%s\"" msgstr "kan inte använda ONLY på främmande nyckel för partitionerad tabell \"%s\" som refererar till relationen \"%s\"" -#: commands/tablecmds.c:10083 commands/tablecmds.c:10710 +#: commands/tablecmds.c:10108 commands/tablecmds.c:10735 #, c-format msgid "referenced relation \"%s\" is not a table" msgstr "refererad relation \"%s\" är inte en tabell" -#: commands/tablecmds.c:10106 +#: commands/tablecmds.c:10131 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "villkor på permanenta tabeller får bara referera till permanenta tabeller" -#: commands/tablecmds.c:10113 +#: commands/tablecmds.c:10138 #, c-format msgid "constraints on unlogged tables may reference only permanent or unlogged tables" msgstr "villkor på ologgade tabeller får bara referera till permanenta eller ologgade tabeller" -#: commands/tablecmds.c:10119 +#: commands/tablecmds.c:10144 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "villkor på temporära tabeller får bara referera till temporära tabeller" -#: commands/tablecmds.c:10123 +#: commands/tablecmds.c:10148 #, c-format msgid "constraints on temporary tables must involve temporary tables of this session" msgstr "villkor på temporära tabeller får bara ta med temporära tabeller från denna session" -#: commands/tablecmds.c:10138 commands/tablecmds.c:10166 +#: commands/tablecmds.c:10163 commands/tablecmds.c:10191 #, c-format msgid "foreign key uses PERIOD on the referenced table but not the referencing table" msgstr "främmande nyckek använder PERIOD på den refererade tabellen men inte på den refererande tabellen" -#: commands/tablecmds.c:10178 +#: commands/tablecmds.c:10203 #, c-format msgid "foreign key uses PERIOD on the referencing table but not the referenced table" msgstr "främmande nyckel använder PERIOD på den refererande tabellen men inte på den refererade tabellen" -#: commands/tablecmds.c:10192 +#: commands/tablecmds.c:10217 #, c-format msgid "foreign key must use PERIOD when referencing a primary key using WITHOUT OVERLAPS" msgstr "främmande nyckel måste använda PERIOD när den refererar en primärnyckel som använder WITHOUT OVERLAPS" -#: commands/tablecmds.c:10216 commands/tablecmds.c:10222 +#: commands/tablecmds.c:10241 commands/tablecmds.c:10247 #, c-format msgid "invalid %s action for foreign key constraint containing generated column" msgstr "ogiltig %s-aktion för främmande nyckelvillkor som innehåller genererad kolumn" -#: commands/tablecmds.c:10237 +#: commands/tablecmds.c:10262 #, c-format msgid "foreign key constraints on virtual generated columns are not supported" msgstr "främmande nyckel-villkor på genererade virtuella kolumner stöds inte" -#: commands/tablecmds.c:10251 commands/tablecmds.c:10260 +#: commands/tablecmds.c:10276 commands/tablecmds.c:10285 #, c-format msgid "unsupported %s action for foreign key constraint using PERIOD" msgstr "inget stöd för %s-aktion för främmande nyckelvillkor som använder PERIOD" -#: commands/tablecmds.c:10275 +#: commands/tablecmds.c:10300 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "antalet refererande och refererade kolumner för främmande nyckel stämmer ej överens" -#: commands/tablecmds.c:10331 +#: commands/tablecmds.c:10356 #, c-format msgid "could not identify an overlaps operator for foreign key" msgstr "kunde inte hitta en överlappningsoperator för främmande nyckel" -#: commands/tablecmds.c:10332 +#: commands/tablecmds.c:10357 #, c-format msgid "could not identify an equality operator for foreign key" msgstr "kunde inte hitta en likhetsoperator för främmande nyckel" -#: commands/tablecmds.c:10397 commands/tablecmds.c:10431 +#: commands/tablecmds.c:10422 commands/tablecmds.c:10456 #, c-format msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "främmande nyckelvillkor \"%s\" kan inte implementeras" -#: commands/tablecmds.c:10399 +#: commands/tablecmds.c:10424 #, c-format msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table are of incompatible types: %s and %s." msgstr "Nyckelkolumner \"%s\" i den refererande tabellen och \"%s\" i den refererade tabellen har inkompatibla typer: %s och %s." -#: commands/tablecmds.c:10432 +#: commands/tablecmds.c:10457 #, c-format msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table have incompatible collations: \"%s\" and \"%s\". If either collation is nondeterministic, then both collations have to be the same." msgstr "Nyckelkolumner \"%s\" i den refererande tabellen och \"%s\" i den refererade tabellen har inkompatibla jämförelser (collation): \"%s\" samt \"%s\". Om någon av jämförelsena är ickedeterministisk så måste båda jämförelsena vara samma." -#: commands/tablecmds.c:10638 +#: commands/tablecmds.c:10663 #, c-format msgid "column \"%s\" referenced in ON DELETE SET action must be part of foreign key" msgstr "kolumn \"%s\" refererad i ON DELETE SET-aktion måste vara en del av en främmande nyckel" -#: commands/tablecmds.c:11022 commands/tablecmds.c:11455 +#: commands/tablecmds.c:11047 commands/tablecmds.c:11480 #: parser/parse_utilcmd.c:941 parser/parse_utilcmd.c:1086 #, c-format msgid "foreign key constraints are not supported on foreign tables" msgstr "främmande nyckel-villkor stöds inte för främmande tabeller" -#: commands/tablecmds.c:11438 +#: commands/tablecmds.c:11463 #, c-format msgid "cannot attach table \"%s\" as a partition because it is referenced by foreign key \"%s\"" msgstr "kan inte ansluta tabell \"%s\" som en partition då den refereras av främmande nyckel \"%s\"" -#: commands/tablecmds.c:11719 +#: commands/tablecmds.c:11744 #, c-format msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" msgstr "framtvingandestatus för villkor \"%s\" står i konflikt villkoret \"%s\" i relationen \"%s\"" -#: commands/tablecmds.c:12181 +#: commands/tablecmds.c:12206 #, c-format msgid "constraint must be altered in child tables too" msgstr "villkoret måste ändras för barntabellerna också" -#: commands/tablecmds.c:12210 commands/tablecmds.c:12907 -#: commands/tablecmds.c:14022 commands/tablecmds.c:14251 +#: commands/tablecmds.c:12235 commands/tablecmds.c:12932 +#: commands/tablecmds.c:14047 commands/tablecmds.c:14276 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist" msgstr "villkor \"%s\" i relation \"%s\" finns inte" -#: commands/tablecmds.c:12217 +#: commands/tablecmds.c:12242 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "villkor \"%s\" i relation \"%s\" är inte ett främmande nyckelvillkor" -#: commands/tablecmds.c:12222 +#: commands/tablecmds.c:12247 #, c-format msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" msgstr "kan inte ändra framtvingande för villkoret \"%s\" i relation \"%s\"" -#: commands/tablecmds.c:12228 +#: commands/tablecmds.c:12253 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" msgstr "villkor \"%s\" i relation \"%s\" är inte ett icke-null-villkor" -#: commands/tablecmds.c:12236 +#: commands/tablecmds.c:12261 #, c-format msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" msgstr "kan inte ändra ärvt villkor \"%s\" i relation \"%s\"" -#: commands/tablecmds.c:12276 +#: commands/tablecmds.c:12301 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "kan inte ändra villkoret \"%s\" i relation \"%s\"" -#: commands/tablecmds.c:12279 +#: commands/tablecmds.c:12304 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "Villkoret \"%s\" är härlett från villkoret \"%s\" i relation \"%s\"" -#: commands/tablecmds.c:12281 +#: commands/tablecmds.c:12306 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "Du kan istället ändra på villkoret det är härlett från." -#: commands/tablecmds.c:12916 +#: commands/tablecmds.c:12941 #, c-format msgid "cannot validate constraint \"%s\" of relation \"%s\"" msgstr "kan inte validera villkoret \"%s\" i relation \"%s\"" -#: commands/tablecmds.c:12918 +#: commands/tablecmds.c:12943 #, c-format msgid "This operation is not supported for this type of constraint." msgstr "Denna operation stöds inte för denna sorts villkor." -#: commands/tablecmds.c:12923 +#: commands/tablecmds.c:12948 #, c-format msgid "cannot validate NOT ENFORCED constraint" msgstr "kan inte validera NOT ENFORCED-villkor" -#: commands/tablecmds.c:13132 commands/tablecmds.c:13232 +#: commands/tablecmds.c:13157 commands/tablecmds.c:13257 #, c-format msgid "constraint must be validated on child tables too" msgstr "villkoret måste valideras för barntabellerna också" -#: commands/tablecmds.c:13309 +#: commands/tablecmds.c:13334 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "kolumn \"%s\" som refereras till i främmande nyckelvillkor finns inte" -#: commands/tablecmds.c:13315 +#: commands/tablecmds.c:13340 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "systemkolumner kan inte användas i främmande nycklar" -#: commands/tablecmds.c:13319 +#: commands/tablecmds.c:13344 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "kan inte ha mer än %d nycklar i en främmande nyckel" -#: commands/tablecmds.c:13387 +#: commands/tablecmds.c:13412 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "kan inte använda en \"deferrable\" primärnyckel för refererad tabell \"%s\"" -#: commands/tablecmds.c:13404 +#: commands/tablecmds.c:13429 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "det finns ingen primärnyckel för refererad tabell \"%s\"" -#: commands/tablecmds.c:13477 +#: commands/tablecmds.c:13502 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "främmande nyckel-refererade kolumnlistor får inte innehålla duplikat" -#: commands/tablecmds.c:13580 +#: commands/tablecmds.c:13605 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "kan inte använda ett \"deferrable\" unikt integritetsvillkor för refererad tabell \"%s\"" -#: commands/tablecmds.c:13585 +#: commands/tablecmds.c:13610 #, c-format msgid "there is no unique constraint matching given keys for referenced table \"%s\"" msgstr "finns inget unique-villkor som matchar de givna nycklarna i den refererade tabellen \"%s\"" -#: commands/tablecmds.c:14026 +#: commands/tablecmds.c:14051 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" msgstr "villkor \"%s\" i relation \"%s\" finns inte, hoppar över" -#: commands/tablecmds.c:14071 +#: commands/tablecmds.c:14096 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "kan inte ta bort ärvt villkor \"%s\" i relation \"%s\"" -#: commands/tablecmds.c:14123 +#: commands/tablecmds.c:14148 #, c-format msgid "column \"%s\" is in a primary key" msgstr "kolumn \"%s\" är del av en primärnyckel" -#: commands/tablecmds.c:14131 +#: commands/tablecmds.c:14156 #, c-format msgid "column \"%s\" is in index used as replica identity" msgstr "kolumnen \"%s\" finns i ett index som används som replikaidentitet" -#: commands/tablecmds.c:14364 +#: commands/tablecmds.c:14389 #, c-format msgid "cannot alter column type of typed table" msgstr "kan inte ändra kolumntyp på typad tabell" -#: commands/tablecmds.c:14392 +#: commands/tablecmds.c:14417 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "kan inte ange USING när man ändrar typ på en genererad kolumn" -#: commands/tablecmds.c:14393 commands/tablecmds.c:19799 -#: commands/tablecmds.c:19892 commands/trigger.c:660 -#: rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 -#, c-format -msgid "Column \"%s\" is a generated column." -msgstr "Kolumnen \"%s\" är en genererad kolumn." - -#: commands/tablecmds.c:14404 +#: commands/tablecmds.c:14429 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "kan inte ändra ärvd kolumn \"%s\"" -#: commands/tablecmds.c:14413 +#: commands/tablecmds.c:14438 #, c-format msgid "cannot alter column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "kan inte ändra kolumnen \"%s\" då den är del av partitionsnyckeln för relationen \"%s\"" -#: commands/tablecmds.c:14468 +#: commands/tablecmds.c:14493 #, c-format msgid "result of USING clause for column \"%s\" cannot be cast automatically to type %s" msgstr "resultatet av USING-klausul för kolumn \"%s\" kan inte automatiskt typomvandlas till typen %s" -#: commands/tablecmds.c:14471 +#: commands/tablecmds.c:14496 #, c-format msgid "You might need to add an explicit cast." msgstr "Du kan behöva lägga till en explicit typomvandling." -#: commands/tablecmds.c:14475 +#: commands/tablecmds.c:14500 #, c-format msgid "column \"%s\" cannot be cast automatically to type %s" msgstr "kolumn \"%s\" kan inte automatiskt typomvandlas till typ %s" #. translator: USING is SQL, don't translate it -#: commands/tablecmds.c:14479 +#: commands/tablecmds.c:14504 #, c-format msgid "You might need to specify \"USING %s::%s\"." msgstr "Du kan behöva ange \"USING %s::%s\"." -#: commands/tablecmds.c:14582 +#: commands/tablecmds.c:14607 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "kan inte ändra ärvd kolumn \"%s\" i relation \"%s\"" -#: commands/tablecmds.c:14611 +#: commands/tablecmds.c:14636 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "USING-uttryck innehåller en hela-raden-tabellreferens." -#: commands/tablecmds.c:14622 +#: commands/tablecmds.c:14647 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "typen av den ärvda kolumnen \"%s\" måste ändras i barntabellerna också" -#: commands/tablecmds.c:14747 +#: commands/tablecmds.c:14772 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "kan inte ändra typen på kolumn \"%s\" två gånger" -#: commands/tablecmds.c:14785 +#: commands/tablecmds.c:14810 #, c-format msgid "generation expression for column \"%s\" cannot be cast automatically to type %s" msgstr "genereringsuttryck för kolumn \"%s\" kan inte automatiskt typomvandlas till typ %s" -#: commands/tablecmds.c:14790 +#: commands/tablecmds.c:14815 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "\"default\" för kolumn \"%s\" kan inte automatiskt typomvandlas till typ \"%s\"" -#: commands/tablecmds.c:15094 +#: commands/tablecmds.c:15119 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "kan inte ändra typ på en kolumn som används av en funktion eller procedur" -#: commands/tablecmds.c:15095 commands/tablecmds.c:15110 -#: commands/tablecmds.c:15130 commands/tablecmds.c:15149 -#: commands/tablecmds.c:15208 +#: commands/tablecmds.c:15120 commands/tablecmds.c:15135 +#: commands/tablecmds.c:15155 commands/tablecmds.c:15174 +#: commands/tablecmds.c:15233 #, c-format msgid "%s depends on column \"%s\"" msgstr "%s beror på kolumn \"%s\"" -#: commands/tablecmds.c:15109 +#: commands/tablecmds.c:15134 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "kan inte ändra typ på en kolumn som används av en vy eller en regel" -#: commands/tablecmds.c:15129 +#: commands/tablecmds.c:15154 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "kan inte ändra typ på en kolumn som används i en triggerdefinition" -#: commands/tablecmds.c:15148 +#: commands/tablecmds.c:15173 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "kan inte ändra typ på en kolumn som används av i en policydefinition" -#: commands/tablecmds.c:15179 +#: commands/tablecmds.c:15204 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "kan inte ändra typ på en kolumn som används av en genererad kolumn" -#: commands/tablecmds.c:15180 +#: commands/tablecmds.c:15205 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "Kolumn \"%s\" används av genererad kolumn \"%s\"." -#: commands/tablecmds.c:15207 +#: commands/tablecmds.c:15232 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "kan inte ändra typ på en kolumn som används av en publicerings WHERE-klausul" -#: commands/tablecmds.c:16081 commands/tablecmds.c:16093 +#: commands/tablecmds.c:16106 commands/tablecmds.c:16118 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "kan inte byta ägare på index \"%s\"" -#: commands/tablecmds.c:16083 commands/tablecmds.c:16095 +#: commands/tablecmds.c:16108 commands/tablecmds.c:16120 #, c-format msgid "Change the ownership of the index's table instead." msgstr "Byt ägare på indexets tabell istället." -#: commands/tablecmds.c:16109 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "kan inte byta ägare på sekvens \"%s\"" -#: commands/tablecmds.c:16134 +#: commands/tablecmds.c:16159 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "kan inte byta ägare på relationen \"%s\"" -#: commands/tablecmds.c:16601 +#: commands/tablecmds.c:16626 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "kan inte ha flera underkommandon SET TABLESPACE" -#: commands/tablecmds.c:16680 +#: commands/tablecmds.c:16705 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "kan inte sätta inställningar på relationen \"%s\"" -#: commands/tablecmds.c:16714 commands/view.c:440 +#: commands/tablecmds.c:16739 commands/view.c:440 #, c-format msgid "WITH CHECK OPTION is supported only on automatically updatable views" msgstr "WITH CHECK OPTION stöds bara på automatiskt uppdateringsbara vyer" -#: commands/tablecmds.c:16967 +#: commands/tablecmds.c:16992 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "bara tabeller, index och materialiserade vyer finns i tablespace:er" -#: commands/tablecmds.c:16979 +#: commands/tablecmds.c:17004 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "kan inte flytta relationer in eller ut från tablespace pg_global" -#: commands/tablecmds.c:17071 +#: commands/tablecmds.c:17096 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "avbryter då lås på relation \"%s.%s\" inte är tillgängligt" -#: commands/tablecmds.c:17087 +#: commands/tablecmds.c:17112 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "inga matchande relationer i tablespace \"%s\" hittades" -#: commands/tablecmds.c:17209 +#: commands/tablecmds.c:17234 #, c-format msgid "cannot change inheritance of typed table" msgstr "kan inte ändra arv på en typad tabell" -#: commands/tablecmds.c:17214 commands/tablecmds.c:17798 +#: commands/tablecmds.c:17239 commands/tablecmds.c:17823 #, c-format msgid "cannot change inheritance of a partition" msgstr "kan inte ändra arv på en partition" -#: commands/tablecmds.c:17219 +#: commands/tablecmds.c:17244 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "kan inte ändra arv på en partitionerad tabell" -#: commands/tablecmds.c:17266 +#: commands/tablecmds.c:17291 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "kan inte ärva av en temporär tabell för en annan session" -#: commands/tablecmds.c:17279 +#: commands/tablecmds.c:17304 #, c-format msgid "cannot inherit from a partition" msgstr "kan inte ärva från en partition" -#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 +#: commands/tablecmds.c:17326 commands/tablecmds.c:20347 #, c-format msgid "circular inheritance not allowed" msgstr "cirkulärt arv är inte tillåtet" -#: commands/tablecmds.c:17302 commands/tablecmds.c:20313 +#: commands/tablecmds.c:17327 commands/tablecmds.c:20348 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "\"%s\" är redan ett barn till \"%s\"" -#: commands/tablecmds.c:17315 +#: commands/tablecmds.c:17340 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "trigger \"%s\" förhindrar tabell \"%s\" från att bli ett arvsbarn" -#: commands/tablecmds.c:17317 +#: commands/tablecmds.c:17342 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "ROW-triggrar med övergångstabeller stöds inte i arvshierarkier." -#: commands/tablecmds.c:17518 commands/tablecmds.c:17767 +#: commands/tablecmds.c:17543 commands/tablecmds.c:17792 #, c-format msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" msgstr "kolumn \"%s\" i barntabell \"%s\" måste vara markerad NOT NULL" -#: commands/tablecmds.c:17528 +#: commands/tablecmds.c:17553 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "kolumn \"%s\" i barntabell måste vara en genererad kolumn" -#: commands/tablecmds.c:17532 +#: commands/tablecmds.c:17557 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "kolumn \"%s\" i barntabell kan inte vara en genererad kolumn" -#: commands/tablecmds.c:17578 +#: commands/tablecmds.c:17603 #, c-format msgid "child table is missing column \"%s\"" msgstr "barntabell saknar kolumn \"%s\"" -#: commands/tablecmds.c:17695 +#: commands/tablecmds.c:17720 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "barntabell \"%s\" har annan definition av check-villkor \"%s\"" -#: commands/tablecmds.c:17704 +#: commands/tablecmds.c:17729 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "villkor \"%s\" står i konflikt med icke-ärvt villkor på barntabell \"%s\"" -#: commands/tablecmds.c:17715 +#: commands/tablecmds.c:17740 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "villkor \"%s\" står i konflikt med NOT VALID-villkor på barntabell \"%s\"" -#: commands/tablecmds.c:17726 +#: commands/tablecmds.c:17751 #, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" msgstr "villkor \"%s\" står i konflikt med NOT ENFORCED-villkor på barntabell \"%s\"" -#: commands/tablecmds.c:17775 +#: commands/tablecmds.c:17800 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "barntabell saknar riktighetsvillkor \"%s\"" -#: commands/tablecmds.c:17862 +#: commands/tablecmds.c:17887 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "partition \"%s\" har redan en pågående bortkoppling i partitionerad tabell \"%s.%s\"" -#: commands/tablecmds.c:17891 commands/tablecmds.c:17939 +#: commands/tablecmds.c:17916 commands/tablecmds.c:17964 #, c-format msgid "relation \"%s\" is not a partition of relation \"%s\"" msgstr "relationen \"%s\" är inte partition av relationen \"%s\"" -#: commands/tablecmds.c:17945 +#: commands/tablecmds.c:17970 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "relationen \"%s\" är inte en förälder till relationen \"%s\"" -#: commands/tablecmds.c:18216 +#: commands/tablecmds.c:18241 #, c-format msgid "typed tables cannot inherit" msgstr "typade tabeller kan inte ärva" -#: commands/tablecmds.c:18246 +#: commands/tablecmds.c:18271 #, c-format msgid "table is missing column \"%s\"" msgstr "tabell saknar kolumn \"%s\"" -#: commands/tablecmds.c:18257 +#: commands/tablecmds.c:18282 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "tabell har kolumn \"%s\" där typen kräver \"%s\"" -#: commands/tablecmds.c:18266 +#: commands/tablecmds.c:18291 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "tabell \"%s\" har annan typ på kolumn \"%s\"" -#: commands/tablecmds.c:18280 +#: commands/tablecmds.c:18305 #, c-format msgid "table has extra column \"%s\"" msgstr "tabell har extra kolumn \"%s\"" -#: commands/tablecmds.c:18332 +#: commands/tablecmds.c:18357 #, c-format msgid "\"%s\" is not a typed table" msgstr "\"%s\" är inte en typad tabell" -#: commands/tablecmds.c:18512 +#: commands/tablecmds.c:18537 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "kan inte använda icke-unikt index \"%s\" som replikaidentitet" -#: commands/tablecmds.c:18518 +#: commands/tablecmds.c:18543 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "kan inte använda icke-immediate-index \"%s\" som replikaidentitiet" -#: commands/tablecmds.c:18524 +#: commands/tablecmds.c:18549 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "kan inte använda uttrycksindex \"%s\" som replikaidentitiet" -#: commands/tablecmds.c:18530 +#: commands/tablecmds.c:18555 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "kan inte använda partiellt index \"%s\" som replikaidentitiet" -#: commands/tablecmds.c:18547 +#: commands/tablecmds.c:18572 #, c-format msgid "index \"%s\" cannot be used as replica identity because column %d is a system column" msgstr "index \"%s\" kan inte användas som replikaidentitet då kolumn %d är en systemkolumn" -#: commands/tablecmds.c:18554 +#: commands/tablecmds.c:18579 #, c-format msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable" msgstr "index \"%s\" kan inte användas som replikaidentitet då kolumn \"%s\" kan vare null" -#: commands/tablecmds.c:18803 +#: commands/tablecmds.c:18828 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "kan inte ändra loggningsstatus för tabell \"%s\" då den är temporär" -#: commands/tablecmds.c:18827 +#: commands/tablecmds.c:18852 #, c-format msgid "cannot change table \"%s\" to unlogged because it is part of a publication" msgstr "kan inte ändra tabell \"%s\" till ologgad då den är del av en publicering" -#: commands/tablecmds.c:18829 +#: commands/tablecmds.c:18854 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "Ologgade relatrioner kan inte replikeras." -#: commands/tablecmds.c:18874 +#: commands/tablecmds.c:18899 #, c-format msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\"" msgstr "kunde inte ändra tabell \"%s\" till loggad då den refererar till ologgad tabell \"%s\"" -#: commands/tablecmds.c:18884 +#: commands/tablecmds.c:18909 #, c-format msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\"" msgstr "kunde inte ändra tabell \"%s\" till ologgad då den refererar till loggad tabell \"%s\"" -#: commands/tablecmds.c:18948 +#: commands/tablecmds.c:18973 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "kan inte flytta en ägd sekvens till ett annan schema." -#: commands/tablecmds.c:19056 +#: commands/tablecmds.c:19081 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "relationen \"%s\" finns redan i schema \"%s\"" -#: commands/tablecmds.c:19481 +#: commands/tablecmds.c:19506 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "\"%s\" är inte en tabell eller materialiserad vy" -#: commands/tablecmds.c:19634 +#: commands/tablecmds.c:19659 #, c-format msgid "\"%s\" is not a composite type" msgstr "\"%s\" är inte en composite-typ" -#: commands/tablecmds.c:19664 +#: commands/tablecmds.c:19689 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "kan inte byta schema på indexet \"%s\"" -#: commands/tablecmds.c:19666 commands/tablecmds.c:19680 +#: commands/tablecmds.c:19691 commands/tablecmds.c:19705 #, c-format msgid "Change the schema of the table instead." msgstr "Byt ägare på tabellen istället." -#: commands/tablecmds.c:19670 +#: commands/tablecmds.c:19695 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "kan inte byta schema på composite-typen \"%s\"." -#: commands/tablecmds.c:19678 +#: commands/tablecmds.c:19703 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "kan inte byta schema på TOAST-tabellen \"%s\"" -#: commands/tablecmds.c:19710 +#: commands/tablecmds.c:19735 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "kan inte använda list-partioneringsstrategi med mer än en kolumn" -#: commands/tablecmds.c:19776 +#: commands/tablecmds.c:19801 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "kolumn \"%s\" angiven i partitioneringsnyckel existerar inte" -#: commands/tablecmds.c:19784 +#: commands/tablecmds.c:19809 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "kan inte använda systemkolumn \"%s\" i partitioneringsnyckel" -#: commands/tablecmds.c:19798 commands/tablecmds.c:19891 +#: commands/tablecmds.c:19823 commands/tablecmds.c:19905 #, c-format msgid "cannot use generated column in partition key" msgstr "kan inte använda genererad kolumn i partitioneringsnyckel" -#: commands/tablecmds.c:19871 +#: commands/tablecmds.c:19892 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "partitioneringsnyckeluttryck kan inte innehålla systemkolumnreferenser" -#: commands/tablecmds.c:19921 +#: commands/tablecmds.c:19956 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "funktioner i partitioneringsuttryck måste vara markerade IMMUTABLE" -#: commands/tablecmds.c:19930 +#: commands/tablecmds.c:19965 #, c-format msgid "cannot use constant expression as partition key" msgstr "kan inte använda konstant uttryck som partitioneringsnyckel" -#: commands/tablecmds.c:19951 +#: commands/tablecmds.c:19986 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "kunde inte lista vilken jämförelse (collation) som skulle användas för partitionsuttryck" -#: commands/tablecmds.c:19986 +#: commands/tablecmds.c:20021 #, c-format msgid "You must specify a hash operator class or define a default hash operator class for the data type." msgstr "Du måste ange en hash-operatorklass eller definiera en default hash-operatorklass för datatypen." -#: commands/tablecmds.c:19992 +#: commands/tablecmds.c:20027 #, c-format msgid "You must specify a btree operator class or define a default btree operator class for the data type." msgstr "Du måste ange en btree-operatorklass eller definiera en default btree-operatorklass för datatypen." -#: commands/tablecmds.c:20252 +#: commands/tablecmds.c:20287 #, c-format msgid "\"%s\" is already a partition" msgstr "\"%s\" är redan en partition" -#: commands/tablecmds.c:20258 +#: commands/tablecmds.c:20293 #, c-format msgid "cannot attach a typed table as partition" msgstr "kan inte ansluta en typad tabell som partition" -#: commands/tablecmds.c:20274 +#: commands/tablecmds.c:20309 #, c-format msgid "cannot attach inheritance child as partition" msgstr "kan inte ansluta ett arvsbarn som partition" -#: commands/tablecmds.c:20288 +#: commands/tablecmds.c:20323 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "kan inte ansluta en arvsförälder som partition" -#: commands/tablecmds.c:20322 +#: commands/tablecmds.c:20357 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "kan inte ansluta en temporär relation som partition till en permanent relation \"%s\"" -#: commands/tablecmds.c:20330 +#: commands/tablecmds.c:20365 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "kan inte ansluta en permanent relation som partition till en temporär relation \"%s\"" -#: commands/tablecmds.c:20338 +#: commands/tablecmds.c:20373 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "kan inte ansluta en partition från en temporär relation som tillhör en annan session" -#: commands/tablecmds.c:20345 +#: commands/tablecmds.c:20380 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "kan inte ansluta en temporär relation tillhörande en annan session som partition" -#: commands/tablecmds.c:20365 +#: commands/tablecmds.c:20400 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "tabell \"%s\" som ansluts innehåller en identitetskolumn \"%s\"" -#: commands/tablecmds.c:20367 +#: commands/tablecmds.c:20402 #, c-format msgid "The new partition may not contain an identity column." msgstr "Den nya partitionen får inte innehålla en identitetskolumn." -#: commands/tablecmds.c:20375 +#: commands/tablecmds.c:20410 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "tabell \"%s\" innehåller kolumn \"%s\" som inte finns i föräldern \"%s\"" -#: commands/tablecmds.c:20378 +#: commands/tablecmds.c:20413 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "Den nya partitionen får bara innehålla kolumner som finns i föräldern." -#: commands/tablecmds.c:20390 +#: commands/tablecmds.c:20425 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "trigger \"%s\" förhindrar att tabell \"%s\" blir en partition" -#: commands/tablecmds.c:20392 +#: commands/tablecmds.c:20427 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "ROW-triggrar med övergångstabeller stöds inte för partitioner." -#: commands/tablecmds.c:20574 +#: commands/tablecmds.c:20609 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "kan inte ansluta främmande tabell \"%s\" som en partition till partitionerad tabell \"%s\"" -#: commands/tablecmds.c:20577 +#: commands/tablecmds.c:20612 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "Partitionerad tabell \"%s\" innehåller unika index." -#: commands/tablecmds.c:20900 +#: commands/tablecmds.c:20936 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "kan inte parallellt koppla bort en partitionerad tabell när en default-partition finns" -#: commands/tablecmds.c:21009 +#: commands/tablecmds.c:21048 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "partitionerad tabell \"%s\" togs bort parallellt" -#: commands/tablecmds.c:21015 +#: commands/tablecmds.c:21054 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "partition \"%s\" togs bort parallellt" -#: commands/tablecmds.c:21646 commands/tablecmds.c:21666 -#: commands/tablecmds.c:21687 commands/tablecmds.c:21706 -#: commands/tablecmds.c:21755 +#: commands/tablecmds.c:21685 commands/tablecmds.c:21705 +#: commands/tablecmds.c:21726 commands/tablecmds.c:21745 +#: commands/tablecmds.c:21794 #, c-format msgid "cannot attach index \"%s\" as a partition of index \"%s\"" msgstr "kan inte ansluta index \"%s\" som en partition till index \"%s\"" -#: commands/tablecmds.c:21649 +#: commands/tablecmds.c:21688 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "Index \"%s\" är redan ansluten till ett annat index." -#: commands/tablecmds.c:21669 +#: commands/tablecmds.c:21708 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "Index \"%s\" är inte ett index för någon partition av tabell \"%s\"." -#: commands/tablecmds.c:21690 +#: commands/tablecmds.c:21729 #, c-format msgid "The index definitions do not match." msgstr "Indexdefinitionerna matchar inte." -#: commands/tablecmds.c:21709 +#: commands/tablecmds.c:21748 #, c-format msgid "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint exists for index \"%s\"." msgstr "Indexet \"%s\" tillhör ett villkor på tabell \"%s\" men det finns inga villkor för indexet \"%s\"." -#: commands/tablecmds.c:21758 +#: commands/tablecmds.c:21797 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "Ett annat index är redan anslutet för partition \"%s\"." -#: commands/tablecmds.c:21881 +#: commands/tablecmds.c:21920 #, c-format msgid "invalid primary key definition" msgstr "ogiltig definition av primärnyckel" -#: commands/tablecmds.c:21882 +#: commands/tablecmds.c:21921 #, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." msgstr "Kolumn \"%s\" i relation \"%s\" är inte markerad NOT NULL." -#: commands/tablecmds.c:22017 +#: commands/tablecmds.c:22056 #, c-format msgid "column data type %s does not support compression" msgstr "kolumndatatypen %s stöder inte komprimering" -#: commands/tablecmds.c:22024 +#: commands/tablecmds.c:22063 #, c-format msgid "invalid compression method \"%s\"" msgstr "ogiltig komprimeringsmetod \"%s\"" -#: commands/tablecmds.c:22050 +#: commands/tablecmds.c:22089 #, c-format msgid "invalid storage type \"%s\"" msgstr "ogiltig lagringstyp \"%s\"" -#: commands/tablecmds.c:22060 +#: commands/tablecmds.c:22099 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "kolumndatatyp %s kan bara ha lagringsmetod PLAIN" @@ -12666,8 +12681,8 @@ msgstr "kan inte samla in övergångstupler från främmande barntabeller" #: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 #: executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 -#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 -#: executor/nodeModifyTable.c:3502 +#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3322 +#: executor/nodeModifyTable.c:3514 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "Överväg att använda en AFTER-trigger istället för en BEFORE-trigger för att propagera ändringar till andra rader." @@ -12681,23 +12696,23 @@ msgid "could not serialize access due to concurrent update" msgstr "kunde inte serialisera åtkomst på grund av samtidig uppdatering" #: commands/trigger.c:3452 executor/nodeModifyTable.c:1793 -#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2834 -#: executor/nodeModifyTable.c:3349 +#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2826 +#: executor/nodeModifyTable.c:3340 #, c-format msgid "could not serialize access due to concurrent delete" msgstr "kunde inte serialisera åtkomst på grund av samtidig borttagning" -#: commands/trigger.c:4687 +#: commands/trigger.c:4671 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "kan inte trigga uppskjuten trigger i en säkerhetsbegränsad operation" -#: commands/trigger.c:5868 +#: commands/trigger.c:5889 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "integritetsvillkor \"%s\" är inte \"deferrable\"" -#: commands/trigger.c:5891 +#: commands/trigger.c:5912 #, c-format msgid "constraint \"%s\" does not exist" msgstr "integritetsvillkor \"%s\" existerar inte" @@ -13483,117 +13498,107 @@ msgstr "det finns beroende privilegier" msgid "Use CASCADE to revoke them too." msgstr "Använd CASCADE för att återkalla dem med." -#: commands/vacuum.c:147 +#: commands/vacuum.c:148 #, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "\"%s\" måste vara 0 eller mellan %d kB och %d kB" -#: commands/vacuum.c:223 +#: commands/vacuum.c:224 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "flaggan BUFFER_USAGE_LIMIT måste vara 0 eller mellan %d kB och %d kB" -#: commands/vacuum.c:233 -#, c-format -msgid "unrecognized ANALYZE option \"%s\"" -msgstr "okänd ANALYZE-flagga \"%s\"" - -#: commands/vacuum.c:273 +#: commands/vacuum.c:275 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "parallell-flaggan kräver ett värde mellan 0 och %d" -#: commands/vacuum.c:285 +#: commands/vacuum.c:287 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "parallella arbetare för vacuum måste vara mellan 0 och %d" -#: commands/vacuum.c:306 -#, c-format -msgid "unrecognized VACUUM option \"%s\"" -msgstr "okänd VACUUM-flagga \"%s\"" - -#: commands/vacuum.c:332 +#: commands/vacuum.c:335 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "'VACUUM FULL kan inte köras parallellt" -#: commands/vacuum.c:343 +#: commands/vacuum.c:346 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "BUFFER_USAGE_LIMIT kan inte anges för VACUUM FULL" -#: commands/vacuum.c:357 +#: commands/vacuum.c:360 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "ANALYZE-flaggan måste anges när en kolumnlista används" -#: commands/vacuum.c:369 +#: commands/vacuum.c:372 #, c-format msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL" msgstr "VACUUM-flagga DISABLE_PAGE_SKIPPING kan inte anges med FULL" -#: commands/vacuum.c:376 +#: commands/vacuum.c:379 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "PROCESS_TOAST krävs med VACUUM FULL" -#: commands/vacuum.c:385 +#: commands/vacuum.c:388 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables" msgstr "ONLY_DATABASE_STATS kan inte anges med en lista av tabeller" -#: commands/vacuum.c:394 +#: commands/vacuum.c:397 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STATS kan inte anges tillsammans med andra VACUUM-flaggor" -#: commands/vacuum.c:534 +#: commands/vacuum.c:537 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s kan inte köras från VACUUM eller ANALYZE" -#: commands/vacuum.c:756 +#: commands/vacuum.c:759 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "rättighet saknas för att städa \"%s\", hoppar över det" -#: commands/vacuum.c:769 +#: commands/vacuum.c:772 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "rättighet saknas för att analysera \"%s\", hoppar över det" -#: commands/vacuum.c:847 commands/vacuum.c:948 +#: commands/vacuum.c:850 commands/vacuum.c:951 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "hoppar över vacuum av \"%s\" --- lås ej tillgängligt" -#: commands/vacuum.c:852 +#: commands/vacuum.c:855 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "hoppar över vacuum av \"%s\" --- relationen finns inte längre" -#: commands/vacuum.c:868 commands/vacuum.c:953 +#: commands/vacuum.c:871 commands/vacuum.c:956 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "hoppar över analys av \"%s\" --- lås ej tillgängligt" -#: commands/vacuum.c:873 +#: commands/vacuum.c:876 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "hoppar över analys av \"%s\" --- relationen finns inte längre" -#: commands/vacuum.c:989 +#: commands/vacuum.c:992 #, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" msgstr "VACUUM ONLY för partitionerad tabell \"%s\" har ingen effekt" -#: commands/vacuum.c:1180 +#: commands/vacuum.c:1183 #, c-format msgid "cutoff for removing and freezing tuples is far in the past" msgstr "gräns för borttagning och frysande av tupler är i dåtid" -#: commands/vacuum.c:1181 commands/vacuum.c:1186 +#: commands/vacuum.c:1184 commands/vacuum.c:1189 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -13602,37 +13607,37 @@ msgstr "" "Stäng öppna transaktioner för att undvika problem med wraparound.\n" "Du kan också behöva commit:a eller rulla tillbaka gamla förberedda transaktiooner alternativt slänga stillastående replikeringsslottar." -#: commands/vacuum.c:1185 +#: commands/vacuum.c:1188 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "gräns för frysning av multixact är från dåtid" -#: commands/vacuum.c:1947 +#: commands/vacuum.c:1950 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "några databaser har inte städats (vacuum) på över 2 miljarder transaktioner" -#: commands/vacuum.c:1948 +#: commands/vacuum.c:1951 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "Du kan redan ha fått dataförlust på grund av transaktions-wraparound." -#: commands/vacuum.c:2134 +#: commands/vacuum.c:2143 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "hoppar över \"%s\" --- kan inte köra vacuum på icke-tabeller eller speciella systemtabeller" -#: commands/vacuum.c:2650 +#: commands/vacuum.c:2659 #, c-format msgid "scanned index \"%s\" to remove % row versions" msgstr "genomsökte index \"%s\" för att ta bort % radversioner" -#: commands/vacuum.c:2669 +#: commands/vacuum.c:2678 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "index \"%s\" innehåller nu %.0f radversioner i %u sidor" -#: commands/vacuum.c:2673 +#: commands/vacuum.c:2682 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -13898,7 +13903,7 @@ msgstr "Fråga levererar ett värde för en borttagen kolumn vid position %d." msgid "Table has type %s at ordinal position %d, but query expects %s." msgstr "Tabellen har typ %s vid position %d, men frågan förväntar sig %s." -#: executor/execExpr.c:1157 parser/parse_agg.c:869 +#: executor/execExpr.c:1157 parser/parse_agg.c:896 #, c-format msgid "window function calls cannot be nested" msgstr "fönsterfunktionanrop kan inte nästlas" @@ -13927,12 +13932,12 @@ msgstr[1] "kan inte överföra mer än %d argument till en funktion" msgid "set-valued function called in context that cannot accept a set" msgstr "en funktion som returnerar en mängd anropades i kontext som inte godtar en mängd" -#: executor/execExpr.c:3262 parser/parse_node.c:272 parser/parse_node.c:322 +#: executor/execExpr.c:3264 parser/parse_node.c:272 parser/parse_node.c:322 #, c-format msgid "cannot subscript type %s because it does not support subscripting" msgstr "kan inte använda array-index på typ %s då den inte stöder array-index" -#: executor/execExpr.c:3390 executor/execExpr.c:3412 +#: executor/execExpr.c:3392 executor/execExpr.c:3414 #, c-format msgid "type %s does not support subscripted assignment" msgstr "typen %s stöder inte tilldelning med array-index" @@ -14087,139 +14092,139 @@ msgstr "Nyckel står i konflikt med existerande nyckel." msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "tomt WITHOUT OVERLAPS-värde hittat i kolumn \"%s\" i relationen \"%s\"" -#: executor/execMain.c:1085 +#: executor/execMain.c:1089 #, c-format msgid "cannot change sequence \"%s\"" msgstr "kan inte ändra sekvens \"%s\"" -#: executor/execMain.c:1091 +#: executor/execMain.c:1095 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "kan inte ändra TOAST-relation \"%s\"" -#: executor/execMain.c:1110 +#: executor/execMain.c:1114 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "kan inte ändra materialiserad vy \"%s\"" -#: executor/execMain.c:1122 +#: executor/execMain.c:1126 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "kan inte sätta in i främmande tabell \"%s\"" -#: executor/execMain.c:1128 +#: executor/execMain.c:1132 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "främmande tabell \"%s\" tillåter inte insättningar" -#: executor/execMain.c:1135 +#: executor/execMain.c:1139 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "kan inte uppdatera främmande tabell \"%s\"" -#: executor/execMain.c:1141 +#: executor/execMain.c:1145 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "främmande tabell \"%s\" tillåter inte uppdateringar" -#: executor/execMain.c:1148 +#: executor/execMain.c:1152 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "kan inte radera från främmande tabell \"%s\"" -#: executor/execMain.c:1154 +#: executor/execMain.c:1158 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "främmande tabell \"%s\" tillåter inte radering" -#: executor/execMain.c:1165 +#: executor/execMain.c:1169 #, c-format msgid "cannot change relation \"%s\"" msgstr "kan inte ändra relation \"%s\"" -#: executor/execMain.c:1192 +#: executor/execMain.c:1196 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "kan inte låsa rader i sekvens \"%s\"" -#: executor/execMain.c:1199 +#: executor/execMain.c:1203 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "kan inte låsa rader i TOAST-relation \"%s\"" -#: executor/execMain.c:1206 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "kan inte låsa rader i vy \"%s\"" -#: executor/execMain.c:1214 +#: executor/execMain.c:1218 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "kan inte låsa rader i materialiserad vy \"%s\"" -#: executor/execMain.c:1223 executor/execMain.c:2855 +#: executor/execMain.c:1227 executor/execMain.c:2869 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "kan inte låsa rader i främmande tabell \"%s\"" -#: executor/execMain.c:1229 +#: executor/execMain.c:1233 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "kan inte låsa rader i relation \"%s\"" -#: executor/execMain.c:1952 +#: executor/execMain.c:1966 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "ny rad för relation \"%s\" bryter mot partitionesvillkoret" -#: executor/execMain.c:1954 executor/execMain.c:2066 executor/execMain.c:2204 -#: executor/execMain.c:2312 +#: executor/execMain.c:1968 executor/execMain.c:2080 executor/execMain.c:2218 +#: executor/execMain.c:2326 #, c-format msgid "Failing row contains %s." msgstr "Misslyckande rad innehåller %s." -#: executor/execMain.c:2064 +#: executor/execMain.c:2078 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "ny rad för relation \"%s\" bryter mot check-villkor \"%s\"" -#: executor/execMain.c:2201 +#: executor/execMain.c:2215 #, c-format msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "null-värde i kolumn \"%s\" i relation \"%s\" bryter mot not-null-villkoret" -#: executor/execMain.c:2310 +#: executor/execMain.c:2324 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "ny rad bryter mot check-villkor för vy \"%s\"" -#: executor/execMain.c:2320 +#: executor/execMain.c:2334 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "ny rad bryter mot radsäkerhetspolicy \"%s\" i tabell \"%s\"" -#: executor/execMain.c:2325 +#: executor/execMain.c:2339 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "ny rad bryter mot radsäkerhetspolicy i tabell \"%s\"" -#: executor/execMain.c:2333 +#: executor/execMain.c:2347 #, c-format msgid "target row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "målraden bryter mot radsäkerhetspolicyen \"%s\" (USING-uttryck) i tabellen \"%s\"" -#: executor/execMain.c:2338 +#: executor/execMain.c:2352 #, c-format msgid "target row violates row-level security policy (USING expression) for table \"%s\"" msgstr "målraden bryter mot radsäkerhetspolicyn (USING-uttryck) i tabellen \"%s\"" -#: executor/execMain.c:2345 +#: executor/execMain.c:2359 #, c-format msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "ny rad bryter mot radsäkerhetspolicy \"%s\" (USING-uttryck) i tabell \"%s\"" -#: executor/execMain.c:2350 +#: executor/execMain.c:2364 #, c-format msgid "new row violates row-level security policy (USING expression) for table \"%s\"" msgstr "ny rad bryter mot radsäkerhetspolicy (USING-uttryck) i tabell \"%s\"" @@ -14454,7 +14459,7 @@ msgstr "returtyp %s stöds inte för SQL-funktioner" msgid "aggregate %u needs to have compatible input type and transition type" msgstr "aggregat %u måste ha kompatibel indatatyp och övergångstyp" -#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:692 parser/parse_agg.c:735 #, c-format msgid "aggregate function calls cannot be nested" msgstr "aggregatfunktionsanrop kan inte nästlas" @@ -14535,8 +14540,8 @@ msgid "Consider defining the foreign key on table \"%s\"." msgstr "Överväg att skapa den främmande nyckeln på tabellen \"%s\"." #. translator: %s is a SQL command name -#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 -#: executor/nodeModifyTable.c:3508 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3328 +#: executor/nodeModifyTable.c:3520 #, c-format msgid "%s command cannot affect row a second time" msgstr "%s-kommandot kan inte påverka raden en andra gång" @@ -14546,17 +14551,17 @@ msgstr "%s-kommandot kan inte påverka raden en andra gång" msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values." msgstr "Säkerställ att inga rader föreslagna för \"insert\" inom samma kommando har upprepade villkorsvärden." -#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 +#: executor/nodeModifyTable.c:3321 executor/nodeModifyTable.c:3513 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "tupel som skall uppdateras eller raderas hade redan ändrats av en operation som triggats av aktuellt kommando" -#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3522 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "Säkerställ att inte mer än en källrad matchar någon målrad." -#: executor/nodeModifyTable.c:3408 +#: executor/nodeModifyTable.c:3399 #, c-format msgid "tuple to be merged was already moved to another partition due to concurrent update" msgstr "tupel som skall slås samman har redan flyttats till en annan partition på grund av samtidig update" @@ -14678,7 +14683,7 @@ msgstr "kan inte öppna %s-fråga som markör" msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported" msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE stöds inte" -#: executor/spi.c:1719 parser/analyze.c:3076 +#: executor/spi.c:1719 parser/analyze.c:3077 #, c-format msgid "Scrollable cursors must be READ ONLY." msgstr "Scrollbara markörer måste vara READ ONLY." @@ -14719,7 +14724,7 @@ msgstr "kunde inte skicka tupel till kö i delat minne: %m" msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "användarmappning hittades inte för användare \"%s\", server \"%s\"" -#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7299 #: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" @@ -17401,7 +17406,7 @@ msgstr "relationen \"%s\" har ingen composite-typ" #: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2602 #: parser/parse_coerce.c:2740 parser/parse_coerce.c:2787 -#: parser/parse_expr.c:2120 parser/parse_func.c:710 parser/parse_oper.c:869 +#: parser/parse_expr.c:2130 parser/parse_func.c:710 parser/parse_oper.c:869 #: utils/adt/array_userfuncs.c:1950 utils/fmgr/funcapi.c:669 #, c-format msgid "could not find array type for data type %s" @@ -17422,8 +17427,8 @@ msgstr "ej namngiven portal med parametrar: %s" msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "FULL JOIN stöds bara med villkor som är merge-joinbara eller hash-joinbara" -#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7321 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1692 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "kan inte utföra MERGE på relation \"%s\"" @@ -17435,44 +17440,44 @@ msgid "%s cannot be applied to the nullable side of an outer join" msgstr "%s kan inte appliceras på den nullbara sidan av en outer join" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 -#: parser/analyze.c:3395 +#: optimizer/plan/planner.c:1512 parser/analyze.c:1815 parser/analyze.c:2074 +#: parser/analyze.c:3396 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s tillåts inte med UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 #, c-format msgid "could not implement GROUP BY" msgstr "kunde inte implementera GROUP BY" -#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 -#: optimizer/plan/planner.c:4806 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2259 optimizer/plan/planner.c:4145 +#: optimizer/plan/planner.c:4826 optimizer/prep/prepunion.c:1073 #, c-format msgid "Some of the datatypes only support hashing, while others only support sorting." msgstr "Några av datatyperna stöder bara hash:ning medan andra bara stöder sortering." -#: optimizer/plan/planner.c:4805 +#: optimizer/plan/planner.c:4825 #, c-format msgid "could not implement DISTINCT" msgstr "kunde inte implementera DISTINCT" -#: optimizer/plan/planner.c:6267 +#: optimizer/plan/planner.c:6322 #, c-format msgid "could not implement window PARTITION BY" msgstr "kunde inte implementera fönster-PARTITION BY" -#: optimizer/plan/planner.c:6268 +#: optimizer/plan/planner.c:6323 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Fönsterpartitioneringskolumner måsta ha en sorterbar datatyp." -#: optimizer/plan/planner.c:6272 +#: optimizer/plan/planner.c:6327 #, c-format msgid "could not implement window ORDER BY" msgstr "kunde inte implementera fönster-ORDER BY" -#: optimizer/plan/planner.c:6273 +#: optimizer/plan/planner.c:6328 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Fönsterordningskolumner måste ha en sorterbar datatyp." @@ -17503,7 +17508,7 @@ msgstr "attribut \"%s\" i relation \"%s\" matchar inte förälderns typ" msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" msgstr "attribut \"%s\" i relation \"%s\" matchar inte föräldens jämförelser (collation)" -#: optimizer/util/clauses.c:4968 +#: optimizer/util/clauses.c:4965 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "SQL-funktion \"%s\" vid inline:ing" @@ -17513,22 +17518,22 @@ msgstr "SQL-funktion \"%s\" vid inline:ing" msgid "cannot access temporary or unlogged relations during recovery" msgstr "kan inte accessa temporära eller ologgade relationer under återställning" -#: optimizer/util/plancat.c:771 +#: optimizer/util/plancat.c:776 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "inferens av unikt index för hel rad stöds inte" -#: optimizer/util/plancat.c:788 +#: optimizer/util/plancat.c:793 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "villkor för ON CONFLICT-klausul har inget associerat index" -#: optimizer/util/plancat.c:838 +#: optimizer/util/plancat.c:843 #, c-format msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints" msgstr "ON CONFLICT DO UPDATE stöds inte med uteslutningsvillkor" -#: optimizer/util/plancat.c:955 +#: optimizer/util/plancat.c:960 #, c-format msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification" msgstr "finns inget unik eller uteslutningsvillkor som matchar ON CONFLICT-specifikationen" @@ -17559,7 +17564,7 @@ msgid "SELECT ... INTO is not allowed here" msgstr "SELECT ... INTO tillåts inte här" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:1717 parser/analyze.c:3627 +#: parser/analyze.c:1717 parser/analyze.c:3628 #, c-format msgid "%s cannot be applied to VALUES" msgstr "%s kan inte appliceras på VÄRDEN" @@ -17628,467 +17633,477 @@ msgid "variable \"%s\" is of type %s but expression is of type %s" msgstr "variabeln \"%s\" har typ %s men uttrycket har typ %s" #. translator: %s is a SQL keyword -#: parser/analyze.c:3026 parser/analyze.c:3034 +#: parser/analyze.c:3027 parser/analyze.c:3035 #, c-format msgid "cannot specify both %s and %s" msgstr "kan inte ange både %s och %s" -#: parser/analyze.c:3054 +#: parser/analyze.c:3055 #, c-format msgid "DECLARE CURSOR must not contain data-modifying statements in WITH" msgstr "DECLARE CURSOR får inte innehålla datamodifierande satser i WITH" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3062 +#: parser/analyze.c:3063 #, c-format msgid "DECLARE CURSOR WITH HOLD ... %s is not supported" msgstr "DECLARE CURSOR WITH HOLD ... %s stöds inte" -#: parser/analyze.c:3065 +#: parser/analyze.c:3066 #, c-format msgid "Holdable cursors must be READ ONLY." msgstr "Hållbara markörer måste vara READ ONLY." #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3073 +#: parser/analyze.c:3074 #, c-format msgid "DECLARE SCROLL CURSOR ... %s is not supported" msgstr "DECLARE SCROLL CURSOR ... %s stöds inte" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3084 +#: parser/analyze.c:3085 #, c-format msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid" msgstr "DECLARE INSENSITIVE CURSOR ... %s är inte giltig" -#: parser/analyze.c:3087 +#: parser/analyze.c:3088 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "Okänsliga markörer måste vara READ ONLY." -#: parser/analyze.c:3181 +#: parser/analyze.c:3182 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "materialiserade vyer får inte innehålla datamodifierande satser i WITH" -#: parser/analyze.c:3191 +#: parser/analyze.c:3192 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "materialiserade vyer får inte använda temporära tabeller eller vyer" -#: parser/analyze.c:3201 +#: parser/analyze.c:3202 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "materialiserade vyer kan inte defineras med bundna parametrar" -#: parser/analyze.c:3213 +#: parser/analyze.c:3214 #, c-format msgid "materialized views cannot be unlogged" msgstr "materialiserad vyer kan inte vara ologgade" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3402 +#: parser/analyze.c:3403 #, c-format msgid "%s is not allowed with DISTINCT clause" msgstr "%s tillåts inte med DISTINCT-klausul" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3409 +#: parser/analyze.c:3410 #, c-format msgid "%s is not allowed with GROUP BY clause" msgstr "%s tillåts inte med GROUP BY-klausul" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3416 +#: parser/analyze.c:3417 #, c-format msgid "%s is not allowed with HAVING clause" msgstr "%s tillåts inte med HAVING-klausul" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3423 +#: parser/analyze.c:3424 #, c-format msgid "%s is not allowed with aggregate functions" msgstr "%s tillåts inte med aggregatfunktioner" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3430 +#: parser/analyze.c:3431 #, c-format msgid "%s is not allowed with window functions" msgstr "%s tillåts inte med fönsterfunktioner" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3437 +#: parser/analyze.c:3438 #, c-format msgid "%s is not allowed with set-returning functions in the target list" msgstr "%s tillåts inte med mängdreturnerande funktioner i mållistan" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3536 +#: parser/analyze.c:3537 #, c-format msgid "%s must specify unqualified relation names" msgstr "%s: måste ange okvalificerade relationsnamn" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3600 +#: parser/analyze.c:3601 #, c-format msgid "%s cannot be applied to a join" msgstr "%s kan inte appliceras på en join" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3609 +#: parser/analyze.c:3610 #, c-format msgid "%s cannot be applied to a function" msgstr "%s kan inte appliceras på en funktion" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3618 +#: parser/analyze.c:3619 #, c-format msgid "%s cannot be applied to a table function" msgstr "%s kan inte appliceras på tabellfunktion" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3636 +#: parser/analyze.c:3637 #, c-format msgid "%s cannot be applied to a WITH query" msgstr "%s kan inte appliceras på en WITH-fråga" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3645 +#: parser/analyze.c:3646 #, c-format msgid "%s cannot be applied to a named tuplestore" msgstr "%s kan inte appliceras på en namngiven tupellagring" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3665 +#: parser/analyze.c:3666 #, c-format msgid "relation \"%s\" in %s clause not found in FROM clause" msgstr "relationen \"%s\" i %s-klausul hittades inte i FROM-klausul" -#: parser/parse_agg.c:215 parser/parse_oper.c:215 +#: parser/parse_agg.c:218 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" msgstr "kunde inte hitta en ordningsoperator för typ %s" -#: parser/parse_agg.c:217 +#: parser/parse_agg.c:220 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "Aggregat med DISTINCT måste kunna sortera sina indata." -#: parser/parse_agg.c:275 +#: parser/parse_agg.c:278 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPING måste ha färre än 32 argument" -#: parser/parse_agg.c:378 +#: parser/parse_agg.c:382 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "aggregatfunktioner tillåts inte i JOIN-villkor" -#: parser/parse_agg.c:380 +#: parser/parse_agg.c:384 msgid "grouping operations are not allowed in JOIN conditions" msgstr "gruppoperationer tillåts inte i JOIN-villkor" -#: parser/parse_agg.c:390 +#: parser/parse_agg.c:394 msgid "aggregate functions are not allowed in FROM clause of their own query level" msgstr "aggregatfunktioner tillåts inte i FROM-klausul på sin egen frågenivå" -#: parser/parse_agg.c:392 +#: parser/parse_agg.c:396 msgid "grouping operations are not allowed in FROM clause of their own query level" msgstr "gruppoperationer tillåts inte i FROM-klausul på sin egen frågenivå" -#: parser/parse_agg.c:397 +#: parser/parse_agg.c:401 msgid "aggregate functions are not allowed in functions in FROM" msgstr "aggregatfunktioner tillåts inte i funktioner i FROM" -#: parser/parse_agg.c:399 +#: parser/parse_agg.c:403 msgid "grouping operations are not allowed in functions in FROM" msgstr "gruppoperationer tillåts inte i funktioner i FROM" -#: parser/parse_agg.c:407 +#: parser/parse_agg.c:411 msgid "aggregate functions are not allowed in policy expressions" msgstr "aggregatfunktioner tillåts inte i policyuttryck" -#: parser/parse_agg.c:409 +#: parser/parse_agg.c:413 msgid "grouping operations are not allowed in policy expressions" msgstr "gruppoperationer tillåts inte i policyuttryck" -#: parser/parse_agg.c:426 +#: parser/parse_agg.c:430 msgid "aggregate functions are not allowed in window RANGE" msgstr "aggregatfunktioner tillåts inte i fönster-RANGE" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:432 msgid "grouping operations are not allowed in window RANGE" msgstr "grupperingsoperationer tillåts inte i fönster-RANGE" -#: parser/parse_agg.c:433 +#: parser/parse_agg.c:437 msgid "aggregate functions are not allowed in window ROWS" msgstr "aggregatfunktioner tillåts inte i fönster-RADER" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:439 msgid "grouping operations are not allowed in window ROWS" msgstr "grupperingsfunktioner tillåts inte i fönster-RADER" -#: parser/parse_agg.c:440 +#: parser/parse_agg.c:444 msgid "aggregate functions are not allowed in window GROUPS" msgstr "aggregatfunktioner tillåts inte i fönster-GROUPS" -#: parser/parse_agg.c:442 +#: parser/parse_agg.c:446 msgid "grouping operations are not allowed in window GROUPS" msgstr "grupperingsfunktioner tillåts inte i fönster-GROUPS" -#: parser/parse_agg.c:455 +#: parser/parse_agg.c:459 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "aggregatfunktioner tillåts inte i MERGE WHEN-villkor" -#: parser/parse_agg.c:457 +#: parser/parse_agg.c:461 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "gruppoperationer tillåts inte i MERGE WHEN-villkor" -#: parser/parse_agg.c:484 +#: parser/parse_agg.c:488 msgid "aggregate functions are not allowed in check constraints" msgstr "aggregatfunktioner tillåts inte i check-villkor" -#: parser/parse_agg.c:486 +#: parser/parse_agg.c:490 msgid "grouping operations are not allowed in check constraints" msgstr "gruppoperationer tillåts inte i check-villkor" -#: parser/parse_agg.c:493 +#: parser/parse_agg.c:497 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "aggregatfunktioner tillåts inte i DEFAULT-uttryck" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:499 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "grupperingsoperationer tillåts inte i DEFAULT-uttryck" -#: parser/parse_agg.c:500 +#: parser/parse_agg.c:504 msgid "aggregate functions are not allowed in index expressions" msgstr "aggregatfunktioner tillåts inte i indexuttryck" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:506 msgid "grouping operations are not allowed in index expressions" msgstr "gruppoperationer tillåts inte i indexuttryck" -#: parser/parse_agg.c:507 +#: parser/parse_agg.c:511 msgid "aggregate functions are not allowed in index predicates" msgstr "aggregatfunktionsanrop tillåts inte i indexpredikat" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:513 msgid "grouping operations are not allowed in index predicates" msgstr "gruppoperationer tillåts inte i indexpredikat" -#: parser/parse_agg.c:514 +#: parser/parse_agg.c:518 msgid "aggregate functions are not allowed in statistics expressions" msgstr "aggregatfunktioner tillåts inte i statistikuttryck" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:520 msgid "grouping operations are not allowed in statistics expressions" msgstr "gruppoperationer tillåts inte i statistikuttryck" -#: parser/parse_agg.c:521 +#: parser/parse_agg.c:525 msgid "aggregate functions are not allowed in transform expressions" msgstr "aggregatfunktioner tillåts inte i transform-uttryck" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:527 msgid "grouping operations are not allowed in transform expressions" msgstr "gruppoperationer tillåts inte i transforme-uttryck" -#: parser/parse_agg.c:528 +#: parser/parse_agg.c:532 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "aggregatfunktioner tillåts inte i EXECUTE-parametrar" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:534 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "gruppoperationer tillåts inte i EXECUTE-parametrar" -#: parser/parse_agg.c:535 +#: parser/parse_agg.c:539 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "aggregatfunktioner tillåts inte i WHEN-villkor" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:541 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "gruppoperationer tillåts inte i WHEN-villkor" -#: parser/parse_agg.c:542 +#: parser/parse_agg.c:546 msgid "aggregate functions are not allowed in partition bound" msgstr "aggregatfunktioner tillåts inte i partitionsgräns" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:548 msgid "grouping operations are not allowed in partition bound" msgstr "gruppoperationer tillåts inte i partitionsgräns" -#: parser/parse_agg.c:549 +#: parser/parse_agg.c:553 msgid "aggregate functions are not allowed in partition key expressions" msgstr "aggregatfunktioner tillåts inte i partitionsnyckeluttryck" -#: parser/parse_agg.c:551 +#: parser/parse_agg.c:555 msgid "grouping operations are not allowed in partition key expressions" msgstr "gruppoperationer tillåts inte i partitionsnyckeluttryck" -#: parser/parse_agg.c:557 +#: parser/parse_agg.c:561 msgid "aggregate functions are not allowed in column generation expressions" msgstr "aggregatfunktioner tillåts inte i kolumngenereringsuttryck" -#: parser/parse_agg.c:559 +#: parser/parse_agg.c:563 msgid "grouping operations are not allowed in column generation expressions" msgstr "gruppoperationer tillåts inte i kolumngenereringsuttryck" -#: parser/parse_agg.c:565 +#: parser/parse_agg.c:569 msgid "aggregate functions are not allowed in CALL arguments" msgstr "aggregatfunktioner tillåts inte i CALL-argument" -#: parser/parse_agg.c:567 +#: parser/parse_agg.c:571 msgid "grouping operations are not allowed in CALL arguments" msgstr "gruppoperationer tillåts inte i CALL-argument" -#: parser/parse_agg.c:573 +#: parser/parse_agg.c:577 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "aggregatfunktioner tillåts inte i COPY FROM WHERE-villkor" -#: parser/parse_agg.c:575 +#: parser/parse_agg.c:579 msgid "grouping operations are not allowed in COPY FROM WHERE conditions" msgstr "gruppoperationer tillåts inte i COPY FROM WHERE-villkor" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:602 parser/parse_clause.c:1962 +#: parser/parse_agg.c:606 parser/parse_clause.c:1962 #, c-format msgid "aggregate functions are not allowed in %s" msgstr "aggregatfunktioner tillåts inte i %s" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:605 +#: parser/parse_agg.c:609 #, c-format msgid "grouping operations are not allowed in %s" msgstr "gruppoperationer tillåts inte i %s" -#: parser/parse_agg.c:706 +#: parser/parse_agg.c:705 parser/parse_agg.c:742 +#, c-format +msgid "outer-level aggregate cannot use a nested CTE" +msgstr "aggregat på yttre nivå kan inte använda en nästlad CTE" + +#: parser/parse_agg.c:706 parser/parse_agg.c:743 +#, c-format +msgid "CTE \"%s\" is below the aggregate's semantic level." +msgstr "CTE \"%s\" är under aggregatets semantiska nivå." + +#: parser/parse_agg.c:728 #, c-format msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments" msgstr "yttre aggregat kan inte innehålla inre variabel i sitt direkta argument" -#: parser/parse_agg.c:784 +#: parser/parse_agg.c:813 #, c-format msgid "aggregate function calls cannot contain set-returning function calls" msgstr "aggregatfunktionsanrop kan inte innehålla mängdreturnerande funktionsanrop" -#: parser/parse_agg.c:785 parser/parse_expr.c:1762 parser/parse_expr.c:2255 +#: parser/parse_agg.c:814 parser/parse_expr.c:1772 parser/parse_expr.c:2265 #: parser/parse_func.c:885 #, c-format msgid "You might be able to move the set-returning function into a LATERAL FROM item." msgstr "Du kanske kan flytta den mängdreturnerande funktionen in i en LATERAL FROM-konstruktion." -#: parser/parse_agg.c:790 +#: parser/parse_agg.c:819 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "aggregatfunktionsanrop kan inte innehålla fönsterfunktionanrop" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:922 msgid "window functions are not allowed in JOIN conditions" msgstr "fönsterfunktioner tillåts inte i JOIN-villkor" -#: parser/parse_agg.c:902 +#: parser/parse_agg.c:929 msgid "window functions are not allowed in functions in FROM" msgstr "fönsterfunktioner tillåts inte i funktioner i FROM" -#: parser/parse_agg.c:908 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in policy expressions" msgstr "fönsterfunktioner tillåts inte i policy-uttryck" -#: parser/parse_agg.c:921 +#: parser/parse_agg.c:948 msgid "window functions are not allowed in window definitions" msgstr "fönsterfunktioner tillåts inte i fönsterdefinitioner" -#: parser/parse_agg.c:932 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "fönsterfunktioner tillåts inte i MERGE WHEN-villkor" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:984 msgid "window functions are not allowed in check constraints" msgstr "fönsterfunktioner tillåts inte i check-villkor" -#: parser/parse_agg.c:961 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in DEFAULT expressions" msgstr "fönsterfunktioner tillåts inte i DEFAULT-uttryck" -#: parser/parse_agg.c:964 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in index expressions" msgstr "fönsterfunktioner tillåts inte i indexuttryck" -#: parser/parse_agg.c:967 +#: parser/parse_agg.c:994 msgid "window functions are not allowed in statistics expressions" msgstr "fönsterfunktioner tillåts inte i statistikuttryck" -#: parser/parse_agg.c:970 +#: parser/parse_agg.c:997 msgid "window functions are not allowed in index predicates" msgstr "fönsterfunktioner tillåts inte i indexpredikat" -#: parser/parse_agg.c:973 +#: parser/parse_agg.c:1000 msgid "window functions are not allowed in transform expressions" msgstr "fönsterfunktioner tillåts inte i transform-uttrycket" -#: parser/parse_agg.c:976 +#: parser/parse_agg.c:1003 msgid "window functions are not allowed in EXECUTE parameters" msgstr "fönsterfunktioner tillåts inte i EXECUTE-parametrar" -#: parser/parse_agg.c:979 +#: parser/parse_agg.c:1006 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "fönsterfunktioner tillåts inte i WHEN-villkor" -#: parser/parse_agg.c:982 +#: parser/parse_agg.c:1009 msgid "window functions are not allowed in partition bound" msgstr "fönsterfunktioner tillåts inte i partitiongräns" -#: parser/parse_agg.c:985 +#: parser/parse_agg.c:1012 msgid "window functions are not allowed in partition key expressions" msgstr "fönsterfunktioner tillåts inte i partitionsnyckeluttryck" -#: parser/parse_agg.c:988 +#: parser/parse_agg.c:1015 msgid "window functions are not allowed in CALL arguments" msgstr "fönsterfunktioner tillåts inte i CALL-argument" -#: parser/parse_agg.c:991 +#: parser/parse_agg.c:1018 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "fönsterfunktioner tillåts inte i COPY FROM WHERE-villkor" -#: parser/parse_agg.c:994 +#: parser/parse_agg.c:1021 msgid "window functions are not allowed in column generation expressions" msgstr "fönsterfunktioner tillåts inte i kolumngenereringsuttryck" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:1017 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1044 parser/parse_clause.c:1971 #, c-format msgid "window functions are not allowed in %s" msgstr "fönsterfunktioner tillåts inte i %s" -#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1078 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "fönster \"%s\" finns inte" -#: parser/parse_agg.c:1141 +#: parser/parse_agg.c:1168 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "för många grupperingsmängder (maximalt 4096)" -#: parser/parse_agg.c:1302 +#: parser/parse_agg.c:1329 #, c-format msgid "aggregate functions are not allowed in a recursive query's recursive term" msgstr "aggregatfunktioner tillåts inte i en rekursiv frågas rekursiva term" -#: parser/parse_agg.c:1525 +#: parser/parse_agg.c:1552 #, c-format msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function" msgstr "kolumn \"%s.%s\" måste stå med i GROUP BY-klausulen eller användas i en aggregatfunktion" -#: parser/parse_agg.c:1528 +#: parser/parse_agg.c:1555 #, c-format msgid "Direct arguments of an ordered-set aggregate must use only grouped columns." msgstr "Direkta argument till en sorterad-mängd-aggregat får bara använda grupperade kolumner." -#: parser/parse_agg.c:1533 +#: parser/parse_agg.c:1560 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "underfråga använder ogrupperad kolumn \"%s.%s\" från yttre fråga" -#: parser/parse_agg.c:1698 +#: parser/parse_agg.c:1725 #, c-format msgid "arguments to GROUPING must be grouping expressions of the associated query level" msgstr "argument till GROUPING måste vare grupputtryck på den tillhörande frågenivån" @@ -18366,8 +18381,8 @@ msgstr "Typomvandla offset-värdet till exakt den önskade typen." #: parser/parse_coerce.c:1048 parser/parse_coerce.c:1086 #: parser/parse_coerce.c:1104 parser/parse_coerce.c:1119 -#: parser/parse_expr.c:2154 parser/parse_expr.c:2774 parser/parse_expr.c:3425 -#: parser/parse_expr.c:3654 parser/parse_target.c:1001 +#: parser/parse_expr.c:2164 parser/parse_expr.c:2784 parser/parse_expr.c:3435 +#: parser/parse_expr.c:3664 parser/parse_target.c:1001 #, c-format msgid "cannot cast type %s to %s" msgstr "kan inte omvandla typ %s till %s" @@ -18707,326 +18722,326 @@ msgstr "FOR UPDATE/SHARE i en rekursiv fråga är inte implementerat" msgid "recursive reference to query \"%s\" must not appear more than once" msgstr "rekursiv referens till fråga \"%s\" får inte finnas med mer än en gång" -#: parser/parse_expr.c:311 +#: parser/parse_expr.c:312 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "DEFAULT tillåts inte i detta kontext" -#: parser/parse_expr.c:404 parser/parse_relation.c:3797 +#: parser/parse_expr.c:405 parser/parse_relation.c:3797 #: parser/parse_relation.c:3807 parser/parse_relation.c:3825 #: parser/parse_relation.c:3832 parser/parse_relation.c:3846 #, c-format msgid "column %s.%s does not exist" msgstr "kolumnen %s.%s finns inte" -#: parser/parse_expr.c:416 +#: parser/parse_expr.c:417 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "kolumn \"%s\" fanns inte i datatypen %s" -#: parser/parse_expr.c:422 +#: parser/parse_expr.c:423 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "kunde inte hitta kolumnen \"%s\" i record-datatyp" -#: parser/parse_expr.c:428 +#: parser/parse_expr.c:429 #, c-format msgid "column notation .%s applied to type %s, which is not a composite type" msgstr "kolumnotation .%s använd på typ %s som inte är en sammanslagen typ" -#: parser/parse_expr.c:459 parser/parse_target.c:735 +#: parser/parse_expr.c:460 parser/parse_target.c:735 #, c-format msgid "row expansion via \"*\" is not supported here" msgstr "radexpansion via \"*\" stöds inte här" -#: parser/parse_expr.c:582 +#: parser/parse_expr.c:583 msgid "cannot use column reference in DEFAULT expression" msgstr "kan inte använda kolumnreferenser i DEFAULT-uttryck" -#: parser/parse_expr.c:585 +#: parser/parse_expr.c:586 msgid "cannot use column reference in partition bound expression" msgstr "kan inte använda kolumnreferenser i partitionsgränsuttryck" -#: parser/parse_expr.c:844 parser/parse_relation.c:848 +#: parser/parse_expr.c:845 parser/parse_relation.c:848 #: parser/parse_relation.c:930 parser/parse_target.c:1241 #, c-format msgid "column reference \"%s\" is ambiguous" msgstr "kolumnreferens \"%s\" är tvetydig" -#: parser/parse_expr.c:900 parser/parse_param.c:111 parser/parse_param.c:143 +#: parser/parse_expr.c:901 parser/parse_param.c:111 parser/parse_param.c:143 #: parser/parse_param.c:205 parser/parse_param.c:304 #, c-format msgid "there is no parameter $%d" msgstr "det finns ingen parameter $%d" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1101 parser/parse_expr.c:3085 +#: parser/parse_expr.c:1102 parser/parse_expr.c:3095 #, c-format msgid "%s requires = operator to yield boolean" msgstr "%s kräver att operatorn = returnerar boolean" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1107 parser/parse_expr.c:3092 +#: parser/parse_expr.c:1108 parser/parse_expr.c:3102 #, c-format msgid "%s must not return a set" msgstr "%s får inte returnera en mängd" -#: parser/parse_expr.c:1395 +#: parser/parse_expr.c:1405 #, c-format msgid "MERGE_ACTION() can only be used in the RETURNING list of a MERGE command" msgstr "MERGE_ACTION() kan bara användas i RETURNING-listan för ett MERGE-kommando" -#: parser/parse_expr.c:1519 parser/parse_expr.c:1551 +#: parser/parse_expr.c:1529 parser/parse_expr.c:1561 #, c-format msgid "number of columns does not match number of values" msgstr "antalet kolumner matchar inte antalet värden" -#: parser/parse_expr.c:1565 +#: parser/parse_expr.c:1575 #, c-format msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() expression" msgstr "källa till en multiple-kolumn-UPDATE-post måste vara en sub-SELECT eller ROW()-uttryck" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_expr.c:1760 parser/parse_expr.c:2253 parser/parse_func.c:2679 +#: parser/parse_expr.c:1770 parser/parse_expr.c:2263 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "mängdreturnerande funktioner tillåts inte i %s" -#: parser/parse_expr.c:1824 +#: parser/parse_expr.c:1834 msgid "cannot use subquery in check constraint" msgstr "kan inte använda subfråga i check-villkor" -#: parser/parse_expr.c:1828 +#: parser/parse_expr.c:1838 msgid "cannot use subquery in DEFAULT expression" msgstr "kan inte använda underfråga i DEFAULT-uttryck" -#: parser/parse_expr.c:1831 +#: parser/parse_expr.c:1841 msgid "cannot use subquery in index expression" msgstr "kan inte använda subfråga i indexuttryck" -#: parser/parse_expr.c:1834 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in index predicate" msgstr "kan inte använda subfråga i indexpredikat" -#: parser/parse_expr.c:1837 +#: parser/parse_expr.c:1847 msgid "cannot use subquery in statistics expression" msgstr "kan inte använda underfråga i statistikuttryck" -#: parser/parse_expr.c:1840 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in transform expression" msgstr "kan inte använda underfråga i transformeringsuttrycket" -#: parser/parse_expr.c:1843 +#: parser/parse_expr.c:1853 msgid "cannot use subquery in EXECUTE parameter" msgstr "kan inte använda subfråga i EXECUTE-parameter" -#: parser/parse_expr.c:1846 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in trigger WHEN condition" msgstr "kan inte använda subfråga i triggerns WHEN-villkor" -#: parser/parse_expr.c:1849 +#: parser/parse_expr.c:1859 msgid "cannot use subquery in partition bound" msgstr "kan inte använda underfråga i partitionsgräns" -#: parser/parse_expr.c:1852 +#: parser/parse_expr.c:1862 msgid "cannot use subquery in partition key expression" msgstr "kan inte använda underfråga i partitionsnyckeluttryck" -#: parser/parse_expr.c:1855 +#: parser/parse_expr.c:1865 msgid "cannot use subquery in CALL argument" msgstr "kan inte använda subfråga i CALL-argument" -#: parser/parse_expr.c:1858 +#: parser/parse_expr.c:1868 msgid "cannot use subquery in COPY FROM WHERE condition" msgstr "kan inte använda subfråga i COPY FROM WHERE-villkor" -#: parser/parse_expr.c:1861 +#: parser/parse_expr.c:1871 msgid "cannot use subquery in column generation expression" msgstr "kan inte använda subfråga i kolumngenereringsuttryck" -#: parser/parse_expr.c:1914 parser/parse_expr.c:3784 +#: parser/parse_expr.c:1924 parser/parse_expr.c:3794 #, c-format msgid "subquery must return only one column" msgstr "underfråga kan bara returnera en kolumn" -#: parser/parse_expr.c:1985 +#: parser/parse_expr.c:1995 #, c-format msgid "subquery has too many columns" msgstr "underfråga har för många kolumner" -#: parser/parse_expr.c:1990 +#: parser/parse_expr.c:2000 #, c-format msgid "subquery has too few columns" msgstr "underfråga har för få kolumner" -#: parser/parse_expr.c:2094 +#: parser/parse_expr.c:2104 #, c-format msgid "cannot determine type of empty array" msgstr "kan inte bestämma typen av en tom array" -#: parser/parse_expr.c:2095 +#: parser/parse_expr.c:2105 #, c-format msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]." msgstr "Typomvandla explicit till den önskade typen, till exempel ARRAY[]::integer[]." -#: parser/parse_expr.c:2109 +#: parser/parse_expr.c:2119 #, c-format msgid "could not find element type for data type %s" msgstr "kunde inte hitta elementtyp för datatyp %s" -#: parser/parse_expr.c:2194 +#: parser/parse_expr.c:2204 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "ROW-uttryck kan ha som mest %d poster" -#: parser/parse_expr.c:2399 +#: parser/parse_expr.c:2409 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "onamnat XML-attributvärde måste vara en kolumnreferens" -#: parser/parse_expr.c:2400 +#: parser/parse_expr.c:2410 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "onamnat XML-elementvärde måste vara en kolumnreferens" -#: parser/parse_expr.c:2415 +#: parser/parse_expr.c:2425 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "XML-attributnamn \"%s\" finns med mer än en gång" -#: parser/parse_expr.c:2523 +#: parser/parse_expr.c:2533 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "kan inte typomvandla XMLSERIALIZE-resultat till %s" -#: parser/parse_expr.c:2847 parser/parse_expr.c:3043 +#: parser/parse_expr.c:2857 parser/parse_expr.c:3053 #, c-format msgid "unequal number of entries in row expressions" msgstr "olika antal element i raduttryck" -#: parser/parse_expr.c:2857 +#: parser/parse_expr.c:2867 #, c-format msgid "cannot compare rows of zero length" msgstr "kan inte jämföra rader med längden noll" -#: parser/parse_expr.c:2882 +#: parser/parse_expr.c:2892 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "operator för radjämförelse måste resultera i typen boolean, inte %s" -#: parser/parse_expr.c:2889 +#: parser/parse_expr.c:2899 #, c-format msgid "row comparison operator must not return a set" msgstr "radjämförelseoperator får inte returnera en mängd" -#: parser/parse_expr.c:2948 parser/parse_expr.c:2989 +#: parser/parse_expr.c:2958 parser/parse_expr.c:2999 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "kunde inte lista ut tolkning av radjämförelseoperator %s" -#: parser/parse_expr.c:2950 +#: parser/parse_expr.c:2960 #, c-format msgid "Row comparison operators must be associated with btree operator families." msgstr "Radjämförelseoperatorer måste vara associerade med btreee-operatorfamiljer." -#: parser/parse_expr.c:2991 +#: parser/parse_expr.c:3001 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Det finns flera lika sannolika kandidater." -#: parser/parse_expr.c:3326 +#: parser/parse_expr.c:3336 #, c-format msgid "JSON ENCODING clause is only allowed for bytea input type" msgstr "JSON ENCODING tillåts bara för input-typen bytea" -#: parser/parse_expr.c:3390 +#: parser/parse_expr.c:3400 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" msgstr "kan inte använda icke-strängtyper med implicit FORMAT JSON-klausul" -#: parser/parse_expr.c:3391 +#: parser/parse_expr.c:3401 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" msgstr "kan inte använda icke-strängtyper med explicit FORMAT JSON-klausul" -#: parser/parse_expr.c:3480 +#: parser/parse_expr.c:3490 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "kan inte använda JSON-formatet för utddata som inte är strängar" -#: parser/parse_expr.c:3493 +#: parser/parse_expr.c:3503 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "kan inte sätta JSON-kodning för utdata-typer som inte är bytea" -#: parser/parse_expr.c:3498 +#: parser/parse_expr.c:3508 #, c-format msgid "unsupported JSON encoding" msgstr "ej stödd JSON-kodning" -#: parser/parse_expr.c:3499 +#: parser/parse_expr.c:3509 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Enbart JSON-kodningen UTF8 stöds." -#: parser/parse_expr.c:3536 +#: parser/parse_expr.c:3546 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "returtyp SETOF stöds inte för SQL/JSON-funktioner" -#: parser/parse_expr.c:3541 +#: parser/parse_expr.c:3551 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" msgstr "pseudo-typer stöds inte som resultat för SQL/JSON-funktioner" -#: parser/parse_expr.c:3869 parser/parse_func.c:866 +#: parser/parse_expr.c:3879 parser/parse_func.c:866 #, c-format msgid "aggregate ORDER BY is not implemented for window functions" msgstr "aggregat-ORDER BY är inte implementerat för fönsterfunktioner" -#: parser/parse_expr.c:4092 +#: parser/parse_expr.c:4102 #, c-format msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types" msgstr "kan inte använda JSON FORMAT ENCODING för indatatyper som inte är bytea" -#: parser/parse_expr.c:4112 +#: parser/parse_expr.c:4122 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "kan inte använda typen %s i ett IS JSON-predikat" -#: parser/parse_expr.c:4138 parser/parse_expr.c:4259 +#: parser/parse_expr.c:4148 parser/parse_expr.c:4269 #, c-format msgid "cannot use type %s in RETURNING clause of %s" msgstr "kan inte använda typen %s i RETURNING-klausul för %s" -#: parser/parse_expr.c:4140 +#: parser/parse_expr.c:4150 #, c-format msgid "Try returning json or jsonb." msgstr "Försök returnera json eller jsonb." -#: parser/parse_expr.c:4188 +#: parser/parse_expr.c:4198 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" msgstr "kan inte använda icke-strängtyper med WITH UNIQUE KEYS-klausul" -#: parser/parse_expr.c:4262 +#: parser/parse_expr.c:4272 #, c-format msgid "Try returning a string type or bytea." msgstr "Försök returnera en strängtyp eller bytea." -#: parser/parse_expr.c:4327 +#: parser/parse_expr.c:4340 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "kan inte ange FORMAT JSON i RETURNING-klausul för %s()" -#: parser/parse_expr.c:4340 +#: parser/parse_expr.c:4353 #, c-format msgid "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" msgstr "SQL/JSON QUOTES får inte anges tillsammans med WITH WRAPPER" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4354 parser/parse_expr.c:4383 parser/parse_expr.c:4414 -#: parser/parse_expr.c:4440 parser/parse_expr.c:4466 +#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 parser/parse_expr.c:4427 +#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 #: parser/parse_jsontable.c:92 #, c-format msgid "invalid %s behavior" @@ -19034,7 +19049,7 @@ msgstr "ogiltig %s-angivelse" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4357 parser/parse_expr.c:4386 +#: parser/parse_expr.c:4370 parser/parse_expr.c:4399 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for %s." msgstr "Bara uttrycken ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT eller DEFAULT tillåts i %s för %s." @@ -19042,68 +19057,73 @@ msgstr "Bara uttrycken ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT eller DEFAULT till #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4364 parser/parse_expr.c:4393 parser/parse_expr.c:4422 -#: parser/parse_expr.c:4450 parser/parse_expr.c:4476 +#: parser/parse_expr.c:4377 parser/parse_expr.c:4406 parser/parse_expr.c:4435 +#: parser/parse_expr.c:4463 parser/parse_expr.c:4489 #, c-format msgid "invalid %s behavior for column \"%s\"" msgstr "ogiltig %s-angivelse för kolumn \"%s\"" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 +#: parser/parse_expr.c:4380 parser/parse_expr.c:4409 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for formatted columns." msgstr "Bara uttrycken ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT eller DEFAULT tillåts i %s för formatterade kolumner." -#: parser/parse_expr.c:4415 +#: parser/parse_expr.c:4428 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." msgstr "Bara ERROR, TRUE, FALSE eller UNKNOWN tillåts i %s för %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4425 +#: parser/parse_expr.c:4438 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." msgstr "Bara ERROR, TRUE, FALSE eller UNKNOWN tillåts i %s för EXISTS-kolumner." #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4443 parser/parse_expr.c:4469 +#: parser/parse_expr.c:4456 parser/parse_expr.c:4482 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." msgstr "Bara uttrycken ERROR, NULL eller DEFAULT tillåts i %s för %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 +#: parser/parse_expr.c:4466 parser/parse_expr.c:4492 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." msgstr "Bara uttrycken ERROR, NULL eller DEFAULT tillåts i %s för skalära kolumner." -#: parser/parse_expr.c:4509 +#: parser/parse_expr.c:4526 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "Uttryck för JSON-sökväg måste vara av typ %s, inte av typ %s" -#: parser/parse_expr.c:4727 +#: parser/parse_expr.c:4766 #, c-format msgid "can only specify a constant, non-aggregate function, or operator expression for DEFAULT" msgstr "kan bara ange en konstant, en icke-aggregat-funktion eller ett operatoruttryck för DEFAULT" -#: parser/parse_expr.c:4732 +#: parser/parse_expr.c:4771 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "DEFAULT-uttryck får inte innehålla kolumnreferenser" -#: parser/parse_expr.c:4737 +#: parser/parse_expr.c:4776 #, c-format msgid "DEFAULT expression must not return a set" msgstr "DEFAULT-uttryck får inte returnera en mängd" -#: parser/parse_expr.c:4813 parser/parse_expr.c:4822 +#: parser/parse_expr.c:4791 +#, c-format +msgid "collation of DEFAULT expression conflicts with RETURNING clause" +msgstr "sorteringsordning för DEFAULT-uttryck krockar med RETURNING-klausul" + +#: parser/parse_expr.c:4870 parser/parse_expr.c:4879 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "kan inte omvandla uttryck av typ %s till %s" -#: parser/parse_expr.c:4816 +#: parser/parse_expr.c:4873 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "Du måste explicit omvandla uttrycket till typen %s." @@ -19978,7 +19998,7 @@ msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELE msgstr "regler med WHERE-villkor kan bara innehålla SELECT-, INSERT-, UPDATE- eller DELETE-handlingar" #: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 -#: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 +#: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1187 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "UNION-/INTERSECT-/EXCEPT-satser med villkor är inte implementerat" @@ -20118,22 +20138,22 @@ msgstr "FROM måste ge exakt ett värde per partitionerande kolumn" msgid "TO must specify exactly one value per partitioning column" msgstr "TO måste ge exakt ett värde per partitionerande kolumn" -#: parser/parse_utilcmd.c:4521 +#: parser/parse_utilcmd.c:4523 #, c-format msgid "cannot specify NULL in range bound" msgstr "kan inte ange NULL i range-gräns" -#: parser/parse_utilcmd.c:4570 +#: parser/parse_utilcmd.c:4571 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "varje gräns efter MAXVALUE måste också vara MAXVALUE" -#: parser/parse_utilcmd.c:4577 +#: parser/parse_utilcmd.c:4578 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "varje gräns efter MINVALUE måste också vara MINVALUE" -#: parser/parse_utilcmd.c:4620 +#: parser/parse_utilcmd.c:4621 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "angivet värde kan inte typomvandlas till typ %s för kolumn \"%s\"" @@ -20151,7 +20171,7 @@ msgstr "ogiltigt Unicode-escapetecken" msgid "invalid Unicode escape value" msgstr "ogiltigt Unicode-escapevärde" -#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6842 +#: parser/parser.c:494 scan.l:702 utils/adt/varlena.c:6853 #, c-format msgid "invalid Unicode escape" msgstr "ogiltig Unicode-escapesekvens" @@ -20162,7 +20182,7 @@ msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "Unicode-escapesekvenser måste vara \\XXXX eller \\+XXXXXX." #: parser/parser.c:523 scan.l:663 scan.l:679 scan.l:695 -#: utils/adt/varlena.c:6867 +#: utils/adt/varlena.c:6878 #, c-format msgid "invalid Unicode surrogate pair" msgstr "ogiltigt Unicode-surrogatpar" @@ -20478,27 +20498,27 @@ msgstr "automatisk vacuum av tabell \"%s.%s.%s\"" msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "automatisk analys av tabell \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2674 +#: postmaster/autovacuum.c:2677 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "processar arbetspost för relation \"%s.%s.%s\"" -#: postmaster/autovacuum.c:3345 +#: postmaster/autovacuum.c:3348 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "autovacuum har inte startats på grund av en felkonfigurering" -#: postmaster/autovacuum.c:3346 +#: postmaster/autovacuum.c:3349 #, c-format msgid "Enable the \"track_counts\" option." msgstr "Slå på flaggan \"track_counts\"." -#: postmaster/autovacuum.c:3468 +#: postmaster/autovacuum.c:3471 #, c-format msgid "\"autovacuum_max_workers\" (%d) should be less than or equal to \"autovacuum_worker_slots\" (%d)" msgstr "\"autovacuum_max_workers\" (%d) skall vara mindre än eller lika med \"autovacuum_worker_slots\" (%d)" -#: postmaster/autovacuum.c:3470 +#: postmaster/autovacuum.c:3473 #, c-format msgid "The server will only start up to \"autovacuum_worker_slots\" (%d) autovacuum workers at a given time." msgstr "Servern kommer bara start upp till \"autovacuum_worker_slots\" (%d) autovacuum-arbetare i taget." @@ -21198,144 +21218,144 @@ msgstr "ogiltig tidslinje %u" msgid "invalid streaming start location" msgstr "ogiltig startposition för strömning" -#: replication/libpqwalreceiver/libpqwalreceiver.c:230 -#: replication/libpqwalreceiver/libpqwalreceiver.c:322 +#: replication/libpqwalreceiver/libpqwalreceiver.c:243 +#: replication/libpqwalreceiver/libpqwalreceiver.c:335 #, c-format msgid "password is required" msgstr "lösenord krävs" -#: replication/libpqwalreceiver/libpqwalreceiver.c:231 +#: replication/libpqwalreceiver/libpqwalreceiver.c:244 #, c-format msgid "Non-superuser cannot connect if the server does not request a password." msgstr "Icke superanvändare kan inte ansluta till servern om den inte kräver lösenord." -#: replication/libpqwalreceiver/libpqwalreceiver.c:232 +#: replication/libpqwalreceiver/libpqwalreceiver.c:245 #, c-format msgid "Target server's authentication method must be changed, or set password_required=false in the subscription parameters." msgstr "Målserverns autentiseringsmetod måste ändras eller så måste man sätta password_required=false i prenumerationens parametrar." -#: replication/libpqwalreceiver/libpqwalreceiver.c:249 +#: replication/libpqwalreceiver/libpqwalreceiver.c:262 #, c-format msgid "could not clear search path: %s" msgstr "kunde inte nollställa sökväg: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:295 -#: replication/libpqwalreceiver/libpqwalreceiver.c:483 +#: replication/libpqwalreceiver/libpqwalreceiver.c:308 +#: replication/libpqwalreceiver/libpqwalreceiver.c:508 #, c-format msgid "invalid connection string syntax: %s" msgstr "ogiltig anslutningssträngsyntax %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:323 +#: replication/libpqwalreceiver/libpqwalreceiver.c:336 #, c-format msgid "Non-superusers must provide a password in the connection string." msgstr "Icke superanvändare måste ange ett lösenord i anslutningssträngen." -#: replication/libpqwalreceiver/libpqwalreceiver.c:350 +#: replication/libpqwalreceiver/libpqwalreceiver.c:363 #, c-format msgid "could not parse connection string: %s" msgstr "kunde inte parsa anslutningssträng: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:425 +#: replication/libpqwalreceiver/libpqwalreceiver.c:438 #, c-format msgid "could not receive database system identifier and timeline ID from the primary server: %s" msgstr "kunde inte hämta databassystemidentifierare och tidslinje-ID från primära servern: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:442 -#: replication/libpqwalreceiver/libpqwalreceiver.c:737 +#: replication/libpqwalreceiver/libpqwalreceiver.c:455 +#: replication/libpqwalreceiver/libpqwalreceiver.c:762 #, c-format msgid "invalid response from primary server" msgstr "ogiltigt svar från primär server" -#: replication/libpqwalreceiver/libpqwalreceiver.c:443 +#: replication/libpqwalreceiver/libpqwalreceiver.c:456 #, c-format msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields." msgstr "Kunde inte identifiera system: fick %d rader och %d fält, förväntade %d rader och %d eller fler fält." -#: replication/libpqwalreceiver/libpqwalreceiver.c:572 -#: replication/libpqwalreceiver/libpqwalreceiver.c:579 -#: replication/libpqwalreceiver/libpqwalreceiver.c:611 +#: replication/libpqwalreceiver/libpqwalreceiver.c:597 +#: replication/libpqwalreceiver/libpqwalreceiver.c:604 +#: replication/libpqwalreceiver/libpqwalreceiver.c:636 #, c-format msgid "could not start WAL streaming: %s" msgstr "kunde inte starta WAL-strömning: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:635 +#: replication/libpqwalreceiver/libpqwalreceiver.c:660 #, c-format msgid "could not send end-of-streaming message to primary: %s" msgstr "kunde inte skicka meddelandet end-of-streaming till primären: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:659 +#: replication/libpqwalreceiver/libpqwalreceiver.c:684 #, c-format msgid "unexpected result set after end-of-streaming" msgstr "oväntad resultatmängd efter end-of-streaming" -#: replication/libpqwalreceiver/libpqwalreceiver.c:675 +#: replication/libpqwalreceiver/libpqwalreceiver.c:700 #, c-format msgid "error while shutting down streaming COPY: %s" msgstr "fel vid nestängning av strömmande COPY: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:686 +#: replication/libpqwalreceiver/libpqwalreceiver.c:711 #, c-format msgid "error reading result of streaming command: %s" msgstr "fel vid läsning av resultat från strömningskommando: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:696 -#: replication/libpqwalreceiver/libpqwalreceiver.c:832 +#: replication/libpqwalreceiver/libpqwalreceiver.c:721 +#: replication/libpqwalreceiver/libpqwalreceiver.c:857 #, c-format msgid "unexpected result after CommandComplete: %s" msgstr "oväntat resultat efter CommandComplete: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:725 +#: replication/libpqwalreceiver/libpqwalreceiver.c:750 #, c-format msgid "could not receive timeline history file from the primary server: %s" msgstr "kan inte ta emot fil med tidslinjehistorik från primära servern: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:738 +#: replication/libpqwalreceiver/libpqwalreceiver.c:763 #, c-format msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields." msgstr "Förväntade 1 tupel med 2 fält, fick %d tupler med %d fält." -#: replication/libpqwalreceiver/libpqwalreceiver.c:793 -#: replication/libpqwalreceiver/libpqwalreceiver.c:848 -#: replication/libpqwalreceiver/libpqwalreceiver.c:855 +#: replication/libpqwalreceiver/libpqwalreceiver.c:818 +#: replication/libpqwalreceiver/libpqwalreceiver.c:873 +#: replication/libpqwalreceiver/libpqwalreceiver.c:880 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "kunde inte ta emot data från WAL-ström: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:875 +#: replication/libpqwalreceiver/libpqwalreceiver.c:900 #, c-format msgid "could not send data to WAL stream: %s" msgstr "kunde inte skicka data till WAL-ström: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:978 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1003 #, c-format msgid "could not create replication slot \"%s\": %s" msgstr "kunde inte skapa replikeringsslot \"%s\": %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1030 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1055 #, c-format msgid "could not alter replication slot \"%s\": %s" msgstr "kunde inte ändra replikeringsslot \"%s\": %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1064 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1089 #, c-format msgid "invalid query response" msgstr "ogiltigt frågerespons" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1065 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1090 #, c-format msgid "Expected %d fields, got %d fields." msgstr "Förväntade %d fält, fick %d fält." -#: replication/libpqwalreceiver/libpqwalreceiver.c:1135 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1160 #, c-format msgid "the query interface requires a database connection" msgstr "frågeinterface:et kräver en databasanslutning" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1169 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1194 msgid "empty query" msgstr "tom fråga" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1200 msgid "unexpected pipeline mode" msgstr "oväntat pipeline-läge" @@ -21349,28 +21369,28 @@ msgstr "logisk replikerings parallella ändringsapplicerare för prenumeration \ msgid "lost connection to the logical replication apply worker" msgstr "tappade anslutning till den logiska replikeringens ändringsapplicerare" -#: replication/logical/applyparallelworker.c:1024 -#: replication/logical/applyparallelworker.c:1026 +#: replication/logical/applyparallelworker.c:1031 +#: replication/logical/applyparallelworker.c:1033 msgid "logical replication parallel apply worker" msgstr "logisk replikerings ändringsapplicerare" -#: replication/logical/applyparallelworker.c:1040 +#: replication/logical/applyparallelworker.c:1047 #, c-format msgid "logical replication parallel apply worker exited due to error" msgstr "logiska replikeringens ändringsappliceraren avslutade på grund av ett fel" -#: replication/logical/applyparallelworker.c:1127 -#: replication/logical/applyparallelworker.c:1300 +#: replication/logical/applyparallelworker.c:1134 +#: replication/logical/applyparallelworker.c:1307 #, c-format msgid "lost connection to the logical replication parallel apply worker" msgstr "tappade anslutning till den logiska replikeringens parallella ändringsapplicerare" -#: replication/logical/applyparallelworker.c:1180 +#: replication/logical/applyparallelworker.c:1187 #, c-format msgid "could not send data to shared-memory queue" msgstr "kunde inte skicka data till kö i delat minne" -#: replication/logical/applyparallelworker.c:1215 +#: replication/logical/applyparallelworker.c:1222 #, c-format msgid "logical replication apply worker will serialize the remaining changes of remote transaction %u to a file" msgstr "logiska replikeringens ändringsapplicerare kommer spara ner återstående ändringarna av fjärrtransaktion %u til en fil" @@ -21500,7 +21520,7 @@ msgstr "slut på logiska replikeringsarbetarslots" #. translator: %s is a GUC variable name #: replication/logical/launcher.c:438 replication/logical/launcher.c:524 -#: replication/slot.c:1600 replication/slot.c:1620 storage/lmgr/lock.c:1042 +#: replication/slot.c:1670 replication/slot.c:1690 storage/lmgr/lock.c:1042 #: storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 #: storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 #: storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 @@ -21534,12 +21554,12 @@ msgstr "logisk avkodning kräver \"wal_level\" >= \"logical\"" msgid "logical decoding requires a database connection" msgstr "logisk avkodning kräver en databasanslutning" -#: replication/logical/logical.c:367 replication/logical/logical.c:521 +#: replication/logical/logical.c:367 replication/logical/logical.c:523 #, c-format msgid "cannot use physical replication slot for logical decoding" msgstr "kan inte använda fysisk replikeringsslot för logisk avkodning" -#: replication/logical/logical.c:372 replication/logical/logical.c:531 +#: replication/logical/logical.c:372 replication/logical/logical.c:533 #, c-format msgid "replication slot \"%s\" was not created in this database" msgstr "replikeringsslot \"%s\" har inte skapats i denna databasen" @@ -21549,56 +21569,56 @@ msgstr "replikeringsslot \"%s\" har inte skapats i denna databasen" msgid "cannot create logical replication slot in transaction that has performed writes" msgstr "kan inte skapa logisk replikeringsslot i transaktion som redan har utfört skrivningar" -#: replication/logical/logical.c:542 +#: replication/logical/logical.c:544 #, c-format msgid "cannot use replication slot \"%s\" for logical decoding" msgstr "kan inte använda replikeringsslot \"%s\" för logisk avkodning" -#: replication/logical/logical.c:544 replication/slot.c:829 -#: replication/slot.c:864 +#: replication/logical/logical.c:546 replication/slot.c:858 +#: replication/slot.c:903 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Denna replikeringsslot synkroniseras från primära servern." -#: replication/logical/logical.c:545 +#: replication/logical/logical.c:547 #, c-format msgid "Specify another replication slot." msgstr "Ange en annan replikeringsslot." -#: replication/logical/logical.c:611 +#: replication/logical/logical.c:613 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "startar logisk avkodning för slot \"%s\"" -#: replication/logical/logical.c:613 +#: replication/logical/logical.c:615 #, c-format msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X." msgstr "Strömmar transaktioner commit:ade efter %X/%X, läser WAL från %X/%X" -#: replication/logical/logical.c:761 +#: replication/logical/logical.c:763 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X" msgstr "slot \"%s\", utdata-plugin \"%s\", i callback:en %s, associerad LSN %X/%X" -#: replication/logical/logical.c:767 +#: replication/logical/logical.c:769 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback" msgstr "slot \"%s\", utdata-plugin \"%s\", i callback:en %s" -#: replication/logical/logical.c:938 replication/logical/logical.c:983 -#: replication/logical/logical.c:1028 replication/logical/logical.c:1074 +#: replication/logical/logical.c:940 replication/logical/logical.c:985 +#: replication/logical/logical.c:1030 replication/logical/logical.c:1076 #, c-format msgid "logical replication at prepare time requires a %s callback" msgstr "logisk replikering vid prepare-tillfället kräver en %s-callback" -#: replication/logical/logical.c:1306 replication/logical/logical.c:1355 -#: replication/logical/logical.c:1396 replication/logical/logical.c:1482 -#: replication/logical/logical.c:1531 +#: replication/logical/logical.c:1308 replication/logical/logical.c:1357 +#: replication/logical/logical.c:1398 replication/logical/logical.c:1484 +#: replication/logical/logical.c:1533 #, c-format msgid "logical streaming requires a %s callback" msgstr "logisk strömning kräven en %s-callback" -#: replication/logical/logical.c:1441 +#: replication/logical/logical.c:1443 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "logisk strömning vid prepare-tillfället kräver en %s-callback" @@ -21790,7 +21810,7 @@ msgstr "kunde inte radera fil \"%s\" vid borttagning av %s/%s/xid*: %m" msgid "could not read from file \"%s\": read %d instead of %d bytes" msgstr "kunde inte läsa från fil \"%s\": läste %d istället för %d byte" -#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:595 +#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:596 #, c-format msgid "could not synchronize replication slot \"%s\"" msgstr "kunde inte synkronisera replikeringsslot \"%s\"" @@ -21805,48 +21825,48 @@ msgstr "Synkronisering kan leda till dataförlust eftersom fjärrslotten kräver msgid "dropped replication slot \"%s\" of database with OID %u" msgstr "slängde replikerings-slot \"%s\" för databas med OID %u" -#: replication/logical/slotsync.c:596 +#: replication/logical/slotsync.c:597 #, c-format msgid "Synchronization could lead to data loss, because the standby could not build a consistent snapshot to decode WALs at LSN %X/%X." msgstr "Synkronisering kan leda till dataförlust eftersom standby:en inte kunde skapa en konsistent snapshot för att avkoda WAL vid LSN %X/%X." -#: replication/logical/slotsync.c:605 +#: replication/logical/slotsync.c:606 #, c-format msgid "newly created replication slot \"%s\" is sync-ready now" msgstr "nyskapad replikeringsslot \"%s\" är redo för synk nu" -#: replication/logical/slotsync.c:644 +#: replication/logical/slotsync.c:645 #, c-format msgid "skipping slot synchronization because the received slot sync LSN %X/%X for slot \"%s\" is ahead of the standby position %X/%X" msgstr "hoppar över slotsynkronisering då den mottagna slottens synk-LSN %X/%X för slot \"%s\" är längre fram än standby-positionen %X/%X" -#: replication/logical/slotsync.c:666 +#: replication/logical/slotsync.c:667 #, c-format msgid "exiting from slot synchronization because same name slot \"%s\" already exists on the standby" msgstr "avslutar slotsynkronisering då samma slotnamn \"%s\" redan finns på standby:en" -#: replication/logical/slotsync.c:835 +#: replication/logical/slotsync.c:838 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "kan inte hämta logisk slot för failover från primära servern: %s" -#: replication/logical/slotsync.c:984 +#: replication/logical/slotsync.c:987 #, c-format msgid "could not fetch primary slot name \"%s\" info from the primary server: %s" msgstr "kan inte hämta info för primära slotnamnet \"%s\" från primära servern: %s" -#: replication/logical/slotsync.c:986 +#: replication/logical/slotsync.c:989 #, c-format msgid "Check if \"primary_slot_name\" is configured correctly." msgstr "Kontrollera att \"primary_slot_name\" är korrekt konfigurerad." -#: replication/logical/slotsync.c:1006 +#: replication/logical/slotsync.c:1009 #, c-format msgid "cannot synchronize replication slots from a standby server" msgstr "kan inte synkronisera replikeringsslottar från en standby-server" #. translator: second %s is a GUC variable name -#: replication/logical/slotsync.c:1015 +#: replication/logical/slotsync.c:1018 #, c-format msgid "replication slot \"%s\" specified by \"%s\" does not exist on primary server" msgstr "replikeringsslot \"%s\" angiven av %s finns inte på den primära servern." @@ -21854,60 +21874,60 @@ msgstr "replikeringsslot \"%s\" angiven av %s finns inte på den primära server #. translator: first %s is a connection option; second %s is a GUC #. variable name #. -#: replication/logical/slotsync.c:1048 +#: replication/logical/slotsync.c:1051 #, c-format msgid "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "synkronisering av replikeringsslot kräver att \"%s\" anges i %s" -#: replication/logical/slotsync.c:1067 +#: replication/logical/slotsync.c:1070 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "synkronisering av replikeringsslot kräver at \"wal_level\" >= \"logical\"" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1082 replication/logical/slotsync.c:1110 +#: replication/logical/slotsync.c:1085 replication/logical/slotsync.c:1113 #, c-format msgid "replication slot synchronization requires \"%s\" to be set" msgstr "synkronisering av replikeringsslot kräver att \"%s\" också anges" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1096 +#: replication/logical/slotsync.c:1099 #, c-format msgid "replication slot synchronization requires \"%s\" to be enabled" msgstr "synkronisering av replikeringsslot kräver att \"%s\" också slås på" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1148 +#: replication/logical/slotsync.c:1151 #, c-format msgid "replication slot synchronization worker will shut down because \"%s\" is disabled" msgstr "arbetare för synkronisering av replikeringsslot kommer stängas ner då \"%s\" är avslagen" -#: replication/logical/slotsync.c:1157 +#: replication/logical/slotsync.c:1160 #, c-format msgid "replication slot synchronization worker will restart because of a parameter change" msgstr "arbetare för synkronisering av replikeringsslot kommer startas om då parametrar ändrats" -#: replication/logical/slotsync.c:1181 +#: replication/logical/slotsync.c:1184 #, c-format -msgid "replication slot synchronization worker is shutting down on receiving SIGINT" -msgstr "arbetare för synkronisering av replikeringsslot stänger ner efter mottagning av SIGINT" +msgid "replication slot synchronization worker is shutting down because promotion is triggered" +msgstr "arbetare för synkronisering av replikeringsslot stängs ner eftersom befordran av standby har triggats" -#: replication/logical/slotsync.c:1306 +#: replication/logical/slotsync.c:1309 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "kan inte synkronisera replikeringsslot när befordran av standby pågår" -#: replication/logical/slotsync.c:1314 +#: replication/logical/slotsync.c:1317 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "kan inte synkronisera replikeringsslottar parallellt" -#: replication/logical/slotsync.c:1422 +#: replication/logical/slotsync.c:1425 #, c-format msgid "slot sync worker started" msgstr "arbetare för slot-synk startad" -#: replication/logical/slotsync.c:1484 replication/slotfuncs.c:928 +#: replication/logical/slotsync.c:1487 replication/slotfuncs.c:928 #, c-format msgid "synchronization worker \"%s\" could not connect to the primary server: %s" msgstr "synchroniseringsarbetare \"%s\" kunde inte ansluta till den primära servern: %s" @@ -22020,22 +22040,17 @@ msgstr "kunde inte starta initial innehållskopiering för tabell \"%s.%s\": %s" msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" msgstr "tabellers synkroniseringsarbetare för prenumeration \"%s\" kunde inte ansluta till publiceraren: %s" -#: replication/logical/tablesync.c:1466 +#: replication/logical/tablesync.c:1480 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "tabellkopiering kunde inte starta transaktion på publiceraren: %s" -#: replication/logical/tablesync.c:1509 -#, c-format -msgid "replication origin \"%s\" already exists" -msgstr "replikeringsurspring \"%s\" finns redan" - -#: replication/logical/tablesync.c:1542 replication/logical/worker.c:2378 +#: replication/logical/tablesync.c:1540 replication/logical/worker.c:2378 #, c-format msgid "user \"%s\" cannot replicate into relation with row-level security enabled: \"%s\"" msgstr "användaren \"%s\" kan inte replikera in i en relation med radsäkerhet påslagen: \"%s\"" -#: replication/logical/tablesync.c:1555 +#: replication/logical/tablesync.c:1553 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "tabellkopiering kunde inte slutföra transaktion på publiceraren: %s" @@ -22140,420 +22155,409 @@ msgstr "logisk replikerings tabellsynkroniseringsarbetare för prenumeration \"% msgid "logical replication apply worker for subscription \"%s\" has started" msgstr "logiska replikeringens ändringsapplicerare för prenumeration \"%s\" har startat" -#: replication/logical/worker.c:4871 +#: replication/logical/worker.c:4875 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "prenumeration \"%s\" har avaktiverats på grund av ett fel" -#: replication/logical/worker.c:4919 +#: replication/logical/worker.c:4923 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "logisk replikering börjar hoppa över transaktion vid LSN %X/%X" -#: replication/logical/worker.c:4933 +#: replication/logical/worker.c:4937 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "logisk replikering har slutfört överhoppande av transaktionen vid LSN %X/%X" -#: replication/logical/worker.c:5021 +#: replication/logical/worker.c:5025 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "överhoppnings-LSN för logiska prenumerationen \"%s\" har nollställts" -#: replication/logical/worker.c:5022 +#: replication/logical/worker.c:5026 #, c-format msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X." msgstr "Fjärrtransaktionens slut-WAL-position (LSN) %X/%X matchade inte överhoppnings-LSN %X/%X." -#: replication/logical/worker.c:5050 +#: replication/logical/worker.c:5054 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\"" msgstr "processar fjärrdata för replikeringskälla \"%s\" vid meddelandetyp \"%s\"" -#: replication/logical/worker.c:5054 +#: replication/logical/worker.c:5058 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u" msgstr "processar fjärrdata för replikeringskälla \"%s\" vid meddelandetyp \"%s\" i transaktion %u" -#: replication/logical/worker.c:5059 +#: replication/logical/worker.c:5063 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X" msgstr "processande av fjärrdata för replikeringskälla \"%s\" vid meddelandetyp \"%s\" i transaktion %u blev klar vid %X/%X" -#: replication/logical/worker.c:5070 +#: replication/logical/worker.c:5074 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u" msgstr "processande av fjärrdata för replikeringskälla \"%s\" vid meddelandetyp \"%s\" för replikeringsmålrelation \"%s.%s\" i transaktion %u" -#: replication/logical/worker.c:5077 +#: replication/logical/worker.c:5081 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u, finished at %X/%X" msgstr "processande av fjärrdata för replikeringskälla \"%s\" vid meddelandetyp \"%s\" för replikeringsmålrelation \"%s.%s\" i transaktion %u blev klart vid %X/%X" -#: replication/logical/worker.c:5088 +#: replication/logical/worker.c:5092 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u" msgstr "processande av fjärrdata för replikeringskälla \"%s\" vid meddelandetyp \"%s\" för replikeringsmålrelation \"%s.%s\" kolumn \"%s\" i transaktion %u" -#: replication/logical/worker.c:5096 +#: replication/logical/worker.c:5100 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u, finished at %X/%X" msgstr "processande av fjärrdata för replikeringskälla \"%s\" vid meddelandetyp \"%s\" för replikeringsmålrelation \"%s.%s\" kolumn \"%s\" i transaktion %u blev klart vid %X/%X" -#: replication/pgoutput/pgoutput.c:328 +#: replication/pgoutput/pgoutput.c:329 #, c-format msgid "invalid proto_version" msgstr "ogiltig proto_version" -#: replication/pgoutput/pgoutput.c:333 +#: replication/pgoutput/pgoutput.c:334 #, c-format msgid "proto_version \"%s\" out of range" msgstr "proto_version \"%s\" är utanför giltigt intervall" -#: replication/pgoutput/pgoutput.c:350 +#: replication/pgoutput/pgoutput.c:355 #, c-format msgid "invalid publication_names syntax" msgstr "ogiltig publication_names-syntax" -#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 +#: replication/pgoutput/pgoutput.c:425 replication/pgoutput/pgoutput.c:429 #, c-format msgid "option \"%s\" missing" msgstr "flaggan \"%s\" saknas." -#: replication/pgoutput/pgoutput.c:469 +#: replication/pgoutput/pgoutput.c:496 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or lower" msgstr "klienten skickade proto_version=%d men servern stöder bara protokoll %d eller lägre" -#: replication/pgoutput/pgoutput.c:475 +#: replication/pgoutput/pgoutput.c:502 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or higher" msgstr "klienten skickade proto_version=%d men servern stöder bara protokoll %d eller högre" -#: replication/pgoutput/pgoutput.c:490 +#: replication/pgoutput/pgoutput.c:517 #, c-format msgid "requested proto_version=%d does not support streaming, need %d or higher" msgstr "efterfrågade proto_version=%d stöder inte strömning, kräver %d eller högre" -#: replication/pgoutput/pgoutput.c:496 +#: replication/pgoutput/pgoutput.c:523 #, c-format msgid "requested proto_version=%d does not support parallel streaming, need %d or higher" msgstr "efterfrågade proto_version=%d stöder inte parallell strömning, kräver %d eller högre" -#: replication/pgoutput/pgoutput.c:501 +#: replication/pgoutput/pgoutput.c:528 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "ströming begärdes men det stöds inte av utdata-plugin:en" -#: replication/pgoutput/pgoutput.c:515 +#: replication/pgoutput/pgoutput.c:542 #, c-format msgid "requested proto_version=%d does not support two-phase commit, need %d or higher" msgstr "efterfrågade proto_version=%d stöder inte tvåfas-commit, kräver %d eller högre" -#: replication/pgoutput/pgoutput.c:520 +#: replication/pgoutput/pgoutput.c:547 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "tvåfas-commit begärdes men det stöds inte av utdata-plugin:en" -#: replication/pgoutput/pgoutput.c:1085 +#: replication/pgoutput/pgoutput.c:1112 #, c-format msgid "cannot use different values of publish_generated_columns for table \"%s.%s\" in different publications" msgstr "kan inte ha olika värden på publish_generated_columns för tabellen \"%s.%s\" i olika publiceringar" -#: replication/pgoutput/pgoutput.c:1792 +#: replication/pgoutput/pgoutput.c:1815 #, c-format msgid "skipped loading publication \"%s\"" msgstr "hoppade över inläsning av publicering \"%s\"" -#: replication/pgoutput/pgoutput.c:1793 +#: replication/pgoutput/pgoutput.c:1816 #, c-format msgid "The publication does not exist at this point in the WAL." msgstr "Publiceringen finns inte vid denna tidpunkt i WAL." -#: replication/pgoutput/pgoutput.c:1794 +#: replication/pgoutput/pgoutput.c:1817 #, c-format msgid "Create the publication if it does not exist." msgstr "Skapa publiceringen om den inte redan finns." -#: replication/slot.c:275 +#: replication/slot.c:313 #, c-format msgid "replication slot name \"%s\" is too short" msgstr "replikeringsslotnamn \"%s\" är för kort" -#: replication/slot.c:284 +#: replication/slot.c:321 #, c-format msgid "replication slot name \"%s\" is too long" msgstr "replikeringsslotnamn \"%s\" är för långt" -#: replication/slot.c:297 +#: replication/slot.c:333 #, c-format msgid "replication slot name \"%s\" contains invalid character" msgstr "replikeringsslotnamn \"%s\" innehåller ogiltiga tecken" -#: replication/slot.c:299 -#, c-format +#: replication/slot.c:334 msgid "Replication slot names may only contain lower case letters, numbers, and the underscore character." msgstr "Replikeringsslotnamn får bara innehålla små bokstäver, nummer och understreck." -#: replication/slot.c:348 +#: replication/slot.c:377 #, c-format msgid "cannot enable failover for a replication slot created on the standby" msgstr "kan inte aktivera failover för en replikeringsslot som skapats på standby:en" -#: replication/slot.c:360 replication/slot.c:886 +#: replication/slot.c:389 replication/slot.c:925 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "kan inte aktivera failover för en temporär repllikeringsslot" -#: replication/slot.c:385 +#: replication/slot.c:414 #, c-format msgid "replication slot \"%s\" already exists" msgstr "replikeringsslot \"%s\" finns redan" -#: replication/slot.c:395 +#: replication/slot.c:424 #, c-format msgid "all replication slots are in use" msgstr "alla replikeringsslots används" -#: replication/slot.c:396 +#: replication/slot.c:425 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Frigör en eller öka \"max_replication_slots\"." -#: replication/slot.c:580 replication/slotfuncs.c:664 +#: replication/slot.c:609 replication/slotfuncs.c:664 #: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:739 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "replikeringsslot \"%s\" existerar inte" -#: replication/slot.c:635 replication/slot.c:1431 +#: replication/slot.c:664 replication/slot.c:1499 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "replikeringsslot \"%s\" är aktiv för PID %d" -#: replication/slot.c:652 +#: replication/slot.c:681 #, c-format msgid "can no longer access replication slot \"%s\"" msgstr "kan inte längre accessa replikeringsslot \"%s\"" -#: replication/slot.c:654 +#: replication/slot.c:683 #, c-format msgid "This replication slot has been invalidated due to \"%s\"." msgstr "Replikeringsslotten har invaliderats på grund av \"%s\"." -#: replication/slot.c:673 +#: replication/slot.c:702 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "tog logisk replikeringsslot \"%s\"" -#: replication/slot.c:675 +#: replication/slot.c:704 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "tog fysisk replikeringsslot \"%s\"" -#: replication/slot.c:760 +#: replication/slot.c:789 #, c-format msgid "released logical replication slot \"%s\"" msgstr "släppte logisk replikeringsslot \"%s\"" -#: replication/slot.c:762 +#: replication/slot.c:791 #, c-format msgid "released physical replication slot \"%s\"" msgstr "släppte fysisk replikeringsslot \"%s\"" -#: replication/slot.c:828 +#: replication/slot.c:857 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "kan inte slänga replikeringsslot \"%s\"" -#: replication/slot.c:851 +#: replication/slot.c:890 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "kan inte använda %s med en fysisk replikeringsslot" -#: replication/slot.c:863 +#: replication/slot.c:902 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "kan inte ändra replikeringsslot \"%s\"" -#: replication/slot.c:873 +#: replication/slot.c:912 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "kan inte aktivera failover för en replikeringsslot på standby:en" -#: replication/slot.c:1021 replication/slot.c:2174 replication/slot.c:2560 +#: replication/slot.c:1060 replication/slot.c:2228 replication/slot.c:2621 #, c-format msgid "could not remove directory \"%s\"" msgstr "kunde inte ta bort katalog \"%s\"" -#: replication/slot.c:1466 +#: replication/slot.c:1534 #, c-format msgid "replication slots can only be used if \"max_replication_slots\" > 0" msgstr "replikeringsslots kan bara användas om \"max_replication_slots\" > 0" -#: replication/slot.c:1471 +#: replication/slot.c:1539 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "replikeringsslots kan bara användas om \"wal_level\" >= \"replica\"" -#: replication/slot.c:1483 +#: replication/slot.c:1551 #, c-format msgid "permission denied to use replication slots" msgstr "rättighet saknas för att använda replikeringsslottar" -#: replication/slot.c:1484 +#: replication/slot.c:1552 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "Bara roller med attributet %s får använda replikeringsslottar." -#: replication/slot.c:1594 +#: replication/slot.c:1664 #, c-format msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by % bytes." msgstr[0] "Slottens restart_lsn %X/%X överskrider gränsen med % byte." msgstr[1] "Slottens restart_lsn %X/%X överskrider gränsen med % byte." -#: replication/slot.c:1605 +#: replication/slot.c:1675 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "Slotten är i konflikt med xid-horisont %u." -#: replication/slot.c:1610 +#: replication/slot.c:1680 msgid "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the primary server." msgstr "logisk avkodning på standby kräver \"wal_level\" >= \"logical\" på primären" #. translator: %s is a GUC variable name -#: replication/slot.c:1616 +#: replication/slot.c:1686 #, c-format msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." msgstr "Slottens idle-tid på %lds är mer än den konfigurerade \"%s\"-längden på %ds." -#: replication/slot.c:1630 +#: replication/slot.c:1700 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "avslutar process %d för att frigöra replikeringsslot \"%s\"" -#: replication/slot.c:1632 +#: replication/slot.c:1702 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "invaliderar obsolet replikeringssslot \"%s\"" -#: replication/slot.c:2498 +#: replication/slot.c:2559 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "replikeringsslotfil \"%s\" har fel magiskt nummer: %u istället för %u" -#: replication/slot.c:2505 +#: replication/slot.c:2566 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "replikeringsslotfil \"%s\" har en icke stödd version %u" -#: replication/slot.c:2512 +#: replication/slot.c:2573 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "replikeringsslotfil \"%s\" har felaktig längd %u" -#: replication/slot.c:2548 +#: replication/slot.c:2609 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "kontrollsummefel för replikeringsslot-fil \"%s\": är %u, skall vara %u" -#: replication/slot.c:2584 +#: replication/slot.c:2645 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "logisk replikeringsslot \"%s\" finns men \"wal_level\" < \"replica\"" -#: replication/slot.c:2586 +#: replication/slot.c:2647 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Ändra \"wal_level\" till \"logical\" eller högre." -#: replication/slot.c:2598 +#: replication/slot.c:2659 #, c-format msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" msgstr "logisk replikeringsslot \"%s\" finns på standby men \"hot_standby\" = \"off\"" -#: replication/slot.c:2600 +#: replication/slot.c:2661 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "Ändra \"hot_standby\" till \"on\"." -#: replication/slot.c:2605 +#: replication/slot.c:2666 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "fysisk replikeringsslot \"%s\" finns men \"wal_level\" < \"replica\"" -#: replication/slot.c:2607 +#: replication/slot.c:2668 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Ändra \"wal_level\" till \"replica\" eller högre." -#: replication/slot.c:2654 +#: replication/slot.c:2715 #, c-format msgid "too many replication slots active before shutdown" msgstr "för många aktiva replikeringsslottar innan nerstängning" -#: replication/slot.c:2655 +#: replication/slot.c:2716 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "Öka \"max_replication_slots\" och försök igen." -#: replication/slot.c:2732 -#, c-format -msgid "Replication slot \"%s\" does not exist." -msgstr "Replikeringsslot \"%s\" existerar inte" - -#: replication/slot.c:2740 -#, c-format -msgid "\"%s\" is not a physical replication slot." -msgstr "\"%s\" är inte en fysisk replikeringsslot." - -#: replication/slot.c:2919 +#: replication/slot.c:2953 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "replikeringsslot \"%s\" som angivits i parametern \"%s\" existerar inte" -#: replication/slot.c:2921 replication/slot.c:2955 replication/slot.c:2970 +#: replication/slot.c:2955 replication/slot.c:2989 replication/slot.c:3004 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "Logisk replikering väntar på standby associerad med replikeringsslot \"%s\"." -#: replication/slot.c:2923 +#: replication/slot.c:2957 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "Skapa replikeringsslotten \"%s\" eller ändra parametern \"%s\"" -#: replication/slot.c:2933 +#: replication/slot.c:2967 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "kan inte ange logisk replikeringsslot \"%s\" i parametern \"%s\"" -#: replication/slot.c:2935 +#: replication/slot.c:2969 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "Logiska replikering väntar på rättning av replikeringsslot \"%s\"" -#: replication/slot.c:2937 +#: replication/slot.c:2971 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "Ta bort logisk replikeringsslot \"%s\" från parametern \"%s\"" -#: replication/slot.c:2953 +#: replication/slot.c:2987 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" msgstr "fysisk replikeringsslot \"%s\" angiven i parametern \"%s\" har invaliderats" -#: replication/slot.c:2957 +#: replication/slot.c:2991 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "Släng och återskapa replikeringsslotten \"%s\" eller ändra parametern %s." -#: replication/slot.c:2968 +#: replication/slot.c:3002 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not have active_pid" msgstr "replikeringsslot \"%s\" angiven i parametern \"%s\" har inte active_pid" -#: replication/slot.c:2972 +#: replication/slot.c:3006 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." msgstr "Starta standby associerad med replikeringsslot \"%s\" eller ändra parametern \"%s\"." @@ -22738,125 +22742,120 @@ msgstr "hämtar tidslinjehistorikfil för tidslinje %u från primära servern" msgid "could not write to WAL segment %s at offset %d, length %lu: %m" msgstr "kunde inte skriva till WAL-segment %s på offset %d, längd %lu: %m" -#: replication/walsender.c:505 +#: replication/walsender.c:519 #, c-format msgid "cannot use %s with a logical replication slot" msgstr "kan inte använda %s med logisk replikeringsslot" -#: replication/walsender.c:609 storage/smgr/md.c:1867 +#: replication/walsender.c:623 storage/smgr/md.c:1881 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "kunde inte söka (seek) till slutet av filen \"%s\": %m" -#: replication/walsender.c:613 +#: replication/walsender.c:627 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "kunde inte söka till början av filen \"%s\": %m" -#: replication/walsender.c:829 +#: replication/walsender.c:843 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "kan inte använda logisk replikeringsslot för fysisk replikering" -#: replication/walsender.c:895 +#: replication/walsender.c:909 #, c-format msgid "requested starting point %X/%X on timeline %u is not in this server's history" msgstr "efterfrågad startpunkt %X/%X på tidslinje %u finns inte i denna servers historik" -#: replication/walsender.c:898 +#: replication/walsender.c:912 #, c-format msgid "This server's history forked from timeline %u at %X/%X." msgstr "Denna servers historik delade sig från tidslinje %u vid %X/%X." -#: replication/walsender.c:942 +#: replication/walsender.c:956 #, c-format msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X" msgstr "efterfrågad startpunkt %X/%X är längre fram än denna servers flush:ade WAL-skrivposition %X/%X" -#: replication/walsender.c:1137 -#, c-format -msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" -msgstr "okänt värde för CREATE_REPLICATION_SLOT-flagga \"%s\": \"%s\"" - #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1243 +#: replication/walsender.c:1257 #, c-format msgid "%s must not be called inside a transaction" msgstr "%s får inte anropas i en transaktion" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1253 +#: replication/walsender.c:1267 #, c-format msgid "%s must be called inside a transaction" msgstr "%s måste anropas i en transaktion" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1259 +#: replication/walsender.c:1273 #, c-format msgid "%s must be called in REPEATABLE READ isolation mode transaction" msgstr "%s måste anropas i transaktions REPEATABLE READ-isolationsläge" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1264 +#: replication/walsender.c:1278 #, c-format msgid "%s must be called in a read-only transaction" msgstr "%s måste anropas i en read-only-transaktion" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1270 +#: replication/walsender.c:1284 #, c-format msgid "%s must be called before any query" msgstr "%s måste anropas innan någon fråga" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1276 +#: replication/walsender.c:1290 #, c-format msgid "%s must not be called in a subtransaction" msgstr "%s får inte anropas i en undertransaktion" -#: replication/walsender.c:1453 +#: replication/walsender.c:1467 #, c-format msgid "terminating walsender process after promotion" msgstr "stänger ner walsender-process efter befordran" -#: replication/walsender.c:1996 +#: replication/walsender.c:2010 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "kan inte utföra nya kommandon när WAL-sändare är i stopp-läge" -#: replication/walsender.c:2050 +#: replication/walsender.c:2064 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "kan inte köra SQL-kommandon i WAL-sändare för fysisk replikering" -#: replication/walsender.c:2081 +#: replication/walsender.c:2095 #, c-format msgid "received replication command: %s" msgstr "tog emot replikeringskommando: %s" -#: replication/walsender.c:2089 tcop/fastpath.c:208 tcop/postgres.c:1137 +#: replication/walsender.c:2103 tcop/fastpath.c:208 tcop/postgres.c:1137 #: tcop/postgres.c:1494 tcop/postgres.c:1746 tcop/postgres.c:2251 #: tcop/postgres.c:2688 tcop/postgres.c:2765 #, c-format msgid "current transaction is aborted, commands ignored until end of transaction block" msgstr "aktuella transaktionen har avbrutits, alla kommandon ignoreras tills slutet på transaktionen" -#: replication/walsender.c:2249 replication/walsender.c:2284 +#: replication/walsender.c:2263 replication/walsender.c:2298 #, c-format msgid "unexpected EOF on standby connection" msgstr "oväntat EOF från standby-anslutning" -#: replication/walsender.c:2272 +#: replication/walsender.c:2286 #, c-format msgid "invalid standby message type \"%c\"" msgstr "ogiltigt standby-meddelandetyp \"%c\"" -#: replication/walsender.c:2361 +#: replication/walsender.c:2375 #, c-format msgid "unexpected message type \"%c\"" msgstr "oväntad meddelandetyp \"%c\"" -#: replication/walsender.c:2775 +#: replication/walsender.c:2789 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "avslutar walsender-process på grund av replikerings-timeout" @@ -23042,281 +23041,281 @@ msgstr "byta namn på en ON SELECT-regel tillåts inte" msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten" msgstr "WITH-frågenamn \"%s\" finns både i en regelhändelse och i frågan som skrivs om" -#: rewrite/rewriteHandler.c:617 +#: rewrite/rewriteHandler.c:620 #, c-format msgid "INSERT ... SELECT rule actions are not supported for queries having data-modifying statements in WITH" msgstr "INSERT ... SELECT-regler stöds inte för frågor som har datamodifierande satser i WITH" -#: rewrite/rewriteHandler.c:671 +#: rewrite/rewriteHandler.c:674 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "kan inte ha RETURNING-listor i multipla regler" -#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 +#: rewrite/rewriteHandler.c:911 rewrite/rewriteHandler.c:950 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "kan inte sätta in ett icke-DEFAULT-värde i kolumn \"%s\"" -#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 +#: rewrite/rewriteHandler.c:913 rewrite/rewriteHandler.c:979 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "Kolumn \"%s\" är en identitetskolumn definierad som GENERATED ALWAYS." -#: rewrite/rewriteHandler.c:912 +#: rewrite/rewriteHandler.c:915 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "Använd OVERRIDING SYSTEM VALUE för att överskugga." -#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 +#: rewrite/rewriteHandler.c:977 rewrite/rewriteHandler.c:985 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "kolumn \"%s\" kan bara uppdateras till DEFAULT" -#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 +#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "flera tilldelningar till samma kolumn \"%s\"" -#: rewrite/rewriteHandler.c:1691 +#: rewrite/rewriteHandler.c:1694 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE stöds inte för relationer med regler." -#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 +#: rewrite/rewriteHandler.c:1734 rewrite/rewriteHandler.c:3274 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "access till icke-system vy \"%s\" är begränsad" -#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 +#: rewrite/rewriteHandler.c:2133 rewrite/rewriteHandler.c:4285 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "oändlig rekursion detekterad i reglerna för relation \"%s\"" -#: rewrite/rewriteHandler.c:2235 +#: rewrite/rewriteHandler.c:2238 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "oändlig rekursion detekterad i policy för relation \"%s\"" -#: rewrite/rewriteHandler.c:2598 +#: rewrite/rewriteHandler.c:2601 msgid "Junk view columns are not updatable." msgstr "Skräpkolumner i vy är inte uppdateringsbara." -#: rewrite/rewriteHandler.c:2603 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that are not columns of their base relation are not updatable." msgstr "Vykolumner som inte är kolumner i dess basrelation är inte uppdateringsbara." -#: rewrite/rewriteHandler.c:2606 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that refer to system columns are not updatable." msgstr "Vykolumner som refererar till systemkolumner är inte uppdateringsbara." -#: rewrite/rewriteHandler.c:2609 +#: rewrite/rewriteHandler.c:2612 msgid "View columns that return whole-row references are not updatable." msgstr "Vykolumner som returnerar hel-rad-referenser är inte uppdateringsbara." -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing DISTINCT are not automatically updatable." msgstr "Vyer som innehåller DISTINCT är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2673 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing GROUP BY are not automatically updatable." msgstr "Vyer som innehåller GROUP BY är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2679 msgid "Views containing HAVING are not automatically updatable." msgstr "Vyer som innehåller HAVING är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2679 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "Vyer som innehåller UNION, INTERSECT eller EXCEPT är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2682 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing WITH are not automatically updatable." msgstr "Vyer som innehåller WITH är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2685 +#: rewrite/rewriteHandler.c:2688 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "Vyer som innehåller LIMIT eller OFFSET är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2697 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return aggregate functions are not automatically updatable." msgstr "Vyer som returnerar aggregatfunktioner är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2700 +#: rewrite/rewriteHandler.c:2703 msgid "Views that return window functions are not automatically updatable." msgstr "Vyer som returnerar fönsterfunktioner uppdateras inte automatiskt." -#: rewrite/rewriteHandler.c:2703 +#: rewrite/rewriteHandler.c:2706 msgid "Views that return set-returning functions are not automatically updatable." msgstr "Vyer som returnerar mängd-returnerande funktioner är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 -#: rewrite/rewriteHandler.c:2722 +#: rewrite/rewriteHandler.c:2713 rewrite/rewriteHandler.c:2717 +#: rewrite/rewriteHandler.c:2725 msgid "Views that do not select from a single table or view are not automatically updatable." msgstr "Vyer som inte läser från en ensam tabell eller vy är inte automatiskt uppdateringsbar." -#: rewrite/rewriteHandler.c:2725 +#: rewrite/rewriteHandler.c:2728 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "Vyer som innehåller TABLESAMPLE är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:2749 +#: rewrite/rewriteHandler.c:2752 msgid "Views that have no updatable columns are not automatically updatable." msgstr "Vyer som inte har några uppdateringsbara kolumner är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3133 rewrite/rewriteHandler.c:3168 #, c-format msgid "cannot insert into view \"%s\"" msgstr "kan inte sätta in i vy \"%s\"" -#: rewrite/rewriteHandler.c:3133 +#: rewrite/rewriteHandler.c:3136 #, c-format msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule." msgstr "För att tillåta insättning i en vy så skapa en INSTEAD OF INSERT-trigger eller en villkorslös ON INSERT DO INSTEAD-regel." -#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3141 rewrite/rewriteHandler.c:3177 #, c-format msgid "cannot update view \"%s\"" msgstr "kan inte uppdatera vy \"%s\"" -#: rewrite/rewriteHandler.c:3141 +#: rewrite/rewriteHandler.c:3144 #, c-format msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule." msgstr "För att tillåta uppdatering av en vy så skapa en INSTEAD OF UPDATE-trigger eller en villkorslös ON UPDATE DO INSTEAD-regel." -#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 +#: rewrite/rewriteHandler.c:3149 rewrite/rewriteHandler.c:3186 #, c-format msgid "cannot delete from view \"%s\"" msgstr "kan inte radera från vy \"%s\"" -#: rewrite/rewriteHandler.c:3149 +#: rewrite/rewriteHandler.c:3152 #, c-format msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule." msgstr "För att tillåta bortagning i en vy så skapa en INSTEAD OF DELETE-trigger eller en villkorslös ON DELETE DO INSTEAD-regel." -#: rewrite/rewriteHandler.c:3168 +#: rewrite/rewriteHandler.c:3171 #, c-format msgid "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT trigger." msgstr "För att tillåta insert till en vy med MERGE så krävs en INSTEAD OF INSERT-trigger." -#: rewrite/rewriteHandler.c:3177 +#: rewrite/rewriteHandler.c:3180 #, c-format msgid "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE trigger." msgstr "För att tillåta uppdatering av en vy så krävs en INSTEAD OF UPDATE-trigger." -#: rewrite/rewriteHandler.c:3186 +#: rewrite/rewriteHandler.c:3189 #, c-format msgid "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE trigger." msgstr "För att tillåta borttagning från en vy så krävs en INSTEAD OF DELETE-trigger." -#: rewrite/rewriteHandler.c:3361 +#: rewrite/rewriteHandler.c:3364 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "kan inte insert:a i kolumn \"%s\" i vy \"%s\"" -#: rewrite/rewriteHandler.c:3369 +#: rewrite/rewriteHandler.c:3372 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "kan inte uppdatera kolumn \"%s\" i view \"%s\"" -#: rewrite/rewriteHandler.c:3377 +#: rewrite/rewriteHandler.c:3380 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "kan inte merge:a till kolumn \"%s\" i vy \"%s\"" -#: rewrite/rewriteHandler.c:3405 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "cannot merge into view \"%s\"" msgstr "kan inte merge:a till vy \"%s\"" -#: rewrite/rewriteHandler.c:3407 +#: rewrite/rewriteHandler.c:3410 #, c-format msgid "MERGE is not supported for views with INSTEAD OF triggers for some actions but not all." msgstr "MERGE stöds inte för vyer med INSTEAD OF-trigger för vissa actions men inte för andra." -#: rewrite/rewriteHandler.c:3408 +#: rewrite/rewriteHandler.c:3411 #, c-format msgid "To enable merging into the view, either provide a full set of INSTEAD OF triggers or drop the existing INSTEAD OF triggers." msgstr "För att tillåta merge till en vy så antingen skapa en full uppsättning INSTEAD OF-triggers eller släng de befintliga INSERT OF-triggers." -#: rewrite/rewriteHandler.c:3923 +#: rewrite/rewriteHandler.c:3942 #, c-format msgid "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in WITH" msgstr "DO INSTEAD NOTIFY-regler stöds inte för datamodifierande satser i WITH" -#: rewrite/rewriteHandler.c:3934 +#: rewrite/rewriteHandler.c:3953 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH" msgstr "DO INSTEAD NOTHING-regler stöds inte för datamodifierande satser i WITH" -#: rewrite/rewriteHandler.c:3948 +#: rewrite/rewriteHandler.c:3967 #, c-format msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "villkorliga DO INSTEAD-regler stöds inte för datamodifierande satser i WITH" -#: rewrite/rewriteHandler.c:3952 +#: rewrite/rewriteHandler.c:3971 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "DO ALSO-regler stöds inte för datamodifierande satser i WITH" -#: rewrite/rewriteHandler.c:3957 +#: rewrite/rewriteHandler.c:3976 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "fler-satsiga DO INSTEAD-regler stöds inte för datamodifierande satser i WITH" -#: rewrite/rewriteHandler.c:4217 +#: rewrite/rewriteHandler.c:4237 msgid "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "Vyer med villkorliga DO INSTEAD-regler är inte automatiskt uppdateringsbara." -#: rewrite/rewriteHandler.c:4314 +#: rewrite/rewriteHandler.c:4335 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "kan inte utföra INSERT RETURNING på relation \"%s\"" -#: rewrite/rewriteHandler.c:4316 +#: rewrite/rewriteHandler.c:4337 #, c-format msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." msgstr "Du behöver en villkorslös ON INSERT DO INSTEAD-regel med en RETURNING-klausul." -#: rewrite/rewriteHandler.c:4321 +#: rewrite/rewriteHandler.c:4342 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "kan inte utföra UPDATE RETURNING på relation \"%s\"" -#: rewrite/rewriteHandler.c:4323 +#: rewrite/rewriteHandler.c:4344 #, c-format msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." msgstr "Du behöver en villkorslös ON UPDATE DO INSTEAD-regel med en RETURNING-klausul." -#: rewrite/rewriteHandler.c:4328 +#: rewrite/rewriteHandler.c:4349 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "kan inte utföra DELETE RETURNING på relation \"%s\"" -#: rewrite/rewriteHandler.c:4330 +#: rewrite/rewriteHandler.c:4351 #, c-format msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." msgstr "Du behöver en villkorslös ON DELETE DO INSTEAD-regel med en RETURNING-klausul." -#: rewrite/rewriteHandler.c:4348 +#: rewrite/rewriteHandler.c:4369 #, c-format msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules" msgstr "INSERT med ON CONFLICT-klausul kan inte användas med tabell som har INSERT- eller UPDATE-regler" -#: rewrite/rewriteHandler.c:4405 +#: rewrite/rewriteHandler.c:4426 #, c-format msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries" msgstr "WITH kan inte användas i en fråga där regler skrivit om den till flera olika frågor" -#: rewrite/rewriteManip.c:1178 +#: rewrite/rewriteManip.c:1175 #, c-format msgid "conditional utility statements are not implemented" msgstr "villkorliga hjälpsatser är inte implementerat" -#: rewrite/rewriteManip.c:1523 +#: rewrite/rewriteManip.c:1520 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "WHERE CURRENT OF för en vy är inte implementerat" -#: rewrite/rewriteManip.c:1926 +#: rewrite/rewriteManip.c:1923 #, 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 "NEW-variabler i ON UPDATE-regler kan inte referera till kolumner som är del av en multiple uppdatering i subjektets UPDATE-kommando" @@ -23471,59 +23470,59 @@ msgstr "okänd Snowball-parameter: \"%s\"" msgid "missing Language parameter" msgstr "saknar parameter \"Language\"" -#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:935 +#: statistics/attribute_stats.c:192 statistics/attribute_stats.c:937 #: statistics/relation_stats.c:98 #, c-format msgid "Statistics cannot be modified during recovery." msgstr "Statistik kan inte ändras under återställning." -#: statistics/attribute_stats.c:202 +#: statistics/attribute_stats.c:205 #, c-format msgid "cannot specify both \"%s\" and \"%s\"" msgstr "kan inte ange både \"%s\" och \"%s\"" -#: statistics/attribute_stats.c:228 +#: statistics/attribute_stats.c:231 #, c-format msgid "must specify either \"%s\" or \"%s\"" msgstr "måste ange antingen \"%s\" eller \"%s\"" -#: statistics/attribute_stats.c:236 +#: statistics/attribute_stats.c:239 #, c-format msgid "cannot modify statistics on system column \"%s\"" msgstr "kan inte ändra statistik på systemkolumn \"%s\"" -#: statistics/attribute_stats.c:300 +#: statistics/attribute_stats.c:303 #, c-format msgid "could not determine element type of column \"%s\"" msgstr "kan inte bestämma elementtypen på kolumn \"%s\"" -#: statistics/attribute_stats.c:301 statistics/attribute_stats.c:318 -#: statistics/attribute_stats.c:333 +#: statistics/attribute_stats.c:304 statistics/attribute_stats.c:321 +#: statistics/attribute_stats.c:336 #, c-format msgid "Cannot set %s or %s." msgstr "Kan inte sätta %s eller %s." -#: statistics/attribute_stats.c:317 +#: statistics/attribute_stats.c:320 #, c-format msgid "could not determine less-than operator for column \"%s\"" msgstr "kunde inte härleda mindre-än-operator för kolumnen \"%s\"" -#: statistics/attribute_stats.c:332 +#: statistics/attribute_stats.c:335 #, c-format msgid "column \"%s\" is not a range type" msgstr "kolumnen \"%s\" är inte en range-typ" -#: statistics/attribute_stats.c:735 +#: statistics/attribute_stats.c:738 #, c-format msgid "\"%s\" array must not contain null values" msgstr "\"%s\"-array:er får inte innehålla null-värden" -#: statistics/attribute_stats.c:778 +#: statistics/attribute_stats.c:781 #, c-format msgid "maximum number of statistics slots exceeded: %d" msgstr "maximalt antal statistikslottar överskridet: %d" -#: statistics/attribute_stats.c:945 +#: statistics/attribute_stats.c:949 #, c-format msgid "cannot clear statistics on system column \"%s\"" msgstr "kan inte nollställa statistik på systemkolumn \"%s\"" @@ -23538,72 +23537,82 @@ msgstr "statistikobjekt \"%s.%s\" kunde inte beräknas för relation \"%s.%s\"" msgid "function returning record called in context that cannot accept type record" msgstr "en funktion med post som värde anropades i sammanhang där poster inte kan godtagas." -#: statistics/relation_stats.c:115 +#: statistics/relation_stats.c:117 #, c-format msgid "argument \"%s\" must not be less than -1.0" msgstr "argument \"%s\" får inte vara mindre än -1.0" -#: statistics/stat_utils.c:44 +#: statistics/stat_utils.c:47 #, c-format msgid "argument \"%s\" must not be null" msgstr "argument \"%s\" får inte vara null" -#: statistics/stat_utils.c:71 +#: statistics/stat_utils.c:74 #, c-format msgid "argument \"%s\" must not be a multidimensional array" msgstr "argument \"%s\" får inte vara en multidimensionell array" -#: statistics/stat_utils.c:80 +#: statistics/stat_utils.c:83 #, c-format msgid "argument \"%s\" array must not contain null values" msgstr "argument \"%s\"-array:er får inte innehålla null-värden" -#: statistics/stat_utils.c:111 +#: statistics/stat_utils.c:114 #, c-format msgid "argument \"%s\" must be specified when argument \"%s\" is specified" msgstr "argument \"%s\" måste ges när argumentet \"%s\" används" -#: statistics/stat_utils.c:178 +#: statistics/stat_utils.c:177 +#, c-format +msgid "index \"%s\" was concurrently dropped" +msgstr "index \"%s\" togs bort parallellt" + +#: statistics/stat_utils.c:192 +#, c-format +msgid "index \"%s\" was concurrently created" +msgstr "index \"%s\" skapades parallellt" + +#: statistics/stat_utils.c:212 #, c-format msgid "cannot modify statistics for relation \"%s\"" msgstr "kan inte ändra statistik för relationen \"%s\"" -#: statistics/stat_utils.c:199 +#: statistics/stat_utils.c:220 #, c-format msgid "cannot modify statistics for shared relation" msgstr "kan inte ändra statistik för delad relation" -#: statistics/stat_utils.c:252 +#: statistics/stat_utils.c:260 #, c-format msgid "unrecognized argument name: \"%s\"" msgstr "okänt argumentnamn: \"%s\"" -#: statistics/stat_utils.c:266 +#: statistics/stat_utils.c:274 #, c-format msgid "argument \"%s\" has type %s, expected type %s" msgstr "argumentet till \"%s\" har typen %s, förväntade typen %s" -#: statistics/stat_utils.c:307 +#: statistics/stat_utils.c:315 #, c-format msgid "variadic arguments must be name/value pairs" msgstr "variadic-argument måste vara namn/värde-par" -#: statistics/stat_utils.c:308 +#: statistics/stat_utils.c:316 #, c-format msgid "Provide an even number of variadic arguments that can be divided into pairs." msgstr "Provide an even number of variadic arguments that can be divided into pairs." -#: statistics/stat_utils.c:322 +#: statistics/stat_utils.c:330 #, c-format msgid "name at variadic position %d is null" msgstr "namnet vid variadic position %d är null" -#: statistics/stat_utils.c:326 +#: statistics/stat_utils.c:334 #, c-format msgid "name at variadic position %d has type %s, expected type %s" msgstr "namn vid variadic position %d har typ %s, förväntade typ %s" -#: storage/aio/aio.c:1340 +#: storage/aio/aio.c:1343 #, c-format msgid "Only -1 or values bigger than 0 are valid." msgstr "Bara -1 eller värden större än 0 är giltiga." @@ -23671,69 +23680,69 @@ msgstr "Multipla fel --- skrivfelet kan vara permanent." msgid "writing block %u of relation \"%s\"" msgstr "skriver block %u i relation \"%s\"" -#: storage/buffer/bufmgr.c:7313 +#: storage/buffer/bufmgr.c:7317 #, c-format msgid "zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u of relation \"%s\"" msgstr "nollställer %u sidor och ignorerar %u kontrollsummefel bland blocken %u..%u i relationen \"%s\"" -#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7344 +#: storage/buffer/bufmgr.c:7320 storage/buffer/bufmgr.c:7348 #, c-format msgid "Block %u held the first zeroed page." msgstr "Block %u hade den första nollade sidan." -#: storage/buffer/bufmgr.c:7318 +#: storage/buffer/bufmgr.c:7322 #, c-format msgid "See server log for details about the other %d invalid block." msgid_plural "See server log for details about the other %d invalid blocks." msgstr[0] "Se server-logg för detaljer om det andra %d ogiltiga blocket." msgstr[1] "Se server-logg för detaljer om de andra %d ogiltiga blocken." -#: storage/buffer/bufmgr.c:7335 +#: storage/buffer/bufmgr.c:7339 #, c-format msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" msgstr "%u ogiltiga sidor bland blocken %u..%u i relationen \"%s\"" -#: storage/buffer/bufmgr.c:7336 +#: storage/buffer/bufmgr.c:7340 #, c-format msgid "Block %u held the first invalid page." msgstr "Block %u hade den första ogiltiga sidan." -#: storage/buffer/bufmgr.c:7337 +#: storage/buffer/bufmgr.c:7341 #, c-format msgid "See server log for the other %u invalid block(s)." msgstr "Se server-logg för de andra %u ogiltiga blocken." -#: storage/buffer/bufmgr.c:7342 +#: storage/buffer/bufmgr.c:7346 #, c-format msgid "invalid page in block %u of relation \"%s\"; zeroing out page" msgstr "felaktig sida i block %u för relation \"%s\"; nollställer sidan" -#: storage/buffer/bufmgr.c:7343 +#: storage/buffer/bufmgr.c:7347 #, c-format msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" msgstr "nollar ut %u ogiltiga sidor bland blocken %u..%u i relationen \"%s\"" -#: storage/buffer/bufmgr.c:7345 +#: storage/buffer/bufmgr.c:7349 #, c-format msgid "See server log for the other %u zeroed block(s)." msgstr "Se server-logg för de andra %u nollade sidorna." -#: storage/buffer/bufmgr.c:7350 +#: storage/buffer/bufmgr.c:7354 #, c-format msgid "ignoring checksum failure in block %u of relation \"%s\"" msgstr "ignorerar kontrollsummefel för block %u i relationen \"%s\"" -#: storage/buffer/bufmgr.c:7351 +#: storage/buffer/bufmgr.c:7355 #, c-format msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" msgstr "ignorerar %u kontrollsummefel bland blocken %u..%u i relationen \"%s\"" -#: storage/buffer/bufmgr.c:7352 +#: storage/buffer/bufmgr.c:7356 #, c-format msgid "Block %u held the first ignored page." msgstr "Block %u hade den första ignorerade sidan." -#: storage/buffer/bufmgr.c:7353 +#: storage/buffer/bufmgr.c:7357 #, c-format msgid "See server log for the other %u ignored block(s)." msgstr "Se server-logg för de andra %u ignorerade sidorna." @@ -23778,7 +23787,7 @@ msgstr "kunde inte bestämma storlek på temporär fil \"%s\" från BufFile \"%s msgid "could not delete fileset \"%s\": %m" msgstr "kunde inte radera filmängd \"%s\": %m" -#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1318 +#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1332 #, c-format msgid "could not truncate file \"%s\": %m" msgstr "kunde inte trunkera fil \"%s\": %m" @@ -23788,139 +23797,139 @@ msgstr "kunde inte trunkera fil \"%s\": %m" msgid "could not clone file \"%s\" to \"%s\": %m" msgstr "kunde inte klona fil \"%s\" till \"%s\": %m" -#: storage/file/fd.c:580 storage/file/fd.c:652 storage/file/fd.c:688 +#: storage/file/fd.c:583 storage/file/fd.c:655 storage/file/fd.c:691 #, c-format msgid "could not flush dirty data: %m" msgstr "kunde inte flush:a smutsig data: %m" -#: storage/file/fd.c:610 +#: storage/file/fd.c:613 #, c-format msgid "could not determine dirty data size: %m" msgstr "kunde inte lista ut storlek på smutsig data: %m" -#: storage/file/fd.c:662 +#: storage/file/fd.c:665 #, c-format msgid "could not munmap() while flushing data: %m" msgstr "kunde inte göra munmap() vid flush:ning av data: %m" -#: storage/file/fd.c:980 +#: storage/file/fd.c:983 #, c-format msgid "getrlimit failed: %m" msgstr "getrlimit misslyckades: %m" -#: storage/file/fd.c:1071 +#: storage/file/fd.c:1074 #, c-format msgid "insufficient file descriptors available to start server process" msgstr "otillräckligt antal fildeskriptorer tillgängligt för att starta serverprocessen" -#: storage/file/fd.c:1072 +#: storage/file/fd.c:1075 #, c-format msgid "System allows %d, server needs at least %d, %d files are already open." msgstr "Systemet tillåter %d, servern behöver minst %d, %d filer är redan öppnade." -#: storage/file/fd.c:1161 storage/file/fd.c:2676 storage/file/fd.c:2785 -#: storage/file/fd.c:2939 +#: storage/file/fd.c:1164 storage/file/fd.c:2679 storage/file/fd.c:2788 +#: storage/file/fd.c:2942 #, c-format msgid "out of file descriptors: %m; release and retry" msgstr "slut på fildeskriptorer: %m; frigör och försök igen" -#: storage/file/fd.c:1537 +#: storage/file/fd.c:1540 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "temporär fil: sökväg \"%s\", storlek %lu" -#: storage/file/fd.c:1676 +#: storage/file/fd.c:1679 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "kunde inte skapa temporär katalog \"%s\": %m" -#: storage/file/fd.c:1683 +#: storage/file/fd.c:1686 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "kunde inte skapa temporär underkatalog \"%s\": %m" -#: storage/file/fd.c:1880 +#: storage/file/fd.c:1883 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "kan inte skapa temporär fil \"%s\": %m" -#: storage/file/fd.c:1916 +#: storage/file/fd.c:1919 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "kunde inte öppna temporär fil \"%s\": %m" # unlink refererar till unix-funktionen unlink() så den översätter vi inte -#: storage/file/fd.c:1957 +#: storage/file/fd.c:1960 #, c-format msgid "could not unlink temporary file \"%s\": %m" msgstr "kunde inte unlink:a temporär fil \"%s\": %m" -#: storage/file/fd.c:2047 +#: storage/file/fd.c:2050 #, c-format msgid "could not delete file \"%s\": %m" msgstr "kunde inte radera fil \"%s\": %m" -#: storage/file/fd.c:2286 +#: storage/file/fd.c:2289 #, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" msgstr "storlek på temporär fil överskrider \"temp_file_limit\" (%dkB)" -#: storage/file/fd.c:2652 storage/file/fd.c:2711 +#: storage/file/fd.c:2655 storage/file/fd.c:2714 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\"" msgstr "överskred maxAllocatedDescs (%d) vid försök att öppna fil \"%s\"" -#: storage/file/fd.c:2756 +#: storage/file/fd.c:2759 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\"" msgstr "överskred maxAllocatedDescs (%d) vid försök att köra kommando \"%s\"" -#: storage/file/fd.c:2915 +#: storage/file/fd.c:2918 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\"" msgstr "överskred maxAllocatedDescs (%d) vid försök att öppna katalog \"%s\"" -#: storage/file/fd.c:3446 +#: storage/file/fd.c:3449 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "oväntad fil hittades i katalogen för temporära filer: \"%s\"" -#: storage/file/fd.c:3564 +#: storage/file/fd.c:3567 #, c-format msgid "syncing data directory (syncfs), elapsed time: %ld.%02d s, current path: %s" msgstr "synkroniserar datakatalog (syncfs), förbrukad tid: %ld.%02d s, aktuell sökväg: %s" -#: storage/file/fd.c:3791 +#: storage/file/fd.c:3794 #, c-format msgid "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "synkroniserar datakatalog (pre-fsync), förbrukad tid: %ld.%02d s, aktuell sökväg: %s" -#: storage/file/fd.c:3823 +#: storage/file/fd.c:3826 #, c-format msgid "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "synkroniserar datakatalog (fsync), förbrukad tid: %ld.%02d s, aktuell sökväg: %s" -#: storage/file/fd.c:4012 +#: storage/file/fd.c:4015 #, c-format msgid "\"%s\" is not supported on this platform." msgstr "\"%s\" stöds inte på denna platform" -#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 +#: storage/file/fd.c:4030 tcop/backend_startup.c:1080 #, c-format msgid "Invalid list syntax in parameter \"%s\"." msgstr "Ogiltigt listsyntax för parameter \"%s\"." -#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 +#: storage/file/fd.c:4050 tcop/backend_startup.c:1054 #, c-format msgid "Invalid option \"%s\"." msgstr "Ogiltig flagga \"%s\"." -#: storage/file/fd.c:4060 +#: storage/file/fd.c:4063 #, c-format msgid "\"%s\" is not supported for WAL because %s is too small." msgstr "\"%s\" stöds inte för WAL då %s är för liten." -#: storage/file/fd.c:4068 +#: storage/file/fd.c:4071 #, c-format msgid "\"%s\" is not supported for data because %s is too small." msgstr "\"%s\" stöds inte för data då %s är för liten." @@ -24010,22 +24019,22 @@ msgstr "kunde inte stänga delat minnessegment \"%s\": %m" msgid "could not duplicate handle for \"%s\": %m" msgstr "kunde inte duplicera handle för \"%s\": %m" -#: storage/ipc/dsm_registry.c:142 +#: storage/ipc/dsm_registry.c:144 #, c-format msgid "DSM segment name cannot be empty" msgstr "Namn på DSM-segment får inte vara tomt" -#: storage/ipc/dsm_registry.c:146 +#: storage/ipc/dsm_registry.c:148 #, c-format msgid "DSM segment name too long" msgstr "Namn på DSM-segment är för långt" -#: storage/ipc/dsm_registry.c:150 +#: storage/ipc/dsm_registry.c:152 #, c-format msgid "DSM segment size must be nonzero" msgstr "Storlek på DSM-segment får inte vara noll" -#: storage/ipc/dsm_registry.c:176 +#: storage/ipc/dsm_registry.c:168 #, c-format msgid "requested DSM segment size does not match size of existing segment" msgstr "efterfrågad storlek på DSM-segment matchar inte storleken på nuvarande segment" @@ -24528,7 +24537,7 @@ msgstr "korrupt radpekare: offset = %u, storlek = %u" msgid "cannot extend file \"%s\" beyond %u blocks" msgstr "kan inte utöka fil \"%s\" utöver %u block" -#: storage/smgr/md.c:517 storage/smgr/md.c:628 +#: storage/smgr/md.c:517 storage/smgr/md.c:639 #, c-format msgid "could not extend file \"%s\": %m" msgstr "kunde inte utöka fil \"%s\": %m" @@ -24538,62 +24547,62 @@ msgstr "kunde inte utöka fil \"%s\": %m" msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u" msgstr "kunde inte utöka fil \"%s\": skrev bara %d av %d byte vid block %u" -#: storage/smgr/md.c:606 +#: storage/smgr/md.c:617 #, c-format msgid "could not extend file \"%s\" with FileFallocate(): %m" msgstr "kunde inte utöka fil \"%s\" med FileFallocate(): %m" -#: storage/smgr/md.c:899 storage/smgr/md.c:2047 +#: storage/smgr/md.c:910 storage/smgr/md.c:2061 #, c-format msgid "could not read blocks %u..%u in file \"%s\": %m" msgstr "kunde inte läsa block %u..%u i fil \"%s\": %m" -#: storage/smgr/md.c:946 storage/smgr/md.c:2060 +#: storage/smgr/md.c:957 storage/smgr/md.c:2074 #, c-format msgid "could not read blocks %u..%u in file \"%s\": read only %zu of %zu bytes" msgstr "kunde inte läsa block %u..%u i fil \"%s\": läste bara %zu av %zu byte" -#: storage/smgr/md.c:1023 +#: storage/smgr/md.c:1034 #, c-format msgid "could not start reading blocks %u..%u in file \"%s\": %m" msgstr "kunde inte börja läsa block %u..%u i fil \"%s\": %m" -#: storage/smgr/md.c:1119 +#: storage/smgr/md.c:1130 #, c-format msgid "could not write blocks %u..%u in file \"%s\": %m" msgstr "kunde inte skriva block %u..%u i fil \"%s\": %m" -#: storage/smgr/md.c:1289 +#: storage/smgr/md.c:1303 #, c-format msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now" msgstr "kunde inte trunkera fil \"%s\" till %u block: den är bara %u block nu" -#: storage/smgr/md.c:1344 +#: storage/smgr/md.c:1358 #, c-format msgid "could not truncate file \"%s\" to %u blocks: %m" msgstr "kunde inte trunkera fil \"%s\" till %u block: %m" -#: storage/smgr/md.c:1832 +#: storage/smgr/md.c:1846 #, c-format msgid "could not open file \"%s\" (target block %u): previous segment is only %u blocks" msgstr "kunde inte öppna fil \"%s\" (målblock %u): föregående segment är bara %u block" -#: storage/smgr/md.c:1846 +#: storage/smgr/md.c:1860 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "kunde inte öppna fil \"%s\" (målblock %u): %m" -#: storage/smgr/smgr.c:1106 +#: storage/smgr/smgr.c:1115 #, c-format msgid "file \"%s\"" msgstr "fil \"%s\"" -#: storage/smgr/smgr.c:1108 +#: storage/smgr/smgr.c:1117 #, c-format msgid "block %u in file \"%s\"" msgstr "block %u i fil \"%s\"" -#: storage/smgr/smgr.c:1112 +#: storage/smgr/smgr.c:1121 #, c-format msgid "blocks %u..%u in file \"%s\"" msgstr "block %u..%u i fil \"%s\"" @@ -25657,7 +25666,7 @@ msgstr "indatatyp är inte en array" #: utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 #: utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 #: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 -#: utils/adt/varlena.c:3184 utils/adt/varlena.c:4118 +#: utils/adt/varlena.c:3195 utils/adt/varlena.c:4129 #, c-format msgid "integer out of range" msgstr "heltal utanför giltigt intervall" @@ -25903,8 +25912,8 @@ msgstr "null-element i arrayer stöds inte i detta kontext" msgid "cannot compare arrays of different element types" msgstr "kan inte jämföra arrayer med olika elementtyper" -#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2805 -#: utils/adt/multirangetypes.c:2877 utils/adt/rangetypes.c:1425 +#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2806 +#: utils/adt/multirangetypes.c:2878 utils/adt/rangetypes.c:1425 #: utils/adt/rangetypes.c:1489 utils/adt/rowtypes.c:1893 #, c-format msgid "could not identify a hash function for type %s" @@ -26378,7 +26387,7 @@ msgstr "\"%s\" är utanför giltigt intervall för typen double precision" #: utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 #: utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 #: utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 -#: utils/adt/varlena.c:4093 +#: utils/adt/varlena.c:4104 #, c-format msgid "smallint out of range" msgstr "smallint utanför sitt intervall" @@ -26807,7 +26816,7 @@ msgstr "stegstorleken kan inte vara noll" #: utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 #: utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 #: utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 -#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4143 +#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4154 #, c-format msgid "bigint out of range" msgstr "bigint utanför sitt intervall" @@ -27550,12 +27559,12 @@ msgstr "Förväntade range-start" msgid "Expected comma or end of multirange." msgstr "Oväntat komma eller slut på multirange." -#: utils/adt/multirangetypes.c:981 +#: utils/adt/multirangetypes.c:982 #, c-format msgid "multiranges cannot be constructed from multidimensional arrays" msgstr "multiranges kan inte skapas från en multidimensionell array" -#: utils/adt/multirangetypes.c:1007 +#: utils/adt/multirangetypes.c:1008 #, c-format msgid "multirange values cannot contain null members" msgstr "multirange-värden kan inte innehålla null-medlemmar" @@ -27801,59 +27810,59 @@ msgstr "efterfrågat tecken är inte giltigt för kodning: %u" msgid "percentile value %g is not between 0 and 1" msgstr "percentil-värde %g är inte mellan 0 och 1" -#: utils/adt/pg_locale.c:304 utils/adt/pg_locale.c:336 +#: utils/adt/pg_locale.c:311 utils/adt/pg_locale.c:343 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "lokalnamn \"%s\" innehåller tecken som ej är ASCII" -#: utils/adt/pg_locale.c:1120 +#: utils/adt/pg_locale.c:1127 #, c-format msgid "collation \"%s\" has no actual version, but a version was recorded" msgstr "jämförelse (collation) \"%s\" har ingen version men en version har lagrats" -#: utils/adt/pg_locale.c:1126 +#: utils/adt/pg_locale.c:1133 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "jämförelse (collation) \"%s\" har en version som inte matchar" -#: utils/adt/pg_locale.c:1128 +#: utils/adt/pg_locale.c:1135 #, c-format msgid "The collation in the database was created using version %s, but the operating system provides version %s." msgstr "Jämförelsen (collation) i databasen har skapats med version %s men operativsystemet har version %s." -#: utils/adt/pg_locale.c:1131 +#: utils/adt/pg_locale.c:1138 #, c-format msgid "Rebuild all objects affected by this collation and run ALTER COLLATION %s REFRESH VERSION, or build PostgreSQL with the right library version." msgstr "Bygg om alla objekt som påverkas av denna jämförelse (collation) och kör ALTER COLLATION %s REFRESH VERSION eller bygg PostgreSQL med rätt bibliotekversion." -#: utils/adt/pg_locale.c:1484 utils/adt/pg_locale.c:1511 +#: utils/adt/pg_locale.c:1498 utils/adt/pg_locale.c:1525 #: utils/adt/pg_locale_builtin.c:188 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "ogiltigt lokalnamn \"%s\" för inbyggd leverantör" -#: utils/adt/pg_locale.c:1576 +#: utils/adt/pg_locale.c:1590 #, c-format msgid "could not convert locale name \"%s\" to language tag: %s" msgstr "kunde inte konvertera lokalnamn \"%s\" till språktagg: %s" -#: utils/adt/pg_locale.c:1585 utils/adt/pg_locale.c:1660 +#: utils/adt/pg_locale.c:1599 utils/adt/pg_locale.c:1674 #: utils/adt/pg_locale_icu.c:215 #, c-format msgid "ICU is not supported in this build" msgstr "ICU stöds inte av detta bygge" -#: utils/adt/pg_locale.c:1618 +#: utils/adt/pg_locale.c:1632 #, c-format msgid "could not get language from ICU locale \"%s\": %s" msgstr "kunde inte härleda språk från ICU-lokalen \"%s\": %s" -#: utils/adt/pg_locale.c:1620 utils/adt/pg_locale.c:1650 +#: utils/adt/pg_locale.c:1634 utils/adt/pg_locale.c:1664 #, c-format msgid "To disable ICU locale validation, set the parameter \"%s\" to \"%s\"." msgstr "För att stänga av validering av ICU-lokal, sätt parameter \"%s\" till \"%s\"" -#: utils/adt/pg_locale.c:1648 +#: utils/adt/pg_locale.c:1662 #, c-format msgid "ICU locale \"%s\" has unknown language \"%s\"" msgstr "ICU-lokalen \"%s\" har ett okänt språk \"%s\"" @@ -28069,7 +28078,7 @@ msgstr "För många komman." msgid "Junk after right parenthesis or bracket." msgstr "Skräp efter höger parentes eller hakparentes." -#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4486 #, c-format msgid "regular expression failed: %s" msgstr "reguljärt uttryck misslyckades: %s" @@ -28137,7 +28146,7 @@ msgid "Provide two argument types for operator." msgstr "Ange två argumenttyper för operatorn." #: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 -#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3481 utils/adt/varlena.c:3486 +#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3492 utils/adt/varlena.c:3497 #, c-format msgid "invalid name syntax" msgstr "ogiltig namnsyntax" @@ -28693,8 +28702,8 @@ msgid "bit string too long for type bit varying(%d)" msgstr "bitsträngen för lång för typen bit varying(%d)" #: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 -#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3102 -#: utils/adt/varlena.c:3180 +#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3113 +#: utils/adt/varlena.c:3191 #, c-format msgid "negative substring length not allowed" msgstr "negativ substräng-läng tillåts inte" @@ -28719,7 +28728,7 @@ msgstr "kan inte XOR:a bitsträngar av olika storlek" msgid "bit index %d out of valid range (0..%d)" msgstr "bitindex %d utanför giltigt intervall (0..%d)" -#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3395 #, c-format msgid "new bit must be 0 or 1" msgstr "nya biten måste vara 0 eller 1" @@ -28734,92 +28743,92 @@ msgstr "värdet för långt för typen character (%d)" msgid "value too long for type character varying(%d)" msgstr "värdet för långt för typen character varying(%d)" -#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1602 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "kunde inte bestämma vilken jämförelse (collation) som skall användas för strängjämförelse" -#: utils/adt/varlena.c:1864 +#: utils/adt/varlena.c:1875 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "ickedeterministiska jämförelser (collation) stöds inte för substrängsökningar" -#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 +#: utils/adt/varlena.c:3279 utils/adt/varlena.c:3346 #, c-format msgid "index %d out of valid range, 0..%d" msgstr "index %d utanför giltigt intervall, 0..%d" -#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#: utils/adt/varlena.c:3310 utils/adt/varlena.c:3382 #, c-format msgid "index % out of valid range, 0..%" msgstr "index % utanför giltigt intervall, 0..%" -#: utils/adt/varlena.c:4587 +#: utils/adt/varlena.c:4598 #, c-format msgid "field position must not be zero" msgstr "fältpositionen får inte vara noll" -#: utils/adt/varlena.c:5832 +#: utils/adt/varlena.c:5843 #, c-format msgid "unterminated format() type specifier" msgstr "icketerminerad typangivelse för format()" -#: utils/adt/varlena.c:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 +#: utils/adt/varlena.c:5844 utils/adt/varlena.c:5978 utils/adt/varlena.c:6099 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "För ett ensamt \"%%\" använd \"%%%%\"." -#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 +#: utils/adt/varlena.c:5976 utils/adt/varlena.c:6097 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "okänd typspecifierare \"%.*s\" för format()" -#: utils/adt/varlena.c:5978 utils/adt/varlena.c:6035 +#: utils/adt/varlena.c:5989 utils/adt/varlena.c:6046 #, c-format msgid "too few arguments for format()" msgstr "för få argument till format()" -#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 +#: utils/adt/varlena.c:6142 utils/adt/varlena.c:6324 #, c-format msgid "number is out of range" msgstr "numret är utanför giltigt intervall" -#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 +#: utils/adt/varlena.c:6205 utils/adt/varlena.c:6233 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "formatet anger argument 0 men argumenten är numrerade från 1" -#: utils/adt/varlena.c:6215 +#: utils/adt/varlena.c:6226 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "argumentposition för bredd måste avslutas med \"$\"" -#: utils/adt/varlena.c:6260 +#: utils/adt/varlena.c:6271 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "null-värden kan inte formatteras som SQL-identifierare" -#: utils/adt/varlena.c:6468 +#: utils/adt/varlena.c:6479 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "Unicode-normalisering kan bara utföras om server-kodningen är UTF8" -#: utils/adt/varlena.c:6481 +#: utils/adt/varlena.c:6492 #, c-format msgid "invalid normalization form: %s" msgstr "ogiltigt normaliseringsform: %s" -#: utils/adt/varlena.c:6526 +#: utils/adt/varlena.c:6537 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "Unicode-kategorisering kan bara utföras om server-kodningen är UTF8" -#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 +#: utils/adt/varlena.c:6754 utils/adt/varlena.c:6789 utils/adt/varlena.c:6824 #, c-format msgid "invalid Unicode code point: %04X" msgstr "ogiltig Unicode-kodpunkt: %04X" -#: utils/adt/varlena.c:6843 +#: utils/adt/varlena.c:6854 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "Unicode-escapesekvenser måste vara \\XXXX, \\+XXXXXX, \\UXXXX eller \\UXXXXXXXX." @@ -30078,2268 +30087,2272 @@ msgstr "SET %s tar bara ett argument" msgid "SET requires parameter name" msgstr "SET kräver ett parameternamn" -#: utils/misc/guc_tables.c:692 +#: utils/misc/guc_tables.c:701 msgid "Ungrouped" msgstr "Ej grupperad" -#: utils/misc/guc_tables.c:693 +#: utils/misc/guc_tables.c:702 msgid "File Locations" msgstr "Filplatser" -#: utils/misc/guc_tables.c:694 +#: utils/misc/guc_tables.c:703 msgid "Connections and Authentication / Connection Settings" msgstr "Uppkopplingar och Autentisering / Uppkopplingsinställningar" -#: utils/misc/guc_tables.c:695 +#: utils/misc/guc_tables.c:704 msgid "Connections and Authentication / TCP Settings" msgstr "Uppkopplingar och Autentisering / TCP-inställningar" -#: utils/misc/guc_tables.c:696 +#: utils/misc/guc_tables.c:705 msgid "Connections and Authentication / Authentication" msgstr "Uppkopplingar och Autentisering / Autentisering" -#: utils/misc/guc_tables.c:697 +#: utils/misc/guc_tables.c:706 msgid "Connections and Authentication / SSL" msgstr "Uppkopplingar och Autentisering / SSL" -#: utils/misc/guc_tables.c:698 +#: utils/misc/guc_tables.c:707 msgid "Resource Usage / Memory" msgstr "Resursanvändning / Minne" -#: utils/misc/guc_tables.c:699 +#: utils/misc/guc_tables.c:708 msgid "Resource Usage / Disk" msgstr "Resursanvändning / Disk" -#: utils/misc/guc_tables.c:700 +#: utils/misc/guc_tables.c:709 msgid "Resource Usage / Kernel Resources" msgstr "Resursanvändning / Kernel-resurser" -#: utils/misc/guc_tables.c:701 +#: utils/misc/guc_tables.c:710 msgid "Resource Usage / Background Writer" msgstr "Resursanvändning / Bakgrundskrivare" -#: utils/misc/guc_tables.c:702 +#: utils/misc/guc_tables.c:711 msgid "Resource Usage / I/O" msgstr "Resursanvändning / I/O" -#: utils/misc/guc_tables.c:703 +#: utils/misc/guc_tables.c:712 msgid "Resource Usage / Worker Processes" msgstr "Resursanvändning / Arbetsprocesser" -#: utils/misc/guc_tables.c:704 +#: utils/misc/guc_tables.c:713 msgid "Write-Ahead Log / Settings" msgstr "Write-Ahead Log / Inställningar" -#: utils/misc/guc_tables.c:705 +#: utils/misc/guc_tables.c:714 msgid "Write-Ahead Log / Checkpoints" msgstr "Write-Ahead Log / Checkpoint:er" -#: utils/misc/guc_tables.c:706 +#: utils/misc/guc_tables.c:715 msgid "Write-Ahead Log / Archiving" msgstr "Write-Ahead Log / Arkivering" -#: utils/misc/guc_tables.c:707 +#: utils/misc/guc_tables.c:716 msgid "Write-Ahead Log / Recovery" msgstr "Write-Ahead Log / Återställning" -#: utils/misc/guc_tables.c:708 +#: utils/misc/guc_tables.c:717 msgid "Write-Ahead Log / Archive Recovery" msgstr "Write-Ahead Log / Återställning från arkiv" -#: utils/misc/guc_tables.c:709 +#: utils/misc/guc_tables.c:718 msgid "Write-Ahead Log / Recovery Target" msgstr "Write-Ahead Log / Återställningsmål" -#: utils/misc/guc_tables.c:710 +#: utils/misc/guc_tables.c:719 msgid "Write-Ahead Log / Summarization" msgstr "Write-Ahead Log / Summering" -#: utils/misc/guc_tables.c:711 +#: utils/misc/guc_tables.c:720 msgid "Replication / Sending Servers" msgstr "Replilering / Skickande servrar" -#: utils/misc/guc_tables.c:712 +#: utils/misc/guc_tables.c:721 msgid "Replication / Primary Server" msgstr "Replikering / Primärserver" -#: utils/misc/guc_tables.c:713 +#: utils/misc/guc_tables.c:722 msgid "Replication / Standby Servers" msgstr "Replikering / Standby-servrar" -#: utils/misc/guc_tables.c:714 +#: utils/misc/guc_tables.c:723 msgid "Replication / Subscribers" msgstr "Replikering / Prenumeranter" -#: utils/misc/guc_tables.c:715 +#: utils/misc/guc_tables.c:724 msgid "Query Tuning / Planner Method Configuration" msgstr "Frågeoptimering / Planeringsmetodinställningar" -#: utils/misc/guc_tables.c:716 +#: utils/misc/guc_tables.c:725 msgid "Query Tuning / Planner Cost Constants" msgstr "Frågeoptimering / Plannerarens kostnadskonstanter" -#: utils/misc/guc_tables.c:717 +#: utils/misc/guc_tables.c:726 msgid "Query Tuning / Genetic Query Optimizer" msgstr "Frågeoptimering / Genetisk frågeoptimerare" -#: utils/misc/guc_tables.c:718 +#: utils/misc/guc_tables.c:727 msgid "Query Tuning / Other Planner Options" msgstr "Frågeoptimering / Andra planeringsinställningar" -#: utils/misc/guc_tables.c:719 +#: utils/misc/guc_tables.c:728 msgid "Reporting and Logging / Where to Log" msgstr "Rapportering och loggning / Logga var?" -#: utils/misc/guc_tables.c:720 +#: utils/misc/guc_tables.c:729 msgid "Reporting and Logging / When to Log" msgstr "Rapportering och loggning / Logga när?" -#: utils/misc/guc_tables.c:721 +#: utils/misc/guc_tables.c:730 msgid "Reporting and Logging / What to Log" msgstr "Rapportering och loggning / Logga vad?" -#: utils/misc/guc_tables.c:722 +#: utils/misc/guc_tables.c:731 msgid "Reporting and Logging / Process Title" msgstr "Rapportering och loggning / Processtitel" -#: utils/misc/guc_tables.c:723 +#: utils/misc/guc_tables.c:732 msgid "Statistics / Monitoring" msgstr "Statistik / Övervakning" -#: utils/misc/guc_tables.c:724 +#: utils/misc/guc_tables.c:733 msgid "Statistics / Cumulative Query and Index Statistics" msgstr "Statistik / Ihopsamlad fråge- och index-statistik" -#: utils/misc/guc_tables.c:725 +#: utils/misc/guc_tables.c:734 msgid "Vacuuming / Automatic Vacuuming" msgstr "Vacuum / Automatisk Vacuum" -#: utils/misc/guc_tables.c:726 +#: utils/misc/guc_tables.c:735 msgid "Vacuuming / Cost-Based Vacuum Delay" msgstr "Vacuum / Kostbaserad Vacuum-fördröjning" -#: utils/misc/guc_tables.c:727 +#: utils/misc/guc_tables.c:736 msgid "Vacuuming / Default Behavior" msgstr "Vacuum / Standardbeteende" -#: utils/misc/guc_tables.c:728 +#: utils/misc/guc_tables.c:737 msgid "Vacuuming / Freezing" msgstr "Vacuum / Fryser" -#: utils/misc/guc_tables.c:729 +#: utils/misc/guc_tables.c:738 msgid "Client Connection Defaults / Statement Behavior" msgstr "Standard för klientanslutning / Satsbeteende" -#: utils/misc/guc_tables.c:730 +#: utils/misc/guc_tables.c:739 msgid "Client Connection Defaults / Locale and Formatting" msgstr "Standard för klientanslutning / Lokal och formattering" -#: utils/misc/guc_tables.c:731 +#: utils/misc/guc_tables.c:740 msgid "Client Connection Defaults / Shared Library Preloading" msgstr "Standard för klientanslutning / Förladdning av delat bibliotek" -#: utils/misc/guc_tables.c:732 +#: utils/misc/guc_tables.c:741 msgid "Client Connection Defaults / Other Defaults" msgstr "Standard för klientanslutning / Övriga standardvärden" -#: utils/misc/guc_tables.c:733 +#: utils/misc/guc_tables.c:742 msgid "Lock Management" msgstr "Låshantering" -#: utils/misc/guc_tables.c:734 +#: utils/misc/guc_tables.c:743 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions" msgstr "Version och plattformskompabilitet / Tidigare PostrgreSQL-versioner" -#: utils/misc/guc_tables.c:735 +#: utils/misc/guc_tables.c:744 msgid "Version and Platform Compatibility / Other Platforms and Clients" msgstr "Version och plattformskompabilitet / Andra plattformar och klienter" -#: utils/misc/guc_tables.c:736 +#: utils/misc/guc_tables.c:745 msgid "Error Handling" msgstr "Felhantering" -#: utils/misc/guc_tables.c:737 +#: utils/misc/guc_tables.c:746 msgid "Preset Options" msgstr "Förinställningsflaggor" -#: utils/misc/guc_tables.c:738 +#: utils/misc/guc_tables.c:747 msgid "Customized Options" msgstr "Ändrade flaggor" -#: utils/misc/guc_tables.c:739 +#: utils/misc/guc_tables.c:748 msgid "Developer Options" msgstr "Utvecklarflaggor" -#: utils/misc/guc_tables.c:794 +#: utils/misc/guc_tables.c:803 msgid "Enables the planner's use of sequential-scan plans." msgstr "Aktiverar planerarens användning av planer med sekvensiell skanning." -#: utils/misc/guc_tables.c:804 +#: utils/misc/guc_tables.c:813 msgid "Enables the planner's use of index-scan plans." msgstr "Aktiverar planerarens användning av planer med indexskanning." -#: utils/misc/guc_tables.c:814 +#: utils/misc/guc_tables.c:823 msgid "Enables the planner's use of index-only-scan plans." msgstr "Aktiverar planerarens användning av planer med skanning av enbart index." -#: utils/misc/guc_tables.c:824 +#: utils/misc/guc_tables.c:833 msgid "Enables the planner's use of bitmap-scan plans." msgstr "Aktiverar planerarens användning av planer med bitmapskanning." -#: utils/misc/guc_tables.c:834 +#: utils/misc/guc_tables.c:843 msgid "Enables the planner's use of TID scan plans." msgstr "Aktiverar planerarens användning av planer med TID-skanning." -#: utils/misc/guc_tables.c:844 +#: utils/misc/guc_tables.c:853 msgid "Enables the planner's use of explicit sort steps." msgstr "Slår på planerarens användning av explicita sorteringssteg." -#: utils/misc/guc_tables.c:854 +#: utils/misc/guc_tables.c:863 msgid "Enables the planner's use of incremental sort steps." msgstr "Aktiverar planerarens användning av inkrementella sorteringssteg." -#: utils/misc/guc_tables.c:864 +#: utils/misc/guc_tables.c:873 msgid "Enables the planner's use of hashed aggregation plans." msgstr "Aktiverar planerarens användning av planer med hash-aggregering" -#: utils/misc/guc_tables.c:874 +#: utils/misc/guc_tables.c:883 msgid "Enables the planner's use of materialization." msgstr "Aktiverar planerarens användning av materialisering." -#: utils/misc/guc_tables.c:884 +#: utils/misc/guc_tables.c:893 msgid "Enables the planner's use of memoization." msgstr "Aktiverar planerarens användning av memoization." -#: utils/misc/guc_tables.c:894 +#: utils/misc/guc_tables.c:903 msgid "Enables the planner's use of nested-loop join plans." msgstr "Aktiverar planerarens användning av planer med nästlad loop-join," -#: utils/misc/guc_tables.c:904 +#: utils/misc/guc_tables.c:913 msgid "Enables the planner's use of merge join plans." msgstr "Aktiverar planerarens användning av merge-join-planer." -#: utils/misc/guc_tables.c:914 +#: utils/misc/guc_tables.c:923 msgid "Enables the planner's use of hash join plans." msgstr "Aktiverar planerarens användning av hash-join-planer." -#: utils/misc/guc_tables.c:924 +#: utils/misc/guc_tables.c:933 msgid "Enables the planner's use of gather merge plans." msgstr "Aktiverar planerarens användning av planer med gather-merge." -#: utils/misc/guc_tables.c:934 +#: utils/misc/guc_tables.c:943 msgid "Enables partitionwise join." msgstr "Aktiverar join per partition." -#: utils/misc/guc_tables.c:944 +#: utils/misc/guc_tables.c:953 msgid "Enables partitionwise aggregation and grouping." msgstr "Aktiverar aggregering och gruppering per partition." -#: utils/misc/guc_tables.c:954 +#: utils/misc/guc_tables.c:963 msgid "Enables the planner's use of parallel append plans." msgstr "Aktiverar planerarens användning av planer med parallell append." -#: utils/misc/guc_tables.c:964 +#: utils/misc/guc_tables.c:973 msgid "Enables the planner's use of parallel hash plans." msgstr "Aktiverar planerarens användning av planer med parallell hash." -#: utils/misc/guc_tables.c:974 +#: utils/misc/guc_tables.c:983 msgid "Enables plan-time and execution-time partition pruning." msgstr "Aktiverar rensning av partitioner vid planering och vid körning." -#: utils/misc/guc_tables.c:975 +#: utils/misc/guc_tables.c:984 msgid "Allows the query planner and executor to compare partition bounds to conditions in the query to determine which partitions must be scanned." msgstr "Tillåter att frågeplaneraren och exekveraren jämför partitionsgränser med villkor i frågan för att bestämma vilka partitioner som skall skannas." -#: utils/misc/guc_tables.c:986 +#: utils/misc/guc_tables.c:995 msgid "Enables the planner's ability to produce plans that provide presorted input for ORDER BY / DISTINCT aggregate functions." msgstr "Slår på planerarens möjlighet att skapa planer som tillhandahåller försorterad indata till aggregatfunktioner med ORDER BY / DISTINCT." -#: utils/misc/guc_tables.c:989 +#: utils/misc/guc_tables.c:998 msgid "Allows the query planner to build plans that provide presorted input for aggregate functions with an ORDER BY / DISTINCT clause. When disabled, implicit sorts are always performed during execution." msgstr "Tillåter att planeraren kan skapa planer som tillhandahåller försorterad indata till aggregatfunktioner med en ORDER BY / DISTINCT-klausul. Om avstängd så kommer implicita sorteringar alltid utföras vid exekvering." -#: utils/misc/guc_tables.c:1001 +#: utils/misc/guc_tables.c:1010 msgid "Enables the planner's use of async append plans." msgstr "Aktiverar planerarens användning av planer med async append." -#: utils/misc/guc_tables.c:1011 +#: utils/misc/guc_tables.c:1020 msgid "Enables removal of unique self-joins." msgstr "Aktiverar borttagning av unika join med sig själv." -#: utils/misc/guc_tables.c:1021 +#: utils/misc/guc_tables.c:1030 msgid "Enables reordering of GROUP BY keys." msgstr "Aktiverar omkastning av nycklar i GROUP BY." -#: utils/misc/guc_tables.c:1031 +#: utils/misc/guc_tables.c:1040 msgid "Enables reordering of DISTINCT keys." msgstr "Aktiverar omkastning av nycklar i DISTINCT." -#: utils/misc/guc_tables.c:1041 +#: utils/misc/guc_tables.c:1050 msgid "Enables genetic query optimization." msgstr "Aktiverar genetisk frågeoptimering." -#: utils/misc/guc_tables.c:1042 +#: utils/misc/guc_tables.c:1051 msgid "This algorithm attempts to do planning without exhaustive searching." msgstr "Denna algoritm försöker utföra planering utan fullständig sökning." -#: utils/misc/guc_tables.c:1056 +#: utils/misc/guc_tables.c:1065 msgid "Shows whether the current user is a superuser." msgstr "Visar om den aktuella användaren är en superuser." -#: utils/misc/guc_tables.c:1071 +#: utils/misc/guc_tables.c:1080 msgid "Allows running the ALTER SYSTEM command." msgstr "Tillåter att kommandot ALTER SYSTEM körs." -#: utils/misc/guc_tables.c:1072 +#: utils/misc/guc_tables.c:1081 msgid "Can be set to off for environments where global configuration changes should be made using a different method." msgstr "Kan sättas till av för miljöer där global konfiguration skall hanteras på annat sätt." -#: utils/misc/guc_tables.c:1082 +#: utils/misc/guc_tables.c:1091 msgid "Enables advertising the server via Bonjour." msgstr "Aktiverar annonsering av servern via Bonjour." -#: utils/misc/guc_tables.c:1091 +#: utils/misc/guc_tables.c:1100 msgid "Collects transaction commit time." msgstr "Samlar in tid för transaktions-commit." -#: utils/misc/guc_tables.c:1100 +#: utils/misc/guc_tables.c:1109 msgid "Enables SSL connections." msgstr "Tillåter SSL-anslutningar." -#: utils/misc/guc_tables.c:1109 +#: utils/misc/guc_tables.c:1118 msgid "Controls whether \"ssl_passphrase_command\" is called during server reload." msgstr "Styr hurvida \"ssl_passphrase_command\" anropas vid omladdning av server." -#: utils/misc/guc_tables.c:1118 +#: utils/misc/guc_tables.c:1127 msgid "Give priority to server ciphersuite order." msgstr "Ge prioritet till serverns ordning av kryptometoder." -#: utils/misc/guc_tables.c:1127 +#: utils/misc/guc_tables.c:1136 msgid "Forces synchronization of updates to disk." msgstr "Tvingar synkronisering av uppdateringar till disk." -#: utils/misc/guc_tables.c:1128 +#: utils/misc/guc_tables.c:1137 msgid "The server will use the fsync() system call in several places to make sure that updates are physically written to disk. This ensures that a database cluster will recover to a consistent state after an operating system or hardware crash." msgstr "Servern kommer använda systemanropet fsync() på ett antal platser för att se till att uppdateringar fysiskt skrivs till disk. Detta för att säkerställa att databasklustret kan starta i ett konsistent tillstånd efter en operativsystemkrash eller hårdvarukrash." -#: utils/misc/guc_tables.c:1139 +#: utils/misc/guc_tables.c:1148 msgid "Continues processing after a checksum failure." msgstr "Fortsätter processande efter checksummefel." -#: utils/misc/guc_tables.c:1140 +#: utils/misc/guc_tables.c:1149 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 "Normalt vid detektion av checksummefel så rapporterar PostgreSQL felet och avbryter den aktuella transaktionen. Sätts ignore_checksum_failure till true så kommer systemet hoppa över felet (men fortfarande rapportera en varning). Detta beteende kan orsaka krasher eller andra allvarliga problem. Detta påverkas bara om checksummor är påslaget." -#: utils/misc/guc_tables.c:1154 +#: utils/misc/guc_tables.c:1163 msgid "Continues processing past damaged page headers." msgstr "Fortsätter processande efter trasiga sidhuvuden." -#: utils/misc/guc_tables.c:1155 +#: utils/misc/guc_tables.c:1164 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 "Normalt vid detektion av trasiga sidhuvuden så rapporterar PostgreSQL felet och avbryter den aktuella transaktionen. Sätts \"zero_damaged_pages\" till true så kommer systemet istället rapportera en varning, nollställa den trasiga sidan samt fortsätta processa. Detta kommer förstöra data (alla rader i den trasiga sidan)." -#: utils/misc/guc_tables.c:1168 +#: utils/misc/guc_tables.c:1177 msgid "Continues recovery after an invalid pages failure." msgstr "Fortsätter återställande efter fel på grund av ogiltiga sidor." -#: utils/misc/guc_tables.c:1169 +#: utils/misc/guc_tables.c:1178 msgid "Detection of WAL records having references to invalid pages during recovery causes PostgreSQL to raise a PANIC-level error, aborting the recovery. Setting \"ignore_invalid_pages\" to true causes the system to ignore invalid page references in WAL records (but still report a warning), and continue recovery. This behavior may cause crashes, data loss, propagate or hide corruption, or other serious problems. Only has an effect during recovery or in standby mode." msgstr "Normalt vid detektion av WAL-poster som refererar till ogiltiga sidor under återställning så kommer PostgreSQL att signalera ett fel på PANIC-nivå och avbryta återställningen. Sätts \"ignore_invalid_pages\" till true så kommer systemet hoppa över ogiltiga sidreferenser i WAL-poster (men fortfarande rapportera en varning) och fortsätta återställningen. Detta beteende kan orsaka krasher, dataförluster, sprida eller dölja korruption eller ge andra allvarliga problem. Detta påverkar bara under återställning eller i standby-läge." -#: utils/misc/guc_tables.c:1187 +#: utils/misc/guc_tables.c:1196 msgid "Writes full pages to WAL when first modified after a checkpoint." msgstr "Skriver fulla sidor till WAL första gången de ändras efter en checkpoint." -#: utils/misc/guc_tables.c:1188 +#: utils/misc/guc_tables.c:1197 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 "En sidskrivning som sker vid en operativsystemkrash kan bli delvis utskriven till disk. Under återställning så kommer radändringar i WAL:en inte vara tillräckligt för att återställa datan. Denna flagga skriver ut sidor först efter att en WAL-checkpoint gjorts vilket gör att full återställning kan ske." -#: utils/misc/guc_tables.c:1201 +#: utils/misc/guc_tables.c:1210 msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modification." msgstr "Skriver fulla sidor till WAL första gången de ändras efter en checkpoint, även för ickekritisk ändring." -#: utils/misc/guc_tables.c:1211 +#: utils/misc/guc_tables.c:1220 msgid "Writes zeroes to new WAL files before first use." msgstr "Skriv nollor till nya WAL-filer innan första användning." -#: utils/misc/guc_tables.c:1221 +#: utils/misc/guc_tables.c:1230 msgid "Recycles WAL files by renaming them." msgstr "Återanvänder WAL-filer genom att byta namn på dem." -#: utils/misc/guc_tables.c:1231 +#: utils/misc/guc_tables.c:1240 msgid "Logs each checkpoint." msgstr "Logga varje checkpoint." -#: utils/misc/guc_tables.c:1240 +#: utils/misc/guc_tables.c:1249 msgid "Logs details of pre-authentication connection handshake." msgstr "Logga detaljer om anslutningshandskakning före autentisering." -#: utils/misc/guc_tables.c:1250 +#: utils/misc/guc_tables.c:1259 msgid "Logs end of a session, including duration." msgstr "Loggar slut på session, inklusive längden." -#: utils/misc/guc_tables.c:1259 +#: utils/misc/guc_tables.c:1268 msgid "Logs each replication command." msgstr "Loggar alla replikeringskommanon." -#: utils/misc/guc_tables.c:1268 +#: utils/misc/guc_tables.c:1277 msgid "Shows whether the running server has assertion checks enabled." msgstr "Visar om den körande servern har assert-kontroller påslagna." -#: utils/misc/guc_tables.c:1279 +#: utils/misc/guc_tables.c:1288 msgid "Terminate session on any error." msgstr "Avbryt sessionen vid fel." -#: utils/misc/guc_tables.c:1288 +#: utils/misc/guc_tables.c:1297 msgid "Reinitialize server after backend crash." msgstr "Återinitiera servern efter en backend-krash." -#: utils/misc/guc_tables.c:1297 +#: utils/misc/guc_tables.c:1306 msgid "Remove temporary files after backend crash." msgstr "Ta bort temporära filer efter en backend-krash." -#: utils/misc/guc_tables.c:1307 +#: utils/misc/guc_tables.c:1316 msgid "Send SIGABRT not SIGQUIT to child processes after backend crash." msgstr "Skicka SIGABRT och inte SIGQUIT till barnprocesser efter att backend:en krashat." -#: utils/misc/guc_tables.c:1317 +#: utils/misc/guc_tables.c:1326 msgid "Send SIGABRT not SIGKILL to stuck child processes." msgstr "Skicka SIGABRT och inte SIGKILL till barnprocesser som fastnat." -#: utils/misc/guc_tables.c:1328 +#: utils/misc/guc_tables.c:1337 msgid "Logs the duration of each completed SQL statement." msgstr "Loggar tiden för varje avslutad SQL-sats." -#: utils/misc/guc_tables.c:1338 +#: utils/misc/guc_tables.c:1347 msgid "Set this to force all parse and plan trees to be passed through copyObject(), to facilitate catching errors and omissions in copyObject()." msgstr "Sätt denna för att tvinga alla parse- och plan-träd att skickas via copyObject(), för att underlätta att fel fångas och hitta saker som saknas i copyObject()." -#: utils/misc/guc_tables.c:1355 +#: utils/misc/guc_tables.c:1364 msgid "Set this to force all parse and plan trees to be passed through outfuncs.c/readfuncs.c, to facilitate catching errors and omissions in those modules." msgstr "Sätt denna för att tvinga alla parse- och plan-träd att skickas via outfuncs.c/readfuncs.c, för att underlätta att fel fångas och hitta saker som saknas i dessa moduler." -#: utils/misc/guc_tables.c:1372 +#: utils/misc/guc_tables.c:1381 msgid "Set this to force all raw parse trees for DML statements to be scanned by raw_expression_tree_walker(), to facilitate catching errors and omissions in that function." msgstr "Sätt denna för att tvinga alla råa parse-träd för DML-satser att skannas av raw_expression_tree_walker(), för att underlätta att fel fångas och hitta saker som saknas i denna funktion." -#: utils/misc/guc_tables.c:1390 +#: utils/misc/guc_tables.c:1399 msgid "Logs each query's parse tree." msgstr "Loggar alla frågors parse-träd." -#: utils/misc/guc_tables.c:1399 +#: utils/misc/guc_tables.c:1408 msgid "Logs each query's rewritten parse tree." msgstr "Logga alla frågors omskrivet parse-träd." -#: utils/misc/guc_tables.c:1408 +#: utils/misc/guc_tables.c:1417 msgid "Logs each query's execution plan." msgstr "Logga alla frågors körningsplan." -#: utils/misc/guc_tables.c:1417 +#: utils/misc/guc_tables.c:1426 msgid "Indents parse and plan tree displays." msgstr "Indentera parse och planeringsträdutskrifter" -#: utils/misc/guc_tables.c:1426 +#: utils/misc/guc_tables.c:1435 msgid "Writes parser performance statistics to the server log." msgstr "Skriver parserns prestandastatistik till serverloggen." -#: utils/misc/guc_tables.c:1435 +#: utils/misc/guc_tables.c:1444 msgid "Writes planner performance statistics to the server log." msgstr "Skriver planerarens prestandastatistik till serverloggen." -#: utils/misc/guc_tables.c:1444 +#: utils/misc/guc_tables.c:1453 msgid "Writes executor performance statistics to the server log." msgstr "Skrivere exekverarens prestandastatistik till serverloggen." -#: utils/misc/guc_tables.c:1453 +#: utils/misc/guc_tables.c:1462 msgid "Writes cumulative performance statistics to the server log." msgstr "Skriver ackumulerad prestandastatistik till serverloggen." -#: utils/misc/guc_tables.c:1463 +#: utils/misc/guc_tables.c:1472 msgid "Logs system resource usage statistics (memory and CPU) on various B-tree operations." msgstr "Loggar statisik för användning av systemresurser (minne och CPU) för olika B-tree-operationer." -#: utils/misc/guc_tables.c:1475 +#: utils/misc/guc_tables.c:1484 msgid "Collects information about executing commands." msgstr "Samla information om körda kommanon." -#: utils/misc/guc_tables.c:1476 +#: utils/misc/guc_tables.c:1485 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 "Slår på insamling av information om det nu körande kommandot för varje session, tillsammans med klockslaget när det kommandot började köra." -#: utils/misc/guc_tables.c:1486 +#: utils/misc/guc_tables.c:1495 msgid "Collects statistics on database activity." msgstr "Samla in statistik om databasaktivitet." -#: utils/misc/guc_tables.c:1495 +#: utils/misc/guc_tables.c:1504 msgid "Collects timing statistics for cost-based vacuum delay." msgstr "Samla in timingstatistik för kostnadsbaserad vacuum-fördröjning." -#: utils/misc/guc_tables.c:1504 +#: utils/misc/guc_tables.c:1513 msgid "Collects timing statistics for database I/O activity." msgstr "Samla in timingstatistik om databasens I/O-aktivitet." -#: utils/misc/guc_tables.c:1513 +#: utils/misc/guc_tables.c:1522 msgid "Collects timing statistics for WAL I/O activity." msgstr "Samla in timingstatistik om I/O-aktivitet för WAL." -#: utils/misc/guc_tables.c:1523 +#: utils/misc/guc_tables.c:1532 msgid "Updates the process title to show the active SQL command." msgstr "Uppdaterar processtitel till att visa aktivt SQL-kommando." -#: utils/misc/guc_tables.c:1524 +#: utils/misc/guc_tables.c:1533 msgid "Enables updating of the process title every time a new SQL command is received by the server." msgstr "Slår på uppdatering av processtiteln varje gång ett nytt SQL-kommando tas emot av servern." -#: utils/misc/guc_tables.c:1533 +#: utils/misc/guc_tables.c:1542 msgid "Starts the autovacuum subprocess." msgstr "Starta autovacuum-barnprocess." -#: utils/misc/guc_tables.c:1543 +#: utils/misc/guc_tables.c:1552 msgid "Generates debugging output for LISTEN and NOTIFY." msgstr "Skapar debug-output för LISTEN och NOTIFY." -#: utils/misc/guc_tables.c:1555 +#: utils/misc/guc_tables.c:1564 msgid "Emits information about lock usage." msgstr "Visar information om låsanvändning." -#: utils/misc/guc_tables.c:1565 +#: utils/misc/guc_tables.c:1574 msgid "Emits information about user lock usage." msgstr "Visar information om användares låsanvändning." -#: utils/misc/guc_tables.c:1575 +#: utils/misc/guc_tables.c:1584 msgid "Emits information about lightweight lock usage." msgstr "Visar information om lättviktig låsanvändning." -#: utils/misc/guc_tables.c:1585 +#: utils/misc/guc_tables.c:1594 msgid "Dumps information about all current locks when a deadlock timeout occurs." msgstr "Dumpar information om alla aktuella lås när en deadlock-timeout sker." -#: utils/misc/guc_tables.c:1597 +#: utils/misc/guc_tables.c:1606 msgid "Logs long lock waits." msgstr "Loggar långa väntetider på lås." -#: utils/misc/guc_tables.c:1606 +#: utils/misc/guc_tables.c:1615 msgid "Logs lock failures." msgstr "Loggar låsfel." -#: utils/misc/guc_tables.c:1615 +#: utils/misc/guc_tables.c:1624 msgid "Logs standby recovery conflict waits." msgstr "Loggar väntande på återställningskonflikter i standby" -#: utils/misc/guc_tables.c:1624 +#: utils/misc/guc_tables.c:1633 msgid "Logs the host name in the connection logs." msgstr "Loggar hostnamnet i anslutningsloggen." -#: utils/misc/guc_tables.c:1625 +#: utils/misc/guc_tables.c:1634 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 "Som standard visar anslutningsloggen bara IP-adressen för den anslutande värden. Om du vill att värdnamnet skall visas så kan du slå på detta men beroende på hur uppsättningen av namnuppslag är gjored så kan detta ha en markant prestandapåverkan." -#: utils/misc/guc_tables.c:1636 +#: utils/misc/guc_tables.c:1645 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"." msgstr "Tolkar \"uttryck=NULL\" som \"uttryck IS NULL\"." -#: utils/misc/guc_tables.c:1637 +#: utils/misc/guc_tables.c:1646 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 "Om påslagen så kommer uttryck på formen uttryck = NULL (eller NULL = uttryck) att behandlas som uttryck IS NULL, det vill säga returnera true om uttryck evalueras till värdet null eller evalueras till false annars. Det korrekta beteendet för uttryck = NULL är att alltid returnera null (okänt)." -#: utils/misc/guc_tables.c:1649 +#: utils/misc/guc_tables.c:1658 msgid "Sets the default read-only status of new transactions." msgstr "Ställer in standard read-only-status för nya transaktioner." -#: utils/misc/guc_tables.c:1659 +#: utils/misc/guc_tables.c:1668 msgid "Sets the current transaction's read-only status." msgstr "Ställer in nuvarande transaktions read-only-status." -#: utils/misc/guc_tables.c:1669 +#: utils/misc/guc_tables.c:1678 msgid "Sets the default deferrable status of new transactions." msgstr "Ställer in standard deferrable-status för nya transaktioner." -#: utils/misc/guc_tables.c:1678 +#: utils/misc/guc_tables.c:1687 msgid "Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures." msgstr "Bestämmer om en serialiserbar transaktion för läsning kommer fördröjas tills den kan köras utan serialiseringsfel." -#: utils/misc/guc_tables.c:1688 +#: utils/misc/guc_tables.c:1697 msgid "Enables row security." msgstr "Aktiverar radsäkerhet." -#: utils/misc/guc_tables.c:1689 +#: utils/misc/guc_tables.c:1698 msgid "When enabled, row security will be applied to all users." msgstr "Om aktiv så kommer radsäkerhet användas för alla användare." -#: utils/misc/guc_tables.c:1697 +#: utils/misc/guc_tables.c:1706 msgid "Check routine bodies during CREATE FUNCTION and CREATE PROCEDURE." msgstr "Kontrollera funktionskroppen vid CREATE FUNCTION och CREATE PROCEDURE." -#: utils/misc/guc_tables.c:1706 +#: utils/misc/guc_tables.c:1715 msgid "Enables input of NULL elements in arrays." msgstr "Aktiverar inmatning av NULL-element i arrayer." -#: utils/misc/guc_tables.c:1707 +#: utils/misc/guc_tables.c:1716 msgid "When turned on, unquoted NULL in an array input value means a null value; otherwise it is taken literally." msgstr "Om påslagen så kommer ej citerade NULL i indatavärden för en array betyda värdet null, annars tolkas det bokstavligt." -#: utils/misc/guc_tables.c:1723 +#: utils/misc/guc_tables.c:1732 msgid "WITH OIDS is no longer supported; this can only be false." msgstr "WITH OIDS stöds inte längre; denna kan bara vara false." -#: utils/misc/guc_tables.c:1733 +#: utils/misc/guc_tables.c:1742 msgid "Start a subprocess to capture stderr, csvlog and/or jsonlog into log files." msgstr "Starta en subprocess för att fånga stderr, csvlog och/eller jsonlog till loggfiler." -#: utils/misc/guc_tables.c:1742 +#: utils/misc/guc_tables.c:1751 msgid "Truncate existing log files of same name during log rotation." msgstr "Trunkera existerande loggfiler med samma namn under loggrotering." -#: utils/misc/guc_tables.c:1752 +#: utils/misc/guc_tables.c:1761 msgid "Emit information about resource usage in sorting." msgstr "Skicka ut information om resursanvändning vid sortering." -#: utils/misc/guc_tables.c:1765 +#: utils/misc/guc_tables.c:1774 msgid "Generate debugging output for synchronized scanning." msgstr "Generera debug-output för synkroniserad skanning." -#: utils/misc/guc_tables.c:1780 +#: utils/misc/guc_tables.c:1789 msgid "Enables bounded sorting using heap sort." msgstr "Slår på begränsad sortering med heap-sort." -#: utils/misc/guc_tables.c:1793 +#: utils/misc/guc_tables.c:1802 msgid "Emit WAL-related debugging output." msgstr "Skicka ut WAL-relaterad debug-data." -#: utils/misc/guc_tables.c:1805 +#: utils/misc/guc_tables.c:1814 msgid "Shows whether datetimes are integer based." msgstr "Visa hurvida datetime är heltalsbaserad" -#: utils/misc/guc_tables.c:1816 +#: utils/misc/guc_tables.c:1825 msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive." msgstr "Anger hurvida Kerberos- och GSSAPI-användarnamn skall tolkas skiftlägesokänsligt." -#: utils/misc/guc_tables.c:1826 +#: utils/misc/guc_tables.c:1835 msgid "Sets whether GSSAPI delegation should be accepted from the client." msgstr "Anger hurvida GSSAPI-delegering skall accpeteras från klienten." -#: utils/misc/guc_tables.c:1836 +#: utils/misc/guc_tables.c:1845 msgid "Warn about backslash escapes in ordinary string literals." msgstr "Varna om backåtstreck-escape i vanliga stränglitteraler." -#: utils/misc/guc_tables.c:1846 +#: utils/misc/guc_tables.c:1855 msgid "Causes '...' strings to treat backslashes literally." msgstr "Gör att '...'-stängar tolkar bakåtstreck bokstavligt." -#: utils/misc/guc_tables.c:1857 +#: utils/misc/guc_tables.c:1866 msgid "Enables synchronized sequential scans." msgstr "Slår på synkroniserad sekvensiell skanning." -#: utils/misc/guc_tables.c:1867 +#: utils/misc/guc_tables.c:1876 msgid "Sets whether to include or exclude transaction with recovery target." msgstr "Anger hurvida man skall inkludera eller exkludera transaktion för återställningmål." -#: utils/misc/guc_tables.c:1877 +#: utils/misc/guc_tables.c:1886 msgid "Starts the WAL summarizer process to enable incremental backup." msgstr "Startar process för WAL-summering för att tillåta inkrementella backuper." -#: utils/misc/guc_tables.c:1887 +#: utils/misc/guc_tables.c:1896 msgid "Allows connections and queries during recovery." msgstr "Tillåt anslutningar och frågor under återställning." -#: utils/misc/guc_tables.c:1897 +#: utils/misc/guc_tables.c:1906 msgid "Allows feedback from a hot standby to the primary that will avoid query conflicts." msgstr "Tillåter feedback från en hot standby till primären för att undvika frågekonflikter." -#: utils/misc/guc_tables.c:1907 +#: utils/misc/guc_tables.c:1916 msgid "Shows whether hot standby is currently active." msgstr "Visar hurvida hot standby är aktiv för närvarande." -#: utils/misc/guc_tables.c:1918 +#: utils/misc/guc_tables.c:1927 msgid "Allows modifications of the structure of system tables." msgstr "Tillåter strukturförändringar av systemtabeller." -#: utils/misc/guc_tables.c:1929 +#: utils/misc/guc_tables.c:1938 msgid "Disables reading from system indexes." msgstr "Stänger av läsning från systemindex." -#: utils/misc/guc_tables.c:1930 +#: utils/misc/guc_tables.c:1939 msgid "It does not prevent updating the indexes, so it is safe to use. The worst consequence is slowness." msgstr "Det förhindrar inte uppdatering av index så det är helt säkert att använda. Det värsta som kan hända är att det är långsamt." -#: utils/misc/guc_tables.c:1941 +#: utils/misc/guc_tables.c:1950 msgid "Allows tablespaces directly inside pg_tblspc, for testing." msgstr "Tillåter tabellutrymmen direkt inuti pg_tblspc, för testning" -#: utils/misc/guc_tables.c:1952 +#: utils/misc/guc_tables.c:1961 msgid "Enables backward compatibility mode for privilege checks on large objects." msgstr "Slår på bakåtkompabilitetsläge för rättighetskontroller på stora objekt." -#: utils/misc/guc_tables.c:1953 +#: utils/misc/guc_tables.c:1962 msgid "Skips privilege checks when reading or modifying large objects, for compatibility with PostgreSQL releases prior to 9.0." msgstr "Hoppar över rättighetskontroller vid läsning eller modifiering av stora objekt, för kompabilitet med PostgreSQL-releaser innan 9.0." -#: utils/misc/guc_tables.c:1963 +#: utils/misc/guc_tables.c:1972 msgid "When generating SQL fragments, quote all identifiers." msgstr "När SQL-fragment genereras så citera alla identifierare." -#: utils/misc/guc_tables.c:1973 +#: utils/misc/guc_tables.c:1982 msgid "Shows whether data checksums are turned on for this cluster." msgstr "Visar om datachecksummor är påslagna för detta kluster." -#: utils/misc/guc_tables.c:1984 +#: utils/misc/guc_tables.c:1993 msgid "Add sequence number to syslog messages to avoid duplicate suppression." msgstr "Lägg till sekvensnummer till syslog-meddelanden för att undvika att duplikat tas bort." -#: utils/misc/guc_tables.c:1994 +#: utils/misc/guc_tables.c:2003 msgid "Split messages sent to syslog by lines and to fit into 1024 bytes." msgstr "Dela meddelanden som skickas till syslog till egna rader och begränsa till 1024 byte." -#: utils/misc/guc_tables.c:2004 +#: utils/misc/guc_tables.c:2013 msgid "Controls whether Gather and Gather Merge also run subplans." msgstr "Bestämmer om \"Gather\" och \"Gather Merge\" också exekverar subplaner." -#: utils/misc/guc_tables.c:2005 +#: utils/misc/guc_tables.c:2014 msgid "Should gather nodes also run subplans or just gather tuples?" msgstr "Skall gather-noder också exekvera subplaner eller bara samla in tupler?" -#: utils/misc/guc_tables.c:2015 +#: utils/misc/guc_tables.c:2024 msgid "Allow JIT compilation." msgstr "Tillåt JIT-kompilering." -#: utils/misc/guc_tables.c:2026 +#: utils/misc/guc_tables.c:2035 msgid "Register JIT-compiled functions with debugger." msgstr "Registrera JIT-kompilerade funktioner hos debuggern." -#: utils/misc/guc_tables.c:2043 +#: utils/misc/guc_tables.c:2052 msgid "Write out LLVM bitcode to facilitate JIT debugging." msgstr "Skriv ut LLVM-bitkod för att möjliggöra JIT-debuggning." -#: utils/misc/guc_tables.c:2054 +#: utils/misc/guc_tables.c:2063 msgid "Allow JIT compilation of expressions." msgstr "Tillåt JIT-kompilering av uttryck." -#: utils/misc/guc_tables.c:2065 +#: utils/misc/guc_tables.c:2074 msgid "Register JIT-compiled functions with perf profiler." msgstr "Registrera JIT-kompilerade funktioner med perf-profilerare." -#: utils/misc/guc_tables.c:2082 +#: utils/misc/guc_tables.c:2091 msgid "Allow JIT compilation of tuple deforming." msgstr "Tillåt JIT-kompilering av tupeluppdelning." -#: utils/misc/guc_tables.c:2093 +#: utils/misc/guc_tables.c:2102 msgid "Whether to continue running after a failure to sync data files." msgstr "Hurvida vi skall fortsätta efter ett fel att synka datafiler." -#: utils/misc/guc_tables.c:2102 +#: utils/misc/guc_tables.c:2111 msgid "Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured." msgstr "Anger hurvida en WAL-mottagare skall skapa en temporär replikeringsslot om ingen permanent slot är konfigurerad." -#: utils/misc/guc_tables.c:2111 +#: utils/misc/guc_tables.c:2120 msgid "Enables event triggers." msgstr "Aktiverar händelsetriggrar." -#: utils/misc/guc_tables.c:2112 +#: utils/misc/guc_tables.c:2121 msgid "When enabled, event triggers will fire for all applicable statements." msgstr "Om aktiverad så kommer händelsetriggrar anropas för alla satser där det går." -#: utils/misc/guc_tables.c:2121 +#: utils/misc/guc_tables.c:2130 msgid "Enables a physical standby to synchronize logical failover replication slots from the primary server." msgstr "Tillåter att en fysisk standby synkroniserar logiska replikeringsslottar för failover från primära servern." -#: utils/misc/guc_tables.c:2130 +#: utils/misc/guc_tables.c:2139 msgid "Enables deprecation warnings for MD5 passwords." msgstr "Aktiverar obsolet-varningar för MD5-lösenord." -#: utils/misc/guc_tables.c:2139 +#: utils/misc/guc_tables.c:2148 msgid "Enables vacuum to truncate empty pages at the end of the table." msgstr "Aktiverar så att vacuum trunkerar tomma sidor i slutet på tabellen." -#: utils/misc/guc_tables.c:2157 +#: utils/misc/guc_tables.c:2166 msgid "Sets the amount of time to wait before forcing a switch to the next WAL file." msgstr "Sätter tiden vi väntar innan vi tvingar ett byte till nästa WAL-fil." -#: utils/misc/guc_tables.c:2159 utils/misc/guc_tables.c:2313 -#: utils/misc/guc_tables.c:2732 utils/misc/guc_tables.c:2743 -#: utils/misc/guc_tables.c:2754 utils/misc/guc_tables.c:2765 -#: utils/misc/guc_tables.c:2776 +#: utils/misc/guc_tables.c:2168 utils/misc/guc_tables.c:2322 +#: utils/misc/guc_tables.c:2741 utils/misc/guc_tables.c:2752 +#: utils/misc/guc_tables.c:2763 utils/misc/guc_tables.c:2774 +#: utils/misc/guc_tables.c:2785 msgid "0 disables the timeout." msgstr "0 stänger av timeout:en." -#: utils/misc/guc_tables.c:2168 +#: utils/misc/guc_tables.c:2177 msgid "Sets the amount of time to wait after authentication on connection startup." msgstr "Sätter tiden att vänta efter authentiserng vid uppstart av anslutningen." -#: utils/misc/guc_tables.c:2170 utils/misc/guc_tables.c:2908 +#: utils/misc/guc_tables.c:2179 utils/misc/guc_tables.c:2917 msgid "This allows attaching a debugger to the process." msgstr "Detta tillåter att man ansluter en debugger till processen." -#: utils/misc/guc_tables.c:2179 +#: utils/misc/guc_tables.c:2188 msgid "Sets the default statistics target." msgstr "Sätter standardstatistikmålet." -#: utils/misc/guc_tables.c:2180 +#: utils/misc/guc_tables.c:2189 msgid "This applies to table columns that have not had a column-specific target set via ALTER TABLE SET STATISTICS." msgstr "Detta gäller tabellkolumner som inte har ett kolumnspecifikt mål satt med ALTER TABLE SET STATISTICS." -#: utils/misc/guc_tables.c:2189 +#: utils/misc/guc_tables.c:2198 msgid "Sets the FROM-list size beyond which subqueries are not collapsed." msgstr "Sätter en övre gräns på FROM-listans storlek där subfrågor slås isär." -#: utils/misc/guc_tables.c:2191 +#: utils/misc/guc_tables.c:2200 msgid "The planner will merge subqueries into upper queries if the resulting FROM list would have no more than this many items." msgstr "Planeraren kommer slå samman subfrågor med yttre frågor om den resulterande FROM-listan inte har fler än så här många poster." -#: utils/misc/guc_tables.c:2202 +#: utils/misc/guc_tables.c:2211 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened." msgstr "Sätter en övre gräns på FROM-listans storlek där JOIN-konstruktioner plattas till." -#: utils/misc/guc_tables.c:2204 +#: utils/misc/guc_tables.c:2213 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 "Planeraren kommer platta till explicita JOIN-konstruktioner till listor av FROM-poster när resultatet blir en lista med max så här många poster." -#: utils/misc/guc_tables.c:2215 +#: utils/misc/guc_tables.c:2224 msgid "Sets the threshold of FROM items beyond which GEQO is used." msgstr "Sätter en undre gräns på antal FROM-poster när GEQO används." -#: utils/misc/guc_tables.c:2225 +#: utils/misc/guc_tables.c:2234 msgid "GEQO: effort is used to set the default for other GEQO parameters." msgstr "GEQO: effort används som standard för andra GEQO-parametrar." -#: utils/misc/guc_tables.c:2235 +#: utils/misc/guc_tables.c:2244 msgid "GEQO: number of individuals in the population." msgstr "GEQO: antal individer i populationen." -#: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 +#: utils/misc/guc_tables.c:2245 utils/misc/guc_tables.c:2255 msgid "0 means use a suitable default value." msgstr "0 betyder att ett lämpligt standardvärde används." -#: utils/misc/guc_tables.c:2245 +#: utils/misc/guc_tables.c:2254 msgid "GEQO: number of iterations of the algorithm." msgstr "GEQO: antal iterationer för algoritmen." -#: utils/misc/guc_tables.c:2257 +#: utils/misc/guc_tables.c:2266 msgid "Sets the time to wait on a lock before checking for deadlock." msgstr "Sätter tiden som väntas på ett lås innan kontroll av deadlock sker." -#: utils/misc/guc_tables.c:2268 +#: utils/misc/guc_tables.c:2277 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data." msgstr "Sätter maximal fördröjning innan frågor avbryts när en \"hot standby\"-server processar arkiverad WAL-data." -#: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 +#: utils/misc/guc_tables.c:2278 utils/misc/guc_tables.c:2289 msgid "-1 means wait forever." msgstr "-1 betyder för alltid." -#: utils/misc/guc_tables.c:2279 +#: utils/misc/guc_tables.c:2288 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data." msgstr "Sätter maximal fördröjning innan frågor avbryts när en \"hot stanby\"-server processar strömmad WAL-data." -#: utils/misc/guc_tables.c:2290 +#: utils/misc/guc_tables.c:2299 msgid "Sets the minimum delay for applying changes during recovery." msgstr "Ställer in minsta fördröjning för att applicera ändringar under återställning." -#: utils/misc/guc_tables.c:2301 +#: utils/misc/guc_tables.c:2310 msgid "Sets the maximum interval between WAL receiver status reports to the sending server." msgstr "Sätter maximalt intervall mellan statusrapporter till skickande server från WAL-mottagaren." -#: utils/misc/guc_tables.c:2312 +#: utils/misc/guc_tables.c:2321 msgid "Sets the maximum wait time to receive data from the sending server." msgstr "Sätter maximal väntetid för att ta emot data från skickande server." -#: utils/misc/guc_tables.c:2323 +#: utils/misc/guc_tables.c:2332 msgid "Sets the maximum number of concurrent connections." msgstr "Sätter maximalt antal samtidiga anslutningar." -#: utils/misc/guc_tables.c:2334 +#: utils/misc/guc_tables.c:2343 msgid "Sets the number of connection slots reserved for superusers." msgstr "Sätter antalet anslutningsslottar som reserverats för superusers." -#: utils/misc/guc_tables.c:2344 +#: utils/misc/guc_tables.c:2353 msgid "Sets the number of connection slots reserved for roles with privileges of pg_use_reserved_connections." msgstr "Sätter antalet anslutningsslottar som reserverats för roller med rättigheter från pg_use_reserved_connections." -#: utils/misc/guc_tables.c:2355 +#: utils/misc/guc_tables.c:2364 msgid "Amount of dynamic shared memory reserved at startup." msgstr "Mängd dynamiskt delat minne som reserveras vid uppstart" -#: utils/misc/guc_tables.c:2370 +#: utils/misc/guc_tables.c:2379 msgid "Sets the number of shared memory buffers used by the server." msgstr "Sätter antalet delade minnesbuffrar som används av servern." -#: utils/misc/guc_tables.c:2381 +#: utils/misc/guc_tables.c:2390 msgid "Sets the buffer pool size for VACUUM, ANALYZE, and autovacuum." msgstr "Sätter buffer-poolens storlek för VACUUM, ANALYZE och autovacuum." -#: utils/misc/guc_tables.c:2392 +#: utils/misc/guc_tables.c:2401 msgid "Shows the size of the server's main shared memory area (rounded up to the nearest MB)." msgstr "Visa storlek på serverns huvudsakliga delade minnesarea (avrundat upp till närmaste MB)." -#: utils/misc/guc_tables.c:2403 +#: utils/misc/guc_tables.c:2412 msgid "Shows the number of huge pages needed for the main shared memory area." msgstr "Visa antal stora sidor som krävs för den huvudsakliga delade minnesarean." -#: utils/misc/guc_tables.c:2404 +#: utils/misc/guc_tables.c:2413 msgid "-1 means huge pages are not supported." msgstr "-1 betyder att stora sidor inte stöds." -#: utils/misc/guc_tables.c:2414 +#: utils/misc/guc_tables.c:2423 msgid "Shows the number of semaphores required for the server." msgstr "Visar antal semaforer som krävs av servern." -#: utils/misc/guc_tables.c:2425 +#: utils/misc/guc_tables.c:2434 msgid "Sets the size of the dedicated buffer pool used for the commit timestamp cache." msgstr "Sätter storlek på den dedikerade bufferpoolen som används till cache av commit-tidsstämplar." -#: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 -#: utils/misc/guc_tables.c:2492 +#: utils/misc/guc_tables.c:2435 utils/misc/guc_tables.c:2490 +#: utils/misc/guc_tables.c:2501 msgid "0 means use a fraction of \"shared_buffers\"." msgstr "0 betyder att en bråkdel av \"shared_buffers\" används." -#: utils/misc/guc_tables.c:2436 +#: utils/misc/guc_tables.c:2445 msgid "Sets the size of the dedicated buffer pool used for the MultiXact member cache." msgstr "Sätter storlek på den dedikerade bufferpoolen som används till cache av MultiXact-medlemmar." -#: utils/misc/guc_tables.c:2447 +#: utils/misc/guc_tables.c:2456 msgid "Sets the size of the dedicated buffer pool used for the MultiXact offset cache." msgstr "Sätter storlek på den dedikerade bufferpoolen som används till cache av MultiXact-offset." -#: utils/misc/guc_tables.c:2458 +#: utils/misc/guc_tables.c:2467 msgid "Sets the size of the dedicated buffer pool used for the LISTEN/NOTIFY message cache." msgstr "Sätter storlek på den dedikerade bufferpoolen som används till cache av LISTEN/NOTIFY-meddelande." -#: utils/misc/guc_tables.c:2469 +#: utils/misc/guc_tables.c:2478 msgid "Sets the size of the dedicated buffer pool used for the serializable transaction cache." msgstr "Sätter storlek på den dedikerade bufferpoolen som används till cache av serialiserbara transaktioner." -#: utils/misc/guc_tables.c:2480 +#: utils/misc/guc_tables.c:2489 msgid "Sets the size of the dedicated buffer pool used for the subtransaction cache." msgstr "Sätter storlek på den dedikerade bufferpoolen som används som cache för undertransaktioner." -#: utils/misc/guc_tables.c:2491 +#: utils/misc/guc_tables.c:2500 msgid "Sets the size of the dedicated buffer pool used for the transaction status cache." msgstr "Sätter storlek på den dedikerade bufferpoolen som används till cache av transaktionsstatus." -#: utils/misc/guc_tables.c:2502 +#: utils/misc/guc_tables.c:2511 msgid "Sets the maximum number of temporary buffers used by each session." msgstr "Sätter maximalt antal temporära buffertar som används per session." -#: utils/misc/guc_tables.c:2513 +#: utils/misc/guc_tables.c:2522 msgid "Sets the TCP port the server listens on." msgstr "Sätter TCP-porten som servern lyssnar på." -#: utils/misc/guc_tables.c:2523 +#: utils/misc/guc_tables.c:2532 msgid "Sets the access permissions of the Unix-domain socket." msgstr "Sätter accessrättigheter för Unix-domainuttag (socket)." -#: utils/misc/guc_tables.c:2524 +#: utils/misc/guc_tables.c:2533 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 "Unixdomänuttag (socket) använder unix vanliga filsystemsrättigheter. Parametervärdet förväntas vara en numerisk rättighetsangivelse så som accepteras av systemanropen chmod och umask. (För att använda det vanliga oktala formatet så måste numret börja med 0 (noll).)" -#: utils/misc/guc_tables.c:2538 +#: utils/misc/guc_tables.c:2547 msgid "Sets the file permissions for log files." msgstr "Sätter filrättigheter för loggfiler." -#: utils/misc/guc_tables.c:2539 +#: utils/misc/guc_tables.c:2548 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 "Parametervärdet förväntas vara en numerisk rättighetsangivelse så som accepteras av systemanropen chmod och umask. (För att använda det vanliga oktala formatet så måste numret börja med 0 (noll).)" -#: utils/misc/guc_tables.c:2553 +#: utils/misc/guc_tables.c:2562 msgid "Shows the mode of the data directory." msgstr "Visar rättigheter för datakatalog" -#: utils/misc/guc_tables.c:2554 +#: utils/misc/guc_tables.c:2563 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 "Parametervärdet är en numerisk rättighetsangivelse så som accepteras av systemanropen chmod och umask. (För att använda det vanliga oktala formatet så måste numret börja med 0 (noll).)" -#: utils/misc/guc_tables.c:2567 +#: utils/misc/guc_tables.c:2576 msgid "Sets the maximum memory to be used for query workspaces." msgstr "Sätter maximalt minne som används för frågors arbetsyta." -#: utils/misc/guc_tables.c:2568 +#: utils/misc/guc_tables.c:2577 msgid "This much memory can be used by each internal sort operation and hash table before switching to temporary disk files." msgstr "Så här mycket minne kan användas av varje intern sorteringsoperation resp. hash-tabell innan temporära filer på disk börjar användas." -#: utils/misc/guc_tables.c:2585 +#: utils/misc/guc_tables.c:2594 msgid "Sets the maximum memory to be used for maintenance operations." msgstr "Sätter det maximala minnet som får användas för underhållsoperationer." -#: utils/misc/guc_tables.c:2586 +#: utils/misc/guc_tables.c:2595 msgid "This includes operations such as VACUUM and CREATE INDEX." msgstr "Detta inkluderar operationer som VACUUM och CREATE INDEX." -#: utils/misc/guc_tables.c:2596 +#: utils/misc/guc_tables.c:2605 msgid "Sets the maximum memory to be used for logical decoding." msgstr "Sätter det maximala minnet som får användas för logisk avkodning." -#: utils/misc/guc_tables.c:2597 +#: utils/misc/guc_tables.c:2606 msgid "This much memory can be used by each internal reorder buffer before spilling to disk." msgstr "Så här mycket minne kan användas av varje intern omsorteringsbuffer innan data spills till disk." -#: utils/misc/guc_tables.c:2613 +#: utils/misc/guc_tables.c:2622 msgid "Sets the maximum stack depth, in kilobytes." msgstr "Sätter det maximala stackdjupet, i kilobyte." -#: utils/misc/guc_tables.c:2624 +#: utils/misc/guc_tables.c:2633 msgid "Limits the total size of all temporary files used by each process." msgstr "Begränsar den totala storleken för alla temporära filer som används i en process." -#: utils/misc/guc_tables.c:2625 +#: utils/misc/guc_tables.c:2634 msgid "-1 means no limit." msgstr "-1 betyder ingen gräns." -#: utils/misc/guc_tables.c:2635 +#: utils/misc/guc_tables.c:2644 msgid "Vacuum cost for a page found in the buffer cache." msgstr "Vacuum-kostnad för en sida som hittas i buffer-cache:n." -#: utils/misc/guc_tables.c:2645 +#: utils/misc/guc_tables.c:2654 msgid "Vacuum cost for a page not found in the buffer cache." msgstr "Vacuum-kostnad för en sida som inte hittas i buffer-cache:n." -#: utils/misc/guc_tables.c:2655 +#: utils/misc/guc_tables.c:2664 msgid "Vacuum cost for a page dirtied by vacuum." msgstr "Vacuum-kostnad för sidor som smutsats ner vid vacuum." -#: utils/misc/guc_tables.c:2665 +#: utils/misc/guc_tables.c:2674 msgid "Vacuum cost amount available before napping." msgstr "Vacuum-kostnad kvar innan pausande." -#: utils/misc/guc_tables.c:2675 +#: utils/misc/guc_tables.c:2684 msgid "Vacuum cost amount available before napping, for autovacuum." msgstr "Vacuum-kostnad kvar innan pausande, för autovacuum." -#: utils/misc/guc_tables.c:2676 +#: utils/misc/guc_tables.c:2685 msgid "-1 means use \"vacuum_cost_limit\"." msgstr "-1 betyder att \"vacuum_cost_limit\" används." -#: utils/misc/guc_tables.c:2685 +#: utils/misc/guc_tables.c:2694 msgid "Sets the maximum number of files each server process is allowed to open simultaneously." msgstr "Sätter det maximala antalet filer som en serverprocess tillåts ha öppna på en gång." -#: utils/misc/guc_tables.c:2698 +#: utils/misc/guc_tables.c:2707 msgid "Sets the maximum number of simultaneously prepared transactions." msgstr "Sätter det maximala antalet förberedda transaktioner man får ha på en gång." -#: utils/misc/guc_tables.c:2709 +#: utils/misc/guc_tables.c:2718 msgid "Sets the minimum OID of tables for tracking locks." msgstr "Sätter minsta tabell-OID för spårning av lås." -#: utils/misc/guc_tables.c:2710 +#: utils/misc/guc_tables.c:2719 msgid "Is used to avoid output on system tables." msgstr "Används för att undvika utdata för systemtabeller." -#: utils/misc/guc_tables.c:2719 +#: utils/misc/guc_tables.c:2728 msgid "Sets the OID of the table with unconditionally lock tracing." msgstr "Sätter OID för tabellen med ovillkorlig låsspårning." -#: utils/misc/guc_tables.c:2731 +#: utils/misc/guc_tables.c:2740 msgid "Sets the maximum allowed duration of any statement." msgstr "Sätter den maximala tiden som en sats får köra." -#: utils/misc/guc_tables.c:2742 +#: utils/misc/guc_tables.c:2751 msgid "Sets the maximum allowed duration of any wait for a lock." msgstr "Sätter den maximala tiden som man får vänta på ett lås." -#: utils/misc/guc_tables.c:2753 +#: utils/misc/guc_tables.c:2762 msgid "Sets the maximum allowed idle time between queries, when in a transaction." msgstr "Sätter den maximalt tillåtna inaktiva tiden mellan frågor i en transaktion." -#: utils/misc/guc_tables.c:2764 +#: utils/misc/guc_tables.c:2773 msgid "Sets the maximum allowed duration of any transaction within a session (not a prepared transaction)." msgstr "Sätter den maximala tillåtana tiden för en transaktion i en session (ej en preparerad transaktion)." -#: utils/misc/guc_tables.c:2775 +#: utils/misc/guc_tables.c:2784 msgid "Sets the maximum allowed idle time between queries, when not in a transaction." msgstr "Sätter den maximalt tillåtna inaktiva tiden mellan frågor utanför en transaktion." -#: utils/misc/guc_tables.c:2786 +#: utils/misc/guc_tables.c:2795 msgid "Minimum age at which VACUUM should freeze a table row." msgstr "Minimal ålder där VACUUM skall frysa en tabellrad." -#: utils/misc/guc_tables.c:2796 +#: utils/misc/guc_tables.c:2805 msgid "Age at which VACUUM should scan whole table to freeze tuples." msgstr "Ålder där VACUUM skall skanna hela tabellen för att frysa tupler." -#: utils/misc/guc_tables.c:2806 +#: utils/misc/guc_tables.c:2815 msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row." msgstr "Minsta ålder där VACUUM skall frysa en MultiXactId i en tabellrad." -#: utils/misc/guc_tables.c:2816 +#: utils/misc/guc_tables.c:2825 msgid "Multixact age at which VACUUM should scan whole table to freeze tuples." msgstr "Multixact-ålder där VACUUM skall skanna hela tabellen för att frysa tupler." -#: utils/misc/guc_tables.c:2826 +#: utils/misc/guc_tables.c:2835 msgid "Age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Ålder där VACUUM skall startas som skyddsåtgärd för att undvika wraparound-stopp." -#: utils/misc/guc_tables.c:2835 +#: utils/misc/guc_tables.c:2844 msgid "Multixact age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Multixact-ålder där VACUUM skall startas som skyddsåtgärd för att undvika wraparound-stopp." -#: utils/misc/guc_tables.c:2848 +#: utils/misc/guc_tables.c:2857 msgid "Sets the maximum number of locks per transaction." msgstr "Sätter det maximala antalet lås per transaktion." -#: utils/misc/guc_tables.c:2849 +#: utils/misc/guc_tables.c:2858 msgid "The shared lock table is sized on the assumption that at most \"max_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." msgstr "Den delade låstabellen har storlek efter antagandet att maximalt \"max_locks_per_transaction\" objekt per serverprocess eller per förberedd transaktion kommer behöva låsas vid varje enskild tidpunkt." -#: utils/misc/guc_tables.c:2860 +#: utils/misc/guc_tables.c:2869 msgid "Sets the maximum number of predicate locks per transaction." msgstr "Sätter det maximala antalet predikatlås per transaktion." -#: utils/misc/guc_tables.c:2861 +#: utils/misc/guc_tables.c:2870 msgid "The shared predicate lock table is sized on the assumption that at most \"max_pred_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." msgstr "Den delade predikatlåstabellen har storlek efter antagandet att maximalt \"max_pred_locks_per_transaction\" objekt per serverprocess eller per förberedd transaktion kommer behöva låsas vid varje enskild tidpunkt." -#: utils/misc/guc_tables.c:2872 +#: utils/misc/guc_tables.c:2881 msgid "Sets the maximum number of predicate-locked pages and tuples per relation." msgstr "Sätter det maximala antalet predikatlåsta sidor och tupler per relation." -#: utils/misc/guc_tables.c:2873 +#: utils/misc/guc_tables.c:2882 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 "Om fler än detta totala antal sidor och tupler för samma relation är låsta av en anslutning så ersätts dessa lås med ett lås på relationen." -#: utils/misc/guc_tables.c:2883 +#: utils/misc/guc_tables.c:2892 msgid "Sets the maximum number of predicate-locked tuples per page." msgstr "Sätter det maximala antalet predikatlåsta tupler per sida." -#: utils/misc/guc_tables.c:2884 +#: utils/misc/guc_tables.c:2893 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 "Om fler än detta antal tupler på samma sida är låsta av en anslutning så ersätts dessa lås med ett lås på sidan." -#: utils/misc/guc_tables.c:2894 +#: utils/misc/guc_tables.c:2903 msgid "Sets the maximum allowed time to complete client authentication." msgstr "Sätter maximalt tillåten tid att slutföra klientautentisering." -#: utils/misc/guc_tables.c:2906 +#: utils/misc/guc_tables.c:2915 msgid "Sets the amount of time to wait before authentication on connection startup." msgstr "Sätter tiden att vänta före authentiserng vid uppstart av anslutningen.." -#: utils/misc/guc_tables.c:2918 +#: utils/misc/guc_tables.c:2927 msgid "Sets the maximum number of allocated pages for NOTIFY / LISTEN queue." msgstr "Sätter det maximala antalet allokerade sidor till kö för NOTIFY / LISTEN." -#: utils/misc/guc_tables.c:2928 +#: utils/misc/guc_tables.c:2937 msgid "Buffer size for reading ahead in the WAL during recovery." msgstr "Bufferstorlek för read-ahead av WAL vid återställning." -#: utils/misc/guc_tables.c:2929 +#: utils/misc/guc_tables.c:2938 msgid "Maximum distance to read ahead in the WAL to prefetch referenced data blocks." msgstr "Maximal längd att läsa i förväg av WAL för att prefetch:a refererade datablock." -#: utils/misc/guc_tables.c:2939 +#: utils/misc/guc_tables.c:2948 msgid "Sets the size of WAL files held for standby servers." msgstr "Sätter storlek på WAL-filer som sparas för standby-servrar." -#: utils/misc/guc_tables.c:2950 +#: utils/misc/guc_tables.c:2959 msgid "Sets the minimum size to shrink the WAL to." msgstr "Sätter maximal storlek som WAL kan krympas till." -#: utils/misc/guc_tables.c:2962 +#: utils/misc/guc_tables.c:2971 msgid "Sets the WAL size that triggers a checkpoint." msgstr "Sätter WAL-storlek som triggar en checkpoint." -#: utils/misc/guc_tables.c:2974 +#: utils/misc/guc_tables.c:2983 msgid "Sets the maximum time between automatic WAL checkpoints." msgstr "Sätter maximal tid mellan två automatiska WAL-checkpoint:er." -#: utils/misc/guc_tables.c:2985 +#: utils/misc/guc_tables.c:2994 msgid "Sets the maximum time before warning if checkpoints triggered by WAL volume happen too frequently." msgstr "Sätter maximal tid innan en varning ges för att stor WAL-volymn gör att checkpoint triggas för ofta." -#: utils/misc/guc_tables.c:2987 +#: utils/misc/guc_tables.c:2996 msgid "Write a message to the server log if checkpoints caused by the filling of WAL segment files happen more frequently than this amount of time. 0 disables the warning." msgstr "Skriv ett meddelande i serverloggen om checkpoint:er som orsakas av fulla WAL-segmentfiler händer oftare än denna tid. 0 stänger av varningen." -#: utils/misc/guc_tables.c:3000 utils/misc/guc_tables.c:3230 -#: utils/misc/guc_tables.c:3322 +#: utils/misc/guc_tables.c:3009 utils/misc/guc_tables.c:3239 +#: utils/misc/guc_tables.c:3331 msgid "Number of pages after which previously performed writes are flushed to disk." msgstr "Antal sidor varefter tidigare skrivningar flush:as till disk." -#: utils/misc/guc_tables.c:3001 utils/misc/guc_tables.c:3231 -#: utils/misc/guc_tables.c:3323 +#: utils/misc/guc_tables.c:3010 utils/misc/guc_tables.c:3240 +#: utils/misc/guc_tables.c:3332 msgid "0 disables forced writeback." msgstr "0 stänger av tvingad tillbakaskrivning." -#: utils/misc/guc_tables.c:3011 +#: utils/misc/guc_tables.c:3020 msgid "Sets the number of disk-page buffers in shared memory for WAL." msgstr "Sätter antal buffrar för disksidor i delat minne för WAL." -#: utils/misc/guc_tables.c:3012 +#: utils/misc/guc_tables.c:3021 msgid "-1 means use a fraction of \"shared_buffers\"." msgstr "-1 betyder att en bråkdel av \"shared_buffers\" används." -#: utils/misc/guc_tables.c:3022 +#: utils/misc/guc_tables.c:3031 msgid "Time between WAL flushes performed in the WAL writer." msgstr "Tid mellan WAL-flush:ar utförda i WAL-skrivaren." -#: utils/misc/guc_tables.c:3033 +#: utils/misc/guc_tables.c:3042 msgid "Amount of WAL written out by WAL writer that triggers a flush." msgstr "Mängden WAL utskrivna av WAL-skrivaren som triggar en flush." -#: utils/misc/guc_tables.c:3044 +#: utils/misc/guc_tables.c:3053 msgid "Minimum size of new file to fsync instead of writing WAL." msgstr "Minimal storlek på ny fil som skall fsync:as istället för att skriva till WAL." -#: utils/misc/guc_tables.c:3055 +#: utils/misc/guc_tables.c:3064 msgid "Sets the maximum number of simultaneously running WAL sender processes." msgstr "Sätter maximalt antal samtidigt körande WAL-sändarprocesser." -#: utils/misc/guc_tables.c:3066 +#: utils/misc/guc_tables.c:3075 msgid "Sets the maximum number of simultaneously defined replication slots." msgstr "Sätter maximalt antal samtidigt definierade replikeringsslottar." -#: utils/misc/guc_tables.c:3076 +#: utils/misc/guc_tables.c:3085 msgid "Sets the maximum WAL size that can be reserved by replication slots." msgstr "Sätter maximalt WAL-storlek som kan reserveras av replikeringsslottar." -#: utils/misc/guc_tables.c:3077 +#: utils/misc/guc_tables.c:3086 msgid "Replication slots will be marked as failed, and segments released for deletion or recycling, if this much space is occupied by WAL on disk. -1 means no maximum." msgstr "Replikeringsslottar kommer markeras som misslyckade och segment kommer släppas till borttagning eller återanvändning när så här mycket plats används av WAL på disk. -1 betyder att inget maximum finns." -#: utils/misc/guc_tables.c:3089 +#: utils/misc/guc_tables.c:3098 msgid "Sets the maximum time to wait for WAL replication." msgstr "Sätter maximal tid att vänta på WAL-replikering." -#: utils/misc/guc_tables.c:3100 +#: utils/misc/guc_tables.c:3109 msgid "Sets the duration a replication slot can remain idle before it is invalidated." msgstr "Sätter tiden som en replikeringsslot kan vara oanvänd innan den invalideras." -#: utils/misc/guc_tables.c:3112 +#: utils/misc/guc_tables.c:3121 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk." msgstr "Sätter fördröjning i mikrosekunder mellan transaktions-commit ochj flush:ning av WAL till disk." -#: utils/misc/guc_tables.c:3124 +#: utils/misc/guc_tables.c:3133 msgid "Sets the minimum number of concurrent open transactions required before performing \"commit_delay\"." msgstr "Sätter minsta antal samtida öppna transaktioner som krävs innan vi utför en \"commit_delay\"." -#: utils/misc/guc_tables.c:3135 +#: utils/misc/guc_tables.c:3144 msgid "Sets the number of digits displayed for floating-point values." msgstr "Sätter antal siffror som visas för flyttalsvärden." -#: utils/misc/guc_tables.c:3136 +#: utils/misc/guc_tables.c:3145 msgid "This affects real, double precision, and geometric data types. A zero or negative parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate). Any value greater than zero selects precise output mode." msgstr "Detta påverkar real, double precision och geometriska datatyper. Noll eller negativt parametervärde läggs till standard antal siffror (FLT_DIG eller DBL_DIG respektive). Ett värde större än noll väljer ett exakt utmatningsläge." -#: utils/misc/guc_tables.c:3148 +#: utils/misc/guc_tables.c:3157 msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by \"log_statement_sample_rate\"." msgstr "Sätter minimal körtid där ett urval av långsammare satser kommer loggas. Urvalet bestämms av \"log_statement_sample_rate\"." -#: utils/misc/guc_tables.c:3151 +#: utils/misc/guc_tables.c:3160 msgid "-1 disables sampling. 0 means sample all statements." msgstr "-1 stänger av sampling. 0 betyder att sampla alla satser." -#: utils/misc/guc_tables.c:3161 +#: utils/misc/guc_tables.c:3170 msgid "Sets the minimum execution time above which all statements will be logged." msgstr "Sätter minimal körtid där alla långsammare satser kommer loggas." -#: utils/misc/guc_tables.c:3163 +#: utils/misc/guc_tables.c:3172 msgid "-1 disables logging statement durations. 0 means log all statement durations." msgstr "-1 stänger av logging av tid för satser. 0 betyder att logga tid på alla satser." -#: utils/misc/guc_tables.c:3173 +#: utils/misc/guc_tables.c:3182 msgid "Sets the minimum execution time above which autovacuum actions will be logged." msgstr "Sätter minimal körtid där långsammare autovacuum-operationer kommer loggas." -#: utils/misc/guc_tables.c:3175 +#: utils/misc/guc_tables.c:3184 msgid "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." msgstr "-1 stänger av loggning av autovaccum-åtgärder. 0 betyder att logga alla autovacuum-åtgärder." -#: utils/misc/guc_tables.c:3185 +#: utils/misc/guc_tables.c:3194 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements." msgstr "Sätter maximal längd i byte på data som loggas för bind-parametrar vid loggning av satser." -#: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 +#: utils/misc/guc_tables.c:3196 utils/misc/guc_tables.c:3208 msgid "-1 means log values in full." msgstr "-1 betyder att logga fullständiga värden." -#: utils/misc/guc_tables.c:3197 +#: utils/misc/guc_tables.c:3206 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements, on error." msgstr "Sätter maximal längs i byte på data som loggas för bind-parametrar vid loggning av satser i samband med fel." -#: utils/misc/guc_tables.c:3209 +#: utils/misc/guc_tables.c:3218 msgid "Background writer sleep time between rounds." msgstr "Bakgrundsskrivarens sleep-tid mellan körningar." -#: utils/misc/guc_tables.c:3220 +#: utils/misc/guc_tables.c:3229 msgid "Background writer maximum number of LRU pages to flush per round." msgstr "Bakgrundsskrivarens maximala antal LRU-sidor som flush:as per omgång." -#: utils/misc/guc_tables.c:3221 +#: utils/misc/guc_tables.c:3230 msgid "0 disables background writing." msgstr "0 stänger av bakgrundsskrivning." -#: utils/misc/guc_tables.c:3243 +#: utils/misc/guc_tables.c:3252 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem." msgstr "Antal samtidiga förfrågningar som kan effektivt kan hanteras av disksystemet." -#: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 +#: utils/misc/guc_tables.c:3253 utils/misc/guc_tables.c:3267 msgid "0 disables simultaneous requests." msgstr "0 stänger av simultana förfrågningar." -#: utils/misc/guc_tables.c:3257 +#: utils/misc/guc_tables.c:3266 msgid "A variant of \"effective_io_concurrency\" that is used for maintenance work." msgstr "En variant av \"effective_io_concurrency\" som används för underhållsarbete." -#: utils/misc/guc_tables.c:3272 +#: utils/misc/guc_tables.c:3281 msgid "Server-wide limit that clamps io_combine_limit." msgstr "Serversatt gräns som begränsar io_combine_limit." -#: utils/misc/guc_tables.c:3286 +#: utils/misc/guc_tables.c:3295 msgid "Limit on the size of data reads and writes." msgstr "Begränsa storlek på data för läsning och skrivning." -#: utils/misc/guc_tables.c:3300 +#: utils/misc/guc_tables.c:3309 msgid "Max number of IOs that one process can execute simultaneously." msgstr "Max antal IO som en process kan köra samtidigt." -#: utils/misc/guc_tables.c:3312 +#: utils/misc/guc_tables.c:3321 msgid "Number of IO worker processes, for io_method=worker." msgstr "Antal IO-arbetsprocesser, för io_method=worker." -#: utils/misc/guc_tables.c:3335 +#: utils/misc/guc_tables.c:3344 msgid "Maximum number of concurrent worker processes." msgstr "Maximalt antal samtidiga arbetsprocesser." -#: utils/misc/guc_tables.c:3347 +#: utils/misc/guc_tables.c:3356 msgid "Maximum number of logical replication worker processes." msgstr "Maximalt antal arbetsprocesser för logisk replikering." -#: utils/misc/guc_tables.c:3359 +#: utils/misc/guc_tables.c:3368 msgid "Maximum number of table synchronization workers per subscription." msgstr "Maximalt antal arbetare som synkroniserar tabeller per prenumeration." -#: utils/misc/guc_tables.c:3371 +#: utils/misc/guc_tables.c:3380 msgid "Maximum number of parallel apply workers per subscription." msgstr "Maximalt antal parallella arbetare som applicerar ändring per prenumeration." -#: utils/misc/guc_tables.c:3383 +#: utils/misc/guc_tables.c:3392 msgid "Sets the maximum number of active replication origins." msgstr "Sätter maximalt antal aktiva replikerings-origin." -#: utils/misc/guc_tables.c:3393 +#: utils/misc/guc_tables.c:3402 msgid "Sets the amount of time to wait before forcing log file rotation." msgstr "Sätter tiden vi väntar innan vi tvingar rotering av loggfil." -#: utils/misc/guc_tables.c:3395 +#: utils/misc/guc_tables.c:3404 msgid "0 disables time-based creation of new log files." msgstr "0 stänger av tidsbaserat skapande av nya loggfiler." -#: utils/misc/guc_tables.c:3405 +#: utils/misc/guc_tables.c:3414 msgid "Sets the maximum size a log file can reach before being rotated." msgstr "Sätter maximalt storlek en loggfil kan bli innan vi tvingar rotering." -#: utils/misc/guc_tables.c:3407 +#: utils/misc/guc_tables.c:3416 msgid "0 disables size-based creation of new log files." msgstr "0 stänger av storleksbaserat skapande av nya loggfiler." -#: utils/misc/guc_tables.c:3417 +#: utils/misc/guc_tables.c:3426 msgid "Shows the maximum number of function arguments." msgstr "Visar maximalt antal funktionsargument." -#: utils/misc/guc_tables.c:3428 +#: utils/misc/guc_tables.c:3437 msgid "Shows the maximum number of index keys." msgstr "Visar maximalt antal indexnycklar." -#: utils/misc/guc_tables.c:3439 +#: utils/misc/guc_tables.c:3448 msgid "Shows the maximum identifier length." msgstr "Visar den maximala identifierarlängden." -#: utils/misc/guc_tables.c:3450 +#: utils/misc/guc_tables.c:3459 msgid "Shows the size of a disk block." msgstr "Visar storleken på ett diskblock." -#: utils/misc/guc_tables.c:3461 +#: utils/misc/guc_tables.c:3470 msgid "Shows the number of pages per disk file." msgstr "Visar antal sidor per diskfil." -#: utils/misc/guc_tables.c:3472 +#: utils/misc/guc_tables.c:3481 msgid "Shows the block size in the write ahead log." msgstr "Visar blockstorleken i the write-ahead-loggen." -#: utils/misc/guc_tables.c:3483 +#: utils/misc/guc_tables.c:3492 msgid "Sets the time to wait before retrying to retrieve WAL after a failed attempt." msgstr "Sätter väntetiden innan databasen försöker ta emot WAL efter ett misslyckat försök." -#: utils/misc/guc_tables.c:3495 +#: utils/misc/guc_tables.c:3504 msgid "Shows the size of write ahead log segments." msgstr "Visar storleken på write-ahead-log-segment." -#: utils/misc/guc_tables.c:3508 +#: utils/misc/guc_tables.c:3517 msgid "Time for which WAL summary files should be kept." msgstr "Tid som filer för WAL-summering skall behållas." -#: utils/misc/guc_tables.c:3509 +#: utils/misc/guc_tables.c:3518 msgid "0 disables automatic summary file deletion." msgstr "0 stänger av automatisk borttagning av summeringsfil." -#: utils/misc/guc_tables.c:3521 +#: utils/misc/guc_tables.c:3530 msgid "Time to sleep between autovacuum runs." msgstr "Tid att sova mellan körningar av autovacuum." -#: utils/misc/guc_tables.c:3531 +#: utils/misc/guc_tables.c:3540 msgid "Minimum number of tuple updates or deletes prior to vacuum." msgstr "Minsta antal tupel-uppdateringar eller raderingar innan vacuum." -#: utils/misc/guc_tables.c:3540 +#: utils/misc/guc_tables.c:3549 msgid "Maximum number of tuple updates or deletes prior to vacuum." msgstr "Maximalt antal tupel-uppdateringar eller raderingar innan vacuum." -#: utils/misc/guc_tables.c:3541 +#: utils/misc/guc_tables.c:3550 msgid "-1 disables the maximum threshold." msgstr "-1 stänger av maximalgräns." -#: utils/misc/guc_tables.c:3549 +#: utils/misc/guc_tables.c:3558 msgid "Minimum number of tuple inserts prior to vacuum." msgstr "Minsta antal tupel-insert innan vacuum." -#: utils/misc/guc_tables.c:3550 +#: utils/misc/guc_tables.c:3559 msgid "-1 disables insert vacuums." msgstr "-1 stänger av insert-vacuum" -#: utils/misc/guc_tables.c:3558 +#: utils/misc/guc_tables.c:3567 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." msgstr "Minsta antal tupel-insert, -update eller -delete innan analyze." -#: utils/misc/guc_tables.c:3568 +#: utils/misc/guc_tables.c:3577 msgid "Age at which to autovacuum a table to prevent transaction ID wraparound." msgstr "Ålder då autovacuum körs på en tabell för att förhindra wrapaound på transaktions-ID." -#: utils/misc/guc_tables.c:3580 +#: utils/misc/guc_tables.c:3589 msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound." msgstr "Ålder på multixact då autovacuum körs på en tabell för att förhindra wrapaound på multixact." -#: utils/misc/guc_tables.c:3590 +#: utils/misc/guc_tables.c:3599 msgid "Sets the number of backend slots to allocate for autovacuum workers." msgstr "Sätter antal backend-slots som allokerats till autovacuum-arbetare." -#: utils/misc/guc_tables.c:3599 +#: utils/misc/guc_tables.c:3608 msgid "Sets the maximum number of simultaneously running autovacuum worker processes." msgstr "Sätter maximalt antal samtidigt körande arbetsprocesser för autovacuum." -#: utils/misc/guc_tables.c:3609 +#: utils/misc/guc_tables.c:3618 msgid "Sets the maximum number of parallel processes per maintenance operation." msgstr "Sätter maximalt antal parallella processer per underhållsoperation." -#: utils/misc/guc_tables.c:3619 +#: utils/misc/guc_tables.c:3628 msgid "Sets the maximum number of parallel processes per executor node." msgstr "Sätter maximalt antal parallella processer per exekveringsnod." -#: utils/misc/guc_tables.c:3630 +#: utils/misc/guc_tables.c:3639 msgid "Sets the maximum number of parallel workers that can be active at one time." msgstr "Sätter maximalt antal parallella arbetare som kan vara aktiva på en gång." -#: utils/misc/guc_tables.c:3641 +#: utils/misc/guc_tables.c:3650 msgid "Sets the maximum memory to be used by each autovacuum worker process." msgstr "Sätter maximalt minne som kan användas av varje arbetsprocess för autovacuum." -#: utils/misc/guc_tables.c:3642 +#: utils/misc/guc_tables.c:3651 msgid "-1 means use \"maintenance_work_mem\"." msgstr "-1 betyder att \"maintenance_work_mem\" används." -#: utils/misc/guc_tables.c:3652 +#: utils/misc/guc_tables.c:3661 msgid "Time between issuing TCP keepalives." msgstr "Tid mellan skickande av TCP-keepalive." -#: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 -#: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 +#: utils/misc/guc_tables.c:3662 utils/misc/guc_tables.c:3673 +#: utils/misc/guc_tables.c:3796 utils/misc/guc_tables.c:3807 msgid "0 means use the system default." msgstr "0 betyder systemets standardvärde." -#: utils/misc/guc_tables.c:3663 +#: utils/misc/guc_tables.c:3672 msgid "Time between TCP keepalive retransmits." msgstr "Tid mellan omsändning av TCP-keepalive." -#: utils/misc/guc_tables.c:3674 +#: utils/misc/guc_tables.c:3683 msgid "SSL renegotiation is no longer supported; this can only be 0." msgstr "SSL-förhandling stöds inte längre; denna kan bara vara 0." -#: utils/misc/guc_tables.c:3685 +#: utils/misc/guc_tables.c:3694 msgid "Maximum number of TCP keepalive retransmits." msgstr "Maximalt antal omsändningar av TCP-keepalive." -#: utils/misc/guc_tables.c:3686 +#: utils/misc/guc_tables.c:3695 msgid "Number of consecutive keepalive retransmits that can be lost before a connection is considered dead. 0 means use the system default." msgstr "Antalet keepalive-omsändingar i rad som kan försvinna innan en anslutning anses vara död. 0 betyder systemets standardvärde." -#: utils/misc/guc_tables.c:3697 +#: utils/misc/guc_tables.c:3706 msgid "Sets the maximum allowed result for exact search by GIN." msgstr "Sätter maximalt tillåtna resultat för exakt sökning med GIN." -#: utils/misc/guc_tables.c:3698 +#: utils/misc/guc_tables.c:3707 msgid "0 means no limit." msgstr "0 betyder ingen gräns." -#: utils/misc/guc_tables.c:3707 +#: utils/misc/guc_tables.c:3716 msgid "Sets the planner's assumption about the total size of the data caches." msgstr "Sätter planerarens antagande om totala storleken på datacachen." -#: utils/misc/guc_tables.c:3708 +#: utils/misc/guc_tables.c:3717 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 "Det är totala storleken på cachen (kernelcache och delade buffertar) som användas för PostgreSQLs datafiler. Det mäts i disksidor som normalt är 8 kb styck." -#: utils/misc/guc_tables.c:3719 +#: utils/misc/guc_tables.c:3728 msgid "Sets the minimum amount of table data for a parallel scan." msgstr "Sätter minsta mängd tabelldata för en parallell skanning." -#: utils/misc/guc_tables.c:3720 +#: utils/misc/guc_tables.c:3729 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 "Om planeraren beräknar att den kommer läsa för få tabellsidor för att nå denna gräns så kommer den inte försöka med en parallell skanning." -#: utils/misc/guc_tables.c:3730 +#: utils/misc/guc_tables.c:3739 msgid "Sets the minimum amount of index data for a parallel scan." msgstr "Anger minimala mängden indexdata för en parallell scan." -#: utils/misc/guc_tables.c:3731 +#: utils/misc/guc_tables.c:3740 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 "Om planeraren beräknar att den kommer läsa för få indexsidor för att nå denna gräns så kommer den inte försöka med en parallell skanning." -#: utils/misc/guc_tables.c:3742 +#: utils/misc/guc_tables.c:3751 msgid "Shows the server version as an integer." msgstr "Visar serverns version som ett heltal." -#: utils/misc/guc_tables.c:3753 +#: utils/misc/guc_tables.c:3762 msgid "Log the use of temporary files larger than this number of kilobytes." msgstr "Logga användning av temporära filer som är större än detta antal kilobyte." -#: utils/misc/guc_tables.c:3754 +#: utils/misc/guc_tables.c:3763 msgid "-1 disables logging temporary files. 0 means log all temporary files." msgstr "-1 stänger av loggning av temporära filer. 0 betyder att alla temporära filer loggas." -#: utils/misc/guc_tables.c:3764 +#: utils/misc/guc_tables.c:3773 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." msgstr "Ställer in storleken reserverad för pg_stat_activity.query, i byte." -#: utils/misc/guc_tables.c:3775 +#: utils/misc/guc_tables.c:3784 msgid "Sets the maximum size of the pending list for GIN index." msgstr "Sätter maximal storlek på väntelistan för GIN-index." -#: utils/misc/guc_tables.c:3786 +#: utils/misc/guc_tables.c:3795 msgid "TCP user timeout." msgstr "Användartimeout för TCP." -#: utils/misc/guc_tables.c:3797 +#: utils/misc/guc_tables.c:3806 msgid "The size of huge page that should be requested." msgstr "Storleken på stora sidor skall hämtas." -#: utils/misc/guc_tables.c:3808 +#: utils/misc/guc_tables.c:3817 msgid "Aggressively flush system caches for debugging purposes." msgstr "Flush:a systemcache aggressivt för att förenkla debugging." -#: utils/misc/guc_tables.c:3809 +#: utils/misc/guc_tables.c:3818 msgid "0 means use normal caching behavior." msgstr "0 betyder att normalt cache-beteende används." -#: utils/misc/guc_tables.c:3831 +#: utils/misc/guc_tables.c:3840 msgid "Sets the time interval between checks for disconnection while running queries." msgstr "Sätter tidsintervall mellan test för nedkoppling när frågor körs." -#: utils/misc/guc_tables.c:3832 +#: utils/misc/guc_tables.c:3841 msgid "0 disables connection checks." msgstr "0 stänger av anslutningskontroller." -#: utils/misc/guc_tables.c:3842 +#: utils/misc/guc_tables.c:3851 msgid "Time between progress updates for long-running startup operations." msgstr "Tid mellan uppdatering av progress för startupoperationer som kör länge." -#: utils/misc/guc_tables.c:3844 +#: utils/misc/guc_tables.c:3853 msgid "0 disables progress updates." msgstr "0 stänger av uppdatering av progress." -#: utils/misc/guc_tables.c:3854 +#: utils/misc/guc_tables.c:3863 msgid "Sets the iteration count for SCRAM secret generation." msgstr "Sätter iterationsräknare för generering av SCRAM-hemlighet." -#: utils/misc/guc_tables.c:3874 +#: utils/misc/guc_tables.c:3883 msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page." msgstr "Ställer in planerarens estimat av kostnaden för att hämta en disksida sekvensiellt." -#: utils/misc/guc_tables.c:3885 +#: utils/misc/guc_tables.c:3894 msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page." msgstr "Ställer in planerarens estimat av kostnaden för att hämta en disksida icke-sekvensiellt." -#: utils/misc/guc_tables.c:3896 +#: utils/misc/guc_tables.c:3905 msgid "Sets the planner's estimate of the cost of processing each tuple (row)." msgstr "Ställer in planerarens estimat av kostnaden för att processa varje tupel (rad)." -#: utils/misc/guc_tables.c:3907 +#: utils/misc/guc_tables.c:3916 msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan." msgstr "Sätter planerarens kostnadsuppskattning för att processa varje indexpost under en indexskanning." -#: utils/misc/guc_tables.c:3918 +#: utils/misc/guc_tables.c:3927 msgid "Sets the planner's estimate of the cost of processing each operator or function call." msgstr "Sätter planerarens kostnadsuppskattning för att processa varje operator- eller funktions-anrop." -#: utils/misc/guc_tables.c:3929 +#: utils/misc/guc_tables.c:3938 msgid "Sets the planner's estimate of the cost of passing each tuple (row) from worker to leader backend." msgstr "Sätter planerarens kostnadsuppskattning för att skicka varje tupel (rad) från en arbetare till ledar-backend:en. " -#: utils/misc/guc_tables.c:3940 +#: utils/misc/guc_tables.c:3949 msgid "Sets the planner's estimate of the cost of starting up worker processes for parallel query." msgstr "Sätter planerarens kostnadsuppskattning för att starta upp en arbetsprocess för en parallell fråga." -#: utils/misc/guc_tables.c:3952 +#: utils/misc/guc_tables.c:3961 msgid "Perform JIT compilation if query is more expensive." msgstr "Utför JIT-kompilering om frågan är dyrare." -#: utils/misc/guc_tables.c:3953 +#: utils/misc/guc_tables.c:3962 msgid "-1 disables JIT compilation." msgstr "-1 stänger av JIT-kompilering." -#: utils/misc/guc_tables.c:3963 +#: utils/misc/guc_tables.c:3972 msgid "Optimize JIT-compiled functions if query is more expensive." msgstr "Optimera JIT-kompilerade funktioner om frågan är dyrare." -#: utils/misc/guc_tables.c:3964 +#: utils/misc/guc_tables.c:3973 msgid "-1 disables optimization." msgstr "-1 stänger av optimering." -#: utils/misc/guc_tables.c:3974 +#: utils/misc/guc_tables.c:3983 msgid "Perform JIT inlining if query is more expensive." msgstr "Utför JIT-\"inlining\" om frågan är dyrare." -#: utils/misc/guc_tables.c:3975 +#: utils/misc/guc_tables.c:3984 msgid "-1 disables inlining." msgstr "-1 stänger av \"inlining\"" -#: utils/misc/guc_tables.c:3985 +#: utils/misc/guc_tables.c:3994 msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved." msgstr "Sätter planerarens uppskattning av hur stor del av markörens rader som kommer hämtas. " -#: utils/misc/guc_tables.c:3997 +#: utils/misc/guc_tables.c:4006 msgid "Sets the planner's estimate of the average size of a recursive query's working table." msgstr "Sätter planerarens uppskattning av genomsnittliga storleken på en rekursiv frågas arbetstabell." -#: utils/misc/guc_tables.c:4009 +#: utils/misc/guc_tables.c:4018 msgid "GEQO: selective pressure within the population." msgstr "GEQO: selektionstryck inom populationen." -#: utils/misc/guc_tables.c:4020 +#: utils/misc/guc_tables.c:4029 msgid "GEQO: seed for random path selection." msgstr "GEQO: slumptalsfrö för val av slumpad sökväg." -#: utils/misc/guc_tables.c:4031 +#: utils/misc/guc_tables.c:4040 msgid "Multiple of \"work_mem\" to use for hash tables." msgstr "Multipel av \"work_mem\" för att använda till hash-tabeller." -#: utils/misc/guc_tables.c:4042 +#: utils/misc/guc_tables.c:4051 msgid "Multiple of the average buffer usage to free per round." msgstr "Multipel av genomsnittlig bufferanvändning som frias per runda." -#: utils/misc/guc_tables.c:4052 +#: utils/misc/guc_tables.c:4061 msgid "Sets the seed for random-number generation." msgstr "Sätter fröet för slumptalsgeneratorn." -#: utils/misc/guc_tables.c:4063 +#: utils/misc/guc_tables.c:4072 msgid "Vacuum cost delay in milliseconds." msgstr "Städkostfördröjning i millisekunder." -#: utils/misc/guc_tables.c:4074 +#: utils/misc/guc_tables.c:4083 msgid "Vacuum cost delay in milliseconds, for autovacuum." msgstr "Städkostfördröjning i millisekunder, för autovacuum." -#: utils/misc/guc_tables.c:4075 +#: utils/misc/guc_tables.c:4084 msgid "-1 means use \"vacuum_cost_delay\"." msgstr "-1 betyder att \"vacuum_cost_delay\" används." -#: utils/misc/guc_tables.c:4085 +#: utils/misc/guc_tables.c:4094 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples." msgstr "Antalet tupeluppdateringar eller borttagningar innan vacuum relativt reltuples." -#: utils/misc/guc_tables.c:4095 +#: utils/misc/guc_tables.c:4104 msgid "Number of tuple inserts prior to vacuum as a fraction of reltuples." msgstr "Antal tupelinsättningar innan vacuum relativt reltuples." -#: utils/misc/guc_tables.c:4105 +#: utils/misc/guc_tables.c:4114 msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples." msgstr "Antalet tupelinsättningar, uppdateringar eller borttagningar innan analyze relativt reltuples." -#: utils/misc/guc_tables.c:4115 +#: utils/misc/guc_tables.c:4124 msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval." msgstr "Tid lagd på att flusha nedsmutsade buffrar vid checkpoint relativt checkpoint-intervallet." -#: utils/misc/guc_tables.c:4125 +#: utils/misc/guc_tables.c:4134 msgid "Fraction of statements exceeding \"log_min_duration_sample\" to be logged." msgstr "Bråkdel av satser som överskrider \"log_min_duration_sample\" som skall loggas." -#: utils/misc/guc_tables.c:4126 +#: utils/misc/guc_tables.c:4135 msgid "Use a value between 0.0 (never log) and 1.0 (always log)." msgstr "Använd ett värde mellan 0.0 (logga aldrig) och 1.0 (logga alltid)." -#: utils/misc/guc_tables.c:4135 +#: utils/misc/guc_tables.c:4144 msgid "Sets the fraction of transactions from which to log all statements." msgstr "Ställer in bråkdel av transaktionerna från vilka alla satser skall loggas." -#: utils/misc/guc_tables.c:4136 +#: utils/misc/guc_tables.c:4145 msgid "Use a value between 0.0 (never log) and 1.0 (log all statements for all transactions)." msgstr "Använd ett värde mellan 0.0 (logga aldrig) till 1.0 (logga all satser i alla transaktioner)." -#: utils/misc/guc_tables.c:4146 +#: utils/misc/guc_tables.c:4155 msgid "Fraction of pages in a relation vacuum can scan and fail to freeze before disabling eager scanning." msgstr "Bråkdel av sidor i en relation som vacuum kan skanna och misslyckas att frysa innan ivrig skanning stängs av." -#: utils/misc/guc_tables.c:4147 +#: utils/misc/guc_tables.c:4156 msgid "A value of 0.0 disables eager scanning and a value of 1.0 will eagerly scan up to 100 percent of the all-visible pages in the relation. If vacuum successfully freezes these pages, the cap is lower than 100 percent, because the goal is to amortize page freezing across multiple vacuums." msgstr "Värdet 0.0 stänger av ivrig skanning och värdet 1.0 för att ivrig skanning används på 100 procesnt av alla totalt synliga sidor i relationen. Om vacuum lyckas frysa dessa sidor så blir gränsen under 100% men målet är att nå detta resultat över multipla vacuum." -#: utils/misc/guc_tables.c:4165 +#: utils/misc/guc_tables.c:4174 msgid "Sets the shell command that will be called to archive a WAL file." msgstr "Sätter shell-kommandot som kommer anropas för att arkivera en WAL-fil." -#: utils/misc/guc_tables.c:4166 +#: utils/misc/guc_tables.c:4175 msgid "An empty string means use \"archive_library\"." msgstr "En tom sträng betyder att \"archive_library\" används." -#: utils/misc/guc_tables.c:4175 +#: utils/misc/guc_tables.c:4184 msgid "Sets the library that will be called to archive a WAL file." msgstr "Sätter biblioteket som kommer anropas för att arkivera en WAL-fil." -#: utils/misc/guc_tables.c:4176 +#: utils/misc/guc_tables.c:4185 msgid "An empty string means use \"archive_command\"." msgstr "En tom sträng betyder att \"archive_command\" skall användas." -#: utils/misc/guc_tables.c:4185 +#: utils/misc/guc_tables.c:4194 msgid "Sets the shell command that will be called to retrieve an archived WAL file." msgstr "Sätter shell-kommandot som kommer anropas för att få en arkiverad WAL-fil." -#: utils/misc/guc_tables.c:4195 +#: utils/misc/guc_tables.c:4204 msgid "Sets the shell command that will be executed at every restart point." msgstr "Sätter shell-kommandot som kommer anropas vid varje omstartspunkt." -#: utils/misc/guc_tables.c:4205 +#: utils/misc/guc_tables.c:4214 msgid "Sets the shell command that will be executed once at the end of recovery." msgstr "Sätter shell-kommandot som kommer anropas en gång i slutet av en återställning." -#: utils/misc/guc_tables.c:4215 +#: utils/misc/guc_tables.c:4224 msgid "Specifies the timeline to recover into." msgstr "Anger tidslinjen att återställa till." -#: utils/misc/guc_tables.c:4225 +#: utils/misc/guc_tables.c:4234 msgid "Set to \"immediate\" to end recovery as soon as a consistent state is reached." msgstr "Sätt till \"immediate\" för att avsluta återställning så snart ett konsistent tillstånd uppnås." -#: utils/misc/guc_tables.c:4234 +#: utils/misc/guc_tables.c:4243 msgid "Sets the transaction ID up to which recovery will proceed." msgstr "Sätter transaktions-ID som återställning kommer gå till." -#: utils/misc/guc_tables.c:4243 +#: utils/misc/guc_tables.c:4252 msgid "Sets the time stamp up to which recovery will proceed." msgstr "Sätter tidsstämpel som återställning kommer gå till." -#: utils/misc/guc_tables.c:4252 +#: utils/misc/guc_tables.c:4261 msgid "Sets the named restore point up to which recovery will proceed." msgstr "Sätter namngiven återställningspunkt som återställning kommer gå till." -#: utils/misc/guc_tables.c:4261 +#: utils/misc/guc_tables.c:4270 msgid "Sets the LSN of the write-ahead log location up to which recovery will proceed." msgstr "Sätter LSN för write-ahead-logg-position som återställning kommer få till." -#: utils/misc/guc_tables.c:4271 +#: utils/misc/guc_tables.c:4280 msgid "Sets the connection string to be used to connect to the sending server." msgstr "Sätter anslutningssträng som anvönds för att ansluta till skickande server." -#: utils/misc/guc_tables.c:4282 +#: utils/misc/guc_tables.c:4291 msgid "Sets the name of the replication slot to use on the sending server." msgstr "Sätter namnet på replikeringsslotten som skall användas av den skickande servern." -#: utils/misc/guc_tables.c:4292 +#: utils/misc/guc_tables.c:4301 msgid "Sets the client's character set encoding." msgstr "Ställer in klientens teckenkodning." -#: utils/misc/guc_tables.c:4303 +#: utils/misc/guc_tables.c:4312 msgid "Controls information prefixed to each log line." msgstr "Styr information prefixat till varje loggrad." -#: utils/misc/guc_tables.c:4304 +#: utils/misc/guc_tables.c:4313 msgid "An empty string means no prefix." msgstr "En tom stäng betyder inget prefix." -#: utils/misc/guc_tables.c:4313 +#: utils/misc/guc_tables.c:4322 msgid "Sets the time zone to use in log messages." msgstr "Sätter tidszonen som används i loggmeddelanden." -#: utils/misc/guc_tables.c:4323 +#: utils/misc/guc_tables.c:4332 msgid "Sets the display format for date and time values." msgstr "Sätter displayformat för datum och tidvärden." -#: utils/misc/guc_tables.c:4324 +#: utils/misc/guc_tables.c:4333 msgid "Also controls interpretation of ambiguous date inputs." msgstr "Styr också tolkning av tvetydig datumindata." -#: utils/misc/guc_tables.c:4335 +#: utils/misc/guc_tables.c:4344 msgid "Sets the default table access method for new tables." msgstr "Ställer in standard tabellaccessmetod för nya tabeller." -#: utils/misc/guc_tables.c:4346 +#: utils/misc/guc_tables.c:4355 msgid "Sets the default tablespace to create tables and indexes in." msgstr "Ställer in standard tabellutrymme där tabeller och index skapas." -#: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 +#: utils/misc/guc_tables.c:4356 utils/misc/guc_tables.c:4367 msgid "An empty string means use the database's default tablespace." msgstr "En tom sträng betyder att databasens standardtabellutrymme används." -#: utils/misc/guc_tables.c:4357 +#: utils/misc/guc_tables.c:4366 msgid "Sets the tablespace(s) to use for temporary tables and sort files." msgstr "Ställer in tablespace för temporära tabeller och sorteringsfiler." -#: utils/misc/guc_tables.c:4368 +#: utils/misc/guc_tables.c:4377 msgid "Sets whether a CREATEROLE user automatically grants the role to themselves, and with which options." msgstr "Sätter hurvida en CREATEROLE-användare automatiskt får rollen själva, och med vilka flaggor." -#: utils/misc/guc_tables.c:4370 +#: utils/misc/guc_tables.c:4379 msgid "An empty string disables automatic self grants." msgstr "En tom stäng stänger av automatiska grant till sig själv." -#: utils/misc/guc_tables.c:4380 +#: utils/misc/guc_tables.c:4389 msgid "Sets the path for dynamically loadable modules." msgstr "Sätter sökvägen till dynamiskt laddade moduler." -#: utils/misc/guc_tables.c:4381 +#: utils/misc/guc_tables.c:4390 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 "Om en dynamiskt laddad modul behöver öppnas och det angivna namnet inte har en katalogkomponent (dvs, namnet inte innehåller snedstreck) så kommer systemet använda denna sökväg för filen." -#: utils/misc/guc_tables.c:4394 +#: utils/misc/guc_tables.c:4403 msgid "Sets the path for extension control files." msgstr "Sätter sökvägen till utökningars kontrollfiler." -#: utils/misc/guc_tables.c:4395 +#: utils/misc/guc_tables.c:4404 msgid "The remaining extension script and secondary control files are then loaded from the same directory where the primary control file was found." msgstr "Resterande utökningsskript och sekundära kontrollfiler laddas från samma katalog som den primära kontrollfilen hittades i." -#: utils/misc/guc_tables.c:4406 +#: utils/misc/guc_tables.c:4415 msgid "Sets the location of the Kerberos server key file." msgstr "Ställer in platsen för Kerberos servernyckelfil." -#: utils/misc/guc_tables.c:4417 +#: utils/misc/guc_tables.c:4426 msgid "Sets the Bonjour service name." msgstr "Sätter Bonjour-tjänstens namn." -#: utils/misc/guc_tables.c:4418 +#: utils/misc/guc_tables.c:4427 msgid "An empty string means use the computer name." msgstr "En tom sträng betyder att datorns namn används." -#: utils/misc/guc_tables.c:4427 +#: utils/misc/guc_tables.c:4436 msgid "Sets the language in which messages are displayed." msgstr "Sätter språket som meddelanden visas i." -#: utils/misc/guc_tables.c:4428 utils/misc/guc_tables.c:4438 -#: utils/misc/guc_tables.c:4448 utils/misc/guc_tables.c:4458 +#: utils/misc/guc_tables.c:4437 utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4457 utils/misc/guc_tables.c:4467 msgid "An empty string means use the operating system setting." msgstr "En tom sträng betyder att operativsystemets inställning används." -#: utils/misc/guc_tables.c:4437 +#: utils/misc/guc_tables.c:4446 msgid "Sets the locale for formatting monetary amounts." msgstr "Sätter lokalen för att formattera monetära belopp." -#: utils/misc/guc_tables.c:4447 +#: utils/misc/guc_tables.c:4456 msgid "Sets the locale for formatting numbers." msgstr "Ställer in lokalen för att formattera nummer." -#: utils/misc/guc_tables.c:4457 +#: utils/misc/guc_tables.c:4466 msgid "Sets the locale for formatting date and time values." msgstr "Sätter lokalen för att formattera datum och tider." -#: utils/misc/guc_tables.c:4467 +#: utils/misc/guc_tables.c:4476 msgid "Lists shared libraries to preload into each backend." msgstr "Listar delade bibliotek som skall förladdas i varje backend." -#: utils/misc/guc_tables.c:4478 +#: utils/misc/guc_tables.c:4487 msgid "Lists shared libraries to preload into server." msgstr "Listar delade bibliotek som skall förladdas i servern." -#: utils/misc/guc_tables.c:4489 +#: utils/misc/guc_tables.c:4498 msgid "Lists unprivileged shared libraries to preload into each backend." msgstr "Listar ej priviligerade delade bibliotek som förladdas in i varje backend." -#: utils/misc/guc_tables.c:4500 +#: utils/misc/guc_tables.c:4509 msgid "Sets the schema search order for names that are not schema-qualified." msgstr "Sätter schemats sökordning för namn som inte är schema-prefixade." -#: utils/misc/guc_tables.c:4512 +#: utils/misc/guc_tables.c:4521 msgid "Shows the server (database) character set encoding." msgstr "Visar serverns (databasens) teckenkodning." -#: utils/misc/guc_tables.c:4524 +#: utils/misc/guc_tables.c:4533 msgid "Shows the server version." msgstr "Visar serverversionen" -#: utils/misc/guc_tables.c:4536 +#: utils/misc/guc_tables.c:4545 msgid "Sets the current role." msgstr "Ställer in den aktiva rollen." -#: utils/misc/guc_tables.c:4548 +#: utils/misc/guc_tables.c:4557 msgid "Sets the session user name." msgstr "Sätter sessionens användarnamn." -#: utils/misc/guc_tables.c:4559 +#: utils/misc/guc_tables.c:4568 msgid "Sets the destination for server log output." msgstr "Sätter serverloggens destination." -#: utils/misc/guc_tables.c:4560 +#: utils/misc/guc_tables.c:4569 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", \"jsonlog\", and \"eventlog\", depending on the platform." msgstr "Giltiga värden är kombinationer av \"stderr\", \"syslog\", \"csvlog\", \"jsonlog\" och \"eventlog\", beroende på plattform." -#: utils/misc/guc_tables.c:4571 +#: utils/misc/guc_tables.c:4580 msgid "Sets the destination directory for log files." msgstr "Sätter destinationskatalogen för loggfiler." -#: utils/misc/guc_tables.c:4572 +#: utils/misc/guc_tables.c:4581 msgid "Can be specified as relative to the data directory or as absolute path." msgstr "Kan anges relativt datakatalogen eller som en absolut sökväg." -#: utils/misc/guc_tables.c:4582 +#: utils/misc/guc_tables.c:4591 msgid "Sets the file name pattern for log files." msgstr "Sätter filnamnsmallen för loggfiler." -#: utils/misc/guc_tables.c:4593 +#: utils/misc/guc_tables.c:4602 msgid "Sets the program name used to identify PostgreSQL messages in syslog." msgstr "Sätter programnamnet som används för att identifiera PostgreSQLs meddelanden i syslog." -#: utils/misc/guc_tables.c:4604 +#: utils/misc/guc_tables.c:4613 msgid "Sets the application name used to identify PostgreSQL messages in the event log." msgstr "Sätter applikationsnamnet som används för att identifiera PostgreSQLs meddelanden i händelseloggen." -#: utils/misc/guc_tables.c:4615 +#: utils/misc/guc_tables.c:4624 msgid "Sets the time zone for displaying and interpreting time stamps." msgstr "Ställer in tidszon för visande och tolkande av tidsstämplar." -#: utils/misc/guc_tables.c:4625 +#: utils/misc/guc_tables.c:4634 msgid "Selects a file of time zone abbreviations." msgstr "Väljer en fil för tidszonsförkortningar." -#: utils/misc/guc_tables.c:4635 +#: utils/misc/guc_tables.c:4644 msgid "Sets the owning group of the Unix-domain socket." msgstr "Sätter ägande grupp för Unix-domainuttaget (socket)." -#: utils/misc/guc_tables.c:4636 +#: utils/misc/guc_tables.c:4645 msgid "The owning user of the socket is always the user that starts the server. An empty string means use the user's default group." msgstr "Ägaren av uttaget (socker) är alltid användaren som startar servern. En tom sträng betyder att användarens standardgrupp används." -#: utils/misc/guc_tables.c:4646 +#: utils/misc/guc_tables.c:4655 msgid "Sets the directories where Unix-domain sockets will be created." msgstr "Ställer in kataloger där Unix-domän-uttag (socket) kommer skapas." -#: utils/misc/guc_tables.c:4657 +#: utils/misc/guc_tables.c:4666 msgid "Sets the host name or IP address(es) to listen to." msgstr "Sätter värdnamn eller IP-adress(er) att lyssna på." -#: utils/misc/guc_tables.c:4672 +#: utils/misc/guc_tables.c:4681 msgid "Sets the server's data directory." msgstr "Ställer in serverns datakatalog." -#: utils/misc/guc_tables.c:4683 +#: utils/misc/guc_tables.c:4692 msgid "Sets the server's main configuration file." msgstr "Sätter serverns huvudkonfigurationsfil." -#: utils/misc/guc_tables.c:4694 +#: utils/misc/guc_tables.c:4703 msgid "Sets the server's \"hba\" configuration file." msgstr "Sätter serverns \"hba\"-konfigurationsfil." -#: utils/misc/guc_tables.c:4705 +#: utils/misc/guc_tables.c:4714 msgid "Sets the server's \"ident\" configuration file." msgstr "Sätter serverns \"ident\"-konfigurationsfil." -#: utils/misc/guc_tables.c:4716 +#: utils/misc/guc_tables.c:4725 msgid "Writes the postmaster PID to the specified file." msgstr "Skriver postmaster-PID till angiven fil." -#: utils/misc/guc_tables.c:4727 +#: utils/misc/guc_tables.c:4736 msgid "Shows the name of the SSL library." msgstr "Visar namnet på SSL-biblioteket." -#: utils/misc/guc_tables.c:4742 +#: utils/misc/guc_tables.c:4751 msgid "Location of the SSL server certificate file." msgstr "Plats för serverns SSL-certifikatfil." -#: utils/misc/guc_tables.c:4752 +#: utils/misc/guc_tables.c:4761 msgid "Location of the SSL server private key file." msgstr "Plats för serverns privata SSL-nyckelfil." -#: utils/misc/guc_tables.c:4762 +#: utils/misc/guc_tables.c:4771 msgid "Location of the SSL certificate authority file." msgstr "Plats för SSL-certifikats auktoritetsfil." -#: utils/misc/guc_tables.c:4772 +#: utils/misc/guc_tables.c:4781 msgid "Location of the SSL certificate revocation list file." msgstr "Plats för SSL-certifikats återkallningsfil." -#: utils/misc/guc_tables.c:4782 +#: utils/misc/guc_tables.c:4791 msgid "Location of the SSL certificate revocation list directory." msgstr "Plats av katalog för SSL-certifikats återkallningslistor." -#: utils/misc/guc_tables.c:4792 +#: utils/misc/guc_tables.c:4801 msgid "Number of synchronous standbys and list of names of potential synchronous ones." msgstr "Antalet synkrona standby och en lista med namn på potentiellt synkrona sådana." -#: utils/misc/guc_tables.c:4803 +#: utils/misc/guc_tables.c:4812 msgid "Sets default text search configuration." msgstr "Ställer in standard textsökkonfiguration." -#: utils/misc/guc_tables.c:4813 +#: utils/misc/guc_tables.c:4822 msgid "Sets the list of allowed TLSv1.3 cipher suites." msgstr "Ställer in listan med tillåtna TLSv1.3-krypton." -#: utils/misc/guc_tables.c:4814 +#: utils/misc/guc_tables.c:4823 msgid "An empty string means use the default cipher suites." msgstr "En tom sträng betyder att standardkryptot används." -#: utils/misc/guc_tables.c:4824 +#: utils/misc/guc_tables.c:4833 msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." msgstr "Ställer in listan med tillåtna TLSv1.2-krypton (och lägre)." -#: utils/misc/guc_tables.c:4839 +#: utils/misc/guc_tables.c:4848 msgid "Sets the group(s) to use for Diffie-Hellman key exchange." msgstr "Sätter group(er) som används för Diffie-Hellmans nyckelutbyte." -#: utils/misc/guc_tables.c:4840 +#: utils/misc/guc_tables.c:4849 msgid "Multiple groups can be specified using a colon-separated list." msgstr "Multipla grupper kan anges med en kolonseparerad lista." -#: utils/misc/guc_tables.c:4854 +#: utils/misc/guc_tables.c:4863 msgid "Location of the SSL DH parameters file." msgstr "Plats för SSL DH-parameterfil." -#: utils/misc/guc_tables.c:4855 +#: utils/misc/guc_tables.c:4864 msgid "An empty string means use compiled-in default parameters." msgstr "En tom sträng betyder att inkompilerade defaultvärden används." -#: utils/misc/guc_tables.c:4865 +#: utils/misc/guc_tables.c:4874 msgid "Command to obtain passphrases for SSL." msgstr "Kommando för att hämta lösenfraser för SSL." -#: utils/misc/guc_tables.c:4866 +#: utils/misc/guc_tables.c:4875 msgid "An empty string means use the built-in prompting mechanism." msgstr "En tom sträng betyder att inbyggd befordransmekanism används." -#: utils/misc/guc_tables.c:4876 +#: utils/misc/guc_tables.c:4885 msgid "Sets the application name to be reported in statistics and logs." msgstr "Sätter applikationsnamn som rapporteras i statistik och loggar." -#: utils/misc/guc_tables.c:4887 +#: utils/misc/guc_tables.c:4896 msgid "Sets the name of the cluster, which is included in the process title." msgstr "Sätter namnet på klustret som inkluderas i processtiteln." -#: utils/misc/guc_tables.c:4898 +#: utils/misc/guc_tables.c:4907 msgid "Sets the WAL resource managers for which WAL consistency checks are done." msgstr "Sätter WAL-resurshanterare som WAL-konsistenskontoller görs med." -#: utils/misc/guc_tables.c:4899 +#: utils/misc/guc_tables.c:4908 msgid "Full-page images will be logged for all data blocks and cross-checked against the results of WAL replay." msgstr "Hela sidkopior kommer loggas för alla datablock och kontrolleras mot resultatet av en WAL-uppspelning." -#: utils/misc/guc_tables.c:4909 +#: utils/misc/guc_tables.c:4918 msgid "JIT provider to use." msgstr "JIT-leverantör som används." -#: utils/misc/guc_tables.c:4920 +#: utils/misc/guc_tables.c:4929 msgid "Log backtrace for errors in these functions." msgstr "Loggar backtrace vid fel i dessa funktioner." -#: utils/misc/guc_tables.c:4931 +#: utils/misc/guc_tables.c:4940 msgid "Use direct I/O for file access." msgstr "Använd direct-I/O för filaccess." -#: utils/misc/guc_tables.c:4932 +#: utils/misc/guc_tables.c:4941 msgid "An empty string disables direct I/O." msgstr "En tom sträng stänger av direkt I/O." -#: utils/misc/guc_tables.c:4942 +#: utils/misc/guc_tables.c:4951 msgid "Lists streaming replication standby server replication slot names that logical WAL sender processes will wait for." msgstr "Listar replikeringsslotnamn på server för replikering-standby som processen för skickande av logisk WAL väntar på." -#: utils/misc/guc_tables.c:4944 +#: utils/misc/guc_tables.c:4953 msgid "Logical WAL sender processes will send decoded changes to output plugins only after the specified replication slots have confirmed receiving WAL." msgstr "Processen för skickande av logisk WAL skickar avkodade ändringar till utdata-plugin:er enbart efter att de angivna replikeringsslottarna bekräftat att de tagit emot WAL." -#: utils/misc/guc_tables.c:4956 +#: utils/misc/guc_tables.c:4965 msgid "Prohibits access to non-system relations of specified kinds." msgstr "Förhindrar access till icke-system-relationer av angivna sorter." -#: utils/misc/guc_tables.c:4967 +#: utils/misc/guc_tables.c:4976 msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." msgstr "Listar bibliotek som kan anropas för att validera OAuth v2 bärande token." -#: utils/misc/guc_tables.c:4978 +#: utils/misc/guc_tables.c:4987 msgid "Logs specified aspects of connection establishment and setup." msgstr "Loggar angivna egenskaper om anslutningar och uppsättning." -#: utils/misc/guc_tables.c:4999 +#: utils/misc/guc_tables.c:5008 msgid "Sets whether \"\\'\" is allowed in string literals." msgstr "Anger hurvida \"\\'\" tillåts i sträng-literaler." -#: utils/misc/guc_tables.c:5009 +#: utils/misc/guc_tables.c:5018 msgid "Sets the output format for bytea." msgstr "Ställer in output-format för bytea." -#: utils/misc/guc_tables.c:5019 +#: utils/misc/guc_tables.c:5028 msgid "Sets the message levels that are sent to the client." msgstr "Ställer in meddelandenivåer som skickas till klienten." -#: utils/misc/guc_tables.c:5020 utils/misc/guc_tables.c:5116 -#: utils/misc/guc_tables.c:5127 +#: utils/misc/guc_tables.c:5029 utils/misc/guc_tables.c:5125 +#: utils/misc/guc_tables.c:5136 msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent." msgstr "Varje nivå inkluderar de efterföljande nivåerna. Ju senare nivå destå färre meddlanden skickas." -#: utils/misc/guc_tables.c:5030 +#: utils/misc/guc_tables.c:5039 msgid "Enables in-core computation of query identifiers." msgstr "Slår på intern uträkning av identifierare för frågor." -#: utils/misc/guc_tables.c:5040 +#: utils/misc/guc_tables.c:5049 msgid "Enables the planner to use constraints to optimize queries." msgstr "Slår på planerarens användning av integritetsvillkor för att optimera frågor." -#: utils/misc/guc_tables.c:5041 +#: utils/misc/guc_tables.c:5050 msgid "Table scans will be skipped if their constraints guarantee that no rows match the query." msgstr "Tabellskanningar kommer hoppas över om dess integritetsvillkor garanterar att inga rader komma matchas av frågan." -#: utils/misc/guc_tables.c:5052 +#: utils/misc/guc_tables.c:5061 msgid "Sets the default compression method for compressible values." msgstr "Ställer in standard komprimeringsmetod för komprimeringsbara värden." -#: utils/misc/guc_tables.c:5063 +#: utils/misc/guc_tables.c:5072 msgid "Sets the transaction isolation level of each new transaction." msgstr "Ställer in isolationsnivån för nya transaktioner." -#: utils/misc/guc_tables.c:5073 +#: utils/misc/guc_tables.c:5082 msgid "Sets the current transaction's isolation level." msgstr "Sätter den aktuella transaktionsisolationsnivån." -#: utils/misc/guc_tables.c:5084 +#: utils/misc/guc_tables.c:5093 msgid "Sets the display format for interval values." msgstr "Ställer in visningsformat för intervallvärden." -#: utils/misc/guc_tables.c:5095 +#: utils/misc/guc_tables.c:5104 msgid "Log level for reporting invalid ICU locale strings." msgstr "Loggnivå för rapportering av ogiltiga ICU-lokalsträngar." -#: utils/misc/guc_tables.c:5105 +#: utils/misc/guc_tables.c:5114 msgid "Sets the verbosity of logged messages." msgstr "Ställer in pratighet för loggade meddelanden." -#: utils/misc/guc_tables.c:5115 +#: utils/misc/guc_tables.c:5124 msgid "Sets the message levels that are logged." msgstr "Ställer in meddelandenivåer som loggas." -#: utils/misc/guc_tables.c:5126 +#: utils/misc/guc_tables.c:5135 msgid "Causes all statements generating error at or above this level to be logged." msgstr "Gör att alla satser som genererar fel vid eller över denna nivå kommer loggas." -#: utils/misc/guc_tables.c:5137 +#: utils/misc/guc_tables.c:5146 msgid "Sets the type of statements logged." msgstr "Ställer in vilken sorts satser som loggas." -#: utils/misc/guc_tables.c:5147 +#: utils/misc/guc_tables.c:5156 msgid "Sets the syslog \"facility\" to be used when syslog enabled." msgstr "Ställer in syslog-\"facility\" som används när syslog är påslagen." -#: utils/misc/guc_tables.c:5158 +#: utils/misc/guc_tables.c:5167 msgid "Sets the session's behavior for triggers and rewrite rules." msgstr "Sätter sessionens beteende för triggrar och omskrivningsregler." -#: utils/misc/guc_tables.c:5168 +#: utils/misc/guc_tables.c:5177 msgid "Sets the current transaction's synchronization level." msgstr "Ställer in den nuvarande transaktionens synkroniseringsnivå." -#: utils/misc/guc_tables.c:5178 +#: utils/misc/guc_tables.c:5187 msgid "Allows archiving of WAL files using \"archive_command\"." msgstr "Tillåter arkivering av WAL-filer med hjälp av \"archive_command\"." -#: utils/misc/guc_tables.c:5188 +#: utils/misc/guc_tables.c:5197 msgid "Sets the action to perform upon reaching the recovery target." msgstr "Sätter handling som skall utföras när återställningsmål nås." -#: utils/misc/guc_tables.c:5198 +#: utils/misc/guc_tables.c:5207 msgid "Collects function-level statistics on database activity." msgstr "Samlar in statistik på funktionsnivå över databasaktivitet." -#: utils/misc/guc_tables.c:5209 +#: utils/misc/guc_tables.c:5218 msgid "Sets the consistency of accesses to statistics data." msgstr "Sätter konsistensinställning för accesser av statistikdata." -#: utils/misc/guc_tables.c:5219 +#: utils/misc/guc_tables.c:5228 msgid "Compresses full-page writes written in WAL file with specified method." msgstr "Komprimerar skrivning av hela sidor i WAL-filen med angiven metod." -#: utils/misc/guc_tables.c:5229 +#: utils/misc/guc_tables.c:5238 msgid "Sets the level of information written to the WAL." msgstr "Ställer in mängden information som skrivs till WAL." -#: utils/misc/guc_tables.c:5239 +#: utils/misc/guc_tables.c:5248 msgid "Selects the dynamic shared memory implementation used." msgstr "Väljer implementation som används för dynamiskt delat minne." -#: utils/misc/guc_tables.c:5249 +#: utils/misc/guc_tables.c:5258 msgid "Selects the shared memory implementation used for the main shared memory region." msgstr "Väljer implementation för delat minne som används för det delade minnets huvudregionen." -#: utils/misc/guc_tables.c:5259 +#: utils/misc/guc_tables.c:5268 msgid "Selects the file copy method." msgstr "Väljer metod för att kopiera filer." -#: utils/misc/guc_tables.c:5269 +#: utils/misc/guc_tables.c:5278 +msgid "Selects the method used for extending data files." +msgstr "Väljer metod för att utöka datafiler." + +#: utils/misc/guc_tables.c:5288 msgid "Selects the method used for forcing WAL updates to disk." msgstr "Väljer metod för att tvinga WAL-uppdateringar till disk." -#: utils/misc/guc_tables.c:5279 +#: utils/misc/guc_tables.c:5298 msgid "Sets how binary values are to be encoded in XML." msgstr "Ställer in hur binära värden kodas i XML." -#: utils/misc/guc_tables.c:5289 +#: utils/misc/guc_tables.c:5308 msgid "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments." msgstr "Anger hurvida XML-data vid implicit parsning och serialiseringsoperationer ses som dokument eller innehållsfragment." -#: utils/misc/guc_tables.c:5300 +#: utils/misc/guc_tables.c:5319 msgid "Use of huge pages on Linux or Windows." msgstr "Använd stora sidor på Linux resp. Windows." -#: utils/misc/guc_tables.c:5310 +#: utils/misc/guc_tables.c:5329 msgid "Indicates the status of huge pages." msgstr "Visas status för stora sidor." -#: utils/misc/guc_tables.c:5321 +#: utils/misc/guc_tables.c:5340 msgid "Prefetch referenced blocks during recovery." msgstr "Prefetch:a refererade block vid återställning." -#: utils/misc/guc_tables.c:5322 +#: utils/misc/guc_tables.c:5341 msgid "Look ahead in the WAL to find references to uncached data." msgstr "Sök framåt i WAL för att hitta referenser till icke cache:ad data." -#: utils/misc/guc_tables.c:5331 +#: utils/misc/guc_tables.c:5350 msgid "Forces the planner's use parallel query nodes." msgstr "Tvingar planeraren att använda parallella frågenoder." -#: utils/misc/guc_tables.c:5332 +#: utils/misc/guc_tables.c:5351 msgid "This can be useful for testing the parallel query infrastructure by forcing the planner to generate plans that contain nodes that perform tuple communication between workers and the main process." msgstr "Detta är användbart för att testa infrastrukturen för parallella frågor genom att tvinga planeraren att generera planer som innehåller noder som skickar tupler mellan arbetare och huvudprocessen." -#: utils/misc/guc_tables.c:5344 +#: utils/misc/guc_tables.c:5363 msgid "Chooses the algorithm for encrypting passwords." msgstr "Väljer algoritm för att kryptera lösenord." -#: utils/misc/guc_tables.c:5354 +#: utils/misc/guc_tables.c:5373 msgid "Controls the planner's selection of custom or generic plan." msgstr "Styr planerarens användning av egendefinierad eller generell plan." -#: utils/misc/guc_tables.c:5355 +#: utils/misc/guc_tables.c:5374 msgid "Prepared statements can have custom and generic plans, and the planner will attempt to choose which is better. This can be set to override the default behavior." msgstr "Preparerade satser kan ha egendefinierade och generella planer och planeraren kommer försöka välja den som är bäst. Detta kan anges att övertrumfa standardbeteendet." -#: utils/misc/guc_tables.c:5367 +#: utils/misc/guc_tables.c:5386 msgid "Sets the minimum SSL/TLS protocol version to use." msgstr "Sätter minsta SSL/TLS-protokollversion som skall användas." -#: utils/misc/guc_tables.c:5379 +#: utils/misc/guc_tables.c:5398 msgid "Sets the maximum SSL/TLS protocol version to use." msgstr "Sätter högsta SSL/TLS-protokollversion som skall användas." -#: utils/misc/guc_tables.c:5391 +#: utils/misc/guc_tables.c:5410 msgid "Sets the method for synchronizing the data directory before crash recovery." msgstr "Ställer in metoden för att synkronisera datakatalogen innan kraschåterställning." -#: utils/misc/guc_tables.c:5400 +#: utils/misc/guc_tables.c:5419 msgid "Forces immediate streaming or serialization of changes in large transactions." msgstr "Tvingar omedelbar strömning eller serialisering av ändringar i stora transaktioner." -#: utils/misc/guc_tables.c:5401 +#: utils/misc/guc_tables.c:5420 msgid "On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction." msgstr "På publiceringssidan så tillåter detta strömning eller serialisering av varje ändring i den logiska kodningen. På prenumerationsstidan så tillåter det serialisering av alla ändringar till filer samt notifiering till den parallella appliceraren att läsa in och applicera dem i slutet av transaktionen." -#: utils/misc/guc_tables.c:5413 +#: utils/misc/guc_tables.c:5432 msgid "Selects the method for executing asynchronous I/O." msgstr "Väljer metod för att köra asynkron I/O." @@ -32470,12 +32483,12 @@ msgstr "Misslyckades vid skapande av minneskontext \"%s\"." msgid "could not attach to dynamic shared area" msgstr "kunde inte ansluta till dynamisk delad area" -#: utils/mmgr/mcxt.c:1160 +#: utils/mmgr/mcxt.c:1163 #, c-format msgid "Failed on request of size %zu in memory context \"%s\"." msgstr "Misslyckades med förfrågan av storlek %zu i minneskontext \"%s\"." -#: utils/mmgr/mcxt.c:1304 +#: utils/mmgr/mcxt.c:1319 #, c-format msgid "logging memory contexts of PID %d" msgstr "loggar minneskontext för PID %d" @@ -32520,12 +32533,12 @@ msgstr "kan inte utföra transaktionskommandon i en markörloop som inte är rea msgid "could not seek to block % of temporary file" msgstr "kunde inte söka (seek) till block % i temporärfil" -#: utils/sort/sharedtuplestore.c:466 +#: utils/sort/sharedtuplestore.c:467 #, c-format msgid "unexpected chunk in shared tuplestore temporary file" msgstr "oväntad chunk i delad temporär lagringsfil för tupler" -#: utils/sort/sharedtuplestore.c:548 +#: utils/sort/sharedtuplestore.c:549 #, c-format msgid "could not seek to block %u in shared tuplestore temporary file" msgstr "kunde inte söka (seek) till block %u i delad temporär lagringsfil för tupler" @@ -32535,17 +32548,17 @@ msgstr "kunde inte söka (seek) till block %u i delad temporär lagringsfil för msgid "cannot have more than %d runs for an external sort" msgstr "kan inte ha mer än %d körningar för en extern sortering" -#: utils/sort/tuplesortvariants.c:1671 +#: utils/sort/tuplesortvariants.c:1688 #, c-format msgid "could not create unique index \"%s\"" msgstr "kunde inte skapa unikt index \"%s\"" -#: utils/sort/tuplesortvariants.c:1673 +#: utils/sort/tuplesortvariants.c:1690 #, c-format msgid "Key %s is duplicated." msgstr "Nyckeln %s är duplicerad." -#: utils/sort/tuplesortvariants.c:1674 +#: utils/sort/tuplesortvariants.c:1691 #, c-format msgid "Duplicate keys exist." msgstr "Duplicerade nycklar existerar." diff --git a/src/backend/po/uk.po b/src/backend/po/uk.po index 6c4c0add9ee..c2209a365a0 100644 --- a/src/backend/po/uk.po +++ b/src/backend/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-23 10:41+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:11+0000\n" +"PO-Revision-Date: 2026-01-03 10:11\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,8 +14,8 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/postgres.pot\n" -"X-Crowdin-File-ID: 988\n" +"X-Crowdin-File: /REL_18_STABLE/postgres.pot\n" +"X-Crowdin-File-ID: 1051\n" #: ../common/binaryheap.c:121 ../common/binaryheap.c:159 #, c-format @@ -80,34 +80,34 @@ msgid "not recorded" msgstr "не записано" #: ../common/controldata_utils.c:93 ../common/controldata_utils.c:97 -#: commands/copyfrom.c:1739 commands/extension.c:3538 utils/adt/genfile.c:123 -#: utils/time/snapmgr.c:1430 +#: commands/copyfrom.c:1879 commands/extension.c:3831 utils/adt/genfile.c:123 +#: utils/time/snapmgr.c:1448 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "не вдалося відкрити файл \"%s\" для читання: %m" #: ../common/controldata_utils.c:108 ../common/controldata_utils.c:110 #: access/transam/timeline.c:143 access/transam/timeline.c:362 -#: access/transam/twophase.c:1369 access/transam/xlog.c:3476 -#: access/transam/xlog.c:4340 access/transam/xlogrecovery.c:1238 -#: access/transam/xlogrecovery.c:1336 access/transam/xlogrecovery.c:1373 -#: access/transam/xlogrecovery.c:1440 backup/basebackup.c:2123 -#: backup/walsummary.c:283 commands/extension.c:3548 libpq/hba.c:764 -#: replication/logical/origin.c:745 replication/logical/origin.c:781 -#: replication/logical/reorderbuffer.c:5108 -#: replication/logical/snapbuild.c:2052 replication/slot.c:2236 -#: replication/slot.c:2277 replication/walsender.c:655 -#: storage/file/buffile.c:470 storage/file/copydir.c:185 +#: access/transam/twophase.c:1353 access/transam/xlog.c:3479 +#: access/transam/xlog.c:4370 access/transam/xlogrecovery.c:1257 +#: access/transam/xlogrecovery.c:1355 access/transam/xlogrecovery.c:1392 +#: access/transam/xlogrecovery.c:1459 backup/basebackup.c:2128 +#: backup/walsummary.c:283 commands/extension.c:3841 libpq/hba.c:769 +#: replication/logical/origin.c:768 replication/logical/origin.c:804 +#: replication/logical/reorderbuffer.c:5366 +#: replication/logical/snapbuild.c:1951 replication/slot.c:2542 +#: replication/slot.c:2583 replication/walsender.c:643 +#: storage/file/buffile.c:470 storage/file/copydir.c:201 #: utils/adt/genfile.c:197 utils/adt/misc.c:1028 utils/cache/relmapper.c:829 #, c-format msgid "could not read file \"%s\": %m" msgstr "не вдалося прочитати файл \"%s\": %m" #: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 -#: access/transam/xlog.c:3481 access/transam/xlog.c:4345 -#: replication/logical/origin.c:750 replication/logical/origin.c:789 -#: replication/logical/snapbuild.c:2057 replication/slot.c:2240 -#: replication/slot.c:2281 replication/walsender.c:660 +#: access/transam/xlog.c:3484 access/transam/xlog.c:4375 +#: replication/logical/origin.c:773 replication/logical/origin.c:812 +#: replication/logical/snapbuild.c:1956 replication/slot.c:2546 +#: replication/slot.c:2587 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -117,18 +117,19 @@ msgstr "не вдалося прочитати файл \"%s\": прочитан #: ../common/controldata_utils.c:277 ../common/controldata_utils.c:280 #: access/heap/rewriteheap.c:1141 access/heap/rewriteheap.c:1246 #: access/transam/timeline.c:392 access/transam/timeline.c:438 -#: access/transam/timeline.c:512 access/transam/twophase.c:1381 -#: access/transam/twophase.c:1793 access/transam/xlog.c:3322 -#: access/transam/xlog.c:3516 access/transam/xlog.c:3521 -#: access/transam/xlog.c:3657 access/transam/xlog.c:4310 -#: access/transam/xlog.c:5245 commands/copyfrom.c:1799 commands/copyto.c:325 -#: libpq/be-fsstubs.c:470 libpq/be-fsstubs.c:540 -#: replication/logical/origin.c:683 replication/logical/origin.c:822 -#: replication/logical/reorderbuffer.c:5160 -#: replication/logical/snapbuild.c:1819 replication/logical/snapbuild.c:1943 -#: replication/slot.c:2126 replication/slot.c:2288 replication/walsender.c:670 -#: storage/file/copydir.c:208 storage/file/copydir.c:213 storage/file/fd.c:828 -#: storage/file/fd.c:3753 storage/file/fd.c:3859 utils/cache/relmapper.c:841 +#: access/transam/timeline.c:512 access/transam/twophase.c:1365 +#: access/transam/twophase.c:1783 access/transam/xlog.c:3325 +#: access/transam/xlog.c:3519 access/transam/xlog.c:3524 +#: access/transam/xlog.c:3660 access/transam/xlog.c:4340 +#: access/transam/xlog.c:5312 commands/copyfrom.c:1929 commands/copyto.c:598 +#: libpq/be-fsstubs.c:475 libpq/be-fsstubs.c:545 +#: replication/logical/origin.c:706 replication/logical/origin.c:845 +#: replication/logical/reorderbuffer.c:5418 +#: replication/logical/snapbuild.c:1696 replication/logical/snapbuild.c:1822 +#: replication/slot.c:2428 replication/slot.c:2594 replication/walsender.c:658 +#: storage/file/copydir.c:224 storage/file/copydir.c:229 +#: storage/file/copydir.c:284 storage/file/copydir.c:289 storage/file/fd.c:825 +#: storage/file/fd.c:3815 storage/file/fd.c:3921 utils/cache/relmapper.c:841 #: utils/cache/relmapper.c:956 #, c-format msgid "could not close file \"%s\": %m" @@ -148,105 +149,107 @@ msgstr "можлива помилка у послідовності байтів "Порядок байтів, що використовують для зберігання файлу pg_control, може не відповідати тому, який використовується цією програмою. У такому випадку результати нижче будуть неправильним, і інсталяція PostgreSQL буде несумісною з цим каталогом даних." #: ../common/controldata_utils.c:225 ../common/controldata_utils.c:230 -#: ../common/file_utils.c:70 ../common/file_utils.c:347 -#: ../common/file_utils.c:406 ../common/file_utils.c:480 +#: ../common/file_utils.c:69 ../common/file_utils.c:370 +#: ../common/file_utils.c:428 ../common/file_utils.c:502 #: access/heap/rewriteheap.c:1229 access/transam/timeline.c:111 #: access/transam/timeline.c:251 access/transam/timeline.c:348 -#: access/transam/twophase.c:1325 access/transam/xlog.c:3229 -#: access/transam/xlog.c:3392 access/transam/xlog.c:3431 -#: access/transam/xlog.c:3624 access/transam/xlog.c:4330 -#: access/transam/xlogrecovery.c:4263 access/transam/xlogrecovery.c:4366 -#: access/transam/xlogutils.c:836 backup/basebackup.c:547 -#: backup/basebackup.c:1598 backup/walsummary.c:220 libpq/hba.c:624 -#: postmaster/syslogger.c:1511 replication/logical/origin.c:735 -#: replication/logical/reorderbuffer.c:3761 -#: replication/logical/reorderbuffer.c:4315 -#: replication/logical/reorderbuffer.c:5088 -#: replication/logical/snapbuild.c:1774 replication/logical/snapbuild.c:1884 -#: replication/slot.c:2208 replication/walsender.c:628 -#: replication/walsender.c:3051 storage/file/copydir.c:151 -#: storage/file/fd.c:803 storage/file/fd.c:3510 storage/file/fd.c:3740 -#: storage/file/fd.c:3830 storage/smgr/md.c:661 utils/cache/relmapper.c:818 -#: utils/cache/relmapper.c:935 utils/error/elog.c:2124 -#: utils/init/miscinit.c:1526 utils/init/miscinit.c:1660 -#: utils/init/miscinit.c:1737 utils/misc/guc.c:4736 utils/misc/guc.c:4786 +#: access/transam/twophase.c:1309 access/transam/xlog.c:3215 +#: access/transam/xlog.c:3395 access/transam/xlog.c:3434 +#: access/transam/xlog.c:3627 access/transam/xlog.c:4360 +#: access/transam/xlogrecovery.c:4307 access/transam/xlogrecovery.c:4408 +#: access/transam/xlogutils.c:825 backup/basebackup.c:549 +#: backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 +#: postmaster/syslogger.c:1512 replication/logical/origin.c:758 +#: replication/logical/reorderbuffer.c:4019 +#: replication/logical/reorderbuffer.c:4573 +#: replication/logical/reorderbuffer.c:5346 +#: replication/logical/snapbuild.c:1651 replication/logical/snapbuild.c:1763 +#: replication/slot.c:2514 replication/walsender.c:616 +#: replication/walsender.c:3094 storage/file/copydir.c:167 +#: storage/file/copydir.c:255 storage/file/fd.c:800 storage/file/fd.c:3572 +#: storage/file/fd.c:3802 storage/file/fd.c:3892 storage/smgr/md.c:675 +#: utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 +#: utils/error/elog.c:2132 utils/init/miscinit.c:1586 +#: utils/init/miscinit.c:1720 utils/init/miscinit.c:1797 utils/misc/guc.c:4779 +#: utils/misc/guc.c:4829 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" #: ../common/controldata_utils.c:246 ../common/controldata_utils.c:249 -#: access/transam/twophase.c:1766 access/transam/twophase.c:1775 -#: access/transam/xlog.c:9255 access/transam/xlogfuncs.c:698 +#: access/transam/twophase.c:1756 access/transam/twophase.c:1765 +#: access/transam/xlog.c:9338 access/transam/xlogfuncs.c:699 #: backup/basebackup_server.c:173 backup/basebackup_server.c:266 -#: backup/walsummary.c:304 postmaster/postmaster.c:4125 -#: postmaster/syslogger.c:1522 postmaster/syslogger.c:1535 -#: postmaster/syslogger.c:1548 utils/cache/relmapper.c:947 +#: backup/walsummary.c:304 postmaster/postmaster.c:4105 +#: postmaster/syslogger.c:1523 postmaster/syslogger.c:1536 +#: postmaster/syslogger.c:1549 utils/cache/relmapper.c:947 #, c-format msgid "could not write file \"%s\": %m" msgstr "не вдалося записати файл \"%s\": %m" #: ../common/controldata_utils.c:263 ../common/controldata_utils.c:268 -#: ../common/file_utils.c:418 ../common/file_utils.c:488 +#: ../common/file_utils.c:440 ../common/file_utils.c:510 #: access/heap/rewriteheap.c:925 access/heap/rewriteheap.c:1135 #: access/heap/rewriteheap.c:1240 access/transam/timeline.c:432 -#: access/transam/timeline.c:506 access/transam/twophase.c:1787 -#: access/transam/xlog.c:3315 access/transam/xlog.c:3510 -#: access/transam/xlog.c:4303 access/transam/xlog.c:8630 -#: access/transam/xlog.c:8675 backup/basebackup_server.c:207 -#: commands/dbcommands.c:514 replication/logical/snapbuild.c:1812 -#: replication/slot.c:2112 replication/slot.c:2218 storage/file/fd.c:820 -#: storage/file/fd.c:3851 storage/smgr/md.c:1329 storage/smgr/md.c:1374 -#: storage/sync/sync.c:446 utils/misc/guc.c:4489 +#: access/transam/timeline.c:506 access/transam/twophase.c:1777 +#: access/transam/xlog.c:3315 access/transam/xlog.c:3513 +#: access/transam/xlog.c:4333 access/transam/xlog.c:8724 +#: access/transam/xlog.c:8768 backup/basebackup_server.c:207 +#: commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 +#: replication/slot.c:2412 replication/slot.c:2524 storage/file/fd.c:817 +#: storage/file/fd.c:3913 storage/smgr/md.c:1455 storage/smgr/md.c:1515 +#: storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" #: ../common/cryptohash.c:261 ../common/cryptohash_openssl.c:158 -#: ../common/cryptohash_openssl.c:356 ../common/exec.c:562 ../common/exec.c:607 -#: ../common/exec.c:699 ../common/hmac.c:309 ../common/hmac.c:325 -#: ../common/hmac_openssl.c:160 ../common/hmac_openssl.c:357 -#: ../common/md5_common.c:156 ../common/parse_manifest.c:157 -#: ../common/parse_manifest.c:853 ../common/psprintf.c:143 -#: ../common/scram-common.c:269 ../common/stringinfo.c:314 ../port/path.c:751 -#: ../port/path.c:788 ../port/path.c:805 access/transam/twophase.c:1434 -#: access/transam/xlogrecovery.c:564 lib/dshash.c:253 libpq/auth.c:1352 -#: libpq/auth.c:1396 libpq/auth.c:1953 libpq/be-secure-gssapi.c:524 -#: postmaster/bgworker.c:355 postmaster/bgworker.c:945 -#: postmaster/postmaster.c:3559 postmaster/postmaster.c:4019 -#: postmaster/postmaster.c:4381 postmaster/walsummarizer.c:935 -#: replication/libpqwalreceiver/libpqwalreceiver.c:387 -#: replication/logical/logical.c:210 replication/walsender.c:835 -#: storage/buffer/localbuf.c:606 storage/file/fd.c:912 storage/file/fd.c:1443 -#: storage/file/fd.c:1604 storage/file/fd.c:2531 storage/ipc/procarray.c:1465 -#: storage/ipc/procarray.c:2219 storage/ipc/procarray.c:2226 -#: storage/ipc/procarray.c:2731 storage/ipc/procarray.c:3435 -#: utils/adt/formatting.c:1725 utils/adt/formatting.c:1873 -#: utils/adt/formatting.c:2075 utils/adt/pg_locale.c:509 -#: utils/adt/pg_locale.c:673 utils/fmgr/dfmgr.c:229 utils/hash/dynahash.c:516 -#: utils/hash/dynahash.c:616 utils/hash/dynahash.c:1099 utils/mb/mbutils.c:401 -#: utils/mb/mbutils.c:429 utils/mb/mbutils.c:814 utils/mb/mbutils.c:841 -#: utils/misc/guc.c:649 utils/misc/guc.c:674 utils/misc/guc.c:1062 -#: utils/misc/guc.c:4467 utils/misc/tzparser.c:477 utils/mmgr/aset.c:451 -#: utils/mmgr/bump.c:183 utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 -#: utils/mmgr/dsa.c:810 utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1154 -#: utils/mmgr/slab.c:370 +#: ../common/cryptohash_openssl.c:356 ../common/exec.c:543 ../common/exec.c:588 +#: ../common/exec.c:680 ../common/hmac.c:309 ../common/hmac.c:325 +#: ../common/hmac_openssl.c:151 ../common/hmac_openssl.c:339 +#: ../common/jsonapi.c:2410 ../common/md5_common.c:156 +#: ../common/parse_manifest.c:157 ../common/parse_manifest.c:852 +#: ../common/psprintf.c:140 ../common/scram-common.c:268 ../port/path.c:829 +#: ../port/path.c:866 ../port/path.c:883 access/transam/twophase.c:1418 +#: access/transam/xlogrecovery.c:571 lib/dshash.c:253 libpq/auth.c:1353 +#: libpq/auth.c:1397 libpq/auth.c:1959 libpq/be-secure-gssapi.c:537 +#: libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 +#: postmaster/bgworker.c:1023 postmaster/postmaster.c:3575 +#: postmaster/walsummarizer.c:938 +#: replication/libpqwalreceiver/libpqwalreceiver.c:351 +#: replication/logical/logical.c:212 replication/walsender.c:825 +#: storage/buffer/localbuf.c:745 storage/file/fd.c:909 storage/file/fd.c:1444 +#: storage/file/fd.c:1605 storage/file/fd.c:2589 storage/ipc/procarray.c:1465 +#: storage/ipc/procarray.c:2217 storage/ipc/procarray.c:2224 +#: storage/ipc/procarray.c:2727 storage/ipc/procarray.c:3436 +#: utils/activity/pgstat_shmem.c:535 utils/adt/pg_locale.c:517 +#: utils/adt/pg_locale.c:591 utils/adt/pg_locale_icu.c:358 +#: utils/adt/pg_locale_libc.c:207 utils/adt/pg_locale_libc.c:302 +#: utils/adt/pg_locale_libc.c:390 utils/fmgr/dfmgr.c:234 +#: utils/hash/dynahash.c:517 utils/hash/dynahash.c:617 +#: utils/hash/dynahash.c:1100 utils/mb/mbutils.c:402 utils/mb/mbutils.c:430 +#: utils/mb/mbutils.c:815 utils/mb/mbutils.c:842 utils/misc/guc.c:647 +#: utils/misc/guc.c:672 utils/misc/guc.c:1060 utils/misc/guc.c:4505 +#: utils/misc/tzparser.c:479 utils/mmgr/aset.c:451 utils/mmgr/bump.c:183 +#: utils/mmgr/dsa.c:707 utils/mmgr/dsa.c:729 utils/mmgr/dsa.c:810 +#: utils/mmgr/generation.c:215 utils/mmgr/mcxt.c:1162 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "недостатньо пам'яті" #: ../common/cryptohash.c:266 ../common/cryptohash.c:272 #: ../common/cryptohash_openssl.c:368 ../common/cryptohash_openssl.c:376 -#: ../common/hmac.c:321 ../common/hmac.c:329 ../common/hmac_openssl.c:369 -#: ../common/hmac_openssl.c:377 +#: ../common/hmac.c:321 ../common/hmac.c:329 ../common/hmac_openssl.c:351 +#: ../common/hmac_openssl.c:359 msgid "success" msgstr "успіх" #: ../common/cryptohash.c:268 ../common/cryptohash_openssl.c:370 -#: ../common/hmac_openssl.c:371 +#: ../common/hmac_openssl.c:353 msgid "destination buffer too small" msgstr "буфер призначення занадто малий" -#: ../common/cryptohash_openssl.c:372 ../common/hmac_openssl.c:373 +#: ../common/cryptohash_openssl.c:372 ../common/hmac_openssl.c:355 msgid "OpenSSL failure" msgstr "Помилка OpenSSL" @@ -270,34 +273,34 @@ msgstr "неможливо знайти \"%s\" для виконання" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "не вдалося знайти абсолютний шлях \"%s\": %m" -#: ../common/exec.c:382 commands/collationcmds.c:876 commands/copyfrom.c:1723 -#: commands/copyto.c:650 libpq/be-secure-common.c:59 +#: ../common/exec.c:363 commands/collationcmds.c:872 commands/copyfrom.c:1863 +#: commands/copyto.c:933 libpq/be-secure-common.c:59 #, c-format msgid "could not execute command \"%s\": %m" msgstr "не вдалося виконати команду \"%s\": %m" -#: ../common/exec.c:394 libpq/be-secure-common.c:71 +#: ../common/exec.c:375 libpq/be-secure-common.c:71 #, c-format msgid "could not read from command \"%s\": %m" msgstr "не вдалося прочитати висновок команди \"%s\": %m" -#: ../common/exec.c:397 +#: ../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "команда \"%s\" не повернула жодних даних" -#: ../common/exec.c:424 libpq/pqcomm.c:192 storage/ipc/latch.c:1169 -#: storage/ipc/latch.c:1349 storage/ipc/latch.c:1582 storage/ipc/latch.c:1744 -#: storage/ipc/latch.c:1870 +#: ../common/exec.c:405 libpq/pqcomm.c:193 storage/ipc/waiteventset.c:783 +#: storage/ipc/waiteventset.c:963 storage/ipc/waiteventset.c:1203 +#: storage/ipc/waiteventset.c:1365 storage/ipc/waiteventset.c:1491 #, c-format msgid "%s() failed: %m" msgstr "%s() помилка: %m" #: ../common/fe_memutils.c:35 ../common/fe_memutils.c:75 #: ../common/fe_memutils.c:98 ../common/fe_memutils.c:161 -#: ../common/psprintf.c:145 ../port/path.c:753 ../port/path.c:790 -#: ../port/path.c:807 utils/misc/ps_status.c:193 utils/misc/ps_status.c:201 -#: utils/misc/ps_status.c:228 utils/misc/ps_status.c:236 +#: ../common/psprintf.c:142 ../port/path.c:831 ../port/path.c:868 +#: ../port/path.c:885 utils/misc/ps_status.c:195 utils/misc/ps_status.c:203 +#: utils/misc/ps_status.c:230 utils/misc/ps_status.c:238 #, c-format msgid "out of memory\n" msgstr "недостатньо пам'яті\n" @@ -307,51 +310,51 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../common/file_utils.c:76 storage/file/fd.c:3516 +#: ../common/file_utils.c:75 storage/file/fd.c:3578 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../common/file_utils.c:120 ../common/file_utils.c:566 -#: ../common/file_utils.c:570 access/transam/twophase.c:1337 +#: ../common/file_utils.c:123 ../common/file_utils.c:588 +#: ../common/file_utils.c:592 access/transam/twophase.c:1321 #: access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:235 -#: backup/basebackup.c:355 backup/basebackup.c:553 backup/basebackup.c:624 -#: backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1749 -#: commands/copyto.c:696 commands/extension.c:3527 commands/tablespace.c:804 -#: commands/tablespace.c:893 postmaster/pgarch.c:680 -#: replication/logical/snapbuild.c:1670 replication/logical/snapbuild.c:2173 -#: storage/file/fd.c:1968 storage/file/fd.c:2054 storage/file/fd.c:3564 -#: utils/adt/dbsize.c:105 utils/adt/dbsize.c:257 utils/adt/dbsize.c:337 +#: backup/basebackup.c:357 backup/basebackup.c:555 backup/basebackup.c:626 +#: backup/walsummary.c:247 backup/walsummary.c:254 commands/copyfrom.c:1889 +#: commands/copyto.c:979 commands/extension.c:3820 commands/tablespace.c:804 +#: commands/tablespace.c:893 postmaster/pgarch.c:682 +#: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 +#: storage/file/fd.c:1969 storage/file/fd.c:2057 storage/file/fd.c:3626 +#: utils/adt/dbsize.c:105 utils/adt/dbsize.c:266 utils/adt/dbsize.c:355 #: utils/adt/genfile.c:437 utils/adt/genfile.c:612 utils/adt/misc.c:340 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../common/file_utils.c:130 ../common/file_utils.c:227 +#: ../common/file_utils.c:133 ../common/file_utils.c:243 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../common/file_utils.c:151 ../common/file_utils.c:281 +#: ../common/file_utils.c:156 ../common/file_utils.c:304 #: ../common/pgfnames.c:48 ../common/rmtree.c:63 commands/tablespace.c:728 -#: commands/tablespace.c:738 postmaster/postmaster.c:1468 -#: storage/file/fd.c:2933 storage/file/reinit.c:126 utils/adt/misc.c:256 -#: utils/misc/tzparser.c:339 +#: commands/tablespace.c:738 postmaster/postmaster.c:1496 +#: storage/file/fd.c:2994 storage/file/reinit.c:126 utils/adt/misc.c:256 +#: utils/misc/tzparser.c:340 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../common/file_utils.c:169 ../common/file_utils.c:315 -#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:2945 +#: ../common/file_utils.c:174 ../common/file_utils.c:338 +#: ../common/pgfnames.c:69 ../common/rmtree.c:106 storage/file/fd.c:3006 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../common/file_utils.c:498 access/transam/xlogarchive.c:389 -#: postmaster/pgarch.c:834 postmaster/syslogger.c:1559 -#: replication/logical/snapbuild.c:1831 replication/slot.c:936 -#: replication/slot.c:1998 replication/slot.c:2140 storage/file/fd.c:838 -#: utils/time/snapmgr.c:1255 +#: ../common/file_utils.c:520 access/transam/xlogarchive.c:389 +#: postmaster/pgarch.c:836 postmaster/syslogger.c:1560 +#: replication/logical/snapbuild.c:1708 replication/slot.c:1023 +#: replication/slot.c:2295 replication/slot.c:2444 storage/file/fd.c:835 +#: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -360,288 +363,292 @@ msgstr "не вдалося перейменувати файл \"%s\" на \"%s msgid "internal error" msgstr "внутрішня помилка" -#: ../common/jsonapi.c:2121 +#: ../common/jsonapi.c:2435 msgid "Recursive descent parser cannot use incremental lexer." msgstr "Рекурсивний спуск не може використовувати інкрементний лексичний аналізатор." -#: ../common/jsonapi.c:2123 +#: ../common/jsonapi.c:2437 msgid "Incremental parser requires incremental lexer." msgstr "Інкрементний аналізатор потребує Інкрементний лексичний аналізатор." -#: ../common/jsonapi.c:2125 +#: ../common/jsonapi.c:2439 msgid "JSON nested too deep, maximum permitted depth is 6400." msgstr "JSON вкладений занадто глибокий, максимально дозволена глибина - 6400." -#: ../common/jsonapi.c:2127 +#: ../common/jsonapi.c:2441 #, c-format msgid "Escape sequence \"\\%.*s\" is invalid." msgstr "Неприпустима спеціальна послідовність \"\\%.*s\"." -#: ../common/jsonapi.c:2131 +#: ../common/jsonapi.c:2445 #, c-format msgid "Character with value 0x%02x must be escaped." msgstr "Символ зі значенням 0x%02x повинен бути пропущений." -#: ../common/jsonapi.c:2135 +#: ../common/jsonapi.c:2449 #, c-format msgid "Expected end of input, but found \"%.*s\"." msgstr "Очікувався кінець введення, але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2138 +#: ../common/jsonapi.c:2452 #, c-format msgid "Expected array element or \"]\", but found \"%.*s\"." msgstr "Очікувався елемент масиву або \"]\", але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2141 +#: ../common/jsonapi.c:2455 #, c-format msgid "Expected \",\" or \"]\", but found \"%.*s\"." msgstr "Очікувалось \",\" або \"]\", але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2144 +#: ../common/jsonapi.c:2458 #, c-format msgid "Expected \":\", but found \"%.*s\"." msgstr "Очікувалось \":\", але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2147 +#: ../common/jsonapi.c:2461 #, c-format msgid "Expected JSON value, but found \"%.*s\"." msgstr "Очікувалось значення JSON, але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2150 +#: ../common/jsonapi.c:2464 msgid "The input string ended unexpectedly." msgstr "Несподіваний кінець вхідного рядка." -#: ../common/jsonapi.c:2152 +#: ../common/jsonapi.c:2466 #, c-format msgid "Expected string or \"}\", but found \"%.*s\"." msgstr "Очікувався рядок або \"}\", але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2155 +#: ../common/jsonapi.c:2469 #, c-format msgid "Expected \",\" or \"}\", but found \"%.*s\"." msgstr "Очікувалось \",\" або \"}\", але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2158 +#: ../common/jsonapi.c:2472 #, c-format msgid "Expected string, but found \"%.*s\"." msgstr "Очікувався рядок, але знайдено \"%.*s\"." -#: ../common/jsonapi.c:2161 +#: ../common/jsonapi.c:2475 #, c-format msgid "Token \"%.*s\" is invalid." msgstr "Неприпустимий маркер \"%.*s\"." -#: ../common/jsonapi.c:2164 jsonpath_scan.l:608 +#: ../common/jsonapi.c:2481 jsonpath_scan.l:585 #, c-format msgid "\\u0000 cannot be converted to text." msgstr "\\u0000 не можна перетворити в текст." -#: ../common/jsonapi.c:2166 +#: ../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "За \"\\u\" повинні прямувати чотири шістнадцяткових числа." -#: ../common/jsonapi.c:2169 +#: ../common/jsonapi.c:2486 msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8." msgstr "Значення виходу Unicode не можна використовувати для значень кодових точок більше 007F, якщо кодування не UTF8." -#: ../common/jsonapi.c:2178 +#: ../common/jsonapi.c:2495 #, c-format msgid "Unicode escape value could not be translated to the server's encoding %s." msgstr "Значення символу Unicode не вдалося перекласти в кодування сервера %s." -#: ../common/jsonapi.c:2185 jsonpath_scan.l:641 +#: ../common/jsonapi.c:2502 jsonpath_scan.l:618 #, c-format msgid "Unicode high surrogate must not follow a high surrogate." msgstr "Старший сурогат Unicode не повинен прямувати за іншим старшим сурогатом." -#: ../common/jsonapi.c:2187 jsonpath_scan.l:652 jsonpath_scan.l:662 -#: jsonpath_scan.l:713 +#: ../common/jsonapi.c:2504 jsonpath_scan.l:629 jsonpath_scan.l:639 +#: jsonpath_scan.l:691 #, c-format msgid "Unicode low surrogate must follow a high surrogate." msgstr "Молодший сурогат Unicode не повинен прямувати за іншим молодшим сурогатом." -#: ../common/logging.c:276 +#: ../common/jsonapi.c:2526 +msgid "out of memory while constructing error description" +msgstr "недостатньо пам'яті під час створення опису помилки" + +#: ../common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../common/logging.c:283 +#: ../common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../common/logging.c:294 +#: ../common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../common/logging.c:301 +#: ../common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " -#: ../common/parse_manifest.c:159 ../common/parse_manifest.c:855 +#: ../common/parse_manifest.c:159 ../common/parse_manifest.c:854 #, c-format msgid "could not initialize checksum of manifest" msgstr "не вдалося ініціалізувати контрольну суму маніфесту" -#: ../common/parse_manifest.c:204 ../common/parse_manifest.c:261 +#: ../common/parse_manifest.c:203 ../common/parse_manifest.c:260 msgid "manifest ended unexpectedly" msgstr "маніфест закінчився несподівано" -#: ../common/parse_manifest.c:210 ../common/parse_manifest.c:862 +#: ../common/parse_manifest.c:209 ../common/parse_manifest.c:861 #, c-format msgid "could not update checksum of manifest" msgstr "не вдалося оновити контрольну суму маніфесту" -#: ../common/parse_manifest.c:302 +#: ../common/parse_manifest.c:301 msgid "unexpected object start" msgstr "неочікуваний початок об'єкта" -#: ../common/parse_manifest.c:337 +#: ../common/parse_manifest.c:336 msgid "unexpected object end" msgstr "неочікуваний кінець об'єкта" -#: ../common/parse_manifest.c:366 +#: ../common/parse_manifest.c:365 msgid "unexpected array start" msgstr "неочікуваний початок масиву" -#: ../common/parse_manifest.c:391 +#: ../common/parse_manifest.c:390 msgid "unexpected array end" msgstr "неочікуваний кінець масиву" -#: ../common/parse_manifest.c:418 +#: ../common/parse_manifest.c:417 msgid "expected version indicator" msgstr "індикатор очікуваної версії" -#: ../common/parse_manifest.c:454 +#: ../common/parse_manifest.c:453 msgid "unrecognized top-level field" msgstr "нерозпізнане поле верхнього рівня" -#: ../common/parse_manifest.c:473 +#: ../common/parse_manifest.c:472 msgid "unexpected file field" msgstr "неочікуване поле файлу" -#: ../common/parse_manifest.c:487 +#: ../common/parse_manifest.c:486 msgid "unexpected WAL range field" msgstr "неочікуване поле діапазону WAL" -#: ../common/parse_manifest.c:493 +#: ../common/parse_manifest.c:492 msgid "unexpected object field" msgstr "неочікуване поле об'єкта" -#: ../common/parse_manifest.c:583 +#: ../common/parse_manifest.c:582 msgid "unexpected scalar" msgstr "неочікуваний скаляр" -#: ../common/parse_manifest.c:609 +#: ../common/parse_manifest.c:608 msgid "manifest version not an integer" msgstr "версія маніфесту не ціле число" -#: ../common/parse_manifest.c:613 +#: ../common/parse_manifest.c:612 msgid "unexpected manifest version" msgstr "неочікувана версія маніфесту" -#: ../common/parse_manifest.c:637 +#: ../common/parse_manifest.c:636 msgid "system identifier in manifest not an integer" msgstr "системний ідентифікатор в маніфесті не ціле число" -#: ../common/parse_manifest.c:662 +#: ../common/parse_manifest.c:661 msgid "missing path name" msgstr "пропущено шлях" -#: ../common/parse_manifest.c:665 +#: ../common/parse_manifest.c:664 msgid "both path name and encoded path name" msgstr "і ім'я шляху, і закодований шлях" -#: ../common/parse_manifest.c:667 +#: ../common/parse_manifest.c:666 msgid "missing size" msgstr "відсутній розмір" -#: ../common/parse_manifest.c:670 +#: ../common/parse_manifest.c:669 msgid "checksum without algorithm" msgstr "контрольна сума без алгоритму" -#: ../common/parse_manifest.c:684 +#: ../common/parse_manifest.c:683 msgid "could not decode file name" msgstr "не вдалося декодувати ім'я файлу" -#: ../common/parse_manifest.c:694 +#: ../common/parse_manifest.c:693 msgid "file size is not an integer" msgstr "розмір файлу не є цілим числом" -#: ../common/parse_manifest.c:700 backup/basebackup.c:870 +#: ../common/parse_manifest.c:699 backup/basebackup.c:872 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "нерозпізнаний алгоритм контрольної суми: \"%s\"" -#: ../common/parse_manifest.c:719 +#: ../common/parse_manifest.c:718 #, c-format msgid "invalid checksum for file \"%s\": \"%s\"" msgstr "неприпустима контрольна сума для файлу \"%s\": \"%s\"" -#: ../common/parse_manifest.c:762 +#: ../common/parse_manifest.c:761 msgid "missing timeline" msgstr "відсутня часова шкала" -#: ../common/parse_manifest.c:764 +#: ../common/parse_manifest.c:763 msgid "missing start LSN" msgstr "відсутній LSN початку" -#: ../common/parse_manifest.c:766 +#: ../common/parse_manifest.c:765 msgid "missing end LSN" msgstr "відсутній LSN кінця" -#: ../common/parse_manifest.c:772 +#: ../common/parse_manifest.c:771 msgid "timeline is not an integer" msgstr "часова лінія не є цілим числом" -#: ../common/parse_manifest.c:775 +#: ../common/parse_manifest.c:774 msgid "could not parse start LSN" msgstr "не вдалося проаналізувати початковий LSN" -#: ../common/parse_manifest.c:778 +#: ../common/parse_manifest.c:777 msgid "could not parse end LSN" msgstr "не вдалося проаналізувати кінцевий LSN" -#: ../common/parse_manifest.c:843 +#: ../common/parse_manifest.c:842 msgid "expected at least 2 lines" msgstr "очікувалося принаймні 2 рядки" -#: ../common/parse_manifest.c:846 +#: ../common/parse_manifest.c:845 msgid "last line not newline-terminated" msgstr "останній рядок не завершений новим рядком" -#: ../common/parse_manifest.c:865 +#: ../common/parse_manifest.c:864 #, c-format msgid "could not finalize checksum of manifest" msgstr "не вдалося остаточно завершити контрольну суму маніфесту" -#: ../common/parse_manifest.c:869 +#: ../common/parse_manifest.c:868 #, c-format msgid "manifest has no checksum" msgstr "у маніфесті немає контрольної суми" -#: ../common/parse_manifest.c:873 +#: ../common/parse_manifest.c:872 #, c-format msgid "invalid manifest checksum: \"%s\"" msgstr "неприпустима контрольна сума маніфесту: \"%s\"" -#: ../common/parse_manifest.c:877 +#: ../common/parse_manifest.c:876 #, c-format msgid "manifest checksum mismatch" msgstr "невідповідність контрольної суми маніфесту" -#: ../common/parse_manifest.c:892 +#: ../common/parse_manifest.c:891 #, c-format msgid "could not parse backup manifest: %s" msgstr "не вдалося проаналізувати маніфест резервної копії: %s" #: ../common/percentrepl.c:79 ../common/percentrepl.c:85 #: ../common/percentrepl.c:118 ../common/percentrepl.c:124 -#: tcop/backend_startup.c:741 utils/misc/guc.c:3167 utils/misc/guc.c:3208 -#: utils/misc/guc.c:3283 utils/misc/guc.c:4671 utils/misc/guc.c:6896 -#: utils/misc/guc.c:6937 +#: tcop/backend_startup.c:769 utils/misc/guc.c:3164 utils/misc/guc.c:3205 +#: utils/misc/guc.c:3280 utils/misc/guc.c:4709 utils/misc/guc.c:6940 +#: utils/misc/guc.c:6981 #, c-format msgid "invalid value for parameter \"%s\": \"%s\"" msgstr "неприпустиме значення параметру \"%s\": \"%s\"" @@ -702,56 +709,61 @@ msgid "could not get exit code from subprocess: error code %lu" msgstr "не вдалося отримати код завершення підпроцесу: код помилки %lu" #: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 -#: access/transam/twophase.c:1726 access/transam/xlogarchive.c:119 -#: access/transam/xlogarchive.c:399 postmaster/postmaster.c:1048 -#: postmaster/syslogger.c:1488 replication/logical/origin.c:591 -#: replication/logical/reorderbuffer.c:4584 -#: replication/logical/snapbuild.c:1712 replication/logical/snapbuild.c:2146 -#: replication/slot.c:2192 storage/file/fd.c:878 storage/file/fd.c:3378 -#: storage/file/fd.c:3440 storage/file/reinit.c:261 storage/ipc/dsm.c:343 -#: storage/smgr/md.c:381 storage/smgr/md.c:440 storage/sync/sync.c:243 -#: utils/time/snapmgr.c:1591 +#: access/transam/twophase.c:1716 access/transam/xlogarchive.c:119 +#: access/transam/xlogarchive.c:399 postmaster/postmaster.c:1069 +#: postmaster/syslogger.c:1489 replication/logical/origin.c:614 +#: replication/logical/reorderbuffer.c:4841 +#: replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:2045 +#: replication/slot.c:2498 storage/file/fd.c:875 storage/file/fd.c:3440 +#: storage/file/fd.c:3502 storage/file/reinit.c:261 storage/ipc/dsm.c:343 +#: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 +#: utils/time/snapmgr.c:1609 #, c-format msgid "could not remove file \"%s\": %m" msgstr "не можливо видалити файл \"%s\": %m" #: ../common/rmtree.c:124 commands/tablespace.c:767 commands/tablespace.c:780 -#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3370 -#: storage/file/fd.c:3779 +#: commands/tablespace.c:815 commands/tablespace.c:905 storage/file/fd.c:3432 +#: storage/file/fd.c:3841 #, c-format msgid "could not remove directory \"%s\": %m" msgstr "не вдалося видалити каталог \"%s\": %m" -#: ../common/scram-common.c:282 +#: ../common/scram-common.c:281 msgid "could not encode salt" msgstr "не вдалося закодувати сіль" -#: ../common/scram-common.c:298 +#: ../common/scram-common.c:297 msgid "could not encode stored key" msgstr "на вдалося закодувати збережений ключ" -#: ../common/scram-common.c:315 +#: ../common/scram-common.c:314 msgid "could not encode server key" msgstr "не вдалося закодувати серверний ключ" -#: ../common/stringinfo.c:315 +#: ../common/stringinfo.c:362 +#, c-format +msgid "string buffer exceeds maximum allowed length (%zu bytes)" +msgstr "рядковий буфер перевищує максимально дозволену довжину (%zu байт)" + +#: ../common/stringinfo.c:363 #, c-format msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes." msgstr "Не вдалося збільшити рядковий буфер (містить: %d байтів, потребувалось: %d байтів)." -#: ../common/stringinfo.c:319 +#: ../common/stringinfo.c:367 #, c-format -msgid "out of memory\n\n" +msgid "string buffer exceeds maximum allowed length (%zu bytes)\n\n" "Cannot enlarge string buffer containing %d bytes by %d more bytes.\n" -msgstr "недостатньо пам'яті\n\n" -"Неможливо збільшити рядковий буфер (містить: %d байт, потребувалось: %d байт).\n" +msgstr "рядковий буфер перевищує максимально дозволену довжину (%zu байт)\n\n" +"Не вдалося збільшити рядковий буфер (містить %d байт) на %d байт.\n" #: ../common/username.c:43 #, c-format msgid "could not look up effective user ID %ld: %s" msgstr "не можу знайти користувача з ефективним ID %ld: %s" -#: ../common/username.c:45 libpq/auth.c:1888 +#: ../common/username.c:45 msgid "user does not exist" msgstr "користувача не існує" @@ -790,12 +802,12 @@ msgstr "дочірній процес перервано через сигнал msgid "child process exited with unrecognized status %d" msgstr "дочірній процес завершився з невизнаним статусом %d" -#: ../port/chklocale.c:283 +#: ../port/chklocale.c:280 #, c-format msgid "could not determine encoding for codeset \"%s\"" msgstr "не вдалося визначити кодування для набору символів \"%s\"" -#: ../port/chklocale.c:404 ../port/chklocale.c:410 +#: ../port/chklocale.c:370 ../port/chklocale.c:376 #, c-format msgid "could not determine encoding for locale \"%s\": codeset is \"%s\"" msgstr "не вдалося визначити кодування для докалі \"%s\": набір символів \"%s\"" @@ -820,30 +832,30 @@ msgstr "не вдалося встановити сполучення для \"% msgid "could not get junction for \"%s\": %s\n" msgstr "не вдалося встановити сполучення для \"%s\": %s\n" -#: ../port/open.c:115 +#: ../port/open.c:125 #, c-format msgid "could not open file \"%s\": %s" msgstr "не вдалося відкрити файл \"%s\": %s" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "lock violation" msgstr "порушення блокування" -#: ../port/open.c:116 +#: ../port/open.c:126 msgid "sharing violation" msgstr "порушення спільного доступу" -#: ../port/open.c:117 +#: ../port/open.c:127 #, c-format msgid "Continuing to retry for 30 seconds." msgstr "Продовжую спроби протягом 30 секунд." -#: ../port/open.c:118 +#: ../port/open.c:128 #, c-format msgid "You might have antivirus, backup, or similar software interfering with the database system." msgstr "Ви можливо маєте антивірус, резервне копіювання або аналогічне програмне забезпечення, що втручається у роботу системи бази даних." -#: ../port/path.c:775 +#: ../port/path.c:853 #, c-format msgid "could not get current working directory: %m\n" msgstr "не вдалося отримати поточний робочий каталог: %m\n" @@ -853,16 +865,6 @@ msgstr "не вдалося отримати поточний робочий к msgid "operating system error %d" msgstr "помилка операційної системи %d" -#: ../port/user.c:43 ../port/user.c:79 -#, c-format -msgid "could not look up local user ID %d: %s" -msgstr "не вдалося знайти локального користувача з ідентифікатором %d: %s" - -#: ../port/user.c:48 ../port/user.c:84 -#, c-format -msgid "local user with ID %d does not exist" -msgstr "локального користувача з ідентифікатором %d не існує" - #: ../port/win32security.c:62 #, c-format msgid "could not get SID for Administrators group: error code %lu\n" @@ -878,48 +880,50 @@ msgstr "не вдалося отримати SID для групи PowerUsers: msgid "could not check access token membership: error code %lu\n" msgstr "не вдається перевірити членство токену доступу: код помилки %lu\n" -#: access/brin/brin.c:405 +#: access/brin/brin.c:414 #, c-format msgid "request for BRIN range summarization for index \"%s\" page %u was not recorded" msgstr "запит на підсумок діапазону BRIN для індексу «%s» сторінки %u не вдалося записати" -#: access/brin/brin.c:1385 access/brin/brin.c:1493 access/gin/ginfast.c:1040 -#: access/transam/xlogfuncs.c:183 access/transam/xlogfuncs.c:208 -#: access/transam/xlogfuncs.c:241 access/transam/xlogfuncs.c:280 -#: access/transam/xlogfuncs.c:301 access/transam/xlogfuncs.c:322 -#: access/transam/xlogfuncs.c:388 access/transam/xlogfuncs.c:446 +#: access/brin/brin.c:1397 access/brin/brin.c:1504 access/gin/ginfast.c:1040 +#: access/transam/xlogfuncs.c:184 access/transam/xlogfuncs.c:209 +#: access/transam/xlogfuncs.c:242 access/transam/xlogfuncs.c:281 +#: access/transam/xlogfuncs.c:302 access/transam/xlogfuncs.c:323 +#: access/transam/xlogfuncs.c:389 access/transam/xlogfuncs.c:447 +#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:936 +#: statistics/relation_stats.c:97 #, c-format msgid "recovery is in progress" msgstr "відновлення у процесі" -#: access/brin/brin.c:1386 access/brin/brin.c:1494 +#: access/brin/brin.c:1398 access/brin/brin.c:1505 #, c-format msgid "BRIN control functions cannot be executed during recovery." msgstr "Контрольна функція BRIN не може бути виконана під час відновлення." -#: access/brin/brin.c:1391 access/brin/brin.c:1499 +#: access/brin/brin.c:1403 access/brin/brin.c:1510 #, c-format -msgid "block number out of range: %lld" -msgstr "номер блоку поза діапазоном: %lld" +msgid "block number out of range: %" +msgstr "номер блоку поза межами: %" -#: access/brin/brin.c:1436 access/brin/brin.c:1525 +#: access/brin/brin.c:1447 access/brin/brin.c:1536 #, c-format msgid "\"%s\" is not a BRIN index" msgstr "\"%s\" не є індексом BRIN" -#: access/brin/brin.c:1452 access/brin/brin.c:1541 +#: access/brin/brin.c:1463 access/brin/brin.c:1552 #, c-format msgid "could not open parent table of index \"%s\"" msgstr "не вдалося відкрити батьківську таблицю індексу \"%s\"" -#: access/brin/brin.c:1461 access/brin/brin.c:1557 access/gin/ginfast.c:1085 -#: parser/parse_utilcmd.c:2277 +#: access/brin/brin.c:1472 access/brin/brin.c:1568 access/gin/ginfast.c:1085 +#: parser/parse_utilcmd.c:2454 #, c-format msgid "index \"%s\" is not valid" msgstr "індекс \"%s\" не є припустимим" -#: access/brin/brin_bloom.c:783 access/brin/brin_bloom.c:825 -#: access/brin/brin_minmax_multi.c:2993 access/brin/brin_minmax_multi.c:3130 +#: access/brin/brin_bloom.c:784 access/brin/brin_bloom.c:826 +#: access/brin/brin_minmax_multi.c:2984 access/brin/brin_minmax_multi.c:3121 #: statistics/dependencies.c:661 statistics/dependencies.c:714 #: statistics/mcv.c:1480 statistics/mcv.c:1511 statistics/mvdistinct.c:343 #: statistics/mvdistinct.c:396 utils/adt/pseudotypes.c:40 @@ -930,7 +934,7 @@ msgstr "не можна прийняти значення типу %s" #: access/brin/brin_pageops.c:75 access/brin/brin_pageops.c:361 #: access/brin/brin_pageops.c:851 access/gin/ginentrypage.c:109 -#: access/gist/gist.c:1463 access/spgist/spgdoinsert.c:2001 +#: access/gist/gist.c:1475 access/spgist/spgdoinsert.c:2001 #: access/spgist/spgdoinsert.c:2278 #, c-format msgid "index row size %zu exceeds maximum %zu for index \"%s\"" @@ -946,90 +950,90 @@ msgstr "пошкоджений BRIN індекс: несумісна карта msgid "unexpected page type 0x%04X in BRIN index \"%s\" block %u" msgstr "неочікуваний тип сторінки 0x%04X в BRIN індексі \"%s\" блокує %u" -#: access/brin/brin_validate.c:118 access/gin/ginvalidate.c:149 -#: access/gist/gistvalidate.c:152 access/hash/hashvalidate.c:139 -#: access/nbtree/nbtvalidate.c:120 access/spgist/spgvalidate.c:189 +#: access/brin/brin_validate.c:111 access/gin/ginvalidate.c:142 +#: access/gist/gistvalidate.c:150 access/hash/hashvalidate.c:112 +#: access/nbtree/nbtvalidate.c:116 access/spgist/spgvalidate.c:181 #, c-format msgid "operator family \"%s\" of access method %s contains function %s with invalid support number %d" msgstr "сімейство операторів \"%s\" методу доступу %s містить функцію %s з недопустимим номером підтримки %d" -#: access/brin/brin_validate.c:134 access/gin/ginvalidate.c:161 -#: access/gist/gistvalidate.c:164 access/hash/hashvalidate.c:118 -#: access/nbtree/nbtvalidate.c:132 access/spgist/spgvalidate.c:201 +#: access/brin/brin_validate.c:127 access/gin/ginvalidate.c:154 +#: access/gist/gistvalidate.c:162 access/hash/hashvalidate.c:124 +#: access/nbtree/nbtvalidate.c:128 access/spgist/spgvalidate.c:193 #, c-format msgid "operator family \"%s\" of access method %s contains function %s with wrong signature for support number %d" msgstr "сімейство операторів \"%s\" з доступом %s містить функцію %s з неправильним підписом для номеру підтримки %d" -#: access/brin/brin_validate.c:156 access/gin/ginvalidate.c:180 -#: access/gist/gistvalidate.c:184 access/hash/hashvalidate.c:160 -#: access/nbtree/nbtvalidate.c:152 access/spgist/spgvalidate.c:221 +#: access/brin/brin_validate.c:149 access/gin/ginvalidate.c:173 +#: access/gist/gistvalidate.c:182 access/hash/hashvalidate.c:150 +#: access/nbtree/nbtvalidate.c:148 access/spgist/spgvalidate.c:213 #, c-format msgid "operator family \"%s\" of access method %s contains operator %s with invalid strategy number %d" msgstr "сімейство операторів \"%s\" з доступом %s містить оператор %s з недопустимим стратегічним номером %d" -#: access/brin/brin_validate.c:185 access/gin/ginvalidate.c:193 -#: access/hash/hashvalidate.c:173 access/nbtree/nbtvalidate.c:165 -#: access/spgist/spgvalidate.c:237 +#: access/brin/brin_validate.c:178 access/gin/ginvalidate.c:186 +#: access/hash/hashvalidate.c:163 access/nbtree/nbtvalidate.c:161 +#: access/spgist/spgvalidate.c:229 #, c-format msgid "operator family \"%s\" of access method %s contains invalid ORDER BY specification for operator %s" msgstr "сімейство операторів \"%s\" з доступом %s містить некоректну специфікацію ORDER BY для оператора %s" -#: access/brin/brin_validate.c:198 access/gin/ginvalidate.c:206 -#: access/gist/gistvalidate.c:232 access/hash/hashvalidate.c:186 -#: access/nbtree/nbtvalidate.c:178 access/spgist/spgvalidate.c:253 +#: access/brin/brin_validate.c:191 access/gin/ginvalidate.c:199 +#: access/gist/gistvalidate.c:230 access/hash/hashvalidate.c:176 +#: access/nbtree/nbtvalidate.c:174 access/spgist/spgvalidate.c:245 #, c-format msgid "operator family \"%s\" of access method %s contains operator %s with wrong signature" msgstr "сімейство операторів \"%s\" з доступом %s містить оператор %s з неправильним підписом" -#: access/brin/brin_validate.c:236 access/hash/hashvalidate.c:226 -#: access/nbtree/nbtvalidate.c:236 access/spgist/spgvalidate.c:280 +#: access/brin/brin_validate.c:229 access/hash/hashvalidate.c:216 +#: access/nbtree/nbtvalidate.c:232 access/spgist/spgvalidate.c:272 #, c-format msgid "operator family \"%s\" of access method %s is missing operator(s) for types %s and %s" msgstr "сімейство операторів \"%s\" методу доступу %s не містить операторів для типів %s і %s" -#: access/brin/brin_validate.c:246 +#: access/brin/brin_validate.c:239 #, c-format msgid "operator family \"%s\" of access method %s is missing support function(s) for types %s and %s" msgstr "сімейство операторів \"%s\" з методом доступа %s не містить функцію підтримки для типів %s і %s" -#: access/brin/brin_validate.c:259 access/hash/hashvalidate.c:240 -#: access/nbtree/nbtvalidate.c:260 access/spgist/spgvalidate.c:315 +#: access/brin/brin_validate.c:252 access/hash/hashvalidate.c:230 +#: access/nbtree/nbtvalidate.c:256 access/spgist/spgvalidate.c:307 #, c-format msgid "operator class \"%s\" of access method %s is missing operator(s)" msgstr "клас операторів \"%s\" з методом доступа %s не має операторів" -#: access/brin/brin_validate.c:270 access/gin/ginvalidate.c:248 -#: access/gist/gistvalidate.c:273 +#: access/brin/brin_validate.c:263 access/gin/ginvalidate.c:241 +#: access/gist/gistvalidate.c:272 #, c-format msgid "operator class \"%s\" of access method %s is missing support function %d" msgstr "клас операторів \"%s\" з доступом %s немає функції підтримки %d" -#: access/common/attmap.c:121 +#: access/common/attmap.c:118 #, c-format -msgid "Returned type %s does not match expected type %s in column %d." -msgstr "Повернений тип %s не відповідає очікуваному типу %s в стовпці %d." +msgid "Returned type %s does not match expected type %s in column \"%s\" (position %d)." +msgstr "Повернений тип %s не відповідає очікуваному типу %s у стовпці \"%s\" (позиція %d)." -#: access/common/attmap.c:149 +#: access/common/attmap.c:147 #, c-format msgid "Number of returned columns (%d) does not match expected column count (%d)." msgstr "Кількість повернених стовпців (%d) не відповідає очікуваній кількості стовпців (%d)." -#: access/common/attmap.c:233 access/common/attmap.c:245 +#: access/common/attmap.c:231 access/common/attmap.c:243 #, c-format msgid "could not convert row type" msgstr "неможливо конвертувати тип рядка" -#: access/common/attmap.c:234 +#: access/common/attmap.c:232 #, c-format msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s." msgstr "Атрибут \"%s\" типу %s не збігається з відповідним атрибутом типу %s." -#: access/common/attmap.c:246 +#: access/common/attmap.c:244 #, c-format msgid "Attribute \"%s\" of type %s does not exist in type %s." msgstr "Атрибут \"%s\" типу %s не існує в типі %s." -#: access/common/heaptuple.c:1132 access/common/heaptuple.c:1467 +#: access/common/heaptuple.c:1133 access/common/heaptuple.c:1472 #, c-format msgid "number of columns (%d) exceeds limit (%d)" msgstr "кількість стовпців (%d) перевищує обмеження (%d)" @@ -1039,96 +1043,101 @@ msgstr "кількість стовпців (%d) перевищує обмеже msgid "number of index columns (%d) exceeds limit (%d)" msgstr "кількість індексних стовпців (%d) перевищує обмеження (%d)" -#: access/common/indextuple.c:209 access/spgist/spgutils.c:970 +#: access/common/indextuple.c:209 access/spgist/spgutils.c:978 #, c-format msgid "index row requires %zu bytes, maximum size is %zu" msgstr "індексний рядок вимагає %zu байтів, максимальний розмір %zu" -#: access/common/printtup.c:292 commands/explain.c:5376 tcop/fastpath.c:107 -#: tcop/fastpath.c:454 tcop/postgres.c:1956 +#: access/common/printtup.c:292 commands/explain_dr.c:94 tcop/fastpath.c:106 +#: tcop/fastpath.c:453 tcop/postgres.c:1950 #, c-format msgid "unsupported format code: %d" msgstr "цей формат коду не підтримується:%d" -#: access/common/reloptions.c:519 access/common/reloptions.c:530 +#: access/common/reloptions.c:530 access/common/reloptions.c:541 msgid "Valid values are \"on\", \"off\", and \"auto\"." msgstr "Дійсні значення \"увімкнено\", \"вимкнено\" та \"автоматично\"." -#: access/common/reloptions.c:541 +#: access/common/reloptions.c:552 msgid "Valid values are \"local\" and \"cascaded\"." msgstr "Припустимі значення лише \"local\" і \"cascaded\"." -#: access/common/reloptions.c:689 +#: access/common/reloptions.c:700 #, c-format msgid "user-defined relation parameter types limit exceeded" msgstr "перевищено встановлене користувачем обмеження типу параметрів відношення" -#: access/common/reloptions.c:1231 +#: access/common/reloptions.c:1242 #, c-format msgid "RESET must not include values for parameters" msgstr "RESET не має містити значення для параметрів" -#: access/common/reloptions.c:1263 +#: access/common/reloptions.c:1275 #, c-format msgid "unrecognized parameter namespace \"%s\"" msgstr "нерозпізнаний параметр простору імен \"%s\"" -#: access/common/reloptions.c:1300 commands/variable.c:1191 +#: access/common/reloptions.c:1305 commands/foreigncmds.c:86 +#, c-format +msgid "invalid option name \"%s\": must not contain \"=\"" +msgstr "неприпустиме ім'я параметра \"%s\": не може містити \"=\"" + +#: access/common/reloptions.c:1320 commands/variable.c:1240 #, c-format msgid "tables declared WITH OIDS are not supported" msgstr "таблиці, позначені WITH OIDS, не підтримуються" -#: access/common/reloptions.c:1468 +#: access/common/reloptions.c:1488 #, c-format msgid "unrecognized parameter \"%s\"" msgstr "нерозпізнаний параметр \"%s\"" -#: access/common/reloptions.c:1580 +#: access/common/reloptions.c:1600 #, c-format msgid "parameter \"%s\" specified more than once" msgstr "параметр «%s» вказано кілька разів" -#: access/common/reloptions.c:1596 +#: access/common/reloptions.c:1616 #, c-format msgid "invalid value for boolean option \"%s\": %s" msgstr "неприпустиме значення для булевого параметра \"%s\": %s" -#: access/common/reloptions.c:1608 +#: access/common/reloptions.c:1628 #, c-format msgid "invalid value for integer option \"%s\": %s" msgstr "неприпустиме значення для цілого параметра \"%s\": %s" -#: access/common/reloptions.c:1614 access/common/reloptions.c:1634 +#: access/common/reloptions.c:1634 access/common/reloptions.c:1654 #, c-format msgid "value %s out of bounds for option \"%s\"" msgstr "значення %s поза допустимими межами для параметра \"%s\"" -#: access/common/reloptions.c:1616 +#: access/common/reloptions.c:1636 #, c-format msgid "Valid values are between \"%d\" and \"%d\"." msgstr "Припустимі значення знаходяться між \"%d\" і \"%d\"." -#: access/common/reloptions.c:1628 +#: access/common/reloptions.c:1648 #, c-format msgid "invalid value for floating point option \"%s\": %s" msgstr "неприпустиме значення для числа з плавучою точкою параметра \"%s\": %s" -#: access/common/reloptions.c:1636 +#: access/common/reloptions.c:1656 #, c-format msgid "Valid values are between \"%f\" and \"%f\"." msgstr "Припустимі значення знаходяться між \"%f\" і \"%f\"." -#: access/common/reloptions.c:1658 +#: access/common/reloptions.c:1678 #, c-format msgid "invalid value for enum option \"%s\": %s" msgstr "недійсне значення для параметра перерахування \"%s\": %s" -#: access/common/reloptions.c:1989 +#: access/common/reloptions.c:2025 #, c-format msgid "cannot specify storage parameters for a partitioned table" msgstr "неможливо вказати параметри сховища для секціонованої таблиці" -#: access/common/reloptions.c:1990 +#: access/common/reloptions.c:2026 #, c-format msgid "Specify storage parameters for its leaf partitions instead." msgstr "Вкажіть параметри сховища для табличних розділів." @@ -1173,52 +1182,53 @@ msgstr "доступ до тимчасових індексів з інших с msgid "failed to re-find tuple within index \"%s\"" msgstr "не вдалося повторно знайти кортеж в межах індексу \"%s\"" -#: access/gin/ginscan.c:431 +#: access/gin/gininsert.c:1310 access/gin/ginutil.c:152 +#: executor/execExpr.c:2244 utils/adt/array_userfuncs.c:1963 +#: utils/adt/arrayfuncs.c:4028 utils/adt/arrayfuncs.c:6726 +#: utils/adt/rowtypes.c:974 +#, c-format +msgid "could not identify a comparison function for type %s" +msgstr "не вдалося визначити порівняльну функцію для типу %s" + +#: access/gin/ginscan.c:480 #, c-format msgid "old GIN indexes do not support whole-index scans nor searches for nulls" msgstr "старі індекси GIN не підтримують сканування цілого індексу й пошуки значення null" -#: access/gin/ginscan.c:432 +#: access/gin/ginscan.c:481 #, c-format msgid "To fix this, do REINDEX INDEX \"%s\"." msgstr "Щоб виправити це, зробіть REINDEX INDEX \"%s\"." -#: access/gin/ginutil.c:147 executor/execExpr.c:2192 -#: utils/adt/arrayfuncs.c:4016 utils/adt/arrayfuncs.c:6712 -#: utils/adt/rowtypes.c:974 -#, c-format -msgid "could not identify a comparison function for type %s" -msgstr "не вдалося визначити порівняльну функцію для типу %s" - -#: access/gin/ginvalidate.c:90 access/gist/gistvalidate.c:92 -#: access/hash/hashvalidate.c:102 access/spgist/spgvalidate.c:102 +#: access/gin/ginvalidate.c:83 access/gist/gistvalidate.c:84 +#: access/hash/hashvalidate.c:89 access/spgist/spgvalidate.c:94 #, c-format msgid "operator family \"%s\" of access method %s contains support function %s with different left and right input types" msgstr "сімейство операторів \"%s\" з методом доступу %s містить функцію підтримки %s з різними типами вводу зліва і справа" -#: access/gin/ginvalidate.c:258 +#: access/gin/ginvalidate.c:251 #, c-format msgid "operator class \"%s\" of access method %s is missing support function %d or %d" msgstr "клас операторів \"%s\" з методом доступу %s не має функції підтримки %d або %d" -#: access/gin/ginvalidate.c:331 access/gist/gistvalidate.c:349 -#: access/spgist/spgvalidate.c:387 +#: access/gin/ginvalidate.c:323 access/gist/gistvalidate.c:348 +#: access/spgist/spgvalidate.c:378 #, c-format msgid "support function number %d is invalid for access method %s" msgstr "номер функції підтримки %d неприпустимий для методу доступу %s" -#: access/gist/gist.c:760 access/gist/gistvacuum.c:426 +#: access/gist/gist.c:765 access/gist/gistvacuum.c:463 #, c-format msgid "index \"%s\" contains an inner tuple marked as invalid" msgstr "індекс \"%s\" містить внутрішній кортеж, позначений як неправильний" -#: access/gist/gist.c:762 access/gist/gistvacuum.c:428 +#: access/gist/gist.c:767 access/gist/gistvacuum.c:465 #, c-format 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:763 access/gist/gistutil.c:800 access/gist/gistutil.c:811 -#: access/gist/gistvacuum.c:429 access/hash/hashutil.c:226 +#: access/gist/gist.c:768 access/gist/gistutil.c:801 access/gist/gistutil.c:812 +#: access/gist/gistvacuum.c:466 access/hash/hashutil.c:226 #: access/hash/hashutil.c:237 access/hash/hashutil.c:249 #: access/hash/hashutil.c:270 access/nbtree/nbtpage.c:813 #: access/nbtree/nbtpage.c:824 @@ -1226,7 +1236,7 @@ msgstr "Це викликано неповним поділом сторінки msgid "Please REINDEX it." msgstr "Будь ласка, виконайте REINDEX." -#: access/gist/gist.c:1196 +#: access/gist/gist.c:1208 #, c-format msgid "fixing incomplete split in index \"%s\", block %u" msgstr "виправлення неповного розділу в індексі \"%s\", блок %u" @@ -1241,41 +1251,42 @@ msgstr "помилка методу picksplit для стовпця %d інде 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:797 access/hash/hashutil.c:223 +#: access/gist/gistutil.c:798 access/hash/hashutil.c:223 #: access/nbtree/nbtpage.c:810 #, c-format msgid "index \"%s\" contains unexpected zero page at block %u" msgstr "індекс \"%s\" містить неочікувану нульову сторінку в блоці %u" -#: access/gist/gistutil.c:808 access/hash/hashutil.c:234 +#: access/gist/gistutil.c:809 access/hash/hashutil.c:234 #: access/hash/hashutil.c:246 access/nbtree/nbtpage.c:821 #, c-format msgid "index \"%s\" contains corrupted page at block %u" msgstr "індекс \"%s\" містить пошкоджену сторінку в блоці %u" -#: access/gist/gistvalidate.c:202 +#: access/gist/gistvalidate.c:200 #, c-format msgid "operator family \"%s\" of access method %s contains unsupported ORDER BY specification for operator %s" msgstr "сімейство операторів \"%s\" з методом доступу %s містить непідтримувану для оператора специфікацію ORDER BY %s" -#: access/gist/gistvalidate.c:213 +#: access/gist/gistvalidate.c:211 #, c-format msgid "operator family \"%s\" of access method %s contains incorrect ORDER BY opfamily specification for operator %s" msgstr "сімейство операторів \"%s\" з методом доступу %s містить некоректну для оператора специфікацію ORDER BY opfamily %s" -#: access/hash/hashfunc.c:277 access/hash/hashfunc.c:333 -#: utils/adt/varchar.c:1008 utils/adt/varchar.c:1065 +#: access/hash/hashfunc.c:277 access/hash/hashfunc.c:332 +#: utils/adt/varchar.c:1000 utils/adt/varchar.c:1056 #, c-format msgid "could not determine which collation to use for string hashing" msgstr "не вдалося визначити, який параметр сортування використати для обчислення хешу рядків" -#: access/hash/hashfunc.c:278 access/hash/hashfunc.c:334 catalog/heap.c:672 -#: catalog/heap.c:678 commands/createas.c:201 commands/createas.c:508 -#: commands/indexcmds.c:2048 commands/tablecmds.c:18068 commands/view.c:81 -#: regex/regc_pg_locale.c:245 utils/adt/formatting.c:1653 -#: utils/adt/formatting.c:1801 utils/adt/formatting.c:1991 utils/adt/like.c:189 -#: utils/adt/like_support.c:1024 utils/adt/varchar.c:738 -#: utils/adt/varchar.c:1009 utils/adt/varchar.c:1066 utils/adt/varlena.c:1521 +#: access/hash/hashfunc.c:278 access/hash/hashfunc.c:333 catalog/heap.c:688 +#: catalog/heap.c:694 commands/createas.c:203 commands/createas.c:515 +#: commands/indexcmds.c:2090 commands/tablecmds.c:19987 commands/view.c:80 +#: regex/regc_pg_locale.c:242 utils/adt/formatting.c:1655 +#: utils/adt/formatting.c:1719 utils/adt/formatting.c:1783 +#: utils/adt/formatting.c:1847 utils/adt/like.c:163 utils/adt/like.c:194 +#: utils/adt/like_support.c:1020 utils/adt/varchar.c:738 +#: utils/adt/varchar.c:1001 utils/adt/varchar.c:1057 utils/adt/varlena.c:1603 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "Використайте опцію COLLATE для задання параметрів сортування." @@ -1286,7 +1297,7 @@ msgid "index row size %zu exceeds hash maximum %zu" msgstr "індексний рядок розміру %zu перевищує максимальний хеш %zu" #: access/hash/hashinsert.c:86 access/spgist/spgdoinsert.c:2005 -#: access/spgist/spgdoinsert.c:2282 access/spgist/spgutils.c:1031 +#: access/spgist/spgdoinsert.c:2282 access/spgist/spgutils.c:1039 #, c-format msgid "Values larger than a buffer page cannot be indexed." msgstr "Значення, що перевищують буфер сторінки, не можна індексувати." @@ -1301,7 +1312,7 @@ msgstr "недійсний номер блока переповнення %u" msgid "out of overflow pages in hash index \"%s\"" msgstr "закінчились переповнені сторінки в хеш-індексі \"%s\"" -#: access/hash/hashsearch.c:311 +#: access/hash/hashsearch.c:313 #, c-format msgid "hash indexes do not support whole-index scans" msgstr "хеш-індекси не підтримують сканування цілого індексу" @@ -1316,48 +1327,54 @@ msgstr "індекс \"%s\" не є хеш-індексом" msgid "index \"%s\" has wrong hash version" msgstr "індекс \"%s\" має неправильну версію хешу" -#: access/hash/hashvalidate.c:198 +#: access/hash/hashvalidate.c:188 #, c-format msgid "operator family \"%s\" of access method %s lacks support function for operator %s" msgstr "сімейство операторів \"%s\" з методом доступу %s не містить функції підтримки для оператора %s" -#: access/hash/hashvalidate.c:256 access/nbtree/nbtvalidate.c:276 +#: access/hash/hashvalidate.c:246 access/nbtree/nbtvalidate.c:272 #, c-format msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)" msgstr "сімейство операторів \"%s\" з методом доступу %s не містить міжтипового оператора (ів)" -#: access/heap/heapam.c:2195 +#: access/heap/heapam.c:2283 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "не вдалося вставити кортежі в паралельного працівника" -#: access/heap/heapam.c:2714 +#: access/heap/heapam.c:2806 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "не вдалося видалити кортежі під час паралельної операції" -#: access/heap/heapam.c:2761 +#: access/heap/heapam.c:2853 #, c-format msgid "attempted to delete invisible tuple" msgstr "спроба видалити невидимий кортеж" -#: access/heap/heapam.c:3209 access/heap/heapam.c:6082 +#: access/heap/heapam.c:3303 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "неможливо оновити кортежі під час паралельної операції" -#: access/heap/heapam.c:3337 +#: access/heap/heapam.c:3480 #, c-format msgid "attempted to update invisible tuple" msgstr "спроба оновити невидимий кортеж" -#: access/heap/heapam.c:4726 access/heap/heapam.c:4764 -#: access/heap/heapam.c:5029 access/heap/heapam_handler.c:468 +#: access/heap/heapam.c:4993 access/heap/heapam.c:5031 +#: access/heap/heapam.c:5298 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "не вдалося отримати блокування у рядку стосовно \"%s\"" -#: access/heap/heapam_handler.c:413 +#: access/heap/heapam.c:6425 commands/trigger.c:3401 +#: executor/nodeModifyTable.c:2568 executor/nodeModifyTable.c:2658 +#, c-format +msgid "tuple to be updated was already modified by an operation triggered by the current command" +msgstr "кортеж, який повинен бути оновленим, вже змінений в операції, яка викликана поточною командою" + +#: access/heap/heapam_handler.c:415 #, c-format msgid "tuple to be locked was already moved to another partition due to concurrent update" msgstr "кортеж, який підлягає блокуванню, вже був переміщений до іншої секції в результаті паралельного оновлення" @@ -1374,14 +1391,14 @@ msgstr "не вдалося записати до файлу \"%s\", запис #: access/heap/rewriteheap.c:977 access/heap/rewriteheap.c:1094 #: access/transam/timeline.c:329 access/transam/timeline.c:481 -#: access/transam/xlog.c:3254 access/transam/xlog.c:3445 -#: access/transam/xlog.c:4282 access/transam/xlog.c:9244 -#: access/transam/xlogfuncs.c:692 backup/basebackup_server.c:149 -#: backup/basebackup_server.c:242 commands/dbcommands.c:494 -#: postmaster/launch_backend.c:340 postmaster/postmaster.c:4112 -#: postmaster/walsummarizer.c:1212 replication/logical/origin.c:603 -#: replication/slot.c:2059 storage/file/copydir.c:157 storage/smgr/md.c:230 -#: utils/time/snapmgr.c:1234 +#: access/transam/xlog.c:3240 access/transam/xlog.c:3448 +#: access/transam/xlog.c:4312 access/transam/xlog.c:9327 +#: access/transam/xlogfuncs.c:693 backup/basebackup_server.c:149 +#: backup/basebackup_server.c:242 commands/dbcommands.c:495 +#: postmaster/launch_backend.c:354 postmaster/postmaster.c:4092 +#: postmaster/walsummarizer.c:1215 replication/logical/origin.c:626 +#: replication/slot.c:2356 storage/file/copydir.c:173 +#: storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1252 #, c-format msgid "could not create file \"%s\": %m" msgstr "неможливо створити файл \"%s\": %m" @@ -1393,229 +1410,244 @@ msgstr "не вдалося скоротити файл \"%s\" до потріб #: access/heap/rewriteheap.c:1122 access/transam/timeline.c:384 #: access/transam/timeline.c:424 access/transam/timeline.c:498 -#: access/transam/xlog.c:3304 access/transam/xlog.c:3501 -#: access/transam/xlog.c:4294 commands/dbcommands.c:506 -#: postmaster/launch_backend.c:351 postmaster/launch_backend.c:363 -#: replication/logical/origin.c:615 replication/logical/origin.c:657 -#: replication/logical/origin.c:676 replication/logical/snapbuild.c:1788 -#: replication/slot.c:2094 storage/file/buffile.c:545 -#: storage/file/copydir.c:197 utils/init/miscinit.c:1601 -#: utils/init/miscinit.c:1612 utils/init/miscinit.c:1620 utils/misc/guc.c:4450 -#: utils/misc/guc.c:4481 utils/misc/guc.c:5634 utils/misc/guc.c:5652 -#: utils/time/snapmgr.c:1239 utils/time/snapmgr.c:1246 +#: access/transam/xlog.c:3301 access/transam/xlog.c:3504 +#: access/transam/xlog.c:4324 commands/dbcommands.c:507 +#: postmaster/launch_backend.c:365 postmaster/launch_backend.c:377 +#: replication/logical/origin.c:638 replication/logical/origin.c:680 +#: replication/logical/origin.c:699 replication/logical/snapbuild.c:1665 +#: replication/slot.c:2392 storage/file/buffile.c:545 +#: storage/file/copydir.c:213 utils/init/miscinit.c:1661 +#: utils/init/miscinit.c:1672 utils/init/miscinit.c:1680 utils/misc/guc.c:4488 +#: utils/misc/guc.c:4519 utils/misc/guc.c:5678 utils/misc/guc.c:5696 +#: utils/time/snapmgr.c:1257 utils/time/snapmgr.c:1264 #, c-format msgid "could not write to file \"%s\": %m" msgstr "неможливо записати до файлу \"%s\": %m" -#: access/heap/vacuumlazy.c:473 +#: access/heap/vacuumlazy.c:815 #, c-format msgid "aggressively vacuuming \"%s.%s.%s\"" msgstr "агресивне очищення \"%s.%s.%s\"" -#: access/heap/vacuumlazy.c:478 +#: access/heap/vacuumlazy.c:820 #, c-format msgid "vacuuming \"%s.%s.%s\"" msgstr "очищення \"%s.%s.%s\"" -#: access/heap/vacuumlazy.c:626 +#: access/heap/vacuumlazy.c:988 #, c-format msgid "finished vacuuming \"%s.%s.%s\": index scans: %d\n" msgstr "очищення закінчено \"%s.%s.%s\": сканувань індексу: %d\n" -#: access/heap/vacuumlazy.c:637 +#: access/heap/vacuumlazy.c:999 #, c-format msgid "automatic aggressive vacuum to prevent wraparound of table \"%s.%s.%s\": index scans: %d\n" msgstr "автоматичний агресивний вакуум для запобігання зацикленню таблиці \"%s.%s.%s\": сканування індексу: %d\n" -#: access/heap/vacuumlazy.c:639 +#: access/heap/vacuumlazy.c:1001 #, c-format msgid "automatic vacuum to prevent wraparound of table \"%s.%s.%s\": index scans: %d\n" msgstr "автоматичне очищення для запобігання зацикленню таблиці \"%s.%s.%s\": сканування індексу: %d\n" -#: access/heap/vacuumlazy.c:644 +#: access/heap/vacuumlazy.c:1006 #, c-format msgid "automatic aggressive vacuum of table \"%s.%s.%s\": index scans: %d\n" msgstr "автоматична агресивне очищення таблиці \"%s.%s.%s\": сканувань індексу: %d\n" -#: access/heap/vacuumlazy.c:646 +#: access/heap/vacuumlazy.c:1008 #, c-format msgid "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n" msgstr "автоматичне очищення таблиці \"%s.%s.%s\": сканувань індексу: %d\n" -#: access/heap/vacuumlazy.c:653 +#: access/heap/vacuumlazy.c:1015 #, c-format -msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n" -msgstr "сторінок: %u видалено, %u залишилось, %u відскановано (%.2f%% від загальної кількості)\n" +msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total), %u eagerly scanned\n" +msgstr "сторінки: %u вилучено, %u залишилось, %u скановано (%.2f%% від загальної), %u скановано активно\n" -#: access/heap/vacuumlazy.c:660 +#: access/heap/vacuumlazy.c:1024 #, c-format -msgid "tuples: %lld removed, %lld remain, %lld are dead but not yet removable\n" -msgstr "кортежів: %lld видалено, %lld залишилось, %lld мертвих, але все ще не можуть бути видаленні\n" +msgid "tuples: % removed, % remain, % are dead but not yet removable\n" +msgstr "кортежі: % вилучено, % залишилось, % мертві, але ще не можуть бути вилучені\n" -#: access/heap/vacuumlazy.c:666 +#: access/heap/vacuumlazy.c:1030 #, c-format -msgid "tuples missed: %lld dead from %u pages not removed due to cleanup lock contention\n" -msgstr "пропущено кортежів: %lld померлих з %u сторінок не видалено через очищення блокування\n" +msgid "tuples missed: % dead from %u pages not removed due to cleanup lock contention\n" +msgstr "пропущено кортежів: % мертвих з %u сторінок не вилучено через конкуренцію за блокування очищення\n" -#: access/heap/vacuumlazy.c:672 +#: access/heap/vacuumlazy.c:1036 #, c-format msgid "removable cutoff: %u, which was %d XIDs old when operation ended\n" msgstr "Видалення вирізу: %u, це було %d XIDs старий при завершенні операції\n" -#: access/heap/vacuumlazy.c:679 +#: access/heap/vacuumlazy.c:1043 #, c-format msgid "new relfrozenxid: %u, which is %d XIDs ahead of previous value\n" msgstr "новий relfrozenxid: %u, що є %d XIDs попереду попереднього значення\n" -#: access/heap/vacuumlazy.c:687 +#: access/heap/vacuumlazy.c:1051 #, c-format msgid "new relminmxid: %u, which is %d MXIDs ahead of previous value\n" msgstr "новий relminmxid: %u, що становить %d MXIDs попереду попереднього значення\n" -#: access/heap/vacuumlazy.c:690 +#: access/heap/vacuumlazy.c:1054 +#, c-format +msgid "frozen: %u pages from table (%.2f%% of total) had % tuples frozen\n" +msgstr "заморожування: на %u сторінках таблиці (%.2f%% від загальної) було заморожено % кортежів\n" + +#: access/heap/vacuumlazy.c:1062 #, c-format -msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n" -msgstr "заморожено: %u сторінок з таблиці (%.2f%% з усього) має %lld заморожені рядків\n" +msgid "visibility map: %u pages set all-visible, %u pages set all-frozen (%u were all-visible)\n" +msgstr "карта видимості: %u сторінок позначено як повністю видимі, %u сторінок позначено як повністю заморожені (%u були повністю видимі)\n" -#: access/heap/vacuumlazy.c:698 +#: access/heap/vacuumlazy.c:1070 msgid "index scan not needed: " msgstr "сканування індексу не потрібне: " -#: access/heap/vacuumlazy.c:700 +#: access/heap/vacuumlazy.c:1072 msgid "index scan needed: " msgstr "сканування індексу потрібне: " -#: access/heap/vacuumlazy.c:702 +#: access/heap/vacuumlazy.c:1074 #, c-format -msgid "%u pages from table (%.2f%% of total) had %lld dead item identifiers removed\n" -msgstr "у %u сторінок з таблиці (%.2f%% від загальної кількості) було видалено %lld мертвих ідентифікаторів елементів\n" +msgid "%u pages from table (%.2f%% of total) had % dead item identifiers removed\n" +msgstr "з %u сторінок таблиці (%.2f%% від загальної) було вилучено % мертвих ідентифікаторів елементів\n" -#: access/heap/vacuumlazy.c:707 +#: access/heap/vacuumlazy.c:1079 msgid "index scan bypassed: " msgstr "сканування індексу пропущено: " -#: access/heap/vacuumlazy.c:709 +#: access/heap/vacuumlazy.c:1081 msgid "index scan bypassed by failsafe: " msgstr "сканування індексу безпечно пропущено: " -#: access/heap/vacuumlazy.c:711 +#: access/heap/vacuumlazy.c:1083 #, c-format -msgid "%u pages from table (%.2f%% of total) have %lld dead item identifiers\n" -msgstr "%u сторінок з таблиці (%.2f%% від загальної кількості) мають %lld мертвих ідентифікаторів елементів\n" +msgid "%u pages from table (%.2f%% of total) have % dead item identifiers\n" +msgstr "%u сторінок таблиці (%.2f%% від загальної) містять % мертвих ідентифікаторів елементів\n" -#: access/heap/vacuumlazy.c:726 +#: access/heap/vacuumlazy.c:1098 #, c-format msgid "index \"%s\": pages: %u in total, %u newly deleted, %u currently deleted, %u reusable\n" msgstr "індекс \"%s\": сторінок: %u загалом, %u нещодавно видалено, %u наразі видалено, %u для повторного використання\n" -#: access/heap/vacuumlazy.c:738 commands/analyze.c:794 +#: access/heap/vacuumlazy.c:1113 commands/analyze.c:817 +#, c-format +msgid "delay time: %.3f ms\n" +msgstr "час затримки: %.3f мс\n" + +#: access/heap/vacuumlazy.c:1121 commands/analyze.c:825 #, c-format msgid "I/O timings: read: %.3f ms, write: %.3f ms\n" msgstr "час вводу-виведення: читання %.3f мс, запис: %.3f мс\n" -#: access/heap/vacuumlazy.c:748 commands/analyze.c:797 +#: access/heap/vacuumlazy.c:1131 commands/analyze.c:828 #, c-format msgid "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n" msgstr "середня швидкість читання: %.3f МБ/с, середня швидкість запису: %.3f МБ/с\n" -#: access/heap/vacuumlazy.c:751 commands/analyze.c:799 +#: access/heap/vacuumlazy.c:1134 commands/analyze.c:830 #, c-format -msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n" -msgstr "використання буфера: %lld звернень, %lld промахів, %lld, брудних записів\n" +msgid "buffer usage: % hits, % reads, % dirtied\n" +msgstr "використання буферів: % попадань, % читань, % забруднень\n" -#: access/heap/vacuumlazy.c:756 +#: access/heap/vacuumlazy.c:1139 commands/analyze.c:835 #, c-format -msgid "WAL usage: %lld records, %lld full page images, %llu bytes\n" -msgstr "Використання WAL: %lld записів, %lld зображень на повну сторінку, %llu байтів\n" +msgid "WAL usage: % records, % full page images, % bytes, % buffers full\n" +msgstr "використання WAL: % записів, % повних образів сторінок, % байт, % повних буферів\n" -#: access/heap/vacuumlazy.c:760 commands/analyze.c:803 +#: access/heap/vacuumlazy.c:1144 commands/analyze.c:840 #, c-format msgid "system usage: %s" msgstr "використання системи: %s" -#: access/heap/vacuumlazy.c:2172 +#: access/heap/vacuumlazy.c:1432 +#, c-format +msgid "disabling eager scanning after freezing %u eagerly scanned blocks of relation \"%s.%s.%s\"" +msgstr "вимикання активного сканування після заморожування %u активно сканованих блоків відношення \"%s.%s.%s\"" + +#: access/heap/vacuumlazy.c:2821 #, c-format -msgid "table \"%s\": removed %lld dead item identifiers in %u pages" -msgstr "таблиця \"%s\": видалено %lld мертвих ідентифікаторів елементів в %u сторінках" +msgid "table \"%s\": removed % dead item identifiers in %u pages" +msgstr "таблиця \"%s\": вилучено % мертвих ідентифікаторів елементів на %u сторінках" -#: access/heap/vacuumlazy.c:2326 +#: access/heap/vacuumlazy.c:2982 #, c-format msgid "bypassing nonessential maintenance of table \"%s.%s.%s\" as a failsafe after %d index scans" msgstr "безпечне пропущення неістотного обслуговування таблиці \"%s.%s.%s\" після %d сканів індексу" -#: access/heap/vacuumlazy.c:2329 +#: access/heap/vacuumlazy.c:2985 #, c-format msgid "The table's relfrozenxid or relminmxid is too far in the past." msgstr "relfrozenxid або relminmxid таблиці занадто далеко в минулому." -#: access/heap/vacuumlazy.c:2330 +#: access/heap/vacuumlazy.c:2986 #, c-format msgid "Consider increasing configuration parameter \"maintenance_work_mem\" or \"autovacuum_work_mem\".\n" "You might also need to consider other ways for VACUUM to keep up with the allocation of transaction IDs." msgstr "Можливо, слід збільшити параметр конфігурації \"maintenance_work_mem\" або \"autovacuum_work_mem\".\n" "Можливо, вам також доведеться розглянути інші способи, щоб VACUUM не відставав від розподілу ідентифікаторів транзакцій." -#: access/heap/vacuumlazy.c:2592 +#: access/heap/vacuumlazy.c:3248 #, c-format msgid "\"%s\": stopping truncate due to conflicting lock request" msgstr "\"%s\": зупинка скорочення через конфліктний запит блокування" -#: access/heap/vacuumlazy.c:2662 +#: access/heap/vacuumlazy.c:3318 #, c-format msgid "table \"%s\": truncated %u to %u pages" msgstr "таблиця \"%s: скорочена від %u до %u сторінок" -#: access/heap/vacuumlazy.c:2724 +#: access/heap/vacuumlazy.c:3380 #, c-format msgid "table \"%s\": suspending truncate due to conflicting lock request" msgstr "таблиця \"%s: припинення скорочення через конфліктуючий запит блокування" -#: access/heap/vacuumlazy.c:2843 +#: access/heap/vacuumlazy.c:3499 #, c-format msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel" msgstr "вимкнення паралельної опції очищення на \"%s\" --- неможливо паралельно очистити тимчасові таблиці" -#: access/heap/vacuumlazy.c:3113 +#: access/heap/vacuumlazy.c:3768 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "під час сканування блоку %u зсувом %u відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3116 +#: access/heap/vacuumlazy.c:3771 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "у процесі сканування блоку %u відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3120 +#: access/heap/vacuumlazy.c:3775 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "у процесі сканування відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3128 +#: access/heap/vacuumlazy.c:3783 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "під час очищення блоку %u зсувом %u відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3131 +#: access/heap/vacuumlazy.c:3786 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "у процесі очищення блоку %u відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3135 +#: access/heap/vacuumlazy.c:3790 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "у процесі очищення відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3140 commands/vacuumparallel.c:1113 +#: access/heap/vacuumlazy.c:3795 commands/vacuumparallel.c:1126 #, c-format msgid "while vacuuming index \"%s\" of relation \"%s.%s\"" msgstr "у процесі очищення індексу \"%s\" відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3145 commands/vacuumparallel.c:1119 +#: access/heap/vacuumlazy.c:3800 commands/vacuumparallel.c:1132 #, c-format msgid "while cleaning up index \"%s\" of relation \"%s.%s\"" msgstr "у процесі очищення індексу \"%s\" відношення \"%s.%s\"" -#: access/heap/vacuumlazy.c:3151 +#: access/heap/vacuumlazy.c:3806 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "у процесі скорочення відношення \"%s.%s\" до %u блоків" @@ -1630,24 +1662,24 @@ msgstr "метод доступу \"%s\" не є типу %s" msgid "index access method \"%s\" does not have a handler" msgstr "для методу доступу індекса \"%s\" не заданий обробник" -#: access/index/genam.c:487 +#: access/index/genam.c:498 #, c-format msgid "transaction aborted during system catalog scan" msgstr "транзакцію перервано під час сканування системного каталогу" -#: access/index/genam.c:655 access/index/indexam.c:82 +#: access/index/genam.c:663 access/index/indexam.c:82 #, c-format msgid "cannot access index \"%s\" while it is being reindexed" msgstr "неможливо отримати доступ до індекса \"%s\" в процесі реіндексації" -#: access/index/indexam.c:203 catalog/objectaddress.c:1356 -#: commands/indexcmds.c:2878 commands/tablecmds.c:281 commands/tablecmds.c:305 -#: commands/tablecmds.c:17763 commands/tablecmds.c:19574 +#: access/index/indexam.c:203 catalog/objectaddress.c:1361 +#: commands/indexcmds.c:3016 commands/tablecmds.c:284 commands/tablecmds.c:308 +#: commands/tablecmds.c:19666 commands/tablecmds.c:21608 #, c-format msgid "\"%s\" is not an index" msgstr "\"%s\" не є індексом" -#: access/index/indexam.c:1028 +#: access/index/indexam.c:1075 #, c-format msgid "operator class %s has no options" msgstr "клас операторів %s без параметрів" @@ -1668,7 +1700,7 @@ msgid "This may be because of a non-immutable index expression." msgstr "Можливо, це викликано змінною природою індексного вираження." #: access/nbtree/nbtpage.c:157 access/nbtree/nbtpage.c:611 -#: parser/parse_utilcmd.c:2323 +#: parser/parse_utilcmd.c:2504 #, c-format msgid "index \"%s\" is not a btree" msgstr "індекс \"%s\" не є b-деревом" @@ -1688,75 +1720,75 @@ msgstr "індекс \"%s\" містить наполовину мертву в msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it." msgstr "Це могло статися через переривання VACUUM у версії 9.3 або старше перед оновленням. Будь ласка, виконайте REINDEX." -#: access/nbtree/nbtutils.c:5102 +#: access/nbtree/nbtutils.c:4233 #, c-format msgid "index row size %zu exceeds btree version %u maximum %zu for index \"%s\"" msgstr "розмір рядка індексу %zu перевищує максимальний розмір для версії %u btree %zu для індексу \"%s\"" -#: access/nbtree/nbtutils.c:5108 +#: access/nbtree/nbtutils.c:4238 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "Рядок індексу посилається на кортеж (%u,,%u) у відношенні \"%s\"." -#: access/nbtree/nbtutils.c:5112 +#: access/nbtree/nbtutils.c:4242 #, 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." msgstr "Значення, що займають більше, ніж 1/3 сторінки буферу, не можуть бути індексовані.\n" "Радимо застосувати індекс MD5-хеш значення або використати повнотекстове індексування." -#: access/nbtree/nbtvalidate.c:246 +#: access/nbtree/nbtvalidate.c:242 #, c-format msgid "operator family \"%s\" of access method %s is missing support function for types %s and %s" msgstr "сімейство операторів \"%s\" методу доступу %s не має опорної функції для типів %s та %s" #: access/sequence/sequence.c:75 access/table/table.c:145 -#: optimizer/util/plancat.c:144 +#: optimizer/util/plancat.c:145 #, c-format msgid "cannot open relation \"%s\"" msgstr "неможливо відкрити відношення \"%s\"" -#: access/spgist/spgutils.c:245 +#: access/spgist/spgutils.c:251 #, c-format msgid "compress method must be defined when leaf type is different from input type" msgstr "метод стиснення повинен бути визначений, коли тип листів відрізняється від вхідного типу" -#: access/spgist/spgutils.c:1028 +#: access/spgist/spgutils.c:1036 #, c-format msgid "SP-GiST inner tuple size %zu exceeds maximum %zu" msgstr "Внутрішній розмір кортежу SP-GiST %zu перевищує максимальний %zu" -#: access/spgist/spgvalidate.c:136 +#: access/spgist/spgvalidate.c:128 #, c-format msgid "SP-GiST leaf data type %s does not match declared type %s" msgstr "тип даних кінцевого вузла SP-GiST %s не відповідає оголошеному типу %s" -#: access/spgist/spgvalidate.c:302 +#: access/spgist/spgvalidate.c:294 #, c-format msgid "operator family \"%s\" of access method %s is missing support function %d for type %s" msgstr "сімейство операторів \"%s\" методу доступу %s не має опорної функції для типів %d для типу %s" -#: access/table/tableam.c:255 +#: access/table/tableam.c:256 #, c-format msgid "tid (%u, %u) is not valid for relation \"%s\"" msgstr "невірний tid (%u, %u) для відношення \"%s\"" -#: access/table/tableamapi.c:109 +#: access/table/tableamapi.c:106 #, c-format msgid "\"%s\" cannot be empty." msgstr "\"%s\" не може бути пустим." -#: access/table/tableamapi.c:116 access/transam/xlogrecovery.c:4858 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4912 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "\"%s\" занадто довгий (максимум %d символів)." -#: access/table/tableamapi.c:139 +#: access/table/tableamapi.c:136 #, c-format msgid "table access method \"%s\" does not exist" msgstr "табличного методу доступу \"%s\" не існує" -#: access/table/tableamapi.c:144 +#: access/table/tableamapi.c:141 #, c-format msgid "Table access method \"%s\" does not exist." msgstr "Табличного методу доступу \"%s\" не існує." @@ -1786,13 +1818,13 @@ msgstr "Переконайтесь, що в конфігурації основ msgid "Make sure the configuration parameter \"%s\" is set." msgstr "Переконайтесь, що в конфігурації встановлений параметр \"%s\"." -#: access/transam/multixact.c:1091 +#: access/transam/multixact.c:1179 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database \"%s\"" msgstr "база даних не приймає команди, які призначають нові MultiXactId, щоб уникнути втрати даних через зациклення у базі даних \"%s\"" -#: access/transam/multixact.c:1093 access/transam/multixact.c:1100 -#: access/transam/multixact.c:1124 access/transam/multixact.c:1133 +#: access/transam/multixact.c:1181 access/transam/multixact.c:1188 +#: access/transam/multixact.c:1212 access/transam/multixact.c:1221 #: access/transam/varsup.c:158 access/transam/varsup.c:165 #, c-format msgid "Execute a database-wide VACUUM in that database.\n" @@ -1800,12 +1832,12 @@ msgid "Execute a database-wide VACUUM in that database.\n" msgstr "Виконати очистку (VACUUM) по всій базі даних.\n" "Можливо, вам доведеться зафіксувати, відкотити назад старі підготовані транзакції або видалити застарілі слоти реплікації." -#: access/transam/multixact.c:1098 +#: access/transam/multixact.c:1186 #, c-format msgid "database is not accepting commands that assign new MultiXactIds to avoid wraparound data loss in database with OID %u" msgstr "база даних не приймає команди, які призначають нові MultiXactId, щоб уникнути втрати даних через зациклення у базі даних з OID %u" -#: access/transam/multixact.c:1119 access/transam/multixact.c:2474 +#: access/transam/multixact.c:1207 access/transam/multixact.c:2552 #, 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" @@ -1814,7 +1846,7 @@ msgstr[1] "бази даних \"%s\" повинні бути очищені (va msgstr[2] "баз даних \"%s\" повинні бути очищені (vacuumed) перед тим, як більшість MultiXactIds буде використано (%u)" msgstr[3] "баз даних \"%s\" повинні бути очищені (vacuumed) перед тим, як більшість MultiXactId буде використано (%u)" -#: access/transam/multixact.c:1128 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1216 access/transam/multixact.c:2561 #, 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" @@ -1823,12 +1855,12 @@ msgstr[1] "бази даних з OID %u повинні бути очищені msgstr[2] "баз даних з OID %u повинні бути очищені (vacuumed), перед тим як більшість MultiXactIds буде використано (%u)" msgstr[3] "баз даних з OID %u повинні бути очищені (vacuumed), перед тим як більшість MultiXactId буде використано (%u)" -#: access/transam/multixact.c:1189 +#: access/transam/multixact.c:1280 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "перевищено ліміт членів мультитранзакції" -#: access/transam/multixact.c:1190 +#: access/transam/multixact.c:1281 #, 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." @@ -1837,12 +1869,12 @@ msgstr[1] "Мультитранзакція створена цією коман msgstr[2] "Мультитранзакція створена цією командою з %u членів, але місця вистачає лише для %u членів." msgstr[3] "Мультитранзакція створена цією командою з %u членів, але місця вистачає лише для %u членів." -#: access/transam/multixact.c:1195 +#: access/transam/multixact.c:1286 #, 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) по всій базі даних з OID %u зі зменшенням значення \"vacuum_multixact_freeze_min_age\" та \"vacuum_multixact_freeze_table_age settings\"." -#: access/transam/multixact.c:1226 +#: access/transam/multixact.c:1317 #, 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" @@ -1851,83 +1883,88 @@ msgstr[1] "база даних з OID %u повинна бути очищена msgstr[2] "база даних з OID %u повинна бути очищена перед використанням додаткових членів мультитранзакції (%d)" msgstr[3] "база даних з OID %u повинна бути очищена перед використанням додаткових членів мультитранзакції (%d)" -#: access/transam/multixact.c:1231 +#: access/transam/multixact.c:1322 #, 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) по всій цій базі даних зі зменшенням значення \"vacuum_multixact_freeze_min_age\" та \"vacuum_multixact_freeze_table_age\" settings." -#: access/transam/multixact.c:1371 +#: access/transam/multixact.c:1461 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u припинив існування -- очевидно відбулося зациклення" -#: access/transam/multixact.c:1377 +#: access/transam/multixact.c:1467 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "MultiXactId %u ще не був створений -- очевидно відбулося зациклення" -#: access/transam/multixact.c:2479 access/transam/multixact.c:2488 +#: access/transam/multixact.c:1560 +#, c-format +msgid "MultiXact %u has invalid next offset" +msgstr "У MultiXact %u є недійсне наступне зміщення" + +#: access/transam/multixact.c:2557 access/transam/multixact.c:2566 #, c-format msgid "To avoid MultiXactId assignment failures, 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 "Щоб уникнути збоїв у призначенні MultiXactId, виконайте VACUUM для всієї бази даних у цій базі даних.\n" "Вам також може знадобитися зафіксувати або відкотити старі підготовлені транзакції, або видалити застарілі слоти реплікації." -#: access/transam/multixact.c:2767 +#: access/transam/multixact.c:2845 #, c-format msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk" msgstr "Захист від зациклення члену MultiXact вимкнена, оскільки найстаріша контрольна точка MultiXact %u не існує на диску" -#: access/transam/multixact.c:2789 +#: access/transam/multixact.c:2867 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "Захист від зациклення члену MultiXact наразі ввімкнена" -#: access/transam/multixact.c:3180 +#: access/transam/multixact.c:3258 #, c-format msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" msgstr "найстарішу MultiXact %u не знайдено, найновіша MultiXact %u, скорочення пропускається" -#: access/transam/multixact.c:3198 +#: access/transam/multixact.c:3276 #, c-format msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation" msgstr "неможливо виконати скорочення до MultiXact %u, оскільки її не існує на диску, скорочення пропускається" -#: access/transam/multixact.c:3517 +#: access/transam/multixact.c:3621 #, c-format msgid "invalid MultiXactId: %u" msgstr "неприпустимий MultiXactId: %u" -#: access/transam/parallel.c:731 access/transam/parallel.c:850 +#: access/transam/parallel.c:759 access/transam/parallel.c:878 #, c-format msgid "parallel worker failed to initialize" msgstr "не вдалося виконати ініціалізацію паралельного виконавця" -#: access/transam/parallel.c:732 access/transam/parallel.c:851 +#: access/transam/parallel.c:760 access/transam/parallel.c:879 #, c-format msgid "More details may be available in the server log." msgstr "Більше деталей можуть бути доступні в журналі серверу." -#: access/transam/parallel.c:912 +#: access/transam/parallel.c:940 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "postmaster завершився під час паралельної транзакції" -#: access/transam/parallel.c:1099 +#: access/transam/parallel.c:1127 #, c-format msgid "lost connection to parallel worker" msgstr "втрачено зв'язок з паралельним виконавцем" -#: access/transam/parallel.c:1155 access/transam/parallel.c:1157 +#: access/transam/parallel.c:1183 access/transam/parallel.c:1185 msgid "parallel worker" msgstr "паралельний виконавець" -#: access/transam/parallel.c:1327 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1355 replication/logical/applyparallelworker.c:897 #, c-format msgid "could not map dynamic shared memory segment" msgstr "не вдалося відобразити динамічний сегмент спільної пам'яті" -#: access/transam/parallel.c:1332 replication/logical/applyparallelworker.c:896 +#: access/transam/parallel.c:1360 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "неприпустиме магічне число в динамічному сегменті спільної пам'яті" @@ -1990,63 +2027,63 @@ msgstr "зареєстрований користувацький менедже #: access/transam/slru.c:361 #, c-format -msgid "\"%s\" must be a multiple of %d" -msgstr "\"%s\" має бути кратним %d" +msgid "\"%s\" must be a multiple of %d." +msgstr "\"%s\" має бути кратним %d." -#: access/transam/slru.c:830 +#: access/transam/slru.c:833 #, c-format msgid "file \"%s\" doesn't exist, reading as zeroes" msgstr "файл \"%s\" не існує, вважається нульовим" -#: access/transam/slru.c:1059 access/transam/slru.c:1065 -#: access/transam/slru.c:1073 access/transam/slru.c:1078 -#: access/transam/slru.c:1085 access/transam/slru.c:1090 -#: access/transam/slru.c:1097 access/transam/slru.c:1104 +#: access/transam/slru.c:1062 access/transam/slru.c:1068 +#: access/transam/slru.c:1076 access/transam/slru.c:1081 +#: access/transam/slru.c:1088 access/transam/slru.c:1093 +#: access/transam/slru.c:1100 access/transam/slru.c:1107 #, c-format msgid "could not access status of transaction %u" msgstr "не можливо отримати статус транзакції %u" -#: access/transam/slru.c:1060 +#: access/transam/slru.c:1063 #, c-format msgid "Could not open file \"%s\": %m." msgstr "Не можливо відкрити файл \"%s\": %m." -#: access/transam/slru.c:1066 +#: access/transam/slru.c:1069 #, c-format msgid "Could not seek in file \"%s\" to offset %d: %m." msgstr "Не вдалося знайти у файлі \"%s\" до зсуву %d: %m." -#: access/transam/slru.c:1074 +#: access/transam/slru.c:1077 #, c-format msgid "Could not read from file \"%s\" at offset %d: %m." msgstr "Не вдалося прочитати з файлу \"%s\" по зсуву %d: %m." -#: access/transam/slru.c:1079 +#: access/transam/slru.c:1082 #, c-format msgid "Could not read from file \"%s\" at offset %d: read too few bytes." msgstr "Не вдалося прочитати з файлу \"%s\" по зсуву %d: прочитано занадто мало байтів." -#: access/transam/slru.c:1086 +#: access/transam/slru.c:1089 #, c-format msgid "Could not write to file \"%s\" at offset %d: %m." msgstr "Не вдалося записати до файлу \"%s\" зсув %d: %m." -#: access/transam/slru.c:1091 +#: access/transam/slru.c:1094 #, c-format msgid "Could not write to file \"%s\" at offset %d: wrote too few bytes." msgstr "Не вдалося записати до файлу \"%s\" зсув %d: записано занадто мало байтів." -#: access/transam/slru.c:1098 +#: access/transam/slru.c:1101 #, c-format msgid "Could not fsync file \"%s\": %m." msgstr "Не вдалося синхронізувати файл \"%s\": %m." -#: access/transam/slru.c:1105 +#: access/transam/slru.c:1108 #, c-format msgid "Could not close file \"%s\": %m." msgstr "Не можливо закрити файл \"%s\": %m." -#: access/transam/slru.c:1431 +#: access/transam/slru.c:1434 #, c-format msgid "could not truncate directory \"%s\": apparent wraparound" msgstr "не вдалося спустошити каталог \"%s\": очевидно сталося зациклення" @@ -2111,12 +2148,12 @@ msgstr "Встановіть ненульове значення парамет msgid "transaction identifier \"%s\" is already in use" msgstr "ідентифікатор транзакції \"%s\" вже використовується" -#: access/transam/twophase.c:404 access/transam/twophase.c:2540 +#: access/transam/twophase.c:404 access/transam/twophase.c:2530 #, c-format msgid "maximum number of prepared transactions reached" msgstr "досягнуто максимального числа підготованих транзакцій" -#: access/transam/twophase.c:405 access/transam/twophase.c:2541 +#: access/transam/twophase.c:405 access/transam/twophase.c:2531 #, c-format msgid "Increase \"max_prepared_transactions\" (currently %d)." msgstr "Збільшіть \"max_prepared_transactions\" (наразі %d)." @@ -2151,12 +2188,12 @@ msgstr "З'єднайтесь з базою даних, де була підго msgid "prepared transaction with identifier \"%s\" does not exist" msgstr "підготовленої транзакції з ідентифікатором \"%s\" не існує" -#: access/transam/twophase.c:1190 +#: access/transam/twophase.c:1174 #, c-format msgid "two-phase state file maximum length exceeded" msgstr "перевищено граничний розмір файла у 2-фазовому стані" -#: access/transam/twophase.c:1345 +#: access/transam/twophase.c:1329 #, c-format msgid "incorrect size of file \"%s\": %lld byte" msgid_plural "incorrect size of file \"%s\": %lld bytes" @@ -2165,59 +2202,59 @@ msgstr[1] "неправильний розмір файлу \"%s\": %lld бай msgstr[2] "неправильний розмір файлу \"%s\": %lld байтів" msgstr[3] "неправильний розмір файлу \"%s\": %lld байтів" -#: access/transam/twophase.c:1354 +#: access/transam/twophase.c:1338 #, c-format msgid "incorrect alignment of CRC offset for file \"%s\"" msgstr "неправильне вирівнювання зсуву CRC для файлу \"%s\"" -#: access/transam/twophase.c:1372 +#: access/transam/twophase.c:1356 #, c-format msgid "could not read file \"%s\": read %d of %lld" msgstr "не вдалося прочитати файл \"%s\": прочитано %d з %lld" -#: access/transam/twophase.c:1387 +#: access/transam/twophase.c:1371 #, c-format msgid "invalid magic number stored in file \"%s\"" msgstr "неприпустиме магічне число, збережене у файлі\"%s\"" -#: access/transam/twophase.c:1393 +#: access/transam/twophase.c:1377 #, c-format msgid "invalid size stored in file \"%s\"" msgstr "неприпустимий розмір, збережений у файлі \"%s\"" -#: access/transam/twophase.c:1405 +#: access/transam/twophase.c:1389 #, c-format msgid "calculated CRC checksum does not match value stored in file \"%s\"" msgstr "обчислена контрольна сума CRC не відповідає значенню, збереженому у файлі \"%s\"" -#: access/transam/twophase.c:1435 access/transam/xlogrecovery.c:565 -#: postmaster/walsummarizer.c:936 replication/logical/logical.c:211 -#: replication/walsender.c:836 +#: access/transam/twophase.c:1419 access/transam/xlogrecovery.c:572 +#: postmaster/walsummarizer.c:939 replication/logical/logical.c:213 +#: replication/walsender.c:826 #, c-format msgid "Failed while allocating a WAL reading processor." msgstr "Не вдалося розмістити обробник журналу транзакцій." -#: access/transam/twophase.c:1445 +#: access/transam/twophase.c:1429 #, c-format msgid "could not read two-phase state from WAL at %X/%X: %s" msgstr "не вдалося прочитати 2-фазовий стан з WAL при %X/%X: %s" -#: access/transam/twophase.c:1450 +#: access/transam/twophase.c:1434 #, c-format msgid "could not read two-phase state from WAL at %X/%X" msgstr "не вдалося прочитати 2-фазовий стан з WAL при %X/%X" -#: access/transam/twophase.c:1458 +#: access/transam/twophase.c:1442 #, c-format msgid "expected two-phase state data is not present in WAL at %X/%X" msgstr "очікувані дані 2-фазного стану відсутні в WAL при %X/%X" -#: access/transam/twophase.c:1754 +#: access/transam/twophase.c:1744 #, c-format msgid "could not recreate file \"%s\": %m" msgstr "не вдалося відтворити файл \"%s\": %m" -#: access/transam/twophase.c:1881 +#: access/transam/twophase.c:1871 #, c-format 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" @@ -2226,52 +2263,52 @@ msgstr[1] "%u 2-фазовий стан файлів був записаний msgstr[2] "%u 2-фазовий стан файлів був записаний завдяки довготривалим підготовленим транзакціям" msgstr[3] "%u 2-фазовий стан файлів був записаний завдяки довготривалим підготовленим транзакціям" -#: access/transam/twophase.c:2116 +#: access/transam/twophase.c:2106 #, c-format msgid "recovering prepared transaction %u from shared memory" msgstr "відновлення підготовленої транзакції %u із спільної пам'яті" -#: access/transam/twophase.c:2209 +#: access/transam/twophase.c:2199 #, c-format msgid "removing stale two-phase state file for transaction %u" msgstr "видалення застарілого файла 2-фазового стану для транзакції %u" -#: access/transam/twophase.c:2216 +#: access/transam/twophase.c:2206 #, c-format msgid "removing stale two-phase state from memory for transaction %u" msgstr "видалення з пам'яті застарілого 2-фазового стану для транзакції %u" -#: access/transam/twophase.c:2229 +#: access/transam/twophase.c:2219 #, c-format msgid "removing future two-phase state file for transaction %u" msgstr "видалення файлу майбутнього 2-фазового стану для транзакції %u" -#: access/transam/twophase.c:2236 +#: access/transam/twophase.c:2226 #, c-format msgid "removing future two-phase state from memory for transaction %u" msgstr "видалення з пам'яті майбутнього 2-фазового стану для транзакції %u" -#: access/transam/twophase.c:2261 +#: access/transam/twophase.c:2251 #, c-format msgid "corrupted two-phase state file for transaction %u" msgstr "пошкоджений файл двофазного стану для транзакції %u" -#: access/transam/twophase.c:2266 +#: access/transam/twophase.c:2256 #, c-format msgid "corrupted two-phase state in memory for transaction %u" msgstr "пошкоджена пам'ять двофазного стану для транзакції %u" -#: access/transam/twophase.c:2523 +#: access/transam/twophase.c:2513 #, c-format msgid "could not recover two-phase state file for transaction %u" msgstr "не вдалося відновити файл 2-фазового стану для транзакції %u" -#: access/transam/twophase.c:2525 +#: access/transam/twophase.c:2515 #, c-format msgid "Two-phase state file has been found in WAL record %X/%X, but this transaction has already been restored from disk." msgstr "Файл 2-фазового стану був знайдений в запису WAL %X/%X, але ця транзакція вже відновлена з диску." -#: access/transam/twophase.c:2533 storage/file/fd.c:514 utils/fmgr/dfmgr.c:209 +#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:214 #, c-format msgid "could not access file \"%s\": %m" msgstr "немає доступу до файлу \"%s\": %m" @@ -2311,292 +2348,246 @@ msgid "To avoid XID assignment failures, execute a database-wide VACUUM in that msgstr "Щоб уникнути збоїв у призначенні XID, виконайте VACUUM для всієї бази даних у цій базі даних.\n" "Вам також може знадобитися зафіксувати або відкотити старі підготовлені транзакції, або видалити застарілі слоти реплікації." -#: access/transam/xact.c:649 +#: access/transam/xact.c:652 #, c-format msgid "cannot assign transaction IDs during a parallel operation" msgstr "не можна призначити ідентифікатори транзакцій під час паралельних операцій" -#: access/transam/xact.c:840 +#: access/transam/xact.c:843 #, c-format msgid "cannot modify data in a parallel worker" msgstr "неможливо змінити дані паралельного виконавця" -#: access/transam/xact.c:1115 +#: access/transam/xact.c:1118 #, c-format msgid "cannot start commands during a parallel operation" msgstr "неможливо запустити команди під час паралельних операцій" -#: access/transam/xact.c:1123 +#: access/transam/xact.c:1126 #, c-format msgid "cannot have more than 2^32-2 commands in a transaction" msgstr "в одній транзакції не може бути більше 2^32-2 команд" -#: access/transam/xact.c:1664 +#: access/transam/xact.c:1695 #, c-format msgid "maximum number of committed subtransactions (%d) exceeded" msgstr "перевищено межу числа зафіксованих підтранзакцій (%d)" -#: access/transam/xact.c:2561 +#: access/transam/xact.c:2616 #, c-format msgid "cannot PREPARE a transaction that has operated on temporary objects" msgstr "неможливо виконати PREPARE для транзакції, що здійснювалася на тимчасових об'єктах" -#: access/transam/xact.c:2571 +#: access/transam/xact.c:2626 #, c-format msgid "cannot PREPARE a transaction that has exported snapshots" msgstr "не можна виконати PREPARE для транзакції, яка має експортовані знімки" #. translator: %s represents an SQL statement name -#: access/transam/xact.c:3593 +#: access/transam/xact.c:3657 #, c-format msgid "%s cannot run inside a transaction block" msgstr "%s неможливо запустити всередині блоку транзакції" #. translator: %s represents an SQL statement name -#: access/transam/xact.c:3603 +#: access/transam/xact.c:3667 #, c-format msgid "%s cannot run inside a subtransaction" msgstr "%s неможливо запустити всередині підтранзакції" #. translator: %s represents an SQL statement name -#: access/transam/xact.c:3613 -#, c-format -msgid "%s cannot be executed within a pipeline" -msgstr "%s не можна використовувати в межах конвеєра" - -#. translator: %s represents an SQL statement name -#: access/transam/xact.c:3623 +#: access/transam/xact.c:3677 #, c-format msgid "%s cannot be executed from a function" msgstr "%s неможливо виконати з функції" #. translator: %s represents an SQL statement name -#: access/transam/xact.c:3694 access/transam/xact.c:4019 -#: access/transam/xact.c:4098 access/transam/xact.c:4221 -#: access/transam/xact.c:4372 access/transam/xact.c:4441 -#: access/transam/xact.c:4552 +#: access/transam/xact.c:3748 access/transam/xact.c:4070 +#: access/transam/xact.c:4149 access/transam/xact.c:4272 +#: access/transam/xact.c:4423 access/transam/xact.c:4492 +#: access/transam/xact.c:4603 #, c-format msgid "%s can only be used in transaction blocks" msgstr "%s може використовуватися тільки в блоках транзакції" -#: access/transam/xact.c:3905 +#: access/transam/xact.c:3956 #, c-format msgid "there is already a transaction in progress" msgstr "транзакція вже виконується" -#: access/transam/xact.c:4024 access/transam/xact.c:4103 -#: access/transam/xact.c:4226 +#: access/transam/xact.c:4075 access/transam/xact.c:4154 +#: access/transam/xact.c:4277 #, c-format msgid "there is no transaction in progress" msgstr "немає незавершеної транзакції" -#: access/transam/xact.c:4114 +#: access/transam/xact.c:4165 #, c-format msgid "cannot commit during a parallel operation" msgstr "не можна фіксувати транзакції під час паралельних операцій" -#: access/transam/xact.c:4237 +#: access/transam/xact.c:4288 #, c-format msgid "cannot abort during a parallel operation" msgstr "не можна перервати під час паралельних операцій" -#: access/transam/xact.c:4336 +#: access/transam/xact.c:4387 #, c-format msgid "cannot define savepoints during a parallel operation" msgstr "не можна визначати точки збереження під час паралельних операцій" -#: access/transam/xact.c:4423 +#: access/transam/xact.c:4474 #, c-format msgid "cannot release savepoints during a parallel operation" msgstr "не можна вивільняти точки збереження під час паралельних транзакцій" -#: access/transam/xact.c:4433 access/transam/xact.c:4484 -#: access/transam/xact.c:4544 access/transam/xact.c:4593 +#: access/transam/xact.c:4484 access/transam/xact.c:4535 +#: access/transam/xact.c:4595 access/transam/xact.c:4644 #, c-format msgid "savepoint \"%s\" does not exist" msgstr "точка збереження \"%s\" не існує" -#: access/transam/xact.c:4490 access/transam/xact.c:4599 +#: access/transam/xact.c:4541 access/transam/xact.c:4650 #, c-format msgid "savepoint \"%s\" does not exist within current savepoint level" msgstr "точка збереження \"%s\" не існує на поточному рівні збереження точок" -#: access/transam/xact.c:4532 +#: access/transam/xact.c:4583 #, c-format msgid "cannot rollback to savepoints during a parallel operation" msgstr "не можна відкотити назад до точки збереження під час паралельних операцій" -#: access/transam/xact.c:5376 +#: access/transam/xact.c:5438 #, c-format msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "в одній транзакції не може бути більше 2^32-1 підтранзакцій" -#: access/transam/xlog.c:1541 +#: access/transam/xlog.c:1545 #, c-format msgid "request to flush past end of generated WAL; request %X/%X, current position %X/%X" msgstr "запит на очищення минулого кінця згенерованого WAL; запит %X/%X, поточна позиція %X/%X" -#: access/transam/xlog.c:1768 +#: access/transam/xlog.c:1772 #, c-format msgid "cannot read past end of generated WAL: requested %X/%X, current position %X/%X" msgstr "не вдалося прочитати останній кінець згенерованого WAL: запит %X/%X, поточна позиція %X/%X" -#: access/transam/xlog.c:2209 access/transam/xlog.c:4500 +#: access/transam/xlog.c:2219 access/transam/xlog.c:4548 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "Розмір сегмента WAL повинен бути степенем двійки від 1 МБ до 1 ГБ." -#: access/transam/xlog.c:2227 -#, c-format -msgid "\"%s\" must be set to -1 during binary upgrade mode." -msgstr "\"%s\" має бути встановлено на -1 під час двійкового режиму оновлення." - -#: access/transam/xlog.c:2476 +#: access/transam/xlog.c:2455 #, c-format msgid "could not write to log file \"%s\" at offset %u, length %zu: %m" msgstr "не вдалося записати до файлу журналу подій \"%s\" при зсуві %u, довжина %zu: %m" -#: access/transam/xlog.c:3738 access/transam/xlogutils.c:831 -#: replication/walsender.c:3045 +#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 +#: replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "запитуваний сегмент WAL %s вже видалений" -#: access/transam/xlog.c:4060 +#: access/transam/xlog.c:4063 #, c-format msgid "could not rename file \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\": %m" -#: access/transam/xlog.c:4103 access/transam/xlog.c:4114 -#: access/transam/xlog.c:4135 +#: access/transam/xlog.c:4106 access/transam/xlog.c:4117 +#: access/transam/xlog.c:4138 #, c-format msgid "required WAL directory \"%s\" does not exist" msgstr "необхідний каталог WAL \"%s\" не існує" -#: access/transam/xlog.c:4120 access/transam/xlog.c:4141 +#: access/transam/xlog.c:4123 access/transam/xlog.c:4144 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "створюється відсутній каталог WAL \"%s\"" -#: access/transam/xlog.c:4124 access/transam/xlog.c:4144 -#: commands/dbcommands.c:3259 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 +#: commands/dbcommands.c:3302 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "не вдалося створити відстуній каталог \"%s\": %m" -#: access/transam/xlog.c:4211 +#: access/transam/xlog.c:4214 #, c-format msgid "could not generate secret authorization token" msgstr "не вдалося згенерувати секретний токен для авторизації" -#: access/transam/xlog.c:4362 access/transam/xlog.c:4372 -#: access/transam/xlog.c:4398 access/transam/xlog.c:4406 -#: access/transam/xlog.c:4414 access/transam/xlog.c:4420 -#: access/transam/xlog.c:4428 access/transam/xlog.c:4436 -#: access/transam/xlog.c:4444 access/transam/xlog.c:4452 -#: access/transam/xlog.c:4460 access/transam/xlog.c:4468 -#: access/transam/xlog.c:4478 access/transam/xlog.c:4486 -#: utils/init/miscinit.c:1758 +#: access/transam/xlog.c:4392 access/transam/xlog.c:4402 +#: access/transam/xlog.c:4428 access/transam/xlog.c:4438 +#: access/transam/xlog.c:4448 access/transam/xlog.c:4454 +#: access/transam/xlog.c:4464 access/transam/xlog.c:4474 +#: access/transam/xlog.c:4484 access/transam/xlog.c:4494 +#: access/transam/xlog.c:4504 access/transam/xlog.c:4514 +#: access/transam/xlog.c:4526 access/transam/xlog.c:4534 +#: utils/init/miscinit.c:1818 #, c-format msgid "database files are incompatible with server" msgstr "файли бази даних є несумісними з даним сервером" -#: access/transam/xlog.c:4363 +#: access/transam/xlog.c:4393 #, 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)." -#: access/transam/xlog.c:4367 +#: access/transam/xlog.c:4397 #, c-format msgid "This could be a problem of mismatched byte ordering. It looks like you need to initdb." msgstr "Можливо, проблема викликана різним порядком байту. Здається, вам потрібно виконати команду \"initdb\"." -#: access/transam/xlog.c:4373 +#: access/transam/xlog.c:4403 #, 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." -#: access/transam/xlog.c:4376 access/transam/xlog.c:4402 -#: access/transam/xlog.c:4410 access/transam/xlog.c:4416 +#: access/transam/xlog.c:4406 access/transam/xlog.c:4434 +#: access/transam/xlog.c:4444 access/transam/xlog.c:4450 #, c-format msgid "It looks like you need to initdb." msgstr "Здається, Вам треба виконати initdb." -#: access/transam/xlog.c:4388 +#: access/transam/xlog.c:4418 #, c-format msgid "incorrect checksum in control file" msgstr "помилка контрольної суми у файлі pg_control" -#: access/transam/xlog.c:4399 -#, 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." - -#: access/transam/xlog.c:4407 +#. translator: %s is a variable name and %d is its value +#: access/transam/xlog.c:4430 access/transam/xlog.c:4440 +#: access/transam/xlog.c:4456 access/transam/xlog.c:4466 +#: access/transam/xlog.c:4476 access/transam/xlog.c:4486 +#: access/transam/xlog.c:4496 access/transam/xlog.c:4506 +#: access/transam/xlog.c:4516 #, c-format -msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d." -msgstr "Кластер бази даних було ініціалізовано з MAXALIGN %d, але сервер було скомпільовано з MAXALIGN %d." +msgid "The database cluster was initialized with %s %d, but the server was compiled with %s %d." +msgstr "Кластер баз даних було ініціалізовано з %s %d, а сервер було зібрано з %s %d." -#: access/transam/xlog.c:4415 +#: access/transam/xlog.c:4449 #, c-format msgid "The database cluster appears to use a different floating-point number format than the server executable." msgstr "Здається, в кластері баз даних і в програмі сервера використовуються різні формати чисел з плаваючою точкою." -#: access/transam/xlog.c:4421 -#, c-format -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:4424 access/transam/xlog.c:4432 -#: access/transam/xlog.c:4440 access/transam/xlog.c:4448 -#: access/transam/xlog.c:4456 access/transam/xlog.c:4464 -#: access/transam/xlog.c:4472 access/transam/xlog.c:4481 -#: access/transam/xlog.c:4489 +#: access/transam/xlog.c:4460 access/transam/xlog.c:4470 +#: access/transam/xlog.c:4480 access/transam/xlog.c:4490 +#: access/transam/xlog.c:4500 access/transam/xlog.c:4510 +#: access/transam/xlog.c:4520 access/transam/xlog.c:4529 +#: access/transam/xlog.c:4537 #, c-format msgid "It looks like you need to recompile or initdb." msgstr "Здається, вам потрібно перекомпілювати сервер або виконати initdb." -#: access/transam/xlog.c:4429 -#, c-format -msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d." -msgstr "Кластер бази даних було ініціалізовано з ELSEG_SIZE %d, але сервер було скомпільовано з ELSEG_SIZE %d." - -#: access/transam/xlog.c:4437 -#, 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." - -#: access/transam/xlog.c:4445 -#, c-format -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:4453 -#, 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." - -#: access/transam/xlog.c:4461 -#, 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." - -#: access/transam/xlog.c:4469 -#, c-format -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:4479 +#: access/transam/xlog.c:4527 #, 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." -#: access/transam/xlog.c:4487 +#: access/transam/xlog.c:4535 #, 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." -#: access/transam/xlog.c:4496 +#: access/transam/xlog.c:4544 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -2605,292 +2596,284 @@ msgstr[1] "невірний розмір сегмента WAL у файлі ке msgstr[2] "невірний розмір сегмента WAL у файлі керування (%d байтів)" msgstr[3] "невірний розмір сегмента WAL у файлі керування (%d байтів)" -#: access/transam/xlog.c:4509 -#, c-format -msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" -msgstr "\"min_wal_size\" має бути мінімум у 2 рази більше, ніж \"wal_segment_size\"" - -#: access/transam/xlog.c:4513 +#. translator: both %s are GUC names +#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 #, c-format -msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\"" -msgstr "\"max_wal_size\" має бути мінімум у 2 рази більше, ніж \"wal_segment_size\"" +msgid "\"%s\" must be at least twice \"%s\"" +msgstr "\"%s\" має бути щонайменше в двічі більше ніж \"%s\"" -#: access/transam/xlog.c:4661 catalog/namespace.c:4681 -#: commands/tablespace.c:1210 commands/user.c:2529 commands/variable.c:72 -#: replication/slot.c:2429 tcop/postgres.c:3715 utils/error/elog.c:2247 +#: access/transam/xlog.c:4726 catalog/namespace.c:4699 +#: commands/tablespace.c:1210 commands/user.c:2531 commands/variable.c:72 +#: replication/slot.c:2764 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "Помилка синтаксису у списку." -#: access/transam/xlog.c:4707 commands/user.c:2545 commands/variable.c:173 -#: tcop/postgres.c:3731 utils/error/elog.c:2273 +#: access/transam/xlog.c:4772 commands/user.c:2547 commands/variable.c:173 +#: tcop/postgres.c:3642 utils/error/elog.c:2283 #, c-format msgid "Unrecognized key word: \"%s\"." msgstr "Нерозпізнане ключове слово: \"%s\"." -#: access/transam/xlog.c:5128 +#: access/transam/xlog.c:5195 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "не вдалося записати початкове завантаження випереджувального журналювання: %m" -#: access/transam/xlog.c:5136 +#: access/transam/xlog.c:5203 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "не вдалося скинути на диск початкове завантаження випереджувального журналювання: %m" -#: access/transam/xlog.c:5142 +#: access/transam/xlog.c:5209 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "не вдалося закрити початкове завантаження випереджувального журналювання: %m" -#: access/transam/xlog.c:5367 +#: access/transam/xlog.c:5434 #, c-format msgid "WAL was generated with \"wal_level=minimal\", cannot continue recovering" msgstr "WAL був створений з \"wal_level=minimal\", неможливо продовжити відновлення" -#: access/transam/xlog.c:5368 +#: access/transam/xlog.c:5435 #, c-format msgid "This happens if you temporarily set \"wal_level=minimal\" on the server." msgstr "Це трапляється, якщо ви тимчасово встановили \"wal_level=minimal\" на сервері." -#: access/transam/xlog.c:5369 +#: access/transam/xlog.c:5436 #, c-format msgid "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." msgstr "Використовуйте резервну копію, зроблену після встановлення значення wal_level, що перевищує мінимальний рівень." -#: access/transam/xlog.c:5434 +#: access/transam/xlog.c:5501 #, c-format msgid "control file contains invalid checkpoint location" msgstr "контрольний файл містить недійсне розташування контрольної точки" -#: access/transam/xlog.c:5445 +#: access/transam/xlog.c:5512 #, c-format msgid "database system was shut down at %s" msgstr "система бази даних була вимкнена %s" -#: access/transam/xlog.c:5451 +#: access/transam/xlog.c:5518 #, c-format msgid "database system was shut down in recovery at %s" msgstr "система бази даних завершила роботу у процесі відновлення %s" -#: access/transam/xlog.c:5457 +#: access/transam/xlog.c:5524 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "завершення роботи бази даних було перервано; останній момент роботи %s" -#: access/transam/xlog.c:5463 +#: access/transam/xlog.c:5530 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "система бази даних була перервана в процесі відновлення %s" -#: access/transam/xlog.c:5465 +#: access/transam/xlog.c:5532 #, c-format 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:5471 +#: access/transam/xlog.c:5538 #, c-format msgid "database system was interrupted while in recovery at log time %s" msgstr "робота системи бази даних була перервана в процесі відновлення, час в журналі %s" -#: access/transam/xlog.c:5473 +#: access/transam/xlog.c:5540 #, 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 "Якщо це відбувається більше, ніж один раз, можливо, якісь дані були зіпсовані, і для відновлення треба вибрати більш ранню точку." -#: access/transam/xlog.c:5479 +#: access/transam/xlog.c:5546 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "робота системи бази даних була перервана; останній момент роботи %s" -#: access/transam/xlog.c:5486 +#: access/transam/xlog.c:5553 #, c-format msgid "control file contains invalid database cluster state" msgstr "контрольний файл містить недійсний стан кластеру бази даних" -#: access/transam/xlog.c:5874 +#: access/transam/xlog.c:5941 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL завершився до завершення онлайн резервного копіювання" -#: access/transam/xlog.c:5875 +#: access/transam/xlog.c:5942 #, c-format msgid "All WAL generated while online backup was taken must be available at recovery." msgstr "Всі журнали WAL, створені під час резервного копіювання \"на ходу\", повинні бути в наявності для відновлення." -#: access/transam/xlog.c:5879 +#: access/transam/xlog.c:5946 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL завершився до узгодженої точки відновлення" -#: access/transam/xlog.c:5925 +#: access/transam/xlog.c:5992 #, c-format msgid "selected new timeline ID: %u" msgstr "вибрано новий ID часової лінії: %u" -#: access/transam/xlog.c:5958 +#: access/transam/xlog.c:6025 #, c-format msgid "archive recovery complete" msgstr "відновлення архіву завершено" -#: access/transam/xlog.c:6587 +#: access/transam/xlog.c:6654 #, c-format msgid "shutting down" msgstr "завершення роботи" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6626 +#: access/transam/xlog.c:6693 #, c-format msgid "restartpoint starting:%s%s%s%s%s%s%s%s" msgstr "початок точки перезапуску: %s%s%s%s%s%s%s%s" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6638 +#: access/transam/xlog.c:6705 #, c-format msgid "checkpoint starting:%s%s%s%s%s%s%s%s" msgstr "початок контрольної точки: %s%s%s%s%s%s%s%s" -#: access/transam/xlog.c:6703 +#: access/transam/xlog.c:6770 #, c-format -msgid "restartpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" -msgstr "точка перезапуску завершена: записано %d буферів (%.1f%%); %d WAL файлів додано, %d видалено, %d перероблених; запис=%ld.%03d сек, синхронізація=%ld.%03d сек, усього=%ld.%03d сек; файли синхронізації=%d, найдовший=%ld.%03d сек, середній=%ld.%03d сек; дистанція=%d кб, приблизно=%d кб; lsn=%X/%X, lsn повтору=%X/%X" +msgid "restartpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" +msgstr "точка перезапуску завершена: записано %d буферів (%.1f%%), записано %d SLRU буферів; %d WAL файл(ів) додано, %d вилучено, %d перевикористано; запис=%ld.%03d с, синхр.=%ld.%03d с, загалом=%ld.%03d с; синхр. файлів=%d, найдовший=%ld.%03d с, середній=%ld.%03d с; відстань=%d кБ, оцінка=%d кБ; lsn=%X/%X, redo lsn=%X/%X" -#: access/transam/xlog.c:6726 +#: access/transam/xlog.c:6794 #, c-format -msgid "checkpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" -msgstr "контрольна точка завершена: записано %d буферів (%.1f%%); %d WAL файлів додано, %d видалено, %d перероблених; запис=%ld.%03d сек, синхронізація=%ld.%03d сек, усього=%ld.%03d сек; файли синхронізації=%d, найдовший=%ld.%03d сек, середній=%ld.%03d сек; дистанція=%d кб, приблизно=%d кб; lsn=%X/%X, lsn повтору=%X/%X" +msgid "checkpoint complete: wrote %d buffers (%.1f%%), wrote %d SLRU buffers; %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X" +msgstr "контрольна точка завершена: записано %d буферів (%.1f%%), записано %d SLRU буферів; %d WAL файл(ів) додано, %d вилучено, %d перевикористано; запис=%ld.%03d с, синхр.=%ld.%03d с, загалом=%ld.%03d с; синхр. файлів=%d, найдовший=%ld.%03d с, середній=%ld.%03d с; відстань=%d кБ, оцінка=%d кБ; lsn=%X/%X, redo lsn=%X/%X" -#: access/transam/xlog.c:7208 +#: access/transam/xlog.c:7280 #, c-format msgid "concurrent write-ahead log activity while database system is shutting down" msgstr "під час того вимкнення БД помічено конкурентну активність у випереджувальному журналюванні" -#: access/transam/xlog.c:7793 +#: access/transam/xlog.c:7869 #, c-format msgid "recovery restart point at %X/%X" msgstr "відновлення збереженої точки %X/%X" -#: access/transam/xlog.c:7795 +#: access/transam/xlog.c:7871 #, c-format msgid "Last completed transaction was at log time %s." msgstr "Остання завершена транзакція була в %s." -#: access/transam/xlog.c:8057 +#: access/transam/xlog.c:8135 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "точка відновлення \"%s\" створена в %X/%X" -#: access/transam/xlog.c:8264 +#: access/transam/xlog.c:8342 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "онлайн резервне копіювання скасовано, неможливо продовжити відновлення" -#: access/transam/xlog.c:8322 +#: access/transam/xlog.c:8400 #, c-format msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "неочікуваний ID лінії часу %u (повинен бути %u) у записі контрольної точки вимкнення" -#: access/transam/xlog.c:8380 +#: access/transam/xlog.c:8466 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "неочікуваний ID лінії часу %u (повинен бути %u) у записі контрольної точки онлайн" -#: access/transam/xlog.c:8409 +#: access/transam/xlog.c:8503 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "неочікуваний ID лінії часу %u (повинен бути %u) у записі кінця відновлення" -#: access/transam/xlog.c:8680 +#: access/transam/xlog.c:8773 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "не вдалосьясинхронізувати файл наскрізного запису %s: %m" -#: access/transam/xlog.c:8685 +#: access/transam/xlog.c:8778 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "не вдалося fdatasync файл \"%s\": %m" -#: access/transam/xlog.c:8772 access/transam/xlog.c:9108 +#: access/transam/xlog.c:8855 access/transam/xlog.c:9191 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "Обраний рівень WAL недостатній для резервного копіювання \"на ходу\"" -#: access/transam/xlog.c:8773 access/transam/xlogfuncs.c:248 +#: access/transam/xlog.c:8856 access/transam/xlog.c:9192 +#: access/transam/xlogfuncs.c:249 #, c-format msgid "\"wal_level\" must be set to \"replica\" or \"logical\" at server start." msgstr "\"wal_level\" потрібно задати \"replica\" або \"logical\" при запуску сервера." -#: access/transam/xlog.c:8778 +#: access/transam/xlog.c:8861 #, c-format msgid "backup label too long (max %d bytes)" msgstr "мітка резервного копіювання задовга (максимум %d байт)" -#: access/transam/xlog.c:8899 +#: access/transam/xlog.c:8982 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed since last restartpoint" msgstr "Після останньої точки відновлення був відтворений WAL, створений в режимі \"full_page_writes=off\"" -#: access/transam/xlog.c:8901 access/transam/xlog.c:9197 +#: access/transam/xlog.c:8984 access/transam/xlog.c:9280 #, 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 primary, and then try an online backup again." msgstr "Це означає, що резервна копія, зроблена на резервному сервері пошкоджена і не повинна використовуватись. Активуйте \"full_page_writes\" і запустіть CHECKPOINT на основному сервері, а потім спробуйте ще раз створити резервну копію." -#: access/transam/xlog.c:8981 backup/basebackup.c:1417 utils/adt/misc.c:354 +#: access/transam/xlog.c:9064 backup/basebackup.c:1419 utils/adt/misc.c:354 #, c-format msgid "could not read symbolic link \"%s\": %m" msgstr "не можливо прочитати символічне послання \"%s\": %m" -#: access/transam/xlog.c:8988 backup/basebackup.c:1422 utils/adt/misc.c:359 +#: access/transam/xlog.c:9071 backup/basebackup.c:1424 utils/adt/misc.c:359 #, c-format msgid "symbolic link \"%s\" target is too long" msgstr "таргет символічного посилання \"%s\" задовгий" -#: access/transam/xlog.c:9109 -#, c-format -msgid "wal_level must be set to \"replica\" or \"logical\" at server start." -msgstr "встановіть wal_level \"replica\" або \"logical\" при запуску серверу." - -#: access/transam/xlog.c:9147 backup/basebackup.c:1281 +#: access/transam/xlog.c:9230 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "режим очікування було підвищено у процесі резервного копіювання \"на ходу\"" -#: access/transam/xlog.c:9148 backup/basebackup.c:1282 +#: access/transam/xlog.c:9231 backup/basebackup.c:1284 #, c-format 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:9195 +#: access/transam/xlog.c:9278 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed during online backup" msgstr "WAL створений з \"full_page_writes=off\" було відтворено під час резервного копіювання" -#: access/transam/xlog.c:9311 +#: access/transam/xlog.c:9394 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "резервне копіювання виконане, очікуються необхідні сегменти WAL для архівації" -#: access/transam/xlog.c:9325 +#: access/transam/xlog.c:9408 #, c-format msgid "still waiting for all required WAL segments to be archived (%d seconds elapsed)" msgstr "все ще чекає на необхідні сегменти WAL для архівації (%d секунд пройшло)" -#: access/transam/xlog.c:9327 +#: access/transam/xlog.c:9410 #, c-format msgid "Check that your \"archive_command\" is executing properly. You can safely cancel this backup, but the database backup will not be usable without all the WAL segments." msgstr "Перевірте, що ваша \"archive_command\" виконується належним чином. Ви можете безпечно скасувати резервну копію, але резервне копіювання бази даних буде непридатним без всіх сегментів WAL." -#: access/transam/xlog.c:9334 +#: access/transam/xlog.c:9417 #, c-format msgid "all required WAL segments have been archived" msgstr "усі необхідні сегменти WAL архівовані" -#: access/transam/xlog.c:9338 +#: access/transam/xlog.c:9421 #, 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 іншими засобами для отримання резервної копії" -#: access/transam/xlog.c:9377 +#: access/transam/xlog.c:9460 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "припинення резервного копіювання через завершення обслуговуючого процесу до виклику pg_backup_stop" @@ -2933,99 +2916,99 @@ msgstr "неможливо створити файл статусу архіву msgid "could not write archive status file \"%s\": %m" msgstr "неможливо записати файл архівного статусу \"%s\": %m" -#: access/transam/xlogfuncs.c:69 backup/basebackup.c:997 +#: access/transam/xlogfuncs.c:70 backup/basebackup.c:999 #, c-format msgid "a backup is already in progress in this session" msgstr "резервне копіювання наразі триває в цьому сеансі" -#: access/transam/xlogfuncs.c:140 +#: access/transam/xlogfuncs.c:141 #, c-format msgid "backup is not in progress" msgstr "резервне копіювання не виконується" -#: access/transam/xlogfuncs.c:141 +#: access/transam/xlogfuncs.c:142 #, c-format msgid "Did you call pg_backup_start()?" msgstr "Ви викликали pg_backup_start()?" -#: access/transam/xlogfuncs.c:184 access/transam/xlogfuncs.c:242 -#: access/transam/xlogfuncs.c:281 access/transam/xlogfuncs.c:302 -#: access/transam/xlogfuncs.c:323 +#: access/transam/xlogfuncs.c:185 access/transam/xlogfuncs.c:243 +#: access/transam/xlogfuncs.c:282 access/transam/xlogfuncs.c:303 +#: access/transam/xlogfuncs.c:324 #, c-format msgid "WAL control functions cannot be executed during recovery." msgstr "Функції управління WAL не можна використовувати під час відновлення." -#: access/transam/xlogfuncs.c:209 access/transam/xlogfuncs.c:389 -#: access/transam/xlogfuncs.c:447 +#: access/transam/xlogfuncs.c:210 access/transam/xlogfuncs.c:390 +#: access/transam/xlogfuncs.c:448 #, c-format msgid "%s cannot be executed during recovery." msgstr "%s не можна використовувати під час відновлення." -#: access/transam/xlogfuncs.c:215 +#: access/transam/xlogfuncs.c:216 #, c-format msgid "pg_log_standby_snapshot() can only be used if \"wal_level\" >= \"replica\"" msgstr "pg_log_standby_snapshot() можна використовувати лише якщо \"wal_level\" >= \"replica\"" -#: access/transam/xlogfuncs.c:247 +#: access/transam/xlogfuncs.c:248 #, c-format msgid "WAL level not sufficient for creating a restore point" msgstr "Обраний рівень WAL не достатній для створення точки відновлення" -#: access/transam/xlogfuncs.c:255 +#: access/transam/xlogfuncs.c:256 #, c-format msgid "value too long for restore point (maximum %d characters)" msgstr "значення для точки відновлення перевищує межу (%d симв.)" -#: access/transam/xlogfuncs.c:486 +#: access/transam/xlogfuncs.c:487 #, c-format msgid "invalid WAL file name \"%s\"" msgstr "неприпустиме ім'я файлу WAL \"%s\"" -#: access/transam/xlogfuncs.c:522 access/transam/xlogfuncs.c:552 -#: access/transam/xlogfuncs.c:576 access/transam/xlogfuncs.c:599 -#: access/transam/xlogfuncs.c:679 +#: access/transam/xlogfuncs.c:523 access/transam/xlogfuncs.c:553 +#: access/transam/xlogfuncs.c:577 access/transam/xlogfuncs.c:600 +#: access/transam/xlogfuncs.c:680 #, c-format msgid "recovery is not in progress" msgstr "відновлення не виконується" -#: access/transam/xlogfuncs.c:523 access/transam/xlogfuncs.c:553 -#: access/transam/xlogfuncs.c:577 access/transam/xlogfuncs.c:600 -#: access/transam/xlogfuncs.c:680 +#: access/transam/xlogfuncs.c:524 access/transam/xlogfuncs.c:554 +#: access/transam/xlogfuncs.c:578 access/transam/xlogfuncs.c:601 +#: access/transam/xlogfuncs.c:681 #, c-format msgid "Recovery control functions can only be executed during recovery." msgstr "Функції управління відновленням можна використовувати тільки під час відновлення." -#: access/transam/xlogfuncs.c:528 access/transam/xlogfuncs.c:558 +#: access/transam/xlogfuncs.c:529 access/transam/xlogfuncs.c:559 #, c-format msgid "standby promotion is ongoing" msgstr "просування в режимі очікування триває" -#: access/transam/xlogfuncs.c:529 access/transam/xlogfuncs.c:559 +#: access/transam/xlogfuncs.c:530 access/transam/xlogfuncs.c:560 #, c-format msgid "%s cannot be executed after promotion is triggered." msgstr "%s не може бути виконаний після того як підвищення запущено." -#: access/transam/xlogfuncs.c:685 +#: access/transam/xlogfuncs.c:686 #, c-format msgid "\"wait_seconds\" must not be negative or zero" msgstr "\"wait_seconds\" не має бути від'ємним чи нулем" -#: access/transam/xlogfuncs.c:707 storage/ipc/signalfuncs.c:265 +#: access/transam/xlogfuncs.c:708 storage/ipc/signalfuncs.c:293 #, c-format msgid "failed to send signal to postmaster: %m" msgstr "надіслати сигнал процесу postmaster не вдалося: %m" -#: access/transam/xlogfuncs.c:739 libpq/be-secure.c:237 libpq/be-secure.c:346 +#: access/transam/xlogfuncs.c:740 libpq/be-secure.c:241 libpq/be-secure.c:350 #, c-format msgid "terminating connection due to unexpected postmaster exit" msgstr "завершення підключення через неочікуване закриття головного процесу" -#: access/transam/xlogfuncs.c:740 +#: access/transam/xlogfuncs.c:741 #, c-format msgid "while waiting on promotion" msgstr "в очікуванні на підвищення" -#: access/transam/xlogfuncs.c:744 +#: access/transam/xlogfuncs.c:745 #, c-format msgid "server did not promote within %d second" msgid_plural "server did not promote within %d seconds" @@ -3034,177 +3017,177 @@ msgstr[1] "сервер не підвищувався протягом %d сек msgstr[2] "сервер не підвищувався протягом %d секунд" msgstr[3] "сервер не підвищувався протягом %d секунд" -#: access/transam/xlogprefetcher.c:1088 +#: access/transam/xlogprefetcher.c:1086 #, c-format -msgid "\"recovery_prefetch\" is not supported on platforms that lack posix_fadvise()." -msgstr "\"recovery_prefetch\" не підтримується на платформах, у яких відсутня posix_fadvise()." +msgid "\"recovery_prefetch\" is not supported on platforms that lack support for issuing read-ahead advice." +msgstr "\"recovery_prefetch\" не підтримується на платформах, які не мають підтримки для попереднього читання." -#: access/transam/xlogreader.c:619 +#: access/transam/xlogreader.c:620 #, c-format msgid "invalid record offset at %X/%X: expected at least %u, got %u" msgstr "неприпустиме зміщення запису в %X/%X: очікувалось хоча б %u, отримано %u" -#: access/transam/xlogreader.c:628 +#: access/transam/xlogreader.c:629 #, c-format msgid "contrecord is requested by %X/%X" msgstr "по зсуву %X/%X запитано продовження запису" -#: access/transam/xlogreader.c:669 access/transam/xlogreader.c:1134 +#: access/transam/xlogreader.c:670 access/transam/xlogreader.c:1145 #, c-format msgid "invalid record length at %X/%X: expected at least %u, got %u" msgstr "неприпустима довжина запису %X/%X: очікувалась мінімум %u, отримано %u" -#: access/transam/xlogreader.c:758 +#: access/transam/xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" -msgstr "немає прапорця contrecord в позиції %X/%X" +msgstr "немає прапора contrecord на %X/%X" -#: access/transam/xlogreader.c:771 +#: access/transam/xlogreader.c:773 #, c-format msgid "invalid contrecord length %u (expected %lld) at %X/%X" msgstr "неприпустима довжина contrecord %u (очікувалось %lld) на %X/%X" -#: access/transam/xlogreader.c:1142 +#: access/transam/xlogreader.c:1153 #, c-format msgid "invalid resource manager ID %u at %X/%X" msgstr "невірний ID менеджера ресурсів %u в %X/%X" -#: access/transam/xlogreader.c:1155 access/transam/xlogreader.c:1171 +#: access/transam/xlogreader.c:1166 access/transam/xlogreader.c:1182 #, c-format msgid "record with incorrect prev-link %X/%X at %X/%X" msgstr "запис з неправильним попереднім посиланням %X/%X на %X/%X" -#: access/transam/xlogreader.c:1209 +#: access/transam/xlogreader.c:1220 #, c-format msgid "incorrect resource manager data checksum in record at %X/%X" msgstr "некоректна контрольна сума даних менеджера ресурсів у запису по зсуву %X/%X" -#: access/transam/xlogreader.c:1243 +#: access/transam/xlogreader.c:1254 #, c-format msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "невірне магічне число %04X в сегменті WAL %s, LSN %X/%X, зсув %u" -#: access/transam/xlogreader.c:1258 access/transam/xlogreader.c:1300 +#: access/transam/xlogreader.c:1269 access/transam/xlogreader.c:1311 #, c-format msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "невірні інформаційні біти %04X в сегменті WAL %s, LSN %X/%X, зсув %u" -#: access/transam/xlogreader.c:1274 +#: access/transam/xlogreader.c:1285 #, c-format -msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" -msgstr "WAL файл належить іншій системі баз даних: ідентифікатор системи баз даних де міститься WAL файл - %llu, а ідентифікатор системи баз даних pg_control - %llu" +msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" +msgstr "WAL файл належить іншій системі баз даних: ідентифікатор системи баз даних де міститься WAL файл - %, а ідентифікатор системи баз даних pg_control - %" -#: access/transam/xlogreader.c:1282 +#: access/transam/xlogreader.c:1293 #, c-format msgid "WAL file is from different database system: incorrect segment size in page header" msgstr "Файл WAL належить іншій системі баз даних: некоректний розмір сегменту в заголовку сторінки" -#: access/transam/xlogreader.c:1288 +#: access/transam/xlogreader.c:1299 #, c-format msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header" msgstr "Файл WAL належить іншій системі баз даних: некоректний XLOG_BLCKSZ в заголовку сторінки" -#: access/transam/xlogreader.c:1320 +#: access/transam/xlogreader.c:1331 #, c-format msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u" msgstr "неочікуваний pageaddr %X/%X у сегменті WAL %s, LSN %X/%X, зміщення %u" -#: access/transam/xlogreader.c:1346 +#: access/transam/xlogreader.c:1357 #, c-format msgid "out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, offset %u" msgstr "порушення послідовності ID лінії часу %u (після %u) у сегменті WAL %s, LSN %X/%X, зсув %u" -#: access/transam/xlogreader.c:1749 +#: access/transam/xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "ідентифікатор блока %u out-of-order в позиції %X/%X" -#: access/transam/xlogreader.c:1773 +#: access/transam/xlogreader.c:1793 #, c-format msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X" msgstr "BKPBLOCK_HAS_DATA встановлений, але немає даних в позиції %X/%X" -#: access/transam/xlogreader.c:1780 +#: access/transam/xlogreader.c:1800 #, 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:1816 +#: access/transam/xlogreader.c:1836 #, 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" -#: access/transam/xlogreader.c:1832 +#: access/transam/xlogreader.c:1852 #, 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:1846 +#: access/transam/xlogreader.c:1866 #, c-format msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X" msgstr "BKPIMAGE_COMPRESSED встановлений, але довжина образу блока дорівнює %u в позиції %X/%X" -#: access/transam/xlogreader.c:1861 +#: access/transam/xlogreader.c:1881 #, c-format msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_COMPRESSED set, but block image length is %u at %X/%X" msgstr "ні BKPIMAGE_HAS_HOLE, ні BKPIMAGE_COMPRESSED не встановлені, але довжина образу блока дорівнює %u в позиції %X/%X" -#: access/transam/xlogreader.c:1877 +#: access/transam/xlogreader.c:1897 #, c-format msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X" msgstr "BKPBLOCK_SAME_REL встановлений, але попереднє значення не задано в позиції %X/%X" -#: access/transam/xlogreader.c:1889 +#: access/transam/xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "невірний ідентифікатор блоку %u в позиції %X/%X" -#: access/transam/xlogreader.c:1956 +#: access/transam/xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "запис з невірною довжиною на %X/%X" -#: access/transam/xlogreader.c:1982 +#: access/transam/xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "не вдалося знайти блок резервної копії з ID %d у записі WAL" -#: access/transam/xlogreader.c:2066 +#: access/transam/xlogreader.c:2086 #, c-format msgid "could not restore image at %X/%X with invalid block %d specified" msgstr "не вдалося відновити зображення %X/%X з недійсним вказаним блоком %d" -#: access/transam/xlogreader.c:2073 +#: access/transam/xlogreader.c:2093 #, c-format msgid "could not restore image at %X/%X with invalid state, block %d" msgstr "не вдалося відновити зображення %X/%X з недійсним станом, блок %d" -#: access/transam/xlogreader.c:2100 access/transam/xlogreader.c:2117 +#: access/transam/xlogreader.c:2120 access/transam/xlogreader.c:2137 #, c-format msgid "could not restore image at %X/%X compressed with %s not supported by build, block %d" msgstr "не вдалося відновити зображення в %X/%X, стиснуте %s, не підтримується збіркою, блок %d" -#: access/transam/xlogreader.c:2126 +#: access/transam/xlogreader.c:2146 #, c-format msgid "could not restore image at %X/%X compressed with unknown method, block %d" msgstr "не вдалося відновити зображення %X/%X стиснуте з невідомим методом, блок %d" -#: access/transam/xlogreader.c:2134 +#: access/transam/xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "не вдалося розпакувати зображення на %X/%X, блок %d" -#: access/transam/xlogrecovery.c:617 +#: access/transam/xlogrecovery.c:624 #, c-format msgid "starting backup recovery with redo LSN %X/%X, checkpoint LSN %X/%X, on timeline ID %u" msgstr "стартуємо відновлення резервної копії з LSN повторення %X/%X, LSN контрольної точки %X/%X, на часовій шкалі з ID %u" -#: access/transam/xlogrecovery.c:649 +#: access/transam/xlogrecovery.c:656 #, c-format msgid "could not find redo location %X/%X referenced by checkpoint record at %X/%X" msgstr "не вдалося знайти положення REDO %X/%X, вказане записом контрольної точки в %X/%X" -#: access/transam/xlogrecovery.c:651 access/transam/xlogrecovery.c:662 +#: access/transam/xlogrecovery.c:658 access/transam/xlogrecovery.c:669 #, c-format msgid "If you are restoring from a backup, touch \"%s/recovery.signal\" or \"%s/standby.signal\" and add required recovery options.\n" "If you are not restoring from a backup, try removing the file \"%s/backup_label\".\n" @@ -3213,467 +3196,488 @@ msgstr "Якщо ви відновлюєтеся з резервної копі "Якщо ви відновлюєте не з резервної копії, спробуйте видалити файл \"%s/backup_label\".\n" "Будьте обережні: видалення \"%s/backup_label\" призведе до пошкодження кластера при відновленні з резервної копії." -#: access/transam/xlogrecovery.c:660 +#: access/transam/xlogrecovery.c:667 #, c-format msgid "could not locate required checkpoint record at %X/%X" msgstr "не вдалося знайти запис необхідної контрольної точки в %X/%X" -#: access/transam/xlogrecovery.c:690 commands/tablespace.c:664 +#: access/transam/xlogrecovery.c:697 commands/tablespace.c:664 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "не вдалося створити символічне послання \"%s\": %m" -#: access/transam/xlogrecovery.c:723 access/transam/xlogrecovery.c:729 +#: access/transam/xlogrecovery.c:730 access/transam/xlogrecovery.c:736 #, c-format msgid "ignoring file \"%s\" because no file \"%s\" exists" msgstr "файл \"%s\" ігнорується, тому що файлу \"%s\" не існує" -#: access/transam/xlogrecovery.c:725 +#: access/transam/xlogrecovery.c:732 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "Файл \"%s\" був перейменований на \"%s\"." -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:738 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "Неможливо перейменувати файл \"%s\" на \"%s\": %m." -#: access/transam/xlogrecovery.c:770 +#: access/transam/xlogrecovery.c:777 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "перезапуск відновлення резервної копії на LSN %X/%X" -#: access/transam/xlogrecovery.c:795 +#: access/transam/xlogrecovery.c:802 #, c-format msgid "could not locate a valid checkpoint record at %X/%X" msgstr "не вдалося знайти запис допустимої контрольної точки в %X/%X" -#: access/transam/xlogrecovery.c:806 +#: access/transam/xlogrecovery.c:814 +#, c-format +msgid "could not find redo location %X/%08X referenced by checkpoint record at %X/%08X" +msgstr "не вдалося знайти місце перезапису %X/%08X, на який посилається запис контрольної точки в %X/%08X" + +#: access/transam/xlogrecovery.c:823 #, c-format msgid "entering standby mode" msgstr "перехід у режим очікування" -#: access/transam/xlogrecovery.c:809 +#: access/transam/xlogrecovery.c:826 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "починається відновлення точки в часі до XID %u" -#: access/transam/xlogrecovery.c:813 +#: access/transam/xlogrecovery.c:830 #, c-format msgid "starting point-in-time recovery to %s" msgstr "починається відновлення точки в часі до %s" -#: access/transam/xlogrecovery.c:817 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "починається відновлення точки в часі до \"%s\"" -#: access/transam/xlogrecovery.c:821 +#: access/transam/xlogrecovery.c:838 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "починається відновлення точки в часі до локації WAL (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:825 +#: access/transam/xlogrecovery.c:842 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "починається відновлення даних до першої точки домовленості" -#: access/transam/xlogrecovery.c:828 +#: access/transam/xlogrecovery.c:845 #, c-format msgid "starting archive recovery" msgstr "початок відновлення архіву" -#: access/transam/xlogrecovery.c:849 +#: access/transam/xlogrecovery.c:866 #, c-format msgid "requested timeline %u is not a child of this server's history" msgstr "запитувана лінія часу %u не є відгалуженням історії цього серверу" -#: access/transam/xlogrecovery.c:851 +#. translator: %s is a backup_label file or a pg_control file +#: access/transam/xlogrecovery.c:869 #, 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 in file \"%s\" 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 "Остання контрольна точка у файлі \"%s\" знаходиться в %X/%X на лінії часу %u, але в історії запитуваної лінії часу сервер відгалузився від тієї лінії часу в %X/%X." -#: access/transam/xlogrecovery.c:865 +#: access/transam/xlogrecovery.c:884 #, c-format msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u" msgstr "запитувана лінія часу %u не містить мінімальну точку відновлення %X/%X на лінії часу %u" -#: access/transam/xlogrecovery.c:893 +#: access/transam/xlogrecovery.c:912 #, c-format msgid "invalid next transaction ID" msgstr "невірний ID наступної транзакції" -#: access/transam/xlogrecovery.c:898 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo in checkpoint record" msgstr "невірний запис REDO в контрольній точці" -#: access/transam/xlogrecovery.c:909 +#: access/transam/xlogrecovery.c:928 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "невірний запис REDO в контрольній точці вимкнення" -#: access/transam/xlogrecovery.c:938 +#: access/transam/xlogrecovery.c:957 #, c-format msgid "database system was not properly shut down; automatic recovery in progress" msgstr "робота системи бази даних не була завершена належним чином; відбувається автоматичне відновлення" -#: access/transam/xlogrecovery.c:942 +#: access/transam/xlogrecovery.c:961 #, c-format msgid "crash recovery starts in timeline %u and has target timeline %u" msgstr "відновлення після збою починається на лінії часу %u і має цільову лінію часу: %u" -#: access/transam/xlogrecovery.c:985 +#: access/transam/xlogrecovery.c:1004 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_label містить дані, які не узгоджені з файлом pg_control" -#: access/transam/xlogrecovery.c:986 +#: access/transam/xlogrecovery.c:1005 #, c-format msgid "This means that the backup is corrupted and you will have to use another backup for recovery." msgstr "Це означає, що резервна копія була пошкоджена і вам доведеться використати іншу резервну копію для відновлення." -#: access/transam/xlogrecovery.c:1040 +#: access/transam/xlogrecovery.c:1059 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "використання файлу команд відновлення \"%s\" не підтримується" -#: access/transam/xlogrecovery.c:1105 +#: access/transam/xlogrecovery.c:1124 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "режим очікування не підтримується однокористувацьким сервером" -#: access/transam/xlogrecovery.c:1122 +#: access/transam/xlogrecovery.c:1141 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "не вказано ні \"primary_conninfo\", ані \"restore_command\"" -#: access/transam/xlogrecovery.c:1123 +#: access/transam/xlogrecovery.c:1142 #, c-format msgid "The database server will regularly poll the pg_wal subdirectory to check for files placed there." msgstr "Сервер бази даних буде регулярно опитувати підкатолог pg_wal і перевіряти файли, що містяться у ньому." -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1150 #, c-format msgid "must specify \"restore_command\" when standby mode is not enabled" msgstr "необхідно вказати \"restore_command\", якщо не ввімкнено режиму очікування" -#: access/transam/xlogrecovery.c:1169 +#: access/transam/xlogrecovery.c:1188 #, c-format msgid "recovery target timeline %u does not exist" msgstr "цільова лінія часу відновлення %u не існує" -#: access/transam/xlogrecovery.c:1252 access/transam/xlogrecovery.c:1259 -#: access/transam/xlogrecovery.c:1318 access/transam/xlogrecovery.c:1406 -#: access/transam/xlogrecovery.c:1415 access/transam/xlogrecovery.c:1435 +#: access/transam/xlogrecovery.c:1271 access/transam/xlogrecovery.c:1278 +#: access/transam/xlogrecovery.c:1337 access/transam/xlogrecovery.c:1425 +#: access/transam/xlogrecovery.c:1434 access/transam/xlogrecovery.c:1454 #, c-format msgid "invalid data in file \"%s\"" msgstr "невірні дані у файлі \"%s\"" -#: access/transam/xlogrecovery.c:1319 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "Проаналізовано ID часової лінії %u, очіувалося %u." -#: access/transam/xlogrecovery.c:1330 +#: access/transam/xlogrecovery.c:1349 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "це інкрементна резервна копія, а не каталог даних" -#: access/transam/xlogrecovery.c:1331 +#: access/transam/xlogrecovery.c:1350 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "Використовуйте pg_combinebackup для відновлення правильного каталогу даних." -#: access/transam/xlogrecovery.c:1717 +#: access/transam/xlogrecovery.c:1736 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "знайдено неочікуваний тип запису в точці повторення %X/%X" -#: access/transam/xlogrecovery.c:1740 +#: access/transam/xlogrecovery.c:1759 #, c-format msgid "redo starts at %X/%X" msgstr "запис REDO починається з %X/%X" -#: access/transam/xlogrecovery.c:1753 +#: access/transam/xlogrecovery.c:1772 #, c-format msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X" msgstr "запис REDO триває, минуло часу: %ld.%02d s, поточний LSN: %X/%X" -#: access/transam/xlogrecovery.c:1843 +#: access/transam/xlogrecovery.c:1862 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "запитувана точка відновлення передує узгодженій точці відновлення" -#: access/transam/xlogrecovery.c:1875 +#: access/transam/xlogrecovery.c:1894 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "повторно виконано через %X/%X системне використання: %s" -#: access/transam/xlogrecovery.c:1881 +#: access/transam/xlogrecovery.c:1900 #, c-format msgid "last completed transaction was at log time %s" msgstr "остання завершена транзакція була в %s" -#: access/transam/xlogrecovery.c:1890 +#: access/transam/xlogrecovery.c:1909 #, c-format msgid "redo is not required" msgstr "дані REDO не потрібні" -#: access/transam/xlogrecovery.c:1901 +#: access/transam/xlogrecovery.c:1921 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "відновлення завершилось до досягення налаштованої цілі відновлення" -#: access/transam/xlogrecovery.c:2095 +#: access/transam/xlogrecovery.c:2115 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "успішно пропущений відсутній contrecord при %X/%X, перезаписано на %s" -#: access/transam/xlogrecovery.c:2162 +#: access/transam/xlogrecovery.c:2182 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "знайдено неочікуваний запис каталогу \"%s\" в %s" -#: access/transam/xlogrecovery.c:2164 +#: access/transam/xlogrecovery.c:2184 #, c-format -msgid "All directory entries in pg_tblspc/ should be symbolic links." -msgstr "Всі записи каталогу в pg_tblspc/ повинні бути символічними посиланнями." +msgid "All directory entries in %s/ should be symbolic links." +msgstr "Всі записи каталогу в %s/ мають бути символічними посиланнями." -#: access/transam/xlogrecovery.c:2165 +#: access/transam/xlogrecovery.c:2186 #, c-format msgid "Remove those directories, or set \"allow_in_place_tablespaces\" to ON transiently to let recovery complete." msgstr "Видаліть ті каталоги, або тимчасово встановіть для параметра \"allow_in_place_tablespaces\" значення ON, щоб завершити відновлення." -#: access/transam/xlogrecovery.c:2217 +#: access/transam/xlogrecovery.c:2238 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "завершено відновлення резервної копії з LSN повторення %X/%X і LSN закінчення %X/%X" -#: access/transam/xlogrecovery.c:2247 +#: access/transam/xlogrecovery.c:2269 #, c-format msgid "consistent recovery state reached at %X/%X" msgstr "узгоджений стан відновлення досягнутий %X/%X" #. translator: %s is a WAL record description -#: access/transam/xlogrecovery.c:2285 +#: access/transam/xlogrecovery.c:2307 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "запис REDO в WAL в позиції %X/%X для %s" -#: access/transam/xlogrecovery.c:2383 +#: access/transam/xlogrecovery.c:2405 #, c-format msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record" msgstr "несподіваний ID попередньої лінії часу %u (ID теперішньої лінії часу %u) в записі контрольної точки" -#: access/transam/xlogrecovery.c:2392 +#: access/transam/xlogrecovery.c:2414 #, c-format msgid "unexpected timeline ID %u (after %u) in checkpoint record" msgstr "неочікуваний ID лінії часу %u (після %u) в записі контрольної точки" -#: access/transam/xlogrecovery.c:2408 +#: access/transam/xlogrecovery.c:2430 #, c-format msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u" msgstr "неочікуваний ID лінії часу %u в записі контрольної точки, до досягнення мінімальної точки відновлення %X/%X на лінії часу %u" -#: access/transam/xlogrecovery.c:2592 access/transam/xlogrecovery.c:2868 +#: access/transam/xlogrecovery.c:2614 access/transam/xlogrecovery.c:2890 #, c-format msgid "recovery stopping after reaching consistency" msgstr "відновлення зупиняється після досягнення узгодженості" -#: access/transam/xlogrecovery.c:2613 +#: access/transam/xlogrecovery.c:2635 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "відновлення зупиняється перед позицією WAL (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2703 +#: access/transam/xlogrecovery.c:2725 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "відновлення припиняється до підтвердження транзакції %u, час %s" -#: access/transam/xlogrecovery.c:2710 +#: access/transam/xlogrecovery.c:2732 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "відновлення припиняється до скасування транзакції %u, час %s" -#: access/transam/xlogrecovery.c:2763 +#: access/transam/xlogrecovery.c:2785 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "відновлення припиняється в точці відновлення\"%s\", час %s" -#: access/transam/xlogrecovery.c:2781 +#: access/transam/xlogrecovery.c:2803 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "відновлення припиняється пісня локації WAL (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:2848 +#: access/transam/xlogrecovery.c:2870 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "відновлення припиняється після підтвердження транзакції %u, час %s" -#: access/transam/xlogrecovery.c:2856 +#: access/transam/xlogrecovery.c:2878 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "відновлення припиняється після скасування транзакції %u, час %s" -#: access/transam/xlogrecovery.c:2937 +#: access/transam/xlogrecovery.c:2959 #, c-format msgid "pausing at the end of recovery" msgstr "пауза в кінці відновлення" -#: access/transam/xlogrecovery.c:2938 +#: access/transam/xlogrecovery.c:2960 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Виконайте pg_wal_replay_resume() для підвищення рівня." -#: access/transam/xlogrecovery.c:2941 access/transam/xlogrecovery.c:4678 +#: access/transam/xlogrecovery.c:2963 access/transam/xlogrecovery.c:4720 #, c-format msgid "recovery has paused" msgstr "відновлення зупинено" -#: access/transam/xlogrecovery.c:2942 +#: access/transam/xlogrecovery.c:2964 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Виконайте pg_wal_replay_resume(), щоб продовжити." -#: access/transam/xlogrecovery.c:3205 +#: access/transam/xlogrecovery.c:3227 #, c-format msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u" msgstr "неочікуваний ID лінії часу %u в сегменті WAL %s, LSN %X/%X, offset %u" -#: access/transam/xlogrecovery.c:3413 +#: access/transam/xlogrecovery.c:3443 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m" msgstr "не вдалося прочитати сегмент журналу %s, LSN %X/%X, зсув %u: %m" -#: access/transam/xlogrecovery.c:3420 +#: access/transam/xlogrecovery.c:3450 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" msgstr "не вдалося прочитати сегмент WAL %s, LSN %X/%X, зсув %u: прочитано %d з %zu" -#: access/transam/xlogrecovery.c:4060 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint location" msgstr "невірне розташування контрольної точки" -#: access/transam/xlogrecovery.c:4070 +#: access/transam/xlogrecovery.c:4114 #, c-format msgid "invalid checkpoint record" msgstr "невірний запис контрольної точки" -#: access/transam/xlogrecovery.c:4076 +#: access/transam/xlogrecovery.c:4120 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "невірний ID менеджера ресурсів в записі контрольної точки" -#: access/transam/xlogrecovery.c:4084 +#: access/transam/xlogrecovery.c:4128 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "невірний xl_info у записі контрольної точки" -#: access/transam/xlogrecovery.c:4090 +#: access/transam/xlogrecovery.c:4134 #, c-format msgid "invalid length of checkpoint record" msgstr "невірна довжина запису контрольної точки" -#: access/transam/xlogrecovery.c:4144 +#: access/transam/xlogrecovery.c:4188 #, c-format msgid "new timeline %u is not a child of database system timeline %u" msgstr "нова лінія часу %u не є дочірньою для лінії часу системи бази даних %u" -#: access/transam/xlogrecovery.c:4158 +#: access/transam/xlogrecovery.c:4202 #, c-format msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X" msgstr "нова лінія часу %u відгалузилась від поточної лінії часу бази даних %u до поточної точки відновлення %X/%X" -#: access/transam/xlogrecovery.c:4177 +#: access/transam/xlogrecovery.c:4221 #, c-format msgid "new target timeline is %u" msgstr "нова цільова лінія часу %u" -#: access/transam/xlogrecovery.c:4380 +#: access/transam/xlogrecovery.c:4422 #, c-format msgid "WAL receiver process shutdown requested" msgstr "Запит на вимкнення процесу приймача WAL" -#: access/transam/xlogrecovery.c:4440 +#: access/transam/xlogrecovery.c:4482 #, c-format msgid "received promote request" msgstr "отримано запит підвищення статусу" -#: access/transam/xlogrecovery.c:4669 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "hot standby is not possible because of insufficient parameter settings" msgstr "hot standby неможливий через недостатнє налаштування параметрів" -#: access/transam/xlogrecovery.c:4670 access/transam/xlogrecovery.c:4697 -#: access/transam/xlogrecovery.c:4727 +#: access/transam/xlogrecovery.c:4712 access/transam/xlogrecovery.c:4739 +#: access/transam/xlogrecovery.c:4769 #, c-format msgid "%s = %d is a lower setting than on the primary server, where its value was %d." msgstr "%s = %d є нижчим параметром, ніж на основному сервері, де його значення було %d." -#: access/transam/xlogrecovery.c:4679 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "Якщо відновлення не буде зупинено, сервер завершить роботу." -#: access/transam/xlogrecovery.c:4680 +#: access/transam/xlogrecovery.c:4722 #, c-format msgid "You can then restart the server after making the necessary configuration changes." msgstr "Після здійснення необхідних змін у конфігурації, ви можете перезапустити сервер." -#: access/transam/xlogrecovery.c:4691 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "підвищення неможливе через недостатнє налаштування параметрів" -#: access/transam/xlogrecovery.c:4701 +#: access/transam/xlogrecovery.c:4743 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "Перезапустити сервер після здійснення необхідних змін у конфігурації." -#: access/transam/xlogrecovery.c:4725 +#: access/transam/xlogrecovery.c:4767 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "відновлення перервано через недостатнє налаштування параметрів" -#: access/transam/xlogrecovery.c:4731 +#: access/transam/xlogrecovery.c:4773 #, c-format msgid "You can restart the server after making the necessary configuration changes." msgstr "Ви можете перезапустити сервер, після здійснення необхідних змін у конфігурації." -#: access/transam/xlogrecovery.c:4773 +#: access/transam/xlogrecovery.c:4793 access/transam/xlogrecovery.c:4795 +#: catalog/dependency.c:1153 catalog/dependency.c:1160 +#: catalog/dependency.c:1171 commands/tablecmds.c:1519 +#: commands/tablecmds.c:16740 commands/tablespace.c:460 commands/user.c:1302 +#: commands/vacuum.c:226 commands/view.c:441 executor/execExprInterp.c:5211 +#: executor/execExprInterp.c:5219 libpq/auth.c:320 +#: replication/logical/applyparallelworker.c:1048 replication/slot.c:1701 +#: replication/slot.c:2779 replication/slot.c:2781 replication/syncrep.c:1079 +#: storage/aio/method_io_uring.c:389 storage/lmgr/deadlock.c:1137 +#: storage/lmgr/proc.c:1525 utils/misc/guc.c:3166 utils/misc/guc.c:3207 +#: utils/misc/guc.c:3282 utils/misc/guc.c:6834 utils/misc/guc.c:6868 +#: utils/misc/guc.c:6902 utils/misc/guc.c:6945 utils/misc/guc.c:6987 +#, c-format +msgid "%s" +msgstr "%s" + +#: access/transam/xlogrecovery.c:4825 #, c-format msgid "multiple recovery targets specified" msgstr "вказано декілька цілей відновлення" -#: access/transam/xlogrecovery.c:4774 +#: access/transam/xlogrecovery.c:4826 #, c-format msgid "At most one of \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", \"recovery_target_xid\" may be set." msgstr "Максимум один із \"recovery_target\", \"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", \"recovery_target_xid\" може бути встановлений." -#: access/transam/xlogrecovery.c:4785 +#: access/transam/xlogrecovery.c:4837 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "Єдиним дозволеним значенням є \"immediate\"." -#: access/transam/xlogrecovery.c:4937 utils/adt/timestamp.c:202 -#: utils/adt/timestamp.c:455 +#: access/transam/xlogrecovery.c:4991 #, c-format -msgid "timestamp out of range: \"%s\"" -msgstr "позначка часу поза діапазоном: \"%s\"" +msgid "Timestamp out of range: \"%s\"." +msgstr "Мітка часу поза межами: \"%s\"." -#: access/transam/xlogrecovery.c:4982 +#: access/transam/xlogrecovery.c:5036 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "\"recovery_target_timeline\" не є допустимим числом." -#: access/transam/xlogutils.c:1032 +#: access/transam/xlogutils.c:1023 #, c-format msgid "could not read from WAL segment %s, offset %d: %m" msgstr "не вдалося прочитати сегмент WAL %s, зсув %d: %m" -#: access/transam/xlogutils.c:1039 +#: access/transam/xlogutils.c:1030 #, c-format msgid "could not read from WAL segment %s, offset %d: read %d of %d" msgstr "не вдалося прочитати сегмент WAL %s, зсув %d: прочитано %d з %d" @@ -3694,7 +3698,7 @@ msgstr "Команда архівації з помилкою: %s" msgid "archive command was terminated by exception 0x%X" msgstr "команда архівації була перервана винятком 0x%X" -#: archive/shell_archive.c:109 postmaster/postmaster.c:3094 +#: archive/shell_archive.c:109 postmaster/postmaster.c:2850 #, c-format msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value." msgstr "Опис цього Шістнадцяткового значення дивіться у включаємому C-файлі \"ntstatus.h\"." @@ -3709,42 +3713,42 @@ msgstr "команда архівації була перервана сигна msgid "archive command exited with unrecognized status %d" msgstr "команда архівації завершена з нерозпізнаним статусом %d" -#: backup/backup_manifest.c:254 +#: backup/backup_manifest.c:255 #, c-format msgid "expected end timeline %u but found timeline %u" msgstr "очікувався кінець часової шкали %u але знайдено часову шкалу %u" -#: backup/backup_manifest.c:278 +#: backup/backup_manifest.c:279 #, c-format msgid "expected start timeline %u but found timeline %u" msgstr "очікувався початок часової шкали %u але знайдено часову шкалу %u" -#: backup/backup_manifest.c:305 +#: backup/backup_manifest.c:306 #, c-format msgid "start timeline %u not found in history of timeline %u" msgstr "початок часової шкали %u не знайдено в історії часової шкали %u" -#: backup/backup_manifest.c:356 +#: backup/backup_manifest.c:357 #, c-format msgid "could not rewind temporary file" msgstr "не вдалося перемотати назад тимчасовий файл" -#: backup/basebackup.c:479 +#: backup/basebackup.c:481 #, c-format msgid "could not find any WAL files" msgstr "не вдалося знайти ні одного файла WAL" -#: backup/basebackup.c:494 backup/basebackup.c:509 backup/basebackup.c:518 +#: backup/basebackup.c:496 backup/basebackup.c:511 backup/basebackup.c:520 #, c-format msgid "could not find WAL file \"%s\"" msgstr "не вдалося знайти файл WAL \"%s\"" -#: backup/basebackup.c:560 backup/basebackup.c:585 +#: backup/basebackup.c:562 backup/basebackup.c:587 #, c-format msgid "unexpected WAL file size \"%s\"" msgstr "неочікуаний розмір файлу WAL \"%s\"" -#: backup/basebackup.c:656 +#: backup/basebackup.c:658 #, c-format msgid "%lld total checksum verification failure" msgid_plural "%lld total checksum verification failures" @@ -3753,96 +3757,96 @@ msgstr[1] "всього помилок перевірки контрольних msgstr[2] "всього помилок перевірки контрольних сум: %lld" msgstr[3] "всього помилок перевірки контрольних сум: %lld" -#: backup/basebackup.c:663 +#: backup/basebackup.c:665 #, c-format msgid "checksum verification failure during base backup" msgstr "під час базового резервного копіювання виявлено неполадки контрольних сум" -#: backup/basebackup.c:733 backup/basebackup.c:742 backup/basebackup.c:753 -#: backup/basebackup.c:770 backup/basebackup.c:779 backup/basebackup.c:788 -#: backup/basebackup.c:803 backup/basebackup.c:820 backup/basebackup.c:829 -#: backup/basebackup.c:841 backup/basebackup.c:865 backup/basebackup.c:879 -#: backup/basebackup.c:890 backup/basebackup.c:901 backup/basebackup.c:914 +#: backup/basebackup.c:735 backup/basebackup.c:744 backup/basebackup.c:755 +#: backup/basebackup.c:772 backup/basebackup.c:781 backup/basebackup.c:790 +#: backup/basebackup.c:805 backup/basebackup.c:822 backup/basebackup.c:831 +#: backup/basebackup.c:843 backup/basebackup.c:867 backup/basebackup.c:881 +#: backup/basebackup.c:892 backup/basebackup.c:903 backup/basebackup.c:916 #, c-format msgid "duplicate option \"%s\"" msgstr "повторюваний параметр \"%s\"" -#: backup/basebackup.c:761 +#: backup/basebackup.c:763 #, c-format msgid "unrecognized checkpoint type: \"%s\"" msgstr "нерозпізнаний тип контрольної точки: \"%s\"" -#: backup/basebackup.c:793 +#: backup/basebackup.c:795 #, c-format msgid "incremental backups cannot be taken unless WAL summarization is enabled" msgstr "інкрементні резервні копії не можна створювати, якщо не ввімкнено підсумовування WAL" -#: backup/basebackup.c:809 +#: backup/basebackup.c:811 #, c-format msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)" msgstr "%d за припустимим діапазномо для параметру \"%s\" (%d .. %d)" -#: backup/basebackup.c:854 +#: backup/basebackup.c:856 #, c-format msgid "unrecognized manifest option: \"%s\"" msgstr "нерозпізнаний параметр маніфесту: \"%s\"" -#: backup/basebackup.c:905 +#: backup/basebackup.c:907 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "нерозпізнаний алгоритм стискання: \"%s\"" -#: backup/basebackup.c:921 +#: backup/basebackup.c:923 #, c-format msgid "unrecognized base backup option: \"%s\"" msgstr "нерозпізнаний параметр базової резервної копії: \"%s\"" -#: backup/basebackup.c:932 +#: backup/basebackup.c:934 #, c-format msgid "manifest checksums require a backup manifest" msgstr "контрольні суми маніфесту потребують резервного копіювання маніфесту" -#: backup/basebackup.c:941 +#: backup/basebackup.c:943 #, c-format msgid "target detail cannot be used without target" msgstr "елемент цілі не можна використовувати без цілі" -#: backup/basebackup.c:950 backup/basebackup_target.c:218 +#: backup/basebackup.c:952 backup/basebackup_target.c:218 #, c-format msgid "target \"%s\" does not accept a target detail" msgstr "ціль \"%s\" не приймає елемент цілі" -#: backup/basebackup.c:961 +#: backup/basebackup.c:963 #, c-format msgid "compression detail cannot be specified unless compression is enabled" msgstr "деталі стиснення не можуть бути вказані, якщо не увімкнено стиснення" -#: backup/basebackup.c:974 +#: backup/basebackup.c:976 #, c-format msgid "invalid compression specification: %s" msgstr "неприпустима специфікація стискання: %s" -#: backup/basebackup.c:1024 +#: backup/basebackup.c:1026 #, c-format msgid "must UPLOAD_MANIFEST before performing an incremental BASE_BACKUP" msgstr "повинен UPLOAD_MANIFEST перед виконанням інкрементного BASE_BACKUP" -#: backup/basebackup.c:1157 backup/basebackup.c:1358 +#: backup/basebackup.c:1159 backup/basebackup.c:1360 #, c-format msgid "could not stat file or directory \"%s\": %m" msgstr "не вдалося отримати інформацію про файл або каталог \"%s\": %m" -#: backup/basebackup.c:1544 +#: backup/basebackup.c:1546 #, c-format msgid "skipping special file \"%s\"" msgstr "спеціальний файл \"%s\" пропускається" -#: backup/basebackup.c:1751 +#: backup/basebackup.c:1753 #, c-format msgid "could not verify checksum in file \"%s\", block %u: read buffer size %d and page size %d differ" msgstr "не вдалося перевірити контрольну суму у файлі \"%s\", блок %u: розмір прочитаного буфера %d і розмір прочитаної сторінки %d відрізняються" -#: backup/basebackup.c:1813 +#: backup/basebackup.c:1815 #, c-format msgid "file \"%s\" has a total of %d checksum verification failure" msgid_plural "file \"%s\" has a total of %d checksum verification failures" @@ -3851,27 +3855,27 @@ msgstr[1] "файл \"%s\" має загальну кількість помил msgstr[2] "файл \"%s\" має загальну кількість помилок перевірки контрольної суми: %d" msgstr[3] "файл \"%s\" має загальну кількість помилок перевірки контрольної суми: %d" -#: backup/basebackup.c:1917 +#: backup/basebackup.c:1920 #, c-format msgid "checksum verification failed in file \"%s\", block %u: calculated %X but expected %X" msgstr "помилка перевірки контрольної суми у файлі \"%s\", блок %u: обчислено %X, але очікувалось %X" -#: backup/basebackup.c:1924 +#: backup/basebackup.c:1927 #, c-format msgid "further checksum verification failures in file \"%s\" will not be reported" msgstr "про подальші помилки під час перевірки контрольної суми в файлі \"%s\" повідомлятись не буде" -#: backup/basebackup.c:2048 +#: backup/basebackup.c:2052 #, c-format msgid "file name too long for tar format: \"%s\"" msgstr "ім'я файлу занадто довге для tar формату: \"%s\"" -#: backup/basebackup.c:2053 +#: backup/basebackup.c:2058 #, c-format msgid "symbolic link target too long for tar format: file name \"%s\", target \"%s\"" msgstr "мета символьного посилання занадто довга для формату tar: ім'я файлу \"%s\", мета \"%s\"" -#: backup/basebackup.c:2127 +#: backup/basebackup.c:2132 #, c-format msgid "could not read file \"%s\": read %zd of %zu" msgstr "не вдалося прочитати файл \"%s\": читання %zd з %zu" @@ -3886,65 +3890,65 @@ msgstr "стискання gzip не підтримується цією збі msgid "could not initialize compression library" msgstr "не вдалося ініціалізувати бібліотеку стискання" -#: backup/basebackup_incremental.c:294 +#: backup/basebackup_incremental.c:292 #, c-format msgid "manifest contains no required WAL ranges" msgstr "маніфест не містить необхідних діапазонів WAL" -#: backup/basebackup_incremental.c:349 +#: backup/basebackup_incremental.c:347 #, c-format msgid "timeline %u found in manifest, but not in this server's history" msgstr "часову шкалу %u знайдено в маніфесті, але не в історії цього сервера" -#: backup/basebackup_incremental.c:414 +#: backup/basebackup_incremental.c:412 #, c-format msgid "manifest requires WAL from initial timeline %u starting at %X/%X, but that timeline begins at %X/%X" msgstr "маніфест вимагає WAL з початкової шкали %u, починаючи з %X/%X, але ця шкала починається з %X/%X" -#: backup/basebackup_incremental.c:424 +#: backup/basebackup_incremental.c:422 #, c-format msgid "manifest requires WAL from continuation timeline %u starting at %X/%X, but that timeline begins at %X/%X" msgstr "маніфест вимагає WAL зі шкали продовження %u, починаючи з %X/%X, але ця шкала починається з %X/%X" -#: backup/basebackup_incremental.c:435 +#: backup/basebackup_incremental.c:433 #, c-format msgid "manifest requires WAL from final timeline %u ending at %X/%X, but this backup starts at %X/%X" msgstr "маніфест вимагає WAL з кінцевої шкали часу %u, що закінчується на %X/%X, але ця резервна копія починається з %X/%X" -#: backup/basebackup_incremental.c:439 +#: backup/basebackup_incremental.c:437 #, c-format msgid "This can happen for incremental backups on a standby if there was little activity since the previous backup." msgstr "Це може статися з інкрементними резервними копіями на резервному сервері, якщо було замало активності з минулої резервної копії." -#: backup/basebackup_incremental.c:446 +#: backup/basebackup_incremental.c:444 #, c-format msgid "manifest requires WAL from non-final timeline %u ending at %X/%X, but this server switched timelines at %X/%X" msgstr "маніфест вимагає WAL з не фінальної лінійки %u, що закінчується на %X/%X, але цей сервер перемкнув лінійки на %X/%X" -#: backup/basebackup_incremental.c:527 +#: backup/basebackup_incremental.c:525 #, c-format msgid "WAL summaries are required on timeline %u from %X/%X to %X/%X, but no summaries for that timeline and LSN range exist" msgstr "Зведення WAL потрібні на часовій шкалі %u від %X/%X до %X/%X, але зведень для цієї шкали та діапазону LSN не існує" -#: backup/basebackup_incremental.c:534 +#: backup/basebackup_incremental.c:532 #, c-format msgid "WAL summaries are required on timeline %u from %X/%X to %X/%X, but the summaries for that timeline and LSN range are incomplete" msgstr "Зведення WAL потрібні на часовій шкалі %u від %X/%X до %X/%X, але зведення для цієї часової шкали та діапазону LSN є неповними" -#: backup/basebackup_incremental.c:538 +#: backup/basebackup_incremental.c:536 #, c-format msgid "The first unsummarized LSN in this range is %X/%X." msgstr "Перший не підсумований LSN у цьому діапазоні - %X/%X." -#: backup/basebackup_incremental.c:938 +#: backup/basebackup_incremental.c:934 #, c-format msgid "backup manifest version 1 does not support incremental backup" msgstr "маніфест резервного копіювання версії 1 не підтримує інкреметного резервного копіювання" -#: backup/basebackup_incremental.c:956 +#: backup/basebackup_incremental.c:952 #, c-format -msgid "system identifier in backup manifest is %llu, but database system identifier is %llu" -msgstr "системний ідентифікатор в маніфесті резервного копіювання %llu, але ідентифікатор системи бази даних є %llu" +msgid "system identifier in backup manifest is %, but database system identifier is %" +msgstr "системний ідентифікатор у маніфесті резервної копії - %, а системний ідентифікатор бази даних - %" #: backup/basebackup_lz4.c:67 #, c-format @@ -3966,10 +3970,10 @@ msgstr "Тільки ролі з привілеями ролі \"%s\" можут msgid "relative path not allowed for backup stored on server" msgstr "відносний шлях не дозволений для резервного копіювання збереженого на сервері" -#: backup/basebackup_server.c:102 commands/dbcommands.c:477 +#: backup/basebackup_server.c:102 commands/dbcommands.c:478 #: commands/tablespace.c:157 commands/tablespace.c:173 -#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:1986 -#: storage/file/copydir.c:47 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2283 +#: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "не вдалося створити каталог \"%s\": %m" @@ -3979,15 +3983,15 @@ msgstr "не вдалося створити каталог \"%s\": %m" msgid "directory \"%s\" exists but is not empty" msgstr "каталог \"%s\" існує, але він не порожній" -#: backup/basebackup_server.c:123 utils/init/postinit.c:1177 +#: backup/basebackup_server.c:123 utils/init/postinit.c:1160 #, c-format msgid "could not access directory \"%s\": %m" msgstr "немає доступу до каталогу \"%s\": %m" #: backup/basebackup_server.c:175 backup/basebackup_server.c:182 #: backup/basebackup_server.c:268 backup/basebackup_server.c:275 -#: backup/walsummary.c:312 storage/smgr/md.c:502 storage/smgr/md.c:509 -#: storage/smgr/md.c:591 storage/smgr/md.c:613 storage/smgr/md.c:999 +#: backup/walsummary.c:312 storage/smgr/md.c:519 storage/smgr/md.c:526 +#: storage/smgr/md.c:608 storage/smgr/md.c:630 storage/smgr/md.c:1123 #, c-format msgid "Check free disk space." msgstr "Перевірьте вільний дисковий простір." @@ -4025,692 +4029,688 @@ msgstr "не вдалося включити режим довгої відст #: backup/walsummaryfuncs.c:95 #, c-format -msgid "invalid timeline %lld" -msgstr "неприпустима часова шкала %lld" +msgid "invalid timeline %" +msgstr "недійсна лінія часу %" + +#: bootstrap/bootstrap.c:239 postmaster/postmaster.c:626 tcop/postgres.c:3858 +#, c-format +msgid "--%s must be first argument" +msgstr "--%s має бути першим аргументом" -#: bootstrap/bootstrap.c:239 postmaster/postmaster.c:623 tcop/postgres.c:3946 +#: bootstrap/bootstrap.c:253 postmaster/postmaster.c:640 tcop/postgres.c:3872 #, c-format msgid "--%s requires a value" msgstr "--%s необхідне значення" -#: bootstrap/bootstrap.c:244 postmaster/postmaster.c:628 tcop/postgres.c:3951 +#: bootstrap/bootstrap.c:258 postmaster/postmaster.c:645 tcop/postgres.c:3877 #, c-format msgid "-c %s requires a value" msgstr "-c %s необхідне значення" -#: bootstrap/bootstrap.c:282 postmaster/postmaster.c:746 -#: postmaster/postmaster.c:759 +#: bootstrap/bootstrap.c:296 postmaster/postmaster.c:763 +#: postmaster/postmaster.c:776 #, c-format msgid "Try \"%s --help\" for more information.\n" msgstr "Спробуйте \"%s --help\" для додаткової інформації.\n" -#: bootstrap/bootstrap.c:291 +#: bootstrap/bootstrap.c:305 #, c-format msgid "%s: invalid command-line arguments\n" msgstr "%s: невірні аргументи командного рядка\n" -#: catalog/aclchk.c:210 +#: catalog/aclchk.c:211 #, c-format msgid "grant options can only be granted to roles" msgstr "право надання прав можна надавати тільки ролям" -#: catalog/aclchk.c:332 +#: catalog/aclchk.c:333 #, c-format msgid "no privileges were granted for column \"%s\" of relation \"%s\"" msgstr "для стовпця \"%s\" відношення \"%s\" не призначено ніяких прав" -#: catalog/aclchk.c:337 +#: catalog/aclchk.c:338 #, c-format msgid "no privileges were granted for \"%s\"" msgstr "для \"%s\" не призначено ніяких прав" -#: catalog/aclchk.c:345 +#: catalog/aclchk.c:346 #, c-format msgid "not all privileges were granted for column \"%s\" of relation \"%s\"" msgstr "для стовпця \"%s\" відношення \"%s\" призначено не всі права" -#: catalog/aclchk.c:350 +#: catalog/aclchk.c:351 #, c-format msgid "not all privileges were granted for \"%s\"" msgstr "для \"%s\" призначено не всі права" -#: catalog/aclchk.c:361 +#: catalog/aclchk.c:362 #, c-format msgid "no privileges could be revoked for column \"%s\" of relation \"%s\"" msgstr "для стовпця \"%s\" відношення \"%s\" жодні права не можуть бути відкликані" -#: catalog/aclchk.c:366 +#: catalog/aclchk.c:367 #, c-format msgid "no privileges could be revoked for \"%s\"" msgstr "для \"%s\" жодні права не можуть бути відкликані" -#: catalog/aclchk.c:374 +#: catalog/aclchk.c:375 #, c-format msgid "not all privileges could be revoked for column \"%s\" of relation \"%s\"" msgstr "для стовпця \"%s\" відношення \"%s\" не всі права можуть бути відкликані" -#: catalog/aclchk.c:379 +#: catalog/aclchk.c:380 #, c-format msgid "not all privileges could be revoked for \"%s\"" msgstr "для \"%s\" не всі права можуть бути відкликані" -#: catalog/aclchk.c:411 +#: catalog/aclchk.c:412 #, c-format msgid "grantor must be current user" msgstr "грантодавець повинен бути поточним користувачем" -#: catalog/aclchk.c:479 catalog/aclchk.c:1054 +#: catalog/aclchk.c:480 catalog/aclchk.c:996 #, c-format msgid "invalid privilege type %s for relation" msgstr "недійсний тип права %s для відношення" -#: catalog/aclchk.c:483 catalog/aclchk.c:1058 +#: catalog/aclchk.c:484 catalog/aclchk.c:1000 #, c-format msgid "invalid privilege type %s for sequence" msgstr "невірний тип права %s для послідовності" -#: catalog/aclchk.c:487 +#: catalog/aclchk.c:488 #, c-format msgid "invalid privilege type %s for database" msgstr "недійсний тип права %s для бази даних" -#: catalog/aclchk.c:491 +#: catalog/aclchk.c:492 #, c-format msgid "invalid privilege type %s for domain" msgstr "недійсний тип права %s для домену" -#: catalog/aclchk.c:495 catalog/aclchk.c:1062 +#: catalog/aclchk.c:496 catalog/aclchk.c:1004 #, c-format msgid "invalid privilege type %s for function" msgstr "недійсний тип права %s для функції" -#: catalog/aclchk.c:499 +#: catalog/aclchk.c:500 #, c-format msgid "invalid privilege type %s for language" msgstr "недійсний тип права %s для мови" -#: catalog/aclchk.c:503 +#: catalog/aclchk.c:504 catalog/aclchk.c:1024 #, c-format msgid "invalid privilege type %s for large object" msgstr "недійсний тип права %s для великого об'єкту" -#: catalog/aclchk.c:507 catalog/aclchk.c:1078 +#: catalog/aclchk.c:508 catalog/aclchk.c:1020 #, c-format msgid "invalid privilege type %s for schema" msgstr "недійсний тип привілеїв %s для схеми" -#: catalog/aclchk.c:511 catalog/aclchk.c:1066 +#: catalog/aclchk.c:512 catalog/aclchk.c:1008 #, c-format msgid "invalid privilege type %s for procedure" msgstr "недійсний тип привілеїв %s для процедури" -#: catalog/aclchk.c:515 catalog/aclchk.c:1070 +#: catalog/aclchk.c:516 catalog/aclchk.c:1012 #, c-format msgid "invalid privilege type %s for routine" msgstr "недійсний тип привілею %s для підпрограми" -#: catalog/aclchk.c:519 +#: catalog/aclchk.c:520 #, c-format msgid "invalid privilege type %s for tablespace" msgstr "недійсний тип привілеїв %s для табличного простору" -#: catalog/aclchk.c:523 catalog/aclchk.c:1074 +#: catalog/aclchk.c:524 catalog/aclchk.c:1016 #, c-format msgid "invalid privilege type %s for type" msgstr "недійсний тип привілею %s для типу" -#: catalog/aclchk.c:527 +#: catalog/aclchk.c:528 #, c-format msgid "invalid privilege type %s for foreign-data wrapper" msgstr "недійсний тип привілею %s для джерела сторонніх даних" -#: catalog/aclchk.c:531 +#: catalog/aclchk.c:532 #, c-format msgid "invalid privilege type %s for foreign server" msgstr "недійсний тип привілею %s для стороннього серверу" -#: catalog/aclchk.c:535 +#: catalog/aclchk.c:536 #, c-format msgid "invalid privilege type %s for parameter" msgstr "неприпустимий тип привілею %s для параметру" -#: catalog/aclchk.c:574 +#: catalog/aclchk.c:575 #, c-format msgid "column privileges are only valid for relations" msgstr "привілеї стовпця дійсні лише для зв'язків" -#: catalog/aclchk.c:737 catalog/aclchk.c:3624 catalog/objectaddress.c:1054 -#: catalog/pg_largeobject.c:113 storage/large_object/inv_api.c:285 -#, c-format -msgid "large object %u does not exist" -msgstr "великого об'єкту %u не існує" - -#: catalog/aclchk.c:1111 +#: catalog/aclchk.c:1057 #, c-format msgid "default privileges cannot be set for columns" msgstr "права за замовчуванням не можна встановити для стовпців" -#: catalog/aclchk.c:1147 +#: catalog/aclchk.c:1093 #, c-format msgid "permission denied to change default privileges" msgstr "немає дозволу для зміни прав за замовчуванням" -#: catalog/aclchk.c:1265 -#, c-format -msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" -msgstr "речення IN SCHEMA не можна використати в GRANT/REVOKE ON SCHEMAS" - -#: catalog/aclchk.c:1616 catalog/catalog.c:650 catalog/objectaddress.c:1523 -#: catalog/pg_publication.c:528 commands/analyze.c:380 commands/copy.c:947 -#: commands/sequence.c:1655 commands/tablecmds.c:7518 commands/tablecmds.c:7672 -#: commands/tablecmds.c:7722 commands/tablecmds.c:7796 -#: commands/tablecmds.c:7866 commands/tablecmds.c:7996 -#: commands/tablecmds.c:8125 commands/tablecmds.c:8219 -#: commands/tablecmds.c:8320 commands/tablecmds.c:8447 -#: commands/tablecmds.c:8477 commands/tablecmds.c:8619 -#: commands/tablecmds.c:8712 commands/tablecmds.c:8846 -#: commands/tablecmds.c:8958 commands/tablecmds.c:12695 -#: commands/tablecmds.c:12887 commands/tablecmds.c:13048 -#: commands/tablecmds.c:14237 commands/tablecmds.c:16863 commands/trigger.c:942 -#: parser/analyze.c:2530 parser/parse_relation.c:737 parser/parse_target.c:1067 -#: parser/parse_type.c:144 parser/parse_utilcmd.c:3409 -#: parser/parse_utilcmd.c:3449 parser/parse_utilcmd.c:3491 utils/adt/acl.c:2923 -#: utils/adt/ruleutils.c:2807 +#: catalog/aclchk.c:1211 catalog/aclchk.c:1222 +#, c-format +msgid "cannot use IN SCHEMA clause when using %s" +msgstr "не можна використовувати речення IN SCHEMA при використанні %s" + +#: catalog/aclchk.c:1577 catalog/catalog.c:684 catalog/heap.c:2621 +#: catalog/heap.c:2940 catalog/objectaddress.c:1528 +#: catalog/pg_publication.c:570 commands/analyze.c:388 commands/copy.c:1039 +#: commands/sequence.c:1655 commands/tablecmds.c:7751 commands/tablecmds.c:7929 +#: commands/tablecmds.c:8130 commands/tablecmds.c:8259 +#: commands/tablecmds.c:8413 commands/tablecmds.c:8507 +#: commands/tablecmds.c:8610 commands/tablecmds.c:8776 +#: commands/tablecmds.c:8806 commands/tablecmds.c:8961 +#: commands/tablecmds.c:9064 commands/tablecmds.c:9198 +#: commands/tablecmds.c:9311 commands/tablecmds.c:14397 +#: commands/tablecmds.c:14600 commands/tablecmds.c:14761 +#: commands/tablecmds.c:15989 commands/tablecmds.c:18756 commands/trigger.c:948 +#: parser/analyze.c:2575 parser/parse_relation.c:749 parser/parse_target.c:1070 +#: parser/parse_type.c:144 parser/parse_utilcmd.c:3662 +#: parser/parse_utilcmd.c:3702 parser/parse_utilcmd.c:3744 +#: statistics/attribute_stats.c:212 statistics/attribute_stats.c:955 +#: utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "стовпець \"%s\" зв'язку \"%s\" не існує" -#: catalog/aclchk.c:1861 +#: catalog/aclchk.c:1822 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\" є індексом" -#: catalog/aclchk.c:1868 commands/tablecmds.c:14394 commands/tablecmds.c:17772 +#: catalog/aclchk.c:1829 commands/tablecmds.c:16146 commands/tablecmds.c:19675 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\" це складений тип" -#: catalog/aclchk.c:1876 catalog/objectaddress.c:1363 commands/tablecmds.c:263 -#: commands/tablecmds.c:17736 utils/adt/acl.c:2107 utils/adt/acl.c:2137 -#: utils/adt/acl.c:2170 utils/adt/acl.c:2206 utils/adt/acl.c:2237 -#: utils/adt/acl.c:2268 +#: catalog/aclchk.c:1837 catalog/objectaddress.c:1368 commands/tablecmds.c:266 +#: commands/tablecmds.c:19639 utils/adt/acl.c:2122 utils/adt/acl.c:2152 +#: utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 +#: utils/adt/acl.c:2283 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\" не є послідовністю" -#: catalog/aclchk.c:1914 +#: catalog/aclchk.c:1875 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "послідовність \"%s\" підтримує лише привілеї USAGE, SELECT та UPDATE" -#: catalog/aclchk.c:1931 +#: catalog/aclchk.c:1892 #, c-format msgid "invalid privilege type %s for table" msgstr "недійсний тип привілею %s для таблиці" -#: catalog/aclchk.c:2093 +#: catalog/aclchk.c:2057 #, c-format msgid "invalid privilege type %s for column" msgstr "недійсний тип привілею %s для стовпця" -#: catalog/aclchk.c:2106 +#: catalog/aclchk.c:2070 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "послідовність \"%s\" підтримує тільки привілей стовпця SELECT" -#: catalog/aclchk.c:2296 +#: catalog/aclchk.c:2261 #, c-format msgid "language \"%s\" is not trusted" msgstr "мова \"%s\" не є довіреною" -#: catalog/aclchk.c:2298 +#: catalog/aclchk.c:2263 #, c-format msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages." msgstr "GRANT і REVOKE не є допустимими для недовірених мов, тому що тільки суперкористувачі можуть використовувати недовірені мови." -#: catalog/aclchk.c:2449 +#: catalog/aclchk.c:2414 #, c-format msgid "cannot set privileges of array types" msgstr "не можна встановити права для типів масивів" -#: catalog/aclchk.c:2450 +#: catalog/aclchk.c:2415 #, c-format msgid "Set the privileges of the element type instead." msgstr "Замість цього встановіть права для типу елементу." -#: catalog/aclchk.c:2454 +#: catalog/aclchk.c:2419 #, c-format msgid "cannot set privileges of multirange types" msgstr "не можна встановити права для типів множинного діапазону" -#: catalog/aclchk.c:2455 +#: catalog/aclchk.c:2420 #, c-format msgid "Set the privileges of the range type instead." msgstr "Замість цього встановіть права типу діапазону." -#: catalog/aclchk.c:2462 catalog/objectaddress.c:1629 -#, c-format -msgid "\"%s\" is not a domain" -msgstr "\"%s\" не є доменом" - -#: catalog/aclchk.c:2648 +#: catalog/aclchk.c:2603 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "нерозпізнаний привілей \"%s\"" -#: catalog/aclchk.c:2715 +#: catalog/aclchk.c:2670 #, c-format msgid "permission denied for aggregate %s" msgstr "немає дозволу для агрегату %s" -#: catalog/aclchk.c:2718 +#: catalog/aclchk.c:2673 #, c-format msgid "permission denied for collation %s" msgstr "немає дозволу для сортування %s" -#: catalog/aclchk.c:2721 +#: catalog/aclchk.c:2676 #, c-format msgid "permission denied for column %s" msgstr "немає дозволу для стовпця %s" -#: catalog/aclchk.c:2724 +#: catalog/aclchk.c:2679 #, c-format msgid "permission denied for conversion %s" msgstr "немає дозволу для перетворення %s" -#: catalog/aclchk.c:2727 +#: catalog/aclchk.c:2682 #, c-format msgid "permission denied for database %s" msgstr "немає доступу для бази даних %s" -#: catalog/aclchk.c:2730 +#: catalog/aclchk.c:2685 #, c-format msgid "permission denied for domain %s" msgstr "немає дозволу для домену %s" -#: catalog/aclchk.c:2733 +#: catalog/aclchk.c:2688 #, c-format msgid "permission denied for event trigger %s" msgstr "немає дозволу для тригера подій %s" -#: catalog/aclchk.c:2736 +#: catalog/aclchk.c:2691 #, c-format msgid "permission denied for extension %s" msgstr "немає дозволу для розширення %s" -#: catalog/aclchk.c:2739 +#: catalog/aclchk.c:2694 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "немає дозволу для джерела сторонніх даних %s" -#: catalog/aclchk.c:2742 +#: catalog/aclchk.c:2697 #, c-format msgid "permission denied for foreign server %s" msgstr "немає дозволу для стороннього серверу %s" -#: catalog/aclchk.c:2745 +#: catalog/aclchk.c:2700 #, c-format msgid "permission denied for foreign table %s" msgstr "немає дозволу для сторонньої таблиці %s" -#: catalog/aclchk.c:2748 +#: catalog/aclchk.c:2703 #, c-format msgid "permission denied for function %s" msgstr "немає дозволу для функції %s" -#: catalog/aclchk.c:2751 +#: catalog/aclchk.c:2706 #, c-format msgid "permission denied for index %s" msgstr "немає дозволу для індексу %s" -#: catalog/aclchk.c:2754 +#: catalog/aclchk.c:2709 #, c-format msgid "permission denied for language %s" msgstr "немає дозволу для мови %s" -#: catalog/aclchk.c:2757 +#: catalog/aclchk.c:2712 #, c-format msgid "permission denied for large object %s" msgstr "немає дозволу для великого об'єкту %s" -#: catalog/aclchk.c:2760 +#: catalog/aclchk.c:2715 #, c-format msgid "permission denied for materialized view %s" msgstr "немає дозволу для матеріалізованого подання %s" -#: catalog/aclchk.c:2763 +#: catalog/aclchk.c:2718 #, c-format msgid "permission denied for operator class %s" msgstr "немає дозволу для класу операторів %s" -#: catalog/aclchk.c:2766 +#: catalog/aclchk.c:2721 #, c-format msgid "permission denied for operator %s" msgstr "немає дозволу для оператора %s" -#: catalog/aclchk.c:2769 +#: catalog/aclchk.c:2724 #, c-format msgid "permission denied for operator family %s" msgstr "немає дозволу для сімейства операторів %s" -#: catalog/aclchk.c:2772 +#: catalog/aclchk.c:2727 #, c-format msgid "permission denied for parameter %s" msgstr "дозвіл відхилено для параметру %s" -#: catalog/aclchk.c:2775 +#: catalog/aclchk.c:2730 #, c-format msgid "permission denied for policy %s" msgstr "немає дозволу для політики %s" -#: catalog/aclchk.c:2778 +#: catalog/aclchk.c:2733 #, c-format msgid "permission denied for procedure %s" msgstr "немає дозволу для процедури %s" -#: catalog/aclchk.c:2781 +#: catalog/aclchk.c:2736 #, c-format msgid "permission denied for publication %s" msgstr "немає дозволу для публікації %s" -#: catalog/aclchk.c:2784 +#: catalog/aclchk.c:2739 #, c-format msgid "permission denied for routine %s" msgstr "немає дозволу для підпрограми %s" -#: catalog/aclchk.c:2787 +#: catalog/aclchk.c:2742 #, c-format msgid "permission denied for schema %s" msgstr "немає дозволу для схеми %s" -#: catalog/aclchk.c:2790 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2745 commands/sequence.c:654 commands/sequence.c:880 #: commands/sequence.c:922 commands/sequence.c:963 commands/sequence.c:1753 -#: commands/sequence.c:1799 #, c-format msgid "permission denied for sequence %s" msgstr "немає дозволу для послідовності %s" -#: catalog/aclchk.c:2793 +#: catalog/aclchk.c:2748 #, c-format msgid "permission denied for statistics object %s" msgstr "немає дозволу для об'єкту статистики %s" -#: catalog/aclchk.c:2796 +#: catalog/aclchk.c:2751 #, c-format msgid "permission denied for subscription %s" msgstr "немає дозволу для підписки %s" -#: catalog/aclchk.c:2799 +#: catalog/aclchk.c:2754 #, c-format msgid "permission denied for table %s" msgstr "немає дозволу для таблиці %s" -#: catalog/aclchk.c:2802 +#: catalog/aclchk.c:2757 #, c-format msgid "permission denied for tablespace %s" msgstr "немає дозволу для табличного простору %s" -#: catalog/aclchk.c:2805 +#: catalog/aclchk.c:2760 #, c-format msgid "permission denied for text search configuration %s" msgstr "немає дозволу для конфігурації текстового пошуку %s" -#: catalog/aclchk.c:2808 +#: catalog/aclchk.c:2763 #, c-format msgid "permission denied for text search dictionary %s" msgstr "немає дозволу для словника текстового пошуку %s" -#: catalog/aclchk.c:2811 +#: catalog/aclchk.c:2766 #, c-format msgid "permission denied for type %s" msgstr "немає дозволу для типу %s" -#: catalog/aclchk.c:2814 +#: catalog/aclchk.c:2769 #, c-format msgid "permission denied for view %s" msgstr "немає дозволу для подання %s" -#: catalog/aclchk.c:2850 +#: catalog/aclchk.c:2805 #, c-format msgid "must be owner of aggregate %s" msgstr "треба бути власником агрегату %s" -#: catalog/aclchk.c:2853 +#: catalog/aclchk.c:2808 #, c-format msgid "must be owner of collation %s" msgstr "треба бути власником правил сортування %s" -#: catalog/aclchk.c:2856 +#: catalog/aclchk.c:2811 #, c-format msgid "must be owner of conversion %s" msgstr "треба бути власником перетворення %s" -#: catalog/aclchk.c:2859 +#: catalog/aclchk.c:2814 #, c-format msgid "must be owner of database %s" msgstr "треба бути власником бази даних %s" -#: catalog/aclchk.c:2862 +#: catalog/aclchk.c:2817 #, c-format msgid "must be owner of domain %s" msgstr "треба бути власником домену %s" -#: catalog/aclchk.c:2865 +#: catalog/aclchk.c:2820 #, c-format msgid "must be owner of event trigger %s" msgstr "треба бути власником тригеру подій %s" -#: catalog/aclchk.c:2868 +#: catalog/aclchk.c:2823 #, c-format msgid "must be owner of extension %s" msgstr "треба бути власником розширення %s" -#: catalog/aclchk.c:2871 +#: catalog/aclchk.c:2826 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "треба бути власником джерела сторонніх даних %s" -#: catalog/aclchk.c:2874 +#: catalog/aclchk.c:2829 #, c-format msgid "must be owner of foreign server %s" msgstr "треба бути власником стороннього серверу %s" -#: catalog/aclchk.c:2877 +#: catalog/aclchk.c:2832 #, c-format msgid "must be owner of foreign table %s" msgstr "треба бути власником сторонньої таблиці %s" -#: catalog/aclchk.c:2880 +#: catalog/aclchk.c:2835 #, c-format msgid "must be owner of function %s" msgstr "треба бути власником функції %s" -#: catalog/aclchk.c:2883 +#: catalog/aclchk.c:2838 #, c-format msgid "must be owner of index %s" msgstr "треба бути власником індексу %s" -#: catalog/aclchk.c:2886 +#: catalog/aclchk.c:2841 #, c-format msgid "must be owner of language %s" msgstr "треба бути власником мови %s" -#: catalog/aclchk.c:2889 +#: catalog/aclchk.c:2844 #, c-format msgid "must be owner of large object %s" msgstr "треба бути власником великого об'єкту %s" -#: catalog/aclchk.c:2892 +#: catalog/aclchk.c:2847 #, c-format msgid "must be owner of materialized view %s" msgstr "треба бути власником матеріалізованого подання %s" -#: catalog/aclchk.c:2895 +#: catalog/aclchk.c:2850 #, c-format msgid "must be owner of operator class %s" msgstr "треба бути власником класу операторів %s" -#: catalog/aclchk.c:2898 +#: catalog/aclchk.c:2853 #, c-format msgid "must be owner of operator %s" msgstr "треба бути власником оператора %s" -#: catalog/aclchk.c:2901 +#: catalog/aclchk.c:2856 #, c-format msgid "must be owner of operator family %s" msgstr "треба бути власником сімейства операторів %s" -#: catalog/aclchk.c:2904 +#: catalog/aclchk.c:2859 #, c-format msgid "must be owner of procedure %s" msgstr "треба бути власником процедури %s" -#: catalog/aclchk.c:2907 +#: catalog/aclchk.c:2862 #, c-format msgid "must be owner of publication %s" msgstr "треба бути власником публікації %s" -#: catalog/aclchk.c:2910 +#: catalog/aclchk.c:2865 #, c-format msgid "must be owner of routine %s" msgstr "треба бути власником підпрограми %s" -#: catalog/aclchk.c:2913 +#: catalog/aclchk.c:2868 #, c-format msgid "must be owner of sequence %s" msgstr "треба бути власником послідовності %s" -#: catalog/aclchk.c:2916 +#: catalog/aclchk.c:2871 #, c-format msgid "must be owner of subscription %s" msgstr "треба бути власником підписки %s" -#: catalog/aclchk.c:2919 +#: catalog/aclchk.c:2874 #, c-format msgid "must be owner of table %s" msgstr "треба бути власником таблиці %s" -#: catalog/aclchk.c:2922 +#: catalog/aclchk.c:2877 #, c-format msgid "must be owner of type %s" msgstr "треба бути власником типу %s" -#: catalog/aclchk.c:2925 +#: catalog/aclchk.c:2880 #, c-format msgid "must be owner of view %s" msgstr "треба бути власником подання %s" -#: catalog/aclchk.c:2928 +#: catalog/aclchk.c:2883 #, c-format msgid "must be owner of schema %s" msgstr "треба бути власником схеми %s" -#: catalog/aclchk.c:2931 +#: catalog/aclchk.c:2886 #, c-format msgid "must be owner of statistics object %s" msgstr "треба бути власником об'єкту статистики %s" -#: catalog/aclchk.c:2934 +#: catalog/aclchk.c:2889 #, c-format msgid "must be owner of tablespace %s" msgstr "треба бути власником табличного простору %s" -#: catalog/aclchk.c:2937 +#: catalog/aclchk.c:2892 #, c-format msgid "must be owner of text search configuration %s" msgstr "треба бути власником конфігурації текстового пошуку %s" -#: catalog/aclchk.c:2940 +#: catalog/aclchk.c:2895 #, c-format msgid "must be owner of text search dictionary %s" msgstr "треба бути власником словника текстового пошуку %s" -#: catalog/aclchk.c:2954 +#: catalog/aclchk.c:2909 #, c-format msgid "must be owner of relation %s" msgstr "треба бути власником відношення %s" -#: catalog/aclchk.c:3000 +#: catalog/aclchk.c:2955 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "немає дозволу для стовпця \"%s\" відношення \"%s\"" -#: catalog/aclchk.c:3157 catalog/aclchk.c:4165 catalog/aclchk.c:4196 -#, c-format -msgid "%s with OID %u does not exist" -msgstr "%s з OID %u не існує" - -#: catalog/aclchk.c:3240 catalog/aclchk.c:3259 +#: catalog/aclchk.c:3189 catalog/aclchk.c:3208 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "атрибут %d відношення з OID %u не існує" -#: catalog/aclchk.c:3297 catalog/aclchk.c:3360 catalog/aclchk.c:3999 +#: catalog/aclchk.c:3246 catalog/aclchk.c:3309 catalog/aclchk.c:3948 #, c-format msgid "relation with OID %u does not exist" msgstr "відношення з OID %u не існує" -#: catalog/aclchk.c:3545 +#: catalog/aclchk.c:3494 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "параметр ACL з OID %u не існує" -#: catalog/aclchk.c:3718 commands/collationcmds.c:853 -#: commands/publicationcmds.c:1739 +#: catalog/aclchk.c:3573 catalog/objectaddress.c:1055 +#: catalog/pg_largeobject.c:125 libpq/be-fsstubs.c:323 +#: storage/large_object/inv_api.c:247 +#, c-format +msgid "large object %u does not exist" +msgstr "великого об'єкту %u не існує" + +#: catalog/aclchk.c:3667 commands/collationcmds.c:849 +#: commands/publicationcmds.c:1846 #, c-format msgid "schema with OID %u does not exist" msgstr "схема з OID %u не існує" -#: catalog/aclchk.c:3792 catalog/aclchk.c:3819 catalog/aclchk.c:3848 -#: utils/cache/typcache.c:392 utils/cache/typcache.c:447 +#: catalog/aclchk.c:3741 catalog/aclchk.c:3768 catalog/aclchk.c:3797 +#: utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" msgstr "тип з OID %u не існує" -#: catalog/catalog.c:468 +#: catalog/catalog.c:504 #, c-format msgid "still searching for an unused OID in relation \"%s\"" msgstr "все ще шукаю невикористаний OID у відношенні \"%s\"" -#: catalog/catalog.c:470 +#: catalog/catalog.c:506 #, c-format -msgid "OID candidates have been checked %llu time, but no unused OID has been found yet." -msgid_plural "OID candidates have been checked %llu times, but no unused OID has been found yet." -msgstr[0] "OID кандидати буле перевірені %llu раз, але невикористаного OID все ще не знайдено." -msgstr[1] "OID кандидати буле перевірені %llu рази, але невикористаного OID все ще не знайдено." -msgstr[2] "OID кандидати буле перевірені %llu разів, але невикористаного OID все ще не знайдено." -msgstr[3] "OID кандидати буле перевірені %llu разів, але невикористаного OID все ще не знайдено." +msgid "OID candidates have been checked % time, but no unused OID has been found yet." +msgid_plural "OID candidates have been checked % times, but no unused OID has been found yet." +msgstr[0] "OID кандидати буле перевірені % раз, але невикористаного OID все ще не знайдено." +msgstr[1] "OID кандидати буле перевірені % рази, але невикористаного OID все ще не знайдено." +msgstr[2] "OID кандидати буле перевірені % разів, але невикористаного OID все ще не знайдено." +msgstr[3] "OID кандидати буле перевірені % разів, але невикористаного OID все ще не знайдено." -#: catalog/catalog.c:495 +#: catalog/catalog.c:531 #, c-format -msgid "new OID has been assigned in relation \"%s\" after %llu retry" -msgid_plural "new OID has been assigned in relation \"%s\" after %llu retries" -msgstr[0] "новий OID було призначено у відношенні \"%s\" після %llu повторної спроби" -msgstr[1] "новий OID було призначено у відношенні \"%s\" після %llu повторних спроб" -msgstr[2] "новий OID було призначено у відношенні \"%s\" після %llu повторних спроб" -msgstr[3] "новий OID було призначено у відношенні \"%s\" після %llu повторних спроб" +msgid "new OID has been assigned in relation \"%s\" after % retry" +msgid_plural "new OID has been assigned in relation \"%s\" after % retries" +msgstr[0] "новий OID було призначено у відношенні \"%s\" після % повторної спроби" +msgstr[1] "новий OID було призначено у відношенні \"%s\" після % повторних спроб" +msgstr[2] "новий OID було призначено у відношенні \"%s\" після % повторних спроб" +msgstr[3] "новий OID було призначено у відношенні \"%s\" після % повторних спроб" -#: catalog/catalog.c:628 catalog/catalog.c:695 +#: catalog/catalog.c:662 catalog/catalog.c:729 #, c-format msgid "must be superuser to call %s()" msgstr "для виклику %s() потрібно бути суперкористувачем" -#: catalog/catalog.c:637 +#: catalog/catalog.c:671 #, c-format msgid "pg_nextoid() can only be used on system catalogs" msgstr "pg_nextoid() можна використовувати лише для системних каталогів" -#: catalog/catalog.c:642 parser/parse_utilcmd.c:2270 +#: catalog/catalog.c:676 parser/parse_utilcmd.c:2447 #, c-format msgid "index \"%s\" does not belong to table \"%s\"" msgstr "індекс \"%s\" не належить таблиці \"%s\"" -#: catalog/catalog.c:659 +#: catalog/catalog.c:693 #, c-format msgid "column \"%s\" is not of type oid" msgstr "стовпець \"%s\" повинен мати тип oid" -#: catalog/catalog.c:666 +#: catalog/catalog.c:700 #, c-format msgid "index \"%s\" is not the index for column \"%s\"" msgstr "індекс \"%s\" не є індексом для стовпця \"%s\"" @@ -4760,20 +4760,6 @@ msgstr[3] "\n" msgid "cannot drop %s because other objects depend on it" msgstr "неможливо видалити %s, тому що від нього залежать інші об'єкти" -#: catalog/dependency.c:1153 catalog/dependency.c:1160 -#: catalog/dependency.c:1171 commands/tablecmds.c:1442 -#: commands/tablecmds.c:14986 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:211 commands/view.c:441 executor/execExprInterp.c:4643 -#: executor/execExprInterp.c:4651 libpq/auth.c:324 -#: replication/logical/applyparallelworker.c:1041 replication/syncrep.c:1011 -#: storage/lmgr/deadlock.c:1134 storage/lmgr/proc.c:1427 utils/misc/guc.c:3169 -#: utils/misc/guc.c:3210 utils/misc/guc.c:3285 utils/misc/guc.c:6790 -#: utils/misc/guc.c:6824 utils/misc/guc.c:6858 utils/misc/guc.c:6901 -#: utils/misc/guc.c:6943 -#, c-format -msgid "%s" -msgstr "%s" - #: catalog/dependency.c:1154 catalog/dependency.c:1161 #, c-format msgid "Use DROP ... CASCADE to drop the dependent objects too." @@ -4798,674 +4784,747 @@ msgstr[3] "видалення поширюється (cascades) на ще %d і msgid "constant of the type %s cannot be used here" msgstr "константа типу %s не може бути використана тут" -#: catalog/dependency.c:2375 parser/parse_relation.c:3407 -#: parser/parse_relation.c:3417 +#: catalog/dependency.c:2205 +#, c-format +msgid "transition table \"%s\" cannot be referenced in a persistent object" +msgstr "таблиця переходу \"%s\" не може бути посиланням у постійному об'єкті" + +#: catalog/dependency.c:2390 parser/parse_relation.c:3513 +#: parser/parse_relation.c:3523 statistics/attribute_stats.c:224 +#: statistics/attribute_stats.c:596 statistics/attribute_stats.c:604 #, c-format msgid "column %d of relation \"%s\" does not exist" msgstr "стовпець %d відношення \"%s\" не існує" -#: catalog/heap.c:325 +#: catalog/heap.c:321 #, c-format msgid "permission denied to create \"%s.%s\"" msgstr "немає дозволу для створення \"%s.%s\"" -#: catalog/heap.c:327 +#: catalog/heap.c:323 #, c-format msgid "System catalog modifications are currently disallowed." msgstr "Змінення системного каталогу наразі заборонено." -#: catalog/heap.c:467 commands/tablecmds.c:2478 commands/tablecmds.c:2900 -#: commands/tablecmds.c:7140 +#: catalog/heap.c:463 commands/tablecmds.c:2562 commands/tablecmds.c:3014 +#: commands/tablecmds.c:7361 #, c-format msgid "tables can have at most %d columns" msgstr "таблиці можуть містити максимум %d стовпців" -#: catalog/heap.c:485 commands/tablecmds.c:7409 +#: catalog/heap.c:481 commands/tablecmds.c:7663 #, c-format msgid "column name \"%s\" conflicts with a system column name" msgstr "ім'я стовпця \"%s\" конфліктує з системним іменем стовпця" -#: catalog/heap.c:501 +#: catalog/heap.c:497 #, c-format msgid "column name \"%s\" specified more than once" msgstr "ім'я стовпця \"%s\" вказано кілька разів" #. translator: first %s is an integer not a name -#: catalog/heap.c:579 +#: catalog/heap.c:575 #, c-format msgid "partition key column %s has pseudo-type %s" msgstr "стовпець ключа секціонування %s має псевдотип %s" -#: catalog/heap.c:584 +#: catalog/heap.c:580 #, c-format msgid "column \"%s\" has pseudo-type %s" msgstr "стовпець \"%s\" має псевдо-тип %s" -#: catalog/heap.c:615 +#: catalog/heap.c:595 +#, c-format +msgid "virtual generated column \"%s\" cannot have a domain type" +msgstr "віртуальний генерований стовпець \"%s\" не може мати доменний тип" + +#: catalog/heap.c:622 #, c-format msgid "composite type %s cannot be made a member of itself" msgstr "складений тип %s не може містити сам себе" +#: catalog/heap.c:673 +#, c-format +msgid "virtual generated column \"%s\" cannot have a user-defined type" +msgstr "віртуальний генерований стовпець \"%s\" не може мати користувацький тип" + +#: catalog/heap.c:674 catalog/heap.c:3294 +#, c-format +msgid "Virtual generated columns that make use of user-defined types are not yet supported." +msgstr "Віртуальні генеровані стовпці, що використовують користувацькі типи, ще не підтримуються." + #. translator: first %s is an integer not a name -#: catalog/heap.c:670 +#: catalog/heap.c:686 #, c-format msgid "no collation was derived for partition key column %s with collatable type %s" msgstr "для стовпця ключа секціонування \"%s\" з сортируючим типом %s не вдалося отримати параметри сортування" -#: catalog/heap.c:676 commands/createas.c:198 commands/createas.c:505 +#: catalog/heap.c:692 commands/createas.c:200 commands/createas.c:512 #, c-format msgid "no collation was derived for column \"%s\" with collatable type %s" msgstr "для стовпця \"%s\" із сортувальним типом %s не вдалося отримати параметри сортування" -#: catalog/heap.c:1161 catalog/index.c:899 commands/createas.c:401 -#: commands/tablecmds.c:4149 +#: catalog/heap.c:1179 catalog/index.c:901 commands/createas.c:408 +#: commands/tablecmds.c:4296 #, c-format msgid "relation \"%s\" already exists" msgstr "відношення \"%s\" вже існує" -#: catalog/heap.c:1177 catalog/pg_type.c:434 catalog/pg_type.c:805 +#: catalog/heap.c:1195 catalog/pg_type.c:434 catalog/pg_type.c:805 #: catalog/pg_type.c:977 commands/typecmds.c:253 commands/typecmds.c:265 -#: commands/typecmds.c:758 commands/typecmds.c:1179 commands/typecmds.c:1405 -#: commands/typecmds.c:1585 commands/typecmds.c:2556 +#: commands/typecmds.c:758 commands/typecmds.c:1213 commands/typecmds.c:1439 +#: commands/typecmds.c:1619 commands/typecmds.c:2594 #, c-format msgid "type \"%s\" already exists" msgstr "тип \"%s\" вже існує" -#: catalog/heap.c:1178 +#: catalog/heap.c:1196 #, 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 "З відношенням вже пов'язаний тип з таким самим іменем, тому виберіть ім'я, яке не буде конфліктувати з типами, що існують." -#: catalog/heap.c:1218 +#: catalog/heap.c:1236 #, c-format msgid "toast relfilenumber value not set when in binary upgrade mode" msgstr "значення toast relfilenumber не встановлено в режимі двійкового оновлення" -#: catalog/heap.c:1229 +#: catalog/heap.c:1247 #, c-format msgid "pg_class heap OID value not set when in binary upgrade mode" msgstr "значення OID в pg_class не задано в режимі двійкового оновлення" -#: catalog/heap.c:1239 +#: catalog/heap.c:1257 #, c-format msgid "relfilenumber value not set when in binary upgrade mode" msgstr "значення relfilenumber не встановлено в режимі двійкового оновлення" -#: catalog/heap.c:2128 +#: catalog/heap.c:2202 #, c-format msgid "cannot add NO INHERIT constraint to partitioned table \"%s\"" msgstr "не можна додати обмеження NO INHERIT до секціонованої таблиці \"%s\"" -#: catalog/heap.c:2400 +#: catalog/heap.c:2525 #, c-format msgid "check constraint \"%s\" already exists" msgstr "обмеження перевірки \"%s\" вже інсує" -#: catalog/heap.c:2572 catalog/index.c:913 catalog/pg_constraint.c:724 -#: commands/tablecmds.c:9333 +#: catalog/heap.c:2626 catalog/heap.c:2946 +#, c-format +msgid "cannot add not-null constraint on system column \"%s\"" +msgstr "не можна додати обмеження not-null для системного стовпця \"%s\"" + +#: catalog/heap.c:2653 catalog/heap.c:2779 catalog/heap.c:3030 +#: catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9821 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "обмеження \"%s\" відношення \"%s\" вже існує" -#: catalog/heap.c:2579 +#: catalog/heap.c:2786 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\"" msgstr "обмеження \"%s\" конфліктує з неуспадкованим обмеженням відношення \"%s\"" -#: catalog/heap.c:2590 +#: catalog/heap.c:2797 #, c-format msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgstr "обмеження \"%s\" конфліктує з успадкованим обмеженням відношення \"%s\"" -#: catalog/heap.c:2600 +#: catalog/heap.c:2807 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\"" msgstr "обмеження \"%s\" конфліктує з обмеженням NOT VALID в відношенні \"%s\"" -#: catalog/heap.c:2605 +#: catalog/heap.c:2819 +#, c-format +msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on relation \"%s\"" +msgstr "обмеження \"%s\" конфліктує з обмеженням NOT ENFORCED в відношенні \"%s\"" + +#: catalog/heap.c:2824 #, c-format msgid "merging constraint \"%s\" with inherited definition" msgstr "злиття обмеження \"%s\" з успадкованим визначенням" -#: catalog/heap.c:2631 catalog/pg_constraint.c:853 commands/tablecmds.c:3057 -#: commands/tablecmds.c:3360 commands/tablecmds.c:7066 -#: commands/tablecmds.c:15804 commands/tablecmds.c:15935 +#: catalog/heap.c:2848 catalog/pg_constraint.c:786 catalog/pg_constraint.c:1137 +#: commands/tablecmds.c:3179 commands/tablecmds.c:3499 +#: commands/tablecmds.c:7286 commands/tablecmds.c:7967 +#: commands/tablecmds.c:17583 commands/tablecmds.c:17765 #, c-format msgid "too many inheritance parents" msgstr "занадто багато батьків наслідування" -#: catalog/heap.c:2715 +#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 +#, c-format +msgid "conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" +msgstr "конфліктуюча декларація NO INHERIT для обмеження not-null стовпця \"%s\"" + +#: catalog/heap.c:2979 +#, c-format +msgid "conflicting not-null constraint names \"%s\" and \"%s\"" +msgstr "конфліктуючі назви обмежень not-null \"%s\" і \"%s\"" + +#: catalog/heap.c:3009 +#, c-format +msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" +msgstr "не можна визначити обмеження not-null з NO INHERIT для стовпця \"%s\"" + +#: catalog/heap.c:3011 +#, c-format +msgid "The column has an inherited not-null constraint." +msgstr "Стовпець має успадковане обмеження not-null." + +#: catalog/heap.c:3201 #, c-format msgid "cannot use generated column \"%s\" in column generation expression" msgstr "в виразі створення стовпця не можна використовувати згенерований стовпець \"%s\"" -#: catalog/heap.c:2717 +#: catalog/heap.c:3203 #, c-format msgid "A generated column cannot reference another generated column." msgstr "Згенерований стовпець не може посилатися на інший згенерований стовпець." -#: catalog/heap.c:2723 +#: catalog/heap.c:3209 #, c-format msgid "cannot use whole-row variable in column generation expression" msgstr "у виразі створення стовпців не можна використовувати змінну усього рядка" -#: catalog/heap.c:2724 +#: catalog/heap.c:3210 #, c-format msgid "This would cause the generated column to depend on its own value." msgstr "Це призведе до того, що згенерований стовпець буде залежати від власного значення." -#: catalog/heap.c:2779 +#: catalog/heap.c:3277 +#, c-format +msgid "generation expression uses user-defined function" +msgstr "вираз генерації використовує користувацьку функцію" + +#: catalog/heap.c:3278 +#, c-format +msgid "Virtual generated columns that make use of user-defined functions are not yet supported." +msgstr "Віртуальні генеровані стовпці, що використовують користувацькі функції, ще не підтримуються." + +#: catalog/heap.c:3293 +#, c-format +msgid "generation expression uses user-defined type" +msgstr "вираз генерації використовує користувацький тип" + +#: catalog/heap.c:3345 #, c-format msgid "generation expression is not immutable" msgstr "вираз генерації не є незмінним" -#: catalog/heap.c:2807 rewrite/rewriteHandler.c:1282 +#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1288 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "стовпець \"%s\" має тип %s, але тип виразу за замовчуванням %s" -#: catalog/heap.c:2812 commands/prepare.c:331 parser/analyze.c:2758 -#: parser/parse_target.c:592 parser/parse_target.c:882 -#: parser/parse_target.c:892 rewrite/rewriteHandler.c:1287 +#: catalog/heap.c:3382 commands/prepare.c:334 parser/analyze.c:2906 +#: parser/parse_target.c:595 parser/parse_target.c:885 +#: parser/parse_target.c:895 rewrite/rewriteHandler.c:1293 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "Потрібно буде переписати або привести вираз." -#: catalog/heap.c:2859 +#: catalog/heap.c:3429 #, c-format msgid "only table \"%s\" can be referenced in check constraint" msgstr "в обмеженні-перевірці можна посилатися лише на таблицю \"%s\"" -#: catalog/heap.c:3165 +#: catalog/heap.c:3735 #, c-format msgid "unsupported ON COMMIT and foreign key combination" msgstr "непідтримуване поєднання зовнішнього ключа з ON COMMIT" -#: catalog/heap.c:3166 +#: catalog/heap.c:3736 #, c-format msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting." msgstr "Таблиця \"%s\" посилається на \"%s\", але вони не мають той же параметр ON COMMIT." -#: catalog/heap.c:3171 +#: catalog/heap.c:3741 #, c-format msgid "cannot truncate a table referenced in a foreign key constraint" msgstr "скоротити таблицю, на яку посилається зовнішній ключ, не можливо" -#: catalog/heap.c:3172 +#: catalog/heap.c:3742 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "Таблиця \"%s\" посилається на \"%s\"." -#: catalog/heap.c:3174 +#: catalog/heap.c:3744 #, c-format msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "Скоротіть таблицю \"%s\" паралельно або використайте TRUNCATE ... CASCADE." -#: catalog/index.c:219 parser/parse_utilcmd.c:2176 +#: catalog/index.c:220 parser/parse_utilcmd.c:2352 #, c-format msgid "multiple primary keys for table \"%s\" are not allowed" msgstr "таблиця \"%s\" не може містити кілька первинних ключів" -#: catalog/index.c:233 +#: catalog/index.c:234 #, c-format msgid "primary keys cannot use NULLS NOT DISTINCT indexes" msgstr "первинні ключі не можуть використовувати NULLS NOT DISTINCT індекси" -#: catalog/index.c:250 +#: catalog/index.c:251 #, c-format msgid "primary keys cannot be expressions" msgstr "первинні ключі не можуть бути виразами" -#: catalog/index.c:267 +#: catalog/index.c:268 #, c-format msgid "primary key column \"%s\" is not marked NOT NULL" msgstr "стовпець первинного ключа \"%s\" не позначений як NOT NULL" -#: catalog/index.c:798 catalog/index.c:1915 +#: catalog/index.c:800 catalog/index.c:1921 #, c-format msgid "user-defined indexes on system catalog tables are not supported" msgstr "користувацькі індекси в таблицях системного каталогу не підтримуються" -#: catalog/index.c:838 +#: catalog/index.c:840 #, c-format msgid "nondeterministic collations are not supported for operator class \"%s\"" msgstr "недетерміновані правила сортування не підтримуються для класу операторів \"%s\"" -#: catalog/index.c:853 +#: catalog/index.c:855 #, c-format msgid "concurrent index creation on system catalog tables is not supported" msgstr "паралельне створення індексу в таблицях системного каталогу не підтримується" -#: catalog/index.c:862 catalog/index.c:1331 +#: catalog/index.c:864 catalog/index.c:1333 #, c-format msgid "concurrent index creation for exclusion constraints is not supported" msgstr "парарельне створення індексу для обмежень-виключень не підтримується" -#: catalog/index.c:871 +#: catalog/index.c:873 #, c-format msgid "shared indexes cannot be created after initdb" msgstr "не можливо створити спільні індекси після initdb" -#: catalog/index.c:891 commands/createas.c:416 commands/sequence.c:159 -#: parser/parse_utilcmd.c:209 +#: catalog/index.c:893 commands/createas.c:423 commands/sequence.c:159 +#: parser/parse_utilcmd.c:210 #, c-format msgid "relation \"%s\" already exists, skipping" msgstr "ввідношення \"%s\" вже існує, пропускаємо" -#: catalog/index.c:941 +#: catalog/index.c:943 #, c-format msgid "pg_class index OID value not set when in binary upgrade mode" msgstr "значення OID індекса в pg_class не встановлено в режимі двійкового оновлення" -#: catalog/index.c:951 utils/cache/relcache.c:3790 +#: catalog/index.c:953 utils/cache/relcache.c:3795 #, c-format msgid "index relfilenumber value not set when in binary upgrade mode" msgstr "значення індексу relfilenumber не встановлено в режимі двійкового оновлення" -#: catalog/index.c:2214 +#: catalog/index.c:2222 #, c-format msgid "DROP INDEX CONCURRENTLY must be first action in transaction" msgstr "DROP INDEX CONCURRENTLY повинен бути першою дією в транзакції" -#: catalog/index.c:3670 +#: catalog/index.c:3729 #, c-format msgid "cannot reindex temporary tables of other sessions" msgstr "повторно індексувати тимчасові таблиці інших сеансів не можна" -#: catalog/index.c:3681 commands/indexcmds.c:3653 +#: catalog/index.c:3740 commands/indexcmds.c:3791 #, c-format msgid "cannot reindex invalid index on TOAST table" msgstr "переіндексувати неприпустимий індекс в таблиці TOAST не можна" -#: catalog/index.c:3697 commands/indexcmds.c:3531 commands/indexcmds.c:3677 -#: commands/tablecmds.c:3564 +#: catalog/index.c:3756 commands/indexcmds.c:3669 commands/indexcmds.c:3815 +#: commands/tablecmds.c:3703 #, c-format msgid "cannot move system relation \"%s\"" msgstr "перемістити системне відношення \"%s\" не можна" -#: catalog/index.c:3834 +#: catalog/index.c:3893 #, c-format msgid "index \"%s\" was reindexed" msgstr "індекс \"%s\" був перебудований" -#: catalog/index.c:4000 +#: catalog/index.c:4059 #, c-format msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "переіндексувати неприпустимий індекс \"%s.%s\" в таблиці TOAST не можна, пропускається" -#: catalog/namespace.c:447 catalog/namespace.c:651 catalog/namespace.c:743 -#: commands/trigger.c:5731 +#: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 +#: commands/trigger.c:5817 #, c-format msgid "cross-database references are not implemented: \"%s.%s.%s\"" msgstr "cross-database посилання не реалізовані: \"%s.%s.%s\"" -#: catalog/namespace.c:504 +#: catalog/namespace.c:519 #, c-format msgid "temporary tables cannot specify a schema name" msgstr "для тимчасових таблиць ім'я схеми не вказується" -#: catalog/namespace.c:585 +#: catalog/namespace.c:600 #, c-format msgid "could not obtain lock on relation \"%s.%s\"" msgstr "не вдалося отримати блокування зв'язку \"%s.%s\"" -#: catalog/namespace.c:590 commands/lockcmds.c:143 commands/lockcmds.c:223 +#: catalog/namespace.c:605 commands/lockcmds.c:143 commands/lockcmds.c:223 #, c-format msgid "could not obtain lock on relation \"%s\"" msgstr "не вдалося отримати блокування зв'язку \"%s\"" -#: catalog/namespace.c:618 parser/parse_relation.c:1430 +#: catalog/namespace.c:633 parser/parse_relation.c:1447 #, c-format msgid "relation \"%s.%s\" does not exist" msgstr "відношення \"%s.%s\" не існує" -#: catalog/namespace.c:623 parser/parse_relation.c:1443 -#: parser/parse_relation.c:1451 utils/adt/regproc.c:913 +#: catalog/namespace.c:638 parser/parse_relation.c:1460 +#: parser/parse_relation.c:1468 utils/adt/regproc.c:913 #, c-format msgid "relation \"%s\" does not exist" msgstr "відношення \"%s\" не існує" -#: catalog/namespace.c:689 catalog/namespace.c:3507 commands/extension.c:1607 -#: commands/extension.c:1613 +#: catalog/namespace.c:704 catalog/namespace.c:3525 commands/extension.c:1804 +#: commands/extension.c:1810 #, c-format msgid "no schema has been selected to create in" msgstr "не вибрано схему для створення об'єктів" -#: catalog/namespace.c:841 catalog/namespace.c:854 +#: catalog/namespace.c:856 catalog/namespace.c:869 #, c-format msgid "cannot create relations in temporary schemas of other sessions" msgstr "неможливо створити відношення в тимчасових схемах з інших сеансів" -#: catalog/namespace.c:845 +#: catalog/namespace.c:860 #, c-format msgid "cannot create temporary relation in non-temporary schema" msgstr "неможливо створити тимчасове відношення в не тимчасовій схемі" -#: catalog/namespace.c:860 +#: catalog/namespace.c:875 #, c-format msgid "only temporary relations may be created in temporary schemas" msgstr "в тимчасових схемах можуть бути створені тільки тимчасові відношення" -#: catalog/namespace.c:2604 +#: catalog/namespace.c:2619 #, c-format msgid "statistics object \"%s\" does not exist" msgstr "об'єкт статистики \"%s\" не існує" -#: catalog/namespace.c:2746 +#: catalog/namespace.c:2764 #, c-format msgid "text search parser \"%s\" does not exist" msgstr "парсер текстового пошуку \"%s\" не існує" -#: catalog/namespace.c:2891 utils/adt/regproc.c:1459 +#: catalog/namespace.c:2909 utils/adt/regproc.c:1459 #, c-format msgid "text search dictionary \"%s\" does not exist" msgstr "словник текстового пошуку \"%s\" не існує" -#: catalog/namespace.c:3037 +#: catalog/namespace.c:3055 #, c-format msgid "text search template \"%s\" does not exist" msgstr "шаблон текстового пошуку \"%s\" не існує" -#: catalog/namespace.c:3182 commands/tsearchcmds.c:1168 +#: catalog/namespace.c:3200 commands/tsearchcmds.c:1168 #: utils/adt/regproc.c:1349 utils/cache/ts_cache.c:635 #, c-format msgid "text search configuration \"%s\" does not exist" msgstr "конфігурація текстового пошуку \"%s\" не існує" -#: catalog/namespace.c:3314 parser/parse_expr.c:868 parser/parse_target.c:1259 +#: catalog/namespace.c:3332 parser/parse_expr.c:867 parser/parse_target.c:1262 #, c-format msgid "cross-database references are not implemented: %s" msgstr "міжбазові посилання не реалізовані: %s" -#: catalog/namespace.c:3320 parser/parse_expr.c:875 parser/parse_target.c:1266 -#: gram.y:19181 gram.y:19221 +#: catalog/namespace.c:3338 parser/parse_expr.c:874 parser/parse_target.c:1269 +#: gram.y:19355 gram.y:19395 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "неправильне повне ім'я (забагато компонентів): %s" -#: catalog/namespace.c:3450 +#: catalog/namespace.c:3468 #, c-format msgid "cannot move objects into or out of temporary schemas" msgstr "не можна переміщати об'єкти в або з тимчасових схем" -#: catalog/namespace.c:3456 +#: catalog/namespace.c:3474 #, c-format msgid "cannot move objects into or out of TOAST schema" msgstr "не можна переміщати об'єкти в або з схем TOAST" -#: catalog/namespace.c:3529 commands/schemacmds.c:264 commands/schemacmds.c:344 -#: commands/tablecmds.c:1387 utils/adt/regproc.c:1688 +#: catalog/namespace.c:3547 commands/schemacmds.c:264 commands/schemacmds.c:344 +#: commands/tablecmds.c:1464 utils/adt/regproc.c:1688 #, c-format msgid "schema \"%s\" does not exist" msgstr "схема \"%s\" не існує" -#: catalog/namespace.c:3560 +#: catalog/namespace.c:3578 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "неправильне ім'я зв'язку (забагато компонентів): %s" -#: catalog/namespace.c:4001 utils/adt/regproc.c:1056 +#: catalog/namespace.c:4019 utils/adt/regproc.c:1056 #, c-format msgid "collation \"%s\" for encoding \"%s\" does not exist" msgstr "правило сортування \"%s\" для кодування \"%s\" не існує" -#: catalog/namespace.c:4056 +#: catalog/namespace.c:4074 #, c-format msgid "conversion \"%s\" does not exist" msgstr "перетворення\"%s\" не існує" -#: catalog/namespace.c:4397 +#: catalog/namespace.c:4415 #, c-format msgid "permission denied to create temporary tables in database \"%s\"" msgstr "немає дозволу для створення тимчасових таблиць в базі даних \"%s\"" -#: catalog/namespace.c:4413 +#: catalog/namespace.c:4431 #, c-format msgid "cannot create temporary tables during recovery" msgstr "не можна створити тимчасові таблиці під час відновлення" -#: catalog/namespace.c:4419 +#: catalog/namespace.c:4437 #, c-format msgid "cannot create temporary tables during a parallel operation" msgstr "не можна створити тимчасові таблиці під час паралельної операції" -#: catalog/objectaddress.c:1371 commands/policy.c:93 commands/policy.c:373 -#: commands/tablecmds.c:257 commands/tablecmds.c:299 commands/tablecmds.c:2310 -#: commands/tablecmds.c:12823 +#: catalog/objectaddress.c:1376 commands/policy.c:93 commands/policy.c:373 +#: commands/tablecmds.c:260 commands/tablecmds.c:302 commands/tablecmds.c:2387 +#: commands/tablecmds.c:14535 #, c-format msgid "\"%s\" is not a table" msgstr "\"%s\" не є таблицею" -#: catalog/objectaddress.c:1378 commands/tablecmds.c:269 -#: commands/tablecmds.c:17741 commands/view.c:114 +#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 +#: commands/tablecmds.c:19644 commands/view.c:113 #, c-format msgid "\"%s\" is not a view" msgstr "\"%s\" не є поданням" -#: catalog/objectaddress.c:1385 commands/matview.c:199 commands/tablecmds.c:275 -#: commands/tablecmds.c:17746 +#: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 +#: commands/tablecmds.c:19649 #, c-format msgid "\"%s\" is not a materialized view" msgstr "\"%s\" не є матеріалізованим поданням" -#: catalog/objectaddress.c:1392 commands/tablecmds.c:293 -#: commands/tablecmds.c:17751 +#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 +#: commands/tablecmds.c:19654 #, c-format msgid "\"%s\" is not a foreign table" msgstr "\"%s\" не є сторонньою таблицею" -#: catalog/objectaddress.c:1433 +#: catalog/objectaddress.c:1438 #, c-format msgid "must specify relation and object name" msgstr "треба вказати відношення й ім'я об'єкта" -#: catalog/objectaddress.c:1509 catalog/objectaddress.c:1562 +#: catalog/objectaddress.c:1514 catalog/objectaddress.c:1567 #, c-format msgid "column name must be qualified" msgstr "слід вказати ім'я стовпця" -#: catalog/objectaddress.c:1581 +#: catalog/objectaddress.c:1586 #, c-format msgid "default value for column \"%s\" of relation \"%s\" does not exist" msgstr "значення за замовчуванням для стовпця \"%s\" відношення \"%s\" не існує" -#: catalog/objectaddress.c:1618 commands/functioncmds.c:132 -#: commands/tablecmds.c:285 commands/typecmds.c:278 commands/typecmds.c:3843 +#: catalog/objectaddress.c:1623 commands/functioncmds.c:132 +#: commands/tablecmds.c:288 commands/typecmds.c:278 commands/typecmds.c:3842 #: parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:801 -#: utils/adt/acl.c:4560 +#: utils/adt/acl.c:4575 #, c-format msgid "type \"%s\" does not exist" msgstr "тип \"%s\" не існує" -#: catalog/objectaddress.c:1737 +#: catalog/objectaddress.c:1634 +#, c-format +msgid "\"%s\" is not a domain" +msgstr "\"%s\" не є доменом" + +#: catalog/objectaddress.c:1742 #, c-format msgid "operator %d (%s, %s) of %s does not exist" msgstr "оператор %d (%s, %s) з %s не існує" -#: catalog/objectaddress.c:1768 +#: catalog/objectaddress.c:1773 #, c-format msgid "function %d (%s, %s) of %s does not exist" msgstr "функція %d (%s, %s) з %s не існує" -#: catalog/objectaddress.c:1819 catalog/objectaddress.c:1845 +#: catalog/objectaddress.c:1824 catalog/objectaddress.c:1850 #, c-format msgid "user mapping for user \"%s\" on server \"%s\" does not exist" msgstr "відображення користувача для користувача \"%s\" на сервері \"%s\"не існує" -#: catalog/objectaddress.c:1834 commands/foreigncmds.c:430 -#: commands/foreigncmds.c:993 commands/foreigncmds.c:1356 foreign/foreign.c:713 +#: catalog/objectaddress.c:1839 commands/foreigncmds.c:441 +#: commands/foreigncmds.c:1004 commands/foreigncmds.c:1367 +#: foreign/foreign.c:714 #, c-format msgid "server \"%s\" does not exist" msgstr "сервер \"%s\" не існує" -#: catalog/objectaddress.c:1901 +#: catalog/objectaddress.c:1906 #, c-format msgid "publication relation \"%s\" in publication \"%s\" does not exist" msgstr "відношення публікації \"%s\" в публікації \"%s\" не існує" -#: catalog/objectaddress.c:1948 +#: catalog/objectaddress.c:1953 #, c-format msgid "publication schema \"%s\" in publication \"%s\" does not exist" msgstr "схема публікації \"%s\" в публікації \"%s\" не існує" -#: catalog/objectaddress.c:2006 +#: catalog/objectaddress.c:2014 #, c-format msgid "unrecognized default ACL object type \"%c\"" msgstr "нерозпізнаний тип об'єкта ACL за замовчуванням \"%c\"" -#: catalog/objectaddress.c:2007 +#: catalog/objectaddress.c:2015 #, c-format -msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." -msgstr "Припустимі типи об'єктів: \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." +msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." +msgstr "Доступні типи об'єктів: \"%c\", \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." -#: catalog/objectaddress.c:2058 +#: catalog/objectaddress.c:2067 #, c-format msgid "default ACL for user \"%s\" in schema \"%s\" on %s does not exist" msgstr "ACL за замовчуванням для користувача \"%s\" в схемі \"%s\" для об'єкту %s не існує" -#: catalog/objectaddress.c:2063 +#: catalog/objectaddress.c:2072 #, c-format msgid "default ACL for user \"%s\" on %s does not exist" msgstr "ACL за замовчуванням для користувача \"%s\" і для об'єкту %s не існує" -#: catalog/objectaddress.c:2089 catalog/objectaddress.c:2146 -#: catalog/objectaddress.c:2201 +#: catalog/objectaddress.c:2098 catalog/objectaddress.c:2155 +#: catalog/objectaddress.c:2210 #, c-format msgid "name or argument lists may not contain nulls" msgstr "списки імен та аргументів не повинні містити Null" -#: catalog/objectaddress.c:2123 +#: catalog/objectaddress.c:2132 #, c-format msgid "unsupported object type \"%s\"" msgstr "непідтримуваний тип об'єкта \"%s\"" -#: catalog/objectaddress.c:2142 catalog/objectaddress.c:2159 -#: catalog/objectaddress.c:2224 catalog/objectaddress.c:2308 +#: catalog/objectaddress.c:2151 catalog/objectaddress.c:2168 +#: catalog/objectaddress.c:2233 catalog/objectaddress.c:2317 #, c-format msgid "name list length must be exactly %d" msgstr "довжина списку імен повинна бути точно %d" -#: catalog/objectaddress.c:2163 +#: catalog/objectaddress.c:2172 #, c-format msgid "large object OID may not be null" msgstr "OID великого об'єкта не повинно бути нулем" -#: catalog/objectaddress.c:2172 catalog/objectaddress.c:2242 -#: catalog/objectaddress.c:2249 +#: catalog/objectaddress.c:2181 catalog/objectaddress.c:2251 +#: catalog/objectaddress.c:2258 #, c-format msgid "name list length must be at least %d" msgstr "довжина списку імен повинна бути щонайменше %d" -#: catalog/objectaddress.c:2235 catalog/objectaddress.c:2256 +#: catalog/objectaddress.c:2244 catalog/objectaddress.c:2265 #, c-format msgid "argument list length must be exactly %d" msgstr "довжина списку аргументів повинна бути точно %d" -#: catalog/objectaddress.c:2470 libpq/be-fsstubs.c:329 +#: catalog/objectaddress.c:2479 libpq/be-fsstubs.c:334 #, c-format msgid "must be owner of large object %u" msgstr "треба бути власником великого об'єкта %u" -#: catalog/objectaddress.c:2485 commands/functioncmds.c:1560 +#: catalog/objectaddress.c:2494 commands/functioncmds.c:1578 #, c-format msgid "must be owner of type %s or type %s" msgstr "треба бути власником типу %s або типу %s" -#: catalog/objectaddress.c:2512 catalog/objectaddress.c:2521 -#: catalog/objectaddress.c:2527 +#: catalog/objectaddress.c:2521 catalog/objectaddress.c:2530 +#: catalog/objectaddress.c:2536 #, c-format msgid "permission denied" msgstr "немає доступу" -#: catalog/objectaddress.c:2513 catalog/objectaddress.c:2522 +#: catalog/objectaddress.c:2522 catalog/objectaddress.c:2531 #, c-format msgid "The current user must have the %s attribute." msgstr "Поточний користувач повинен мати атрибут %s." -#: catalog/objectaddress.c:2528 +#: catalog/objectaddress.c:2537 #, c-format msgid "The current user must have the %s option on role \"%s\"." msgstr "Поточний користувач повинен мати параметр %s для ролі \"%s\"." -#: catalog/objectaddress.c:2542 +#: catalog/objectaddress.c:2551 #, c-format msgid "must be superuser" msgstr "треба бути суперкористувачем" -#: catalog/objectaddress.c:2611 +#: catalog/objectaddress.c:2620 #, c-format msgid "unrecognized object type \"%s\"" msgstr "нерозпізнаний тип об'єкту \"%s\"" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:2903 +#: catalog/objectaddress.c:2937 #, c-format msgid "column %s of %s" msgstr "стовпець %s з %s" -#: catalog/objectaddress.c:2918 +#: catalog/objectaddress.c:2952 #, c-format msgid "function %s" msgstr "функція %s" -#: catalog/objectaddress.c:2931 +#: catalog/objectaddress.c:2965 #, c-format msgid "type %s" msgstr "тип %s" -#: catalog/objectaddress.c:2968 +#: catalog/objectaddress.c:3002 #, c-format msgid "cast from %s to %s" msgstr "приведення від %s до %s" -#: catalog/objectaddress.c:3001 +#: catalog/objectaddress.c:3035 #, c-format msgid "collation %s" msgstr "сортування %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3032 +#: catalog/objectaddress.c:3066 #, c-format msgid "constraint %s on %s" msgstr "обмеження %s на %s" -#: catalog/objectaddress.c:3038 +#: catalog/objectaddress.c:3072 #, c-format msgid "constraint %s" msgstr "обмеження %s" -#: catalog/objectaddress.c:3070 +#: catalog/objectaddress.c:3104 #, c-format msgid "conversion %s" msgstr "перетворення %s" #. translator: %s is typically "column %s of table %s" -#: catalog/objectaddress.c:3092 +#: catalog/objectaddress.c:3126 #, c-format msgid "default value for %s" msgstr "значення за замовчуванням для %s" -#: catalog/objectaddress.c:3103 +#: catalog/objectaddress.c:3137 #, c-format msgid "language %s" msgstr "мова %s" -#: catalog/objectaddress.c:3111 +#: catalog/objectaddress.c:3145 #, c-format msgid "large object %u" msgstr "великий об'єкт %u" -#: catalog/objectaddress.c:3124 +#: catalog/objectaddress.c:3158 #, c-format msgid "operator %s" msgstr "оператор %s" -#: catalog/objectaddress.c:3161 +#: catalog/objectaddress.c:3195 #, c-format msgid "operator class %s for access method %s" msgstr "клас операторів %s для методу доступу %s" -#: catalog/objectaddress.c:3189 +#: catalog/objectaddress.c:3223 #, c-format msgid "access method %s" msgstr "метод доступу %s" @@ -5474,7 +5533,7 @@ msgstr "метод доступу %s" #. 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:3238 +#: catalog/objectaddress.c:3278 #, c-format msgid "operator %d (%s, %s) of %s: %s" msgstr "оператор %d (%s, %s) з %s: %s" @@ -5483,236 +5542,241 @@ msgstr "оператор %d (%s, %s) з %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 #. function with arguments. -#: catalog/objectaddress.c:3295 +#: catalog/objectaddress.c:3343 #, c-format msgid "function %d (%s, %s) of %s: %s" msgstr "функція %d (%s, %s) з %s: %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3347 +#: catalog/objectaddress.c:3397 #, c-format msgid "rule %s on %s" msgstr "правило %s на %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3393 +#: catalog/objectaddress.c:3443 #, c-format msgid "trigger %s on %s" msgstr "тригер %s на %s" -#: catalog/objectaddress.c:3413 +#: catalog/objectaddress.c:3463 #, c-format msgid "schema %s" msgstr "схема %s" -#: catalog/objectaddress.c:3441 +#: catalog/objectaddress.c:3491 #, c-format msgid "statistics object %s" msgstr "об'єкт статистики %s" -#: catalog/objectaddress.c:3472 +#: catalog/objectaddress.c:3522 #, c-format msgid "text search parser %s" msgstr "парсер текстового пошуку %s" -#: catalog/objectaddress.c:3503 +#: catalog/objectaddress.c:3553 #, c-format msgid "text search dictionary %s" msgstr "словник текстового пошуку %s" -#: catalog/objectaddress.c:3534 +#: catalog/objectaddress.c:3584 #, c-format msgid "text search template %s" msgstr "шаблон текстового пошуку %s" -#: catalog/objectaddress.c:3565 +#: catalog/objectaddress.c:3615 #, c-format msgid "text search configuration %s" msgstr "конфігурація текстового пошуку %s" -#: catalog/objectaddress.c:3578 +#: catalog/objectaddress.c:3628 #, c-format msgid "role %s" msgstr "роль %s" -#: catalog/objectaddress.c:3615 catalog/objectaddress.c:5464 +#: catalog/objectaddress.c:3665 catalog/objectaddress.c:5589 #, c-format msgid "membership of role %s in role %s" msgstr "членство ролі %s в ролі %s" -#: catalog/objectaddress.c:3636 +#: catalog/objectaddress.c:3686 #, c-format msgid "database %s" msgstr "база даних %s" -#: catalog/objectaddress.c:3652 +#: catalog/objectaddress.c:3702 #, c-format msgid "tablespace %s" msgstr "табличний простір %s" -#: catalog/objectaddress.c:3663 +#: catalog/objectaddress.c:3713 #, c-format msgid "foreign-data wrapper %s" msgstr "джерело сторонніх даних %s" -#: catalog/objectaddress.c:3673 +#: catalog/objectaddress.c:3723 #, c-format msgid "server %s" msgstr "сервер %s" -#: catalog/objectaddress.c:3706 +#: catalog/objectaddress.c:3756 #, c-format msgid "user mapping for %s on server %s" msgstr "зіставлення користувача для %s на сервері %s" -#: catalog/objectaddress.c:3758 +#: catalog/objectaddress.c:3808 #, c-format msgid "default privileges on new relations belonging to role %s in schema %s" msgstr "права за замовчуванням для нових відношень, що належать ролі %s в схемі %s" -#: catalog/objectaddress.c:3762 +#: catalog/objectaddress.c:3812 #, c-format msgid "default privileges on new relations belonging to role %s" msgstr "права за замовчуванням для нових відношень, що належать ролі %s" -#: catalog/objectaddress.c:3768 +#: catalog/objectaddress.c:3818 #, c-format msgid "default privileges on new sequences belonging to role %s in schema %s" msgstr "права за замовчуванням для нових послідовностей, що належать ролі %s в схемі %s" -#: catalog/objectaddress.c:3772 +#: catalog/objectaddress.c:3822 #, c-format msgid "default privileges on new sequences belonging to role %s" msgstr "права за замовчуванням для нових послідовностей, що належать ролі %s" -#: catalog/objectaddress.c:3778 +#: catalog/objectaddress.c:3828 #, c-format msgid "default privileges on new functions belonging to role %s in schema %s" msgstr "права за замовчуванням для нових функцій, що належать ролі %s в схемі %s" -#: catalog/objectaddress.c:3782 +#: catalog/objectaddress.c:3832 #, c-format msgid "default privileges on new functions belonging to role %s" msgstr "права за замовчуванням для нових функцій, що належать ролі %s" -#: catalog/objectaddress.c:3788 +#: catalog/objectaddress.c:3838 #, c-format msgid "default privileges on new types belonging to role %s in schema %s" msgstr "права за замовчуванням для нових типів, що належать ролі %s в схемі %s" -#: catalog/objectaddress.c:3792 +#: catalog/objectaddress.c:3842 #, c-format msgid "default privileges on new types belonging to role %s" msgstr "права за замовчуванням для нових типів, що належать ролі %s" -#: catalog/objectaddress.c:3798 +#: catalog/objectaddress.c:3848 #, c-format msgid "default privileges on new schemas belonging to role %s" msgstr "права за замовчуванням для нових схем, що належать ролі %s" -#: catalog/objectaddress.c:3805 +#: catalog/objectaddress.c:3854 +#, c-format +msgid "default privileges on new large objects belonging to role %s" +msgstr "права за замовчуванням на нові великі об'єкти, що належать ролі %s" + +#: catalog/objectaddress.c:3861 #, c-format msgid "default privileges belonging to role %s in schema %s" msgstr "права за замовчуванням, що належать ролі %s в схемі %s" -#: catalog/objectaddress.c:3809 +#: catalog/objectaddress.c:3865 #, c-format msgid "default privileges belonging to role %s" msgstr "права за замовчуванням належать ролі %s" -#: catalog/objectaddress.c:3831 +#: catalog/objectaddress.c:3887 #, c-format msgid "extension %s" msgstr "розширення %s" -#: catalog/objectaddress.c:3848 +#: catalog/objectaddress.c:3904 #, c-format msgid "event trigger %s" msgstr "тригер подій %s" -#: catalog/objectaddress.c:3872 +#: catalog/objectaddress.c:3928 #, c-format msgid "parameter %s" msgstr "параметр %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3915 +#: catalog/objectaddress.c:3971 #, c-format msgid "policy %s on %s" msgstr "політика %s на %s" -#: catalog/objectaddress.c:3929 +#: catalog/objectaddress.c:3985 #, c-format msgid "publication %s" msgstr "публікація %s" -#: catalog/objectaddress.c:3942 +#: catalog/objectaddress.c:3998 #, c-format msgid "publication of schema %s in publication %s" msgstr "публікація схеми %s в публікації %s" #. translator: first %s is, e.g., "table %s" -#: catalog/objectaddress.c:3973 +#: catalog/objectaddress.c:4029 #, c-format msgid "publication of %s in publication %s" msgstr "відношення публікації %s в публікації %s" -#: catalog/objectaddress.c:3986 +#: catalog/objectaddress.c:4042 #, c-format msgid "subscription %s" msgstr "підписка %s" -#: catalog/objectaddress.c:4007 +#: catalog/objectaddress.c:4063 #, c-format msgid "transform for %s language %s" msgstr "трансформація для %s мови %s" -#: catalog/objectaddress.c:4076 +#: catalog/objectaddress.c:4132 #, c-format msgid "table %s" msgstr "таблиця %s" -#: catalog/objectaddress.c:4081 +#: catalog/objectaddress.c:4137 #, c-format msgid "index %s" msgstr "індекс %s" -#: catalog/objectaddress.c:4085 +#: catalog/objectaddress.c:4141 #, c-format msgid "sequence %s" msgstr "послідовність %s" -#: catalog/objectaddress.c:4089 +#: catalog/objectaddress.c:4145 #, c-format msgid "toast table %s" msgstr "таблиця toast %s" -#: catalog/objectaddress.c:4093 +#: catalog/objectaddress.c:4149 #, c-format msgid "view %s" msgstr "подання %s" -#: catalog/objectaddress.c:4097 +#: catalog/objectaddress.c:4153 #, c-format msgid "materialized view %s" msgstr "матеріалізоване подання %s" -#: catalog/objectaddress.c:4101 +#: catalog/objectaddress.c:4157 #, c-format msgid "composite type %s" msgstr "складений тип %s" -#: catalog/objectaddress.c:4105 +#: catalog/objectaddress.c:4161 #, c-format msgid "foreign table %s" msgstr "зовнішня таблиця %s" -#: catalog/objectaddress.c:4110 +#: catalog/objectaddress.c:4166 #, c-format msgid "relation %s" msgstr "відношення %s" -#: catalog/objectaddress.c:4151 +#: catalog/objectaddress.c:4207 #, c-format msgid "operator family %s for access method %s" msgstr "сімейство операторів %s для методу доступу %s" @@ -5756,7 +5820,7 @@ msgstr "не можна пропустити початкове значення msgid "return type of inverse transition function %s is not %s" msgstr "інвертована функція переходу %s повинна повертати тип %s" -#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:2992 +#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:3057 #, c-format msgid "strictness of aggregate's forward and inverse transition functions must match" msgstr "пряма й інвертована функції переходу агрегату повинні мати однакову суворість" @@ -5771,7 +5835,7 @@ msgstr "фінальна функція з додатковими аргумен msgid "return type of combine function %s is not %s" msgstr "комбінуюча функція %s повинна повертати тип %s" -#: catalog/pg_aggregate.c:439 executor/nodeAgg.c:3902 +#: catalog/pg_aggregate.c:439 executor/nodeAgg.c:4005 #, c-format msgid "combine function with transition type %s must not be declared STRICT" msgstr "комбінуюча функція з перехідним типом %s не повинна оголошуватись як сувора (STRICT)" @@ -5786,12 +5850,12 @@ msgstr "функція серіалізації %s повинна поверта msgid "return type of deserialization function %s is not %s" msgstr "функція десеріалізації %s повинна повертати тип %s" -#: catalog/pg_aggregate.c:498 catalog/pg_proc.c:189 catalog/pg_proc.c:223 +#: catalog/pg_aggregate.c:498 catalog/pg_proc.c:217 catalog/pg_proc.c:251 #, c-format msgid "cannot determine result data type" msgstr "не вдалося визначити тип результату" -#: catalog/pg_aggregate.c:513 catalog/pg_proc.c:202 catalog/pg_proc.c:231 +#: catalog/pg_aggregate.c:513 catalog/pg_proc.c:230 catalog/pg_proc.c:259 #, c-format msgid "unsafe use of pseudo-type \"internal\"" msgstr "небезпечне використання псевдотипу (pseudo-type) \"internal\"" @@ -5806,53 +5870,53 @@ msgstr "реалізація рухомого агрегату повертає msgid "sort operator can only be specified for single-argument aggregates" msgstr "оператора сортування можна вказати лише для агрегатних функцій з одним аргументом" -#: catalog/pg_aggregate.c:706 catalog/pg_proc.c:384 +#: catalog/pg_aggregate.c:707 catalog/pg_proc.c:412 #, c-format msgid "cannot change routine kind" msgstr "неможливо змінити тип підпрограми" -#: catalog/pg_aggregate.c:708 +#: catalog/pg_aggregate.c:709 #, c-format msgid "\"%s\" is an ordinary aggregate function." msgstr "\"%s\" є звичайною агрегатною функцією." -#: catalog/pg_aggregate.c:710 +#: catalog/pg_aggregate.c:711 #, c-format msgid "\"%s\" is an ordered-set aggregate." msgstr "\"%s\" є сортувальним агрегатом." -#: catalog/pg_aggregate.c:712 +#: catalog/pg_aggregate.c:713 #, c-format msgid "\"%s\" is a hypothetical-set aggregate." msgstr "\"%s\" є агрегатом для гіпотетичних наборів." -#: catalog/pg_aggregate.c:717 +#: catalog/pg_aggregate.c:718 #, c-format msgid "cannot change number of direct arguments of an aggregate function" msgstr "змінити кількість прямих аргументів агрегатної функції не можна" -#: catalog/pg_aggregate.c:858 commands/functioncmds.c:686 -#: commands/typecmds.c:1985 commands/typecmds.c:2031 commands/typecmds.c:2083 -#: commands/typecmds.c:2120 commands/typecmds.c:2154 commands/typecmds.c:2188 -#: commands/typecmds.c:2222 commands/typecmds.c:2251 commands/typecmds.c:2338 -#: commands/typecmds.c:2380 parser/parse_func.c:417 parser/parse_func.c:448 +#: catalog/pg_aggregate.c:859 commands/functioncmds.c:701 +#: commands/typecmds.c:2023 commands/typecmds.c:2069 commands/typecmds.c:2121 +#: commands/typecmds.c:2158 commands/typecmds.c:2192 commands/typecmds.c:2226 +#: commands/typecmds.c:2260 commands/typecmds.c:2289 commands/typecmds.c:2376 +#: commands/typecmds.c:2418 parser/parse_func.c:417 parser/parse_func.c:448 #: parser/parse_func.c:475 parser/parse_func.c:489 parser/parse_func.c:611 #: parser/parse_func.c:631 parser/parse_func.c:2172 parser/parse_func.c:2445 #, c-format msgid "function %s does not exist" msgstr "функції %s не існує" -#: catalog/pg_aggregate.c:864 +#: catalog/pg_aggregate.c:865 #, c-format msgid "function %s returns a set" msgstr "функція %s повертає набір" -#: catalog/pg_aggregate.c:879 +#: catalog/pg_aggregate.c:880 #, c-format msgid "function %s must accept VARIADIC ANY to be used in this aggregate" msgstr "функція %s повинна прийняти VARIADIC ANY для використання в цій агрегатній функції" -#: catalog/pg_aggregate.c:903 +#: catalog/pg_aggregate.c:904 #, c-format msgid "function %s requires run-time type coercion" msgstr "функція %s потребує приведення типів під час виконання" @@ -5932,21 +5996,52 @@ msgstr "правило сортування \"%s\" вже існує" msgid "collation \"%s\" for encoding \"%s\" already exists" msgstr "правило сортування \"%s \" для кодування \"%s\" вже існує" -#: catalog/pg_constraint.c:732 +#: catalog/pg_constraint.c:763 commands/tablecmds.c:7952 +#, c-format +msgid "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation \"%s\"" +msgstr "не можна змінити статус NO INHERIT обмеження NOT NULL \"%s\" для відношення \"%s\"" + +#: catalog/pg_constraint.c:765 commands/tablecmds.c:9584 +#, c-format +msgid "You might need to make the existing constraint inheritable using %s." +msgstr "Вам можливо доведеться зробити існуюче обмеження успадковуваним, використовуючи %s." + +#: catalog/pg_constraint.c:775 commands/tablecmds.c:8301 +#, c-format +msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" +msgstr "несумісне обмеження NOT VALID \"%s\" для відношення \"%s\"" + +#: catalog/pg_constraint.c:777 commands/tablecmds.c:8303 +#: commands/tablecmds.c:9596 +#, c-format +msgid "You might need to validate it using %s." +msgstr "Вам можливо доведеться перевірити його за допомогою %s." + +#: catalog/pg_constraint.c:1016 #, c-format msgid "constraint \"%s\" for domain %s already exists" msgstr "обмеження \"%s\" для домену %s вже існує" -#: catalog/pg_constraint.c:932 catalog/pg_constraint.c:1025 +#: catalog/pg_constraint.c:1217 catalog/pg_constraint.c:1310 #, c-format msgid "constraint \"%s\" for table \"%s\" does not exist" msgstr "індексу \"%s\" для таблиці \"%s\" не існує" -#: catalog/pg_constraint.c:1125 +#: catalog/pg_constraint.c:1410 #, c-format msgid "constraint \"%s\" for domain %s does not exist" msgstr "обмеження \"%s\" для домену \"%s\" не існує" +#: catalog/pg_constraint.c:1664 +#, c-format +msgid "invalid type for PERIOD part of foreign key" +msgstr "недійсний тип для частини PERIOD зовнішнього ключа" + +#: catalog/pg_constraint.c:1665 +#, c-format +msgid "Only range and multirange are supported." +msgstr "Підтримуються лише діапазон і мультидіапазон." + #: catalog/pg_conversion.c:64 #, c-format msgid "conversion \"%s\" already exists" @@ -5957,27 +6052,27 @@ msgstr "перетворення \"%s\" вже існує" msgid "default conversion for %s to %s already exists" msgstr "перетворення за замовчуванням від %s до %s вже існує" -#: catalog/pg_depend.c:224 commands/extension.c:3397 +#: catalog/pg_depend.c:223 commands/extension.c:3689 #, c-format msgid "%s is already a member of extension \"%s\"" msgstr "%s вже є членом розширення \"%s\"" -#: catalog/pg_depend.c:231 catalog/pg_depend.c:282 commands/extension.c:3437 +#: catalog/pg_depend.c:230 catalog/pg_depend.c:281 commands/extension.c:3729 #, c-format msgid "%s is not a member of extension \"%s\"" msgstr "%s не є членом розширення \"%s\"" -#: catalog/pg_depend.c:234 +#: catalog/pg_depend.c:233 #, c-format msgid "An extension is not allowed to replace an object that it does not own." msgstr "Розширенню не дозволяється замінювати об'єкт, який йому не належить." -#: catalog/pg_depend.c:285 +#: catalog/pg_depend.c:284 #, c-format msgid "An extension may only use CREATE ... IF NOT EXISTS to skip object creation if the conflicting object is one that it already owns." msgstr "Розширення може використовувати лише CREATE ... IF NOT EXISTS, щоб пропустити створення об'єкту, якщо конфліктуючий об'єкт уже належить йому." -#: catalog/pg_depend.c:648 +#: catalog/pg_depend.c:647 #, c-format msgid "cannot remove dependency on %s because it is a system object" msgstr "неможливо видалити залежність від об'єкта %s, тому що це системний об'єкт" @@ -6027,8 +6122,8 @@ msgstr "не можна відключити розділ \"%s\"" msgid "The partition is being detached concurrently or has an unfinished detach." msgstr "Розділ відключається одночасно або має незакінчене відключення." -#: catalog/pg_inherits.c:595 commands/tablecmds.c:4777 -#: commands/tablecmds.c:16050 +#: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 +#: commands/tablecmds.c:17891 #, c-format msgid "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending detach operation." msgstr "Використайте ALTER TABLE ... DETACH PARTITION ... FINALIZE щоб завершити очікувану операцію відключення." @@ -6133,7 +6228,7 @@ msgstr "заперечний оператор %s вже є запереченн msgid "parameter ACL \"%s\" does not exist" msgstr "параметр ACL \"%s\" не існує" -#: catalog/pg_proc.c:130 parser/parse_func.c:2234 +#: catalog/pg_proc.c:158 parser/parse_func.c:2234 #, c-format msgid "functions cannot have more than %d argument" msgid_plural "functions cannot have more than %d arguments" @@ -6142,37 +6237,37 @@ msgstr[1] "функції не можуть мати більше %d аргум msgstr[2] "функції не можуть мати більше %d аргументів" msgstr[3] "функції не можуть мати більше %d аргументів" -#: catalog/pg_proc.c:374 +#: catalog/pg_proc.c:402 #, c-format msgid "function \"%s\" already exists with same argument types" msgstr "функція \"%s\" з аргументами таких типів вже існує" -#: catalog/pg_proc.c:386 +#: catalog/pg_proc.c:414 #, c-format msgid "\"%s\" is an aggregate function." msgstr "\"%s\" є функцією агрегату." -#: catalog/pg_proc.c:388 +#: catalog/pg_proc.c:416 #, c-format msgid "\"%s\" is a function." msgstr "\"%s\" є функцією." -#: catalog/pg_proc.c:390 +#: catalog/pg_proc.c:418 #, c-format msgid "\"%s\" is a procedure." msgstr "\"%s\" є процедурою." -#: catalog/pg_proc.c:392 +#: catalog/pg_proc.c:420 #, c-format msgid "\"%s\" is a window function." msgstr "\"%s\" є функцією вікна." -#: catalog/pg_proc.c:412 +#: catalog/pg_proc.c:440 #, c-format msgid "cannot change whether a procedure has output parameters" msgstr "неможливо визначити вихідні параметри для процедури" -#: catalog/pg_proc.c:413 catalog/pg_proc.c:443 +#: catalog/pg_proc.c:441 catalog/pg_proc.c:471 #, c-format msgid "cannot change return type of existing function" msgstr "неможливо змінити тип повернення існуючої функції" @@ -6181,109 +6276,109 @@ msgstr "неможливо змінити тип повернення існую #. AGGREGATE #. #. translator: first %s is DROP FUNCTION or DROP PROCEDURE -#: catalog/pg_proc.c:419 catalog/pg_proc.c:446 catalog/pg_proc.c:491 -#: catalog/pg_proc.c:517 catalog/pg_proc.c:541 +#: catalog/pg_proc.c:447 catalog/pg_proc.c:474 catalog/pg_proc.c:519 +#: catalog/pg_proc.c:545 catalog/pg_proc.c:569 #, c-format msgid "Use %s %s first." msgstr "Використайте %s %s спочатку." -#: catalog/pg_proc.c:444 +#: catalog/pg_proc.c:472 #, c-format msgid "Row type defined by OUT parameters is different." msgstr "Параметри OUT визначають другий тип рядку." -#: catalog/pg_proc.c:488 +#: catalog/pg_proc.c:516 #, c-format msgid "cannot change name of input parameter \"%s\"" msgstr "неможливо змінити ім'я вхідного параметру \"%s\"" -#: catalog/pg_proc.c:515 +#: catalog/pg_proc.c:543 #, c-format msgid "cannot remove parameter defaults from existing function" msgstr "неможливо прибрати параметр за замовчуванням з існуючої функції" -#: catalog/pg_proc.c:539 +#: catalog/pg_proc.c:567 #, c-format msgid "cannot change data type of existing parameter default value" msgstr "неможливо змінити тип даних для існуючого значення параметру за замовчуванням" -#: catalog/pg_proc.c:750 +#: catalog/pg_proc.c:771 #, c-format msgid "there is no built-in function named \"%s\"" msgstr "немає вбудованої функції \"%s\"" -#: catalog/pg_proc.c:843 +#: catalog/pg_proc.c:864 #, c-format msgid "SQL functions cannot return type %s" msgstr "Функції SQL не можуть повернути тип %s" -#: catalog/pg_proc.c:858 +#: catalog/pg_proc.c:879 #, c-format msgid "SQL functions cannot have arguments of type %s" msgstr "функції SQL не можуть мати аргументи типу %s" -#: catalog/pg_proc.c:986 executor/functions.c:1468 +#: catalog/pg_proc.c:1007 #, c-format msgid "SQL function \"%s\"" msgstr "Функція SQL \"%s\"" -#: catalog/pg_publication.c:66 catalog/pg_publication.c:74 -#: catalog/pg_publication.c:82 catalog/pg_publication.c:88 +#: catalog/pg_publication.c:63 catalog/pg_publication.c:71 +#: catalog/pg_publication.c:79 catalog/pg_publication.c:85 #, c-format msgid "cannot add relation \"%s\" to publication" msgstr "не можна додати відношення \"%s\" до публікації" -#: catalog/pg_publication.c:76 +#: catalog/pg_publication.c:73 #, c-format msgid "This operation is not supported for system tables." msgstr "Ця операція не підтримується для системних таблиць." -#: catalog/pg_publication.c:84 +#: catalog/pg_publication.c:81 #, c-format msgid "This operation is not supported for temporary tables." msgstr "Ця операція не підтримується для тимчасових таблиць." -#: catalog/pg_publication.c:90 +#: catalog/pg_publication.c:87 #, c-format msgid "This operation is not supported for unlogged tables." msgstr "Ця операція не підтримується для таблиць без журналювання." -#: catalog/pg_publication.c:104 catalog/pg_publication.c:112 +#: catalog/pg_publication.c:101 catalog/pg_publication.c:109 #, c-format msgid "cannot add schema \"%s\" to publication" msgstr "не можна додати схему \"%s\" до публікації" -#: catalog/pg_publication.c:106 +#: catalog/pg_publication.c:103 #, c-format msgid "This operation is not supported for system schemas." msgstr "Ця операція не підтримується для системних схем." -#: catalog/pg_publication.c:114 +#: catalog/pg_publication.c:111 #, c-format msgid "Temporary schemas cannot be replicated." msgstr "Тимчасові схеми не можуть бути репліковані." -#: catalog/pg_publication.c:392 +#: catalog/pg_publication.c:462 #, c-format msgid "relation \"%s\" is already member of publication \"%s\"" msgstr "відношення \"%s\" вже є членом публікації \"%s\"" -#: catalog/pg_publication.c:534 +#: catalog/pg_publication.c:576 #, c-format msgid "cannot use system column \"%s\" in publication column list" msgstr "не можна використати системний стовпець \"%s\" у списку стовпців публікації" -#: catalog/pg_publication.c:540 +#: catalog/pg_publication.c:582 #, c-format -msgid "cannot use generated column \"%s\" in publication column list" -msgstr "не можна використати згенерований стовпець \"%s\" у списку стовпців публікації" +msgid "cannot use virtual generated column \"%s\" in publication column list" +msgstr "не можна використовувати віртуальний генерований стовпець \"%s\" у списку стовпців публікації" -#: catalog/pg_publication.c:546 +#: catalog/pg_publication.c:588 #, c-format msgid "duplicate column \"%s\" in publication column list" msgstr "дуплікат стовпця \"%s\" в списку стовпців публікації" -#: catalog/pg_publication.c:636 +#: catalog/pg_publication.c:700 #, c-format msgid "schema \"%s\" is already member of publication \"%s\"" msgstr "схема \"%s\" вже є членом публікації \"%s\"" @@ -6363,12 +6458,12 @@ msgstr "не вдалося видалити об'єкти, що належат msgid "cannot reassign ownership of objects owned by %s because they are required by the database system" msgstr "не вдалося змінити власника об'єктів, що належать ролі %s, тому що вони необхідні системі баз даних" -#: catalog/pg_subscription.c:438 +#: catalog/pg_subscription.c:484 #, c-format msgid "could not drop relation mapping for subscription \"%s\"" msgstr "не вдалося видалити зіставлення відношень для підписки \"%s\"" -#: catalog/pg_subscription.c:440 +#: catalog/pg_subscription.c:486 #, c-format msgid "Table synchronization for relation \"%s\" is in progress and is in state \"%c\"." msgstr "Синхронізація таблиць для відношення \"%s\" у процесі та знаходиться у стані \"%c\"." @@ -6376,7 +6471,7 @@ msgstr "Синхронізація таблиць для відношення \" #. translator: first %s is a SQL ALTER command and second %s is a #. SQL DROP command #. -#: catalog/pg_subscription.c:447 +#: catalog/pg_subscription.c:493 #, c-format msgid "Use %s to enable subscription if not already enabled or use %s to drop the subscription." msgstr "Використайте %s, щоб активувати підписку, якщо вона ще не активована, або використайте %s, щоб видалити підписку." @@ -6407,7 +6502,7 @@ msgstr "внутрішній розмір %d недійсний для типу, msgid "alignment \"%c\" is invalid for variable-length type" msgstr "вирівнювання \"%c\" недійсне для типу змінної довжини" -#: catalog/pg_type.c:325 commands/typecmds.c:4363 +#: catalog/pg_type.c:325 commands/typecmds.c:4362 #, c-format msgid "fixed-size types must have storage PLAIN" msgstr "для типів фіксованого розміру застосовується лише режим зберігання PLAIN" @@ -6422,10 +6517,10 @@ msgstr "Помилка під час створення багатодіапаз msgid "You can manually specify a multirange type name using the \"multirange_type_name\" attribute." msgstr "Ви можете вручну вказати назву багатодіапазонного типу за допомогою атрибуту \"multirange_type_name\"." -#: catalog/storage.c:508 storage/buffer/bufmgr.c:1540 +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7338 #, c-format -msgid "invalid page in block %u of relation %s" -msgstr "неприпустима сторінка в блоці %u відношення %s" +msgid "invalid page in block %u of relation \"%s\"" +msgstr "недійсна сторінка в блоці %u відношення \"%s\"" #: commands/aggregatecmds.c:167 #, c-format @@ -6507,7 +6602,7 @@ msgstr "функції серіалізації можуть визначати msgid "must specify both or neither of serialization and deserialization functions" msgstr "повинні визначатись обидві або жодна з серіалізуючих та десеріалізуючих функцій" -#: commands/aggregatecmds.c:434 commands/functioncmds.c:634 +#: commands/aggregatecmds.c:434 commands/functioncmds.c:649 #, c-format msgid "parameter \"parallel\" must be SAFE, RESTRICTED, or UNSAFE" msgstr "параметр \"parallel\" має мати значення SAFE, RESTRICTED, або UNSAFE" @@ -6517,86 +6612,86 @@ msgstr "параметр \"parallel\" має мати значення SAFE, RES msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE" msgstr "параметр \"%s\" має мати значення READ_ONLY, SHAREABLE, або READ_WRITE" -#: commands/alter.c:82 commands/event_trigger.c:191 +#: commands/alter.c:83 commands/event_trigger.c:195 #, c-format msgid "event trigger \"%s\" already exists" msgstr "тригер подій \"%s\" вже існує" -#: commands/alter.c:85 commands/foreigncmds.c:593 +#: commands/alter.c:86 commands/foreigncmds.c:604 #, c-format msgid "foreign-data wrapper \"%s\" already exists" msgstr "джерело сторонніх даних \"%s\" вже існує" -#: commands/alter.c:88 commands/foreigncmds.c:884 +#: commands/alter.c:89 commands/foreigncmds.c:895 #, c-format msgid "server \"%s\" already exists" msgstr "сервер \"%s\" вже існує" -#: commands/alter.c:91 commands/proclang.c:131 +#: commands/alter.c:92 commands/proclang.c:131 #, c-format msgid "language \"%s\" already exists" msgstr "мова \"%s\" вже існує" -#: commands/alter.c:94 commands/publicationcmds.c:764 +#: commands/alter.c:95 commands/publicationcmds.c:865 #, c-format msgid "publication \"%s\" already exists" msgstr "публікація \"%s\" вже існує" -#: commands/alter.c:97 commands/subscriptioncmds.c:669 +#: commands/alter.c:98 commands/subscriptioncmds.c:629 #, c-format msgid "subscription \"%s\" already exists" msgstr "підписка \"%s\" вже існує" -#: commands/alter.c:120 +#: commands/alter.c:121 #, c-format msgid "conversion \"%s\" already exists in schema \"%s\"" msgstr "перетворення \"%s\" вже існує в схемі \"%s\"" -#: commands/alter.c:124 +#: commands/alter.c:125 #, c-format msgid "statistics object \"%s\" already exists in schema \"%s\"" msgstr "об'єкт статистики \"%s\" вже існує в схемі \"%s\"" -#: commands/alter.c:128 +#: commands/alter.c:129 #, c-format msgid "text search parser \"%s\" already exists in schema \"%s\"" msgstr "парсер текстового пошуку \"%s\" вже існує в схемі \"%s\"" -#: commands/alter.c:132 +#: commands/alter.c:133 #, c-format msgid "text search dictionary \"%s\" already exists in schema \"%s\"" msgstr "словник текстового пошуку \"%s\" вже існує в схемі \"%s\"" -#: commands/alter.c:136 +#: commands/alter.c:137 #, c-format msgid "text search template \"%s\" already exists in schema \"%s\"" msgstr "шаблон текстового пошуку \"%s\" вже існує в схемі \"%s\"" -#: commands/alter.c:140 +#: commands/alter.c:141 #, c-format msgid "text search configuration \"%s\" already exists in schema \"%s\"" msgstr "конфігурація текстового пошуку \"%s\" вже існує в схемі \"%s\"" -#: commands/alter.c:213 +#: commands/alter.c:214 #, c-format msgid "must be superuser to rename %s" msgstr "перейменувати %s може тільки суперкористувач" -#: commands/alter.c:255 commands/subscriptioncmds.c:648 -#: commands/subscriptioncmds.c:1129 commands/subscriptioncmds.c:1212 -#: commands/subscriptioncmds.c:1918 +#: commands/alter.c:256 commands/subscriptioncmds.c:608 +#: commands/subscriptioncmds.c:1147 commands/subscriptioncmds.c:1231 +#: commands/subscriptioncmds.c:1991 #, c-format msgid "password_required=false is superuser-only" msgstr "password_required=false тільки для суперкористувачів" -#: commands/alter.c:256 commands/subscriptioncmds.c:649 -#: commands/subscriptioncmds.c:1130 commands/subscriptioncmds.c:1213 -#: commands/subscriptioncmds.c:1919 +#: commands/alter.c:257 commands/subscriptioncmds.c:609 +#: commands/subscriptioncmds.c:1148 commands/subscriptioncmds.c:1232 +#: commands/subscriptioncmds.c:1992 #, c-format msgid "Subscriptions with the password_required option set to false may only be created or modified by the superuser." msgstr "Підписки з налаштуванням password_required=false можуть бути створені або змінені тільки суперкористувачем." -#: commands/alter.c:734 +#: commands/alter.c:746 #, c-format msgid "must be superuser to set schema of %s" msgstr "встановити схему об'єкту %s може тільки суперкористувач" @@ -6616,8 +6711,8 @@ msgstr "Тільки суперкористувач може створити м msgid "access method \"%s\" already exists" msgstr "метод доступу \"%s\" вже існує" -#: commands/amcmds.c:154 commands/indexcmds.c:222 commands/indexcmds.c:842 -#: commands/opclasscmds.c:374 commands/opclasscmds.c:832 +#: commands/amcmds.c:154 commands/indexcmds.c:226 commands/indexcmds.c:859 +#: commands/opclasscmds.c:375 commands/opclasscmds.c:833 #, c-format msgid "access method \"%s\" does not exist" msgstr "методу доступу \"%s\" не існує" @@ -6627,79 +6722,84 @@ msgstr "методу доступу \"%s\" не існує" msgid "handler function is not specified" msgstr "функція-обробник не вказана" -#: commands/amcmds.c:264 commands/event_trigger.c:200 -#: commands/foreigncmds.c:489 commands/proclang.c:78 commands/trigger.c:702 -#: parser/parse_clause.c:943 +#: commands/amcmds.c:264 commands/event_trigger.c:204 +#: commands/foreigncmds.c:500 commands/proclang.c:78 commands/trigger.c:706 +#: parser/parse_clause.c:941 #, c-format msgid "function %s must return type %s" msgstr "функція %s повинна повертати тип %s" -#: commands/analyze.c:217 +#: commands/analyze.c:215 #, c-format msgid "skipping \"%s\" --- cannot analyze this foreign table" msgstr "пропуск об'єкту \"%s\" --- неможливо аналізувати цю сторонню таблицю" -#: commands/analyze.c:234 +#: commands/analyze.c:232 #, c-format msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables" msgstr "пропуск об'єкту \"%s\" --- неможливо аналізувати не-таблиці або спеціальні системні таблиці" -#: commands/analyze.c:314 +#: commands/analyze.c:317 #, c-format msgid "analyzing \"%s.%s\" inheritance tree" msgstr "аналізується дерево наслідування \"%s.%s\"" -#: commands/analyze.c:319 +#: commands/analyze.c:322 #, c-format msgid "analyzing \"%s.%s\"" msgstr "аналіз \"%s.%s\"" -#: commands/analyze.c:385 +#: commands/analyze.c:393 #, c-format msgid "column \"%s\" of relation \"%s\" appears more than once" msgstr "стовпець \"%s\" відносно \"%s\" з'являється більше одного разу" -#: commands/analyze.c:785 +#: commands/analyze.c:803 #, c-format msgid "automatic analyze of table \"%s.%s.%s\"\n" msgstr "автоматичний аналіз таблиці \"%s.%s.%s\"\n" -#: commands/analyze.c:1300 +#: commands/analyze.c:805 +#, c-format +msgid "finished analyzing table \"%s.%s.%s\"\n" +msgstr "завершено аналіз таблиці \"%s.%s.%s\"\n" + +#: commands/analyze.c:1346 #, 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 "\"%s\": проскановано %d з %u сторінок, вони містять %.0f живих рядків і %.0f мертвих рядків; %d рядків вибрані; %.0f приблизне загальне число рядків" -#: commands/analyze.c:1384 +#: commands/analyze.c:1430 #, c-format msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no child tables" msgstr "пропускається аналіз дерева наслідування \"%s.%s\" --- це дерево наслідування не містить дочірніх таблиць" -#: commands/analyze.c:1482 +#: commands/analyze.c:1528 #, c-format msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables" msgstr "пропускається аналіз дерева наслідування \"%s.%s\" --- це дерево наслідування не містить аналізуючих дочірніх таблиць" -#: commands/async.c:612 +#: commands/async.c:611 #, c-format msgid "channel name cannot be empty" msgstr "ім'я каналу не може бути пустим" -#: commands/async.c:618 +#: commands/async.c:617 #, c-format msgid "channel name too long" msgstr "ім'я каналу задовге" -#: commands/async.c:623 +#: commands/async.c:622 #, c-format msgid "payload string too long" msgstr "рядок навантаження задовгий" -#: commands/async.c:842 +#: commands/async.c:841 #, c-format msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY" msgstr "виконати PREPARE для транзакції, яка виконала LISTEN, UNLISTEN або NOTIFY неможливо" -#: commands/async.c:946 +#: commands/async.c:945 #, c-format msgid "too many notifications in the NOTIFY queue" msgstr "занадто багато сповіщень у черзі NOTIFY" @@ -6719,89 +6819,91 @@ msgstr "Серверний процес з PID %d серед процесів з msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction." msgstr "Черга NOTIFY не може бути спорожненою, поки цей процес не завершить поточну транзакцію." -#: commands/cluster.c:128 +#: commands/cluster.c:127 commands/dbcommands.c:2356 +#: commands/explain_state.c:165 commands/indexcmds.c:2846 commands/vacuum.c:234 +#: commands/vacuum.c:308 #, c-format -msgid "unrecognized CLUSTER option \"%s\"" -msgstr "нерозпізнаний параметр CLUSTER \"%s\"" +msgid "unrecognized %s option \"%s\"" +msgstr "нерозпізнана %s опція \"%s\"" -#: commands/cluster.c:159 commands/cluster.c:433 +#: commands/cluster.c:158 commands/cluster.c:421 #, c-format msgid "cannot cluster temporary tables of other sessions" msgstr "не можна кластеризувати тимчасові таблиці з інших сеансів" -#: commands/cluster.c:177 +#: commands/cluster.c:176 #, c-format msgid "there is no previously clustered index for table \"%s\"" msgstr "немає попереднього кластеризованого індексу для таблиці \"%s\"" -#: commands/cluster.c:191 commands/tablecmds.c:14695 commands/tablecmds.c:16626 +#: commands/cluster.c:190 commands/tablecmds.c:16447 commands/tablecmds.c:18513 #, c-format msgid "index \"%s\" for table \"%s\" does not exist" msgstr "індекс \"%s\" для таблці \"%s\" не існує" -#: commands/cluster.c:422 +#: commands/cluster.c:410 #, c-format msgid "cannot cluster a shared catalog" msgstr "не можна кластеризувати спільний каталог" -#: commands/cluster.c:437 +#: commands/cluster.c:425 #, c-format msgid "cannot vacuum temporary tables of other sessions" msgstr "не можна очищати тимчасові таблиці з інших сеансів" -#: commands/cluster.c:513 commands/tablecmds.c:16636 +#: commands/cluster.c:507 commands/tablecmds.c:18523 #, c-format msgid "\"%s\" is not an index for table \"%s\"" msgstr "\"%s\" не є індексом для таблиці \"%s\"" -#: commands/cluster.c:521 +#: commands/cluster.c:515 #, c-format msgid "cannot cluster on index \"%s\" because access method does not support clustering" msgstr "кластеризація за індексом \"%s\" неможлива, тому що метод доступу не підтримує кластеризацію" -#: commands/cluster.c:533 +#: commands/cluster.c:527 #, c-format msgid "cannot cluster on partial index \"%s\"" msgstr "неможливо кластеризувати за секційним індексом \"%s\"" -#: commands/cluster.c:547 +#: commands/cluster.c:541 #, c-format msgid "cannot cluster on invalid index \"%s\"" msgstr "неможливо кластеризувати за невірним індексом \"%s\"" -#: commands/cluster.c:571 +#: commands/cluster.c:565 #, c-format msgid "cannot mark index clustered in partitioned table" msgstr "неможливо помітити індекс кластеризованим в секційній таблиці" -#: commands/cluster.c:956 +#: commands/cluster.c:961 #, c-format msgid "clustering \"%s.%s\" using index scan on \"%s\"" msgstr "кластеризація \"%s.%s\" з використанням сканування індексу \"%s\"" -#: commands/cluster.c:962 +#: commands/cluster.c:967 #, c-format msgid "clustering \"%s.%s\" using sequential scan and sort" msgstr "кластеризація \"%s.%s\"з використанням послідовного сканування та сортування" -#: commands/cluster.c:967 +#: commands/cluster.c:972 #, c-format msgid "vacuuming \"%s.%s\"" msgstr "очищення \"%s.%s\"" -#: commands/cluster.c:994 +#: commands/cluster.c:999 #, c-format msgid "\"%s.%s\": found %.0f removable, %.0f nonremovable row versions in %u pages" msgstr "\"%s.%s\": знайдено версій рядків, що можуть бути видалені %.0f, що не можуть бути видалені %.0f, переглянуто сторінок %u" -#: commands/cluster.c:999 +#: commands/cluster.c:1004 #, c-format msgid "%.0f dead row versions cannot be removed yet.\n" "%s." msgstr "%.0f \"мертві\" версії рядків досі не можуть бути видалені.\n" "%s." -#: commands/cluster.c:1744 +#: commands/cluster.c:1751 #, c-format msgid "permission denied to cluster \"%s\", skipping it" msgstr "відмовлено в дозволі кластеру \"%s\", пропуск" @@ -6812,13 +6914,14 @@ msgid "collation attribute \"%s\" not recognized" msgstr "атрибут collation \"%s\" не розпізнаний" #: commands/collationcmds.c:123 commands/collationcmds.c:129 -#: commands/define.c:388 commands/tablecmds.c:8106 -#: replication/pgoutput/pgoutput.c:307 replication/pgoutput/pgoutput.c:330 -#: replication/pgoutput/pgoutput.c:344 replication/pgoutput/pgoutput.c:354 -#: replication/pgoutput/pgoutput.c:364 replication/pgoutput/pgoutput.c:374 -#: replication/pgoutput/pgoutput.c:386 replication/walsender.c:1146 -#: replication/walsender.c:1168 replication/walsender.c:1178 -#: replication/walsender.c:1187 replication/walsender.c:1426 +#: commands/define.c:375 commands/tablecmds.c:8394 +#: replication/pgoutput/pgoutput.c:321 replication/pgoutput/pgoutput.c:344 +#: replication/pgoutput/pgoutput.c:358 replication/pgoutput/pgoutput.c:368 +#: replication/pgoutput/pgoutput.c:378 replication/pgoutput/pgoutput.c:388 +#: replication/pgoutput/pgoutput.c:400 replication/walsender.c:1137 +#: replication/walsender.c:1159 replication/walsender.c:1169 +#: replication/walsender.c:1178 replication/walsender.c:1420 +#: replication/walsender.c:1429 #, c-format msgid "conflicting or redundant options" msgstr "конфліктуючі або надлишкові параметри" @@ -6849,7 +6952,7 @@ msgstr "нерозпізнаний постачальник правил сор msgid "parameter \"%s\" must be specified" msgstr "необхідно вказати параметр \"%s\"" -#: commands/collationcmds.c:293 commands/dbcommands.c:1134 +#: commands/collationcmds.c:293 commands/dbcommands.c:1173 #, c-format msgid "using standard form \"%s\" for ICU locale \"%s\"" msgstr "використання стандартної форми \"%s\" для мови ICU \"%s\"" @@ -6859,7 +6962,7 @@ msgstr "використання стандартної форми \"%s\" для msgid "nondeterministic collations not supported with this provider" msgstr "недетерміновані правила сортування не підтримуються цим провайдером" -#: commands/collationcmds.c:317 commands/dbcommands.c:1087 +#: commands/collationcmds.c:317 commands/dbcommands.c:1126 #, c-format msgid "ICU rules cannot be specified unless locale provider is ICU" msgstr "Правила ICU не можна вказати, якщо постачальник локалі не ICU" @@ -6869,68 +6972,69 @@ msgstr "Правила ICU не можна вказати, якщо постач msgid "current database's encoding is not supported with this provider" msgstr "кодування поточної бази даних не підтримується цим провайдером" -#: commands/collationcmds.c:409 +#: commands/collationcmds.c:405 #, c-format msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\"" msgstr "правило сортування \"%s\" для кодування \"%s\" вже існує в схемі \"%s\"" -#: commands/collationcmds.c:420 +#: commands/collationcmds.c:416 #, c-format msgid "collation \"%s\" already exists in schema \"%s\"" msgstr "правило сортування \"%s\" вже існує в схемі \"%s\"" -#: commands/collationcmds.c:445 +#: commands/collationcmds.c:441 #, c-format msgid "cannot refresh version of default collation" msgstr "оновити версію правила сортування за замовчуванням не можна" #. translator: %s is an SQL command #. translator: %s is an SQL ALTER command -#: commands/collationcmds.c:447 commands/subscriptioncmds.c:1376 -#: commands/tablecmds.c:7882 commands/tablecmds.c:7892 -#: commands/tablecmds.c:7894 commands/tablecmds.c:14397 -#: commands/tablecmds.c:17774 commands/tablecmds.c:17795 -#: commands/typecmds.c:3787 commands/typecmds.c:3872 commands/typecmds.c:4226 +#: commands/collationcmds.c:443 commands/subscriptioncmds.c:1445 +#: commands/tablecmds.c:8146 commands/tablecmds.c:8156 +#: commands/tablecmds.c:8158 commands/tablecmds.c:16149 +#: commands/tablecmds.c:19677 commands/tablecmds.c:19698 +#: commands/typecmds.c:3786 commands/typecmds.c:3871 commands/typecmds.c:4225 #, c-format msgid "Use %s instead." msgstr "Використайте %s замість цього." -#: commands/collationcmds.c:480 commands/dbcommands.c:2567 +#: commands/collationcmds.c:476 commands/dbcommands.c:2606 #, c-format msgid "changing version from %s to %s" msgstr "зміна версії з %s на %s" -#: commands/collationcmds.c:495 commands/dbcommands.c:2580 +#: commands/collationcmds.c:491 commands/dbcommands.c:2619 #, c-format msgid "version has not changed" msgstr "версію не змінено" -#: commands/collationcmds.c:528 commands/dbcommands.c:2746 +#: commands/collationcmds.c:524 commands/dbcommands.c:2789 +#: utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" msgstr "база даних з OID %u не існує" -#: commands/collationcmds.c:554 +#: commands/collationcmds.c:550 #, c-format msgid "collation with OID %u does not exist" msgstr "порядку сортування %u з OID не існує" -#: commands/collationcmds.c:848 +#: commands/collationcmds.c:844 #, c-format msgid "must be superuser to import system collations" msgstr "імпортувати систмені правила сортування може тільки суперкористувач" -#: commands/collationcmds.c:968 commands/collationcmds.c:1053 +#: commands/collationcmds.c:964 commands/collationcmds.c:1049 #, c-format msgid "no usable system locales were found" msgstr "придатні системні локалі не знайдені" -#: commands/comment.c:61 commands/dbcommands.c:1665 commands/dbcommands.c:1892 -#: commands/dbcommands.c:2002 commands/dbcommands.c:2200 -#: commands/dbcommands.c:2438 commands/dbcommands.c:2529 -#: commands/dbcommands.c:2650 commands/dbcommands.c:3158 -#: utils/init/postinit.c:1033 utils/init/postinit.c:1097 -#: utils/init/postinit.c:1170 +#: commands/comment.c:61 commands/dbcommands.c:1704 commands/dbcommands.c:1922 +#: commands/dbcommands.c:2034 commands/dbcommands.c:2232 +#: commands/dbcommands.c:2473 commands/dbcommands.c:2566 +#: commands/dbcommands.c:2690 commands/dbcommands.c:3201 +#: utils/init/postinit.c:1016 utils/init/postinit.c:1080 +#: utils/init/postinit.c:1153 #, c-format msgid "database \"%s\" does not exist" msgstr "бази даних \"%s\" не існує" @@ -6940,12 +7044,12 @@ msgstr "бази даних \"%s\" не існує" msgid "cannot set comment on relation \"%s\"" msgstr "встановити коментар для відношення \"%s\" не можна" -#: commands/constraint.c:61 utils/adt/ri_triggers.c:2019 +#: commands/constraint.c:61 utils/adt/ri_triggers.c:2175 #, c-format msgid "function \"%s\" was not called by trigger manager" msgstr "функція \"%s\" не була викликана менеджером тригерів" -#: commands/constraint.c:68 utils/adt/ri_triggers.c:2028 +#: commands/constraint.c:68 utils/adt/ri_triggers.c:2184 #, c-format msgid "function \"%s\" must be fired AFTER ROW" msgstr "функція \"%s\" повинна запускатися в AFTER ROW" @@ -7015,270 +7119,311 @@ msgstr "немає дозволу для COPY в файл" msgid "Only roles with privileges of the \"%s\" role may COPY to a file." msgstr "Тільки ролі з правами \"%s\" можуть виконувати COPY в файл." -#: commands/copy.c:193 +#: commands/copy.c:182 +#, c-format +msgid "generated columns are not supported in COPY FROM WHERE conditions" +msgstr "згенеровані стовпці не підтримуються в умовах COPY FROM WHERE" + +#: commands/copy.c:183 commands/tablecmds.c:14418 commands/tablecmds.c:19824 +#: commands/tablecmds.c:19906 commands/trigger.c:660 +#: rewrite/rewriteHandler.c:952 rewrite/rewriteHandler.c:987 +#, c-format +msgid "Column \"%s\" is a generated column." +msgstr "Стовпець \"%s\" є згенерованим стовпцем." + +#: commands/copy.c:232 #, c-format msgid "COPY FROM not supported with row-level security" msgstr "COPY FROM не підтримується із захистом на рівні рядків" -#: commands/copy.c:194 +#: commands/copy.c:233 #, c-format msgid "Use INSERT statements instead." msgstr "Використайте оператори INSERT замість цього." -#: commands/copy.c:375 +#: commands/copy.c:414 #, c-format msgid "cannot use \"%s\" with HEADER in COPY TO" msgstr "використовувати \"%s\" з HEADER в COPY TO не можна" -#: commands/copy.c:384 +#: commands/copy.c:423 #, c-format msgid "%s requires a Boolean value or \"match\"" msgstr "%s потребує Boolean або \"відповідність\"" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR, #. second %s is a COPY with direction, e.g. COPY TO -#: commands/copy.c:402 commands/copy.c:782 commands/copy.c:796 -#: commands/copy.c:811 commands/copy.c:837 commands/copy.c:847 +#: commands/copy.c:441 commands/copy.c:857 commands/copy.c:873 +#: commands/copy.c:890 commands/copy.c:916 commands/copy.c:926 #, c-format msgid "COPY %s cannot be used with %s" msgstr "COPY %s не можна використовувати з %s" #. translator: first %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:416 commands/copy.c:441 +#: commands/copy.c:455 commands/copy.c:513 #, c-format msgid "COPY %s \"%s\" not recognized" msgstr "COPY %s \"%s\" не розпізнано" -#: commands/copy.c:502 +#: commands/copy.c:475 commands/define.c:73 commands/define.c:84 +#: commands/define.c:178 commands/define.c:196 commands/define.c:211 +#: commands/define.c:229 +#, c-format +msgid "%s requires a numeric value" +msgstr "%s потребує числового значення" + +#: commands/copy.c:485 +#, c-format +msgid "REJECT_LIMIT (%) must be greater than zero" +msgstr "REJECT_LIMIT (%) повинен бути більшим за нуль" + +#: commands/copy.c:575 #, c-format msgid "COPY format \"%s\" not recognized" msgstr "Формат \"%s\" для COPY не розпізнано" -#: commands/copy.c:560 commands/copy.c:575 commands/copy.c:590 -#: commands/copy.c:609 +#: commands/copy.c:633 commands/copy.c:648 commands/copy.c:663 +#: commands/copy.c:682 #, c-format msgid "argument to option \"%s\" must be a list of column names" msgstr "аргументом функції \"%s\" повинен бути список імен стовпців" -#: commands/copy.c:621 +#: commands/copy.c:694 #, c-format msgid "argument to option \"%s\" must be a valid encoding name" msgstr "аргументом функції \"%s\" повинне бути припустиме ім'я коду" -#: commands/copy.c:642 commands/dbcommands.c:866 commands/dbcommands.c:2386 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2421 #, c-format msgid "option \"%s\" not recognized" msgstr "параметр \"%s\" не розпізнано" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:655 commands/copy.c:660 commands/copy.c:665 -#: commands/copy.c:740 +#: commands/copy.c:735 commands/copy.c:740 commands/copy.c:745 +#: commands/copy.c:815 #, c-format msgid "cannot specify %s in BINARY mode" msgstr "не можна вказати %s в режимі BINARY" -#: commands/copy.c:670 -#, c-format -msgid "only ON_ERROR STOP is allowed in BINARY mode" -msgstr "в режимі BINARY допускається лише ON_ERROR STOP" - -#: commands/copy.c:692 +#: commands/copy.c:767 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "роздільник для COPY повинен бути однобайтовим символом" -#: commands/copy.c:699 +#: commands/copy.c:774 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "Роздільник для COPY не може бути символом нового рядка або повернення каретки" -#: commands/copy.c:705 +#: commands/copy.c:780 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "Подання NULL для COPY не може включати символ нового рядка або повернення каретки" -#: commands/copy.c:715 +#: commands/copy.c:790 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "Подання для COPY за замовчуванням не може включати символ нового рядка або повернення каретки" -#: commands/copy.c:733 +#: commands/copy.c:808 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "роздільник COPY не може бути \"%s\"" #. translator: %s is the name of a COPY option, e.g. ON_ERROR -#: commands/copy.c:747 commands/copy.c:764 commands/copy.c:776 -#: commands/copy.c:790 commands/copy.c:804 +#: commands/copy.c:822 commands/copy.c:839 commands/copy.c:851 +#: commands/copy.c:866 commands/copy.c:882 #, c-format msgid "COPY %s requires CSV mode" msgstr "Для COPY %s потрібен режим CSV" -#: commands/copy.c:752 +#: commands/copy.c:827 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "лапки для COPY повинні бути однобайтовим символом" -#: commands/copy.c:757 +#: commands/copy.c:832 #, c-format msgid "COPY delimiter and quote must be different" msgstr "роздільник і лапки для COPY повинні бути різними" -#: commands/copy.c:769 +#: commands/copy.c:844 #, c-format msgid "COPY escape must be a single one-byte character" msgstr "вихід для COPY повинен бути однобайтовим символом" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:819 commands/copy.c:855 +#: commands/copy.c:898 commands/copy.c:934 #, c-format msgid "COPY delimiter character must not appear in the %s specification" msgstr "символ розділювача для COPY не повинен з'являтися в специфікації %s" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:828 commands/copy.c:864 +#: commands/copy.c:907 commands/copy.c:943 #, c-format msgid "CSV quote character must not appear in the %s specification" msgstr "лапки CSV не повинні з'являтися у специфікації %s" -#: commands/copy.c:873 +#: commands/copy.c:952 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "Специфікація NULL і специфікація DEFAULT не може співпадати" -#: commands/copy.c:935 +#: commands/copy.c:958 +#, c-format +msgid "only ON_ERROR STOP is allowed in BINARY mode" +msgstr "в режимі BINARY допускається лише ON_ERROR STOP" + +#. translator: first and second %s are the names of COPY option, e.g. +#. * ON_ERROR, third is the value of the COPY option, e.g. IGNORE +#: commands/copy.c:965 +#, c-format +msgid "COPY %s requires %s to be set to %s" +msgstr "COPY %s потребує встановлення %s в значення %s" + +#: commands/copy.c:1027 #, c-format msgid "column \"%s\" is a generated column" msgstr "стовпець \"%s\" є згенерованим стовпцем" -#: commands/copy.c:937 +#: commands/copy.c:1029 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "Згенеровані стовпці не можна використовувати в COPY." -#: commands/copy.c:952 commands/indexcmds.c:1917 commands/statscmds.c:239 -#: commands/tablecmds.c:2509 commands/tablecmds.c:2980 -#: commands/tablecmds.c:3788 parser/parse_relation.c:3692 -#: parser/parse_relation.c:3702 parser/parse_relation.c:3720 -#: parser/parse_relation.c:3727 parser/parse_relation.c:3741 +#: commands/copy.c:1044 commands/indexcmds.c:1959 commands/statscmds.c:260 +#: commands/tablecmds.c:2593 commands/tablecmds.c:3101 +#: commands/tablecmds.c:3930 parser/parse_relation.c:3798 +#: parser/parse_relation.c:3808 parser/parse_relation.c:3826 +#: parser/parse_relation.c:3833 parser/parse_relation.c:3847 #: utils/adt/tsvector_op.c:2853 #, c-format msgid "column \"%s\" does not exist" msgstr "стовпця \"%s\" не існує" -#: commands/copy.c:959 commands/tablecmds.c:2535 commands/trigger.c:951 -#: parser/parse_target.c:1083 parser/parse_target.c:1094 +#: commands/copy.c:1051 commands/tablecmds.c:2619 commands/trigger.c:957 +#: parser/parse_target.c:1086 parser/parse_target.c:1097 #, c-format msgid "column \"%s\" specified more than once" msgstr "стовпець \"%s\" вказано більше чим один раз" -#: commands/copyfrom.c:118 +#: commands/copyfrom.c:260 #, c-format msgid "COPY %s" msgstr "COPY %s" -#: commands/copyfrom.c:126 +#: commands/copyfrom.c:268 #, c-format -msgid "COPY %s, line %llu, column %s" -msgstr "COPY %s, рядок %llu, стовпець %s" +msgid "COPY %s, line %, column %s" +msgstr "COPY %s, рядок %, стовпець %s" -#: commands/copyfrom.c:131 commands/copyfrom.c:177 +#: commands/copyfrom.c:273 commands/copyfrom.c:319 #, c-format -msgid "COPY %s, line %llu" -msgstr "COPY %s, рядок %llu" +msgid "COPY %s, line %" +msgstr "COPY %s, рядок %" -#: commands/copyfrom.c:143 +#: commands/copyfrom.c:285 #, c-format -msgid "COPY %s, line %llu, column %s: \"%s\"" -msgstr "COPY %s, рядок %llu, стовпець %s: \"%s\"" +msgid "COPY %s, line %, column %s: \"%s\"" +msgstr "COPY %s, рядок %, стовпець %s: \"%s\"" -#: commands/copyfrom.c:153 +#: commands/copyfrom.c:295 #, c-format -msgid "COPY %s, line %llu, column %s: null input" -msgstr "COPY %s, рядок %llu, стовпець %s: null введення" +msgid "COPY %s, line %, column %s: null input" +msgstr "COPY %s, рядок %, стовпець %s: порожній ввод" -#: commands/copyfrom.c:170 +#: commands/copyfrom.c:312 #, c-format -msgid "COPY %s, line %llu: \"%s\"" -msgstr "COPY %s, рядок %llu: \"%s\"" +msgid "COPY %s, line %: \"%s\"" +msgstr "COPY %s, рядок %: \"%s\"" -#: commands/copyfrom.c:673 +#: commands/copyfrom.c:823 #, c-format msgid "cannot copy to view \"%s\"" msgstr "неможливо скопіювати до подання \"%s\"" -#: commands/copyfrom.c:675 +#: commands/copyfrom.c:825 #, c-format msgid "To enable copying to a view, provide an INSTEAD OF INSERT trigger." msgstr "Щоб подання допускало копіювання даних у нього, встановіть тригер INSTEAD OF INSERT." -#: commands/copyfrom.c:679 +#: commands/copyfrom.c:829 #, c-format msgid "cannot copy to materialized view \"%s\"" msgstr "не можна копіювати матеріалізоване подання \"%s\"" -#: commands/copyfrom.c:684 +#: commands/copyfrom.c:834 #, c-format msgid "cannot copy to sequence \"%s\"" msgstr "неможливо скопіювати послідовність \"%s\"" -#: commands/copyfrom.c:689 +#: commands/copyfrom.c:839 #, c-format msgid "cannot copy to non-table relation \"%s\"" msgstr "неможливо копіювати у відношення \"%s\", яке не є таблицею" -#: commands/copyfrom.c:729 +#: commands/copyfrom.c:879 #, c-format msgid "cannot perform COPY FREEZE on a partitioned table" msgstr "виконати COPY FREEZE в секціонованій таблиці не можна" -#: commands/copyfrom.c:744 +#: commands/copyfrom.c:886 +#, c-format +msgid "cannot perform COPY FREEZE on a foreign table" +msgstr "не можна виконати COPY FREEZE для зовнішньої таблиці" + +#: commands/copyfrom.c:900 #, c-format msgid "cannot perform COPY FREEZE because of prior transaction activity" msgstr "виконати COPY FREEZE через попередню активність в транзакції не можна" -#: commands/copyfrom.c:750 +#: commands/copyfrom.c:906 #, c-format msgid "cannot perform COPY FREEZE because the table was not created or truncated in the current subtransaction" msgstr "не можна виконати COPY FREEZE, тому, що таблиця не була створена або скорочена в поточній підтранзакції" -#: commands/copyfrom.c:1313 +#: commands/copyfrom.c:1171 #, c-format -msgid "%llu row was skipped due to data type incompatibility" -msgid_plural "%llu rows were skipped due to data type incompatibility" -msgstr[0] "Рядок %llu пропущено через несумісність типів даних" -msgstr[1] "Рядки %llu пропущено через несумісність типів даних" -msgstr[2] "Рядки %llu пропущено через несумісність типів даних" -msgstr[3] "Рядки %llu пропущено через несумісність типів даних" +msgid "skipped more than REJECT_LIMIT (%) rows due to data type incompatibility" +msgstr "пропущено більше REJECT_LIMIT (%) рядків через несумісність типів даних" + +#: commands/copyfrom.c:1474 +#, c-format +msgid "% row was skipped due to data type incompatibility" +msgid_plural "% rows were skipped due to data type incompatibility" +msgstr[0] "% рядок пропущено через несумісність типів даних" +msgstr[1] "% рядки пропущено через несумісність типів даних" +msgstr[2] "% рядків пропущено через несумісність типів даних" +msgstr[3] "% рядків пропущено через несумісність типів даних" #. translator: first %s is the name of a COPY option, e.g. FORCE_NOT_NULL #. translator: %s is the name of a COPY option, e.g. FORCE_NOT_NULL -#: commands/copyfrom.c:1448 commands/copyfrom.c:1491 commands/copyto.c:597 +#: commands/copyfrom.c:1611 commands/copyfrom.c:1654 commands/copyto.c:880 #, c-format msgid "%s column \"%s\" not referenced by COPY" msgstr "%s стовпець \"%s\" не фігурує в COPY" -#: commands/copyfrom.c:1544 utils/mb/mbutils.c:385 +#: commands/copyfrom.c:1707 utils/mb/mbutils.c:386 #, c-format msgid "default conversion function for encoding \"%s\" to \"%s\" does not exist" msgstr "функції за замовчуванням перетворення з кодування \"%s\" в \"%s\" не існує" -#: commands/copyfrom.c:1742 +#: commands/copyfrom.c:1882 #, 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 прочитати дані з файлу. Можливо, вам потрібна клієнтська команда, наприклад \\copy в psql." -#: commands/copyfrom.c:1755 commands/copyto.c:702 +#: commands/copyfrom.c:1895 commands/copyto.c:985 #, c-format msgid "\"%s\" is a directory" msgstr "\"%s\" - каталог" -#: commands/copyfrom.c:1823 commands/copyto.c:299 libpq/be-secure-common.c:83 +#: commands/copyfrom.c:1953 commands/copyto.c:572 libpq/be-secure-common.c:83 #, c-format msgid "could not close pipe to external command: %m" msgstr "не вдалося закрити канал за допомогою зовнішньої команди: %m" -#: commands/copyfrom.c:1838 commands/copyto.c:304 +#: commands/copyfrom.c:1968 commands/copyto.c:577 #, c-format msgid "program \"%s\" failed" msgstr "збій програми \"%s\"" @@ -7319,522 +7464,539 @@ msgid "could not read from COPY file: %m" msgstr "не вдалося прочитати файл COPY: %m" #: commands/copyfromparse.c:278 commands/copyfromparse.c:303 -#: replication/walsender.c:756 replication/walsender.c:782 tcop/postgres.c:381 +#: replication/walsender.c:746 replication/walsender.c:772 tcop/postgres.c:369 #, c-format msgid "unexpected EOF on client connection with an open transaction" msgstr "неочікуваний обрив з'єднання з клієнтом при відкритій транзакції" -#: commands/copyfromparse.c:294 replication/walsender.c:772 +#: commands/copyfromparse.c:294 replication/walsender.c:762 #, c-format msgid "unexpected message type 0x%02X during COPY from stdin" msgstr "неочікуваний тип повідомлення 0x%02X під час COPY з stdin" -#: commands/copyfromparse.c:317 replication/walsender.c:803 +#: commands/copyfromparse.c:317 replication/walsender.c:793 #, c-format msgid "COPY from stdin failed: %s" msgstr "помилка при stdin COPY: %s" -#: commands/copyfromparse.c:785 +#: commands/copyfromparse.c:802 #, c-format msgid "wrong number of fields in header line: got %d, expected %d" msgstr "неправильна кількість полів у рядку заголовку: отримано %d, очікувалось %d" -#: commands/copyfromparse.c:801 +#: commands/copyfromparse.c:818 #, c-format msgid "column name mismatch in header line field %d: got null value (\"%s\"), expected \"%s\"" msgstr "невідповідність назви стовпця в полі заголовку %d: отримано null (\"%s\"), очікувалось \"%s\"" -#: commands/copyfromparse.c:808 +#: commands/copyfromparse.c:825 #, c-format msgid "column name mismatch in header line field %d: got \"%s\", expected \"%s\"" msgstr "невідповідність назви стовпця в полі заголовку %d: отримано \"%s\", очікувалось \"%s\"" -#: commands/copyfromparse.c:892 commands/copyfromparse.c:1554 -#: commands/copyfromparse.c:1810 +#: commands/copyfromparse.c:962 commands/copyfromparse.c:1581 +#: commands/copyfromparse.c:1837 #, c-format msgid "extra data after last expected column" msgstr "зайві дані після вмісту останнього стовпця" -#: commands/copyfromparse.c:906 +#: commands/copyfromparse.c:976 #, c-format msgid "missing data for column \"%s\"" msgstr "відсутні дані для стовпця \"%s\"" -#: commands/copyfromparse.c:990 +#: commands/copyfromparse.c:1056 #, c-format -msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": \"%s\"" -msgstr "пропуск рядка через несумісність типів даних в рядку %llu для стовпця \"%s\": \"%s\"" +msgid "skipping row due to data type incompatibility at line % for column \"%s\": \"%s\"" +msgstr "пропускаємо рядок через несумісність типів даних на рядку % для стовпця \"%s\": \"%s\"" -#: commands/copyfromparse.c:998 +#: commands/copyfromparse.c:1064 #, c-format -msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": null input" -msgstr "пропуск рядка через несумісність типів даних в рядку %llu для стовпця \"%s\": значення null" +msgid "skipping row due to data type incompatibility at line % for column \"%s\": null input" +msgstr "пропускаємо рядок через несумісність типів даних на рядку % для стовпця \"%s\": порожній ввод" -#: commands/copyfromparse.c:1044 +#: commands/copyfromparse.c:1122 #, c-format msgid "received copy data after EOF marker" msgstr "після маркера кінця файлу продовжуються дані COPY" -#: commands/copyfromparse.c:1051 +#: commands/copyfromparse.c:1129 #, c-format msgid "row field count is %d, expected %d" msgstr "кількість полів у рядку: %d, очікувалось: %d" -#: commands/copyfromparse.c:1336 commands/copyfromparse.c:1353 +#: commands/copyfromparse.c:1394 commands/copyfromparse.c:1411 #, c-format msgid "literal carriage return found in data" msgstr "в даних виявлено явне повернення каретки" -#: commands/copyfromparse.c:1337 commands/copyfromparse.c:1354 +#: commands/copyfromparse.c:1395 commands/copyfromparse.c:1412 #, c-format msgid "unquoted carriage return found in data" msgstr "в даних виявлено повернення каретки без лапок" -#: commands/copyfromparse.c:1339 commands/copyfromparse.c:1356 +#: commands/copyfromparse.c:1397 commands/copyfromparse.c:1414 #, c-format msgid "Use \"\\r\" to represent carriage return." msgstr "Використайте \"\\r\", щоб позначити повернення каретки." -#: commands/copyfromparse.c:1340 commands/copyfromparse.c:1357 +#: commands/copyfromparse.c:1398 commands/copyfromparse.c:1415 #, c-format msgid "Use quoted CSV field to represent carriage return." msgstr "Використайте CSV в лапках, щоб позначити повернення каретки." -#: commands/copyfromparse.c:1369 +#: commands/copyfromparse.c:1427 #, c-format msgid "literal newline found in data" msgstr "в даних знайдено явний новий рядок" -#: commands/copyfromparse.c:1370 +#: commands/copyfromparse.c:1428 #, c-format msgid "unquoted newline found in data" msgstr "в даних знайдено новий рядок без лапок" -#: commands/copyfromparse.c:1372 +#: commands/copyfromparse.c:1430 #, c-format msgid "Use \"\\n\" to represent newline." msgstr "Використайте \"\\n\", щоб представити новий рядок." -#: commands/copyfromparse.c:1373 +#: commands/copyfromparse.c:1431 #, c-format msgid "Use quoted CSV field to represent newline." msgstr "Використайте CSV в лапках, щоб позначити новий рядок." -#: commands/copyfromparse.c:1419 commands/copyfromparse.c:1455 +#: commands/copyfromparse.c:1469 commands/copyfromparse.c:1491 #, c-format msgid "end-of-copy marker does not match previous newline style" msgstr "маркер \"кінець копії\" не відповідає попередньому стилю нового рядка" -#: commands/copyfromparse.c:1428 commands/copyfromparse.c:1444 +#: commands/copyfromparse.c:1473 commands/copyfromparse.c:1484 +#: commands/copyfromparse.c:1500 #, c-format -msgid "end-of-copy marker corrupt" -msgstr "маркер \"кінець копії\" зіпсований" +msgid "end-of-copy marker is not alone on its line" +msgstr "маркер кінця COPY не є єдиним на своєму рядку" -#: commands/copyfromparse.c:1746 commands/copyfromparse.c:1961 +#: commands/copyfromparse.c:1773 commands/copyfromparse.c:1988 #, c-format msgid "unexpected default marker in COPY data" msgstr "неочікуваний маркер за замовчуванням в даних COPY" -#: commands/copyfromparse.c:1747 commands/copyfromparse.c:1962 +#: commands/copyfromparse.c:1774 commands/copyfromparse.c:1989 #, c-format msgid "Column \"%s\" has no default value." msgstr "Колонка \"%s\" не має значення за замовчуванням." -#: commands/copyfromparse.c:1894 +#: commands/copyfromparse.c:1921 #, c-format msgid "unterminated CSV quoted field" msgstr "незакінчене поле в лапках CSV" -#: commands/copyfromparse.c:1996 commands/copyfromparse.c:2015 +#: commands/copyfromparse.c:2023 commands/copyfromparse.c:2042 #, c-format msgid "unexpected EOF in COPY data" msgstr "неочікуваний кінец файлу в даних COPY" -#: commands/copyfromparse.c:2005 +#: commands/copyfromparse.c:2032 #, c-format msgid "invalid field size" msgstr "невірний розмір поля" -#: commands/copyfromparse.c:2028 +#: commands/copyfromparse.c:2055 #, c-format msgid "incorrect binary data format" msgstr "невірний двійковий формат даних" -#: commands/copyto.c:229 +#: commands/copyto.c:477 #, c-format msgid "could not write to COPY program: %m" msgstr "не вдалося записати в канал програми COPY: %m" -#: commands/copyto.c:234 +#: commands/copyto.c:482 #, c-format msgid "could not write to COPY file: %m" msgstr "не можливо записати в файл COPY: %m" -#: commands/copyto.c:379 +#: commands/copyto.c:652 #, c-format msgid "cannot copy from view \"%s\"" msgstr "неможливо скопіювати з подання \"%s\"" -#: commands/copyto.c:381 commands/copyto.c:387 commands/copyto.c:393 -#: commands/copyto.c:404 +#: commands/copyto.c:654 commands/copyto.c:669 commands/copyto.c:680 #, c-format msgid "Try the COPY (SELECT ...) TO variant." msgstr "Спробуйте варіацію COPY (SELECT ...) TO." -#: commands/copyto.c:385 +#: commands/copyto.c:660 +#, c-format +msgid "cannot copy from unpopulated materialized view \"%s\"" +msgstr "неможливо скопіювати з незаповненого матеріалізованого подання \"%s\"" + +#: commands/copyto.c:662 executor/execUtils.c:760 #, c-format -msgid "cannot copy from materialized view \"%s\"" -msgstr "неможливо скопіювати з матеріалізованого подання \"%s\"" +msgid "Use the REFRESH MATERIALIZED VIEW command." +msgstr "Використайте команду REFRESH MATERIALIZED VIEW." -#: commands/copyto.c:391 +#: commands/copyto.c:667 #, c-format msgid "cannot copy from foreign table \"%s\"" msgstr "неможливо скопіювати зі сторонньої таблиці \"%s\"" -#: commands/copyto.c:397 +#: commands/copyto.c:673 #, c-format msgid "cannot copy from sequence \"%s\"" msgstr "не вдалося скопіювати з послідовності \"%s\"" -#: commands/copyto.c:402 +#: commands/copyto.c:678 #, c-format msgid "cannot copy from partitioned table \"%s\"" msgstr "неможливо скопіювати з секційної таблиці \"%s\"" -#: commands/copyto.c:408 +#: commands/copyto.c:684 #, c-format msgid "cannot copy from non-table relation \"%s\"" msgstr "не можна копіювати з відношення \"%s\", котре не є таблицею" -#: commands/copyto.c:460 +#: commands/copyto.c:739 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for COPY" msgstr "правила DO INSTEAD NOTHING не підтримуються для COPY" -#: commands/copyto.c:474 +#: commands/copyto.c:753 #, c-format msgid "conditional DO INSTEAD rules are not supported for COPY" msgstr "умовні правила DO INSTEAD не підтримуються для COPY" -#: commands/copyto.c:478 +#: commands/copyto.c:757 #, c-format -msgid "DO ALSO rules are not supported for the COPY" +msgid "DO ALSO rules are not supported for COPY" msgstr "правила DO ALSO не підтримуються для COPY" -#: commands/copyto.c:483 +#: commands/copyto.c:762 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for COPY" msgstr "складові правила DO INSTEAD не підтримуються з COPY" -#: commands/copyto.c:493 +#: commands/copyto.c:772 #, c-format msgid "COPY (SELECT INTO) is not supported" msgstr "COPY (SELECT INTO) не підтримується" -#: commands/copyto.c:511 +#: commands/copyto.c:778 +#, c-format +msgid "COPY query must not be a utility command" +msgstr "запит COPY не повинен бути командою утиліти" + +#: commands/copyto.c:794 #, c-format msgid "COPY query must have a RETURNING clause" msgstr "В запиті COPY повинно бути речення RETURNING" -#: commands/copyto.c:540 +#: commands/copyto.c:823 #, c-format msgid "relation referenced by COPY statement has changed" msgstr "відношення, згадане в операторі COPY, змінилось" -#: commands/copyto.c:667 +#: commands/copyto.c:950 #, c-format msgid "relative path not allowed for COPY to file" msgstr "при виконанні COPY в файл не можна вказувати відносний шлях" -#: commands/copyto.c:686 +#: commands/copyto.c:969 #, c-format msgid "could not open file \"%s\" for writing: %m" msgstr "не вдалося відкрити файл \"%s\" для запису: %m" -#: commands/copyto.c:689 +#: commands/copyto.c:972 #, 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 записати дані до файлу. Можливо, вам потрібна клієнтська команда, наприклад \\copy в psql." -#: commands/createas.c:210 commands/createas.c:516 +#: commands/createas.c:212 commands/createas.c:523 #, c-format msgid "too many column names were specified" msgstr "вказано забагато імен стовпців" -#: commands/createas.c:539 +#: commands/createas.c:546 #, c-format msgid "policies not yet implemented for this command" msgstr "політики для цієї команди все ще не реалізовані" -#: commands/dbcommands.c:829 +#: commands/dbcommands.c:843 #, c-format msgid "LOCATION is not supported anymore" msgstr "LOCATION більше не підтримується" -#: commands/dbcommands.c:830 +#: commands/dbcommands.c:844 #, c-format msgid "Consider using tablespaces instead." msgstr "Розгляньте можливість використання табличних просторів." -#: commands/dbcommands.c:855 +#: commands/dbcommands.c:869 #, c-format msgid "OIDs less than %u are reserved for system objects" msgstr "OID котрі менше ніж %u, зарезервовані для системних об'єктів" -#: commands/dbcommands.c:886 utils/adt/ascii.c:146 +#: commands/dbcommands.c:900 utils/adt/ascii.c:146 #, c-format msgid "%d is not a valid encoding code" msgstr "%d не є вірним кодом кодування" -#: commands/dbcommands.c:897 utils/adt/ascii.c:128 +#: commands/dbcommands.c:911 utils/adt/ascii.c:128 #, c-format msgid "%s is not a valid encoding name" msgstr "%s не є вірним ім'ям кодування" -#: commands/dbcommands.c:931 +#: commands/dbcommands.c:945 #, c-format msgid "unrecognized locale provider: %s" msgstr "нерозпізнаний постачальник локалів: %s" -#: commands/dbcommands.c:944 commands/dbcommands.c:2419 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2454 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" msgstr "недійсний ліміт з'єднання: %d" -#: commands/dbcommands.c:965 +#: commands/dbcommands.c:979 #, c-format msgid "permission denied to create database" msgstr "немає дозволу для створення бази даних" -#: commands/dbcommands.c:989 +#: commands/dbcommands.c:1003 #, c-format msgid "template database \"%s\" does not exist" msgstr "шаблону бази даних \"%s\" не існує" -#: commands/dbcommands.c:999 +#: commands/dbcommands.c:1013 #, c-format msgid "cannot use invalid database \"%s\" as template" msgstr "не можна використовувати невірну базу даних \"%s\" в якості шаблону" -#: commands/dbcommands.c:1000 commands/dbcommands.c:2448 -#: utils/init/postinit.c:1112 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2484 +#: utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." msgstr "Використайте DROP DATABASE для видалення невірних баз даних." -#: commands/dbcommands.c:1011 +#: commands/dbcommands.c:1025 #, c-format msgid "permission denied to copy database \"%s\"" msgstr "немає дозволу для копіювання бази даних \"%s\"" -#: commands/dbcommands.c:1028 +#: commands/dbcommands.c:1042 #, c-format msgid "invalid create database strategy \"%s\"" msgstr "неприпустима стратегія створення бази даних \"%s\"" -#: commands/dbcommands.c:1029 +#: commands/dbcommands.c:1043 #, c-format msgid "Valid strategies are \"wal_log\" and \"file_copy\"." msgstr "Припустимі стратегії - це \"wal_log\" і \"file_copy\"." -#: commands/dbcommands.c:1050 +#: commands/dbcommands.c:1064 #, c-format msgid "invalid server encoding %d" msgstr "недійсний сервер кодування %d" -#: commands/dbcommands.c:1056 +#: commands/dbcommands.c:1072 commands/dbcommands.c:1077 +#: commands/dbcommands.c:1082 #, c-format msgid "invalid LC_COLLATE locale name: \"%s\"" msgstr "неприпустиме ім'я локалі LC_COLLATE: \"%s\"" -#: commands/dbcommands.c:1057 commands/dbcommands.c:1063 +#: commands/dbcommands.c:1073 commands/dbcommands.c:1091 +#, c-format +msgid "If the locale name is specific to the builtin provider, use BUILTIN_LOCALE." +msgstr "Якщо назва локалі є специфічною для вбудованого постачальника, використовуйте BUILTIN_LOCALE." + +#: commands/dbcommands.c:1078 commands/dbcommands.c:1096 #, c-format -msgid "If the locale name is specific to ICU, use ICU_LOCALE." -msgstr "Якщо ім'я локалі характерне для ICU, використовуйте ICU_LOCALE." +msgid "If the locale name is specific to the ICU provider, use ICU_LOCALE." +msgstr "Якщо назва локалі є специфічною для ICU постачальника, використовуйте ICU_LOCALE." -#: commands/dbcommands.c:1062 +#: commands/dbcommands.c:1090 commands/dbcommands.c:1095 +#: commands/dbcommands.c:1100 #, c-format msgid "invalid LC_CTYPE locale name: \"%s\"" msgstr "неприпустиме ім'я локалі LC_CTYPE: \"%s\"" -#: commands/dbcommands.c:1074 +#: commands/dbcommands.c:1113 #, c-format msgid "BUILTIN_LOCALE cannot be specified unless locale provider is builtin" msgstr "BUILTIN_LOCALE не може бути вказано, якщо постачальник локалі не вбудований" -#: commands/dbcommands.c:1082 +#: commands/dbcommands.c:1121 #, c-format msgid "ICU locale cannot be specified unless locale provider is ICU" msgstr "ICU локаль не може бути визначена, якщо постачальник локалі не ICU" -#: commands/dbcommands.c:1100 +#: commands/dbcommands.c:1139 #, c-format msgid "LOCALE or BUILTIN_LOCALE must be specified" msgstr "Необхідно вказати LOCALE або BUILTIN_LOCALE" -#: commands/dbcommands.c:1109 +#: commands/dbcommands.c:1148 #, c-format msgid "encoding \"%s\" is not supported with ICU provider" msgstr "кодування \"%s\" не підтримується провайдером ICU" -#: commands/dbcommands.c:1119 +#: commands/dbcommands.c:1158 #, c-format msgid "LOCALE or ICU_LOCALE must be specified" msgstr "Необхідно вказати LOCALE або ICU_LOCALE" -#: commands/dbcommands.c:1163 +#: commands/dbcommands.c:1202 #, c-format msgid "new encoding (%s) is incompatible with the encoding of the template database (%s)" msgstr "нове кодування (%s) несумісне з кодуванням шаблона бази даних (%s)" -#: commands/dbcommands.c:1166 +#: commands/dbcommands.c:1205 #, c-format msgid "Use the same encoding as in the template database, or use template0 as template." msgstr "Використайте кодування шаблона бази даних або виберіть template0 в якості шаблона." -#: commands/dbcommands.c:1171 +#: commands/dbcommands.c:1210 #, c-format msgid "new collation (%s) is incompatible with the collation of the template database (%s)" msgstr "нове правило сортування (%s) несумісне з правилом в шаблоні бази даних (%s)" -#: commands/dbcommands.c:1173 +#: commands/dbcommands.c:1212 #, c-format msgid "Use the same collation as in the template database, or use template0 as template." msgstr "Використайте те ж саме правило сортування, що і в шаблоні бази даних, або виберіть template0 в якості шаблона." -#: commands/dbcommands.c:1178 +#: commands/dbcommands.c:1217 #, c-format msgid "new LC_CTYPE (%s) is incompatible with the LC_CTYPE of the template database (%s)" msgstr "новий параметр LC_CTYPE (%s) несумісний з LC_CTYPE в шаблоні бази даних (%s)" -#: commands/dbcommands.c:1180 +#: commands/dbcommands.c:1219 #, c-format msgid "Use the same LC_CTYPE as in the template database, or use template0 as template." msgstr "Використайте той самий LC_CTYPE, що і в шаблоні бази даних, або виберіть template0 в якості шаблона." -#: commands/dbcommands.c:1185 +#: commands/dbcommands.c:1224 #, c-format msgid "new locale provider (%s) does not match locale provider of the template database (%s)" msgstr "новий постачальник локалі (%s) не відповідає постачальнику локалі шаблону бази даних (%s)" -#: commands/dbcommands.c:1187 +#: commands/dbcommands.c:1226 #, c-format msgid "Use the same locale provider as in the template database, or use template0 as template." msgstr "Використайте такого ж постачальника локалі, що й у шаблоні бази даних, або використайте template0 в якості шаблону." -#: commands/dbcommands.c:1199 +#: commands/dbcommands.c:1238 #, c-format msgid "new ICU locale (%s) is incompatible with the ICU locale of the template database (%s)" msgstr "нова ICU локаль (%s) несумісна з ICU локалью шаблону бази даних (%s)" -#: commands/dbcommands.c:1201 +#: commands/dbcommands.c:1240 #, c-format msgid "Use the same ICU locale as in the template database, or use template0 as template." msgstr "Використайте таку ж ICU локаль, що й у шаблоні бази даних, або використайте template0 в якості шаблону." -#: commands/dbcommands.c:1212 +#: commands/dbcommands.c:1251 #, c-format msgid "new ICU collation rules (%s) are incompatible with the ICU collation rules of the template database (%s)" msgstr "нові правила сортування ICU (%s) несумісні з правилами сортування ICU шаблону бази даних (%s)" -#: commands/dbcommands.c:1214 +#: commands/dbcommands.c:1253 #, c-format msgid "Use the same ICU collation rules as in the template database, or use template0 as template." msgstr "Використайте ті ж правила сортування ICU, що й в шаблоні бази даних, або виберіть template0 в якості шаблону." -#: commands/dbcommands.c:1243 +#: commands/dbcommands.c:1282 #, c-format msgid "template database \"%s\" has a collation version, but no actual collation version could be determined" msgstr "шаблон бази даних \"%s\" має версію правил сортування, але фактичну версію визначити не вдалося" -#: commands/dbcommands.c:1248 +#: commands/dbcommands.c:1287 #, c-format msgid "template database \"%s\" has a collation version mismatch" msgstr "шаблон бази даних \"%s\" має невідповідність версії параметрів сортування" -#: commands/dbcommands.c:1250 +#: commands/dbcommands.c:1289 #, c-format msgid "The template database was created using collation version %s, but the operating system provides version %s." msgstr "Шаблон бази даних було створено за допомогою параметрів сортування версії %s, але операційна система надає версію %s." -#: commands/dbcommands.c:1253 +#: commands/dbcommands.c:1292 #, c-format msgid "Rebuild all objects in the template database that use the default collation and run ALTER DATABASE %s REFRESH COLLATION VERSION, or build PostgreSQL with the right library version." msgstr "Перебудуйте всі об'єкти шаблону бази даних, які використовують стандартний параметр сортування або виконайте ALTER DATABASE %s REFRESH COLLATION VERSION, або побудуйте PostgreSQL з правильною версією бібліотеки." -#: commands/dbcommands.c:1298 commands/dbcommands.c:2048 +#: commands/dbcommands.c:1337 commands/dbcommands.c:2080 #, c-format msgid "pg_global cannot be used as default tablespace" msgstr "pg_global не можна використати в якості табличного простору за замовчуванням" -#: commands/dbcommands.c:1324 +#: commands/dbcommands.c:1363 #, c-format msgid "cannot assign new default tablespace \"%s\"" msgstr "не вдалося призначити новий табличний простір за замовчуванням \"%s\"" -#: commands/dbcommands.c:1326 +#: commands/dbcommands.c:1365 #, c-format msgid "There is a conflict because database \"%s\" already has some tables in this tablespace." msgstr "БД \"%s\" вже містить таблиці, що знаходяться в цьому табличному просторі." -#: commands/dbcommands.c:1356 commands/dbcommands.c:1921 +#: commands/dbcommands.c:1395 commands/dbcommands.c:1951 #, c-format msgid "database \"%s\" already exists" msgstr "база даних \"%s\" вже існує" -#: commands/dbcommands.c:1370 +#: commands/dbcommands.c:1409 #, c-format msgid "source database \"%s\" is being accessed by other users" msgstr "вихідна база даних \"%s\" зайнята іншими користувачами" -#: commands/dbcommands.c:1392 +#: commands/dbcommands.c:1431 #, c-format msgid "database OID %u is already in use by database \"%s\"" msgstr "OID %u вже використовується базою даних \"%s\" вже використовує" -#: commands/dbcommands.c:1398 +#: commands/dbcommands.c:1437 #, c-format msgid "data directory with the specified OID %u already exists" msgstr "каталог даних з вказаним OID %u вже існує" -#: commands/dbcommands.c:1571 commands/dbcommands.c:1586 -#: utils/adt/pg_locale.c:2565 +#: commands/dbcommands.c:1610 commands/dbcommands.c:1625 +#: utils/adt/pg_locale.c:1532 #, c-format msgid "encoding \"%s\" does not match locale \"%s\"" msgstr "кодування \"%s\" не відповідає локалі \"%s\"" -#: commands/dbcommands.c:1574 +#: commands/dbcommands.c:1613 #, c-format msgid "The chosen LC_CTYPE setting requires encoding \"%s\"." msgstr "Обраний параметр LC_CTYPE потребує кодування \"%s\"." -#: commands/dbcommands.c:1589 +#: commands/dbcommands.c:1628 #, c-format msgid "The chosen LC_COLLATE setting requires encoding \"%s\"." msgstr "Обраний параметр LC_COLLATE потребує кодування \"%s\"." -#: commands/dbcommands.c:1672 +#: commands/dbcommands.c:1711 #, c-format msgid "database \"%s\" does not exist, skipping" msgstr "бази даних \"%s\" не існує, пропускаємо" -#: commands/dbcommands.c:1696 +#: commands/dbcommands.c:1735 #, c-format msgid "cannot drop a template database" msgstr "неможливо видалити шаблон бази даних" -#: commands/dbcommands.c:1702 +#: commands/dbcommands.c:1741 #, c-format msgid "cannot drop the currently open database" msgstr "неможливо видалити наразі відкриту базу даних" -#: commands/dbcommands.c:1715 +#: commands/dbcommands.c:1754 #, c-format msgid "database \"%s\" is used by an active logical replication slot" msgstr "база даних \"%s\" використовується активним слотом логічної реплікації" -#: commands/dbcommands.c:1717 +#: commands/dbcommands.c:1756 #, c-format msgid "There is %d active slot." msgid_plural "There are %d active slots." @@ -7843,12 +8005,12 @@ msgstr[1] "Активні слоти %d." msgstr[2] "Активних слотів %d." msgstr[3] "Активних слотів %d." -#: commands/dbcommands.c:1731 +#: commands/dbcommands.c:1770 #, c-format msgid "database \"%s\" is being used by logical replication subscription" msgstr "база даних \"%s\" використовується в підписці логічної реплікації" -#: commands/dbcommands.c:1733 +#: commands/dbcommands.c:1772 #, c-format msgid "There is %d subscription." msgid_plural "There are %d subscriptions." @@ -7857,74 +8019,69 @@ msgstr[1] "Знайдено підписки %d." msgstr[2] "Знайдено підписок %d." msgstr[3] "Знайдено підписок %d." -#: commands/dbcommands.c:1754 commands/dbcommands.c:1943 -#: commands/dbcommands.c:2070 +#: commands/dbcommands.c:1793 commands/dbcommands.c:1973 +#: commands/dbcommands.c:2102 #, c-format msgid "database \"%s\" is being accessed by other users" msgstr "база даних \"%s\" зайнята іншими користувачами" -#: commands/dbcommands.c:1903 +#: commands/dbcommands.c:1933 #, c-format msgid "permission denied to rename database" msgstr "немає дозволу для перейменування бази даних" -#: commands/dbcommands.c:1932 +#: commands/dbcommands.c:1962 #, c-format msgid "current database cannot be renamed" msgstr "поточна база даних не може бути перейменована" -#: commands/dbcommands.c:2026 +#: commands/dbcommands.c:2058 #, c-format msgid "cannot change the tablespace of the currently open database" msgstr "неможливо змінити табличний простір наразі відкритої бази даних" -#: commands/dbcommands.c:2132 +#: commands/dbcommands.c:2164 #, c-format msgid "some relations of database \"%s\" are already in tablespace \"%s\"" msgstr "деякі відношення бази даних \"%s\" вже є в табличному просторі \"%s\"" -#: commands/dbcommands.c:2134 +#: commands/dbcommands.c:2166 #, c-format msgid "You must move them back to the database's default tablespace before using this command." msgstr "Перед тим, як виконувати цю команду, вам треба повернути їх в табличний простір за замовчуванням для цієї бази даних." -#: commands/dbcommands.c:2261 commands/dbcommands.c:2996 -#: commands/dbcommands.c:3296 commands/dbcommands.c:3409 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3039 +#: commands/dbcommands.c:3339 commands/dbcommands.c:3453 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "у старому каталозі бази даних \"%s\" могли залишитися непотрібні файли" -#: commands/dbcommands.c:2322 -#, c-format -msgid "unrecognized DROP DATABASE option \"%s\"" -msgstr "нерозпізнаний параметр DROP DATABASE \"%s\"" - -#: commands/dbcommands.c:2400 +#: commands/dbcommands.c:2435 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "параметр \"%s\" не може бути вказаним з іншими параметрами" -#: commands/dbcommands.c:2447 +#: commands/dbcommands.c:2483 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "неможливо змінити невірну базу даних \"%s\"" -#: commands/dbcommands.c:2464 +#: commands/dbcommands.c:2500 #, c-format msgid "cannot disallow connections for current database" msgstr "не можна заборонити з'єднання для поточної бази даних" -#: commands/dbcommands.c:2690 +#: commands/dbcommands.c:2730 #, c-format msgid "permission denied to change owner of database" msgstr "немає дозволу для зміни власника бази даних" -#: commands/dbcommands.c:3102 +#: commands/dbcommands.c:3145 #, c-format msgid "There are %d other session(s) and %d prepared transaction(s) using the database." msgstr "Знайдено %d інших сеансів і %d підготованих транзакцій з використанням цієї бази даних." -#: commands/dbcommands.c:3105 +#: commands/dbcommands.c:3148 #, c-format msgid "There is %d other session using the database." msgid_plural "There are %d other sessions using the database." @@ -7933,7 +8090,7 @@ msgstr[1] "Є %d інші сеанси з використанням цієї б msgstr[2] "Є %d інших сеансів з використанням цієї бази даних." msgstr[3] "Є %d інших сеансів з використанням цієї бази даних." -#: commands/dbcommands.c:3110 storage/ipc/procarray.c:3859 +#: commands/dbcommands.c:3153 storage/ipc/procarray.c:3860 #, c-format msgid "There is %d prepared transaction using the database." msgid_plural "There are %d prepared transactions using the database." @@ -7942,56 +8099,50 @@ msgstr[1] "З цією базою даних пов'язані %d підгото msgstr[2] "З цією базою даних пов'язані %d підготовлених транзакцій." msgstr[3] "З цією базою даних пов'язані %d підготовлених транзакцій." -#: commands/dbcommands.c:3252 +#: commands/dbcommands.c:3295 #, c-format msgid "missing directory \"%s\"" msgstr "відсутній каталог \"%s\"" -#: commands/dbcommands.c:3310 commands/tablespace.c:184 +#: commands/dbcommands.c:3353 commands/tablespace.c:184 #: commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" msgstr "не вдалося отримати інформацію про каталог \"%s\": %m" -#: commands/define.c:53 commands/define.c:257 commands/define.c:289 -#: commands/define.c:317 commands/define.c:363 +#: commands/define.c:40 commands/define.c:244 commands/define.c:276 +#: commands/define.c:304 commands/define.c:350 #, c-format msgid "%s requires a parameter" msgstr "%s потребує параметру" -#: commands/define.c:86 commands/define.c:97 commands/define.c:191 -#: commands/define.c:209 commands/define.c:224 commands/define.c:242 -#, c-format -msgid "%s requires a numeric value" -msgstr "%s потребує числового значення" - -#: commands/define.c:153 +#: commands/define.c:140 #, c-format msgid "%s requires a Boolean value" msgstr "%s потребує логічного значення" -#: commands/define.c:167 commands/define.c:176 commands/define.c:326 +#: commands/define.c:154 commands/define.c:163 commands/define.c:313 #, c-format msgid "%s requires an integer value" msgstr "%s потребує ціле значення" -#: commands/define.c:271 +#: commands/define.c:258 #, c-format msgid "argument of %s must be a name" msgstr "аргументом %s повинно бути ім'я" -#: commands/define.c:301 +#: commands/define.c:288 #, c-format msgid "argument of %s must be a type name" msgstr "аргументом %s повинно бути ім'я типу" -#: commands/define.c:347 +#: commands/define.c:334 #, c-format msgid "invalid argument for %s: \"%s\"" msgstr "невірний аргумент для %s: \"%s\"" -#: commands/dropcmds.c:96 commands/functioncmds.c:1382 -#: utils/adt/ruleutils.c:2905 +#: commands/dropcmds.c:96 commands/functioncmds.c:1400 +#: utils/adt/ruleutils.c:2956 #, c-format msgid "\"%s\" is an aggregate function" msgstr "\"%s\" є функцією агрегату" @@ -8001,19 +8152,19 @@ msgstr "\"%s\" є функцією агрегату" msgid "Use DROP AGGREGATE to drop aggregate functions." msgstr "Використайте DROP AGGREGATE, щоб видалити агрегатні функції." -#: commands/dropcmds.c:153 commands/sequence.c:462 commands/tablecmds.c:3872 -#: commands/tablecmds.c:4030 commands/tablecmds.c:4082 -#: commands/tablecmds.c:17058 tcop/utility.c:1325 +#: commands/dropcmds.c:153 commands/sequence.c:462 commands/tablecmds.c:4014 +#: commands/tablecmds.c:4175 commands/tablecmds.c:4227 +#: commands/tablecmds.c:18954 tcop/utility.c:1328 #, c-format msgid "relation \"%s\" does not exist, skipping" msgstr "відношення \"%s\" не існує, пропускаємо" -#: commands/dropcmds.c:183 commands/dropcmds.c:282 commands/tablecmds.c:1392 +#: commands/dropcmds.c:183 commands/dropcmds.c:282 commands/tablecmds.c:1469 #, c-format msgid "schema \"%s\" does not exist, skipping" msgstr "схеми \"%s\" не існує, пропускаємо" -#: commands/dropcmds.c:223 commands/dropcmds.c:262 commands/tablecmds.c:286 +#: commands/dropcmds.c:223 commands/dropcmds.c:262 commands/tablecmds.c:289 #, c-format msgid "type \"%s\" does not exist, skipping" msgstr "типу \"%s\" не існує, пропускаємо" @@ -8033,7 +8184,7 @@ msgstr "правила сортування \"%s\" не існує, пропус msgid "conversion \"%s\" does not exist, skipping" msgstr "перетворення \"%s\" не існує, пропускаємо" -#: commands/dropcmds.c:288 commands/statscmds.c:664 +#: commands/dropcmds.c:288 commands/statscmds.c:703 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "об'єкту статистики \"%s\" не існує, пропускаємо" @@ -8128,7 +8279,7 @@ msgstr "правила \"%s\" для відношення \"%s\" не існує msgid "foreign-data wrapper \"%s\" does not exist, skipping" msgstr "джерела сторонніх даних \"%s\" не існує, пропускаємо" -#: commands/dropcmds.c:448 commands/foreigncmds.c:1360 +#: commands/dropcmds.c:448 commands/foreigncmds.c:1371 #, c-format msgid "server \"%s\" does not exist, skipping" msgstr "серверу \"%s\" не існує, пропускаємо" @@ -8148,502 +8299,504 @@ msgstr "сімейства операторів \"%s\" не існує для м msgid "publication \"%s\" does not exist, skipping" msgstr "публікації \"%s\" не існує, пропускаємо" -#: commands/event_trigger.c:137 +#: commands/event_trigger.c:141 #, c-format msgid "permission denied to create event trigger \"%s\"" msgstr "немає дозволу для створення тригера подій %s\"" -#: commands/event_trigger.c:139 +#: commands/event_trigger.c:143 #, c-format msgid "Must be superuser to create an event trigger." msgstr "Тільки суперкористувач може створити тригер подій." -#: commands/event_trigger.c:149 +#: commands/event_trigger.c:153 #, c-format msgid "unrecognized event name \"%s\"" msgstr "нерозпізнане ім'я подій \"%s\"" -#: commands/event_trigger.c:166 +#: commands/event_trigger.c:170 #, c-format msgid "unrecognized filter variable \"%s\"" msgstr "нерозпізнана змінна фільтру \"%s\"" -#: commands/event_trigger.c:181 +#: commands/event_trigger.c:185 #, c-format msgid "tag filtering is not supported for login event triggers" msgstr "фільтрація тегів не підтримується для тригерів події входу" -#: commands/event_trigger.c:224 +#: commands/event_trigger.c:228 #, c-format msgid "filter value \"%s\" not recognized for filter variable \"%s\"" msgstr "значення фільтру \"%s\" не розпізнано для змінної фільтру \"%s\"" #. translator: %s represents an SQL statement name -#: commands/event_trigger.c:230 commands/event_trigger.c:252 +#: commands/event_trigger.c:234 commands/event_trigger.c:256 #, c-format msgid "event triggers are not supported for %s" msgstr "для %s тригери подій не підтримуються" -#: commands/event_trigger.c:265 +#: commands/event_trigger.c:269 #, c-format msgid "filter variable \"%s\" specified more than once" msgstr "змінну фільтра \"%s\" вказано кілька разів" -#: commands/event_trigger.c:435 commands/event_trigger.c:487 -#: commands/event_trigger.c:581 +#: commands/event_trigger.c:442 commands/event_trigger.c:494 +#: commands/event_trigger.c:588 #, c-format msgid "event trigger \"%s\" does not exist" msgstr "тригеру подій \"%s\" не існує" -#: commands/event_trigger.c:519 +#: commands/event_trigger.c:526 #, c-format msgid "event trigger with OID %u does not exist" msgstr "тригер подій %u з OID не існує" -#: commands/event_trigger.c:549 +#: commands/event_trigger.c:556 #, c-format msgid "permission denied to change owner of event trigger \"%s\"" msgstr "немає дозволу для зміни власника тригера подій \"%s\"" -#: commands/event_trigger.c:551 +#: commands/event_trigger.c:558 #, c-format msgid "The owner of an event trigger must be a superuser." msgstr "Власником тригеру подій може бути тільки суперкористувач." -#: commands/event_trigger.c:1411 +#: commands/event_trigger.c:1536 #, c-format msgid "%s can only be called in a sql_drop event trigger function" msgstr "%s можливо викликати лише в подієвій тригерній функції sql_drop" -#: commands/event_trigger.c:1504 commands/event_trigger.c:1525 +#: commands/event_trigger.c:1629 commands/event_trigger.c:1650 #, c-format msgid "%s can only be called in a table_rewrite event trigger function" msgstr "%s можливо викликати лише в подієвій тригерній функції table_rewrite" -#: commands/event_trigger.c:1938 +#: commands/event_trigger.c:2063 #, c-format msgid "%s can only be called in an event trigger function" msgstr "%s можливо викликати тільки в подієвій тригерній функції" -#: commands/explain.c:241 commands/explain.c:266 -#, c-format -msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" -msgstr "нерозпізнане значення параметру EXPLAIN \"%s\": \"%s\"" - -#: commands/explain.c:273 -#, c-format -msgid "unrecognized EXPLAIN option \"%s\"" -msgstr "нерозпізнаний параметр EXPLAIN \"%s\"" - -#: commands/explain.c:282 -#, c-format -msgid "EXPLAIN option WAL requires ANALYZE" -msgstr "Параметр WAL оператора EXPLAIN потребує вказівки ANALYZE" - -#: commands/explain.c:291 +#: commands/explain_state.c:133 commands/explain_state.c:158 +#: replication/walsender.c:1151 #, c-format -msgid "EXPLAIN option TIMING requires ANALYZE" -msgstr "Параметр TIMING оператора EXPLAIN потребує вказівки ANALYZE" +msgid "unrecognized value for %s option \"%s\": \"%s\"" +msgstr "нерозпізнане значення для %s опції \"%s\": \"%s\"" -#: commands/explain.c:297 +#: commands/explain_state.c:174 commands/explain_state.c:186 +#: commands/explain_state.c:192 #, c-format -msgid "EXPLAIN option SERIALIZE requires ANALYZE" -msgstr "Параметр SERIALIZE оператора EXPLAIN потребує вказівки ANALYZE" +msgid "EXPLAIN option %s requires ANALYZE" +msgstr "опція EXPLAIN %s потребує ANALYZE" -#: commands/explain.c:303 +#: commands/explain_state.c:198 #, c-format -msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" -msgstr "Параметри ANALYZE і GENERIC_PLAN не можуть використовуватись разом" +msgid "%s options %s and %s cannot be used together" +msgstr "%s опції %s і %s не можна використовувати разом" -#: commands/extension.c:178 commands/extension.c:3031 +#: commands/extension.c:177 commands/extension.c:3323 #, c-format msgid "extension \"%s\" does not exist" msgstr "розширення \"%s\" не існує" -#: commands/extension.c:277 commands/extension.c:286 commands/extension.c:298 -#: commands/extension.c:308 +#: commands/extension.c:242 commands/extension.c:251 commands/extension.c:263 +#: commands/extension.c:273 #, c-format msgid "invalid extension name: \"%s\"" msgstr "невірне ім'я розширення: \"%s\"" -#: commands/extension.c:278 +#: commands/extension.c:243 #, c-format msgid "Extension names must not be empty." msgstr "Імена розширення не повинні бути пустими." -#: commands/extension.c:287 +#: commands/extension.c:252 #, c-format msgid "Extension names must not contain \"--\"." msgstr "Імена розширення не повинні містити \"--\"." -#: commands/extension.c:299 +#: commands/extension.c:264 #, c-format msgid "Extension names must not begin or end with \"-\"." msgstr "Імена розширення не повинні починатися або закінчуватися символом \"-\"." -#: commands/extension.c:309 +#: commands/extension.c:274 #, c-format msgid "Extension names must not contain directory separator characters." msgstr "Імена розширення не повинні містити роздільники шляху." -#: commands/extension.c:324 commands/extension.c:333 commands/extension.c:342 -#: commands/extension.c:352 +#: commands/extension.c:289 commands/extension.c:298 commands/extension.c:307 +#: commands/extension.c:317 #, c-format msgid "invalid extension version name: \"%s\"" msgstr "невірне ім'я версії розширення: \"%s\"" -#: commands/extension.c:325 +#: commands/extension.c:290 #, c-format msgid "Version names must not be empty." msgstr "Імена версії не повинні бути пустими." -#: commands/extension.c:334 +#: commands/extension.c:299 #, c-format msgid "Version names must not contain \"--\"." msgstr "Імена версії не повинні містити \"--\"." -#: commands/extension.c:343 +#: commands/extension.c:308 #, c-format msgid "Version names must not begin or end with \"-\"." msgstr "Імена версії не повинні починатись або закінчуватись символом \"-\"." -#: commands/extension.c:353 +#: commands/extension.c:318 #, c-format msgid "Version names must not contain directory separator characters." msgstr "Імена версії не повинні містити роздільники шляху." -#: commands/extension.c:507 +#: commands/extension.c:543 #, c-format msgid "extension \"%s\" is not available" msgstr "розширення \"%s\" недоступне" -#: commands/extension.c:508 -#, c-format -msgid "Could not open extension control file \"%s\": %m." -msgstr "Не вдалося відкрити контрольний файл розширення \"%s\": %m." - -#: commands/extension.c:510 +#: commands/extension.c:544 #, c-format msgid "The extension must first be installed on the system where PostgreSQL is running." msgstr "Розширення спочатку має бути встановлене в системі, де запущено PostgreSQL." -#: commands/extension.c:514 +#: commands/extension.c:566 #, c-format msgid "could not open extension control file \"%s\": %m" msgstr "не вдалося відкрити керуючий файл розширення \"%s\": %m" -#: commands/extension.c:537 commands/extension.c:547 +#: commands/extension.c:589 commands/extension.c:599 #, c-format msgid "parameter \"%s\" cannot be set in a secondary extension control file" msgstr "параметр \"%s\" не можна задавати в додатковому керуючому файлі розширення" -#: commands/extension.c:569 commands/extension.c:577 commands/extension.c:585 -#: utils/misc/guc.c:3147 +#: commands/extension.c:621 commands/extension.c:629 commands/extension.c:637 +#: utils/misc/guc.c:3144 #, c-format msgid "parameter \"%s\" requires a Boolean value" msgstr "параметр \"%s\" потребує логічного значення" -#: commands/extension.c:594 +#: commands/extension.c:646 #, c-format msgid "\"%s\" is not a valid encoding name" msgstr "\"%s\" не є невірним ім'ям кодування" -#: commands/extension.c:608 commands/extension.c:623 +#: commands/extension.c:660 commands/extension.c:675 #, c-format msgid "parameter \"%s\" must be a list of extension names" msgstr "параметр \"%s\" повинен містити список імен розширень" -#: commands/extension.c:630 +#: commands/extension.c:682 #, c-format msgid "unrecognized parameter \"%s\" in file \"%s\"" msgstr "нерозпізнаний параметр \"%s\" в файлі \"%s\"" -#: commands/extension.c:639 +#: commands/extension.c:691 #, c-format msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true" msgstr "параметр \"schema\" не може бути вказаним, коли \"relocatable\" є дійсним" -#: commands/extension.c:817 +#: commands/extension.c:867 +#, c-format +msgid "SQL statement \"%.*s\"" +msgstr "SQL-оператор \"%.*s\"" + +#: commands/extension.c:896 +#, c-format +msgid "extension script file \"%s\", near line %d" +msgstr "скрипт розширення \"%s\", на лінії %d" + +#: commands/extension.c:900 +#, c-format +msgid "extension script file \"%s\"" +msgstr "скрипт розширення \"%s\"" + +#: commands/extension.c:1012 #, c-format msgid "transaction control statements are not allowed within an extension script" msgstr "в скрипті розширення не повинно бути операторів управління транзакціями" -#: commands/extension.c:897 +#: commands/extension.c:1094 #, c-format msgid "permission denied to create extension \"%s\"" msgstr "немає дозволу для створення розширення %s\"" -#: commands/extension.c:900 +#: commands/extension.c:1097 #, c-format msgid "Must have CREATE privilege on current database to create this extension." msgstr "Необхідно мати право CREATE для поточної бази даних щоб створити це розширення." -#: commands/extension.c:901 +#: commands/extension.c:1098 #, c-format msgid "Must be superuser to create this extension." msgstr "Тільки суперкористувач може створити це розширення." -#: commands/extension.c:905 +#: commands/extension.c:1102 #, c-format msgid "permission denied to update extension \"%s\"" msgstr "немає дозволу для оновлення розширення %s\"" -#: commands/extension.c:908 +#: commands/extension.c:1105 #, c-format msgid "Must have CREATE privilege on current database to update this extension." msgstr "Необхідно мати право CREATE для поточної бази даних щоб оновити це розширення." -#: commands/extension.c:909 +#: commands/extension.c:1106 #, c-format msgid "Must be superuser to update this extension." msgstr "Тільки суперкористувач може оновити це розширення." -#: commands/extension.c:1042 +#: commands/extension.c:1239 #, c-format msgid "invalid character in extension owner: must not contain any of \"%s\"" msgstr "неприпустимий символ у власника розширення: не може містити жодного з \"%s\"" -#: commands/extension.c:1066 commands/extension.c:1093 +#: commands/extension.c:1263 commands/extension.c:1290 #, c-format msgid "invalid character in extension \"%s\" schema: must not contain any of \"%s\"" msgstr "неприпустимий символ у розширенні \"%s\" схеми: не повинно містити жодної з \"%s\"" -#: commands/extension.c:1288 +#: commands/extension.c:1485 #, c-format msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\"" msgstr "розширення \"%s\" не має жодного шляху оновлення від версії \"%s\" до версії \"%s\"" -#: commands/extension.c:1496 commands/extension.c:3089 +#: commands/extension.c:1693 commands/extension.c:3381 #, c-format msgid "version to install must be specified" msgstr "для інсталяції слід указати версію" -#: commands/extension.c:1533 +#: commands/extension.c:1730 #, c-format msgid "extension \"%s\" has no installation script nor update path for version \"%s\"" msgstr "розширення \"%s\" не має ні скрипту для встановлення, ні шляху оновлення для версії \"%s\"" -#: commands/extension.c:1567 +#: commands/extension.c:1764 #, c-format msgid "extension \"%s\" must be installed in schema \"%s\"" msgstr "розширення \"%s\" треба встановлювати в схемі \"%s\"" -#: commands/extension.c:1727 +#: commands/extension.c:1924 #, c-format msgid "cyclic dependency detected between extensions \"%s\" and \"%s\"" msgstr "виявлено циклічну залежність між розширеннями \"%s\" і \"%s\"" -#: commands/extension.c:1732 +#: commands/extension.c:1929 #, c-format msgid "installing required extension \"%s\"" msgstr "встановлення необхідних розширень \"%s\"" -#: commands/extension.c:1755 +#: commands/extension.c:1952 #, c-format msgid "required extension \"%s\" is not installed" msgstr "необхідні розширення \"%s\" не встановлено" -#: commands/extension.c:1758 +#: commands/extension.c:1955 #, c-format msgid "Use CREATE EXTENSION ... CASCADE to install required extensions too." msgstr "Використайте CREATE EXTENSION ... CASCADE також для встановлення необхідних розширень." -#: commands/extension.c:1793 +#: commands/extension.c:1990 #, c-format msgid "extension \"%s\" already exists, skipping" msgstr "розширення \"%s\" вже існує, пропускаємо" -#: commands/extension.c:1800 +#: commands/extension.c:1997 #, c-format msgid "extension \"%s\" already exists" msgstr "розширення \"%s\" вже існує" -#: commands/extension.c:1811 +#: commands/extension.c:2008 #, c-format msgid "nested CREATE EXTENSION is not supported" msgstr "вкладенні оператори CREATE EXTENSION не підтримуються" -#: commands/extension.c:1975 +#: commands/extension.c:2172 #, c-format msgid "cannot drop extension \"%s\" because it is being modified" msgstr "неможливо видалити розширення \"%s\", оскільки воно змінюється" -#: commands/extension.c:2450 +#: commands/extension.c:2689 #, c-format msgid "%s can only be called from an SQL script executed by CREATE EXTENSION" msgstr "%s можна викликати лише з SQL-скрипта, виконаного CREATE EXTENSION" -#: commands/extension.c:2462 +#: commands/extension.c:2701 #, c-format msgid "OID %u does not refer to a table" msgstr "OID %u не посилається на таблицю" -#: commands/extension.c:2467 +#: commands/extension.c:2706 #, c-format msgid "table \"%s\" is not a member of the extension being created" msgstr "таблиця \"%s\" не є членом створеного розширення" -#: commands/extension.c:2813 +#: commands/extension.c:3105 #, c-format msgid "cannot move extension \"%s\" into schema \"%s\" because the extension contains the schema" msgstr "неможливо перемістити розширення \"%s\" в схему \"%s\", оскільки розширення містить схему" -#: commands/extension.c:2854 commands/extension.c:2948 +#: commands/extension.c:3146 commands/extension.c:3240 #, c-format msgid "extension \"%s\" does not support SET SCHEMA" msgstr "розширення \"%s\" не підтримує SET SCHEMA" -#: commands/extension.c:2911 +#: commands/extension.c:3203 #, c-format msgid "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it" msgstr "неможливо виконати SET SCHEMA для розширення \"%s\", оскільки інші розширення заважають цьому" -#: commands/extension.c:2913 +#: commands/extension.c:3205 #, c-format msgid "Extension \"%s\" requests no relocation of extension \"%s\"." msgstr "Розширення \"%s\" запитує не переносити розширення \"%s\"." -#: commands/extension.c:2950 +#: commands/extension.c:3242 #, c-format msgid "%s is not in the extension's schema \"%s\"" msgstr "%s не є схемою розширення \"%s\"" -#: commands/extension.c:3011 +#: commands/extension.c:3303 #, c-format msgid "nested ALTER EXTENSION is not supported" msgstr "вкладенні оператори ALTER EXTENSION не підтримуються" -#: commands/extension.c:3100 +#: commands/extension.c:3392 #, c-format msgid "version \"%s\" of extension \"%s\" is already installed" msgstr "версія \"%s\" розширення \"%s\" вже встановлена" -#: commands/extension.c:3311 +#: commands/extension.c:3603 #, c-format msgid "cannot add an object of this type to an extension" msgstr "додати об'єкт цього типу до розширення не можна" -#: commands/extension.c:3409 +#: commands/extension.c:3701 #, c-format msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension" msgstr "неможливо додати схему \"%s\" до розширення \"%s\", оскільки схема містить розширення" -#: commands/extension.c:3491 commands/typecmds.c:4042 utils/fmgr/funcapi.c:725 +#: commands/extension.c:3783 commands/typecmds.c:4041 utils/fmgr/funcapi.c:725 #, c-format msgid "could not find multirange type for data type %s" msgstr "не вдалося знайти багатодіапазонний тип для типу даних %s" -#: commands/extension.c:3532 +#: commands/extension.c:3825 #, c-format msgid "file \"%s\" is too large" msgstr "файл \"%s\" занадто великий" -#: commands/foreigncmds.c:148 commands/foreigncmds.c:157 +#: commands/extension.c:3918 utils/fmgr/dfmgr.c:625 +#, c-format +msgid "component in parameter \"%s\" is not an absolute path" +msgstr "компонент у параметрі \"%s\" не є абсолютним шляхом" + +#: commands/foreigncmds.c:159 commands/foreigncmds.c:168 #, c-format msgid "option \"%s\" not found" msgstr "параметр \"%s\" не знайдено" -#: commands/foreigncmds.c:167 +#: commands/foreigncmds.c:178 #, c-format msgid "option \"%s\" provided more than once" msgstr "параметр \"%s\" надано більше одного разу" -#: commands/foreigncmds.c:221 commands/foreigncmds.c:229 +#: commands/foreigncmds.c:232 commands/foreigncmds.c:240 #, c-format msgid "permission denied to change owner of foreign-data wrapper \"%s\"" msgstr "немає дозволу для зміни власника джерела сторонніх даних \"%s\"" -#: commands/foreigncmds.c:223 +#: commands/foreigncmds.c:234 #, c-format msgid "Must be superuser to change owner of a foreign-data wrapper." msgstr "Треба бути суперкористувачем, щоб змінити власника джерела сторонніх даних." -#: commands/foreigncmds.c:231 +#: commands/foreigncmds.c:242 #, c-format msgid "The owner of a foreign-data wrapper must be a superuser." msgstr "Власником джерела сторонніх даних може бути тільки суперкористувач." -#: commands/foreigncmds.c:291 commands/foreigncmds.c:707 foreign/foreign.c:691 +#: commands/foreigncmds.c:302 commands/foreigncmds.c:718 foreign/foreign.c:692 #, c-format msgid "foreign-data wrapper \"%s\" does not exist" msgstr "джерела сторонніх даних \"%s\" не існує" -#: commands/foreigncmds.c:325 +#: commands/foreigncmds.c:336 #, c-format msgid "foreign-data wrapper with OID %u does not exist" msgstr "джерело сторонніх даних з OID %u не існує" -#: commands/foreigncmds.c:462 +#: commands/foreigncmds.c:473 #, c-format msgid "foreign server with OID %u does not exist" msgstr "стороннього серверу з OID %u не усніє" -#: commands/foreigncmds.c:580 +#: commands/foreigncmds.c:591 #, c-format msgid "permission denied to create foreign-data wrapper \"%s\"" msgstr "немає дозволу для створення джерела сторонніх даних %s\"" -#: commands/foreigncmds.c:582 +#: commands/foreigncmds.c:593 #, c-format msgid "Must be superuser to create a foreign-data wrapper." msgstr "Треба бути суперкористувачем, щоб створити джерело сторонніх даних." -#: commands/foreigncmds.c:697 +#: commands/foreigncmds.c:708 #, c-format msgid "permission denied to alter foreign-data wrapper \"%s\"" msgstr "немає дозволу на зміну джерела сторонніх даних \"%s\"" -#: commands/foreigncmds.c:699 +#: commands/foreigncmds.c:710 #, c-format msgid "Must be superuser to alter a foreign-data wrapper." msgstr "Треба бути суперкористувачем, щоб змінити джерело сторонніх даних." -#: commands/foreigncmds.c:730 +#: commands/foreigncmds.c:741 #, c-format msgid "changing the foreign-data wrapper handler can change behavior of existing foreign tables" msgstr "при зміні обробника в обгортці сторонніх даних може змінитися поведінка існуючих сторонніх таблиць" -#: commands/foreigncmds.c:745 +#: commands/foreigncmds.c:756 #, c-format msgid "changing the foreign-data wrapper validator can cause the options for dependent objects to become invalid" msgstr "при зміні функції перевірки в обгортці сторонніх даних параметри залежних об'єктів можуть стати невірними" -#: commands/foreigncmds.c:876 +#: commands/foreigncmds.c:887 #, c-format msgid "server \"%s\" already exists, skipping" msgstr "сервер \"%s\" вже існує, пропускаємо" -#: commands/foreigncmds.c:1144 +#: commands/foreigncmds.c:1155 #, c-format msgid "user mapping for \"%s\" already exists for server \"%s\", skipping" msgstr "зіставлення користувача \"%s\" для сервера \"%s\" вже існує, пропускаємо" -#: commands/foreigncmds.c:1154 +#: commands/foreigncmds.c:1165 #, c-format msgid "user mapping for \"%s\" already exists for server \"%s\"" msgstr "зіставлення користувача \"%s\" для сервера \"%s\" вже існує\"" -#: commands/foreigncmds.c:1254 commands/foreigncmds.c:1374 +#: commands/foreigncmds.c:1265 commands/foreigncmds.c:1385 #, c-format msgid "user mapping for \"%s\" does not exist for server \"%s\"" msgstr "зіставлення користувача \"%s\" не існує для сервера \"%s\"" -#: commands/foreigncmds.c:1379 +#: commands/foreigncmds.c:1390 #, c-format msgid "user mapping for \"%s\" does not exist for server \"%s\", skipping" msgstr "зіставлення користувача \"%s\" не існує для сервера \"%s\", пропускаємо" -#: commands/foreigncmds.c:1507 foreign/foreign.c:404 +#: commands/foreigncmds.c:1518 foreign/foreign.c:405 #, c-format msgid "foreign-data wrapper \"%s\" has no handler" msgstr "джерело сторонніх даних \"%s\" не має обробника" -#: commands/foreigncmds.c:1513 +#: commands/foreigncmds.c:1524 #, c-format msgid "foreign-data wrapper \"%s\" does not support IMPORT FOREIGN SCHEMA" msgstr "джерело сторонніх даних \"%s\" не підтримує IMPORT FOREIGN SCHEMA" -#: commands/foreigncmds.c:1615 +#: commands/foreigncmds.c:1626 #, c-format msgid "importing foreign table \"%s\"" msgstr "імпорт сторонньої таблиці \"%s\"" @@ -8678,338 +8831,338 @@ msgstr "Створення визначення типу оболонки." msgid "SQL function cannot accept shell type %s" msgstr "SQL-функція не може приймати значення типу оболонки %s" -#: commands/functioncmds.c:250 +#: commands/functioncmds.c:251 #, c-format msgid "aggregate cannot accept shell type %s" msgstr "агрегатна функція не може приймати значення типу оболонки %s" -#: commands/functioncmds.c:255 +#: commands/functioncmds.c:257 #, c-format msgid "argument type %s is only a shell" msgstr "тип аргументу %s - лише оболонка" -#: commands/functioncmds.c:265 +#: commands/functioncmds.c:268 #, c-format msgid "type %s does not exist" msgstr "тип \"%s\" не існує" -#: commands/functioncmds.c:279 +#: commands/functioncmds.c:283 #, c-format msgid "aggregates cannot accept set arguments" msgstr "агрегатні функції не приймають в аргументах набору" -#: commands/functioncmds.c:283 +#: commands/functioncmds.c:288 #, c-format msgid "procedures cannot accept set arguments" msgstr "процедури не приймають в аргументах набору" -#: commands/functioncmds.c:287 +#: commands/functioncmds.c:293 #, c-format msgid "functions cannot accept set arguments" msgstr "функції не приймають в аргументах набору" -#: commands/functioncmds.c:297 +#: commands/functioncmds.c:304 #, c-format msgid "VARIADIC parameter must be the last input parameter" msgstr "Параметр VARIADIC повинен бути останнім в списку вхідних параметрів" -#: commands/functioncmds.c:317 +#: commands/functioncmds.c:325 #, c-format msgid "VARIADIC parameter must be the last parameter" msgstr "Параметр VARIADIC повинен бути останнім параметром" -#: commands/functioncmds.c:342 +#: commands/functioncmds.c:351 #, c-format msgid "VARIADIC parameter must be an array" msgstr "Параметр VARIADIC повинен бути масивом" -#: commands/functioncmds.c:387 +#: commands/functioncmds.c:397 #, c-format msgid "parameter name \"%s\" used more than once" msgstr "ім'я параметру «%s» використано декілька разів" -#: commands/functioncmds.c:405 +#: commands/functioncmds.c:416 #, c-format msgid "only input parameters can have default values" msgstr "тільки ввідні параметри можуть мати значення за замовчуванням" -#: commands/functioncmds.c:420 +#: commands/functioncmds.c:432 #, c-format msgid "cannot use table references in parameter default value" msgstr "у значенні параметру за замовчуванням не можна посилатись на таблиці" -#: commands/functioncmds.c:444 +#: commands/functioncmds.c:457 #, c-format msgid "input parameters after one with a default value must also have defaults" msgstr "вхідні параметри, наступні за параметром зі значенням \"за замовчуванням\", також повинні мати значення \"за замовчуванням\"" -#: commands/functioncmds.c:454 +#: commands/functioncmds.c:468 #, c-format msgid "procedure OUT parameters cannot appear after one with a default value" msgstr "параметри процедури OUT не можуть з'являтись після параметра зі значенням за замовчуванням" -#: commands/functioncmds.c:596 commands/functioncmds.c:775 +#: commands/functioncmds.c:611 commands/functioncmds.c:790 #, c-format msgid "invalid attribute in procedure definition" msgstr "некоректний атрибут у визначенні процедури" -#: commands/functioncmds.c:692 +#: commands/functioncmds.c:707 #, c-format msgid "support function %s must return type %s" msgstr "функція підтримки %s повинна повертати тип %s" -#: commands/functioncmds.c:703 +#: commands/functioncmds.c:718 #, c-format msgid "must be superuser to specify a support function" msgstr "для уточнення функції підтримки потрібно бути суперкористувачем" -#: commands/functioncmds.c:824 commands/functioncmds.c:1427 +#: commands/functioncmds.c:839 commands/functioncmds.c:1445 #, c-format msgid "COST must be positive" msgstr "COST має бути додатнім" -#: commands/functioncmds.c:832 commands/functioncmds.c:1435 +#: commands/functioncmds.c:847 commands/functioncmds.c:1453 #, c-format msgid "ROWS must be positive" msgstr "Значення ROWS повинно бути позитивним" -#: commands/functioncmds.c:861 +#: commands/functioncmds.c:876 #, c-format msgid "no function body specified" msgstr "не вказано тіло функції" -#: commands/functioncmds.c:866 +#: commands/functioncmds.c:881 #, c-format msgid "duplicate function body specified" msgstr "вказано тіло дубліката функції" -#: commands/functioncmds.c:871 +#: commands/functioncmds.c:886 #, c-format msgid "inline SQL function body only valid for language SQL" msgstr "вбудоване тіло функції SQL допустиме лише для мови SQL" -#: commands/functioncmds.c:913 +#: commands/functioncmds.c:928 #, c-format msgid "SQL function with unquoted function body cannot have polymorphic arguments" msgstr "SQL функція з тілом без лапок не може мати поліморфні аргументи" -#: commands/functioncmds.c:939 commands/functioncmds.c:958 +#: commands/functioncmds.c:954 commands/functioncmds.c:973 #, c-format msgid "%s is not yet supported in unquoted SQL function body" msgstr "%s ще не підтримується у тілі SQL функції без лапок" -#: commands/functioncmds.c:986 +#: commands/functioncmds.c:1001 #, c-format msgid "only one AS item needed for language \"%s\"" msgstr "для мови \"%s\" потрібен лише один вираз AS" -#: commands/functioncmds.c:1091 +#: commands/functioncmds.c:1107 #, c-format msgid "no language specified" msgstr "не вказано жодної мови" -#: commands/functioncmds.c:1099 commands/functioncmds.c:2117 +#: commands/functioncmds.c:1115 commands/functioncmds.c:2135 #: commands/proclang.c:235 #, c-format msgid "language \"%s\" does not exist" msgstr "мови \"%s\" не існує" -#: commands/functioncmds.c:1101 commands/functioncmds.c:2119 +#: commands/functioncmds.c:1117 commands/functioncmds.c:2137 #, c-format msgid "Use CREATE EXTENSION to load the language into the database." msgstr "Використайте CREATE EXTENSION, щоб завантажити мову в базу даних." -#: commands/functioncmds.c:1134 commands/functioncmds.c:1419 +#: commands/functioncmds.c:1150 commands/functioncmds.c:1437 #, c-format msgid "only superuser can define a leakproof function" msgstr "лише суперкористувачі можуть визначити функцію з атрибутом leakproof" -#: commands/functioncmds.c:1185 +#: commands/functioncmds.c:1202 #, c-format msgid "function result type must be %s because of OUT parameters" msgstr "результат функції повинен мати тип %s відповідно з параметрами OUT" -#: commands/functioncmds.c:1198 +#: commands/functioncmds.c:1215 #, c-format msgid "function result type must be specified" msgstr "необхідно вказати тип результату функції" -#: commands/functioncmds.c:1251 commands/functioncmds.c:1439 +#: commands/functioncmds.c:1268 commands/functioncmds.c:1457 #, c-format msgid "ROWS is not applicable when function does not return a set" msgstr "ROWS не застосовується, коли функція не повертає набір" -#: commands/functioncmds.c:1546 +#: commands/functioncmds.c:1564 #, c-format msgid "source data type %s is a pseudo-type" msgstr "вихідний тип даних %s є псевдотипом" -#: commands/functioncmds.c:1552 +#: commands/functioncmds.c:1570 #, c-format msgid "target data type %s is a pseudo-type" msgstr "цільовий тип даних %s є псевдотипом" -#: commands/functioncmds.c:1576 +#: commands/functioncmds.c:1594 #, c-format msgid "cast will be ignored because the source data type is a domain" msgstr "приведення буде ігноруватися, оскільки вихідні дані мають тип домену" -#: commands/functioncmds.c:1581 +#: commands/functioncmds.c:1599 #, c-format msgid "cast will be ignored because the target data type is a domain" msgstr "приведення буде ігноруватися, оскільки цільові дані мають тип домену" -#: commands/functioncmds.c:1606 +#: commands/functioncmds.c:1624 #, c-format msgid "cast function must take one to three arguments" msgstr "функція приведення повинна приймати від одного до трьох аргументів" -#: commands/functioncmds.c:1612 +#: commands/functioncmds.c:1630 #, c-format msgid "argument of cast function must match or be binary-coercible from source data type" msgstr "аргумент функції приведення повинен співпадати або бути двійково-сумісним з вихідним типом даних" -#: commands/functioncmds.c:1616 +#: commands/functioncmds.c:1634 #, c-format msgid "second argument of cast function must be type %s" msgstr "другий аргумент функції приведення повинен мати тип %s" -#: commands/functioncmds.c:1621 +#: commands/functioncmds.c:1639 #, c-format msgid "third argument of cast function must be type %s" msgstr "третій аргумент функції приведення повинен мати тип %s" -#: commands/functioncmds.c:1628 +#: commands/functioncmds.c:1646 #, c-format msgid "return data type of cast function must match or be binary-coercible to target data type" msgstr "тип вертаючих даних функції приведення повинен співпадати або бути двійково-сумісним з цільовим типом даних" -#: commands/functioncmds.c:1639 +#: commands/functioncmds.c:1657 #, c-format msgid "cast function must not be volatile" msgstr "функція приведення не може бути змінною (volatile)" -#: commands/functioncmds.c:1644 +#: commands/functioncmds.c:1662 #, c-format msgid "cast function must be a normal function" msgstr "функція приведення повинна бути звичайною функцією" -#: commands/functioncmds.c:1648 +#: commands/functioncmds.c:1666 #, c-format msgid "cast function must not return a set" msgstr "функція приведення не може вертати набір" -#: commands/functioncmds.c:1674 +#: commands/functioncmds.c:1692 #, c-format msgid "must be superuser to create a cast WITHOUT FUNCTION" msgstr "тільки суперкористувач може створити приведення WITHOUT FUNCTION" -#: commands/functioncmds.c:1689 +#: commands/functioncmds.c:1707 #, c-format msgid "source and target data types are not physically compatible" msgstr "вихідний та цільовий типи даних не сумісні фізично" -#: commands/functioncmds.c:1709 +#: commands/functioncmds.c:1727 #, c-format msgid "composite data types are not binary-compatible" msgstr "складені типи даних не сумісні на двійковому рівні" -#: commands/functioncmds.c:1715 +#: commands/functioncmds.c:1733 #, c-format msgid "array data types are not binary-compatible" msgstr "типи масивів не сумісні на двійковому рівні" -#: commands/functioncmds.c:1723 +#: commands/functioncmds.c:1741 #, c-format msgid "range data types are not binary-compatible" msgstr "типи-діапазону не сумісні на двійковому рівні" -#: commands/functioncmds.c:1729 +#: commands/functioncmds.c:1747 #, c-format msgid "enum data types are not binary-compatible" msgstr "типи переліку не сумісні на двійковому рівні" -#: commands/functioncmds.c:1746 +#: commands/functioncmds.c:1764 #, c-format msgid "domain data types must not be marked binary-compatible" msgstr "типи доменів не можуть вважатись сумісними на двійковому рівні" -#: commands/functioncmds.c:1756 +#: commands/functioncmds.c:1774 #, c-format msgid "source data type and target data type are the same" msgstr "вихідний тип даних співпадає з цільовим типом" -#: commands/functioncmds.c:1789 +#: commands/functioncmds.c:1807 #, c-format msgid "transform function must not be volatile" msgstr "функція перетворення не може бути мінливою" -#: commands/functioncmds.c:1793 +#: commands/functioncmds.c:1811 #, c-format msgid "transform function must be a normal function" msgstr "функція перетворення повинна бути нормальною функцією" -#: commands/functioncmds.c:1797 +#: commands/functioncmds.c:1815 #, c-format msgid "transform function must not return a set" msgstr "функція перетворення не повинна повертати набір" -#: commands/functioncmds.c:1801 +#: commands/functioncmds.c:1819 #, c-format msgid "transform function must take one argument" msgstr "функція перетворення повинна приймати один аргумент" -#: commands/functioncmds.c:1805 +#: commands/functioncmds.c:1823 #, c-format msgid "first argument of transform function must be type %s" msgstr "перший аргумент функції перетворення повинен бути типу %s" -#: commands/functioncmds.c:1844 +#: commands/functioncmds.c:1862 #, c-format msgid "data type %s is a pseudo-type" msgstr "тип даних %s є псевдотипом" -#: commands/functioncmds.c:1850 +#: commands/functioncmds.c:1868 #, c-format msgid "data type %s is a domain" msgstr "тип даних %s є доменом" -#: commands/functioncmds.c:1890 +#: commands/functioncmds.c:1908 #, c-format msgid "return data type of FROM SQL function must be %s" msgstr "результат функції FROM SQL має бути типу %s" -#: commands/functioncmds.c:1916 +#: commands/functioncmds.c:1934 #, c-format msgid "return data type of TO SQL function must be the transform data type" msgstr "результат функції TO SQL повинен мати тип даних перетворення" -#: commands/functioncmds.c:1943 +#: commands/functioncmds.c:1961 #, c-format msgid "transform for type %s language \"%s\" already exists" msgstr "перетворення для типу %s мови \"%s\" вже існує" -#: commands/functioncmds.c:2029 +#: commands/functioncmds.c:2047 #, 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 "функція %s вже існує в схемі \"%s\"" -#: commands/functioncmds.c:2104 +#: commands/functioncmds.c:2122 #, c-format msgid "no inline code specified" msgstr "не вказано жодного впровадженого коду" -#: commands/functioncmds.c:2150 +#: commands/functioncmds.c:2168 #, c-format msgid "language \"%s\" does not support inline code execution" msgstr "мова \"%s\" не підтримує виконання впровадженого коду" -#: commands/functioncmds.c:2245 +#: commands/functioncmds.c:2263 #, c-format msgid "cannot pass more than %d argument to a procedure" msgid_plural "cannot pass more than %d arguments to a procedure" @@ -9018,303 +9171,343 @@ msgstr[1] "процедурі неможливо передати більше % msgstr[2] "процедурі неможливо передати більше %d аргументів" msgstr[3] "процедурі неможливо передати більше %d аргументів" -#: commands/indexcmds.c:648 +#: commands/indexcmds.c:659 #, c-format msgid "must specify at least one column" msgstr "треба вказати хоча б один стовпець" -#: commands/indexcmds.c:652 +#: commands/indexcmds.c:663 #, c-format msgid "cannot use more than %d columns in an index" msgstr "не можна використовувати більше ніж %d стовпців в індексі" -#: commands/indexcmds.c:695 +#: commands/indexcmds.c:712 #, c-format msgid "cannot create index on relation \"%s\"" msgstr "створити індекс для відношення \"%s\" не можна" -#: commands/indexcmds.c:721 +#: commands/indexcmds.c:738 #, c-format msgid "cannot create index on partitioned table \"%s\" concurrently" msgstr "неможливо створити індекс в секційній таблиці \"%s\" паралельним способом" -#: commands/indexcmds.c:731 +#: commands/indexcmds.c:748 #, c-format msgid "cannot create indexes on temporary tables of other sessions" msgstr "неможливо створити індекси в тимчасових таблицях в інших сеансах" -#: commands/indexcmds.c:769 commands/tablecmds.c:801 commands/tablespace.c:1178 +#: commands/indexcmds.c:786 commands/tablecmds.c:892 commands/tablespace.c:1178 #, c-format msgid "cannot specify default tablespace for partitioned relations" msgstr "для секціонованих відношень не можна вказати табличний простір за замовчуванням" -#: commands/indexcmds.c:801 commands/tablecmds.c:832 commands/tablecmds.c:3571 +#: commands/indexcmds.c:818 commands/tablecmds.c:923 commands/tablecmds.c:3710 #, c-format msgid "only shared relations can be placed in pg_global tablespace" msgstr "тільки спільні відношення можуть бути поміщені в табличний pg_global" -#: commands/indexcmds.c:834 +#: commands/indexcmds.c:851 #, c-format msgid "substituting access method \"gist\" for obsolete method \"rtree\"" msgstr "застарілий метод доступу \"rtree\" підміняється методом \"gist\"" -#: commands/indexcmds.c:855 +#: commands/indexcmds.c:872 #, c-format msgid "access method \"%s\" does not support unique indexes" msgstr "методу доступу \"%s\" не підтримує унікальні індекси" -#: commands/indexcmds.c:860 +#: commands/indexcmds.c:877 #, c-format msgid "access method \"%s\" does not support included columns" msgstr "методу доступу \"%s\" не підтримує включені стовпці" -#: commands/indexcmds.c:865 +#: commands/indexcmds.c:882 #, c-format msgid "access method \"%s\" does not support multicolumn indexes" msgstr "метод доступу \"%s\" не підтримує багатостовпцеві індекси" -#: commands/indexcmds.c:870 +#: commands/indexcmds.c:887 #, c-format msgid "access method \"%s\" does not support exclusion constraints" msgstr "метод доступу \"%s\" не підтримує обмеження-винятки" -#: commands/indexcmds.c:999 +#: commands/indexcmds.c:892 #, c-format -msgid "cannot match partition key to an index using access method \"%s\"" -msgstr "не можна зіставити ключ розділу з індексом використовуючи метод доступу \"%s\"" +msgid "access method \"%s\" does not support WITHOUT OVERLAPS constraints" +msgstr "метод доступу \"%s\" не підтримує обмеження WITHOUT OVERLAPS" -#: commands/indexcmds.c:1009 +#: commands/indexcmds.c:1019 #, c-format msgid "unsupported %s constraint with partition key definition" msgstr "непідтримуване обмеження \"%s\" з визначенням ключа секціонування" -#: commands/indexcmds.c:1011 +#: commands/indexcmds.c:1021 #, c-format msgid "%s constraints cannot be used when partition keys include expressions." msgstr "обмеження %s не можуть використовуватись, якщо ключі секціонування включають вирази." -#: commands/indexcmds.c:1061 +#: commands/indexcmds.c:1056 commands/indexcmds.c:2469 +#: commands/indexcmds.c:2488 executor/execReplication.c:329 +#: parser/parse_cte.c:303 parser/parse_oper.c:221 +#: utils/adt/array_userfuncs.c:1410 utils/adt/array_userfuncs.c:1553 +#: utils/adt/arrayfuncs.c:3864 utils/adt/arrayfuncs.c:4419 +#: utils/adt/arrayfuncs.c:6440 utils/adt/rowtypes.c:1220 +#, c-format +msgid "could not identify an equality operator for type %s" +msgstr "не вдалося визначити оператора рівності для типу %s" + +#: commands/indexcmds.c:1057 commands/indexcmds.c:2491 +#, c-format +msgid "There is no suitable operator in operator family \"%s\" for access method \"%s\"." +msgstr "Немає підходящого оператора у родині операторів \"%s\" для методу доступу \"%s\"." + +#: commands/indexcmds.c:1077 #, c-format msgid "cannot match partition key to index on column \"%s\" using non-equal operator \"%s\"" msgstr "не вдається зіставити ключ розділу з індексом у стовпці \"%s\" за допомогою оператора нерівності \"%s\"" -#: commands/indexcmds.c:1077 +#: commands/indexcmds.c:1093 #, c-format msgid "unique constraint on partitioned table must include all partitioning columns" msgstr "обмеження унікальності в секціонованій таблиці повинно включати всі стовпці секціонування" -#: commands/indexcmds.c:1078 +#: commands/indexcmds.c:1094 #, c-format msgid "%s constraint on table \"%s\" lacks column \"%s\" which is part of the partition key." msgstr "в обмеженні %s таблиці\"%s\" не вистачає стовпця \"%s\", що є частиною ключа секціонування." -#: commands/indexcmds.c:1097 commands/indexcmds.c:1116 +#: commands/indexcmds.c:1116 commands/indexcmds.c:1147 #, c-format msgid "index creation on system columns is not supported" msgstr "створення індексу для системних стовпців не підтримується" -#: commands/indexcmds.c:1346 tcop/utility.c:1515 +#: commands/indexcmds.c:1123 +#, c-format +msgid "primary keys on virtual generated columns are not supported" +msgstr "первинні ключі на віртуальних генерованих стовпцях не підтримуються" + +#: commands/indexcmds.c:1125 commands/indexcmds.c:1164 +#, c-format +msgid "unique constraints on virtual generated columns are not supported" +msgstr "унікальні обмеження для віртуальних генерованих стовпців не підтримуються" + +#: commands/indexcmds.c:1126 commands/indexcmds.c:1165 +#, c-format +msgid "indexes on virtual generated columns are not supported" +msgstr "індекси на віртуальних генерованих стовпцях не підтримуються" + +#: commands/indexcmds.c:1397 tcop/utility.c:1518 #, c-format msgid "cannot create unique index on partitioned table \"%s\"" msgstr "не можна створити унікальний індекс в секціонованій таблиці \"%s\"" -#: commands/indexcmds.c:1348 tcop/utility.c:1517 +#: commands/indexcmds.c:1399 tcop/utility.c:1520 #, c-format msgid "Table \"%s\" contains partitions that are foreign tables." msgstr "Таблиця \"%s\" містить секції, які є зовнішніми таблицями." -#: commands/indexcmds.c:1833 +#: commands/indexcmds.c:1857 #, c-format msgid "functions in index predicate must be marked IMMUTABLE" msgstr "функції в предикаті індексу повинні бути позначені як IMMUTABLE" -#: commands/indexcmds.c:1912 parser/parse_utilcmd.c:2519 -#: parser/parse_utilcmd.c:2654 +#: commands/indexcmds.c:1954 parser/parse_utilcmd.c:2735 +#: parser/parse_utilcmd.c:2918 #, c-format msgid "column \"%s\" named in key does not exist" msgstr "вказаний у ключі стовпець \"%s\" не існує" -#: commands/indexcmds.c:1936 parser/parse_utilcmd.c:1807 +#: commands/indexcmds.c:1978 parser/parse_utilcmd.c:1988 #, c-format msgid "expressions are not supported in included columns" msgstr "вирази не підтримуються у включених стовпцях " -#: commands/indexcmds.c:1977 +#: commands/indexcmds.c:2019 #, c-format msgid "functions in index expression must be marked IMMUTABLE" msgstr "функції в індексному виразі повинні бути позначені як IMMUTABLE" -#: commands/indexcmds.c:1992 +#: commands/indexcmds.c:2034 #, c-format msgid "including column does not support a collation" msgstr "включені стовпці не підтримують правила сортування" -#: commands/indexcmds.c:1996 +#: commands/indexcmds.c:2038 #, c-format msgid "including column does not support an operator class" msgstr "включені стовпці не підтримують класи операторів" -#: commands/indexcmds.c:2000 +#: commands/indexcmds.c:2042 #, c-format msgid "including column does not support ASC/DESC options" msgstr "включені стовпці не підтримують параметри ASC/DESC" -#: commands/indexcmds.c:2004 +#: commands/indexcmds.c:2046 #, c-format msgid "including column does not support NULLS FIRST/LAST options" msgstr "включені стовпці не підтримують параметри NULLS FIRST/LAST" -#: commands/indexcmds.c:2047 +#: commands/indexcmds.c:2089 #, c-format msgid "could not determine which collation to use for index expression" msgstr "не вдалося визначити, яке правило сортування використати для індексного виразу" -#: commands/indexcmds.c:2055 commands/tablecmds.c:18075 commands/typecmds.c:811 -#: parser/parse_expr.c:2785 parser/parse_type.c:568 parser/parse_utilcmd.c:3771 +#: commands/indexcmds.c:2097 commands/tablecmds.c:19994 commands/typecmds.c:812 +#: parser/parse_expr.c:2806 parser/parse_type.c:568 parser/parse_utilcmd.c:4064 #: utils/adt/misc.c:630 #, c-format msgid "collations are not supported by type %s" msgstr "тип %s не підтримує правила сортування" -#: commands/indexcmds.c:2122 +#: commands/indexcmds.c:2164 #, c-format msgid "operator %s is not commutative" msgstr "оператор %s не комутативний" -#: commands/indexcmds.c:2124 +#: commands/indexcmds.c:2166 #, c-format msgid "Only commutative operators can be used in exclusion constraints." msgstr "В обмеженнях-виключеннях можуть використовуватись лише комутативні оператори." -#: commands/indexcmds.c:2150 +#: commands/indexcmds.c:2176 #, c-format msgid "operator %s is not a member of operator family \"%s\"" msgstr "оператор %s не є членом сімейства операторів \"%s\"" -#: commands/indexcmds.c:2153 +#: commands/indexcmds.c:2179 #, c-format msgid "The exclusion operator must be related to the index operator class for the constraint." msgstr "Оператор винятку для обмеження повинен відноситись до класу операторів індексу." -#: commands/indexcmds.c:2188 +#: commands/indexcmds.c:2228 #, c-format msgid "access method \"%s\" does not support ASC/DESC options" msgstr "метод доступу \"%s\" не підтримує параметри ASC/DESC" -#: commands/indexcmds.c:2193 +#: commands/indexcmds.c:2233 #, c-format msgid "access method \"%s\" does not support NULLS FIRST/LAST options" msgstr "метод доступу \"%s\" не підтримує параметри NULLS FIRST/LAST" -#: commands/indexcmds.c:2237 commands/tablecmds.c:18100 -#: commands/tablecmds.c:18106 commands/typecmds.c:2311 +#: commands/indexcmds.c:2277 commands/tablecmds.c:20019 +#: commands/tablecmds.c:20025 commands/typecmds.c:2349 #, c-format msgid "data type %s has no default operator class for access method \"%s\"" msgstr "тип даних %s не має класу операторів за замовчуванням для методу доступу \"%s\"" -#: commands/indexcmds.c:2239 +#: commands/indexcmds.c:2279 #, c-format msgid "You must specify an operator class for the index or define a default operator class for the data type." msgstr "Ви повинні вказати клас операторів для індексу або визначити клас операторів за замовчуванням для цього типу даних." -#: commands/indexcmds.c:2268 commands/indexcmds.c:2276 -#: commands/opclasscmds.c:204 +#: commands/indexcmds.c:2308 commands/indexcmds.c:2316 +#: commands/opclasscmds.c:205 #, c-format msgid "operator class \"%s\" does not exist for access method \"%s\"" msgstr "клас операторів \"%s\" не існує для методу доступу \"%s\"" -#: commands/indexcmds.c:2290 commands/typecmds.c:2299 +#: commands/indexcmds.c:2330 commands/typecmds.c:2337 #, c-format msgid "operator class \"%s\" does not accept data type %s" msgstr "клас операторів \"%s\" не приймає тип даних %s" -#: commands/indexcmds.c:2380 +#: commands/indexcmds.c:2420 #, c-format msgid "there are multiple default operator classes for data type %s" msgstr "для типу даних %s є кілька класів операторів за замовчуванням" -#: commands/indexcmds.c:2708 +#: commands/indexcmds.c:2470 commands/indexcmds.c:2489 +#, c-format +msgid "could not identify an overlaps operator for type %s" +msgstr "не вдалося ідентифікувати оператор перекриття для типу %s" + +#: commands/indexcmds.c:2471 commands/indexcmds.c:2490 #, c-format -msgid "unrecognized REINDEX option \"%s\"" -msgstr "нерозпізнаний параметр REINDEX \"%s\"" +msgid "could not identify a contained-by operator for type %s" +msgstr "не вдалося ідентифікувати оператор \"міститься в\" для типу %s" -#: commands/indexcmds.c:2940 +#: commands/indexcmds.c:2472 commands/tablecmds.c:10358 +#, c-format +msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." +msgstr "Не вдалося перекласти тип порівняння %d для сімейства операторів \"%s\" методу доступу \"%s\"." + +#: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" msgstr "таблиця \"%s\" не має індексів, які можна переіндексувати паралельно" -#: commands/indexcmds.c:2954 +#: commands/indexcmds.c:3092 #, c-format msgid "table \"%s\" has no indexes to reindex" msgstr "таблиця \"%s\" не має індексів для переіндексування" -#: commands/indexcmds.c:3001 commands/indexcmds.c:3512 -#: commands/indexcmds.c:3642 +#: commands/indexcmds.c:3139 commands/indexcmds.c:3650 +#: commands/indexcmds.c:3780 #, c-format msgid "cannot reindex system catalogs concurrently" msgstr "не можна конкурентно переіндексувати системні каталоги" -#: commands/indexcmds.c:3025 +#: commands/indexcmds.c:3163 #, c-format msgid "can only reindex the currently open database" msgstr "переіндексувати можна тільки наразі відкриту базу даних" -#: commands/indexcmds.c:3117 +#: commands/indexcmds.c:3255 #, c-format msgid "cannot reindex system catalogs concurrently, skipping all" msgstr "не можна конкурентно переіндексувати системні каталоги, пропускаємо" -#: commands/indexcmds.c:3150 +#: commands/indexcmds.c:3288 #, c-format msgid "cannot move system relations, skipping all" msgstr "не можна перемістити системні відношення, пропускаються усі" -#: commands/indexcmds.c:3196 +#: commands/indexcmds.c:3334 #, c-format msgid "while reindexing partitioned table \"%s.%s\"" msgstr "під час переіндексування секціонованої таблиці \"%s.%s\"" -#: commands/indexcmds.c:3199 +#: commands/indexcmds.c:3337 #, c-format msgid "while reindexing partitioned index \"%s.%s\"" msgstr "під час переіндексування секціонованого індексу \"%s.%s\"" -#: commands/indexcmds.c:3392 commands/indexcmds.c:4268 +#: commands/indexcmds.c:3530 commands/indexcmds.c:4422 #, c-format msgid "table \"%s.%s\" was reindexed" msgstr "таблиця \"%s.%s\" була переіндексована" -#: commands/indexcmds.c:3544 commands/indexcmds.c:3597 +#: commands/indexcmds.c:3682 commands/indexcmds.c:3735 #, c-format msgid "skipping reindex of invalid index \"%s.%s\"" msgstr "пропуск пере індексації недійсного індексу \"%s.%s\"" -#: commands/indexcmds.c:3547 commands/indexcmds.c:3600 +#: commands/indexcmds.c:3685 commands/indexcmds.c:3738 #, c-format msgid "Use DROP INDEX or REINDEX INDEX." msgstr "Використовуйте DROP INDEX або REINDEX INDEX." -#: commands/indexcmds.c:3551 +#: commands/indexcmds.c:3689 #, c-format msgid "cannot reindex exclusion constraint index \"%s.%s\" concurrently, skipping" msgstr "неможливо переіндексувати індекс обмеження-виключення \"%s.%s\" паралельно, пропускається" -#: commands/indexcmds.c:3707 +#: commands/indexcmds.c:3845 #, c-format msgid "cannot reindex this type of relation concurrently" msgstr "неможливо переіндексувати цей тип відношень паралельон" -#: commands/indexcmds.c:3725 +#: commands/indexcmds.c:3863 #, c-format msgid "cannot move non-shared relation to tablespace \"%s\"" msgstr "не можна перемістити не спільне відношення до табличного простору \"%s\"" -#: commands/indexcmds.c:4249 commands/indexcmds.c:4261 +#: commands/indexcmds.c:4403 commands/indexcmds.c:4415 #, c-format msgid "index \"%s.%s\" was reindexed" msgstr "індекс \"%s.%s\" був перебудований" -#: commands/indexcmds.c:4251 commands/indexcmds.c:4270 +#: commands/indexcmds.c:4405 commands/indexcmds.c:4424 #, c-format msgid "%s." msgstr "%s." @@ -9324,254 +9517,274 @@ msgstr "%s." msgid "cannot lock relation \"%s\"" msgstr "блокувати відношення \"%s\" не можна" -#: commands/matview.c:206 +#: commands/matview.c:208 #, c-format msgid "CONCURRENTLY cannot be used when the materialized view is not populated" msgstr "CONCURRENTLY не може використовуватись, коли матеріалізоване подання не наповнено" -#: commands/matview.c:212 gram.y:18918 +#: commands/matview.c:214 gram.y:19087 #, c-format msgid "%s and %s options cannot be used together" msgstr "параметри %s та %s не можуть бути використані разом" -#: commands/matview.c:269 +#: commands/matview.c:273 #, c-format msgid "cannot refresh materialized view \"%s\" concurrently" msgstr "оновити матеріалізоване подання \"%s\" паралельно не можна" -#: commands/matview.c:272 +#: commands/matview.c:276 #, c-format msgid "Create a unique index with no WHERE clause on one or more columns of the materialized view." msgstr "Створіть унікальний індекс без речення WHERE для одного або більше стовпців матеріалізованого подання." -#: commands/matview.c:666 +#: commands/matview.c:682 #, c-format msgid "new data for materialized view \"%s\" contains duplicate rows without any null columns" msgstr "нові дані для матеріалізованого подання \"%s\" містять рядки, які дублюються (без урахування стовпців з null)" -#: commands/matview.c:668 +#: commands/matview.c:684 #, c-format msgid "Row: %s" msgstr "Рядок: %s" -#: commands/opclasscmds.c:123 +#: commands/matview.c:838 +#, c-format +msgid "could not find suitable unique index on materialized view \"%s\"" +msgstr "не вдалося знайти відповідний унікальний індекс на матеріалізованому поданні \"%s\"" + +#: commands/opclasscmds.c:124 #, c-format msgid "operator family \"%s\" does not exist for access method \"%s\"" msgstr "сімейство операторів \"%s\" не існує для методу доступу \"%s\"" -#: commands/opclasscmds.c:266 +#: commands/opclasscmds.c:267 #, c-format msgid "operator family \"%s\" for access method \"%s\" already exists" msgstr "сімейство операторів \"%s\" для методу доступу \"%s\" вже існує" -#: commands/opclasscmds.c:415 +#: commands/opclasscmds.c:416 #, c-format msgid "must be superuser to create an operator class" msgstr "тільки суперкористувач може створити клас операторів" -#: commands/opclasscmds.c:492 commands/opclasscmds.c:909 -#: commands/opclasscmds.c:1055 +#: commands/opclasscmds.c:493 commands/opclasscmds.c:910 +#: commands/opclasscmds.c:1056 #, c-format msgid "invalid operator number %d, must be between 1 and %d" msgstr "неприпустимий номер оператора %d, число має бути між 1 і %d" -#: commands/opclasscmds.c:537 commands/opclasscmds.c:959 -#: commands/opclasscmds.c:1071 +#: commands/opclasscmds.c:538 commands/opclasscmds.c:960 +#: commands/opclasscmds.c:1072 #, c-format msgid "invalid function number %d, must be between 1 and %d" msgstr "неприпустимий номер функції %d, число має бути між 1 і %d" -#: commands/opclasscmds.c:566 +#: commands/opclasscmds.c:567 #, c-format msgid "storage type specified more than once" msgstr "тип сховища вказано більше одного разу" -#: commands/opclasscmds.c:593 +#: commands/opclasscmds.c:594 #, c-format msgid "storage type cannot be different from data type for access method \"%s\"" msgstr "тип сховища не може відрізнятися від типу даних для методу доступу \"%s\"" -#: commands/opclasscmds.c:609 +#: commands/opclasscmds.c:610 #, c-format msgid "operator class \"%s\" for access method \"%s\" already exists" msgstr "клас операторів \"%s\" для методу доступу \"%s\" вже існує" -#: commands/opclasscmds.c:637 +#: commands/opclasscmds.c:638 #, c-format msgid "could not make operator class \"%s\" be default for type %s" msgstr "клас операторів \"%s\" не вдалося зробити класом за замовчуванням для типу %s" -#: commands/opclasscmds.c:640 +#: commands/opclasscmds.c:641 #, c-format msgid "Operator class \"%s\" already is the default." msgstr "Клас операторів \"%s\" вже є класом за замовчуванням." -#: commands/opclasscmds.c:800 +#: commands/opclasscmds.c:801 #, c-format msgid "must be superuser to create an operator family" msgstr "тільки суперкористувач може створити сімейство операторів" -#: commands/opclasscmds.c:860 +#: commands/opclasscmds.c:861 #, c-format msgid "must be superuser to alter an operator family" msgstr "тільки суперкористувач може змінити сімейство операторів" -#: commands/opclasscmds.c:918 +#: commands/opclasscmds.c:919 #, c-format msgid "operator argument types must be specified in ALTER OPERATOR FAMILY" msgstr "типи аргументу оператора повинні бути вказані в ALTER OPERATOR FAMILY" -#: commands/opclasscmds.c:993 +#: commands/opclasscmds.c:994 #, c-format msgid "STORAGE cannot be specified in ALTER OPERATOR FAMILY" msgstr "STORAGE не може бути вказано в ALTER OPERATOR FAMILY" -#: commands/opclasscmds.c:1127 +#: commands/opclasscmds.c:1128 #, c-format msgid "one or two argument types must be specified" msgstr "треба вказати один або два типи аргументу" -#: commands/opclasscmds.c:1153 +#: commands/opclasscmds.c:1154 #, c-format msgid "index operators must be binary" msgstr "індексні оператори повинні бути бінарними" -#: commands/opclasscmds.c:1172 +#: commands/opclasscmds.c:1173 #, c-format msgid "access method \"%s\" does not support ordering operators" msgstr "метод доступу \"%s\" не підтримує сортувальних операторів" -#: commands/opclasscmds.c:1183 +#: commands/opclasscmds.c:1184 #, c-format msgid "index search operators must return boolean" msgstr "оператори пошуку по індексу повинні повертати логічне значення" -#: commands/opclasscmds.c:1223 +#: commands/opclasscmds.c:1224 #, c-format msgid "associated data types for operator class options parsing functions must match opclass input type" msgstr "пов'язані типи даних для функцій обробки параметрів класів операторів повинні відповідати типу вхідних даних opclass" -#: commands/opclasscmds.c:1230 +#: commands/opclasscmds.c:1231 #, c-format msgid "left and right associated data types for operator class options parsing functions must match" msgstr "ліві та праві пов'язані типи даних для функцій розбору параметрів класів операторів повинні збігатись" -#: commands/opclasscmds.c:1238 +#: commands/opclasscmds.c:1239 #, c-format msgid "invalid operator class options parsing function" msgstr "неприпустима функція розбору параметрів класів операторів" -#: commands/opclasscmds.c:1239 +#: commands/opclasscmds.c:1240 #, c-format msgid "Valid signature of operator class options parsing function is %s." msgstr "Допустимий підпис для функції розбору параметрів класів операторів: %s." -#: commands/opclasscmds.c:1258 +#: commands/opclasscmds.c:1259 +#, c-format +msgid "ordering comparison functions must have two arguments" +msgstr "функції порівняння для сортування повинні мати два аргументи" + +#: commands/opclasscmds.c:1263 +#, c-format +msgid "ordering comparison functions must return integer" +msgstr "функції порівняння для сортування повинні повертати ціле число" + +#: commands/opclasscmds.c:1280 +#, c-format +msgid "ordering sort support functions must accept type \"internal\"" +msgstr "функції підтримки сортування для впорядкування повинні приймати тип \"internal\"" + +#: commands/opclasscmds.c:1284 #, c-format -msgid "btree comparison functions must have two arguments" -msgstr "функції порівняння btree повинні мати два аргумента" +msgid "ordering sort support functions must return void" +msgstr "функції підтримки сортування для впорядкування повинні повертати void" -#: commands/opclasscmds.c:1262 +#: commands/opclasscmds.c:1295 #, c-format -msgid "btree comparison functions must return integer" -msgstr "функції порівняння btree повинні повертати ціле число" +msgid "ordering in_range functions must have five arguments" +msgstr "функції in_range для впорядкування повинні мати п'ять аргументів" -#: commands/opclasscmds.c:1279 +#: commands/opclasscmds.c:1299 #, c-format -msgid "btree sort support functions must accept type \"internal\"" -msgstr "опорні функції сортування btree повинні приймати тип \"internal\"" +msgid "ordering in_range functions must return boolean" +msgstr "функції in_range для впорядкування повинні повертати boolean" -#: commands/opclasscmds.c:1283 +#: commands/opclasscmds.c:1315 #, c-format -msgid "btree sort support functions must return void" -msgstr "опорні функції сортування btree повинні повертати недійсне (void)" +msgid "ordering equal image functions must have one argument" +msgstr "функції рівного відображення для впорядкування повинні мати один аргумент" -#: commands/opclasscmds.c:1294 +#: commands/opclasscmds.c:1319 #, c-format -msgid "btree in_range functions must have five arguments" -msgstr "функції in_range для btree повинні приймати п'ять аргументів" +msgid "ordering equal image functions must return boolean" +msgstr "функції рівного відображення для впорядкування повинні повертати boolean" -#: commands/opclasscmds.c:1298 +#: commands/opclasscmds.c:1332 #, c-format -msgid "btree in_range functions must return boolean" -msgstr "функції in_range для btree повинні повертати логічне значення" +msgid "ordering equal image functions must not be cross-type" +msgstr "функції рівного відображення для впорядкування не повинні бути міжтипними" -#: commands/opclasscmds.c:1314 +#: commands/opclasscmds.c:1340 #, c-format -msgid "btree equal image functions must have one argument" -msgstr "функції equal image для btree повинні приймати один аргумент" +msgid "btree skip support functions must accept type \"internal\"" +msgstr "функції підтримки пропуску btree повинні приймати тип \"internal\"" -#: commands/opclasscmds.c:1318 +#: commands/opclasscmds.c:1344 #, c-format -msgid "btree equal image functions must return boolean" -msgstr "функції equal image для btree повинні повертати логічне значення" +msgid "btree skip support functions must return void" +msgstr "функції підтримки пропуску btree повинні повертати void" -#: commands/opclasscmds.c:1331 +#: commands/opclasscmds.c:1357 #, c-format -msgid "btree equal image functions must not be cross-type" -msgstr "функції equal image для btree не можуть бути хрестоподібного типу" +msgid "btree skip support functions must not be cross-type" +msgstr "функції підтримки пропуску btree не повинні бути міжтипними" -#: commands/opclasscmds.c:1341 +#: commands/opclasscmds.c:1367 #, c-format msgid "hash function 1 must have one argument" msgstr "геш-функція 1 повинна приймати один аргумент" -#: commands/opclasscmds.c:1345 +#: commands/opclasscmds.c:1371 #, c-format msgid "hash function 1 must return integer" msgstr "геш-функція 1 повинна повертати ціле число" -#: commands/opclasscmds.c:1352 +#: commands/opclasscmds.c:1378 #, c-format msgid "hash function 2 must have two arguments" msgstr "геш-функція 2 повинна приймати два аргументи" -#: commands/opclasscmds.c:1356 +#: commands/opclasscmds.c:1382 #, c-format msgid "hash function 2 must return bigint" msgstr "геш-функція 2 повинна повертати велике ціле (bigint)" -#: commands/opclasscmds.c:1381 +#: commands/opclasscmds.c:1407 #, c-format msgid "associated data types must be specified for index support function" msgstr "для опорної функції індексів повинні бути вказані пов'язані типи даних" -#: commands/opclasscmds.c:1406 +#: commands/opclasscmds.c:1432 #, c-format msgid "function number %d for (%s,%s) appears more than once" msgstr "номер функції %d для (%s,%s) з'являється більш ніж один раз" -#: commands/opclasscmds.c:1413 +#: commands/opclasscmds.c:1439 #, c-format msgid "operator number %d for (%s,%s) appears more than once" msgstr "номер оператора %d для (%s,%s) з'являється більш ніж один раз" -#: commands/opclasscmds.c:1459 +#: commands/opclasscmds.c:1485 #, c-format msgid "operator %d(%s,%s) already exists in operator family \"%s\"" msgstr "оператор %d(%s,%s) вже існує в сімействі операторів \"%s\"" -#: commands/opclasscmds.c:1565 +#: commands/opclasscmds.c:1614 #, c-format msgid "function %d(%s,%s) already exists in operator family \"%s\"" msgstr "функція %d(%s,%s) вже існує в сімействі операторів \"%s\"" -#: commands/opclasscmds.c:1646 +#: commands/opclasscmds.c:1769 #, c-format msgid "operator %d(%s,%s) does not exist in operator family \"%s\"" msgstr "оператора %d(%s,%s) не існує в сімействі операторів \"%s\"" -#: commands/opclasscmds.c:1686 +#: commands/opclasscmds.c:1809 #, c-format msgid "function %d(%s,%s) does not exist in operator family \"%s\"" msgstr "функції %d(%s,%s) не існує в сімействі операторів \"%s\"" -#: commands/opclasscmds.c:1717 +#: commands/opclasscmds.c:1840 #, c-format msgid "operator class \"%s\" for access method \"%s\" already exists in schema \"%s\"" msgstr "клас операторів \"%s\" для методу доступу \"%s\" вже існує в схемі \"%s\"" -#: commands/opclasscmds.c:1740 +#: commands/opclasscmds.c:1863 #, c-format msgid "operator family \"%s\" for access method \"%s\" already exists in schema \"%s\"" msgstr "сімейство операторів \"%s\" для методу доступу \"%s\" вже існує в схемі \"%s\"" @@ -9643,12 +9856,12 @@ msgstr "атрибут оператора \"%s\" неможливо змінит msgid "operator attribute \"%s\" cannot be changed if it has already been set" msgstr "атрибут оператора \"%s\" не може бути змінений, якщо він вже встановлений" -#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:146 -#: commands/tablecmds.c:1723 commands/tablecmds.c:2323 -#: commands/tablecmds.c:3682 commands/tablecmds.c:6582 -#: commands/tablecmds.c:9614 commands/tablecmds.c:17662 -#: commands/tablecmds.c:17697 commands/trigger.c:316 commands/trigger.c:1332 -#: commands/trigger.c:1442 rewrite/rewriteDefine.c:268 +#: commands/policy.c:86 commands/policy.c:379 commands/statscmds.c:152 +#: commands/tablecmds.c:1800 commands/tablecmds.c:2400 +#: commands/tablecmds.c:3824 commands/tablecmds.c:6793 +#: commands/tablecmds.c:10114 commands/tablecmds.c:19565 +#: commands/tablecmds.c:19600 commands/trigger.c:319 commands/trigger.c:1338 +#: commands/trigger.c:1448 rewrite/rewriteDefine.c:268 #: rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 #, c-format msgid "permission denied: \"%s\" is a system catalog" @@ -9689,53 +9902,53 @@ msgstr "політика \"%s\" для таблиці \"%s\" не існує" msgid "only USING expression allowed for SELECT, DELETE" msgstr "для SELECT, DELETE допускається лише вираз USING" -#: commands/portalcmds.c:60 commands/portalcmds.c:181 commands/portalcmds.c:232 +#: commands/portalcmds.c:63 commands/portalcmds.c:191 commands/portalcmds.c:242 #, c-format msgid "invalid cursor name: must not be empty" msgstr "неприпустиме ім'я курсора: не повинне бути пустим" -#: commands/portalcmds.c:72 +#: commands/portalcmds.c:75 #, c-format msgid "cannot create a cursor WITH HOLD within security-restricted operation" msgstr "не можна створити курсос WITH HOLD в межах операції з обмеженням по безпеці" -#: commands/portalcmds.c:189 commands/portalcmds.c:242 -#: executor/execCurrent.c:70 utils/adt/xml.c:2936 utils/adt/xml.c:3106 +#: commands/portalcmds.c:199 commands/portalcmds.c:252 +#: executor/execCurrent.c:70 utils/adt/xml.c:2938 utils/adt/xml.c:3108 #, c-format msgid "cursor \"%s\" does not exist" msgstr "курсор \"%s\" не існує" -#: commands/prepare.c:72 +#: commands/prepare.c:75 #, c-format msgid "invalid statement name: must not be empty" msgstr "неприпустиме ім'я оператора: не повинне бути пустим" -#: commands/prepare.c:227 commands/prepare.c:232 +#: commands/prepare.c:230 commands/prepare.c:235 #, c-format msgid "prepared statement is not a SELECT" msgstr "підготовлений оператор не SELECT" -#: commands/prepare.c:292 +#: commands/prepare.c:295 #, c-format msgid "wrong number of parameters for prepared statement \"%s\"" msgstr "невірне число параметрів для підготовленого оператора \"%s\"" -#: commands/prepare.c:294 +#: commands/prepare.c:297 #, c-format msgid "Expected %d parameters but got %d." msgstr "Очікувалось %d параметрів, але отримано %d." -#: commands/prepare.c:327 +#: commands/prepare.c:330 #, c-format msgid "parameter $%d of type %s cannot be coerced to the expected type %s" msgstr "параметр $%d типу %s не можна привести до очікуваного типу %s" -#: commands/prepare.c:411 +#: commands/prepare.c:414 #, c-format msgid "prepared statement \"%s\" already exists" msgstr "підготовлений оператор \"%s\" вже існує" -#: commands/prepare.c:450 +#: commands/prepare.c:453 #, c-format msgid "prepared statement \"%s\" does not exist" msgstr "підготовлений оператор \"%s\" не існує" @@ -9745,203 +9958,214 @@ msgstr "підготовлений оператор \"%s\" не існує" msgid "must be superuser to create custom procedural language" msgstr "для створення користувацької мови потрібно бути суперкористувачем" -#: commands/publicationcmds.c:124 postmaster/postmaster.c:1108 -#: postmaster/postmaster.c:1210 utils/init/miscinit.c:1811 +#: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 +#: postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 +#: utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "неприпустимий синтаксис списку в параметрі \"%s\"" -#: commands/publicationcmds.c:143 +#: commands/publicationcmds.c:149 #, c-format msgid "unrecognized value for publication option \"%s\": \"%s\"" msgstr "нерозпізнане значення параметра публікації \"%s\": \"%s\"" -#: commands/publicationcmds.c:157 +#: commands/publicationcmds.c:170 #, c-format msgid "unrecognized publication parameter: \"%s\"" msgstr "нерозпізнаний параметр публікації: \"%s\"" -#: commands/publicationcmds.c:198 +#: commands/publicationcmds.c:211 #, c-format msgid "no schema has been selected for CURRENT_SCHEMA" msgstr "жодної схеми не вибрано для CURRENT_SCHEMA" -#: commands/publicationcmds.c:495 +#: commands/publicationcmds.c:592 msgid "System columns are not allowed." msgstr "Системні стовпці не допускаються." -#: commands/publicationcmds.c:502 commands/publicationcmds.c:507 -#: commands/publicationcmds.c:524 +#: commands/publicationcmds.c:599 commands/publicationcmds.c:604 +#: commands/publicationcmds.c:621 msgid "User-defined operators are not allowed." msgstr "Користувацькі оператори не допускаються." -#: commands/publicationcmds.c:548 +#: commands/publicationcmds.c:645 msgid "Only columns, constants, built-in operators, built-in data types, built-in collations, and immutable built-in functions are allowed." msgstr "Дозволяються тільки стовпці, константи, вбудовані оператори, вбудовані типи даних, вбудовані параметри сортування та незмінні вбудовані функції." -#: commands/publicationcmds.c:560 +#: commands/publicationcmds.c:657 msgid "User-defined types are not allowed." msgstr "Користувацькі типи не допускаються." -#: commands/publicationcmds.c:563 +#: commands/publicationcmds.c:660 msgid "User-defined or built-in mutable functions are not allowed." msgstr "Користувацькі або вбудовані змінні функції не допускаються." -#: commands/publicationcmds.c:566 +#: commands/publicationcmds.c:663 msgid "User-defined collations are not allowed." msgstr "Користувацькі параметри сортування не допускаються." -#: commands/publicationcmds.c:576 +#: commands/publicationcmds.c:673 #, c-format msgid "invalid publication WHERE expression" msgstr "неприпустимий вираз публікації WHERE" -#: commands/publicationcmds.c:629 +#: commands/publicationcmds.c:726 #, c-format msgid "cannot use publication WHERE clause for relation \"%s\"" msgstr "використовувати вираз публікації WHERE для відношення \"%s\" не можна" -#: commands/publicationcmds.c:631 +#: commands/publicationcmds.c:728 #, c-format msgid "WHERE clause cannot be used for a partitioned table when %s is false." msgstr "вираз WHERE для секціонованих таблиць не можна використовувати, коли %s є false." -#: commands/publicationcmds.c:702 commands/publicationcmds.c:716 +#: commands/publicationcmds.c:801 commands/publicationcmds.c:815 #, c-format msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" msgstr "не можна використовувати список стовпців для відношення \"%s.%s\" в публікації \"%s\"" -#: commands/publicationcmds.c:705 +#: commands/publicationcmds.c:804 #, c-format msgid "Column lists cannot be specified in publications containing FOR TABLES IN SCHEMA elements." msgstr "Списки стовпців не можна вказувати в публікаціях, що містять елементи FOR TABLES IN SCHEMA." -#: commands/publicationcmds.c:719 +#: commands/publicationcmds.c:818 #, c-format msgid "Column lists cannot be specified for partitioned tables when %s is false." msgstr "Списки стовпців для секціонованих таблиць не можна використовувати, коли %s є false." -#: commands/publicationcmds.c:754 +#: commands/publicationcmds.c:855 #, c-format msgid "must be superuser to create FOR ALL TABLES publication" msgstr "для створення публікації УСІХ ТАБЛИЦЬ потрібно бути суперкористувачем" -#: commands/publicationcmds.c:825 +#: commands/publicationcmds.c:930 #, c-format msgid "must be superuser to create FOR TABLES IN SCHEMA publication" msgstr "щоб створити публікацію FOR TABLES IN SCHEMA потрібно бути суперкористувачем" -#: commands/publicationcmds.c:861 +#: commands/publicationcmds.c:966 #, c-format msgid "\"wal_level\" is insufficient to publish logical changes" msgstr "недостатній \"wal_level\" для публікації логічних змін" -#: commands/publicationcmds.c:862 +#: commands/publicationcmds.c:967 #, c-format msgid "Set \"wal_level\" to \"logical\" before creating subscriptions." msgstr "Встановіть \"wal_level\" на \"logical\" перед створенням підписок." -#: commands/publicationcmds.c:958 commands/publicationcmds.c:966 +#: commands/publicationcmds.c:1067 commands/publicationcmds.c:1075 #, c-format msgid "cannot set parameter \"%s\" to false for publication \"%s\"" msgstr "встановити параметр \"%s\" на false для публікації \"%s\" не можна" -#: commands/publicationcmds.c:961 +#: commands/publicationcmds.c:1070 #, c-format msgid "The publication contains a WHERE clause for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "Публікація містить вираз WHERE для секціонованої таблиці \"%s\", який не допускається коли \"%s\" є false." -#: commands/publicationcmds.c:969 +#: commands/publicationcmds.c:1078 #, c-format msgid "The publication contains a column list for partitioned table \"%s\", which is not allowed when \"%s\" is false." msgstr "Публікація містить список стовпців для секціонованої таблиці \"%s\", який не допускається коли \"%s\" є false." -#: commands/publicationcmds.c:1292 +#: commands/publicationcmds.c:1399 #, c-format msgid "cannot add schema to publication \"%s\"" msgstr "не можна додати схему до публікації \"%s\"" -#: commands/publicationcmds.c:1294 +#: commands/publicationcmds.c:1401 #, c-format msgid "Schemas cannot be added if any tables that specify a column list are already part of the publication." msgstr "Схеми не можна додавати, якщо будь-яка таблиця, що вказуює на список стовпців, вже є частиною публікації." -#: commands/publicationcmds.c:1342 +#: commands/publicationcmds.c:1449 #, c-format msgid "must be superuser to add or set schemas" msgstr "для додавання або встановлення схем потрібно бути суперкористувачем" -#: commands/publicationcmds.c:1351 commands/publicationcmds.c:1359 +#: commands/publicationcmds.c:1458 commands/publicationcmds.c:1466 #, c-format msgid "publication \"%s\" is defined as FOR ALL TABLES" msgstr "публікація \"%s\" визначена ДЛЯ ВСІХ ТАБЛИЦЬ" -#: commands/publicationcmds.c:1353 +#: commands/publicationcmds.c:1460 #, c-format msgid "Schemas cannot be added to or dropped from FOR ALL TABLES publications." msgstr "До публікації FOR ALL TABLES не можна додати або видалити схеми." -#: commands/publicationcmds.c:1361 +#: commands/publicationcmds.c:1468 #, c-format msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications." msgstr "У публікації ВСІХ ТАБЛИЦЬ не можна додати або видалити таблиці." -#: commands/publicationcmds.c:1385 commands/publicationcmds.c:1424 -#: commands/publicationcmds.c:1961 utils/cache/lsyscache.c:3634 +#: commands/publicationcmds.c:1492 commands/publicationcmds.c:1531 +#: commands/publicationcmds.c:2068 utils/cache/lsyscache.c:3774 #, c-format msgid "publication \"%s\" does not exist" msgstr "публікація \"%s\" вже існує" -#: commands/publicationcmds.c:1587 commands/publicationcmds.c:1650 +#: commands/publicationcmds.c:1694 commands/publicationcmds.c:1757 #, c-format msgid "conflicting or redundant WHERE clauses for table \"%s\"" msgstr "конфліктуючі або надлишкові вирази WHERE для таблиці \"%s\"" -#: commands/publicationcmds.c:1594 commands/publicationcmds.c:1662 +#: commands/publicationcmds.c:1701 commands/publicationcmds.c:1769 #, c-format msgid "conflicting or redundant column lists for table \"%s\"" msgstr "конфліктуючі або надлишкові списки стовпців для таблиці \"%s\"" -#: commands/publicationcmds.c:1796 +#: commands/publicationcmds.c:1903 #, c-format msgid "column list must not be specified in ALTER PUBLICATION ... DROP" msgstr "список стовпців не можна вказувати в ALTER PUBLICATION ... DROP" -#: commands/publicationcmds.c:1808 +#: commands/publicationcmds.c:1915 #, c-format msgid "relation \"%s\" is not part of the publication" msgstr "відносини \"%s\" не є частиною публікації" -#: commands/publicationcmds.c:1815 +#: commands/publicationcmds.c:1922 #, c-format msgid "cannot use a WHERE clause when removing a table from a publication" msgstr "під час видалення таблиці з публікації використовувати вираз WHERE не можна" -#: commands/publicationcmds.c:1875 +#: commands/publicationcmds.c:1982 #, c-format msgid "tables from schema \"%s\" are not part of the publication" msgstr "таблиці зі схеми \"%s\" не є частиною публікації" -#: commands/publicationcmds.c:1918 commands/publicationcmds.c:1925 +#: commands/publicationcmds.c:2025 commands/publicationcmds.c:2032 #, c-format msgid "permission denied to change owner of publication \"%s\"" msgstr "немає прав на зміну власника публікації \"%s\"" -#: commands/publicationcmds.c:1920 +#: commands/publicationcmds.c:2027 #, c-format msgid "The owner of a FOR ALL TABLES publication must be a superuser." msgstr "Власником публікації УСІХ ТАБЛИЦЬ повинен бути суперкористувач." -#: commands/publicationcmds.c:1927 +#: commands/publicationcmds.c:2034 #, c-format msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser." msgstr "Власник публікації публікації FOR TABLES IN SCHEMA повинен бути суперкористувачем." -#: commands/publicationcmds.c:1993 +#: commands/publicationcmds.c:2100 #, c-format msgid "publication with OID %u does not exist" msgstr "публікації %u з OID не існує" +#: commands/publicationcmds.c:2133 +#, c-format +msgid "invalid value for publication parameter \"%s\": \"%s\"" +msgstr "неприпустиме значення для параметра публікації \"%s\": \"%s\"" + +#: commands/publicationcmds.c:2134 +#, c-format +msgid "Valid values are \"%s\" and \"%s\"." +msgstr "Припустимі значення: \"%s\" і \"%s\"." + #: commands/schemacmds.c:109 commands/schemacmds.c:289 #, c-format msgid "unacceptable schema name \"%s\"" @@ -9984,13 +10208,13 @@ msgstr "не можна встановити мітку безпеки для в #: commands/sequence.c:748 #, c-format -msgid "nextval: reached maximum value of sequence \"%s\" (%lld)" -msgstr "nextval: досягнено максимального значення послідовності \"%s\" (%lld)" +msgid "nextval: reached maximum value of sequence \"%s\" (%)" +msgstr "nextval: досягнуто максимальне значення послідовності \"%s\" (%)" #: commands/sequence.c:767 #, c-format -msgid "nextval: reached minimum value of sequence \"%s\" (%lld)" -msgstr "nextval: досягнено мінімального значення послідовності \"%s\" (%lld)" +msgid "nextval: reached minimum value of sequence \"%s\" (%)" +msgstr "nextval: досягнуто мінімальне значення послідовності \"%s\" (%)" #: commands/sequence.c:886 #, c-format @@ -10004,8 +10228,8 @@ msgstr "останнє значення ще не визначено в цьом #: commands/sequence.c:991 #, c-format -msgid "setval: value %lld is out of bounds for sequence \"%s\" (%lld..%lld)" -msgstr "setval: значення %lld поза межами послідовності \"%s\" (%lld..%lld)" +msgid "setval: value % is out of bounds for sequence \"%s\" (%..%)" +msgstr "setval: значення % за межами діапазону для послідовності \"%s\" (%..%)" #: commands/sequence.c:1357 #, c-format @@ -10029,43 +10253,43 @@ msgstr "INCREMENT не повинен бути нулем" #: commands/sequence.c:1466 #, c-format -msgid "MAXVALUE (%lld) is out of range for sequence data type %s" -msgstr "MAXVALUE (%lld) виходить за межі діапазону типу даних послідовності %s" +msgid "MAXVALUE (%) is out of range for sequence data type %s" +msgstr "MAXVALUE (%) поза межами діапазону для типу даних послідовності %s" #: commands/sequence.c:1498 #, c-format -msgid "MINVALUE (%lld) is out of range for sequence data type %s" -msgstr "MINVALUE (%lld) виходить за межі діапазону для типу даних послідовності %s" +msgid "MINVALUE (%) is out of range for sequence data type %s" +msgstr "MINVALUE (%) поза межами діапазону для типу даних послідовності %s" #: commands/sequence.c:1506 #, c-format -msgid "MINVALUE (%lld) must be less than MAXVALUE (%lld)" -msgstr "MINVALUE (%lld) повинно бути меншим за MAXVALUE (%lld)" +msgid "MINVALUE (%) must be less than MAXVALUE (%)" +msgstr "MINVALUE (%) повинен бути меншим ніж MAXVALUE (%)" #: commands/sequence.c:1527 #, c-format -msgid "START value (%lld) cannot be less than MINVALUE (%lld)" -msgstr "Значення START (%lld) не може бути меншим за MINVALUE (%lld)" +msgid "START value (%) cannot be less than MINVALUE (%)" +msgstr "Значення START (%) не може бути меншим ніж MINVALUE (%)" #: commands/sequence.c:1533 #, c-format -msgid "START value (%lld) cannot be greater than MAXVALUE (%lld)" -msgstr "Значення START (%lld) не може бути більшим за MAXVALUE (%lld)" +msgid "START value (%) cannot be greater than MAXVALUE (%)" +msgstr "Значення START (%) не може бути більшим ніж MAXVALUE (%)" #: commands/sequence.c:1557 #, c-format -msgid "RESTART value (%lld) cannot be less than MINVALUE (%lld)" -msgstr "Значення RESTART (%lld) не може бути меншим за MINVALUE (%lld)" +msgid "RESTART value (%) cannot be less than MINVALUE (%)" +msgstr "Значення RESTART (%) не може бути меншим ніж MINVALUE (%)" #: commands/sequence.c:1563 #, c-format -msgid "RESTART value (%lld) cannot be greater than MAXVALUE (%lld)" -msgstr "Значення RESTART (%lld) не може бути більшим за MAXVALUE (%lld)" +msgid "RESTART value (%) cannot be greater than MAXVALUE (%)" +msgstr "Значення RESTART (%) не може бути більшим ніж MAXVALUE (%)" #: commands/sequence.c:1574 #, c-format -msgid "CACHE (%lld) must be greater than zero" -msgstr "CACHE (%lld) повинно бути більше нуля" +msgid "CACHE (%) must be greater than zero" +msgstr "CACHE (%) має бути більше нуля" #: commands/sequence.c:1610 #, c-format @@ -10097,13 +10321,13 @@ msgstr "послідовність повинна бути в тій самій msgid "cannot change ownership of identity sequence" msgstr "змінити власника послідовності ідентифікації не можна" -#: commands/sequence.c:1671 commands/tablecmds.c:14384 -#: commands/tablecmds.c:17078 +#: commands/sequence.c:1671 commands/tablecmds.c:16136 +#: commands/tablecmds.c:18974 #, c-format msgid "Sequence \"%s\" is linked to table \"%s\"." msgstr "Послідовність \"%s\" зв'язана з таблицею \"%s\"." -#: commands/statscmds.c:106 commands/statscmds.c:115 tcop/utility.c:1883 +#: commands/statscmds.c:106 commands/statscmds.c:115 #, c-format msgid "only a single relation is allowed in CREATE STATISTICS" msgstr "в CREATE STATISTICS можна вказати лише одне відношення" @@ -10113,111 +10337,116 @@ msgstr "в CREATE STATISTICS можна вказати лише одне від msgid "cannot define statistics for relation \"%s\"" msgstr "визначити статистику відношення \"%s\" не можна" -#: commands/statscmds.c:187 +#: commands/statscmds.c:208 #, c-format msgid "statistics object \"%s\" already exists, skipping" msgstr "об'єкт статистики \"%s\" вже існує, пропускається" -#: commands/statscmds.c:195 +#: commands/statscmds.c:216 #, c-format msgid "statistics object \"%s\" already exists" msgstr "об'єкт статистики \"%s\" вже існує" -#: commands/statscmds.c:206 +#: commands/statscmds.c:227 #, c-format msgid "cannot have more than %d columns in statistics" msgstr "в статистиці не може бути більше ніж %d стовпців" -#: commands/statscmds.c:247 commands/statscmds.c:270 commands/statscmds.c:304 +#: commands/statscmds.c:268 commands/statscmds.c:297 commands/statscmds.c:337 #, c-format msgid "statistics creation on system columns is not supported" msgstr "створення статистики для системних стовпців не підтримується" -#: commands/statscmds.c:254 commands/statscmds.c:277 +#: commands/statscmds.c:274 commands/statscmds.c:303 commands/statscmds.c:343 +#, c-format +msgid "statistics creation on virtual generated columns is not supported" +msgstr "створення статистики для віртуальних генерованих стовпців не підтримується" + +#: commands/statscmds.c:281 commands/statscmds.c:310 #, c-format msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class" msgstr "стовпець \"%s\" не можна використати в статистиці, тому що для його типу %s не визначений клас оператора (btree) за замовчуванням" -#: commands/statscmds.c:321 +#: commands/statscmds.c:360 #, c-format msgid "expression cannot be used in multivariate statistics because its type %s has no default btree operator class" msgstr "вираз не може використовуватись у багатоваріативній статистиці, тому що його тип %s немає визначеного класу оператора btree за замовчуванням" -#: commands/statscmds.c:342 +#: commands/statscmds.c:381 #, c-format msgid "when building statistics on a single expression, statistics kinds may not be specified" msgstr "при побудові статистики для одного виразу види статистики можуть не вказуватись" -#: commands/statscmds.c:371 +#: commands/statscmds.c:410 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "нерозпізнаний вид статистики \"%s\"" -#: commands/statscmds.c:400 +#: commands/statscmds.c:439 #, c-format msgid "extended statistics require at least 2 columns" msgstr "для розширеної статистики потрібно мінімум 2 стовпці" -#: commands/statscmds.c:418 +#: commands/statscmds.c:457 #, c-format msgid "duplicate column name in statistics definition" msgstr "дублювання імені стовпця у визначенні статистики" -#: commands/statscmds.c:453 +#: commands/statscmds.c:492 #, c-format msgid "duplicate expression in statistics definition" msgstr "дублікат виразу у визначенні статистики" -#: commands/statscmds.c:628 commands/tablecmds.c:8597 +#: commands/statscmds.c:667 commands/tablecmds.c:8939 #, c-format msgid "statistics target %d is too low" msgstr "мета статистики занадто мала %d" -#: commands/statscmds.c:636 commands/tablecmds.c:8605 +#: commands/statscmds.c:675 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "мета статистики знижується до %d" -#: commands/statscmds.c:660 +#: commands/statscmds.c:699 #, c-format msgid "statistics object \"%s.%s\" does not exist, skipping" msgstr "об'єкт статистики \"%s.%s\" не існує, пропускається" -#: commands/subscriptioncmds.c:275 commands/subscriptioncmds.c:372 -#, c-format -msgid "unrecognized subscription parameter: \"%s\"" -msgstr "нерозпізнаний параметр підписки: \"%s\"" - -#: commands/subscriptioncmds.c:340 replication/pgoutput/pgoutput.c:397 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:411 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "нерозпізнане значення походження: \"%s\"" -#: commands/subscriptioncmds.c:363 +#: commands/subscriptioncmds.c:354 #, c-format msgid "invalid WAL location (LSN): %s" msgstr "неприпустиме розташування WAL (LSN): %s" +#: commands/subscriptioncmds.c:363 +#, c-format +msgid "unrecognized subscription parameter: \"%s\"" +msgstr "нерозпізнаний параметр підписки: \"%s\"" + #. translator: both %s are strings of the form "option = value" -#: commands/subscriptioncmds.c:387 commands/subscriptioncmds.c:394 -#: commands/subscriptioncmds.c:401 commands/subscriptioncmds.c:423 -#: commands/subscriptioncmds.c:439 +#: commands/subscriptioncmds.c:378 commands/subscriptioncmds.c:385 +#: commands/subscriptioncmds.c:392 commands/subscriptioncmds.c:414 +#: commands/subscriptioncmds.c:430 #, c-format msgid "%s and %s are mutually exclusive options" msgstr "%s та %s є взаємовиключними опціями" #. translator: both %s are strings of the form "option = value" -#: commands/subscriptioncmds.c:429 commands/subscriptioncmds.c:445 +#: commands/subscriptioncmds.c:420 commands/subscriptioncmds.c:436 #, c-format msgid "subscription with %s must also set %s" msgstr "підписка з %s повинна також встановити %s" -#: commands/subscriptioncmds.c:506 +#: commands/subscriptioncmds.c:466 #, c-format msgid "could not receive list of publications from the publisher: %s" msgstr "не вдалося отримати список публікацій з сервера публікації: %s" -#: commands/subscriptioncmds.c:538 +#: commands/subscriptioncmds.c:498 #, c-format msgid "publication %s does not exist on the publisher" msgid_plural "publications %s do not exist on the publisher" @@ -10226,136 +10455,165 @@ msgstr[1] "публікацій %s не існує на сервері публ msgstr[2] "публікацій %s не існує на сервері публікації" msgstr[3] "публікацій %s не існує на сервері публікації" -#: commands/subscriptioncmds.c:626 +#: commands/subscriptioncmds.c:586 #, c-format msgid "permission denied to create subscription" msgstr "немає дозволу для створення підписки" -#: commands/subscriptioncmds.c:627 +#: commands/subscriptioncmds.c:587 #, c-format msgid "Only roles with privileges of the \"%s\" role may create subscriptions." msgstr "Тільки ролі з правами \"%s\" можуть створювати підписки." -#: commands/subscriptioncmds.c:758 commands/subscriptioncmds.c:891 -#: commands/subscriptioncmds.c:1524 replication/logical/tablesync.c:1345 -#: replication/logical/worker.c:4503 +#: commands/subscriptioncmds.c:718 commands/subscriptioncmds.c:852 +#: commands/subscriptioncmds.c:1594 #, c-format -msgid "could not connect to the publisher: %s" -msgstr "не вдалося підключитись до сервера публікації: %s" +msgid "subscription \"%s\" could not connect to the publisher: %s" +msgstr "підписка \"%s\" не змогла підключитися до видавця: %s" -#: commands/subscriptioncmds.c:829 +#: commands/subscriptioncmds.c:790 #, c-format msgid "created replication slot \"%s\" on publisher" msgstr "на сервері публікації створений слот реплікації \"%s\"" -#: commands/subscriptioncmds.c:841 +#: commands/subscriptioncmds.c:802 #, c-format msgid "subscription was created, but is not connected" msgstr "підписка була створена, але не підключена" -#: commands/subscriptioncmds.c:842 +#: commands/subscriptioncmds.c:803 #, c-format msgid "To initiate replication, you must manually create the replication slot, enable the subscription, and refresh the subscription." msgstr "Щоб ініціювати реплікацію, необхідно вручну створити слот реплікації, підключити підписку і оновити підписку." -#: commands/subscriptioncmds.c:1109 commands/subscriptioncmds.c:1590 -#: commands/subscriptioncmds.c:1973 utils/cache/lsyscache.c:3684 +#: commands/subscriptioncmds.c:1070 +#, c-format +msgid "cannot set option \"%s\" for enabled subscription" +msgstr "не можна встановити опцію \"%s\" для увімкненої підписки" + +#: commands/subscriptioncmds.c:1084 +#, c-format +msgid "cannot set option \"%s\" for a subscription that does not have a slot name" +msgstr "не може задати параметр \"%s\" для підписки, яка не має назви слоту" + +#: commands/subscriptioncmds.c:1127 commands/subscriptioncmds.c:1665 +#: commands/subscriptioncmds.c:2046 utils/cache/lsyscache.c:3824 #, c-format msgid "subscription \"%s\" does not exist" msgstr "підписка \"%s\" не існує" -#: commands/subscriptioncmds.c:1166 commands/subscriptioncmds.c:1245 +#: commands/subscriptioncmds.c:1185 #, c-format msgid "cannot set %s for enabled subscription" msgstr "неможливо встановити %s для увімкненої підписки" -#: commands/subscriptioncmds.c:1233 +#: commands/subscriptioncmds.c:1270 #, c-format -msgid "cannot set option \"%s\" for a subscription that does not have a slot name" -msgstr "не може задати параметр \"%s\" для підписки, яка не має назви слоту" +msgid "\"slot_name\" and \"two_phase\" cannot be altered at the same time" +msgstr "\"slot_name\" та \"two_phase\" не можна змінити одночасно" + +#: commands/subscriptioncmds.c:1286 +#, c-format +msgid "cannot alter \"two_phase\" when logical replication worker is still running" +msgstr "не можна змінити \"two_phase\", коли працівник логічної реплікації ще виконується" + +#: commands/subscriptioncmds.c:1287 +#, c-format +msgid "Try again after some time." +msgstr "Спробуйте знову через деякий час." + +#: commands/subscriptioncmds.c:1300 +#, c-format +msgid "cannot disable \"two_phase\" when prepared transactions exist" +msgstr "не можна вимкнути \"two_phase\", коли існують підготовлені транзакції" + +#: commands/subscriptioncmds.c:1301 +#, c-format +msgid "Resolve these transactions and try again." +msgstr "Розв'яжіть ці транзакції та спробуйте знову." -#: commands/subscriptioncmds.c:1279 +#: commands/subscriptioncmds.c:1348 #, c-format msgid "cannot enable subscription that does not have a slot name" msgstr "увімкнути підписку, для якої не задано ім'я слота, не можна" -#: commands/subscriptioncmds.c:1323 commands/subscriptioncmds.c:1374 +#: commands/subscriptioncmds.c:1392 commands/subscriptioncmds.c:1443 #, c-format msgid "ALTER SUBSCRIPTION with refresh is not allowed for disabled subscriptions" msgstr "ALTER SUBSCRIPTION з оновленням для відключених підписок не допускається" -#: commands/subscriptioncmds.c:1324 +#: commands/subscriptioncmds.c:1393 #, c-format msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)." msgstr "Використайте ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)." -#: commands/subscriptioncmds.c:1333 commands/subscriptioncmds.c:1388 +#: commands/subscriptioncmds.c:1402 commands/subscriptioncmds.c:1457 #, c-format msgid "ALTER SUBSCRIPTION with refresh and copy_data is not allowed when two_phase is enabled" msgstr "ALTER SUBSCRIPTION з параметрами refresh і copy_data не допускається, коли two_phase ввімкнено" -#: commands/subscriptioncmds.c:1334 +#: commands/subscriptioncmds.c:1403 #, c-format msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION with refresh = false, or with copy_data = false, or use DROP/CREATE SUBSCRIPTION." msgstr "Використайте ALTER SUBSCRIPTION ... SET PUBLICATION з параметрами refresh або copy_data, які дорівнюють false, або використайте DROP/CREATE SUBSCRIPTION." #. translator: %s is an SQL ALTER command -#: commands/subscriptioncmds.c:1390 +#: commands/subscriptioncmds.c:1459 #, c-format msgid "Use %s with refresh = false, or with copy_data = false, or use DROP/CREATE SUBSCRIPTION." msgstr "Використовуйте %s з refresh = false, або з copy_data = false, або використовуйте DROP/CREATE SUBSCRIPTION." -#: commands/subscriptioncmds.c:1412 +#: commands/subscriptioncmds.c:1481 #, c-format msgid "ALTER SUBSCRIPTION ... REFRESH is not allowed for disabled subscriptions" msgstr "ALTER SUBSCRIPTION ... REFRESH для відключених підписок не допускається" -#: commands/subscriptioncmds.c:1437 +#: commands/subscriptioncmds.c:1506 #, c-format msgid "ALTER SUBSCRIPTION ... REFRESH with copy_data is not allowed when two_phase is enabled" msgstr "ALTER SUBSCRIPTION ... REFRESH з параметром copy_data не допускається, коли two_phase ввімкнено" -#: commands/subscriptioncmds.c:1438 +#: commands/subscriptioncmds.c:1507 #, c-format msgid "Use ALTER SUBSCRIPTION ... REFRESH with copy_data = false, or use DROP/CREATE SUBSCRIPTION." msgstr "Використайте ALTER SUBSCRIPTION ... REFRESH з параметром copy_data, який дорівнює false, або використайте DROP/CREATE SUBSCRIPTION." -#: commands/subscriptioncmds.c:1473 +#: commands/subscriptioncmds.c:1542 #, c-format msgid "skip WAL location (LSN %X/%X) must be greater than origin LSN %X/%X" msgstr "пропустити розташування WAL (LSN %X/%X) повинно бути більше, ніж origin LSN %X/%X" -#: commands/subscriptioncmds.c:1594 +#: commands/subscriptioncmds.c:1669 #, c-format msgid "subscription \"%s\" does not exist, skipping" msgstr "підписка \"%s\" не існує, пропускається" -#: commands/subscriptioncmds.c:1863 +#: commands/subscriptioncmds.c:1936 #, c-format msgid "dropped replication slot \"%s\" on publisher" msgstr "видалено слот реплікації \"%s\" на сервері публікації" -#: commands/subscriptioncmds.c:1872 commands/subscriptioncmds.c:1880 +#: commands/subscriptioncmds.c:1945 commands/subscriptioncmds.c:1953 #, c-format msgid "could not drop replication slot \"%s\" on publisher: %s" msgstr "не вдалося видалити слот реплікації \"%s\" на сервері публікації: %s" -#: commands/subscriptioncmds.c:2005 +#: commands/subscriptioncmds.c:2078 #, c-format msgid "subscription with OID %u does not exist" msgstr "підписки %u з OID не існує" -#: commands/subscriptioncmds.c:2076 commands/subscriptioncmds.c:2201 +#: commands/subscriptioncmds.c:2152 commands/subscriptioncmds.c:2276 #, c-format msgid "could not receive list of replicated tables from the publisher: %s" msgstr "не вдалося отримати список реплікованих таблиць із сервера публікації: %s" -#: commands/subscriptioncmds.c:2112 +#: commands/subscriptioncmds.c:2188 #, c-format msgid "subscription \"%s\" requested copy_data with origin = NONE but might copy data that had a different origin" msgstr "підписка \"%s\" запросив copy_data зі походженням = NONE, але може скопіювати дані, що мають інше походження" -#: commands/subscriptioncmds.c:2114 +#: commands/subscriptioncmds.c:2190 #, c-format msgid "The subscription being created subscribes to a publication (%s) that contains tables that are written to by other subscriptions." msgid_plural "The subscription being created subscribes to publications (%s) that contain tables that are written to by other subscriptions." @@ -10364,1554 +10622,1681 @@ msgstr[1] "Створювана підписка підписується на msgstr[2] "Створювана підписка підписується на публікації (%s), яка містить таблиці, до яких записуються інші підписки." msgstr[3] "Створювана підписка підписується на публікації (%s), яка містить таблиці, до яких записуються інші підписки." -#: commands/subscriptioncmds.c:2117 +#: commands/subscriptioncmds.c:2193 #, c-format msgid "Verify that initial data copied from the publisher tables did not come from other origins." msgstr "Переконайтеся, що вихідні дані, скопійовані з таблиць публікатора, не були отримані з інших джерел." -#: commands/subscriptioncmds.c:2223 replication/logical/tablesync.c:906 -#: replication/pgoutput/pgoutput.c:1117 +#: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 +#: replication/pgoutput/pgoutput.c:1185 #, c-format msgid "cannot use different column lists for table \"%s.%s\" in different publications" msgstr "використовувати різні списки стовпців для таблиці \"%s.%s\" в різних публікаціях не можна" -#: commands/subscriptioncmds.c:2273 +#: commands/subscriptioncmds.c:2348 #, c-format msgid "could not connect to publisher when attempting to drop replication slot \"%s\": %s" msgstr "не вдалося з'єднатись з сервером публікації під час спроби видалити слот реплікації \"%s\": %s" #. translator: %s is an SQL ALTER command -#: commands/subscriptioncmds.c:2276 +#: commands/subscriptioncmds.c:2351 #, c-format msgid "Use %s to disable the subscription, and then use %s to disassociate it from the slot." msgstr "Використовуйте %s, щоб вимкнути підписку, а потім використайте %s, щоб від'єднати її від слоту." -#: commands/subscriptioncmds.c:2307 +#: commands/subscriptioncmds.c:2382 #, c-format msgid "publication name \"%s\" used more than once" msgstr "ім'я публікації \"%s\" використовується більше ніж один раз" -#: commands/subscriptioncmds.c:2351 +#: commands/subscriptioncmds.c:2426 #, c-format msgid "publication \"%s\" is already in subscription \"%s\"" msgstr "публікація \"%s\" вже в підписці \"%s\"" -#: commands/subscriptioncmds.c:2365 +#: commands/subscriptioncmds.c:2440 #, c-format msgid "publication \"%s\" is not in subscription \"%s\"" msgstr "публікація \"%s\" не знаходиться в підписці \"%s\"" -#: commands/subscriptioncmds.c:2376 +#: commands/subscriptioncmds.c:2451 #, c-format msgid "cannot drop all the publications from a subscription" msgstr "не можна видалити всі публікації з підписки" -#: commands/subscriptioncmds.c:2433 +#: commands/subscriptioncmds.c:2508 #, c-format msgid "%s requires a Boolean value or \"parallel\"" msgstr "%s потребує логічне значення або \"parallel\"" -#: commands/tablecmds.c:255 commands/tablecmds.c:297 +#: commands/tablecmds.c:258 commands/tablecmds.c:300 #, c-format msgid "table \"%s\" does not exist" msgstr "таблиця \"%s\" не існує" -#: commands/tablecmds.c:256 commands/tablecmds.c:298 +#: commands/tablecmds.c:259 commands/tablecmds.c:301 #, c-format msgid "table \"%s\" does not exist, skipping" msgstr "таблиця \"%s\" не існує, пропускається" -#: commands/tablecmds.c:258 commands/tablecmds.c:300 +#: commands/tablecmds.c:261 commands/tablecmds.c:303 msgid "Use DROP TABLE to remove a table." msgstr "Використайте DROP TABLE для видалення таблиці." -#: commands/tablecmds.c:261 +#: commands/tablecmds.c:264 #, c-format msgid "sequence \"%s\" does not exist" msgstr "послідовність \"%s\" не існує" -#: commands/tablecmds.c:262 +#: commands/tablecmds.c:265 #, c-format msgid "sequence \"%s\" does not exist, skipping" msgstr "послідовність \"%s\" не існує, пропускається" -#: commands/tablecmds.c:264 +#: commands/tablecmds.c:267 msgid "Use DROP SEQUENCE to remove a sequence." msgstr "Використайте DROP SEQUENCE, щоб видалити послідовність." -#: commands/tablecmds.c:267 +#: commands/tablecmds.c:270 #, c-format msgid "view \"%s\" does not exist" msgstr "подання \"%s\" не існує" -#: commands/tablecmds.c:268 +#: commands/tablecmds.c:271 #, c-format msgid "view \"%s\" does not exist, skipping" msgstr "подання \"%s\" не існує, пропускається" -#: commands/tablecmds.c:270 +#: commands/tablecmds.c:273 msgid "Use DROP VIEW to remove a view." msgstr "Використайте DROP VIEW для видалення подання." -#: commands/tablecmds.c:273 +#: commands/tablecmds.c:276 #, c-format msgid "materialized view \"%s\" does not exist" msgstr "матеріалізоване подання \"%s\" не існує" -#: commands/tablecmds.c:274 +#: commands/tablecmds.c:277 #, c-format msgid "materialized view \"%s\" does not exist, skipping" msgstr "матеріалізоване подання \"%s\" не існує, пропускається" -#: commands/tablecmds.c:276 +#: commands/tablecmds.c:279 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view." msgstr "Використайте DROP MATERIALIZED VIEW, щоб видалити матеріалізоване подання." -#: commands/tablecmds.c:279 commands/tablecmds.c:303 commands/tablecmds.c:19617 -#: parser/parse_utilcmd.c:2251 +#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21651 +#: parser/parse_utilcmd.c:2428 #, c-format msgid "index \"%s\" does not exist" msgstr "індекс \"%s\" не існує" -#: commands/tablecmds.c:280 commands/tablecmds.c:304 +#: commands/tablecmds.c:283 commands/tablecmds.c:307 #, c-format msgid "index \"%s\" does not exist, skipping" msgstr "індекс \"%s\" не існує, пропускається" -#: commands/tablecmds.c:282 commands/tablecmds.c:306 +#: commands/tablecmds.c:285 commands/tablecmds.c:309 msgid "Use DROP INDEX to remove an index." msgstr "Використайте DROP INDEX, щоб видалити індекс." -#: commands/tablecmds.c:287 +#: commands/tablecmds.c:290 #, c-format msgid "\"%s\" is not a type" msgstr "\"%s\" не є типом" -#: commands/tablecmds.c:288 +#: commands/tablecmds.c:291 msgid "Use DROP TYPE to remove a type." msgstr "Використайте DROP TYPE, щоб видалити тип." -#: commands/tablecmds.c:291 commands/tablecmds.c:14223 -#: commands/tablecmds.c:16783 +#: commands/tablecmds.c:294 commands/tablecmds.c:15975 +#: commands/tablecmds.c:18676 #, c-format msgid "foreign table \"%s\" does not exist" msgstr "зовнішня таблиця \"%s\" не існує" -#: commands/tablecmds.c:292 +#: commands/tablecmds.c:295 #, c-format msgid "foreign table \"%s\" does not exist, skipping" msgstr "зовнішня таблиця \"%s\" не існує, пропускається" -#: commands/tablecmds.c:294 +#: commands/tablecmds.c:297 msgid "Use DROP FOREIGN TABLE to remove a foreign table." msgstr "Використайте DROP FOREIGN TABLE щоб видалити сторонню таблицю." -#: commands/tablecmds.c:717 +#: commands/tablecmds.c:802 #, c-format msgid "ON COMMIT can only be used on temporary tables" msgstr "ON COMMIT можна використовувати лише для тимчасових таблиць" -#: commands/tablecmds.c:748 +#: commands/tablecmds.c:819 +#, c-format +msgid "partitioned tables cannot be unlogged" +msgstr "секціоновані таблиці не можуть бути нежурнальованими" + +#: commands/tablecmds.c:839 #, c-format msgid "cannot create temporary table within security-restricted operation" msgstr "неможливо створити тимчасову таблицю в межах операції з обмеженням безпеки" -#: commands/tablecmds.c:784 commands/tablecmds.c:15642 +#: commands/tablecmds.c:875 commands/tablecmds.c:17400 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "відношення \"%s\" буде успадковуватись більш ніж один раз" -#: commands/tablecmds.c:1050 +#: commands/tablecmds.c:1133 #, c-format msgid "\"%s\" is not partitioned" msgstr "\"%s\" не секціоновано" -#: commands/tablecmds.c:1144 +#: commands/tablecmds.c:1227 #, c-format msgid "cannot partition using more than %d columns" msgstr "число стовпців в ключі секціонування не може перевищувати %d" -#: commands/tablecmds.c:1200 +#: commands/tablecmds.c:1283 #, c-format msgid "cannot create foreign partition of partitioned table \"%s\"" msgstr "не можна створити зовнішню секцію в секціонованій таблиці \"%s\"" -#: commands/tablecmds.c:1202 +#: commands/tablecmds.c:1285 #, c-format msgid "Table \"%s\" contains indexes that are unique." msgstr "Таблиця \"%s\" містить індекси, які унікальні." -#: commands/tablecmds.c:1321 commands/tablecmds.c:13239 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14952 #, c-format msgid "too many array dimensions" msgstr "занадто багато вимірів масиву" -#: commands/tablecmds.c:1326 parser/parse_clause.c:774 -#: parser/parse_relation.c:1912 +#: commands/tablecmds.c:1420 parser/parse_clause.c:772 +#: parser/parse_relation.c:1929 #, c-format msgid "column \"%s\" cannot be declared SETOF" msgstr "стовпець\"%s\" не може бути оголошений SETOF" -#: commands/tablecmds.c:1472 +#: commands/tablecmds.c:1549 #, c-format msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects" msgstr "DROP INDEX CONCURRENTLY не підтримує видалення кількох об'єктів" -#: commands/tablecmds.c:1476 +#: commands/tablecmds.c:1553 #, c-format msgid "DROP INDEX CONCURRENTLY does not support CASCADE" msgstr "DROP INDEX CONCURRENTLY не підтримує режим CASCADE" -#: commands/tablecmds.c:1580 +#: commands/tablecmds.c:1657 #, c-format msgid "cannot drop partitioned index \"%s\" concurrently" msgstr "неможливо видалити секціонований індекс \"%s\" паралельно" -#: commands/tablecmds.c:1868 +#: commands/tablecmds.c:1945 #, c-format msgid "cannot truncate only a partitioned table" msgstr "скоротити тільки секціоновану таблицю не можна" -#: commands/tablecmds.c:1869 +#: commands/tablecmds.c:1946 #, c-format msgid "Do not specify the ONLY keyword, or use TRUNCATE ONLY on the partitions directly." msgstr "Не вказуйте ключове слово ONLY або використайте TRUNCATE ONLY безпосередньо для секцій." -#: commands/tablecmds.c:1942 +#: commands/tablecmds.c:2019 #, c-format msgid "truncate cascades to table \"%s\"" msgstr "скорочення поширюється на таблицю \"%s\"" -#: commands/tablecmds.c:2303 +#: commands/tablecmds.c:2380 #, c-format msgid "cannot truncate foreign table \"%s\"" msgstr "скоротити зовнішню таблицю \"%s\" не можна" -#: commands/tablecmds.c:2360 +#: commands/tablecmds.c:2437 #, c-format msgid "cannot truncate temporary tables of other sessions" msgstr "тимчасові таблиці інших сеансів не можна скоротити" -#: commands/tablecmds.c:2589 commands/tablecmds.c:15539 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17297 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "успадкування від секціонованої таблиці \"%s\" не допускається" -#: commands/tablecmds.c:2594 +#: commands/tablecmds.c:2680 #, c-format msgid "cannot inherit from partition \"%s\"" msgstr "успадкування від розділу \"%s\" не допускається" -#: commands/tablecmds.c:2602 parser/parse_utilcmd.c:2481 -#: parser/parse_utilcmd.c:2623 +#: commands/tablecmds.c:2688 parser/parse_utilcmd.c:2699 +#: parser/parse_utilcmd.c:2887 #, c-format msgid "inherited relation \"%s\" is not a table or foreign table" msgstr "успадковане відношення \"%s\" не є таблицею або сторонньою таблицею" -#: commands/tablecmds.c:2614 +#: commands/tablecmds.c:2700 #, c-format msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "створити тимчасове відношення як секцію постійного відношення\"%s\" не можна" -#: commands/tablecmds.c:2623 commands/tablecmds.c:15518 +#: commands/tablecmds.c:2709 commands/tablecmds.c:17276 #, c-format msgid "cannot inherit from temporary relation \"%s\"" msgstr "тимчасове відношення \"%s\" не може успадковуватись" -#: commands/tablecmds.c:2633 commands/tablecmds.c:15526 +#: commands/tablecmds.c:2719 commands/tablecmds.c:17284 #, c-format msgid "cannot inherit from temporary relation of another session" msgstr "успадкування від тимчасового відношення іншого сеансу неможливе" -#: commands/tablecmds.c:2774 commands/tablecmds.c:2828 -#: commands/tablecmds.c:12922 parser/parse_utilcmd.c:1265 -#: parser/parse_utilcmd.c:1308 parser/parse_utilcmd.c:1735 -#: parser/parse_utilcmd.c:1843 +#: commands/tablecmds.c:2874 commands/tablecmds.c:2928 +#: commands/tablecmds.c:14635 parser/parse_utilcmd.c:1440 +#: parser/parse_utilcmd.c:1484 parser/parse_utilcmd.c:1916 +#: parser/parse_utilcmd.c:2024 #, c-format msgid "cannot convert whole-row table reference" msgstr "перетворити посилання на тип усього рядка таблиці не можна" -#: commands/tablecmds.c:2775 parser/parse_utilcmd.c:1266 +#: commands/tablecmds.c:2875 parser/parse_utilcmd.c:1441 #, c-format msgid "Generation expression for column \"%s\" contains a whole-row reference to table \"%s\"." msgstr "Вираз генерації для стовпця \"%s\" містить посилання на весь рядок на таблицю \"%s\"." -#: commands/tablecmds.c:2829 parser/parse_utilcmd.c:1309 +#: commands/tablecmds.c:2929 parser/parse_utilcmd.c:1485 #, c-format msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"." msgstr "Обмеження \"%s\" посилається на тип усього рядка в таблиці \"%s\"." -#: commands/tablecmds.c:2939 commands/tablecmds.c:3210 +#: commands/tablecmds.c:3051 commands/tablecmds.c:3345 #, c-format msgid "column \"%s\" inherits from generated column but specifies default" msgstr "стовпець \"%s\" успадковується із згенерованого стовпця, але вказує за замовчуванням" -#: commands/tablecmds.c:2944 commands/tablecmds.c:3215 +#: commands/tablecmds.c:3056 commands/tablecmds.c:3350 #, c-format msgid "column \"%s\" inherits from generated column but specifies identity" msgstr "стовпець \"%s\" успадковується із згенерованого стовпця, але вказує ідентичність" -#: commands/tablecmds.c:2952 commands/tablecmds.c:3223 +#: commands/tablecmds.c:3064 commands/tablecmds.c:3358 #, c-format msgid "child column \"%s\" specifies generation expression" msgstr "дочірній стовпець \"%s\" визначає вираз генерації" -#: commands/tablecmds.c:2954 commands/tablecmds.c:3225 +#: commands/tablecmds.c:3066 commands/tablecmds.c:3360 #, c-format msgid "A child table column cannot be generated unless its parent column is." msgstr "Стовпець дочірньої таблиці не може бути створений, якщо не створено стовпець батьківської таблиці." -#: commands/tablecmds.c:3000 +#: commands/tablecmds.c:3072 commands/tablecmds.c:3366 +#: commands/tablecmds.c:17562 +#, c-format +msgid "column \"%s\" inherits from generated column of different kind" +msgstr "стовпець \"%s\" успадковує від генерованого стовпця іншого типу" + +#: commands/tablecmds.c:3074 commands/tablecmds.c:3368 +#: commands/tablecmds.c:17563 +#, c-format +msgid "Parent column is %s, child column is %s." +msgstr "Батьківський стовпець - %s, дочірній стовпець - %s." + +#: commands/tablecmds.c:3121 #, c-format msgid "column \"%s\" inherits conflicting generation expressions" msgstr "стовпець \"%s\" успадковує конфліктуючи вирази генерації" -#: commands/tablecmds.c:3002 +#: commands/tablecmds.c:3123 #, c-format msgid "To resolve the conflict, specify a generation expression explicitly." msgstr "Щоб вирішити цей конфлікт, явно вкажіть вираз генерації." -#: commands/tablecmds.c:3006 +#: commands/tablecmds.c:3127 #, c-format msgid "column \"%s\" inherits conflicting default values" msgstr "стовпець \"%s\" успадковує конфліктні значення за замовчуванням" -#: commands/tablecmds.c:3008 +#: commands/tablecmds.c:3129 #, c-format msgid "To resolve the conflict, specify a default explicitly." msgstr "Для усунення конфлікту вкажіть бажане значення за замовчуванням." -#: commands/tablecmds.c:3063 +#: commands/tablecmds.c:3196 #, c-format msgid "check constraint name \"%s\" appears multiple times but with different expressions" msgstr "ім'я перевірочного обмеження \"%s\" з'являється декілька разів, але з різними виразами" -#: commands/tablecmds.c:3114 +#: commands/tablecmds.c:3249 #, c-format msgid "merging column \"%s\" with inherited definition" msgstr "злиття стовпця \"%s\" з успадкованим визначенням" -#: commands/tablecmds.c:3118 +#: commands/tablecmds.c:3253 #, c-format msgid "moving and merging column \"%s\" with inherited definition" msgstr "переміщення і злиття стовпця \"%s\" з успадкованим визначенням" -#: commands/tablecmds.c:3119 +#: commands/tablecmds.c:3254 #, c-format msgid "User-specified column moved to the position of the inherited column." msgstr "Визначений користувачем стовпець переміщений в позицію успадкованого стовпця." -#: commands/tablecmds.c:3131 +#: commands/tablecmds.c:3266 #, c-format msgid "column \"%s\" has a type conflict" msgstr "конфлікт типів в стовпці \"%s\"" -#: commands/tablecmds.c:3133 commands/tablecmds.c:3167 -#: commands/tablecmds.c:3183 commands/tablecmds.c:3290 -#: commands/tablecmds.c:3323 commands/tablecmds.c:3339 -#: parser/parse_coerce.c:2155 parser/parse_coerce.c:2175 -#: parser/parse_coerce.c:2195 parser/parse_coerce.c:2216 -#: parser/parse_coerce.c:2271 parser/parse_coerce.c:2305 -#: parser/parse_coerce.c:2381 parser/parse_coerce.c:2412 -#: parser/parse_coerce.c:2451 parser/parse_coerce.c:2518 -#: parser/parse_param.c:223 +#: commands/tablecmds.c:3268 commands/tablecmds.c:3302 +#: commands/tablecmds.c:3318 commands/tablecmds.c:3434 +#: commands/tablecmds.c:3462 commands/tablecmds.c:3478 +#: parser/parse_coerce.c:2190 parser/parse_coerce.c:2210 +#: parser/parse_coerce.c:2230 parser/parse_coerce.c:2251 +#: parser/parse_coerce.c:2306 parser/parse_coerce.c:2340 +#: parser/parse_coerce.c:2416 parser/parse_coerce.c:2447 +#: parser/parse_coerce.c:2486 parser/parse_coerce.c:2553 +#: parser/parse_param.c:224 #, c-format msgid "%s versus %s" msgstr "%s проти %s" -#: commands/tablecmds.c:3145 +#: commands/tablecmds.c:3280 #, c-format msgid "column \"%s\" has a collation conflict" msgstr "конфлікт правил сортування в стовпці \"%s\"" -#: commands/tablecmds.c:3147 commands/tablecmds.c:3309 -#: commands/tablecmds.c:7057 +#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4783 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\" проти \"%s\"" -#: commands/tablecmds.c:3165 +#: commands/tablecmds.c:3300 #, c-format msgid "column \"%s\" has a storage parameter conflict" msgstr "конфлікт параметрів зберігання в стовпці \"%s\"" -#: commands/tablecmds.c:3181 commands/tablecmds.c:3337 +#: commands/tablecmds.c:3316 commands/tablecmds.c:3476 #, c-format msgid "column \"%s\" has a compression method conflict" msgstr "конфлікт методів стиснення в стовпці \"%s\"" -#: commands/tablecmds.c:3276 +#: commands/tablecmds.c:3420 #, c-format msgid "merging multiple inherited definitions of column \"%s\"" msgstr "злиття декількох успадкованих визначень стовпця \"%s\"" -#: commands/tablecmds.c:3288 +#: commands/tablecmds.c:3432 #, c-format msgid "inherited column \"%s\" has a type conflict" msgstr "конфлікт типів в успадкованому стовпці \"%s\"" -#: commands/tablecmds.c:3307 +#: commands/tablecmds.c:3446 #, c-format msgid "inherited column \"%s\" has a collation conflict" msgstr "конфлікт правил сортування в успадкованому стовпці \"%s\"" -#: commands/tablecmds.c:3321 +#: commands/tablecmds.c:3460 #, c-format msgid "inherited column \"%s\" has a storage parameter conflict" msgstr "конфлікт параметрів зберігання в успадкованому стовпці \"%s\"" -#: commands/tablecmds.c:3349 +#: commands/tablecmds.c:3488 #, c-format msgid "inherited column \"%s\" has a generation conflict" msgstr "конфлікт генерування в успадкованому стовпці \"%s\"" -#: commands/tablecmds.c:3580 +#: commands/tablecmds.c:3719 #, c-format msgid "cannot move temporary tables of other sessions" msgstr "переміщувати тимчасові таблиці інших сеансів не можна" -#: commands/tablecmds.c:3650 +#: commands/tablecmds.c:3792 #, c-format msgid "cannot rename column of typed table" msgstr "перейменувати стовпець типізованої таблиці не можна" -#: commands/tablecmds.c:3669 +#: commands/tablecmds.c:3811 #, c-format msgid "cannot rename columns of relation \"%s\"" msgstr "перейменувати стовпці відношення %s не можна" -#: commands/tablecmds.c:3764 +#: commands/tablecmds.c:3906 #, c-format msgid "inherited column \"%s\" must be renamed in child tables too" msgstr "успадкований стовпець \"%s\" повинен бути перейменований в дочірніх таблицях також" -#: commands/tablecmds.c:3796 +#: commands/tablecmds.c:3938 #, c-format msgid "cannot rename system column \"%s\"" msgstr "не можна перейменувати системний стовпець \"%s\"" -#: commands/tablecmds.c:3811 +#: commands/tablecmds.c:3953 #, c-format msgid "cannot rename inherited column \"%s\"" msgstr "не можна перейменувати успадкований стовпець \"%s\"" -#: commands/tablecmds.c:3963 +#: commands/tablecmds.c:4108 #, c-format msgid "inherited constraint \"%s\" must be renamed in child tables too" msgstr "успадковане обмеження \"%s\" повинно бути перейменовано в дочірніх таблицях також" -#: commands/tablecmds.c:3970 +#: commands/tablecmds.c:4115 #, c-format msgid "cannot rename inherited constraint \"%s\"" msgstr "не можна перейменувати успадковане обмеження \"%s\"" #. translator: first %s is a SQL command, eg ALTER TABLE -#: commands/tablecmds.c:4267 +#: commands/tablecmds.c:4415 #, c-format 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:4276 +#: commands/tablecmds.c:4424 #, c-format msgid "cannot %s \"%s\" because it has pending trigger events" msgstr "не можна виконати %s \"%s\", тому що з цим об'єктом зв'язані очікуванні події тригерів" -#: commands/tablecmds.c:4302 +#: commands/tablecmds.c:4450 #, c-format msgid "cannot alter temporary tables of other sessions" msgstr "не можна змінювати тимчасові таблиці з інших сеансів" -#: commands/tablecmds.c:4775 +#: commands/tablecmds.c:4914 #, c-format msgid "cannot alter partition \"%s\" with an incomplete detach" msgstr "не можна змінити розділ \"%s\" з неповним відключенням" -#: commands/tablecmds.c:4979 commands/tablecmds.c:4994 +#: commands/tablecmds.c:5143 #, c-format msgid "cannot change persistence setting twice" msgstr "неможливо двічі змінити параметр стійкості" -#: commands/tablecmds.c:5015 +#: commands/tablecmds.c:5160 #, c-format msgid "cannot have multiple SET ACCESS METHOD subcommands" msgstr "неможливо мати декілька підкоманд SET ACCESS METHOD" -#: commands/tablecmds.c:5745 +#: commands/tablecmds.c:5894 #, c-format msgid "cannot rewrite system relation \"%s\"" msgstr "перезаписати системне відношення \"%s\" не можна" -#: commands/tablecmds.c:5751 +#: commands/tablecmds.c:5900 #, c-format msgid "cannot rewrite table \"%s\" used as a catalog table" msgstr "перезаписати таблицю \"%s\", що використовується як таблиця каталогу, не можна" -#: commands/tablecmds.c:5763 +#: commands/tablecmds.c:5912 #, c-format msgid "cannot rewrite temporary tables of other sessions" msgstr "неможливо перезаписати тимчасові таблиці інших сеансів" -#: commands/tablecmds.c:6258 +#: commands/tablecmds.c:6448 commands/tablecmds.c:6468 #, c-format msgid "column \"%s\" of relation \"%s\" contains null values" msgstr "стовпець \"%s\" відношення \"%s\" містить null значення" -#: commands/tablecmds.c:6275 +#: commands/tablecmds.c:6485 #, c-format msgid "check constraint \"%s\" of relation \"%s\" is violated by some row" msgstr "перевірка обмеження \"%s\" відношення \"%s\" порушується деяким рядком" -#: commands/tablecmds.c:6294 partitioning/partbounds.c:3387 +#: commands/tablecmds.c:6505 partitioning/partbounds.c:3387 #, c-format msgid "updated partition constraint for default partition \"%s\" would be violated by some row" msgstr "оновлене обмеження секції для секції за замовчуванням \"%s\" буде порушено деякими рядками" -#: commands/tablecmds.c:6300 +#: commands/tablecmds.c:6511 #, c-format msgid "partition constraint of relation \"%s\" is violated by some row" msgstr "обмеження секції відношення \"%s\" порушується деяким рядком" #. translator: %s is a group of some SQL keywords -#: commands/tablecmds.c:6565 +#: commands/tablecmds.c:6776 #, c-format msgid "ALTER action %s cannot be performed on relation \"%s\"" msgstr "Дію ALTER %s не можна виконати на відношенні \"%s\"" -#: commands/tablecmds.c:6820 commands/tablecmds.c:6827 +#: commands/tablecmds.c:7031 commands/tablecmds.c:7038 #, c-format msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it" msgstr "неможливо змінити тип \"%s\", тому що стовпець \"%s.%s\" використовує його" -#: commands/tablecmds.c:6834 +#: commands/tablecmds.c:7045 #, c-format msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type" msgstr "неможливо змінити сторонню таблицю \"%s\", тому що стовпець \"%s.%s\" використовує тип її рядка" -#: commands/tablecmds.c:6841 +#: commands/tablecmds.c:7052 #, c-format msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type" msgstr "неможливо змінити таблицю \"%s\", тому що стовпець \"%s.%s\" використовує тип її рядка" -#: commands/tablecmds.c:6897 +#: commands/tablecmds.c:7108 #, c-format msgid "cannot alter type \"%s\" because it is the type of a typed table" msgstr "неможливо змінити тип \"%s\", тому що це тип типізованої таблиці" -#: commands/tablecmds.c:6899 +#: commands/tablecmds.c:7110 #, c-format msgid "Use ALTER ... CASCADE to alter the typed tables too." msgstr "Щоб змінити типізовані таблиці, використайте також ALTER ... CASCADE." -#: commands/tablecmds.c:6945 +#: commands/tablecmds.c:7156 +#, c-format +msgid "type %s is the row type of another table" +msgstr "тип %s є типом рядка іншої таблиці" + +#: commands/tablecmds.c:7158 +#, c-format +msgid "A typed table must use a stand-alone composite type created with CREATE TYPE." +msgstr "Типізована таблиця повинна використовувати окремий складений тип, створений за допомогою CREATE TYPE." + +#: commands/tablecmds.c:7163 #, c-format msgid "type %s is not a composite type" msgstr "тип %s не є складеним" -#: commands/tablecmds.c:6972 +#: commands/tablecmds.c:7190 #, c-format msgid "cannot add column to typed table" msgstr "неможливо додати стовпець до типізованої таблиці" -#: commands/tablecmds.c:7020 +#: commands/tablecmds.c:7240 #, c-format msgid "cannot add column to a partition" msgstr "неможливо додати стовпець до розділу" -#: commands/tablecmds.c:7049 commands/tablecmds.c:15757 +#: commands/tablecmds.c:7269 commands/tablecmds.c:17518 #, c-format msgid "child table \"%s\" has different type for column \"%s\"" msgstr "дочірня таблиця \"%s\" має інший тип для стовпця \"%s\"" -#: commands/tablecmds.c:7055 commands/tablecmds.c:15763 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17524 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "дочірня таблиця \"%s\" має інше правило сортування для стовпця \"%s\"" -#: commands/tablecmds.c:7073 +#: commands/tablecmds.c:7293 #, c-format msgid "merging definition of column \"%s\" for child \"%s\"" msgstr "об'єднання визначення стовпця \"%s\" для нащадка \"%s\"" -#: commands/tablecmds.c:7126 +#: commands/tablecmds.c:7346 #, c-format msgid "cannot recursively add identity column to table that has child tables" msgstr "неможливо додати стовпець ідентифікації в таблицю, яка має дочірні таблиці" -#: commands/tablecmds.c:7339 +#: commands/tablecmds.c:7593 #, c-format msgid "column must be added to child tables too" msgstr "стовпець також повинен бути доданий до дочірніх таблиць" -#: commands/tablecmds.c:7417 +#: commands/tablecmds.c:7671 #, c-format msgid "column \"%s\" of relation \"%s\" already exists, skipping" msgstr "стовпець \"%s\" відношення \"%s\" вже існує, пропускається" -#: commands/tablecmds.c:7424 +#: commands/tablecmds.c:7678 #, c-format msgid "column \"%s\" of relation \"%s\" already exists" msgstr "стовпець \"%s\" відношення \"%s\" вже існує" -#: commands/tablecmds.c:7490 commands/tablecmds.c:12550 -#, c-format -msgid "cannot remove constraint from only the partitioned table when partitions exist" -msgstr "неможливо видалити обмеження тільки з секціонованої таблиці, коли існують секції" - -#: commands/tablecmds.c:7491 commands/tablecmds.c:7805 -#: commands/tablecmds.c:7983 commands/tablecmds.c:8090 -#: commands/tablecmds.c:8207 commands/tablecmds.c:9026 -#: commands/tablecmds.c:12551 -#, c-format -msgid "Do not specify the ONLY keyword." -msgstr "Не вказуйте ключове слово ONLY." - -#: commands/tablecmds.c:7527 commands/tablecmds.c:7731 -#: commands/tablecmds.c:7873 commands/tablecmds.c:8005 -#: commands/tablecmds.c:8134 commands/tablecmds.c:8228 -#: commands/tablecmds.c:8329 commands/tablecmds.c:8486 -#: commands/tablecmds.c:8639 commands/tablecmds.c:8720 -#: commands/tablecmds.c:8854 commands/tablecmds.c:12704 -#: commands/tablecmds.c:14246 commands/tablecmds.c:16872 +#: commands/tablecmds.c:7769 commands/tablecmds.c:7936 +#: commands/tablecmds.c:8137 commands/tablecmds.c:8268 +#: commands/tablecmds.c:8422 commands/tablecmds.c:8516 +#: commands/tablecmds.c:8619 commands/tablecmds.c:8815 +#: commands/tablecmds.c:8981 commands/tablecmds.c:9072 +#: commands/tablecmds.c:9206 commands/tablecmds.c:14407 +#: commands/tablecmds.c:15998 commands/tablecmds.c:18765 #, c-format msgid "cannot alter system column \"%s\"" msgstr "не можна змінити системний стовпець \"%s\"" -#: commands/tablecmds.c:7533 commands/tablecmds.c:7879 +#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 +#: commands/tablecmds.c:14168 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "стовпець \"%s\" відношення \"%s\" є стовпцем ідентифікації" -#: commands/tablecmds.c:7574 -#, c-format -msgid "column \"%s\" is in a primary key" -msgstr "стовпець \"%s\" входить до первинного ключа" - -#: commands/tablecmds.c:7579 -#, c-format -msgid "column \"%s\" is in index used as replica identity" -msgstr "стовпець \"%s\" в індексі, що використовується як ідентифікація репліки" - -#: commands/tablecmds.c:7602 +#: commands/tablecmds.c:7792 #, c-format msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "стовпець \"%s\" в батьківській таблиці позначений як NOT NULL" -#: commands/tablecmds.c:7802 commands/tablecmds.c:9510 +#: commands/tablecmds.c:8014 commands/tablecmds.c:10013 #, c-format msgid "constraint must be added to child tables too" msgstr "обмеження повинно бути додано у дочірні таблиці також" -#: commands/tablecmds.c:7803 +#: commands/tablecmds.c:8015 commands/tablecmds.c:8246 +#: commands/tablecmds.c:8378 commands/tablecmds.c:8495 +#: commands/tablecmds.c:9379 commands/tablecmds.c:12207 #, c-format -msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." -msgstr "Стовпець \"%s\" відношення \"%s\" вже не NOT NULL." +msgid "Do not specify the ONLY keyword." +msgstr "Не вказуйте ключове слово ONLY." -#: commands/tablecmds.c:7888 +#: commands/tablecmds.c:8152 #, c-format msgid "column \"%s\" of relation \"%s\" is a generated column" msgstr "стовпець \"%s\" відношення \"%s\" є згенерованим стовпцем" -#: commands/tablecmds.c:7982 +#: commands/tablecmds.c:8245 #, c-format msgid "cannot add identity to a column of only the partitioned table" msgstr "не може додати ідентифікатор до стовпця лише розділеної таблиці" -#: commands/tablecmds.c:7988 +#: commands/tablecmds.c:8251 #, c-format msgid "cannot add identity to a column of a partition" msgstr "не може додати ідентифікатор до стовпця розділу" -#: commands/tablecmds.c:8016 +#: commands/tablecmds.c:8279 #, c-format msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added" msgstr "стовпець \"%s\" відношення \"%s\" повинен бути оголошений як NOT NULL, щоб додати ідентифікацію" -#: commands/tablecmds.c:8022 +#: commands/tablecmds.c:8310 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "стовпець \"%s\" відношення \"%s\" вже є стовпцем ідентифікації" -#: commands/tablecmds.c:8028 +#: commands/tablecmds.c:8316 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "стовпець \"%s\" відношення \"%s\" вже має значення за замовчуванням" -#: commands/tablecmds.c:8089 +#: commands/tablecmds.c:8377 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "не можна змінювати стовпець ідентичності лише в розбитій на розділи таблиці" -#: commands/tablecmds.c:8095 +#: commands/tablecmds.c:8383 #, c-format msgid "cannot change identity column of a partition" msgstr "не можна змінити стовпець ідентичності розділу" -#: commands/tablecmds.c:8140 commands/tablecmds.c:8236 +#: commands/tablecmds.c:8428 commands/tablecmds.c:8524 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column" msgstr "стовпець \"%s\" відношення \"%s\" не є стовпцем ідентифікації" -#: commands/tablecmds.c:8206 +#: commands/tablecmds.c:8494 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "не можна вилучити ідентифікатор зі стовпця лише розбитої на розділи таблиці" -#: commands/tablecmds.c:8212 +#: commands/tablecmds.c:8500 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "не можна вилучити ідентифікатор зі стовпця розділу" -#: commands/tablecmds.c:8241 +#: commands/tablecmds.c:8529 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "стовпець \"%s\" відношення \"%s\" не є стовпцем ідентифікації, пропускається" -#: commands/tablecmds.c:8335 +#: commands/tablecmds.c:8626 commands/tablecmds.c:8836 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column" msgstr "стовпець \"%s\" відношення \"%s\" не є згенерованим стовпцем" -#: commands/tablecmds.c:8433 +#: commands/tablecmds.c:8637 +#, c-format +msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables with check constraints" +msgstr "ALTER TABLE / SET EXPRESSION не підтримується для віртуальних генерованих стовпців у таблицях з обмеженнями перевірки" + +#: commands/tablecmds.c:8638 commands/tablecmds.c:8656 +#: commands/tablecmds.c:8828 +#, c-format +msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." +msgstr "Стовпець \"%s\" відношення \"%s\" є віртуальним генерованим стовпцем." + +#: commands/tablecmds.c:8655 +#, c-format +msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables that are part of a publication" +msgstr "ALTER TABLE / SET EXPRESSION не підтримується для віртуальних генерованих стовпців у таблицях, що є частиною публікації" + +#: commands/tablecmds.c:8762 #, c-format msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" msgstr "ALTER TABLE / DROP EXPRESSION повинен бути застосований і до дочірніх таблиць" -#: commands/tablecmds.c:8455 +#: commands/tablecmds.c:8784 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "не можна видалити вираз генерації з успадкованого стовпця" -#: commands/tablecmds.c:8494 +#: commands/tablecmds.c:8827 #, c-format -msgid "column \"%s\" of relation \"%s\" is not a stored generated column" -msgstr "стовпець \"%s\" відношення \"%s\" не є збереженим згенерованим стовпцем" +msgid "ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" +msgstr "ALTER TABLE / DROP EXPRESSION не підтримується для віртуальних генерованих стовпців" -#: commands/tablecmds.c:8499 +#: commands/tablecmds.c:8841 #, c-format -msgid "column \"%s\" of relation \"%s\" is not a stored generated column, skipping" -msgstr "стовпець \"%s\" відношення \"%s\" не є збереженим згенерованим стовпцем, пропускається" +msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" +msgstr "стовпець \"%s\" відношення \"%s\" не є генерованим стовпцем, пропускаємо" -#: commands/tablecmds.c:8577 +#: commands/tablecmds.c:8919 #, c-format msgid "cannot refer to non-index column by number" msgstr "не можна посилатись на неіндексований стовпець за номером" -#: commands/tablecmds.c:8629 +#: commands/tablecmds.c:8971 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "стовпець з номером %d відношення %s не існує" -#: commands/tablecmds.c:8648 +#: commands/tablecmds.c:8991 +#, c-format +msgid "cannot alter statistics on virtual generated column \"%s\"" +msgstr "не можна змінити статистику віртуального генерованого стовпця \"%s\"" + +#: commands/tablecmds.c:9000 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "змінити статистику включеного стовпця \"%s\" індексу \"%s\" не можна" -#: commands/tablecmds.c:8653 +#: commands/tablecmds.c:9005 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "змінити статистику невираженого стовпця \"%s\" індексу \"%s\" не можна" -#: commands/tablecmds.c:8655 +#: commands/tablecmds.c:9007 #, c-format msgid "Alter statistics on table column instead." msgstr "Замість цього змініть статистику стовпця в таблиці." -#: commands/tablecmds.c:8901 +#: commands/tablecmds.c:9253 #, c-format msgid "cannot drop column from typed table" msgstr "не можна видалити стовпець з типізованої таблиці" -#: commands/tablecmds.c:8964 +#: commands/tablecmds.c:9317 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "стовпець \"%s\" відношення \"%s\" не існує, пропускається" -#: commands/tablecmds.c:8977 +#: commands/tablecmds.c:9330 #, c-format msgid "cannot drop system column \"%s\"" msgstr "не можна видалити системний стовпець \"%s\"" -#: commands/tablecmds.c:8987 +#: commands/tablecmds.c:9340 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "не можна видалити успадкований стовпець \"%s\"" -#: commands/tablecmds.c:9000 +#: commands/tablecmds.c:9353 #, c-format msgid "cannot drop column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "не можна видалити стовпець \"%s\", тому що він є частиною ключа секції відношення \"%s\"" -#: commands/tablecmds.c:9025 +#: commands/tablecmds.c:9378 #, c-format msgid "cannot drop column from only the partitioned table when partitions exist" msgstr "видалити стовпець тільки з секціонованої таблиці, коли існують секції, не можна" -#: commands/tablecmds.c:9230 +#: commands/tablecmds.c:9543 +#, c-format +msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" +msgstr "стовпець \"%s\" таблиці \"%s\" не позначений NOT NULL" + +#: commands/tablecmds.c:9579 commands/tablecmds.c:9591 +#, c-format +msgid "cannot create primary key on column \"%s\"" +msgstr "не можна створити первинний ключ на стовпці \"%s\"" + +#. translator: fourth %s is a constraint characteristic such as NOT VALID +#: commands/tablecmds.c:9581 commands/tablecmds.c:9593 +#, c-format +msgid "The constraint \"%s\" on column \"%s\" of table \"%s\", marked %s, is incompatible with a primary key." +msgstr "Обмеження \"%s\" на стовпці \"%s\" таблиці \"%s\", позначене %s, несумісне з первинним ключем." + +#: commands/tablecmds.c:9717 #, 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:9255 +#: commands/tablecmds.c:9742 #, 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:9592 +#: commands/tablecmds.c:10100 #, c-format msgid "cannot use ONLY for foreign key on partitioned table \"%s\" referencing relation \"%s\"" msgstr "не можна використати ONLY для стороннього ключа в секціонованій таблиці \"%s\", який посилається на відношення \"%s\"" -#: commands/tablecmds.c:9598 -#, c-format -msgid "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing relation \"%s\"" -msgstr "не можна додати сторонній ключ з характеристикою NOT VALID в секціоновану таблицю \"%s\", який посилається на відношення \"%s\"" - -#: commands/tablecmds.c:9601 -#, c-format -msgid "This feature is not yet supported on partitioned tables." -msgstr "Ця функція ще не підтримується з секціонованими таблицями." - -#: commands/tablecmds.c:9608 commands/tablecmds.c:10064 +#: commands/tablecmds.c:10108 commands/tablecmds.c:10735 #, c-format msgid "referenced relation \"%s\" is not a table" msgstr "вказане відношення \"%s\" не є таблицею" -#: commands/tablecmds.c:9631 +#: commands/tablecmds.c:10131 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "обмеження в постійних таблицях можуть посилатись лише на постійні таблиці" -#: commands/tablecmds.c:9638 +#: commands/tablecmds.c:10138 #, c-format msgid "constraints on unlogged tables may reference only permanent or unlogged tables" msgstr "обмеження в нежурнальованих таблицях можуть посилатись тільки на постійні або нежурналюємі таблиці" -#: commands/tablecmds.c:9644 +#: commands/tablecmds.c:10144 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "обмеження в тимчасових таблицях можуть посилатись лише на тимчасові таблиці" -#: commands/tablecmds.c:9648 +#: commands/tablecmds.c:10148 #, c-format msgid "constraints on temporary tables must involve temporary tables of this session" msgstr "обмеження в тимчасових таблицях повинні посилатись лише на тичасові таблиці поточного сеансу" -#: commands/tablecmds.c:9712 commands/tablecmds.c:9718 +#: commands/tablecmds.c:10163 commands/tablecmds.c:10191 +#, c-format +msgid "foreign key uses PERIOD on the referenced table but not the referencing table" +msgstr "зовнішній ключ використовує PERIOD на вказаній таблиці, але не на таблиці, що посилається" + +#: commands/tablecmds.c:10203 +#, c-format +msgid "foreign key uses PERIOD on the referencing table but not the referenced table" +msgstr "зовнішній ключ використовує PERIOD на таблиці, що посилається, але не на вказаній таблиці" + +#: commands/tablecmds.c:10217 +#, c-format +msgid "foreign key must use PERIOD when referencing a primary key using WITHOUT OVERLAPS" +msgstr "зовнішній ключ повинен використовувати PERIOD при посиланні на первинний ключ, що використовує WITHOUT OVERLAPS" + +#: commands/tablecmds.c:10241 commands/tablecmds.c:10247 #, c-format msgid "invalid %s action for foreign key constraint containing generated column" msgstr "неприпустима дія %s для обмеження зовнішнього ключа, який містить згеренований стовпець" -#: commands/tablecmds.c:9734 +#: commands/tablecmds.c:10262 +#, c-format +msgid "foreign key constraints on virtual generated columns are not supported" +msgstr "обмеження зовнішнього ключа на віртуальних генерованих стовпцях не підтримуються" + +#: commands/tablecmds.c:10276 commands/tablecmds.c:10285 +#, c-format +msgid "unsupported %s action for foreign key constraint using PERIOD" +msgstr "дія %s не підтримується для обмеження зовнішнього ключа з використанням PERIOD" + +#: commands/tablecmds.c:10300 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "число стовпців в джерелі і призначенні зовнішнього ключа не збігається" -#: commands/tablecmds.c:9841 +#: commands/tablecmds.c:10356 +#, c-format +msgid "could not identify an overlaps operator for foreign key" +msgstr "не вдалося ідентифікувати оператор перекриття для зовнішнього ключа" + +#: commands/tablecmds.c:10357 +#, c-format +msgid "could not identify an equality operator for foreign key" +msgstr "не вдалося ідентифікувати оператор рівності для зовнішнього ключа" + +#: commands/tablecmds.c:10422 commands/tablecmds.c:10456 #, c-format msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "обмеження зовнішнього ключа \"%s\" не можна реалізувати" -#: commands/tablecmds.c:9843 +#: commands/tablecmds.c:10424 +#, c-format +msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table are of incompatible types: %s and %s." +msgstr "Ключові стовпці \"%s\" таблиці, що посилається, і \"%s\" вказаної таблиці мають несумісні типи: %s і %s." + +#: commands/tablecmds.c:10457 #, c-format -msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." -msgstr "Стовпці ключа \"%s\" і \"%s\" містять несумісні типи: %s і %s." +msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table have incompatible collations: \"%s\" and \"%s\". If either collation is nondeterministic, then both collations have to be the same." +msgstr "Ключові стовпці \"%s\" таблиці, що посилається, і \"%s\" вказаної таблиці мають несумісні правила сортування: \"%s\" і \"%s\". Якщо будь-яке правило сортування є недетерміністичним, то обидва правила сортування повинні бути однаковими." -#: commands/tablecmds.c:10000 +#: commands/tablecmds.c:10663 #, c-format msgid "column \"%s\" referenced in ON DELETE SET action must be part of foreign key" msgstr "стовпець \"%s\" вказаний у дії ON DELETE SET повинен бути частиною зовнішнього ключа" -#: commands/tablecmds.c:10274 commands/tablecmds.c:10761 -#: parser/parse_utilcmd.c:822 parser/parse_utilcmd.c:945 +#: commands/tablecmds.c:11047 commands/tablecmds.c:11480 +#: parser/parse_utilcmd.c:941 parser/parse_utilcmd.c:1086 #, c-format msgid "foreign key constraints are not supported on foreign tables" msgstr "обмеження зовнішнього ключа для сторонніх таблиць не підтримуються" -#: commands/tablecmds.c:10744 +#: commands/tablecmds.c:11463 #, c-format msgid "cannot attach table \"%s\" as a partition because it is referenced by foreign key \"%s\"" msgstr "не можна підключити таблицю \"%s\" в якості секції, тому що на неї посилається сторонній ключ \"%s\"" -#: commands/tablecmds.c:11314 commands/tablecmds.c:11595 -#: commands/tablecmds.c:12507 commands/tablecmds.c:12581 +#: commands/tablecmds.c:11744 +#, c-format +msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" +msgstr "примусовість обмеження \"%s\" конфліктує з обмеженням \"%s\" у відношенні \"%s\"" + +#: commands/tablecmds.c:12206 +#, c-format +msgid "constraint must be altered in child tables too" +msgstr "обмеження також повинно бути змінено і в дочірніх таблицях" + +#: commands/tablecmds.c:12235 commands/tablecmds.c:12932 +#: commands/tablecmds.c:14047 commands/tablecmds.c:14276 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist" msgstr "обмеження \"%s\" відношення \"%s\" не існує" -#: commands/tablecmds.c:11321 +#: commands/tablecmds.c:12242 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "обмеження \"%s\" відношення \"%s\" не є обмеженням зовнішнього ключа" -#: commands/tablecmds.c:11359 +#: commands/tablecmds.c:12247 +#, c-format +msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" +msgstr "не можна змінити примусовість обмеження \"%s\" відношення \"%s\"" + +#: commands/tablecmds.c:12253 +#, c-format +msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" +msgstr "обмеження \"%s\" відношення \"%s\" не є обмеженням не-null" + +#: commands/tablecmds.c:12261 +#, c-format +msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" +msgstr "не можна змінити успадковане обмеження \"%s\" для відношення \"%s\"" + +#: commands/tablecmds.c:12301 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" -msgstr "не можна змінити обмеження \"%s\" відношення \"%s\"" +msgstr "неможливо змінити обмеження \"%s\" відношення \"%s\"" -#: commands/tablecmds.c:11362 +#: commands/tablecmds.c:12304 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "Обмеження \"%s\" походить з обмеження \"%s\" відношення \"%s\"." -#: commands/tablecmds.c:11364 +#: commands/tablecmds.c:12306 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "Натомість ви можете змінити початкове обмеження." -#: commands/tablecmds.c:11603 +#: commands/tablecmds.c:12941 +#, c-format +msgid "cannot validate constraint \"%s\" of relation \"%s\"" +msgstr "не можна перевірити обмеження \"%s\" відношення \"%s\"" + +#: commands/tablecmds.c:12943 #, c-format -msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint" -msgstr "обмеження \"%s\" відношення \"%s\" не є зовнішнім ключем або перевіркою обмеженням " +msgid "This operation is not supported for this type of constraint." +msgstr "Ця операція не підтримується для цього типу обмеження." -#: commands/tablecmds.c:11680 +#: commands/tablecmds.c:12948 +#, c-format +msgid "cannot validate NOT ENFORCED constraint" +msgstr "не можна перевірити обмеження NOT ENFORCED" + +#: commands/tablecmds.c:13157 commands/tablecmds.c:13257 #, c-format msgid "constraint must be validated on child tables too" msgstr "обмеження повинно дотримуватися в дочірніх таблицях також" -#: commands/tablecmds.c:11767 +#: commands/tablecmds.c:13334 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "стовпець \"%s\", вказаний в обмеженні зовнішнього ключа, не існує" -#: commands/tablecmds.c:11773 +#: commands/tablecmds.c:13340 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "в зовнішніх ключах не можна використовувати системні стовпці" -#: commands/tablecmds.c:11777 +#: commands/tablecmds.c:13344 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "у зовнішньому ключі не може бути більш ніж %d ключів" -#: commands/tablecmds.c:11842 +#: commands/tablecmds.c:13412 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "використовувати затримуваний первинний ключ в цільовій зовнішній таблиці \"%s\" не можна" -#: commands/tablecmds.c:11859 +#: commands/tablecmds.c:13429 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "у цільовій зовнішній таблиці \"%s\" немає первинного ключа" -#: commands/tablecmds.c:11927 +#: commands/tablecmds.c:13502 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "у списку стовпців зовнішнього ключа не повинно бути повторень" -#: commands/tablecmds.c:12019 +#: commands/tablecmds.c:13605 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "використовувати затримане обмеження унікальності в цільовій зовнішній таблиці \"%s\" не можна" -#: commands/tablecmds.c:12024 +#: commands/tablecmds.c:13610 #, c-format msgid "there is no unique constraint matching given keys for referenced table \"%s\"" msgstr "у цільовій зовнішній таблиці \"%s\" немає обмеження унікальності, відповідного даним ключам" -#: commands/tablecmds.c:12463 +#: commands/tablecmds.c:14051 +#, c-format +msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" +msgstr "обмеження \"%s\" відношення \"%s\" не існує, пропускається" + +#: commands/tablecmds.c:14096 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "видалити успадковане обмеження \"%s\" відношення \"%s\" не можна" -#: commands/tablecmds.c:12513 +#: commands/tablecmds.c:14148 #, c-format -msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" -msgstr "обмеження \"%s\" відношення \"%s\" не існує, пропускається" +msgid "column \"%s\" is in a primary key" +msgstr "стовпець \"%s\" входить до первинного ключа" + +#: commands/tablecmds.c:14156 +#, c-format +msgid "column \"%s\" is in index used as replica identity" +msgstr "стовпець \"%s\" в індексі, що використовується як ідентифікація репліки" -#: commands/tablecmds.c:12688 +#: commands/tablecmds.c:14389 #, c-format msgid "cannot alter column type of typed table" msgstr "змінити тип стовпця в типізованій таблиці не можна" -#: commands/tablecmds.c:12714 +#: commands/tablecmds.c:14417 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "не можна вказати USING під час зміни типу згенерованого стовпця" -#: commands/tablecmds.c:12715 commands/tablecmds.c:17918 -#: commands/tablecmds.c:18008 commands/trigger.c:656 -#: rewrite/rewriteHandler.c:935 rewrite/rewriteHandler.c:970 -#, c-format -msgid "Column \"%s\" is a generated column." -msgstr "Стовпець \"%s\" є згенерованим стовпцем." - -#: commands/tablecmds.c:12725 +#: commands/tablecmds.c:14429 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "змінити успадкований стовпець \"%s\" не можна" -#: commands/tablecmds.c:12734 +#: commands/tablecmds.c:14438 #, c-format msgid "cannot alter column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "не можна змінити стовпець \"%s\", тому що він є частиною ключа секції відношення \"%s\"" -#: commands/tablecmds.c:12784 +#: commands/tablecmds.c:14493 #, c-format msgid "result of USING clause for column \"%s\" cannot be cast automatically to type %s" msgstr "результати речення USING для стовпця \"%s\" не можна автоматично наведено для типу %s" -#: commands/tablecmds.c:12787 +#: commands/tablecmds.c:14496 #, c-format msgid "You might need to add an explicit cast." msgstr "Можливо, необхідно додати явне приведення типу." -#: commands/tablecmds.c:12791 +#: commands/tablecmds.c:14500 #, 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:12795 +#: commands/tablecmds.c:14504 #, c-format msgid "You might need to specify \"USING %s::%s\"." msgstr "Можливо, необхідно вказати \"USING %s::%s\"." -#: commands/tablecmds.c:12894 +#: commands/tablecmds.c:14607 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "не можна змінити успадкований стовпець \"%s\" відношення \"%s\"" -#: commands/tablecmds.c:12923 +#: commands/tablecmds.c:14636 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "Вираз USING містить посилання на тип усього рядка таблиці." -#: commands/tablecmds.c:12934 +#: commands/tablecmds.c:14647 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "тип успадкованого стовпця \"%s\" повинен бути змінений і в дочірніх таблицях" -#: commands/tablecmds.c:13059 +#: commands/tablecmds.c:14772 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "не можна змінити тип стовпця \"%s\" двічі" -#: commands/tablecmds.c:13097 +#: commands/tablecmds.c:14810 #, c-format msgid "generation expression for column \"%s\" cannot be cast automatically to type %s" msgstr "вираз генерації для стовпця \"%s\" не можна автоматично привести до типу %s" -#: commands/tablecmds.c:13102 +#: commands/tablecmds.c:14815 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "значення за замовчуванням для стовпця \"%s\" не можна автоматично привести до типу %s" -#: commands/tablecmds.c:13406 +#: commands/tablecmds.c:15119 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "неможливо змінити тип стовпця, який використовується функцією або процедурою" -#: commands/tablecmds.c:13407 commands/tablecmds.c:13422 -#: commands/tablecmds.c:13442 commands/tablecmds.c:13461 -#: commands/tablecmds.c:13520 +#: commands/tablecmds.c:15120 commands/tablecmds.c:15135 +#: commands/tablecmds.c:15155 commands/tablecmds.c:15174 +#: commands/tablecmds.c:15233 #, c-format msgid "%s depends on column \"%s\"" msgstr "%s залежить від стовпця \"%s\"" -#: commands/tablecmds.c:13421 +#: commands/tablecmds.c:15134 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "змінити тип стовпця, залученого в поданні або правилі, не можна" -#: commands/tablecmds.c:13441 +#: commands/tablecmds.c:15154 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "неможливо змінити тип стовпця, що використовується у визначенні тригеру" -#: commands/tablecmds.c:13460 +#: commands/tablecmds.c:15173 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "неможливо змінити тип стовпця, що використовується у визначенні політики" -#: commands/tablecmds.c:13491 +#: commands/tablecmds.c:15204 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "змінити тип стовпця, який використовується згенерованим стовпцем, не можна" -#: commands/tablecmds.c:13492 +#: commands/tablecmds.c:15205 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "Стовпець \"%s\" використовується згенерованим стовпцем \"%s\"." -#: commands/tablecmds.c:13519 +#: commands/tablecmds.c:15232 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "неможливо змінити тип стовпця, який використовується публікацією в реченні WHERE" -#: commands/tablecmds.c:14354 commands/tablecmds.c:14366 +#: commands/tablecmds.c:16106 commands/tablecmds.c:16118 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "неможливо змінити власника індексу \"%s\"" -#: commands/tablecmds.c:14356 commands/tablecmds.c:14368 +#: commands/tablecmds.c:16108 commands/tablecmds.c:16120 #, c-format msgid "Change the ownership of the index's table instead." msgstr "Замість цього змініть власника таблиці, що містить цей індекс." -#: commands/tablecmds.c:14382 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "неможливо змінити власника послідовності \"%s\"" -#: commands/tablecmds.c:14407 +#: commands/tablecmds.c:16159 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "неможливо змінити власника відношення \"%s\"" -#: commands/tablecmds.c:14874 +#: commands/tablecmds.c:16626 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "в одній інструкції не може бути декілька підкоманд SET TABLESPACE" -#: commands/tablecmds.c:14951 +#: commands/tablecmds.c:16705 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "неможливо встановити параметри відношення \"%s\"" -#: commands/tablecmds.c:14985 commands/view.c:440 +#: commands/tablecmds.c:16739 commands/view.c:440 #, c-format msgid "WITH CHECK OPTION is supported only on automatically updatable views" msgstr "WITH CHECK OPTION підтримується лише з автооновлюваними поданнями" -#: commands/tablecmds.c:15235 +#: commands/tablecmds.c:16992 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "у табличних просторах існують лише таблиці, індекси та матеріалізовані подання" -#: commands/tablecmds.c:15247 +#: commands/tablecmds.c:17004 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "переміщувати відношення у або з табличного простору pg_global не можна" -#: commands/tablecmds.c:15339 +#: commands/tablecmds.c:17096 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "переривання через блокування відношення \"%s.%s\" неможливе" -#: commands/tablecmds.c:15355 +#: commands/tablecmds.c:17112 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr " табличному просторі \"%s\" не знайдені відповідні відносини" -#: commands/tablecmds.c:15477 +#: commands/tablecmds.c:17234 #, c-format msgid "cannot change inheritance of typed table" msgstr "змінити успадкування типізованої таблиці не можна" -#: commands/tablecmds.c:15482 commands/tablecmds.c:15982 +#: commands/tablecmds.c:17239 commands/tablecmds.c:17823 #, c-format msgid "cannot change inheritance of a partition" msgstr "змінити успадкування секції не можна" -#: commands/tablecmds.c:15487 +#: commands/tablecmds.c:17244 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "змінити успадкування секціонованої таблиці не можна" -#: commands/tablecmds.c:15533 +#: commands/tablecmds.c:17291 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "успадкування для тимчасового відношення іншого сеансу не можливе" -#: commands/tablecmds.c:15546 +#: commands/tablecmds.c:17304 #, c-format msgid "cannot inherit from a partition" msgstr "успадкування від секції неможливе" -#: commands/tablecmds.c:15568 commands/tablecmds.c:18419 +#: commands/tablecmds.c:17326 commands/tablecmds.c:20347 #, c-format msgid "circular inheritance not allowed" msgstr "циклічне успадкування неприпустиме" -#: commands/tablecmds.c:15569 commands/tablecmds.c:18420 +#: commands/tablecmds.c:17327 commands/tablecmds.c:20348 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "\"%s\" вже є нащадком \"%s\"." -#: commands/tablecmds.c:15582 +#: commands/tablecmds.c:17340 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "тригер \"%s\" не дозволяє таблиці \"%s\" стати нащадком успадкування" -#: commands/tablecmds.c:15584 +#: commands/tablecmds.c:17342 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "Тригери ROW з перехідними таблицями не підтримуються в ієрархіях успадкування." -#: commands/tablecmds.c:15773 +#: commands/tablecmds.c:17543 commands/tablecmds.c:17792 #, c-format -msgid "column \"%s\" in child table must be marked NOT NULL" -msgstr "стовпець \"%s\" в дочірній таблиці має бути позначений як NOT NULL" +msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" +msgstr "стовпець \"%s\" у дочірній таблиці \"%s\" має бути позначений як NOT NULL" -#: commands/tablecmds.c:15782 +#: commands/tablecmds.c:17553 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "стовпець \"%s\" у дочірній таблиці повинен бути згенерованим стовпцем" -#: commands/tablecmds.c:15786 +#: commands/tablecmds.c:17557 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "стовпець \"%s\" у дочірній таблиці повинен бути не генерованим стовпцем" -#: commands/tablecmds.c:15824 +#: commands/tablecmds.c:17603 #, c-format msgid "child table is missing column \"%s\"" msgstr "у дочірній таблиці не вистачає стовпця \"%s\"" -#: commands/tablecmds.c:15905 +#: commands/tablecmds.c:17720 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "дочірня таблиця \"%s\" має інше визначення перевірочного обмеження \"%s\"" -#: commands/tablecmds.c:15912 +#: commands/tablecmds.c:17729 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "обмеження \"%s\" конфліктує з неуспадкованим обмеженням дочірньої таблиці \"%s\"" -#: commands/tablecmds.c:15922 +#: commands/tablecmds.c:17740 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "обмеження \"%s\" конфліктує з NOT VALID обмеженням дочірньої таблиці \"%s\"" -#: commands/tablecmds.c:15960 +#: commands/tablecmds.c:17751 +#, c-format +msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" +msgstr "обмеження \"%s\" конфліктує з обмеженням NOT ENFORCED дочірньої таблиці \"%s\"" + +#: commands/tablecmds.c:17800 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "у дочірній таблиці не вистачає обмеження \"%s\"" -#: commands/tablecmds.c:16046 +#: commands/tablecmds.c:17887 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "розділ \"%s\" вже очікує відключення в секціонованій таблиці \"%s.%s\"" -#: commands/tablecmds.c:16075 commands/tablecmds.c:16121 +#: commands/tablecmds.c:17916 commands/tablecmds.c:17964 #, c-format msgid "relation \"%s\" is not a partition of relation \"%s\"" msgstr "відношення \"%s\" не є секцією відношення \"%s\"" -#: commands/tablecmds.c:16127 +#: commands/tablecmds.c:17970 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "відношення \"%s\" не є предком відношення \"%s\"" -#: commands/tablecmds.c:16354 +#: commands/tablecmds.c:18241 #, c-format msgid "typed tables cannot inherit" msgstr "типізовані таблиці не можуть успадковуватись" -#: commands/tablecmds.c:16384 +#: commands/tablecmds.c:18271 #, c-format msgid "table is missing column \"%s\"" msgstr "у таблиці не вистачає стовпця \"%s\"" -#: commands/tablecmds.c:16395 +#: commands/tablecmds.c:18282 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "таблиця містить стовпець \"%s\", а тип потребує \"%s\"" -#: commands/tablecmds.c:16404 +#: commands/tablecmds.c:18291 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "таблиця \"%s\" містить стовпець \"%s\" іншого типу" -#: commands/tablecmds.c:16418 +#: commands/tablecmds.c:18305 #, c-format msgid "table has extra column \"%s\"" msgstr "таблиця містить зайвий стовпець \"%s\"" -#: commands/tablecmds.c:16470 +#: commands/tablecmds.c:18357 #, c-format msgid "\"%s\" is not a typed table" msgstr "\"%s\" - не типізована таблиця" -#: commands/tablecmds.c:16644 +#: commands/tablecmds.c:18537 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "для ідентифікації репліки не можна використати неунікальний індекс \"%s\"" -#: commands/tablecmds.c:16650 +#: commands/tablecmds.c:18543 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "для ідентифікації репліки не можна використати небезпосередній індекс \"%s\"" -#: commands/tablecmds.c:16656 +#: commands/tablecmds.c:18549 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "для ідентифікації репліки не можна використати індекс з виразом \"%s\"" -#: commands/tablecmds.c:16662 +#: commands/tablecmds.c:18555 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "для ідентифікації репліки не можна використати частковий індекс \"%s\"" -#: commands/tablecmds.c:16679 +#: commands/tablecmds.c:18572 #, c-format msgid "index \"%s\" cannot be used as replica identity because column %d is a system column" msgstr "індекс \"%s\" не можна використати як ідентифікацію репліки, тому що стовпець %d - системний стовпець" -#: commands/tablecmds.c:16686 +#: commands/tablecmds.c:18579 #, c-format msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable" msgstr "індекс \"%s\" не можна використати як ідентифікацію репліки, тому що стовпець \"%s\" допускає Null" -#: commands/tablecmds.c:16938 +#: commands/tablecmds.c:18828 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "змінити стан журналювання таблиці \"%s\" не можна, тому що вона тимчасова" -#: commands/tablecmds.c:16962 +#: commands/tablecmds.c:18852 #, c-format msgid "cannot change table \"%s\" to unlogged because it is part of a publication" msgstr "таблицю \"%s\" не можна змінити на нежурнальовану, тому що вона є частиною публікації" -#: commands/tablecmds.c:16964 +#: commands/tablecmds.c:18854 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "Нежурнальовані відношення не підтримують реплікацію." -#: commands/tablecmds.c:17009 +#: commands/tablecmds.c:18899 #, c-format msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\"" msgstr "не вдалося змінити таблицю \"%s\" на журнальовану, тому що вона посилається на нежурнальовану таблицю \"%s\"" -#: commands/tablecmds.c:17019 +#: commands/tablecmds.c:18909 #, c-format msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\"" msgstr "не вдалося змінити таблицю \"%s\" на нежурнальовану, тому що вона посилається на журнальовану таблицю \"%s\"" -#: commands/tablecmds.c:17077 +#: commands/tablecmds.c:18973 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "перемістити послідовність з власником в іншу схему не можна" -#: commands/tablecmds.c:17182 +#: commands/tablecmds.c:19081 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "відношення \"%s\" вже існує в схемі \"%s\"" -#: commands/tablecmds.c:17603 +#: commands/tablecmds.c:19506 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "\"%s\" не є таблицею або матеріалізованим поданням" -#: commands/tablecmds.c:17756 +#: commands/tablecmds.c:19659 #, c-format msgid "\"%s\" is not a composite type" msgstr "\"%s\" - не складений тип" -#: commands/tablecmds.c:17786 +#: commands/tablecmds.c:19689 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "змінити схему індексу \"%s\" не можна" -#: commands/tablecmds.c:17788 commands/tablecmds.c:17802 +#: commands/tablecmds.c:19691 commands/tablecmds.c:19705 #, c-format msgid "Change the schema of the table instead." msgstr "Замість цього змініть схему таблиці." -#: commands/tablecmds.c:17792 +#: commands/tablecmds.c:19695 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "змінити схему складеного типу \"%s\" не можна" -#: commands/tablecmds.c:17800 +#: commands/tablecmds.c:19703 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "змінити схему таблиці TOAST \"%s\" не можна" -#: commands/tablecmds.c:17832 +#: commands/tablecmds.c:19735 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "стратегія секціонування \"по списку\" не може використовувати декілька стовпців" -#: commands/tablecmds.c:17898 +#: commands/tablecmds.c:19801 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "стовпець \"%s\", згаданий в ключі секціонування, не існує" -#: commands/tablecmds.c:17906 +#: commands/tablecmds.c:19809 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "системний стовпець \"%s\" не можна використати в ключі секціонування" -#: commands/tablecmds.c:17917 commands/tablecmds.c:18007 +#: commands/tablecmds.c:19823 commands/tablecmds.c:19905 #, c-format msgid "cannot use generated column in partition key" msgstr "використати згенерований стовпець в ключі секції, не можна" -#: commands/tablecmds.c:17990 +#: commands/tablecmds.c:19892 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "вирази ключа секціонування не можуть містити посилання на системний стовпець" -#: commands/tablecmds.c:18037 +#: commands/tablecmds.c:19956 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "функції у виразі ключа секціонування повинні бути позначені як IMMUTABLE" -#: commands/tablecmds.c:18046 +#: commands/tablecmds.c:19965 #, c-format msgid "cannot use constant expression as partition key" msgstr "не можна використати константий вираз як ключ секціонування" -#: commands/tablecmds.c:18067 +#: commands/tablecmds.c:19986 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "не вдалося визначити, яке правило сортування використати для виразу секціонування" -#: commands/tablecmds.c:18102 +#: commands/tablecmds.c:20021 #, c-format msgid "You must specify a hash operator class or define a default hash operator class for the data type." msgstr "Ви повинні вказати клас операторів гешування або визначити клас операторів гешування за замовчуванням для цього типу даних." -#: commands/tablecmds.c:18108 +#: commands/tablecmds.c:20027 #, c-format msgid "You must specify a btree operator class or define a default btree operator class for the data type." msgstr "Ви повинні вказати клас операторів (btree) або визначити клас операторів (btree) за замовчуванням для цього типу даних." -#: commands/tablecmds.c:18359 +#: commands/tablecmds.c:20287 #, c-format msgid "\"%s\" is already a partition" msgstr "\"%s\" вже є секцією" -#: commands/tablecmds.c:18365 +#: commands/tablecmds.c:20293 #, c-format msgid "cannot attach a typed table as partition" msgstr "неможливо підключити типізовану таблицю в якості секції" -#: commands/tablecmds.c:18381 +#: commands/tablecmds.c:20309 #, c-format msgid "cannot attach inheritance child as partition" msgstr "неможливо підключити нащадка успадкування в якості секції" -#: commands/tablecmds.c:18395 +#: commands/tablecmds.c:20323 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "неможливо підключити предка успадкування в якості секції" -#: commands/tablecmds.c:18429 +#: commands/tablecmds.c:20357 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "неможливо підкючити тимчасове відношення в якості секції постійного відношення \"%s\"" -#: commands/tablecmds.c:18437 +#: commands/tablecmds.c:20365 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "неможливо підключити постійне відношення в якості секції тимчасового відношення \"%s\"" -#: commands/tablecmds.c:18445 +#: commands/tablecmds.c:20373 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "неможливо підключити секцію до тимчасового відношення в іншому сеансі" -#: commands/tablecmds.c:18452 +#: commands/tablecmds.c:20380 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "неможливо підключити тимчасове відношення з іншого сеансу в якості секції" -#: commands/tablecmds.c:18472 +#: commands/tablecmds.c:20400 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "таблиця \"%s\", що додається, містить стовпець ідентичності \"%s\"" -#: commands/tablecmds.c:18474 +#: commands/tablecmds.c:20402 #, c-format msgid "The new partition may not contain an identity column." msgstr "Новий розділ може не містити стовпця ідентичності." -#: commands/tablecmds.c:18482 +#: commands/tablecmds.c:20410 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "таблиця \"%s\" містить стовпець \"%s\", відсутній в батьківській \"%s\"" -#: commands/tablecmds.c:18485 +#: commands/tablecmds.c:20413 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "Нова секція може містити лише стовпці, що є у батьківській таблиці." -#: commands/tablecmds.c:18497 +#: commands/tablecmds.c:20425 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "тригер \"%s\" не дозволяє зробити таблицю \"%s\" секцією" -#: commands/tablecmds.c:18499 +#: commands/tablecmds.c:20427 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "Тригери ROW з перехідними таблицями не підтримуються для секцій." -#: commands/tablecmds.c:18675 +#: commands/tablecmds.c:20609 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "не можна підключити зовнішню таблицю \"%s\" в якості секції секціонованої таблиці \"%s\"" -#: commands/tablecmds.c:18678 +#: commands/tablecmds.c:20612 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "Секціонована таблиця \"%s\" містить унікальні індекси." -#: commands/tablecmds.c:19000 +#: commands/tablecmds.c:20936 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "не можна одночасно відключити розділи, коли існує розділ за замовчуванням" -#: commands/tablecmds.c:19109 +#: commands/tablecmds.c:21048 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "секціоновану таблицю \"%s\" було видалено одночасно" -#: commands/tablecmds.c:19115 +#: commands/tablecmds.c:21054 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "розділ \"%s\" було видалено паралельно" -#: commands/tablecmds.c:19651 commands/tablecmds.c:19671 -#: commands/tablecmds.c:19692 commands/tablecmds.c:19711 -#: commands/tablecmds.c:19753 +#: commands/tablecmds.c:21685 commands/tablecmds.c:21705 +#: commands/tablecmds.c:21726 commands/tablecmds.c:21745 +#: commands/tablecmds.c:21794 #, c-format msgid "cannot attach index \"%s\" as a partition of index \"%s\"" msgstr "неможливо підключити індекс \"%s\" в якості секції індексу \"%s\"" -#: commands/tablecmds.c:19654 +#: commands/tablecmds.c:21688 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "Індекс \"%s\" вже підключений до іншого індексу." -#: commands/tablecmds.c:19674 +#: commands/tablecmds.c:21708 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "Індекс \"%s\" не є індексом жодної секції таблиці \"%s\"." -#: commands/tablecmds.c:19695 +#: commands/tablecmds.c:21729 #, c-format msgid "The index definitions do not match." msgstr "Визначення індексів не співпадають." -#: commands/tablecmds.c:19714 +#: commands/tablecmds.c:21748 #, 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:19756 +#: commands/tablecmds.c:21797 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "До секції \"%s\" вже підключений інший індекс." -#: commands/tablecmds.c:19992 +#: commands/tablecmds.c:21920 +#, c-format +msgid "invalid primary key definition" +msgstr "недійсне визначення первинного ключа" + +#: commands/tablecmds.c:21921 +#, c-format +msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." +msgstr "Стовпець \"%s\" відношення \"%s\" не позначений як NOT NULL." + +#: commands/tablecmds.c:22056 #, c-format msgid "column data type %s does not support compression" msgstr "тип даних стовпця %s не підтримує стискання" -#: commands/tablecmds.c:19999 +#: commands/tablecmds.c:22063 #, c-format msgid "invalid compression method \"%s\"" msgstr "неприпустимий метод стискання \"%s\"" -#: commands/tablecmds.c:20025 +#: commands/tablecmds.c:22089 #, c-format msgid "invalid storage type \"%s\"" msgstr "неприпустимий тип сховища \"%s\"" -#: commands/tablecmds.c:20035 +#: commands/tablecmds.c:22099 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "тип даних стовпця %s може мати тільки сховище PLAIN" @@ -12038,287 +12423,286 @@ msgstr "не вдалося видалити каталоги табличног msgid "You can remove the directories manually if necessary." msgstr "За потреби ви можете видалити каталоги вручну." -#: commands/trigger.c:225 commands/trigger.c:236 +#: commands/trigger.c:228 commands/trigger.c:239 #, c-format msgid "\"%s\" is a table" msgstr "\"%s\" - таблиця" -#: commands/trigger.c:227 commands/trigger.c:238 +#: commands/trigger.c:230 commands/trigger.c:241 #, c-format msgid "Tables cannot have INSTEAD OF triggers." msgstr "Таблиці не можуть мати тригери INSTEAD OF." -#: commands/trigger.c:259 +#: commands/trigger.c:262 #, c-format msgid "\"%s\" is a partitioned table" msgstr "\"%s\" є секційною таблицею" -#: commands/trigger.c:261 +#: commands/trigger.c:264 #, c-format msgid "ROW triggers with transition tables are not supported on partitioned tables." msgstr "Тригери ROW з перехідними таблицями не підтримуються для секційованих таблиць." -#: commands/trigger.c:273 commands/trigger.c:280 commands/trigger.c:444 +#: commands/trigger.c:276 commands/trigger.c:283 commands/trigger.c:447 #, c-format msgid "\"%s\" is a view" msgstr "\"%s\" - подання" -#: commands/trigger.c:275 +#: commands/trigger.c:278 #, c-format msgid "Views cannot have row-level BEFORE or AFTER triggers." msgstr "Подання не можуть мати рядкові тригери BEFORE або AFTER." -#: commands/trigger.c:282 +#: commands/trigger.c:285 #, c-format msgid "Views cannot have TRUNCATE triggers." msgstr "Подання не можуть мати тригери TRUNCATE." -#: commands/trigger.c:290 commands/trigger.c:302 commands/trigger.c:437 +#: commands/trigger.c:293 commands/trigger.c:305 commands/trigger.c:440 #, c-format msgid "\"%s\" is a foreign table" msgstr "\"%s\" - зовнішня таблиця" -#: commands/trigger.c:292 +#: commands/trigger.c:295 #, c-format msgid "Foreign tables cannot have INSTEAD OF triggers." msgstr "Зовнішні таблиці не можуть мати тригери INSTEAD OF." -#: commands/trigger.c:304 +#: commands/trigger.c:307 #, c-format msgid "Foreign tables cannot have constraint triggers." msgstr "Зовнішні таблиці не можуть мати обмежувальні тригери." -#: commands/trigger.c:309 commands/trigger.c:1325 commands/trigger.c:1432 +#: commands/trigger.c:312 commands/trigger.c:1331 commands/trigger.c:1438 #, c-format msgid "relation \"%s\" cannot have triggers" msgstr "відношення \"%s\" не може мати тригери" -#: commands/trigger.c:380 +#: commands/trigger.c:383 #, c-format msgid "TRUNCATE FOR EACH ROW triggers are not supported" msgstr "Тригери TRUNCATE FOR EACH ROW не підтримуються" -#: commands/trigger.c:388 +#: commands/trigger.c:391 #, c-format msgid "INSTEAD OF triggers must be FOR EACH ROW" msgstr "Тригери INSTEAD OF повинні мати тип FOR EACH ROW" -#: commands/trigger.c:392 +#: commands/trigger.c:395 #, c-format msgid "INSTEAD OF triggers cannot have WHEN conditions" msgstr "Тригери INSTEAD OF не можуть мати умови WHEN" -#: commands/trigger.c:396 +#: commands/trigger.c:399 #, c-format msgid "INSTEAD OF triggers cannot have column lists" msgstr "Тригери INSTEAD OF не можуть мати список стовпців" -#: commands/trigger.c:425 +#: commands/trigger.c:428 #, c-format msgid "ROW variable naming in the REFERENCING clause is not supported" msgstr "Змінна іменування ROW в реченні REFERENCING не підтримується" -#: commands/trigger.c:426 +#: commands/trigger.c:429 #, c-format msgid "Use OLD TABLE or NEW TABLE for naming transition tables." msgstr "Використайте OLD TABLE або NEW TABLE для іменування перехідних таблиць." -#: commands/trigger.c:439 +#: commands/trigger.c:442 #, c-format msgid "Triggers on foreign tables cannot have transition tables." msgstr "Тригери зовнішніх таблиць не можуть використовувати перехідні таблиці." -#: commands/trigger.c:446 +#: commands/trigger.c:449 #, c-format msgid "Triggers on views cannot have transition tables." msgstr "Тригери подань не можуть використовувати перехідні таблиці." -#: commands/trigger.c:462 +#: commands/trigger.c:465 #, c-format msgid "ROW triggers with transition tables are not supported on partitions" msgstr "Тригери ROW з перехідними таблицями для секцій не підтримуються" -#: commands/trigger.c:466 +#: commands/trigger.c:469 #, c-format msgid "ROW triggers with transition tables are not supported on inheritance children" msgstr "Тригери ROW з перехідними таблицями для нащадків успадкування не підтримуються" -#: commands/trigger.c:472 +#: commands/trigger.c:475 #, c-format msgid "transition table name can only be specified for an AFTER trigger" msgstr "ім'я перехідної таблиці можна задати лише для тригеру AFTER" -#: commands/trigger.c:477 +#: commands/trigger.c:480 #, c-format msgid "TRUNCATE triggers with transition tables are not supported" msgstr "Тригери TRUNCATE з перехідними таблицями не підтримуються" -#: commands/trigger.c:494 +#: commands/trigger.c:497 #, c-format msgid "transition tables cannot be specified for triggers with more than one event" msgstr "перехідні таблиці не можна задати для тригерів, призначених для кількох подій" -#: commands/trigger.c:505 +#: commands/trigger.c:508 #, c-format msgid "transition tables cannot be specified for triggers with column lists" msgstr "перехідні таблиці не можна задати для тригерів зі списками стовпців" -#: commands/trigger.c:522 +#: commands/trigger.c:525 #, c-format msgid "NEW TABLE can only be specified for an INSERT or UPDATE trigger" msgstr "NEW TABLE можна задати лише для тригерів INSERT або UPDATE" -#: commands/trigger.c:527 +#: commands/trigger.c:530 #, c-format msgid "NEW TABLE cannot be specified multiple times" msgstr "NEW TABLE не можна задавати декілька разів" -#: commands/trigger.c:537 +#: commands/trigger.c:540 #, c-format msgid "OLD TABLE can only be specified for a DELETE or UPDATE trigger" msgstr "OLD TABLE можна задати лише для тригерів DELETE або UPDATE" -#: commands/trigger.c:542 +#: commands/trigger.c:545 #, c-format msgid "OLD TABLE cannot be specified multiple times" msgstr "OLD TABLE не можна задавати декілька разів" -#: commands/trigger.c:552 +#: commands/trigger.c:555 #, c-format msgid "OLD TABLE name and NEW TABLE name cannot be the same" msgstr "Ім'я OLD TABLE та ім'я NEW TABLE не можуть бути однаковими" -#: commands/trigger.c:616 commands/trigger.c:629 +#: commands/trigger.c:619 commands/trigger.c:632 #, c-format msgid "statement trigger's WHEN condition cannot reference column values" msgstr "в умові WHEN операторного тригера не можна посилатись на значення стовпця" -#: commands/trigger.c:621 +#: commands/trigger.c:624 #, c-format msgid "INSERT trigger's WHEN condition cannot reference OLD values" msgstr "В умові WHEN тригеру INSERT не можна посилатись на значення OLD" -#: commands/trigger.c:634 +#: commands/trigger.c:637 #, c-format msgid "DELETE trigger's WHEN condition cannot reference NEW values" msgstr "В умові WHEN тригера DELETE не можна посилатись на значення NEW" -#: commands/trigger.c:639 +#: commands/trigger.c:642 #, c-format msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns" msgstr "В умові WHEN тригера BEFORE не можна посилатись на системні стовпці NEW" -#: commands/trigger.c:647 commands/trigger.c:655 +#: commands/trigger.c:651 commands/trigger.c:659 #, c-format msgid "BEFORE trigger's WHEN condition cannot reference NEW generated columns" msgstr "В умові WHEN тригера BEFORE не можна посилатись на згенеровані стовпці NEW" -#: commands/trigger.c:648 +#: commands/trigger.c:652 #, c-format msgid "A whole-row reference is used and the table contains generated columns." msgstr "Використовується посилання на весь рядок і таблиця містить згенеровані стовпці." -#: commands/trigger.c:763 commands/trigger.c:1607 +#: commands/trigger.c:767 commands/trigger.c:1614 #, c-format msgid "trigger \"%s\" for relation \"%s\" already exists" msgstr "тригер \"%s\" для відношення \"%s\" вже існує" -#: commands/trigger.c:776 +#: commands/trigger.c:780 #, c-format msgid "trigger \"%s\" for relation \"%s\" is an internal or a child trigger" msgstr "тригер \"%s\" для відношення \"%s\" є зовнішнім або дочірнім тригером" -#: commands/trigger.c:795 +#: commands/trigger.c:799 #, c-format msgid "trigger \"%s\" for relation \"%s\" is a constraint trigger" msgstr "тригер \"%s\" для відношення \"%s\" є зовнішнім тригером" -#: commands/trigger.c:1397 commands/trigger.c:1550 commands/trigger.c:1831 +#: commands/trigger.c:1403 commands/trigger.c:1557 commands/trigger.c:1838 #, c-format msgid "trigger \"%s\" for table \"%s\" does not exist" msgstr "тригер \"%s\" для таблиці \"%s\" не існує" -#: commands/trigger.c:1522 +#: commands/trigger.c:1529 #, c-format msgid "cannot rename trigger \"%s\" on table \"%s\"" msgstr "перейменувати тригер \"%s\" для таблиці \"%s\" не можна" -#: commands/trigger.c:1524 +#: commands/trigger.c:1531 #, c-format msgid "Rename the trigger on the partitioned table \"%s\" instead." msgstr "Замість цього перейменуйте тригер для секціонованої таблиці \"%s\"." -#: commands/trigger.c:1624 +#: commands/trigger.c:1631 #, c-format msgid "renamed trigger \"%s\" on relation \"%s\"" msgstr "перейменовано тригер \"%s\" для відношення \"%s\"" -#: commands/trigger.c:1770 +#: commands/trigger.c:1777 #, c-format msgid "permission denied: \"%s\" is a system trigger" msgstr "немає доступу: \"%s\" - системний тригер" -#: commands/trigger.c:2379 +#: commands/trigger.c:2388 #, c-format msgid "trigger function %u returned null value" msgstr "тригерна функція %u повернула значення null" -#: commands/trigger.c:2439 commands/trigger.c:2657 commands/trigger.c:2910 -#: commands/trigger.c:3263 +#: commands/trigger.c:2448 commands/trigger.c:2677 commands/trigger.c:2949 +#: commands/trigger.c:3323 #, c-format msgid "BEFORE STATEMENT trigger cannot return a value" msgstr "Тригер BEFORE STATEMENT не може повертати значення" -#: commands/trigger.c:2515 +#: commands/trigger.c:2526 #, c-format msgid "moving row to another partition during a BEFORE FOR EACH ROW trigger is not supported" msgstr "переміщення рядка до іншої секції під час тригеру BEFORE FOR EACH ROW не підтримується" -#: commands/trigger.c:2516 +#: commands/trigger.c:2527 #, c-format msgid "Before executing trigger \"%s\", the row was to be in partition \"%s.%s\"." msgstr "Перед виконанням тригера \"%s\", рядок повинен був бути в секції \"%s.%s\"." -#: commands/trigger.c:3340 executor/nodeModifyTable.c:2373 -#: executor/nodeModifyTable.c:2456 +#: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 #, c-format -msgid "tuple to be updated was already modified by an operation triggered by the current command" -msgstr "кортеж, який повинен бути оновленим, вже змінений в операції, яка викликана поточною командою" +msgid "cannot collect transition tuples from child foreign tables" +msgstr "неможливо зібрати перехідні кортежі з дочірніх сторонніх таблиць" -#: commands/trigger.c:3341 executor/nodeModifyTable.c:1541 -#: executor/nodeModifyTable.c:1615 executor/nodeModifyTable.c:2374 -#: executor/nodeModifyTable.c:2457 executor/nodeModifyTable.c:3093 -#: executor/nodeModifyTable.c:3254 +#: commands/trigger.c:3402 executor/nodeModifyTable.c:1687 +#: executor/nodeModifyTable.c:1761 executor/nodeModifyTable.c:2569 +#: executor/nodeModifyTable.c:2659 executor/nodeModifyTable.c:3331 +#: executor/nodeModifyTable.c:3523 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "Можливо, для поширення змін в інші рядки слід використати тригер AFTER замість тригера BEFORE." -#: commands/trigger.c:3382 executor/nodeLockRows.c:228 -#: executor/nodeLockRows.c:237 executor/nodeModifyTable.c:314 -#: executor/nodeModifyTable.c:1557 executor/nodeModifyTable.c:2391 -#: executor/nodeModifyTable.c:2599 +#: commands/trigger.c:3444 executor/nodeLockRows.c:228 +#: executor/nodeLockRows.c:237 executor/nodeModifyTable.c:389 +#: executor/nodeModifyTable.c:1703 executor/nodeModifyTable.c:2585 +#: executor/nodeModifyTable.c:2810 #, c-format msgid "could not serialize access due to concurrent update" msgstr "не вдалося серіалізувати доступ через паралельне оновлення" -#: commands/trigger.c:3390 executor/nodeModifyTable.c:1647 -#: executor/nodeModifyTable.c:2474 executor/nodeModifyTable.c:2623 -#: executor/nodeModifyTable.c:3111 +#: commands/trigger.c:3452 executor/nodeModifyTable.c:1793 +#: executor/nodeModifyTable.c:2676 executor/nodeModifyTable.c:2834 +#: executor/nodeModifyTable.c:3349 #, c-format msgid "could not serialize access due to concurrent delete" msgstr "не вдалося серіалізувати доступ через паралельне видалення" -#: commands/trigger.c:4601 +#: commands/trigger.c:4687 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "не можна виконати відкладений тригер в межах операції з обмеженням по безпеці" -#: commands/trigger.c:5782 +#: commands/trigger.c:5868 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "обмеження \"%s\" не є відкладеним" -#: commands/trigger.c:5805 +#: commands/trigger.c:5891 #, c-format msgid "constraint \"%s\" does not exist" msgstr "обмеження \"%s\" не існує" @@ -12428,7 +12812,7 @@ msgstr "для створення базового типу потрібно б msgid "Create the type as a shell type, then create its I/O functions, then do a full CREATE TYPE." msgstr "Створіть тип в якості оболонки, потім створіть його функції вводу-виводу, а потім виконайте повну CREATE TYPE." -#: commands/typecmds.c:331 commands/typecmds.c:1460 commands/typecmds.c:4480 +#: commands/typecmds.c:331 commands/typecmds.c:1494 commands/typecmds.c:4479 #, c-format msgid "type attribute \"%s\" not recognized" msgstr "атрибут типу \"%s\" не розпізнаний" @@ -12448,7 +12832,7 @@ msgstr "типом елементу масиву не може бути %s" msgid "alignment \"%s\" not recognized" msgstr "тип вирівнювання \"%s\" не розпізнаний" -#: commands/typecmds.c:454 commands/typecmds.c:4354 +#: commands/typecmds.c:454 commands/typecmds.c:4353 #, c-format msgid "storage \"%s\" not recognized" msgstr "сховище \"%s\" не розпізнане" @@ -12478,288 +12862,308 @@ msgstr "тип елементу не можна вказати без припу msgid "\"%s\" is not a valid base type for a domain" msgstr "\"%s\" - невідповідний базовий тип для домену" -#: commands/typecmds.c:883 +#: commands/typecmds.c:885 #, c-format msgid "multiple default expressions" msgstr "неодноразове визначення значення типу за замовчуванням" -#: commands/typecmds.c:946 commands/typecmds.c:955 +#: commands/typecmds.c:947 commands/typecmds.c:968 #, c-format msgid "conflicting NULL/NOT NULL constraints" msgstr "конфліктуючі обмеження NULL/NOT NULL" -#: commands/typecmds.c:971 +#: commands/typecmds.c:952 +#, c-format +msgid "redundant NOT NULL constraint definition" +msgstr "зайве визначення обмеження NOT NULL" + +#: commands/typecmds.c:958 +#, c-format +msgid "not-null constraints for domains cannot be marked NO INHERIT" +msgstr "обмеження not-null для доменів не можуть позначатися NO INHERIT" + +#: commands/typecmds.c:985 #, c-format msgid "check constraints for domains cannot be marked NO INHERIT" msgstr "перевірки обмеження для доменів не можуть позначатись як NO INHERIT" -#: commands/typecmds.c:980 commands/typecmds.c:2940 +#: commands/typecmds.c:996 #, c-format msgid "unique constraints not possible for domains" msgstr "обмеження унікальності неможливе для доменів" -#: commands/typecmds.c:986 commands/typecmds.c:2946 +#: commands/typecmds.c:1003 #, c-format msgid "primary key constraints not possible for domains" msgstr "обмеження первинного ключа неможливі для доменів" -#: commands/typecmds.c:992 commands/typecmds.c:2952 +#: commands/typecmds.c:1010 #, c-format msgid "exclusion constraints not possible for domains" msgstr "обмеження винятків неможливі для доменів" -#: commands/typecmds.c:998 commands/typecmds.c:2958 +#: commands/typecmds.c:1017 #, c-format msgid "foreign key constraints not possible for domains" msgstr "обмеження зовнішніх ключів неможливі для доменів" -#: commands/typecmds.c:1007 commands/typecmds.c:2967 +#: commands/typecmds.c:1027 #, c-format msgid "specifying constraint deferrability not supported for domains" msgstr "зазначення відкладення обмежень для доменів не підтримується" -#: commands/typecmds.c:1327 utils/cache/typcache.c:2570 +#: commands/typecmds.c:1035 #, c-format -msgid "%s is not an enum" -msgstr "%s не є переліком" +msgid "specifying GENERATED not supported for domains" +msgstr "зазначення GENERATED не підтримується для доменів" -#: commands/typecmds.c:1468 +#: commands/typecmds.c:1043 +#, c-format +msgid "specifying constraint enforceability not supported for domains" +msgstr "зазначення примусовості виконання обмеження не підтримується для доменів" + +#: commands/typecmds.c:1361 utils/cache/typcache.c:2757 +#, c-format +msgid "%s is not an enum" +msgstr "%s не є переліком" + +#: commands/typecmds.c:1502 #, c-format msgid "type attribute \"subtype\" is required" msgstr "вимагається атрибут типу \"subtype\"" -#: commands/typecmds.c:1473 +#: commands/typecmds.c:1507 #, c-format msgid "range subtype cannot be %s" msgstr "%s не може бути підтипом діапазону" -#: commands/typecmds.c:1492 +#: commands/typecmds.c:1526 #, c-format msgid "range collation specified but subtype does not support collation" msgstr "вказано правило сортування для діапазону, але підтип не підтримує сортування" -#: commands/typecmds.c:1502 +#: commands/typecmds.c:1536 #, c-format msgid "cannot specify a canonical function without a pre-created shell type" msgstr "неможливо вказати канонічну функцію без попередньо створеного типу оболонки" -#: commands/typecmds.c:1503 +#: commands/typecmds.c:1537 #, c-format msgid "Create the type as a shell type, then create its canonicalization function, then do a full CREATE TYPE." msgstr "Створіть тип в якості оболонки, потім створіть його функцію канонізації, а потім виконайте повну CREATE TYPE." -#: commands/typecmds.c:1975 +#: commands/typecmds.c:2013 #, c-format msgid "type input function %s has multiple matches" msgstr "функція введення типу %s має декілька збігів" -#: commands/typecmds.c:1993 +#: commands/typecmds.c:2031 #, c-format msgid "type input function %s must return type %s" msgstr "функція вводу типу %s повинна повертати тип %s" -#: commands/typecmds.c:2009 +#: commands/typecmds.c:2047 #, c-format msgid "type input function %s should not be volatile" msgstr "функція введення типу %s не повинна бути змінною" -#: commands/typecmds.c:2037 +#: commands/typecmds.c:2075 #, c-format msgid "type output function %s must return type %s" msgstr "функція виводу типу %s повинна повертати тип %s" -#: commands/typecmds.c:2044 +#: commands/typecmds.c:2082 #, c-format msgid "type output function %s should not be volatile" msgstr "функція виводу типу %s не повинна бути змінною" -#: commands/typecmds.c:2073 +#: commands/typecmds.c:2111 #, c-format msgid "type receive function %s has multiple matches" msgstr "функція отримання типу %s має декілька збігів" -#: commands/typecmds.c:2091 +#: commands/typecmds.c:2129 #, c-format msgid "type receive function %s must return type %s" msgstr "функція отримання типу %s повинна повертати тип %s" -#: commands/typecmds.c:2098 +#: commands/typecmds.c:2136 #, c-format msgid "type receive function %s should not be volatile" msgstr "функція отримання типу %s не повинна бути змінною" -#: commands/typecmds.c:2126 +#: commands/typecmds.c:2164 #, c-format msgid "type send function %s must return type %s" msgstr "функція відправлення типу %s повинна повертати тип %s" -#: commands/typecmds.c:2133 +#: commands/typecmds.c:2171 #, c-format msgid "type send function %s should not be volatile" msgstr "функція відправлення типу %s не повинна бути змінною" -#: commands/typecmds.c:2160 +#: commands/typecmds.c:2198 #, c-format msgid "typmod_in function %s must return type %s" msgstr "функція typmod_in %s повинна повертати тип %s" -#: commands/typecmds.c:2167 +#: commands/typecmds.c:2205 #, c-format msgid "type modifier input function %s should not be volatile" msgstr "функція вводу модифікатора типу %s не повинна бути змінною" -#: commands/typecmds.c:2194 +#: commands/typecmds.c:2232 #, c-format msgid "typmod_out function %s must return type %s" msgstr "функція typmod_out %s повинна повертати тип %s" -#: commands/typecmds.c:2201 +#: commands/typecmds.c:2239 #, c-format msgid "type modifier output function %s should not be volatile" msgstr "функція виводу модифікатора типу %s не повинна бути змінною" -#: commands/typecmds.c:2228 +#: commands/typecmds.c:2266 #, c-format msgid "type analyze function %s must return type %s" msgstr "функція аналізу типу %s повинна повертати тип %s" -#: commands/typecmds.c:2257 +#: commands/typecmds.c:2295 #, c-format msgid "type subscripting function %s must return type %s" msgstr "функція підписки типу %s повинна повертати тип %s" -#: commands/typecmds.c:2267 +#: commands/typecmds.c:2305 #, c-format msgid "user-defined types cannot use subscripting function %s" msgstr "типи визначені користувачем не можуть використовувати функцію підписки %s" -#: commands/typecmds.c:2313 +#: commands/typecmds.c:2351 #, c-format msgid "You must specify an operator class for the range type or define a default operator class for the subtype." msgstr "Ви повинні вказати клас операторів для типу діапазону або визначити клас операторів за замовчуванням для цього підтипу." -#: commands/typecmds.c:2344 +#: commands/typecmds.c:2382 #, c-format msgid "range canonical function %s must return range type" msgstr "функція канонічного діапазону %s повинна вертати тип діапазону" -#: commands/typecmds.c:2350 +#: commands/typecmds.c:2388 #, c-format msgid "range canonical function %s must be immutable" msgstr "функція канонічного діапазону %s повинна бути незмінною" -#: commands/typecmds.c:2386 +#: commands/typecmds.c:2424 #, c-format msgid "range subtype diff function %s must return type %s" msgstr "функція розбіжностей для підтипу діапазону %s повинна повертати тип %s" -#: commands/typecmds.c:2393 +#: commands/typecmds.c:2431 #, c-format msgid "range subtype diff function %s must be immutable" msgstr "функція розбіжностей для підтипу діапазону %s повинна бути незмінною" -#: commands/typecmds.c:2420 +#: commands/typecmds.c:2458 #, c-format msgid "pg_type array OID value not set when in binary upgrade mode" msgstr "значення OID масиву pg_type не встановлено в режимі двійкового оновлення" -#: commands/typecmds.c:2453 +#: commands/typecmds.c:2491 #, c-format msgid "pg_type multirange OID value not set when in binary upgrade mode" msgstr "значення OID в pg_type не задано під час режиму двійкового оновлення" -#: commands/typecmds.c:2486 +#: commands/typecmds.c:2524 #, c-format msgid "pg_type multirange array OID value not set when in binary upgrade mode" msgstr "значення OID масиву в pg_type не задано під час режиму двійкового оновлення" -#: commands/typecmds.c:2868 commands/typecmds.c:3093 +#: commands/typecmds.c:2906 commands/typecmds.c:3088 #, c-format msgid "constraint \"%s\" of domain \"%s\" does not exist" msgstr "обмеження \"%s\" для домену \"%s\" не існує" -#: commands/typecmds.c:2872 +#: commands/typecmds.c:2910 #, c-format msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping" msgstr "обмеження \"%s\" для домену \"%s\" не існує, пропускається" -#: commands/typecmds.c:3100 +#: commands/typecmds.c:3095 #, c-format msgid "constraint \"%s\" of domain \"%s\" is not a check constraint" msgstr "обмеження \"%s\" для домену \"%s\" не є перевірочним обмеженням" -#: commands/typecmds.c:3180 +#: commands/typecmds.c:3175 #, c-format msgid "column \"%s\" of table \"%s\" contains null values" msgstr "стовпець \"%s\" таблиці \"%s\" містить значення NULL" -#: commands/typecmds.c:3269 +#: commands/typecmds.c:3264 #, c-format msgid "column \"%s\" of table \"%s\" contains values that violate the new constraint" msgstr "стовпець \"%s\" таблиці \"%s\" містить значення, які порушують нове обмеження" -#: commands/typecmds.c:3498 commands/typecmds.c:3772 commands/typecmds.c:3857 -#: commands/typecmds.c:4073 +#: commands/typecmds.c:3493 commands/typecmds.c:3771 commands/typecmds.c:3856 +#: commands/typecmds.c:4072 #, c-format msgid "%s is not a domain" msgstr "%s - не домен" -#: commands/typecmds.c:3532 commands/typecmds.c:3686 +#: commands/typecmds.c:3527 commands/typecmds.c:3683 #, c-format msgid "constraint \"%s\" for domain \"%s\" already exists" msgstr "обмеження \"%s\" для домену \"%s\" вже існує" -#: commands/typecmds.c:3583 +#: commands/typecmds.c:3578 #, c-format msgid "cannot use table references in domain check constraint" msgstr "у перевірочному обмеженні для домену не можна посилатись на таблиці" -#: commands/typecmds.c:3784 commands/typecmds.c:3869 commands/typecmds.c:4223 +#: commands/typecmds.c:3783 commands/typecmds.c:3868 commands/typecmds.c:4222 #, c-format msgid "%s is a table's row type" msgstr "%s - тип рядків таблиці" -#: commands/typecmds.c:3794 commands/typecmds.c:3879 commands/typecmds.c:4121 +#: commands/typecmds.c:3793 commands/typecmds.c:3878 commands/typecmds.c:4120 #, c-format msgid "cannot alter array type %s" msgstr "змінити тип масиву \"%s\" не можна" -#: commands/typecmds.c:3796 commands/typecmds.c:3881 commands/typecmds.c:4123 +#: commands/typecmds.c:3795 commands/typecmds.c:3880 commands/typecmds.c:4122 #, c-format msgid "You can alter type %s, which will alter the array type as well." msgstr "Ви можете змінити тип %s, який спричинить зміну типу масиву." -#: commands/typecmds.c:3892 +#: commands/typecmds.c:3891 #, c-format msgid "cannot alter multirange type %s" msgstr "не можна змінювати багатодіапазонний тип %s" -#: commands/typecmds.c:3895 +#: commands/typecmds.c:3894 #, c-format msgid "You can alter type %s, which will alter the multirange type as well." msgstr "Ви можете змінити тип %s, що також змінить тип мультидіапазону." -#: commands/typecmds.c:4202 +#: commands/typecmds.c:4201 #, c-format msgid "type \"%s\" already exists in schema \"%s\"" msgstr "тип \"%s\" вже існує в схемі \"%s\"" -#: commands/typecmds.c:4382 +#: commands/typecmds.c:4381 #, c-format msgid "cannot change type's storage to PLAIN" msgstr "неможливо змінити сховище типу на PLAIN" -#: commands/typecmds.c:4475 +#: commands/typecmds.c:4474 #, c-format msgid "type attribute \"%s\" cannot be changed" msgstr "атрибут типу \"%s\" неможливо змінити" -#: commands/typecmds.c:4493 +#: commands/typecmds.c:4492 #, c-format msgid "must be superuser to alter a type" msgstr "для зміни типу потрібно бути суперкористувачем" -#: commands/typecmds.c:4514 commands/typecmds.c:4523 +#: commands/typecmds.c:4513 commands/typecmds.c:4522 #, c-format msgid "%s is not a base type" msgstr "%s - не є базовим типом" @@ -12787,7 +13191,7 @@ msgid "Only roles with the %s attribute may create roles with the %s attribute." msgstr "Тільки ролі з атрибутом %s можуть створювати ролі з атрибутом %s." #: commands/user.c:354 commands/user.c:1386 commands/user.c:1393 -#: utils/adt/acl.c:5574 utils/adt/acl.c:5580 gram.y:17310 gram.y:17356 +#: utils/adt/acl.c:5707 utils/adt/acl.c:5713 gram.y:17473 gram.y:17519 #, c-format msgid "role name \"%s\" is reserved" msgstr "ім'я ролі \"%s\" зарезервовано" @@ -12847,8 +13251,8 @@ msgstr "Щоб змінити пароль іншої ролі, поточний #: commands/user.c:825 #, c-format -msgid "Only roles with the %s option on role \"%s\" may add members." -msgstr "Тільки ролі з опцією %s на роль \"%s\" можуть додавати учасників." +msgid "Only roles with the %s option on role \"%s\" may add or drop members." +msgstr "Тільки ролі з опцією %s на роль \"%s\" можуть додавати чи видаляти учасників." #: commands/user.c:870 #, c-format @@ -12880,11 +13284,11 @@ msgstr "Тільки ролі з атрибутом %s та опцією %s на msgid "cannot use special role specifier in DROP ROLE" msgstr "використати спеціальну роль у DROP ROLE не можна" -#: commands/user.c:1135 commands/user.c:1357 commands/variable.c:838 -#: commands/variable.c:841 commands/variable.c:947 commands/variable.c:950 -#: utils/adt/acl.c:365 utils/adt/acl.c:385 utils/adt/acl.c:5429 -#: utils/adt/acl.c:5477 utils/adt/acl.c:5505 utils/adt/acl.c:5524 -#: utils/adt/regproc.c:1571 utils/init/miscinit.c:762 +#: commands/user.c:1135 commands/user.c:1357 commands/variable.c:864 +#: commands/variable.c:867 commands/variable.c:983 commands/variable.c:986 +#: utils/adt/acl.c:383 utils/adt/acl.c:403 utils/adt/acl.c:5562 +#: utils/adt/acl.c:5610 utils/adt/acl.c:5638 utils/adt/acl.c:5657 +#: utils/adt/regproc.c:1571 utils/init/miscinit.c:804 #, c-format msgid "role \"%s\" does not exist" msgstr "роль \"%s\" не існує" @@ -12949,7 +13353,7 @@ msgstr "Тільки ролі з атрибутом %s та опцією %s на msgid "MD5 password cleared because of role rename" msgstr "У результаті перейменування ролі сума MD5 паролю очищена" -#: commands/user.c:1518 gram.y:1294 +#: commands/user.c:1518 gram.y:1285 #, c-format msgid "unrecognized role option \"%s\"" msgstr "нерозпізнаний параметр ролі \"%s\"" @@ -12989,244 +13393,239 @@ msgstr "Тільки ролі з привілеями ролі \"%s\" можут msgid "Only roles with privileges of role \"%s\" may reassign objects to it." msgstr "Тільки ролі з привілеями ролі \"%s\" можуть перепризначати об'єкти." -#: commands/user.c:1733 +#: commands/user.c:1734 #, c-format msgid "role \"%s\" cannot be a member of any role" msgstr "роль \"%s\" не може бути членом якої-небудь ролі" -#: commands/user.c:1746 +#: commands/user.c:1747 #, c-format msgid "role \"%s\" is a member of role \"%s\"" msgstr "роль \"%s\" - учасник ролі \"%s\"" -#: commands/user.c:1786 commands/user.c:1812 +#: commands/user.c:1787 commands/user.c:1813 #, c-format msgid "%s option cannot be granted back to your own grantor" msgstr "параметр %s не можна призначити тому, хто призначив їх вам" -#: commands/user.c:1889 +#: commands/user.c:1890 #, c-format msgid "role \"%s\" has already been granted membership in role \"%s\" by role \"%s\"" msgstr "роль \"%s\" вже отримала членство в ролі \"%s\" від ролі \"%s\"" -#: commands/user.c:2024 +#: commands/user.c:2025 #, c-format msgid "role \"%s\" has not been granted membership in role \"%s\" by role \"%s\"" msgstr "роль \"%s\" не отримала членство в ролі \"%s\" від ролі \"%s\"" -#: commands/user.c:2124 +#: commands/user.c:2126 #, c-format msgid "role \"%s\" cannot have explicit members" msgstr "роль \"%s\" не може мати явних членів" -#: commands/user.c:2135 commands/user.c:2158 +#: commands/user.c:2137 commands/user.c:2160 #, c-format msgid "permission denied to grant role \"%s\"" msgstr "немає дозволу для надання ролі \"%s\"" -#: commands/user.c:2137 +#: commands/user.c:2139 #, c-format msgid "Only roles with the %s attribute may grant roles with the %s attribute." msgstr "Тільки ролі з атрибутом %s можуть надавати членство ролі з атрибутом %s." -#: commands/user.c:2142 commands/user.c:2165 +#: commands/user.c:2144 commands/user.c:2167 #, c-format msgid "permission denied to revoke role \"%s\"" msgstr "немає дозволу для відкликання ролі \"%s\"" -#: commands/user.c:2144 +#: commands/user.c:2146 #, c-format msgid "Only roles with the %s attribute may revoke roles with the %s attribute." msgstr "Тільки ролі з атрибутом %s можуть відкликати членство ролі з атрибутом %s." -#: commands/user.c:2160 +#: commands/user.c:2162 #, c-format msgid "Only roles with the %s option on role \"%s\" may grant this role." msgstr "Тільки ролі з опцією %s на роль \"%s\" можуть надавати членство до цієї ролі." -#: commands/user.c:2167 +#: commands/user.c:2169 #, c-format msgid "Only roles with the %s option on role \"%s\" may revoke this role." msgstr "Тільки ролі з опцією %s на роль \"%s\" можуть відкликати членство в цій ролі." -#: commands/user.c:2247 commands/user.c:2256 +#: commands/user.c:2249 commands/user.c:2258 #, c-format msgid "permission denied to grant privileges as role \"%s\"" msgstr "немає дозволу для надання привілеїв ролі \"%s\"" -#: commands/user.c:2249 +#: commands/user.c:2251 #, c-format msgid "Only roles with privileges of role \"%s\" may grant privileges as this role." msgstr "Тільки ролі з привілеями ролі \"%s\" можуть надавати привілеї цієї ролі." -#: commands/user.c:2258 +#: commands/user.c:2260 #, c-format msgid "The grantor must have the %s option on role \"%s\"." msgstr "Власник прав повинен мати опцію %s для ролі \"%s\"." -#: commands/user.c:2266 +#: commands/user.c:2268 #, c-format msgid "permission denied to revoke privileges granted by role \"%s\"" msgstr "відмовлено у дозволі на відкликання привілеїв, наданих роллю \"%s\"" -#: commands/user.c:2268 +#: commands/user.c:2270 #, c-format msgid "Only roles with privileges of role \"%s\" may revoke privileges granted by this role." msgstr "Тільки ролі з привілеями ролі \"%s\" можуть відкликати привілеї, надані цією роллю." -#: commands/user.c:2491 utils/adt/acl.c:1324 +#: commands/user.c:2493 utils/adt/acl.c:1342 #, c-format msgid "dependent privileges exist" msgstr "залежні права існують" -#: commands/user.c:2492 utils/adt/acl.c:1325 +#: commands/user.c:2494 utils/adt/acl.c:1343 #, c-format msgid "Use CASCADE to revoke them too." msgstr "Використайте CASCADE, щоб відкликати їх." -#: commands/vacuum.c:134 +#: commands/vacuum.c:148 #, c-format -msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB" -msgstr "\"vacuum_buffer_usage_limit\" має бути 0 або між %d та %d kB" +msgid "\"%s\" must be 0 or between %d kB and %d kB." +msgstr "\"%s\" повинен бути 0 або між %d кБ і %d кБ." -#: commands/vacuum.c:209 +#: commands/vacuum.c:224 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "Параметр BUFFER_USAGE_LIMIT повинен бути 0 або між %d та %d kB" -#: commands/vacuum.c:219 -#, c-format -msgid "unrecognized ANALYZE option \"%s\"" -msgstr "нерозпізнаний параметр ANALYZE \"%s\"" - -#: commands/vacuum.c:259 +#: commands/vacuum.c:275 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "паралельний параметр потребує значення між 0 і %d" -#: commands/vacuum.c:271 +#: commands/vacuum.c:287 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "одночасні процеси для очищення повинні бути між 0 і %d" -#: commands/vacuum.c:292 -#, c-format -msgid "unrecognized VACUUM option \"%s\"" -msgstr "нерозпізнаний параметр VACUUM \"%s\"" - -#: commands/vacuum.c:318 +#: commands/vacuum.c:335 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL не можна виконати паралельно" -#: commands/vacuum.c:329 +#: commands/vacuum.c:346 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "BUFFER_USAGE_LIMIT не можна задати для VACUUM FULL" -#: commands/vacuum.c:343 +#: commands/vacuum.c:360 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "Якщо задається список стовпців, необхідно вказати параметр ANALYZE" -#: commands/vacuum.c:355 +#: commands/vacuum.c:372 #, c-format msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL" msgstr "Параметр VACUUM DISABLE_PAGE_SKIPPING не можна використовувати з FULL" -#: commands/vacuum.c:362 +#: commands/vacuum.c:379 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "PROCESS_TOAST потребується з VACUUM FULL" -#: commands/vacuum.c:371 +#: commands/vacuum.c:388 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables" msgstr "ONLY_DATABASE_STATS не можна вказувати зі списком таблиць" -#: commands/vacuum.c:380 +#: commands/vacuum.c:397 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STATS не можна вказувати з іншими опціями VACUUUM" -#: commands/vacuum.c:515 +#: commands/vacuum.c:537 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s не можна виконати під час VACUUM або ANALYZE" -#: commands/vacuum.c:730 +#: commands/vacuum.c:759 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "немає дозволу для очистки\"%s\", пропускаємо його" -#: commands/vacuum.c:743 +#: commands/vacuum.c:772 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "відмовлено в дозволі на аналіз \"%s\", пропуск" -#: commands/vacuum.c:821 commands/vacuum.c:918 +#: commands/vacuum.c:850 commands/vacuum.c:951 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "очистка \"%s\" пропускається --- блокування недоступне" -#: commands/vacuum.c:826 +#: commands/vacuum.c:855 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "очистка \"%s\" пропускається --- це відношення більше не існує" -#: commands/vacuum.c:842 commands/vacuum.c:923 +#: commands/vacuum.c:871 commands/vacuum.c:956 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "пропуск аналізу об'єкта \"%s\" --- блокування недоступне" -#: commands/vacuum.c:847 +#: commands/vacuum.c:876 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "пропуск аналізу об'єкта\"%s\" --- відношення більше не існує" -#: commands/vacuum.c:1139 +#: commands/vacuum.c:992 +#, c-format +msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" +msgstr "VACUUM ONLY партиційної таблиці \"%s\" не має ефекту" + +#: commands/vacuum.c:1183 #, c-format msgid "cutoff for removing and freezing tuples is far in the past" msgstr "відсікання для видалення та заморожування кортежів залишилося далеко в минулому" -#: commands/vacuum.c:1140 commands/vacuum.c:1145 +#: commands/vacuum.c:1184 commands/vacuum.c:1189 #, c-format 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:1144 +#: commands/vacuum.c:1188 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "відсікання для заморожування мультитранзакцій залишилося далеко в минулому" -#: commands/vacuum.c:1890 +#: commands/vacuum.c:1950 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "деякі бази даних не очищалися протягом більш ніж 2 мільярдів транзакцій" -#: commands/vacuum.c:1891 +#: commands/vacuum.c:1951 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "Можливо, ви вже втратили дані в результаті зациклення транзакцій." -#: commands/vacuum.c:2070 +#: commands/vacuum.c:2143 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "пропускається \"%s\" --- очищати не таблиці або спеціальні системні таблиці не можна" -#: commands/vacuum.c:2502 +#: commands/vacuum.c:2659 #, c-format -msgid "scanned index \"%s\" to remove %lld row versions" -msgstr "" +msgid "scanned index \"%s\" to remove % row versions" +msgstr "проскановано індекс \"%s\" для видалення % версій рядків" -#: commands/vacuum.c:2521 +#: commands/vacuum.c:2678 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "індекс \"%s\" наразі містить %.0f версій рядків у %u сторінках" -#: commands/vacuum.c:2525 +#: commands/vacuum.c:2682 #, c-format msgid "%.0f index row versions were removed.\n" "%u index pages were newly deleted.\n" @@ -13235,7 +13634,7 @@ msgstr "%.0f версій індексних рядків було видале "%u індексних сторінок щойно видалено.\n" "%u індексних сторінок наразі видалено, з яких %u наразі можна використовувати повторно." -#: commands/vacuumparallel.c:708 +#: commands/vacuumparallel.c:709 #, c-format msgid "launched %d parallel vacuum worker for index vacuuming (planned: %d)" msgid_plural "launched %d parallel vacuum workers for index vacuuming (planned: %d)" @@ -13244,19 +13643,19 @@ msgstr[1] "запущено %d паралельних виконавців оч msgstr[2] "запущено %d паралельних виконавців очистки для очищення індексу (заплановано: %d)" msgstr[3] "запущено %d паралельних виконавців очистки для очищення індексу (заплановано: %d)" -#: commands/vacuumparallel.c:714 +#: commands/vacuumparallel.c:715 #, c-format msgid "launched %d parallel vacuum worker for index cleanup (planned: %d)" msgid_plural "launched %d parallel vacuum workers for index cleanup (planned: %d)" -msgstr[0] "запущений %d паралельний виконавець очистки для очищення індексу (заплановано: %d)" +msgstr[0] "запущено %d паралельний виконавець очистки для очищення індексу (заплановано: %d)" msgstr[1] "запущено %d паралельних виконавців очистки для очищення індексу (заплановано: %d)" msgstr[2] "запущено %d паралельних виконавців очистки для очищення індексу (заплановано: %d)" msgstr[3] "запущено %d паралельних виконавців очистки для очищення індексу (заплановано: %d)" #: commands/variable.c:185 #, c-format -msgid "Conflicting \"datestyle\" specifications." -msgstr "Суперечливі специфікації стилю дат." +msgid "Conflicting \"DateStyle\" specifications." +msgstr "Конфліктуючі специфікації \"DateStyle\"." #: commands/variable.c:307 #, c-format @@ -13268,12 +13667,12 @@ msgstr "В інтервалі, що задає часовий пояс, не м msgid "Cannot specify days in time zone interval." msgstr "В інтервалі, що задає часовий пояс, не можна вказувати дні." -#: commands/variable.c:351 commands/variable.c:433 +#: commands/variable.c:351 commands/variable.c:435 #, c-format msgid "time zone \"%s\" appears to use leap seconds" msgstr "часовий пояс \"%s\", мабуть, використовує високосні секунди" -#: commands/variable.c:353 commands/variable.c:435 +#: commands/variable.c:353 commands/variable.c:437 #, c-format msgid "PostgreSQL does not support leap seconds." msgstr "PostgreSQL не підтримує високосні секунди." @@ -13283,107 +13682,97 @@ msgstr "PostgreSQL не підтримує високосні секунди." msgid "UTC timezone offset is out of range." msgstr "Зсув часового поясу UTC поза діапазоном." -#: commands/variable.c:552 +#: commands/variable.c:554 #, c-format msgid "cannot set transaction read-write mode inside a read-only transaction" msgstr "не можна встановити режим транзакції \"читання-запис\" всередині транзакції \"лише читання\"" -#: commands/variable.c:559 +#: commands/variable.c:561 #, c-format msgid "transaction read-write mode must be set before any query" msgstr "режим транзакції \"читання-запис\" повинен бути встановлений до виконання запитів" -#: commands/variable.c:566 +#: commands/variable.c:568 #, c-format msgid "cannot set transaction read-write mode during recovery" msgstr "не можна встановити режим транзакції \"читання-запис\" під час відновлення" -#: commands/variable.c:592 +#: commands/variable.c:596 #, c-format msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query" msgstr "Команда SET TRANSACTION ISOLATION LEVEL повинна викликатися до будь-яких запитів" -#: commands/variable.c:599 +#: commands/variable.c:603 #, c-format msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction" msgstr "Команда SET TRANSACTION ISOLATION LEVEL не повинна викликатияь в підтранзакції" -#: commands/variable.c:606 storage/lmgr/predicate.c:1680 +#: commands/variable.c:610 storage/lmgr/predicate.c:1695 #, c-format msgid "cannot use serializable mode in a hot standby" msgstr "використовувати серіалізований режим в hot standby не можна" -#: commands/variable.c:607 +#: commands/variable.c:611 #, c-format msgid "You can use REPEATABLE READ instead." msgstr "Ви можете використати REPEATABLE READ замість цього." -#: commands/variable.c:625 +#: commands/variable.c:633 #, c-format msgid "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction" msgstr "Команда SET TRANSACTION [NOT] DEFERRABLE не може викликатись в підтранзакції" -#: commands/variable.c:631 +#: commands/variable.c:639 #, c-format msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query" msgstr "Команда SET TRANSACTION [NOT] DEFERRABLE повинна викликатись до будь-яких запитів" -#: commands/variable.c:713 +#: commands/variable.c:715 +#, c-format +msgid "Cannot change \"client_encoding\" during a parallel operation." +msgstr "Не можна змінити \"client_encoding\" під час паралельної операції." + +#: commands/variable.c:743 #, c-format msgid "Conversion between %s and %s is not supported." msgstr "Перетворення між %s і %s не підтримується." -#: commands/variable.c:720 +#: commands/variable.c:750 #, c-format msgid "Cannot change \"client_encoding\" now." msgstr "Змінити клієнтське кодування зараз неможливо." -#: commands/variable.c:781 -#, c-format -msgid "cannot change \"client_encoding\" during a parallel operation" -msgstr "" - -#: commands/variable.c:863 +#: commands/variable.c:889 #, c-format msgid "permission will be denied to set session authorization \"%s\"" msgstr "буде відмовлено у встановленні авторизації сеансу \"%s\"" -#: commands/variable.c:868 +#: commands/variable.c:894 #, c-format msgid "permission denied to set session authorization \"%s\"" msgstr "відмовлено у встановленні авторизації сеансу \"%s\"" -#: commands/variable.c:972 +#: commands/variable.c:1003 #, c-format msgid "permission will be denied to set role \"%s\"" -msgstr "немає прав для встановлення ролі \"%s\"" +msgstr "немає дозволу для встановлення ролі \"%s\"" -#: commands/variable.c:977 +#: commands/variable.c:1008 #, c-format msgid "permission denied to set role \"%s\"" msgstr "немає прав для встановлення ролі \"%s\"" -#: commands/variable.c:1177 +#: commands/variable.c:1226 #, c-format msgid "Bonjour is not supported by this build" msgstr "Bonjour не підтримується даною збіркою" -#: commands/variable.c:1205 -#, c-format -msgid "\"effective_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." -msgstr "" - -#: commands/variable.c:1218 -#, c-format -msgid "\"maintenance_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." -msgstr "" - -#: commands/variable.c:1231 +#: commands/variable.c:1254 #, c-format msgid "SSL is not supported by this build" msgstr "SSL не підтримується даною збіркою" -#: commands/view.c:79 +#: commands/view.c:78 #, c-format msgid "could not determine which collation to use for view column \"%s\"" msgstr "не вдалося визначити, яке правило сортування використати для стовпця подання \"%s\"" @@ -13469,57 +13858,57 @@ msgstr "курсор \"%s\" не розташовується у рядку" msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\"" msgstr "курсор \"%s\" - не просте оновлюване сканування таблиці \"%s\"" -#: executor/execCurrent.c:280 executor/execExprInterp.c:2543 +#: executor/execCurrent.c:280 executor/execExprInterp.c:3093 #, c-format msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)" msgstr "тип параметру %d (%s) не відповідає тому, з котрим тривала підготовка плану (%s)" -#: executor/execCurrent.c:292 executor/execExprInterp.c:2555 +#: executor/execCurrent.c:292 executor/execExprInterp.c:3105 #, c-format msgid "no value found for parameter %d" msgstr "не знайдено значення для параметру %d" -#: executor/execExpr.c:642 executor/execExpr.c:649 executor/execExpr.c:655 -#: executor/execExprInterp.c:4840 executor/execExprInterp.c:4857 -#: executor/execExprInterp.c:4956 executor/nodeModifyTable.c:203 -#: executor/nodeModifyTable.c:214 executor/nodeModifyTable.c:231 -#: executor/nodeModifyTable.c:239 +#: executor/execExpr.c:667 executor/execExpr.c:674 executor/execExpr.c:680 +#: executor/execExprInterp.c:5439 executor/execExprInterp.c:5456 +#: executor/execExprInterp.c:5555 executor/nodeModifyTable.c:211 +#: executor/nodeModifyTable.c:230 executor/nodeModifyTable.c:247 +#: executor/nodeModifyTable.c:257 executor/nodeModifyTable.c:267 #, c-format msgid "table row type and query-specified row type do not match" msgstr "тип рядка таблиці відрізняється від типу рядка-результату запиту" -#: executor/execExpr.c:643 executor/nodeModifyTable.c:204 +#: executor/execExpr.c:668 executor/nodeModifyTable.c:212 #, c-format msgid "Query has too many columns." msgstr "Запит повертає дуже багато стовпців." -#: executor/execExpr.c:650 executor/nodeModifyTable.c:232 +#: executor/execExpr.c:675 executor/nodeModifyTable.c:231 #, c-format msgid "Query provides a value for a dropped column at ordinal position %d." msgstr "Запит надає значення для видаленого стовпця з порядковим номером %d." -#: executor/execExpr.c:656 executor/execExprInterp.c:4858 -#: executor/nodeModifyTable.c:215 +#: executor/execExpr.c:681 executor/execExprInterp.c:5457 +#: executor/nodeModifyTable.c:258 #, c-format msgid "Table has type %s at ordinal position %d, but query expects %s." msgstr "Таблиця має тип %s у порядковому розташуванні %d, але запит очікує %s." -#: executor/execExpr.c:1104 parser/parse_agg.c:838 +#: executor/execExpr.c:1157 parser/parse_agg.c:896 #, c-format msgid "window function calls cannot be nested" msgstr "виклики віконних функцій не можуть бути вкладеними" -#: executor/execExpr.c:1641 +#: executor/execExpr.c:1689 #, c-format msgid "target type is not an array" msgstr "цільовий тип не є масивом" -#: executor/execExpr.c:1981 +#: executor/execExpr.c:2033 #, c-format msgid "ROW() column has type %s instead of type %s" msgstr "Стовпець ROW() має тип %s замість %s" -#: executor/execExpr.c:2643 executor/execSRF.c:718 parser/parse_func.c:138 +#: executor/execExpr.c:2729 executor/execSRF.c:718 parser/parse_func.c:138 #: parser/parse_func.c:655 parser/parse_func.c:1033 #, c-format msgid "cannot pass more than %d argument to a function" @@ -13529,121 +13918,121 @@ msgstr[1] "функції не можна передати більше ніж % msgstr[2] "функції не можна передати більше ніж %d аргументів" msgstr[3] "функції не можна передати більше ніж %d аргументів" -#: executor/execExpr.c:2670 executor/execSRF.c:738 executor/functions.c:1068 -#: utils/adt/jsonfuncs.c:4054 utils/fmgr/funcapi.c:89 utils/fmgr/funcapi.c:143 +#: executor/execExpr.c:2756 executor/execSRF.c:738 executor/functions.c:1604 +#: utils/adt/jsonfuncs.c:4056 utils/fmgr/funcapi.c:89 utils/fmgr/funcapi.c:143 #, c-format msgid "set-valued function called in context that cannot accept a set" msgstr "функція \"set-valued\" викликана в контексті, де йому немає місця" -#: executor/execExpr.c:3076 parser/parse_node.c:272 parser/parse_node.c:322 +#: executor/execExpr.c:3262 parser/parse_node.c:272 parser/parse_node.c:322 #, c-format msgid "cannot subscript type %s because it does not support subscripting" msgstr "не можна підписати вказати тип %s, тому що він не підтримує підписку" -#: executor/execExpr.c:3204 executor/execExpr.c:3226 +#: executor/execExpr.c:3390 executor/execExpr.c:3412 #, c-format msgid "type %s does not support subscripted assignment" msgstr "тип %s не підтримує вказані присвоєння за підпискою" -#: executor/execExprInterp.c:2007 +#: executor/execExprInterp.c:2415 #, c-format msgid "attribute %d of type %s has been dropped" msgstr "атрибут %d типу %s був видалений" -#: executor/execExprInterp.c:2013 +#: executor/execExprInterp.c:2421 #, c-format msgid "attribute %d of type %s has wrong type" msgstr "атрибут %d типу %s має неправильний тип" -#: executor/execExprInterp.c:2015 executor/execExprInterp.c:3214 -#: executor/execExprInterp.c:3260 +#: executor/execExprInterp.c:2423 executor/execExprInterp.c:3782 +#: executor/execExprInterp.c:3828 #, c-format msgid "Table has type %s, but query expects %s." msgstr "Таблиця має тип %s, але запит очікував %s." -#: executor/execExprInterp.c:2095 utils/adt/expandedrecord.c:99 -#: utils/adt/expandedrecord.c:231 utils/cache/typcache.c:1752 -#: utils/cache/typcache.c:1911 utils/cache/typcache.c:2058 +#: executor/execExprInterp.c:2503 utils/adt/expandedrecord.c:99 +#: utils/adt/expandedrecord.c:231 utils/cache/typcache.c:1841 +#: utils/cache/typcache.c:2000 utils/cache/typcache.c:2147 #: utils/fmgr/funcapi.c:569 #, c-format msgid "type %s is not composite" msgstr "тип %s не є складеним" -#: executor/execExprInterp.c:2698 +#: executor/execExprInterp.c:3266 #, c-format msgid "WHERE CURRENT OF is not supported for this table type" msgstr "WHERE CURRENT OF для таблиць такого типу не підтримується" -#: executor/execExprInterp.c:2911 +#: executor/execExprInterp.c:3479 #, c-format msgid "cannot merge incompatible arrays" msgstr "не можна об'єднати несумісні масиви" -#: executor/execExprInterp.c:2912 +#: executor/execExprInterp.c:3480 #, c-format msgid "Array with element type %s cannot be included in ARRAY construct with element type %s." msgstr "Масив з типом елементів %s не може бути включений в конструкцію ARRAY з типом елементів %s." -#: executor/execExprInterp.c:2933 utils/adt/arrayfuncs.c:1305 -#: utils/adt/arrayfuncs.c:3503 utils/adt/arrayfuncs.c:5593 -#: utils/adt/arrayfuncs.c:6110 utils/adt/arraysubs.c:150 -#: utils/adt/arraysubs.c:488 +#: executor/execExprInterp.c:3501 utils/adt/arrayfuncs.c:1305 +#: utils/adt/arrayfuncs.c:3515 utils/adt/arrayfuncs.c:5605 +#: utils/adt/arrayfuncs.c:6124 utils/adt/arraysubs.c:151 +#: utils/adt/arraysubs.c:489 #, c-format msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)" msgstr "число вимірів масива (%d) перевищує ліміт (%d)" -#: executor/execExprInterp.c:2953 executor/execExprInterp.c:2988 +#: executor/execExprInterp.c:3521 executor/execExprInterp.c:3556 #, c-format msgid "multidimensional arrays must have array expressions with matching dimensions" msgstr "для багатовимірних масивів повинні задаватись вирази з відповідними вимірами" -#: executor/execExprInterp.c:2965 utils/adt/array_expanded.c:274 +#: executor/execExprInterp.c:3533 utils/adt/array_expanded.c:274 #: utils/adt/arrayfuncs.c:335 utils/adt/arrayfuncs.c:494 #: utils/adt/arrayfuncs.c:727 utils/adt/arrayfuncs.c:1533 #: utils/adt/arrayfuncs.c:2341 utils/adt/arrayfuncs.c:2356 #: utils/adt/arrayfuncs.c:2618 utils/adt/arrayfuncs.c:2634 #: utils/adt/arrayfuncs.c:2895 utils/adt/arrayfuncs.c:2949 #: utils/adt/arrayfuncs.c:2964 utils/adt/arrayfuncs.c:3305 -#: utils/adt/arrayfuncs.c:3533 utils/adt/arrayfuncs.c:5365 -#: utils/adt/arrayfuncs.c:6202 utils/adt/arrayfuncs.c:6546 +#: utils/adt/arrayfuncs.c:3545 utils/adt/arrayfuncs.c:5377 +#: utils/adt/arrayfuncs.c:6216 utils/adt/arrayfuncs.c:6560 #: utils/adt/arrayutils.c:83 utils/adt/arrayutils.c:92 #: utils/adt/arrayutils.c:99 #, c-format msgid "array size exceeds the maximum allowed (%d)" msgstr "розмір масиву перевищує максимальний допустимий розмір (%d)" -#: executor/execExprInterp.c:3213 executor/execExprInterp.c:3259 +#: executor/execExprInterp.c:3781 executor/execExprInterp.c:3827 #, c-format msgid "attribute %d has wrong type" msgstr "атрибут %d має неправильний тип" -#: executor/execExprInterp.c:3845 utils/adt/domains.c:158 +#: executor/execExprInterp.c:4413 utils/adt/domains.c:158 #, c-format msgid "domain %s does not allow null values" msgstr "домен %s не допускає значення null" -#: executor/execExprInterp.c:3860 utils/adt/domains.c:196 +#: executor/execExprInterp.c:4428 utils/adt/domains.c:196 #, c-format msgid "value for domain %s violates check constraint \"%s\"" msgstr "значення домену %s порушує перевірочнео бмеження \"%s\"" -#: executor/execExprInterp.c:4435 +#: executor/execExprInterp.c:5003 #, c-format msgid "no SQL/JSON item found for specified path of column \"%s\"" -msgstr "" +msgstr "не знайдено елемента SQL/JSON для вказаного шляху стовпця \"%s\"" -#: executor/execExprInterp.c:4440 +#: executor/execExprInterp.c:5008 #, c-format msgid "no SQL/JSON item found for specified path" -msgstr "" +msgstr "не знайдено елемента SQL/JSON для вказаного шляху" #. translator: first %s is a SQL/JSON clause (e.g. ON ERROR) -#: executor/execExprInterp.c:4640 executor/execExprInterp.c:4648 +#: executor/execExprInterp.c:5208 executor/execExprInterp.c:5216 #, c-format msgid "could not coerce %s expression (%s) to the RETURNING type" -msgstr "" +msgstr "не вдалося привести %s вираз (%s) до типу RETURNING" -#: executor/execExprInterp.c:4841 +#: executor/execExprInterp.c:5440 #, c-format msgid "Table row contains %d attribute, but query expects %d." msgid_plural "Table row contains %d attributes, but query expects %d." @@ -13652,258 +14041,261 @@ msgstr[1] "Рядок таблиці містить %d атрибути, але msgstr[2] "Рядок таблиці містить %d атрибутів, але запит очікував %d." msgstr[3] "Рядок таблиці містить %d атрибутів, але запит очікував %d." -#: executor/execExprInterp.c:4957 executor/execSRF.c:977 +#: executor/execExprInterp.c:5556 executor/execSRF.c:977 #, c-format msgid "Physical storage mismatch on dropped attribute at ordinal position %d." msgstr "Невідповідність параметрів фізичного зберігання видаленого атрибуту %d." -#: executor/execIndexing.c:593 +#: executor/execIndexing.c:608 #, c-format msgid "ON CONFLICT does not support deferrable unique constraints/exclusion constraints as arbiters" msgstr "ON CONFLICT не підтримує відкладені обмеження унікальності/обмеження-виключення в якості визначального індексу" -#: executor/execIndexing.c:870 +#: executor/execIndexing.c:911 #, c-format msgid "could not create exclusion constraint \"%s\"" msgstr "не вдалося створити обмеження-виключення \"%s\"" -#: executor/execIndexing.c:873 +#: executor/execIndexing.c:914 #, c-format msgid "Key %s conflicts with key %s." msgstr "Ключ %s конфліктує з ключем %s." -#: executor/execIndexing.c:875 +#: executor/execIndexing.c:916 #, c-format msgid "Key conflicts exist." msgstr "Існують конфлікти ключей." -#: executor/execIndexing.c:881 +#: executor/execIndexing.c:922 #, c-format msgid "conflicting key value violates exclusion constraint \"%s\"" msgstr "конфліктуюче значення ключа порушує обмеження-виключення \"%s\"" -#: executor/execIndexing.c:884 +#: executor/execIndexing.c:925 #, c-format msgid "Key %s conflicts with existing key %s." msgstr "Ключ %s конфліктує з існуючим ключем %s." -#: executor/execIndexing.c:886 +#: executor/execIndexing.c:927 #, c-format msgid "Key conflicts with existing key." msgstr "Ключ конфліктує з існуючим ключем." -#: executor/execMain.c:1043 +#: executor/execIndexing.c:1172 +#, c-format +msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" +msgstr "знайдено порожнє значення WITHOUT OVERLAPS у стовпці \"%s\" у відношенні \"%s\"" + +#: executor/execMain.c:1085 #, c-format msgid "cannot change sequence \"%s\"" msgstr "послідовність \"%s\" не можна змінити" -#: executor/execMain.c:1049 +#: executor/execMain.c:1091 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "TOAST-відношення \"%s\" не можна змінити" -#: executor/execMain.c:1068 +#: executor/execMain.c:1110 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "змінити матеріалізоване подання \"%s\" не можна" -#: executor/execMain.c:1080 +#: executor/execMain.c:1122 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "вставляти дані в зовнішню таблицю \"%s\" не можна" -#: executor/execMain.c:1086 +#: executor/execMain.c:1128 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "зовнішня таблиця \"%s\" не допускає додавання даних" -#: executor/execMain.c:1093 +#: executor/execMain.c:1135 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "оновити зовнішню таблицю \"%s\" не можна" -#: executor/execMain.c:1099 +#: executor/execMain.c:1141 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "зовнішня таблиця \"%s\" не дозволяє оновлення" -#: executor/execMain.c:1106 +#: executor/execMain.c:1148 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "видаляти дані з зовнішньої таблиці \"%s\" не можна" -#: executor/execMain.c:1112 +#: executor/execMain.c:1154 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "зовнішня таблиця \"%s\" не дозволяє видалення даних" -#: executor/execMain.c:1123 +#: executor/execMain.c:1165 #, c-format msgid "cannot change relation \"%s\"" msgstr "відношення \"%s\" не можна змінити" -#: executor/execMain.c:1150 +#: executor/execMain.c:1192 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "блокувати рядки в послідовності \"%s\" не можна" -#: executor/execMain.c:1157 +#: executor/execMain.c:1199 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "блокувати рядки в TOAST-відношенні \"%s\" не можна" -#: executor/execMain.c:1164 +#: executor/execMain.c:1206 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "блокувати рядки в поданні \"%s\" не можна" -#: executor/execMain.c:1172 +#: executor/execMain.c:1214 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "блокувати рядки в матеріалізованому поданні \"%s\" не можна" -#: executor/execMain.c:1181 executor/execMain.c:2686 +#: executor/execMain.c:1223 executor/execMain.c:2865 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "блокувати рядки в зовнішній таблиці \"%s\" не можна" -#: executor/execMain.c:1187 +#: executor/execMain.c:1229 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "блокувати рядки у відношенні \"%s\" не можна" -#: executor/execMain.c:1900 +#: executor/execMain.c:1962 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "новий рядок для відношення \"%s\" порушує обмеження секції" -#: executor/execMain.c:1902 executor/execMain.c:1986 executor/execMain.c:2037 -#: executor/execMain.c:2147 +#: executor/execMain.c:1964 executor/execMain.c:2076 executor/execMain.c:2214 +#: executor/execMain.c:2322 #, c-format msgid "Failing row contains %s." msgstr "Помилковий рядок містить %s." -#: executor/execMain.c:1983 -#, c-format -msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" -msgstr "null значення в стовпці \"%s\" відношення \"%s\" порушує not-null обмеження" - -#: executor/execMain.c:2035 +#: executor/execMain.c:2074 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "новий рядок для відношення \"%s\" порушує перевірне обмеження перевірку \"%s\"" -#: executor/execMain.c:2145 +#: executor/execMain.c:2211 +#, c-format +msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" +msgstr "null значення в стовпці \"%s\" відношення \"%s\" порушує not-null обмеження" + +#: executor/execMain.c:2320 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "новий рядок порушує параметр перевірки для подання \"%s\"" -#: executor/execMain.c:2155 +#: executor/execMain.c:2330 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "новий рядок порушує політику захисту на рівні рядків \"%s\" для таблиці \"%s\"" -#: executor/execMain.c:2160 +#: executor/execMain.c:2335 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "новий рядок порушує політику захисту на рівні рядків для таблиці \"%s\"" -#: executor/execMain.c:2168 +#: executor/execMain.c:2343 #, c-format msgid "target row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "цільовий рядок порушує політику захисту на рівні рядків \"%s\" (вираз USING) для таблиці \"%s\"" -#: executor/execMain.c:2173 +#: executor/execMain.c:2348 #, c-format msgid "target row violates row-level security policy (USING expression) for table \"%s\"" msgstr "цільовий рядок порушує політику захисту на рівні рядків (вираз USING) для таблиці \"%s\"" -#: executor/execMain.c:2180 +#: executor/execMain.c:2355 #, c-format msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "новий рядок порушує політику захисту на рівні рядків \"%s\" (вираз USING) для таблиці \"%s\"" -#: executor/execMain.c:2185 +#: executor/execMain.c:2360 #, c-format msgid "new row violates row-level security policy (USING expression) for table \"%s\"" msgstr "новий рядок порушує політику захисту на рівні рядків (вираз USING) для таблиці \"%s\"" -#: executor/execPartition.c:327 +#: executor/execPartition.c:330 #, c-format msgid "no partition of relation \"%s\" found for row" msgstr "для рядка не знайдено секції у відношенні \"%s\"" -#: executor/execPartition.c:330 +#: executor/execPartition.c:333 #, c-format msgid "Partition key of the failing row contains %s." msgstr "Ключ секціонування для невідповідного рядка містить %s." -#: executor/execReplication.c:272 executor/execReplication.c:456 +#: executor/execReplication.c:147 #, c-format msgid "tuple to be locked was already moved to another partition due to concurrent update, retrying" msgstr "кортеж, що підлягає блокуванню, вже переміщено в іншу секцію в результаті паралельного оновлення, триває повторна спроба" -#: executor/execReplication.c:276 executor/execReplication.c:460 +#: executor/execReplication.c:151 #, c-format msgid "concurrent update, retrying" msgstr "паралельне оновлення, триває повторна спроба" -#: executor/execReplication.c:282 executor/execReplication.c:466 +#: executor/execReplication.c:158 #, c-format msgid "concurrent delete, retrying" msgstr "паралельне видалення, триває повторна спроба" -#: executor/execReplication.c:352 parser/parse_cte.c:302 -#: parser/parse_oper.c:221 utils/adt/array_userfuncs.c:1334 -#: utils/adt/array_userfuncs.c:1477 utils/adt/arrayfuncs.c:3852 -#: utils/adt/arrayfuncs.c:4407 utils/adt/arrayfuncs.c:6426 -#: utils/adt/rowtypes.c:1220 -#, c-format -msgid "could not identify an equality operator for type %s" -msgstr "не вдалося визначити оператора рівності для типу %s" - -#: executor/execReplication.c:683 executor/execReplication.c:689 +#: executor/execReplication.c:809 executor/execReplication.c:815 +#: executor/execReplication.c:821 #, c-format msgid "cannot update table \"%s\"" msgstr "оновити таблицю \"%s\" не можна" -#: executor/execReplication.c:685 executor/execReplication.c:697 +#: executor/execReplication.c:811 executor/execReplication.c:829 #, c-format msgid "Column used in the publication WHERE expression is not part of the replica identity." msgstr "Стовпець, що використовується в виразі WHERE публікації не є частиною ідентифікації репліки." -#: executor/execReplication.c:691 executor/execReplication.c:703 +#: executor/execReplication.c:817 executor/execReplication.c:835 #, c-format msgid "Column list used by the publication does not cover the replica identity." msgstr "Список стовпців, який використовується публікацією, не охоплює ідентифікацію репліки." -#: executor/execReplication.c:695 executor/execReplication.c:701 +#: executor/execReplication.c:823 executor/execReplication.c:841 +#, c-format +msgid "Replica identity must not contain unpublished generated columns." +msgstr "Ідентичність репліки не повинна містити неопубліковані генеровані стовпці." + +#: executor/execReplication.c:827 executor/execReplication.c:833 +#: executor/execReplication.c:839 #, c-format msgid "cannot delete from table \"%s\"" msgstr "видалити дані з таблиці \"%s\" не можна" -#: executor/execReplication.c:721 +#: executor/execReplication.c:859 #, c-format msgid "cannot update table \"%s\" because it does not have a replica identity and publishes updates" msgstr "оновлення в таблиці \"%s\" неможливе, тому що в ній відсутній ідентифікатор репліки, і вона публікує оновлення" -#: executor/execReplication.c:723 +#: executor/execReplication.c:861 #, c-format msgid "To enable updating the table, set REPLICA IDENTITY using ALTER TABLE." msgstr "Щоб ця таблиця підтримувала оновлення, встановіть REPLICA IDENTITY, використавши ALTER TABLE." -#: executor/execReplication.c:727 +#: executor/execReplication.c:865 #, c-format msgid "cannot delete from table \"%s\" because it does not have a replica identity and publishes deletes" msgstr "видалення з таблиці \"%s\" неможливе, тому що в ній відсутній ідентифікатор репліки, і вона публікує видалення" -#: executor/execReplication.c:729 +#: executor/execReplication.c:867 #, c-format msgid "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE." msgstr "Щоб ця таблиця підтримувала видалення, встановіть REPLICA IDENTITY, використавши ALTER TABLE." -#: executor/execReplication.c:745 +#: executor/execReplication.c:883 #, c-format msgid "cannot use relation \"%s.%s\" as logical replication target" msgstr "використовувати відношення \"%s.%s\" як ціль логічної реплікації, не можна" @@ -13952,117 +14344,118 @@ msgstr[3] "Повернений рядок містить %d атрибутів, msgid "Returned type %s at ordinal position %d, but query expects %s." msgstr "Повернений тип %s у порядковій позиції %d, але запит очікував %s." -#: executor/execTuples.c:147 executor/execTuples.c:368 -#: executor/execTuples.c:563 executor/execTuples.c:772 +#: executor/execTuples.c:147 executor/execTuples.c:369 +#: executor/execTuples.c:564 executor/execTuples.c:774 #, c-format msgid "cannot retrieve a system column in this context" msgstr "не можна отримати системний стовпець в цьому контексті" -#: executor/execTuples.c:163 executor/execTuples.c:580 +#: executor/execTuples.c:163 executor/execTuples.c:581 #, c-format msgid "don't have transaction information for this type of tuple" -msgstr "" +msgstr "немає інформації про транзакцію для цього типу кортежу" -#: executor/execTuples.c:390 executor/execTuples.c:794 +#: executor/execTuples.c:391 executor/execTuples.c:796 #, c-format msgid "don't have a storage tuple in this context" -msgstr "" +msgstr "в цьому контексті немає сховища кортежів" -#: executor/execUtils.c:713 +#: executor/execUtils.c:758 #, c-format msgid "materialized view \"%s\" has not been populated" msgstr "матеріалізоване подання \"%s\" не було наповнене" -#: executor/execUtils.c:715 -#, c-format -msgid "Use the REFRESH MATERIALIZED VIEW command." -msgstr "Використайте команду REFRESH MATERIALIZED VIEW." - -#: executor/functions.c:217 +#: executor/functions.c:292 #, c-format msgid "could not determine actual type of argument declared %s" msgstr "не вдалося визначити фактичний тип аргументу, оголошеного як %s" -#: executor/functions.c:513 +#: executor/functions.c:737 #, c-format msgid "cannot COPY to/from client in an SQL function" msgstr "у функції SQL не можна виконати COPY до/з клієнта" #. translator: %s is a SQL statement name -#: executor/functions.c:519 +#: executor/functions.c:743 #, c-format msgid "%s is not allowed in an SQL function" msgstr "функція SQL не дозволяє використання %s" #. translator: %s is a SQL statement name -#: executor/functions.c:527 executor/spi.c:1741 executor/spi.c:2651 +#: executor/functions.c:751 executor/spi.c:1744 executor/spi.c:2657 #, c-format msgid "%s is not allowed in a non-volatile function" msgstr "незмінна функція не дозволяє використання %s" -#: executor/functions.c:1452 +#: executor/functions.c:1185 executor/functions.c:2224 +#: executor/functions.c:2262 executor/functions.c:2276 +#: executor/functions.c:2366 executor/functions.c:2399 +#: executor/functions.c:2413 #, c-format -msgid "SQL function \"%s\" statement %d" -msgstr "SQL функція \"%s\" оператор %d" +msgid "return type mismatch in function declared to return %s" +msgstr "невідповідність типу повернення в функції, оголошеній як %s" -#: executor/functions.c:1478 +#: executor/functions.c:1187 executor/functions.c:2226 #, c-format -msgid "SQL function \"%s\" during startup" -msgstr "SQL функція \"%s\" під час запуску" +msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE/MERGE RETURNING." +msgstr "Останнім оператором у функції повинен бути SELECT або INSERT/UPDATE/DELETE/MERGE RETURNING." -#: executor/functions.c:1563 +#: executor/functions.c:1270 utils/cache/plancache.c:860 #, c-format -msgid "calling procedures with output arguments is not supported in SQL functions" -msgstr "виклик процедур з вихідними аргументами в функціях SQL не підтримується" +msgid "cached plan must not change result type" +msgstr "в кешованому плані не повинен змінюватись тип результату" -#: executor/functions.c:1698 executor/functions.c:1736 -#: executor/functions.c:1750 executor/functions.c:1845 -#: executor/functions.c:1878 executor/functions.c:1892 +#: executor/functions.c:1922 executor/functions.c:1953 #, c-format -msgid "return type mismatch in function declared to return %s" -msgstr "невідповідність типу повернення в функції, оголошеній як %s" +msgid "SQL function \"%s\" during startup" +msgstr "SQL функція \"%s\" під час запуску" -#: executor/functions.c:1700 +#: executor/functions.c:1950 #, c-format -msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE/MERGE RETURNING." -msgstr "" +msgid "SQL function \"%s\" statement %d" +msgstr "SQL функція \"%s\" оператор %d" + +#: executor/functions.c:2075 +#, c-format +msgid "calling procedures with output arguments is not supported in SQL functions" +msgstr "виклик процедур з вихідними аргументами в функціях SQL не підтримується" -#: executor/functions.c:1738 +#: executor/functions.c:2264 #, c-format msgid "Final statement must return exactly one column." msgstr "Останній оператор повинен вертати один стовпець." -#: executor/functions.c:1752 +#: executor/functions.c:2278 #, c-format msgid "Actual return type is %s." msgstr "Фактичний тип повернення: %s." -#: executor/functions.c:1847 +#: executor/functions.c:2368 #, c-format msgid "Final statement returns too many columns." msgstr "Останній оператор вертає дуже багато стовпців." -#: executor/functions.c:1880 +#: executor/functions.c:2401 #, c-format msgid "Final statement returns %s instead of %s at column %d." msgstr "Останній оператор поветрає %s замість %s для стовпця %d." -#: executor/functions.c:1894 +#: executor/functions.c:2415 #, c-format msgid "Final statement returns too few columns." msgstr "Останній оператор вертає дуже мало стовпців." -#: executor/functions.c:1922 +#: executor/functions.c:2443 #, c-format msgid "return type %s is not supported for SQL functions" msgstr "для SQL функцій тип повернення %s не підтримується" -#: executor/nodeAgg.c:3936 executor/nodeWindowAgg.c:2976 +#: executor/nodeAgg.c:4039 executor/nodeWindowAgg.c:3041 #, c-format msgid "aggregate %u needs to have compatible input type and transition type" msgstr "агрегатна функція %u повинна мати сумісні тип введення і тип переходу" -#: executor/nodeAgg.c:3966 parser/parse_agg.c:680 parser/parse_agg.c:708 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:692 parser/parse_agg.c:735 #, c-format msgid "aggregate function calls cannot be nested" msgstr "виклики агрегатних функцій не можуть бути вкладеними" @@ -14072,12 +14465,12 @@ msgstr "виклики агрегатних функцій не можуть б msgid "custom scan \"%s\" does not support MarkPos" msgstr "налаштовуване сканування \"%s\" не підтримує MarkPos" -#: executor/nodeHashjoin.c:1131 executor/nodeHashjoin.c:1161 +#: executor/nodeHashjoin.c:1230 executor/nodeHashjoin.c:1260 #, c-format msgid "could not rewind hash-join temporary file" msgstr "не вдалося перемотати назад тимчасовий файл хеш-з'єднання" -#: executor/nodeIndexonlyscan.c:239 +#: executor/nodeIndexonlyscan.c:240 #, c-format msgid "lossy distance functions are not supported in index-only scans" msgstr "функції неточної (lossy) дистанції не підтримуються в скануваннях лише по індексу" @@ -14092,77 +14485,82 @@ msgstr "OFFSET повинен бути не негативним" msgid "LIMIT must not be negative" msgstr "LIMIT повинен бути не негативним" -#: executor/nodeMergejoin.c:1579 +#: executor/nodeMergejoin.c:1574 #, c-format msgid "RIGHT JOIN is only supported with merge-joinable join conditions" msgstr "RIGHT JOIN підтримується лише з умовами, які допускають з'єднання злиттям" -#: executor/nodeMergejoin.c:1597 +#: executor/nodeMergejoin.c:1592 #, c-format msgid "FULL JOIN is only supported with merge-joinable join conditions" msgstr "FULL JOIN підтримується лише з умовами, які допускають з'єднання злиттям" -#: executor/nodeModifyTable.c:240 +#: executor/nodeModifyTable.c:248 +#, c-format +msgid "Query provides a value for a generated column at ordinal position %d." +msgstr "Запит надає значення для згенерованого стовпця з порядковим номером %d." + +#: executor/nodeModifyTable.c:268 #, c-format msgid "Query has too few columns." msgstr "Запит повертає дуже мало стовпців." -#: executor/nodeModifyTable.c:1540 executor/nodeModifyTable.c:1614 +#: executor/nodeModifyTable.c:1686 executor/nodeModifyTable.c:1760 #, c-format msgid "tuple to be deleted was already modified by an operation triggered by the current command" msgstr "кортеж, який підлягає видаленню, вже змінений в операції, яка викликана поточною командою" -#: executor/nodeModifyTable.c:1769 +#: executor/nodeModifyTable.c:1959 #, c-format msgid "invalid ON UPDATE specification" msgstr "неприпустима специфікація ON UPDATE" -#: executor/nodeModifyTable.c:1770 +#: executor/nodeModifyTable.c:1960 #, c-format msgid "The result tuple would appear in a different partition than the original tuple." msgstr "Результуючий кортеж з'явиться в іншій секції в порівнянні з оригінальним кортежем." -#: executor/nodeModifyTable.c:2226 +#: executor/nodeModifyTable.c:2417 #, c-format msgid "cannot move tuple across partitions when a non-root ancestor of the source partition is directly referenced in a foreign key" msgstr "не можна пересувати кортеж між різними партиціями, коли не кореневий предок секції джерела безпосередньо посилається на зовнішній ключ" -#: executor/nodeModifyTable.c:2227 +#: executor/nodeModifyTable.c:2418 #, c-format msgid "A foreign key points to ancestor \"%s\" but not the root ancestor \"%s\"." msgstr "Зовнішній ключ вказує на предка \"%s\", але не на кореневого предка \"%s\"." -#: executor/nodeModifyTable.c:2230 +#: executor/nodeModifyTable.c:2421 #, c-format msgid "Consider defining the foreign key on table \"%s\"." msgstr "Розгляньте визначення зовнішнього ключа для таблиці \"%s\"." #. translator: %s is a SQL command name -#: executor/nodeModifyTable.c:2577 executor/nodeModifyTable.c:3099 -#: executor/nodeModifyTable.c:3260 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 +#: executor/nodeModifyTable.c:3529 #, c-format msgid "%s command cannot affect row a second time" msgstr "команда %s не може вплинути на рядок вдруге" -#: executor/nodeModifyTable.c:2579 +#: executor/nodeModifyTable.c:2790 #, c-format msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values." msgstr "Переконайтеся, що немає рядків для вставки з тією ж командою з дуплікованими обмежувальними значеннями." -#: executor/nodeModifyTable.c:3092 executor/nodeModifyTable.c:3253 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3522 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "кортеж, який підлягає оновленню або видаленню, вже змінено операцією, викликаною поточною командою" -#: executor/nodeModifyTable.c:3101 executor/nodeModifyTable.c:3262 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3531 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "Переконайтесь, що не більше ніж один вихідний рядок відповідає будь-якому одному цільовому рядку." -#: executor/nodeModifyTable.c:3170 +#: executor/nodeModifyTable.c:3408 #, c-format msgid "tuple to be merged was already moved to another partition due to concurrent update" -msgstr "" +msgstr "кортеж, який підлягає об'єднанню, вже переміщено в іншу секцію в результаті паралельного оновлення" #: executor/nodeSamplescan.c:244 #, c-format @@ -14174,8 +14572,8 @@ msgstr "Параметр TABLESAMPLE не може бути null" msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "Параметр TABLESAMPLE REPEATABLE не може бути null" -#: executor/nodeSubplan.c:325 executor/nodeSubplan.c:351 -#: executor/nodeSubplan.c:405 executor/nodeSubplan.c:1174 +#: executor/nodeSubplan.c:298 executor/nodeSubplan.c:324 +#: executor/nodeSubplan.c:378 executor/nodeSubplan.c:1166 #, c-format msgid "more than one row returned by a subquery used as an expression" msgstr "підзапит, використаний в якості вираження, повернув більше ніж один рядок" @@ -14210,27 +14608,27 @@ msgstr "у стовпці \"%s\" не допускається null" msgid "moving-aggregate transition function must not return null" msgstr "функція переходу рухомого агрегату не повинна вертати Null-значення" -#: executor/nodeWindowAgg.c:2083 +#: executor/nodeWindowAgg.c:2106 #, c-format msgid "frame starting offset must not be null" msgstr "зсув початку рамки не повинен бути null" -#: executor/nodeWindowAgg.c:2096 +#: executor/nodeWindowAgg.c:2120 #, c-format msgid "frame starting offset must not be negative" msgstr "зсув початку рамки не повинен бути негативним" -#: executor/nodeWindowAgg.c:2108 +#: executor/nodeWindowAgg.c:2133 #, c-format msgid "frame ending offset must not be null" msgstr "зсув кінця рамки не повинен бути null" -#: executor/nodeWindowAgg.c:2121 +#: executor/nodeWindowAgg.c:2147 #, c-format msgid "frame ending offset must not be negative" msgstr "зсув кінця рамки не повинен бути негативним" -#: executor/nodeWindowAgg.c:2892 +#: executor/nodeWindowAgg.c:2957 #, c-format msgid "aggregate function %s does not support use as a window function" msgstr "агрегатна функція %s не підтримує використання в якості віконної функції" @@ -14265,49 +14663,49 @@ msgstr "Перевірте наявність виклику \"SPI_finish\"." msgid "subtransaction left non-empty SPI stack" msgstr "підтранзакція залишила непорожню групу SPI" -#: executor/spi.c:1599 +#: executor/spi.c:1602 #, c-format msgid "cannot open multi-query plan as cursor" msgstr "неможливо відкрити план декількох запитів як курсор" #. translator: %s is name of a SQL command, eg INSERT -#: executor/spi.c:1609 +#: executor/spi.c:1612 #, c-format msgid "cannot open %s query as cursor" msgstr "неможливо відкрити запит %s як курсор" -#: executor/spi.c:1715 +#: executor/spi.c:1718 #, c-format msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported" msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE не підтримується" -#: executor/spi.c:1716 parser/analyze.c:2928 +#: executor/spi.c:1719 parser/analyze.c:3077 #, c-format msgid "Scrollable cursors must be READ ONLY." msgstr "Курсори з прокручуванням повинні бути READ ONLY." -#: executor/spi.c:2490 +#: executor/spi.c:2496 #, c-format msgid "empty query does not return tuples" msgstr "пустий запит не повертає кортежі" #. translator: %s is name of a SQL command, eg INSERT -#: executor/spi.c:2564 +#: executor/spi.c:2570 #, c-format msgid "%s query does not return tuples" msgstr "%s запит не повертає кортежі" -#: executor/spi.c:2981 +#: executor/spi.c:2987 #, c-format -msgid "SQL expression \"%s\"" -msgstr "SQL вираз \"%s\"" +msgid "PL/pgSQL expression \"%s\"" +msgstr "вираз PL/pgSQL \"%s\"" -#: executor/spi.c:2986 +#: executor/spi.c:2992 #, c-format msgid "PL/pgSQL assignment \"%s\"" msgstr "PL/pgSQL присвоєння \"%s\"" -#: executor/spi.c:2989 +#: executor/spi.c:2995 #, c-format msgid "SQL statement \"%s\"" msgstr "SQL-оператор \"%s\"" @@ -14317,28 +14715,28 @@ msgstr "SQL-оператор \"%s\"" msgid "could not send tuple to shared-memory queue" msgstr "не вдалося передати кортеж у чергу в спільну пам'ять" -#: foreign/foreign.c:225 +#: foreign/foreign.c:226 #, c-format msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "зіставлення користувача не знайдено для користувача \"%s\", сервер \"%s\"" -#: foreign/foreign.c:336 optimizer/plan/createplan.c:7153 -#: optimizer/util/plancat.c:540 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7299 +#: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" -msgstr "" +msgstr "доступ до не системної сторонньої таблиці обмежено" -#: foreign/foreign.c:660 +#: foreign/foreign.c:661 #, c-format msgid "invalid option \"%s\"" msgstr "недійсний параметр \"%s\"" -#: foreign/foreign.c:662 +#: foreign/foreign.c:663 #, c-format msgid "Perhaps you meant the option \"%s\"." msgstr "Можливо, ви мали на увазі параметр \"%s\"." -#: foreign/foreign.c:664 +#: foreign/foreign.c:665 #, c-format msgid "There are no valid options in this context." msgstr "У цьому контексті немає припустимих варіантів." @@ -14349,573 +14747,757 @@ msgstr "У цьому контексті немає припустимих ва msgid "Failed on DSA request of size %zu." msgstr "Не вдалося виконати запит DSA розміру %zu." -#: libpq/auth-sasl.c:97 -#, c-format -msgid "expected SASL response, got message type %d" -msgstr "очікувалася відповідь SASL, але отримано тип повідомлення %d" - -#: libpq/auth-scram.c:263 +#: libpq/auth-oauth.c:109 libpq/auth-scram.c:267 #, c-format msgid "client selected an invalid SASL authentication mechanism" msgstr "клієнт обрав неприпустимий механізм автентифікації SASL" -#: libpq/auth-scram.c:287 libpq/auth-scram.c:536 libpq/auth-scram.c:547 +#: libpq/auth-oauth.c:169 libpq/auth-oauth.c:174 libpq/auth-oauth.c:192 +#: libpq/auth-oauth.c:220 libpq/auth-oauth.c:230 libpq/auth-oauth.c:239 +#: libpq/auth-oauth.c:254 libpq/auth-oauth.c:263 libpq/auth-oauth.c:272 +#: libpq/auth-oauth.c:279 libpq/auth-oauth.c:342 libpq/auth-oauth.c:349 +#: libpq/auth-oauth.c:375 libpq/auth-oauth.c:420 libpq/auth-oauth.c:438 +#: libpq/auth-oauth.c:452 libpq/auth-oauth.c:472 +#, c-format +msgid "malformed OAUTHBEARER message" +msgstr "неправильно сформоване повідомлення OAUTHBEARER" + +#: libpq/auth-oauth.c:170 libpq/auth-scram.c:383 +#, c-format +msgid "The message is empty." +msgstr "Повідомлення порожнє." + +#: libpq/auth-oauth.c:175 libpq/auth-scram.c:388 +#, c-format +msgid "Message length does not match input length." +msgstr "Довжина повідомлення не відповідає довжині вводу." + +#: libpq/auth-oauth.c:193 +#, c-format +msgid "Client did not send a kvsep response." +msgstr "Клієнт не надіслав відповідь kvsep." + +#: libpq/auth-oauth.c:221 +#, c-format +msgid "The server does not support channel binding for OAuth, but the client message includes channel binding data." +msgstr "Сервер не підтримує прив'язку каналів для OAuth, але повідомлення клієнта містить дані прив'язки каналу." + +#: libpq/auth-oauth.c:231 libpq/auth-scram.c:1003 libpq/auth-scram.c:1033 +#, c-format +msgid "Comma expected, but found character \"%s\"." +msgstr "Очікувалась кома, але знайдено символ \"%s\"." + +#: libpq/auth-oauth.c:240 libpq/auth-scram.c:1065 +#, c-format +msgid "Unexpected channel-binding flag \"%s\"." +msgstr "Неочікувана позначка зв'язування каналів \"%s\"." + +#: libpq/auth-oauth.c:250 libpq/auth-scram.c:1075 +#, c-format +msgid "client uses authorization identity, but it is not supported" +msgstr "клієнт використовує ідентифікатор для авторизації, але це не підтримується" + +#: libpq/auth-oauth.c:255 libpq/auth-scram.c:1080 +#, c-format +msgid "Unexpected attribute \"%s\" in client-first-message." +msgstr "Неочікуваний атрибут \"%s\" у першому повідомленні клієнта." + +#: libpq/auth-oauth.c:264 +#, c-format +msgid "Key-value separator expected, but found character \"%s\"." +msgstr "Очікувався роздільник ключ-значення, але знайдено символ \"%s\"." + +#: libpq/auth-oauth.c:273 +#, c-format +msgid "Message does not contain an auth value." +msgstr "Повідомлення не містить значення auth." + +#: libpq/auth-oauth.c:280 +#, c-format +msgid "Message contains additional data after the final terminator." +msgstr "Повідомлення містить додаткові дані після кінцевого термінатора." + +#: libpq/auth-oauth.c:343 +#, c-format +msgid "Message contains an empty key name." +msgstr "Повідомлення містить порожню назву ключа." + +#: libpq/auth-oauth.c:350 +#, c-format +msgid "Message contains an invalid key name." +msgstr "Повідомлення містить недійсну назву ключа." + +#: libpq/auth-oauth.c:376 +#, c-format +msgid "Message contains an invalid value." +msgstr "Повідомлення містить недійсне значення." + +#: libpq/auth-oauth.c:421 +#, c-format +msgid "Message contains an unterminated key/value pair." +msgstr "Повідомлення містить незавершену пару ключ/значення." + +#: libpq/auth-oauth.c:439 +#, c-format +msgid "Message contains a key without a value." +msgstr "Повідомлення містить ключ без значення." + +#: libpq/auth-oauth.c:453 +#, c-format +msgid "Message contains multiple auth values." +msgstr "Повідомлення містить кілька значень автентифікації." + +#: libpq/auth-oauth.c:473 +#, c-format +msgid "Message did not contain a final terminator." +msgstr "Повідомлення не містить кінцевого термінатора." + +#: libpq/auth-oauth.c:499 +#, c-format +msgid "OAuth is not properly configured for this user" +msgstr "OAuth не налаштований належним чином для цього користувача" + +#: libpq/auth-oauth.c:500 +#, c-format +msgid "The issuer and scope parameters must be set in pg_hba.conf." +msgstr "Параметри issuer та scope мають бути встановлені в pg_hba.conf." + +#: libpq/auth-oauth.c:585 libpq/auth-oauth.c:602 libpq/auth-oauth.c:624 +#, c-format +msgid "malformed OAuth bearer token" +msgstr "неправильно сформований токен носія OAuth" + +#: libpq/auth-oauth.c:586 +#, c-format +msgid "Client response indicated a non-Bearer authentication scheme." +msgstr "Відповідь клієнта вказує на схему автентифікації, яка не є Bearer." + +#: libpq/auth-oauth.c:603 +#, c-format +msgid "Bearer token is empty." +msgstr "Токен Bearer порожній." + +#: libpq/auth-oauth.c:625 +#, c-format +msgid "Bearer token is not in the correct format." +msgstr "Токен Bearer не у правильному форматі." + +#: libpq/auth-oauth.c:656 +#, c-format +msgid "validation of OAuth token requested without a validator loaded" +msgstr "запитано валідацію токена OAuth без завантаженого валідатора" + +#: libpq/auth-oauth.c:665 +#, c-format +msgid "internal error in OAuth validator module" +msgstr "внутрішня помилка в модулі валідатора OAuth" + +#: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:302 +#, c-format +msgid "OAuth bearer authentication failed for user \"%s\"" +msgstr "Аутентифікація OAuth bearer не вдалася для користувача \"%s\"" + +#: libpq/auth-oauth.c:681 +#, c-format +msgid "Validator failed to authorize the provided token." +msgstr "Валідатор не зміг авторизувати наданий токен." + +#: libpq/auth-oauth.c:705 +#, c-format +msgid "Validator provided no identity." +msgstr "Валідатор не надав ідентифікації." + +#: libpq/auth-oauth.c:760 +#, c-format +msgid "%s module \"%s\" must define the symbol %s" +msgstr "модуль %s \"%s\" має визначати символ %s" + +#: libpq/auth-oauth.c:773 +#, c-format +msgid "%s module \"%s\": magic number mismatch" +msgstr "модуль %s \"%s\": невідповідність магічного номера" + +#: libpq/auth-oauth.c:775 +#, c-format +msgid "Server has magic number 0x%08X, module has 0x%08X." +msgstr "Сервер має магічний номер 0x%08X, модуль має 0x%08X." + +#: libpq/auth-oauth.c:784 +#, c-format +msgid "%s module \"%s\" must provide a %s callback" +msgstr "модуль %s \"%s\" має надати зворотний виклик %s" + +#: libpq/auth-oauth.c:833 +#, c-format +msgid "oauth_validator_libraries must be set for authentication method %s" +msgstr "oauth_validator_libraries має бути встановлено для методу автентифікації %s" + +#: libpq/auth-oauth.c:835 libpq/auth-oauth.c:868 libpq/auth-oauth.c:884 +#: libpq/hba.c:331 libpq/hba.c:666 libpq/hba.c:1251 libpq/hba.c:1271 +#: libpq/hba.c:1294 libpq/hba.c:1307 libpq/hba.c:1360 libpq/hba.c:1388 +#: libpq/hba.c:1396 libpq/hba.c:1408 libpq/hba.c:1429 libpq/hba.c:1442 +#: libpq/hba.c:1467 libpq/hba.c:1494 libpq/hba.c:1506 libpq/hba.c:1565 +#: libpq/hba.c:1585 libpq/hba.c:1599 libpq/hba.c:1619 libpq/hba.c:1630 +#: libpq/hba.c:1645 libpq/hba.c:1664 libpq/hba.c:1680 libpq/hba.c:1692 +#: libpq/hba.c:1760 libpq/hba.c:1773 libpq/hba.c:1795 libpq/hba.c:1807 +#: libpq/hba.c:1825 libpq/hba.c:1875 libpq/hba.c:1919 libpq/hba.c:1930 +#: libpq/hba.c:1946 libpq/hba.c:1963 libpq/hba.c:1974 libpq/hba.c:1993 +#: libpq/hba.c:2009 libpq/hba.c:2025 libpq/hba.c:2069 libpq/hba.c:2115 +#: libpq/hba.c:2132 libpq/hba.c:2145 libpq/hba.c:2157 libpq/hba.c:2176 +#: libpq/hba.c:2262 libpq/hba.c:2280 libpq/hba.c:2374 libpq/hba.c:2393 +#: libpq/hba.c:2422 libpq/hba.c:2435 libpq/hba.c:2458 libpq/hba.c:2480 +#: libpq/hba.c:2517 tsearch/ts_locale.c:196 +#, c-format +msgid "line %d of configuration file \"%s\"" +msgstr "рядок %d файла конфігурації \"%s\"" + +#: libpq/auth-oauth.c:867 +#, c-format +msgid "authentication method \"oauth\" requires argument \"validator\" to be set when oauth_validator_libraries contains multiple options" +msgstr "метод автентифікації \"oauth\" вимагає встановлення аргументу \"validator\", коли oauth_validator_libraries містить кілька параметрів" + +#: libpq/auth-oauth.c:882 +#, c-format +msgid "validator \"%s\" is not permitted by %s" +msgstr "валідатор \"%s\" не дозволений %s" + +#: libpq/auth-sasl.c:89 +#, c-format +msgid "expected SASL response, got message type %d" +msgstr "очікувалася відповідь SASL, але отримано тип повідомлення %d" + +#: libpq/auth-scram.c:291 libpq/auth-scram.c:547 libpq/auth-scram.c:558 #, c-format msgid "invalid SCRAM secret for user \"%s\"" msgstr "неприпустимий секрет SCRAM для користувача \"%s\"" -#: libpq/auth-scram.c:298 +#: libpq/auth-scram.c:302 #, c-format msgid "User \"%s\" does not have a valid SCRAM secret." msgstr "Користувач \"%s\" не має припустимого секрету SCRAM." -#: libpq/auth-scram.c:378 libpq/auth-scram.c:383 libpq/auth-scram.c:737 -#: libpq/auth-scram.c:745 libpq/auth-scram.c:850 libpq/auth-scram.c:863 -#: libpq/auth-scram.c:873 libpq/auth-scram.c:981 libpq/auth-scram.c:988 -#: libpq/auth-scram.c:1003 libpq/auth-scram.c:1018 libpq/auth-scram.c:1032 -#: libpq/auth-scram.c:1050 libpq/auth-scram.c:1065 libpq/auth-scram.c:1379 -#: libpq/auth-scram.c:1387 +#: libpq/auth-scram.c:382 libpq/auth-scram.c:387 libpq/auth-scram.c:751 +#: libpq/auth-scram.c:759 libpq/auth-scram.c:864 libpq/auth-scram.c:877 +#: libpq/auth-scram.c:887 libpq/auth-scram.c:995 libpq/auth-scram.c:1002 +#: libpq/auth-scram.c:1017 libpq/auth-scram.c:1032 libpq/auth-scram.c:1046 +#: libpq/auth-scram.c:1064 libpq/auth-scram.c:1079 libpq/auth-scram.c:1392 +#: libpq/auth-scram.c:1400 #, c-format msgid "malformed SCRAM message" msgstr "неправильне повідомлення SCRAM" -#: libpq/auth-scram.c:379 -#, c-format -msgid "The message is empty." -msgstr "Повідомлення порожнє." - -#: libpq/auth-scram.c:384 -#, c-format -msgid "Message length does not match input length." -msgstr "Довжина повідомлення не відповідає довжині вводу." - -#: libpq/auth-scram.c:416 +#: libpq/auth-scram.c:420 #, c-format msgid "invalid SCRAM response" msgstr "неприпустима відповідь SCRAM" -#: libpq/auth-scram.c:417 +#: libpq/auth-scram.c:421 #, c-format msgid "Nonce does not match." msgstr "Одноразовий ідентифікатор не збігається." -#: libpq/auth-scram.c:493 +#: libpq/auth-scram.c:504 #, c-format msgid "could not generate random salt" msgstr "не вдалося згенерувати випадкову сіль" -#: libpq/auth-scram.c:738 +#: libpq/auth-scram.c:752 #, c-format msgid "Expected attribute \"%c\" but found \"%s\"." msgstr "Очікувався атрибут \"%c\", але знайдено \"%s\"." -#: libpq/auth-scram.c:746 libpq/auth-scram.c:874 +#: libpq/auth-scram.c:760 libpq/auth-scram.c:888 #, c-format msgid "Expected character \"=\" for attribute \"%c\"." msgstr "Очікувався символ \"=\" для атрибуту \"%c\"." -#: libpq/auth-scram.c:851 +#: libpq/auth-scram.c:865 #, c-format msgid "Attribute expected, but found end of string." msgstr "Очікувався атрибут, але знайдено кінець рядка." -#: libpq/auth-scram.c:864 +#: libpq/auth-scram.c:878 #, c-format msgid "Attribute expected, but found invalid character \"%s\"." msgstr "Очікувався атрибут, але знайдено неприпустимий символ \"%s\"." -#: libpq/auth-scram.c:982 libpq/auth-scram.c:1004 +#: libpq/auth-scram.c:996 libpq/auth-scram.c:1018 #, c-format msgid "The client selected SCRAM-SHA-256-PLUS, but the SCRAM message does not include channel binding data." msgstr "Клієнт обрав алгоритм SCRAM-SHA-256-PLUS, але повідомлення SCRAM не містить даних зв’язування каналів." -#: libpq/auth-scram.c:989 libpq/auth-scram.c:1019 -#, c-format -msgid "Comma expected, but found character \"%s\"." -msgstr "Очікувалась кома, але знайдено символ \"%s\"." - -#: libpq/auth-scram.c:1010 +#: libpq/auth-scram.c:1024 #, c-format msgid "SCRAM channel binding negotiation error" msgstr "Помилка узгодження зв’язування каналів SCRAM" -#: libpq/auth-scram.c:1011 +#: libpq/auth-scram.c:1025 #, c-format msgid "The client supports SCRAM channel binding but thinks the server does not. However, this server does support channel binding." msgstr "Клієнт підтримує зв’язування каналів SCRAM, але думає, що сервер не підтримує. Однак, сервер теж підтримує зв’язування каналів." -#: libpq/auth-scram.c:1033 +#: libpq/auth-scram.c:1047 #, c-format msgid "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM message includes channel binding data." msgstr "Клієнт обрав алгоритм SCRAM-SHA-256 без зв’язування каналів, але повідомлення SCRAM містить дані зв’язування каналів." -#: libpq/auth-scram.c:1044 +#: libpq/auth-scram.c:1058 #, c-format msgid "unsupported SCRAM channel-binding type \"%s\"" msgstr "непідтримуваний тип зв'язування каналів SCRAM \"%s\"" -#: libpq/auth-scram.c:1051 -#, c-format -msgid "Unexpected channel-binding flag \"%s\"." -msgstr "Неочікувана позначка зв'язування каналів \"%s\"." - -#: libpq/auth-scram.c:1061 -#, c-format -msgid "client uses authorization identity, but it is not supported" -msgstr "клієнт використовує ідентифікатор для авторизації, але це не підтримується" - -#: libpq/auth-scram.c:1066 -#, c-format -msgid "Unexpected attribute \"%s\" in client-first-message." -msgstr "Неочікуваний атрибут \"%s\" у першому повідомленні клієнта." - -#: libpq/auth-scram.c:1082 +#: libpq/auth-scram.c:1096 #, c-format msgid "client requires an unsupported SCRAM extension" msgstr "клієнт потребує непідтримуване розширення SCRAM" -#: libpq/auth-scram.c:1096 +#: libpq/auth-scram.c:1110 #, c-format msgid "non-printable characters in SCRAM nonce" msgstr "недруковані символи в одноразовому ідентифікаторі SCRAM" -#: libpq/auth-scram.c:1227 +#: libpq/auth-scram.c:1240 #, c-format msgid "could not generate random nonce" msgstr "не вдалося згенерувати випадковий одноразовий ідентифікатор" -#: libpq/auth-scram.c:1237 +#: libpq/auth-scram.c:1250 #, c-format msgid "could not encode random nonce" msgstr "не вдалося кодувати випадковий одноразовий ідентифікатор" -#: libpq/auth-scram.c:1343 +#: libpq/auth-scram.c:1356 #, c-format msgid "SCRAM channel binding check failed" msgstr "Помилка перевірки зв'язування каналів SCRAM" -#: libpq/auth-scram.c:1361 +#: libpq/auth-scram.c:1374 #, c-format msgid "unexpected SCRAM channel-binding attribute in client-final-message" msgstr "неочікуваний атрибут зв'язування каналів SCRAM в останньому повідомленні клієнта" -#: libpq/auth-scram.c:1380 +#: libpq/auth-scram.c:1393 #, c-format msgid "Malformed proof in client-final-message." msgstr "Неправильне підтвердження в останньому повідомленні клієнта." -#: libpq/auth-scram.c:1388 +#: libpq/auth-scram.c:1401 #, c-format msgid "Garbage found at the end of client-final-message." msgstr "Сміття знайдено в кінці останнього повідомлення клієнта." -#: libpq/auth.c:269 +#: libpq/auth.c:262 #, c-format msgid "authentication failed for user \"%s\": host rejected" msgstr "користувач \"%s\" не пройшов автентифікацію: відхилений хост" -#: libpq/auth.c:272 +#: libpq/auth.c:265 #, c-format msgid "\"trust\" authentication failed for user \"%s\"" msgstr "користувач \"%s\" не пройшов автентифікацію \"trust\"" -#: libpq/auth.c:275 +#: libpq/auth.c:268 #, c-format msgid "Ident authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію Ident" -#: libpq/auth.c:278 +#: libpq/auth.c:271 #, c-format msgid "Peer authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію Peer" -#: libpq/auth.c:283 +#: libpq/auth.c:276 #, c-format msgid "password authentication failed for user \"%s\"" msgstr "користувач \"%s\" не пройшов автентифікацію за допомогою пароля" -#: libpq/auth.c:288 +#: libpq/auth.c:281 #, c-format msgid "GSSAPI authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію GSSAPI" -#: libpq/auth.c:291 +#: libpq/auth.c:284 #, c-format msgid "SSPI authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію SSPI" -#: libpq/auth.c:294 +#: libpq/auth.c:287 #, c-format msgid "PAM authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію PAM" -#: libpq/auth.c:297 +#: libpq/auth.c:290 #, c-format msgid "BSD authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію BSD" -#: libpq/auth.c:300 +#: libpq/auth.c:293 #, c-format msgid "LDAP authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію LDAP" -#: libpq/auth.c:303 +#: libpq/auth.c:296 #, c-format msgid "certificate authentication failed for user \"%s\"" msgstr "користувач \"%s\" не пройшов автентифікацію за сертифікатом" -#: libpq/auth.c:306 +#: libpq/auth.c:299 #, c-format msgid "RADIUS authentication failed for user \"%s\"" msgstr "Користувач \"%s\" не пройшов автентифікацію RADIUS" -#: libpq/auth.c:309 +#: libpq/auth.c:305 #, c-format msgid "authentication failed for user \"%s\": invalid authentication method" msgstr "користувач \"%s\" не пройшов автентифікацію: неприпустимий метод автентифікації" -#: libpq/auth.c:313 +#: libpq/auth.c:309 #, c-format msgid "Connection matched file \"%s\" line %d: \"%s\"" msgstr "З'єднання відповідає файлу \"%s\" рядок %d: \"%s\"" -#: libpq/auth.c:357 +#: libpq/auth.c:354 #, c-format msgid "authentication identifier set more than once" msgstr "ідентифікатор автентифікації встановлено більш ніж один раз" -#: libpq/auth.c:358 +#: libpq/auth.c:355 #, c-format msgid "previous identifier: \"%s\"; new identifier: \"%s\"" msgstr "попередній ідентифікатор: \"%s\"; новий ідентифікатор: \"%s\"" -#: libpq/auth.c:368 +#: libpq/auth.c:365 #, c-format msgid "connection authenticated: identity=\"%s\" method=%s (%s:%d)" msgstr "підключення автентифіковано: ідентифікатор=\"%s\" метод=%s (%s:%d)" -#: libpq/auth.c:408 +#: libpq/auth.c:405 #, c-format msgid "client certificates can only be checked if a root certificate store is available" msgstr "сертифікати клієнтів можуть перевірятися, лише якщо доступне сховище кореневих сертифікатів" -#: libpq/auth.c:419 +#: libpq/auth.c:416 #, c-format msgid "connection requires a valid client certificate" msgstr "підключення потребує припустимий сертифікат клієнта" -#: libpq/auth.c:450 libpq/auth.c:496 +#: libpq/auth.c:447 libpq/auth.c:493 msgid "GSS encryption" msgstr "Шифрування GSS" -#: libpq/auth.c:453 libpq/auth.c:499 +#: libpq/auth.c:450 libpq/auth.c:496 msgid "SSL encryption" msgstr "Шифрування SSL" -#: libpq/auth.c:455 libpq/auth.c:501 +#: libpq/auth.c:452 libpq/auth.c:498 msgid "no encryption" msgstr "без шифрування" #. translator: last %s describes encryption state -#: libpq/auth.c:461 +#: libpq/auth.c:458 #, c-format msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s" msgstr "pg_hba.conf відхиляє підключення реплікації для хосту \"%s\", користувача \"%s\", %s" #. translator: last %s describes encryption state -#: libpq/auth.c:468 +#: libpq/auth.c:465 #, c-format 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:506 +#: libpq/auth.c:503 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup matches." msgstr "IP-адреса клієнта дозволяється в \"%s\", відповідає прямому перетворенню." -#: libpq/auth.c:509 +#: libpq/auth.c:506 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup not checked." msgstr "IP-адреса клієнта дозволяється в \"%s\", пряме перетворення не перевірялося." -#: libpq/auth.c:512 +#: libpq/auth.c:509 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup does not match." msgstr "IP-адреса клієнта дозволяється в \"%s\", не відповідає прямому перетворенню." -#: libpq/auth.c:515 +#: libpq/auth.c:512 #, c-format msgid "Could not translate client host name \"%s\" to IP address: %s." msgstr "Перекласти ім'я клієнтського хосту \"%s\" в IP-адресу: %s, не вдалося." -#: libpq/auth.c:520 +#: libpq/auth.c:517 #, c-format msgid "Could not resolve client IP address to a host name: %s." msgstr "Отримати ім'я хосту з IP-адреси клієнта: %s, не вдалося." #. translator: last %s describes encryption state -#: libpq/auth.c:528 +#: libpq/auth.c:525 #, c-format msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\", %s" msgstr "в pg_hba.conf немає запису, що дозволяє підключення для реплікації з хосту \"%s\", користувача \"%s\", %s" #. translator: last %s describes encryption state -#: libpq/auth.c:536 +#: libpq/auth.c:533 #, c-format msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s" msgstr "в pg_hba.conf немає запису для хосту \"%s\", користувача \"%s\", бази даних \"%s\", %s" -#: libpq/auth.c:656 +#: libpq/auth.c:657 #, c-format msgid "connection authenticated: user=\"%s\" method=%s (%s:%d)" msgstr "підключення автентифіковано: user=\"%s\" method=%s (%s:%d)" -#: libpq/auth.c:725 +#: libpq/auth.c:726 #, c-format msgid "expected password response, got message type %d" msgstr "очікувалася відповід з паролем, але отримано тип повідомлення %d" -#: libpq/auth.c:746 +#: libpq/auth.c:747 #, c-format msgid "invalid password packet size" msgstr "неприпустимий розмір пакету з паролем" -#: libpq/auth.c:764 +#: libpq/auth.c:765 #, c-format msgid "empty password returned by client" msgstr "клієнт повернув пустий пароль" -#: libpq/auth.c:892 +#: libpq/auth.c:893 #, c-format msgid "could not generate random MD5 salt" msgstr "не вдалося створити випадкову сіль для MD5" -#: libpq/auth.c:943 libpq/be-secure-gssapi.c:540 +#: libpq/auth.c:944 libpq/be-secure-gssapi.c:553 #, c-format msgid "could not set environment: %m" msgstr "не вдалося встановити середовище: %m" -#: libpq/auth.c:982 +#: libpq/auth.c:983 #, c-format msgid "expected GSS response, got message type %d" msgstr "очікувалася відповідь GSS, але отримано тип повідомлення %d" -#: libpq/auth.c:1048 +#: libpq/auth.c:1049 msgid "accepting GSS security context failed" msgstr "прийняти контекст безпеки GSS не вдалось" -#: libpq/auth.c:1089 +#: libpq/auth.c:1090 msgid "retrieving GSS user name failed" msgstr "отримання ім'я користувача GSS не виконано" -#: libpq/auth.c:1235 +#: libpq/auth.c:1236 msgid "could not acquire SSPI credentials" msgstr "не вдалось отримати облікові дані SSPI" -#: libpq/auth.c:1260 +#: libpq/auth.c:1261 #, c-format msgid "expected SSPI response, got message type %d" msgstr "очікувалась відповідь SSPI, але отримано тип повідомлення %d" -#: libpq/auth.c:1338 +#: libpq/auth.c:1339 msgid "could not accept SSPI security context" msgstr "прийняти контекст безпеки SSPI не вдалося" -#: libpq/auth.c:1379 +#: libpq/auth.c:1380 msgid "could not get token from SSPI security context" msgstr "не вдалося отримати маркер з контексту безпеки SSPI" -#: libpq/auth.c:1515 libpq/auth.c:1534 +#: libpq/auth.c:1516 libpq/auth.c:1535 #, c-format msgid "could not translate name" msgstr "не вдалося перекласти ім'я" -#: libpq/auth.c:1547 +#: libpq/auth.c:1548 #, c-format msgid "realm name too long" msgstr "ім'я області дуже довге" -#: libpq/auth.c:1562 +#: libpq/auth.c:1563 #, c-format msgid "translated account name too long" msgstr "ім'я перекладеного облікового запису дуже довге" -#: libpq/auth.c:1741 +#: libpq/auth.c:1742 #, c-format msgid "could not create socket for Ident connection: %m" msgstr "не вдалося створити сокет для підключення до серверу Ident: %m" -#: libpq/auth.c:1756 +#: libpq/auth.c:1757 #, c-format msgid "could not bind to local address \"%s\": %m" msgstr "не вдалося прив'язатися до локальної адреси \"%s\": %m" -#: libpq/auth.c:1768 +#: libpq/auth.c:1769 #, c-format msgid "could not connect to Ident server at address \"%s\", port %s: %m" msgstr "не вдалося підключитися до Ident-серверу за адресою \"%s\", порт %s: %m" -#: libpq/auth.c:1790 +#: libpq/auth.c:1791 #, c-format msgid "could not send query to Ident server at address \"%s\", port %s: %m" msgstr "не вдалося надіслати запит до Ident -серверу за адресою \"%s\", порт %s: %m" -#: libpq/auth.c:1807 +#: libpq/auth.c:1808 #, c-format msgid "could not receive response from Ident server at address \"%s\", port %s: %m" msgstr "не вдалося отримати відповідь від Ident-серверу за адресою \"%s\", порт %s: %m" -#: libpq/auth.c:1817 +#: libpq/auth.c:1818 #, c-format msgid "invalidly formatted response from Ident server: \"%s\"" msgstr "неприпустимо форматована відповідь від Ident-серверу: \"%s\"" -#: libpq/auth.c:1870 +#: libpq/auth.c:1874 #, c-format msgid "peer authentication is not supported on this platform" msgstr "автентифікація peer не підтримується на цій платформі" -#: libpq/auth.c:1874 +#: libpq/auth.c:1878 #, c-format msgid "could not get peer credentials: %m" msgstr "не вдалося отримати облікові дані користувача через peer: %m" -#: libpq/auth.c:1886 +#: libpq/auth.c:1888 #, c-format -msgid "could not look up local user ID %ld: %s" -msgstr "не вдалося знайти локального користувача за ідентифікатором (%ld): %s" +msgid "could not look up local user ID %ld: %m" +msgstr "не вдалося знайти локальний ID користувача %ld: %m" -#: libpq/auth.c:1988 +#: libpq/auth.c:1894 +#, c-format +msgid "local user with ID %ld does not exist" +msgstr "локальний користувач з ID %ld не існує" + +#: libpq/auth.c:1994 #, c-format msgid "error from underlying PAM layer: %s" msgstr "помилка у нижчому шарі PAM: %s" -#: libpq/auth.c:1999 +#: libpq/auth.c:2005 #, c-format msgid "unsupported PAM conversation %d/\"%s\"" msgstr "непідтримувана розмова PAM %d/\"%s\"" -#: libpq/auth.c:2056 +#: libpq/auth.c:2062 #, c-format msgid "could not create PAM authenticator: %s" msgstr "не вдалося створити автентифікатор PAM: %s" -#: libpq/auth.c:2067 +#: libpq/auth.c:2073 #, c-format msgid "pam_set_item(PAM_USER) failed: %s" msgstr "помилка в pam_set_item(PAM_USER): %s" -#: libpq/auth.c:2099 +#: libpq/auth.c:2105 #, c-format msgid "pam_set_item(PAM_RHOST) failed: %s" msgstr "помилка в pam_set_item(PAM_RHOST): %s" -#: libpq/auth.c:2111 +#: libpq/auth.c:2117 #, c-format msgid "pam_set_item(PAM_CONV) failed: %s" msgstr "помилка в pam_set_item(PAM_CONV): %s" -#: libpq/auth.c:2124 +#: libpq/auth.c:2130 #, c-format msgid "pam_authenticate failed: %s" msgstr "помилка в pam_authenticate: %sв" -#: libpq/auth.c:2137 +#: libpq/auth.c:2143 #, c-format msgid "pam_acct_mgmt failed: %s" msgstr "помилка в pam_acct_mgmt: %s" -#: libpq/auth.c:2148 +#: libpq/auth.c:2154 #, c-format msgid "could not release PAM authenticator: %s" msgstr "не вдалося вивільнити автентифікатор PAM: %s" -#: libpq/auth.c:2228 +#: libpq/auth.c:2234 #, c-format msgid "could not initialize LDAP: error code %d" msgstr "не вдалося ініціалізувати протокол LDAP: код помилки %d" -#: libpq/auth.c:2265 +#: libpq/auth.c:2271 #, c-format msgid "could not extract domain name from ldapbasedn" msgstr "не вдалося отримати назву домена з ldapbasedn" -#: libpq/auth.c:2273 +#: libpq/auth.c:2279 #, c-format msgid "LDAP authentication could not find DNS SRV records for \"%s\"" msgstr "Автентифікація LDAP не змогла знайти записи DNS SRV для \"%s\"" -#: libpq/auth.c:2275 +#: libpq/auth.c:2281 #, c-format msgid "Set an LDAP server name explicitly." msgstr "Встановіть назву сервера LDAP, явно." -#: libpq/auth.c:2327 +#: libpq/auth.c:2333 #, c-format msgid "could not initialize LDAP: %s" msgstr "не вдалося ініціалізувати протокол LDAP: %s" -#: libpq/auth.c:2337 +#: libpq/auth.c:2343 #, c-format msgid "ldaps not supported with this LDAP library" msgstr "протокол ldaps з поточною бібліотекою LDAP не підтримується" -#: libpq/auth.c:2345 +#: libpq/auth.c:2351 #, c-format msgid "could not initialize LDAP: %m" msgstr "не вдалося ініціалізувати протокол LDAP: %m" -#: libpq/auth.c:2355 +#: libpq/auth.c:2361 #, c-format msgid "could not set LDAP protocol version: %s" msgstr "не вдалося встановити версію протоколу LDAP: %s" -#: libpq/auth.c:2371 +#: libpq/auth.c:2377 #, c-format msgid "could not start LDAP TLS session: %s" msgstr "не вдалося почати сеанс протоколу LDAP TLS: %s" -#: libpq/auth.c:2448 +#: libpq/auth.c:2454 #, c-format msgid "LDAP server not specified, and no ldapbasedn" msgstr "Сервер LDAP не вказаний, і не ldapbasedn" -#: libpq/auth.c:2455 +#: libpq/auth.c:2461 #, c-format msgid "LDAP server not specified" msgstr "LDAP-сервер не вказаний" -#: libpq/auth.c:2517 +#: libpq/auth.c:2523 #, c-format msgid "invalid character in user name for LDAP authentication" msgstr "неприпустимий символ в імені користувача для автентифікації LDAP" -#: libpq/auth.c:2534 +#: libpq/auth.c:2540 #, c-format msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s" msgstr "не вдалося виконати початкову прив'язку LDAP для ldapbinddn \"%s\" на сервері \"%s\": %s" -#: libpq/auth.c:2564 +#: libpq/auth.c:2570 #, c-format msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s" msgstr "не вдалося виконати LDAP-пошук за фільтром \"%s\" на сервері \"%s\": %s" -#: libpq/auth.c:2580 +#: libpq/auth.c:2586 #, c-format msgid "LDAP user \"%s\" does not exist" msgstr "LDAP-користувач \"%s\" не існує" -#: libpq/auth.c:2581 +#: libpq/auth.c:2587 #, c-format msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries." msgstr "LDAP-пошук за фільтром \"%s\" на сервері \"%s\" не повернув записів." -#: libpq/auth.c:2585 +#: libpq/auth.c:2591 #, c-format msgid "LDAP user \"%s\" is not unique" msgstr "LDAP-користувач \"%s\" не унікальний" -#: libpq/auth.c:2586 +#: libpq/auth.c:2592 #, 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." @@ -14924,139 +15506,139 @@ msgstr[1] "LDAP-пошук за фільтром \"%s\" на сервері \"%s msgstr[2] "LDAP-пошук за фільтром \"%s\" на сервері \"%s\" повернув %d записів." msgstr[3] "LDAP-пошук за фільтром \"%s\" на сервері \"%s\" повернув %d записів." -#: libpq/auth.c:2606 +#: libpq/auth.c:2612 #, c-format msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s" msgstr "не вдалося отримати dn для першого результату, що відповідає \"%s\" на сервері \"%s\": %s" -#: libpq/auth.c:2633 +#: libpq/auth.c:2639 #, c-format msgid "LDAP login failed for user \"%s\" on server \"%s\": %s" msgstr "Помилка під час реєстрації в протоколі LDAP користувача \"%s\" на сервері \"%s\": %s" -#: libpq/auth.c:2665 +#: libpq/auth.c:2671 #, c-format msgid "LDAP diagnostics: %s" msgstr "Діагностика LDAP: %s" -#: libpq/auth.c:2703 +#: libpq/auth.c:2709 #, c-format msgid "certificate authentication failed for user \"%s\": client certificate contains no user name" msgstr "помилка автентифікації сертифіката для користувача \"%s\": сертифікат клієнта не містить імені користувача" -#: libpq/auth.c:2724 +#: libpq/auth.c:2730 #, c-format msgid "certificate authentication failed for user \"%s\": unable to retrieve subject DN" msgstr "помилка автентифікації сертифікату для користувача \"%s\": не вдалося отримати DN суб'єкта" -#: libpq/auth.c:2747 +#: libpq/auth.c:2753 #, c-format msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": DN mismatch" msgstr "помилка перевірки сертифікату (clientcert=verify-full) для користувача \"%s\": DN невідповідність" -#: libpq/auth.c:2752 +#: libpq/auth.c:2758 #, c-format msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": CN mismatch" msgstr "помилка перевірки сертифікату (clientcert=verify-full) для користувача \"%s\": CN невідповідність" -#: libpq/auth.c:2854 +#: libpq/auth.c:2860 #, c-format msgid "RADIUS server not specified" msgstr "RADIUS-сервер не вказаний" -#: libpq/auth.c:2861 +#: libpq/auth.c:2867 #, c-format msgid "RADIUS secret not specified" msgstr "Секрет RADIUS не вказаний" -#: libpq/auth.c:2875 +#: libpq/auth.c:2881 #, c-format msgid "RADIUS authentication does not support passwords longer than %d characters" msgstr "Автентифікація RADIUS не підтримує паролі довші ніж %d символів" -#: libpq/auth.c:2977 libpq/hba.c:2352 +#: libpq/auth.c:2983 libpq/hba.c:2391 #, c-format msgid "could not translate RADIUS server name \"%s\" to address: %s" msgstr "не вдалося перетворити ім'я серверу RADIUS \"%s\" в адресу: %s" -#: libpq/auth.c:2991 +#: libpq/auth.c:2997 #, c-format msgid "could not generate random encryption vector" msgstr "не вдалося створити випадковий вектор шифрування" -#: libpq/auth.c:3028 +#: libpq/auth.c:3034 #, c-format msgid "could not perform MD5 encryption of password: %s" msgstr "не вдалося виконати MD5 шифрування паролю: %s" -#: libpq/auth.c:3055 +#: libpq/auth.c:3061 #, c-format msgid "could not create RADIUS socket: %m" msgstr "не вдалося створити сокет RADIUS: %m" -#: libpq/auth.c:3071 +#: libpq/auth.c:3077 #, c-format msgid "could not bind local RADIUS socket: %m" msgstr "не вдалося прив'язатися до локального сокету RADIUS: %m" -#: libpq/auth.c:3081 +#: libpq/auth.c:3087 #, c-format msgid "could not send RADIUS packet: %m" msgstr "не вдалося відправити пакет RADIUS: %m" -#: libpq/auth.c:3115 libpq/auth.c:3141 +#: libpq/auth.c:3121 libpq/auth.c:3147 #, c-format msgid "timeout waiting for RADIUS response from %s" msgstr "перевищено час очікування відповіді RADIUS від %s" -#: libpq/auth.c:3134 +#: libpq/auth.c:3140 #, c-format msgid "could not check status on RADIUS socket: %m" msgstr "не вдалося перевірити статус сокету RADIUS: %m" -#: libpq/auth.c:3164 +#: libpq/auth.c:3170 #, c-format msgid "could not read RADIUS response: %m" msgstr "не вдалося прочитати відповідь RADIUS: %m" -#: libpq/auth.c:3172 +#: libpq/auth.c:3178 #, c-format msgid "RADIUS response from %s was sent from incorrect port: %d" msgstr "Відповідь RADIUS від %s була відправлена з неправильного порту: %d" -#: libpq/auth.c:3180 +#: libpq/auth.c:3186 #, c-format msgid "RADIUS response from %s too short: %d" msgstr "Занадто коротка відповідь RADIUS від %s: %d" -#: libpq/auth.c:3187 +#: libpq/auth.c:3193 #, c-format msgid "RADIUS response from %s has corrupt length: %d (actual length %d)" msgstr "У відповіді RADIUS від %s покшоджена довжина: %d (фактична довжина %d)" -#: libpq/auth.c:3195 +#: libpq/auth.c:3201 #, c-format msgid "RADIUS response from %s is to a different request: %d (should be %d)" msgstr "Прийшла відповідь RADIUS від %s на інший запит: %d (очікувалася %d)" -#: libpq/auth.c:3220 +#: libpq/auth.c:3228 #, c-format msgid "could not perform MD5 encryption of received packet: %s" msgstr "не вдалося виконати MD5 шифрування отриманого пакету: %s" -#: libpq/auth.c:3230 +#: libpq/auth.c:3238 #, c-format msgid "RADIUS response from %s has incorrect MD5 signature" msgstr "Відповідь RADIUS від %s має неправильний підпис MD5" -#: libpq/auth.c:3248 +#: libpq/auth.c:3256 #, c-format msgid "RADIUS response from %s has invalid code (%d) for user \"%s\"" msgstr "Відповідь RADIUS від %s має неприпустимий код (%d) для користувача \"%s\"" #: libpq/be-fsstubs.c:133 libpq/be-fsstubs.c:162 libpq/be-fsstubs.c:190 #: libpq/be-fsstubs.c:216 libpq/be-fsstubs.c:241 libpq/be-fsstubs.c:283 -#: libpq/be-fsstubs.c:306 libpq/be-fsstubs.c:560 +#: libpq/be-fsstubs.c:306 libpq/be-fsstubs.c:565 #, c-format msgid "invalid large-object descriptor: %d" msgstr "неприпустимий дескриптор великого об'єкту: %d" @@ -15066,7 +15648,7 @@ msgstr "неприпустимий дескриптор великого об'є msgid "large object descriptor %d was not opened for reading" msgstr "дескриптор великого об'єкту %d не був відкритий для читання" -#: libpq/be-fsstubs.c:197 libpq/be-fsstubs.c:567 +#: libpq/be-fsstubs.c:197 libpq/be-fsstubs.c:572 #, c-format msgid "large object descriptor %d was not opened for writing" msgstr "дескриптор великого об’єкту %d не був відкритий для запису" @@ -15081,32 +15663,32 @@ msgstr "результат lo_lseek для дескриптора великог msgid "lo_tell result out of range for large-object descriptor %d" msgstr "результат lo_tell для дескриптору\\а великого об'єкту %d поза діапазоном" -#: libpq/be-fsstubs.c:439 +#: libpq/be-fsstubs.c:444 #, c-format msgid "could not open server file \"%s\": %m" msgstr "не вдалося відкрити файл сервера \"%s\": %m" -#: libpq/be-fsstubs.c:462 +#: libpq/be-fsstubs.c:467 #, c-format msgid "could not read server file \"%s\": %m" msgstr "не вдалося прочитати файл сервера \"%s\": %m" -#: libpq/be-fsstubs.c:521 +#: libpq/be-fsstubs.c:526 #, c-format msgid "could not create server file \"%s\": %m" msgstr "не вдалося створити файл сервера \"%s\": %m" -#: libpq/be-fsstubs.c:533 +#: libpq/be-fsstubs.c:538 #, c-format msgid "could not write server file \"%s\": %m" msgstr "не вдалося написати файл сервера \"%s\": %m" -#: libpq/be-fsstubs.c:774 +#: libpq/be-fsstubs.c:779 #, c-format msgid "large object read request is too large" msgstr "запит на читання великого об'єкту має завеликий розмір" -#: libpq/be-fsstubs.c:816 utils/adt/genfile.c:248 utils/adt/genfile.c:269 +#: libpq/be-fsstubs.c:821 utils/adt/genfile.c:248 utils/adt/genfile.c:269 #, c-format msgid "requested length cannot be negative" msgstr "запитувана довжина не може бути негативною" @@ -15141,819 +15723,837 @@ msgstr "до файлу закритого ключа \"%s\" мають дост 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) або менше, якщо він належить користувачу бази даних, або u=rw,g=r (0640) або менше, якщо він належить кореню." -#: libpq/be-secure-gssapi.c:201 +#: libpq/be-secure-gssapi.c:209 msgid "GSSAPI wrap error" msgstr "помилка при згортанні GSSAPI" -#: libpq/be-secure-gssapi.c:208 +#: libpq/be-secure-gssapi.c:216 #, c-format msgid "outgoing GSSAPI message would not use confidentiality" msgstr "вихідне повідомлення GSSAPI не буде використовувати конфіденційність" -#: libpq/be-secure-gssapi.c:215 libpq/be-secure-gssapi.c:634 +#: libpq/be-secure-gssapi.c:223 libpq/be-secure-gssapi.c:647 #, c-format msgid "server tried to send oversize GSSAPI packet (%zu > %zu)" msgstr "сервер намагався надіслати переповнений пакет GSSAPI (%zu > %zu)" -#: libpq/be-secure-gssapi.c:351 +#: libpq/be-secure-gssapi.c:359 libpq/be-secure-gssapi.c:588 #, c-format msgid "oversize GSSAPI packet sent by the client (%zu > %zu)" msgstr "переповнений пакет GSSAPI, надісланий клієнтом (%zu > %zu)" -#: libpq/be-secure-gssapi.c:389 +#: libpq/be-secure-gssapi.c:397 msgid "GSSAPI unwrap error" msgstr "помилка при розгортанні GSSAPI" -#: libpq/be-secure-gssapi.c:396 +#: libpq/be-secure-gssapi.c:404 #, c-format msgid "incoming GSSAPI message did not use confidentiality" msgstr "вхідне повідомлення GSSAPI не використовувало конфіденційність" -#: libpq/be-secure-gssapi.c:575 -#, c-format -msgid "oversize GSSAPI packet sent by the client (%zu > %d)" -msgstr "переповнений пакет GSSAPI, надісланий клієнтом (%zu > %d)" - -#: libpq/be-secure-gssapi.c:600 +#: libpq/be-secure-gssapi.c:613 msgid "could not accept GSSAPI security context" msgstr "не вдалося прийняти контекст безпеки GSSAPI" -#: libpq/be-secure-gssapi.c:701 +#: libpq/be-secure-gssapi.c:731 msgid "GSSAPI size check error" msgstr "помилка перевірки розміру GSSAPI" -#: libpq/be-secure-openssl.c:131 +#: libpq/be-secure-openssl.c:118 #, c-format msgid "could not create SSL context: %s" msgstr "не вдалося створити контекст SSL: %s" -#: libpq/be-secure-openssl.c:157 +#: libpq/be-secure-openssl.c:144 #, c-format msgid "could not load server certificate file \"%s\": %s" msgstr "не вдалося завантажити сертифікат серверу \"%s\": %s" -#: libpq/be-secure-openssl.c:177 +#: libpq/be-secure-openssl.c:164 #, c-format msgid "private key file \"%s\" cannot be reloaded because it requires a passphrase" msgstr "файл закритого ключа \"%s\" не можна перезавантажити, тому що це потребує парольну фразу" -#: libpq/be-secure-openssl.c:182 +#: libpq/be-secure-openssl.c:169 #, c-format msgid "could not load private key file \"%s\": %s" msgstr "не вдалось завантажити файл закритого ключа \"%s\": %s" -#: libpq/be-secure-openssl.c:191 +#: libpq/be-secure-openssl.c:178 #, c-format msgid "check of private key failed: %s" msgstr "помилка під час перевірки приватного ключа: %s" #. translator: first %s is a GUC option name, second %s is its value -#: libpq/be-secure-openssl.c:204 libpq/be-secure-openssl.c:227 +#: libpq/be-secure-openssl.c:191 libpq/be-secure-openssl.c:214 #, c-format msgid "\"%s\" setting \"%s\" not supported by this build" msgstr "\"%s\" налаштування \"%s\" не підтримується цією збіркою" -#: libpq/be-secure-openssl.c:214 +#: libpq/be-secure-openssl.c:201 #, c-format msgid "could not set minimum SSL protocol version" msgstr "не вдалося встановити мінімальну версію протоколу SSL" -#: libpq/be-secure-openssl.c:237 +#: libpq/be-secure-openssl.c:224 #, c-format msgid "could not set maximum SSL protocol version" msgstr "не вдалося встановити максимальну версію протоколу SSL" -#: libpq/be-secure-openssl.c:253 +#: libpq/be-secure-openssl.c:241 #, c-format msgid "could not set SSL protocol version range" msgstr "не вдалося встановити діапазон версій протоколу SSL" -#: libpq/be-secure-openssl.c:254 +#: libpq/be-secure-openssl.c:242 #, c-format msgid "\"%s\" cannot be higher than \"%s\"" msgstr "\"%s\" не може бути більше, ніж \"%s\"" -#: libpq/be-secure-openssl.c:307 +#: libpq/be-secure-openssl.c:295 +#, c-format +msgid "could not set the TLSv1.2 cipher list (no valid ciphers available)" +msgstr "не вдалося встановити список шифрів TLSv1.2 (жодних дійсних шифрів немає)" + +#: libpq/be-secure-openssl.c:310 #, c-format -msgid "could not set the cipher list (no valid ciphers available)" -msgstr "не вдалося встановити список шифрів (немає дійсних шифрів)" +msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" +msgstr "не вдалося встановити набори шифрів TLSv1.3 (жодних дійсних шифрів немає)" -#: libpq/be-secure-openssl.c:327 +#: libpq/be-secure-openssl.c:331 #, c-format msgid "could not load root certificate file \"%s\": %s" msgstr "не вдалося завантажити файл кореневого сертифікату \"%s\": %s" -#: libpq/be-secure-openssl.c:376 +#: libpq/be-secure-openssl.c:380 #, c-format msgid "could not load SSL certificate revocation list file \"%s\": %s" msgstr "не вдалося завантажити файл зі списком відкликаних сертифікатів SSL \"%s\": %s" -#: libpq/be-secure-openssl.c:384 +#: libpq/be-secure-openssl.c:388 #, c-format msgid "could not load SSL certificate revocation list directory \"%s\": %s" msgstr "не вдалося завантажити каталог списку відкликаних сертифікатів SSL \"%s\": %s" -#: libpq/be-secure-openssl.c:392 +#: libpq/be-secure-openssl.c:396 #, c-format msgid "could not load SSL certificate revocation list file \"%s\" or directory \"%s\": %s" msgstr "не вдалося завантажити файл \"%s\" або каталог \"%s\" списку відкликаних сертифікатів SSL: %s" -#: libpq/be-secure-openssl.c:450 +#: libpq/be-secure-openssl.c:454 #, c-format msgid "could not initialize SSL connection: SSL context not set up" msgstr "не вдалося ініціалізувати SSL-підключення: контекст SSL не встановлений" -#: libpq/be-secure-openssl.c:464 +#: libpq/be-secure-openssl.c:468 #, c-format msgid "could not initialize SSL connection: %s" msgstr "не вдалося ініціалізувати SSL-підключення: %s" -#: libpq/be-secure-openssl.c:472 +#: libpq/be-secure-openssl.c:476 #, c-format msgid "could not set SSL socket: %s" msgstr "не вдалося встановити SSL-сокет: %s" -#: libpq/be-secure-openssl.c:528 +#: libpq/be-secure-openssl.c:532 #, c-format msgid "could not accept SSL connection: %m" msgstr "не вдалося прийняти SSL-підключення: %m" -#: libpq/be-secure-openssl.c:532 libpq/be-secure-openssl.c:589 +#: libpq/be-secure-openssl.c:536 libpq/be-secure-openssl.c:593 #, c-format msgid "could not accept SSL connection: EOF detected" msgstr "не вдалося прийняти SSL-підключення: виявлений EOF" -#: libpq/be-secure-openssl.c:573 +#: libpq/be-secure-openssl.c:577 #, c-format msgid "could not accept SSL connection: %s" msgstr "не вдалося отримати підключення SSL: %s" -#: libpq/be-secure-openssl.c:577 +#: libpq/be-secure-openssl.c:581 #, c-format msgid "This may indicate that the client does not support any SSL protocol version between %s and %s." msgstr "Це може вказувати, що клієнт не підтримує жодної версії протоколу SSL між %s і %s." -#: libpq/be-secure-openssl.c:594 libpq/be-secure-openssl.c:809 -#: libpq/be-secure-openssl.c:879 +#: libpq/be-secure-openssl.c:598 libpq/be-secure-openssl.c:813 +#: libpq/be-secure-openssl.c:883 #, c-format msgid "unrecognized SSL error code: %d" msgstr "нерозпізнаний код помилки SSL: %d" -#: libpq/be-secure-openssl.c:622 +#: libpq/be-secure-openssl.c:626 #, c-format msgid "received SSL connection request with unexpected ALPN protocol" -msgstr "" +msgstr "отримано запит на підключення SSL з несподіваним протоколом ALPN" -#: libpq/be-secure-openssl.c:666 +#: libpq/be-secure-openssl.c:670 #, c-format msgid "SSL certificate's common name contains embedded null" msgstr "Спільне ім'я SSL-сертифікату містить нульовий байт" -#: libpq/be-secure-openssl.c:712 +#: libpq/be-secure-openssl.c:716 #, c-format msgid "SSL certificate's distinguished name contains embedded null" msgstr "Унікальна назва сертифікату SSL містить вбудоване null-значення" -#: libpq/be-secure-openssl.c:798 libpq/be-secure-openssl.c:863 +#: libpq/be-secure-openssl.c:802 libpq/be-secure-openssl.c:867 #, c-format msgid "SSL error: %s" msgstr "Помилка SSL: %s" -#: libpq/be-secure-openssl.c:1038 +#: libpq/be-secure-openssl.c:1050 #, c-format msgid "could not open DH parameters file \"%s\": %m" msgstr "не вдалося відкрити файл параметрів DH \"%s\": %m" -#: libpq/be-secure-openssl.c:1050 +#: libpq/be-secure-openssl.c:1062 #, c-format msgid "could not load DH parameters file: %s" msgstr "не вдалося завантажити файл параметрів DH: %s" -#: libpq/be-secure-openssl.c:1060 +#: libpq/be-secure-openssl.c:1072 #, c-format msgid "invalid DH parameters: %s" msgstr "неприпустимі параметри DH: %s" -#: libpq/be-secure-openssl.c:1069 +#: libpq/be-secure-openssl.c:1081 #, c-format msgid "invalid DH parameters: p is not prime" msgstr "неприпустимі параметри DH: р - не штрих" -#: libpq/be-secure-openssl.c:1078 +#: libpq/be-secure-openssl.c:1090 #, c-format msgid "invalid DH parameters: neither suitable generator or safe prime" msgstr "неприпустимі параметри DH: немає придатного генератора або безпечного штриха" -#: libpq/be-secure-openssl.c:1214 +#: libpq/be-secure-openssl.c:1226 #, c-format msgid "Client certificate verification failed at depth %d: %s." msgstr "Не вдалося перевірити сертифікат клієнта на глибині %d: %s." -#: libpq/be-secure-openssl.c:1251 +#: libpq/be-secure-openssl.c:1263 #, c-format msgid "Failed certificate data (unverified): subject \"%s\", serial number %s, issuer \"%s\"." msgstr "Помилкові дані сертифіката (неперевірені): тема \"%s\", серійний номер %s, емітент \"%s\"." -#: libpq/be-secure-openssl.c:1252 +#: libpq/be-secure-openssl.c:1264 msgid "unknown" msgstr "невідомо" -#: libpq/be-secure-openssl.c:1389 +#: libpq/be-secure-openssl.c:1401 #, c-format msgid "DH: could not load DH parameters" msgstr "DH: не вдалося завантажити параметри DH" -#: libpq/be-secure-openssl.c:1397 +#: libpq/be-secure-openssl.c:1409 #, c-format msgid "DH: could not set DH parameters: %s" msgstr "DH: не вдалося встановити параметри DH: %s" -#: libpq/be-secure-openssl.c:1424 +#: libpq/be-secure-openssl.c:1439 #, c-format -msgid "ECDH: unrecognized curve name: %s" -msgstr "ECDH: нерозпізнане ім'я кривої: %s" +msgid "could not set group names specified in ssl_groups: %s" +msgstr "не вдалося встановити імена груп, вказаних у ssl_groups: %s" + +#: libpq/be-secure-openssl.c:1441 +msgid "No valid groups found" +msgstr "Не знайдено дійсних груп" -#: libpq/be-secure-openssl.c:1433 +#: libpq/be-secure-openssl.c:1442 #, c-format -msgid "ECDH: could not create key" -msgstr "ECDH: не вдалося створити ключ" +msgid "Ensure that each group name is spelled correctly and supported by the installed version of OpenSSL." +msgstr "Переконайтеся, що кожна назва групи написана правильно та підтримується встановленою версією OpenSSL." -#: libpq/be-secure-openssl.c:1461 +#: libpq/be-secure-openssl.c:1488 msgid "no SSL error reported" msgstr "немає повідомлення про помилку SSL" -#: libpq/be-secure-openssl.c:1479 +#: libpq/be-secure-openssl.c:1506 #, c-format msgid "SSL error code %lu" msgstr "Код помилки SSL %lu" -#: libpq/be-secure-openssl.c:1636 +#: libpq/be-secure-openssl.c:1663 #, c-format msgid "could not create BIO" msgstr "неможливо створити BIO" -#: libpq/be-secure-openssl.c:1646 +#: libpq/be-secure-openssl.c:1673 #, c-format msgid "could not get NID for ASN1_OBJECT object" msgstr "не вдалося отримати NID для об'єкту ASN1_OBJECT" -#: libpq/be-secure-openssl.c:1654 +#: libpq/be-secure-openssl.c:1681 #, c-format msgid "could not convert NID %d to an ASN1_OBJECT structure" msgstr "не вдалося перетворити NID %d в структуру ASN1_OBJECT" -#: libpq/crypt.c:48 +#: libpq/crypt.c:50 #, c-format msgid "Role \"%s\" does not exist." msgstr "Роль \"%s\" не існує." -#: libpq/crypt.c:58 +#: libpq/crypt.c:60 #, c-format msgid "User \"%s\" has no password assigned." msgstr "Користувач \"%s\" не має пароля." -#: libpq/crypt.c:76 +#: libpq/crypt.c:78 #, c-format msgid "User \"%s\" has an expired password." msgstr "Користувач \"%s\" має прострочений пароль." -#: libpq/crypt.c:182 +#: libpq/crypt.c:174 +#, c-format +msgid "encrypted password is too long" +msgstr "зашифрований пароль занадто довгий" + +#: libpq/crypt.c:175 +#, c-format +msgid "Encrypted passwords must be no longer than %d bytes." +msgstr "Зашифровані паролі не можуть бути довшими за %d байтів." + +#: libpq/crypt.c:183 +#, c-format +msgid "setting an MD5-encrypted password" +msgstr "встановлення пароля, зашифрованого MD5" + +#: libpq/crypt.c:184 +#, c-format +msgid "MD5 password support is deprecated and will be removed in a future release of PostgreSQL." +msgstr "Підтримка паролів MD5 застаріла і буде видалена в майбутньому випуску PostgreSQL." + +#: libpq/crypt.c:185 +#, c-format +msgid "Refer to the PostgreSQL documentation for details about migrating to another password type." +msgstr "Зверніться до документації PostgreSQL для отримання деталей про міграцію на інший тип пароля." + +#: libpq/crypt.c:216 #, c-format msgid "User \"%s\" has a password that cannot be used with MD5 authentication." msgstr "Користувач \"%s\" має пароль, який не можна використовувати з автентифікацією MD5." -#: libpq/crypt.c:203 libpq/crypt.c:245 libpq/crypt.c:265 +#: libpq/crypt.c:237 libpq/crypt.c:279 libpq/crypt.c:299 #, c-format msgid "Password does not match for user \"%s\"." msgstr "Пароль не підходить для користувача \"%s\"." -#: libpq/crypt.c:284 +#: libpq/crypt.c:318 #, c-format msgid "Password of user \"%s\" is in unrecognized format." msgstr "Пароль користувача \"%s\" представлений в нерозпізнаному форматі." -#: libpq/hba.c:327 +#: libpq/hba.c:329 #, c-format msgid "invalid regular expression \"%s\": %s" msgstr "недійсний регулярний вираз \"%s\": %s" -#: libpq/hba.c:329 libpq/hba.c:661 libpq/hba.c:1245 libpq/hba.c:1265 -#: libpq/hba.c:1288 libpq/hba.c:1301 libpq/hba.c:1354 libpq/hba.c:1382 -#: libpq/hba.c:1390 libpq/hba.c:1402 libpq/hba.c:1423 libpq/hba.c:1436 -#: libpq/hba.c:1461 libpq/hba.c:1488 libpq/hba.c:1500 libpq/hba.c:1559 -#: libpq/hba.c:1579 libpq/hba.c:1593 libpq/hba.c:1613 libpq/hba.c:1624 -#: libpq/hba.c:1639 libpq/hba.c:1658 libpq/hba.c:1674 libpq/hba.c:1686 -#: libpq/hba.c:1752 libpq/hba.c:1765 libpq/hba.c:1787 libpq/hba.c:1799 -#: libpq/hba.c:1817 libpq/hba.c:1867 libpq/hba.c:1911 libpq/hba.c:1922 -#: libpq/hba.c:1938 libpq/hba.c:1955 libpq/hba.c:1966 libpq/hba.c:1985 -#: libpq/hba.c:2001 libpq/hba.c:2017 libpq/hba.c:2076 libpq/hba.c:2093 -#: libpq/hba.c:2106 libpq/hba.c:2118 libpq/hba.c:2137 libpq/hba.c:2223 -#: libpq/hba.c:2241 libpq/hba.c:2335 libpq/hba.c:2354 libpq/hba.c:2383 -#: libpq/hba.c:2396 libpq/hba.c:2419 libpq/hba.c:2441 libpq/hba.c:2455 -#: tsearch/ts_locale.c:241 -#, c-format -msgid "line %d of configuration file \"%s\"" -msgstr "рядок %d файла конфігурації \"%s\"" - -#: libpq/hba.c:457 +#: libpq/hba.c:459 #, c-format msgid "skipping missing authentication file \"%s\"" msgstr "пропускається відсутній файл автентифікації \"%s\"" -#: libpq/hba.c:609 +#: libpq/hba.c:611 #, c-format msgid "could not open file \"%s\": maximum nesting depth exceeded" msgstr "не вдалося відкрити файл \"%s\": максимальну глибину вкладення перевищено" -#: libpq/hba.c:1216 +#: libpq/hba.c:1222 #, c-format msgid "error enumerating network interfaces: %m" msgstr "помилка перерахування мережевих інтерфейсів: %m" #. translator: the second %s is a list of auth methods -#: libpq/hba.c:1243 +#: libpq/hba.c:1249 #, c-format msgid "authentication option \"%s\" is only valid for authentication methods %s" msgstr "параметр автентифікації \"%s\" припустимий лише для способів автентифікації %s" -#: libpq/hba.c:1263 +#: libpq/hba.c:1269 #, c-format msgid "authentication method \"%s\" requires argument \"%s\" to be set" msgstr "спосіб автентифікації \"%s\" потребує аргумент \"%s\" для встановлення" -#: libpq/hba.c:1287 +#: libpq/hba.c:1293 #, c-format msgid "missing entry at end of line" msgstr "відсутній запис в кінці рядка" -#: libpq/hba.c:1300 +#: libpq/hba.c:1306 #, c-format msgid "multiple values in ident field" msgstr "кілька значень в полі ident" -#: libpq/hba.c:1352 +#: libpq/hba.c:1358 #, c-format msgid "multiple values specified for connection type" msgstr "кілька значень вказано для типу підключення" -#: libpq/hba.c:1353 +#: libpq/hba.c:1359 #, c-format msgid "Specify exactly one connection type per line." msgstr "Вкажіть в рядку єдиний тип підключення." -#: libpq/hba.c:1380 +#: libpq/hba.c:1386 #, c-format msgid "hostssl record cannot match because SSL is disabled" msgstr "запис hostssl не збігається, тому що протокол SSL вимкнутий" -#: libpq/hba.c:1381 +#: libpq/hba.c:1387 #, c-format msgid "Set \"ssl = on\" in postgresql.conf." -msgstr "" +msgstr "Встановіть \"ssl = on\" в postgresql.conf." -#: libpq/hba.c:1389 +#: libpq/hba.c:1395 #, c-format msgid "hostssl record cannot match because SSL is not supported by this build" msgstr "запис hostssl не збігається, тому що SSL не підтримується цією збіркою" -#: libpq/hba.c:1401 +#: libpq/hba.c:1407 #, c-format msgid "hostgssenc record cannot match because GSSAPI is not supported by this build" msgstr "запис hostgssenc не може збігатись, оскільки GSSAPI не підтримується цією збіркою" -#: libpq/hba.c:1421 +#: libpq/hba.c:1427 #, c-format msgid "invalid connection type \"%s\"" msgstr "неприпустимий тип підключення \"%s\"" -#: libpq/hba.c:1435 +#: libpq/hba.c:1441 #, c-format msgid "end-of-line before database specification" msgstr "кінець рядка перед визначенням бази даних" -#: libpq/hba.c:1460 +#: libpq/hba.c:1466 #, c-format msgid "end-of-line before role specification" msgstr "кінець рядка перед визначенням ролі" -#: libpq/hba.c:1487 +#: libpq/hba.c:1493 #, c-format msgid "end-of-line before IP address specification" msgstr "кінець рядка перед визначенням IP-адрес" -#: libpq/hba.c:1498 +#: libpq/hba.c:1504 #, c-format msgid "multiple values specified for host address" msgstr "для адреси хоста вказано кілька значень" -#: libpq/hba.c:1499 +#: libpq/hba.c:1505 #, c-format msgid "Specify one address range per line." msgstr "Вкажіть один діапазон адреси в рядку." -#: libpq/hba.c:1557 +#: libpq/hba.c:1563 #, c-format msgid "invalid IP address \"%s\": %s" msgstr "неприпустима IP адреса \"%s\": %s" -#: libpq/hba.c:1577 +#: libpq/hba.c:1583 #, c-format msgid "specifying both host name and CIDR mask is invalid: \"%s\"" msgstr "визначити одночасно ім’я хоста і маску CIDR не можна: \"%s\"" -#: libpq/hba.c:1591 +#: libpq/hba.c:1597 #, c-format msgid "invalid CIDR mask in address \"%s\"" msgstr "неприпустима маска CIDR в адресі \"%s\"" -#: libpq/hba.c:1611 +#: libpq/hba.c:1617 #, c-format msgid "end-of-line before netmask specification" msgstr "кінець рядка перед визначенням маски мережі" -#: libpq/hba.c:1612 +#: libpq/hba.c:1618 #, c-format msgid "Specify an address range in CIDR notation, or provide a separate netmask." msgstr "Вкажіть діапазон адрес в нотації CIDR або надайте окрему маску мережі." -#: libpq/hba.c:1623 +#: libpq/hba.c:1629 #, c-format msgid "multiple values specified for netmask" msgstr "для маски мережі вказано декілька значень" -#: libpq/hba.c:1637 +#: libpq/hba.c:1643 #, c-format msgid "invalid IP mask \"%s\": %s" msgstr "неприпустима маска IP \"%s\": %s" -#: libpq/hba.c:1657 +#: libpq/hba.c:1663 #, c-format msgid "IP address and mask do not match" msgstr "IP-адреса і маска не збігаються" -#: libpq/hba.c:1673 +#: libpq/hba.c:1679 #, c-format msgid "end-of-line before authentication method" msgstr "кінець рядка перед способом автентифікації" -#: libpq/hba.c:1684 +#: libpq/hba.c:1690 #, c-format msgid "multiple values specified for authentication type" msgstr "для типу автентифікації вказано декілька значень" -#: libpq/hba.c:1685 +#: libpq/hba.c:1691 #, c-format msgid "Specify exactly one authentication type per line." msgstr "Вкажіть у рядку єдиний тип автентифікації." -#: libpq/hba.c:1750 +#: libpq/hba.c:1758 #, c-format msgid "invalid authentication method \"%s\"" msgstr "неприпустимий спосіб автентифікації \"%s\"" -#: libpq/hba.c:1763 +#: libpq/hba.c:1771 #, c-format msgid "invalid authentication method \"%s\": not supported by this build" msgstr "неприпустимий спосіб автентифікації \"%s\": не підтримується цією збіркою" -#: libpq/hba.c:1786 +#: libpq/hba.c:1794 #, c-format msgid "gssapi authentication is not supported on local sockets" msgstr "автентифікація gssapi для локальних сокетів не підтримується" -#: libpq/hba.c:1798 +#: libpq/hba.c:1806 #, c-format msgid "peer authentication is only supported on local sockets" msgstr "автентифікація peer підтримується лише для локальних сокетів" -#: libpq/hba.c:1816 +#: libpq/hba.c:1824 #, c-format msgid "cert authentication is only supported on hostssl connections" msgstr "автентифікація cert підтримується лише для підключень hostssl" -#: libpq/hba.c:1866 +#: libpq/hba.c:1874 #, c-format msgid "authentication option not in name=value format: %s" msgstr "параметр автентифікації вказаний не в форматі ім’я=значення: %s" -#: libpq/hba.c:1910 +#: libpq/hba.c:1918 #, c-format -msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter, or ldapurl together with ldapprefix" -msgstr "не можна використовувати ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter або ldapurl разом з ldapprefix" +msgid "cannot mix options for simple bind and search+bind modes" +msgstr "не можна поєднувати опції для простого прив'язування та режимів search+bind" -#: libpq/hba.c:1921 +#: libpq/hba.c:1929 #, c-format msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set" msgstr "спосіб автентифікації \"ldap\" потребує встановити аргумент \"ldapbasedn\", \"ldapprefix\" або \"ldapsuffix\"" -#: libpq/hba.c:1937 +#: libpq/hba.c:1945 #, c-format msgid "cannot use ldapsearchattribute together with ldapsearchfilter" msgstr "не можна використовувати ldapsearchattribute разом з ldapsearchfilter" -#: libpq/hba.c:1954 +#: libpq/hba.c:1962 #, c-format msgid "list of RADIUS servers cannot be empty" msgstr "список серверів RADIUS не може бути порожнім" -#: libpq/hba.c:1965 +#: libpq/hba.c:1973 #, c-format msgid "list of RADIUS secrets cannot be empty" msgstr "список секретів RADIUS не може бути порожнім" -#: libpq/hba.c:1982 +#: libpq/hba.c:1990 #, c-format msgid "the number of RADIUS secrets (%d) must be 1 or the same as the number of RADIUS servers (%d)" msgstr "кількість секретів RADIUS (%d) повинна бути 1 або дорівнювати кількості серверів RADIUS (%d)" -#: libpq/hba.c:1998 +#: libpq/hba.c:2006 #, c-format msgid "the number of RADIUS ports (%d) must be 1 or the same as the number of RADIUS servers (%d)" msgstr "кількість портів RADIUS (%d) повинна бути 1 або дорівнювати кількості серверів RADIUS (%d)" -#: libpq/hba.c:2014 +#: libpq/hba.c:2022 #, c-format msgid "the number of RADIUS identifiers (%d) must be 1 or the same as the number of RADIUS servers (%d)" msgstr "кількість ідентифікаторів RADIUS (%d) повинна бути 1 або дорівнювати кількості серверів RADIUS (%d)" -#: libpq/hba.c:2066 -msgid "ident, peer, gssapi, sspi, and cert" -msgstr "ident, peer, gssapi, sspi і cert" +#. translator: strings are replaced with hba options +#: libpq/hba.c:2067 +#, c-format +msgid "%s cannot be used in combination with %s" +msgstr "%s не може бути використано в комбінації з %s" + +#: libpq/hba.c:2105 +msgid "ident, peer, gssapi, sspi, cert, and oauth" +msgstr "ident, peer, gssapi, sspi, cert та oauth" -#: libpq/hba.c:2075 +#: libpq/hba.c:2114 #, c-format msgid "clientcert can only be configured for \"hostssl\" rows" msgstr "clientcert може бути налаштовано лише для рядків \"hostssl\"" -#: libpq/hba.c:2092 +#: libpq/hba.c:2131 #, c-format msgid "clientcert only accepts \"verify-full\" when using \"cert\" authentication" msgstr "clientcert приймає лише \"verify-full\" під час використання автентифікації \"cert\"" -#: libpq/hba.c:2105 +#: libpq/hba.c:2144 #, c-format msgid "invalid value for clientcert: \"%s\"" msgstr "неприпустиме значення для clientcert: \"%s\"" -#: libpq/hba.c:2117 +#: libpq/hba.c:2156 #, c-format msgid "clientname can only be configured for \"hostssl\" rows" msgstr "clientname можна налаштувати лише для рядків \"hostssl\"" -#: libpq/hba.c:2136 +#: libpq/hba.c:2175 #, c-format msgid "invalid value for clientname: \"%s\"" msgstr "неприпустиме значення для clientname: \"%s\"" -#: libpq/hba.c:2169 +#: libpq/hba.c:2208 #, c-format msgid "could not parse LDAP URL \"%s\": %s" msgstr "не вдалося аналізувати URL-адресу LDAP \"%s\": %s" -#: libpq/hba.c:2180 +#: libpq/hba.c:2219 #, c-format msgid "unsupported LDAP URL scheme: %s" msgstr "непідтримувана схема в URL-адресі LDAP: %s" -#: libpq/hba.c:2204 +#: libpq/hba.c:2243 #, c-format msgid "LDAP URLs not supported on this platform" msgstr "URL-адреса LDAP не підтримується на цій платформі" -#: libpq/hba.c:2222 +#: libpq/hba.c:2261 #, c-format msgid "invalid ldapscheme value: \"%s\"" msgstr "недійсне значення ldapscheme: \"%s\"" -#: libpq/hba.c:2240 +#: libpq/hba.c:2279 #, c-format msgid "invalid LDAP port number: \"%s\"" msgstr "недійсний номер порту LDAP: \"%s\"" -#: libpq/hba.c:2286 libpq/hba.c:2293 +#: libpq/hba.c:2325 libpq/hba.c:2332 msgid "gssapi and sspi" msgstr "gssapi і sspi" -#: libpq/hba.c:2302 libpq/hba.c:2311 +#: libpq/hba.c:2341 libpq/hba.c:2350 msgid "sspi" msgstr "sspi" -#: libpq/hba.c:2333 +#: libpq/hba.c:2372 #, c-format msgid "could not parse RADIUS server list \"%s\"" msgstr "не вдалося проаналізувати список серверів RADIUS \"%s\"" -#: libpq/hba.c:2381 +#: libpq/hba.c:2420 #, c-format msgid "could not parse RADIUS port list \"%s\"" msgstr "не вдалося проаналізувати список портів RADIUS \"%s\"" -#: libpq/hba.c:2395 +#: libpq/hba.c:2434 #, c-format msgid "invalid RADIUS port number: \"%s\"" msgstr "недійсний номер порту RADIUS: \"%s\"" -#: libpq/hba.c:2417 +#: libpq/hba.c:2456 #, c-format msgid "could not parse RADIUS secret list \"%s\"" msgstr "не вдалося проаналізувати список секретів RADIUS \"%s\"" -#: libpq/hba.c:2439 +#: libpq/hba.c:2478 #, c-format msgid "could not parse RADIUS identifiers list \"%s\"" msgstr "не вдалося проаналізувати список ідентифікаторів RADIUS \"%s\"" -#: libpq/hba.c:2453 +#: libpq/hba.c:2515 #, c-format msgid "unrecognized authentication option name: \"%s\"" msgstr "нерозпізнане ім’я параметра автентифікації: \"%s\"" -#: libpq/hba.c:2645 +#: libpq/hba.c:2707 #, c-format msgid "configuration file \"%s\" contains no entries" msgstr "файл конфігурації \"%s\" не містить елементів" -#: libpq/hba.c:2798 +#: libpq/hba.c:2860 #, c-format msgid "regular expression match for \"%s\" failed: %s" msgstr "помилка при пошуку за регулярним виразом для \"%s\": %s" -#: libpq/hba.c:2822 +#: libpq/hba.c:2884 #, c-format msgid "regular expression \"%s\" has no subexpressions as requested by backreference in \"%s\"" msgstr "регулярний вираз \"%s не містить підвиразів, необхідних для зворотного посилання в \"%s\"" -#: libpq/hba.c:2925 +#: libpq/hba.c:2987 #, c-format msgid "provided user name (%s) and authenticated user name (%s) do not match" msgstr "вказане ім'я користувача (%s) і автентифіковане ім'я користувача (%s) не збігаються" -#: libpq/hba.c:2945 +#: libpq/hba.c:3007 #, c-format msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\"" msgstr "немає відповідності у файлі зіставлень \"%s\" для користувача \"%s\" автентифікованого як \"%s\"" -#: libpq/pqcomm.c:211 libpq/pqcomm.c:219 libpq/pqcomm.c:250 libpq/pqcomm.c:259 -#: libpq/pqcomm.c:1648 libpq/pqcomm.c:1693 libpq/pqcomm.c:1733 -#: libpq/pqcomm.c:1777 libpq/pqcomm.c:1816 libpq/pqcomm.c:1855 -#: libpq/pqcomm.c:1891 libpq/pqcomm.c:1930 +#: libpq/pqcomm.c:212 libpq/pqcomm.c:220 libpq/pqcomm.c:251 libpq/pqcomm.c:260 +#: libpq/pqcomm.c:1652 libpq/pqcomm.c:1697 libpq/pqcomm.c:1737 +#: libpq/pqcomm.c:1781 libpq/pqcomm.c:1820 libpq/pqcomm.c:1859 +#: libpq/pqcomm.c:1895 libpq/pqcomm.c:1934 #, c-format msgid "%s(%s) failed: %m" msgstr "%s(%s) помилка: %m" -#: libpq/pqcomm.c:296 +#: libpq/pqcomm.c:297 #, c-format msgid "could not set socket to nonblocking mode: %m" msgstr "не вдалося перевести сокет у неблокуючий режим: %m" -#: libpq/pqcomm.c:456 +#: libpq/pqcomm.c:457 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "Шлях Unix-сокету \"%s\" занадто довгий (максимум %d байтів)" -#: libpq/pqcomm.c:476 +#: libpq/pqcomm.c:477 #, c-format msgid "could not translate host name \"%s\", service \"%s\" to address: %s" msgstr "не вдалось перекласти ім'я хоста \"%s\", служби \"%s\" в адресу: %s" -#: libpq/pqcomm.c:480 +#: libpq/pqcomm.c:481 #, c-format msgid "could not translate service \"%s\" to address: %s" msgstr "не вдалось перекласти службу \"%s\" в адресу: %s" -#: libpq/pqcomm.c:502 +#: libpq/pqcomm.c:503 #, c-format msgid "could not bind to all requested addresses: MAXLISTEN (%d) exceeded" msgstr "не вдалось прив'язатись до всіх запитаних адрес: MAXLISTEN (%d) перевищено" -#: libpq/pqcomm.c:511 +#: libpq/pqcomm.c:512 msgid "IPv4" msgstr "IPv4" -#: libpq/pqcomm.c:514 +#: libpq/pqcomm.c:515 msgid "IPv6" msgstr "IPv6" -#: libpq/pqcomm.c:517 +#: libpq/pqcomm.c:518 msgid "Unix" msgstr "Unix" -#: libpq/pqcomm.c:521 +#: libpq/pqcomm.c:522 #, c-format msgid "unrecognized address family %d" msgstr "нерозпізнане сімейство адресів %d" #. translator: first %s is IPv4, IPv6, or Unix -#: libpq/pqcomm.c:545 +#: libpq/pqcomm.c:546 #, c-format msgid "could not create %s socket for address \"%s\": %m" msgstr "не вдалось створити сокет %s для адреси \"%s\": %m" -#. translator: third %s is IPv4, IPv6, or Unix -#: libpq/pqcomm.c:574 libpq/pqcomm.c:592 +#. translator: third %s is IPv4 or IPv6 +#. translator: third %s is IPv6 +#: libpq/pqcomm.c:575 libpq/pqcomm.c:593 #, c-format msgid "%s(%s) failed for %s address \"%s\": %m" msgstr "%s(%s) помилка %s для адреси \"%s\": %m" #. translator: first %s is IPv4, IPv6, or Unix -#: libpq/pqcomm.c:615 +#: libpq/pqcomm.c:616 #, c-format msgid "could not bind %s address \"%s\": %m" msgstr "не вдалось прив'язатись до адреси %s \"%s\": %m" -#: libpq/pqcomm.c:619 +#: libpq/pqcomm.c:620 #, c-format msgid "Is another postmaster already running on port %d?" msgstr "Можливо інший процес postmaster вже виконується на порті %d?" -#: libpq/pqcomm.c:621 +#: libpq/pqcomm.c:622 #, c-format msgid "Is another postmaster already running on port %d? If not, wait a few seconds and retry." msgstr "Можливо порт %d вже зайнятий іншим процесом postmaster? Якщо ні, почекайте пару секунд і спробуйте знову." #. translator: first %s is IPv4, IPv6, or Unix -#: libpq/pqcomm.c:650 +#: libpq/pqcomm.c:651 #, c-format msgid "could not listen on %s address \"%s\": %m" msgstr "не вдалось прослухати на адресі %s \"%s\": %m" -#: libpq/pqcomm.c:658 +#: libpq/pqcomm.c:659 #, c-format msgid "listening on Unix socket \"%s\"" msgstr "прослуховувати UNIX сокет \"%s\"" #. translator: first %s is IPv4 or IPv6 -#: libpq/pqcomm.c:663 +#: libpq/pqcomm.c:664 #, c-format msgid "listening on %s address \"%s\", port %d" msgstr "прослуховувати %s адресу \"%s\", порт %d" -#: libpq/pqcomm.c:753 +#: libpq/pqcomm.c:754 #, c-format msgid "group \"%s\" does not exist" msgstr "група \"%s\" не існує" -#: libpq/pqcomm.c:763 +#: libpq/pqcomm.c:764 #, c-format msgid "could not set group of file \"%s\": %m" msgstr "не вдалось встановити групу для файла \"%s\": %m" -#: libpq/pqcomm.c:774 +#: libpq/pqcomm.c:775 #, c-format msgid "could not set permissions of file \"%s\": %m" msgstr "не вдалось встановити дозволи для файла \"%s\": %m" -#: libpq/pqcomm.c:803 +#: libpq/pqcomm.c:804 #, c-format msgid "could not accept new connection: %m" msgstr "не вдалось прийняти нове підключення: %m" -#: libpq/pqcomm.c:885 +#: libpq/pqcomm.c:886 #, c-format msgid "there is no client connection" msgstr "немає клієнтського підключення" -#: libpq/pqcomm.c:941 libpq/pqcomm.c:1042 +#: libpq/pqcomm.c:942 libpq/pqcomm.c:1043 #, c-format msgid "could not receive data from client: %m" msgstr "не вдалось отримати дані від клієнта: %m" -#: libpq/pqcomm.c:1149 tcop/postgres.c:4533 +#: libpq/pqcomm.c:1151 tcop/postgres.c:4500 #, c-format msgid "terminating connection because protocol synchronization was lost" msgstr "завершення підключення через втрату синхронізації протоколу" -#: libpq/pqcomm.c:1215 +#: libpq/pqcomm.c:1217 #, c-format msgid "unexpected EOF within message length word" msgstr "неочікуваний EOF в слові довжини повідомлення" -#: libpq/pqcomm.c:1225 +#: libpq/pqcomm.c:1227 #, c-format msgid "invalid message length" msgstr "неприпустима довжина повідомлення" -#: libpq/pqcomm.c:1247 libpq/pqcomm.c:1260 +#: libpq/pqcomm.c:1249 libpq/pqcomm.c:1262 #, c-format msgid "incomplete message from client" msgstr "неповне повідомлення від клієнта" -#: libpq/pqcomm.c:1401 +#: libpq/pqcomm.c:1405 #, c-format msgid "could not send data to client: %m" msgstr "не вдалось надіслати дані клієнту: %m" -#: libpq/pqcomm.c:1616 +#: libpq/pqcomm.c:1620 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) помилка: код помилки %d" -#: libpq/pqcomm.c:1705 +#: libpq/pqcomm.c:1709 #, c-format msgid "setting the keepalive idle time is not supported" msgstr "встановлення часу простою keepalive не підтримується" -#: libpq/pqcomm.c:1789 libpq/pqcomm.c:1864 libpq/pqcomm.c:1939 +#: libpq/pqcomm.c:1793 libpq/pqcomm.c:1868 libpq/pqcomm.c:1943 #, c-format msgid "%s(%s) not supported" msgstr "%s(%s) не підтримується" @@ -15964,7 +16564,7 @@ msgid "no data left in message" msgstr "у повідомлення не залишилось даних" #: libpq/pqformat.c:515 libpq/pqformat.c:533 libpq/pqformat.c:554 -#: utils/adt/array_userfuncs.c:797 utils/adt/arrayfuncs.c:1481 +#: utils/adt/array_userfuncs.c:873 utils/adt/arrayfuncs.c:1481 #: utils/adt/rowtypes.c:613 #, c-format msgid "insufficient data left in message" @@ -15980,220 +16580,220 @@ msgstr "неприпустимий рядок в повідомленні" msgid "invalid message format" msgstr "неприпустимий формат повідомлення" -#: main/main.c:234 +#: main/main.c:298 #, c-format msgid "%s: WSAStartup failed: %d\n" msgstr "%s: помилка WSAStartup: %d\n" -#: main/main.c:322 +#: main/main.c:386 #, c-format msgid "%s is the PostgreSQL server.\n\n" msgstr "%s - сервер PostgreSQL.\n\n" -#: main/main.c:323 +#: main/main.c:387 #, c-format msgid "Usage:\n" " %s [OPTION]...\n\n" msgstr "Використання:\n" " %s [OPTION]...\n\n" -#: main/main.c:324 +#: main/main.c:388 #, c-format msgid "Options:\n" msgstr "Параметри:\n" -#: main/main.c:325 +#: main/main.c:389 #, c-format msgid " -B NBUFFERS number of shared buffers\n" msgstr " -B NBUFFERS число спільних буферів\n" -#: main/main.c:326 +#: main/main.c:390 #, c-format msgid " -c NAME=VALUE set run-time parameter\n" msgstr " -c NAME=VALUE встановити параметр під час виконання\n" -#: main/main.c:327 +#: main/main.c:391 #, c-format msgid " -C NAME print value of run-time parameter, then exit\n" msgstr " -C NAME вивести значення параметру під час виконання і вийти\n" -#: main/main.c:328 +#: main/main.c:392 #, c-format msgid " -d 1-5 debugging level\n" msgstr " -d 1-5 рівень налагодження\n" -#: main/main.c:329 +#: main/main.c:393 #, c-format msgid " -D DATADIR database directory\n" msgstr " -D DATADIR каталог бази даних\n" -#: main/main.c:330 +#: main/main.c:394 #, c-format msgid " -e use European date input format (DMY)\n" msgstr " -e використати європейський формат дат (DMY)\n" -#: main/main.c:331 +#: main/main.c:395 #, c-format msgid " -F turn fsync off\n" msgstr " -F вимкнути fsync\n" -#: main/main.c:332 +#: main/main.c:396 #, c-format msgid " -h HOSTNAME host name or IP address to listen on\n" msgstr " -h HOSTNAME ім’я хоста або IP-адреса для прослуховування\n" -#: main/main.c:333 +#: main/main.c:397 #, c-format msgid " -i enable TCP/IP connections (deprecated)\n" msgstr " -i активувати підключення TCP/IP (застаріле)\n" -#: main/main.c:334 +#: main/main.c:398 #, c-format msgid " -k DIRECTORY Unix-domain socket location\n" msgstr " -k DIRECTORY розташування Unix-сокетів\n" -#: main/main.c:336 +#: main/main.c:400 #, c-format msgid " -l enable SSL connections\n" msgstr " -l активувати SSL-підключення\n" -#: main/main.c:338 +#: main/main.c:402 #, c-format msgid " -N MAX-CONNECT maximum number of allowed connections\n" msgstr " -N MAX-CONNECT максимальне число дозволених підключень\n" -#: main/main.c:339 +#: main/main.c:403 #, c-format msgid " -p PORT port number to listen on\n" msgstr " -p PORT номер порту для прослуховування\n" -#: main/main.c:340 +#: main/main.c:404 #, c-format msgid " -s show statistics after each query\n" msgstr " -s відображувати статистику після кожного запиту\n" -#: main/main.c:341 +#: main/main.c:405 #, c-format msgid " -S WORK-MEM set amount of memory for sorts (in kB)\n" msgstr " -S WORK-MEM вказати обсяг пам'яті для сортування (в КБ)\n" -#: main/main.c:342 +#: main/main.c:406 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: main/main.c:343 +#: main/main.c:407 #, c-format msgid " --NAME=VALUE set run-time parameter\n" msgstr " --NAME=VALUE встановити параметр під час виконання\n" -#: main/main.c:344 +#: main/main.c:408 #, c-format msgid " --describe-config describe configuration parameters, then exit\n" msgstr " --describe-config описати параметри конфігурації і вийти\n" -#: main/main.c:345 +#: main/main.c:409 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати довідку і вийти\n" -#: main/main.c:347 +#: main/main.c:411 #, c-format msgid "\n" "Developer options:\n" msgstr "\n" "Параметри для розробників:\n" -#: main/main.c:348 +#: main/main.c:412 #, c-format msgid " -f s|i|o|b|t|n|m|h forbid use of some plan types\n" msgstr " -f s|i|o|b|t|n|m|h заборонити використовувати деякі типи плану\n" -#: main/main.c:349 +#: main/main.c:413 #, c-format msgid " -O allow system table structure changes\n" msgstr " -O дозволити змінювати структуру системних таблиць\n" -#: main/main.c:350 +#: main/main.c:414 #, c-format msgid " -P disable system indexes\n" msgstr " -P вимкнути системні індекси\n" -#: main/main.c:351 +#: main/main.c:415 #, c-format msgid " -t pa|pl|ex show timings after each query\n" msgstr " -t pa|pl|ex показувати час після кожного запиту\n" -#: main/main.c:352 +#: main/main.c:416 #, c-format msgid " -T send SIGABRT to all backend processes if one dies\n" msgstr " -T надіслати SIGABRT усім внутрішнім процесам, якщо один вимкнеться\n" -#: main/main.c:353 +#: main/main.c:417 #, c-format msgid " -W NUM wait NUM seconds to allow attach from a debugger\n" msgstr " -W NUM очікувати NUM секунд, щоб дозволити підключення від налагоджувача\n" -#: main/main.c:355 +#: main/main.c:419 #, c-format msgid "\n" "Options for single-user mode:\n" msgstr "\n" "Параметри для однокористувацького режиму:\n" -#: main/main.c:356 +#: main/main.c:420 #, c-format msgid " --single selects single-user mode (must be first argument)\n" msgstr " --single установка однокористувацького режиму (цей аргумент повинен бути першим)\n" -#: main/main.c:357 +#: main/main.c:421 #, c-format msgid " DBNAME database name (defaults to user name)\n" msgstr " DBNAME ім’я бази даних (за замовчуванням - ім'я користувача)\n" -#: main/main.c:358 +#: main/main.c:422 #, c-format msgid " -d 0-5 override debugging level\n" msgstr " -d 0-5 змінити рівень налагодження\n" -#: main/main.c:359 +#: main/main.c:423 #, c-format msgid " -E echo statement before execution\n" msgstr " -E інструкція відлуння перед виконанням\n" -#: main/main.c:360 +#: main/main.c:424 #, c-format msgid " -j do not use newline as interactive query delimiter\n" msgstr " -j не використовувати новий рядок як роздільник інтерактивних запитів\n" -#: main/main.c:361 main/main.c:367 +#: main/main.c:425 main/main.c:431 #, c-format msgid " -r FILENAME send stdout and stderr to given file\n" msgstr " -r FILENAME надіслати stdout і stderr до вказаного файлу\n" -#: main/main.c:363 +#: main/main.c:427 #, c-format msgid "\n" "Options for bootstrapping mode:\n" msgstr "\n" "Параметри для режиму початкового завантаження:\n" -#: main/main.c:364 +#: main/main.c:428 #, c-format msgid " --boot selects bootstrapping mode (must be first argument)\n" msgstr " --boot установка режиму початкового завантаження (цей аргумент повинен бути першим)\n" -#: main/main.c:365 +#: main/main.c:429 #, c-format msgid " --check selects check mode (must be first argument)\n" msgstr " --check обирає режим перевірки (має бути першим аргументом)\n" -#: main/main.c:366 +#: main/main.c:430 #, c-format msgid " DBNAME database name (mandatory argument in bootstrapping mode)\n" msgstr " DBNAME ім'я бази даних (обов'язковий аргумент у режимі початкового завантаження)\n" -#: main/main.c:369 +#: main/main.c:433 #, c-format msgid "\n" "Please read the documentation for the complete list of run-time\n" @@ -16204,12 +16804,12 @@ msgstr "\n" "Будь-ласка прочитайте інструкцію для повного списку параметрів конфігурації виконання і їх встановлення у командний рядок або в файл конфігурації.\n\n" "Про помилки повідомляйте <%s>.\n" -#: main/main.c:373 +#: main/main.c:437 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: main/main.c:384 +#: main/main.c:448 #, c-format msgid "\"root\" execution of the PostgreSQL server is not permitted.\n" "The server must be started under an unprivileged user ID to prevent\n" @@ -16218,12 +16818,12 @@ msgid "\"root\" execution of the PostgreSQL server is not permitted.\n" msgstr "Запускати сервер PostgreSQL під іменем \"root\" не дозволено.\n" "Для запобігання компрометації системи безпеки сервер повинен запускати непривілейований користувач. Дивіться документацію, щоб дізнатися більше про те, як правильно запустити сервер.\n" -#: main/main.c:401 +#: main/main.c:465 #, c-format msgid "%s: real and effective user IDs must match\n" msgstr "%s: дійсний і ефективний ID користувача повинні збігатися\n" -#: main/main.c:408 +#: main/main.c:472 #, c-format msgid "Execution of PostgreSQL by a user with administrative permissions is not\n" "permitted.\n" @@ -16243,15 +16843,15 @@ msgstr "розширений тип вузла \"%s\" вже існує" msgid "ExtensibleNodeMethods \"%s\" was not registered" msgstr "Методи розширеного вузла \"%s\" не зареєстровані" -#: nodes/makefuncs.c:152 statistics/extended_stats.c:2310 +#: nodes/makefuncs.c:154 nodes/makefuncs.c:180 statistics/extended_stats.c:2286 #, c-format msgid "relation \"%s\" does not have a composite type" msgstr "відношення \"%s\" не має складеного типу" -#: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2567 -#: parser/parse_coerce.c:2705 parser/parse_coerce.c:2752 -#: parser/parse_expr.c:2112 parser/parse_func.c:710 parser/parse_oper.c:869 -#: utils/fmgr/funcapi.c:669 +#: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2602 +#: parser/parse_coerce.c:2740 parser/parse_coerce.c:2787 +#: parser/parse_expr.c:2121 parser/parse_func.c:710 parser/parse_oper.c:869 +#: utils/adt/array_userfuncs.c:1950 utils/fmgr/funcapi.c:669 #, c-format msgid "could not find array type for data type %s" msgstr "не вдалося знайти тип масиву для типу даних %s" @@ -16266,184 +16866,205 @@ msgstr "портал \"%s\" з параметрами: %s" msgid "unnamed portal with parameters: %s" msgstr "портал без імені з параметрами: %s" -#: optimizer/path/joinrels.c:972 +#: optimizer/path/joinrels.c:964 #, c-format msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "FULL JOIN підтримується лише з умовами, які допускають з'єднання злиттям або хеш-з'єднанням" -#: optimizer/plan/createplan.c:7175 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1696 +#: optimizer/plan/createplan.c:7321 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1692 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "не можна виконати MERGE для відношення \"%s\"" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/initsplan.c:1407 +#: optimizer/plan/initsplan.c:1755 #, 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:1386 parser/analyze.c:1771 parser/analyze.c:2029 -#: parser/analyze.c:3247 +#: optimizer/plan/planner.c:1512 parser/analyze.c:1815 parser/analyze.c:2074 +#: parser/analyze.c:3396 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s несумісно з UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2127 optimizer/plan/planner.c:4113 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 #, c-format msgid "could not implement GROUP BY" msgstr "не вдалося реалізувати GROUP BY" -#: optimizer/plan/planner.c:2128 optimizer/plan/planner.c:4114 -#: optimizer/plan/planner.c:4795 optimizer/prep/prepunion.c:1320 +#: optimizer/plan/planner.c:2259 optimizer/plan/planner.c:4145 +#: optimizer/plan/planner.c:4826 optimizer/prep/prepunion.c:1073 #, c-format msgid "Some of the datatypes only support hashing, while others only support sorting." msgstr "Деякі типи даних підтримують лише хешування, в той час як інші підтримують тільки сортування." -#: optimizer/plan/planner.c:4794 +#: optimizer/plan/planner.c:4825 #, c-format msgid "could not implement DISTINCT" msgstr "не вдалося реалізувати DISTINCT" -#: optimizer/plan/planner.c:6139 +#: optimizer/plan/planner.c:6287 #, c-format msgid "could not implement window PARTITION BY" msgstr "не вдалося реалізувати PARTITION BY для вікна" -#: optimizer/plan/planner.c:6140 +#: optimizer/plan/planner.c:6288 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Стовпці, що розділяють вікна, повинні мати типи даних з можливістю сортування." -#: optimizer/plan/planner.c:6144 +#: optimizer/plan/planner.c:6292 #, c-format msgid "could not implement window ORDER BY" msgstr "не вдалося реалізувати ORDER BY для вікна" -#: optimizer/plan/planner.c:6145 +#: optimizer/plan/planner.c:6293 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Стовпці, що впорядковують вікна, повинні мати типи даних з можливістю сортування." -#: optimizer/prep/prepunion.c:467 +#: optimizer/prep/prepunion.c:440 #, c-format msgid "could not implement recursive UNION" msgstr "не вдалося реалізувати рекурсивний UNION" -#: optimizer/prep/prepunion.c:468 +#: optimizer/prep/prepunion.c:441 #, c-format msgid "All column datatypes must be hashable." msgstr "Усі стовпці повинні мати типи даних з можливістю хешування." -#. translator: %s is UNION, INTERSECT, or EXCEPT -#: optimizer/prep/prepunion.c:1319 +#. translator: %s is INTERSECT or EXCEPT +#: optimizer/prep/prepunion.c:1071 #, c-format msgid "could not implement %s" msgstr "не вдалося реалізувати %s" -#: optimizer/util/clauses.c:4951 +#: optimizer/util/appendinfo.c:165 #, c-format -msgid "SQL function \"%s\" during inlining" +msgid "attribute \"%s\" of relation \"%s\" does not match parent's type" +msgstr "атрибут \"%s\" відношення \"%s\" не відповідає типу батьківського елемента" + +#: optimizer/util/appendinfo.c:170 +#, c-format +msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" +msgstr "атрибут \"%s\" відношення \"%s\" не відповідає параметрам сортування батьківського елемента" + +#: optimizer/util/clauses.c:4968 +#, c-format +msgid "SQL function \"%s\" during inlining" msgstr "Впроваджена в код SQL-функція \"%s\"" -#: optimizer/util/plancat.c:153 +#: optimizer/util/plancat.c:154 #, c-format msgid "cannot access temporary or unlogged relations during recovery" msgstr "отримати доступ до тимчасових або нежурнальованих відношень під час відновлення не можна" -#: optimizer/util/plancat.c:768 +#: optimizer/util/plancat.c:776 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "вказівки з посиланням на весь рядок для вибору унікального індексу не підтримуються" -#: optimizer/util/plancat.c:785 +#: optimizer/util/plancat.c:793 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "з обмеженням в реченні ON CONFLICT не пов'язаний індекс" -#: optimizer/util/plancat.c:835 +#: optimizer/util/plancat.c:843 #, c-format msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints" msgstr "ON CONFLICT DO UPDATE не підтримується з обмеженнями-винятками" -#: optimizer/util/plancat.c:945 +#: optimizer/util/plancat.c:960 #, c-format msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification" msgstr "немає унікального обмеження або обмеження-виключення відповідного специфікації ON CONFLICT" -#: parser/analyze.c:824 parser/analyze.c:1550 +#: parser/analyze.c:869 parser/analyze.c:1594 #, c-format msgid "VALUES lists must all be the same length" msgstr "Списки VALUES повинні мати однакову довжину" -#: parser/analyze.c:1027 +#: parser/analyze.c:1071 #, c-format msgid "INSERT has more expressions than target columns" msgstr "INSERT містить більше виразів, ніж цільових стовпців" -#: parser/analyze.c:1045 +#: parser/analyze.c:1089 #, c-format msgid "INSERT has more target columns than expressions" msgstr "INSERT містить більше цільових стовпців, ніж виразів" -#: parser/analyze.c:1049 +#: parser/analyze.c:1093 #, 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. Ви випадково використовували додаткові дужки?" -#: parser/analyze.c:1357 parser/analyze.c:1744 +#: parser/analyze.c:1401 parser/analyze.c:1788 #, c-format msgid "SELECT ... INTO is not allowed here" msgstr "SELECT ... INTO не дозволяється тут" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:1673 parser/analyze.c:3479 +#: parser/analyze.c:1717 parser/analyze.c:3628 #, c-format msgid "%s cannot be applied to VALUES" msgstr "%s не можна застосовувати до VALUES" -#: parser/analyze.c:1911 +#: parser/analyze.c:1955 #, c-format msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause" msgstr "неприпустиме речення UNION/INTERSECT/EXCEPT ORDER BY" -#: parser/analyze.c:1912 +#: parser/analyze.c:1956 #, c-format msgid "Only result column names can be used, not expressions or functions." msgstr "Дозволено використання тільки імен стовпців, але не виразів або функцій." -#: parser/analyze.c:1913 +#: parser/analyze.c:1957 #, c-format msgid "Add the expression/function to every SELECT, or move the UNION into a FROM clause." msgstr "Додайте вираз/функція до кожного SELECT, або перемістіть UNION у речення FROM." -#: parser/analyze.c:2019 +#: parser/analyze.c:2064 #, c-format msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT" msgstr "INTO дозволяється додати лише до першого SELECT в UNION/INTERSECT/EXCEPT" -#: parser/analyze.c:2091 +#: parser/analyze.c:2136 #, c-format msgid "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of same query level" msgstr "Учасник інструкції UNION/INTERSECT/EXCEPT не може посилатись на інші відносини на тому ж рівні" -#: parser/analyze.c:2178 +#: parser/analyze.c:2223 #, c-format msgid "each %s query must have the same number of columns" msgstr "кожен %s запит повинен мати однакову кількість стовпців" -#: parser/analyze.c:2535 +#: parser/analyze.c:2580 #, c-format msgid "SET target columns cannot be qualified with the relation name." msgstr "Цільові стовпці SET не можуть бути кваліфіковані за допомогою імені відношення." -#: parser/analyze.c:2589 +#. translator: %s is OLD or NEW +#: parser/analyze.c:2668 parser/analyze.c:2678 +#, c-format +msgid "%s cannot be specified multiple times" +msgstr "%s не може бути вказаний кілька разів" + +#: parser/analyze.c:2690 parser/parse_relation.c:473 +#, c-format +msgid "table name \"%s\" specified more than once" +msgstr "ім'я таблиці \"%s\" вказано більше одного разу" + +#: parser/analyze.c:2738 #, c-format msgid "RETURNING must have at least one column" msgstr "В RETURNING повинен бути мінімум один стовпець" -#: parser/analyze.c:2692 +#: parser/analyze.c:2840 #, c-format msgid "assignment source returned %d column" msgid_plural "assignment source returned %d columns" @@ -16452,548 +17073,558 @@ msgstr[1] "джерело призначення повернуло %d стов msgstr[2] "джерело призначення повернуло %d стовпців" msgstr[3] "джерело призначення повернуло %d стовпців" -#: parser/analyze.c:2753 +#: parser/analyze.c:2901 #, c-format msgid "variable \"%s\" is of type %s but expression is of type %s" msgstr "змінна \"%s\" має тип %s, але вираз має тип %s" #. translator: %s is a SQL keyword -#: parser/analyze.c:2878 parser/analyze.c:2886 +#: parser/analyze.c:3027 parser/analyze.c:3035 #, c-format msgid "cannot specify both %s and %s" msgstr "не можна вказати як %s, так і %s" -#: parser/analyze.c:2906 +#: parser/analyze.c:3055 #, 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:2914 +#: parser/analyze.c:3063 #, c-format msgid "DECLARE CURSOR WITH HOLD ... %s is not supported" msgstr "DECLARE CURSOR WITH HOLD ... %s не підтримується" -#: parser/analyze.c:2917 +#: parser/analyze.c:3066 #, c-format msgid "Holdable cursors must be READ ONLY." msgstr "Курсори, що зберігаються повинні бути READ ONLY." #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:2925 +#: parser/analyze.c:3074 #, 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:2936 +#: parser/analyze.c:3085 #, c-format msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid" msgstr "DECLARE INSENSITIVE CURSOR ... %s не є припустимим" -#: parser/analyze.c:2939 +#: parser/analyze.c:3088 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "Нечутливі курсори повинні бути READ ONLY." -#: parser/analyze.c:3033 +#: parser/analyze.c:3182 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "в матеріалізованих поданнях не повинні використовуватись оператори, які змінюють дані в WITH" -#: parser/analyze.c:3043 +#: parser/analyze.c:3192 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "в матеріалізованих поданнях не повинні використовуватись тимчасові таблиці або подання" -#: parser/analyze.c:3053 +#: parser/analyze.c:3202 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "визначати матеріалізовані подання з зв'язаними параметрами не можна" -#: parser/analyze.c:3065 +#: parser/analyze.c:3214 #, c-format msgid "materialized views cannot be unlogged" msgstr "матеріалізовані подання не можуть бути нежурнальованими" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3254 +#: parser/analyze.c:3403 #, 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:3261 +#: parser/analyze.c:3410 #, 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:3268 +#: parser/analyze.c:3417 #, 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:3275 +#: parser/analyze.c:3424 #, 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:3282 +#: parser/analyze.c:3431 #, 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:3289 +#: parser/analyze.c:3438 #, 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:3388 +#: parser/analyze.c:3537 #, 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:3452 +#: parser/analyze.c:3601 #, c-format msgid "%s cannot be applied to a join" msgstr "%s не можна застосовувати до з'єднання" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3461 +#: parser/analyze.c:3610 #, 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:3470 +#: parser/analyze.c:3619 #, 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:3488 +#: parser/analyze.c:3637 #, 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:3497 +#: parser/analyze.c:3646 #, c-format msgid "%s cannot be applied to a named tuplestore" msgstr "%s не можна застосовувати до іменованого джерела кортежів" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3517 +#: parser/analyze.c:3666 #, c-format msgid "relation \"%s\" in %s clause not found in FROM clause" msgstr "відношення \"%s\" в реченні %s не знайдено в реченні FROM" -#: parser/parse_agg.c:210 parser/parse_oper.c:215 +#: parser/parse_agg.c:218 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" msgstr "для типу %s не вдалося визначити оператора сортування" -#: parser/parse_agg.c:212 +#: parser/parse_agg.c:220 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "Агрегатним функціям з DISTINCT необхідно сортувати їх вхідні дані." -#: parser/parse_agg.c:270 +#: parser/parse_agg.c:278 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPING повинно містити меньше, ніж 32 аргумента" -#: parser/parse_agg.c:373 +#: parser/parse_agg.c:382 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "агрегатні функції не дозволяються в умовах JOIN" -#: parser/parse_agg.c:375 +#: parser/parse_agg.c:384 msgid "grouping operations are not allowed in JOIN conditions" msgstr "операції групування не дозволяються в умовах JOIN" -#: parser/parse_agg.c:385 +#: parser/parse_agg.c:394 msgid "aggregate functions are not allowed in FROM clause of their own query level" msgstr "агрегатні функції не можна застосовувати в реченні FROM їх рівня запиту" -#: parser/parse_agg.c:387 +#: parser/parse_agg.c:396 msgid "grouping operations are not allowed in FROM clause of their own query level" msgstr "операції групування не можна застосовувати в реченні FROM їх рівня запиту" -#: parser/parse_agg.c:392 +#: parser/parse_agg.c:401 msgid "aggregate functions are not allowed in functions in FROM" msgstr "агрегатні функції не можна застосовувати у функціях у FROM" -#: parser/parse_agg.c:394 +#: parser/parse_agg.c:403 msgid "grouping operations are not allowed in functions in FROM" msgstr "операції групування не можна застосовувати у функціях у FROM" -#: parser/parse_agg.c:402 +#: parser/parse_agg.c:411 msgid "aggregate functions are not allowed in policy expressions" msgstr "агрегатні функції не можна застосовувати у виразах політики" -#: parser/parse_agg.c:404 +#: parser/parse_agg.c:413 msgid "grouping operations are not allowed in policy expressions" msgstr "операції групування не можна застосовувати у виразах політики" -#: parser/parse_agg.c:421 +#: parser/parse_agg.c:430 msgid "aggregate functions are not allowed in window RANGE" msgstr "агрегатні функції не можна застосовувати у вікні RANGE " -#: parser/parse_agg.c:423 +#: parser/parse_agg.c:432 msgid "grouping operations are not allowed in window RANGE" msgstr "операції групування не можна застосовувати у вікні RANGE" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:437 msgid "aggregate functions are not allowed in window ROWS" msgstr "агрегатні функції не можна застосовувати у вікні ROWS" -#: parser/parse_agg.c:430 +#: parser/parse_agg.c:439 msgid "grouping operations are not allowed in window ROWS" msgstr "операції групування не можна застосовувати у вікні ROWS" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:444 msgid "aggregate functions are not allowed in window GROUPS" msgstr "агрегатні функції не можна застосовувати у вікні GROUPS" -#: parser/parse_agg.c:437 +#: parser/parse_agg.c:446 msgid "grouping operations are not allowed in window GROUPS" msgstr "операції групування не можна застосовувати у вікні GROUPS" -#: parser/parse_agg.c:450 +#: parser/parse_agg.c:459 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "агрегатні функції не можна застосовувати в умовах MERGE WHEN" -#: parser/parse_agg.c:452 +#: parser/parse_agg.c:461 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "операції групування не можна застосовувати в умовах MERGE WHEN" -#: parser/parse_agg.c:479 +#: parser/parse_agg.c:488 msgid "aggregate functions are not allowed in check constraints" msgstr "агрегатні функції не можна застосовувати в перевірці обмежень" -#: parser/parse_agg.c:481 +#: parser/parse_agg.c:490 msgid "grouping operations are not allowed in check constraints" msgstr "операції групування не можна застосовувати в перевірці обмежень" -#: parser/parse_agg.c:488 +#: parser/parse_agg.c:497 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "агрегатні функції не можна застосовувати у виразах DEFAULT" -#: parser/parse_agg.c:490 +#: parser/parse_agg.c:499 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "операції групування не можна застосовувати у виразах DEFAULT" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:504 msgid "aggregate functions are not allowed in index expressions" msgstr "агрегатні функції не можна застосовувати у виразах індексів" -#: parser/parse_agg.c:497 +#: parser/parse_agg.c:506 msgid "grouping operations are not allowed in index expressions" msgstr "операції групування не можна застосовувати у виразах індексів" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:511 msgid "aggregate functions are not allowed in index predicates" msgstr "агрегатні функції не можна застосовувати в предикатах індексів" -#: parser/parse_agg.c:504 +#: parser/parse_agg.c:513 msgid "grouping operations are not allowed in index predicates" msgstr "операції групування не можна застосовувати в предикатах індексів" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:518 msgid "aggregate functions are not allowed in statistics expressions" msgstr "агрегатні функції не можна застосовувати у виразах статистики" -#: parser/parse_agg.c:511 +#: parser/parse_agg.c:520 msgid "grouping operations are not allowed in statistics expressions" msgstr "операції групування не можна застосовувати у виразах статистики" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:525 msgid "aggregate functions are not allowed in transform expressions" msgstr "агрегатні функції не можна застосовувати у виразах перетворювання" -#: parser/parse_agg.c:518 +#: parser/parse_agg.c:527 msgid "grouping operations are not allowed in transform expressions" msgstr "операції групування не можна застосовувати у виразах перетворювання" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:532 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "агрегатні функції не можна застосовувати в параметрах EXECUTE" -#: parser/parse_agg.c:525 +#: parser/parse_agg.c:534 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "операції групування не можна застосовувати в параметрах EXECUTE" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:539 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "агрегатні функції не можна застосовувати в умовах для тригерів WHEN" -#: parser/parse_agg.c:532 +#: parser/parse_agg.c:541 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "операції групування не можна застосовувати в умовах для тригерів WHEN" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:546 msgid "aggregate functions are not allowed in partition bound" msgstr "агрегатні функції не можна застосовувати в границі секції" -#: parser/parse_agg.c:539 +#: parser/parse_agg.c:548 msgid "grouping operations are not allowed in partition bound" msgstr "операції групування не можна застосовувати в границі секції" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:553 msgid "aggregate functions are not allowed in partition key expressions" msgstr "агрегатні функції не можна застосовувати у виразах ключа секціонування" -#: parser/parse_agg.c:546 +#: parser/parse_agg.c:555 msgid "grouping operations are not allowed in partition key expressions" msgstr "операції групування не можна застосовувати у виразах ключа секціонування" -#: parser/parse_agg.c:552 +#: parser/parse_agg.c:561 msgid "aggregate functions are not allowed in column generation expressions" msgstr "агрегатні функції не можна застосовувати у виразах генерації стовпців" -#: parser/parse_agg.c:554 +#: parser/parse_agg.c:563 msgid "grouping operations are not allowed in column generation expressions" msgstr "операції групування не можна застосовувати у виразах генерації стовпців" -#: parser/parse_agg.c:560 +#: parser/parse_agg.c:569 msgid "aggregate functions are not allowed in CALL arguments" msgstr "агрегатні функції не можна застосовувати в аргументах CALL" -#: parser/parse_agg.c:562 +#: parser/parse_agg.c:571 msgid "grouping operations are not allowed in CALL arguments" msgstr "операції групування не можна застосовувати в аргументах CALL" -#: parser/parse_agg.c:568 +#: parser/parse_agg.c:577 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "агрегатні функції не можна застосовувати в умовах COPY FROM WHERE" -#: parser/parse_agg.c:570 +#: parser/parse_agg.c:579 msgid "grouping operations are not allowed in COPY FROM WHERE conditions" msgstr "операції групування не можна застосовувати в умовах COPY FROM WHERE" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:597 parser/parse_clause.c:1962 +#: parser/parse_agg.c:606 parser/parse_clause.c:1962 #, 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:600 +#: parser/parse_agg.c:609 #, c-format msgid "grouping operations are not allowed in %s" msgstr "операції групування не можна застосовувати в %s" -#: parser/parse_agg.c:701 +#: parser/parse_agg.c:705 parser/parse_agg.c:742 +#, c-format +msgid "outer-level aggregate cannot use a nested CTE" +msgstr "агрегатна функція зовнішнього рівня не може використовувати вкладений CTE" + +#: parser/parse_agg.c:706 parser/parse_agg.c:743 +#, c-format +msgid "CTE \"%s\" is below the aggregate's semantic level." +msgstr "CTE \"%s\" знаходиться нижче семантичного рівня агрегату." + +#: parser/parse_agg.c:728 #, c-format msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments" msgstr "агрегат зовнішнього рівня не може містити змінну нижчого рівня у своїх аргументах" -#: parser/parse_agg.c:779 +#: parser/parse_agg.c:813 #, c-format msgid "aggregate function calls cannot contain set-returning function calls" msgstr "виклики агрегатної функції не можуть містити викликів функції, що повертають множину" -#: parser/parse_agg.c:780 parser/parse_expr.c:1762 parser/parse_expr.c:2245 +#: parser/parse_agg.c:814 parser/parse_expr.c:1763 parser/parse_expr.c:2256 #: parser/parse_func.c:885 #, 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:785 +#: parser/parse_agg.c:819 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "виклики агрегатних функцій не можуть містити виклики віконних функцій" -#: parser/parse_agg.c:864 +#: parser/parse_agg.c:922 msgid "window functions are not allowed in JOIN conditions" msgstr "віконні функції не можна застосовувати в умовах JOIN" -#: parser/parse_agg.c:871 +#: parser/parse_agg.c:929 msgid "window functions are not allowed in functions in FROM" msgstr "віконні функції не можна застосовувати у функціях в FROM" -#: parser/parse_agg.c:877 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in policy expressions" msgstr "віконні функції не можна застосовувати у виразах політики" -#: parser/parse_agg.c:890 +#: parser/parse_agg.c:948 msgid "window functions are not allowed in window definitions" msgstr "віконні функції не можна застосовувати у визначенні вікна" -#: parser/parse_agg.c:901 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "віконні функції не можна застосовувати в умовах MERGE WHEN" -#: parser/parse_agg.c:926 +#: parser/parse_agg.c:984 msgid "window functions are not allowed in check constraints" msgstr "віконні функції не можна застосовувати в перевірках обмежень" -#: parser/parse_agg.c:930 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in DEFAULT expressions" msgstr "віконні функції не можна застосовувати у виразах DEFAULT" -#: parser/parse_agg.c:933 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in index expressions" msgstr "віконні функції не можна застосовувати у виразах індексів" -#: parser/parse_agg.c:936 +#: parser/parse_agg.c:994 msgid "window functions are not allowed in statistics expressions" msgstr "віконні функції не можна застосовувати у виразах статистики" -#: parser/parse_agg.c:939 +#: parser/parse_agg.c:997 msgid "window functions are not allowed in index predicates" msgstr "віконні функції не можна застосовувати в предикатах індексів" -#: parser/parse_agg.c:942 +#: parser/parse_agg.c:1000 msgid "window functions are not allowed in transform expressions" msgstr "віконні функції не можна застосовувати у виразах перетворювання" -#: parser/parse_agg.c:945 +#: parser/parse_agg.c:1003 msgid "window functions are not allowed in EXECUTE parameters" msgstr "віконні функції не можна застосовувати в параметрах EXECUTE" -#: parser/parse_agg.c:948 +#: parser/parse_agg.c:1006 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "віконні функції не можна застосовувати в умовах WHEN для тригерів" -#: parser/parse_agg.c:951 +#: parser/parse_agg.c:1009 msgid "window functions are not allowed in partition bound" msgstr "віконні функції не можна застосовувати в границі секції" -#: parser/parse_agg.c:954 +#: parser/parse_agg.c:1012 msgid "window functions are not allowed in partition key expressions" msgstr "віконні функції не можна застосовувати у виразах ключа секціонування" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:1015 msgid "window functions are not allowed in CALL arguments" msgstr "віконні функції не можна застосовувати в аргументах CALL" -#: parser/parse_agg.c:960 +#: parser/parse_agg.c:1018 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "віконні функції не можна застосовувати в умовах COPY FROM WHERE" -#: parser/parse_agg.c:963 +#: parser/parse_agg.c:1021 msgid "window functions are not allowed in column generation expressions" msgstr "віконні функції не можна застосовувати у виразах генерації стовпців" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_agg.c:986 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1044 parser/parse_clause.c:1971 #, c-format msgid "window functions are not allowed in %s" msgstr "віконні функції не можна застосовувати в %s" -#: parser/parse_agg.c:1020 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1078 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "вікно \"%s\" не існує" -#: parser/parse_agg.c:1108 +#: parser/parse_agg.c:1168 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "забагато наборів групування (максимум 4096)" -#: parser/parse_agg.c:1248 +#: parser/parse_agg.c:1329 #, c-format msgid "aggregate functions are not allowed in a recursive query's recursive term" msgstr "агрегатні функції не дозволені у рекурсивному терміні рекурсивного запиту" -#: parser/parse_agg.c:1441 +#: parser/parse_agg.c:1552 #, c-format msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function" msgstr "стовпець \"%s.%s\" повинен з'являтися у реченні Група BY або використовуватися в агрегатній функції" -#: parser/parse_agg.c:1444 +#: parser/parse_agg.c:1555 #, c-format msgid "Direct arguments of an ordered-set aggregate must use only grouped columns." msgstr "Прямі аргументи сортувального агрегату можуть використовувати лише згруповані стовпці." -#: parser/parse_agg.c:1449 +#: parser/parse_agg.c:1560 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "вкладений запит використовує не згруповані стовпці \"%s.%s\" з зовнішнього запиту" -#: parser/parse_agg.c:1613 +#: parser/parse_agg.c:1725 #, c-format msgid "arguments to GROUPING must be grouping expressions of the associated query level" msgstr "аргументами групування мають бути вирази групування пов'язаного рівня запиту" -#: parser/parse_clause.c:193 +#: parser/parse_clause.c:191 #, c-format msgid "relation \"%s\" cannot be the target of a modifying statement" msgstr "відношення \"%s\" не може бути метою модифікованої інструкції" -#: parser/parse_clause.c:569 parser/parse_clause.c:597 parser/parse_func.c:2553 +#: parser/parse_clause.c:567 parser/parse_clause.c:595 parser/parse_func.c:2553 #, c-format msgid "set-returning functions must appear at top level of FROM" msgstr "функції, що повертають множину, мають з'являтися на вищому рівні FROM" -#: parser/parse_clause.c:609 +#: parser/parse_clause.c:607 #, c-format msgid "multiple column definition lists are not allowed for the same function" msgstr "кілька списків з визначенням стовпців не дозволені для тої самої функції" -#: parser/parse_clause.c:642 +#: parser/parse_clause.c:640 #, c-format msgid "ROWS FROM() with multiple functions cannot have a column definition list" msgstr "ROWS FROM() з декількома функціями не можуть мати список з визначенням стовпців" -#: parser/parse_clause.c:643 +#: parser/parse_clause.c:641 #, c-format msgid "Put a separate column definition list for each function inside ROWS FROM()." msgstr "Укладіть окремі списки з визначенням стовпців для кожної з функцій всередині ROWS FROM()." -#: parser/parse_clause.c:649 +#: parser/parse_clause.c:647 #, c-format msgid "UNNEST() with multiple arguments cannot have a column definition list" msgstr "UNNEST() з кількома аргументами не можуть мати список з визначенням стовпців" -#: parser/parse_clause.c:650 +#: parser/parse_clause.c:648 #, c-format msgid "Use separate UNNEST() calls inside ROWS FROM(), and attach a column definition list to each one." msgstr "Використайте окремі виклики UNNEST() всередині ROWS FROM() і підключіть список з визначенням стовпців до кожного." -#: parser/parse_clause.c:657 +#: parser/parse_clause.c:655 #, c-format msgid "WITH ORDINALITY cannot be used with a column definition list" msgstr "WITH ORDINALITY не можна використовувати з списком з визначенням стовпців" -#: parser/parse_clause.c:658 +#: parser/parse_clause.c:656 #, c-format msgid "Put the column definition list inside ROWS FROM()." msgstr "Помістіть список з визначенням стовпців всередину ROWS FROM()." -#: parser/parse_clause.c:762 parser/parse_jsontable.c:295 +#: parser/parse_clause.c:760 parser/parse_jsontable.c:293 #, c-format msgid "only one FOR ORDINALITY column is allowed" msgstr "FOR ORDINALITY дозволяється лише для одного стовпця" -#: parser/parse_clause.c:823 +#: parser/parse_clause.c:821 #, c-format msgid "column name \"%s\" is not unique" msgstr "ім'я стовпця \"%s\" не є унікальним" -#: parser/parse_clause.c:865 +#: parser/parse_clause.c:863 #, c-format msgid "namespace name \"%s\" is not unique" msgstr "ім'я простору імен \"%s\" не є унікальним" -#: parser/parse_clause.c:875 +#: parser/parse_clause.c:873 #, c-format msgid "only one default namespace is allowed" msgstr "дозволено тільки один простір імен за замовчуванням" -#: parser/parse_clause.c:935 +#: parser/parse_clause.c:933 #, c-format msgid "tablesample method %s does not exist" msgstr "метод %s для отримання вибірки не існує" -#: parser/parse_clause.c:957 +#: parser/parse_clause.c:955 #, c-format msgid "tablesample method %s requires %d argument, not %d" msgid_plural "tablesample method %s requires %d arguments, not %d" @@ -17002,37 +17633,37 @@ msgstr[1] "метод %s для отримання вибірки потребу msgstr[2] "метод %s для отримання вибірки потребує аргументів: %d, отримано: %d" msgstr[3] "метод %s для отримання вибірки потребує аргументів: %d, отримано: %d" -#: parser/parse_clause.c:991 +#: parser/parse_clause.c:989 #, c-format msgid "tablesample method %s does not support REPEATABLE" msgstr "метод %s для отримання вибірки не підтримує REPEATABLE" -#: parser/parse_clause.c:1144 +#: parser/parse_clause.c:1142 #, c-format msgid "TABLESAMPLE clause can only be applied to tables and materialized views" msgstr "Речення TABLESAMPLE можна застосовувати лише до таблиць або матеріалізованих подань" -#: parser/parse_clause.c:1331 +#: parser/parse_clause.c:1329 #, c-format msgid "column name \"%s\" appears more than once in USING clause" msgstr "ім’я стовпця \"%s\" з'являється у реченні USING неодноразово" -#: parser/parse_clause.c:1346 +#: parser/parse_clause.c:1344 #, c-format msgid "common column name \"%s\" appears more than once in left table" msgstr "ім’я спільного стовпця \"%s\" з'являється у таблиці зліва неодноразово" -#: parser/parse_clause.c:1355 +#: parser/parse_clause.c:1353 #, c-format msgid "column \"%s\" specified in USING clause does not exist in left table" msgstr "в таблиці зліва не існує стовпець \"%s\", вказаний в реченні USING" -#: parser/parse_clause.c:1370 +#: parser/parse_clause.c:1368 #, c-format msgid "common column name \"%s\" appears more than once in right table" msgstr "ім’я спільного стовпця \"%s\" з'являється в таблиці справа неодноразово" -#: parser/parse_clause.c:1379 +#: parser/parse_clause.c:1377 #, c-format msgid "column \"%s\" specified in USING clause does not exist in right table" msgstr "в таблиці справа не існує стовпець \"%s\", вказаний в реченні USING" @@ -17171,184 +17802,184 @@ msgstr "оператор %s не є дійсним оператором сорт msgid "Ordering operators must be \"<\" or \">\" members of btree operator families." msgstr "Оператори сортування повинні бути учасниками \"<\" або \">\" сімейств операторів btree." -#: parser/parse_clause.c:3775 +#: parser/parse_clause.c:3778 #, c-format msgid "RANGE with offset PRECEDING/FOLLOWING is not supported for column type %s" msgstr "RANGE зі зсувом PRECEDING/FOLLOWING не підтримується для типу стовпця %s" -#: parser/parse_clause.c:3781 +#: parser/parse_clause.c:3784 #, c-format msgid "RANGE with offset PRECEDING/FOLLOWING is not supported for column type %s and offset type %s" msgstr "RANGE зі зсувом PRECEDING/FOLLOWING не підтримується для типу стовпця %s і типу зсуву %s" -#: parser/parse_clause.c:3784 +#: parser/parse_clause.c:3787 #, c-format msgid "Cast the offset value to an appropriate type." msgstr "Приведіть значення зсуву до потрібного типу." -#: parser/parse_clause.c:3789 +#: parser/parse_clause.c:3792 #, c-format msgid "RANGE with offset PRECEDING/FOLLOWING has multiple interpretations for column type %s and offset type %s" msgstr "RANGE зі зсувом PRECEDING/FOLLOWING має декілька інтерпретацій для типу стовпця %s і типу зсуву %s" -#: parser/parse_clause.c:3792 +#: parser/parse_clause.c:3795 #, c-format msgid "Cast the offset value to the exact intended type." msgstr "Приведіть значення зсуву в точності до призначеного типу." -#: parser/parse_coerce.c:1050 parser/parse_coerce.c:1088 -#: parser/parse_coerce.c:1106 parser/parse_coerce.c:1121 -#: parser/parse_expr.c:2146 parser/parse_expr.c:2754 parser/parse_expr.c:3405 -#: parser/parse_expr.c:3634 parser/parse_target.c:998 +#: parser/parse_coerce.c:1048 parser/parse_coerce.c:1086 +#: parser/parse_coerce.c:1104 parser/parse_coerce.c:1119 +#: parser/parse_expr.c:2155 parser/parse_expr.c:2775 parser/parse_expr.c:3426 +#: parser/parse_expr.c:3655 parser/parse_target.c:1001 #, c-format msgid "cannot cast type %s to %s" msgstr "неможливо транслювати тип %s в %s" -#: parser/parse_coerce.c:1091 +#: parser/parse_coerce.c:1089 #, c-format msgid "Input has too few columns." msgstr "У вхідних даних дуже мало стовпців." -#: parser/parse_coerce.c:1109 +#: parser/parse_coerce.c:1107 #, c-format msgid "Cannot cast type %s to %s in column %d." msgstr "Неможливо транслювати тип %s в %s у стовпці %d." -#: parser/parse_coerce.c:1124 +#: parser/parse_coerce.c:1122 #, c-format msgid "Input has too many columns." msgstr "У вхідних даних дуже багато стовпців." #. translator: first %s is name of a SQL construct, eg WHERE #. translator: first %s is name of a SQL construct, eg LIMIT -#: parser/parse_coerce.c:1179 parser/parse_coerce.c:1227 +#: parser/parse_coerce.c:1177 parser/parse_coerce.c:1225 #, c-format 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:1190 parser/parse_coerce.c:1239 +#: parser/parse_coerce.c:1188 parser/parse_coerce.c:1237 #, c-format msgid "argument of %s must not return a set" msgstr "аргумент конструкції %s не повинен повертати набір" #. translator: first %s is name of a SQL construct, eg CASE -#: parser/parse_coerce.c:1383 +#: parser/parse_coerce.c:1418 #, c-format msgid "%s types %s and %s cannot be matched" msgstr "у конструкції %s типи %s і %s не можуть бути відповідними" -#: parser/parse_coerce.c:1499 +#: parser/parse_coerce.c:1534 #, c-format msgid "argument types %s and %s cannot be matched" msgstr "типи аргументів %s і %s не можуть збігатись" #. translator: first %s is name of a SQL construct, eg CASE -#: parser/parse_coerce.c:1551 +#: parser/parse_coerce.c:1586 #, c-format msgid "%s could not convert type %s to %s" msgstr "у конструкції %s не можна перетворити тип %s в %s" -#: parser/parse_coerce.c:2154 parser/parse_coerce.c:2174 -#: parser/parse_coerce.c:2194 parser/parse_coerce.c:2215 -#: parser/parse_coerce.c:2270 parser/parse_coerce.c:2304 +#: parser/parse_coerce.c:2189 parser/parse_coerce.c:2209 +#: parser/parse_coerce.c:2229 parser/parse_coerce.c:2250 +#: parser/parse_coerce.c:2305 parser/parse_coerce.c:2339 #, c-format msgid "arguments declared \"%s\" are not all alike" msgstr "оголошенні аргументи \"%s\", повинні бути схожими" -#: parser/parse_coerce.c:2249 parser/parse_coerce.c:2362 +#: parser/parse_coerce.c:2284 parser/parse_coerce.c:2397 #: utils/fmgr/funcapi.c:600 #, c-format msgid "argument declared %s is not an array but type %s" msgstr "аргумент, оголошений як %s , є не масивом, а типом %s" -#: parser/parse_coerce.c:2282 parser/parse_coerce.c:2432 +#: parser/parse_coerce.c:2317 parser/parse_coerce.c:2467 #: utils/fmgr/funcapi.c:614 #, c-format msgid "argument declared %s is not a range type but type %s" msgstr "аргумент, оголошений як %s, є не діапазонним типом, а типом %s" -#: parser/parse_coerce.c:2316 parser/parse_coerce.c:2396 -#: parser/parse_coerce.c:2529 utils/fmgr/funcapi.c:632 utils/fmgr/funcapi.c:697 +#: parser/parse_coerce.c:2351 parser/parse_coerce.c:2431 +#: parser/parse_coerce.c:2564 utils/fmgr/funcapi.c:632 utils/fmgr/funcapi.c:697 #, c-format msgid "argument declared %s is not a multirange type but type %s" msgstr "оголошений аргумент %s не є багатодіапазонним типом, а типом %s" -#: parser/parse_coerce.c:2353 +#: parser/parse_coerce.c:2388 #, c-format msgid "cannot determine element type of \"anyarray\" argument" msgstr "не можна визначити тип елемента аргументу \"anyarray\"" -#: parser/parse_coerce.c:2379 parser/parse_coerce.c:2410 -#: parser/parse_coerce.c:2449 parser/parse_coerce.c:2515 +#: parser/parse_coerce.c:2414 parser/parse_coerce.c:2445 +#: parser/parse_coerce.c:2484 parser/parse_coerce.c:2550 #, c-format msgid "argument declared %s is not consistent with argument declared %s" msgstr "аргумент, оголошений як %s, не узгоджується з аргументом, оголошеним як %s" -#: parser/parse_coerce.c:2474 +#: parser/parse_coerce.c:2509 #, c-format msgid "could not determine polymorphic type because input has type %s" msgstr "не вдалося визначити поліморфний тип, тому що вхідні аргументи мають тип %s" -#: parser/parse_coerce.c:2488 +#: parser/parse_coerce.c:2523 #, c-format msgid "type matched to anynonarray is an array type: %s" msgstr "тип, відповідний \"anynonarray\", є масивом: %s" -#: parser/parse_coerce.c:2498 +#: parser/parse_coerce.c:2533 #, c-format msgid "type matched to anyenum is not an enum type: %s" msgstr "тип, відповідний \"anyenum\", не є переліком: %s" -#: parser/parse_coerce.c:2559 +#: parser/parse_coerce.c:2594 #, c-format msgid "arguments of anycompatible family cannot be cast to a common type" msgstr "аргументи сімейства anycompatible не можна привести до спільного типу" -#: parser/parse_coerce.c:2577 parser/parse_coerce.c:2598 -#: parser/parse_coerce.c:2648 parser/parse_coerce.c:2653 -#: parser/parse_coerce.c:2717 parser/parse_coerce.c:2729 +#: parser/parse_coerce.c:2612 parser/parse_coerce.c:2633 +#: parser/parse_coerce.c:2683 parser/parse_coerce.c:2688 +#: parser/parse_coerce.c:2752 parser/parse_coerce.c:2764 #, c-format msgid "could not determine polymorphic type %s because input has type %s" msgstr "не вдалося визначити поліморфний тип %s тому що вхідні дані мають тип %s" -#: parser/parse_coerce.c:2587 +#: parser/parse_coerce.c:2622 #, c-format msgid "anycompatiblerange type %s does not match anycompatible type %s" msgstr "тип anycompatiblerange %s не збігається з типом anycompatible %s" -#: parser/parse_coerce.c:2608 +#: parser/parse_coerce.c:2643 #, c-format msgid "anycompatiblemultirange type %s does not match anycompatible type %s" msgstr "тип anycompatiblemultirange %s не збігається з типом anycompatible %s" -#: parser/parse_coerce.c:2622 +#: parser/parse_coerce.c:2657 #, c-format msgid "type matched to anycompatiblenonarray is an array type: %s" msgstr "тип відповідний до anycompatiblenonarray є масивом: %s" -#: parser/parse_coerce.c:2857 +#: parser/parse_coerce.c:2892 #, c-format msgid "A result of type %s requires at least one input of type anyrange or anymultirange." msgstr "Результат типу %s потребує принаймні одного введення типу anyrange або anymultirange." -#: parser/parse_coerce.c:2874 +#: parser/parse_coerce.c:2909 #, c-format msgid "A result of type %s requires at least one input of type anycompatiblerange or anycompatiblemultirange." msgstr "Результат типу %s потребує принаймні одного введення типу anycompatiblerange або anycompatiblemultirange." -#: parser/parse_coerce.c:2886 +#: parser/parse_coerce.c:2921 #, c-format msgid "A result of type %s requires at least one input of type anyelement, anyarray, anynonarray, anyenum, anyrange, or anymultirange." msgstr "Результат типу %s потребує принаймні одного введення типу anyelement, anyarray, anynonarray, anyenum, anyrange, або anymultirange." -#: parser/parse_coerce.c:2898 +#: parser/parse_coerce.c:2933 #, c-format msgid "A result of type %s requires at least one input of type anycompatible, anycompatiblearray, anycompatiblenonarray, anycompatiblerange, or anycompatiblemultirange." msgstr "Результат типу %s потребує ввести як мінімум один тип anycompatible, anycompatiblearray, anycompatiblenonarray, anycompatiblerange або anycompatiblemultirange." -#: parser/parse_coerce.c:2928 +#: parser/parse_coerce.c:2963 msgid "A result of type internal requires at least one input of type internal." msgstr "Результат внутрішнього типу потребує ввести як мінімум один внутрішній тип." @@ -17394,546 +18025,556 @@ msgstr "рекурсивне посилання на запит \"%s\" не по msgid "recursive reference to query \"%s\" must not appear within EXCEPT" msgstr "рекурсивне посилання на запит \"%s\" не повинне з'являтись в EXCEPT" -#: parser/parse_cte.c:136 +#: parser/parse_cte.c:137 #, c-format msgid "WITH query name \"%s\" specified more than once" msgstr "Ім’я запиту WITH \"%s\" вказано неодноразово" -#: parser/parse_cte.c:308 +#: parser/parse_cte.c:309 #, c-format msgid "could not identify an inequality operator for type %s" msgstr "не вдалося визначити оператора нерівності для типу %s" -#: parser/parse_cte.c:335 +#: parser/parse_cte.c:336 #, c-format msgid "WITH clause containing a data-modifying statement must be at the top level" msgstr "Речення WITH, яке містить оператор, що змінює дані, повинне бути на верхньому рівні" -#: parser/parse_cte.c:384 +#: parser/parse_cte.c:385 #, c-format 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:390 +#: parser/parse_cte.c:391 #, c-format msgid "Cast the output of the non-recursive term to the correct type." msgstr "Приведіть результат нерекурсивної частини до правильного типу." -#: parser/parse_cte.c:395 +#: parser/parse_cte.c:396 #, c-format 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:399 +#: parser/parse_cte.c:400 #, c-format msgid "Use the COLLATE clause to set the collation of the non-recursive term." msgstr "Використайте речення COLLATE, щоб встановити параметри сортування в нерекурсивній частині." -#: parser/parse_cte.c:420 +#: parser/parse_cte.c:421 #, c-format msgid "WITH query is not recursive" msgstr "Запит WITH не є рекурсивним" -#: parser/parse_cte.c:451 +#: parser/parse_cte.c:452 #, c-format msgid "with a SEARCH or CYCLE clause, the left side of the UNION must be a SELECT" msgstr "з реченням з SEARCH або CYCLE, ліва сторона UNION повинна бути SELECT" -#: parser/parse_cte.c:456 +#: parser/parse_cte.c:457 #, c-format msgid "with a SEARCH or CYCLE clause, the right side of the UNION must be a SELECT" msgstr "з реченням з SEARCH або CYCLE, права сторона UNION повинна бути SELECT" -#: parser/parse_cte.c:471 +#: parser/parse_cte.c:472 #, c-format msgid "search column \"%s\" not in WITH query column list" msgstr "пошуковий стовпець \"%s\" відсутній в списку стовпців запиту WITH" -#: parser/parse_cte.c:478 +#: parser/parse_cte.c:479 #, c-format msgid "search column \"%s\" specified more than once" msgstr "пошуковий стовпець \"%s\" вказано більше одного разу" -#: parser/parse_cte.c:487 +#: parser/parse_cte.c:488 #, c-format msgid "search sequence column name \"%s\" already used in WITH query column list" msgstr "назва послідовності пошуку \"%s\" вже використовується у списку стовпців запиту WITH" -#: parser/parse_cte.c:504 +#: parser/parse_cte.c:505 #, c-format msgid "cycle column \"%s\" not in WITH query column list" msgstr "стовпець циклу \"%s\" відсутній в списку стовпців запиту WITH" -#: parser/parse_cte.c:511 +#: parser/parse_cte.c:512 #, c-format msgid "cycle column \"%s\" specified more than once" msgstr "стовпець циклу \"%s\" вказано більше одного разу" -#: parser/parse_cte.c:520 +#: parser/parse_cte.c:521 #, c-format msgid "cycle mark column name \"%s\" already used in WITH query column list" msgstr "назва стовпця позначки циклу \"%s\" вже використовується у списку стовпців запиту WITH" -#: parser/parse_cte.c:527 +#: parser/parse_cte.c:528 #, c-format msgid "cycle path column name \"%s\" already used in WITH query column list" msgstr "назва стовпця циклу шляху \"%s\" вже використовується у списку стовпців запиту WITH" -#: parser/parse_cte.c:535 +#: parser/parse_cte.c:536 #, c-format msgid "cycle mark column name and cycle path column name are the same" msgstr "назва стовпця позначки циклу і назва стовпця циклу шляху однакові" -#: parser/parse_cte.c:545 +#: parser/parse_cte.c:546 #, c-format msgid "search sequence column name and cycle mark column name are the same" msgstr "назва стовпця послідовності пошуку і назва стовпця позначки циклу однакові" -#: parser/parse_cte.c:552 +#: parser/parse_cte.c:553 #, c-format msgid "search sequence column name and cycle path column name are the same" msgstr "назва стовпця послідовності пошуку і назва стовпця циклу шляху однакові" -#: parser/parse_cte.c:636 +#: parser/parse_cte.c:637 #, c-format msgid "WITH query \"%s\" has %d columns available but %d columns specified" msgstr "Запит WITH \"%s\" має %d доступних стовпців, але %d стовпців вказано" -#: parser/parse_cte.c:816 +#: parser/parse_cte.c:882 #, c-format msgid "mutual recursion between WITH items is not implemented" msgstr "взаємна рекурсія між елементами WITH не реалізована" -#: parser/parse_cte.c:868 +#: parser/parse_cte.c:934 #, c-format msgid "recursive query \"%s\" must not contain data-modifying statements" msgstr "рекурсивний запит \"%s\" не повинен містити оператори, які змінюють дані" -#: parser/parse_cte.c:876 +#: parser/parse_cte.c:942 #, c-format msgid "recursive query \"%s\" does not have the form non-recursive-term UNION [ALL] recursive-term" msgstr "рекурсивний запит \"%s\" не має форми (нерекурсивна частина) UNION [ALL] (рекурсивна частина)" -#: parser/parse_cte.c:911 +#: parser/parse_cte.c:977 #, c-format msgid "ORDER BY in a recursive query is not implemented" msgstr "ORDER BY в рекурсивному запиті не реалізовано" -#: parser/parse_cte.c:917 +#: parser/parse_cte.c:983 #, c-format msgid "OFFSET in a recursive query is not implemented" msgstr "OFFSET у рекурсивному запиті не реалізовано" -#: parser/parse_cte.c:923 +#: parser/parse_cte.c:989 #, c-format msgid "LIMIT in a recursive query is not implemented" msgstr "LIMIT у рекурсивному запиті не реалізовано" -#: parser/parse_cte.c:929 +#: parser/parse_cte.c:995 #, c-format msgid "FOR UPDATE/SHARE in a recursive query is not implemented" msgstr "FOR UPDATE/SHARE в рекурсивному запиті не реалізовано" -#: parser/parse_cte.c:1008 +#: parser/parse_cte.c:1074 #, c-format msgid "recursive reference to query \"%s\" must not appear more than once" msgstr "рекурсивне посилання на запит \"%s\" не повинне з'являтись неодноразово" -#: parser/parse_expr.c:313 +#: parser/parse_expr.c:312 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "DEFAULT не допускається в цьому контексті" -#: parser/parse_expr.c:406 parser/parse_relation.c:3691 -#: parser/parse_relation.c:3701 parser/parse_relation.c:3719 -#: parser/parse_relation.c:3726 parser/parse_relation.c:3740 +#: parser/parse_expr.c:405 parser/parse_relation.c:3797 +#: parser/parse_relation.c:3807 parser/parse_relation.c:3825 +#: parser/parse_relation.c:3832 parser/parse_relation.c:3846 #, c-format msgid "column %s.%s does not exist" msgstr "стовпець %s.%s не існує" -#: parser/parse_expr.c:418 +#: parser/parse_expr.c:417 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "стовпець \"%s\" не знайдено в типі даних %s" -#: parser/parse_expr.c:424 +#: parser/parse_expr.c:423 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "не вдалося ідентифікувати стовпець \"%s\" в типі запису" -#: parser/parse_expr.c:430 +#: parser/parse_expr.c:429 #, c-format msgid "column notation .%s applied to type %s, which is not a composite type" msgstr "запис імені стовпця .%s застосований до типу %s, котрий не є складеним типом" -#: parser/parse_expr.c:461 parser/parse_target.c:732 +#: parser/parse_expr.c:460 parser/parse_target.c:735 #, c-format msgid "row expansion via \"*\" is not supported here" msgstr "розширення рядка через \"*\" тут не підтримується" -#: parser/parse_expr.c:584 +#: parser/parse_expr.c:583 msgid "cannot use column reference in DEFAULT expression" msgstr "у виразі DEFAULT не можна використовувати посилання на стовпець" -#: parser/parse_expr.c:587 +#: parser/parse_expr.c:586 msgid "cannot use column reference in partition bound expression" msgstr "у виразі границі секції не можна використовувати посилання на стовпці" -#: parser/parse_expr.c:846 parser/parse_relation.c:833 -#: parser/parse_relation.c:915 parser/parse_target.c:1238 +#: parser/parse_expr.c:845 parser/parse_relation.c:848 +#: parser/parse_relation.c:930 parser/parse_target.c:1241 #, c-format msgid "column reference \"%s\" is ambiguous" msgstr "посилання на стовпець \"%s\" є неоднозначним" -#: parser/parse_expr.c:902 parser/parse_param.c:110 parser/parse_param.c:142 -#: parser/parse_param.c:204 parser/parse_param.c:303 +#: parser/parse_expr.c:901 parser/parse_param.c:111 parser/parse_param.c:143 +#: parser/parse_param.c:205 parser/parse_param.c:304 #, c-format msgid "there is no parameter $%d" msgstr "параметр $%d не існує" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1103 parser/parse_expr.c:3065 +#: parser/parse_expr.c:1102 parser/parse_expr.c:3086 #, c-format msgid "%s requires = operator to yield boolean" -msgstr "" +msgstr "%s потребує, щоб оператор = повертав логічне значення" #. translator: %s is name of a SQL construct, eg NULLIF -#: parser/parse_expr.c:1109 parser/parse_expr.c:3072 +#: parser/parse_expr.c:1108 parser/parse_expr.c:3093 #, c-format msgid "%s must not return a set" msgstr "%s не повинна повертати набір" -#: parser/parse_expr.c:1395 +#: parser/parse_expr.c:1396 #, c-format msgid "MERGE_ACTION() can only be used in the RETURNING list of a MERGE command" -msgstr "" +msgstr "MERGE_ACTION() можна використовувати лише в списку RETURNING для команди MERGE" -#: parser/parse_expr.c:1519 parser/parse_expr.c:1551 +#: parser/parse_expr.c:1520 parser/parse_expr.c:1552 #, c-format msgid "number of columns does not match number of values" msgstr "кількість стовпців не відповідає кількості значень" -#: parser/parse_expr.c:1565 +#: parser/parse_expr.c:1566 #, c-format msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() expression" msgstr "джерелом для елементу UPDATE з декількома стовпцями повинен бути вкладений SELECT або вираз ROW()" #. translator: %s is name of a SQL construct, eg GROUP BY -#: parser/parse_expr.c:1760 parser/parse_expr.c:2243 parser/parse_func.c:2679 +#: parser/parse_expr.c:1761 parser/parse_expr.c:2254 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "функції, повертаючі набори, не дозволяються в %s" -#: parser/parse_expr.c:1824 +#: parser/parse_expr.c:1825 msgid "cannot use subquery in check constraint" msgstr "в обмеженні-перевірці не можна використовувати підзапити" -#: parser/parse_expr.c:1828 +#: parser/parse_expr.c:1829 msgid "cannot use subquery in DEFAULT expression" msgstr "у виразі DEFAULT не можна використовувати підзапити" -#: parser/parse_expr.c:1831 +#: parser/parse_expr.c:1832 msgid "cannot use subquery in index expression" msgstr "в індексному виразі не можна використовувати підзапити" -#: parser/parse_expr.c:1834 +#: parser/parse_expr.c:1835 msgid "cannot use subquery in index predicate" msgstr "в предикаті індексу не можна використовувати підзапити" -#: parser/parse_expr.c:1837 +#: parser/parse_expr.c:1838 msgid "cannot use subquery in statistics expression" msgstr "у виразі статистики не можна використовувати підзапит" -#: parser/parse_expr.c:1840 +#: parser/parse_expr.c:1841 msgid "cannot use subquery in transform expression" msgstr "у виразі перетворення не можна використовувати підзапити" -#: parser/parse_expr.c:1843 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in EXECUTE parameter" msgstr "в параметрі EXECUTE не можна використовувати підзапити" -#: parser/parse_expr.c:1846 +#: parser/parse_expr.c:1847 msgid "cannot use subquery in trigger WHEN condition" msgstr "в умові WHEN для тригеру не можна використовувати підзапити" -#: parser/parse_expr.c:1849 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in partition bound" msgstr "в границі секції не можна використовувати підзапити" -#: parser/parse_expr.c:1852 +#: parser/parse_expr.c:1853 msgid "cannot use subquery in partition key expression" msgstr "у виразі ключа секціонування не можна використовувати підзапити" -#: parser/parse_expr.c:1855 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in CALL argument" msgstr "в аргументі CALL не можна використовувати підзапити" -#: parser/parse_expr.c:1858 +#: parser/parse_expr.c:1859 msgid "cannot use subquery in COPY FROM WHERE condition" msgstr "не можна використовувати підзапити в умові COPY FROM WHERE" -#: parser/parse_expr.c:1861 +#: parser/parse_expr.c:1862 msgid "cannot use subquery in column generation expression" msgstr "у виразі генерації стовпців не можна використовувати підзапити" -#: parser/parse_expr.c:1914 parser/parse_expr.c:3764 +#: parser/parse_expr.c:1915 parser/parse_expr.c:3785 #, c-format msgid "subquery must return only one column" msgstr "підзапит повинен повертати лише один стовпець" -#: parser/parse_expr.c:1985 +#: parser/parse_expr.c:1986 #, c-format msgid "subquery has too many columns" msgstr "підзапит має занадто багато стовпців" -#: parser/parse_expr.c:1990 +#: parser/parse_expr.c:1991 #, c-format msgid "subquery has too few columns" msgstr "підзапит має занадто мало стовпців" -#: parser/parse_expr.c:2086 +#: parser/parse_expr.c:2095 #, c-format msgid "cannot determine type of empty array" msgstr "тип пустого масиву визначити не можна" -#: parser/parse_expr.c:2087 +#: parser/parse_expr.c:2096 #, c-format msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]." msgstr "Приведіть його до бажаного типу явним чином, наприклад ARRAY[]::integer[]." -#: parser/parse_expr.c:2101 +#: parser/parse_expr.c:2110 #, c-format msgid "could not find element type for data type %s" msgstr "не вдалося знайти тип елементу для типу даних %s" -#: parser/parse_expr.c:2184 +#: parser/parse_expr.c:2195 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "ROW вирази можуть мати максимум %d елементів" -#: parser/parse_expr.c:2389 +#: parser/parse_expr.c:2400 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "замість значення XML-атрибуту без імені повинен вказуватись стовпець" -#: parser/parse_expr.c:2390 +#: parser/parse_expr.c:2401 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "замість значення XML-елементу без імені повинен вказуватись стовпець" -#: parser/parse_expr.c:2405 +#: parser/parse_expr.c:2416 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "Ім'я XML-атрибуту \"%s\" з'являється неодноразово" -#: parser/parse_expr.c:2513 +#: parser/parse_expr.c:2524 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "привести результат XMLSERIALIZE до %s не можна" -#: parser/parse_expr.c:2827 parser/parse_expr.c:3023 +#: parser/parse_expr.c:2848 parser/parse_expr.c:3044 #, c-format msgid "unequal number of entries in row expressions" msgstr "неоднакова кількість елементів у виразах рядка" -#: parser/parse_expr.c:2837 +#: parser/parse_expr.c:2858 #, c-format msgid "cannot compare rows of zero length" msgstr "рядки нульової довжини порівнювати не можна" -#: parser/parse_expr.c:2862 +#: parser/parse_expr.c:2883 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "оператор порівняння рядків повинен видавати логічний тип, а не %s" -#: parser/parse_expr.c:2869 +#: parser/parse_expr.c:2890 #, c-format msgid "row comparison operator must not return a set" msgstr "оператор порівняння рядків повинен вертати набір" -#: parser/parse_expr.c:2928 parser/parse_expr.c:2969 +#: parser/parse_expr.c:2949 parser/parse_expr.c:2990 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "не вдалося визначити інтерпретацію оператора порівняння рядків %s" -#: parser/parse_expr.c:2930 +#: parser/parse_expr.c:2951 #, c-format msgid "Row comparison operators must be associated with btree operator families." msgstr "Оператори порівняння рядків повинні бути пов'язанні з сімейством операторів btree." -#: parser/parse_expr.c:2971 +#: parser/parse_expr.c:2992 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Існує декілька рівноцінних кандидатів." -#: parser/parse_expr.c:3306 +#: parser/parse_expr.c:3327 #, c-format msgid "JSON ENCODING clause is only allowed for bytea input type" msgstr "Вираз JSON ENCODING дозволено лише для типу введення bytea" -#: parser/parse_expr.c:3370 +#: parser/parse_expr.c:3391 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" msgstr "використовувати типи, які не є string з неявним виразом FORMAT JSON не можна" -#: parser/parse_expr.c:3371 +#: parser/parse_expr.c:3392 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" msgstr "використовувати типи, які не є string з явним виразом FORMAT JSON не можна" -#: parser/parse_expr.c:3460 +#: parser/parse_expr.c:3481 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "використовувати формат JSON з типами виводу, які не є string не можна" -#: parser/parse_expr.c:3473 +#: parser/parse_expr.c:3494 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "встановити кодування JSON для типів виводу, які не є bytea не можна" -#: parser/parse_expr.c:3478 +#: parser/parse_expr.c:3499 #, c-format msgid "unsupported JSON encoding" msgstr "непідтримуване JSON кодування" -#: parser/parse_expr.c:3479 +#: parser/parse_expr.c:3500 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Підтримується лише кодування UTF8 формату JSON." -#: parser/parse_expr.c:3516 +#: parser/parse_expr.c:3537 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "повернення типів SETOF не підтримується у функціях SQL/JSON" -#: parser/parse_expr.c:3521 +#: parser/parse_expr.c:3542 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" -msgstr "" +msgstr "повернення псевдо-типів не підтримується у функціях SQL/JSON" -#: parser/parse_expr.c:3849 parser/parse_func.c:866 +#: parser/parse_expr.c:3870 parser/parse_func.c:866 #, c-format msgid "aggregate ORDER BY is not implemented for window functions" msgstr "агрегатне речення ORDER BY для віконних функцій не реалізовано" -#: parser/parse_expr.c:4072 +#: parser/parse_expr.c:4093 #, c-format msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types" msgstr "використовувати вираз JSON FORMAT ENCODING для типів введення, які не є bytea не можна" -#: parser/parse_expr.c:4092 +#: parser/parse_expr.c:4113 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "використовувати тип %s в предикаті IS JSON не можна" -#: parser/parse_expr.c:4118 parser/parse_expr.c:4238 +#: parser/parse_expr.c:4139 parser/parse_expr.c:4260 #, c-format -msgid "cannot use RETURNING type %s in %s" -msgstr "не можна використовувати тип RETURNING %s в %s" +msgid "cannot use type %s in RETURNING clause of %s" +msgstr "неможливо використати тип %s в реченні RETURNING %s" -#: parser/parse_expr.c:4167 +#: parser/parse_expr.c:4141 +#, c-format +msgid "Try returning json or jsonb." +msgstr "Спробуйте повернути json або jsonb." + +#: parser/parse_expr.c:4189 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" msgstr "не можна використовувати не строкові типи з пунктом WITH UNIQUE KEYS" -#: parser/parse_expr.c:4241 +#: parser/parse_expr.c:4263 #, c-format msgid "Try returning a string type or bytea." msgstr "Спробуйте повернути тип string або bytea." -#: parser/parse_expr.c:4306 +#: parser/parse_expr.c:4331 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" -msgstr "" +msgstr "не можна вказати FORMAT JSON в реченні RETURNING %s()" -#: parser/parse_expr.c:4319 +#: parser/parse_expr.c:4344 #, c-format msgid "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" -msgstr "" +msgstr "Поведінка SQL/JSON QUOTES не повинна визначатися, коли використовується WITH WRAPPER" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4333 parser/parse_expr.c:4362 parser/parse_expr.c:4393 -#: parser/parse_expr.c:4419 parser/parse_expr.c:4445 -#: parser/parse_jsontable.c:94 +#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 parser/parse_expr.c:4418 +#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 +#: parser/parse_jsontable.c:92 #, c-format msgid "invalid %s behavior" -msgstr "" +msgstr "неприпустима поведінка %s" #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4336 parser/parse_expr.c:4365 +#: parser/parse_expr.c:4361 parser/parse_expr.c:4390 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for %s." -msgstr "" +msgstr "Тільки ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, або DEFAULT вираз дозволений в %s для %s." #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name a SQL/JSON clause (eg. ON EMPTY) #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4343 parser/parse_expr.c:4372 parser/parse_expr.c:4401 -#: parser/parse_expr.c:4429 parser/parse_expr.c:4455 +#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 parser/parse_expr.c:4426 +#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 #, c-format msgid "invalid %s behavior for column \"%s\"" -msgstr "" +msgstr "неприпустима поведінка %s для стовпця \"%s \"" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4346 parser/parse_expr.c:4375 +#: parser/parse_expr.c:4371 parser/parse_expr.c:4400 #, c-format msgid "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is allowed in %s for formatted columns." -msgstr "" +msgstr "Тільки ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, або DEFAULT вираз дозволений в %s для форматованих стовпців." -#: parser/parse_expr.c:4394 +#: parser/parse_expr.c:4419 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." -msgstr "" +msgstr "Тільки ERROR, TRUE, FALSE, або UNKNOWN дозволені в %s для %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4404 +#: parser/parse_expr.c:4429 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." -msgstr "" +msgstr "Тільки ERROR, TRUE, FALSE або UNKNOWN дозволяється в %s для стовпців EXISTS." #. translator: first %s is name of a SQL/JSON clause (eg. ON EMPTY), #. second %s is a SQL/JSON function name (e.g. JSON_QUERY) -#: parser/parse_expr.c:4422 parser/parse_expr.c:4448 +#: parser/parse_expr.c:4447 parser/parse_expr.c:4473 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." -msgstr "" +msgstr "Тільки ERROR, NULL або DEFAULT вираз дозволений в %s для %s." #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4432 parser/parse_expr.c:4458 +#: parser/parse_expr.c:4457 parser/parse_expr.c:4483 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." -msgstr "" +msgstr "Тільки ERROR, NULL або DEFAULT вираз дозволений в %s для скалярних стовпців." -#: parser/parse_expr.c:4488 +#: parser/parse_expr.c:4517 #, c-format msgid "JSON path expression must be of type %s, not of type %s" -msgstr "" +msgstr "вираз шляху JSON повинен бути типом %s, а не %s" -#: parser/parse_expr.c:4706 +#: parser/parse_expr.c:4757 #, c-format msgid "can only specify a constant, non-aggregate function, or operator expression for DEFAULT" -msgstr "" +msgstr "можна вказати лише константу, не агрегатну функцію або вираз операторів для DEFAULT" -#: parser/parse_expr.c:4711 +#: parser/parse_expr.c:4762 #, c-format msgid "DEFAULT expression must not contain column references" -msgstr "" +msgstr "вираз DEFAULT не повинен містити посилання на стовпець" -#: parser/parse_expr.c:4716 +#: parser/parse_expr.c:4767 #, c-format msgid "DEFAULT expression must not return a set" -msgstr "" +msgstr "вираз DEFAULT не повинен повертати набір" -#: parser/parse_expr.c:4792 parser/parse_expr.c:4801 +#: parser/parse_expr.c:4782 +#, c-format +msgid "collation of DEFAULT expression conflicts with RETURNING clause" +msgstr "сортування виразу DEFAULT конфліктує з реченням RETURNING" + +#: parser/parse_expr.c:4861 parser/parse_expr.c:4870 #, c-format msgid "cannot cast behavior expression of type %s to %s" -msgstr "" +msgstr "неможливо привести тип виразу %s до %s" -#: parser/parse_expr.c:4795 +#: parser/parse_expr.c:4864 #, c-format msgid "You will need to explicitly cast the expression to type %s." -msgstr "" +msgstr "Вам необхідно явно привести вираз до типу %s." #: parser/parse_func.c:194 #, c-format @@ -18275,15 +18916,15 @@ msgstr "функції, що повертають множину не можна msgid "set-returning functions are not allowed in column generation expressions" msgstr "функції, що повертають множину не можна застосовувати у виразах генерації стовпців" -#: parser/parse_jsontable.c:95 +#: parser/parse_jsontable.c:93 #, c-format msgid "Only EMPTY [ ARRAY ] or ERROR is allowed in the top-level ON ERROR clause." -msgstr "" +msgstr "Тільки EMPTY [ ARRAY ] або ERROR дозволяється в верхньому рівні речення ON ERROR." -#: parser/parse_jsontable.c:189 parser/parse_jsontable.c:203 +#: parser/parse_jsontable.c:187 parser/parse_jsontable.c:201 #, c-format msgid "duplicate JSON_TABLE column or path name: %s" -msgstr "" +msgstr "дублікат назви стовпця JSON_TABLE або шляху: %s" #: parser/parse_merge.c:129 #, c-format @@ -18360,229 +19001,224 @@ msgstr "op ANY/ALL (масив) вимагає оператора для вид msgid "op ANY/ALL (array) requires operator not to return a set" msgstr "op ANY/ALL (масив) вимагає оператора не для повернення множини" -#: parser/parse_param.c:221 +#: parser/parse_param.c:222 #, c-format msgid "inconsistent types deduced for parameter $%d" msgstr "для параметру $%d виведені неузгоджені типи" -#: parser/parse_param.c:309 tcop/postgres.c:744 +#: parser/parse_param.c:310 tcop/postgres.c:734 #, c-format msgid "could not determine data type of parameter $%d" msgstr "не вдалося визначити тип даних параметра $%d" -#: parser/parse_relation.c:221 +#: parser/parse_relation.c:226 #, c-format msgid "table reference \"%s\" is ambiguous" msgstr "посилання на таблицю \"%s\" неоднозначне" -#: parser/parse_relation.c:265 +#: parser/parse_relation.c:273 #, c-format msgid "table reference %u is ambiguous" msgstr "посилання на таблицю %u неоднозначне" -#: parser/parse_relation.c:465 -#, c-format -msgid "table name \"%s\" specified more than once" -msgstr "ім'я таблиці \"%s\" вказано більше одного разу" - -#: parser/parse_relation.c:494 parser/parse_relation.c:3633 -#: parser/parse_relation.c:3642 +#: parser/parse_relation.c:502 parser/parse_relation.c:3739 +#: parser/parse_relation.c:3748 #, c-format msgid "invalid reference to FROM-clause entry for table \"%s\"" msgstr "в елементі речення FROM неприпустиме посилання на таблицю \"%s\"" -#: parser/parse_relation.c:498 parser/parse_relation.c:3644 +#: parser/parse_relation.c:506 parser/parse_relation.c:3750 #, c-format 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:500 +#: parser/parse_relation.c:508 #, c-format msgid "The combining JOIN type must be INNER or LEFT for a LATERAL reference." msgstr "Для посилання LATERAL тип JOIN повинен бути INNER або LEFT." -#: parser/parse_relation.c:703 +#: parser/parse_relation.c:711 #, c-format msgid "system column \"%s\" reference in check constraint is invalid" msgstr "недопустиме посилання системи стовпців \"%s\" в обмеженні Check" -#: parser/parse_relation.c:712 +#: parser/parse_relation.c:724 #, c-format msgid "cannot use system column \"%s\" in column generation expression" msgstr "використовувати системний стовпець \"%s\" у виразах генерації стовпців, не можна" -#: parser/parse_relation.c:723 +#: parser/parse_relation.c:735 #, c-format msgid "cannot use system column \"%s\" in MERGE WHEN condition" msgstr "неможливо використати симтемний стовпець \"%s\" в умові MERGE WHEN" -#: parser/parse_relation.c:1236 parser/parse_relation.c:1691 -#: parser/parse_relation.c:2384 +#: parser/parse_relation.c:1251 parser/parse_relation.c:1708 +#: parser/parse_relation.c:2402 #, c-format msgid "table \"%s\" has %d columns available but %d columns specified" msgstr "таблиця \"%s\" має %d доступних стовпців, але вказано %d стовпців" -#: parser/parse_relation.c:1445 +#: parser/parse_relation.c:1462 #, c-format msgid "There is a WITH item named \"%s\", but it cannot be referenced from this part of the query." msgstr "Існує WITH елемент \"%s\" але на нього не можна посилатися з цієї частини запиту." -#: parser/parse_relation.c:1447 +#: parser/parse_relation.c:1464 #, c-format msgid "Use WITH RECURSIVE, or re-order the WITH items to remove forward references." msgstr "Використовувати WITH RECURSIVE, або перевпорядкувати елементи WITH, щоб видалити попередні посилання." -#: parser/parse_relation.c:1833 +#: parser/parse_relation.c:1850 #, c-format msgid "a column definition list is redundant for a function with OUT parameters" msgstr "список з визначенням стовпців не потрібен для функції з параметрами OUT" -#: parser/parse_relation.c:1839 +#: parser/parse_relation.c:1856 #, c-format msgid "a column definition list is redundant for a function returning a named composite type" msgstr "список з визначенням стовпців не потрібен для функції, яка повертає іменований складений тип" -#: parser/parse_relation.c:1846 +#: parser/parse_relation.c:1863 #, c-format msgid "a column definition list is only allowed for functions returning \"record\"" msgstr "список з визначенням стовпців дозволений лише для функцій, що повертають \"запис\"" -#: parser/parse_relation.c:1857 +#: parser/parse_relation.c:1874 #, c-format msgid "a column definition list is required for functions returning \"record\"" msgstr "список з визначенням стовпців вимагається для функцій, що повертають \"запис\"" -#: parser/parse_relation.c:1894 +#: parser/parse_relation.c:1911 #, c-format msgid "column definition lists can have at most %d entries" msgstr "списки визначень стовпців можуть мати максимум %d елементів" -#: parser/parse_relation.c:1954 +#: parser/parse_relation.c:1971 #, c-format msgid "function \"%s\" in FROM has unsupported return type %s" msgstr "функція \"%s\" у FROM повертає тип, що не підтримується %s" -#: parser/parse_relation.c:1981 parser/parse_relation.c:2066 +#: parser/parse_relation.c:1998 parser/parse_relation.c:2083 #, c-format msgid "functions in FROM can return at most %d columns" msgstr "функції з FROM можуть повертати не більше %d стовпців" -#: parser/parse_relation.c:2096 +#: parser/parse_relation.c:2113 #, c-format msgid "%s function has %d columns available but %d columns specified" msgstr "функція \"%s\" має %d доступних стовпців, але вказано %d стовпців" -#: parser/parse_relation.c:2177 +#: parser/parse_relation.c:2194 #, c-format msgid "VALUES lists \"%s\" have %d columns available but %d columns specified" msgstr "VALUES списки \"%s\" мають %d доступних стовпців, але %d стовпців вказано" -#: parser/parse_relation.c:2242 +#: parser/parse_relation.c:2259 #, c-format msgid "joins can have at most %d columns" msgstr "з'єднання можуть мати максимум %d стовпців" -#: parser/parse_relation.c:2267 +#: parser/parse_relation.c:2284 #, c-format msgid "join expression \"%s\" has %d columns available but %d columns specified" msgstr "вираз з'єднання \"%s\" має %d доступних стовпців, але %d стовпців вказано" -#: parser/parse_relation.c:2357 +#: parser/parse_relation.c:2375 #, c-format msgid "WITH query \"%s\" does not have a RETURNING clause" msgstr "WITH запит \"%s\" не має речення RETURNING" -#: parser/parse_relation.c:3635 +#: parser/parse_relation.c:3741 #, c-format msgid "Perhaps you meant to reference the table alias \"%s\"." msgstr "Можливо, малося на увазі посилання на псевдонім таблиці \"%s\"." -#: parser/parse_relation.c:3647 +#: parser/parse_relation.c:3753 #, c-format msgid "To reference that table, you must mark this subquery with LATERAL." msgstr "Щоб використати цю таблицю, вам потрібно позначити цей підзапит як LATERAL." -#: parser/parse_relation.c:3653 +#: parser/parse_relation.c:3759 #, c-format msgid "missing FROM-clause entry for table \"%s\"" msgstr "таблиця \"%s\" відсутня в реченні FROM" -#: parser/parse_relation.c:3693 +#: parser/parse_relation.c:3799 #, c-format msgid "There are columns named \"%s\", but they are in tables that cannot be referenced from this part of the query." msgstr "Є стовпці з назвою \"%s\", але вони знаходяться в таблицях, на які не можна посилатися з цієї частини запиту." -#: parser/parse_relation.c:3695 +#: parser/parse_relation.c:3801 #, c-format msgid "Try using a table-qualified name." msgstr "Спробуй використати повне ім'я включно з таблицею." -#: parser/parse_relation.c:3703 +#: parser/parse_relation.c:3809 #, c-format msgid "There is a column named \"%s\" in table \"%s\", but it cannot be referenced from this part of the query." msgstr "Є стовпець з іменем \"%s\" в таблиці \"%s\", але на нього не можна посилатись з цієї частини запиту." -#: parser/parse_relation.c:3706 +#: parser/parse_relation.c:3812 #, c-format msgid "To reference that column, you must mark this subquery with LATERAL." msgstr "Щоб використати цей стовпець, вам потрібно позначити цей підзапит як LATERAL." -#: parser/parse_relation.c:3708 +#: parser/parse_relation.c:3814 #, c-format msgid "To reference that column, you must use a table-qualified name." msgstr "Щоб посилатися на цей стовпець, ви повинні використовувати повне ім'я включно з таблицею." -#: parser/parse_relation.c:3728 +#: parser/parse_relation.c:3834 #, c-format msgid "Perhaps you meant to reference the column \"%s.%s\"." msgstr "Можливо, передбачалось посилання на стовпець \"%s.%s\"." -#: parser/parse_relation.c:3742 +#: parser/parse_relation.c:3848 #, c-format msgid "Perhaps you meant to reference the column \"%s.%s\" or the column \"%s.%s\"." msgstr "Можливо, передбачалось посилання на стовпець \"%s.%s\" або стовпець \"%s.%s\"." -#: parser/parse_target.c:480 parser/parse_target.c:795 +#: parser/parse_target.c:483 parser/parse_target.c:798 #, c-format msgid "cannot assign to system column \"%s\"" msgstr "призначити значення системному стовпцю \"%s\" не можна" -#: parser/parse_target.c:508 +#: parser/parse_target.c:511 #, c-format msgid "cannot set an array element to DEFAULT" msgstr "елементу масива не можна встановити значення DEFAULT" -#: parser/parse_target.c:513 +#: parser/parse_target.c:516 #, c-format msgid "cannot set a subfield to DEFAULT" msgstr "підполю не можна встановити значення DEFAULT" -#: parser/parse_target.c:587 +#: parser/parse_target.c:590 #, c-format msgid "column \"%s\" is of type %s but expression is of type %s" msgstr "стовпець \"%s\" має тип %s, а вираз %s" -#: parser/parse_target.c:779 +#: parser/parse_target.c:782 #, c-format msgid "cannot assign to field \"%s\" of column \"%s\" because its type %s is not a composite type" msgstr "призначити значення полю \"%s\" стовпця \"%s\" не можна, тому, що тип %s не є складеним типом" -#: parser/parse_target.c:788 +#: parser/parse_target.c:791 #, c-format msgid "cannot assign to field \"%s\" of column \"%s\" because there is no such column in data type %s" msgstr "призначити значення полю \"%s\" стовпця \"%s\" не можна, тому, що в типі даних %s немає такого стовпця" -#: parser/parse_target.c:877 +#: parser/parse_target.c:880 #, c-format msgid "subscripted assignment to \"%s\" requires type %s but expression is of type %s" msgstr "індексоване присвоєння \"%s\" вимагає тип %s, але вираз має тип %s" -#: parser/parse_target.c:887 +#: parser/parse_target.c:890 #, c-format msgid "subfield \"%s\" is of type %s but expression is of type %s" msgstr "підполе \"%s\" має тип %s, але вираз має тип %s" -#: parser/parse_target.c:1327 +#: parser/parse_target.c:1330 #, c-format msgid "SELECT * with no tables specified is not valid" msgstr "SELECT * повинен посилатись на таблиці" @@ -18602,8 +19238,8 @@ msgstr "неправильне посилання %%TYPE (занадто баг msgid "type reference %s converted to %s" msgstr "посилання на тип %s перетворене на тип %s" -#: parser/parse_type.c:278 parser/parse_type.c:813 utils/cache/typcache.c:397 -#: utils/cache/typcache.c:452 +#: parser/parse_type.c:278 parser/parse_type.c:813 utils/cache/typcache.c:478 +#: utils/cache/typcache.c:533 #, c-format msgid "type \"%s\" is only a shell" msgstr "тип \"%s\" є лише оболонкою" @@ -18623,330 +19259,360 @@ msgstr "модифікатором типу повинна бути звичай msgid "invalid type name \"%s\"" msgstr "невірне ім'я типу \"%s\"" -#: parser/parse_utilcmd.c:263 +#: parser/parse_utilcmd.c:265 #, c-format msgid "cannot create partitioned table as inheritance child" msgstr "створити секціоновану таблицю в якості нащадка не можна" -#: parser/parse_utilcmd.c:475 +#: parser/parse_utilcmd.c:504 #, c-format msgid "cannot set logged status of a temporary sequence" -msgstr "" +msgstr "неможливо встановити статус журналювання тимчасової послідовності" -#: parser/parse_utilcmd.c:611 +#: parser/parse_utilcmd.c:642 #, c-format msgid "array of serial is not implemented" msgstr "масиви послідовності не реалізовані" -#: parser/parse_utilcmd.c:690 parser/parse_utilcmd.c:702 -#: parser/parse_utilcmd.c:761 +#: parser/parse_utilcmd.c:747 parser/parse_utilcmd.c:765 +#: parser/parse_utilcmd.c:873 parser/parse_utilcmd.c:906 #, c-format msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" msgstr "несумісні оголошення NULL/NOT NULL для стовпця \"%s\" таблиці \"%s\"" -#: parser/parse_utilcmd.c:714 +#: parser/parse_utilcmd.c:759 parser/parse_utilcmd.c:1077 +#, c-format +msgid "not-null constraints on partitioned tables cannot be NO INHERIT" +msgstr "обмеження not-null на секціонованих таблицях не можуть бути NO INHERIT" + +#: parser/parse_utilcmd.c:773 parser/parse_utilcmd.c:808 +#, c-format +msgid "conflicting NO INHERIT declarations for not-null constraints on column \"%s\"" +msgstr "конфліктуючі оголошення NO INHERIT для обмежень not-null на стовпці \"%s\"" + +#: parser/parse_utilcmd.c:821 #, c-format msgid "multiple default values specified for column \"%s\" of table \"%s\"" msgstr "для стовпця \"%s\" таблиці \"%s\" вказано декілька значень за замовчуванням" -#: parser/parse_utilcmd.c:731 +#: parser/parse_utilcmd.c:838 #, c-format msgid "identity columns are not supported on typed tables" msgstr "ідентифікаційні стовпці не підтримуються в типізованих таблицях" -#: parser/parse_utilcmd.c:735 +#: parser/parse_utilcmd.c:842 #, c-format msgid "identity columns are not supported on partitions" msgstr "ідентифікаційні стовпці не підтримуються з секціями" -#: parser/parse_utilcmd.c:744 +#: parser/parse_utilcmd.c:851 #, c-format msgid "multiple identity specifications for column \"%s\" of table \"%s\"" msgstr "для стовпця \"%s\" таблиці \"%s\" властивість identity вказана неодноразово" -#: parser/parse_utilcmd.c:774 +#: parser/parse_utilcmd.c:884 #, c-format msgid "generated columns are not supported on typed tables" msgstr "згенеровані стовпці не підтримуються в типізованих таблицях" -#: parser/parse_utilcmd.c:778 +#: parser/parse_utilcmd.c:888 #, c-format msgid "multiple generation clauses specified for column \"%s\" of table \"%s\"" msgstr "для стовпця \"%s\" таблиці \"%s\" вказано декілька речень генерації" -#: parser/parse_utilcmd.c:796 parser/parse_utilcmd.c:911 +#: parser/parse_utilcmd.c:915 parser/parse_utilcmd.c:1043 #, c-format msgid "primary key constraints are not supported on foreign tables" msgstr "обмеження первинного ключа для сторонніх таблиць не підтримуються" -#: parser/parse_utilcmd.c:805 parser/parse_utilcmd.c:921 +#: parser/parse_utilcmd.c:924 parser/parse_utilcmd.c:1053 #, c-format msgid "unique constraints are not supported on foreign tables" msgstr "обмеження унікальності для сторонніх таблиць не підтримуються" -#: parser/parse_utilcmd.c:850 +#: parser/parse_utilcmd.c:971 #, c-format msgid "both default and identity specified for column \"%s\" of table \"%s\"" msgstr "для стовпця \"%s\" таблиці \"%s\" вказано значення за замовчуванням і властивість identity" -#: parser/parse_utilcmd.c:858 +#: parser/parse_utilcmd.c:979 #, c-format msgid "both default and generation expression specified for column \"%s\" of table \"%s\"" msgstr "для стовпця \"%s\" таблиці \"%s\" вказано вираз за замовчуванням і вираз генерації" -#: parser/parse_utilcmd.c:866 +#: parser/parse_utilcmd.c:987 #, c-format msgid "both identity and generation expression specified for column \"%s\" of table \"%s\"" msgstr "для стовпця \"%s\" таблиці \"%s\" вказано вираз ідентичності і вираз генерації" -#: parser/parse_utilcmd.c:931 +#: parser/parse_utilcmd.c:1063 #, c-format msgid "exclusion constraints are not supported on foreign tables" msgstr "обмеження-виключення для сторонніх таблиць не підтримуються" -#: parser/parse_utilcmd.c:996 -#, c-format -msgid "LIKE is not supported for creating foreign tables" -msgstr "LIKE не підтримується при створенні сторонніх таблиць" - -#: parser/parse_utilcmd.c:1009 +#: parser/parse_utilcmd.c:1149 #, c-format msgid "relation \"%s\" is invalid in LIKE clause" msgstr "невірше відношення \"%s\" в реченні LIKE" -#: parser/parse_utilcmd.c:1736 parser/parse_utilcmd.c:1844 +#: parser/parse_utilcmd.c:1917 parser/parse_utilcmd.c:2025 #, c-format msgid "Index \"%s\" contains a whole-row table reference." msgstr "Індекс \"%s\" містить посилання на таблицю на весь рядок." -#: parser/parse_utilcmd.c:2242 +#: parser/parse_utilcmd.c:2419 #, c-format msgid "cannot use an existing index in CREATE TABLE" msgstr "у CREATE TABLE не можна використовувати існуючий індекс" -#: parser/parse_utilcmd.c:2262 +#: parser/parse_utilcmd.c:2439 #, c-format msgid "index \"%s\" is already associated with a constraint" msgstr "індекс \"%s\" вже пов'язаний з обмеженням" -#: parser/parse_utilcmd.c:2283 +#: parser/parse_utilcmd.c:2465 #, c-format msgid "\"%s\" is not a unique index" msgstr "\"%s\" не є унікальним індексом" -#: parser/parse_utilcmd.c:2284 parser/parse_utilcmd.c:2291 -#: parser/parse_utilcmd.c:2298 parser/parse_utilcmd.c:2375 +#: parser/parse_utilcmd.c:2466 parser/parse_utilcmd.c:2473 +#: parser/parse_utilcmd.c:2480 parser/parse_utilcmd.c:2556 #, c-format msgid "Cannot create a primary key or unique constraint using such an index." msgstr "Створити первинний ключ або обмеження унікальності, використовуючи такий індекс, не можна." -#: parser/parse_utilcmd.c:2290 +#: parser/parse_utilcmd.c:2472 #, c-format msgid "index \"%s\" contains expressions" msgstr "індекс \"%s\" містить вирази" -#: parser/parse_utilcmd.c:2297 +#: parser/parse_utilcmd.c:2479 #, c-format msgid "\"%s\" is a partial index" msgstr "\"%s\" є частковим індексом" -#: parser/parse_utilcmd.c:2309 +#: parser/parse_utilcmd.c:2491 #, c-format msgid "\"%s\" is a deferrable index" msgstr "\"%s\" є індексом, що відкладається" -#: parser/parse_utilcmd.c:2310 +#: parser/parse_utilcmd.c:2492 #, c-format msgid "Cannot create a non-deferrable constraint using a deferrable index." msgstr "Створити обмеження, що не відкладається, використовуючи індекс, що відкладається, не можна." -#: parser/parse_utilcmd.c:2374 +#: parser/parse_utilcmd.c:2555 #, c-format msgid "index \"%s\" column number %d does not have default sorting behavior" msgstr "індекс \"%s\" номер стовпця %d не має поведінки сортування за замовчуванням" -#: parser/parse_utilcmd.c:2531 +#: parser/parse_utilcmd.c:2747 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "стовпець \"%s\" з'являється двічі в обмеженні первинного ключа" -#: parser/parse_utilcmd.c:2537 +#: parser/parse_utilcmd.c:2753 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "стовпець \"%s\" з'являється двічі в обмеженні унікальності" -#: parser/parse_utilcmd.c:2871 +#: parser/parse_utilcmd.c:2798 +#, c-format +msgid "column \"%s\" in WITHOUT OVERLAPS is not a range or multirange type" +msgstr "стовпець \"%s\" у WITHOUT OVERLAPS не є типом range або multirange" + +#: parser/parse_utilcmd.c:2826 +#, c-format +msgid "constraint using WITHOUT OVERLAPS needs at least two columns" +msgstr "обмеження з використанням WITHOUT OVERLAPS потребує щонайменше двох стовпців" + +#: parser/parse_utilcmd.c:3123 #, c-format msgid "index expressions and predicates can refer only to the table being indexed" msgstr "індекс-вирази й предикати можуть посилатись лише на індексовану таблицю" -#: parser/parse_utilcmd.c:2943 +#: parser/parse_utilcmd.c:3195 #, c-format msgid "statistics expressions can refer only to the table being referenced" msgstr "вирази статистики можуть посилатися лише на таблицю, для якої збирається статистика" -#: parser/parse_utilcmd.c:2986 +#: parser/parse_utilcmd.c:3238 #, c-format msgid "rules on materialized views are not supported" msgstr "правила для матеріалізованих подань не підтримуються" -#: parser/parse_utilcmd.c:3046 +#: parser/parse_utilcmd.c:3298 #, c-format msgid "rule WHERE condition cannot contain references to other relations" msgstr "в умовах WHERE правила не можуть містити посилання на інші зв'язки" -#: parser/parse_utilcmd.c:3118 +#: parser/parse_utilcmd.c:3370 #, c-format msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE actions" msgstr "правила з умовами WHERE можуть мати лише дії SELECT, INSERT, UPDATE або DELETE" -#: parser/parse_utilcmd.c:3136 parser/parse_utilcmd.c:3237 -#: rewrite/rewriteHandler.c:538 rewrite/rewriteManip.c:1095 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 +#: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1187 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "умовні оператори UNION/INTERSECT/EXCEPT не реалізовані" -#: parser/parse_utilcmd.c:3154 +#: parser/parse_utilcmd.c:3406 #, c-format msgid "ON SELECT rule cannot use OLD" msgstr "у правилі ON SELECT не можна використовувати OLD" -#: parser/parse_utilcmd.c:3158 +#: parser/parse_utilcmd.c:3410 #, c-format msgid "ON SELECT rule cannot use NEW" msgstr "у правилі ON SELECT не можна використовувати NEW" -#: parser/parse_utilcmd.c:3167 +#: parser/parse_utilcmd.c:3419 #, c-format msgid "ON INSERT rule cannot use OLD" msgstr "у правилі ON INSERT не можна використовувати OLD" -#: parser/parse_utilcmd.c:3173 +#: parser/parse_utilcmd.c:3425 #, c-format msgid "ON DELETE rule cannot use NEW" msgstr "у правилі ON DELETE не можна використовувати NEW" -#: parser/parse_utilcmd.c:3201 +#: parser/parse_utilcmd.c:3453 #, c-format msgid "cannot refer to OLD within WITH query" msgstr "у запиті WITH не можна посилатися на OLD" -#: parser/parse_utilcmd.c:3208 +#: parser/parse_utilcmd.c:3460 #, c-format msgid "cannot refer to NEW within WITH query" msgstr "у запиті WITH не можна посилатися на NEW" -#: parser/parse_utilcmd.c:3664 +#: parser/parse_utilcmd.c:3918 #, c-format msgid "misplaced DEFERRABLE clause" msgstr "речення DEFERRABLE розташовано неправильно" -#: parser/parse_utilcmd.c:3669 parser/parse_utilcmd.c:3684 +#: parser/parse_utilcmd.c:3923 parser/parse_utilcmd.c:3938 #, c-format msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed" msgstr "декілька речень DEFERRABLE/NOT DEFERRABLE не допускаються" -#: parser/parse_utilcmd.c:3679 +#: parser/parse_utilcmd.c:3933 #, c-format msgid "misplaced NOT DEFERRABLE clause" msgstr "речення NOT DEFERRABLE розташовано неправильно" -#: parser/parse_utilcmd.c:3692 parser/parse_utilcmd.c:3718 gram.y:6114 +#: parser/parse_utilcmd.c:3946 parser/parse_utilcmd.c:3972 gram.y:6229 #, c-format msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE" msgstr "обмеження, оголошене як INITIALLY DEFERRED, повинно бути оголошене як DEFERRABLE" -#: parser/parse_utilcmd.c:3700 +#: parser/parse_utilcmd.c:3954 #, c-format msgid "misplaced INITIALLY DEFERRED clause" msgstr "речення INITIALLY DEFERRED розташовано неправильно" -#: parser/parse_utilcmd.c:3705 parser/parse_utilcmd.c:3731 +#: parser/parse_utilcmd.c:3959 parser/parse_utilcmd.c:3985 #, c-format msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed" msgstr "декілька речень INITIALLY IMMEDIATE/DEFERRED не допускаються" -#: parser/parse_utilcmd.c:3726 +#: parser/parse_utilcmd.c:3980 #, c-format msgid "misplaced INITIALLY IMMEDIATE clause" msgstr "речення INITIALLY IMMEDIATE розташовано неправильно" -#: parser/parse_utilcmd.c:3919 +#: parser/parse_utilcmd.c:3997 +#, c-format +msgid "misplaced ENFORCED clause" +msgstr "невірно розміщене речення ENFORCED" + +#: parser/parse_utilcmd.c:4002 parser/parse_utilcmd.c:4019 +#, c-format +msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" +msgstr "кілька речень ENFORCED/NOT ENFORCED не дозволено" + +#: parser/parse_utilcmd.c:4014 +#, c-format +msgid "misplaced NOT ENFORCED clause" +msgstr "невірно розміщене речення NOT ENFORCED" + +#: parser/parse_utilcmd.c:4212 #, c-format msgid "CREATE specifies a schema (%s) different from the one being created (%s)" msgstr "В CREATE вказана схема (%s), яка відрізняється від створюваної (%s)" -#: parser/parse_utilcmd.c:3954 +#: parser/parse_utilcmd.c:4247 #, c-format msgid "\"%s\" is not a partitioned table" msgstr "\"%s\" не є секціонованою таблицею" -#: parser/parse_utilcmd.c:3961 +#: parser/parse_utilcmd.c:4254 #, c-format msgid "table \"%s\" is not partitioned" msgstr "таблиця \"%s\" не є секційною" -#: parser/parse_utilcmd.c:3968 +#: parser/parse_utilcmd.c:4261 #, c-format msgid "index \"%s\" is not partitioned" msgstr "індекс \"%s\" не є секціонованим" -#: parser/parse_utilcmd.c:4008 +#: parser/parse_utilcmd.c:4301 #, c-format msgid "a hash-partitioned table may not have a default partition" msgstr "у геш-секціонованій таблиці не може бути розділу за замовчуванням" -#: parser/parse_utilcmd.c:4025 +#: parser/parse_utilcmd.c:4318 #, c-format msgid "invalid bound specification for a hash partition" msgstr "неприпустима вказівка границі для геш-секції" -#: parser/parse_utilcmd.c:4031 partitioning/partbounds.c:4802 +#: parser/parse_utilcmd.c:4324 partitioning/partbounds.c:4802 #, c-format msgid "modulus for hash partition must be an integer value greater than zero" -msgstr "модуль для хеш-секції повинен бути цілим числом більшим за нуль" +msgstr "модуль для хеш-секції повинен бути цілим числом більше за нуль" -#: parser/parse_utilcmd.c:4038 partitioning/partbounds.c:4810 +#: parser/parse_utilcmd.c:4331 partitioning/partbounds.c:4810 #, c-format msgid "remainder for hash partition must be less than modulus" msgstr "залишок для геш-секції повинен бути меньшим, ніж модуль" -#: parser/parse_utilcmd.c:4051 +#: parser/parse_utilcmd.c:4344 #, c-format msgid "invalid bound specification for a list partition" msgstr "нерипустима вказівка границі для секції по списку" -#: parser/parse_utilcmd.c:4104 +#: parser/parse_utilcmd.c:4397 #, c-format msgid "invalid bound specification for a range partition" msgstr "неприпустима вказівка границі для секції діапазону" -#: parser/parse_utilcmd.c:4110 +#: parser/parse_utilcmd.c:4403 #, c-format msgid "FROM must specify exactly one value per partitioning column" msgstr "В FROM повинно вказуватися лише одне значення для стовпця секціонування" -#: parser/parse_utilcmd.c:4114 +#: parser/parse_utilcmd.c:4407 #, c-format msgid "TO must specify exactly one value per partitioning column" msgstr "В TO повинно вказуватися лише одне значення для стовпця секціонування" -#: parser/parse_utilcmd.c:4228 +#: parser/parse_utilcmd.c:4521 #, c-format msgid "cannot specify NULL in range bound" msgstr "вказати NULL в діапазоні границі не можна" -#: parser/parse_utilcmd.c:4277 +#: parser/parse_utilcmd.c:4570 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "за кожною границею MAXVALUE повинні бути лише границі MAXVALUE" -#: parser/parse_utilcmd.c:4284 +#: parser/parse_utilcmd.c:4577 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "за кожною границею MINVALUE повинні бути лише границі MINVALUE" -#: parser/parse_utilcmd.c:4327 +#: parser/parse_utilcmd.c:4620 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "вказане значення не можна привести до типу %s для стовпця \"%s\"" @@ -18959,12 +19625,12 @@ msgstr "UESCAPE повинен відстежуватись простим лі msgid "invalid Unicode escape character" msgstr "неприпустимий символ спеціального коду Unicode" -#: parser/parser.c:347 scan.l:1393 +#: parser/parser.c:347 scan.l:1385 #, c-format msgid "invalid Unicode escape value" msgstr "неприпустиме значення спеціального коду Unicode" -#: parser/parser.c:494 utils/adt/varlena.c:6640 scan.l:716 +#: parser/parser.c:494 utils/adt/varlena.c:6853 scan.l:702 #, c-format msgid "invalid Unicode escape" msgstr "неприпустимий спеціальний код Unicode" @@ -18974,8 +19640,8 @@ msgstr "неприпустимий спеціальний код Unicode" msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "Спеціальні символи Unicode повинні бути \\XXXX або \\+XXXXXX." -#: parser/parser.c:523 utils/adt/varlena.c:6665 scan.l:677 scan.l:693 -#: scan.l:709 +#: parser/parser.c:523 utils/adt/varlena.c:6878 scan.l:663 scan.l:679 +#: scan.l:695 #, c-format msgid "invalid Unicode surrogate pair" msgstr "неприпустима сурогатна пара Unicode" @@ -19029,7 +19695,7 @@ msgstr "пропущено сканування зовнішньої табли #: partitioning/partbounds.c:4806 #, c-format msgid "remainder for hash partition must be an integer value greater than or equal to zero" -msgstr "залишок для хеш-секції повинен бути цілим числом більшим або рівним нулю" +msgstr "залишок для хеш-секції повинен бути цілим числом більше або дорівнювати нулю" #: partitioning/partbounds.c:4830 #, c-format @@ -19052,7 +19718,7 @@ msgid "column %d of the partition key has type \"%s\", but supplied value is of msgstr "стовпець %d ключа секціонування має тип \"%s\", але для нього вказано значення типу \"%s\"" #: port/pg_sema.c:209 port/pg_shmem.c:717 port/posix_sema.c:209 -#: port/sysv_sema.c:323 port/sysv_shmem.c:717 +#: port/sysv_sema.c:343 port/sysv_shmem.c:717 #, c-format msgid "could not stat data directory \"%s\": %m" msgstr "не вдалося встановити дані каталогу \"%s\": %m" @@ -19091,7 +19757,7 @@ msgstr "Ця помилка НЕ означає, що на диску немає #: port/pg_shmem.c:584 port/sysv_shmem.c:584 port/win32_shmem.c:646 #, c-format msgid "\"huge_page_size\" must be 0 on this platform." -msgstr "" +msgstr "\"huge_page_size\" повинен бути 0 на цій платформі." #: port/pg_shmem.c:655 port/sysv_shmem.c:655 #, c-format @@ -19101,7 +19767,7 @@ msgstr "не вдалося показати анонімну спільну п #: port/pg_shmem.c:657 port/sysv_shmem.c:657 #, 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 "" +msgstr "Ця помилка зазвичай означає, що запит PostgreSQL для сегменту спільної пам'яті перевищує об'єм доступної фізичної або віртуальної пам'яті або гігантських сторінок. Щоб зменшити розмір запиту (поточний: %zu байтів), зменшіть використання спільної пам'яті PostgreSQL, можливо зменшив \"shared_buffers\" або \"max_connections\"." #: port/pg_shmem.c:725 port/sysv_shmem.c:725 #, c-format @@ -19111,35 +19777,36 @@ msgstr "величезні сторінки на цій плтаформі не #: port/pg_shmem.c:732 port/sysv_shmem.c:732 #, c-format msgid "huge pages not supported with the current \"shared_memory_type\" setting" -msgstr "" +msgstr "величезні сторінки не підтримуються з поточним параметром \"shared_memory_type\"" -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1347 +#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1407 #, c-format msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use" msgstr "раніше виділений блок спільної пам'яті (ключ %lu, ідентифікатор %lu) все ще використовується" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1349 +#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1409 #, c-format msgid "Terminate any old server processes associated with data directory \"%s\"." msgstr "Припинити будь-які старі серверні процеси, пов'язані з каталогом даних \"%s\"." -#: port/sysv_sema.c:120 +#: port/sysv_sema.c:135 #, c-format msgid "could not create semaphores: %m" msgstr "не вдалося створити семафори: %m" -#: port/sysv_sema.c:121 +#: port/sysv_sema.c:136 #, c-format msgid "Failed system call was semget(%lu, %d, 0%o)." msgstr "Помилка системного виклику semget(%lu, %d, 0%o)." -#: port/sysv_sema.c:125 +#: port/sysv_sema.c:140 #, 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 "" +msgstr "Ця помилка НЕ означає, що на диску немає місця. Ймовірніше за все перевищено ліміт числа встановлених семафорів (SEMMNI), або загального числа семафорів (SEMMNS) в системі. Вам потрібно збільшити відповідний параметр ядра. Інший спосіб - зменшити споживання PostgreSQL в семафорах, зменшивши параметр \"max_connections\".\n" +"Більше інформації про налаштування вашої системи для PostgreSQL міститься в інструкції PostgreSQL." -#: port/sysv_sema.c:155 +#: port/sysv_sema.c:170 #, 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." @@ -19264,87 +19931,107 @@ msgstr "Помилка в системному виклику DuplicateHandle." msgid "Failed system call was MapViewOfFileEx." msgstr "Помилка в системному виклику MapViewOfFileEx." -#: postmaster/autovacuum.c:686 +#: postmaster/autovacuum.c:693 #, c-format msgid "autovacuum worker took too long to start; canceled" msgstr "старт процеса автовакуума зайняв забагато часу; скасовано" -#: postmaster/autovacuum.c:2199 +#: postmaster/autovacuum.c:2232 #, c-format msgid "autovacuum: dropping orphan temp table \"%s.%s.%s\"" msgstr "автоочистка: видалення застарілої тимчасової таблиці \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2435 +#: postmaster/autovacuum.c:2475 #, c-format msgid "automatic vacuum of table \"%s.%s.%s\"" msgstr "автоматична очистка таблиці \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2438 +#: postmaster/autovacuum.c:2478 #, c-format msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "автоматичний аналіз таблиці \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2632 +#: postmaster/autovacuum.c:2677 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "обробка робочого введення для відношення \"%s.%s.%s\"" -#: postmaster/autovacuum.c:3250 +#: postmaster/autovacuum.c:3348 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "автоочистку не запущено через неправильну конфігурацію" -#: postmaster/autovacuum.c:3251 +#: postmaster/autovacuum.c:3349 #, c-format msgid "Enable the \"track_counts\" option." msgstr "Активувати параметр \"track_counts\"." +#: postmaster/autovacuum.c:3471 +#, c-format +msgid "\"autovacuum_max_workers\" (%d) should be less than or equal to \"autovacuum_worker_slots\" (%d)" +msgstr "\"autovacuum_max_workers\" (%d) має бути меншим або рівним \"autovacuum_worker_slots\" (%d)" + +#: postmaster/autovacuum.c:3473 +#, c-format +msgid "The server will only start up to \"autovacuum_worker_slots\" (%d) autovacuum workers at a given time." +msgstr "Сервер запустить лише до \"autovacuum_worker_slots\" (%d) працівників автоочистки одночасно." + #: postmaster/bgworker.c:260 #, c-format -msgid "inconsistent background worker state (max_worker_processes=%d, total_slots=%d)" -msgstr "несумісний стан фонового процесу (max_worker_processes=%d, total_slots=%d)" +msgid "inconsistent background worker state (\"max_worker_processes\"=%d, total slots=%d)" +msgstr "неузгоджений стан фонового виконавця (\"max_worker_processes\"=%d, загальних слотів=%d)" -#: postmaster/bgworker.c:651 +#: postmaster/bgworker.c:646 #, c-format msgid "background worker \"%s\": background workers without shared memory access are not supported" msgstr "фоновий виконавець \"%s\": фонові виконавці без доступу до спільної пам'яті не підтримуються" -#: postmaster/bgworker.c:662 +#: postmaster/bgworker.c:657 #, c-format msgid "background worker \"%s\": cannot request database access if starting at postmaster start" msgstr "фоновий виконавець \"%s\": не може запитувати доступ до бази даних, якщо його запущено при старті адміністратора поштового сервісу" -#: postmaster/bgworker.c:676 +#: postmaster/bgworker.c:671 #, c-format msgid "background worker \"%s\": invalid restart interval" msgstr "фоновий виконавець \"%s\": неприпустимий інтервал перезавантаження" -#: postmaster/bgworker.c:691 +#: postmaster/bgworker.c:686 #, c-format msgid "background worker \"%s\": parallel workers may not be configured for restart" msgstr "фоновий виконавець\"%s\": паралельні виконавці не можуть бути налаштовані для перезавантаження" -#: postmaster/bgworker.c:715 tcop/postgres.c:3312 +#: postmaster/bgworker.c:710 tcop/postgres.c:3343 #, c-format msgid "terminating background worker \"%s\" due to administrator command" msgstr "завершення фонового процесу \"%s\" по команді адміністратора" -#: postmaster/bgworker.c:888 +#: postmaster/bgworker.c:869 postmaster/bgworker.c:903 +#, c-format +msgid "database connection requirement not indicated during registration" +msgstr "під час реєстрації не вказувалося, що вимагається підключення до бази даних" + +#: postmaster/bgworker.c:879 postmaster/bgworker.c:913 +#, c-format +msgid "invalid processing mode in background worker" +msgstr "неприпустимий режим обробки у фоновому записі" + +#: postmaster/bgworker.c:966 #, c-format msgid "background worker \"%s\": must be registered in \"shared_preload_libraries\"" -msgstr "" +msgstr "фоновий процес \"%s\": повинен бути зареєстрований в \"shared_preload_libraries\"" -#: postmaster/bgworker.c:911 +#: postmaster/bgworker.c:989 #, c-format msgid "background worker \"%s\": only dynamic background workers can request notification" msgstr "фоновий процес \"%s\": лише динамічні фонові процеси можуть запитувати сповіщення" -#: postmaster/bgworker.c:926 +#: postmaster/bgworker.c:1004 #, c-format msgid "too many background workers" msgstr "занадто багато фонових процесів" -#: postmaster/bgworker.c:927 +#: postmaster/bgworker.c:1005 #, 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." @@ -19353,12 +20040,12 @@ msgstr[1] "Максимальне можливе число фонових пр msgstr[2] "Максимальне можливе число фонових процесів при поточних параметрах: %d." msgstr[3] "Максимальне можливе число фонових процесів при поточних параметрах: %d." -#: postmaster/bgworker.c:931 postmaster/checkpointer.c:445 +#: postmaster/bgworker.c:1009 postmaster/checkpointer.c:462 #, c-format msgid "Consider increasing the configuration parameter \"%s\"." -msgstr "" +msgstr "Можливо, слід збільшити параметр конфігурації \"%s\"." -#: postmaster/checkpointer.c:441 +#: postmaster/checkpointer.c:458 #, c-format msgid "checkpoints are occurring too frequently (%d second apart)" msgid_plural "checkpoints are occurring too frequently (%d seconds apart)" @@ -19367,283 +20054,283 @@ msgstr[1] "контрольні точки відбуваються занадт msgstr[2] "контрольні точки відбуваються занадто часто (через %d сек.)" msgstr[3] "контрольні точки відбуваються занадто часто (через %d сек.)" -#: postmaster/checkpointer.c:1067 +#: postmaster/checkpointer.c:1127 #, c-format msgid "checkpoint request failed" msgstr "збій при запиті контрольної точки" -#: postmaster/checkpointer.c:1068 +#: postmaster/checkpointer.c:1128 #, c-format msgid "Consult recent messages in the server log for details." msgstr "Для деталей, зверніться до останніх повідомлень в протоколі серверу." -#: postmaster/launch_backend.c:381 +#: postmaster/launch_backend.c:395 #, c-format msgid "could not execute server process \"%s\": %m" msgstr "не вдалося виконати серверні процеси \"%s\":%m" -#: postmaster/launch_backend.c:434 +#: postmaster/launch_backend.c:449 #, c-format msgid "could not create backend parameter file mapping: error code %lu" msgstr "не вдалося створити відображення файлу параметру внутрішнього сервера: код помилки %lu" -#: postmaster/launch_backend.c:442 +#: postmaster/launch_backend.c:457 #, c-format msgid "could not map backend parameter memory: error code %lu" msgstr "не вдалося відобразити пам'ять параметру внутрішнього сервера: код помилки %lu" -#: postmaster/launch_backend.c:459 +#: postmaster/launch_backend.c:474 #, c-format msgid "subprocess command line too long" msgstr "командний рядок підпроцесу занадто довгий" -#: postmaster/launch_backend.c:477 +#: postmaster/launch_backend.c:492 #, c-format msgid "CreateProcess() call failed: %m (error code %lu)" msgstr "помилка виклику CreateProcess(): %m (код помилки %lu)" -#: postmaster/launch_backend.c:504 +#: postmaster/launch_backend.c:521 #, c-format msgid "could not unmap view of backend parameter file: error code %lu" msgstr "не вдалося вимкнути відображення файлу параметру внутрішнього сервера: код помилки %lu" -#: postmaster/launch_backend.c:508 +#: postmaster/launch_backend.c:525 #, c-format msgid "could not close handle to backend parameter file: error code %lu" msgstr "не вдалося закрити покажчик файлу параметру внутрішнього сервера: код помилки %lu" -#: postmaster/launch_backend.c:530 +#: postmaster/launch_backend.c:547 #, c-format msgid "giving up after too many tries to reserve shared memory" msgstr "кількість повторних спроб резервування спільної пам'яті досягло межі" -#: postmaster/launch_backend.c:531 +#: postmaster/launch_backend.c:548 #, c-format msgid "This might be caused by ASLR or antivirus software." msgstr "Це може бути викликано антивірусним програмним забезпеченням або ASLR." -#: postmaster/launch_backend.c:834 +#: postmaster/launch_backend.c:854 #, c-format msgid "could not duplicate socket %d for use in backend: error code %d" msgstr "не вдалося продублювати сокет %d для використання: код помилки %d" -#: postmaster/launch_backend.c:866 +#: postmaster/launch_backend.c:886 #, c-format msgid "could not create inherited socket: error code %d\n" msgstr "не вдалося створити успадкований сокет: код помилки %d\n" -#: postmaster/launch_backend.c:895 +#: postmaster/launch_backend.c:915 #, c-format msgid "could not open backend variables file \"%s\": %m\n" -msgstr "" +msgstr "не вдалося відкрити внутрішні змінні файли \"%s\": %m\n" -#: postmaster/launch_backend.c:901 +#: postmaster/launch_backend.c:921 #, c-format msgid "could not read from backend variables file \"%s\": %m\n" -msgstr "" +msgstr "не вдалося прочитати внутрішні змінні файли \"%s\": %m\n" -#: postmaster/launch_backend.c:912 +#: postmaster/launch_backend.c:932 #, c-format msgid "could not read startup data from backend variables file \"%s\": %m\n" -msgstr "" +msgstr "не вдалося прочитати стартові дані у файлах внутрішніх змінних \"%s\": %m\n" -#: postmaster/launch_backend.c:924 +#: postmaster/launch_backend.c:944 #, c-format msgid "could not remove file \"%s\": %m\n" -msgstr "" +msgstr "не вдалося видалити файл \"%s\": %m\n" -#: postmaster/launch_backend.c:940 +#: postmaster/launch_backend.c:960 #, c-format msgid "could not map view of backend variables: error code %lu\n" msgstr "не вдалося відобразити файл серверних змінних: код помилки %lu\n" -#: postmaster/launch_backend.c:959 +#: postmaster/launch_backend.c:979 #, c-format msgid "could not unmap view of backend variables: error code %lu\n" msgstr "не вдалося вимкнути відображення файлу серверних змінних: код помилки %lu\n" -#: postmaster/launch_backend.c:966 +#: postmaster/launch_backend.c:986 #, c-format msgid "could not close handle to backend parameter variables: error code %lu\n" msgstr "не вдалося закрити покажчик файлу серверних змінних: код помилки %lu\n" -#: postmaster/pgarch.c:428 +#: postmaster/pgarch.c:429 #, c-format msgid "\"archive_mode\" enabled, yet archiving is not configured" -msgstr "" +msgstr "\"archive_mode\" активовано, але архівування не налаштовано" -#: postmaster/pgarch.c:452 +#: postmaster/pgarch.c:453 #, c-format msgid "removed orphan archive status file \"%s\"" msgstr "видалено залишковий файл статусу архіву \"%s\"" -#: postmaster/pgarch.c:462 +#: postmaster/pgarch.c:463 #, c-format msgid "removal of orphan archive status file \"%s\" failed too many times, will try again later" msgstr "видалення залишкового файлу статусу архіву \"%s\" не вдалося занадто багато разів, пізніже спробуємо знову" -#: postmaster/pgarch.c:498 +#: postmaster/pgarch.c:499 #, c-format msgid "archiving write-ahead log file \"%s\" failed too many times, will try again later" msgstr "архівація файлу випереджувальног журналювання \"%s\" не виконана багато разів, наступна спроба буде пізніже" -#: postmaster/pgarch.c:879 postmaster/pgarch.c:918 +#: postmaster/pgarch.c:881 postmaster/pgarch.c:920 #, c-format msgid "both \"archive_command\" and \"archive_library\" set" -msgstr "" +msgstr "встановлено команду \"archive_command\" і \"archive_library\"" -#: postmaster/pgarch.c:880 postmaster/pgarch.c:919 +#: postmaster/pgarch.c:882 postmaster/pgarch.c:921 #, c-format msgid "Only one of \"archive_command\", \"archive_library\" may be set." -msgstr "" +msgstr "Можливо встановити лише одну з \"archive_command\", \"archive_library\"." -#: postmaster/pgarch.c:897 +#: postmaster/pgarch.c:899 #, c-format msgid "restarting archiver process because value of \"archive_library\" was changed" msgstr "перезапуск процесу архіватора, оскільки значення \"archive_library\" було змінено" -#: postmaster/pgarch.c:934 +#: postmaster/pgarch.c:936 #, c-format msgid "archive modules have to define the symbol %s" msgstr "архівні модулі повинні визначити символ %s" -#: postmaster/pgarch.c:940 +#: postmaster/pgarch.c:942 #, c-format msgid "archive modules must register an archive callback" msgstr "модулі архіву повинні реєструвати зворотний виклик архіву" -#: postmaster/postmaster.c:661 +#: postmaster/postmaster.c:678 #, c-format msgid "%s: invalid argument for option -f: \"%s\"\n" msgstr "%s: неприпустимий аргумент для параметру -f: \"%s\"\n" -#: postmaster/postmaster.c:734 +#: postmaster/postmaster.c:751 #, c-format msgid "%s: invalid argument for option -t: \"%s\"\n" msgstr "%s: неприпустимий аргумент для параметру -t: \"%s\"\n" -#: postmaster/postmaster.c:757 +#: postmaster/postmaster.c:774 #, c-format msgid "%s: invalid argument: \"%s\"\n" msgstr "%s: неприпустимий аргумент: \"%s\"\n" -#: postmaster/postmaster.c:825 +#: postmaster/postmaster.c:842 #, c-format msgid "%s: \"superuser_reserved_connections\" (%d) plus \"reserved_connections\" (%d) must be less than \"max_connections\" (%d)\n" -msgstr "" +msgstr "%s: \"superuser_reserved_connections\" (%d) плюс \"reserved_connections\" (%d) має бути меншим за \"max_connections\" (%d)\n" -#: postmaster/postmaster.c:833 +#: postmaster/postmaster.c:850 #, c-format msgid "WAL archival cannot be enabled when \"wal_level\" is \"minimal\"" -msgstr "" +msgstr "WAL архіватор не може бути активованим, коли \"wal_level\" встановлено в \"minimal\"" -#: postmaster/postmaster.c:836 +#: postmaster/postmaster.c:853 #, c-format msgid "WAL streaming (\"max_wal_senders\" > 0) requires \"wal_level\" to be \"replica\" or \"logical\"" msgstr "Потокове передавання WAL (\"max_wal_senders\" > 0) вимагає \"wal_level\" \"replica\" або \"logical\"" -#: postmaster/postmaster.c:839 +#: postmaster/postmaster.c:856 #, c-format msgid "WAL cannot be summarized when \"wal_level\" is \"minimal\"" msgstr "неможливо підсумувати WAL, якщо \"wal_level\" дорівнє \"minimal\"" -#: postmaster/postmaster.c:847 +#: postmaster/postmaster.c:864 #, c-format msgid "%s: invalid datetoken tables, please fix\n" msgstr "%s: неприпустимі таблиці маркерів часу, будь-ласка виправіть\n" -#: postmaster/postmaster.c:1004 +#: postmaster/postmaster.c:1025 #, c-format msgid "could not create I/O completion port for child queue" msgstr "не вдалося створити завершений порт вводу-виводу для черги дітей" -#: postmaster/postmaster.c:1069 +#: postmaster/postmaster.c:1091 #, c-format msgid "ending log output to stderr" msgstr "завершення запису виводу Stderr" -#: postmaster/postmaster.c:1070 +#: postmaster/postmaster.c:1092 #, c-format msgid "Future log output will go to log destination \"%s\"." msgstr "В майбутньому запис виведення буде записуватися в призначення \"%s\"." -#: postmaster/postmaster.c:1081 +#: postmaster/postmaster.c:1103 #, c-format msgid "starting %s" msgstr "початок %s" -#: postmaster/postmaster.c:1143 +#: postmaster/postmaster.c:1165 #, c-format msgid "could not create listen socket for \"%s\"" msgstr "не вдалося створити сокет прослуховування для \"%s\"" -#: postmaster/postmaster.c:1149 +#: postmaster/postmaster.c:1171 #, c-format msgid "could not create any TCP/IP sockets" msgstr "не вдалося створити TCP/IP сокети" -#: postmaster/postmaster.c:1181 +#: postmaster/postmaster.c:1203 #, c-format msgid "DNSServiceRegister() failed: error code %ld" msgstr "Помилка DNSServiceRegister(): код помилки %ld" -#: postmaster/postmaster.c:1234 +#: postmaster/postmaster.c:1256 #, c-format msgid "could not create Unix-domain socket in directory \"%s\"" msgstr "не вдалося створити Unix-domain сокет в каталозі \"%s\"" -#: postmaster/postmaster.c:1240 +#: postmaster/postmaster.c:1262 #, c-format msgid "could not create any Unix-domain sockets" msgstr "не вдалося створити Unix-domain сокети" -#: postmaster/postmaster.c:1251 +#: postmaster/postmaster.c:1273 #, c-format msgid "no socket created for listening" msgstr "не створено жодного сокету для прослуховування" -#: postmaster/postmaster.c:1282 +#: postmaster/postmaster.c:1304 #, c-format msgid "%s: could not change permissions of external PID file \"%s\": %m\n" msgstr "%s: не вдалося змінити дозволи зовнішнього PID файлу \"%s\": %m\n" -#: postmaster/postmaster.c:1286 +#: postmaster/postmaster.c:1308 #, c-format msgid "%s: could not write external PID file \"%s\": %m\n" msgstr "%s: не вдалося записати зовнішній PID файл \"%s\": %m\n" #. translator: %s is a configuration file -#: postmaster/postmaster.c:1314 utils/init/postinit.c:221 +#: postmaster/postmaster.c:1336 utils/init/postinit.c:225 #, c-format msgid "could not load %s" msgstr "не вдалося завантажити %s" -#: postmaster/postmaster.c:1340 +#: postmaster/postmaster.c:1364 #, c-format msgid "postmaster became multithreaded during startup" msgstr "адміністратор поштового сервера став багатопотоковим під час запуску" -#: postmaster/postmaster.c:1341 +#: postmaster/postmaster.c:1365 postmaster/postmaster.c:3668 #, c-format msgid "Set the LC_ALL environment variable to a valid locale." msgstr "Встановити в змінній середовища LC_ALL дійісну локаль." -#: postmaster/postmaster.c:1440 +#: postmaster/postmaster.c:1468 #, c-format msgid "%s: could not locate my own executable path" msgstr "%s: не вдалося знайти свій власний шлях для виконання" -#: postmaster/postmaster.c:1447 +#: postmaster/postmaster.c:1475 #, c-format msgid "%s: could not locate matching postgres executable" msgstr "%s: не вдалося знайти відповідний postgres файл, що виконується" -#: postmaster/postmaster.c:1470 utils/misc/tzparser.c:341 +#: postmaster/postmaster.c:1498 utils/misc/tzparser.c:342 #, 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:1497 +#: postmaster/postmaster.c:1525 #, c-format msgid "%s: could not find the database system\n" "Expected to find it in the directory \"%s\",\n" @@ -19653,307 +20340,294 @@ msgstr "%s: не вдалося знайти систему бази даних\ "але не вдалося відкрити файл \"%s\": %m\n" #. translator: %s is SIGKILL or SIGABRT -#: postmaster/postmaster.c:1787 +#: postmaster/postmaster.c:1762 #, c-format msgid "issuing %s to recalcitrant children" msgstr "надсилання %s непокірливим дітям" -#: postmaster/postmaster.c:1809 +#: postmaster/postmaster.c:1784 #, c-format msgid "performing immediate shutdown because data directory lock file is invalid" msgstr "виконується негайне припинення роботи через неприпустимий файл блокування каталогу даних" -#: postmaster/postmaster.c:1872 -#, c-format -msgid "wrong key in cancel request for process %d" -msgstr "неправильний ключ в запиті скасування процесу %d" - -#: postmaster/postmaster.c:1884 -#, c-format -msgid "PID %d in cancel request did not match any process" -msgstr "PID %d в запиті на скасування не відповідає жодному процесу" - -#: postmaster/postmaster.c:2105 +#: postmaster/postmaster.c:2004 #, c-format msgid "received SIGHUP, reloading configuration files" msgstr "отримано SIGHUP, поновлення файлів конфігурацій" #. translator: %s is a configuration file -#: postmaster/postmaster.c:2133 postmaster/postmaster.c:2137 +#: postmaster/postmaster.c:2012 postmaster/postmaster.c:2016 #, c-format msgid "%s was not reloaded" msgstr "%s не було перезавантажено" -#: postmaster/postmaster.c:2147 +#: postmaster/postmaster.c:2026 #, c-format msgid "SSL configuration was not reloaded" msgstr "Конфігурація протоколу SSL не була перезавантажена" -#: postmaster/postmaster.c:2233 +#: postmaster/postmaster.c:2112 #, c-format msgid "received smart shutdown request" msgstr "отримано smart запит на завершення роботи" -#: postmaster/postmaster.c:2274 +#: postmaster/postmaster.c:2153 #, c-format msgid "received fast shutdown request" msgstr "отримано швидкий запит на завершення роботи" -#: postmaster/postmaster.c:2292 +#: postmaster/postmaster.c:2171 #, c-format msgid "aborting any active transactions" msgstr "переривання будь-яких активних транзакцій" -#: postmaster/postmaster.c:2316 +#: postmaster/postmaster.c:2195 #, c-format msgid "received immediate shutdown request" msgstr "отримано запит на негайне завершення роботи" -#: postmaster/postmaster.c:2388 +#: postmaster/postmaster.c:2270 #, c-format msgid "shutdown at recovery target" msgstr "завершення роботи при відновленні мети" -#: postmaster/postmaster.c:2406 postmaster/postmaster.c:2442 +#: postmaster/postmaster.c:2288 postmaster/postmaster.c:2324 msgid "startup process" msgstr "стартовий процес" -#: postmaster/postmaster.c:2409 +#: postmaster/postmaster.c:2291 #, c-format msgid "aborting startup due to startup process failure" msgstr "переривання запуску через помилку в стартовому процесі" -#: postmaster/postmaster.c:2484 +#: postmaster/postmaster.c:2347 #, c-format msgid "database system is ready to accept connections" msgstr "система бази даних готова до отримання підключення" -#: postmaster/postmaster.c:2505 +#: postmaster/postmaster.c:2369 msgid "background writer process" msgstr "процес фонового запису" -#: postmaster/postmaster.c:2552 +#: postmaster/postmaster.c:2402 msgid "checkpointer process" msgstr "процес контрольних точок" -#: postmaster/postmaster.c:2568 +#: postmaster/postmaster.c:2419 msgid "WAL writer process" msgstr "Процес запису WAL" -#: postmaster/postmaster.c:2583 +#: postmaster/postmaster.c:2435 msgid "WAL receiver process" msgstr "Процес отримання WAL" -#: postmaster/postmaster.c:2597 +#: postmaster/postmaster.c:2450 msgid "WAL summarizer process" msgstr "Процес підсумовування WAL" -#: postmaster/postmaster.c:2612 +#: postmaster/postmaster.c:2466 msgid "autovacuum launcher process" msgstr "процес запуску автоочистки" -#: postmaster/postmaster.c:2630 +#: postmaster/postmaster.c:2482 msgid "archiver process" msgstr "процес архівації" -#: postmaster/postmaster.c:2643 +#: postmaster/postmaster.c:2497 msgid "system logger process" msgstr "процес системного журналювання" -#: postmaster/postmaster.c:2660 +#: postmaster/postmaster.c:2515 msgid "slot sync worker process" msgstr "робочий процес синхронізації слоту" -#: postmaster/postmaster.c:2716 +#: postmaster/postmaster.c:2523 utils/init/miscinit.c:297 +msgid "io worker" +msgstr "працівник вводу-виводу" + +#: postmaster/postmaster.c:2545 postmaster/postmaster.c:2547 +msgid "untracked child process" +msgstr "невідстежуваний дочірній процес" + +#: postmaster/postmaster.c:2580 #, c-format msgid "background worker \"%s\"" msgstr "фоновий виконавець \"%s\"" -#: postmaster/postmaster.c:2795 postmaster/postmaster.c:2815 -#: postmaster/postmaster.c:2822 postmaster/postmaster.c:2840 -msgid "server process" -msgstr "процес сервера" - -#: postmaster/postmaster.c:2894 +#: postmaster/postmaster.c:2804 #, 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:3081 +#: postmaster/postmaster.c:2837 #, c-format msgid "%s (PID %d) exited with exit code %d" msgstr "%s (PID %d) завершився з кодом виходу %d" -#: postmaster/postmaster.c:3083 postmaster/postmaster.c:3095 -#: postmaster/postmaster.c:3105 postmaster/postmaster.c:3116 +#: postmaster/postmaster.c:2839 postmaster/postmaster.c:2851 +#: postmaster/postmaster.c:2861 postmaster/postmaster.c:2872 #, 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:3092 +#: postmaster/postmaster.c:2848 #, 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:3102 +#: postmaster/postmaster.c:2858 #, 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:3114 +#: postmaster/postmaster.c:2870 #, c-format msgid "%s (PID %d) exited with unrecognized status %d" msgstr "%s (PID %d) завершився з нерозпізнаним статусом %d" -#: postmaster/postmaster.c:3330 +#: postmaster/postmaster.c:3161 #, c-format msgid "abnormal database system shutdown" msgstr "ненормальне завершення роботи системи бази даних" -#: postmaster/postmaster.c:3356 +#: postmaster/postmaster.c:3187 #, c-format msgid "shutting down due to startup process failure" msgstr "завершення роботи через помилку в стартовому процесі" -#: postmaster/postmaster.c:3362 +#: postmaster/postmaster.c:3193 #, c-format msgid "shutting down because \"restart_after_crash\" is off" msgstr "завершення роботи, тому що \"restart_after_crash\" вимкнено" -#: postmaster/postmaster.c:3374 +#: postmaster/postmaster.c:3205 #, c-format msgid "all server processes terminated; reinitializing" msgstr "усі серверні процеси перервано; повторна ініціалізація" -#: postmaster/postmaster.c:3573 postmaster/postmaster.c:3983 -#: postmaster/postmaster.c:4372 -#, c-format -msgid "could not generate random cancel key" -msgstr "не вдалося згенерувати випадковий ключ скасування" - -#: postmaster/postmaster.c:3606 +#: postmaster/postmaster.c:3598 #, c-format msgid "could not fork new process for connection: %m" msgstr "не вдалося породити нові процеси для з'єднання: %m" -#: postmaster/postmaster.c:3648 +#: postmaster/postmaster.c:3633 msgid "could not fork new process for connection: " msgstr "не вдалося породити нові процеси для з'єднання: " -#: postmaster/postmaster.c:3682 +#: postmaster/postmaster.c:3667 #, c-format -msgid "Please report this to <%s>." -msgstr "Будь-ласка повідомте про це <%s>." +msgid "postmaster became multithreaded" +msgstr "postmaster став багатопотоковим" -#: postmaster/postmaster.c:3750 +#: postmaster/postmaster.c:3745 #, c-format msgid "database system is ready to accept read-only connections" msgstr "система бази даних готова до отримання підключення лише для читання" -#: postmaster/postmaster.c:3933 -#, c-format -msgid "could not fork \"%s\" process: %m" -msgstr "не вдалося породити процес \"%s\": %m" - -#: postmaster/postmaster.c:4171 postmaster/postmaster.c:4205 +#: postmaster/postmaster.c:3846 #, c-format -msgid "database connection requirement not indicated during registration" -msgstr "під час реєстрації не вказувалося, що вимагається підключення до бази даних" +msgid "WAL was shut down unexpectedly" +msgstr "WAL було неочікувано вимкнено" -#: postmaster/postmaster.c:4181 postmaster/postmaster.c:4215 +#: postmaster/postmaster.c:3971 #, c-format -msgid "invalid processing mode in background worker" -msgstr "неприпустимий режим обробки у фоновому записі" +msgid "no slot available for new autovacuum worker process" +msgstr "немає доступного слоту для нового процесу автоочищення" -#: postmaster/postmaster.c:4275 +#: postmaster/postmaster.c:3986 #, c-format -msgid "could not fork background worker process: %m" -msgstr "не вдалося породити фоновий процес: %m" +msgid "could not fork \"%s\" process: %m" +msgstr "не вдалося породити процес \"%s\": %m" -#: postmaster/postmaster.c:4358 +#: postmaster/postmaster.c:4145 #, c-format msgid "no slot available for new background worker process" msgstr "немає доступного слоту для нового фонового робочого процесу" -#: postmaster/postmaster.c:4621 +#: postmaster/postmaster.c:4163 +#, c-format +msgid "could not fork background worker process: %m" +msgstr "не вдалося породити фоновий процес: %m" + +#: postmaster/postmaster.c:4496 #, c-format msgid "could not read exit code for process\n" msgstr "не вдалося прочитати код завершення процесу\n" -#: postmaster/postmaster.c:4663 +#: postmaster/postmaster.c:4538 #, c-format msgid "could not post child completion status\n" msgstr "не вдалося надіслати статус завершення нащадка\n" -#: postmaster/syslogger.c:529 postmaster/syslogger.c:1173 +#: postmaster/syslogger.c:527 postmaster/syslogger.c:1172 #, c-format msgid "could not read from logger pipe: %m" msgstr "не вдалося прочитати з каналу журналювання: %m" -#: postmaster/syslogger.c:629 postmaster/syslogger.c:643 +#: postmaster/syslogger.c:626 postmaster/syslogger.c:640 #, c-format msgid "could not create pipe for syslog: %m" msgstr "не вдалося створити канал для syslog: %m" -#: postmaster/syslogger.c:712 +#: postmaster/syslogger.c:711 #, c-format msgid "could not fork system logger: %m" msgstr "не вдалося породити процес системного журналювання: %m" -#: postmaster/syslogger.c:731 +#: postmaster/syslogger.c:730 #, c-format msgid "redirecting log output to logging collector process" msgstr "переспрямовування виводу в протокол прочесу збирача протоколів" -#: postmaster/syslogger.c:732 +#: postmaster/syslogger.c:731 #, c-format msgid "Future log output will appear in directory \"%s\"." msgstr "Наступні протоколи будуть виводитись в каталог \"%s\"." -#: postmaster/syslogger.c:740 +#: postmaster/syslogger.c:739 #, c-format msgid "could not redirect stdout: %m" msgstr "не вдалося переспрямувати stdout: %m" -#: postmaster/syslogger.c:745 postmaster/syslogger.c:762 +#: postmaster/syslogger.c:744 postmaster/syslogger.c:761 #, c-format msgid "could not redirect stderr: %m" msgstr "не вдалося переспрямувати stderr: %m" -#: postmaster/syslogger.c:1128 +#: postmaster/syslogger.c:1127 #, c-format msgid "could not write to log file: %m\n" msgstr "не вдалося записати до файлу протокола: %m\n" -#: postmaster/syslogger.c:1246 +#: postmaster/syslogger.c:1247 #, c-format msgid "could not open log file \"%s\": %m" msgstr "не вдалося відкрити файл журналу \"%s\": %m" -#: postmaster/syslogger.c:1336 +#: postmaster/syslogger.c:1337 #, c-format msgid "disabling automatic rotation (use SIGHUP to re-enable)" msgstr "вимкнення автоматичного обертання (щоб повторно ввімкнути, використайте SIGHUP)" -#: postmaster/walsummarizer.c:740 +#: postmaster/walsummarizer.c:743 #, c-format msgid "WAL summarization is not progressing" msgstr "Підбиття підсумків WAL не просувається" -#: postmaster/walsummarizer.c:741 +#: postmaster/walsummarizer.c:744 #, c-format msgid "Summarization is needed through %X/%X, but is stuck at %X/%X on disk and %X/%X in memory." msgstr "Підсумовування потрібне через %X/%X, але воно застрягло на %X/%X на диску та %X/%X у пам'яті." -#: postmaster/walsummarizer.c:755 +#: postmaster/walsummarizer.c:758 #, c-format msgid "still waiting for WAL summarization through %X/%X after %ld second" msgid_plural "still waiting for WAL summarization through %X/%X after %ld seconds" @@ -19962,27 +20636,27 @@ msgstr[1] "все ще чекає на підбиття підсумків WAL msgstr[2] "все ще чекає на підбиття підсумків WAL через %X/%X через %ld секунд" msgstr[3] "все ще чекає на підбиття підсумків WAL через %X/%X через %ld секунд" -#: postmaster/walsummarizer.c:760 +#: postmaster/walsummarizer.c:763 #, c-format msgid "Summarization has reached %X/%X on disk and %X/%X in memory." msgstr "Підсумок досягнув %X/%X на диску та %X/%X у пам'яті." -#: postmaster/walsummarizer.c:1000 +#: postmaster/walsummarizer.c:1003 #, c-format msgid "could not find a valid record after %X/%X" msgstr "не вдалося знайти припустимий запис після %X/%X" -#: postmaster/walsummarizer.c:1045 +#: postmaster/walsummarizer.c:1048 #, c-format msgid "could not read WAL from timeline %u at %X/%X: %s" msgstr "не вдалося прочитати WAL з часової шкали %u за адресою %X/%X: %s" -#: postmaster/walsummarizer.c:1051 +#: postmaster/walsummarizer.c:1054 #, c-format msgid "could not read WAL from timeline %u at %X/%X" msgstr "не вдалося прочитати WAL з часової шкали %u на %X/%X" -#: regex/regc_pg_locale.c:244 +#: regex/regc_pg_locale.c:241 #, c-format msgid "could not determine which collation to use for regular expression" msgstr "не вдалося визначити які параметри сортування використати для регулярного виразу" @@ -19992,144 +20666,144 @@ msgstr "не вдалося визначити які параметри сор msgid "nondeterministic collations are not supported for regular expressions" msgstr "недетерміновані правила сортування не підтримуються для регулярних виразів" -#: replication/libpqwalreceiver/libpqwalreceiver.c:267 -#: replication/libpqwalreceiver/libpqwalreceiver.c:358 +#: replication/libpqwalreceiver/libpqwalreceiver.c:230 +#: replication/libpqwalreceiver/libpqwalreceiver.c:322 #, c-format msgid "password is required" msgstr "пароль обов'язковий" -#: replication/libpqwalreceiver/libpqwalreceiver.c:268 +#: replication/libpqwalreceiver/libpqwalreceiver.c:231 #, c-format msgid "Non-superuser cannot connect if the server does not request a password." msgstr "Несуперкористувач не може підключитися, якщо сервер не запитує пароль." -#: replication/libpqwalreceiver/libpqwalreceiver.c:269 +#: replication/libpqwalreceiver/libpqwalreceiver.c:232 #, c-format msgid "Target server's authentication method must be changed, or set password_required=false in the subscription parameters." msgstr "Необхідно змінити метод автентифікації цільового сервера або встановити password_required=false у параметрах підписки." -#: replication/libpqwalreceiver/libpqwalreceiver.c:285 +#: replication/libpqwalreceiver/libpqwalreceiver.c:249 #, c-format msgid "could not clear search path: %s" msgstr "не вдалося очистити шлях пошуку: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:331 -#: replication/libpqwalreceiver/libpqwalreceiver.c:517 +#: replication/libpqwalreceiver/libpqwalreceiver.c:295 +#: replication/libpqwalreceiver/libpqwalreceiver.c:483 #, c-format msgid "invalid connection string syntax: %s" msgstr "неприпустимий синтаксис рядка підключення: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:359 +#: replication/libpqwalreceiver/libpqwalreceiver.c:323 #, c-format msgid "Non-superusers must provide a password in the connection string." msgstr "Несуперкористувачі повинні вказати пароль для рядка підключення." -#: replication/libpqwalreceiver/libpqwalreceiver.c:386 +#: replication/libpqwalreceiver/libpqwalreceiver.c:350 #, c-format msgid "could not parse connection string: %s" msgstr "не вдалося аналізувати рядок підключення: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:459 +#: replication/libpqwalreceiver/libpqwalreceiver.c:425 #, c-format msgid "could not receive database system identifier and timeline ID from the primary server: %s" msgstr "не вдалося отримати ідентифікатор системи бази даних та ідентифікатор часової шкали з основного серверу: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:476 -#: replication/libpqwalreceiver/libpqwalreceiver.c:763 +#: replication/libpqwalreceiver/libpqwalreceiver.c:442 +#: replication/libpqwalreceiver/libpqwalreceiver.c:737 #, c-format msgid "invalid response from primary server" msgstr "неприпустима відповідь з основного серверу" -#: replication/libpqwalreceiver/libpqwalreceiver.c:477 +#: replication/libpqwalreceiver/libpqwalreceiver.c:443 #, c-format 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:606 -#: replication/libpqwalreceiver/libpqwalreceiver.c:613 -#: replication/libpqwalreceiver/libpqwalreceiver.c:643 +#: replication/libpqwalreceiver/libpqwalreceiver.c:572 +#: replication/libpqwalreceiver/libpqwalreceiver.c:579 +#: replication/libpqwalreceiver/libpqwalreceiver.c:611 #, c-format msgid "could not start WAL streaming: %s" msgstr "не вдалося почати потокове передавання WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:667 +#: replication/libpqwalreceiver/libpqwalreceiver.c:635 #, c-format msgid "could not send end-of-streaming message to primary: %s" msgstr "не вдалося передати основному серверу повідомлення про кінець передвання: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:690 +#: replication/libpqwalreceiver/libpqwalreceiver.c:659 #, c-format msgid "unexpected result set after end-of-streaming" msgstr "неочікуваний набір результатів після кінця передачі" -#: replication/libpqwalreceiver/libpqwalreceiver.c:705 +#: replication/libpqwalreceiver/libpqwalreceiver.c:675 #, c-format msgid "error while shutting down streaming COPY: %s" msgstr "помилка при завершенні потокового передавання \"копіювати\": %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:715 +#: replication/libpqwalreceiver/libpqwalreceiver.c:686 #, c-format msgid "error reading result of streaming command: %s" msgstr "помилка при читанні результату команди потокового передавання: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:724 -#: replication/libpqwalreceiver/libpqwalreceiver.c:957 +#: replication/libpqwalreceiver/libpqwalreceiver.c:696 +#: replication/libpqwalreceiver/libpqwalreceiver.c:832 #, c-format msgid "unexpected result after CommandComplete: %s" msgstr "неочікуваний результат CommandComplete: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:751 +#: replication/libpqwalreceiver/libpqwalreceiver.c:725 #, c-format msgid "could not receive timeline history file from the primary server: %s" msgstr "не вдалося отримати файл історії часової шкали з основного сервера: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:764 +#: replication/libpqwalreceiver/libpqwalreceiver.c:738 #, c-format msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields." msgstr "Очікувалося 1 кортеж з 2 поле, отримано %d кортежів з %d полями." -#: replication/libpqwalreceiver/libpqwalreceiver.c:920 -#: replication/libpqwalreceiver/libpqwalreceiver.c:973 -#: replication/libpqwalreceiver/libpqwalreceiver.c:980 +#: replication/libpqwalreceiver/libpqwalreceiver.c:793 +#: replication/libpqwalreceiver/libpqwalreceiver.c:848 +#: replication/libpqwalreceiver/libpqwalreceiver.c:855 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "не вдалося отримати дані з WAL потоку: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1000 +#: replication/libpqwalreceiver/libpqwalreceiver.c:875 #, c-format msgid "could not send data to WAL stream: %s" msgstr "не вдалося передати дані потоку WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1101 +#: replication/libpqwalreceiver/libpqwalreceiver.c:978 #, c-format msgid "could not create replication slot \"%s\": %s" msgstr "не вдалося створити слот реплікації \"%s\": %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1140 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1030 #, c-format msgid "could not alter replication slot \"%s\": %s" msgstr "не може змінити слот реплікації \"%s\": %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1174 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1064 #, c-format msgid "invalid query response" msgstr "неприпустима відповідь на запит" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1065 #, c-format msgid "Expected %d fields, got %d fields." msgstr "Очікувалося %d полів, отримано %d полі." -#: replication/libpqwalreceiver/libpqwalreceiver.c:1245 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1135 #, c-format msgid "the query interface requires a database connection" msgstr "інтерфейс запитів вимагає підключення до бази даних" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1277 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1169 msgid "empty query" msgstr "пустий запит" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1283 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 msgid "unexpected pipeline mode" msgstr "неочікуваний режим конвеєра" @@ -20143,161 +20817,256 @@ msgstr "завершено логічну реплікацію паралель msgid "lost connection to the logical replication apply worker" msgstr "втрачено зв'язок з робочим застосунком логічної реплікації" -#: replication/logical/applyparallelworker.c:1024 -#: replication/logical/applyparallelworker.c:1026 +#: replication/logical/applyparallelworker.c:1031 +#: replication/logical/applyparallelworker.c:1033 msgid "logical replication parallel apply worker" msgstr "застосовуючій робочий процес паралельної реплікації" -#: replication/logical/applyparallelworker.c:1040 +#: replication/logical/applyparallelworker.c:1047 #, c-format msgid "logical replication parallel apply worker exited due to error" msgstr "паралельний робочий додаток логічнаої реплікації завершив роботу через помилку" -#: replication/logical/applyparallelworker.c:1127 -#: replication/logical/applyparallelworker.c:1300 +#: replication/logical/applyparallelworker.c:1134 +#: replication/logical/applyparallelworker.c:1307 #, c-format msgid "lost connection to the logical replication parallel apply worker" msgstr "втрачено зв'язок з паралельним робочим застосунком логічної реплікації" -#: replication/logical/applyparallelworker.c:1180 +#: replication/logical/applyparallelworker.c:1187 #, c-format msgid "could not send data to shared-memory queue" msgstr "не вдалося передати дані в чергу в спільну пам'ять" -#: replication/logical/applyparallelworker.c:1215 +#: replication/logical/applyparallelworker.c:1222 #, c-format msgid "logical replication apply worker will serialize the remaining changes of remote transaction %u to a file" msgstr "застосовуючий процес логічної реплікації буде серіалізувати зміни, що залишилися віддаленою транзакцією %u до файлу" -#: replication/logical/decode.c:177 replication/logical/logical.c:141 +#: replication/logical/conflict.c:126 +#, c-format +msgid "conflict detected on relation \"%s.%s\": conflict=%s" +msgstr "виявлено конфлікт у відношенні \"%s.%s\": конфлікт=%s" + +#: replication/logical/conflict.c:223 +#, c-format +msgid "Key already exists in unique index \"%s\", modified locally in transaction %u at %s." +msgstr "Ключ вже існує в унікальному індексі \"%s\", змінено локально в транзакції %u в %s." + +#: replication/logical/conflict.c:227 +#, c-format +msgid "Key already exists in unique index \"%s\", modified by origin \"%s\" in transaction %u at %s." +msgstr "Ключ вже існує в унікальному індексі \"%s\", змінено джерелом \"%s\" в транзакції %u в %s." + +#: replication/logical/conflict.c:239 +#, c-format +msgid "Key already exists in unique index \"%s\", modified by a non-existent origin in transaction %u at %s." +msgstr "Ключ вже існує в унікальному індексі \"%s\", змінено неіснуючим джерелом в транзакції %u в %s." + +#: replication/logical/conflict.c:244 +#, c-format +msgid "Key already exists in unique index \"%s\", modified in transaction %u." +msgstr "Ключ вже існує в унікальному індексі \"%s\", змінено в транзакції %u." + +#: replication/logical/conflict.c:251 +#, c-format +msgid "Updating the row that was modified locally in transaction %u at %s." +msgstr "Оновлення рядка, який було змінено локально в транзакції %u в %s." + +#: replication/logical/conflict.c:254 +#, c-format +msgid "Updating the row that was modified by a different origin \"%s\" in transaction %u at %s." +msgstr "Оновлення рядка, який був змінено іншим джерелом \"%s\" в транзакції %u в %s." + +#: replication/logical/conflict.c:259 +#, c-format +msgid "Updating the row that was modified by a non-existent origin in transaction %u at %s." +msgstr "Оновлення рядка, який був змінено неіснуючим джерелом в транзакції %u в %s." + +#: replication/logical/conflict.c:265 +msgid "Could not find the row to be updated." +msgstr "Не вдалося знайти рядок для оновлення." + +#: replication/logical/conflict.c:270 +#, c-format +msgid "Deleting the row that was modified locally in transaction %u at %s." +msgstr "Видалення рядка, який був змінено локально в транзакції %u в %s." + +#: replication/logical/conflict.c:273 +#, c-format +msgid "Deleting the row that was modified by a different origin \"%s\" in transaction %u at %s." +msgstr "Видалення рядка, який був змінено іншим джерелом \"%s\" в транзакції %u в %s." + +#: replication/logical/conflict.c:278 +#, c-format +msgid "Deleting the row that was modified by a non-existent origin in transaction %u at %s." +msgstr "Видалення рядка, який був змінено неіснуючим джерелом в транзакції %u в %s." + +#: replication/logical/conflict.c:284 +msgid "Could not find the row to be deleted." +msgstr "Не вдалося знайти рядок для видалення." + +#: replication/logical/conflict.c:347 +#, c-format +msgid "Key %s" +msgstr "Ключ %s" + +#: replication/logical/conflict.c:364 +#, c-format +msgid "existing local row %s" +msgstr "існуючий локальний рядок %s" + +#: replication/logical/conflict.c:369 +#, c-format +msgid "Existing local row %s" +msgstr "Існуючий локальний рядок %s" + +#: replication/logical/conflict.c:396 +#, c-format +msgid "remote row %s" +msgstr "віддалений рядок %s" + +#: replication/logical/conflict.c:400 +#, c-format +msgid "Remote row %s" +msgstr "Віддалений рядок %s" + +#: replication/logical/conflict.c:434 +#, c-format +msgid "replica identity %s" +msgstr "ідентифікація репліки %s" + +#: replication/logical/conflict.c:435 +#, c-format +msgid "replica identity full %s" +msgstr "повна ідентифікація репліки %s" + +#: replication/logical/conflict.c:440 +#, c-format +msgid "Replica identity %s" +msgstr "Ідентифікація репліки %s" + +#: replication/logical/conflict.c:441 +#, c-format +msgid "Replica identity full %s" +msgstr "Повна ідентифікація репліки %s" + +#: replication/logical/decode.c:177 replication/logical/logical.c:143 #, c-format msgid "logical decoding on standby requires \"wal_level\" >= \"logical\" on the primary" msgstr "логічне декодування на standby вимагає \"wal_level\" >= \"logical\" на основному сервері" -#: replication/logical/launcher.c:334 +#: replication/logical/launcher.c:344 #, c-format -msgid "cannot start logical replication workers when max_replication_slots = 0" -msgstr "неможливо почати логічні записи реплікацій, коли max_replication_slots = 0" +msgid "cannot start logical replication workers when \"max_active_replication_origins\" is 0" +msgstr "не можна запустити працівників логічної реплікації, коли \"max_active_replication_origins\" дорівнює 0" -#: replication/logical/launcher.c:427 +#: replication/logical/launcher.c:437 #, c-format msgid "out of logical replication worker slots" msgstr "недостатньо слотів для процесів логічної реплікації" -#: replication/logical/launcher.c:428 replication/logical/launcher.c:514 -#: replication/slot.c:1524 storage/lmgr/lock.c:985 storage/lmgr/lock.c:1023 -#: storage/lmgr/lock.c:2826 storage/lmgr/lock.c:4211 storage/lmgr/lock.c:4276 -#: storage/lmgr/lock.c:4626 storage/lmgr/predicate.c:2464 -#: storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:3876 +#. translator: %s is a GUC variable name +#: replication/logical/launcher.c:438 replication/logical/launcher.c:524 +#: replication/slot.c:1666 replication/slot.c:1686 storage/lmgr/lock.c:1042 +#: storage/lmgr/lock.c:1080 storage/lmgr/lock.c:2969 storage/lmgr/lock.c:4374 +#: storage/lmgr/lock.c:4439 storage/lmgr/lock.c:4789 +#: storage/lmgr/predicate.c:2479 storage/lmgr/predicate.c:2494 +#: storage/lmgr/predicate.c:3891 #, c-format msgid "You might need to increase \"%s\"." msgstr "Можливо, вам слід збільшити \"%s\"." -#: replication/logical/launcher.c:513 +#: replication/logical/launcher.c:523 #, c-format msgid "out of background worker slots" msgstr "недостатньо слотів для фонових робочих процесів" -#: replication/logical/launcher.c:720 +#: replication/logical/launcher.c:730 #, c-format msgid "logical replication worker slot %d is empty, cannot attach" msgstr "слот запису логічної реплікації %d пустий, неможливо підключитися" -#: replication/logical/launcher.c:729 +#: replication/logical/launcher.c:739 #, c-format msgid "logical replication worker slot %d is already used by another worker, cannot attach" msgstr "слот запису логічної реплікації %d вже використовується іншим виконавцем, неможливо підключитися" -#: replication/logical/logical.c:121 +#: replication/logical/logical.c:123 #, c-format msgid "logical decoding requires \"wal_level\" >= \"logical\"" msgstr "логічне декодування вимагає \"wal_level\" >= logical\"" -#: replication/logical/logical.c:126 +#: replication/logical/logical.c:128 #, c-format msgid "logical decoding requires a database connection" msgstr "логічне декодування вимагає підключення до бази даних" -#: replication/logical/logical.c:365 replication/logical/logical.c:519 +#: replication/logical/logical.c:367 replication/logical/logical.c:523 #, c-format msgid "cannot use physical replication slot for logical decoding" msgstr "неможливо використовувати слот невідповідної реплікації для логічного кодування" -#: replication/logical/logical.c:370 replication/logical/logical.c:529 +#: replication/logical/logical.c:372 replication/logical/logical.c:533 #, c-format msgid "replication slot \"%s\" was not created in this database" msgstr "слот реплікації \"%s\" був створений не в цій базі даних" -#: replication/logical/logical.c:377 +#: replication/logical/logical.c:379 #, c-format msgid "cannot create logical replication slot in transaction that has performed writes" msgstr "неможливо створити слот логічної реплікації у транзакції, що виконує записування" -#: replication/logical/logical.c:540 +#: replication/logical/logical.c:544 #, c-format msgid "cannot use replication slot \"%s\" for logical decoding" msgstr "не може використовувати слот реплікації \"%s\" для логічного декодування" -#: replication/logical/logical.c:542 replication/slot.c:798 -#: replication/slot.c:829 +#: replication/logical/logical.c:546 replication/slot.c:864 +#: replication/slot.c:899 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Цей слот реплікації синхронізується з основного сервера." -#: replication/logical/logical.c:543 +#: replication/logical/logical.c:547 #, c-format msgid "Specify another replication slot." msgstr "Вкажіть інший слот реплікації." -#: replication/logical/logical.c:554 replication/logical/logical.c:561 -#, c-format -msgid "can no longer get changes from replication slot \"%s\"" -msgstr "більше не можна отримувати зміни з слоту реплікації \"%s\"" - -#: replication/logical/logical.c:556 -#, c-format -msgid "This slot has been invalidated because it exceeded the maximum reserved size." -msgstr "Цей слот визнано недійсним, тому що він перевищив максимально зарезервований розмір." - -#: replication/logical/logical.c:563 -#, c-format -msgid "This slot has been invalidated because it was conflicting with recovery." -msgstr "Цей слот було скасовано, оскільки він суперечив відновленню." - -#: replication/logical/logical.c:628 +#: replication/logical/logical.c:613 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "початок логічного декодування для слоту \"%s\"" -#: replication/logical/logical.c:630 +#: replication/logical/logical.c:615 #, c-format msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X." msgstr "Потокове передавання транзакцій, що затверджені, після %X/%X, читання WAL з %X/%X." -#: replication/logical/logical.c:778 +#: replication/logical/logical.c:763 #, c-format 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:784 +#: replication/logical/logical.c:769 #, c-format msgid "slot \"%s\", output plugin \"%s\", in the %s callback" msgstr "слот \"%s\", плагін виходу \"%s\", у зворотньому виклику %s" -#: replication/logical/logical.c:955 replication/logical/logical.c:1000 -#: replication/logical/logical.c:1045 replication/logical/logical.c:1091 +#: replication/logical/logical.c:940 replication/logical/logical.c:985 +#: replication/logical/logical.c:1030 replication/logical/logical.c:1076 #, c-format msgid "logical replication at prepare time requires a %s callback" msgstr "логічна реплікація під час підготовки потребує %s зворотнього виклику" -#: replication/logical/logical.c:1323 replication/logical/logical.c:1372 -#: replication/logical/logical.c:1413 replication/logical/logical.c:1499 -#: replication/logical/logical.c:1548 +#: replication/logical/logical.c:1308 replication/logical/logical.c:1357 +#: replication/logical/logical.c:1398 replication/logical/logical.c:1484 +#: replication/logical/logical.c:1533 #, c-format msgid "logical streaming requires a %s callback" msgstr "логічне потокове передавання потребує %s зворотнього виклику" -#: replication/logical/logical.c:1458 +#: replication/logical/logical.c:1443 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "логічне потокове передавання під час підготовки потребує %s зворотнього виклику" @@ -20322,7 +21091,7 @@ msgstr "масив має бути одновимірним" msgid "array must not contain nulls" msgstr "масив не має включати nulls" -#: replication/logical/logicalfuncs.c:177 utils/adt/json.c:1420 +#: replication/logical/logicalfuncs.c:177 utils/adt/json.c:1428 #: utils/adt/jsonb.c:1304 #, c-format msgid "array must have even number of elements" @@ -20333,104 +21102,112 @@ msgstr "масив повинен мати парну кількість еле msgid "logical decoding output plugin \"%s\" produces binary output, but function \"%s\" expects textual data" msgstr "плагін виходу логічного декодування \"%s\" виробляє бінарний вихід, але функція \"%s\" очікує текстові дані" -#: replication/logical/origin.c:190 +#: replication/logical/origin.c:195 #, c-format -msgid "cannot query or manipulate replication origin when \"max_replication_slots\" is 0" -msgstr "неможливо надіслати запит або маніпулювати джерелами реплікації, коли \"max_replication_slots\" = 0" +msgid "cannot query or manipulate replication origin when \"max_active_replication_origins\" is 0" +msgstr "не можна запитувати або маніпулювати джерелом реплікації, коли \"max_active_replication_origins\" дорівнює 0" -#: replication/logical/origin.c:195 +#: replication/logical/origin.c:200 #, c-format msgid "cannot manipulate replication origins during recovery" msgstr "неможливо маніпулювати джерелами реплікації під час відновлення" -#: replication/logical/origin.c:240 +#: replication/logical/origin.c:245 #, c-format msgid "replication origin \"%s\" does not exist" msgstr "джерело реплікації \"%s\" не існує" -#: replication/logical/origin.c:331 +#: replication/logical/origin.c:275 +#, c-format +msgid "replication origin name is too long" +msgstr "назва джерела реплікації занадто довга" + +#: replication/logical/origin.c:276 +#, c-format +msgid "Replication origin names must be no longer than %d bytes." +msgstr "Назви джерел реплікації мають бути не довшими ніж %d байт." + +#: replication/logical/origin.c:359 #, c-format msgid "could not find free replication origin ID" msgstr "не вдалося знайти вільний ідентифікатор ID джерела реплікації" -#: replication/logical/origin.c:365 +#: replication/logical/origin.c:393 #, c-format msgid "could not drop replication origin with ID %d, in use by PID %d" msgstr "не вдалося розірвати джерело реплікації з ідентифікатором ID %d, використовується PID %d" -#: replication/logical/origin.c:492 +#: replication/logical/origin.c:520 #, c-format msgid "replication origin with ID %d does not exist" msgstr "джерело реплікації з ідентифікатором ID %d не існує" -#: replication/logical/origin.c:757 +#: replication/logical/origin.c:780 #, c-format msgid "replication checkpoint has wrong magic %u instead of %u" msgstr "контрольна точка реплікації має неправильну сигнатуру %u замість %u" -#: replication/logical/origin.c:798 +#: replication/logical/origin.c:821 #, c-format -msgid "could not find free replication state, increase \"max_replication_slots\"" -msgstr "не вдалося знайти вільний слот для стану реплікації, збільшіть \"max_replication_slots\"" +msgid "could not find free replication state, increase \"max_active_replication_origins\"" +msgstr "не вдалося знайти вільний стан реплікації, збільште \"max_active_replication_origins\"" -#: replication/logical/origin.c:806 +#: replication/logical/origin.c:829 #, c-format msgid "recovered replication state of node %d to %X/%X" msgstr "відновлений стан реплікації вузла %d в %X/%X" -#: replication/logical/origin.c:816 +#: replication/logical/origin.c:839 #, c-format msgid "replication slot checkpoint has wrong checksum %u, expected %u" msgstr "неправильна контрольна сума файлу контрольної точки для слота реплікації %u, очікувалось %u" -#: replication/logical/origin.c:944 replication/logical/origin.c:1143 +#: replication/logical/origin.c:967 replication/logical/origin.c:1166 #, c-format msgid "replication origin with ID %d is already active for PID %d" msgstr "джерело реплікації з ID %d вже активний для PID %d" -#: replication/logical/origin.c:955 replication/logical/origin.c:1156 +#: replication/logical/origin.c:978 replication/logical/origin.c:1179 #, c-format msgid "could not find free replication state slot for replication origin with ID %d" msgstr "не вдалося знайти вільний слот стану реплікації для джерела реплікації з ID %d" -#: replication/logical/origin.c:957 replication/logical/origin.c:1158 -#: replication/slot.c:2384 +#: replication/logical/origin.c:980 replication/logical/origin.c:1181 #, c-format -msgid "Increase \"max_replication_slots\" and try again." -msgstr "Збільшіть \"max_replication_slots\" і спробуйте знову." +msgid "Increase \"max_active_replication_origins\" and try again." +msgstr "Збільшіть \"max_active_replication_origins\" та спробуйте знову." -#: replication/logical/origin.c:1114 +#: replication/logical/origin.c:1137 #, c-format msgid "cannot setup replication origin when one is already setup" msgstr "не можна налаштувати джерело реплікації, коли один вже налаштований" -#: replication/logical/origin.c:1199 replication/logical/origin.c:1415 -#: replication/logical/origin.c:1435 +#: replication/logical/origin.c:1222 replication/logical/origin.c:1438 +#: replication/logical/origin.c:1458 #, c-format msgid "no replication origin is configured" msgstr "жодне джерело реплікації не налаштоване" -#: replication/logical/origin.c:1285 +#: replication/logical/origin.c:1308 #, c-format msgid "replication origin name \"%s\" is reserved" msgstr "назва джерела реплікації \"%s\" зарезервована" -#: replication/logical/origin.c:1287 +#: replication/logical/origin.c:1310 #, c-format msgid "Origin names \"%s\", \"%s\", and names starting with \"pg_\" are reserved." msgstr "Імена походженням \"%s\", \"%s\" та імена, що починаються з \"pg_\", є зарезервованими." -#: replication/logical/relation.c:242 +#: replication/logical/relation.c:241 +msgid ", " +msgstr ", " + +#: replication/logical/relation.c:243 #, c-format msgid "\"%s\"" msgstr "\"%s\"" -#: replication/logical/relation.c:245 -#, c-format -msgid ", \"%s\"" -msgstr ", \"%s\"" - -#: replication/logical/relation.c:251 +#: replication/logical/relation.c:262 #, c-format msgid "logical replication target relation \"%s.%s\" is missing replicated column: %s" msgid_plural "logical replication target relation \"%s.%s\" is missing replicated columns: %s" @@ -20439,105 +21216,109 @@ msgstr[1] "в цільовому відношенні логічної репл msgstr[2] "в цільовому відношенні логічної реплікації \"%s.%s\" пропущено репліковані стовпці: %s" msgstr[3] "в цільовому відношенні логічної реплікації \"%s.%s\" пропущено репліковані стовпці: %s" -#: replication/logical/relation.c:306 +#: replication/logical/relation.c:273 +#, c-format +msgid "logical replication target relation \"%s.%s\" has incompatible generated column: %s" +msgid_plural "logical replication target relation \"%s.%s\" has incompatible generated columns: %s" +msgstr[0] "цільове відношення логічної реплікації \"%s.%s\" містить несумісний згенерований стовпець: %s" +msgstr[1] "цільове відношення логічної реплікації \"%s.%s\" містить несумісні згенеровані стовпці: %s" +msgstr[2] "цільове відношення логічної реплікації \"%s.%s\" містить несумісні згенеровані стовпці: %s" +msgstr[3] "цільове відношення логічної реплікації \"%s.%s\" містить несумісні згенеровані стовпці: %s" + +#: replication/logical/relation.c:328 #, c-format msgid "logical replication target relation \"%s.%s\" uses system columns in REPLICA IDENTITY index" msgstr "в цільовому відношенні логічної реплікації \"%s.%s\" в індексі REPLICA IDENTITY використовуються системні стовпці" -#: replication/logical/relation.c:398 +#: replication/logical/relation.c:421 #, c-format msgid "logical replication target relation \"%s.%s\" does not exist" msgstr "цільове відношення логічної реплікації \"%s.%s\" не існує" -#: replication/logical/reorderbuffer.c:3994 +#: replication/logical/reorderbuffer.c:4252 #, c-format msgid "could not write to data file for XID %u: %m" msgstr "не вдалося записати у файл даних для XID %u: %m" -#: replication/logical/reorderbuffer.c:4340 -#: replication/logical/reorderbuffer.c:4365 +#: replication/logical/reorderbuffer.c:4598 +#: replication/logical/reorderbuffer.c:4623 #, c-format msgid "could not read from reorderbuffer spill file: %m" msgstr "не вдалося прочитати з файлу розгортання буферу пересортування: %m" -#: replication/logical/reorderbuffer.c:4344 -#: replication/logical/reorderbuffer.c:4369 +#: replication/logical/reorderbuffer.c:4602 +#: replication/logical/reorderbuffer.c:4627 #, c-format msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes" msgstr "не вдалося прочитати з файлу розгортання буферу пересортування: прочитано %d замість %u байт" -#: replication/logical/reorderbuffer.c:4619 +#: replication/logical/reorderbuffer.c:4876 #, c-format -msgid "could not remove file \"%s\" during removal of pg_replslot/%s/xid*: %m" -msgstr "не вдалося видалити файл \"%s\" під час видалення pg_replslot/%s/xid*: %m" +msgid "could not remove file \"%s\" during removal of %s/%s/xid*: %m" +msgstr "не вдалося видалити файл \"%s\" під час видалення %s/%s/xid*: %m" -#: replication/logical/reorderbuffer.c:5115 +#: replication/logical/reorderbuffer.c:5373 #, c-format msgid "could not read from file \"%s\": read %d instead of %d bytes" msgstr "не вдалося прочитати з файлу \"%s\": прочитано %d замість %d байт" -#: replication/logical/slotsync.c:215 +#: replication/logical/slotsync.c:214 replication/logical/slotsync.c:595 #, c-format -msgid "could not synchronize replication slot \"%s\" because remote slot precedes local slot" -msgstr "не вдалося синхронізувати слот реплікації \"%s\", оскільки віддалений слот передує локальному" +msgid "could not synchronize replication slot \"%s\"" +msgstr "не вдалося синхронізувати слот реплікації \"%s\"" -#: replication/logical/slotsync.c:217 +#: replication/logical/slotsync.c:216 #, c-format -msgid "The remote slot has LSN %X/%X and catalog xmin %u, but the local slot has LSN %X/%X and catalog xmin %u." -msgstr "Віддалений слот має LSN %X/%X і каталог xmin %u, а локальний слот має LSN %X/%X і каталог xmin %u." +msgid "Synchronization could lead to data loss, because the remote slot needs WAL at LSN %X/%X and catalog xmin %u, but the standby has LSN %X/%X and catalog xmin %u." +msgstr "Синхронізація може призвести до втрати даних, оскільки для віддаленого слоту потрібно мати WAL в LSN %X/%X та каталог xmin %u, але резервний сервер має LSN %X/%X і каталог xmin %u." -#: replication/logical/slotsync.c:459 +#: replication/logical/slotsync.c:475 #, c-format msgid "dropped replication slot \"%s\" of database with OID %u" msgstr "видалено слот реплікації \"%s\" бази даних з OID %u" -#: replication/logical/slotsync.c:579 -#, c-format -msgid "could not synchronize replication slot \"%s\"" -msgstr "не вдалося синхронізувати слот реплікації \"%s\"" - -#: replication/logical/slotsync.c:580 +#: replication/logical/slotsync.c:596 #, c-format -msgid "Logical decoding could not find consistent point from local slot's LSN %X/%X." -msgstr "Логічне декодування не може знайти стійку точку з локальних LSN %X/%X." +msgid "Synchronization could lead to data loss, because the standby could not build a consistent snapshot to decode WALs at LSN %X/%X." +msgstr "Синхронізація може призвести до втрати даних, так як резервний сервер не зміг створити узгоджений знімок для декодування LSN %X/%X." -#: replication/logical/slotsync.c:589 +#: replication/logical/slotsync.c:605 #, c-format msgid "newly created replication slot \"%s\" is sync-ready now" msgstr "новостворений слот реплікації \"%s\" готовий до синхронізації" -#: replication/logical/slotsync.c:628 +#: replication/logical/slotsync.c:644 #, c-format msgid "skipping slot synchronization because the received slot sync LSN %X/%X for slot \"%s\" is ahead of the standby position %X/%X" msgstr "пропуск синхронізації слотів, оскільки отримана синхронізація слотів LSN %X/%X для слота \"%s\" випереджає позицію очікування %X/%X" -#: replication/logical/slotsync.c:650 +#: replication/logical/slotsync.c:666 #, c-format msgid "exiting from slot synchronization because same name slot \"%s\" already exists on the standby" msgstr "вихід із синхронізації слотів, оскільки однойменний слот \"%s\" вже існує у режимі очікування" -#: replication/logical/slotsync.c:819 +#: replication/logical/slotsync.c:837 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "не вдалося отримати інформацію про логічні слоти обходу відмови з основного сервера: %s" -#: replication/logical/slotsync.c:965 +#: replication/logical/slotsync.c:986 #, c-format -msgid "could not fetch primary_slot_name \"%s\" info from the primary server: %s" -msgstr "не вдалося отримати інформацію primary_slot_name \"%s\" з первинного сервера: %s" +msgid "could not fetch primary slot name \"%s\" info from the primary server: %s" +msgstr "не вдалося отримати інформацію про слот первинного сервера \"%s\" з первинного сервера: %s" -#: replication/logical/slotsync.c:967 +#: replication/logical/slotsync.c:988 #, c-format -msgid "Check if primary_slot_name is configured correctly." -msgstr "Перевірте, чи правильно налаштовано primary_slot_name." +msgid "Check if \"primary_slot_name\" is configured correctly." +msgstr "Перевірте, чи \"primary_slot_name\" налаштовано правильно." -#: replication/logical/slotsync.c:987 +#: replication/logical/slotsync.c:1008 #, c-format msgid "cannot synchronize replication slots from a standby server" msgstr "не вдається синхронізувати слоти реплікації з резервного сервера" #. translator: second %s is a GUC variable name -#: replication/logical/slotsync.c:996 +#: replication/logical/slotsync.c:1017 #, c-format msgid "replication slot \"%s\" specified by \"%s\" does not exist on primary server" msgstr "слот реплікації \"%s\", на який вказує \"%s\", не існує на основному сервері" @@ -20545,71 +21326,70 @@ msgstr "слот реплікації \"%s\", на який вказує \"%s\", #. translator: first %s is a connection option; second %s is a GUC #. variable name #. -#: replication/logical/slotsync.c:1029 +#: replication/logical/slotsync.c:1050 #, c-format msgid "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "для синхронізації слотів реплікації потрібно, щоб \"%s\" було вказано у \"%s\"" -#: replication/logical/slotsync.c:1050 +#: replication/logical/slotsync.c:1069 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "синхронізація слотів вимагає \"wal_level\" >= \"logical\"" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1063 replication/logical/slotsync.c:1091 +#: replication/logical/slotsync.c:1084 replication/logical/slotsync.c:1112 #, c-format msgid "replication slot synchronization requires \"%s\" to be set" msgstr "для синхронізації слотів реплікації потрібно, щоб було вказано \"%s\"" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1077 +#: replication/logical/slotsync.c:1098 #, c-format msgid "replication slot synchronization requires \"%s\" to be enabled" msgstr "синхронізація слотів реплікації потребує ввімкнення \"%s\"" #. translator: %s is a GUC variable name -#: replication/logical/slotsync.c:1129 +#: replication/logical/slotsync.c:1150 #, c-format msgid "replication slot synchronization worker will shut down because \"%s\" is disabled" msgstr "процес синхронизації слотів реплікації буде вимкнутий, тому що \"%s\" відключено" -#: replication/logical/slotsync.c:1138 +#: replication/logical/slotsync.c:1159 #, c-format msgid "replication slot synchronization worker will restart because of a parameter change" msgstr "процес синхронізації слотів реплікації буде перезавантажений через зміну параметра" -#: replication/logical/slotsync.c:1162 +#: replication/logical/slotsync.c:1183 #, c-format -msgid "replication slot synchronization worker is shutting down on receiving SIGINT" -msgstr "процес синхронізації слотів реплікації буде вимкнуто через отримання повідомлення SIGINT" +msgid "replication slot synchronization worker is shutting down because promotion is triggered" +msgstr "процес синхронизації слотів реплікації буде вимкнутий, тому що запущено підвищення" -#: replication/logical/slotsync.c:1287 +#: replication/logical/slotsync.c:1308 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "неможливо синхронізувати слоти реплікації під час підвищення резервного сервера" -#: replication/logical/slotsync.c:1295 +#: replication/logical/slotsync.c:1316 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "не може синхронізувати слоти реплікації одночасно" -#: replication/logical/slotsync.c:1403 +#: replication/logical/slotsync.c:1424 #, c-format msgid "slot sync worker started" msgstr "запущено працівника синхронізації слотів" -#: replication/logical/slotsync.c:1466 replication/slotfuncs.c:900 -#: replication/walreceiver.c:307 +#: replication/logical/slotsync.c:1486 replication/slotfuncs.c:928 #, c-format -msgid "could not connect to the primary server: %s" -msgstr "не вдалося підключитися до основного серверу: %s" +msgid "synchronization worker \"%s\" could not connect to the primary server: %s" +msgstr "працівник синхронізації \"%s\" не зміг підключитися до основного сервера: %s" -#: replication/logical/snapbuild.c:653 +#: replication/logical/snapbuild.c:514 #, c-format msgid "initial slot snapshot too large" msgstr "початковий знімок слота занадто великий" -#: replication/logical/snapbuild.c:707 +#: replication/logical/snapbuild.c:568 #, c-format msgid "exported logical decoding snapshot: \"%s\" with %u transaction ID" msgid_plural "exported logical decoding snapshot: \"%s\" with %u transaction IDs" @@ -20618,860 +21398,920 @@ msgstr[1] "експортовано знімок логічного декоду msgstr[2] "експортовано знімок логічного декодування \"%s\" з %u ID транзакціями" msgstr[3] "експортовано знімок логічного декодування \"%s\" з %u ID транзакціями" -#: replication/logical/snapbuild.c:1404 replication/logical/snapbuild.c:1501 -#: replication/logical/snapbuild.c:2017 +#: replication/logical/snapbuild.c:1313 replication/logical/snapbuild.c:1410 +#: replication/logical/snapbuild.c:1916 #, c-format msgid "logical decoding found consistent point at %X/%X" msgstr "узгодження процесу логічного кодування знайдено в точці %X/%X" -#: replication/logical/snapbuild.c:1406 +#: replication/logical/snapbuild.c:1315 #, c-format msgid "There are no running transactions." msgstr "Більше активних транзакцій немає." -#: replication/logical/snapbuild.c:1453 +#: replication/logical/snapbuild.c:1362 #, c-format msgid "logical decoding found initial starting point at %X/%X" msgstr "початкова стартова точка процесу логічного декодування знайдена в точці %X/%X" -#: replication/logical/snapbuild.c:1455 replication/logical/snapbuild.c:1479 +#: replication/logical/snapbuild.c:1364 replication/logical/snapbuild.c:1388 #, c-format msgid "Waiting for transactions (approximately %d) older than %u to end." msgstr "Очікування транзакцій (приблизно %d) старіше, ніж %u до кінця." -#: replication/logical/snapbuild.c:1477 +#: replication/logical/snapbuild.c:1386 #, c-format msgid "logical decoding found initial consistent point at %X/%X" msgstr "початкова точка узгодження процесу логічного кодування знайдена в точці %X/%X" -#: replication/logical/snapbuild.c:1503 +#: replication/logical/snapbuild.c:1412 #, c-format msgid "There are no old transactions anymore." msgstr "Більше старих транзакцій немає." -#: replication/logical/snapbuild.c:1904 +#: replication/logical/snapbuild.c:1783 #, c-format msgid "snapbuild state file \"%s\" has wrong magic number: %u instead of %u" msgstr "файл стану snapbuild \"%s\" має неправильне магічне число: %u замість %u" -#: replication/logical/snapbuild.c:1910 +#: replication/logical/snapbuild.c:1789 #, c-format msgid "snapbuild state file \"%s\" has unsupported version: %u instead of %u" msgstr "файл стану snapbuild \"%s\" має непідтримуючу версію: %u замість %u" -#: replication/logical/snapbuild.c:1951 +#: replication/logical/snapbuild.c:1830 #, c-format msgid "checksum mismatch for snapbuild state file \"%s\": is %u, should be %u" msgstr "у файлі стану snapbuild \"%s\" невідповідність контрольної суми: %u, повинно бути %u" -#: replication/logical/snapbuild.c:2019 +#: replication/logical/snapbuild.c:1918 #, c-format msgid "Logical decoding will begin using saved snapshot." msgstr "Логічне декодування почнеться зі збереженого знімку." -#: replication/logical/snapbuild.c:2126 +#: replication/logical/snapbuild.c:2025 #, c-format msgid "could not parse file name \"%s\"" msgstr "не вдалося аналізувати ім'я файлу \"%s\"" -#: replication/logical/tablesync.c:161 +#: replication/logical/tablesync.c:160 #, c-format msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished" msgstr "процес синхронізації таблиці при логічній реплікації для підписки \"%s\", таблиці \"%s\" закінчив обробку" -#: replication/logical/tablesync.c:641 +#: replication/logical/tablesync.c:669 #, c-format msgid "logical replication apply worker for subscription \"%s\" will restart so that two_phase can be enabled" msgstr "застосовуючий процес логічної реплікації для підписки \"%s\" буде перезавантажено, щоб можна було активувати two_phase" -#: replication/logical/tablesync.c:827 replication/logical/tablesync.c:969 +#: replication/logical/tablesync.c:859 replication/logical/tablesync.c:1000 #, c-format msgid "could not fetch table info for table \"%s.%s\" from publisher: %s" msgstr "не вдалося отримати інформацію про таблицю \"%s.%s\" з серверу публікації: %s" -#: replication/logical/tablesync.c:834 +#: replication/logical/tablesync.c:866 #, c-format msgid "table \"%s.%s\" not found on publisher" msgstr "таблиця \"%s.%s\" не знайдена на сервері публікації" -#: replication/logical/tablesync.c:892 +#: replication/logical/tablesync.c:919 #, c-format msgid "could not fetch column list info for table \"%s.%s\" from publisher: %s" msgstr "не вдалося отримати інформацію про список стовпців для таблиці \"%s.%s\" з серверу публікації: %s" -#: replication/logical/tablesync.c:1071 +#: replication/logical/tablesync.c:1098 #, c-format msgid "could not fetch table WHERE clause info for table \"%s.%s\" from publisher: %s" msgstr "не вдалося отримати інформацію про вираз WHERE для таблиці \"%s.%s\" з серверу публікації: %s" -#: replication/logical/tablesync.c:1230 +#: replication/logical/tablesync.c:1265 #, c-format msgid "could not start initial contents copy for table \"%s.%s\": %s" msgstr "не вдалося почати копіювання початкового змісту таблиці \"%s.%s\": %s" -#: replication/logical/tablesync.c:1429 +#: replication/logical/tablesync.c:1380 #, c-format -msgid "table copy could not start transaction on publisher: %s" -msgstr "копії таблиці не вдалося запустити транзакцію на сервері публікації: %s" +msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" +msgstr "працівник синхронізації таблиць для підписки \"%s\" не зміг підключитися до видавця: %s" -#: replication/logical/tablesync.c:1472 +#: replication/logical/tablesync.c:1480 #, c-format -msgid "replication origin \"%s\" already exists" -msgstr "джерело реплікації \"%s\" вже існує" +msgid "table copy could not start transaction on publisher: %s" +msgstr "копії таблиці не вдалося запустити транзакцію на сервері публікації: %s" -#: replication/logical/tablesync.c:1505 replication/logical/worker.c:2361 +#: replication/logical/tablesync.c:1540 replication/logical/worker.c:2378 #, c-format msgid "user \"%s\" cannot replicate into relation with row-level security enabled: \"%s\"" msgstr "користувач \"%s\" не може реплікувати у відношення з увімкненим захистом на рівні рядків: \"%s\"" -#: replication/logical/tablesync.c:1518 +#: replication/logical/tablesync.c:1553 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "копії таблиці не вдалося завершити транзакцію на сервері публікації: %s" -#: replication/logical/worker.c:481 +#: replication/logical/worker.c:474 #, c-format msgid "logical replication parallel apply worker for subscription \"%s\" will stop" msgstr "застосовуючий процес логічної реплікації для підписки \"%s\" буде зупинено" -#: replication/logical/worker.c:483 +#: replication/logical/worker.c:476 #, c-format msgid "Cannot handle streamed replication transactions using parallel apply workers until all tables have been synchronized." msgstr "Неможливо обробляти транзакції потокової реплікації з використанням паралельних застосовуючих працівників, доки не буде синхронізовано всі таблиці." -#: replication/logical/worker.c:852 replication/logical/worker.c:967 +#: replication/logical/worker.c:846 replication/logical/worker.c:961 #, c-format msgid "incorrect binary data format in logical replication column %d" msgstr "невірний формат двійкових даних в стовпці логічної реплікації %d" -#: replication/logical/worker.c:2500 +#: replication/logical/worker.c:2525 #, 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:2507 +#: replication/logical/worker.c:2532 #, 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:3371 +#: replication/logical/worker.c:3467 #, c-format msgid "invalid logical replication message type \"??? (%d)\"" msgstr "неприпустимий тип повідомлення логічної реплікації \"??? (%d)\"" -#: replication/logical/worker.c:3543 +#: replication/logical/worker.c:3639 #, c-format msgid "data stream from publisher has ended" msgstr "потік даних з серверу публікації завершився" -#: replication/logical/worker.c:3697 +#: replication/logical/worker.c:3793 #, c-format msgid "terminating logical replication worker due to timeout" msgstr "завершення процесу логічної реплікації через тайм-аут" -#: replication/logical/worker.c:3891 +#: replication/logical/worker.c:3990 #, c-format msgid "logical replication worker for subscription \"%s\" will stop because the subscription was removed" msgstr "процес логічної реплікації для підписки \"%s\" буде зупинено, тому, що підписка була видалена" -#: replication/logical/worker.c:3905 +#: replication/logical/worker.c:4004 #, c-format msgid "logical replication worker for subscription \"%s\" will stop because the subscription was disabled" msgstr "процес логічної реплікації для підписки \"%s\" буде зупинено, тому, що підписка була вимкнута" -#: replication/logical/worker.c:3936 +#: replication/logical/worker.c:4035 #, c-format msgid "logical replication parallel apply worker for subscription \"%s\" will stop because of a parameter change" msgstr "процес, що застосовує паралельну логічну реплікацію для підписки \"%s\", буде зупинено через зміну параметру" -#: replication/logical/worker.c:3940 +#: replication/logical/worker.c:4039 #, c-format msgid "logical replication worker for subscription \"%s\" will restart because of a parameter change" msgstr "процес логічної реплікації для підписки \"%s\", буде перезавантажено через зміну параметру" -#: replication/logical/worker.c:3954 +#: replication/logical/worker.c:4053 #, c-format msgid "logical replication parallel apply worker for subscription \"%s\" will stop because the subscription owner's superuser privileges have been revoked" msgstr "логічна реплікація паралельного аплікатора для підписки \"%s\" буде зупинена, оскільки права суперкористувача власника підписки було відкликано" -#: replication/logical/worker.c:3958 +#: replication/logical/worker.c:4057 #, c-format msgid "logical replication worker for subscription \"%s\" will restart because the subscription owner's superuser privileges have been revoked" msgstr "працівник логічної реплікації для підписки \"%s\" буде перезапущено, оскільки права суперкористувача власника підписки було відкликано" -#: replication/logical/worker.c:4478 +#: replication/logical/worker.c:4567 #, c-format msgid "subscription has no replication slot set" msgstr "для підписки не встановлений слот реплікації" -#: replication/logical/worker.c:4591 +#: replication/logical/worker.c:4592 +#, c-format +msgid "apply worker for subscription \"%s\" could not connect to the publisher: %s" +msgstr "працівник застосування для підписки \"%s\" не зміг підключитися до видавця: %s" + +#: replication/logical/worker.c:4696 #, c-format msgid "logical replication worker for subscription %u will not start because the subscription was removed during startup" msgstr "процес логічної реплікації для підписки %u не буде почато, тому, що підписка була видалена під час запуску" -#: replication/logical/worker.c:4607 +#: replication/logical/worker.c:4712 #, c-format msgid "logical replication worker for subscription \"%s\" will not start because the subscription was disabled during startup" msgstr "процес логічної реплікації для підписки \"%s\" не буде почато, тому, що підписка була вимкнута під час запуску" -#: replication/logical/worker.c:4631 +#: replication/logical/worker.c:4736 #, c-format msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has started" msgstr "просец синхронізації таблиці під час логічної реплікації для підписки \"%s\", таблиці \"%s\" запущений" -#: replication/logical/worker.c:4636 +#: replication/logical/worker.c:4741 #, c-format msgid "logical replication apply worker for subscription \"%s\" has started" msgstr "застосовуючий процес логічної реплікації для підписки \"%s\" запущений" -#: replication/logical/worker.c:4758 +#: replication/logical/worker.c:4875 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "підписка \"%s\" була відключена через помилку" -#: replication/logical/worker.c:4806 +#: replication/logical/worker.c:4923 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "логічна реплікація починає пропускати транзакцію в LSN %X/%X" -#: replication/logical/worker.c:4820 +#: replication/logical/worker.c:4937 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "логічна реплікація завершила пропускати транзакцію в LSN %X/%X" -#: replication/logical/worker.c:4902 +#: replication/logical/worker.c:5025 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "очищено LSN пропуску підписки \"%s\"" -#: replication/logical/worker.c:4903 +#: replication/logical/worker.c:5026 #, c-format msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X." msgstr "Кінцеве розташування WAL віддаленої транзакції (LSN) %X/%X не відповідає skip-LSN %X/%X." -#: replication/logical/worker.c:4940 +#: replication/logical/worker.c:5054 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\"" msgstr "обробка віддалених даних для джерела реплікації \"%s\" під час повідомлення типу \"%s\"" -#: replication/logical/worker.c:4944 +#: replication/logical/worker.c:5058 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u" msgstr "обробка віддалених даних для джерела реплікації \"%s\" під час повідомлення типу \"%s\" у транзакції %u" -#: replication/logical/worker.c:4949 +#: replication/logical/worker.c:5063 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X" msgstr "обробку віддалених даних для джерела реплікації \"%s\" під час повідомлення типу \"%s\" у транзакції %u завершено о %X/%X" -#: replication/logical/worker.c:4960 +#: replication/logical/worker.c:5074 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u" msgstr "обробка віддалених даних для джерела реплікації \"%s\" під час повідомлення типу \"%s\" для цільового відношення реплікації \"%s.%s\" в транзакції %u" -#: replication/logical/worker.c:4967 +#: replication/logical/worker.c:5081 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u, finished at %X/%X" msgstr "обробку віддалених даних для джерела реплікації \"%s\" під час повідомлення типу \"%s\" для цільового відношення реплікації \"%s.%s\" в транзакції %u завершено о %X/%X" -#: replication/logical/worker.c:4978 +#: replication/logical/worker.c:5092 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u" msgstr "обробка віддалених даних для джерела реплікації \"%s\" під час повідомлення типу \"%s\" для цільового відношення реплікації \"%s.%s\" стовпчик \"%s\" у транзакції %u" -#: replication/logical/worker.c:4986 +#: replication/logical/worker.c:5100 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u, finished at %X/%X" msgstr "обробку віддалених даних для джерела реплікації \"%s\" під час повідомлення типу \"%s\" для цільового відношення реплікації \"%s.%s\" стовпчик \"%s\" у транзакції %u завершено о %X/%X" -#: replication/pgoutput/pgoutput.c:315 +#: replication/pgoutput/pgoutput.c:329 #, c-format msgid "invalid proto_version" msgstr "неприпустиме значення proto_version" -#: replication/pgoutput/pgoutput.c:320 +#: replication/pgoutput/pgoutput.c:334 #, c-format msgid "proto_version \"%s\" out of range" msgstr "значення proto_version \"%s\" за межами діапазону" -#: replication/pgoutput/pgoutput.c:337 +#: replication/pgoutput/pgoutput.c:351 #, c-format msgid "invalid publication_names syntax" msgstr "неприпустимий синтаксис publication_names" -#: replication/pgoutput/pgoutput.c:407 replication/pgoutput/pgoutput.c:411 +#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 #, c-format msgid "option \"%s\" missing" msgstr "параметр \"%s\" відсутній" -#: replication/pgoutput/pgoutput.c:452 +#: replication/pgoutput/pgoutput.c:492 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or lower" msgstr "клієнт передав proto_version=%d, але сервер підтримує лише протокол %d або нижче" -#: replication/pgoutput/pgoutput.c:458 +#: replication/pgoutput/pgoutput.c:498 #, c-format msgid "client sent proto_version=%d but server only supports protocol %d or higher" msgstr "клієнт передав proto_version=%d, але сервер підтримує лише протокол %d або вище" -#: replication/pgoutput/pgoutput.c:473 +#: replication/pgoutput/pgoutput.c:513 #, c-format msgid "requested proto_version=%d does not support streaming, need %d or higher" msgstr "запитувана proto_version=%d не підтримує потокову передачу, потребується %d або вища" -#: replication/pgoutput/pgoutput.c:479 +#: replication/pgoutput/pgoutput.c:519 #, c-format msgid "requested proto_version=%d does not support parallel streaming, need %d or higher" msgstr "запитувана proto_version=%d не підтримує паралельний потік, потрібно %d або вище" -#: replication/pgoutput/pgoutput.c:484 +#: replication/pgoutput/pgoutput.c:524 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "запитане потокова передавача, але не підтримується плагіном виводу" -#: replication/pgoutput/pgoutput.c:498 +#: replication/pgoutput/pgoutput.c:538 #, c-format msgid "requested proto_version=%d does not support two-phase commit, need %d or higher" msgstr "запитувана proto_version=%d не підтримує двоетапне затвердження, потрібна %d або вища" -#: replication/pgoutput/pgoutput.c:503 +#: replication/pgoutput/pgoutput.c:543 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "запитано двоетапне затвердження, але не підтримується плагіном виводу" -#: replication/slot.c:260 +#: replication/pgoutput/pgoutput.c:1108 +#, c-format +msgid "cannot use different values of publish_generated_columns for table \"%s.%s\" in different publications" +msgstr "не можна використовувати різні значення publish_generated_columns для таблиці \"%s.%s\" в різних публікаціях" + +#: replication/pgoutput/pgoutput.c:1811 +#, c-format +msgid "skipped loading publication \"%s\"" +msgstr "пропущено завантаження публікації \"%s\"" + +#: replication/pgoutput/pgoutput.c:1812 +#, c-format +msgid "The publication does not exist at this point in the WAL." +msgstr "Публікація не існує в цій точці WAL." + +#: replication/pgoutput/pgoutput.c:1813 +#, c-format +msgid "Create the publication if it does not exist." +msgstr "Створіть публікацію, якщо вона не існує." + +#: replication/slot.c:313 #, c-format msgid "replication slot name \"%s\" is too short" msgstr "ім'я слоту реплікації \"%s\" занадто коротке" -#: replication/slot.c:269 +#: replication/slot.c:321 #, c-format msgid "replication slot name \"%s\" is too long" msgstr "ім'я слоту реплікації \"%s\" занадто довге" -#: replication/slot.c:282 +#: replication/slot.c:333 #, c-format msgid "replication slot name \"%s\" contains invalid character" msgstr "ім'я слоту реплікації \"%s\" містить неприпустимий символ" -#: replication/slot.c:284 -#, c-format +#: replication/slot.c:334 msgid "Replication slot names may only contain lower case letters, numbers, and the underscore character." msgstr "Імена слота реплікації можуть містити лише букви в нижньому кейсі, числа, і символ підкреслення." -#: replication/slot.c:333 +#: replication/slot.c:383 #, c-format msgid "cannot enable failover for a replication slot created on the standby" msgstr "не вдається увімкнути відмовостійкість для слота реплікації, створеного в режимі очікування" -#: replication/slot.c:345 replication/slot.c:849 +#: replication/slot.c:395 replication/slot.c:921 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "не вдається увімкнути відмовостійкість для тимчасового слота реплікації" -#: replication/slot.c:370 +#: replication/slot.c:420 #, c-format msgid "replication slot \"%s\" already exists" msgstr "слот реплікації \"%s\" вже існує" -#: replication/slot.c:380 +#: replication/slot.c:430 #, c-format msgid "all replication slots are in use" msgstr "використовуються всі слоти реплікації" -#: replication/slot.c:381 +#: replication/slot.c:431 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Звільніть непотрібні або збільшіть \"max_replication_slots\"." -#: replication/slot.c:560 replication/slot.c:2453 replication/slotfuncs.c:661 -#: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:728 +#: replication/slot.c:615 replication/slotfuncs.c:664 +#: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:739 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "слот реплікації \"%s\" не існує" -#: replication/slot.c:606 replication/slot.c:1337 +#: replication/slot.c:670 replication/slot.c:1495 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "слот реплікації \"%s\" активний для PID %d" -#: replication/slot.c:638 +#: replication/slot.c:687 +#, c-format +msgid "can no longer access replication slot \"%s\"" +msgstr "більше не можна отримати доступ до слоту реплікації \"%s\"" + +#: replication/slot.c:689 +#, c-format +msgid "This replication slot has been invalidated due to \"%s\"." +msgstr "Цей слот реплікації був анульований через \"%s\"." + +#: replication/slot.c:708 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "придбано слот логічної реплікації \"%s\"" -#: replication/slot.c:640 +#: replication/slot.c:710 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "придбано фізичний слот реплікації \"%s\"" -#: replication/slot.c:729 +#: replication/slot.c:795 #, c-format msgid "released logical replication slot \"%s\"" msgstr "звільнено слот логічної реплікації \"%s\"" -#: replication/slot.c:731 +#: replication/slot.c:797 #, c-format msgid "released physical replication slot \"%s\"" msgstr "звільнено фізичний слот реплікації \"%s\"" -#: replication/slot.c:797 +#: replication/slot.c:863 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "не може скинути слот реплікації \"%s\"" -#: replication/slot.c:816 +#: replication/slot.c:886 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "не може використовувати %s з фізичним слотом реплікації" -#: replication/slot.c:828 +#: replication/slot.c:898 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "не може змінювати слот реплікації \"%s\"" -#: replication/slot.c:838 +#: replication/slot.c:908 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "не вдається увімкнути обхід відмови для слота реплікації в режимі очікування" -#: replication/slot.c:969 replication/slot.c:1927 replication/slot.c:2311 +#: replication/slot.c:1056 replication/slot.c:2224 replication/slot.c:2617 #, c-format msgid "could not remove directory \"%s\"" msgstr "не вдалося видалити каталог \"%s\"" -#: replication/slot.c:1372 +#: replication/slot.c:1530 #, c-format msgid "replication slots can only be used if \"max_replication_slots\" > 0" msgstr "слоти реплікації можна використовувати лише якщо \"max_replication_slots\" > 0" -#: replication/slot.c:1377 +#: replication/slot.c:1535 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "слоти реплікації можна використовувати лише якщо \"wal_level\" >= \"replica\"" -#: replication/slot.c:1389 +#: replication/slot.c:1547 #, c-format msgid "permission denied to use replication slots" msgstr "немає дозволу для використання слотів реплікації" -#: replication/slot.c:1390 +#: replication/slot.c:1548 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "Тільки ролі з атрибутом %s можуть використовувати слоти реплікації." -#: replication/slot.c:1498 +#: replication/slot.c:1660 #, c-format -msgid "The slot's restart_lsn %X/%X exceeds the limit by %llu byte." -msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by %llu bytes." -msgstr[0] "Значення restart_lsn слота %X/%X перевищує ліміт на %llu байт." -msgstr[1] "Значення restart_lsn слота %X/%X перевищує ліміт на %llu байта." -msgstr[2] "Значення restart_lsn слота %X/%X перевищує ліміт на %llu байтів." -msgstr[3] "Значення restart_lsn слота %X/%X перевищує ліміт на %llu байтів." +msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." +msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by % bytes." +msgstr[0] "Значення restart_lsn слота %X/%X перевищує ліміт на % байт." +msgstr[1] "Значення restart_lsn слота %X/%X перевищує ліміт на % байтів." +msgstr[2] "Значення restart_lsn слота %X/%X перевищує ліміт на % байтів." +msgstr[3] "Значення restart_lsn слота %X/%X перевищує ліміт на % байтів." -#: replication/slot.c:1506 +#: replication/slot.c:1671 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "Слот конфліктував з горизонтом xid %u." -#: replication/slot.c:1511 +#: replication/slot.c:1676 msgid "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the primary server." msgstr "Логічне декодування на резервному сервері вимагає \"wal_level\" >= \"logical\" на основному сервері." -#: replication/slot.c:1519 +#. translator: %s is a GUC variable name +#: replication/slot.c:1682 #, c-format -msgid "terminating process %d to release replication slot \"%s\"" +msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." +msgstr "Час простою слоту %ld с перевищує налаштовану тривалість \"%s\" %d с." + +#: replication/slot.c:1696 +#, c-format +msgid "terminating process %d to release replication slot \"%s\"" msgstr "завершення процесу %d для звільнення слоту реплікації \"%s\"" -#: replication/slot.c:1521 +#: replication/slot.c:1698 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "анулювання застарілого слоту реплікації \"%s\"" -#: replication/slot.c:2249 +#: replication/slot.c:2555 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "файл слоту реплікації \"%s\" має неправильне магічне число: %u замість %u" -#: replication/slot.c:2256 +#: replication/slot.c:2562 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "файл слоту реплікації \"%s\" має непідтримуючу версію %u" -#: replication/slot.c:2263 +#: replication/slot.c:2569 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "файл слоту реплікації \"%s\" має пошкоджену довжину %u" -#: replication/slot.c:2299 +#: replication/slot.c:2605 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "у файлі слоту реплікації \"%s\" невідповідність контрольної суми: %u, повинно бути %u" -#: replication/slot.c:2333 +#: replication/slot.c:2641 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "слот логічної реплікації \"%s\" існує, але \"wal_level\" < \"logical\"" -#: replication/slot.c:2335 +#: replication/slot.c:2643 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Змініть \"wal_level\" на \"logical\" або вище." -#: replication/slot.c:2339 +#: replication/slot.c:2655 +#, c-format +msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" +msgstr "слот логічної реплікації \"%s\" існує на резервному сервері, але hot_standby = off\"" + +#: replication/slot.c:2657 +#, c-format +msgid "Change \"hot_standby\" to be \"on\"." +msgstr "Змінити \"hot_standby\" у значення \"on\"." + +#: replication/slot.c:2662 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "слот фізичної реплікації \"%s\" існує, але \"wal_level\" < \"replica\"" -#: replication/slot.c:2341 +#: replication/slot.c:2664 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Змініть \"wal_level\" на \"replica\" або вище." -#: replication/slot.c:2383 +#: replication/slot.c:2711 #, c-format msgid "too many replication slots active before shutdown" msgstr "перед завершенням роботи активно занадто багато слотів реплікації" -#: replication/slot.c:2461 +#: replication/slot.c:2712 #, c-format -msgid "\"%s\" is not a physical replication slot" -msgstr "\"%s\" не є фізичним слотом реплікації" +msgid "Increase \"max_replication_slots\" and try again." +msgstr "Збільшіть \"max_replication_slots\" і спробуйте знову." -#: replication/slot.c:2638 +#: replication/slot.c:2949 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "слот реплікації \"%s\", вказаний в параметрі \"%s\", не існує" -#: replication/slot.c:2640 replication/slot.c:2681 replication/slot.c:2696 +#: replication/slot.c:2951 replication/slot.c:2985 replication/slot.c:3000 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "Логічна реплікація чекає на слоті реплікації, що пов'язана з слотом реплікації \"%s\"." -#: replication/slot.c:2642 +#: replication/slot.c:2953 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "Створіть слот реплікації \"%s\" або змініть параметр \"%s\"." -#: replication/slot.c:2659 +#: replication/slot.c:2963 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "неможливо вказати слот логічної реплікації \"%s\" в параметрі \"%s\"" -#: replication/slot.c:2661 +#: replication/slot.c:2965 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "Логічна реплікація очікує на корекцію на слоті реплікації \"%s\"." -#: replication/slot.c:2663 +#: replication/slot.c:2967 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "Приберіть слот логічної реплікації \"%s\" з параметру \"%s\"." -#: replication/slot.c:2679 +#: replication/slot.c:2983 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" -msgstr "" +msgstr "слот фізичної реплікації \"%s\" вказаний у параметрі \"%s\" було анульовано" -#: replication/slot.c:2683 +#: replication/slot.c:2987 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." -msgstr "" +msgstr "Видаліть і повторно створіть слот реплікації \"%s\" або змініть параметр \"%s\"." -#: replication/slot.c:2694 +#: replication/slot.c:2998 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not have active_pid" -msgstr "" +msgstr "слот реплікації \"%s\", вказаний в параметрі \"%s\", не має active_pid" -#: replication/slot.c:2698 +#: replication/slot.c:3002 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." -msgstr "" +msgstr "Запустіть резервний сервер асоційований зі слотом реплікації \"%s\" або змініть параметр \"%s\"." -#: replication/slotfuncs.c:526 +#: replication/slotfuncs.c:529 #, c-format msgid "invalid target WAL LSN" msgstr "неприпустима ціль WAL LSN" -#: replication/slotfuncs.c:548 +#: replication/slotfuncs.c:551 #, c-format msgid "replication slot \"%s\" cannot be advanced" msgstr "слот реплікації \"%s\" не може бути розширеним" -#: replication/slotfuncs.c:550 +#: replication/slotfuncs.c:553 #, c-format msgid "This slot has never previously reserved WAL, or it has been invalidated." msgstr "Цей слот ніколи раніше не резервував WAL, або він був недійсним." -#: replication/slotfuncs.c:566 +#: replication/slotfuncs.c:569 #, c-format msgid "cannot advance replication slot to %X/%X, minimum is %X/%X" msgstr "просунути слот реплікації до позиції %X/%X не можна, мінімальна позиція %X/%X" -#: replication/slotfuncs.c:673 +#: replication/slotfuncs.c:676 #, c-format msgid "cannot copy physical replication slot \"%s\" as a logical replication slot" msgstr "не можна скопіювати слот фізичної реплікації \"%s\" як слот логічної реплікації" -#: replication/slotfuncs.c:675 +#: replication/slotfuncs.c:678 #, c-format msgid "cannot copy logical replication slot \"%s\" as a physical replication slot" msgstr "не можна скопіювати слот логічної реплікації \"%s\" як слот фізичної реплікації" -#: replication/slotfuncs.c:682 +#: replication/slotfuncs.c:685 #, c-format msgid "cannot copy a replication slot that doesn't reserve WAL" msgstr "не можна скопіювати слот реплікації, який не резервує WAL" -#: replication/slotfuncs.c:768 +#: replication/slotfuncs.c:691 +#, c-format +msgid "cannot copy invalidated replication slot \"%s\"" +msgstr "неможливо скопіювати недопустимий слот логічної реплікації \"%s\"" + +#: replication/slotfuncs.c:783 #, c-format msgid "could not copy replication slot \"%s\"" msgstr "не вдалося скопіювати слот реплікації \"%s\"" -#: replication/slotfuncs.c:770 +#: replication/slotfuncs.c:785 #, c-format msgid "The source replication slot was modified incompatibly during the copy operation." msgstr "Слот реплікації джерела був змінений несумісно під час операції копіювання." -#: replication/slotfuncs.c:776 +#: replication/slotfuncs.c:791 #, c-format msgid "cannot copy unfinished logical replication slot \"%s\"" msgstr "не можна скопіювати незавершений слот логічної реплікації \"%s\"" -#: replication/slotfuncs.c:778 +#: replication/slotfuncs.c:793 #, c-format msgid "Retry when the source replication slot's confirmed_flush_lsn is valid." msgstr "Повторіть, коли confirmed_flush_lsn слоту джерела реплікації є дійсним." -#: replication/slotfuncs.c:877 +#: replication/slotfuncs.c:805 +#, c-format +msgid "cannot copy replication slot \"%s\"" +msgstr "неможливо скопіювати слоту реплікації \"%s\"" + +#: replication/slotfuncs.c:807 +#, c-format +msgid "The source replication slot was invalidated during the copy operation." +msgstr "Слот реплікації джерела був анульований під час операції копії." + +#: replication/slotfuncs.c:906 #, c-format msgid "replication slots can only be synchronized to a standby server" msgstr "слоти реплікації можна синхронізувати лише з резервним сервером" -#: replication/syncrep.c:261 +#: replication/syncrep.c:304 #, c-format msgid "canceling the wait for synchronous replication and terminating connection due to administrator command" msgstr "скасування очікування синхронної реплікації і завершення з'єднання по команді адміністратора" -#: replication/syncrep.c:262 replication/syncrep.c:279 +#: replication/syncrep.c:305 replication/syncrep.c:322 #, c-format msgid "The transaction has already committed locally, but might not have been replicated to the standby." msgstr "Транзакція вже була затверджена локально, але можливо не була реплікована до режиму очікування." -#: replication/syncrep.c:278 +#: replication/syncrep.c:321 #, c-format msgid "canceling wait for synchronous replication due to user request" msgstr "скасування очікування синхронної реплікації по запиту користувача" -#: replication/syncrep.c:485 +#: replication/syncrep.c:528 #, c-format msgid "standby \"%s\" is now a synchronous standby with priority %d" msgstr "очікування \"%s\" тепер є синхронним очікуванням з пріоритетом %d" -#: replication/syncrep.c:489 +#: replication/syncrep.c:532 #, c-format msgid "standby \"%s\" is now a candidate for quorum synchronous standby" msgstr "режим очікування \"%s\" зараз є кандидатом для включення в кворум синхронних" -#: replication/syncrep.c:1013 +#: replication/syncrep.c:1081 #, c-format -msgid "\"synchronous_standby_names\" parser failed" -msgstr "" +msgid "\"%s\" parser failed." +msgstr "Аналізатор \"%s\" дав збій." -#: replication/syncrep.c:1019 +#: replication/syncrep.c:1088 #, c-format msgid "number of synchronous standbys (%d) must be greater than zero" msgstr "кількість синхронних режимів очікування (%d) повинно бути більше нуля" -#: replication/walreceiver.c:176 +#: replication/walreceiver.c:276 #, c-format -msgid "terminating walreceiver process due to administrator command" -msgstr "завершення процесу walreceiver по команді адміністратора" +msgid "streaming replication receiver \"%s\" could not connect to the primary server: %s" +msgstr "отримувач потокової реплікації \"%s\" не зміг підключитися до основного сервера: %s" -#: replication/walreceiver.c:354 +#: replication/walreceiver.c:324 #, c-format msgid "database system identifier differs between the primary and standby" msgstr "ідентифікатор системи бази даних на основному і резервному серверах відрізняються" -#: replication/walreceiver.c:355 +#: replication/walreceiver.c:325 #, c-format msgid "The primary's identifier is %s, the standby's identifier is %s." msgstr "Ідентифікатор на основному сервері %s, на резервному %s." -#: replication/walreceiver.c:366 +#: replication/walreceiver.c:336 #, c-format msgid "highest timeline %u of the primary is behind recovery timeline %u" msgstr "остання часова шкала %u на основному сервері відстає від відновлюючої часової шкали %u" -#: replication/walreceiver.c:419 +#: replication/walreceiver.c:389 #, c-format msgid "started streaming WAL from primary at %X/%X on timeline %u" msgstr "запущено потокове передавання WAL з основного серверу з позиції %X/%X на часовій шкалі %u" -#: replication/walreceiver.c:423 +#: replication/walreceiver.c:393 #, c-format msgid "restarted WAL streaming at %X/%X on timeline %u" msgstr "перезапуска потокового передавання WAL з позиції %X/%X на часовій шкалі %u" -#: replication/walreceiver.c:458 +#: replication/walreceiver.c:428 #, c-format msgid "cannot continue WAL streaming, recovery has already ended" msgstr "продовжити потокове передавання WAL не можна, відновлення вже завершено" -#: replication/walreceiver.c:502 +#: replication/walreceiver.c:472 #, c-format msgid "replication terminated by primary server" msgstr "реплікація завершена основним сервером" -#: replication/walreceiver.c:503 +#: replication/walreceiver.c:473 #, c-format msgid "End of WAL reached on timeline %u at %X/%X." msgstr "На часовій шкалі %u в позиції %X/%X WAL досяг кінця." -#: replication/walreceiver.c:593 +#: replication/walreceiver.c:573 #, c-format msgid "terminating walreceiver due to timeout" msgstr "завершення процесу walreceiver через тайм-аут" -#: replication/walreceiver.c:625 +#: replication/walreceiver.c:605 #, c-format msgid "primary server contains no more WAL on requested timeline %u" msgstr "основний сервер більше не містить WAL для запитаної часової шкали %u" -#: replication/walreceiver.c:641 replication/walreceiver.c:1071 +#: replication/walreceiver.c:621 replication/walreceiver.c:1063 #, c-format msgid "could not close WAL segment %s: %m" msgstr "не вдалося закрити сегмент WAL %s: %m" -#: replication/walreceiver.c:760 +#: replication/walreceiver.c:740 #, c-format msgid "fetching timeline history file for timeline %u from primary server" msgstr "отримання файлу історії часової шкали для часової шкали %u з основного серверу" -#: replication/walreceiver.c:959 +#: replication/walreceiver.c:951 #, c-format msgid "could not write to WAL segment %s at offset %d, length %lu: %m" msgstr "не вдалося записати у сегмент WAL %s зі зміщенням %d, довжиною %lu: %m" -#: replication/walsender.c:531 +#: replication/walsender.c:519 #, c-format msgid "cannot use %s with a logical replication slot" msgstr "використовувати %s зі слотом логічної реплікації не можна" -#: replication/walsender.c:635 storage/smgr/md.c:1723 +#: replication/walsender.c:623 storage/smgr/md.c:1867 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "не вдалося досягти кінця файлу \"%s\": %m" -#: replication/walsender.c:639 +#: replication/walsender.c:627 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "не вдалося знайти початок файлу \"%s\": %m" -#: replication/walsender.c:853 +#: replication/walsender.c:843 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "використовувати логічний слот реплікації для фізичної реплікації, не можна" -#: replication/walsender.c:919 +#: replication/walsender.c:909 #, c-format msgid "requested starting point %X/%X on timeline %u is not in this server's history" msgstr "в історії серверу немає запитаної початкової точки %X/%X на часовій шкалі %u" -#: replication/walsender.c:922 +#: replication/walsender.c:912 #, c-format msgid "This server's history forked from timeline %u at %X/%X." msgstr "Історія цього серверу відгалузилась від часової шкали %u в позиції %X/%X." -#: replication/walsender.c:966 +#: replication/walsender.c:956 #, c-format 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:1160 -#, c-format -msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" -msgstr "нерозпізнане значення для параметру CREATE_REPLICATION_SLOT \"%s\": \"%s\"" - #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1266 +#: replication/walsender.c:1257 #, c-format msgid "%s must not be called inside a transaction" msgstr "%s не має викликатися всередині транзакції" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1276 +#: replication/walsender.c:1267 #, c-format msgid "%s must be called inside a transaction" msgstr "%s має викликатися всередині транзакції" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1282 +#: replication/walsender.c:1273 #, c-format msgid "%s must be called in REPEATABLE READ isolation mode transaction" msgstr "%s повинен бути викликаний в режимі ізоляції REPEATABLE READ" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1287 +#: replication/walsender.c:1278 #, c-format msgid "%s must be called in a read-only transaction" msgstr "%s має викликатися в транзакції \"лише для читання\"" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1293 +#: replication/walsender.c:1284 #, c-format msgid "%s must be called before any query" msgstr "%s має викликатися до будь-якого запиту" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1299 +#: replication/walsender.c:1290 #, c-format msgid "%s must not be called in a subtransaction" msgstr "%s не має викликатися всередині підтранзакції" -#: replication/walsender.c:1472 +#: replication/walsender.c:1467 #, c-format msgid "terminating walsender process after promotion" msgstr "завершення процесу walsender після підвищення" -#: replication/walsender.c:2000 +#: replication/walsender.c:2010 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "не можна виконувати нові команди, поки процес відправки WAL знаходиться в режимі зупинки" -#: replication/walsender.c:2035 +#: replication/walsender.c:2064 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "не можна виконувати команди SQL в процесі відправки WAL для фізичної реплікації" -#: replication/walsender.c:2068 +#: replication/walsender.c:2095 #, c-format msgid "received replication command: %s" msgstr "отримано команду реплікації: %s" -#: replication/walsender.c:2076 tcop/fastpath.c:209 tcop/postgres.c:1142 -#: tcop/postgres.c:1500 tcop/postgres.c:1752 tcop/postgres.c:2234 -#: tcop/postgres.c:2672 tcop/postgres.c:2749 +#: replication/walsender.c:2103 tcop/fastpath.c:208 tcop/postgres.c:1137 +#: tcop/postgres.c:1494 tcop/postgres.c:1746 tcop/postgres.c:2251 +#: tcop/postgres.c:2688 tcop/postgres.c:2765 #, c-format msgid "current transaction is aborted, commands ignored until end of transaction block" msgstr "поточна транзакція перервана, команди до кінця блока транзакції пропускаються" -#: replication/walsender.c:2233 replication/walsender.c:2268 +#: replication/walsender.c:2263 replication/walsender.c:2298 #, c-format msgid "unexpected EOF on standby connection" msgstr "неочікуваний обрив з'єднання з резервним сервером" -#: replication/walsender.c:2256 +#: replication/walsender.c:2286 #, c-format msgid "invalid standby message type \"%c\"" msgstr "неприпустимий тип повідомлення резервного серверу \"%c\"" -#: replication/walsender.c:2345 +#: replication/walsender.c:2375 #, c-format msgid "unexpected message type \"%c\"" msgstr "неочікуваний тип повідомлення \"%c\"" -#: replication/walsender.c:2759 +#: replication/walsender.c:2789 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "завершення процесу walsender через тайм-аут реплікації" @@ -21652,286 +22492,286 @@ msgstr "правило \"%s\" для відношення \"%s\" не існує msgid "renaming an ON SELECT rule is not allowed" msgstr "не допускається перейменування правила ON SELECT" -#: rewrite/rewriteHandler.c:582 +#: rewrite/rewriteHandler.c:590 #, c-format msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten" msgstr "Ім'я запиту WITH \"%s\" з'являється і в дії правила, і в переписаному запиті" -#: rewrite/rewriteHandler.c:609 +#: rewrite/rewriteHandler.c:620 #, c-format msgid "INSERT ... SELECT rule actions are not supported for queries having data-modifying statements in WITH" msgstr "Дії правил INSERT ... SELECT не підтримуються для запитів, які змінюють дані в операторах WITH" -#: rewrite/rewriteHandler.c:662 +#: rewrite/rewriteHandler.c:674 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "списки RETURNING може мати лише одне правило" -#: rewrite/rewriteHandler.c:894 rewrite/rewriteHandler.c:933 +#: rewrite/rewriteHandler.c:911 rewrite/rewriteHandler.c:950 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "вставити значення non-DEFAULT до стовпця \"%s\" не можна" -#: rewrite/rewriteHandler.c:896 rewrite/rewriteHandler.c:962 +#: rewrite/rewriteHandler.c:913 rewrite/rewriteHandler.c:979 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "Стовпець \"%s\" є ідентифікаційним стовпцем визначеним як GENERATED ALWAYS." -#: rewrite/rewriteHandler.c:898 +#: rewrite/rewriteHandler.c:915 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "Для зміни використайте OVERRIDING SYSTEM VALUE." -#: rewrite/rewriteHandler.c:960 rewrite/rewriteHandler.c:968 +#: rewrite/rewriteHandler.c:977 rewrite/rewriteHandler.c:985 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "стовпець \"%s\" може бути оновлено тільки до DEFAULT" -#: rewrite/rewriteHandler.c:1115 rewrite/rewriteHandler.c:1133 +#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "кілька завдань для одного стовпця \"%s\"" -#: rewrite/rewriteHandler.c:1698 +#: rewrite/rewriteHandler.c:1694 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE не підтримує відношення з правилами." -#: rewrite/rewriteHandler.c:1738 rewrite/rewriteHandler.c:3229 +#: rewrite/rewriteHandler.c:1734 rewrite/rewriteHandler.c:3274 #, c-format msgid "access to non-system view \"%s\" is restricted" -msgstr "" +msgstr "доступ до несистемного подання \"%s\" обмежено" -#: rewrite/rewriteHandler.c:2119 rewrite/rewriteHandler.c:4221 +#: rewrite/rewriteHandler.c:2133 rewrite/rewriteHandler.c:4285 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "виявлена безкінечна рекурсія у правилах для відносин \"%s\"" -#: rewrite/rewriteHandler.c:2204 +#: rewrite/rewriteHandler.c:2238 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "виявлена безкінечна рекурсія в політиці для зв'язка \"%s\"" -#: rewrite/rewriteHandler.c:2556 +#: rewrite/rewriteHandler.c:2601 msgid "Junk view columns are not updatable." msgstr "Утилізовані стовпці подань не оновлюються." -#: rewrite/rewriteHandler.c:2561 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that are not columns of their base relation are not updatable." msgstr "Стовпці подання, які не є стовпцями базового зв'язку, не оновлюються." -#: rewrite/rewriteHandler.c:2564 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that refer to system columns are not updatable." msgstr "Стовпці подання, які посилаються на системні стовпці, не оновлюються." -#: rewrite/rewriteHandler.c:2567 +#: rewrite/rewriteHandler.c:2612 msgid "View columns that return whole-row references are not updatable." msgstr "Стовпці подання, що повертають посилання на весь рядок, не оновлюються." -#: rewrite/rewriteHandler.c:2628 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing DISTINCT are not automatically updatable." msgstr "Подання які містять DISTINCT не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2631 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing GROUP BY are not automatically updatable." msgstr "Подання які містять GROUP BY не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2634 +#: rewrite/rewriteHandler.c:2679 msgid "Views containing HAVING are not automatically updatable." msgstr "Подання які містять HAVING не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2637 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "Подання які містять UNION, INTERSECT, або EXCEPT не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2640 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing WITH are not automatically updatable." msgstr "Подання які містять WITH не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2643 +#: rewrite/rewriteHandler.c:2688 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "Подання які містять LIMIT або OFFSET не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2655 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return aggregate functions are not automatically updatable." msgstr "Подання які повертають агрегатні функції не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2658 +#: rewrite/rewriteHandler.c:2703 msgid "Views that return window functions are not automatically updatable." msgstr "Подання які повертають віконні функції не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2661 +#: rewrite/rewriteHandler.c:2706 msgid "Views that return set-returning functions are not automatically updatable." msgstr "Подання які повертають set-returning функції не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2668 rewrite/rewriteHandler.c:2672 -#: rewrite/rewriteHandler.c:2680 +#: rewrite/rewriteHandler.c:2713 rewrite/rewriteHandler.c:2717 +#: rewrite/rewriteHandler.c:2725 msgid "Views that do not select from a single table or view are not automatically updatable." msgstr "Подання які обирають дані не з одної таблиці або подання не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2683 +#: rewrite/rewriteHandler.c:2728 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "Подання які містять TABLESAMPLE не оновлюються автоматично." -#: rewrite/rewriteHandler.c:2707 +#: rewrite/rewriteHandler.c:2752 msgid "Views that have no updatable columns are not automatically updatable." msgstr "Подання які не мають оновлюваних стовпців не оновлюються автоматично." -#: rewrite/rewriteHandler.c:3088 rewrite/rewriteHandler.c:3123 +#: rewrite/rewriteHandler.c:3133 rewrite/rewriteHandler.c:3168 #, c-format msgid "cannot insert into view \"%s\"" msgstr "вставити дані в подання \"%s\" не можна" -#: rewrite/rewriteHandler.c:3091 +#: rewrite/rewriteHandler.c:3136 #, 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." -#: rewrite/rewriteHandler.c:3096 rewrite/rewriteHandler.c:3132 +#: rewrite/rewriteHandler.c:3141 rewrite/rewriteHandler.c:3177 #, c-format msgid "cannot update view \"%s\"" msgstr "оновити подання \"%s\" не можна" -#: rewrite/rewriteHandler.c:3099 +#: rewrite/rewriteHandler.c:3144 #, 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." -#: rewrite/rewriteHandler.c:3104 rewrite/rewriteHandler.c:3141 +#: rewrite/rewriteHandler.c:3149 rewrite/rewriteHandler.c:3186 #, c-format msgid "cannot delete from view \"%s\"" msgstr "видалити дані з подання \"%s\" не можна" -#: rewrite/rewriteHandler.c:3107 +#: rewrite/rewriteHandler.c:3152 #, 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." -#: rewrite/rewriteHandler.c:3126 +#: rewrite/rewriteHandler.c:3171 #, c-format msgid "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT trigger." -msgstr "" +msgstr "Щоб подання допускало вставку даних за допомогою MERGE, встановіть тригер INSTEAD OF INSERT." -#: rewrite/rewriteHandler.c:3135 +#: rewrite/rewriteHandler.c:3180 #, c-format msgid "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE trigger." -msgstr "" +msgstr "Щоб подання допускало оновлення даних за допомогою MERGE, встановіть тригер INSTEAD OF UPDATE." -#: rewrite/rewriteHandler.c:3144 +#: rewrite/rewriteHandler.c:3189 #, c-format msgid "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE trigger." -msgstr "" +msgstr "Щоб подання допускало видалення даних за допомогою MERGE, встановіть тригер INSTEAD OF DELETE." -#: rewrite/rewriteHandler.c:3319 +#: rewrite/rewriteHandler.c:3364 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "вставити дані в стовпець \"%s\" подання \"%s\" не можна" -#: rewrite/rewriteHandler.c:3327 +#: rewrite/rewriteHandler.c:3372 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "оновити дані в стовпці \"%s\" подання \"%s\" не можна" -#: rewrite/rewriteHandler.c:3335 +#: rewrite/rewriteHandler.c:3380 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" -msgstr "" +msgstr "неможливо об'єднати дані в стовпець \"%s\" подання \"%s\"" -#: rewrite/rewriteHandler.c:3363 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "cannot merge into view \"%s\"" -msgstr "" +msgstr "неможливо об'єднати дані в подання \"%s\"" -#: rewrite/rewriteHandler.c:3365 +#: rewrite/rewriteHandler.c:3410 #, c-format msgid "MERGE is not supported for views with INSTEAD OF triggers for some actions but not all." -msgstr "" +msgstr "MERGE не підтримується для подань з тригерами INSTEAD OF для деяких дій, але не всіх." -#: rewrite/rewriteHandler.c:3366 +#: rewrite/rewriteHandler.c:3411 #, c-format msgid "To enable merging into the view, either provide a full set of INSTEAD OF triggers or drop the existing INSTEAD OF triggers." -msgstr "" +msgstr "Щоб подання допускало об'єднання у нього, або встановіть повний набір тригерів INSTEAD OF або видаліть існуючі тригери INSTEAD OF." -#: rewrite/rewriteHandler.c:3879 +#: rewrite/rewriteHandler.c:3942 #, c-format msgid "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in WITH" msgstr "Правила DO INSTEAD NOTIFY не підтримуються для операторів, які змінюють дані в WITH" -#: rewrite/rewriteHandler.c:3890 +#: rewrite/rewriteHandler.c:3953 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH" msgstr "Правила DO INSTEAD NOTHING не підтримуються для операторів, які змінюють дані в WITH" -#: rewrite/rewriteHandler.c:3904 +#: rewrite/rewriteHandler.c:3967 #, c-format msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "умовні правила DO INSTEAD не підтримуються для операторів, які змінюють дані в WITH" -#: rewrite/rewriteHandler.c:3908 +#: rewrite/rewriteHandler.c:3971 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "Правила DO ALSO не підтримуються для операторів, які змінюють дані в WITH" -#: rewrite/rewriteHandler.c:3913 +#: rewrite/rewriteHandler.c:3976 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH" msgstr "складові правила DO INSTEAD не підтримуються операторами, які змінюють дані у WITH" -#: rewrite/rewriteHandler.c:4173 +#: rewrite/rewriteHandler.c:4237 msgid "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "Подання з умовними правилами DO INSTEAD не оновлюються автоматично." -#: rewrite/rewriteHandler.c:4270 +#: rewrite/rewriteHandler.c:4335 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "виконати INSERT RETURNING для зв'язка \"%s\" не можна" -#: rewrite/rewriteHandler.c:4272 +#: rewrite/rewriteHandler.c:4337 #, c-format msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." msgstr "Вам потрібне безумовне правило ON INSERT DO INSTEAD з реченням RETURNING." -#: rewrite/rewriteHandler.c:4277 +#: rewrite/rewriteHandler.c:4342 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "виконати UPDATE RETURNING для зв'язка \"%s\" не можна" -#: rewrite/rewriteHandler.c:4279 +#: rewrite/rewriteHandler.c:4344 #, c-format msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." msgstr "Вам потрібне безумовне правило ON UPDATE DO INSTEAD з реченням RETURNING." -#: rewrite/rewriteHandler.c:4284 +#: rewrite/rewriteHandler.c:4349 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "виконати DELETE RETURNING для зв'язка \"%s\" не можна" -#: rewrite/rewriteHandler.c:4286 +#: rewrite/rewriteHandler.c:4351 #, c-format msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." msgstr "Вам потрібне безумовне правило ON DELETE DO INSTEAD з реченням RETURNING." -#: rewrite/rewriteHandler.c:4304 +#: rewrite/rewriteHandler.c:4369 #, c-format msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules" msgstr "INSERT з реченням ON CONFLICT не можна використовувати з таблицею, яка має правила INSERT або UPDATE" -#: rewrite/rewriteHandler.c:4361 +#: rewrite/rewriteHandler.c:4426 #, c-format msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries" msgstr "WITH не можна використовувати в запиті, який переписаний правилами в декілька запитів" -#: rewrite/rewriteManip.c:1083 +#: rewrite/rewriteManip.c:1175 #, c-format msgid "conditional utility statements are not implemented" msgstr "умовні службові оператори не реалізовані" -#: rewrite/rewriteManip.c:1430 +#: rewrite/rewriteManip.c:1520 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "Умова WHERE CURRENT OF для подання не реалізована" -#: rewrite/rewriteManip.c:1765 +#: rewrite/rewriteManip.c:1923 #, 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 "Змінні NEW в правилах ON UPDATE не можуть посилатись на стовпці, які є частиною декілької призначень в команді UPDATE" @@ -21941,33 +22781,90 @@ msgstr "Змінні NEW в правилах ON UPDATE не можуть пос msgid "with a SEARCH or CYCLE clause, the recursive reference to WITH query \"%s\" must be at the top level of its right-hand SELECT" msgstr "з операторами SEARCH або CYCLE, рекурсивне посилання на запит WITH \"%s\" повинне розташовуватися на верхньому рівні його правої частини SELECT" -#: snowball/dict_snowball.c:215 +#: snowball/dict_snowball.c:220 #, c-format msgid "no Snowball stemmer available for language \"%s\" and encoding \"%s\"" msgstr "засіб визначення основи слова Snowball для мови \"%s\" і кодування \"%s\" не знайдено" -#: snowball/dict_snowball.c:238 tsearch/dict_ispell.c:74 -#: tsearch/dict_simple.c:49 +#: snowball/dict_snowball.c:243 tsearch/dict_ispell.c:75 +#: tsearch/dict_simple.c:50 #, c-format msgid "multiple StopWords parameters" msgstr "повторюваний параметр StopWords" -#: snowball/dict_snowball.c:247 +#: snowball/dict_snowball.c:252 #, c-format msgid "multiple Language parameters" msgstr "повторюваний параметр Language" -#: snowball/dict_snowball.c:254 +#: snowball/dict_snowball.c:259 #, c-format msgid "unrecognized Snowball parameter: \"%s\"" msgstr "нерозпізнаний параметр Snowball: \"%s\"" -#: snowball/dict_snowball.c:262 +#: snowball/dict_snowball.c:267 #, c-format msgid "missing Language parameter" msgstr "пропущений параметр Language" -#: statistics/extended_stats.c:176 +#: statistics/attribute_stats.c:192 statistics/attribute_stats.c:937 +#: statistics/relation_stats.c:98 +#, c-format +msgid "Statistics cannot be modified during recovery." +msgstr "Статистики не можна модифікувати під час відновлення." + +#: statistics/attribute_stats.c:205 +#, c-format +msgid "cannot specify both \"%s\" and \"%s\"" +msgstr "не можна вказати одночасно \"%s\" і \"%s\"" + +#: statistics/attribute_stats.c:231 +#, c-format +msgid "must specify either \"%s\" or \"%s\"" +msgstr "слід вказати або \"%s\", або \"%s\"" + +#: statistics/attribute_stats.c:239 +#, c-format +msgid "cannot modify statistics on system column \"%s\"" +msgstr "не можна змінити статистику для системного стовпця \"%s\"" + +#: statistics/attribute_stats.c:303 +#, c-format +msgid "could not determine element type of column \"%s\"" +msgstr "не вдалося визначити тип елемента стовпця \"%s\"" + +#: statistics/attribute_stats.c:304 statistics/attribute_stats.c:321 +#: statistics/attribute_stats.c:336 +#, c-format +msgid "Cannot set %s or %s." +msgstr "Не можна встановити %s або %s." + +#: statistics/attribute_stats.c:320 +#, c-format +msgid "could not determine less-than operator for column \"%s\"" +msgstr "не вдалося визначити оператор \"менше ніж\" для стовпця \"%s\"" + +#: statistics/attribute_stats.c:335 +#, c-format +msgid "column \"%s\" is not a range type" +msgstr "стовпець \"%s\" не є типом діапазону" + +#: statistics/attribute_stats.c:738 +#, c-format +msgid "\"%s\" array must not contain null values" +msgstr "масив \"%s\" не повинен містити null значення" + +#: statistics/attribute_stats.c:781 +#, c-format +msgid "maximum number of statistics slots exceeded: %d" +msgstr "перевищено максимальну кількість слотів статистики: %d" + +#: statistics/attribute_stats.c:949 +#, c-format +msgid "cannot clear statistics on system column \"%s\"" +msgstr "не можна очистити статистику для системного стовпця \"%s\"" + +#: statistics/extended_stats.c:175 #, c-format msgid "statistics object \"%s.%s\" could not be computed for relation \"%s.%s\"" msgstr "об'єкт статистики \"%s.%s\" не вдалося обчислити для відношення \"%s.%s\"" @@ -21977,57 +22874,229 @@ msgstr "об'єкт статистики \"%s.%s\" не вдалося обчи msgid "function returning record called in context that cannot accept type record" msgstr "функція, що повертає набір, викликана у контексті, що не приймає тип запис" -#: storage/buffer/bufmgr.c:649 storage/buffer/bufmgr.c:805 +#: statistics/relation_stats.c:117 #, c-format -msgid "cannot access temporary tables of other sessions" -msgstr "доступ до тимчасових таблиць з інших сесій заблоковано" +msgid "argument \"%s\" must not be less than -1.0" +msgstr "аргумент \"%s\" не повинен бути менше ніж -1.0" -#: storage/buffer/bufmgr.c:1532 +#: statistics/stat_utils.c:47 #, c-format -msgid "invalid page in block %u of relation %s; zeroing out page" -msgstr "неприпустима сторінка в блоці %u відношення %s; сторінка обнуляється" +msgid "argument \"%s\" must not be null" +msgstr "аргумент \"%s\" не повинен бути null" -#: storage/buffer/bufmgr.c:2277 storage/buffer/localbuf.c:361 +#: statistics/stat_utils.c:74 +#, c-format +msgid "argument \"%s\" must not be a multidimensional array" +msgstr "аргумент \"%s\" не повинен бути багатовимірним масивом" + +#: statistics/stat_utils.c:83 +#, c-format +msgid "argument \"%s\" array must not contain null values" +msgstr "масив аргументу \"%s\" не повинен містити null значення" + +#: statistics/stat_utils.c:114 +#, c-format +msgid "argument \"%s\" must be specified when argument \"%s\" is specified" +msgstr "аргумент \"%s\" повинен бути вказаний, коли вказаний аргумент \"%s\"" + +#: statistics/stat_utils.c:177 +#, c-format +msgid "index \"%s\" was concurrently dropped" +msgstr "індекс \"%s\" був паралельно видалений" + +#: statistics/stat_utils.c:192 +#, c-format +msgid "index \"%s\" was concurrently created" +msgstr "індекс \"%s\" був паралельно створений" + +#: statistics/stat_utils.c:212 +#, c-format +msgid "cannot modify statistics for relation \"%s\"" +msgstr "не можна змінити статистику для відношення \"%s\"" + +#: statistics/stat_utils.c:220 +#, c-format +msgid "cannot modify statistics for shared relation" +msgstr "не можна змінити статистику для спільного відношення" + +#: statistics/stat_utils.c:260 +#, c-format +msgid "unrecognized argument name: \"%s\"" +msgstr "нерозпізнана назва аргументу: \"%s\"" + +#: statistics/stat_utils.c:274 +#, c-format +msgid "argument \"%s\" has type %s, expected type %s" +msgstr "аргумент \"%s\" має тип %s, очікувався тип %s" + +#: statistics/stat_utils.c:315 +#, c-format +msgid "variadic arguments must be name/value pairs" +msgstr "варіативні аргументи повинні бути парами ім'я/значення" + +#: statistics/stat_utils.c:316 +#, c-format +msgid "Provide an even number of variadic arguments that can be divided into pairs." +msgstr "Надайте парну кількість варіативних аргументів, які можна розділити на пари." + +#: statistics/stat_utils.c:330 +#, c-format +msgid "name at variadic position %d is null" +msgstr "ім'я на варіативній позиції %d є null" + +#: statistics/stat_utils.c:334 +#, c-format +msgid "name at variadic position %d has type %s, expected type %s" +msgstr "ім'я на варіативній позиції %d має тип %s, очікувався тип %s" + +#: storage/aio/aio.c:1343 +#, c-format +msgid "Only -1 or values bigger than 0 are valid." +msgstr "Допустимі лише -1 або значення більше 0." + +#: storage/aio/method_io_uring.c:369 +msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." +msgstr "Перевірте, чи не вимкнено io_uring через /proc/sys/kernel/io_uring_disabled." + +#: storage/aio/method_io_uring.c:374 +#, c-format +msgid "Consider increasing \"ulimit -n\" to at least %d." +msgstr "Розгляньте можливість збільшення \"ulimit -n\" принаймні до %d." + +#: storage/aio/method_io_uring.c:380 +msgid "The kernel does not support io_uring." +msgstr "Ядро не підтримує io_uring." + +#: storage/aio/method_io_uring.c:388 +#, c-format +msgid "could not setup io_uring queue: %m" +msgstr "не вдалося налаштувати чергу io_uring: %m" + +#: storage/aio/method_io_uring.c:522 +#, c-format +msgid "completing I/O on behalf of process %d" +msgstr "завершення I/O від імені процесу %d" + +#: storage/aio/method_worker.c:382 +#, c-format +msgid "I/O worker executing I/O on behalf of process %d" +msgstr "працівник I/O виконує I/O від імені процесу %d" + +#: storage/buffer/bufmgr.c:662 storage/buffer/bufmgr.c:818 +#, c-format +msgid "cannot access temporary tables of other sessions" +msgstr "доступ до тимчасових таблиць з інших сесій заблоковано" + +#: storage/buffer/bufmgr.c:2703 storage/buffer/localbuf.c:393 #, c-format msgid "cannot extend relation %s beyond %u blocks" msgstr "не можна розширити відношення %s понад %u блоків" -#: storage/buffer/bufmgr.c:2348 +#: storage/buffer/bufmgr.c:2774 #, c-format -msgid "unexpected data beyond EOF in block %u of relation %s" -msgstr "неочікуванні дані після EOF в блоці %u відношення %s" +msgid "unexpected data beyond EOF in block %u of relation \"%s\"" +msgstr "неочікувані дані після EOF в блоці %u відношення \"%s\"" -#: storage/buffer/bufmgr.c:2350 +#: storage/buffer/bufmgr.c:2777 #, c-format msgid "This has been seen to occur with buggy kernels; consider updating your system." msgstr "Ця ситуація може виникати через помилки в ядрі; можливо, вам слід оновити вашу систему." -#: storage/buffer/bufmgr.c:5653 +#: storage/buffer/bufmgr.c:6178 #, c-format msgid "could not write block %u of %s" msgstr "неможливо записати блок %u файлу %s" -#: storage/buffer/bufmgr.c:5655 +#: storage/buffer/bufmgr.c:6182 #, c-format msgid "Multiple failures --- write error might be permanent." msgstr "Кілька неполадок --- можливо, постійна помилка запису." -#: storage/buffer/bufmgr.c:5677 storage/buffer/bufmgr.c:5697 +#: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 +#, c-format +msgid "writing block %u of relation \"%s\"" +msgstr "запис блоку %u відношення \"%s\"" + +#: storage/buffer/bufmgr.c:7317 +#, c-format +msgid "zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u of relation \"%s\"" +msgstr "обнулення %u сторінки(сторінок) і ігнорування %u помилки(помилок) контрольної суми серед блоків %u..%u відношення \"%s\"" + +#: storage/buffer/bufmgr.c:7320 storage/buffer/bufmgr.c:7348 +#, c-format +msgid "Block %u held the first zeroed page." +msgstr "Блок %u містив першу обнулену сторінку." + +#: storage/buffer/bufmgr.c:7322 +#, c-format +msgid "See server log for details about the other %d invalid block." +msgid_plural "See server log for details about the other %d invalid blocks." +msgstr[0] "Дивіться журнал сервера для деталей про інший %d недійсний блок." +msgstr[1] "Дивіться журнал сервера для деталей про інші %d недійсних блоки." +msgstr[2] "Дивіться журнал сервера для деталей про інші %d недійсних блоків." +msgstr[3] "Дивіться журнал сервера для деталей про інші %d недійсних блоків." + +#: storage/buffer/bufmgr.c:7339 +#, c-format +msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "%u недійсних сторінок серед блоків %u..%u відношення \"%s\"" + +#: storage/buffer/bufmgr.c:7340 +#, c-format +msgid "Block %u held the first invalid page." +msgstr "Блок %u містив першу недійсну сторінку." + +#: storage/buffer/bufmgr.c:7341 +#, c-format +msgid "See server log for the other %u invalid block(s)." +msgstr "Дивіться журнал сервера для інших %u недійсних блоків." + +#: storage/buffer/bufmgr.c:7346 +#, c-format +msgid "invalid page in block %u of relation \"%s\"; zeroing out page" +msgstr "недійсна сторінка в блоці %u відношення \"%s\"; обнулення сторінки" + +#: storage/buffer/bufmgr.c:7347 #, c-format -msgid "writing block %u of relation %s" -msgstr "записування блоку %u зв'язку %s" +msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "обнулення %u недійсних сторінок серед блоків %u..%u відношення \"%s\"" -#: storage/buffer/localbuf.c:220 +#: storage/buffer/bufmgr.c:7349 +#, c-format +msgid "See server log for the other %u zeroed block(s)." +msgstr "Дивіться журнал сервера для інших %u обнулених блоків." + +#: storage/buffer/bufmgr.c:7354 +#, c-format +msgid "ignoring checksum failure in block %u of relation \"%s\"" +msgstr "ігнорування помилки контрольної суми в блоці %u відношення \"%s\"" + +#: storage/buffer/bufmgr.c:7355 +#, c-format +msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" +msgstr "ігнорування %u помилок контрольної суми серед блоків %u..%u відношення \"%s\"" + +#: storage/buffer/bufmgr.c:7356 +#, c-format +msgid "Block %u held the first ignored page." +msgstr "Блок %u містив першу проігноровану сторінку." + +#: storage/buffer/bufmgr.c:7357 +#, c-format +msgid "See server log for the other %u ignored block(s)." +msgstr "Дивіться журнал сервера для інших %u проігнорованих блоків." + +#: storage/buffer/localbuf.c:272 #, c-format msgid "no empty local buffer available" msgstr "немає жодного пустого локального буферу" -#: storage/buffer/localbuf.c:597 +#: storage/buffer/localbuf.c:736 #, c-format msgid "cannot access temporary tables during a parallel operation" msgstr "немає доступу до тимчасових таблиць під час паралельної операції" -#: storage/buffer/localbuf.c:712 +#: storage/buffer/localbuf.c:876 #, c-format msgid "\"temp_buffers\" cannot be changed after any temporary tables have been accessed in the session." msgstr "параметр \"temp_buffers\" не можна змінити після того, як тимчасові таблиці отримали доступ в сеансі." @@ -22047,156 +23116,161 @@ msgstr "не вдалося прочитати файл \"%s\": прочитан msgid "could not read from temporary file: read only %zu of %zu bytes" msgstr "не вдалося прочитати тимчасовий файл: прочитано лише %zu з %zu байт" -#: storage/file/buffile.c:774 storage/file/buffile.c:877 +#: storage/file/buffile.c:774 storage/file/buffile.c:875 #, c-format msgid "could not determine size of temporary file \"%s\" from BufFile \"%s\": %m" msgstr "не вдалося визначити розмір тимчасового файлу \"%s\" з BufFile \"%s\": %m" -#: storage/file/buffile.c:956 +#: storage/file/buffile.c:951 #, c-format msgid "could not delete fileset \"%s\": %m" msgstr "не вдалося видалити набір файлів \"%s\": %m" -#: storage/file/buffile.c:974 storage/smgr/md.c:336 storage/smgr/md.c:1192 +#: storage/file/buffile.c:969 storage/smgr/md.c:356 storage/smgr/md.c:1318 #, c-format msgid "could not truncate file \"%s\": %m" msgstr "не вдалося скоротити файл \"%s\": %m" -#: storage/file/fd.c:583 storage/file/fd.c:655 storage/file/fd.c:691 +#: storage/file/copydir.c:244 storage/file/copydir.c:275 +#, c-format +msgid "could not clone file \"%s\" to \"%s\": %m" +msgstr "не вдалося клонувати файл \"%s\" в \"%s\": %m" + +#: storage/file/fd.c:580 storage/file/fd.c:652 storage/file/fd.c:688 #, c-format msgid "could not flush dirty data: %m" msgstr "не вдалося очистити \"брудні\" дані: %m" -#: storage/file/fd.c:613 +#: storage/file/fd.c:610 #, c-format msgid "could not determine dirty data size: %m" msgstr "не вдалося визначити розмір \"брудних\" даних: %m" -#: storage/file/fd.c:665 +#: storage/file/fd.c:662 #, c-format msgid "could not munmap() while flushing data: %m" msgstr "не вдалося munmap() під час очищення даних: %m" -#: storage/file/fd.c:983 +#: storage/file/fd.c:980 #, c-format msgid "getrlimit failed: %m" msgstr "помилка getrlimit: %m" -#: storage/file/fd.c:1073 +#: storage/file/fd.c:1071 #, c-format msgid "insufficient file descriptors available to start server process" msgstr "недостатньо доступних дескрипторів файлу для запуску серверного процесу" -#: storage/file/fd.c:1074 +#: storage/file/fd.c:1072 #, c-format -msgid "System allows %d, server needs at least %d." -msgstr "Система дозволяє %d, сервер потребує щонайменше %d." +msgid "System allows %d, server needs at least %d, %d files are already open." +msgstr "Система дозволяє %d, сервер потребує принаймні %d, %d файлів уже відкрито." -#: storage/file/fd.c:1162 storage/file/fd.c:2618 storage/file/fd.c:2727 -#: storage/file/fd.c:2878 +#: storage/file/fd.c:1161 storage/file/fd.c:2676 storage/file/fd.c:2785 +#: storage/file/fd.c:2939 #, c-format msgid "out of file descriptors: %m; release and retry" msgstr "нестача дескрипторів файлу: %m; вивільніть і спробуйте знову" -#: storage/file/fd.c:1536 +#: storage/file/fd.c:1537 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "тимчасовий файл: шлях \"%s\", розмір %lu" -#: storage/file/fd.c:1675 +#: storage/file/fd.c:1676 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "неможливо створити тимчасовий каталог \"%s\": %m" -#: storage/file/fd.c:1682 +#: storage/file/fd.c:1683 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "неможливо створити тимчасовий підкаталог \"%s\": %m" -#: storage/file/fd.c:1879 +#: storage/file/fd.c:1880 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "неможливо створити тимчасовий файл \"%s\": %m" -#: storage/file/fd.c:1915 +#: storage/file/fd.c:1916 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "неможливо відкрити тимчасовий файл \"%s\": %m" -#: storage/file/fd.c:1956 +#: storage/file/fd.c:1957 #, c-format msgid "could not unlink temporary file \"%s\": %m" msgstr "помилка видалення тимчасового файлу \"%s\": %m" -#: storage/file/fd.c:2044 +#: storage/file/fd.c:2047 #, c-format msgid "could not delete file \"%s\": %m" msgstr "не вдалося видалити файл \"%s\": %m" -#: storage/file/fd.c:2234 +#: storage/file/fd.c:2286 #, c-format -msgid "temporary file size exceeds temp_file_limit (%dkB)" -msgstr "розмір тимчасового файлу перевищує temp_file_limit (%d Кб)" +msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" +msgstr "розмір тимчасового файлу перевищує \"temp_file_limit\" (%dkB)" -#: storage/file/fd.c:2594 storage/file/fd.c:2653 +#: storage/file/fd.c:2652 storage/file/fd.c:2711 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\"" msgstr "перевищено maxAllocatedDescs (%d) при спробі відкрити файл \"%s\"" -#: storage/file/fd.c:2698 +#: storage/file/fd.c:2756 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\"" msgstr "перевищено maxAllocatedDescs (%d) при спробі виконати команду \"%s\"" -#: storage/file/fd.c:2854 +#: storage/file/fd.c:2915 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\"" msgstr "перевищено maxAllocatedDescs (%d) при спробі відкрити каталог \"%s\"" -#: storage/file/fd.c:3384 +#: storage/file/fd.c:3446 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "знайдено неочікуваний файл в каталозі тимчасових файлів: \"%s\"" -#: storage/file/fd.c:3502 +#: storage/file/fd.c:3564 #, c-format msgid "syncing data directory (syncfs), elapsed time: %ld.%02d s, current path: %s" msgstr "синхронізація каталогу даних (syncfs), витрачено часу: %ld.%02d с, поточний шлях: %s" -#: storage/file/fd.c:3729 +#: storage/file/fd.c:3791 #, c-format msgid "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "Синхронізація каталогу даних (pre-fsync), витрачено часу: %ld.%02d с, поточний шлях: %s" -#: storage/file/fd.c:3761 +#: storage/file/fd.c:3823 #, c-format msgid "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "синхронізація каталогу даних (fsync), витрачено часу: %ld.%02d с, поточний шлях: %s" -#: storage/file/fd.c:3950 +#: storage/file/fd.c:4012 #, c-format -msgid "\"debug_io_direct\" is not supported on this platform." -msgstr "" +msgid "\"%s\" is not supported on this platform." +msgstr "\"%s\" не підтримується на цій платформі." -#: storage/file/fd.c:3964 +#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 #, c-format -msgid "Invalid list syntax in parameter \"%s\"" -msgstr "" +msgid "Invalid list syntax in parameter \"%s\"." +msgstr "Неправильний синтаксис списку в параметрі \"%s\"." -#: storage/file/fd.c:3984 +#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 #, c-format -msgid "Invalid option \"%s\"" -msgstr "Недійсний параметр \"%s\"" +msgid "Invalid option \"%s\"." +msgstr "Неправильний параметр \"%s\"." -#: storage/file/fd.c:3997 +#: storage/file/fd.c:4060 #, c-format -msgid "\"debug_io_direct\" is not supported for WAL because XLOG_BLCKSZ is too small" -msgstr "" +msgid "\"%s\" is not supported for WAL because %s is too small." +msgstr "\"%s\" не підтримується для WAL, тому що %s занадто малий." -#: storage/file/fd.c:4004 +#: storage/file/fd.c:4068 #, c-format -msgid "\"debug_io_direct\" is not supported for data because BLCKSZ is too small" -msgstr "" +msgid "\"%s\" is not supported for data because %s is too small." +msgstr "\"%s\" не підтримується для даних, тому що %s занадто малий." #: storage/file/reinit.c:145 #, c-format @@ -22283,58 +23357,74 @@ msgstr "не вдалося закрити сегмент спільної па msgid "could not duplicate handle for \"%s\": %m" msgstr "не вдалося продублювати маркер для \"%s\": %m" -#: storage/ipc/dsm_registry.c:142 +#: storage/ipc/dsm_registry.c:144 #, c-format msgid "DSM segment name cannot be empty" msgstr "Ім'я сегмента DSM не може бути порожнім" -#: storage/ipc/dsm_registry.c:146 +#: storage/ipc/dsm_registry.c:148 #, c-format msgid "DSM segment name too long" msgstr "Занадто довге ім'я сегменту DSM" -#: storage/ipc/dsm_registry.c:150 +#: storage/ipc/dsm_registry.c:152 #, c-format msgid "DSM segment size must be nonzero" msgstr "Розмір сегменту DSM повинен бути ненульовим" -#: storage/ipc/dsm_registry.c:176 +#: storage/ipc/dsm_registry.c:168 #, c-format msgid "requested DSM segment size does not match size of existing segment" msgstr "розмір запитуваного сегмента DSM не збігається з розміром наявного сегмента" -#: storage/ipc/procarray.c:488 storage/lmgr/proc.c:352 -#: tcop/backend_startup.c:304 +#: storage/ipc/procarray.c:488 storage/lmgr/proc.c:457 +#: tcop/backend_startup.c:343 #, c-format msgid "sorry, too many clients already" msgstr "вибачте, вже забагато клієнтів" -#: storage/ipc/procarray.c:3857 +#: storage/ipc/procarray.c:3858 #, c-format msgid "database \"%s\" is being used by prepared transactions" msgstr "база даних \"%s\" використовується підготовленими транзакціями" -#: storage/ipc/procarray.c:3893 storage/ipc/procarray.c:3901 -#: storage/ipc/signalfuncs.c:235 storage/ipc/signalfuncs.c:242 +#: storage/ipc/procarray.c:3894 storage/ipc/procarray.c:3902 +#: storage/ipc/signalfuncs.c:256 storage/ipc/signalfuncs.c:263 +#: storage/ipc/signalfuncs.c:270 #, c-format msgid "permission denied to terminate process" msgstr "немає дозволу для припинення процесу" -#: storage/ipc/procarray.c:3894 storage/ipc/signalfuncs.c:236 +#: storage/ipc/procarray.c:3895 storage/ipc/signalfuncs.c:257 #, c-format msgid "Only roles with the %s attribute may terminate processes of roles with the %s attribute." msgstr "Тільки ролі з атрибутом %s можуть припинити процеси ролей з атрибутом %s." -#: storage/ipc/procarray.c:3902 storage/ipc/signalfuncs.c:243 +#: storage/ipc/procarray.c:3903 storage/ipc/signalfuncs.c:271 #, c-format msgid "Only roles with privileges of the role whose process is being terminated or with privileges of the \"%s\" role may terminate this process." msgstr "Лише ролі з привілеями ролі, процес якої завершується, або з привілеями ролі \"%s\" можуть завершити цей процес." -#: storage/ipc/procsignal.c:416 +#: storage/ipc/procsignal.c:451 #, c-format msgid "still waiting for backend with PID %d to accept ProcSignalBarrier" msgstr "все ще чекаємо на прийняття ProcSignalBarrier від бекенд з PID %d" +#: storage/ipc/procsignal.c:733 +#, c-format +msgid "invalid cancel request with PID 0" +msgstr "недійсний запит скасування з PID 0" + +#: storage/ipc/procsignal.c:788 +#, c-format +msgid "wrong key in cancel request for process %d" +msgstr "неправильний ключ в запиті скасування процесу %d" + +#: storage/ipc/procsignal.c:797 +#, c-format +msgid "PID %d in cancel request did not match any process" +msgstr "PID %d в запиті на скасування не відповідає жодному процесу" + #: storage/ipc/shm_mq.c:383 #, c-format msgid "cannot send a message of size %zu via shared memory queue" @@ -22345,12 +23435,12 @@ msgstr "не можна надсилати повідомлення розмір msgid "invalid message size %zu in shared memory queue" msgstr "неприпустимий розмір повідомлення %zu в черзі спільної пам'яті" -#: storage/ipc/shm_toc.c:118 storage/ipc/shm_toc.c:200 storage/lmgr/lock.c:984 -#: storage/lmgr/lock.c:1022 storage/lmgr/lock.c:2825 storage/lmgr/lock.c:4210 -#: storage/lmgr/lock.c:4275 storage/lmgr/lock.c:4625 -#: storage/lmgr/predicate.c:2463 storage/lmgr/predicate.c:2478 -#: storage/lmgr/predicate.c:3875 storage/lmgr/predicate.c:4922 -#: utils/hash/dynahash.c:1095 +#: storage/ipc/shm_toc.c:118 storage/ipc/shm_toc.c:200 storage/lmgr/lock.c:1041 +#: storage/lmgr/lock.c:1079 storage/lmgr/lock.c:2968 storage/lmgr/lock.c:4373 +#: storage/lmgr/lock.c:4438 storage/lmgr/lock.c:4788 +#: storage/lmgr/predicate.c:2478 storage/lmgr/predicate.c:2493 +#: storage/lmgr/predicate.c:3890 storage/lmgr/predicate.c:4937 +#: utils/hash/dynahash.c:1096 #, c-format msgid "out of shared memory" msgstr "нестача спільної пам'яті" @@ -22380,271 +23470,287 @@ msgstr "недостатньо спільної пам'яті для струк msgid "requested shared memory size overflows size_t" msgstr "запитаний сегмент спільної пам'яті не вміщається в size_t" -#: storage/ipc/signalfuncs.c:72 +#: storage/ipc/signalfuncs.c:74 #, c-format msgid "PID %d is not a PostgreSQL backend process" msgstr "PID %d не є внутрішнім процесом PostgreSQL" -#: storage/ipc/signalfuncs.c:109 storage/lmgr/proc.c:1448 -#: utils/adt/mcxtfuncs.c:182 +#: storage/ipc/signalfuncs.c:123 storage/lmgr/proc.c:1546 +#: utils/adt/mcxtfuncs.c:302 #, c-format msgid "could not send signal to process %d: %m" msgstr "не вдалося надіслати сигнал процесу %d: %m" -#: storage/ipc/signalfuncs.c:129 storage/ipc/signalfuncs.c:136 +#: storage/ipc/signalfuncs.c:143 storage/ipc/signalfuncs.c:150 +#: storage/ipc/signalfuncs.c:157 #, c-format msgid "permission denied to cancel query" msgstr "немає дозволу для скасування запиту" -#: storage/ipc/signalfuncs.c:130 +#: storage/ipc/signalfuncs.c:144 #, c-format msgid "Only roles with the %s attribute may cancel queries of roles with the %s attribute." msgstr "Лише ролі з атрибутом %s можуть скасовувати запити ролей з атрибутом %s." -#: storage/ipc/signalfuncs.c:137 +#: storage/ipc/signalfuncs.c:151 +#, c-format +msgid "Only roles with privileges of the \"%s\" role may cancel autovacuum workers." +msgstr "Тільки ролі з правами ролі \"%s\" можуть скасовувати процеси автовакууму." + +#: storage/ipc/signalfuncs.c:158 #, c-format msgid "Only roles with privileges of the role whose query is being canceled or with privileges of the \"%s\" role may cancel this query." msgstr "Лише ролі з привілеями ролі, запит якої скасовується, або з привілеями ролі \"%s\" можуть скасувати цей запит." -#: storage/ipc/signalfuncs.c:179 +#: storage/ipc/signalfuncs.c:200 #, c-format msgid "could not check the existence of the backend with PID %d: %m" msgstr "не вдалося перевірити наявність процесу з PID %d: %m" -#: storage/ipc/signalfuncs.c:197 +#: storage/ipc/signalfuncs.c:218 #, c-format -msgid "backend with PID %d did not terminate within %lld millisecond" -msgid_plural "backend with PID %d did not terminate within %lld milliseconds" -msgstr[0] "процес з PID %d не завершився протягом %lld мілісекунди" -msgstr[1] "процес з PID %d не завершився протягом %lld мілісекунд" -msgstr[2] "процес з PID %d не завершився протягом %lld мілісекунд" -msgstr[3] "процес з PID %d не завершився протягом %lld мілісекунд" +msgid "backend with PID %d did not terminate within % millisecond" +msgid_plural "backend with PID %d did not terminate within % milliseconds" +msgstr[0] "процес з PID %d не завершився протягом % мілісекунди" +msgstr[1] "процес з PID %d не завершився протягом % мілісекунд" +msgstr[2] "процес з PID %d не завершився протягом % мілісекунд" +msgstr[3] "процес з PID %d не завершився протягом % мілісекунд" -#: storage/ipc/signalfuncs.c:228 +#: storage/ipc/signalfuncs.c:249 #, c-format msgid "\"timeout\" must not be negative" msgstr "\"timeout\" повинен не може бути негативним" -#: storage/ipc/signalfuncs.c:285 +#: storage/ipc/signalfuncs.c:264 +#, c-format +msgid "Only roles with privileges of the \"%s\" role may terminate autovacuum workers." +msgstr "Тільки ролі з правами ролі \"%s\" можуть завершувати процеси автовакууму." + +#: storage/ipc/signalfuncs.c:313 #, c-format msgid "rotation not possible because log collection not active" msgstr "обертання неможливе тому, що записування колекції не активоване" -#: storage/ipc/standby.c:329 +#: storage/ipc/standby.c:330 #, c-format msgid "recovery still waiting after %ld.%03d ms: %s" msgstr "відновлення все ще чекає, після %ld.%03d мс: %s" -#: storage/ipc/standby.c:338 +#: storage/ipc/standby.c:339 #, c-format msgid "recovery finished waiting after %ld.%03d ms: %s" msgstr "відновлення закінчило очікування після %ld.%03d мс: %s" -#: storage/ipc/standby.c:920 tcop/postgres.c:3196 +#: storage/ipc/standby.c:921 tcop/postgres.c:3223 #, c-format msgid "canceling statement due to conflict with recovery" msgstr "виконання оператора скасовано через конфлікт з процесом відновлення" -#: storage/ipc/standby.c:921 tcop/postgres.c:2557 +#: storage/ipc/standby.c:922 tcop/postgres.c:2573 #, c-format msgid "User transaction caused buffer deadlock with recovery." msgstr "Транзакція користувача призвела до взаємного блокування з процесом відновлення." -#: storage/ipc/standby.c:1486 +#: storage/ipc/standby.c:1494 msgid "unknown reason" msgstr "невідома причина" -#: storage/ipc/standby.c:1491 +#: storage/ipc/standby.c:1499 msgid "recovery conflict on buffer pin" msgstr "конфлікт відновлення, закріпленого в буфері" -#: storage/ipc/standby.c:1494 +#: storage/ipc/standby.c:1502 msgid "recovery conflict on lock" msgstr "конфлікт відновлення при блокуванні" -#: storage/ipc/standby.c:1497 +#: storage/ipc/standby.c:1505 msgid "recovery conflict on tablespace" msgstr "конфлікт відновлення у табличному просторі" -#: storage/ipc/standby.c:1500 +#: storage/ipc/standby.c:1508 msgid "recovery conflict on snapshot" msgstr "конфлікт відновлення під час знімку" -#: storage/ipc/standby.c:1503 +#: storage/ipc/standby.c:1511 msgid "recovery conflict on replication slot" msgstr "конфлікт відновлення у слоті реплікації" -#: storage/ipc/standby.c:1506 +#: storage/ipc/standby.c:1514 msgid "recovery conflict on buffer deadlock" msgstr "конфлікт відновлення при взаємному блокуванні буфера" -#: storage/ipc/standby.c:1509 +#: storage/ipc/standby.c:1517 msgid "recovery conflict on database" msgstr "конфлікт відновлення у базі даних" -#: storage/large_object/inv_api.c:190 +#: storage/large_object/inv_api.c:152 #, 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:272 +#: storage/large_object/inv_api.c:234 #, c-format msgid "invalid flags for opening a large object: %d" msgstr "неприпустимі позначки для відкриття великого об'єкту: %d" -#: storage/large_object/inv_api.c:297 storage/large_object/inv_api.c:309 -#: storage/large_object/inv_api.c:506 storage/large_object/inv_api.c:617 -#: storage/large_object/inv_api.c:807 +#: storage/large_object/inv_api.c:259 storage/large_object/inv_api.c:271 +#: storage/large_object/inv_api.c:468 storage/large_object/inv_api.c:579 +#: storage/large_object/inv_api.c:769 #, c-format msgid "permission denied for large object %u" msgstr "немає дозволу для великого об'єкта %u" -#: storage/large_object/inv_api.c:455 +#: storage/large_object/inv_api.c:417 #, c-format msgid "invalid whence setting: %d" msgstr "неприпустиме значення орієнтиру: %d" -#: storage/large_object/inv_api.c:627 +#: storage/large_object/inv_api.c:589 #, c-format msgid "invalid large object write request size: %d" msgstr "неприпустимий розмір запису великого об'єкту: %d" -#: storage/lmgr/deadlock.c:1104 +#: storage/lmgr/deadlock.c:1107 #, c-format msgid "Process %d waits for %s on %s; blocked by process %d." msgstr "Процес %d очікує в режимі %s блокування \"%s\"; заблокований процесом %d." -#: storage/lmgr/deadlock.c:1123 +#: storage/lmgr/deadlock.c:1126 #, c-format msgid "Process %d: %s" msgstr "Процес %d: %s" -#: storage/lmgr/deadlock.c:1132 +#: storage/lmgr/deadlock.c:1135 #, c-format msgid "deadlock detected" msgstr "виявлено взаємне блокування" -#: storage/lmgr/deadlock.c:1135 +#: storage/lmgr/deadlock.c:1138 #, c-format msgid "See server log for query details." msgstr "Подробиці запиту перегляньте в записі серверу." -#: storage/lmgr/lmgr.c:848 +#: storage/lmgr/lmgr.c:862 #, c-format msgid "while updating tuple (%u,%u) in relation \"%s\"" msgstr "при оновленні кортежу (%u,%u) в зв'язку \"%s\"" -#: storage/lmgr/lmgr.c:851 +#: storage/lmgr/lmgr.c:865 #, c-format msgid "while deleting tuple (%u,%u) in relation \"%s\"" msgstr "при видаленні кортежу (%u,%u) в зв'язку \"%s\"" -#: storage/lmgr/lmgr.c:854 +#: storage/lmgr/lmgr.c:868 #, c-format msgid "while locking tuple (%u,%u) in relation \"%s\"" msgstr "при блокуванні кортежу (%u,%u) в зв'язку \"%s\"" -#: storage/lmgr/lmgr.c:857 +#: storage/lmgr/lmgr.c:871 #, c-format msgid "while locking updated version (%u,%u) of tuple in relation \"%s\"" msgstr "при блокуванні оновленої версії (%u,%u) кортежу в зв'язку \"%s\"" -#: storage/lmgr/lmgr.c:860 +#: storage/lmgr/lmgr.c:874 #, c-format msgid "while inserting index tuple (%u,%u) in relation \"%s\"" msgstr "при вставці кортежу індексу (%u,%u) в зв'язку \"%s\"" -#: storage/lmgr/lmgr.c:863 +#: storage/lmgr/lmgr.c:877 #, c-format msgid "while checking uniqueness of tuple (%u,%u) in relation \"%s\"" msgstr "під час перевірки унікальності кортежа (%u,%u) у відношенні \"%s\"" -#: storage/lmgr/lmgr.c:866 +#: storage/lmgr/lmgr.c:880 #, c-format msgid "while rechecking updated tuple (%u,%u) in relation \"%s\"" msgstr "під час повторної перевірки оновленого кортежа (%u,%u) у відношенні \"%s\"" -#: storage/lmgr/lmgr.c:869 +#: storage/lmgr/lmgr.c:883 #, c-format msgid "while checking exclusion constraint on tuple (%u,%u) in relation \"%s\"" msgstr "під час перевірки обмеження-виключення для кортежа (%u,%u) у відношенні \"%s\"" -#: storage/lmgr/lmgr.c:1239 +#: storage/lmgr/lmgr.c:1255 #, c-format msgid "relation %u of database %u" msgstr "відношення %u бази даних %u" -#: storage/lmgr/lmgr.c:1245 +#: storage/lmgr/lmgr.c:1261 #, c-format msgid "extension of relation %u of database %u" msgstr "розширення відношення %u бази даних %u" -#: storage/lmgr/lmgr.c:1251 +#: storage/lmgr/lmgr.c:1267 #, c-format msgid "pg_database.datfrozenxid of database %u" msgstr "pg_database.datfrozenxid бази даних %u" -#: storage/lmgr/lmgr.c:1256 +#: storage/lmgr/lmgr.c:1272 #, c-format msgid "page %u of relation %u of database %u" msgstr "сторінка %u відношення %u бази даних %u" -#: storage/lmgr/lmgr.c:1263 +#: storage/lmgr/lmgr.c:1279 #, c-format msgid "tuple (%u,%u) of relation %u of database %u" msgstr "кортеж (%u,%u) відношення %u бази даних %u" -#: storage/lmgr/lmgr.c:1271 +#: storage/lmgr/lmgr.c:1287 #, c-format msgid "transaction %u" msgstr "транзакція %u" -#: storage/lmgr/lmgr.c:1276 +#: storage/lmgr/lmgr.c:1292 #, c-format msgid "virtual transaction %d/%u" msgstr "віртуальна транзакція %d/%u" -#: storage/lmgr/lmgr.c:1282 +#: storage/lmgr/lmgr.c:1298 #, c-format msgid "speculative token %u of transaction %u" msgstr "орієнтовний маркер %u транзакції %u" -#: storage/lmgr/lmgr.c:1288 +#: storage/lmgr/lmgr.c:1304 #, c-format msgid "object %u of class %u of database %u" msgstr "об’єкт %u класу %u бази даних %u" -#: storage/lmgr/lmgr.c:1296 +#: storage/lmgr/lmgr.c:1312 #, c-format msgid "user lock [%u,%u,%u]" msgstr "користувацьке блокування [%u,%u,%u]" -#: storage/lmgr/lmgr.c:1303 +#: storage/lmgr/lmgr.c:1319 #, c-format msgid "advisory lock [%u,%u,%u,%u]" msgstr "рекомендаційне блокування [%u,%u,%u,%u]" -#: storage/lmgr/lmgr.c:1311 +#: storage/lmgr/lmgr.c:1327 #, c-format msgid "remote transaction %u of subscription %u of database %u" msgstr "віддалена транзакція %u з підписки %u з бази даних %u" -#: storage/lmgr/lmgr.c:1318 +#: storage/lmgr/lmgr.c:1334 #, c-format msgid "unrecognized locktag type %d" msgstr "нерозпізнаний тип блокування %d" -#: storage/lmgr/lock.c:812 +#: storage/lmgr/lock.c:869 #, c-format msgid "cannot acquire lock mode %s on database objects while recovery is in progress" msgstr "поки виконується відновлення, не можна отримати блокування об'єктів бази даних в режимі %s" -#: storage/lmgr/lock.c:814 +#: storage/lmgr/lock.c:871 #, c-format msgid "Only RowExclusiveLock or less can be acquired on database objects during recovery." msgstr "Під час процесу відновлення для об'єктів бази даних може бути отримане лише блокування RowExclusiveLock або менш сильна." -#: storage/lmgr/lock.c:3274 storage/lmgr/lock.c:3342 storage/lmgr/lock.c:3458 +#: storage/lmgr/lock.c:1185 +#, c-format +msgid "process %d could not obtain %s on %s" +msgstr "процес %d не зміг отримати %s для %s" + +#: storage/lmgr/lock.c:3426 storage/lmgr/lock.c:3494 storage/lmgr/lock.c:3610 #, c-format msgid "cannot PREPARE while holding both session-level and transaction-level locks on the same object" msgstr "не можна виконати PREPARE, під час утримання блокування на рівні сеансу і на рівні транзакції для одного об'єкта" @@ -22657,685 +23763,725 @@ msgstr "в RWConflictPool недостатньо елементів для за #: storage/lmgr/predicate.c:654 storage/lmgr/predicate.c:679 #, c-format msgid "You might need to run fewer transactions at a time or increase \"max_connections\"." -msgstr "" +msgstr "Можливо, вам слід виконувати менше транзакцій в секунду або збільшити параметр \"max_connections\"." #: storage/lmgr/predicate.c:678 #, c-format msgid "not enough elements in RWConflictPool to record a potential read/write conflict" msgstr "в RWConflictPool недостатньо елементів для запису про потенціальний конфлікт читання/запису" -#: storage/lmgr/predicate.c:1681 +#: storage/lmgr/predicate.c:1696 #, c-format msgid "\"default_transaction_isolation\" is set to \"serializable\"." msgstr "параметр \"default_transaction_isolation\" має значення \"serializable\"." -#: storage/lmgr/predicate.c:1682 +#: storage/lmgr/predicate.c:1697 #, c-format 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:1733 +#: storage/lmgr/predicate.c:1748 #, c-format msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE" msgstr "транзакція, яка імпортує знімок не повинна бутив READ ONLY DEFERRABLE" -#: storage/lmgr/predicate.c:1812 utils/time/snapmgr.c:535 -#: utils/time/snapmgr.c:541 +#: storage/lmgr/predicate.c:1827 utils/time/snapmgr.c:567 +#: utils/time/snapmgr.c:573 #, c-format msgid "could not import the requested snapshot" msgstr "не вдалося імпортувати запитаний знімок" -#: storage/lmgr/predicate.c:1813 utils/time/snapmgr.c:542 +#: storage/lmgr/predicate.c:1828 utils/time/snapmgr.c:574 #, c-format msgid "The source process with PID %d is not running anymore." msgstr "Вихідний процес з PID %d вже не виконується." -#: storage/lmgr/predicate.c:3986 storage/lmgr/predicate.c:4022 -#: storage/lmgr/predicate.c:4055 storage/lmgr/predicate.c:4063 -#: storage/lmgr/predicate.c:4102 storage/lmgr/predicate.c:4332 -#: storage/lmgr/predicate.c:4651 storage/lmgr/predicate.c:4663 -#: storage/lmgr/predicate.c:4710 storage/lmgr/predicate.c:4746 +#: storage/lmgr/predicate.c:4001 storage/lmgr/predicate.c:4037 +#: storage/lmgr/predicate.c:4070 storage/lmgr/predicate.c:4078 +#: storage/lmgr/predicate.c:4117 storage/lmgr/predicate.c:4347 +#: storage/lmgr/predicate.c:4666 storage/lmgr/predicate.c:4678 +#: storage/lmgr/predicate.c:4725 storage/lmgr/predicate.c:4761 #, c-format msgid "could not serialize access due to read/write dependencies among transactions" msgstr "не вдалося серіалізувати доступ через залежність читання/запису серед транзакцій" -#: storage/lmgr/predicate.c:3988 storage/lmgr/predicate.c:4024 -#: storage/lmgr/predicate.c:4057 storage/lmgr/predicate.c:4065 -#: storage/lmgr/predicate.c:4104 storage/lmgr/predicate.c:4334 -#: storage/lmgr/predicate.c:4653 storage/lmgr/predicate.c:4665 -#: storage/lmgr/predicate.c:4712 storage/lmgr/predicate.c:4748 +#: storage/lmgr/predicate.c:4003 storage/lmgr/predicate.c:4039 +#: storage/lmgr/predicate.c:4072 storage/lmgr/predicate.c:4080 +#: storage/lmgr/predicate.c:4119 storage/lmgr/predicate.c:4349 +#: storage/lmgr/predicate.c:4668 storage/lmgr/predicate.c:4680 +#: storage/lmgr/predicate.c:4727 storage/lmgr/predicate.c:4763 #, c-format msgid "The transaction might succeed if retried." msgstr "Транзакція може завершитися успішно, якщо повторити спробу." -#: storage/lmgr/proc.c:348 +#: storage/lmgr/proc.c:453 #, c-format msgid "number of requested standby connections exceeds \"max_wal_senders\" (currently %d)" -msgstr "" +msgstr "кількість запитаних підключень резервного серверу перевищує \"max_wal_senders\" (поточна %d)" -#: storage/lmgr/proc.c:1541 +#: storage/lmgr/proc.c:1591 #, c-format msgid "process %d avoided deadlock for %s on %s by rearranging queue order after %ld.%03d ms" msgstr "процес %d уникнув взаємного блокування, чекаючи в режимі %s блокування %s змінивши порядок черги після %ld.%03d мс" -#: storage/lmgr/proc.c:1556 +#: storage/lmgr/proc.c:1606 #, c-format msgid "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms" msgstr "процес %d виявив взаємне блокування, чекаючи в режимі %s блокування %s після %ld.%03d мс" -#: storage/lmgr/proc.c:1565 +#: storage/lmgr/proc.c:1615 #, c-format msgid "process %d still waiting for %s on %s after %ld.%03d ms" msgstr "процес %d все ще чекає в режимі %s блокування %s після %ld.%03d мс" -#: storage/lmgr/proc.c:1572 +#: storage/lmgr/proc.c:1622 #, c-format msgid "process %d acquired %s on %s after %ld.%03d ms" msgstr "процес %d отримав в режимі %s блокування %s після %ld.%03d мс" -#: storage/lmgr/proc.c:1589 +#: storage/lmgr/proc.c:1639 #, c-format msgid "process %d failed to acquire %s on %s after %ld.%03d ms" msgstr "процес %d не зміг отримати в режимі %s блокування %s після %ld.%03d мс" -#: storage/page/bufpage.c:152 +#: storage/page/bufpage.c:154 #, c-format msgid "page verification failed, calculated checksum %u but expected %u" msgstr "помилка перевірки сторінки, обчислена контрольна сума %u але очікувалось %u" -#: storage/page/bufpage.c:217 storage/page/bufpage.c:730 -#: storage/page/bufpage.c:1073 storage/page/bufpage.c:1208 -#: storage/page/bufpage.c:1314 storage/page/bufpage.c:1426 +#: storage/page/bufpage.c:216 storage/page/bufpage.c:729 +#: storage/page/bufpage.c:1072 storage/page/bufpage.c:1207 +#: storage/page/bufpage.c:1313 storage/page/bufpage.c:1425 #, c-format msgid "corrupted page pointers: lower = %u, upper = %u, special = %u" msgstr "пошкоджені вказівники сторінки: нижній = %u, верхній = %u, спеціальний = %u" -#: storage/page/bufpage.c:759 +#: storage/page/bufpage.c:758 #, c-format msgid "corrupted line pointer: %u" msgstr "пошкоджений вказівник рядка: %u" -#: storage/page/bufpage.c:789 storage/page/bufpage.c:1266 +#: storage/page/bufpage.c:788 storage/page/bufpage.c:1265 #, c-format msgid "corrupted item lengths: total %u, available space %u" msgstr "пошкоджена довжина елементу: загальний розмір %u, доступний розмір %u" -#: storage/page/bufpage.c:1092 storage/page/bufpage.c:1233 -#: storage/page/bufpage.c:1330 storage/page/bufpage.c:1442 +#: storage/page/bufpage.c:1091 storage/page/bufpage.c:1232 +#: storage/page/bufpage.c:1329 storage/page/bufpage.c:1441 #, c-format msgid "corrupted line pointer: offset = %u, size = %u" msgstr "пошкоджений вказівник рядка: зсув = %u, розмір = %u" -#: storage/smgr/md.c:485 storage/smgr/md.c:547 +#: storage/smgr/md.c:502 storage/smgr/md.c:564 #, c-format msgid "cannot extend file \"%s\" beyond %u blocks" msgstr "не можна розширити файл \"%s\" до блоку %u" -#: storage/smgr/md.c:500 storage/smgr/md.c:611 +#: storage/smgr/md.c:517 storage/smgr/md.c:628 #, c-format msgid "could not extend file \"%s\": %m" msgstr "не вдалося розширити файл \"%s\": %m" -#: storage/smgr/md.c:506 +#: storage/smgr/md.c:523 #, c-format msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u" msgstr "не вдалося розширити файл \"%s\" записано лише %d з %d байт в блоку %u" -#: storage/smgr/md.c:589 +#: storage/smgr/md.c:606 #, c-format msgid "could not extend file \"%s\" with FileFallocate(): %m" msgstr "не вдалося розширити файл \"%s\" за допомогою FileFallocate(): %m" -#: storage/smgr/md.c:869 +#: storage/smgr/md.c:899 storage/smgr/md.c:2047 #, c-format msgid "could not read blocks %u..%u in file \"%s\": %m" msgstr "не вдалося прочитати блоки %u..%u у файлі \"%s\": %m" -#: storage/smgr/md.c:895 +#: storage/smgr/md.c:946 storage/smgr/md.c:2060 #, c-format msgid "could not read blocks %u..%u in file \"%s\": read only %zu of %zu bytes" msgstr "не вдалося прочитати блоки %u..%u у файлі \"%s\": прочитано лише %zu з %zu байтів" -#: storage/smgr/md.c:995 +#: storage/smgr/md.c:1023 +#, c-format +msgid "could not start reading blocks %u..%u in file \"%s\": %m" +msgstr "не вдалося розпочати читання блоків %u..%u у файлі \"%s\": %m" + +#: storage/smgr/md.c:1119 #, c-format msgid "could not write blocks %u..%u in file \"%s\": %m" msgstr "не вдалося записати блоки %u..%u у файл \"%s\": %m" -#: storage/smgr/md.c:1163 +#: storage/smgr/md.c:1289 #, 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:1218 +#: storage/smgr/md.c:1344 #, c-format msgid "could not truncate file \"%s\" to %u blocks: %m" msgstr "не вдалося скоротити файл \"%s\" до %u блоків: %m" -#: storage/smgr/md.c:1688 +#: storage/smgr/md.c:1832 #, 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:1702 +#: storage/smgr/md.c:1846 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "не вдалося відкрити файл \"%s\" (цільовий блок %u): %m" -#: tcop/backend_startup.c:85 +#: storage/smgr/smgr.c:1106 +#, c-format +msgid "file \"%s\"" +msgstr "файл \"%s\"" + +#: storage/smgr/smgr.c:1108 +#, c-format +msgid "block %u in file \"%s\"" +msgstr "блок %u у файлі \"%s\"" + +#: storage/smgr/smgr.c:1112 +#, c-format +msgid "blocks %u..%u in file \"%s\"" +msgstr "блоки %u..%u у файлі \"%s\"" + +#: tcop/backend_startup.c:104 #, c-format msgid "SSL configuration could not be loaded in child process" msgstr "Не вдалося завантажити конфігурацію SSL в дочірній процес" -#: tcop/backend_startup.c:208 +#: tcop/backend_startup.c:226 #, c-format msgid "connection received: host=%s port=%s" msgstr "з'єднання отримано: хост=%s порт=%s" -#: tcop/backend_startup.c:213 +#: tcop/backend_startup.c:231 #, c-format msgid "connection received: host=%s" msgstr "з'єднання отримано: хост=%s" -#: tcop/backend_startup.c:277 +#: tcop/backend_startup.c:309 #, c-format msgid "the database system is starting up" msgstr "система бази даних запускається" -#: tcop/backend_startup.c:283 +#: tcop/backend_startup.c:315 +#, c-format +msgid "the database system is not accepting connections" +msgstr "система бази даних не приймає підключення" + +#: tcop/backend_startup.c:316 +#, c-format +msgid "Hot standby mode is disabled." +msgstr "Режим Hot standby вимкнений." + +#: tcop/backend_startup.c:320 tcop/backend_startup.c:327 #, c-format msgid "the database system is not yet accepting connections" msgstr "система бази даних ще не приймає підключення" -#: tcop/backend_startup.c:284 +#: tcop/backend_startup.c:321 #, c-format -msgid "Consistent recovery state has not been yet reached." -msgstr "Узгодженого стану відновлення ще не досягнуто." +msgid "Recovery snapshot is not yet ready for hot standby." +msgstr "Знімок відновлення ще не готовий для гарячого резерву." -#: tcop/backend_startup.c:288 +#: tcop/backend_startup.c:322 #, c-format -msgid "the database system is not accepting connections" -msgstr "система бази даних не приймає підключення" +msgid "To enable hot standby, close write transactions with more than %d subtransactions on the primary server." +msgstr "Щоб увімкнути гарячий резерв, закрийте транзакції запису з більш ніж %d підтранзакцій на основному сервері." -#: tcop/backend_startup.c:289 +#: tcop/backend_startup.c:328 #, c-format -msgid "Hot standby mode is disabled." -msgstr "Режим Hot standby вимкнений." +msgid "Consistent recovery state has not been yet reached." +msgstr "Узгодженого стану відновлення ще не досягнуто." -#: tcop/backend_startup.c:294 +#: tcop/backend_startup.c:333 #, c-format msgid "the database system is shutting down" msgstr "система бази даних завершує роботу" -#: tcop/backend_startup.c:299 +#: tcop/backend_startup.c:338 #, c-format msgid "the database system is in recovery mode" msgstr "система бази даних у режимі відновлення" -#: tcop/backend_startup.c:414 +#: tcop/backend_startup.c:453 #, c-format msgid "received direct SSL connection request without ALPN protocol negotiation extension" -msgstr "" +msgstr "отримано запит на підключення до SSL без розширення протоколу ALPN" -#: tcop/backend_startup.c:420 +#: tcop/backend_startup.c:459 #, c-format msgid "direct SSL connection accepted" -msgstr "" +msgstr "прийнято пряме SSL-підключення" -#: tcop/backend_startup.c:430 +#: tcop/backend_startup.c:469 #, c-format msgid "direct SSL connection rejected" -msgstr "" +msgstr "пряме SSL підключення відхилено" -#: tcop/backend_startup.c:489 tcop/backend_startup.c:517 +#: tcop/backend_startup.c:528 tcop/backend_startup.c:556 #, c-format msgid "incomplete startup packet" msgstr "неповний стартовий пакет" -#: tcop/backend_startup.c:501 tcop/backend_startup.c:538 +#: tcop/backend_startup.c:540 #, c-format msgid "invalid length of startup packet" msgstr "неприпустима довжина стартового пакету" -#: tcop/backend_startup.c:573 +#: tcop/backend_startup.c:597 #, c-format msgid "SSLRequest accepted" -msgstr "" +msgstr "SSLRequest прийнято" -#: tcop/backend_startup.c:576 +#: tcop/backend_startup.c:600 #, c-format msgid "SSLRequest rejected" -msgstr "" +msgstr "SSLRequest відхилено" -#: tcop/backend_startup.c:585 +#: tcop/backend_startup.c:609 #, c-format msgid "failed to send SSL negotiation response: %m" msgstr "помилка надсилання протоколу SSL в процесі відповіді зв'язування: %m" -#: tcop/backend_startup.c:603 +#: tcop/backend_startup.c:627 #, c-format msgid "received unencrypted data after SSL request" msgstr "отримані незашифровані дані після запиту SSL" -#: tcop/backend_startup.c:604 tcop/backend_startup.c:658 +#: tcop/backend_startup.c:628 tcop/backend_startup.c:682 #, c-format msgid "This could be either a client-software bug or evidence of an attempted man-in-the-middle attack." msgstr "Це може бути або помилкою клієнтського програмного забезпечення, або доказом спроби техносферної атаки." -#: tcop/backend_startup.c:627 +#: tcop/backend_startup.c:651 #, c-format msgid "GSSENCRequest accepted" -msgstr "" +msgstr "GSSENCRequest прийнятий" -#: tcop/backend_startup.c:630 +#: tcop/backend_startup.c:654 #, c-format msgid "GSSENCRequest rejected" -msgstr "" +msgstr "GSSENCRequest відхилений" -#: tcop/backend_startup.c:639 +#: tcop/backend_startup.c:663 #, c-format msgid "failed to send GSSAPI negotiation response: %m" msgstr "помилка надсилання GSSAPI в процесі відповіді зв'язування: %m" -#: tcop/backend_startup.c:657 +#: tcop/backend_startup.c:681 #, c-format msgid "received unencrypted data after GSSAPI encryption request" msgstr "отримані незашифровані дані після запиту шифрування GSSAPI" -#: tcop/backend_startup.c:681 +#: tcop/backend_startup.c:709 #, c-format msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u" msgstr "протокол інтерфейсу, що не підтримується, %u.%u: сервер підтримує %u.0 до %u.%u" -#: tcop/backend_startup.c:744 +#: tcop/backend_startup.c:772 #, c-format msgid "Valid values are: \"false\", 0, \"true\", 1, \"database\"." msgstr "Дійсні значення: \"false\", 0, \"true\", 1, \"database\"." -#: tcop/backend_startup.c:785 +#: tcop/backend_startup.c:813 #, c-format msgid "invalid startup packet layout: expected terminator as last byte" msgstr "неприпустима структура стартового пакету: останнім байтом очікувався термінатор" -#: tcop/backend_startup.c:802 +#: tcop/backend_startup.c:830 #, c-format msgid "no PostgreSQL user name specified in startup packet" msgstr "не вказано жодного ім'я користувача PostgreSQL у стартовому пакеті" -#: tcop/fastpath.c:142 utils/fmgr/fmgr.c:2161 +#: tcop/backend_startup.c:884 +#, c-format +msgid "invalid length of cancel request packet" +msgstr "неправильна довжина пакету запиту скасування" + +#: tcop/backend_startup.c:892 +#, c-format +msgid "invalid length of cancel key in cancel request packet" +msgstr "неправильна довжина ключа скасування в пакеті запиту скасування" + +#: tcop/backend_startup.c:1022 +#, c-format +msgid "Cannot specify log_connections option \"%s\" in a list with other options." +msgstr "Неможливо вказати параметр log_connections \"%s\" у списку з іншими параметрами." + +#: tcop/fastpath.c:141 utils/fmgr/fmgr.c:2161 #, c-format msgid "function with OID %u does not exist" msgstr "функція з OID %u не існує" -#: tcop/fastpath.c:149 +#: tcop/fastpath.c:148 #, c-format msgid "cannot call function \"%s\" via fastpath interface" msgstr "неможливо викликати функцію \"%s\" через інтерфейс fastpath" -#: tcop/fastpath.c:234 +#: tcop/fastpath.c:233 #, c-format msgid "fastpath function call: \"%s\" (OID %u)" msgstr "виклик функції fastpath: \"%s\" (OID %u)" -#: tcop/fastpath.c:313 tcop/postgres.c:1369 tcop/postgres.c:1605 -#: tcop/postgres.c:2071 tcop/postgres.c:2333 +#: tcop/fastpath.c:312 tcop/postgres.c:1363 tcop/postgres.c:1599 +#: tcop/postgres.c:2077 tcop/postgres.c:2349 #, c-format msgid "duration: %s ms" msgstr "тривалість: %s мс" -#: tcop/fastpath.c:317 +#: tcop/fastpath.c:316 #, c-format msgid "duration: %s ms fastpath function call: \"%s\" (OID %u)" msgstr "тривалість: %s мс, виклик функції fastpath: \"%s\" (OID %u)" -#: tcop/fastpath.c:353 +#: tcop/fastpath.c:352 #, c-format msgid "function call message contains %d arguments but function requires %d" msgstr "повідомлення виклику функції містить %d аргументів, але функція потребує %d" -#: tcop/fastpath.c:361 +#: tcop/fastpath.c:360 #, c-format msgid "function call message contains %d argument formats but %d arguments" msgstr "повідомлення виклику функції містить %d форматів, але %d аргументів" -#: tcop/fastpath.c:385 +#: tcop/fastpath.c:384 #, c-format msgid "invalid argument size %d in function call message" msgstr "неприпустимий розмір аргументу %d в повідомленні виклику функції" -#: tcop/fastpath.c:448 +#: tcop/fastpath.c:447 #, c-format msgid "incorrect binary data format in function argument %d" msgstr "неправильний формат двійкових даних в аргументі функції %d" -#: tcop/postgres.c:467 tcop/postgres.c:5012 +#: tcop/postgres.c:455 tcop/postgres.c:5018 #, c-format msgid "invalid frontend message type %d" msgstr "неприпустимий тип клієнтського повідомлення %d" -#: tcop/postgres.c:1076 +#: tcop/postgres.c:1070 #, c-format msgid "statement: %s" msgstr "оператор: %s" -#: tcop/postgres.c:1374 +#: tcop/postgres.c:1368 #, c-format msgid "duration: %s ms statement: %s" msgstr "тривалість: %s мс, оператор: %s" -#: tcop/postgres.c:1480 +#: tcop/postgres.c:1474 #, c-format msgid "cannot insert multiple commands into a prepared statement" msgstr "до підтготовленого оператору не можна вставити декілька команд" -#: tcop/postgres.c:1610 +#: tcop/postgres.c:1604 #, c-format msgid "duration: %s ms parse %s: %s" msgstr "тривалість: %s мс, аналізування %s: %s" -#: tcop/postgres.c:1677 tcop/postgres.c:2653 +#: tcop/postgres.c:1671 tcop/postgres.c:2669 #, c-format msgid "unnamed prepared statement does not exist" msgstr "підготовлений оператор без імені не існує" -#: tcop/postgres.c:1729 +#: tcop/postgres.c:1723 #, c-format msgid "bind message has %d parameter formats but %d parameters" msgstr "повідомлення bind має %d форматів, але %d параметрів" -#: tcop/postgres.c:1735 +#: tcop/postgres.c:1729 #, c-format msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d" msgstr "в повідомленні bind передано %d параметрів, але підготовлений оператор \"%s\" потребує %d" -#: tcop/postgres.c:1949 +#: tcop/postgres.c:1943 #, c-format msgid "incorrect binary data format in bind parameter %d" msgstr "невірний формат двійкових даних в параметрі bind %d" -#: tcop/postgres.c:2076 +#: tcop/postgres.c:2082 #, c-format msgid "duration: %s ms bind %s%s%s: %s" msgstr "тривалість: %s мс, повідомлення bind %s%s%s: %s" -#: tcop/postgres.c:2131 tcop/postgres.c:2735 +#: tcop/postgres.c:2137 tcop/postgres.c:2751 #, c-format msgid "portal \"%s\" does not exist" msgstr "портал \"%s\" не існує" -#: tcop/postgres.c:2213 +#: tcop/postgres.c:2230 #, c-format msgid "%s %s%s%s: %s" msgstr "%s %s%s%s: %s" -#: tcop/postgres.c:2215 tcop/postgres.c:2341 +#: tcop/postgres.c:2232 tcop/postgres.c:2357 msgid "execute fetch from" msgstr "виконати витягнення з" -#: tcop/postgres.c:2216 tcop/postgres.c:2342 +#: tcop/postgres.c:2233 tcop/postgres.c:2358 msgid "execute" msgstr "виконувати" -#: tcop/postgres.c:2338 +#: tcop/postgres.c:2354 #, c-format msgid "duration: %s ms %s %s%s%s: %s" msgstr "тривалість: %s мс %s %s%s%s: %s" -#: tcop/postgres.c:2486 +#: tcop/postgres.c:2502 #, c-format msgid "prepare: %s" msgstr "підготовка: %s" -#: tcop/postgres.c:2511 +#: tcop/postgres.c:2527 #, c-format msgid "Parameters: %s" msgstr "Параметри: %s" -#: tcop/postgres.c:2526 +#: tcop/postgres.c:2542 #, c-format msgid "Abort reason: recovery conflict" msgstr "Причина переривання: конфлікт відновлення" -#: tcop/postgres.c:2542 +#: tcop/postgres.c:2558 #, c-format msgid "User was holding shared buffer pin for too long." msgstr "Користувач утримував позначку спільного буферу занадто довго." -#: tcop/postgres.c:2545 +#: tcop/postgres.c:2561 #, c-format msgid "User was holding a relation lock for too long." msgstr "Користувач утримував блокування відношення занадто довго." -#: tcop/postgres.c:2548 +#: tcop/postgres.c:2564 #, c-format msgid "User was or might have been using tablespace that must be dropped." msgstr "Користувач використовував табличний простір який повинен бути видаленим." -#: tcop/postgres.c:2551 +#: tcop/postgres.c:2567 #, c-format msgid "User query might have needed to see row versions that must be removed." msgstr "Запиту користувача потрібно було бачити версії рядків, які повинні бути видалені." -#: tcop/postgres.c:2554 +#: tcop/postgres.c:2570 #, c-format msgid "User was using a logical replication slot that must be invalidated." msgstr "Користувач використовував логічний слот реплікації, який повинен бути анульований." -#: tcop/postgres.c:2560 +#: tcop/postgres.c:2576 #, c-format msgid "User was connected to a database that must be dropped." msgstr "Користувач був підключен до бази даних, яка повинна бути видалена." -#: tcop/postgres.c:2599 +#: tcop/postgres.c:2615 #, c-format msgid "portal \"%s\" parameter $%d = %s" msgstr "параметр порталу \"%s\": $%d = %s" -#: tcop/postgres.c:2602 +#: tcop/postgres.c:2618 #, c-format msgid "portal \"%s\" parameter $%d" msgstr "параметр порталу \"%s\": $%d" -#: tcop/postgres.c:2608 +#: tcop/postgres.c:2624 #, c-format msgid "unnamed portal parameter $%d = %s" msgstr "параметр порталу без назви $%d = %s" -#: tcop/postgres.c:2611 +#: tcop/postgres.c:2627 #, c-format msgid "unnamed portal parameter $%d" msgstr "параметр порталу без назви $%d" -#: tcop/postgres.c:2955 +#: tcop/postgres.c:2982 #, c-format msgid "terminating connection because of unexpected SIGQUIT signal" msgstr "завершення підключення через неочікуваний сигнал SIGQUIT" -#: tcop/postgres.c:2961 +#: tcop/postgres.c:2988 #, c-format msgid "terminating connection because of crash of another server process" msgstr "завершення підключення через аварійне завершення роботи іншого серверного процесу" -#: tcop/postgres.c:2962 +#: tcop/postgres.c:2989 #, 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 "Керуючий процес віддав команду цьому серверному процесу відкотити поточну транзакцію і завершитися, тому, що інший серверний процес завершився неправильно і можливо пошкодив спільну пам'ять." -#: tcop/postgres.c:2966 tcop/postgres.c:3219 +#: tcop/postgres.c:2993 tcop/postgres.c:3246 #, c-format msgid "In a moment you should be able to reconnect to the database and repeat your command." msgstr "В цей момент ви можете повторно підключитися до бази даних і повторити вашу команду." -#: tcop/postgres.c:2973 +#: tcop/postgres.c:3000 #, c-format msgid "terminating connection due to immediate shutdown command" msgstr "завершення підключення через команду негайного завершення роботи" -#: tcop/postgres.c:3051 +#: tcop/postgres.c:3078 #, c-format msgid "floating-point exception" msgstr "виняток в операції з рухомою комою" -#: tcop/postgres.c:3052 +#: tcop/postgres.c:3079 #, 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." msgstr "Надійшло повідомлення про неприпустиму операцію з рухомою комою. Можливо, це значить, що результат виявився за діапазоном або виникла неприпустима операція, така як ділення на нуль." -#: tcop/postgres.c:3217 +#: tcop/postgres.c:3244 #, c-format msgid "terminating connection due to conflict with recovery" msgstr "завершення підключення через конфлікт з процесом відновлення" -#: tcop/postgres.c:3289 +#: tcop/postgres.c:3316 #, c-format msgid "canceling authentication due to timeout" msgstr "скасування автентифікації через тайм-аут" -#: tcop/postgres.c:3293 +#: tcop/postgres.c:3320 #, c-format msgid "terminating autovacuum process due to administrator command" msgstr "завершення процесу автоочистки по команді адміністратора" -#: tcop/postgres.c:3297 +#: tcop/postgres.c:3324 #, c-format msgid "terminating logical replication worker due to administrator command" msgstr "завершення обробника логічної реплікації по команді адміністратора" -#: tcop/postgres.c:3317 +#: tcop/postgres.c:3339 +#, c-format +msgid "terminating walreceiver process due to administrator command" +msgstr "завершення процесу walreceiver по команді адміністратора" + +#: tcop/postgres.c:3355 #, c-format msgid "terminating connection due to administrator command" msgstr "завершення підключення по команді адміністратора" -#: tcop/postgres.c:3348 +#: tcop/postgres.c:3386 #, c-format msgid "connection to client lost" msgstr "підключення до клієнта втрачено" -#: tcop/postgres.c:3400 +#: tcop/postgres.c:3438 #, c-format msgid "canceling statement due to lock timeout" msgstr "виконання оператора скасовано через тайм-аут блокування" -#: tcop/postgres.c:3407 +#: tcop/postgres.c:3445 #, c-format msgid "canceling statement due to statement timeout" msgstr "виконання оператора скасовано через тайм-аут" -#: tcop/postgres.c:3414 +#: tcop/postgres.c:3452 #, c-format msgid "canceling autovacuum task" msgstr "скасування завдання автоочистки" -#: tcop/postgres.c:3427 +#: tcop/postgres.c:3465 #, c-format msgid "canceling statement due to user request" msgstr "виконання оператора скасовано по запиту користувача" -#: tcop/postgres.c:3448 +#: tcop/postgres.c:3486 #, c-format msgid "terminating connection due to idle-in-transaction timeout" msgstr "завершення підключення через тайм-аут бездіяльності в транзакції" -#: tcop/postgres.c:3461 +#: tcop/postgres.c:3499 #, c-format msgid "terminating connection due to transaction timeout" msgstr "переривання з'єднання через тайм-аут транзакції" -#: tcop/postgres.c:3474 +#: tcop/postgres.c:3512 #, c-format msgid "terminating connection due to idle-session timeout" msgstr "завершення підключення через тайм-аут неактивного сеансу" -#: tcop/postgres.c:3564 -#, c-format -msgid "stack depth limit exceeded" -msgstr "перевищено ліміт глибини стека" - -#: tcop/postgres.c:3565 -#, 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\" (поточне значення %d КБ), попередньо переконавшись, що ОС надає достатній розмір стеку." - -#: tcop/postgres.c:3612 -#, c-format -msgid "\"max_stack_depth\" must not exceed %ldkB." -msgstr "Значення \"max_stack_depth\" не повинно перевищувати %ld КБ." - -#: tcop/postgres.c:3614 -#, c-format -msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent." -msgstr "Збільшіть ліміт глибини стека в системі через команду \"ulimit -s\" або через локальний еквівалент." - -#: tcop/postgres.c:3637 +#: tcop/postgres.c:3548 #, c-format msgid "\"client_connection_check_interval\" must be set to 0 on this platform." -msgstr "" +msgstr "\"client_connection_check_interval\" має бути встановлений в 0 на цій платформі." -#: tcop/postgres.c:3658 +#: tcop/postgres.c:3569 #, c-format msgid "Cannot enable parameter when \"log_statement_stats\" is true." msgstr "Не можна ввімкнути параметр, коли \"log_statement_stats\" дорівнює true." -#: tcop/postgres.c:3673 +#: tcop/postgres.c:3584 #, c-format msgid "Cannot enable \"log_statement_stats\" when \"log_parser_stats\", \"log_planner_stats\", or \"log_executor_stats\" is true." msgstr "Не можна ввімкнути \"log_statement_stats\", коли \"log_parser_stats\", \"log_planner_stats\", або \"log_executor_stats\" дорівнюють true." -#: tcop/postgres.c:4098 +#: tcop/postgres.c:4024 #, c-format msgid "invalid command-line argument for server process: %s" msgstr "неприпустимий аргумент командного рядка для серверного процесу: %s" -#: tcop/postgres.c:4099 tcop/postgres.c:4105 +#: tcop/postgres.c:4025 tcop/postgres.c:4031 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: tcop/postgres.c:4103 +#: tcop/postgres.c:4029 #, c-format msgid "%s: invalid command-line argument: %s" msgstr "%s: неприпустимий аргумент командного рядка: %s" -#: tcop/postgres.c:4156 +#: tcop/postgres.c:4082 #, c-format msgid "%s: no database nor user name specified" msgstr "%s: ні база даних, ні ім'я користувача не вказані" -#: tcop/postgres.c:4909 +#: tcop/postgres.c:4275 +#, c-format +msgid "could not generate random cancel key" +msgstr "не вдалося згенерувати випадковий ключ скасування" + +#: tcop/postgres.c:4677 +#, c-format +msgid "connection ready: setup total=%.3f ms, fork=%.3f ms, authentication=%.3f ms" +msgstr "з'єднання готове: загальний час налаштування=%.3f мс, розгалуження=%.3f мс, аутентифікація=%.3f мс" + +#: tcop/postgres.c:4908 #, c-format msgid "invalid CLOSE message subtype %d" msgstr "неприпустимий підтип повідомлення CLOSE %d" -#: tcop/postgres.c:4946 +#: tcop/postgres.c:4945 #, c-format msgid "invalid DESCRIBE message subtype %d" msgstr "неприпустимий підтип повідомлення DESCRIBE %d" -#: tcop/postgres.c:5033 +#: tcop/postgres.c:5039 #, c-format msgid "fastpath function calls not supported in a replication connection" msgstr "виклики функції fastpath не підтримуються в підключенні реплікації" -#: tcop/postgres.c:5037 +#: tcop/postgres.c:5043 #, c-format msgid "extended query protocol not supported in a replication connection" msgstr "протокол розширених запитів не підтримується в підключенні реплікації" -#: tcop/postgres.c:5217 +#: tcop/postgres.c:5189 #, c-format msgid "disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s%s" msgstr "відключення: час сеансу: %d:%02d:%02d.%03d користувач = %s база даних = %s хост = %s%s%s" -#: tcop/pquery.c:641 +#: tcop/pquery.c:642 #, c-format msgid "bind message has %d result formats but query has %d columns" msgstr "повідомлення bind має %d форматів, але запит має %d стовпців" -#: tcop/pquery.c:944 tcop/pquery.c:1701 +#: tcop/pquery.c:940 tcop/pquery.c:1684 #, c-format msgid "cursor can only scan forward" msgstr "курсор може сканувати лише вперед" -#: tcop/pquery.c:945 tcop/pquery.c:1702 +#: tcop/pquery.c:941 tcop/pquery.c:1685 #, c-format msgid "Declare it with SCROLL option to enable backward scan." msgstr "Оголосити з параметром SCROLL, щоб активувати зворотню розгортку." @@ -23365,68 +24511,73 @@ msgid "cannot execute %s within security-restricted operation" msgstr "не можна виконати %s в межах операції з обмеженнями безпеки" #. translator: %s is name of a SQL command, eg LISTEN -#: tcop/utility.c:821 +#: tcop/utility.c:824 #, c-format msgid "cannot execute %s within a background process" msgstr "не можна виконати %s у фоновому процесі" #. translator: %s is name of a SQL command, eg CHECKPOINT -#: tcop/utility.c:947 +#: tcop/utility.c:950 #, c-format msgid "permission denied to execute %s command" msgstr "немає дозволу для виконання команди %s" -#: tcop/utility.c:949 +#: tcop/utility.c:952 #, c-format msgid "Only roles with privileges of the \"%s\" role may execute this command." msgstr "Цю команду можуть виконувати лише ролі з привілеями ролі \"%s\"." -#: tsearch/dict_ispell.c:52 tsearch/dict_thesaurus.c:616 +#: tcop/utility.c:1886 +#, c-format +msgid "CREATE STATISTICS only supports relation names in the FROM clause" +msgstr "CREATE STATISTICS підтримує тільки назви відношень в реченні FROM" + +#: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:616 #, c-format msgid "multiple DictFile parameters" msgstr "повторюваний параметр DictFile" -#: tsearch/dict_ispell.c:63 +#: tsearch/dict_ispell.c:64 #, c-format msgid "multiple AffFile parameters" msgstr "повторюваний параметр AffFile" -#: tsearch/dict_ispell.c:82 +#: tsearch/dict_ispell.c:83 #, c-format msgid "unrecognized Ispell parameter: \"%s\"" msgstr "нерозпізнаний параметр Ispell: \"%s\"" -#: tsearch/dict_ispell.c:96 +#: tsearch/dict_ispell.c:97 #, c-format msgid "missing AffFile parameter" msgstr "пропущено параметр AffFile" -#: tsearch/dict_ispell.c:102 tsearch/dict_thesaurus.c:640 +#: tsearch/dict_ispell.c:103 tsearch/dict_thesaurus.c:640 #, c-format msgid "missing DictFile parameter" msgstr "пропущено параметр DictFile" -#: tsearch/dict_simple.c:58 +#: tsearch/dict_simple.c:59 #, c-format msgid "multiple Accept parameters" msgstr "повторюваний параметр Accept" -#: tsearch/dict_simple.c:66 +#: tsearch/dict_simple.c:67 #, c-format msgid "unrecognized simple dictionary parameter: \"%s\"" msgstr "нерозпізнаний параметр простого словника: \"%s\"" -#: tsearch/dict_synonym.c:118 +#: tsearch/dict_synonym.c:120 #, c-format msgid "unrecognized synonym parameter: \"%s\"" msgstr "нерозпізнаний параметр функціїї синонімів: \"%s\"" -#: tsearch/dict_synonym.c:125 +#: tsearch/dict_synonym.c:127 #, c-format msgid "missing Synonyms parameter" msgstr "пропущено параметр Synonyms" -#: tsearch/dict_synonym.c:132 +#: tsearch/dict_synonym.c:134 #, c-format msgid "could not open synonym file \"%s\": %m" msgstr "не вдалося відкрити файл синонімів \"%s\": %m" @@ -23501,89 +24652,84 @@ msgstr "нерозпізнаний параметр тезаурусу: \"%s\"" msgid "missing Dictionary parameter" msgstr "пропущено параметр Dictionary" -#: tsearch/spell.c:381 tsearch/spell.c:398 tsearch/spell.c:407 -#: tsearch/spell.c:1043 +#: tsearch/spell.c:383 tsearch/spell.c:400 tsearch/spell.c:409 +#: tsearch/spell.c:1046 #, c-format msgid "invalid affix flag \"%s\"" msgstr "неприпустимиа позначка affix \"%s\"" -#: tsearch/spell.c:385 tsearch/spell.c:1047 +#: tsearch/spell.c:387 tsearch/spell.c:1050 #, c-format msgid "affix flag \"%s\" is out of range" msgstr "позначка affix \"%s\" поза діапазоном" -#: tsearch/spell.c:415 +#: tsearch/spell.c:417 #, c-format msgid "invalid character in affix flag \"%s\"" msgstr "неприпустимий символ в позначці affix \"%s\"" -#: tsearch/spell.c:435 +#: tsearch/spell.c:437 #, c-format msgid "invalid affix flag \"%s\" with \"long\" flag value" msgstr "неприпустима позначка affix \"%s\" зі значенням позначки \"long\"" -#: tsearch/spell.c:525 +#: tsearch/spell.c:527 #, c-format msgid "could not open dictionary file \"%s\": %m" msgstr "не вдалося відкрити файл словника \"%s\": %m" -#: tsearch/spell.c:749 utils/adt/regexp.c:223 jsonpath_gram.y:629 +#: tsearch/spell.c:751 utils/adt/regexp.c:223 jsonpath_gram.y:631 #, c-format msgid "invalid regular expression: %s" msgstr "неприпустимий регулярний вираз: %s" -#: tsearch/spell.c:963 tsearch/spell.c:980 tsearch/spell.c:997 -#: tsearch/spell.c:1014 tsearch/spell.c:1079 gram.y:18735 gram.y:18752 +#: tsearch/spell.c:965 tsearch/spell.c:982 tsearch/spell.c:999 +#: tsearch/spell.c:1016 tsearch/spell.c:1082 gram.y:18905 gram.y:18922 #, c-format msgid "syntax error" msgstr "синтаксична помилка" -#: tsearch/spell.c:1170 tsearch/spell.c:1182 tsearch/spell.c:1742 -#: tsearch/spell.c:1747 tsearch/spell.c:1752 +#: tsearch/spell.c:1174 tsearch/spell.c:1186 tsearch/spell.c:1751 +#: tsearch/spell.c:1756 tsearch/spell.c:1761 #, c-format msgid "invalid affix alias \"%s\"" msgstr "неприпустимий псевдонім affix \"%s\"" -#: tsearch/spell.c:1223 tsearch/spell.c:1294 tsearch/spell.c:1443 +#: tsearch/spell.c:1227 tsearch/spell.c:1298 tsearch/spell.c:1447 #, c-format msgid "could not open affix file \"%s\": %m" msgstr "не вдалося відкрити файл affix \"%s\": %m" -#: tsearch/spell.c:1277 +#: tsearch/spell.c:1281 #, c-format msgid "Ispell dictionary supports only \"default\", \"long\", and \"num\" flag values" msgstr "Словник Ispell підтримує для позначки лише значення \"default\", \"long\", і\"num\"" -#: tsearch/spell.c:1321 +#: tsearch/spell.c:1325 #, c-format msgid "invalid number of flag vector aliases" msgstr "неприпустима кількість векторів позначок" -#: tsearch/spell.c:1344 +#: tsearch/spell.c:1348 #, c-format msgid "number of aliases exceeds specified number %d" msgstr "кількість псевдонімів перевищує вказане число %d" -#: tsearch/spell.c:1559 +#: tsearch/spell.c:1563 #, c-format msgid "affix file contains both old-style and new-style commands" msgstr "файл affix містить команди і в старому, і в новому стилі" -#: tsearch/to_tsany.c:194 utils/adt/tsvector.c:277 utils/adt/tsvector_op.c:1126 +#: tsearch/to_tsany.c:194 utils/adt/tsvector.c:274 utils/adt/tsvector_op.c:1126 #, c-format msgid "string is too long for tsvector (%d bytes, max %d bytes)" msgstr "рядок занадто довгий для tsvector (%d байт, максимум %d байт)" -#: tsearch/ts_locale.c:236 +#: tsearch/ts_locale.c:191 #, c-format msgid "line %d of configuration file \"%s\": \"%s\"" msgstr "рядок %d файлу конфігурації \"%s\": \"%s\"" -#: tsearch/ts_locale.c:315 -#, c-format -msgid "conversion from wchar_t to server encoding failed: %m" -msgstr "перетворити wchar_t в кодування серверу не вдалося: %mв" - #: tsearch/ts_parse.c:387 tsearch/ts_parse.c:394 tsearch/ts_parse.c:573 #: tsearch/ts_parse.c:580 #, c-format @@ -23596,12 +24742,12 @@ msgstr "слово занадто довге для індексування" msgid "Words longer than %d characters are ignored." msgstr "Слова довші за %d символів пропускаються." -#: tsearch/ts_utils.c:51 +#: tsearch/ts_utils.c:52 #, c-format msgid "invalid text search configuration file name \"%s\"" msgstr "неприпустиме ім'я файлу конфігурації текстового пошуку \"%s\"" -#: tsearch/ts_utils.c:83 +#: tsearch/ts_utils.c:84 #, c-format msgid "could not open stop-word file \"%s\": %m" msgstr "не вдалося відкрити файл стоп-слова \"%s\": %m" @@ -23618,60 +24764,106 @@ msgstr "нерозпізнаний параметр заголовку: \"%s\"" #: tsearch/wparser_def.c:2674 #, c-format -msgid "MinWords should be less than MaxWords" -msgstr "Значення MinWords повинно бути меньшим за MaxWords" +msgid "%s must be less than %s" +msgstr "%s має бути менше ніж %s" #: tsearch/wparser_def.c:2678 #, c-format -msgid "MinWords should be positive" -msgstr "Значення MinWords повинно бути позитивним" +msgid "%s must be positive" +msgstr "%s має бути додатним" -#: tsearch/wparser_def.c:2682 +#: tsearch/wparser_def.c:2682 tsearch/wparser_def.c:2686 #, c-format -msgid "ShortWord should be >= 0" -msgstr "Значення ShortWord повинно бути >= 0" +msgid "%s must be >= 0" +msgstr "%s повинно бути >= 0" -#: tsearch/wparser_def.c:2686 -#, c-format -msgid "MaxFragments should be >= 0" -msgstr "Значення MaxFragments повинно бути >= 0" - -#: utils/activity/pgstat.c:435 +#: utils/activity/pgstat.c:534 #, c-format msgid "could not unlink permanent statistics file \"%s\": %m" msgstr "не вдалося від'єднати файл постійної статистики \"%s\": %m" -#: utils/activity/pgstat.c:1252 +#: utils/activity/pgstat.c:1426 #, c-format msgid "invalid statistics kind: \"%s\"" msgstr "неприпустимий тип статистики: \"%s\"" -#: utils/activity/pgstat.c:1332 +#: utils/activity/pgstat.c:1471 +#, c-format +msgid "custom cumulative statistics name is invalid" +msgstr "назва користувацької кумулятивної статистики недійсна" + +#: utils/activity/pgstat.c:1472 +#, c-format +msgid "Provide a non-empty name for the custom cumulative statistics." +msgstr "Надайте непорожнє ім'я для користувацької кумулятивної статистики." + +#: utils/activity/pgstat.c:1475 +#, c-format +msgid "custom cumulative statistics ID %u is out of range" +msgstr "ID користувацької кумулятивної статистики %u поза межами діапазону" + +#: utils/activity/pgstat.c:1476 +#, c-format +msgid "Provide a custom cumulative statistics ID between %u and %u." +msgstr "Надайте ID користувацької кумулятивної статистики від %u до %u." + +#: utils/activity/pgstat.c:1481 utils/activity/pgstat.c:1508 +#: utils/activity/pgstat.c:1521 +#, c-format +msgid "failed to register custom cumulative statistics \"%s\" with ID %u" +msgstr "не вдалося зареєструвати користувацьку кумулятивну статистику \"%s\" з ID %u" + +#: utils/activity/pgstat.c:1482 +#, c-format +msgid "Custom cumulative statistics must be registered while initializing modules in \"shared_preload_libraries\"." +msgstr "Користувацька кумулятивна статистика повинна бути зареєстрована під час ініціалізації модулів в \"shared_preload_libraries\"." + +#: utils/activity/pgstat.c:1491 +#, c-format +msgid "custom cumulative statistics property is invalid" +msgstr "властивість користувацької кумулятивної статистики недійсна" + +#: utils/activity/pgstat.c:1492 +#, c-format +msgid "Custom cumulative statistics require a shared memory size for fixed-numbered objects." +msgstr "Користувацька кумулятивна статистика потребує розмір спільної пам'яті для об'єктів з фіксованими номерами." + +#: utils/activity/pgstat.c:1509 +#, c-format +msgid "Custom cumulative statistics \"%s\" already registered with the same ID." +msgstr "Користувацька кумулятивна статистика \"%s\" вже зареєстрована з тим же ID." + +#: utils/activity/pgstat.c:1522 +#, c-format +msgid "Existing cumulative statistics with ID %u has the same name." +msgstr "Існуюча кумулятивна статистика з ID %u має те саме ім'я." + +#: utils/activity/pgstat.c:1528 +#, c-format +msgid "registered custom cumulative statistics \"%s\" with ID %u" +msgstr "зареєстровано користувацьку кумулятивну статистику \"%s\" з ID %u" + +#: utils/activity/pgstat.c:1597 #, c-format msgid "could not open temporary statistics file \"%s\": %m" msgstr "не вдалося відкрити тимчасовий файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1444 +#: utils/activity/pgstat.c:1718 #, c-format msgid "could not write temporary statistics file \"%s\": %m" msgstr "не вдалося записати в тимчасовий файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1453 +#: utils/activity/pgstat.c:1727 #, c-format msgid "could not close temporary statistics file \"%s\": %m" msgstr "не вдалося закрити тимчасовий файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1461 -#, c-format -msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" -msgstr "не вдалося перейменувати тимчасовий файл статистики з \"%s\" в \"%s\": %m" - -#: utils/activity/pgstat.c:1510 +#: utils/activity/pgstat.c:1781 #, c-format msgid "could not open statistics file \"%s\": %m" msgstr "не вдалося відкрити файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1672 +#: utils/activity/pgstat.c:2032 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "пошкоджений файл статистики \"%s\"" @@ -23681,199 +24873,204 @@ msgstr "пошкоджений файл статистики \"%s\"" msgid "function call to dropped function" msgstr "виклик видаленої функції" -#: utils/activity/pgstat_xact.c:362 +#: utils/activity/pgstat_shmem.c:536 #, c-format -msgid "resetting existing statistics for kind %s, db=%u, oid=%u" -msgstr "скидання існуючої статистики для типу %s, db=%u, oid=%u" +msgid "Failed while allocating entry %u/%u/%." +msgstr "Не вдалося виділити запис %u/%u/%." -#: utils/activity/wait_event.c:207 utils/activity/wait_event.c:232 +#: utils/activity/pgstat_xact.c:366 +#, c-format +msgid "resetting existing statistics for kind %s, db=%u, oid=%" +msgstr "скидання існуючої статистики для типу %s, db=%u, oid=%" + +#: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format msgid "wait event \"%s\" already exists in type \"%s\"" -msgstr "" +msgstr "подія очікування \"%s\" вже існує в типі \"%s\"" -#: utils/activity/wait_event.c:246 +#: utils/activity/wait_event.c:245 #, c-format msgid "too many custom wait events" -msgstr "" +msgstr "занадто багато користувацьких подій очікування" -#: utils/adt/acl.c:183 utils/adt/name.c:93 +#: utils/adt/acl.c:204 utils/adt/name.c:93 #, c-format msgid "identifier too long" msgstr "занадто довгий ідентифікатор" -#: utils/adt/acl.c:184 utils/adt/name.c:94 +#: utils/adt/acl.c:205 utils/adt/name.c:94 #, c-format msgid "Identifier must be less than %d characters." msgstr "Ідентифікатор повинен бути короче ніж %d символів." -#: utils/adt/acl.c:272 +#: utils/adt/acl.c:293 #, c-format msgid "unrecognized key word: \"%s\"" msgstr "нерозпізнане ключове слово: \"%s\"" -#: utils/adt/acl.c:273 +#: utils/adt/acl.c:294 #, c-format msgid "ACL key word must be \"group\" or \"user\"." msgstr "Ключовим словом ACL повинно бути \"group\" або \"user\"." -#: utils/adt/acl.c:281 +#: utils/adt/acl.c:302 #, c-format msgid "missing name" msgstr "пропущено ім'я" -#: utils/adt/acl.c:282 +#: utils/adt/acl.c:303 #, c-format msgid "A name must follow the \"group\" or \"user\" key word." msgstr "За ключовими словами \"group\" або \"user\" повинно йти ім'я." -#: utils/adt/acl.c:288 +#: utils/adt/acl.c:309 #, c-format msgid "missing \"=\" sign" msgstr "пропущено знак \"=\"" -#: utils/adt/acl.c:350 +#: utils/adt/acl.c:368 #, c-format msgid "invalid mode character: must be one of \"%s\"" msgstr "неприпустимий символ режиму: повинен бути один з \"%s\"" -#: utils/adt/acl.c:380 +#: utils/adt/acl.c:398 #, c-format msgid "a name must follow the \"/\" sign" msgstr "за знаком \"/\" повинно прямувати ім'я" -#: utils/adt/acl.c:392 +#: utils/adt/acl.c:410 #, c-format msgid "defaulting grantor to user ID %u" msgstr "призначив права користувач з ідентифікатором %u" -#: utils/adt/acl.c:578 +#: utils/adt/acl.c:596 #, c-format msgid "ACL array contains wrong data type" msgstr "Масив ACL містить неправильний тип даних" -#: utils/adt/acl.c:582 +#: utils/adt/acl.c:600 #, c-format msgid "ACL arrays must be one-dimensional" msgstr "Масиви ACL повинні бути одновимірними" -#: utils/adt/acl.c:586 +#: utils/adt/acl.c:604 #, c-format msgid "ACL arrays must not contain null values" msgstr "Масиви ACL не повинні містити значення null" -#: utils/adt/acl.c:615 +#: utils/adt/acl.c:633 #, c-format msgid "extra garbage at the end of the ACL specification" msgstr "зайве сміття в кінці специфікації ACL" -#: utils/adt/acl.c:1263 +#: utils/adt/acl.c:1281 #, c-format msgid "grant options cannot be granted back to your own grantor" msgstr "параметри призначення прав не можна повернути тому, хто призначив їх вам" -#: utils/adt/acl.c:1579 +#: utils/adt/acl.c:1597 #, c-format msgid "aclinsert is no longer supported" msgstr "aclinsert більше не підтримується" -#: utils/adt/acl.c:1589 +#: utils/adt/acl.c:1607 #, c-format msgid "aclremove is no longer supported" msgstr "aclremove більше не підтримується" -#: utils/adt/acl.c:1709 +#: utils/adt/acl.c:1726 #, c-format msgid "unrecognized privilege type: \"%s\"" msgstr "нерозпізнаний тип прав: \"%s\"" -#: utils/adt/acl.c:3550 utils/adt/regproc.c:100 utils/adt/regproc.c:265 +#: utils/adt/acl.c:3565 utils/adt/regproc.c:100 utils/adt/regproc.c:265 #, c-format msgid "function \"%s\" does not exist" msgstr "функція \"%s\" не існує" -#: utils/adt/acl.c:5196 +#: utils/adt/acl.c:5347 #, c-format msgid "must be able to SET ROLE \"%s\"" msgstr "потрібно мати можливість SET ROLE \"%s\"" -#: utils/adt/array_userfuncs.c:102 utils/adt/array_userfuncs.c:489 -#: utils/adt/array_userfuncs.c:866 utils/adt/json.c:602 utils/adt/json.c:740 -#: utils/adt/json.c:790 utils/adt/jsonb.c:1025 utils/adt/jsonb.c:1098 +#: utils/adt/array_userfuncs.c:118 utils/adt/array_userfuncs.c:565 +#: utils/adt/array_userfuncs.c:942 utils/adt/json.c:611 utils/adt/json.c:749 +#: utils/adt/json.c:799 utils/adt/jsonb.c:1025 utils/adt/jsonb.c:1098 #: utils/adt/jsonb.c:1530 utils/adt/jsonb.c:1718 utils/adt/jsonb.c:1728 #, c-format msgid "could not determine input data type" msgstr "не вдалося визначити тип вхідних даних" -#: utils/adt/array_userfuncs.c:107 +#: utils/adt/array_userfuncs.c:123 #, c-format msgid "input data type is not an array" msgstr "тип вхідних даних не є масивом" -#: utils/adt/array_userfuncs.c:151 utils/adt/array_userfuncs.c:203 -#: utils/adt/float.c:1222 utils/adt/float.c:1296 utils/adt/float.c:4022 -#: utils/adt/float.c:4060 utils/adt/int.c:778 utils/adt/int.c:800 +#: utils/adt/array_userfuncs.c:167 utils/adt/array_userfuncs.c:249 +#: utils/adt/float.c:1229 utils/adt/float.c:1303 utils/adt/float.c:4107 +#: utils/adt/float.c:4145 utils/adt/int.c:778 utils/adt/int.c:800 #: utils/adt/int.c:814 utils/adt/int.c:828 utils/adt/int.c:859 #: utils/adt/int.c:880 utils/adt/int.c:997 utils/adt/int.c:1011 #: utils/adt/int.c:1025 utils/adt/int.c:1058 utils/adt/int.c:1072 #: utils/adt/int.c:1086 utils/adt/int.c:1117 utils/adt/int.c:1199 #: utils/adt/int.c:1263 utils/adt/int.c:1331 utils/adt/int.c:1337 -#: utils/adt/int8.c:1256 utils/adt/numeric.c:1917 utils/adt/numeric.c:4454 -#: utils/adt/rangetypes.c:1488 utils/adt/rangetypes.c:1501 -#: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1135 -#: utils/adt/varlena.c:3137 +#: utils/adt/int8.c:1256 utils/adt/numeric.c:2040 utils/adt/numeric.c:4558 +#: utils/adt/rangetypes.c:1552 utils/adt/rangetypes.c:1565 +#: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1143 +#: utils/adt/varlena.c:3195 utils/adt/varlena.c:4129 #, c-format msgid "integer out of range" msgstr "ціле число поза діапазоном" -#: utils/adt/array_userfuncs.c:158 utils/adt/array_userfuncs.c:213 +#: utils/adt/array_userfuncs.c:174 utils/adt/array_userfuncs.c:259 #, c-format msgid "argument must be empty or one-dimensional array" msgstr "аргумент повинен бути пустим або одновимірним масивом" -#: utils/adt/array_userfuncs.c:295 utils/adt/array_userfuncs.c:334 -#: utils/adt/array_userfuncs.c:371 utils/adt/array_userfuncs.c:400 -#: utils/adt/array_userfuncs.c:428 +#: utils/adt/array_userfuncs.c:371 utils/adt/array_userfuncs.c:410 +#: utils/adt/array_userfuncs.c:447 utils/adt/array_userfuncs.c:476 +#: utils/adt/array_userfuncs.c:504 #, c-format msgid "cannot concatenate incompatible arrays" msgstr "об'єднувати несумісні масиви не можна" -#: utils/adt/array_userfuncs.c:296 +#: utils/adt/array_userfuncs.c:372 #, c-format msgid "Arrays with element types %s and %s are not compatible for concatenation." msgstr "Масиви з елементами типів %s і %s не є сумісними для об'єднання." -#: utils/adt/array_userfuncs.c:335 +#: utils/adt/array_userfuncs.c:411 #, c-format msgid "Arrays of %d and %d dimensions are not compatible for concatenation." msgstr "Масиви з вимірами %d і %d не є сумісними для об'єднання." -#: utils/adt/array_userfuncs.c:372 +#: utils/adt/array_userfuncs.c:448 #, c-format msgid "Arrays with differing element dimensions are not compatible for concatenation." msgstr "Масиви з різними вимірами елементів не є сумісними для об'єднання." -#: utils/adt/array_userfuncs.c:401 utils/adt/array_userfuncs.c:429 +#: utils/adt/array_userfuncs.c:477 utils/adt/array_userfuncs.c:505 #, c-format msgid "Arrays with differing dimensions are not compatible for concatenation." msgstr "Масиви з різними вимірами не є сумісними для об'єднання." -#: utils/adt/array_userfuncs.c:975 utils/adt/array_userfuncs.c:983 -#: utils/adt/arrayfuncs.c:5616 utils/adt/arrayfuncs.c:5622 +#: utils/adt/array_userfuncs.c:1051 utils/adt/array_userfuncs.c:1059 +#: utils/adt/arrayfuncs.c:5628 utils/adt/arrayfuncs.c:5634 #, c-format msgid "cannot accumulate arrays of different dimensionality" msgstr "накопичувати масиви різної розмірності не можна" -#: utils/adt/array_userfuncs.c:1272 utils/adt/array_userfuncs.c:1426 +#: utils/adt/array_userfuncs.c:1348 utils/adt/array_userfuncs.c:1502 #, c-format msgid "searching for elements in multidimensional arrays is not supported" msgstr "пошук елементів у багатовимірних масивах не підтримується" -#: utils/adt/array_userfuncs.c:1301 +#: utils/adt/array_userfuncs.c:1377 #, c-format msgid "initial position must not be null" msgstr "початкова позиція не повинна бути null" -#: utils/adt/array_userfuncs.c:1674 +#: utils/adt/array_userfuncs.c:1750 #, c-format msgid "sample size must be between 0 and %d" msgstr "розмір вибірки повинен бути між 0 і %d" @@ -23958,7 +25155,7 @@ msgstr "Неочікуваний елемент масиву." msgid "Specified array dimensions do not match array contents." msgstr "Вказані виміри масиву не відповідають його вмісту." -#: utils/adt/arrayfuncs.c:783 utils/adt/jsonfuncs.c:2598 +#: utils/adt/arrayfuncs.c:783 utils/adt/jsonfuncs.c:2600 #, c-format msgid "Multidimensional arrays must have sub-arrays with matching dimensions." msgstr "Багатовимірні масиви повинні мати вкладені масиви з відповідними вимірами." @@ -23969,14 +25166,14 @@ msgid "Incorrectly quoted array element." msgstr "Неправильно процитовано елемент масиву." #: utils/adt/arrayfuncs.c:942 utils/adt/multirangetypes.c:165 -#: utils/adt/rangetypes.c:2464 utils/adt/rangetypes.c:2472 +#: utils/adt/rangetypes.c:2528 utils/adt/rangetypes.c:2536 #: utils/adt/rowtypes.c:218 utils/adt/rowtypes.c:229 #, c-format msgid "Unexpected end of input." msgstr "Неочікуваний кінец введення." -#: utils/adt/arrayfuncs.c:1301 utils/adt/arrayfuncs.c:3499 -#: utils/adt/arrayfuncs.c:6106 +#: utils/adt/arrayfuncs.c:1301 utils/adt/arrayfuncs.c:3511 +#: utils/adt/arrayfuncs.c:6120 #, c-format msgid "invalid number of dimensions: %d" msgstr "неприпустима кількість вимірів: %d" @@ -23992,7 +25189,7 @@ msgid "binary data has array element type %u (%s) instead of expected %u (%s)" msgstr "двійкові дані мають тип елементу масиву %u (%s) замість очікуваного %u (%s)" #: utils/adt/arrayfuncs.c:1378 utils/adt/multirangetypes.c:450 -#: utils/adt/rangetypes.c:351 utils/cache/lsyscache.c:2958 +#: utils/adt/rangetypes.c:353 utils/cache/lsyscache.c:3098 #, c-format msgid "no binary input function available for type %s" msgstr "для типу %s немає функції введення двійкових даних" @@ -24003,7 +25200,7 @@ msgid "improper binary format in array element %d" msgstr "неправильний двійковий формат в елементі масиву %d" #: utils/adt/arrayfuncs.c:1588 utils/adt/multirangetypes.c:455 -#: utils/adt/rangetypes.c:356 utils/cache/lsyscache.c:2991 +#: utils/adt/rangetypes.c:358 utils/cache/lsyscache.c:3131 #, c-format msgid "no binary output function available for type %s" msgstr "для типу %s немає функції виводу двійкових даних" @@ -24015,11 +25212,11 @@ msgstr "розрізання масивів постійної довжини н #: utils/adt/arrayfuncs.c:2245 utils/adt/arrayfuncs.c:2267 #: utils/adt/arrayfuncs.c:2316 utils/adt/arrayfuncs.c:2570 -#: utils/adt/arrayfuncs.c:2915 utils/adt/arrayfuncs.c:6092 -#: utils/adt/arrayfuncs.c:6118 utils/adt/arrayfuncs.c:6129 -#: utils/adt/json.c:1433 utils/adt/json.c:1505 utils/adt/jsonb.c:1317 -#: utils/adt/jsonb.c:1401 utils/adt/jsonfuncs.c:4710 utils/adt/jsonfuncs.c:4863 -#: utils/adt/jsonfuncs.c:4974 utils/adt/jsonfuncs.c:5022 +#: utils/adt/arrayfuncs.c:2915 utils/adt/arrayfuncs.c:6106 +#: utils/adt/arrayfuncs.c:6132 utils/adt/arrayfuncs.c:6143 +#: utils/adt/json.c:1441 utils/adt/json.c:1509 utils/adt/jsonb.c:1317 +#: utils/adt/jsonb.c:1401 utils/adt/jsonfuncs.c:4734 utils/adt/jsonfuncs.c:4887 +#: utils/adt/jsonfuncs.c:4998 utils/adt/jsonfuncs.c:5046 #, c-format msgid "wrong number of array subscripts" msgstr "невірне число верхніх індексів масива" @@ -24055,90 +25252,90 @@ msgstr "Під час присвоєння значень зрізу в пуст msgid "source array too small" msgstr "вихідний масив занадто малий" -#: utils/adt/arrayfuncs.c:3657 +#: utils/adt/arrayfuncs.c:3669 #, c-format msgid "null array element not allowed in this context" msgstr "елемент масиву null не дозволений в цьому контексті" -#: utils/adt/arrayfuncs.c:3828 utils/adt/arrayfuncs.c:3999 -#: utils/adt/arrayfuncs.c:4390 +#: utils/adt/arrayfuncs.c:3840 utils/adt/arrayfuncs.c:4011 +#: utils/adt/arrayfuncs.c:4402 #, c-format msgid "cannot compare arrays of different element types" msgstr "не можна порівнювати масиви з елементами різних типів" -#: utils/adt/arrayfuncs.c:4177 utils/adt/multirangetypes.c:2805 -#: utils/adt/multirangetypes.c:2877 utils/adt/rangetypes.c:1361 -#: utils/adt/rangetypes.c:1425 utils/adt/rowtypes.c:1875 +#: utils/adt/arrayfuncs.c:4189 utils/adt/multirangetypes.c:2805 +#: utils/adt/multirangetypes.c:2877 utils/adt/rangetypes.c:1425 +#: utils/adt/rangetypes.c:1489 utils/adt/rowtypes.c:1893 #, c-format msgid "could not identify a hash function for type %s" msgstr "не вдалося визначити геш-функцію для типу %s" -#: utils/adt/arrayfuncs.c:4305 utils/adt/rowtypes.c:1996 +#: utils/adt/arrayfuncs.c:4317 utils/adt/rowtypes.c:2014 #, c-format msgid "could not identify an extended hash function for type %s" msgstr "не вдалося визначити розширену геш-функцію для типу %s" -#: utils/adt/arrayfuncs.c:5506 +#: utils/adt/arrayfuncs.c:5518 #, c-format msgid "data type %s is not an array type" msgstr "тип даних %s не є типом масиву" -#: utils/adt/arrayfuncs.c:5561 +#: utils/adt/arrayfuncs.c:5573 #, c-format msgid "cannot accumulate null arrays" msgstr "накопичувати null-масиви не можна" -#: utils/adt/arrayfuncs.c:5589 +#: utils/adt/arrayfuncs.c:5601 #, c-format msgid "cannot accumulate empty arrays" msgstr "накопичувати пусті масиви не можна" -#: utils/adt/arrayfuncs.c:5990 utils/adt/arrayfuncs.c:6030 +#: utils/adt/arrayfuncs.c:6004 utils/adt/arrayfuncs.c:6044 #, c-format msgid "dimension array or low bound array cannot be null" msgstr "масив розмірності або масив нижніх границь не може бути null" -#: utils/adt/arrayfuncs.c:6093 utils/adt/arrayfuncs.c:6119 +#: utils/adt/arrayfuncs.c:6107 utils/adt/arrayfuncs.c:6133 #, c-format msgid "Dimension array must be one dimensional." msgstr "Масив розмірності повинен бути одновимірним." -#: utils/adt/arrayfuncs.c:6098 utils/adt/arrayfuncs.c:6124 +#: utils/adt/arrayfuncs.c:6112 utils/adt/arrayfuncs.c:6138 #, c-format msgid "dimension values cannot be null" msgstr "значення розмірностей не можуть бути null" -#: utils/adt/arrayfuncs.c:6130 +#: utils/adt/arrayfuncs.c:6144 #, c-format msgid "Low bound array has different size than dimensions array." msgstr "Масив нижніх границь відрізняється за розміром від масиву розмірностей." -#: utils/adt/arrayfuncs.c:6411 +#: utils/adt/arrayfuncs.c:6425 #, c-format msgid "removing elements from multidimensional arrays is not supported" msgstr "видалення елементів з багатовимірних масивів не підтримується" -#: utils/adt/arrayfuncs.c:6688 +#: utils/adt/arrayfuncs.c:6702 #, c-format msgid "thresholds must be one-dimensional array" msgstr "граничне значення повинно вказуватись одновимірним масивом" -#: utils/adt/arrayfuncs.c:6693 +#: utils/adt/arrayfuncs.c:6707 #, c-format msgid "thresholds array must not contain NULLs" msgstr "масив границь не повинен містити NULL" -#: utils/adt/arrayfuncs.c:6926 +#: utils/adt/arrayfuncs.c:6940 #, c-format msgid "number of elements to trim must be between 0 and %d" msgstr "кількість елементів для обрізки має бути між 0 і %d" -#: utils/adt/arraysubs.c:93 utils/adt/arraysubs.c:130 +#: utils/adt/arraysubs.c:94 utils/adt/arraysubs.c:131 #, c-format msgid "array subscript must have type integer" msgstr "індекс елементу масиву має бути цілим числом" -#: utils/adt/arraysubs.c:198 utils/adt/arraysubs.c:217 +#: utils/adt/arraysubs.c:199 utils/adt/arraysubs.c:218 #, c-format msgid "array subscript in assignment must not be null" msgstr "підрядковий символ масиву у призначенні не може бути NULL" @@ -24169,21 +25366,21 @@ msgid "encoding conversion from %s to ASCII not supported" msgstr "перетворення кодування з %s в ASCII не підтримується" #. translator: first %s is inet or cidr -#: utils/adt/bool.c:149 utils/adt/cash.c:354 utils/adt/datetime.c:4142 -#: utils/adt/float.c:200 utils/adt/float.c:287 utils/adt/float.c:301 -#: utils/adt/float.c:406 utils/adt/float.c:489 utils/adt/float.c:503 +#: utils/adt/bool.c:150 utils/adt/cash.c:354 utils/adt/datetime.c:4264 +#: utils/adt/float.c:207 utils/adt/float.c:294 utils/adt/float.c:308 +#: utils/adt/float.c:413 utils/adt/float.c:496 utils/adt/float.c:510 #: utils/adt/geo_ops.c:250 utils/adt/geo_ops.c:335 utils/adt/geo_ops.c:974 #: utils/adt/geo_ops.c:1417 utils/adt/geo_ops.c:1454 utils/adt/geo_ops.c:1462 #: utils/adt/geo_ops.c:3428 utils/adt/geo_ops.c:4650 utils/adt/geo_ops.c:4665 #: utils/adt/geo_ops.c:4672 utils/adt/int.c:174 utils/adt/int.c:186 #: utils/adt/jsonpath.c:185 utils/adt/mac.c:94 utils/adt/mac8.c:226 -#: utils/adt/network.c:99 utils/adt/numeric.c:803 utils/adt/numeric.c:7221 -#: utils/adt/numeric.c:7424 utils/adt/numeric.c:8371 utils/adt/numutils.c:356 -#: utils/adt/numutils.c:618 utils/adt/numutils.c:880 utils/adt/numutils.c:919 -#: utils/adt/numutils.c:941 utils/adt/numutils.c:1005 utils/adt/numutils.c:1027 +#: utils/adt/network.c:99 utils/adt/numeric.c:805 utils/adt/numeric.c:7325 +#: utils/adt/numeric.c:7528 utils/adt/numeric.c:8475 utils/adt/numutils.c:356 +#: utils/adt/numutils.c:617 utils/adt/numutils.c:878 utils/adt/numutils.c:917 +#: utils/adt/numutils.c:939 utils/adt/numutils.c:1003 utils/adt/numutils.c:1025 #: utils/adt/pg_lsn.c:73 utils/adt/tid.c:72 utils/adt/tid.c:80 -#: utils/adt/tid.c:94 utils/adt/tid.c:103 utils/adt/timestamp.c:510 -#: utils/adt/uuid.c:140 utils/adt/xid8funcs.c:360 +#: utils/adt/tid.c:94 utils/adt/tid.c:103 utils/adt/timestamp.c:512 +#: utils/adt/uuid.c:176 utils/adt/xid8funcs.c:323 #, c-format msgid "invalid input syntax for type %s: \"%s\"" msgstr "неприпустимий синтаксис для типу %s: \"%s\"" @@ -24192,25 +25389,25 @@ msgstr "неприпустимий синтаксис для типу %s: \"%s\" #: utils/adt/cash.c:137 utils/adt/cash.c:150 #, c-format msgid "money out of range" -msgstr "" +msgstr "гроші поза діапазоном" -#: utils/adt/cash.c:161 utils/adt/cash.c:723 utils/adt/float.c:99 +#: utils/adt/cash.c:161 utils/adt/cash.c:725 utils/adt/float.c:106 #: utils/adt/int.c:843 utils/adt/int.c:959 utils/adt/int.c:1039 #: utils/adt/int.c:1101 utils/adt/int.c:1139 utils/adt/int.c:1167 #: utils/adt/int8.c:514 utils/adt/int8.c:572 utils/adt/int8.c:942 #: utils/adt/int8.c:1022 utils/adt/int8.c:1084 utils/adt/int8.c:1164 -#: utils/adt/numeric.c:3191 utils/adt/numeric.c:3214 utils/adt/numeric.c:3299 -#: utils/adt/numeric.c:3317 utils/adt/numeric.c:3413 utils/adt/numeric.c:8920 -#: utils/adt/numeric.c:9233 utils/adt/numeric.c:9581 utils/adt/numeric.c:9697 -#: utils/adt/numeric.c:11208 utils/adt/timestamp.c:3713 +#: utils/adt/numeric.c:3295 utils/adt/numeric.c:3318 utils/adt/numeric.c:3403 +#: utils/adt/numeric.c:3421 utils/adt/numeric.c:3517 utils/adt/numeric.c:9400 +#: utils/adt/numeric.c:9924 utils/adt/numeric.c:10040 utils/adt/numeric.c:11551 +#: utils/adt/timestamp.c:3772 #, c-format msgid "division by zero" msgstr "ділення на нуль" #: utils/adt/cash.c:292 utils/adt/cash.c:317 utils/adt/cash.c:327 #: utils/adt/cash.c:367 utils/adt/int.c:180 utils/adt/numutils.c:350 -#: utils/adt/numutils.c:612 utils/adt/numutils.c:874 utils/adt/numutils.c:925 -#: utils/adt/numutils.c:964 utils/adt/numutils.c:1011 +#: utils/adt/numutils.c:611 utils/adt/numutils.c:872 utils/adt/numutils.c:923 +#: utils/adt/numutils.c:962 utils/adt/numutils.c:1009 #, c-format msgid "value \"%s\" is out of range for type %s" msgstr "значення \"%s\" поза діапазоном для типу %s" @@ -24225,186 +25422,187 @@ msgstr "значення \"char\" поза діапазоном" msgid "could not compute %s hash: %s" msgstr "не вдалося обчислити %s хеш: %s" -#: utils/adt/date.c:64 utils/adt/timestamp.c:116 utils/adt/varbit.c:105 +#: utils/adt/date.c:65 utils/adt/timestamp.c:118 utils/adt/varbit.c:105 #: utils/adt/varchar.c:48 #, c-format msgid "invalid type modifier" msgstr "неприпустимий тип модифікатора" -#: utils/adt/date.c:76 +#: utils/adt/date.c:77 #, c-format msgid "TIME(%d)%s precision must not be negative" msgstr "TIME(%d)%s точність не повинна бути від'ємною" -#: utils/adt/date.c:82 +#: 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:167 utils/adt/date.c:175 utils/adt/formatting.c:4424 -#: utils/adt/formatting.c:4433 utils/adt/formatting.c:4538 -#: utils/adt/formatting.c:4548 +#: utils/adt/date.c:168 utils/adt/date.c:176 utils/adt/formatting.c:4172 +#: utils/adt/formatting.c:4181 utils/adt/formatting.c:4286 +#: utils/adt/formatting.c:4296 #, c-format msgid "date out of range: \"%s\"" msgstr "дата поза діапазоном: \"%s\"" -#: utils/adt/date.c:222 utils/adt/date.c:520 utils/adt/date.c:544 -#: utils/adt/rangetypes.c:1584 utils/adt/rangetypes.c:1599 utils/adt/xml.c:2552 +#: utils/adt/date.c:223 utils/adt/date.c:585 utils/adt/date.c:609 +#: utils/adt/rangetypes.c:1648 utils/adt/rangetypes.c:1663 utils/adt/xml.c:2554 #, c-format msgid "date out of range" msgstr "дата поза діапазоном" -#: utils/adt/date.c:268 utils/adt/timestamp.c:598 +#: utils/adt/date.c:266 utils/adt/date.c:276 utils/adt/timestamp.c:600 #, c-format msgid "date field value out of range: %d-%02d-%02d" msgstr "значення поля типу date поза діапазоном: %d-%02d-%02d" -#: utils/adt/date.c:275 utils/adt/date.c:284 utils/adt/timestamp.c:604 +#: utils/adt/date.c:283 utils/adt/date.c:292 utils/adt/timestamp.c:606 #, c-format msgid "date out of range: %d-%02d-%02d" msgstr "дата поза діапазоном: %d-%02d-%02d" -#: utils/adt/date.c:495 +#: utils/adt/date.c:560 #, c-format msgid "cannot subtract infinite dates" msgstr "віднімати безкінечні дати не можна" -#: utils/adt/date.c:593 utils/adt/date.c:656 utils/adt/date.c:692 -#: utils/adt/date.c:2906 utils/adt/date.c:2916 +#: utils/adt/date.c:658 utils/adt/date.c:721 utils/adt/date.c:757 +#: utils/adt/date.c:2971 utils/adt/date.c:2981 #, c-format msgid "date out of range for timestamp" msgstr "для позначки часу дата поза діапазоном" -#: utils/adt/date.c:1122 utils/adt/date.c:1205 utils/adt/date.c:1221 -#: utils/adt/date.c:2215 utils/adt/date.c:3011 utils/adt/timestamp.c:4726 -#: utils/adt/timestamp.c:4941 utils/adt/timestamp.c:5089 -#: utils/adt/timestamp.c:5342 utils/adt/timestamp.c:5543 -#: utils/adt/timestamp.c:5590 utils/adt/timestamp.c:5814 -#: utils/adt/timestamp.c:5861 utils/adt/timestamp.c:5941 -#: utils/adt/timestamp.c:6070 +#: utils/adt/date.c:1187 utils/adt/date.c:1270 utils/adt/date.c:1286 +#: utils/adt/date.c:2280 utils/adt/date.c:3076 utils/adt/timestamp.c:4724 +#: utils/adt/timestamp.c:4815 utils/adt/timestamp.c:4963 +#: utils/adt/timestamp.c:5064 utils/adt/timestamp.c:5179 +#: utils/adt/timestamp.c:5231 utils/adt/timestamp.c:5488 +#: utils/adt/timestamp.c:5689 utils/adt/timestamp.c:5736 +#: utils/adt/timestamp.c:5960 utils/adt/timestamp.c:6007 +#: utils/adt/timestamp.c:6088 utils/adt/timestamp.c:6232 #, c-format msgid "unit \"%s\" not supported for type %s" msgstr "одиниця \"%s\" не підтримується для типу %s" -#: utils/adt/date.c:1230 utils/adt/date.c:2231 utils/adt/date.c:3031 -#: utils/adt/timestamp.c:4740 utils/adt/timestamp.c:4958 -#: utils/adt/timestamp.c:5103 utils/adt/timestamp.c:5302 -#: utils/adt/timestamp.c:5599 utils/adt/timestamp.c:5870 -#: utils/adt/timestamp.c:5911 utils/adt/timestamp.c:6131 +#: utils/adt/date.c:1295 utils/adt/date.c:2296 utils/adt/date.c:3096 +#: utils/adt/timestamp.c:4829 utils/adt/timestamp.c:5081 +#: utils/adt/timestamp.c:5245 utils/adt/timestamp.c:5448 +#: utils/adt/timestamp.c:5745 utils/adt/timestamp.c:6016 +#: utils/adt/timestamp.c:6057 utils/adt/timestamp.c:6293 #, c-format msgid "unit \"%s\" not recognized for type %s" msgstr "нерозпізнана одиниця \"%s\" для типу %s" -#: utils/adt/date.c:1314 utils/adt/date.c:1360 utils/adt/date.c:1919 -#: utils/adt/date.c:1950 utils/adt/date.c:1979 utils/adt/date.c:2869 -#: utils/adt/date.c:3101 utils/adt/datetime.c:422 utils/adt/datetime.c:1807 -#: utils/adt/formatting.c:4269 utils/adt/formatting.c:4305 -#: utils/adt/formatting.c:4392 utils/adt/formatting.c:4514 utils/adt/json.c:366 -#: utils/adt/json.c:405 utils/adt/timestamp.c:248 utils/adt/timestamp.c:280 -#: utils/adt/timestamp.c:716 utils/adt/timestamp.c:725 -#: utils/adt/timestamp.c:803 utils/adt/timestamp.c:836 -#: utils/adt/timestamp.c:3066 utils/adt/timestamp.c:3075 -#: utils/adt/timestamp.c:3092 utils/adt/timestamp.c:3097 -#: utils/adt/timestamp.c:3116 utils/adt/timestamp.c:3129 -#: utils/adt/timestamp.c:3140 utils/adt/timestamp.c:3146 -#: utils/adt/timestamp.c:3152 utils/adt/timestamp.c:3157 -#: utils/adt/timestamp.c:3210 utils/adt/timestamp.c:3219 -#: utils/adt/timestamp.c:3240 utils/adt/timestamp.c:3245 -#: utils/adt/timestamp.c:3266 utils/adt/timestamp.c:3279 -#: utils/adt/timestamp.c:3293 utils/adt/timestamp.c:3301 -#: utils/adt/timestamp.c:3307 utils/adt/timestamp.c:3312 -#: utils/adt/timestamp.c:4380 utils/adt/timestamp.c:4532 -#: utils/adt/timestamp.c:4608 utils/adt/timestamp.c:4644 -#: utils/adt/timestamp.c:4734 utils/adt/timestamp.c:4813 -#: utils/adt/timestamp.c:4849 utils/adt/timestamp.c:4952 -#: utils/adt/timestamp.c:5407 utils/adt/timestamp.c:5681 -#: utils/adt/timestamp.c:6199 utils/adt/timestamp.c:6209 -#: utils/adt/timestamp.c:6214 utils/adt/timestamp.c:6220 -#: utils/adt/timestamp.c:6260 utils/adt/timestamp.c:6347 -#: utils/adt/timestamp.c:6388 utils/adt/timestamp.c:6392 -#: utils/adt/timestamp.c:6446 utils/adt/timestamp.c:6450 -#: utils/adt/timestamp.c:6456 utils/adt/timestamp.c:6497 utils/adt/xml.c:2574 -#: utils/adt/xml.c:2581 utils/adt/xml.c:2601 utils/adt/xml.c:2608 +#: utils/adt/date.c:1379 utils/adt/date.c:1425 utils/adt/date.c:1984 +#: utils/adt/date.c:2015 utils/adt/date.c:2044 utils/adt/date.c:2934 +#: utils/adt/date.c:3166 utils/adt/datetime.c:432 utils/adt/datetime.c:1826 +#: utils/adt/formatting.c:4017 utils/adt/formatting.c:4053 +#: utils/adt/formatting.c:4140 utils/adt/formatting.c:4262 utils/adt/json.c:375 +#: utils/adt/json.c:414 utils/adt/timestamp.c:250 utils/adt/timestamp.c:282 +#: utils/adt/timestamp.c:707 utils/adt/timestamp.c:716 +#: utils/adt/timestamp.c:794 utils/adt/timestamp.c:827 +#: utils/adt/timestamp.c:3125 utils/adt/timestamp.c:3134 +#: utils/adt/timestamp.c:3151 utils/adt/timestamp.c:3156 +#: utils/adt/timestamp.c:3175 utils/adt/timestamp.c:3188 +#: utils/adt/timestamp.c:3199 utils/adt/timestamp.c:3205 +#: utils/adt/timestamp.c:3211 utils/adt/timestamp.c:3216 +#: utils/adt/timestamp.c:3269 utils/adt/timestamp.c:3278 +#: utils/adt/timestamp.c:3299 utils/adt/timestamp.c:3304 +#: utils/adt/timestamp.c:3325 utils/adt/timestamp.c:3338 +#: utils/adt/timestamp.c:3352 utils/adt/timestamp.c:3360 +#: utils/adt/timestamp.c:3366 utils/adt/timestamp.c:3371 +#: utils/adt/timestamp.c:4439 utils/adt/timestamp.c:4591 +#: utils/adt/timestamp.c:4667 utils/adt/timestamp.c:4733 +#: utils/adt/timestamp.c:4823 utils/adt/timestamp.c:4902 +#: utils/adt/timestamp.c:4972 utils/adt/timestamp.c:5075 +#: utils/adt/timestamp.c:5553 utils/adt/timestamp.c:5827 +#: utils/adt/timestamp.c:6361 utils/adt/timestamp.c:6371 +#: utils/adt/timestamp.c:6376 utils/adt/timestamp.c:6382 +#: utils/adt/timestamp.c:6422 utils/adt/timestamp.c:6509 +#: utils/adt/timestamp.c:6550 utils/adt/timestamp.c:6554 +#: utils/adt/timestamp.c:6608 utils/adt/timestamp.c:6612 +#: utils/adt/timestamp.c:6618 utils/adt/timestamp.c:6659 utils/adt/xml.c:2576 +#: utils/adt/xml.c:2583 utils/adt/xml.c:2603 utils/adt/xml.c:2610 #, c-format msgid "timestamp out of range" msgstr "позначка часу поза діапазоном" -#: utils/adt/date.c:1536 utils/adt/date.c:2352 utils/adt/formatting.c:4597 +#: utils/adt/date.c:1601 utils/adt/date.c:2417 utils/adt/formatting.c:4345 #, c-format msgid "time out of range" msgstr "час поза діапазоном" -#: utils/adt/date.c:1588 utils/adt/timestamp.c:613 +#: utils/adt/date.c:1653 utils/adt/timestamp.c:615 #, c-format msgid "time field value out of range: %d:%02d:%02g" msgstr "значення поля типу time поза діапазоном: %d:%02d:%02g" -#: utils/adt/date.c:2020 +#: utils/adt/date.c:2085 #, c-format msgid "cannot convert infinite interval to time" msgstr "не можна перетворити нескінченний інтервал у час" -#: utils/adt/date.c:2061 utils/adt/date.c:2605 +#: utils/adt/date.c:2126 utils/adt/date.c:2670 #, c-format msgid "cannot add infinite interval to time" msgstr "не можна додати нескінченний інтервал до часу" -#: utils/adt/date.c:2084 utils/adt/date.c:2632 +#: utils/adt/date.c:2149 utils/adt/date.c:2697 #, c-format msgid "cannot subtract infinite interval from time" msgstr "не можна відняти від часу нескінченний інтервал" -#: utils/adt/date.c:2115 utils/adt/date.c:2667 utils/adt/float.c:1036 -#: utils/adt/float.c:1112 utils/adt/int.c:635 utils/adt/int.c:682 -#: utils/adt/int.c:717 utils/adt/int8.c:413 utils/adt/numeric.c:2595 -#: utils/adt/timestamp.c:3810 utils/adt/timestamp.c:3847 -#: utils/adt/timestamp.c:3888 +#: utils/adt/date.c:2180 utils/adt/date.c:2732 utils/adt/float.c:1043 +#: utils/adt/float.c:1119 utils/adt/int.c:635 utils/adt/int.c:682 +#: utils/adt/int.c:717 utils/adt/int8.c:413 utils/adt/numeric.c:2699 +#: utils/adt/timestamp.c:3869 utils/adt/timestamp.c:3906 +#: utils/adt/timestamp.c:3947 #, c-format msgid "invalid preceding or following size in window function" msgstr "неприпустимий розмір preceding або following у віконній функції" -#: utils/adt/date.c:2360 +#: utils/adt/date.c:2425 #, c-format msgid "time zone displacement out of range" msgstr "зсув часового поясу поза діапазоном" -#: utils/adt/date.c:3132 utils/adt/timestamp.c:6242 utils/adt/timestamp.c:6479 +#: utils/adt/date.c:3197 utils/adt/timestamp.c:6404 utils/adt/timestamp.c:6641 #, c-format msgid "interval time zone \"%s\" must be finite" msgstr "часовий пояс інтервалу \"%s\" має бути скінченним" -#: utils/adt/date.c:3139 utils/adt/timestamp.c:6249 utils/adt/timestamp.c:6486 +#: utils/adt/date.c:3204 utils/adt/timestamp.c:6411 utils/adt/timestamp.c:6648 #, c-format msgid "interval time zone \"%s\" must not include months or days" msgstr "інтервал \"%s\", який задає часовий пояс, не повинен включати місяці або дні" -#: utils/adt/datetime.c:3232 utils/adt/datetime.c:4127 -#: utils/adt/datetime.c:4133 utils/adt/timestamp.c:528 +#: utils/adt/datetime.c:3330 utils/adt/datetime.c:4249 +#: utils/adt/datetime.c:4255 utils/adt/timestamp.c:530 #, c-format msgid "time zone \"%s\" not recognized" msgstr "часовий пояс \"%s\" не розпізнаний" -#: utils/adt/datetime.c:4101 utils/adt/datetime.c:4108 +#: utils/adt/datetime.c:4223 utils/adt/datetime.c:4230 #, c-format msgid "date/time field value out of range: \"%s\"" msgstr "значення поля типу дата/час поза діапазоном: \"%s\"" -#: utils/adt/datetime.c:4110 +#: utils/adt/datetime.c:4232 #, c-format -msgid "Perhaps you need a different \"datestyle\" setting." -msgstr "Можливо, вам потрібні інші налаштування \"datestyle\"." +msgid "Perhaps you need a different \"DateStyle\" setting." +msgstr "Можливо, вам потрібно інше налаштування \"DateStyle\"." -#: utils/adt/datetime.c:4115 +#: utils/adt/datetime.c:4237 #, c-format msgid "interval field value out of range: \"%s\"" msgstr "значення поля типу інтервал, поза діапазоном: \"%s\"" -#: utils/adt/datetime.c:4121 +#: utils/adt/datetime.c:4243 #, c-format msgid "time zone displacement out of range: \"%s\"" msgstr "зміщення часового поясу, поза діапазоном: \"%s\"" -#: utils/adt/datetime.c:4135 +#: utils/adt/datetime.c:4257 #, c-format msgid "This time zone name appears in the configuration file for time zone abbreviation \"%s\"." msgstr "Це ім'я часового поясу з'являється у файлі конфігурації часового поясу з кодом \"%s\"." @@ -24414,17 +25612,22 @@ msgstr "Це ім'я часового поясу з'являється у фай msgid "invalid Datum pointer" msgstr "неприпустимий вказівник Datum" -#: utils/adt/dbsize.c:764 utils/adt/dbsize.c:840 +#: utils/adt/dbsize.c:293 utils/adt/genfile.c:656 +#, c-format +msgid "tablespace with OID %u does not exist" +msgstr "табличний простір з OID %u не існує" + +#: utils/adt/dbsize.c:782 utils/adt/dbsize.c:858 #, c-format msgid "invalid size: \"%s\"" msgstr "неприпустимий розмір: \"%s\"" -#: utils/adt/dbsize.c:841 +#: utils/adt/dbsize.c:859 #, c-format msgid "Invalid size unit: \"%s\"." msgstr "Неприпустима одиниця вимірювання розміру: \"%s\"." -#: utils/adt/dbsize.c:842 +#: utils/adt/dbsize.c:860 #, c-format msgid "Valid units are \"bytes\", \"B\", \"kB\", \"MB\", \"GB\", \"TB\", and \"PB\"." msgstr "Припустимі одиниці вимірювання: \"bytes\", \"B\", \"kB\", \"MB\", \"GB\", \"TB\", і \"PB\"." @@ -24449,40 +25652,40 @@ msgstr "результат перетворення кодування зана msgid "result of decoding conversion is too large" msgstr "результат перетворення декодування занадто великий" -#: utils/adt/encode.c:217 utils/adt/encode.c:227 +#: utils/adt/encode.c:238 utils/adt/encode.c:248 #, c-format msgid "invalid hexadecimal digit: \"%.*s\"" msgstr "неприпустиме шістнадцяткове число: \"%.*s\"" -#: utils/adt/encode.c:223 +#: utils/adt/encode.c:244 #, c-format msgid "invalid hexadecimal data: odd number of digits" msgstr "неприпустимі шістнадцядкові дані: непарна кількість чисел" -#: utils/adt/encode.c:344 +#: utils/adt/encode.c:365 #, c-format msgid "unexpected \"=\" while decoding base64 sequence" msgstr "неочікуваний символ \"=\" під час декодування послідовності base64" -#: utils/adt/encode.c:356 +#: utils/adt/encode.c:377 #, c-format msgid "invalid symbol \"%.*s\" found while decoding base64 sequence" msgstr "виявлено неприпустимий символ \"%.*s\" під час декодування послідовності base64" -#: utils/adt/encode.c:377 +#: utils/adt/encode.c:398 #, c-format msgid "invalid base64 end sequence" msgstr "неприпустима скінченна послідовність base64" -#: utils/adt/encode.c:378 +#: utils/adt/encode.c:399 #, c-format msgid "Input data is missing padding, is truncated, or is otherwise corrupted." msgstr "Вхідні дані позбавлені можливості заповнення, скорочені, або пошкоджені іншим чином." -#: utils/adt/encode.c:492 utils/adt/encode.c:557 utils/adt/jsonfuncs.c:659 -#: utils/adt/varlena.c:333 utils/adt/varlena.c:374 jsonpath_gram.y:266 -#: jsonpath_gram.y:598 jsonpath_scan.l:640 jsonpath_scan.l:651 -#: jsonpath_scan.l:661 jsonpath_scan.l:712 +#: utils/adt/encode.c:513 utils/adt/encode.c:578 utils/adt/jsonfuncs.c:661 +#: utils/adt/varlena.c:341 utils/adt/varlena.c:382 jsonpath_gram.y:268 +#: jsonpath_gram.y:600 jsonpath_scan.l:617 jsonpath_scan.l:628 +#: jsonpath_scan.l:638 jsonpath_scan.l:690 #, c-format msgid "invalid input syntax for type %s" msgstr "неприпустимий вхідний синтаксис для типу %s" @@ -24519,351 +25722,363 @@ msgstr "не вдалося визначити фактичний тип пер msgid "enum %s contains no values" msgstr "перелік %s не містить значень" -#: utils/adt/float.c:83 +#: utils/adt/float.c:90 #, c-format msgid "value out of range: overflow" msgstr "значення поза діапазоном: надлишок" -#: utils/adt/float.c:91 +#: utils/adt/float.c:98 #, c-format msgid "value out of range: underflow" msgstr "значення поза діапазоном: недостача" -#: utils/adt/float.c:280 +#: utils/adt/float.c:287 #, c-format msgid "\"%s\" is out of range for type real" msgstr "\"%s\" поза діапазоном для дійсного типу" -#: utils/adt/float.c:482 +#: utils/adt/float.c:489 #, c-format msgid "\"%s\" is out of range for type double precision" msgstr "\"%s\" поза діапазоном для типу double precision" -#: utils/adt/float.c:1247 utils/adt/float.c:1321 utils/adt/int.c:355 +#: utils/adt/float.c:1254 utils/adt/float.c:1328 utils/adt/int.c:355 #: utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929 #: utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213 -#: utils/adt/int8.c:1277 utils/adt/numeric.c:4593 utils/adt/numeric.c:4598 +#: utils/adt/int8.c:1277 utils/adt/numeric.c:4697 utils/adt/numeric.c:4702 +#: utils/adt/varlena.c:4104 #, c-format msgid "smallint out of range" msgstr "двобайтове ціле поза діапазоном" -#: utils/adt/float.c:1447 utils/adt/numeric.c:3709 utils/adt/numeric.c:10112 +#: utils/adt/float.c:1454 utils/adt/numeric.c:3813 utils/adt/numeric.c:10455 #, c-format msgid "cannot take square root of a negative number" msgstr "вилучити квадратний корінь від'ємного числа не можна" -#: utils/adt/float.c:1515 utils/adt/numeric.c:3997 utils/adt/numeric.c:4109 +#: utils/adt/float.c:1522 utils/adt/numeric.c:4101 utils/adt/numeric.c:4213 #, c-format msgid "zero raised to a negative power is undefined" msgstr "нуль у від'ємному ступені дає невизначеність" -#: utils/adt/float.c:1519 utils/adt/numeric.c:4001 utils/adt/numeric.c:11003 +#: utils/adt/float.c:1526 utils/adt/numeric.c:4105 utils/adt/numeric.c:11346 #, c-format msgid "a negative number raised to a non-integer power yields a complex result" msgstr "від'ємне число у не цілому ступені дає комплексний результат" -#: utils/adt/float.c:1695 utils/adt/float.c:1728 utils/adt/numeric.c:3909 -#: utils/adt/numeric.c:10783 +#: utils/adt/float.c:1702 utils/adt/float.c:1735 utils/adt/numeric.c:4013 +#: utils/adt/numeric.c:11126 #, c-format msgid "cannot take logarithm of zero" msgstr "обчислити логарифм нуля не можна" -#: utils/adt/float.c:1699 utils/adt/float.c:1732 utils/adt/numeric.c:3847 -#: utils/adt/numeric.c:3904 utils/adt/numeric.c:10787 +#: utils/adt/float.c:1706 utils/adt/float.c:1739 utils/adt/numeric.c:3951 +#: utils/adt/numeric.c:4008 utils/adt/numeric.c:11130 #, c-format msgid "cannot take logarithm of a negative number" msgstr "обчислити логарифм від'ємного числа не можна" -#: utils/adt/float.c:1765 utils/adt/float.c:1796 utils/adt/float.c:1891 -#: utils/adt/float.c:1918 utils/adt/float.c:1946 utils/adt/float.c:1973 -#: utils/adt/float.c:2120 utils/adt/float.c:2157 utils/adt/float.c:2327 -#: utils/adt/float.c:2383 utils/adt/float.c:2448 utils/adt/float.c:2505 -#: utils/adt/float.c:2696 utils/adt/float.c:2720 +#: utils/adt/float.c:1772 utils/adt/float.c:1803 utils/adt/float.c:1898 +#: utils/adt/float.c:1925 utils/adt/float.c:1953 utils/adt/float.c:1980 +#: utils/adt/float.c:2127 utils/adt/float.c:2164 utils/adt/float.c:2334 +#: utils/adt/float.c:2390 utils/adt/float.c:2455 utils/adt/float.c:2512 +#: utils/adt/float.c:2703 utils/adt/float.c:2727 #, c-format msgid "input is out of range" msgstr "введене значення поза діапазоном" -#: utils/adt/float.c:4000 utils/adt/numeric.c:1857 +#: utils/adt/float.c:4085 utils/adt/numeric.c:1980 #, c-format msgid "count must be greater than zero" msgstr "лічильник повинен бути більше нуля" -#: utils/adt/float.c:4005 utils/adt/numeric.c:1868 +#: utils/adt/float.c:4090 utils/adt/numeric.c:1991 #, c-format msgid "operand, lower bound, and upper bound cannot be NaN" msgstr "операнд, нижня границя і верхня границя не можуть бути NaN" -#: utils/adt/float.c:4011 utils/adt/numeric.c:1873 +#: utils/adt/float.c:4096 utils/adt/numeric.c:1996 #, c-format msgid "lower and upper bounds must be finite" msgstr "нижня і верхня границі повинні бути скінченними" -#: utils/adt/float.c:4077 utils/adt/numeric.c:1887 +#: utils/adt/float.c:4162 utils/adt/numeric.c:2010 #, c-format msgid "lower bound cannot equal upper bound" msgstr "нижня границя не може дорівнювати верхній границі" -#: utils/adt/formatting.c:530 +#: utils/adt/formatting.c:556 #, c-format msgid "invalid format specification for an interval value" msgstr "неприпустима специфікація формату для цілого значення" -#: utils/adt/formatting.c:531 +#: utils/adt/formatting.c:557 #, c-format msgid "Intervals are not tied to specific calendar dates." msgstr "Інтервали не зв'язуються з певними календарними датами." -#: utils/adt/formatting.c:1161 +#: utils/adt/formatting.c:1197 #, c-format msgid "\"EEEE\" must be the last pattern used" msgstr "\"EEEE\" повинно бути останнім використаним шаблоном" -#: utils/adt/formatting.c:1169 +#: utils/adt/formatting.c:1205 #, c-format msgid "\"9\" must be ahead of \"PR\"" msgstr "\"9\" повинна бути до \"PR\"" -#: utils/adt/formatting.c:1185 +#: utils/adt/formatting.c:1221 #, c-format msgid "\"0\" must be ahead of \"PR\"" msgstr "\"0\" повинен бути до \"PR\"" -#: utils/adt/formatting.c:1212 +#: utils/adt/formatting.c:1248 #, c-format msgid "multiple decimal points" msgstr "численні десяткові точки" -#: utils/adt/formatting.c:1216 utils/adt/formatting.c:1299 +#: utils/adt/formatting.c:1252 utils/adt/formatting.c:1339 #, c-format msgid "cannot use \"V\" and decimal point together" msgstr "використовувати \"V\" і десяткову точку разом, не можна" -#: utils/adt/formatting.c:1228 +#: utils/adt/formatting.c:1264 #, c-format msgid "cannot use \"S\" twice" msgstr "використовувати \"S\" двічі, не можна" -#: utils/adt/formatting.c:1232 +#: utils/adt/formatting.c:1268 #, c-format msgid "cannot use \"S\" and \"PL\"/\"MI\"/\"SG\"/\"PR\" together" msgstr "використовувати \"S\" і \"PL\"/\"MI\"/\"SG\"/\"PR\" разом, не можна" -#: utils/adt/formatting.c:1252 +#: utils/adt/formatting.c:1288 #, c-format msgid "cannot use \"S\" and \"MI\" together" msgstr "використовувати \"S\" і \"MI\" разом, не можна" -#: utils/adt/formatting.c:1262 +#: utils/adt/formatting.c:1298 #, c-format msgid "cannot use \"S\" and \"PL\" together" msgstr "не можна використовувати \"S\" і \"PL\" разом" -#: utils/adt/formatting.c:1272 +#: utils/adt/formatting.c:1308 #, c-format msgid "cannot use \"S\" and \"SG\" together" msgstr "не можна використовувати \"S\" і \"SG\" разом" -#: utils/adt/formatting.c:1281 +#: utils/adt/formatting.c:1317 #, c-format msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together" msgstr "не можна використовувати \"PR\" і \"S\"/\"PL\"/\"MI\"/\"SG\" разом" -#: utils/adt/formatting.c:1307 +#: utils/adt/formatting.c:1326 +#, c-format +msgid "cannot use \"RN\" twice" +msgstr "не можна використовувати \"RN\" двічі" + +#: utils/adt/formatting.c:1347 #, c-format msgid "cannot use \"EEEE\" twice" msgstr "не можна використовувати \"EEEE\" двічі" -#: utils/adt/formatting.c:1313 +#: utils/adt/formatting.c:1353 #, c-format msgid "\"EEEE\" is incompatible with other formats" msgstr "\"EEEE\" є несумісним з іншими форматами" -#: utils/adt/formatting.c:1314 +#: utils/adt/formatting.c:1354 #, c-format msgid "\"EEEE\" may only be used together with digit and decimal point patterns." msgstr "\"EEEE\" може використовуватись лише разом з шаблонами цифр і десяткової точки." -#: utils/adt/formatting.c:1398 +#: utils/adt/formatting.c:1363 +#, c-format +msgid "\"RN\" is incompatible with other formats" +msgstr "\"RN\" несумісний з іншими форматами" + +#: utils/adt/formatting.c:1364 +#, c-format +msgid "\"RN\" may only be used together with \"FM\"." +msgstr "\"RN\" може використовуватися тільки разом із \"FM\"." + +#: utils/adt/formatting.c:1445 #, c-format msgid "invalid datetime format separator: \"%s\"" msgstr "неприпустимий роздільник формату дати й часу: \"%s\"" -#: utils/adt/formatting.c:1525 +#: utils/adt/formatting.c:1572 #, c-format msgid "\"%s\" is not a number" msgstr "\"%s\" не є числом" -#: utils/adt/formatting.c:1603 -#, c-format -msgid "case conversion failed: %s" -msgstr "помилка при перетворенні регістру: %s" - -#: utils/adt/formatting.c:1651 utils/adt/formatting.c:1799 -#: utils/adt/formatting.c:1989 +#: utils/adt/formatting.c:1653 utils/adt/formatting.c:1717 +#: utils/adt/formatting.c:1781 utils/adt/formatting.c:1845 #, c-format msgid "could not determine which collation to use for %s function" msgstr "не вдалося визначити який параметр сортування використати для функції %s" -#: utils/adt/formatting.c:2410 +#: utils/adt/formatting.c:1853 +#, c-format +msgid "Unicode case folding can only be performed if server encoding is UTF8" +msgstr "Складання регістру Unicode може виконуватися лише якщо кодування сервера є UTF8" + +#: utils/adt/formatting.c:2150 #, c-format msgid "invalid combination of date conventions" msgstr "неприпустиме поєднання стилів дат" -#: utils/adt/formatting.c:2411 +#: utils/adt/formatting.c:2151 #, c-format msgid "Do not mix Gregorian and ISO week date conventions in a formatting template." msgstr "Не змішуйте Gregorian і ISO стилі дат (тижнів) в одному шаблоні форматування." -#: utils/adt/formatting.c:2433 +#: utils/adt/formatting.c:2173 #, c-format msgid "conflicting values for \"%s\" field in formatting string" msgstr "конфліктуючі значення для \"%s\" поля в рядку форматування" -#: utils/adt/formatting.c:2435 +#: utils/adt/formatting.c:2175 #, c-format msgid "This value contradicts a previous setting for the same field type." msgstr "Це значення суперечить попередньому параметри для поля того ж типу." -#: utils/adt/formatting.c:2502 +#: utils/adt/formatting.c:2242 #, c-format msgid "source string too short for \"%s\" formatting field" msgstr "вихідний рядок занадто короткий для \"%s\" поля форматування" -#: utils/adt/formatting.c:2504 +#: utils/adt/formatting.c:2244 #, c-format msgid "Field requires %d characters, but only %d remain." msgstr "Поле потребує %d символів, але залишилось лише %d." -#: utils/adt/formatting.c:2506 utils/adt/formatting.c:2520 +#: utils/adt/formatting.c:2246 utils/adt/formatting.c:2260 #, c-format msgid "If your source string is not fixed-width, try using the \"FM\" modifier." msgstr "Якщо ваш вихідний рядок не має постійної ширини, спробуйте використати \"FM\" модифікатор." -#: utils/adt/formatting.c:2516 utils/adt/formatting.c:2529 -#: utils/adt/formatting.c:2750 utils/adt/formatting.c:3650 +#: utils/adt/formatting.c:2256 utils/adt/formatting.c:2269 +#: utils/adt/formatting.c:2490 utils/adt/formatting.c:3390 +#: utils/adt/formatting.c:3593 #, c-format msgid "invalid value \"%s\" for \"%s\"" msgstr "неприпустиме значення \"%s\" для \"%s\"" -#: utils/adt/formatting.c:2518 +#: utils/adt/formatting.c:2258 #, c-format msgid "Field requires %d characters, but only %d could be parsed." msgstr "Поле потребує %d символів, але вдалося аналізувати лише %d." -#: utils/adt/formatting.c:2531 +#: utils/adt/formatting.c:2271 #, c-format msgid "Value must be an integer." msgstr "Значення повинне бути цілим числом." -#: utils/adt/formatting.c:2536 +#: utils/adt/formatting.c:2276 utils/adt/formatting.c:3601 #, c-format msgid "value for \"%s\" in source string is out of range" msgstr "значення для \"%s\" у вихідному рядку поза діапазоном" -#: utils/adt/formatting.c:2538 +#: utils/adt/formatting.c:2278 #, c-format msgid "Value must be in the range %d to %d." msgstr "Значення повинне бути в діапазоні %d до %d." -#: utils/adt/formatting.c:2752 +#: utils/adt/formatting.c:2492 #, c-format msgid "The given value did not match any of the allowed values for this field." msgstr "Дане значення не відповідає жодному з доступних значень для цього поля." -#: utils/adt/formatting.c:2968 utils/adt/formatting.c:2988 -#: utils/adt/formatting.c:3008 utils/adt/formatting.c:3028 -#: utils/adt/formatting.c:3047 utils/adt/formatting.c:3066 -#: utils/adt/formatting.c:3090 utils/adt/formatting.c:3108 -#: utils/adt/formatting.c:3126 utils/adt/formatting.c:3144 -#: utils/adt/formatting.c:3161 utils/adt/formatting.c:3178 +#: utils/adt/formatting.c:2708 utils/adt/formatting.c:2728 +#: utils/adt/formatting.c:2748 utils/adt/formatting.c:2768 +#: utils/adt/formatting.c:2787 utils/adt/formatting.c:2806 +#: utils/adt/formatting.c:2830 utils/adt/formatting.c:2848 +#: utils/adt/formatting.c:2866 utils/adt/formatting.c:2884 +#: utils/adt/formatting.c:2901 utils/adt/formatting.c:2918 #, c-format msgid "localized string format value too long" msgstr "занадто довге значення формату локалізованого рядка" -#: utils/adt/formatting.c:3458 +#: utils/adt/formatting.c:3198 #, c-format msgid "unmatched format separator \"%c\"" msgstr "невідповідний роздільник формату \"%c\"" -#: utils/adt/formatting.c:3519 +#: utils/adt/formatting.c:3259 #, c-format msgid "unmatched format character \"%s\"" msgstr "невідповідний формат символу \"%s\"" -#: utils/adt/formatting.c:3652 +#: utils/adt/formatting.c:3392 #, c-format msgid "Time zone abbreviation is not recognized." msgstr "Абревіатуру часової зони не розпізнано." -#: utils/adt/formatting.c:3853 -#, c-format -msgid "invalid input string for \"Y,YYY\"" -msgstr "неприпустимий вхідний рядок для \"Y,YYY\"" - -#: utils/adt/formatting.c:3942 +#: utils/adt/formatting.c:3690 #, c-format msgid "input string is too short for datetime format" msgstr "вхідний рядок занадто короткий для формату дати й часу" -#: utils/adt/formatting.c:3950 +#: utils/adt/formatting.c:3698 #, c-format msgid "trailing characters remain in input string after datetime format" msgstr "символи наприкінці залишаються у вхідному рядку після формату дати й часу" -#: utils/adt/formatting.c:4494 +#: utils/adt/formatting.c:4242 #, c-format msgid "missing time zone in input string for type timestamptz" msgstr "пропущено часовий пояс у вхідному рядку для типу timestamptz" -#: utils/adt/formatting.c:4500 +#: utils/adt/formatting.c:4248 #, c-format msgid "timestamptz out of range" msgstr "timestamptz поза діапазоном" -#: utils/adt/formatting.c:4528 +#: utils/adt/formatting.c:4276 #, c-format msgid "datetime format is zoned but not timed" msgstr "формат дати й часу зоновано, але не приурочено" -#: utils/adt/formatting.c:4577 +#: utils/adt/formatting.c:4325 #, c-format msgid "missing time zone in input string for type timetz" msgstr "пропущено часовий пояс у вхідному рядку для типу timetz" -#: utils/adt/formatting.c:4583 +#: utils/adt/formatting.c:4331 #, c-format msgid "timetz out of range" msgstr "timetz поза діапазоном" -#: utils/adt/formatting.c:4609 +#: utils/adt/formatting.c:4357 #, c-format msgid "datetime format is not dated and not timed" msgstr "формат дати й часу не датований і не приурочений" -#: utils/adt/formatting.c:4786 +#: utils/adt/formatting.c:4534 #, c-format msgid "hour \"%d\" is invalid for the 12-hour clock" msgstr "година \"%d\" неприпустима для 12-часового годинника" -#: utils/adt/formatting.c:4788 +#: utils/adt/formatting.c:4536 #, c-format msgid "Use the 24-hour clock, or give an hour between 1 and 12." msgstr "Використайте 24-часовий годинник, або передавайте години від 1 до 12." -#: utils/adt/formatting.c:4900 +#: utils/adt/formatting.c:4713 #, c-format msgid "cannot calculate day of year without year information" msgstr "не можна обчислити день року без інформації про рік" -#: utils/adt/formatting.c:5852 +#: utils/adt/formatting.c:5834 #, c-format msgid "\"EEEE\" not supported for input" msgstr "\"EEEE\" не підтримується при введенні" -#: utils/adt/formatting.c:5864 +#: utils/adt/formatting.c:6111 #, c-format -msgid "\"RN\" not supported for input" -msgstr "\"RN\" не підтримується при введенні" +msgid "invalid Roman numeral" +msgstr "недійсне римське число" #: utils/adt/genfile.c:84 #, c-format @@ -24875,9 +26090,9 @@ msgstr "абсолютний шлях не дозволений" msgid "path must be in or below the data directory" msgstr "шлях повинен вказувати каталог даних або вкладений каталог" -#: utils/adt/genfile.c:114 utils/adt/oracle_compat.c:190 -#: utils/adt/oracle_compat.c:288 utils/adt/oracle_compat.c:839 -#: utils/adt/oracle_compat.c:1142 +#: utils/adt/genfile.c:114 utils/adt/oracle_compat.c:206 +#: utils/adt/oracle_compat.c:304 utils/adt/oracle_compat.c:855 +#: utils/adt/oracle_compat.c:1158 #, c-format msgid "requested length too large" msgstr "запитана довжина занадто велика" @@ -24892,11 +26107,6 @@ msgstr "не вдалося знайти в файлі \"%s\": %m" msgid "file length too large" msgstr "довжина файлу завелика" -#: utils/adt/genfile.c:656 -#, c-format -msgid "tablespace with OID %u does not exist" -msgstr "табличний простір з OID %u не існує" - #: utils/adt/geo_ops.c:998 utils/adt/geo_ops.c:1052 #, c-format msgid "invalid line specification: A and B cannot both be zero" @@ -24948,8 +26158,8 @@ msgstr "повинно бути запитано мінімум 2 точки" msgid "invalid int2vector data" msgstr "неприпустимі дані int2vector" -#: utils/adt/int.c:1529 utils/adt/int8.c:1403 utils/adt/numeric.c:1765 -#: utils/adt/timestamp.c:6546 utils/adt/timestamp.c:6632 +#: utils/adt/int.c:1529 utils/adt/int8.c:1403 utils/adt/numeric.c:1767 +#: utils/adt/timestamp.c:6708 utils/adt/timestamp.c:6794 #, c-format msgid "step size cannot equal zero" msgstr "розмір кроку не може дорівнювати нулю" @@ -24963,9 +26173,9 @@ msgstr "розмір кроку не може дорівнювати нулю" #: utils/adt/int8.c:994 utils/adt/int8.c:1008 utils/adt/int8.c:1041 #: utils/adt/int8.c:1055 utils/adt/int8.c:1069 utils/adt/int8.c:1100 #: utils/adt/int8.c:1122 utils/adt/int8.c:1136 utils/adt/int8.c:1150 -#: utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4542 -#: utils/adt/rangetypes.c:1535 utils/adt/rangetypes.c:1548 -#: utils/adt/varbit.c:1676 +#: utils/adt/int8.c:1312 utils/adt/int8.c:1347 utils/adt/numeric.c:4646 +#: utils/adt/rangetypes.c:1599 utils/adt/rangetypes.c:1612 +#: utils/adt/varbit.c:1676 utils/adt/varlena.c:4154 #, c-format msgid "bigint out of range" msgstr "bigint поза діапазоном" @@ -24975,49 +26185,49 @@ msgstr "bigint поза діапазоном" msgid "OID out of range" msgstr "OID поза діапазоном" -#: utils/adt/json.c:202 utils/adt/jsonb.c:664 +#: utils/adt/json.c:204 utils/adt/jsonb.c:664 #, c-format msgid "key value must be scalar, not array, composite, or json" msgstr "значенням ключа повинен бути скаляр, не масив, композитний тип, або json" -#: utils/adt/json.c:1034 utils/adt/json.c:1044 utils/fmgr/funcapi.c:2090 +#: utils/adt/json.c:1043 utils/adt/json.c:1053 utils/fmgr/funcapi.c:2090 #, c-format msgid "could not determine data type for argument %d" msgstr "не вдалося визначити тип даних для аргументу %d" -#: utils/adt/json.c:1067 utils/adt/json.c:1266 utils/adt/json.c:1449 -#: utils/adt/json.c:1527 utils/adt/jsonb.c:1333 utils/adt/jsonb.c:1423 +#: utils/adt/json.c:1076 utils/adt/json.c:1275 utils/adt/json.c:1457 +#: utils/adt/json.c:1531 utils/adt/jsonb.c:1333 utils/adt/jsonb.c:1423 #, c-format msgid "null value not allowed for object key" msgstr "значення null не дозволене для ключа об'єкту" -#: utils/adt/json.c:1117 utils/adt/json.c:1288 +#: utils/adt/json.c:1126 utils/adt/json.c:1297 #, c-format msgid "duplicate JSON object key value: %s" msgstr "дублікат ключа об'єкта JSON: %s" -#: utils/adt/json.c:1226 utils/adt/jsonb.c:1134 +#: utils/adt/json.c:1235 utils/adt/jsonb.c:1134 #, c-format msgid "argument list must have even number of elements" msgstr "список аргументів повинен мати парну кількість елементів" #. translator: %s is a SQL function name -#: utils/adt/json.c:1228 utils/adt/jsonb.c:1136 +#: utils/adt/json.c:1237 utils/adt/jsonb.c:1136 #, c-format msgid "The arguments of %s must consist of alternating keys and values." msgstr "Аргументи %s повинні складатись з альтернативних ключей і значень." -#: utils/adt/json.c:1427 utils/adt/jsonb.c:1311 +#: utils/adt/json.c:1435 utils/adt/jsonb.c:1311 #, c-format msgid "array must have two columns" msgstr "масив повинен мати два стовпця" -#: utils/adt/json.c:1516 utils/adt/jsonb.c:1412 +#: utils/adt/json.c:1520 utils/adt/jsonb.c:1412 #, c-format msgid "mismatched array dimensions" msgstr "невідповідні виміри масиву" -#: utils/adt/json.c:1702 utils/adt/jsonb_util.c:1956 +#: utils/adt/json.c:1850 utils/adt/jsonb_util.c:1969 #, c-format msgid "duplicate JSON object key value" msgstr "дублікат значення ключа об'єкту JSON" @@ -25082,23 +26292,23 @@ msgstr "привести об'єкт jsonb до типу %s не можна" msgid "cannot cast jsonb array or object to type %s" msgstr "привести масив або об'єкт jsonb до типу %s не можна" -#: utils/adt/jsonb_util.c:756 +#: utils/adt/jsonb_util.c:760 #, c-format msgid "number of jsonb object pairs exceeds the maximum allowed (%zu)" msgstr "кількість пар об'єкта jsonb перевищує максимально дозволену (%zu)" -#: utils/adt/jsonb_util.c:797 +#: utils/adt/jsonb_util.c:801 #, c-format msgid "number of jsonb array elements exceeds the maximum allowed (%zu)" msgstr "кількість елементів масиву jsonb перевищує максимально дозволену(%zu)" -#: utils/adt/jsonb_util.c:1671 utils/adt/jsonb_util.c:1691 +#: utils/adt/jsonb_util.c:1684 utils/adt/jsonb_util.c:1704 #, c-format msgid "total size of jsonb array elements exceeds the maximum of %d bytes" msgstr "загальний розмір елементів масиву jsonb перевищує максимум %d байт" -#: utils/adt/jsonb_util.c:1752 utils/adt/jsonb_util.c:1787 -#: utils/adt/jsonb_util.c:1807 +#: utils/adt/jsonb_util.c:1765 utils/adt/jsonb_util.c:1800 +#: utils/adt/jsonb_util.c:1820 #, c-format msgid "total size of jsonb object elements exceeds the maximum of %d bytes" msgstr "загальний розмір елементів об'єкту jsonb перевищує максимум %d байт" @@ -25133,215 +26343,215 @@ msgstr "підрядковий символ jsonb повинен мати тип msgid "jsonb subscript in assignment must not be null" msgstr "підрядковий символ jsonb у присвоєнні не повинен бути null" -#: utils/adt/jsonfuncs.c:583 utils/adt/jsonfuncs.c:830 -#: utils/adt/jsonfuncs.c:2439 utils/adt/jsonfuncs.c:3015 -#: utils/adt/jsonfuncs.c:3948 utils/adt/jsonfuncs.c:4295 +#: utils/adt/jsonfuncs.c:585 utils/adt/jsonfuncs.c:832 +#: utils/adt/jsonfuncs.c:2441 utils/adt/jsonfuncs.c:3017 +#: utils/adt/jsonfuncs.c:3950 utils/adt/jsonfuncs.c:4297 #, c-format msgid "cannot call %s on a scalar" msgstr "викликати %s зі скаляром, не можна" -#: utils/adt/jsonfuncs.c:588 utils/adt/jsonfuncs.c:815 -#: utils/adt/jsonfuncs.c:3017 utils/adt/jsonfuncs.c:3935 +#: utils/adt/jsonfuncs.c:590 utils/adt/jsonfuncs.c:817 +#: utils/adt/jsonfuncs.c:3019 utils/adt/jsonfuncs.c:3937 #, c-format msgid "cannot call %s on an array" msgstr "викликати %s з масивом, не можна" -#: utils/adt/jsonfuncs.c:647 jsonpath_scan.l:607 +#: utils/adt/jsonfuncs.c:649 jsonpath_scan.l:584 #, c-format msgid "unsupported Unicode escape sequence" msgstr "непідтримувана спеціальна послідовність Unicode" -#: utils/adt/jsonfuncs.c:724 +#: utils/adt/jsonfuncs.c:726 #, c-format msgid "JSON data, line %d: %s%s%s" msgstr "Дані JSON, рядок %d: %s%s%s" -#: utils/adt/jsonfuncs.c:1883 utils/adt/jsonfuncs.c:1920 +#: utils/adt/jsonfuncs.c:1885 utils/adt/jsonfuncs.c:1922 #, c-format msgid "cannot get array length of a scalar" msgstr "отримати довжину скаляра масиву не можна" -#: utils/adt/jsonfuncs.c:1887 utils/adt/jsonfuncs.c:1906 +#: utils/adt/jsonfuncs.c:1889 utils/adt/jsonfuncs.c:1908 #, c-format msgid "cannot get array length of a non-array" msgstr "отримати довжину масива для не масиву не можна" -#: utils/adt/jsonfuncs.c:1986 +#: utils/adt/jsonfuncs.c:1988 #, c-format msgid "cannot call %s on a non-object" msgstr "викликати %s з не об'єктом, не можна" -#: utils/adt/jsonfuncs.c:2174 +#: utils/adt/jsonfuncs.c:2176 #, c-format msgid "cannot deconstruct an array as an object" msgstr "вилучити масив у вигляді об'єкту не можна" -#: utils/adt/jsonfuncs.c:2188 +#: utils/adt/jsonfuncs.c:2190 #, c-format msgid "cannot deconstruct a scalar" msgstr "вилучити скаляр не можна" -#: utils/adt/jsonfuncs.c:2233 +#: utils/adt/jsonfuncs.c:2235 #, c-format msgid "cannot extract elements from a scalar" msgstr "вилучити елементи зі скаляру не можна" -#: utils/adt/jsonfuncs.c:2237 +#: utils/adt/jsonfuncs.c:2239 #, c-format msgid "cannot extract elements from an object" msgstr "вилучити елементи з об'єкту не можна" -#: utils/adt/jsonfuncs.c:2424 utils/adt/jsonfuncs.c:4173 +#: utils/adt/jsonfuncs.c:2426 utils/adt/jsonfuncs.c:4175 #, c-format msgid "cannot call %s on a non-array" msgstr "викликати %s з не масивом не можна" -#: utils/adt/jsonfuncs.c:2515 utils/adt/jsonfuncs.c:2520 -#: utils/adt/jsonfuncs.c:2538 utils/adt/jsonfuncs.c:2544 +#: utils/adt/jsonfuncs.c:2517 utils/adt/jsonfuncs.c:2522 +#: utils/adt/jsonfuncs.c:2540 utils/adt/jsonfuncs.c:2546 #, c-format msgid "expected JSON array" msgstr "очікувався масив JSON" -#: utils/adt/jsonfuncs.c:2516 +#: utils/adt/jsonfuncs.c:2518 #, c-format msgid "See the value of key \"%s\"." msgstr "Перевірте значення ключа \"%s\"." -#: utils/adt/jsonfuncs.c:2539 +#: utils/adt/jsonfuncs.c:2541 #, c-format msgid "See the array element %s of key \"%s\"." msgstr "Перевірте елемент масиву %s ключа \"%s\"." -#: utils/adt/jsonfuncs.c:2545 +#: utils/adt/jsonfuncs.c:2547 #, c-format msgid "See the array element %s." msgstr "Перевірте елемент масиву %s." -#: utils/adt/jsonfuncs.c:2597 +#: utils/adt/jsonfuncs.c:2599 #, c-format msgid "malformed JSON array" msgstr "неправильний масив JSON" #. translator: %s is a function name, eg json_to_record -#: utils/adt/jsonfuncs.c:3647 +#: utils/adt/jsonfuncs.c:3649 #, c-format msgid "first argument of %s must be a row type" msgstr "першим аргументом %s повинен бути тип рядка" #. translator: %s is a function name, eg json_to_record -#: utils/adt/jsonfuncs.c:3671 +#: utils/adt/jsonfuncs.c:3673 #, c-format msgid "could not determine row type for result of %s" msgstr "не вдалося визначити тип рядка для результату %s" -#: utils/adt/jsonfuncs.c:3673 +#: utils/adt/jsonfuncs.c:3675 #, c-format msgid "Provide a non-null record argument, or call the function in the FROM clause using a column definition list." msgstr "Надайте аргумент ненульового запису, або викличте функцію в реченні FROM, використовуючи список визначення стовпців." -#: utils/adt/jsonfuncs.c:4059 utils/fmgr/funcapi.c:94 +#: utils/adt/jsonfuncs.c:4061 utils/fmgr/funcapi.c:94 #, c-format msgid "materialize mode required, but it is not allowed in this context" msgstr "необхідний режим матеріалізації (materialize mode), але він неприпустимий у цьому контексті" -#: utils/adt/jsonfuncs.c:4190 utils/adt/jsonfuncs.c:4274 +#: utils/adt/jsonfuncs.c:4192 utils/adt/jsonfuncs.c:4276 #, c-format msgid "argument of %s must be an array of objects" msgstr "аргументом %s повинен бути масив об'єктів" -#: utils/adt/jsonfuncs.c:4223 +#: utils/adt/jsonfuncs.c:4225 #, c-format msgid "cannot call %s on an object" msgstr "викликати %s з об'єктом не можна" -#: utils/adt/jsonfuncs.c:4656 utils/adt/jsonfuncs.c:4715 -#: utils/adt/jsonfuncs.c:4795 +#: utils/adt/jsonfuncs.c:4680 utils/adt/jsonfuncs.c:4739 +#: utils/adt/jsonfuncs.c:4819 #, c-format msgid "cannot delete from scalar" msgstr "видалити зі скаляру не можна" -#: utils/adt/jsonfuncs.c:4800 +#: utils/adt/jsonfuncs.c:4824 #, c-format msgid "cannot delete from object using integer index" msgstr "видалити з об'єкту по числовому індексу не можна" -#: utils/adt/jsonfuncs.c:4868 utils/adt/jsonfuncs.c:5027 +#: utils/adt/jsonfuncs.c:4892 utils/adt/jsonfuncs.c:5051 #, c-format msgid "cannot set path in scalar" msgstr "встановити шлях в скалярі не можна" -#: utils/adt/jsonfuncs.c:4909 utils/adt/jsonfuncs.c:4951 +#: utils/adt/jsonfuncs.c:4933 utils/adt/jsonfuncs.c:4975 #, c-format msgid "null_value_treatment must be \"delete_key\", \"return_target\", \"use_json_null\", or \"raise_exception\"" msgstr "null_value_treatment має бути \"delete_key\", \"return_target\", \"use_json_null\", або \"raise_exception\"" -#: utils/adt/jsonfuncs.c:4922 +#: utils/adt/jsonfuncs.c:4946 #, c-format msgid "JSON value must not be null" msgstr "Значення JSON не повинне бути null" -#: utils/adt/jsonfuncs.c:4923 +#: utils/adt/jsonfuncs.c:4947 #, c-format msgid "Exception was raised because null_value_treatment is \"raise_exception\"." msgstr "Виняток було запущено через те, що null_value_treatment дорівнює \"raise_exception\"." -#: utils/adt/jsonfuncs.c:4924 +#: utils/adt/jsonfuncs.c:4948 #, c-format msgid "To avoid, either change the null_value_treatment argument or ensure that an SQL NULL is not passed." msgstr "Щоб уникнути, або змініть аргумент null_value_treatment або переконайтесь що SQL NULL не передано." -#: utils/adt/jsonfuncs.c:4979 +#: utils/adt/jsonfuncs.c:5003 #, c-format msgid "cannot delete path in scalar" msgstr "видалити шлях в скалярі не можна" -#: utils/adt/jsonfuncs.c:5193 +#: utils/adt/jsonfuncs.c:5217 #, c-format msgid "path element at position %d is null" msgstr "елемент шляху в позиції %d є null" -#: utils/adt/jsonfuncs.c:5212 utils/adt/jsonfuncs.c:5243 -#: utils/adt/jsonfuncs.c:5316 +#: utils/adt/jsonfuncs.c:5236 utils/adt/jsonfuncs.c:5267 +#: utils/adt/jsonfuncs.c:5340 #, c-format msgid "cannot replace existing key" msgstr "замініти існуючий ключ не можна" -#: utils/adt/jsonfuncs.c:5213 utils/adt/jsonfuncs.c:5244 +#: utils/adt/jsonfuncs.c:5237 utils/adt/jsonfuncs.c:5268 #, c-format msgid "The path assumes key is a composite object, but it is a scalar value." msgstr "Шлях припускає, що ключ є складеним об'єктом, але це скалярне значення." -#: utils/adt/jsonfuncs.c:5317 +#: utils/adt/jsonfuncs.c:5341 #, c-format msgid "Try using the function jsonb_set to replace key value." msgstr "Спробуйте, використати функцію jsonb_set, щоб замінити значення ключа." -#: utils/adt/jsonfuncs.c:5421 +#: utils/adt/jsonfuncs.c:5445 #, c-format msgid "path element at position %d is not an integer: \"%s\"" msgstr "елмент шляху в позиції %d не є цілим числом: \"%s\"" -#: utils/adt/jsonfuncs.c:5438 +#: utils/adt/jsonfuncs.c:5462 #, c-format msgid "path element at position %d is out of range: %d" msgstr "елемент шляху в позиції %d поза діапазоном: %d" -#: utils/adt/jsonfuncs.c:5590 +#: utils/adt/jsonfuncs.c:5614 #, c-format msgid "wrong flag type, only arrays and scalars are allowed" msgstr "неправильний тип позначки, дозволені лише масиви і скаляри" -#: utils/adt/jsonfuncs.c:5597 +#: utils/adt/jsonfuncs.c:5621 #, c-format msgid "flag array element is not a string" msgstr "елемент масиву позначок не є рядком" -#: utils/adt/jsonfuncs.c:5598 utils/adt/jsonfuncs.c:5620 +#: utils/adt/jsonfuncs.c:5622 utils/adt/jsonfuncs.c:5644 #, c-format msgid "Possible values are: \"string\", \"numeric\", \"boolean\", \"key\", and \"all\"." msgstr "Можливі значення: \"string\", \"numeric\", \"boolean\", \"key\", і \"all\"." -#: utils/adt/jsonfuncs.c:5618 +#: utils/adt/jsonfuncs.c:5642 #, c-format msgid "wrong flag in flag array: \"%s\"" msgstr "неправильна позначка в масиві позначок: \"%s\"" @@ -25356,262 +26566,247 @@ msgstr "@ не дозволяється в кореневих виразах" msgid "LAST is allowed only in array subscripts" msgstr "LAST дозволяється лише в підрядкових символах масиву" -#: utils/adt/jsonpath_exec.c:491 +#: utils/adt/jsonpath_exec.c:489 #, c-format msgid "single boolean result is expected" msgstr "очікується один логічний результат" -#: utils/adt/jsonpath_exec.c:851 +#: utils/adt/jsonpath_exec.c:849 #, c-format msgid "jsonpath wildcard array accessor can only be applied to an array" msgstr "доступ до підстановочного масиву jsonpath може бути застосований лише до масиву" -#: utils/adt/jsonpath_exec.c:874 +#: utils/adt/jsonpath_exec.c:872 #, c-format msgid "jsonpath wildcard member accessor can only be applied to an object" msgstr "доступ до підстановочного елемента jsonpath може бути застосований лише до об'єкта" -#: utils/adt/jsonpath_exec.c:923 +#: utils/adt/jsonpath_exec.c:921 #, c-format msgid "jsonpath array subscript is out of bounds" msgstr "підрядковий символ масиву jsonpath поза межами" -#: utils/adt/jsonpath_exec.c:980 +#: utils/adt/jsonpath_exec.c:978 #, c-format msgid "jsonpath array accessor can only be applied to an array" msgstr "доступ до масиву jsonpath може бути застосований лише до масиву" -#: utils/adt/jsonpath_exec.c:1044 +#: utils/adt/jsonpath_exec.c:1042 #, c-format msgid "JSON object does not contain key \"%s\"" msgstr "Об'єкт JSON не містить ключа \"%s\"" -#: utils/adt/jsonpath_exec.c:1056 +#: utils/adt/jsonpath_exec.c:1054 #, c-format msgid "jsonpath member accessor can only be applied to an object" msgstr "доступ для елемента jsonpath може бути застосований лише до об'єкта" -#: utils/adt/jsonpath_exec.c:1114 +#: utils/adt/jsonpath_exec.c:1112 #, c-format msgid "jsonpath item method .%s() can only be applied to an array" msgstr "метод елемента jsonpath .%s() може бути застосований лише до масиву" -#: utils/adt/jsonpath_exec.c:1167 utils/adt/jsonpath_exec.c:1193 +#: utils/adt/jsonpath_exec.c:1165 utils/adt/jsonpath_exec.c:1191 +#: utils/adt/jsonpath_exec.c:1279 utils/adt/jsonpath_exec.c:1304 +#: utils/adt/jsonpath_exec.c:1356 utils/adt/jsonpath_exec.c:1376 +#: utils/adt/jsonpath_exec.c:1438 utils/adt/jsonpath_exec.c:1527 +#: utils/adt/jsonpath_exec.c:1560 utils/adt/jsonpath_exec.c:1584 #, c-format -msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type double precision" -msgstr "" +msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type %s" +msgstr "аргумент \"%s\" методу jsonpath .%s() недійсний для типу %s" -#: utils/adt/jsonpath_exec.c:1172 utils/adt/jsonpath_exec.c:1198 -#: utils/adt/jsonpath_exec.c:1414 utils/adt/jsonpath_exec.c:1446 +#: utils/adt/jsonpath_exec.c:1170 utils/adt/jsonpath_exec.c:1196 +#: utils/adt/jsonpath_exec.c:1413 utils/adt/jsonpath_exec.c:1445 #, c-format msgid "NaN or Infinity is not allowed for jsonpath item method .%s()" -msgstr "" +msgstr "NaN та Infinity не дозволяються для методу елементу jsonpath .%s()" -#: utils/adt/jsonpath_exec.c:1211 utils/adt/jsonpath_exec.c:1313 -#: utils/adt/jsonpath_exec.c:1455 utils/adt/jsonpath_exec.c:1593 +#: utils/adt/jsonpath_exec.c:1209 utils/adt/jsonpath_exec.c:1312 +#: utils/adt/jsonpath_exec.c:1454 utils/adt/jsonpath_exec.c:1592 #, c-format msgid "jsonpath item method .%s() can only be applied to a string or numeric value" msgstr "метод елемента jsonpath .%s() може бути застосований лише до рядка або числового значення" -#: utils/adt/jsonpath_exec.c:1281 utils/adt/jsonpath_exec.c:1305 -#, c-format -msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type bigint" -msgstr "" - -#: utils/adt/jsonpath_exec.c:1357 utils/adt/jsonpath_exec.c:1377 -#, c-format -msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type boolean" -msgstr "" - -#: utils/adt/jsonpath_exec.c:1386 +#: utils/adt/jsonpath_exec.c:1385 #, c-format msgid "jsonpath item method .%s() can only be applied to a boolean, string, or numeric value" -msgstr "" +msgstr "Метод jsonpath елемента .%s() може бути застосований лише до boolean, рядка або числового значення" -#: utils/adt/jsonpath_exec.c:1439 utils/adt/jsonpath_exec.c:1528 -#, c-format -msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type numeric" -msgstr "" - -#: utils/adt/jsonpath_exec.c:1487 +#: utils/adt/jsonpath_exec.c:1486 #, c-format msgid "precision of jsonpath item method .%s() is out of range for type integer" msgstr "точність методу елементу jsonpath .%s() знаходиться за межами діапазону для типу integer" -#: utils/adt/jsonpath_exec.c:1501 +#: utils/adt/jsonpath_exec.c:1500 #, c-format msgid "scale of jsonpath item method .%s() is out of range for type integer" msgstr "масштаб методу jsonpath елементу .%s() знаходиться за межами діапазону для типу integer" -#: utils/adt/jsonpath_exec.c:1561 utils/adt/jsonpath_exec.c:1585 -#, c-format -msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type integer" -msgstr "" - -#: utils/adt/jsonpath_exec.c:1648 +#: utils/adt/jsonpath_exec.c:1647 #, c-format msgid "jsonpath item method .%s() can only be applied to a boolean, string, numeric, or datetime value" -msgstr "" +msgstr "Метод jsonpath елемента .%s() можна застосувати лише до значення типу boolean, рядка, числа або дати" -#: utils/adt/jsonpath_exec.c:2137 +#: utils/adt/jsonpath_exec.c:2136 #, c-format msgid "left operand of jsonpath operator %s is not a single numeric value" msgstr "лівий операнд оператора jsonpath %s не є єдиним числовим значенням" -#: utils/adt/jsonpath_exec.c:2144 +#: utils/adt/jsonpath_exec.c:2143 #, c-format msgid "right operand of jsonpath operator %s is not a single numeric value" msgstr "правий операнд оператора jsonpath %s не є єдиним числовим значенням" -#: utils/adt/jsonpath_exec.c:2212 +#: utils/adt/jsonpath_exec.c:2211 #, c-format msgid "operand of unary jsonpath operator %s is not a numeric value" msgstr "операнд унарного оператора jsonpath %s не є єдиним числовим значенням" -#: utils/adt/jsonpath_exec.c:2311 +#: utils/adt/jsonpath_exec.c:2310 #, c-format msgid "jsonpath item method .%s() can only be applied to a numeric value" msgstr "метод елемента jsonpath .%s() може бути застосований лише до числового значення" -#: utils/adt/jsonpath_exec.c:2357 +#: utils/adt/jsonpath_exec.c:2356 #, c-format msgid "jsonpath item method .%s() can only be applied to a string" msgstr "метод елемента jsonpath .%s() може бути застосований лише до рядку" -#: utils/adt/jsonpath_exec.c:2450 +#: utils/adt/jsonpath_exec.c:2449 #, c-format msgid "time precision of jsonpath item method .%s() is out of range for type integer" msgstr "точність часу методу елементу jsonpath .%s() знаходиться за межами діапазону для типу integer" -#: utils/adt/jsonpath_exec.c:2484 utils/adt/jsonpath_exec.c:2490 -#: utils/adt/jsonpath_exec.c:2517 utils/adt/jsonpath_exec.c:2545 -#: utils/adt/jsonpath_exec.c:2598 utils/adt/jsonpath_exec.c:2649 -#: utils/adt/jsonpath_exec.c:2720 +#: utils/adt/jsonpath_exec.c:2483 utils/adt/jsonpath_exec.c:2489 +#: utils/adt/jsonpath_exec.c:2516 utils/adt/jsonpath_exec.c:2544 +#: utils/adt/jsonpath_exec.c:2597 utils/adt/jsonpath_exec.c:2648 +#: utils/adt/jsonpath_exec.c:2719 #, c-format msgid "%s format is not recognized: \"%s\"" msgstr "Формат %s не розпізнано: \"%s\"" -#: utils/adt/jsonpath_exec.c:2486 +#: utils/adt/jsonpath_exec.c:2485 #, c-format msgid "Use a datetime template argument to specify the input data format." msgstr "Використайте аргумент шаблону дати й часу щоб вказати формат вхідних даних." -#: utils/adt/jsonpath_exec.c:2679 utils/adt/jsonpath_exec.c:2760 +#: utils/adt/jsonpath_exec.c:2678 utils/adt/jsonpath_exec.c:2759 #, c-format msgid "time precision of jsonpath item method .%s() is invalid" -msgstr "" +msgstr "часова точність методу елементу jsonpath .%s() є неприпустимою" -#: utils/adt/jsonpath_exec.c:2840 +#: utils/adt/jsonpath_exec.c:2839 #, c-format msgid "jsonpath item method .%s() can only be applied to an object" msgstr "метод елемента jsonpath .%s() може бути застосований лише до об'єкта" -#: utils/adt/jsonpath_exec.c:3124 +#: utils/adt/jsonpath_exec.c:3123 #, c-format msgid "could not convert value of type %s to jsonpath" -msgstr "" +msgstr "не вдалося перетворити значення типу %s в jsonpath" -#: utils/adt/jsonpath_exec.c:3158 +#: utils/adt/jsonpath_exec.c:3157 #, c-format msgid "could not find jsonpath variable \"%s\"" msgstr "не вдалося знайти змінну jsonpath \"%s\"" -#: utils/adt/jsonpath_exec.c:3211 +#: utils/adt/jsonpath_exec.c:3210 #, c-format msgid "\"vars\" argument is not an object" msgstr "аргумент \"vars\" не є об'єктом" -#: utils/adt/jsonpath_exec.c:3212 +#: utils/adt/jsonpath_exec.c:3211 #, c-format msgid "Jsonpath parameters should be encoded as key-value pairs of \"vars\" object." msgstr "Параметри Jsonpath повинні бути закодовані в якості пар \"ключ-значення\" об'єкту \"vars\"." -#: utils/adt/jsonpath_exec.c:3475 +#: utils/adt/jsonpath_exec.c:3474 #, c-format msgid "jsonpath array subscript is not a single numeric value" msgstr "підрядковий символ масиву jsonpath не є єдиним числовим значенням" -#: utils/adt/jsonpath_exec.c:3487 +#: utils/adt/jsonpath_exec.c:3486 #, c-format msgid "jsonpath array subscript is out of integer range" msgstr "підрядковий символ масиву jsonpath поза цілим діапазоном" -#: utils/adt/jsonpath_exec.c:3671 +#: utils/adt/jsonpath_exec.c:3670 #, c-format msgid "cannot convert value from %s to %s without time zone usage" msgstr "не можна перетворити значення з %s в %s без використання часового поясу" -#: utils/adt/jsonpath_exec.c:3673 +#: utils/adt/jsonpath_exec.c:3672 #, c-format msgid "Use *_tz() function for time zone support." msgstr "Використовуйте функцію *_tz() для підтримки часового поясу." -#: utils/adt/jsonpath_exec.c:3981 +#: utils/adt/jsonpath_exec.c:3980 #, c-format -msgid "JSON path expression for column \"%s\" should return single item without wrapper" -msgstr "" +msgid "JSON path expression for column \"%s\" must return single item when no wrapper is requested" +msgstr "Вираз шляху в JSON для стовпця \"%s\" повинен повернути єдиний елемент, якщо не вказано жодної обгортки" -#: utils/adt/jsonpath_exec.c:3983 utils/adt/jsonpath_exec.c:3988 +#: utils/adt/jsonpath_exec.c:3982 utils/adt/jsonpath_exec.c:3987 #, c-format msgid "Use the WITH WRAPPER clause to wrap SQL/JSON items into an array." -msgstr "" +msgstr "Використайте вираз WITH WRAPPER, щоб обернути елементи SQL/JSON в масив." -#: utils/adt/jsonpath_exec.c:3987 +#: utils/adt/jsonpath_exec.c:3986 #, c-format -msgid "JSON path expression in JSON_QUERY should return single item without wrapper" -msgstr "" +msgid "JSON path expression in JSON_QUERY must return single item when no wrapper is requested" +msgstr "Вираз шляху JSON в JSON_QUERY повинен повернути єдиний елемент, якщо не вказано жодної обгортки" -#: utils/adt/jsonpath_exec.c:4045 utils/adt/jsonpath_exec.c:4069 +#: utils/adt/jsonpath_exec.c:4044 utils/adt/jsonpath_exec.c:4068 #, c-format -msgid "JSON path expression for column \"%s\" should return single scalar item" -msgstr "" +msgid "JSON path expression for column \"%s\" must return single scalar item" +msgstr "Вираз шляху JSON для стовпця \"%s\" повинен повертати одинарний скаляр" -#: utils/adt/jsonpath_exec.c:4050 utils/adt/jsonpath_exec.c:4074 +#: utils/adt/jsonpath_exec.c:4049 utils/adt/jsonpath_exec.c:4073 #, c-format -msgid "JSON path expression in JSON_VALUE should return single scalar item" -msgstr "" +msgid "JSON path expression in JSON_VALUE must return single scalar item" +msgstr "Вираз шляху JSON в JSON_VALUE повинен повертати одиничний скалярний елемент" #: utils/adt/levenshtein.c:132 #, c-format msgid "levenshtein argument exceeds maximum length of %d characters" msgstr "довжина аргументу levenshtein перевищує максимальну довжину, %d символів" -#: utils/adt/like.c:159 +#: utils/adt/like.c:162 #, c-format -msgid "nondeterministic collations are not supported for LIKE" -msgstr "недетерміновані параметри сортування не підтримуються для LIKE" +msgid "could not determine which collation to use for LIKE" +msgstr "не вдалося визначити, яке правило сортування використати для LIKE" -#: utils/adt/like.c:188 utils/adt/like_support.c:1023 +#: utils/adt/like.c:193 utils/adt/like_support.c:1019 #, c-format msgid "could not determine which collation to use for ILIKE" msgstr "не вдалося визначити який параметр сортування використати для ILIKE" -#: utils/adt/like.c:200 +#: utils/adt/like.c:202 #, c-format msgid "nondeterministic collations are not supported for ILIKE" msgstr "недетерміновані параметри сортування не підтримуються для ILIKE" -#: utils/adt/like_match.c:108 utils/adt/like_match.c:168 +#: utils/adt/like_match.c:107 utils/adt/like_match.c:169 +#: utils/adt/like_match.c:237 #, c-format msgid "LIKE pattern must not end with escape character" msgstr "Шаблон LIKE не повинен закінчуватись символом виходу" -#: utils/adt/like_match.c:293 utils/adt/regexp.c:800 +#: utils/adt/like_match.c:437 utils/adt/regexp.c:801 #, c-format msgid "invalid escape string" msgstr "неприпустимий рядок виходу" -#: utils/adt/like_match.c:294 utils/adt/regexp.c:801 +#: utils/adt/like_match.c:438 utils/adt/regexp.c:802 #, c-format msgid "Escape string must be empty or one character." msgstr "Рядок виходу повинен бути пустим або складатися з одного символу." -#: utils/adt/like_support.c:1013 +#: utils/adt/like_support.c:1009 #, c-format msgid "case insensitive matching not supported on type bytea" msgstr "порівняння без урахування регістру не підтримується для типу bytea" -#: utils/adt/like_support.c:1114 +#: utils/adt/like_support.c:1106 #, c-format msgid "regular-expression matching not supported on type bytea" msgstr "порівняння з регулярними виразами не підтримується для типу bytea" @@ -25631,7 +26826,7 @@ msgstr "дані macaddr8 поза діапазоном, для перетвор 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 "Лише адреси, які мають FF і FE в якості значень в четвертому і п'ятому байті зліва, наприклад xx:xx:xx:ff:fe:xx:xx:xx можуть бути перетворені з macaddr8 в macaddr." -#: utils/adt/mcxtfuncs.c:173 +#: utils/adt/mcxtfuncs.c:293 #, c-format msgid "PID %d is not a PostgreSQL server process" msgstr "PID %d не є серверним процесом PostgreSQL" @@ -25748,8 +26943,8 @@ msgstr "неприпустиме значення cidr: \"%s\"" msgid "Value has bits set to right of mask." msgstr "Значення має встановленні біти правіше маски." -#: utils/adt/network.c:152 utils/adt/network.c:1184 utils/adt/network.c:1209 -#: utils/adt/network.c:1234 +#: utils/adt/network.c:152 utils/adt/network.c:1149 utils/adt/network.c:1174 +#: utils/adt/network.c:1199 #, c-format msgid "could not format inet value: %m" msgstr "не вдалося форматувати значення inet: %m" @@ -25777,198 +26972,198 @@ msgstr "неприпустима довжина в зовнішньому зна msgid "invalid external \"cidr\" value" msgstr "неприпустиме зовнішнє значення \"cidr\"" -#: utils/adt/network.c:336 utils/adt/network.c:359 +#: utils/adt/network.c:334 utils/adt/network.c:357 #, c-format msgid "invalid mask length: %d" msgstr "неприпустима довжина маски: %d" -#: utils/adt/network.c:1252 +#: utils/adt/network.c:1217 #, c-format msgid "could not format cidr value: %m" msgstr "не вдалося форматувати значення cidr: %m" -#: utils/adt/network.c:1485 +#: utils/adt/network.c:1450 #, c-format msgid "cannot merge addresses from different families" msgstr "об'єднати адреси з різних сімейств не можна" -#: utils/adt/network.c:1893 +#: utils/adt/network.c:1858 #, c-format msgid "cannot AND inet values of different sizes" msgstr "не можна використовувати \"І\" (AND) для значень inet різного розміру" -#: utils/adt/network.c:1925 +#: utils/adt/network.c:1890 #, c-format msgid "cannot OR inet values of different sizes" msgstr "не можна використовувати \"АБО\" (OR) для значень inet різного розміру" -#: utils/adt/network.c:1986 utils/adt/network.c:2062 +#: utils/adt/network.c:1951 utils/adt/network.c:2027 #, c-format msgid "result is out of range" msgstr "результат поза діапазоном" -#: utils/adt/network.c:2027 +#: utils/adt/network.c:1992 #, c-format msgid "cannot subtract inet values of different sizes" msgstr "не можна віднімати значення inet різного розміру" -#: utils/adt/numeric.c:793 utils/adt/numeric.c:3659 utils/adt/numeric.c:7216 -#: utils/adt/numeric.c:7419 utils/adt/numeric.c:7891 utils/adt/numeric.c:10586 -#: utils/adt/numeric.c:11061 utils/adt/numeric.c:11155 -#: utils/adt/numeric.c:11290 +#: utils/adt/numeric.c:795 utils/adt/numeric.c:3763 utils/adt/numeric.c:7320 +#: utils/adt/numeric.c:7523 utils/adt/numeric.c:7995 utils/adt/numeric.c:10929 +#: utils/adt/numeric.c:11404 utils/adt/numeric.c:11498 +#: utils/adt/numeric.c:11633 #, c-format msgid "value overflows numeric format" msgstr "значення переповнюють формат numeric" -#: utils/adt/numeric.c:1106 +#: utils/adt/numeric.c:1108 #, c-format msgid "invalid sign in external \"numeric\" value" msgstr "неприпустимий знак у зовнішньому значенні \"numeric\"" -#: utils/adt/numeric.c:1112 +#: utils/adt/numeric.c:1114 #, c-format msgid "invalid scale in external \"numeric\" value" msgstr "неприпустимий масштаб у зовнішньому значенні \"numeric\"" -#: utils/adt/numeric.c:1121 +#: utils/adt/numeric.c:1123 #, c-format msgid "invalid digit in external \"numeric\" value" msgstr "неприпустиме число у зовнішньому значенні \"numeric\"" -#: utils/adt/numeric.c:1336 utils/adt/numeric.c:1350 +#: utils/adt/numeric.c:1338 utils/adt/numeric.c:1352 #, c-format msgid "NUMERIC precision %d must be between 1 and %d" msgstr "Точність NUMERIC %d повинна бути між 1 і %d" -#: utils/adt/numeric.c:1341 +#: utils/adt/numeric.c:1343 #, c-format msgid "NUMERIC scale %d must be between %d and %d" msgstr "Масштаб NUMERIC %d повинен бути між %d і %d" -#: utils/adt/numeric.c:1359 +#: utils/adt/numeric.c:1361 #, c-format msgid "invalid NUMERIC type modifier" msgstr "неприпустимий модифікатор типу NUMERIC" -#: utils/adt/numeric.c:1725 +#: utils/adt/numeric.c:1727 #, c-format msgid "start value cannot be NaN" msgstr "початкове значення не може бути NaN" -#: utils/adt/numeric.c:1729 +#: utils/adt/numeric.c:1731 #, c-format msgid "start value cannot be infinity" msgstr "початкове значення не може бути нескінченністю" -#: utils/adt/numeric.c:1736 +#: utils/adt/numeric.c:1738 #, c-format msgid "stop value cannot be NaN" msgstr "кінцеве значення не може бути NaN" -#: utils/adt/numeric.c:1740 +#: utils/adt/numeric.c:1742 #, c-format msgid "stop value cannot be infinity" msgstr "кінцеве значення не може бути нескінченністю" -#: utils/adt/numeric.c:1753 +#: utils/adt/numeric.c:1755 #, c-format msgid "step size cannot be NaN" msgstr "розмір кроку не може бути NaN" -#: utils/adt/numeric.c:1757 +#: utils/adt/numeric.c:1759 #, c-format msgid "step size cannot be infinity" msgstr "розмір кроку не може бути нескінченністю" -#: utils/adt/numeric.c:3649 +#: utils/adt/numeric.c:3753 #, c-format msgid "factorial of a negative number is undefined" msgstr "факторіал від'ємного числа не визначено" -#: utils/adt/numeric.c:4256 +#: utils/adt/numeric.c:4360 #, c-format msgid "lower bound cannot be NaN" -msgstr "" +msgstr "нижня границя не може бути NaN" -#: utils/adt/numeric.c:4260 +#: utils/adt/numeric.c:4364 #, c-format msgid "lower bound cannot be infinity" -msgstr "" +msgstr "нижня границя не може бути нескінченністю" -#: utils/adt/numeric.c:4267 +#: utils/adt/numeric.c:4371 #, c-format msgid "upper bound cannot be NaN" -msgstr "" +msgstr "верхня границя не може бути NaN" -#: utils/adt/numeric.c:4271 +#: utils/adt/numeric.c:4375 #, c-format msgid "upper bound cannot be infinity" -msgstr "" +msgstr "верхня границя не може бути нескінченністю" -#: utils/adt/numeric.c:4432 utils/adt/numeric.c:4520 utils/adt/numeric.c:4580 -#: utils/adt/numeric.c:4776 +#: utils/adt/numeric.c:4536 utils/adt/numeric.c:4624 utils/adt/numeric.c:4684 +#: utils/adt/numeric.c:4880 #, c-format msgid "cannot convert NaN to %s" msgstr "неможливо перетворити NaN на %s" -#: utils/adt/numeric.c:4436 utils/adt/numeric.c:4524 utils/adt/numeric.c:4584 -#: utils/adt/numeric.c:4780 +#: utils/adt/numeric.c:4540 utils/adt/numeric.c:4628 utils/adt/numeric.c:4688 +#: utils/adt/numeric.c:4884 #, c-format msgid "cannot convert infinity to %s" msgstr "неможливо перетворити нескінченність на %s" -#: utils/adt/numeric.c:4789 +#: utils/adt/numeric.c:4893 #, c-format msgid "pg_lsn out of range" msgstr "pg_lsn поза діапазоном" -#: utils/adt/numeric.c:7981 utils/adt/numeric.c:8032 +#: utils/adt/numeric.c:8085 utils/adt/numeric.c:8136 #, c-format msgid "numeric field overflow" msgstr "надлишок поля numeric" -#: utils/adt/numeric.c:7982 +#: utils/adt/numeric.c:8086 #, c-format 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:8033 +#: utils/adt/numeric.c:8137 #, c-format msgid "A field with precision %d, scale %d cannot hold an infinite value." msgstr "Поле з точністю %d, масштабом %d не може містити нескінченне значення." -#: utils/adt/numeric.c:11359 utils/adt/pseudorandomfuncs.c:135 +#: utils/adt/numeric.c:11702 utils/adt/pseudorandomfuncs.c:135 #: utils/adt/pseudorandomfuncs.c:159 #, c-format msgid "lower bound must be less than or equal to upper bound" -msgstr "" +msgstr "нижня границя повинна бути менше або дорівнювати верхній границі" #: utils/adt/oid.c:217 #, c-format msgid "invalid oidvector data" msgstr "неприпустимі дані oidvector" -#: utils/adt/oracle_compat.c:976 +#: utils/adt/oracle_compat.c:992 #, c-format msgid "requested character too large" msgstr "запитаний символ занадто великий" -#: utils/adt/oracle_compat.c:1020 +#: utils/adt/oracle_compat.c:1036 #, c-format msgid "character number must be positive" msgstr "номер символу має бути додатнім" -#: utils/adt/oracle_compat.c:1024 +#: utils/adt/oracle_compat.c:1040 #, c-format msgid "null character not permitted" msgstr "символ не може бути null" -#: utils/adt/oracle_compat.c:1042 utils/adt/oracle_compat.c:1095 +#: utils/adt/oracle_compat.c:1058 utils/adt/oracle_compat.c:1111 #, c-format msgid "requested character too large for encoding: %u" msgstr "запитаний символ занадто великий для кодування: %u" -#: utils/adt/oracle_compat.c:1083 +#: utils/adt/oracle_compat.c:1099 #, c-format msgid "requested character not valid for encoding: %u" msgstr "запитаний символ не припустимий для кодування: %u" @@ -25979,140 +27174,150 @@ msgstr "запитаний символ не припустимий для ко msgid "percentile value %g is not between 0 and 1" msgstr "значення процентиля %g не є між 0 і 1" -#: utils/adt/pg_locale.c:1484 -#, c-format -msgid "could not open collator for locale \"%s\" with rules \"%s\": %s" -msgstr "не вдалося відкрити сортувальник для локалізації\"%s\" з правилами \"%s\": %s" - -#: utils/adt/pg_locale.c:1495 utils/adt/pg_locale.c:2969 -#: utils/adt/pg_locale.c:3042 -#, c-format -msgid "ICU is not supported in this build" -msgstr "ICU не підтримується в цій збірці" - -#: utils/adt/pg_locale.c:1523 +#: utils/adt/pg_locale.c:311 utils/adt/pg_locale.c:343 #, c-format -msgid "could not create locale \"%s\": %m" -msgstr "не вдалося створити локалізацію \"%s\": %m" +msgid "locale name \"%s\" contains non-ASCII characters" +msgstr "назва локалі \"%s\" містить не-ASCII символи" -#: utils/adt/pg_locale.c:1526 -#, c-format -msgid "The operating system could not find any locale data for the locale name \"%s\"." -msgstr "Операційній системі не вдалося знайти дані локалізації з іменем \"%s\"." - -#: utils/adt/pg_locale.c:1647 -#, c-format -msgid "collations with different collate and ctype values are not supported on this platform" -msgstr "параметри сортування з різними значеннями collate і ctype не підтримуються на цій платформі" - -#: utils/adt/pg_locale.c:1694 +#: utils/adt/pg_locale.c:1127 #, c-format msgid "collation \"%s\" has no actual version, but a version was recorded" msgstr "для параметру сортування \"%s\" який не має фактичної версії, була вказана версія" -#: utils/adt/pg_locale.c:1700 +#: utils/adt/pg_locale.c:1133 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "невідповідність версій для параметру сортування \"%s\"" -#: utils/adt/pg_locale.c:1702 +#: utils/adt/pg_locale.c:1135 #, c-format msgid "The collation in the database was created using version %s, but the operating system provides version %s." msgstr "Параметр сортування в базі даних був створений з версією %s, але операційна система надає версію %s." -#: utils/adt/pg_locale.c:1705 +#: utils/adt/pg_locale.c:1138 #, c-format 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/pg_locale.c:1749 utils/adt/pg_locale.c:2533 -#: utils/adt/pg_locale.c:2558 +#: utils/adt/pg_locale.c:1498 utils/adt/pg_locale.c:1525 +#: utils/adt/pg_locale_builtin.c:188 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "неприпустиме ім'я локалі \"%s\" для вбудованого провайдера" -#: utils/adt/pg_locale.c:1791 +#: utils/adt/pg_locale.c:1590 #, c-format -msgid "could not load locale \"%s\"" -msgstr "не вдалося завантажити локаль \"%s\"" +msgid "could not convert locale name \"%s\" to language tag: %s" +msgstr "не вдалося перетворити локальну назву \"%s\" на мітку мови: %s" -#: utils/adt/pg_locale.c:1816 +#: utils/adt/pg_locale.c:1599 utils/adt/pg_locale.c:1674 +#: utils/adt/pg_locale_icu.c:215 #, c-format -msgid "could not get collation version for locale \"%s\": error code %lu" -msgstr "не вдалося отримати версію параметрів сортування для локалізації \"%s\": код помилки %lu" +msgid "ICU is not supported in this build" +msgstr "ICU не підтримується в цій збірці" -#: utils/adt/pg_locale.c:1872 utils/adt/pg_locale.c:1885 +#: utils/adt/pg_locale.c:1632 #, c-format -msgid "could not convert string to UTF-16: error code %lu" -msgstr "не вдалося перетворити рядок в UTF-16: код помилки %lu" +msgid "could not get language from ICU locale \"%s\": %s" +msgstr "не вдалося отримати мову з локалі ICU \"%s\": %s" -#: utils/adt/pg_locale.c:1897 +#: utils/adt/pg_locale.c:1634 utils/adt/pg_locale.c:1664 #, c-format -msgid "could not compare Unicode strings: %m" -msgstr "не вдалося порівняти рядки в Unicode: %m" +msgid "To disable ICU locale validation, set the parameter \"%s\" to \"%s\"." +msgstr "Щоб вимкнути перевірку мови ICU, встановіть параметр \"%s\" на \"%s\"." + +#: utils/adt/pg_locale.c:1662 +#, c-format +msgid "ICU locale \"%s\" has unknown language \"%s\"" +msgstr "locale ICU \"%s\" має невідому мову \"%s\"" + +#: utils/adt/pg_locale_icu.c:264 +#, c-format +msgid "could not get language from locale \"%s\": %s" +msgstr "не вдалося отримати мову з локалі \"%s\": %s" + +#: utils/adt/pg_locale_icu.c:286 utils/adt/pg_locale_icu.c:303 +#, c-format +msgid "could not open collator for locale \"%s\": %s" +msgstr "не вдалося відкрити сортувальник для локалізації \"%s\": %s" -#: utils/adt/pg_locale.c:2071 +#: utils/adt/pg_locale_icu.c:374 +#, c-format +msgid "could not open collator for locale \"%s\" with rules \"%s\": %s" +msgstr "не вдалося відкрити сортувальник для локалізації\"%s\" з правилами \"%s\": %s" + +#: utils/adt/pg_locale_icu.c:488 #, c-format msgid "collation failed: %s" msgstr "помилка в бібліотеці сортування: %s" -#: utils/adt/pg_locale.c:2290 utils/adt/pg_locale.c:2322 +#: utils/adt/pg_locale_icu.c:567 utils/adt/pg_locale_icu.c:831 #, c-format msgid "sort key generation failed: %s" msgstr "не вдалося згенерувати ключ сортування: %s" -#: utils/adt/pg_locale.c:2612 +#: utils/adt/pg_locale_icu.c:641 utils/adt/pg_locale_icu.c:653 +#: utils/adt/pg_locale_icu.c:878 utils/adt/pg_locale_icu.c:899 #, c-format -msgid "could not get language from locale \"%s\": %s" -msgstr "не вдалося отримати мову з локалі \"%s\": %s" +msgid "%s failed: %s" +msgstr "%s помилка: %s" -#: utils/adt/pg_locale.c:2633 utils/adt/pg_locale.c:2649 +#: utils/adt/pg_locale_icu.c:682 #, c-format -msgid "could not open collator for locale \"%s\": %s" -msgstr "не вдалося відкрити сортувальник для локалізації \"%s\": %s" +msgid "case conversion failed: %s" +msgstr "помилка при перетворенні регістру: %s" -#: utils/adt/pg_locale.c:2674 +#: utils/adt/pg_locale_icu.c:851 #, c-format msgid "encoding \"%s\" not supported by ICU" msgstr "ICU не підтримує кодування \"%s\"" -#: utils/adt/pg_locale.c:2681 +#: utils/adt/pg_locale_icu.c:858 #, c-format msgid "could not open ICU converter for encoding \"%s\": %s" msgstr "не вдалося відкрити перетворювач ICU для кодування \"%s\": %s" -#: utils/adt/pg_locale.c:2699 utils/adt/pg_locale.c:2718 -#: utils/adt/pg_locale.c:2774 utils/adt/pg_locale.c:2785 +#: utils/adt/pg_locale_libc.c:553 #, c-format -msgid "%s failed: %s" -msgstr "%s помилка: %s" +msgid "collations with different collate and ctype values are not supported on this platform" +msgstr "параметри сортування з різними значеннями collate і ctype не підтримуються на цій платформі" -#: utils/adt/pg_locale.c:2960 +#: utils/adt/pg_locale_libc.c:683 #, c-format -msgid "could not convert locale name \"%s\" to language tag: %s" -msgstr "не вдалося перетворити локальну назву \"%s\" на мітку мови: %s" +msgid "could not load locale \"%s\"" +msgstr "не вдалося завантажити локаль \"%s\"" -#: utils/adt/pg_locale.c:3001 +#: utils/adt/pg_locale_libc.c:708 #, c-format -msgid "could not get language from ICU locale \"%s\": %s" -msgstr "не вдалося отримати мову з локалі ICU \"%s\": %s" +msgid "could not get collation version for locale \"%s\": error code %lu" +msgstr "не вдалося отримати версію параметрів сортування для локалізації \"%s\": код помилки %lu" -#: utils/adt/pg_locale.c:3003 utils/adt/pg_locale.c:3032 +#: utils/adt/pg_locale_libc.c:771 utils/adt/pg_locale_libc.c:784 #, c-format -msgid "To disable ICU locale validation, set the parameter \"%s\" to \"%s\"." -msgstr "Щоб вимкнути перевірку мови ICU, встановіть параметр \"%s\" на \"%s\"." +msgid "could not convert string to UTF-16: error code %lu" +msgstr "не вдалося перетворити рядок в UTF-16: код помилки %lu" -#: utils/adt/pg_locale.c:3030 +#: utils/adt/pg_locale_libc.c:793 #, c-format -msgid "ICU locale \"%s\" has unknown language \"%s\"" -msgstr "locale ICU \"%s\" має невідому мову \"%s\"" +msgid "could not compare Unicode strings: %m" +msgstr "не вдалося порівняти рядки в Unicode: %m" + +#: utils/adt/pg_locale_libc.c:825 +#, c-format +msgid "could not create locale \"%s\": %m" +msgstr "не вдалося створити локалізацію \"%s\": %m" -#: utils/adt/pg_locale.c:3181 +#: utils/adt/pg_locale_libc.c:828 +#, c-format +msgid "The operating system could not find any locale data for the locale name \"%s\"." +msgstr "Операційній системі не вдалося знайти дані локалізації з іменем \"%s\"." + +#: utils/adt/pg_locale_libc.c:1000 #, c-format msgid "invalid multibyte character for locale" msgstr "неприпустимий мультибайтний символ для локалізації" -#: utils/adt/pg_locale.c:3182 +#: utils/adt/pg_locale_libc.c:1001 #, c-format msgid "The server's LC_CTYPE locale is probably incompatible with the database encoding." msgstr "Параметр локалізації серверу LC_CTYPE, можливо, несумісний з кодуванням бази даних." @@ -26127,27 +27332,27 @@ msgstr "не можна додати NaN в pg_lsn" msgid "cannot subtract NaN from pg_lsn" msgstr "віднімати NaN з pg_lsn не можна" -#: utils/adt/pg_upgrade_support.c:39 +#: utils/adt/pg_upgrade_support.c:38 #, c-format msgid "function can only be called when server is in binary upgrade mode" msgstr "функцію можна викликати тільки коли сервер знаходиться в режимі двійкового оновлення" -#: utils/adt/pgstatfuncs.c:252 +#: utils/adt/pgstatfuncs.c:280 #, c-format msgid "invalid command name: \"%s\"" msgstr "неприпустиме ім’я команди: \"%s\"" -#: utils/adt/pgstatfuncs.c:1739 +#: utils/adt/pgstatfuncs.c:1909 #, c-format msgid "unrecognized reset target: \"%s\"" msgstr "нерозпізнане відновлення мети: \"%s\"" -#: utils/adt/pgstatfuncs.c:1740 +#: utils/adt/pgstatfuncs.c:1910 #, c-format msgid "Target must be \"archiver\", \"bgwriter\", \"checkpointer\", \"io\", \"recovery_prefetch\", \"slru\", or \"wal\"." msgstr "Ціллю має бути \"archiver\", \"bgwriter\", \"checkpointer\", \"io\", \"recovery_prefetch\", \"slru\" або \"wal\"." -#: utils/adt/pgstatfuncs.c:1822 +#: utils/adt/pgstatfuncs.c:2027 #, c-format msgid "invalid subscription OID %u" msgstr "некоректний OID підписки %u" @@ -26172,72 +27377,72 @@ msgstr "не можна прийняти значення типу shell" msgid "cannot display a value of a shell type" msgstr "не можна відобразити значення типу shell" -#: utils/adt/rangetypes.c:422 +#: utils/adt/rangetypes.c:424 #, c-format msgid "range constructor flags argument must not be null" msgstr "аргумент позначок конструктору діапазону не може бути null" -#: utils/adt/rangetypes.c:1021 +#: utils/adt/rangetypes.c:1023 #, c-format msgid "result of range difference would not be contiguous" msgstr "результат різниці діапазонів не буде безперервним" -#: utils/adt/rangetypes.c:1082 +#: utils/adt/rangetypes.c:1084 #, c-format msgid "result of range union would not be contiguous" msgstr "результат об'єднання діапазонів не буде безперервним" -#: utils/adt/rangetypes.c:1757 +#: utils/adt/rangetypes.c:1821 #, c-format msgid "range lower bound must be less than or equal to range upper bound" msgstr "нижня границя діапазону повинна бути менше або дорівнювати верхній границі діапазону" -#: utils/adt/rangetypes.c:2256 utils/adt/rangetypes.c:2269 -#: utils/adt/rangetypes.c:2283 +#: utils/adt/rangetypes.c:2320 utils/adt/rangetypes.c:2333 +#: utils/adt/rangetypes.c:2347 #, c-format msgid "invalid range bound flags" msgstr "неприпустимі позначки границь діапазону" -#: utils/adt/rangetypes.c:2257 utils/adt/rangetypes.c:2270 -#: utils/adt/rangetypes.c:2284 +#: utils/adt/rangetypes.c:2321 utils/adt/rangetypes.c:2334 +#: utils/adt/rangetypes.c:2348 #, c-format msgid "Valid values are \"[]\", \"[)\", \"(]\", and \"()\"." msgstr "Припустимі значення \"[]\", \"[)\", \"(]\", і \"()\"." -#: utils/adt/rangetypes.c:2352 utils/adt/rangetypes.c:2369 -#: utils/adt/rangetypes.c:2384 utils/adt/rangetypes.c:2404 -#: utils/adt/rangetypes.c:2415 utils/adt/rangetypes.c:2462 -#: utils/adt/rangetypes.c:2470 +#: utils/adt/rangetypes.c:2416 utils/adt/rangetypes.c:2433 +#: utils/adt/rangetypes.c:2448 utils/adt/rangetypes.c:2468 +#: utils/adt/rangetypes.c:2479 utils/adt/rangetypes.c:2526 +#: utils/adt/rangetypes.c:2534 #, c-format msgid "malformed range literal: \"%s\"" msgstr "неправильний літерал діапазону: \"%s\"" -#: utils/adt/rangetypes.c:2354 +#: utils/adt/rangetypes.c:2418 #, c-format msgid "Junk after \"empty\" key word." msgstr "Сміття після ключового слова \"empty\"." -#: utils/adt/rangetypes.c:2371 +#: utils/adt/rangetypes.c:2435 #, c-format msgid "Missing left parenthesis or bracket." msgstr "Пропущено ліву дужку (круглу або квадратну)." -#: utils/adt/rangetypes.c:2386 +#: utils/adt/rangetypes.c:2450 #, c-format msgid "Missing comma after lower bound." msgstr "Пропущено кому після нижньої границі." -#: utils/adt/rangetypes.c:2406 +#: utils/adt/rangetypes.c:2470 #, c-format msgid "Too many commas." msgstr "Занадто багато ком." -#: utils/adt/rangetypes.c:2417 +#: utils/adt/rangetypes.c:2481 #, c-format msgid "Junk after right parenthesis or bracket." msgstr "Сміття після правої дужки." -#: utils/adt/regexp.c:304 utils/adt/regexp.c:1996 utils/adt/varlena.c:4273 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4486 #, c-format msgid "regular expression failed: %s" msgstr "помилка в регулярному виразі: %s" @@ -26252,33 +27457,33 @@ msgstr "неприпустимий параметр регулярного ви msgid "If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly." msgstr "Якщо ви хочете використовувати regexp_replace() з початковим параметром, приведіть тип четвертого аргумента до цілого числа." -#: utils/adt/regexp.c:716 utils/adt/regexp.c:725 utils/adt/regexp.c:1082 -#: utils/adt/regexp.c:1146 utils/adt/regexp.c:1155 utils/adt/regexp.c:1164 -#: utils/adt/regexp.c:1173 utils/adt/regexp.c:1853 utils/adt/regexp.c:1862 -#: utils/adt/regexp.c:1871 utils/misc/guc.c:6785 utils/misc/guc.c:6819 +#: utils/adt/regexp.c:716 utils/adt/regexp.c:725 utils/adt/regexp.c:1151 +#: utils/adt/regexp.c:1215 utils/adt/regexp.c:1224 utils/adt/regexp.c:1233 +#: utils/adt/regexp.c:1242 utils/adt/regexp.c:1922 utils/adt/regexp.c:1931 +#: utils/adt/regexp.c:1940 utils/misc/guc.c:6829 utils/misc/guc.c:6863 #, c-format msgid "invalid value for parameter \"%s\": %d" msgstr "неприпустиме значення для параметра \"%s\": %d" -#: utils/adt/regexp.c:936 +#: utils/adt/regexp.c:948 #, c-format msgid "SQL regular expression may not contain more than two escape-double-quote separators" msgstr "Регулярний вираз SQL не може містити більше двох роздільників escape-double-quote" #. translator: %s is a SQL function name -#: utils/adt/regexp.c:1093 utils/adt/regexp.c:1184 utils/adt/regexp.c:1271 -#: utils/adt/regexp.c:1310 utils/adt/regexp.c:1698 utils/adt/regexp.c:1753 -#: utils/adt/regexp.c:1882 +#: utils/adt/regexp.c:1162 utils/adt/regexp.c:1253 utils/adt/regexp.c:1340 +#: utils/adt/regexp.c:1379 utils/adt/regexp.c:1767 utils/adt/regexp.c:1822 +#: utils/adt/regexp.c:1951 #, c-format msgid "%s does not support the \"global\" option" msgstr "%s не підтримує параметр \"global\"" -#: utils/adt/regexp.c:1312 +#: utils/adt/regexp.c:1381 #, c-format msgid "Use the regexp_matches function instead." msgstr "Використайте функцію regexp_matches замість." -#: utils/adt/regexp.c:1500 +#: utils/adt/regexp.c:1569 #, c-format msgid "too many regular expression matches" msgstr "занадто багато відповідностей для регулярного виразу" @@ -26293,18 +27498,18 @@ msgstr "ім'я \"%s\" мають декілька функцій" msgid "more than one operator named %s" msgstr "ім'я %s мають декілька операторів" -#: utils/adt/regproc.c:670 gram.y:8992 +#: utils/adt/regproc.c:670 gram.y:9100 #, c-format msgid "missing argument" msgstr "пропущено аргумент" -#: utils/adt/regproc.c:671 gram.y:8993 +#: utils/adt/regproc.c:671 gram.y:9101 #, c-format msgid "Use NONE to denote the missing argument of a unary operator." msgstr "Щоб позначити пропущений аргумент унарного оператору, використайте NONE." -#: utils/adt/regproc.c:675 utils/adt/regproc.c:2029 utils/adt/ruleutils.c:10498 -#: utils/adt/ruleutils.c:10711 +#: utils/adt/regproc.c:675 utils/adt/regproc.c:2029 utils/adt/ruleutils.c:10836 +#: utils/adt/ruleutils.c:11049 #, c-format msgid "too many arguments" msgstr "занадто багато аргументів" @@ -26315,7 +27520,7 @@ msgid "Provide two argument types for operator." msgstr "Надайте для оператора два типи аргументів." #: utils/adt/regproc.c:1564 utils/adt/regproc.c:1681 utils/adt/regproc.c:1810 -#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3413 utils/adt/varlena.c:3418 +#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3492 utils/adt/varlena.c:3497 #, c-format msgid "invalid name syntax" msgstr "неприпустимий синтаксис в імені" @@ -26340,83 +27545,98 @@ msgstr "очікувалось ім'я типу" msgid "improper type name" msgstr "неправильне ім'я типу" -#: utils/adt/ri_triggers.c:303 utils/adt/ri_triggers.c:1616 -#: utils/adt/ri_triggers.c:2601 +#: utils/adt/ri_triggers.c:314 utils/adt/ri_triggers.c:1775 +#: utils/adt/ri_triggers.c:2774 #, c-format msgid "insert or update on table \"%s\" violates foreign key constraint \"%s\"" msgstr "insert або update в таблиці \"%s\" порушує обмеження зовнішнього ключа \"%s\"" -#: utils/adt/ri_triggers.c:306 utils/adt/ri_triggers.c:1619 +#: utils/adt/ri_triggers.c:317 utils/adt/ri_triggers.c:1778 #, c-format msgid "MATCH FULL does not allow mixing of null and nonnull key values." msgstr "MATCH FULL не дозволяє змішувати в значенні ключа null і nonnull." -#: utils/adt/ri_triggers.c:2036 +#: utils/adt/ri_triggers.c:2192 #, c-format msgid "function \"%s\" must be fired for INSERT" msgstr "функція \"%s\" повинна запускатись для INSERT" -#: utils/adt/ri_triggers.c:2042 +#: utils/adt/ri_triggers.c:2198 #, c-format msgid "function \"%s\" must be fired for UPDATE" msgstr "функція \"%s\" повинна запускатись для UPDATE" -#: utils/adt/ri_triggers.c:2048 +#: utils/adt/ri_triggers.c:2204 #, c-format msgid "function \"%s\" must be fired for DELETE" msgstr "функція \"%s\" повинна запускатись для DELETE" -#: utils/adt/ri_triggers.c:2071 +#: utils/adt/ri_triggers.c:2227 #, c-format msgid "no pg_constraint entry for trigger \"%s\" on table \"%s\"" msgstr "для тригеру \"%s\" таблиці \"%s\" немає введення pg_constraint" -#: utils/adt/ri_triggers.c:2073 +#: utils/adt/ri_triggers.c:2229 #, c-format 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:2103 gram.y:4340 +#: utils/adt/ri_triggers.c:2259 gram.y:4454 #, c-format msgid "MATCH PARTIAL not yet implemented" msgstr "Вираз MATCH PARTIAL все ще не реалізований" -#: utils/adt/ri_triggers.c:2426 +#: utils/adt/ri_triggers.c:2599 #, c-format msgid "referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave unexpected result" msgstr "неочікуваний результат запиту цілісності зв’язків до \"%s\" з обмеження \"%s\" таблиці \"%s\"" -#: utils/adt/ri_triggers.c:2430 +#: utils/adt/ri_triggers.c:2603 #, c-format msgid "This is most likely due to a rule having rewritten the query." msgstr "Скоріше за все, це викликано правилом, яке переписало запит." -#: utils/adt/ri_triggers.c:2591 +#: utils/adt/ri_triggers.c:2764 #, c-format msgid "removing partition \"%s\" violates foreign key constraint \"%s\"" msgstr "видалення секції \"%s\" порушує обмеження зовнішнього ключа \"%s" -#: utils/adt/ri_triggers.c:2594 utils/adt/ri_triggers.c:2619 +#: utils/adt/ri_triggers.c:2767 utils/adt/ri_triggers.c:2806 #, c-format msgid "Key (%s)=(%s) is still referenced from table \"%s\"." msgstr "На ключ (%s)=(%s) все ще є посилання в таблиці \"%s\"." -#: utils/adt/ri_triggers.c:2605 +#: utils/adt/ri_triggers.c:2778 #, c-format msgid "Key (%s)=(%s) is not present in table \"%s\"." msgstr "Ключ (%s)=(%s) не присутній в таблиці \"%s\"." -#: utils/adt/ri_triggers.c:2608 +#: utils/adt/ri_triggers.c:2781 #, c-format msgid "Key is not present in table \"%s\"." msgstr "Ключ не присутній в таблиці \"%s\"." -#: utils/adt/ri_triggers.c:2614 +#: utils/adt/ri_triggers.c:2787 +#, c-format +msgid "update or delete on table \"%s\" violates RESTRICT setting of foreign key constraint \"%s\" on table \"%s\"" +msgstr "оновлення або видалення в таблиці \"%s\" порушує налаштування RESTRICT зовнішнього ключа \"%s\" в таблиці \"%s\"" + +#: utils/adt/ri_triggers.c:2792 +#, c-format +msgid "Key (%s)=(%s) is referenced from table \"%s\"." +msgstr "Ключ (%s)=(%s) посилається з таблиці \"%s\"." + +#: utils/adt/ri_triggers.c:2795 +#, c-format +msgid "Key is referenced from table \"%s\"." +msgstr "Ключ посилається з таблиці \"%s\"." + +#: utils/adt/ri_triggers.c:2801 #, c-format msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\"" msgstr "update або delete в таблиці \"%s\" порушує обмеження зовнішнього ключа \"%s\" таблиці \"%s\"" -#: utils/adt/ri_triggers.c:2622 +#: utils/adt/ri_triggers.c:2809 #, c-format msgid "Key is still referenced from table \"%s\"." msgstr "На ключ все ще є посилання в таблиці \"%s\"." @@ -26467,146 +27687,175 @@ msgstr "двійкові дані мають тип %u (%s) замість оч msgid "improper binary format in record column %d" msgstr "неправильний двійковий формат у стовпці запису %d" -#: utils/adt/rowtypes.c:949 utils/adt/rowtypes.c:1195 utils/adt/rowtypes.c:1453 -#: utils/adt/rowtypes.c:1699 +#: utils/adt/rowtypes.c:949 utils/adt/rowtypes.c:1195 utils/adt/rowtypes.c:1471 +#: utils/adt/rowtypes.c:1717 #, c-format msgid "cannot compare dissimilar column types %s and %s at record column %d" msgstr "не можна порівнювати неподібні типи стовпців %s і %s, стовпець запису %d" #: utils/adt/rowtypes.c:1040 utils/adt/rowtypes.c:1265 -#: utils/adt/rowtypes.c:1550 utils/adt/rowtypes.c:1735 +#: utils/adt/rowtypes.c:1568 utils/adt/rowtypes.c:1753 #, c-format msgid "cannot compare record types with different numbers of columns" msgstr "не можна порівнювати типи записів з різної кількістю стовпців" -#: utils/adt/ruleutils.c:2689 +#: utils/adt/ruleutils.c:2740 #, c-format msgid "input is a query, not an expression" msgstr "вхідне значення є запитом, а не виразом" -#: utils/adt/ruleutils.c:2701 +#: utils/adt/ruleutils.c:2752 #, c-format msgid "expression contains variables of more than one relation" msgstr "вираз містить змінні більше одного відношення" -#: utils/adt/ruleutils.c:2708 +#: utils/adt/ruleutils.c:2759 #, c-format msgid "expression contains variables" msgstr "вираз містить змінні" -#: utils/adt/ruleutils.c:5241 +#: utils/adt/ruleutils.c:5433 #, c-format msgid "rule \"%s\" has unsupported event type %d" msgstr "правило \"%s\" має непідтримуваний тип подій %d" -#: utils/adt/timestamp.c:128 +#: utils/adt/tid.c:317 +#, c-format +msgid "cannot look at latest visible tid for relation \"%s.%s\"" +msgstr "не можна переглянути останній видимий tid для відношення \"%s.%s\"" + +#: utils/adt/tid.c:356 +#, c-format +msgid "ctid isn't of type TID" +msgstr "ctid не є типом TID" + +#: utils/adt/tid.c:364 +#, c-format +msgid "currtid cannot handle views with no CTID" +msgstr "currtid не може обробляти подання без CTID" + +#: utils/adt/tid.c:369 +#, c-format +msgid "the view has no rules" +msgstr "подання не має правил" + +#: utils/adt/tid.c:381 +#, c-format +msgid "only one select rule is allowed in views" +msgstr "в поданнях дозволено тільки одне правило select" + +#: utils/adt/timestamp.c:130 #, c-format msgid "TIMESTAMP(%d)%s precision must not be negative" msgstr "TIMESTAMP(%d)%s точність не повинна бути від'ємною" -#: utils/adt/timestamp.c:134 +#: utils/adt/timestamp.c:136 #, c-format msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d" msgstr "TIMESTAMP(%d)%s точність зменшена до дозволеного максимуму, %d" -#: utils/adt/timestamp.c:394 +#: utils/adt/timestamp.c:204 utils/adt/timestamp.c:457 +#, c-format +msgid "timestamp out of range: \"%s\"" +msgstr "позначка часу поза діапазоном: \"%s\"" + +#: utils/adt/timestamp.c:396 #, c-format msgid "timestamp(%d) precision must be between %d and %d" msgstr "точність позначки часу (%d) повинна бути між %d і %d" -#: utils/adt/timestamp.c:512 +#: utils/adt/timestamp.c:514 #, c-format msgid "Numeric time zones must have \"-\" or \"+\" as first character." msgstr "Числові часові пояси повинні мати \"-\" або \"+\" в якості першого символу." -#: utils/adt/timestamp.c:524 +#: utils/adt/timestamp.c:526 #, c-format msgid "numeric time zone \"%s\" out of range" msgstr "числовий часовий пояс \"%s\" поза діапазоном" -#: utils/adt/timestamp.c:625 utils/adt/timestamp.c:635 -#: utils/adt/timestamp.c:643 +#: utils/adt/timestamp.c:626 utils/adt/timestamp.c:634 #, c-format msgid "timestamp out of range: %d-%02d-%02d %d:%02d:%02g" msgstr "позначка часу поза діапазоном: %d-%02d-%02d %d:%02d:%02g" -#: utils/adt/timestamp.c:744 +#: utils/adt/timestamp.c:735 #, c-format msgid "timestamp cannot be NaN" msgstr "позначка часу не може бути NaN" -#: utils/adt/timestamp.c:762 utils/adt/timestamp.c:774 +#: utils/adt/timestamp.c:753 utils/adt/timestamp.c:765 #, c-format msgid "timestamp out of range: \"%g\"" msgstr "позначка часу поза діапазоном: \"%g\"" -#: utils/adt/timestamp.c:957 utils/adt/timestamp.c:1516 -#: utils/adt/timestamp.c:1526 utils/adt/timestamp.c:1587 -#: utils/adt/timestamp.c:2807 utils/adt/timestamp.c:2816 -#: utils/adt/timestamp.c:2831 utils/adt/timestamp.c:2905 -#: utils/adt/timestamp.c:2922 utils/adt/timestamp.c:2979 -#: utils/adt/timestamp.c:3022 utils/adt/timestamp.c:3400 -#: utils/adt/timestamp.c:3458 utils/adt/timestamp.c:3481 -#: utils/adt/timestamp.c:3490 utils/adt/timestamp.c:3514 -#: utils/adt/timestamp.c:3537 utils/adt/timestamp.c:3546 -#: utils/adt/timestamp.c:3681 utils/adt/timestamp.c:3782 -#: utils/adt/timestamp.c:4189 utils/adt/timestamp.c:4226 -#: utils/adt/timestamp.c:4274 utils/adt/timestamp.c:4283 -#: utils/adt/timestamp.c:4375 utils/adt/timestamp.c:4422 -#: utils/adt/timestamp.c:4431 utils/adt/timestamp.c:4527 -#: utils/adt/timestamp.c:4580 utils/adt/timestamp.c:4590 -#: utils/adt/timestamp.c:4785 utils/adt/timestamp.c:4795 -#: utils/adt/timestamp.c:5097 +#: utils/adt/timestamp.c:948 utils/adt/timestamp.c:1507 +#: utils/adt/timestamp.c:1517 utils/adt/timestamp.c:1578 +#: utils/adt/timestamp.c:2866 utils/adt/timestamp.c:2875 +#: utils/adt/timestamp.c:2890 utils/adt/timestamp.c:2964 +#: utils/adt/timestamp.c:2981 utils/adt/timestamp.c:3038 +#: utils/adt/timestamp.c:3081 utils/adt/timestamp.c:3459 +#: utils/adt/timestamp.c:3517 utils/adt/timestamp.c:3540 +#: utils/adt/timestamp.c:3549 utils/adt/timestamp.c:3573 +#: utils/adt/timestamp.c:3596 utils/adt/timestamp.c:3605 +#: utils/adt/timestamp.c:3740 utils/adt/timestamp.c:3841 +#: utils/adt/timestamp.c:4248 utils/adt/timestamp.c:4285 +#: utils/adt/timestamp.c:4333 utils/adt/timestamp.c:4342 +#: utils/adt/timestamp.c:4434 utils/adt/timestamp.c:4481 +#: utils/adt/timestamp.c:4490 utils/adt/timestamp.c:4586 +#: utils/adt/timestamp.c:4639 utils/adt/timestamp.c:4649 +#: utils/adt/timestamp.c:4874 utils/adt/timestamp.c:4884 +#: utils/adt/timestamp.c:5239 #, c-format msgid "interval out of range" msgstr "інтервал поза діапазоном" -#: utils/adt/timestamp.c:1094 utils/adt/timestamp.c:1127 +#: utils/adt/timestamp.c:1085 utils/adt/timestamp.c:1118 #, c-format msgid "invalid INTERVAL type modifier" msgstr "неприпустимий модифікатор типу INTERVAL" -#: utils/adt/timestamp.c:1110 +#: utils/adt/timestamp.c:1101 #, c-format msgid "INTERVAL(%d) precision must not be negative" msgstr "INTERVAL(%d) точність не повинна бути від'ємною" -#: utils/adt/timestamp.c:1116 +#: utils/adt/timestamp.c:1107 #, c-format msgid "INTERVAL(%d) precision reduced to maximum allowed, %d" msgstr "INTERVAL(%d) точність зменшена до максимально можливої, %d" -#: utils/adt/timestamp.c:1506 +#: utils/adt/timestamp.c:1497 #, c-format msgid "interval(%d) precision must be between %d and %d" msgstr "interval(%d) точність повинна бути між %d і %d" -#: utils/adt/timestamp.c:4564 utils/adt/timestamp.c:4769 +#: utils/adt/timestamp.c:4623 utils/adt/timestamp.c:4858 #, c-format msgid "origin out of range" msgstr "джерело поза діапазоном" -#: utils/adt/timestamp.c:4569 utils/adt/timestamp.c:4774 +#: utils/adt/timestamp.c:4628 utils/adt/timestamp.c:4863 #, c-format msgid "timestamps cannot be binned into infinite intervals" msgstr "мітки часу не можуть бути розбиті на нескінченні інтервали" -#: utils/adt/timestamp.c:4574 utils/adt/timestamp.c:4779 +#: utils/adt/timestamp.c:4633 utils/adt/timestamp.c:4868 #, c-format msgid "timestamps cannot be binned into intervals containing months or years" msgstr "позначки часу не можна розділяти на інтервали, що містять місяці або роки" -#: utils/adt/timestamp.c:4585 utils/adt/timestamp.c:4790 +#: utils/adt/timestamp.c:4644 utils/adt/timestamp.c:4879 #, c-format msgid "stride must be greater than zero" msgstr "крок повинен бути більше нуля" -#: utils/adt/timestamp.c:5091 +#: utils/adt/timestamp.c:5181 utils/adt/timestamp.c:5233 #, c-format msgid "Months usually have fractional weeks." msgstr "У місяців зазвичай є дробові тижні." -#: utils/adt/timestamp.c:6551 utils/adt/timestamp.c:6637 +#: utils/adt/timestamp.c:6713 utils/adt/timestamp.c:6799 #, c-format msgid "step size cannot be infinite" msgstr "розмір кроку не може бути нескінченним" @@ -26681,32 +27930,32 @@ msgstr "запит пошуку тексту ігнорується, тому, msgid "ts_rewrite query must return two tsquery columns" msgstr "запит ts_rewrite повинен повернути два стовпця типу tsquery" -#: utils/adt/tsrank.c:412 +#: utils/adt/tsrank.c:415 #, c-format msgid "array of weight must be one-dimensional" msgstr "масив значимості повинен бути одновимірним" -#: utils/adt/tsrank.c:417 +#: utils/adt/tsrank.c:420 #, c-format msgid "array of weight is too short" msgstr "масив значимості занадто малий" -#: utils/adt/tsrank.c:422 +#: utils/adt/tsrank.c:425 #, c-format msgid "array of weight must not contain nulls" msgstr "масив значимості не повинен містити null" -#: utils/adt/tsrank.c:431 utils/adt/tsrank.c:871 +#: utils/adt/tsrank.c:434 utils/adt/tsrank.c:876 #, c-format msgid "weight out of range" msgstr "значимість поза діапазоном" -#: utils/adt/tsvector.c:216 +#: utils/adt/tsvector.c:213 #, c-format msgid "word is too long (%ld bytes, max %ld bytes)" msgstr "слово занадто довге (%ld байт, при максимумі %ld)" -#: utils/adt/tsvector.c:223 +#: utils/adt/tsvector.c:220 #, c-format msgid "string is too long for tsvector (%ld bytes, max %ld bytes)" msgstr "рядок занадто довгий для tsvector (%ld байт, при максимумі %ld)" @@ -26786,7 +28035,7 @@ msgstr "немає пропущеного символу: \"%s\"" msgid "wrong position info in tsvector: \"%s\"" msgstr "неправильна інформація про позицію в tsvector: \"%s\"" -#: utils/adt/uuid.c:418 +#: utils/adt/uuid.c:535 utils/adt/uuid.c:632 #, c-format msgid "could not generate random values" msgstr "не вдалося згенерувати випадкові значення" @@ -26831,9 +28080,9 @@ msgstr "неприпустима довжина у зовнішньому ряд msgid "bit string too long for type bit varying(%d)" msgstr "рядок бітів занадто довгий для типу bit varying(%d)" -#: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:911 -#: utils/adt/varlena.c:974 utils/adt/varlena.c:1131 utils/adt/varlena.c:3055 -#: utils/adt/varlena.c:3133 +#: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:919 +#: utils/adt/varlena.c:982 utils/adt/varlena.c:1139 utils/adt/varlena.c:3113 +#: utils/adt/varlena.c:3191 #, c-format msgid "negative substring length not allowed" msgstr "від'ємна довжина підрядка не дозволена" @@ -26858,7 +28107,7 @@ msgstr "не можна використовувати (XOR) для бітови msgid "bit index %d out of valid range (0..%d)" msgstr "індекс біту %d поза припустимим діапазоном (0..%d)" -#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3337 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3395 #, c-format msgid "new bit must be 0 or 1" msgstr "новий біт повинен бути 0 або 1" @@ -26873,92 +28122,92 @@ msgstr "значення занадто довге для типу character(%d) msgid "value too long for type character varying(%d)" msgstr "значення занадто довге для типу character varying(%d)" -#: utils/adt/varchar.c:737 utils/adt/varlena.c:1520 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1602 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "не вдалося визначити, який параметр сортування використати для порівняння рядків" -#: utils/adt/varlena.c:1230 utils/adt/varlena.c:1809 +#: utils/adt/varlena.c:1875 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "недетерміновані параметри сортування не підтримуються для пошуку підрядків" -#: utils/adt/varlena.c:3221 utils/adt/varlena.c:3288 +#: utils/adt/varlena.c:3279 utils/adt/varlena.c:3346 #, c-format msgid "index %d out of valid range, 0..%d" msgstr "індекс %d поза припустимим діапазоном, 0..%d" -#: utils/adt/varlena.c:3252 utils/adt/varlena.c:3324 +#: utils/adt/varlena.c:3310 utils/adt/varlena.c:3382 #, c-format -msgid "index %lld out of valid range, 0..%lld" -msgstr "індекс %lld поза допустимим діапазоном, 0..%lld" +msgid "index % out of valid range, 0..%" +msgstr "індекс % поза допустимим діапазоном, 0..%" -#: utils/adt/varlena.c:4385 +#: utils/adt/varlena.c:4598 #, c-format msgid "field position must not be zero" msgstr "позиція поля не повинна бути нульовою" -#: utils/adt/varlena.c:5630 +#: utils/adt/varlena.c:5843 #, c-format msgid "unterminated format() type specifier" msgstr "незавершений специфікатор типу format()" -#: utils/adt/varlena.c:5631 utils/adt/varlena.c:5765 utils/adt/varlena.c:5886 +#: utils/adt/varlena.c:5844 utils/adt/varlena.c:5978 utils/adt/varlena.c:6099 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "Для представлення одного знаку \"%%\", використайте \"%%%%\"." -#: utils/adt/varlena.c:5763 utils/adt/varlena.c:5884 +#: utils/adt/varlena.c:5976 utils/adt/varlena.c:6097 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "нерозпізнаний специфікатор типу format() \"%.*s\"" -#: utils/adt/varlena.c:5776 utils/adt/varlena.c:5833 +#: utils/adt/varlena.c:5989 utils/adt/varlena.c:6046 #, c-format msgid "too few arguments for format()" msgstr "занадто мало аргументів для format()" -#: utils/adt/varlena.c:5929 utils/adt/varlena.c:6111 +#: utils/adt/varlena.c:6142 utils/adt/varlena.c:6324 #, c-format msgid "number is out of range" msgstr "число поза діапазоном" -#: utils/adt/varlena.c:5992 utils/adt/varlena.c:6020 +#: utils/adt/varlena.c:6205 utils/adt/varlena.c:6233 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "формат посилається на аргумент 0, але аргументи нумеруются з 1" -#: utils/adt/varlena.c:6013 +#: utils/adt/varlena.c:6226 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "вказівка аргументу ширини повинно закінчуватися \"$\"" -#: utils/adt/varlena.c:6058 +#: utils/adt/varlena.c:6271 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "значення null не можна форматувати у вигляді SQL-ідентифікатору" -#: utils/adt/varlena.c:6266 +#: utils/adt/varlena.c:6479 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "Нормалізація Unicode може виконуватись лише тоді, коли кодування серверу - UTF8" -#: utils/adt/varlena.c:6279 +#: utils/adt/varlena.c:6492 #, c-format msgid "invalid normalization form: %s" msgstr "неприпустима форма нормалізації: %s" -#: utils/adt/varlena.c:6324 +#: utils/adt/varlena.c:6537 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "Категоризація в юні коді може бути виконана, тільки якщо кодування сервера - UTF8" -#: utils/adt/varlena.c:6541 utils/adt/varlena.c:6576 utils/adt/varlena.c:6611 +#: utils/adt/varlena.c:6754 utils/adt/varlena.c:6789 utils/adt/varlena.c:6824 #, c-format msgid "invalid Unicode code point: %04X" msgstr "неприпустима точка коду Unicode: %04X" -#: utils/adt/varlena.c:6641 +#: utils/adt/varlena.c:6854 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "Спеціальні коди Unicode повинні бути \\XXXX, \\+XXXXXX, \\uXXXXXX, або \\UXXXXXX." @@ -26973,12 +28222,12 @@ msgstr "аргумент ntile повинен бути більше нуля" msgid "argument of nth_value must be greater than zero" msgstr "аргумент nth_value повинен бути більше нуля" -#: utils/adt/xid8funcs.c:124 +#: utils/adt/xid8funcs.c:120 #, c-format -msgid "transaction ID %llu is in the future" -msgstr "ідентифікатор транзакції %llu знаходиться в майбутньому" +msgid "transaction ID % is in the future" +msgstr "ID транзакції % знаходиться в майбутньому" -#: utils/adt/xid8funcs.c:553 +#: utils/adt/xid8funcs.c:522 #, c-format msgid "invalid external pg_snapshot data" msgstr "неприпустимі зовнішні дані pg_snapshot" @@ -26993,7 +28242,7 @@ msgstr "XML-функції не підтримуються" msgid "This functionality requires the server to be built with libxml support." msgstr "Ця функціональність потребує, щоб сервер був побудований з підтримкою libxml." -#: utils/adt/xml.c:258 utils/mb/mbutils.c:627 +#: utils/adt/xml.c:258 utils/mb/mbutils.c:628 #, c-format msgid "invalid encoding name \"%s\"" msgstr "неприпустиме ім’я кодування \"%s\"" @@ -27008,157 +28257,162 @@ msgstr "неприпустимий XML-коментар" msgid "not an XML document" msgstr "не XML-документ" -#: utils/adt/xml.c:1008 utils/adt/xml.c:1031 +#: utils/adt/xml.c:1020 utils/adt/xml.c:1043 #, c-format msgid "invalid XML processing instruction" msgstr "неприпустима XML-команда обробки" -#: utils/adt/xml.c:1009 +#: utils/adt/xml.c:1021 #, c-format msgid "XML processing instruction target name cannot be \"%s\"." msgstr "Метою XML-команди обробки не може бути \"%s\"." -#: utils/adt/xml.c:1032 +#: utils/adt/xml.c:1044 #, c-format msgid "XML processing instruction cannot contain \"?>\"." msgstr "XML-команда обробки не може містити \"?>\"." -#: utils/adt/xml.c:1111 +#: utils/adt/xml.c:1123 #, c-format msgid "xmlvalidate is not implemented" msgstr "функція xmlvalidate не реалізована" -#: utils/adt/xml.c:1167 +#: utils/adt/xml.c:1179 #, c-format msgid "could not initialize XML library" msgstr "не вдалося ініціалізувати бібліотеку XML" -#: utils/adt/xml.c:1168 +#: utils/adt/xml.c:1180 #, c-format msgid "libxml2 has incompatible char type: sizeof(char)=%zu, sizeof(xmlChar)=%zu." msgstr "libxml2 має несумісний тип char: sizeof(char)=%zu, sizeof(xmlChar)=%zu." -#: utils/adt/xml.c:1254 +#: utils/adt/xml.c:1266 #, c-format msgid "could not set up XML error handler" msgstr "не вдалося встановити обробник XML-помилок" -#: utils/adt/xml.c:1255 +#: utils/adt/xml.c:1267 #, 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 несумісна з файлами-заголовками libxml2, з котрими був зібраний PostgreSQL." -#: utils/adt/xml.c:2281 +#: utils/adt/xml.c:2283 msgid "Invalid character value." msgstr "Неприпустиме значення символу." -#: utils/adt/xml.c:2284 +#: utils/adt/xml.c:2286 msgid "Space required." msgstr "Потребується пробіл." -#: utils/adt/xml.c:2287 +#: utils/adt/xml.c:2289 msgid "standalone accepts only 'yes' or 'no'." msgstr "значеннями атрибуту standalone можуть бути лише 'yes' або 'no'." -#: utils/adt/xml.c:2290 +#: utils/adt/xml.c:2292 msgid "Malformed declaration: missing version." msgstr "Неправильне оголошення: пропущена версія." -#: utils/adt/xml.c:2293 +#: utils/adt/xml.c:2295 msgid "Missing encoding in text declaration." msgstr "В оголошенні пропущене кодування." -#: utils/adt/xml.c:2296 +#: utils/adt/xml.c:2298 msgid "Parsing XML declaration: '?>' expected." msgstr "Аналіз XML-оголошення: '?>' очікується." -#: utils/adt/xml.c:2299 +#: utils/adt/xml.c:2301 #, c-format msgid "Unrecognized libxml error code: %d." msgstr "Нерозпізнаний код помилки libxml: %d." -#: utils/adt/xml.c:2553 +#: utils/adt/xml.c:2555 #, c-format msgid "XML does not support infinite date values." msgstr "XML не підтримує безкінечні значення в датах." -#: utils/adt/xml.c:2575 utils/adt/xml.c:2602 +#: utils/adt/xml.c:2577 utils/adt/xml.c:2604 #, c-format msgid "XML does not support infinite timestamp values." msgstr "XML не підтримує безкінченні значення в позначках часу." -#: utils/adt/xml.c:3018 +#: utils/adt/xml.c:3020 #, c-format msgid "invalid query" msgstr "неприпустимий запит" -#: utils/adt/xml.c:3110 +#: utils/adt/xml.c:3112 #, c-format msgid "portal \"%s\" does not return tuples" msgstr "portal \"%s\" не повертає кортежі" -#: utils/adt/xml.c:4362 +#: utils/adt/xml.c:4364 #, c-format msgid "invalid array for XML namespace mapping" msgstr "неприпустимий масив з зіставленням простіру імен XML" -#: utils/adt/xml.c:4363 +#: utils/adt/xml.c:4365 #, c-format msgid "The array must be two-dimensional with length of the second axis equal to 2." msgstr "Масив повинен бути двовимірним і містити 2 елемента по другій вісі." -#: utils/adt/xml.c:4387 +#: utils/adt/xml.c:4389 #, c-format msgid "empty XPath expression" msgstr "пустий вираз XPath" -#: utils/adt/xml.c:4439 +#: utils/adt/xml.c:4441 #, c-format msgid "neither namespace name nor URI may be null" msgstr "ні ім'я простіру імен ні URI не можуть бути null" -#: utils/adt/xml.c:4446 +#: utils/adt/xml.c:4448 #, c-format msgid "could not register XML namespace with name \"%s\" and URI \"%s\"" msgstr "не вдалося зареєструвати простір імен XML з ім'ям \"%s\" і URI \"%s\"" -#: utils/adt/xml.c:4795 +#: utils/adt/xml.c:4797 #, c-format msgid "DEFAULT namespace is not supported" msgstr "Простір імен DEFAULT не підтримується" -#: utils/adt/xml.c:4824 +#: utils/adt/xml.c:4826 #, c-format msgid "row path filter must not be empty string" msgstr "шлях фільтруючих рядків не повинен бути пустим" -#: utils/adt/xml.c:4858 +#: utils/adt/xml.c:4860 #, c-format msgid "column path filter must not be empty string" msgstr "шлях фільтруючого стовпця не повинен бути пустим" -#: utils/adt/xml.c:5005 +#: utils/adt/xml.c:5007 #, c-format msgid "more than one value returned by column XPath expression" msgstr "вираз XPath, який відбирає стовпець, повернув більше одного значення" -#: utils/cache/lsyscache.c:1017 +#: utils/cache/funccache.c:364 +#, c-format +msgid "could not determine actual argument type for polymorphic function \"%s\"" +msgstr "не вдалося визначити фактичний тип аргумента поліморфної функції \"%s\"" + +#: utils/cache/lsyscache.c:1109 #, c-format msgid "cast from type %s to type %s does not exist" msgstr "приведення від типу %s до типу %s не існує" -#: utils/cache/lsyscache.c:2887 utils/cache/lsyscache.c:2920 -#: utils/cache/lsyscache.c:2953 utils/cache/lsyscache.c:2986 +#: utils/cache/lsyscache.c:3027 utils/cache/lsyscache.c:3060 +#: utils/cache/lsyscache.c:3093 utils/cache/lsyscache.c:3126 #, c-format msgid "type %s is only a shell" msgstr "тип %s лише оболонка" -#: utils/cache/lsyscache.c:2892 +#: utils/cache/lsyscache.c:3032 #, c-format msgid "no input function available for type %s" msgstr "для типу %s немає доступної функції введення" -#: utils/cache/lsyscache.c:2925 +#: utils/cache/lsyscache.c:3065 #, c-format msgid "no output function available for type %s" msgstr "для типу %s немає доступної функції виводу" @@ -27168,32 +28422,27 @@ msgstr "для типу %s немає доступної функції виво msgid "operator class \"%s\" of access method %s is missing support function %d for type %s" msgstr "в класі операторів \"%s\" методу доступу %s пропущено опорну функцію %d для типу %s" -#: utils/cache/plancache.c:747 -#, c-format -msgid "cached plan must not change result type" -msgstr "в кешованому плані не повинен змінюватись тип результату" - -#: utils/cache/relcache.c:3800 +#: utils/cache/relcache.c:3805 #, c-format msgid "heap relfilenumber value not set when in binary upgrade mode" msgstr "значення relfilenumber не встановлене у режимі двійкового оновлення" -#: utils/cache/relcache.c:3808 +#: utils/cache/relcache.c:3813 #, c-format msgid "unexpected request for new relfilenumber in binary upgrade mode" msgstr "неочікуваний запит на новий relfilenumber в режимі двійкового оновлення" -#: utils/cache/relcache.c:6536 +#: utils/cache/relcache.c:6633 #, c-format msgid "could not create relation-cache initialization file \"%s\": %m" msgstr "не вдалося створити файл ініціалізації для кешу відношень \"%s\": %m" -#: utils/cache/relcache.c:6538 +#: utils/cache/relcache.c:6635 #, c-format msgid "Continuing anyway, but there's something wrong." msgstr "Продовжуємо усе одно, але щось не так." -#: utils/cache/relcache.c:6868 +#: utils/cache/relcache.c:6965 #, c-format msgid "could not remove cache file \"%s\": %m" msgstr "не вдалося видалити файл кешу \"%s\": %m" @@ -27213,7 +28462,7 @@ msgstr "файл зіставлень відношень \"%s\" містить msgid "relation mapping file \"%s\" contains incorrect checksum" msgstr "файл зіставлень відношень \"%s\" містить неправильну контрольну суму" -#: utils/cache/typcache.c:1812 utils/fmgr/funcapi.c:574 +#: utils/cache/typcache.c:1901 utils/fmgr/funcapi.c:574 #, c-format msgid "record type has not been registered" msgstr "тип запису не зареєстрований" @@ -27228,193 +28477,180 @@ msgstr "TRAP: ExceptionalCondition: невірні аргументи в PID %d\ msgid "TRAP: failed Assert(\"%s\"), File: \"%s\", Line: %d, PID: %d\n" msgstr "TRAP: помилка Assert(\"%s\"), файл: \"%s\", рядок: %d, PID: %d\n" -#: utils/error/elog.c:415 +#: utils/error/elog.c:412 #, c-format msgid "error occurred before error message processing is available\n" msgstr "сталася помилка перед тим, як обробка повідомлення про помилку була доступна\n" -#: utils/error/elog.c:2134 +#: utils/error/elog.c:2142 #, c-format msgid "could not reopen file \"%s\" as stderr: %m" msgstr "не вдалося повторно відкрити файл \"%s\" як stderr: %m" -#: utils/error/elog.c:2147 +#: utils/error/elog.c:2155 #, c-format msgid "could not reopen file \"%s\" as stdout: %m" msgstr "не вдалося повторно відкрити файл \"%s\" як stdout: %m" -#: utils/error/elog.c:2183 +#: utils/error/elog.c:2191 #, c-format -msgid "Invalid character" -msgstr "Неприпустимий символ" +msgid "Invalid character." +msgstr "Недійсний символ." -#: utils/error/elog.c:2889 utils/error/elog.c:2916 utils/error/elog.c:2932 +#: utils/error/elog.c:2901 utils/error/elog.c:2928 utils/error/elog.c:2944 msgid "[unknown]" msgstr "[unknown]" -#: utils/error/elog.c:3202 utils/error/elog.c:3526 utils/error/elog.c:3633 +#: utils/error/elog.c:3246 utils/error/elog.c:3570 utils/error/elog.c:3677 msgid "missing error text" msgstr "пропущено текст помилки" -#: utils/error/elog.c:3205 utils/error/elog.c:3208 +#: utils/error/elog.c:3249 utils/error/elog.c:3252 #, c-format msgid " at character %d" msgstr " символ %d" -#: utils/error/elog.c:3218 utils/error/elog.c:3225 +#: utils/error/elog.c:3262 utils/error/elog.c:3269 msgid "DETAIL: " msgstr "ВІДОМОСТІ: " -#: utils/error/elog.c:3232 +#: utils/error/elog.c:3276 msgid "HINT: " msgstr "УКАЗІВКА: " -#: utils/error/elog.c:3239 +#: utils/error/elog.c:3283 msgid "QUERY: " msgstr "ЗАПИТ: " -#: utils/error/elog.c:3246 +#: utils/error/elog.c:3290 msgid "CONTEXT: " msgstr "КОНТЕКСТ: " -#: utils/error/elog.c:3256 +#: utils/error/elog.c:3300 #, c-format msgid "LOCATION: %s, %s:%d\n" msgstr "РОЗТАШУВАННЯ: %s, %s:%d\n" -#: utils/error/elog.c:3263 +#: utils/error/elog.c:3307 #, c-format msgid "LOCATION: %s:%d\n" msgstr "РОЗТАШУВАННЯ: %s:%d\n" -#: utils/error/elog.c:3270 +#: utils/error/elog.c:3314 msgid "BACKTRACE: " msgstr "ВІДСТЕЖУВАТИ: " -#: utils/error/elog.c:3282 +#: utils/error/elog.c:3326 msgid "STATEMENT: " msgstr "ІНСТРУКЦІЯ: " -#: utils/error/elog.c:3678 +#: utils/error/elog.c:3722 msgid "DEBUG" msgstr "НАЛАГОДЖЕННЯ" -#: utils/error/elog.c:3682 +#: utils/error/elog.c:3726 msgid "LOG" msgstr "ЗАПИСУВАННЯ" -#: utils/error/elog.c:3685 +#: utils/error/elog.c:3729 msgid "INFO" msgstr "ІНФОРМАЦІЯ" -#: utils/error/elog.c:3688 +#: utils/error/elog.c:3732 msgid "NOTICE" msgstr "ПОВІДОМЛЕННЯ" -#: utils/error/elog.c:3692 +#: utils/error/elog.c:3736 msgid "WARNING" msgstr "ПОПЕРЕДЖЕННЯ" -#: utils/error/elog.c:3695 +#: utils/error/elog.c:3739 msgid "ERROR" msgstr "ПОМИЛКА" -#: utils/error/elog.c:3698 +#: utils/error/elog.c:3742 msgid "FATAL" msgstr "ФАТАЛЬНО" -#: utils/error/elog.c:3701 +#: utils/error/elog.c:3745 msgid "PANIC" msgstr "ПАНІКА" -#: utils/fmgr/dfmgr.c:128 +#: utils/fmgr/dfmgr.c:133 #, c-format msgid "could not find function \"%s\" in file \"%s\"" msgstr "не вдалося знайти функцію \"%s\" у файлі \"%s\"" -#: utils/fmgr/dfmgr.c:247 +#: utils/fmgr/dfmgr.c:252 #, c-format msgid "could not load library \"%s\": %s" msgstr "не вдалося завантажити бібліотеку \"%s\": %s" -#: utils/fmgr/dfmgr.c:279 +#: utils/fmgr/dfmgr.c:289 #, c-format msgid "incompatible library \"%s\": missing magic block" msgstr "несумісная бібліотека \"%s\": пропущено магічний блок" -#: utils/fmgr/dfmgr.c:281 +#: utils/fmgr/dfmgr.c:291 #, c-format msgid "Extension libraries are required to use the PG_MODULE_MAGIC macro." msgstr "Бібліотеки розширення потребують використання макросу PG_MODULE_MAGIC." -#: utils/fmgr/dfmgr.c:327 +#: utils/fmgr/dfmgr.c:337 #, c-format msgid "incompatible library \"%s\": version mismatch" msgstr "несумісна бібліотека \"%s\": невідповідність версій" -#: utils/fmgr/dfmgr.c:329 +#: utils/fmgr/dfmgr.c:339 #, c-format msgid "Server is version %d, library is version %s." msgstr "Версія серверу %d, версія бібліотеки %s." -#: utils/fmgr/dfmgr.c:341 +#: utils/fmgr/dfmgr.c:351 #, c-format msgid "incompatible library \"%s\": ABI mismatch" msgstr "несумісна бібліотека \"%s\": невідповідність ABI" -#: utils/fmgr/dfmgr.c:343 +#: utils/fmgr/dfmgr.c:353 #, c-format msgid "Server has ABI \"%s\", library has \"%s\"." msgstr "Сервер має ABI \"%s\", бібліотека має \"%s\"." -#: utils/fmgr/dfmgr.c:361 -#, c-format -msgid "Server has FUNC_MAX_ARGS = %d, library has %d." -msgstr "Сервер має FUNC_MAX_ARGS = %d, бібліотека має %d." - -#: utils/fmgr/dfmgr.c:370 -#, c-format -msgid "Server has INDEX_MAX_KEYS = %d, library has %d." -msgstr "Сервер має INDEX_MAX_KEYS = %d, бібліотека має %d." - -#: utils/fmgr/dfmgr.c:379 +#. translator: %s is a variable name and %d its values +#: utils/fmgr/dfmgr.c:372 utils/fmgr/dfmgr.c:382 utils/fmgr/dfmgr.c:392 #, c-format -msgid "Server has NAMEDATALEN = %d, library has %d." -msgstr "Сервер має NAMEDATALEN = %d, бібліотека має %d." +msgid "Server has %s = %d, library has %d." +msgstr "Сервер має %s = %d, бібліотека має %d." -#: utils/fmgr/dfmgr.c:388 +#. translator: %s is a variable name and %d its values +#: utils/fmgr/dfmgr.c:402 #, c-format -msgid "Server has FLOAT8PASSBYVAL = %s, library has %s." -msgstr "Сервер має FLOAT8PASSBYVAL = %s, бібліотека має %s." +msgid "Server has %s = %s, library has %s." +msgstr "Сервер має %s = %s, бібліотека має %s." -#: utils/fmgr/dfmgr.c:395 +#: utils/fmgr/dfmgr.c:409 msgid "Magic block has unexpected length or padding difference." msgstr "Магічний блок має неочікувану довжину або інше заповнення." -#: utils/fmgr/dfmgr.c:398 +#: utils/fmgr/dfmgr.c:412 #, c-format msgid "incompatible library \"%s\": magic block mismatch" msgstr "несумісна бібліотка \"%s\": невідповідність магічного блоку" -#: utils/fmgr/dfmgr.c:475 +#: utils/fmgr/dfmgr.c:527 #, c-format msgid "access to library \"%s\" is not allowed" msgstr "доступ до бібліотеки \"%s\" не дозволений" -#: utils/fmgr/dfmgr.c:501 +#: utils/fmgr/dfmgr.c:554 #, c-format -msgid "invalid macro name in dynamic library path: %s" -msgstr "неприпустиме ім'я макросу в шляху динамічної бібліотеки: %s" +msgid "invalid macro name in path: %s" +msgstr "недійсне ім'я макросу в шляху: %s" -#: utils/fmgr/dfmgr.c:541 +#: utils/fmgr/dfmgr.c:606 #, c-format -msgid "zero-length component in parameter \"dynamic_library_path\"" -msgstr "параметр \"dynamic_library_path\" містить компонент нульової довжини" - -#: utils/fmgr/dfmgr.c:560 -#, c-format -msgid "component in parameter \"dynamic_library_path\" is not an absolute path" -msgstr "параметр \"dynamic_library_path\" містить компонент, який не є абсолютним шляхом" +msgid "zero-length component in parameter \"%s\"" +msgstr "компонент нульової довжини в параметрі \"%s\"" #: utils/fmgr/fmgr.c:236 #, c-format @@ -27471,345 +28707,427 @@ msgstr "жодного псевдоніму для стовпця не було msgid "could not determine row description for function returning record" msgstr "не вдалося визначити опис рядка для функції, що повертає запис" -#: utils/init/miscinit.c:352 +#: utils/init/miscinit.c:265 +msgid "unknown process type" +msgstr "невідомий тип процесу" + +#: utils/init/miscinit.c:270 +msgid "not initialized" +msgstr "не ініціалізовано" + +#: utils/init/miscinit.c:273 +msgid "archiver" +msgstr "архіватор" + +#: utils/init/miscinit.c:276 +msgid "autovacuum launcher" +msgstr "запускач автоочищення" + +#: utils/init/miscinit.c:279 +msgid "autovacuum worker" +msgstr "працівник автоочищення" + +#: utils/init/miscinit.c:282 +msgid "client backend" +msgstr "клієнтський бекенд" + +#: utils/init/miscinit.c:285 +msgid "dead-end client backend" +msgstr "тупиковий клієнтський бекенд" + +#: utils/init/miscinit.c:288 +msgid "background worker" +msgstr "фоновий працівник" + +#: utils/init/miscinit.c:291 +msgid "background writer" +msgstr "фоновий записувач" + +#: utils/init/miscinit.c:294 +msgid "checkpointer" +msgstr "контрольник" + +#: utils/init/miscinit.c:300 +msgid "logger" +msgstr "журналювання" + +#: utils/init/miscinit.c:303 +msgid "slotsync worker" +msgstr "працівник синхронізації слотів" + +#: utils/init/miscinit.c:306 +msgid "standalone backend" +msgstr "автономний бекенд" + +#: utils/init/miscinit.c:309 +msgid "startup" +msgstr "запуск" + +#: utils/init/miscinit.c:312 +msgid "walreceiver" +msgstr "WAL-отримувач" + +#: utils/init/miscinit.c:315 +msgid "walsender" +msgstr "WAL-відправник" + +#: utils/init/miscinit.c:318 +msgid "walsummarizer" +msgstr "WAL-підсумовувач" + +#: utils/init/miscinit.c:321 +msgid "walwriter" +msgstr "WAL-записувач" + +#: utils/init/miscinit.c:358 #, c-format msgid "data directory \"%s\" does not exist" msgstr "каталог даних \"%s\" не існує" -#: utils/init/miscinit.c:357 +#: utils/init/miscinit.c:363 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "не вдалося прочитати дозволи на каталог \"%s\": %m" -#: utils/init/miscinit.c:365 +#: utils/init/miscinit.c:371 #, c-format msgid "specified data directory \"%s\" is not a directory" msgstr "вказаний каталог даних \"%s\" не є каталогом" -#: utils/init/miscinit.c:381 +#: utils/init/miscinit.c:387 #, c-format msgid "data directory \"%s\" has wrong ownership" msgstr "власник каталогу даних \"%s\" визначений неправильно" -#: utils/init/miscinit.c:383 +#: utils/init/miscinit.c:389 #, c-format msgid "The server must be started by the user that owns the data directory." msgstr "Сервер повинен запускати користувач, який володіє каталогом даних." -#: utils/init/miscinit.c:401 +#: utils/init/miscinit.c:407 #, c-format msgid "data directory \"%s\" has invalid permissions" msgstr "каталог даних \"%s\" має неприпустимі дозволи" -#: utils/init/miscinit.c:403 +#: utils/init/miscinit.c:409 #, 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:461 +#: utils/init/miscinit.c:467 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "не вдалося змінити каталог на \"%s\": %m" -#: utils/init/miscinit.c:697 utils/misc/guc.c:3650 +#: utils/init/miscinit.c:725 utils/misc/guc.c:3647 #, c-format msgid "cannot set parameter \"%s\" within security-restricted operation" msgstr "встановити параметр \"%s\" в межах операції з обмеженнями по безпеці, не можна" -#: utils/init/miscinit.c:770 +#: utils/init/miscinit.c:812 #, c-format msgid "role with OID %u does not exist" msgstr "роль з OID %u не існує" -#: utils/init/miscinit.c:800 +#: utils/init/miscinit.c:858 #, c-format msgid "role \"%s\" is not permitted to log in" msgstr "для ролі \"%s\" вхід не дозволений" -#: utils/init/miscinit.c:818 +#: utils/init/miscinit.c:879 #, c-format msgid "too many connections for role \"%s\"" msgstr "занадто багато підключень для ролі \"%s\"" -#: utils/init/miscinit.c:991 +#: utils/init/miscinit.c:1050 #, c-format msgid "invalid role OID: %u" msgstr "неприпустимий OID ролі: %u" -#: utils/init/miscinit.c:1138 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "система бази даних вимкнена" -#: utils/init/miscinit.c:1225 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "не вдалося створити файл блокування \"%s\": %m" -#: utils/init/miscinit.c:1239 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "не вдалося відкрити файл блокування \"%s\": %m" -#: utils/init/miscinit.c:1246 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "не вдалося прочитати файл блокування \"%s\": %m" -#: utils/init/miscinit.c:1255 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "файл блокування \"%s\" пустий" -#: utils/init/miscinit.c:1256 +#: utils/init/miscinit.c:1316 #, c-format msgid "Either another server is starting, or the lock file is the remnant of a previous server startup crash." msgstr "Або зараз запускається інший сервер, або цей файл блокування залишився в результаті збою під час попереднього запуску." -#: utils/init/miscinit.c:1300 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "файл блокування \"%s\" вже існує" -#: utils/init/miscinit.c:1304 +#: utils/init/miscinit.c:1364 #, c-format msgid "Is another postgres (PID %d) running in data directory \"%s\"?" msgstr "Інший postgres (PID %d) працює з каталогом даних \"%s\"?" -#: utils/init/miscinit.c:1306 +#: utils/init/miscinit.c:1366 #, c-format msgid "Is another postmaster (PID %d) running in data directory \"%s\"?" msgstr "Інший postmaster (PID %d) працює з каталогом даних \"%s\"?" -#: utils/init/miscinit.c:1309 +#: utils/init/miscinit.c:1369 #, c-format msgid "Is another postgres (PID %d) using socket file \"%s\"?" msgstr "Інший postgres (PID %d) використовує файл сокету \"%s\"?" -#: utils/init/miscinit.c:1311 +#: utils/init/miscinit.c:1371 #, c-format msgid "Is another postmaster (PID %d) using socket file \"%s\"?" msgstr "Інший postmaster (PID %d) використовує файл сокету \"%s\"?" -#: utils/init/miscinit.c:1362 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "не вдалося видалити старий файл блокування \"%s\": %m" -#: utils/init/miscinit.c:1364 +#: utils/init/miscinit.c:1424 #, c-format 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:1401 utils/init/miscinit.c:1415 -#: utils/init/miscinit.c:1426 +#: utils/init/miscinit.c:1461 utils/init/miscinit.c:1475 +#: utils/init/miscinit.c:1486 #, c-format msgid "could not write lock file \"%s\": %m" msgstr "не вдалося записати файл блокування \"%s\": %m" -#: utils/init/miscinit.c:1537 utils/init/miscinit.c:1679 utils/misc/guc.c:5724 +#: utils/init/miscinit.c:1597 utils/init/miscinit.c:1739 utils/misc/guc.c:5768 #, c-format msgid "could not read from file \"%s\": %m" msgstr "не вдалося прочитати з файлу \"%s\": %m" -#: utils/init/miscinit.c:1667 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "не вдалося відкрити файл \"%s\": %m; все одно продовжується" -#: utils/init/miscinit.c:1692 +#: utils/init/miscinit.c:1752 #, c-format msgid "lock file \"%s\" contains wrong PID: %ld instead of %ld" msgstr "файл блокування \"%s\" містить неправильний PID: %ld замість %ld" -#: utils/init/miscinit.c:1731 utils/init/miscinit.c:1747 +#: utils/init/miscinit.c:1791 utils/init/miscinit.c:1807 #, c-format msgid "\"%s\" is not a valid data directory" msgstr "\"%s\" не є припустимим каталогом даних" -#: utils/init/miscinit.c:1733 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "Файл \"%s\" пропущено." -#: utils/init/miscinit.c:1749 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "Файл \"%s\" не містить припустимих даних." -#: utils/init/miscinit.c:1751 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "Можливо, вам слід виконати initdb." -#: utils/init/miscinit.c:1759 +#: utils/init/miscinit.c:1819 #, c-format msgid "The data directory was initialized by PostgreSQL version %s, which is not compatible with this version %s." msgstr "Каталог даних ініціалізований сервером PostgreSQL версії %s, не сумісною з цією версією %s." -#: utils/init/postinit.c:259 +#: utils/init/postinit.c:269 #, c-format msgid "replication connection authorized: user=%s" msgstr "підключення для реплікації авторизовано: користувач=%s" -#: utils/init/postinit.c:262 +#: utils/init/postinit.c:272 #, c-format msgid "connection authorized: user=%s" msgstr "підключення авторизовано: користувач=%s" -#: utils/init/postinit.c:265 +#: utils/init/postinit.c:275 #, c-format msgid " database=%s" msgstr " database=%s" -#: utils/init/postinit.c:268 +#: utils/init/postinit.c:278 #, c-format msgid " application_name=%s" msgstr " application_name=%s" -#: utils/init/postinit.c:273 +#: utils/init/postinit.c:283 #, c-format msgid " SSL enabled (protocol=%s, cipher=%s, bits=%d)" msgstr " SSL активовано (протокол=%s, шифр=%s, біти=%d)" -#: utils/init/postinit.c:285 +#: utils/init/postinit.c:295 #, c-format msgid " GSS (authenticated=%s, encrypted=%s, delegated_credentials=%s, principal=%s)" msgstr " GSS (authenticated=%s, encrypted=%s, delegated_credentials=%s, principal=%s)" -#: utils/init/postinit.c:286 utils/init/postinit.c:287 -#: utils/init/postinit.c:288 utils/init/postinit.c:293 -#: utils/init/postinit.c:294 utils/init/postinit.c:295 +#: utils/init/postinit.c:296 utils/init/postinit.c:297 +#: utils/init/postinit.c:298 utils/init/postinit.c:303 +#: utils/init/postinit.c:304 utils/init/postinit.c:305 msgid "no" msgstr "ні" -#: utils/init/postinit.c:286 utils/init/postinit.c:287 -#: utils/init/postinit.c:288 utils/init/postinit.c:293 -#: utils/init/postinit.c:294 utils/init/postinit.c:295 +#: utils/init/postinit.c:296 utils/init/postinit.c:297 +#: utils/init/postinit.c:298 utils/init/postinit.c:303 +#: utils/init/postinit.c:304 utils/init/postinit.c:305 msgid "yes" msgstr "так" -#: utils/init/postinit.c:292 +#: utils/init/postinit.c:302 #, c-format msgid " GSS (authenticated=%s, encrypted=%s, delegated_credentials=%s)" msgstr " GSS (authenticated=%s, encrypted=%s, delegated_credentials=%s)" -#: utils/init/postinit.c:333 +#: utils/init/postinit.c:342 #, c-format msgid "database \"%s\" has disappeared from pg_database" msgstr "база даних \"%s\" зникла з pg_database" -#: utils/init/postinit.c:335 +#: utils/init/postinit.c:344 #, c-format msgid "Database OID %u now seems to belong to \"%s\"." msgstr "Здається, база даних з OID %u тепер належить \"%s\"." -#: utils/init/postinit.c:355 +#: utils/init/postinit.c:364 #, c-format msgid "database \"%s\" is not currently accepting connections" msgstr "база даних \"%s\" не приймає підключення в даний момент" -#: utils/init/postinit.c:368 +#: utils/init/postinit.c:377 #, c-format msgid "permission denied for database \"%s\"" msgstr "доступ до бази даних \"%s\" відхилений" -#: utils/init/postinit.c:369 +#: utils/init/postinit.c:378 #, c-format msgid "User does not have CONNECT privilege." msgstr "Користувач не має права CONNECT." -#: utils/init/postinit.c:386 +#: utils/init/postinit.c:398 #, c-format msgid "too many connections for database \"%s\"" msgstr "занадто багато підключень до бази даних \"%s\"" -#: utils/init/postinit.c:410 utils/init/postinit.c:417 +#: utils/init/postinit.c:422 utils/init/postinit.c:429 #, c-format msgid "database locale is incompatible with operating system" msgstr "локалізація бази даних несумісна з операційною системою" -#: utils/init/postinit.c:411 +#: utils/init/postinit.c:423 #, c-format msgid "The database was initialized with LC_COLLATE \"%s\", which is not recognized by setlocale()." msgstr "База даних була ініціалізована з параметром LC_COLLATE \"%s\", але зараз setlocale() не розпізнає його." -#: utils/init/postinit.c:413 utils/init/postinit.c:420 +#: utils/init/postinit.c:425 utils/init/postinit.c:432 #, c-format msgid "Recreate the database with another locale or install the missing locale." msgstr "Повторно створіть базу даних з іншою локалізацією або встановіть пропущену локалізацію." -#: utils/init/postinit.c:418 +#: utils/init/postinit.c:430 #, c-format msgid "The database was initialized with LC_CTYPE \"%s\", which is not recognized by setlocale()." msgstr "База даних була ініціалізована з параметром LC_CTYPE \"%s\", але зараз setlocale() не розпізнає його." -#: utils/init/postinit.c:491 +#: utils/init/postinit.c:471 #, c-format msgid "database \"%s\" has a collation version mismatch" msgstr "база даних \"%s\" має невідповідність версії параметрів сортування" -#: utils/init/postinit.c:493 +#: utils/init/postinit.c:473 #, c-format msgid "The database was created using collation version %s, but the operating system provides version %s." msgstr "Базу даних було створено за допомогою параметрів сортування версії %s, але операційна система надає версію %s." -#: utils/init/postinit.c:496 +#: utils/init/postinit.c:476 +#, c-format +msgid "Rebuild all objects in this database that use the default collation and run ALTER DATABASE %s REFRESH COLLATION VERSION, or build PostgreSQL with the right library version." +msgstr "Перебудуйте всі об'єкти бази даних, які використовують стандартний параметр сортування або виконайте ALTER DATABASE %s REFRESH COLLATION VERSION, або побудуйте PostgreSQL з правильною версією бібліотеки." + +#: utils/init/postinit.c:566 +#, c-format +msgid "too many server processes configured" +msgstr "налаштовано занадто багато серверних процесів" + +#: utils/init/postinit.c:567 #, c-format -msgid "Rebuild all objects in this database that use the default collation and run ALTER DATABASE %s REFRESH COLLATION VERSION, or build PostgreSQL with the right library version." -msgstr "Перебудуйте всі об'єкти бази даних, які використовують стандартний параметр сортування або виконайте ALTER DATABASE %s REFRESH COLLATION VERSION, або побудуйте PostgreSQL з правильною версією бібліотеки." +msgid "\"max_connections\" (%d) plus \"autovacuum_worker_slots\" (%d) plus \"max_worker_processes\" (%d) plus \"max_wal_senders\" (%d) must be less than %d." +msgstr "\"max_connections\" (%d) плюс \"autovacuum_worker_slots\" (%d) плюс \"max_worker_processes\" (%d) плюс \"max_wal_senders\" (%d) повинно бути менше ніж %d." -#: utils/init/postinit.c:902 +#: utils/init/postinit.c:878 #, c-format msgid "no roles are defined in this database system" msgstr "в цій системі баз даних не визначено жодної ролі" -#: utils/init/postinit.c:903 +#: utils/init/postinit.c:879 #, c-format msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;." msgstr "Ви повинні негайно виконати CREATE USER \"%s\" SUPERUSER;." -#: utils/init/postinit.c:940 +#: utils/init/postinit.c:924 #, c-format msgid "must be superuser to connect in binary upgrade mode" msgstr "потрібно бути суперкористувачем, щоб підключитись в режимі двійкового оновлення" -#: utils/init/postinit.c:961 +#: utils/init/postinit.c:944 #, c-format msgid "remaining connection slots are reserved for roles with the %s attribute" msgstr "слоти підключення, що залишилися, зарезервовані для ролей з атрибутом %s" -#: utils/init/postinit.c:967 +#: utils/init/postinit.c:950 #, c-format msgid "remaining connection slots are reserved for roles with privileges of the \"%s\" role" msgstr "слоти підключення, що залишилися, зарезервовані для ролей з привілеями ролі \"%s\"" -#: utils/init/postinit.c:979 +#: utils/init/postinit.c:962 #, c-format msgid "permission denied to start WAL sender" msgstr "немає дозволу для запуску відправника WAL" -#: utils/init/postinit.c:980 +#: utils/init/postinit.c:963 #, c-format msgid "Only roles with the %s attribute may start a WAL sender process." msgstr "Тільки ролі з атрибутом %s можуть почати процес відправки WAL." -#: utils/init/postinit.c:1098 +#: utils/init/postinit.c:1081 #, c-format msgid "It seems to have just been dropped or renamed." msgstr "Схоже, вона щойно була видалена або перейменована." -#: utils/init/postinit.c:1102 +#: utils/init/postinit.c:1085 #, c-format msgid "database %u does not exist" msgstr "база даних %u не існує" -#: utils/init/postinit.c:1111 +#: utils/init/postinit.c:1094 #, c-format msgid "cannot connect to invalid database \"%s\"" msgstr "неможливо під'єднатися до невірної бази даних \"%s\"" -#: utils/init/postinit.c:1172 +#: utils/init/postinit.c:1155 #, c-format msgid "The database subdirectory \"%s\" is missing." msgstr "Підкаталог бази даних \"%s\" пропущений." @@ -27824,60 +29142,60 @@ msgstr "роль \"%s\" не може виконати SET ROLE для \"%s\"" msgid "invalid encoding number: %d" msgstr "неприпустимий номер кодування: %d" -#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:129 -#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:165 +#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:132 +#: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:168 #, c-format msgid "unexpected encoding ID %d for ISO 8859 character sets" msgstr "неочікуваний ідентифікатор кодування %d для наборів символів ISO 8859" -#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:110 -#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:146 +#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:113 +#: utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c:149 #, c-format msgid "unexpected encoding ID %d for WIN character sets" msgstr "неочікуваний ідентифікатор кодування %d для наборів символів WIN" -#: utils/mb/mbutils.c:297 utils/mb/mbutils.c:900 +#: utils/mb/mbutils.c:298 utils/mb/mbutils.c:901 #, c-format msgid "conversion between %s and %s is not supported" msgstr "перетворення між %s і %s не підтримується" -#: utils/mb/mbutils.c:402 utils/mb/mbutils.c:430 utils/mb/mbutils.c:815 -#: utils/mb/mbutils.c:842 +#: utils/mb/mbutils.c:403 utils/mb/mbutils.c:431 utils/mb/mbutils.c:816 +#: utils/mb/mbutils.c:843 #, c-format msgid "String of %d bytes is too long for encoding conversion." msgstr "Рядок з %d байт занадто довгий для перетворення кодування." -#: utils/mb/mbutils.c:568 +#: utils/mb/mbutils.c:569 #, c-format msgid "invalid source encoding name \"%s\"" msgstr "неприпустиме ім’я вихідного кодування \"%s\"" -#: utils/mb/mbutils.c:573 +#: utils/mb/mbutils.c:574 #, c-format msgid "invalid destination encoding name \"%s\"" msgstr "неприпустиме ім’я кодування результату \"%s\"" -#: utils/mb/mbutils.c:713 +#: utils/mb/mbutils.c:714 #, c-format msgid "invalid byte value for encoding \"%s\": 0x%02x" msgstr "неприпустиме значення байту для кодування \"%s\": 0x%02x" -#: utils/mb/mbutils.c:877 +#: utils/mb/mbutils.c:878 #, c-format msgid "invalid Unicode code point" msgstr "неприпустима кодова точка Unicode" -#: utils/mb/mbutils.c:1201 +#: utils/mb/mbutils.c:1202 #, c-format msgid "bind_textdomain_codeset failed" msgstr "помилка в bind_textdomain_codeset" -#: utils/mb/mbutils.c:1718 +#: utils/mb/mbutils.c:1719 #, c-format msgid "invalid byte sequence for encoding \"%s\": %s" msgstr "неприпустима послідовність байтів для кодування \"%s\": %s" -#: utils/mb/mbutils.c:1751 +#: utils/mb/mbutils.c:1760 #, c-format msgid "character with byte sequence %s in encoding \"%s\" has no equivalent in encoding \"%s\"" msgstr "символ з послідовністю байтів %s в кодуванні \"%s\" не має еквіваленту в кодуванні \"%s\"" @@ -27892,230 +29210,230 @@ msgstr "пуста назва каталогу конфігурації: \"%s\"" msgid "could not open configuration directory \"%s\": %m" msgstr "не вдалося відкрити каталог конфігурації \"%s\": %m" -#: utils/misc/guc.c:122 +#: utils/misc/guc.c:119 msgid "Valid units for this parameter are \"B\", \"kB\", \"MB\", \"GB\", and \"TB\"." msgstr "Припустимі одиниці для цього параметру: \"B\", \"kB\", \"MB\", \"GB\", і \"TB\"." -#: utils/misc/guc.c:159 +#: utils/misc/guc.c:156 msgid "Valid units for this parameter are \"us\", \"ms\", \"s\", \"min\", \"h\", and \"d\"." msgstr "Припустимі одиниці для цього параметру: \"us\", \"ms\", \"s\", \"min\", \"h\", і \"d\"." -#: utils/misc/guc.c:430 +#: utils/misc/guc.c:428 #, c-format msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %d" msgstr "нерозпізнаний параметр конфігурації \"%s\" у файлі \"%s\" рядок %d" -#: utils/misc/guc.c:470 utils/misc/guc.c:3504 utils/misc/guc.c:3748 -#: utils/misc/guc.c:3846 utils/misc/guc.c:3944 utils/misc/guc.c:4068 -#: utils/misc/guc.c:4171 +#: utils/misc/guc.c:468 utils/misc/guc.c:3501 utils/misc/guc.c:3745 +#: utils/misc/guc.c:3843 utils/misc/guc.c:3941 utils/misc/guc.c:4068 +#: utils/misc/guc.c:4209 #, c-format msgid "parameter \"%s\" cannot be changed without restarting the server" msgstr "параметр \"%s\" не може бути змінений, без перезавантаження сервера" -#: utils/misc/guc.c:506 +#: utils/misc/guc.c:504 #, c-format msgid "parameter \"%s\" removed from configuration file, reset to default" msgstr "параметр \"%s\" видалений з файла конфігурації, значення скинуто до \"за замовчуванням\"" -#: utils/misc/guc.c:571 +#: utils/misc/guc.c:569 #, c-format msgid "parameter \"%s\" changed to \"%s\"" msgstr "параметр \"%s\" змінено на \"%s\"" -#: utils/misc/guc.c:613 +#: utils/misc/guc.c:611 #, c-format msgid "configuration file \"%s\" contains errors" msgstr "файл конфігурації \"%s\" містить помилки" -#: utils/misc/guc.c:618 +#: utils/misc/guc.c:616 #, c-format msgid "configuration file \"%s\" contains errors; unaffected changes were applied" msgstr "файл конфігурації \"%s\" містить помилки; були застосовані не залежні зміни" -#: utils/misc/guc.c:623 +#: utils/misc/guc.c:621 #, c-format msgid "configuration file \"%s\" contains errors; no changes were applied" msgstr "файл конфігурації \"%s\" містить помилки; зміни не були застосовані" -#: utils/misc/guc.c:1139 utils/misc/guc.c:1155 +#: utils/misc/guc.c:1137 utils/misc/guc.c:1153 #, c-format msgid "invalid configuration parameter name \"%s\"" msgstr "неприпустима назва параметра конфігурації \"%s\"" -#: utils/misc/guc.c:1141 +#: utils/misc/guc.c:1139 #, c-format msgid "Custom parameter names must be two or more simple identifiers separated by dots." msgstr "Власні назви параметрів повинні містити два або більше простих ідентифікаторів, розділених крапками." -#: utils/misc/guc.c:1157 +#: utils/misc/guc.c:1155 #, c-format msgid "\"%s\" is a reserved prefix." msgstr "\"%s\" є зарезервованим префіксом." -#: utils/misc/guc.c:1170 utils/misc/guc.c:1280 +#: utils/misc/guc.c:1168 utils/misc/guc.c:1278 #, c-format msgid "unrecognized configuration parameter \"%s\"" msgstr "нерозпізнаний параметр конфігурації \"%s\"" -#: utils/misc/guc.c:1802 +#: utils/misc/guc.c:1800 #, c-format msgid "%s: could not access directory \"%s\": %m\n" msgstr "%s: не вдалося отримати доступ до каталогу \"%s\": %m\n" -#: utils/misc/guc.c:1806 +#: utils/misc/guc.c:1804 #, c-format msgid "Run initdb or pg_basebackup to initialize a PostgreSQL data directory.\n" msgstr "Запустіть initdb або pg_basebackup для ініціалізації каталогу даних PostgreSQL.\n" -#: utils/misc/guc.c:1830 +#: utils/misc/guc.c:1828 #, 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" msgstr "%s не знає де знайти файл конфігурації сервера.\n" "Ви повинні вказати його розташування в параметрі --config-file або -D, або встановити змінну середовища PGDATA.\n" -#: utils/misc/guc.c:1853 +#: utils/misc/guc.c:1851 #, c-format msgid "%s: could not access the server configuration file \"%s\": %m\n" msgstr "%s: не вдалося отримати доступ до файлу конфігурації сервера \"%s\": %m\n" -#: utils/misc/guc.c:1881 +#: utils/misc/guc.c:1879 #, 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" msgstr "%s не знає де знайти дані системи бази даних.\n" "Їх розташування може бути вказано як \"data_directory\" в \"%s\", або передано в параметрі -D, або встановлено змінну середовища PGDATA.\n" -#: utils/misc/guc.c:1933 +#: utils/misc/guc.c:1931 #, 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" msgstr "%s не знає де знайти файл конфігурації \"hba\".\n" "Його розташування може бути вказано як \"hba_file\" в \"%s\", або передано в параметрі -D, або встановлено змінну середовища PGDATA.\n" -#: utils/misc/guc.c:1964 +#: utils/misc/guc.c:1962 #, 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" msgstr "%s не знає де знайти файл конфігурації \"ident\".\n" "Його розташування може бути вказано як \"ident_file\" в \"%s\", або передано в параметрі -D, або встановлено змінну середовища PGDATA.\n" -#: utils/misc/guc.c:2943 +#: utils/misc/guc.c:2941 msgid "Value exceeds integer range." msgstr "Значення перевищує діапазон цілих чисел." -#: utils/misc/guc.c:3185 +#: utils/misc/guc.c:3182 #, c-format msgid "%d%s%s is outside the valid range for parameter \"%s\" (%d%s%s .. %d%s%s)" msgstr "%d%s%s поза припустимим діапазоном для параметру \"%s\" (%d%s%s .. %d%s%s)" -#: utils/misc/guc.c:3226 +#: utils/misc/guc.c:3223 #, c-format msgid "%g%s%s is outside the valid range for parameter \"%s\" (%g%s%s .. %g%s%s)" msgstr "%g%s%s поза припустимим діапазоном для параметру \"%s\" (%g%s%s .. %g%s%s)" -#: utils/misc/guc.c:3465 +#: utils/misc/guc.c:3462 #, c-format msgid "parameter \"%s\" cannot be set during a parallel operation" msgstr "параметр \"%s\" не можна встановити під час паралельних операцій" -#: utils/misc/guc.c:3481 utils/misc/guc.c:4655 +#: utils/misc/guc.c:3478 utils/misc/guc.c:4693 #, c-format msgid "parameter \"%s\" cannot be changed" msgstr "параметр \"%s\" не може бути змінений" -#: utils/misc/guc.c:3514 +#: utils/misc/guc.c:3511 #, c-format msgid "parameter \"%s\" cannot be changed now" msgstr "параметр \"%s\" не може бути змінений зараз" -#: utils/misc/guc.c:3541 utils/misc/guc.c:3603 utils/misc/guc.c:4630 -#: utils/misc/guc.c:6721 +#: utils/misc/guc.c:3538 utils/misc/guc.c:3600 utils/misc/guc.c:4668 +#: utils/misc/guc.c:6765 #, c-format msgid "permission denied to set parameter \"%s\"" msgstr "немає прав для встановлення параметру \"%s\"" -#: utils/misc/guc.c:3583 +#: utils/misc/guc.c:3580 #, c-format msgid "parameter \"%s\" cannot be set after connection start" msgstr "параметр \"%s\" не можна встановити після встановлення підключення" -#: utils/misc/guc.c:3642 +#: utils/misc/guc.c:3639 #, c-format msgid "cannot set parameter \"%s\" within security-definer function" msgstr "параметр \"%s\" не можна встановити в межах функції безпеки" -#: utils/misc/guc.c:3663 +#: utils/misc/guc.c:3660 #, c-format msgid "parameter \"%s\" cannot be reset" msgstr "параметр \"%s\" не можна скинути" -#: utils/misc/guc.c:3670 +#: utils/misc/guc.c:3667 #, c-format msgid "parameter \"%s\" cannot be set locally in functions" msgstr "параметр \"%s\" не може бути встановлений локально в функціях" -#: utils/misc/guc.c:4329 utils/misc/guc.c:4377 utils/misc/guc.c:5409 +#: utils/misc/guc.c:4367 utils/misc/guc.c:4415 utils/misc/guc.c:5453 #, c-format msgid "permission denied to examine \"%s\"" msgstr "немає дозволу для вивчення \"%s\"" -#: utils/misc/guc.c:4330 utils/misc/guc.c:4378 utils/misc/guc.c:5410 +#: utils/misc/guc.c:4368 utils/misc/guc.c:4416 utils/misc/guc.c:5454 #, c-format msgid "Only roles with privileges of the \"%s\" role may examine this parameter." msgstr "Тільки ролі з привілеями ролі \"%s\" можуть перевіряти цей параметр." -#: utils/misc/guc.c:4588 +#: utils/misc/guc.c:4626 #, c-format msgid "ALTER SYSTEM is not allowed in this environment" msgstr "ALTER SYSTEM не допускається в цьому середовищі" -#: utils/misc/guc.c:4620 +#: utils/misc/guc.c:4658 #, c-format msgid "permission denied to perform ALTER SYSTEM RESET ALL" msgstr "немає дозволу для виконання ALTER SYSTEM RESET ALL" -#: utils/misc/guc.c:4699 +#: utils/misc/guc.c:4742 #, c-format msgid "parameter value for ALTER SYSTEM must not contain a newline" msgstr "значення параметру для ALTER SYSTEM не повинне містити нового рядка" -#: utils/misc/guc.c:4744 +#: utils/misc/guc.c:4787 #, c-format msgid "could not parse contents of file \"%s\"" msgstr "не вдалося аналізувати зміст файла \"%s\"" -#: utils/misc/guc.c:4926 +#: utils/misc/guc.c:4970 #, c-format msgid "attempt to redefine parameter \"%s\"" msgstr "спроба перевизначити параметр \"%s\"" -#: utils/misc/guc.c:5265 +#: utils/misc/guc.c:5309 #, c-format msgid "invalid configuration parameter name \"%s\", removing it" msgstr "неприпустима назва параметра конфігурації \"%s\", видаляємо" -#: utils/misc/guc.c:5267 +#: utils/misc/guc.c:5311 #, c-format msgid "\"%s\" is now a reserved prefix." msgstr "\"%s\" тепер є зарезервованим префіксом." -#: utils/misc/guc.c:6144 +#: utils/misc/guc.c:6182 #, c-format msgid "while setting parameter \"%s\" to \"%s\"" msgstr "під час налаштування параметру \"%s\" на \"%s\"" -#: utils/misc/guc.c:6313 +#: utils/misc/guc.c:6351 #, c-format msgid "parameter \"%s\" could not be set" msgstr "параметр \"%s\" не вдалося встановити" -#: utils/misc/guc.c:6403 +#: utils/misc/guc.c:6441 #, c-format msgid "could not parse setting for parameter \"%s\"" msgstr "не вдалося аналізувати налаштування параметру \"%s\"" -#: utils/misc/guc.c:6853 +#: utils/misc/guc.c:6897 #, c-format msgid "invalid value for parameter \"%s\": %g" msgstr "неприпустиме значення для параметра \"%s\": %g" @@ -28140,2064 +29458,2271 @@ msgstr "SET %s приймає лише один аргумент" msgid "SET requires parameter name" msgstr "SET потребує ім'я параметра" -#: utils/misc/guc_tables.c:676 +#: utils/misc/guc_tables.c:692 msgid "Ungrouped" msgstr "Розгруповано" -#: utils/misc/guc_tables.c:677 +#: utils/misc/guc_tables.c:693 msgid "File Locations" msgstr "Розташування файлів" -#: utils/misc/guc_tables.c:678 +#: utils/misc/guc_tables.c:694 msgid "Connections and Authentication / Connection Settings" msgstr "Підключення і автентифікація / Параметри підключень" -#: utils/misc/guc_tables.c:679 +#: utils/misc/guc_tables.c:695 msgid "Connections and Authentication / TCP Settings" msgstr "Підключення і автентифікація / Налаштування TCP" -#: utils/misc/guc_tables.c:680 +#: utils/misc/guc_tables.c:696 msgid "Connections and Authentication / Authentication" msgstr "Підключення і автентифікація / Автентифікація" -#: utils/misc/guc_tables.c:681 +#: utils/misc/guc_tables.c:697 msgid "Connections and Authentication / SSL" msgstr "Підключення і автентифікація / SSL" -#: utils/misc/guc_tables.c:682 +#: utils/misc/guc_tables.c:698 msgid "Resource Usage / Memory" msgstr "Використання ресурсу / Пам'ять" -#: utils/misc/guc_tables.c:683 +#: utils/misc/guc_tables.c:699 msgid "Resource Usage / Disk" msgstr "Використання ресурсу / Диск" -#: utils/misc/guc_tables.c:684 +#: utils/misc/guc_tables.c:700 msgid "Resource Usage / Kernel Resources" msgstr "Використання ресурсу / Ресурси ядра" -#: utils/misc/guc_tables.c:685 -msgid "Resource Usage / Cost-Based Vacuum Delay" -msgstr "Використання ресурсу / Затримка очистки по вартості" - -#: utils/misc/guc_tables.c:686 +#: utils/misc/guc_tables.c:701 msgid "Resource Usage / Background Writer" msgstr "Використання ресурсу / Фоновий запис" -#: utils/misc/guc_tables.c:687 -msgid "Resource Usage / Asynchronous Behavior" -msgstr "Використання ресурсу / Асинхронна поведінка" +#: utils/misc/guc_tables.c:702 +msgid "Resource Usage / I/O" +msgstr "Використання ресурсів / Ввід-вивід" + +#: utils/misc/guc_tables.c:703 +msgid "Resource Usage / Worker Processes" +msgstr "Використання ресурсів / Робочі процеси" -#: utils/misc/guc_tables.c:688 +#: utils/misc/guc_tables.c:704 msgid "Write-Ahead Log / Settings" msgstr "Журнал WAL / Параметри" -#: utils/misc/guc_tables.c:689 +#: utils/misc/guc_tables.c:705 msgid "Write-Ahead Log / Checkpoints" msgstr "Журнал WAL / Контрольні точки" -#: utils/misc/guc_tables.c:690 +#: utils/misc/guc_tables.c:706 msgid "Write-Ahead Log / Archiving" msgstr "Журнал WAL / Архівація" -#: utils/misc/guc_tables.c:691 +#: utils/misc/guc_tables.c:707 msgid "Write-Ahead Log / Recovery" msgstr "Журнал WAL / Відновлення" -#: utils/misc/guc_tables.c:692 +#: utils/misc/guc_tables.c:708 msgid "Write-Ahead Log / Archive Recovery" msgstr "Журнал WAL / Відновлення архіву" -#: utils/misc/guc_tables.c:693 +#: utils/misc/guc_tables.c:709 msgid "Write-Ahead Log / Recovery Target" msgstr "Журнал WAL / Мета відновлення" -#: utils/misc/guc_tables.c:694 +#: utils/misc/guc_tables.c:710 msgid "Write-Ahead Log / Summarization" msgstr "Журнал попереднього запису / Підсумки" -#: utils/misc/guc_tables.c:695 +#: utils/misc/guc_tables.c:711 msgid "Replication / Sending Servers" msgstr "Реплікація / Надсилання серверів" -#: utils/misc/guc_tables.c:696 +#: utils/misc/guc_tables.c:712 msgid "Replication / Primary Server" msgstr "Реплікація / Основний сервер" -#: utils/misc/guc_tables.c:697 +#: utils/misc/guc_tables.c:713 msgid "Replication / Standby Servers" msgstr "Реплікація / Резервні сервера" -#: utils/misc/guc_tables.c:698 +#: utils/misc/guc_tables.c:714 msgid "Replication / Subscribers" msgstr "Реплікація / Підписники" -#: utils/misc/guc_tables.c:699 +#: utils/misc/guc_tables.c:715 msgid "Query Tuning / Planner Method Configuration" msgstr "Налаштування запитів / Конфігурація методів планувальника" -#: utils/misc/guc_tables.c:700 +#: utils/misc/guc_tables.c:716 msgid "Query Tuning / Planner Cost Constants" msgstr "Налаштування запитів / Константи вартості для планувальника" -#: utils/misc/guc_tables.c:701 +#: utils/misc/guc_tables.c:717 msgid "Query Tuning / Genetic Query Optimizer" msgstr "Налаштування запитів / Генетичний оптимізатор запитів" -#: utils/misc/guc_tables.c:702 +#: utils/misc/guc_tables.c:718 msgid "Query Tuning / Other Planner Options" msgstr "Налаштування запитів / Інші параметри планувальника" -#: utils/misc/guc_tables.c:703 +#: utils/misc/guc_tables.c:719 msgid "Reporting and Logging / Where to Log" msgstr "Звіти і журналювання / Куди записувати" -#: utils/misc/guc_tables.c:704 +#: utils/misc/guc_tables.c:720 msgid "Reporting and Logging / When to Log" msgstr "Звіти і журналювання / Коли записувати" -#: utils/misc/guc_tables.c:705 +#: utils/misc/guc_tables.c:721 msgid "Reporting and Logging / What to Log" msgstr "Звіти і журналювання / Що записувати" -#: utils/misc/guc_tables.c:706 +#: utils/misc/guc_tables.c:722 msgid "Reporting and Logging / Process Title" msgstr "Звітування і журналювання / Назва процесу" -#: utils/misc/guc_tables.c:707 +#: utils/misc/guc_tables.c:723 msgid "Statistics / Monitoring" msgstr "Статистика / Моніторинг" -#: utils/misc/guc_tables.c:708 +#: utils/misc/guc_tables.c:724 msgid "Statistics / Cumulative Query and Index Statistics" msgstr "Статистика / Кумулятивна статистика запитів та індексів" -#: utils/misc/guc_tables.c:709 -msgid "Autovacuum" -msgstr "Автоочистка" +#: utils/misc/guc_tables.c:725 +msgid "Vacuuming / Automatic Vacuuming" +msgstr "Вакуум / Автоматичний вакуум" -#: utils/misc/guc_tables.c:710 +#: utils/misc/guc_tables.c:726 +msgid "Vacuuming / Cost-Based Vacuum Delay" +msgstr "Вакуум / Затримка вакууму на основі вартості" + +#: utils/misc/guc_tables.c:727 +msgid "Vacuuming / Default Behavior" +msgstr "Вакуум / Поведінка за замовчуванням" + +#: utils/misc/guc_tables.c:728 +msgid "Vacuuming / Freezing" +msgstr "Вакуум / Заморожування" + +#: utils/misc/guc_tables.c:729 msgid "Client Connection Defaults / Statement Behavior" msgstr "Параметри клієнтських сеансів за замовчуванням / Поведінка декларацій" -#: utils/misc/guc_tables.c:711 +#: utils/misc/guc_tables.c:730 msgid "Client Connection Defaults / Locale and Formatting" msgstr "Параметри клієнтських сеансів за замовчуванням / Локалізація і форматування" -#: utils/misc/guc_tables.c:712 +#: utils/misc/guc_tables.c:731 msgid "Client Connection Defaults / Shared Library Preloading" msgstr "Параметри клієнтських сеансів за замовчуванням / Попереднє завантаження спільних бібліотек" -#: utils/misc/guc_tables.c:713 +#: utils/misc/guc_tables.c:732 msgid "Client Connection Defaults / Other Defaults" msgstr "Параметри клієнтських сеансів за замовчуванням / Інші параметри за замовчуванням" -#: utils/misc/guc_tables.c:714 +#: utils/misc/guc_tables.c:733 msgid "Lock Management" msgstr "Керування блокуванням" -#: utils/misc/guc_tables.c:715 +#: utils/misc/guc_tables.c:734 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions" msgstr "Сумісність версій і платформ / Попередні версії PostgreSQL" -#: utils/misc/guc_tables.c:716 +#: utils/misc/guc_tables.c:735 msgid "Version and Platform Compatibility / Other Platforms and Clients" msgstr "Сумісність версій і платформ / Інші платформи і клієнти" -#: utils/misc/guc_tables.c:717 +#: utils/misc/guc_tables.c:736 msgid "Error Handling" msgstr "Обробка помилок" -#: utils/misc/guc_tables.c:718 +#: utils/misc/guc_tables.c:737 msgid "Preset Options" msgstr "Визначені параметри" -#: utils/misc/guc_tables.c:719 +#: utils/misc/guc_tables.c:738 msgid "Customized Options" msgstr "Настроєні параметри" -#: utils/misc/guc_tables.c:720 +#: utils/misc/guc_tables.c:739 msgid "Developer Options" msgstr "Параметри для розробників" -#: utils/misc/guc_tables.c:775 +#: utils/misc/guc_tables.c:794 msgid "Enables the planner's use of sequential-scan plans." msgstr "Дає змогу планувальнику використати плани послідовного сканування." -#: utils/misc/guc_tables.c:785 +#: utils/misc/guc_tables.c:804 msgid "Enables the planner's use of index-scan plans." msgstr "Дає змогу планувальнику використати плани сканування по індексу." -#: utils/misc/guc_tables.c:795 +#: utils/misc/guc_tables.c:814 msgid "Enables the planner's use of index-only-scan plans." msgstr "Дає змогу планувальнику використати плани сканування лише індекса." -#: utils/misc/guc_tables.c:805 +#: utils/misc/guc_tables.c:824 msgid "Enables the planner's use of bitmap-scan plans." msgstr "Дає змогу планувальнику використати плани сканування по точковому рисунку." -#: utils/misc/guc_tables.c:815 +#: utils/misc/guc_tables.c:834 msgid "Enables the planner's use of TID scan plans." msgstr "Дає змогу планувальнику використати плани сканування TID." -#: utils/misc/guc_tables.c:825 +#: utils/misc/guc_tables.c:844 msgid "Enables the planner's use of explicit sort steps." msgstr "Дає змогу планувальнику використати кроки з явним сортуванням." -#: utils/misc/guc_tables.c:835 +#: utils/misc/guc_tables.c:854 msgid "Enables the planner's use of incremental sort steps." msgstr "Дає змогу планувальнику використати кроки інкрементного сортування." -#: utils/misc/guc_tables.c:845 +#: utils/misc/guc_tables.c:864 msgid "Enables the planner's use of hashed aggregation plans." msgstr "Дає змогу планувальнику використовувати плани агрегації по гешу." -#: utils/misc/guc_tables.c:855 +#: utils/misc/guc_tables.c:874 msgid "Enables the planner's use of materialization." msgstr "Дає змогу планувальнику використовувати матеріалізацію." -#: utils/misc/guc_tables.c:865 +#: utils/misc/guc_tables.c:884 msgid "Enables the planner's use of memoization." msgstr "Дає змогу планувальнику використовувати мемоїзацію." -#: utils/misc/guc_tables.c:875 +#: utils/misc/guc_tables.c:894 msgid "Enables the planner's use of nested-loop join plans." msgstr "Дає змогу планувальнику використовувати плани з'єднання з вкладеними циклами." -#: utils/misc/guc_tables.c:885 +#: utils/misc/guc_tables.c:904 msgid "Enables the planner's use of merge join plans." msgstr "Дає змогу планувальнику використовувати плани з'єднання об'єднанням." -#: utils/misc/guc_tables.c:895 +#: utils/misc/guc_tables.c:914 msgid "Enables the planner's use of hash join plans." msgstr "Дає змогу планувальнику використовувати плани з'єднання по гешу." -#: utils/misc/guc_tables.c:905 +#: utils/misc/guc_tables.c:924 msgid "Enables the planner's use of gather merge plans." msgstr "Дає змогу планувальнику використовувати плани збору об'єднанням." -#: utils/misc/guc_tables.c:915 +#: utils/misc/guc_tables.c:934 msgid "Enables partitionwise join." msgstr "Вмикає з'єднання з урахуванням секціонування." -#: utils/misc/guc_tables.c:925 +#: utils/misc/guc_tables.c:944 msgid "Enables partitionwise aggregation and grouping." msgstr "Вмикає агрегацію і групування з урахуванням секціонування." -#: utils/misc/guc_tables.c:935 +#: utils/misc/guc_tables.c:954 msgid "Enables the planner's use of parallel append plans." msgstr "Дає змогу планувальнику використовувати плани паралельного додавання." -#: utils/misc/guc_tables.c:945 +#: utils/misc/guc_tables.c:964 msgid "Enables the planner's use of parallel hash plans." msgstr "Дає змогу планувальнику використовувати плани паралельного з'єднання по гешу." -#: utils/misc/guc_tables.c:955 +#: utils/misc/guc_tables.c:974 msgid "Enables plan-time and execution-time partition pruning." msgstr "Активує видалення розділу під час планування і виконання." -#: utils/misc/guc_tables.c:956 +#: utils/misc/guc_tables.c:975 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_tables.c:967 +#: utils/misc/guc_tables.c:986 msgid "Enables the planner's ability to produce plans that provide presorted input for ORDER BY / DISTINCT aggregate functions." msgstr "Дозволяє планувальнику створювати плани з попередньо відсортованими даними для агрегованих функцій ORDER BY / DISTINCT." -#: utils/misc/guc_tables.c:970 +#: utils/misc/guc_tables.c:989 msgid "Allows the query planner to build plans that provide presorted input for aggregate functions with an ORDER BY / DISTINCT clause. When disabled, implicit sorts are always performed during execution." msgstr "Дозволяє планувальнику запитів створювати плани, які надають попередньо відсортовані дані для агрегованих функцій з реченням ORDER BY / DISTINCT. Якщо цей параметр вимкнено, під час виконання запиту завжди виконується неявне сортування." -#: utils/misc/guc_tables.c:982 +#: utils/misc/guc_tables.c:1001 msgid "Enables the planner's use of async append plans." msgstr "Дає змогу планувальнику використовувати асинхронні плани додавання." -#: utils/misc/guc_tables.c:992 +#: utils/misc/guc_tables.c:1011 +msgid "Enables removal of unique self-joins." +msgstr "Вмикає видалення унікальних самоз'єднань." + +#: utils/misc/guc_tables.c:1021 msgid "Enables reordering of GROUP BY keys." msgstr "Дозволяє перевпорядкувати ключі GROUP BY." -#: utils/misc/guc_tables.c:1002 +#: utils/misc/guc_tables.c:1031 +msgid "Enables reordering of DISTINCT keys." +msgstr "Вмикає переупорядкування ключів DISTINCT." + +#: utils/misc/guc_tables.c:1041 msgid "Enables genetic query optimization." msgstr "Вмикає генетичну оптимізацію запитів." -#: utils/misc/guc_tables.c:1003 +#: utils/misc/guc_tables.c:1042 msgid "This algorithm attempts to do planning without exhaustive searching." msgstr "Цей алгоритм намагається побудувати план без повного перебору." -#: utils/misc/guc_tables.c:1017 +#: utils/misc/guc_tables.c:1056 msgid "Shows whether the current user is a superuser." msgstr "Показує, чи є поточний користувач суперкористувачем." -#: utils/misc/guc_tables.c:1032 +#: utils/misc/guc_tables.c:1071 msgid "Allows running the ALTER SYSTEM command." msgstr "Дозволяє запускати команду ALTER SYSTEM." -#: utils/misc/guc_tables.c:1033 +#: utils/misc/guc_tables.c:1072 msgid "Can be set to off for environments where global configuration changes should be made using a different method." -msgstr "" +msgstr "Може бути вимкнене для середовищ, де слід вносити зміни глобальних налаштувань за допомогою іншого методу." -#: utils/misc/guc_tables.c:1043 +#: utils/misc/guc_tables.c:1082 msgid "Enables advertising the server via Bonjour." msgstr "Вмикає оголошення серверу через Bonjour." -#: utils/misc/guc_tables.c:1052 +#: utils/misc/guc_tables.c:1091 msgid "Collects transaction commit time." msgstr "Збирає час затвердження транзакцій." -#: utils/misc/guc_tables.c:1061 +#: utils/misc/guc_tables.c:1100 msgid "Enables SSL connections." msgstr "Вмикає SSL-підключення." -#: utils/misc/guc_tables.c:1070 +#: utils/misc/guc_tables.c:1109 msgid "Controls whether \"ssl_passphrase_command\" is called during server reload." -msgstr "" +msgstr "Визначає, чи викликається \"ssl_passphrase_command\" під час перезавантаження сервера." -#: utils/misc/guc_tables.c:1079 +#: utils/misc/guc_tables.c:1118 msgid "Give priority to server ciphersuite order." msgstr "Віддавати перевагу замовленню набору шрифтів сервера." -#: utils/misc/guc_tables.c:1088 +#: utils/misc/guc_tables.c:1127 msgid "Forces synchronization of updates to disk." msgstr "Примусова синхронізація оновлень на диск." -#: utils/misc/guc_tables.c:1089 +#: utils/misc/guc_tables.c:1128 msgid "The server will use the fsync() system call in several places to make sure that updates are physically written to disk. This ensures that a database cluster will recover to a consistent state after an operating system or hardware crash." msgstr "Сервер буде використовувати системний виклик fsync() в декількох місцях, щоб переконатися, що оновлення фізично записані на диск. Це гарантує, що кластер баз даних відновиться до узгодженого стану після аварійного завершення роботи операційної системи чи апаратного збою." -#: utils/misc/guc_tables.c:1100 +#: utils/misc/guc_tables.c:1139 msgid "Continues processing after a checksum failure." msgstr "Продовжує обробку після помилки контрольної суми." -#: utils/misc/guc_tables.c:1101 +#: utils/misc/guc_tables.c:1140 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 звичайно повідомляє про помилку і перериває поточну транзакцію. Але якщо ignore_checksum_failure дорівнює true, система пропустить помилку (але видасть попередження) і продовжить обробку. Ця поведінка може бути причиною аварійних завершень роботи або інших серйозних проблем. Це має місце, лише якщо ввімкнен контроль цілосності сторінок." -#: utils/misc/guc_tables.c:1115 +#: utils/misc/guc_tables.c:1154 msgid "Continues processing past damaged page headers." msgstr "Продовжує обробку при пошкоджені заголовків сторінок." -#: utils/misc/guc_tables.c:1116 +#: utils/misc/guc_tables.c:1155 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 "" +msgstr "Виявляючи пошкоджений заголовок сторінки, PostgreSQL звичайно повідомляє про помилку, перериваючи поточну транзакцію. Але якщо \"zero_damaged_pages\" дорівнює true система видасть попередження, обнулить пошкоджену сторінку, і продовжить обробку. Ця поведінка знищить дані, а саме рядків в пошкодженій сторінці." -#: utils/misc/guc_tables.c:1129 +#: utils/misc/guc_tables.c:1168 msgid "Continues recovery after an invalid pages failure." msgstr "Продовжує відновлення після помилки неприпустимих сторінок." -#: utils/misc/guc_tables.c:1130 +#: utils/misc/guc_tables.c:1169 msgid "Detection of WAL records having references to invalid pages during recovery causes PostgreSQL to raise a PANIC-level error, aborting the recovery. Setting \"ignore_invalid_pages\" to true causes the system to ignore invalid page references in WAL records (but still report a warning), and continue recovery. This behavior may cause crashes, data loss, propagate or hide corruption, or other serious problems. Only has an effect during recovery or in standby mode." -msgstr "" +msgstr "Виявлення WAL записів, які мають посилання на неприпустимі сторінки під час відновлення, змушує PostgreSQL підняти помилку на рівень PANIC, перериваючи відновлення. Встановлення параметру \"ignore_invalid_pages\" на true змусить систему ігнорувати неприпустимі посилання на сторінки в WAL записах (але все ще буде повідомляти про попередження), і продовжити відновлення. Ця поведінка може викликати збої, втрату даних, розповсюдження або приховання пошкоджень, або інші серйозні проблеми. Діє лише під час відновлення або в режимі очікування." -#: utils/misc/guc_tables.c:1148 +#: utils/misc/guc_tables.c:1187 msgid "Writes full pages to WAL when first modified after a checkpoint." msgstr "Запис повних сторінок до WAL при першій зміні після контрольної точки." -#: utils/misc/guc_tables.c:1149 +#: utils/misc/guc_tables.c:1188 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 буде недостатньо для відновлення. Цей параметр записує повні сторінки після першої зміни після контрольної точки, тож відновлення можливе." -#: utils/misc/guc_tables.c:1162 +#: utils/misc/guc_tables.c:1201 msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modification." -msgstr "Записує повні сторінки до WAL при першій зміні після контрольної точки, навіть при некритичних змінах." +msgstr "Запис повних сторінок до WAL при першій зміні після контрольної точки, навіть при некритичних змінах." -#: utils/misc/guc_tables.c:1172 +#: utils/misc/guc_tables.c:1211 msgid "Writes zeroes to new WAL files before first use." msgstr "Перед першим використанням записує нулі до нових файлів WAL." -#: utils/misc/guc_tables.c:1182 +#: utils/misc/guc_tables.c:1221 msgid "Recycles WAL files by renaming them." msgstr "Перезаписує файли WAL, перейменувавши їх." -#: utils/misc/guc_tables.c:1192 +#: utils/misc/guc_tables.c:1231 msgid "Logs each checkpoint." msgstr "Журналювати кожну контрольну точку." -#: utils/misc/guc_tables.c:1201 -msgid "Logs each successful connection." -msgstr "Журналювати кожне успішне підключення." - -#: utils/misc/guc_tables.c:1210 +#: utils/misc/guc_tables.c:1240 msgid "Logs details of pre-authentication connection handshake." -msgstr "" +msgstr "Журналювати деталі рукостискання перед автентифікацією." -#: utils/misc/guc_tables.c:1220 +#: utils/misc/guc_tables.c:1250 msgid "Logs end of a session, including duration." msgstr "Журналювати кінець сеансу, зокрема тривалість." -#: utils/misc/guc_tables.c:1229 +#: utils/misc/guc_tables.c:1259 msgid "Logs each replication command." msgstr "Журналювати кожну команду реплікації." -#: utils/misc/guc_tables.c:1238 +#: utils/misc/guc_tables.c:1268 msgid "Shows whether the running server has assertion checks enabled." msgstr "Показує, чи активовані перевірки твердження на працюючому сервері." -#: utils/misc/guc_tables.c:1249 +#: utils/misc/guc_tables.c:1279 msgid "Terminate session on any error." msgstr "Припиняти сеанси при будь-якій помилці." -#: utils/misc/guc_tables.c:1258 +#: utils/misc/guc_tables.c:1288 msgid "Reinitialize server after backend crash." msgstr "Повторити ініціалізацію сервера, після внутрішнього аварійного завершення роботи." -#: utils/misc/guc_tables.c:1267 +#: utils/misc/guc_tables.c:1297 msgid "Remove temporary files after backend crash." msgstr "Видалити тимчасові файли після аварійного завершення роботи внутрішнього сервера." -#: utils/misc/guc_tables.c:1277 +#: utils/misc/guc_tables.c:1307 msgid "Send SIGABRT not SIGQUIT to child processes after backend crash." msgstr "Надсилати SIGABRT, а не SIGQUIT дочірнім процесам після аварійного завершення роботи бекенда." -#: utils/misc/guc_tables.c:1287 +#: utils/misc/guc_tables.c:1317 msgid "Send SIGABRT not SIGKILL to stuck child processes." msgstr "Надсилати SIGABRT, а не SIGKILL до дочірніх процесів, що застрягли." -#: utils/misc/guc_tables.c:1298 +#: utils/misc/guc_tables.c:1328 msgid "Logs the duration of each completed SQL statement." msgstr "Журналювати тривалість кожного виконаного SQL-оператора." -#: utils/misc/guc_tables.c:1307 +#: utils/misc/guc_tables.c:1338 +msgid "Set this to force all parse and plan trees to be passed through copyObject(), to facilitate catching errors and omissions in copyObject()." +msgstr "Встановіть це, щоб примусити всі дерева парсингу та планування проходити через copyObject(), щоб полегшити виявлення помилок та упущень в copyObject()." + +#: utils/misc/guc_tables.c:1355 +msgid "Set this to force all parse and plan trees to be passed through outfuncs.c/readfuncs.c, to facilitate catching errors and omissions in those modules." +msgstr "Встановіть це, щоб примусити всі дерева парсингу та планування проходити через outfuncs.c/readfuncs.c, щоб полегшити виявлення помилок та упущень в цих модулях." + +#: utils/misc/guc_tables.c:1372 +msgid "Set this to force all raw parse trees for DML statements to be scanned by raw_expression_tree_walker(), to facilitate catching errors and omissions in that function." +msgstr "Встановіть це, щоб примусити всі необроблені дерева парсингу для DML операторів сканувати через raw_expression_tree_walker(), щоб полегшити виявлення помилок та упущень в цій функції." + +#: utils/misc/guc_tables.c:1390 msgid "Logs each query's parse tree." msgstr "Журналювати дерево аналізу для кожного запиту." -#: utils/misc/guc_tables.c:1316 +#: utils/misc/guc_tables.c:1399 msgid "Logs each query's rewritten parse tree." msgstr "Журналювати переписане дерево аналізу для кожного запиту." -#: utils/misc/guc_tables.c:1325 +#: utils/misc/guc_tables.c:1408 msgid "Logs each query's execution plan." msgstr "Журналювати план виконання кожного запиту." -#: utils/misc/guc_tables.c:1334 +#: utils/misc/guc_tables.c:1417 msgid "Indents parse and plan tree displays." msgstr "Відступи при відображенні дерев аналізу і плану запитів." -#: utils/misc/guc_tables.c:1343 +#: utils/misc/guc_tables.c:1426 msgid "Writes parser performance statistics to the server log." msgstr "Запис статистики продуктивності аналізу до запису сервера." -#: utils/misc/guc_tables.c:1352 +#: utils/misc/guc_tables.c:1435 msgid "Writes planner performance statistics to the server log." msgstr "Запис статистики продуктивності планувальника до запису сервера." -#: utils/misc/guc_tables.c:1361 +#: utils/misc/guc_tables.c:1444 msgid "Writes executor performance statistics to the server log." msgstr "Запис статистики продуктивності виконувача до запису сервера." -#: utils/misc/guc_tables.c:1370 +#: utils/misc/guc_tables.c:1453 msgid "Writes cumulative performance statistics to the server log." msgstr "Запис сукупної статистики продуктивності до запису сервера." -#: utils/misc/guc_tables.c:1380 +#: utils/misc/guc_tables.c:1463 msgid "Logs system resource usage statistics (memory and CPU) on various B-tree operations." msgstr "Журналювати статистику використання системних ресурсів (пам'яті і ЦП) при різноманітних операціях з B-tree." -#: utils/misc/guc_tables.c:1392 +#: utils/misc/guc_tables.c:1475 msgid "Collects information about executing commands." msgstr "Збирати інформацію про команди які виконуються." -#: utils/misc/guc_tables.c:1393 +#: utils/misc/guc_tables.c:1476 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_tables.c:1403 +#: utils/misc/guc_tables.c:1486 msgid "Collects statistics on database activity." msgstr "Збирати статистику про активність бази даних." -#: utils/misc/guc_tables.c:1412 +#: utils/misc/guc_tables.c:1495 +msgid "Collects timing statistics for cost-based vacuum delay." +msgstr "Збирає статистику часу для затримки очищення на основі вартості." + +#: utils/misc/guc_tables.c:1504 msgid "Collects timing statistics for database I/O activity." msgstr "Збирати статистику за часом активності введення/виведення для бази даних." -#: utils/misc/guc_tables.c:1421 +#: utils/misc/guc_tables.c:1513 msgid "Collects timing statistics for WAL I/O activity." msgstr "Збирає статистику часу для активності вводу/виводу WAL." -#: utils/misc/guc_tables.c:1431 +#: utils/misc/guc_tables.c:1523 msgid "Updates the process title to show the active SQL command." msgstr "Оновлення виводить в заголовок процесу активну SQL-команду." -#: utils/misc/guc_tables.c:1432 +#: utils/misc/guc_tables.c:1524 msgid "Enables updating of the process title every time a new SQL command is received by the server." msgstr "Відображає в заголовку процеса кожну SQL-команду, отриману сервером." -#: utils/misc/guc_tables.c:1441 +#: utils/misc/guc_tables.c:1533 msgid "Starts the autovacuum subprocess." msgstr "Запускає підпроцес автоочистки." -#: utils/misc/guc_tables.c:1451 +#: utils/misc/guc_tables.c:1543 msgid "Generates debugging output for LISTEN and NOTIFY." msgstr "Генерує налагодженні повідомлення для LISTEN і NOTIFY." -#: utils/misc/guc_tables.c:1463 +#: utils/misc/guc_tables.c:1555 msgid "Emits information about lock usage." msgstr "Видає інформацію про блокування, які використовуються." -#: utils/misc/guc_tables.c:1473 +#: utils/misc/guc_tables.c:1565 msgid "Emits information about user lock usage." msgstr "Видає інформацію про користувацькі блокування, які використовуються." -#: utils/misc/guc_tables.c:1483 +#: utils/misc/guc_tables.c:1575 msgid "Emits information about lightweight lock usage." msgstr "Видає інформацію про спрощені блокування, які використовуються." -#: utils/misc/guc_tables.c:1493 +#: utils/misc/guc_tables.c:1585 msgid "Dumps information about all current locks when a deadlock timeout occurs." msgstr "Виводить інформацію про всі поточні блокування, при тайм-ауті взаємного блокування." -#: utils/misc/guc_tables.c:1505 +#: utils/misc/guc_tables.c:1597 msgid "Logs long lock waits." msgstr "Журналювати тривалі очікування в блокуваннях." -#: utils/misc/guc_tables.c:1514 +#: utils/misc/guc_tables.c:1606 +msgid "Logs lock failures." +msgstr "Журналює помилки блокування." + +#: utils/misc/guc_tables.c:1615 msgid "Logs standby recovery conflict waits." msgstr "Журналює очікування конфлікту відновлення." -#: utils/misc/guc_tables.c:1523 +#: utils/misc/guc_tables.c:1624 msgid "Logs the host name in the connection logs." msgstr "Журналювати ім’я хоста до записів підключення." -#: utils/misc/guc_tables.c:1524 +#: utils/misc/guc_tables.c:1625 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_tables.c:1535 +#: utils/misc/guc_tables.c:1636 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"." msgstr "Вважати \"expr=NULL\" як \"expr IS NULL\"." -#: utils/misc/guc_tables.c:1536 +#: utils/misc/guc_tables.c:1637 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 NULL, тобто, повертають true, якщо expr співпадає зі значенням null, і false в іншому разі. Правильна поведінка expr = NULL - завжди повертати null (невідомо)." -#: utils/misc/guc_tables.c:1548 +#: utils/misc/guc_tables.c:1649 msgid "Sets the default read-only status of new transactions." msgstr "Встановлює статус \"лише читання\" за замовчуванням для нових транзакцій." -#: utils/misc/guc_tables.c:1558 +#: utils/misc/guc_tables.c:1659 msgid "Sets the current transaction's read-only status." msgstr "Встановлює статус \"лише читання\" для поточної транзакції." -#: utils/misc/guc_tables.c:1568 +#: utils/misc/guc_tables.c:1669 msgid "Sets the default deferrable status of new transactions." msgstr "Встановлює статус відкладеного виконання за замовчуванням для нових транзакцій." -#: utils/misc/guc_tables.c:1577 +#: utils/misc/guc_tables.c:1678 msgid "Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures." msgstr "Визначає, чи відкладати серіалізовану транзакцію \"лише читання\" до моменту, коли збій серіалізації буде виключений." -#: utils/misc/guc_tables.c:1587 -msgid "Enable row security." +#: utils/misc/guc_tables.c:1688 +msgid "Enables row security." msgstr "Вмикає захист на рівні рядків." -#: utils/misc/guc_tables.c:1588 +#: utils/misc/guc_tables.c:1689 msgid "When enabled, row security will be applied to all users." msgstr "Коли ввімкнено, захист на рівні рядків буде застосовано до всіх користувачів." -#: utils/misc/guc_tables.c:1596 +#: utils/misc/guc_tables.c:1697 msgid "Check routine bodies during CREATE FUNCTION and CREATE PROCEDURE." msgstr "Перевірте тіла підпрограм під час CREATE FUNCTION і CREATE PROCEDURE." -#: utils/misc/guc_tables.c:1605 -msgid "Enable input of NULL elements in arrays." -msgstr "Дозволяє введення NULL елементів у масивах." +#: utils/misc/guc_tables.c:1706 +msgid "Enables input of NULL elements in arrays." +msgstr "Дозволяє введення елементів NULL у масивах." -#: utils/misc/guc_tables.c:1606 +#: utils/misc/guc_tables.c:1707 msgid "When turned on, unquoted NULL in an array input value means a null value; otherwise it is taken literally." msgstr "Коли цей параметр ввімкнений, NULL без лапок при введенні до масиву сприймається як значення null; в іншому разі як рядок." -#: utils/misc/guc_tables.c:1622 +#: utils/misc/guc_tables.c:1723 msgid "WITH OIDS is no longer supported; this can only be false." msgstr "WITH OIDS більше не підтримується; це може бути помилковим." -#: utils/misc/guc_tables.c:1632 -msgid "Start a subprocess to capture stderr output and/or csvlogs into log files." -msgstr "Запускає підпроцес записування виводу stderr і/або csvlogs до файлів журналу." +#: utils/misc/guc_tables.c:1733 +msgid "Start a subprocess to capture stderr, csvlog and/or jsonlog into log files." +msgstr "Запускає підпроцес записування виводу stderr, csvlog і/або jsonlog до файлів журналу." -#: utils/misc/guc_tables.c:1641 +#: utils/misc/guc_tables.c:1742 msgid "Truncate existing log files of same name during log rotation." msgstr "Скорочувати існуючі файли журналу з тим самим іменем під час обертання журналу." -#: utils/misc/guc_tables.c:1652 +#: utils/misc/guc_tables.c:1752 msgid "Emit information about resource usage in sorting." msgstr "Виводити інформацію про використання ресурсу при сортуванні." -#: utils/misc/guc_tables.c:1666 +#: utils/misc/guc_tables.c:1765 msgid "Generate debugging output for synchronized scanning." msgstr "Створює налагодженні повідомлення для синхронного сканування." -#: utils/misc/guc_tables.c:1681 -msgid "Enable bounded sorting using heap sort." -msgstr "Вмикає обмежене сортування використовуючи динамічне сортування." +#: utils/misc/guc_tables.c:1780 +msgid "Enables bounded sorting using heap sort." +msgstr "Вмикає обмежене сортування з використанням сортування купою." -#: utils/misc/guc_tables.c:1694 +#: utils/misc/guc_tables.c:1793 msgid "Emit WAL-related debugging output." msgstr "Виводити налагодженні повідомлення пов'язані з WAL." -#: utils/misc/guc_tables.c:1706 +#: utils/misc/guc_tables.c:1805 msgid "Shows whether datetimes are integer based." msgstr "Показує, чи базуються дати на цілих числах." -#: utils/misc/guc_tables.c:1717 +#: utils/misc/guc_tables.c:1816 msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive." msgstr "Встановлює обробку без урахування регістру імен користувачів Kerberos і GSSAPI." -#: utils/misc/guc_tables.c:1727 +#: utils/misc/guc_tables.c:1826 msgid "Sets whether GSSAPI delegation should be accepted from the client." msgstr "Встановлює чи слід приймати делегацію GSSAPI від клієнта." -#: utils/misc/guc_tables.c:1737 +#: utils/misc/guc_tables.c:1836 msgid "Warn about backslash escapes in ordinary string literals." msgstr "Попередження про спецсимволи \"\\\" в звичайних рядках." -#: utils/misc/guc_tables.c:1747 +#: utils/misc/guc_tables.c:1846 msgid "Causes '...' strings to treat backslashes literally." msgstr "Вмикає буквальну обробку символів \"\\\" в рядках '...'." -#: utils/misc/guc_tables.c:1758 -msgid "Enable synchronized sequential scans." -msgstr "Вмикає синхронізацію послідовного сканування." +#: utils/misc/guc_tables.c:1857 +msgid "Enables synchronized sequential scans." +msgstr "Вмикає синхронізовані послідовні сканування." -#: utils/misc/guc_tables.c:1768 +#: utils/misc/guc_tables.c:1867 msgid "Sets whether to include or exclude transaction with recovery target." msgstr "Встановлює, включати чи виключати транзакції з метою відновлення." -#: utils/misc/guc_tables.c:1778 +#: utils/misc/guc_tables.c:1877 msgid "Starts the WAL summarizer process to enable incremental backup." msgstr "Запускає процес підсумовування WAL, щоб увімкнути інкрементне резервне копіювання." -#: utils/misc/guc_tables.c:1788 +#: utils/misc/guc_tables.c:1887 msgid "Allows connections and queries during recovery." msgstr "Дозволяє підключення і запити під час відновлення." -#: utils/misc/guc_tables.c:1798 +#: utils/misc/guc_tables.c:1897 msgid "Allows feedback from a hot standby to the primary that will avoid query conflicts." msgstr "Дозволяє зворотній зв'язок серверу hot standby з основним для уникнення конфліктів запитів." -#: utils/misc/guc_tables.c:1808 +#: utils/misc/guc_tables.c:1907 msgid "Shows whether hot standby is currently active." msgstr "Показує, чи hot standby наразі активний." -#: utils/misc/guc_tables.c:1819 +#: utils/misc/guc_tables.c:1918 msgid "Allows modifications of the structure of system tables." msgstr "Дозволяє модифікації структури системних таблиць." -#: utils/misc/guc_tables.c:1830 +#: utils/misc/guc_tables.c:1929 msgid "Disables reading from system indexes." msgstr "Вимикає читання з системних індексів." -#: utils/misc/guc_tables.c:1831 +#: utils/misc/guc_tables.c:1930 msgid "It does not prevent updating the indexes, so it is safe to use. The worst consequence is slowness." msgstr "Це не забороняє оновлення індексів, тож дана поведінка безпечна. Найгірший наслідок це сповільнення." -#: utils/misc/guc_tables.c:1842 +#: utils/misc/guc_tables.c:1941 msgid "Allows tablespaces directly inside pg_tblspc, for testing." msgstr "Дозволяє табличні простори безпосередньо всередині pg_tblspc, для тестування." -#: utils/misc/guc_tables.c:1853 +#: utils/misc/guc_tables.c:1952 msgid "Enables backward compatibility mode for privilege checks on large objects." msgstr "Вмикає режим зворотньої сумісності при перевірці прав для великих об'єктів." -#: utils/misc/guc_tables.c:1854 +#: utils/misc/guc_tables.c:1953 msgid "Skips privilege checks when reading or modifying large objects, for compatibility with PostgreSQL releases prior to 9.0." msgstr "Пропускає перевірки прав при читанні або зміненні великих об'єктів, для сумісності з версіями PostgreSQL до 9.0." -#: utils/misc/guc_tables.c:1864 +#: utils/misc/guc_tables.c:1963 msgid "When generating SQL fragments, quote all identifiers." msgstr "Генеруючи SQL-фрагменти, включати всі ідентифікатори в лапки." -#: utils/misc/guc_tables.c:1874 +#: utils/misc/guc_tables.c:1973 msgid "Shows whether data checksums are turned on for this cluster." msgstr "Показує, чи ввімкнена контрольна сума даних для цього кластеру." -#: utils/misc/guc_tables.c:1885 +#: utils/misc/guc_tables.c:1984 msgid "Add sequence number to syslog messages to avoid duplicate suppression." msgstr "Додає послідовне число до повідомлень syslog, щоб уникнути ігнорування дублікатів." -#: utils/misc/guc_tables.c:1895 +#: utils/misc/guc_tables.c:1994 msgid "Split messages sent to syslog by lines and to fit into 1024 bytes." msgstr "Розділяє повідомлення, які передаються в syslog, рядками розміром не більше 1024 байт." -#: utils/misc/guc_tables.c:1905 +#: utils/misc/guc_tables.c:2004 msgid "Controls whether Gather and Gather Merge also run subplans." msgstr "Визначає, чи вузли зібрання і зібрання об'єднанням також виконають підплани." -#: utils/misc/guc_tables.c:1906 +#: utils/misc/guc_tables.c:2005 msgid "Should gather nodes also run subplans or just gather tuples?" msgstr "Чи повинні вузли збірки також виконувати підплани або тільки збирати кортежі?" -#: utils/misc/guc_tables.c:1916 +#: utils/misc/guc_tables.c:2015 msgid "Allow JIT compilation." msgstr "Дозволити JIT-компіляцію." -#: utils/misc/guc_tables.c:1927 +#: utils/misc/guc_tables.c:2026 msgid "Register JIT-compiled functions with debugger." msgstr "Зареєструйте функції JIT-compiled за допомогою налагоджувача." -#: utils/misc/guc_tables.c:1944 +#: utils/misc/guc_tables.c:2043 msgid "Write out LLVM bitcode to facilitate JIT debugging." msgstr "Виводити бітовий код LLVM для полегшення налагодження JIT." -#: utils/misc/guc_tables.c:1955 +#: utils/misc/guc_tables.c:2054 msgid "Allow JIT compilation of expressions." msgstr "Дозволити JIT-компіляцію виразів." -#: utils/misc/guc_tables.c:1966 +#: utils/misc/guc_tables.c:2065 msgid "Register JIT-compiled functions with perf profiler." msgstr "Зареєструйте функції JIT-compiled за допомогою профілювальника perf." -#: utils/misc/guc_tables.c:1983 +#: utils/misc/guc_tables.c:2082 msgid "Allow JIT compilation of tuple deforming." msgstr "Дозволити JIT-компіляцію перетворення кортежів." -#: utils/misc/guc_tables.c:1994 +#: utils/misc/guc_tables.c:2093 msgid "Whether to continue running after a failure to sync data files." msgstr "Чи продовжувати виконання після помилки синхронізації файлів даних на диску." -#: utils/misc/guc_tables.c:2003 +#: utils/misc/guc_tables.c:2102 msgid "Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured." msgstr "Встановлює чи повинен одержувач WAL створити тимчасовий слот реплікації, якщо постійний слот не налаштований." -#: utils/misc/guc_tables.c:2012 +#: utils/misc/guc_tables.c:2111 msgid "Enables event triggers." msgstr "Вмикає тригери подій." -#: utils/misc/guc_tables.c:2013 +#: utils/misc/guc_tables.c:2112 msgid "When enabled, event triggers will fire for all applicable statements." msgstr "Якщо увімкнено, тригери подій спрацьовуватимуть для всіх застосовних операторів." -#: utils/misc/guc_tables.c:2022 +#: utils/misc/guc_tables.c:2121 msgid "Enables a physical standby to synchronize logical failover replication slots from the primary server." -msgstr "" +msgstr "Вмикає фізичний резерв для синхронізації логічних слотів реплікації з основним сервером." + +#: utils/misc/guc_tables.c:2130 +msgid "Enables deprecation warnings for MD5 passwords." +msgstr "Вмикає попередження про застарілість паролів MD5." + +#: utils/misc/guc_tables.c:2139 +msgid "Enables vacuum to truncate empty pages at the end of the table." +msgstr "Дозволяє vacuum обрізати порожні сторінки в кінці таблиці." -#: utils/misc/guc_tables.c:2040 +#: utils/misc/guc_tables.c:2157 msgid "Sets the amount of time to wait before forcing a switch to the next WAL file." msgstr "Встановлює кількість часу очікування перед примусовим переходом на наступний файл WAL." -#: utils/misc/guc_tables.c:2051 +#: utils/misc/guc_tables.c:2159 utils/misc/guc_tables.c:2313 +#: utils/misc/guc_tables.c:2732 utils/misc/guc_tables.c:2743 +#: utils/misc/guc_tables.c:2754 utils/misc/guc_tables.c:2765 +#: utils/misc/guc_tables.c:2776 +msgid "0 disables the timeout." +msgstr "0 вимикає тайм-аут." + +#: utils/misc/guc_tables.c:2168 msgid "Sets the amount of time to wait after authentication on connection startup." msgstr "Встановлює кількість часу для очікування після автенифікації під час запуску з'єднання." -#: utils/misc/guc_tables.c:2053 utils/misc/guc_tables.c:2780 +#: utils/misc/guc_tables.c:2170 utils/misc/guc_tables.c:2908 msgid "This allows attaching a debugger to the process." msgstr "Це дозволяє підключити налагоджувач до процесу." -#: utils/misc/guc_tables.c:2062 +#: utils/misc/guc_tables.c:2179 msgid "Sets the default statistics target." msgstr "Встановлює мету статистики за замовчуванням." -#: utils/misc/guc_tables.c:2063 +#: utils/misc/guc_tables.c:2180 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_tables.c:2072 +#: utils/misc/guc_tables.c:2189 msgid "Sets the FROM-list size beyond which subqueries are not collapsed." msgstr "Встановлює розмір для списку FROM, при перевищені котрого вкладені запити не згортаються." -#: utils/misc/guc_tables.c:2074 +#: utils/misc/guc_tables.c:2191 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_tables.c:2085 +#: utils/misc/guc_tables.c:2202 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened." msgstr "Встановлює розмір для списку FROM, при перевищенні котрого конструкції JOIN не подаються у вигляді рядка." -#: utils/misc/guc_tables.c:2087 +#: utils/misc/guc_tables.c:2204 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_tables.c:2098 +#: utils/misc/guc_tables.c:2215 msgid "Sets the threshold of FROM items beyond which GEQO is used." msgstr "Встановлює граничне значення для елементів FROM, при перевищенні котрого використовується GEQO." -#: utils/misc/guc_tables.c:2108 +#: utils/misc/guc_tables.c:2225 msgid "GEQO: effort is used to set the default for other GEQO parameters." msgstr "GEQO: зусилля використовувались щоб встановити значення за замовчуванням для інших параметрів GEQO." -#: utils/misc/guc_tables.c:2118 +#: utils/misc/guc_tables.c:2235 msgid "GEQO: number of individuals in the population." msgstr "GEQO: кількість користувачів у популяції." -#: utils/misc/guc_tables.c:2119 utils/misc/guc_tables.c:2129 -msgid "Zero selects a suitable default value." -msgstr "Нуль вибирає придатне значення за замовчуванням." +#: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 +msgid "0 means use a suitable default value." +msgstr "0 означає використання відповідного значення за замовчуванням." -#: utils/misc/guc_tables.c:2128 +#: utils/misc/guc_tables.c:2245 msgid "GEQO: number of iterations of the algorithm." msgstr "GEQO: кількість ітерацій в алгоритмі." -#: utils/misc/guc_tables.c:2140 +#: utils/misc/guc_tables.c:2257 msgid "Sets the time to wait on a lock before checking for deadlock." msgstr "Встановлює час очікування в блокуванні до перевірки на взаємне блокування." -#: utils/misc/guc_tables.c:2151 +#: utils/misc/guc_tables.c:2268 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data." msgstr "Встановлює максимальну затримку до скасування запитів, коли hot standby сервер обробляє архівні дані WAL." -#: utils/misc/guc_tables.c:2162 +#: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 +msgid "-1 means wait forever." +msgstr "-1 означає чекати нескінченно." + +#: utils/misc/guc_tables.c:2279 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data." msgstr "Встановлює максимальну затримку до скасування запитів, коли hot standby сервер обробляє дані WAL з потоку." -#: utils/misc/guc_tables.c:2173 +#: utils/misc/guc_tables.c:2290 msgid "Sets the minimum delay for applying changes during recovery." msgstr "Встановлює мінімальну затримку для застосування змін під час відновлення." -#: utils/misc/guc_tables.c:2184 +#: utils/misc/guc_tables.c:2301 msgid "Sets the maximum interval between WAL receiver status reports to the sending server." msgstr "Встановлює максимальний інтервал між звітами про стан одержувачів WAL для серверу надсилання." -#: utils/misc/guc_tables.c:2195 +#: utils/misc/guc_tables.c:2312 msgid "Sets the maximum wait time to receive data from the sending server." msgstr "Встановлює максимальний час очікування для отримання даних з серверу надсилання." -#: utils/misc/guc_tables.c:2206 +#: utils/misc/guc_tables.c:2323 msgid "Sets the maximum number of concurrent connections." msgstr "Встановлює максимальну кілкість паралельних підключень." -#: utils/misc/guc_tables.c:2217 +#: utils/misc/guc_tables.c:2334 msgid "Sets the number of connection slots reserved for superusers." msgstr "Встановлює кількість зарезервованих слотів підключень для суперкористувачів." -#: utils/misc/guc_tables.c:2227 +#: utils/misc/guc_tables.c:2344 msgid "Sets the number of connection slots reserved for roles with privileges of pg_use_reserved_connections." msgstr "Встановлює кількість слотів підключення, зарезервованих для ролей з правами pg_use_reserved_connections." -#: utils/misc/guc_tables.c:2238 +#: utils/misc/guc_tables.c:2355 msgid "Amount of dynamic shared memory reserved at startup." msgstr "Кількість динамічної спільної пам'яті, зарезервованої під час запуску." -#: utils/misc/guc_tables.c:2253 +#: utils/misc/guc_tables.c:2370 msgid "Sets the number of shared memory buffers used by the server." msgstr "Встановлює кількість буферів спільної пам'яті, використовуваних сервером." -#: utils/misc/guc_tables.c:2264 +#: utils/misc/guc_tables.c:2381 msgid "Sets the buffer pool size for VACUUM, ANALYZE, and autovacuum." msgstr "Встановлює розмір буферного пулу для VACUUM, ANALYZE та автоочистки." -#: utils/misc/guc_tables.c:2275 +#: utils/misc/guc_tables.c:2392 msgid "Shows the size of the server's main shared memory area (rounded up to the nearest MB)." msgstr "Показує розмір основної спільної пам'яті сервера (округлення до найближчого МБ)." -#: utils/misc/guc_tables.c:2286 +#: utils/misc/guc_tables.c:2403 msgid "Shows the number of huge pages needed for the main shared memory area." msgstr "Показує кількість величезних сторінок, потрібних для основної області спільної пам'яті." -#: utils/misc/guc_tables.c:2287 -msgid "-1 indicates that the value could not be determined." -msgstr "-1 вказує на те, що значення не може бути визначене." +#: utils/misc/guc_tables.c:2404 +msgid "-1 means huge pages are not supported." +msgstr "-1 означає, що величезні сторінки не підтримуються." -#: utils/misc/guc_tables.c:2297 +#: utils/misc/guc_tables.c:2414 +msgid "Shows the number of semaphores required for the server." +msgstr "Показує кількість семафорів, необхідних для сервера." + +#: utils/misc/guc_tables.c:2425 msgid "Sets the size of the dedicated buffer pool used for the commit timestamp cache." -msgstr "" +msgstr "Встановлює розмір спеціального буфера, що використовується для кешу часів комітів." -#: utils/misc/guc_tables.c:2298 utils/misc/guc_tables.c:2353 -#: utils/misc/guc_tables.c:2364 -msgid "Specify 0 to have this value determined as a fraction of shared_buffers." -msgstr "" +#: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 +#: utils/misc/guc_tables.c:2492 +msgid "0 means use a fraction of \"shared_buffers\"." +msgstr "0 означає використання частини від \"shared_buffers\"." -#: utils/misc/guc_tables.c:2308 +#: utils/misc/guc_tables.c:2436 msgid "Sets the size of the dedicated buffer pool used for the MultiXact member cache." -msgstr "" +msgstr "Встановлює розмір спеціального буфера, що використовується для кешу членів MultiXact." -#: utils/misc/guc_tables.c:2319 +#: utils/misc/guc_tables.c:2447 msgid "Sets the size of the dedicated buffer pool used for the MultiXact offset cache." -msgstr "" +msgstr "Встановлює розмір спеціального буфера, що використовується для кешу зсувів MultiXact." -#: utils/misc/guc_tables.c:2330 +#: utils/misc/guc_tables.c:2458 msgid "Sets the size of the dedicated buffer pool used for the LISTEN/NOTIFY message cache." -msgstr "" +msgstr "Встановлює розмір спеціального буфера, що використовується для кешу повідомлень LISTEN/NOTIFY." -#: utils/misc/guc_tables.c:2341 +#: utils/misc/guc_tables.c:2469 msgid "Sets the size of the dedicated buffer pool used for the serializable transaction cache." -msgstr "" +msgstr "Встановлює розмір спеціального буфера, що використовується для кешу серіалізованих транзакцій." -#: utils/misc/guc_tables.c:2352 +#: utils/misc/guc_tables.c:2480 msgid "Sets the size of the dedicated buffer pool used for the subtransaction cache." -msgstr "" +msgstr "Встановлює розмір спеціального буфера, що використовується для кешу субтранзакцій." -#: utils/misc/guc_tables.c:2363 +#: utils/misc/guc_tables.c:2491 msgid "Sets the size of the dedicated buffer pool used for the transaction status cache." -msgstr "" +msgstr "Встановлює розмір спеціального буфера, що використовується для кешу статусів транзакцій." -#: utils/misc/guc_tables.c:2374 +#: utils/misc/guc_tables.c:2502 msgid "Sets the maximum number of temporary buffers used by each session." msgstr "Встановлює максимальну кількість використовуваних тимчасових буферів, для кожного сеансу." -#: utils/misc/guc_tables.c:2385 +#: utils/misc/guc_tables.c:2513 msgid "Sets the TCP port the server listens on." msgstr "Встановлює TCP-порт для роботи серверу." -#: utils/misc/guc_tables.c:2395 +#: utils/misc/guc_tables.c:2523 msgid "Sets the access permissions of the Unix-domain socket." msgstr "Встановлює дозволи на доступ для Unix-сокету." -#: utils/misc/guc_tables.c:2396 +#: utils/misc/guc_tables.c:2524 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-сокетів використовується звичний набір дозволів, як у файлових системах Unix. Очікується, що значення параметра вказується у формі, яка прийнята для системних викликів chmod і umask. (Щоб використати звичний вісімковий формат, додайте в початок 0 (нуль).)" -#: utils/misc/guc_tables.c:2410 +#: utils/misc/guc_tables.c:2538 msgid "Sets the file permissions for log files." msgstr "Встановлює права дозволу для файлів журналу." -#: utils/misc/guc_tables.c:2411 +#: utils/misc/guc_tables.c:2539 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_tables.c:2425 +#: utils/misc/guc_tables.c:2553 msgid "Shows the mode of the data directory." msgstr "Показує режим каталогу даних." -#: utils/misc/guc_tables.c:2426 +#: utils/misc/guc_tables.c:2554 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_tables.c:2439 +#: utils/misc/guc_tables.c:2567 msgid "Sets the maximum memory to be used for query workspaces." msgstr "Встановлює максимальний об'єм пам'яті для робочих просторів запитів." -#: utils/misc/guc_tables.c:2440 +#: utils/misc/guc_tables.c:2568 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_tables.c:2457 +#: utils/misc/guc_tables.c:2585 msgid "Sets the maximum memory to be used for maintenance operations." msgstr "Встановлює максимальний об'єм пам'яті для операцій по обслуговуванню." -#: utils/misc/guc_tables.c:2458 +#: utils/misc/guc_tables.c:2586 msgid "This includes operations such as VACUUM and CREATE INDEX." msgstr "Це включає такі операції як VACUUM і CREATE INDEX." -#: utils/misc/guc_tables.c:2468 +#: utils/misc/guc_tables.c:2596 msgid "Sets the maximum memory to be used for logical decoding." msgstr "Встановлює максимальний об'єм пам'яті для логічного декодування." -#: utils/misc/guc_tables.c:2469 +#: utils/misc/guc_tables.c:2597 msgid "This much memory can be used by each internal reorder buffer before spilling to disk." msgstr "Ця велика кількість пам'яті може бути використана кожним внутрішнім перевпорядковуючим буфером перед записом на диск." -#: utils/misc/guc_tables.c:2485 +#: utils/misc/guc_tables.c:2613 msgid "Sets the maximum stack depth, in kilobytes." msgstr "Встановлює максимальну глибину стека, в КБ." -#: utils/misc/guc_tables.c:2496 +#: utils/misc/guc_tables.c:2624 msgid "Limits the total size of all temporary files used by each process." msgstr "Обмежує загальний розмір всіх тимчасових файлів, які використовуються кожним процесом." -#: utils/misc/guc_tables.c:2497 +#: utils/misc/guc_tables.c:2625 msgid "-1 means no limit." msgstr "-1 вимикає обмеження." -#: utils/misc/guc_tables.c:2507 +#: utils/misc/guc_tables.c:2635 msgid "Vacuum cost for a page found in the buffer cache." msgstr "Вартість очистки для сторінки, яка була знайдена в буферному кеші." -#: utils/misc/guc_tables.c:2517 +#: utils/misc/guc_tables.c:2645 msgid "Vacuum cost for a page not found in the buffer cache." msgstr "Вартість очистки для сторінки, яка не була знайдена в буферному кеші." -#: utils/misc/guc_tables.c:2527 +#: utils/misc/guc_tables.c:2655 msgid "Vacuum cost for a page dirtied by vacuum." msgstr "Вартість очистки для сторінки, яка не була \"брудною\"." -#: utils/misc/guc_tables.c:2537 +#: utils/misc/guc_tables.c:2665 msgid "Vacuum cost amount available before napping." msgstr "Кількість доступних витрат вакууму перед від'єднанням." -#: utils/misc/guc_tables.c:2547 +#: utils/misc/guc_tables.c:2675 msgid "Vacuum cost amount available before napping, for autovacuum." msgstr "Кількість доступних витрат вакууму перед від'єднанням, для автовакууму." -#: utils/misc/guc_tables.c:2557 -msgid "Sets the maximum number of simultaneously open files for each server process." -msgstr "Встановлює максимальну кількість одночасно відкритих файлів для кожного процесу." +#: utils/misc/guc_tables.c:2676 +msgid "-1 means use \"vacuum_cost_limit\"." +msgstr "-1 означає використання \"vacuum_cost_limit\"." -#: utils/misc/guc_tables.c:2570 +#: utils/misc/guc_tables.c:2685 +msgid "Sets the maximum number of files each server process is allowed to open simultaneously." +msgstr "Встановлює максимальну кількість файлів, які може відкрити одночасно кожен серверний процес." + +#: utils/misc/guc_tables.c:2698 msgid "Sets the maximum number of simultaneously prepared transactions." msgstr "Встановлює максимальну кількість одночасно підготовлених транзакцій." -#: utils/misc/guc_tables.c:2581 +#: utils/misc/guc_tables.c:2709 msgid "Sets the minimum OID of tables for tracking locks." msgstr "Встановлює мінімальний OID таблиць, для яких відстежуються блокування." -#: utils/misc/guc_tables.c:2582 +#: utils/misc/guc_tables.c:2710 msgid "Is used to avoid output on system tables." msgstr "Використовується для уникнення системних таблиць." -#: utils/misc/guc_tables.c:2591 +#: utils/misc/guc_tables.c:2719 msgid "Sets the OID of the table with unconditionally lock tracing." msgstr "Встановлює OID таблиці для безумовного трасування блокувань." -#: utils/misc/guc_tables.c:2603 +#: utils/misc/guc_tables.c:2731 msgid "Sets the maximum allowed duration of any statement." msgstr "Встановлює максимальну тривалість для будь-якого оператору." -#: utils/misc/guc_tables.c:2604 utils/misc/guc_tables.c:2615 -#: utils/misc/guc_tables.c:2626 utils/misc/guc_tables.c:2637 -#: utils/misc/guc_tables.c:2648 -msgid "A value of 0 turns off the timeout." -msgstr "Значення 0 (нуль) вимикає тайм-аут." - -#: utils/misc/guc_tables.c:2614 +#: utils/misc/guc_tables.c:2742 msgid "Sets the maximum allowed duration of any wait for a lock." msgstr "Встановлює максимально дозволену тривалість очікування блокувань." -#: utils/misc/guc_tables.c:2625 +#: utils/misc/guc_tables.c:2753 msgid "Sets the maximum allowed idle time between queries, when in a transaction." msgstr "Встановлює максимально дозволений час очікування між запитами під час транзакції." -#: utils/misc/guc_tables.c:2636 +#: utils/misc/guc_tables.c:2764 msgid "Sets the maximum allowed duration of any transaction within a session (not a prepared transaction)." -msgstr "" +msgstr "Встановлює максимально дозволений час будь-якої транзакції в межах сесії (не підготовленої транзакцієї)." -#: utils/misc/guc_tables.c:2647 +#: utils/misc/guc_tables.c:2775 msgid "Sets the maximum allowed idle time between queries, when not in a transaction." msgstr "Встановлює максимально дозволений час очікування між запитами поза транзакцією." -#: utils/misc/guc_tables.c:2658 +#: utils/misc/guc_tables.c:2786 msgid "Minimum age at which VACUUM should freeze a table row." msgstr "Мінімальний вік рядків таблиці, при котрому VACUUM зможе їх закріпити." -#: utils/misc/guc_tables.c:2668 +#: utils/misc/guc_tables.c:2796 msgid "Age at which VACUUM should scan whole table to freeze tuples." msgstr "Вік, при котрому VACUUM повинен сканувати всю таблицю, щоб закріпити кортежі." -#: utils/misc/guc_tables.c:2678 +#: utils/misc/guc_tables.c:2806 msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row." msgstr "Мінімальний вік, при котрому VACUUM повинен закріпити MultiXactId в рядку таблиці." -#: utils/misc/guc_tables.c:2688 +#: utils/misc/guc_tables.c:2816 msgid "Multixact age at which VACUUM should scan whole table to freeze tuples." msgstr "Вік Multixact, при котрому VACUUM повинен сканувати всю таблицю, щоб закріпити кортежі." -#: utils/misc/guc_tables.c:2698 +#: utils/misc/guc_tables.c:2826 msgid "Age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Вік, у якому VACUUM повинен спрацювати безпечно, щоб уникнути зациклення." -#: utils/misc/guc_tables.c:2707 +#: utils/misc/guc_tables.c:2835 msgid "Multixact age at which VACUUM should trigger failsafe to avoid a wraparound outage." msgstr "Вік Multixact, у якому VACUUM повинен спрацювати безпечно, щоб уникнути зациклення." -#: utils/misc/guc_tables.c:2720 +#: utils/misc/guc_tables.c:2848 msgid "Sets the maximum number of locks per transaction." msgstr "Встановлює максимальну кілкість блокувань на транзакцію." -#: utils/misc/guc_tables.c:2721 +#: utils/misc/guc_tables.c:2849 msgid "The shared lock table is sized on the assumption that at most \"max_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." -msgstr "" +msgstr "Розмір спільної таблиці блокування визначається з припущення, що в будь-який момент часу потрібно заблокувати не більше \"max_locks_per_transaction\" об'єктів на один серверний процес або підготовлену транзакцію." -#: utils/misc/guc_tables.c:2732 +#: utils/misc/guc_tables.c:2860 msgid "Sets the maximum number of predicate locks per transaction." msgstr "Встановлює максимальну кількість предикатних блокувань на транзакцію." -#: utils/misc/guc_tables.c:2733 +#: utils/misc/guc_tables.c:2861 msgid "The shared predicate lock table is sized on the assumption that at most \"max_pred_locks_per_transaction\" objects per server process or prepared transaction will need to be locked at any one time." -msgstr "" +msgstr "Розмір спільної таблиці блокування предикатів визначається з припущення, що за один раз потрібно заблокувати не більше \"max_pred_locks_per_transaction\" об'єктів на один серверний процес або підготовлену транзакцію." -#: utils/misc/guc_tables.c:2744 +#: utils/misc/guc_tables.c:2872 msgid "Sets the maximum number of predicate-locked pages and tuples per relation." msgstr "Встановлює максимальну кількість сторінок і кортежів, блокованих предикатними блокуваннями в одному відношенні." -#: utils/misc/guc_tables.c:2745 +#: utils/misc/guc_tables.c:2873 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_tables.c:2755 +#: utils/misc/guc_tables.c:2883 msgid "Sets the maximum number of predicate-locked tuples per page." msgstr "Встановлює максимальну кількість кортежів, блокованих предикатними блокуваннями в одній сторінці." -#: utils/misc/guc_tables.c:2756 +#: utils/misc/guc_tables.c:2884 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_tables.c:2766 +#: utils/misc/guc_tables.c:2894 msgid "Sets the maximum allowed time to complete client authentication." msgstr "Встановлює максимально допустимий час, за котрий клієнт повинен завершити автентифікацію." -#: utils/misc/guc_tables.c:2778 +#: utils/misc/guc_tables.c:2906 msgid "Sets the amount of time to wait before authentication on connection startup." msgstr "Встановлює кількість часу для очікування перед автенифікацією під час запуску з'єднання." -#: utils/misc/guc_tables.c:2790 +#: utils/misc/guc_tables.c:2918 msgid "Sets the maximum number of allocated pages for NOTIFY / LISTEN queue." msgstr "Встановлює максимальну кількість виділених сторінок для черги NOTIFY / LISTEN." -#: utils/misc/guc_tables.c:2800 +#: utils/misc/guc_tables.c:2928 msgid "Buffer size for reading ahead in the WAL during recovery." msgstr "Розмір буфера для читання в WAL під час відновлення." -#: utils/misc/guc_tables.c:2801 +#: utils/misc/guc_tables.c:2929 msgid "Maximum distance to read ahead in the WAL to prefetch referenced data blocks." msgstr "Максимальна відстань до читання WAL, для попереднього отримання блоків, на які посилаються." -#: utils/misc/guc_tables.c:2811 +#: utils/misc/guc_tables.c:2939 msgid "Sets the size of WAL files held for standby servers." msgstr "Встановлює розмір WAL файлів, які потрібно зберігати для резервних серверів." -#: utils/misc/guc_tables.c:2822 +#: utils/misc/guc_tables.c:2950 msgid "Sets the minimum size to shrink the WAL to." msgstr "Встановлює мінімальний розмір WAL при стисканні." -#: utils/misc/guc_tables.c:2834 +#: utils/misc/guc_tables.c:2962 msgid "Sets the WAL size that triggers a checkpoint." msgstr "Встановлює розмір WAL, при котрому ініціюється контрольна точка." -#: utils/misc/guc_tables.c:2846 +#: utils/misc/guc_tables.c:2974 msgid "Sets the maximum time between automatic WAL checkpoints." msgstr "Встановлює максимальний час між автоматичними контрольними точками WAL." -#: utils/misc/guc_tables.c:2857 +#: utils/misc/guc_tables.c:2985 msgid "Sets the maximum time before warning if checkpoints triggered by WAL volume happen too frequently." msgstr "Встановлює максимальний час перед попередженням, якщо контрольні точки WAL відбуваються занадто часто." -#: utils/misc/guc_tables.c:2859 -msgid "Write a message to the server log if checkpoints caused by the filling of WAL segment files happen more frequently than this amount of time. Zero turns off the warning." -msgstr "Записує в журнал серверу повідомлення, якщо контрольні точки, викликані переповненням файлів сегментів контрольних точок, з'являються частіше ніж цей проміжок часу. Нуль вимикає попередження." +#: utils/misc/guc_tables.c:2987 +msgid "Write a message to the server log if checkpoints caused by the filling of WAL segment files happen more frequently than this amount of time. 0 disables the warning." +msgstr "Записує повідомлення в журнал сервера, якщо контрольні точки, спричинені заповненням сегментів WAL, відбуваються частіше, ніж ця кількість часу. 0 вимикає попередження." -#: utils/misc/guc_tables.c:2872 utils/misc/guc_tables.c:3090 -#: utils/misc/guc_tables.c:3144 +#: utils/misc/guc_tables.c:3000 utils/misc/guc_tables.c:3230 +#: utils/misc/guc_tables.c:3322 msgid "Number of pages after which previously performed writes are flushed to disk." msgstr "Число сторінок, після досягнення якого раніше виконані операції запису скидаються на диск." -#: utils/misc/guc_tables.c:2883 +#: utils/misc/guc_tables.c:3001 utils/misc/guc_tables.c:3231 +#: utils/misc/guc_tables.c:3323 +msgid "0 disables forced writeback." +msgstr "0 вимикає примусовий зворотний запис." + +#: utils/misc/guc_tables.c:3011 msgid "Sets the number of disk-page buffers in shared memory for WAL." msgstr "Встановлює кількість буферів дискових сторінок в спільній пам'яті для WAL." -#: utils/misc/guc_tables.c:2884 -msgid "Specify -1 to have this value determined as a fraction of shared_buffers." -msgstr "" +#: utils/misc/guc_tables.c:3012 +msgid "-1 means use a fraction of \"shared_buffers\"." +msgstr "-1 означає використовувати частину \"shared_buffers\"." -#: utils/misc/guc_tables.c:2894 +#: utils/misc/guc_tables.c:3022 msgid "Time between WAL flushes performed in the WAL writer." msgstr "Час між скиданням WAL в процесі, записуючого WAL." -#: utils/misc/guc_tables.c:2905 +#: utils/misc/guc_tables.c:3033 msgid "Amount of WAL written out by WAL writer that triggers a flush." msgstr "Обсяг WAL, оброблений пишучим WAL процесом, при котрому ініціюється скидання журналу на диск." -#: utils/misc/guc_tables.c:2916 +#: utils/misc/guc_tables.c:3044 msgid "Minimum size of new file to fsync instead of writing WAL." msgstr "Мінімальний розмір нового файлу для fsync замість записування WAL." -#: utils/misc/guc_tables.c:2927 +#: utils/misc/guc_tables.c:3055 msgid "Sets the maximum number of simultaneously running WAL sender processes." msgstr "Встановлює максимальну кількість одночасно працюючих процесів передачі WAL." -#: utils/misc/guc_tables.c:2938 +#: utils/misc/guc_tables.c:3066 msgid "Sets the maximum number of simultaneously defined replication slots." msgstr "Встановлює максимальну кількість одночасно визначених слотів реплікації." -#: utils/misc/guc_tables.c:2948 +#: utils/misc/guc_tables.c:3076 msgid "Sets the maximum WAL size that can be reserved by replication slots." msgstr "Встановлює максимальний розмір WAL, який може бути зарезервований слотами реплікації." -#: utils/misc/guc_tables.c:2949 -msgid "Replication slots will be marked as failed, and segments released for deletion or recycling, if this much space is occupied by WAL on disk." -msgstr "Слоти реплікації будуть позначені як невдалі, і розблоковані сегменти для видалення або переробки, якщо цю кількість місця на диску займає WAL." +#: utils/misc/guc_tables.c:3077 +msgid "Replication slots will be marked as failed, and segments released for deletion or recycling, if this much space is occupied by WAL on disk. -1 means no maximum." +msgstr "Слоти реплікації будуть позначені як невдалі, а сегменти звільнені для видалення чи переробки, якщо стільки місця зайнято WAL на диску. -1 означає відсутність максимуму." -#: utils/misc/guc_tables.c:2961 +#: utils/misc/guc_tables.c:3089 msgid "Sets the maximum time to wait for WAL replication." msgstr "Встановлює максимальний час очікування реплікації WAL." -#: utils/misc/guc_tables.c:2972 +#: utils/misc/guc_tables.c:3100 +msgid "Sets the duration a replication slot can remain idle before it is invalidated." +msgstr "Встановлює тривалість, протягом якої слот реплікації може залишатися неактивним перед визнанням недійсним." + +#: utils/misc/guc_tables.c:3112 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk." msgstr "Встановлює затримку в мілісекундах між затвердженням транзакцій і скиданням WAL на диск." -#: utils/misc/guc_tables.c:2984 +#: utils/misc/guc_tables.c:3124 msgid "Sets the minimum number of concurrent open transactions required before performing \"commit_delay\"." -msgstr "" +msgstr "Встановлює мінімальну кількість одночасно відкритих транзакцій, необхідних до виконання \"commit_delay\"." -#: utils/misc/guc_tables.c:2995 +#: utils/misc/guc_tables.c:3135 msgid "Sets the number of digits displayed for floating-point values." msgstr "Встановлює кількість виведених чисел для значень з плаваючою точкою." -#: utils/misc/guc_tables.c:2996 +#: utils/misc/guc_tables.c:3136 msgid "This affects real, double precision, and geometric data types. A zero or negative parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate). Any value greater than zero selects precise output mode." msgstr "Це впливає на типи реальних, подвійної точності та геометричних даних. Нульове або від'ємне значення параметру додається до стандартної кількості цифр (FLT_DIG або DBL_DIG у відповідних випадках). Будь-яке значення більше нуля, обирає точний режим виводу." -#: utils/misc/guc_tables.c:3008 -msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by log_statement_sample_rate." -msgstr "Встановлює мінімальний час виконання, понад якого вибірка тверджень буде записуватись. Вибірка визначається log_statement_sample_rate." +#: utils/misc/guc_tables.c:3148 +msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by \"log_statement_sample_rate\"." +msgstr "Встановлює мінімальний час виконання, понад яким зразок запитів буде записуватися в журнал. Відбір визначається \"log_statement_sample_rate\"." -#: utils/misc/guc_tables.c:3011 -msgid "Zero logs a sample of all queries. -1 turns this feature off." -msgstr "При 0 (нуль) фіксує зразок всіх запитів. -1 вимикає цю функцію." +#: utils/misc/guc_tables.c:3151 +msgid "-1 disables sampling. 0 means sample all statements." +msgstr "-1 вимикає відбір. 0 означає відбір всіх операторів." -#: utils/misc/guc_tables.c:3021 +#: utils/misc/guc_tables.c:3161 msgid "Sets the minimum execution time above which all statements will be logged." msgstr "Встановлює мінімальний час виконання, понад якого всі твердження будуть записуватись." -#: utils/misc/guc_tables.c:3023 -msgid "Zero prints all queries. -1 turns this feature off." -msgstr "При 0 (нуль) протоколюються всі запити. -1 вимикає цю функцію." +#: utils/misc/guc_tables.c:3163 +msgid "-1 disables logging statement durations. 0 means log all statement durations." +msgstr "-1 вимикає журналювання тривалості операторів. 0 означає журналювання всієї тривалості операторів." -#: utils/misc/guc_tables.c:3033 +#: utils/misc/guc_tables.c:3173 msgid "Sets the minimum execution time above which autovacuum actions will be logged." msgstr "Встановлює мінімальний час виконання автоочистки, при перевищенні котрого ця дія фіксується в протоколі." -#: utils/misc/guc_tables.c:3035 -msgid "Zero prints all actions. -1 turns autovacuum logging off." -msgstr "При 0 (нуль) протоколюються всі дії автоочистки. -1 вимикає журналювання автоочистки." +#: utils/misc/guc_tables.c:3175 +msgid "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." +msgstr "-1 вимикає журналювання дій автоочистки. 0 означає журналювання всіх дій автоочистки." -#: utils/misc/guc_tables.c:3045 +#: utils/misc/guc_tables.c:3185 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements." msgstr "Встановлює максимальну довжину в байтах даних, що реєструються для значень параметрів під час журналювання операторів." -#: utils/misc/guc_tables.c:3047 utils/misc/guc_tables.c:3059 -msgid "-1 to print values in full." -msgstr "-1 для друку значень в повному вигляді." +#: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 +msgid "-1 means log values in full." +msgstr "-1 означає повне журналювання значень." -#: utils/misc/guc_tables.c:3057 +#: utils/misc/guc_tables.c:3197 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements, on error." msgstr "Встановлює максимальну довжину в байтах, даних, що реєструються для значень параметрів під час журналювання операторів, у разі помилки." -#: utils/misc/guc_tables.c:3069 +#: utils/misc/guc_tables.c:3209 msgid "Background writer sleep time between rounds." msgstr "Час призупинення в процесі фонового запису між підходами." -#: utils/misc/guc_tables.c:3080 +#: utils/misc/guc_tables.c:3220 msgid "Background writer maximum number of LRU pages to flush per round." msgstr "Максимальна кількість LRU-сторінок, які скидаються за один підхід, в процесі фонового запису." -#: utils/misc/guc_tables.c:3103 +#: utils/misc/guc_tables.c:3221 +msgid "0 disables background writing." +msgstr "0 вимикає фонове записування." + +#: utils/misc/guc_tables.c:3243 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem." msgstr "Кількість одночасних запитів, які можуть бути ефективно оброблені дисковою підсистемою." -#: utils/misc/guc_tables.c:3117 +#: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 +msgid "0 disables simultaneous requests." +msgstr "0 вимикає одночасні запити." + +#: utils/misc/guc_tables.c:3257 msgid "A variant of \"effective_io_concurrency\" that is used for maintenance work." -msgstr "" +msgstr "Варіант \"effective_io_concurrency\", що використовується для роботи з обслуговування." + +#: utils/misc/guc_tables.c:3272 +msgid "Server-wide limit that clamps io_combine_limit." +msgstr "Загальносерверне обмеження, що затискає io_combine_limit." -#: utils/misc/guc_tables.c:3132 +#: utils/misc/guc_tables.c:3286 msgid "Limit on the size of data reads and writes." -msgstr "" +msgstr "Обмеження на розмір зчитування та записування." + +#: utils/misc/guc_tables.c:3300 +msgid "Max number of IOs that one process can execute simultaneously." +msgstr "Максимальна кількість вводу/виводу, яку може виконати одночасно один процес." -#: utils/misc/guc_tables.c:3157 +#: utils/misc/guc_tables.c:3312 +msgid "Number of IO worker processes, for io_method=worker." +msgstr "Кількість робочих процесів вводу/виводу, для io_method=worker." + +#: utils/misc/guc_tables.c:3335 msgid "Maximum number of concurrent worker processes." msgstr "Максимальна кількість одночасно працюючих процесів." -#: utils/misc/guc_tables.c:3169 +#: utils/misc/guc_tables.c:3347 msgid "Maximum number of logical replication worker processes." msgstr "Максимальна кількість працюючих процесів логічної реплікації." -#: utils/misc/guc_tables.c:3181 +#: utils/misc/guc_tables.c:3359 msgid "Maximum number of table synchronization workers per subscription." msgstr "Максимальна кількість процесів синхронізації таблиць для однієї підписки." -#: utils/misc/guc_tables.c:3193 +#: utils/misc/guc_tables.c:3371 msgid "Maximum number of parallel apply workers per subscription." msgstr "Максимальна кількість паралельних процесів при підписці на одну підписку." -#: utils/misc/guc_tables.c:3203 +#: utils/misc/guc_tables.c:3383 +msgid "Sets the maximum number of active replication origins." +msgstr "Встановлює максимальну кількість активних джерел реплікації." + +#: utils/misc/guc_tables.c:3393 msgid "Sets the amount of time to wait before forcing log file rotation." msgstr "Встановлює кількість часу для оновлення файлу журналу." -#: utils/misc/guc_tables.c:3215 +#: utils/misc/guc_tables.c:3395 +msgid "0 disables time-based creation of new log files." +msgstr "0 вимикає створення нових файлів журналу на основі часу." + +#: utils/misc/guc_tables.c:3405 msgid "Sets the maximum size a log file can reach before being rotated." msgstr "Встановлює максимальний розмір файлу журналу, якого він може досягнути, до ротації." -#: utils/misc/guc_tables.c:3227 +#: utils/misc/guc_tables.c:3407 +msgid "0 disables size-based creation of new log files." +msgstr "0 вимикає створення нових файлів журналу на основі розміру." + +#: utils/misc/guc_tables.c:3417 msgid "Shows the maximum number of function arguments." msgstr "Показує максимальну кількість аргументів функції." -#: utils/misc/guc_tables.c:3238 +#: utils/misc/guc_tables.c:3428 msgid "Shows the maximum number of index keys." msgstr "Показує максимальну кількість ключів в індексі." -#: utils/misc/guc_tables.c:3249 +#: utils/misc/guc_tables.c:3439 msgid "Shows the maximum identifier length." msgstr "Показує максимальну довжину ідентифікатора." -#: utils/misc/guc_tables.c:3260 +#: utils/misc/guc_tables.c:3450 msgid "Shows the size of a disk block." msgstr "Показує розмір дискового блоку." -#: utils/misc/guc_tables.c:3271 +#: utils/misc/guc_tables.c:3461 msgid "Shows the number of pages per disk file." msgstr "Показує кількість сторінок в одному дисковому файлі." -#: utils/misc/guc_tables.c:3282 +#: utils/misc/guc_tables.c:3472 msgid "Shows the block size in the write ahead log." msgstr "Показує розмір блоку в журналі WAL." -#: utils/misc/guc_tables.c:3293 +#: utils/misc/guc_tables.c:3483 msgid "Sets the time to wait before retrying to retrieve WAL after a failed attempt." msgstr "Встановлює час очікування перед повторною спробою звертання до WAL після невдачі." -#: utils/misc/guc_tables.c:3305 +#: utils/misc/guc_tables.c:3495 msgid "Shows the size of write ahead log segments." msgstr "Показує розмір сегментів WAL." -#: utils/misc/guc_tables.c:3318 +#: utils/misc/guc_tables.c:3508 msgid "Time for which WAL summary files should be kept." msgstr "Час, протягом якого слід зберігати зведені файли WAL." -#: utils/misc/guc_tables.c:3331 +#: utils/misc/guc_tables.c:3509 +msgid "0 disables automatic summary file deletion." +msgstr "0 вимикає автоматичне видалення файлів зведення." + +#: utils/misc/guc_tables.c:3521 msgid "Time to sleep between autovacuum runs." msgstr "Час призупинення між запусками автоочистки." -#: utils/misc/guc_tables.c:3341 +#: utils/misc/guc_tables.c:3531 msgid "Minimum number of tuple updates or deletes prior to vacuum." msgstr "Мінімальна кількість оновлень або видалень кортежів перед очисткою." -#: utils/misc/guc_tables.c:3350 -msgid "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums." -msgstr "Мінімальна кількість вставлених кортежів перед очищенням, або -1 щоб вимкнути очищення після вставки." +#: utils/misc/guc_tables.c:3540 +msgid "Maximum number of tuple updates or deletes prior to vacuum." +msgstr "Максимальна кількість оновлень або видалень кортежів перед очисткою." -#: utils/misc/guc_tables.c:3359 +#: utils/misc/guc_tables.c:3541 +msgid "-1 disables the maximum threshold." +msgstr "-1 вимикає максимальний поріг." + +#: utils/misc/guc_tables.c:3549 +msgid "Minimum number of tuple inserts prior to vacuum." +msgstr "Мінімальна кількість вставлень кортежів перед очисткою." + +#: utils/misc/guc_tables.c:3550 +msgid "-1 disables insert vacuums." +msgstr "-1 вимикає очистку після вставлень." + +#: utils/misc/guc_tables.c:3558 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." msgstr "Мінімальна кількість вставлень, оновлень або видалень кортежів перед аналізом." -#: utils/misc/guc_tables.c:3369 +#: utils/misc/guc_tables.c:3568 msgid "Age at which to autovacuum a table to prevent transaction ID wraparound." msgstr "Вік, при котрому необхідна автоочистка таблиці для запобігання зациклення ID транзакцій." -#: utils/misc/guc_tables.c:3381 +#: utils/misc/guc_tables.c:3580 msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound." msgstr "Вік Multixact, при котрому необхідна автоочистка таблиці для запобігання зациклення multixact." -#: utils/misc/guc_tables.c:3391 +#: utils/misc/guc_tables.c:3590 +msgid "Sets the number of backend slots to allocate for autovacuum workers." +msgstr "Встановлює кількість слотів сервера для виділення працівникам автоочистки." + +#: utils/misc/guc_tables.c:3599 msgid "Sets the maximum number of simultaneously running autovacuum worker processes." msgstr "Встановлює максимальну кількість одночасно працюючих робочих процесів автоочистки." -#: utils/misc/guc_tables.c:3401 +#: utils/misc/guc_tables.c:3609 msgid "Sets the maximum number of parallel processes per maintenance operation." msgstr "Встановлює максимальну кількість паралельних процесів на одну операцію обслуговування." -#: utils/misc/guc_tables.c:3411 +#: utils/misc/guc_tables.c:3619 msgid "Sets the maximum number of parallel processes per executor node." msgstr "Встановлює максимальну кількість паралельних процесів на вузол виконавця." -#: utils/misc/guc_tables.c:3422 +#: utils/misc/guc_tables.c:3630 msgid "Sets the maximum number of parallel workers that can be active at one time." msgstr "Встановлює максимальну кількість паралельних процесів, які можуть бути активні в один момент." -#: utils/misc/guc_tables.c:3433 +#: utils/misc/guc_tables.c:3641 msgid "Sets the maximum memory to be used by each autovacuum worker process." msgstr "Встановлює максимальний об'єм пам'яті для кожного робочого процесу автоочистки." -#: utils/misc/guc_tables.c:3444 +#: utils/misc/guc_tables.c:3642 +msgid "-1 means use \"maintenance_work_mem\"." +msgstr "-1 означає використовувати \"maintenance_work_mem\"." + +#: utils/misc/guc_tables.c:3652 msgid "Time between issuing TCP keepalives." msgstr "Час між видачею TCP keepalives." -#: utils/misc/guc_tables.c:3445 utils/misc/guc_tables.c:3456 -#: utils/misc/guc_tables.c:3580 -msgid "A value of 0 uses the system default." -msgstr "Значення 0 (нуль) використовує систему за замовчуванням." +#: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 +#: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 +msgid "0 means use the system default." +msgstr "0 означає використовувати системне значення за замовчуванням." -#: utils/misc/guc_tables.c:3455 +#: utils/misc/guc_tables.c:3663 msgid "Time between TCP keepalive retransmits." msgstr "Час між повтореннями TCP keepalive." -#: utils/misc/guc_tables.c:3466 +#: utils/misc/guc_tables.c:3674 msgid "SSL renegotiation is no longer supported; this can only be 0." msgstr "Повторне узгодження SSL більше не підтримується; єдине допустиме значення - 0 (нуль)." -#: utils/misc/guc_tables.c:3477 +#: utils/misc/guc_tables.c:3685 msgid "Maximum number of TCP keepalive retransmits." msgstr "Максимальна кількість повторень TCP keepalive." -#: utils/misc/guc_tables.c:3478 -msgid "Number of consecutive keepalive retransmits that can be lost before a connection is considered dead. A value of 0 uses the system default." -msgstr "Кількість послідовних повторень keepalive може бути втрачена, перед тим як підключення буде вважатись \"мертвим\". Значення 0 (нуль) використовує систему за замовчуванням." +#: utils/misc/guc_tables.c:3686 +msgid "Number of consecutive keepalive retransmits that can be lost before a connection is considered dead. 0 means use the system default." +msgstr "Кількість послідовних повторних передач keepalive, які можуть бути втрачені до того, як з'єднання вважатиметься мертвим. 0 означає використання системного значення за замовчуванням." -#: utils/misc/guc_tables.c:3489 +#: utils/misc/guc_tables.c:3697 msgid "Sets the maximum allowed result for exact search by GIN." msgstr "Встановлює максимально допустимий результат для точного пошуку з використанням GIN." -#: utils/misc/guc_tables.c:3500 +#: utils/misc/guc_tables.c:3698 +msgid "0 means no limit." +msgstr "0 означає відсутність обмеження." + +#: utils/misc/guc_tables.c:3707 msgid "Sets the planner's assumption about the total size of the data caches." msgstr "Встановлює планувальнику припустимий загальний розмір кешей даних." -#: utils/misc/guc_tables.c:3501 +#: utils/misc/guc_tables.c:3708 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. Розмір задається в дискових сторінках, звичайно це 8 КБ." -#: utils/misc/guc_tables.c:3512 +#: utils/misc/guc_tables.c:3719 msgid "Sets the minimum amount of table data for a parallel scan." msgstr "Встановлює мінімальний обсяг даних в таблиці для паралельного сканування." -#: utils/misc/guc_tables.c:3513 +#: utils/misc/guc_tables.c:3720 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_tables.c:3523 +#: utils/misc/guc_tables.c:3730 msgid "Sets the minimum amount of index data for a parallel scan." msgstr "Встановлює мінімальний обсяг даних в індексі для паралельного сканування." -#: utils/misc/guc_tables.c:3524 +#: utils/misc/guc_tables.c:3731 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_tables.c:3535 +#: utils/misc/guc_tables.c:3742 msgid "Shows the server version as an integer." msgstr "Показує версію сервера у вигляді цілого числа." -#: utils/misc/guc_tables.c:3546 +#: utils/misc/guc_tables.c:3753 msgid "Log the use of temporary files larger than this number of kilobytes." msgstr "Записує до журналу перевищення тимчасовими файлами заданого розміру в КБ." -#: utils/misc/guc_tables.c:3547 -msgid "Zero logs all files. The default is -1 (turning this feature off)." -msgstr "0 (нуль) фіксує всі файли. -1 вимикає цю функцію (за замовчуванням)." +#: utils/misc/guc_tables.c:3754 +msgid "-1 disables logging temporary files. 0 means log all temporary files." +msgstr "-1 вимикає журналювання тимчасових файлів. 0 означає журналювання всіх тимчасових файлів." -#: utils/misc/guc_tables.c:3557 +#: utils/misc/guc_tables.c:3764 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." msgstr "Встановлює розмір, зарезервований для pg_stat_activity.query, в байтах." -#: utils/misc/guc_tables.c:3568 +#: utils/misc/guc_tables.c:3775 msgid "Sets the maximum size of the pending list for GIN index." msgstr "Встановлює максимальний розмір списку-очікування для GIN-індексу." -#: utils/misc/guc_tables.c:3579 +#: utils/misc/guc_tables.c:3786 msgid "TCP user timeout." msgstr "Таймаут користувача TCP." -#: utils/misc/guc_tables.c:3590 +#: utils/misc/guc_tables.c:3797 msgid "The size of huge page that should be requested." msgstr "Розмір величезної сторінки, яку необхідно затребувати." -#: utils/misc/guc_tables.c:3601 +#: utils/misc/guc_tables.c:3808 msgid "Aggressively flush system caches for debugging purposes." msgstr "Агресивно скидати системні кеші для цілей налагодження." -#: utils/misc/guc_tables.c:3624 +#: utils/misc/guc_tables.c:3809 +msgid "0 means use normal caching behavior." +msgstr "0 означає використання звичайної поведінки кешування." + +#: utils/misc/guc_tables.c:3831 msgid "Sets the time interval between checks for disconnection while running queries." msgstr "Встановлює інтервал часу між перевірками відключення під час виконання запитів." -#: utils/misc/guc_tables.c:3635 +#: utils/misc/guc_tables.c:3832 +msgid "0 disables connection checks." +msgstr "0 вимикає перевірки з'єднання." + +#: utils/misc/guc_tables.c:3842 msgid "Time between progress updates for long-running startup operations." msgstr "Час між оновленнями прогресу для довготриваючих операцій запуску." -#: utils/misc/guc_tables.c:3637 -msgid "0 turns this feature off." -msgstr "0 вимикає цю функцію." +#: utils/misc/guc_tables.c:3844 +msgid "0 disables progress updates." +msgstr "0 вимикає оновлення прогресу." -#: utils/misc/guc_tables.c:3647 +#: utils/misc/guc_tables.c:3854 msgid "Sets the iteration count for SCRAM secret generation." msgstr "Встановлює кількість ітерацій для секретного генерування SCRAM." -#: utils/misc/guc_tables.c:3667 +#: utils/misc/guc_tables.c:3874 msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page." msgstr "Встановлює для планувальника орієнтир вартості послідовного читання дискових сторінок." -#: utils/misc/guc_tables.c:3678 +#: utils/misc/guc_tables.c:3885 msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page." msgstr "Встановлює для планувальника орієнтир вартості непослідовного читання дискових сторінок." -#: utils/misc/guc_tables.c:3689 +#: utils/misc/guc_tables.c:3896 msgid "Sets the planner's estimate of the cost of processing each tuple (row)." msgstr "Встановлює для планувальника орієнтир вартості обробки кожного кортежу (рядка)." -#: utils/misc/guc_tables.c:3700 +#: utils/misc/guc_tables.c:3907 msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan." msgstr "Встановлює для планувальника орієнтир вартості обробки кожного елементу індекса під час сканування індексу." -#: utils/misc/guc_tables.c:3711 +#: utils/misc/guc_tables.c:3918 msgid "Sets the planner's estimate of the cost of processing each operator or function call." msgstr "Встановлює для планувальника орієнтир вартості обробки кожного оператора або виклику функції." -#: utils/misc/guc_tables.c:3722 +#: utils/misc/guc_tables.c:3929 msgid "Sets the planner's estimate of the cost of passing each tuple (row) from worker to leader backend." msgstr "Встановлює для планувальника приблизну вартість передавання кожного кортежу (рядка) від робочого процесу вихідному процесу." -#: utils/misc/guc_tables.c:3733 +#: utils/misc/guc_tables.c:3940 msgid "Sets the planner's estimate of the cost of starting up worker processes for parallel query." msgstr "Встановлює для планувальника орієнтир вартості запуску робочих процесів для паралельного запиту." -#: utils/misc/guc_tables.c:3745 +#: utils/misc/guc_tables.c:3952 msgid "Perform JIT compilation if query is more expensive." msgstr "Якщо запит дорожчий, виконується JIT-компіляція." -#: utils/misc/guc_tables.c:3746 +#: utils/misc/guc_tables.c:3953 msgid "-1 disables JIT compilation." msgstr "-1 вимикає JIT-компіляцію." -#: utils/misc/guc_tables.c:3756 +#: utils/misc/guc_tables.c:3963 msgid "Optimize JIT-compiled functions if query is more expensive." msgstr "Оптимізувати функції JIT-compiled, якщо запит дорожчий." -#: utils/misc/guc_tables.c:3757 +#: utils/misc/guc_tables.c:3964 msgid "-1 disables optimization." msgstr "-1 вимикає оптимізацію." -#: utils/misc/guc_tables.c:3767 +#: utils/misc/guc_tables.c:3974 msgid "Perform JIT inlining if query is more expensive." msgstr "Якщо запит дорожчий, виконується вбудовування JIT." -#: utils/misc/guc_tables.c:3768 +#: utils/misc/guc_tables.c:3975 msgid "-1 disables inlining." msgstr "-1 вимикає вбудовування." -#: utils/misc/guc_tables.c:3778 +#: utils/misc/guc_tables.c:3985 msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved." msgstr "Встановлює для планувальника орієнтир частки необхідних рядків курсора в загальній кількості." -#: utils/misc/guc_tables.c:3790 +#: utils/misc/guc_tables.c:3997 msgid "Sets the planner's estimate of the average size of a recursive query's working table." msgstr "Встановлює для планувальника орієнтир середнього розміру робочої таблиці рекурсивного запиту." -#: utils/misc/guc_tables.c:3802 +#: utils/misc/guc_tables.c:4009 msgid "GEQO: selective pressure within the population." msgstr "GEQO: вибірковий тиск в популяції." -#: utils/misc/guc_tables.c:3813 +#: utils/misc/guc_tables.c:4020 msgid "GEQO: seed for random path selection." msgstr "GEQO: відправна значення для випадкового вибору шляху." -#: utils/misc/guc_tables.c:3824 +#: utils/misc/guc_tables.c:4031 msgid "Multiple of \"work_mem\" to use for hash tables." -msgstr "" +msgstr "Декілька \"work_mem\" для використання хеш-таблиць." -#: utils/misc/guc_tables.c:3835 +#: utils/misc/guc_tables.c:4042 msgid "Multiple of the average buffer usage to free per round." msgstr "Множник для середньої кількості використаних буферів, який визначає кількість буферів, які звільняються за один підхід." -#: utils/misc/guc_tables.c:3845 +#: utils/misc/guc_tables.c:4052 msgid "Sets the seed for random-number generation." msgstr "Встановлює відправне значення для генератора випадкових чисел." -#: utils/misc/guc_tables.c:3856 +#: utils/misc/guc_tables.c:4063 msgid "Vacuum cost delay in milliseconds." msgstr "Затримка вартості очистки в мілісекундах." -#: utils/misc/guc_tables.c:3867 +#: utils/misc/guc_tables.c:4074 msgid "Vacuum cost delay in milliseconds, for autovacuum." msgstr "Затримка вартості очистки в мілісекундах, для автоочистки." -#: utils/misc/guc_tables.c:3878 +#: utils/misc/guc_tables.c:4075 +msgid "-1 means use \"vacuum_cost_delay\"." +msgstr "-1 означає використання \"vacuum_cost_delay\"." + +#: utils/misc/guc_tables.c:4085 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples." msgstr "Кількість оновлень або видалень кортежів до reltuples, яка визначає потребу в очистці." -#: utils/misc/guc_tables.c:3888 +#: utils/misc/guc_tables.c:4095 msgid "Number of tuple inserts prior to vacuum as a fraction of reltuples." msgstr "Кількість вставлень кортежів до reltuples, яка визначає потребу в очистці." -#: utils/misc/guc_tables.c:3898 +#: utils/misc/guc_tables.c:4105 msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples." msgstr "Кількість вставлень, оновлень або видалень кортежів до reltuples, яка визначає потребу в аналізі." -#: utils/misc/guc_tables.c:3908 +#: utils/misc/guc_tables.c:4115 msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval." msgstr "Час тривалості очищення \"брудних\" буферів під час контрольної точки до інтервалу контрольних точок." -#: utils/misc/guc_tables.c:3918 +#: utils/misc/guc_tables.c:4125 msgid "Fraction of statements exceeding \"log_min_duration_sample\" to be logged." -msgstr "" +msgstr "Частка тверджень, перевищує \"log_min_duration_sample\", що підлягає запису." -#: utils/misc/guc_tables.c:3919 +#: utils/misc/guc_tables.c:4126 msgid "Use a value between 0.0 (never log) and 1.0 (always log)." msgstr "Використайте значення між 0.0 (ніколи не записувати) і 1.0 (завжди записувати)." -#: utils/misc/guc_tables.c:3928 +#: utils/misc/guc_tables.c:4135 msgid "Sets the fraction of transactions from which to log all statements." msgstr "Встановлює частину транзакцій, від яких необхідно журналювати всі команди." -#: utils/misc/guc_tables.c:3929 +#: utils/misc/guc_tables.c:4136 msgid "Use a value between 0.0 (never log) and 1.0 (log all statements for all transactions)." msgstr "Використайте значення між 0.0 (ніколи не записувати) і 1.0 (записувати всі команди для всіх транзакцій)." -#: utils/misc/guc_tables.c:3948 +#: utils/misc/guc_tables.c:4146 +msgid "Fraction of pages in a relation vacuum can scan and fail to freeze before disabling eager scanning." +msgstr "Частка сторінок у відношенні, які vacuum може сканувати та не заморозити перед відключенням активного сканування." + +#: utils/misc/guc_tables.c:4147 +msgid "A value of 0.0 disables eager scanning and a value of 1.0 will eagerly scan up to 100 percent of the all-visible pages in the relation. If vacuum successfully freezes these pages, the cap is lower than 100 percent, because the goal is to amortize page freezing across multiple vacuums." +msgstr "Значення 0.0 відключає активне сканування, а значення 1.0 буде активно сканувати до 100 відсотків всіх видимих сторінок у відношенні. Якщо vacuum успішно заморожує ці сторінки, обмеження менше 100 відсотків, оскільки мета полягає в амортизації заморожування сторінок по кількох vacuum." + +#: utils/misc/guc_tables.c:4165 msgid "Sets the shell command that will be called to archive a WAL file." msgstr "Встановлює команду оболонки, яка буде викликатись для архівації файлу WAL." -#: utils/misc/guc_tables.c:3949 -msgid "This is used only if \"archive_library\" is not set." -msgstr "Це використовується лише, якщо \"archive_library\" не встановлено." +#: utils/misc/guc_tables.c:4166 +msgid "An empty string means use \"archive_library\"." +msgstr "Порожній рядок означає використання \"archive_library\"." -#: utils/misc/guc_tables.c:3958 +#: utils/misc/guc_tables.c:4175 msgid "Sets the library that will be called to archive a WAL file." msgstr "Встановлює бібліотеку, яка буде викликана для архівування файлу WAL." -#: utils/misc/guc_tables.c:3959 -msgid "An empty string indicates that \"archive_command\" should be used." -msgstr "Порожній рядок вказує на те, що слід використовувати \"archive_command\"." +#: utils/misc/guc_tables.c:4176 +msgid "An empty string means use \"archive_command\"." +msgstr "Порожній рядок означає використання \"archive_command\"." -#: utils/misc/guc_tables.c:3968 +#: utils/misc/guc_tables.c:4185 msgid "Sets the shell command that will be called to retrieve an archived WAL file." msgstr "Встановлює команду оболонки, яка буде викликана для отримання архівованого файлу WAL." -#: utils/misc/guc_tables.c:3978 +#: utils/misc/guc_tables.c:4195 msgid "Sets the shell command that will be executed at every restart point." msgstr "Встановлює команду оболонки, яка буде виконуватися в кожній точці перезапуску." -#: utils/misc/guc_tables.c:3988 +#: utils/misc/guc_tables.c:4205 msgid "Sets the shell command that will be executed once at the end of recovery." msgstr "Встановлює команду оболонки, яка буде виконуватися один раз в кінці відновлення." -#: utils/misc/guc_tables.c:3998 +#: utils/misc/guc_tables.c:4215 msgid "Specifies the timeline to recover into." msgstr "Вказує лінію часу для відновлення." -#: utils/misc/guc_tables.c:4008 +#: utils/misc/guc_tables.c:4225 msgid "Set to \"immediate\" to end recovery as soon as a consistent state is reached." msgstr "Встановіть на \"негайно\" щоб закінчити відновлення як тільки буде досягнуто узгодженого стану." -#: utils/misc/guc_tables.c:4017 +#: utils/misc/guc_tables.c:4234 msgid "Sets the transaction ID up to which recovery will proceed." msgstr "Встановлює ідентифікатор транзакції, до якої буде продовжуватися відновлення." -#: utils/misc/guc_tables.c:4026 +#: utils/misc/guc_tables.c:4243 msgid "Sets the time stamp up to which recovery will proceed." msgstr "Встановлює позначку часу, до якої буде продовжуватися відновлення." -#: utils/misc/guc_tables.c:4035 +#: utils/misc/guc_tables.c:4252 msgid "Sets the named restore point up to which recovery will proceed." msgstr "Встановлює назву точки відновлення, до якої буде продовжуватися відновлення." -#: utils/misc/guc_tables.c:4044 +#: utils/misc/guc_tables.c:4261 msgid "Sets the LSN of the write-ahead log location up to which recovery will proceed." msgstr "Встановлює номер LSN розташування випереджувального журналювання, до якого буде продовжуватися відновлення." -#: utils/misc/guc_tables.c:4054 +#: utils/misc/guc_tables.c:4271 msgid "Sets the connection string to be used to connect to the sending server." msgstr "Встановлює рядок підключення який буде використовуватися для підключення до серверу надсилання." -#: utils/misc/guc_tables.c:4065 +#: utils/misc/guc_tables.c:4282 msgid "Sets the name of the replication slot to use on the sending server." msgstr "Встановлює назву слота реплікації, для використання на сервері надсилання." -#: utils/misc/guc_tables.c:4075 +#: utils/misc/guc_tables.c:4292 msgid "Sets the client's character set encoding." msgstr "Встановлює кодування символів, використовуване клієнтом." -#: utils/misc/guc_tables.c:4086 +#: utils/misc/guc_tables.c:4303 msgid "Controls information prefixed to each log line." msgstr "Визначає інформацію префікса кожного рядка протокола." -#: utils/misc/guc_tables.c:4087 -msgid "If blank, no prefix is used." -msgstr "При пустому значенні, префікс також відсутній." +#: utils/misc/guc_tables.c:4304 +msgid "An empty string means no prefix." +msgstr "Порожній рядок означає відсутність префіксу." -#: utils/misc/guc_tables.c:4096 +#: utils/misc/guc_tables.c:4313 msgid "Sets the time zone to use in log messages." msgstr "Встановлює часовий пояс для виведення часу в повідомленях протокола." -#: utils/misc/guc_tables.c:4106 +#: utils/misc/guc_tables.c:4323 msgid "Sets the display format for date and time values." msgstr "Встановлює формат виведення значень часу і дат." -#: utils/misc/guc_tables.c:4107 +#: utils/misc/guc_tables.c:4324 msgid "Also controls interpretation of ambiguous date inputs." msgstr "Також визначає багатозначні задані дати, які вводяться." -#: utils/misc/guc_tables.c:4118 +#: utils/misc/guc_tables.c:4335 msgid "Sets the default table access method for new tables." msgstr "Встановлює метод доступу до таблиці за замовчуванням для нових таблиць." -#: utils/misc/guc_tables.c:4129 +#: utils/misc/guc_tables.c:4346 msgid "Sets the default tablespace to create tables and indexes in." msgstr "Встановлює табличний простір за замовчуванням, для створення таблиць і індексів." -#: utils/misc/guc_tables.c:4130 -msgid "An empty string selects the database's default tablespace." -msgstr "Пустий рядок вибирає табличний простір за замовчуванням бази даних." +#: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 +msgid "An empty string means use the database's default tablespace." +msgstr "Порожній рядок означає використання табличного простору бази даних за замовчуванням." -#: utils/misc/guc_tables.c:4140 +#: utils/misc/guc_tables.c:4357 msgid "Sets the tablespace(s) to use for temporary tables and sort files." msgstr "Встановлює табличний простір(простори) для використання в тимчасових таблицях і файлах сортування." -#: utils/misc/guc_tables.c:4151 +#: utils/misc/guc_tables.c:4368 msgid "Sets whether a CREATEROLE user automatically grants the role to themselves, and with which options." msgstr "Задає, чи буде користувач CREATEROLE автоматично призначати собі цю роль і з якими параметрами." -#: utils/misc/guc_tables.c:4163 +#: utils/misc/guc_tables.c:4370 +msgid "An empty string disables automatic self grants." +msgstr "Порожній рядок вимикає автоматичні самонадання прав." + +#: utils/misc/guc_tables.c:4380 msgid "Sets the path for dynamically loadable modules." msgstr "Встановлює шлях для динамічно завантажуваних модулів." -#: utils/misc/guc_tables.c:4164 +#: utils/misc/guc_tables.c:4381 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_tables.c:4177 +#: utils/misc/guc_tables.c:4394 +msgid "Sets the path for extension control files." +msgstr "Встановлює шлях до файлів керування розширеннями." + +#: utils/misc/guc_tables.c:4395 +msgid "The remaining extension script and secondary control files are then loaded from the same directory where the primary control file was found." +msgstr "Решта скриптів розширень і вторинні файли керування завантажуються з того ж каталогу, де знайдений основний файл керування." + +#: utils/misc/guc_tables.c:4406 msgid "Sets the location of the Kerberos server key file." msgstr "Встановлює розташування файлу з ключем Kerberos для даного сервера." -#: utils/misc/guc_tables.c:4188 +#: utils/misc/guc_tables.c:4417 msgid "Sets the Bonjour service name." msgstr "Встановлює ім'я служби Bonjour." -#: utils/misc/guc_tables.c:4198 +#: utils/misc/guc_tables.c:4418 +msgid "An empty string means use the computer name." +msgstr "Порожній рядок означає використання імені комп'ютера." + +#: utils/misc/guc_tables.c:4427 msgid "Sets the language in which messages are displayed." msgstr "Встановлює мову виведених повідомлень." -#: utils/misc/guc_tables.c:4208 +#: utils/misc/guc_tables.c:4428 utils/misc/guc_tables.c:4438 +#: utils/misc/guc_tables.c:4448 utils/misc/guc_tables.c:4458 +msgid "An empty string means use the operating system setting." +msgstr "Порожній рядок означає використання налаштування операційної системи." + +#: utils/misc/guc_tables.c:4437 msgid "Sets the locale for formatting monetary amounts." msgstr "Встановлює локалізацію для форматування грошових сум." -#: utils/misc/guc_tables.c:4218 +#: utils/misc/guc_tables.c:4447 msgid "Sets the locale for formatting numbers." msgstr "Встановлює локалізацію для форматування чисел." -#: utils/misc/guc_tables.c:4228 +#: utils/misc/guc_tables.c:4457 msgid "Sets the locale for formatting date and time values." msgstr "Встановлює локалізацію для форматування значень дати і часу." -#: utils/misc/guc_tables.c:4238 +#: utils/misc/guc_tables.c:4467 msgid "Lists shared libraries to preload into each backend." msgstr "Список спільних бібліотек, попередньо завантажених до кожного внутрішнього серверу." -#: utils/misc/guc_tables.c:4249 +#: utils/misc/guc_tables.c:4478 msgid "Lists shared libraries to preload into server." msgstr "Список спільних бібліотек, попередньо завантажених до серверу." -#: utils/misc/guc_tables.c:4260 +#: utils/misc/guc_tables.c:4489 msgid "Lists unprivileged shared libraries to preload into each backend." msgstr "Список непривілейованих спільних бібліотек, попередньо завантажених до кожного внутрішнього серверу." -#: utils/misc/guc_tables.c:4271 +#: utils/misc/guc_tables.c:4500 msgid "Sets the schema search order for names that are not schema-qualified." msgstr "Встановлює порядок пошуку схеми для імен, які не є схемо-кваліфікованими." -#: utils/misc/guc_tables.c:4283 +#: utils/misc/guc_tables.c:4512 msgid "Shows the server (database) character set encoding." msgstr "Показує набір символів кодування сервера (бази даних)." -#: utils/misc/guc_tables.c:4295 +#: utils/misc/guc_tables.c:4524 msgid "Shows the server version." msgstr "Показує версію сервера." -#: utils/misc/guc_tables.c:4307 +#: utils/misc/guc_tables.c:4536 msgid "Sets the current role." msgstr "Встановлює чинну роль." -#: utils/misc/guc_tables.c:4319 +#: utils/misc/guc_tables.c:4548 msgid "Sets the session user name." msgstr "Встановлює ім'я користувача в сеансі." -#: utils/misc/guc_tables.c:4330 +#: utils/misc/guc_tables.c:4559 msgid "Sets the destination for server log output." msgstr "Встановлює, куди буде виводитися протокол серверу." -#: utils/misc/guc_tables.c:4331 +#: utils/misc/guc_tables.c:4560 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", \"jsonlog\", and \"eventlog\", depending on the platform." msgstr "Дійсні значення - це комбінації \"stderr\", \"syslog\", \"csvlog\", \"jsonlog\", і \"eventlog\", в залежності від платформи." -#: utils/misc/guc_tables.c:4342 +#: utils/misc/guc_tables.c:4571 msgid "Sets the destination directory for log files." msgstr "Встановлює каталог призначення для файлів журналу." -#: utils/misc/guc_tables.c:4343 +#: utils/misc/guc_tables.c:4572 msgid "Can be specified as relative to the data directory or as absolute path." msgstr "Шлях може бути абсолютним або вказуватися відносно каталогу даних." -#: utils/misc/guc_tables.c:4353 +#: utils/misc/guc_tables.c:4582 msgid "Sets the file name pattern for log files." msgstr "Встановлює шаблон імені для файлів журналу." -#: utils/misc/guc_tables.c:4364 +#: utils/misc/guc_tables.c:4593 msgid "Sets the program name used to identify PostgreSQL messages in syslog." msgstr "Встановлює ім'я програми для ідентифікації повідомлень PostgreSQL в syslog." -#: utils/misc/guc_tables.c:4375 +#: utils/misc/guc_tables.c:4604 msgid "Sets the application name used to identify PostgreSQL messages in the event log." msgstr "Встановлює ім'я програми для ідентифікації повідомлень PostgreSQL в журналі подій." -#: utils/misc/guc_tables.c:4386 +#: utils/misc/guc_tables.c:4615 msgid "Sets the time zone for displaying and interpreting time stamps." msgstr "Встановлює часовий пояс для відображення та інтерпретації позначок часу." -#: utils/misc/guc_tables.c:4396 +#: utils/misc/guc_tables.c:4625 msgid "Selects a file of time zone abbreviations." msgstr "Вибирає файл з скороченими іменами часових поясів." -#: utils/misc/guc_tables.c:4406 +#: utils/misc/guc_tables.c:4635 msgid "Sets the owning group of the Unix-domain socket." msgstr "Встановлює відповідальну групу Unix-сокету." -#: utils/misc/guc_tables.c:4407 -msgid "The owning user of the socket is always the user that starts the server." -msgstr "Відповідальний користувач сокету це завжди той користувач який запустив сервер." +#: utils/misc/guc_tables.c:4636 +msgid "The owning user of the socket is always the user that starts the server. An empty string means use the user's default group." +msgstr "Власником сокету завжди є користувач, який запускає сервер. Порожній рядок означає використання групи користувача за замовчуванням." -#: utils/misc/guc_tables.c:4417 +#: utils/misc/guc_tables.c:4646 msgid "Sets the directories where Unix-domain sockets will be created." msgstr "Встановлює каталоги, де будуть створюватись Unix-сокети." -#: utils/misc/guc_tables.c:4428 +#: utils/misc/guc_tables.c:4657 msgid "Sets the host name or IP address(es) to listen to." msgstr "Встановлює ім'я хосту або IP-адресу для прив'язки." -#: utils/misc/guc_tables.c:4443 +#: utils/misc/guc_tables.c:4672 msgid "Sets the server's data directory." msgstr "Встановлює каталог даних серверу." -#: utils/misc/guc_tables.c:4454 +#: utils/misc/guc_tables.c:4683 msgid "Sets the server's main configuration file." msgstr "Встановлює основний файл конфігурації серверу." -#: utils/misc/guc_tables.c:4465 +#: utils/misc/guc_tables.c:4694 msgid "Sets the server's \"hba\" configuration file." msgstr "Встановлює \"hba\" файл конфігурації серверу." -#: utils/misc/guc_tables.c:4476 +#: utils/misc/guc_tables.c:4705 msgid "Sets the server's \"ident\" configuration file." msgstr "Встановлює \"ident\" файл конфігурації серверу." -#: utils/misc/guc_tables.c:4487 +#: utils/misc/guc_tables.c:4716 msgid "Writes the postmaster PID to the specified file." msgstr "Записує ідентифікатор процесу (PID) postmaster у вказаний файл." -#: utils/misc/guc_tables.c:4498 +#: utils/misc/guc_tables.c:4727 msgid "Shows the name of the SSL library." msgstr "Показує назву бібліотеки SSL." -#: utils/misc/guc_tables.c:4513 +#: utils/misc/guc_tables.c:4742 msgid "Location of the SSL server certificate file." msgstr "Розташування файла сертифікату сервера для SSL." -#: utils/misc/guc_tables.c:4523 +#: utils/misc/guc_tables.c:4752 msgid "Location of the SSL server private key file." msgstr "Розташування файла з закритим ключем сервера для SSL." -#: utils/misc/guc_tables.c:4533 +#: utils/misc/guc_tables.c:4762 msgid "Location of the SSL certificate authority file." msgstr "Розташування файла центру сертифікації для SSL." -#: utils/misc/guc_tables.c:4543 +#: utils/misc/guc_tables.c:4772 msgid "Location of the SSL certificate revocation list file." msgstr "Розташування файла зі списком відкликаних сертфікатів для SSL." -#: utils/misc/guc_tables.c:4553 +#: utils/misc/guc_tables.c:4782 msgid "Location of the SSL certificate revocation list directory." msgstr "Розташування каталогу списку відкликаних сертифікатів SSL." -#: utils/misc/guc_tables.c:4563 +#: utils/misc/guc_tables.c:4792 msgid "Number of synchronous standbys and list of names of potential synchronous ones." msgstr "Кількість потенційно синхронних режимів очікування і список їх імен." -#: utils/misc/guc_tables.c:4574 +#: utils/misc/guc_tables.c:4803 msgid "Sets default text search configuration." msgstr "Встановлює конфігурацію текстового пошуку за замовчуванням." -#: utils/misc/guc_tables.c:4584 -msgid "Sets the list of allowed SSL ciphers." -msgstr "Встановлює список дозволених шифрів для SSL." +#: utils/misc/guc_tables.c:4813 +msgid "Sets the list of allowed TLSv1.3 cipher suites." +msgstr "Встановлює список дозволених наборів шифрів TLSv1.3." -#: utils/misc/guc_tables.c:4599 -msgid "Sets the curve to use for ECDH." -msgstr "Встановлює криву для ECDH." +#: utils/misc/guc_tables.c:4814 +msgid "An empty string means use the default cipher suites." +msgstr "Порожній рядок означає використовувати набори шифрів за замовчуванням." -#: utils/misc/guc_tables.c:4614 +#: utils/misc/guc_tables.c:4824 +msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." +msgstr "Встановлює список дозволених шифрів TLSv1.2 (та нижчих версій)." + +#: utils/misc/guc_tables.c:4839 +msgid "Sets the group(s) to use for Diffie-Hellman key exchange." +msgstr "Встановлює групу(и) для використання в обміні ключами Diffie-Hellman." + +#: utils/misc/guc_tables.c:4840 +msgid "Multiple groups can be specified using a colon-separated list." +msgstr "Кілька груп можна вказати, використовуючи список, розділений двокрапками." + +#: utils/misc/guc_tables.c:4854 msgid "Location of the SSL DH parameters file." msgstr "Розташування файла з параметрами SSL DH." -#: utils/misc/guc_tables.c:4625 +#: utils/misc/guc_tables.c:4855 +msgid "An empty string means use compiled-in default parameters." +msgstr "Порожній рядок означає використання вбудованих параметрів за замовчуванням." + +#: utils/misc/guc_tables.c:4865 msgid "Command to obtain passphrases for SSL." msgstr "Команда, що дозволяє отримати парольну фразу для SSL." -#: utils/misc/guc_tables.c:4636 +#: utils/misc/guc_tables.c:4866 +msgid "An empty string means use the built-in prompting mechanism." +msgstr "Порожній рядок означає використання вбудованого механізму запитування." + +#: utils/misc/guc_tables.c:4876 msgid "Sets the application name to be reported in statistics and logs." msgstr "Встановлює ім'я програми, яке буде повідомлятись у статистиці і протоколах." -#: utils/misc/guc_tables.c:4647 +#: utils/misc/guc_tables.c:4887 msgid "Sets the name of the cluster, which is included in the process title." msgstr "Встановлює ім'я кластеру, яке буде включене до заголовка процесу." -#: utils/misc/guc_tables.c:4658 +#: utils/misc/guc_tables.c:4898 msgid "Sets the WAL resource managers for which WAL consistency checks are done." msgstr "Встановлює менеджерів ресурсу WAL, для яких виконано перевірки узгодженості WAL." -#: utils/misc/guc_tables.c:4659 +#: utils/misc/guc_tables.c:4899 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_tables.c:4669 +#: utils/misc/guc_tables.c:4909 msgid "JIT provider to use." msgstr "Використовувати провайдер JIT." -#: utils/misc/guc_tables.c:4680 +#: utils/misc/guc_tables.c:4920 msgid "Log backtrace for errors in these functions." msgstr "Відстежувати записи помилок у ціх функціях." -#: utils/misc/guc_tables.c:4691 +#: utils/misc/guc_tables.c:4931 msgid "Use direct I/O for file access." msgstr "Використовувати прямий ввід для доступу до файлу." -#: utils/misc/guc_tables.c:4702 +#: utils/misc/guc_tables.c:4932 +msgid "An empty string disables direct I/O." +msgstr "Порожній рядок відключає прямий ввід/вивід." + +#: utils/misc/guc_tables.c:4942 msgid "Lists streaming replication standby server replication slot names that logical WAL sender processes will wait for." -msgstr "" +msgstr "Відображає список імен слотів реплікації, які очікують процесу логічного відправника WAL." -#: utils/misc/guc_tables.c:4704 +#: utils/misc/guc_tables.c:4944 msgid "Logical WAL sender processes will send decoded changes to output plugins only after the specified replication slots have confirmed receiving WAL." -msgstr "" +msgstr "Логічні процеси відправки WAL будуть відправляти декодовані зміни до плагінів виводу лише після підтвердження отримування вказаних слотів реплікації (WAL)." -#: utils/misc/guc_tables.c:4716 +#: utils/misc/guc_tables.c:4956 msgid "Prohibits access to non-system relations of specified kinds." -msgstr "" +msgstr "Забороняє доступ до несистемних відносин вказаних типів." + +#: utils/misc/guc_tables.c:4967 +msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." +msgstr "Перелічує бібліотеки, які можуть бути викликані для валідації токенів носія OAuth v2." -#: utils/misc/guc_tables.c:4736 +#: utils/misc/guc_tables.c:4978 +msgid "Logs specified aspects of connection establishment and setup." +msgstr "Журналює вказані аспекти встановлення та налаштування з'єднання." + +#: utils/misc/guc_tables.c:4999 msgid "Sets whether \"\\'\" is allowed in string literals." msgstr "Встановлює, чи дозволене використання \"\\\" в текстових рядках." -#: utils/misc/guc_tables.c:4746 +#: utils/misc/guc_tables.c:5009 msgid "Sets the output format for bytea." msgstr "Встановлює формат виводу для типу bytea." -#: utils/misc/guc_tables.c:4756 +#: utils/misc/guc_tables.c:5019 msgid "Sets the message levels that are sent to the client." msgstr "Встановлює рівень повідомлень, переданих клієнту." -#: utils/misc/guc_tables.c:4757 utils/misc/guc_tables.c:4853 -#: utils/misc/guc_tables.c:4864 +#: utils/misc/guc_tables.c:5020 utils/misc/guc_tables.c:5116 +#: utils/misc/guc_tables.c:5127 msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent." msgstr "Кожен рівень включає всі наступні рівні. Чим вище рівень, тим менше повідомлень надіслано." -#: utils/misc/guc_tables.c:4767 +#: utils/misc/guc_tables.c:5030 msgid "Enables in-core computation of query identifiers." msgstr "Вмикає внутрішнє обчислення ідентифікаторів запиту." -#: utils/misc/guc_tables.c:4777 +#: utils/misc/guc_tables.c:5040 msgid "Enables the planner to use constraints to optimize queries." msgstr "Дає змогу планувальнику оптимізувати запити, використовуючи обмеження." -#: utils/misc/guc_tables.c:4778 +#: utils/misc/guc_tables.c:5041 msgid "Table scans will be skipped if their constraints guarantee that no rows match the query." msgstr "Сканування таблиці буде пропущено, якщо її обмеження гарантують, що запиту не відповідають ніякі рядки." -#: utils/misc/guc_tables.c:4789 +#: utils/misc/guc_tables.c:5052 msgid "Sets the default compression method for compressible values." msgstr "Встановлює метод стискання за замовчуванням для стисливих значень." -#: utils/misc/guc_tables.c:4800 +#: utils/misc/guc_tables.c:5063 msgid "Sets the transaction isolation level of each new transaction." msgstr "Встановлює рівень ізоляції транзакції для кожної нової транзакції." -#: utils/misc/guc_tables.c:4810 +#: utils/misc/guc_tables.c:5073 msgid "Sets the current transaction's isolation level." msgstr "Встановлює чинний рівень ізоляції транзакцій." -#: utils/misc/guc_tables.c:4821 +#: utils/misc/guc_tables.c:5084 msgid "Sets the display format for interval values." msgstr "Встановлює формат відображення внутрішніх значень." -#: utils/misc/guc_tables.c:4832 +#: utils/misc/guc_tables.c:5095 msgid "Log level for reporting invalid ICU locale strings." msgstr "Рівень протоколу для повідомлення про невірні рядки локалі ICU." -#: utils/misc/guc_tables.c:4842 +#: utils/misc/guc_tables.c:5105 msgid "Sets the verbosity of logged messages." msgstr "Встановлює детальність повідомлень, які протоколюються." -#: utils/misc/guc_tables.c:4852 +#: utils/misc/guc_tables.c:5115 msgid "Sets the message levels that are logged." msgstr "Встанолвює рівні повідомлень, які протоколюються." -#: utils/misc/guc_tables.c:4863 +#: utils/misc/guc_tables.c:5126 msgid "Causes all statements generating error at or above this level to be logged." msgstr "Вмикає протоколювання для всіх операторів, виконаних з помилкою цього або вище рівня." -#: utils/misc/guc_tables.c:4874 +#: utils/misc/guc_tables.c:5137 msgid "Sets the type of statements logged." msgstr "Встановлює тип операторів, які протоколюються." -#: utils/misc/guc_tables.c:4884 +#: utils/misc/guc_tables.c:5147 msgid "Sets the syslog \"facility\" to be used when syslog enabled." msgstr "Встановлює отримувача повідомлень, які відправляються до syslog." -#: utils/misc/guc_tables.c:4895 +#: utils/misc/guc_tables.c:5158 msgid "Sets the session's behavior for triggers and rewrite rules." msgstr "Встановлює поведінку для тригерів і правил перезапису для сеансу." -#: utils/misc/guc_tables.c:4905 +#: utils/misc/guc_tables.c:5168 msgid "Sets the current transaction's synchronization level." msgstr "Встановлює рівень синхронізації поточної транзакції." -#: utils/misc/guc_tables.c:4915 +#: utils/misc/guc_tables.c:5178 msgid "Allows archiving of WAL files using \"archive_command\"." -msgstr "" +msgstr "Дозволяє архівацію файлів WAL, використовуючи \"archive_command\"." -#: utils/misc/guc_tables.c:4925 +#: utils/misc/guc_tables.c:5188 msgid "Sets the action to perform upon reaching the recovery target." msgstr "Встновлює дію яку потрібно виконати в разі досягнення мети відновлення." -#: utils/misc/guc_tables.c:4935 +#: utils/misc/guc_tables.c:5198 msgid "Collects function-level statistics on database activity." msgstr "Збирає статистику активності в базі даних на рівні функцій." -#: utils/misc/guc_tables.c:4946 +#: utils/misc/guc_tables.c:5209 msgid "Sets the consistency of accesses to statistics data." msgstr "Встановлює послідовність доступу до даних статистики." -#: utils/misc/guc_tables.c:4956 +#: utils/misc/guc_tables.c:5219 msgid "Compresses full-page writes written in WAL file with specified method." msgstr "Стискає повносторінкові записи, записані у файлі WAL за допомогою вказаного методу." -#: utils/misc/guc_tables.c:4966 +#: utils/misc/guc_tables.c:5229 msgid "Sets the level of information written to the WAL." msgstr "Встановлює рівень інформації, яка записується до WAL." -#: utils/misc/guc_tables.c:4976 +#: utils/misc/guc_tables.c:5239 msgid "Selects the dynamic shared memory implementation used." msgstr "Вибирає використовуване впровадження динамічної спільної пам'яті." -#: utils/misc/guc_tables.c:4986 +#: utils/misc/guc_tables.c:5249 msgid "Selects the shared memory implementation used for the main shared memory region." msgstr "Вибирає впровадження спільної пам'яті, що використовується для основної області спільної пам'яті." -#: utils/misc/guc_tables.c:4996 +#: utils/misc/guc_tables.c:5259 +msgid "Selects the file copy method." +msgstr "Вибирає метод копіювання файлів." + +#: utils/misc/guc_tables.c:5269 msgid "Selects the method used for forcing WAL updates to disk." msgstr "Вибирає метод примусового запису оновлень в WAL на диск." -#: utils/misc/guc_tables.c:5006 +#: utils/misc/guc_tables.c:5279 msgid "Sets how binary values are to be encoded in XML." msgstr "Встановлює, як повинні кодуватись двійкові значення в XML." -#: utils/misc/guc_tables.c:5016 +#: utils/misc/guc_tables.c:5289 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_tables.c:5027 +#: utils/misc/guc_tables.c:5300 msgid "Use of huge pages on Linux or Windows." msgstr "Використовувати величезні сторінки в Linux або Windows." -#: utils/misc/guc_tables.c:5037 +#: utils/misc/guc_tables.c:5310 msgid "Indicates the status of huge pages." msgstr "Показує статус великих сторінок." -#: utils/misc/guc_tables.c:5048 +#: utils/misc/guc_tables.c:5321 msgid "Prefetch referenced blocks during recovery." msgstr "Попередньо вибирати пов'язані блоки під час відновлення." -#: utils/misc/guc_tables.c:5049 +#: utils/misc/guc_tables.c:5322 msgid "Look ahead in the WAL to find references to uncached data." msgstr "Шукати в WAL посилання на незакешовані дані." -#: utils/misc/guc_tables.c:5058 +#: utils/misc/guc_tables.c:5331 msgid "Forces the planner's use parallel query nodes." msgstr "Змушує планувальник використовувати паралельні вузли запитів." -#: utils/misc/guc_tables.c:5059 +#: utils/misc/guc_tables.c:5332 msgid "This can be useful for testing the parallel query infrastructure by forcing the planner to generate plans that contain nodes that perform tuple communication between workers and the main process." msgstr "Це може бути корисно для тестування інфраструктури паралельних запитів, змушуючи планувальник генерувати плани, які містять вузли, що виконують зв'язок кортежів між робітниками та основним процесом." -#: utils/misc/guc_tables.c:5071 +#: utils/misc/guc_tables.c:5344 msgid "Chooses the algorithm for encrypting passwords." msgstr "Виберіть алгоритм для шифрування паролів." -#: utils/misc/guc_tables.c:5081 +#: utils/misc/guc_tables.c:5354 msgid "Controls the planner's selection of custom or generic plan." msgstr "Контролює вибір планувальником спеціального або загального плану." -#: utils/misc/guc_tables.c:5082 +#: utils/misc/guc_tables.c:5355 msgid "Prepared statements can have custom and generic plans, and the planner will attempt to choose which is better. This can be set to override the default behavior." msgstr "Підготовлені оператори можуть мати спеціальні або загальні плани, і планувальник спробує вибрати, який краще. Це може бути встановлено для зміни поведінки за замовчуванням." -#: utils/misc/guc_tables.c:5094 +#: utils/misc/guc_tables.c:5367 msgid "Sets the minimum SSL/TLS protocol version to use." msgstr "Встановлює мінімальну версію протоколу SSL/TLS для використання." -#: utils/misc/guc_tables.c:5106 +#: utils/misc/guc_tables.c:5379 msgid "Sets the maximum SSL/TLS protocol version to use." msgstr "Встановлює максимальну версію протоколу SSL/TLS для використання." -#: utils/misc/guc_tables.c:5118 +#: utils/misc/guc_tables.c:5391 msgid "Sets the method for synchronizing the data directory before crash recovery." msgstr "Встановлює метод для синхронізації каталогу даних перед аварійним відновленням." -#: utils/misc/guc_tables.c:5127 +#: utils/misc/guc_tables.c:5400 msgid "Forces immediate streaming or serialization of changes in large transactions." msgstr "Забезпечує негайну потокову передачу або серіалізацію змін у великих транзакціях." -#: utils/misc/guc_tables.c:5128 +#: utils/misc/guc_tables.c:5401 msgid "On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction." msgstr "На стороні видавця це дозволяє передавати в потоковому режимі або серіалізувати кожну зміну в логічному декодуванні. На стороні абонента це дозволяє серіалізувати всі зміни у файлах і сповіщає працівників паралельних робочих процесів про необхідність прочитати і застосувати їх в кінці транзакції." +#: utils/misc/guc_tables.c:5413 +msgid "Selects the method for executing asynchronous I/O." +msgstr "Вибирає метод виконання асинхронного вводу/виводу." + #: utils/misc/help_config.c:129 #, c-format msgid "internal error: unrecognized run-time parameter type\n" @@ -30224,6 +31749,26 @@ msgstr "запит буде обмежений політикою безпеки 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/stack_depth.c:101 +#, c-format +msgid "stack depth limit exceeded" +msgstr "перевищено ліміт глибини стека" + +#: utils/misc/stack_depth.c:102 +#, 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\" (поточне значення %d КБ), попередньо переконавшись, що ОС надає достатній розмір стеку." + +#: utils/misc/stack_depth.c:149 +#, c-format +msgid "\"max_stack_depth\" must not exceed %zdkB." +msgstr "\"max_stack_depth\" не повинен перевищувати %zdkB." + +#: utils/misc/stack_depth.c:151 +#, c-format +msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent." +msgstr "Збільшіть ліміт глибини стека в системі через команду \"ulimit -s\" або через локальний еквівалент." + #: utils/misc/timeout.c:520 #, c-format msgid "cannot add more timeout reasons" @@ -30239,57 +31784,57 @@ msgstr "скорочення часового поясу \"%s\" занадто msgid "time zone offset %d is out of range in time zone file \"%s\", line %d" msgstr "зсув часового поясу %d поза діапазоном у файлі часового поясу \"%s\", рядок %d" -#: utils/misc/tzparser.c:112 +#: utils/misc/tzparser.c:113 #, c-format msgid "missing time zone abbreviation in time zone file \"%s\", line %d" msgstr "пропущено скорочення часового поясу в файлі часового поясу \"%s\", рядок %d" -#: utils/misc/tzparser.c:121 +#: utils/misc/tzparser.c:122 #, c-format msgid "missing time zone offset in time zone file \"%s\", line %d" msgstr "пропущено зсув часового поясу в файлі часового поясу \"%s\", рядок %d" -#: utils/misc/tzparser.c:133 +#: utils/misc/tzparser.c:134 #, c-format msgid "invalid number for time zone offset in time zone file \"%s\", line %d" msgstr "неприпустиме число зсуву часового поясу в файлі часового поясу \"%s\", рядок %d" -#: utils/misc/tzparser.c:169 +#: utils/misc/tzparser.c:170 #, c-format msgid "invalid syntax in time zone file \"%s\", line %d" msgstr "неприпустимий синтаксис у файлі часового поясу \"%s\", рядок %d" -#: utils/misc/tzparser.c:237 +#: utils/misc/tzparser.c:238 #, c-format msgid "time zone abbreviation \"%s\" is multiply defined" msgstr "скорочення часового поясу \"%s\" визначено неодноразово" -#: utils/misc/tzparser.c:239 +#: utils/misc/tzparser.c:240 #, c-format 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 +#: utils/misc/tzparser.c:302 #, c-format msgid "invalid time zone file name \"%s\"" msgstr "неприпустиме ім'я файла часового поясу \"%s\"" -#: utils/misc/tzparser.c:314 +#: utils/misc/tzparser.c:315 #, c-format msgid "time zone file recursion limit exceeded in file \"%s\"" msgstr "ліміт рекурсії файла часового поясу перевищено у файлі \"%s\"" -#: utils/misc/tzparser.c:353 utils/misc/tzparser.c:366 +#: utils/misc/tzparser.c:354 utils/misc/tzparser.c:367 #, c-format msgid "could not read time zone file \"%s\": %m" msgstr "не вдалося прочитати файл часового поясу \"%s\": %m" -#: utils/misc/tzparser.c:377 +#: utils/misc/tzparser.c:378 #, c-format msgid "line is too long in time zone file \"%s\", line %d" msgstr "занадто довгий рядок у файлі часового поясу \"%s\", рядок %d" -#: utils/misc/tzparser.c:401 +#: utils/misc/tzparser.c:403 #, c-format msgid "@INCLUDE without file name in time zone file \"%s\", line %d" msgstr "в @INCLUDE не вказано ім'я файла у файлі часового поясу \"%s\", рядок %d" @@ -30305,12 +31850,12 @@ msgstr "Помилка під час створення контексту па msgid "could not attach to dynamic shared area" msgstr "не вдалося підключитись до динамічно-спільної області" -#: utils/mmgr/mcxt.c:1155 +#: utils/mmgr/mcxt.c:1163 #, c-format msgid "Failed on request of size %zu in memory context \"%s\"." msgstr "Помилка в запиті розміру %zu в контексті пам'яті \"%s\"." -#: utils/mmgr/mcxt.c:1299 +#: utils/mmgr/mcxt.c:1319 #, c-format msgid "logging memory contexts of PID %d" msgstr "журналювання контекстів пам'яті PID %d" @@ -30345,15 +31890,15 @@ msgstr "видалити активний портал \"%s\" не можна" msgid "cannot PREPARE a transaction that has created a cursor WITH HOLD" msgstr "не можна виконати PREPARE для транзакції, яка створила курсор WITH HOLD" -#: utils/mmgr/portalmem.c:1229 +#: utils/mmgr/portalmem.c:1232 #, c-format msgid "cannot perform transaction commands inside a cursor loop that is not read-only" msgstr "виконати команди транзакції всередині циклу з курсором, який не є \"лише для читання\", не можна" #: utils/sort/logtape.c:266 utils/sort/logtape.c:287 #, c-format -msgid "could not seek to block %lld of temporary file" -msgstr "не може намагатися заблокувати %lld тимчасового файлу" +msgid "could not seek to block % of temporary file" +msgstr "не вдалося знайти блок % тимчасового файлу" #: utils/sort/sharedtuplestore.c:466 #, c-format @@ -30365,101 +31910,101 @@ msgstr "неочікуваний блок у тимчасовому файлі msgid "could not seek to block %u in shared tuplestore temporary file" msgstr "не вдалося знайти для блокування %u у тимчасовому файлі зі спільного сховища кортежів" -#: utils/sort/tuplesort.c:2372 +#: utils/sort/tuplesort.c:2340 #, c-format msgid "cannot have more than %d runs for an external sort" msgstr "кількість виконуючих процесів для зовнішнього сортування не може перевищувати %d" -#: utils/sort/tuplesortvariants.c:1552 +#: utils/sort/tuplesortvariants.c:1671 #, c-format msgid "could not create unique index \"%s\"" msgstr "не вдалося створити унікальний індекс \"%s\"" -#: utils/sort/tuplesortvariants.c:1554 +#: utils/sort/tuplesortvariants.c:1673 #, c-format msgid "Key %s is duplicated." msgstr "Ключ %s дублюється." -#: utils/sort/tuplesortvariants.c:1555 +#: utils/sort/tuplesortvariants.c:1674 #, c-format msgid "Duplicate keys exist." msgstr "Дублікати ключів існують." -#: 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 +#: utils/sort/tuplestore.c:552 utils/sort/tuplestore.c:562 +#: utils/sort/tuplestore.c:921 utils/sort/tuplestore.c:1025 +#: utils/sort/tuplestore.c:1089 utils/sort/tuplestore.c:1106 +#: utils/sort/tuplestore.c:1308 utils/sort/tuplestore.c:1373 +#: utils/sort/tuplestore.c:1382 #, c-format msgid "could not seek in tuplestore temporary file" msgstr "не вдалося знайти у тимчасовому файлі зі сховища кортежів" -#: utils/time/snapmgr.c:536 +#: utils/time/snapmgr.c:568 #, c-format msgid "The source transaction is not running anymore." msgstr "Вихідна транзакція вже не виконується." -#: utils/time/snapmgr.c:1136 +#: utils/time/snapmgr.c:1154 #, c-format msgid "cannot export a snapshot from a subtransaction" msgstr "експортувати знімок з підтранзакції не можна" -#: utils/time/snapmgr.c:1296 utils/time/snapmgr.c:1301 -#: utils/time/snapmgr.c:1306 utils/time/snapmgr.c:1321 -#: utils/time/snapmgr.c:1326 utils/time/snapmgr.c:1331 -#: utils/time/snapmgr.c:1346 utils/time/snapmgr.c:1351 -#: utils/time/snapmgr.c:1356 utils/time/snapmgr.c:1470 -#: utils/time/snapmgr.c:1486 utils/time/snapmgr.c:1511 +#: utils/time/snapmgr.c:1314 utils/time/snapmgr.c:1319 +#: utils/time/snapmgr.c:1324 utils/time/snapmgr.c:1339 +#: utils/time/snapmgr.c:1344 utils/time/snapmgr.c:1349 +#: utils/time/snapmgr.c:1364 utils/time/snapmgr.c:1369 +#: utils/time/snapmgr.c:1374 utils/time/snapmgr.c:1488 +#: utils/time/snapmgr.c:1504 utils/time/snapmgr.c:1529 #, c-format msgid "invalid snapshot data in file \"%s\"" msgstr "неприпустимі дані знімку в файлі \"%s\"" -#: utils/time/snapmgr.c:1393 +#: utils/time/snapmgr.c:1411 #, c-format msgid "SET TRANSACTION SNAPSHOT must be called before any query" msgstr "SET TRANSACTION SNAPSHOT повинна викликатись перед будь-яким запитом" -#: utils/time/snapmgr.c:1402 +#: utils/time/snapmgr.c:1420 #, c-format msgid "a snapshot-importing transaction must have isolation level SERIALIZABLE or REPEATABLE READ" msgstr "транзакція, яка імпортує знімок, повинна мати рівень ізоляції SERIALIZABLE або REPEATABLE READ" -#: utils/time/snapmgr.c:1411 +#: utils/time/snapmgr.c:1429 #, c-format msgid "invalid snapshot identifier: \"%s\"" msgstr "неприпустимий ідентифікатор знімка: \"%s\"" -#: utils/time/snapmgr.c:1426 +#: utils/time/snapmgr.c:1444 #, c-format msgid "snapshot \"%s\" does not exist" msgstr "знімок \"%s\" не існує" -#: utils/time/snapmgr.c:1524 +#: utils/time/snapmgr.c:1542 #, c-format msgid "a serializable transaction cannot import a snapshot from a non-serializable transaction" msgstr "серіалізована транзакція не може імпортувати знімок з не серіалізованої транзакції" -#: utils/time/snapmgr.c:1528 +#: utils/time/snapmgr.c:1546 #, c-format msgid "a non-read-only serializable transaction cannot import a snapshot from a read-only transaction" msgstr "серіалізована транзакція в режимі \"читання-запис\" не може імпортувати знімок з транзакції в режимі \"тільки читання\"" -#: utils/time/snapmgr.c:1543 +#: utils/time/snapmgr.c:1561 #, c-format msgid "cannot import a snapshot from a different database" msgstr "імпортувати знімок з іншої бази даних не можна" -#: gram.y:1231 +#: gram.y:1222 #, c-format msgid "UNENCRYPTED PASSWORD is no longer supported" msgstr "UNENCRYPTED PASSWORD більше не підтримується" -#: gram.y:1232 +#: gram.y:1223 #, c-format msgid "Remove UNENCRYPTED to store the password in encrypted form instead." msgstr "Видаліть UNENCRYPTED, щоб зберегти пароль у зашифрованій формі." -#: gram.y:1559 gram.y:1575 +#: gram.y:1550 gram.y:1566 #, c-format msgid "CREATE SCHEMA IF NOT EXISTS cannot include schema elements" msgstr "CREATE SCHEMA IF NOT EXISTS не може включати елементи схеми" @@ -30469,403 +32014,410 @@ msgstr "CREATE SCHEMA IF NOT EXISTS не може включати елемен msgid "current database cannot be changed" msgstr "поточна база даних не може бути змінена" -#: gram.y:1860 +#: gram.y:1868 #, c-format msgid "time zone interval must be HOUR or HOUR TO MINUTE" msgstr "інтервал, який задає часовий пояс, повинен бути HOUR або HOUR TO MINUTE" -#: gram.y:2487 +#: gram.y:2500 #, c-format msgid "column number must be in range from 1 to %d" msgstr "номер стовпця повинен бути в діапазоні від 1 до %d" -#: gram.y:3083 +#: gram.y:2675 +#, c-format +msgid "constraints cannot be altered to be NOT VALID" +msgstr "обмеження не можуть бути змінені на NOT VALID" + +#: gram.y:3125 #, c-format msgid "sequence option \"%s\" not supported here" msgstr "параметр послідовності \"%s\" тут не підтримується" -#: gram.y:3122 +#: gram.y:3164 #, c-format msgid "modulus for hash partition provided more than once" msgstr "модуль для геш-секції вказано неодноразово" -#: gram.y:3131 +#: gram.y:3173 #, c-format msgid "remainder for hash partition provided more than once" msgstr "решта для геш-секції вказана неодноразово" -#: gram.y:3138 +#: gram.y:3180 #, c-format msgid "unrecognized hash partition bound specification \"%s\"" msgstr "нерозпізнана специфікація границі геш-секції \"%s\"" -#: gram.y:3146 +#: gram.y:3188 #, c-format msgid "modulus for hash partition must be specified" msgstr "потрібно вказати модуль для геш-секції" -#: gram.y:3150 +#: gram.y:3193 #, c-format msgid "remainder for hash partition must be specified" msgstr "потрібно вказати решту для геш-секції" -#: gram.y:3358 gram.y:3392 +#: gram.y:3402 gram.y:3436 #, c-format msgid "STDIN/STDOUT not allowed with PROGRAM" msgstr "STDIN/STDOUT не допускається з PROGRAM" -#: gram.y:3364 +#: gram.y:3408 #, c-format msgid "WHERE clause not allowed with COPY TO" msgstr "Речення WHERE не дозволяється використовувати з COPY TO" -#: gram.y:3712 gram.y:3719 gram.y:13023 gram.y:13031 +#: gram.y:3756 gram.y:3763 gram.y:13168 gram.y:13176 #, c-format msgid "GLOBAL is deprecated in temporary table creation" msgstr "GLOBAL при створенні тимчасових таблиць застаріло" -#: gram.y:3995 +#: gram.y:4045 #, c-format msgid "for a generated column, GENERATED ALWAYS must be specified" msgstr "для згенерованого стовпця, потрібно вказати GENERATED ALWAYS" -#: gram.y:4432 +#: gram.y:4546 #, c-format msgid "a column list with %s is only supported for ON DELETE actions" msgstr "список стовпців з %s підтримується лише для дій ON DELETE" -#: gram.y:5151 +#: gram.y:5265 #, c-format msgid "CREATE EXTENSION ... FROM is no longer supported" msgstr "CREATE EXTENSION ... FROM більше не підтримується" -#: gram.y:5849 +#: gram.y:5963 #, c-format msgid "unrecognized row security option \"%s\"" msgstr "нерозпізнаний параметр безпеки рядка \"%s\"" -#: gram.y:5850 +#: gram.y:5964 #, c-format msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently." msgstr "Наразі підтримуються лише політики PERMISSIVE або RESTRICTIVE." -#: gram.y:5935 +#: gram.y:6049 #, c-format msgid "CREATE OR REPLACE CONSTRAINT TRIGGER is not supported" msgstr "CREATE OR REPLACE CONSTRAINT TRIGGER не підтримується" -#: gram.y:5972 +#: gram.y:6087 msgid "duplicate trigger events specified" msgstr "вказані події тригера повторюються" -#: gram.y:6121 +#: gram.y:6237 #, c-format msgid "conflicting constraint properties" msgstr "конфліктуючі властивості обмеження" -#: gram.y:6220 +#: gram.y:6338 #, c-format msgid "CREATE ASSERTION is not yet implemented" msgstr "CREATE ASSERTION ще не реалізований" -#: gram.y:6537 +#: gram.y:6656 #, c-format msgid "dropping an enum value is not implemented" msgstr "відкидання значення переліку не реалізовано" -#: gram.y:6655 -#, c-format -msgid "RECHECK is no longer required" -msgstr "RECHECK більше не потребується" - -#: gram.y:6656 -#, c-format -msgid "Update your data type." -msgstr "Поновіть ваш тип даних." - -#: gram.y:8529 +#: gram.y:8636 #, c-format msgid "aggregates cannot have output arguments" msgstr "агрегатні функції не можуть мати вихідних аргументів" -#: gram.y:11221 gram.y:11240 +#: gram.y:11329 gram.y:11348 #, c-format msgid "WITH CHECK OPTION not supported on recursive views" msgstr "WITH CHECK OPTION не підтримується для рекурсивних подань" -#: gram.y:13162 +#: gram.y:13315 #, c-format msgid "LIMIT #,# syntax is not supported" msgstr "Синтаксис LIMIT #,# не підтримується" -#: gram.y:13163 +#: gram.y:13316 #, c-format msgid "Use separate LIMIT and OFFSET clauses." msgstr "Використайте окремі речення LIMIT і OFFSET." -#: gram.y:14038 +#: gram.y:14203 #, c-format msgid "only one DEFAULT value is allowed" msgstr "допускається лише одне значення DEFAULT" -#: gram.y:14047 +#: gram.y:14212 #, c-format msgid "only one PATH value per column is allowed" msgstr "для стовпця допускається лише одне значення PATH" -#: gram.y:14056 +#: gram.y:14221 #, c-format msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\"" msgstr "конфліктуючі або надлишкові оголошення NULL / NOT NULL для стовпця \"%s\"" -#: gram.y:14065 +#: gram.y:14230 #, c-format msgid "unrecognized column option \"%s\"" msgstr "нерозпізнаний параметр стовпця \"%s\"" -#: gram.y:14147 +#: gram.y:14263 +#, c-format +msgid "option name \"%s\" cannot be used in XMLTABLE" +msgstr "ім'я параметру \"%s\" не може використовуватись в XMLTABLE" + +#: gram.y:14319 #, c-format msgid "only string constants are supported in JSON_TABLE path specification" -msgstr "" +msgstr "у специфікації шляху JSON_TABLE підтримуються лише рядкові константи" -#: gram.y:14469 +#: gram.y:14641 #, c-format msgid "precision for type float must be at least 1 bit" msgstr "точність для типу float повинна бути мінімум 1 біт" -#: gram.y:14478 +#: gram.y:14650 #, c-format msgid "precision for type float must be less than 54 bits" msgstr "точність для типу float повинна бути меньше 54 біт" -#: gram.y:14995 +#: gram.y:15167 #, c-format msgid "wrong number of parameters on left side of OVERLAPS expression" msgstr "неправильна кількість параметрів у лівій частині виразу OVERLAPS" -#: gram.y:15000 +#: gram.y:15172 #, c-format msgid "wrong number of parameters on right side of OVERLAPS expression" msgstr "неправильна кількість параметрів у правій частині виразу OVERLAPS" -#: gram.y:15177 +#: gram.y:15350 #, c-format msgid "UNIQUE predicate is not yet implemented" msgstr "Предикат UNIQUE ще не реалізований" -#: gram.y:15591 +#: gram.y:15764 #, c-format msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP" msgstr "використовувати речення ORDER BY з WITHIN GROUP неодноразово, не можна" -#: gram.y:15596 +#: gram.y:15769 #, c-format msgid "cannot use DISTINCT with WITHIN GROUP" msgstr "використовувати DISTINCT з WITHIN GROUP не можна" -#: gram.y:15601 +#: gram.y:15774 #, c-format msgid "cannot use VARIADIC with WITHIN GROUP" msgstr "використовувати VARIADIC з WITHIN GROUP не можна" -#: gram.y:16328 gram.y:16352 +#: gram.y:16501 gram.y:16525 #, c-format msgid "frame start cannot be UNBOUNDED FOLLOWING" msgstr "початком рамки не може бути UNBOUNDED FOLLOWING" -#: gram.y:16333 +#: gram.y:16506 #, c-format msgid "frame starting from following row cannot end with current row" msgstr "рамка, яка починається з наступного рядка не можна закінчуватись поточним рядком" -#: gram.y:16357 +#: gram.y:16530 #, c-format msgid "frame end cannot be UNBOUNDED PRECEDING" msgstr "кінцем рамки не може бути UNBOUNDED PRECEDING" -#: gram.y:16363 +#: gram.y:16536 #, c-format msgid "frame starting from current row cannot have preceding rows" msgstr "рамка, яка починається з поточного рядка не може мати попередніх рядків" -#: gram.y:16370 +#: gram.y:16543 #, c-format msgid "frame starting from following row cannot have preceding rows" msgstr "рамка, яка починається з наступного рядка не може мати попередніх рядків" -#: gram.y:16919 +#: gram.y:17081 #, c-format msgid "unrecognized JSON encoding: %s" msgstr "нерозпізнане кодування JSON: %s" -#: gram.y:17243 +#: gram.y:17406 #, c-format msgid "type modifier cannot have parameter name" msgstr "тип modifier не може мати ім'я параметра" -#: gram.y:17249 +#: gram.y:17412 #, c-format msgid "type modifier cannot have ORDER BY" msgstr "тип modifier не може мати ORDER BY" -#: gram.y:17317 gram.y:17324 gram.y:17331 +#: gram.y:17480 gram.y:17487 gram.y:17494 #, c-format msgid "%s cannot be used as a role name here" msgstr "%s не можна використовувати тут як ім'я ролі" -#: gram.y:17421 gram.y:18906 +#: gram.y:17584 gram.y:19074 #, c-format msgid "WITH TIES cannot be specified without ORDER BY clause" msgstr "WITH TIES не можна задати без оператора ORDER BY" -#: gram.y:18597 gram.y:18772 +#: gram.y:18767 gram.y:18942 msgid "improper use of \"*\"" msgstr "неправильне використання \"*\"" -#: gram.y:18836 +#: gram.y:19006 #, c-format msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type" msgstr "сортувальна агрегатна функція з прямим аргументом VARIADIC повинна мати один агрегатний аргумент VARIADIC того ж типу даних" -#: gram.y:18873 +#: gram.y:19043 #, c-format msgid "multiple ORDER BY clauses not allowed" msgstr "кілька речень ORDER BY не допускається" -#: gram.y:18884 +#: gram.y:19054 #, c-format msgid "multiple OFFSET clauses not allowed" msgstr "кілька речень OFFSET не допускається" -#: gram.y:18893 +#: gram.y:19063 #, c-format msgid "multiple LIMIT clauses not allowed" msgstr "кілька речень LIMIT не допускається" -#: gram.y:18902 -#, c-format -msgid "multiple limit options not allowed" -msgstr "використання декількох параметрів обмеження не дозволяється" - -#: gram.y:18929 +#: gram.y:19099 #, c-format msgid "multiple WITH clauses not allowed" msgstr "кілька речень WITH не допускається" -#: gram.y:19122 +#: gram.y:19295 #, c-format msgid "OUT and INOUT arguments aren't allowed in TABLE functions" msgstr "В табличних функціях аргументи OUT і INOUT не дозволяються" -#: gram.y:19255 +#: gram.y:19429 #, c-format msgid "multiple COLLATE clauses not allowed" msgstr "кілька речень COLLATE не допускається" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19293 gram.y:19306 +#: gram.y:19469 gram.y:19482 #, c-format msgid "%s constraints cannot be marked DEFERRABLE" msgstr "обмеження %s не можуть бути позначені DEFERRABLE" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19319 +#: gram.y:19495 #, c-format msgid "%s constraints cannot be marked NOT VALID" msgstr "обмеження %s не можуть бути позначені NOT VALID" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19332 +#: gram.y:19508 #, c-format msgid "%s constraints cannot be marked NO INHERIT" msgstr "обмеження %s не можуть бути позначені NO INHERIT" -#: gram.y:19354 +#. translator: %s is CHECK, UNIQUE, or similar +#: gram.y:19521 +#, c-format +msgid "%s constraints cannot be marked NOT ENFORCED" +msgstr "обмеження %s не можуть бути позначені NOT ENFORCED" + +#. translator: %s is CHECK, UNIQUE, or similar +#: gram.y:19543 +#, c-format +msgid "%s constraints cannot be marked ENFORCED" +msgstr "обмеження %s не можуть бути позначені як ENFORCED" + +#: gram.y:19565 #, c-format msgid "unrecognized partitioning strategy \"%s\"" msgstr "нерозпізнана стратегія секціонування \"%s\"" -#: gram.y:19378 +#: gram.y:19589 #, c-format msgid "invalid publication object list" msgstr "неприпустимий список об'єктів публікації" -#: gram.y:19379 +#: gram.y:19590 #, c-format msgid "One of TABLE or TABLES IN SCHEMA must be specified before a standalone table or schema name." msgstr "Одну з TABLE або TABLES IN SCHEMA необхідно вказати перед назвою автономної таблиці або схеми." -#: gram.y:19395 +#: gram.y:19606 #, c-format msgid "invalid table name" msgstr "неприпустиме ім'я таблиці" -#: gram.y:19416 +#: gram.y:19627 #, c-format msgid "WHERE clause not allowed for schema" msgstr "Речення WHERE не допускається для схеми" -#: gram.y:19423 +#: gram.y:19634 #, c-format msgid "column specification not allowed for schema" msgstr "специфікація стовпця не дозволена для схеми" -#: gram.y:19437 +#: gram.y:19648 #, c-format msgid "invalid schema name" msgstr "неприпустиме ім'я схеми" -#: guc-file.l:192 +#: guc-file.l:193 #, c-format msgid "empty configuration file name: \"%s\"" msgstr "пуста назва файлу конфігурації: \"%s\"" -#: guc-file.l:209 +#: guc-file.l:210 #, c-format msgid "could not open configuration file \"%s\": maximum nesting depth exceeded" msgstr "не вдалося відкрити файл конфігурації \"%s\": максимальну глибину вкладення перевищено" -#: guc-file.l:229 +#: guc-file.l:230 #, c-format msgid "configuration file recursion in \"%s\"" msgstr "рекурсія файлу конфігурації в \"%s\"" -#: guc-file.l:245 +#: guc-file.l:246 #, c-format msgid "could not open configuration file \"%s\": %m" msgstr "не вдалося відкрити файл конфігурації \"%s\": %m" -#: guc-file.l:256 +#: guc-file.l:257 #, c-format msgid "skipping missing configuration file \"%s\"" msgstr "відсутній файл конфігурації \"%s\" пропускається" -#: guc-file.l:511 +#: guc-file.l:518 #, c-format msgid "syntax error in file \"%s\" line %u, near end of line" msgstr "синтаксична помилка у файлі \"%s\" поблизу кінця рядка %u" -#: guc-file.l:521 +#: guc-file.l:528 #, c-format msgid "syntax error in file \"%s\" line %u, near token \"%s\"" msgstr "синтаксична помилка у файлі \"%s\" рядок %u, поблизу маркера \"%s\"" -#: guc-file.l:541 +#: guc-file.l:548 #, c-format msgid "too many syntax errors found, abandoning file \"%s\"" msgstr "знайдено занадто багато синтаксичних помилок, переривання файла \"%s\"" -#: jsonpath_gram.y:267 +#: jsonpath_gram.y:269 #, c-format msgid ".decimal() can only have an optional precision[,scale]." msgstr ".decimal() може мати лише необов'язковий параметр precision[,scale]." -#: jsonpath_gram.y:599 +#: jsonpath_gram.y:601 #, c-format msgid "Unrecognized flag character \"%.*s\" in LIKE_REGEX predicate." msgstr "Нерозпізнаний символ позначки \"%.*s\" в предикаті LIKE_REGEX." -#: jsonpath_gram.y:677 +#: jsonpath_gram.y:679 #, c-format msgid "XQuery \"x\" flag (expanded regular expressions) is not implemented" msgstr "XQuery \"x\" позначка (розширені регулярні вирази) не реалізовано" @@ -30882,168 +32434,172 @@ msgstr "неприпустима шістнадцяткова послідовн msgid "unexpected end after backslash" msgstr "неочікуваний кінець після зворотного слеша" -#: jsonpath_scan.l:201 repl_scanner.l:211 scan.l:756 +#: jsonpath_scan.l:201 repl_scanner.l:217 scan.l:742 msgid "unterminated quoted string" msgstr "незавершений рядок в лапках" -#: jsonpath_scan.l:228 +#: jsonpath_scan.l:227 msgid "unexpected end of comment" msgstr "неочікуваний кінець коментаря" -#: jsonpath_scan.l:319 +#: jsonpath_scan.l:317 msgid "invalid numeric literal" msgstr "невірна числова константа" -#: jsonpath_scan.l:325 jsonpath_scan.l:331 jsonpath_scan.l:337 scan.l:1064 -#: scan.l:1068 scan.l:1072 scan.l:1076 +#: jsonpath_scan.l:322 jsonpath_scan.l:327 jsonpath_scan.l:332 scan.l:1056 +#: scan.l:1060 scan.l:1064 scan.l:1068 msgid "trailing junk after numeric literal" msgstr "сміття після числового літерала" #. translator: %s is typically "syntax error" -#: jsonpath_scan.l:375 +#: jsonpath_scan.l:378 #, c-format msgid "%s at end of jsonpath input" msgstr "%s в кінці введення jsonpath" #. translator: first %s is typically "syntax error" -#: jsonpath_scan.l:382 +#: jsonpath_scan.l:385 #, c-format msgid "%s at or near \"%s\" of jsonpath input" msgstr "%s в або біля \"%s\" введення jsonpath" -#: jsonpath_scan.l:568 +#: jsonpath_scan.l:545 msgid "invalid input" msgstr "неправильні вхідні дані" -#: jsonpath_scan.l:594 +#: jsonpath_scan.l:571 msgid "invalid hexadecimal digit" msgstr "неприпустима шістнадцяткова цифра" -#: jsonpath_scan.l:625 +#: jsonpath_scan.l:602 #, c-format msgid "could not convert Unicode to server encoding" msgstr "не вдалося перетворити Юнікод в серверне кодування" -#: repl_gram.y:318 repl_gram.y:359 +#: repl_gram.y:322 repl_gram.y:363 #, c-format msgid "invalid timeline %u" msgstr "неприпустима часова шкала %u" -#: repl_scanner.l:154 +#: repl_scanner.l:160 msgid "invalid streaming start location" msgstr "неприпустиме розташування початку потокового передавання" -#: scan.l:497 +#: scan.l:483 msgid "unterminated /* comment" msgstr "незавершений коментар /*" -#: scan.l:517 +#: scan.l:503 msgid "unterminated bit string literal" msgstr "незавершений бітовий рядок" -#: scan.l:531 +#: scan.l:517 msgid "unterminated hexadecimal string literal" msgstr "незавершений шістнадцятковий рядок" -#: scan.l:581 +#: scan.l:567 #, c-format msgid "unsafe use of string constant with Unicode escapes" msgstr "небезпечне використання рядкової констани зі спеціальними кодами Unicode" -#: scan.l:582 +#: scan.l:568 #, c-format msgid "String constants with Unicode escapes cannot be used when \"standard_conforming_strings\" is off." -msgstr "" +msgstr "Константи рядка зі спеціальними кодами Unicode не можна використовувати, коли параметр \"standard_conforming_strings\" вимкнений." -#: scan.l:643 +#: scan.l:629 msgid "unhandled previous state in xqs" msgstr "необроблений попередній стан у xqs" -#: scan.l:717 +#: scan.l:703 #, c-format msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX." msgstr "Спеціальні коди Unicode повинні бути \\uXXXX або \\UXXXXXXXX." -#: scan.l:728 +#: scan.l:714 #, c-format msgid "unsafe use of \\' in a string literal" msgstr "небезпечне використання символу \\' в рядку" -#: scan.l:729 +#: scan.l:715 #, c-format msgid "Use '' to write quotes in strings. \\' is insecure in client-only encodings." msgstr "Використайте \" щоб записати лапки в рядку. Запис \\' небезпечний лише для клієнтських кодувань." -#: scan.l:801 +#: scan.l:787 msgid "unterminated dollar-quoted string" msgstr "незавершений рядок з $" -#: scan.l:818 scan.l:828 +#: scan.l:804 scan.l:814 msgid "zero-length delimited identifier" msgstr "пустий ідентифікатор із роздільниками" -#: scan.l:839 syncrep_scanner.l:101 +#: scan.l:825 syncrep_scanner.l:114 msgid "unterminated quoted identifier" msgstr "незавершений ідентифікатор в лапках" -#: scan.l:1002 +#: scan.l:988 msgid "operator too long" msgstr "занадто довгий оператор" -#: scan.l:1015 +#: scan.l:1001 +msgid "parameter number too large" +msgstr "номер параметра занадто великий" + +#: scan.l:1007 msgid "trailing junk after parameter" msgstr "сміття після параметру" -#: scan.l:1036 +#: scan.l:1028 msgid "invalid hexadecimal integer" msgstr "неприпустиме шістнадцяткове число" -#: scan.l:1040 +#: scan.l:1032 msgid "invalid octal integer" msgstr "помилкове вісімкове число" -#: scan.l:1044 +#: scan.l:1036 msgid "invalid binary integer" msgstr "неприпустиме двійкове ціле число" #. translator: %s is typically the translation of "syntax error" -#: scan.l:1239 +#: scan.l:1231 #, c-format msgid "%s at end of input" msgstr "%s в кінці введення" #. translator: first %s is typically the translation of "syntax error" -#: scan.l:1247 +#: scan.l:1239 #, c-format msgid "%s at or near \"%s\"" msgstr "%s в або поблизу \"%s\"" -#: scan.l:1439 +#: scan.l:1431 #, c-format msgid "nonstandard use of \\' in a string literal" msgstr "нестандартне використання \\' в рядку" -#: scan.l:1440 +#: scan.l:1432 #, c-format msgid "Use '' to write quotes in strings, or use the escape string syntax (E'...')." msgstr "Щоб записати лапки у рядку використовуйте \" або синтаксис спеціальних рядків (E'...')." -#: scan.l:1449 +#: scan.l:1441 #, c-format msgid "nonstandard use of \\\\ in a string literal" msgstr "нестандартне використання \\\\ в рядку" -#: scan.l:1450 +#: scan.l:1442 #, c-format msgid "Use the escape string syntax for backslashes, e.g., E'\\\\'." msgstr "Для запису зворотніх скісних рисок \"\\\" використовуйте синтаксис спеціальних рядків, наприклад E'\\\\'." -#: scan.l:1464 +#: scan.l:1456 #, c-format msgid "nonstandard use of escape in a string literal" msgstr "нестандартне використання спеціального символу в рядку" -#: scan.l:1465 +#: scan.l:1457 #, c-format msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'." msgstr "Для запису спеціальних символів використовуйте синтаксис спеціальних рядків E'\\r\\n'." diff --git a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c index 5049f17cfc3..97687dd51ac 100644 --- a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c +++ b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c @@ -65,6 +65,8 @@ static void libpqrcv_get_senderinfo(WalReceiverConn *conn, static char *libpqrcv_identify_system(WalReceiverConn *conn, TimeLineID *primary_tli); static char *libpqrcv_get_dbname_from_conninfo(const char *connInfo); +static char *libpqrcv_get_option_from_conninfo(const char *connInfo, + const char *keyword); static int libpqrcv_server_version(WalReceiverConn *conn); static void libpqrcv_readtimelinehistoryfile(WalReceiverConn *conn, TimeLineID tli, char **filename, @@ -153,6 +155,7 @@ libpqrcv_connect(const char *conninfo, bool replication, bool logical, const char *vals[7]; /* END_NEON */ int i = 0; + char *options_val = NULL; /* * Re-validate connection string. The validation already happened at DDL @@ -180,6 +183,8 @@ libpqrcv_connect(const char *conninfo, bool replication, bool logical, if (logical) { + char *opt = NULL; + /* Tell the publisher to translate to our encoding */ keys[++i] = "client_encoding"; vals[i] = GetDatabaseEncodingName(); @@ -192,8 +197,13 @@ libpqrcv_connect(const char *conninfo, bool replication, bool logical, * running in the subscriber, such as triggers.) This should * match what pg_dump does. */ + opt = libpqrcv_get_option_from_conninfo(conninfo, "options"); + options_val = psprintf("%s -c datestyle=ISO -c intervalstyle=postgres -c extra_float_digits=3", + (opt == NULL) ? "" : opt); keys[++i] = "options"; - vals[i] = "-c datestyle=ISO -c intervalstyle=postgres -c extra_float_digits=3"; + vals[i] = options_val; + if (opt != NULL) + pfree(opt); } else { @@ -238,6 +248,9 @@ libpqrcv_connect(const char *conninfo, bool replication, bool logical, WAIT_EVENT_LIBPQWALRECEIVER_CONNECT); if (password) pfree(password); + if (options_val != NULL) + pfree(options_val); + if (PQstatus(conn->streamConn) != CONNECTION_OK) goto bad_connection_errmsg; @@ -487,9 +500,21 @@ libpqrcv_server_version(WalReceiverConn *conn) */ static char * libpqrcv_get_dbname_from_conninfo(const char *connInfo) +{ + return libpqrcv_get_option_from_conninfo(connInfo, "dbname"); +} + +/* + * Get the value of the option with the given keyword from the primary + * server's conninfo. + * + * If the option is not found in connInfo, return NULL value. + */ +static char * +libpqrcv_get_option_from_conninfo(const char *connInfo, const char *keyword) { PQconninfoOption *opts; - char *dbname = NULL; + char *option = NULL; char *err = NULL; opts = PQconninfoParse(connInfo, &err); @@ -507,21 +532,21 @@ libpqrcv_get_dbname_from_conninfo(const char *connInfo) for (PQconninfoOption *opt = opts; opt->keyword != NULL; ++opt) { /* - * If multiple dbnames are specified, then the last one will be - * returned + * If the same option appears multiple times, then the last one will + * be returned */ - if (strcmp(opt->keyword, "dbname") == 0 && opt->val && + if (strcmp(opt->keyword, keyword) == 0 && opt->val && *opt->val) { - if (dbname) - pfree(dbname); + if (option) + pfree(option); - dbname = pstrdup(opt->val); + option = pstrdup(opt->val); } } PQconninfoFree(opts); - return dbname; + return option; } /* diff --git a/src/backend/replication/logical/decode.c b/src/backend/replication/logical/decode.c index cc03f0706e9..5e15cb1825e 100644 --- a/src/backend/replication/logical/decode.c +++ b/src/backend/replication/logical/decode.c @@ -521,18 +521,9 @@ heap_decode(LogicalDecodingContext *ctx, XLogRecordBuffer *buf) /* * Inplace updates are only ever performed on catalog tuples and - * can, per definition, not change tuple visibility. Inplace - * updates don't affect storage or interpretation of table rows, - * so they don't affect logicalrep_write_tuple() outcomes. Hence, - * we don't process invalidations from the original operation. If - * inplace updates did affect those things, invalidations wouldn't - * make it work, since there are no snapshot-specific versions of - * inplace-updated values. Since we also don't decode catalog - * tuples, we're not interested in the record's contents. - * - * WAL contains likely-unnecessary commit-time invals from the - * CacheInvalidateHeapTuple() call in - * heap_inplace_update_and_unlock(). Excess invalidation is safe. + * can, per definition, not change tuple visibility. Since we + * also don't decode catalog tuples, we're not interested in the + * record's contents. */ break; diff --git a/src/backend/replication/logical/logical.c b/src/backend/replication/logical/logical.c index 348f78bbf9d..3736f1649c7 100644 --- a/src/backend/replication/logical/logical.c +++ b/src/backend/replication/logical/logical.c @@ -413,11 +413,11 @@ CreateInitDecodingContext(const char *plugin, * without further interlock its return value might immediately be out of * date. * - * So we have to acquire the ProcArrayLock to prevent computation of new - * xmin horizons by other backends, get the safe decoding xid, and inform - * the slot machinery about the new limit. Once that's done the - * ProcArrayLock can be released as the slot machinery now is - * protecting against vacuum. + * So we have to acquire both the ReplicationSlotControlLock and the + * ProcArrayLock to prevent concurrent computation and update of new xmin + * horizons by other backends, get the safe decoding xid, and inform the + * slot machinery about the new limit. Once that's done both locks can be + * released as the slot machinery now is protecting against vacuum. * * Note that, temporarily, the data, not just the catalog, xmin has to be * reserved if a data snapshot is to be exported. Otherwise the initial @@ -430,6 +430,7 @@ CreateInitDecodingContext(const char *plugin, * * ---- */ + LWLockAcquire(ReplicationSlotControlLock, LW_EXCLUSIVE); LWLockAcquire(ProcArrayLock, LW_EXCLUSIVE); xmin_horizon = GetOldestSafeDecodingTransactionId(!need_full_snapshot); @@ -444,6 +445,7 @@ CreateInitDecodingContext(const char *plugin, ReplicationSlotsComputeRequiredXmin(true); LWLockRelease(ProcArrayLock); + LWLockRelease(ReplicationSlotControlLock); ReplicationSlotMarkDirty(); ReplicationSlotSave(); diff --git a/src/backend/replication/logical/slotsync.c b/src/backend/replication/logical/slotsync.c index 61b2e9396aa..f9e19771aeb 100644 --- a/src/backend/replication/logical/slotsync.c +++ b/src/backend/replication/logical/slotsync.c @@ -483,70 +483,71 @@ drop_local_obsolete_slots(List *remote_slot_list) * Reserve WAL for the currently active local slot using the specified WAL * location (restart_lsn). * - * If the given WAL location has been removed, reserve WAL using the oldest - * existing WAL segment. + * If the given WAL location has been removed or is at risk of removal, + * reserve WAL using the oldest segment that is non-removable. */ static void reserve_wal_for_local_slot(XLogRecPtr restart_lsn) { - XLogSegNo oldest_segno; + XLogRecPtr slot_min_lsn; + XLogRecPtr min_safe_lsn; XLogSegNo segno; ReplicationSlot *slot = MyReplicationSlot; Assert(slot != NULL); - Assert(XLogRecPtrIsInvalid(slot->data.restart_lsn)); + Assert(!XLogRecPtrIsValid(slot->data.restart_lsn)); - while (true) - { - SpinLockAcquire(&slot->mutex); - slot->data.restart_lsn = restart_lsn; - SpinLockRelease(&slot->mutex); - - /* Prevent WAL removal as fast as possible */ - ReplicationSlotsComputeRequiredLSN(); - - XLByteToSeg(slot->data.restart_lsn, segno, wal_segment_size); + /* + * Acquire an exclusive lock to prevent the checkpoint process from + * concurrently calculating the minimum slot LSN (see + * CheckPointReplicationSlots), ensuring that if WAL reservation occurs + * first, the checkpoint must wait for the restart_lsn update before + * calculating the minimum LSN. + * + * Note: Unlike ReplicationSlotReserveWal(), this lock does not protect a + * newly synced slot from being invalidated if a concurrent checkpoint has + * invoked CheckPointReplicationSlots() before the WAL reservation here. + * This can happen because the initial restart_lsn received from the + * remote server can precede the redo pointer. Therefore, when selecting + * the initial restart_lsn, we consider using the redo pointer or the + * minimum slot LSN (if those values are greater than the remote + * restart_lsn) instead of relying solely on the remote value. + */ + LWLockAcquire(ReplicationSlotAllocationLock, LW_EXCLUSIVE); - /* - * Find the oldest existing WAL segment file. - * - * Normally, we can determine it by using the last removed segment - * number. However, if no WAL segment files have been removed by a - * checkpoint since startup, we need to search for the oldest segment - * file from the current timeline existing in XLOGDIR. - * - * XXX: Currently, we are searching for the oldest segment in the - * current timeline as there is less chance of the slot's restart_lsn - * from being some prior timeline, and even if it happens, in the - * worst case, we will wait to sync till the slot's restart_lsn moved - * to the current timeline. - */ - oldest_segno = XLogGetLastRemovedSegno() + 1; + /* + * Determine the minimum non-removable LSN by comparing the redo pointer + * with the minimum slot LSN. + * + * The minimum slot LSN is considered because the redo pointer advances at + * every checkpoint, even when replication slots are present on the + * standby. In such scenarios, the redo pointer can exceed the remote + * restart_lsn, while WALs preceding the remote restart_lsn remain + * protected by a local replication slot. + */ + min_safe_lsn = GetRedoRecPtr(); + slot_min_lsn = XLogGetReplicationSlotMinimumLSN(); - if (oldest_segno == 1) - { - TimeLineID cur_timeline; + if (XLogRecPtrIsValid(slot_min_lsn) && min_safe_lsn > slot_min_lsn) + min_safe_lsn = slot_min_lsn; - GetWalRcvFlushRecPtr(NULL, &cur_timeline); - oldest_segno = XLogGetOldestSegno(cur_timeline); - } + /* + * If the minimum safe LSN is greater than the given restart_lsn, use it + * as the initial restart_lsn for the newly synced slot. Otherwise, use + * the given remote restart_lsn. + */ + SpinLockAcquire(&slot->mutex); + slot->data.restart_lsn = Max(restart_lsn, min_safe_lsn); + SpinLockRelease(&slot->mutex); - elog(DEBUG1, "segno: " UINT64_FORMAT " of purposed restart_lsn for the synced slot, oldest_segno: " UINT64_FORMAT " available", - segno, oldest_segno); + ReplicationSlotsComputeRequiredLSN(); - /* - * If all required WAL is still there, great, otherwise retry. The - * slot should prevent further removal of WAL, unless there's a - * concurrent ReplicationSlotsComputeRequiredLSN() after we've written - * the new restart_lsn above, so normally we should never need to loop - * more than twice. - */ - if (segno >= oldest_segno) - break; + XLByteToSeg(slot->data.restart_lsn, segno, wal_segment_size); + if (XLogGetLastRemovedSegno() >= segno) + elog(ERROR, "WAL required by replication slot %s has been removed concurrently", + NameStr(slot->data.name)); - /* Retry using the location of the oldest wal segment */ - XLogSegNoOffsetToRecPtr(oldest_segno, 0, wal_segment_size, restart_lsn); - } + LWLockRelease(ReplicationSlotAllocationLock); } /* @@ -776,6 +777,7 @@ synchronize_one_slot(RemoteSlot *remote_slot, Oid remote_dbid) reserve_wal_for_local_slot(remote_slot->restart_lsn); + LWLockAcquire(ReplicationSlotControlLock, LW_EXCLUSIVE); LWLockAcquire(ProcArrayLock, LW_EXCLUSIVE); xmin_horizon = GetOldestSafeDecodingTransactionId(true); SpinLockAcquire(&slot->mutex); @@ -784,6 +786,7 @@ synchronize_one_slot(RemoteSlot *remote_slot, Oid remote_dbid) SpinLockRelease(&slot->mutex); ReplicationSlotsComputeRequiredXmin(true); LWLockRelease(ProcArrayLock); + LWLockRelease(ReplicationSlotControlLock); update_and_persist_local_synced_slot(remote_slot, remote_dbid); @@ -1175,10 +1178,10 @@ ProcessSlotSyncInterrupts(WalReceiverConn *wrconn) { CHECK_FOR_INTERRUPTS(); - if (ShutdownRequestPending) + if (SlotSyncCtx->stopSignaled) { ereport(LOG, - errmsg("replication slot synchronization worker is shutting down on receiving SIGINT")); + errmsg("replication slot synchronization worker is shutting down because promotion is triggered")); proc_exit(0); } @@ -1409,7 +1412,7 @@ ReplSlotSyncWorkerMain(const void *startup_data, size_t startup_data_len) /* Setup signal handling */ pqsignal(SIGHUP, SignalHandlerForConfigReload); - pqsignal(SIGINT, SignalHandlerForShutdownRequest); + pqsignal(SIGINT, StatementCancelHandler); pqsignal(SIGTERM, die); pqsignal(SIGFPE, FloatExceptionHandler); pqsignal(SIGUSR1, procsignal_sigusr1_handler); @@ -1516,7 +1519,8 @@ ReplSlotSyncWorkerMain(const void *startup_data, size_t startup_data_len) /* * The slot sync worker can't get here because it will only stop when it - * receives a SIGINT from the startup process, or when there is an error. + * receives a stop request from the startup process, or when there is an + * error. */ Assert(false); } @@ -1601,8 +1605,12 @@ ShutDownSlotSync(void) SpinLockRelease(&SlotSyncCtx->mutex); + /* + * Signal slotsync worker if it was still running. The worker will stop + * upon detecting that the stopSignaled flag is set to true. + */ if (worker_pid != InvalidPid) - kill(worker_pid, SIGINT); + kill(worker_pid, SIGUSR1); /* Wait for slot sync to end */ for (;;) diff --git a/src/backend/replication/logical/tablesync.c b/src/backend/replication/logical/tablesync.c index 9ea7b2cfc12..49d4ec3bee4 100644 --- a/src/backend/replication/logical/tablesync.c +++ b/src/backend/replication/logical/tablesync.c @@ -1432,13 +1432,27 @@ LogicalRepSyncTableStart(XLogRecPtr *origin_startpos) MyLogicalRepWorker->relstate_lsn = InvalidXLogRecPtr; SpinLockRelease(&MyLogicalRepWorker->relmutex); - /* Update the state and make it visible to others. */ + /* + * Update the state, create the replication origin, and make them visible + * to others. + */ StartTransactionCommand(); UpdateSubscriptionRelState(MyLogicalRepWorker->subid, MyLogicalRepWorker->relid, MyLogicalRepWorker->relstate, MyLogicalRepWorker->relstate_lsn, false); + + /* + * Create the replication origin in a separate transaction from the one + * that sets up the origin in shared memory. This prevents the risk that + * changes to the origin in shared memory cannot be rolled back if the + * transaction aborts. + */ + originid = replorigin_by_name(originname, true); + if (!OidIsValid(originid)) + originid = replorigin_create(originname); + CommitTransactionCommand(); pgstat_report_stat(true); @@ -1478,37 +1492,21 @@ LogicalRepSyncTableStart(XLogRecPtr *origin_startpos) CRS_USE_SNAPSHOT, origin_startpos); /* - * Setup replication origin tracking. The purpose of doing this before the - * copy is to avoid doing the copy again due to any error in setting up - * origin tracking. + * Advance the origin to the LSN got from walrcv_create_slot and then set + * up the origin. The advancement is WAL logged for the purpose of + * recovery. Locks are to prevent the replication origin from vanishing + * while advancing. + * + * The purpose of doing these before the copy is to avoid doing the copy + * again due to any error in advancing or setting up origin tracking. */ - originid = replorigin_by_name(originname, true); - if (!OidIsValid(originid)) - { - /* - * Origin tracking does not exist, so create it now. - * - * Then advance to the LSN got from walrcv_create_slot. This is WAL - * logged for the purpose of recovery. Locks are to prevent the - * replication origin from vanishing while advancing. - */ - originid = replorigin_create(originname); - - LockRelationOid(ReplicationOriginRelationId, RowExclusiveLock); - replorigin_advance(originid, *origin_startpos, InvalidXLogRecPtr, - true /* go backward */ , true /* WAL log */ ); - UnlockRelationOid(ReplicationOriginRelationId, RowExclusiveLock); + LockRelationOid(ReplicationOriginRelationId, RowExclusiveLock); + replorigin_advance(originid, *origin_startpos, InvalidXLogRecPtr, + true /* go backward */ , true /* WAL log */ ); + UnlockRelationOid(ReplicationOriginRelationId, RowExclusiveLock); - replorigin_session_setup(originid, 0); - replorigin_session_origin = originid; - } - else - { - ereport(ERROR, - (errcode(ERRCODE_DUPLICATE_OBJECT), - errmsg("replication origin \"%s\" already exists", - originname))); - } + replorigin_session_setup(originid, 0); + replorigin_session_origin = originid; /* * Make sure that the copy command runs as the table owner, unless the diff --git a/src/backend/replication/logical/worker.c b/src/backend/replication/logical/worker.c index 62429103708..b6d4b68765c 100644 --- a/src/backend/replication/logical/worker.c +++ b/src/backend/replication/logical/worker.c @@ -4756,6 +4756,23 @@ InitializeLogRepWorker(void) MySubscription->name))); CommitTransactionCommand(); + + /* + * Register a callback to reset the origin state before aborting any + * pending transaction during shutdown (see ShutdownPostgres()). This will + * avoid origin advancement for an incomplete transaction which could + * otherwise lead to its loss as such a transaction won't be sent by the + * server again. + * + * Note that even a LOG or DEBUG statement placed after setting the origin + * state may process a shutdown signal before committing the current apply + * operation. So, it is important to register such a callback here. + * + * Register this callback here to ensure that all types of logical + * replication workers that set up origins and apply remote transactions + * are protected. + */ + before_shmem_exit(replorigin_reset, (Datum) 0); } /* @@ -4797,19 +4814,6 @@ SetupApplyOrSyncWorker(int worker_slot) InitializeLogRepWorker(); - /* - * Register a callback to reset the origin state before aborting any - * pending transaction during shutdown (see ShutdownPostgres()). This will - * avoid origin advancement for an in-complete transaction which could - * otherwise lead to its loss as such a transaction won't be sent by the - * server again. - * - * Note that even a LOG or DEBUG statement placed after setting the origin - * state may process a shutdown signal before committing the current apply - * operation. So, it is important to register such a callback here. - */ - before_shmem_exit(replorigin_reset, (Datum) 0); - /* Connect to the origin and start the replication. */ elog(DEBUG1, "connecting to publisher using connection string \"%s\"", MySubscription->conninfo); diff --git a/src/backend/replication/pgoutput/pgoutput.c b/src/backend/replication/pgoutput/pgoutput.c index 693ac28de3c..b9ed2291c83 100644 --- a/src/backend/replication/pgoutput/pgoutput.c +++ b/src/backend/replication/pgoutput/pgoutput.c @@ -344,7 +344,11 @@ parse_output_parameters(List *options, PGOutputData *data) errmsg("conflicting or redundant options"))); publication_names_given = true; - if (!SplitIdentifierString(strVal(defel->arg), ',', + /* + * Pass a copy of the DefElem->arg since SplitIdentifierString + * modifies its input. + */ + if (!SplitIdentifierString(pstrdup(strVal(defel->arg)), ',', &data->publication_names)) ereport(ERROR, (errcode(ERRCODE_INVALID_NAME), diff --git a/src/backend/replication/slot.c b/src/backend/replication/slot.c index eb030863f8d..43d6807f209 100644 --- a/src/backend/replication/slot.c +++ b/src/backend/replication/slot.c @@ -345,13 +345,7 @@ ReplicationSlotValidateNameInternal(const char *name, int *err_code, * name: Name of the slot * db_specific: logical decoding is db specific; if the slot is going to * be used for that pass true, otherwise false. - * two_phase: Allows decoding of prepared transactions. We allow this option - * to be enabled only at the slot creation time. If we allow this option - * to be changed during decoding then it is quite possible that we skip - * prepare first time because this option was not enabled. Now next time - * during getting changes, if the two_phase option is enabled it can skip - * prepare because by that time start decoding point has been moved. So the - * user will only get commit prepared. + * two_phase: If enabled, allows decoding of prepared transactions. * failover: If enabled, allows the slot to be synced to standbys so * that logical replication can be resumed after failover. * synced: True if the slot is synchronized from the primary server. @@ -869,6 +863,16 @@ ReplicationSlotDrop(const char *name, bool nowait) /* * Change the definition of the slot identified by the specified name. + * + * Altering the two_phase property of a slot requires caution on the + * client-side. Enabling it at any random point during decoding has the + * risk that transactions prepared before this change may be skipped by + * the decoder, leading to missing prepare records on the client. So, we + * enable it for subscription related slots only once the initial tablesync + * is finished. See comments atop worker.c. Disabling it is safe only when + * there are no pending prepared transaction, otherwise, the changes of + * already prepared transactions can be replicated again along with their + * corresponding commit leading to duplicate data or errors. */ void ReplicationSlotAlter(const char *name, const bool *failover, @@ -1139,8 +1143,11 @@ ReplicationSlotPersist(void) /* * Compute the oldest xmin across all slots and store it in the ProcArray. * - * If already_locked is true, ProcArrayLock has already been acquired - * exclusively. + * If already_locked is true, both the ReplicationSlotControlLock and the + * ProcArrayLock have already been acquired exclusively. It is crucial that the + * caller first acquires the ReplicationSlotControlLock, followed by the + * ProcArrayLock, to prevent any undetectable deadlocks since this function + * acquires them in that order. */ void ReplicationSlotsComputeRequiredXmin(bool already_locked) @@ -1150,8 +1157,33 @@ ReplicationSlotsComputeRequiredXmin(bool already_locked) TransactionId agg_catalog_xmin = InvalidTransactionId; Assert(ReplicationSlotCtl != NULL); + Assert(!already_locked || + (LWLockHeldByMeInMode(ReplicationSlotControlLock, LW_EXCLUSIVE) && + LWLockHeldByMeInMode(ProcArrayLock, LW_EXCLUSIVE))); - LWLockAcquire(ReplicationSlotControlLock, LW_SHARED); + /* + * Hold the ReplicationSlotControlLock until after updating the slot xmin + * values, so no backend updates the initial xmin for newly created slot + * concurrently. A shared lock is used here to minimize lock contention, + * especially when many slots exist and advancements occur frequently. + * This is safe since an exclusive lock is taken during initial slot xmin + * update in slot creation. + * + * One might think that we can hold the ProcArrayLock exclusively and + * update the slot xmin values, but it could increase lock contention on + * the ProcArrayLock, which is not great since this function can be called + * at non-negligible frequency. + * + * Concurrent invocation of this function may cause the computed slot xmin + * to regress. However, this is harmless because tuples prior to the most + * recent xmin are no longer useful once advancement occurs (see + * LogicalConfirmReceivedLocation where the slot's xmin value is flushed + * before updating the effective_xmin). Thus, such regression merely + * prevents VACUUM from prematurely removing tuples without causing the + * early deletion of required data. + */ + if (!already_locked) + LWLockAcquire(ReplicationSlotControlLock, LW_SHARED); for (i = 0; i < max_replication_slots; i++) { @@ -1186,9 +1218,10 @@ ReplicationSlotsComputeRequiredXmin(bool already_locked) agg_catalog_xmin = effective_catalog_xmin; } - LWLockRelease(ReplicationSlotControlLock); - ProcArraySetReplicationSlotXmin(agg_xmin, agg_catalog_xmin, already_locked); + + if (!already_locked) + LWLockRelease(ReplicationSlotControlLock); } /* @@ -1540,63 +1573,65 @@ void ReplicationSlotReserveWal(void) { ReplicationSlot *slot = MyReplicationSlot; + XLogSegNo segno; + XLogRecPtr restart_lsn; Assert(slot != NULL); Assert(slot->data.restart_lsn == InvalidXLogRecPtr); Assert(slot->last_saved_restart_lsn == InvalidXLogRecPtr); /* - * The replication slot mechanism is used to prevent removal of required - * WAL. As there is no interlock between this routine and checkpoints, WAL - * segments could concurrently be removed when a now stale return value of - * ReplicationSlotsComputeRequiredLSN() is used. In the unlikely case that - * this happens we'll just retry. + * The replication slot mechanism is used to prevent the removal of + * required WAL. + * + * Acquire an exclusive lock to prevent the checkpoint process from + * concurrently computing the minimum slot LSN (see + * CheckPointReplicationSlots). This ensures that the WAL reserved for + * replication cannot be removed during a checkpoint. + * + * The mechanism is reliable because if WAL reservation occurs first, the + * checkpoint must wait for the restart_lsn update before determining the + * minimum non-removable LSN. On the other hand, if the checkpoint happens + * first, subsequent WAL reservations will select positions at or beyond + * the redo pointer of that checkpoint. */ - while (true) - { - XLogSegNo segno; - XLogRecPtr restart_lsn; + LWLockAcquire(ReplicationSlotAllocationLock, LW_EXCLUSIVE); - /* - * For logical slots log a standby snapshot and start logical decoding - * at exactly that position. That allows the slot to start up more - * quickly. But on a standby we cannot do WAL writes, so just use the - * replay pointer; effectively, an attempt to create a logical slot on - * standby will cause it to wait for an xl_running_xact record to be - * logged independently on the primary, so that a snapshot can be - * built using the record. - * - * None of this is needed (or indeed helpful) for physical slots as - * they'll start replay at the last logged checkpoint anyway. Instead - * return the location of the last redo LSN. While that slightly - * increases the chance that we have to retry, it's where a base - * backup has to start replay at. - */ - if (SlotIsPhysical(slot)) - restart_lsn = GetRedoRecPtr(); - else if (RecoveryInProgress()) - restart_lsn = GetXLogReplayRecPtr(NULL); - else - restart_lsn = GetXLogInsertRecPtr(); + /* + * For logical slots log a standby snapshot and start logical decoding at + * exactly that position. That allows the slot to start up more quickly. + * But on a standby we cannot do WAL writes, so just use the replay + * pointer; effectively, an attempt to create a logical slot on standby + * will cause it to wait for an xl_running_xact record to be logged + * independently on the primary, so that a snapshot can be built using the + * record. + * + * None of this is needed (or indeed helpful) for physical slots as + * they'll start replay at the last logged checkpoint anyway. Instead, + * return the location of the last redo LSN, where a base backup has to + * start replay at. + */ + if (SlotIsPhysical(slot)) + restart_lsn = GetRedoRecPtr(); + else if (RecoveryInProgress()) + restart_lsn = GetXLogReplayRecPtr(NULL); + else + restart_lsn = GetXLogInsertRecPtr(); - SpinLockAcquire(&slot->mutex); - slot->data.restart_lsn = restart_lsn; - SpinLockRelease(&slot->mutex); + SpinLockAcquire(&slot->mutex); + slot->data.restart_lsn = restart_lsn; + SpinLockRelease(&slot->mutex); - /* prevent WAL removal as fast as possible */ - ReplicationSlotsComputeRequiredLSN(); + /* prevent WAL removal as fast as possible */ + ReplicationSlotsComputeRequiredLSN(); - /* - * If all required WAL is still there, great, otherwise retry. The - * slot should prevent further removal of WAL, unless there's a - * concurrent ReplicationSlotsComputeRequiredLSN() after we've written - * the new restart_lsn above, so normally we should never need to loop - * more than twice. - */ - XLByteToSeg(slot->data.restart_lsn, segno, wal_segment_size); - if (XLogGetLastRemovedSegno() < segno) - break; - } + /* Checkpoint shouldn't remove the required WAL. */ + XLByteToSeg(slot->data.restart_lsn, segno, wal_segment_size); + if (XLogGetLastRemovedSegno() >= segno) + elog(ERROR, "WAL required by replication slot %s has been removed concurrently", + NameStr(slot->data.name)); + + LWLockRelease(ReplicationSlotAllocationLock); if (!RecoveryInProgress() && SlotIsLogical(slot)) { @@ -2104,6 +2139,12 @@ CheckPointReplicationSlots(bool is_shutdown) * acquiring a slot we cannot take the control lock - but that's OK, * because holding ReplicationSlotAllocationLock is strictly stronger, and * enough to guarantee that nobody can change the in_use bits on us. + * + * Additionally, acquiring the Allocation lock is necessary to serialize + * the slot flush process with concurrent slot WAL reservation. This + * ensures that the WAL position being reserved is either flushed to disk + * or is beyond or equal to the redo pointer of the current checkpoint + * (See ReplicationSlotReserveWal for details). */ LWLockAcquire(ReplicationSlotAllocationLock, LW_SHARED); diff --git a/src/backend/replication/walsender.c b/src/backend/replication/walsender.c index e7e49712573..d8138ba8af2 100644 --- a/src/backend/replication/walsender.c +++ b/src/backend/replication/walsender.c @@ -1151,8 +1151,8 @@ parseCreateReplSlotOptions(CreateReplicationSlotCmd *cmd, else ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), - errmsg("unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"", - defel->defname, action))); + errmsg("unrecognized value for %s option \"%s\": \"%s\"", + "CREATE_REPLICATION_SLOT", defel->defname, action))); } else if (strcmp(defel->defname, "reserve_wal") == 0) { diff --git a/src/backend/rewrite/rewriteHandler.c b/src/backend/rewrite/rewriteHandler.c index 2ef0e7fbf3a..4f7f8a65ce2 100644 --- a/src/backend/rewrite/rewriteHandler.c +++ b/src/backend/rewrite/rewriteHandler.c @@ -592,7 +592,10 @@ rewriteRuleAction(Query *parsetree, } } - /* OK, it's safe to combine the CTE lists */ + /* + * OK, it's safe to combine the CTE lists. Beware that RewriteQuery + * knows we concatenate the lists in this order. + */ sub_action->cteList = list_concat(sub_action->cteList, copyObject(parsetree->cteList)); /* ... and don't forget about the associated flags */ @@ -3871,9 +3874,13 @@ rewriteTargetView(Query *parsetree, Relation view) * orig_rt_length is the length of the originating query's rtable, for product * queries created by fireRules(), and 0 otherwise. This is used to skip any * already-processed VALUES RTEs from the original query. + * + * num_ctes_processed is the number of CTEs at the end of the query's cteList + * that have already been rewritten, and must not be rewritten again. */ static List * -RewriteQuery(Query *parsetree, List *rewrite_events, int orig_rt_length) +RewriteQuery(Query *parsetree, List *rewrite_events, int orig_rt_length, + int num_ctes_processed) { CmdType event = parsetree->commandType; bool instead = false; @@ -3887,17 +3894,29 @@ RewriteQuery(Query *parsetree, List *rewrite_events, int orig_rt_length) * First, recursively process any insert/update/delete/merge statements in * WITH clauses. (We have to do this first because the WITH clauses may * get copied into rule actions below.) + * + * Any new WITH clauses from rule actions are processed when we recurse + * into product queries below. However, when recursing, we must take care + * to avoid rewriting a CTE query more than once (because expanding + * generated columns in the targetlist more than once would fail). Since + * new CTEs from product queries are added to the start of the list (see + * rewriteRuleAction), we just skip the last num_ctes_processed items. */ foreach(lc1, parsetree->cteList) { CommonTableExpr *cte = lfirst_node(CommonTableExpr, lc1); Query *ctequery = castNode(Query, cte->ctequery); + int i = foreach_current_index(lc1); List *newstuff; + /* Skip already-processed CTEs at the end of the list */ + if (i >= list_length(parsetree->cteList) - num_ctes_processed) + break; + if (ctequery->commandType == CMD_SELECT) continue; - newstuff = RewriteQuery(ctequery, rewrite_events, 0); + newstuff = RewriteQuery(ctequery, rewrite_events, 0, 0); /* * Currently we can only handle unconditional, single-statement DO @@ -3957,6 +3976,7 @@ RewriteQuery(Query *parsetree, List *rewrite_events, int orig_rt_length) errmsg("multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH"))); } } + num_ctes_processed = list_length(parsetree->cteList); /* * If the statement is an insert, update, delete, or merge, adjust its @@ -4288,7 +4308,8 @@ RewriteQuery(Query *parsetree, List *rewrite_events, int orig_rt_length) newstuff = RewriteQuery(pt, rewrite_events, pt == parsetree ? orig_rt_length : - product_orig_rt_length); + product_orig_rt_length, + num_ctes_processed); rewritten = list_concat(rewritten, newstuff); } @@ -4563,7 +4584,7 @@ QueryRewrite(Query *parsetree) * * Apply all non-SELECT rules possibly getting 0 or many queries */ - querylist = RewriteQuery(parsetree, NIL, 0); + querylist = RewriteQuery(parsetree, NIL, 0, 0); /* * Step 2 diff --git a/src/backend/storage/aio/aio.c b/src/backend/storage/aio/aio.c index dcc47069757..e64afe68b2b 100644 --- a/src/backend/storage/aio/aio.c +++ b/src/backend/storage/aio/aio.c @@ -53,7 +53,7 @@ static inline void pgaio_io_update_state(PgAioHandle *ioh, PgAioHandleState new_state); static void pgaio_io_reclaim(PgAioHandle *ioh); -static void pgaio_io_resowner_register(PgAioHandle *ioh); +static void pgaio_io_resowner_register(PgAioHandle *ioh, struct ResourceOwnerData *resowner); static void pgaio_io_wait_for_free(void); static PgAioHandle *pgaio_io_from_wref(PgAioWaitRef *iow, uint64 *ref_generation); static const char *pgaio_io_state_get_name(PgAioHandleState s); @@ -217,7 +217,7 @@ pgaio_io_acquire_nb(struct ResourceOwnerData *resowner, PgAioReturn *ret) pgaio_my_backend->handed_out_io = ioh; if (resowner) - pgaio_io_resowner_register(ioh); + pgaio_io_resowner_register(ioh, resowner); if (ret) { @@ -406,13 +406,13 @@ pgaio_io_update_state(PgAioHandle *ioh, PgAioHandleState new_state) } static void -pgaio_io_resowner_register(PgAioHandle *ioh) +pgaio_io_resowner_register(PgAioHandle *ioh, struct ResourceOwnerData *resowner) { Assert(!ioh->resowner); - Assert(CurrentResourceOwner); + Assert(resowner); - ResourceOwnerRememberAioHandle(CurrentResourceOwner, &ioh->resowner_node); - ioh->resowner = CurrentResourceOwner; + ResourceOwnerRememberAioHandle(resowner, &ioh->resowner_node); + ioh->resowner = resowner; } /* diff --git a/src/backend/storage/aio/method_io_uring.c b/src/backend/storage/aio/method_io_uring.c index bb06da63a8e..c73954aee6d 100644 --- a/src/backend/storage/aio/method_io_uring.c +++ b/src/backend/storage/aio/method_io_uring.c @@ -156,7 +156,7 @@ pgaio_uring_check_capabilities(void) * also has a secondary benefit: We can determine precisely how much * memory we need for each io_uring instance. */ -#if defined(HAVE_LIBURING_QUEUE_INIT_MEM) && defined(IORING_SETUP_NO_MMAP) +#if defined(HAVE_IO_URING_QUEUE_INIT_MEM) && defined(IORING_SETUP_NO_MMAP) { struct io_uring test_ring; size_t ring_size; @@ -341,7 +341,7 @@ pgaio_uring_shmem_init(bool first_time) * with its data in shared memory. Otherwise fall back io_uring * creating a memory mapping for each ring. */ -#if defined(HAVE_LIBURING_QUEUE_INIT_MEM) && defined(IORING_SETUP_NO_MMAP) +#if defined(HAVE_IO_URING_QUEUE_INIT_MEM) && defined(IORING_SETUP_NO_MMAP) if (pgaio_uring_caps.mem_init_size > 0) { struct io_uring_params p = {0}; @@ -559,13 +559,14 @@ pgaio_uring_drain_locked(PgAioUringContext *context) for (int i = 0; i < ncqes; i++) { struct io_uring_cqe *cqe = cqes[i]; - PgAioHandle *ioh; + PgAioHandle *ioh = io_uring_cqe_get_data(cqe); + int result = cqe->res; - ioh = io_uring_cqe_get_data(cqe); errcallback.arg = ioh; + io_uring_cqe_seen(&context->io_uring_ring, cqe); - pgaio_io_process_completion(ioh, cqe->res); + pgaio_io_process_completion(ioh, result); errcallback.arg = NULL; } diff --git a/src/backend/storage/file/fd.c b/src/backend/storage/file/fd.c index 1b43d7b9112..e2ea20dd18c 100644 --- a/src/backend/storage/file/fd.c +++ b/src/backend/storage/file/fd.c @@ -164,6 +164,9 @@ bool data_sync_retry = false; /* How SyncDataDirectory() should do its job. */ int recovery_init_sync_method = DATA_DIR_SYNC_METHOD_FSYNC; +/* How data files should be bulk-extended with zeros. */ +int file_extend_method = DEFAULT_FILE_EXTEND_METHOD; + /* Which kinds of files should be opened with PG_O_DIRECT. */ int io_direct_flags; diff --git a/src/backend/storage/ipc/dsm_registry.c b/src/backend/storage/ipc/dsm_registry.c index 1d4fd31ffed..ec063dec460 100644 --- a/src/backend/storage/ipc/dsm_registry.c +++ b/src/backend/storage/ipc/dsm_registry.c @@ -101,9 +101,10 @@ init_dsm_registry(void) { /* Initialize dynamic shared hash table for registry. */ dsm_registry_dsa = dsa_create(LWTRANCHE_DSM_REGISTRY_DSA); + dsm_registry_table = dshash_create(dsm_registry_dsa, &dsh_params, NULL); + dsa_pin(dsm_registry_dsa); dsa_pin_mapping(dsm_registry_dsa); - dsm_registry_table = dshash_create(dsm_registry_dsa, &dsh_params, NULL); /* Store handles in shared memory for other backends to use. */ DSMRegistryCtx->dsah = dsa_get_handle(dsm_registry_dsa); @@ -134,6 +135,7 @@ GetNamedDSMSegment(const char *name, size_t size, DSMRegistryEntry *entry; MemoryContext oldcontext; void *ret; + dsm_segment *seg; Assert(found); @@ -158,29 +160,31 @@ GetNamedDSMSegment(const char *name, size_t size, entry = dshash_find_or_insert(dsm_registry_table, name, found); if (!(*found)) { + entry->handle = DSM_HANDLE_INVALID; + entry->size = size; + } + else if (entry->size != size) + ereport(ERROR, + (errmsg("requested DSM segment size does not match size of existing segment"))); + + if (entry->handle == DSM_HANDLE_INVALID) + { + *found = false; + /* Initialize the segment. */ - dsm_segment *seg = dsm_create(size, 0); + seg = dsm_create(size, 0); + + if (init_callback) + (*init_callback) (dsm_segment_address(seg)); dsm_pin_segment(seg); dsm_pin_mapping(seg); entry->handle = dsm_segment_handle(seg); - entry->size = size; - ret = dsm_segment_address(seg); - - if (init_callback) - (*init_callback) (ret); - } - else if (entry->size != size) - { - ereport(ERROR, - (errmsg("requested DSM segment size does not match size of " - "existing segment"))); } else { - dsm_segment *seg = dsm_find_mapping(entry->handle); - /* If the existing segment is not already attached, attach it now. */ + seg = dsm_find_mapping(entry->handle); if (seg == NULL) { seg = dsm_attach(entry->handle); @@ -189,10 +193,9 @@ GetNamedDSMSegment(const char *name, size_t size, dsm_pin_mapping(seg); } - - ret = dsm_segment_address(seg); } + ret = dsm_segment_address(seg); dshash_release_lock(dsm_registry_table, entry); MemoryContextSwitchTo(oldcontext); diff --git a/src/backend/storage/ipc/ipc.c b/src/backend/storage/ipc/ipc.c index 567739b5be9..0684d343468 100644 --- a/src/backend/storage/ipc/ipc.c +++ b/src/backend/storage/ipc/ipc.c @@ -29,6 +29,7 @@ #endif #include "storage/dsm.h" #include "storage/ipc.h" +#include "storage/lwlock.h" #include "tcop/tcopprot.h" @@ -229,13 +230,19 @@ shmem_exit(int code) { shmem_exit_inprogress = true; + /* + * Release any LWLocks we might be holding before callbacks run. This + * prevents accessing locks in detached DSM segments and allows callbacks + * to acquire new locks. + */ + LWLockReleaseAll(); + /* * Call before_shmem_exit callbacks. * * These should be things that need most of the system to still be up and * working, such as cleanup of temp relations, which requires catalog - * access; or things that need to be completed because later cleanup steps - * depend on them, such as releasing lwlocks. + * access. */ elog(DEBUG3, "shmem_exit(%d): %d before_shmem_exit callbacks to make", code, before_shmem_exit_index); diff --git a/src/backend/storage/ipc/shmem.c b/src/backend/storage/ipc/shmem.c index ff3a738c19c..21e12e2f527 100644 --- a/src/backend/storage/ipc/shmem.c +++ b/src/backend/storage/ipc/shmem.c @@ -603,7 +603,7 @@ pg_get_shmem_allocations_numa(PG_FUNCTION_ARGS) InitMaterializedSRF(fcinfo, 0); max_nodes = pg_numa_get_max_node(); - nodes = palloc(sizeof(Size) * (max_nodes + 1)); + nodes = palloc(sizeof(Size) * (max_nodes + 2)); /* * Shared memory allocations can vary in size and may not align with OS @@ -639,7 +639,6 @@ pg_get_shmem_allocations_numa(PG_FUNCTION_ARGS) hash_seq_init(&hstat, ShmemIndex); /* output all allocated entries */ - memset(nulls, 0, sizeof(nulls)); while ((ent = (ShmemIndexEnt *) hash_seq_search(&hstat)) != NULL) { int i; @@ -688,22 +687,33 @@ pg_get_shmem_allocations_numa(PG_FUNCTION_ARGS) elog(ERROR, "failed NUMA pages inquiry status: %m"); /* Count number of NUMA nodes used for this shared memory entry */ - memset(nodes, 0, sizeof(Size) * (max_nodes + 1)); + memset(nodes, 0, sizeof(Size) * (max_nodes + 2)); for (i = 0; i < shm_ent_page_count; i++) { int s = pages_status[i]; /* Ensure we are adding only valid index to the array */ - if (s < 0 || s > max_nodes) + if (s >= 0 && s <= max_nodes) + { + /* valid NUMA node */ + nodes[s]++; + continue; + } + else if (s == -2) { - elog(ERROR, "invalid NUMA node id outside of allowed range " - "[0, " UINT64_FORMAT "]: %d", max_nodes, s); + /* -2 means ENOENT (e.g. page was moved to swap) */ + nodes[max_nodes + 1]++; + continue; } - nodes[s]++; + elog(ERROR, "invalid NUMA node id outside of allowed range " + "[0, " UINT64_FORMAT "]: %d", max_nodes, s); } + /* no NULLs for regular nodes */ + memset(nulls, 0, sizeof(nulls)); + /* * Add one entry for each NUMA node, including those without allocated * memory for this segment. @@ -717,6 +727,14 @@ pg_get_shmem_allocations_numa(PG_FUNCTION_ARGS) tuplestore_putvalues(rsinfo->setResult, rsinfo->setDesc, values, nulls); } + + /* The last entry is used for pages without a NUMA node. */ + nulls[1] = true; + values[0] = CStringGetTextDatum(ent->key); + values[2] = Int64GetDatum(nodes[max_nodes + 1] * os_page_size); + + tuplestore_putvalues(rsinfo->setResult, rsinfo->setDesc, + values, nulls); } LWLockRelease(ShmemIndexLock); diff --git a/src/backend/storage/lmgr/lwlock.c b/src/backend/storage/lmgr/lwlock.c index 2d43bf2cc13..c3d4b7275ec 100644 --- a/src/backend/storage/lmgr/lwlock.c +++ b/src/backend/storage/lmgr/lwlock.c @@ -1004,7 +1004,7 @@ LWLockWakeup(LWLock *lock) else desired_state &= ~LW_FLAG_RELEASE_OK; - if (proclist_is_empty(&wakeup)) + if (proclist_is_empty(&lock->waiters)) desired_state &= ~LW_FLAG_HAS_WAITERS; desired_state &= ~LW_FLAG_LOCKED; /* release lock */ @@ -1946,6 +1946,10 @@ LWLockReleaseClearVar(LWLock *lock, pg_atomic_uint64 *valptr, uint64 val) * unchanged by this operation. This is necessary since InterruptHoldoffCount * has been set to an appropriate level earlier in error recovery. We could * decrement it below zero if we allow it to drop for each released lock! + * + * Note that this function must be safe to call even before the LWLock + * subsystem has been initialized (e.g., during early startup failures). + * In that case, num_held_lwlocks will be 0 and we do nothing. */ void LWLockReleaseAll(void) @@ -1956,6 +1960,8 @@ LWLockReleaseAll(void) LWLockRelease(held_lwlocks[num_held_lwlocks - 1].lock); } + + Assert(num_held_lwlocks == 0); } diff --git a/src/backend/storage/smgr/md.c b/src/backend/storage/smgr/md.c index b312d17a50f..501c22894e4 100644 --- a/src/backend/storage/smgr/md.c +++ b/src/backend/storage/smgr/md.c @@ -592,13 +592,24 @@ mdzeroextend(SMgrRelation reln, ForkNumber forknum, * that decision should be made though? For now just use a cutoff of * 8, anything between 4 and 8 worked OK in some local testing. */ - if (numblocks > 8) + if (numblocks > 8 && + file_extend_method != FILE_EXTEND_METHOD_WRITE_ZEROS) { - int ret; + int ret = 0; - ret = FileFallocate(v->mdfd_vfd, - seekpos, (off_t) BLCKSZ * numblocks, - WAIT_EVENT_DATA_FILE_EXTEND); +#ifdef HAVE_POSIX_FALLOCATE + if (file_extend_method == FILE_EXTEND_METHOD_POSIX_FALLOCATE) + { + ret = FileFallocate(v->mdfd_vfd, + seekpos, (off_t) BLCKSZ * numblocks, + WAIT_EVENT_DATA_FILE_EXTEND); + } + else +#endif + { + elog(ERROR, "unsupported file_extend_method: %d", + file_extend_method); + } if (ret != 0) { ereport(ERROR, @@ -1272,6 +1283,9 @@ mdnblocks(SMgrRelation reln, ForkNumber forknum) * functions for this relation or handled interrupts in between. This makes * sure we have opened all active segments, so that truncate loop will get * them all! + * + * If nblocks > curnblk, the request is ignored when we are InRecovery, + * otherwise, an error is raised. */ void mdtruncate(SMgrRelation reln, ForkNumber forknum, diff --git a/src/backend/storage/smgr/smgr.c b/src/backend/storage/smgr/smgr.c index 9de7107bfa4..a53911ad055 100644 --- a/src/backend/storage/smgr/smgr.c +++ b/src/backend/storage/smgr/smgr.c @@ -988,8 +988,17 @@ smgrtruncate(SMgrRelation reln, ForkNumber *forknum, int nforks, * backends to invalidate their copies of smgr_cached_nblocks, and * these ones too at the next command boundary. But ensure they aren't * outright wrong until then. + * + * We can have nblocks > old_nblocks when a relation was truncated + * multiple times, a replica applied all the truncations, and later + * restarts from a restartpoint located before the truncations. The + * relation on disk will be the size of the last truncate. When + * replaying the first truncate, we will have nblocks > current size. + * In such cases, smgr_truncate does nothing, so set the cached size + * to the old size rather than the requested size. */ - reln->smgr_cached_nblocks[forknum[i]] = nblocks[i]; + reln->smgr_cached_nblocks[forknum[i]] = + nblocks[i] > old_nblocks[i] ? old_nblocks[i] : nblocks[i]; } } diff --git a/src/backend/tsearch/dict_synonym.c b/src/backend/tsearch/dict_synonym.c index 0da5a9d6868..e44bf876f8b 100644 --- a/src/backend/tsearch/dict_synonym.c +++ b/src/backend/tsearch/dict_synonym.c @@ -50,7 +50,7 @@ findwrd(char *in, char **end, uint16 *flags) /* Skip leading spaces */ while (*in && isspace((unsigned char) *in)) - in += pg_mblen(in); + in += pg_mblen_cstr(in); /* Return NULL on empty lines */ if (*in == '\0') @@ -65,7 +65,7 @@ findwrd(char *in, char **end, uint16 *flags) while (*in && !isspace((unsigned char) *in)) { lastchar = in; - in += pg_mblen(in); + in += pg_mblen_cstr(in); } if (in - lastchar == 1 && t_iseq(lastchar, '*') && flags) diff --git a/src/backend/tsearch/dict_thesaurus.c b/src/backend/tsearch/dict_thesaurus.c index 1bebe36a691..33675428fd3 100644 --- a/src/backend/tsearch/dict_thesaurus.c +++ b/src/backend/tsearch/dict_thesaurus.c @@ -191,7 +191,7 @@ thesaurusRead(const char *filename, DictThesaurus *d) /* is it a comment? */ while (*ptr && isspace((unsigned char) *ptr)) - ptr += pg_mblen(ptr); + ptr += pg_mblen_cstr(ptr); if (t_iseq(ptr, '#') || *ptr == '\0' || t_iseq(ptr, '\n') || t_iseq(ptr, '\r')) @@ -237,13 +237,13 @@ thesaurusRead(const char *filename, DictThesaurus *d) { useasis = true; state = TR_INSUBS; - beginwrd = ptr + pg_mblen(ptr); + beginwrd = ptr + pg_mblen_cstr(ptr); } else if (t_iseq(ptr, '\\')) { useasis = false; state = TR_INSUBS; - beginwrd = ptr + pg_mblen(ptr); + beginwrd = ptr + pg_mblen_cstr(ptr); } else if (!isspace((unsigned char) *ptr)) { @@ -267,7 +267,7 @@ thesaurusRead(const char *filename, DictThesaurus *d) else elog(ERROR, "unrecognized thesaurus state: %d", state); - ptr += pg_mblen(ptr); + ptr += pg_mblen_cstr(ptr); } if (state == TR_INSUBS) diff --git a/src/backend/tsearch/regis.c b/src/backend/tsearch/regis.c index e59a8f09709..0b1e65bdcbe 100644 --- a/src/backend/tsearch/regis.c +++ b/src/backend/tsearch/regis.c @@ -37,7 +37,7 @@ RS_isRegis(const char *str) { if (state == RS_IN_WAIT) { - if (t_isalpha(c)) + if (t_isalpha_cstr(c)) /* okay */ ; else if (t_iseq(c, '[')) state = RS_IN_ONEOF; @@ -48,14 +48,14 @@ RS_isRegis(const char *str) { if (t_iseq(c, '^')) state = RS_IN_NONEOF; - else if (t_isalpha(c)) + else if (t_isalpha_cstr(c)) state = RS_IN_ONEOF_IN; else return false; } else if (state == RS_IN_ONEOF_IN || state == RS_IN_NONEOF) { - if (t_isalpha(c)) + if (t_isalpha_cstr(c)) /* okay */ ; else if (t_iseq(c, ']')) state = RS_IN_WAIT; @@ -64,7 +64,7 @@ RS_isRegis(const char *str) } else elog(ERROR, "internal error in RS_isRegis: state %d", state); - c += pg_mblen(c); + c += pg_mblen_cstr(c); } return (state == RS_IN_WAIT); @@ -96,15 +96,14 @@ RS_compile(Regis *r, bool issuffix, const char *str) { if (state == RS_IN_WAIT) { - if (t_isalpha(c)) + if (t_isalpha_cstr(c)) { if (ptr) ptr = newRegisNode(ptr, len); else ptr = r->node = newRegisNode(NULL, len); - COPYCHAR(ptr->data, c); ptr->type = RSF_ONEOF; - ptr->len = pg_mblen(c); + ptr->len = ts_copychar_cstr(ptr->data, c); } else if (t_iseq(c, '[')) { @@ -125,10 +124,9 @@ RS_compile(Regis *r, bool issuffix, const char *str) ptr->type = RSF_NONEOF; state = RS_IN_NONEOF; } - else if (t_isalpha(c)) + else if (t_isalpha_cstr(c)) { - COPYCHAR(ptr->data, c); - ptr->len = pg_mblen(c); + ptr->len = ts_copychar_cstr(ptr->data, c); state = RS_IN_ONEOF_IN; } else /* shouldn't get here */ @@ -136,11 +134,8 @@ RS_compile(Regis *r, bool issuffix, const char *str) } else if (state == RS_IN_ONEOF_IN || state == RS_IN_NONEOF) { - if (t_isalpha(c)) - { - COPYCHAR(ptr->data + ptr->len, c); - ptr->len += pg_mblen(c); - } + if (t_isalpha_cstr(c)) + ptr->len += ts_copychar_cstr(ptr->data + ptr->len, c); else if (t_iseq(c, ']')) state = RS_IN_WAIT; else /* shouldn't get here */ @@ -148,7 +143,7 @@ RS_compile(Regis *r, bool issuffix, const char *str) } else elog(ERROR, "internal error in RS_compile: state %d", state); - c += pg_mblen(c); + c += pg_mblen_cstr(c); } if (state != RS_IN_WAIT) /* shouldn't get here */ @@ -187,10 +182,10 @@ mb_strchr(char *str, char *c) char *ptr = str; bool res = false; - clen = pg_mblen(c); + clen = pg_mblen_cstr(c); while (*ptr && !res) { - plen = pg_mblen(ptr); + plen = pg_mblen_cstr(ptr); if (plen == clen) { i = plen; @@ -219,7 +214,7 @@ RS_execute(Regis *r, char *str) while (*c) { len++; - c += pg_mblen(c); + c += pg_mblen_cstr(c); } if (len < r->nchar) @@ -230,7 +225,7 @@ RS_execute(Regis *r, char *str) { len -= r->nchar; while (len-- > 0) - c += pg_mblen(c); + c += pg_mblen_cstr(c); } @@ -250,7 +245,7 @@ RS_execute(Regis *r, char *str) elog(ERROR, "unrecognized regis node type: %d", ptr->type); } ptr = ptr->next; - c += pg_mblen(c); + c += pg_mblen_cstr(c); } return true; diff --git a/src/backend/tsearch/spell.c b/src/backend/tsearch/spell.c index 146801885d7..0b9ac2e1179 100644 --- a/src/backend/tsearch/spell.c +++ b/src/backend/tsearch/spell.c @@ -233,7 +233,7 @@ findchar(char *str, int c) { if (t_iseq(str, c)) return str; - str += pg_mblen(str); + str += pg_mblen_cstr(str); } return NULL; @@ -246,7 +246,7 @@ findchar2(char *str, int c1, int c2) { if (t_iseq(str, c1) || t_iseq(str, c2)) return str; - str += pg_mblen(str); + str += pg_mblen_cstr(str); } return NULL; @@ -353,6 +353,7 @@ getNextFlagFromString(IspellDict *Conf, const char **sflagset, char *sflag) char *next; const char *sbuf = *sflagset; int maxstep; + int clen; bool stop = false; bool met_comma = false; @@ -364,11 +365,11 @@ getNextFlagFromString(IspellDict *Conf, const char **sflagset, char *sflag) { case FM_LONG: case FM_CHAR: - COPYCHAR(sflag, *sflagset); - sflag += pg_mblen(*sflagset); + clen = ts_copychar_cstr(sflag, *sflagset); + sflag += clen; /* Go to start of the next flag */ - *sflagset += pg_mblen(*sflagset); + *sflagset += clen; /* Check if we get all characters of flag */ maxstep--; @@ -418,7 +419,7 @@ getNextFlagFromString(IspellDict *Conf, const char **sflagset, char *sflag) *sflagset))); } - *sflagset += pg_mblen(*sflagset); + *sflagset += pg_mblen_cstr(*sflagset); } stop = true; break; @@ -544,7 +545,7 @@ NIImportDictionary(IspellDict *Conf, const char *filename) while (*s) { /* we allow only single encoded flags for faster works */ - if (pg_mblen(s) == 1 && isprint((unsigned char) *s) && !isspace((unsigned char) *s)) + if (pg_mblen_cstr(s) == 1 && isprint((unsigned char) *s) && !isspace((unsigned char) *s)) s++; else { @@ -565,7 +566,7 @@ NIImportDictionary(IspellDict *Conf, const char *filename) *s = '\0'; break; } - s += pg_mblen(s); + s += pg_mblen_cstr(s); } pstr = lowerstr_ctx(Conf, line); @@ -797,17 +798,17 @@ get_nextfield(char **str, char *next) while (**str) { + int clen = pg_mblen_cstr(*str); + if (state == PAE_WAIT_MASK) { if (t_iseq(*str, '#')) return false; else if (!isspace((unsigned char) **str)) { - int clen = pg_mblen(*str); - if (clen < avail) { - COPYCHAR(next, *str); + ts_copychar_with_len(next, *str, clen); next += clen; avail -= clen; } @@ -823,17 +824,15 @@ get_nextfield(char **str, char *next) } else { - int clen = pg_mblen(*str); - if (clen < avail) { - COPYCHAR(next, *str); + ts_copychar_with_len(next, *str, clen); next += clen; avail -= clen; } } } - *str += pg_mblen(*str); + *str += clen; } *next = '\0'; @@ -923,14 +922,15 @@ parse_affentry(char *str, char *mask, char *find, char *repl) while (*str) { + int clen = pg_mblen_cstr(str); + if (state == PAE_WAIT_MASK) { if (t_iseq(str, '#')) return false; else if (!isspace((unsigned char) *str)) { - COPYCHAR(pmask, str); - pmask += pg_mblen(str); + pmask += ts_copychar_with_len(pmask, str, clen); state = PAE_INMASK; } } @@ -943,8 +943,7 @@ parse_affentry(char *str, char *mask, char *find, char *repl) } else if (!isspace((unsigned char) *str)) { - COPYCHAR(pmask, str); - pmask += pg_mblen(str); + pmask += ts_copychar_with_len(pmask, str, clen); } } else if (state == PAE_WAIT_FIND) @@ -953,10 +952,9 @@ parse_affentry(char *str, char *mask, char *find, char *repl) { state = PAE_INFIND; } - else if (t_isalpha(str) || t_iseq(str, '\'') /* english 's */ ) + else if (t_isalpha_cstr(str) || t_iseq(str, '\'') /* english 's */ ) { - COPYCHAR(prepl, str); - prepl += pg_mblen(str); + prepl += ts_copychar_with_len(prepl, str, clen); state = PAE_INREPL; } else if (!isspace((unsigned char) *str)) @@ -971,10 +969,9 @@ parse_affentry(char *str, char *mask, char *find, char *repl) *pfind = '\0'; state = PAE_WAIT_REPL; } - else if (t_isalpha(str)) + else if (t_isalpha_cstr(str)) { - COPYCHAR(pfind, str); - pfind += pg_mblen(str); + pfind += ts_copychar_with_len(pfind, str, clen); } else if (!isspace((unsigned char) *str)) ereport(ERROR, @@ -987,10 +984,9 @@ parse_affentry(char *str, char *mask, char *find, char *repl) { break; /* void repl */ } - else if (t_isalpha(str)) + else if (t_isalpha_cstr(str)) { - COPYCHAR(prepl, str); - prepl += pg_mblen(str); + prepl += ts_copychar_with_len(prepl, str, clen); state = PAE_INREPL; } else if (!isspace((unsigned char) *str)) @@ -1005,10 +1001,9 @@ parse_affentry(char *str, char *mask, char *find, char *repl) *prepl = '\0'; break; } - else if (t_isalpha(str)) + else if (t_isalpha_cstr(str)) { - COPYCHAR(prepl, str); - prepl += pg_mblen(str); + prepl += ts_copychar_with_len(prepl, str, clen); } else if (!isspace((unsigned char) *str)) ereport(ERROR, @@ -1018,7 +1013,7 @@ parse_affentry(char *str, char *mask, char *find, char *repl) else elog(ERROR, "unrecognized state in parse_affentry: %d", state); - str += pg_mblen(str); + str += clen; } *pmask = *pfind = *prepl = '\0'; @@ -1071,10 +1066,9 @@ addCompoundAffixFlagValue(IspellDict *Conf, char *s, uint32 val) CompoundAffixFlag *newValue; char sbuf[BUFSIZ]; char *sflag; - int clen; while (*s && isspace((unsigned char) *s)) - s += pg_mblen(s); + s += pg_mblen_cstr(s); if (!*s) ereport(ERROR, @@ -1085,8 +1079,8 @@ addCompoundAffixFlagValue(IspellDict *Conf, char *s, uint32 val) sflag = sbuf; while (*s && !isspace((unsigned char) *s) && *s != '\n') { - clen = pg_mblen(s); - COPYCHAR(sflag, s); + int clen = ts_copychar_cstr(sflag, s); + sflag += clen; s += clen; } @@ -1267,7 +1261,7 @@ NIImportOOAffixes(IspellDict *Conf, const char *filename) char *s = recoded + strlen("FLAG"); while (*s && isspace((unsigned char) *s)) - s += pg_mblen(s); + s += pg_mblen_cstr(s); if (*s) { @@ -1466,11 +1460,11 @@ NIImportAffixes(IspellDict *Conf, const char *filename) if (s) { while (*s && !isspace((unsigned char) *s)) - s += pg_mblen(s); + s += pg_mblen_cstr(s); while (*s && isspace((unsigned char) *s)) - s += pg_mblen(s); + s += pg_mblen_cstr(s); - if (*s && pg_mblen(s) == 1) + if (*s && pg_mblen_cstr(s) == 1) { addCompoundAffixFlagValue(Conf, s, FF_COMPOUNDFLAG); Conf->usecompound = true; @@ -1499,7 +1493,7 @@ NIImportAffixes(IspellDict *Conf, const char *filename) flagflags = 0; while (*s && isspace((unsigned char) *s)) - s += pg_mblen(s); + s += pg_mblen_cstr(s); if (*s == '*') { @@ -1520,12 +1514,11 @@ NIImportAffixes(IspellDict *Conf, const char *filename) * be followed by EOL, whitespace, or ':'. Otherwise this is a * new-format flag command. */ - if (*s && pg_mblen(s) == 1) + if (*s && pg_mblen_cstr(s) == 1) { - COPYCHAR(flag, s); + flag[0] = *s++; flag[1] = '\0'; - s++; if (*s == '\0' || *s == '#' || *s == '\n' || *s == ':' || isspace((unsigned char) *s)) { diff --git a/src/backend/tsearch/ts_locale.c b/src/backend/tsearch/ts_locale.c index b77d8c23d36..f5826a86f53 100644 --- a/src/backend/tsearch/ts_locale.c +++ b/src/backend/tsearch/ts_locale.c @@ -31,36 +31,41 @@ static void tsearch_readline_callback(void *arg); */ #define WC_BUF_LEN 3 -int -t_isalpha(const char *ptr) -{ - int clen = pg_mblen(ptr); - wchar_t character[WC_BUF_LEN]; - pg_locale_t mylocale = 0; /* TODO */ - - if (clen == 1 || database_ctype_is_c) - return isalpha(TOUCHAR(ptr)); - - char2wchar(character, WC_BUF_LEN, ptr, clen, mylocale); - - return iswalpha((wint_t) character[0]); -} - -int -t_isalnum(const char *ptr) -{ - int clen = pg_mblen(ptr); - wchar_t character[WC_BUF_LEN]; - pg_locale_t mylocale = 0; /* TODO */ - - if (clen == 1 || database_ctype_is_c) - return isalnum(TOUCHAR(ptr)); - - char2wchar(character, WC_BUF_LEN, ptr, clen, mylocale); - - return iswalnum((wint_t) character[0]); +#define GENERATE_T_ISCLASS_DEF(character_class) \ +/* mblen shall be that of the first character */ \ +int \ +t_is##character_class##_with_len(const char *ptr, int mblen) \ +{ \ + int clen = pg_mblen_with_len(ptr, mblen); \ + wchar_t character[WC_BUF_LEN]; \ + pg_locale_t mylocale = 0; /* TODO */ \ + if (clen == 1 || database_ctype_is_c) \ + return is##character_class(TOUCHAR(ptr)); \ + char2wchar(character, WC_BUF_LEN, ptr, clen, mylocale); \ + return isw##character_class((wint_t) character[0]); \ +} \ +\ +/* ptr shall point to a NUL-terminated string */ \ +int \ +t_is##character_class##_cstr(const char *ptr) \ +{ \ + return t_is##character_class##_with_len(ptr, pg_mblen_cstr(ptr)); \ +} \ +/* ptr shall point to a string with pre-validated encoding */ \ +int \ +t_is##character_class##_unbounded(const char *ptr) \ +{ \ + return t_is##character_class##_with_len(ptr, pg_mblen_unbounded(ptr)); \ +} \ +/* historical name for _unbounded */ \ +int \ +t_is##character_class(const char *ptr) \ +{ \ + return t_is##character_class##_unbounded(ptr); \ } +GENERATE_T_ISCLASS_DEF(alnum) +GENERATE_T_ISCLASS_DEF(alpha) /* * Set up to read a file using tsearch_readline(). This facility is diff --git a/src/backend/tsearch/ts_selfuncs.c b/src/backend/tsearch/ts_selfuncs.c index 0c1d2bc1109..e71b0d92273 100644 --- a/src/backend/tsearch/ts_selfuncs.c +++ b/src/backend/tsearch/ts_selfuncs.c @@ -108,12 +108,14 @@ tsmatchsel(PG_FUNCTION_ARGS) * OK, there's a Var and a Const we're dealing with here. We need the * Const to be a TSQuery, else we can't do anything useful. We have to * check this because the Var might be the TSQuery not the TSVector. + * + * Also check that the Var really is a TSVector, in case this estimator is + * mistakenly attached to some other operator. */ - if (((Const *) other)->consttype == TSQUERYOID) + if (((Const *) other)->consttype == TSQUERYOID && + vardata.vartype == TSVECTOROID) { /* tsvector @@ tsquery or the other way around */ - Assert(vardata.vartype == TSVECTOROID); - selec = tsquerysel(&vardata, ((Const *) other)->constvalue); } else diff --git a/src/backend/tsearch/ts_utils.c b/src/backend/tsearch/ts_utils.c index 0b4a5786644..2bd69fbffb1 100644 --- a/src/backend/tsearch/ts_utils.c +++ b/src/backend/tsearch/ts_utils.c @@ -90,7 +90,7 @@ readstoplist(const char *fname, StopList *s, char *(*wordop) (const char *, size /* Trim trailing space */ while (*pbuf && !isspace((unsigned char) *pbuf)) - pbuf += pg_mblen(pbuf); + pbuf += pg_mblen_cstr(pbuf); *pbuf = '\0'; /* Skip empty lines */ diff --git a/src/backend/tsearch/wparser_def.c b/src/backend/tsearch/wparser_def.c index 79bcd32a063..62c773179d6 100644 --- a/src/backend/tsearch/wparser_def.c +++ b/src/backend/tsearch/wparser_def.c @@ -1728,7 +1728,8 @@ TParserGet(TParser *prs) prs->state->charlen = 0; else prs->state->charlen = (prs->charmaxlen == 1) ? prs->charmaxlen : - pg_mblen(prs->str + prs->state->posbyte); + pg_mblen_range(prs->str + prs->state->posbyte, + prs->str + prs->lenstr); Assert(prs->state->posbyte + prs->state->charlen <= prs->lenstr); Assert(prs->state->state >= TPS_Base && prs->state->state < TPS_Null); diff --git a/src/backend/utils/.gitignore b/src/backend/utils/.gitignore index 06855569594..6891124a264 100644 --- a/src/backend/utils/.gitignore +++ b/src/backend/utils/.gitignore @@ -4,3 +4,6 @@ /fmgr-stamp /probes.h /errcodes.h +/pgstat_wait_event.c +/wait_event_funcs_data.c +/wait_event_types.h diff --git a/src/backend/utils/Makefile b/src/backend/utils/Makefile index 140fbba5c22..4eba6f66e74 100644 --- a/src/backend/utils/Makefile +++ b/src/backend/utils/Makefile @@ -43,7 +43,7 @@ generated-header-symlinks: $(top_builddir)/src/include/utils/header-stamp submak submake-adt-headers: $(MAKE) -C adt jsonpath_gram.h -$(SUBDIRS:%=%-recursive): fmgr-stamp errcodes.h +$(SUBDIRS:%=%-recursive): fmgr-stamp errcodes.h pgstat_wait_event.c wait_event_funcs_data.c wait_event_types.h # fmgr-stamp records the last time we ran Gen_fmgrtab.pl. We don't rely on # the timestamps of the individual output files, because the Perl script @@ -55,6 +55,12 @@ fmgr-stamp: Gen_fmgrtab.pl $(catalogdir)/Catalog.pm $(top_srcdir)/src/include/ca errcodes.h: $(top_srcdir)/src/backend/utils/errcodes.txt generate-errcodes.pl $(PERL) $(srcdir)/generate-errcodes.pl --outfile $@ $< +pgstat_wait_event.c: wait_event_types.h +wait_event_funcs_data.c: wait_event_types.h + +wait_event_types.h: $(top_srcdir)/src/backend/utils/activity/wait_event_names.txt $(top_srcdir)/src/backend/utils/activity/generate-wait_event_types.pl + $(PERL) $(top_srcdir)/src/backend/utils/activity/generate-wait_event_types.pl --code $< + ifeq ($(enable_dtrace), yes) probes.h: postprocess_dtrace.sed probes.h.tmp sed -f $^ >$@ @@ -70,8 +76,8 @@ endif # These generated headers must be symlinked into src/include/. # We use header-stamp to record that we've done this because the symlinks # themselves may appear older than fmgr-stamp. -$(top_builddir)/src/include/utils/header-stamp: fmgr-stamp errcodes.h probes.h - cd '$(dir $@)' && for file in fmgroids.h fmgrprotos.h errcodes.h probes.h; do \ +$(top_builddir)/src/include/utils/header-stamp: fmgr-stamp errcodes.h probes.h pgstat_wait_event.c wait_event_funcs_data.c wait_event_types.h + cd '$(dir $@)' && for file in fmgroids.h fmgrprotos.h errcodes.h probes.h pgstat_wait_event.c wait_event_funcs_data.c wait_event_types.h; do \ rm -f $$file && $(LN_S) "../../../$(subdir)/$$file" . ; \ done touch $@ @@ -90,3 +96,4 @@ uninstall-data: clean: rm -f probes.h probes.h.tmp rm -f fmgroids.h fmgrprotos.h fmgrtab.c fmgr-stamp errcodes.h + rm -f wait_event_types.h pgstat_wait_event.c wait_event_funcs_data.c diff --git a/src/backend/utils/activity/.gitignore b/src/backend/utils/activity/.gitignore deleted file mode 100644 index bd0c0c77729..00000000000 --- a/src/backend/utils/activity/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -/pgstat_wait_event.c -/wait_event_types.h -/wait_event_funcs_data.c diff --git a/src/backend/utils/activity/Makefile b/src/backend/utils/activity/Makefile index 9c2443e1ecd..b90f47e52b4 100644 --- a/src/backend/utils/activity/Makefile +++ b/src/backend/utils/activity/Makefile @@ -36,17 +36,8 @@ OBJS = \ wait_event.o \ wait_event_funcs.o -include $(top_srcdir)/src/backend/common.mk - -wait_event_funcs.o: wait_event_funcs_data.c -wait_event_funcs_data.c: wait_event_types.h - -wait_event.o: pgstat_wait_event.c -pgstat_wait_event.c: wait_event_types.h - touch $@ +# Force these dependencies to be known even without dependency info built: +wait_event.o: wait_event.c $(top_builddir)/src/backend/utils/pgstat_wait_event.c +wait_event_funcs.o: wait_event_funcs.c $(top_builddir)/src/backend/utils/wait_event_funcs_data.c -wait_event_types.h: $(top_srcdir)/src/backend/utils/activity/wait_event_names.txt generate-wait_event_types.pl - $(PERL) $(srcdir)/generate-wait_event_types.pl --code $< - -clean: - rm -f wait_event_types.h pgstat_wait_event.c wait_event_funcs_data.c +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/activity/meson.build b/src/backend/utils/activity/meson.build index d8e56b49c24..04f27d11fbf 100644 --- a/src/backend/utils/activity/meson.build +++ b/src/backend/utils/activity/meson.build @@ -30,7 +30,6 @@ waitevent_sources = files( wait_event = static_library('wait_event_names', waitevent_sources, dependencies: [backend_code], - include_directories: include_directories('../../../include/utils'), kwargs: internal_lib_args, ) diff --git a/src/backend/utils/activity/pgstat_backend.c b/src/backend/utils/activity/pgstat_backend.c index a864ae8e6a6..3d6db0d478f 100644 --- a/src/backend/utils/activity/pgstat_backend.c +++ b/src/backend/utils/activity/pgstat_backend.c @@ -325,7 +325,7 @@ pgstat_create_backend(ProcNumber procnum) PgStatShared_Backend *shstatent; entry_ref = pgstat_get_entry_ref_locked(PGSTAT_KIND_BACKEND, InvalidOid, - MyProcNumber, false); + procnum, false); shstatent = (PgStatShared_Backend *) entry_ref->shared_stats; /* diff --git a/src/backend/utils/activity/pgstat_wait_event.c b/src/backend/utils/activity/pgstat_wait_event.c new file mode 100644 index 00000000000..eca31705ea7 --- /dev/null +++ b/src/backend/utils/activity/pgstat_wait_event.c @@ -0,0 +1,624 @@ +/*------------------------------------------------------------------------- + * + * pgstat_wait_event.c + * Generated wait events infrastructure code + * + * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/utils/activity/generate-wait_event_types.pl + * + *------------------------------------------------------------------------- + */ + +static const char * +pgstat_get_wait_activity(WaitEventActivity w) +{ + const char *event_name = "unknown wait event"; + + switch (w) + { + case WAIT_EVENT_ARCHIVER_MAIN: + event_name = "ArchiverMain"; + break; + case WAIT_EVENT_AUTOVACUUM_MAIN: + event_name = "AutovacuumMain"; + break; + case WAIT_EVENT_BGWRITER_HIBERNATE: + event_name = "BgwriterHibernate"; + break; + case WAIT_EVENT_BGWRITER_MAIN: + event_name = "BgwriterMain"; + break; + case WAIT_EVENT_CHECKPOINTER_MAIN: + event_name = "CheckpointerMain"; + break; + case WAIT_EVENT_CHECKPOINTER_SHUTDOWN: + event_name = "CheckpointerShutdown"; + break; + case WAIT_EVENT_IO_WORKER_MAIN: + event_name = "IoWorkerMain"; + break; + case WAIT_EVENT_LOGICAL_APPLY_MAIN: + event_name = "LogicalApplyMain"; + break; + case WAIT_EVENT_LOGICAL_LAUNCHER_MAIN: + event_name = "LogicalLauncherMain"; + break; + case WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN: + event_name = "LogicalParallelApplyMain"; + break; + case WAIT_EVENT_RECOVERY_WAL_STREAM: + event_name = "RecoveryWalStream"; + break; + case WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN: + event_name = "ReplicationSlotsyncMain"; + break; + case WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN: + event_name = "ReplicationSlotsyncShutdown"; + break; + case WAIT_EVENT_SYSLOGGER_MAIN: + event_name = "SysloggerMain"; + break; + case WAIT_EVENT_WAL_RECEIVER_MAIN: + event_name = "WalReceiverMain"; + break; + case WAIT_EVENT_WAL_SENDER_MAIN: + event_name = "WalSenderMain"; + break; + case WAIT_EVENT_WAL_SUMMARIZER_WAL: + event_name = "WalSummarizerWal"; + break; + case WAIT_EVENT_WAL_WRITER_MAIN: + event_name = "WalWriterMain"; + break; + /* no default case, so that compiler will warn */ + } + + return event_name; +} + +static const char * +pgstat_get_wait_bufferpin(WaitEventBufferPin w) +{ + const char *event_name = "unknown wait event"; + + switch (w) + { + case WAIT_EVENT_BUFFER_PIN: + event_name = "BufferPin"; + break; + /* no default case, so that compiler will warn */ + } + + return event_name; +} + +static const char * +pgstat_get_wait_client(WaitEventClient w) +{ + const char *event_name = "unknown wait event"; + + switch (w) + { + case WAIT_EVENT_CLIENT_READ: + event_name = "ClientRead"; + break; + case WAIT_EVENT_CLIENT_WRITE: + event_name = "ClientWrite"; + break; + case WAIT_EVENT_GSS_OPEN_SERVER: + event_name = "GssOpenServer"; + break; + case WAIT_EVENT_LIBPQWALRECEIVER_CONNECT: + event_name = "LibpqwalreceiverConnect"; + break; + case WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE: + event_name = "LibpqwalreceiverReceive"; + break; + case WAIT_EVENT_SSL_OPEN_SERVER: + event_name = "SslOpenServer"; + break; + case WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION: + event_name = "WaitForStandbyConfirmation"; + break; + case WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL: + event_name = "WalSenderWaitForWal"; + break; + case WAIT_EVENT_WAL_SENDER_WRITE_DATA: + event_name = "WalSenderWriteData"; + break; + /* no default case, so that compiler will warn */ + } + + return event_name; +} + +static const char * +pgstat_get_wait_io(WaitEventIO w) +{ + const char *event_name = "unknown wait event"; + + switch (w) + { + case WAIT_EVENT_AIO_IO_COMPLETION: + event_name = "AioIoCompletion"; + break; + case WAIT_EVENT_AIO_IO_URING_EXECUTION: + event_name = "AioIoUringExecution"; + break; + case WAIT_EVENT_AIO_IO_URING_SUBMIT: + event_name = "AioIoUringSubmit"; + break; + case WAIT_EVENT_BASEBACKUP_READ: + event_name = "BasebackupRead"; + break; + case WAIT_EVENT_BASEBACKUP_SYNC: + event_name = "BasebackupSync"; + break; + case WAIT_EVENT_BASEBACKUP_WRITE: + event_name = "BasebackupWrite"; + break; + case WAIT_EVENT_BUFFILE_READ: + event_name = "BuffileRead"; + break; + case WAIT_EVENT_BUFFILE_TRUNCATE: + event_name = "BuffileTruncate"; + break; + case WAIT_EVENT_BUFFILE_WRITE: + event_name = "BuffileWrite"; + break; + case WAIT_EVENT_CONTROL_FILE_READ: + event_name = "ControlFileRead"; + break; + case WAIT_EVENT_CONTROL_FILE_SYNC: + event_name = "ControlFileSync"; + break; + case WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE: + event_name = "ControlFileSyncUpdate"; + break; + case WAIT_EVENT_CONTROL_FILE_WRITE: + event_name = "ControlFileWrite"; + break; + case WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE: + event_name = "ControlFileWriteUpdate"; + break; + case WAIT_EVENT_COPY_FILE_COPY: + event_name = "CopyFileCopy"; + break; + case WAIT_EVENT_COPY_FILE_READ: + event_name = "CopyFileRead"; + break; + case WAIT_EVENT_COPY_FILE_WRITE: + event_name = "CopyFileWrite"; + break; + case WAIT_EVENT_DATA_FILE_EXTEND: + event_name = "DataFileExtend"; + break; + case WAIT_EVENT_DATA_FILE_FLUSH: + event_name = "DataFileFlush"; + break; + case WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC: + event_name = "DataFileImmediateSync"; + break; + case WAIT_EVENT_DATA_FILE_PREFETCH: + event_name = "DataFilePrefetch"; + break; + case WAIT_EVENT_DATA_FILE_READ: + event_name = "DataFileRead"; + break; + case WAIT_EVENT_DATA_FILE_SYNC: + event_name = "DataFileSync"; + break; + case WAIT_EVENT_DATA_FILE_TRUNCATE: + event_name = "DataFileTruncate"; + break; + case WAIT_EVENT_DATA_FILE_WRITE: + event_name = "DataFileWrite"; + break; + case WAIT_EVENT_DSM_ALLOCATE: + event_name = "DsmAllocate"; + break; + case WAIT_EVENT_DSM_FILL_ZERO_WRITE: + event_name = "DsmFillZeroWrite"; + break; + case WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ: + event_name = "LockFileAddtodatadirRead"; + break; + case WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC: + event_name = "LockFileAddtodatadirSync"; + break; + case WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE: + event_name = "LockFileAddtodatadirWrite"; + break; + case WAIT_EVENT_LOCK_FILE_CREATE_READ: + event_name = "LockFileCreateRead"; + break; + case WAIT_EVENT_LOCK_FILE_CREATE_SYNC: + event_name = "LockFileCreateSync"; + break; + case WAIT_EVENT_LOCK_FILE_CREATE_WRITE: + event_name = "LockFileCreateWrite"; + break; + case WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ: + event_name = "LockFileRecheckdatadirRead"; + break; + case WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC: + event_name = "LogicalRewriteCheckpointSync"; + break; + case WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC: + event_name = "LogicalRewriteMappingSync"; + break; + case WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE: + event_name = "LogicalRewriteMappingWrite"; + break; + case WAIT_EVENT_LOGICAL_REWRITE_SYNC: + event_name = "LogicalRewriteSync"; + break; + case WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE: + event_name = "LogicalRewriteTruncate"; + break; + case WAIT_EVENT_LOGICAL_REWRITE_WRITE: + event_name = "LogicalRewriteWrite"; + break; + case WAIT_EVENT_RELATION_MAP_READ: + event_name = "RelationMapRead"; + break; + case WAIT_EVENT_RELATION_MAP_REPLACE: + event_name = "RelationMapReplace"; + break; + case WAIT_EVENT_RELATION_MAP_WRITE: + event_name = "RelationMapWrite"; + break; + case WAIT_EVENT_REORDER_BUFFER_READ: + event_name = "ReorderBufferRead"; + break; + case WAIT_EVENT_REORDER_BUFFER_WRITE: + event_name = "ReorderBufferWrite"; + break; + case WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ: + event_name = "ReorderLogicalMappingRead"; + break; + case WAIT_EVENT_REPLICATION_SLOT_READ: + event_name = "ReplicationSlotRead"; + break; + case WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC: + event_name = "ReplicationSlotRestoreSync"; + break; + case WAIT_EVENT_REPLICATION_SLOT_SYNC: + event_name = "ReplicationSlotSync"; + break; + case WAIT_EVENT_REPLICATION_SLOT_WRITE: + event_name = "ReplicationSlotWrite"; + break; + case WAIT_EVENT_SLRU_FLUSH_SYNC: + event_name = "SlruFlushSync"; + break; + case WAIT_EVENT_SLRU_READ: + event_name = "SlruRead"; + break; + case WAIT_EVENT_SLRU_SYNC: + event_name = "SlruSync"; + break; + case WAIT_EVENT_SLRU_WRITE: + event_name = "SlruWrite"; + break; + case WAIT_EVENT_SNAPBUILD_READ: + event_name = "SnapbuildRead"; + break; + case WAIT_EVENT_SNAPBUILD_SYNC: + event_name = "SnapbuildSync"; + break; + case WAIT_EVENT_SNAPBUILD_WRITE: + event_name = "SnapbuildWrite"; + break; + case WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC: + event_name = "TimelineHistoryFileSync"; + break; + case WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE: + event_name = "TimelineHistoryFileWrite"; + break; + case WAIT_EVENT_TIMELINE_HISTORY_READ: + event_name = "TimelineHistoryRead"; + break; + case WAIT_EVENT_TIMELINE_HISTORY_SYNC: + event_name = "TimelineHistorySync"; + break; + case WAIT_EVENT_TIMELINE_HISTORY_WRITE: + event_name = "TimelineHistoryWrite"; + break; + case WAIT_EVENT_TWOPHASE_FILE_READ: + event_name = "TwophaseFileRead"; + break; + case WAIT_EVENT_TWOPHASE_FILE_SYNC: + event_name = "TwophaseFileSync"; + break; + case WAIT_EVENT_TWOPHASE_FILE_WRITE: + event_name = "TwophaseFileWrite"; + break; + case WAIT_EVENT_VERSION_FILE_SYNC: + event_name = "VersionFileSync"; + break; + case WAIT_EVENT_VERSION_FILE_WRITE: + event_name = "VersionFileWrite"; + break; + case WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ: + event_name = "WalsenderTimelineHistoryRead"; + break; + case WAIT_EVENT_WAL_BOOTSTRAP_SYNC: + event_name = "WalBootstrapSync"; + break; + case WAIT_EVENT_WAL_BOOTSTRAP_WRITE: + event_name = "WalBootstrapWrite"; + break; + case WAIT_EVENT_WAL_COPY_READ: + event_name = "WalCopyRead"; + break; + case WAIT_EVENT_WAL_COPY_SYNC: + event_name = "WalCopySync"; + break; + case WAIT_EVENT_WAL_COPY_WRITE: + event_name = "WalCopyWrite"; + break; + case WAIT_EVENT_WAL_INIT_SYNC: + event_name = "WalInitSync"; + break; + case WAIT_EVENT_WAL_INIT_WRITE: + event_name = "WalInitWrite"; + break; + case WAIT_EVENT_WAL_READ: + event_name = "WalRead"; + break; + case WAIT_EVENT_WAL_SUMMARY_READ: + event_name = "WalSummaryRead"; + break; + case WAIT_EVENT_WAL_SUMMARY_WRITE: + event_name = "WalSummaryWrite"; + break; + case WAIT_EVENT_WAL_SYNC: + event_name = "WalSync"; + break; + case WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN: + event_name = "WalSyncMethodAssign"; + break; + case WAIT_EVENT_WAL_WRITE: + event_name = "WalWrite"; + break; + /* no default case, so that compiler will warn */ + } + + return event_name; +} + +static const char * +pgstat_get_wait_ipc(WaitEventIPC w) +{ + const char *event_name = "unknown wait event"; + + switch (w) + { + case WAIT_EVENT_APPEND_READY: + event_name = "AppendReady"; + break; + case WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND: + event_name = "ArchiveCleanupCommand"; + break; + case WAIT_EVENT_ARCHIVE_COMMAND: + event_name = "ArchiveCommand"; + break; + case WAIT_EVENT_BACKEND_TERMINATION: + event_name = "BackendTermination"; + break; + case WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE: + event_name = "BackupWaitWalArchive"; + break; + case WAIT_EVENT_BGWORKER_SHUTDOWN: + event_name = "BgworkerShutdown"; + break; + case WAIT_EVENT_BGWORKER_STARTUP: + event_name = "BgworkerStartup"; + break; + case WAIT_EVENT_BTREE_PAGE: + event_name = "BtreePage"; + break; + case WAIT_EVENT_BUFFER_IO: + event_name = "BufferIo"; + break; + case WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE: + event_name = "CheckpointDelayComplete"; + break; + case WAIT_EVENT_CHECKPOINT_DELAY_START: + event_name = "CheckpointDelayStart"; + break; + case WAIT_EVENT_CHECKPOINT_DONE: + event_name = "CheckpointDone"; + break; + case WAIT_EVENT_CHECKPOINT_START: + event_name = "CheckpointStart"; + break; + case WAIT_EVENT_EXECUTE_GATHER: + event_name = "ExecuteGather"; + break; + case WAIT_EVENT_HASH_BATCH_ALLOCATE: + event_name = "HashBatchAllocate"; + break; + case WAIT_EVENT_HASH_BATCH_ELECT: + event_name = "HashBatchElect"; + break; + case WAIT_EVENT_HASH_BATCH_LOAD: + event_name = "HashBatchLoad"; + break; + case WAIT_EVENT_HASH_BUILD_ALLOCATE: + event_name = "HashBuildAllocate"; + break; + case WAIT_EVENT_HASH_BUILD_ELECT: + event_name = "HashBuildElect"; + break; + case WAIT_EVENT_HASH_BUILD_HASH_INNER: + event_name = "HashBuildHashInner"; + break; + case WAIT_EVENT_HASH_BUILD_HASH_OUTER: + event_name = "HashBuildHashOuter"; + break; + case WAIT_EVENT_HASH_GROW_BATCHES_DECIDE: + event_name = "HashGrowBatchesDecide"; + break; + case WAIT_EVENT_HASH_GROW_BATCHES_ELECT: + event_name = "HashGrowBatchesElect"; + break; + case WAIT_EVENT_HASH_GROW_BATCHES_FINISH: + event_name = "HashGrowBatchesFinish"; + break; + case WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE: + event_name = "HashGrowBatchesReallocate"; + break; + case WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION: + event_name = "HashGrowBatchesRepartition"; + break; + case WAIT_EVENT_HASH_GROW_BUCKETS_ELECT: + event_name = "HashGrowBucketsElect"; + break; + case WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE: + event_name = "HashGrowBucketsReallocate"; + break; + case WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT: + event_name = "HashGrowBucketsReinsert"; + break; + case WAIT_EVENT_LOGICAL_APPLY_SEND_DATA: + event_name = "LogicalApplySendData"; + break; + case WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE: + event_name = "LogicalParallelApplyStateChange"; + break; + case WAIT_EVENT_LOGICAL_SYNC_DATA: + event_name = "LogicalSyncData"; + break; + case WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE: + event_name = "LogicalSyncStateChange"; + break; + case WAIT_EVENT_MESSAGE_QUEUE_INTERNAL: + event_name = "MessageQueueInternal"; + break; + case WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE: + event_name = "MessageQueuePutMessage"; + break; + case WAIT_EVENT_MESSAGE_QUEUE_RECEIVE: + event_name = "MessageQueueReceive"; + break; + case WAIT_EVENT_MESSAGE_QUEUE_SEND: + event_name = "MessageQueueSend"; + break; + case WAIT_EVENT_MULTIXACT_CREATION: + event_name = "MultixactCreation"; + break; + case WAIT_EVENT_PARALLEL_BITMAP_SCAN: + event_name = "ParallelBitmapScan"; + break; + case WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN: + event_name = "ParallelCreateIndexScan"; + break; + case WAIT_EVENT_PARALLEL_FINISH: + event_name = "ParallelFinish"; + break; + case WAIT_EVENT_PROCARRAY_GROUP_UPDATE: + event_name = "ProcarrayGroupUpdate"; + break; + case WAIT_EVENT_PROC_SIGNAL_BARRIER: + event_name = "ProcSignalBarrier"; + break; + case WAIT_EVENT_PROMOTE: + event_name = "Promote"; + break; + case WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT: + event_name = "RecoveryConflictSnapshot"; + break; + case WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE: + event_name = "RecoveryConflictTablespace"; + break; + case WAIT_EVENT_RECOVERY_END_COMMAND: + event_name = "RecoveryEndCommand"; + break; + case WAIT_EVENT_RECOVERY_PAUSE: + event_name = "RecoveryPause"; + break; + case WAIT_EVENT_REPLICATION_ORIGIN_DROP: + event_name = "ReplicationOriginDrop"; + break; + case WAIT_EVENT_REPLICATION_SLOT_DROP: + event_name = "ReplicationSlotDrop"; + break; + case WAIT_EVENT_RESTORE_COMMAND: + event_name = "RestoreCommand"; + break; + case WAIT_EVENT_SAFE_SNAPSHOT: + event_name = "SafeSnapshot"; + break; + case WAIT_EVENT_SYNC_REP: + event_name = "SyncRep"; + break; + case WAIT_EVENT_WAL_RECEIVER_EXIT: + event_name = "WalReceiverExit"; + break; + case WAIT_EVENT_WAL_RECEIVER_WAIT_START: + event_name = "WalReceiverWaitStart"; + break; + case WAIT_EVENT_WAL_SUMMARY_READY: + event_name = "WalSummaryReady"; + break; + case WAIT_EVENT_XACT_GROUP_UPDATE: + event_name = "XactGroupUpdate"; + break; + /* no default case, so that compiler will warn */ + } + + return event_name; +} + +static const char * +pgstat_get_wait_timeout(WaitEventTimeout w) +{ + const char *event_name = "unknown wait event"; + + switch (w) + { + case WAIT_EVENT_BASE_BACKUP_THROTTLE: + event_name = "BaseBackupThrottle"; + break; + case WAIT_EVENT_CHECKPOINT_WRITE_DELAY: + event_name = "CheckpointWriteDelay"; + break; + case WAIT_EVENT_PG_SLEEP: + event_name = "PgSleep"; + break; + case WAIT_EVENT_RECOVERY_APPLY_DELAY: + event_name = "RecoveryApplyDelay"; + break; + case WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL: + event_name = "RecoveryRetrieveRetryInterval"; + break; + case WAIT_EVENT_REGISTER_SYNC_REQUEST: + event_name = "RegisterSyncRequest"; + break; + case WAIT_EVENT_SPIN_DELAY: + event_name = "SpinDelay"; + break; + case WAIT_EVENT_VACUUM_DELAY: + event_name = "VacuumDelay"; + break; + case WAIT_EVENT_VACUUM_TRUNCATE: + event_name = "VacuumTruncate"; + break; + case WAIT_EVENT_WAL_SUMMARIZER_ERROR: + event_name = "WalSummarizerError"; + break; + /* no default case, so that compiler will warn */ + } + + return event_name; +} + diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c index 12c80406101..0bf4a7b9026 100644 --- a/src/backend/utils/activity/wait_event.c +++ b/src/backend/utils/activity/wait_event.c @@ -506,4 +506,4 @@ pgstat_get_wait_event(uint32 wait_event_info) return event_name; } -#include "pgstat_wait_event.c" +#include "utils/pgstat_wait_event.c" diff --git a/src/backend/utils/activity/wait_event_funcs.c b/src/backend/utils/activity/wait_event_funcs.c index ffbb57a8078..15486ce88dc 100644 --- a/src/backend/utils/activity/wait_event_funcs.c +++ b/src/backend/utils/activity/wait_event_funcs.c @@ -31,7 +31,7 @@ static const struct waitEventData[] = { -#include "wait_event_funcs_data.c" +#include "utils/wait_event_funcs_data.c" /* end of list */ {NULL, NULL, NULL} }; diff --git a/src/backend/utils/activity/wait_event_funcs_data.c b/src/backend/utils/activity/wait_event_funcs_data.c new file mode 100644 index 00000000000..c0e14494120 --- /dev/null +++ b/src/backend/utils/activity/wait_event_funcs_data.c @@ -0,0 +1,291 @@ +/*------------------------------------------------------------------------- + * + * wait_event_funcs_data.c + * Generated wait events infrastructure code + * + * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/utils/activity/generate-wait_event_types.pl + * + *------------------------------------------------------------------------- + */ + + {"Activity", "ArchiverMain", "Waiting in main loop of archiver process"}, + {"Activity", "AutovacuumMain", "Waiting in main loop of autovacuum launcher process"}, + {"Activity", "BgwriterHibernate", "Waiting in background writer process, hibernating"}, + {"Activity", "BgwriterMain", "Waiting in main loop of background writer process"}, + {"Activity", "CheckpointerMain", "Waiting in main loop of checkpointer process"}, + {"Activity", "CheckpointerShutdown", "Waiting for checkpointer process to be terminated"}, + {"Activity", "IoWorkerMain", "Waiting in main loop of IO Worker process"}, + {"Activity", "LogicalApplyMain", "Waiting in main loop of logical replication apply process"}, + {"Activity", "LogicalLauncherMain", "Waiting in main loop of logical replication launcher process"}, + {"Activity", "LogicalParallelApplyMain", "Waiting in main loop of logical replication parallel apply process"}, + {"Activity", "RecoveryWalStream", "Waiting in main loop of startup process for WAL to arrive, during streaming recovery"}, + {"Activity", "ReplicationSlotsyncMain", "Waiting in main loop of slot sync worker"}, + {"Activity", "ReplicationSlotsyncShutdown", "Waiting for slot sync worker to shut down"}, + {"Activity", "SysloggerMain", "Waiting in main loop of syslogger process"}, + {"Activity", "WalReceiverMain", "Waiting in main loop of WAL receiver process"}, + {"Activity", "WalSenderMain", "Waiting in main loop of WAL sender process"}, + {"Activity", "WalSummarizerWal", "Waiting in WAL summarizer for more WAL to be generated"}, + {"Activity", "WalWriterMain", "Waiting in main loop of WAL writer process"}, + {"BufferPin", "BufferPin", "Waiting to acquire an exclusive pin on a buffer"}, + {"Client", "ClientRead", "Waiting to read data from the client"}, + {"Client", "ClientWrite", "Waiting to write data to the client"}, + {"Client", "GssOpenServer", "Waiting to read data from the client while establishing a GSSAPI session"}, + {"Client", "LibpqwalreceiverConnect", "Waiting in WAL receiver to establish connection to remote server"}, + {"Client", "LibpqwalreceiverReceive", "Waiting in WAL receiver to receive data from remote server"}, + {"Client", "SslOpenServer", "Waiting for SSL while attempting connection"}, + {"Client", "WaitForStandbyConfirmation", "Waiting for WAL to be received and flushed by the physical standby"}, + {"Client", "WalSenderWaitForWal", "Waiting for WAL to be flushed in WAL sender process"}, + {"Client", "WalSenderWriteData", "Waiting for any activity when processing replies from WAL receiver in WAL sender process"}, + {"Extension", "Extension", "Waiting in an extension"}, + {"IO", "AioIoCompletion", "Waiting for another process to complete IO"}, + {"IO", "AioIoUringExecution", "Waiting for IO execution via io_uring"}, + {"IO", "AioIoUringSubmit", "Waiting for IO submission via io_uring"}, + {"IO", "BasebackupRead", "Waiting for base backup to read from a file"}, + {"IO", "BasebackupSync", "Waiting for data written by a base backup to reach durable storage"}, + {"IO", "BasebackupWrite", "Waiting for base backup to write to a file"}, + {"IO", "BuffileRead", "Waiting for a read from a buffered file"}, + {"IO", "BuffileTruncate", "Waiting for a buffered file to be truncated"}, + {"IO", "BuffileWrite", "Waiting for a write to a buffered file"}, + {"IO", "ControlFileRead", "Waiting for a read from the pg_control file"}, + {"IO", "ControlFileSync", "Waiting for the pg_control file to reach durable storage"}, + {"IO", "ControlFileSyncUpdate", "Waiting for an update to the pg_control file to reach durable storage"}, + {"IO", "ControlFileWrite", "Waiting for a write to the pg_control file"}, + {"IO", "ControlFileWriteUpdate", "Waiting for a write to update the pg_control file"}, + {"IO", "CopyFileCopy", "Waiting for a file copy operation"}, + {"IO", "CopyFileRead", "Waiting for a read during a file copy operation"}, + {"IO", "CopyFileWrite", "Waiting for a write during a file copy operation"}, + {"IO", "DataFileExtend", "Waiting for a relation data file to be extended"}, + {"IO", "DataFileFlush", "Waiting for a relation data file to reach durable storage"}, + {"IO", "DataFileImmediateSync", "Waiting for an immediate synchronization of a relation data file to durable storage"}, + {"IO", "DataFilePrefetch", "Waiting for an asynchronous prefetch from a relation data file"}, + {"IO", "DataFileRead", "Waiting for a read from a relation data file"}, + {"IO", "DataFileSync", "Waiting for changes to a relation data file to reach durable storage"}, + {"IO", "DataFileTruncate", "Waiting for a relation data file to be truncated"}, + {"IO", "DataFileWrite", "Waiting for a write to a relation data file"}, + {"IO", "DsmAllocate", "Waiting for a dynamic shared memory segment to be allocated"}, + {"IO", "DsmFillZeroWrite", "Waiting to fill a dynamic shared memory backing file with zeroes"}, + {"IO", "LockFileAddtodatadirRead", "Waiting for a read while adding a line to the data directory lock file"}, + {"IO", "LockFileAddtodatadirSync", "Waiting for data to reach durable storage while adding a line to the data directory lock file"}, + {"IO", "LockFileAddtodatadirWrite", "Waiting for a write while adding a line to the data directory lock file"}, + {"IO", "LockFileCreateRead", "Waiting to read while creating the data directory lock file"}, + {"IO", "LockFileCreateSync", "Waiting for data to reach durable storage while creating the data directory lock file"}, + {"IO", "LockFileCreateWrite", "Waiting for a write while creating the data directory lock file"}, + {"IO", "LockFileRecheckdatadirRead", "Waiting for a read during recheck of the data directory lock file"}, + {"IO", "LogicalRewriteCheckpointSync", "Waiting for logical rewrite mappings to reach durable storage during a checkpoint"}, + {"IO", "LogicalRewriteMappingSync", "Waiting for mapping data to reach durable storage during a logical rewrite"}, + {"IO", "LogicalRewriteMappingWrite", "Waiting for a write of mapping data during a logical rewrite"}, + {"IO", "LogicalRewriteSync", "Waiting for logical rewrite mappings to reach durable storage"}, + {"IO", "LogicalRewriteTruncate", "Waiting for truncate of mapping data during a logical rewrite"}, + {"IO", "LogicalRewriteWrite", "Waiting for a write of logical rewrite mappings"}, + {"IO", "RelationMapRead", "Waiting for a read of the relation map file"}, + {"IO", "RelationMapReplace", "Waiting for durable replacement of a relation map file"}, + {"IO", "RelationMapWrite", "Waiting for a write to the relation map file"}, + {"IO", "ReorderBufferRead", "Waiting for a read during reorder buffer management"}, + {"IO", "ReorderBufferWrite", "Waiting for a write during reorder buffer management"}, + {"IO", "ReorderLogicalMappingRead", "Waiting for a read of a logical mapping during reorder buffer management"}, + {"IO", "ReplicationSlotRead", "Waiting for a read from a replication slot control file"}, + {"IO", "ReplicationSlotRestoreSync", "Waiting for a replication slot control file to reach durable storage while restoring it to memory"}, + {"IO", "ReplicationSlotSync", "Waiting for a replication slot control file to reach durable storage"}, + {"IO", "ReplicationSlotWrite", "Waiting for a write to a replication slot control file"}, + {"IO", "SlruFlushSync", "Waiting for SLRU data to reach durable storage during a checkpoint or database shutdown"}, + {"IO", "SlruRead", "Waiting for a read of an SLRU page"}, + {"IO", "SlruSync", "Waiting for SLRU data to reach durable storage following a page write"}, + {"IO", "SlruWrite", "Waiting for a write of an SLRU page"}, + {"IO", "SnapbuildRead", "Waiting for a read of a serialized historical catalog snapshot"}, + {"IO", "SnapbuildSync", "Waiting for a serialized historical catalog snapshot to reach durable storage"}, + {"IO", "SnapbuildWrite", "Waiting for a write of a serialized historical catalog snapshot"}, + {"IO", "TimelineHistoryFileSync", "Waiting for a timeline history file received via streaming replication to reach durable storage"}, + {"IO", "TimelineHistoryFileWrite", "Waiting for a write of a timeline history file received via streaming replication"}, + {"IO", "TimelineHistoryRead", "Waiting for a read of a timeline history file"}, + {"IO", "TimelineHistorySync", "Waiting for a newly created timeline history file to reach durable storage"}, + {"IO", "TimelineHistoryWrite", "Waiting for a write of a newly created timeline history file"}, + {"IO", "TwophaseFileRead", "Waiting for a read of a two phase state file"}, + {"IO", "TwophaseFileSync", "Waiting for a two phase state file to reach durable storage"}, + {"IO", "TwophaseFileWrite", "Waiting for a write of a two phase state file"}, + {"IO", "VersionFileSync", "Waiting for the version file to reach durable storage while creating a database"}, + {"IO", "VersionFileWrite", "Waiting for the version file to be written while creating a database"}, + {"IO", "WalsenderTimelineHistoryRead", "Waiting for a read from a timeline history file during a walsender timeline command"}, + {"IO", "WalBootstrapSync", "Waiting for WAL to reach durable storage during bootstrapping"}, + {"IO", "WalBootstrapWrite", "Waiting for a write of a WAL page during bootstrapping"}, + {"IO", "WalCopyRead", "Waiting for a read when creating a new WAL segment by copying an existing one"}, + {"IO", "WalCopySync", "Waiting for a new WAL segment created by copying an existing one to reach durable storage"}, + {"IO", "WalCopyWrite", "Waiting for a write when creating a new WAL segment by copying an existing one"}, + {"IO", "WalInitSync", "Waiting for a newly initialized WAL file to reach durable storage"}, + {"IO", "WalInitWrite", "Waiting for a write while initializing a new WAL file"}, + {"IO", "WalRead", "Waiting for a read from a WAL file"}, + {"IO", "WalSummaryRead", "Waiting for a read from a WAL summary file"}, + {"IO", "WalSummaryWrite", "Waiting for a write to a WAL summary file"}, + {"IO", "WalSync", "Waiting for a WAL file to reach durable storage"}, + {"IO", "WalSyncMethodAssign", "Waiting for data to reach durable storage while assigning a new WAL sync method"}, + {"IO", "WalWrite", "Waiting for a write to a WAL file"}, + {"IPC", "AppendReady", "Waiting for subplan nodes of an Append plan node to be ready"}, + {"IPC", "ArchiveCleanupCommand", "Waiting for archive_cleanup_command to complete"}, + {"IPC", "ArchiveCommand", "Waiting for archive_command to complete"}, + {"IPC", "BackendTermination", "Waiting for the termination of another backend"}, + {"IPC", "BackupWaitWalArchive", "Waiting for WAL files required for a backup to be successfully archived"}, + {"IPC", "BgworkerShutdown", "Waiting for background worker to shut down"}, + {"IPC", "BgworkerStartup", "Waiting for background worker to start up"}, + {"IPC", "BtreePage", "Waiting for the page number needed to continue a parallel B-tree scan to become available"}, + {"IPC", "BufferIo", "Waiting for buffer I/O to complete"}, + {"IPC", "CheckpointDelayComplete", "Waiting for a backend that blocks a checkpoint from completing"}, + {"IPC", "CheckpointDelayStart", "Waiting for a backend that blocks a checkpoint from starting"}, + {"IPC", "CheckpointDone", "Waiting for a checkpoint to complete"}, + {"IPC", "CheckpointStart", "Waiting for a checkpoint to start"}, + {"IPC", "ExecuteGather", "Waiting for activity from a child process while executing a Gather plan node"}, + {"IPC", "HashBatchAllocate", "Waiting for an elected Parallel Hash participant to allocate a hash table"}, + {"IPC", "HashBatchElect", "Waiting to elect a Parallel Hash participant to allocate a hash table"}, + {"IPC", "HashBatchLoad", "Waiting for other Parallel Hash participants to finish loading a hash table"}, + {"IPC", "HashBuildAllocate", "Waiting for an elected Parallel Hash participant to allocate the initial hash table"}, + {"IPC", "HashBuildElect", "Waiting to elect a Parallel Hash participant to allocate the initial hash table"}, + {"IPC", "HashBuildHashInner", "Waiting for other Parallel Hash participants to finish hashing the inner relation"}, + {"IPC", "HashBuildHashOuter", "Waiting for other Parallel Hash participants to finish partitioning the outer relation"}, + {"IPC", "HashGrowBatchesDecide", "Waiting to elect a Parallel Hash participant to decide on future batch growth"}, + {"IPC", "HashGrowBatchesElect", "Waiting to elect a Parallel Hash participant to allocate more batches"}, + {"IPC", "HashGrowBatchesFinish", "Waiting for an elected Parallel Hash participant to decide on future batch growth"}, + {"IPC", "HashGrowBatchesReallocate", "Waiting for an elected Parallel Hash participant to allocate more batches"}, + {"IPC", "HashGrowBatchesRepartition", "Waiting for other Parallel Hash participants to finish repartitioning"}, + {"IPC", "HashGrowBucketsElect", "Waiting to elect a Parallel Hash participant to allocate more buckets"}, + {"IPC", "HashGrowBucketsReallocate", "Waiting for an elected Parallel Hash participant to finish allocating more buckets"}, + {"IPC", "HashGrowBucketsReinsert", "Waiting for other Parallel Hash participants to finish inserting tuples into new buckets"}, + {"IPC", "LogicalApplySendData", "Waiting for a logical replication leader apply process to send data to a parallel apply process"}, + {"IPC", "LogicalParallelApplyStateChange", "Waiting for a logical replication parallel apply process to change state"}, + {"IPC", "LogicalSyncData", "Waiting for a logical replication remote server to send data for initial table synchronization"}, + {"IPC", "LogicalSyncStateChange", "Waiting for a logical replication remote server to change state"}, + {"IPC", "MessageQueueInternal", "Waiting for another process to be attached to a shared message queue"}, + {"IPC", "MessageQueuePutMessage", "Waiting to write a protocol message to a shared message queue"}, + {"IPC", "MessageQueueReceive", "Waiting to receive bytes from a shared message queue"}, + {"IPC", "MessageQueueSend", "Waiting to send bytes to a shared message queue"}, + {"IPC", "MultixactCreation", "Waiting for a multixact creation to complete"}, + {"IPC", "ParallelBitmapScan", "Waiting for parallel bitmap scan to become initialized"}, + {"IPC", "ParallelCreateIndexScan", "Waiting for parallel CREATE INDEX workers to finish heap scan"}, + {"IPC", "ParallelFinish", "Waiting for parallel workers to finish computing"}, + {"IPC", "ProcarrayGroupUpdate", "Waiting for the group leader to clear the transaction ID at transaction end"}, + {"IPC", "ProcSignalBarrier", "Waiting for a barrier event to be processed by all backends"}, + {"IPC", "Promote", "Waiting for standby promotion"}, + {"IPC", "RecoveryConflictSnapshot", "Waiting for recovery conflict resolution for a vacuum cleanup"}, + {"IPC", "RecoveryConflictTablespace", "Waiting for recovery conflict resolution for dropping a tablespace"}, + {"IPC", "RecoveryEndCommand", "Waiting for recovery_end_command to complete"}, + {"IPC", "RecoveryPause", "Waiting for recovery to be resumed"}, + {"IPC", "ReplicationOriginDrop", "Waiting for a replication origin to become inactive so it can be dropped"}, + {"IPC", "ReplicationSlotDrop", "Waiting for a replication slot to become inactive so it can be dropped"}, + {"IPC", "RestoreCommand", "Waiting for restore_command to complete"}, + {"IPC", "SafeSnapshot", "Waiting to obtain a valid snapshot for a READ ONLY DEFERRABLE transaction"}, + {"IPC", "SyncRep", "Waiting for confirmation from a remote server during synchronous replication"}, + {"IPC", "WalReceiverExit", "Waiting for the WAL receiver to exit"}, + {"IPC", "WalReceiverWaitStart", "Waiting for startup process to send initial data for streaming replication"}, + {"IPC", "WalSummaryReady", "Waiting for a new WAL summary to be generated"}, + {"IPC", "XactGroupUpdate", "Waiting for the group leader to update transaction status at transaction end"}, + {"Lock", "advisory", "Waiting to acquire an advisory user lock"}, + {"Lock", "applytransaction", "Waiting to acquire a lock on a remote transaction being applied by a logical replication subscriber"}, + {"Lock", "extend", "Waiting to extend a relation"}, + {"Lock", "frozenid", "Waiting to update pg_database.datfrozenxid and pg_database.datminmxid"}, + {"Lock", "object", "Waiting to acquire a lock on a non-relation database object"}, + {"Lock", "page", "Waiting to acquire a lock on a page of a relation"}, + {"Lock", "relation", "Waiting to acquire a lock on a relation"}, + {"Lock", "spectoken", "Waiting to acquire a speculative insertion lock"}, + {"Lock", "transactionid", "Waiting for a transaction to finish"}, + {"Lock", "tuple", "Waiting to acquire a lock on a tuple"}, + {"Lock", "userlock", "Waiting to acquire a user lock"}, + {"Lock", "virtualxid", "Waiting to acquire a virtual transaction ID lock"}, + {"LWLock", "AddinShmemInit", "Waiting to manage an extension\'s space allocation in shared memory"}, + {"LWLock", "AioUringCompletion", "Waiting for another process to complete IO via io_uring"}, + {"LWLock", "AioWorkerSubmissionQueue", "Waiting to access AIO worker submission queue"}, + {"LWLock", "AutoFile", "Waiting to update the postgresql.auto.conf file"}, + {"LWLock", "Autovacuum", "Waiting to read or update the current state of autovacuum workers"}, + {"LWLock", "AutovacuumSchedule", "Waiting to ensure that a table selected for autovacuum still needs vacuuming"}, + {"LWLock", "BackgroundWorker", "Waiting to read or update background worker state"}, + {"LWLock", "BtreeVacuum", "Waiting to read or update vacuum-related information for a B-tree index"}, + {"LWLock", "BufferContent", "Waiting to access a data page in memory"}, + {"LWLock", "BufferMapping", "Waiting to associate a data block with a buffer in the buffer pool"}, + {"LWLock", "CheckpointerComm", "Waiting to manage fsync requests"}, + {"LWLock", "CommitTs", "Waiting to read or update the last value set for a transaction commit timestamp"}, + {"LWLock", "CommitTsBuffer", "Waiting for I/O on a commit timestamp SLRU buffer"}, + {"LWLock", "CommitTsSLRU", "Waiting to access the commit timestamp SLRU cache"}, + {"LWLock", "ControlFile", "Waiting to read or update the pg_control file or create a new WAL file"}, + {"LWLock", "DSMRegistry", "Waiting to read or update the dynamic shared memory registry"}, + {"LWLock", "DSMRegistryDSA", "Waiting to access dynamic shared memory registry\'s dynamic shared memory allocator"}, + {"LWLock", "DSMRegistryHash", "Waiting to access dynamic shared memory registry\'s shared hash table"}, + {"LWLock", "DynamicSharedMemoryControl", "Waiting to read or update dynamic shared memory allocation information"}, + {"LWLock", "InjectionPoint", "Waiting to read or update information related to injection points"}, + {"LWLock", "LockFastPath", "Waiting to read or update a process\' fast-path lock information"}, + {"LWLock", "LockManager", "Waiting to read or update information about \"heavyweight\" locks"}, + {"LWLock", "LogicalRepLauncherDSA", "Waiting to access logical replication launcher\'s dynamic shared memory allocator"}, + {"LWLock", "LogicalRepLauncherHash", "Waiting to access logical replication launcher\'s shared hash table"}, + {"LWLock", "LogicalRepWorker", "Waiting to read or update the state of logical replication workers"}, + {"LWLock", "MultiXactGen", "Waiting to read or update shared multixact state"}, + {"LWLock", "MultiXactMemberBuffer", "Waiting for I/O on a multixact member SLRU buffer"}, + {"LWLock", "MultiXactMemberSLRU", "Waiting to access the multixact member SLRU cache"}, + {"LWLock", "MultiXactOffsetBuffer", "Waiting for I/O on a multixact offset SLRU buffer"}, + {"LWLock", "MultiXactOffsetSLRU", "Waiting to access the multixact offset SLRU cache"}, + {"LWLock", "MultiXactTruncation", "Waiting to read or truncate multixact information"}, + {"LWLock", "NotifyBuffer", "Waiting for I/O on a NOTIFY message SLRU buffer"}, + {"LWLock", "NotifyQueue", "Waiting to read or update NOTIFY messages"}, + {"LWLock", "NotifyQueueTail", "Waiting to update limit on NOTIFY message storage"}, + {"LWLock", "NotifySLRU", "Waiting to access the NOTIFY message SLRU cache"}, + {"LWLock", "OidGen", "Waiting to allocate a new OID"}, + {"LWLock", "ParallelAppend", "Waiting to choose the next subplan during Parallel Append plan execution"}, + {"LWLock", "ParallelBtreeScan", "Waiting to synchronize workers during Parallel B-tree scan plan execution"}, + {"LWLock", "ParallelHashJoin", "Waiting to synchronize workers during Parallel Hash Join plan execution"}, + {"LWLock", "ParallelQueryDSA", "Waiting for parallel query dynamic shared memory allocation"}, + {"LWLock", "ParallelVacuumDSA", "Waiting for parallel vacuum dynamic shared memory allocation"}, + {"LWLock", "PerSessionDSA", "Waiting for parallel query dynamic shared memory allocation"}, + {"LWLock", "PerSessionRecordType", "Waiting to access a parallel query\'s information about composite types"}, + {"LWLock", "PerSessionRecordTypmod", "Waiting to access a parallel query\'s information about type modifiers that identify anonymous record types"}, + {"LWLock", "PerXactPredicateList", "Waiting to access the list of predicate locks held by the current serializable transaction during a parallel query"}, + {"LWLock", "PgStatsData", "Waiting for shared memory stats data access"}, + {"LWLock", "PgStatsDSA", "Waiting for stats dynamic shared memory allocator access"}, + {"LWLock", "PgStatsHash", "Waiting for stats shared memory hash table access"}, + {"LWLock", "PredicateLockManager", "Waiting to access predicate lock information used by serializable transactions"}, + {"LWLock", "ProcArray", "Waiting to access the shared per-process data structures (typically, to get a snapshot or report a session\'s transaction ID)"}, + {"LWLock", "RelationMapping", "Waiting to read or update a pg_filenode.map file (used to track the filenode assignments of certain system catalogs)"}, + {"LWLock", "RelCacheInit", "Waiting to read or update a pg_internal.init relation cache initialization file"}, + {"LWLock", "ReplicationOrigin", "Waiting to create, drop or use a replication origin"}, + {"LWLock", "ReplicationOriginState", "Waiting to read or update the progress of one replication origin"}, + {"LWLock", "ReplicationSlotAllocation", "Waiting to allocate or free a replication slot"}, + {"LWLock", "ReplicationSlotControl", "Waiting to read or update replication slot state"}, + {"LWLock", "ReplicationSlotIO", "Waiting for I/O on a replication slot"}, + {"LWLock", "SerialBuffer", "Waiting for I/O on a serializable transaction conflict SLRU buffer"}, + {"LWLock", "SerialControl", "Waiting to read or update shared pg_serial state"}, + {"LWLock", "SerializableFinishedList", "Waiting to access the list of finished serializable transactions"}, + {"LWLock", "SerializablePredicateList", "Waiting to access the list of predicate locks held by serializable transactions"}, + {"LWLock", "SerializableXactHash", "Waiting to read or update information about serializable transactions"}, + {"LWLock", "SerialSLRU", "Waiting to access the serializable transaction conflict SLRU cache"}, + {"LWLock", "SharedTidBitmap", "Waiting to access a shared TID bitmap during a parallel bitmap index scan"}, + {"LWLock", "SharedTupleStore", "Waiting to access a shared tuple store during parallel query"}, + {"LWLock", "ShmemIndex", "Waiting to find or allocate space in shared memory"}, + {"LWLock", "SInvalRead", "Waiting to retrieve messages from the shared catalog invalidation queue"}, + {"LWLock", "SInvalWrite", "Waiting to add a message to the shared catalog invalidation queue"}, + {"LWLock", "SubtransBuffer", "Waiting for I/O on a sub-transaction SLRU buffer"}, + {"LWLock", "SubtransSLRU", "Waiting to access the sub-transaction SLRU cache"}, + {"LWLock", "SyncRep", "Waiting to read or update information about the state of synchronous replication"}, + {"LWLock", "SyncScan", "Waiting to select the starting location of a synchronized table scan"}, + {"LWLock", "TablespaceCreate", "Waiting to create or drop a tablespace"}, + {"LWLock", "TwoPhaseState", "Waiting to read or update the state of prepared transactions"}, + {"LWLock", "WaitEventCustom", "Waiting to read or update custom wait events information"}, + {"LWLock", "WALBufMapping", "Waiting to replace a page in WAL buffers"}, + {"LWLock", "WALInsert", "Waiting to insert WAL data into a memory buffer"}, + {"LWLock", "WALSummarizer", "Waiting to read or update WAL summarization state"}, + {"LWLock", "WALWrite", "Waiting for WAL buffers to be written to disk"}, + {"LWLock", "WrapLimitsVacuum", "Waiting to update limits on transaction id and multixact consumption"}, + {"LWLock", "XactBuffer", "Waiting for I/O on a transaction status SLRU buffer"}, + {"LWLock", "XactSLRU", "Waiting to access the transaction status SLRU cache"}, + {"LWLock", "XactTruncation", "Waiting to execute pg_xact_status or update the oldest transaction ID available to it"}, + {"LWLock", "XidGen", "Waiting to allocate a new transaction ID"}, + {"Timeout", "BaseBackupThrottle", "Waiting during base backup when throttling activity"}, + {"Timeout", "CheckpointWriteDelay", "Waiting between writes while performing a checkpoint"}, + {"Timeout", "PgSleep", "Waiting due to a call to pg_sleep or a sibling function"}, + {"Timeout", "RecoveryApplyDelay", "Waiting to apply WAL during recovery because of a delay setting"}, + {"Timeout", "RecoveryRetrieveRetryInterval", "Waiting during recovery when WAL data is not available from any source (pg_wal, archive or stream)"}, + {"Timeout", "RegisterSyncRequest", "Waiting while sending synchronization requests to the checkpointer, because the request queue is full"}, + {"Timeout", "SpinDelay", "Waiting while acquiring a contended spinlock"}, + {"Timeout", "VacuumDelay", "Waiting in a cost-based vacuum delay point"}, + {"Timeout", "VacuumTruncate", "Waiting to acquire an exclusive lock to truncate off any empty pages at the end of a table vacuumed"}, + {"Timeout", "WalSummarizerError", "Waiting after a WAL summarizer error"}, diff --git a/src/backend/utils/activity/wait_event_names.txt b/src/backend/utils/activity/wait_event_names.txt index 173f1f63728..3a1a20b0deb 100644 --- a/src/backend/utils/activity/wait_event_names.txt +++ b/src/backend/utils/activity/wait_event_names.txt @@ -14,13 +14,13 @@ # # The files generated from this one are: # -# src/backend/utils/activity/wait_event_types.h +# wait_event_types.h # typedef enum definitions for wait events. # -# src/backend/utils/activity/pgstat_wait_event.c +# pgstat_wait_event.c # C functions to get the wait event name based on the enum. # -# src/backend/utils/activity/wait_event_types.sgml +# wait_event_types.sgml # SGML tables of wait events for inclusion in the documentation. # # When adding a new wait event, make sure it is placed in the appropriate diff --git a/src/backend/utils/activity/wait_event_types.h b/src/backend/utils/activity/wait_event_types.h new file mode 100644 index 00000000000..d0ed7ff85bd --- /dev/null +++ b/src/backend/utils/activity/wait_event_types.h @@ -0,0 +1,224 @@ +/*------------------------------------------------------------------------- + * + * wait_event_types.h + * Generated wait events infrastructure code + * + * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/utils/activity/generate-wait_event_types.pl + * + *------------------------------------------------------------------------- + */ + +#ifndef WAIT_EVENT_TYPES_H +#define WAIT_EVENT_TYPES_H + +#include "utils/wait_classes.h" + +typedef enum +{ + WAIT_EVENT_ARCHIVER_MAIN = PG_WAIT_ACTIVITY, + WAIT_EVENT_AUTOVACUUM_MAIN, + WAIT_EVENT_BGWRITER_HIBERNATE, + WAIT_EVENT_BGWRITER_MAIN, + WAIT_EVENT_CHECKPOINTER_MAIN, + WAIT_EVENT_CHECKPOINTER_SHUTDOWN, + WAIT_EVENT_IO_WORKER_MAIN, + WAIT_EVENT_LOGICAL_APPLY_MAIN, + WAIT_EVENT_LOGICAL_LAUNCHER_MAIN, + WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN, + WAIT_EVENT_RECOVERY_WAL_STREAM, + WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN, + WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN, + WAIT_EVENT_SYSLOGGER_MAIN, + WAIT_EVENT_WAL_RECEIVER_MAIN, + WAIT_EVENT_WAL_SENDER_MAIN, + WAIT_EVENT_WAL_SUMMARIZER_WAL, + WAIT_EVENT_WAL_WRITER_MAIN +} WaitEventActivity; + +typedef enum +{ + WAIT_EVENT_BUFFER_PIN = PG_WAIT_BUFFERPIN +} WaitEventBufferPin; + +typedef enum +{ + WAIT_EVENT_CLIENT_READ = PG_WAIT_CLIENT, + WAIT_EVENT_CLIENT_WRITE, + WAIT_EVENT_GSS_OPEN_SERVER, + WAIT_EVENT_LIBPQWALRECEIVER_CONNECT, + WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE, + WAIT_EVENT_SSL_OPEN_SERVER, + WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION, + WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL, + WAIT_EVENT_WAL_SENDER_WRITE_DATA +} WaitEventClient; + +typedef enum +{ + WAIT_EVENT_AIO_IO_COMPLETION = PG_WAIT_IO, + WAIT_EVENT_AIO_IO_URING_EXECUTION, + WAIT_EVENT_AIO_IO_URING_SUBMIT, + WAIT_EVENT_BASEBACKUP_READ, + WAIT_EVENT_BASEBACKUP_SYNC, + WAIT_EVENT_BASEBACKUP_WRITE, + WAIT_EVENT_BUFFILE_READ, + WAIT_EVENT_BUFFILE_TRUNCATE, + WAIT_EVENT_BUFFILE_WRITE, + WAIT_EVENT_CONTROL_FILE_READ, + WAIT_EVENT_CONTROL_FILE_SYNC, + WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE, + WAIT_EVENT_CONTROL_FILE_WRITE, + WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE, + WAIT_EVENT_COPY_FILE_COPY, + WAIT_EVENT_COPY_FILE_READ, + WAIT_EVENT_COPY_FILE_WRITE, + WAIT_EVENT_DATA_FILE_EXTEND, + WAIT_EVENT_DATA_FILE_FLUSH, + WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC, + WAIT_EVENT_DATA_FILE_PREFETCH, + WAIT_EVENT_DATA_FILE_READ, + WAIT_EVENT_DATA_FILE_SYNC, + WAIT_EVENT_DATA_FILE_TRUNCATE, + WAIT_EVENT_DATA_FILE_WRITE, + WAIT_EVENT_DSM_ALLOCATE, + WAIT_EVENT_DSM_FILL_ZERO_WRITE, + WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ, + WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC, + WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE, + WAIT_EVENT_LOCK_FILE_CREATE_READ, + WAIT_EVENT_LOCK_FILE_CREATE_SYNC, + WAIT_EVENT_LOCK_FILE_CREATE_WRITE, + WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ, + WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC, + WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC, + WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE, + WAIT_EVENT_LOGICAL_REWRITE_SYNC, + WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE, + WAIT_EVENT_LOGICAL_REWRITE_WRITE, + WAIT_EVENT_RELATION_MAP_READ, + WAIT_EVENT_RELATION_MAP_REPLACE, + WAIT_EVENT_RELATION_MAP_WRITE, + WAIT_EVENT_REORDER_BUFFER_READ, + WAIT_EVENT_REORDER_BUFFER_WRITE, + WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ, + WAIT_EVENT_REPLICATION_SLOT_READ, + WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC, + WAIT_EVENT_REPLICATION_SLOT_SYNC, + WAIT_EVENT_REPLICATION_SLOT_WRITE, + WAIT_EVENT_SLRU_FLUSH_SYNC, + WAIT_EVENT_SLRU_READ, + WAIT_EVENT_SLRU_SYNC, + WAIT_EVENT_SLRU_WRITE, + WAIT_EVENT_SNAPBUILD_READ, + WAIT_EVENT_SNAPBUILD_SYNC, + WAIT_EVENT_SNAPBUILD_WRITE, + WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC, + WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE, + WAIT_EVENT_TIMELINE_HISTORY_READ, + WAIT_EVENT_TIMELINE_HISTORY_SYNC, + WAIT_EVENT_TIMELINE_HISTORY_WRITE, + WAIT_EVENT_TWOPHASE_FILE_READ, + WAIT_EVENT_TWOPHASE_FILE_SYNC, + WAIT_EVENT_TWOPHASE_FILE_WRITE, + WAIT_EVENT_VERSION_FILE_SYNC, + WAIT_EVENT_VERSION_FILE_WRITE, + WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ, + WAIT_EVENT_WAL_BOOTSTRAP_SYNC, + WAIT_EVENT_WAL_BOOTSTRAP_WRITE, + WAIT_EVENT_WAL_COPY_READ, + WAIT_EVENT_WAL_COPY_SYNC, + WAIT_EVENT_WAL_COPY_WRITE, + WAIT_EVENT_WAL_INIT_SYNC, + WAIT_EVENT_WAL_INIT_WRITE, + WAIT_EVENT_WAL_READ, + WAIT_EVENT_WAL_SUMMARY_READ, + WAIT_EVENT_WAL_SUMMARY_WRITE, + WAIT_EVENT_WAL_SYNC, + WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN, + WAIT_EVENT_WAL_WRITE +} WaitEventIO; + +typedef enum +{ + WAIT_EVENT_APPEND_READY = PG_WAIT_IPC, + WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND, + WAIT_EVENT_ARCHIVE_COMMAND, + WAIT_EVENT_BACKEND_TERMINATION, + WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE, + WAIT_EVENT_BGWORKER_SHUTDOWN, + WAIT_EVENT_BGWORKER_STARTUP, + WAIT_EVENT_BTREE_PAGE, + WAIT_EVENT_BUFFER_IO, + WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE, + WAIT_EVENT_CHECKPOINT_DELAY_START, + WAIT_EVENT_CHECKPOINT_DONE, + WAIT_EVENT_CHECKPOINT_START, + WAIT_EVENT_EXECUTE_GATHER, + WAIT_EVENT_HASH_BATCH_ALLOCATE, + WAIT_EVENT_HASH_BATCH_ELECT, + WAIT_EVENT_HASH_BATCH_LOAD, + WAIT_EVENT_HASH_BUILD_ALLOCATE, + WAIT_EVENT_HASH_BUILD_ELECT, + WAIT_EVENT_HASH_BUILD_HASH_INNER, + WAIT_EVENT_HASH_BUILD_HASH_OUTER, + WAIT_EVENT_HASH_GROW_BATCHES_DECIDE, + WAIT_EVENT_HASH_GROW_BATCHES_ELECT, + WAIT_EVENT_HASH_GROW_BATCHES_FINISH, + WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE, + WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION, + WAIT_EVENT_HASH_GROW_BUCKETS_ELECT, + WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE, + WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT, + WAIT_EVENT_LOGICAL_APPLY_SEND_DATA, + WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE, + WAIT_EVENT_LOGICAL_SYNC_DATA, + WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE, + WAIT_EVENT_MESSAGE_QUEUE_INTERNAL, + WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE, + WAIT_EVENT_MESSAGE_QUEUE_RECEIVE, + WAIT_EVENT_MESSAGE_QUEUE_SEND, + WAIT_EVENT_MULTIXACT_CREATION, + WAIT_EVENT_PARALLEL_BITMAP_SCAN, + WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN, + WAIT_EVENT_PARALLEL_FINISH, + WAIT_EVENT_PROCARRAY_GROUP_UPDATE, + WAIT_EVENT_PROC_SIGNAL_BARRIER, + WAIT_EVENT_PROMOTE, + WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT, + WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE, + WAIT_EVENT_RECOVERY_END_COMMAND, + WAIT_EVENT_RECOVERY_PAUSE, + WAIT_EVENT_REPLICATION_ORIGIN_DROP, + WAIT_EVENT_REPLICATION_SLOT_DROP, + WAIT_EVENT_RESTORE_COMMAND, + WAIT_EVENT_SAFE_SNAPSHOT, + WAIT_EVENT_SYNC_REP, + WAIT_EVENT_WAL_RECEIVER_EXIT, + WAIT_EVENT_WAL_RECEIVER_WAIT_START, + WAIT_EVENT_WAL_SUMMARY_READY, + WAIT_EVENT_XACT_GROUP_UPDATE +} WaitEventIPC; + +typedef enum +{ + WAIT_EVENT_BASE_BACKUP_THROTTLE = PG_WAIT_TIMEOUT, + WAIT_EVENT_CHECKPOINT_WRITE_DELAY, + WAIT_EVENT_PG_SLEEP, + WAIT_EVENT_RECOVERY_APPLY_DELAY, + WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL, + WAIT_EVENT_REGISTER_SYNC_REQUEST, + WAIT_EVENT_SPIN_DELAY, + WAIT_EVENT_VACUUM_DELAY, + WAIT_EVENT_VACUUM_TRUNCATE, + WAIT_EVENT_WAL_SUMMARIZER_ERROR +} WaitEventTimeout; + +#endif /* WAIT_EVENT_TYPES_H */ diff --git a/src/backend/utils/adt/arrayfuncs.c b/src/backend/utils/adt/arrayfuncs.c index c8f53c6fbe7..3278ed7223a 100644 --- a/src/backend/utils/adt/arrayfuncs.c +++ b/src/backend/utils/adt/arrayfuncs.c @@ -3728,6 +3728,12 @@ deconstruct_array_builtin(ArrayType *array, elmalign = TYPALIGN_SHORT; break; + case INT4OID: + elmlen = sizeof(int32); + elmbyval = true; + elmalign = TYPALIGN_INT; + break; + case OIDOID: elmlen = sizeof(Oid); elmbyval = true; diff --git a/src/backend/utils/adt/encode.c b/src/backend/utils/adt/encode.c index 4ccaed815d1..c8dc56bc5cf 100644 --- a/src/backend/utils/adt/encode.c +++ b/src/backend/utils/adt/encode.c @@ -236,7 +236,7 @@ hex_decode_safe(const char *src, size_t len, char *dst, Node *escontext) ereturn(escontext, 0, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("invalid hexadecimal digit: \"%.*s\"", - pg_mblen(s), s))); + pg_mblen_range(s, srcend), s))); s++; if (s >= srcend) ereturn(escontext, 0, @@ -246,7 +246,7 @@ hex_decode_safe(const char *src, size_t len, char *dst, Node *escontext) ereturn(escontext, 0, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("invalid hexadecimal digit: \"%.*s\"", - pg_mblen(s), s))); + pg_mblen_range(s, srcend), s))); s++; *p++ = (v1 << 4) | v2; } @@ -375,7 +375,7 @@ pg_base64_decode(const char *src, size_t len, char *dst) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("invalid symbol \"%.*s\" found while decoding base64 sequence", - pg_mblen(s - 1), s - 1))); + pg_mblen_range(s - 1, srcend), s - 1))); } /* add it to buffer */ buf = (buf << 6) + b; diff --git a/src/backend/utils/adt/format_type.c b/src/backend/utils/adt/format_type.c index 9948c26e76c..f4b891fe347 100644 --- a/src/backend/utils/adt/format_type.c +++ b/src/backend/utils/adt/format_type.c @@ -448,11 +448,15 @@ oidvectortypes(PG_FUNCTION_ARGS) { oidvector *oidArray = (oidvector *) PG_GETARG_POINTER(0); char *result; - int numargs = oidArray->dim1; + int numargs; int num; size_t total; size_t left; + /* validate input before fetching dim1 */ + check_valid_oidvector(oidArray); + numargs = oidArray->dim1; + total = 20 * numargs + 1; result = palloc(total); result[0] = '\0'; diff --git a/src/backend/utils/adt/formatting.c b/src/backend/utils/adt/formatting.c index 1d05481181d..0a168fb9ea8 100644 --- a/src/backend/utils/adt/formatting.c +++ b/src/backend/utils/adt/formatting.c @@ -1443,7 +1443,7 @@ parse_format(FormatNode *node, const char *str, const KeyWord *kw, ereport(ERROR, (errcode(ERRCODE_INVALID_DATETIME_FORMAT), errmsg("invalid datetime format separator: \"%s\"", - pnstrdup(str, pg_mblen(str))))); + pnstrdup(str, pg_mblen_cstr(str))))); if (*str == ' ') n->type = NODE_TYPE_SPACE; @@ -1473,7 +1473,7 @@ parse_format(FormatNode *node, const char *str, const KeyWord *kw, /* backslash quotes the next character, if any */ if (*str == '\\' && *(str + 1)) str++; - chlen = pg_mblen(str); + chlen = pg_mblen_cstr(str); n->type = NODE_TYPE_CHAR; memcpy(n->character, str, chlen); n->character[chlen] = '\0'; @@ -1491,7 +1491,7 @@ parse_format(FormatNode *node, const char *str, const KeyWord *kw, */ if (*str == '\\' && *(str + 1) == '"') str++; - chlen = pg_mblen(str); + chlen = pg_mblen_cstr(str); if ((flags & DCH_FLAG) && is_separator_char(str)) n->type = NODE_TYPE_SEPARATOR; @@ -2014,8 +2014,8 @@ asc_toupper_z(const char *buff) do { \ if (S_THth(_suf)) \ { \ - if (*(ptr)) (ptr) += pg_mblen(ptr); \ - if (*(ptr)) (ptr) += pg_mblen(ptr); \ + if (*(ptr)) (ptr) += pg_mblen_cstr(ptr); \ + if (*(ptr)) (ptr) += pg_mblen_cstr(ptr); \ } \ } while (0) @@ -3221,7 +3221,7 @@ DCH_from_char(FormatNode *node, const char *in, TmFromChar *out, * insist that the consumed character match the format's * character. */ - s += pg_mblen(s); + s += pg_mblen_cstr(s); } continue; } @@ -3243,11 +3243,11 @@ DCH_from_char(FormatNode *node, const char *in, TmFromChar *out, if (extra_skip > 0) extra_skip--; else - s += pg_mblen(s); + s += pg_mblen_cstr(s); } else { - int chlen = pg_mblen(s); + int chlen = pg_mblen_cstr(s); /* * Standard mode requires strict match of format characters. @@ -5791,13 +5791,15 @@ NUM_numpart_to_char(NUMProc *Np, int id) static void NUM_eat_non_data_chars(NUMProc *Np, int n, int input_len) { + const char *end = Np->inout + input_len; + while (n-- > 0) { if (OVERLOAD_TEST) break; /* end of input */ if (strchr("0123456789.,+-", *Np->inout_p) != NULL) break; /* it's a data character */ - Np->inout_p += pg_mblen(Np->inout_p); + Np->inout_p += pg_mblen_range(Np->inout_p, end); } } @@ -6234,7 +6236,7 @@ NUM_processor(FormatNode *node, NUMDesc *Num, char *inout, } else { - Np->inout_p += pg_mblen(Np->inout_p); + Np->inout_p += pg_mblen_range(Np->inout_p, Np->inout + input_len); } continue; } diff --git a/src/backend/utils/adt/int.c b/src/backend/utils/adt/int.c index b5781989a64..0fcd43ba0f9 100644 --- a/src/backend/utils/adt/int.c +++ b/src/backend/utils/adt/int.c @@ -134,6 +134,30 @@ buildint2vector(const int16 *int2s, int n) return result; } +/* + * validate that an array object meets the restrictions of int2vector + * + * We need this because there are pathways by which a general int2[] array can + * be cast to int2vector, allowing the type's restrictions to be violated. + * All code that receives an int2vector as a SQL parameter should check this. + */ +static void +check_valid_int2vector(const int2vector *int2Array) +{ + /* + * We insist on ndim == 1 and dataoffset == 0 (that is, no nulls) because + * otherwise the array's layout will not be what calling code expects. We + * needn't be picky about the index lower bound though. Checking elemtype + * is just paranoia. + */ + if (int2Array->ndim != 1 || + int2Array->dataoffset != 0 || + int2Array->elemtype != INT2OID) + ereport(ERROR, + (errcode(ERRCODE_DATATYPE_MISMATCH), + errmsg("array is not a valid int2vector"))); +} + /* * int2vectorin - converts "num num ..." to internal form */ @@ -208,10 +232,14 @@ int2vectorout(PG_FUNCTION_ARGS) { int2vector *int2Array = (int2vector *) PG_GETARG_POINTER(0); int num, - nnums = int2Array->dim1; + nnums; char *rp; char *result; + /* validate input before fetching dim1 */ + check_valid_int2vector(int2Array); + nnums = int2Array->dim1; + /* assumes sign, 5 digits, ' ' */ rp = result = (char *) palloc(nnums * 7 + 1); for (num = 0; num < nnums; num++) @@ -272,6 +300,7 @@ int2vectorrecv(PG_FUNCTION_ARGS) Datum int2vectorsend(PG_FUNCTION_ARGS) { + /* We don't do check_valid_int2vector, since array_send won't care */ return array_send(fcinfo); } diff --git a/src/backend/utils/adt/jsonfuncs.c b/src/backend/utils/adt/jsonfuncs.c index bcb1720b6cd..775da3c060d 100644 --- a/src/backend/utils/adt/jsonfuncs.c +++ b/src/backend/utils/adt/jsonfuncs.c @@ -695,7 +695,7 @@ report_json_context(JsonLexContext *lex) { /* Advance to next multibyte character */ if (IS_HIGHBIT_SET(*context_start)) - context_start += pg_mblen(context_start); + context_start += pg_mblen_range(context_start, context_end); else context_start++; } diff --git a/src/backend/utils/adt/jsonpath_gram.y b/src/backend/utils/adt/jsonpath_gram.y index 499745a8fef..f7233c98a18 100644 --- a/src/backend/utils/adt/jsonpath_gram.y +++ b/src/backend/utils/adt/jsonpath_gram.y @@ -599,7 +599,8 @@ makeItemLikeRegex(JsonPathParseItem *expr, JsonPathString *pattern, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("invalid input syntax for type %s", "jsonpath"), errdetail("Unrecognized flag character \"%.*s\" in LIKE_REGEX predicate.", - pg_mblen(flags->val + i), flags->val + i))); + pg_mblen_range(flags->val + i, flags->val + flags->len), + flags->val + i))); break; } } diff --git a/src/backend/utils/adt/levenshtein.c b/src/backend/utils/adt/levenshtein.c index 15a90f6f50c..2cc6a13b245 100644 --- a/src/backend/utils/adt/levenshtein.c +++ b/src/backend/utils/adt/levenshtein.c @@ -83,6 +83,8 @@ varstr_levenshtein(const char *source, int slen, int *s_char_len = NULL; int j; const char *y; + const char *send = source + slen; + const char *tend = target + tlen; /* * For varstr_levenshtein_less_equal, we have real variables called @@ -183,10 +185,10 @@ varstr_levenshtein(const char *source, int slen, #endif /* - * In order to avoid calling pg_mblen() repeatedly on each character in s, - * we cache all the lengths before starting the main loop -- but if all - * the characters in both strings are single byte, then we skip this and - * use a fast-path in the main loop. If only one string contains + * In order to avoid calling pg_mblen_range() repeatedly on each character + * in s, we cache all the lengths before starting the main loop -- but if + * all the characters in both strings are single byte, then we skip this + * and use a fast-path in the main loop. If only one string contains * multi-byte characters, we still build the array, so that the fast-path * needn't deal with the case where the array hasn't been initialized. */ @@ -198,7 +200,7 @@ varstr_levenshtein(const char *source, int slen, s_char_len = (int *) palloc((m + 1) * sizeof(int)); for (i = 0; i < m; ++i) { - s_char_len[i] = pg_mblen(cp); + s_char_len[i] = pg_mblen_range(cp, send); cp += s_char_len[i]; } s_char_len[i] = 0; @@ -224,7 +226,7 @@ varstr_levenshtein(const char *source, int slen, { int *temp; const char *x = source; - int y_char_len = n != tlen + 1 ? pg_mblen(y) : 1; + int y_char_len = n != tlen + 1 ? pg_mblen_range(y, tend) : 1; int i; #ifdef LEVENSHTEIN_LESS_EQUAL diff --git a/src/backend/utils/adt/like.c b/src/backend/utils/adt/like.c index 7f4cf614585..e69ca19c5a7 100644 --- a/src/backend/utils/adt/like.c +++ b/src/backend/utils/adt/like.c @@ -55,20 +55,20 @@ static int Generic_Text_IC_like(text *str, text *pat, Oid collation); *-------------------- */ static inline int -wchareq(const char *p1, const char *p2) +wchareq(const char *p1, int p1len, const char *p2, int p2len) { - int p1_len; + int p1clen; /* Optimization: quickly compare the first byte. */ if (*p1 != *p2) return 0; - p1_len = pg_mblen(p1); - if (pg_mblen(p2) != p1_len) + p1clen = pg_mblen_with_len(p1, p1len); + if (pg_mblen_with_len(p2, p2len) != p1clen) return 0; /* They are the same length */ - while (p1_len--) + while (p1clen--) { if (*p1++ != *p2++) return 0; @@ -105,11 +105,11 @@ SB_lower_char(unsigned char c, pg_locale_t locale) #define NextByte(p, plen) ((p)++, (plen)--) /* Set up to compile like_match.c for multibyte characters */ -#define CHAREQ(p1, p2) wchareq((p1), (p2)) +#define CHAREQ(p1, p1len, p2, p2len) wchareq((p1), (p1len), (p2), (p2len)) #define NextChar(p, plen) \ - do { int __l = pg_mblen(p); (p) +=__l; (plen) -=__l; } while (0) + do { int __l = pg_mblen_with_len((p), (plen)); (p) +=__l; (plen) -=__l; } while (0) #define CopyAdvChar(dst, src, srclen) \ - do { int __l = pg_mblen(src); \ + do { int __l = pg_mblen_with_len((src), (srclen)); \ (srclen) -= __l; \ while (__l-- > 0) \ *(dst)++ = *(src)++; \ @@ -121,7 +121,7 @@ SB_lower_char(unsigned char c, pg_locale_t locale) #include "like_match.c" /* Set up to compile like_match.c for single-byte characters */ -#define CHAREQ(p1, p2) (*(p1) == *(p2)) +#define CHAREQ(p1, p1len, p2, p2len) (*(p1) == *(p2)) #define NextChar(p, plen) NextByte((p), (plen)) #define CopyAdvChar(dst, src, srclen) (*(dst)++ = *(src)++, (srclen)--) diff --git a/src/backend/utils/adt/like_match.c b/src/backend/utils/adt/like_match.c index 892f8a745ea..bac6c182467 100644 --- a/src/backend/utils/adt/like_match.c +++ b/src/backend/utils/adt/like_match.c @@ -438,6 +438,7 @@ do_like_escape(text *pat, text *esc) errhint("Escape string must be empty or one character."))); e = VARDATA_ANY(esc); + elen = VARSIZE_ANY_EXHDR(esc); /* * If specified escape is '\', just copy the pattern as-is. @@ -456,7 +457,7 @@ do_like_escape(text *pat, text *esc) afterescape = false; while (plen > 0) { - if (CHAREQ(p, e) && !afterescape) + if (CHAREQ(p, plen, e, elen) && !afterescape) { *r++ = '\\'; NextChar(p, plen); diff --git a/src/backend/utils/adt/multirangetypes.c b/src/backend/utils/adt/multirangetypes.c index cd84ced5b48..943961fe0ec 100644 --- a/src/backend/utils/adt/multirangetypes.c +++ b/src/backend/utils/adt/multirangetypes.c @@ -483,8 +483,9 @@ multirange_canonicalize(TypeCacheEntry *rangetyp, int32 input_range_count, int32 output_range_count = 0; /* Sort the ranges so we can find the ones that overlap/meet. */ - qsort_arg(ranges, input_range_count, sizeof(RangeType *), range_compare, - rangetyp); + if (ranges != NULL) + qsort_arg(ranges, input_range_count, sizeof(RangeType *), + range_compare, rangetyp); /* Now merge where possible: */ for (i = 0; i < input_range_count; i++) diff --git a/src/backend/utils/adt/network_selfuncs.c b/src/backend/utils/adt/network_selfuncs.c index 940cdafa546..a76186967d4 100644 --- a/src/backend/utils/adt/network_selfuncs.c +++ b/src/backend/utils/adt/network_selfuncs.c @@ -43,9 +43,9 @@ /* Maximum number of items to consider in join selectivity calculations */ #define MAX_CONSIDERED_ELEMS 1024 -static Selectivity networkjoinsel_inner(Oid operator, +static Selectivity networkjoinsel_inner(Oid operator, int opr_codenum, VariableStatData *vardata1, VariableStatData *vardata2); -static Selectivity networkjoinsel_semi(Oid operator, +static Selectivity networkjoinsel_semi(Oid operator, int opr_codenum, VariableStatData *vardata1, VariableStatData *vardata2); static Selectivity mcv_population(float4 *mcv_numbers, int mcv_nvalues); static Selectivity inet_hist_value_sel(Datum *values, int nvalues, @@ -82,6 +82,7 @@ networksel(PG_FUNCTION_ARGS) Oid operator = PG_GETARG_OID(1); List *args = (List *) PG_GETARG_POINTER(2); int varRelid = PG_GETARG_INT32(3); + int opr_codenum; VariableStatData vardata; Node *other; bool varonleft; @@ -95,6 +96,14 @@ networksel(PG_FUNCTION_ARGS) nullfrac; FmgrInfo proc; + /* + * Before all else, verify that the operator is one of the ones supported + * by this function, which in turn proves that the input datatypes are + * what we expect. Otherwise, attaching this selectivity function to some + * unexpected operator could cause trouble. + */ + opr_codenum = inet_opr_codenum(operator); + /* * If expression is not (variable op something) or (something op * variable), then punt and return a default estimate. @@ -150,13 +159,12 @@ networksel(PG_FUNCTION_ARGS) STATISTIC_KIND_HISTOGRAM, InvalidOid, ATTSTATSSLOT_VALUES)) { - int opr_codenum = inet_opr_codenum(operator); + int h_codenum; /* Commute if needed, so we can consider histogram to be on the left */ - if (!varonleft) - opr_codenum = -opr_codenum; + h_codenum = varonleft ? opr_codenum : -opr_codenum; non_mcv_selec = inet_hist_value_sel(hslot.values, hslot.nvalues, - constvalue, opr_codenum); + constvalue, h_codenum); free_attstatsslot(&hslot); } @@ -203,10 +211,19 @@ networkjoinsel(PG_FUNCTION_ARGS) #endif SpecialJoinInfo *sjinfo = (SpecialJoinInfo *) PG_GETARG_POINTER(4); double selec; + int opr_codenum; VariableStatData vardata1; VariableStatData vardata2; bool join_is_reversed; + /* + * Before all else, verify that the operator is one of the ones supported + * by this function, which in turn proves that the input datatypes are + * what we expect. Otherwise, attaching this selectivity function to some + * unexpected operator could cause trouble. + */ + opr_codenum = inet_opr_codenum(operator); + get_join_variables(root, args, sjinfo, &vardata1, &vardata2, &join_is_reversed); @@ -220,15 +237,18 @@ networkjoinsel(PG_FUNCTION_ARGS) * Selectivity for left/full join is not exactly the same as inner * join, but we neglect the difference, as eqjoinsel does. */ - selec = networkjoinsel_inner(operator, &vardata1, &vardata2); + selec = networkjoinsel_inner(operator, opr_codenum, + &vardata1, &vardata2); break; case JOIN_SEMI: case JOIN_ANTI: /* Here, it's important that we pass the outer var on the left. */ if (!join_is_reversed) - selec = networkjoinsel_semi(operator, &vardata1, &vardata2); + selec = networkjoinsel_semi(operator, opr_codenum, + &vardata1, &vardata2); else selec = networkjoinsel_semi(get_commutator(operator), + -opr_codenum, &vardata2, &vardata1); break; default: @@ -260,7 +280,7 @@ networkjoinsel(PG_FUNCTION_ARGS) * Also, MCV vs histogram selectivity is not neglected as in eqjoinsel_inner(). */ static Selectivity -networkjoinsel_inner(Oid operator, +networkjoinsel_inner(Oid operator, int opr_codenum, VariableStatData *vardata1, VariableStatData *vardata2) { Form_pg_statistic stats; @@ -273,7 +293,6 @@ networkjoinsel_inner(Oid operator, mcv2_exists = false, hist1_exists = false, hist2_exists = false; - int opr_codenum; int mcv1_length = 0, mcv2_length = 0; AttStatsSlot mcv1_slot; @@ -325,8 +344,6 @@ networkjoinsel_inner(Oid operator, memset(&hist2_slot, 0, sizeof(hist2_slot)); } - opr_codenum = inet_opr_codenum(operator); - /* * Calculate selectivity for MCV vs MCV matches. */ @@ -387,7 +404,7 @@ networkjoinsel_inner(Oid operator, * histogram selectivity for semi/anti join cases. */ static Selectivity -networkjoinsel_semi(Oid operator, +networkjoinsel_semi(Oid operator, int opr_codenum, VariableStatData *vardata1, VariableStatData *vardata2) { Form_pg_statistic stats; @@ -401,7 +418,6 @@ networkjoinsel_semi(Oid operator, mcv2_exists = false, hist1_exists = false, hist2_exists = false; - int opr_codenum; FmgrInfo proc; int i, mcv1_length = 0, @@ -455,7 +471,6 @@ networkjoinsel_semi(Oid operator, memset(&hist2_slot, 0, sizeof(hist2_slot)); } - opr_codenum = inet_opr_codenum(operator); fmgr_info(get_opcode(operator), &proc); /* Estimate number of input rows represented by RHS histogram. */ @@ -827,6 +842,9 @@ inet_semi_join_sel(Datum lhs_value, /* * Assign useful code numbers for the subnet inclusion/overlap operators * + * This will throw an error if the operator is not one of the ones we + * support in networksel() and networkjoinsel(). + * * Only inet_masklen_inclusion_cmp() and inet_hist_match_divider() depend * on the exact codes assigned here; but many other places in this file * know that they can negate a code to obtain the code for the commutator diff --git a/src/backend/utils/adt/oid.c b/src/backend/utils/adt/oid.c index 4e880e76232..4ea0d3d8569 100644 --- a/src/backend/utils/adt/oid.c +++ b/src/backend/utils/adt/oid.c @@ -107,6 +107,30 @@ buildoidvector(const Oid *oids, int n) return result; } +/* + * validate that an array object meets the restrictions of oidvector + * + * We need this because there are pathways by which a general oid[] array can + * be cast to oidvector, allowing the type's restrictions to be violated. + * All code that receives an oidvector as a SQL parameter should check this. + */ +void +check_valid_oidvector(const oidvector *oidArray) +{ + /* + * We insist on ndim == 1 and dataoffset == 0 (that is, no nulls) because + * otherwise the array's layout will not be what calling code expects. We + * needn't be picky about the index lower bound though. Checking elemtype + * is just paranoia. + */ + if (oidArray->ndim != 1 || + oidArray->dataoffset != 0 || + oidArray->elemtype != OIDOID) + ereport(ERROR, + (errcode(ERRCODE_DATATYPE_MISMATCH), + errmsg("array is not a valid oidvector"))); +} + /* * oidvectorin - converts "num num ..." to internal form */ @@ -159,10 +183,14 @@ oidvectorout(PG_FUNCTION_ARGS) { oidvector *oidArray = (oidvector *) PG_GETARG_POINTER(0); int num, - nnums = oidArray->dim1; + nnums; char *rp; char *result; + /* validate input before fetching dim1 */ + check_valid_oidvector(oidArray); + nnums = oidArray->dim1; + /* assumes sign, 10 digits, ' ' */ rp = result = (char *) palloc(nnums * 12 + 1); for (num = 0; num < nnums; num++) @@ -225,6 +253,7 @@ oidvectorrecv(PG_FUNCTION_ARGS) Datum oidvectorsend(PG_FUNCTION_ARGS) { + /* We don't do check_valid_oidvector, since array_send won't care */ return array_send(fcinfo); } diff --git a/src/backend/utils/adt/oracle_compat.c b/src/backend/utils/adt/oracle_compat.c index a24a2d208fb..70f7531fb50 100644 --- a/src/backend/utils/adt/oracle_compat.c +++ b/src/backend/utils/adt/oracle_compat.c @@ -169,8 +169,8 @@ lpad(PG_FUNCTION_ARGS) char *ptr1, *ptr2, *ptr2start, - *ptr2end, *ptr_ret; + const char *ptr2end; int m, s1len, s2len; @@ -215,7 +215,7 @@ lpad(PG_FUNCTION_ARGS) while (m--) { - int mlen = pg_mblen(ptr2); + int mlen = pg_mblen_range(ptr2, ptr2end); memcpy(ptr_ret, ptr2, mlen); ptr_ret += mlen; @@ -228,7 +228,7 @@ lpad(PG_FUNCTION_ARGS) while (s1len--) { - int mlen = pg_mblen(ptr1); + int mlen = pg_mblen_unbounded(ptr1); memcpy(ptr_ret, ptr1, mlen); ptr_ret += mlen; @@ -267,8 +267,8 @@ rpad(PG_FUNCTION_ARGS) char *ptr1, *ptr2, *ptr2start, - *ptr2end, *ptr_ret; + const char *ptr2end; int m, s1len, s2len; @@ -308,11 +308,12 @@ rpad(PG_FUNCTION_ARGS) m = len - s1len; ptr1 = VARDATA_ANY(string1); + ptr_ret = VARDATA(ret); while (s1len--) { - int mlen = pg_mblen(ptr1); + int mlen = pg_mblen_unbounded(ptr1); memcpy(ptr_ret, ptr1, mlen); ptr_ret += mlen; @@ -324,7 +325,7 @@ rpad(PG_FUNCTION_ARGS) while (m--) { - int mlen = pg_mblen(ptr2); + int mlen = pg_mblen_range(ptr2, ptr2end); memcpy(ptr_ret, ptr2, mlen); ptr_ret += mlen; @@ -409,6 +410,7 @@ dotrim(const char *string, int stringlen, */ const char **stringchars; const char **setchars; + const char *setend; int *stringmblen; int *setmblen; int stringnchars; @@ -416,6 +418,7 @@ dotrim(const char *string, int stringlen, int resultndx; int resultnchars; const char *p; + const char *pend; int len; int mblen; const char *str_pos; @@ -426,10 +429,11 @@ dotrim(const char *string, int stringlen, stringnchars = 0; p = string; len = stringlen; + pend = p + len; while (len > 0) { stringchars[stringnchars] = p; - stringmblen[stringnchars] = mblen = pg_mblen(p); + stringmblen[stringnchars] = mblen = pg_mblen_range(p, pend); stringnchars++; p += mblen; len -= mblen; @@ -440,10 +444,11 @@ dotrim(const char *string, int stringlen, setnchars = 0; p = set; len = setlen; + setend = set + setlen; while (len > 0) { setchars[setnchars] = p; - setmblen[setnchars] = mblen = pg_mblen(p); + setmblen[setnchars] = mblen = pg_mblen_range(p, setend); setnchars++; p += mblen; len -= mblen; @@ -821,6 +826,8 @@ translate(PG_FUNCTION_ARGS) *to_end; char *source, *target; + const char *source_end; + const char *from_end; int m, fromlen, tolen, @@ -835,9 +842,11 @@ translate(PG_FUNCTION_ARGS) if (m <= 0) PG_RETURN_TEXT_P(string); source = VARDATA_ANY(string); + source_end = source + m; fromlen = VARSIZE_ANY_EXHDR(from); from_ptr = VARDATA_ANY(from); + from_end = from_ptr + fromlen; tolen = VARSIZE_ANY_EXHDR(to); to_ptr = VARDATA_ANY(to); to_end = to_ptr + tolen; @@ -861,12 +870,12 @@ translate(PG_FUNCTION_ARGS) while (m > 0) { - source_len = pg_mblen(source); + source_len = pg_mblen_range(source, source_end); from_index = 0; for (i = 0; i < fromlen; i += len) { - len = pg_mblen(&from_ptr[i]); + len = pg_mblen_range(&from_ptr[i], from_end); if (len == source_len && memcmp(source, &from_ptr[i], len) == 0) break; @@ -882,11 +891,11 @@ translate(PG_FUNCTION_ARGS) { if (p >= to_end) break; - p += pg_mblen(p); + p += pg_mblen_range(p, to_end); } if (p < to_end) { - len = pg_mblen(p); + len = pg_mblen_range(p, to_end); memcpy(target, p, len); target += len; retlen += len; diff --git a/src/backend/utils/adt/pg_locale_libc.c b/src/backend/utils/adt/pg_locale_libc.c index 199857e22db..c68fec2e585 100644 --- a/src/backend/utils/adt/pg_locale_libc.c +++ b/src/backend/utils/adt/pg_locale_libc.c @@ -222,11 +222,11 @@ strlower_libc_mb(char *dest, size_t destsize, const char *src, ssize_t srclen, result_size = wchar2char(result, workspace, max_size + 1, locale); - if (result_size + 1 > destsize) - return result_size; - - memcpy(dest, result, result_size); - dest[result_size] = '\0'; + if (destsize >= result_size + 1) + { + memcpy(dest, result, result_size); + dest[result_size] = '\0'; + } pfree(workspace); pfree(result); @@ -323,11 +323,11 @@ strtitle_libc_mb(char *dest, size_t destsize, const char *src, ssize_t srclen, result_size = wchar2char(result, workspace, max_size + 1, locale); - if (result_size + 1 > destsize) - return result_size; - - memcpy(dest, result, result_size); - dest[result_size] = '\0'; + if (destsize >= result_size + 1) + { + memcpy(dest, result, result_size); + dest[result_size] = '\0'; + } pfree(workspace); pfree(result); @@ -405,11 +405,11 @@ strupper_libc_mb(char *dest, size_t destsize, const char *src, ssize_t srclen, result_size = wchar2char(result, workspace, max_size + 1, locale); - if (result_size + 1 > destsize) - return result_size; - - memcpy(dest, result, result_size); - dest[result_size] = '\0'; + if (destsize >= result_size + 1) + { + memcpy(dest, result, result_size); + dest[result_size] = '\0'; + } pfree(workspace); pfree(result); diff --git a/src/backend/utils/adt/pgstatfuncs.c b/src/backend/utils/adt/pgstatfuncs.c index 1c12ddbae49..6a6ff9288f4 100644 --- a/src/backend/utils/adt/pgstatfuncs.c +++ b/src/backend/utils/adt/pgstatfuncs.c @@ -785,7 +785,7 @@ pg_stat_get_backend_activity(PG_FUNCTION_ARGS) activity = beentry->st_activity_raw; clipped_activity = pgstat_clip_activity(activity); - ret = cstring_to_text(activity); + ret = cstring_to_text(clipped_activity); pfree(clipped_activity); PG_RETURN_TEXT_P(ret); diff --git a/src/backend/utils/adt/regexp.c b/src/backend/utils/adt/regexp.c index b0cdef9b19f..9ff72dc9226 100644 --- a/src/backend/utils/adt/regexp.c +++ b/src/backend/utils/adt/regexp.c @@ -443,7 +443,7 @@ parse_re_flags(pg_re_flags *flags, text *opts) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("invalid regular expression option: \"%.*s\"", - pg_mblen(opt_p + i), opt_p + i))); + pg_mblen_range(opt_p + i, opt_p + opt_len), opt_p + i))); break; } } @@ -673,12 +673,13 @@ textregexreplace(PG_FUNCTION_ARGS) if (VARSIZE_ANY_EXHDR(opt) > 0) { char *opt_p = VARDATA_ANY(opt); + const char *end_p = opt_p + VARSIZE_ANY_EXHDR(opt); if (*opt_p >= '0' && *opt_p <= '9') ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("invalid regular expression option: \"%.*s\"", - pg_mblen(opt_p), opt_p), + pg_mblen_range(opt_p, end_p), opt_p), errhint("If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly."))); } @@ -772,6 +773,7 @@ similar_escape_internal(text *pat_text, text *esc_text) *r; int plen, elen; + const char *pend; bool afterescape = false; int nquotes = 0; int bracket_depth = 0; /* square bracket nesting level */ @@ -779,6 +781,7 @@ similar_escape_internal(text *pat_text, text *esc_text) p = VARDATA_ANY(pat_text); plen = VARSIZE_ANY_EXHDR(pat_text); + pend = p + plen; if (esc_text == NULL) { /* No ESCAPE clause provided; default to backslash as escape */ @@ -878,7 +881,7 @@ similar_escape_internal(text *pat_text, text *esc_text) if (elen > 1) { - int mblen = pg_mblen(p); + int mblen = pg_mblen_range(p, pend); if (mblen > 1) { diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c index c82bacd7c15..c33b4c63120 100644 --- a/src/backend/utils/adt/selfuncs.c +++ b/src/backend/utils/adt/selfuncs.c @@ -191,6 +191,9 @@ static char *convert_string_datum(Datum value, Oid typid, Oid collid, bool *failure); static double convert_timevalue_to_scalar(Datum value, Oid typid, bool *failure); +static Node *strip_all_phvs_deep(PlannerInfo *root, Node *node); +static bool contain_placeholder_walker(Node *node, void *context); +static Node *strip_all_phvs_mutator(Node *node, void *context); static void examine_simple_variable(PlannerInfo *root, Var *var, VariableStatData *vardata); static void examine_indexcol_variable(PlannerInfo *root, IndexOptInfo *index, @@ -5261,8 +5264,8 @@ ReleaseDummy(HeapTuple tuple) * varRelid: see specs for restriction selectivity functions * * Outputs: *vardata is filled as follows: - * var: the input expression (with any binary relabeling stripped, if - * it is or contains a variable; but otherwise the type is preserved) + * var: the input expression (with any phvs or binary relabeling stripped, + * if it is or contains a variable; but otherwise unchanged) * rel: RelOptInfo for relation containing variable; NULL if expression * contains no Vars (NOTE this could point to a RelOptInfo of a * subquery, not one in the current query). @@ -5300,22 +5303,31 @@ examine_variable(PlannerInfo *root, Node *node, int varRelid, /* Save the exposed type of the expression */ vardata->vartype = exprType(node); - /* Look inside any binary-compatible relabeling */ + /* + * PlaceHolderVars are transparent for the purpose of statistics lookup; + * they do not alter the value distribution of the underlying expression. + * However, they can obscure the structure, preventing us from recognizing + * matches to base columns, index expressions, or extended statistics. So + * strip them out first. + */ + basenode = strip_all_phvs_deep(root, node); - if (IsA(node, RelabelType)) - basenode = (Node *) ((RelabelType *) node)->arg; - else - basenode = node; + /* + * Look inside any binary-compatible relabeling. We need to handle nested + * RelabelType nodes here, because the prior stripping of PlaceHolderVars + * may have brought separate RelabelTypes into adjacency. + */ + while (IsA(basenode, RelabelType)) + basenode = (Node *) ((RelabelType *) basenode)->arg; /* Fast path for a simple Var */ - if (IsA(basenode, Var) && (varRelid == 0 || varRelid == ((Var *) basenode)->varno)) { Var *var = (Var *) basenode; /* Set up result fields other than the stats tuple */ - vardata->var = basenode; /* return Var without relabeling */ + vardata->var = basenode; /* return Var without phvs or relabeling */ vardata->rel = find_base_rel(root, var->varno); vardata->atttype = var->vartype; vardata->atttypmod = var->vartypmod; @@ -5352,7 +5364,7 @@ examine_variable(PlannerInfo *root, Node *node, int varRelid, { onerel = find_base_rel(root, relid); vardata->rel = onerel; - node = basenode; /* strip any relabeling */ + node = basenode; /* strip any phvs or relabeling */ } /* else treat it as a constant */ } @@ -5363,13 +5375,13 @@ examine_variable(PlannerInfo *root, Node *node, int varRelid, { /* treat it as a variable of a join relation */ vardata->rel = find_join_rel(root, varnos); - node = basenode; /* strip any relabeling */ + node = basenode; /* strip any phvs or relabeling */ } else if (bms_is_member(varRelid, varnos)) { /* ignore the vars belonging to other relations */ vardata->rel = find_base_rel(root, varRelid); - node = basenode; /* strip any relabeling */ + node = basenode; /* strip any phvs or relabeling */ /* note: no point in expressional-index search here */ } /* else treat it as a constant */ @@ -5602,6 +5614,63 @@ examine_variable(PlannerInfo *root, Node *node, int varRelid, bms_free(varnos); } +/* + * strip_all_phvs_deep + * Deeply strip all PlaceHolderVars in an expression. + + * As a performance optimization, we first use a lightweight walker to check + * for the presence of any PlaceHolderVars. The expensive mutator is invoked + * only if a PlaceHolderVar is found, avoiding unnecessary memory allocation + * and tree copying in the common case where no PlaceHolderVars are present. + */ +static Node * +strip_all_phvs_deep(PlannerInfo *root, Node *node) +{ + /* If there are no PHVs anywhere, we needn't work hard */ + if (root->glob->lastPHId == 0) + return node; + + if (!contain_placeholder_walker(node, NULL)) + return node; + return strip_all_phvs_mutator(node, NULL); +} + +/* + * contain_placeholder_walker + * Lightweight walker to check if an expression contains any + * PlaceHolderVars + */ +static bool +contain_placeholder_walker(Node *node, void *context) +{ + if (node == NULL) + return false; + if (IsA(node, PlaceHolderVar)) + return true; + + return expression_tree_walker(node, contain_placeholder_walker, context); +} + +/* + * strip_all_phvs_mutator + * Mutator to deeply strip all PlaceHolderVars + */ +static Node * +strip_all_phvs_mutator(Node *node, void *context) +{ + if (node == NULL) + return NULL; + if (IsA(node, PlaceHolderVar)) + { + /* Strip it and recurse into its contained expression */ + PlaceHolderVar *phv = (PlaceHolderVar *) node; + + return strip_all_phvs_mutator((Node *) phv->phexpr, context); + } + + return expression_tree_mutator(node, strip_all_phvs_mutator, context); +} + /* * examine_simple_variable * Handle a simple Var for examine_variable diff --git a/src/backend/utils/adt/tsquery.c b/src/backend/utils/adt/tsquery.c index 717de8073d5..de899a600ae 100644 --- a/src/backend/utils/adt/tsquery.c +++ b/src/backend/utils/adt/tsquery.c @@ -120,7 +120,7 @@ get_modifiers(char *buf, int16 *weight, bool *prefix) return buf; buf++; - while (*buf && pg_mblen(buf) == 1) + while (*buf && pg_mblen_cstr(buf) == 1) { switch (*buf) { @@ -259,12 +259,12 @@ parse_or_operator(TSQueryParserState pstate) return false; /* it shouldn't be a part of any word */ - if (t_iseq(ptr, '-') || t_iseq(ptr, '_') || t_isalnum(ptr)) + if (t_iseq(ptr, '-') || t_iseq(ptr, '_') || t_isalnum_cstr(ptr)) return false; for (;;) { - ptr += pg_mblen(ptr); + ptr += pg_mblen_cstr(ptr); if (*ptr == '\0') /* got end of string without operand */ return false; @@ -390,7 +390,7 @@ gettoken_query_standard(TSQueryParserState state, int8 *operator, break; } - state->buf += pg_mblen(state->buf); + state->buf += pg_mblen_cstr(state->buf); } } @@ -502,7 +502,7 @@ gettoken_query_websearch(TSQueryParserState state, int8 *operator, break; } - state->buf += pg_mblen(state->buf); + state->buf += pg_mblen_cstr(state->buf); } } @@ -1014,9 +1014,8 @@ infix(INFIX *in, int parentPriority, bool rightPhraseOp) *(in->cur) = '\\'; in->cur++; } - COPYCHAR(in->cur, op); - clen = pg_mblen(op); + clen = ts_copychar_cstr(in->cur, op); op += clen; in->cur += clen; } diff --git a/src/backend/utils/adt/tsvector.c b/src/backend/utils/adt/tsvector.c index 1fa2e3729bf..e7ac7725233 100644 --- a/src/backend/utils/adt/tsvector.c +++ b/src/backend/utils/adt/tsvector.c @@ -319,9 +319,9 @@ tsvectorout(PG_FUNCTION_ARGS) lenbuf = 0, pp; WordEntry *ptr = ARRPTR(out); - char *curbegin, - *curin, + char *curin, *curout; + const char *curend; lenbuf = out->size * 2 /* '' */ + out->size - 1 /* space */ + 2 /* \0 */ ; for (i = 0; i < out->size; i++) @@ -334,13 +334,14 @@ tsvectorout(PG_FUNCTION_ARGS) curout = outbuf = (char *) palloc(lenbuf); for (i = 0; i < out->size; i++) { - curbegin = curin = STRPTR(out) + ptr->pos; + curin = STRPTR(out) + ptr->pos; + curend = curin + ptr->len; if (i != 0) *curout++ = ' '; *curout++ = '\''; - while (curin - curbegin < ptr->len) + while (curin < curend) { - int len = pg_mblen(curin); + int len = pg_mblen_range(curin, curend); if (t_iseq(curin, '\'')) *curout++ = '\''; diff --git a/src/backend/utils/adt/tsvector_op.c b/src/backend/utils/adt/tsvector_op.c index 1fa1275ca63..ea84e1cf123 100644 --- a/src/backend/utils/adt/tsvector_op.c +++ b/src/backend/utils/adt/tsvector_op.c @@ -2604,11 +2604,15 @@ ts_stat_sql(MemoryContext persistentContext, text *txt, text *ws) if (ws) { char *buf; + const char *end; buf = VARDATA_ANY(ws); - while (buf - VARDATA_ANY(ws) < VARSIZE_ANY_EXHDR(ws)) + end = buf + VARSIZE_ANY_EXHDR(ws); + while (buf < end) { - if (pg_mblen(buf) == 1) + int len = pg_mblen_range(buf, end); + + if (len == 1) { switch (*buf) { @@ -2632,7 +2636,7 @@ ts_stat_sql(MemoryContext persistentContext, text *txt, text *ws) stat->weight |= 0; } } - buf += pg_mblen(buf); + buf += len; } } diff --git a/src/backend/utils/adt/tsvector_parser.c b/src/backend/utils/adt/tsvector_parser.c index e1620d3ed1f..f3900ee7735 100644 --- a/src/backend/utils/adt/tsvector_parser.c +++ b/src/backend/utils/adt/tsvector_parser.c @@ -208,8 +208,7 @@ gettoken_tsvector(TSVectorParseState state, PRSSYNTAXERROR; else if (!isspace((unsigned char) *state->prsbuf)) { - COPYCHAR(curpos, state->prsbuf); - curpos += pg_mblen(state->prsbuf); + curpos += ts_copychar_cstr(curpos, state->prsbuf); statecode = WAITENDWORD; } } @@ -223,8 +222,7 @@ gettoken_tsvector(TSVectorParseState state, else { RESIZEPRSBUF; - COPYCHAR(curpos, state->prsbuf); - curpos += pg_mblen(state->prsbuf); + curpos += ts_copychar_cstr(curpos, state->prsbuf); Assert(oldstate != 0); statecode = oldstate; } @@ -259,8 +257,7 @@ gettoken_tsvector(TSVectorParseState state, else { RESIZEPRSBUF; - COPYCHAR(curpos, state->prsbuf); - curpos += pg_mblen(state->prsbuf); + curpos += ts_copychar_cstr(curpos, state->prsbuf); } } else if (statecode == WAITENDCMPLX) @@ -279,8 +276,7 @@ gettoken_tsvector(TSVectorParseState state, else { RESIZEPRSBUF; - COPYCHAR(curpos, state->prsbuf); - curpos += pg_mblen(state->prsbuf); + curpos += ts_copychar_cstr(curpos, state->prsbuf); } } else if (statecode == WAITCHARCMPLX) @@ -288,8 +284,7 @@ gettoken_tsvector(TSVectorParseState state, if (!state->is_web && t_iseq(state->prsbuf, '\'')) { RESIZEPRSBUF; - COPYCHAR(curpos, state->prsbuf); - curpos += pg_mblen(state->prsbuf); + curpos += ts_copychar_cstr(curpos, state->prsbuf); statecode = WAITENDCMPLX; } else @@ -300,7 +295,7 @@ gettoken_tsvector(TSVectorParseState state, PRSSYNTAXERROR; if (state->oprisdelim) { - /* state->prsbuf+=pg_mblen(state->prsbuf); */ + /* state->prsbuf+=pg_mblen_cstr(state->prsbuf); */ RETURN_TOKEN; } else @@ -383,6 +378,6 @@ gettoken_tsvector(TSVectorParseState state, statecode); /* get next char */ - state->prsbuf += pg_mblen(state->prsbuf); + state->prsbuf += pg_mblen_cstr(state->prsbuf); } } diff --git a/src/backend/utils/adt/varbit.c b/src/backend/utils/adt/varbit.c index 205a67dafc5..97424439006 100644 --- a/src/backend/utils/adt/varbit.c +++ b/src/backend/utils/adt/varbit.c @@ -232,7 +232,7 @@ bit_in(PG_FUNCTION_ARGS) ereturn(escontext, (Datum) 0, (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("\"%.*s\" is not a valid binary digit", - pg_mblen(sp), sp))); + pg_mblen_cstr(sp), sp))); x >>= 1; if (x == 0) @@ -257,7 +257,7 @@ bit_in(PG_FUNCTION_ARGS) ereturn(escontext, (Datum) 0, (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("\"%.*s\" is not a valid hexadecimal digit", - pg_mblen(sp), sp))); + pg_mblen_cstr(sp), sp))); if (bc) { @@ -533,7 +533,7 @@ varbit_in(PG_FUNCTION_ARGS) ereturn(escontext, (Datum) 0, (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("\"%.*s\" is not a valid binary digit", - pg_mblen(sp), sp))); + pg_mblen_cstr(sp), sp))); x >>= 1; if (x == 0) @@ -558,7 +558,7 @@ varbit_in(PG_FUNCTION_ARGS) ereturn(escontext, (Datum) 0, (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("\"%.*s\" is not a valid hexadecimal digit", - pg_mblen(sp), sp))); + pg_mblen_cstr(sp), sp))); if (bc) { diff --git a/src/backend/utils/adt/varlena.c b/src/backend/utils/adt/varlena.c index 3e4d5568bde..aedc4c133d2 100644 --- a/src/backend/utils/adt/varlena.c +++ b/src/backend/utils/adt/varlena.c @@ -807,8 +807,11 @@ text_catenate(text *t1, text *t2) * charlen_to_bytelen() * Compute the number of bytes occupied by n characters starting at *p * - * It is caller's responsibility that there actually are n characters; - * the string need not be null-terminated. + * The caller shall ensure there are n complete characters. Callers achieve + * this by deriving "n" from regmatch_t findings from searching a wchar array. + * pg_mb2wchar_with_len() skips any trailing incomplete character, so regex + * matches will end no later than the last complete character. (The string + * need not be null-terminated.) */ static int charlen_to_bytelen(const char *p, int n) @@ -823,7 +826,7 @@ charlen_to_bytelen(const char *p, int n) const char *s; for (s = p; n > 0; n--) - s += pg_mblen(s); + s += pg_mblen_unbounded(s); /* caller verified encoding */ return s - p; } @@ -957,6 +960,7 @@ text_substring(Datum str, int32 start, int32 length, bool length_not_specified) int32 slice_start; int32 slice_size; int32 slice_strlen; + int32 slice_len; text *slice; int32 E1; int32 i; @@ -1026,7 +1030,8 @@ text_substring(Datum str, int32 start, int32 length, bool length_not_specified) slice = (text *) DatumGetPointer(str); /* see if we got back an empty string */ - if (VARSIZE_ANY_EXHDR(slice) == 0) + slice_len = VARSIZE_ANY_EXHDR(slice); + if (slice_len == 0) { if (slice != (text *) DatumGetPointer(str)) pfree(slice); @@ -1035,7 +1040,7 @@ text_substring(Datum str, int32 start, int32 length, bool length_not_specified) /* Now we can get the actual length of the slice in MB characters */ slice_strlen = pg_mbstrlen_with_len(VARDATA_ANY(slice), - VARSIZE_ANY_EXHDR(slice)); + slice_len); /* * Check that the start position wasn't > slice_strlen. If so, SQL99 @@ -1062,7 +1067,7 @@ text_substring(Datum str, int32 start, int32 length, bool length_not_specified) */ p = VARDATA_ANY(slice); for (i = 0; i < S1 - 1; i++) - p += pg_mblen(p); + p += pg_mblen_unbounded(p); /* hang onto a pointer to our start position */ s = p; @@ -1072,7 +1077,7 @@ text_substring(Datum str, int32 start, int32 length, bool length_not_specified) * length. */ for (i = S1; i < E1; i++) - p += pg_mblen(p); + p += pg_mblen_unbounded(p); ret = (text *) palloc(VARHDRSZ + (p - s)); SET_VARSIZE(ret, VARHDRSZ + (p - s)); @@ -1377,6 +1382,8 @@ text_position_next(TextPositionState *state) */ if (state->is_multibyte_char_in_char && state->locale->deterministic) { + const char *haystack_end = state->str1 + state->len1; + /* Walk one character at a time, until we reach the match. */ /* the search should never move backwards. */ @@ -1385,7 +1392,7 @@ text_position_next(TextPositionState *state) while (state->refpoint < matchptr) { /* step to next character. */ - state->refpoint += pg_mblen(state->refpoint); + state->refpoint += pg_mblen_range(state->refpoint, haystack_end); state->refpos++; /* @@ -1424,6 +1431,7 @@ text_position_next_internal(char *start_ptr, TextPositionState *state) const char *hptr; Assert(start_ptr >= haystack && start_ptr <= haystack_end); + Assert(needle_len > 0); state->last_match_len_tmp = needle_len; @@ -1436,19 +1444,26 @@ text_position_next_internal(char *start_ptr, TextPositionState *state) * needle under the given collation. * * Note, the found substring could have a different length than the - * needle, including being empty. Callers that want to skip over the - * found string need to read the length of the found substring from - * last_match_len rather than just using the length of their needle. + * needle. Callers that want to skip over the found string need to + * read the length of the found substring from last_match_len rather + * than just using the length of their needle. * * Most callers will require "greedy" semantics, meaning that we need * to find the longest such substring, not the shortest. For callers * that don't need greedy semantics, we can finish on the first match. + * + * This loop depends on the assumption that the needle is nonempty and + * any matching substring must also be nonempty. (Even if the + * collation would accept an empty match, returning one would send + * callers that search for successive matches into an infinite loop.) */ const char *result_hptr = NULL; hptr = start_ptr; while (hptr < haystack_end) { + const char *test_end; + /* * First check the common case that there is a match in the * haystack of exactly the length of the needle. @@ -1459,11 +1474,13 @@ text_position_next_internal(char *start_ptr, TextPositionState *state) return (char *) hptr; /* - * Else check if any of the possible substrings starting at hptr - * are equal to the needle. + * Else check if any of the non-empty substrings starting at hptr + * compare equal to the needle. */ - for (const char *test_end = hptr; test_end < haystack_end; test_end += pg_mblen(test_end)) + test_end = hptr; + do { + test_end += pg_mblen_range(test_end, haystack_end); if (pg_strncoll(hptr, (test_end - hptr), needle, needle_len, state->locale) == 0) { state->last_match_len_tmp = (test_end - hptr); @@ -1471,11 +1488,12 @@ text_position_next_internal(char *start_ptr, TextPositionState *state) if (!state->greedy) break; } - } + } while (test_end < haystack_end); + if (result_hptr) break; - hptr += pg_mblen(hptr); + hptr += pg_mblen_range(hptr, haystack_end); } return (char *) result_hptr; @@ -4887,6 +4905,8 @@ split_text(FunctionCallInfo fcinfo, SplitTextOutputData *tstate) } else { + const char *end_ptr; + /* * When fldsep is NULL, each character in the input string becomes a * separate element in the result set. The separator is effectively @@ -4895,10 +4915,11 @@ split_text(FunctionCallInfo fcinfo, SplitTextOutputData *tstate) inputstring_len = VARSIZE_ANY_EXHDR(inputstring); start_ptr = VARDATA_ANY(inputstring); + end_ptr = start_ptr + inputstring_len; while (inputstring_len > 0) { - int chunk_len = pg_mblen(start_ptr); + int chunk_len = pg_mblen_range(start_ptr, end_ptr); CHECK_FOR_INTERRUPTS(); @@ -5802,7 +5823,7 @@ text_reverse(PG_FUNCTION_ARGS) { int sz; - sz = pg_mblen(p); + sz = pg_mblen_range(p, endp); dst -= sz; memcpy(dst, p, sz); p += sz; @@ -5963,7 +5984,7 @@ text_format(PG_FUNCTION_ARGS) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("unrecognized format() type specifier \"%.*s\"", - pg_mblen(cp), cp), + pg_mblen_range(cp, end_ptr), cp), errhint("For a single \"%%\" use \"%%%%\"."))); /* If indirect width was specified, get its value */ @@ -6084,7 +6105,7 @@ text_format(PG_FUNCTION_ARGS) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("unrecognized format() type specifier \"%.*s\"", - pg_mblen(cp), cp), + pg_mblen_range(cp, end_ptr), cp), errhint("For a single \"%%\" use \"%%%%\"."))); break; } diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c index cf793b6fc66..66803e7058d 100644 --- a/src/backend/utils/adt/xml.c +++ b/src/backend/utils/adt/xml.c @@ -2338,8 +2338,7 @@ sqlchar_to_unicode(const char *s) char *utf8string; pg_wchar ret[2]; /* need space for trailing zero */ - /* note we're not assuming s is null-terminated */ - utf8string = pg_server_to_any(s, pg_mblen(s), PG_UTF8); + utf8string = pg_server_to_any(s, pg_mblen_cstr(s), PG_UTF8); pg_encoding_mb2wchar_with_len(PG_UTF8, utf8string, ret, pg_encoding_mblen(PG_UTF8, utf8string)); @@ -2392,7 +2391,7 @@ map_sql_identifier_to_xml_name(const char *ident, bool fully_escaped, initStringInfo(&buf); - for (p = ident; *p; p += pg_mblen(p)) + for (p = ident; *p; p += pg_mblen_cstr(p)) { if (*p == ':' && (p == ident || fully_escaped)) appendStringInfoString(&buf, "_x003A_"); @@ -2417,7 +2416,7 @@ map_sql_identifier_to_xml_name(const char *ident, bool fully_escaped, : !is_valid_xml_namechar(u)) appendStringInfo(&buf, "_x%04X_", (unsigned int) u); else - appendBinaryStringInfo(&buf, p, pg_mblen(p)); + appendBinaryStringInfo(&buf, p, pg_mblen_cstr(p)); } } @@ -2440,7 +2439,7 @@ map_xml_name_to_sql_identifier(const char *name) initStringInfo(&buf); - for (p = name; *p; p += pg_mblen(p)) + for (p = name; *p; p += pg_mblen_cstr(p)) { if (*p == '_' && *(p + 1) == 'x' && isxdigit((unsigned char) *(p + 2)) @@ -2458,7 +2457,7 @@ map_xml_name_to_sql_identifier(const char *name) p += 6; } else - appendBinaryStringInfo(&buf, p, pg_mblen(p)); + appendBinaryStringInfo(&buf, p, pg_mblen_cstr(p)); } return buf.data; diff --git a/src/backend/utils/cache/catcache.c b/src/backend/utils/cache/catcache.c index 657648996c2..9138b1ec0e5 100644 --- a/src/backend/utils/cache/catcache.c +++ b/src/backend/utils/cache/catcache.c @@ -1661,7 +1661,7 @@ ReleaseCatCacheWithOwner(HeapTuple tuple, ResourceOwner resowner) ct->refcount--; if (resowner) - ResourceOwnerForgetCatCacheRef(CurrentResourceOwner, &ct->tuple); + ResourceOwnerForgetCatCacheRef(resowner, &ct->tuple); if ( #ifndef CATCACHE_FORCE_RELEASE @@ -2103,7 +2103,7 @@ ReleaseCatCacheListWithOwner(CatCList *list, ResourceOwner resowner) Assert(list->refcount > 0); list->refcount--; if (resowner) - ResourceOwnerForgetCatCacheListRef(CurrentResourceOwner, list); + ResourceOwnerForgetCatCacheListRef(resowner, list); if ( #ifndef CATCACHE_FORCE_RELEASE diff --git a/src/backend/utils/cache/inval.c b/src/backend/utils/cache/inval.c index 02505c88b8e..30048e153e5 100644 --- a/src/backend/utils/cache/inval.c +++ b/src/backend/utils/cache/inval.c @@ -1583,13 +1583,17 @@ CacheInvalidateHeapTuple(Relation relation, * implied. * * Like CacheInvalidateHeapTuple(), but for inplace updates. + * + * Just before and just after the inplace update, the tuple's cache keys must + * match those in key_equivalent_tuple. Cache keys consist of catcache lookup + * key columns and columns referencing pg_class.oid values, + * e.g. pg_constraint.conrelid, which would trigger relcache inval. */ void CacheInvalidateHeapTupleInplace(Relation relation, - HeapTuple tuple, - HeapTuple newtuple) + HeapTuple key_equivalent_tuple) { - CacheInvalidateHeapTupleCommon(relation, tuple, newtuple, + CacheInvalidateHeapTupleCommon(relation, key_equivalent_tuple, NULL, PrepareInplaceInvalidationState); } diff --git a/src/backend/utils/mb/mbutils.c b/src/backend/utils/mb/mbutils.c index 886ecbad871..be76dd493bc 100644 --- a/src/backend/utils/mb/mbutils.c +++ b/src/backend/utils/mb/mbutils.c @@ -38,6 +38,7 @@ #include "catalog/namespace.h" #include "mb/pg_wchar.h" #include "utils/fmgrprotos.h" +#include "utils/memdebug.h" #include "utils/memutils.h" #include "utils/relcache.h" #include "varatt.h" @@ -97,6 +98,13 @@ static char *perform_default_encoding_conversion(const char *src, int len, bool is_client_to_server); static int cliplen(const char *str, int len, int limit); +pg_noreturn +static void report_invalid_encoding_int(int encoding, const char *mbstr, + int mblen, int len); + +pg_noreturn +static void report_invalid_encoding_db(const char *mbstr, int mblen, int len); + /* * Prepare for a future call to SetClientEncoding. Success should mean @@ -1019,11 +1027,126 @@ pg_encoding_wchar2mb_with_len(int encoding, return pg_wchar_table[encoding].wchar2mb_with_len(from, (unsigned char *) to, len); } -/* returns the byte length of a multibyte character */ +/* + * Returns the byte length of a multibyte character sequence in a + * null-terminated string. Raises an illegal byte sequence error if the + * sequence would hit a null terminator. + * + * The caller is expected to have checked for a terminator at *mbstr == 0 + * before calling, but some callers want 1 in that case, so this function + * continues that tradition. + * + * This must only be used for strings that have a null-terminator to enable + * bounds detection. + */ +int +pg_mblen_cstr(const char *mbstr) +{ + int length = pg_wchar_table[DatabaseEncoding->encoding].mblen((const unsigned char *) mbstr); + + /* + * The .mblen functions return 1 when given a pointer to a terminator. + * Some callers depend on that, so we tolerate it for now. Well-behaved + * callers check the leading byte for a terminator *before* calling. + */ + for (int i = 1; i < length; ++i) + if (unlikely(mbstr[i] == 0)) + report_invalid_encoding_db(mbstr, length, i); + + /* + * String should be NUL-terminated, but checking that would make typical + * callers O(N^2), tripling Valgrind check-world time. Unless + * VALGRIND_EXPENSIVE, check 1 byte after each actual character. (If we + * found a character, not a terminator, the next byte must be a terminator + * or the start of the next character.) If the caller iterates the whole + * string, the last call will diagnose a missing terminator. + */ + if (mbstr[0] != '\0') + { +#ifdef VALGRIND_EXPENSIVE + VALGRIND_CHECK_MEM_IS_DEFINED(mbstr, strlen(mbstr)); +#else + VALGRIND_CHECK_MEM_IS_DEFINED(mbstr + length, 1); +#endif + } + + return length; +} + +/* + * Returns the byte length of a multibyte character sequence bounded by a range + * [mbstr, end) of at least one byte in size. Raises an illegal byte sequence + * error if the sequence would exceed the range. + */ +int +pg_mblen_range(const char *mbstr, const char *end) +{ + int length = pg_wchar_table[DatabaseEncoding->encoding].mblen((const unsigned char *) mbstr); + + Assert(end > mbstr); +#ifdef VALGRIND_EXPENSIVE + VALGRIND_CHECK_MEM_IS_DEFINED(mbstr, end - mbstr); +#else + VALGRIND_CHECK_MEM_IS_DEFINED(mbstr, length); +#endif + + if (unlikely(mbstr + length > end)) + report_invalid_encoding_db(mbstr, length, end - mbstr); + + return length; +} + +/* + * Returns the byte length of a multibyte character sequence bounded by a range + * extending for 'limit' bytes, which must be at least one. Raises an illegal + * byte sequence error if the sequence would exceed the range. + */ +int +pg_mblen_with_len(const char *mbstr, int limit) +{ + int length = pg_wchar_table[DatabaseEncoding->encoding].mblen((const unsigned char *) mbstr); + + Assert(limit >= 1); +#ifdef VALGRIND_EXPENSIVE + VALGRIND_CHECK_MEM_IS_DEFINED(mbstr, limit); +#else + VALGRIND_CHECK_MEM_IS_DEFINED(mbstr, length); +#endif + + if (unlikely(length > limit)) + report_invalid_encoding_db(mbstr, length, limit); + + return length; +} + + +/* + * Returns the length of a multibyte character sequence, without any + * validation of bounds. + * + * PLEASE NOTE: This function can only be used safely if the caller has + * already verified the input string, since otherwise there is a risk of + * overrunning the buffer if the string is invalid. A prior call to a + * pg_mbstrlen* function suffices. + */ +int +pg_mblen_unbounded(const char *mbstr) +{ + int length = pg_wchar_table[DatabaseEncoding->encoding].mblen((const unsigned char *) mbstr); + + VALGRIND_CHECK_MEM_IS_DEFINED(mbstr, length); + + return length; +} + +/* + * Historical name for pg_mblen_unbounded(). Should not be used and will be + * removed in a later version. + */ int pg_mblen(const char *mbstr) { - return pg_wchar_table[DatabaseEncoding->encoding].mblen((const unsigned char *) mbstr); + return pg_mblen_unbounded(mbstr); } /* returns the display length of a multibyte character */ @@ -1045,14 +1168,14 @@ pg_mbstrlen(const char *mbstr) while (*mbstr) { - mbstr += pg_mblen(mbstr); + mbstr += pg_mblen_cstr(mbstr); len++; } return len; } /* returns the length (counted in wchars) of a multibyte string - * (not necessarily NULL terminated) + * (stops at the first of "limit" or a NUL) */ int pg_mbstrlen_with_len(const char *mbstr, int limit) @@ -1065,7 +1188,7 @@ pg_mbstrlen_with_len(const char *mbstr, int limit) while (limit > 0 && *mbstr) { - int l = pg_mblen(mbstr); + int l = pg_mblen_with_len(mbstr, limit); limit -= l; mbstr += l; @@ -1135,7 +1258,7 @@ pg_mbcharcliplen(const char *mbstr, int len, int limit) while (len > 0 && *mbstr) { - l = pg_mblen(mbstr); + l = pg_mblen_with_len(mbstr, len); nch++; if (nch > limit) break; @@ -1699,12 +1822,19 @@ void report_invalid_encoding(int encoding, const char *mbstr, int len) { int l = pg_encoding_mblen_or_incomplete(encoding, mbstr, len); + + report_invalid_encoding_int(encoding, mbstr, l, len); +} + +static void +report_invalid_encoding_int(int encoding, const char *mbstr, int mblen, int len) +{ char buf[8 * 5 + 1]; char *p = buf; int j, jlimit; - jlimit = Min(l, len); + jlimit = Min(mblen, len); jlimit = Min(jlimit, 8); /* prevent buffer overrun */ for (j = 0; j < jlimit; j++) @@ -1721,6 +1851,12 @@ report_invalid_encoding(int encoding, const char *mbstr, int len) buf))); } +static void +report_invalid_encoding_db(const char *mbstr, int mblen, int len) +{ + report_invalid_encoding_int(GetDatabaseEncoding(), mbstr, mblen, len); +} + /* * report_untranslatable_char: complain about untranslatable character * diff --git a/src/backend/utils/misc/guc_tables.c b/src/backend/utils/misc/guc_tables.c index 7f3ca3a3ccc..35b6696e26b 100644 --- a/src/backend/utils/misc/guc_tables.c +++ b/src/backend/utils/misc/guc_tables.c @@ -82,6 +82,7 @@ #include "storage/bufmgr.h" #include "storage/bufpage.h" #include "storage/copydir.h" +#include "storage/fd.h" #include "storage/io_worker.h" #include "storage/large_object.h" #include "storage/pg_shmem.h" @@ -493,6 +494,14 @@ static const struct config_enum_entry file_copy_method_options[] = { {NULL, 0, false} }; +static const struct config_enum_entry file_extend_method_options[] = { +#ifdef HAVE_POSIX_FALLOCATE + {"posix_fallocate", FILE_EXTEND_METHOD_POSIX_FALLOCATE, false}, +#endif + {"write_zeros", FILE_EXTEND_METHOD_WRITE_ZEROS, false}, + {NULL, 0, false} +}; + /* * Options for enum values stored in other modules */ @@ -5331,6 +5340,16 @@ struct config_enum ConfigureNamesEnum[] = NULL, NULL, NULL }, + { + {"file_extend_method", PGC_SIGHUP, RESOURCES_DISK, + gettext_noop("Selects the method used for extending data files."), + NULL + }, + &file_extend_method, + DEFAULT_FILE_EXTEND_METHOD, file_extend_method_options, + NULL, NULL, NULL + }, + { {"wal_sync_method", PGC_SIGHUP, WAL_SETTINGS, gettext_noop("Selects the method used for forcing WAL updates to disk."), diff --git a/src/backend/utils/misc/injection_point.c b/src/backend/utils/misc/injection_point.c index f58ebc8ee52..f795fc2563f 100644 --- a/src/backend/utils/misc/injection_point.c +++ b/src/backend/utils/misc/injection_point.c @@ -283,16 +283,16 @@ InjectionPointAttach(const char *name, int free_idx; if (strlen(name) >= INJ_NAME_MAXLEN) - elog(ERROR, "injection point name %s too long (maximum of %u)", - name, INJ_NAME_MAXLEN); + elog(ERROR, "injection point name %s too long (maximum of %u characters)", + name, INJ_NAME_MAXLEN - 1); if (strlen(library) >= INJ_LIB_MAXLEN) - elog(ERROR, "injection point library %s too long (maximum of %u)", - library, INJ_LIB_MAXLEN); + elog(ERROR, "injection point library %s too long (maximum of %u characters)", + library, INJ_LIB_MAXLEN - 1); if (strlen(function) >= INJ_FUNC_MAXLEN) - elog(ERROR, "injection point function %s too long (maximum of %u)", - function, INJ_FUNC_MAXLEN); - if (private_data_size >= INJ_PRIVATE_MAXLEN) - elog(ERROR, "injection point data too long (maximum of %u)", + elog(ERROR, "injection point function %s too long (maximum of %u characters)", + function, INJ_FUNC_MAXLEN - 1); + if (private_data_size > INJ_PRIVATE_MAXLEN) + elog(ERROR, "injection point data too long (maximum of %u bytes)", INJ_PRIVATE_MAXLEN); /* diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample index a9d8293474a..d91133dbd73 100644 --- a/src/backend/utils/misc/postgresql.conf.sample +++ b/src/backend/utils/misc/postgresql.conf.sample @@ -94,9 +94,9 @@ # - Authentication - #authentication_timeout = 1min # 1s-600s -#password_encryption = scram-sha-256 # scram-sha-256 or md5 +#password_encryption = scram-sha-256 # scram-sha-256 or (deprecated) md5 #scram_iterations = 4096 -#md5_password_warnings = on +#md5_password_warnings = on # display md5 deprecation warnings? #oauth_validator_libraries = '' # comma-separated list of trusted validator modules # GSSAPI using Kerberos @@ -179,6 +179,10 @@ # in kilobytes, or -1 for no limit #file_copy_method = copy # copy, clone (if supported by OS) +#file_extend_method = posix_fallocate # the default is the first option supported + # by the operating system: + # posix_fallocate (most Unix-like systems) + # write_zeros #max_notify_queue_pages = 1048576 # limits the number of SLRU pages allocated # for NOTIFY / LISTEN queue @@ -256,7 +260,7 @@ #wal_skip_threshold = 2MB #commit_delay = 0 # range 0-100000, in microseconds -#commit_siblings = 5 # range 1-1000 +#commit_siblings = 5 # range 0-1000 # - Checkpoints - @@ -680,7 +684,7 @@ #autovacuum = on # Enable autovacuum subprocess? 'on' # requires track_counts to also be on. -autovacuum_worker_slots = 16 # autovacuum worker slots to allocate +#autovacuum_worker_slots = 16 # autovacuum worker slots to allocate # (change requires restart) #autovacuum_max_workers = 3 # max number of autovacuum subprocesses #autovacuum_naptime = 1min # time between autovacuum runs diff --git a/src/backend/utils/misc/ps_status.c b/src/backend/utils/misc/ps_status.c index e08b26e8c14..f40b16cb918 100644 --- a/src/backend/utils/misc/ps_status.c +++ b/src/backend/utils/misc/ps_status.c @@ -52,7 +52,7 @@ bool update_process_title = DEFAULT_UPDATE_PROCESS_TITLE; #define PS_USE_SETPROCTITLE_FAST #elif defined(HAVE_SETPROCTITLE) #define PS_USE_SETPROCTITLE -#elif defined(__linux__) || defined(__sun) || defined(__darwin__) +#elif defined(__linux__) || defined(__sun) || defined(__darwin__) || defined(__GNU__) #define PS_USE_CLOBBER_ARGV #elif defined(WIN32) #define PS_USE_WIN32 @@ -62,7 +62,7 @@ bool update_process_title = DEFAULT_UPDATE_PROCESS_TITLE; /* Different systems want the buffer padded differently */ -#if defined(__linux__) || defined(__darwin__) +#if defined(__linux__) || defined(__darwin__) || defined(__GNU__) #define PS_PADDING '\0' #else #define PS_PADDING ' ' diff --git a/src/backend/utils/mmgr/mcxt.c b/src/backend/utils/mmgr/mcxt.c index 15fa4d0a55e..f7689ea6de8 100644 --- a/src/backend/utils/mmgr/mcxt.c +++ b/src/backend/utils/mmgr/mcxt.c @@ -157,6 +157,9 @@ MemoryContext CurTransactionContext = NULL; /* This is a transient link to the active portal's memory context: */ MemoryContext PortalContext = NULL; +/* Is memory context logging currently in progress? */ +static bool LogMemoryContextInProgress = false; + static void MemoryContextDeleteOnly(MemoryContext context); static void MemoryContextCallResetCallbacks(MemoryContext context); static void MemoryContextStatsInternal(MemoryContext context, int level, @@ -1295,26 +1298,45 @@ ProcessLogMemoryContextInterrupt(void) LogMemoryContextPending = false; /* - * Use LOG_SERVER_ONLY to prevent this message from being sent to the - * connected client. + * Exit immediately if memory context logging is already in progress. This + * prevents recursive calls, which could occur if logging is requested + * repeatedly and rapidly, potentially leading to infinite recursion and a + * crash. */ - ereport(LOG_SERVER_ONLY, - (errhidestmt(true), - errhidecontext(true), - errmsg("logging memory contexts of PID %d", MyProcPid))); + if (LogMemoryContextInProgress) + return; + LogMemoryContextInProgress = true; - /* - * When a backend process is consuming huge memory, logging all its memory - * contexts might overrun available disk space. To prevent this, we limit - * the depth of the hierarchy, as well as the number of child contexts to - * log per parent to 100. - * - * As with MemoryContextStats(), we suppose that practical cases where the - * dump gets long will typically be huge numbers of siblings under the - * same parent context; while the additional debugging value from seeing - * details about individual siblings beyond 100 will not be large. - */ - MemoryContextStatsDetail(TopMemoryContext, 100, 100, false); + PG_TRY(); + { + /* + * Use LOG_SERVER_ONLY to prevent this message from being sent to the + * connected client. + */ + ereport(LOG_SERVER_ONLY, + (errhidestmt(true), + errhidecontext(true), + errmsg("logging memory contexts of PID %d", MyProcPid))); + + /* + * When a backend process is consuming huge memory, logging all its + * memory contexts might overrun available disk space. To prevent + * this, we limit the depth of the hierarchy, as well as the number of + * child contexts to log per parent to 100. + * + * As with MemoryContextStats(), we suppose that practical cases where + * the dump gets long will typically be huge numbers of siblings under + * the same parent context; while the additional debugging value from + * seeing details about individual siblings beyond 100 will not be + * large. + */ + MemoryContextStatsDetail(TopMemoryContext, 100, 100, false); + } + PG_FINALLY(); + { + LogMemoryContextInProgress = false; + } + PG_END_TRY(); } void * diff --git a/src/backend/utils/sort/sharedtuplestore.c b/src/backend/utils/sort/sharedtuplestore.c index 2f031c32909..7a556986068 100644 --- a/src/backend/utils/sort/sharedtuplestore.c +++ b/src/backend/utils/sort/sharedtuplestore.c @@ -324,7 +324,8 @@ sts_puttuple(SharedTuplestoreAccessor *accessor, void *meta_data, /* Do we have space? */ size = accessor->sts->meta_data_size + tuple->t_len; - if (accessor->write_pointer + size > accessor->write_end) + if (accessor->write_pointer == NULL || + accessor->write_pointer + size > accessor->write_end) { if (accessor->write_chunk == NULL) { diff --git a/src/backend/utils/sort/tuplesortvariants.c b/src/backend/utils/sort/tuplesortvariants.c index 5f70e8dddac..82a712dc84b 100644 --- a/src/backend/utils/sort/tuplesortvariants.c +++ b/src/backend/utils/sort/tuplesortvariants.c @@ -20,6 +20,7 @@ #include "postgres.h" #include "access/brin_tuple.h" +#include "access/gin.h" #include "access/gin_tuple.h" #include "access/hash.h" #include "access/htup_details.h" @@ -28,6 +29,7 @@ #include "catalog/pg_collation.h" #include "executor/executor.h" #include "pg_trace.h" +#include "utils/builtins.h" #include "utils/datum.h" #include "utils/guc.h" #include "utils/lsyscache.h" @@ -614,7 +616,7 @@ tuplesort_begin_index_gin(Relation heapRel, { SortSupport sortKey = base->sortKeys + i; Form_pg_attribute att = TupleDescAttr(desc, i); - TypeCacheEntry *typentry; + Oid cmpFunc; sortKey->ssup_cxt = CurrentMemoryContext; sortKey->ssup_collation = indexRel->rd_indcollation[i]; @@ -628,11 +630,26 @@ tuplesort_begin_index_gin(Relation heapRel, sortKey->ssup_collation = DEFAULT_COLLATION_OID; /* - * Look for a ordering for the index key data type, and then the sort - * support function. + * If the compare proc isn't specified in the opclass definition, look + * up the index key type's default btree comparator. */ - typentry = lookup_type_cache(att->atttypid, TYPECACHE_LT_OPR); - PrepareSortSupportFromOrderingOp(typentry->lt_opr, sortKey); + cmpFunc = index_getprocid(indexRel, i + 1, GIN_COMPARE_PROC); + if (cmpFunc == InvalidOid) + { + TypeCacheEntry *typentry; + + typentry = lookup_type_cache(att->atttypid, + TYPECACHE_CMP_PROC_FINFO); + if (!OidIsValid(typentry->cmp_proc_finfo.fn_oid)) + ereport(ERROR, + (errcode(ERRCODE_UNDEFINED_FUNCTION), + errmsg("could not identify a comparison function for type %s", + format_type_be(att->atttypid)))); + + cmpFunc = typentry->cmp_proc_finfo.fn_oid; + } + + PrepareSortSupportComparisonShim(cmpFunc, sortKey); } base->removeabbrev = removeabbrev_index_gin; diff --git a/src/bin/initdb/po/es.po b/src/bin/initdb/po/es.po index f5fd9007ce6..963ccbbc6f0 100644 --- a/src/bin/initdb/po/es.po +++ b/src/bin/initdb/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: initdb (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:20+0000\n" +"POT-Creation-Date: 2026-02-06 23:20+0000\n" "PO-Revision-Date: 2025-09-21 11:13+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/initdb/po/uk.po b/src/bin/initdb/po/uk.po index 699f6e96803..8bfaca39f33 100644 --- a/src/bin/initdb/po/uk.po +++ b/src/bin/initdb/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:21+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:21+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/initdb.pot\n" -"X-Crowdin-File-ID: 1034\n" +"X-Crowdin-File: /REL_18_STABLE/initdb.pot\n" +"X-Crowdin-File-ID: 1069\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -57,28 +57,28 @@ msgstr "неможливо знайти \"%s\" для виконання" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "не вдалося знайти абсолютний шлях \"%s\": %m" -#: ../../common/exec.c:382 initdb.c:695 +#: ../../common/exec.c:363 initdb.c:753 #, c-format msgid "could not execute command \"%s\": %m" msgstr "не вдалося виконати команду \"%s\": %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "не вдалося прочитати висновок команди \"%s\": %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "команда \"%s\" не повернула жодних даних" -#: ../../common/exec.c:424 +#: ../../common/exec.c:405 #, c-format msgid "%s() failed: %m" msgstr "%s() помилка: %m" -#: ../../common/exec.c:562 ../../common/exec.c:607 ../../common/exec.c:699 -#: initdb.c:353 +#: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 +#: initdb.c:375 initdb.c:411 #, c-format msgid "out of memory" msgstr "недостатньо пам'яті" @@ -94,46 +94,46 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:70 ../../common/file_utils.c:347 -#: ../../common/file_utils.c:406 ../../common/file_utils.c:480 +#: ../../common/file_utils.c:69 ../../common/file_utils.c:370 +#: ../../common/file_utils.c:428 ../../common/file_utils.c:502 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 #: ../../common/pgfnames.c:48 ../../common/rmtree.c:63 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #: ../../common/pgfnames.c:69 ../../common/rmtree.c:106 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:418 ../../common/file_utils.c:488 +#: ../../common/file_utils.c:440 ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -242,12 +242,12 @@ msgstr "%s має бути в діапазоні %d..%d" msgid "unrecognized sync method: %s" msgstr "нерозпізнаний метод синхронізації: %s" -#: ../../fe_utils/string_utils.c:434 +#: ../../fe_utils/string_utils.c:587 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"\n" msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" -#: ../../fe_utils/string_utils.c:607 +#: ../../fe_utils/string_utils.c:760 #, c-format msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" @@ -262,347 +262,362 @@ msgstr "не вдалося встановити сполучення для \"% msgid "could not get junction for \"%s\": %s\n" msgstr "не вдалося встановити сполучення для \"%s\": %s\n" -#: initdb.c:627 initdb.c:1619 +#: initdb.c:372 +#, c-format +msgid "_wsetlocale() failed" +msgstr "_wsetlocale() завершився невдало" + +#: initdb.c:379 +#, c-format +msgid "setlocale() failed" +msgstr "setlocale() завершився невдало" + +#: initdb.c:393 +#, c-format +msgid "failed to restore old locale" +msgstr "не вдалося відновити старі локалі" + +#: initdb.c:396 +#, c-format +msgid "failed to restore old locale \"%s\"" +msgstr "не вдалося відновити стару локаль \"%s\"" + +#: initdb.c:685 initdb.c:1692 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "не вдалося відкрити файл \"%s\" для читання: %m" -#: initdb.c:671 initdb.c:975 initdb.c:995 +#: initdb.c:729 initdb.c:1035 initdb.c:1055 #, c-format msgid "could not open file \"%s\" for writing: %m" msgstr "не вдалося відкрити файл \"%s\" для запису: %m" -#: initdb.c:675 initdb.c:978 initdb.c:997 +#: initdb.c:733 initdb.c:1038 initdb.c:1057 #, c-format msgid "could not write file \"%s\": %m" msgstr "не вдалося записати файл \"%s\": %m" -#: initdb.c:679 +#: initdb.c:737 #, c-format msgid "could not close file \"%s\": %m" msgstr "неможливо закрити файл \"%s\": %m" -#: initdb.c:713 +#: initdb.c:771 #, c-format msgid "removing data directory \"%s\"" msgstr "видалення даних з директорії \"%s\"" -#: initdb.c:715 +#: initdb.c:773 #, c-format msgid "failed to remove data directory" msgstr "не вдалося видалити дані директорії" -#: initdb.c:719 +#: initdb.c:777 #, c-format msgid "removing contents of data directory \"%s\"" msgstr "видалення даних з директорії \"%s\"" -#: initdb.c:722 +#: initdb.c:780 #, c-format msgid "failed to remove contents of data directory" msgstr "не вдалося видалити дані директорії" -#: initdb.c:727 +#: initdb.c:785 #, c-format msgid "removing WAL directory \"%s\"" msgstr "видалення WAL директорії \"%s\"" -#: initdb.c:729 +#: initdb.c:787 #, c-format msgid "failed to remove WAL directory" msgstr "не вдалося видалити директорію WAL" -#: initdb.c:733 +#: initdb.c:791 #, c-format msgid "removing contents of WAL directory \"%s\"" msgstr "видалення даних з директорії WAL \"%s\"" -#: initdb.c:735 +#: initdb.c:793 #, c-format msgid "failed to remove contents of WAL directory" msgstr "не вдалося видалити дані директорії WAL" -#: initdb.c:742 +#: initdb.c:800 #, c-format msgid "data directory \"%s\" not removed at user's request" msgstr "директорія даних \"%s\" не видалена за запитом користувача" -#: initdb.c:746 +#: initdb.c:804 #, c-format msgid "WAL directory \"%s\" not removed at user's request" msgstr "директорія WAL \"%s\" не видалена за запитом користувача" -#: initdb.c:764 +#: initdb.c:822 #, c-format msgid "cannot be run as root" msgstr "не може виконуватись як root" -#: initdb.c:765 +#: initdb.c:823 #, c-format msgid "Please log in (using, e.g., \"su\") as the (unprivileged) user that will own the server process." msgstr "Будь ласка, увійдіть (за допомогою, наприклад, \"su\") як (непривілейований) користувач, від імені якого буде запущено серверний процес." -#: initdb.c:797 +#: initdb.c:855 #, c-format msgid "\"%s\" is not a valid server encoding name" msgstr "\"%s\" невірне ім'я серверного кодування" -#: initdb.c:941 +#: initdb.c:1001 #, c-format msgid "file \"%s\" does not exist" msgstr "файл \"%s\" не існує" -#: initdb.c:942 initdb.c:947 initdb.c:954 +#: initdb.c:1002 initdb.c:1007 initdb.c:1014 #, c-format msgid "This might mean you have a corrupted installation or identified the wrong directory with the invocation option -L." msgstr "Це означає, що ваша інсталяція пошкоджена або в параметрі -L задана неправильна директорія." -#: initdb.c:946 +#: initdb.c:1006 #, c-format msgid "could not access file \"%s\": %m" msgstr "немає доступу до файлу \"%s\": %m" -#: initdb.c:953 +#: initdb.c:1013 #, c-format msgid "file \"%s\" is not a regular file" msgstr "файл \"%s\" не є звичайним файлом" -#: initdb.c:1086 +#: initdb.c:1157 #, c-format msgid "selecting dynamic shared memory implementation ... " msgstr "обирається реалізація динамічної спільної пам'яті ... " -#: initdb.c:1095 +#: initdb.c:1167 #, c-format msgid "selecting default \"max_connections\" ... " msgstr "обирається значення \"max_connections\" за замовчуванням... \n" " " -#: initdb.c:1115 +#: initdb.c:1188 #, c-format msgid "selecting default \"shared_buffers\" ... " msgstr "обирається значення \"shared_buffers\" за замовчуванням... " -#: initdb.c:1138 +#: initdb.c:1211 #, c-format msgid "selecting default time zone ... " msgstr "обирається часовий пояс за замовчуванням ... " -#: initdb.c:1217 +#: initdb.c:1291 msgid "creating configuration files ... " msgstr "створення конфігураційних файлів... " -#: initdb.c:1370 initdb.c:1384 initdb.c:1451 initdb.c:1462 +#: initdb.c:1443 initdb.c:1457 initdb.c:1524 initdb.c:1535 #, c-format msgid "could not change permissions of \"%s\": %m" msgstr "неможливо змінити дозволи \"%s\": %m" -#: initdb.c:1481 +#: initdb.c:1554 #, c-format msgid "running bootstrap script ... " msgstr "виконуємо сценарій ініціалізації ... " -#: initdb.c:1493 +#: initdb.c:1566 #, c-format msgid "input file \"%s\" does not belong to PostgreSQL %s" msgstr "вхідний файл \"%s\" не належить PostgreSQL %s" -#: initdb.c:1495 +#: initdb.c:1568 #, c-format msgid "Specify the correct path using the option -L." msgstr "Вкажіть правильний шлях за допомогою параметру -L." -#: initdb.c:1597 +#: initdb.c:1670 msgid "Enter new superuser password: " msgstr "Введіть новий пароль для superuser: " -#: initdb.c:1598 +#: initdb.c:1671 msgid "Enter it again: " msgstr "Введіть знову: " -#: initdb.c:1601 +#: initdb.c:1674 #, c-format msgid "Passwords didn't match.\n" msgstr "Паролі не співпадають.\n" -#: initdb.c:1625 +#: initdb.c:1698 #, c-format msgid "could not read password from file \"%s\": %m" msgstr "не вдалося прочитати пароль з файлу \"%s\": %m" -#: initdb.c:1628 +#: initdb.c:1701 #, c-format msgid "password file \"%s\" is empty" msgstr "файл з паролями \"%s\" є порожнім" -#: initdb.c:2040 +#: initdb.c:2113 #, c-format msgid "caught signal\n" msgstr "отримано сигнал\n" -#: initdb.c:2046 +#: initdb.c:2119 #, c-format msgid "could not write to child process: %s\n" msgstr "не вдалося написати у дочірній процес: %s\n" -#: initdb.c:2054 +#: initdb.c:2127 #, c-format msgid "ok\n" msgstr "ok\n" -#: initdb.c:2143 +#: initdb.c:2209 initdb.c:2255 #, c-format -msgid "setlocale() failed" -msgstr "setlocale() завершився невдало" - -#: initdb.c:2161 -#, c-format -msgid "failed to restore old locale \"%s\"" -msgstr "не вдалося відновити стару локаль \"%s\"" +msgid "locale name \"%s\" contains non-ASCII characters" +msgstr "назва локалі \"%s\" містить не-ASCII символи" -#: initdb.c:2169 +#: initdb.c:2235 #, c-format msgid "invalid locale name \"%s\"" msgstr "не допустиме ім'я локалі \"%s\"" -#: initdb.c:2170 +#: initdb.c:2236 #, c-format msgid "If the locale name is specific to ICU, use --icu-locale." msgstr "Якщо ім'я локалі характерне для ICU, використовуйте --icu-locale." -#: initdb.c:2183 +#: initdb.c:2249 #, c-format msgid "invalid locale settings; check LANG and LC_* environment variables" msgstr "неприпустимі параметри локалі; перевірте LANG та LC_* змінні середовища" -#: initdb.c:2209 initdb.c:2233 +#: initdb.c:2280 initdb.c:2304 #, c-format msgid "encoding mismatch" msgstr "невідповідність кодування" -#: initdb.c:2210 +#: initdb.c:2281 #, c-format msgid "The encoding you selected (%s) and the encoding that the selected locale uses (%s) do not match. This would lead to misbehavior in various character string processing functions." msgstr "Вибране вами кодування (%s) і кодування, яке використовує обрана локаль (%s) не збігаються. Це призведе до неправильної поведінки у різних функціях обробки символьних рядків." -#: initdb.c:2215 initdb.c:2236 +#: initdb.c:2286 initdb.c:2307 #, c-format msgid "Rerun %s and either do not specify an encoding explicitly, or choose a matching combination." msgstr "Перезапустіть %s і або не вказуйте кодування прямо або виберіть відповідну комбінацію." -#: initdb.c:2234 +#: initdb.c:2305 #, c-format msgid "The encoding you selected (%s) is not supported with the ICU provider." msgstr "Обране вами кодування (%s) не підтримується провайдером ICU." -#: initdb.c:2285 +#: initdb.c:2356 #, c-format msgid "could not convert locale name \"%s\" to language tag: %s" msgstr "не вдалося перетворити локальну назву \"%s\" на мітку мови: %s" -#: initdb.c:2291 initdb.c:2343 initdb.c:2435 +#: initdb.c:2362 initdb.c:2414 initdb.c:2508 #, c-format msgid "ICU is not supported in this build" msgstr "ICU не підтримується в цій збірці" -#: initdb.c:2314 +#: initdb.c:2385 #, c-format msgid "could not get language from locale \"%s\": %s" msgstr "не вдалося отримати мову з локалі \"%s\": %s" -#: initdb.c:2340 +#: initdb.c:2411 #, c-format msgid "locale \"%s\" has unknown language \"%s\"" msgstr "locale \"%s\" має невідому мову \"%s\"" -#: initdb.c:2401 +#: initdb.c:2472 #, c-format msgid "locale must be specified if provider is %s" msgstr "потрібно вказати локаль для провайдера %s" -#: initdb.c:2412 +#: initdb.c:2485 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "неприпустиме ім'я локалі \"%s\" для вбудованого провайдера" -#: initdb.c:2423 +#: initdb.c:2496 #, c-format msgid "Using language tag \"%s\" for ICU locale \"%s\".\n" msgstr "Використання мітки мови \"%s\" для локалі ICU \"%s\".\n" -#: initdb.c:2446 +#: initdb.c:2519 #, c-format msgid "%s initializes a PostgreSQL database cluster.\n\n" msgstr "%s ініціалізує кластер баз даних PostgreSQL.\n\n" -#: initdb.c:2447 +#: initdb.c:2520 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: initdb.c:2448 +#: initdb.c:2521 #, c-format msgid " %s [OPTION]... [DATADIR]\n" msgstr " %s [OPTION]... [DATADIR]\n" -#: initdb.c:2449 +#: initdb.c:2522 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: initdb.c:2450 +#: initdb.c:2523 #, c-format msgid " -A, --auth=METHOD default authentication method for local connections\n" msgstr " -A, -- auth=METHOD метод аутентифікації за замовчуванням для локальних підключень\n" -#: initdb.c:2451 +#: initdb.c:2524 #, c-format msgid " --auth-host=METHOD default authentication method for local TCP/IP connections\n" msgstr " --auth-host=METHOD метод аутентифікації за замовчуванням для локального TCP/IP підключення\n" -#: initdb.c:2452 +#: initdb.c:2525 #, c-format msgid " --auth-local=METHOD default authentication method for local-socket connections\n" msgstr " --auth-local=METHOD метод аутентифікації за замовчуванням для локального під'єднання через сокет\n" -#: initdb.c:2453 +#: initdb.c:2526 #, c-format msgid " [-D, --pgdata=]DATADIR location for this database cluster\n" msgstr " [-D - pgdata =] DATADIR розташування кластеру цієї бази даних\n" -#: initdb.c:2454 +#: initdb.c:2527 #, c-format msgid " -E, --encoding=ENCODING set default encoding for new databases\n" msgstr " -E, --encoding=ENCODING встановлення кодування за замовчуванням для нової бази даних\n" -#: initdb.c:2455 +#: initdb.c:2528 #, c-format msgid " -g, --allow-group-access allow group read/execute on data directory\n" msgstr " -g, --allow-group-access дозволити читати/виконувати у каталозі даних для групи\n" -#: initdb.c:2456 +#: initdb.c:2529 #, c-format msgid " --icu-locale=LOCALE set ICU locale ID for new databases\n" msgstr " --icu-locale=LOCALE встановлює ідентифікатор мови ICU для нових баз даних\n" -#: initdb.c:2457 +#: initdb.c:2530 #, c-format msgid " --icu-rules=RULES set additional ICU collation rules for new databases\n" msgstr " --icu-rules=RULES встановити додаткові правила сортування в ICU для нових баз даних\n" -#: initdb.c:2458 +#: initdb.c:2531 #, c-format msgid " -k, --data-checksums use data page checksums\n" msgstr " -k, --data-checksums використовувати контрольні суми сторінок\n" -#: initdb.c:2459 +#: initdb.c:2532 #, c-format msgid " --locale=LOCALE set default locale for new databases\n" msgstr " --locale=LOCALE встановлює локаль за замовчуванням для нових баз даних\n" -#: initdb.c:2460 +#: initdb.c:2533 #, c-format msgid " --lc-collate=, --lc-ctype=, --lc-messages=LOCALE\n" " --lc-monetary=, --lc-numeric=, --lc-time=LOCALE\n" @@ -613,132 +628,142 @@ msgstr " --lc-collate=, --lc-ctype=, --lc-messages=LOCALE\n" " встановлення локалі за замовчуванням для відповідної категорії в\n" " нових базах даних (замість значення з середовища)\n" -#: initdb.c:2464 +#: initdb.c:2537 #, c-format msgid " --no-locale equivalent to --locale=C\n" msgstr " --no-locale еквівалентно --locale=C\n" -#: initdb.c:2465 +#: initdb.c:2538 #, c-format msgid " --builtin-locale=LOCALE\n" " set builtin locale name for new databases\n" msgstr " --builtin-locale=LOCALE\n" " встановити ім'я вбудованої локалі для нових баз даних\n" -#: initdb.c:2467 +#: initdb.c:2540 #, c-format msgid " --locale-provider={builtin|libc|icu}\n" " set default locale provider for new databases\n" msgstr " --locale-provider={builtin|libc|icu}\n" " встановлює провайдер локалі за замовченням для нових баз даних\n" -#: initdb.c:2469 +#: initdb.c:2542 +#, c-format +msgid " --no-data-checksums do not use data page checksums\n" +msgstr " --no-data-checksums не використовувати контрольні суми сторінок\n" + +#: initdb.c:2543 #, c-format msgid " --pwfile=FILE read password for the new superuser from file\n" msgstr " --pwfile=FILE прочитати пароль для нового суперкористувача з файлу\n" -#: initdb.c:2470 +#: initdb.c:2544 #, c-format msgid " -T, --text-search-config=CFG\n" " default text search configuration\n" msgstr " -T, --text-search-config=CFG конфігурація текстового пошуку за замовчуванням\n" -#: initdb.c:2472 +#: initdb.c:2546 #, c-format msgid " -U, --username=NAME database superuser name\n" msgstr " -U, --username=NAME ім'я суперкористувача бази даних\n" -#: initdb.c:2473 +#: initdb.c:2547 #, c-format msgid " -W, --pwprompt prompt for a password for the new superuser\n" msgstr " -W, --pwprompt запитувати пароль нового суперкористувача\n" -#: initdb.c:2474 +#: initdb.c:2548 #, c-format msgid " -X, --waldir=WALDIR location for the write-ahead log directory\n" msgstr " -X, --waldir=WALDIR розташування журналу попереднього запису\n" -#: initdb.c:2475 +#: initdb.c:2549 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=SIZE розмір сегментів WAL у мегабайтах\n" -#: initdb.c:2476 +#: initdb.c:2550 #, c-format msgid "\n" "Less commonly used options:\n" msgstr "\n" "Рідковживані параметри:\n" -#: initdb.c:2477 +#: initdb.c:2551 #, c-format msgid " -c, --set NAME=VALUE override default setting for server parameter\n" msgstr " -c, --set NAME=VALUE перевизначити параметр за замовчуванням для параметра сервера\n" -#: initdb.c:2478 +#: initdb.c:2552 #, c-format msgid " -d, --debug generate lots of debugging output\n" msgstr " -d, --debug генерувати багато налагоджувальних повідомлень\n" -#: initdb.c:2479 +#: initdb.c:2553 #, c-format msgid " --discard-caches set debug_discard_caches=1\n" msgstr " --discard-caches встановити debug_discard_caches=1\n" -#: initdb.c:2480 +#: initdb.c:2554 #, c-format msgid " -L DIRECTORY where to find the input files\n" msgstr " -L DIRECTORY розташування вхідних файлів\n" -#: initdb.c:2481 +#: initdb.c:2555 #, c-format msgid " -n, --no-clean do not clean up after errors\n" msgstr " -n, --no-clean не очищувати після помилок\n" " \n" -#: initdb.c:2482 +#: initdb.c:2556 #, c-format msgid " -N, --no-sync do not wait for changes to be written safely to disk\n" msgstr " -N, --no-sync не чекати на безпечний запис змін на диск\n" -#: initdb.c:2483 +#: initdb.c:2557 +#, c-format +msgid " --no-sync-data-files do not sync files within database directories\n" +msgstr " --no-sync-data-files не синхронизувати файли в папках бази даних\n" + +#: initdb.c:2558 #, c-format msgid " --no-instructions do not print instructions for next steps\n" msgstr " --no-instructions не друкувати інструкції для наступних кроків\n" -#: initdb.c:2484 +#: initdb.c:2559 #, c-format msgid " -s, --show show internal settings, then exit\n" msgstr " -s, --show показати внутрішні налаштування і вийти\n" -#: initdb.c:2485 +#: initdb.c:2560 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METHOD встановити метод синхронізації файлів на диск\n" -#: initdb.c:2486 +#: initdb.c:2561 #, c-format msgid " -S, --sync-only only sync database files to disk, then exit\n" msgstr " -S, --sync-only лише синхронізувати файли бази даних на диск, потім вийти\n" -#: initdb.c:2487 +#: initdb.c:2562 #, c-format msgid "\n" "Other options:\n" msgstr "\n" "Інші параметри:\n" -#: initdb.c:2488 +#: initdb.c:2563 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: initdb.c:2489 +#: initdb.c:2564 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: initdb.c:2490 +#: initdb.c:2565 #, c-format msgid "\n" "If the data directory is not specified, the environment variable PGDATA\n" @@ -746,79 +771,79 @@ msgid "\n" msgstr "\n" "Якщо каталог даних не вказано, використовується змінна середовища PGDATA.\n" -#: initdb.c:2492 +#: initdb.c:2567 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: initdb.c:2493 +#: initdb.c:2568 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: initdb.c:2517 +#: initdb.c:2592 #, c-format msgid "invalid authentication method \"%s\" for \"%s\" connections" msgstr "неприпустимий спосіб автентифікації \"%s\" для \"%s\" підключення" -#: initdb.c:2531 +#: initdb.c:2606 #, c-format msgid "must specify a password for the superuser to enable password authentication" msgstr "необхідно вказати пароль суперкористувача для активації автентифікації за допомогою пароля" -#: initdb.c:2550 +#: initdb.c:2625 #, c-format msgid "no data directory specified" msgstr "каталог даних не вказано" -#: initdb.c:2551 +#: initdb.c:2626 #, c-format msgid "You must identify the directory where the data for this database system will reside. Do this with either the invocation option -D or the environment variable PGDATA." msgstr "Ви повинні зазначити каталог, де будуть зберігатися дані цієї системи баз даних. Зробіть це або параметром -D, або змінною середовища PGDATA." -#: initdb.c:2568 +#: initdb.c:2643 #, c-format msgid "could not set environment" msgstr "не вдалося встановити середовище" -#: initdb.c:2586 +#: initdb.c:2661 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "програма \"%s\" потрібна для %s, але не знайдена в тому ж каталозі, що й \"%s\"" -#: initdb.c:2589 +#: initdb.c:2664 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "програма \"%s\" знайдена для \"%s\", але має відмінну версію від %s" -#: initdb.c:2604 +#: initdb.c:2679 #, c-format msgid "input file location must be an absolute path" msgstr "розташування вхідного файлу має бути абсолютним шляхом" -#: initdb.c:2621 +#: initdb.c:2696 #, c-format msgid "The database cluster will be initialized with locale \"%s\".\n" msgstr "Кластер бази даних буде ініціалізовано з локалізацією \"%s\".\n" -#: initdb.c:2624 +#: initdb.c:2699 #, c-format msgid "The database cluster will be initialized with this locale configuration:\n" msgstr "Кластер бази даних буде ініціалізовано з локалізацією:\n" -#: initdb.c:2625 +#: initdb.c:2700 #, c-format msgid " locale provider: %s\n" msgstr " провайдер локалі: %s\n" -#: initdb.c:2627 +#: initdb.c:2702 #, c-format msgid " default collation: %s\n" msgstr " стандартне сортування: %s\n" -#: initdb.c:2628 +#: initdb.c:2703 #, c-format msgid " LC_COLLATE: %s\n" " LC_CTYPE: %s\n" @@ -833,216 +858,216 @@ msgstr " LC_COLLATE: %s\n" " LC_NUMERIC: %s\n" " LC_TIME: %s\n" -#: initdb.c:2658 +#: initdb.c:2733 #, c-format msgid "could not find suitable encoding for locale \"%s\"" msgstr "не вдалося знайти відповідне кодування для локалі \"%s\"" -#: initdb.c:2660 +#: initdb.c:2735 #, c-format msgid "Rerun %s with the -E option." msgstr "Перезапустіть %s з параметром -E." -#: initdb.c:2661 initdb.c:3204 initdb.c:3324 initdb.c:3344 +#: initdb.c:2736 initdb.c:3274 initdb.c:3400 initdb.c:3420 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: initdb.c:2673 +#: initdb.c:2748 #, c-format msgid "Encoding \"%s\" implied by locale is not allowed as a server-side encoding.\n" "The default database encoding will be set to \"%s\" instead.\n" msgstr "Кодування \"%s\", що очікується локалізацією, не дозволено у якості кодування сервера.\n" "Замість нього буде встановлене кодування \"%s\" за замовчуванням.\n" -#: initdb.c:2678 +#: initdb.c:2753 #, c-format msgid "locale \"%s\" requires unsupported encoding \"%s\"" msgstr "локалізація \"%s\" потребує кодування \"%s\", що не підтримується" -#: initdb.c:2680 +#: initdb.c:2755 #, c-format msgid "Encoding \"%s\" is not allowed as a server-side encoding." msgstr "Кодування \"%s\" не допускається як кодування сервера." -#: initdb.c:2682 +#: initdb.c:2757 #, c-format msgid "Rerun %s with a different locale selection." msgstr "Перезапустіть %s з іншим вибором локалі." -#: initdb.c:2690 +#: initdb.c:2765 #, c-format msgid "The default database encoding has accordingly been set to \"%s\".\n" msgstr "Кодування бази даних за замовчуванням встановлено: \"%s\".\n" -#: initdb.c:2704 +#: initdb.c:2781 #, c-format msgid "builtin provider locale \"%s\" requires encoding \"%s\"" msgstr "локаль вбудованого провайдера \"%s\" вимагає кодування \"%s\"" -#: initdb.c:2766 +#: initdb.c:2843 #, c-format msgid "could not find suitable text search configuration for locale \"%s\"" msgstr "не вдалося знайти відповідну конфігурацію текстового пошуку для локалі\"%s\"" -#: initdb.c:2777 +#: initdb.c:2854 #, c-format msgid "suitable text search configuration for locale \"%s\" is unknown" msgstr "відповідна конфігурація текстового пошуку для локалі \"%s\" невідома" -#: initdb.c:2782 +#: initdb.c:2859 #, c-format msgid "specified text search configuration \"%s\" might not match locale \"%s\"" msgstr "вказана конфігурація текстового пошуку \"%s\" може не підходити локалі \"%s\"" -#: initdb.c:2787 +#: initdb.c:2864 #, c-format msgid "The default text search configuration will be set to \"%s\".\n" msgstr "Конфігурація текстового пошуку за замовчуванням буде встановлена в \"%s\".\n" -#: initdb.c:2830 initdb.c:2901 +#: initdb.c:2898 initdb.c:2969 #, c-format msgid "creating directory %s ... " msgstr "створення каталогу %s... " -#: initdb.c:2835 initdb.c:2906 initdb.c:2954 initdb.c:3011 +#: initdb.c:2903 initdb.c:2974 initdb.c:3022 initdb.c:3079 #, c-format msgid "could not create directory \"%s\": %m" msgstr "не вдалося створити каталог \"%s\": %m" -#: initdb.c:2844 initdb.c:2916 +#: initdb.c:2912 initdb.c:2984 #, c-format msgid "fixing permissions on existing directory %s ... " msgstr "виправляю дозволи для створеного каталогу %s... " -#: initdb.c:2849 initdb.c:2921 +#: initdb.c:2917 initdb.c:2989 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "не вдалося змінити дозволи каталогу \"%s\": %m" -#: initdb.c:2861 initdb.c:2933 +#: initdb.c:2929 initdb.c:3001 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "каталог \"%s\" існує, але він не порожній" -#: initdb.c:2865 +#: initdb.c:2933 #, c-format msgid "If you want to create a new database system, either remove or empty the directory \"%s\" or run %s with an argument other than \"%s\"." msgstr "Якщо ви хочете створити нову систему бази даних, видаліть або очистіть каталог \"%s\", або запустіть %s з аргументом, відмінним від \"%s\"." -#: initdb.c:2873 initdb.c:2943 initdb.c:3369 +#: initdb.c:2941 initdb.c:3011 initdb.c:3445 #, c-format msgid "could not access directory \"%s\": %m" msgstr "немає доступу до каталогу \"%s\": %m" -#: initdb.c:2894 +#: initdb.c:2962 #, c-format msgid "WAL directory location must be an absolute path" msgstr "розташування WAL каталогу має бути абсолютним шляхом" -#: initdb.c:2937 +#: initdb.c:3005 #, c-format msgid "If you want to store the WAL there, either remove or empty the directory \"%s\"." msgstr "Якщо ви хочете зберігати дані з WAL там, потрібно видалити або очистити директорію \"%s\"." -#: initdb.c:2947 +#: initdb.c:3015 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "не вдалося створити символічне послання \"%s\": %m" -#: initdb.c:2966 +#: initdb.c:3034 #, c-format msgid "It contains a dot-prefixed/invisible file, perhaps due to it being a mount point." msgstr "Він містить файл з крапкою або невидимий файл, можливо це точка під'єднання." -#: initdb.c:2968 +#: initdb.c:3036 #, c-format msgid "It contains a lost+found directory, perhaps due to it being a mount point." msgstr "Він містить каталог lost+found, можливо це точка під'єднання." -#: initdb.c:2970 +#: initdb.c:3038 #, c-format msgid "Using a mount point directly as the data directory is not recommended.\n" "Create a subdirectory under the mount point." msgstr "Не рекомендується використовувати точку під'єднання у якості каталогу даних.\n" "Створіть підкаталог і використайте його." -#: initdb.c:2997 +#: initdb.c:3065 #, c-format msgid "creating subdirectories ... " msgstr "створення підкаталогів... " -#: initdb.c:3040 +#: initdb.c:3108 msgid "performing post-bootstrap initialization ... " msgstr "виконується кінцева фаза ініціалізації ... " -#: initdb.c:3203 +#: initdb.c:3273 #, c-format msgid "-c %s requires a value" msgstr "-c %s необхідне значення" -#: initdb.c:3228 +#: initdb.c:3298 #, c-format msgid "Running in debug mode.\n" msgstr "Виконується у режимі налагодження.\n" -#: initdb.c:3232 +#: initdb.c:3302 #, c-format msgid "Running in no-clean mode. Mistakes will not be cleaned up.\n" msgstr "Виконується у режимі 'no-clean'. Помилки не будуть виправлені.\n" -#: initdb.c:3305 +#: initdb.c:3375 #, c-format msgid "unrecognized locale provider: %s" msgstr "нерозпізнаний постачальник локалів: %s" -#: initdb.c:3342 +#: initdb.c:3418 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: initdb.c:3349 initdb.c:3353 initdb.c:3357 +#: initdb.c:3425 initdb.c:3429 initdb.c:3433 #, c-format msgid "%s cannot be specified unless locale provider \"%s\" is chosen" msgstr "%s не може бути вказано, поки не буде обрано постачальник локалі \"%s\"" -#: initdb.c:3371 initdb.c:3434 +#: initdb.c:3447 initdb.c:3510 msgid "syncing data to disk ... " msgstr "синхронізація даних з диском ... " -#: initdb.c:3379 +#: initdb.c:3455 #, c-format msgid "password prompt and password file cannot be specified together" msgstr "неможливо вказати одночасно пароль і файл паролю" -#: initdb.c:3390 +#: initdb.c:3466 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "аргумент %s має бути ступенем двійки в діапазоні від 1 до 1024" -#: initdb.c:3403 +#: initdb.c:3479 #, c-format msgid "superuser name \"%s\" is disallowed; role names cannot begin with \"pg_\"" msgstr "неприпустиме ім'я суперкористувача \"%s\"; імена ролей не можуть починатися на \"pg_\"" -#: initdb.c:3405 +#: initdb.c:3481 #, c-format msgid "The files belonging to this database system will be owned by user \"%s\".\n" "This user must also own the server process.\n\n" msgstr "Файли цієї бази даних будуть належати користувачеві \"%s\".\n" "Від імені цього користувача повинен запускатися процес сервера.\n\n" -#: initdb.c:3421 +#: initdb.c:3497 #, c-format msgid "Data page checksums are enabled.\n" msgstr "Контроль цілісності сторінок даних увімкнено.\n" -#: initdb.c:3423 +#: initdb.c:3499 #, c-format msgid "Data page checksums are disabled.\n" msgstr "Контроль цілісності сторінок даних вимкнено.\n" -#: initdb.c:3440 +#: initdb.c:3516 #, c-format msgid "\n" "Sync to disk skipped.\n" @@ -1051,22 +1076,22 @@ msgstr "\n" "Синхронізація з диском пропущена.\n" "Каталог з даними може бути пошкоджено під час аварійного завершення роботи операційної системи.\n" -#: initdb.c:3445 +#: initdb.c:3521 #, c-format msgid "enabling \"trust\" authentication for local connections" msgstr "увімкнення автентифікації \"довіри\" для локальних підключень" -#: initdb.c:3446 +#: initdb.c:3522 #, c-format msgid "You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb." msgstr "Ви можете змінити це, змінивши pg_hba.conf або скориставшись опцією -A, або --auth-local і --auth-host, наступного разу, коли ви запускаєте initdb." #. translator: This is a placeholder in a shell command. -#: initdb.c:3476 +#: initdb.c:3552 msgid "logfile" msgstr "logfile" -#: initdb.c:3478 +#: initdb.c:3554 #, c-format msgid "\n" "Success. You can now start the database server using:\n\n" diff --git a/src/bin/pg_amcheck/po/es.po b/src/bin/pg_amcheck/po/es.po index 98f21b089cf..bfa13002f68 100644 --- a/src/bin/pg_amcheck/po/es.po +++ b/src/bin/pg_amcheck/po/es.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_amcheck (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:22+0000\n" +"POT-Creation-Date: 2026-02-06 23:21+0000\n" "PO-Revision-Date: 2024-11-16 14:23+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_archivecleanup/po/es.po b/src/bin/pg_archivecleanup/po/es.po index 59cb0111134..e07e3b2ca98 100644 --- a/src/bin/pg_archivecleanup/po/es.po +++ b/src/bin/pg_archivecleanup/po/es.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_archivecleanup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:22+0000\n" +"POT-Creation-Date: 2026-02-06 23:21+0000\n" "PO-Revision-Date: 2025-11-08 18:41+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_archivecleanup/po/uk.po b/src/bin/pg_archivecleanup/po/uk.po index 767f51cc73f..e2573c55f4f 100644 --- a/src/bin/pg_archivecleanup/po/uk.po +++ b/src/bin/pg_archivecleanup/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:23+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:53+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_archivecleanup.pot\n" -"X-Crowdin-File-ID: 1032\n" +"X-Crowdin-File: /REL_18_STABLE/pg_archivecleanup.pot\n" +"X-Crowdin-File-ID: 1077\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -48,112 +48,112 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: pg_archivecleanup.c:68 +#: pg_archivecleanup.c:69 #, c-format msgid "archive location \"%s\" does not exist" msgstr "архівного розташування \"%s\" не існує" -#: pg_archivecleanup.c:100 +#: pg_archivecleanup.c:101 #, c-format msgid "could not open archive location \"%s\": %m" msgstr "не вдалося відкрити архівне розташування \"%s\":%m" -#: pg_archivecleanup.c:164 +#: pg_archivecleanup.c:165 #, c-format msgid "could not remove file \"%s\": %m" msgstr "не можливо видалити файл \"%s\": %m" -#: pg_archivecleanup.c:169 +#: pg_archivecleanup.c:170 #, c-format msgid "could not read archive location \"%s\": %m" msgstr "не вдалося прочитати архівне розташування \"%s\":%m" -#: pg_archivecleanup.c:172 +#: pg_archivecleanup.c:173 #, c-format msgid "could not close archive location \"%s\": %m" msgstr "не вдалося закрити архівне розташування \"%s\":%m" -#: pg_archivecleanup.c:245 +#: pg_archivecleanup.c:246 #, c-format msgid "invalid file name argument" msgstr "недійсна назва файла з аргументом" -#: pg_archivecleanup.c:246 pg_archivecleanup.c:334 pg_archivecleanup.c:354 -#: pg_archivecleanup.c:366 pg_archivecleanup.c:373 +#: pg_archivecleanup.c:247 pg_archivecleanup.c:335 pg_archivecleanup.c:355 +#: pg_archivecleanup.c:367 pg_archivecleanup.c:374 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_archivecleanup.c:259 +#: pg_archivecleanup.c:260 #, c-format msgid "%s removes older WAL files from PostgreSQL archives.\n\n" msgstr "%s видаляє старі WAL-файли з архівів PostgreSQL.\n\n" -#: pg_archivecleanup.c:260 +#: pg_archivecleanup.c:261 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_archivecleanup.c:261 +#: pg_archivecleanup.c:262 #, c-format msgid " %s [OPTION]... ARCHIVELOCATION OLDESTKEPTWALFILE\n" msgstr " %s [OPTION]... РОЗТАШУВАННЯ_АРХІВА НАЙДАВНІШИЙ_ЗБЕРЕЖЕНИЙ_WAL_ФАЙЛ\n" -#: pg_archivecleanup.c:262 +#: pg_archivecleanup.c:263 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: pg_archivecleanup.c:263 +#: pg_archivecleanup.c:264 #, c-format msgid " -b, --clean-backup-history clean up files including backup history files\n" msgstr " -b, --clean-backup-history очистити файли, включаючи файли історії резервного копіювання\n" -#: pg_archivecleanup.c:264 +#: pg_archivecleanup.c:265 #, c-format msgid " -d, --debug generate debug output (verbose mode)\n" msgstr " -d, --debug генерувати налагоджувальний вивід (розгорнутий режим)\n" -#: pg_archivecleanup.c:265 +#: pg_archivecleanup.c:266 #, c-format msgid " -n, --dry-run dry run, show the names of the files that would be\n" " removed\n" msgstr " -n, --dry-run сухий запуск, показати назви файлів, які будуть\n" " вилучені\n" -#: pg_archivecleanup.c:267 +#: pg_archivecleanup.c:268 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію, потім вийти\n" -#: pg_archivecleanup.c:268 +#: pg_archivecleanup.c:269 #, c-format msgid " -x, --strip-extension=EXT strip this extension before identifying files for\n" " clean up\n" msgstr " -x, --strip-extension=EXT вилучати це розширення перед ідентифікацією файлів для\n" " очищення\n" -#: pg_archivecleanup.c:270 +#: pg_archivecleanup.c:271 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: pg_archivecleanup.c:271 +#: pg_archivecleanup.c:272 #, c-format msgid "\n" -"For use as archive_cleanup_command in postgresql.conf:\n" +"For use as \"archive_cleanup_command\" in postgresql.conf:\n" " archive_cleanup_command = 'pg_archivecleanup [OPTION]... ARCHIVELOCATION %%r'\n" "e.g.\n" " archive_cleanup_command = 'pg_archivecleanup /mnt/server/archiverdir %%r'\n" msgstr "\n" -"Для використання як archive_cleanup_command у postgresql.conf:\n" +"Для використання як \"archive_cleanup_command\" у postgresql.conf:\n" " archive_cleanup_command = 'pg_archivecleanup [OPTION]... ARCHIVELOCATION %%r'\n" "напр.\n" " archive_cleanup_command = 'pg_archivecleanup /mnt/server/archiverdir %%r'\n" -#: pg_archivecleanup.c:276 +#: pg_archivecleanup.c:277 #, c-format msgid "\n" "Or for use as a standalone archive cleaner:\n" @@ -164,29 +164,29 @@ msgstr "\n" "наприклад:\n" " pg_archivecleanup /mnt/server/archiverdir 000000010000000000000010.00000020.backup\n" -#: pg_archivecleanup.c:280 +#: pg_archivecleanup.c:281 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: pg_archivecleanup.c:281 +#: pg_archivecleanup.c:282 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: pg_archivecleanup.c:353 +#: pg_archivecleanup.c:354 #, c-format msgid "must specify archive location" msgstr "необхідно вказати розташування архіва" -#: pg_archivecleanup.c:365 +#: pg_archivecleanup.c:366 #, c-format msgid "must specify oldest kept WAL file" msgstr "необхідно вказати найдавніший збережений WAL-файл" -#: pg_archivecleanup.c:372 +#: pg_archivecleanup.c:373 #, c-format msgid "too many command-line arguments" msgstr "занадто багато аргументів командного рядка" diff --git a/src/bin/pg_basebackup/pg_createsubscriber.c b/src/bin/pg_basebackup/pg_createsubscriber.c index 95f127d09fc..e06439c1e95 100644 --- a/src/bin/pg_basebackup/pg_createsubscriber.c +++ b/src/bin/pg_basebackup/pg_createsubscriber.c @@ -2256,7 +2256,8 @@ main(int argc, char **argv) if (bad_switch) { - pg_log_error("options %s and -a/--all cannot be used together", bad_switch); + pg_log_error("options %s and %s cannot be used together", + bad_switch, "-a/--all"); pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit(1); } @@ -2382,7 +2383,8 @@ main(int argc, char **argv) dbinfos.objecttypes_to_clean |= OBJECTTYPE_PUBLICATIONS; else { - pg_log_error("invalid object type \"%s\" specified for --clean", cell->val); + pg_log_error("invalid object type \"%s\" specified for %s", + cell->val, "--clean"); pg_log_error_hint("The valid value is: \"%s\"", "publications"); exit(1); } diff --git a/src/bin/pg_basebackup/po/de.po b/src/bin/pg_basebackup/po/de.po index 9e58474afac..16ea9c6fe5a 100644 --- a/src/bin/pg_basebackup/po/de.po +++ b/src/bin/pg_basebackup/po/de.po @@ -1,5 +1,5 @@ # German message translation file for pg_basebackup -# Copyright (C) 2011 - 2025 PostgreSQL Global Development Group +# Copyright (C) 2011 - 2026 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. # # Use these quotes: »%s« @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-06 10:19+0000\n" -"PO-Revision-Date: 2025-11-06 13:27+0100\n" +"POT-Creation-Date: 2026-02-04 18:50+0000\n" +"PO-Revision-Date: 2026-02-05 14:24+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -1185,9 +1185,9 @@ msgstr "ungültige Option »%s« für --wal-method, muss »fetch«, »stream« o #: pg_basebackup.c:2713 pg_basebackup.c:2725 pg_basebackup.c:2737 #: pg_basebackup.c:2745 pg_basebackup.c:2758 pg_basebackup.c:2764 #: pg_basebackup.c:2773 pg_basebackup.c:2785 pg_basebackup.c:2796 -#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2260 -#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 -#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 pg_receivewal.c:748 +#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2261 +#: pg_createsubscriber.c:2271 pg_createsubscriber.c:2279 +#: pg_createsubscriber.c:2307 pg_createsubscriber.c:2350 pg_receivewal.c:748 #: pg_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 #: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:861 #: pg_recvlogical.c:873 pg_recvlogical.c:883 pg_recvlogical.c:890 @@ -1198,7 +1198,7 @@ msgstr "ungültige Option »%s« für --wal-method, muss »fetch«, »stream« o msgid "Try \"%s --help\" for more information." msgstr "Versuchen Sie »%s --help« für weitere Informationen." -#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2269 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1947,120 +1947,120 @@ msgstr "Objekttyp »%s« mehrmals für --clean angegeben" #: pg_createsubscriber.c:2259 #, c-format -msgid "options %s and -a/--all cannot be used together" -msgstr "Optionen %s und -a/--all können nicht zusammen verwendet werden" +msgid "options %s and %s cannot be used together" +msgstr "Optionen %s und %s können nicht zusammen verwendet werden" -#: pg_createsubscriber.c:2277 +#: pg_createsubscriber.c:2278 #, c-format msgid "no subscriber data directory specified" msgstr "kein Datenverzeichnis für Subskriptionsserver angegeben" -#: pg_createsubscriber.c:2288 +#: pg_createsubscriber.c:2289 #, c-format msgid "could not determine current directory" msgstr "konnte aktuelles Verzeichnis nicht ermitteln" -#: pg_createsubscriber.c:2305 +#: pg_createsubscriber.c:2306 #, c-format msgid "no publisher connection string specified" msgstr "keine Verbindungsparameter für Publikationsserver angegeben" -#: pg_createsubscriber.c:2309 +#: pg_createsubscriber.c:2310 #, c-format msgid "validating publisher connection string" msgstr "validiere Verbindungsparameter für Publikationsserver" -#: pg_createsubscriber.c:2315 +#: pg_createsubscriber.c:2316 #, c-format msgid "validating subscriber connection string" msgstr "validiere Verbindungsparameter für Subskriptionsserver" -#: pg_createsubscriber.c:2332 +#: pg_createsubscriber.c:2333 #, c-format msgid "no database was specified" msgstr "keine Datenbank wurde angegeben" -#: pg_createsubscriber.c:2343 +#: pg_createsubscriber.c:2344 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "Datenbankname »%s« wurde aus der Verbindungszeichenkette des Publikationsservers extrahiert" -#: pg_createsubscriber.c:2348 +#: pg_createsubscriber.c:2349 #, c-format msgid "no database name specified" msgstr "kein Datenbankname angegeben" -#: pg_createsubscriber.c:2358 +#: pg_createsubscriber.c:2359 #, c-format msgid "wrong number of publication names specified" msgstr "falsche Anzahl Publikationsnamen angegeben" -#: pg_createsubscriber.c:2359 +#: pg_createsubscriber.c:2360 #, c-format msgid "The number of specified publication names (%d) must match the number of specified database names (%d)." msgstr "Die Anzahl der angegebenen Publikationsnamen (%d) muss mit der Anzahl der angegebenen Datenbanknamen (%d) übereinstimmen." -#: pg_createsubscriber.c:2365 +#: pg_createsubscriber.c:2366 #, c-format msgid "wrong number of subscription names specified" msgstr "falsche Anzahl Subskriptionsnamen angegeben" -#: pg_createsubscriber.c:2366 +#: pg_createsubscriber.c:2367 #, c-format msgid "The number of specified subscription names (%d) must match the number of specified database names (%d)." msgstr "Die Anzahl der angegebenen Subskriptionsnamen (%d) muss mit der Anzahl der angegebenen Datenbanknamen (%d) übereinstimmen." -#: pg_createsubscriber.c:2372 +#: pg_createsubscriber.c:2373 #, c-format msgid "wrong number of replication slot names specified" msgstr "falsche Anzahl Replikations-Slot-Namen angegeben" -#: pg_createsubscriber.c:2373 +#: pg_createsubscriber.c:2374 #, c-format msgid "The number of specified replication slot names (%d) must match the number of specified database names (%d)." msgstr "Die Anzahl der angegebenen Replikations-Slot-Namen (%d) muss mit der Anzahl der angegebenen Datenbanknamen (%d) übereinstimmen." -#: pg_createsubscriber.c:2385 +#: pg_createsubscriber.c:2386 #, c-format -msgid "invalid object type \"%s\" specified for --clean" -msgstr "ungültiger Objekttyp »%s« für --clean angegeben" +msgid "invalid object type \"%s\" specified for %s" +msgstr "ungültiger Objekttyp »%s« für %s angegeben" -#: pg_createsubscriber.c:2386 +#: pg_createsubscriber.c:2388 #, c-format msgid "The valid value is: \"%s\"" msgstr "Der gültige Wert ist: »%s«" -#: pg_createsubscriber.c:2417 +#: pg_createsubscriber.c:2419 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "Datenverzeichnis des Subskriptionsservers ist keine Kopie des Quelldatenbankclusters" -#: pg_createsubscriber.c:2430 +#: pg_createsubscriber.c:2432 #, c-format msgid "standby server is running" msgstr "Standby-Server läuft" -#: pg_createsubscriber.c:2431 +#: pg_createsubscriber.c:2433 #, c-format msgid "Stop the standby server and try again." msgstr "Halten Sie den Standby-Server an und versuchen Sie erneut." -#: pg_createsubscriber.c:2440 +#: pg_createsubscriber.c:2442 #, c-format msgid "starting the standby server with command-line options" msgstr "starte den Standby-Server mit Kommandozeilenoptionen" -#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 +#: pg_createsubscriber.c:2458 pg_createsubscriber.c:2493 #, c-format msgid "stopping the subscriber" msgstr "stoppe den Subskriptionsserver" -#: pg_createsubscriber.c:2470 +#: pg_createsubscriber.c:2472 #, c-format msgid "starting the subscriber" msgstr "starte den Subskriptionsserver" -#: pg_createsubscriber.c:2499 +#: pg_createsubscriber.c:2501 #, c-format msgid "Done!" msgstr "Fertig!" diff --git a/src/bin/pg_basebackup/po/es.po b/src/bin/pg_basebackup/po/es.po index 55b804d68a8..1e5f278a092 100644 --- a/src/bin/pg_basebackup/po/es.po +++ b/src/bin/pg_basebackup/po/es.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_basebackup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:19+0000\n" -"PO-Revision-Date: 2025-11-08 19:02+0100\n" +"POT-Creation-Date: 2026-02-06 23:18+0000\n" +"PO-Revision-Date: 2026-02-07 09:55+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -1190,9 +1190,9 @@ msgstr "opción de wal-method «%s» no válida, debe ser «fetch», «stream» #: pg_basebackup.c:2713 pg_basebackup.c:2725 pg_basebackup.c:2737 #: pg_basebackup.c:2745 pg_basebackup.c:2758 pg_basebackup.c:2764 #: pg_basebackup.c:2773 pg_basebackup.c:2785 pg_basebackup.c:2796 -#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2260 -#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 -#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 pg_receivewal.c:748 +#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2261 +#: pg_createsubscriber.c:2271 pg_createsubscriber.c:2279 +#: pg_createsubscriber.c:2307 pg_createsubscriber.c:2350 pg_receivewal.c:748 #: pg_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 #: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:861 #: pg_recvlogical.c:873 pg_recvlogical.c:883 pg_recvlogical.c:890 @@ -1203,7 +1203,7 @@ msgstr "opción de wal-method «%s» no válida, debe ser «fetch», «stream» msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2269 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1952,120 +1952,121 @@ msgstr "el tipo de objeto «%s» fue especificado más de una vez para --clean" #: pg_createsubscriber.c:2259 #, c-format -msgid "options %s and -a/--all cannot be used together" -msgstr "las opciones %s y -a/--all no pueden usarse juntas" +msgid "options %s and %s cannot be used together" +msgstr "las opciones %s y %s no pueden usarse juntas" -#: pg_createsubscriber.c:2277 +#: pg_createsubscriber.c:2278 #, c-format msgid "no subscriber data directory specified" msgstr "no se especificó un directorio de datos de suscripción" -#: pg_createsubscriber.c:2288 +#: pg_createsubscriber.c:2289 #, c-format msgid "could not determine current directory" msgstr "no se pudo determinar el directorio actual" -#: pg_createsubscriber.c:2305 +#: pg_createsubscriber.c:2306 #, c-format msgid "no publisher connection string specified" msgstr "no se especificó un string de conexión de publicador" -#: pg_createsubscriber.c:2309 +#: pg_createsubscriber.c:2310 #, c-format msgid "validating publisher connection string" msgstr "validando string de conexión del publicador" -#: pg_createsubscriber.c:2315 +#: pg_createsubscriber.c:2316 #, c-format msgid "validating subscriber connection string" msgstr "validando string de conexión del suscriptor" -#: pg_createsubscriber.c:2332 +#: pg_createsubscriber.c:2333 #, c-format msgid "no database was specified" msgstr "no se especificó una base de datos" -#: pg_createsubscriber.c:2343 +#: pg_createsubscriber.c:2344 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "el nombr de base de datos «%s» fue extraído del string de conexión del publicador" -#: pg_createsubscriber.c:2348 +#: pg_createsubscriber.c:2349 #, c-format msgid "no database name specified" msgstr "no se especificó un nombre de base de datos" -#: pg_createsubscriber.c:2358 +#: pg_createsubscriber.c:2359 #, c-format msgid "wrong number of publication names specified" msgstr "una cantidad incorrecta de nombres de publicación fue especificada" -#: pg_createsubscriber.c:2359 +#: pg_createsubscriber.c:2360 #, c-format msgid "The number of specified publication names (%d) must match the number of specified database names (%d)." msgstr "La cantidad de nombres de publicación especificados (%d) debe coincidir con el número de nombres de bases de datos (%d)." -#: pg_createsubscriber.c:2365 +#: pg_createsubscriber.c:2366 #, c-format msgid "wrong number of subscription names specified" msgstr "una cantidad incorrecta de nombres de suscripción fue especificada" -#: pg_createsubscriber.c:2366 +#: pg_createsubscriber.c:2367 #, c-format msgid "The number of specified subscription names (%d) must match the number of specified database names (%d)." msgstr "La cantidad de nombres de suscripción especificados (%d) debe coincidir con el número de nombres de bases de datos (%d)." -#: pg_createsubscriber.c:2372 +#: pg_createsubscriber.c:2373 #, c-format msgid "wrong number of replication slot names specified" msgstr "una cantidad incorrecta de nombres de slots de replicación fue especificada" -#: pg_createsubscriber.c:2373 +#: pg_createsubscriber.c:2374 #, c-format msgid "The number of specified replication slot names (%d) must match the number of specified database names (%d)." msgstr "La cantidad de nombres de slots de replicación especificados (%d) debe coincidir con el número de nombres de bases de datos (%d)." -#: pg_createsubscriber.c:2385 +#: pg_createsubscriber.c:2386 #, c-format -msgid "invalid object type \"%s\" specified for --clean" -msgstr "el tipo de objeto «%s» especificado para --clean no es válido" +#| msgid "invalid object type \"%s\" specified for --clean" +msgid "invalid object type \"%s\" specified for %s" +msgstr "tipo de objeto «%s» no válido especificado para %s" -#: pg_createsubscriber.c:2386 +#: pg_createsubscriber.c:2388 #, c-format msgid "The valid value is: \"%s\"" msgstr "El valor válido es: «%s»" -#: pg_createsubscriber.c:2417 +#: pg_createsubscriber.c:2419 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "el directorio de datos del suscriptor no es una copia del clúster de origen" -#: pg_createsubscriber.c:2430 +#: pg_createsubscriber.c:2432 #, c-format msgid "standby server is running" msgstr "el servidor standby está en ejecución" -#: pg_createsubscriber.c:2431 +#: pg_createsubscriber.c:2433 #, c-format msgid "Stop the standby server and try again." msgstr "Detenga el servidor standby y pruebe otra vez." -#: pg_createsubscriber.c:2440 +#: pg_createsubscriber.c:2442 #, c-format msgid "starting the standby server with command-line options" msgstr "iniciando el standby con opciones de línea de órdenes" -#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 +#: pg_createsubscriber.c:2458 pg_createsubscriber.c:2493 #, c-format msgid "stopping the subscriber" msgstr "deteniendo el suscriptor" -#: pg_createsubscriber.c:2470 +#: pg_createsubscriber.c:2472 #, c-format msgid "starting the subscriber" msgstr "iniciando el suscriptor" -#: pg_createsubscriber.c:2499 +#: pg_createsubscriber.c:2501 #, c-format msgid "Done!" msgstr "¡Listo!" @@ -2741,3 +2742,7 @@ msgstr "unlink no soportado con compresión" #: walmethods.c:1293 msgid "could not close compression stream" msgstr "no se pudo cerrar el flujo comprimido" + +#, c-format +#~ msgid "options %s and -a/--all cannot be used together" +#~ msgstr "las opciones %s y -a/--all no pueden usarse juntas" diff --git a/src/bin/pg_basebackup/po/ja.po b/src/bin/pg_basebackup/po/ja.po index 04531edac5e..a78e8aae8c1 100644 --- a/src/bin/pg_basebackup/po/ja.po +++ b/src/bin/pg_basebackup/po/ja.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_basebackup (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-04 11:47+0900\n" -"PO-Revision-Date: 2025-11-05 11:49+0900\n" +"POT-Creation-Date: 2025-12-09 09:38+0900\n" +"PO-Revision-Date: 2025-12-09 10:16+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -1182,9 +1182,9 @@ msgstr "不正な wal-method オプション\"%s\"、\"fetch\"、\"stream\" ま #: pg_basebackup.c:2713 pg_basebackup.c:2725 pg_basebackup.c:2737 #: pg_basebackup.c:2745 pg_basebackup.c:2758 pg_basebackup.c:2764 #: pg_basebackup.c:2773 pg_basebackup.c:2785 pg_basebackup.c:2796 -#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2260 -#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 -#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 pg_receivewal.c:748 +#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2261 +#: pg_createsubscriber.c:2271 pg_createsubscriber.c:2279 +#: pg_createsubscriber.c:2307 pg_createsubscriber.c:2350 pg_receivewal.c:748 #: pg_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 #: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:861 #: pg_recvlogical.c:873 pg_recvlogical.c:883 pg_recvlogical.c:890 @@ -1195,7 +1195,7 @@ msgstr "不正な wal-method オプション\"%s\"、\"fetch\"、\"stream\" ま msgid "Try \"%s --help\" for more information." msgstr "詳細は\"%s --help\"を実行してください。" -#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2269 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1541,8 +1541,8 @@ msgstr "サブスクライバ上でpg_resetwalを実行します" #: pg_createsubscriber.c:707 #, c-format -msgid "subscriber successfully reset WAL on the subscriber" -msgstr "サブスクライバはサブスクライバのWALのリセットに成功しました" +msgid "successfully reset WAL on the subscriber" +msgstr "サブスクライバのWALのリセットに成功しました" #: pg_createsubscriber.c:709 #, c-format @@ -1948,120 +1948,120 @@ msgstr "--clean に対してオブジェクト種別\"%s\"が複数回指定さ #: pg_createsubscriber.c:2259 #, c-format -msgid "options %s and -a/--all cannot be used together" -msgstr "%s と -a/--all は同時には使用できません" +msgid "options %s and %s cannot be used together" +msgstr "オプション %s と %s は同時には使用できません" -#: pg_createsubscriber.c:2277 +#: pg_createsubscriber.c:2278 #, c-format msgid "no subscriber data directory specified" msgstr "サブスクライバのデータディレクトリが指定されていません" -#: pg_createsubscriber.c:2288 +#: pg_createsubscriber.c:2289 #, c-format msgid "could not determine current directory" msgstr "カレントディレクトリを特定できませんでした" -#: pg_createsubscriber.c:2305 +#: pg_createsubscriber.c:2306 #, c-format msgid "no publisher connection string specified" msgstr "パブリッシャの接続文字列が指定されていません" -#: pg_createsubscriber.c:2309 +#: pg_createsubscriber.c:2310 #, c-format msgid "validating publisher connection string" msgstr "パブリッシャの接続文字列の検証中" -#: pg_createsubscriber.c:2315 +#: pg_createsubscriber.c:2316 #, c-format msgid "validating subscriber connection string" msgstr "サブスクライバの接続文字列の検証中" -#: pg_createsubscriber.c:2332 +#: pg_createsubscriber.c:2333 #, c-format msgid "no database was specified" msgstr "データベースが指定されていません" -#: pg_createsubscriber.c:2343 +#: pg_createsubscriber.c:2344 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "データベース名\"%s\"がパブリッシャの接続文字列から抽出されました" -#: pg_createsubscriber.c:2348 +#: pg_createsubscriber.c:2349 #, c-format msgid "no database name specified" msgstr "データベース名が指定されていません" -#: pg_createsubscriber.c:2358 +#: pg_createsubscriber.c:2359 #, c-format msgid "wrong number of publication names specified" msgstr "指定されたパブリケーション名の数が間違っています" -#: pg_createsubscriber.c:2359 +#: pg_createsubscriber.c:2360 #, c-format msgid "The number of specified publication names (%d) must match the number of specified database names (%d)." msgstr "パブリケーション名の数(%d)はデータベース名の数(%d)と一致している必要があります。" -#: pg_createsubscriber.c:2365 +#: pg_createsubscriber.c:2366 #, c-format msgid "wrong number of subscription names specified" msgstr "指定されたサブスクリプション名の数が間違っています" -#: pg_createsubscriber.c:2366 +#: pg_createsubscriber.c:2367 #, c-format msgid "The number of specified subscription names (%d) must match the number of specified database names (%d)." msgstr "サブスクリプション名の数(%d)はデータベース名の数(%d)と一致している必要があります。" -#: pg_createsubscriber.c:2372 +#: pg_createsubscriber.c:2373 #, c-format msgid "wrong number of replication slot names specified" msgstr "指定されたレプリケーションスロット名の数が間違っています" -#: pg_createsubscriber.c:2373 +#: pg_createsubscriber.c:2374 #, c-format msgid "The number of specified replication slot names (%d) must match the number of specified database names (%d)." msgstr "レプリケーションスロット名の数(%d)はデータベース名の数(%d)と一致している必要があります。" -#: pg_createsubscriber.c:2385 +#: pg_createsubscriber.c:2386 #, c-format -msgid "invalid object type \"%s\" specified for --clean" -msgstr "--clean に対して指定された不正なオブジェクト種別\"%s\"" +msgid "invalid object type \"%s\" specified for %s" +msgstr "%2$s に対して指定された不正なオブジェクト種別\"%1$s\"" -#: pg_createsubscriber.c:2386 +#: pg_createsubscriber.c:2388 #, c-format msgid "The valid value is: \"%s\"" msgstr "指定可能な値は: \"%s\"" -#: pg_createsubscriber.c:2417 +#: pg_createsubscriber.c:2419 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "サブスクライバのデータディレクトリは元データベースクラスタのコピーではありません" -#: pg_createsubscriber.c:2430 +#: pg_createsubscriber.c:2432 #, c-format msgid "standby server is running" msgstr "スタンバイサーバーが稼働中です" -#: pg_createsubscriber.c:2431 +#: pg_createsubscriber.c:2433 #, c-format msgid "Stop the standby server and try again." msgstr "このスタンバイサーバーを停止してから再試行してください。" -#: pg_createsubscriber.c:2440 +#: pg_createsubscriber.c:2442 #, c-format msgid "starting the standby server with command-line options" msgstr "コマンドラインオプションを指定してスタンバイサーバーを起動しています" -#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 +#: pg_createsubscriber.c:2458 pg_createsubscriber.c:2493 #, c-format msgid "stopping the subscriber" msgstr "サブスクライバを起動しています" -#: pg_createsubscriber.c:2470 +#: pg_createsubscriber.c:2472 #, c-format msgid "starting the subscriber" msgstr "サブスクライバを起動しています" -#: pg_createsubscriber.c:2499 +#: pg_createsubscriber.c:2501 #, c-format msgid "Done!" msgstr "完了!" @@ -2746,3 +2746,6 @@ msgstr "圧縮ストリームをクローズできませんでした" #~ msgid "could not change system identifier of subscriber: %s" #~ msgstr "サブスクライバーのシステム識別子を変更できませんでした: %s" + +#~ msgid "options %s and -a/--all cannot be used together" +#~ msgstr "%s と -a/--all は同時には使用できません" diff --git a/src/bin/pg_basebackup/po/ka.po b/src/bin/pg_basebackup/po/ka.po index d3a1828ad6a..0d888ac5071 100644 --- a/src/bin/pg_basebackup/po/ka.po +++ b/src/bin/pg_basebackup/po/ka.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_basebackup (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-07-08 17:19+0000\n" -"PO-Revision-Date: 2025-07-09 05:54+0200\n" +"POT-Creation-Date: 2025-12-11 05:50+0000\n" +"PO-Revision-Date: 2025-12-13 13:16+0100\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.6\n" +"X-Generator: Poedit 3.8\n" #: ../../../src/common/logging.c:279 #, c-format @@ -1179,9 +1179,9 @@ msgstr "wal-method-ის არასწორი მნიშვნელო #: pg_basebackup.c:2713 pg_basebackup.c:2725 pg_basebackup.c:2737 #: pg_basebackup.c:2745 pg_basebackup.c:2758 pg_basebackup.c:2764 #: pg_basebackup.c:2773 pg_basebackup.c:2785 pg_basebackup.c:2796 -#: pg_basebackup.c:2804 pg_createsubscriber.c:2196 pg_createsubscriber.c:2218 -#: pg_createsubscriber.c:2228 pg_createsubscriber.c:2236 -#: pg_createsubscriber.c:2264 pg_createsubscriber.c:2307 pg_receivewal.c:748 +#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2261 +#: pg_createsubscriber.c:2271 pg_createsubscriber.c:2279 +#: pg_createsubscriber.c:2307 pg_createsubscriber.c:2350 pg_receivewal.c:748 #: pg_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 #: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:861 #: pg_recvlogical.c:873 pg_recvlogical.c:883 pg_recvlogical.c:890 @@ -1192,7 +1192,7 @@ msgstr "wal-method-ის არასწორი მნიშვნელო msgid "Try \"%s --help\" for more information." msgstr "მეტი ინფორმაციისთვის სცადეთ '%s --help'." -#: pg_basebackup.c:2585 pg_createsubscriber.c:2226 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2269 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1310,7 +1310,7 @@ msgstr "მოაცილეთ ეს გამოცემა, სანა msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "რეპლიკაციის სლოტი \"%s\" შეიქმნა მონაცემთა ბაზაში \"%s\" ძირითადზე, შეიძლება, გამოტოვებულია" -#: pg_createsubscriber.c:231 pg_createsubscriber.c:1305 +#: pg_createsubscriber.c:231 pg_createsubscriber.c:1324 #, c-format msgid "Drop this replication slot soon to avoid retention of WAL files." msgstr "ამ რეპლიკაციის სლოტის მალე წაშლა WAL ფაილების მორჩენის თავიდან ასაცილებლად." @@ -1505,7 +1505,7 @@ msgstr "სისტემური იდენტიფიკატორი msgid "control file appears to be corrupt" msgstr "როგორც ჩანს, საკონტროლო ფაილი დაზიანებულია" -#: pg_createsubscriber.c:645 pg_createsubscriber.c:685 +#: pg_createsubscriber.c:645 pg_createsubscriber.c:688 #, c-format msgid "system identifier is % on subscriber" msgstr "სისტემური იდენტიფიკატორი % გამომწერზეა" @@ -1515,494 +1515,544 @@ msgstr "სისტემური იდენტიფიკატორი % msgid "modifying system identifier of subscriber" msgstr "გამომწერის სისტემური იდენტიფიკატორის შეცვლა" -#: pg_createsubscriber.c:688 +#: pg_createsubscriber.c:683 +#, c-format +msgid "dry-run: would set system identifier to % on subscriber" +msgstr "მშრალი გაშვება: დააყენებს სისტემური იდენტიფიკატორს % გამომწერზე" + +#: pg_createsubscriber.c:693 +#, c-format +msgid "dry-run: would run pg_resetwal on the subscriber" +msgstr "მშრალი გაშვება: pg_resetwal-ის გაშვება გამომწერზე" + +#: pg_createsubscriber.c:695 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "pg_resetwal-ის გაშვება გამომწერზე" -#: pg_createsubscriber.c:700 +#: pg_createsubscriber.c:707 #, c-format -msgid "subscriber successfully changed the system identifier" -msgstr "გამომწერმა სისტემური იდენტიფიკატორი წარმატებით შეცვალა" +msgid "successfully reset WAL on the subscriber" +msgstr "WAL-ის ჩამოყრა წარმატებულია გამომწერზე" -#: pg_createsubscriber.c:702 +#: pg_createsubscriber.c:709 #, c-format -msgid "could not change system identifier of subscriber: %s" -msgstr "ვერ შევცვალე სისტემურ იდენტიფიკატორი გამომწერისთვის: %s" +msgid "could not reset WAL on subscriber: %s" +msgstr "WAL-ის ჩამოყრა შეუძლებელია გამომწერზე: %s" -#: pg_createsubscriber.c:726 +#: pg_createsubscriber.c:733 #, c-format msgid "could not obtain database OID: %s" msgstr "ვერ მივიღე მონაცემთა ბაზის OID: %s" -#: pg_createsubscriber.c:733 +#: pg_createsubscriber.c:740 #, c-format msgid "could not obtain database OID: got %d rows, expected %d row" msgstr "ვერ მივიღე მონაცემთა ბაზის OID: მივიღე %d მწკრივი, მოველოდი %d მწკრივს" -#: pg_createsubscriber.c:805 +#: pg_createsubscriber.c:812 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "რეპლიკაციის სლოტის \"%s\" შექმნა გამომცემელზე" -#: pg_createsubscriber.c:825 +#: pg_createsubscriber.c:832 #, c-format msgid "could not write an additional WAL record: %s" msgstr "ვერ ჩავწერე დამატებითი WAL ჩანაწერი: %s" -#: pg_createsubscriber.c:851 +#: pg_createsubscriber.c:858 #, c-format msgid "could not obtain recovery progress: %s" msgstr "აღდგენის მიმდინარეობის მდგომარეობის მიღება შეუძლებელია: %s" -#: pg_createsubscriber.c:884 +#: pg_createsubscriber.c:891 #, c-format msgid "checking settings on publisher" msgstr "პარამეტრების შექმნა გამომცემელზე" -#: pg_createsubscriber.c:894 +#: pg_createsubscriber.c:901 #, c-format msgid "primary server cannot be in recovery" msgstr "ძირითადი სერვერი აღდგენის რეჟიმში ვერ იქნება" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:927 #, c-format msgid "could not obtain publisher settings: %s" msgstr "გამომცემლის პარამეტრების მიღება შეუძლებელია: %s" -#: pg_createsubscriber.c:949 +#: pg_createsubscriber.c:956 #, c-format msgid "publisher requires \"wal_level\" >= \"logical\"" msgstr "გამომცემელს \"wal_level\" >= \"logical\" ესაჭიროება" -#: pg_createsubscriber.c:955 +#: pg_createsubscriber.c:962 #, c-format msgid "publisher requires %d replication slots, but only %d remain" msgstr "გამომცემელს %d რეპლიკაციის სლოტი სჭირდება, მაგრამ დარჩენილია, მხოლოდ, %d" -#: pg_createsubscriber.c:957 pg_createsubscriber.c:966 -#: pg_createsubscriber.c:1076 pg_createsubscriber.c:1085 -#: pg_createsubscriber.c:1094 +#: pg_createsubscriber.c:964 pg_createsubscriber.c:973 +#: pg_createsubscriber.c:1083 pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1101 #, c-format msgid "Increase the configuration parameter \"%s\" to at least %d." msgstr "გაზარდეთ კონფიგურაციის პარამეტრი \"%s\" %d-მდე მაინც." -#: pg_createsubscriber.c:964 +#: pg_createsubscriber.c:971 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "გამომცემელს %d WAL-ის გამგზავნი პროცესი სჭირდება, მაგრამ დარჩენილია, მხოლოდ, %d" -#: pg_createsubscriber.c:973 +#: pg_createsubscriber.c:980 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "პარამეტრი two_phase რეპლიკაციის სლოტებისთვის არ ჩაირთვება" -#: pg_createsubscriber.c:974 +#: pg_createsubscriber.c:981 #, c-format msgid "Subscriptions will be created with the two_phase option disabled. Prepared transactions will be replicated at COMMIT PREPARED." msgstr "გამოწერები two_phase პარამეტრით გათიშული შეიქმნება. მომზადებული ტრანზაქციების რეპლიკაცია მოხდება COMMIT PREPARED-თან." -#: pg_createsubscriber.c:976 +#: pg_createsubscriber.c:983 #, c-format msgid "You can use the command-line option --enable-two-phase to enable two_phase." msgstr "'two_phase'-ის ჩასართავად, შეგიძლიათ, გამოიყენოთ ბრძანების სტრიქონის პარამეტრი --enable-two-phase." -#: pg_createsubscriber.c:986 +#: pg_createsubscriber.c:993 #, c-format msgid "required WAL could be removed from the publisher" msgstr "აუცილებელი WAL-ის წაშლა შესაძლებელია გამომცემლიდან" -#: pg_createsubscriber.c:987 +#: pg_createsubscriber.c:994 #, c-format msgid "Set the configuration parameter \"%s\" to -1 to ensure that required WAL files are not prematurely removed." msgstr "დააყენეთ კონფიგურაციის პარამეტრი \"%s\" მნიშვნელობაზე -1, რომ დარწმუნდეთ, რომ WAL ფაილები საჭიროზე ადრე არ წაიშლება." -#: pg_createsubscriber.c:1019 +#: pg_createsubscriber.c:1026 #, c-format msgid "checking settings on subscriber" msgstr "პარამეტრების შემოწმება გამომწერზე" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1033 #, c-format msgid "target server must be a standby" msgstr "სამიზნე სერვერი უქმე უნდა იყოს" -#: pg_createsubscriber.c:1050 +#: pg_createsubscriber.c:1057 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "გამომწერის პარამეტრების მიღება შეუძლებელია: %s" -#: pg_createsubscriber.c:1074 +#: pg_createsubscriber.c:1081 #, c-format msgid "subscriber requires %d active replication origins, but only %d remain" msgstr "გამომწერს %d აქტიური რეპლიკაციის წყარო სჭირდება, მაგრამ დარჩენილია, მხოლოდ, %d" -#: pg_createsubscriber.c:1083 +#: pg_createsubscriber.c:1090 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "გამომწერს %d ლოგიკური რეპლიკაციის დამხმარე პროცესი სჭირდება, მაგრამ დარჩენილია, მხოლოდ, %d" -#: pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1099 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "გამომწერს %d დამხმარე პროცესი სჭირდება, მაგრამ დარჩენილია, მხოლოდ, %d" -#: pg_createsubscriber.c:1127 +#: pg_createsubscriber.c:1135 +#, c-format +msgid "dry-run: would drop subscription \"%s\" in database \"%s\"" +msgstr "მშრალი გაშვება: მოხდება მოცილება გამოწერისა \"%s\" მონაცემთა ბაზაში \"%s\"" + +#: pg_createsubscriber.c:1139 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "მოხდება მოცილება გამოწერისა \"%s\" მონაცემთა ბაზაში \"%s\"" -#: pg_createsubscriber.c:1136 +#: pg_createsubscriber.c:1146 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "ვერ მოვაცილე გამოწერა \"%s\": %s" -#: pg_createsubscriber.c:1171 +#: pg_createsubscriber.c:1181 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "ვერ მივიღე უკვე არსებული გამოწერები: %s" -#: pg_createsubscriber.c:1303 +#: pg_createsubscriber.c:1322 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "ვერ წავშალე რეპლიკაციის სლოტი \"%s\" ძირითადზე" -#: pg_createsubscriber.c:1337 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "გადასართველი რეპლიკაციის სლოტის ინფორმაციის მიღება შეუძლებელია: %s" -#: pg_createsubscriber.c:1339 pg_createsubscriber.c:1348 +#: pg_createsubscriber.c:1358 pg_createsubscriber.c:1367 #, c-format msgid "Drop the failover replication slots on subscriber soon to avoid retention of WAL files." msgstr "გამომწერზე გადასართველი რეპლიკაციის სლოტების მალე წაშლა WAL ფაილების მორჩენის თავიდან ასაცილებლად." -#: pg_createsubscriber.c:1347 +#: pg_createsubscriber.c:1366 #, c-format msgid "could not drop failover replication slot" msgstr "გადასართველი რეპლიკაციის სლოტი წაშლა შეუძლებელია" -#: pg_createsubscriber.c:1369 +#: pg_createsubscriber.c:1389 #, c-format -msgid "creating the replication slot \"%s\" in database \"%s\"" -msgstr "იქმნება რეპლიკაციის სლოტი \"%s\" მონაცემთა ბაზაში \"%s\"" +msgid "dry-run: would create the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "მშრალი გაშვება: შექმნის რეპლიკაციის სლოტს \"%s\" მონაცემთა ბაზაში \"%s\" გამომცემელზე" -#: pg_createsubscriber.c:1388 +#: pg_createsubscriber.c:1392 +#, c-format +msgid "creating the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "იქმნება რეპლიკაციის სლოტი \"%s\" მონაცემთა ბაზაში \"%s\" გამომცემელზე" + +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "ვერ შევქმენი რეპლიკაციის სლოტი \"%s\" მონაცემთა ბაზაში \"%s\": %s" -#: pg_createsubscriber.c:1418 +#: pg_createsubscriber.c:1442 +#, c-format +msgid "dry-run: would drop the replication slot \"%s\" in database \"%s\"" +msgstr "მშრალი გაშვება: წაიშლება რეპლიკაციის სლოტი \"%s\" მონაცემთა ბაზაში \"%s\"" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "იშლება რეპლიკაციის სლოტი \"%s\" მონაცემთა ბაზაში \"%s\"" -#: pg_createsubscriber.c:1434 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "ვერ წავშალე რეპლიკაციის სლოტი \"%s\" მონაცემთა ბაზაში \"%s\": %s" -#: pg_createsubscriber.c:1455 +#: pg_createsubscriber.c:1482 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "pg_ctl ჩავარდა გამოსვლის კოდით %d" -#: pg_createsubscriber.c:1460 +#: pg_createsubscriber.c:1487 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl შეწყდა გამონაკლისით 0x%X" -#: pg_createsubscriber.c:1462 +#: pg_createsubscriber.c:1489 #, c-format msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value." msgstr "თექვსმეტობითი მნიშვნელობის აღწერისთვის იხილეთ C-ის ჩასასმელი ფაილი \"ntstatus.h\"." -#: pg_createsubscriber.c:1464 +#: pg_createsubscriber.c:1491 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl შეწყვეტილია სიგნალით %d: %s" -#: pg_createsubscriber.c:1470 +#: pg_createsubscriber.c:1497 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl დასრულდა უცნობი სტატუსით %d" -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1500 #, c-format msgid "The failed command was: %s" msgstr "ჩავარდნილი ბრძანება იყო: %s" -#: pg_createsubscriber.c:1523 +#: pg_createsubscriber.c:1550 #, c-format msgid "server was started" msgstr "სერვერი გაეშვა" -#: pg_createsubscriber.c:1538 +#: pg_createsubscriber.c:1565 #, c-format msgid "server was stopped" msgstr "სერვერი გამოირთო" -#: pg_createsubscriber.c:1557 +#: pg_createsubscriber.c:1584 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "სამიზნე სერვერის მდგრად მდგომარეობაში გადასვლის მოლოდინი" -#: pg_createsubscriber.c:1580 +#: pg_createsubscriber.c:1602 #, c-format msgid "recovery timed out" msgstr "აღდგენის მოლოდინის ვადა ამოიწურა" -#: pg_createsubscriber.c:1593 +#: pg_createsubscriber.c:1615 #, c-format msgid "server did not end recovery" msgstr "სერვერმა აღდგენა არ დაამთავრა" -#: pg_createsubscriber.c:1595 +#: pg_createsubscriber.c:1617 #, c-format msgid "target server reached the consistent state" msgstr "სამიზნე სერვერმა მიაღწია მდგრად მდგომარეობას" -#: pg_createsubscriber.c:1596 +#: pg_createsubscriber.c:1618 #, c-format msgid "If pg_createsubscriber fails after this point, you must recreate the physical replica before continuing." msgstr "თუ ამ წერტილის შემდეგ pg_createsubscriber ჩავარდება, გაგრძელებამდე ფიზიკური რეპლიკა თავიდან უნდა შექმნათ." -#: pg_createsubscriber.c:1623 pg_createsubscriber.c:1746 +#: pg_createsubscriber.c:1645 pg_createsubscriber.c:1776 #, c-format msgid "could not obtain publication information: %s" msgstr "გამოცემის ინფორმაციის მიღება შეუძლებელია: %s" -#: pg_createsubscriber.c:1637 +#: pg_createsubscriber.c:1659 #, c-format msgid "publication \"%s\" already exists" msgstr "პუბლიკაცია \"%s\" უკვე არსებობს" -#: pg_createsubscriber.c:1638 +#: pg_createsubscriber.c:1660 #, c-format msgid "Consider renaming this publication before continuing." msgstr "განიხილეთ ამ პუბლიკაციის სახელის გადარქმევა ხელახლა ცდამდე." -#: pg_createsubscriber.c:1645 +#: pg_createsubscriber.c:1668 +#, c-format +msgid "dry-run: would create publication \"%s\" in database \"%s\"" +msgstr "მშრალი გაშვება: შექმნის გამოცემას \"%s\" მონაცემთა ბაზაში \"%s\"" + +#: pg_createsubscriber.c:1671 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "იქმნება გამოცემა \"%s\" მონაცემთა ბაზაში \"%s\"" -#: pg_createsubscriber.c:1658 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "ვერ შევქმენი გამოცემა \"%s\" მონაცემთა ბაზაში \"%s\": %s" -#: pg_createsubscriber.c:1688 +#: pg_createsubscriber.c:1715 +#, c-format +msgid "dry-run: would drop publication \"%s\" in database \"%s\"" +msgstr "მშრალი გაშვება: წაშლის გამოცემას \"%s\" მონაცემთა ბაზაში \"%s\"" + +#: pg_createsubscriber.c:1718 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "ვშლი გამოცემას \"%s\" მონაცემთა ბაზაში \"%s\"" -#: pg_createsubscriber.c:1702 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "ვერ წავშალე გამოცემა \"%s\" მონაცემთა ბაზაში \"%s\": %s" -#: pg_createsubscriber.c:1739 +#: pg_createsubscriber.c:1769 #, c-format msgid "dropping all existing publications in database \"%s\"" msgstr "ვშლი ყველა არსებულ გამოცემას მონაცემთა ბაზაში \"%s\"" -#: pg_createsubscriber.c:1797 +#: pg_createsubscriber.c:1828 +#, c-format +msgid "dry-run: would create subscription \"%s\" in database \"%s\"" +msgstr "მშრალი გაშვება: შექმნის გამოწერას \"%s\" მონაცემთა ბაზაში \"%s\"" + +#: pg_createsubscriber.c:1831 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "იქმნება გამოწერა \"%s\" მონაცემთა ბაზაში \"%s\"" -#: pg_createsubscriber.c:1819 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "ვერ შევქმენი გამოწერა \"%s\" მონაცემთა ბაზაში \"%s\": %s" -#: pg_createsubscriber.c:1864 +#: pg_createsubscriber.c:1898 #, c-format msgid "could not obtain subscription OID: %s" msgstr "ვერ მივიღე გამოწერის OID: %s" -#: pg_createsubscriber.c:1871 +#: pg_createsubscriber.c:1905 #, c-format msgid "could not obtain subscription OID: got %d rows, expected %d row" msgstr "ვერ მივიღე გამოწერის OID: მივიღე %d მწკრივი, მოველოდი %d მწკრივს" -#: pg_createsubscriber.c:1895 +#: pg_createsubscriber.c:1930 +#, c-format +msgid "dry-run: would set the replication progress (node name \"%s\", LSN %s) in database \"%s\"" +msgstr "მშრალი გაშვება: დააყენებს რეპლიკაციის მიმდინარეობას (კვანძის სახელი \"%s\", LSN %s) მონაცემთა ბაზაზე \"%s\"" + +#: pg_createsubscriber.c:1933 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "რეპლიკაციის მიმდინარეობის (კვანძის სახელი \"%s\", LSN %s) დაყენება მონაცემთა ბაზაზე \"%s\"" -#: pg_createsubscriber.c:1910 +#: pg_createsubscriber.c:1948 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "შეუძლებელია რეპლიკაციის მიმდინარეობის დაყენება გამოწერისთვის \"%s\": %s" -#: pg_createsubscriber.c:1941 +#: pg_createsubscriber.c:1980 +#, c-format +msgid "dry-run: would enable subscription \"%s\" in database \"%s\"" +msgstr "მშრალი გაშვება: ჩაირთვება გამოწერა \"%s\" მონაცემთა ბაზაში \"%s\"" + +#: pg_createsubscriber.c:1983 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "ჩაირთვება გამოწერა \"%s\" მონაცემთა ბაზაში \"%s\"" -#: pg_createsubscriber.c:1953 +#: pg_createsubscriber.c:1995 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "ვერ ჩავრთე გამოწერა \"%s\": %s" -#: pg_createsubscriber.c:1999 +#: pg_createsubscriber.c:2041 #, c-format msgid "could not obtain a list of databases: %s" msgstr "ვერ მივიღე მონაცემთა ბაზების სია: %s" -#: pg_createsubscriber.c:2103 +#: pg_createsubscriber.c:2145 #, c-format msgid "cannot be executed by \"root\"" msgstr "root-ით ვერ გაეშვება" -#: pg_createsubscriber.c:2104 +#: pg_createsubscriber.c:2146 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "%s PostgreSQL-ის ზემომხმარებლით უნდა გაუშვათ." -#: pg_createsubscriber.c:2127 +#: pg_createsubscriber.c:2169 #, c-format msgid "database \"%s\" specified more than once for -d/--database" msgstr "მონაცემთა ბაზა \"%s\" ერთზე მეტჯერაა მითითებული პარამეტრისთვის -d/--database" -#: pg_createsubscriber.c:2168 +#: pg_createsubscriber.c:2210 #, c-format msgid "publication \"%s\" specified more than once for --publication" msgstr "პუბლიკაცია \"%s\" მითითებულია ერთზე მეტჯერ პარამეტრისთვის --publication" -#: pg_createsubscriber.c:2177 +#: pg_createsubscriber.c:2219 #, c-format msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "რეპლიკაციის სლოტი \"%s\" მითითებულია ერთზე მეტჯერ პარამეტრისთვის --repilication-slot" -#: pg_createsubscriber.c:2186 +#: pg_createsubscriber.c:2228 #, c-format msgid "subscription \"%s\" specified more than once for --subscription" msgstr "გამოწერა \"%s\" მითითებულია ერთზე მეტჯერ პარამეტრისთვის --subscription" -#: pg_createsubscriber.c:2192 +#: pg_createsubscriber.c:2234 #, c-format msgid "object type \"%s\" specified more than once for --clean" msgstr "პარამეტრისთვის --clean ობიექტის ტიპი \"%s\" ერთზე მეტჯერაა მითითებული" -#: pg_createsubscriber.c:2217 +#: pg_createsubscriber.c:2259 #, c-format -msgid "options %s and -a/--all cannot be used together" -msgstr "პარამეტრებს %s და -a/--all ერთად ვერ გამოიყენებთ" +msgid "options %s and %s cannot be used together" +msgstr "პარამეტრებს %s და -%s ერთად ვერ გამოიყენებთ" -#: pg_createsubscriber.c:2235 +#: pg_createsubscriber.c:2278 #, c-format msgid "no subscriber data directory specified" msgstr "გამომწერის მონაცემების საქაღალდე მითითებული არაა" -#: pg_createsubscriber.c:2246 +#: pg_createsubscriber.c:2289 #, c-format msgid "could not determine current directory" msgstr "მიმდინარე საქაღალდის იდენტიფიკაციის პრობლემა" -#: pg_createsubscriber.c:2263 +#: pg_createsubscriber.c:2306 #, c-format msgid "no publisher connection string specified" msgstr "გამომცემლის მიერთების სტრიქონი მითითებული არაა" -#: pg_createsubscriber.c:2267 +#: pg_createsubscriber.c:2310 #, c-format msgid "validating publisher connection string" msgstr "გამომცემლის მიერთების სტრიქონის გადამოწმება" -#: pg_createsubscriber.c:2273 +#: pg_createsubscriber.c:2316 #, c-format msgid "validating subscriber connection string" msgstr "მიმდინარეობს გამომწერის დაკავშირების სტრიქონის გადამოწმება" -#: pg_createsubscriber.c:2290 +#: pg_createsubscriber.c:2333 #, c-format msgid "no database was specified" msgstr "ბაზა მითითებული არაა" -#: pg_createsubscriber.c:2301 +#: pg_createsubscriber.c:2344 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "ბაზა \"%s\" გამოღებულია გამომცემლის მიერთების სტრიქონიდან" -#: pg_createsubscriber.c:2306 +#: pg_createsubscriber.c:2349 #, c-format msgid "no database name specified" msgstr "ბაზის სახელი მითითებული არაა" -#: pg_createsubscriber.c:2316 +#: pg_createsubscriber.c:2359 #, c-format msgid "wrong number of publication names specified" msgstr "მითითებულია გამოცემის სახელების არასწორი რაოდენობა" -#: pg_createsubscriber.c:2317 +#: pg_createsubscriber.c:2360 #, c-format msgid "The number of specified publication names (%d) must match the number of specified database names (%d)." msgstr "გამოცემის სახელების რაოდენობა (%d) ბაზის სახელების მითითებულ რაოდენობას (%d) უნდა ემთხვეოდეს." -#: pg_createsubscriber.c:2323 +#: pg_createsubscriber.c:2366 #, c-format msgid "wrong number of subscription names specified" msgstr "მითითებულია გამოწერის სახელების არასწორი რაოდენობა" -#: pg_createsubscriber.c:2324 +#: pg_createsubscriber.c:2367 #, c-format msgid "The number of specified subscription names (%d) must match the number of specified database names (%d)." msgstr "მითითებული გამოწერის სახელების რაოდენობა (%d) მითითებული ბაზის სახელების რაოდენობას (%d) უნდა ემთხვეოდეს." -#: pg_createsubscriber.c:2330 +#: pg_createsubscriber.c:2373 #, c-format msgid "wrong number of replication slot names specified" msgstr "მითითებულია რეპლიკაციის სლოტის სახელების არასწორი რაოდენობა" -#: pg_createsubscriber.c:2331 +#: pg_createsubscriber.c:2374 #, c-format msgid "The number of specified replication slot names (%d) must match the number of specified database names (%d)." msgstr "რეპლიკაციის სლოტების მითითებული სახელების რაოდენობა (%d) ბაზის სახელების მითითებულ რაოდენობას (%d) უნდა ემთხვეოდეს." -#: pg_createsubscriber.c:2343 +#: pg_createsubscriber.c:2386 #, c-format -msgid "invalid object type \"%s\" specified for --clean" -msgstr "პარამეტრისთვის --clean მითითებული ობიექტის ტიპი '%s' არასწორია" +msgid "invalid object type \"%s\" specified for %s" +msgstr "%2$s-ისთვის მითითებულია არასწორი ობიექტის ტიპი \"%1$s\"" -#: pg_createsubscriber.c:2344 +#: pg_createsubscriber.c:2388 #, c-format msgid "The valid value is: \"%s\"" msgstr "სწორი მნიშვნელობაა: \"%s\"" -#: pg_createsubscriber.c:2375 +#: pg_createsubscriber.c:2419 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "გამომწერის მონაცემების საქაღალდე წყარო ბაზის კლასტერის ასლი არაა" -#: pg_createsubscriber.c:2388 +#: pg_createsubscriber.c:2432 #, c-format msgid "standby server is running" msgstr "უქმე სერვერი გაშვებულია" -#: pg_createsubscriber.c:2389 +#: pg_createsubscriber.c:2433 #, c-format msgid "Stop the standby server and try again." msgstr "გააჩერეთ უქმე სერვერი და თავიდან სცადეთ." -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2442 #, c-format msgid "starting the standby server with command-line options" msgstr "მიმდინარეობს უქმე სერვერის გაშვება ბრძანების სტრიქონის პარამეტრებით" -#: pg_createsubscriber.c:2414 pg_createsubscriber.c:2449 +#: pg_createsubscriber.c:2458 pg_createsubscriber.c:2493 #, c-format msgid "stopping the subscriber" msgstr "გამომწერის გაჩერება" -#: pg_createsubscriber.c:2428 +#: pg_createsubscriber.c:2472 #, c-format msgid "starting the subscriber" msgstr "გამომწერის გაშვება" -#: pg_createsubscriber.c:2457 +#: pg_createsubscriber.c:2501 #, c-format msgid "Done!" msgstr "შესრულებულია!" @@ -2294,13 +2344,11 @@ msgstr " -S, --slot=SLOTNAME ლოგიკური რეპლიკა #: pg_recvlogical.c:108 #, c-format -#| msgid " -t, --two-phase enable decoding of prepared transactions when creating a slot\n" msgid " -t, --enable-two-phase enable decoding of prepared transactions when creating a slot\n" msgstr " -t, --enable-two-phase მომზადებული ტრანზაქციების დეკოდირების ჩართვა სლოტის შექმნისას\n" #: pg_recvlogical.c:109 #, c-format -#| msgid " --role=ROLE (same as --member-of, deprecated)\n" msgid " --two-phase (same as --enable-two-phase, deprecated)\n" msgstr " --two-phase (იგივე, რაც --enable-two-phase, მოძველებულია)\n" @@ -2739,6 +2787,10 @@ msgstr "შეკუმშვის ნაკადის დახურვი #~ msgstr[0] "WAL-ის სეგმენტის ზომა ორის ხარისხი უნდა იყოს 1 მბ-სა და 1გბ-ს შორის, მაგრამ დაშორებულმა სერვერმა %d ბაიტიანი მნიშვნელობა დააბრუნა" #~ msgstr[1] "WAL-ის სეგმენტის ზომა ორის ხარისხი უნდა იყოს 1 მბ-სა და 1გბ-ს შორის, მაგრამ დაშორებულმა სერვერმა %d ბაიტიანი მნიშვნელობა დააბრუნა" +#, c-format +#~ msgid "could not change system identifier of subscriber: %s" +#~ msgstr "ვერ შევცვალე სისტემურ იდენტიფიკატორი გამომწერისთვის: %s" + #, c-format #~ msgid "could not check file \"%s\"" #~ msgstr "ფაილის შემოწმება შეუძლებელია: %s" @@ -2783,6 +2835,10 @@ msgstr "შეკუმშვის ნაკადის დახურვი #~ msgid "no value specified for --compress, switching to default" #~ msgstr "--compress -ის მნიშვნელობა მითითებული არაა. გამოიყენება ნაგულისხმები" +#, c-format +#~ msgid "options %s and -a/--all cannot be used together" +#~ msgstr "პარამეტრებს %s და -a/--all ერთად ვერ გამოიყენებთ" + #, c-format #~ msgid "primary has replication slot \"%s\"" #~ msgstr "ძირითადს აქვს რეპლიკაციის სლოტი \"%s\"" @@ -2799,6 +2855,10 @@ msgstr "შეკუმშვის ნაკადის დახურვი #~ msgid "subscriber failed to change system identifier: exit code: %d" #~ msgstr "გამომწერის სისტემური იდენტიფიკატორის შეცვლა ჩავარდა: გამოსვლის კოდი: %d" +#, c-format +#~ msgid "subscriber successfully changed the system identifier" +#~ msgstr "გამომწერმა სისტემური იდენტიფიკატორი წარმატებით შეცვალა" + #, c-format #~ msgid "symlinks are not supported on this platform" #~ msgstr "სიმბმულები ამ პლატფორმაზე მხარდაჭერილი არაა" diff --git a/src/bin/pg_basebackup/po/ru.po b/src/bin/pg_basebackup/po/ru.po index 97d1be92f1f..cd458fb7f18 100644 --- a/src/bin/pg_basebackup/po/ru.po +++ b/src/bin/pg_basebackup/po/ru.po @@ -1,13 +1,13 @@ # Russian message translation file for pg_basebackup # Copyright (C) 2012-2016 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_basebackup (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-09 06:28+0200\n" -"PO-Revision-Date: 2025-11-09 08:45+0200\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 09:24+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -1250,9 +1250,9 @@ msgstr "" #: pg_basebackup.c:2713 pg_basebackup.c:2725 pg_basebackup.c:2737 #: pg_basebackup.c:2745 pg_basebackup.c:2758 pg_basebackup.c:2764 #: pg_basebackup.c:2773 pg_basebackup.c:2785 pg_basebackup.c:2796 -#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2260 -#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 -#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 pg_receivewal.c:748 +#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2261 +#: pg_createsubscriber.c:2271 pg_createsubscriber.c:2279 +#: pg_createsubscriber.c:2307 pg_createsubscriber.c:2350 pg_receivewal.c:748 #: pg_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 #: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:861 #: pg_recvlogical.c:873 pg_recvlogical.c:883 pg_recvlogical.c:890 @@ -1263,7 +1263,7 @@ msgstr "" msgid "Try \"%s --help\" for more information." msgstr "Для дополнительной информации попробуйте \"%s --help\"." -#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2269 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -2094,55 +2094,55 @@ msgstr "тип объекта \"%s\" указан в --clean неоднокра #: pg_createsubscriber.c:2259 #, c-format -msgid "options %s and -a/--all cannot be used together" -msgstr "параметры %s и -a/--all исключают друг друга" +msgid "options %s and %s cannot be used together" +msgstr "параметры %s и %s исключают друг друга" -#: pg_createsubscriber.c:2277 +#: pg_createsubscriber.c:2278 #, c-format msgid "no subscriber data directory specified" msgstr "каталог данных подписчика не указан" -#: pg_createsubscriber.c:2288 +#: pg_createsubscriber.c:2289 #, c-format msgid "could not determine current directory" msgstr "не удалось определить текущий каталог" -#: pg_createsubscriber.c:2305 +#: pg_createsubscriber.c:2306 #, c-format msgid "no publisher connection string specified" msgstr "строка подключения к серверу публикации не указана" -#: pg_createsubscriber.c:2309 +#: pg_createsubscriber.c:2310 #, c-format msgid "validating publisher connection string" msgstr "проверяется строка подключения к серверу публикации" -#: pg_createsubscriber.c:2315 +#: pg_createsubscriber.c:2316 #, c-format msgid "validating subscriber connection string" msgstr "проверяется строка подключения к подписчику" -#: pg_createsubscriber.c:2332 +#: pg_createsubscriber.c:2333 #, c-format msgid "no database was specified" msgstr "база данных не указана" -#: pg_createsubscriber.c:2343 +#: pg_createsubscriber.c:2344 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "имя базы \"%s\" извлечено из строки подключения к серверу публикации" -#: pg_createsubscriber.c:2348 +#: pg_createsubscriber.c:2349 #, c-format msgid "no database name specified" msgstr "имя базы данных не указано" -#: pg_createsubscriber.c:2358 +#: pg_createsubscriber.c:2359 #, c-format msgid "wrong number of publication names specified" msgstr "указано неверное количество имён публикаций" -#: pg_createsubscriber.c:2359 +#: pg_createsubscriber.c:2360 #, c-format msgid "" "The number of specified publication names (%d) must match the number of " @@ -2151,12 +2151,12 @@ msgstr "" "Количество указанных имён публикаций (%d) должно совпадать с количеством " "указанных имён баз (%d)." -#: pg_createsubscriber.c:2365 +#: pg_createsubscriber.c:2366 #, c-format msgid "wrong number of subscription names specified" msgstr "указано неверное количество имён подписок" -#: pg_createsubscriber.c:2366 +#: pg_createsubscriber.c:2367 #, c-format msgid "" "The number of specified subscription names (%d) must match the number of " @@ -2165,12 +2165,12 @@ msgstr "" "Количество указанных имён подписок (%d) должно совпадать с количеством " "указанных имён баз (%d)." -#: pg_createsubscriber.c:2372 +#: pg_createsubscriber.c:2373 #, c-format msgid "wrong number of replication slot names specified" msgstr "указано неверное количество имён слотов репликации" -#: pg_createsubscriber.c:2373 +#: pg_createsubscriber.c:2374 #, c-format msgid "" "The number of specified replication slot names (%d) must match the number of " @@ -2179,48 +2179,48 @@ msgstr "" "Количество указанных имён слотов репликации (%d) должно совпадать с " "количеством указанных имён баз (%d)." -#: pg_createsubscriber.c:2385 +#: pg_createsubscriber.c:2386 #, c-format -msgid "invalid object type \"%s\" specified for --clean" -msgstr "в --clean указан неправильный тип объекта \"%s\"" +msgid "invalid object type \"%s\" specified for %s" +msgstr "неправильный тип объекта \"%s\" указан в %s" -#: pg_createsubscriber.c:2386 +#: pg_createsubscriber.c:2388 #, c-format msgid "The valid value is: \"%s\"" msgstr "Допустимое значение: \"%s\"" -#: pg_createsubscriber.c:2417 +#: pg_createsubscriber.c:2419 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "" "каталог данных подписчика не является копией исходного кластера баз данных" -#: pg_createsubscriber.c:2430 +#: pg_createsubscriber.c:2432 #, c-format msgid "standby server is running" msgstr "резервный сервер запущен" -#: pg_createsubscriber.c:2431 +#: pg_createsubscriber.c:2433 #, c-format msgid "Stop the standby server and try again." msgstr "Остановите резервный сервер и повторите попытку." -#: pg_createsubscriber.c:2440 +#: pg_createsubscriber.c:2442 #, c-format msgid "starting the standby server with command-line options" msgstr "резервный сервер запускается с параметрами командной строки" -#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 +#: pg_createsubscriber.c:2458 pg_createsubscriber.c:2493 #, c-format msgid "stopping the subscriber" msgstr "подписчик останавливается" -#: pg_createsubscriber.c:2470 +#: pg_createsubscriber.c:2472 #, c-format msgid "starting the subscriber" msgstr "подписчик запускается" -#: pg_createsubscriber.c:2499 +#: pg_createsubscriber.c:2501 #, c-format msgid "Done!" msgstr "Готово!" diff --git a/src/bin/pg_basebackup/po/sv.po b/src/bin/pg_basebackup/po/sv.po index 1dbd1a951ee..ba3c4f71fc5 100644 --- a/src/bin/pg_basebackup/po/sv.po +++ b/src/bin/pg_basebackup/po/sv.po @@ -1,14 +1,14 @@ # SWEDISH message translation file for pg_basebackup # Copyright (C) 2017 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# Dennis Björklund , 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025. +# Dennis Björklund , 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026. # msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-15 19:19+0000\n" -"PO-Revision-Date: 2025-09-07 15:44+0200\n" +"POT-Creation-Date: 2026-02-03 02:49+0000\n" +"PO-Revision-Date: 2026-02-04 07:12+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -1179,9 +1179,9 @@ msgstr "ogiltig wal-metod-flagga \"%s\", måste vara \"fetch\", \"stream\" eller #: pg_basebackup.c:2713 pg_basebackup.c:2725 pg_basebackup.c:2737 #: pg_basebackup.c:2745 pg_basebackup.c:2758 pg_basebackup.c:2764 #: pg_basebackup.c:2773 pg_basebackup.c:2785 pg_basebackup.c:2796 -#: pg_basebackup.c:2804 pg_createsubscriber.c:2205 pg_createsubscriber.c:2227 -#: pg_createsubscriber.c:2237 pg_createsubscriber.c:2245 -#: pg_createsubscriber.c:2273 pg_createsubscriber.c:2316 pg_receivewal.c:748 +#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2261 +#: pg_createsubscriber.c:2271 pg_createsubscriber.c:2279 +#: pg_createsubscriber.c:2307 pg_createsubscriber.c:2350 pg_receivewal.c:748 #: pg_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 #: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:861 #: pg_recvlogical.c:873 pg_recvlogical.c:883 pg_recvlogical.c:890 @@ -1192,7 +1192,7 @@ msgstr "ogiltig wal-metod-flagga \"%s\", måste vara \"fetch\", \"stream\" eller msgid "Try \"%s --help\" for more information." msgstr "Försök med \"%s --help\" för mer information." -#: pg_basebackup.c:2585 pg_createsubscriber.c:2235 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2269 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1310,7 +1310,7 @@ msgstr "Släng denna publiceringen innan du försöker igen." msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "replikeringsslotten \"%s\" som skapades i databasen \"%s\" på primären har lämnats kvar" -#: pg_createsubscriber.c:231 pg_createsubscriber.c:1314 +#: pg_createsubscriber.c:231 pg_createsubscriber.c:1324 #, c-format msgid "Drop this replication slot soon to avoid retention of WAL files." msgstr "Släng denna replikeringsslot inom kort för att undvika att WAL-filer köas upp." @@ -1504,7 +1504,7 @@ msgstr "hämtar systemidentifierare från prenumeranten" msgid "control file appears to be corrupt" msgstr "kontrollfilen verkar vara trasig" -#: pg_createsubscriber.c:645 pg_createsubscriber.c:685 +#: pg_createsubscriber.c:645 pg_createsubscriber.c:688 #, c-format msgid "system identifier is % on subscriber" msgstr "systemidentifieraren är % hos prenumeranten" @@ -1514,496 +1514,546 @@ msgstr "systemidentifieraren är % hos prenumeranten" msgid "modifying system identifier of subscriber" msgstr "uppdaterar systemidentifieraren för prenumeranten" -#: pg_createsubscriber.c:688 +#: pg_createsubscriber.c:683 +#, c-format +msgid "dry-run: would set system identifier to % on subscriber" +msgstr "provkörning: skulle sätta systemidentifieraren till % hos prenumeranten" + +#: pg_createsubscriber.c:693 +#, c-format +msgid "dry-run: would run pg_resetwal on the subscriber" +msgstr "provkörning: skulle köra pg_resetwal på prenumeranten" + +#: pg_createsubscriber.c:695 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "kör pg_resetwal på prenumeranten" -#: pg_createsubscriber.c:700 +#: pg_createsubscriber.c:707 #, c-format -msgid "subscriber successfully changed the system identifier" -msgstr "prenumeranten lyckades ändra systemidentifieraren" +msgid "successfully reset WAL on the subscriber" +msgstr "lyckades resetta WAL hos prenumeranten" -#: pg_createsubscriber.c:702 +#: pg_createsubscriber.c:709 #, c-format -msgid "could not change system identifier of subscriber: %s" -msgstr "kunde inte ändra systemidentifierare för prenumerant: %s" +msgid "could not reset WAL on subscriber: %s" +msgstr "kunde inte resetta WAL hos prenumerant: %s" -#: pg_createsubscriber.c:726 +#: pg_createsubscriber.c:733 #, c-format msgid "could not obtain database OID: %s" msgstr "kunde inte hämta databas-OID: %s" -#: pg_createsubscriber.c:733 +#: pg_createsubscriber.c:740 #, c-format msgid "could not obtain database OID: got %d rows, expected %d row" msgstr "kunde inte hämta databas-OID: fick %d rader, förväntade %d rad" -#: pg_createsubscriber.c:805 +#: pg_createsubscriber.c:812 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "skapa replikerings-slot \"%s\" på publicerare" -#: pg_createsubscriber.c:825 +#: pg_createsubscriber.c:832 #, c-format msgid "could not write an additional WAL record: %s" msgstr "kunde inte läsa ytterligare en WAL-post: %s" -#: pg_createsubscriber.c:851 +#: pg_createsubscriber.c:858 #, c-format msgid "could not obtain recovery progress: %s" msgstr "kunde inte hämta progress för återställning: %s" -#: pg_createsubscriber.c:884 +#: pg_createsubscriber.c:891 #, c-format msgid "checking settings on publisher" msgstr "kontrollerar inställningar på publicerare" -#: pg_createsubscriber.c:894 +#: pg_createsubscriber.c:901 #, c-format msgid "primary server cannot be in recovery" msgstr "primära servern kan inte vara i återställningsläge" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:927 #, c-format msgid "could not obtain publisher settings: %s" msgstr "kunde inte hämta inställningar för publicerare: %s" -#: pg_createsubscriber.c:949 +#: pg_createsubscriber.c:956 #, c-format msgid "publisher requires \"wal_level\" >= \"logical\"" msgstr "publiceraren kräver \"wal_level\" >= \"logical\"" -#: pg_createsubscriber.c:955 +#: pg_createsubscriber.c:962 #, c-format msgid "publisher requires %d replication slots, but only %d remain" msgstr "publicerare kräver %d replikeringssslottar men bara %d återstår" -#: pg_createsubscriber.c:957 pg_createsubscriber.c:966 -#: pg_createsubscriber.c:1076 pg_createsubscriber.c:1085 -#: pg_createsubscriber.c:1094 +#: pg_createsubscriber.c:964 pg_createsubscriber.c:973 +#: pg_createsubscriber.c:1083 pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1101 #, c-format msgid "Increase the configuration parameter \"%s\" to at least %d." msgstr "Öka konfigurationsparametern \"%s\" till minst %d." -#: pg_createsubscriber.c:964 +#: pg_createsubscriber.c:971 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "publicerare kräver %d WAL-skickar-processer men bara %d återstår" -#: pg_createsubscriber.c:973 +#: pg_createsubscriber.c:980 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "flaggan two_phase kommer inte aktiveras för replikeringsslottar" -#: pg_createsubscriber.c:974 +#: pg_createsubscriber.c:981 #, c-format msgid "Subscriptions will be created with the two_phase option disabled. Prepared transactions will be replicated at COMMIT PREPARED." msgstr "Prenumerationer kommer skapas med flaggan two_phase avaktiverad. Förberedda transaktioner kommer replikeras vid COMMIT PREPARED." -#: pg_createsubscriber.c:976 +#: pg_createsubscriber.c:983 #, c-format msgid "You can use the command-line option --enable-two-phase to enable two_phase." msgstr "Du kan använda kommandoradsflaggan --enable-two-phase för att slå på two_phase." -#: pg_createsubscriber.c:986 +#: pg_createsubscriber.c:993 #, c-format msgid "required WAL could be removed from the publisher" msgstr "WAL som krävdes kan tas bort från publiceraren" -#: pg_createsubscriber.c:987 +#: pg_createsubscriber.c:994 #, c-format msgid "Set the configuration parameter \"%s\" to -1 to ensure that required WAL files are not prematurely removed." msgstr "Sätt konfigurationsparametern \"%s\" till -1 för att säkertställa att WAL-filer som krävs inte tas bort för tidigt." -#: pg_createsubscriber.c:1019 +#: pg_createsubscriber.c:1026 #, c-format msgid "checking settings on subscriber" msgstr "kontrollerar inställningar på prenumeranten" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1033 #, c-format msgid "target server must be a standby" msgstr "målserver måste vara en standby" -#: pg_createsubscriber.c:1050 +#: pg_createsubscriber.c:1057 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "kunde inte hämta inställningar för prenumerant: %s" -#: pg_createsubscriber.c:1074 +#: pg_createsubscriber.c:1081 #, c-format msgid "subscriber requires %d active replication origins, but only %d remain" msgstr "prenumerant kräver %d aktiva replikerings-origin men bara %d återstår" -#: pg_createsubscriber.c:1083 +#: pg_createsubscriber.c:1090 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "prenumerant kräver %d logiska replikeringsprocesser men bara %d återstår" -#: pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1099 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "prenumerant kräver %d arbetsprocesser men bara %d återstår" -#: pg_createsubscriber.c:1127 +#: pg_createsubscriber.c:1135 +#, c-format +msgid "dry-run: would drop subscription \"%s\" in database \"%s\"" +msgstr "provkörning: skulle slänga prenumeration \"%s\" i databasen \"%s\"" + +#: pg_createsubscriber.c:1139 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "slänger prenumeration \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1136 +#: pg_createsubscriber.c:1146 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "kunde inte slänga prenumeration \"%s\": %s" -#: pg_createsubscriber.c:1171 +#: pg_createsubscriber.c:1181 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "kunde inte hämta redan existerande prenumerationer: %s" -#: pg_createsubscriber.c:1312 +#: pg_createsubscriber.c:1322 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "kunde inte slänga replikeringsslotten \"%s\" på primären" -#: pg_createsubscriber.c:1346 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "kunde inte hämta replikeringsslottens information för failover: %s" -#: pg_createsubscriber.c:1348 pg_createsubscriber.c:1357 +#: pg_createsubscriber.c:1358 pg_createsubscriber.c:1367 #, c-format msgid "Drop the failover replication slots on subscriber soon to avoid retention of WAL files." msgstr "Släng replikeringsslottar för failover på prenumeranten inom kort för att undvika att köa upp WAL-filer." -#: pg_createsubscriber.c:1356 +#: pg_createsubscriber.c:1366 #, c-format msgid "could not drop failover replication slot" msgstr "kunde inte slänga replikeringsslot för failover" -#: pg_createsubscriber.c:1378 +#: pg_createsubscriber.c:1389 +#, c-format +msgid "dry-run: would create the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "provkörning: skulle skapa replikeringsslot \"%s\" i databasen \"%s\" på publiceraren" + +#: pg_createsubscriber.c:1392 #, c-format -msgid "creating the replication slot \"%s\" in database \"%s\"" -msgstr "skapar replikeringsslot \"%s\" i databasen \"%s\"" +msgid "creating the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "skapar replikeringsslot \"%s\" i databasen \"%s\" på publiceraren" -#: pg_createsubscriber.c:1397 +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "kunde inte skapa replikeringsslot \"%s\" i databasen \"%s\": %s" -#: pg_createsubscriber.c:1427 +#: pg_createsubscriber.c:1442 +#, c-format +msgid "dry-run: would drop the replication slot \"%s\" in database \"%s\"" +msgstr "provkörning: skulle slänga replikeringsslot \"%s\" i databasen \"%s\"" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "slänger replikeringsslot \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1443 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "kunde inte slänga replikeringsslot \"%s\" i databasen \"%s\": %s" -#: pg_createsubscriber.c:1464 +#: pg_createsubscriber.c:1482 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "pg_ctl avslutade med felkod %d" -#: pg_createsubscriber.c:1469 +#: pg_createsubscriber.c:1487 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl avslutades med avbrott 0x%X" -#: pg_createsubscriber.c:1471 +#: pg_createsubscriber.c:1489 #, c-format msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value." msgstr "Se C-include-fil \"ntstatus.h\" för en beskrivning av det hexdecimala värdet." -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1491 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl terminerades av signal %d: %s" -#: pg_createsubscriber.c:1479 +#: pg_createsubscriber.c:1497 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl avslutade med okänd statuskod %d" -#: pg_createsubscriber.c:1482 +#: pg_createsubscriber.c:1500 #, c-format msgid "The failed command was: %s" msgstr "Det misslyckade kommandot var: %s" -#: pg_createsubscriber.c:1532 +#: pg_createsubscriber.c:1550 #, c-format msgid "server was started" msgstr "servern startad" -#: pg_createsubscriber.c:1547 +#: pg_createsubscriber.c:1565 #, c-format msgid "server was stopped" msgstr "servern är stoppad" -#: pg_createsubscriber.c:1566 +#: pg_createsubscriber.c:1584 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "väntar på att målservern skall komma till ett konsistent läge" -#: pg_createsubscriber.c:1589 +#: pg_createsubscriber.c:1602 #, c-format msgid "recovery timed out" msgstr "timeout vid återställning" -#: pg_createsubscriber.c:1602 +#: pg_createsubscriber.c:1615 #, c-format msgid "server did not end recovery" msgstr "servern avslutade inte återställning" -#: pg_createsubscriber.c:1604 +#: pg_createsubscriber.c:1617 #, c-format msgid "target server reached the consistent state" msgstr "målservern har nått ett konsistent läge" -#: pg_createsubscriber.c:1605 +#: pg_createsubscriber.c:1618 #, c-format msgid "If pg_createsubscriber fails after this point, you must recreate the physical replica before continuing." msgstr "" "Om pg_createsubscriber misslyckas efter denna punkt så måste du\n" "återskapa den fysiska replikan innan du fortsätter." -#: pg_createsubscriber.c:1632 pg_createsubscriber.c:1755 +#: pg_createsubscriber.c:1645 pg_createsubscriber.c:1776 #, c-format msgid "could not obtain publication information: %s" msgstr "kunde inte hämta publiceringsinformation: %s" -#: pg_createsubscriber.c:1646 +#: pg_createsubscriber.c:1659 #, c-format msgid "publication \"%s\" already exists" msgstr "publicering \"%s\" finns redan" -#: pg_createsubscriber.c:1647 +#: pg_createsubscriber.c:1660 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Överväg att byta namn på denna publicering innan fortsättning." -#: pg_createsubscriber.c:1654 +#: pg_createsubscriber.c:1668 +#, c-format +msgid "dry-run: would create publication \"%s\" in database \"%s\"" +msgstr "provkörning: skulle skapa publicering \"%s\" i databasen \"%s\"" + +#: pg_createsubscriber.c:1671 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "skapar puiblicering \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1667 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "kunde inte skapa publicering \"%s\" i databasen \"%s\": %s" -#: pg_createsubscriber.c:1697 +#: pg_createsubscriber.c:1715 +#, c-format +msgid "dry-run: would drop publication \"%s\" in database \"%s\"" +msgstr "provkörning: skulle slänga publiceringen \"%s\" i databasen \"%s\"" + +#: pg_createsubscriber.c:1718 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "slänger publiceringen \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1711 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "kunde inte slänga publiceringen \"%s\" i databasen \"%s\": %s" -#: pg_createsubscriber.c:1748 +#: pg_createsubscriber.c:1769 #, c-format msgid "dropping all existing publications in database \"%s\"" msgstr "slänger alla existerande publiceringar i databasen \"%s\"" -#: pg_createsubscriber.c:1806 +#: pg_createsubscriber.c:1828 +#, c-format +msgid "dry-run: would create subscription \"%s\" in database \"%s\"" +msgstr "provkörning: skulle skapa prenumeration \"%s\" i databasen \"%s\"" + +#: pg_createsubscriber.c:1831 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "skapar prenumeration \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1828 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "kunde inte skapa prenumeration \"%s\" i databasen \"%s\": %s" -#: pg_createsubscriber.c:1873 +#: pg_createsubscriber.c:1898 #, c-format msgid "could not obtain subscription OID: %s" msgstr "kunde inte hämta prenumerations-OID: %s" -#: pg_createsubscriber.c:1880 +#: pg_createsubscriber.c:1905 #, c-format msgid "could not obtain subscription OID: got %d rows, expected %d row" msgstr "kunde inte hämta prenumerations-OID: fick %d rader, förväntade %d rad" -#: pg_createsubscriber.c:1904 +#: pg_createsubscriber.c:1930 +#, c-format +msgid "dry-run: would set the replication progress (node name \"%s\", LSN %s) in database \"%s\"" +msgstr "provkörning: skulle sätta progress för replikering (nod-namn \"%s\", LSN %s) i databasen \"%s\"" + +#: pg_createsubscriber.c:1933 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "sätter progress för replikering (nod-namn \"%s\", LSN %s) i databasen \"%s\"" -#: pg_createsubscriber.c:1919 +#: pg_createsubscriber.c:1948 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "kunde inte sätta progress för replikering till prenumeration \"%s\": %s" -#: pg_createsubscriber.c:1950 +#: pg_createsubscriber.c:1980 +#, c-format +msgid "dry-run: would enable subscription \"%s\" in database \"%s\"" +msgstr "provkörning: skulle aktivera prenumeration \"%s\" i databasen \"%s\"" + +#: pg_createsubscriber.c:1983 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "aktiverar prenumeration \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1962 +#: pg_createsubscriber.c:1995 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "kunde inte aktivera prenumerationen \"%s\": %s" -#: pg_createsubscriber.c:2008 +#: pg_createsubscriber.c:2041 #, c-format msgid "could not obtain a list of databases: %s" msgstr "kunde inte hämta en lista med databaser: %s" -#: pg_createsubscriber.c:2112 +#: pg_createsubscriber.c:2145 #, c-format msgid "cannot be executed by \"root\"" msgstr "kan inte köras av \"root\"" -#: pg_createsubscriber.c:2113 +#: pg_createsubscriber.c:2146 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Du måste köra %s som PostgreSQL:s superuser." -#: pg_createsubscriber.c:2136 +#: pg_createsubscriber.c:2169 #, c-format msgid "database \"%s\" specified more than once for -d/--database" msgstr "databasen \"%s\" angiven mer än en gång för -d/--database" -#: pg_createsubscriber.c:2177 +#: pg_createsubscriber.c:2210 #, c-format msgid "publication \"%s\" specified more than once for --publication" msgstr "publicering \"%s\" angiven mer än en gång för --publication" -#: pg_createsubscriber.c:2186 +#: pg_createsubscriber.c:2219 #, c-format msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "replikeringsslott \"%s\" angiven mer än en gång för --replication-slot" -#: pg_createsubscriber.c:2195 +#: pg_createsubscriber.c:2228 #, c-format msgid "subscription \"%s\" specified more than once for --subscription" msgstr "prenumeration \"%s\" angiven mer än en gång för --subscription" -#: pg_createsubscriber.c:2201 +#: pg_createsubscriber.c:2234 #, c-format msgid "object type \"%s\" specified more than once for --clean" msgstr "objekttypen \"%s\" angiven mer än en gång för --clean" -#: pg_createsubscriber.c:2226 +#: pg_createsubscriber.c:2259 #, c-format -msgid "options %s and -a/--all cannot be used together" -msgstr "flaggorna %s och -a/--all kan inte användas tillsammans" +msgid "options %s and %s cannot be used together" +msgstr "flaggorna %s och %s kan inte användas tillsammans" -#: pg_createsubscriber.c:2244 +#: pg_createsubscriber.c:2278 #, c-format msgid "no subscriber data directory specified" msgstr "ingen datakatalog för prenumeration angiven" -#: pg_createsubscriber.c:2255 +#: pg_createsubscriber.c:2289 #, c-format msgid "could not determine current directory" msgstr "kunde inte bestämma aktuell katalog" -#: pg_createsubscriber.c:2272 +#: pg_createsubscriber.c:2306 #, c-format msgid "no publisher connection string specified" msgstr "ingen anslutningssträng angiven för publicerare" -#: pg_createsubscriber.c:2276 +#: pg_createsubscriber.c:2310 #, c-format msgid "validating publisher connection string" msgstr "validerar publicerares anslutningssträng" -#: pg_createsubscriber.c:2282 +#: pg_createsubscriber.c:2316 #, c-format msgid "validating subscriber connection string" msgstr "validerar prenumerants anslutningssträng" -#: pg_createsubscriber.c:2299 +#: pg_createsubscriber.c:2333 #, c-format msgid "no database was specified" msgstr "ingen databas angavs" -#: pg_createsubscriber.c:2310 +#: pg_createsubscriber.c:2344 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "databasnamn \"%s\" extraherades från publicistens anslutningssträng" -#: pg_createsubscriber.c:2315 +#: pg_createsubscriber.c:2349 #, c-format msgid "no database name specified" msgstr "inget databasnamn angavs" -#: pg_createsubscriber.c:2325 +#: pg_createsubscriber.c:2359 #, c-format msgid "wrong number of publication names specified" msgstr "fel antal namn på publicister angavs" -#: pg_createsubscriber.c:2326 +#: pg_createsubscriber.c:2360 #, c-format msgid "The number of specified publication names (%d) must match the number of specified database names (%d)." msgstr "Antalet angivna namn på publicister (%d) måste matcha antalet angivna namn på databaser (%d)." -#: pg_createsubscriber.c:2332 +#: pg_createsubscriber.c:2366 #, c-format msgid "wrong number of subscription names specified" msgstr "fel antal namn på prenumeranter angivna" -#: pg_createsubscriber.c:2333 +#: pg_createsubscriber.c:2367 #, c-format msgid "The number of specified subscription names (%d) must match the number of specified database names (%d)." msgstr "Antalet angivna namn på prenumeranter (%d) måste matcha antalet angivna namn på databaser (%d)." -#: pg_createsubscriber.c:2339 +#: pg_createsubscriber.c:2373 #, c-format msgid "wrong number of replication slot names specified" msgstr "fel antal namn på replikeringsslottar angivet" -#: pg_createsubscriber.c:2340 +#: pg_createsubscriber.c:2374 #, c-format msgid "The number of specified replication slot names (%d) must match the number of specified database names (%d)." msgstr "Antalet angivna namn på replikeringsslottar (%d) måste matcha antalet angivna namn på databaser (%d)." -#: pg_createsubscriber.c:2352 +#: pg_createsubscriber.c:2386 #, c-format -msgid "invalid object type \"%s\" specified for --clean" -msgstr "ogiltigt objekttyp \"%s\" angivet för --clean" +msgid "invalid object type \"%s\" specified for %s" +msgstr "ogiltigt objekttyp \"%s\" angivet för %s" -#: pg_createsubscriber.c:2353 +#: pg_createsubscriber.c:2388 #, c-format msgid "The valid value is: \"%s\"" msgstr "Giltigt värde är: \"%s\"" -#: pg_createsubscriber.c:2384 +#: pg_createsubscriber.c:2419 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "prenumerantens datakatalog är inte en kopia på källdatabasens kluster" -#: pg_createsubscriber.c:2397 +#: pg_createsubscriber.c:2432 #, c-format msgid "standby server is running" msgstr "standby-servern kör" -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2433 #, c-format msgid "Stop the standby server and try again." msgstr "Stoppa standby-servern och försök igen." -#: pg_createsubscriber.c:2407 +#: pg_createsubscriber.c:2442 #, c-format msgid "starting the standby server with command-line options" msgstr "startar standby-server med kommandoradsflaggor" -#: pg_createsubscriber.c:2423 pg_createsubscriber.c:2458 +#: pg_createsubscriber.c:2458 pg_createsubscriber.c:2493 #, c-format msgid "stopping the subscriber" msgstr "stoppar prenumeranten" -#: pg_createsubscriber.c:2437 +#: pg_createsubscriber.c:2472 #, c-format msgid "starting the subscriber" msgstr "startar prenumeranten" -#: pg_createsubscriber.c:2466 +#: pg_createsubscriber.c:2501 #, c-format msgid "Done!" msgstr "Klar!" diff --git a/src/bin/pg_basebackup/po/uk.po b/src/bin/pg_basebackup/po/uk.po index 09cd1a552dd..c48e6b496e6 100644 --- a/src/bin/pg_basebackup/po/uk.po +++ b/src/bin/pg_basebackup/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:20+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:20+0000\n" +"PO-Revision-Date: 2026-01-02 14:40\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,33 +14,34 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_basebackup.pot\n" -"X-Crowdin-File-ID: 1006\n" +"X-Crowdin-File: /REL_18_STABLE/pg_basebackup.pot\n" +"X-Crowdin-File-ID: 1063\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 bbstreamer_gzip.c:116 bbstreamer_gzip.c:249 -#: bbstreamer_lz4.c:100 bbstreamer_lz4.c:298 bbstreamer_zstd.c:129 -#: bbstreamer_zstd.c:284 +#: ../../common/compression.c:150 ../../fe_utils/astreamer_gzip.c:140 +#: ../../fe_utils/astreamer_gzip.c:273 ../../fe_utils/astreamer_lz4.c:102 +#: ../../fe_utils/astreamer_lz4.c:300 ../../fe_utils/astreamer_zstd.c:133 +#: ../../fe_utils/astreamer_zstd.c:288 #, c-format msgid "this build does not support compression with %s" msgstr "ця збірка не підтримує стиснення з %s" @@ -94,7 +95,7 @@ msgstr "алгоритм стиснення \"%s\" не підтримує ре msgid "could not open file \"%s\" for reading: %m" msgstr "не вдалося відкрити файл \"%s\" для читання: %m" -#: ../../common/controldata_utils.c:110 pg_basebackup.c:1873 +#: ../../common/controldata_utils.c:110 pg_basebackup.c:1874 #: pg_receivewal.c:402 #, c-format msgid "could not read file \"%s\": %m" @@ -106,7 +107,7 @@ msgid "could not read file \"%s\": read %d of %zu" msgstr "не вдалося прочитати файл \"%s\": прочитано %d з %zu" #: ../../common/controldata_utils.c:132 ../../common/controldata_utils.c:280 -#: bbstreamer_file.c:138 pg_recvlogical.c:650 +#: ../../fe_utils/astreamer_file.c:141 pg_recvlogical.c:653 #, c-format msgid "could not close file \"%s\": %m" msgstr "неможливо закрити файл \"%s\": %m" @@ -124,10 +125,10 @@ msgid "possible byte ordering mismatch\n" msgstr "можлива помилка у послідовності байтів.\n" "Порядок байтів, що використовують для зберігання файлу pg_control, може не відповідати тому, який використовується цією програмою. У такому випадку результати нижче будуть неправильним, і інсталяція PostgreSQL буде несумісною з цим каталогом даних." -#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:70 -#: ../../common/file_utils.c:347 ../../common/file_utils.c:406 -#: ../../common/file_utils.c:480 ../../fe_utils/recovery_gen.c:140 -#: pg_basebackup.c:1846 pg_receivewal.c:386 +#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 +#: ../../common/file_utils.c:370 ../../common/file_utils.c:428 +#: ../../common/file_utils.c:502 ../../fe_utils/recovery_gen.c:141 +#: pg_basebackup.c:1847 pg_receivewal.c:386 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" @@ -137,8 +138,8 @@ msgstr "не можливо відкрити файл \"%s\": %m" msgid "could not write file \"%s\": %m" msgstr "не вдалося записати файл \"%s\": %m" -#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:418 -#: ../../common/file_utils.c:488 pg_recvlogical.c:204 +#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:440 +#: ../../common/file_utils.c:510 pg_recvlogical.c:206 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" @@ -154,36 +155,36 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 -#: pg_receivewal.c:319 pg_recvlogical.c:352 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 +#: pg_receivewal.c:319 pg_recvlogical.c:354 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 #: pg_receivewal.c:242 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #: pg_receivewal.c:471 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:498 pg_basebackup.c:2344 walmethods.c:462 +#: ../../common/file_utils.c:520 pg_basebackup.c:2345 walmethods.c:462 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -218,191 +219,200 @@ msgstr "не вдалося перезапустити з обмеженим т msgid "could not get exit code from subprocess: error code %lu" msgstr "не вдалося отримати код завершення підпроцесу: код помилки %lu" -#: ../../fe_utils/option_utils.c:69 -#, c-format -msgid "invalid value \"%s\" for option %s" -msgstr "неприпустиме значення \"%s\" для параметра %s" - -#: ../../fe_utils/option_utils.c:76 -#, c-format -msgid "%s must be in range %d..%d" -msgstr "%s має бути в діапазоні %d..%d" - -#: ../../fe_utils/option_utils.c:106 -#, c-format -msgid "unrecognized sync method: %s" -msgstr "нерозпізнаний метод синхронізації: %s" - -#: ../../fe_utils/recovery_gen.c:39 ../../fe_utils/recovery_gen.c:50 -#: ../../fe_utils/recovery_gen.c:89 ../../fe_utils/recovery_gen.c:109 -#: ../../fe_utils/recovery_gen.c:168 pg_basebackup.c:1636 streamutil.c:331 -#, c-format -msgid "out of memory" -msgstr "недостатньо пам'яті" - -#: ../../fe_utils/recovery_gen.c:143 bbstreamer_file.c:121 -#: bbstreamer_file.c:258 pg_basebackup.c:1433 pg_basebackup.c:1727 -#, c-format -msgid "could not write to file \"%s\": %m" -msgstr "неможливо записати до файлу \"%s\": %m" - -#: ../../fe_utils/recovery_gen.c:152 bbstreamer_file.c:93 bbstreamer_file.c:361 -#: pg_basebackup.c:1497 pg_basebackup.c:1706 +#: ../../fe_utils/astreamer_file.c:96 ../../fe_utils/astreamer_file.c:364 +#: ../../fe_utils/recovery_gen.c:153 pg_basebackup.c:1498 pg_basebackup.c:1707 #, c-format msgid "could not create file \"%s\": %m" msgstr "неможливо створити файл \"%s\": %m" -#: ../../fe_utils/string_utils.c:434 -#, c-format -msgid "shell command argument contains a newline or carriage return: \"%s\"\n" -msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" - -#: ../../fe_utils/string_utils.c:607 +#: ../../fe_utils/astreamer_file.c:124 ../../fe_utils/astreamer_file.c:261 +#: ../../fe_utils/recovery_gen.c:144 pg_basebackup.c:1434 pg_basebackup.c:1728 #, c-format -msgid "database name contains a newline or carriage return: \"%s\"\n" -msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" +msgid "could not write to file \"%s\": %m" +msgstr "неможливо записати до файлу \"%s\": %m" -#: bbstreamer_file.c:275 +#: ../../fe_utils/astreamer_file.c:278 #, c-format msgid "unexpected state while extracting archive" msgstr "неочікуваний стан під час розпакування архіву" -#: bbstreamer_file.c:321 pg_basebackup.c:698 pg_basebackup.c:712 -#: pg_basebackup.c:757 +#: ../../fe_utils/astreamer_file.c:324 pg_basebackup.c:699 pg_basebackup.c:713 +#: pg_basebackup.c:758 #, c-format msgid "could not create directory \"%s\": %m" msgstr "не вдалося створити каталог \"%s\": %m" -#: bbstreamer_file.c:326 +#: ../../fe_utils/astreamer_file.c:329 #, c-format msgid "could not set permissions on directory \"%s\": %m" msgstr "не вдалося встановити права для каталогу \"%s\": %m" -#: bbstreamer_file.c:345 +#: ../../fe_utils/astreamer_file.c:348 #, c-format msgid "could not create symbolic link from \"%s\" to \"%s\": %m" msgstr "не вдалося створити символічне послання з \"%s\" на \"%s\": %m" -#: bbstreamer_file.c:365 +#: ../../fe_utils/astreamer_file.c:368 #, c-format msgid "could not set permissions on file \"%s\": %m" msgstr "не вдалося встановити права на файл \"%s\": %m" -#: bbstreamer_gzip.c:95 +#: ../../fe_utils/astreamer_gzip.c:115 #, c-format msgid "could not create compressed file \"%s\": %m" msgstr "не вдалося створити стиснутий файл \"%s\": %m" -#: bbstreamer_gzip.c:103 +#: ../../fe_utils/astreamer_gzip.c:127 #, c-format msgid "could not duplicate stdout: %m" msgstr "не вдалося дублювати stdout: %m" -#: bbstreamer_gzip.c:107 +#: ../../fe_utils/astreamer_gzip.c:131 #, c-format msgid "could not open output file: %m" msgstr "не вдалося відкрити вихідний файл: %m" -#: bbstreamer_gzip.c:111 +#: ../../fe_utils/astreamer_gzip.c:135 #, c-format msgid "could not set compression level %d: %s" msgstr "не вдалося встановити рівень стискання %d: %s" -#: bbstreamer_gzip.c:143 +#: ../../fe_utils/astreamer_gzip.c:167 #, c-format msgid "could not write to compressed file \"%s\": %s" msgstr "не вдалося записати до стиснутого файлу \"%s\": %s" -#: bbstreamer_gzip.c:167 +#: ../../fe_utils/astreamer_gzip.c:191 #, c-format msgid "could not close compressed file \"%s\": %m" msgstr "не вдалося закрити стиснутий файл \"%s\": %m" -#: bbstreamer_gzip.c:245 walmethods.c:880 +#: ../../fe_utils/astreamer_gzip.c:269 walmethods.c:880 #, c-format msgid "could not initialize compression library" msgstr "не вдалося ініціалізувати бібліотеку стискання" -#: bbstreamer_gzip.c:296 bbstreamer_lz4.c:354 bbstreamer_zstd.c:329 +#: ../../fe_utils/astreamer_gzip.c:320 ../../fe_utils/astreamer_lz4.c:356 +#: ../../fe_utils/astreamer_zstd.c:333 #, c-format msgid "could not decompress data: %s" msgstr "не вдалося розпакувати дані: %s" -#: bbstreamer_inject.c:189 -#, c-format -msgid "unexpected state while injecting recovery settings" -msgstr "неочікуваний стан під час введення налаштувань відновлення" - -#: bbstreamer_lz4.c:95 +#: ../../fe_utils/astreamer_lz4.c:97 #, c-format msgid "could not create lz4 compression context: %s" msgstr "не вдалося створити контекст стиснення lz4: %s" -#: bbstreamer_lz4.c:140 +#: ../../fe_utils/astreamer_lz4.c:142 #, c-format msgid "could not write lz4 header: %s" msgstr "не вдалося записати заголовок lz4: %s" -#: bbstreamer_lz4.c:189 bbstreamer_zstd.c:181 bbstreamer_zstd.c:223 +#: ../../fe_utils/astreamer_lz4.c:191 ../../fe_utils/astreamer_zstd.c:185 +#: ../../fe_utils/astreamer_zstd.c:227 #, c-format msgid "could not compress data: %s" msgstr "не вдалося стиснути дані: %s" -#: bbstreamer_lz4.c:241 +#: ../../fe_utils/astreamer_lz4.c:243 #, c-format msgid "could not end lz4 compression: %s" msgstr "не вдалося закінчити стискання lz4: %s" -#: bbstreamer_lz4.c:293 +#: ../../fe_utils/astreamer_lz4.c:295 #, c-format msgid "could not initialize compression library: %s" msgstr "не вдалося ініціалізувати бібліотеку стиснення: %s" -#: bbstreamer_tar.c:244 +#: ../../fe_utils/astreamer_tar.c:244 #, c-format msgid "tar file trailer exceeds 2 blocks" msgstr "причіп файлу tar перевищує 2 блоки" -#: bbstreamer_tar.c:249 +#: ../../fe_utils/astreamer_tar.c:249 #, c-format msgid "unexpected state while parsing tar archive" msgstr "неочікуваний стан під час розбору архіву tar" -#: bbstreamer_tar.c:292 +#: ../../fe_utils/astreamer_tar.c:292 #, c-format msgid "tar member has empty name" msgstr "частина tar містить порожню назву" -#: bbstreamer_tar.c:326 +#: ../../fe_utils/astreamer_tar.c:326 #, c-format msgid "COPY stream ended before last file was finished" msgstr "потік COPY завершився до завершення останнього файлу" -#: bbstreamer_zstd.c:85 +#: ../../fe_utils/astreamer_zstd.c:89 #, c-format msgid "could not create zstd compression context" msgstr "не вдалося створити контекст стиснення zstd" -#: bbstreamer_zstd.c:91 +#: ../../fe_utils/astreamer_zstd.c:95 #, c-format msgid "could not set zstd compression level to %d: %s" msgstr "не вдалося встановити рівень стискання zstd на %d: %s" -#: bbstreamer_zstd.c:105 +#: ../../fe_utils/astreamer_zstd.c:109 #, c-format msgid "could not set compression worker count to %d: %s" msgstr "не вдалося встановити кількість процесів стискання на %d: %s" -#: bbstreamer_zstd.c:116 +#: ../../fe_utils/astreamer_zstd.c:120 #, c-format msgid "could not enable long-distance mode: %s" msgstr "не вдалося включити режим довгої відстані: %s" -#: bbstreamer_zstd.c:275 +#: ../../fe_utils/astreamer_zstd.c:279 #, c-format msgid "could not create zstd decompression context" msgstr "не вдалося створити контекст zstd декомпресії" +#: ../../fe_utils/option_utils.c:69 +#, c-format +msgid "invalid value \"%s\" for option %s" +msgstr "неприпустиме значення \"%s\" для параметра %s" + +#: ../../fe_utils/option_utils.c:76 +#, c-format +msgid "%s must be in range %d..%d" +msgstr "%s має бути в діапазоні %d..%d" + +#: ../../fe_utils/option_utils.c:106 +#, c-format +msgid "unrecognized sync method: %s" +msgstr "нерозпізнаний метод синхронізації: %s" + +#: ../../fe_utils/recovery_gen.c:40 ../../fe_utils/recovery_gen.c:51 +#: ../../fe_utils/recovery_gen.c:90 ../../fe_utils/recovery_gen.c:110 +#: ../../fe_utils/recovery_gen.c:169 ../../fe_utils/recovery_gen.c:230 +#: pg_basebackup.c:1637 +#, c-format +msgid "out of memory" +msgstr "недостатньо пам'яті" + +#: ../../fe_utils/recovery_gen.c:215 pg_basebackup.c:2249 streamutil.c:89 +#: streamutil.c:204 +#, c-format +msgid "%s" +msgstr "%s" + +#: ../../fe_utils/string_utils.c:587 +#, c-format +msgid "shell command argument contains a newline or carriage return: \"%s\"\n" +msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" + +#: ../../fe_utils/string_utils.c:760 +#, c-format +msgid "database name contains a newline or carriage return: \"%s\"\n" +msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" + +#: astreamer_inject.c:189 +#, c-format +msgid "unexpected state while injecting recovery settings" +msgstr "неочікуваний стан під час введення налаштувань відновлення" + #: pg_basebackup.c:245 #, c-format msgid "removing data directory \"%s\"" @@ -488,14 +498,14 @@ msgstr "новий каталог не є абсолютним шляхом у msgid "%s takes a base backup of a running PostgreSQL server.\n\n" msgstr "%s робить базову резервну копію працюючого сервера PostgreSQL.\n\n" -#: pg_basebackup.c:394 pg_createsubscriber.c:221 pg_receivewal.c:79 -#: pg_recvlogical.c:86 +#: pg_basebackup.c:394 pg_createsubscriber.c:246 pg_receivewal.c:79 +#: pg_recvlogical.c:85 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_basebackup.c:395 pg_createsubscriber.c:222 pg_receivewal.c:80 -#: pg_recvlogical.c:87 +#: pg_basebackup.c:395 pg_createsubscriber.c:247 pg_receivewal.c:80 +#: pg_recvlogical.c:86 #, c-format msgid " %s [OPTION]...\n" msgstr " %s: [OPTION]...\n" @@ -625,12 +635,12 @@ msgstr " -P, --progress відображати інформацію п msgid " -S, --slot=SLOTNAME replication slot to use\n" msgstr " -S, --slot=ИМ'Я_СЛОТА використовувати вказаний слот реплікації\n" -#: pg_basebackup.c:425 pg_receivewal.c:91 pg_recvlogical.c:108 +#: pg_basebackup.c:425 pg_receivewal.c:91 pg_recvlogical.c:110 #, c-format msgid " -v, --verbose output verbose messages\n" msgstr " -v, --verbose виводити детальні повідомлення\n" -#: pg_basebackup.c:426 pg_receivewal.c:92 pg_recvlogical.c:109 +#: pg_basebackup.c:426 pg_receivewal.c:92 pg_recvlogical.c:111 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" @@ -678,12 +688,12 @@ msgid " --sync-method=METHOD\n" msgstr " --sync-method=METHOD\n" " встановити метод синхронізації файлів на диск\n" -#: pg_basebackup.c:438 pg_receivewal.c:95 pg_recvlogical.c:110 +#: pg_basebackup.c:438 pg_receivewal.c:95 pg_recvlogical.c:112 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку потім вийти\n" -#: pg_basebackup.c:439 pg_receivewal.c:96 pg_recvlogical.c:111 +#: pg_basebackup.c:439 pg_receivewal.c:96 pg_recvlogical.c:113 #, c-format msgid "\n" "Connection options:\n" @@ -695,12 +705,12 @@ msgstr "\n" msgid " -d, --dbname=CONNSTR connection string\n" msgstr " -d, --dbname=CONNSTR рядок з'єднання\n" -#: pg_basebackup.c:441 pg_receivewal.c:98 pg_recvlogical.c:113 +#: pg_basebackup.c:441 pg_receivewal.c:98 pg_recvlogical.c:115 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=HOSTNAME хост сервера бази даних або каталог сокетів\n" -#: pg_basebackup.c:442 pg_receivewal.c:99 pg_recvlogical.c:114 +#: pg_basebackup.c:442 pg_receivewal.c:99 pg_recvlogical.c:116 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT порт сервера бази даних\n" @@ -711,31 +721,31 @@ msgid " -s, --status-interval=INTERVAL\n" " time between status packets sent to server (in seconds)\n" msgstr " -s, --status-interval=INTERVAL часу між пакетами статусу до сервера (у секундах)\n" -#: pg_basebackup.c:445 pg_receivewal.c:100 pg_recvlogical.c:115 +#: pg_basebackup.c:445 pg_receivewal.c:100 pg_recvlogical.c:117 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NAME підключатись як вказаний користувач бази даних\n" -#: pg_basebackup.c:446 pg_receivewal.c:101 pg_recvlogical.c:116 +#: pg_basebackup.c:446 pg_receivewal.c:101 pg_recvlogical.c:118 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password ніколи не питати пароль\n" -#: pg_basebackup.c:447 pg_receivewal.c:102 pg_recvlogical.c:117 +#: pg_basebackup.c:447 pg_receivewal.c:102 pg_recvlogical.c:119 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr " -W, --password обов'язково питати пароль (повинно відбуватися автоматично)\n" -#: pg_basebackup.c:448 pg_createsubscriber.c:240 pg_receivewal.c:106 -#: pg_recvlogical.c:118 +#: pg_basebackup.c:448 pg_createsubscriber.c:270 pg_receivewal.c:106 +#: pg_recvlogical.c:120 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: pg_basebackup.c:449 pg_createsubscriber.c:241 pg_receivewal.c:107 -#: pg_recvlogical.c:119 +#: pg_basebackup.c:449 pg_createsubscriber.c:271 pg_receivewal.c:107 +#: pg_recvlogical.c:121 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" @@ -745,8 +755,8 @@ msgstr "Домашня сторінка %s: <%s>\n" msgid "could not read from ready pipe: %m" msgstr "не можливо прочитати з готових каналів: %m" -#: pg_basebackup.c:491 pg_basebackup.c:633 pg_basebackup.c:2258 -#: streamutil.c:518 +#: pg_basebackup.c:491 pg_basebackup.c:633 pg_basebackup.c:2259 +#: streamutil.c:450 #, c-format msgid "could not parse write-ahead log location \"%s\"" msgstr "не вдалося проаналізувати наперед журнал локації \"%s\"" @@ -761,37 +771,37 @@ msgstr "не можливо закінчити написання файлів W msgid "could not create pipe for background process: %m" msgstr "не можливо створити канал для фонового процесу: %m" -#: pg_basebackup.c:676 +#: pg_basebackup.c:677 #, c-format msgid "created temporary replication slot \"%s\"" msgstr "створено слот тимчасових реплікацій \"%s\"" -#: pg_basebackup.c:679 +#: pg_basebackup.c:680 #, c-format msgid "created replication slot \"%s\"" msgstr "створено слот реплікацій \"%s\"" -#: pg_basebackup.c:728 +#: pg_basebackup.c:729 #, c-format msgid "could not create background process: %m" msgstr "не можливо створити фоновий процес: %m" -#: pg_basebackup.c:737 +#: pg_basebackup.c:738 #, c-format msgid "could not create background thread: %m" msgstr "не можливо створити фоновий потік: %m" -#: pg_basebackup.c:776 +#: pg_basebackup.c:777 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "каталог \"%s\" існує, але він не порожній" -#: pg_basebackup.c:782 pg_createsubscriber.c:390 +#: pg_basebackup.c:783 pg_createsubscriber.c:420 #, c-format msgid "could not access directory \"%s\": %m" msgstr "немає доступу до каталогу \"%s\": %m" -#: pg_basebackup.c:858 +#: pg_basebackup.c:859 #, c-format msgid "%*s/%s kB (100%%), %d/%d tablespace %*s" msgid_plural "%*s/%s kB (100%%), %d/%d tablespaces %*s" @@ -800,7 +810,7 @@ msgstr[1] "%*s/%s kB (100%%), %d/%d табличних простори %*s" msgstr[2] "%*s/%s kB (100%%), %d/%d табличних просторів %*s" msgstr[3] "%*s/%s kB (100%%), %d/%d табличних просторів %*s" -#: pg_basebackup.c:870 +#: pg_basebackup.c:871 #, c-format msgid "%*s/%s kB (%d%%), %d/%d tablespace (%s%-*.*s)" msgid_plural "%*s/%s kB (%d%%), %d/%d tablespaces (%s%-*.*s)" @@ -809,7 +819,7 @@ msgstr[1] "%*s/%s kB (%d%%), %d/%d табличних простори (%s%-*.*s msgstr[2] "%*s/%s kB (%d%%), %d/%d табличних просторів (%s%-*.*s)" msgstr[3] "%*s/%s kB (%d%%), %d/%d табличних просторів (%s%-*.*s)" -#: pg_basebackup.c:886 +#: pg_basebackup.c:887 #, c-format msgid "%*s/%s kB (%d%%), %d/%d tablespace" msgid_plural "%*s/%s kB (%d%%), %d/%d tablespaces" @@ -818,1072 +828,1182 @@ msgstr[1] "%*s/%s kB (%d%%), %d/%d табличних простори" msgstr[2] "%*s/%s kB (%d%%), %d/%d табличних просторів" msgstr[3] "%*s/%s kB (%d%%), %d/%d табличних просторів" -#: pg_basebackup.c:910 +#: pg_basebackup.c:911 #, c-format msgid "transfer rate \"%s\" is not a valid value" msgstr "частота передач \"%s\" не є припустимим значенням" -#: pg_basebackup.c:912 +#: pg_basebackup.c:913 #, c-format msgid "invalid transfer rate \"%s\": %m" msgstr "неприпустима частота передач \"%s\": %m" -#: pg_basebackup.c:919 +#: pg_basebackup.c:920 #, c-format msgid "transfer rate must be greater than zero" msgstr "частота передач повинна бути більша за нуль" -#: pg_basebackup.c:949 +#: pg_basebackup.c:950 #, c-format msgid "invalid --max-rate unit: \"%s\"" msgstr "неприпустима одиниця виміру в --max-rate: \"%s\"" -#: pg_basebackup.c:953 +#: pg_basebackup.c:954 #, c-format msgid "transfer rate \"%s\" exceeds integer range" msgstr "швидкість передачі \"%s\" перевищує діапазон цілого числа" -#: pg_basebackup.c:960 +#: pg_basebackup.c:961 #, c-format msgid "transfer rate \"%s\" is out of range" msgstr "швидкість передавання \"%s\" поза діапазоном" -#: pg_basebackup.c:1022 +#: pg_basebackup.c:1023 #, c-format msgid "could not get COPY data stream: %s" msgstr "не вдалося отримати потік даних COPY: %s" -#: pg_basebackup.c:1039 pg_recvlogical.c:449 pg_recvlogical.c:625 -#: receivelog.c:973 +#: pg_basebackup.c:1040 pg_recvlogical.c:451 pg_recvlogical.c:627 +#: receivelog.c:980 #, c-format msgid "could not read COPY data: %s" msgstr "не вдалося прочитати дані COPY: %s" -#: pg_basebackup.c:1043 +#: pg_basebackup.c:1044 #, c-format msgid "background process terminated unexpectedly" msgstr "фоновий процес несподівано перервано" -#: pg_basebackup.c:1114 +#: pg_basebackup.c:1115 #, c-format msgid "cannot inject manifest into a compressed tar file" msgstr "неможливо підставити маніфест в стиснений tar-файл" -#: pg_basebackup.c:1115 +#: pg_basebackup.c:1116 #, c-format msgid "Use client-side compression, send the output to a directory rather than standard output, or use %s." msgstr "Використайте стиснення на клієнті та відправлення даних в каталог замість стандартного виводу, або використайте %s." -#: pg_basebackup.c:1131 +#: pg_basebackup.c:1132 #, c-format msgid "cannot parse archive \"%s\"" msgstr "неможливо розібрати архів \"%s\"" -#: pg_basebackup.c:1132 +#: pg_basebackup.c:1133 #, c-format msgid "Only tar archives can be parsed." msgstr "Тільки архів tar може бути проаналізований." -#: pg_basebackup.c:1134 +#: pg_basebackup.c:1135 #, c-format msgid "Plain format requires pg_basebackup to parse the archive." msgstr "Простий формат потребує обробки архіву в pg_basebackup для обробки." -#: pg_basebackup.c:1136 +#: pg_basebackup.c:1137 #, c-format msgid "Using - as the output directory requires pg_basebackup to parse the archive." msgstr "Використання - в якості вихідного каталогу потребує pg_basebackup для аналізу архіву." -#: pg_basebackup.c:1138 +#: pg_basebackup.c:1139 #, c-format msgid "The -R option requires pg_basebackup to parse the archive." msgstr "Параметр -R потребує використання pg_basebackup для аналізу архіву." -#: pg_basebackup.c:1357 +#: pg_basebackup.c:1358 #, c-format msgid "archives must precede manifest" msgstr "архіви повинні передувати маніфесту" -#: pg_basebackup.c:1372 +#: pg_basebackup.c:1373 #, c-format msgid "invalid archive name: \"%s\"" msgstr "неприпустиме ім'я архіву: \"%s\"" -#: pg_basebackup.c:1444 +#: pg_basebackup.c:1445 #, c-format msgid "unexpected payload data" msgstr "неочікувані дані корисного навантаження" -#: pg_basebackup.c:1587 +#: pg_basebackup.c:1588 #, c-format msgid "empty COPY message" msgstr "порожнє повідомлення COPY" -#: pg_basebackup.c:1589 +#: pg_basebackup.c:1590 #, c-format msgid "malformed COPY message of type %d, length %zu" msgstr "неправильне повідомлення COPY з типом %d, довжина %zu" -#: pg_basebackup.c:1789 +#: pg_basebackup.c:1790 #, c-format msgid "incompatible server version %s" msgstr "несумісна версія серверу %s" -#: pg_basebackup.c:1805 +#: pg_basebackup.c:1806 #, c-format msgid "Use -X none or -X fetch to disable log streaming." msgstr "Використайте -X none або -X fetch, щоб вимкнути потокову передачу журналу." -#: pg_basebackup.c:1841 +#: pg_basebackup.c:1842 #, c-format msgid "server does not support incremental backup" msgstr "сервер не підтримує інкрементне резервне копіювання" -#: pg_basebackup.c:1850 pg_basebackup.c:2008 pg_recvlogical.c:272 -#: receivelog.c:543 receivelog.c:582 streamutil.c:364 streamutil.c:438 -#: streamutil.c:490 streamutil.c:578 streamutil.c:730 streamutil.c:775 +#: pg_basebackup.c:1851 pg_basebackup.c:2009 pg_recvlogical.c:274 +#: receivelog.c:542 receivelog.c:581 streamutil.c:296 streamutil.c:370 +#: streamutil.c:422 streamutil.c:510 streamutil.c:667 streamutil.c:712 #, c-format msgid "could not send replication command \"%s\": %s" msgstr "не вдалося відправити реплікаційну команду \"%s\": %s" -#: pg_basebackup.c:1856 pg_basebackup.c:1883 +#: pg_basebackup.c:1857 pg_basebackup.c:1884 #, c-format msgid "could not upload manifest: %s" msgstr "не вдалося завантажити маніфест: %s" -#: pg_basebackup.c:1859 pg_basebackup.c:1886 +#: pg_basebackup.c:1860 pg_basebackup.c:1887 #, c-format msgid "could not upload manifest: unexpected status %s" msgstr "не вдалося завантажити маніфест: неочікуваний статус %s" -#: pg_basebackup.c:1867 +#: pg_basebackup.c:1868 #, c-format msgid "could not send COPY data: %s" msgstr "не вдалося надіслати дані COPY: %s" -#: pg_basebackup.c:1877 +#: pg_basebackup.c:1878 #, c-format msgid "could not send end-of-COPY: %s" msgstr "не вдалося надіслати сповіщення про закінчення копіювання: %s" -#: pg_basebackup.c:1892 +#: pg_basebackup.c:1893 #, c-format msgid "unexpected extra result while sending manifest" msgstr "несподіваний додатковий результат під час надсилання маніфесту" -#: pg_basebackup.c:1950 +#: pg_basebackup.c:1951 #, c-format msgid "backup targets are not supported by this server version" msgstr "цілі резервного копіювання не підтримуються цією версією сервера" -#: pg_basebackup.c:1953 +#: pg_basebackup.c:1954 #, c-format msgid "recovery configuration cannot be written when a backup target is used" msgstr "конфігурація відновлення не може бути записана під час використання цілі резервного копіювання" -#: pg_basebackup.c:1980 +#: pg_basebackup.c:1981 #, c-format msgid "server does not support server-side compression" msgstr "сервер не підтримує стиснення на сервері" -#: pg_basebackup.c:1990 +#: pg_basebackup.c:1991 #, c-format msgid "initiating base backup, waiting for checkpoint to complete" msgstr "початок базового резервного копіювання, очікується завершення контрольної точки" -#: pg_basebackup.c:1994 +#: pg_basebackup.c:1995 #, c-format msgid "waiting for checkpoint" msgstr "очікування контрольної точки" -#: pg_basebackup.c:2016 +#: pg_basebackup.c:2017 #, c-format msgid "could not initiate base backup: %s" msgstr "не вдалося почати базове резервне копіювання: %s" -#: pg_basebackup.c:2019 +#: pg_basebackup.c:2020 #, c-format msgid "server returned unexpected response to BASE_BACKUP command; got %d rows and %d fields, expected %d rows and %d fields" msgstr "сервер повернув неочікувану відповідь на команду BASE_BACKUP; отримано %d рядків і %d полів, очікувалось %d рядків і %d полів" -#: pg_basebackup.c:2025 +#: pg_basebackup.c:2026 #, c-format msgid "checkpoint completed" msgstr "контрольна точка завершена" -#: pg_basebackup.c:2039 +#: pg_basebackup.c:2040 #, c-format msgid "write-ahead log start point: %s on timeline %u" msgstr "стартова точка у випереджувальному журналюванні: %s на часовій шкалі %u" -#: pg_basebackup.c:2047 +#: pg_basebackup.c:2048 #, c-format msgid "could not get backup header: %s" msgstr "не вдалося отримати заголовок резервної копії: %s" -#: pg_basebackup.c:2050 +#: pg_basebackup.c:2051 #, c-format msgid "no data returned from server" msgstr "сервер не повернув дані" -#: pg_basebackup.c:2093 +#: pg_basebackup.c:2094 #, c-format msgid "can only write single tablespace to stdout, database has %d" msgstr "можна записати лише один табличний простір в stdout, всього їх в базі даних %d" -#: pg_basebackup.c:2106 +#: pg_basebackup.c:2107 #, c-format msgid "starting background WAL receiver" msgstr "запуск фонового процесу зчитування WAL" -#: pg_basebackup.c:2189 +#: pg_basebackup.c:2190 #, c-format msgid "backup failed: %s" msgstr "помилка резервного копіювання: %s" -#: pg_basebackup.c:2192 +#: pg_basebackup.c:2193 #, c-format msgid "no write-ahead log end position returned from server" msgstr "сервер не повернув кінцеву позицію у випереджувальному журналюванні" -#: pg_basebackup.c:2195 +#: pg_basebackup.c:2196 #, c-format msgid "write-ahead log end point: %s" msgstr "кінцева точка у випереджувальному журналюванні: %s" -#: pg_basebackup.c:2206 +#: pg_basebackup.c:2207 #, c-format msgid "checksum error occurred" msgstr "сталася помилка контрольної суми" -#: pg_basebackup.c:2211 +#: pg_basebackup.c:2212 #, c-format msgid "final receive failed: %s" msgstr "помилка в кінці передачі: %s" -#: pg_basebackup.c:2235 +#: pg_basebackup.c:2236 #, c-format msgid "waiting for background process to finish streaming ..." msgstr "очікування завершення потокового передавання фоновим процесом ..." -#: pg_basebackup.c:2239 +#: pg_basebackup.c:2240 #, c-format msgid "could not send command to background pipe: %m" msgstr "не вдалося надіслати команду до канала фонового процесу: %m" -#: pg_basebackup.c:2244 +#: pg_basebackup.c:2245 #, c-format msgid "could not wait for child process: %m" msgstr "збій при очікуванні дочірнього процесу: %m" -#: pg_basebackup.c:2246 +#: pg_basebackup.c:2247 #, c-format msgid "child %d died, expected %d" msgstr "завершився дочірній процес %d, очікувалося %d" -#: pg_basebackup.c:2248 streamutil.c:89 streamutil.c:204 streamutil.c:316 -#, c-format -msgid "%s" -msgstr "%s" - -#: pg_basebackup.c:2268 +#: pg_basebackup.c:2269 #, c-format msgid "could not wait for child thread: %m" msgstr "неможливо дочекатися дочірнього потоку: %m" -#: pg_basebackup.c:2273 +#: pg_basebackup.c:2274 #, c-format msgid "could not get child thread exit status: %m" msgstr "не можливо отримати статус завершення дочірнього потоку: %m" -#: pg_basebackup.c:2276 +#: pg_basebackup.c:2277 #, c-format msgid "child thread exited with error %u" msgstr "дочірній потік завершився з помилкою %u" -#: pg_basebackup.c:2305 +#: pg_basebackup.c:2306 #, c-format msgid "syncing data to disk ..." msgstr "синхронізація даних з диском ..." -#: pg_basebackup.c:2330 +#: pg_basebackup.c:2331 #, c-format msgid "renaming backup_manifest.tmp to backup_manifest" msgstr "перейменування backup_manifest.tmp в backup_manifest" -#: pg_basebackup.c:2350 +#: pg_basebackup.c:2351 #, c-format msgid "base backup completed" msgstr "базове резервне копіювання завершено" -#: pg_basebackup.c:2436 +#: pg_basebackup.c:2437 #, c-format msgid "invalid checkpoint argument \"%s\", must be \"fast\" or \"spread\"" msgstr "неприпустимий аргумент контрольної точки \"%s\", повинен бути \"fast\" або \"spread\"" -#: pg_basebackup.c:2454 +#: pg_basebackup.c:2455 #, c-format msgid "invalid output format \"%s\", must be \"plain\" or \"tar\"" msgstr "неприпустимий формат виводу \"%s\", повинен бути \"plain\" або \"tar\"" -#: pg_basebackup.c:2535 +#: pg_basebackup.c:2536 #, c-format msgid "invalid wal-method option \"%s\", must be \"fetch\", \"stream\", or \"none\"" msgstr "неприпустимий параметр wal-method \"%s\", повинен бути \"fetch\", \"stream\" або \"none\"" -#: pg_basebackup.c:2574 pg_basebackup.c:2586 pg_basebackup.c:2608 -#: pg_basebackup.c:2620 pg_basebackup.c:2626 pg_basebackup.c:2678 -#: pg_basebackup.c:2689 pg_basebackup.c:2699 pg_basebackup.c:2705 -#: pg_basebackup.c:2712 pg_basebackup.c:2724 pg_basebackup.c:2736 -#: pg_basebackup.c:2744 pg_basebackup.c:2757 pg_basebackup.c:2763 -#: pg_basebackup.c:2772 pg_basebackup.c:2784 pg_basebackup.c:2795 -#: pg_basebackup.c:2803 pg_createsubscriber.c:2037 pg_createsubscriber.c:2047 -#: pg_createsubscriber.c:2055 pg_createsubscriber.c:2083 -#: pg_createsubscriber.c:2115 pg_receivewal.c:748 pg_receivewal.c:760 -#: pg_receivewal.c:767 pg_receivewal.c:776 pg_receivewal.c:783 -#: pg_receivewal.c:793 pg_recvlogical.c:853 pg_recvlogical.c:865 -#: pg_recvlogical.c:875 pg_recvlogical.c:882 pg_recvlogical.c:889 -#: pg_recvlogical.c:896 pg_recvlogical.c:903 pg_recvlogical.c:910 -#: pg_recvlogical.c:917 pg_recvlogical.c:924 +#: pg_basebackup.c:2575 pg_basebackup.c:2587 pg_basebackup.c:2609 +#: pg_basebackup.c:2621 pg_basebackup.c:2627 pg_basebackup.c:2679 +#: pg_basebackup.c:2690 pg_basebackup.c:2700 pg_basebackup.c:2706 +#: pg_basebackup.c:2713 pg_basebackup.c:2725 pg_basebackup.c:2737 +#: pg_basebackup.c:2745 pg_basebackup.c:2758 pg_basebackup.c:2764 +#: pg_basebackup.c:2773 pg_basebackup.c:2785 pg_basebackup.c:2796 +#: pg_basebackup.c:2804 pg_createsubscriber.c:2238 pg_createsubscriber.c:2261 +#: pg_createsubscriber.c:2271 pg_createsubscriber.c:2279 +#: pg_createsubscriber.c:2307 pg_createsubscriber.c:2350 pg_receivewal.c:748 +#: pg_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 +#: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:861 +#: pg_recvlogical.c:873 pg_recvlogical.c:883 pg_recvlogical.c:890 +#: pg_recvlogical.c:897 pg_recvlogical.c:904 pg_recvlogical.c:911 +#: pg_recvlogical.c:918 pg_recvlogical.c:925 pg_recvlogical.c:934 +#: pg_recvlogical.c:941 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_basebackup.c:2584 pg_createsubscriber.c:2045 pg_receivewal.c:758 -#: pg_recvlogical.c:863 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2269 pg_receivewal.c:758 +#: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: pg_basebackup.c:2607 +#: pg_basebackup.c:2608 #, c-format msgid "cannot specify both format and backup target" msgstr "неможливо одночасно вказати формат і ціль резервного копіювання" -#: pg_basebackup.c:2619 +#: pg_basebackup.c:2620 #, c-format msgid "must specify output directory or backup target" msgstr "потрібно вказати вихідний каталог або ціль резервного копіювання" -#: pg_basebackup.c:2625 +#: pg_basebackup.c:2626 #, c-format msgid "cannot specify both output directory and backup target" msgstr "неможливо одночасно вказати вихідну директорію і ціль резервного копіювання" -#: pg_basebackup.c:2655 pg_receivewal.c:802 +#: pg_basebackup.c:2656 pg_receivewal.c:802 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "нерозпізнаний алгоритм стискання: \"%s\"" -#: pg_basebackup.c:2661 pg_receivewal.c:809 +#: pg_basebackup.c:2662 pg_receivewal.c:809 #, c-format msgid "invalid compression specification: %s" msgstr "неприпустима специфікація стискання: %s" -#: pg_basebackup.c:2677 +#: pg_basebackup.c:2678 #, c-format msgid "client-side compression is not possible when a backup target is specified" msgstr "стиснення на стороні клієнта неможливе, коли вказана ціль резервного копіювання" -#: pg_basebackup.c:2688 +#: pg_basebackup.c:2689 #, c-format msgid "only tar mode backups can be compressed" msgstr "лише резервні копії в архіві tar можуть стискатись" -#: pg_basebackup.c:2698 +#: pg_basebackup.c:2699 #, c-format msgid "WAL cannot be streamed when a backup target is specified" msgstr "неможливо передавати WAL, коли вказана ціль резервного копіювання" -#: pg_basebackup.c:2704 +#: pg_basebackup.c:2705 #, c-format msgid "cannot stream write-ahead logs in tar mode to stdout" msgstr "транслювати випереджувальні журналювання в режимі tar в потік stdout не можна" -#: pg_basebackup.c:2711 +#: pg_basebackup.c:2712 #, c-format msgid "replication slots can only be used with WAL streaming" msgstr "слоти реплікації можуть використовуватись тільки з потоковим передаванням WAL" -#: pg_basebackup.c:2723 +#: pg_basebackup.c:2724 #, c-format msgid "--no-slot cannot be used with slot name" msgstr "--no-slot не можна використовувати з іменем слота" #. translator: second %s is an option name -#: pg_basebackup.c:2734 pg_receivewal.c:774 +#: pg_basebackup.c:2735 pg_receivewal.c:774 #, c-format msgid "%s needs a slot to be specified using --slot" msgstr "для %s потрібно вказати слот за допомогою --slot" -#: pg_basebackup.c:2742 pg_basebackup.c:2782 pg_basebackup.c:2793 -#: pg_basebackup.c:2801 +#: pg_basebackup.c:2743 pg_basebackup.c:2783 pg_basebackup.c:2794 +#: pg_basebackup.c:2802 #, c-format msgid "%s and %s are incompatible options" msgstr "параметри %s і %s несумісні" -#: pg_basebackup.c:2756 +#: pg_basebackup.c:2757 #, c-format msgid "WAL directory location cannot be specified along with a backup target" msgstr "Не можна вказати розташування директорії WAL разом з ціллю резервного копіювання" -#: pg_basebackup.c:2762 +#: pg_basebackup.c:2763 #, c-format msgid "WAL directory location can only be specified in plain mode" msgstr "розташування каталога WAL можна вказати лише в режимі plain" -#: pg_basebackup.c:2771 +#: pg_basebackup.c:2772 #, c-format msgid "WAL directory location must be an absolute path" msgstr "розташування WAL каталогу має бути абсолютним шляхом" -#: pg_basebackup.c:2871 +#: pg_basebackup.c:2872 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "не вдалося створити символічне послання \"%s\": %m" -#: pg_createsubscriber.c:169 +#: pg_createsubscriber.c:189 #, c-format msgid "failed after the end of recovery" msgstr "помилка після закінчення відновлення" -#: pg_createsubscriber.c:170 +#: pg_createsubscriber.c:190 #, c-format msgid "The target server cannot be used as a physical replica anymore. You must recreate the physical replica before continuing." msgstr "Цільовий сервер не можна більше використовувати як фізичну репліку. Перед продовженням вам слід відтворити фізичну репліку." -#: pg_createsubscriber.c:198 +#: pg_createsubscriber.c:221 #, c-format msgid "publication \"%s\" created in database \"%s\" on primary was left behind" msgstr "публікація \"%s\" створена в базі даних \"%s\" на основному кластері залишилася позаду" -#: pg_createsubscriber.c:200 +#: pg_createsubscriber.c:224 #, c-format msgid "Drop this publication before trying again." msgstr "Видаліть цю публікацію перед тим, як спробувати знову." -#: pg_createsubscriber.c:204 +#: pg_createsubscriber.c:228 #, c-format msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "слот реплікації \"%s\" створений в базі даних \"%s\" на основному кластері залишився позаду" -#: pg_createsubscriber.c:206 pg_createsubscriber.c:1260 +#: pg_createsubscriber.c:231 pg_createsubscriber.c:1324 #, c-format msgid "Drop this replication slot soon to avoid retention of WAL files." msgstr "Видаліть цей слот реплікації найближчим часом, щоб уникнути збереження файлів WAL." -#: pg_createsubscriber.c:219 +#: pg_createsubscriber.c:244 #, c-format msgid "%s creates a new logical replica from a standby server.\n\n" msgstr "%s створює нову логічну репліку з резервного сервера.\n\n" -#: pg_createsubscriber.c:223 pg_receivewal.c:81 pg_recvlogical.c:92 +#: pg_createsubscriber.c:248 pg_receivewal.c:81 pg_recvlogical.c:91 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: pg_createsubscriber.c:224 +#: pg_createsubscriber.c:249 +#, c-format +msgid " -a, --all create subscriptions for all databases except template\n" +" databases and databases that don't allow connections\n" +msgstr " -a, --all створити підписки для всіх баз даних окрім шаблонних\n" +" баз даних і баз, які не дозволяють підключення\n" + +#: pg_createsubscriber.c:251 #, c-format msgid " -d, --database=DBNAME database in which to create a subscription\n" msgstr " -d, --database=DBNAME база даних для створення підписки\n" -#: pg_createsubscriber.c:225 +#: pg_createsubscriber.c:252 #, c-format msgid " -D, --pgdata=DATADIR location for the subscriber data directory\n" msgstr " -D, --pgdata=DATADIR розташування каталогу даних підписника\n" -#: pg_createsubscriber.c:226 +#: pg_createsubscriber.c:253 #, c-format msgid " -n, --dry-run dry run, just show what would be done\n" msgstr " -n, --dry-run сухий запуск, просто показати, що буде зроблено\n" -#: pg_createsubscriber.c:227 +#: pg_createsubscriber.c:254 #, c-format msgid " -p, --subscriber-port=PORT subscriber port number (default %s)\n" msgstr " -p, --subscriber-port=PORT номер порту підписника (за замовчуванням %s)\n" -#: pg_createsubscriber.c:228 +#: pg_createsubscriber.c:255 #, c-format msgid " -P, --publisher-server=CONNSTR publisher connection string\n" msgstr " -P, --publisher-server=CONNSTR рядок підключення видавця\n" -#: pg_createsubscriber.c:229 +#: pg_createsubscriber.c:256 #, c-format msgid " -s, --socketdir=DIR socket directory to use (default current dir.)\n" msgstr " -s, --socketdir=DIR директорія сокету для використання (за замовчування поточна директорія)\n" -#: pg_createsubscriber.c:230 +#: pg_createsubscriber.c:257 #, c-format msgid " -t, --recovery-timeout=SECS seconds to wait for recovery to end\n" msgstr " -t, --recovery-timeout=SECS секунд для очікування кінця відновлення\n" -#: pg_createsubscriber.c:231 +#: pg_createsubscriber.c:258 +#, c-format +msgid " -T, --enable-two-phase enable two-phase commit for all subscriptions\n" +msgstr " -T, --enable-two-phase увімкнути двофазний коміт для всіх підписок\n" + +#: pg_createsubscriber.c:259 #, c-format msgid " -U, --subscriber-username=NAME user name for subscriber connection\n" msgstr " -U, --subscriber-username=NAME користувач для під'єднання підписника\n" -#: pg_createsubscriber.c:232 +#: pg_createsubscriber.c:260 #, c-format msgid " -v, --verbose output verbose messages\n" msgstr " -v, --verbose виводити детальні повідомлення\n" -#: pg_createsubscriber.c:233 +#: pg_createsubscriber.c:261 +#, c-format +msgid " --clean=OBJECTTYPE drop all objects of the specified type from specified\n" +" databases on the subscriber; accepts: \"%s\"\n" +msgstr " --clean=OBJECTTYPE видалити всі об'єкти вказаного типу зі вказаних\n" +" баз даних на підписнику; приймає: \"%s\"\n" + +#: pg_createsubscriber.c:263 #, c-format msgid " --config-file=FILENAME use specified main server configuration\n" " file when running target cluster\n" msgstr " --config-file=FILENAME використовувати заданий основний файл конфігурації сервера\n" " при запуску цільового кластера\n" -#: pg_createsubscriber.c:235 +#: pg_createsubscriber.c:265 #, c-format msgid " --publication=NAME publication name\n" msgstr " --publication=NAME назва публікації\n" -#: pg_createsubscriber.c:236 +#: pg_createsubscriber.c:266 #, c-format msgid " --replication-slot=NAME replication slot name\n" msgstr " --replication-slot=NAME назва слота реплікації\n" -#: pg_createsubscriber.c:237 +#: pg_createsubscriber.c:267 #, c-format msgid " --subscription=NAME subscription name\n" msgstr " --subscription=NAME назва підписки\n" -#: pg_createsubscriber.c:238 +#: pg_createsubscriber.c:268 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: pg_createsubscriber.c:239 +#: pg_createsubscriber.c:269 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю справку, потім вийти\n" -#: pg_createsubscriber.c:282 +#: pg_createsubscriber.c:312 #, c-format msgid "could not parse connection string: %s" msgstr "не вдалося аналізувати рядок підключення: %s" -#: pg_createsubscriber.c:359 +#: pg_createsubscriber.c:389 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "програма \"%s\" потрібна для %s, але не знайдена в тому ж каталозі, що й \"%s\"" -#: pg_createsubscriber.c:362 +#: pg_createsubscriber.c:392 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "програма \"%s\" знайдена для \"%s\", але має відмінну версію від %s" -#: pg_createsubscriber.c:382 +#: pg_createsubscriber.c:412 #, c-format msgid "checking if directory \"%s\" is a cluster data directory" msgstr "перевірка чи каталог \"%s\" є каталогом даних кластера" -#: pg_createsubscriber.c:388 +#: pg_createsubscriber.c:418 #, c-format msgid "data directory \"%s\" does not exist" msgstr "каталог даних \"%s\" не існує" -#: pg_createsubscriber.c:396 +#: pg_createsubscriber.c:426 #, c-format msgid "directory \"%s\" is not a database cluster directory" msgstr "каталог \"%s\" не є каталогом кластера бази даних" -#: pg_createsubscriber.c:513 +#: pg_createsubscriber.c:544 #, c-format msgid "connection to database failed: %s" msgstr "помилка підключення до бази даних: %s" -#: pg_createsubscriber.c:526 +#: pg_createsubscriber.c:557 streamutil.c:230 #, c-format -msgid "could not clear search_path: %s" -msgstr "не вдалося очистити search_path: %s" +msgid "could not clear \"search_path\": %s" +msgstr "не вдалося очистити \"search_path\": %s" -#: pg_createsubscriber.c:566 +#: pg_createsubscriber.c:597 #, c-format msgid "getting system identifier from publisher" msgstr "отримання системного ідентифікатора з публікації" -#: pg_createsubscriber.c:573 +#: pg_createsubscriber.c:604 #, c-format msgid "could not get system identifier: %s" msgstr "не вдалося отримати системний ідентифікатор: %s" -#: pg_createsubscriber.c:579 +#: pg_createsubscriber.c:610 #, c-format msgid "could not get system identifier: got %d rows, expected %d row" msgstr "не вдалося отримати системний ідентифікатор: отримано рядки %d, очікувалось %d рядок" -#: pg_createsubscriber.c:586 +#: pg_createsubscriber.c:617 #, c-format -msgid "system identifier is %llu on publisher" -msgstr "системний ідентифікатор %llu на сервері публікації" +msgid "system identifier is % on publisher" +msgstr "системний ідентифікатор % на видавці" -#: pg_createsubscriber.c:607 +#: pg_createsubscriber.c:637 #, c-format msgid "getting system identifier from subscriber" msgstr "отримання системного ідентифікатора від підписника" -#: pg_createsubscriber.c:611 pg_createsubscriber.c:641 +#: pg_createsubscriber.c:641 pg_createsubscriber.c:670 #, c-format msgid "control file appears to be corrupt" msgstr "контрольний файл здається пошкодженим" -#: pg_createsubscriber.c:615 pg_createsubscriber.c:656 +#: pg_createsubscriber.c:645 pg_createsubscriber.c:688 #, c-format -msgid "system identifier is %llu on subscriber" -msgstr "системний ідентифікатор %llu на підписнику" +msgid "system identifier is % on subscriber" +msgstr "системний ідентифікатор % на підписнику" -#: pg_createsubscriber.c:637 +#: pg_createsubscriber.c:666 #, c-format msgid "modifying system identifier of subscriber" msgstr "змінюю системний ідентифікатор підписника" -#: pg_createsubscriber.c:659 +#: pg_createsubscriber.c:683 +#, c-format +msgid "dry-run: would set system identifier to % on subscriber" +msgstr "пробний запуск: встановив би системний ідентифікатор % на підписнику" + +#: pg_createsubscriber.c:693 +#, c-format +msgid "dry-run: would run pg_resetwal on the subscriber" +msgstr "пробний запуск: запустив би pg_resetwal на підписнику" + +#: pg_createsubscriber.c:695 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "запускаю pg_resetwal на підписнику" -#: pg_createsubscriber.c:671 +#: pg_createsubscriber.c:707 #, c-format -msgid "subscriber successfully changed the system identifier" -msgstr "підписник успішно змінив системний ідентифікатор" +msgid "successfully reset WAL on the subscriber" +msgstr "успішно скинуто WAL на підписнику" -#: pg_createsubscriber.c:673 +#: pg_createsubscriber.c:709 #, c-format -msgid "could not change system identifier of subscriber: %s" -msgstr "не вдалося змінити системний ідентифікатор підписника: %s" +msgid "could not reset WAL on subscriber: %s" +msgstr "не вдалося скинути WAL на підписнику: %s" -#: pg_createsubscriber.c:697 +#: pg_createsubscriber.c:733 #, c-format msgid "could not obtain database OID: %s" msgstr "не вдалося отримати OID бази даних: %s" -#: pg_createsubscriber.c:704 +#: pg_createsubscriber.c:740 #, c-format msgid "could not obtain database OID: got %d rows, expected %d row" msgstr "не вдалося отримати OID бази даних: отримано %d рядків, очікувалось %d рядок" -#: pg_createsubscriber.c:776 +#: pg_createsubscriber.c:812 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "створіть слот реплікації \"%s\" на сервері публікації" -#: pg_createsubscriber.c:796 +#: pg_createsubscriber.c:832 #, c-format msgid "could not write an additional WAL record: %s" msgstr "не вдалося написати додатковий запис WAL: %s" -#: pg_createsubscriber.c:822 +#: pg_createsubscriber.c:858 #, c-format msgid "could not obtain recovery progress: %s" msgstr "не вдалося отримати прогрес відновлення: %s" -#: pg_createsubscriber.c:854 +#: pg_createsubscriber.c:891 #, c-format msgid "checking settings on publisher" msgstr "перевірка налаштувань на сервері публікації" -#: pg_createsubscriber.c:864 +#: pg_createsubscriber.c:901 #, c-format msgid "primary server cannot be in recovery" msgstr "основний сервер не може бути у процесі відновлення" -#: pg_createsubscriber.c:888 +#: pg_createsubscriber.c:927 #, c-format msgid "could not obtain publisher settings: %s" msgstr "не вдалось отримати налаштування сервера публікацій: %s" -#: pg_createsubscriber.c:914 +#: pg_createsubscriber.c:956 #, c-format -msgid "publisher requires wal_level >= \"logical\"" -msgstr "сервер публікації вимагає wal_level >= \"logical\"" +msgid "publisher requires \"wal_level\" >= \"logical\"" +msgstr "сервер публікацій вимагає \"wal_level\" >= \"logical\"" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:962 #, c-format msgid "publisher requires %d replication slots, but only %d remain" msgstr "сервер публікацій вимагає %d слотів реплікації, але залишається тільки %d" -#: pg_createsubscriber.c:922 pg_createsubscriber.c:931 -#: pg_createsubscriber.c:1028 pg_createsubscriber.c:1037 -#: pg_createsubscriber.c:1046 +#: pg_createsubscriber.c:964 pg_createsubscriber.c:973 +#: pg_createsubscriber.c:1083 pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1101 #, c-format msgid "Increase the configuration parameter \"%s\" to at least %d." msgstr "Збільшіть параметр налаштування \"%s\" принаймні до %d." -#: pg_createsubscriber.c:929 +#: pg_createsubscriber.c:971 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "сервер публікацій вимагає %d процесів відправника WAL, але залишається тільки %d" -#: pg_createsubscriber.c:938 +#: pg_createsubscriber.c:980 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "опція two_phase для слотів реплікації не буде увімкнена" -#: pg_createsubscriber.c:939 +#: pg_createsubscriber.c:981 #, c-format msgid "Subscriptions will be created with the two_phase option disabled. Prepared transactions will be replicated at COMMIT PREPARED." msgstr "Підписки будуть створені з відключенем параметром two_phase. Підготовлені транзакції будуть скопійовані в COMMIT PREPARED." -#: pg_createsubscriber.c:971 +#: pg_createsubscriber.c:983 +#, c-format +msgid "You can use the command-line option --enable-two-phase to enable two_phase." +msgstr "Ви можете використовувати параметр командного рядка --enable-two-phase для активації two_phase." + +#: pg_createsubscriber.c:993 +#, c-format +msgid "required WAL could be removed from the publisher" +msgstr "необхідні WAL можуть бути видалені з сервера публікацій" + +#: pg_createsubscriber.c:994 +#, c-format +msgid "Set the configuration parameter \"%s\" to -1 to ensure that required WAL files are not prematurely removed." +msgstr "Встановіть параметр конфігурації \"%s\" в -1, щоб забезпечити, що необхідні WAL-файли не будуть передчасно видалені." + +#: pg_createsubscriber.c:1026 #, c-format msgid "checking settings on subscriber" msgstr "перевірка налаштувань підписника" -#: pg_createsubscriber.c:978 +#: pg_createsubscriber.c:1033 #, c-format msgid "target server must be a standby" msgstr "цільовий сервер повинен бути в режимі очікування" -#: pg_createsubscriber.c:1002 +#: pg_createsubscriber.c:1057 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "не вдалося отримати налаштування підписника: %s" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1081 #, c-format -msgid "subscriber requires %d replication slots, but only %d remain" -msgstr "підписник вимагає %d слотів реплікації, але залишається тільки %d" +msgid "subscriber requires %d active replication origins, but only %d remain" +msgstr "підписник вимагає %d активних джерел реплікації, але залишається тільки %d" -#: pg_createsubscriber.c:1035 +#: pg_createsubscriber.c:1090 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "підписник вимагає %d процесів логічної реплікації, але залишається тільки %d" -#: pg_createsubscriber.c:1044 +#: pg_createsubscriber.c:1099 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "підписник вимагає %d робочих процесів, але залишається тільки %d" -#: pg_createsubscriber.c:1079 +#: pg_createsubscriber.c:1135 +#, c-format +msgid "dry-run: would drop subscription \"%s\" in database \"%s\"" +msgstr "пробний запуск: видалив би підписку \"%s\" в базі даних \"%s\"" + +#: pg_createsubscriber.c:1139 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "видалення підписки \"%s\" в базі даних \"%s\"" -#: pg_createsubscriber.c:1088 +#: pg_createsubscriber.c:1146 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "не вдалося видалити підписку \"%s\": %s" -#: pg_createsubscriber.c:1123 +#: pg_createsubscriber.c:1181 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "не вдалося отримати раніше наявні підписки: %s" -#: pg_createsubscriber.c:1258 +#: pg_createsubscriber.c:1322 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "не вдалося видалити слот реплікації \"%s\" на головному сервері" -#: pg_createsubscriber.c:1292 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "не вдалося отримати інформацію про запасний слот реплікації: %s" -#: pg_createsubscriber.c:1294 pg_createsubscriber.c:1303 +#: pg_createsubscriber.c:1358 pg_createsubscriber.c:1367 #, c-format msgid "Drop the failover replication slots on subscriber soon to avoid retention of WAL files." msgstr "Видаліть запасний слот реплікації найближчим часом, щоб уникнути збереження файлів WAL." -#: pg_createsubscriber.c:1302 +#: pg_createsubscriber.c:1366 #, c-format msgid "could not drop failover replication slot" msgstr "не вдалося видалити запасний слот реплікації" -#: pg_createsubscriber.c:1324 +#: pg_createsubscriber.c:1389 +#, c-format +msgid "dry-run: would create the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "пробний запуск: створив би слот реплікації \"%s\" в базі даних \"%s\" на сервері публікацій" + +#: pg_createsubscriber.c:1392 #, c-format -msgid "creating the replication slot \"%s\" in database \"%s\"" -msgstr "створюю слот реплікації \"%s\" в базі даних \"%s\"" +msgid "creating the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "створення слоту реплікації \"%s\" в базі даних \"%s\" на сервері публікацій" -#: pg_createsubscriber.c:1342 +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "не вдалося створити слот реплікації \"%s\" в базі даних \"%s\": %s" -#: pg_createsubscriber.c:1372 +#: pg_createsubscriber.c:1442 +#, c-format +msgid "dry-run: would drop the replication slot \"%s\" in database \"%s\"" +msgstr "пробний запуск: видалив би слот реплікації \"%s\" в базі даних \"%s\"" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "видалення слоту реплікації \"%s\" в базі даних \"%s\"" -#: pg_createsubscriber.c:1388 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "не вдалося видалити слот реплікації \"%s\" в базі даних \"%s\": %s" -#: pg_createsubscriber.c:1409 +#: pg_createsubscriber.c:1482 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "помилка pg_ctl з кодом %d" -#: pg_createsubscriber.c:1414 +#: pg_createsubscriber.c:1487 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl був перерваний винятком 0x%X" -#: pg_createsubscriber.c:1416 +#: pg_createsubscriber.c:1489 #, c-format msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value." msgstr "Опис цього Шістнадцяткового значення дивіться у включаємому C-файлі \"ntstatus.h\"." -#: pg_createsubscriber.c:1418 +#: pg_createsubscriber.c:1491 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl було припинено сигналом %d: %s" -#: pg_createsubscriber.c:1424 +#: pg_createsubscriber.c:1497 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl завершився з невідомим статусом %d" -#: pg_createsubscriber.c:1427 +#: pg_createsubscriber.c:1500 #, c-format msgid "The failed command was: %s" msgstr "Команда з помилкою: %s" -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1550 #, c-format msgid "server was started" msgstr "сервер був запущений" -#: pg_createsubscriber.c:1488 +#: pg_createsubscriber.c:1565 #, c-format msgid "server was stopped" msgstr "сервер було зупинено" -#: pg_createsubscriber.c:1507 +#: pg_createsubscriber.c:1584 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "чекаю на досягнення узгодженого стану цільовим сервером" -#: pg_createsubscriber.c:1530 +#: pg_createsubscriber.c:1602 #, c-format msgid "recovery timed out" msgstr "час відновлення вичерпався" -#: pg_createsubscriber.c:1543 +#: pg_createsubscriber.c:1615 #, c-format msgid "server did not end recovery" msgstr "сервер не завершив відновлення" -#: pg_createsubscriber.c:1545 +#: pg_createsubscriber.c:1617 #, c-format msgid "target server reached the consistent state" msgstr "цільовий сервер досяг узгодженого стану" -#: pg_createsubscriber.c:1546 +#: pg_createsubscriber.c:1618 #, c-format msgid "If pg_createsubscriber fails after this point, you must recreate the physical replica before continuing." msgstr "Якщо pg_createsubscriber поверне помилку після цієї точки, вам потрібно буде перестворити фізичну репліку перед продовженням." -#: pg_createsubscriber.c:1573 +#: pg_createsubscriber.c:1645 pg_createsubscriber.c:1776 #, c-format msgid "could not obtain publication information: %s" msgstr "не вдалося отримати інформацію про публікацію: %s" -#: pg_createsubscriber.c:1587 +#: pg_createsubscriber.c:1659 #, c-format msgid "publication \"%s\" already exists" msgstr "публікація \"%s\" вже існує" -#: pg_createsubscriber.c:1588 +#: pg_createsubscriber.c:1660 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Подумайте про перейменування цієї публікації, перш ніж продовжити." -#: pg_createsubscriber.c:1595 +#: pg_createsubscriber.c:1668 +#, c-format +msgid "dry-run: would create publication \"%s\" in database \"%s\"" +msgstr "пробний запуск: створив би публікацію \"%s\" в базі даних \"%s\"" + +#: pg_createsubscriber.c:1671 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "створення публікації \"%s\" в базі даних \"%s\"" -#: pg_createsubscriber.c:1608 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "не вдалося створити публікацію \"%s\" в базі даних \"%s\": %s" -#: pg_createsubscriber.c:1637 +#: pg_createsubscriber.c:1715 +#, c-format +msgid "dry-run: would drop publication \"%s\" in database \"%s\"" +msgstr "пробний запуск: видалив би публікацію \"%s\" в базі даних \"%s\"" + +#: pg_createsubscriber.c:1718 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "видалення публікації \"%s\" в базі даних \"%s\"" -#: pg_createsubscriber.c:1651 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "не вдалося видалити публікацію \"%s\" в базі даних \"%s\": %s" -#: pg_createsubscriber.c:1697 +#: pg_createsubscriber.c:1769 +#, c-format +msgid "dropping all existing publications in database \"%s\"" +msgstr "видалення всіх існуючих публікацій в базі даних \"%s\"" + +#: pg_createsubscriber.c:1828 +#, c-format +msgid "dry-run: would create subscription \"%s\" in database \"%s\"" +msgstr "пробний запуск: створив би підписку \"%s\" в базі даних \"%s\"" + +#: pg_createsubscriber.c:1831 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "створення підписки \"%s\" в базі даних \"%s\"" -#: pg_createsubscriber.c:1718 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "не вдалося створити підписку \"%s\" в базі даних \"%s\": %s" -#: pg_createsubscriber.c:1763 +#: pg_createsubscriber.c:1898 #, c-format msgid "could not obtain subscription OID: %s" msgstr "не вдалося отримати OID підписки: %s" -#: pg_createsubscriber.c:1770 +#: pg_createsubscriber.c:1905 #, c-format msgid "could not obtain subscription OID: got %d rows, expected %d row" msgstr "не вдалося отримати OID підписки: отримано %d рядків, очікувалось %d рядок" -#: pg_createsubscriber.c:1794 +#: pg_createsubscriber.c:1930 +#, c-format +msgid "dry-run: would set the replication progress (node name \"%s\", LSN %s) in database \"%s\"" +msgstr "пробний запуск: встановив би прогрес реплікації (назва вузла \"%s\", LSN %s) в базі даних \"%s\"" + +#: pg_createsubscriber.c:1933 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "налаштування прогресу реплікації (назва вузла \"%s, LSN %s) в базі даних \"%s\"" -#: pg_createsubscriber.c:1809 +#: pg_createsubscriber.c:1948 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "не вдалося виставити прогрес реплікації для підписки \"%s\": %s" -#: pg_createsubscriber.c:1840 +#: pg_createsubscriber.c:1980 +#, c-format +msgid "dry-run: would enable subscription \"%s\" in database \"%s\"" +msgstr "пробний запуск: активував би підписку \"%s\" в базі даних \"%s\"" + +#: pg_createsubscriber.c:1983 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "активація підписки \"%s\" в базі даних \"%s\"" -#: pg_createsubscriber.c:1852 +#: pg_createsubscriber.c:1995 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "не вдалося активувати підписку \"%s\": %s" -#: pg_createsubscriber.c:1944 +#: pg_createsubscriber.c:2041 +#, c-format +msgid "could not obtain a list of databases: %s" +msgstr "не вдалося отримати список баз даних: %s" + +#: pg_createsubscriber.c:2145 #, c-format msgid "cannot be executed by \"root\"" msgstr "\"root\" не може це виконувати" -#: pg_createsubscriber.c:1945 +#: pg_createsubscriber.c:2146 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Запускати %s треба від суперкористувача PostgreSQL." -#: pg_createsubscriber.c:1966 +#: pg_createsubscriber.c:2169 +#, c-format +msgid "database \"%s\" specified more than once for -d/--database" +msgstr "база даних \"%s\" вказана більше одного разу для -d/--database" + +#: pg_createsubscriber.c:2210 #, c-format -msgid "database \"%s\" specified more than once" -msgstr "база даних \"%s\" вказана неодноразово" +msgid "publication \"%s\" specified more than once for --publication" +msgstr "публікація \"%s\" вказана більше одного разу для --publication" -#: pg_createsubscriber.c:2007 +#: pg_createsubscriber.c:2219 #, c-format -msgid "publication \"%s\" specified more than once" -msgstr "публікація \"%s\" вказана неодноразово" +msgid "replication slot \"%s\" specified more than once for --replication-slot" +msgstr "слот реплікації \"%s\" вказаний більше одного разу для --replication-slot" -#: pg_createsubscriber.c:2019 +#: pg_createsubscriber.c:2228 #, c-format -msgid "replication slot \"%s\" specified more than once" -msgstr "слот реплікації \"%s\" вказаний неодноразово" +msgid "subscription \"%s\" specified more than once for --subscription" +msgstr "підписка \"%s\" вказана більше одного разу для --subscription" -#: pg_createsubscriber.c:2031 +#: pg_createsubscriber.c:2234 #, c-format -msgid "subscription \"%s\" specified more than once" -msgstr "підписка \"%s\" вказана неодноразово" +msgid "object type \"%s\" specified more than once for --clean" +msgstr "тип об'єкта \"%s\" вказаний більше одного разу для --clean" -#: pg_createsubscriber.c:2054 +#: pg_createsubscriber.c:2259 +#, c-format +msgid "options %s and %s cannot be used together" +msgstr "параметри %s і %s не можна використовувати разом" + +#: pg_createsubscriber.c:2278 #, c-format msgid "no subscriber data directory specified" msgstr "не вказано каталог з даними підписника" -#: pg_createsubscriber.c:2065 +#: pg_createsubscriber.c:2289 #, c-format msgid "could not determine current directory" msgstr "не вдалося визначити поточний каталог" -#: pg_createsubscriber.c:2082 +#: pg_createsubscriber.c:2306 #, c-format msgid "no publisher connection string specified" msgstr "немає рядка підключення до видавця" -#: pg_createsubscriber.c:2086 +#: pg_createsubscriber.c:2310 #, c-format msgid "validating publisher connection string" msgstr "перевірка рядка підключення видавця" -#: pg_createsubscriber.c:2092 +#: pg_createsubscriber.c:2316 #, c-format msgid "validating subscriber connection string" msgstr "перевірка рядка з'єднання з підписником" -#: pg_createsubscriber.c:2097 +#: pg_createsubscriber.c:2333 #, c-format msgid "no database was specified" msgstr "база даних не вказана" -#: pg_createsubscriber.c:2109 +#: pg_createsubscriber.c:2344 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "ім'я бази даних \"%s\" було отримано з рядка підключення видавця" -#: pg_createsubscriber.c:2114 +#: pg_createsubscriber.c:2349 #, c-format msgid "no database name specified" msgstr "не вказано ім'я бази даних" -#: pg_createsubscriber.c:2124 +#: pg_createsubscriber.c:2359 #, c-format msgid "wrong number of publication names specified" msgstr "вказана невірна кількість імен публікації" -#: pg_createsubscriber.c:2125 +#: pg_createsubscriber.c:2360 #, c-format msgid "The number of specified publication names (%d) must match the number of specified database names (%d)." msgstr "Кількість вказаних назв публікації (%d) мусить співпадати з кількістю вказаних баз даних (%d)." -#: pg_createsubscriber.c:2131 +#: pg_createsubscriber.c:2366 #, c-format msgid "wrong number of subscription names specified" msgstr "вказано неправильну кількість імен підписки" -#: pg_createsubscriber.c:2132 +#: pg_createsubscriber.c:2367 #, c-format msgid "The number of specified subscription names (%d) must match the number of specified database names (%d)." msgstr "Кількість зазначених назв підписки (%d) повинна співпадати з кількістю зазначених назв бази даних (%d)." -#: pg_createsubscriber.c:2138 +#: pg_createsubscriber.c:2373 #, c-format msgid "wrong number of replication slot names specified" msgstr "вказано неправильну кількість назв слотів реплікації" -#: pg_createsubscriber.c:2139 +#: pg_createsubscriber.c:2374 #, c-format msgid "The number of specified replication slot names (%d) must match the number of specified database names (%d)." msgstr "Кількість вказаних назв слотів реплікації (%d) повинна збігатися з кількістю вказаних назв бази даних (%d)." -#: pg_createsubscriber.c:2168 +#: pg_createsubscriber.c:2386 +#, c-format +msgid "invalid object type \"%s\" specified for %s" +msgstr "невірний тип об'єкта \"%s\" вказаний для %s" + +#: pg_createsubscriber.c:2388 +#, c-format +msgid "The valid value is: \"%s\"" +msgstr "Коректне значення: \"%s\"" + +#: pg_createsubscriber.c:2419 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "каталог даних підписника не є копією кластера вихідної бази даних" -#: pg_createsubscriber.c:2181 +#: pg_createsubscriber.c:2432 #, c-format msgid "standby server is running" msgstr "резервний сервер працює" -#: pg_createsubscriber.c:2182 +#: pg_createsubscriber.c:2433 #, c-format msgid "Stop the standby server and try again." msgstr "Зупиніть резервний сервер та повторіть спробу." -#: pg_createsubscriber.c:2191 +#: pg_createsubscriber.c:2442 #, c-format msgid "starting the standby server with command-line options" msgstr "запуск резервного серверу з параметрами командного рядка" -#: pg_createsubscriber.c:2207 pg_createsubscriber.c:2242 +#: pg_createsubscriber.c:2458 pg_createsubscriber.c:2493 #, c-format msgid "stopping the subscriber" msgstr "зупинка підписника" -#: pg_createsubscriber.c:2221 +#: pg_createsubscriber.c:2472 #, c-format msgid "starting the subscriber" msgstr "запуск підписника" -#: pg_createsubscriber.c:2250 +#: pg_createsubscriber.c:2501 #, c-format msgid "Done!" msgstr "Готово!" @@ -1898,17 +2018,17 @@ msgstr "%s отримує передачу випереджувальних жу msgid " -D, --directory=DIR receive write-ahead log files into this directory\n" msgstr " -D, --directory=DIR зберігати файли випереджувального журналювання до цього каталогу\n" -#: pg_receivewal.c:83 pg_recvlogical.c:93 +#: pg_receivewal.c:83 pg_recvlogical.c:94 #, c-format msgid " -E, --endpos=LSN exit after receiving the specified LSN\n" msgstr " -E, --endpos=LSN вийти після отримання вказаного LSN\n" -#: pg_receivewal.c:84 pg_recvlogical.c:97 +#: pg_receivewal.c:84 pg_recvlogical.c:98 #, c-format msgid " --if-not-exists do not error if slot already exists when creating a slot\n" msgstr " --if-not-exists не видавати помилку, при створенні слота, якщо слот вже існує\n" -#: pg_receivewal.c:85 pg_recvlogical.c:99 +#: pg_receivewal.c:85 pg_recvlogical.c:100 #, c-format msgid " -n, --no-loop do not loop on connection lost\n" msgstr " -n, --no-loop переривати роботу при втраті підключення\n" @@ -1918,7 +2038,7 @@ msgstr " -n, --no-loop переривати роботу при втр msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync не чекати безпечного збереження змін на диск\n" -#: pg_receivewal.c:87 pg_recvlogical.c:104 +#: pg_receivewal.c:87 pg_recvlogical.c:105 #, c-format msgid " -s, --status-interval=SECS\n" " time between status packets sent to server (default: %d)\n" @@ -1944,12 +2064,12 @@ msgid "\n" msgstr "\n" "Додаткові дії:\n" -#: pg_receivewal.c:104 pg_recvlogical.c:89 +#: pg_receivewal.c:104 pg_recvlogical.c:88 #, c-format msgid " --create-slot create a new replication slot (for the slot's name see --slot)\n" msgstr " --create-slot створити новий слот реплікації (ім'я слота задає параметр --slot)\n" -#: pg_receivewal.c:105 pg_recvlogical.c:90 +#: pg_receivewal.c:105 pg_recvlogical.c:89 #, c-format msgid " --drop-slot drop the replication slot (for the slot's name see --slot)\n" msgstr " --drop-slot видалити слот реплікації (ім'я слота задає параметр --slot)\n" @@ -1969,7 +2089,7 @@ msgstr "зупинено потокове передавання журналу msgid "switched to timeline %u at %X/%X" msgstr "переключено на часову шкалу %u в позиції %X/%X" -#: pg_receivewal.c:224 pg_recvlogical.c:1053 +#: pg_receivewal.c:224 pg_recvlogical.c:1075 #, c-format msgid "received interrupt signal, exiting" msgstr "отримано сигнал переривання, завершення роботи" @@ -2039,7 +2159,7 @@ msgstr "неможливо перевірити файл \"%s\": стиснен msgid "starting log streaming at %X/%X (timeline %u)" msgstr "початок потокового передавання журналу в позиції %X/%X (часова шкала %u)" -#: pg_receivewal.c:693 pg_recvlogical.c:801 +#: pg_receivewal.c:693 pg_recvlogical.c:809 #, c-format msgid "could not parse end position \"%s\"" msgstr "не вдалося проаналізувати кінцеву позицію \"%s\"" @@ -2069,62 +2189,69 @@ msgstr "стиснення з %s ще не підтримується" msgid "replication connection using slot \"%s\" is unexpectedly database specific" msgstr "підключення для реплікації з використанням слоту \"%s\" неочікувано виявилось прив'язаним до бази даних" -#: pg_receivewal.c:878 pg_recvlogical.c:972 +#: pg_receivewal.c:878 pg_recvlogical.c:993 #, c-format msgid "dropping replication slot \"%s\"" msgstr "видалення слоту реплікації \"%s\"" -#: pg_receivewal.c:889 pg_recvlogical.c:982 +#: pg_receivewal.c:889 pg_recvlogical.c:1003 #, c-format msgid "creating replication slot \"%s\"" msgstr "створення слоту реплікації \"%s\"" -#: pg_receivewal.c:918 pg_recvlogical.c:1006 +#: pg_receivewal.c:918 pg_recvlogical.c:1028 #, c-format msgid "disconnected" msgstr "роз’єднано" #. translator: check source for value for %d -#: pg_receivewal.c:922 pg_recvlogical.c:1010 +#: pg_receivewal.c:922 pg_recvlogical.c:1032 #, c-format msgid "disconnected; waiting %d seconds to try again" msgstr "роз’єднано; через %d секунд буде повторна спроба" -#: pg_recvlogical.c:84 +#: pg_recvlogical.c:83 #, c-format msgid "%s controls PostgreSQL logical decoding streams.\n\n" msgstr "%s керує потоковими передаваннями логічного декодування PostgreSQL.\n\n" -#: pg_recvlogical.c:88 +#: pg_recvlogical.c:87 #, c-format msgid "\n" "Action to be performed:\n" msgstr "\n" "Дія до виконання:\n" -#: pg_recvlogical.c:91 +#: pg_recvlogical.c:90 #, c-format msgid " --start start streaming in a replication slot (for the slot's name see --slot)\n" msgstr " --start почати потокове передавання в слоті реплікації (ім'я слоту задає параметр --slot)\n" -#: pg_recvlogical.c:94 +#: pg_recvlogical.c:92 +#, c-format +msgid " --enable-failover enable replication slot synchronization to standby servers when\n" +" creating a replication slot\n" +msgstr " --enable-failover увімкнути синхронізацію слотів реплікації з резервними\n" +" серверами при створенні слоту реплікації\n" + +#: pg_recvlogical.c:95 #, c-format msgid " -f, --file=FILE receive log into this file, - for stdout\n" msgstr " -f, --file=FILE зберігати журнал до цього файлу, - позначає stdout\n" -#: pg_recvlogical.c:95 +#: pg_recvlogical.c:96 #, c-format msgid " -F --fsync-interval=SECS\n" " time between fsyncs to the output file (default: %d)\n" msgstr " -F --fsync-interval=SECS\n" " час між fsyncs до файлу виводу (за замовчуванням: %d)\n" -#: pg_recvlogical.c:98 +#: pg_recvlogical.c:99 #, c-format msgid " -I, --startpos=LSN where in an existing slot should the streaming start\n" msgstr " -I, --startpos=LSN де в існуючому слоті слід почати потокове передавання\n" -#: pg_recvlogical.c:100 +#: pg_recvlogical.c:101 #, c-format msgid " -o, --option=NAME[=VALUE]\n" " pass option NAME with optional value VALUE to the\n" @@ -2133,173 +2260,178 @@ msgstr " -o, --option=NAME[=VALUE]\n" " передати параметр NAME з додатковим значенням VALUE до\n" " плагіну виводу\n" -#: pg_recvlogical.c:103 +#: pg_recvlogical.c:104 #, c-format msgid " -P, --plugin=PLUGIN use output plugin PLUGIN (default: %s)\n" msgstr " -P, --plugin=PLUGIN використовувати плагін виводу PLUGIN (за замовчуванням: %s)\n" -#: pg_recvlogical.c:106 +#: pg_recvlogical.c:107 #, c-format msgid " -S, --slot=SLOTNAME name of the logical replication slot\n" msgstr " -S, --slot=SLOTNAME ім'я слоту логічної реплікації\n" -#: pg_recvlogical.c:107 +#: pg_recvlogical.c:108 +#, c-format +msgid " -t, --enable-two-phase enable decoding of prepared transactions when creating a slot\n" +msgstr " -t, --enable-two-phase увімкнути декодування підготовлених транзакцій при створенні слоту\n" + +#: pg_recvlogical.c:109 #, c-format -msgid " -t, --two-phase enable decoding of prepared transactions when creating a slot\n" -msgstr " -t, --two-phase активувати декодування підготовлених транзакцій під час створення слоту\n" +msgid " --two-phase (same as --enable-two-phase, deprecated)\n" +msgstr " --two-phase (те саме, що і --enable-two-phase, застарілий)\n" -#: pg_recvlogical.c:112 +#: pg_recvlogical.c:114 #, c-format msgid " -d, --dbname=DBNAME database to connect to\n" msgstr " -d, --dbname=DBNAME бази даних для підключення\n" -#: pg_recvlogical.c:145 +#: pg_recvlogical.c:147 #, c-format msgid "confirming write up to %X/%X, flush to %X/%X (slot %s)" msgstr "підтвердження запису до %X/%X, очищення до %X/%X (слот %s)" -#: pg_recvlogical.c:169 receivelog.c:360 +#: pg_recvlogical.c:171 receivelog.c:359 #, c-format msgid "could not send feedback packet: %s" msgstr "не вдалося відправити пакет зворотнього зв'язку: %s" -#: pg_recvlogical.c:239 +#: pg_recvlogical.c:241 #, c-format msgid "starting log streaming at %X/%X (slot %s)" msgstr "початок потокового передавання журналу в позиції %X/%X (слот %s)" -#: pg_recvlogical.c:281 +#: pg_recvlogical.c:283 #, c-format msgid "streaming initiated" msgstr "потокове передавання ініційовано" -#: pg_recvlogical.c:346 +#: pg_recvlogical.c:348 #, c-format msgid "could not open log file \"%s\": %m" msgstr "не вдалося відкрити файл журналу \"%s\": %m" -#: pg_recvlogical.c:375 receivelog.c:882 +#: pg_recvlogical.c:377 receivelog.c:889 #, c-format msgid "invalid socket: %s" msgstr "неприпустимий сокет: %s" -#: pg_recvlogical.c:428 receivelog.c:910 +#: pg_recvlogical.c:430 receivelog.c:917 #, c-format msgid "%s() failed: %m" msgstr "%s() помилка: %m" -#: pg_recvlogical.c:435 receivelog.c:959 +#: pg_recvlogical.c:437 receivelog.c:966 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "не вдалося отримати дані з WAL потоку: %s" -#: pg_recvlogical.c:477 pg_recvlogical.c:528 receivelog.c:1003 -#: receivelog.c:1066 +#: pg_recvlogical.c:479 pg_recvlogical.c:530 receivelog.c:1010 +#: receivelog.c:1073 #, c-format msgid "streaming header too small: %d" msgstr "заголовок потокового передавання занадто малий: %d" -#: pg_recvlogical.c:512 receivelog.c:843 +#: pg_recvlogical.c:514 receivelog.c:846 #, c-format msgid "unrecognized streaming header: \"%c\"" msgstr "нерозпізнаний заголовок потокового передавання: \"%c\"" -#: pg_recvlogical.c:566 pg_recvlogical.c:578 +#: pg_recvlogical.c:568 pg_recvlogical.c:580 #, c-format msgid "could not write %d bytes to log file \"%s\": %m" msgstr "не вдалося записати %d байт до файлу журналу \"%s\": %m" -#: pg_recvlogical.c:636 receivelog.c:642 receivelog.c:679 +#: pg_recvlogical.c:638 receivelog.c:641 receivelog.c:678 #, c-format msgid "unexpected termination of replication stream: %s" msgstr "неочікуване завершення роботи потоку реплікації: %s" -#: pg_recvlogical.c:796 +#: pg_recvlogical.c:804 #, c-format msgid "could not parse start position \"%s\"" msgstr "не вдалося аналізувати початкову позицію \"%s\"" -#: pg_recvlogical.c:874 +#: pg_recvlogical.c:882 #, c-format msgid "no slot specified" msgstr "слот не вказано" -#: pg_recvlogical.c:881 +#: pg_recvlogical.c:889 #, c-format msgid "no target file specified" msgstr "цільовий файл не вказано" -#: pg_recvlogical.c:888 +#: pg_recvlogical.c:896 #, c-format msgid "no database specified" msgstr "база даних не вказана" -#: pg_recvlogical.c:895 +#: pg_recvlogical.c:903 #, c-format msgid "at least one action needs to be specified" msgstr "необхідно вказати щонайменше одну дію" -#: pg_recvlogical.c:902 +#: pg_recvlogical.c:910 #, c-format msgid "cannot use --create-slot or --start together with --drop-slot" msgstr "використовувати --create-slot або --start разом з --drop-slot не можна" -#: pg_recvlogical.c:909 +#: pg_recvlogical.c:917 #, c-format msgid "cannot use --create-slot or --drop-slot together with --startpos" msgstr "використовувати --create-slot або --drop-slot разом з --startpos не можна" -#: pg_recvlogical.c:916 +#: pg_recvlogical.c:924 #, c-format msgid "--endpos may only be specified with --start" msgstr "--endpos можна вказати лише з --start" -#: pg_recvlogical.c:923 +#: pg_recvlogical.c:933 pg_recvlogical.c:940 #, c-format -msgid "--two-phase may only be specified with --create-slot" -msgstr "--two-phase може бути вказано тільки з --create-slot" +msgid "%s may only be specified with --create-slot" +msgstr "%s можна вказати лише з --create-slot" -#: pg_recvlogical.c:956 +#: pg_recvlogical.c:977 #, c-format msgid "could not establish database-specific replication connection" msgstr "не вдалося встановити підключення для реплікації до вказаної бази даних" -#: pg_recvlogical.c:1056 +#: pg_recvlogical.c:1078 #, c-format msgid "end position %X/%X reached by keepalive" msgstr "кінцева позиція %X/%X досягнута наживо" -#: pg_recvlogical.c:1061 +#: pg_recvlogical.c:1083 #, c-format msgid "end position %X/%X reached by WAL record at %X/%X" msgstr "кінцева позиція %X/%X досягнута WAL записом %X/%X" -#: receivelog.c:66 +#: receivelog.c:65 #, c-format msgid "could not create archive status file \"%s\": %s" msgstr "не вдалося створити файл статусу архіву \"%s\": %s" -#: receivelog.c:73 +#: receivelog.c:72 #, c-format msgid "could not close archive status file \"%s\": %s" msgstr "не вдалося закрити файл статусу архіву \"%s\": %s" -#: receivelog.c:122 +#: receivelog.c:121 #, c-format msgid "could not get size of write-ahead log file \"%s\": %s" msgstr "не вдалося отримати розмір файлу випереджувального журналювання \"%s\": %s" -#: receivelog.c:133 +#: receivelog.c:132 #, c-format msgid "could not open existing write-ahead log file \"%s\": %s" msgstr "не вдалося відкрити існуючий файл випереджувального журналювання \"%s\": %s" -#: receivelog.c:142 +#: receivelog.c:141 #, c-format msgid "could not fsync existing write-ahead log file \"%s\": %s" msgstr "не вдалося fsync існуючий файл випереджувального журналювання \"%s\": %s" -#: receivelog.c:157 +#: receivelog.c:156 #, c-format msgid "write-ahead log file \"%s\" has %zd byte, should be 0 or %d" msgid_plural "write-ahead log file \"%s\" has %zd bytes, should be 0 or %d" @@ -2308,107 +2440,107 @@ msgstr[1] "файл випереджувального журналювання msgstr[2] "файл випереджувального журналювання \"%s\" має %zd байтів, а повинен мати 0 або %d" msgstr[3] "файл випереджувального журналювання \"%s\" має %zd байтів, а повинен мати 0 або %d" -#: receivelog.c:175 +#: receivelog.c:174 #, c-format msgid "could not open write-ahead log file \"%s\": %s" msgstr "не вдалося відкрити файл випереджувального журналювання \"%s\": %s" -#: receivelog.c:216 +#: receivelog.c:215 #, c-format msgid "not renaming \"%s\", segment is not complete" msgstr "не перейменовується \"%s\", сегмент не завершений" -#: receivelog.c:227 receivelog.c:317 receivelog.c:688 +#: receivelog.c:226 receivelog.c:316 receivelog.c:687 #, c-format msgid "could not close file \"%s\": %s" msgstr "не вдалося закрити файл \"%s\": %s" -#: receivelog.c:288 +#: receivelog.c:287 #, c-format msgid "server reported unexpected history file name for timeline %u: %s" msgstr "сервер повідомив неочікуване ім'я файлу історії часової шкали %u: %s" -#: receivelog.c:297 +#: receivelog.c:296 #, c-format msgid "could not create timeline history file \"%s\": %s" msgstr "не вдалося створити файл історії часової шкали \"%s\": %s" -#: receivelog.c:304 +#: receivelog.c:303 #, c-format msgid "could not write timeline history file \"%s\": %s" msgstr "не вдалося записати файл історії часової шкали \"%s\": %s" -#: receivelog.c:394 +#: receivelog.c:393 #, c-format msgid "incompatible server version %s; client does not support streaming from server versions older than %s" msgstr "несумісна версія серверу %s; клієнт не підтримує потокове передавання з версій серверу старіших, ніж %s" -#: receivelog.c:403 +#: receivelog.c:402 #, c-format msgid "incompatible server version %s; client does not support streaming from server versions newer than %s" msgstr "несумісна версія серверу %s; клієнт не підтримує потокове передавання з версій серверу новіших, ніж %s" -#: receivelog.c:508 +#: receivelog.c:507 #, c-format msgid "system identifier does not match between base backup and streaming connection" msgstr "системний ідентифікатор базової резервної копії не відповідає ідентифікатору потокового передавання підключення" -#: receivelog.c:516 +#: receivelog.c:515 #, c-format msgid "starting timeline %u is not present in the server" msgstr "початкова часова шкала %u не існує на сервері" -#: receivelog.c:555 +#: receivelog.c:554 #, c-format msgid "unexpected response to TIMELINE_HISTORY command: got %d rows and %d fields, expected %d rows and %d fields" msgstr "неочікувана відповідь на команду TIMELINE_HISTORY: отримано %d рядків і %d полів, очікувалось %d рядків і %d полів" -#: receivelog.c:626 +#: receivelog.c:625 #, c-format msgid "server reported unexpected next timeline %u, following timeline %u" msgstr "сервер неочікувано повідомив наступну часову шкалу %u після часової шкали %u" -#: receivelog.c:632 +#: receivelog.c:631 #, c-format msgid "server stopped streaming timeline %u at %X/%X, but reported next timeline %u to begin at %X/%X" msgstr "сервер зупинив потокове передавання часової шкали %u в позиції %X/%X, але повідомив, що наступна часова шкала %u почнеться в позиції %X/%X" -#: receivelog.c:672 +#: receivelog.c:671 #, c-format msgid "replication stream was terminated before stop point" msgstr "потік реплікації перервано до точки зупинки" -#: receivelog.c:718 +#: receivelog.c:717 #, c-format msgid "unexpected result set after end-of-timeline: got %d rows and %d fields, expected %d rows and %d fields" msgstr "неочікуваний набір результатів після кінця часової шкали: отримано %d рядків і %d полів, очікувалось %d рядків і %d полів" -#: receivelog.c:727 +#: receivelog.c:726 #, c-format msgid "could not parse next timeline's starting point \"%s\"" msgstr "не вдалося аналізувати початкову точку наступної часової шкали \"%s\"" -#: receivelog.c:775 receivelog.c:1022 walmethods.c:1206 +#: receivelog.c:774 receivelog.c:1029 walmethods.c:1206 #, c-format msgid "could not fsync file \"%s\": %s" msgstr "не вдалося fsync файл \"%s\": %s" -#: receivelog.c:1083 +#: receivelog.c:1090 #, c-format msgid "received write-ahead log record for offset %u with no file open" msgstr "отримано запис випереджувального журналювання для зсуву %u з закритим файлом" -#: receivelog.c:1093 +#: receivelog.c:1100 #, c-format msgid "got WAL data offset %08x, expected %08x" msgstr "отримано дані зсуву WAL %08x, очікувалось %08x" -#: receivelog.c:1128 +#: receivelog.c:1135 #, c-format msgid "could not write %d bytes to WAL file \"%s\": %s" msgstr "не вдалося записати %d байт до файлу WAL \"%s\": %s" -#: receivelog.c:1153 receivelog.c:1193 receivelog.c:1222 +#: receivelog.c:1160 receivelog.c:1200 receivelog.c:1228 #, c-format msgid "could not send copy-end packet: %s" msgstr "не вдалося відправити пакет кінця копіювання \"copy-end\": %s" @@ -2422,11 +2554,6 @@ msgstr "Пароль: " msgid "could not connect to server" msgstr "не вдалося підключитись до серверу" -#: streamutil.c:230 -#, c-format -msgid "could not clear \"search_path\": %s" -msgstr "не вдалося очистити \"search_path\": %s" - #: streamutil.c:246 #, c-format msgid "could not determine server setting for \"integer_datetimes\"" @@ -2437,17 +2564,17 @@ msgstr "не вдалося визначити налаштування серв msgid "\"integer_datetimes\" compile flag does not match server" msgstr "флаг компіляції \"integer_datetimes\" не відповідає серверу" -#: streamutil.c:372 +#: streamutil.c:304 #, c-format msgid "could not fetch WAL segment size: got %d rows and %d fields, expected %d rows and %d or more fields" msgstr "не вдалося отримати розмір сегменту WAL: отримано %d рядків і %d полів, очікувалось %d рядків і %d або більше полів" -#: streamutil.c:382 +#: streamutil.c:314 #, c-format msgid "WAL segment size could not be parsed" msgstr "не вдалося аналізувати розмір сегмента WAL" -#: streamutil.c:400 +#: streamutil.c:332 #, c-format msgid "remote server reported invalid WAL segment size (%d byte)" msgid_plural "remote server reported invalid WAL segment size (%d bytes)" @@ -2456,52 +2583,52 @@ msgstr[1] "віддалений сервер повідомив про непр msgstr[2] "віддалений сервер повідомив про неправильний розмір сегмента WAL (%d байтів)" msgstr[3] "віддалений сервер повідомив про неправильний розмір сегмента WAL (%d байтів)" -#: streamutil.c:404 +#: streamutil.c:336 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "Розмір сегмента WAL повинен бути степенем двійки від 1 МБ до 1 ГБ." -#: streamutil.c:446 +#: streamutil.c:378 #, c-format msgid "could not fetch group access flag: got %d rows and %d fields, expected %d rows and %d or more fields" msgstr "не вдалося вилучити позначку доступа групи: отримано %d рядків і %d полів, очікувалось %d рядків і %d або більше полів" -#: streamutil.c:455 +#: streamutil.c:387 #, c-format msgid "group access flag could not be parsed: %s" msgstr "не вдалося аналізувати позначку доступа групи: %s" -#: streamutil.c:498 streamutil.c:535 +#: streamutil.c:430 streamutil.c:467 #, c-format msgid "could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields" msgstr "не вдалося ідентифікувати систему: отримано %d рядків і %d полів, очікувалось %d рядків і %d або більше полів" -#: streamutil.c:587 +#: streamutil.c:519 #, c-format msgid "could not read replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields" msgstr "не вдалося прочитати слот реплікації \"%s\": отримано %d рядків і %d полів, очікувалось %d рядків і %d полів" -#: streamutil.c:599 +#: streamutil.c:531 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "слот реплікації \"%s\" не існує" -#: streamutil.c:610 +#: streamutil.c:542 #, c-format msgid "expected a physical replication slot, got type \"%s\" instead" msgstr "очікувався слот фізичної реплікації, а натомість знайдено \"%s\"" -#: streamutil.c:624 +#: streamutil.c:556 #, c-format msgid "could not parse restart_lsn \"%s\" for replication slot \"%s\"" msgstr "не вдалося аналізувати restart_lsn \"%s\" для слоту реплікації \"%s\"" -#: streamutil.c:741 +#: streamutil.c:678 #, c-format msgid "could not create replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields" msgstr "не вдалося створити слот реплікації \"%s\": отримано %d рядків і %d полів, очікувалось %d рядків і %d полів" -#: streamutil.c:785 +#: streamutil.c:722 #, c-format msgid "could not drop replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields" msgstr "не вдалося видалити слот реплікації \"%s\": отримано %d рядків і %d полів, очікувалось %d рядків і %d полів" diff --git a/src/bin/pg_checksums/po/es.po b/src/bin/pg_checksums/po/es.po index 210ab63982b..4c83b1990db 100644 --- a/src/bin/pg_checksums/po/es.po +++ b/src/bin/pg_checksums/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_checksums (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:24+0000\n" +"POT-Creation-Date: 2026-02-06 23:23+0000\n" "PO-Revision-Date: 2025-09-21 11:25+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: pgsql-es-ayuda \n" diff --git a/src/bin/pg_checksums/po/uk.po b/src/bin/pg_checksums/po/uk.po index 747d6867562..af80fdaee5b 100644 --- a/src/bin/pg_checksums/po/uk.po +++ b/src/bin/pg_checksums/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:25+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:55+0000\n" +"PO-Revision-Date: 2026-01-02 14:40\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_checksums.pot\n" -"X-Crowdin-File-ID: 1000\n" +"X-Crowdin-File: /REL_18_STABLE/pg_checksums.pot\n" +"X-Crowdin-File-ID: 1081\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -70,9 +70,9 @@ msgid "possible byte ordering mismatch\n" msgstr "можлива помилка у послідовності байтів.\n" "Порядок байтів, що використовують для зберігання файлу pg_control, може не відповідати тому, який використовується цією програмою. У такому випадку результати нижче будуть неправильним, і інсталяція PostgreSQL буде несумісною з цим каталогом даних." -#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:70 -#: ../../common/file_utils.c:347 ../../common/file_utils.c:406 -#: ../../common/file_utils.c:480 pg_checksums.c:192 +#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 +#: ../../common/file_utils.c:370 ../../common/file_utils.c:428 +#: ../../common/file_utils.c:502 pg_checksums.c:191 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" @@ -82,8 +82,8 @@ msgstr "не можливо відкрити файл \"%s\": %m" msgid "could not write file \"%s\": %m" msgstr "не вдалося записати файл \"%s\": %m" -#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:418 -#: ../../common/file_utils.c:488 +#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:440 +#: ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" @@ -99,35 +99,35 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 -#: pg_checksums.c:338 pg_checksums.c:407 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 +#: pg_checksums.c:337 pg_checksums.c:406 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 -#: pg_checksums.c:310 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 +#: pg_checksums.c:309 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -147,84 +147,84 @@ msgstr "%s має бути в діапазоні %d..%d" msgid "unrecognized sync method: %s" msgstr "нерозпізнаний метод синхронізації: %s" -#: pg_checksums.c:70 +#: pg_checksums.c:69 #, c-format msgid "%s enables, disables, or verifies data checksums in a PostgreSQL database cluster.\n\n" msgstr "%s активує, деактивує або перевіряє контрольні суми даних в кластері бази даних PostgreSQL.\n\n" -#: pg_checksums.c:71 +#: pg_checksums.c:70 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_checksums.c:72 +#: pg_checksums.c:71 #, c-format msgid " %s [OPTION]... [DATADIR]\n" msgstr " %s [OPTION]... [DATADIR]\n" -#: pg_checksums.c:73 +#: pg_checksums.c:72 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: pg_checksums.c:74 +#: pg_checksums.c:73 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR каталог даних\n" -#: pg_checksums.c:75 +#: pg_checksums.c:74 #, c-format msgid " -c, --check check data checksums (default)\n" msgstr " -c, --check перевірити контрольні суми даних (за замовчуванням)\n" -#: pg_checksums.c:76 +#: pg_checksums.c:75 #, c-format msgid " -d, --disable disable data checksums\n" msgstr " -d, --disable вимкнути контрольні суми даних\n" -#: pg_checksums.c:77 +#: pg_checksums.c:76 #, c-format msgid " -e, --enable enable data checksums\n" msgstr " -e, --enable активувати контрольні суми даних\n" -#: pg_checksums.c:78 +#: pg_checksums.c:77 #, c-format msgid " -f, --filenode=FILENODE check only relation with specified filenode\n" msgstr " -f, --filenode=FILENODE перевіряти відношення лише із вказаним файлом\n" -#: pg_checksums.c:79 +#: pg_checksums.c:78 #, c-format msgid " -N, --no-sync do not wait for changes to be written safely to disk\n" msgstr " -N, --no-sync не чекати на безпечний запис змін на диск\n" -#: pg_checksums.c:80 +#: pg_checksums.c:79 #, c-format msgid " -P, --progress show progress information\n" msgstr " -P, --progress показати інформацію про прогрес\n" -#: pg_checksums.c:81 +#: pg_checksums.c:80 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METHOD встановити метод синхронізації файлів на диск\n" -#: pg_checksums.c:82 +#: pg_checksums.c:81 #, c-format msgid " -v, --verbose output verbose messages\n" msgstr " -v, --verbose виводити детальні повідомлення\n" -#: pg_checksums.c:83 +#: pg_checksums.c:82 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію, потім вийти\n" -#: pg_checksums.c:84 +#: pg_checksums.c:83 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: pg_checksums.c:85 +#: pg_checksums.c:84 #, c-format msgid "\n" "If no data directory (DATADIR) is specified, the environment variable PGDATA\n" @@ -232,177 +232,177 @@ msgid "\n" msgstr "\n" "Якщо каталог даних не вказано (DATADIR), використовується змінна середовища PGDATA.\n\n" -#: pg_checksums.c:87 +#: pg_checksums.c:86 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Повідомляти про помилки на <%s>.\n" -#: pg_checksums.c:88 +#: pg_checksums.c:87 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: pg_checksums.c:145 +#: pg_checksums.c:144 #, c-format -msgid "%lld/%lld MB (%d%%) computed" -msgstr "%lld/%lld MB (%d%%) обчислено" +msgid "%/% MB (%d%%) computed" +msgstr "%/% МБ (%d%%) обчислено" -#: pg_checksums.c:206 +#: pg_checksums.c:205 #, c-format msgid "could not read block %u in file \"%s\": %m" msgstr "не вдалося прочитати блок %u в файлі \"%s\": %m" -#: pg_checksums.c:209 +#: pg_checksums.c:208 #, c-format msgid "could not read block %u in file \"%s\": read %d of %d" msgstr "не вдалося прочитати блок %u у файлі \"%s\": прочитано %d з %d" -#: pg_checksums.c:232 +#: pg_checksums.c:231 #, c-format msgid "checksum verification failed in file \"%s\", block %u: calculated checksum %X but block contains %X" msgstr "помилка перевірки контрольних сум у файлі \"%s\", блок %u: обчислена контрольна сума %X, але блок містить %X" -#: pg_checksums.c:255 +#: pg_checksums.c:254 #, c-format msgid "seek failed for block %u in file \"%s\": %m" msgstr "помилка пошуку для блоку %u у файлі \"%s\": %m" -#: pg_checksums.c:262 +#: pg_checksums.c:261 #, c-format msgid "could not write block %u in file \"%s\": %m" msgstr "не вдалося записати блок %u у файл \"%s\": %m" -#: pg_checksums.c:265 +#: pg_checksums.c:264 #, c-format msgid "could not write block %u in file \"%s\": wrote %d of %d" msgstr "не вдалося записати блок %u у файлі \"%s\": записано %d з %d" -#: pg_checksums.c:277 +#: pg_checksums.c:276 #, c-format msgid "checksums verified in file \"%s\"" msgstr "контрольні суми у файлі \"%s\" перевірені" -#: pg_checksums.c:279 +#: pg_checksums.c:278 #, c-format msgid "checksums enabled in file \"%s\"" msgstr "контрольні суми у файлі \"%s\" активовані" -#: pg_checksums.c:362 +#: pg_checksums.c:361 #, c-format msgid "invalid segment number %d in file name \"%s\"" msgstr "неприпустимий номер сегменту %d в імені файлу \"%s\"" -#: pg_checksums.c:509 pg_checksums.c:525 pg_checksums.c:535 pg_checksums.c:543 +#: pg_checksums.c:508 pg_checksums.c:524 pg_checksums.c:534 pg_checksums.c:542 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_checksums.c:524 +#: pg_checksums.c:523 #, c-format msgid "no data directory specified" msgstr "каталог даних не вказано" -#: pg_checksums.c:533 +#: pg_checksums.c:532 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: pg_checksums.c:542 +#: pg_checksums.c:541 #, c-format msgid "option -f/--filenode can only be used with --check" msgstr "параметр -f/--filenode може бути використаний тільки з --check" -#: pg_checksums.c:550 +#: pg_checksums.c:549 #, c-format msgid "pg_control CRC value is incorrect" msgstr "значення CRC pg_control неправильне" -#: pg_checksums.c:553 +#: pg_checksums.c:552 #, c-format msgid "cluster is not compatible with this version of pg_checksums" msgstr "кластер не сумісний з цією версією pg_checksum" -#: pg_checksums.c:557 +#: pg_checksums.c:556 #, c-format msgid "database cluster is not compatible" msgstr "кластер бази даних не сумісний" -#: pg_checksums.c:558 +#: pg_checksums.c:557 #, c-format msgid "The database cluster was initialized with block size %u, but pg_checksums was compiled with block size %u." msgstr "Кластер бази даних було ініціалізовано з розміром блоку %u, але pg_checksums було скомпільовано з розміром блоку %u." -#: pg_checksums.c:570 +#: pg_checksums.c:569 #, c-format msgid "cluster must be shut down" msgstr "кластер повинен бути закритий" -#: pg_checksums.c:574 +#: pg_checksums.c:573 #, c-format msgid "data checksums are not enabled in cluster" msgstr "контрольні суми в кластері неактивовані" -#: pg_checksums.c:578 +#: pg_checksums.c:577 #, c-format msgid "data checksums are already disabled in cluster" msgstr "контрольні суми вже неактивовані в кластері" -#: pg_checksums.c:582 +#: pg_checksums.c:581 #, c-format msgid "data checksums are already enabled in cluster" msgstr "контрольні суми вже активовані в кластері" -#: pg_checksums.c:606 +#: pg_checksums.c:605 #, c-format msgid "Checksum operation completed\n" msgstr "Операція контрольної суми завершена\n" -#: pg_checksums.c:607 +#: pg_checksums.c:606 #, c-format -msgid "Files scanned: %lld\n" -msgstr "Файлів проскановано: %lld\n" +msgid "Files scanned: %\n" +msgstr "Файлів проскановано: %\n" -#: pg_checksums.c:608 +#: pg_checksums.c:607 #, c-format -msgid "Blocks scanned: %lld\n" -msgstr "Блоків відскановано: %lld\n" +msgid "Blocks scanned: %\n" +msgstr "Блоків проскановано: %\n" -#: pg_checksums.c:611 +#: pg_checksums.c:610 #, c-format -msgid "Bad checksums: %lld\n" -msgstr "Помилкові контрольні суми: %lld\n" +msgid "Bad checksums: %\n" +msgstr "Поганих контрольних сум: %\n" -#: pg_checksums.c:612 pg_checksums.c:644 +#: pg_checksums.c:611 pg_checksums.c:643 #, c-format msgid "Data checksum version: %u\n" msgstr "Версія контрольних сум даних: %u\n" -#: pg_checksums.c:619 +#: pg_checksums.c:618 #, c-format -msgid "Files written: %lld\n" -msgstr "Файлів записано: %lld\n" +msgid "Files written: %\n" +msgstr "Файлів записано: %\n" -#: pg_checksums.c:620 +#: pg_checksums.c:619 #, c-format -msgid "Blocks written: %lld\n" -msgstr "Блоків записано: %lld\n" +msgid "Blocks written: %\n" +msgstr "Блоків записано: %\n" -#: pg_checksums.c:636 +#: pg_checksums.c:635 #, c-format msgid "syncing data directory" msgstr "синхронізація даних каталогу" -#: pg_checksums.c:640 +#: pg_checksums.c:639 #, c-format msgid "updating control file" msgstr "оновлення контрольного файлу" -#: pg_checksums.c:646 +#: pg_checksums.c:645 #, c-format msgid "Checksums enabled in cluster\n" msgstr "Контрольні суми активовані в кластері\n" -#: pg_checksums.c:648 +#: pg_checksums.c:647 #, c-format msgid "Checksums disabled in cluster\n" msgstr "Контрольні суми вимкнені у кластері\n" diff --git a/src/bin/pg_combinebackup/copy_file.c b/src/bin/pg_combinebackup/copy_file.c index db6c86223bb..9365f616baf 100644 --- a/src/bin/pg_combinebackup/copy_file.c +++ b/src/bin/pg_combinebackup/copy_file.c @@ -210,7 +210,7 @@ copy_file_blocks(const char *src, const char *dst, } if (rb < 0) - pg_fatal("could not read from file \"%s\": %m", dst); + pg_fatal("could not read from file \"%s\": %m", src); pg_free(buffer); close(src_fd); diff --git a/src/bin/pg_combinebackup/meson.build b/src/bin/pg_combinebackup/meson.build index e80a4756a7f..bbc4c5735ba 100644 --- a/src/bin/pg_combinebackup/meson.build +++ b/src/bin/pg_combinebackup/meson.build @@ -38,6 +38,7 @@ tests += { 't/008_promote.pl', 't/009_no_full_file.pl', 't/010_hardlink.pl', + 't/011_ib_truncation.pl', ], } } diff --git a/src/bin/pg_combinebackup/pg_combinebackup.c b/src/bin/pg_combinebackup/pg_combinebackup.c index 82644d55d2e..f42c2a0078b 100644 --- a/src/bin/pg_combinebackup/pg_combinebackup.c +++ b/src/bin/pg_combinebackup/pg_combinebackup.c @@ -491,7 +491,7 @@ add_tablespace_mapping(cb_options *opt, char *arg) tsmap->old_dir); if (!is_absolute_path(tsmap->new_dir)) - pg_fatal("old directory is not an absolute path in tablespace mapping: %s", + pg_fatal("new directory is not an absolute path in tablespace mapping: %s", tsmap->new_dir); /* Canonicalize paths to avoid spurious failures when comparing. */ diff --git a/src/bin/pg_combinebackup/po/de.po b/src/bin/pg_combinebackup/po/de.po index 7b7966539b9..cf32b245542 100644 --- a/src/bin/pg_combinebackup/po/de.po +++ b/src/bin/pg_combinebackup/po/de.po @@ -1,13 +1,13 @@ # German message translation file for pg_combinebackup -# Copyright (C) 2025 PostgreSQL Global Development Group +# Copyright (C) 2026 PostgreSQL Global Development Group # This file is distributed under the same license as the pg_combinebackup (PostgreSQL) package. # msgid "" msgstr "" "Project-Id-Version: pg_combinebackup (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-04-29 04:22+0000\n" -"PO-Revision-Date: 2025-04-29 08:34+0200\n" +"POT-Creation-Date: 2026-02-07 08:22+0000\n" +"PO-Revision-Date: 2026-02-07 09:48+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -41,7 +41,7 @@ msgid "could not open file \"%s\" for reading: %m" msgstr "konnte Datei »%s« nicht zum Lesen öffnen: %m" #: ../../common/controldata_utils.c:110 copy_file.c:164 load_manifest.c:161 -#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:540 +#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:542 #, c-format msgid "could not read file \"%s\": %m" msgstr "konnte Datei »%s« nicht lesen: %m" @@ -53,7 +53,7 @@ msgstr "konnte Datei »%s« nicht lesen: %d von %zu gelesen" #: ../../common/controldata_utils.c:132 ../../common/controldata_utils.c:280 #: backup_label.c:174 copy_file.c:71 pg_combinebackup.c:548 -#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:740 +#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:742 #: write_manifest.c:187 #, c-format msgid "could not close file \"%s\": %m" @@ -82,13 +82,13 @@ msgstr "" #: ../../common/file_utils.c:502 backup_label.c:143 copy_file.c:69 #: copy_file.c:153 copy_file.c:185 copy_file.c:189 copy_file.c:239 #: copy_file.c:282 load_manifest.c:128 pg_combinebackup.c:533 -#: pg_combinebackup.c:1177 reconstruct.c:523 reconstruct.c:638 +#: pg_combinebackup.c:1177 reconstruct.c:525 reconstruct.c:640 #: write_manifest.c:250 #, c-format msgid "could not open file \"%s\": %m" msgstr "konnte Datei »%s« nicht öffnen: %m" -#: ../../common/controldata_utils.c:249 backup_label.c:160 reconstruct.c:759 +#: ../../common/controldata_utils.c:249 backup_label.c:160 reconstruct.c:761 #: write_manifest.c:260 #, c-format msgid "could not write file \"%s\": %m" @@ -101,7 +101,7 @@ msgid "could not fsync file \"%s\": %m" msgstr "konnte Datei »%s« nicht fsyncen: %m" #: ../../common/cryptohash.c:261 ../../common/cryptohash_openssl.c:356 -#: ../../common/jsonapi.c:2407 ../../common/parse_manifest.c:157 +#: ../../common/jsonapi.c:2410 ../../common/parse_manifest.c:157 #: ../../common/parse_manifest.c:852 #, c-format msgid "out of memory" @@ -139,7 +139,7 @@ msgstr "konnte Dateisystem für Datei »%s« nicht synchronisieren: %m" #: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #: backup_label.c:187 load_manifest.c:133 pg_combinebackup.c:685 #: pg_combinebackup.c:1141 pg_combinebackup.c:1393 reconstruct.c:204 -#: reconstruct.c:421 +#: reconstruct.c:422 #, c-format msgid "could not stat file \"%s\": %m" msgstr "konnte »stat« für Datei »%s« nicht ausführen: %m" @@ -166,103 +166,103 @@ msgstr "konnte Verzeichnis »%s« nicht lesen: %m" msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "konnte Datei »%s« nicht in »%s« umbenennen: %m" -#: ../../common/jsonapi.c:2432 +#: ../../common/jsonapi.c:2435 msgid "Recursive descent parser cannot use incremental lexer." msgstr "Parser mit rekursivem Abstieg kann inkrementellen Lexer nicht benutzen." -#: ../../common/jsonapi.c:2434 +#: ../../common/jsonapi.c:2437 msgid "Incremental parser requires incremental lexer." msgstr "Inkrementeller Parser benötigt inkrementellen Lexer." -#: ../../common/jsonapi.c:2436 +#: ../../common/jsonapi.c:2439 msgid "JSON nested too deep, maximum permitted depth is 6400." msgstr "JSON zu tief geschachtelt, maximale erlaubte Tiefe ist 6400." -#: ../../common/jsonapi.c:2438 +#: ../../common/jsonapi.c:2441 #, c-format msgid "Escape sequence \"\\%.*s\" is invalid." msgstr "Escape-Sequenz »\\%.*s« ist nicht gültig." -#: ../../common/jsonapi.c:2442 +#: ../../common/jsonapi.c:2445 #, c-format msgid "Character with value 0x%02x must be escaped." msgstr "Zeichen mit Wert 0x%02x muss escapt werden." -#: ../../common/jsonapi.c:2446 +#: ../../common/jsonapi.c:2449 #, c-format msgid "Expected end of input, but found \"%.*s\"." msgstr "Ende der Eingabe erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2449 +#: ../../common/jsonapi.c:2452 #, c-format msgid "Expected array element or \"]\", but found \"%.*s\"." msgstr "Array-Element oder »]« erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2452 +#: ../../common/jsonapi.c:2455 #, c-format msgid "Expected \",\" or \"]\", but found \"%.*s\"." msgstr "»,« oder »]« erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2455 +#: ../../common/jsonapi.c:2458 #, c-format msgid "Expected \":\", but found \"%.*s\"." msgstr "»:« erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2458 +#: ../../common/jsonapi.c:2461 #, c-format msgid "Expected JSON value, but found \"%.*s\"." msgstr "JSON-Wert erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2461 +#: ../../common/jsonapi.c:2464 msgid "The input string ended unexpectedly." msgstr "Die Eingabezeichenkette endete unerwartet." -#: ../../common/jsonapi.c:2463 +#: ../../common/jsonapi.c:2466 #, c-format msgid "Expected string or \"}\", but found \"%.*s\"." msgstr "Zeichenkette oder »}« erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2466 +#: ../../common/jsonapi.c:2469 #, c-format msgid "Expected \",\" or \"}\", but found \"%.*s\"." msgstr "»,« oder »}« erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2469 +#: ../../common/jsonapi.c:2472 #, c-format msgid "Expected string, but found \"%.*s\"." msgstr "Zeichenkette erwartet, aber »%.*s« gefunden." -#: ../../common/jsonapi.c:2472 +#: ../../common/jsonapi.c:2475 #, c-format msgid "Token \"%.*s\" is invalid." msgstr "Token »%.*s« ist ungültig." -#: ../../common/jsonapi.c:2478 +#: ../../common/jsonapi.c:2481 msgid "\\u0000 cannot be converted to text." msgstr "\\u0000 kann nicht in »text« umgewandelt werden." -#: ../../common/jsonapi.c:2480 +#: ../../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "Nach »\\u« müssen vier Hexadezimalziffern folgen." -#: ../../common/jsonapi.c:2483 +#: ../../common/jsonapi.c:2486 msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8." msgstr "Unicode-Escape-Werte können nicht für Code-Punkt-Werte über 007F verwendet werden, wenn die Kodierung nicht UTF8 ist." -#: ../../common/jsonapi.c:2492 +#: ../../common/jsonapi.c:2495 #, c-format msgid "Unicode escape value could not be translated to the server's encoding %s." msgstr "Unicode-Escape-Wert konnte nicht in die Serverkodierung %s umgewandelt werden." -#: ../../common/jsonapi.c:2499 +#: ../../common/jsonapi.c:2502 msgid "Unicode high surrogate must not follow a high surrogate." msgstr "Unicode-High-Surrogate darf nicht auf ein High-Surrogate folgen." -#: ../../common/jsonapi.c:2501 +#: ../../common/jsonapi.c:2504 msgid "Unicode low surrogate must follow a high surrogate." msgstr "Unicode-Low-Surrogate muss auf ein High-Surrogate folgen." -#: ../../common/jsonapi.c:2523 +#: ../../common/jsonapi.c:2526 msgid "out of memory while constructing error description" msgstr "Speicher aufgebraucht beim Konstruieren der Fehlerbeschreibung" @@ -468,13 +468,13 @@ msgstr "%s: konnte %s nicht finden" msgid "%s: %s requires %s" msgstr "%s: %s benötigt %s" -#: backup_label.c:162 reconstruct.c:761 write_manifest.c:262 +#: backup_label.c:162 reconstruct.c:763 write_manifest.c:262 #, c-format msgid "could not write file \"%s\": wrote %d of %d" msgstr "konnte Datei »%s« nicht schreiben: %d von %d geschrieben" -#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:721 -#: reconstruct.c:767 write_manifest.c:270 +#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:723 +#: reconstruct.c:769 write_manifest.c:270 #, c-format msgid "could not update checksum of file \"%s\"" msgstr "konnte Prüfsumme der Datei »%s« nicht aktualisieren" @@ -489,7 +489,7 @@ msgstr "konnte nicht in Datei »%s« schreiben: %m" msgid "could not write to file \"%s\", offset %u: wrote %d of %d" msgstr "konnte nicht in Datei »%s«, Position %u schreiben: %d von %d geschrieben" -#: copy_file.c:213 reconstruct.c:784 +#: copy_file.c:213 reconstruct.c:786 #, c-format msgid "could not read from file \"%s\": %m" msgstr "konnte nicht aus Datei »%s« lesen: %m" @@ -514,12 +514,12 @@ msgstr "Fehler beim Klonen von Datei »%s« nach »%s«: %s" msgid "file cloning not supported on this platform" msgstr "Klonen von Dateien wird auf dieser Plattform nicht unterstützt" -#: copy_file.c:292 reconstruct.c:704 +#: copy_file.c:292 reconstruct.c:706 #, c-format msgid "error while copying file range from \"%s\" to \"%s\": %m" msgstr "Fehler beim Kopieren von Dateibereich von »%s« nach »%s«: %m" -#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:724 +#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:726 #, c-format msgid "copy_file_range not supported on this platform" msgstr "copy_file_range wird auf dieser Plattform nicht unterstützt" @@ -614,11 +614,16 @@ msgstr "mehrere »=«-Zeichen im Tablespace-Mapping" msgid "invalid tablespace mapping format \"%s\", must be \"OLDDIR=NEWDIR\"" msgstr "ungültiges Tablespace-Mapping-Format »%s«, muss »ALTES_VERZ=NEUES_VERZ« sein" -#: pg_combinebackup.c:490 pg_combinebackup.c:494 +#: pg_combinebackup.c:490 #, c-format msgid "old directory is not an absolute path in tablespace mapping: %s" msgstr "altes Verzeichnis im Tablespace-Mapping ist kein absoluter Pfad: %s" +#: pg_combinebackup.c:494 +#, c-format +msgid "new directory is not an absolute path in tablespace mapping: %s" +msgstr "neues Verzeichnis im Tablespace-Mapping ist kein absoluter Pfad: %s" + #: pg_combinebackup.c:563 #, c-format msgid "backup at \"%s\" is a full backup, but only the first backup should be a full backup" @@ -888,32 +893,32 @@ msgstr "konnte Datei »%s« nicht lesen: %zd von %lld gelesen" msgid "full backup contains unexpected incremental file \"%s\"" msgstr "volles Backup enthält unerwartete inkrementelle Datei »%s«" -#: reconstruct.c:423 +#: reconstruct.c:424 #, c-format msgid "file \"%s\" is too short: expected %llu, found %llu" msgstr "Datei »%s« ist zu kurz: %llu erwartet, %llu gefunden" -#: reconstruct.c:465 +#: reconstruct.c:466 #, c-format msgid "file \"%s\" has bad incremental magic number (0x%x, expected 0x%x)" msgstr "Datei »%s« hat falsche inkrementelle magische Zahl (0x%x, erwartet 0x%x)" -#: reconstruct.c:471 +#: reconstruct.c:472 #, c-format msgid "file \"%s\" has block count %u in excess of segment size %u" msgstr "Datei »%s« hat Blockzahl %u, was die Segmentgröße %u überschreitet" -#: reconstruct.c:478 +#: reconstruct.c:479 #, c-format msgid "file \"%s\" has truncation block length %u in excess of segment size %u" msgstr "Datei »%s« hat Truncation-Blocklänge %u, was die Segmentgröße %u überschreitet" -#: reconstruct.c:542 +#: reconstruct.c:544 #, c-format msgid "could not read file \"%s\": read %d of %u" msgstr "konnte Datei »%s« nicht lesen: %d von %u gelesen" -#: reconstruct.c:786 +#: reconstruct.c:788 #, c-format msgid "could not read from file \"%s\", offset %llu: read %d of %d" msgstr "konnte nicht aus Datei »%s«, Position %llu lesen: %d von %d gelesen" diff --git a/src/bin/pg_combinebackup/po/es.po b/src/bin/pg_combinebackup/po/es.po index c74d50c871a..7a4a809c91a 100644 --- a/src/bin/pg_combinebackup/po/es.po +++ b/src/bin/pg_combinebackup/po/es.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_combinebackup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:22+0000\n" +"POT-Creation-Date: 2026-02-06 23:21+0000\n" "PO-Revision-Date: 2025-11-08 19:01+0100\n" "Last-Translator: Álvaro Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -619,11 +619,16 @@ msgstr "múltiples signos «=» en mapeo de tablespace" msgid "invalid tablespace mapping format \"%s\", must be \"OLDDIR=NEWDIR\"" msgstr "formato de mapeo de tablespace «%s» no válido, debe ser «ANTIGUO=NUEVO»" -#: pg_combinebackup.c:490 pg_combinebackup.c:494 +#: pg_combinebackup.c:490 #, c-format msgid "old directory is not an absolute path in tablespace mapping: %s" msgstr "directorio antiguo no es una ruta absoluta en mapeo de tablespace: %s" +#: pg_combinebackup.c:494 +#, c-format +msgid "new directory is not an absolute path in tablespace mapping: %s" +msgstr "directorio nuevo no es una ruta absoluta en mapeo de tablespace: %s" + #: pg_combinebackup.c:563 #, c-format msgid "backup at \"%s\" is a full backup, but only the first backup should be a full backup" diff --git a/src/bin/pg_combinebackup/po/ru.po b/src/bin/pg_combinebackup/po/ru.po index 6fba5c874c6..732fdaf4e13 100644 --- a/src/bin/pg_combinebackup/po/ru.po +++ b/src/bin/pg_combinebackup/po/ru.po @@ -1,10 +1,10 @@ -# SPDX-FileCopyrightText: 2024, 2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2024, 2025, 2026 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_combinebackup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-09 06:28+0200\n" -"PO-Revision-Date: 2025-09-13 17:16+0300\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 09:22+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -640,13 +640,20 @@ msgstr "" "сопоставление табл. пространства записано неверно: \"%s\"; должно быть " "\"СТАРЫЙ_КАТАЛОГ=НОВЫЙ_КАТАЛОГ\"" -#: pg_combinebackup.c:490 pg_combinebackup.c:494 +#: pg_combinebackup.c:490 #, c-format msgid "old directory is not an absolute path in tablespace mapping: %s" msgstr "" "старый каталог в сопоставлении табл. пространства задан не абсолютным путём: " "%s" +#: pg_combinebackup.c:494 +#, c-format +msgid "new directory is not an absolute path in tablespace mapping: %s" +msgstr "" +"новый каталог в сопоставлении табл. пространства задан не абсолютным путём: " +"%s" + #: pg_combinebackup.c:563 #, c-format msgid "" diff --git a/src/bin/pg_combinebackup/po/sv.po b/src/bin/pg_combinebackup/po/sv.po index 1c0a74fcdb4..50928767913 100644 --- a/src/bin/pg_combinebackup/po/sv.po +++ b/src/bin/pg_combinebackup/po/sv.po @@ -1,14 +1,14 @@ # Swedish message translation file for pg_combinebackup # Copyright (C) 2024 PostgreSQL Global Development Group # This file is distributed under the same license as the pg_combinebackup (PostgreSQL) package. -# Dennis Björklund , 2024, 2025. +# Dennis Björklund , 2024, 2025, 2026. # msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-05-16 16:22+0000\n" -"PO-Revision-Date: 2025-05-16 20:05+0200\n" +"POT-Creation-Date: 2026-02-07 08:22+0000\n" +"PO-Revision-Date: 2026-02-07 09:26+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -43,7 +43,7 @@ msgid "could not open file \"%s\" for reading: %m" msgstr "kunde inte öppna filen \"%s\" för läsning: %m" #: ../../common/controldata_utils.c:110 copy_file.c:164 load_manifest.c:161 -#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:540 +#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:542 #, c-format msgid "could not read file \"%s\": %m" msgstr "kunde inte läsa fil \"%s\": %m" @@ -55,7 +55,7 @@ msgstr "kunde inte läsa fil \"%s\": läste %d av %zu" #: ../../common/controldata_utils.c:132 ../../common/controldata_utils.c:280 #: backup_label.c:174 copy_file.c:71 pg_combinebackup.c:548 -#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:740 +#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:742 #: write_manifest.c:187 #, c-format msgid "could not close file \"%s\": %m" @@ -83,13 +83,13 @@ msgstr "" #: ../../common/file_utils.c:502 backup_label.c:143 copy_file.c:69 #: copy_file.c:153 copy_file.c:185 copy_file.c:189 copy_file.c:239 #: copy_file.c:282 load_manifest.c:128 pg_combinebackup.c:533 -#: pg_combinebackup.c:1177 reconstruct.c:523 reconstruct.c:638 +#: pg_combinebackup.c:1177 reconstruct.c:525 reconstruct.c:640 #: write_manifest.c:250 #, c-format msgid "could not open file \"%s\": %m" msgstr "kunde inte öppna fil \"%s\": %m" -#: ../../common/controldata_utils.c:249 backup_label.c:160 reconstruct.c:759 +#: ../../common/controldata_utils.c:249 backup_label.c:160 reconstruct.c:761 #: write_manifest.c:260 #, c-format msgid "could not write file \"%s\": %m" @@ -140,7 +140,7 @@ msgstr "kan inte synkronisera filsystemet för fil \"%s\": %m" #: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #: backup_label.c:187 load_manifest.c:133 pg_combinebackup.c:685 #: pg_combinebackup.c:1141 pg_combinebackup.c:1393 reconstruct.c:204 -#: reconstruct.c:421 +#: reconstruct.c:422 #, c-format msgid "could not stat file \"%s\": %m" msgstr "kunde inte göra stat() på fil \"%s\": %m" @@ -469,13 +469,13 @@ msgstr "%s: kunde inte hitta %s" msgid "%s: %s requires %s" msgstr "%s: %s kräver %s" -#: backup_label.c:162 reconstruct.c:761 write_manifest.c:262 +#: backup_label.c:162 reconstruct.c:763 write_manifest.c:262 #, c-format msgid "could not write file \"%s\": wrote %d of %d" msgstr "kunde inte skriva fil \"%s\": skrev %d av %d" -#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:721 -#: reconstruct.c:767 write_manifest.c:270 +#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:723 +#: reconstruct.c:769 write_manifest.c:270 #, c-format msgid "could not update checksum of file \"%s\"" msgstr "kunde inte uppdatera kontrollsumma för filen \"%s\"" @@ -490,7 +490,7 @@ msgstr "kunde inte skriva till fil \"%s\": %m" msgid "could not write to file \"%s\", offset %u: wrote %d of %d" msgstr "kunde inte skriva till fil \"%s\", offset %u: skrev %d av %d" -#: copy_file.c:213 reconstruct.c:784 +#: copy_file.c:213 reconstruct.c:786 #, c-format msgid "could not read from file \"%s\": %m" msgstr "kunde inte läsa från fil \"%s\": %m" @@ -515,12 +515,12 @@ msgstr "fel vid kloning av fil \"%s\" till \"%s\": %s" msgid "file cloning not supported on this platform" msgstr "filkloning stöds inte på denna plattform" -#: copy_file.c:292 reconstruct.c:704 +#: copy_file.c:292 reconstruct.c:706 #, c-format msgid "error while copying file range from \"%s\" to \"%s\": %m" msgstr "fel vid kopiering av filintervall från \"%s\" till \"%s\": %m" -#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:724 +#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:726 #, c-format msgid "copy_file_range not supported on this platform" msgstr "copy_file_range stöds inte på denna plattform" @@ -615,11 +615,16 @@ msgstr "multipla \"=\"-tecken i tablespace-mappning" msgid "invalid tablespace mapping format \"%s\", must be \"OLDDIR=NEWDIR\"" msgstr "ogiltigt tablespace-mappningsformat \"%s\", måste vara \"OLDDIR=NEWDIR\"" -#: pg_combinebackup.c:490 pg_combinebackup.c:494 +#: pg_combinebackup.c:490 #, c-format msgid "old directory is not an absolute path in tablespace mapping: %s" msgstr "gammal katalog är inte en absolut sökväg i tablespace-mappning: %s" +#: pg_combinebackup.c:494 +#, c-format +msgid "new directory is not an absolute path in tablespace mapping: %s" +msgstr "ny katalog är inte en absolut sökväg i tablespace-mappning: %s" + #: pg_combinebackup.c:563 #, c-format msgid "backup at \"%s\" is a full backup, but only the first backup should be a full backup" @@ -885,32 +890,32 @@ msgstr "kunde inte läsa fil \"%s\": läste %zd av %lld" msgid "full backup contains unexpected incremental file \"%s\"" msgstr "full backup innehåller in oväntad inkrementell fil \"%s\"" -#: reconstruct.c:423 +#: reconstruct.c:424 #, c-format msgid "file \"%s\" is too short: expected %llu, found %llu" msgstr "filen \"%s\" är för kort: förväntade %llu, hittade %llu" -#: reconstruct.c:465 +#: reconstruct.c:466 #, c-format msgid "file \"%s\" has bad incremental magic number (0x%x, expected 0x%x)" msgstr "filen \"%s\" har ett felaktigt inkrementellt magiskt nummer (0x%x, förväntade 0x%x)" -#: reconstruct.c:471 +#: reconstruct.c:472 #, c-format msgid "file \"%s\" has block count %u in excess of segment size %u" msgstr "filen \"%s\" har ett blockantal %u som är större än segmentstorleken %u" -#: reconstruct.c:478 +#: reconstruct.c:479 #, c-format msgid "file \"%s\" has truncation block length %u in excess of segment size %u" msgstr "filen \"%s\" trunkeringsblocklängd %u som är större än segmentstorleken %u" -#: reconstruct.c:542 +#: reconstruct.c:544 #, c-format msgid "could not read file \"%s\": read %d of %u" msgstr "kunde inte läsa filen \"%s\": läste %d av %u" -#: reconstruct.c:786 +#: reconstruct.c:788 #, c-format msgid "could not read from file \"%s\", offset %llu: read %d of %d" msgstr "kunde inte läsa från filen \"%s\", offset %llu: läste %d av %d" diff --git a/src/bin/pg_combinebackup/po/uk.po b/src/bin/pg_combinebackup/po/uk.po index 51e19b62206..5d05fd6aab7 100644 --- a/src/bin/pg_combinebackup/po/uk.po +++ b/src/bin/pg_combinebackup/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:22+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:22+0000\n" +"PO-Revision-Date: 2026-01-02 15:48\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_combinebackup.pot\n" -"X-Crowdin-File-ID: 1008\n" +"X-Crowdin-File: /REL_18_STABLE/pg_combinebackup.pot\n" +"X-Crowdin-File-ID: 1071\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -42,8 +42,8 @@ msgstr "підказка: " msgid "could not open file \"%s\" for reading: %m" msgstr "не вдалося відкрити файл \"%s\" для читання: %m" -#: ../../common/controldata_utils.c:110 copy_file.c:150 load_manifest.c:161 -#: load_manifest.c:199 pg_combinebackup.c:1400 reconstruct.c:527 +#: ../../common/controldata_utils.c:110 copy_file.c:164 load_manifest.c:161 +#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:542 #, c-format msgid "could not read file \"%s\": %m" msgstr "не вдалося прочитати файл \"%s\": %m" @@ -54,8 +54,8 @@ msgid "could not read file \"%s\": read %d of %zu" msgstr "не вдалося прочитати файл \"%s\": прочитано %d з %zu" #: ../../common/controldata_utils.c:132 ../../common/controldata_utils.c:280 -#: backup_label.c:174 copy_file.c:68 pg_combinebackup.c:538 -#: pg_combinebackup.c:1175 reconstruct.c:356 reconstruct.c:727 +#: backup_label.c:174 copy_file.c:71 pg_combinebackup.c:548 +#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:742 #: write_manifest.c:187 #, c-format msgid "could not close file \"%s\": %m" @@ -74,31 +74,32 @@ msgid "possible byte ordering mismatch\n" msgstr "можлива помилка у послідовності байтів.\n" "Порядок байтів, що використовують для зберігання файлу pg_control, може не відповідати тому, який використовується цією програмою. У такому випадку результати нижче будуть неправильним, і інсталяція PostgreSQL буде несумісною з цим каталогом даних." -#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:70 -#: ../../common/file_utils.c:347 ../../common/file_utils.c:406 -#: ../../common/file_utils.c:480 backup_label.c:143 copy_file.c:66 -#: copy_file.c:139 copy_file.c:171 copy_file.c:175 copy_file.c:225 -#: copy_file.c:268 load_manifest.c:128 pg_combinebackup.c:523 -#: pg_combinebackup.c:1167 reconstruct.c:510 reconstruct.c:625 +#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 +#: ../../common/file_utils.c:370 ../../common/file_utils.c:428 +#: ../../common/file_utils.c:502 backup_label.c:143 copy_file.c:69 +#: copy_file.c:153 copy_file.c:185 copy_file.c:189 copy_file.c:239 +#: copy_file.c:282 load_manifest.c:128 pg_combinebackup.c:533 +#: pg_combinebackup.c:1177 reconstruct.c:525 reconstruct.c:640 #: write_manifest.c:250 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: ../../common/controldata_utils.c:249 backup_label.c:160 reconstruct.c:746 +#: ../../common/controldata_utils.c:249 backup_label.c:160 reconstruct.c:761 #: write_manifest.c:260 #, c-format msgid "could not write file \"%s\": %m" msgstr "не вдалося записати файл \"%s\": %m" -#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:418 -#: ../../common/file_utils.c:488 +#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:440 +#: ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" #: ../../common/cryptohash.c:261 ../../common/cryptohash_openssl.c:356 -#: ../../common/parse_manifest.c:157 ../../common/parse_manifest.c:853 +#: ../../common/jsonapi.c:2410 ../../common/parse_manifest.c:157 +#: ../../common/parse_manifest.c:852 #, c-format msgid "out of memory" msgstr "недостатньо пам'яті" @@ -127,290 +128,294 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 -#: backup_label.c:187 load_manifest.c:133 pg_combinebackup.c:676 -#: pg_combinebackup.c:1131 pg_combinebackup.c:1383 reconstruct.c:199 -#: reconstruct.c:408 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 +#: backup_label.c:187 load_manifest.c:133 pg_combinebackup.c:685 +#: pg_combinebackup.c:1141 pg_combinebackup.c:1393 reconstruct.c:204 +#: reconstruct.c:422 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 -#: pg_combinebackup.c:933 pg_combinebackup.c:1256 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 +#: pg_combinebackup.c:943 pg_combinebackup.c:1266 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" -#: ../../common/jsonapi.c:2121 +#: ../../common/jsonapi.c:2435 msgid "Recursive descent parser cannot use incremental lexer." msgstr "Рекурсивний спуск не може використовувати інкрементний лексичний аналізатор." -#: ../../common/jsonapi.c:2123 +#: ../../common/jsonapi.c:2437 msgid "Incremental parser requires incremental lexer." msgstr "Інкрементний аналізатор потребує Інкрементний лексичний аналізатор." -#: ../../common/jsonapi.c:2125 +#: ../../common/jsonapi.c:2439 msgid "JSON nested too deep, maximum permitted depth is 6400." msgstr "JSON вкладений занадто глибокий, максимально дозволена глибина - 6400." -#: ../../common/jsonapi.c:2127 +#: ../../common/jsonapi.c:2441 #, c-format msgid "Escape sequence \"\\%.*s\" is invalid." msgstr "Неприпустима спеціальна послідовність \"\\%.*s\"." -#: ../../common/jsonapi.c:2131 +#: ../../common/jsonapi.c:2445 #, c-format msgid "Character with value 0x%02x must be escaped." msgstr "Символ зі значенням 0x%02x повинен бути пропущений." -#: ../../common/jsonapi.c:2135 +#: ../../common/jsonapi.c:2449 #, c-format msgid "Expected end of input, but found \"%.*s\"." msgstr "Очікувався кінець введення, але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2138 +#: ../../common/jsonapi.c:2452 #, c-format msgid "Expected array element or \"]\", but found \"%.*s\"." msgstr "Очікувався елемент масиву або \"]\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2141 +#: ../../common/jsonapi.c:2455 #, c-format msgid "Expected \",\" or \"]\", but found \"%.*s\"." msgstr "Очікувалось \",\" або \"]\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2144 +#: ../../common/jsonapi.c:2458 #, c-format msgid "Expected \":\", but found \"%.*s\"." msgstr "Очікувалось \":\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2147 +#: ../../common/jsonapi.c:2461 #, c-format msgid "Expected JSON value, but found \"%.*s\"." msgstr "Очікувалось значення JSON, але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2150 +#: ../../common/jsonapi.c:2464 msgid "The input string ended unexpectedly." msgstr "Несподіваний кінець вхідного рядка." -#: ../../common/jsonapi.c:2152 +#: ../../common/jsonapi.c:2466 #, c-format msgid "Expected string or \"}\", but found \"%.*s\"." msgstr "Очікувався рядок або \"}\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2155 +#: ../../common/jsonapi.c:2469 #, c-format msgid "Expected \",\" or \"}\", but found \"%.*s\"." msgstr "Очікувалось \",\" або \"}\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2158 +#: ../../common/jsonapi.c:2472 #, c-format msgid "Expected string, but found \"%.*s\"." msgstr "Очікувався рядок, але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:2161 +#: ../../common/jsonapi.c:2475 #, c-format msgid "Token \"%.*s\" is invalid." msgstr "Неприпустимий маркер \"%.*s\"." -#: ../../common/jsonapi.c:2164 +#: ../../common/jsonapi.c:2481 msgid "\\u0000 cannot be converted to text." msgstr "\\u0000 не можна перетворити в текст." -#: ../../common/jsonapi.c:2166 +#: ../../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "За \"\\u\" повинні прямувати чотири шістнадцяткових числа." -#: ../../common/jsonapi.c:2169 +#: ../../common/jsonapi.c:2486 msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8." msgstr "Значення виходу Unicode не можна використовувати для значень кодових точок більше 007F, якщо кодування не UTF8." -#: ../../common/jsonapi.c:2178 +#: ../../common/jsonapi.c:2495 #, c-format msgid "Unicode escape value could not be translated to the server's encoding %s." msgstr "Значення символу Unicode не вдалося перекласти в кодування сервера %s." -#: ../../common/jsonapi.c:2185 +#: ../../common/jsonapi.c:2502 msgid "Unicode high surrogate must not follow a high surrogate." msgstr "Старший сурогат Unicode не повинен прямувати за іншим старшим сурогатом." -#: ../../common/jsonapi.c:2187 +#: ../../common/jsonapi.c:2504 msgid "Unicode low surrogate must follow a high surrogate." msgstr "Молодший сурогат Unicode не повинен прямувати за іншим молодшим сурогатом." -#: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:855 +#: ../../common/jsonapi.c:2526 +msgid "out of memory while constructing error description" +msgstr "недостатньо пам'яті для опису помилок" + +#: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:854 #, c-format msgid "could not initialize checksum of manifest" msgstr "не вдалося ініціалізувати контрольну суму маніфесту" -#: ../../common/parse_manifest.c:204 ../../common/parse_manifest.c:261 +#: ../../common/parse_manifest.c:203 ../../common/parse_manifest.c:260 msgid "manifest ended unexpectedly" msgstr "маніфест закінчився несподівано" -#: ../../common/parse_manifest.c:210 ../../common/parse_manifest.c:862 +#: ../../common/parse_manifest.c:209 ../../common/parse_manifest.c:861 #, c-format msgid "could not update checksum of manifest" msgstr "не вдалося оновити контрольну суму маніфесту" -#: ../../common/parse_manifest.c:302 +#: ../../common/parse_manifest.c:301 msgid "unexpected object start" msgstr "неочікуваний початок об'єкта" -#: ../../common/parse_manifest.c:337 +#: ../../common/parse_manifest.c:336 msgid "unexpected object end" msgstr "неочікуваний кінець об'єкта" -#: ../../common/parse_manifest.c:366 +#: ../../common/parse_manifest.c:365 msgid "unexpected array start" msgstr "неочікуваний початок масиву" -#: ../../common/parse_manifest.c:391 +#: ../../common/parse_manifest.c:390 msgid "unexpected array end" msgstr "неочікуваний кінець масиву" -#: ../../common/parse_manifest.c:418 +#: ../../common/parse_manifest.c:417 msgid "expected version indicator" msgstr "індикатор очікуваної версії" -#: ../../common/parse_manifest.c:454 +#: ../../common/parse_manifest.c:453 msgid "unrecognized top-level field" msgstr "нерозпізнане поле верхнього рівня" -#: ../../common/parse_manifest.c:473 +#: ../../common/parse_manifest.c:472 msgid "unexpected file field" msgstr "неочікуване поле файлу" -#: ../../common/parse_manifest.c:487 +#: ../../common/parse_manifest.c:486 msgid "unexpected WAL range field" msgstr "неочікуване поле діапазону WAL" -#: ../../common/parse_manifest.c:493 +#: ../../common/parse_manifest.c:492 msgid "unexpected object field" msgstr "неочікуване поле об'єкта" -#: ../../common/parse_manifest.c:583 +#: ../../common/parse_manifest.c:582 msgid "unexpected scalar" msgstr "неочікуваний скаляр" -#: ../../common/parse_manifest.c:609 +#: ../../common/parse_manifest.c:608 msgid "manifest version not an integer" msgstr "версія маніфесту не ціле число" -#: ../../common/parse_manifest.c:613 +#: ../../common/parse_manifest.c:612 msgid "unexpected manifest version" msgstr "неочікувана версія маніфесту" -#: ../../common/parse_manifest.c:637 +#: ../../common/parse_manifest.c:636 msgid "system identifier in manifest not an integer" msgstr "системний ідентифікатор в маніфесті не ціле число" -#: ../../common/parse_manifest.c:662 +#: ../../common/parse_manifest.c:661 msgid "missing path name" msgstr "пропущено шлях" -#: ../../common/parse_manifest.c:665 +#: ../../common/parse_manifest.c:664 msgid "both path name and encoded path name" msgstr "і ім'я шляху, і закодований шлях" -#: ../../common/parse_manifest.c:667 +#: ../../common/parse_manifest.c:666 msgid "missing size" msgstr "відсутній розмір" -#: ../../common/parse_manifest.c:670 +#: ../../common/parse_manifest.c:669 msgid "checksum without algorithm" msgstr "контрольна сума без алгоритму" -#: ../../common/parse_manifest.c:684 +#: ../../common/parse_manifest.c:683 msgid "could not decode file name" msgstr "не вдалося декодувати ім'я файлу" -#: ../../common/parse_manifest.c:694 +#: ../../common/parse_manifest.c:693 msgid "file size is not an integer" msgstr "розмір файлу не є цілим числом" -#: ../../common/parse_manifest.c:700 pg_combinebackup.c:199 +#: ../../common/parse_manifest.c:699 pg_combinebackup.c:204 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "нерозпізнаний алгоритм контрольної суми: \"%s\"" -#: ../../common/parse_manifest.c:719 +#: ../../common/parse_manifest.c:718 #, c-format msgid "invalid checksum for file \"%s\": \"%s\"" msgstr "неприпустима контрольна сума для файлу \"%s\": \"%s\"" -#: ../../common/parse_manifest.c:762 +#: ../../common/parse_manifest.c:761 msgid "missing timeline" msgstr "відсутня часова шкала" -#: ../../common/parse_manifest.c:764 +#: ../../common/parse_manifest.c:763 msgid "missing start LSN" msgstr "відсутній LSN початку" -#: ../../common/parse_manifest.c:766 +#: ../../common/parse_manifest.c:765 msgid "missing end LSN" msgstr "відсутній LSN кінця" -#: ../../common/parse_manifest.c:772 +#: ../../common/parse_manifest.c:771 msgid "timeline is not an integer" msgstr "часова лінія не є цілим числом" -#: ../../common/parse_manifest.c:775 +#: ../../common/parse_manifest.c:774 msgid "could not parse start LSN" msgstr "не вдалося проаналізувати початковий LSN" -#: ../../common/parse_manifest.c:778 +#: ../../common/parse_manifest.c:777 msgid "could not parse end LSN" msgstr "не вдалося проаналізувати кінцевий LSN" -#: ../../common/parse_manifest.c:843 +#: ../../common/parse_manifest.c:842 msgid "expected at least 2 lines" msgstr "очікувалося принаймні 2 рядки" -#: ../../common/parse_manifest.c:846 +#: ../../common/parse_manifest.c:845 msgid "last line not newline-terminated" msgstr "останній рядок не завершений новим рядком" -#: ../../common/parse_manifest.c:865 +#: ../../common/parse_manifest.c:864 #, c-format msgid "could not finalize checksum of manifest" msgstr "не вдалося остаточно завершити контрольну суму маніфесту" -#: ../../common/parse_manifest.c:869 +#: ../../common/parse_manifest.c:868 #, c-format msgid "manifest has no checksum" msgstr "у маніфесті немає контрольної суми" -#: ../../common/parse_manifest.c:873 +#: ../../common/parse_manifest.c:872 #, c-format msgid "invalid manifest checksum: \"%s\"" msgstr "неприпустима контрольна сума маніфесту: \"%s\"" -#: ../../common/parse_manifest.c:877 +#: ../../common/parse_manifest.c:876 #, c-format msgid "manifest checksum mismatch" msgstr "невідповідність контрольної суми маніфесту" -#: ../../common/parse_manifest.c:892 +#: ../../common/parse_manifest.c:891 #, c-format msgid "could not parse backup manifest: %s" msgstr "не вдалося проаналізувати маніфест резервної копії: %s" @@ -460,67 +465,72 @@ msgstr "%s: не вдалося знайти %s" msgid "%s: %s requires %s" msgstr "%s: %s вимагає %s" -#: backup_label.c:162 reconstruct.c:748 write_manifest.c:262 +#: backup_label.c:162 reconstruct.c:763 write_manifest.c:262 #, c-format msgid "could not write file \"%s\": wrote %d of %d" msgstr "не вдалося записати файл \"%s\": записано %d з %d" -#: backup_label.c:166 copy_file.c:146 copy_file.c:193 reconstruct.c:708 -#: reconstruct.c:754 write_manifest.c:270 +#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:723 +#: reconstruct.c:769 write_manifest.c:270 #, c-format msgid "could not update checksum of file \"%s\"" msgstr "не вдалося оновити контрольну суму файлу \"%s\"" -#: copy_file.c:186 +#: copy_file.c:200 #, c-format msgid "could not write to file \"%s\": %m" msgstr "неможливо записати до файлу \"%s\": %m" -#: copy_file.c:188 +#: copy_file.c:202 #, c-format msgid "could not write to file \"%s\", offset %u: wrote %d of %d" msgstr "не вдалося записати до файлу \"%s\", зсув %u: записано %d з %d" -#: copy_file.c:199 reconstruct.c:771 +#: copy_file.c:213 reconstruct.c:786 #, c-format msgid "could not read from file \"%s\": %m" msgstr "не вдалося прочитати з файлу \"%s\": %m" -#: copy_file.c:218 +#: copy_file.c:232 #, c-format msgid "error while cloning file \"%s\" to \"%s\": %m" msgstr "помилка при клонуванні файлу \"%s\" в \"%s\": %m" -#: copy_file.c:229 copy_file.c:272 +#: copy_file.c:243 copy_file.c:286 #, c-format msgid "could not create file \"%s\": %m" msgstr "неможливо створити файл \"%s\": %m" -#: copy_file.c:237 +#: copy_file.c:251 #, c-format msgid "error while cloning file \"%s\" to \"%s\": %s" msgstr "помилка при клонуванні файлу \"%s\" в \"%s\": %s" -#: copy_file.c:245 pg_combinebackup.c:251 +#: copy_file.c:259 pg_combinebackup.c:256 #, c-format msgid "file cloning not supported on this platform" msgstr "клонування файлів не підтримується на цій платформі" -#: copy_file.c:278 reconstruct.c:691 +#: copy_file.c:292 reconstruct.c:706 #, c-format msgid "error while copying file range from \"%s\" to \"%s\": %m" msgstr "помилка при копіюванні діапазону файлу від \"%s\" до \"%s\": %m" -#: copy_file.c:285 pg_combinebackup.c:264 reconstruct.c:711 +#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:726 #, c-format msgid "copy_file_range not supported on this platform" msgstr "copy_file_range не підтримується на цій платформі" -#: copy_file.c:300 +#: copy_file.c:314 #, c-format msgid "could not copy file \"%s\" to \"%s\": %m" msgstr "не вдалося скопіювати файл \"%s\" в \"%s\": %m" +#: copy_file.c:333 +#, c-format +msgid "could not create link from \"%s\" to \"%s\": %m" +msgstr "не вдалося створити посилання з \"%s\" на \"%s\": %m" + #: load_manifest.c:125 #, c-format msgid "file \"%s\" does not exist" @@ -536,340 +546,355 @@ msgstr "не вдалося прочитати файл \"%s\": прочитан msgid "could not read file \"%s\": read %lld of %lld" msgstr "не вдалося прочитати файл \"%s\": прочитано %lld з %lld" -#: load_manifest.c:249 +#: load_manifest.c:248 #, c-format msgid "backup manifest version 1 does not support incremental backup" msgstr "маніфест резервного копіювання версії 1 не підтримує інкреметного резервного копіювання" -#: load_manifest.c:281 +#: load_manifest.c:280 #, c-format msgid "duplicate path name in backup manifest: \"%s\"" msgstr "дубльований шлях у маніфесті резервного копіювання: \"%s\"" -#: pg_combinebackup.c:220 pg_combinebackup.c:228 +#: pg_combinebackup.c:225 pg_combinebackup.c:233 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_combinebackup.c:227 +#: pg_combinebackup.c:232 #, c-format msgid "no input directories specified" msgstr "вхідні каталоги не вказано" -#: pg_combinebackup.c:233 +#: pg_combinebackup.c:238 #, c-format msgid "no output directory specified" msgstr "вихідний каталог не вказано" -#: pg_combinebackup.c:301 +#: pg_combinebackup.c:306 #, c-format -msgid "%s: manifest system identifier is %llu, but control file has %llu" -msgstr "%s: маніфестовий ідентифікатор системи - %llu, але контрольний файл має %llu" +msgid "%s: manifest system identifier is %, but control file has %" +msgstr "%s: маніфестовий ідентифікатор системи - %, але контрольний файл має %" -#: pg_combinebackup.c:340 +#: pg_combinebackup.c:345 #, c-format msgid "cannot generate a manifest because no manifest is available for the final input backup" msgstr "не вдається згенерувати маніфест, оскільки для остаточної резервної копії вхідних даних немає маніфесту" -#: pg_combinebackup.c:387 +#: pg_combinebackup.c:392 #, c-format msgid "could not create symbolic link from \"%s\" to \"%s\": %m" msgstr "не вдалося створити символічне послання з \"%s\" на \"%s\": %m" -#: pg_combinebackup.c:399 pg_combinebackup.c:730 pg_combinebackup.c:927 +#: pg_combinebackup.c:404 pg_combinebackup.c:739 pg_combinebackup.c:937 #, c-format msgid "could not create directory \"%s\": %m" msgstr "не вдалося створити каталог \"%s\": %m" -#: pg_combinebackup.c:454 +#: pg_combinebackup.c:434 +#, c-format +msgid "--link mode was used; any modifications to the output directory might destructively modify input directories" +msgstr "використовувався режим --link; будь-які зміни в каталозі вихідних даних можуть деструктивно змінити вхідні каталоги" + +#: pg_combinebackup.c:464 #, c-format msgid "directory name too long" msgstr "ім'я директорії задовге" -#: pg_combinebackup.c:461 +#: pg_combinebackup.c:471 #, c-format msgid "multiple \"=\" signs in tablespace mapping" msgstr "кілька знаків \"=\" зіставленні табличних просторів" -#: pg_combinebackup.c:469 +#: pg_combinebackup.c:479 #, c-format msgid "invalid tablespace mapping format \"%s\", must be \"OLDDIR=NEWDIR\"" msgstr "неприпустимий табличний простір зіставлення формату \"%s\", має бути \"OLDDIR = NEWDIR\"" -#: pg_combinebackup.c:480 pg_combinebackup.c:484 +#: pg_combinebackup.c:490 pg_combinebackup.c:494 #, c-format msgid "old directory is not an absolute path in tablespace mapping: %s" msgstr "старий каталог не є абсолютним шляхом у зіставлення табличного простору: %s" -#: pg_combinebackup.c:553 +#: pg_combinebackup.c:563 #, c-format msgid "backup at \"%s\" is a full backup, but only the first backup should be a full backup" msgstr "резервна копія за адресою \"%s\" є повною резервною копією, але тільки перша резервна копія має бути повною резервною копією" -#: pg_combinebackup.c:556 +#: pg_combinebackup.c:566 #, c-format msgid "backup at \"%s\" is an incremental backup, but the first backup should be a full backup" msgstr "резервна копія за адресою \"%s\" є інкрементною резервною копією, але перша резервна копія має бути повною" -#: pg_combinebackup.c:559 +#: pg_combinebackup.c:569 #, c-format msgid "backup at \"%s\" starts on timeline %u, but expected %u" msgstr "резервне копіювання на \"%s\" починається на лінії часу %u, але очікується %u" -#: pg_combinebackup.c:562 +#: pg_combinebackup.c:572 #, c-format msgid "backup at \"%s\" starts at LSN %X/%X, but expected %X/%X" msgstr "резервне копіювання на \"%s\" починається з LSN %X/%X, але очікується %X/%X" -#: pg_combinebackup.c:614 +#: pg_combinebackup.c:624 #, c-format msgid "%s: CRC is incorrect" msgstr "%s: CRC невірний" -#: pg_combinebackup.c:618 +#: pg_combinebackup.c:628 #, c-format msgid "%s: unexpected control file version" msgstr "%s: неочікувана версія контрольного файлу" -#: pg_combinebackup.c:625 +#: pg_combinebackup.c:635 #, c-format -msgid "%s: expected system identifier %llu, but found %llu" -msgstr "%s: очікуваний ідентифікатор системи %llu, але знайдено %llu" +msgid "%s: expected system identifier %, but found %" +msgstr "%s: очікувався системний ідентифікатор %, але знайдено %" -#: pg_combinebackup.c:657 +#: pg_combinebackup.c:666 #, c-format msgid "only some backups have checksums enabled" msgstr "лише деякі резервні копії мають включені контрольні суми" -#: pg_combinebackup.c:658 +#: pg_combinebackup.c:667 #, c-format msgid "Disable, and optionally reenable, checksums on the output directory to avoid failures." msgstr "Вимкніть, та за бажанням увімкніть, контрольні суми для вихідного каталога, щоб уникнути помилок." -#: pg_combinebackup.c:693 +#: pg_combinebackup.c:702 #, c-format msgid "removing output directory \"%s\"" msgstr "видалення вихідного каталогу \"%s\"" -#: pg_combinebackup.c:695 +#: pg_combinebackup.c:704 #, c-format msgid "failed to remove output directory" msgstr "не вдалося вилучити вихідний каталог" -#: pg_combinebackup.c:699 +#: pg_combinebackup.c:708 #, c-format msgid "removing contents of output directory \"%s\"" msgstr "видалення вмісту вихідного каталогу \"%s\"" -#: pg_combinebackup.c:702 +#: pg_combinebackup.c:711 #, c-format msgid "failed to remove contents of output directory" msgstr "не вдалося вилучити вміст з вихідного каталогу" -#: pg_combinebackup.c:742 +#: pg_combinebackup.c:751 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "каталог \"%s\" існує, але він не порожній" -#: pg_combinebackup.c:745 +#: pg_combinebackup.c:754 #, c-format msgid "could not access directory \"%s\": %m" msgstr "немає доступу до каталогу \"%s\": %m" -#: pg_combinebackup.c:759 +#: pg_combinebackup.c:768 #, c-format msgid "%s reconstructs full backups from incrementals.\n\n" msgstr "%s відновлює повні резервні копії з інкрементів.\n\n" -#: pg_combinebackup.c:760 +#: pg_combinebackup.c:769 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_combinebackup.c:761 +#: pg_combinebackup.c:770 #, c-format msgid " %s [OPTION]... DIRECTORY...\n" msgstr " %s [ПАРАМЕТР]... КАТАЛОГ...\n" -#: pg_combinebackup.c:762 +#: pg_combinebackup.c:771 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: pg_combinebackup.c:763 +#: pg_combinebackup.c:772 #, c-format msgid " -d, --debug generate lots of debugging output\n" msgstr " -d, --debug генерувати багато налагоджувальних повідомлень\n" -#: pg_combinebackup.c:764 +#: pg_combinebackup.c:773 +#, c-format +msgid " -k, --link link files instead of copying\n" +msgstr " -k, --link створювати посилання на файли замість копіювання\n" + +#: pg_combinebackup.c:774 #, c-format msgid " -n, --dry-run do not actually do anything\n" msgstr " -n, --dry-run насправді ніякої дії\n" -#: pg_combinebackup.c:765 +#: pg_combinebackup.c:775 #, c-format msgid " -N, --no-sync do not wait for changes to be written safely to disk\n" msgstr " -N, --no-sync не чекати на безпечний запис змін на диск\n" -#: pg_combinebackup.c:766 +#: pg_combinebackup.c:776 #, c-format msgid " -o, --output=DIRECTORY output directory\n" msgstr " -o, --output=DIRECTORY вихідний каталог\n" -#: pg_combinebackup.c:767 +#: pg_combinebackup.c:777 #, c-format msgid " -T, --tablespace-mapping=OLDDIR=NEWDIR\n" " relocate tablespace in OLDDIR to NEWDIR\n" msgstr " -T, --tablespace-mapping=OLDDIR=NEWDIR\n" " перемістити табличний простір з OLDDIR в NEWDIR\n" -#: pg_combinebackup.c:769 +#: pg_combinebackup.c:779 #, c-format msgid " --clone clone (reflink) files instead of copying\n" msgstr " --clone клонувати (reflink) файли замість копіювання\n" -#: pg_combinebackup.c:770 +#: pg_combinebackup.c:780 #, c-format msgid " --copy copy files (default)\n" msgstr " --copy копіювати файли (за замовчуванням)\n" -#: pg_combinebackup.c:771 +#: pg_combinebackup.c:781 #, c-format msgid " --copy-file-range copy using copy_file_range() system call\n" msgstr " --copy-file-range копіювати за допомогою системного виклику copy_file_range()\n" -#: pg_combinebackup.c:772 +#: pg_combinebackup.c:782 #, c-format msgid " --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n" " use algorithm for manifest checksums\n" msgstr " --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n" " алгоритм використання контрольних сум маніфесту\n" -#: pg_combinebackup.c:774 +#: pg_combinebackup.c:784 #, c-format msgid " --no-manifest suppress generation of backup manifest\n" msgstr " --no-manifest заборонити створення маніфесту резервної копії\n" -#: pg_combinebackup.c:775 +#: pg_combinebackup.c:785 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METHOD встановити метод синхронізації файлів на диск\n" -#: pg_combinebackup.c:776 +#: pg_combinebackup.c:786 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: pg_combinebackup.c:777 +#: pg_combinebackup.c:787 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: pg_combinebackup.c:779 +#: pg_combinebackup.c:789 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: pg_combinebackup.c:780 +#: pg_combinebackup.c:790 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: pg_combinebackup.c:995 +#: pg_combinebackup.c:1005 #, c-format msgid "skipping symbolic link \"%s\"" msgstr "пропускання символічного посилання \"%s\"" -#: pg_combinebackup.c:997 +#: pg_combinebackup.c:1007 #, c-format msgid "skipping special file \"%s\"" msgstr "спеціальний файл \"%s\" пропускається" -#: pg_combinebackup.c:1073 reconstruct.c:300 +#: pg_combinebackup.c:1083 reconstruct.c:305 #, c-format msgid "manifest file \"%s\" contains no entry for file \"%s\"" msgstr "файл маніфеста \"%s\" не містить запису для файлу \"%s\"" -#: pg_combinebackup.c:1189 +#: pg_combinebackup.c:1199 #, c-format msgid "%s: server version too old" msgstr "%s: версія серверу застаріла" -#: pg_combinebackup.c:1190 +#: pg_combinebackup.c:1200 #, c-format msgid "%s: could not parse version number" msgstr "%s: не вдалося розібрати номер версії" -#: pg_combinebackup.c:1309 +#: pg_combinebackup.c:1319 #, c-format msgid "could not read symbolic link \"%s\": %m" msgstr "не можливо прочитати символічне послання \"%s\": %m" -#: pg_combinebackup.c:1312 +#: pg_combinebackup.c:1322 #, c-format msgid "target of symbolic link \"%s\" is too long" msgstr "ціль символічного посилання \"%s\" занадто довга" -#: pg_combinebackup.c:1315 +#: pg_combinebackup.c:1325 #, c-format msgid "target of symbolic link \"%s\" is relative" msgstr "ціль символічного посилання \"%s\" є відносною" -#: pg_combinebackup.c:1337 +#: pg_combinebackup.c:1347 #, c-format msgid "tablespace at \"%s\" has no tablespace mapping" msgstr "табличний простір за адресою \"%s\" не має зіставлення табличного простору" -#: pg_combinebackup.c:1355 +#: pg_combinebackup.c:1365 #, c-format msgid "tablespaces with OIDs %u and %u both point at directory \"%s\"" msgstr "табличні простори з OID %u та %u обидва вказують на каталог \"%s\"" -#: pg_combinebackup.c:1364 +#: pg_combinebackup.c:1374 #, c-format msgid "could not close directory \"%s\": %m" msgstr "не вдалося закрити каталог \"%s\": %m" -#: pg_combinebackup.c:1385 +#: pg_combinebackup.c:1395 #, c-format msgid "file \"%s\" is too large" msgstr "файл \"%s\" занадто великий" -#: pg_combinebackup.c:1402 +#: pg_combinebackup.c:1412 #, c-format msgid "could not read file \"%s\": read %zd of %lld" msgstr "не вдалося прочитати файл \"%s\": прочитано %zd з %lld" -#: reconstruct.c:410 +#: reconstruct.c:339 +#, c-format +msgid "full backup contains unexpected incremental file \"%s\"" +msgstr "повна резервна копія містить неочікуваний інкрементний файл \"%s\"" + +#: reconstruct.c:424 #, c-format msgid "file \"%s\" is too short: expected %llu, found %llu" msgstr "файл \"%s\" занадто короткий: очікується %llu, знайдено %llu" -#: reconstruct.c:452 +#: reconstruct.c:466 #, c-format msgid "file \"%s\" has bad incremental magic number (0x%x, expected 0x%x)" msgstr "файл \"%s\" має неправильне інкрементне магічне число (0x%x, очікувалось 0x%x)" -#: reconstruct.c:458 +#: reconstruct.c:472 #, c-format msgid "file \"%s\" has block count %u in excess of segment size %u" msgstr "файл \"%s\" має кількість блоків %u, що перевищує розмір сегмента %u" -#: reconstruct.c:465 +#: reconstruct.c:479 #, c-format msgid "file \"%s\" has truncation block length %u in excess of segment size %u" msgstr "файл \"%s\" має довжину блоку усікання %u, що перевищує розмір сегмента %u" -#: reconstruct.c:529 +#: reconstruct.c:544 #, c-format msgid "could not read file \"%s\": read %d of %u" msgstr "не вдалося прочитати файл \"%s\": прочитано %d з %u" -#: reconstruct.c:773 +#: reconstruct.c:788 #, c-format msgid "could not read from file \"%s\", offset %llu: read %d of %d" msgstr "не вдалося прочитати з файлу \"%s\", зміщення %llu: прочитано %d з %d" diff --git a/src/bin/pg_combinebackup/t/011_ib_truncation.pl b/src/bin/pg_combinebackup/t/011_ib_truncation.pl new file mode 100644 index 00000000000..47d84434452 --- /dev/null +++ b/src/bin/pg_combinebackup/t/011_ib_truncation.pl @@ -0,0 +1,101 @@ +# Copyright (c) 2025-2026, PostgreSQL Global Development Group +# +# This test aims to validate that the calculated truncation block never exceeds +# the segment size. + +use strict; +use warnings FATAL => 'all'; +use PostgreSQL::Test::Cluster; +use PostgreSQL::Test::Utils; +use Test::More; + +# Initialize primary node +my $primary = PostgreSQL::Test::Cluster->new('primary'); +$primary->init(has_archiving => 1, allows_streaming => 1); +$primary->append_conf('postgresql.conf', 'summarize_wal = on'); +$primary->start; + +# Backup locations +my $backup_path = $primary->backup_dir; +my $full_backup = "$backup_path/full"; + +# To avoid using up lots of disk space in the CI/buildfarm environment, this +# test will only find the issue when run with a small RELSEG_SIZE. As of this +# writing, one of the CI runs is configured using --with-segsize-blocks=6, and +# we aim to have this test check for the issue only in that configuration. +my $target_blocks = 6; +my $block_size = $primary->safe_psql('postgres', + "SELECT current_setting('block_size')::int;"); + +# We'll have two blocks more than the target number of blocks (one will +# survive the subsequent truncation). +my $target_rows = int($target_blocks + 2); +my $rows_after_truncation = int($target_rows - 1); + +# Create a test table. STORAGE PLAIN prevents compression and TOASTing of +# repetitive data, ensuring predictable row sizes. +$primary->safe_psql( + 'postgres', q{ + CREATE TABLE t ( + id int, + data text STORAGE PLAIN + ); +}); + +# The tuple size should be enough to prevent two tuples from being on the same +# page. Since the template string has a length of 32 bytes, it's enough to +# repeat it (block_size / (2*32)) times. +$primary->safe_psql( + 'postgres', + "INSERT INTO t + SELECT i, + repeat('0123456789ABCDEF0123456789ABCDEF', ($block_size / (2*32))) + FROM generate_series(1, $target_rows) i;" +); + +# Make sure hint bits are set. +$primary->safe_psql('postgres', 'VACUUM t;'); + +# Verify that the relation is as large as was desired. +my $t_blocks = $primary->safe_psql('postgres', + "SELECT pg_relation_size('t') / current_setting('block_size')::int;"); +cmp_ok($t_blocks, '>', $target_blocks, 'target block size exceeded'); + +# Take a full base backup +$primary->backup('full'); + +# Delete rows at the logical end of the table, creating removable pages. +$primary->safe_psql('postgres', + "DELETE FROM t WHERE id > ($rows_after_truncation);"); + +# VACUUM the table. TRUNCATE is enabled by default, and is just mentioned here +# for emphasis. +$primary->safe_psql('postgres', 'VACUUM (TRUNCATE) t;'); + +# Verify expected length after truncation. +$t_blocks = $primary->safe_psql('postgres', + "SELECT pg_relation_size('t') / current_setting('block_size')::int;"); +is($t_blocks, $rows_after_truncation, 'post-truncation row count as expected'); +cmp_ok($t_blocks, '>', $target_blocks, + 'post-truncation block count as expected'); + +# Take an incremental backup based on the full backup manifest +$primary->backup('incr', + backup_options => [ '--incremental', "$full_backup/backup_manifest" ]); + +# Combine full and incremental backups. Before the fix, this failed because +# the INCREMENTAL file header contained an incorrect truncation_block value. +my $restored = PostgreSQL::Test::Cluster->new('node2'); +$restored->init_from_backup($primary, 'incr', combine_with_prior => ['full']); +$restored->start(); + +# Check that the restored table contains the correct number of rows +my $restored_count = + $restored->safe_psql('postgres', "SELECT count(*) FROM t;"); +is($restored_count, $rows_after_truncation, + 'Restored backup has correct row count'); + +$primary->stop; +$restored->stop; + +done_testing(); diff --git a/src/bin/pg_config/po/es.po b/src/bin/pg_config/po/es.po index cf6e5345f26..e0f97112d5e 100644 --- a/src/bin/pg_config/po/es.po +++ b/src/bin/pg_config/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_config (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:18+0000\n" +"POT-Creation-Date: 2026-02-06 23:18+0000\n" "PO-Revision-Date: 2024-11-16 14:23+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_controldata/po/es.po b/src/bin/pg_controldata/po/es.po index 2d08d84a6ad..e405cd174e6 100644 --- a/src/bin/pg_controldata/po/es.po +++ b/src/bin/pg_controldata/po/es.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_controldata (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:23+0000\n" +"POT-Creation-Date: 2026-02-06 23:22+0000\n" "PO-Revision-Date: 2025-09-21 11:32+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_controldata/po/uk.po b/src/bin/pg_controldata/po/uk.po index c2b2e3217f1..5bd472f87c2 100644 --- a/src/bin/pg_controldata/po/uk.po +++ b/src/bin/pg_controldata/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:24+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:54+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,8 +14,8 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_controldata.pot\n" -"X-Crowdin-File-ID: 1018\n" +"X-Crowdin-File: /REL_18_STABLE/pg_controldata.pot\n" +"X-Crowdin-File-ID: 1047\n" #: ../../common/controldata_utils.c:97 #, c-format @@ -167,32 +167,32 @@ msgstr "невизнаний код статусу" msgid "unrecognized \"wal_level\"" msgstr "нерозпізнано \"wal_level\"" -#: pg_controldata.c:138 pg_controldata.c:156 pg_controldata.c:163 +#: pg_controldata.c:139 pg_controldata.c:157 pg_controldata.c:164 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_controldata.c:154 +#: pg_controldata.c:155 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: pg_controldata.c:162 +#: pg_controldata.c:163 #, c-format msgid "no data directory specified" msgstr "каталог даних не вказано" -#: pg_controldata.c:171 +#: pg_controldata.c:172 #, c-format msgid "calculated CRC checksum does not match value stored in control file" msgstr "обчислена контрольна сума CRC не збігається зі значенням, що зберігається в контрольному файлі" -#: pg_controldata.c:172 +#: pg_controldata.c:173 #, c-format msgid "Either the control file is corrupt, or it has a different layout than this program is expecting. The results below are untrustworthy." msgstr "Або контрольний файл пошкоджено, або він має іншу структуру, ніж очікує ця програма. Наведені нижче результати не заслуговують на довіру." -#: pg_controldata.c:181 +#: pg_controldata.c:182 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -201,294 +201,308 @@ msgstr[1] "невірний розмір сегмента WAL у файлі ке msgstr[2] "невірний розмір сегмента WAL у файлі керування (%d байтів)" msgstr[3] "невірний розмір сегмента WAL у файлі керування (%d байтів)" -#: pg_controldata.c:185 +#: pg_controldata.c:186 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "Розмір сегмента WAL повинен бути степенем двійки від 1 МБ до 1 ГБ." -#: pg_controldata.c:186 +#: pg_controldata.c:187 #, c-format msgid "The file is corrupt and the results below are untrustworthy." msgstr "Файл пошкоджено, і наведені нижче результати не заслуговують на довіру." -#: pg_controldata.c:221 +#: pg_controldata.c:205 pg_controldata.c:213 pg_controldata.c:232 +#, c-format msgid "???" msgstr "???" -#: pg_controldata.c:227 +#: pg_controldata.c:238 #, c-format msgid "pg_control version number: %u\n" msgstr "pg_control номер версії: %u\n" -#: pg_controldata.c:229 +#: pg_controldata.c:240 #, c-format msgid "Catalog version number: %u\n" msgstr "Номер версії каталогу: %u\n" -#: pg_controldata.c:231 +#: pg_controldata.c:242 #, c-format -msgid "Database system identifier: %llu\n" -msgstr "Системний ідентифікатор бази даних: %llu\n" +msgid "Database system identifier: %\n" +msgstr "Ідентифікатор системи бази даних: %\n" -#: pg_controldata.c:233 +#: pg_controldata.c:244 #, c-format msgid "Database cluster state: %s\n" msgstr "Стан кластеру бази даних: %s\n" -#: pg_controldata.c:235 +#: pg_controldata.c:246 #, c-format msgid "pg_control last modified: %s\n" msgstr "pg_control був модифікований востаннє: %s\n" -#: pg_controldata.c:237 +#: pg_controldata.c:248 #, c-format msgid "Latest checkpoint location: %X/%X\n" msgstr "Останнє місце знаходження контрольної точки: %X/%X\n" -#: pg_controldata.c:239 +#: pg_controldata.c:250 #, c-format msgid "Latest checkpoint's REDO location: %X/%X\n" msgstr "Розташування останньої контрольної точки: %X%X\n" -#: pg_controldata.c:241 +#: pg_controldata.c:252 #, c-format msgid "Latest checkpoint's REDO WAL file: %s\n" msgstr "Останній файл контрольної точки REDO WAL: %s\n" -#: pg_controldata.c:243 +#: pg_controldata.c:254 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "Останній TimeLineID контрольної точки: %u\n" -#: pg_controldata.c:245 +#: pg_controldata.c:256 #, c-format msgid "Latest checkpoint's PrevTimeLineID: %u\n" msgstr "Останній PrevTimeLineID контрольної точки: %u\n" -#: pg_controldata.c:247 +#: pg_controldata.c:258 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "Останній full_page_writes контрольної точки: %s\n" -#: pg_controldata.c:248 pg_controldata.c:289 pg_controldata.c:301 +#: pg_controldata.c:259 pg_controldata.c:300 pg_controldata.c:312 msgid "off" msgstr "вимк" -#: pg_controldata.c:248 pg_controldata.c:289 pg_controldata.c:301 +#: pg_controldata.c:259 pg_controldata.c:300 pg_controldata.c:312 msgid "on" msgstr "увімк" -#: pg_controldata.c:249 +#: pg_controldata.c:260 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "Останній NextXID контрольної точки: %u%u\n" -#: pg_controldata.c:252 +#: pg_controldata.c:263 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "Останній NextOID контрольної точки: %u\n" -#: pg_controldata.c:254 +#: pg_controldata.c:265 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "Останній NextMultiXactId контрольної точки: %u\n" -#: pg_controldata.c:256 +#: pg_controldata.c:267 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "Останній NextMultiOffset контрольної точки: %u\n" -#: pg_controldata.c:258 +#: pg_controldata.c:269 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "Останній oldestXID контрольної точки: %u\n" -#: pg_controldata.c:260 +#: pg_controldata.c:271 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "Остання DB останнього oldestXID контрольної точки: %u\n" -#: pg_controldata.c:262 +#: pg_controldata.c:273 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "Останній oldestActiveXID контрольної точки: %u\n" -#: pg_controldata.c:264 +#: pg_controldata.c:275 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "Останній oldestMultiXid контрольної точки: %u \n" -#: pg_controldata.c:266 +#: pg_controldata.c:277 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "Остання DB останньої oldestMulti контрольної точки: %u\n" -#: pg_controldata.c:268 +#: pg_controldata.c:279 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "Останній oldestCommitTsXid контрольної точки:%u\n" -#: pg_controldata.c:270 +#: pg_controldata.c:281 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "Останній newestCommitTsXid контрольної точки: %u\n" -#: pg_controldata.c:272 +#: pg_controldata.c:283 #, c-format msgid "Time of latest checkpoint: %s\n" msgstr "Час останньої контрольної точки: %s\n" -#: pg_controldata.c:274 +#: pg_controldata.c:285 #, c-format msgid "Fake LSN counter for unlogged rels: %X/%X\n" msgstr "Фіктивний LSN для таблиць без журналювання: %X/%X\n" -#: pg_controldata.c:276 +#: pg_controldata.c:287 #, c-format msgid "Minimum recovery ending location: %X/%X\n" msgstr "Мінімальне розташування кінця відновлення: %X/%X\n" -#: pg_controldata.c:278 +#: pg_controldata.c:289 #, c-format msgid "Min recovery ending loc's timeline: %u\n" msgstr "Мінімальна позиція історії часу завершення відновлення: %u\n" -#: pg_controldata.c:280 +#: pg_controldata.c:291 #, c-format msgid "Backup start location: %X/%X\n" msgstr "Початкове розташування резервного копіювання: %X/%X\n" -#: pg_controldata.c:282 +#: pg_controldata.c:293 #, c-format msgid "Backup end location: %X/%X\n" msgstr "Кінцеве розташування резервного копіювання: %X/%X\n" -#: pg_controldata.c:284 +#: pg_controldata.c:295 #, c-format msgid "End-of-backup record required: %s\n" msgstr "Вимагається запис кінця резервного копіювання: %s\n" -#: pg_controldata.c:285 +#: pg_controldata.c:296 msgid "no" msgstr "ні" -#: pg_controldata.c:285 +#: pg_controldata.c:296 msgid "yes" msgstr "так" -#: pg_controldata.c:286 +#: pg_controldata.c:297 #, c-format msgid "wal_level setting: %s\n" msgstr "налаштування wal_рівня: %s\n" -#: pg_controldata.c:288 +#: pg_controldata.c:299 #, c-format msgid "wal_log_hints setting: %s\n" msgstr "налаштування wal_log_hints: %s\n" -#: pg_controldata.c:290 +#: pg_controldata.c:301 #, c-format msgid "max_connections setting: %d\n" msgstr "налаштування max_connections: %d\n" -#: pg_controldata.c:292 +#: pg_controldata.c:303 #, c-format msgid "max_worker_processes setting: %d\n" msgstr "налаштування max_worker_processes: %d\n" -#: pg_controldata.c:294 +#: pg_controldata.c:305 #, c-format msgid "max_wal_senders setting: %d\n" msgstr "налаштування max_wal_senders: %d\n" -#: pg_controldata.c:296 +#: pg_controldata.c:307 #, c-format msgid "max_prepared_xacts setting: %d\n" msgstr "налаштування max_prepared_xacts: %d\n" -#: pg_controldata.c:298 +#: pg_controldata.c:309 #, c-format msgid "max_locks_per_xact setting: %d\n" msgstr "налаштування max_locks_per_xact: %d\n" -#: pg_controldata.c:300 +#: pg_controldata.c:311 #, c-format msgid "track_commit_timestamp setting: %s\n" msgstr "налаштування track_commit_timestamp: %s\n" -#: pg_controldata.c:302 +#: pg_controldata.c:313 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Максимальне вирівнювання даних: %u\n" -#: pg_controldata.c:305 +#: pg_controldata.c:316 #, c-format msgid "Database block size: %u\n" msgstr "Розмір блоку бази даних: %u\n" -#: pg_controldata.c:307 +#: pg_controldata.c:318 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Блоків на сегмент великого відношення: %u\n" -#: pg_controldata.c:309 +#: pg_controldata.c:320 #, c-format msgid "WAL block size: %u\n" msgstr "Pозмір блоку WAL: %u\n" -#: pg_controldata.c:311 +#: pg_controldata.c:322 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Байтів на сегмент WAL: %u\n" -#: pg_controldata.c:313 +#: pg_controldata.c:324 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Максимальна довжина ідентифікаторів: %u\n" -#: pg_controldata.c:315 +#: pg_controldata.c:326 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "Максимальна кількість стовпців в індексі: %u\n" -#: pg_controldata.c:317 +#: pg_controldata.c:328 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Максимальний розмір сегменту TOAST: %u\n" -#: pg_controldata.c:319 +#: pg_controldata.c:330 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "Розмір сегменту великих обїєктів: %u\n" -#: pg_controldata.c:322 +#: pg_controldata.c:333 #, c-format msgid "Date/time type storage: %s\n" msgstr "Дата/час типу сховища: %s\n" -#: pg_controldata.c:323 +#: pg_controldata.c:334 msgid "64-bit integers" msgstr "64-бітні цілі" -#: pg_controldata.c:324 +#: pg_controldata.c:335 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Передача аргументу Float8: %s\n" -#: pg_controldata.c:325 +#: pg_controldata.c:336 msgid "by reference" msgstr "за посиланням" -#: pg_controldata.c:325 +#: pg_controldata.c:336 msgid "by value" msgstr "за значенням" -#: pg_controldata.c:326 +#: pg_controldata.c:337 #, c-format msgid "Data page checksum version: %u\n" msgstr "Версія контрольних сум сторінок даних: %u\n" -#: pg_controldata.c:328 +#: pg_controldata.c:339 +#, c-format +msgid "Default char data signedness: %s\n" +msgstr "Знаковість символьних даних за замовчуванням: %s\n" + +#: pg_controldata.c:340 +msgid "signed" +msgstr "знаковий" + +#: pg_controldata.c:340 +msgid "unsigned" +msgstr "беззнаковий" + +#: pg_controldata.c:341 #, c-format msgid "Mock authentication nonce: %s\n" msgstr "Імітувати нонс для аутентифікації: %s\n" diff --git a/src/bin/pg_ctl/po/es.po b/src/bin/pg_ctl/po/es.po index fc272fae5c9..6c74e3b8350 100644 --- a/src/bin/pg_ctl/po/es.po +++ b/src/bin/pg_ctl/po/es.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_ctl (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:19+0000\n" +"POT-Creation-Date: 2026-02-06 23:18+0000\n" "PO-Revision-Date: 2025-09-21 11:35+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_ctl/po/uk.po b/src/bin/pg_ctl/po/uk.po index b517535543a..c2a734fe85c 100644 --- a/src/bin/pg_ctl/po/uk.po +++ b/src/bin/pg_ctl/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:20+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:50+0000\n" +"PO-Revision-Date: 2026-01-02 14:40\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,8 +14,8 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_ctl.pot\n" -"X-Crowdin-File-ID: 994\n" +"X-Crowdin-File: /REL_18_STABLE/pg_ctl.pot\n" +"X-Crowdin-File-ID: 1091\n" #: ../../common/controldata_utils.c:168 msgid "byte ordering mismatch" @@ -41,33 +41,33 @@ msgstr "неможливо знайти \"%s\" для виконання" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "не вдалося знайти абсолютний шлях \"%s\": %m" -#: ../../common/exec.c:382 +#: ../../common/exec.c:363 #, c-format msgid "could not execute command \"%s\": %m" msgstr "не вдалося виконати команду \"%s\": %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "не вдалося прочитати висновок команди \"%s\": %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "команда \"%s\" не повернула жодних даних" -#: ../../common/exec.c:424 +#: ../../common/exec.c:405 #, c-format msgid "%s() failed: %m" msgstr "%s() помилка: %m" -#: ../../common/exec.c:562 ../../common/exec.c:607 ../../common/exec.c:699 +#: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 msgid "out of memory" msgstr "недостатньо пам'яті" #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75 #: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161 -#: ../../port/path.c:753 ../../port/path.c:790 ../../port/path.c:807 +#: ../../port/path.c:831 ../../port/path.c:868 ../../port/path.c:885 #, c-format msgid "out of memory\n" msgstr "недостатньо пам'яті\n" @@ -107,676 +107,680 @@ msgstr "дочірній процес перервано через сигнал msgid "child process exited with unrecognized status %d" msgstr "дочірній процес завершився з невизнаним статусом %d" -#: ../../port/path.c:775 +#: ../../port/path.c:853 #, c-format msgid "could not get current working directory: %m\n" msgstr "не вдалося отримати поточний робочий каталог: %m\n" -#: pg_ctl.c:254 +#: pg_ctl.c:255 #, c-format msgid "%s: directory \"%s\" does not exist\n" msgstr "%s: директорія \"%s\" не існує\n" -#: pg_ctl.c:257 +#: pg_ctl.c:258 #, c-format msgid "%s: could not access directory \"%s\": %m\n" msgstr "%s: не вдалося отримати доступ до каталогу \"%s\": %m\n" -#: pg_ctl.c:270 +#: pg_ctl.c:271 #, c-format msgid "%s: directory \"%s\" is not a database cluster directory\n" msgstr "%s: каталог \"%s\" не є каталогом кластера бази даних\n" -#: pg_ctl.c:283 +#: pg_ctl.c:284 #, c-format msgid "%s: could not open PID file \"%s\": %m\n" msgstr "%s: не вдалося відкрити файл PID \"%s\": %m\n" -#: pg_ctl.c:292 +#: pg_ctl.c:293 #, c-format msgid "%s: the PID file \"%s\" is empty\n" msgstr "%s: файл PID \"%s\" пустий\n" -#: pg_ctl.c:295 +#: pg_ctl.c:296 #, c-format msgid "%s: invalid data in PID file \"%s\"\n" msgstr "%s: невірні дані у файлі PID \"%s\"\n" -#: pg_ctl.c:457 pg_ctl.c:499 +#: pg_ctl.c:458 pg_ctl.c:500 #, c-format msgid "%s: could not start server: %m\n" msgstr "%s: не вдалося запустити сервер: %m\n" -#: pg_ctl.c:477 +#: pg_ctl.c:478 #, c-format msgid "%s: could not start server due to setsid() failure: %m\n" msgstr "%s: не вдалося запустити сервер через помилку setsid(): %m\n" -#: pg_ctl.c:547 +#: pg_ctl.c:548 #, c-format msgid "%s: could not open log file \"%s\": %m\n" msgstr "%s: не вдалося відкрити файл журналу \"%s\": %m\n" -#: pg_ctl.c:564 +#: pg_ctl.c:565 #, c-format msgid "%s: could not start server: error code %lu\n" msgstr "%s: не вдалося запустити сервер: код помилки %lu\n" -#: pg_ctl.c:781 +#: pg_ctl.c:789 #, c-format msgid "%s: cannot set core file size limit; disallowed by hard limit\n" msgstr "%s: не вдалося встановити обмеження на розмір файлу; заборонено жорстким лімітом\n" -#: pg_ctl.c:807 +#: pg_ctl.c:815 #, c-format msgid "%s: could not read file \"%s\"\n" msgstr "%s: не вдалося прочитати файл \"%s\"\n" -#: pg_ctl.c:812 +#: pg_ctl.c:820 #, c-format msgid "%s: option file \"%s\" must have exactly one line\n" msgstr "%s: файл параметрів \"%s\" повинен містити рівно один рядок\n" -#: pg_ctl.c:854 pg_ctl.c:1038 pg_ctl.c:1105 +#: pg_ctl.c:862 pg_ctl.c:1050 pg_ctl.c:1117 #, c-format msgid "%s: could not send stop signal (PID: %d): %m\n" msgstr "%s: не вдалося надіслати стоп-сигнал (PID: %d): %m\n" -#: pg_ctl.c:882 +#: pg_ctl.c:890 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"\n" msgstr "програма \"%s\" потрібна для %s, але не знайдена в тому ж каталозі, що й \"%s\"\n" -#: pg_ctl.c:885 +#: pg_ctl.c:893 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s\n" msgstr "програма \"%s\" знайдена для \"%s\", але має відмінну версію від %s\n" -#: pg_ctl.c:917 +#: pg_ctl.c:925 #, c-format msgid "%s: database system initialization failed\n" msgstr "%s: не вдалося виконати ініціалізацію системи бази даних\n" -#: pg_ctl.c:932 +#: pg_ctl.c:940 #, c-format msgid "%s: another server might be running; trying to start server anyway\n" msgstr "%s: мабуть, інший сервер вже працює; у будь-якому разі спробуємо запустити сервер\n" -#: pg_ctl.c:980 +#: pg_ctl.c:988 msgid "waiting for server to start..." msgstr "очікується запуск серверу..." -#: pg_ctl.c:985 pg_ctl.c:1061 pg_ctl.c:1123 pg_ctl.c:1235 +#: pg_ctl.c:993 pg_ctl.c:1003 pg_ctl.c:1073 pg_ctl.c:1135 pg_ctl.c:1247 msgid " done\n" msgstr " готово\n" -#: pg_ctl.c:986 +#: pg_ctl.c:994 msgid "server started\n" msgstr "сервер запущено\n" -#: pg_ctl.c:989 pg_ctl.c:995 pg_ctl.c:1240 +#: pg_ctl.c:997 pg_ctl.c:1007 pg_ctl.c:1252 msgid " stopped waiting\n" msgstr " очікування припинено\n" -#: pg_ctl.c:990 +#: pg_ctl.c:998 #, c-format msgid "%s: server did not start in time\n" msgstr "%s: сервер не було запущено вчасно\n" -#: pg_ctl.c:996 +#: pg_ctl.c:1004 +msgid "server shut down because of recovery target settings\n" +msgstr "сервер зупинено через налаштування цілі відновлення\n" + +#: pg_ctl.c:1008 #, c-format msgid "%s: could not start server\n" "Examine the log output.\n" msgstr "%s: неможливо запустити сервер\n" "Передивіться протокол виконання.\n" -#: pg_ctl.c:1004 +#: pg_ctl.c:1016 msgid "server starting\n" msgstr "запуск серверу\n" -#: pg_ctl.c:1023 pg_ctl.c:1081 pg_ctl.c:1144 pg_ctl.c:1183 pg_ctl.c:1264 +#: pg_ctl.c:1035 pg_ctl.c:1093 pg_ctl.c:1156 pg_ctl.c:1195 pg_ctl.c:1276 #, c-format msgid "%s: PID file \"%s\" does not exist\n" msgstr "%s: файл PID \"%s\" не існує\n" -#: pg_ctl.c:1024 pg_ctl.c:1083 pg_ctl.c:1145 pg_ctl.c:1184 pg_ctl.c:1265 +#: pg_ctl.c:1036 pg_ctl.c:1095 pg_ctl.c:1157 pg_ctl.c:1196 pg_ctl.c:1277 msgid "Is server running?\n" msgstr "Сервер працює?\n" -#: pg_ctl.c:1030 +#: pg_ctl.c:1042 #, c-format msgid "%s: cannot stop server; single-user server is running (PID: %d)\n" msgstr "%s: не можливо зупинити сервер; сервер запущений в режимі single-user (PID: %d)\n" -#: pg_ctl.c:1044 +#: pg_ctl.c:1056 msgid "server shutting down\n" msgstr "сервер зупиняється\n" -#: pg_ctl.c:1049 pg_ctl.c:1109 +#: pg_ctl.c:1061 pg_ctl.c:1121 msgid "waiting for server to shut down..." msgstr "очікується зупинка серверу..." -#: pg_ctl.c:1053 pg_ctl.c:1114 +#: pg_ctl.c:1065 pg_ctl.c:1126 msgid " failed\n" msgstr " помилка\n" -#: pg_ctl.c:1055 pg_ctl.c:1116 +#: pg_ctl.c:1067 pg_ctl.c:1128 #, c-format msgid "%s: server does not shut down\n" msgstr "%s: сервер не зупинено\n" -#: pg_ctl.c:1057 pg_ctl.c:1118 +#: pg_ctl.c:1069 pg_ctl.c:1130 msgid "HINT: The \"-m fast\" option immediately disconnects sessions rather than\n" "waiting for session-initiated disconnection.\n" msgstr "ПІДКАЗКА: Режим \"-m fast\" закриває сесії відразу, не чекаючи на відключення ініційовані сесіями.\n" -#: pg_ctl.c:1063 pg_ctl.c:1124 +#: pg_ctl.c:1075 pg_ctl.c:1136 msgid "server stopped\n" msgstr "сервер зупинено\n" -#: pg_ctl.c:1084 +#: pg_ctl.c:1096 msgid "trying to start server anyway\n" msgstr "спроба запуску серверу в будь-якому разі\n" -#: pg_ctl.c:1093 +#: pg_ctl.c:1105 #, c-format msgid "%s: cannot restart server; single-user server is running (PID: %d)\n" msgstr "%s: не можливо перезапустити сервер; сервер запущений в режимі single-user (PID: %d)\n" -#: pg_ctl.c:1096 pg_ctl.c:1154 +#: pg_ctl.c:1108 pg_ctl.c:1166 msgid "Please terminate the single-user server and try again.\n" msgstr "Будь ласка, припиніть однокористувацький сервер та спробуйте ще раз.\n" -#: pg_ctl.c:1128 +#: pg_ctl.c:1140 #, c-format msgid "%s: old server process (PID: %d) seems to be gone\n" msgstr "%s: старий серверний процес (PID: %d), здається, зник\n" -#: pg_ctl.c:1130 +#: pg_ctl.c:1142 msgid "starting server anyway\n" msgstr "запуск серверу в будь-якому разі\n" -#: pg_ctl.c:1151 +#: pg_ctl.c:1163 #, c-format msgid "%s: cannot reload server; single-user server is running (PID: %d)\n" msgstr "%s: не можливо перезапустити сервер; сервер запущений в режимі single-user (PID: %d)\n" -#: pg_ctl.c:1160 +#: pg_ctl.c:1172 #, c-format msgid "%s: could not send reload signal (PID: %d): %m\n" msgstr "%s: не можливо надіслати сигнал перезавантаження (PID: %d): %m\n" -#: pg_ctl.c:1165 +#: pg_ctl.c:1177 msgid "server signaled\n" msgstr "серверу надіслано сигнал\n" -#: pg_ctl.c:1190 +#: pg_ctl.c:1202 #, c-format msgid "%s: cannot promote server; single-user server is running (PID: %d)\n" msgstr "%s: неможливо підвищити сервер; сервер запущено в режимі single-user (PID: %d)\n" -#: pg_ctl.c:1198 +#: pg_ctl.c:1210 #, c-format msgid "%s: cannot promote server; server is not in standby mode\n" msgstr "%s: неможливо підвищити сервер; сервер запущено не в режимі резерву\n" -#: pg_ctl.c:1208 +#: pg_ctl.c:1220 #, c-format msgid "%s: could not create promote signal file \"%s\": %m\n" msgstr "%s: неможливо створити файл \"%s\" із сигналом для підвищення: %m\n" -#: pg_ctl.c:1214 +#: pg_ctl.c:1226 #, c-format msgid "%s: could not write promote signal file \"%s\": %m\n" msgstr "%s: неможливо записати файл \"%s\" із сигналом для підвищення: %m\n" -#: pg_ctl.c:1222 +#: pg_ctl.c:1234 #, c-format msgid "%s: could not send promote signal (PID: %d): %m\n" msgstr "%s: неможливо надіслати сигнал підвищення (PID: %d): %m\n" -#: pg_ctl.c:1225 +#: pg_ctl.c:1237 #, c-format msgid "%s: could not remove promote signal file \"%s\": %m\n" msgstr "%s: неможливо видалити файл \"%s\" із сигналом для підвищення: %m\n" -#: pg_ctl.c:1232 +#: pg_ctl.c:1244 msgid "waiting for server to promote..." msgstr "очікується підвищення серверу..." -#: pg_ctl.c:1236 +#: pg_ctl.c:1248 msgid "server promoted\n" msgstr "сервер підвищено\n" -#: pg_ctl.c:1241 +#: pg_ctl.c:1253 #, c-format msgid "%s: server did not promote in time\n" msgstr "%s: сервер не було підвищено вчасно\n" -#: pg_ctl.c:1247 +#: pg_ctl.c:1259 msgid "server promoting\n" msgstr "сервер підвищується\n" -#: pg_ctl.c:1271 +#: pg_ctl.c:1283 #, c-format msgid "%s: cannot rotate log file; single-user server is running (PID: %d)\n" msgstr "%s: не можливо розвернути файл журналу; сервер працює в режимі одного користувача (PID: %d)\n" -#: pg_ctl.c:1281 +#: pg_ctl.c:1293 #, c-format msgid "%s: could not create log rotation signal file \"%s\": %m\n" msgstr "%s: не вдалося створити файл сигналу розвороту журналу \"%s\": %m\n" -#: pg_ctl.c:1287 +#: pg_ctl.c:1299 #, c-format msgid "%s: could not write log rotation signal file \"%s\": %m\n" msgstr "%s: не вдалося записати у файл сигналу розвороту журналу \"%s\": %m\n" -#: pg_ctl.c:1295 +#: pg_ctl.c:1307 #, c-format msgid "%s: could not send log rotation signal (PID: %d): %m\n" msgstr "%s: не вдалося надіслати сигнал розвороту журналу (PID: %d): %m\n" -#: pg_ctl.c:1298 +#: pg_ctl.c:1310 #, c-format msgid "%s: could not remove log rotation signal file \"%s\": %m\n" msgstr "%s: не вдалося видалити файл сигналу розвороту журналу \"%s\": %m\n" -#: pg_ctl.c:1303 +#: pg_ctl.c:1315 msgid "server signaled to rotate log file\n" msgstr "серверу надіслано сигнал для розворот файлу журналу\n" -#: pg_ctl.c:1350 +#: pg_ctl.c:1362 #, c-format msgid "%s: single-user server is running (PID: %d)\n" msgstr "%s: однокористувацький сервер працює (PID: %d)\n" -#: pg_ctl.c:1364 +#: pg_ctl.c:1376 #, c-format msgid "%s: server is running (PID: %d)\n" msgstr "%s: сервер працює (PID: %d)\n" -#: pg_ctl.c:1380 +#: pg_ctl.c:1392 #, c-format msgid "%s: no server running\n" msgstr "%s: сервер не працює \n" -#: pg_ctl.c:1397 +#: pg_ctl.c:1409 #, c-format msgid "%s: could not send signal %d (PID: %d): %m\n" msgstr "%s: не вдалося надіслати сигнал %d (PID: %d): %m\n" -#: pg_ctl.c:1428 +#: pg_ctl.c:1440 #, c-format msgid "%s: could not find own program executable\n" msgstr "%s: не вдалося знайти ехе файл власної програми\n" -#: pg_ctl.c:1438 +#: pg_ctl.c:1450 #, c-format msgid "%s: could not find postgres program executable\n" msgstr "%s: не вдалося знайти виконану програму postgres\n" -#: pg_ctl.c:1508 pg_ctl.c:1542 +#: pg_ctl.c:1520 pg_ctl.c:1554 #, c-format msgid "%s: could not open service manager\n" msgstr "%s: не вдалося відкрити менеджер служб\n" -#: pg_ctl.c:1514 +#: pg_ctl.c:1526 #, c-format msgid "%s: service \"%s\" already registered\n" msgstr "%s: служба \"%s\" вже зареєстрована \n" -#: pg_ctl.c:1525 +#: pg_ctl.c:1537 #, c-format msgid "%s: could not register service \"%s\": error code %lu\n" msgstr "%s: не вдалося зареєструвати службу \"%s\": код помилки %lu\n" -#: pg_ctl.c:1548 +#: pg_ctl.c:1560 #, c-format msgid "%s: service \"%s\" not registered\n" msgstr "%s: служба \"%s\" не зареєстрована \n" -#: pg_ctl.c:1555 +#: pg_ctl.c:1567 #, c-format msgid "%s: could not open service \"%s\": error code %lu\n" msgstr "%s: не вдалося відкрити службу \"%s\": код помилки %lu\n" -#: pg_ctl.c:1564 +#: pg_ctl.c:1576 #, c-format msgid "%s: could not unregister service \"%s\": error code %lu\n" msgstr "%s: не вдалося видалити службу \"%s\": код помилки %lu\n" -#: pg_ctl.c:1651 +#: pg_ctl.c:1663 msgid "Waiting for server startup...\n" msgstr "Очікування запуску сервера...\n" -#: pg_ctl.c:1654 +#: pg_ctl.c:1666 msgid "Timed out waiting for server startup\n" msgstr "Перевищено час очікування запуску сервера\n" -#: pg_ctl.c:1658 +#: pg_ctl.c:1670 msgid "Server started and accepting connections\n" msgstr "Сервер запущений і приймає з'єднання\n" -#: pg_ctl.c:1713 +#: pg_ctl.c:1725 #, c-format msgid "%s: could not start service \"%s\": error code %lu\n" msgstr "%s: не вдалося почати службу \"%s\": код помилки %lu\n" -#: pg_ctl.c:1786 +#: pg_ctl.c:1798 #, c-format msgid "%s: could not open process token: error code %lu\n" msgstr "%s: не вдалося відкрити токен процесу: код помилки %lu\n" -#: pg_ctl.c:1800 +#: pg_ctl.c:1812 #, c-format msgid "%s: could not allocate SIDs: error code %lu\n" msgstr "%s: не вдалося виділити SID: код помилки %lu\n" -#: pg_ctl.c:1826 +#: pg_ctl.c:1838 #, c-format msgid "%s: could not create restricted token: error code %lu\n" msgstr "%s: не вдалося створити обмежений токен: код помилки %lu\n" -#: pg_ctl.c:1908 +#: pg_ctl.c:1920 #, c-format msgid "%s: could not get LUIDs for privileges: error code %lu\n" msgstr "%s: не вдалося отримати LUIDs для прав: код помилки %lu\n" -#: pg_ctl.c:1916 pg_ctl.c:1931 +#: pg_ctl.c:1928 pg_ctl.c:1943 #, c-format msgid "%s: could not get token information: error code %lu\n" msgstr "%s: не вдалося отримати інформацію токену: код помилки %lu\n" -#: pg_ctl.c:1925 +#: pg_ctl.c:1937 #, c-format msgid "%s: out of memory\n" msgstr "%s: бракує пам'яті\n" -#: pg_ctl.c:1955 +#: pg_ctl.c:1967 #, c-format msgid "Try \"%s --help\" for more information.\n" msgstr "Спробуйте \"%s --help\" для додаткової інформації.\n" -#: pg_ctl.c:1963 +#: pg_ctl.c:1975 #, c-format msgid "%s is a utility to initialize, start, stop, or control a PostgreSQL server.\n\n" msgstr "%s - це утиліта для ініціалізації, запуску, зупинки і контролю серверу PostgreSQL.\n\n" -#: pg_ctl.c:1964 +#: pg_ctl.c:1976 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_ctl.c:1965 +#: pg_ctl.c:1977 #, c-format msgid " %s init[db] [-D DATADIR] [-s] [-o OPTIONS]\n" msgstr " %s init[db] [-D КАТАЛОГ-ДАНИХ] [-s] [-o ПАРАМЕТРИ]\n" -#: pg_ctl.c:1966 +#: pg_ctl.c:1978 #, c-format msgid " %s start [-D DATADIR] [-l FILENAME] [-W] [-t SECS] [-s]\n" " [-o OPTIONS] [-p PATH] [-c]\n" msgstr " %s start [-D КАТАЛОГ-ДАНИХ] [-l ІМ'Я-ФАЙЛ] [-W] [-t СЕК] [-s]\n" " [-o ПАРАМЕТРИ] [-p ШЛЯХ] [-c]\n" -#: pg_ctl.c:1968 +#: pg_ctl.c:1980 #, c-format msgid " %s stop [-D DATADIR] [-m SHUTDOWN-MODE] [-W] [-t SECS] [-s]\n" msgstr " %s stop [-D КАТАЛОГ-ДАНИХ] [-m РЕЖИМ-ЗУПИНКИ] [-W] [-t СЕК] [-s]\n" -#: pg_ctl.c:1969 +#: pg_ctl.c:1981 #, c-format msgid " %s restart [-D DATADIR] [-m SHUTDOWN-MODE] [-W] [-t SECS] [-s]\n" " [-o OPTIONS] [-c]\n" msgstr " %s restart [-D КАТАЛОГ-ДАНИХ] [-m РЕЖИМ-ЗУПИНКИ] [-W] [-t СЕК] [-s]\n" " [-o ПАРАМЕТРИ] [-c]\n" -#: pg_ctl.c:1971 +#: pg_ctl.c:1983 #, c-format msgid " %s reload [-D DATADIR] [-s]\n" msgstr " %s reload [-D КАТАЛОГ-ДАНИХ] [-s]\n" -#: pg_ctl.c:1972 +#: pg_ctl.c:1984 #, c-format msgid " %s status [-D DATADIR]\n" msgstr " %s status [-D DATADIR]\n" -#: pg_ctl.c:1973 +#: pg_ctl.c:1985 #, c-format msgid " %s promote [-D DATADIR] [-W] [-t SECS] [-s]\n" msgstr " %s promote [-D КАТАЛОГ-ДАНИХ] [-W] [-t СЕК] [-s]\n" -#: pg_ctl.c:1974 +#: pg_ctl.c:1986 #, c-format msgid " %s logrotate [-D DATADIR] [-s]\n" msgstr " %s logrotate [-D DATADIR] [-s]\n" -#: pg_ctl.c:1975 +#: pg_ctl.c:1987 #, c-format msgid " %s kill SIGNALNAME PID\n" msgstr " %s kill ІМ'Я-СИГНАЛУ PID\n" -#: pg_ctl.c:1977 +#: pg_ctl.c:1989 #, c-format msgid " %s register [-D DATADIR] [-N SERVICENAME] [-U USERNAME] [-P PASSWORD]\n" " [-S START-TYPE] [-e SOURCE] [-W] [-t SECS] [-s] [-o OPTIONS]\n" msgstr " %s register [-D КАТАЛОГ-ДАНИХ] [-N ІМ'Я-СЛУЖБИ] [-U ІМ'Я-КОРИСТУВАЧА] [-P ПАРОЛЬ]\n" " [-S ТИП-ЗАПУСКУ] [-e ДЖЕРЕЛО] [-W] [-t СЕК] [-s] [-o ПАРАМЕТРИ]\n" -#: pg_ctl.c:1979 +#: pg_ctl.c:1991 #, c-format msgid " %s unregister [-N SERVICENAME]\n" msgstr " %s unregister [-N ІМ'Я-СЛУЖБИ]\n" -#: pg_ctl.c:1982 +#: pg_ctl.c:1994 #, c-format msgid "\n" "Common options:\n" msgstr "\n" "Загальні параметри:\n" -#: pg_ctl.c:1983 +#: pg_ctl.c:1995 #, c-format msgid " -D, --pgdata=DATADIR location of the database storage area\n" msgstr " -D, --pgdata=КАТАЛОГ-ДАНИХ розташування простору зберігання бази даних\n" -#: pg_ctl.c:1985 +#: pg_ctl.c:1997 #, c-format msgid " -e SOURCE event source for logging when running as a service\n" msgstr " -e ДЖЕРЕЛО джерело подій для протоколу при запуску в якості послуги\n" -#: pg_ctl.c:1987 +#: pg_ctl.c:1999 #, c-format msgid " -s, --silent only print errors, no informational messages\n" msgstr " -s, --silent виводити лише помилки, без інформаційних повідомлень\n" -#: pg_ctl.c:1988 +#: pg_ctl.c:2000 #, c-format msgid " -t, --timeout=SECS seconds to wait when using -w option\n" msgstr " -t, --timeout=СЕК час очікування при використанні -w параметра\n" -#: pg_ctl.c:1989 +#: pg_ctl.c:2001 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: pg_ctl.c:1990 +#: pg_ctl.c:2002 #, c-format msgid " -w, --wait wait until operation completes (default)\n" msgstr " -w, --wait чекати завершення операції (за замовчуванням)\n" -#: pg_ctl.c:1991 +#: pg_ctl.c:2003 #, c-format msgid " -W, --no-wait do not wait until operation completes\n" msgstr " -W, --no-wait не чекати завершення операції\n" -#: pg_ctl.c:1992 +#: pg_ctl.c:2004 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку потім вийти\n" -#: pg_ctl.c:1993 +#: pg_ctl.c:2005 #, c-format msgid "If the -D option is omitted, the environment variable PGDATA is used.\n" msgstr "Якщо -D параметр пропущено, використовувати змінну середовища PGDATA.\n" -#: pg_ctl.c:1995 +#: pg_ctl.c:2007 #, c-format msgid "\n" "Options for start or restart:\n" msgstr "\n" "Параметри запуску або перезапуску:\n" -#: pg_ctl.c:1997 +#: pg_ctl.c:2009 #, c-format msgid " -c, --core-files allow postgres to produce core files\n" msgstr " -c, --core-files дозволяти postgres створювати дампи пам'яті\n" -#: pg_ctl.c:1999 +#: pg_ctl.c:2011 #, c-format msgid " -c, --core-files not applicable on this platform\n" msgstr " -c, --core-files недопустимо цією платформою\n" -#: pg_ctl.c:2001 +#: pg_ctl.c:2013 #, c-format msgid " -l, --log=FILENAME write (or append) server log to FILENAME\n" msgstr " -l, --log=ФАЙЛ записувати (або додавати) протокол служби до ФАЙЛ\n" -#: pg_ctl.c:2002 +#: pg_ctl.c:2014 #, c-format msgid " -o, --options=OPTIONS command line options to pass to postgres\n" " (PostgreSQL server executable) or initdb\n" msgstr " -o, --options=ПАРАМЕТРИ параметри командного рядку для PostgreSQL або initdb\n" -#: pg_ctl.c:2004 +#: pg_ctl.c:2016 #, c-format msgid " -p PATH-TO-POSTGRES normally not necessary\n" msgstr " -p ШЛЯХ-ДО-СЕРВЕРУ зазвичай зайвий\n" -#: pg_ctl.c:2005 +#: pg_ctl.c:2017 #, c-format msgid "\n" "Options for stop or restart:\n" msgstr "\n" "Параметри припинення або перезапуску:\n" -#: pg_ctl.c:2006 +#: pg_ctl.c:2018 #, c-format msgid " -m, --mode=MODE MODE can be \"smart\", \"fast\", or \"immediate\"\n" msgstr " -m, --mode=РЕЖИМ РЕЖИМ може бути \"smart\", \"fast\", або \"immediate\"\n" -#: pg_ctl.c:2008 +#: pg_ctl.c:2020 #, c-format msgid "\n" "Shutdown modes are:\n" msgstr "\n" "Режими зупинки:\n" -#: pg_ctl.c:2009 +#: pg_ctl.c:2021 #, c-format msgid " smart quit after all clients have disconnected\n" msgstr " smart вийти після від'єднання усіх клієнтів\n" -#: pg_ctl.c:2010 +#: pg_ctl.c:2022 #, c-format msgid " fast quit directly, with proper shutdown (default)\n" msgstr " fast вийти негайно з коректним вимкненням (за замовченням)\n" -#: pg_ctl.c:2011 +#: pg_ctl.c:2023 #, c-format msgid " immediate quit without complete shutdown; will lead to recovery on restart\n" msgstr " immediate вийти негайно без повної процедури. Приведе до відновлення під час перезапуску\n" -#: pg_ctl.c:2013 +#: pg_ctl.c:2025 #, c-format msgid "\n" "Allowed signal names for kill:\n" msgstr "\n" "Дозволенні сигнали для команди kill:\n" -#: pg_ctl.c:2017 +#: pg_ctl.c:2029 #, c-format msgid "\n" "Options for register and unregister:\n" msgstr "\n" "Параметри для реєстрації і видалення: \n" -#: pg_ctl.c:2018 +#: pg_ctl.c:2030 #, c-format msgid " -N SERVICENAME service name with which to register PostgreSQL server\n" msgstr " -N ІМ'Я-СЛУЖБИ ім'я служби під яким зареєструвати сервер PostgreSQL\n" -#: pg_ctl.c:2019 +#: pg_ctl.c:2031 #, c-format msgid " -P PASSWORD password of account to register PostgreSQL server\n" msgstr " -P ПАРОЛЬ пароль облікового запису для реєстрації серверу PostgreSQL\n" -#: pg_ctl.c:2020 +#: pg_ctl.c:2032 #, c-format msgid " -U USERNAME user name of account to register PostgreSQL server\n" msgstr " -U КОРИСТУВАЧ ім'я користувача під яким зареєструвати сервер PostgreSQL\n" -#: pg_ctl.c:2021 +#: pg_ctl.c:2033 #, c-format msgid " -S START-TYPE service start type to register PostgreSQL server\n" msgstr " -S ТИП-ЗАПУСКУ тип запуску служби для реєстрації серверу PostgreSQL\n" -#: pg_ctl.c:2023 +#: pg_ctl.c:2035 #, c-format msgid "\n" "Start types are:\n" msgstr "\n" "Типи запуску:\n" -#: pg_ctl.c:2024 +#: pg_ctl.c:2036 #, c-format msgid " auto start service automatically during system startup (default)\n" msgstr " auto запускати сервер автоматично під час запуску системи (за замовчуванням)\n" -#: pg_ctl.c:2025 +#: pg_ctl.c:2037 #, c-format msgid " demand start service on demand\n" msgstr " demand запускати сервер за потреби\n" -#: pg_ctl.c:2028 +#: pg_ctl.c:2040 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: pg_ctl.c:2029 +#: pg_ctl.c:2041 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: pg_ctl.c:2054 +#: pg_ctl.c:2066 #, c-format msgid "%s: unrecognized shutdown mode \"%s\"\n" msgstr "%s: невідомий режим завершення \"%s\"\n" -#: pg_ctl.c:2083 +#: pg_ctl.c:2095 #, c-format msgid "%s: unrecognized signal name \"%s\"\n" msgstr "%s: невідомий сигнал \"%s\"\n" -#: pg_ctl.c:2100 +#: pg_ctl.c:2112 #, c-format msgid "%s: unrecognized start type \"%s\"\n" msgstr "%s: невідомий тип запуску \"%s\"\n" -#: pg_ctl.c:2156 +#: pg_ctl.c:2168 #, c-format msgid "%s: could not determine the data directory using command \"%s\"\n" msgstr "%s: неможливо визначити каталог даних за допомогою команди \"%s\"\n" -#: pg_ctl.c:2179 +#: pg_ctl.c:2191 #, c-format msgid "%s: control file appears to be corrupt\n" msgstr "%s: контрольний файл видається пошкодженим\n" -#: pg_ctl.c:2247 +#: pg_ctl.c:2259 #, c-format msgid "%s: cannot be run as root\n" "Please log in (using, e.g., \"su\") as the (unprivileged) user that will\n" @@ -785,32 +789,32 @@ msgstr "%s: не може бути запущеним від ім'я супер- " Будь ласка увійдіть (використовуючи наприклад, \"su\") як (непривілейований) користувач який буде мати\n" "свій серверний процес. \n" -#: pg_ctl.c:2319 +#: pg_ctl.c:2331 #, c-format msgid "%s: -S option not supported on this platform\n" msgstr "%s: параметр -S не підтримується цією платформою\n" -#: pg_ctl.c:2375 +#: pg_ctl.c:2387 #, c-format msgid "%s: missing arguments for kill mode\n" msgstr "%s: відсутні аргументи для режиму kill\n" -#: pg_ctl.c:2393 +#: pg_ctl.c:2405 #, c-format msgid "%s: unrecognized operation mode \"%s\"\n" msgstr "%s: невідомий режим роботи \"%s\"\n" -#: pg_ctl.c:2402 +#: pg_ctl.c:2414 #, c-format msgid "%s: too many command-line arguments (first is \"%s\")\n" msgstr "%s: забагато аргументів у командному рядку (перший \"%s\")\n" -#: pg_ctl.c:2409 +#: pg_ctl.c:2421 #, c-format msgid "%s: no operation specified\n" msgstr "%s: команда не вказана\n" -#: pg_ctl.c:2430 +#: pg_ctl.c:2442 #, c-format msgid "%s: no database directory specified and environment variable PGDATA unset\n" msgstr "%s: не вказано каталог даних і змінна середовища PGDATA не встановлена\n" diff --git a/src/bin/pg_dump/dumputils.c b/src/bin/pg_dump/dumputils.c index 8945bdd42c5..dde165909ba 100644 --- a/src/bin/pg_dump/dumputils.c +++ b/src/bin/pg_dump/dumputils.c @@ -730,6 +730,7 @@ bool variable_is_guc_list_quote(const char *name) { if (pg_strcasecmp(name, "local_preload_libraries") == 0 || + pg_strcasecmp(name, "oauth_validator_libraries") == 0 || pg_strcasecmp(name, "search_path") == 0 || pg_strcasecmp(name, "session_preload_libraries") == 0 || pg_strcasecmp(name, "shared_preload_libraries") == 0 || diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 32708a26314..cacb72a2be0 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -135,6 +135,7 @@ typedef struct int64 cache; /* cache size */ int64 last_value; /* last value of sequence */ bool is_called; /* whether nextval advances before returning */ + bool null_seqtuple; /* did pg_get_sequence_data return nulls? */ } SequenceItem; typedef enum OidOptions @@ -824,23 +825,30 @@ main(int argc, char **argv) /* reject conflicting "-only" options */ if (data_only && schema_only) - pg_fatal("options -s/--schema-only and -a/--data-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-s/--schema-only", "-a/--data-only"); if (schema_only && statistics_only) - pg_fatal("options -s/--schema-only and --statistics-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-s/--schema-only", "--statistics-only"); if (data_only && statistics_only) - pg_fatal("options -a/--data-only and --statistics-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-a/--data-only", "--statistics-only"); /* reject conflicting "-only" and "no-" options */ if (data_only && no_data) - pg_fatal("options -a/--data-only and --no-data cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-a/--data-only", "--no-data"); if (schema_only && no_schema) - pg_fatal("options -s/--schema-only and --no-schema cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-s/--schema-only", "--no-schema"); if (statistics_only && no_statistics) - pg_fatal("options --statistics-only and --no-statistics cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "--statistics-only", "--no-statistics"); /* reject conflicting "no-" options */ if (with_statistics && no_statistics) - pg_fatal("options --statistics and --no-statistics cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "--statistics", "--no-statistics"); /* reject conflicting "-only" options */ if (data_only && with_statistics) @@ -851,16 +859,20 @@ main(int argc, char **argv) "-s/--schema-only", "--statistics"); if (schema_only && foreign_servers_include_patterns.head != NULL) - pg_fatal("options -s/--schema-only and --include-foreign-data cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-s/--schema-only", "--include-foreign-data"); if (numWorkers > 1 && foreign_servers_include_patterns.head != NULL) - pg_fatal("option --include-foreign-data is not supported with parallel backup"); + pg_fatal("option %s is not supported with parallel backup", + "--include-foreign-data"); if (data_only && dopt.outputClean) - pg_fatal("options -c/--clean and -a/--data-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-c/--clean", "-a/--data-only"); if (dopt.if_exists && !dopt.outputClean) - pg_fatal("option --if-exists requires option -c/--clean"); + pg_fatal("option %s requires option %s", + "--if-exists", "-c/--clean"); /* * Set derivative flags. Ambiguous or nonsensical combinations, e.g. @@ -880,7 +892,9 @@ main(int argc, char **argv) * --rows-per-insert were specified. */ if (dopt.do_nothing && dopt.dump_inserts == 0) - pg_fatal("option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts"); + pg_fatal("option %s requires option %s, %s, or %s", + "--on-conflict-do-nothing", + "--inserts", "--rows-per-insert", "--column-inserts"); /* Identify archive format to emit */ archiveFormat = parseArchiveFormat(format, &archiveMode); @@ -901,7 +915,8 @@ main(int argc, char **argv) pg_fatal("invalid restrict key"); } else if (dopt.restrict_key) - pg_fatal("option --restrict-key can only be used with --format=plain"); + pg_fatal("option %s can only be used with %s", + "--restrict-key", "--format=plain"); /* * Custom and directory formats are compressed by default with gzip when @@ -5221,7 +5236,9 @@ getSubscriptionTables(Archive *fout) subrinfo[i].dobj.catId.tableoid = relid; subrinfo[i].dobj.catId.oid = cur_srsubid; AssignDumpId(&subrinfo[i].dobj); - subrinfo[i].dobj.name = pg_strdup(subinfo->dobj.name); + subrinfo[i].dobj.namespace = tblinfo->dobj.namespace; + subrinfo[i].dobj.name = tblinfo->dobj.name; + subrinfo[i].subinfo = subinfo; subrinfo[i].tblinfo = tblinfo; subrinfo[i].srsubstate = PQgetvalue(res, i, i_srsubstate)[0]; if (PQgetisnull(res, i, i_srsublsn)) @@ -5229,8 +5246,6 @@ getSubscriptionTables(Archive *fout) else subrinfo[i].srsublsn = pg_strdup(PQgetvalue(res, i, i_srsublsn)); - subrinfo[i].subinfo = subinfo; - /* Decide whether we want to dump it */ selectDumpableObject(&(subrinfo[i].dobj), fout); } @@ -5258,7 +5273,7 @@ dumpSubscriptionTable(Archive *fout, const SubRelInfo *subrinfo) Assert(fout->dopt->binary_upgrade && fout->remoteVersion >= 170000); - tag = psprintf("%s %s", subinfo->dobj.name, subrinfo->dobj.name); + tag = psprintf("%s %s", subinfo->dobj.name, subrinfo->tblinfo->dobj.name); query = createPQExpBuffer(); @@ -5273,7 +5288,7 @@ dumpSubscriptionTable(Archive *fout, const SubRelInfo *subrinfo) "\n-- For binary upgrade, must preserve the subscriber table.\n"); appendPQExpBufferStr(query, "SELECT pg_catalog.binary_upgrade_add_sub_rel_state("); - appendStringLiteralAH(query, subrinfo->dobj.name, fout); + appendStringLiteralAH(query, subinfo->dobj.name, fout); appendPQExpBuffer(query, ", %u, '%c'", subrinfo->tblinfo->dobj.catId.oid, @@ -18793,6 +18808,7 @@ collectSequences(Archive *fout) sequences[i].cycled = (strcmp(PQgetvalue(res, i, 7), "t") == 0); sequences[i].last_value = strtoi64(PQgetvalue(res, i, 8), NULL, 10); sequences[i].is_called = (strcmp(PQgetvalue(res, i, 9), "t") == 0); + sequences[i].null_seqtuple = (PQgetisnull(res, i, 8) || PQgetisnull(res, i, 9)); } PQclear(res); @@ -19062,7 +19078,13 @@ dumpSequenceData(Archive *fout, const TableDataInfo *tdinfo) TableInfo *tbinfo = tdinfo->tdtable; int64 last; bool called; - PQExpBuffer query = createPQExpBuffer(); + PQExpBuffer query; + + /* needn't bother if not dumping sequence data */ + if (!fout->dopt->dumpData && !fout->dopt->sequence_data) + return; + + query = createPQExpBuffer(); /* * For versions >= 18, the sequence information is gathered in the sorted @@ -19105,6 +19127,12 @@ dumpSequenceData(Archive *fout, const TableDataInfo *tdinfo) entry = bsearch(&key, sequences, nsequences, sizeof(SequenceItem), SequenceItemCmp); + if (entry->null_seqtuple) + pg_fatal("failed to get data for sequence \"%s\"; user may lack " + "SELECT privilege on the sequence or the sequence may " + "have been concurrently dropped", + tbinfo->dobj.name); + last = entry->last_value; called = entry->is_called; } diff --git a/src/bin/pg_dump/pg_dump_sort.c b/src/bin/pg_dump/pg_dump_sort.c index edd7139ebfe..297b4dfa500 100644 --- a/src/bin/pg_dump/pg_dump_sort.c +++ b/src/bin/pg_dump/pg_dump_sort.c @@ -454,6 +454,17 @@ DOTypeNameCompare(const void *p1, const void *p2) if (cmpval != 0) return cmpval; } + else if (obj1->objType == DO_SUBSCRIPTION_REL) + { + SubRelInfo *srobj1 = *(SubRelInfo *const *) p1; + SubRelInfo *srobj2 = *(SubRelInfo *const *) p2; + + /* Sort by subscription name, since (namespace, name) match the rel */ + cmpval = strcmp(srobj1->subinfo->dobj.name, + srobj2->subinfo->dobj.name); + if (cmpval != 0) + return cmpval; + } /* * Shouldn't get here except after catalog corruption, but if we do, sort diff --git a/src/bin/pg_dump/pg_dumpall.c b/src/bin/pg_dump/pg_dumpall.c index fb4272cd0a4..68b4661d303 100644 --- a/src/bin/pg_dump/pg_dumpall.c +++ b/src/bin/pg_dump/pg_dumpall.c @@ -401,7 +401,9 @@ main(int argc, char *argv[]) if (database_exclude_patterns.head != NULL && (globals_only || roles_only || tablespaces_only)) { - pg_log_error("option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only"); + pg_log_error("option %s cannot be used together with %s, %s, or %s", + "--exclude-database", + "-g/--globals-only", "-r/--roles-only", "-t/--tablespaces-only"); pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit_nicely(1); } @@ -409,24 +411,28 @@ main(int argc, char *argv[]) /* Make sure the user hasn't specified a mix of globals-only options */ if (globals_only && roles_only) { - pg_log_error("options -g/--globals-only and -r/--roles-only cannot be used together"); + pg_log_error("options %s and %s cannot be used together", + "-g/--globals-only", "-r/--roles-only"); pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit_nicely(1); } if (globals_only && tablespaces_only) { - pg_log_error("options -g/--globals-only and -t/--tablespaces-only cannot be used together"); + pg_log_error("options %s and %s cannot be used together", + "-g/--globals-only", "-t/--tablespaces-only"); pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit_nicely(1); } if (if_exists && !output_clean) - pg_fatal("option --if-exists requires option -c/--clean"); + pg_fatal("option %s requires option %s", + "--if-exists", "-c/--clean"); if (roles_only && tablespaces_only) { - pg_log_error("options -r/--roles-only and -t/--tablespaces-only cannot be used together"); + pg_log_error("options %s and %s cannot be used together", + "-r/--roles-only", "-t/--tablespaces-only"); pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit_nicely(1); } diff --git a/src/bin/pg_dump/pg_restore.c b/src/bin/pg_dump/pg_restore.c index 4eff3195d47..99dd87b0b41 100644 --- a/src/bin/pg_dump/pg_restore.c +++ b/src/bin/pg_dump/pg_restore.c @@ -354,13 +354,15 @@ main(int argc, char **argv) { if (opts->filename) { - pg_log_error("options -d/--dbname and -f/--file cannot be used together"); + pg_log_error("options %s and %s cannot be used together", + "-d/--dbname", "-f/--file"); pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit_nicely(1); } if (opts->restrict_key) - pg_fatal("options -d/--dbname and --restrict-key cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-d/--dbname", "--restrict-key"); opts->useDB = 1; } @@ -379,23 +381,30 @@ main(int argc, char **argv) /* reject conflicting "-only" options */ if (data_only && schema_only) - pg_fatal("options -s/--schema-only and -a/--data-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-s/--schema-only", "-a/--data-only"); if (schema_only && statistics_only) - pg_fatal("options -s/--schema-only and --statistics-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-s/--schema-only", "--statistics-only"); if (data_only && statistics_only) - pg_fatal("options -a/--data-only and --statistics-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-a/--data-only", "--statistics-only"); /* reject conflicting "-only" and "no-" options */ if (data_only && no_data) - pg_fatal("options -a/--data-only and --no-data cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-a/--data-only", "--no-data"); if (schema_only && no_schema) - pg_fatal("options -s/--schema-only and --no-schema cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-s/--schema-only", "--no-schema"); if (statistics_only && no_statistics) - pg_fatal("options --statistics-only and --no-statistics cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "--statistics-only", "--no-statistics"); /* reject conflicting "no-" options */ if (with_statistics && no_statistics) - pg_fatal("options --statistics and --no-statistics cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "--statistics", "--no-statistics"); /* reject conflicting "only-" options */ if (data_only && with_statistics) @@ -406,17 +415,20 @@ main(int argc, char **argv) "-s/--schema-only", "--statistics"); if (data_only && opts->dropSchema) - pg_fatal("options -c/--clean and -a/--data-only cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-c/--clean", "-a/--data-only"); if (opts->single_txn && opts->txn_size > 0) - pg_fatal("options -1/--single-transaction and --transaction-size cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-1/--single-transaction", "--transaction-size"); /* * -C is not compatible with -1, because we can't create a database inside * a transaction block. */ if (opts->createDB && opts->single_txn) - pg_fatal("options -C/--create and -1/--single-transaction cannot be used together"); + pg_fatal("options %s and %s cannot be used together", + "-C/--create", "-1/--single-transaction"); /* Can't do single-txn mode with multiple connections */ if (opts->single_txn && numWorkers > 1) @@ -448,7 +460,8 @@ main(int argc, char **argv) opts->no_event_triggers = no_event_triggers; if (if_exists && !opts->dropSchema) - pg_fatal("option --if-exists requires option -c/--clean"); + pg_fatal("option %s requires option %s", + "--if-exists", "-c/--clean"); opts->if_exists = if_exists; opts->strict_names = strict_names; diff --git a/src/bin/pg_dump/po/de.po b/src/bin/pg_dump/po/de.po index fafc54fefba..8fc1b46ebfd 100644 --- a/src/bin/pg_dump/po/de.po +++ b/src/bin/pg_dump/po/de.po @@ -1,5 +1,5 @@ # German message translation file for pg_dump and friends -# Peter Eisentraut , 2001 - 2025. +# Peter Eisentraut , 2001 - 2026. # # Use these quotes: »%s« # @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-05 07:52+0000\n" -"PO-Revision-Date: 2025-09-05 14:09+0200\n" +"POT-Creation-Date: 2026-02-04 18:52+0000\n" +"PO-Revision-Date: 2026-02-05 14:55+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -38,7 +38,7 @@ msgid "hint: " msgstr "Tipp: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: ../../common/compression.c:150 compress_gzip.c:441 compress_gzip.c:448 #: compress_io.c:108 compress_lz4.c:800 compress_lz4.c:807 compress_zstd.c:26 #: compress_zstd.c:32 #, c-format @@ -166,7 +166,7 @@ msgstr "konnte »stat« für Datei »%s« nicht ausführen: %m" msgid "this build does not support sync method \"%s\"" msgstr "diese Installation unterstützt Sync-Methode »%s« nicht" -#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:944 #, c-format msgid "could not open directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht öffnen: %m" @@ -471,48 +471,48 @@ msgstr "konnte numerisches Array »%s« nicht parsen: zu viele Zahlen" msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "konnte numerisches Array »%s« nicht parsen: ungültiges Zeichen in Zahl" -#: compress_gzip.c:69 compress_gzip.c:183 +#: compress_gzip.c:78 compress_gzip.c:192 #, c-format msgid "could not initialize compression library: %s" msgstr "konnte Komprimierungsbibliothek nicht initialisieren: %s" -#: compress_gzip.c:93 +#: compress_gzip.c:102 #, c-format msgid "could not close compression stream: %s" msgstr "konnte Komprimierungsstrom nicht schließen: %s" -#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 +#: compress_gzip.c:122 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "konnte Daten nicht komprimieren: %s" -#: compress_gzip.c:199 compress_gzip.c:214 +#: compress_gzip.c:208 compress_gzip.c:223 #, c-format msgid "could not uncompress data: %s" msgstr "konnte Daten nicht dekomprimieren: %s" -#: compress_gzip.c:221 +#: compress_gzip.c:230 #, c-format msgid "could not close compression library: %s" msgstr "konnte Komprimierungsbibliothek nicht schließen: %s" -#: compress_gzip.c:277 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 +#: compress_gzip.c:290 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 #, c-format msgid "could not read from input file: %s" msgstr "konnte nicht aus Eingabedatei lesen: %s" -#: compress_gzip.c:294 compress_zstd.c:382 +#: compress_gzip.c:307 compress_zstd.c:382 #, c-format msgid "could not write to file: %s" msgstr "konnte nicht in Datei schreiben: %s" -#: compress_gzip.c:310 compress_lz4.c:494 compress_none.c:94 +#: compress_gzip.c:323 compress_lz4.c:494 compress_none.c:94 #: compress_none.c:135 compress_zstd.c:315 pg_backup_custom.c:650 #, c-format msgid "could not read from input file: %m" msgstr "konnte nicht aus Eingabedatei lesen: %m" -#: compress_gzip.c:312 compress_lz4.c:635 compress_none.c:137 +#: compress_gzip.c:325 compress_lz4.c:635 compress_none.c:137 #: compress_zstd.c:400 pg_backup_custom.c:648 pg_backup_directory.c:515 #: pg_backup_tar.c:740 pg_backup_tar.c:763 #, c-format @@ -599,13 +599,13 @@ msgstr "konnte Daten nicht dekomprimieren: %s" msgid "Password: " msgstr "Passwort: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 -#: pg_dump_sort.c:1466 pg_dump_sort.c:1486 +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:952 +#: pg_dump_sort.c:1478 pg_dump_sort.c:1498 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:514 +#: connectdb.c:157 pg_dumpall.c:520 #, c-format msgid "could not connect to database \"%s\"" msgstr "konnte nicht mit der Datenbank »%s« verbinden" @@ -630,32 +630,32 @@ msgstr "Abbruch wegen unpassender Serverversion" msgid "server version: %s; %s version: %s" msgstr "Version des Servers: %s; Version von %s: %s" -#: connectdb.c:282 pg_dumpall.c:1784 +#: connectdb.c:282 pg_dumpall.c:1790 #, c-format msgid "executing %s" msgstr "führe %s aus" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1796 #, c-format msgid "query failed: %s" msgstr "Anfrage fehlgeschlagen: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1797 #, c-format msgid "Query was: %s" msgstr "Anfrage war: %s" -#: dumputils.c:948 +#: dumputils.c:949 #, c-format msgid "could not create directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht erzeugen: %m" -#: dumputils.c:953 +#: dumputils.c:954 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "konnte Rechte des Verzeichnisses »%s« nicht ändern: %m" -#: dumputils.c:958 +#: dumputils.c:959 #, c-format msgid "directory \"%s\" is not empty" msgstr "Verzeichnis »%s« ist nicht leer" @@ -916,7 +916,7 @@ msgstr "Wiederherstellung von Large Object mit OID %u" msgid "could not create large object %u: %s" msgstr "konnte Large Object %u nicht erstellen: %s" -#: pg_backup_archiver.c:1525 pg_dump.c:4085 +#: pg_backup_archiver.c:1525 pg_dump.c:4100 #, c-format msgid "could not open large object %u: %s" msgstr "konnte Large Object %u nicht öffnen: %s" @@ -944,7 +944,7 @@ msgstr "konnte Inhaltsverzeichnisdatei nicht schließen: %m" #: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 #: pg_backup_directory.c:550 pg_backup_directory.c:616 -#: pg_backup_directory.c:634 pg_dumpall.c:548 +#: pg_backup_directory.c:634 pg_dumpall.c:554 #, c-format msgid "could not open output file \"%s\": %m" msgstr "konnte Ausgabedatei »%s« nicht öffnen: %m" @@ -1067,12 +1067,12 @@ msgstr "konnte Standardausgabe nicht zum Anhängen öffnen: %m" msgid "unrecognized file format \"%d\"" msgstr "nicht erkanntes Dateiformat »%d«" -#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4761 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4797 #, c-format msgid "finished item %d %s %s" msgstr "Element %d %s %s abgeschlossen" -#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4774 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4810 #, c-format msgid "worker process failed: exit code %d" msgstr "Arbeitsprozess fehlgeschlagen: Code %d" @@ -1139,107 +1139,107 @@ msgstr "Funktion »%s« nicht gefunden" msgid "trigger \"%s\" not found" msgstr "Trigger »%s« nicht gefunden" -#: pg_backup_archiver.c:3433 +#: pg_backup_archiver.c:3469 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "konnte Sitzungsbenutzer nicht auf »%s« setzen: %s" -#: pg_backup_archiver.c:3575 +#: pg_backup_archiver.c:3611 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "konnte »search_path« nicht auf »%s« setzen: %s" -#: pg_backup_archiver.c:3636 +#: pg_backup_archiver.c:3672 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" msgstr "konnte »default_tablespace« nicht auf »%s« setzen: %s" -#: pg_backup_archiver.c:3685 +#: pg_backup_archiver.c:3721 #, c-format msgid "could not set \"default_table_access_method\": %s" msgstr "konnte »default_table_access_method« nicht setzen: %s" -#: pg_backup_archiver.c:3734 +#: pg_backup_archiver.c:3770 #, c-format msgid "could not alter table access method: %s" msgstr "konnte Tabellenzugriffsmethode nicht ändern: %s" -#: pg_backup_archiver.c:3835 +#: pg_backup_archiver.c:3871 #, c-format msgid "don't know how to set owner for object type \"%s\"" msgstr "kann Eigentümer für Objekttyp »%s« nicht setzen" -#: pg_backup_archiver.c:3970 +#: pg_backup_archiver.c:4006 #, c-format msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" msgstr "unerwarteter TOC-Eintrag in _printTocEntry(): %d %s %s" -#: pg_backup_archiver.c:4118 +#: pg_backup_archiver.c:4154 #, c-format msgid "did not find magic string in file header" msgstr "magische Zeichenkette im Dateikopf nicht gefunden" -#: pg_backup_archiver.c:4132 +#: pg_backup_archiver.c:4168 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "nicht unterstützte Version (%d.%d) im Dateikopf" -#: pg_backup_archiver.c:4137 +#: pg_backup_archiver.c:4173 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "Prüfung der Integer-Größe (%lu) fehlgeschlagen" -#: pg_backup_archiver.c:4141 +#: pg_backup_archiver.c:4177 #, c-format msgid "archive was made on a machine with larger integers, some operations might fail" msgstr "Archiv wurde auf einer Maschine mit größeren Integers erstellt; einige Operationen könnten fehlschlagen" -#: pg_backup_archiver.c:4151 +#: pg_backup_archiver.c:4187 #, c-format msgid "expected format (%d) differs from format found in file (%d)" msgstr "erwartetes Format (%d) ist nicht das gleiche wie das in der Datei gefundene (%d)" -#: pg_backup_archiver.c:4173 +#: pg_backup_archiver.c:4209 #, c-format msgid "archive is compressed, but this installation does not support compression (%s) -- no data will be available" msgstr "Archiv ist komprimiert, aber diese Installation unterstützt keine Komprimierung (%s) -- keine Daten verfügbar" -#: pg_backup_archiver.c:4209 +#: pg_backup_archiver.c:4245 #, c-format msgid "invalid creation date in header" msgstr "ungültiges Erstellungsdatum im Kopf" -#: pg_backup_archiver.c:4343 +#: pg_backup_archiver.c:4379 #, c-format msgid "processing item %d %s %s" msgstr "verarbeite Element %d %s %s" -#: pg_backup_archiver.c:4428 +#: pg_backup_archiver.c:4464 #, c-format msgid "entering main parallel loop" msgstr "Eintritt in Hauptparallelschleife" -#: pg_backup_archiver.c:4439 +#: pg_backup_archiver.c:4475 #, c-format msgid "skipping item %d %s %s" msgstr "Element %d %s %s wird übersprungen" -#: pg_backup_archiver.c:4448 +#: pg_backup_archiver.c:4484 #, c-format msgid "launching item %d %s %s" msgstr "starte Element %d %s %s" -#: pg_backup_archiver.c:4502 +#: pg_backup_archiver.c:4538 #, c-format msgid "finished main parallel loop" msgstr "Hauptparallelschleife beendet" -#: pg_backup_archiver.c:4538 +#: pg_backup_archiver.c:4574 #, c-format msgid "processing missed item %d %s %s" msgstr "verarbeite verpasstes Element %d %s %s" -#: pg_backup_archiver.c:5080 +#: pg_backup_archiver.c:5116 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "Tabelle »%s« konnte nicht erzeugt werden, ihre Daten werden nicht wiederhergestellt werden" @@ -1356,7 +1356,7 @@ msgstr "Fehler in PQputCopyEnd: %s" msgid "COPY failed for table \"%s\": %s" msgstr "COPY fehlgeschlagen für Tabelle »%s«: %s" -#: pg_backup_db.c:460 pg_dump.c:2458 +#: pg_backup_db.c:460 pg_dump.c:2473 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "unerwartete zusätzliche Ergebnisse während COPY von Tabelle »%s«" @@ -1507,10 +1507,10 @@ msgstr "beschädigter Tar-Kopf in %s gefunden (%d erwartet, %d berechnet), Datei msgid "unrecognized section name: \"%s\"" msgstr "unbekannter Abschnittsname: »%s«" -#: pg_backup_utils.c:57 pg_dump.c:799 pg_dump.c:816 pg_dumpall.c:385 -#: pg_dumpall.c:395 pg_dumpall.c:403 pg_dumpall.c:411 pg_dumpall.c:418 -#: pg_dumpall.c:428 pg_dumpall.c:530 pg_restore.c:326 pg_restore.c:342 -#: pg_restore.c:356 +#: pg_backup_utils.c:57 pg_dump.c:800 pg_dump.c:817 pg_dumpall.c:385 +#: pg_dumpall.c:395 pg_dumpall.c:405 pg_dumpall.c:414 pg_dumpall.c:422 +#: pg_dumpall.c:434 pg_dumpall.c:536 pg_restore.c:326 pg_restore.c:342 +#: pg_restore.c:357 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Versuchen Sie »%s --help« für weitere Informationen." @@ -1520,132 +1520,93 @@ msgstr "Versuchen Sie »%s --help« für weitere Informationen." msgid "out of on_exit_nicely slots" msgstr "on_exit_nicely-Slots aufgebraucht" -#: pg_dump.c:814 pg_dumpall.c:393 pg_restore.c:340 +#: pg_dump.c:815 pg_dumpall.c:393 pg_restore.c:340 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "zu viele Kommandozeilenargumente (das erste ist »%s«)" -#: pg_dump.c:826 pg_restore.c:380 -#, c-format -msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgstr "Optionen -s/--schema-only und -a/--data-only können nicht zusammen verwendet werden" - -#: pg_dump.c:828 pg_restore.c:382 -#, c-format -msgid "options -s/--schema-only and --statistics-only cannot be used together" -msgstr "Optionen -s/--schema-only und --statistics-only können nicht zusammen verwendet werden" - -#: pg_dump.c:830 pg_restore.c:384 -#, c-format -msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "Optionen -a/--data-only und --statistic-only können nicht zusammen verwendet werden" - -#: pg_dump.c:834 pg_restore.c:388 -#, c-format -msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "Optionen -a/--data-only und --no-data können nicht zusammen verwendet werden" - -#: pg_dump.c:836 pg_restore.c:390 -#, c-format -msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "Optionen -s/--schema-only und --no-schema können nicht zusammen verwendet werden" - -#: pg_dump.c:838 pg_restore.c:392 -#, c-format -msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "Optionen --statistics-only und --no-statistics können nicht zusammen verwendet werden" - -#: pg_dump.c:842 pg_restore.c:396 -#, c-format -msgid "options --statistics and --no-statistics cannot be used together" -msgstr "Optionen --statistics und --no-statistics können nicht zusammen verwendet werden" - -#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#: pg_dump.c:827 pg_dump.c:830 pg_dump.c:833 pg_dump.c:838 pg_dump.c:841 +#: pg_dump.c:844 pg_dump.c:849 pg_dump.c:854 pg_dump.c:857 pg_dump.c:861 +#: pg_dump.c:869 pg_dumpall.c:412 pg_dumpall.c:420 pg_dumpall.c:432 +#: pg_restore.c:355 pg_restore.c:362 pg_restore.c:382 pg_restore.c:385 +#: pg_restore.c:388 pg_restore.c:393 pg_restore.c:396 pg_restore.c:399 +#: pg_restore.c:404 pg_restore.c:409 pg_restore.c:412 pg_restore.c:416 +#: pg_restore.c:420 pg_restore.c:428 #, c-format msgid "options %s and %s cannot be used together" msgstr "Optionen %s und %s können nicht zusammen verwendet werden" -#: pg_dump.c:853 -#, c-format -msgid "options -s/--schema-only and --include-foreign-data cannot be used together" -msgstr "Optionen -s/--schema-only und --include-foreign-data können nicht zusammen verwendet werden" - -#: pg_dump.c:856 +#: pg_dump.c:865 #, c-format -msgid "option --include-foreign-data is not supported with parallel backup" -msgstr "Option --include-foreign-data wird nicht mit paralleler Sicherung unterstützt" +msgid "option %s is not supported with parallel backup" +msgstr "Option %s wird nicht mit paralleler Sicherung unterstützt" -#: pg_dump.c:859 pg_restore.c:407 +#: pg_dump.c:873 pg_dumpall.c:427 pg_restore.c:460 #, c-format -msgid "options -c/--clean and -a/--data-only cannot be used together" -msgstr "Optionen -c/--clean und -a/--data-only können nicht zusammen verwendet werden" +msgid "option %s requires option %s" +msgstr "Option %s erfordert Option %s" -#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 +#: pg_dump.c:894 #, c-format -msgid "option --if-exists requires option -c/--clean" -msgstr "Option --if-exists benötigt Option -c/--clean" +msgid "option %s requires option %s, %s, or %s" +msgstr "Option %s erfordert Option %s, %s oder %s" -#: pg_dump.c:882 -#, c-format -msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" -msgstr "Option --on-conflict-do-nothing benötigt Option --inserts, --rows-per-insert oder --column-inserts" - -#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#: pg_dump.c:912 pg_dumpall.c:504 pg_restore.c:375 #, c-format msgid "could not generate restrict key" msgstr "konnte Restrict-Schlüssel nicht erzeugen" -#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#: pg_dump.c:914 pg_dumpall.c:506 pg_restore.c:377 #, c-format msgid "invalid restrict key" msgstr "ungültiger Restrict-Schlüssel" -#: pg_dump.c:903 +#: pg_dump.c:917 #, c-format -msgid "option --restrict-key can only be used with --format=plain" -msgstr "Option --restrict-key kann nur mit --format=plain verwendet werden" +msgid "option %s can only be used with %s" +msgstr "Option %s kann nur mit %s verwendet werden" -#: pg_dump.c:925 +#: pg_dump.c:940 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "unbekannter Komprimierungsalgorithmus: »%s«" -#: pg_dump.c:932 +#: pg_dump.c:947 #, c-format msgid "invalid compression specification: %s" msgstr "ungültige Komprimierungsangabe: %s" -#: pg_dump.c:945 +#: pg_dump.c:960 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "Komprimierungsoption »%s« wird aktuell von pg_dump nicht unterstützt" -#: pg_dump.c:957 +#: pg_dump.c:972 #, c-format msgid "parallel backup only supported by the directory format" msgstr "parallele Sicherung wird nur vom Ausgabeformat »Verzeichnis« unterstützt" -#: pg_dump.c:1003 +#: pg_dump.c:1018 #, c-format msgid "last built-in OID is %u" msgstr "letzte eingebaute OID ist %u" -#: pg_dump.c:1012 +#: pg_dump.c:1027 #, c-format msgid "no matching schemas were found" msgstr "keine passenden Schemas gefunden" -#: pg_dump.c:1029 +#: pg_dump.c:1044 #, c-format msgid "no matching tables were found" msgstr "keine passenden Tabellen gefunden" -#: pg_dump.c:1057 +#: pg_dump.c:1072 #, c-format msgid "no matching extensions were found" msgstr "keine passenden Erweiterungen gefunden" -#: pg_dump.c:1251 +#: pg_dump.c:1266 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1654,17 +1615,17 @@ msgstr "" "%s exportiert eine PostgreSQL-Datenbank als SQL-Skript oder in anderen Formaten.\n" "\n" -#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 +#: pg_dump.c:1267 pg_dumpall.c:700 pg_restore.c:536 #, c-format msgid "Usage:\n" msgstr "Aufruf:\n" -#: pg_dump.c:1253 +#: pg_dump.c:1268 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPTION]... [DBNAME]\n" -#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 +#: pg_dump.c:1270 pg_dumpall.c:703 pg_restore.c:539 #, c-format msgid "" "\n" @@ -1673,12 +1634,12 @@ msgstr "" "\n" "Allgemeine Optionen:\n" -#: pg_dump.c:1256 +#: pg_dump.c:1271 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=DATEINAME Name der Ausgabedatei oder des -verzeichnisses\n" -#: pg_dump.c:1257 +#: pg_dump.c:1272 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1687,22 +1648,22 @@ msgstr "" " -F, --format=c|d|t|p Ausgabeformat (custom, d=Verzeichnis, tar,\n" " plain text)\n" -#: pg_dump.c:1259 +#: pg_dump.c:1274 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM so viele parallele Jobs zur Sicherung verwenden\n" -#: pg_dump.c:1260 pg_dumpall.c:699 +#: pg_dump.c:1275 pg_dumpall.c:705 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose »Verbose«-Modus\n" -#: pg_dump.c:1261 pg_dumpall.c:700 +#: pg_dump.c:1276 pg_dumpall.c:706 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version Versionsinformationen anzeigen, dann beenden\n" -#: pg_dump.c:1262 +#: pg_dump.c:1277 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1711,31 +1672,31 @@ msgstr "" " -Z, --compress=METHODE[:DETAIL]\n" " wie angegeben komprimieren\n" -#: pg_dump.c:1264 pg_dumpall.c:701 +#: pg_dump.c:1279 pg_dumpall.c:707 #, c-format msgid " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr " --lock-wait-timeout=ZEIT Abbruch nach ZEIT Warten auf Tabellensperre\n" -#: pg_dump.c:1265 pg_dumpall.c:733 +#: pg_dump.c:1280 pg_dumpall.c:739 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr "" " --no-sync nicht warten, bis Änderungen sicher auf\n" " Festplatte geschrieben sind\n" -#: pg_dump.c:1266 +#: pg_dump.c:1281 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr "" " --sync-method=METHODE Methode zum Synchronisieren von Dateien auf\n" " Festplatte setzen\n" -#: pg_dump.c:1267 pg_dumpall.c:702 +#: pg_dump.c:1282 pg_dumpall.c:708 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help diese Hilfe anzeigen, dann beenden\n" -#: pg_dump.c:1269 pg_dumpall.c:703 +#: pg_dump.c:1284 pg_dumpall.c:709 #, c-format msgid "" "\n" @@ -1744,64 +1705,64 @@ msgstr "" "\n" "Optionen die den Inhalt der Ausgabe kontrollieren:\n" -#: pg_dump.c:1270 pg_dumpall.c:704 +#: pg_dump.c:1285 pg_dumpall.c:710 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only nur die Daten ausgeben, nicht das Schema oder Statistiken\n" -#: pg_dump.c:1271 +#: pg_dump.c:1286 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects Large Objects mit ausgeben\n" -#: pg_dump.c:1272 +#: pg_dump.c:1287 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (gleich --large-objects, veraltet)\n" -#: pg_dump.c:1273 +#: pg_dump.c:1288 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects Large Objects nicht mit ausgeben\n" -#: pg_dump.c:1274 +#: pg_dump.c:1289 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (gleich --no-large-objects, veraltet)\n" -#: pg_dump.c:1275 pg_restore.c:537 +#: pg_dump.c:1290 pg_restore.c:550 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean Datenbankobjekte vor der Wiedererstellung löschen\n" -#: pg_dump.c:1276 +#: pg_dump.c:1291 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr "" " -C, --create Anweisungen zum Erstellen der Datenbank in\n" " Ausgabe einfügen\n" -#: pg_dump.c:1277 +#: pg_dump.c:1292 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=MUSTER nur die angegebene(n) Erweiterung(en) ausgeben\n" -#: pg_dump.c:1278 pg_dumpall.c:706 +#: pg_dump.c:1293 pg_dumpall.c:712 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=KODIERUNG Daten in Kodierung KODIERUNG ausgeben\n" -#: pg_dump.c:1279 +#: pg_dump.c:1294 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=MUSTER nur das/die angegebene(n) Schema(s) ausgeben\n" -#: pg_dump.c:1280 +#: pg_dump.c:1295 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=MUSTER das/die angegebene(n) Schema(s) NICHT ausgeben\n" -#: pg_dump.c:1281 +#: pg_dump.c:1296 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1810,58 +1771,58 @@ msgstr "" " -O, --no-owner Wiederherstellung der Objekteigentümerschaft im\n" " »plain text«-Format auslassen\n" -#: pg_dump.c:1283 pg_dumpall.c:710 +#: pg_dump.c:1298 pg_dumpall.c:716 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr " -s, --schema-only nur das Schema ausgeben, nicht Daten oder Statistiken\n" -#: pg_dump.c:1284 +#: pg_dump.c:1299 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr " -S, --superuser=NAME Superusername für »plain text«-Format\n" -#: pg_dump.c:1285 +#: pg_dump.c:1300 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=MUSTER nur die angegebene(n) Tabelle(n) ausgeben\n" -#: pg_dump.c:1286 +#: pg_dump.c:1301 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=MUSTER die angegebene(n) Tabelle(n) NICHT ausgeben\n" -#: pg_dump.c:1287 pg_dumpall.c:713 +#: pg_dump.c:1302 pg_dumpall.c:719 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges Zugriffsprivilegien (grant/revoke) nicht ausgeben\n" -#: pg_dump.c:1288 pg_dumpall.c:714 +#: pg_dump.c:1303 pg_dumpall.c:720 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade wird nur von Upgrade-Programmen verwendet\n" -#: pg_dump.c:1289 pg_dumpall.c:715 +#: pg_dump.c:1304 pg_dumpall.c:721 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr "" " --column-inserts Daten als INSERT-Anweisungen mit Spaltennamen\n" " ausgeben\n" -#: pg_dump.c:1290 pg_dumpall.c:716 +#: pg_dump.c:1305 pg_dumpall.c:722 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr "" " --disable-dollar-quoting Dollar-Quoting abschalten, normales SQL-Quoting\n" " verwenden\n" -#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 +#: pg_dump.c:1306 pg_dumpall.c:723 pg_restore.c:567 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr "" " --disable-triggers Trigger während der Datenwiederherstellung\n" " abschalten\n" -#: pg_dump.c:1292 +#: pg_dump.c:1307 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1870,12 +1831,12 @@ msgstr "" " --enable-row-security Sicherheit auf Zeilenebene einschalten (nur Daten\n" " ausgeben, auf die der Benutzer Zugriff hat)\n" -#: pg_dump.c:1294 +#: pg_dump.c:1309 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=MUSTER die angegebene(n) Erweiterung(en) NICHT ausgeben\n" -#: pg_dump.c:1295 +#: pg_dump.c:1310 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1886,12 +1847,12 @@ msgstr "" " die angegebene(n) Tabelle(n) NICHT ausgeben,\n" " einschließlich abgeleiteter und Partitionstabellen\n" -#: pg_dump.c:1298 +#: pg_dump.c:1313 #, c-format msgid " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" msgstr " --exclude-table-data=MUSTER Daten der angegebenen Tabelle(n) NICHT ausgeben\n" -#: pg_dump.c:1299 +#: pg_dump.c:1314 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1902,12 +1863,12 @@ msgstr "" " Daten der angegebenen Tabelle(n) NICHT ausgeben,\n" " einschließlich abgeleiteter und Partitionstabellen\n" -#: pg_dump.c:1302 pg_dumpall.c:719 +#: pg_dump.c:1317 pg_dumpall.c:725 #, c-format msgid " --extra-float-digits=NUM override default setting for extra_float_digits\n" msgstr " --extra-float-digits=ZAHL Einstellung für extra_float_digits\n" -#: pg_dump.c:1303 +#: pg_dump.c:1318 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1916,12 +1877,12 @@ msgstr "" " --filter=DATEINAME Objekte und Daten basierend auf Ausdrücken in DATEINAME\n" " mit sichern oder überspringen\n" -#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 +#: pg_dump.c:1320 pg_dumpall.c:727 pg_restore.c:571 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists IF EXISTS verwenden, wenn Objekte gelöscht werden\n" -#: pg_dump.c:1306 +#: pg_dump.c:1321 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1932,133 +1893,133 @@ msgstr "" " Daten von Fremdtabellen auf Fremdservern, die\n" " mit MUSTER übereinstimmen, mit sichern\n" -#: pg_dump.c:1309 pg_dumpall.c:722 +#: pg_dump.c:1324 pg_dumpall.c:728 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts Daten als INSERT-Anweisungen statt COPY ausgeben\n" -#: pg_dump.c:1310 pg_dumpall.c:723 +#: pg_dump.c:1325 pg_dumpall.c:729 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root Partitionen über die Wurzeltabelle laden\n" -#: pg_dump.c:1311 pg_dumpall.c:724 +#: pg_dump.c:1326 pg_dumpall.c:730 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments Kommentar-Befehle nicht ausgeben\n" -#: pg_dump.c:1312 pg_dumpall.c:725 +#: pg_dump.c:1327 pg_dumpall.c:731 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data Daten nicht ausgeben\n" -#: pg_dump.c:1313 pg_dumpall.c:726 +#: pg_dump.c:1328 pg_dumpall.c:732 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies Policys für Sicherheit auf Zeilenebene nicht ausgeben\n" -#: pg_dump.c:1314 pg_dumpall.c:727 +#: pg_dump.c:1329 pg_dumpall.c:733 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications Publikationen nicht ausgeben\n" -#: pg_dump.c:1315 pg_dumpall.c:729 +#: pg_dump.c:1330 pg_dumpall.c:735 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema Schema nicht ausgeben\n" -#: pg_dump.c:1316 pg_dumpall.c:730 +#: pg_dump.c:1331 pg_dumpall.c:736 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels Security-Label-Zuweisungen nicht ausgeben\n" -#: pg_dump.c:1317 pg_dumpall.c:731 +#: pg_dump.c:1332 pg_dumpall.c:737 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics Statistiken nicht ausgeben\n" -#: pg_dump.c:1318 pg_dumpall.c:732 +#: pg_dump.c:1333 pg_dumpall.c:738 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions Subskriptionen nicht ausgeben\n" -#: pg_dump.c:1319 pg_dumpall.c:734 +#: pg_dump.c:1334 pg_dumpall.c:740 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method Tabellenzugriffsmethoden nicht ausgeben\n" -#: pg_dump.c:1320 pg_dumpall.c:735 +#: pg_dump.c:1335 pg_dumpall.c:741 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces Tablespace-Zuordnungen nicht ausgeben\n" -#: pg_dump.c:1321 pg_dumpall.c:736 +#: pg_dump.c:1336 pg_dumpall.c:742 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression TOAST-Komprimierungsmethoden nicht ausgeben\n" -#: pg_dump.c:1322 pg_dumpall.c:737 +#: pg_dump.c:1337 pg_dumpall.c:743 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data Daten in ungeloggten Tabellen nicht ausgeben\n" -#: pg_dump.c:1323 pg_dumpall.c:738 +#: pg_dump.c:1338 pg_dumpall.c:744 #, c-format msgid " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n" msgstr " --on-conflict-do-nothing INSERT-Befehle mit ON CONFLICT DO NOTHING ausgeben\n" -#: pg_dump.c:1324 pg_dumpall.c:739 +#: pg_dump.c:1339 pg_dumpall.c:745 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr "" " --quote-all-identifiers alle Bezeichner in Anführungszeichen, selbst wenn\n" " kein Schlüsselwort\n" -#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#: pg_dump.c:1340 pg_dumpall.c:746 pg_restore.c:584 #, c-format msgid " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" msgstr "" " --restrict-key=RESTRICT_KEY angegebene Zeichenkette als Schlüssel für psql\n" " \\restrict verwenden\n" -#: pg_dump.c:1326 pg_dumpall.c:741 +#: pg_dump.c:1341 pg_dumpall.c:747 #, c-format msgid " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" msgstr " --rows-per-insert=ANZAHL Anzahl Zeilen pro INSERT; impliziert --inserts\n" -#: pg_dump.c:1327 +#: pg_dump.c:1342 #, c-format msgid " --section=SECTION dump named section (pre-data, data, or post-data)\n" msgstr "" " --section=ABSCHNITT angegebenen Abschnitt ausgeben (pre-data, data\n" " oder post-data)\n" -#: pg_dump.c:1328 pg_dumpall.c:742 +#: pg_dump.c:1343 pg_dumpall.c:748 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data Sequenzdaten in Ausgabe einfügen\n" -#: pg_dump.c:1329 +#: pg_dump.c:1344 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr " --serializable-deferrable warten bis der Dump ohne Anomalien laufen kann\n" -#: pg_dump.c:1330 +#: pg_dump.c:1345 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT angegebenen Snapshot für den Dump verwenden\n" -#: pg_dump.c:1331 pg_dumpall.c:743 +#: pg_dump.c:1346 pg_dumpall.c:749 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics die Statistiken ausgeben\n" -#: pg_dump.c:1332 pg_dumpall.c:744 +#: pg_dump.c:1347 pg_dumpall.c:750 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr " --statistics-only nur die Statistiken ausgeben, nicht Schema oder Daten\n" -#: pg_dump.c:1333 pg_restore.c:575 +#: pg_dump.c:1348 pg_restore.c:588 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2067,7 +2028,7 @@ msgstr "" " --strict-names Tabellen- oder Schemamuster müssen auf mindestens\n" " je ein Objekt passen\n" -#: pg_dump.c:1335 +#: pg_dump.c:1350 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2076,7 +2037,7 @@ msgstr "" " --table-and-children=MUSTER nur die angegebene(n) Tabelle(n) ausgeben,\n" " einschließlich abgeleiteter und Partitionstabellen\n" -#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 +#: pg_dump.c:1352 pg_dumpall.c:751 pg_restore.c:591 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2088,7 +2049,7 @@ msgstr "" " OWNER Befehle verwenden, um Eigentümerschaft zu\n" " setzen\n" -#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 +#: pg_dump.c:1356 pg_dumpall.c:755 pg_restore.c:595 #, c-format msgid "" "\n" @@ -2097,42 +2058,42 @@ msgstr "" "\n" "Verbindungsoptionen:\n" -#: pg_dump.c:1342 +#: pg_dump.c:1357 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=DBNAME auszugebende Datenbank\n" -#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 +#: pg_dump.c:1358 pg_dumpall.c:757 pg_restore.c:596 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=HOSTNAME Name des Datenbankservers oder Socket-Verzeichnis\n" -#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 +#: pg_dump.c:1359 pg_dumpall.c:759 pg_restore.c:597 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT Portnummer des Datenbankservers\n" -#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 +#: pg_dump.c:1360 pg_dumpall.c:760 pg_restore.c:598 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NAME Datenbankbenutzername\n" -#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 +#: pg_dump.c:1361 pg_dumpall.c:761 pg_restore.c:599 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password niemals nach Passwort fragen\n" -#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 +#: pg_dump.c:1362 pg_dumpall.c:762 pg_restore.c:600 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr " -W, --password nach Passwort fragen (sollte automatisch geschehen)\n" -#: pg_dump.c:1348 pg_dumpall.c:757 +#: pg_dump.c:1363 pg_dumpall.c:763 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLLENNAME vor der Ausgabe SET ROLE ausführen\n" -#: pg_dump.c:1350 +#: pg_dump.c:1365 #, c-format msgid "" "\n" @@ -2145,527 +2106,532 @@ msgstr "" "PGDATABASE verwendet.\n" "\n" -#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 +#: pg_dump.c:1367 pg_dumpall.c:767 pg_restore.c:607 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Berichten Sie Fehler an <%s>.\n" -#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 +#: pg_dump.c:1368 pg_dumpall.c:768 pg_restore.c:608 #, c-format msgid "%s home page: <%s>\n" msgstr "%s Homepage: <%s>\n" -#: pg_dump.c:1372 pg_dumpall.c:560 +#: pg_dump.c:1387 pg_dumpall.c:566 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "ungültige Clientkodierung »%s« angegeben" -#: pg_dump.c:1520 +#: pg_dump.c:1535 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "parallele Dumps von Standby-Servern werden von dieser Serverversion nicht unterstützt" -#: pg_dump.c:1585 +#: pg_dump.c:1600 #, c-format msgid "invalid output format \"%s\" specified" msgstr "ungültiges Ausgabeformat »%s« angegeben" -#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 +#: pg_dump.c:1641 pg_dump.c:1697 pg_dump.c:1750 pg_dumpall.c:1594 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "falscher qualifizierter Name (zu viele Namensteile): %s" -#: pg_dump.c:1634 +#: pg_dump.c:1649 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "keine passenden Schemas für Muster »%s« gefunden" -#: pg_dump.c:1687 +#: pg_dump.c:1702 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "keine passenden Erweiterungen für Muster »%s« gefunden" -#: pg_dump.c:1740 +#: pg_dump.c:1755 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "keine passenden Fremdserver für Muster »%s« gefunden" -#: pg_dump.c:1811 +#: pg_dump.c:1826 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "falscher Relationsname (zu viele Namensteile): %s" -#: pg_dump.c:1833 +#: pg_dump.c:1848 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "keine passenden Tabellen für Muster »%s« gefunden" -#: pg_dump.c:1860 +#: pg_dump.c:1875 #, c-format msgid "You are currently not connected to a database." msgstr "Sie sind gegenwärtig nicht mit einer Datenbank verbunden." -#: pg_dump.c:1863 +#: pg_dump.c:1878 #, c-format msgid "cross-database references are not implemented: %s" msgstr "Verweise auf andere Datenbanken sind nicht implementiert: %s" -#: pg_dump.c:2329 +#: pg_dump.c:2344 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "gebe Inhalt der Tabelle »%s.%s« aus" -#: pg_dump.c:2439 +#: pg_dump.c:2454 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "Ausgabe des Inhalts der Tabelle »%s« fehlgeschlagen: PQgetCopyData() fehlgeschlagen." -#: pg_dump.c:2440 pg_dump.c:2450 +#: pg_dump.c:2455 pg_dump.c:2465 #, c-format msgid "Error message from server: %s" msgstr "Fehlermeldung vom Server: %s" -#: pg_dump.c:2441 pg_dump.c:2451 +#: pg_dump.c:2456 pg_dump.c:2466 #, c-format msgid "Command was: %s" msgstr "Die Anweisung war: %s" -#: pg_dump.c:2449 +#: pg_dump.c:2464 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "Ausgabe des Inhalts der Tabelle »%s« fehlgeschlagen: PQgetResult() fehlgeschlagen." -#: pg_dump.c:2540 +#: pg_dump.c:2555 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "falsche Anzahl Felder von Tabelle »%s« erhalten" -#: pg_dump.c:3258 +#: pg_dump.c:3273 #, c-format msgid "saving database definition" msgstr "sichere Datenbankdefinition" -#: pg_dump.c:3373 +#: pg_dump.c:3388 #, c-format msgid "unrecognized locale provider: %s" msgstr "unbekannter Locale-Provider: %s" -#: pg_dump.c:3734 +#: pg_dump.c:3749 #, c-format msgid "saving encoding = %s" msgstr "sichere Kodierung = %s" -#: pg_dump.c:3759 +#: pg_dump.c:3774 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "sichere »standard_conforming_strings = %s«" -#: pg_dump.c:3798 +#: pg_dump.c:3813 #, c-format msgid "could not parse result of current_schemas()" msgstr "konnte Ergebnis von current_schemas() nicht interpretieren" -#: pg_dump.c:3817 +#: pg_dump.c:3832 #, c-format msgid "saving \"search_path = %s\"" msgstr "sichere »search_path = %s«" -#: pg_dump.c:3853 +#: pg_dump.c:3868 #, c-format msgid "reading large objects" msgstr "lese Large Objects" -#: pg_dump.c:4074 +#: pg_dump.c:4089 #, c-format msgid "saving large objects \"%s\"" msgstr "sichere Large Objects »%s«" -#: pg_dump.c:4095 +#: pg_dump.c:4110 #, c-format msgid "error reading large object %u: %s" msgstr "Fehler beim Lesen von Large Object %u: %s" -#: pg_dump.c:4203 +#: pg_dump.c:4218 #, c-format msgid "reading row-level security policies" msgstr "lese Policys für Sicherheit auf Zeilenebene" -#: pg_dump.c:4344 +#: pg_dump.c:4359 #, c-format msgid "unexpected policy command type: %c" msgstr "unerwarteter Policy-Befehlstyp: %c" -#: pg_dump.c:4786 pg_dump.c:5343 pg_dump.c:7972 pg_dump.c:13450 pg_dump.c:19643 -#: pg_dump.c:19645 pg_dump.c:20277 +#: pg_dump.c:4801 pg_dump.c:5358 pg_dump.c:7987 pg_dump.c:13467 pg_dump.c:19678 +#: pg_dump.c:19680 pg_dump.c:20312 #, c-format msgid "could not parse %s array" msgstr "konnte %s-Array nicht interpretieren" -#: pg_dump.c:5002 +#: pg_dump.c:5017 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "Subskriptionen werden nicht ausgegeben, weil der aktuelle Benutzer kein Superuser ist" -#: pg_dump.c:5206 +#: pg_dump.c:5221 #, c-format msgid "subscription with OID %u does not exist" msgstr "Subskription mit OID %u existiert nicht" -#: pg_dump.c:5213 +#: pg_dump.c:5228 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "Sanity-Check fehlgeschlagen, Tabelle mit OID %u nicht gefunden" -#: pg_dump.c:5799 +#: pg_dump.c:5814 #, c-format msgid "could not find parent extension for %s %s" msgstr "konnte Erweiterung, zu der %s %s gehört, nicht finden" -#: pg_dump.c:5937 +#: pg_dump.c:5952 #, c-format msgid "schema with OID %u does not exist" msgstr "Schema mit OID %u existiert nicht" -#: pg_dump.c:6994 +#: pg_dump.c:7009 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "für Relationstyp »%c« können keine Statistiken ausgegeben werden" -#: pg_dump.c:7506 pg_dump.c:18987 +#: pg_dump.c:7521 pg_dump.c:19005 #, c-format msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found" msgstr "Sanity-Check fehlgeschlagen, Elterntabelle mit OID %u von Sequenz mit OID %u nicht gefunden" -#: pg_dump.c:7651 +#: pg_dump.c:7666 #, c-format msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found" msgstr "Sanity-Check fehlgeschlagen, Tabellen-OID %u, die in pg_partitioned_table erscheint, nicht gefunden" -#: pg_dump.c:7916 pg_dump.c:8209 pg_dump.c:8672 pg_dump.c:9317 pg_dump.c:9456 -#: pg_dump.c:9601 pg_dump.c:9701 +#: pg_dump.c:7931 pg_dump.c:8224 pg_dump.c:8687 pg_dump.c:9334 pg_dump.c:9473 +#: pg_dump.c:9618 pg_dump.c:9718 #, c-format msgid "unrecognized table OID %u" msgstr "unbekannte Tabellen-OID %u" -#: pg_dump.c:7920 +#: pg_dump.c:7935 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "unerwartete Indexdaten für Tabelle »%s«" -#: pg_dump.c:8459 +#: pg_dump.c:8474 #, c-format msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found" msgstr "Sanity-Check fehlgeschlagen, Elterntabelle mit OID %u von pg_rewrite-Eintrag mit OID %u nicht gefunden" -#: pg_dump.c:9321 +#: pg_dump.c:9338 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "unerwartete Spaltendaten für Tabelle »%s«" -#: pg_dump.c:9353 +#: pg_dump.c:9370 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "ungültige Spaltennummerierung in Tabelle »%s«" -#: pg_dump.c:9418 +#: pg_dump.c:9435 #, c-format msgid "finding table default expressions" msgstr "finde Tabellenvorgabeausdrücke" -#: pg_dump.c:9460 +#: pg_dump.c:9477 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "ungültiger adnum-Wert %d für Tabelle »%s«" -#: pg_dump.c:9553 +#: pg_dump.c:9570 #, c-format msgid "finding invalid not-null constraints" msgstr "finde ungültige Not-Null-Constraints" -#: pg_dump.c:9651 +#: pg_dump.c:9668 #, c-format msgid "finding table check constraints" msgstr "finde Tabellen-Check-Constraints" -#: pg_dump.c:9705 +#: pg_dump.c:9722 #, c-format msgid "expected %d check constraint on table \"%s\" but found %d" msgid_plural "expected %d check constraints on table \"%s\" but found %d" msgstr[0] "%d Check-Constraint für Tabelle %s erwartet, aber %d gefunden" msgstr[1] "%d Check-Constraints für Tabelle %s erwartet, aber %d gefunden" -#: pg_dump.c:9709 +#: pg_dump.c:9726 #, c-format msgid "The system catalogs might be corrupted." msgstr "Die Systemkataloge sind wahrscheinlich verfälscht." -#: pg_dump.c:10514 +#: pg_dump.c:10531 #, c-format msgid "role with OID %u does not exist" msgstr "Rolle mit OID %u existiert nicht" -#: pg_dump.c:10626 pg_dump.c:10655 +#: pg_dump.c:10643 pg_dump.c:10672 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "nicht unterstützter pg_init_privs-Eintrag: %u %u %d" -#: pg_dump.c:10951 +#: pg_dump.c:10968 #, c-format msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" msgstr "Statistiken in falscher Reihenfolge ausgegeben (aktuell: %d %s %s, erwartet: %d %s %s)" -#: pg_dump.c:11092 +#: pg_dump.c:11109 #, c-format msgid "unexpected null attname" msgstr "unerwarteter atttname mit NULL-Wert" -#: pg_dump.c:11121 +#: pg_dump.c:11138 #, c-format msgid "could not find index attname \"%s\"" msgstr "konnte Index-Attname »%s« nicht finden" -#: pg_dump.c:11607 +#: pg_dump.c:11624 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "fehlende Metadaten für Large Objects »%s«" -#: pg_dump.c:11893 +#: pg_dump.c:11910 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "typtype des Datentypen »%s« scheint ungültig zu sein" -#: pg_dump.c:13521 +#: pg_dump.c:13538 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "ungültiger provolatile-Wert für Funktion »%s«" -#: pg_dump.c:13571 pg_dump.c:15467 +#: pg_dump.c:13588 pg_dump.c:15484 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "ungültiger proparallel-Wert für Funktion »%s«" -#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 +#: pg_dump.c:13718 pg_dump.c:13824 pg_dump.c:13831 #, c-format msgid "could not find function definition for function with OID %u" msgstr "konnte Funktionsdefinition für Funktion mit OID %u nicht finden" -#: pg_dump.c:13740 +#: pg_dump.c:13757 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "unsinniger Wert in Feld pg_cast.castfunc oder pg_cast.castmethod" -#: pg_dump.c:13743 +#: pg_dump.c:13760 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "unsinniger Wert in Feld pg_cast.castmethod" -#: pg_dump.c:13833 +#: pg_dump.c:13850 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "unsinnige Transformationsdefinition, mindestens eins von trffromsql und trftosql sollte nicht null sein" -#: pg_dump.c:13850 +#: pg_dump.c:13867 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "unsinniger Wert in Feld pg_transform.trffromsql" -#: pg_dump.c:13871 +#: pg_dump.c:13888 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "unsinniger Wert in Feld pg_transform.trftosql" -#: pg_dump.c:14016 +#: pg_dump.c:14033 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "Postfix-Operatoren werden nicht mehr unterstützt (Operator »%s«)" -#: pg_dump.c:14186 +#: pg_dump.c:14203 #, c-format msgid "could not find operator with OID %s" msgstr "konnte Operator mit OID %s nicht finden" -#: pg_dump.c:14254 +#: pg_dump.c:14271 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "ungültiger Typ »%c« für Zugriffsmethode »%s«" -#: pg_dump.c:14928 pg_dump.c:14996 +#: pg_dump.c:14945 pg_dump.c:15013 #, c-format msgid "unrecognized collation provider: %s" msgstr "unbekannter Sortierfolgen-Provider: %s" -#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 -#: pg_dump.c:14980 +#: pg_dump.c:14954 pg_dump.c:14961 pg_dump.c:14972 pg_dump.c:14982 +#: pg_dump.c:14997 #, c-format msgid "invalid collation \"%s\"" msgstr "ungültige Sortierfolge »%s«" -#: pg_dump.c:15386 +#: pg_dump.c:15403 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "unbekannter aggfinalmodify-Wert für Aggregat »%s«" -#: pg_dump.c:15442 +#: pg_dump.c:15459 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "unbekannter aggmfinalmodify-Wert für Aggregat »%s«" -#: pg_dump.c:16162 +#: pg_dump.c:16179 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "unbekannter Objekttyp in den Vorgabeprivilegien: %d" -#: pg_dump.c:16178 +#: pg_dump.c:16195 #, c-format msgid "could not parse default ACL list (%s)" msgstr "konnte Vorgabe-ACL-Liste (%s) nicht interpretieren" -#: pg_dump.c:16262 +#: pg_dump.c:16279 #, c-format msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "konnte initiale ACL-Liste (%s) oder Default (%s) für Objekt »%s« (%s) nicht interpretieren" -#: pg_dump.c:16287 +#: pg_dump.c:16304 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "konnte ACL-Liste (%s) oder Default (%s) für Objekt »%s« (%s) nicht interpretieren" -#: pg_dump.c:16830 +#: pg_dump.c:16847 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "Anfrage um die Definition der Sicht »%s« zu ermitteln lieferte keine Daten" -#: pg_dump.c:16833 +#: pg_dump.c:16850 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "Anfrage um die Definition der Sicht »%s« zu ermitteln lieferte mehr als eine Definition" -#: pg_dump.c:16840 +#: pg_dump.c:16857 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "Definition der Sicht »%s« scheint leer zu sein (Länge null)" -#: pg_dump.c:16925 +#: pg_dump.c:16942 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS wird nicht mehr unterstützt (Tabelle »%s«)" -#: pg_dump.c:18065 +#: pg_dump.c:18082 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "ungültige Spaltennummer %d in Tabelle »%s«" -#: pg_dump.c:18143 +#: pg_dump.c:18160 #, c-format msgid "could not parse index statistic columns" msgstr "konnte Indexstatistikspalten nicht interpretieren" -#: pg_dump.c:18145 +#: pg_dump.c:18162 #, c-format msgid "could not parse index statistic values" msgstr "konnte Indexstatistikwerte nicht interpretieren" -#: pg_dump.c:18147 +#: pg_dump.c:18164 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "Anzahl Spalten und Werte für Indexstatistiken stimmt nicht überein" -#: pg_dump.c:18376 +#: pg_dump.c:18393 #, c-format msgid "missing index for constraint \"%s\"" msgstr "fehlender Index für Constraint »%s«" -#: pg_dump.c:18645 +#: pg_dump.c:18662 #, c-format msgid "unrecognized constraint type: %c" msgstr "unbekannter Constraint-Typ: %c" -#: pg_dump.c:18698 +#: pg_dump.c:18715 #, c-format msgid "unrecognized sequence type: %s" msgstr "unbekannter Sequenztyp: %s" -#: pg_dump.c:18830 pg_dump.c:19062 +#: pg_dump.c:18848 pg_dump.c:19086 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)" msgstr[0] "Anfrage nach Daten der Sequenz %s ergab %d Zeile (erwartete 1)" msgstr[1] "Anfrage nach Daten der Sequenz %s ergab %d Zeilen (erwartete 1)" -#: pg_dump.c:18866 +#: pg_dump.c:18884 #, c-format msgid "unrecognized sequence type: %d" msgstr "unbekannter Sequenztyp: %d" -#: pg_dump.c:19395 +#: pg_dump.c:19109 +#, c-format +msgid "failed to get data for sequence \"%s\"; user may lack SELECT privilege on the sequence or the sequence may have been concurrently dropped" +msgstr "konnte Daten für Sequenz »%s« nicht ermitteln; möglicherweise hat der Anwender nicht das SELECT-Privileg für die Sequenz oder die Sequenz würde möglicherweise gleichzeitig gelöscht" + +#: pg_dump.c:19430 #, c-format msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned" msgstr "Anfrage nach Regel »%s« der Tabelle »%s« fehlgeschlagen: falsche Anzahl Zeilen zurückgegeben" -#: pg_dump.c:19548 +#: pg_dump.c:19583 #, c-format msgid "could not find referenced extension %u" msgstr "konnte referenzierte Erweiterung %u nicht finden" -#: pg_dump.c:19647 +#: pg_dump.c:19682 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "Anzahl Konfigurationen und Bedingungen für Erweiterung stimmt nicht überein" -#: pg_dump.c:19779 +#: pg_dump.c:19814 #, c-format msgid "reading dependency data" msgstr "lese Abhängigkeitsdaten" -#: pg_dump.c:19865 +#: pg_dump.c:19900 #, c-format msgid "no referencing object %u %u" msgstr "kein referenzierendes Objekt %u %u" -#: pg_dump.c:19876 +#: pg_dump.c:19911 #, c-format msgid "no referenced object %u %u" msgstr "kein referenziertes Objekt %u %u" -#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 -#: pg_restore.c:675 +#: pg_dump.c:20346 pg_dump.c:20384 pg_dumpall.c:1842 pg_restore.c:642 +#: pg_restore.c:688 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "%s-Filter für »%s« ist nicht erlaubt" -#: pg_dump_sort.c:648 +#: pg_dump_sort.c:660 #, c-format msgid "invalid dumpId %d" msgstr "ungültige dumpId %d" -#: pg_dump_sort.c:654 +#: pg_dump_sort.c:666 #, c-format msgid "invalid dependency %d" msgstr "ungültige Abhängigkeit %d" -#: pg_dump_sort.c:818 +#: pg_dump_sort.c:830 #, c-format msgid "could not identify dependency loop" msgstr "konnte Abhängigkeitsschleife nicht bestimmen" -#: pg_dump_sort.c:1462 +#: pg_dump_sort.c:1474 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" msgstr[0] "Es gibt zirkuläre Fremdschlüssel-Constraints für diese Tabelle:" msgstr[1] "Es gibt zirkuläre Fremdschlüssel-Constraints zwischen diesen Tabellen:" -#: pg_dump_sort.c:1467 +#: pg_dump_sort.c:1479 #, c-format msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints." msgstr "Möglicherweise kann der Dump nur wiederhergestellt werden, wenn --disable-triggers verwendet wird oder die Constraints vorübergehend entfernt werden." -#: pg_dump_sort.c:1468 +#: pg_dump_sort.c:1480 #, c-format msgid "Consider using a full dump instead of a --data-only dump to avoid this problem." msgstr "Führen Sie einen vollen Dump statt eines Dumps mit --data-only durch, um dieses Problem zu vermeiden." -#: pg_dump_sort.c:1480 +#: pg_dump_sort.c:1492 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "konnte Abhängigkeitsschleife zwischen diesen Elementen nicht auflösen:" @@ -2682,25 +2648,10 @@ msgstr "Programm »%s« wurde von »%s« gefunden, aber es hatte nicht die gleic #: pg_dumpall.c:402 #, c-format -msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" -msgstr "Option --exclude-database kann nicht zusammen mit -g/--globals-only, -r/--roles-only oder -t/--tablesspaces-only verwendet werden" - -#: pg_dumpall.c:410 -#, c-format -msgid "options -g/--globals-only and -r/--roles-only cannot be used together" -msgstr "Optionen -g/--globals-only und -r/--roles-only können nicht zusammen verwendet werden" - -#: pg_dumpall.c:417 -#, c-format -msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" -msgstr "Optionen -g/--globals-only und -t/--tablespaces-only können nicht zusammen verwendet werden" - -#: pg_dumpall.c:427 -#, c-format -msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" -msgstr "Optionen -r/--roles-only und -t/--tablespaces-only können nicht zusammen verwendet werden" +msgid "option %s cannot be used together with %s, %s, or %s" +msgstr "Option %s kann nicht zusammen mit %s, %s oder %s verwendet werden" -#: pg_dumpall.c:528 +#: pg_dumpall.c:534 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2709,7 +2660,7 @@ msgstr "" "konnte nicht mit Datenbank »postgres« oder »template1« verbinden\n" "Bitte geben Sie eine alternative Datenbank an." -#: pg_dumpall.c:693 +#: pg_dumpall.c:699 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2718,82 +2669,82 @@ msgstr "" "%s exportiert einen PostgreSQL-Datenbankcluster als SQL-Skript.\n" "\n" -#: pg_dumpall.c:695 +#: pg_dumpall.c:701 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [OPTION]...\n" -#: pg_dumpall.c:698 +#: pg_dumpall.c:704 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=DATEINAME Name der Ausgabedatei\n" -#: pg_dumpall.c:705 +#: pg_dumpall.c:711 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean Datenbanken vor der Wiedererstellung löschen\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:713 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr " -g, --globals-only nur globale Objekte ausgeben, keine Datenbanken\n" -#: pg_dumpall.c:708 pg_restore.c:546 +#: pg_dumpall.c:714 pg_restore.c:559 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr "" " -O, --no-owner Wiederherstellung der Objekteigentümerschaft\n" " auslassen\n" -#: pg_dumpall.c:709 +#: pg_dumpall.c:715 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr "" " -r, --roles-only nur Rollen ausgeben, keine Datenbanken oder\n" " Tablespaces\n" -#: pg_dumpall.c:711 +#: pg_dumpall.c:717 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr " -S, --superuser=NAME Superusername für den Dump\n" -#: pg_dumpall.c:712 +#: pg_dumpall.c:718 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr "" " -t, --tablespaces-only nur Tablespaces ausgeben, keine Datenbanken oder\n" " Rollen\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:724 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr "" " --exclude-database=MUSTER Datenbanken deren Name mit MUSTER übereinstimmt\n" " überspringen\n" -#: pg_dumpall.c:720 +#: pg_dumpall.c:726 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr "" " --filter=DATEINAME Datenbanken basierend auf Ausdrücken in DATEINAME\n" " überspringen\n" -#: pg_dumpall.c:728 +#: pg_dumpall.c:734 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords Rollenpasswörter nicht mit ausgeben\n" -#: pg_dumpall.c:750 +#: pg_dumpall.c:756 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=VERBDG mit angegebenen Verbindungsparametern verbinden\n" -#: pg_dumpall.c:752 +#: pg_dumpall.c:758 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAME alternative Standarddatenbank\n" -#: pg_dumpall.c:759 +#: pg_dumpall.c:765 #, c-format msgid "" "\n" @@ -2806,58 +2757,58 @@ msgstr "" "Standardausgabe geschrieben.\n" "\n" -#: pg_dumpall.c:904 +#: pg_dumpall.c:910 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "mit »pg_« anfangender Rollenname übersprungen (%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#: pg_dumpall.c:1127 pg_dumpall.c:1185 pg_dumpall.c:1194 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "verwaister pg_auth_members-Eintrag für Rolle %s gefunden" -#: pg_dumpall.c:1154 +#: pg_dumpall.c:1160 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "konnte keine legale Dump-Reihenfolge für Mitgliedschaften in Rolle »%s« finden" -#: pg_dumpall.c:1309 +#: pg_dumpall.c:1315 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "konnte ACL-Zeichenkette (%s) für Parameter »%s« nicht interpretieren" -#: pg_dumpall.c:1436 +#: pg_dumpall.c:1442 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "konnte ACL-Zeichenkette (%s) für Tablespace »%s« nicht interpretieren" -#: pg_dumpall.c:1650 +#: pg_dumpall.c:1656 #, c-format msgid "excluding database \"%s\"" msgstr "Datenbank »%s« übersprungen" -#: pg_dumpall.c:1654 +#: pg_dumpall.c:1660 #, c-format msgid "dumping database \"%s\"" msgstr "Ausgabe der Datenbank »%s«" -#: pg_dumpall.c:1687 +#: pg_dumpall.c:1693 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump für Datenbank »%s« fehlgeschlagen; beende" -#: pg_dumpall.c:1693 +#: pg_dumpall.c:1699 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "konnte die Ausgabedatei »%s« nicht neu öffnen: %m" -#: pg_dumpall.c:1737 +#: pg_dumpall.c:1743 #, c-format msgid "running \"%s\"" msgstr "führe »%s« aus" -#: pg_dumpall.c:1856 +#: pg_dumpall.c:1862 msgid "unsupported filter object" msgstr "nicht unterstütztes Filterobjekt" @@ -2866,47 +2817,27 @@ msgstr "nicht unterstütztes Filterobjekt" msgid "one of -d/--dbname and -f/--file must be specified" msgstr "entweder -d/--dbname oder -f/--file muss angegeben werden" -#: pg_restore.c:355 -#, c-format -msgid "options -d/--dbname and -f/--file cannot be used together" -msgstr "Optionen -d/--dbname und -f/--file können nicht zusammen verwendet werden" - -#: pg_restore.c:361 -#, c-format -msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "Optionen -d/--dbname und --restrict-key können nicht zusammen verwendet werden" - -#: pg_restore.c:410 -#, c-format -msgid "options -1/--single-transaction and --transaction-size cannot be used together" -msgstr "Optionen -1/--single-transaction und --transaction-size können nicht zusammen verwendet werden" - -#: pg_restore.c:417 -#, c-format -msgid "options -C/--create and -1/--single-transaction cannot be used together" -msgstr "Optionen -C/--create und -1/--single-transaction können nicht zusammen verwendet werden" - -#: pg_restore.c:421 +#: pg_restore.c:433 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "--single-transaction und mehrere Jobs können nicht zusammen verwendet werden" -#: pg_restore.c:467 +#: pg_restore.c:480 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "Archivformat »%s« wird nicht unterstützt; bitte psql verwenden" -#: pg_restore.c:471 +#: pg_restore.c:484 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "unbekanntes Archivformat »%s«; bitte »c«, »d« oder »t« angeben" -#: pg_restore.c:509 +#: pg_restore.c:522 #, c-format msgid "errors ignored on restore: %d" msgstr "bei Wiederherstellung ignorierte Fehler: %d" -#: pg_restore.c:522 +#: pg_restore.c:535 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2915,47 +2846,47 @@ msgstr "" "%s stellt eine PostgreSQL-Datenbank wieder her, die mit pg_dump gesichert wurde.\n" "\n" -#: pg_restore.c:524 +#: pg_restore.c:537 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPTION]... [DATEI]\n" -#: pg_restore.c:527 +#: pg_restore.c:540 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAME mit angegebener Datenbank verbinden\n" -#: pg_restore.c:528 +#: pg_restore.c:541 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=DATEINAME Name der Ausgabedatei (- für stdout)\n" -#: pg_restore.c:529 +#: pg_restore.c:542 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr " -F, --format=c|d|t Format der Backup-Datei (sollte automatisch gehen)\n" -#: pg_restore.c:530 +#: pg_restore.c:543 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list Inhaltsverzeichnis für dieses Archiv anzeigen\n" -#: pg_restore.c:531 +#: pg_restore.c:544 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose »Verbose«-Modus\n" -#: pg_restore.c:532 +#: pg_restore.c:545 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version Versionsinformationen anzeigen, dann beenden\n" -#: pg_restore.c:533 +#: pg_restore.c:546 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help diese Hilfe anzeigen, dann beenden\n" -#: pg_restore.c:535 +#: pg_restore.c:548 #, c-format msgid "" "\n" @@ -2964,34 +2895,34 @@ msgstr "" "\n" "Optionen die die Wiederherstellung kontrollieren:\n" -#: pg_restore.c:536 +#: pg_restore.c:549 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only nur die Daten wiederherstellen, nicht das Schema\n" -#: pg_restore.c:538 +#: pg_restore.c:551 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create Zieldatenbank erzeugen\n" -#: pg_restore.c:539 +#: pg_restore.c:552 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error bei Fehler beenden, Voreinstellung ist fortsetzen\n" -#: pg_restore.c:540 +#: pg_restore.c:553 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME benannten Index wiederherstellen\n" -#: pg_restore.c:541 +#: pg_restore.c:554 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr "" " -j, --jobs=NUM so viele parallele Jobs zur Wiederherstellung\n" " verwenden\n" -#: pg_restore.c:542 +#: pg_restore.c:555 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -3000,59 +2931,59 @@ msgstr "" " -L, --use-list=DATEINAME Inhaltsverzeichnis aus dieser Datei zur Auswahl oder\n" " Sortierung der Ausgabe verwenden\n" -#: pg_restore.c:544 +#: pg_restore.c:557 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAME nur Objekte in diesem Schema wiederherstellen\n" -#: pg_restore.c:545 +#: pg_restore.c:558 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, ---exclude-schema=NAME Objekte in diesem Schema nicht wiederherstellen\n" -#: pg_restore.c:547 +#: pg_restore.c:560 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAME(args) benannte Funktion wiederherstellen\n" -#: pg_restore.c:548 +#: pg_restore.c:561 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only nur das Schema wiederherstellen, nicht die Daten\n" -#: pg_restore.c:549 +#: pg_restore.c:562 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr " -S, --superuser=NAME Name des Superusers, um Trigger auszuschalten\n" -#: pg_restore.c:550 +#: pg_restore.c:563 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr "" " -t, --table=NAME benannte Relation (Tabelle, Sicht, usw.)\n" " wiederherstellen\n" -#: pg_restore.c:551 +#: pg_restore.c:564 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME benannten Trigger wiederherstellen\n" -#: pg_restore.c:552 +#: pg_restore.c:565 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges Wiederherstellung der Zugriffsprivilegien auslassen\n" -#: pg_restore.c:553 +#: pg_restore.c:566 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction Wiederherstellung als eine einzige Transaktion\n" -#: pg_restore.c:555 +#: pg_restore.c:568 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security Sicherheit auf Zeilenebene einschalten\n" -#: pg_restore.c:556 +#: pg_restore.c:569 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3061,17 +2992,17 @@ msgstr "" " --filter=DATEINAME Objekte basierend auf Ausdrücken in DATEINAME\n" " wiederherstellen oder überspringen\n" -#: pg_restore.c:559 +#: pg_restore.c:572 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments Kommentar-Befehle nicht wiederherstellen\n" -#: pg_restore.c:560 +#: pg_restore.c:573 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data Daten nicht wiederherstellen\n" -#: pg_restore.c:561 +#: pg_restore.c:574 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3080,76 +3011,76 @@ msgstr "" " --no-data-for-failed-tables Daten für Tabellen, die nicht erzeugt werden\n" " konnten, nicht wiederherstellen\n" -#: pg_restore.c:563 +#: pg_restore.c:576 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr "" " --no-policies Policys für Sicherheit auf Zeilenebene nicht\n" " wiederherstellen\n" -#: pg_restore.c:564 +#: pg_restore.c:577 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications Publikationen nicht wiederherstellen\n" -#: pg_restore.c:565 +#: pg_restore.c:578 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema Schema nicht wiederherstellen\n" -#: pg_restore.c:566 +#: pg_restore.c:579 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels Security-Labels nicht wiederherstellen\n" -#: pg_restore.c:567 +#: pg_restore.c:580 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics Statistiken nicht wiederherstellen\n" -#: pg_restore.c:568 +#: pg_restore.c:581 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions Subskriptionen nicht wiederherstellen\n" -#: pg_restore.c:569 +#: pg_restore.c:582 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method Tabellenzugriffsmethoden nicht wiederherstellen\n" -#: pg_restore.c:570 +#: pg_restore.c:583 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces Tablespace-Zuordnungen nicht wiederherstellen\n" -#: pg_restore.c:572 +#: pg_restore.c:585 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr "" " --section=ABSCHNITT angegebenen Abschnitt wiederherstellen (pre-data,\n" " data oder post-data)\n" -#: pg_restore.c:573 +#: pg_restore.c:586 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics die Statistiken wiederherstellen\n" -#: pg_restore.c:574 +#: pg_restore.c:587 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only nur die Statistiken wiederherstellen, nicht Schema oder Daten\n" -#: pg_restore.c:577 +#: pg_restore.c:590 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N jeweils nach N Objekten committen\n" -#: pg_restore.c:588 +#: pg_restore.c:601 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLLENNAME vor der Wiederherstellung SET ROLE ausführen\n" -#: pg_restore.c:590 +#: pg_restore.c:603 #, c-format msgid "" "\n" @@ -3160,7 +3091,7 @@ msgstr "" "Die Optionen -I, -n, -N, -P, -t, -T und --section können kombiniert\n" "und mehrfach angegeben werden, um mehrere Objekte auszuwählen.\n" -#: pg_restore.c:593 +#: pg_restore.c:606 #, c-format msgid "" "\n" @@ -3253,18 +3184,10 @@ msgstr "" #~ msgid "option --exclude-database can be used only when restoring an archive created by pg_dumpall" #~ msgstr "Option --exclude-database kann nur verwendet werden, wenn ein von pg_dumpall erzeugtes Archiv wiederhergestellt wird" -#, c-format -#~ msgid "option --exclude-database cannot be used together with -g/--globals-only" -#~ msgstr "Option --exclude-database kann nicht zusammen mit -g/--globals-only verwendet werden" - #, c-format #~ msgid "option -C/--create must be specified when restoring an archive created by pg_dumpall" #~ msgstr "Option -C/--create muss angegeben werden, wenn ein von pg_dumpall erzeugtes Archiv wiederhergestellt wird" -#, c-format -#~ msgid "option -F/--format=d|c|t requires option -f/--file" -#~ msgstr "Option -F/--format=d|c|t benötigt Option -f/--file" - #, c-format #~ msgid "option -L/--use-list cannot be used when restoring an archive created by pg_dumpall" #~ msgstr "Option -L/--use-list kann nicht verwendet werden, wenn ein von pg_dumpall erzeugtes Archiv wiederhergestellt wird" diff --git a/src/bin/pg_dump/po/es.po b/src/bin/pg_dump/po/es.po index 2cbec18c441..081b8bf76c4 100644 --- a/src/bin/pg_dump/po/es.po +++ b/src/bin/pg_dump/po/es.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_dump (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:21+0000\n" -"PO-Revision-Date: 2025-11-08 19:05+0100\n" +"POT-Creation-Date: 2026-02-06 23:20+0000\n" +"PO-Revision-Date: 2026-02-07 09:58+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -171,7 +171,7 @@ msgstr "no se pudo hacer stat al archivo «%s»: %m" msgid "this build does not support sync method \"%s\"" msgstr "esta instalación no soporta el método de sync «%s»" -#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:944 #, c-format msgid "could not open directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%s»: %m" @@ -604,13 +604,13 @@ msgstr "no se pudo descomprimir datos: %s" msgid "Password: " msgstr "Contraseña: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 -#: pg_dump_sort.c:1467 pg_dump_sort.c:1487 +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:952 +#: pg_dump_sort.c:1478 pg_dump_sort.c:1498 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:514 +#: connectdb.c:157 pg_dumpall.c:520 #, c-format msgid "could not connect to database \"%s\"" msgstr "no se pudo establecer la conexión a la base de datos «%s»" @@ -635,32 +635,32 @@ msgstr "abortando debido a que no coincide la versión del servidor" msgid "server version: %s; %s version: %s" msgstr "versión del servidor: %s; versión de %s: %s" -#: connectdb.c:282 pg_dumpall.c:1784 +#: connectdb.c:282 pg_dumpall.c:1790 #, c-format msgid "executing %s" msgstr "ejecutando %s" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1796 #, c-format msgid "query failed: %s" msgstr "la consulta falló: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1797 #, c-format msgid "Query was: %s" msgstr "La consulta era: %s" -#: dumputils.c:948 +#: dumputils.c:949 #, c-format msgid "could not create directory \"%s\": %m" msgstr "no se pudo crear el directorio «%s»: %m" -#: dumputils.c:953 +#: dumputils.c:954 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "no se pudo cambiar los permisos del directorio «%s»: %m" -#: dumputils.c:958 +#: dumputils.c:959 #, c-format msgid "directory \"%s\" is not empty" msgstr "el directorio «%s» no está vacío" @@ -921,7 +921,7 @@ msgstr "reestableciendo objeto grande con OID %u" msgid "could not create large object %u: %s" msgstr "no se pudo crear el objeto grande %u: %s" -#: pg_backup_archiver.c:1525 pg_dump.c:4085 +#: pg_backup_archiver.c:1525 pg_dump.c:4100 #, c-format msgid "could not open large object %u: %s" msgstr "no se pudo abrir el objeto grande %u: %s" @@ -949,7 +949,7 @@ msgstr "no se pudo cerrar el archivo TOC: %m" #: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 #: pg_backup_directory.c:550 pg_backup_directory.c:616 -#: pg_backup_directory.c:634 pg_dumpall.c:548 +#: pg_backup_directory.c:634 pg_dumpall.c:554 #, c-format msgid "could not open output file \"%s\": %m" msgstr "no se pudo abrir el archivo de salida «%s»: %m" @@ -1361,7 +1361,7 @@ msgstr "PQputCopyEnd regresó un error: %s" msgid "COPY failed for table \"%s\": %s" msgstr "COPY falló para la tabla «%s»: %s" -#: pg_backup_db.c:460 pg_dump.c:2458 +#: pg_backup_db.c:460 pg_dump.c:2473 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "resultados extra inesperados durante el COPY de la tabla «%s»" @@ -1512,10 +1512,10 @@ msgstr "se encontró un encabezado corrupto en %s (esperado %d, calculado %d) en msgid "unrecognized section name: \"%s\"" msgstr "nombre de sección «%s» no reconocido" -#: pg_backup_utils.c:57 pg_dump.c:799 pg_dump.c:816 pg_dumpall.c:385 -#: pg_dumpall.c:395 pg_dumpall.c:403 pg_dumpall.c:411 pg_dumpall.c:418 -#: pg_dumpall.c:428 pg_dumpall.c:530 pg_restore.c:326 pg_restore.c:342 -#: pg_restore.c:356 +#: pg_backup_utils.c:57 pg_dump.c:800 pg_dump.c:817 pg_dumpall.c:385 +#: pg_dumpall.c:395 pg_dumpall.c:405 pg_dumpall.c:414 pg_dumpall.c:422 +#: pg_dumpall.c:434 pg_dumpall.c:536 pg_restore.c:326 pg_restore.c:342 +#: pg_restore.c:357 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." @@ -1525,132 +1525,97 @@ msgstr "Pruebe «%s --help» para mayor información." msgid "out of on_exit_nicely slots" msgstr "elementos on_exit_nicely agotados" -#: pg_dump.c:814 pg_dumpall.c:393 pg_restore.c:340 +#: pg_dump.c:815 pg_dumpall.c:393 pg_restore.c:340 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)" -#: pg_dump.c:826 pg_restore.c:380 -#, c-format -msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" - -#: pg_dump.c:828 pg_restore.c:382 -#, c-format -msgid "options -s/--schema-only and --statistics-only cannot be used together" -msgstr "las opciones -s/--schema-only y --statistics-only no pueden usarse juntas" - -#: pg_dump.c:830 pg_restore.c:384 -#, c-format -msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "las opciones -a/--data-only y /--statistics-only no pueden usarse juntas" - -#: pg_dump.c:834 pg_restore.c:388 -#, c-format -msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "las opciones -a/--data-only y --no-data no pueden usarse juntas" - -#: pg_dump.c:836 pg_restore.c:390 -#, c-format -msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "las opciones -s/--schema-only y --no-data no pueden usarse juntas" - -#: pg_dump.c:838 pg_restore.c:392 -#, c-format -msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "las opciones --statistics-only y --no-statistics no pueden usarse juntas" - -#: pg_dump.c:842 pg_restore.c:396 -#, c-format -msgid "options --statistics and --no-statistics cannot be used together" -msgstr "las opciones --statistics y --no-statistics no pueden usarse juntas" - -#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#: pg_dump.c:827 pg_dump.c:830 pg_dump.c:833 pg_dump.c:838 pg_dump.c:841 +#: pg_dump.c:844 pg_dump.c:849 pg_dump.c:854 pg_dump.c:857 pg_dump.c:861 +#: pg_dump.c:869 pg_dumpall.c:412 pg_dumpall.c:420 pg_dumpall.c:432 +#: pg_restore.c:355 pg_restore.c:362 pg_restore.c:382 pg_restore.c:385 +#: pg_restore.c:388 pg_restore.c:393 pg_restore.c:396 pg_restore.c:399 +#: pg_restore.c:404 pg_restore.c:409 pg_restore.c:412 pg_restore.c:416 +#: pg_restore.c:420 pg_restore.c:428 #, c-format msgid "options %s and %s cannot be used together" msgstr "las opciones %s y %s no pueden usarse juntas" -#: pg_dump.c:853 -#, c-format -msgid "options -s/--schema-only and --include-foreign-data cannot be used together" -msgstr "las opciones -s/--schema-only y --include-foreign-data no pueden usarse juntas" - -#: pg_dump.c:856 -#, c-format -msgid "option --include-foreign-data is not supported with parallel backup" -msgstr "la opción --include-foreign-data no está soportado con respaldo en paralelo" - -#: pg_dump.c:859 pg_restore.c:407 +#: pg_dump.c:865 #, c-format -msgid "options -c/--clean and -a/--data-only cannot be used together" -msgstr "las opciones -c/--clean y -a/--data-only no pueden usarse juntas" +#| msgid "option --include-foreign-data is not supported with parallel backup" +msgid "option %s is not supported with parallel backup" +msgstr "la opción %s no está soportado con respaldo en paralelo" -#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 +#: pg_dump.c:873 pg_dumpall.c:427 pg_restore.c:460 #, c-format -msgid "option --if-exists requires option -c/--clean" -msgstr "la opción --if-exists requiere la opción -c/--clean" +#| msgid "option %s requires option %s to be specified" +msgid "option %s requires option %s" +msgstr "la opción %s requiere la opción %s" -#: pg_dump.c:882 +#: pg_dump.c:894 #, c-format -msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" -msgstr "la opción --on-conflict-do-nothing requiere una de las opciones --inserts, --rows-per-insert o --column-inserts" +#| msgid "option %s requires option %s to be specified" +msgid "option %s requires option %s, %s, or %s" +msgstr "la opción %s requiere la opción %s, %s o %s" -#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#: pg_dump.c:912 pg_dumpall.c:504 pg_restore.c:375 #, c-format msgid "could not generate restrict key" msgstr "no se pudo generar la llave “restrict”" -#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#: pg_dump.c:914 pg_dumpall.c:506 pg_restore.c:377 #, c-format msgid "invalid restrict key" msgstr "llave de “restrict” no válida" -#: pg_dump.c:903 +#: pg_dump.c:917 #, c-format -msgid "option --restrict-key can only be used with --format=plain" -msgstr "la opción --restrict-key sólo puede usarse con --format=plain" +#| msgid "COPY %s cannot be used with %s" +msgid "option %s can only be used with %s" +msgstr "la opción %s sólo puede usarse con %s" -#: pg_dump.c:925 +#: pg_dump.c:940 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "algoritmo de compresión no reconocido: «%s»" -#: pg_dump.c:932 +#: pg_dump.c:947 #, c-format msgid "invalid compression specification: %s" msgstr "especificación de compresión no válida: %s" -#: pg_dump.c:945 +#: pg_dump.c:960 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "la opción de compresión «%s» no está soportada por pg_dump actualmente" -#: pg_dump.c:957 +#: pg_dump.c:972 #, c-format msgid "parallel backup only supported by the directory format" msgstr "el volcado en paralelo sólo está soportado por el formato «directory»" -#: pg_dump.c:1003 +#: pg_dump.c:1018 #, c-format msgid "last built-in OID is %u" msgstr "el último OID interno es %u" -#: pg_dump.c:1012 +#: pg_dump.c:1027 #, c-format msgid "no matching schemas were found" msgstr "no se encontraron esquemas coincidentes" -#: pg_dump.c:1029 +#: pg_dump.c:1044 #, c-format msgid "no matching tables were found" msgstr "no se encontraron tablas coincidentes" -#: pg_dump.c:1057 +#: pg_dump.c:1072 #, c-format msgid "no matching extensions were found" msgstr "no se encontraron extensiones coincidentes" -#: pg_dump.c:1251 +#: pg_dump.c:1266 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1659,17 +1624,17 @@ msgstr "" "%s extrae una base de datos como un script SQL o a otros formatos.\n" "\n" -#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 +#: pg_dump.c:1267 pg_dumpall.c:700 pg_restore.c:536 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_dump.c:1253 +#: pg_dump.c:1268 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPCIÓN]... [NOMBREDB]\n" -#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 +#: pg_dump.c:1270 pg_dumpall.c:703 pg_restore.c:539 #, c-format msgid "" "\n" @@ -1678,12 +1643,12 @@ msgstr "" "\n" "Opciones generales:\n" -#: pg_dump.c:1256 +#: pg_dump.c:1271 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=ARCHIVO nombre del archivo o directorio de salida\n" -#: pg_dump.c:1257 +#: pg_dump.c:1272 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1692,22 +1657,22 @@ msgstr "" " -F, --format=c|d|t|p Formato del archivo de salida (c=personalizado,\n" " d=directorio, t=tar, p=texto (por omisión))\n" -#: pg_dump.c:1259 +#: pg_dump.c:1274 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM máximo de procesos paralelos para volcar\n" -#: pg_dump.c:1260 pg_dumpall.c:699 +#: pg_dump.c:1275 pg_dumpall.c:705 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose modo verboso\n" -#: pg_dump.c:1261 pg_dumpall.c:700 +#: pg_dump.c:1276 pg_dumpall.c:706 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de version y salir\n" -#: pg_dump.c:1262 +#: pg_dump.c:1277 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1716,27 +1681,27 @@ msgstr "" " -Z, --compress=MÉTODO[:DETALLE]\n" " comprimir como se indica\n" -#: pg_dump.c:1264 pg_dumpall.c:701 +#: pg_dump.c:1279 pg_dumpall.c:707 #, c-format msgid " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr " --lock-wait-timeout=SEGS espera a lo más SEGS segundos obtener un lock\n" -#: pg_dump.c:1265 pg_dumpall.c:733 +#: pg_dump.c:1280 pg_dumpall.c:739 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync no esperar que los cambios se sincronicen a disco\n" -#: pg_dump.c:1266 +#: pg_dump.c:1281 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=MÉTODO definir método para sincr. archivos a disco\n" -#: pg_dump.c:1267 pg_dumpall.c:702 +#: pg_dump.c:1282 pg_dumpall.c:708 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_dump.c:1269 pg_dumpall.c:703 +#: pg_dump.c:1284 pg_dumpall.c:709 #, c-format msgid "" "\n" @@ -1745,64 +1710,64 @@ msgstr "" "\n" "Opciones que controlan el contenido de la salida:\n" -#: pg_dump.c:1270 pg_dumpall.c:704 +#: pg_dump.c:1285 pg_dumpall.c:710 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only extrae sólo datos, no esquemas ni estadísticas\n" -#: pg_dump.c:1271 +#: pg_dump.c:1286 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects incluir “large objects” en la extracción\n" -#: pg_dump.c:1272 +#: pg_dump.c:1287 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (igual que --large-objects, deprecado)\n" -#: pg_dump.c:1273 +#: pg_dump.c:1288 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects excluir “large objects” en la extracción\n" -#: pg_dump.c:1274 +#: pg_dump.c:1289 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (igual que --no-large-objects, deprecado)\n" -#: pg_dump.c:1275 pg_restore.c:537 +#: pg_dump.c:1290 pg_restore.c:550 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean tira (drop) la base de datos antes de crearla\n" -#: pg_dump.c:1276 +#: pg_dump.c:1291 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr "" " -C, --create incluye órdenes para crear la base de datos\n" " en la extracción\n" -#: pg_dump.c:1277 +#: pg_dump.c:1292 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=PATRÓN extrae sólo la o las extensiones nombradas\n" -#: pg_dump.c:1278 pg_dumpall.c:706 +#: pg_dump.c:1293 pg_dumpall.c:712 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=CODIF extrae los datos con la codificación CODIF\n" -#: pg_dump.c:1279 +#: pg_dump.c:1294 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=PATRÓN extrae sólo el o los esquemas nombrados\n" -#: pg_dump.c:1280 +#: pg_dump.c:1295 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=PATRÓN NO extrae el o los esquemas nombrados\n" -#: pg_dump.c:1281 +#: pg_dump.c:1296 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1811,58 +1776,58 @@ msgstr "" " -O, --no-owner en formato de sólo texto, no reestablece\n" " los dueños de los objetos\n" -#: pg_dump.c:1283 pg_dumpall.c:710 +#: pg_dump.c:1298 pg_dumpall.c:716 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr " -s, --schema-only extrae sólo esquema, no datos ni estadísticas\n" -#: pg_dump.c:1284 +#: pg_dump.c:1299 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr " -S, --superuser=NAME superusuario a utilizar en el volcado de texto\n" -#: pg_dump.c:1285 +#: pg_dump.c:1300 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=PATRÓN extrae sólo la o las tablas nombradas\n" -#: pg_dump.c:1286 +#: pg_dump.c:1301 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=PATRÓN NO extrae la o las tablas nombradas\n" -#: pg_dump.c:1287 pg_dumpall.c:713 +#: pg_dump.c:1302 pg_dumpall.c:719 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges no extrae los privilegios (grant/revoke)\n" -#: pg_dump.c:1288 pg_dumpall.c:714 +#: pg_dump.c:1303 pg_dumpall.c:720 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade sólo para uso de utilidades de upgrade\n" -#: pg_dump.c:1289 pg_dumpall.c:715 +#: pg_dump.c:1304 pg_dumpall.c:721 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr "" " --column-inserts extrae los datos usando INSERT con nombres\n" " de columnas\n" -#: pg_dump.c:1290 pg_dumpall.c:716 +#: pg_dump.c:1305 pg_dumpall.c:722 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr "" " --disable-dollar-quoting deshabilita el uso de «delimitadores de dólar»,\n" " usa delimitadores de cadena estándares\n" -#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 +#: pg_dump.c:1306 pg_dumpall.c:723 pg_restore.c:567 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr "" " --disable-triggers deshabilita “triggers” durante la\n" " restauración de sólo datos\n" -#: pg_dump.c:1292 +#: pg_dump.c:1307 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1871,12 +1836,12 @@ msgstr "" " --enable-row-security activa seguridad de filas (volcar sólo el\n" " contenido al que el usuario tiene acceso)\n" -#: pg_dump.c:1294 +#: pg_dump.c:1309 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=PATRÓN NO volcar la o las extensiones indicadas\n" -#: pg_dump.c:1295 +#: pg_dump.c:1310 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1887,12 +1852,12 @@ msgstr "" " NO extrae la o las tablas especificadas,\n" " incluyendo tablas hijas y particiones\n" -#: pg_dump.c:1298 +#: pg_dump.c:1313 #, c-format msgid " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" msgstr " --exclude-table-data=PATRÓN NO extrae los datos de la(s) tablas nombradas\n" -#: pg_dump.c:1299 +#: pg_dump.c:1314 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1903,12 +1868,12 @@ msgstr "" " NO extrae datos para la o las tablas\n" " especificadas, incluyendo hijas y particiones\n" -#: pg_dump.c:1302 pg_dumpall.c:719 +#: pg_dump.c:1317 pg_dumpall.c:725 #, c-format msgid " --extra-float-digits=NUM override default setting for extra_float_digits\n" msgstr " --extra-float-digits=NUM usa este valor para extra_float_digits\n" -#: pg_dump.c:1303 +#: pg_dump.c:1318 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1917,12 +1882,12 @@ msgstr "" " --filter=ARCHIVO incluir o excluir objetos y datos basado en\n" " expresiones en ARCHIVO\n" -#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 +#: pg_dump.c:1320 pg_dumpall.c:727 pg_restore.c:571 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists usa IF EXISTS al eliminar objetos\n" -#: pg_dump.c:1306 +#: pg_dump.c:1321 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1933,133 +1898,133 @@ msgstr "" " incluye datos de tablas foráneas en servidores\n" " que coinciden con PATRÓN\n" -#: pg_dump.c:1309 pg_dumpall.c:722 +#: pg_dump.c:1324 pg_dumpall.c:728 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts extrae los datos usando INSERT, en vez de COPY\n" -#: pg_dump.c:1310 pg_dumpall.c:723 +#: pg_dump.c:1325 pg_dumpall.c:729 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root cargar particiones a través de tabla raíz\n" -#: pg_dump.c:1311 pg_dumpall.c:724 +#: pg_dump.c:1326 pg_dumpall.c:730 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments no volcar órdenes de comentarios\n" -#: pg_dump.c:1312 pg_dumpall.c:725 +#: pg_dump.c:1327 pg_dumpall.c:731 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data no volcar datos\n" -#: pg_dump.c:1313 pg_dumpall.c:726 +#: pg_dump.c:1328 pg_dumpall.c:732 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies no volcar políticas de seguridad por registros\n" -#: pg_dump.c:1314 pg_dumpall.c:727 +#: pg_dump.c:1329 pg_dumpall.c:733 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications no volcar las publicaciones\n" -#: pg_dump.c:1315 pg_dumpall.c:729 +#: pg_dump.c:1330 pg_dumpall.c:735 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema no volcar el esquema\n" -#: pg_dump.c:1316 pg_dumpall.c:730 +#: pg_dump.c:1331 pg_dumpall.c:736 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels no volcar asignaciones de etiquetas de seguridad\n" -#: pg_dump.c:1317 pg_dumpall.c:731 +#: pg_dump.c:1332 pg_dumpall.c:737 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistiics no volcar estadísticas\n" -#: pg_dump.c:1318 pg_dumpall.c:732 +#: pg_dump.c:1333 pg_dumpall.c:738 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions no volcar las suscripciones\n" -#: pg_dump.c:1319 pg_dumpall.c:734 +#: pg_dump.c:1334 pg_dumpall.c:740 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method no volcar métodos de acceso de tablas\n" -#: pg_dump.c:1320 pg_dumpall.c:735 +#: pg_dump.c:1335 pg_dumpall.c:741 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces no volcar asignaciones de tablespace\n" -#: pg_dump.c:1321 pg_dumpall.c:736 +#: pg_dump.c:1336 pg_dumpall.c:742 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression no volcar métodos de compresión TOAST\n" -#: pg_dump.c:1322 pg_dumpall.c:737 +#: pg_dump.c:1337 pg_dumpall.c:743 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data no volcar datos de tablas unlogged\n" -#: pg_dump.c:1323 pg_dumpall.c:738 +#: pg_dump.c:1338 pg_dumpall.c:744 #, c-format msgid " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n" msgstr " --on-conflict-do-nothing agregar ON CONFLICT DO NOTHING a órdenes INSERT\n" -#: pg_dump.c:1324 pg_dumpall.c:739 +#: pg_dump.c:1339 pg_dumpall.c:745 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr "" " --quote-all-identifiers entrecomilla todos los identificadores, incluso\n" " si no son palabras clave\n" -#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#: pg_dump.c:1340 pg_dumpall.c:746 pg_restore.c:584 #, c-format msgid " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" msgstr " --restrict-key=LLAVE use la llave provista para \\restrict en psql\n" -#: pg_dump.c:1326 pg_dumpall.c:741 +#: pg_dump.c:1341 pg_dumpall.c:747 #, c-format msgid " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" msgstr " --rows-per-insert=NUMFILAS número de filas por INSERT; implica --inserts\n" -#: pg_dump.c:1327 +#: pg_dump.c:1342 #, c-format msgid " --section=SECTION dump named section (pre-data, data, or post-data)\n" msgstr "" " --section=SECCIÓN volcar la sección nombrada (pre-data, data,\n" " post-data)\n" -#: pg_dump.c:1328 pg_dumpall.c:742 +#: pg_dump.c:1343 pg_dumpall.c:748 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data incluir datos de secuencias en la extracción\n" -#: pg_dump.c:1329 +#: pg_dump.c:1344 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr "" " --serializable-deferrable espera hasta que el respaldo pueda completarse\n" " sin anomalías\n" -#: pg_dump.c:1330 +#: pg_dump.c:1345 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT use el snapshot dado para la extracción\n" -#: pg_dump.c:1331 pg_dumpall.c:743 +#: pg_dump.c:1346 pg_dumpall.c:749 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics extraer las estadísticas\n" -#: pg_dump.c:1332 pg_dumpall.c:744 +#: pg_dump.c:1347 pg_dumpall.c:750 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr " --statistics-only extrae sólo estadísticas, no esquema ni datos\n" -#: pg_dump.c:1333 pg_restore.c:575 +#: pg_dump.c:1348 pg_restore.c:588 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2068,7 +2033,7 @@ msgstr "" " --strict-names requerir al menos una coincidencia para cada patrón\n" " de nombre de tablas y esquemas\n" -#: pg_dump.c:1335 +#: pg_dump.c:1350 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2077,7 +2042,7 @@ msgstr "" " --table-and-children=PATRÓN volcar sólo la o las tablas especificadas,\n" " incluyendo tablas hijas y particiones\n" -#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 +#: pg_dump.c:1352 pg_dumpall.c:751 pg_restore.c:591 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2088,7 +2053,7 @@ msgstr "" " usa órdenes SESSION AUTHORIZATION en lugar de\n" " ALTER OWNER para cambiar los dueño de los objetos\n" -#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 +#: pg_dump.c:1356 pg_dumpall.c:755 pg_restore.c:595 #, c-format msgid "" "\n" @@ -2097,46 +2062,46 @@ msgstr "" "\n" "Opciones de conexión:\n" -#: pg_dump.c:1342 +#: pg_dump.c:1357 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=NOMBRE nombre de la base de datos que volcar\n" -#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 +#: pg_dump.c:1358 pg_dumpall.c:757 pg_restore.c:596 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=ANFITRIÓN anfitrión de la base de datos o\n" " directorio del enchufe (socket)\n" -#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 +#: pg_dump.c:1359 pg_dumpall.c:759 pg_restore.c:597 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PUERTO número del puerto de la base de datos\n" -#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 +#: pg_dump.c:1360 pg_dumpall.c:760 pg_restore.c:598 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=USUARIO nombre de usuario con el cual conectarse\n" -#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 +#: pg_dump.c:1361 pg_dumpall.c:761 pg_restore.c:599 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password nunca pedir una contraseña\n" -#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 +#: pg_dump.c:1362 pg_dumpall.c:762 pg_restore.c:600 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr "" " -W, --password fuerza un prompt para la contraseña\n" " (debería ser automático)\n" -#: pg_dump.c:1348 pg_dumpall.c:757 +#: pg_dump.c:1363 pg_dumpall.c:763 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROL ejecuta SET ROLE antes del volcado\n" -#: pg_dump.c:1350 +#: pg_dump.c:1365 #, c-format msgid "" "\n" @@ -2149,527 +2114,532 @@ msgstr "" "de la variable de ambiente PGDATABASE.\n" "\n" -#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 +#: pg_dump.c:1367 pg_dumpall.c:767 pg_restore.c:607 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Reporte errores a <%s>.\n" -#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 +#: pg_dump.c:1368 pg_dumpall.c:768 pg_restore.c:608 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_dump.c:1372 pg_dumpall.c:560 +#: pg_dump.c:1387 pg_dumpall.c:566 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "la codificación de cliente especificada «%s» no es válida" -#: pg_dump.c:1520 +#: pg_dump.c:1535 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "Los volcados en paralelo desde servidores standby no están soportados por esta versión de servidor." -#: pg_dump.c:1585 +#: pg_dump.c:1600 #, c-format msgid "invalid output format \"%s\" specified" msgstr "el formato de salida especificado «%s» no es válido" -#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 +#: pg_dump.c:1641 pg_dump.c:1697 pg_dump.c:1750 pg_dumpall.c:1594 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "el nombre no es válido (demasiados puntos): %s" -#: pg_dump.c:1634 +#: pg_dump.c:1649 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "no se encontraron esquemas coincidentes para el patrón «%s»" -#: pg_dump.c:1687 +#: pg_dump.c:1702 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "no se encontraron extensiones coincidentes para el patrón «%s»" -#: pg_dump.c:1740 +#: pg_dump.c:1755 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "no se encontraron servidores foráneos coincidentes para el patrón «%s»" -#: pg_dump.c:1811 +#: pg_dump.c:1826 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "el nombre de relación no es válido (demasiados puntos): %s" -#: pg_dump.c:1833 +#: pg_dump.c:1848 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "no se encontraron tablas coincidentes para el patrón «%s»" -#: pg_dump.c:1860 +#: pg_dump.c:1875 #, c-format msgid "You are currently not connected to a database." msgstr "No está conectado a una base de datos." -#: pg_dump.c:1863 +#: pg_dump.c:1878 #, c-format msgid "cross-database references are not implemented: %s" msgstr "no están implementadas las referencias entre bases de datos: %s" -#: pg_dump.c:2329 +#: pg_dump.c:2344 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "extrayendo el contenido de la tabla «%s.%s»" -#: pg_dump.c:2439 +#: pg_dump.c:2454 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "Falló la extracción del contenido de la tabla «%s»: PQgetCopyData() falló." -#: pg_dump.c:2440 pg_dump.c:2450 +#: pg_dump.c:2455 pg_dump.c:2465 #, c-format msgid "Error message from server: %s" msgstr "Mensaje de error del servidor: %s" -#: pg_dump.c:2441 pg_dump.c:2451 +#: pg_dump.c:2456 pg_dump.c:2466 #, c-format msgid "Command was: %s" msgstr "La orden era: % s" -#: pg_dump.c:2449 +#: pg_dump.c:2464 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "Falló la extracción del contenido de la tabla «%s»: PQgetResult() falló." -#: pg_dump.c:2540 +#: pg_dump.c:2555 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "se obtuvo un número incorrecto de campos de la tabla «%s»" -#: pg_dump.c:3258 +#: pg_dump.c:3273 #, c-format msgid "saving database definition" msgstr "salvando las definiciones de la base de datos" -#: pg_dump.c:3373 +#: pg_dump.c:3388 #, c-format msgid "unrecognized locale provider: %s" msgstr "proveedor de configuración regional no reconocido: %s" -#: pg_dump.c:3734 +#: pg_dump.c:3749 #, c-format msgid "saving encoding = %s" msgstr "salvando codificaciones = %s" -#: pg_dump.c:3759 +#: pg_dump.c:3774 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "salvando «standard_conforming_strings = %s»" -#: pg_dump.c:3798 +#: pg_dump.c:3813 #, c-format msgid "could not parse result of current_schemas()" msgstr "no se pudo interpretar la salida de current_schemas()" -#: pg_dump.c:3817 +#: pg_dump.c:3832 #, c-format msgid "saving \"search_path = %s\"" msgstr "salvando «search_path = %s»" -#: pg_dump.c:3853 +#: pg_dump.c:3868 #, c-format msgid "reading large objects" msgstr "leyendo objetos grandes" -#: pg_dump.c:4074 +#: pg_dump.c:4089 #, c-format msgid "saving large objects \"%s\"" msgstr "salvando objetos grandes «%s»" -#: pg_dump.c:4095 +#: pg_dump.c:4110 #, c-format msgid "error reading large object %u: %s" msgstr "error al leer el objeto grande %u: %s" -#: pg_dump.c:4203 +#: pg_dump.c:4218 #, c-format msgid "reading row-level security policies" msgstr "leyendo políticas de seguridad a nivel de registros" -#: pg_dump.c:4344 +#: pg_dump.c:4359 #, c-format msgid "unexpected policy command type: %c" msgstr "tipo de orden inesperada en política: %c" -#: pg_dump.c:4786 pg_dump.c:5343 pg_dump.c:7972 pg_dump.c:13452 pg_dump.c:19650 -#: pg_dump.c:19652 pg_dump.c:20284 +#: pg_dump.c:4801 pg_dump.c:5358 pg_dump.c:7987 pg_dump.c:13467 pg_dump.c:19678 +#: pg_dump.c:19680 pg_dump.c:20312 #, c-format msgid "could not parse %s array" msgstr "no se pudo interpretar el arreglo %s" -#: pg_dump.c:5002 +#: pg_dump.c:5017 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "no se volcaron las suscripciones porque el usuario actual no es un superusuario" -#: pg_dump.c:5206 +#: pg_dump.c:5221 #, c-format msgid "subscription with OID %u does not exist" msgstr "no existe la suscripción con OID %u" -#: pg_dump.c:5213 +#: pg_dump.c:5228 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "falló la revisión de integridad, tabla con OID %u no se encontró" -#: pg_dump.c:5799 +#: pg_dump.c:5814 #, c-format msgid "could not find parent extension for %s %s" msgstr "no se pudo encontrar la extensión padre para %s %s" -#: pg_dump.c:5937 +#: pg_dump.c:5952 #, c-format msgid "schema with OID %u does not exist" msgstr "no existe el esquema con OID %u" -#: pg_dump.c:6994 +#: pg_dump.c:7009 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "no se puede extraer estadísticas para el tipo de relación «%c»" -#: pg_dump.c:7506 pg_dump.c:18989 +#: pg_dump.c:7521 pg_dump.c:19005 #, c-format msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found" msgstr "falló la revisión de integridad, no se encontró la tabla padre con OID %u de la secuencia con OID %u" -#: pg_dump.c:7651 +#: pg_dump.c:7666 #, c-format msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found" msgstr "falló la revisión de integridad, el OID %u que aparece en pg_partitioned_table no se encontró" -#: pg_dump.c:7916 pg_dump.c:8209 pg_dump.c:8672 pg_dump.c:9319 pg_dump.c:9458 -#: pg_dump.c:9603 pg_dump.c:9703 +#: pg_dump.c:7931 pg_dump.c:8224 pg_dump.c:8687 pg_dump.c:9334 pg_dump.c:9473 +#: pg_dump.c:9618 pg_dump.c:9718 #, c-format msgid "unrecognized table OID %u" msgstr "OID de tabla %u no reconocido" -#: pg_dump.c:7920 +#: pg_dump.c:7935 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "datos de índice inesperados para la tabla «%s»" -#: pg_dump.c:8459 +#: pg_dump.c:8474 #, c-format msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found" msgstr "falló la revisión de integridad, no se encontró la tabla padre con OID %u del elemento con OID %u de pg_rewrite" -#: pg_dump.c:9323 +#: pg_dump.c:9338 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "información de columnas para la tabla «%s» inesperada" -#: pg_dump.c:9355 +#: pg_dump.c:9370 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "numeración de columnas no válida en la tabla «%s»" -#: pg_dump.c:9420 +#: pg_dump.c:9435 #, c-format msgid "finding table default expressions" msgstr "encontrando expresiones default de tablas" -#: pg_dump.c:9462 +#: pg_dump.c:9477 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "el valor de adnum %d para la tabla «%s» no es válido" -#: pg_dump.c:9555 +#: pg_dump.c:9570 #, c-format msgid "finding invalid not-null constraints" msgstr "encontrando restricciones not-null no válidas" -#: pg_dump.c:9653 +#: pg_dump.c:9668 #, c-format msgid "finding table check constraints" msgstr "encontrando restricciones CHECK de tablas" -#: pg_dump.c:9707 +#: pg_dump.c:9722 #, c-format msgid "expected %d check constraint on table \"%s\" but found %d" msgid_plural "expected %d check constraints on table \"%s\" but found %d" msgstr[0] "se esperaban %d restricciones CHECK en la tabla «%s» pero se encontraron %d" msgstr[1] "se esperaban %d restricciones CHECK en la tabla «%s» pero se encontraron %d" -#: pg_dump.c:9711 +#: pg_dump.c:9726 #, c-format msgid "The system catalogs might be corrupted." msgstr "Los catálogos del sistema podrían estar corruptos." -#: pg_dump.c:10516 +#: pg_dump.c:10531 #, c-format msgid "role with OID %u does not exist" msgstr "no existe el rol con OID %u" -#: pg_dump.c:10628 pg_dump.c:10657 +#: pg_dump.c:10643 pg_dump.c:10672 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "entrada en pg_init_privs no soportada: %u %u %d" -#: pg_dump.c:10953 +#: pg_dump.c:10968 #, c-format msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" msgstr "estadísticas volcadas fuera de orden (actual: %d %s %s, esperada: %d %s %s)" -#: pg_dump.c:11094 +#: pg_dump.c:11109 #, c-format msgid "unexpected null attname" msgstr "se encontró attname inesperadamente nulo" -#: pg_dump.c:11123 +#: pg_dump.c:11138 #, c-format msgid "could not find index attname \"%s\"" msgstr "no se pudo encontrar el attname de índice «%s»" -#: pg_dump.c:11609 +#: pg_dump.c:11624 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "metadata faltante para los objetos grandes «%s»" -#: pg_dump.c:11895 +#: pg_dump.c:11910 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "el typtype del tipo «%s» parece no ser válido" -#: pg_dump.c:13523 +#: pg_dump.c:13538 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "el valor del atributo «provolatile» para la función «%s» es desconocido" -#: pg_dump.c:13573 pg_dump.c:15469 +#: pg_dump.c:13588 pg_dump.c:15484 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "el valor del atributo «proparallel» para la función «%s» es desconocido" -#: pg_dump.c:13703 pg_dump.c:13809 pg_dump.c:13816 +#: pg_dump.c:13718 pg_dump.c:13824 pg_dump.c:13831 #, c-format msgid "could not find function definition for function with OID %u" msgstr "no se encontró la definición de la función con OID %u" -#: pg_dump.c:13742 +#: pg_dump.c:13757 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "valor no válido en los campos pg_cast.castfunc o pg_cast.castmethod" -#: pg_dump.c:13745 +#: pg_dump.c:13760 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "valor no válido en el campo pg_cast.castmethod" -#: pg_dump.c:13835 +#: pg_dump.c:13850 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "definición errónea de transformación; al menos uno de trffromsql y trftosql debe ser distinto de cero" -#: pg_dump.c:13852 +#: pg_dump.c:13867 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "valor erróneo en el campo pg_transform.trffromsql" -#: pg_dump.c:13873 +#: pg_dump.c:13888 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "valor erróneo en el campo pg_transform.trftosql" -#: pg_dump.c:14018 +#: pg_dump.c:14033 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "los operadores postfix ya no están soportados (operador «%s»)" -#: pg_dump.c:14188 +#: pg_dump.c:14203 #, c-format msgid "could not find operator with OID %s" msgstr "no se pudo encontrar el operador con OID %s" -#: pg_dump.c:14256 +#: pg_dump.c:14271 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "el tipo «%c» para el método de acceso «%s» no es válido" -#: pg_dump.c:14930 pg_dump.c:14998 +#: pg_dump.c:14945 pg_dump.c:15013 #, c-format msgid "unrecognized collation provider: %s" msgstr "proveedor de ordenamiento no reconocido: %s" -#: pg_dump.c:14939 pg_dump.c:14946 pg_dump.c:14957 pg_dump.c:14967 -#: pg_dump.c:14982 +#: pg_dump.c:14954 pg_dump.c:14961 pg_dump.c:14972 pg_dump.c:14982 +#: pg_dump.c:14997 #, c-format msgid "invalid collation \"%s\"" msgstr "ordenamiento \"%s\" no válido" -#: pg_dump.c:15388 +#: pg_dump.c:15403 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "valor de aggfinalmodify no reconocido para la agregación «%s»" -#: pg_dump.c:15444 +#: pg_dump.c:15459 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "valor de aggmfinalmodify no reconocido para la agregación «%s»" -#: pg_dump.c:16164 +#: pg_dump.c:16179 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "tipo de objeto desconocido en privilegios por omisión: %d" -#: pg_dump.c:16180 +#: pg_dump.c:16195 #, c-format msgid "could not parse default ACL list (%s)" msgstr "no se pudo interpretar la lista de ACL (%s)" -#: pg_dump.c:16264 +#: pg_dump.c:16279 #, c-format msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "no se pudo interpretar la lista ACL inicial (%s) o por defecto (%s) para el objeto «%s» (%s)" -#: pg_dump.c:16289 +#: pg_dump.c:16304 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "no se pudo interpretar la lista de ACL (%s) o por defecto (%s) para el objeto «%s» (%s)" -#: pg_dump.c:16832 +#: pg_dump.c:16847 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "la consulta para obtener la definición de la vista «%s» no regresó datos" -#: pg_dump.c:16835 +#: pg_dump.c:16850 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "la consulta para obtener la definición de la vista «%s» regresó más de una definición" -#: pg_dump.c:16842 +#: pg_dump.c:16857 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "la definición de la vista «%s» parece estar vacía (tamaño cero)" -#: pg_dump.c:16927 +#: pg_dump.c:16942 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS ya no está soportado (tabla «%s»)" -#: pg_dump.c:18067 +#: pg_dump.c:18082 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "el número de columna %d no es válido para la tabla «%s»" -#: pg_dump.c:18145 +#: pg_dump.c:18160 #, c-format msgid "could not parse index statistic columns" msgstr "no se pudieron interpretar columnas de estadísticas de índices" -#: pg_dump.c:18147 +#: pg_dump.c:18162 #, c-format msgid "could not parse index statistic values" msgstr "no se pudieron interpretar valores de estadísticas de índices" -#: pg_dump.c:18149 +#: pg_dump.c:18164 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "no coincide el número de columnas con el de valores para estadísticas de índices" -#: pg_dump.c:18378 +#: pg_dump.c:18393 #, c-format msgid "missing index for constraint \"%s\"" msgstr "falta un índice para restricción «%s»" -#: pg_dump.c:18647 +#: pg_dump.c:18662 #, c-format msgid "unrecognized constraint type: %c" msgstr "tipo de restricción inesperado: %c" -#: pg_dump.c:18700 +#: pg_dump.c:18715 #, c-format msgid "unrecognized sequence type: %s" msgstr "tipo no reconocido de secuencia: %s" -#: pg_dump.c:18832 pg_dump.c:19064 +#: pg_dump.c:18848 pg_dump.c:19086 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)" msgstr[0] "la consulta para obtener los datos de la secuencia «%s» regresó %d entrada, pero se esperaba 1" msgstr[1] "la consulta para obtener los datos de la secuencia «%s» regresó %d entradas, pero se esperaba 1" -#: pg_dump.c:18868 +#: pg_dump.c:18884 #, c-format msgid "unrecognized sequence type: %d" msgstr "tipo no reconocido de secuencia: %d" -#: pg_dump.c:19402 +#: pg_dump.c:19109 +#, c-format +msgid "failed to get data for sequence \"%s\"; user may lack SELECT privilege on the sequence or the sequence may have been concurrently dropped" +msgstr "fallo al obtener datos para la secuencia «%s»; el usuario puede no tener privilegios SELECT en la secuencia, o la secuencia puede haber sido eliminada concurrentemente" + +#: pg_dump.c:19430 #, c-format msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned" msgstr "la consulta para obtener la regla «%s» asociada con la tabla «%s» falló: retornó un número incorrecto de renglones" -#: pg_dump.c:19555 +#: pg_dump.c:19583 #, c-format msgid "could not find referenced extension %u" msgstr "no se pudo encontrar la extensión referenciada %u" -#: pg_dump.c:19654 +#: pg_dump.c:19682 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "no coincide el número de configuraciones con el de condiciones para extensión" -#: pg_dump.c:19786 +#: pg_dump.c:19814 #, c-format msgid "reading dependency data" msgstr "obteniendo datos de dependencias" -#: pg_dump.c:19872 +#: pg_dump.c:19900 #, c-format msgid "no referencing object %u %u" msgstr "no existe el objeto referenciante %u %u" -#: pg_dump.c:19883 +#: pg_dump.c:19911 #, c-format msgid "no referenced object %u %u" msgstr "no existe el objeto referenciado %u %u" -#: pg_dump.c:20318 pg_dump.c:20356 pg_dumpall.c:1836 pg_restore.c:629 -#: pg_restore.c:675 +#: pg_dump.c:20346 pg_dump.c:20384 pg_dumpall.c:1842 pg_restore.c:642 +#: pg_restore.c:688 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "el filtro %s para «%s» no está permitido" -#: pg_dump_sort.c:649 +#: pg_dump_sort.c:660 #, c-format msgid "invalid dumpId %d" msgstr "dumpId %d no válido" -#: pg_dump_sort.c:655 +#: pg_dump_sort.c:666 #, c-format msgid "invalid dependency %d" msgstr "dependencia %d no válida" -#: pg_dump_sort.c:819 +#: pg_dump_sort.c:830 #, c-format msgid "could not identify dependency loop" msgstr "no se pudo identificar bucle de dependencia" -#: pg_dump_sort.c:1463 +#: pg_dump_sort.c:1474 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" msgstr[0] "hay restricciones de llave foránea circulares en la siguiente tabla:" msgstr[1] "hay restricciones de llave foránea circulares entre las siguientes tablas:" -#: pg_dump_sort.c:1468 +#: pg_dump_sort.c:1479 #, c-format msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints." msgstr "Puede no ser capaz de restaurar el respaldo sin usar --disable-triggers o temporalmente eliminar las restricciones." -#: pg_dump_sort.c:1469 +#: pg_dump_sort.c:1480 #, c-format msgid "Consider using a full dump instead of a --data-only dump to avoid this problem." msgstr "Considere usar un volcado completo en lugar de --data-only para evitar este problema." -#: pg_dump_sort.c:1481 +#: pg_dump_sort.c:1492 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "no se pudo resolver el bucle de dependencias entre los siguientes elementos:" @@ -2686,25 +2656,11 @@ msgstr "el programa «%s» fue encontrado por «%s», pero no es de la misma ver #: pg_dumpall.c:402 #, c-format -msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" -msgstr "la opción --exclude-database no puede ser usada junto con -g/--globals-only, -r/--roles-only o -t/--tablespaces-only" - -#: pg_dumpall.c:410 -#, c-format -msgid "options -g/--globals-only and -r/--roles-only cannot be used together" -msgstr "las opciones -g/--globals-only y -r/--roles-only no pueden usarse juntas" +#| msgid "options %s and %s cannot be used together" +msgid "option %s cannot be used together with %s, %s, or %s" +msgstr "la opción %s no pueden usarse junto con %s, %s o %s" -#: pg_dumpall.c:417 -#, c-format -msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" -msgstr "las opciones -g/--globals-only y -t/--tablespaces-only no pueden usarse juntas" - -#: pg_dumpall.c:427 -#, c-format -msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" -msgstr "las opciones -r/--roles-only y -t/--tablespaces-only no pueden usarse juntas" - -#: pg_dumpall.c:528 +#: pg_dumpall.c:534 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2713,7 +2669,7 @@ msgstr "" "no se pudo establecer la conexión a las bases de datos «postgres» o\n" "«template1». Por favor especifique una base de datos para conectarse." -#: pg_dumpall.c:693 +#: pg_dumpall.c:699 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2722,78 +2678,78 @@ msgstr "" "%s exporta un clúster de bases de datos de PostgreSQL en un guión (script) SQL.\n" "\n" -#: pg_dumpall.c:695 +#: pg_dumpall.c:701 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [OPCIÓN]...\n" -#: pg_dumpall.c:698 +#: pg_dumpall.c:704 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=ARCHIVO nombre del archivo de salida\n" -#: pg_dumpall.c:705 +#: pg_dumpall.c:711 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean elimina la base de datos antes de crearla\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:713 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr " -g, --globals-only extrae sólo los objetos globales, no bases de datos\n" -#: pg_dumpall.c:708 pg_restore.c:546 +#: pg_dumpall.c:714 pg_restore.c:559 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner no reestablece los dueños de los objetos\n" -#: pg_dumpall.c:709 +#: pg_dumpall.c:715 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr "" " -r, --roles-only extrae sólo los roles, no bases de datos\n" " ni tablespaces\n" -#: pg_dumpall.c:711 +#: pg_dumpall.c:717 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr "" " -S, --superuser=NAME especifica el nombre del superusuario a usar en\n" " el volcado\n" -#: pg_dumpall.c:712 +#: pg_dumpall.c:718 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr "" " -t, --tablespaces-only extrae sólo los tablespaces, no bases de datos\n" " ni roles\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:724 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr " --exclude-database=PATRÓN excluir bases de datos cuyos nombres coinciden con el patrón\n" -#: pg_dumpall.c:720 +#: pg_dumpall.c:726 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " --filter=ARCHIVO excluir bases de datos basado en expresiones en ARCHIVO\n" -#: pg_dumpall.c:728 +#: pg_dumpall.c:734 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords no extraer contraseñas para roles\n" -#: pg_dumpall.c:750 +#: pg_dumpall.c:756 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=CONNSTR conectar usando la cadena de conexión\n" -#: pg_dumpall.c:752 +#: pg_dumpall.c:758 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=NOMBRE especifica la base de datos a la cual conectarse\n" -#: pg_dumpall.c:759 +#: pg_dumpall.c:765 #, c-format msgid "" "\n" @@ -2805,58 +2761,58 @@ msgstr "" "Si no se usa -f/--file, el volcado de SQL será escrito a la salida estándar.\n" "\n" -#: pg_dumpall.c:904 +#: pg_dumpall.c:910 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "omitido nombre de rol que empieza con «pg_» (%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#: pg_dumpall.c:1127 pg_dumpall.c:1185 pg_dumpall.c:1194 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "se encontró entrada huérfana de pg_auth_members para el rol %s" -#: pg_dumpall.c:1154 +#: pg_dumpall.c:1160 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "no se pudo encontrar un orden legal para membresías del rol «%s»" -#: pg_dumpall.c:1309 +#: pg_dumpall.c:1315 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "no se pudo interpretar la lista de control de acceso (%s) del parámetro «%s»" -#: pg_dumpall.c:1436 +#: pg_dumpall.c:1442 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "no se pudo interpretar la lista de control de acceso (%s) del tablespace «%s»" -#: pg_dumpall.c:1650 +#: pg_dumpall.c:1656 #, c-format msgid "excluding database \"%s\"" msgstr "excluyendo base de datos «%s»" -#: pg_dumpall.c:1654 +#: pg_dumpall.c:1660 #, c-format msgid "dumping database \"%s\"" msgstr "extrayendo base de datos «%s»" -#: pg_dumpall.c:1687 +#: pg_dumpall.c:1693 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump falló en la base de datos «%s», saliendo" -#: pg_dumpall.c:1693 +#: pg_dumpall.c:1699 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "no se pudo reabrir el archivo de salida «%s»: %m" -#: pg_dumpall.c:1737 +#: pg_dumpall.c:1743 #, c-format msgid "running \"%s\"" msgstr "ejecutando «%s»" -#: pg_dumpall.c:1856 +#: pg_dumpall.c:1862 msgid "unsupported filter object" msgstr "objeto de filtro no soportado" @@ -2865,47 +2821,27 @@ msgstr "objeto de filtro no soportado" msgid "one of -d/--dbname and -f/--file must be specified" msgstr "una de las opciones -d/--dbname y -f/--file debe especificarse" -#: pg_restore.c:355 -#, c-format -msgid "options -d/--dbname and -f/--file cannot be used together" -msgstr "las opciones -d/--dbname y -f/--file no pueden usarse juntas" - -#: pg_restore.c:361 -#, c-format -msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "las opciones -d/--dbname y --restrict-key no pueden usarse juntas" - -#: pg_restore.c:410 -#, c-format -msgid "options -1/--single-transaction and --transaction-size cannot be used together" -msgstr "las opciones -1/--single-transaction y --transaction-size no pueden usarse juntas" - -#: pg_restore.c:417 -#, c-format -msgid "options -C/--create and -1/--single-transaction cannot be used together" -msgstr "las opciones -c/--clean y -1/--single-transaction no pueden usarse juntas" - -#: pg_restore.c:421 +#: pg_restore.c:433 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "no se puede especificar --single-transaction junto con múltiples tareas" -#: pg_restore.c:467 +#: pg_restore.c:480 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "el formato de archivador «%s» no está soportado; por favor use psql" -#: pg_restore.c:471 +#: pg_restore.c:484 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "formato de archivo «%s» no reconocido; por favor especifique «c», «d» o «t»" -#: pg_restore.c:509 +#: pg_restore.c:522 #, c-format msgid "errors ignored on restore: %d" msgstr "errores ignorados durante la recuperación: %d" -#: pg_restore.c:522 +#: pg_restore.c:535 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2915,49 +2851,49 @@ msgstr "" "creado por pg_dump.\n" "\n" -#: pg_restore.c:524 +#: pg_restore.c:537 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPCIÓN]... [ARCHIVO]\n" -#: pg_restore.c:527 +#: pg_restore.c:540 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NOMBRE nombre de la base de datos a la que conectarse\n" -#: pg_restore.c:528 +#: pg_restore.c:541 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=ARCHIVO nombre del archivo de salida (- para stdout)\n" -#: pg_restore.c:529 +#: pg_restore.c:542 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr " -F, --format=c|d|t formato del volcado (debería ser automático)\n" -#: pg_restore.c:530 +#: pg_restore.c:543 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr "" " -l, --list imprime una tabla resumida de contenidos\n" " del archivador\n" -#: pg_restore.c:531 +#: pg_restore.c:544 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose modo verboso\n" -#: pg_restore.c:532 +#: pg_restore.c:545 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión y salir\n" -#: pg_restore.c:533 +#: pg_restore.c:546 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_restore.c:535 +#: pg_restore.c:548 #, c-format msgid "" "\n" @@ -2966,34 +2902,34 @@ msgstr "" "\n" "Opciones que controlan la recuperación:\n" -#: pg_restore.c:536 +#: pg_restore.c:549 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only reestablece sólo los datos, no el esquema\n" -#: pg_restore.c:538 +#: pg_restore.c:551 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create crea la base de datos de destino\n" -#: pg_restore.c:539 +#: pg_restore.c:552 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr "" " -e, --exit-on-error abandonar al encontrar un error\n" " por omisión, se continúa la restauración\n" -#: pg_restore.c:540 +#: pg_restore.c:553 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NOMBRE reestablece el índice nombrado\n" -#: pg_restore.c:541 +#: pg_restore.c:554 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr " -j, --jobs=NUM máximo de procesos paralelos para restaurar\n" -#: pg_restore.c:542 +#: pg_restore.c:555 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -3002,59 +2938,59 @@ msgstr "" " -L, --use-list=ARCHIVO usa la tabla de contenido especificada para ordenar\n" " la salida de este archivo\n" -#: pg_restore.c:544 +#: pg_restore.c:557 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAME reestablece sólo los objetos en este esquema\n" -#: pg_restore.c:545 +#: pg_restore.c:558 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=NAME no reestablecer los objetos en este esquema\n" -#: pg_restore.c:547 +#: pg_restore.c:560 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NOMBRE(args) reestablece la función nombrada\n" -#: pg_restore.c:548 +#: pg_restore.c:561 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only reestablece el esquema únicamente, no los datos\n" -#: pg_restore.c:549 +#: pg_restore.c:562 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr "" " -S, --superuser=NOMBRE especifica el nombre del superusuario que se usa\n" " para deshabilitar los disparadores (triggers)\n" -#: pg_restore.c:550 +#: pg_restore.c:563 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NOMBRE reestablece la relación (tabla, vista, etc.) nombrada\n" -#: pg_restore.c:551 +#: pg_restore.c:564 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NOMBRE reestablece el disparador (trigger) nombrado\n" -#: pg_restore.c:552 +#: pg_restore.c:565 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges no reestablece los privilegios (grant/revoke)\n" -#: pg_restore.c:553 +#: pg_restore.c:566 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction reestablece en una única transacción\n" -#: pg_restore.c:555 +#: pg_restore.c:568 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security activa seguridad de filas\n" -#: pg_restore.c:556 +#: pg_restore.c:569 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3063,17 +2999,17 @@ msgstr "" " --filter=ARCHIVO restaurar o ignorar objetos basados en\n" " expresiones en ARCHIVO\n" -#: pg_restore.c:559 +#: pg_restore.c:572 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments no restaurar órdenes de comentarios\n" -#: pg_restore.c:560 +#: pg_restore.c:573 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data no restaurar datos\n" -#: pg_restore.c:561 +#: pg_restore.c:574 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3082,74 +3018,74 @@ msgstr "" " --no-data-for-failed-tables no reestablece datos de tablas que no pudieron\n" " ser creadas\n" -#: pg_restore.c:563 +#: pg_restore.c:576 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies no restaurar políticas de seguridad por registros\n" -#: pg_restore.c:564 +#: pg_restore.c:577 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications no restaurar publicaciones\n" -#: pg_restore.c:565 +#: pg_restore.c:578 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema no restaurar esquemas\n" -#: pg_restore.c:566 +#: pg_restore.c:579 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels no restaura etiquetas de seguridad\n" -#: pg_restore.c:567 +#: pg_restore.c:580 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics no restaurar estadísticas\n" -#: pg_restore.c:568 +#: pg_restore.c:581 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions no restaurar suscripciones\n" -#: pg_restore.c:569 +#: pg_restore.c:582 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method no restaura métodos de acceso de tablas\n" -#: pg_restore.c:570 +#: pg_restore.c:583 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces no restaura asignaciones de tablespace\n" -#: pg_restore.c:572 +#: pg_restore.c:585 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr "" " --section=SECCIÓN reestablece la sección nombrada (pre-data, data\n" " post-data)\n" -#: pg_restore.c:573 +#: pg_restore.c:586 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics restaurar las estadísticas\n" -#: pg_restore.c:574 +#: pg_restore.c:587 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only restaurar sólo las estadísticas, no esquemas ni datos\n" -#: pg_restore.c:577 +#: pg_restore.c:590 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N comprometer transacción cada N objetos\n" -#: pg_restore.c:588 +#: pg_restore.c:601 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME hacer SET ROLE antes de restaurar\n" -#: pg_restore.c:590 +#: pg_restore.c:603 #, c-format msgid "" "\n" @@ -3160,7 +3096,7 @@ msgstr "" "Las opciones -I, -n, -N, -P, -t, -T, y --section pueden ser combinadas y especificadas\n" "varias veces para seleccionar varios objetos.\n" -#: pg_restore.c:593 +#: pg_restore.c:606 #, c-format msgid "" "\n" @@ -3170,3 +3106,83 @@ msgstr "" "\n" "Si no se especifica un archivo de entrada, se usa la entrada estándar.\n" "\n" + +#, c-format +#~ msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#~ msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" + +#, c-format +#~ msgid "options -s/--schema-only and --statistics-only cannot be used together" +#~ msgstr "las opciones -s/--schema-only y --statistics-only no pueden usarse juntas" + +#, c-format +#~ msgid "options -a/--data-only and --statistics-only cannot be used together" +#~ msgstr "las opciones -a/--data-only y /--statistics-only no pueden usarse juntas" + +#, c-format +#~ msgid "options -a/--data-only and --no-data cannot be used together" +#~ msgstr "las opciones -a/--data-only y --no-data no pueden usarse juntas" + +#, c-format +#~ msgid "options -s/--schema-only and --no-schema cannot be used together" +#~ msgstr "las opciones -s/--schema-only y --no-data no pueden usarse juntas" + +#, c-format +#~ msgid "options --statistics-only and --no-statistics cannot be used together" +#~ msgstr "las opciones --statistics-only y --no-statistics no pueden usarse juntas" + +#, c-format +#~ msgid "options --statistics and --no-statistics cannot be used together" +#~ msgstr "las opciones --statistics y --no-statistics no pueden usarse juntas" + +#, c-format +#~ msgid "options -s/--schema-only and --include-foreign-data cannot be used together" +#~ msgstr "las opciones -s/--schema-only y --include-foreign-data no pueden usarse juntas" + +#, c-format +#~ msgid "options -c/--clean and -a/--data-only cannot be used together" +#~ msgstr "las opciones -c/--clean y -a/--data-only no pueden usarse juntas" + +#, c-format +#~ msgid "option --if-exists requires option -c/--clean" +#~ msgstr "la opción --if-exists requiere la opción -c/--clean" + +#, c-format +#~ msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" +#~ msgstr "la opción --on-conflict-do-nothing requiere una de las opciones --inserts, --rows-per-insert o --column-inserts" + +#, c-format +#~ msgid "option --restrict-key can only be used with --format=plain" +#~ msgstr "la opción --restrict-key sólo puede usarse con --format=plain" + +#, c-format +#~ msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" +#~ msgstr "la opción --exclude-database no puede ser usada junto con -g/--globals-only, -r/--roles-only o -t/--tablespaces-only" + +#, c-format +#~ msgid "options -g/--globals-only and -r/--roles-only cannot be used together" +#~ msgstr "las opciones -g/--globals-only y -r/--roles-only no pueden usarse juntas" + +#, c-format +#~ msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" +#~ msgstr "las opciones -g/--globals-only y -t/--tablespaces-only no pueden usarse juntas" + +#, c-format +#~ msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" +#~ msgstr "las opciones -r/--roles-only y -t/--tablespaces-only no pueden usarse juntas" + +#, c-format +#~ msgid "options -d/--dbname and -f/--file cannot be used together" +#~ msgstr "las opciones -d/--dbname y -f/--file no pueden usarse juntas" + +#, c-format +#~ msgid "options -d/--dbname and --restrict-key cannot be used together" +#~ msgstr "las opciones -d/--dbname y --restrict-key no pueden usarse juntas" + +#, c-format +#~ msgid "options -1/--single-transaction and --transaction-size cannot be used together" +#~ msgstr "las opciones -1/--single-transaction y --transaction-size no pueden usarse juntas" + +#, c-format +#~ msgid "options -C/--create and -1/--single-transaction cannot be used together" +#~ msgstr "las opciones -c/--clean y -1/--single-transaction no pueden usarse juntas" diff --git a/src/bin/pg_dump/po/ja.po b/src/bin/pg_dump/po/ja.po index 22df05aaf5f..ca25a03584b 100644 --- a/src/bin/pg_dump/po/ja.po +++ b/src/bin/pg_dump/po/ja.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_dump (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-10-10 15:48+0900\n" -"PO-Revision-Date: 2025-10-10 16:05+0900\n" +"POT-Creation-Date: 2025-12-09 09:39+0900\n" +"PO-Revision-Date: 2025-12-09 10:20+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -43,7 +43,7 @@ msgid "hint: " msgstr "ヒント: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: ../../common/compression.c:150 compress_gzip.c:441 compress_gzip.c:448 #: compress_io.c:108 compress_lz4.c:800 compress_lz4.c:807 compress_zstd.c:26 #: compress_zstd.c:32 #, c-format @@ -476,48 +476,48 @@ msgstr "数値配列\"%s\"のパースに失敗しました: 要素が多すぎ msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "数値配列\"%s\"のパースに失敗しました: 数値に不正な文字が含まれています" -#: compress_gzip.c:69 compress_gzip.c:183 +#: compress_gzip.c:78 compress_gzip.c:192 #, c-format msgid "could not initialize compression library: %s" msgstr "圧縮ライブラリを初期化できませんでした: %s" -#: compress_gzip.c:93 +#: compress_gzip.c:102 #, c-format msgid "could not close compression stream: %s" msgstr "圧縮ストリームをクローズできませんでした: %s" -#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 +#: compress_gzip.c:122 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "データを圧縮できませんでした: %s" -#: compress_gzip.c:199 compress_gzip.c:214 +#: compress_gzip.c:208 compress_gzip.c:223 #, c-format msgid "could not uncompress data: %s" msgstr "データを伸張できませんでした: %s" -#: compress_gzip.c:221 +#: compress_gzip.c:230 #, c-format msgid "could not close compression library: %s" msgstr "圧縮ライブラリをクローズできませんでした: %s" -#: compress_gzip.c:277 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 +#: compress_gzip.c:290 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 #, c-format msgid "could not read from input file: %s" msgstr "入力ファイルから読み込めませんでした: %s" -#: compress_gzip.c:294 compress_zstd.c:382 +#: compress_gzip.c:307 compress_zstd.c:382 #, c-format msgid "could not write to file: %s" msgstr "ファイルに書き込めませんでした: %s" -#: compress_gzip.c:310 compress_lz4.c:494 compress_none.c:94 +#: compress_gzip.c:323 compress_lz4.c:494 compress_none.c:94 #: compress_none.c:135 compress_zstd.c:315 pg_backup_custom.c:650 #, c-format msgid "could not read from input file: %m" msgstr "入力ファイルから読み込めませんでした: %m" -#: compress_gzip.c:312 compress_lz4.c:635 compress_none.c:137 +#: compress_gzip.c:325 compress_lz4.c:635 compress_none.c:137 #: compress_zstd.c:400 pg_backup_custom.c:648 pg_backup_directory.c:515 #: pg_backup_tar.c:740 pg_backup_tar.c:763 #, c-format @@ -604,13 +604,13 @@ msgstr "データを伸張できませんでした: %s" msgid "Password: " msgstr "パスワード: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 -#: pg_dump_sort.c:1466 pg_dump_sort.c:1486 +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:951 +#: pg_dump_sort.c:1467 pg_dump_sort.c:1487 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:514 +#: connectdb.c:157 pg_dumpall.c:520 #, c-format msgid "could not connect to database \"%s\"" msgstr "データベース\"%s\"へ接続できませんでした" @@ -635,17 +635,17 @@ msgstr "サーバーバージョンの不一致のため処理を中断します msgid "server version: %s; %s version: %s" msgstr "サーバーバージョン: %s、%s バージョン: %s" -#: connectdb.c:282 pg_dumpall.c:1784 +#: connectdb.c:282 pg_dumpall.c:1790 #, c-format msgid "executing %s" msgstr "%s を実行しています" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1796 #, c-format msgid "query failed: %s" msgstr "問い合わせが失敗しました: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1797 #, c-format msgid "Query was: %s" msgstr "問い合わせ: %s" @@ -920,7 +920,7 @@ msgstr "OID %uのラージオブジェクトをリストアしています" msgid "could not create large object %u: %s" msgstr "ラージオブジェクト %u を作成できませんでした: %s" -#: pg_backup_archiver.c:1525 pg_dump.c:4085 +#: pg_backup_archiver.c:1525 pg_dump.c:4099 #, c-format msgid "could not open large object %u: %s" msgstr "ラージオブジェクト %u をオープンできませんでした: %s" @@ -948,7 +948,7 @@ msgstr "TOCファイルをクローズできませんでした: %m" #: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 #: pg_backup_directory.c:550 pg_backup_directory.c:616 -#: pg_backup_directory.c:634 pg_dumpall.c:548 +#: pg_backup_directory.c:634 pg_dumpall.c:554 #, c-format msgid "could not open output file \"%s\": %m" msgstr "出力ファイル\"%s\"をオープンできませんでした: %m" @@ -1358,7 +1358,7 @@ msgstr "PQputCopyEnd からエラーが返されました: %s" msgid "COPY failed for table \"%s\": %s" msgstr "テーブル\"%s\"へのコピーに失敗しました: %s" -#: pg_backup_db.c:460 pg_dump.c:2458 +#: pg_backup_db.c:460 pg_dump.c:2472 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "ファイル\"%s\"をCOPY中に想定していない余分な結果がありました" @@ -1509,9 +1509,9 @@ msgid "unrecognized section name: \"%s\"" msgstr "認識不可のセクション名: \"%s\"" #: pg_backup_utils.c:57 pg_dump.c:799 pg_dump.c:816 pg_dumpall.c:385 -#: pg_dumpall.c:395 pg_dumpall.c:403 pg_dumpall.c:411 pg_dumpall.c:418 -#: pg_dumpall.c:428 pg_dumpall.c:530 pg_restore.c:326 pg_restore.c:342 -#: pg_restore.c:356 +#: pg_dumpall.c:395 pg_dumpall.c:405 pg_dumpall.c:414 pg_dumpall.c:422 +#: pg_dumpall.c:434 pg_dumpall.c:536 pg_restore.c:326 pg_restore.c:342 +#: pg_restore.c:357 #, c-format msgid "Try \"%s --help\" for more information." msgstr "詳細は\"%s --help\"を実行してください。" @@ -1526,127 +1526,88 @@ msgstr "on_exit_nicelyスロットが足りません" msgid "too many command-line arguments (first is \"%s\")" msgstr "コマンドライン引数が多すぎます(先頭は\"%s\")" -#: pg_dump.c:826 pg_restore.c:380 -#, c-format -msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgstr "-s/--schema-only と -a/--data-only オプションは同時には使用できません" - -#: pg_dump.c:828 pg_restore.c:382 -#, c-format -msgid "options -s/--schema-only and --statistics-only cannot be used together" -msgstr "-s/--schema-only と--statistics-only オプションは同時には使用できません" - -#: pg_dump.c:830 pg_restore.c:384 -#, c-format -msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "-a/--data-only と --statistics-only オプションは同時には使用できません" - -#: pg_dump.c:834 pg_restore.c:388 -#, c-format -msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "-a/--data-only と --no-data オプションは同時には使用できません" - -#: pg_dump.c:836 pg_restore.c:390 -#, c-format -msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "-s/--schema-only と --no-schema オプションは同時には使用できません" - -#: pg_dump.c:838 pg_restore.c:392 -#, c-format -msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "オプション --statistics-only と --no-statistics とは同時には使用できません" - -#: pg_dump.c:842 pg_restore.c:396 -#, c-format -msgid "options --statistics and --no-statistics cannot be used together" -msgstr "オプション --statistics と --no-statistics とは同時には使用できません" - -#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#: pg_dump.c:826 pg_dump.c:829 pg_dump.c:832 pg_dump.c:837 pg_dump.c:840 +#: pg_dump.c:843 pg_dump.c:848 pg_dump.c:853 pg_dump.c:856 pg_dump.c:860 +#: pg_dump.c:868 pg_dumpall.c:412 pg_dumpall.c:420 pg_dumpall.c:432 +#: pg_restore.c:355 pg_restore.c:362 pg_restore.c:382 pg_restore.c:385 +#: pg_restore.c:388 pg_restore.c:393 pg_restore.c:396 pg_restore.c:399 +#: pg_restore.c:404 pg_restore.c:409 pg_restore.c:412 pg_restore.c:416 +#: pg_restore.c:420 pg_restore.c:428 #, c-format msgid "options %s and %s cannot be used together" msgstr "オプション %s と %s は同時には使用できません" -#: pg_dump.c:853 -#, c-format -msgid "options -s/--schema-only and --include-foreign-data cannot be used together" -msgstr "-s/--schema-only と --include-foreign-data オプションは同時には使用できません" - -#: pg_dump.c:856 -#, c-format -msgid "option --include-foreign-data is not supported with parallel backup" -msgstr "オプション --include-foreign-data はパラレルバックアップではサポートされません" - -#: pg_dump.c:859 pg_restore.c:407 +#: pg_dump.c:864 #, c-format -msgid "options -c/--clean and -a/--data-only cannot be used together" -msgstr "-c/--clean と -a/--data-only オプションは同時には使用できません" +msgid "option %s is not supported with parallel backup" +msgstr "オプション %s はパラレルバックアップではサポートされません" -#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 +#: pg_dump.c:872 pg_dumpall.c:427 pg_restore.c:460 #, c-format -msgid "option --if-exists requires option -c/--clean" -msgstr "--if-existsは -c/--clean の指定が必要です" +msgid "option %s requires option %s" +msgstr "%s オプション指定時は%sオプションも必要です" -#: pg_dump.c:882 +#: pg_dump.c:893 #, c-format -msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" -msgstr "--on-conflict-do-nothingオプションは--inserts、--rows-per-insert または --column-insertsを必要とします" +msgid "option %s requires option %s, %s, or %s" +msgstr "%s オプション指定時は%s, %s または %s オプションも必要です" -#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#: pg_dump.c:911 pg_dumpall.c:504 pg_restore.c:375 #, c-format msgid "could not generate restrict key" msgstr "制限キーを生成できませんでした" -#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#: pg_dump.c:913 pg_dumpall.c:506 pg_restore.c:377 #, c-format msgid "invalid restrict key" msgstr "不正な制限キー" -#: pg_dump.c:903 +#: pg_dump.c:916 #, c-format -msgid "option --restrict-key can only be used with --format=plain" -msgstr "オプション --restrict-key は --format=plain を指定したときのみ指定可能です" +msgid "option %s can only be used with %s" +msgstr "%s オプションは %s の指定時のみ使用できます" -#: pg_dump.c:925 +#: pg_dump.c:939 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "認識できない圧縮アルゴリズム: \"%s\"" -#: pg_dump.c:932 +#: pg_dump.c:946 #, c-format msgid "invalid compression specification: %s" msgstr "不正な圧縮指定: %s" -#: pg_dump.c:945 +#: pg_dump.c:959 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "圧縮オプション\"%s\"は現時点ではpg_dumpではサポートされていません" -#: pg_dump.c:957 +#: pg_dump.c:971 #, c-format msgid "parallel backup only supported by the directory format" msgstr "並列バックアップはディレクトリ形式でのみサポートされます" -#: pg_dump.c:1003 +#: pg_dump.c:1017 #, c-format msgid "last built-in OID is %u" msgstr "最後の組み込みOIDは%u" -#: pg_dump.c:1012 +#: pg_dump.c:1026 #, c-format msgid "no matching schemas were found" msgstr "マッチするスキーマが見つかりません" -#: pg_dump.c:1029 +#: pg_dump.c:1043 #, c-format msgid "no matching tables were found" msgstr "マッチするテーブルが見つかりません" -#: pg_dump.c:1057 +#: pg_dump.c:1071 #, c-format msgid "no matching extensions were found" msgstr "合致する機能拡張が見つかりません" -#: pg_dump.c:1251 +#: pg_dump.c:1265 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1655,17 +1616,17 @@ msgstr "" "%sは、ひとつのPostgreSQLデータベースをSQLスクリプトまたは他の形式でエクスポートします。\n" "\n" -#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 +#: pg_dump.c:1266 pg_dumpall.c:700 pg_restore.c:536 #, c-format msgid "Usage:\n" msgstr "使用方法:\n" -#: pg_dump.c:1253 +#: pg_dump.c:1267 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPTION]... [DBNAME]\n" -#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 +#: pg_dump.c:1269 pg_dumpall.c:703 pg_restore.c:539 #, c-format msgid "" "\n" @@ -1674,12 +1635,12 @@ msgstr "" "\n" "一般的なオプション;\n" -#: pg_dump.c:1256 +#: pg_dump.c:1270 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=ファイル名 出力ファイルまたはディレクトリの名前\n" -#: pg_dump.c:1257 +#: pg_dump.c:1271 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1688,22 +1649,22 @@ msgstr "" " -F, --format=c|d|t|p 出力ファイルの形式(custom, directory, tar, \n" " plain text(デフォルト))\n" -#: pg_dump.c:1259 +#: pg_dump.c:1273 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM ダンプ時に指定した数の並列ジョブを使用\n" -#: pg_dump.c:1260 pg_dumpall.c:699 +#: pg_dump.c:1274 pg_dumpall.c:705 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose 冗長モード\n" -#: pg_dump.c:1261 pg_dumpall.c:700 +#: pg_dump.c:1275 pg_dumpall.c:706 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version バージョン情報を表示して終了\n" -#: pg_dump.c:1262 +#: pg_dump.c:1276 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1712,29 +1673,29 @@ msgstr "" " -Z, --compress=方式[:詳細]\n" " 指定のとおり圧縮\n" -#: pg_dump.c:1264 pg_dumpall.c:701 +#: pg_dump.c:1278 pg_dumpall.c:707 #, c-format msgid " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr " --lock-wait-timeout=TIMEOUT テーブルロックをTIMEOUT待ってから失敗\n" -#: pg_dump.c:1265 pg_dumpall.c:733 +#: pg_dump.c:1279 pg_dumpall.c:739 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync 変更のディスクへの安全な書き出しを待機しない\n" -#: pg_dump.c:1266 +#: pg_dump.c:1280 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr "" " --sync-method=METHOD ファイルをディスクに同期させる方法を指定\n" "\n" -#: pg_dump.c:1267 pg_dumpall.c:702 +#: pg_dump.c:1281 pg_dumpall.c:708 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help このヘルプを表示して終了\n" -#: pg_dump.c:1269 pg_dumpall.c:703 +#: pg_dump.c:1283 pg_dumpall.c:709 #, c-format msgid "" "\n" @@ -1743,66 +1704,66 @@ msgstr "" "\n" "出力内容を制御するためのオプション:\n" -#: pg_dump.c:1270 pg_dumpall.c:704 +#: pg_dump.c:1284 pg_dumpall.c:710 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only データのみをダンプし、スキーマまたは統計情報をダンプしない\n" -#: pg_dump.c:1271 +#: pg_dump.c:1285 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr "" " -b, --large-objects ダンプにラージオブジェクトを含める\n" "\n" -#: pg_dump.c:1272 +#: pg_dump.c:1286 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (--large-objectsに同じ、非推奨)\n" -#: pg_dump.c:1273 +#: pg_dump.c:1287 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects ダンプにラージオブジェクトを含めない\n" -#: pg_dump.c:1274 +#: pg_dump.c:1288 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr "" " --no-blobs (--no-large-objectsに同じ、非推奨)\n" "\n" -#: pg_dump.c:1275 pg_restore.c:537 +#: pg_dump.c:1289 pg_restore.c:550 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean 再作成前にデータベースオブジェクトを整理(削除)\n" -#: pg_dump.c:1276 +#: pg_dump.c:1290 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr " -C, --create ダンプにデータベース生成用コマンドを含める\n" -#: pg_dump.c:1277 +#: pg_dump.c:1291 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=PATTERN 指定した機能拡張(群)のみをダンプ\n" -#: pg_dump.c:1278 pg_dumpall.c:706 +#: pg_dump.c:1292 pg_dumpall.c:712 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=ENCODING 指定した符号化方式でデータをダンプ\n" -#: pg_dump.c:1279 +#: pg_dump.c:1293 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=SCHEMA 指定したスキーマ(群)のみをダンプ\n" -#: pg_dump.c:1280 +#: pg_dump.c:1294 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=SCHEMA 指定したスキーマ(群)をダンプしない\n" -#: pg_dump.c:1281 +#: pg_dump.c:1295 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1811,58 +1772,58 @@ msgstr "" " -O, --no-owner プレインテキスト形式で、オブジェクト所有権の\n" " 復元を行わない\n" -#: pg_dump.c:1283 pg_dumpall.c:710 +#: pg_dump.c:1297 pg_dumpall.c:716 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr "" " -s, --schema-only スキーマのみをダンプし、データまたは統計情報を\n" " ダンプしない\n" -#: pg_dump.c:1284 +#: pg_dump.c:1298 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr "" " -S, --superuser=NAME プレインテキスト形式で使用するスーパーユーザーの\n" " 名前\n" -#: pg_dump.c:1285 +#: pg_dump.c:1299 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=PATTERN 指定したテーブル(群)のみをダンプ\n" -#: pg_dump.c:1286 +#: pg_dump.c:1300 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=PATTERN 指定したテーブル(群)をダンプしない\n" -#: pg_dump.c:1287 pg_dumpall.c:713 +#: pg_dump.c:1301 pg_dumpall.c:719 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges 権限(grant/revoke)をダンプしない\n" -#: pg_dump.c:1288 pg_dumpall.c:714 +#: pg_dump.c:1302 pg_dumpall.c:720 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade アップグレードユーティリティ専用\n" -#: pg_dump.c:1289 pg_dumpall.c:715 +#: pg_dump.c:1303 pg_dumpall.c:721 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr " --column-inserts 列名指定のINSERTコマンドでデータをダンプ\n" -#: pg_dump.c:1290 pg_dumpall.c:716 +#: pg_dump.c:1304 pg_dumpall.c:722 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr "" " --disable-dollar-quoting ドル記号による引用符付けを禁止、SQL標準の引用符\n" " 付けを使用\n" -#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 +#: pg_dump.c:1305 pg_dumpall.c:723 pg_restore.c:567 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr " --disable-triggers データのみの復元の際にトリガを無効化\n" -#: pg_dump.c:1292 +#: pg_dump.c:1306 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1871,12 +1832,12 @@ msgstr "" " --enable-row-security 行セキュリティを有効化(ユーザーがアクセス可能な\n" " 内容のみをダンプ)\n" -#: pg_dump.c:1294 +#: pg_dump.c:1308 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=PATTERN 指定した機能拡張(群)をダンプしない\n" -#: pg_dump.c:1295 +#: pg_dump.c:1309 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1887,12 +1848,12 @@ msgstr "" " 指定したテーブル(群)を子テーブルを含めて\n" " ダンプしない\n" -#: pg_dump.c:1298 +#: pg_dump.c:1312 #, c-format msgid " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" msgstr " --exclude-table-data=PATTERN 指定したテーブル(群)のデータをダンプしない\n" -#: pg_dump.c:1299 +#: pg_dump.c:1313 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1903,12 +1864,12 @@ msgstr "" " 指定したテーブル(群)のデータを子テーブルを含めて\n" " ダンプしない\n" -#: pg_dump.c:1302 pg_dumpall.c:719 +#: pg_dump.c:1316 pg_dumpall.c:725 #, c-format msgid " --extra-float-digits=NUM override default setting for extra_float_digits\n" msgstr " --extra-float-digits=NUM extra_float_digitsの設定を上書きする\n" -#: pg_dump.c:1303 +#: pg_dump.c:1317 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1917,12 +1878,12 @@ msgstr "" " --filter=FILENAME オブジェクトやデータの指定や除外を\n" " FILENAMEに記述された式をもとに行う\n" -#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 +#: pg_dump.c:1319 pg_dumpall.c:727 pg_restore.c:571 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists オブジェクト削除の際に IF EXISTS を使用\n" -#: pg_dump.c:1306 +#: pg_dump.c:1320 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1933,133 +1894,133 @@ msgstr "" " PATTERNに合致する外部サーバー上の外部テーブルの\n" " データを含める\n" -#: pg_dump.c:1309 pg_dumpall.c:722 +#: pg_dump.c:1323 pg_dumpall.c:728 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts COPYではなくINSERTコマンドでデータをダンプ\n" -#: pg_dump.c:1310 pg_dumpall.c:723 +#: pg_dump.c:1324 pg_dumpall.c:729 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root 子テーブルをルートテーブル経由でロードする\n" -#: pg_dump.c:1311 pg_dumpall.c:724 +#: pg_dump.c:1325 pg_dumpall.c:730 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments コメントコマンドをダンプしない\n" -#: pg_dump.c:1312 pg_dumpall.c:725 +#: pg_dump.c:1326 pg_dumpall.c:731 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data データをダンプしない\n" -#: pg_dump.c:1313 pg_dumpall.c:726 +#: pg_dump.c:1327 pg_dumpall.c:732 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies 行セキュリティポリシーをダンプしない\n" -#: pg_dump.c:1314 pg_dumpall.c:727 +#: pg_dump.c:1328 pg_dumpall.c:733 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications パブリケーションをダンプしない\n" -#: pg_dump.c:1315 pg_dumpall.c:729 +#: pg_dump.c:1329 pg_dumpall.c:735 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema スキーマをダンプしない\n" -#: pg_dump.c:1316 pg_dumpall.c:730 +#: pg_dump.c:1330 pg_dumpall.c:736 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels セキュリティラベルの割り当てをダンプしない\n" -#: pg_dump.c:1317 pg_dumpall.c:731 +#: pg_dump.c:1331 pg_dumpall.c:737 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics 統計情報をダンプしない\n" -#: pg_dump.c:1318 pg_dumpall.c:732 +#: pg_dump.c:1332 pg_dumpall.c:738 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions サブスクリプションをダンプしない\n" -#: pg_dump.c:1319 pg_dumpall.c:734 +#: pg_dump.c:1333 pg_dumpall.c:740 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method テーブルアクセスメソッドをダンプしない\n" -#: pg_dump.c:1320 pg_dumpall.c:735 +#: pg_dump.c:1334 pg_dumpall.c:741 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces テーブルスペースの割り当てをダンプしない\n" -#: pg_dump.c:1321 pg_dumpall.c:736 +#: pg_dump.c:1335 pg_dumpall.c:742 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression TOAST圧縮方式をダンプしない\n" -#: pg_dump.c:1322 pg_dumpall.c:737 +#: pg_dump.c:1336 pg_dumpall.c:743 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data 非ログテーブルのデータをダンプしない\n" -#: pg_dump.c:1323 pg_dumpall.c:738 +#: pg_dump.c:1337 pg_dumpall.c:744 #, c-format msgid " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n" msgstr " --on-conflict-do-nothing INSERTコマンドにON CONFLICT DO NOTHINGを付加する\n" -#: pg_dump.c:1324 pg_dumpall.c:739 +#: pg_dump.c:1338 pg_dumpall.c:745 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr "" " --quote-all-identifiers すべての識別子をキーワードでなかったとしても\n" " 引用符で囲む\n" -#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#: pg_dump.c:1339 pg_dumpall.c:746 pg_restore.c:584 #, c-format msgid " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" msgstr " --restrict-key=RESTRICT_KEY \\restrict メタコマンドのキーに指定文字列を使う\n" -#: pg_dump.c:1326 pg_dumpall.c:741 +#: pg_dump.c:1340 pg_dumpall.c:747 #, c-format msgid " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" msgstr " --rows-per-insert=NROWS INSERT毎の行数; --insertsを暗黙的に指定する\n" -#: pg_dump.c:1327 +#: pg_dump.c:1341 #, c-format msgid " --section=SECTION dump named section (pre-data, data, or post-data)\n" msgstr "" " --section=SECTION 指定したセクション(pre-data、data または\n" " post-data)をダンプする\n" -#: pg_dump.c:1328 pg_dumpall.c:742 +#: pg_dump.c:1342 pg_dumpall.c:748 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data ダンプにシーケンスデータを含める\n" -#: pg_dump.c:1329 +#: pg_dump.c:1343 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr " --serializable-deferrable ダンプを異常なく実行できるようになるまで待機\n" -#: pg_dump.c:1330 +#: pg_dump.c:1344 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT ダンプに指定のスナップショットを使用する\n" -#: pg_dump.c:1331 pg_dumpall.c:743 +#: pg_dump.c:1345 pg_dumpall.c:749 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics 統計情報をダンプする\n" -#: pg_dump.c:1332 pg_dumpall.c:744 +#: pg_dump.c:1346 pg_dumpall.c:750 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr "" " --statistics-only 統計情報のみをダンプし、スキーマまたはデータを\n" " ダンプしない\n" -#: pg_dump.c:1333 pg_restore.c:575 +#: pg_dump.c:1347 pg_restore.c:588 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2068,7 +2029,7 @@ msgstr "" " --strict-names テーブル/スキーマの対象パターンが最低でも\n" " 一つの実体にマッチすることを必須とする\n" -#: pg_dump.c:1335 +#: pg_dump.c:1349 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2077,7 +2038,7 @@ msgstr "" " --table-and-children=PATTERN 指定したテーブル(群)のみを子テーブル\n" " を含めてダンプ\n" -#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 +#: pg_dump.c:1351 pg_dumpall.c:751 pg_restore.c:591 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2088,7 +2049,7 @@ msgstr "" " 所有者をセットする際、ALTER OWNERコマンドの代わり\n" " にSET SESSION AUTHORIZATIONコマンドを使用する\n" -#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 +#: pg_dump.c:1355 pg_dumpall.c:755 pg_restore.c:595 #, c-format msgid "" "\n" @@ -2097,46 +2058,46 @@ msgstr "" "\n" "接続オプション:\n" -#: pg_dump.c:1342 +#: pg_dump.c:1356 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=DBNAME ダンプするデータベース\n" -#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 +#: pg_dump.c:1357 pg_dumpall.c:757 pg_restore.c:596 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=HOSTNAME データベースサーバーのホストまたはソケット\n" " ディレクトリ\n" -#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 +#: pg_dump.c:1358 pg_dumpall.c:759 pg_restore.c:597 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT データベースサーバーのポート番号\n" -#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 +#: pg_dump.c:1359 pg_dumpall.c:760 pg_restore.c:598 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NAME 指定したデータベースユーザーで接続\n" -#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 +#: pg_dump.c:1360 pg_dumpall.c:761 pg_restore.c:599 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password パスワード入力を要求しない\n" -#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 +#: pg_dump.c:1361 pg_dumpall.c:762 pg_restore.c:600 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr "" " -W, --password パスワードプロンプトを強制表示\n" " (自動的に表示されるはず)\n" -#: pg_dump.c:1348 pg_dumpall.c:757 +#: pg_dump.c:1362 pg_dumpall.c:763 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLENAME ダンプの前に SET ROLE を行う\n" -#: pg_dump.c:1350 +#: pg_dump.c:1364 #, c-format msgid "" "\n" @@ -2148,524 +2109,524 @@ msgstr "" "データベース名が指定されなかった場合、環境変数PGDATABASEが使用されます\n" "\n" -#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 +#: pg_dump.c:1366 pg_dumpall.c:767 pg_restore.c:607 #, c-format msgid "Report bugs to <%s>.\n" msgstr "バグは<%s>に報告してください。\n" -#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 +#: pg_dump.c:1367 pg_dumpall.c:768 pg_restore.c:608 #, c-format msgid "%s home page: <%s>\n" msgstr "%s ホームページ: <%s>\n" -#: pg_dump.c:1372 pg_dumpall.c:560 +#: pg_dump.c:1386 pg_dumpall.c:566 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "不正なクライアントエンコーディング\"%s\"が指定されました" -#: pg_dump.c:1520 +#: pg_dump.c:1534 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "スタンバイサーバーからの並列ダンプはこのサーバーバージョンではサポートされません" -#: pg_dump.c:1585 +#: pg_dump.c:1599 #, c-format msgid "invalid output format \"%s\" specified" msgstr "不正な出力形式\"%s\"が指定されました" -#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 +#: pg_dump.c:1640 pg_dump.c:1696 pg_dump.c:1749 pg_dumpall.c:1594 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "修飾名が不適切です(ドット区切りの名前が多すぎます): %s" -#: pg_dump.c:1634 +#: pg_dump.c:1648 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "パターン\"%s\"にマッチするスキーマが見つかりません" -#: pg_dump.c:1687 +#: pg_dump.c:1701 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "パターン\"%s\"に合致する機能拡張が見つかりません" -#: pg_dump.c:1740 +#: pg_dump.c:1754 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "パターン\"%s\"にマッチする外部サーバーが見つかりません" -#: pg_dump.c:1811 +#: pg_dump.c:1825 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "リレーション名が不適切です(ドット区切りの名前が多すぎます): %s" -#: pg_dump.c:1833 +#: pg_dump.c:1847 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "パターン \"%s\"にマッチするテーブルが見つかりません" -#: pg_dump.c:1860 +#: pg_dump.c:1874 #, c-format msgid "You are currently not connected to a database." msgstr "現在データベースに接続していません。" -#: pg_dump.c:1863 +#: pg_dump.c:1877 #, c-format msgid "cross-database references are not implemented: %s" msgstr "データベース間の参照は実装されていません: %s" -#: pg_dump.c:2329 +#: pg_dump.c:2343 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "テーブル \"%s.%s\"の内容をダンプしています" -#: pg_dump.c:2439 +#: pg_dump.c:2453 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "テーブル\"%s\"の内容のダンプに失敗: PQgetCopyData()が失敗しました。" -#: pg_dump.c:2440 pg_dump.c:2450 +#: pg_dump.c:2454 pg_dump.c:2464 #, c-format msgid "Error message from server: %s" msgstr "サーバーのエラーメッセージ: %s" -#: pg_dump.c:2441 pg_dump.c:2451 +#: pg_dump.c:2455 pg_dump.c:2465 #, c-format msgid "Command was: %s" msgstr "コマンド: %s" -#: pg_dump.c:2449 +#: pg_dump.c:2463 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "テーブル\"%s\"の内容のダンプに失敗: PQgetResult()が失敗しました。" -#: pg_dump.c:2540 +#: pg_dump.c:2554 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "テーブル\"%s\"から取得したフィールドの数が間違っています" -#: pg_dump.c:3258 +#: pg_dump.c:3272 #, c-format msgid "saving database definition" msgstr "データベース定義を保存しています" -#: pg_dump.c:3373 +#: pg_dump.c:3387 #, c-format msgid "unrecognized locale provider: %s" msgstr "認識できない照合順序プロバイダ: %s" -#: pg_dump.c:3734 +#: pg_dump.c:3748 #, c-format msgid "saving encoding = %s" msgstr "encoding = %s を保存しています" -#: pg_dump.c:3759 +#: pg_dump.c:3773 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "\"standard_conforming_strings = %s\" を保存しています" -#: pg_dump.c:3798 +#: pg_dump.c:3812 #, c-format msgid "could not parse result of current_schemas()" msgstr "current_schemas()の結果をパースできませんでした" -#: pg_dump.c:3817 +#: pg_dump.c:3831 #, c-format msgid "saving \"search_path = %s\"" msgstr "\"search_path = %s\" を保存しています" -#: pg_dump.c:3853 +#: pg_dump.c:3867 #, c-format msgid "reading large objects" msgstr "ラージオブジェクトを読み込んでいます" -#: pg_dump.c:4074 +#: pg_dump.c:4088 #, c-format msgid "saving large objects \"%s\"" msgstr "ラージオブジェクト\"%s\"を保存しています" -#: pg_dump.c:4095 +#: pg_dump.c:4109 #, c-format msgid "error reading large object %u: %s" msgstr "ラージオブジェクト %u を読み取り中にエラーがありました: %s" -#: pg_dump.c:4203 +#: pg_dump.c:4217 #, c-format msgid "reading row-level security policies" msgstr "行レベルセキュリティポリシーを読み取ります" -#: pg_dump.c:4344 +#: pg_dump.c:4358 #, c-format msgid "unexpected policy command type: %c" msgstr "想定外のポリシコマンドタイプ: \"%c\"" -#: pg_dump.c:4786 pg_dump.c:5343 pg_dump.c:7972 pg_dump.c:13450 pg_dump.c:19648 -#: pg_dump.c:19650 pg_dump.c:20282 +#: pg_dump.c:4800 pg_dump.c:5357 pg_dump.c:7986 pg_dump.c:13466 pg_dump.c:19664 +#: pg_dump.c:19666 pg_dump.c:20298 #, c-format msgid "could not parse %s array" msgstr "%s配列をパースできませんでした" -#: pg_dump.c:5002 +#: pg_dump.c:5016 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "現在のユーザーがスーパーユーザーではないため、サブスクリプションはダンプされません" -#: pg_dump.c:5206 +#: pg_dump.c:5220 #, c-format msgid "subscription with OID %u does not exist" msgstr "OID %uのサブスクリプションは存在しません" -#: pg_dump.c:5213 +#: pg_dump.c:5227 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "健全性検査に失敗しました、OID %uのテーブルがありません" -#: pg_dump.c:5799 +#: pg_dump.c:5813 #, c-format msgid "could not find parent extension for %s %s" msgstr "%s %sの親となる機能拡張がありませんでした" -#: pg_dump.c:5937 +#: pg_dump.c:5951 #, c-format msgid "schema with OID %u does not exist" msgstr "OID %uのスキーマは存在しません" -#: pg_dump.c:6994 +#: pg_dump.c:7008 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "リレーション種別 '%c' の統計情報はダンプできません" -#: pg_dump.c:7506 pg_dump.c:18987 +#: pg_dump.c:7520 pg_dump.c:19003 #, c-format msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found" msgstr "健全性検査に失敗しました、OID %2$u であるシーケンスの OID %1$u である親テーブルがありません" -#: pg_dump.c:7651 +#: pg_dump.c:7665 #, c-format msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found" msgstr "健全性検査に失敗しました、pg_partitioned_tableにあるテーブルOID %u が見つかりません" -#: pg_dump.c:7916 pg_dump.c:8209 pg_dump.c:8672 pg_dump.c:9317 pg_dump.c:9456 -#: pg_dump.c:9601 pg_dump.c:9701 +#: pg_dump.c:7930 pg_dump.c:8223 pg_dump.c:8686 pg_dump.c:9333 pg_dump.c:9472 +#: pg_dump.c:9617 pg_dump.c:9717 #, c-format msgid "unrecognized table OID %u" msgstr "認識できないテーブルOID %u" -#: pg_dump.c:7920 +#: pg_dump.c:7934 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "テーブル\"%s\"に対する想定外のインデックスデータ" -#: pg_dump.c:8459 +#: pg_dump.c:8473 #, c-format msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found" msgstr "健全性検査に失敗しました、OID %2$u であるpg_rewriteエントリのOID %1$u である親テーブルが見つかりません" -#: pg_dump.c:9321 +#: pg_dump.c:9337 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "テーブル\"%s\"に対する想定外の列データ" -#: pg_dump.c:9353 +#: pg_dump.c:9369 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "テーブル\"%s\"の列番号が不正です" -#: pg_dump.c:9418 +#: pg_dump.c:9434 #, c-format msgid "finding table default expressions" msgstr "テーブルのデフォルト式を探しています" -#: pg_dump.c:9460 +#: pg_dump.c:9476 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "テーブル\"%2$s\"用のadnumの値%1$dが不正です" -#: pg_dump.c:9553 +#: pg_dump.c:9569 #, c-format msgid "finding invalid not-null constraints" msgstr "未検証の非NULL制約を探しています" -#: pg_dump.c:9651 +#: pg_dump.c:9667 #, c-format msgid "finding table check constraints" msgstr "テーブルのチェック制約を探しています" -#: pg_dump.c:9705 +#: pg_dump.c:9721 #, c-format msgid "expected %d check constraint on table \"%s\" but found %d" msgid_plural "expected %d check constraints on table \"%s\" but found %d" msgstr[0] "テーブル\"%2$s\"で想定する検査制約は%1$d個でしたが、%3$dありました" -#: pg_dump.c:9709 +#: pg_dump.c:9725 #, c-format msgid "The system catalogs might be corrupted." msgstr "システムカタログが破損している可能性があります。" -#: pg_dump.c:10514 +#: pg_dump.c:10530 #, c-format msgid "role with OID %u does not exist" msgstr "OID が %u であるロールは存在しません" -#: pg_dump.c:10626 pg_dump.c:10655 +#: pg_dump.c:10642 pg_dump.c:10671 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "非サポートのpg_init_privsエントリ: %u %u %d" -#: pg_dump.c:10951 +#: pg_dump.c:10967 #, c-format msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" msgstr "統計情報が異常な順序でダンプされています (現在: %d %s %s, 想定: %d %s %s)" -#: pg_dump.c:11092 +#: pg_dump.c:11108 #, c-format msgid "unexpected null attname" msgstr "attname が NULL です" -#: pg_dump.c:11121 +#: pg_dump.c:11137 #, c-format msgid "could not find index attname \"%s\"" msgstr "\"%s\" というインデックスのattnameは見つかりませんでした" -#: pg_dump.c:11607 +#: pg_dump.c:11623 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "ラージオブジェクト\"%s\"のメタデータがありません" -#: pg_dump.c:11893 +#: pg_dump.c:11909 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "データ型\"%s\"のtyptypeが不正なようです" -#: pg_dump.c:13521 +#: pg_dump.c:13537 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "関数\"%s\"のprovolatileの値が認識できません" -#: pg_dump.c:13571 pg_dump.c:15467 +#: pg_dump.c:13587 pg_dump.c:15483 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "関数\"%s\"のproparallel値が認識できません" -#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 +#: pg_dump.c:13717 pg_dump.c:13823 pg_dump.c:13830 #, c-format msgid "could not find function definition for function with OID %u" msgstr "OID %uの関数の関数定義が見つかりませんでした" -#: pg_dump.c:13740 +#: pg_dump.c:13756 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "pg_cast.castfuncまたはpg_cast.castmethodフィールドの値がおかしいです" -#: pg_dump.c:13743 +#: pg_dump.c:13759 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "pg_cast.castmethod フィールドの値がおかしいです" -#: pg_dump.c:13833 +#: pg_dump.c:13849 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "おかしな変換定義、trffromsql か trftosql の少なくとも一方は非ゼロであるはずです" -#: pg_dump.c:13850 +#: pg_dump.c:13866 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "pg_cast.castmethod フィールドの値がおかしいです" -#: pg_dump.c:13871 +#: pg_dump.c:13887 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "pg_cast.castmethod フィールドの値がおかしいです" -#: pg_dump.c:14016 +#: pg_dump.c:14032 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "後置演算子は今後サポートされません(演算子\"%s\")" -#: pg_dump.c:14186 +#: pg_dump.c:14202 #, c-format msgid "could not find operator with OID %s" msgstr "OID %sの演算子がありませんでした" -#: pg_dump.c:14254 +#: pg_dump.c:14270 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "アクセスメソッド\"%2$s\"の不正なタイプ\"%1$c\"" -#: pg_dump.c:14928 pg_dump.c:14996 +#: pg_dump.c:14944 pg_dump.c:15012 #, c-format msgid "unrecognized collation provider: %s" msgstr "認識できないの照合順序プロバイダ: %s" -#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 -#: pg_dump.c:14980 +#: pg_dump.c:14953 pg_dump.c:14960 pg_dump.c:14971 pg_dump.c:14981 +#: pg_dump.c:14996 #, c-format msgid "invalid collation \"%s\"" msgstr "不正な照合順序\"%s\"" -#: pg_dump.c:15386 +#: pg_dump.c:15402 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "集約\"%s\"のaggfinalmodifyの値が識別できません" -#: pg_dump.c:15442 +#: pg_dump.c:15458 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "集約\"%s\"のaggmfinalmodifyの値が識別できません" -#: pg_dump.c:16162 +#: pg_dump.c:16178 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "デフォルト権限設定中の認識できないオブジェクト型: %d" -#: pg_dump.c:16178 +#: pg_dump.c:16194 #, c-format msgid "could not parse default ACL list (%s)" msgstr "デフォルトの ACL リスト(%s)をパースできませんでした" -#: pg_dump.c:16262 +#: pg_dump.c:16278 #, c-format msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "オブジェクト\"%3$s\"(%4$s)の初期ACLリスト(%1$s)またはデフォルト値(%2$s)をパースできませんでした" -#: pg_dump.c:16287 +#: pg_dump.c:16303 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "オブジェクト\"%3$s\"(%4$s)のACLリスト(%1$s)またはデフォルト値(%2$s)をパースできませんでした" -#: pg_dump.c:16830 +#: pg_dump.c:16846 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "ビュー\"%s\"の定義を取り出すための問い合わせがデータを返却しませんでした" -#: pg_dump.c:16833 +#: pg_dump.c:16849 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "ビュー\"%s\"の定義を取り出すための問い合わせが2つ以上の定義を返却しました" -#: pg_dump.c:16840 +#: pg_dump.c:16856 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "ビュー\"%s\"の定義が空のようです(長さが0)" -#: pg_dump.c:16925 +#: pg_dump.c:16941 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDSは今後サポートされません(テーブル\"%s\")" -#: pg_dump.c:18065 +#: pg_dump.c:18081 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "テーブル\"%2$s\"の列番号%1$dは不正です" -#: pg_dump.c:18143 +#: pg_dump.c:18159 #, c-format msgid "could not parse index statistic columns" msgstr "インデックス統計列をパースできませんでした" -#: pg_dump.c:18145 +#: pg_dump.c:18161 #, c-format msgid "could not parse index statistic values" msgstr "インデックス統計値をパースできませんでした" -#: pg_dump.c:18147 +#: pg_dump.c:18163 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "インデックス統計に対して列と値の数が合致しません" -#: pg_dump.c:18376 +#: pg_dump.c:18392 #, c-format msgid "missing index for constraint \"%s\"" msgstr "制約\"%s\"のインデックスが見つかりません" -#: pg_dump.c:18645 +#: pg_dump.c:18661 #, c-format msgid "unrecognized constraint type: %c" msgstr "制約のタイプが識別できません: %c" -#: pg_dump.c:18698 +#: pg_dump.c:18714 #, c-format msgid "unrecognized sequence type: %s" msgstr "認識されないシーケンスの型\"%s\"" -#: pg_dump.c:18830 pg_dump.c:19062 +#: pg_dump.c:18846 pg_dump.c:19078 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)" msgstr[0] "シーケンス\"%s\"のデータを得るための問い合わせが%d行返却しました(想定は1)" -#: pg_dump.c:18866 +#: pg_dump.c:18882 #, c-format msgid "unrecognized sequence type: %d" msgstr "認識されないシーケンスの型: %d" -#: pg_dump.c:19400 +#: pg_dump.c:19416 #, c-format msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned" msgstr "テーブル\"%2$s\"のルール\"%1$s\"を得るための問い合わせが失敗しました: 間違った行数が返却されました" -#: pg_dump.c:19553 +#: pg_dump.c:19569 #, c-format msgid "could not find referenced extension %u" msgstr "親の機能拡張%uが見つかりません" -#: pg_dump.c:19652 +#: pg_dump.c:19668 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "機能拡張に対して設定と条件の数が一致しません" -#: pg_dump.c:19784 +#: pg_dump.c:19800 #, c-format msgid "reading dependency data" msgstr "データの依存データを読み込んでいます" -#: pg_dump.c:19870 +#: pg_dump.c:19886 #, c-format msgid "no referencing object %u %u" msgstr "参照元オブジェクト%u %uがありません" -#: pg_dump.c:19881 +#: pg_dump.c:19897 #, c-format msgid "no referenced object %u %u" msgstr "参照先オブジェクト%u %uがありません" -#: pg_dump.c:20316 pg_dump.c:20354 pg_dumpall.c:1836 pg_restore.c:629 -#: pg_restore.c:675 +#: pg_dump.c:20332 pg_dump.c:20370 pg_dumpall.c:1842 pg_restore.c:642 +#: pg_restore.c:688 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "\"%2$s\"に対しては%1$sフィルターを指定できません" -#: pg_dump_sort.c:648 +#: pg_dump_sort.c:649 #, c-format msgid "invalid dumpId %d" msgstr "不正なdumpId %d" -#: pg_dump_sort.c:654 +#: pg_dump_sort.c:655 #, c-format msgid "invalid dependency %d" msgstr "不正な依存関係 %d" -#: pg_dump_sort.c:818 +#: pg_dump_sort.c:819 #, c-format msgid "could not identify dependency loop" msgstr "依存関係のループが見つかりませんでした" -#: pg_dump_sort.c:1462 +#: pg_dump_sort.c:1463 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" msgstr[0] "次のテーブルの中で外部キー制約の循環があります: " -#: pg_dump_sort.c:1467 +#: pg_dump_sort.c:1468 #, c-format msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints." msgstr "--disable-triggersを使用するか、制約を一時的に削除しないと、このダンプデータからのリストアはできない可能性があります。" -#: pg_dump_sort.c:1468 +#: pg_dump_sort.c:1469 #, c-format msgid "Consider using a full dump instead of a --data-only dump to avoid this problem." msgstr "この問題を回避するために--data-onlyダンプの代わりに完全なダンプを使用することを検討してください。" -#: pg_dump_sort.c:1480 +#: pg_dump_sort.c:1481 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "以下の項目の間の依存関係のループを解決できませんでした:" @@ -2682,25 +2643,10 @@ msgstr "\"%2$s\"がプログラム\"%1$s\"を見つけましたが、これは%3 #: pg_dumpall.c:402 #, c-format -msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" -msgstr "--exclude-database オプションは -g/--globals-only、-r/--roles-only もしくは -t/--tablespaces-only と一緒には使用できません" - -#: pg_dumpall.c:410 -#, c-format -msgid "options -g/--globals-only and -r/--roles-only cannot be used together" -msgstr "-g/--globals-onlyと-r/--roles-onlyオプションは同時に使用できません" - -#: pg_dumpall.c:417 -#, c-format -msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" -msgstr "-g/--globals-onlyと-t/--tablespaces-onlyオプションは同時に使用できません" - -#: pg_dumpall.c:427 -#, c-format -msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" -msgstr "-r/--roles-onlyと-t/--tablespaces-onlyオプションは同時に使用できません" +msgid "option %s cannot be used together with %s, %s, or %s" +msgstr "オプション %s は %s, %s および %s と同時には使用できません" -#: pg_dumpall.c:528 +#: pg_dumpall.c:534 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2709,7 +2655,7 @@ msgstr "" "\"postgres\"または\"template1\"データベースに接続できませんでした\n" "代わりのデータベースを指定してください。" -#: pg_dumpall.c:693 +#: pg_dumpall.c:699 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2718,80 +2664,80 @@ msgstr "" "%sは、PostgreSQLデータベースクラスタをSQLスクリプト形式でエクスポートします。\n" "\n" -#: pg_dumpall.c:695 +#: pg_dumpall.c:701 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [OPTION]...\n" -#: pg_dumpall.c:698 +#: pg_dumpall.c:704 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=ファイル名 出力ファイル名\n" -#: pg_dumpall.c:705 +#: pg_dumpall.c:711 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean 再作成前にデータベースを整理(削除)\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:713 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr "" " -g, --globals-only グローバルオブジェクトのみをダンプし、\n" " データベースをダンプしない\n" -#: pg_dumpall.c:708 pg_restore.c:546 +#: pg_dumpall.c:714 pg_restore.c:559 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner オブジェクトの所有権の復元を省略\n" -#: pg_dumpall.c:709 +#: pg_dumpall.c:715 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr "" " -r, --roles-only ロールのみをダンプ。\n" " データベースとテーブル空間をダンプしない\n" -#: pg_dumpall.c:711 +#: pg_dumpall.c:717 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr "" " -S, --superuser=NAME ダンプで使用するスーパーユーザーのユーザー名を\n" " 指定\n" -#: pg_dumpall.c:712 +#: pg_dumpall.c:718 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr "" " -t, --tablespaces-only テーブル空間のみをダンプ。データベースとロールを\n" " ダンプしない\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:724 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr " --exclude-database=PATTERN PATTERNに合致する名前のデータベースを除外\n" -#: pg_dumpall.c:720 +#: pg_dumpall.c:726 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " --filter=FILENAME FILENAMEで指定された式に基づいてデータベースを除外する\n" -#: pg_dumpall.c:728 +#: pg_dumpall.c:734 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords ロールのパスワードをダンプしない\n" -#: pg_dumpall.c:750 +#: pg_dumpall.c:756 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=CONSTR 接続文字列を用いた接続\n" -#: pg_dumpall.c:752 +#: pg_dumpall.c:758 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAME 代替のデフォルトデータベースを指定\n" -#: pg_dumpall.c:759 +#: pg_dumpall.c:765 #, c-format msgid "" "\n" @@ -2803,58 +2749,58 @@ msgstr "" "-f/--file が指定されない場合、SQLスクリプトは標準出力に書き出されます。\n" "\n" -#: pg_dumpall.c:904 +#: pg_dumpall.c:910 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "\"pg_\"で始まるロール名はスキップされました(%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#: pg_dumpall.c:1127 pg_dumpall.c:1185 pg_dumpall.c:1194 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "ロール %s に対する pg_auth_members エントリがありましたが、このロールは存在しません" -#: pg_dumpall.c:1154 +#: pg_dumpall.c:1160 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "ロール\"%s\"のメンバーシップに対して正当なダンプ順序が見つかりませんでした" -#: pg_dumpall.c:1309 +#: pg_dumpall.c:1315 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "パラメータ\"%2$s\"のACLリスト(%1$s)をパースできませんでした" -#: pg_dumpall.c:1436 +#: pg_dumpall.c:1442 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "テーブル空間\"%2$s\"のACLリスト(%1$s)をパースできませんでした" -#: pg_dumpall.c:1650 +#: pg_dumpall.c:1656 #, c-format msgid "excluding database \"%s\"" msgstr "データベース\"%s\"を除外します" -#: pg_dumpall.c:1654 +#: pg_dumpall.c:1660 #, c-format msgid "dumping database \"%s\"" msgstr "データベース\"%s\"をダンプしています" -#: pg_dumpall.c:1687 +#: pg_dumpall.c:1693 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "データベース\"%s\"のダンプが失敗しました、終了します" -#: pg_dumpall.c:1693 +#: pg_dumpall.c:1699 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "出力ファイル\"%s\"を再オープンできませんでした: %m" -#: pg_dumpall.c:1737 +#: pg_dumpall.c:1743 #, c-format msgid "running \"%s\"" msgstr "\"%s\"を実行しています" -#: pg_dumpall.c:1856 +#: pg_dumpall.c:1862 msgid "unsupported filter object" msgstr "サポートされていないフィルターオブジェクト" @@ -2863,47 +2809,27 @@ msgstr "サポートされていないフィルターオブジェクト" msgid "one of -d/--dbname and -f/--file must be specified" msgstr "-d/--dbnameと-f/--fileのどちらか一方が指定されていなければなりません" -#: pg_restore.c:355 -#, c-format -msgid "options -d/--dbname and -f/--file cannot be used together" -msgstr "オプション-d/--dbnameと-f/--fileは同時に使用できません" - -#: pg_restore.c:361 -#, c-format -msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "オプション -d/--dbname と --restrict-key は同時に使用できません" - -#: pg_restore.c:410 -#, c-format -msgid "options -1/--single-transaction and --transaction-size cannot be used together" -msgstr "オプション -1/--single-transaction と --transaction-size とは同時には使用できません" - -#: pg_restore.c:417 -#, c-format -msgid "options -C/--create and -1/--single-transaction cannot be used together" -msgstr "オプション-C/--createと-1/--single-transactionとは同時には使用できません" - -#: pg_restore.c:421 +#: pg_restore.c:433 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "--single-transaction と複数ジョブは同時には指定できません" -#: pg_restore.c:467 +#: pg_restore.c:480 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "アーカイブ形式\"%s\"はサポートされていません、psqlを使ってください" -#: pg_restore.c:471 +#: pg_restore.c:484 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "アーカイブ形式\"%s\"が認識できません; \"c\"、\"d\"または\"t\"を指定してください" -#: pg_restore.c:509 +#: pg_restore.c:522 #, c-format msgid "errors ignored on restore: %d" msgstr "リストア中に無視されたエラー数: %d" -#: pg_restore.c:522 +#: pg_restore.c:535 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2912,49 +2838,49 @@ msgstr "" "%sはpg_dumpで作成したアーカイブからPostgreSQLデータベースを復元します。\n" "\n" -#: pg_restore.c:524 +#: pg_restore.c:537 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPTION]... [FILE]\n" -#: pg_restore.c:527 +#: pg_restore.c:540 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAME 接続するデータベース名\n" -#: pg_restore.c:528 +#: pg_restore.c:541 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILENAME 出力ファイル名(- で標準出力)\n" -#: pg_restore.c:529 +#: pg_restore.c:542 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr "" " -F, --format=c|d|t バックアップファイルの形式\n" " (自動的に設定されるはずです)\n" -#: pg_restore.c:530 +#: pg_restore.c:543 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list アーカイブのTOCの要約を表示\n" -#: pg_restore.c:531 +#: pg_restore.c:544 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose 冗長モード\n" -#: pg_restore.c:532 +#: pg_restore.c:545 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version バージョン情報を表示し、終了します\n" -#: pg_restore.c:533 +#: pg_restore.c:546 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help このヘルプを表示し、終了します\n" -#: pg_restore.c:535 +#: pg_restore.c:548 #, c-format msgid "" "\n" @@ -2963,32 +2889,32 @@ msgstr "" "\n" "リストア制御用のオプション:\n" -#: pg_restore.c:536 +#: pg_restore.c:549 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only データのみを復元。スキーマを復元しない\n" -#: pg_restore.c:538 +#: pg_restore.c:551 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create 対象のデータベースを作成\n" -#: pg_restore.c:539 +#: pg_restore.c:552 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error エラー時に終了。デフォルトは継続\n" -#: pg_restore.c:540 +#: pg_restore.c:553 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME 指名したインデックスを復元n\n" -#: pg_restore.c:541 +#: pg_restore.c:554 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr " -j, --jobs=NUM リストア時に指定した数の並列ジョブを使用\n" -#: pg_restore.c:542 +#: pg_restore.c:555 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -2997,57 +2923,57 @@ msgstr "" " -L, --use-list=FILENAME このファイルの内容に従って SELECT や\n" " 出力のソートを行います\n" -#: pg_restore.c:544 +#: pg_restore.c:557 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAME 指定したスキーマのオブジェクトのみを復元\n" -#: pg_restore.c:545 +#: pg_restore.c:558 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=NAME 指定したスキーマのオブジェクトは復元しない\n" -#: pg_restore.c:547 +#: pg_restore.c:560 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAME(args) 指名された関数を復元\n" -#: pg_restore.c:548 +#: pg_restore.c:561 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only スキーマのみを復元。データを復元しない\n" -#: pg_restore.c:549 +#: pg_restore.c:562 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr " -S, --superuser=NAME トリガを無効にするためのスーパーユーザーの名前\n" -#: pg_restore.c:550 +#: pg_restore.c:563 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NAME 指名したリレーション(テーブル、ビューなど)を復元\n" -#: pg_restore.c:551 +#: pg_restore.c:564 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME 指名したトリガを復元\n" -#: pg_restore.c:552 +#: pg_restore.c:565 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges アクセス権限(grant/revoke)の復元を省略\n" -#: pg_restore.c:553 +#: pg_restore.c:566 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction リストアを単一トランザクションで実行\n" -#: pg_restore.c:555 +#: pg_restore.c:568 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security 行セキュリティを有効にします\n" -#: pg_restore.c:556 +#: pg_restore.c:569 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3056,89 +2982,89 @@ msgstr "" " --filter=FILENAME オブジェクトの復元またはスキップをFILENAMEに\n" " 記述されている式を元に行う\n" -#: pg_restore.c:559 +#: pg_restore.c:572 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments コメントコマンドを復元しない\n" -#: pg_restore.c:560 +#: pg_restore.c:573 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data データを復元しない\n" -#: pg_restore.c:561 +#: pg_restore.c:574 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" " created\n" msgstr " --no-data-for-failed-tables 作成できなかったテーブルのデータは復元しない\n" -#: pg_restore.c:563 +#: pg_restore.c:576 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies 行セキュリティポリシーを復元しない\n" -#: pg_restore.c:564 +#: pg_restore.c:577 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications パブリケーションを復元しない\n" -#: pg_restore.c:565 +#: pg_restore.c:578 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema スキーマを復元しない\n" -#: pg_restore.c:566 +#: pg_restore.c:579 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels セキュリティラベルを復元しない\n" -#: pg_restore.c:567 +#: pg_restore.c:580 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics 統計情報を復元しない\n" -#: pg_restore.c:568 +#: pg_restore.c:581 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions サブスクリプションを復元しない\n" -#: pg_restore.c:569 +#: pg_restore.c:582 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method テーブルアクセスメソッドを復元しない\n" -#: pg_restore.c:570 +#: pg_restore.c:583 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces テーブル空間の割り当てを復元しない\n" -#: pg_restore.c:572 +#: pg_restore.c:585 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr " --section=SECTION 指定されたセクション(データ前部、データ、データ後部)を復元\n" -#: pg_restore.c:573 +#: pg_restore.c:586 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics 統計情報を復元する\n" -#: pg_restore.c:574 +#: pg_restore.c:587 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only 統計情報のみを復元、スキーマやデータを復元しない\n" -#: pg_restore.c:577 +#: pg_restore.c:590 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N Nオブジェクトごとにコミットします\n" -#: pg_restore.c:588 +#: pg_restore.c:601 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME リストアに先立って SET ROLE します\n" -#: pg_restore.c:590 +#: pg_restore.c:603 #, c-format msgid "" "\n" @@ -3149,7 +3075,7 @@ msgstr "" "オプション -I、-n、-N、-P、-t、-T および --section を組み合わせて複数回\n" "指定することで複数のオブジェクトを指定できます。\n" -#: pg_restore.c:593 +#: pg_restore.c:606 #, c-format msgid "" "\n" @@ -3240,6 +3166,18 @@ msgstr "" #~ msgid "option --exclude-database cannot be used together with -g/--globals-only" #~ msgstr "オプション --exclude-database は -g/--globals-only と一緒には使用できません" +#~ msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" +#~ msgstr "--exclude-database オプションは -g/--globals-only、-r/--roles-only もしくは -t/--tablespaces-only と一緒には使用できません" + +#~ msgid "option --if-exists requires option -c/--clean" +#~ msgstr "--if-existsは -c/--clean の指定が必要です" + +#~ msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" +#~ msgstr "--on-conflict-do-nothingオプションは--inserts、--rows-per-insert または --column-insertsを必要とします" + +#~ msgid "option --restrict-key can only be used with --format=plain" +#~ msgstr "オプション --restrict-key は --format=plain を指定したときのみ指定可能です" + #~ msgid "option -C/--create must be specified when restoring an archive created by pg_dumpall" #~ msgstr "pg_dumpallで作成されたアーカイブを復元する際には、-C/--create オプションの指定が必須です" @@ -3255,6 +3193,12 @@ msgstr "" #~ msgid "option -l/--list cannot be used when restoring an archive created by pg_dumpall" #~ msgstr "オプション -l/--list はpg_dumpallで作成されたアーカイブの復元では使用できません" +#~ msgid "options --statistics and --no-statistics cannot be used together" +#~ msgstr "オプション --statistics と --no-statistics とは同時には使用できません" + +#~ msgid "options --statistics-only and --no-statistics cannot be used together" +#~ msgstr "オプション --statistics-only と --no-statistics とは同時には使用できません" + #~ msgid "options --with-data and --no-data cannot be used together" #~ msgstr "--with-data と --no-data オプションは同時には使用できません" @@ -3264,6 +3208,48 @@ msgstr "" #~ msgid "options --with-statistics and --no-statistics cannot be used together" #~ msgstr "オプション --with-statistics と --no-statistics とは同時には使用できません" +#~ msgid "options -1/--single-transaction and --transaction-size cannot be used together" +#~ msgstr "オプション -1/--single-transaction と --transaction-size とは同時には使用できません" + +#~ msgid "options -C/--create and -1/--single-transaction cannot be used together" +#~ msgstr "オプション-C/--createと-1/--single-transactionとは同時には使用できません" + +#~ msgid "options -a/--data-only and --no-data cannot be used together" +#~ msgstr "-a/--data-only と --no-data オプションは同時には使用できません" + +#~ msgid "options -a/--data-only and --statistics-only cannot be used together" +#~ msgstr "-a/--data-only と --statistics-only オプションは同時には使用できません" + +#~ msgid "options -c/--clean and -a/--data-only cannot be used together" +#~ msgstr "-c/--clean と -a/--data-only オプションは同時には使用できません" + +#~ msgid "options -d/--dbname and --restrict-key cannot be used together" +#~ msgstr "オプション -d/--dbname と --restrict-key は同時に使用できません" + +#~ msgid "options -d/--dbname and -f/--file cannot be used together" +#~ msgstr "オプション-d/--dbnameと-f/--fileは同時に使用できません" + +#~ msgid "options -g/--globals-only and -r/--roles-only cannot be used together" +#~ msgstr "-g/--globals-onlyと-r/--roles-onlyオプションは同時に使用できません" + +#~ msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" +#~ msgstr "-g/--globals-onlyと-t/--tablespaces-onlyオプションは同時に使用できません" + +#~ msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" +#~ msgstr "-r/--roles-onlyと-t/--tablespaces-onlyオプションは同時に使用できません" + +#~ msgid "options -s/--schema-only and --include-foreign-data cannot be used together" +#~ msgstr "-s/--schema-only と --include-foreign-data オプションは同時には使用できません" + +#~ msgid "options -s/--schema-only and --no-schema cannot be used together" +#~ msgstr "-s/--schema-only と --no-schema オプションは同時には使用できません" + +#~ msgid "options -s/--schema-only and --statistics-only cannot be used together" +#~ msgstr "-s/--schema-only と--statistics-only オプションは同時には使用できません" + +#~ msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#~ msgstr "-s/--schema-only と -a/--data-only オプションは同時には使用できません" + #~ msgid "restoring database \"%s\"" #~ msgstr "データベース\"%s\"の復元中" diff --git a/src/bin/pg_dump/po/ka.po b/src/bin/pg_dump/po/ka.po index bc2a56ec386..c7f38491b99 100644 --- a/src/bin/pg_dump/po/ka.po +++ b/src/bin/pg_dump/po/ka.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_dump (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-29 20:21+0000\n" -"PO-Revision-Date: 2025-08-30 03:24+0200\n" +"POT-Creation-Date: 2026-01-16 13:52+0000\n" +"PO-Revision-Date: 2026-01-17 03:40+0100\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.7\n" +"X-Generator: Poedit 3.8\n" #: ../../../src/common/logging.c:279 #, c-format @@ -39,7 +39,7 @@ msgid "hint: " msgstr "მინიშნება: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: ../../common/compression.c:150 compress_gzip.c:441 compress_gzip.c:448 #: compress_io.c:108 compress_lz4.c:800 compress_lz4.c:807 compress_zstd.c:26 #: compress_zstd.c:32 #, c-format @@ -167,7 +167,7 @@ msgstr "ფაილი \"%s\" არ არსებობს: %m" msgid "this build does not support sync method \"%s\"" msgstr "ამ აგებას სინქრონიზაციის მეთოდის \"%s\" მხარდაჭერა არ გააჩნია" -#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:944 #, c-format msgid "could not open directory \"%s\": %m" msgstr "საქაღალდის (%s) გახსნის შეცდომა: %m" @@ -472,48 +472,48 @@ msgstr "რიცხვითი მასივის \"%s\" დამუშა msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "რიცხვითი მასივის \"%s\" დამუშავების შეცდომა: რიცხვში არასწორის სიმბოლოებია" -#: compress_gzip.c:69 compress_gzip.c:183 +#: compress_gzip.c:78 compress_gzip.c:192 #, c-format msgid "could not initialize compression library: %s" msgstr "შეკუმშვის ბიბლიოთეკის ინიციალიზება ვერ მოხერხდა: %s" -#: compress_gzip.c:93 +#: compress_gzip.c:102 #, c-format msgid "could not close compression stream: %s" msgstr "შეკუმშვის ნაკადის დახურვის შეცდომა: %s" -#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 +#: compress_gzip.c:122 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "მონაცემების შეკუმშვა შეუძლებელია: %s" -#: compress_gzip.c:199 compress_gzip.c:214 +#: compress_gzip.c:208 compress_gzip.c:223 #, c-format msgid "could not uncompress data: %s" msgstr "მონაცემების განშლის შეცდომა: %s" -#: compress_gzip.c:221 +#: compress_gzip.c:230 #, c-format msgid "could not close compression library: %s" msgstr "შეკუმშვის ბიბლიოთეკის დახურვის შეცდომა: %s" -#: compress_gzip.c:277 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 +#: compress_gzip.c:290 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 #, c-format msgid "could not read from input file: %s" msgstr "შეყვანის ფაილების წაკითხვის შეცდომა: %s" -#: compress_gzip.c:294 compress_zstd.c:382 +#: compress_gzip.c:307 compress_zstd.c:382 #, c-format msgid "could not write to file: %s" msgstr "ფაილში ჩაწერის შეცდომა: %s" -#: compress_gzip.c:310 compress_lz4.c:494 compress_none.c:94 +#: compress_gzip.c:323 compress_lz4.c:494 compress_none.c:94 #: compress_none.c:135 compress_zstd.c:315 pg_backup_custom.c:650 #, c-format msgid "could not read from input file: %m" msgstr "შემოსატანი ფაილის წაკითხვის შეცდომა: %m" -#: compress_gzip.c:312 compress_lz4.c:635 compress_none.c:137 +#: compress_gzip.c:325 compress_lz4.c:635 compress_none.c:137 #: compress_zstd.c:400 pg_backup_custom.c:648 pg_backup_directory.c:515 #: pg_backup_tar.c:740 pg_backup_tar.c:763 #, c-format @@ -600,13 +600,13 @@ msgstr "მონაცემების გაშლის შეცდომ msgid "Password: " msgstr "პაროლი: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 -#: pg_dump_sort.c:1466 pg_dump_sort.c:1486 +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:952 +#: pg_dump_sort.c:1478 pg_dump_sort.c:1498 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:514 +#: connectdb.c:157 pg_dumpall.c:520 #, c-format msgid "could not connect to database \"%s\"" msgstr "მონაცემთა ბაზასთან დაკავშირება ვერ მოხერხდა \"%s\"" @@ -631,32 +631,32 @@ msgstr "ოპერაცია გაუქმდა სერვერის msgid "server version: %s; %s version: %s" msgstr "სერვერის ვერსია: %s; %s ვერსია: %s" -#: connectdb.c:282 pg_dumpall.c:1784 +#: connectdb.c:282 pg_dumpall.c:1790 #, c-format msgid "executing %s" msgstr "%s -ის შესრულება" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1796 #, c-format msgid "query failed: %s" msgstr "მოთხოვნის შეცდომა: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1797 #, c-format msgid "Query was: %s" msgstr "მოთხოვნის შინაარსი: %s" -#: dumputils.c:948 +#: dumputils.c:949 #, c-format msgid "could not create directory \"%s\": %m" msgstr "საქაღალდის (%s) შექმნის შეცდომა: %m" -#: dumputils.c:953 +#: dumputils.c:954 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "საქაღალდის წვდომების შეცვლა შეუძლებელია \"%s\": %m" -#: dumputils.c:958 +#: dumputils.c:959 #, c-format msgid "directory \"%s\" is not empty" msgstr "საქაღალდე \"%s\" ცარიელი არაა" @@ -917,7 +917,7 @@ msgstr "მიმდინარეობს დიდი ობიექტი msgid "could not create large object %u: %s" msgstr "დიდი ობიექტის (%u) შექმნის შეცდომა: %s" -#: pg_backup_archiver.c:1525 pg_dump.c:4085 +#: pg_backup_archiver.c:1525 pg_dump.c:4100 #, c-format msgid "could not open large object %u: %s" msgstr "დიდი ობიექტის (%u) გახსნის შეცდომა: %s" @@ -945,7 +945,7 @@ msgstr "TOC ფაილის დახურვის შეცდომა: % #: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 #: pg_backup_directory.c:550 pg_backup_directory.c:616 -#: pg_backup_directory.c:634 pg_dumpall.c:548 +#: pg_backup_directory.c:634 pg_dumpall.c:554 #, c-format msgid "could not open output file \"%s\": %m" msgstr "გამოტანის ფაილის (\"%s\") გახსნის შეცდომა: %m" @@ -1068,12 +1068,12 @@ msgstr "stdout-ის ბოლოში მისაწერად გახ msgid "unrecognized file format \"%d\"" msgstr "ფაილის უცნობი ფორმატი \"%d\"" -#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4761 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4797 #, c-format msgid "finished item %d %s %s" msgstr "დასრულებული ელემენტი %d %s %s" -#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4774 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4810 #, c-format msgid "worker process failed: exit code %d" msgstr "დამხმარე პროცესის შეცდომა: გამოსვლის კოდი %d" @@ -1140,107 +1140,107 @@ msgstr "ფუნქცია %s არ არსებობს" msgid "trigger \"%s\" not found" msgstr "ტრიგერი %s არ არსებობს" -#: pg_backup_archiver.c:3433 +#: pg_backup_archiver.c:3469 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "სესიის მომხმარებლის %s-ზე დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3575 +#: pg_backup_archiver.c:3611 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "\"session_path\"-ის %s-ზე დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3636 +#: pg_backup_archiver.c:3672 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" msgstr "default_tablespace-ის %s-ზე დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3685 +#: pg_backup_archiver.c:3721 #, c-format msgid "could not set \"default_table_access_method\": %s" msgstr "default_table_access_method-ის დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3734 +#: pg_backup_archiver.c:3770 #, c-format msgid "could not alter table access method: %s" msgstr "ცხრილის წვდომის მეთოდის შეცვლა შეუძლებელია: %s" -#: pg_backup_archiver.c:3835 +#: pg_backup_archiver.c:3871 #, c-format msgid "don't know how to set owner for object type \"%s\"" msgstr "არ ვიცი, როგორ დავაყენო ობიექტის მოცემული ტიპის (%s) მფლობელი" -#: pg_backup_archiver.c:3970 +#: pg_backup_archiver.c:4006 #, c-format msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" msgstr "მოულოდნელი TOC ჩანაწერი ფუნქციაში _printTocEntry(): %d %s %s" -#: pg_backup_archiver.c:4118 +#: pg_backup_archiver.c:4154 #, c-format msgid "did not find magic string in file header" msgstr "ფაილის თავსართში მაგიური სტრიქონი ნაპოვნი არაა" -#: pg_backup_archiver.c:4132 +#: pg_backup_archiver.c:4168 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "ფაილის თავსართში არსებული ვერსია (%d.%d) მხარდაუჭერელია" -#: pg_backup_archiver.c:4137 +#: pg_backup_archiver.c:4173 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "მთელი რიცხვის ზომის (%lu) სისწორის შემოწმების შეცდომა" -#: pg_backup_archiver.c:4141 +#: pg_backup_archiver.c:4177 #, c-format msgid "archive was made on a machine with larger integers, some operations might fail" msgstr "არქივი შეიქმნა მანქანაზე, სადაც მთელი რიცხვი უფრო დიდია. ზოგიერთი ოპერაცია შეიძლება შეცდომით დასრულდეს" -#: pg_backup_archiver.c:4151 +#: pg_backup_archiver.c:4187 #, c-format msgid "expected format (%d) differs from format found in file (%d)" msgstr "მოსალოდნელი ფორმატი (%d) განსხვავდება ფაილის ფორმატისგან (%d)" -#: pg_backup_archiver.c:4173 +#: pg_backup_archiver.c:4209 #, c-format msgid "archive is compressed, but this installation does not support compression (%s) -- no data will be available" msgstr "არქივი შეკუმშულია, მაგრამ ამ ვერსიას შეკუმშვის(%s) მხარდაჭერა არ გააჩნია -- მონაცემები მიუწვდომელი იქნება" -#: pg_backup_archiver.c:4209 +#: pg_backup_archiver.c:4245 #, c-format msgid "invalid creation date in header" msgstr "თავსართში არსებული შექმნის დრო არასწორია" -#: pg_backup_archiver.c:4343 +#: pg_backup_archiver.c:4379 #, c-format msgid "processing item %d %s %s" msgstr "მუშავდება ელემენტი %d %s %s" -#: pg_backup_archiver.c:4428 +#: pg_backup_archiver.c:4464 #, c-format msgid "entering main parallel loop" msgstr "მთავარი პარალელური მარყუჟის დასაწყისი" -#: pg_backup_archiver.c:4439 +#: pg_backup_archiver.c:4475 #, c-format msgid "skipping item %d %s %s" msgstr "ელემენტის გამოტოვება %d %s %s" -#: pg_backup_archiver.c:4448 +#: pg_backup_archiver.c:4484 #, c-format msgid "launching item %d %s %s" msgstr "ელემენტის გაშვება %d %s %s" -#: pg_backup_archiver.c:4502 +#: pg_backup_archiver.c:4538 #, c-format msgid "finished main parallel loop" msgstr "მთავარი პარალელური მარყუჟის დასასრული" -#: pg_backup_archiver.c:4538 +#: pg_backup_archiver.c:4574 #, c-format msgid "processing missed item %d %s %s" msgstr "გამორჩენილი ჩანაწერის დამუშავება %d %s %s" -#: pg_backup_archiver.c:5080 +#: pg_backup_archiver.c:5116 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "ცხრილის (%s) შექმნა შეუძლებელია. მონაცემების აღდგენა არ მოხდება" @@ -1357,7 +1357,7 @@ msgstr "PQputCopyEnd-ის მიერ დაბრუნებული შ msgid "COPY failed for table \"%s\": %s" msgstr "COPY-ის შეცდომა ცხრილისთვის \"%s\": %s" -#: pg_backup_db.c:460 pg_dump.c:2458 +#: pg_backup_db.c:460 pg_dump.c:2473 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "მოულოდნელი დამატებითი შედეგები COPY-ის დროს ცხრილისთვის \"%s\"" @@ -1508,10 +1508,10 @@ msgstr "%s-ში ნაპოვნია დაზიანებული თ msgid "unrecognized section name: \"%s\"" msgstr "სექციის უცნობი სახელი: %s" -#: pg_backup_utils.c:57 pg_dump.c:799 pg_dump.c:816 pg_dumpall.c:385 -#: pg_dumpall.c:395 pg_dumpall.c:403 pg_dumpall.c:411 pg_dumpall.c:418 -#: pg_dumpall.c:428 pg_dumpall.c:530 pg_restore.c:326 pg_restore.c:342 -#: pg_restore.c:356 +#: pg_backup_utils.c:57 pg_dump.c:800 pg_dump.c:817 pg_dumpall.c:385 +#: pg_dumpall.c:395 pg_dumpall.c:405 pg_dumpall.c:414 pg_dumpall.c:422 +#: pg_dumpall.c:434 pg_dumpall.c:536 pg_restore.c:326 pg_restore.c:342 +#: pg_restore.c:357 #, c-format msgid "Try \"%s --help\" for more information." msgstr "მეტი ინფორმაციისთვის სცადეთ '%s --help'." @@ -1521,132 +1521,93 @@ msgstr "მეტი ინფორმაციისთვის სცად msgid "out of on_exit_nicely slots" msgstr "on_exit_nicely ტიპის სლოტები აღარ დარჩა" -#: pg_dump.c:814 pg_dumpall.c:393 pg_restore.c:340 +#: pg_dump.c:815 pg_dumpall.c:393 pg_restore.c:340 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "მეტისმეტად ბევრი ბრძანების-სტრიქონის არგუმენტი (პირველია \"%s\")" -#: pg_dump.c:826 pg_restore.c:380 -#, c-format -msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgstr "პარამეტრები -s/--schema-only და -a/--data-only ერთად ვერ გამოიყენება" - -#: pg_dump.c:828 pg_restore.c:382 -#, c-format -msgid "options -s/--schema-only and --statistics-only cannot be used together" -msgstr "პარამეტრებს -s/--schema-only და --statistics-only ერთად ვერ გამოიყენებთ" - -#: pg_dump.c:830 pg_restore.c:384 -#, c-format -msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "პარამეტრებს -a/--data-only და --statistics-only ერთად ვერ გამოიყენებთ" - -#: pg_dump.c:834 pg_restore.c:388 -#, c-format -msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "პარამეტრებს -a/--data-only და --no-data ერთად ვერ გამოიყენებთ" - -#: pg_dump.c:836 pg_restore.c:390 -#, c-format -msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "პარამეტრებს -s/--schema-only და --no-schema ერთად ვერ გამოიყენებთ" - -#: pg_dump.c:838 pg_restore.c:392 -#, c-format -msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "პარამეტრებს --statistics-only და --no-statistics ერთად ვერ გამოიყენებთ" - -#: pg_dump.c:842 pg_restore.c:396 -#, c-format -msgid "options --statistics and --no-statistics cannot be used together" -msgstr "პარამეტრებს --statistics და --no-statistics ერთად ვერ გამოიყენებთ" - -#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#: pg_dump.c:827 pg_dump.c:830 pg_dump.c:833 pg_dump.c:838 pg_dump.c:841 +#: pg_dump.c:844 pg_dump.c:849 pg_dump.c:854 pg_dump.c:857 pg_dump.c:861 +#: pg_dump.c:869 pg_dumpall.c:412 pg_dumpall.c:420 pg_dumpall.c:432 +#: pg_restore.c:355 pg_restore.c:362 pg_restore.c:382 pg_restore.c:385 +#: pg_restore.c:388 pg_restore.c:393 pg_restore.c:396 pg_restore.c:399 +#: pg_restore.c:404 pg_restore.c:409 pg_restore.c:412 pg_restore.c:416 +#: pg_restore.c:420 pg_restore.c:428 #, c-format msgid "options %s and %s cannot be used together" msgstr "პარამეტრებს %s და -%s ერთად ვერ გამოიყენებთ" -#: pg_dump.c:853 -#, c-format -msgid "options -s/--schema-only and --include-foreign-data cannot be used together" -msgstr "პარამეტრები -s/--schema-only და --include-foreign-data ერთად ვერ გამოიყენება" - -#: pg_dump.c:856 +#: pg_dump.c:865 #, c-format -msgid "option --include-foreign-data is not supported with parallel backup" -msgstr "პარამეტრი --include-foreign-data მხარდაუჭერელია პარალელური მარქაფისას" +msgid "option %s is not supported with parallel backup" +msgstr "პარამეტრი %s მხარდაუჭერელია პარალელური მარქაფისას" -#: pg_dump.c:859 pg_restore.c:407 +#: pg_dump.c:873 pg_dumpall.c:427 pg_restore.c:460 #, c-format -msgid "options -c/--clean and -a/--data-only cannot be used together" -msgstr "პარამეტრები -c/--clean და -a/--data-only ერთად ვერ გამოიყენება" +msgid "option %s requires option %s" +msgstr "პარამეტრს %s სჭირდება პარამეტრი %s" -#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 +#: pg_dump.c:894 #, c-format -msgid "option --if-exists requires option -c/--clean" -msgstr "--if-exists -ს -c/--clean პარამეტრი ესაჭიროება" +msgid "option %s requires option %s, %s, or %s" +msgstr "პარამეტრს %s პარამეტრი %s, %s, ან %s" -#: pg_dump.c:882 -#, c-format -msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" -msgstr "--on-conflict-do-nothing -ს --inserts, --rows-per-insert ან --column-inserts ესაჭიროება" - -#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#: pg_dump.c:912 pg_dumpall.c:504 pg_restore.c:375 #, c-format msgid "could not generate restrict key" msgstr "შეზღუდვის გასაღების გენერაცია შეუძლებელია" -#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#: pg_dump.c:914 pg_dumpall.c:506 pg_restore.c:377 #, c-format msgid "invalid restrict key" msgstr "არასწორი შეზღუდვის გასაღები" -#: pg_dump.c:903 +#: pg_dump.c:917 #, c-format -msgid "option --restrict-key can only be used with --format=plain" -msgstr "პარამეტრს --restrict-key მხოლოდ, პარამეტრთან --format=plain ერთად იქნეს გამოყენებული" +msgid "option %s can only be used with %s" +msgstr "პარამეტრს %s გამოიყენებთ, მხოლოდ, პარამეტრთან %s ერთად" -#: pg_dump.c:925 +#: pg_dump.c:940 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "შეკუმშვის უცხო ალგორითმი: \"%s\"" -#: pg_dump.c:932 +#: pg_dump.c:947 #, c-format msgid "invalid compression specification: %s" msgstr "შეკუმშვის არასწორი სპეციფიკაცია: %s" -#: pg_dump.c:945 +#: pg_dump.c:960 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "შეკუმშვის პარამეტრი \"%s\"-ი pg_dump-ის მიერ ამჟამად მხარდაჭერილი არაა" -#: pg_dump.c:957 +#: pg_dump.c:972 #, c-format msgid "parallel backup only supported by the directory format" msgstr "პარალელური მარქაფი მხოლოდ საქაღალდის რეჟიმშია მხარდაჭერილი" -#: pg_dump.c:1003 +#: pg_dump.c:1018 #, c-format msgid "last built-in OID is %u" msgstr "ბოლო ჩაშენებული OID %u" -#: pg_dump.c:1012 +#: pg_dump.c:1027 #, c-format msgid "no matching schemas were found" msgstr "შესაბამისი სქემები ნაპოვნი არაა" -#: pg_dump.c:1029 +#: pg_dump.c:1044 #, c-format msgid "no matching tables were found" msgstr "შესაბამისი ცხრილები ნაპოვნი არაა" -#: pg_dump.c:1057 +#: pg_dump.c:1072 #, c-format msgid "no matching extensions were found" msgstr "შესაბამისი გაფართოებები ნაპოვნი არაა" -#: pg_dump.c:1251 +#: pg_dump.c:1266 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1655,17 +1616,17 @@ msgstr "" "%s გაიტანს PostgreSQL მონაცემთა ბაზას SQL სკრიპტის ან სხვა ფორმატის სახით.\n" "\n" -#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 +#: pg_dump.c:1267 pg_dumpall.c:700 pg_restore.c:536 #, c-format msgid "Usage:\n" msgstr "გამოყენება:\n" -#: pg_dump.c:1253 +#: pg_dump.c:1268 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [პარამეტრი]... [ბაზისსახელი]\n" -#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 +#: pg_dump.c:1270 pg_dumpall.c:703 pg_restore.c:539 #, c-format msgid "" "\n" @@ -1674,12 +1635,12 @@ msgstr "" "\n" "ზოგადი პარამეტრები:\n" -#: pg_dump.c:1256 +#: pg_dump.c:1271 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=FILENAME გამოტანის ფაილის სახელი\n" -#: pg_dump.c:1257 +#: pg_dump.c:1272 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1688,22 +1649,22 @@ msgstr "" " -F, --format=c|d|t|p გამოტანის ფაილის ფორმატი (custom, directory, tar\n" " უბრალო ტექსტი (ნაგულისხმევი))\n" -#: pg_dump.c:1259 +#: pg_dump.c:1274 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM მითითებული რაოდენობის პარალელური დავალების გაშვება\n" -#: pg_dump.c:1260 pg_dumpall.c:699 +#: pg_dump.c:1275 pg_dumpall.c:705 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose დამატებითი ინფორმაციის გამოტანა\n" -#: pg_dump.c:1261 pg_dumpall.c:700 +#: pg_dump.c:1276 pg_dumpall.c:706 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version ვერსიის ინფორმაციის გამოტანა და გასვლა\n" -#: pg_dump.c:1262 +#: pg_dump.c:1277 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1712,27 +1673,27 @@ msgstr "" " -Z, --compress=მეთოდი[:წვრილმანი]\n" " შეკუმშვის მითითება\n" -#: pg_dump.c:1264 pg_dumpall.c:701 +#: pg_dump.c:1279 pg_dumpall.c:707 #, c-format msgid " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr " --lock-wait-timeout=TIMEOUT ცხრილის დაბლოკვისას TIMEOUT ის შემდეგ შეცდომის გამოგდება\n" -#: pg_dump.c:1265 pg_dumpall.c:733 +#: pg_dump.c:1280 pg_dumpall.c:739 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync არ დაველოდო ცვლილებების დისკზე უსაფრთხოდ ჩაწერას\n" -#: pg_dump.c:1266 +#: pg_dump.c:1281 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=მეთოდი ფაილების დისკზე სინქრონიზაციის მეთოდის დაყენება\n" -#: pg_dump.c:1267 pg_dumpall.c:702 +#: pg_dump.c:1282 pg_dumpall.c:708 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help ამ დახმარების ჩვენება და გასვლა\n" -#: pg_dump.c:1269 pg_dumpall.c:703 +#: pg_dump.c:1284 pg_dumpall.c:709 #, c-format msgid "" "\n" @@ -1741,62 +1702,62 @@ msgstr "" "\n" "პარამეტრები, რომლებიც აკონტროლებენ გამოტანას:\n" -#: pg_dump.c:1270 pg_dumpall.c:704 +#: pg_dump.c:1285 pg_dumpall.c:710 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only მოხდება, მხოლოდ, მონაცემების დამპი, მაგრამ არა სქემის ან სტატისტიკის\n" -#: pg_dump.c:1271 +#: pg_dump.c:1286 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects გამოტანილი იქნება დიდი ობიექტებიც\n" -#: pg_dump.c:1272 +#: pg_dump.c:1287 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (იგივე, რაც--large-objects, რომელიც მოძველებულია)\n" -#: pg_dump.c:1273 +#: pg_dump.c:1288 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects დიდი ობიექტები გამოტანილი არ იქნება\n" -#: pg_dump.c:1274 +#: pg_dump.c:1289 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (იგივე, რაც --no-large-objects, რომელიც მოძველებულია)\n" -#: pg_dump.c:1275 pg_restore.c:537 +#: pg_dump.c:1290 pg_restore.c:550 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean ბაზის ობიექტების წაშლა თავიდან შექმნამდე\n" -#: pg_dump.c:1276 +#: pg_dump.c:1291 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr " -C, --create გამოტანილში ბაზის შექმნის ბრძანებების მიყოლება\n" -#: pg_dump.c:1277 +#: pg_dump.c:1292 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=PATTERN მხოლოდ მითითებული გაფართოებების გამოტანა\n" -#: pg_dump.c:1278 pg_dumpall.c:706 +#: pg_dump.c:1293 pg_dumpall.c:712 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=ENCODING მხოლოდ მითითებული კოდირების მქონე მონაცემების გამოტანა\n" -#: pg_dump.c:1279 +#: pg_dump.c:1294 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=PATTERN მხოლოდ მითითებული სქემების გამოტანა\n" -#: pg_dump.c:1280 +#: pg_dump.c:1295 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=PATTERN მითითებული სქემები გამოტანილი არ იქნება\n" -#: pg_dump.c:1281 +#: pg_dump.c:1296 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1805,52 +1766,52 @@ msgstr "" " -O, --no-owner უბრალო ტექსტურ ფორმატში ობიექტების მფლობელობის \n" " აღდგენის გამოტოვება\n" -#: pg_dump.c:1283 pg_dumpall.c:710 +#: pg_dump.c:1298 pg_dumpall.c:716 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr " -s, --schema-only მოხდება, მხოლოდ, სქემის დამპი, მაგრამ არა მონაცემების ან სტატისტიკის\n" -#: pg_dump.c:1284 +#: pg_dump.c:1299 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr " -S, --superuser=NAME უბრალო ტექსტურ ფაილში გამოტანისას გამოყენებული ზემომხმარებლის სახელი\n" -#: pg_dump.c:1285 +#: pg_dump.c:1300 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=შაბლონი მხოლოდ მითითებული ცხრილების დამპი\n" -#: pg_dump.c:1286 +#: pg_dump.c:1301 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=PATTERN მითითებული ცხრილები გამოტანილი არ იქნება\n" -#: pg_dump.c:1287 pg_dumpall.c:713 +#: pg_dump.c:1302 pg_dumpall.c:719 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges პრივილეგიები (dump/revoke) გამოტანილი არ იქნება\n" -#: pg_dump.c:1288 pg_dumpall.c:714 +#: pg_dump.c:1303 pg_dumpall.c:720 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade გამოიყენება მხოლოდ განახლების პროგრამების მიერ\n" -#: pg_dump.c:1289 pg_dumpall.c:715 +#: pg_dump.c:1304 pg_dumpall.c:721 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr " --column-inserts მონაცემების დამპი ისე, როგორც ბრძანება INSERT, სვეტების სახელებით\n" -#: pg_dump.c:1290 pg_dumpall.c:716 +#: pg_dump.c:1305 pg_dumpall.c:722 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr " --disable-dollar-quoting დოლარით ციტირების გამორთვა. სტანდარტული SQL ციტირების გამოყენება\n" -#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 +#: pg_dump.c:1306 pg_dumpall.c:723 pg_restore.c:567 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr " --disable-triggers მხოლოდ მონაცემების აღდგენისას ტრიგერების გამორთვა\n" -#: pg_dump.c:1292 +#: pg_dump.c:1307 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1859,12 +1820,12 @@ msgstr "" " --enable-row-security მწკრივების უსაფრთხოების ჩართვა (მხოლოდ იმ მონაცემების დამპი, \n" " რაზეც მომხმარებელს წვდომა გააჩნია)\n" -#: pg_dump.c:1294 +#: pg_dump.c:1309 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=PATTERN მითითებული გაფართოებ(ებ)-ი გამოტანილი *არ* იქნება\n" -#: pg_dump.c:1295 +#: pg_dump.c:1310 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1875,12 +1836,12 @@ msgstr "" " მითითებული ცხრილები დამპში არ იქნება,\n" " შვილი და დაყოფილი ცხრილების ჩათვლით\n" -#: pg_dump.c:1298 +#: pg_dump.c:1313 #, c-format msgid " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" msgstr " -T, --exclude-table=შაბლონი შაბლონით მითითებული ცხრილები\n" -#: pg_dump.c:1299 +#: pg_dump.c:1314 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1891,12 +1852,12 @@ msgstr "" " მითითებული ცხრილების მონაცემები დამპში არ იქნება,\n" " შვილი და დაყოფილი ცხრილების ჩათვლით\n" -#: pg_dump.c:1302 pg_dumpall.c:719 +#: pg_dump.c:1317 pg_dumpall.c:725 #, c-format msgid " --extra-float-digits=NUM override default setting for extra_float_digits\n" msgstr " --extra-float-digits=NUM extra_float_digits-ის ნაგულისხმევი პარამეტრის გადაფარვა\n" -#: pg_dump.c:1303 +#: pg_dump.c:1318 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1905,12 +1866,12 @@ msgstr "" " --filter=ფაილისსახელი დამპიდან ობიექტების და მონაცემების, რომლებიც ემთხვევა მითითებულ\n" " ფაილისსახელში მყოფ გამოსახულებას, ამოღება ან ჩასმა\n" -#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 +#: pg_dump.c:1320 pg_dumpall.c:727 pg_restore.c:571 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists ობიექტების გადაყრისას IF EXISTS -ის გამოყენება\n" -#: pg_dump.c:1306 +#: pg_dump.c:1321 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1921,127 +1882,127 @@ msgstr "" " მონაცემების ჩასმა უცხო სერვერებზე მდებარე , უცხო ცხრილებიდან, რომლებიც\n" " შაბლონს ემთხვევა\n" -#: pg_dump.c:1309 pg_dumpall.c:722 +#: pg_dump.c:1324 pg_dumpall.c:728 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts მონაცემების დამპი INSERT ბრძანებების მსგავსად, COPY-ის მაგიერ\n" -#: pg_dump.c:1310 pg_dumpall.c:723 +#: pg_dump.c:1325 pg_dumpall.c:729 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root დანაყოფების root ცხრილს გავლით ჩატვირთვა\n" -#: pg_dump.c:1311 pg_dumpall.c:724 +#: pg_dump.c:1326 pg_dumpall.c:730 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments კომენტარის ბრძანებების დამპი არ მოხდება\n" -#: pg_dump.c:1312 pg_dumpall.c:725 +#: pg_dump.c:1327 pg_dumpall.c:731 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data მონაცემების დამპი არ მოხდება\n" -#: pg_dump.c:1313 pg_dumpall.c:726 +#: pg_dump.c:1328 pg_dumpall.c:732 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies მწკრივის უსაფრთხოების პოლიტიკის დამპი არ მოხდება\n" -#: pg_dump.c:1314 pg_dumpall.c:727 +#: pg_dump.c:1329 pg_dumpall.c:733 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications გამოცემების გარეშე\n" -#: pg_dump.c:1315 pg_dumpall.c:729 +#: pg_dump.c:1330 pg_dumpall.c:735 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema სქემების დამპი არ მოხდება\n" -#: pg_dump.c:1316 pg_dumpall.c:730 +#: pg_dump.c:1331 pg_dumpall.c:736 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels უსაფრთხოების ჭდეების მინიჭებების გარეშე\n" -#: pg_dump.c:1317 pg_dumpall.c:731 +#: pg_dump.c:1332 pg_dumpall.c:737 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics სტატისტიკის დამპი არ მოხდება\n" -#: pg_dump.c:1318 pg_dumpall.c:732 +#: pg_dump.c:1333 pg_dumpall.c:738 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions გამოწერების გარეშე\n" -#: pg_dump.c:1319 pg_dumpall.c:734 +#: pg_dump.c:1334 pg_dumpall.c:740 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method ცხრილის წვდომის მეთოდები\n" -#: pg_dump.c:1320 pg_dumpall.c:735 +#: pg_dump.c:1335 pg_dumpall.c:741 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces ცხრილის სივრცის მინიჭებები\n" -#: pg_dump.c:1321 pg_dumpall.c:736 +#: pg_dump.c:1336 pg_dumpall.c:742 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression TOAST-ის შეკუმშვის მეთოდები დამპში არ ჩაიწერება\n" -#: pg_dump.c:1322 pg_dumpall.c:737 +#: pg_dump.c:1337 pg_dumpall.c:743 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data ის ცხრილები, რომლებსაც ჟურნალი არ აქვთ, დამპში არ ჩაიწერება\n" -#: pg_dump.c:1323 pg_dumpall.c:738 +#: pg_dump.c:1338 pg_dumpall.c:744 #, c-format msgid " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n" msgstr " --on-conflict-do-nothing INSERT ბრძანებებისთვის ON CONFLICT DO NOTHING -ის დამატება\n" -#: pg_dump.c:1324 pg_dumpall.c:739 +#: pg_dump.c:1339 pg_dumpall.c:745 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr " --quote-all-identifiers ყველა იდენტიფიკატორის ციტირება. მაშინაც კი, თუ ისინი საკვანძო სიტყვები არაა\n" -#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#: pg_dump.c:1340 pg_dumpall.c:746 pg_restore.c:584 #, c-format msgid " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" msgstr " --restrict-key=RESTRICT_KEY მოწოდებული სტრიქონის გამოყენება, როგორც psql-ის \\შეზღუდვის გასაღები\n" -#: pg_dump.c:1326 pg_dumpall.c:741 +#: pg_dump.c:1341 pg_dumpall.c:747 #, c-format msgid " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" msgstr " --rows-per-insert=NROWS მწკრივების რიცხვი თითოეული INSERT-ისთვის ; ასევე მიუთითებს --inserts\n" -#: pg_dump.c:1327 +#: pg_dump.c:1342 #, c-format msgid " --section=SECTION dump named section (pre-data, data, or post-data)\n" msgstr " --section=სექცია მითითებული სექცია (pre-data, data, ან post-data)\n" -#: pg_dump.c:1328 pg_dumpall.c:742 +#: pg_dump.c:1343 pg_dumpall.c:748 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data მიმდევრობის მონაცემების ჩასმა დამპში\n" -#: pg_dump.c:1329 +#: pg_dump.c:1344 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr " --serializable-deferrable მოცდა, სანამ დამპის გაშვება ანომალიების გარეშე იქნება შესაძლებელი\n" -#: pg_dump.c:1330 +#: pg_dump.c:1345 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT დამპისთვის მითითებული სწრაფი ასლის გამოყენება\n" -#: pg_dump.c:1331 pg_dumpall.c:743 +#: pg_dump.c:1346 pg_dumpall.c:749 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics სტატისტიკის დამპი\n" -#: pg_dump.c:1332 pg_dumpall.c:744 +#: pg_dump.c:1347 pg_dumpall.c:750 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr " --statistics-only მოხდება, მხოლოდ, სტატისტიკის დამპი, მაგრამ არ სქემის ან მონაცემების\n" -#: pg_dump.c:1333 pg_restore.c:575 +#: pg_dump.c:1348 pg_restore.c:588 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2050,7 +2011,7 @@ msgstr "" " --strict-names მოთხოვნა, რომ ცხრილი ან/და სქემა შეიცავდეს შაბლონებს, რომლებიც\n" " ერთ ელემენტს მაინც ემთხვევა\n" -#: pg_dump.c:1335 +#: pg_dump.c:1350 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2059,7 +2020,7 @@ msgstr "" " --table-and-children=შაბლონი მხოლოდ მითითებული ცხრილების დამპი,\n" " შვილი და დაყოფილი ცხრილების ჩათვლით\n" -#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 +#: pg_dump.c:1352 pg_dumpall.c:751 pg_restore.c:591 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2070,7 +2031,7 @@ msgstr "" " მფლობელობის დასაყენებლად ALTER OWNER ბრძანებების მაგიერ\n" " SET SESSION AUTHORIZATION -ის გამოყენება\n" -#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 +#: pg_dump.c:1356 pg_dumpall.c:755 pg_restore.c:595 #, c-format msgid "" "\n" @@ -2079,42 +2040,42 @@ msgstr "" "\n" "შეერთების პარამეტრები:\n" -#: pg_dump.c:1342 +#: pg_dump.c:1357 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=ბაზისსახელი მონაცემთა ბაზის სახელი\n" -#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 +#: pg_dump.c:1358 pg_dumpall.c:757 pg_restore.c:596 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=HOSTNAME მონაცემთა ბაზის სერვერის ჰოსტის ან სოკეტის საქაღალდე\n" -#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 +#: pg_dump.c:1359 pg_dumpall.c:759 pg_restore.c:597 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT მონაცემთა ბაზის სერვერის პორტი\n" -#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 +#: pg_dump.c:1360 pg_dumpall.c:760 pg_restore.c:598 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=მომხმარებელი ბაზის მომხმარებლის სახელი\n" -#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 +#: pg_dump.c:1361 pg_dumpall.c:761 pg_restore.c:599 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password არასოდეს მკითხო პაროლი\n" -#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 +#: pg_dump.c:1362 pg_dumpall.c:762 pg_restore.c:600 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr " -W, --password პაროლის ყოველთვის კითხვა (ავტომატურად უნდა ხდებოდეს)\n" -#: pg_dump.c:1348 pg_dumpall.c:757 +#: pg_dump.c:1363 pg_dumpall.c:763 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLENAME აღდგენამდე SET ROLE -ის გაშვება\n" -#: pg_dump.c:1350 +#: pg_dump.c:1365 #, c-format msgid "" "\n" @@ -2127,527 +2088,532 @@ msgstr "" "ცვლადი გამოიყენება.\n" "\n" -#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 +#: pg_dump.c:1367 pg_dumpall.c:767 pg_restore.c:607 #, c-format msgid "Report bugs to <%s>.\n" msgstr "შეცდომების შესახებ მიწერეთ: <%s>\n" -#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 +#: pg_dump.c:1368 pg_dumpall.c:768 pg_restore.c:608 #, c-format msgid "%s home page: <%s>\n" msgstr "%s-ის საწყისი გვერდია: <%s>\n" -#: pg_dump.c:1372 pg_dumpall.c:560 +#: pg_dump.c:1387 pg_dumpall.c:566 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "კლიენტის მითითებული კოდირება არასწორია: %s" -#: pg_dump.c:1520 +#: pg_dump.c:1535 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "სერვერის ამ ვერსიაში უქმე სერვერებიდან პარალელური დამპი მხარდაჭერილი არაა" -#: pg_dump.c:1585 +#: pg_dump.c:1600 #, c-format msgid "invalid output format \"%s\" specified" msgstr "გამოტანის მითითებული ფორმატი არასწორია: %s" -#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 +#: pg_dump.c:1641 pg_dump.c:1697 pg_dump.c:1750 pg_dumpall.c:1594 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "არასწორი სრული სახელი (ძალიან ბევრი წერტილიანი სახელი): %s" -#: pg_dump.c:1634 +#: pg_dump.c:1649 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "შესაბამისი სქემა შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1687 +#: pg_dump.c:1702 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "შესაბამისი გაფართოება შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1740 +#: pg_dump.c:1755 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "შესაბამისი უცხო სერვერი შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1811 +#: pg_dump.c:1826 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "ურთიერთობის არასწორი სახელი (ძალიან ბევრი წერტილიანი სახელი): %s" -#: pg_dump.c:1833 +#: pg_dump.c:1848 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "შესაბამისი ცხრილი შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1860 +#: pg_dump.c:1875 #, c-format msgid "You are currently not connected to a database." msgstr "ამჟამად მონაცემთა ბაზასთან მიერთებული არ ბრძანდებით." -#: pg_dump.c:1863 +#: pg_dump.c:1878 #, c-format msgid "cross-database references are not implemented: %s" msgstr "ბაზებს შორის ბმულები განხორციელებული არაა: %s" -#: pg_dump.c:2329 +#: pg_dump.c:2344 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "ცხრილის შემცველობის გამოტანა: \"%s.%s\"" -#: pg_dump.c:2439 +#: pg_dump.c:2454 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "ცხრილის (\"%s\") დამპის შეცდომა: PQgetCopyData() failed." -#: pg_dump.c:2440 pg_dump.c:2450 +#: pg_dump.c:2455 pg_dump.c:2465 #, c-format msgid "Error message from server: %s" msgstr "შეცდომა სერვერიდან: %s" -#: pg_dump.c:2441 pg_dump.c:2451 +#: pg_dump.c:2456 pg_dump.c:2466 #, c-format msgid "Command was: %s" msgstr "ბრძანება იყო: %s" -#: pg_dump.c:2449 +#: pg_dump.c:2464 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "ცხრილის (\"%s\") დამპის შეცდომა: PQgetResult() failed." -#: pg_dump.c:2540 +#: pg_dump.c:2555 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "ცხრილიდან \"%s\" მიღებულია ველების არასწორი რაოდენობა" -#: pg_dump.c:3258 +#: pg_dump.c:3273 #, c-format msgid "saving database definition" msgstr "ბაზის აღწერის შენახვა" -#: pg_dump.c:3373 +#: pg_dump.c:3388 #, c-format msgid "unrecognized locale provider: %s" msgstr "ენის უცნობი მომწოდებელი: %s" -#: pg_dump.c:3734 +#: pg_dump.c:3749 #, c-format msgid "saving encoding = %s" msgstr "კოდირების შენახვა = %s" -#: pg_dump.c:3759 +#: pg_dump.c:3774 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "შენახვა: \"standard_conforming_strings = %s\"" -#: pg_dump.c:3798 +#: pg_dump.c:3813 #, c-format msgid "could not parse result of current_schemas()" msgstr "current_schemas() -ის შედეგის დამუშავების შეცდომა" -#: pg_dump.c:3817 +#: pg_dump.c:3832 #, c-format msgid "saving \"search_path = %s\"" msgstr "შენახვა: \"search_path = %s\"" -#: pg_dump.c:3853 +#: pg_dump.c:3868 #, c-format msgid "reading large objects" msgstr "დიდი ობიექტების კითხვა" -#: pg_dump.c:4074 +#: pg_dump.c:4089 #, c-format msgid "saving large objects \"%s\"" msgstr "მიმდინარეობს შენახვა დიდი ობიექტებისთვის \"%s\"" -#: pg_dump.c:4095 +#: pg_dump.c:4110 #, c-format msgid "error reading large object %u: %s" msgstr "დიდი ობიექტის (%u) წაკითხვის შეცდომა: %s" -#: pg_dump.c:4203 +#: pg_dump.c:4218 #, c-format msgid "reading row-level security policies" msgstr "მწკრივის დონის უსაფრთხოების წესების წაკითხვა" -#: pg_dump.c:4344 +#: pg_dump.c:4359 #, c-format msgid "unexpected policy command type: %c" msgstr "წესების ბრძანების მოულოდნელი ტიპი: %c" -#: pg_dump.c:4786 pg_dump.c:5343 pg_dump.c:7972 pg_dump.c:13450 pg_dump.c:19643 -#: pg_dump.c:19645 pg_dump.c:20277 +#: pg_dump.c:4801 pg_dump.c:5358 pg_dump.c:7987 pg_dump.c:13467 pg_dump.c:19678 +#: pg_dump.c:19680 pg_dump.c:20312 #, c-format msgid "could not parse %s array" msgstr "მასივის დამუშავების შეცდომა: %s" -#: pg_dump.c:5002 +#: pg_dump.c:5017 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "გამოწერები დამპში არ ჩაწერილა. მიმდინარე მომხმარებელი ზემომხმარებელი არაა" -#: pg_dump.c:5206 +#: pg_dump.c:5221 #, c-format msgid "subscription with OID %u does not exist" msgstr "გამოწერა OID-ით %u არ არსებობს" -#: pg_dump.c:5213 +#: pg_dump.c:5228 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "სისწორის შემოწმების შეცდომა. ცხრილი OID-ით %u აღმოჩენილი არაა" -#: pg_dump.c:5799 +#: pg_dump.c:5814 #, c-format msgid "could not find parent extension for %s %s" msgstr "%s-სთვის მშობელი გაფართოება ვერ ვიპოვე %s" -#: pg_dump.c:5937 +#: pg_dump.c:5952 #, c-format msgid "schema with OID %u does not exist" msgstr "სქემა OID-ით %u არ არსებობს" -#: pg_dump.c:6994 +#: pg_dump.c:7009 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "სტატისტიკის დამპი ურთიერთობის ტიპისთვის \"%c\" შეუძლებელია" -#: pg_dump.c:7506 pg_dump.c:18987 +#: pg_dump.c:7521 pg_dump.c:19005 #, c-format msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found" msgstr "სისწორის შემოწმების შეცდომა. მშობელი ცხრილი OID-ით %u მიმდევრობიდან OID-ით %u არ არსებობს" -#: pg_dump.c:7651 +#: pg_dump.c:7666 #, c-format msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found" msgstr "სისწორის შემოწმების შეცდომა. pg_parttioned_table-ში მოხსენიებული ცხრილი OID-ით %u ვერ ვიპოვე" -#: pg_dump.c:7916 pg_dump.c:8209 pg_dump.c:8672 pg_dump.c:9317 pg_dump.c:9456 -#: pg_dump.c:9601 pg_dump.c:9701 +#: pg_dump.c:7931 pg_dump.c:8224 pg_dump.c:8687 pg_dump.c:9334 pg_dump.c:9473 +#: pg_dump.c:9618 pg_dump.c:9718 #, c-format msgid "unrecognized table OID %u" msgstr "ცხრილის უცნობი OID: %u" -#: pg_dump.c:7920 +#: pg_dump.c:7935 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "მოულოდნელი ინდექსის მონაცემები ცხრილისთვის \"%s\"" -#: pg_dump.c:8459 +#: pg_dump.c:8474 #, c-format msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found" msgstr "სისწორის შემოწმების შეცდომა. მშობელი ცხრილი OID-ით %u pg_rewrite-ის ელემენტიდან OID-ით %u ვერ ვიპოვე" -#: pg_dump.c:9321 +#: pg_dump.c:9338 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "სვეტის მოულოდნელი მონაცემები ცხრილისთვის %s" -#: pg_dump.c:9353 +#: pg_dump.c:9370 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "ცხრილში \"%s\" სვეტები არასწორადაა დანომრილი" -#: pg_dump.c:9418 +#: pg_dump.c:9435 #, c-format msgid "finding table default expressions" msgstr "ვეძებ ცხრილის ნაგულისხმევ გამოსახულებებს" -#: pg_dump.c:9460 +#: pg_dump.c:9477 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "adnum -ის არასწორი მნიშვნელობა %d ცხრილისთვის \"%s\"" -#: pg_dump.c:9553 +#: pg_dump.c:9570 #, c-format msgid "finding invalid not-null constraints" msgstr "ვეძებ არასწორ არანულოვან შეზღუდვებს" -#: pg_dump.c:9651 +#: pg_dump.c:9668 #, c-format msgid "finding table check constraints" msgstr "ვეძებ ცხრილის შემოწმების შეზღუდვებს" -#: pg_dump.c:9705 +#: pg_dump.c:9722 #, c-format msgid "expected %d check constraint on table \"%s\" but found %d" msgid_plural "expected %d check constraints on table \"%s\" but found %d" msgstr[0] "მოველოდი %d შემოწმების შეზღუდვას ცხრილზე \"%s\", მაგრამ %d" msgstr[1] "მოველოდი %d შემოწმების შეზღუდვას ცხრილზე \"%s\", მაგრამ %d" -#: pg_dump.c:9709 +#: pg_dump.c:9726 #, c-format msgid "The system catalogs might be corrupted." msgstr "სისტემის კატალოგი შეიძლება დაზიანებულია." -#: pg_dump.c:10514 +#: pg_dump.c:10531 #, c-format msgid "role with OID %u does not exist" msgstr "როლი OID-ით %u არ არსებობს" -#: pg_dump.c:10626 pg_dump.c:10655 +#: pg_dump.c:10643 pg_dump.c:10672 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "pg_init_privs -ის არასწორი ჩანაწერი: %u %u %d" -#: pg_dump.c:10951 +#: pg_dump.c:10968 #, c-format msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" msgstr "სტატისტიკის დამპი დალაგებული არაა (მიმდინარე: %d %s %s. მოველოდი: %d %s %s)" -#: pg_dump.c:11092 +#: pg_dump.c:11109 #, c-format msgid "unexpected null attname" msgstr "მოულოდნელი null attname" -#: pg_dump.c:11121 +#: pg_dump.c:11138 #, c-format msgid "could not find index attname \"%s\"" msgstr "ინდექსის attname \"%s\" აღმოჩენილი არაა" -#: pg_dump.c:11607 +#: pg_dump.c:11624 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "აკლია მეტამონაცემები დიდი ობიექტებისთვის \"%s\"" -#: pg_dump.c:11893 +#: pg_dump.c:11910 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "მონაცემის ტიპი %s-ის typetype თურმე არასორია" -#: pg_dump.c:13521 +#: pg_dump.c:13538 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "უცნობი provolatile მნიშვნელობა ფუნქციისთვის \"%s\"" -#: pg_dump.c:13571 pg_dump.c:15467 +#: pg_dump.c:13588 pg_dump.c:15484 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "უცნობი proparallel მნიშვნელობა ფუნქციისთვის \"%s\"" -#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 +#: pg_dump.c:13718 pg_dump.c:13824 pg_dump.c:13831 #, c-format msgid "could not find function definition for function with OID %u" msgstr "ფუნქციის აღწერა ფუნქციისთვის OID-ით %u ვერ ვიპოვე" -#: pg_dump.c:13740 +#: pg_dump.c:13757 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "pg_cast.castfunc ან pg_cast.castmethod ველების არასწორი მნიშვნელობა" -#: pg_dump.c:13743 +#: pg_dump.c:13760 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "pg_cast.castmethod ველის არასწორი მნიშვნელობა" -#: pg_dump.c:13833 +#: pg_dump.c:13850 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "არასწორი გარდაქმნის აღწერა. ერთ-ერთი, trffromsql ან trftosql ნულს არ უნდა უდრიდეს" -#: pg_dump.c:13850 +#: pg_dump.c:13867 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "pg_transform.trffromsql ველის არასწორი მნიშვნელობა" -#: pg_dump.c:13871 +#: pg_dump.c:13888 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "pg_transform.trftosql ველის არასწორი მნიშვნელობა" -#: pg_dump.c:14016 +#: pg_dump.c:14033 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "postfix ოპერატორები მხარდაჭერილი აღარაა (ოპერატორი \"%s\")" -#: pg_dump.c:14186 +#: pg_dump.c:14203 #, c-format msgid "could not find operator with OID %s" msgstr "ოპერატორი OID-ით %s არ არსებობს" -#: pg_dump.c:14254 +#: pg_dump.c:14271 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "წვდომის მეთოდის (%2$s) არასწორი ტიპი: %1$c" -#: pg_dump.c:14928 pg_dump.c:14996 +#: pg_dump.c:14945 pg_dump.c:15013 #, c-format msgid "unrecognized collation provider: %s" msgstr "კოლაციის უცნობი მომწოდებელი: %s" -#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 -#: pg_dump.c:14980 +#: pg_dump.c:14954 pg_dump.c:14961 pg_dump.c:14972 pg_dump.c:14982 +#: pg_dump.c:14997 #, c-format msgid "invalid collation \"%s\"" msgstr "არასწორი კოლაცია \"%s\"" -#: pg_dump.c:15386 +#: pg_dump.c:15403 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "აგრეგატის (%s) aggfinalmodify -ის უცნობი ტიპი" -#: pg_dump.c:15442 +#: pg_dump.c:15459 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "აგრეგატის (%s) aggmfinalmodify -ის უცნობი ტიპი" -#: pg_dump.c:16162 +#: pg_dump.c:16179 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "ნაგულისხმევ პრივილეგიებში არსებული ობიექტის უცნობი ტიპი: %d" -#: pg_dump.c:16178 +#: pg_dump.c:16195 #, c-format msgid "could not parse default ACL list (%s)" msgstr "ნაგულიხმები ACL სიის ანალიზი შეუძლებელია: %s" -#: pg_dump.c:16262 +#: pg_dump.c:16279 #, c-format msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "საწყისი ACL სიის (%s) დამუშავების შეცდომა ან ნაგულისხმევი (%s) ობიექტისთვის \"%s\" (%s)" -#: pg_dump.c:16287 +#: pg_dump.c:16304 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "შეცდომა ACL სიის (%s) დამუშავებისას ან ნაგულისხმევი (%s) ობიექტისთვის \"%s\" (%s)" -#: pg_dump.c:16830 +#: pg_dump.c:16847 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "ხედის (%s) აღწერის გამოთხოვამ მონაცემები არ დააბრუნა" -#: pg_dump.c:16833 +#: pg_dump.c:16850 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "ხედის (%s) აღწერის გამოთხოვამ ერთზე მეტი აღწერა დააბრუნა" -#: pg_dump.c:16840 +#: pg_dump.c:16857 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "ხედის (%s) აღწერა, როგორც ჩანს, ცარიელია (ნულოვანი სიგრძე)" -#: pg_dump.c:16925 +#: pg_dump.c:16942 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS-ები უკვე მხარდაუჭერელია (ცხრილი \"%s\")" -#: pg_dump.c:18065 +#: pg_dump.c:18082 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "სვეტების არასწორი რიცხვი %d ცხრილისთვის %s" -#: pg_dump.c:18143 +#: pg_dump.c:18160 #, c-format msgid "could not parse index statistic columns" msgstr "ინდექსის სტატისტიკის სვეტების დამუშავების შეცდომა" -#: pg_dump.c:18145 +#: pg_dump.c:18162 #, c-format msgid "could not parse index statistic values" msgstr "ინდექსის სტატისტიკის მნიშვნელობების დამუშავების შეცდომა" -#: pg_dump.c:18147 +#: pg_dump.c:18164 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "ინდექსის სტატისტიკისთვის სვეტებისა და მნიშვნელობების რაოდენობა არ ემთხვევა" -#: pg_dump.c:18376 +#: pg_dump.c:18393 #, c-format msgid "missing index for constraint \"%s\"" msgstr "შეზღუდვას ინდექსი აკლია: \"%s\"" -#: pg_dump.c:18645 +#: pg_dump.c:18662 #, c-format msgid "unrecognized constraint type: %c" msgstr "შეზღუდვის უცნობი ტიპი: %c" -#: pg_dump.c:18698 +#: pg_dump.c:18715 #, c-format msgid "unrecognized sequence type: %s" msgstr "მიმდევრობის უცნობი ტიპი: %s" -#: pg_dump.c:18830 pg_dump.c:19062 +#: pg_dump.c:18848 pg_dump.c:19086 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)" msgstr[0] "მოთხოვნამ, რომელსაც მონაცემები მიმდევრობიდან (%s) უნდა მიეღო, %d მწკრივი დააბრუნა. (მოველოდი: 1)" msgstr[1] "მოთხოვნამ, რომელსაც მონაცემები მიმდევრობიდან (%s) უნდა მიეღო, %d მწკრივი დააბრუნა. (მოველოდი: 1)" -#: pg_dump.c:18866 +#: pg_dump.c:18884 #, c-format msgid "unrecognized sequence type: %d" msgstr "მიმდევრობის უცნობი ტიპი: %d" -#: pg_dump.c:19395 +#: pg_dump.c:19109 +#, c-format +msgid "failed to get data for sequence \"%s\"; user may lack SELECT privilege on the sequence or the sequence may have been concurrently dropped" +msgstr "ჩავარდა მონაცემების მიღება მიმდევრობისთვის \"%s\". მომხმარებელს, შეიძლება, SELECT პრივილეგია არ აქვს მიმდევრობაზე, ან მიმდევრობა, შეიძლება, იმავე დროს წაიშალა" + +#: pg_dump.c:19430 #, c-format msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned" msgstr "მოთხოვნის შეცდომა, რომელსაც ცხრილისთვის \"%2$s\" წესი \"%1$s\" უნდა მიეღო: დაბრუნებულია მწკრივების არასწორი რაოდენობა" -#: pg_dump.c:19548 +#: pg_dump.c:19583 #, c-format msgid "could not find referenced extension %u" msgstr "მიბმული გაფართოება (%u) ვერ ვიპოვე" -#: pg_dump.c:19647 +#: pg_dump.c:19682 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "კონფიგურაციებისა და პირობების რაოდენობა გაფართოებისთვის არ ემთხვევა" -#: pg_dump.c:19779 +#: pg_dump.c:19814 #, c-format msgid "reading dependency data" msgstr "დამოკიდებულების მონაცემების კითხვა" -#: pg_dump.c:19865 +#: pg_dump.c:19900 #, c-format msgid "no referencing object %u %u" msgstr "მიბმადი ობიექტის გარეშე %u %u" -#: pg_dump.c:19876 +#: pg_dump.c:19911 #, c-format msgid "no referenced object %u %u" msgstr "მიბმული ობიექტის გარეშე %u %u" -#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 -#: pg_restore.c:675 +#: pg_dump.c:20346 pg_dump.c:20384 pg_dumpall.c:1842 pg_restore.c:642 +#: pg_restore.c:688 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "ფილტრი %s \"%s\"-სთვის დაშვებული არაა" -#: pg_dump_sort.c:648 +#: pg_dump_sort.c:660 #, c-format msgid "invalid dumpId %d" msgstr "არასწორი dumpId %d" -#: pg_dump_sort.c:654 +#: pg_dump_sort.c:666 #, c-format msgid "invalid dependency %d" msgstr "არასწორი დამოკიდებულება %d" -#: pg_dump_sort.c:818 +#: pg_dump_sort.c:830 #, c-format msgid "could not identify dependency loop" msgstr "დამოკიდებულებების მარყუჟები ნაპოვნი არაა" -#: pg_dump_sort.c:1462 +#: pg_dump_sort.c:1474 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" msgstr[0] "ცხრილები, რომლებშიც აღმოჩენილია წრიული გარე-გასაღების შეზღუდვები:" msgstr[1] "ცხრილები, რომლებშიც აღმოჩენილია წრიული გარე-გასაღების შეზღუდვები:" -#: pg_dump_sort.c:1467 +#: pg_dump_sort.c:1479 #, c-format msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints." msgstr "შეიძლება დამპის აღდგენა --disable-trigger-ების გამორთვის ან დროებით შეზღუდვების გადაყრის გარეშე ვერ შეძლოთ." -#: pg_dump_sort.c:1468 +#: pg_dump_sort.c:1480 #, c-format msgid "Consider using a full dump instead of a --data-only dump to avoid this problem." msgstr "ამ პრობლემის ასარიდებლად უმჯობესია --data-only -ის მაგიერ სრული დამპი აიღოთ." -#: pg_dump_sort.c:1480 +#: pg_dump_sort.c:1492 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "ამ ელემენტებს შორის დამოკიდებულებების მარყუჟის ამოხსნა შეუძლებელია:" @@ -2664,25 +2630,10 @@ msgstr "პროგრამა „%s“ ნაპოვნია „%s“-ი #: pg_dumpall.c:402 #, c-format -msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" -msgstr "პარამეტრი --exclude-database არ შეიძლება -g/--globals-only, -r/--roles-only, და -t/--tablespaces-only -სთან ერთად იყოს გამოყენებული" - -#: pg_dumpall.c:410 -#, c-format -msgid "options -g/--globals-only and -r/--roles-only cannot be used together" -msgstr "პარამეტრები -g/--globals-only და -r/--roles-only ერთად ვერ გამოიყენება" - -#: pg_dumpall.c:417 -#, c-format -msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" -msgstr "პარამეტრები -g/--globals-only და -t/--tablespaces-only ერთად ვერ გამოიყენება" - -#: pg_dumpall.c:427 -#, c-format -msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" -msgstr "პარამეტრები -r/--roles-only და -t/--tablespaces-only ერთად ვერ გამოიყენება" +msgid "option %s cannot be used together with %s, %s, or %s" +msgstr "პარამეტრს %s ვერ გამოიყენებთ პარამეტრებთან %s, %s, ან %s ერთად" -#: pg_dumpall.c:528 +#: pg_dumpall.c:534 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2691,7 +2642,7 @@ msgstr "" "ვერ დაუკავშირდა მონაცემთა ბაზებს \"postgres\" ან \"template1\"\n" "გთხოვთ მიუთითოთ ალტერნატიული მონაცემთა ბაზა." -#: pg_dumpall.c:693 +#: pg_dumpall.c:699 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2700,72 +2651,72 @@ msgstr "" "%s გაიტანს PostgreSQL-ის მონაცემთა ბაზის კლასტერს SQL სკრიპტის სახით.\n" "\n" -#: pg_dumpall.c:695 +#: pg_dumpall.c:701 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [პარამეტრი]...\n" -#: pg_dumpall.c:698 +#: pg_dumpall.c:704 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=FILENAME გამოტანის ფაილის სახელი\n" -#: pg_dumpall.c:705 +#: pg_dumpall.c:711 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean ბაზის წაშლა თავიდან შექმნამდე\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:713 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr " -g, --globals-only წაიშლება მხოლოდ გლობალური ობიექტები და არა ბაზები\n" -#: pg_dumpall.c:708 pg_restore.c:546 +#: pg_dumpall.c:714 pg_restore.c:559 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner ობიექტების მფლობელობის აღდგენის გამოტოვება\n" -#: pg_dumpall.c:709 +#: pg_dumpall.c:715 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr " -r, --roles-only გამოიტანს მხოლოდ როლებს და არც ბაზებს და არც ცხრილების სივრცეებს\n" -#: pg_dumpall.c:711 +#: pg_dumpall.c:717 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr " -S, --superuser=NAME გამოსაყენებელი ზემომხმარებლის სახელი\n" -#: pg_dumpall.c:712 +#: pg_dumpall.c:718 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr " -t, --tablespaces-only გამოიტანს მხლოდ ცხრილების სივრცეებს და არც ბაზებს და არც როლებს\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:724 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr " --exclude-database=PATTERN გამორიცხავს ბაზებს, რომლებიც PATTERN-ს ემთხვევა\n" -#: pg_dumpall.c:720 +#: pg_dumpall.c:726 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " --filter=FILENAME ფაილში მითითებული მონაცემთა ბაზების ამოღება\n" -#: pg_dumpall.c:728 +#: pg_dumpall.c:734 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords როლების პაროლები გამოტანილ არ იქნება\n" -#: pg_dumpall.c:750 +#: pg_dumpall.c:756 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=CONNSTR კავშირის სტრიქონი\n" -#: pg_dumpall.c:752 +#: pg_dumpall.c:758 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=ბაზისსახელი ალტერნატიული ბაზის სახელი)\n" -#: pg_dumpall.c:759 +#: pg_dumpall.c:765 #, c-format msgid "" "\n" @@ -2778,58 +2729,58 @@ msgstr "" "სტანდარტულ გამოტანაზე იქნება გამოტანილი.\n" "\n" -#: pg_dumpall.c:904 +#: pg_dumpall.c:910 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "როლის სახელი, რომელიც \"pg_\"-ით იწყება, გამოტოვებულია (%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#: pg_dumpall.c:1127 pg_dumpall.c:1185 pg_dumpall.c:1194 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "აღმოჩენილია მიტოვებული pg_auth-ის წევრის ჩანაწერი როლისთვის %s" -#: pg_dumpall.c:1154 +#: pg_dumpall.c:1160 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "სწორი დამპის მიმდევრობა წევრობისთვის როლში \"%s\" აღმოჩენილი არაა" -#: pg_dumpall.c:1309 +#: pg_dumpall.c:1315 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "ვერ გაანალიზდა ACL სია (%s) პარამეტრისთვის \"%s\"" -#: pg_dumpall.c:1436 +#: pg_dumpall.c:1442 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "შეცდომა ACL-ის სიის (%s) დამუშავებისთვის ცხრილის სივრცისთვის \"%s\"" -#: pg_dumpall.c:1650 +#: pg_dumpall.c:1656 #, c-format msgid "excluding database \"%s\"" msgstr "გამოირიცხა ბაზა \"%s\"" -#: pg_dumpall.c:1654 +#: pg_dumpall.c:1660 #, c-format msgid "dumping database \"%s\"" msgstr "დამპის გამოტანა ბაზისთვის \"%s\"" -#: pg_dumpall.c:1687 +#: pg_dumpall.c:1693 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump -ის შეცდომა ბაზაზე \"%s\". დასასრული" -#: pg_dumpall.c:1693 +#: pg_dumpall.c:1699 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "გამოსატანი ფაილის თავიდან გახსნის შეცდომა \"%s\": %m" -#: pg_dumpall.c:1737 +#: pg_dumpall.c:1743 #, c-format msgid "running \"%s\"" msgstr "%s -ის გაშვება" -#: pg_dumpall.c:1856 +#: pg_dumpall.c:1862 msgid "unsupported filter object" msgstr "მხარდაუჭერელი ფილტრის ობიექტი" @@ -2838,47 +2789,27 @@ msgstr "მხარდაუჭერელი ფილტრის ობი msgid "one of -d/--dbname and -f/--file must be specified" msgstr "-d/--dbname და-f/--file -დან მხოლოდ ერთ-ერთის მითითება შეგიძლიათ" -#: pg_restore.c:355 -#, c-format -msgid "options -d/--dbname and -f/--file cannot be used together" -msgstr "-d/--dbname და-f/--file ერთად არ გამოიყენება" - -#: pg_restore.c:361 -#, c-format -msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "პარამეტრები -d/--dbname და --restrict-key ერთად არ შეიძლება, გამოყენებულ იქნას" - -#: pg_restore.c:410 -#, c-format -msgid "options -1/--single-transaction and --transaction-size cannot be used together" -msgstr "პარამეტრებს -1/--single-transaction და --transaction-size ერთად ვერ გამოიყენებთ" - -#: pg_restore.c:417 -#, c-format -msgid "options -C/--create and -1/--single-transaction cannot be used together" -msgstr "-C/--create და -1/--single-transaction ერთად არ გამოიყენება" - -#: pg_restore.c:421 +#: pg_restore.c:433 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "--single-transaction -ის მითითება ბევრ დავალებასთან ერთად შეუძლებელია" -#: pg_restore.c:467 +#: pg_restore.c:480 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "არქივის ფორმატი \"%s\" მხარდაჭერილი არაა. გამოიყენეთ psql" -#: pg_restore.c:471 +#: pg_restore.c:484 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "არქივის უცნობი ფორმატი \"%s\"; გთხოვთ მიუთითოთ \"გ\", \"დ\", ან \"t\"" -#: pg_restore.c:509 +#: pg_restore.c:522 #, c-format msgid "errors ignored on restore: %d" msgstr "აღდგენისას იგნორირებული შეცდომების რაოდენობა: %d" -#: pg_restore.c:522 +#: pg_restore.c:535 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2887,47 +2818,47 @@ msgstr "" "%s აღადგენს PostgreSQL მონაცემთა ბაზას pg_dump-ის მიერ შექმნილი არქივებიდან.\n" "\n" -#: pg_restore.c:524 +#: pg_restore.c:537 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [პარამეტრი]... [ფაილი]\n" -#: pg_restore.c:527 +#: pg_restore.c:540 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=ბაზისსახელი მონაცემთა ბაზის სახელი\n" -#: pg_restore.c:528 +#: pg_restore.c:541 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILENAME გამოტანის ფაილის სახელი(stdout-ზე გამოსატანად გამოიყენეთ \"-\")\n" -#: pg_restore.c:529 +#: pg_restore.c:542 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr " -F, --format=c|d|t მარქაფის ფაილის ფორმატი (ავტომატური უნდა იყოს)\n" -#: pg_restore.c:530 +#: pg_restore.c:543 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list არქივის სარჩევის მიმოხილვის გამოტანა\n" -#: pg_restore.c:531 +#: pg_restore.c:544 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose დამატებითი ინფორმაციის გამოტანა\n" -#: pg_restore.c:532 +#: pg_restore.c:545 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version ვერსიის ინფორმაციის გამოტანა და გასვლა\n" -#: pg_restore.c:533 +#: pg_restore.c:546 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help ამ დახმარების ჩვენება და გასვლა\n" -#: pg_restore.c:535 +#: pg_restore.c:548 #, c-format msgid "" "\n" @@ -2936,32 +2867,32 @@ msgstr "" "\n" "პარამეტრები, რომლებიც აკონტროლებენ გამოტანას:\n" -#: pg_restore.c:536 +#: pg_restore.c:549 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only აღდგება მხოლოდ მონაცემები, სქემის გარეშე\n" -#: pg_restore.c:538 +#: pg_restore.c:551 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create სამიზნე ბაზის შექმნა\n" -#: pg_restore.c:539 +#: pg_restore.c:552 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error დაუყოვნებლივი გამოსვლა შეცდომის შემთხვევაში\n" -#: pg_restore.c:540 +#: pg_restore.c:553 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME მითითებული სახელის მქონე ინდექსის აღდგენა\n" -#: pg_restore.c:541 +#: pg_restore.c:554 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr " -j, --jobs=NUM აღდგენისას მითითებული რაოდენობის პარალელური დავალების გაშვება\n" -#: pg_restore.c:542 +#: pg_restore.c:555 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -2970,57 +2901,57 @@ msgstr "" " -L, --use-list=FILENAME გამოტანის ასარჩევად/დასალაგებლად მითითებული\n" " ფაილის შემცველობის გამოყენება\n" -#: pg_restore.c:544 +#: pg_restore.c:557 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAME მხოლოდ მითითებული სქემის ობიექტების აღდგენა\n" -#: pg_restore.c:545 +#: pg_restore.c:558 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=სახელი მითითებული სახელის მქონე სქემაში ობიექტები არ აღდგება\n" -#: pg_restore.c:547 +#: pg_restore.c:560 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=სახელი(არგები) მითითებული სახელის მქონე ფუნქციის აღდგენა\n" -#: pg_restore.c:548 +#: pg_restore.c:561 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only აღდგება მხოლოდ სქემები, მონაცემები კი არა\n" -#: pg_restore.c:549 +#: pg_restore.c:562 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr " -S, --superuser=NAME ტრიგერების გამოსართავად გამოყენებული ზემომხმარებლის სახელი\n" -#: pg_restore.c:550 +#: pg_restore.c:563 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NAME მითითებული ურთიერთობის აღდგენა (ცხრილი, ხედი, და ა.შ.)\n" -#: pg_restore.c:551 +#: pg_restore.c:564 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME მითითებული ტრიგერის აღდგენა \n" -#: pg_restore.c:552 +#: pg_restore.c:565 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges წვდომის პრივილეგიების აღდგენის გამოტოვება (grant/revoke)\n" -#: pg_restore.c:553 +#: pg_restore.c:566 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction აღდგენის ერთ ტრანზაქციად გაშვება\n" -#: pg_restore.c:555 +#: pg_restore.c:568 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security მწკრივების უსაფრთხოების ჩართვა\n" -#: pg_restore.c:556 +#: pg_restore.c:569 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3029,17 +2960,17 @@ msgstr "" " --filter=FILENAME ობიექტების აღდგენა ან გამოტოვება ფაილში\n" " მითითებული გამოსახულებების მიხედვით\n" -#: pg_restore.c:559 +#: pg_restore.c:572 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments კომენტარის ბრძანებები არ აღდგება\n" -#: pg_restore.c:560 +#: pg_restore.c:573 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data მონაცემები არ აღდგება\n" -#: pg_restore.c:561 +#: pg_restore.c:574 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3048,72 +2979,72 @@ msgstr "" " --no-data-for-failed-tables ცხრილების, რომლის შექმნა შეუძლებელია,\n" " მონაცემები არ აღდგება\n" -#: pg_restore.c:563 +#: pg_restore.c:576 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies მწკრივის უსაფრთხოების პოლიტიკები არ აღდგება\n" -#: pg_restore.c:564 +#: pg_restore.c:577 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications გამოცემები არ აღდგება\n" -#: pg_restore.c:565 +#: pg_restore.c:578 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema სქემები არ აღდგება\n" -#: pg_restore.c:566 +#: pg_restore.c:579 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels უსაფრთხოების ჭდეები არ აღდგება\n" -#: pg_restore.c:567 +#: pg_restore.c:580 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics სტატისტიკის აღდგენა არ მოხდება\n" -#: pg_restore.c:568 +#: pg_restore.c:581 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions გამოწერები არ აღდგება\n" -#: pg_restore.c:569 +#: pg_restore.c:582 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method ცხრილის წვდომის მეთოდები არ აღდგება\n" -#: pg_restore.c:570 +#: pg_restore.c:583 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces ცხრილის სივრცის მინიჭებები არ აღდგება\n" -#: pg_restore.c:572 +#: pg_restore.c:585 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr " --section=სექცია მითითებული სექციის აღდგენა (pre-data, data, ან post-data)\n" -#: pg_restore.c:573 +#: pg_restore.c:586 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics სტატისტიკის აღდგენა\n" -#: pg_restore.c:574 +#: pg_restore.c:587 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only აღდგება, მხოლოდ, სტატისტიკა, სქემა, ან მონაცემები კი - არა\n" -#: pg_restore.c:577 +#: pg_restore.c:590 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N გადაცემა ყოველი N ობიექტის შემდეგ\n" -#: pg_restore.c:588 +#: pg_restore.c:601 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME აღდგენამდე SET ROLE -ის გაშვება\n" -#: pg_restore.c:590 +#: pg_restore.c:603 #, c-format msgid "" "\n" @@ -3124,7 +3055,7 @@ msgstr "" "შესაძლებელია პარამეტრების -I, -n, -N, -P, -t, -T და --section ერთად და მრავალჯერ მითითება ერთზე\n" "მეტი ობიექტის ამოსაღებად.\n" -#: pg_restore.c:593 +#: pg_restore.c:606 #, c-format msgid "" "\n" @@ -3313,6 +3244,22 @@ msgstr "" #~ msgid "option --exclude-database cannot be used together with -g/--globals-only" #~ msgstr "პარამეტრი --exclude-database არ შეიძლება, გამოიყენოთ პარამეტრთან -g/--globals-only ერთად" +#, c-format +#~ msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" +#~ msgstr "პარამეტრი --exclude-database არ შეიძლება -g/--globals-only, -r/--roles-only, და -t/--tablespaces-only -სთან ერთად იყოს გამოყენებული" + +#, c-format +#~ msgid "option --if-exists requires option -c/--clean" +#~ msgstr "--if-exists -ს -c/--clean პარამეტრი ესაჭიროება" + +#, c-format +#~ msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" +#~ msgstr "--on-conflict-do-nothing -ს --inserts, --rows-per-insert ან --column-inserts ესაჭიროება" + +#, c-format +#~ msgid "option --restrict-key can only be used with --format=plain" +#~ msgstr "პარამეტრს --restrict-key მხოლოდ, პარამეტრთან --format=plain ერთად იქნეს გამოყენებული" + #, c-format #~ msgid "option -C/--create must be specified when restoring an archive created by pg_dumpall" #~ msgstr "პარამეტრი -C/--create, მხოლოდ, მაშინ უნდა მიუთითოთ, როცა ხდება pg_dumpall-ის მიერ შექმნილი არქივის აღდგენა" @@ -3333,6 +3280,14 @@ msgstr "" #~ msgid "option -l/--list cannot be used when restoring an archive created by pg_dumpall" #~ msgstr "პარამეტრს -l/--list ვერ გამოიყენებთ pg_dumpall-ის მიერ შექმნილი არქივის აღდგენისას" +#, c-format +#~ msgid "options --statistics and --no-statistics cannot be used together" +#~ msgstr "პარამეტრებს --statistics და --no-statistics ერთად ვერ გამოიყენებთ" + +#, c-format +#~ msgid "options --statistics-only and --no-statistics cannot be used together" +#~ msgstr "პარამეტრებს --statistics-only და --no-statistics ერთად ვერ გამოიყენებთ" + #, c-format #~ msgid "options --with-data and --no-data cannot be used together" #~ msgstr "პარამეტრებს --with-data და --no-data ერთად ვერ გამოიყენებთ" @@ -3345,6 +3300,62 @@ msgstr "" #~ msgid "options --with-statistics and --no-statistics cannot be used together" #~ msgstr "პარამეტრებს --with-statistics და --no-statistics ერთად ვერ გამოიყენებთ" +#, c-format +#~ msgid "options -1/--single-transaction and --transaction-size cannot be used together" +#~ msgstr "პარამეტრებს -1/--single-transaction და --transaction-size ერთად ვერ გამოიყენებთ" + +#, c-format +#~ msgid "options -C/--create and -1/--single-transaction cannot be used together" +#~ msgstr "-C/--create და -1/--single-transaction ერთად არ გამოიყენება" + +#, c-format +#~ msgid "options -a/--data-only and --no-data cannot be used together" +#~ msgstr "პარამეტრებს -a/--data-only და --no-data ერთად ვერ გამოიყენებთ" + +#, c-format +#~ msgid "options -a/--data-only and --statistics-only cannot be used together" +#~ msgstr "პარამეტრებს -a/--data-only და --statistics-only ერთად ვერ გამოიყენებთ" + +#, c-format +#~ msgid "options -c/--clean and -a/--data-only cannot be used together" +#~ msgstr "პარამეტრები -c/--clean და -a/--data-only ერთად ვერ გამოიყენება" + +#, c-format +#~ msgid "options -d/--dbname and --restrict-key cannot be used together" +#~ msgstr "პარამეტრები -d/--dbname და --restrict-key ერთად არ შეიძლება, გამოყენებულ იქნას" + +#, c-format +#~ msgid "options -d/--dbname and -f/--file cannot be used together" +#~ msgstr "-d/--dbname და-f/--file ერთად არ გამოიყენება" + +#, c-format +#~ msgid "options -g/--globals-only and -r/--roles-only cannot be used together" +#~ msgstr "პარამეტრები -g/--globals-only და -r/--roles-only ერთად ვერ გამოიყენება" + +#, c-format +#~ msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" +#~ msgstr "პარამეტრები -g/--globals-only და -t/--tablespaces-only ერთად ვერ გამოიყენება" + +#, c-format +#~ msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" +#~ msgstr "პარამეტრები -r/--roles-only და -t/--tablespaces-only ერთად ვერ გამოიყენება" + +#, c-format +#~ msgid "options -s/--schema-only and --include-foreign-data cannot be used together" +#~ msgstr "პარამეტრები -s/--schema-only და --include-foreign-data ერთად ვერ გამოიყენება" + +#, c-format +#~ msgid "options -s/--schema-only and --no-schema cannot be used together" +#~ msgstr "პარამეტრებს -s/--schema-only და --no-schema ერთად ვერ გამოიყენებთ" + +#, c-format +#~ msgid "options -s/--schema-only and --statistics-only cannot be used together" +#~ msgstr "პარამეტრებს -s/--schema-only და --statistics-only ერთად ვერ გამოიყენებთ" + +#, c-format +#~ msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#~ msgstr "პარამეტრები -s/--schema-only და -a/--data-only ერთად ვერ გამოიყენება" + #, c-format #~ msgid "query produced null referenced table name for foreign key trigger \"%s\" on table \"%s\" (OID of table: %u)" #~ msgstr "მოთხოვნის შედეგია ნულოვანი ბმის ცხრილის სახელის უცხო გასაღების ტრიგერი \"%s\" ცხრილზე \"%s\" (ცხრილის OID: %u)" diff --git a/src/bin/pg_dump/po/ru.po b/src/bin/pg_dump/po/ru.po index bda1ebc6c36..953ad1c2bde 100644 --- a/src/bin/pg_dump/po/ru.po +++ b/src/bin/pg_dump/po/ru.po @@ -5,13 +5,13 @@ # Oleg Bartunov , 2004. # Sergey Burladyan , 2012. # Dmitriy Olshevskiy , 2014. -# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_dump (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-09 06:28+0200\n" -"PO-Revision-Date: 2025-09-04 22:18+0300\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 09:21+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -174,7 +174,7 @@ msgstr "не удалось получить информацию о файле msgid "this build does not support sync method \"%s\"" msgstr "эта сборка программы не поддерживает метод синхронизации \"%s\"" -#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:944 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не удалось открыть каталог \"%s\": %m" @@ -612,13 +612,13 @@ msgstr "не удалось распаковать данные: %s" msgid "Password: " msgstr "Пароль: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 -#: pg_dump_sort.c:1467 pg_dump_sort.c:1487 +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:952 +#: pg_dump_sort.c:1478 pg_dump_sort.c:1498 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:514 +#: connectdb.c:157 pg_dumpall.c:520 #, c-format msgid "could not connect to database \"%s\"" msgstr "не удалось подключиться к базе данных: \"%s\"" @@ -643,32 +643,32 @@ msgstr "продолжение работы с другой версией се msgid "server version: %s; %s version: %s" msgstr "версия сервера: %s; версия %s: %s" -#: connectdb.c:282 pg_dumpall.c:1784 +#: connectdb.c:282 pg_dumpall.c:1790 #, c-format msgid "executing %s" msgstr "выполняется %s" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1796 #, c-format msgid "query failed: %s" msgstr "ошибка при выполнении запроса: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1797 #, c-format msgid "Query was: %s" msgstr "Выполнялся запрос: %s" -#: dumputils.c:948 +#: dumputils.c:949 #, c-format msgid "could not create directory \"%s\": %m" msgstr "не удалось создать каталог \"%s\": %m" -#: dumputils.c:953 +#: dumputils.c:954 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "не удалось поменять права для каталога \"%s\": %m" -#: dumputils.c:958 +#: dumputils.c:959 #, c-format msgid "directory \"%s\" is not empty" msgstr "каталог \"%s\" не пуст" @@ -945,7 +945,7 @@ msgstr "восстановление большого объекта с OID %u" msgid "could not create large object %u: %s" msgstr "не удалось создать большой объект %u: %s" -#: pg_backup_archiver.c:1525 pg_dump.c:4085 +#: pg_backup_archiver.c:1525 pg_dump.c:4100 #, c-format msgid "could not open large object %u: %s" msgstr "не удалось открыть большой объект %u: %s" @@ -973,7 +973,7 @@ msgstr "не удалось закрыть файл оглавления: %m" #: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 #: pg_backup_directory.c:550 pg_backup_directory.c:616 -#: pg_backup_directory.c:634 pg_dumpall.c:548 +#: pg_backup_directory.c:634 pg_dumpall.c:554 #, c-format msgid "could not open output file \"%s\": %m" msgstr "не удалось открыть выходной файл \"%s\": %m" @@ -1405,7 +1405,7 @@ msgstr "ошибка в PQputCopyEnd: %s" msgid "COPY failed for table \"%s\": %s" msgstr "сбой команды COPY для таблицы \"%s\": %s" -#: pg_backup_db.c:460 pg_dump.c:2458 +#: pg_backup_db.c:460 pg_dump.c:2473 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "неожиданные лишние результаты получены при COPY для таблицы \"%s\"" @@ -1566,10 +1566,10 @@ msgstr "" msgid "unrecognized section name: \"%s\"" msgstr "нераспознанное имя раздела: \"%s\"" -#: pg_backup_utils.c:57 pg_dump.c:799 pg_dump.c:816 pg_dumpall.c:385 -#: pg_dumpall.c:395 pg_dumpall.c:403 pg_dumpall.c:411 pg_dumpall.c:418 -#: pg_dumpall.c:428 pg_dumpall.c:530 pg_restore.c:326 pg_restore.c:342 -#: pg_restore.c:356 +#: pg_backup_utils.c:57 pg_dump.c:800 pg_dump.c:817 pg_dumpall.c:385 +#: pg_dumpall.c:395 pg_dumpall.c:405 pg_dumpall.c:414 pg_dumpall.c:422 +#: pg_dumpall.c:434 pg_dumpall.c:536 pg_restore.c:326 pg_restore.c:342 +#: pg_restore.c:357 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Для дополнительной информации попробуйте \"%s --help\"." @@ -1579,143 +1579,96 @@ msgstr "Для дополнительной информации попробу msgid "out of on_exit_nicely slots" msgstr "превышен предел обработчиков штатного выхода" -#: pg_dump.c:814 pg_dumpall.c:393 pg_restore.c:340 +#: pg_dump.c:815 pg_dumpall.c:393 pg_restore.c:340 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "слишком много аргументов командной строки (первый: \"%s\")" -#: pg_dump.c:826 pg_restore.c:380 -#, c-format -msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" - -#: pg_dump.c:828 pg_restore.c:382 -#, c-format -msgid "options -s/--schema-only and --statistics-only cannot be used together" -msgstr "параметры -s/--schema-only и --statistics-only исключают друг друга" - -#: pg_dump.c:830 pg_restore.c:384 -#, c-format -msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "параметры -a/--data-only и --statistics-only исключают друг друга" - -#: pg_dump.c:834 pg_restore.c:388 -#, c-format -msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "параметры -a/--data-only и --no-data исключают друг друга" - -#: pg_dump.c:836 pg_restore.c:390 -#, c-format -msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "параметры -s/--schema-only и --no-schema исключают друг друга" - -#: pg_dump.c:838 pg_restore.c:392 -#, c-format -msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "параметры --statistics-only и --no-statistics исключают друг друга" - -#: pg_dump.c:842 pg_restore.c:396 -#, c-format -msgid "options --statistics and --no-statistics cannot be used together" -msgstr "параметры --statistics и --no-statistics исключают друг друга" - # TO REVEIW -#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#: pg_dump.c:827 pg_dump.c:830 pg_dump.c:833 pg_dump.c:838 pg_dump.c:841 +#: pg_dump.c:844 pg_dump.c:849 pg_dump.c:854 pg_dump.c:857 pg_dump.c:861 +#: pg_dump.c:869 pg_dumpall.c:412 pg_dumpall.c:420 pg_dumpall.c:432 +#: pg_restore.c:355 pg_restore.c:362 pg_restore.c:382 pg_restore.c:385 +#: pg_restore.c:388 pg_restore.c:393 pg_restore.c:396 pg_restore.c:399 +#: pg_restore.c:404 pg_restore.c:409 pg_restore.c:412 pg_restore.c:416 +#: pg_restore.c:420 pg_restore.c:428 #, c-format msgid "options %s and %s cannot be used together" msgstr "параметры %s и %s исключают друг друга" -#: pg_dump.c:853 -#, c-format -msgid "" -"options -s/--schema-only and --include-foreign-data cannot be used together" -msgstr "" -"параметры -s/--schema-only и --include-foreign-data исключают друг друга" - -#: pg_dump.c:856 +#: pg_dump.c:865 #, c-format -msgid "option --include-foreign-data is not supported with parallel backup" -msgstr "" -"параметр --include-foreign-data не поддерживается при копировании в " -"параллельном режиме" - -#: pg_dump.c:859 pg_restore.c:407 -#, c-format -msgid "options -c/--clean and -a/--data-only cannot be used together" -msgstr "параметры -c/--clean и -a/--data-only исключают друг друга" +msgid "option %s is not supported with parallel backup" +msgstr "параметр %s не поддерживается при копировании в параллельном режиме" -#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 +#: pg_dump.c:873 pg_dumpall.c:427 pg_restore.c:460 #, c-format -msgid "option --if-exists requires option -c/--clean" -msgstr "параметр --if-exists требует указания -c/--clean" +msgid "option %s requires option %s" +msgstr "параметр %s требует указания %s" -#: pg_dump.c:882 +#: pg_dump.c:894 #, c-format -msgid "" -"option --on-conflict-do-nothing requires option --inserts, --rows-per-" -"insert, or --column-inserts" -msgstr "" -"параметр --on-conflict-do-nothing требует указания --inserts, --rows-per-" -"insert или --column-inserts" +msgid "option %s requires option %s, %s, or %s" +msgstr "параметр %s требует указания %s, %s или %s" -#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#: pg_dump.c:912 pg_dumpall.c:504 pg_restore.c:375 #, c-format msgid "could not generate restrict key" msgstr "не удалось сгенерировать ограничительный ключ" -#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#: pg_dump.c:914 pg_dumpall.c:506 pg_restore.c:377 #, c-format msgid "invalid restrict key" msgstr "неверный ограничительный ключ" -#: pg_dump.c:903 +#: pg_dump.c:917 #, c-format -msgid "option --restrict-key can only be used with --format=plain" -msgstr "параметр --restrict-key можно использовать только с --format=plain" +msgid "option %s can only be used with %s" +msgstr "параметр %s можно использовать только с %s" -#: pg_dump.c:925 +#: pg_dump.c:940 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "нераспознанный алгоритм сжатия: \"%s\"" -#: pg_dump.c:932 +#: pg_dump.c:947 #, c-format msgid "invalid compression specification: %s" msgstr "неправильное указание сжатия: %s" -#: pg_dump.c:945 +#: pg_dump.c:960 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "pg_dump в настоящее время не поддерживает параметр сжатия \"%s\"" -#: pg_dump.c:957 +#: pg_dump.c:972 #, c-format msgid "parallel backup only supported by the directory format" msgstr "" "параллельное резервное копирование поддерживается только с форматом " "\"каталог\"" -#: pg_dump.c:1003 +#: pg_dump.c:1018 #, c-format msgid "last built-in OID is %u" msgstr "последний системный OID: %u" -#: pg_dump.c:1012 +#: pg_dump.c:1027 #, c-format msgid "no matching schemas were found" msgstr "соответствующие схемы не найдены" -#: pg_dump.c:1029 +#: pg_dump.c:1044 #, c-format msgid "no matching tables were found" msgstr "соответствующие таблицы не найдены" -#: pg_dump.c:1057 +#: pg_dump.c:1072 #, c-format msgid "no matching extensions were found" msgstr "соответствующие расширения не найдены" -#: pg_dump.c:1251 +#: pg_dump.c:1266 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1724,17 +1677,17 @@ msgstr "" "%s выгружает базу данных PostgreSQL в виде скрипта SQL и в других форматах.\n" "\n" -#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 +#: pg_dump.c:1267 pg_dumpall.c:700 pg_restore.c:536 #, c-format msgid "Usage:\n" msgstr "Использование:\n" -#: pg_dump.c:1253 +#: pg_dump.c:1268 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [ПАРАМЕТР]... [ИМЯ_БД]\n" -#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 +#: pg_dump.c:1270 pg_dumpall.c:703 pg_restore.c:539 #, c-format msgid "" "\n" @@ -1743,12 +1696,12 @@ msgstr "" "\n" "Общие параметры:\n" -#: pg_dump.c:1256 +#: pg_dump.c:1271 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=ИМЯ имя выходного файла или каталога\n" -#: pg_dump.c:1257 +#: pg_dump.c:1272 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1758,7 +1711,7 @@ msgstr "" " (пользовательский | каталог | tar |\n" " текстовый (по умолчанию))\n" -#: pg_dump.c:1259 +#: pg_dump.c:1274 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr "" @@ -1766,18 +1719,18 @@ msgstr "" "число\n" " заданий\n" -#: pg_dump.c:1260 pg_dumpall.c:699 +#: pg_dump.c:1275 pg_dumpall.c:705 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose режим подробных сообщений\n" -#: pg_dump.c:1261 pg_dumpall.c:700 +#: pg_dump.c:1276 pg_dumpall.c:706 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" # well-spelled: ИНФО -#: pg_dump.c:1262 +#: pg_dump.c:1277 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1786,7 +1739,7 @@ msgstr "" " -Z, --compress=МЕТОД[:ДОП_ИНФО]\n" " выполнять сжатие как указано\n" -#: pg_dump.c:1264 pg_dumpall.c:701 +#: pg_dump.c:1279 pg_dumpall.c:707 #, c-format msgid "" " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" @@ -1794,7 +1747,7 @@ msgstr "" " --lock-wait-timeout=ТАЙМ-АУТ прервать операцию при тайм-ауте блокировки " "таблицы\n" -#: pg_dump.c:1265 pg_dumpall.c:733 +#: pg_dump.c:1280 pg_dumpall.c:739 #, c-format msgid "" " --no-sync do not wait for changes to be written safely " @@ -1803,17 +1756,17 @@ msgstr "" " --no-sync не ждать надёжного сохранения изменений на " "диске\n" -#: pg_dump.c:1266 +#: pg_dump.c:1281 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=МЕТОД метод синхронизации файлов с ФС\n" -#: pg_dump.c:1267 pg_dumpall.c:702 +#: pg_dump.c:1282 pg_dumpall.c:708 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_dump.c:1269 pg_dumpall.c:703 +#: pg_dump.c:1284 pg_dumpall.c:709 #, c-format msgid "" "\n" @@ -1822,7 +1775,7 @@ msgstr "" "\n" "Параметры, управляющие выводом:\n" -#: pg_dump.c:1270 pg_dumpall.c:704 +#: pg_dump.c:1285 pg_dumpall.c:710 #, c-format msgid "" " -a, --data-only dump only the data, not the schema or " @@ -1831,30 +1784,30 @@ msgstr "" " -a, --data-only выгрузить только данные, без схемы и " "статистики\n" -#: pg_dump.c:1271 +#: pg_dump.c:1286 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects выгрузить большие объекты\n" -#: pg_dump.c:1272 +#: pg_dump.c:1287 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr "" " --blobs (устаревшая альтернатива --large-objects)\n" -#: pg_dump.c:1273 +#: pg_dump.c:1288 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects исключить из выгрузки большие объекты\n" -#: pg_dump.c:1274 +#: pg_dump.c:1289 #, c-format msgid "" " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr "" " --no-blobs (устаревшая альтернатива --no-large-objects)\n" -#: pg_dump.c:1275 pg_restore.c:537 +#: pg_dump.c:1290 pg_restore.c:550 #, c-format msgid "" " -c, --clean clean (drop) database objects before " @@ -1863,7 +1816,7 @@ msgstr "" " -c, --clean очистить (удалить) объекты БД при " "восстановлении\n" -#: pg_dump.c:1276 +#: pg_dump.c:1291 #, c-format msgid "" " -C, --create include commands to create database in dump\n" @@ -1871,28 +1824,28 @@ msgstr "" " -C, --create добавить в копию команды создания базы " "данных\n" -#: pg_dump.c:1277 +#: pg_dump.c:1292 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr "" " -e, --extension=ШАБЛОН выгрузить только указанное расширение(я)\n" -#: pg_dump.c:1278 pg_dumpall.c:706 +#: pg_dump.c:1293 pg_dumpall.c:712 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=КОДИРОВКА выгружать данные в заданной кодировке\n" -#: pg_dump.c:1279 +#: pg_dump.c:1294 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=ШАБЛОН выгрузить только указанную схему(ы)\n" -#: pg_dump.c:1280 +#: pg_dump.c:1295 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=ШАБЛОН НЕ выгружать указанную схему(ы)\n" -#: pg_dump.c:1281 +#: pg_dump.c:1296 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1901,7 +1854,7 @@ msgstr "" " -O, --no-owner не восстанавливать владение объектами\n" " при использовании текстового формата\n" -#: pg_dump.c:1283 pg_dumpall.c:710 +#: pg_dump.c:1298 pg_dumpall.c:716 #, c-format msgid "" " -s, --schema-only dump only the schema, no data or statistics\n" @@ -1909,7 +1862,7 @@ msgstr "" " -s, --schema-only выгрузить только схему, без данных и " "статистики\n" -#: pg_dump.c:1284 +#: pg_dump.c:1299 #, c-format msgid "" " -S, --superuser=NAME superuser user name to use in plain-text " @@ -1918,27 +1871,27 @@ msgstr "" " -S, --superuser=ИМЯ имя пользователя, который будет задействован\n" " при восстановлении из текстового формата\n" -#: pg_dump.c:1285 +#: pg_dump.c:1300 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=ШАБЛОН выгрузить только указанную таблицу(ы)\n" -#: pg_dump.c:1286 +#: pg_dump.c:1301 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=ШАБЛОН НЕ выгружать указанную таблицу(ы)\n" -#: pg_dump.c:1287 pg_dumpall.c:713 +#: pg_dump.c:1302 pg_dumpall.c:719 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges не выгружать права (назначение/отзыв)\n" -#: pg_dump.c:1288 pg_dumpall.c:714 +#: pg_dump.c:1303 pg_dumpall.c:720 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade только для утилит обновления БД\n" -#: pg_dump.c:1289 pg_dumpall.c:715 +#: pg_dump.c:1304 pg_dumpall.c:721 #, c-format msgid "" " --column-inserts dump data as INSERT commands with column " @@ -1947,7 +1900,7 @@ msgstr "" " --column-inserts выгружать данные в виде INSERT с именами " "столбцов\n" -#: pg_dump.c:1290 pg_dumpall.c:716 +#: pg_dump.c:1305 pg_dumpall.c:722 #, c-format msgid "" " --disable-dollar-quoting disable dollar quoting, use SQL standard " @@ -1956,7 +1909,7 @@ msgstr "" " --disable-dollar-quoting отключить спецстроки с $, выводить строки\n" " по стандарту SQL\n" -#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 +#: pg_dump.c:1306 pg_dumpall.c:723 pg_restore.c:567 #, c-format msgid "" " --disable-triggers disable triggers during data-only restore\n" @@ -1964,7 +1917,7 @@ msgstr "" " --disable-triggers отключить триггеры при восстановлении\n" " только данных, без схемы\n" -#: pg_dump.c:1292 +#: pg_dump.c:1307 #, c-format msgid "" " --enable-row-security enable row security (dump only content user " @@ -1975,12 +1928,12 @@ msgstr "" "только\n" " те данные, которые доступны пользователю)\n" -#: pg_dump.c:1294 +#: pg_dump.c:1309 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=ШАБЛОН НЕ выгружать указанное расширение(я)\n" -#: pg_dump.c:1295 +#: pg_dump.c:1310 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1992,7 +1945,7 @@ msgstr "" " НЕ выгружать указанную таблицу(ы), а также\n" " её секции и дочерние таблицы\n" -#: pg_dump.c:1298 +#: pg_dump.c:1313 #, c-format msgid "" " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" @@ -2000,7 +1953,7 @@ msgstr "" " --exclude-table-data=ШАБЛОН НЕ выгружать данные указанной таблицы " "(таблиц)\n" -#: pg_dump.c:1299 +#: pg_dump.c:1314 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -2012,7 +1965,7 @@ msgstr "" "(таблиц),\n" " а также её секций и дочерних таблиц\n" -#: pg_dump.c:1302 pg_dumpall.c:719 +#: pg_dump.c:1317 pg_dumpall.c:725 #, c-format msgid "" " --extra-float-digits=NUM override default setting for " @@ -2020,7 +1973,7 @@ msgid "" msgstr "" " --extra-float-digits=ЧИСЛО переопределить значение extra_float_digits\n" -#: pg_dump.c:1303 +#: pg_dump.c:1318 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from " @@ -2031,13 +1984,13 @@ msgstr "" " дампа в соответствии с выражениями в этом " "файле\n" -#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 +#: pg_dump.c:1320 pg_dumpall.c:727 pg_restore.c:571 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr "" " --if-exists применять IF EXISTS при удалении объектов\n" -#: pg_dump.c:1306 +#: pg_dump.c:1321 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -2048,7 +2001,7 @@ msgstr "" " включать в копию данные сторонних таблиц с\n" " серверов с именами, подпадающими под ШАБЛОН\n" -#: pg_dump.c:1309 pg_dumpall.c:722 +#: pg_dump.c:1324 pg_dumpall.c:728 #, c-format msgid "" " --inserts dump data as INSERT commands, rather than " @@ -2057,77 +2010,77 @@ msgstr "" " --inserts выгрузить данные в виде команд INSERT, не " "COPY\n" -#: pg_dump.c:1310 pg_dumpall.c:723 +#: pg_dump.c:1325 pg_dumpall.c:729 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr "" " --load-via-partition-root загружать секции через главную таблицу\n" -#: pg_dump.c:1311 pg_dumpall.c:724 +#: pg_dump.c:1326 pg_dumpall.c:730 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments не выгружать команды комментариев\n" -#: pg_dump.c:1312 pg_dumpall.c:725 +#: pg_dump.c:1327 pg_dumpall.c:731 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data не выгружать данные\n" -#: pg_dump.c:1313 pg_dumpall.c:726 +#: pg_dump.c:1328 pg_dumpall.c:732 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies не выгружать политики защиты строк\n" -#: pg_dump.c:1314 pg_dumpall.c:727 +#: pg_dump.c:1329 pg_dumpall.c:733 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications не выгружать публикации\n" -#: pg_dump.c:1315 pg_dumpall.c:729 +#: pg_dump.c:1330 pg_dumpall.c:735 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema не выгружать схему\n" -#: pg_dump.c:1316 pg_dumpall.c:730 +#: pg_dump.c:1331 pg_dumpall.c:736 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr "" " --no-security-labels не выгружать назначения меток безопасности\n" -#: pg_dump.c:1317 pg_dumpall.c:731 +#: pg_dump.c:1332 pg_dumpall.c:737 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics не выгружать статистику\n" -#: pg_dump.c:1318 pg_dumpall.c:732 +#: pg_dump.c:1333 pg_dumpall.c:738 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions не выгружать подписки\n" -#: pg_dump.c:1319 pg_dumpall.c:734 +#: pg_dump.c:1334 pg_dumpall.c:740 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method не выгружать табличные методы доступа\n" -#: pg_dump.c:1320 pg_dumpall.c:735 +#: pg_dump.c:1335 pg_dumpall.c:741 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr "" " --no-tablespaces не выгружать назначения табличных " "пространств\n" -#: pg_dump.c:1321 pg_dumpall.c:736 +#: pg_dump.c:1336 pg_dumpall.c:742 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression не выгружать методы сжатия TOAST\n" -#: pg_dump.c:1322 pg_dumpall.c:737 +#: pg_dump.c:1337 pg_dumpall.c:743 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr "" " --no-unlogged-table-data не выгружать данные нежурналируемых таблиц\n" -#: pg_dump.c:1323 pg_dumpall.c:738 +#: pg_dump.c:1338 pg_dumpall.c:744 #, c-format msgid "" " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT " @@ -2136,7 +2089,7 @@ msgstr "" " --on-conflict-do-nothing добавлять ON CONFLICT DO NOTHING в команды " "INSERT\n" -#: pg_dump.c:1324 pg_dumpall.c:739 +#: pg_dump.c:1339 pg_dumpall.c:745 #, c-format msgid "" " --quote-all-identifiers quote all identifiers, even if not key words\n" @@ -2145,7 +2098,7 @@ msgstr "" " а не только ключевые слова\n" # well-spelled: ОГР -#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#: pg_dump.c:1340 pg_dumpall.c:746 pg_restore.c:584 #, c-format msgid "" " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" @@ -2154,7 +2107,7 @@ msgstr "" "\\restrict\n" " в psql\n" -#: pg_dump.c:1326 pg_dumpall.c:741 +#: pg_dump.c:1341 pg_dumpall.c:747 #, c-format msgid "" " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" @@ -2162,7 +2115,7 @@ msgstr "" " --rows-per-insert=ЧИСЛО число строк в одном INSERT; подразумевает --" "inserts\n" -#: pg_dump.c:1327 +#: pg_dump.c:1342 #, c-format msgid "" " --section=SECTION dump named section (pre-data, data, or post-" @@ -2171,12 +2124,12 @@ msgstr "" " --section=РАЗДЕЛ выгрузить заданный раздел\n" " (pre-data, data или post-data)\n" -#: pg_dump.c:1328 pg_dumpall.c:742 +#: pg_dump.c:1343 pg_dumpall.c:748 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data выгружать данные последовательностей\n" -#: pg_dump.c:1329 +#: pg_dump.c:1344 #, c-format msgid "" " --serializable-deferrable wait until the dump can run without " @@ -2185,18 +2138,18 @@ msgstr "" " --serializable-deferrable дождаться момента для выгрузки данных без " "аномалий\n" -#: pg_dump.c:1330 +#: pg_dump.c:1345 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr "" " --snapshot=СНИМОК использовать при выгрузке заданный снимок\n" -#: pg_dump.c:1331 pg_dumpall.c:743 +#: pg_dump.c:1346 pg_dumpall.c:749 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics выгружать статистику\n" -#: pg_dump.c:1332 pg_dumpall.c:744 +#: pg_dump.c:1347 pg_dumpall.c:750 #, c-format msgid "" " --statistics-only dump only the statistics, not schema or data\n" @@ -2204,7 +2157,7 @@ msgstr "" " --statistics-only выгрузить только статистику, без схемы и " "данных\n" -#: pg_dump.c:1333 pg_restore.c:575 +#: pg_dump.c:1348 pg_restore.c:588 #, c-format msgid "" " --strict-names require table and/or schema include patterns " @@ -2217,7 +2170,7 @@ msgstr "" "минимум\n" " один объект\n" -#: pg_dump.c:1335 +#: pg_dump.c:1350 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2227,7 +2180,7 @@ msgstr "" "также\n" " её секции и дочерние таблицы\n" -#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 +#: pg_dump.c:1352 pg_dumpall.c:751 pg_restore.c:591 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2239,7 +2192,7 @@ msgstr "" " устанавливать владельца, используя команды\n" " SET SESSION AUTHORIZATION вместо ALTER OWNER\n" -#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 +#: pg_dump.c:1356 pg_dumpall.c:755 pg_restore.c:595 #, c-format msgid "" "\n" @@ -2248,34 +2201,34 @@ msgstr "" "\n" "Параметры подключения:\n" -#: pg_dump.c:1342 +#: pg_dump.c:1357 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=БД имя базы данных для выгрузки\n" -#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 +#: pg_dump.c:1358 pg_dumpall.c:757 pg_restore.c:596 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=ИМЯ компьютер с сервером баз данных или каталог " "сокетов\n" -#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 +#: pg_dump.c:1359 pg_dumpall.c:759 pg_restore.c:597 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=ПОРТ номер порта сервера БД\n" -#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 +#: pg_dump.c:1360 pg_dumpall.c:760 pg_restore.c:598 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=ИМЯ имя пользователя баз данных\n" -#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 +#: pg_dump.c:1361 pg_dumpall.c:761 pg_restore.c:599 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password не запрашивать пароль\n" -#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 +#: pg_dump.c:1362 pg_dumpall.c:762 pg_restore.c:600 #, c-format msgid "" " -W, --password force password prompt (should happen " @@ -2283,12 +2236,12 @@ msgid "" msgstr "" " -W, --password запрашивать пароль всегда (обычно не требуется)\n" -#: pg_dump.c:1348 pg_dumpall.c:757 +#: pg_dump.c:1363 pg_dumpall.c:763 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ИМЯ_РОЛИ выполнить SET ROLE перед выгрузкой\n" -#: pg_dump.c:1350 +#: pg_dump.c:1365 #, c-format msgid "" "\n" @@ -2301,22 +2254,22 @@ msgstr "" "PGDATABASE.\n" "\n" -#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 +#: pg_dump.c:1367 pg_dumpall.c:767 pg_restore.c:607 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Об ошибках сообщайте по адресу <%s>.\n" -#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 +#: pg_dump.c:1368 pg_dumpall.c:768 pg_restore.c:608 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" -#: pg_dump.c:1372 pg_dumpall.c:560 +#: pg_dump.c:1387 pg_dumpall.c:566 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "указана неверная клиентская кодировка \"%s\"" -#: pg_dump.c:1520 +#: pg_dump.c:1535 #, c-format msgid "" "parallel dumps from standby servers are not supported by this server version" @@ -2324,175 +2277,175 @@ msgstr "" "выгрузка дампа в параллельном режиме с ведомых серверов не поддерживается " "данной версией сервера" -#: pg_dump.c:1585 +#: pg_dump.c:1600 #, c-format msgid "invalid output format \"%s\" specified" msgstr "указан неверный формат вывода: \"%s\"" -#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 +#: pg_dump.c:1641 pg_dump.c:1697 pg_dump.c:1750 pg_dumpall.c:1594 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "неверное полное имя (слишком много компонентов): %s" -#: pg_dump.c:1634 +#: pg_dump.c:1649 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "схемы, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1687 +#: pg_dump.c:1702 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "расширения, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1740 +#: pg_dump.c:1755 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "сторонние серверы, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1811 +#: pg_dump.c:1826 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "неверное имя отношения (слишком много компонентов): %s" -#: pg_dump.c:1833 +#: pg_dump.c:1848 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "таблицы, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1860 +#: pg_dump.c:1875 #, c-format msgid "You are currently not connected to a database." msgstr "В данный момент вы не подключены к базе данных." -#: pg_dump.c:1863 +#: pg_dump.c:1878 #, c-format msgid "cross-database references are not implemented: %s" msgstr "ссылки между базами не реализованы: %s" -#: pg_dump.c:2329 +#: pg_dump.c:2344 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "выгрузка содержимого таблицы \"%s.%s\"" -#: pg_dump.c:2439 +#: pg_dump.c:2454 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "Ошибка выгрузки таблицы \"%s\": сбой в PQgetCopyData()." -#: pg_dump.c:2440 pg_dump.c:2450 +#: pg_dump.c:2455 pg_dump.c:2465 #, c-format msgid "Error message from server: %s" msgstr "Сообщение об ошибке с сервера: %s" # skip-rule: language-mix -#: pg_dump.c:2441 pg_dump.c:2451 +#: pg_dump.c:2456 pg_dump.c:2466 #, c-format msgid "Command was: %s" msgstr "Выполнялась команда: %s" -#: pg_dump.c:2449 +#: pg_dump.c:2464 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "Ошибка выгрузки таблицы \"%s\": сбой в PQgetResult()." -#: pg_dump.c:2540 +#: pg_dump.c:2555 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "из таблицы \"%s\" получено неверное количество полей" -#: pg_dump.c:3258 +#: pg_dump.c:3273 #, c-format msgid "saving database definition" msgstr "сохранение определения базы данных" -#: pg_dump.c:3373 +#: pg_dump.c:3388 #, c-format msgid "unrecognized locale provider: %s" msgstr "нераспознанный провайдер локали: %s" -#: pg_dump.c:3734 +#: pg_dump.c:3749 #, c-format msgid "saving encoding = %s" msgstr "сохранение кодировки (%s)" -#: pg_dump.c:3759 +#: pg_dump.c:3774 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "сохранение \"standard_conforming_strings = %s\"" -#: pg_dump.c:3798 +#: pg_dump.c:3813 #, c-format msgid "could not parse result of current_schemas()" msgstr "не удалось разобрать результат current_schemas()" -#: pg_dump.c:3817 +#: pg_dump.c:3832 #, c-format msgid "saving \"search_path = %s\"" msgstr "сохранение \"search_path = %s\"" -#: pg_dump.c:3853 +#: pg_dump.c:3868 #, c-format msgid "reading large objects" msgstr "чтение больших объектов" -#: pg_dump.c:4074 +#: pg_dump.c:4089 #, c-format msgid "saving large objects \"%s\"" msgstr "сохранение больших объектов \"%s\"" -#: pg_dump.c:4095 +#: pg_dump.c:4110 #, c-format msgid "error reading large object %u: %s" msgstr "ошибка чтения большого объекта %u: %s" -#: pg_dump.c:4203 +#: pg_dump.c:4218 #, c-format msgid "reading row-level security policies" msgstr "чтение политик защиты на уровне строк" -#: pg_dump.c:4344 +#: pg_dump.c:4359 #, c-format msgid "unexpected policy command type: %c" msgstr "нераспознанный тип команды в политике: %c" -#: pg_dump.c:4786 pg_dump.c:5343 pg_dump.c:7972 pg_dump.c:13452 pg_dump.c:19650 -#: pg_dump.c:19652 pg_dump.c:20284 +#: pg_dump.c:4801 pg_dump.c:5358 pg_dump.c:7987 pg_dump.c:13467 pg_dump.c:19678 +#: pg_dump.c:19680 pg_dump.c:20312 #, c-format msgid "could not parse %s array" msgstr "не удалось разобрать массив %s" -#: pg_dump.c:5002 +#: pg_dump.c:5017 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "" "подписки не выгружены, так как текущий пользователь не суперпользователь" -#: pg_dump.c:5206 +#: pg_dump.c:5221 #, c-format msgid "subscription with OID %u does not exist" msgstr "подписка с OID %u не существует" -#: pg_dump.c:5213 +#: pg_dump.c:5228 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "нарушение целостности: таблица с OID %u не найдена" -#: pg_dump.c:5799 +#: pg_dump.c:5814 #, c-format msgid "could not find parent extension for %s %s" msgstr "не удалось найти родительское расширение для %s %s" -#: pg_dump.c:5937 +#: pg_dump.c:5952 #, c-format msgid "schema with OID %u does not exist" msgstr "схема с OID %u не существует" -#: pg_dump.c:6994 +#: pg_dump.c:7009 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "для отношения типа \"%c\" нельзя выгрузить статистику" -#: pg_dump.c:7506 pg_dump.c:18989 +#: pg_dump.c:7521 pg_dump.c:19005 #, c-format msgid "" "failed sanity check, parent table with OID %u of sequence with OID %u not " @@ -2501,7 +2454,7 @@ msgstr "" "нарушение целостности: по OID %u не удалось найти родительскую таблицу " "последовательности с OID %u" -#: pg_dump.c:7651 +#: pg_dump.c:7666 #, c-format msgid "" "failed sanity check, table OID %u appearing in pg_partitioned_table not found" @@ -2509,18 +2462,18 @@ msgstr "" "нарушение целостности: таблица с OID %u, фигурирующим в " "pg_partitioned_table, не найдена" -#: pg_dump.c:7916 pg_dump.c:8209 pg_dump.c:8672 pg_dump.c:9319 pg_dump.c:9458 -#: pg_dump.c:9603 pg_dump.c:9703 +#: pg_dump.c:7931 pg_dump.c:8224 pg_dump.c:8687 pg_dump.c:9334 pg_dump.c:9473 +#: pg_dump.c:9618 pg_dump.c:9718 #, c-format msgid "unrecognized table OID %u" msgstr "нераспознанный OID таблицы %u" -#: pg_dump.c:7920 +#: pg_dump.c:7935 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "неожиданно получены данные индекса для таблицы \"%s\"" -#: pg_dump.c:8459 +#: pg_dump.c:8474 #, c-format msgid "" "failed sanity check, parent table with OID %u of pg_rewrite entry with OID " @@ -2529,37 +2482,37 @@ msgstr "" "нарушение целостности: по OID %u не удалось найти родительскую таблицу для " "записи pg_rewrite с OID %u" -#: pg_dump.c:9323 +#: pg_dump.c:9338 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "неожиданно получены данные столбцов для таблицы \"%s\"" -#: pg_dump.c:9355 +#: pg_dump.c:9370 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "неверная нумерация столбцов в таблице \"%s\"" -#: pg_dump.c:9420 +#: pg_dump.c:9435 #, c-format msgid "finding table default expressions" msgstr "поиск выражений по умолчанию для таблиц" -#: pg_dump.c:9462 +#: pg_dump.c:9477 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "неверное значение adnum (%d) в таблице \"%s\"" -#: pg_dump.c:9555 +#: pg_dump.c:9570 #, c-format msgid "finding invalid not-null constraints" msgstr "поиск некорректных ограничений NOT NULL" -#: pg_dump.c:9653 +#: pg_dump.c:9668 #, c-format msgid "finding table check constraints" msgstr "поиск ограничений-проверок для таблиц" -#: pg_dump.c:9707 +#: pg_dump.c:9722 #, c-format msgid "expected %d check constraint on table \"%s\" but found %d" msgid_plural "expected %d check constraints on table \"%s\" but found %d" @@ -2570,76 +2523,76 @@ msgstr[1] "" msgstr[2] "" "ожидалось %d ограничений-проверок для таблицы \"%s\", но найдено: %d" -#: pg_dump.c:9711 +#: pg_dump.c:9726 #, c-format msgid "The system catalogs might be corrupted." msgstr "Возможно, повреждены системные каталоги." -#: pg_dump.c:10516 +#: pg_dump.c:10531 #, c-format msgid "role with OID %u does not exist" msgstr "роль с OID %u не существует" -#: pg_dump.c:10628 pg_dump.c:10657 +#: pg_dump.c:10643 pg_dump.c:10672 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "неподдерживаемая запись в pg_init_privs: %u %u %d" -#: pg_dump.c:10953 +#: pg_dump.c:10968 #, c-format msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" msgstr "" "статистика выгружена в неправильном порядке (текущий: %d %s %s, ожидаемый: " "%d %s %s)" -#: pg_dump.c:11094 +#: pg_dump.c:11109 #, c-format msgid "unexpected null attname" msgstr "неожиданный null в имени атрибута (attname)" -#: pg_dump.c:11123 +#: pg_dump.c:11138 #, c-format msgid "could not find index attname \"%s\"" msgstr "не удалось получить для индекса имя атрибута (attname) \"%s\"" -#: pg_dump.c:11609 +#: pg_dump.c:11624 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "отсутствуют метаданные о больших объектах \"%s\"" -#: pg_dump.c:11895 +#: pg_dump.c:11910 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "у типа данных \"%s\" по-видимому неправильный тип типа" # TO REVEIW -#: pg_dump.c:13523 +#: pg_dump.c:13538 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "недопустимое значение provolatile для функции \"%s\"" # TO REVEIW -#: pg_dump.c:13573 pg_dump.c:15469 +#: pg_dump.c:13588 pg_dump.c:15484 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "недопустимое значение proparallel для функции \"%s\"" -#: pg_dump.c:13703 pg_dump.c:13809 pg_dump.c:13816 +#: pg_dump.c:13718 pg_dump.c:13824 pg_dump.c:13831 #, c-format msgid "could not find function definition for function with OID %u" msgstr "не удалось найти определение функции для функции с OID %u" -#: pg_dump.c:13742 +#: pg_dump.c:13757 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "неприемлемое значение в поле pg_cast.castfunc или pg_cast.castmethod" -#: pg_dump.c:13745 +#: pg_dump.c:13760 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "неприемлемое значение в поле pg_cast.castmethod" -#: pg_dump.c:13835 +#: pg_dump.c:13850 #, c-format msgid "" "bogus transform definition, at least one of trffromsql and trftosql should " @@ -2648,63 +2601,63 @@ msgstr "" "неприемлемое определение преобразования (trffromsql или trftosql должно быть " "ненулевым)" -#: pg_dump.c:13852 +#: pg_dump.c:13867 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "неприемлемое значение в поле pg_transform.trffromsql" -#: pg_dump.c:13873 +#: pg_dump.c:13888 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "неприемлемое значение в поле pg_transform.trftosql" -#: pg_dump.c:14018 +#: pg_dump.c:14033 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "постфиксные операторы больше не поддерживаются (оператор \"%s\")" -#: pg_dump.c:14188 +#: pg_dump.c:14203 #, c-format msgid "could not find operator with OID %s" msgstr "оператор с OID %s не найден" -#: pg_dump.c:14256 +#: pg_dump.c:14271 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "неверный тип \"%c\" метода доступа \"%s\"" -#: pg_dump.c:14930 pg_dump.c:14998 +#: pg_dump.c:14945 pg_dump.c:15013 #, c-format msgid "unrecognized collation provider: %s" msgstr "нераспознанный провайдер правил сортировки: %s" -#: pg_dump.c:14939 pg_dump.c:14946 pg_dump.c:14957 pg_dump.c:14967 -#: pg_dump.c:14982 +#: pg_dump.c:14954 pg_dump.c:14961 pg_dump.c:14972 pg_dump.c:14982 +#: pg_dump.c:14997 #, c-format msgid "invalid collation \"%s\"" msgstr "неверное правило сортировки \"%s\"" -#: pg_dump.c:15388 +#: pg_dump.c:15403 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "нераспознанное значение aggfinalmodify для агрегата \"%s\"" -#: pg_dump.c:15444 +#: pg_dump.c:15459 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "нераспознанное значение aggmfinalmodify для агрегата \"%s\"" -#: pg_dump.c:16164 +#: pg_dump.c:16179 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "нераспознанный тип объекта в определении прав по умолчанию: %d" -#: pg_dump.c:16180 +#: pg_dump.c:16195 #, c-format msgid "could not parse default ACL list (%s)" msgstr "не удалось разобрать список прав по умолчанию (%s)" -#: pg_dump.c:16264 +#: pg_dump.c:16279 #, c-format msgid "" "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" @@ -2712,20 +2665,20 @@ msgstr "" "не удалось разобрать изначальный список ACL (%s) или ACL по умолчанию (%s) " "для объекта \"%s\" (%s)" -#: pg_dump.c:16289 +#: pg_dump.c:16304 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "" "не удалось разобрать список ACL (%s) или ACL по умолчанию (%s) для объекта " "\"%s\" (%s)" -#: pg_dump.c:16832 +#: pg_dump.c:16847 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "" "запрос на получение определения представления \"%s\" не возвратил данные" -#: pg_dump.c:16835 +#: pg_dump.c:16850 #, c-format msgid "" "query to obtain definition of view \"%s\" returned more than one definition" @@ -2733,54 +2686,54 @@ msgstr "" "запрос на получение определения представления \"%s\" возвратил несколько " "определений" -#: pg_dump.c:16842 +#: pg_dump.c:16857 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "определение представления \"%s\" пустое (длина равна нулю)" -#: pg_dump.c:16927 +#: pg_dump.c:16942 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "свойство WITH OIDS больше не поддерживается (таблица \"%s\")" -#: pg_dump.c:18067 +#: pg_dump.c:18082 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "неверный номер столбца %d для таблицы \"%s\"" -#: pg_dump.c:18145 +#: pg_dump.c:18160 #, c-format msgid "could not parse index statistic columns" msgstr "не удалось разобрать столбцы статистики в индексе" -#: pg_dump.c:18147 +#: pg_dump.c:18162 #, c-format msgid "could not parse index statistic values" msgstr "не удалось разобрать значения статистики в индексе" -#: pg_dump.c:18149 +#: pg_dump.c:18164 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "" "столбцы, задающие статистику индекса, не соответствуют значениям по " "количеству" -#: pg_dump.c:18378 +#: pg_dump.c:18393 #, c-format msgid "missing index for constraint \"%s\"" msgstr "отсутствует индекс для ограничения \"%s\"" -#: pg_dump.c:18647 +#: pg_dump.c:18662 #, c-format msgid "unrecognized constraint type: %c" msgstr "нераспознанный тип ограничения: %c" -#: pg_dump.c:18700 +#: pg_dump.c:18715 #, c-format msgid "unrecognized sequence type: %s" msgstr "нераспознанный тип последовательности: %s" -#: pg_dump.c:18832 pg_dump.c:19064 +#: pg_dump.c:18848 pg_dump.c:19086 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "" @@ -2795,12 +2748,21 @@ msgstr[2] "" "запрос на получение данных последовательности \"%s\" вернул %d строк " "(ожидалась 1)" -#: pg_dump.c:18868 +#: pg_dump.c:18884 #, c-format msgid "unrecognized sequence type: %d" msgstr "нераспознанный тип последовательности: %d" -#: pg_dump.c:19402 +#: pg_dump.c:19109 +#, c-format +msgid "" +"failed to get data for sequence \"%s\"; user may lack SELECT privilege on " +"the sequence or the sequence may have been concurrently dropped" +msgstr "" +"не удалось получить данные последовательности \"%s\"; возможно, пользователь " +"не имеет права SELECT для неё или она была удалена" + +#: pg_dump.c:19430 #, c-format msgid "" "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows " @@ -2809,53 +2771,53 @@ msgstr "" "запрос на получение правила \"%s\" для таблицы \"%s\" возвратил неверное " "число строк" -#: pg_dump.c:19555 +#: pg_dump.c:19583 #, c-format msgid "could not find referenced extension %u" msgstr "не удалось найти упомянутое расширение %u" -#: pg_dump.c:19654 +#: pg_dump.c:19682 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "конфигурации расширения не соответствуют условиям по количеству" -#: pg_dump.c:19786 +#: pg_dump.c:19814 #, c-format msgid "reading dependency data" msgstr "чтение информации о зависимостях" -#: pg_dump.c:19872 +#: pg_dump.c:19900 #, c-format msgid "no referencing object %u %u" msgstr "нет подчинённого объекта %u %u" -#: pg_dump.c:19883 +#: pg_dump.c:19911 #, c-format msgid "no referenced object %u %u" msgstr "нет вышестоящего объекта %u %u" -#: pg_dump.c:20318 pg_dump.c:20356 pg_dumpall.c:1836 pg_restore.c:629 -#: pg_restore.c:675 +#: pg_dump.c:20346 pg_dump.c:20384 pg_dumpall.c:1842 pg_restore.c:642 +#: pg_restore.c:688 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "фильтр %s для \"%s\" не допускается" -#: pg_dump_sort.c:649 +#: pg_dump_sort.c:660 #, c-format msgid "invalid dumpId %d" msgstr "неверный dumpId %d" -#: pg_dump_sort.c:655 +#: pg_dump_sort.c:666 #, c-format msgid "invalid dependency %d" msgstr "неверная зависимость %d" -#: pg_dump_sort.c:819 +#: pg_dump_sort.c:830 #, c-format msgid "could not identify dependency loop" msgstr "не удалось определить цикл зависимостей" -#: pg_dump_sort.c:1463 +#: pg_dump_sort.c:1474 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" @@ -2863,7 +2825,7 @@ msgstr[0] "в следующей таблице зациклены ограни msgstr[1] "в следующих таблицах зациклены ограничения внешних ключей:" msgstr[2] "в следующих таблицах зациклены ограничения внешних ключей:" -#: pg_dump_sort.c:1468 +#: pg_dump_sort.c:1479 #, c-format msgid "" "You might not be able to restore the dump without using --disable-triggers " @@ -2872,7 +2834,7 @@ msgstr "" "Возможно, для восстановления базы потребуется использовать --disable-" "triggers или временно удалить ограничения." -#: pg_dump_sort.c:1469 +#: pg_dump_sort.c:1480 #, c-format msgid "" "Consider using a full dump instead of a --data-only dump to avoid this " @@ -2881,7 +2843,7 @@ msgstr "" "Во избежание этой проблемы, вероятно, стоит выгружать всю базу данных, а не " "только данные (--data-only)." -#: pg_dump_sort.c:1481 +#: pg_dump_sort.c:1492 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "не удалось разрешить цикл зависимостей для следующих объектов:" @@ -2900,34 +2862,13 @@ msgstr "" "программа \"%s\" найдена программой \"%s\", но её версия отличается от " "версии %s" +# TO REVEIW #: pg_dumpall.c:402 #, c-format -msgid "" -"option --exclude-database cannot be used together with -g/--globals-only, -" -"r/--roles-only, or -t/--tablespaces-only" -msgstr "" -"параметр --exclude-database несовместим с -g/--globals-only, -r/--roles-only " -"и -t/--tablespaces-only" - -#: pg_dumpall.c:410 -#, c-format -msgid "options -g/--globals-only and -r/--roles-only cannot be used together" -msgstr "параметры -g/--globals-only и -r/--roles-only исключают друг друга" +msgid "option %s cannot be used together with %s, %s, or %s" +msgstr "параметр %s нельзя использовать вместе с %s, %s или %s" -#: pg_dumpall.c:417 -#, c-format -msgid "" -"options -g/--globals-only and -t/--tablespaces-only cannot be used together" -msgstr "" -"параметры -g/--globals-only и -t/--tablespaces-only исключают друг друга" - -#: pg_dumpall.c:427 -#, c-format -msgid "" -"options -r/--roles-only and -t/--tablespaces-only cannot be used together" -msgstr "параметры -r/--roles-only и -t/--tablespaces-only исключают друг друга" - -#: pg_dumpall.c:528 +#: pg_dumpall.c:534 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2936,7 +2877,7 @@ msgstr "" "не удалось подключиться к базе данных \"postgres\" или \"template1\"\n" "Укажите другую базу данных." -#: pg_dumpall.c:693 +#: pg_dumpall.c:699 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2945,17 +2886,17 @@ msgstr "" "%s выгружает базу данных PostgreSQL в виде скрипта SQL.\n" "\n" -#: pg_dumpall.c:695 +#: pg_dumpall.c:701 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [ПАРАМЕТР]...\n" -#: pg_dumpall.c:698 +#: pg_dumpall.c:704 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=ИМЯ_ФАЙЛА имя выходного файла\n" -#: pg_dumpall.c:705 +#: pg_dumpall.c:711 #, c-format msgid "" " -c, --clean clean (drop) databases before recreating\n" @@ -2963,18 +2904,18 @@ msgstr "" " -c, --clean очистить (удалить) базы данных перед\n" " восстановлением\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:713 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr "" " -g, --globals-only выгрузить только глобальные объекты, без баз\n" -#: pg_dumpall.c:708 pg_restore.c:546 +#: pg_dumpall.c:714 pg_restore.c:559 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner не восстанавливать владение объектами\n" -#: pg_dumpall.c:709 +#: pg_dumpall.c:715 #, c-format msgid "" " -r, --roles-only dump only roles, no databases or tablespaces\n" @@ -2982,13 +2923,13 @@ msgstr "" " -r, --roles-only выгрузить только роли, без баз данных\n" " и табличных пространств\n" -#: pg_dumpall.c:711 +#: pg_dumpall.c:717 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr "" " -S, --superuser=ИМЯ имя пользователя для выполнения выгрузки\n" -#: pg_dumpall.c:712 +#: pg_dumpall.c:718 #, c-format msgid "" " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" @@ -2996,7 +2937,7 @@ msgstr "" " -t, --tablespaces-only выгружать только табличные пространства,\n" " без баз данных и ролей\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:724 #, c-format msgid "" " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" @@ -3004,7 +2945,7 @@ msgstr "" " --exclude-database=ШАБЛОН исключить базы с именами, подпадающими под " "шаблон\n" -#: pg_dumpall.c:720 +#: pg_dumpall.c:726 #, c-format msgid "" " --filter=FILENAME exclude databases based on expressions in " @@ -3013,22 +2954,22 @@ msgstr "" " --filter=ИМЯ_ФАЙЛА исключать базы данных в соответствии с\n" " выражениями в этом файле\n" -#: pg_dumpall.c:728 +#: pg_dumpall.c:734 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords не выгружать пароли ролей\n" -#: pg_dumpall.c:750 +#: pg_dumpall.c:756 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=СТРОКА подключиться с данной строкой подключения\n" -#: pg_dumpall.c:752 +#: pg_dumpall.c:758 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=ИМЯ_БД выбор другой базы данных по умолчанию\n" -#: pg_dumpall.c:759 +#: pg_dumpall.c:765 #, c-format msgid "" "\n" @@ -3042,60 +2983,60 @@ msgstr "" "вывод.\n" "\n" -#: pg_dumpall.c:904 +#: pg_dumpall.c:910 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "имя роли, начинающееся с \"pg_\", пропущено (%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#: pg_dumpall.c:1127 pg_dumpall.c:1185 pg_dumpall.c:1194 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "обнаружена потерянная запись pg_auth_members для роли %s" -#: pg_dumpall.c:1154 +#: pg_dumpall.c:1160 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "не удалось найти подходящий порядок выгрузки для членов роли \"%s\"" -#: pg_dumpall.c:1309 +#: pg_dumpall.c:1315 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "не удалось разобрать список ACL (%s) для параметра \"%s\"" -#: pg_dumpall.c:1436 +#: pg_dumpall.c:1442 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "" "не удалось разобрать список управления доступом (%s) для табл. пространства " "\"%s\"" -#: pg_dumpall.c:1650 +#: pg_dumpall.c:1656 #, c-format msgid "excluding database \"%s\"" msgstr "база данных \"%s\" исключается" -#: pg_dumpall.c:1654 +#: pg_dumpall.c:1660 #, c-format msgid "dumping database \"%s\"" msgstr "выгрузка базы данных \"%s\"" -#: pg_dumpall.c:1687 +#: pg_dumpall.c:1693 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "ошибка при обработке базы \"%s\", pg_dump завершается" -#: pg_dumpall.c:1693 +#: pg_dumpall.c:1699 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "не удалось повторно открыть выходной файл \"%s\": %m" -#: pg_dumpall.c:1737 +#: pg_dumpall.c:1743 #, c-format msgid "running \"%s\"" msgstr "выполняется \"%s\"" -#: pg_dumpall.c:1856 +#: pg_dumpall.c:1862 msgid "unsupported filter object" msgstr "неподдерживаемый объект фильтра" @@ -3105,53 +3046,28 @@ msgstr "неподдерживаемый объект фильтра" msgid "one of -d/--dbname and -f/--file must be specified" msgstr "необходимо указать -d/--dbname или -f/--file" -# TO REVEIW -#: pg_restore.c:355 -#, c-format -msgid "options -d/--dbname and -f/--file cannot be used together" -msgstr "параметры -d/--dbname и -f/--file исключают друг друга" - -# TO REVEIW -#: pg_restore.c:361 -#, c-format -msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "параметры -d/--dbname и --restrict-key исключают друг друга" - -#: pg_restore.c:410 -#, c-format -msgid "" -"options -1/--single-transaction and --transaction-size cannot be used " -"together" -msgstr "" -"параметры -1/--single-transaction и --transaction-size исключают друг друга" - -#: pg_restore.c:417 -#, c-format -msgid "options -C/--create and -1/--single-transaction cannot be used together" -msgstr "параметры -C/--create и -1/--single-transaction исключают друг друга" - -#: pg_restore.c:421 +#: pg_restore.c:433 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "параметр --single-transaction допускается только с одним заданием" -#: pg_restore.c:467 +#: pg_restore.c:480 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "формат архива \"%s\" не поддерживается; используйте psql" -#: pg_restore.c:471 +#: pg_restore.c:484 #, c-format msgid "" "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "нераспознанный формат архива \"%s\"; укажите \"c\", \"d\" или \"t\"" -#: pg_restore.c:509 +#: pg_restore.c:522 #, c-format msgid "errors ignored on restore: %d" msgstr "при восстановлении проигнорировано ошибок: %d" -#: pg_restore.c:522 +#: pg_restore.c:535 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -3161,49 +3077,49 @@ msgstr "" "pg_dump.\n" "\n" -#: pg_restore.c:524 +#: pg_restore.c:537 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [ПАРАМЕТР]... [ФАЙЛ]\n" -#: pg_restore.c:527 +#: pg_restore.c:540 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=БД подключиться к указанной базе данных\n" -#: pg_restore.c:528 +#: pg_restore.c:541 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr "" " -f, --file=ИМЯ_ФАЙЛА имя выходного файла (или - для вывода в stdout)\n" -#: pg_restore.c:529 +#: pg_restore.c:542 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr "" " -F, --format=c|d|t формат файла (должен определяться автоматически)\n" -#: pg_restore.c:530 +#: pg_restore.c:543 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list вывести краткое оглавление архива\n" -#: pg_restore.c:531 +#: pg_restore.c:544 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose выводить подробные сообщения\n" -#: pg_restore.c:532 +#: pg_restore.c:545 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: pg_restore.c:533 +#: pg_restore.c:546 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_restore.c:535 +#: pg_restore.c:548 #, c-format msgid "" "\n" @@ -3212,35 +3128,35 @@ msgstr "" "\n" "Параметры, управляющие восстановлением:\n" -#: pg_restore.c:536 +#: pg_restore.c:549 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only восстановить только данные, без схемы\n" -#: pg_restore.c:538 +#: pg_restore.c:551 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create создать целевую базу данных\n" -#: pg_restore.c:539 +#: pg_restore.c:552 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr "" " -e, --exit-on-error выйти при ошибке (по умолчанию - продолжать)\n" -#: pg_restore.c:540 +#: pg_restore.c:553 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=ИМЯ восстановить указанный индекс\n" -#: pg_restore.c:541 +#: pg_restore.c:554 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr "" " -j, --jobs=ЧИСЛО распараллелить восстановление на указанное " "число заданий\n" -#: pg_restore.c:542 +#: pg_restore.c:555 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -3249,13 +3165,13 @@ msgstr "" " -L, --use-list=ИМЯ_ФАЙЛА использовать оглавление из этого файла для\n" " чтения/упорядочивания данных\n" -#: pg_restore.c:544 +#: pg_restore.c:557 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr "" " -n, --schema=ИМЯ восстановить объекты только в этой схеме\n" -#: pg_restore.c:545 +#: pg_restore.c:558 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr "" @@ -3263,17 +3179,17 @@ msgstr "" # skip-rule: no-space-before-parentheses # well-spelled: арг -#: pg_restore.c:547 +#: pg_restore.c:560 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=ИМЯ(арг-ты) восстановить заданную функцию\n" -#: pg_restore.c:548 +#: pg_restore.c:561 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only восстановить только схему, без данных\n" -#: pg_restore.c:549 +#: pg_restore.c:562 #, c-format msgid "" " -S, --superuser=NAME superuser user name to use for disabling " @@ -3282,7 +3198,7 @@ msgstr "" " -S, --superuser=ИМЯ имя суперпользователя для отключения " "триггеров\n" -#: pg_restore.c:550 +#: pg_restore.c:563 #, c-format msgid "" " -t, --table=NAME restore named relation (table, view, etc.)\n" @@ -3290,12 +3206,12 @@ msgstr "" " -t, --table=ИМЯ восстановить заданное отношение (таблицу, " "представление и т. п.)\n" -#: pg_restore.c:551 +#: pg_restore.c:564 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=ИМЯ восстановить заданный триггер\n" -#: pg_restore.c:552 +#: pg_restore.c:565 #, c-format msgid "" " -x, --no-privileges skip restoration of access privileges (grant/" @@ -3304,18 +3220,18 @@ msgstr "" " -x, --no-privileges не восстанавливать права доступа\n" " (назначение/отзыв)\n" -#: pg_restore.c:553 +#: pg_restore.c:566 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr "" " -1, --single-transaction выполнить восстановление в одной транзакции\n" -#: pg_restore.c:555 +#: pg_restore.c:568 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security включить защиту на уровне строк\n" -#: pg_restore.c:556 +#: pg_restore.c:569 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3324,17 +3240,17 @@ msgstr "" " --filter=ИМЯ_ФАЙЛА восстанавливать или пропускать объекты\n" " в соответствии с выражениями в этом файле\n" -#: pg_restore.c:559 +#: pg_restore.c:572 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments не восстанавливать комментарии\n" -#: pg_restore.c:560 +#: pg_restore.c:573 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data не восстанавливать данные\n" -#: pg_restore.c:561 +#: pg_restore.c:574 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not " @@ -3344,51 +3260,51 @@ msgstr "" " --no-data-for-failed-tables не восстанавливать данные таблиц, которые\n" " не удалось создать\n" -#: pg_restore.c:563 +#: pg_restore.c:576 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr "" " --no-policies не восстанавливать политики защиты строк\n" -#: pg_restore.c:564 +#: pg_restore.c:577 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications не восстанавливать публикации\n" -#: pg_restore.c:565 +#: pg_restore.c:578 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema не восстанавливать схему\n" -#: pg_restore.c:566 +#: pg_restore.c:579 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels не восстанавливать метки безопасности\n" -#: pg_restore.c:567 +#: pg_restore.c:580 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics не восстанавливать статистику\n" -#: pg_restore.c:568 +#: pg_restore.c:581 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions не восстанавливать подписки\n" -#: pg_restore.c:569 +#: pg_restore.c:582 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr "" " --no-table-access-method не восстанавливать табличные методы доступа\n" -#: pg_restore.c:570 +#: pg_restore.c:583 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr "" " --no-tablespaces не восстанавливать назначения табл. " "пространств\n" -#: pg_restore.c:572 +#: pg_restore.c:585 #, c-format msgid "" " --section=SECTION restore named section (pre-data, data, or " @@ -3397,12 +3313,12 @@ msgstr "" " --section=РАЗДЕЛ восстановить заданный раздел\n" " (pre-data, data или post-data)\n" -#: pg_restore.c:573 +#: pg_restore.c:586 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics восстанавливать статистику\n" -#: pg_restore.c:574 +#: pg_restore.c:587 #, c-format msgid "" " --statistics-only restore only the statistics, not schema or " @@ -3411,18 +3327,18 @@ msgstr "" " --statistics-only восстановить только статистику, без схемы и " "данных\n" -#: pg_restore.c:577 +#: pg_restore.c:590 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr "" " --transaction-size=N выполнять COMMIT после каждых N объектов\n" -#: pg_restore.c:588 +#: pg_restore.c:601 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ИМЯ_РОЛИ выполнить SET ROLE перед восстановлением\n" -#: pg_restore.c:590 +#: pg_restore.c:603 #, c-format msgid "" "\n" @@ -3435,7 +3351,7 @@ msgstr "" "указывать\n" "несколько раз для выбора нескольких объектов.\n" -#: pg_restore.c:593 +#: pg_restore.c:606 #, c-format msgid "" "\n" @@ -3447,6 +3363,105 @@ msgstr "" "ввода.\n" "\n" +#, c-format +#~ msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#~ msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" + +#, c-format +#~ msgid "" +#~ "options -s/--schema-only and --statistics-only cannot be used together" +#~ msgstr "параметры -s/--schema-only и --statistics-only исключают друг друга" + +#, c-format +#~ msgid "options -a/--data-only and --statistics-only cannot be used together" +#~ msgstr "параметры -a/--data-only и --statistics-only исключают друг друга" + +#, c-format +#~ msgid "options -a/--data-only and --no-data cannot be used together" +#~ msgstr "параметры -a/--data-only и --no-data исключают друг друга" + +#, c-format +#~ msgid "options -s/--schema-only and --no-schema cannot be used together" +#~ msgstr "параметры -s/--schema-only и --no-schema исключают друг друга" + +#, c-format +#~ msgid "" +#~ "options --statistics-only and --no-statistics cannot be used together" +#~ msgstr "параметры --statistics-only и --no-statistics исключают друг друга" + +#, c-format +#~ msgid "options --statistics and --no-statistics cannot be used together" +#~ msgstr "параметры --statistics и --no-statistics исключают друг друга" + +#, c-format +#~ msgid "" +#~ "options -s/--schema-only and --include-foreign-data cannot be used " +#~ "together" +#~ msgstr "" +#~ "параметры -s/--schema-only и --include-foreign-data исключают друг друга" + +#, c-format +#~ msgid "options -c/--clean and -a/--data-only cannot be used together" +#~ msgstr "параметры -c/--clean и -a/--data-only исключают друг друга" + +#, c-format +#~ msgid "" +#~ "option --on-conflict-do-nothing requires option --inserts, --rows-per-" +#~ "insert, or --column-inserts" +#~ msgstr "" +#~ "параметр --on-conflict-do-nothing требует указания --inserts, --rows-per-" +#~ "insert или --column-inserts" + +#, c-format +#~ msgid "" +#~ "option --exclude-database cannot be used together with -g/--globals-only, " +#~ "-r/--roles-only, or -t/--tablespaces-only" +#~ msgstr "" +#~ "параметр --exclude-database несовместим с -g/--globals-only, -r/--roles-" +#~ "only и -t/--tablespaces-only" + +#, c-format +#~ msgid "" +#~ "options -g/--globals-only and -r/--roles-only cannot be used together" +#~ msgstr "параметры -g/--globals-only и -r/--roles-only исключают друг друга" + +#, c-format +#~ msgid "" +#~ "options -g/--globals-only and -t/--tablespaces-only cannot be used " +#~ "together" +#~ msgstr "" +#~ "параметры -g/--globals-only и -t/--tablespaces-only исключают друг друга" + +#, c-format +#~ msgid "" +#~ "options -r/--roles-only and -t/--tablespaces-only cannot be used together" +#~ msgstr "" +#~ "параметры -r/--roles-only и -t/--tablespaces-only исключают друг друга" + +# TO REVEIW +#, c-format +#~ msgid "options -d/--dbname and -f/--file cannot be used together" +#~ msgstr "параметры -d/--dbname и -f/--file исключают друг друга" + +# TO REVEIW +#, c-format +#~ msgid "options -d/--dbname and --restrict-key cannot be used together" +#~ msgstr "параметры -d/--dbname и --restrict-key исключают друг друга" + +#, c-format +#~ msgid "" +#~ "options -1/--single-transaction and --transaction-size cannot be used " +#~ "together" +#~ msgstr "" +#~ "параметры -1/--single-transaction и --transaction-size исключают друг " +#~ "друга" + +#, c-format +#~ msgid "" +#~ "options -C/--create and -1/--single-transaction cannot be used together" +#~ msgstr "" +#~ "параметры -C/--create и -1/--single-transaction исключают друг друга" + #, c-format #~ msgid "unhandled mode \"%s\"" #~ msgstr "необрабатываемый режим \"%s\"" diff --git a/src/bin/pg_dump/po/sv.po b/src/bin/pg_dump/po/sv.po index d5618af6574..349c39a08ac 100644 --- a/src/bin/pg_dump/po/sv.po +++ b/src/bin/pg_dump/po/sv.po @@ -1,13 +1,14 @@ # Swedish message translation file for pg_dump # Peter Eisentraut , 2001, 2009, 2010. -# Dennis Björklund , 2002, 2003, 2004, 2005, 2006, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025. +# Dennis Björklund , 2002, 2003, 2004, 2005, 2006, 2017, +# 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026. # msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-03 04:21+0000\n" -"PO-Revision-Date: 2025-09-07 15:44+0200\n" +"POT-Creation-Date: 2026-02-04 16:22+0000\n" +"PO-Revision-Date: 2026-02-04 19:29+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -37,7 +38,7 @@ msgid "hint: " msgstr "tips: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: ../../common/compression.c:150 compress_gzip.c:441 compress_gzip.c:448 #: compress_io.c:108 compress_lz4.c:800 compress_lz4.c:807 compress_zstd.c:26 #: compress_zstd.c:32 #, c-format @@ -165,7 +166,7 @@ msgstr "kunde inte göra stat() på fil \"%s\": %m" msgid "this build does not support sync method \"%s\"" msgstr "detta bygge stöder inte synkmetod \"%s\"" -#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:944 #, c-format msgid "could not open directory \"%s\": %m" msgstr "kunde inte öppna katalog \"%s\": %m" @@ -470,48 +471,48 @@ msgstr "kunde inte tolka numerisk array \"%s\": för många nummer" msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "kunde inte tolka numerisk array \"%s\": ogiltigt tecken i nummer" -#: compress_gzip.c:69 compress_gzip.c:183 +#: compress_gzip.c:78 compress_gzip.c:192 #, c-format msgid "could not initialize compression library: %s" msgstr "kunde inte initiera komprimeringsbibliotek: %s" -#: compress_gzip.c:93 +#: compress_gzip.c:102 #, c-format msgid "could not close compression stream: %s" msgstr "kunde inte stänga komprimeringsströmmen: %s" -#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 +#: compress_gzip.c:122 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "kunde inte komprimera data: %s" -#: compress_gzip.c:199 compress_gzip.c:214 +#: compress_gzip.c:208 compress_gzip.c:223 #, c-format msgid "could not uncompress data: %s" msgstr "kunde inte packa upp data: %s" -#: compress_gzip.c:221 +#: compress_gzip.c:230 #, c-format msgid "could not close compression library: %s" msgstr "kunde inte stänga komprimeringsbiblioteket: %s" -#: compress_gzip.c:277 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 +#: compress_gzip.c:290 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 #, c-format msgid "could not read from input file: %s" msgstr "kunde inte läsa från infilen: %s" -#: compress_gzip.c:294 compress_zstd.c:382 +#: compress_gzip.c:307 compress_zstd.c:382 #, c-format msgid "could not write to file: %s" msgstr "kan inte skriva till fil: %s" -#: compress_gzip.c:310 compress_lz4.c:494 compress_none.c:94 +#: compress_gzip.c:323 compress_lz4.c:494 compress_none.c:94 #: compress_none.c:135 compress_zstd.c:315 pg_backup_custom.c:650 #, c-format msgid "could not read from input file: %m" msgstr "kunde inte läsa från infilen: %m" -#: compress_gzip.c:312 compress_lz4.c:635 compress_none.c:137 +#: compress_gzip.c:325 compress_lz4.c:635 compress_none.c:137 #: compress_zstd.c:400 pg_backup_custom.c:648 pg_backup_directory.c:515 #: pg_backup_tar.c:740 pg_backup_tar.c:763 #, c-format @@ -598,13 +599,13 @@ msgstr "kunde inte dekomprimera data: %s" msgid "Password: " msgstr "Lösenord: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 -#: pg_dump_sort.c:1466 pg_dump_sort.c:1486 +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:952 +#: pg_dump_sort.c:1478 pg_dump_sort.c:1498 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:514 +#: connectdb.c:157 pg_dumpall.c:520 #, c-format msgid "could not connect to database \"%s\"" msgstr "kunde inte ansluta till databasen \"%s\"" @@ -629,32 +630,32 @@ msgstr "avbryter då serverversionerna i matchar" msgid "server version: %s; %s version: %s" msgstr "server version: %s; %s version: %s" -#: connectdb.c:282 pg_dumpall.c:1784 +#: connectdb.c:282 pg_dumpall.c:1790 #, c-format msgid "executing %s" msgstr "kör: %s" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1796 #, c-format msgid "query failed: %s" msgstr "fråga misslyckades: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1797 #, c-format msgid "Query was: %s" msgstr "Frågan var: %s" -#: dumputils.c:948 +#: dumputils.c:949 #, c-format msgid "could not create directory \"%s\": %m" msgstr "kunde inte skapa katalog \"%s\": %m" -#: dumputils.c:953 +#: dumputils.c:954 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "kunde inte ändra rättigheter på katalogen \"%s\": %m" -#: dumputils.c:958 +#: dumputils.c:959 #, c-format msgid "directory \"%s\" is not empty" msgstr "katalogen \"%s\" är inte tom" @@ -916,7 +917,7 @@ msgstr "återställer stort objekt med OID %u" msgid "could not create large object %u: %s" msgstr "kunde inte skapa stort objekt %u: %s" -#: pg_backup_archiver.c:1525 pg_dump.c:4085 +#: pg_backup_archiver.c:1525 pg_dump.c:4100 #, c-format msgid "could not open large object %u: %s" msgstr "kunde inte öppna stort objekt %u: %s" @@ -944,7 +945,7 @@ msgstr "kunde inte stänga TOC-filen: %m" #: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 #: pg_backup_directory.c:550 pg_backup_directory.c:616 -#: pg_backup_directory.c:634 pg_dumpall.c:548 +#: pg_backup_directory.c:634 pg_dumpall.c:554 #, c-format msgid "could not open output file \"%s\": %m" msgstr "kunde inte öppna utdatafilen \"%s\": %m" @@ -1067,12 +1068,12 @@ msgstr "kunde inte öppna stdout för append: %m" msgid "unrecognized file format \"%d\"" msgstr "känner inte igen filformat \"%d\"" -#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4761 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4797 #, c-format msgid "finished item %d %s %s" msgstr "klar med objekt %d %s %s" -#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4774 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4810 #, c-format msgid "worker process failed: exit code %d" msgstr "arbetsprocess misslyckades: felkod %d" @@ -1139,107 +1140,107 @@ msgstr "funktion \"%s\" hittades inte" msgid "trigger \"%s\" not found" msgstr "trigger \"%s\" hittades inte" -#: pg_backup_archiver.c:3433 +#: pg_backup_archiver.c:3469 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "kunde inte sätta sessionsanvändare till \"%s\": %s" -#: pg_backup_archiver.c:3575 +#: pg_backup_archiver.c:3611 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "kunde inte sätta \"search_path\" till \"%s\": %s" -#: pg_backup_archiver.c:3636 +#: pg_backup_archiver.c:3672 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" msgstr "kunde inte sätta \"default_tablespace\" till %s: %s" -#: pg_backup_archiver.c:3685 +#: pg_backup_archiver.c:3721 #, c-format msgid "could not set \"default_table_access_method\": %s" msgstr "kunde inte sätta \"default_table_access_method\": %s" -#: pg_backup_archiver.c:3734 +#: pg_backup_archiver.c:3770 #, c-format msgid "could not alter table access method: %s" msgstr "kunde inte ändra tabellaccessmetod: %s" -#: pg_backup_archiver.c:3835 +#: pg_backup_archiver.c:3871 #, c-format msgid "don't know how to set owner for object type \"%s\"" msgstr "vet inte hur man sätter ägare för objekttyp \"%s\"" -#: pg_backup_archiver.c:3970 +#: pg_backup_archiver.c:4006 #, c-format msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" msgstr "oväntad TOC-post i _printTocEntry(): %d %s %s" -#: pg_backup_archiver.c:4118 +#: pg_backup_archiver.c:4154 #, c-format msgid "did not find magic string in file header" msgstr "kunde inte hitta den magiska strängen i filhuvudet" -#: pg_backup_archiver.c:4132 +#: pg_backup_archiver.c:4168 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "ej supportad version (%d.%d) i filhuvudet" -#: pg_backup_archiver.c:4137 +#: pg_backup_archiver.c:4173 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "riktighetskontroll på heltalsstorlek (%lu) misslyckades" -#: pg_backup_archiver.c:4141 +#: pg_backup_archiver.c:4177 #, c-format msgid "archive was made on a machine with larger integers, some operations might fail" msgstr "arkivet skapades på en maskin med större heltal, en del operationer kan misslyckas" -#: pg_backup_archiver.c:4151 +#: pg_backup_archiver.c:4187 #, c-format msgid "expected format (%d) differs from format found in file (%d)" msgstr "förväntat format (%d) skiljer sig från formatet som fanns i filen (%d)" -#: pg_backup_archiver.c:4173 +#: pg_backup_archiver.c:4209 #, c-format msgid "archive is compressed, but this installation does not support compression (%s) -- no data will be available" msgstr "arkivet är komprimerat, men denna installation stödjer inte komprimering (%s) -- ingen data kommer kunna läsas" -#: pg_backup_archiver.c:4209 +#: pg_backup_archiver.c:4245 #, c-format msgid "invalid creation date in header" msgstr "ogiltig skapandedatum i huvud" -#: pg_backup_archiver.c:4343 +#: pg_backup_archiver.c:4379 #, c-format msgid "processing item %d %s %s" msgstr "processar objekt %d %s %s" -#: pg_backup_archiver.c:4428 +#: pg_backup_archiver.c:4464 #, c-format msgid "entering main parallel loop" msgstr "går in i parallella huvudloopen" -#: pg_backup_archiver.c:4439 +#: pg_backup_archiver.c:4475 #, c-format msgid "skipping item %d %s %s" msgstr "hoppar över objekt %d %s %s" -#: pg_backup_archiver.c:4448 +#: pg_backup_archiver.c:4484 #, c-format msgid "launching item %d %s %s" msgstr "startar objekt %d %s %s" -#: pg_backup_archiver.c:4502 +#: pg_backup_archiver.c:4538 #, c-format msgid "finished main parallel loop" msgstr "klar med parallella huvudloopen" -#: pg_backup_archiver.c:4538 +#: pg_backup_archiver.c:4574 #, c-format msgid "processing missed item %d %s %s" msgstr "processar saknat objekt %d %s %s" -#: pg_backup_archiver.c:5080 +#: pg_backup_archiver.c:5116 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "tabell \"%s\" kunde inte skapas, dess data kommer ej återställas" @@ -1356,7 +1357,7 @@ msgstr "fel returnerat av PQputCopyEnd: %s" msgid "COPY failed for table \"%s\": %s" msgstr "COPY misslyckades för tabell \"%s\": %s" -#: pg_backup_db.c:460 pg_dump.c:2458 +#: pg_backup_db.c:460 pg_dump.c:2473 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "oväntade extraresultat under kopiering (COPY) av tabell \"%s\"" @@ -1507,10 +1508,10 @@ msgstr "trasigt tar-huvud hittat i %s (förväntade %d, beräknad %d) filpositio msgid "unrecognized section name: \"%s\"" msgstr "okänt sektionsnamn: \"%s\"" -#: pg_backup_utils.c:57 pg_dump.c:799 pg_dump.c:816 pg_dumpall.c:385 -#: pg_dumpall.c:395 pg_dumpall.c:403 pg_dumpall.c:411 pg_dumpall.c:418 -#: pg_dumpall.c:428 pg_dumpall.c:530 pg_restore.c:326 pg_restore.c:342 -#: pg_restore.c:356 +#: pg_backup_utils.c:57 pg_dump.c:800 pg_dump.c:817 pg_dumpall.c:385 +#: pg_dumpall.c:395 pg_dumpall.c:405 pg_dumpall.c:414 pg_dumpall.c:422 +#: pg_dumpall.c:434 pg_dumpall.c:536 pg_restore.c:326 pg_restore.c:342 +#: pg_restore.c:357 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Försök med \"%s --help\" för mer information." @@ -1520,132 +1521,93 @@ msgstr "Försök med \"%s --help\" för mer information." msgid "out of on_exit_nicely slots" msgstr "slut på on_exit_nicely-slottar" -#: pg_dump.c:814 pg_dumpall.c:393 pg_restore.c:340 +#: pg_dump.c:815 pg_dumpall.c:393 pg_restore.c:340 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "för många kommandoradsargument (första är \"%s\")" -#: pg_dump.c:826 pg_restore.c:380 -#, c-format -msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgstr "flaggorna \"bara schema\" (-s) och \"bara data\" (-a) kan inte användas tillsammans" - -#: pg_dump.c:828 pg_restore.c:382 -#, c-format -msgid "options -s/--schema-only and --statistics-only cannot be used together" -msgstr "flaggorna -s/--schema-only och --statistics-only kan inte användas tillsammans" - -#: pg_dump.c:830 pg_restore.c:384 -#, c-format -msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "flaggorna -a/--data-only och --statistics-only kan inte användas tillsammans" - -#: pg_dump.c:834 pg_restore.c:388 -#, c-format -msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "flaggorna -a/--data-only och --no-data kan inte användas tillsammans" - -#: pg_dump.c:836 pg_restore.c:390 -#, c-format -msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "flaggorna -s/--schema-only och --no-schema kan inte användas tillsammans" - -#: pg_dump.c:838 pg_restore.c:392 -#, c-format -msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "flaggorna --statistics-only och --no-statistics kan inte användas tillsammans" - -#: pg_dump.c:842 pg_restore.c:396 -#, c-format -msgid "options --statistics and --no-statistics cannot be used together" -msgstr "flaggorna --statistics and --no-statistics kan inte användas tillsammans" - -#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#: pg_dump.c:827 pg_dump.c:830 pg_dump.c:833 pg_dump.c:838 pg_dump.c:841 +#: pg_dump.c:844 pg_dump.c:849 pg_dump.c:854 pg_dump.c:857 pg_dump.c:861 +#: pg_dump.c:869 pg_dumpall.c:412 pg_dumpall.c:420 pg_dumpall.c:432 +#: pg_restore.c:355 pg_restore.c:362 pg_restore.c:382 pg_restore.c:385 +#: pg_restore.c:388 pg_restore.c:393 pg_restore.c:396 pg_restore.c:399 +#: pg_restore.c:404 pg_restore.c:409 pg_restore.c:412 pg_restore.c:416 +#: pg_restore.c:420 pg_restore.c:428 #, c-format msgid "options %s and %s cannot be used together" msgstr "flaggorna %s och %s kan inte användas tillsammans" -#: pg_dump.c:853 -#, c-format -msgid "options -s/--schema-only and --include-foreign-data cannot be used together" -msgstr "flaggorna -s/--schema-only och --include-foreign-data kan inte användas tillsammans" - -#: pg_dump.c:856 -#, c-format -msgid "option --include-foreign-data is not supported with parallel backup" -msgstr "flaggan --include-foreign-data stöds inte med parallell backup" - -#: pg_dump.c:859 pg_restore.c:407 +#: pg_dump.c:865 #, c-format -msgid "options -c/--clean and -a/--data-only cannot be used together" -msgstr "flaggorna \"nollställ\" (-c) och \"bara data\" (-a) kan inte användas tillsammans" +msgid "option %s is not supported with parallel backup" +msgstr "flaggan %s stöds inte med parallell backup" -#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 +#: pg_dump.c:873 pg_dumpall.c:427 pg_restore.c:460 #, c-format -msgid "option --if-exists requires option -c/--clean" -msgstr "flaggan --if-exists kräver flaggan -c/--clean" +msgid "option %s requires option %s" +msgstr "flaggan %s kräver även flaggan %s" -#: pg_dump.c:882 +#: pg_dump.c:894 #, c-format -msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" -msgstr "flagga --on-conflict-do-nothing kräver --inserts, --rows-per-insert eller --column-inserts" +msgid "option %s requires option %s, %s, or %s" +msgstr "flaggan %s kräver någon av flaggorna %s, %s eller %s" -#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#: pg_dump.c:912 pg_dumpall.c:504 pg_restore.c:375 #, c-format msgid "could not generate restrict key" msgstr "kunde inte generera begränsningsnyckel" -#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#: pg_dump.c:914 pg_dumpall.c:506 pg_restore.c:377 #, c-format msgid "invalid restrict key" msgstr "ogiltig begränsningsnyckel" -#: pg_dump.c:903 +#: pg_dump.c:917 #, c-format -msgid "option --restrict-key can only be used with --format=plain" -msgstr "flaggan --restrict-key kan bara användas tillsammans med --format=plain" +msgid "option %s can only be used with %s" +msgstr "flaggan %s kan bara användas med %s" -#: pg_dump.c:925 +#: pg_dump.c:940 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "okänd komprimeringsalgoritm: \"%s\"" -#: pg_dump.c:932 +#: pg_dump.c:947 #, c-format msgid "invalid compression specification: %s" msgstr "ogiltig inställning för komprimering: %s" -#: pg_dump.c:945 +#: pg_dump.c:960 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "komprimeringsflaggan \"%s\" stöds inte än av pg_dump" -#: pg_dump.c:957 +#: pg_dump.c:972 #, c-format msgid "parallel backup only supported by the directory format" msgstr "parallell backup stöds bara med katalogformat" -#: pg_dump.c:1003 +#: pg_dump.c:1018 #, c-format msgid "last built-in OID is %u" msgstr "sista inbyggda OID är %u" -#: pg_dump.c:1012 +#: pg_dump.c:1027 #, c-format msgid "no matching schemas were found" msgstr "hittade inga matchande scheman" -#: pg_dump.c:1029 +#: pg_dump.c:1044 #, c-format msgid "no matching tables were found" msgstr "hittade inga matchande tabeller" -#: pg_dump.c:1057 +#: pg_dump.c:1072 #, c-format msgid "no matching extensions were found" msgstr "hittade inga matchande utökningar" -#: pg_dump.c:1251 +#: pg_dump.c:1266 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1654,17 +1616,17 @@ msgstr "" "%s exporterar en PostgreSQL-databas som ett SQL-skript eller till andra format.\n" "\n" -#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 +#: pg_dump.c:1267 pg_dumpall.c:700 pg_restore.c:536 #, c-format msgid "Usage:\n" msgstr "Användning:\n" -#: pg_dump.c:1253 +#: pg_dump.c:1268 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [FLAGGA]... [DBNAMN]\n" -#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 +#: pg_dump.c:1270 pg_dumpall.c:703 pg_restore.c:539 #, c-format msgid "" "\n" @@ -1673,12 +1635,12 @@ msgstr "" "\n" "Allmänna flaggor:\n" -#: pg_dump.c:1256 +#: pg_dump.c:1271 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=FILENAME fil eller katalognamn för utdata\n" -#: pg_dump.c:1257 +#: pg_dump.c:1272 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1687,22 +1649,22 @@ msgstr "" " -F, --format=c|d|t|p utdatans filformat (egen (c), katalog (d), tar (t),\n" " ren text (p) (standard))\n" -#: pg_dump.c:1259 +#: pg_dump.c:1274 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM använd så här många parellella job för att dumpa\n" -#: pg_dump.c:1260 pg_dumpall.c:699 +#: pg_dump.c:1275 pg_dumpall.c:705 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose visa mer information\n" -#: pg_dump.c:1261 pg_dumpall.c:700 +#: pg_dump.c:1276 pg_dumpall.c:706 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version visa versionsinformation, avsluta sedan\n" -#: pg_dump.c:1262 +#: pg_dump.c:1277 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1711,27 +1673,27 @@ msgstr "" " -Z, --compress=METOD[:DETALJ]\n" " komprimera som angivet\n" -#: pg_dump.c:1264 pg_dumpall.c:701 +#: pg_dump.c:1279 pg_dumpall.c:707 #, c-format msgid " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr " --lock-wait-timeout=TIMEOUT misslyckas efter att ha väntat i TIMEOUT på tabellås\n" -#: pg_dump.c:1265 pg_dumpall.c:733 +#: pg_dump.c:1280 pg_dumpall.c:739 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync vänta inte på att ändingar säkert skrivits till disk\n" -#: pg_dump.c:1266 +#: pg_dump.c:1281 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METOD sätt synkmetod för att synka filer till disk\n" -#: pg_dump.c:1267 pg_dumpall.c:702 +#: pg_dump.c:1282 pg_dumpall.c:708 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help visa denna hjälp, avsluta sedan\n" -#: pg_dump.c:1269 pg_dumpall.c:703 +#: pg_dump.c:1284 pg_dumpall.c:709 #, c-format msgid "" "\n" @@ -1740,62 +1702,62 @@ msgstr "" "\n" "Flaggor som styr utmatning:\n" -#: pg_dump.c:1270 pg_dumpall.c:704 +#: pg_dump.c:1285 pg_dumpall.c:710 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only dumpa bara data, inte schema eller statistik\n" -#: pg_dump.c:1271 +#: pg_dump.c:1286 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects inkludera stora objekt i dumpen\n" -#: pg_dump.c:1272 +#: pg_dump.c:1287 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (samma som --large-objects, obsolet)\n" -#: pg_dump.c:1273 +#: pg_dump.c:1288 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects exkludera stora objekt i dumpen\n" -#: pg_dump.c:1274 +#: pg_dump.c:1289 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (samma som --no-large-objects, obsolet)\n" -#: pg_dump.c:1275 pg_restore.c:537 +#: pg_dump.c:1290 pg_restore.c:550 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean nollställ (drop) databasobjekt innan återskapande\n" -#: pg_dump.c:1276 +#: pg_dump.c:1291 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr " -C, --create inkludera kommandon för att skapa databasen i dumpen\n" -#: pg_dump.c:1277 +#: pg_dump.c:1292 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=MALL dumpa bara de angivna utökningarna\n" -#: pg_dump.c:1278 pg_dumpall.c:706 +#: pg_dump.c:1293 pg_dumpall.c:712 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=KODNING dumpa data i teckenkodning KODNING\n" -#: pg_dump.c:1279 +#: pg_dump.c:1294 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=MALL dumpa bara de angivna scheman\n" -#: pg_dump.c:1280 +#: pg_dump.c:1295 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=MALL dumpa INTE de angivna scheman\n" -#: pg_dump.c:1281 +#: pg_dump.c:1296 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1804,52 +1766,52 @@ msgstr "" " -O, --no-owner hoppa över återställande av objektägare i\n" " textformatdumpar\n" -#: pg_dump.c:1283 pg_dumpall.c:710 +#: pg_dump.c:1298 pg_dumpall.c:716 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr " -s, --schema-only dumpa bara scheman, inte data eller statistik\n" -#: pg_dump.c:1284 +#: pg_dump.c:1299 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr " -S, --superuser=NAME namn på superuser för textformatdumpar\n" -#: pg_dump.c:1285 +#: pg_dump.c:1300 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=MALL dumpa bara de angivna tabellerna\n" -#: pg_dump.c:1286 +#: pg_dump.c:1301 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=MALL dumpa INTE de angivna tabellerna\n" -#: pg_dump.c:1287 pg_dumpall.c:713 +#: pg_dump.c:1302 pg_dumpall.c:719 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges dumpa inte rättigheter (grant/revoke)\n" -#: pg_dump.c:1288 pg_dumpall.c:714 +#: pg_dump.c:1303 pg_dumpall.c:720 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade används bara av uppgraderingsverktyg\n" -#: pg_dump.c:1289 pg_dumpall.c:715 +#: pg_dump.c:1304 pg_dumpall.c:721 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr " --column-inserts dumpa data som INSERT med kolumnnamn\n" -#: pg_dump.c:1290 pg_dumpall.c:716 +#: pg_dump.c:1305 pg_dumpall.c:722 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr " --disable-dollar-quoting slå av dollar-citering, använd standard SQL-citering\n" -#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 +#: pg_dump.c:1306 pg_dumpall.c:723 pg_restore.c:567 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr " --disable-triggers slå av triggrar vid återställning av enbart data\n" -#: pg_dump.c:1292 +#: pg_dump.c:1307 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1858,12 +1820,12 @@ msgstr "" " --enable-row-security slå på radsäkerhet (dumpa bara data användaren\n" " har rätt till)\n" -#: pg_dump.c:1294 +#: pg_dump.c:1309 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=MALL dumpa INTE de angivna utökningarna\n" -#: pg_dump.c:1295 +#: pg_dump.c:1310 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1874,12 +1836,12 @@ msgstr "" " dumpa INTE angivna tabeller, inklusive\n" " barn och partitionstabeller\n" -#: pg_dump.c:1298 +#: pg_dump.c:1313 #, c-format msgid " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" msgstr " --exclude-table-data=MALL dumpa INTE data för de angivna tabellerna\n" -#: pg_dump.c:1299 +#: pg_dump.c:1314 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1890,12 +1852,12 @@ msgstr "" " dumpa INTE data för angivna tabeller,\n" " inklusive barn och partitionstabeller\n" -#: pg_dump.c:1302 pg_dumpall.c:719 +#: pg_dump.c:1317 pg_dumpall.c:725 #, c-format msgid " --extra-float-digits=NUM override default setting for extra_float_digits\n" msgstr " --extra-float-digits=NUM övertrumfa standardinställningen för extra_float_digits\n" -#: pg_dump.c:1303 +#: pg_dump.c:1318 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1905,12 +1867,12 @@ msgstr "" " från dump baserat på uttryck i FILNAMN\n" "\n" -#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 +#: pg_dump.c:1320 pg_dumpall.c:727 pg_restore.c:571 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists använd IF EXISTS när objekt droppas\n" -#: pg_dump.c:1306 +#: pg_dump.c:1321 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1921,129 +1883,129 @@ msgstr "" " inkludera data i främmande tabeller från\n" " främmande servrar som matchar MALL\n" -#: pg_dump.c:1309 pg_dumpall.c:722 +#: pg_dump.c:1324 pg_dumpall.c:728 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts dumpa data som INSERT, istället för COPY\n" -#: pg_dump.c:1310 pg_dumpall.c:723 +#: pg_dump.c:1325 pg_dumpall.c:729 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root ladda partitioner via root-tabellen\n" -#: pg_dump.c:1311 pg_dumpall.c:724 +#: pg_dump.c:1326 pg_dumpall.c:730 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments dumpa inte kommentarskommandon\n" -#: pg_dump.c:1312 pg_dumpall.c:725 +#: pg_dump.c:1327 pg_dumpall.c:731 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data dumpa inte data\n" -#: pg_dump.c:1313 pg_dumpall.c:726 +#: pg_dump.c:1328 pg_dumpall.c:732 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies dumpa inte säkerhetspolicyer\n" -#: pg_dump.c:1314 pg_dumpall.c:727 +#: pg_dump.c:1329 pg_dumpall.c:733 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications dumpa inte publiceringar\n" -#: pg_dump.c:1315 pg_dumpall.c:729 +#: pg_dump.c:1330 pg_dumpall.c:735 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-comments dumpa inte schema\n" -#: pg_dump.c:1316 pg_dumpall.c:730 +#: pg_dump.c:1331 pg_dumpall.c:736 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels dumpa inte tilldelning av säkerhetsetiketter\n" -#: pg_dump.c:1317 pg_dumpall.c:731 +#: pg_dump.c:1332 pg_dumpall.c:737 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics dumpa inte statistik\n" -#: pg_dump.c:1318 pg_dumpall.c:732 +#: pg_dump.c:1333 pg_dumpall.c:738 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions dumpa inte prenumereringar\n" -#: pg_dump.c:1319 pg_dumpall.c:734 +#: pg_dump.c:1334 pg_dumpall.c:740 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method dumpa inte tabellaccessmetoder\n" -#: pg_dump.c:1320 pg_dumpall.c:735 +#: pg_dump.c:1335 pg_dumpall.c:741 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces dumpa inte användning av tabellutymmen\n" -#: pg_dump.c:1321 pg_dumpall.c:736 +#: pg_dump.c:1336 pg_dumpall.c:742 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression dumpa inte komprimeringsmetoder för TOAST\n" -#: pg_dump.c:1322 pg_dumpall.c:737 +#: pg_dump.c:1337 pg_dumpall.c:743 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data dumpa inte ologgad tabelldata\n" -#: pg_dump.c:1323 pg_dumpall.c:738 +#: pg_dump.c:1338 pg_dumpall.c:744 #, c-format msgid " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n" msgstr " --on-conflict-do-nothing addera ON CONFLICT DO NOTHING till INSERT-kommandon\n" -#: pg_dump.c:1324 pg_dumpall.c:739 +#: pg_dump.c:1339 pg_dumpall.c:745 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr " --quote-all-identifiers citera alla identifierar, även om de inte är nyckelord\n" -#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#: pg_dump.c:1340 pg_dumpall.c:746 pg_restore.c:584 #, c-format msgid " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" msgstr "" " --restrict-key=BEGRÄNSNINGS_NYCKEL\n" " använd denns sträng som nyckel för psql \\restrict\n" -#: pg_dump.c:1326 pg_dumpall.c:741 +#: pg_dump.c:1341 pg_dumpall.c:747 #, c-format msgid " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" msgstr " --rows-per-insert=NRADER antal rader per INSERT; implicerar --inserts\n" -#: pg_dump.c:1327 +#: pg_dump.c:1342 #, c-format msgid " --section=SECTION dump named section (pre-data, data, or post-data)\n" msgstr " --section=SEKTION dumpa namngiven sektion (pre-data, data eller post-data)\n" -#: pg_dump.c:1328 pg_dumpall.c:742 +#: pg_dump.c:1343 pg_dumpall.c:748 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data inkludera sekvensdata i dumpen\n" -#: pg_dump.c:1329 +#: pg_dump.c:1344 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr " --serializable-deferrable wait until the dump can run without anomalies\n" -#: pg_dump.c:1330 +#: pg_dump.c:1345 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT använda namngivet snapshot för att dumpa\n" -#: pg_dump.c:1331 pg_dumpall.c:743 +#: pg_dump.c:1346 pg_dumpall.c:749 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics dumpa statistik\n" -#: pg_dump.c:1332 pg_dumpall.c:744 +#: pg_dump.c:1347 pg_dumpall.c:750 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr " --statistics-only dumpa bara statistik, inte schema eller data\n" -#: pg_dump.c:1333 pg_restore.c:575 +#: pg_dump.c:1348 pg_restore.c:588 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2052,7 +2014,7 @@ msgstr "" " --strict-names kräv att mallar för tabeller och/eller scheman matchar\n" " minst en sak var\n" -#: pg_dump.c:1335 +#: pg_dump.c:1350 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2061,7 +2023,7 @@ msgstr "" " --table-and-children=MALL dumpa bara angivna tabell(er), inklusive\n" " barn och partitionstabeller\n" -#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 +#: pg_dump.c:1352 pg_dumpall.c:751 pg_restore.c:591 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2072,7 +2034,7 @@ msgstr "" " använd kommandot SET SESSION AUTHORIZATION istället för\n" " kommandot ALTER OWNER för att sätta ägare\n" -#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 +#: pg_dump.c:1356 pg_dumpall.c:755 pg_restore.c:595 #, c-format msgid "" "\n" @@ -2081,42 +2043,42 @@ msgstr "" "\n" "Flaggor för anslutning:\n" -#: pg_dump.c:1342 +#: pg_dump.c:1357 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=DBNAMN databasens som skall dumpas\n" -#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 +#: pg_dump.c:1358 pg_dumpall.c:757 pg_restore.c:596 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=VÄRDNAMN databasens värdnamn eller socketkatalog\n" -#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 +#: pg_dump.c:1359 pg_dumpall.c:759 pg_restore.c:597 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT databasens värdport\n" -#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 +#: pg_dump.c:1360 pg_dumpall.c:760 pg_restore.c:598 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NAMN anslut med datta användarnamn mot databasen\n" -#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 +#: pg_dump.c:1361 pg_dumpall.c:761 pg_restore.c:599 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password fråga aldrig efter lösenord\n" -#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 +#: pg_dump.c:1362 pg_dumpall.c:762 pg_restore.c:600 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr " -W, --password fråga om lösenord (borde ske automatiskt)\n" -#: pg_dump.c:1348 pg_dumpall.c:757 +#: pg_dump.c:1363 pg_dumpall.c:763 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLLNAMN gör SET ROLE innan dumpen\n" -#: pg_dump.c:1350 +#: pg_dump.c:1365 #, c-format msgid "" "\n" @@ -2129,527 +2091,532 @@ msgstr "" "PGDATABASE att användas.\n" "\n" -#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 +#: pg_dump.c:1367 pg_dumpall.c:767 pg_restore.c:607 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Rapportera fel till <%s>.\n" -#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 +#: pg_dump.c:1368 pg_dumpall.c:768 pg_restore.c:608 #, c-format msgid "%s home page: <%s>\n" msgstr "hemsida för %s: <%s>\n" -#: pg_dump.c:1372 pg_dumpall.c:560 +#: pg_dump.c:1387 pg_dumpall.c:566 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "ogiltig klientteckenkodning \"%s\" angiven" -#: pg_dump.c:1520 +#: pg_dump.c:1535 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "parallella dumpar från standby-server stöds inte av denna serverversion" -#: pg_dump.c:1585 +#: pg_dump.c:1600 #, c-format msgid "invalid output format \"%s\" specified" msgstr "ogiltigt utdataformat \"%s\" angivet" -#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 +#: pg_dump.c:1641 pg_dump.c:1697 pg_dump.c:1750 pg_dumpall.c:1594 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "ej korrekt kvalificerat namn (för många namn med punkt): %s" -#: pg_dump.c:1634 +#: pg_dump.c:1649 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "hittade inga matchande scheman för mallen \"%s\"" -#: pg_dump.c:1687 +#: pg_dump.c:1702 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "hittade inga matchande utökningar för mallen \"%s\"" -#: pg_dump.c:1740 +#: pg_dump.c:1755 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "hittade inga matchande främmande servrar för mallen \"%s\"" -#: pg_dump.c:1811 +#: pg_dump.c:1826 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "ej korrekt relationsnamn (för många namn med punkt): %s" -#: pg_dump.c:1833 +#: pg_dump.c:1848 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "hittade inga matchande tabeller för mallen \"%s\"" -#: pg_dump.c:1860 +#: pg_dump.c:1875 #, c-format msgid "You are currently not connected to a database." msgstr "Du är för närvarande inte uppkopplad mot en databas." -#: pg_dump.c:1863 +#: pg_dump.c:1878 #, c-format msgid "cross-database references are not implemented: %s" msgstr "referenser till andra databaser är inte implementerat: %s" -#: pg_dump.c:2329 +#: pg_dump.c:2344 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "dumpar innehållet i tabell \"%s.%s\"" -#: pg_dump.c:2439 +#: pg_dump.c:2454 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "Dumpning av innehållet i tabellen \"%s\" misslyckades: PQendcopy() misslyckades." -#: pg_dump.c:2440 pg_dump.c:2450 +#: pg_dump.c:2455 pg_dump.c:2465 #, c-format msgid "Error message from server: %s" msgstr "Felmeddelandet från servern: %s" -#: pg_dump.c:2441 pg_dump.c:2451 +#: pg_dump.c:2456 pg_dump.c:2466 #, c-format msgid "Command was: %s" msgstr "Kommandot var: %s" -#: pg_dump.c:2449 +#: pg_dump.c:2464 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "Dumpning av innehållet i tabellen \"%s\" misslyckades: PQgetResult() misslyckades." -#: pg_dump.c:2540 +#: pg_dump.c:2555 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "fel antal fält hämtades för tabell \"%s\"" -#: pg_dump.c:3258 +#: pg_dump.c:3273 #, c-format msgid "saving database definition" msgstr "sparar databasdefinition" -#: pg_dump.c:3373 +#: pg_dump.c:3388 #, c-format msgid "unrecognized locale provider: %s" msgstr "okänd lokalleverantör: %s" -#: pg_dump.c:3734 +#: pg_dump.c:3749 #, c-format msgid "saving encoding = %s" msgstr "sparar kodning = %s" -#: pg_dump.c:3759 +#: pg_dump.c:3774 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "sparar \"standard_conforming_strings = %s\"" -#: pg_dump.c:3798 +#: pg_dump.c:3813 #, c-format msgid "could not parse result of current_schemas()" msgstr "kunde inte parsa resultat från current_schemas()" -#: pg_dump.c:3817 +#: pg_dump.c:3832 #, c-format msgid "saving \"search_path = %s\"" msgstr "sparar \"search_path = %s\"" -#: pg_dump.c:3853 +#: pg_dump.c:3868 #, c-format msgid "reading large objects" msgstr "läser stora objekt" -#: pg_dump.c:4074 +#: pg_dump.c:4089 #, c-format msgid "saving large objects \"%s\"" msgstr "sparar stora objekt \"%s\"" -#: pg_dump.c:4095 +#: pg_dump.c:4110 #, c-format msgid "error reading large object %u: %s" msgstr "fel vid läsning av stort objekt %u: %s" -#: pg_dump.c:4203 +#: pg_dump.c:4218 #, c-format msgid "reading row-level security policies" msgstr "läser säkerhetspolicy på radnivå" -#: pg_dump.c:4344 +#: pg_dump.c:4359 #, c-format msgid "unexpected policy command type: %c" msgstr "oväntad kommandotyp för policy: %c" -#: pg_dump.c:4786 pg_dump.c:5343 pg_dump.c:7972 pg_dump.c:13450 pg_dump.c:19643 -#: pg_dump.c:19645 pg_dump.c:20277 +#: pg_dump.c:4801 pg_dump.c:5358 pg_dump.c:7987 pg_dump.c:13467 pg_dump.c:19678 +#: pg_dump.c:19680 pg_dump.c:20312 #, c-format msgid "could not parse %s array" msgstr "kunde inte parsa arrayen %s" -#: pg_dump.c:5002 +#: pg_dump.c:5017 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "prenumerationer har inte dumpats få aktuell användare inte är en superuser" -#: pg_dump.c:5206 +#: pg_dump.c:5221 #, c-format msgid "subscription with OID %u does not exist" msgstr "prenumeration med OID %u existerar inte" -#: pg_dump.c:5213 +#: pg_dump.c:5228 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "misslyckades med riktighetskontroll, hittade inte tabell med OID %u" -#: pg_dump.c:5799 +#: pg_dump.c:5814 #, c-format msgid "could not find parent extension for %s %s" msgstr "kunde inte hitta föräldrautökning för %s %s" -#: pg_dump.c:5937 +#: pg_dump.c:5952 #, c-format msgid "schema with OID %u does not exist" msgstr "schema med OID %u existerar inte" -#: pg_dump.c:6994 +#: pg_dump.c:7009 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "kan inte dumpa statistik för relation av typ \"%c\"" -#: pg_dump.c:7506 pg_dump.c:18987 +#: pg_dump.c:7521 pg_dump.c:19005 #, c-format msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found" msgstr "misslyckades med riktighetskontroll, föräldratabell med OID %u för sekvens med OID %u hittas inte" -#: pg_dump.c:7651 +#: pg_dump.c:7666 #, c-format msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found" msgstr "misslyckades med riktighetskontroll, hittade inte tabell med OID %u i pg_partitioned_table" -#: pg_dump.c:7916 pg_dump.c:8209 pg_dump.c:8672 pg_dump.c:9317 pg_dump.c:9456 -#: pg_dump.c:9601 pg_dump.c:9701 +#: pg_dump.c:7931 pg_dump.c:8224 pg_dump.c:8687 pg_dump.c:9334 pg_dump.c:9473 +#: pg_dump.c:9618 pg_dump.c:9718 #, c-format msgid "unrecognized table OID %u" msgstr "okänt tabell-OID %u" -#: pg_dump.c:7920 +#: pg_dump.c:7935 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "oväntat indexdata för tabell \"%s\"" -#: pg_dump.c:8459 +#: pg_dump.c:8474 #, c-format msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found" msgstr "misslyckades med riktighetskontroll, föräldratabell med OID %u för pg_rewrite-rad med OID %u hittades inte" -#: pg_dump.c:9321 +#: pg_dump.c:9338 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "oväntad kolumndata för tabell \"%s\"" -#: pg_dump.c:9353 +#: pg_dump.c:9370 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "ogiltigt kolumnnumrering i tabell \"%s\"" -#: pg_dump.c:9418 +#: pg_dump.c:9435 #, c-format msgid "finding table default expressions" msgstr "hittar tabellers default-uttryck" -#: pg_dump.c:9460 +#: pg_dump.c:9477 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "felaktigt adnum-värde %d för tabell \"%s\"" -#: pg_dump.c:9553 +#: pg_dump.c:9570 #, c-format msgid "finding invalid not-null constraints" msgstr "hittar ogiltiga icke-null-villkor" -#: pg_dump.c:9651 +#: pg_dump.c:9668 #, c-format msgid "finding table check constraints" msgstr "hittar tabellers check-villkor" -#: pg_dump.c:9705 +#: pg_dump.c:9722 #, c-format msgid "expected %d check constraint on table \"%s\" but found %d" msgid_plural "expected %d check constraints on table \"%s\" but found %d" msgstr[0] "förväntade %d check-villkor för tabell \"%s\" men hittade %d" msgstr[1] "förväntade %d check-villkor för tabell \"%s\" men hittade %d" -#: pg_dump.c:9709 +#: pg_dump.c:9726 #, c-format msgid "The system catalogs might be corrupted." msgstr "Systemkatalogerna kan vara trasiga." -#: pg_dump.c:10514 +#: pg_dump.c:10531 #, c-format msgid "role with OID %u does not exist" msgstr "roll med OID %u existerar inte" -#: pg_dump.c:10626 pg_dump.c:10655 +#: pg_dump.c:10643 pg_dump.c:10672 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "ogiltig pg_init_privs-post: %u %u %d" -#: pg_dump.c:10951 +#: pg_dump.c:10968 #, c-format msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" msgstr "statistik dumpad i omkastad ordning (nuvarande: %d %s %s, förväntad: %d %s %s)" -#: pg_dump.c:11092 +#: pg_dump.c:11109 #, c-format msgid "unexpected null attname" msgstr "attname är oväntat null" -#: pg_dump.c:11121 +#: pg_dump.c:11138 #, c-format msgid "could not find index attname \"%s\"" msgstr "kunde inte hitta index attname \"%s\"" -#: pg_dump.c:11607 +#: pg_dump.c:11624 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "saknar metadata för stort objekt \"%s\"" -#: pg_dump.c:11893 +#: pg_dump.c:11910 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "typtype för datatyp \"%s\" verkar vara ogiltig" -#: pg_dump.c:13521 +#: pg_dump.c:13538 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "okänt provolatile-värde för funktion \"%s\"" -#: pg_dump.c:13571 pg_dump.c:15467 +#: pg_dump.c:13588 pg_dump.c:15484 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "okänt proparallel-värde för funktion \"%s\"" -#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 +#: pg_dump.c:13718 pg_dump.c:13824 pg_dump.c:13831 #, c-format msgid "could not find function definition for function with OID %u" msgstr "kunde inte hitta funktionsdefinitionen för funktion med OID %u" -#: pg_dump.c:13740 +#: pg_dump.c:13757 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "felaktigt värde i fältet pg_cast.castfunc eller pg_cast.castmethod" -#: pg_dump.c:13743 +#: pg_dump.c:13760 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "felaktigt värde i fältet pg_cast.castmethod" -#: pg_dump.c:13833 +#: pg_dump.c:13850 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "felaktig transform-definition, minst en av trffromsql och trftosql måste vara ickenoll" -#: pg_dump.c:13850 +#: pg_dump.c:13867 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "felaktigt värde i fältet pg_transform.trffromsql" -#: pg_dump.c:13871 +#: pg_dump.c:13888 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "felaktigt värde i fältet pg_transform.trftosql" -#: pg_dump.c:14016 +#: pg_dump.c:14033 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "postfix-operatorer stöds inte längre (operator \"%s\")" -#: pg_dump.c:14186 +#: pg_dump.c:14203 #, c-format msgid "could not find operator with OID %s" msgstr "kunde inte hitta en operator med OID %s." -#: pg_dump.c:14254 +#: pg_dump.c:14271 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "ogiltig typ \"%c\" för accessmetod \"%s\"" -#: pg_dump.c:14928 pg_dump.c:14996 +#: pg_dump.c:14945 pg_dump.c:15013 #, c-format msgid "unrecognized collation provider: %s" msgstr "okänd jämförelseleverantör: %s" -#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 -#: pg_dump.c:14980 +#: pg_dump.c:14954 pg_dump.c:14961 pg_dump.c:14972 pg_dump.c:14982 +#: pg_dump.c:14997 #, c-format msgid "invalid collation \"%s\"" msgstr "ogiltig jämförelse \"%s\"" -#: pg_dump.c:15386 +#: pg_dump.c:15403 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "okänt aggfinalmodify-värde för aggregat \"%s\"" -#: pg_dump.c:15442 +#: pg_dump.c:15459 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "okänt aggmfinalmodify-värde för aggregat \"%s\"" -#: pg_dump.c:16162 +#: pg_dump.c:16179 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "okänd objekttyp i standardrättigheter: %d" -#: pg_dump.c:16178 +#: pg_dump.c:16195 #, c-format msgid "could not parse default ACL list (%s)" msgstr "kunde inte parsa standard-ACL-lista (%s)" -#: pg_dump.c:16262 +#: pg_dump.c:16279 #, c-format msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "kunde inte parsa initial ACL-lista (%s) eller default (%s) för objekt \"%s\" (%s)" -#: pg_dump.c:16287 +#: pg_dump.c:16304 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "kunde inte parsa ACL-lista (%s) eller default (%s) för objekt \"%s\" (%s)" -#: pg_dump.c:16830 +#: pg_dump.c:16847 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "fråga för att hämta definition av vy \"%s\" returnerade ingen data" -#: pg_dump.c:16833 +#: pg_dump.c:16850 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "fråga för att hämta definition av vy \"%s\" returnerade mer än en definition" -#: pg_dump.c:16840 +#: pg_dump.c:16857 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "definition av vy \"%s\" verkar vara tom (längd noll)" -#: pg_dump.c:16925 +#: pg_dump.c:16942 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS stöds inte längre (tabell \"%s\")" -#: pg_dump.c:18065 +#: pg_dump.c:18082 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "ogiltigt kolumnnummer %d för tabell \"%s\"" -#: pg_dump.c:18143 +#: pg_dump.c:18160 #, c-format msgid "could not parse index statistic columns" msgstr "kunde inte parsa kolumn i indexstatistik" -#: pg_dump.c:18145 +#: pg_dump.c:18162 #, c-format msgid "could not parse index statistic values" msgstr "kunde inte parsa värden i indexstatistik" -#: pg_dump.c:18147 +#: pg_dump.c:18164 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "antal kolumner och värden stämmer inte i indexstatistik" -#: pg_dump.c:18376 +#: pg_dump.c:18393 #, c-format msgid "missing index for constraint \"%s\"" msgstr "saknar index för integritetsvillkor \"%s\"" -#: pg_dump.c:18645 +#: pg_dump.c:18662 #, c-format msgid "unrecognized constraint type: %c" msgstr "oväntad integritetsvillkorstyp: %c" -#: pg_dump.c:18698 +#: pg_dump.c:18715 #, c-format msgid "unrecognized sequence type: %s" msgstr "okänd sekvenstyp: %s" -#: pg_dump.c:18830 pg_dump.c:19062 +#: pg_dump.c:18848 pg_dump.c:19086 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)" msgstr[0] "fråga för att hämta data för sekvens \"%s\" returnerade %d rad (förväntade 1)" msgstr[1] "fråga för att hämta data för sekvens \"%s\" returnerade %d rader (förväntade 1)" -#: pg_dump.c:18866 +#: pg_dump.c:18884 #, c-format msgid "unrecognized sequence type: %d" msgstr "okänd sekvenstyp: %d" -#: pg_dump.c:19395 +#: pg_dump.c:19109 +#, c-format +msgid "failed to get data for sequence \"%s\"; user may lack SELECT privilege on the sequence or the sequence may have been concurrently dropped" +msgstr "misslyckades att hämta data för sekvensen \"%s\"; användaren kanske saknar SELECT-rättighet på sekvensen eller så har sekvensen slängts av en parallell operation" + +#: pg_dump.c:19430 #, c-format msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned" msgstr "fråga för att hämta regel \"%s\" för tabell \"%s\" misslyckades: fel antal rader returnerades" -#: pg_dump.c:19548 +#: pg_dump.c:19583 #, c-format msgid "could not find referenced extension %u" msgstr "kunde inte hitta refererad utökning %u" -#: pg_dump.c:19647 +#: pg_dump.c:19682 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "antal konfigurationer och villkor stämmer inte för utökning" -#: pg_dump.c:19779 +#: pg_dump.c:19814 #, c-format msgid "reading dependency data" msgstr "läser beroendedata" -#: pg_dump.c:19865 +#: pg_dump.c:19900 #, c-format msgid "no referencing object %u %u" msgstr "inget refererande objekt %u %u" -#: pg_dump.c:19876 +#: pg_dump.c:19911 #, c-format msgid "no referenced object %u %u" msgstr "inget refererat objekt %u %u" -#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 -#: pg_restore.c:675 +#: pg_dump.c:20346 pg_dump.c:20384 pg_dumpall.c:1842 pg_restore.c:642 +#: pg_restore.c:688 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "%s-filter för \"%s\" tillåts inte" -#: pg_dump_sort.c:648 +#: pg_dump_sort.c:660 #, c-format msgid "invalid dumpId %d" msgstr "ogiltigt dumpId %d" -#: pg_dump_sort.c:654 +#: pg_dump_sort.c:666 #, c-format msgid "invalid dependency %d" msgstr "ogiltigt beroende %d" -#: pg_dump_sort.c:818 +#: pg_dump_sort.c:830 #, c-format msgid "could not identify dependency loop" msgstr "kunde inte fastställa beroendeloop" -#: pg_dump_sort.c:1462 +#: pg_dump_sort.c:1474 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" msgstr[0] "det finns cirkulära främmande nyckelberoenden för denna tabell:" msgstr[1] "det finns cirkulära främmande nyckelberoenden för dessa tabeller:" -#: pg_dump_sort.c:1467 +#: pg_dump_sort.c:1479 #, c-format msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints." msgstr "Du kan eventiellt inte återställa dumpen utan att använda --disable-triggers eller temporärt droppa vilkoren." -#: pg_dump_sort.c:1468 +#: pg_dump_sort.c:1480 #, c-format msgid "Consider using a full dump instead of a --data-only dump to avoid this problem." msgstr "Överväg att göra en full dump istället för --data-only för att undvika detta problem." -#: pg_dump_sort.c:1480 +#: pg_dump_sort.c:1492 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "kunde inte räta ut beroendeloopen för dessa saker:" @@ -2666,25 +2633,10 @@ msgstr "programmet \"%s\" hittades av \"%s\" men är inte av samma version som % #: pg_dumpall.c:402 #, c-format -msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" -msgstr "flaggan --exclude-database kan inte användas tillsammans med -g/--globals-only, -r/--roles-only eller -t/--tablespaces-only" - -#: pg_dumpall.c:410 -#, c-format -msgid "options -g/--globals-only and -r/--roles-only cannot be used together" -msgstr "flaggorna \"bara gobala\" (-g) och \"bara roller\" (-r) kan inte användas tillsammans" - -#: pg_dumpall.c:417 -#, c-format -msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" -msgstr "flaggorna \"bara globala\" (-g) och \"bara tabellutrymmen\" (-t) kan inte användas tillsammans" - -#: pg_dumpall.c:427 -#, c-format -msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" -msgstr "flaggorna \"bara roller\" (-r) och \"bara tabellutrymmen\" (-t) kan inte användas tillsammans" +msgid "option %s cannot be used together with %s, %s, or %s" +msgstr "flaggan %s kan inte användas tillsammans med %s, %s eller %s" -#: pg_dumpall.c:528 +#: pg_dumpall.c:534 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2693,7 +2645,7 @@ msgstr "" "kunde inte ansluta till databasen \"postgres\" eller \"template1\"\n" "Ange en annan databas." -#: pg_dumpall.c:693 +#: pg_dumpall.c:699 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2702,72 +2654,72 @@ msgstr "" "%s extraherar ett PostgreSQL databaskluster som ett SQL-script.\n" "\n" -#: pg_dumpall.c:695 +#: pg_dumpall.c:701 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [FLAGGA]...\n" -#: pg_dumpall.c:698 +#: pg_dumpall.c:704 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=FILENAME utdatafilnamn\n" -#: pg_dumpall.c:705 +#: pg_dumpall.c:711 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean nollställ (drop) databaser innan återskapning\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:713 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr " -g, --globals-only dumpa bara globala objekt, inte databaser\n" -#: pg_dumpall.c:708 pg_restore.c:546 +#: pg_dumpall.c:714 pg_restore.c:559 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner återställ inte objektägare\n" -#: pg_dumpall.c:709 +#: pg_dumpall.c:715 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr " -r, --roles-only dumpa endast roller, inte databaser eller tabellutrymmen\n" -#: pg_dumpall.c:711 +#: pg_dumpall.c:717 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr " -S, --superuser=NAMN namn på superuser för användning i dumpen\n" -#: pg_dumpall.c:712 +#: pg_dumpall.c:718 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr " -t, --tablespaces-only dumpa endasdt tabellutrymmen, inte databaser eller roller\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:724 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr " --exclude-database=MALL uteslut databaser vars namn matchar MALL\n" -#: pg_dumpall.c:720 +#: pg_dumpall.c:726 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " --filter=FILENAMN exkludera databaser givet uttryck i FILENAMN\n" -#: pg_dumpall.c:728 +#: pg_dumpall.c:734 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords dumpa inte lösenord för roller\n" -#: pg_dumpall.c:750 +#: pg_dumpall.c:756 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=ANSLSTR anslut med anslutningssträng\n" -#: pg_dumpall.c:752 +#: pg_dumpall.c:758 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAMN alternativ standarddatabas\n" -#: pg_dumpall.c:759 +#: pg_dumpall.c:765 #, c-format msgid "" "\n" @@ -2779,58 +2731,58 @@ msgstr "" "Om -f/--file inte används så kommer SQL-skriptet skriva till standard ut.\n" "\n" -#: pg_dumpall.c:904 +#: pg_dumpall.c:910 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "rollnamn som startar med \"pg_\" hoppas över (%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#: pg_dumpall.c:1127 pg_dumpall.c:1185 pg_dumpall.c:1194 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "hittade föräldralös pg_auth_members-post för roll %s" -#: pg_dumpall.c:1154 +#: pg_dumpall.c:1160 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "kunde inte hitta en korrekt dumpordning för medlemskap i rollen \"%s\"" -#: pg_dumpall.c:1309 +#: pg_dumpall.c:1315 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "kunde inte parsa ACL-listan (%s) för parameter \"%s\"" -#: pg_dumpall.c:1436 +#: pg_dumpall.c:1442 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "kunde inte tolka ACL-listan (%s) för tabellutrymme \"%s\"" -#: pg_dumpall.c:1650 +#: pg_dumpall.c:1656 #, c-format msgid "excluding database \"%s\"" msgstr "utesluter databas \"%s\"" -#: pg_dumpall.c:1654 +#: pg_dumpall.c:1660 #, c-format msgid "dumping database \"%s\"" msgstr "dumpar databas \"%s\"" -#: pg_dumpall.c:1687 +#: pg_dumpall.c:1693 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump misslyckades med databas \"%s\", avslutar" -#: pg_dumpall.c:1693 +#: pg_dumpall.c:1699 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "kunde inte öppna om utdatafilen \"%s\": %m" -#: pg_dumpall.c:1737 +#: pg_dumpall.c:1743 #, c-format msgid "running \"%s\"" msgstr "kör \"%s\"" -#: pg_dumpall.c:1856 +#: pg_dumpall.c:1862 msgid "unsupported filter object" msgstr "filterobjektet stöds inte" @@ -2839,47 +2791,27 @@ msgstr "filterobjektet stöds inte" msgid "one of -d/--dbname and -f/--file must be specified" msgstr "en av flaggorna -d/--dbname och -f/--file måste anges" -#: pg_restore.c:355 -#, c-format -msgid "options -d/--dbname and -f/--file cannot be used together" -msgstr "flaggorna -d/--dbname och -f/--file kan inte användas ihop" - -#: pg_restore.c:361 -#, c-format -msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "flaggorna -d/--dbname och --restrict-key kan inte användas ihop" - -#: pg_restore.c:410 -#, c-format -msgid "options -1/--single-transaction and --transaction-size cannot be used together" -msgstr "flaggorna -1/--single-transaction och --transaction-size kan inte användas tillsammans" - -#: pg_restore.c:417 -#, c-format -msgid "options -C/--create and -1/--single-transaction cannot be used together" -msgstr "flaggorna -C/--create och -1/--single-transaction kan inte användas tillsammans" - -#: pg_restore.c:421 +#: pg_restore.c:433 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "kan inte ange både --single-transaction och multipla job" -#: pg_restore.c:467 +#: pg_restore.c:480 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "arkivformat \"%s\" stöds inte, använd psql" -#: pg_restore.c:471 +#: pg_restore.c:484 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "okänt arkivformat \"%s\"; vänligen ange \"c\", \"d\" eller \"t\"" -#: pg_restore.c:509 +#: pg_restore.c:522 #, c-format msgid "errors ignored on restore: %d" msgstr "fel ignorerade vid återställande: %d" -#: pg_restore.c:522 +#: pg_restore.c:535 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2888,47 +2820,47 @@ msgstr "" "%s återställer en PostgreSQL-databas från ett arkiv skapat av pg_dump.\n" "\n" -#: pg_restore.c:524 +#: pg_restore.c:537 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [FLAGGA]... [FIL]\n" -#: pg_restore.c:527 +#: pg_restore.c:540 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAMN koppla upp med databasnamn\n" -#: pg_restore.c:528 +#: pg_restore.c:541 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILNAMN utdatafilnamn (- för stdout)\n" -#: pg_restore.c:529 +#: pg_restore.c:542 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr " -F, --format=c|d|t backupens filformat (bör ske automatiskt)\n" -#: pg_restore.c:530 +#: pg_restore.c:543 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list skriv ut summerad TOC för arkivet\n" -#: pg_restore.c:531 +#: pg_restore.c:544 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose visa mer information\n" -#: pg_restore.c:532 +#: pg_restore.c:545 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version visa versionsinformation, avsluta sedan\n" -#: pg_restore.c:533 +#: pg_restore.c:546 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help visa denna hjälp, avsluta sedan\n" -#: pg_restore.c:535 +#: pg_restore.c:548 #, c-format msgid "" "\n" @@ -2937,32 +2869,32 @@ msgstr "" "\n" "Flaggor som styr återställning:\n" -#: pg_restore.c:536 +#: pg_restore.c:549 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only återställ bara data, inte scheman\n" -#: pg_restore.c:538 +#: pg_restore.c:551 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create skapa måldatabasen\n" -#: pg_restore.c:539 +#: pg_restore.c:552 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error avsluta vid fel, standard är att fortsätta\n" -#: pg_restore.c:540 +#: pg_restore.c:553 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAMN återställ namngivet index\n" -#: pg_restore.c:541 +#: pg_restore.c:554 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr " -j, --jobs=NUM använda så här många parallella job för återställning\n" -#: pg_restore.c:542 +#: pg_restore.c:555 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -2971,57 +2903,57 @@ msgstr "" " -L, --use-list=FILNAMN använd innehållsförteckning från denna fil för\n" " att välja/sortera utdata\n" -#: pg_restore.c:544 +#: pg_restore.c:557 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAMN återställ enbart objekt i detta schema\n" -#: pg_restore.c:545 +#: pg_restore.c:558 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=NAMN återställ inte objekt i detta schema\n" -#: pg_restore.c:547 +#: pg_restore.c:560 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAMN(arg) återställ namngiven funktion\n" -#: pg_restore.c:548 +#: pg_restore.c:561 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only återställ bara scheman, inte data\n" -#: pg_restore.c:549 +#: pg_restore.c:562 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr " -S, --superuser=NAMN namn på superuser för att slå av triggrar\n" -#: pg_restore.c:550 +#: pg_restore.c:563 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NAMN återställ namngiven relation (tabell, vy, osv.)\n" -#: pg_restore.c:551 +#: pg_restore.c:564 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAMN återställ namngiven trigger\n" -#: pg_restore.c:552 +#: pg_restore.c:565 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges återställ inte åtkomsträttigheter (grant/revoke)\n" -#: pg_restore.c:553 +#: pg_restore.c:566 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction återställ i en enda transaktion\n" -#: pg_restore.c:555 +#: pg_restore.c:568 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security aktivera radsäkerhet\n" -#: pg_restore.c:556 +#: pg_restore.c:569 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3030,17 +2962,17 @@ msgstr "" " --filter=FILENAMN återställ eller hoppa över objekt\n" " baserat på uttryck i FILENAMN\n" -#: pg_restore.c:559 +#: pg_restore.c:572 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments återställ inte kommentarskommandon\n" -#: pg_restore.c:560 +#: pg_restore.c:573 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data återställ inte data\n" -#: pg_restore.c:561 +#: pg_restore.c:574 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3049,72 +2981,72 @@ msgstr "" " --no-data-for-failed-tables återställ inte data för tabeller som\n" " inte kunde skapas\n" -#: pg_restore.c:563 +#: pg_restore.c:576 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies återställ inte särkerhetspolicyer\n" -#: pg_restore.c:564 +#: pg_restore.c:577 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications återställ inte publiceringar\n" -#: pg_restore.c:565 +#: pg_restore.c:578 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema återställ inte schema\n" -#: pg_restore.c:566 +#: pg_restore.c:579 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels återställ inte säkerhetsetiketter\n" -#: pg_restore.c:567 +#: pg_restore.c:580 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics återställ inte statistik\n" -#: pg_restore.c:568 +#: pg_restore.c:581 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions återställ inte prenumerationer\n" -#: pg_restore.c:569 +#: pg_restore.c:582 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method återställ inte tabellaccessmetoder\n" -#: pg_restore.c:570 +#: pg_restore.c:583 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces återställ inte användning av tabellutymmen\n" -#: pg_restore.c:572 +#: pg_restore.c:585 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr " --section=SEKTION återställ namngiven sektion (pre-data, data eller post-data)\n" -#: pg_restore.c:573 +#: pg_restore.c:586 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics återställ statistik\n" -#: pg_restore.c:574 +#: pg_restore.c:587 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only återställ bara statistik, inte schema och data\n" -#: pg_restore.c:577 +#: pg_restore.c:590 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N gör commit efter var N:e objekt\n" -#: pg_restore.c:588 +#: pg_restore.c:601 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME gör SET ROLE innan återställning\n" -#: pg_restore.c:590 +#: pg_restore.c:603 #, c-format msgid "" "\n" @@ -3125,7 +3057,7 @@ msgstr "" "Flaggorna -I, -n, -N, -P, -t, -T och --section kan kombineras och anges\n" "många gånger för att välja flera objekt.\n" -#: pg_restore.c:593 +#: pg_restore.c:606 #, c-format msgid "" "\n" diff --git a/src/bin/pg_dump/po/uk.po b/src/bin/pg_dump/po/uk.po index f92561f2eb4..6476ba8d787 100644 --- a/src/bin/pg_dump/po/uk.po +++ b/src/bin/pg_dump/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-23 10:51+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:22+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,33 +14,33 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_dump.pot\n" -"X-Crowdin-File-ID: 986\n" +"X-Crowdin-File: /REL_18_STABLE/pg_dump.pot\n" +"X-Crowdin-File-ID: 1089\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:413 compress_gzip.c:420 -#: compress_io.c:109 compress_lz4.c:780 compress_lz4.c:787 compress_zstd.c:25 -#: compress_zstd.c:31 +#: ../../common/compression.c:150 compress_gzip.c:441 compress_gzip.c:448 +#: compress_io.c:108 compress_lz4.c:800 compress_lz4.c:807 compress_zstd.c:26 +#: compress_zstd.c:32 #, c-format msgid "this build does not support compression with %s" msgstr "ця збірка не підтримує стиснення з %s" @@ -109,27 +109,27 @@ msgstr "неможливо знайти \"%s\" для виконання" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "не вдалося знайти абсолютний шлях \"%s\": %m" -#: ../../common/exec.c:382 +#: ../../common/exec.c:363 #, c-format msgid "could not execute command \"%s\": %m" msgstr "не вдалося виконати команду \"%s\": %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "не вдалося прочитати висновок команди \"%s\": %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "команда \"%s\" не повернула жодних даних" -#: ../../common/exec.c:424 parallel.c:1609 +#: ../../common/exec.c:405 parallel.c:1611 #, c-format msgid "%s() failed: %m" msgstr "%s() помилка: %m" -#: ../../common/exec.c:562 ../../common/exec.c:607 ../../common/exec.c:699 +#: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 msgid "out of memory" msgstr "недостатньо пам'яті" @@ -144,45 +144,44 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:70 ../../common/file_utils.c:347 -#: ../../common/file_utils.c:406 ../../common/file_utils.c:480 +#: ../../common/file_utils.c:69 ../../common/file_utils.c:370 +#: ../../common/file_utils.c:428 ../../common/file_utils.c:502 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:944 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 -#: pg_backup_directory.c:182 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:418 ../../common/file_utils.c:488 +#: ../../common/file_utils.c:440 ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -232,578 +231,673 @@ msgstr "%s має бути в діапазоні %d..%d" msgid "unrecognized sync method: %s" msgstr "нерозпізнаний метод синхронізації: %s" -#: ../../fe_utils/string_utils.c:434 +#: ../../fe_utils/string_utils.c:587 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"\n" msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" -#: ../../fe_utils/string_utils.c:607 +#: ../../fe_utils/string_utils.c:760 #, c-format msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" -#: common.c:135 +#: common.c:112 #, c-format msgid "reading extensions" msgstr "читання розширень" -#: common.c:138 +#: common.c:115 #, c-format msgid "identifying extension members" msgstr "ідентифікація членів розширення" -#: common.c:141 +#: common.c:118 #, c-format msgid "reading schemas" msgstr "читання схемів" -#: common.c:150 +#: common.c:127 #, c-format msgid "reading user-defined tables" msgstr "читання користувацьких таблиць" -#: common.c:155 +#: common.c:132 #, c-format msgid "reading user-defined functions" msgstr "читання користувацьких функцій" -#: common.c:159 +#: common.c:136 #, c-format msgid "reading user-defined types" msgstr "читання користувацьких типів" -#: common.c:163 +#: common.c:140 #, c-format msgid "reading procedural languages" msgstr "читання процедурних мов" -#: common.c:166 +#: common.c:143 #, c-format msgid "reading user-defined aggregate functions" msgstr "читання користувацьких агрегатних функцій" -#: common.c:169 +#: common.c:146 #, c-format msgid "reading user-defined operators" msgstr "читання користувацьких операторів" -#: common.c:172 +#: common.c:149 #, c-format msgid "reading user-defined access methods" msgstr "читання користувацьких методів доступу" -#: common.c:175 +#: common.c:152 #, c-format msgid "reading user-defined operator classes" msgstr "читання користувацьких класів операторів" -#: common.c:178 +#: common.c:155 #, c-format msgid "reading user-defined operator families" msgstr "читання користувацьких сімейств операторів" -#: common.c:181 +#: common.c:158 #, c-format msgid "reading user-defined text search parsers" msgstr "читання користувацьких парсерів текстового пошуку" -#: common.c:184 +#: common.c:161 #, c-format msgid "reading user-defined text search templates" msgstr "читання користувацьких шаблонів текстового пошуку" -#: common.c:187 +#: common.c:164 #, c-format msgid "reading user-defined text search dictionaries" msgstr "читання користувацьких словників текстового пошуку" -#: common.c:190 +#: common.c:167 #, c-format msgid "reading user-defined text search configurations" msgstr "читання користувацьких конфігурацій текстового пошуку" -#: common.c:193 +#: common.c:170 #, c-format msgid "reading user-defined foreign-data wrappers" msgstr "читання користувацьких джерел сторонніх даних" -#: common.c:196 +#: common.c:173 #, c-format msgid "reading user-defined foreign servers" msgstr "читання користувацьких сторонніх серверів" -#: common.c:199 +#: common.c:176 #, c-format msgid "reading default privileges" msgstr "читання прав за замовчуванням" -#: common.c:202 +#: common.c:179 #, c-format msgid "reading user-defined collations" msgstr "читання користувацьких сортувань" -#: common.c:205 +#: common.c:182 #, c-format msgid "reading user-defined conversions" msgstr "читання користувацьких перетворень" -#: common.c:208 +#: common.c:185 #, c-format msgid "reading type casts" msgstr "читання типу приведення" -#: common.c:211 +#: common.c:188 #, c-format msgid "reading transforms" msgstr "читання перетворень" -#: common.c:214 +#: common.c:191 #, c-format msgid "reading table inheritance information" msgstr "читання інформації про успадкування таблиці" -#: common.c:217 +#: common.c:194 #, c-format msgid "reading event triggers" msgstr "читання тригерів подій" -#: common.c:221 +#: common.c:198 #, c-format msgid "finding extension tables" msgstr "пошук таблиць розширень" -#: common.c:225 +#: common.c:202 #, c-format msgid "finding inheritance relationships" msgstr "пошук відносин успадкування" -#: common.c:228 +#: common.c:205 #, c-format msgid "reading column info for interesting tables" msgstr "читання інформації про стовпці цікавлячої таблиці" -#: common.c:231 +#: common.c:208 #, c-format msgid "flagging inherited columns in subtables" msgstr "помітка успадкованих стовпців в підтаблицях" -#: common.c:234 +#: common.c:211 #, c-format msgid "reading partitioning data" msgstr "читання даних секції" -#: common.c:237 +#: common.c:214 #, c-format msgid "reading indexes" msgstr "читання індексів" -#: common.c:240 +#: common.c:217 #, c-format msgid "flagging indexes in partitioned tables" msgstr "помітка індексів в секційних таблицях" -#: common.c:243 +#: common.c:220 #, c-format msgid "reading extended statistics" msgstr "читання розширеної статистики" -#: common.c:246 +#: common.c:223 #, c-format msgid "reading constraints" msgstr "читання обмежень" -#: common.c:249 +#: common.c:226 #, c-format msgid "reading triggers" msgstr "читання тригерів" -#: common.c:252 +#: common.c:229 #, c-format msgid "reading rewrite rules" msgstr "читання правил перезаписування" -#: common.c:255 +#: common.c:232 #, c-format msgid "reading policies" msgstr "читання політик" -#: common.c:258 +#: common.c:235 #, c-format msgid "reading publications" msgstr "читання публікацій" -#: common.c:261 +#: common.c:238 #, c-format msgid "reading publication membership of tables" msgstr "читання членства публікації для таблиць" -#: common.c:264 +#: common.c:241 #, c-format msgid "reading publication membership of schemas" msgstr "читання членства публікації для схем" -#: common.c:267 +#: common.c:244 #, c-format msgid "reading subscriptions" msgstr "читання підписок" -#: common.c:270 +#: common.c:247 #, c-format msgid "reading subscription membership of tables" msgstr "читання підписки членства таблиць" -#: common.c:333 +#: common.c:310 #, c-format msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found" msgstr "помилка перевірки, батьківський елемент ідентифікатора OID %u для таблиці \"%s\" (ідентифікатор OID %u) не знайдено" -#: common.c:375 +#: common.c:352 #, c-format msgid "invalid number of parents %d for table \"%s\"" msgstr "неприпустиме число батьківських елементів %d для таблиці \"%s\"" -#: common.c:1098 +#: common.c:1128 #, c-format msgid "could not parse numeric array \"%s\": too many numbers" msgstr "не вдалося проаналізувати числовий масив \"%s\": забагато чисел" -#: common.c:1110 +#: common.c:1140 #, c-format msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "не вдалося проаналізувати числовий масив \"%s\": неприпустимий характер числа" -#: compress_gzip.c:69 compress_gzip.c:183 +#: compress_gzip.c:78 compress_gzip.c:192 #, c-format msgid "could not initialize compression library: %s" msgstr "не вдалося ініціалізувати бібліотеку стиснення: %s" -#: compress_gzip.c:93 +#: compress_gzip.c:102 #, c-format msgid "could not close compression stream: %s" msgstr "не вдалося закрити потік стиснення: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:122 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "не вдалося стиснути дані: %s" -#: compress_gzip.c:199 compress_gzip.c:214 +#: compress_gzip.c:208 compress_gzip.c:223 #, c-format msgid "could not uncompress data: %s" msgstr "не вдалося розпакувати дані: %s" -#: compress_gzip.c:221 +#: compress_gzip.c:230 #, c-format msgid "could not close compression library: %s" msgstr "не вдалося закрити бібліотеку стиснення: %s" -#: compress_gzip.c:266 compress_lz4.c:608 compress_lz4.c:628 compress_lz4.c:647 +#: compress_gzip.c:290 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 #, c-format msgid "could not read from input file: %s" msgstr "не вдалося прочитати з вхідного файлу: %s" -#: compress_gzip.c:295 compress_none.c:97 compress_none.c:139 -#: compress_zstd.c:373 pg_backup_custom.c:651 +#: compress_gzip.c:307 compress_zstd.c:382 +#, c-format +msgid "could not write to file: %s" +msgstr "не вдалося записати до файлу: %s" + +#: compress_gzip.c:323 compress_lz4.c:494 compress_none.c:94 +#: compress_none.c:135 compress_zstd.c:315 pg_backup_custom.c:650 #, c-format msgid "could not read from input file: %m" msgstr "не вдалося прочитати з вхідного файлу: %m" -#: compress_gzip.c:297 compress_lz4.c:630 compress_none.c:141 -#: compress_zstd.c:371 pg_backup_custom.c:649 pg_backup_directory.c:565 +#: compress_gzip.c:325 compress_lz4.c:635 compress_none.c:137 +#: compress_zstd.c:400 pg_backup_custom.c:648 pg_backup_directory.c:515 #: pg_backup_tar.c:740 pg_backup_tar.c:763 #, c-format msgid "could not read from input file: end of file" msgstr "не вдалося прочитати з вхідного файлу: кінець файлу" -#: compress_lz4.c:157 +#: compress_lz4.c:158 #, c-format msgid "could not create LZ4 decompression context: %s" msgstr "не вдалося створити контекст декомпресії LZ4: %s" -#: compress_lz4.c:180 +#: compress_lz4.c:181 #, c-format msgid "could not decompress: %s" msgstr "не вдалося розпакувати: %s" -#: compress_lz4.c:193 +#: compress_lz4.c:194 #, c-format msgid "could not free LZ4 decompression context: %s" msgstr "не вдалося звільнити контекст декомпресії LZ4: %s" -#: compress_lz4.c:259 compress_lz4.c:266 compress_lz4.c:680 compress_lz4.c:690 +#: compress_lz4.c:260 compress_lz4.c:267 compress_lz4.c:689 compress_lz4.c:704 #, c-format msgid "could not end compression: %s" msgstr "не вдалося закінчити стискання: %s" -#: compress_lz4.c:301 +#: compress_lz4.c:302 #, c-format msgid "could not initialize LZ4 compression: %s" msgstr "не вдалося ініціалізувати стискання LZ4: %s" -#: compress_lz4.c:697 +#: compress_lz4.c:463 compress_lz4.c:581 +#, c-format +msgid "unable to initialize LZ4 library: %s" +msgstr "не вдалося ініціалізувати бібліотеку LZ4: %s" + +#: compress_lz4.c:593 +#, c-format +msgid "error during writing: %s" +msgstr "помилка під час записування: %s" + +#: compress_lz4.c:599 +#, c-format +msgid "error during writing: %m" +msgstr "помилка під час записування: %m" + +#: compress_lz4.c:698 +#, c-format +msgid "could not write to output file: %m" +msgstr "не вдалося записати до вихідного файлу: %m" + +#: compress_lz4.c:711 #, c-format msgid "could not end decompression: %s" msgstr "не вдалося закінчити розпакування: %s" -#: compress_zstd.c:66 +#: compress_lz4.c:726 compress_none.c:156 +#, c-format +msgid "could not close file: %m" +msgstr "не вдалося закрити файл: %m" + +#: compress_none.c:109 compress_zstd.c:389 +#, c-format +msgid "could not write to file: %m" +msgstr "не вдалося записати до файлу: %m" + +#: compress_zstd.c:67 #, c-format msgid "could not set compression parameter \"%s\": %s" msgstr "не вдалося встановити параметр стискання \"%s\": %s" -#: compress_zstd.c:78 compress_zstd.c:231 compress_zstd.c:490 -#: compress_zstd.c:498 +#: compress_zstd.c:79 compress_zstd.c:234 compress_zstd.c:283 +#: compress_zstd.c:373 #, c-format msgid "could not initialize compression library" msgstr "не вдалося ініціалізувати бібліотеку стискання" -#: compress_zstd.c:194 compress_zstd.c:308 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "не вдалося розпакувати дані: %s" -#: compress_zstd.c:501 +#: connectdb.c:56 connectdb.c:165 pg_backup_db.c:126 +msgid "Password: " +msgstr "Пароль: " + +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:951 +#: pg_dump_sort.c:1478 pg_dump_sort.c:1498 +#, c-format +msgid "%s" +msgstr "%s" + +#: connectdb.c:157 pg_dumpall.c:520 +#, c-format +msgid "could not connect to database \"%s\"" +msgstr "не вдалося зв'язатися з базою даних \"%s\"" + +#: connectdb.c:201 +#, c-format +msgid "could not get server version" +msgstr "не вдалося отримати версію серверу" + +#: connectdb.c:205 +#, c-format +msgid "could not parse server version \"%s\"" +msgstr "не вдалося аналізувати версію серверу \"%s\"" + +#: connectdb.c:222 pg_backup_db.c:52 #, c-format -msgid "unhandled mode \"%s\"" -msgstr "непідтримуваний режим \"%s\"" +msgid "aborting because of server version mismatch" +msgstr "переривання через невідповідність версії серверу" + +#: connectdb.c:223 pg_backup_db.c:53 +#, c-format +msgid "server version: %s; %s version: %s" +msgstr "версія серверу: %s; версія %s: %s" -#: filter.c:49 +#: connectdb.c:282 pg_dumpall.c:1790 +#, c-format +msgid "executing %s" +msgstr "виконується %s" + +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1796 +#, c-format +msgid "query failed: %s" +msgstr "запит не вдався: %s" + +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1797 +#, c-format +msgid "Query was: %s" +msgstr "Запит був: %s" + +#: dumputils.c:949 +#, c-format +msgid "could not create directory \"%s\": %m" +msgstr "не вдалося створити каталог \"%s\": %m" + +#: dumputils.c:954 +#, c-format +msgid "could not change permissions of directory \"%s\": %m" +msgstr "не вдалося змінити дозволи каталогу \"%s\": %m" + +#: dumputils.c:959 +#, c-format +msgid "directory \"%s\" is not empty" +msgstr "каталог \"%s\" не порожній" + +#: filter.c:48 #, c-format msgid "could not open filter file \"%s\": %m" msgstr "не вдалося відкрити файл фільтра \"%s\": %m" -#: filter.c:72 +#: filter.c:71 #, c-format msgid "could not close filter file \"%s\": %m" msgstr "не вдалося закрити файл фільтра \"%s\": %m" -#: filter.c:165 +#: filter.c:164 #, c-format msgid "invalid format in filter read from standard input on line %d: %s" msgstr "неприпустимий формат у фільтрі прочитаний з стандартного введення в рядку %d: %s" -#: filter.c:168 +#: filter.c:167 #, c-format msgid "invalid format in filter read from file \"%s\" on line %d: %s" msgstr "неприпустимий формат прочитанний у файлі \"%s\" в рядку %d: %s" -#: filter.c:241 filter.c:468 +#: filter.c:243 filter.c:470 #, c-format msgid "could not read from filter file \"%s\": %m" msgstr "не вдалося прочитати з файлу фільтра %s: %m" -#: filter.c:244 +#: filter.c:246 msgid "unexpected end of file" msgstr "несподіваний кінець файлу" -#: filter.c:311 +#: filter.c:313 msgid "missing object name pattern" msgstr "відсутній шаблон назви об'єкта" -#: filter.c:422 +#: filter.c:424 msgid "no filter command found (expected \"include\" or \"exclude\")" msgstr "не знайдено команди фільтрів (очікувалося \"include\" або \"exclude\")" -#: filter.c:433 +#: filter.c:435 msgid "invalid filter command (expected \"include\" or \"exclude\")" msgstr "неприпустима команда фільтра (очікувалась \"include\" або \"exclude\")" -#: filter.c:440 +#: filter.c:442 msgid "missing filter object type" msgstr "відсутній тип об'єкту фільтру" -#: filter.c:447 +#: filter.c:449 #, c-format msgid "unsupported filter object type: \"%.*s\"" msgstr "непідтримуваний тип об'єкта фільтру: \"%.*s\"" -#: parallel.c:251 +#: parallel.c:253 #, c-format msgid "%s() failed: error code %d" msgstr "%s() помилка: код помилки %d" -#: parallel.c:959 +#: parallel.c:961 #, c-format msgid "could not create communication channels: %m" msgstr "не вдалося створити канали зв'язку: %m" -#: parallel.c:1016 +#: parallel.c:1018 #, c-format msgid "could not create worker process: %m" msgstr "не вдалося створити робочий процес: %m" -#: parallel.c:1146 +#: parallel.c:1148 #, c-format msgid "unrecognized command received from leader: \"%s\"" msgstr "нерозпізнана команда отримана від лідера: \"%s\"" -#: parallel.c:1189 parallel.c:1427 +#: parallel.c:1191 parallel.c:1429 #, c-format msgid "invalid message received from worker: \"%s\"" msgstr "отримане невірне повідомлення від робочого процесу: \"%s\"" -#: parallel.c:1321 +#: parallel.c:1323 #, c-format msgid "could not obtain lock on relation \"%s\"\n" "This usually means that someone requested an ACCESS EXCLUSIVE lock on the table after the pg_dump parent process had gotten the initial ACCESS SHARE lock on the table." msgstr "не вдалося отримати блокування відношення \"%s\"\n" "Це, зазвичай, означає, що хтось зробив запит на монопольне блокування таблиці після того, як батьківський процес pg_dump отримав початкове блокування спільного доступу для таблиці." -#: parallel.c:1410 +#: parallel.c:1412 #, c-format msgid "a worker process died unexpectedly" msgstr "робочий процес завершився несподівано" -#: parallel.c:1532 parallel.c:1650 +#: parallel.c:1534 parallel.c:1652 #, c-format msgid "could not write to the communication channel: %m" msgstr "не вдалося записати до каналу зв'язку: %m" -#: parallel.c:1734 +#: parallel.c:1736 #, c-format msgid "pgpipe: could not create socket: error code %d" msgstr "pgpipe: не вдалося створити сокет: код помилки %d" -#: parallel.c:1745 +#: parallel.c:1747 #, c-format msgid "pgpipe: could not bind: error code %d" msgstr "pgpipe: не вдалося прив'язати: код помилки %d" -#: parallel.c:1752 +#: parallel.c:1754 #, c-format msgid "pgpipe: could not listen: error code %d" msgstr "pgpipe: не вдалося прослухати: код помилки %d" -#: parallel.c:1759 +#: parallel.c:1761 #, c-format msgid "pgpipe: %s() failed: error code %d" msgstr "pgpipe: %s() помилка: код помилки %d" -#: parallel.c:1770 +#: parallel.c:1772 #, c-format msgid "pgpipe: could not create second socket: error code %d" msgstr "pgpipe: не вдалося створити другий сокет: код помилки %d" -#: parallel.c:1779 +#: parallel.c:1781 #, c-format msgid "pgpipe: could not connect socket: error code %d" msgstr "pgpipe: не вдалося зв'язатися з сокетом: код помилки %d" -#: parallel.c:1788 +#: parallel.c:1790 #, c-format msgid "pgpipe: could not accept connection: error code %d" msgstr "pgpipe: не вдалося прийняти зв'язок: код помилки %d" -#: pg_backup_archiver.c:261 pg_backup_archiver.c:1706 +#: pg_backup_archiver.c:269 pg_backup_archiver.c:1745 #, c-format msgid "could not close output file: %m" msgstr "не вдалося закрити вихідний файл: %m" -#: pg_backup_archiver.c:305 pg_backup_archiver.c:309 +#: pg_backup_archiver.c:313 pg_backup_archiver.c:317 #, c-format msgid "archive items not in correct section order" msgstr "елементи архіву в неправильному порядку" -#: pg_backup_archiver.c:315 +#: pg_backup_archiver.c:323 #, c-format msgid "unexpected section code %d" msgstr "неочікуваний код розділу %d" -#: pg_backup_archiver.c:352 +#: pg_backup_archiver.c:360 #, c-format msgid "parallel restore is not supported with this archive file format" msgstr "паралельне відновлення не підтримується з цим файлом архівного формату" -#: pg_backup_archiver.c:356 +#: pg_backup_archiver.c:364 #, c-format msgid "parallel restore is not supported with archives made by pre-8.0 pg_dump" msgstr "паралельне відновлення не підтримується з архівами, зробленими pre-8.0 pg_dump" -#: pg_backup_archiver.c:377 +#: pg_backup_archiver.c:385 #, c-format msgid "cannot restore from compressed archive (%s)" msgstr "не можна відновити зі стиснутого архіву (%s)" -#: pg_backup_archiver.c:397 +#: pg_backup_archiver.c:405 #, c-format msgid "connecting to database for restore" msgstr "підключення до бази даних для відновлення" -#: pg_backup_archiver.c:399 +#: pg_backup_archiver.c:407 #, c-format msgid "direct database connections are not supported in pre-1.3 archives" msgstr "прямі з'днання з базою даних не підтримуються в архівах у версіях до 1.3" -#: pg_backup_archiver.c:442 +#: pg_backup_archiver.c:450 #, c-format -msgid "implied data-only restore" -msgstr "мається на увазі відновлення лише даних" +msgid "implied no-schema restore" +msgstr "мається на увазі відновлення без схеми" -#: pg_backup_archiver.c:510 +#: pg_backup_archiver.c:529 #, c-format msgid "dropping %s %s" msgstr "видалення %s %s" -#: pg_backup_archiver.c:642 +#: pg_backup_archiver.c:661 #, c-format msgid "could not find where to insert IF EXISTS in statement \"%s\"" msgstr "не вдалося знайти, куди вставити IF EXISTS в інструкції \"%s\"" -#: pg_backup_archiver.c:828 pg_backup_archiver.c:830 +#: pg_backup_archiver.c:855 pg_backup_archiver.c:857 #, c-format msgid "warning from original dump file: %s" msgstr "попередження з оригінального файлу дамп: %s" -#: pg_backup_archiver.c:864 +#: pg_backup_archiver.c:891 #, c-format msgid "creating %s \"%s.%s\"" msgstr "створення %s \"%s.%s\"" -#: pg_backup_archiver.c:867 +#: pg_backup_archiver.c:894 #, c-format msgid "creating %s \"%s\"" msgstr "створення %s \" \"%s\"" -#: pg_backup_archiver.c:917 +#: pg_backup_archiver.c:944 #, c-format msgid "connecting to new database \"%s\"" msgstr "підключення до нової бази даних \"%s\"" -#: pg_backup_archiver.c:944 +#: pg_backup_archiver.c:971 #, c-format msgid "processing %s" msgstr "обробка %s" -#: pg_backup_archiver.c:966 +#: pg_backup_archiver.c:993 #, c-format msgid "processing data for table \"%s.%s\"" msgstr "обробка даних для таблиці \"%s.%s\"" -#: pg_backup_archiver.c:1036 +#: pg_backup_archiver.c:1063 #, c-format msgid "executing %s %s" msgstr "виконання %s %s" -#: pg_backup_archiver.c:1096 +#: pg_backup_archiver.c:1132 #, c-format msgid "disabling triggers for %s" msgstr "вимкнення тригерів для %s" -#: pg_backup_archiver.c:1122 +#: pg_backup_archiver.c:1158 #, c-format msgid "enabling triggers for %s" msgstr "увімкнення тригерів для %s" -#: pg_backup_archiver.c:1187 +#: pg_backup_archiver.c:1223 #, c-format msgid "internal error -- WriteData cannot be called outside the context of a DataDumper routine" msgstr "внутрішня помилка - WriteData не може бути викликана поза контекстом підпрограми DataDumper " -#: pg_backup_archiver.c:1379 +#: pg_backup_archiver.c:1418 #, c-format msgid "large-object output not supported in chosen format" msgstr "вивід великих об'єктів не підтримується у вибраному форматі" -#: pg_backup_archiver.c:1442 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" @@ -812,55 +906,55 @@ msgstr[1] "відновлено %d великих об'єкти" msgstr[2] "відновлено %d великих об'єктів" msgstr[3] "відновлено %d великих об'єктів" -#: pg_backup_archiver.c:1469 pg_backup_tar.c:683 +#: pg_backup_archiver.c:1508 pg_backup_tar.c:683 #, c-format msgid "restoring large object with OID %u" msgstr "відновлення великого об'єкту з OID %u" -#: pg_backup_archiver.c:1481 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "не вдалося створити великий об'єкт %u: %s" -#: pg_backup_archiver.c:1486 pg_dump.c:3888 +#: pg_backup_archiver.c:1525 pg_dump.c:4099 #, c-format msgid "could not open large object %u: %s" msgstr "не вдалося відкрити великий об'єкт %u: %s" -#: pg_backup_archiver.c:1542 +#: pg_backup_archiver.c:1581 #, c-format msgid "could not open TOC file \"%s\": %m" msgstr "не вдалося відкрити файл TOC \"%s\": %m" -#: pg_backup_archiver.c:1570 +#: pg_backup_archiver.c:1609 #, c-format msgid "line ignored: %s" msgstr "рядок проігноровано: %s" -#: pg_backup_archiver.c:1577 pg_backup_db.c:609 +#: pg_backup_archiver.c:1616 pg_backup_db.c:548 #, c-format msgid "could not find entry for ID %d" msgstr "не вдалося знайти введення для ID %d" -#: pg_backup_archiver.c:1600 pg_backup_directory.c:219 -#: pg_backup_directory.c:613 +#: pg_backup_archiver.c:1639 pg_backup_directory.c:187 +#: pg_backup_directory.c:563 #, c-format msgid "could not close TOC file: %m" msgstr "не вдалося закрити файл TOC: %m" -#: pg_backup_archiver.c:1687 pg_backup_custom.c:152 pg_backup_directory.c:333 -#: pg_backup_directory.c:600 pg_backup_directory.c:666 -#: pg_backup_directory.c:684 pg_dumpall.c:506 +#: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 +#: pg_backup_directory.c:550 pg_backup_directory.c:616 +#: pg_backup_directory.c:634 pg_dumpall.c:554 #, c-format msgid "could not open output file \"%s\": %m" msgstr "не вдалося відкрити вихідний файл \"%s\": %m" -#: pg_backup_archiver.c:1689 pg_backup_custom.c:158 +#: pg_backup_archiver.c:1728 pg_backup_custom.c:157 #, c-format msgid "could not open output file: %m" msgstr "не вдалося відкрити вихідний файл: %m" -#: pg_backup_archiver.c:1772 +#: pg_backup_archiver.c:1811 #, c-format msgid "wrote %zu byte of large object data (result = %d)" msgid_plural "wrote %zu bytes of large object data (result = %d)" @@ -869,400 +963,371 @@ msgstr[1] "записано %zu байти даних великого об'єк msgstr[2] "записано %zu байтів даних великого об'єкта (результат = %d)" msgstr[3] "записано %zu байтів даних великого об'єкта (результат = %d)" -#: pg_backup_archiver.c:1778 +#: pg_backup_archiver.c:1817 #, c-format msgid "could not write to large object: %s" msgstr "не вдалося записати до великого об'єкту: %s" -#: pg_backup_archiver.c:1868 +#: pg_backup_archiver.c:1907 #, c-format msgid "while INITIALIZING:" msgstr "при ІНІЦІАЛІЗАЦІЇ:" -#: pg_backup_archiver.c:1873 +#: pg_backup_archiver.c:1912 #, c-format msgid "while PROCESSING TOC:" msgstr "при ОБРОБЦІ TOC:" -#: pg_backup_archiver.c:1878 +#: pg_backup_archiver.c:1917 #, c-format msgid "while FINALIZING:" msgstr "при ЗАВЕРШЕННІ:" -#: pg_backup_archiver.c:1883 +#: pg_backup_archiver.c:1922 #, c-format msgid "from TOC entry %d; %u %u %s %s %s" msgstr "зі входження до TOC %d; %u %u %s %s %s" -#: pg_backup_archiver.c:1959 +#: pg_backup_archiver.c:1998 #, c-format msgid "bad dumpId" msgstr "невірний dumpId" -#: pg_backup_archiver.c:1980 +#: pg_backup_archiver.c:2019 #, c-format msgid "bad table dumpId for TABLE DATA item" msgstr "невірна таблиця dumpId для елементу даних таблиці" -#: pg_backup_archiver.c:2072 +#: pg_backup_archiver.c:2111 #, c-format msgid "unexpected data offset flag %d" msgstr "неочікувана позначка зсуву даних %d" -#: pg_backup_archiver.c:2085 +#: pg_backup_archiver.c:2124 #, c-format msgid "file offset in dump file is too large" msgstr "зсув файлу у файлі дампу завеликий" -#: pg_backup_archiver.c:2196 +#: pg_backup_archiver.c:2235 #, c-format msgid "directory name too long: \"%s\"" msgstr "ім'я каталогу задовге: \"%s\"" -#: pg_backup_archiver.c:2246 +#: pg_backup_archiver.c:2285 #, c-format msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does not exist)" msgstr "каталог \"%s\" не схожий на архівний (\"toc.dat\" не існує)" -#: pg_backup_archiver.c:2254 pg_backup_custom.c:169 pg_backup_custom.c:812 -#: pg_backup_directory.c:204 pg_backup_directory.c:396 +#: pg_backup_archiver.c:2293 pg_backup_custom.c:168 pg_backup_custom.c:813 +#: pg_backup_directory.c:172 pg_backup_directory.c:358 #, c-format msgid "could not open input file \"%s\": %m" msgstr "не вдалося відкрити вхідний файл \"%s\": %m" -#: pg_backup_archiver.c:2261 pg_backup_custom.c:175 +#: pg_backup_archiver.c:2300 pg_backup_custom.c:174 #, c-format msgid "could not open input file: %m" msgstr "не вдалося відкрити вхідний файл: %m" -#: pg_backup_archiver.c:2267 +#: pg_backup_archiver.c:2306 #, c-format msgid "could not read input file: %m" msgstr "не вдалося прочитати вхідний файл: %m" -#: pg_backup_archiver.c:2269 +#: pg_backup_archiver.c:2308 #, c-format msgid "input file is too short (read %lu, expected 5)" msgstr "вхідний файл закороткий (прочитано %lu, очікувалось 5)" -#: pg_backup_archiver.c:2301 +#: pg_backup_archiver.c:2340 #, c-format msgid "input file appears to be a text format dump. Please use psql." msgstr "вхідний файл схожий на дамп текстового формату. Будь ласка, використайте psql." -#: pg_backup_archiver.c:2307 +#: pg_backup_archiver.c:2346 #, c-format msgid "input file does not appear to be a valid archive (too short?)" msgstr "вхідний файл не схожий на архівний (закороткий?)" -#: pg_backup_archiver.c:2313 +#: pg_backup_archiver.c:2352 #, c-format msgid "input file does not appear to be a valid archive" msgstr "вхідний файл не схожий на архівний" -#: pg_backup_archiver.c:2322 +#: pg_backup_archiver.c:2361 #, c-format msgid "could not close input file: %m" msgstr "не вдалося закрити вхідний файл: %m" -#: pg_backup_archiver.c:2401 +#: pg_backup_archiver.c:2440 #, c-format msgid "could not open stdout for appending: %m" msgstr "не вдалося відкрити stdout для додавання: %m" -#: pg_backup_archiver.c:2446 +#: pg_backup_archiver.c:2485 #, c-format msgid "unrecognized file format \"%d\"" msgstr "нерозпізнаний формат файлу \"%d\"" -#: pg_backup_archiver.c:2527 pg_backup_archiver.c:4647 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4797 #, c-format msgid "finished item %d %s %s" msgstr "завершений об'єкт %d %s %s" -#: pg_backup_archiver.c:2531 pg_backup_archiver.c:4660 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4810 #, c-format msgid "worker process failed: exit code %d" msgstr "помилка при робочому процесі: код виходу %d" -#: pg_backup_archiver.c:2653 +#: pg_backup_archiver.c:2668 +#, c-format +msgid "unexpected TOC entry in WriteToc(): %d %s %s" +msgstr "неочікуваний запис TOC в WriteToc(): %d %s %s" + +#: pg_backup_archiver.c:2672 pg_backup_custom.c:440 pg_backup_custom.c:506 +#: pg_backup_custom.c:635 pg_backup_custom.c:871 pg_backup_tar.c:1029 +#: pg_backup_tar.c:1034 +#, c-format +msgid "error during file seek: %m" +msgstr "помилка під час пошуку файлу oobe. xml: %m" + +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "введення ідентифікатора %d поза діапазоном -- можливо, зміст пошкоджений" -#: pg_backup_archiver.c:2736 +#: pg_backup_archiver.c:2813 #, c-format msgid "restoring tables WITH OIDS is not supported anymore" msgstr "відновлення таблиць WITH OIDS більше не підтримується" -#: pg_backup_archiver.c:2818 +#: pg_backup_archiver.c:2895 #, c-format msgid "unrecognized encoding \"%s\"" msgstr "нерозпізнане кодування \"%s\"" -#: pg_backup_archiver.c:2823 +#: pg_backup_archiver.c:2901 #, c-format msgid "invalid ENCODING item: %s" msgstr "невірний об'єкт КОДУВАННЯ: %s" -#: pg_backup_archiver.c:2841 +#: pg_backup_archiver.c:2919 #, c-format msgid "invalid STDSTRINGS item: %s" msgstr "невірний об'єкт STDSTRINGS: %s" -#: pg_backup_archiver.c:2866 +#: pg_backup_archiver.c:2944 #, c-format msgid "schema \"%s\" not found" msgstr "схему \"%s\" не знайдено" -#: pg_backup_archiver.c:2873 +#: pg_backup_archiver.c:2951 #, c-format msgid "table \"%s\" not found" msgstr "таблицю \"%s\" не знайдено" -#: pg_backup_archiver.c:2880 +#: pg_backup_archiver.c:2958 #, c-format msgid "index \"%s\" not found" msgstr "індекс \"%s\" не знайдено" -#: pg_backup_archiver.c:2887 +#: pg_backup_archiver.c:2965 #, c-format msgid "function \"%s\" not found" msgstr "функцію \"%s\" не знайдено" -#: pg_backup_archiver.c:2894 +#: pg_backup_archiver.c:2972 #, c-format msgid "trigger \"%s\" not found" msgstr "тригер \"%s\" не знайдено" -#: pg_backup_archiver.c:3325 +#: pg_backup_archiver.c:3469 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "не вдалося встановити користувача сеансу для \"%s\": %s" -#: pg_backup_archiver.c:3457 +#: pg_backup_archiver.c:3611 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "не вдалося встановити \"search_path\" для \"%s\": %s" -#: pg_backup_archiver.c:3518 +#: pg_backup_archiver.c:3672 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" msgstr "не вдалося встановити \"default_tablespace\" для %s: %s" -#: pg_backup_archiver.c:3567 +#: pg_backup_archiver.c:3721 #, c-format msgid "could not set \"default_table_access_method\": %s" msgstr "не вдалося встановити \"default_table_access_method\" для: %s" -#: pg_backup_archiver.c:3616 +#: pg_backup_archiver.c:3770 #, c-format msgid "could not alter table access method: %s" msgstr "не вдалося змінити метод доступу до таблиці: %s" -#: pg_backup_archiver.c:3717 +#: pg_backup_archiver.c:3871 #, c-format msgid "don't know how to set owner for object type \"%s\"" msgstr "невідомо, як встановити власника об'єкту типу \"%s\"" -#: pg_backup_archiver.c:4004 +#: pg_backup_archiver.c:4006 +#, c-format +msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" +msgstr "неочікуваний запис TOC у _printTocEntry(): %d %s %s" + +#: pg_backup_archiver.c:4154 #, c-format msgid "did not find magic string in file header" msgstr "в заголовку файлу не знайдено магічного рядка" -#: pg_backup_archiver.c:4018 +#: pg_backup_archiver.c:4168 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "в заголовку непідтримувана версія (%d.%d)" -#: pg_backup_archiver.c:4023 +#: pg_backup_archiver.c:4173 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "перевірка на розмір цілого числа (%lu) не вдалася" -#: pg_backup_archiver.c:4027 +#: pg_backup_archiver.c:4177 #, c-format msgid "archive was made on a machine with larger integers, some operations might fail" msgstr "архів зроблено на архітектурі з більшими цілими числами, деякі операції можуть не виконуватися" -#: pg_backup_archiver.c:4037 +#: pg_backup_archiver.c:4187 #, c-format msgid "expected format (%d) differs from format found in file (%d)" msgstr "очікуваний формат (%d) відрізняється від знайденого формату у файлі (%d)" -#: pg_backup_archiver.c:4059 +#: pg_backup_archiver.c:4209 #, c-format msgid "archive is compressed, but this installation does not support compression (%s) -- no data will be available" msgstr "архів стиснено, але ця інсталяція не підтримує стискання (%s) -- дані не будуть доступними" -#: pg_backup_archiver.c:4095 +#: pg_backup_archiver.c:4245 #, c-format msgid "invalid creation date in header" msgstr "неприпустима дата створення у заголовку" -#: pg_backup_archiver.c:4229 +#: pg_backup_archiver.c:4379 #, c-format msgid "processing item %d %s %s" msgstr "обробка елементу %d %s %s" -#: pg_backup_archiver.c:4314 +#: pg_backup_archiver.c:4464 #, c-format msgid "entering main parallel loop" msgstr "введення головного паралельного циклу" -#: pg_backup_archiver.c:4325 +#: pg_backup_archiver.c:4475 #, c-format msgid "skipping item %d %s %s" msgstr "пропускається елемент %d %s %s " -#: pg_backup_archiver.c:4334 +#: pg_backup_archiver.c:4484 #, c-format msgid "launching item %d %s %s" msgstr "запуск елементу %d %s %s " -#: pg_backup_archiver.c:4388 +#: pg_backup_archiver.c:4538 #, c-format msgid "finished main parallel loop" msgstr "головний паралельний цикл завершився" -#: pg_backup_archiver.c:4424 +#: pg_backup_archiver.c:4574 #, c-format msgid "processing missed item %d %s %s" msgstr "обробка втраченого елементу %d %s %s" -#: pg_backup_archiver.c:4966 +#: pg_backup_archiver.c:5116 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "не вдалося створити таблицю \"%s\", дані не будуть відновлені" -#: pg_backup_custom.c:376 pg_backup_null.c:143 +#: pg_backup_custom.c:375 pg_backup_null.c:143 #, c-format msgid "invalid OID for large object" msgstr "неприпустимий ідентифікатор OID для великого об’єкту" -#: pg_backup_custom.c:441 pg_backup_custom.c:507 pg_backup_custom.c:636 -#: pg_backup_custom.c:870 pg_backup_tar.c:1029 pg_backup_tar.c:1034 -#, c-format -msgid "error during file seek: %m" -msgstr "помилка під час пошуку файлу oobe. xml: %m" - -#: pg_backup_custom.c:480 +#: pg_backup_custom.c:479 #, c-format msgid "data block %d has wrong seek position" msgstr "блок даних %d має неправильну позицію пошуку" -#: pg_backup_custom.c:497 +#: pg_backup_custom.c:496 #, c-format msgid "unrecognized data block type (%d) while searching archive" msgstr "нерозпізнаний тип блоку даних (%d) під час пошуку архіву" -#: pg_backup_custom.c:519 +#: pg_backup_custom.c:518 #, c-format msgid "could not find block ID %d in archive -- possibly due to out-of-order restore request, which cannot be handled due to non-seekable input file" msgstr "не вдалося зайти в архіві блок з ідентифікатором %d -- можливо, через непослідовність запиту відновлення, який не можна обробити через файл, що не допускає довільний вхід" -#: pg_backup_custom.c:524 +#: pg_backup_custom.c:523 #, c-format msgid "could not find block ID %d in archive -- possibly corrupt archive" msgstr "не вдалося знайти в архіві блок з ідентифікатором %d -- можливо, архів пошкоджений" -#: pg_backup_custom.c:531 +#: pg_backup_custom.c:530 #, c-format msgid "found unexpected block ID (%d) when reading data -- expected %d" msgstr "знайдено неочікуваний блок з ідентифікатором (%d) під час читання даних -- очікувалося %d" -#: pg_backup_custom.c:545 +#: pg_backup_custom.c:544 #, c-format msgid "unrecognized data block type %d while restoring archive" msgstr "нерозпізнаний тип блоку даних %d при відновленні архіву" -#: pg_backup_custom.c:751 pg_backup_custom.c:803 pg_backup_custom.c:945 +#: pg_backup_custom.c:750 pg_backup_custom.c:804 pg_backup_custom.c:946 #: pg_backup_tar.c:1032 #, c-format msgid "could not determine seek position in archive file: %m" msgstr "не вдалося визначити позицію пошуку у файлі архіву: %m" -#: pg_backup_custom.c:767 pg_backup_custom.c:807 +#: pg_backup_custom.c:768 pg_backup_custom.c:808 #, c-format msgid "could not close archive file: %m" msgstr "не вдалося закрити архівний файл: %m" -#: pg_backup_custom.c:790 +#: pg_backup_custom.c:791 #, c-format msgid "can only reopen input archives" msgstr "можливо повторно відкрити лише вхідні архіви" -#: pg_backup_custom.c:797 +#: pg_backup_custom.c:798 #, c-format msgid "parallel restore from standard input is not supported" msgstr "паралельне відновлення зі стандартного вводу не підтримується" -#: pg_backup_custom.c:799 +#: pg_backup_custom.c:800 #, c-format msgid "parallel restore from non-seekable file is not supported" msgstr "паралельне відновлення з файлу без вільного доступу не підтримується" -#: pg_backup_custom.c:815 +#: pg_backup_custom.c:816 #, c-format msgid "could not set seek position in archive file: %m" msgstr "не вдалося набрати позицію пошуку у файлі архіву: %m" -#: pg_backup_custom.c:894 +#: pg_backup_custom.c:895 #, c-format msgid "compressor active" msgstr "ущільнювач активний" -#: pg_backup_db.c:42 -#, c-format -msgid "could not get server_version from libpq" -msgstr "не вдалося отримати версію серверу з libpq" - -#: pg_backup_db.c:53 pg_dumpall.c:1830 -#, c-format -msgid "aborting because of server version mismatch" -msgstr "переривання через невідповідність версії серверу" - -#: pg_backup_db.c:54 pg_dumpall.c:1831 +#: pg_backup_db.c:41 #, c-format -msgid "server version: %s; %s version: %s" -msgstr "версія серверу: %s; версія %s: %s" +msgid "could not get \"server_version\" from libpq" +msgstr "не вдалося отримати \"server_version\" з libpq" -#: pg_backup_db.c:120 +#: pg_backup_db.c:118 #, c-format msgid "already connected to a database" msgstr "вже під'єднано до бази даних" -#: pg_backup_db.c:128 pg_backup_db.c:178 pg_dumpall.c:1677 pg_dumpall.c:1779 -msgid "Password: " -msgstr "Пароль: " - -#: pg_backup_db.c:170 -#, c-format -msgid "could not connect to database" -msgstr "не вдалося зв'язатися з базою даних" - -#: pg_backup_db.c:187 -#, c-format -msgid "reconnection failed: %s" -msgstr "помилка повторного підключення: %s" - -#: pg_backup_db.c:190 pg_backup_db.c:264 pg_dump.c:788 pg_dump_sort.c:1213 -#: pg_dump_sort.c:1233 pg_dumpall.c:1704 pg_dumpall.c:1788 -#, c-format -msgid "%s" -msgstr "%s" - -#: pg_backup_db.c:271 pg_dumpall.c:1893 pg_dumpall.c:1916 -#, c-format -msgid "query failed: %s" -msgstr "запит не вдався: %s" - -#: pg_backup_db.c:273 pg_dumpall.c:1894 pg_dumpall.c:1917 -#, c-format -msgid "Query was: %s" -msgstr "Запит був: %s" - -#: pg_backup_db.c:315 +#: pg_backup_db.c:254 #, c-format msgid "query returned %d row instead of one: %s" msgid_plural "query returned %d rows instead of one: %s" @@ -1271,110 +1336,89 @@ msgstr[1] "запит повернув %d рядки замість одного msgstr[2] "запит повернув %d рядків замість одного: %s" msgstr[3] "запит повернув %d рядків замість одного: %s" -#: pg_backup_db.c:351 +#: pg_backup_db.c:290 #, c-format msgid "%s: %sCommand was: %s" msgstr "%s:%sКоманда була: %s" -#: pg_backup_db.c:407 pg_backup_db.c:481 pg_backup_db.c:488 +#: pg_backup_db.c:346 pg_backup_db.c:420 pg_backup_db.c:427 msgid "could not execute query" msgstr "не вдалося виконати запит" -#: pg_backup_db.c:460 +#: pg_backup_db.c:399 #, c-format msgid "error returned by PQputCopyData: %s" msgstr "помилка повернулася від PQputCopyData: %s" -#: pg_backup_db.c:509 +#: pg_backup_db.c:448 #, c-format msgid "error returned by PQputCopyEnd: %s" msgstr "помилка повернулася від PQputCopyEnd: %s" -#: pg_backup_db.c:515 +#: pg_backup_db.c:454 #, c-format msgid "COPY failed for table \"%s\": %s" msgstr "КОПІЮВАННЯ для таблиці \"%s\" не вдалося: %s" -#: pg_backup_db.c:521 pg_dump.c:2283 +#: pg_backup_db.c:460 pg_dump.c:2472 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "неочікувані зайві результати під час копіювання таблиці \"%s\"" -#: pg_backup_db.c:533 +#: pg_backup_db.c:472 msgid "could not start database transaction" msgstr "не вдалося почати транзакцію бази даних" -#: pg_backup_db.c:541 +#: pg_backup_db.c:480 msgid "could not commit database transaction" msgstr "не вдалося затвердити транзакцію бази даних" -#: pg_backup_directory.c:153 +#: pg_backup_directory.c:154 #, c-format msgid "no output directory specified" msgstr "вихідний каталог не вказано" -#: pg_backup_directory.c:186 -#, c-format -msgid "could not close directory \"%s\": %m" -msgstr "не вдалося закрити каталог \"%s\": %m" - -#: pg_backup_directory.c:192 -#, c-format -msgid "could not create directory \"%s\": %m" -msgstr "не вдалося створити каталог \"%s\": %m" - -#: pg_backup_directory.c:357 pg_backup_directory.c:506 -#: pg_backup_directory.c:544 -#, c-format -msgid "could not write to output file: %s" -msgstr "не можливо записати у вихідний файл: %s" - -#: pg_backup_directory.c:375 +#: pg_backup_directory.c:337 #, c-format msgid "could not close data file: %m" msgstr "не вдалося закрити файл даних: %m" -#: pg_backup_directory.c:408 +#: pg_backup_directory.c:370 #, c-format msgid "could not close data file \"%s\": %m" msgstr "не вдалося закрити файл даних \"%s\": %m" -#: pg_backup_directory.c:455 +#: pg_backup_directory.c:422 #, c-format msgid "could not open large object TOC file \"%s\" for input: %m" msgstr "не вдалося відкрити великий об'єкт файлу TOC \"%s\" для вводу: %m" -#: pg_backup_directory.c:466 +#: pg_backup_directory.c:433 #, c-format msgid "invalid line in large object TOC file \"%s\": \"%s\"" msgstr "невірна лінія у великому об'єкті файлу TOC \"%s\": \"%s\"" -#: pg_backup_directory.c:475 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "помилка читання великого об'єкту файлу TOC \"%s\"" -#: pg_backup_directory.c:479 +#: pg_backup_directory.c:446 #, c-format msgid "could not close large object TOC file \"%s\": %m" msgstr "не вдалося закрити великий об'єкт файлу TOC \"%s\" %m" -#: pg_backup_directory.c:702 +#: pg_backup_directory.c:652 #, c-format msgid "could not close LO data file: %m" msgstr "не вдалося закрити файл даних LO: %m" -#: pg_backup_directory.c:712 -#, c-format -msgid "could not write to LOs TOC file: %s" -msgstr "не вдалося записати в файл LO TOC: %s" - -#: pg_backup_directory.c:728 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" msgstr "не вдалося закрити файл LO TOC: %m" -#: pg_backup_directory.c:747 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "ім'я файлу задовге: \"%s\"" @@ -1464,302 +1508,313 @@ msgstr[3] "знайдено незавершений tar-заголовок (%lu msgid "corrupt tar header found in %s (expected %d, computed %d) file position %llu" msgstr "знайдено пошкоджений заголовок tar у %s (очікувалося %d, обчислено %d) позиції файлу %llu" -#: pg_backup_utils.c:54 +#: pg_backup_utils.c:56 #, c-format msgid "unrecognized section name: \"%s\"" msgstr "нерозпізнане ім’я розділу: \"%s\"" -#: pg_backup_utils.c:55 pg_dump.c:694 pg_dump.c:711 pg_dumpall.c:370 -#: pg_dumpall.c:380 pg_dumpall.c:388 pg_dumpall.c:396 pg_dumpall.c:403 -#: pg_dumpall.c:413 pg_dumpall.c:488 pg_restore.c:307 pg_restore.c:323 -#: pg_restore.c:337 +#: pg_backup_utils.c:57 pg_dump.c:799 pg_dump.c:816 pg_dumpall.c:385 +#: pg_dumpall.c:395 pg_dumpall.c:405 pg_dumpall.c:414 pg_dumpall.c:422 +#: pg_dumpall.c:434 pg_dumpall.c:536 pg_restore.c:326 pg_restore.c:342 +#: pg_restore.c:357 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_backup_utils.c:66 +#: pg_backup_utils.c:68 #, c-format msgid "out of on_exit_nicely slots" msgstr "перевищено межу on_exit_nicely слотів" -#: pg_dump.c:709 pg_dumpall.c:378 pg_restore.c:321 +#: pg_dump.c:814 pg_dumpall.c:393 pg_restore.c:340 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: pg_dump.c:728 pg_restore.c:344 +#: pg_dump.c:826 pg_dump.c:829 pg_dump.c:832 pg_dump.c:837 pg_dump.c:840 +#: pg_dump.c:843 pg_dump.c:848 pg_dump.c:853 pg_dump.c:856 pg_dump.c:860 +#: pg_dump.c:868 pg_dumpall.c:412 pg_dumpall.c:420 pg_dumpall.c:432 +#: pg_restore.c:355 pg_restore.c:362 pg_restore.c:382 pg_restore.c:385 +#: pg_restore.c:388 pg_restore.c:393 pg_restore.c:396 pg_restore.c:399 +#: pg_restore.c:404 pg_restore.c:409 pg_restore.c:412 pg_restore.c:416 +#: pg_restore.c:420 pg_restore.c:428 +#, c-format +msgid "options %s and %s cannot be used together" +msgstr "параметри %s і %s не можна використовувати разом" + +#: pg_dump.c:864 #, c-format -msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgstr "параметри -s/--schema-only і -a/--data-only не можуть використовуватись разом" +msgid "option %s is not supported with parallel backup" +msgstr "параметр %s не підтримується з паралельним резервним копіюванням" -#: pg_dump.c:731 +#: pg_dump.c:872 pg_dumpall.c:427 pg_restore.c:460 #, c-format -msgid "options -s/--schema-only and --include-foreign-data cannot be used together" -msgstr "параметри -s/--schema-only і --include-foreign-data не можуть використовуватись разом" +msgid "option %s requires option %s" +msgstr "параметр %s потребує параметр %s" -#: pg_dump.c:734 +#: pg_dump.c:893 #, c-format -msgid "option --include-foreign-data is not supported with parallel backup" -msgstr "параметр --include-foreign-data не підтримується з паралельним резервним копіюванням" +msgid "option %s requires option %s, %s, or %s" +msgstr "параметр %s потребує параметр %s, %s або %s" -#: pg_dump.c:737 pg_restore.c:347 +#: pg_dump.c:911 pg_dumpall.c:504 pg_restore.c:375 #, c-format -msgid "options -c/--clean and -a/--data-only cannot be used together" -msgstr "параметри -c/--clean і -a/--data-only не можна використовувати разом" +msgid "could not generate restrict key" +msgstr "не вдалося створити ключ обмеження" -#: pg_dump.c:740 pg_dumpall.c:408 pg_restore.c:375 +#: pg_dump.c:913 pg_dumpall.c:506 pg_restore.c:377 #, c-format -msgid "option --if-exists requires option -c/--clean" -msgstr "параметр --if-exists потребує параметр -c/--clean" +msgid "invalid restrict key" +msgstr "невірний ключ обмеження" -#: pg_dump.c:747 +#: pg_dump.c:916 #, c-format -msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" -msgstr "параметр --on-conflict-do-nothing вимагає опції --inserts, --rows-per-insert або --column-inserts" +msgid "option %s can only be used with %s" +msgstr "параметр %s можна використовувати лише з %s" -#: pg_dump.c:776 +#: pg_dump.c:939 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "нерозпізнаний алгоритм стискання: \"%s\"" -#: pg_dump.c:783 +#: pg_dump.c:946 #, c-format msgid "invalid compression specification: %s" msgstr "неприпустима специфікація стискання: %s" -#: pg_dump.c:796 +#: pg_dump.c:959 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "параметр стиснення \"%s\" в даний час не підтримується pg_dump" -#: pg_dump.c:808 +#: pg_dump.c:971 #, c-format msgid "parallel backup only supported by the directory format" msgstr "паралельне резервне копіювання підтримується лише з форматом \"каталог\"" -#: pg_dump.c:854 +#: pg_dump.c:1017 #, c-format msgid "last built-in OID is %u" msgstr "останній вбудований OID %u" -#: pg_dump.c:863 +#: pg_dump.c:1026 #, c-format msgid "no matching schemas were found" msgstr "відповідних схем не знайдено" -#: pg_dump.c:880 +#: pg_dump.c:1043 #, c-format msgid "no matching tables were found" msgstr "відповідних таблиць не знайдено" -#: pg_dump.c:908 +#: pg_dump.c:1071 #, c-format msgid "no matching extensions were found" msgstr "не знайдено відповідних розширень" -#: pg_dump.c:1092 +#: pg_dump.c:1265 #, c-format -msgid "%s dumps a database as a text file or to other formats.\n\n" -msgstr "%s зберігає резервну копію бази даних в текстовому файлі або в інших форматах.\n\n" +msgid "%s exports a PostgreSQL database as an SQL script or to other formats.\n\n" +msgstr "%s експортує базу даних PostgreSQL як SQL-скрипт або в інші формати.\n\n" -#: pg_dump.c:1093 pg_dumpall.c:635 pg_restore.c:452 +#: pg_dump.c:1266 pg_dumpall.c:700 pg_restore.c:536 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_dump.c:1094 +#: pg_dump.c:1267 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPTION]... [DBNAME]\n" -#: pg_dump.c:1096 pg_dumpall.c:638 pg_restore.c:455 +#: pg_dump.c:1269 pg_dumpall.c:703 pg_restore.c:539 #, c-format msgid "\n" "General options:\n" msgstr "\n" "Основні налаштування:\n" -#: pg_dump.c:1097 +#: pg_dump.c:1270 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=FILENAME ім'я файлу виводу або каталогу\n" -#: pg_dump.c:1098 +#: pg_dump.c:1271 #, c-format msgid " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" " plain text (default))\n" msgstr " -F, --format=c|d|t|p формат файлу виводу (спеціальний, каталог, tar,\n" " звичайний текст (за замовчуванням))\n" -#: pg_dump.c:1100 +#: pg_dump.c:1273 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM використовувати ці паралельні завдання для вивантаження\n" -#: pg_dump.c:1101 pg_dumpall.c:640 +#: pg_dump.c:1274 pg_dumpall.c:705 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose детальний режим\n" -#: pg_dump.c:1102 pg_dumpall.c:641 +#: pg_dump.c:1275 pg_dumpall.c:706 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію, потім вийти\n" -#: pg_dump.c:1103 +#: pg_dump.c:1276 #, c-format msgid " -Z, --compress=METHOD[:DETAIL]\n" " compress as specified\n" msgstr " -Z, --compress=METHOD[:DETAIL]\n" " стискати як вказано\n" -#: pg_dump.c:1105 pg_dumpall.c:642 +#: pg_dump.c:1278 pg_dumpall.c:707 #, c-format msgid " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr " --lock-wait-timeout=TIMEOUT помилка після очікування TIMEOUT для блокування таблиці\n" -#: pg_dump.c:1106 pg_dumpall.c:670 +#: pg_dump.c:1279 pg_dumpall.c:739 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync не чекати безпечного збереження змін на диск\n" -#: pg_dump.c:1107 +#: pg_dump.c:1280 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METHOD встановити метод для синхронізації файлів на диск\n" -#: pg_dump.c:1108 pg_dumpall.c:643 +#: pg_dump.c:1281 pg_dumpall.c:708 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: pg_dump.c:1110 pg_dumpall.c:644 +#: pg_dump.c:1283 pg_dumpall.c:709 #, c-format msgid "\n" "Options controlling the output content:\n" msgstr "\n" "Параметри, що керують вихідним вмістом:\n" -#: pg_dump.c:1111 pg_dumpall.c:645 +#: pg_dump.c:1284 pg_dumpall.c:710 #, c-format -msgid " -a, --data-only dump only the data, not the schema\n" -msgstr " -a, --data-only вивантажити лише дані, без схеми\n" +msgid " -a, --data-only dump only the data, not the schema or statistics\n" +msgstr " -a, --data-only вивантажити тільки дані, не схему або статистику\n" -#: pg_dump.c:1112 +#: pg_dump.c:1285 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects включити у вивантаження великі об'єкти\n" -#: pg_dump.c:1113 +#: pg_dump.c:1286 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (те саме, що --large-objects, застарілий)\n" -#: pg_dump.c:1114 +#: pg_dump.c:1287 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -b, --no-large-objects виключити з вивантаження великі об'єкти\n" -#: pg_dump.c:1115 +#: pg_dump.c:1288 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (те саме, що --no-large-objects, застарілий)\n" -#: pg_dump.c:1116 pg_restore.c:466 +#: pg_dump.c:1289 pg_restore.c:550 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean видалити об'єкти бази даних перед перед повторним створенням\n" -#: pg_dump.c:1117 +#: pg_dump.c:1290 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr " -C, --create включити у вивантаження команди для створення бази даних\n" -#: pg_dump.c:1118 +#: pg_dump.c:1291 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=PATTERN вивантажити лише вказане(і) розширення\n" -#: pg_dump.c:1119 pg_dumpall.c:647 +#: pg_dump.c:1292 pg_dumpall.c:712 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=ENCODING вивантажити дані в кодуванні ENCODING\n" -#: pg_dump.c:1120 +#: pg_dump.c:1293 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=PATTERN вивантажити лише вказану схему(и)\n" -#: pg_dump.c:1121 +#: pg_dump.c:1294 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=PATTERN НЕ вивантажувати вказану схему(и)\n" -#: pg_dump.c:1122 +#: pg_dump.c:1295 #, c-format msgid " -O, --no-owner skip restoration of object ownership in\n" " plain-text format\n" msgstr " -O, --no-owner пропускати відновлення володіння об'єктами\n" " при використанні текстового формату\n" -#: pg_dump.c:1124 pg_dumpall.c:651 +#: pg_dump.c:1297 pg_dumpall.c:716 #, c-format -msgid " -s, --schema-only dump only the schema, no data\n" -msgstr " -s, --schema-only вивантажити лише схему, без даних\n" +msgid " -s, --schema-only dump only the schema, no data or statistics\n" +msgstr " -s, --schema-only вивантажити тільки схему, без даних або статистики\n" -#: pg_dump.c:1125 +#: pg_dump.c:1298 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr " -S, --superuser=NAME ім'я користувача, яке буде використовуватись у звичайних текстових форматах\n" -#: pg_dump.c:1126 +#: pg_dump.c:1299 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=PATTERN вивантажити лише вказані таблиці\n" -#: pg_dump.c:1127 +#: pg_dump.c:1300 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=PATTERN НЕ вивантажувати вказані таблиці\n" -#: pg_dump.c:1128 pg_dumpall.c:654 +#: pg_dump.c:1301 pg_dumpall.c:719 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges не вивантажувати права (надання/відкликання)\n" -#: pg_dump.c:1129 pg_dumpall.c:655 +#: pg_dump.c:1302 pg_dumpall.c:720 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade для використання лише утилітами оновлення\n" -#: pg_dump.c:1130 pg_dumpall.c:656 +#: pg_dump.c:1303 pg_dumpall.c:721 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr " --column-inserts вивантажити дані у вигляді команд INSERT з іменами стовпців\n" -#: pg_dump.c:1131 pg_dumpall.c:657 +#: pg_dump.c:1304 pg_dumpall.c:722 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr " --disable-dollar-quoting вимкнути цінову пропозицію $, використовувати SQL стандартну цінову пропозицію\n" -#: pg_dump.c:1132 pg_dumpall.c:658 pg_restore.c:483 +#: pg_dump.c:1305 pg_dumpall.c:723 pg_restore.c:567 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr " --disable-triggers вимкнути тригери лише під час відновлення даних\n" -#: pg_dump.c:1133 +#: pg_dump.c:1306 #, c-format msgid " --enable-row-security enable row security (dump only content user has\n" " access to)\n" msgstr " --enable-row-security активувати захист на рівні рядків (вивантажити лише той вміст, до якого\n" " користувач має доступ)\n" -#: pg_dump.c:1135 +#: pg_dump.c:1308 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=PATTERN НЕ вивантажувати вказане розширення\n" -#: pg_dump.c:1136 +#: pg_dump.c:1309 #, c-format msgid " --exclude-table-and-children=PATTERN\n" " do NOT dump the specified table(s), including\n" @@ -1768,12 +1823,12 @@ msgstr " --exclude-table-and-children=PATTERN\n" " не вивантажувати зазначені таблиці, включно\n" " з дочірніми та секціонованими таблицями\n" -#: pg_dump.c:1139 +#: pg_dump.c:1312 #, c-format msgid " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" msgstr " --exclude-table-data=PATTERN НЕ вивантажувати дані вказаних таблиць\n" -#: pg_dump.c:1140 +#: pg_dump.c:1313 #, c-format msgid " --exclude-table-data-and-children=PATTERN\n" " do NOT dump data for the specified table(s),\n" @@ -1782,24 +1837,24 @@ msgstr " --exclude-table-data-and-children=PATTERN\n" " не вивантажувати дані зазначених таблиць,\n" " включно з дочірніми та секціонованими таблицями\n" -#: pg_dump.c:1143 pg_dumpall.c:660 +#: pg_dump.c:1316 pg_dumpall.c:725 #, c-format msgid " --extra-float-digits=NUM override default setting for extra_float_digits\n" msgstr " --extra-float-digits=NUM змінити параметр за замовчуванням для extra_float_digits\n" -#: pg_dump.c:1144 +#: pg_dump.c:1317 #, c-format msgid " --filter=FILENAME include or exclude objects and data from dump\n" " based on expressions in FILENAME\n" msgstr " --filter=FILENAME включати або виключати об'єкти та дані з дампу\n" " на основі виразів у FILENAME\n" -#: pg_dump.c:1146 pg_dumpall.c:662 pg_restore.c:487 +#: pg_dump.c:1319 pg_dumpall.c:727 pg_restore.c:571 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists використовувати IF EXISTS під час видалення об'єктів\n" -#: pg_dump.c:1147 +#: pg_dump.c:1320 #, c-format msgid " --include-foreign-data=PATTERN\n" " include data of foreign tables on foreign\n" @@ -1808,101 +1863,141 @@ msgstr " --include-foreign-data=ШАБЛОН\n" " включають дані підлеглих таблиць на підлеглих\n" " сервери, що відповідають ШАБЛОНУ\n" -#: pg_dump.c:1150 pg_dumpall.c:663 +#: pg_dump.c:1323 pg_dumpall.c:728 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts вивантажити дані у вигляді команд INSERT, не COPY\n" -#: pg_dump.c:1151 pg_dumpall.c:664 +#: pg_dump.c:1324 pg_dumpall.c:729 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root завантажувати секції через головну таблицю\n" -#: pg_dump.c:1152 pg_dumpall.c:665 +#: pg_dump.c:1325 pg_dumpall.c:730 #, c-format -msgid " --no-comments do not dump comments\n" +msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments не вивантажувати коментарі\n" -#: pg_dump.c:1153 pg_dumpall.c:666 +#: pg_dump.c:1326 pg_dumpall.c:731 +#, c-format +msgid " --no-data do not dump data\n" +msgstr " --no-data не вивантажувати дані\n" + +#: pg_dump.c:1327 pg_dumpall.c:732 +#, c-format +msgid " --no-policies do not dump row security policies\n" +msgstr " --no-policies не вивантажувати політики безпеки рядків\n" + +#: pg_dump.c:1328 pg_dumpall.c:733 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications не вивантажувати публікації\n" -#: pg_dump.c:1154 pg_dumpall.c:668 +#: pg_dump.c:1329 pg_dumpall.c:735 +#, c-format +msgid " --no-schema do not dump schema\n" +msgstr " --no-schema не вивантажувати схему\n" + +#: pg_dump.c:1330 pg_dumpall.c:736 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels не вивантажувати завдання міток безпеки\n" -#: pg_dump.c:1155 pg_dumpall.c:669 +#: pg_dump.c:1331 pg_dumpall.c:737 +#, c-format +msgid " --no-statistics do not dump statistics\n" +msgstr " --no-statistics не вивантажувати статистику\n" + +#: pg_dump.c:1332 pg_dumpall.c:738 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions не вивантажувати підписки\n" -#: pg_dump.c:1156 pg_dumpall.c:671 +#: pg_dump.c:1333 pg_dumpall.c:740 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method не вивантажувати табличні методи доступу\n" -#: pg_dump.c:1157 pg_dumpall.c:672 +#: pg_dump.c:1334 pg_dumpall.c:741 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces не вивантажувати призначення табличних просторів\n" -#: pg_dump.c:1158 pg_dumpall.c:673 +#: pg_dump.c:1335 pg_dumpall.c:742 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression не вивантажувати методи стиснення TOAST\n" -#: pg_dump.c:1159 pg_dumpall.c:674 +#: pg_dump.c:1336 pg_dumpall.c:743 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data не вивантажувати дані таблиць, які не журналюються\n" -#: pg_dump.c:1160 pg_dumpall.c:675 +#: pg_dump.c:1337 pg_dumpall.c:744 #, c-format msgid " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n" msgstr " --on-conflict-do-nothing додавати ON CONFLICT DO NOTHING до команди INSERT\n" -#: pg_dump.c:1161 pg_dumpall.c:676 +#: pg_dump.c:1338 pg_dumpall.c:745 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr " --quote-all-identifiers укладати в лапки всі ідентифікатори, а не тільки ключові слова\n" -#: pg_dump.c:1162 pg_dumpall.c:677 +#: pg_dump.c:1339 pg_dumpall.c:746 pg_restore.c:584 +#, c-format +msgid " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" +msgstr " --restrict-key=RESTRICT_KEY використовувати наданий рядок як ключ \\restrict для psql\n" + +#: pg_dump.c:1340 pg_dumpall.c:747 #, c-format msgid " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" msgstr " --rows-per-insert=NROWS кількість рядків для INSERT; вимагає параметру --inserts\n" -#: pg_dump.c:1163 +#: pg_dump.c:1341 #, c-format msgid " --section=SECTION dump named section (pre-data, data, or post-data)\n" msgstr " --section=SECTION вивантажити вказану секцію (pre-data, data або post-data)\n" -#: pg_dump.c:1164 +#: pg_dump.c:1342 pg_dumpall.c:748 +#, c-format +msgid " --sequence-data include sequence data in dump\n" +msgstr " --sequence-data включити дані послідовностей у вивантаження\n" + +#: pg_dump.c:1343 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr " --serializable-deferrable чекати коли вивантаження можна буде виконати без аномалій\n" -#: pg_dump.c:1165 +#: pg_dump.c:1344 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT використовувати під час вивантаження вказаний знімок\n" -#: pg_dump.c:1166 pg_restore.c:497 +#: pg_dump.c:1345 pg_dumpall.c:749 +#, c-format +msgid " --statistics dump the statistics\n" +msgstr " --statistics вивантажити статистику\n" + +#: pg_dump.c:1346 pg_dumpall.c:750 +#, c-format +msgid " --statistics-only dump only the statistics, not schema or data\n" +msgstr " --statistics-only вивантажити тільки статистику, без схеми або даних\n" + +#: pg_dump.c:1347 pg_restore.c:588 #, c-format msgid " --strict-names require table and/or schema include patterns to\n" " match at least one entity each\n" msgstr " --strict-names потребувати, щоб при вказівці шаблону включення\n" " таблиці і/або схеми йому відповідав мінімум один об'єкт\n" -#: pg_dump.c:1168 +#: pg_dump.c:1349 #, c-format msgid " --table-and-children=PATTERN dump only the specified table(s), including\n" " child and partition tables\n" msgstr " --table-and-children=PATTERN вивантажувати лише зазначені таблиці,\n" " включно з дочірніми та секціонованими таблицями\n" -#: pg_dump.c:1170 pg_dumpall.c:678 pg_restore.c:500 +#: pg_dump.c:1351 pg_dumpall.c:751 pg_restore.c:591 #, c-format msgid " --use-set-session-authorization\n" " use SET SESSION AUTHORIZATION commands instead of\n" @@ -1911,49 +2006,49 @@ msgstr " --use-set-session-authorization\n" " щоб встановити власника, використати команди SET SESSION AUTHORIZATION,\n" " замість команд ALTER OWNER\n" -#: pg_dump.c:1174 pg_dumpall.c:682 pg_restore.c:504 +#: pg_dump.c:1355 pg_dumpall.c:755 pg_restore.c:595 #, c-format msgid "\n" "Connection options:\n" msgstr "\n" "Налаштування з'єднання:\n" -#: pg_dump.c:1175 +#: pg_dump.c:1356 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=DBNAME ім'я бази даних для вивантаження\n" -#: pg_dump.c:1176 pg_dumpall.c:684 pg_restore.c:505 +#: pg_dump.c:1357 pg_dumpall.c:757 pg_restore.c:596 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=HOSTNAME хост серверу баз даних або каталог сокетів\n" -#: pg_dump.c:1177 pg_dumpall.c:686 pg_restore.c:506 +#: pg_dump.c:1358 pg_dumpall.c:759 pg_restore.c:597 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT номер порту сервера бази даних\n" -#: pg_dump.c:1178 pg_dumpall.c:687 pg_restore.c:507 +#: pg_dump.c:1359 pg_dumpall.c:760 pg_restore.c:598 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NAME підключатись як вказаний користувач бази даних\n" -#: pg_dump.c:1179 pg_dumpall.c:688 pg_restore.c:508 +#: pg_dump.c:1360 pg_dumpall.c:761 pg_restore.c:599 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password ніколи не запитувати пароль\n" -#: pg_dump.c:1180 pg_dumpall.c:689 pg_restore.c:509 +#: pg_dump.c:1361 pg_dumpall.c:762 pg_restore.c:600 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr " -W, --password запитувати пароль завжди (повинно траплятись автоматично)\n" -#: pg_dump.c:1181 pg_dumpall.c:690 +#: pg_dump.c:1362 pg_dumpall.c:763 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLENAME виконати SET ROLE до вивантаження\n" -#: pg_dump.c:1183 +#: pg_dump.c:1364 #, c-format msgid "\n" "If no database name is supplied, then the PGDATABASE environment\n" @@ -1961,239 +2056,249 @@ msgid "\n" msgstr "\n" "Якщо ім'я бази даних не вказано, тоді використовується значення змінної середовища PGDATABASE.\n\n" -#: pg_dump.c:1185 pg_dumpall.c:694 pg_restore.c:516 +#: pg_dump.c:1366 pg_dumpall.c:767 pg_restore.c:607 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Повідомляти про помилки на <%s>.\n" -#: pg_dump.c:1186 pg_dumpall.c:695 pg_restore.c:517 +#: pg_dump.c:1367 pg_dumpall.c:768 pg_restore.c:608 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: pg_dump.c:1205 pg_dumpall.c:518 +#: pg_dump.c:1386 pg_dumpall.c:566 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "вказано неприпустиме клієнтське кодування \"%s\"" -#: pg_dump.c:1352 +#: pg_dump.c:1534 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "паралельні вивантаження для резервних серверів не підтримуються цією версію сервера" -#: pg_dump.c:1417 +#: pg_dump.c:1599 #, c-format msgid "invalid output format \"%s\" specified" msgstr "вказано неприпустимий формат виводу \"%s\"" -#: pg_dump.c:1458 pg_dump.c:1514 pg_dump.c:1567 pg_dumpall.c:1467 +#: pg_dump.c:1640 pg_dump.c:1696 pg_dump.c:1749 pg_dumpall.c:1594 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "неправильне повне ім'я (забагато компонентів): %s" -#: pg_dump.c:1466 +#: pg_dump.c:1648 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "не знайдено відповідних схем для візерунку \"%s\"" -#: pg_dump.c:1519 +#: pg_dump.c:1701 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "не знайдено відповідних розширень для шаблону \"%s\"" -#: pg_dump.c:1572 +#: pg_dump.c:1754 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "не знайдено відповідних підлеглих серверів для шаблону \"%s\"" -#: pg_dump.c:1643 +#: pg_dump.c:1825 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "неправильне ім'я зв'язку (забагато компонентів): %s" -#: pg_dump.c:1665 +#: pg_dump.c:1847 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "не знайдено відповідних таблиць для візерунку\"%s\"" -#: pg_dump.c:1692 +#: pg_dump.c:1874 #, c-format msgid "You are currently not connected to a database." msgstr "На даний момент ви від'єднанні від бази даних." -#: pg_dump.c:1695 +#: pg_dump.c:1877 #, c-format msgid "cross-database references are not implemented: %s" msgstr "міжбазові посилання не реалізовані: %s" -#: pg_dump.c:2154 +#: pg_dump.c:2343 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "вивантажування змісту таблиці \"%s.%s\"" -#: pg_dump.c:2264 +#: pg_dump.c:2453 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "Помилка вивантажування змісту таблиці \"%s\": помилка в PQgetCopyData()." -#: pg_dump.c:2265 pg_dump.c:2275 +#: pg_dump.c:2454 pg_dump.c:2464 #, c-format msgid "Error message from server: %s" msgstr "Повідомлення про помилку від сервера: %s" -#: pg_dump.c:2266 pg_dump.c:2276 +#: pg_dump.c:2455 pg_dump.c:2465 #, c-format msgid "Command was: %s" msgstr "Команда була: %s" -#: pg_dump.c:2274 +#: pg_dump.c:2463 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "Помилка вивантажування змісту таблиці \"%s\": помилка в PQgetResult(). " -#: pg_dump.c:2365 +#: pg_dump.c:2554 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "неправильна кількість полів отриманих з таблиці \"%s\"" -#: pg_dump.c:3067 +#: pg_dump.c:3272 #, c-format msgid "saving database definition" msgstr "збереження визначення бази даних" -#: pg_dump.c:3176 +#: pg_dump.c:3387 #, c-format msgid "unrecognized locale provider: %s" msgstr "нерозпізнаний постачальник локалів: %s" -#: pg_dump.c:3537 +#: pg_dump.c:3748 #, c-format msgid "saving encoding = %s" msgstr "збереження кодування = %s" -#: pg_dump.c:3562 +#: pg_dump.c:3773 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "збереження \"standard_conforming_strings = %s\"" -#: pg_dump.c:3601 +#: pg_dump.c:3812 #, c-format msgid "could not parse result of current_schemas()" msgstr "не вдалося проаналізувати результат current_schemas()" -#: pg_dump.c:3620 +#: pg_dump.c:3831 #, c-format msgid "saving \"search_path = %s\"" msgstr "збереження \"search_path = %s\"" -#: pg_dump.c:3656 +#: pg_dump.c:3867 #, c-format msgid "reading large objects" msgstr "читання великих об’єктів" -#: pg_dump.c:3877 +#: pg_dump.c:4088 #, c-format msgid "saving large objects \"%s\"" msgstr "збереження великих об’єктів \"%s\"" -#: pg_dump.c:3898 +#: pg_dump.c:4109 #, c-format msgid "error reading large object %u: %s" msgstr "помилка читання великих об’єктів %u: %s" -#: pg_dump.c:4001 +#: pg_dump.c:4217 #, c-format msgid "reading row-level security policies" msgstr "читання політик безпеки на рівні рядків" -#: pg_dump.c:4142 +#: pg_dump.c:4358 #, c-format msgid "unexpected policy command type: %c" msgstr "неочікуваний тип команди в політиці: %c" -#: pg_dump.c:4592 pg_dump.c:5150 pg_dump.c:12362 pg_dump.c:18247 -#: pg_dump.c:18249 pg_dump.c:18871 +#: pg_dump.c:4800 pg_dump.c:5357 pg_dump.c:7986 pg_dump.c:13466 pg_dump.c:19664 +#: pg_dump.c:19666 pg_dump.c:20298 #, c-format msgid "could not parse %s array" msgstr "не вдалося аналізувати масив %s" -#: pg_dump.c:4806 +#: pg_dump.c:5016 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "підписки не вивантажені через те, що чинний користувач не є суперкористувачем" -#: pg_dump.c:5012 +#: pg_dump.c:5220 #, c-format msgid "subscription with OID %u does not exist" msgstr "підписки %u з OID не існує" -#: pg_dump.c:5019 +#: pg_dump.c:5227 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "помилка цілісності, таблиця з OID %u не знайдена" -#: pg_dump.c:5582 +#: pg_dump.c:5813 #, c-format msgid "could not find parent extension for %s %s" msgstr "не вдалося знайти батьківський елемент для %s %s" -#: pg_dump.c:5727 +#: pg_dump.c:5951 #, c-format msgid "schema with OID %u does not exist" msgstr "схема з OID %u не існує" -#: pg_dump.c:7209 pg_dump.c:17618 +#: pg_dump.c:7008 +#, c-format +msgid "cannot dump statistics for relation kind \"%c\"" +msgstr "не можна вивантажити статистику для відношення типу \"%c\"" + +#: pg_dump.c:7520 pg_dump.c:19003 #, c-format msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found" msgstr "помилка цілісності, за OID %u не вдалося знайти батьківську таблицю послідовності з OID %u" -#: pg_dump.c:7352 +#: pg_dump.c:7665 #, c-format msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found" msgstr "помилка цілісності, OID %u не знайдено в таблиці pg_partitioned_table" -#: pg_dump.c:7583 pg_dump.c:7857 pg_dump.c:8304 pg_dump.c:8918 pg_dump.c:9040 -#: pg_dump.c:9188 +#: pg_dump.c:7930 pg_dump.c:8223 pg_dump.c:8686 pg_dump.c:9333 pg_dump.c:9472 +#: pg_dump.c:9617 pg_dump.c:9717 #, c-format msgid "unrecognized table OID %u" msgstr "нерозпізнаний OID таблиці %u" -#: pg_dump.c:7587 +#: pg_dump.c:7934 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "неочікувані дані індексу для таблиці \"%s\"" -#: pg_dump.c:8089 +#: pg_dump.c:8473 #, c-format msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found" msgstr "помилка цілісності, за OID %u не вдалося знайти батьківську таблицю для запису pg_rewrite з OID %u" -#: pg_dump.c:8922 +#: pg_dump.c:9337 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "неочікувані дані стовпця для таблиці \"%s\"" -#: pg_dump.c:8951 +#: pg_dump.c:9369 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "неприпустима нумерація стовпців у таблиці \"%s\"" -#: pg_dump.c:9002 +#: pg_dump.c:9434 #, c-format msgid "finding table default expressions" msgstr "пошук виразів за замовчуванням для таблиці" -#: pg_dump.c:9044 +#: pg_dump.c:9476 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "неприпустиме значення adnum %d для таблиці \"%s\"" -#: pg_dump.c:9138 +#: pg_dump.c:9569 +#, c-format +msgid "finding invalid not-null constraints" +msgstr "пошук недійсних обмежень NOT NULL" + +#: pg_dump.c:9667 #, c-format msgid "finding table check constraints" msgstr "пошук перевірочних обмежень таблиці" -#: pg_dump.c:9192 +#: pg_dump.c:9721 #, c-format msgid "expected %d check constraint on table \"%s\" but found %d" msgid_plural "expected %d check constraints on table \"%s\" but found %d" @@ -2202,178 +2307,198 @@ msgstr[1] "очікувалось %d обмеження-перевірки дл msgstr[2] "очікувалось %d обмежень-перевірок для таблиці \"%s\", але знайдено %d" msgstr[3] "очікувалось %d обмежень-перевірок для таблиці \"%s\", але знайдено %d" -#: pg_dump.c:9196 +#: pg_dump.c:9725 #, c-format msgid "The system catalogs might be corrupted." msgstr "Системні каталоги можуть бути пошкоджені." -#: pg_dump.c:9886 +#: pg_dump.c:10530 #, c-format msgid "role with OID %u does not exist" msgstr "роль з OID %u не існує" -#: pg_dump.c:9998 pg_dump.c:10027 +#: pg_dump.c:10642 pg_dump.c:10671 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "непідтримуваний запис в pg_init_privs: %u %u %d" -#: pg_dump.c:10574 +#: pg_dump.c:10967 +#, c-format +msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" +msgstr "статистика вивантажена не в порядку (поточно: %d %s %s, очікувалось: %d %s %s)" + +#: pg_dump.c:11108 +#, c-format +msgid "unexpected null attname" +msgstr "неочікуваний NULL attname" + +#: pg_dump.c:11137 +#, c-format +msgid "could not find index attname \"%s\"" +msgstr "не вдалося знайти attname індексу \"%s\"" + +#: pg_dump.c:11623 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "відсутні метадані для великих об'єктів \"%s\"" -#: pg_dump.c:10857 +#: pg_dump.c:11909 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "typtype типу даних \"%s\" має неприпустимий вигляд" -#: pg_dump.c:12431 +#: pg_dump.c:13537 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "нерозпізнане значення provolatile для функції \"%s\"" -#: pg_dump.c:12481 pg_dump.c:14377 +#: pg_dump.c:13587 pg_dump.c:15483 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "нерозпізнане значення proparallel для функції \"%s\"" -#: pg_dump.c:12611 pg_dump.c:12717 pg_dump.c:12724 +#: pg_dump.c:13717 pg_dump.c:13823 pg_dump.c:13830 #, c-format msgid "could not find function definition for function with OID %u" msgstr "не вдалося знайти визначення функції для функції з OID %u" -#: pg_dump.c:12650 +#: pg_dump.c:13756 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "неприпустиме значення в полі pg_cast.castfunc або pg_cast.castmethod" -#: pg_dump.c:12653 +#: pg_dump.c:13759 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "неприпустиме значення в полі pg_cast.castmethod" -#: pg_dump.c:12743 +#: pg_dump.c:13849 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "неприпустиме визначення перетворення, як мінімум одне з trffromsql і trftosql повинно бути ненульовим" -#: pg_dump.c:12760 +#: pg_dump.c:13866 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "неприпустиме значення в полі pg_transform.trffromsql" -#: pg_dump.c:12781 +#: pg_dump.c:13887 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "неприпустиме значення в полі pg_transform.trftosql" -#: pg_dump.c:12926 +#: pg_dump.c:14032 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "постфіксні оператори більше не підтримуються (оператор \"%s\")" -#: pg_dump.c:13096 +#: pg_dump.c:14202 #, c-format msgid "could not find operator with OID %s" msgstr "не вдалося знайти оператора з OID %s" -#: pg_dump.c:13164 +#: pg_dump.c:14270 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "неприпустимий тип \"%c\" методу доступу \"%s\"" -#: pg_dump.c:13838 pg_dump.c:13906 +#: pg_dump.c:14944 pg_dump.c:15012 #, c-format msgid "unrecognized collation provider: %s" msgstr "нерозпізнаний постачальник правил сортування: %s" -#: pg_dump.c:13847 pg_dump.c:13854 pg_dump.c:13865 pg_dump.c:13875 -#: pg_dump.c:13890 +#: pg_dump.c:14953 pg_dump.c:14960 pg_dump.c:14971 pg_dump.c:14981 +#: pg_dump.c:14996 #, c-format msgid "invalid collation \"%s\"" msgstr "неприпустиме правило сортування \"%s\"" -#: pg_dump.c:14296 +#: pg_dump.c:15402 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "нерозпізнане значення aggfinalmodify для агрегату \"%s\"" -#: pg_dump.c:14352 +#: pg_dump.c:15458 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "нерозпізнане значення aggmfinalmodify для агрегату \"%s\"" -#: pg_dump.c:15069 +#: pg_dump.c:16178 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "нерозпізнаний тип об’єкта у стандартному праві: %d" -#: pg_dump.c:15085 +#: pg_dump.c:16194 #, c-format msgid "could not parse default ACL list (%s)" msgstr "не вдалося проаналізувати стандартний ACL список (%s)" -#: pg_dump.c:15169 +#: pg_dump.c:16278 #, c-format msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "не вдалося аналізувати початковий список ACL (%s) або за замовченням (%s) для об'єкта \"%s\" (%s)" -#: pg_dump.c:15194 +#: pg_dump.c:16303 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "не вдалося аналізувати список ACL (%s) або за замовчуванням (%s) для об'єкту \"%s\" (%s)" -#: pg_dump.c:15737 +#: pg_dump.c:16846 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "запит на отримання визначення перегляду \"%s\" не повернув дані" -#: pg_dump.c:15740 +#: pg_dump.c:16849 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "запит на отримання визначення перегляду \"%s\" повернув більше, ніж одне визначення" -#: pg_dump.c:15747 +#: pg_dump.c:16856 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "визначення перегляду \"%s\" пусте (довжина нуль)" -#: pg_dump.c:15832 +#: pg_dump.c:16941 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS більше не підтримується (таблиця\"%s\")" -#: pg_dump.c:16819 +#: pg_dump.c:18081 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "неприпустиме число стовпців %d для таблиці \"%s\"" -#: pg_dump.c:16897 +#: pg_dump.c:18159 #, c-format msgid "could not parse index statistic columns" msgstr "не вдалося проаналізувати стовпці статистики індексів" -#: pg_dump.c:16899 +#: pg_dump.c:18161 #, c-format msgid "could not parse index statistic values" msgstr "не вдалося проаналізувати значення статистики індексів" -#: pg_dump.c:16901 +#: pg_dump.c:18163 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "невідповідна кількість стовпців і значень для статистики індексів" -#: pg_dump.c:17116 +#: pg_dump.c:18392 #, c-format msgid "missing index for constraint \"%s\"" msgstr "пропущено індекс для обмеження \"%s\"" -#: pg_dump.c:17351 +#: pg_dump.c:18661 #, c-format msgid "unrecognized constraint type: %c" msgstr "нерозпізнаний тип обмеження: %c" -#: pg_dump.c:17452 pg_dump.c:17682 +#: pg_dump.c:18714 +#, c-format +msgid "unrecognized sequence type: %s" +msgstr "нерозпізнаний тип послідовності: %s" + +#: pg_dump.c:18846 pg_dump.c:19078 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)" @@ -2382,63 +2507,63 @@ msgstr[1] "запит на отримання даних послідовнос msgstr[2] "запит на отримання даних послідовності \"%s\" повернув %d рядків (очікувалося 1)" msgstr[3] "запит на отримання даних послідовності \"%s\" повернув %d рядків (очікувалося 1)" -#: pg_dump.c:17484 +#: pg_dump.c:18882 #, c-format -msgid "unrecognized sequence type: %s" -msgstr "нерозпізнаний тип послідовності: %s" +msgid "unrecognized sequence type: %d" +msgstr "нерозпізнаний тип послідовності: %d" -#: pg_dump.c:17999 +#: pg_dump.c:19416 #, c-format msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned" msgstr "помилка запиту на отримання правила \"%s\" для таблиці \"%s\": повернено неправильне число рядків " -#: pg_dump.c:18152 +#: pg_dump.c:19569 #, c-format msgid "could not find referenced extension %u" msgstr "не вдалося знайти згадане розширення %u" -#: pg_dump.c:18251 +#: pg_dump.c:19668 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "невідповідна кількість конфігурацій і умов для розширення" -#: pg_dump.c:18383 +#: pg_dump.c:19800 #, c-format msgid "reading dependency data" msgstr "читання даних залежності" -#: pg_dump.c:18469 +#: pg_dump.c:19886 #, c-format msgid "no referencing object %u %u" msgstr "немає об’єкту посилання %u %u" -#: pg_dump.c:18480 +#: pg_dump.c:19897 #, c-format msgid "no referenced object %u %u" msgstr "немає посилання на об'єкт %u %u" -#: pg_dump.c:18905 pg_dump.c:18943 pg_dumpall.c:1962 pg_restore.c:551 -#: pg_restore.c:597 +#: pg_dump.c:20332 pg_dump.c:20370 pg_dumpall.c:1842 pg_restore.c:642 +#: pg_restore.c:688 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "фільтр %s для \"%s\" не дозволений" -#: pg_dump_sort.c:424 +#: pg_dump_sort.c:660 #, c-format msgid "invalid dumpId %d" msgstr "неприпустимий dumpId %d" -#: pg_dump_sort.c:430 +#: pg_dump_sort.c:666 #, c-format msgid "invalid dependency %d" msgstr "неприпустима залежність %d" -#: pg_dump_sort.c:594 +#: pg_dump_sort.c:830 #, c-format msgid "could not identify dependency loop" msgstr "не вдалося ідентифікувати цикл залежності" -#: pg_dump_sort.c:1209 +#: pg_dump_sort.c:1474 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" @@ -2447,134 +2572,114 @@ msgstr[1] "у наступних таблицях зациклені зовні msgstr[2] "у наступних таблицях зациклені зовнішні ключі:" msgstr[3] "у наступних таблицях зациклені зовнішні ключі:" -#: pg_dump_sort.c:1214 +#: pg_dump_sort.c:1479 #, c-format msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints." msgstr "Ви не зможете відновити дамп без використання --disable-triggers або тимчасово розірвати обмеження." -#: pg_dump_sort.c:1215 +#: pg_dump_sort.c:1480 #, c-format msgid "Consider using a full dump instead of a --data-only dump to avoid this problem." msgstr "Можливо, використання повного вивантажування замість --data-only вивантажування допоможе уникнути цієї проблеми." -#: pg_dump_sort.c:1227 +#: pg_dump_sort.c:1492 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "не вдалося вирішити цикл залежності серед цих елементів:" -#: pg_dumpall.c:231 +#: pg_dumpall.c:240 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "програма \"%s\" потрібна для %s, але не знайдена в тому ж каталозі, що й \"%s\"" -#: pg_dumpall.c:234 +#: pg_dumpall.c:243 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "програма \"%s\" знайдена для \"%s\", але має відмінну версію від %s" -#: pg_dumpall.c:387 -#, c-format -msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" -msgstr "параметр --exclude-database не можна використовувати разом з -g/--globals-only, -r/--roles-only або -t/--tablespaces-only" - -#: pg_dumpall.c:395 -#, c-format -msgid "options -g/--globals-only and -r/--roles-only cannot be used together" -msgstr "параметри -g/--globals-only і -r/--roles-only не можна використовувати разом" - #: pg_dumpall.c:402 #, c-format -msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" -msgstr "параметри -g/--globals-only і -t/--tablespaces-only не можна використовувати разом" - -#: pg_dumpall.c:412 -#, c-format -msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" -msgstr "параметри -r/--roles-only і -t/--tablespaces-only не можна використовувати разом" - -#: pg_dumpall.c:474 pg_dumpall.c:1771 -#, c-format -msgid "could not connect to database \"%s\"" -msgstr "не вдалося зв'язатися з базою даних \"%s\"" +msgid "option %s cannot be used together with %s, %s, or %s" +msgstr "параметр %s не можна використовувати разом з %s, %s або %s" -#: pg_dumpall.c:486 +#: pg_dumpall.c:534 #, c-format msgid "could not connect to databases \"postgres\" or \"template1\"\n" "Please specify an alternative database." msgstr "не вдалося зв'язатися з базами даних \"postgres\" або \"template1\"\n" "Будь ласка, вкажіть альтернативну базу даних." -#: pg_dumpall.c:634 +#: pg_dumpall.c:699 #, c-format -msgid "%s extracts a PostgreSQL database cluster into an SQL script file.\n\n" -msgstr "%s експортує кластер баз даних PostgreSQL до SQL-скрипту.\n\n" +msgid "%s exports a PostgreSQL database cluster as an SQL script.\n\n" +msgstr "%s експортує кластер баз даних PostgreSQL як SQL скрипт.\n\n" -#: pg_dumpall.c:636 +#: pg_dumpall.c:701 #, c-format msgid " %s [OPTION]...\n" msgstr " %s: [OPTION]...\n" -#: pg_dumpall.c:639 +#: pg_dumpall.c:704 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=FILENAME ім'я вихідного файлу\n" -#: pg_dumpall.c:646 +#: pg_dumpall.c:711 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean очистити (видалити) бази даних перед відтворенням\n" -#: pg_dumpall.c:648 +#: pg_dumpall.c:713 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr " -g, --globals-only вивантажувати лише глобальні об’єкти, не бази даних\n" -#: pg_dumpall.c:649 pg_restore.c:475 +#: pg_dumpall.c:714 pg_restore.c:559 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner пропускається відновлення форми власності об’єктом\n" -#: pg_dumpall.c:650 +#: pg_dumpall.c:715 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr " -r, --roles-only вивантажувати лише ролі, не бази даних або табличні простори\n" -#: pg_dumpall.c:652 +#: pg_dumpall.c:717 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr " -S, --superuser=NAME ім'я суперкористувача для використання при вивантажуванні\n" -#: pg_dumpall.c:653 +#: pg_dumpall.c:718 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr " -t, --tablespaces-only вивантажувати лише табличні простори, не бази даних або ролі\n" -#: pg_dumpall.c:659 +#: pg_dumpall.c:724 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr " --exclude-database=PATTERN виключити бази даних, ім'я яких відповідає PATTERN\n" -#: pg_dumpall.c:661 +#: pg_dumpall.c:726 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " --filter=FILENAME виключити бази даних, на основі виразів у FILENAME\n" -#: pg_dumpall.c:667 +#: pg_dumpall.c:734 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords не вивантажувати паролі для ролей\n" -#: pg_dumpall.c:683 +#: pg_dumpall.c:756 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=CONNSTR підключення з використанням рядку підключення \n" -#: pg_dumpall.c:685 +#: pg_dumpall.c:758 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAME альтернативна база даних за замовчуванням\n" -#: pg_dumpall.c:692 +#: pg_dumpall.c:765 #, c-format msgid "\n" "If -f/--file is not used, then the SQL script will be written to the standard\n" @@ -2582,298 +2687,309 @@ msgid "\n" msgstr "\n" "Якщо -f/--file не використовується, тоді SQL- сценарій буде записаний до стандартного виводу.\n\n" -#: pg_dumpall.c:837 +#: pg_dumpall.c:910 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "пропущено ім’я ролі, що починається з \"pg_\" (%s)" -#: pg_dumpall.c:1059 +#. translator: %s represents a numeric role OID +#: pg_dumpall.c:1127 pg_dumpall.c:1185 pg_dumpall.c:1194 +#, c-format +msgid "found orphaned pg_auth_members entry for role %s" +msgstr "знайдено забутий запис в pg_auth_members для ролі %s" + +#: pg_dumpall.c:1160 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "не вдалося знайти правильний порядок вивантаження членства в ролі \"%s\"" -#: pg_dumpall.c:1194 +#: pg_dumpall.c:1315 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "не вдалося аналізувати список ACL (%s) для параметра \"%s\"" -#: pg_dumpall.c:1321 +#: pg_dumpall.c:1442 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "не вдалося аналізувати список ACL (%s) для табличного простору \"%s\"" -#: pg_dumpall.c:1528 +#: pg_dumpall.c:1656 #, c-format msgid "excluding database \"%s\"" msgstr "виключаємо базу даних \"%s\"" -#: pg_dumpall.c:1532 +#: pg_dumpall.c:1660 #, c-format msgid "dumping database \"%s\"" msgstr "вивантажуємо базу даних \"%s\"" -#: pg_dumpall.c:1563 +#: pg_dumpall.c:1693 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "помилка pg_dump для бази даних \"%s\", завершення роботи" -#: pg_dumpall.c:1569 +#: pg_dumpall.c:1699 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "не вдалося повторно відкрити файл виводу \"%s\": %m" -#: pg_dumpall.c:1613 +#: pg_dumpall.c:1743 #, c-format msgid "running \"%s\"" msgstr "виконується \"%s\"" -#: pg_dumpall.c:1814 -#, c-format -msgid "could not get server version" -msgstr "не вдалося отримати версію серверу" - -#: pg_dumpall.c:1817 -#, c-format -msgid "could not parse server version \"%s\"" -msgstr "не вдалося аналізувати версію серверу \"%s\"" - -#: pg_dumpall.c:1887 pg_dumpall.c:1910 -#, c-format -msgid "executing %s" -msgstr "виконується %s" - -#: pg_dumpall.c:1982 +#: pg_dumpall.c:1862 msgid "unsupported filter object" msgstr "непідтримуваний об'єкт фільтру" -#: pg_restore.c:329 +#: pg_restore.c:348 #, c-format msgid "one of -d/--dbname and -f/--file must be specified" msgstr "необхідно вказати один з -d/--dbname або -f/--file" -#: pg_restore.c:336 -#, c-format -msgid "options -d/--dbname and -f/--file cannot be used together" -msgstr "параметри -d/--dbname і -f/--file не можуть використовуватись разом" - -#: pg_restore.c:350 -#, c-format -msgid "options -1/--single-transaction and --transaction-size cannot be used together" -msgstr "параметри -1/--single-transaction і --transaction-size не можуть використовуватись разом" - -#: pg_restore.c:357 -#, c-format -msgid "options -C/--create and -1/--single-transaction cannot be used together" -msgstr "параметри -C/--create і -1/--single-transaction не можуть використовуватись разом" - -#: pg_restore.c:361 +#: pg_restore.c:433 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "параметр --single-transaction допускається лише з одним завданням" -#: pg_restore.c:399 +#: pg_restore.c:480 +#, c-format +msgid "archive format \"%s\" is not supported; please use psql" +msgstr "формат архіву \"%s\" не підтримується; будь ласка, використовуйте psql" + +#: pg_restore.c:484 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "нерозпізнаний формат архіву \"%s\"; будь ласка, вкажіть \"c\", \"d\" або \"t\"" -#: pg_restore.c:438 +#: pg_restore.c:522 #, c-format msgid "errors ignored on restore: %d" msgstr "при відновленні проігноровано помилок: %d" -#: pg_restore.c:451 +#: pg_restore.c:535 #, c-format msgid "%s restores a PostgreSQL database from an archive created by pg_dump.\n\n" msgstr "%s відновлює базу даних PostgreSQL з архіву, створеного командою pg_dump.\n\n" -#: pg_restore.c:453 +#: pg_restore.c:537 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPTION]... [FILE]\n" -#: pg_restore.c:456 +#: pg_restore.c:540 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAME підключитись до вказаної бази даних\n" -#: pg_restore.c:457 +#: pg_restore.c:541 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILENAME ім'я файлу виводу (- для stdout)\n" -#: pg_restore.c:458 +#: pg_restore.c:542 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr " -F, --format=c|d|t формат файлу резервної копії (розпізнається автоматично)\n" -#: pg_restore.c:459 +#: pg_restore.c:543 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list вивести короткий зміст архіву\n" -#: pg_restore.c:460 +#: pg_restore.c:544 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose детальний режим\n" -#: pg_restore.c:461 +#: pg_restore.c:545 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію, потім вийти\n" -#: pg_restore.c:462 +#: pg_restore.c:546 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: pg_restore.c:464 +#: pg_restore.c:548 #, c-format msgid "\n" "Options controlling the restore:\n" msgstr "\n" "Параметри, що керують відновленням:\n" -#: pg_restore.c:465 +#: pg_restore.c:549 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only відновити лише дані, без схеми\n" -#: pg_restore.c:467 +#: pg_restore.c:551 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create створити цільову базу даних\n" -#: pg_restore.c:468 +#: pg_restore.c:552 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error вийти при помилці, продовжувати за замовчуванням\n" -#: pg_restore.c:469 +#: pg_restore.c:553 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME відновити вказаний індекс\n" -#: pg_restore.c:470 +#: pg_restore.c:554 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr " -j, --jobs=NUM щоб виконати відновлення, використайте ці паралельні завдання\n" -#: pg_restore.c:471 +#: pg_restore.c:555 #, c-format msgid " -L, --use-list=FILENAME use table of contents from this file for\n" " selecting/ordering output\n" msgstr " -L, --use-list=FILENAME використовувати зміст з цього файлу для \n" " вибору/упорядкування даних\n" -#: pg_restore.c:473 +#: pg_restore.c:557 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAME відновити об'єкти лише в цій схемі\n" -#: pg_restore.c:474 +#: pg_restore.c:558 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=NAME не відновлювати об'єкти в цій схемі\n" -#: pg_restore.c:476 +#: pg_restore.c:560 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAME(args) відновити вказану функцію\n" -#: pg_restore.c:477 +#: pg_restore.c:561 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only відновити лише схему, без даних\n" -#: pg_restore.c:478 +#: pg_restore.c:562 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr " -S, --superuser=NAME ім'я суперкористувача для вимкнення тригерів\n" -#: pg_restore.c:479 +#: pg_restore.c:563 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NAME відновити вказане відношення (таблицю, подання і т. д.)\n" -#: pg_restore.c:480 +#: pg_restore.c:564 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME відновити вказаний тригер\n" -#: pg_restore.c:481 +#: pg_restore.c:565 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges пропустити відновлення прав доступу (grant/revoke)\n" -#: pg_restore.c:482 +#: pg_restore.c:566 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction відновити в одній транзакції\n" -#: pg_restore.c:484 +#: pg_restore.c:568 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security активувати захист на рівні рядків\n" -#: pg_restore.c:485 +#: pg_restore.c:569 #, c-format msgid " --filter=FILENAME restore or skip objects based on expressions\n" " in FILENAME\n" msgstr " --filter=FILENAME відновлювати або пропускати об'єкти на основі виразів\n" " у FILENAME\n" -#: pg_restore.c:488 +#: pg_restore.c:572 #, c-format -msgid " --no-comments do not restore comments\n" +msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments не відновлювати коментарі\n" -#: pg_restore.c:489 +#: pg_restore.c:573 +#, c-format +msgid " --no-data do not restore data\n" +msgstr " --no-data не відновлювати дані\n" + +#: pg_restore.c:574 #, c-format msgid " --no-data-for-failed-tables do not restore data of tables that could not be\n" " created\n" msgstr " --no-data-for-failed-tables не відновлювати дані таблиць, які не вдалося створити\n" -#: pg_restore.c:491 +#: pg_restore.c:576 +#, c-format +msgid " --no-policies do not restore row security policies\n" +msgstr " --no-policies не відновлювати політики безпеки рядків\n" + +#: pg_restore.c:577 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications не відновлювати публікації \n" -#: pg_restore.c:492 +#: pg_restore.c:578 +#, c-format +msgid " --no-schema do not restore schema\n" +msgstr " --no-schema не відновлювати схему\n" + +#: pg_restore.c:579 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels не відновлювати мітки безпеки \n" -#: pg_restore.c:493 +#: pg_restore.c:580 +#, c-format +msgid " --no-statistics do not restore statistics\n" +msgstr " --no-statistics не відновлювати статистику\n" + +#: pg_restore.c:581 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions не відновлювати підписки\n" -#: pg_restore.c:494 +#: pg_restore.c:582 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method не відновлювати табличний метод доступу\n" -#: pg_restore.c:495 +#: pg_restore.c:583 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces не відновлювати завдання табличного простору\n" -#: pg_restore.c:496 +#: pg_restore.c:585 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr " --section=SECTION відновлювати названий розділ (pre-data, data або post-data)\n" -#: pg_restore.c:499 +#: pg_restore.c:586 +#, c-format +msgid " --statistics restore the statistics\n" +msgstr " --statistics відновити статистику\n" + +#: pg_restore.c:587 +#, c-format +msgid " --statistics-only restore only the statistics, not schema or data\n" +msgstr " --statistics-only відновити тільки статистику, без схеми або даних\n" + +#: pg_restore.c:590 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N затверджувати транзакцію після N об'єктів\n" -#: pg_restore.c:510 +#: pg_restore.c:601 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME виконати SET ROLE перед відновленням\n" -#: pg_restore.c:512 +#: pg_restore.c:603 #, c-format msgid "\n" "The options -I, -n, -N, -P, -t, -T, and --section can be combined and specified\n" @@ -2882,7 +2998,7 @@ msgstr "\n" "Параметри -I, -n, -N, -P, -t, -T, і --section можна групувати і вказувати\n" "декілька разів для вибору декількох об'єктів.\n" -#: pg_restore.c:515 +#: pg_restore.c:606 #, c-format msgid "\n" "If no input file name is supplied, then standard input is used.\n\n" diff --git a/src/bin/pg_dump/t/002_pg_dump.pl b/src/bin/pg_dump/t/002_pg_dump.pl index fc106b2e343..54b0127f237 100644 --- a/src/bin/pg_dump/t/002_pg_dump.pl +++ b/src/bin/pg_dump/t/002_pg_dump.pl @@ -5376,7 +5376,12 @@ # Test dumping pg_catalog (for research -- cannot be reloaded) $node->command_ok( - [ 'pg_dump', '--port' => $port, '--schema' => 'pg_catalog' ], + [ + 'pg_dump', + '--port' => $port, + '--schema' => 'pg_catalog', + '--file' => "$tempdir/pgdump_pgcatalog.dmp" + ], 'pg_dump: option -n pg_catalog'); ######################################### @@ -5386,7 +5391,8 @@ [ 'pg_dumpall', '--port' => $port, - '--exclude-database' => '"myhost.mydb"' + '--exclude-database' => '"myhost.mydb"', + '--file' => "$tempdir/pgdumpall.dmp" ], 'pg_dumpall: option --exclude-database handles database names with embedded dots' ); diff --git a/src/bin/pg_dump/t/005_pg_dump_filterfile.pl b/src/bin/pg_dump/t/005_pg_dump_filterfile.pl index 5c69ec31c39..f38fc411084 100644 --- a/src/bin/pg_dump/t/005_pg_dump_filterfile.pl +++ b/src/bin/pg_dump/t/005_pg_dump_filterfile.pl @@ -540,7 +540,7 @@ ok($dump !~ qr/^\\connect postgres/m, "database postgres is not dumped"); ok($dump =~ qr/^\\connect template1/m, "database template1 is dumped"); -# Make sure this option dont break the existing limitation of using +# Make sure this option doesn't break the existing limitation of using # --globals-only with exclusions command_fails_like( [ diff --git a/src/bin/pg_resetwal/pg_resetwal.c b/src/bin/pg_resetwal/pg_resetwal.c index e876f35f38e..efb515e8a1a 100644 --- a/src/bin/pg_resetwal/pg_resetwal.c +++ b/src/bin/pg_resetwal/pg_resetwal.c @@ -69,8 +69,10 @@ static TransactionId set_xid = 0; static TransactionId set_oldest_commit_ts_xid = 0; static TransactionId set_newest_commit_ts_xid = 0; static Oid set_oid = 0; +static bool mxid_given = false; static MultiXactId set_mxid = 0; -static MultiXactOffset set_mxoff = (MultiXactOffset) -1; +static bool mxoff_given = false; +static MultiXactOffset set_mxoff = 0; static TimeLineID minXlogTli = 0; static XLogSegNo minXlogSegNo = 0; static int WalSegSz; @@ -117,6 +119,7 @@ main(int argc, char *argv[]) MultiXactId set_oldestmxid = 0; char *endptr; char *endptr2; + int64 tmpi64; char *DataDir = NULL; char *log_fname = NULL; int fd; @@ -253,8 +256,6 @@ main(int argc, char *argv[]) pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit(1); } - if (set_mxid == 0) - pg_fatal("multitransaction ID (-m) must not be 0"); /* * XXX It'd be nice to have more sanity checks here, e.g. so @@ -262,19 +263,23 @@ main(int argc, char *argv[]) */ if (set_oldestmxid == 0) pg_fatal("oldest multitransaction ID (-m) must not be 0"); + mxid_given = true; break; case 'O': errno = 0; - set_mxoff = strtoul(optarg, &endptr, 0); + tmpi64 = strtoi64(optarg, &endptr, 0); if (endptr == optarg || *endptr != '\0' || errno != 0) { pg_log_error("invalid argument for option %s", "-O"); pg_log_error_hint("Try \"%s --help\" for more information.", progname); exit(1); } - if (set_mxoff == -1) - pg_fatal("multitransaction offset (-O) must not be -1"); + if (tmpi64 < 0 || tmpi64 > (int64) MaxMultiXactOffset) + pg_fatal("multitransaction offset (-O) must be between 0 and %u", MaxMultiXactOffset); + + set_mxoff = (MultiXactOffset) tmpi64; + mxoff_given = true; break; case 'l': @@ -453,7 +458,7 @@ main(int argc, char *argv[]) if (set_oid != 0) ControlFile.checkPointCopy.nextOid = set_oid; - if (set_mxid != 0) + if (mxid_given) { ControlFile.checkPointCopy.nextMulti = set_mxid; @@ -463,7 +468,7 @@ main(int argc, char *argv[]) ControlFile.checkPointCopy.oldestMultiDB = InvalidOid; } - if (set_mxoff != -1) + if (mxoff_given) ControlFile.checkPointCopy.nextMultiOffset = set_mxoff; if (minXlogTli > ControlFile.checkPointCopy.ThisTimeLineID) @@ -821,7 +826,7 @@ PrintNewControlValues(void) newXlogSegNo, WalSegSz); printf(_("First log segment after reset: %s\n"), fname); - if (set_mxid != 0) + if (mxid_given) { printf(_("NextMultiXactId: %u\n"), ControlFile.checkPointCopy.nextMulti); @@ -831,7 +836,7 @@ PrintNewControlValues(void) ControlFile.checkPointCopy.oldestMultiDB); } - if (set_mxoff != -1) + if (mxoff_given) { printf(_("NextMultiOffset: %u\n"), ControlFile.checkPointCopy.nextMultiOffset); @@ -847,6 +852,10 @@ PrintNewControlValues(void) { printf(_("NextXID: %u\n"), XidFromFullTransactionId(ControlFile.checkPointCopy.nextXid)); + } + + if (set_oldest_xid != 0) + { printf(_("OldestXID: %u\n"), ControlFile.checkPointCopy.oldestXid); printf(_("OldestXID's DB: %u\n"), @@ -1058,6 +1067,8 @@ KillExistingArchiveStatus(void) if (closedir(xldir)) pg_fatal("could not close directory \"%s\": %m", ARCHSTATDIR); + +#undef ARCHSTATDIR } /* @@ -1092,7 +1103,10 @@ KillExistingWALSummaries(void) pg_fatal("could not read directory \"%s\": %m", WALSUMMARYDIR); if (closedir(xldir)) - pg_fatal("could not close directory \"%s\": %m", ARCHSTATDIR); + pg_fatal("could not close directory \"%s\": %m", WALSUMMARYDIR); + +#undef WALSUMMARY_NHEXCHARS +#undef WALSUMMARYDIR } /* diff --git a/src/bin/pg_resetwal/po/de.po b/src/bin/pg_resetwal/po/de.po index 702b587688d..daead7311c3 100644 --- a/src/bin/pg_resetwal/po/de.po +++ b/src/bin/pg_resetwal/po/de.po @@ -1,5 +1,5 @@ # German message translation file for pg_resetwal -# Peter Eisentraut , 2002 - 2025. +# Peter Eisentraut , 2002 - 2026. # # Use these quotes: »%s« # @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-06-13 01:50+0000\n" -"PO-Revision-Date: 2025-06-13 08:10+0200\n" +"POT-Creation-Date: 2026-02-04 18:51+0000\n" +"PO-Revision-Date: 2026-02-05 14:15+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -37,13 +37,13 @@ msgstr "Detail: " msgid "hint: " msgstr "Tipp: " -#: ../../common/controldata_utils.c:97 pg_resetwal.c:389 pg_resetwal.c:547 -#: pg_resetwal.c:595 +#: ../../common/controldata_utils.c:97 pg_resetwal.c:394 pg_resetwal.c:552 +#: pg_resetwal.c:600 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "konnte Datei »%s« nicht zum Lesen öffnen: %m" -#: ../../common/controldata_utils.c:110 pg_resetwal.c:556 pg_resetwal.c:610 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:561 pg_resetwal.c:615 #, c-format msgid "could not read file \"%s\": %m" msgstr "konnte Datei »%s« nicht lesen: %m" @@ -78,12 +78,12 @@ msgstr "" #: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 #: ../../common/file_utils.c:370 ../../common/file_utils.c:428 -#: ../../common/file_utils.c:502 pg_resetwal.c:1158 +#: ../../common/file_utils.c:502 pg_resetwal.c:1172 #, c-format msgid "could not open file \"%s\": %m" msgstr "konnte Datei »%s« nicht öffnen: %m" -#: ../../common/controldata_utils.c:249 pg_resetwal.c:1166 pg_resetwal.c:1178 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1180 pg_resetwal.c:1192 #, c-format msgid "could not write file \"%s\": %m" msgstr "konnte Datei »%s« nicht schreiben: %m" @@ -122,13 +122,13 @@ msgid "this build does not support sync method \"%s\"" msgstr "diese Installation unterstützt Sync-Methode »%s« nicht" #: ../../common/file_utils.c:156 ../../common/file_utils.c:304 -#: pg_resetwal.c:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 +#: pg_resetwal.c:961 pg_resetwal.c:1014 pg_resetwal.c:1049 pg_resetwal.c:1089 #, c-format msgid "could not open directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht öffnen: %m" #: ../../common/file_utils.c:174 ../../common/file_utils.c:338 -#: pg_resetwal.c:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 +#: pg_resetwal.c:987 pg_resetwal.c:1028 pg_resetwal.c:1066 pg_resetwal.c:1103 #, c-format msgid "could not read directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht lesen: %m" @@ -184,152 +184,147 @@ msgid "unrecognized sync method: %s" msgstr "unbekannte Sync-Methode: %s" #. translator: the second %s is a command line argument (-e, etc) -#: pg_resetwal.c:166 pg_resetwal.c:179 pg_resetwal.c:192 pg_resetwal.c:205 -#: pg_resetwal.c:212 pg_resetwal.c:231 pg_resetwal.c:244 pg_resetwal.c:252 -#: pg_resetwal.c:272 pg_resetwal.c:283 pg_resetwal.c:317 +#: pg_resetwal.c:169 pg_resetwal.c:182 pg_resetwal.c:195 pg_resetwal.c:208 +#: pg_resetwal.c:215 pg_resetwal.c:234 pg_resetwal.c:247 pg_resetwal.c:255 +#: pg_resetwal.c:274 pg_resetwal.c:288 pg_resetwal.c:322 #, c-format msgid "invalid argument for option %s" msgstr "ungültiges Argument für Option %s" -#: pg_resetwal.c:167 pg_resetwal.c:180 pg_resetwal.c:193 pg_resetwal.c:206 -#: pg_resetwal.c:213 pg_resetwal.c:232 pg_resetwal.c:245 pg_resetwal.c:253 -#: pg_resetwal.c:273 pg_resetwal.c:284 pg_resetwal.c:318 pg_resetwal.c:326 -#: pg_resetwal.c:339 pg_resetwal.c:346 +#: pg_resetwal.c:170 pg_resetwal.c:183 pg_resetwal.c:196 pg_resetwal.c:209 +#: pg_resetwal.c:216 pg_resetwal.c:235 pg_resetwal.c:248 pg_resetwal.c:256 +#: pg_resetwal.c:275 pg_resetwal.c:289 pg_resetwal.c:323 pg_resetwal.c:331 +#: pg_resetwal.c:344 pg_resetwal.c:351 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Versuchen Sie »%s --help« für weitere Informationen." -#: pg_resetwal.c:171 +#: pg_resetwal.c:174 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "Transaktions-ID-Epoche (-e) darf nicht -1 sein" -#: pg_resetwal.c:184 +#: pg_resetwal.c:187 #, c-format msgid "oldest transaction ID (-u) must be greater than or equal to %u" msgstr "älteste Transaktions-ID (-u) muss größer oder gleich %u sein" -#: pg_resetwal.c:197 +#: pg_resetwal.c:200 #, c-format msgid "transaction ID (-x) must be greater than or equal to %u" msgstr "Transaktions-ID (-x) muss größer oder gleich %u sein" -#: pg_resetwal.c:219 pg_resetwal.c:223 +#: pg_resetwal.c:222 pg_resetwal.c:226 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "Transaktions-ID (-c) muss entweder %u oder größer oder gleich %u sein" -#: pg_resetwal.c:236 +#: pg_resetwal.c:239 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) darf nicht 0 sein" -#: pg_resetwal.c:257 -#, c-format -msgid "multitransaction ID (-m) must not be 0" -msgstr "Multitransaktions-ID (-m) darf nicht 0 sein" - -#: pg_resetwal.c:264 +#: pg_resetwal.c:265 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "älteste Multitransaktions-ID (-m) darf nicht 0 sein" -#: pg_resetwal.c:277 +#: pg_resetwal.c:279 #, c-format -msgid "multitransaction offset (-O) must not be -1" -msgstr "Multitransaktions-Offset (-O) darf nicht -1 sein" +msgid "multitransaction offset (-O) must be between 0 and %u" +msgstr "Multitransaktions-Offset (-O) muss zwischen 0 und %u sein" -#: pg_resetwal.c:303 +#: pg_resetwal.c:308 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "Argument von %s muss eine Zweierpotenz zwischen 1 und 1024 sein" -#: pg_resetwal.c:337 +#: pg_resetwal.c:342 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "zu viele Kommandozeilenargumente (das erste ist »%s«)" -#: pg_resetwal.c:345 +#: pg_resetwal.c:350 #, c-format msgid "no data directory specified" msgstr "kein Datenverzeichnis angegeben" -#: pg_resetwal.c:359 +#: pg_resetwal.c:364 #, c-format msgid "cannot be executed by \"root\"" msgstr "kann nicht von »root« ausgeführt werden" -#: pg_resetwal.c:360 +#: pg_resetwal.c:365 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Sie müssen %s als PostgreSQL-Superuser ausführen." -#: pg_resetwal.c:370 +#: pg_resetwal.c:375 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "konnte Zugriffsrechte von Verzeichnis »%s« nicht lesen: %m" -#: pg_resetwal.c:376 +#: pg_resetwal.c:381 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "konnte nicht in Verzeichnis »%s« wechseln: %m" -#: pg_resetwal.c:394 +#: pg_resetwal.c:399 #, c-format msgid "lock file \"%s\" exists" msgstr "Sperrdatei »%s« existiert" -#: pg_resetwal.c:395 +#: pg_resetwal.c:400 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "Läuft der Server? Wenn nicht, dann Sperrdatei löschen und nochmal versuchen." -#: pg_resetwal.c:497 +#: pg_resetwal.c:502 #, c-format msgid "not proceeding because control file values were guessed" msgstr "es wird nicht fortgefahren, weil Kontrolldateiwerte geschätzt wurden" -#: pg_resetwal.c:498 +#: pg_resetwal.c:503 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "Wenn diese Werte akzeptabel scheinen, dann benutzen Sie -f, um das Zurücksetzen zu erzwingen." -#: pg_resetwal.c:507 +#: pg_resetwal.c:512 #, c-format msgid "database server was not shut down cleanly" msgstr "Datenbankserver wurde nicht sauber heruntergefahren" -#: pg_resetwal.c:508 +#: pg_resetwal.c:513 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "Beim Zurücksetzen des Write-Ahead-Logs können Daten verloren gehen." -#: pg_resetwal.c:509 +#: pg_resetwal.c:514 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "Wenn Sie trotzdem weiter machen wollen, dann benutzen Sie -f, um das Zurücksetzen zu erzwingen." -#: pg_resetwal.c:522 +#: pg_resetwal.c:527 #, c-format msgid "Write-ahead log reset\n" msgstr "Write-Ahead-Log wurde zurückgesetzt\n" -#: pg_resetwal.c:554 +#: pg_resetwal.c:559 #, c-format msgid "unexpected empty file \"%s\"" msgstr "unerwartete leere Datei »%s«" -#: pg_resetwal.c:564 +#: pg_resetwal.c:569 #, c-format msgid "data directory is of wrong version" msgstr "Datenverzeichnis hat falsche Version" -#: pg_resetwal.c:565 +#: pg_resetwal.c:570 #, c-format msgid "File \"%s\" contains \"%s\", which is not compatible with this program's version \"%s\"." msgstr "Datei »%s« enthält »%s«, was nicht mit der Version dieses Programms »%s« kompatibel ist." -#: pg_resetwal.c:598 +#: pg_resetwal.c:603 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -340,24 +335,24 @@ msgstr "" " touch %s\n" "aus und versuchen Sie es erneut." -#: pg_resetwal.c:626 +#: pg_resetwal.c:631 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "pg_control existiert, aber mit ungültiger CRC; mit Vorsicht fortfahren" -#: pg_resetwal.c:635 +#: pg_resetwal.c:640 #, c-format msgid "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" msgid_plural "pg_control specifies invalid WAL segment size (%d bytes); proceed with caution" msgstr[0] "pg_control gibt ungültige WAL-Segmentgröße an (%d Byte); mit Vorsicht fortfahren" msgstr[1] "pg_control gibt ungültige WAL-Segmentgröße an (%d Bytes); mit Vorsicht fortfahren" -#: pg_resetwal.c:646 +#: pg_resetwal.c:651 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "pg_control existiert, aber ist kaputt oder hat falsche Version; wird ignoriert" -#: pg_resetwal.c:741 +#: pg_resetwal.c:746 #, c-format msgid "" "Guessed pg_control values:\n" @@ -366,7 +361,7 @@ msgstr "" "Geschätzte pg_control-Werte:\n" "\n" -#: pg_resetwal.c:743 +#: pg_resetwal.c:748 #, c-format msgid "" "Current pg_control values:\n" @@ -375,180 +370,180 @@ msgstr "" "Aktuelle pg_control-Werte:\n" "\n" -#: pg_resetwal.c:745 +#: pg_resetwal.c:750 #, c-format msgid "pg_control version number: %u\n" msgstr "pg_control-Versionsnummer: %u\n" -#: pg_resetwal.c:747 +#: pg_resetwal.c:752 #, c-format msgid "Catalog version number: %u\n" msgstr "Katalogversionsnummer: %u\n" -#: pg_resetwal.c:749 +#: pg_resetwal.c:754 #, c-format msgid "Database system identifier: %\n" msgstr "Datenbanksystemidentifikation: %\n" -#: pg_resetwal.c:751 +#: pg_resetwal.c:756 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "TimeLineID des letzten Checkpoints: %u\n" -#: pg_resetwal.c:753 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "full_page_writes des letzten Checkpoints: %s\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "off" msgstr "aus" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "on" msgstr "an" -#: pg_resetwal.c:755 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "NextXID des letzten Checkpoints: %u:%u\n" -#: pg_resetwal.c:758 +#: pg_resetwal.c:763 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "NextOID des letzten Checkpoints: %u\n" -#: pg_resetwal.c:760 +#: pg_resetwal.c:765 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "NextMultiXactId des letzten Checkpoints: %u\n" -#: pg_resetwal.c:762 +#: pg_resetwal.c:767 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "NextMultiOffset des letzten Checkpoints: %u\n" -#: pg_resetwal.c:764 +#: pg_resetwal.c:769 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "oldestXID des letzten Checkpoints: %u\n" -#: pg_resetwal.c:766 +#: pg_resetwal.c:771 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "DB der oldestXID des letzten Checkpoints: %u\n" -#: pg_resetwal.c:768 +#: pg_resetwal.c:773 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "oldestActiveXID des letzten Checkpoints: %u\n" -#: pg_resetwal.c:770 +#: pg_resetwal.c:775 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "oldestMultiXid des letzten Checkpoints: %u\n" -#: pg_resetwal.c:772 +#: pg_resetwal.c:777 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "DB des oldestMulti des letzten Checkpoints: %u\n" -#: pg_resetwal.c:774 +#: pg_resetwal.c:779 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "oldestCommitTsXid des letzten Checkpoints: %u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:781 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "newestCommitTsXid des letzten Checkpoints: %u\n" -#: pg_resetwal.c:778 +#: pg_resetwal.c:783 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Maximale Datenausrichtung (Alignment): %u\n" -#: pg_resetwal.c:781 +#: pg_resetwal.c:786 #, c-format msgid "Database block size: %u\n" msgstr "Datenbankblockgröße: %u\n" -#: pg_resetwal.c:783 +#: pg_resetwal.c:788 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Blöcke pro Segment: %u\n" -#: pg_resetwal.c:785 +#: pg_resetwal.c:790 #, c-format msgid "WAL block size: %u\n" msgstr "WAL-Blockgröße: %u\n" -#: pg_resetwal.c:787 pg_resetwal.c:875 +#: pg_resetwal.c:792 pg_resetwal.c:884 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Bytes pro WAL-Segment: %u\n" -#: pg_resetwal.c:789 +#: pg_resetwal.c:794 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Maximale Bezeichnerlänge: %u\n" -#: pg_resetwal.c:791 +#: pg_resetwal.c:796 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "Maximale Spalten in einem Index: %u\n" -#: pg_resetwal.c:793 +#: pg_resetwal.c:798 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Maximale Größe eines Stücks TOAST: %u\n" -#: pg_resetwal.c:795 +#: pg_resetwal.c:800 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "Größe eines Large-Object-Chunks: %u\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:803 #, c-format msgid "Date/time type storage: %s\n" msgstr "Speicherung von Datum/Zeit-Typen: %s\n" -#: pg_resetwal.c:799 +#: pg_resetwal.c:804 msgid "64-bit integers" msgstr "64-Bit-Ganzzahlen" -#: pg_resetwal.c:800 +#: pg_resetwal.c:805 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Übergabe von Float8-Argumenten: %s\n" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by reference" msgstr "Referenz" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by value" msgstr "Wert" -#: pg_resetwal.c:802 +#: pg_resetwal.c:807 #, c-format msgid "Data page checksum version: %u\n" msgstr "Datenseitenprüfsummenversion: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:809 #, c-format msgid "Default char data signedness: %s\n" msgstr "Standard für Vorzeichen von »char«-Daten: %s\n" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "signed" msgstr "mit Vorzeichen" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "unsigned" msgstr "ohne Vorzeichen" -#: pg_resetwal.c:818 +#: pg_resetwal.c:823 #, c-format msgid "" "\n" @@ -561,82 +556,82 @@ msgstr "" "Zu ändernde Werte:\n" "\n" -#: pg_resetwal.c:822 +#: pg_resetwal.c:827 #, c-format msgid "First log segment after reset: %s\n" msgstr "Erstes Logdateisegment nach Zurücksetzen: %s\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:831 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:833 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:830 +#: pg_resetwal.c:835 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "OldestMulti's DB: %u\n" -#: pg_resetwal.c:836 +#: pg_resetwal.c:841 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:842 +#: pg_resetwal.c:847 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:848 +#: pg_resetwal.c:853 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:850 +#: pg_resetwal.c:859 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:852 +#: pg_resetwal.c:861 #, c-format msgid "OldestXID's DB: %u\n" msgstr "OldestXID's DB: %u\n" -#: pg_resetwal.c:858 +#: pg_resetwal.c:867 #, c-format msgid "NextXID epoch: %u\n" msgstr "NextXID-Epoche: %u\n" -#: pg_resetwal.c:864 +#: pg_resetwal.c:873 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:869 +#: pg_resetwal.c:878 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "newestCommitTsXid: %u\n" -#: pg_resetwal.c:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 +#: pg_resetwal.c:990 pg_resetwal.c:1031 pg_resetwal.c:1069 pg_resetwal.c:1106 #, c-format msgid "could not close directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht schließen: %m" -#: pg_resetwal.c:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 +#: pg_resetwal.c:1023 pg_resetwal.c:1061 pg_resetwal.c:1098 #, c-format msgid "could not delete file \"%s\": %m" msgstr "konnte Datei »%s« nicht löschen: %m" -#: pg_resetwal.c:1183 +#: pg_resetwal.c:1197 #, c-format msgid "fsync error: %m" msgstr "fsync-Fehler: %m" -#: pg_resetwal.c:1192 +#: pg_resetwal.c:1206 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -645,17 +640,17 @@ msgstr "" "%s setzt den PostgreSQL-Write-Ahead-Log zurück.\n" "\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1207 #, c-format msgid "Usage:\n" msgstr "Aufruf:\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1208 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [OPTION]... DATENVERZEICHNIS\n" -#: pg_resetwal.c:1196 +#: pg_resetwal.c:1210 #, c-format msgid "" "\n" @@ -664,12 +659,12 @@ msgstr "" "\n" "Optionen:\n" -#: pg_resetwal.c:1197 +#: pg_resetwal.c:1211 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]VERZ Datenbankverzeichnis\n" -#: pg_resetwal.c:1198 +#: pg_resetwal.c:1212 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown or\n" @@ -678,22 +673,22 @@ msgstr "" " -f, --force Änderung erzwingen, auch nach unsauberem Herunterfahren\n" " oder wenn pg_control-Werte geschätzt werden mussten\n" -#: pg_resetwal.c:1200 +#: pg_resetwal.c:1214 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr " -n, --dry-run keine Änderungen; nur zeigen, was gemacht werden würde\n" -#: pg_resetwal.c:1201 +#: pg_resetwal.c:1215 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version Versionsinformationen anzeigen, dann beenden\n" -#: pg_resetwal.c:1202 +#: pg_resetwal.c:1216 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help diese Hilfe anzeigen, dann beenden\n" -#: pg_resetwal.c:1204 +#: pg_resetwal.c:1218 #, c-format msgid "" "\n" @@ -702,7 +697,7 @@ msgstr "" "\n" "Optionen um Kontrolldateiwerte setzen:\n" -#: pg_resetwal.c:1205 +#: pg_resetwal.c:1219 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -713,54 +708,54 @@ msgstr "" " älteste und neuste Transaktion mit Commit-\n" " Timestamp setzen (Null bedeutet keine Änderung)\n" -#: pg_resetwal.c:1208 +#: pg_resetwal.c:1222 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr " -e, --epoch=XIDEPOCHE nächste Transaktions-ID-Epoche setzen\n" -#: pg_resetwal.c:1209 +#: pg_resetwal.c:1223 #, c-format msgid " -l, --next-wal-file=WALFILE set minimum starting location for new WAL\n" msgstr " -l, --next-wal-file=WALDATEI minimale Startposition für neuen WAL setzen\n" -#: pg_resetwal.c:1210 +#: pg_resetwal.c:1224 #, c-format msgid " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" msgstr " -m, --multixact-ids=MXID,MXID nächste und älteste Multitransaktions-ID setzen\n" -#: pg_resetwal.c:1211 +#: pg_resetwal.c:1225 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID nächste OID setzen\n" -#: pg_resetwal.c:1212 +#: pg_resetwal.c:1226 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr " -O, --multixact-offset=OFFSET nächsten Multitransaktions-Offset setzen\n" -#: pg_resetwal.c:1213 +#: pg_resetwal.c:1227 #, c-format msgid " -u, --oldest-transaction-id=XID set oldest transaction ID\n" msgstr " -u, --oldest-transaction-id=XID älteste Transaktions-ID setzen\n" -#: pg_resetwal.c:1214 +#: pg_resetwal.c:1228 #, c-format msgid " -x, --next-transaction-id=XID set next transaction ID\n" msgstr " -x, --next-transaction-id=XID nächste Transaktions-ID setzen\n" -#: pg_resetwal.c:1215 +#: pg_resetwal.c:1229 #, c-format msgid " --char-signedness=OPTION set char signedness to \"signed\" or \"unsigned\"\n" msgstr "" " --char-signedness=OPTION Standard für Vorzeichen von »char« auf\n" " »signed« oder »unsigned« setzen\n" -#: pg_resetwal.c:1216 +#: pg_resetwal.c:1230 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=ZAHL Größe eines WAL-Segments, in Megabytes\n" -#: pg_resetwal.c:1218 +#: pg_resetwal.c:1232 #, c-format msgid "" "\n" @@ -769,7 +764,7 @@ msgstr "" "\n" "Berichten Sie Fehler an <%s>.\n" -#: pg_resetwal.c:1219 +#: pg_resetwal.c:1233 #, c-format msgid "%s home page: <%s>\n" msgstr "%s Homepage: <%s>\n" diff --git a/src/bin/pg_resetwal/po/es.po b/src/bin/pg_resetwal/po/es.po index f325330ca2b..e52ef79e4a2 100644 --- a/src/bin/pg_resetwal/po/es.po +++ b/src/bin/pg_resetwal/po/es.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_resetwal (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:20+0000\n" -"PO-Revision-Date: 2025-09-21 11:38+0200\n" +"POT-Creation-Date: 2026-02-06 23:19+0000\n" +"PO-Revision-Date: 2025-12-06 09:41+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -43,13 +43,13 @@ msgstr "detalle: " msgid "hint: " msgstr "consejo: " -#: ../../common/controldata_utils.c:97 pg_resetwal.c:389 pg_resetwal.c:547 -#: pg_resetwal.c:595 +#: ../../common/controldata_utils.c:97 pg_resetwal.c:394 pg_resetwal.c:552 +#: pg_resetwal.c:600 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "no se pudo abrir archivo «%s» para lectura: %m" -#: ../../common/controldata_utils.c:110 pg_resetwal.c:556 pg_resetwal.c:610 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:561 pg_resetwal.c:615 #, c-format msgid "could not read file \"%s\": %m" msgstr "no se pudo leer el archivo «%s»: %m" @@ -84,12 +84,12 @@ msgstr "" #: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 #: ../../common/file_utils.c:370 ../../common/file_utils.c:428 -#: ../../common/file_utils.c:502 pg_resetwal.c:1158 +#: ../../common/file_utils.c:502 pg_resetwal.c:1172 #, c-format msgid "could not open file \"%s\": %m" msgstr "no se pudo abrir el archivo «%s»: %m" -#: ../../common/controldata_utils.c:249 pg_resetwal.c:1166 pg_resetwal.c:1178 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1180 pg_resetwal.c:1192 #, c-format msgid "could not write file \"%s\": %m" msgstr "no se pudo escribir el archivo «%s»: %m" @@ -128,13 +128,13 @@ msgid "this build does not support sync method \"%s\"" msgstr "esta instalación no soporta el método de sync «%s»" #: ../../common/file_utils.c:156 ../../common/file_utils.c:304 -#: pg_resetwal.c:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 +#: pg_resetwal.c:961 pg_resetwal.c:1014 pg_resetwal.c:1049 pg_resetwal.c:1089 #, c-format msgid "could not open directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%s»: %m" #: ../../common/file_utils.c:174 ../../common/file_utils.c:338 -#: pg_resetwal.c:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 +#: pg_resetwal.c:987 pg_resetwal.c:1028 pg_resetwal.c:1066 pg_resetwal.c:1103 #, c-format msgid "could not read directory \"%s\": %m" msgstr "no se pudo leer el directorio «%s»: %m" @@ -190,152 +190,147 @@ msgid "unrecognized sync method: %s" msgstr "método de sync no reconocido: %s" #. translator: the second %s is a command line argument (-e, etc) -#: pg_resetwal.c:166 pg_resetwal.c:179 pg_resetwal.c:192 pg_resetwal.c:205 -#: pg_resetwal.c:212 pg_resetwal.c:231 pg_resetwal.c:244 pg_resetwal.c:252 -#: pg_resetwal.c:272 pg_resetwal.c:283 pg_resetwal.c:317 +#: pg_resetwal.c:169 pg_resetwal.c:182 pg_resetwal.c:195 pg_resetwal.c:208 +#: pg_resetwal.c:215 pg_resetwal.c:234 pg_resetwal.c:247 pg_resetwal.c:255 +#: pg_resetwal.c:274 pg_resetwal.c:288 pg_resetwal.c:322 #, c-format msgid "invalid argument for option %s" msgstr "argumento no válido para la opción %s" -#: pg_resetwal.c:167 pg_resetwal.c:180 pg_resetwal.c:193 pg_resetwal.c:206 -#: pg_resetwal.c:213 pg_resetwal.c:232 pg_resetwal.c:245 pg_resetwal.c:253 -#: pg_resetwal.c:273 pg_resetwal.c:284 pg_resetwal.c:318 pg_resetwal.c:326 -#: pg_resetwal.c:339 pg_resetwal.c:346 +#: pg_resetwal.c:170 pg_resetwal.c:183 pg_resetwal.c:196 pg_resetwal.c:209 +#: pg_resetwal.c:216 pg_resetwal.c:235 pg_resetwal.c:248 pg_resetwal.c:256 +#: pg_resetwal.c:275 pg_resetwal.c:289 pg_resetwal.c:323 pg_resetwal.c:331 +#: pg_resetwal.c:344 pg_resetwal.c:351 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: pg_resetwal.c:171 +#: pg_resetwal.c:174 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "el \"epoch\" de ID de transacción (-e) no debe ser -1" -#: pg_resetwal.c:184 +#: pg_resetwal.c:187 #, c-format msgid "oldest transaction ID (-u) must be greater than or equal to %u" msgstr "el ID de transacción más antiguo (-u) debe ser mayor o igual a %u" -#: pg_resetwal.c:197 +#: pg_resetwal.c:200 #, c-format msgid "transaction ID (-x) must be greater than or equal to %u" msgstr "el ID de transacción (-x) debe ser mayor o igual a %u" -#: pg_resetwal.c:219 pg_resetwal.c:223 +#: pg_resetwal.c:222 pg_resetwal.c:226 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "el ID de transacción (-c) debe ser %u o bien mayor o igual a %u" -#: pg_resetwal.c:236 +#: pg_resetwal.c:239 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) no debe ser cero" -#: pg_resetwal.c:257 -#, c-format -msgid "multitransaction ID (-m) must not be 0" -msgstr "el ID de multitransacción (-m) no debe ser 0" - -#: pg_resetwal.c:264 +#: pg_resetwal.c:265 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "el ID de multitransacción más antiguo (-m) no debe ser 0" -#: pg_resetwal.c:277 +#: pg_resetwal.c:279 #, c-format -msgid "multitransaction offset (-O) must not be -1" -msgstr "la posición de multitransacción (-O) no debe ser -1" +msgid "multitransaction offset (-O) must be between 0 and %u" +msgstr "la posición de multitransacción (-O) debe estar entre 0 y %u" -#: pg_resetwal.c:303 +#: pg_resetwal.c:308 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "el argumento de %s debe ser una potencia de dos entre 1 y 1024" -#: pg_resetwal.c:337 +#: pg_resetwal.c:342 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)" -#: pg_resetwal.c:345 +#: pg_resetwal.c:350 #, c-format msgid "no data directory specified" msgstr "directorio de datos no especificado" -#: pg_resetwal.c:359 +#: pg_resetwal.c:364 #, c-format msgid "cannot be executed by \"root\"" msgstr "no puede ser ejecutado con el usuario «root»" -#: pg_resetwal.c:360 +#: pg_resetwal.c:365 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Debe ejecutar %s con el superusuario de PostgreSQL." -#: pg_resetwal.c:370 +#: pg_resetwal.c:375 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "no se pudo obtener los permisos del directorio «%s»: %m" -#: pg_resetwal.c:376 +#: pg_resetwal.c:381 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "no se pudo cambiar al directorio «%s»: %m" -#: pg_resetwal.c:394 +#: pg_resetwal.c:399 #, c-format msgid "lock file \"%s\" exists" msgstr "el archivo candado «%s» existe" -#: pg_resetwal.c:395 +#: pg_resetwal.c:400 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "¿Hay un servidor corriendo? Si no, borre el archivo candado e inténtelo de nuevo." -#: pg_resetwal.c:497 +#: pg_resetwal.c:502 #, c-format msgid "not proceeding because control file values were guessed" msgstr "no continuando porque los valores del archivo de control fueron asumidos" -#: pg_resetwal.c:498 +#: pg_resetwal.c:503 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "Si estos valores parecen aceptables, use -f para forzar reinicio." -#: pg_resetwal.c:507 +#: pg_resetwal.c:512 #, c-format msgid "database server was not shut down cleanly" msgstr "el directorio de destino no fue apagado limpiamente" -#: pg_resetwal.c:508 +#: pg_resetwal.c:513 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "Reiniciar el \"write-ahead log\" puede causar pérdida de datos." -#: pg_resetwal.c:509 +#: pg_resetwal.c:514 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "Si quiere proceder de todas formas, use -f para forzar reinicio." -#: pg_resetwal.c:522 +#: pg_resetwal.c:527 #, c-format msgid "Write-ahead log reset\n" msgstr "\"Write-ahead log\" restablecido\n" -#: pg_resetwal.c:554 +#: pg_resetwal.c:559 #, c-format msgid "unexpected empty file \"%s\"" msgstr "archivo vacío inesperado «%s»" -#: pg_resetwal.c:564 +#: pg_resetwal.c:569 #, c-format msgid "data directory is of wrong version" msgstr "el directorio de datos tiene la versión equivocada" -#: pg_resetwal.c:565 +#: pg_resetwal.c:570 #, c-format msgid "File \"%s\" contains \"%s\", which is not compatible with this program's version \"%s\"." msgstr "El archivo «%s» contiene «%s», que no es compatible con la versión «%s» de este programa." -#: pg_resetwal.c:598 +#: pg_resetwal.c:603 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -346,24 +341,24 @@ msgstr "" " touch %s\n" "y pruebe de nuevo." -#: pg_resetwal.c:626 +#: pg_resetwal.c:631 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "existe pg_control pero tiene un CRC no válido, proceda con precaución" -#: pg_resetwal.c:635 +#: pg_resetwal.c:640 #, c-format msgid "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" msgid_plural "pg_control specifies invalid WAL segment size (%d bytes); proceed with caution" msgstr[0] "pg_control especifica un tamaño de segmento de WAL no válido (%d byte), proceda con precaución" msgstr[1] "pg_control especifica un tamaño de segmento de WAL no válido (%d bytes), proceda con precaución" -#: pg_resetwal.c:646 +#: pg_resetwal.c:651 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "existe pg_control pero está roto o tiene la versión equivocada; ignorándolo" -#: pg_resetwal.c:741 +#: pg_resetwal.c:746 #, c-format msgid "" "Guessed pg_control values:\n" @@ -372,7 +367,7 @@ msgstr "" "Valores de pg_control asumidos:\n" "\n" -#: pg_resetwal.c:743 +#: pg_resetwal.c:748 #, c-format msgid "" "Current pg_control values:\n" @@ -381,180 +376,180 @@ msgstr "" "Valores actuales de pg_control:\n" "\n" -#: pg_resetwal.c:745 +#: pg_resetwal.c:750 #, c-format msgid "pg_control version number: %u\n" msgstr "Número de versión de pg_control: %u\n" -#: pg_resetwal.c:747 +#: pg_resetwal.c:752 #, c-format msgid "Catalog version number: %u\n" msgstr "Número de versión de catálogo: %u\n" -#: pg_resetwal.c:749 +#: pg_resetwal.c:754 #, c-format msgid "Database system identifier: %\n" msgstr "Identificador de sistema: %\n" -#: pg_resetwal.c:751 +#: pg_resetwal.c:756 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "TimeLineID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:753 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "full_page_writes del checkpoint más reciente: %s\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "off" msgstr "desactivado" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "on" msgstr "activado" -#: pg_resetwal.c:755 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "NextXID del checkpoint más reciente: %u:%u\n" -#: pg_resetwal.c:758 +#: pg_resetwal.c:763 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "NextOID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:760 +#: pg_resetwal.c:765 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "NextMultiXactId del checkpoint más reciente: %u\n" -#: pg_resetwal.c:762 +#: pg_resetwal.c:767 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "NextMultiOffset del checkpoint más reciente: %u\n" -#: pg_resetwal.c:764 +#: pg_resetwal.c:769 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "oldestXID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:766 +#: pg_resetwal.c:771 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "BD del oldestXID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:768 +#: pg_resetwal.c:773 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "oldestActiveXID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:770 +#: pg_resetwal.c:775 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "oldestMultiXid del checkpoint más reciente: %u\n" -#: pg_resetwal.c:772 +#: pg_resetwal.c:777 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "BD del oldestMultiXid del checkpt. más reciente: %u\n" -#: pg_resetwal.c:774 +#: pg_resetwal.c:779 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "oldestCommitTsXid del último checkpoint: %u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:781 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "newestCommitTsXid del último checkpoint: %u\n" -#: pg_resetwal.c:778 +#: pg_resetwal.c:783 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Máximo alineamiento de datos: %u\n" -#: pg_resetwal.c:781 +#: pg_resetwal.c:786 #, c-format msgid "Database block size: %u\n" msgstr "Tamaño del bloque de la base de datos: %u\n" -#: pg_resetwal.c:783 +#: pg_resetwal.c:788 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Bloques por segmento de relación grande: %u\n" -#: pg_resetwal.c:785 +#: pg_resetwal.c:790 #, c-format msgid "WAL block size: %u\n" msgstr "Tamaño del bloque de WAL: %u\n" -#: pg_resetwal.c:787 pg_resetwal.c:875 +#: pg_resetwal.c:792 pg_resetwal.c:884 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Bytes por segmento WAL: %u\n" -#: pg_resetwal.c:789 +#: pg_resetwal.c:794 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Longitud máxima de identificadores: %u\n" -#: pg_resetwal.c:791 +#: pg_resetwal.c:796 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "Máximo número de columnas en un índice: %u\n" -#: pg_resetwal.c:793 +#: pg_resetwal.c:798 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Longitud máxima de un trozo TOAST: %u\n" -#: pg_resetwal.c:795 +#: pg_resetwal.c:800 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "Longitud máxima de un trozo de objeto grande: %u\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:803 #, c-format msgid "Date/time type storage: %s\n" msgstr "Tipo de almacenamiento hora/fecha: %s\n" -#: pg_resetwal.c:799 +#: pg_resetwal.c:804 msgid "64-bit integers" msgstr "enteros de 64 bits" -#: pg_resetwal.c:800 +#: pg_resetwal.c:805 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Paso de parámetros float8: %s\n" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by reference" msgstr "por referencia" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by value" msgstr "por valor" -#: pg_resetwal.c:802 +#: pg_resetwal.c:807 #, c-format msgid "Data page checksum version: %u\n" msgstr "Versión de suma de verificación de datos: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:809 #, c-format msgid "Default char data signedness: %s\n" msgstr "Presencia de signo en datos «char»: %s\n" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "signed" msgstr "con signo" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "unsigned" msgstr "sin signo" -#: pg_resetwal.c:818 +#: pg_resetwal.c:823 #, c-format msgid "" "\n" @@ -567,82 +562,82 @@ msgstr "" "Valores a cambiar:\n" "\n" -#: pg_resetwal.c:822 +#: pg_resetwal.c:827 #, c-format msgid "First log segment after reset: %s\n" msgstr "Primer segmento de log después de reiniciar: %s\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:831 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:833 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:830 +#: pg_resetwal.c:835 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "Base de datos del OldestMulti: %u\n" -#: pg_resetwal.c:836 +#: pg_resetwal.c:841 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:842 +#: pg_resetwal.c:847 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:848 +#: pg_resetwal.c:853 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:850 +#: pg_resetwal.c:859 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:852 +#: pg_resetwal.c:861 #, c-format msgid "OldestXID's DB: %u\n" msgstr "Base de datos del OldestXID: %u\n" -#: pg_resetwal.c:858 +#: pg_resetwal.c:867 #, c-format msgid "NextXID epoch: %u\n" msgstr "Epoch del NextXID: %u\n" -#: pg_resetwal.c:864 +#: pg_resetwal.c:873 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:869 +#: pg_resetwal.c:878 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "newestCommitTsXid: %u\n" -#: pg_resetwal.c:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 +#: pg_resetwal.c:990 pg_resetwal.c:1031 pg_resetwal.c:1069 pg_resetwal.c:1106 #, c-format msgid "could not close directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%s»: %m" -#: pg_resetwal.c:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 +#: pg_resetwal.c:1023 pg_resetwal.c:1061 pg_resetwal.c:1098 #, c-format msgid "could not delete file \"%s\": %m" msgstr "no se pudo borrar el archivo «%s»: %m" -#: pg_resetwal.c:1183 +#: pg_resetwal.c:1197 #, c-format msgid "fsync error: %m" msgstr "error de fsync: %m" -#: pg_resetwal.c:1192 +#: pg_resetwal.c:1206 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -651,17 +646,17 @@ msgstr "" "%s restablece el WAL (\"write-ahead log\") de PostgreSQL.\n" "\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1207 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1208 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [OPCIÓN]... DATADIR\n" -#: pg_resetwal.c:1196 +#: pg_resetwal.c:1210 #, c-format msgid "" "\n" @@ -670,12 +665,12 @@ msgstr "" "\n" "Opciones:\n" -#: pg_resetwal.c:1197 +#: pg_resetwal.c:1211 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR directorio de datos\n" -#: pg_resetwal.c:1198 +#: pg_resetwal.c:1212 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown or\n" @@ -685,22 +680,22 @@ msgstr "" " de un apagado no limpio o si los valores de pg_control\n" " tuvieron que asumirse\n" -#: pg_resetwal.c:1200 +#: pg_resetwal.c:1214 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr " -n, --dry-run no actualiza, sólo muestra lo que se haría\n" -#: pg_resetwal.c:1201 +#: pg_resetwal.c:1215 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión, luego salir\n" -#: pg_resetwal.c:1202 +#: pg_resetwal.c:1216 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda, luego salir\n" -#: pg_resetwal.c:1204 +#: pg_resetwal.c:1218 #, c-format msgid "" "\n" @@ -709,7 +704,7 @@ msgstr "" "\n" "Opciones para sobreescribir valores del archivo de control:\n" -#: pg_resetwal.c:1205 +#: pg_resetwal.c:1219 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -721,58 +716,58 @@ msgstr "" " transacciones que llevan timestamp de commit\n" " (cero significa no cambiar)\n" -#: pg_resetwal.c:1208 +#: pg_resetwal.c:1222 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr "" " -e, --epoch=XIDEPOCH asigna el siguiente \"epoch\" de ID de\n" " transacción\n" -#: pg_resetwal.c:1209 +#: pg_resetwal.c:1223 #, c-format msgid " -l, --next-wal-file=WALFILE set minimum starting location for new WAL\n" msgstr "" " -l, --next-wal-file=ARCHIVOWAL fuerza una ubicación inicial mínima para\n" " nuevo WAL\n" -#: pg_resetwal.c:1210 +#: pg_resetwal.c:1224 #, c-format msgid " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" msgstr "" " -m, --multixact-ids=MXID,MXID asigna el siguiente ID de multitransacción\n" " y el más antiguo\n" -#: pg_resetwal.c:1211 +#: pg_resetwal.c:1225 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID asigna el siguiente OID\n" -#: pg_resetwal.c:1212 +#: pg_resetwal.c:1226 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr " -O, --multixact-offset=OFFSET asigna la siguiente pos. de multitransacción\n" -#: pg_resetwal.c:1213 +#: pg_resetwal.c:1227 #, c-format msgid " -u, --oldest-transaction-id=XID set oldest transaction ID\n" msgstr " -u, --oldest-transaction-id=XID asigna el ID de transacción más antiguo\n" -#: pg_resetwal.c:1214 +#: pg_resetwal.c:1228 #, c-format msgid " -x, --next-transaction-id=XID set next transaction ID\n" msgstr " -x, --next-transaction-id=XID asigna el siguiente ID de transacción\n" -#: pg_resetwal.c:1215 +#: pg_resetwal.c:1229 #, c-format msgid " --char-signedness=OPTION set char signedness to \"signed\" or \"unsigned\"\n" msgstr " --char-signedness=OPCIÓN definir presencia de signo a «signed» o «unsigned»\n" -#: pg_resetwal.c:1216 +#: pg_resetwal.c:1230 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=TAMAÑO tamaño de segmentos de WAL, en megabytes\n" -#: pg_resetwal.c:1218 +#: pg_resetwal.c:1232 #, c-format msgid "" "\n" @@ -781,7 +776,7 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_resetwal.c:1219 +#: pg_resetwal.c:1233 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" diff --git a/src/bin/pg_resetwal/po/ja.po b/src/bin/pg_resetwal/po/ja.po index a2c7f52c8b8..131e8ccc4c0 100644 --- a/src/bin/pg_resetwal/po/ja.po +++ b/src/bin/pg_resetwal/po/ja.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_resetwal (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-04-30 10:33+0900\n" -"PO-Revision-Date: 2025-04-30 11:16+0900\n" +"POT-Creation-Date: 2025-11-17 11:43+0900\n" +"PO-Revision-Date: 2025-11-17 13:23+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -42,13 +42,13 @@ msgstr "詳細: " msgid "hint: " msgstr "ヒント: " -#: ../../common/controldata_utils.c:97 pg_resetwal.c:389 pg_resetwal.c:547 -#: pg_resetwal.c:595 +#: ../../common/controldata_utils.c:97 pg_resetwal.c:394 pg_resetwal.c:552 +#: pg_resetwal.c:600 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "ファイル\"%s\"を読み取り用にオープンできませんでした: %m" -#: ../../common/controldata_utils.c:110 pg_resetwal.c:556 pg_resetwal.c:610 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:561 pg_resetwal.c:615 #, c-format msgid "could not read file \"%s\": %m" msgstr "ファイル\"%s\"の読み取りに失敗しました: %m" @@ -82,12 +82,12 @@ msgstr "" #: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 #: ../../common/file_utils.c:370 ../../common/file_utils.c:428 -#: ../../common/file_utils.c:502 pg_resetwal.c:1158 +#: ../../common/file_utils.c:502 pg_resetwal.c:1163 #, c-format msgid "could not open file \"%s\": %m" msgstr "ファイル\"%s\"をオープンできませんでした: %m" -#: ../../common/controldata_utils.c:249 pg_resetwal.c:1166 pg_resetwal.c:1178 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1171 pg_resetwal.c:1183 #, c-format msgid "could not write file \"%s\": %m" msgstr "ファイル\"%s\"を書き出せませんでした: %m" @@ -126,13 +126,13 @@ msgid "this build does not support sync method \"%s\"" msgstr "このビルドでは同期方式\"%s\"をサポートしていません" #: ../../common/file_utils.c:156 ../../common/file_utils.c:304 -#: pg_resetwal.c:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 +#: pg_resetwal.c:957 pg_resetwal.c:1010 pg_resetwal.c:1045 pg_resetwal.c:1083 #, c-format msgid "could not open directory \"%s\": %m" msgstr "ディレクトリ\"%s\"をオープンできませんでした: %m" #: ../../common/file_utils.c:174 ../../common/file_utils.c:338 -#: pg_resetwal.c:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 +#: pg_resetwal.c:983 pg_resetwal.c:1024 pg_resetwal.c:1062 pg_resetwal.c:1097 #, c-format msgid "could not read directory \"%s\": %m" msgstr "ディレクトリ\"%s\"を読み取れませんでした: %m" @@ -188,152 +188,147 @@ msgid "unrecognized sync method: %s" msgstr "認識できない同期方式: %s" #. translator: the second %s is a command line argument (-e, etc) -#: pg_resetwal.c:166 pg_resetwal.c:179 pg_resetwal.c:192 pg_resetwal.c:205 -#: pg_resetwal.c:212 pg_resetwal.c:231 pg_resetwal.c:244 pg_resetwal.c:252 -#: pg_resetwal.c:272 pg_resetwal.c:283 pg_resetwal.c:317 +#: pg_resetwal.c:169 pg_resetwal.c:182 pg_resetwal.c:195 pg_resetwal.c:208 +#: pg_resetwal.c:215 pg_resetwal.c:234 pg_resetwal.c:247 pg_resetwal.c:255 +#: pg_resetwal.c:274 pg_resetwal.c:288 pg_resetwal.c:322 #, c-format msgid "invalid argument for option %s" msgstr "オプション%sの引数が不正です" -#: pg_resetwal.c:167 pg_resetwal.c:180 pg_resetwal.c:193 pg_resetwal.c:206 -#: pg_resetwal.c:213 pg_resetwal.c:232 pg_resetwal.c:245 pg_resetwal.c:253 -#: pg_resetwal.c:273 pg_resetwal.c:284 pg_resetwal.c:318 pg_resetwal.c:326 -#: pg_resetwal.c:339 pg_resetwal.c:346 +#: pg_resetwal.c:170 pg_resetwal.c:183 pg_resetwal.c:196 pg_resetwal.c:209 +#: pg_resetwal.c:216 pg_resetwal.c:235 pg_resetwal.c:248 pg_resetwal.c:256 +#: pg_resetwal.c:275 pg_resetwal.c:289 pg_resetwal.c:323 pg_resetwal.c:331 +#: pg_resetwal.c:344 pg_resetwal.c:351 #, c-format msgid "Try \"%s --help\" for more information." msgstr "詳細は\"%s --help\"を実行してください。" -#: pg_resetwal.c:171 +#: pg_resetwal.c:174 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "トランザクションIDの基点(-e)は-1にはできません" -#: pg_resetwal.c:184 +#: pg_resetwal.c:187 #, c-format msgid "oldest transaction ID (-u) must be greater than or equal to %u" msgstr "最古のトランザクションID(-u)は%uもしくはそれ以上でなければなりません" -#: pg_resetwal.c:197 +#: pg_resetwal.c:200 #, c-format msgid "transaction ID (-x) must be greater than or equal to %u" msgstr "トランザクションID(-x)は%uもしくはそれ以上でなければなりません" -#: pg_resetwal.c:219 pg_resetwal.c:223 +#: pg_resetwal.c:222 pg_resetwal.c:226 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "トランザクションID(-c)は%uまたは%u以上でなければなりません" -#: pg_resetwal.c:236 +#: pg_resetwal.c:239 #, c-format msgid "OID (-o) must not be 0" msgstr "OID(-o)は0にはできません" -#: pg_resetwal.c:257 -#, c-format -msgid "multitransaction ID (-m) must not be 0" -msgstr "マルチトランザクションID(-m)は0にはできません" - -#: pg_resetwal.c:264 +#: pg_resetwal.c:265 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "最古のマルチトランザクションID(-m)は0にはできません" -#: pg_resetwal.c:277 +#: pg_resetwal.c:279 #, c-format -msgid "multitransaction offset (-O) must not be -1" -msgstr "マルチトランザクションオフセット(-O)は-1にはできません" +msgid "multitransaction offset (-O) must be between 0 and %u" +msgstr "マルチトランザクションオフセット(-O)は0と%uとの間である必要があります" -#: pg_resetwal.c:303 +#: pg_resetwal.c:308 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "%sの引数は1から1024までの間の2の累乗でなければなりません" -#: pg_resetwal.c:337 +#: pg_resetwal.c:342 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "コマンドライン引数が多すぎます。(先頭は\"%s\")" -#: pg_resetwal.c:345 +#: pg_resetwal.c:350 #, c-format msgid "no data directory specified" msgstr "データディレクトリが指定されていません" -#: pg_resetwal.c:359 +#: pg_resetwal.c:364 #, c-format msgid "cannot be executed by \"root\"" msgstr "\"root\"では実行できません" -#: pg_resetwal.c:360 +#: pg_resetwal.c:365 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "PostgreSQLのスーパーユーザーで%sを実行しなければなりません" -#: pg_resetwal.c:370 +#: pg_resetwal.c:375 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "ディレクトリ\"%s\"の権限を読み取れませんでした: %m" -#: pg_resetwal.c:376 +#: pg_resetwal.c:381 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "ディレクトリ\"%s\"に移動できませんでした: %m" -#: pg_resetwal.c:394 +#: pg_resetwal.c:399 #, c-format msgid "lock file \"%s\" exists" msgstr "ロックファイル\"%s\"が存在します" -#: pg_resetwal.c:395 +#: pg_resetwal.c:400 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "サーバーが稼動していませんか? そうでなければロックファイルを削除し再実行してください。" -#: pg_resetwal.c:497 +#: pg_resetwal.c:502 #, c-format msgid "not proceeding because control file values were guessed" msgstr "制御ファイルの値が推測値であるため、処理をここで終了します" -#: pg_resetwal.c:498 +#: pg_resetwal.c:503 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "この値を許容できる場合は、-fを使用して強制リセットしてください。" -#: pg_resetwal.c:507 +#: pg_resetwal.c:512 #, c-format msgid "database server was not shut down cleanly" msgstr "ターゲットサーバーはクリーンにシャットダウンされていません" -#: pg_resetwal.c:508 +#: pg_resetwal.c:513 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "先行書き込みロ(WAL)グをリセットすると、データが失われる可能性があります。" -#: pg_resetwal.c:509 +#: pg_resetwal.c:514 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "とにかく続行したいという場合には、-f でリセットを強行できます。" -#: pg_resetwal.c:522 +#: pg_resetwal.c:527 #, c-format msgid "Write-ahead log reset\n" msgstr "先行書き込みログがリセットされました\n" -#: pg_resetwal.c:554 +#: pg_resetwal.c:559 #, c-format msgid "unexpected empty file \"%s\"" msgstr "想定外の空のファイル\"%s\"" -#: pg_resetwal.c:564 +#: pg_resetwal.c:569 #, c-format msgid "data directory is of wrong version" msgstr "データディレクトリのバージョンが違います" -#: pg_resetwal.c:565 +#: pg_resetwal.c:570 #, c-format msgid "File \"%s\" contains \"%s\", which is not compatible with this program's version \"%s\"." msgstr "ファイル\"%s\"では\"%s\"となっています、これはこのプログラムのバージョン\"%s\"と互換性がありません" -#: pg_resetwal.c:598 +#: pg_resetwal.c:603 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -344,23 +339,23 @@ msgstr "" " touch %s\n" "の後に再実行してください。" -#: pg_resetwal.c:626 +#: pg_resetwal.c:631 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "pg_controlがありましたが、CRCが不正でした; 注意して進めてください" -#: pg_resetwal.c:635 +#: pg_resetwal.c:640 #, c-format msgid "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" msgid_plural "pg_control specifies invalid WAL segment size (%d bytes); proceed with caution" msgstr[0] "pg_controlにあるWALセグメントサイズ(%dバイト)は不正です; 注意して進めてください" -#: pg_resetwal.c:646 +#: pg_resetwal.c:651 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "pg_controlがありましたが、破損あるいは間違ったバージョンです; 無視します" -#: pg_resetwal.c:741 +#: pg_resetwal.c:746 #, c-format msgid "" "Guessed pg_control values:\n" @@ -369,7 +364,7 @@ msgstr "" "pg_controlの推測値:\n" "\n" -#: pg_resetwal.c:743 +#: pg_resetwal.c:748 #, c-format msgid "" "Current pg_control values:\n" @@ -378,180 +373,180 @@ msgstr "" "現在のpg_controlの値:\n" "\n" -#: pg_resetwal.c:745 +#: pg_resetwal.c:750 #, c-format msgid "pg_control version number: %u\n" msgstr "pg_controlバージョン番号: %u\n" -#: pg_resetwal.c:747 +#: pg_resetwal.c:752 #, c-format msgid "Catalog version number: %u\n" msgstr "カタログバージョン番号: %u\n" -#: pg_resetwal.c:749 +#: pg_resetwal.c:754 #, c-format msgid "Database system identifier: %\n" msgstr "データベースシステム識別子: %\n" -#: pg_resetwal.c:751 +#: pg_resetwal.c:756 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "最終チェックポイントの時系列ID: %u\n" -#: pg_resetwal.c:753 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "最終チェックポイントのfull_page_writes: %s\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "off" msgstr "オフ" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "on" msgstr "オン" -#: pg_resetwal.c:755 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "最終チェックポイントのNextXID: %u:%u\n" -#: pg_resetwal.c:758 +#: pg_resetwal.c:763 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "最終チェックポイントのNextOID: %u\n" -#: pg_resetwal.c:760 +#: pg_resetwal.c:765 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "最終チェックポイントのNextMultiXactId: %u\n" -#: pg_resetwal.c:762 +#: pg_resetwal.c:767 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "最終チェックポイントのNextMultiOffset: %u\n" -#: pg_resetwal.c:764 +#: pg_resetwal.c:769 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "最終チェックポイントのoldestXID: %u\n" -#: pg_resetwal.c:766 +#: pg_resetwal.c:771 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "最終チェックポイントのoldestXIDのDB: %u\n" -#: pg_resetwal.c:768 +#: pg_resetwal.c:773 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "最終チェックポイントのoldestActiveXID: %u\n" -#: pg_resetwal.c:770 +#: pg_resetwal.c:775 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "最終チェックポイントのoldestMultiXid: %u\n" -#: pg_resetwal.c:772 +#: pg_resetwal.c:777 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "最終チェックポイントのoldestMultiのDB: %u\n" -#: pg_resetwal.c:774 +#: pg_resetwal.c:779 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "最終チェックポイントのoldestCommitTsXid: %u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:781 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "最終チェックポイントのnewestCommitTsXid: %u\n" -#: pg_resetwal.c:778 +#: pg_resetwal.c:783 #, c-format msgid "Maximum data alignment: %u\n" msgstr "最大データアラインメント: %u\n" -#: pg_resetwal.c:781 +#: pg_resetwal.c:786 #, c-format msgid "Database block size: %u\n" msgstr "データベースのブロックサイズ: %u\n" -#: pg_resetwal.c:783 +#: pg_resetwal.c:788 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "大きなリレーションのセグメント毎のブロック数:%u\n" -#: pg_resetwal.c:785 +#: pg_resetwal.c:790 #, c-format msgid "WAL block size: %u\n" msgstr "WALのブロックサイズ: %u\n" -#: pg_resetwal.c:787 pg_resetwal.c:875 +#: pg_resetwal.c:792 pg_resetwal.c:880 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "WALセグメント当たりのバイト数: %u\n" -#: pg_resetwal.c:789 +#: pg_resetwal.c:794 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "識別子の最大長: %u\n" -#: pg_resetwal.c:791 +#: pg_resetwal.c:796 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "インデックス内の最大列数: %u\n" -#: pg_resetwal.c:793 +#: pg_resetwal.c:798 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "TOASTチャンクの最大サイズ: %u\n" -#: pg_resetwal.c:795 +#: pg_resetwal.c:800 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "ラージオブジェクトチャンクのサイズ: %u\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:803 #, c-format msgid "Date/time type storage: %s\n" msgstr "日付/時刻型の格納方式: %s\n" -#: pg_resetwal.c:799 +#: pg_resetwal.c:804 msgid "64-bit integers" msgstr "64ビット整数" -#: pg_resetwal.c:800 +#: pg_resetwal.c:805 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Float8引数の渡し方: %s\n" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by reference" msgstr "参照渡し" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by value" msgstr "値渡し" -#: pg_resetwal.c:802 +#: pg_resetwal.c:807 #, c-format msgid "Data page checksum version: %u\n" msgstr "データベージチェックサムのバージョン: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:809 #, c-format msgid "Default char data signedness: %s\n" msgstr "デフォルトのchar型の符号あり/なし: %s\n" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "signed" msgstr "signed" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "unsigned" msgstr "unsigned" -#: pg_resetwal.c:818 +#: pg_resetwal.c:823 #, c-format msgid "" "\n" @@ -564,82 +559,82 @@ msgstr "" "変更される値:\n" "\n" -#: pg_resetwal.c:822 +#: pg_resetwal.c:827 #, c-format msgid "First log segment after reset: %s\n" msgstr "リセット後最初のWALセグメント: %s\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:831 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:833 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:830 +#: pg_resetwal.c:835 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "OldestMultiのDB: %u\n" -#: pg_resetwal.c:836 +#: pg_resetwal.c:841 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:842 +#: pg_resetwal.c:847 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:848 +#: pg_resetwal.c:853 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:850 +#: pg_resetwal.c:855 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:852 +#: pg_resetwal.c:857 #, c-format msgid "OldestXID's DB: %u\n" msgstr "OldestXIDのDB: %u\n" -#: pg_resetwal.c:858 +#: pg_resetwal.c:863 #, c-format msgid "NextXID epoch: %u\n" msgstr "NextXID基点: %u\n" -#: pg_resetwal.c:864 +#: pg_resetwal.c:869 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:869 +#: pg_resetwal.c:874 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "newestCommitTsXid: %u\n" -#: pg_resetwal.c:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 +#: pg_resetwal.c:986 pg_resetwal.c:1027 pg_resetwal.c:1065 pg_resetwal.c:1100 #, c-format msgid "could not close directory \"%s\": %m" msgstr "ディレクトリ\"%s\"をクローズできませんでした: %m" -#: pg_resetwal.c:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 +#: pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 #, c-format msgid "could not delete file \"%s\": %m" msgstr "ファイル\"%s\"を削除できませんでした: %m" -#: pg_resetwal.c:1183 +#: pg_resetwal.c:1188 #, c-format msgid "fsync error: %m" msgstr "fsyncエラー: %m" -#: pg_resetwal.c:1192 +#: pg_resetwal.c:1197 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -648,17 +643,17 @@ msgstr "" "%sはPostgreSQLの先行書き込みログをリセットします。\n" "\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1198 #, c-format msgid "Usage:\n" msgstr "使用方法:\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1199 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [OPTION]... DATADIR\n" -#: pg_resetwal.c:1196 +#: pg_resetwal.c:1201 #, c-format msgid "" "\n" @@ -667,12 +662,12 @@ msgstr "" "\n" "オプション:\n" -#: pg_resetwal.c:1197 +#: pg_resetwal.c:1202 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR データディレクトリ\n" -#: pg_resetwal.c:1198 +#: pg_resetwal.c:1203 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown or\n" @@ -681,22 +676,22 @@ msgstr "" " -f, --force クリーンではないシャットダウンの後、もしくはpg_control\n" " の値の推定が必要となった場合でも更新を強行する\n" -#: pg_resetwal.c:1200 +#: pg_resetwal.c:1205 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr " -n, --dry-run 更新をせず、単に何が行なわれるかを表示\n" -#: pg_resetwal.c:1201 +#: pg_resetwal.c:1206 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version バージョン情報を表示して終了\n" -#: pg_resetwal.c:1202 +#: pg_resetwal.c:1207 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help このヘルプを表示して終了\n" -#: pg_resetwal.c:1204 +#: pg_resetwal.c:1209 #, c-format msgid "" "\n" @@ -705,7 +700,7 @@ msgstr "" "\n" "制御ファイルの値を上書きするためのオプション:\n" -#: pg_resetwal.c:1205 +#: pg_resetwal.c:1210 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -716,52 +711,52 @@ msgstr "" " コミットタイムスタンプを持つ最古と最新の\n" " トランザクション(0は変更しないことを意味する)\n" -#: pg_resetwal.c:1208 +#: pg_resetwal.c:1213 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr " -e, --epoch=XIDEPOCH 次のトランザクションIDの基点を設定\n" -#: pg_resetwal.c:1209 +#: pg_resetwal.c:1214 #, c-format msgid " -l, --next-wal-file=WALFILE set minimum starting location for new WAL\n" msgstr " -l, --next-wal-file=WALFILE 新しいWALの最小開始ポイントを設定\n" -#: pg_resetwal.c:1210 +#: pg_resetwal.c:1215 #, c-format msgid " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" msgstr " -m, --multixact-ids=MXID,MXID 次および最古のマルチトランザクションIDを設定\n" -#: pg_resetwal.c:1211 +#: pg_resetwal.c:1216 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID 次のOIDを設定\n" -#: pg_resetwal.c:1212 +#: pg_resetwal.c:1217 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr " -O, --multixact-offset=OFFSET 次のマルチトランザクションオフセットを設定\n" -#: pg_resetwal.c:1213 +#: pg_resetwal.c:1218 #, c-format msgid " -u, --oldest-transaction-id=XID set oldest transaction ID\n" msgstr " -u, --oldest-transaction-id=XID 最古のトランザクションIDを設定\n" -#: pg_resetwal.c:1214 +#: pg_resetwal.c:1219 #, c-format msgid " -x, --next-transaction-id=XID set next transaction ID\n" msgstr " -x, --next-transaction-id=XID 次のトランザクションIDを設定\n" -#: pg_resetwal.c:1215 +#: pg_resetwal.c:1220 #, c-format msgid " --char-signedness=OPTION set char signedness to \"signed\" or \"unsigned\"\n" msgstr " --char-signedness=OPTION char型を符号付きまたは符号なしに設定する\n" -#: pg_resetwal.c:1216 +#: pg_resetwal.c:1221 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=SIZE WALセグメントのサイズ、単位はメガバイト\n" -#: pg_resetwal.c:1218 +#: pg_resetwal.c:1223 #, c-format msgid "" "\n" @@ -770,7 +765,10 @@ msgstr "" "\n" "バグは<%s>に報告してください。\n" -#: pg_resetwal.c:1219 +#: pg_resetwal.c:1224 #, c-format msgid "%s home page: <%s>\n" msgstr "%s ホームページ: <%s>\n" + +#~ msgid "multitransaction ID (-m) must not be 0" +#~ msgstr "マルチトランザクションID(-m)は0にはできません" diff --git a/src/bin/pg_resetwal/po/ka.po b/src/bin/pg_resetwal/po/ka.po index 033dd63d494..aa6269b6b57 100644 --- a/src/bin/pg_resetwal/po/ka.po +++ b/src/bin/pg_resetwal/po/ka.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_resetwal (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-05-02 22:20+0000\n" -"PO-Revision-Date: 2025-05-03 01:24+0200\n" +"POT-Creation-Date: 2025-11-14 21:20+0000\n" +"PO-Revision-Date: 2025-11-16 12:57+0100\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.5\n" +"X-Generator: Poedit 3.8\n" #: ../../../src/common/logging.c:279 #, c-format @@ -38,13 +38,13 @@ msgstr "დეტალები: " msgid "hint: " msgstr "მინიშნება: " -#: ../../common/controldata_utils.c:97 pg_resetwal.c:389 pg_resetwal.c:547 -#: pg_resetwal.c:595 +#: ../../common/controldata_utils.c:97 pg_resetwal.c:394 pg_resetwal.c:552 +#: pg_resetwal.c:600 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "ფაილის (%s) გახსნის შეცდომა: %m" -#: ../../common/controldata_utils.c:110 pg_resetwal.c:556 pg_resetwal.c:610 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:561 pg_resetwal.c:615 #, c-format msgid "could not read file \"%s\": %m" msgstr "ფაილის (%s) წაკითხვის შეცდომა: %m" @@ -77,12 +77,12 @@ msgstr "" #: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 #: ../../common/file_utils.c:370 ../../common/file_utils.c:428 -#: ../../common/file_utils.c:502 pg_resetwal.c:1158 +#: ../../common/file_utils.c:502 pg_resetwal.c:1163 #, c-format msgid "could not open file \"%s\": %m" msgstr "ფაილის (%s) გახსნის შეცდომა: %m" -#: ../../common/controldata_utils.c:249 pg_resetwal.c:1166 pg_resetwal.c:1178 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1171 pg_resetwal.c:1183 #, c-format msgid "could not write file \"%s\": %m" msgstr "ფაილში (%s) ჩაწერის შეცდომა: %m" @@ -121,13 +121,13 @@ msgid "this build does not support sync method \"%s\"" msgstr "ამ აგებას სინქრონიზაციის მეთოდის \"%s\" მხარდაჭერა არ გააჩნია" #: ../../common/file_utils.c:156 ../../common/file_utils.c:304 -#: pg_resetwal.c:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 +#: pg_resetwal.c:957 pg_resetwal.c:1010 pg_resetwal.c:1045 pg_resetwal.c:1083 #, c-format msgid "could not open directory \"%s\": %m" msgstr "საქაღალდის (%s) გახსნის შეცდომა: %m" #: ../../common/file_utils.c:174 ../../common/file_utils.c:338 -#: pg_resetwal.c:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 +#: pg_resetwal.c:983 pg_resetwal.c:1024 pg_resetwal.c:1062 pg_resetwal.c:1097 #, c-format msgid "could not read directory \"%s\": %m" msgstr "საქაღალდის (%s) წაკითხვის შეცდომა: %m" @@ -183,152 +183,147 @@ msgid "unrecognized sync method: %s" msgstr "უცნობი სინქრონიზაციის მეთოდი: \"%s\"" #. translator: the second %s is a command line argument (-e, etc) -#: pg_resetwal.c:166 pg_resetwal.c:179 pg_resetwal.c:192 pg_resetwal.c:205 -#: pg_resetwal.c:212 pg_resetwal.c:231 pg_resetwal.c:244 pg_resetwal.c:252 -#: pg_resetwal.c:272 pg_resetwal.c:283 pg_resetwal.c:317 +#: pg_resetwal.c:169 pg_resetwal.c:182 pg_resetwal.c:195 pg_resetwal.c:208 +#: pg_resetwal.c:215 pg_resetwal.c:234 pg_resetwal.c:247 pg_resetwal.c:255 +#: pg_resetwal.c:274 pg_resetwal.c:288 pg_resetwal.c:322 #, c-format msgid "invalid argument for option %s" msgstr "არასწორი არგუმენტი პარამეტრისთვის: %s" -#: pg_resetwal.c:167 pg_resetwal.c:180 pg_resetwal.c:193 pg_resetwal.c:206 -#: pg_resetwal.c:213 pg_resetwal.c:232 pg_resetwal.c:245 pg_resetwal.c:253 -#: pg_resetwal.c:273 pg_resetwal.c:284 pg_resetwal.c:318 pg_resetwal.c:326 -#: pg_resetwal.c:339 pg_resetwal.c:346 +#: pg_resetwal.c:170 pg_resetwal.c:183 pg_resetwal.c:196 pg_resetwal.c:209 +#: pg_resetwal.c:216 pg_resetwal.c:235 pg_resetwal.c:248 pg_resetwal.c:256 +#: pg_resetwal.c:275 pg_resetwal.c:289 pg_resetwal.c:323 pg_resetwal.c:331 +#: pg_resetwal.c:344 pg_resetwal.c:351 #, c-format msgid "Try \"%s --help\" for more information." msgstr "მეტი ინფორმაციისთვის სცადეთ '%s --help'." -#: pg_resetwal.c:171 +#: pg_resetwal.c:174 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "ტრანზაქციის ID-ის ეპოქა (-e) -1 არ უნდა იყოს" -#: pg_resetwal.c:184 +#: pg_resetwal.c:187 #, c-format msgid "oldest transaction ID (-u) must be greater than or equal to %u" msgstr "ძველი ტრანზაქციის ID (-u) %u-ზე მეტი ან ტოლი უნდა იყოს" -#: pg_resetwal.c:197 +#: pg_resetwal.c:200 #, c-format msgid "transaction ID (-x) must be greater than or equal to %u" msgstr "ტრანზაქციის ID (-x) %u_ზე მეტი ან ტოლი უნდა იყოს" -#: pg_resetwal.c:219 pg_resetwal.c:223 +#: pg_resetwal.c:222 pg_resetwal.c:226 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "ტრანზაქციის ID (-c) ან %u უნდა იყოს, ან %u-ზე მეტი ან ტოლი" -#: pg_resetwal.c:236 +#: pg_resetwal.c:239 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) 0 არ უნდა იყოს" -#: pg_resetwal.c:257 -#, c-format -msgid "multitransaction ID (-m) must not be 0" -msgstr "მულტიტრანზაქციის ID (-m) 0 არ უნდა იყო" - -#: pg_resetwal.c:264 +#: pg_resetwal.c:265 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "უძველესი მულტრანზაქციის ID (-m) 0 არ უნდა იყოს" -#: pg_resetwal.c:277 +#: pg_resetwal.c:279 #, c-format -msgid "multitransaction offset (-O) must not be -1" -msgstr "მულიტრანზაქციის წანაცვლება (-O) -1 არ უნდა იყოს" +msgid "multitransaction offset (-O) must be between 0 and %u" +msgstr "მულტიტრანზაქციის წანაცვლება (-O) უნდა იყოს შუალედიდან 0 და %u" -#: pg_resetwal.c:303 +#: pg_resetwal.c:308 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "%s-ის არგუმენტი 2-ის ხარისხი უნდა იყოს 1-1024 შუალედიდან" -#: pg_resetwal.c:337 +#: pg_resetwal.c:342 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "მეტისმეტად ბევრი ბრძანების-სტრიქონის არგუმენტი (პირველია \"%s\")" -#: pg_resetwal.c:345 +#: pg_resetwal.c:350 #, c-format msgid "no data directory specified" msgstr "მონაცემების საქაღალდე მითითებული არაა" -#: pg_resetwal.c:359 +#: pg_resetwal.c:364 #, c-format msgid "cannot be executed by \"root\"" msgstr "root-ით ვერ გაეშვება" -#: pg_resetwal.c:360 +#: pg_resetwal.c:365 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "%s PostgreSQL-ის ზემომხმარებლით უნდა გაუშვათ." -#: pg_resetwal.c:370 +#: pg_resetwal.c:375 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "საქაღალდის წვდომების წაკითხვა შეუძლებელია \"%s\": %m" -#: pg_resetwal.c:376 +#: pg_resetwal.c:381 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "საქაღალდის %s-ზე შეცვლის შეცდომა: %m" -#: pg_resetwal.c:394 +#: pg_resetwal.c:399 #, c-format msgid "lock file \"%s\" exists" msgstr "ბლოკის ფაილი არსებობს: %s" -#: pg_resetwal.c:395 +#: pg_resetwal.c:400 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "სერვერი გაშვებულია? თუ არა, წაშალეთ ბლოკის ფაილი და თავიდან სცადეთ." -#: pg_resetwal.c:497 +#: pg_resetwal.c:502 #, c-format msgid "not proceeding because control file values were guessed" msgstr "არ გავაგრძელებ, რადგან კონტროლი ფაილის მნიშვნელობებს ჩემით მივხვდი" -#: pg_resetwal.c:498 +#: pg_resetwal.c:503 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "თუ ეს მნიშვნელობები მისაღებია, ძალით ჩამოსაყრელად გამოიყენეთ -f ." -#: pg_resetwal.c:507 +#: pg_resetwal.c:512 #, c-format msgid "database server was not shut down cleanly" msgstr "მონაცემთა ბაზა წესების დაცვით არ გათიშულა" -#: pg_resetwal.c:508 +#: pg_resetwal.c:513 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "წინასწარ-ჩაწერადი ჟურნალის ჩამოყრამ, შეიძლება, მონაცემების დაკარგვა გამოიწვიოს." -#: pg_resetwal.c:509 +#: pg_resetwal.c:514 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "თუ ეს მნიშვნელობები მისაღებია, ძალით ჩამოსაყრელად გამოიყენეთ -f ." -#: pg_resetwal.c:522 +#: pg_resetwal.c:527 #, c-format msgid "Write-ahead log reset\n" msgstr "წინასწარ-ჩაწერი ჟურნალის საწყის მნიშვნელობაზე დაბრუნება\n" -#: pg_resetwal.c:554 +#: pg_resetwal.c:559 #, c-format msgid "unexpected empty file \"%s\"" msgstr "მოულოდნელად ფაილი ცარიელია: \"%s\"" -#: pg_resetwal.c:564 +#: pg_resetwal.c:569 #, c-format msgid "data directory is of wrong version" msgstr "მონაცემების საქაღალდე არასწორ ვერსიას ეკუთვნის" -#: pg_resetwal.c:565 +#: pg_resetwal.c:570 #, c-format msgid "File \"%s\" contains \"%s\", which is not compatible with this program's version \"%s\"." msgstr "ფაილი \"%s\" შეიცავს \"%s\"-ს, რომელიც ამ პროგრამის ვერსიასთან (%s) შეუთავსებელია." -#: pg_resetwal.c:598 +#: pg_resetwal.c:603 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -339,24 +334,24 @@ msgstr "" " touch %s\n" "და თავიდან სცადეთ." -#: pg_resetwal.c:626 +#: pg_resetwal.c:631 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "pg_control არსებობს, მაგრამ გააჩნია არასწორი CRC; ფრთხილად" -#: pg_resetwal.c:635 +#: pg_resetwal.c:640 #, c-format msgid "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" msgid_plural "pg_control specifies invalid WAL segment size (%d bytes); proceed with caution" msgstr[0] "pg_control WAL-ის არასწორი სეგმენტის ზომას (%d ბაიტი) მიუთითებს; ფრთხილად" msgstr[1] "pg_control WAL-ის არასწორი სეგმენტის ზომას (%d ბაიტი) მიუთითებს; ფრთხილად" -#: pg_resetwal.c:646 +#: pg_resetwal.c:651 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "pg_control არსებობს, მაგრამ ან გაფუჭებულია, ან ძველი ვერსია; იგნორირებულია" -#: pg_resetwal.c:741 +#: pg_resetwal.c:746 #, c-format msgid "" "Guessed pg_control values:\n" @@ -365,7 +360,7 @@ msgstr "" "Pg_control გამოცნობილი მნიშვნელობები:\n" "\n" -#: pg_resetwal.c:743 +#: pg_resetwal.c:748 #, c-format msgid "" "Current pg_control values:\n" @@ -374,180 +369,180 @@ msgstr "" "Pg_control მიმდინარე მნიშვნელობები:\n" "\n" -#: pg_resetwal.c:745 +#: pg_resetwal.c:750 #, c-format msgid "pg_control version number: %u\n" msgstr "pg_control ვერსიის ნომერი: %u\n" -#: pg_resetwal.c:747 +#: pg_resetwal.c:752 #, c-format msgid "Catalog version number: %u\n" msgstr "კატალოგის ვერსიის ნომერი: %u\n" -#: pg_resetwal.c:749 +#: pg_resetwal.c:754 #, c-format msgid "Database system identifier: %\n" msgstr "ბაზის სისტემური იდენტიფიკატორი: %\n" -#: pg_resetwal.c:751 +#: pg_resetwal.c:756 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "უახლესი საკონტროლო წერტილისTimeLineID: %u\n" -#: pg_resetwal.c:753 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "უახლესი უკანასკნელი საკონტროლო წერტილის full_page_writes: %s\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "off" msgstr "გამორთული" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "on" msgstr "ჩართ" -#: pg_resetwal.c:755 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "უახლესი საკონტროლო წერტილის NextXID: %u:%u\n" -#: pg_resetwal.c:758 +#: pg_resetwal.c:763 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "უახლესი საკონტროლო წერტილის NextOID: %u\n" -#: pg_resetwal.c:760 +#: pg_resetwal.c:765 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "უახლესი საკონტროლო წერტილის NextMultiXactId: %u\n" -#: pg_resetwal.c:762 +#: pg_resetwal.c:767 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "უახლესი საკონტროლო წერტილის NextMultiOffset: %u\n" -#: pg_resetwal.c:764 +#: pg_resetwal.c:769 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "უახლესი საკონტროლო წერტილის oldestXID: %u\n" -#: pg_resetwal.c:766 +#: pg_resetwal.c:771 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "უახლესი საკონტროლო წერტილის oldestXID's DB: %u\n" -#: pg_resetwal.c:768 +#: pg_resetwal.c:773 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "უახლესი საკონტროლო წერტილის oldestActiveXID: %u\n" -#: pg_resetwal.c:770 +#: pg_resetwal.c:775 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "უახლესი საკონტროლო წერტილის oldestMultiXid: %u\n" -#: pg_resetwal.c:772 +#: pg_resetwal.c:777 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "უახლესი საკონტროლო წერტილის oldestMulti's DB: %u\n" -#: pg_resetwal.c:774 +#: pg_resetwal.c:779 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "უახლესი საკონტროლო წერტილის oldestCommitTsXid:%u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:781 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "უახლესი საკონტროლო წერტილის newestCommitTsXid:%u\n" -#: pg_resetwal.c:778 +#: pg_resetwal.c:783 #, c-format msgid "Maximum data alignment: %u\n" msgstr "მონაცემების სწორების მაქსიმუმი: %u\n" -#: pg_resetwal.c:781 +#: pg_resetwal.c:786 #, c-format msgid "Database block size: %u\n" msgstr "ბაზის ბლოკის ზომა: %u\n" -#: pg_resetwal.c:783 +#: pg_resetwal.c:788 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "დიდი ურთიერთობის სეგმენტები თითოეულ ბლოკში: %u\n" -#: pg_resetwal.c:785 +#: pg_resetwal.c:790 #, c-format msgid "WAL block size: %u\n" msgstr "WAL ბლოკის ზომა: %u\n" -#: pg_resetwal.c:787 pg_resetwal.c:875 +#: pg_resetwal.c:792 pg_resetwal.c:880 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "ბაიტები თითოეულ WAL სეგმენტში: %u\n" -#: pg_resetwal.c:789 +#: pg_resetwal.c:794 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "იდენტიფიკატორების მაქსიმალური სიგრძე: %u\n" -#: pg_resetwal.c:791 +#: pg_resetwal.c:796 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "ინდექსში სვეტების მაქსიმალური რაოდენობა: %u\n" -#: pg_resetwal.c:793 +#: pg_resetwal.c:798 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "TOAST ნაგლეჯის მაქსიმალური ზომა: %u\n" -#: pg_resetwal.c:795 +#: pg_resetwal.c:800 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "დიდი ობიექტის ნაგლეჯის ზომა: %u\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:803 #, c-format msgid "Date/time type storage: %s\n" msgstr "თარიღის ტიპის საცავი: %s\n" -#: pg_resetwal.c:799 +#: pg_resetwal.c:804 msgid "64-bit integers" msgstr "64-ბიტიანი მთელ რიცხვები" -#: pg_resetwal.c:800 +#: pg_resetwal.c:805 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Float8 არგუმენტის გადაცემა: %s\n" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by reference" msgstr "ბმით" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by value" msgstr "მნიშვნელობით" -#: pg_resetwal.c:802 +#: pg_resetwal.c:807 #, c-format msgid "Data page checksum version: %u\n" msgstr "მონაცემების გვერდის საკონტროლო ჯამის ვერსია: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:809 #, c-format msgid "Default char data signedness: %s\n" msgstr "ნაგულისხმევი სტრიქონის მონაცემების ნიშნიანობა: %s\n" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "signed" msgstr "ნიშნიანი" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "unsigned" msgstr "უნიშნო" -#: pg_resetwal.c:818 +#: pg_resetwal.c:823 #, c-format msgid "" "\n" @@ -560,82 +555,82 @@ msgstr "" "შესაცვლელი მნიშვნელობები:\n" "\n" -#: pg_resetwal.c:822 +#: pg_resetwal.c:827 #, c-format msgid "First log segment after reset: %s\n" msgstr "საწყის მნიშვნელობაზე დაბრუნების შემდეგ ჟურნალის პირველი სეგმენტი: %s\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:831 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:833 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:830 +#: pg_resetwal.c:835 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "OldestMulti's DB: %u\n" -#: pg_resetwal.c:836 +#: pg_resetwal.c:841 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:842 +#: pg_resetwal.c:847 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:848 +#: pg_resetwal.c:853 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:850 +#: pg_resetwal.c:855 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:852 +#: pg_resetwal.c:857 #, c-format msgid "OldestXID's DB: %u\n" msgstr "OldestXID's DB: %u\n" -#: pg_resetwal.c:858 +#: pg_resetwal.c:863 #, c-format msgid "NextXID epoch: %u\n" msgstr "NextXID epoch: %u\n" -#: pg_resetwal.c:864 +#: pg_resetwal.c:869 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:869 +#: pg_resetwal.c:874 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "newestCommitTsXid: %u\n" -#: pg_resetwal.c:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 +#: pg_resetwal.c:986 pg_resetwal.c:1027 pg_resetwal.c:1065 pg_resetwal.c:1100 #, c-format msgid "could not close directory \"%s\": %m" msgstr "საქაღალდის %s-ზე დახურვის შეცდომა: %m" -#: pg_resetwal.c:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 +#: pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 #, c-format msgid "could not delete file \"%s\": %m" msgstr "ფაილის (\"%s\") წაშლის შეცდომა: %m" -#: pg_resetwal.c:1183 +#: pg_resetwal.c:1188 #, c-format msgid "fsync error: %m" msgstr "fsync error: %m" -#: pg_resetwal.c:1192 +#: pg_resetwal.c:1197 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -644,17 +639,17 @@ msgstr "" "%s PostgreSQL-ის წინასწარ-ჩაწერად ჟურნალს საწყის მნიშვნელობაზე აბრუნებს.\n" "\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1198 #, c-format msgid "Usage:\n" msgstr "გამოყენება:\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1199 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [პარამეტრი]... [მონაცემებისსაქაღალდე]\n" -#: pg_resetwal.c:1196 +#: pg_resetwal.c:1201 #, c-format msgid "" "\n" @@ -663,12 +658,12 @@ msgstr "" "\n" "პარამეტრები:\n" -#: pg_resetwal.c:1197 +#: pg_resetwal.c:1202 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR მონაცემების საქაღალდე\n" -#: pg_resetwal.c:1198 +#: pg_resetwal.c:1203 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown or\n" @@ -677,22 +672,22 @@ msgstr "" " -f, --force ნაძალადევი განახლების შესრულებას მას შემდეგაც კი, თუ პროცესი არასწორად გაითიშა,\n" " ან, თუ pg_control-ის მნიშვნელობების მიხვედრა მომიწია\n" -#: pg_resetwal.c:1200 +#: pg_resetwal.c:1205 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr " -n, --dry-run განახლების გარეშე. უბრალოდ ნაჩვენები იქნება, რა მოხდებოდა\n" -#: pg_resetwal.c:1201 +#: pg_resetwal.c:1206 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version ვერსიის ინფორმაციის გამოტანა და გასვლა\n" -#: pg_resetwal.c:1202 +#: pg_resetwal.c:1207 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help ამ დახმარების ჩვენება და გასვლა\n" -#: pg_resetwal.c:1204 +#: pg_resetwal.c:1209 #, c-format msgid "" "\n" @@ -701,7 +696,7 @@ msgstr "" "\n" "პარამეტრები კონტროლის ფაილის მნიშვნელობის გადასაფარად:\n" -#: pg_resetwal.c:1205 +#: pg_resetwal.c:1210 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -712,52 +707,52 @@ msgstr "" " უახლესი და უძველესი ტრანზაქციების მითითება,\n" " დროის შტამპის მატარებლით(0 ნიშნავს, რომ არ შეიცვლება)\n" -#: pg_resetwal.c:1208 +#: pg_resetwal.c:1213 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr " -e, --epoch=XIDEPOCH შემდეგი ტრანზაქციის ID-ის ეპოქსი დაყენება\n" -#: pg_resetwal.c:1209 +#: pg_resetwal.c:1214 #, c-format msgid " -l, --next-wal-file=WALFILE set minimum starting location for new WAL\n" msgstr " -l, --next-wal-file=WALFILE ახალი WAL-ის მინიმალური საწყისი მდებარეობის დაყენება\n" -#: pg_resetwal.c:1210 +#: pg_resetwal.c:1215 #, c-format msgid " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" msgstr " -m, --multixact-ids=MXID,MXID შემდეგი და უძველესი მულტრანზაქციის ID-ების დაყენება\n" -#: pg_resetwal.c:1211 +#: pg_resetwal.c:1216 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID შემდეგი OID-ის დაყენება\n" -#: pg_resetwal.c:1212 +#: pg_resetwal.c:1217 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr " -O, --multixact-offset=წანაცვლება შემდეგი მულტიტრანზაქციის წანაცვლების დაყენება\n" -#: pg_resetwal.c:1213 +#: pg_resetwal.c:1218 #, c-format msgid " -u, --oldest-transaction-id=XID set oldest transaction ID\n" msgstr " -u, --oldest-transaction-id=XID უძველესი ტრანზაქციის ID-ის დაყენება\n" -#: pg_resetwal.c:1214 +#: pg_resetwal.c:1219 #, c-format msgid " -x, --next-transaction-id=XID set next transaction ID\n" msgstr " -x, --next-transaction-id=XID შემდეგი ტრანზაქციის ID-ის დაყენება\n" -#: pg_resetwal.c:1215 +#: pg_resetwal.c:1220 #, c-format msgid " --char-signedness=OPTION set char signedness to \"signed\" or \"unsigned\"\n" msgstr " --char-signedness=OPTION სიმბოლოს ნიშნიანობის დაყენება \"signed\"-ზე, ან \"unsigned\"-ზე\n" -#: pg_resetwal.c:1216 +#: pg_resetwal.c:1221 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=ზომა WAL სეგმენტების ზომა, მეგაბაიტებში\n" -#: pg_resetwal.c:1218 +#: pg_resetwal.c:1223 #, c-format msgid "" "\n" @@ -766,7 +761,7 @@ msgstr "" "\n" "შეცდომების შესახებ მიწერეთ: %s\n" -#: pg_resetwal.c:1219 +#: pg_resetwal.c:1224 #, c-format msgid "%s home page: <%s>\n" msgstr "%s-ის საწყისი გვერდია: <%s>\n" @@ -822,3 +817,7 @@ msgstr "%s-ის საწყისი გვერდია: <%s>\n" #, c-format #~ msgid "could not load library \"%s\": error code %lu" #~ msgstr "ბიბლიოთეკის (\"%s\") ჩატვირთვის შეცდომა: შეცდომის კოდი: %lu" + +#, c-format +#~ msgid "multitransaction ID (-m) must not be 0" +#~ msgstr "მულტიტრანზაქციის ID (-m) 0 არ უნდა იყო" diff --git a/src/bin/pg_resetwal/po/ru.po b/src/bin/pg_resetwal/po/ru.po index b8faadb4eb9..b5c0ea47bb3 100644 --- a/src/bin/pg_resetwal/po/ru.po +++ b/src/bin/pg_resetwal/po/ru.po @@ -5,13 +5,13 @@ # Oleg Bartunov , 2004. # Sergey Burladyan , 2009. # Dmitriy Olshevskiy , 2014. -# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_resetxlog (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-30 15:59+0300\n" -"PO-Revision-Date: 2025-11-09 08:46+0200\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 09:15+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -41,13 +41,13 @@ msgstr "подробности: " msgid "hint: " msgstr "подсказка: " -#: ../../common/controldata_utils.c:97 pg_resetwal.c:389 pg_resetwal.c:547 -#: pg_resetwal.c:595 +#: ../../common/controldata_utils.c:97 pg_resetwal.c:394 pg_resetwal.c:552 +#: pg_resetwal.c:600 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "не удалось открыть файл \"%s\" для чтения: %m" -#: ../../common/controldata_utils.c:110 pg_resetwal.c:556 pg_resetwal.c:610 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:561 pg_resetwal.c:615 #, c-format msgid "could not read file \"%s\": %m" msgstr "не удалось прочитать файл \"%s\": %m" @@ -82,12 +82,12 @@ msgstr "" #: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 #: ../../common/file_utils.c:370 ../../common/file_utils.c:428 -#: ../../common/file_utils.c:502 pg_resetwal.c:1158 +#: ../../common/file_utils.c:502 pg_resetwal.c:1172 #, c-format msgid "could not open file \"%s\": %m" msgstr "не удалось открыть файл \"%s\": %m" -#: ../../common/controldata_utils.c:249 pg_resetwal.c:1166 pg_resetwal.c:1178 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1180 pg_resetwal.c:1192 #, c-format msgid "could not write file \"%s\": %m" msgstr "не удалось записать файл \"%s\": %m" @@ -126,13 +126,13 @@ msgid "this build does not support sync method \"%s\"" msgstr "эта сборка программы не поддерживает метод синхронизации \"%s\"" #: ../../common/file_utils.c:156 ../../common/file_utils.c:304 -#: pg_resetwal.c:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 +#: pg_resetwal.c:961 pg_resetwal.c:1014 pg_resetwal.c:1049 pg_resetwal.c:1089 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не удалось открыть каталог \"%s\": %m" #: ../../common/file_utils.c:174 ../../common/file_utils.c:338 -#: pg_resetwal.c:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 +#: pg_resetwal.c:987 pg_resetwal.c:1028 pg_resetwal.c:1066 pg_resetwal.c:1103 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не удалось прочитать каталог \"%s\": %m" @@ -188,154 +188,149 @@ msgid "unrecognized sync method: %s" msgstr "нераспознанный метод синхронизации: %s" #. translator: the second %s is a command line argument (-e, etc) -#: pg_resetwal.c:166 pg_resetwal.c:179 pg_resetwal.c:192 pg_resetwal.c:205 -#: pg_resetwal.c:212 pg_resetwal.c:231 pg_resetwal.c:244 pg_resetwal.c:252 -#: pg_resetwal.c:272 pg_resetwal.c:283 pg_resetwal.c:317 +#: pg_resetwal.c:169 pg_resetwal.c:182 pg_resetwal.c:195 pg_resetwal.c:208 +#: pg_resetwal.c:215 pg_resetwal.c:234 pg_resetwal.c:247 pg_resetwal.c:255 +#: pg_resetwal.c:274 pg_resetwal.c:288 pg_resetwal.c:322 #, c-format msgid "invalid argument for option %s" msgstr "недопустимый аргумент параметра %s" -#: pg_resetwal.c:167 pg_resetwal.c:180 pg_resetwal.c:193 pg_resetwal.c:206 -#: pg_resetwal.c:213 pg_resetwal.c:232 pg_resetwal.c:245 pg_resetwal.c:253 -#: pg_resetwal.c:273 pg_resetwal.c:284 pg_resetwal.c:318 pg_resetwal.c:326 -#: pg_resetwal.c:339 pg_resetwal.c:346 +#: pg_resetwal.c:170 pg_resetwal.c:183 pg_resetwal.c:196 pg_resetwal.c:209 +#: pg_resetwal.c:216 pg_resetwal.c:235 pg_resetwal.c:248 pg_resetwal.c:256 +#: pg_resetwal.c:275 pg_resetwal.c:289 pg_resetwal.c:323 pg_resetwal.c:331 +#: pg_resetwal.c:344 pg_resetwal.c:351 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Для дополнительной информации попробуйте \"%s --help\"." -#: pg_resetwal.c:171 +#: pg_resetwal.c:174 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "эпоха ID транзакции (-e) не должна быть равна -1" -#: pg_resetwal.c:184 +#: pg_resetwal.c:187 #, c-format msgid "oldest transaction ID (-u) must be greater than or equal to %u" msgstr "ID старейшей транзакции (-u) должен быть больше или равен %u" -#: pg_resetwal.c:197 +#: pg_resetwal.c:200 #, c-format msgid "transaction ID (-x) must be greater than or equal to %u" msgstr "ID транзакции (-x) должен быть больше или равен %u" -#: pg_resetwal.c:219 pg_resetwal.c:223 +#: pg_resetwal.c:222 pg_resetwal.c:226 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "ID транзакции (-c) должен быть равен %u, либо больше или равен %u" -#: pg_resetwal.c:236 +#: pg_resetwal.c:239 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) не должен быть равен 0" -#: pg_resetwal.c:257 -#, c-format -msgid "multitransaction ID (-m) must not be 0" -msgstr "ID мультитранзакции (-m) не должен быть равен 0" - -#: pg_resetwal.c:264 +#: pg_resetwal.c:265 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "ID старейшей мультитранзакции (-m) не должен быть равен 0" -#: pg_resetwal.c:277 +#: pg_resetwal.c:279 #, c-format -msgid "multitransaction offset (-O) must not be -1" -msgstr "смещение мультитранзакции (-O) не должно быть равно -1" +msgid "multitransaction offset (-O) must be between 0 and %u" +msgstr "смещение мультитранзакции (-O) должно быть от 0 до %u" -#: pg_resetwal.c:303 +#: pg_resetwal.c:308 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "аргументом %s должна быть степень двух от 1 до 1024" -#: pg_resetwal.c:337 +#: pg_resetwal.c:342 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "слишком много аргументов командной строки (первый: \"%s\")" -#: pg_resetwal.c:345 +#: pg_resetwal.c:350 #, c-format msgid "no data directory specified" msgstr "каталог данных не указан" -#: pg_resetwal.c:359 +#: pg_resetwal.c:364 #, c-format msgid "cannot be executed by \"root\"" msgstr "программу не должен запускать root" -#: pg_resetwal.c:360 +#: pg_resetwal.c:365 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Запускать %s нужно от имени суперпользователя PostgreSQL." -#: pg_resetwal.c:370 +#: pg_resetwal.c:375 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "не удалось прочитать права на каталог \"%s\": %m" -#: pg_resetwal.c:376 +#: pg_resetwal.c:381 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "не удалось перейти в каталог \"%s\": %m" -#: pg_resetwal.c:394 +#: pg_resetwal.c:399 #, c-format msgid "lock file \"%s\" exists" msgstr "файл блокировки \"%s\" существует" -#: pg_resetwal.c:395 +#: pg_resetwal.c:400 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "" "Возможно, сервер запущен? Если нет, удалите этот файл и попробуйте снова." -#: pg_resetwal.c:497 +#: pg_resetwal.c:502 #, c-format msgid "not proceeding because control file values were guessed" msgstr "" "выполнение прервано, так как значения из контрольного файла являются " "предполагаемыми" -#: pg_resetwal.c:498 +#: pg_resetwal.c:503 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "" "Если эти значения всё же приемлемы, выполните сброс принудительно, добавив " "ключ -f." -#: pg_resetwal.c:507 +#: pg_resetwal.c:512 #, c-format msgid "database server was not shut down cleanly" msgstr "сервер баз данных не был остановлен штатно" -#: pg_resetwal.c:508 +#: pg_resetwal.c:513 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "Сброс журнала предзаписи может привести к потере данных." -#: pg_resetwal.c:509 +#: pg_resetwal.c:514 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "" "Если вы всё же хотите продолжить, выполните сброс принудительно, добавив " "ключ -f." -#: pg_resetwal.c:522 +#: pg_resetwal.c:527 #, c-format msgid "Write-ahead log reset\n" msgstr "Журнал предзаписи сброшен\n" -#: pg_resetwal.c:554 +#: pg_resetwal.c:559 #, c-format msgid "unexpected empty file \"%s\"" msgstr "файл \"%s\" оказался пустым" -#: pg_resetwal.c:564 +#: pg_resetwal.c:569 #, c-format msgid "data directory is of wrong version" msgstr "каталог данных имеет неверную версию" -#: pg_resetwal.c:565 +#: pg_resetwal.c:570 #, c-format msgid "" "File \"%s\" contains \"%s\", which is not compatible with this program's " @@ -343,7 +338,7 @@ msgid "" msgstr "" "Файл \"%s\" содержит строку \"%s\", а ожидается версия программы \"%s\"." -#: pg_resetwal.c:598 +#: pg_resetwal.c:603 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -354,14 +349,14 @@ msgstr "" " touch %s\n" "и повторите попытку." -#: pg_resetwal.c:626 +#: pg_resetwal.c:631 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "" "pg_control существует, но его контрольная сумма неверна; продолжайте с " "осторожностью" -#: pg_resetwal.c:635 +#: pg_resetwal.c:640 #, c-format msgid "" "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" @@ -378,14 +373,14 @@ msgstr[2] "" "в pg_control указан некорректный размер сегмента WAL (%d Б); продолжайте с " "осторожностью" -#: pg_resetwal.c:646 +#: pg_resetwal.c:651 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "" "pg_control испорчен или имеет неизвестную либо недопустимую версию; " "игнорируется..." -#: pg_resetwal.c:741 +#: pg_resetwal.c:746 #, c-format msgid "" "Guessed pg_control values:\n" @@ -394,7 +389,7 @@ msgstr "" "Предполагаемые значения pg_control:\n" "\n" -#: pg_resetwal.c:743 +#: pg_resetwal.c:748 #, c-format msgid "" "Current pg_control values:\n" @@ -403,194 +398,194 @@ msgstr "" "Текущие значения pg_control:\n" "\n" -#: pg_resetwal.c:745 +#: pg_resetwal.c:750 #, c-format msgid "pg_control version number: %u\n" msgstr "Номер версии pg_control: %u\n" -#: pg_resetwal.c:747 +#: pg_resetwal.c:752 #, c-format msgid "Catalog version number: %u\n" msgstr "Номер версии каталога: %u\n" -#: pg_resetwal.c:749 +#: pg_resetwal.c:754 #, c-format msgid "Database system identifier: %\n" msgstr "Идентификатор системы баз данных: %\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:751 +#: pg_resetwal.c:756 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "Линия времени последней конт. точки: %u\n" # skip-rule: no-space-after-period -#: pg_resetwal.c:753 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "Режим full_page_writes последней к.т: %s\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "off" msgstr "выкл." -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "on" msgstr "вкл." # skip-rule: capital-letter-first -#: pg_resetwal.c:755 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "NextXID последней конт. точки: %u:%u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:758 +#: pg_resetwal.c:763 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "NextOID последней конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:760 +#: pg_resetwal.c:765 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "NextMultiXactId послед. конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:762 +#: pg_resetwal.c:767 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "NextMultiOffset послед. конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:764 +#: pg_resetwal.c:769 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "oldestXID последней конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:766 +#: pg_resetwal.c:771 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "БД с oldestXID последней конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:768 +#: pg_resetwal.c:773 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "oldestActiveXID последней к. т.: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:770 +#: pg_resetwal.c:775 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "oldestMultiXid последней конт. точки: %u\n" # skip-rule: capital-letter-first, double-space -#: pg_resetwal.c:772 +#: pg_resetwal.c:777 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "БД с oldestMulti последней к. т.: %u\n" # skip-rule: capital-letter-first, double-space -#: pg_resetwal.c:774 +#: pg_resetwal.c:779 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "oldestCommitTsXid последней к. т.: %u\n" # skip-rule: capital-letter-first, double-space -#: pg_resetwal.c:776 +#: pg_resetwal.c:781 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "newestCommitTsXid последней к. т.: %u\n" -#: pg_resetwal.c:778 +#: pg_resetwal.c:783 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Макс. предел выравнивания данных: %u\n" -#: pg_resetwal.c:781 +#: pg_resetwal.c:786 #, c-format msgid "Database block size: %u\n" msgstr "Размер блока БД: %u\n" # skip-rule: double-space -#: pg_resetwal.c:783 +#: pg_resetwal.c:788 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Блоков в макс. сегменте отношений: %u\n" -#: pg_resetwal.c:785 +#: pg_resetwal.c:790 #, c-format msgid "WAL block size: %u\n" msgstr "Размер блока WAL: %u\n" -#: pg_resetwal.c:787 pg_resetwal.c:875 +#: pg_resetwal.c:792 pg_resetwal.c:884 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Байт в сегменте WAL: %u\n" -#: pg_resetwal.c:789 +#: pg_resetwal.c:794 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Максимальная длина идентификаторов: %u\n" -#: pg_resetwal.c:791 +#: pg_resetwal.c:796 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "Макс. число столбцов в индексе: %u\n" -#: pg_resetwal.c:793 +#: pg_resetwal.c:798 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Максимальный размер порции TOAST: %u\n" -#: pg_resetwal.c:795 +#: pg_resetwal.c:800 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "Размер порции большого объекта: %u\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:803 #, c-format msgid "Date/time type storage: %s\n" msgstr "Формат хранения даты/времени: %s\n" -#: pg_resetwal.c:799 +#: pg_resetwal.c:804 msgid "64-bit integers" msgstr "64-битные целые" -#: pg_resetwal.c:800 +#: pg_resetwal.c:805 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Передача аргумента float8: %s\n" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by reference" msgstr "по ссылке" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by value" msgstr "по значению" -#: pg_resetwal.c:802 +#: pg_resetwal.c:807 #, c-format msgid "Data page checksum version: %u\n" msgstr "Версия контрольных сумм страниц: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:809 #, c-format msgid "Default char data signedness: %s\n" msgstr "Знаковость char по умолчанию: %s\n" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "signed" msgstr "знаковое" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "unsigned" msgstr "беззнаковое" -#: pg_resetwal.c:818 +#: pg_resetwal.c:823 #, c-format msgid "" "\n" @@ -603,82 +598,82 @@ msgstr "" "Значения, которые будут изменены:\n" "\n" -#: pg_resetwal.c:822 +#: pg_resetwal.c:827 #, c-format msgid "First log segment after reset: %s\n" msgstr "Первый сегмент журнала после сброса: %s\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:831 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:833 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:830 +#: pg_resetwal.c:835 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "БД с oldestMultiXid: %u\n" -#: pg_resetwal.c:836 +#: pg_resetwal.c:841 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:842 +#: pg_resetwal.c:847 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:848 +#: pg_resetwal.c:853 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:850 +#: pg_resetwal.c:859 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:852 +#: pg_resetwal.c:861 #, c-format msgid "OldestXID's DB: %u\n" msgstr "БД с oldestXID: %u\n" -#: pg_resetwal.c:858 +#: pg_resetwal.c:867 #, c-format msgid "NextXID epoch: %u\n" msgstr "Эпоха NextXID: %u\n" -#: pg_resetwal.c:864 +#: pg_resetwal.c:873 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:869 +#: pg_resetwal.c:878 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "newestCommitTsXid: %u\n" -#: pg_resetwal.c:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 +#: pg_resetwal.c:990 pg_resetwal.c:1031 pg_resetwal.c:1069 pg_resetwal.c:1106 #, c-format msgid "could not close directory \"%s\": %m" msgstr "не удалось закрыть каталог \"%s\": %m" -#: pg_resetwal.c:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 +#: pg_resetwal.c:1023 pg_resetwal.c:1061 pg_resetwal.c:1098 #, c-format msgid "could not delete file \"%s\": %m" msgstr "ошибка удаления файла \"%s\": %m" -#: pg_resetwal.c:1183 +#: pg_resetwal.c:1197 #, c-format msgid "fsync error: %m" msgstr "ошибка синхронизации с ФС: %m" -#: pg_resetwal.c:1192 +#: pg_resetwal.c:1206 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -687,17 +682,17 @@ msgstr "" "%s сбрасывает журнал предзаписи PostgreSQL.\n" "\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1207 #, c-format msgid "Usage:\n" msgstr "Использование:\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1208 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [ПАРАМЕТР]... КАТ_ДАННЫХ\n" -#: pg_resetwal.c:1196 +#: pg_resetwal.c:1210 #, c-format msgid "" "\n" @@ -706,12 +701,12 @@ msgstr "" "\n" "Параметры:\n" -#: pg_resetwal.c:1197 +#: pg_resetwal.c:1211 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]КАТ_ДАННЫХ каталог данных\n" -#: pg_resetwal.c:1198 +#: pg_resetwal.c:1212 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown " @@ -723,24 +718,24 @@ msgstr "" "нештатного\n" " отключения сервера\n" -#: pg_resetwal.c:1200 +#: pg_resetwal.c:1214 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr "" " -n, --dry-run показать, какие действия будут выполнены, но не\n" " выполнять их\n" -#: pg_resetwal.c:1201 +#: pg_resetwal.c:1215 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: pg_resetwal.c:1202 +#: pg_resetwal.c:1216 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_resetwal.c:1204 +#: pg_resetwal.c:1218 #, c-format msgid "" "\n" @@ -749,7 +744,7 @@ msgstr "" "\n" "Параметры, переопределяющие значения из контрольного файла:\n" -#: pg_resetwal.c:1205 +#: pg_resetwal.c:1219 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -761,13 +756,13 @@ msgstr "" " задать старейшую и новейшую транзакции,\n" " несущие метки времени (0 — не менять)\n" -#: pg_resetwal.c:1208 +#: pg_resetwal.c:1222 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr "" " -e, --epoch=XIDEPOCH задать эпоху для ID следующей транзакции\n" -#: pg_resetwal.c:1209 +#: pg_resetwal.c:1223 #, c-format msgid "" " -l, --next-wal-file=WALFILE set minimum starting location for new " @@ -776,7 +771,7 @@ msgstr "" " -l, --next-wal-file=ФАЙЛ_WAL задать минимальное начальное положение\n" " для нового WAL\n" -#: pg_resetwal.c:1210 +#: pg_resetwal.c:1224 #, c-format msgid "" " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" @@ -784,29 +779,29 @@ msgstr "" " -m, --multixact-ids=MXID,MXID задать ID следующей и старейшей\n" " мультитранзакции\n" -#: pg_resetwal.c:1211 +#: pg_resetwal.c:1225 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID задать следующий OID\n" -#: pg_resetwal.c:1212 +#: pg_resetwal.c:1226 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr "" " -O, --multixact-offset=СМЕЩЕНИЕ задать смещение следующей " "мультитранзакции\n" -#: pg_resetwal.c:1213 +#: pg_resetwal.c:1227 #, c-format msgid " -u, --oldest-transaction-id=XID set oldest transaction ID\n" msgstr " -u, --oldest-transaction-id=XID задать ID старейшей ID\n" -#: pg_resetwal.c:1214 +#: pg_resetwal.c:1228 #, c-format msgid " -x, --next-transaction-id=XID set next transaction ID\n" msgstr " -x, --next-transaction-id=XID задать ID следующей транзакции\n" -#: pg_resetwal.c:1215 +#: pg_resetwal.c:1229 #, c-format msgid "" " --char-signedness=OPTION set char signedness to \"signed\" or " @@ -815,13 +810,13 @@ msgstr "" " --char-signedness=ВАРИАНТ установить знаковость char: \"signed\" " "или \"unsigned\"\n" -#: pg_resetwal.c:1216 +#: pg_resetwal.c:1230 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr "" " --wal-segsize=РАЗМЕР размер сегментов WAL (в мегабайтах)\n" -#: pg_resetwal.c:1218 +#: pg_resetwal.c:1232 #, c-format msgid "" "\n" @@ -830,11 +825,15 @@ msgstr "" "\n" "Об ошибках сообщайте по адресу <%s>.\n" -#: pg_resetwal.c:1219 +#: pg_resetwal.c:1233 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" +#, c-format +#~ msgid "multitransaction ID (-m) must not be 0" +#~ msgstr "ID мультитранзакции (-m) не должен быть равен 0" + #, c-format #~ msgid "argument of --wal-segsize must be a number" #~ msgstr "аргументом --wal-segsize должно быть число" diff --git a/src/bin/pg_resetwal/po/sv.po b/src/bin/pg_resetwal/po/sv.po index db4a554daa7..ea6f60c0021 100644 --- a/src/bin/pg_resetwal/po/sv.po +++ b/src/bin/pg_resetwal/po/sv.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-05-16 16:20+0000\n" -"PO-Revision-Date: 2025-05-16 20:16+0200\n" +"POT-Creation-Date: 2026-02-02 01:50+0000\n" +"PO-Revision-Date: 2026-02-02 23:26+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -37,13 +37,13 @@ msgstr "detalj: " msgid "hint: " msgstr "tips: " -#: ../../common/controldata_utils.c:97 pg_resetwal.c:389 pg_resetwal.c:547 -#: pg_resetwal.c:595 +#: ../../common/controldata_utils.c:97 pg_resetwal.c:394 pg_resetwal.c:552 +#: pg_resetwal.c:600 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "kunde inte öppna filen \"%s\" för läsning: %m" -#: ../../common/controldata_utils.c:110 pg_resetwal.c:556 pg_resetwal.c:610 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:561 pg_resetwal.c:615 #, c-format msgid "could not read file \"%s\": %m" msgstr "kunde inte läsa fil \"%s\": %m" @@ -77,12 +77,12 @@ msgstr "" #: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 #: ../../common/file_utils.c:370 ../../common/file_utils.c:428 -#: ../../common/file_utils.c:502 pg_resetwal.c:1158 +#: ../../common/file_utils.c:502 pg_resetwal.c:1167 #, c-format msgid "could not open file \"%s\": %m" msgstr "kunde inte öppna fil \"%s\": %m" -#: ../../common/controldata_utils.c:249 pg_resetwal.c:1166 pg_resetwal.c:1178 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1175 pg_resetwal.c:1187 #, c-format msgid "could not write file \"%s\": %m" msgstr "kunde inte skriva fil \"%s\": %m" @@ -121,13 +121,13 @@ msgid "this build does not support sync method \"%s\"" msgstr "detta bygge stöder inte synkmetod \"%s\"" #: ../../common/file_utils.c:156 ../../common/file_utils.c:304 -#: pg_resetwal.c:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 +#: pg_resetwal.c:961 pg_resetwal.c:1014 pg_resetwal.c:1049 pg_resetwal.c:1087 #, c-format msgid "could not open directory \"%s\": %m" msgstr "kunde inte öppna katalog \"%s\": %m" #: ../../common/file_utils.c:174 ../../common/file_utils.c:338 -#: pg_resetwal.c:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 +#: pg_resetwal.c:987 pg_resetwal.c:1028 pg_resetwal.c:1066 pg_resetwal.c:1101 #, c-format msgid "could not read directory \"%s\": %m" msgstr "kunde inte läsa katalog \"%s\": %m" @@ -183,152 +183,147 @@ msgid "unrecognized sync method: %s" msgstr "okänd synkmetod: %s" #. translator: the second %s is a command line argument (-e, etc) -#: pg_resetwal.c:166 pg_resetwal.c:179 pg_resetwal.c:192 pg_resetwal.c:205 -#: pg_resetwal.c:212 pg_resetwal.c:231 pg_resetwal.c:244 pg_resetwal.c:252 -#: pg_resetwal.c:272 pg_resetwal.c:283 pg_resetwal.c:317 +#: pg_resetwal.c:169 pg_resetwal.c:182 pg_resetwal.c:195 pg_resetwal.c:208 +#: pg_resetwal.c:215 pg_resetwal.c:234 pg_resetwal.c:247 pg_resetwal.c:255 +#: pg_resetwal.c:274 pg_resetwal.c:288 pg_resetwal.c:322 #, c-format msgid "invalid argument for option %s" msgstr "ogiltigt argument för flaggan %s" -#: pg_resetwal.c:167 pg_resetwal.c:180 pg_resetwal.c:193 pg_resetwal.c:206 -#: pg_resetwal.c:213 pg_resetwal.c:232 pg_resetwal.c:245 pg_resetwal.c:253 -#: pg_resetwal.c:273 pg_resetwal.c:284 pg_resetwal.c:318 pg_resetwal.c:326 -#: pg_resetwal.c:339 pg_resetwal.c:346 +#: pg_resetwal.c:170 pg_resetwal.c:183 pg_resetwal.c:196 pg_resetwal.c:209 +#: pg_resetwal.c:216 pg_resetwal.c:235 pg_resetwal.c:248 pg_resetwal.c:256 +#: pg_resetwal.c:275 pg_resetwal.c:289 pg_resetwal.c:323 pg_resetwal.c:331 +#: pg_resetwal.c:344 pg_resetwal.c:351 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Försök med \"%s --help\" för mer information." -#: pg_resetwal.c:171 +#: pg_resetwal.c:174 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "Epoch (-e) för transaktions-ID får inte vara -1." -#: pg_resetwal.c:184 +#: pg_resetwal.c:187 #, c-format msgid "oldest transaction ID (-u) must be greater than or equal to %u" msgstr "äldsta transaktions-ID (-u) måste vara större än eller lika med %u" -#: pg_resetwal.c:197 +#: pg_resetwal.c:200 #, c-format msgid "transaction ID (-x) must be greater than or equal to %u" msgstr "transaktions-ID (-x) måste vara större än eller lika med %u" -#: pg_resetwal.c:219 pg_resetwal.c:223 +#: pg_resetwal.c:222 pg_resetwal.c:226 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "transaktions-ID (-c) måste antingen vara %u eller större än eller lika med %u" -#: pg_resetwal.c:236 +#: pg_resetwal.c:239 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) får inte vara 0." -#: pg_resetwal.c:257 -#, c-format -msgid "multitransaction ID (-m) must not be 0" -msgstr "Multitransaktions-ID (-m) får inte vara 0." - -#: pg_resetwal.c:264 +#: pg_resetwal.c:265 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "Äldsta multitransaktions-ID (-m) får inte vara 0." -#: pg_resetwal.c:277 +#: pg_resetwal.c:279 #, c-format -msgid "multitransaction offset (-O) must not be -1" -msgstr "Multitransaktionsoffset (-O) får inte vara -1." +msgid "multitransaction offset (-O) must be between 0 and %u" +msgstr "multitransaktionsoffset (-O) måste vara mellan 0 och %u" -#: pg_resetwal.c:303 +#: pg_resetwal.c:308 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "argumentet till %s måste vara en tvåpotens mellan 1 och 1024" -#: pg_resetwal.c:337 +#: pg_resetwal.c:342 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "för många kommandoradsargument (första är \"%s\")" -#: pg_resetwal.c:345 +#: pg_resetwal.c:350 #, c-format msgid "no data directory specified" msgstr "ingen datakatalog angiven" -#: pg_resetwal.c:359 +#: pg_resetwal.c:364 #, c-format msgid "cannot be executed by \"root\"" msgstr "kan inte köras av \"root\"" -#: pg_resetwal.c:360 +#: pg_resetwal.c:365 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Du måste köra %s som PostgreSQL:s superuser." -#: pg_resetwal.c:370 +#: pg_resetwal.c:375 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "kunde inte läsa rättigheter på katalog \"%s\": %m" -#: pg_resetwal.c:376 +#: pg_resetwal.c:381 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "kunde inte byta katalog till \"%s\": %m" -#: pg_resetwal.c:394 +#: pg_resetwal.c:399 #, c-format msgid "lock file \"%s\" exists" msgstr "låsfil med namn \"%s\" finns redan" -#: pg_resetwal.c:395 +#: pg_resetwal.c:400 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "Kör servern redan? Om inte, radera låsfilen och försök igen." -#: pg_resetwal.c:497 +#: pg_resetwal.c:502 #, c-format msgid "not proceeding because control file values were guessed" msgstr "fortsätter inte eftersom kontrollfilens värden har gissats" -#: pg_resetwal.c:498 +#: pg_resetwal.c:503 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "Om dessa värden verkar godtagbara, använd då -f för att framtvinga återställning." -#: pg_resetwal.c:507 +#: pg_resetwal.c:512 #, c-format msgid "database server was not shut down cleanly" msgstr "databasservern stångdes inte ner utan fel" -#: pg_resetwal.c:508 +#: pg_resetwal.c:513 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "Nollställa write-ahead-loggen kan göra att data förloras." -#: pg_resetwal.c:509 +#: pg_resetwal.c:514 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "Om du vill fortsätta ändå, använd -f för att framtvinga återställning." -#: pg_resetwal.c:522 +#: pg_resetwal.c:527 #, c-format msgid "Write-ahead log reset\n" msgstr "Återställning av write-ahead-log\n" -#: pg_resetwal.c:554 +#: pg_resetwal.c:559 #, c-format msgid "unexpected empty file \"%s\"" msgstr "oväntad tom fil \"%s\"" -#: pg_resetwal.c:564 +#: pg_resetwal.c:569 #, c-format msgid "data directory is of wrong version" msgstr "datakatalogen har fel version" -#: pg_resetwal.c:565 +#: pg_resetwal.c:570 #, c-format msgid "File \"%s\" contains \"%s\", which is not compatible with this program's version \"%s\"." msgstr "Filen \"%s\" innehåller \"%s\", vilket inte är kompatibelt med detta programmets version \"%s\"." -#: pg_resetwal.c:598 +#: pg_resetwal.c:603 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -338,24 +333,24 @@ msgstr "" "Om du är säker på att sökvägen till datakatalogen är riktig,\n" "utför då \"touch %s\" och försök sedan igen." -#: pg_resetwal.c:626 +#: pg_resetwal.c:631 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "pg_control existerar men har ogiltig CRC. Fortsätt med varsamhet." -#: pg_resetwal.c:635 +#: pg_resetwal.c:640 #, c-format msgid "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" msgid_plural "pg_control specifies invalid WAL segment size (%d bytes); proceed with caution" msgstr[0] "pg_control anger ogiltig WAL-segmentstorlek (%d byte); fortsätt med varsamhet." msgstr[1] "pg_control anger ogiltig WAL-segmentstorlek (%d byte); fortsätt med varsamhet." -#: pg_resetwal.c:646 +#: pg_resetwal.c:651 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "pg_control existerar men är trasig eller har fel version. Den ignoreras." -#: pg_resetwal.c:741 +#: pg_resetwal.c:746 #, c-format msgid "" "Guessed pg_control values:\n" @@ -364,7 +359,7 @@ msgstr "" "Gissade värden för pg_control:\n" "\n" -#: pg_resetwal.c:743 +#: pg_resetwal.c:748 #, c-format msgid "" "Current pg_control values:\n" @@ -376,181 +371,181 @@ msgstr "" # November 26th, 2014: Insert six additional space characters # for best alignment with Swedish translation. # Translations should be checked against those of pg_controldata. -#: pg_resetwal.c:745 +#: pg_resetwal.c:750 #, c-format msgid "pg_control version number: %u\n" msgstr "Versionsnummer för pg_control: %u\n" -#: pg_resetwal.c:747 +#: pg_resetwal.c:752 #, c-format msgid "Catalog version number: %u\n" msgstr "Katalogversion: %u\n" -#: pg_resetwal.c:749 +#: pg_resetwal.c:754 #, c-format msgid "Database system identifier: %\n" msgstr "Databasens systemidentifierare: %\n" -#: pg_resetwal.c:751 +#: pg_resetwal.c:756 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "TimeLineID vid senaste kontrollpunkt: %u\n" -#: pg_resetwal.c:753 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "Senaste kontrollpunktens full_page_writes: %s\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "off" msgstr "av" -#: pg_resetwal.c:754 +#: pg_resetwal.c:759 msgid "on" msgstr "på" -#: pg_resetwal.c:755 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "NextXID vid senaste kontrollpunkt: %u:%u\n" -#: pg_resetwal.c:758 +#: pg_resetwal.c:763 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "NextOID vid senaste kontrollpunkt: %u\n" -#: pg_resetwal.c:760 +#: pg_resetwal.c:765 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "NextMultiXactId vid senaste kontrollpunkt: %u\n" -#: pg_resetwal.c:762 +#: pg_resetwal.c:767 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "NextMultiOffset vid senaste kontrollpunkt: %u\n" -#: pg_resetwal.c:764 +#: pg_resetwal.c:769 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "oldestXID vid senaste kontrollpunkt: %u\n" -#: pg_resetwal.c:766 +#: pg_resetwal.c:771 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "DB för oldestXID vid senaste kontrollpunkt: %u\n" # FIXME: too wide -#: pg_resetwal.c:768 +#: pg_resetwal.c:773 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "oldestActiveXID vid senaste kontrollpunkt: %u\n" -#: pg_resetwal.c:770 +#: pg_resetwal.c:775 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "oldestMultiXid vid senaste kontrollpunkt: %u\n" -#: pg_resetwal.c:772 +#: pg_resetwal.c:777 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "DB för oldestMulti vid senaste kontrollpkt: %u\n" -#: pg_resetwal.c:774 +#: pg_resetwal.c:779 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "oldestCommitTsXid vid senaste kontrollpunkt:%u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:781 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "newestCommitTsXid vid senaste kontrollpunkt:%u\n" -#: pg_resetwal.c:778 +#: pg_resetwal.c:783 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Maximal jämkning av data (alignment): %u\n" -#: pg_resetwal.c:781 +#: pg_resetwal.c:786 #, c-format msgid "Database block size: %u\n" msgstr "Databasens blockstorlek: %u\n" -#: pg_resetwal.c:783 +#: pg_resetwal.c:788 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Block per segment i en stor relation: %u\n" -#: pg_resetwal.c:785 +#: pg_resetwal.c:790 #, c-format msgid "WAL block size: %u\n" msgstr "Blockstorlek i transaktionsloggen: %u\n" -#: pg_resetwal.c:787 pg_resetwal.c:875 +#: pg_resetwal.c:792 pg_resetwal.c:884 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Segmentstorlek i transaktionsloggen: %u\n" -#: pg_resetwal.c:789 +#: pg_resetwal.c:794 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Maximal längd för identifierare: %u\n" -#: pg_resetwal.c:791 +#: pg_resetwal.c:796 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "Maximalt antal kolonner i ett index: %u\n" -#: pg_resetwal.c:793 +#: pg_resetwal.c:798 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Maximal storlek för en TOAST-enhet: %u\n" -#: pg_resetwal.c:795 +#: pg_resetwal.c:800 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "Storlek för large-object-enheter: %u\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:803 #, c-format msgid "Date/time type storage: %s\n" msgstr "Representation av dag och tid: %s\n" -#: pg_resetwal.c:799 +#: pg_resetwal.c:804 msgid "64-bit integers" msgstr "64-bitars heltal" -#: pg_resetwal.c:800 +#: pg_resetwal.c:805 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Åtkomst till float8-argument: %s\n" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by reference" msgstr "referens" -#: pg_resetwal.c:801 +#: pg_resetwal.c:806 msgid "by value" msgstr "värdeåtkomst" -#: pg_resetwal.c:802 +#: pg_resetwal.c:807 #, c-format msgid "Data page checksum version: %u\n" msgstr "Checksummaversion för datasidor: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:809 #, c-format msgid "Default char data signedness: %s\n" msgstr "Standard signering för char-data: %s\n" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "signed" msgstr "signerad" -#: pg_resetwal.c:805 +#: pg_resetwal.c:810 msgid "unsigned" msgstr "osignerad" -#: pg_resetwal.c:818 +#: pg_resetwal.c:823 #, c-format msgid "" "\n" @@ -565,82 +560,82 @@ msgstr "" # November 26th, 2014: Insert additional spacing to fit # with the first translated text, which uses most characters. -#: pg_resetwal.c:822 +#: pg_resetwal.c:827 #, c-format msgid "First log segment after reset: %s\n" msgstr "Första loggsegment efter återställning: %s\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:831 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:833 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:830 +#: pg_resetwal.c:835 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "DB för OldestMulti: %u\n" -#: pg_resetwal.c:836 +#: pg_resetwal.c:841 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:842 +#: pg_resetwal.c:847 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:848 +#: pg_resetwal.c:853 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:850 +#: pg_resetwal.c:859 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:852 +#: pg_resetwal.c:861 #, c-format msgid "OldestXID's DB: %u\n" msgstr "DB för OldestXID: %u\n" -#: pg_resetwal.c:858 +#: pg_resetwal.c:867 #, c-format msgid "NextXID epoch: %u\n" msgstr "Epoch för NextXID: %u\n" -#: pg_resetwal.c:864 +#: pg_resetwal.c:873 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:869 +#: pg_resetwal.c:878 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "newestCommitTsXid: %u\n" -#: pg_resetwal.c:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 +#: pg_resetwal.c:990 pg_resetwal.c:1031 pg_resetwal.c:1069 pg_resetwal.c:1104 #, c-format msgid "could not close directory \"%s\": %m" msgstr "kunde inte stänga katalog \"%s\": %m" -#: pg_resetwal.c:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 +#: pg_resetwal.c:1023 pg_resetwal.c:1061 pg_resetwal.c:1096 #, c-format msgid "could not delete file \"%s\": %m" msgstr "kunde inte radera fil \"%s\": %m" -#: pg_resetwal.c:1183 +#: pg_resetwal.c:1192 #, c-format msgid "fsync error: %m" msgstr "misslyckad fsync: %m" -#: pg_resetwal.c:1192 +#: pg_resetwal.c:1201 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -649,17 +644,17 @@ msgstr "" "%s återställer write-ahead-log för PostgreSQL.\n" "\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1202 #, c-format msgid "Usage:\n" msgstr "Användning:\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1203 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [FLAGGA]... DATAKATALOG\n" -#: pg_resetwal.c:1196 +#: pg_resetwal.c:1205 #, c-format msgid "" "\n" @@ -668,12 +663,12 @@ msgstr "" "\n" "Flaggor:\n" -#: pg_resetwal.c:1197 +#: pg_resetwal.c:1206 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR datakatalog\n" -#: pg_resetwal.c:1198 +#: pg_resetwal.c:1207 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown or\n" @@ -682,22 +677,22 @@ msgstr "" " -f, --force tvinga uppdatering även om servern inte stängts ner\n" " korrekt eller om värden i pg_control har gissats\n" -#: pg_resetwal.c:1200 +#: pg_resetwal.c:1209 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr " -n, --dry-run ingen updatering; visa bara planerade åtgärder\n" -#: pg_resetwal.c:1201 +#: pg_resetwal.c:1210 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version visa versionsinformation, avsluta sedan\n" -#: pg_resetwal.c:1202 +#: pg_resetwal.c:1211 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help visa den här hjälpen, avsluta sedan\n" -#: pg_resetwal.c:1204 +#: pg_resetwal.c:1213 #, c-format msgid "" "\n" @@ -706,7 +701,7 @@ msgstr "" "\n" "Flaggor som övertrumfar värden i kontrollfilen:\n" -#: pg_resetwal.c:1205 +#: pg_resetwal.c:1214 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -718,52 +713,52 @@ msgstr "" " kan ha commit-tidstämpel (noll betyder\n" " ingen ändring)\n" -#: pg_resetwal.c:1208 +#: pg_resetwal.c:1217 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr " -e, --epoch=XIDEPOCH sätter epoch för nästa transaktions-ID\n" -#: pg_resetwal.c:1209 +#: pg_resetwal.c:1218 #, c-format msgid " -l, --next-wal-file=WALFILE set minimum starting location for new WAL\n" msgstr " -l, --next-wal-file=WALFIL sätt minsta startposition för ny WAL\n" -#: pg_resetwal.c:1210 +#: pg_resetwal.c:1219 #, c-format msgid " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" msgstr " -m, --multixact-ids=MXID,MXID sätt nästa och äldsta multitransaktions-ID\n" -#: pg_resetwal.c:1211 +#: pg_resetwal.c:1220 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID sätt nästa OID\n" -#: pg_resetwal.c:1212 +#: pg_resetwal.c:1221 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr " -O, --multixact-offset=OFFSET sätt nästa multitransaktionsoffset\n" -#: pg_resetwal.c:1213 +#: pg_resetwal.c:1222 #, c-format msgid " -u, --oldest-transaction-id=XID set oldest transaction ID\n" msgstr " -u, --oldest-transaction-id=XID sätt äldsta transaktions-ID\n" -#: pg_resetwal.c:1214 +#: pg_resetwal.c:1223 #, c-format msgid " -x, --next-transaction-id=XID set next transaction ID\n" msgstr " -x, --next-transaction-id=XID sätt nästa transaktions-ID\n" -#: pg_resetwal.c:1215 +#: pg_resetwal.c:1224 #, c-format msgid " --char-signedness=OPTION set char signedness to \"signed\" or \"unsigned\"\n" msgstr " --char-signedness=FLAGGA sätt signering för char till \"signed\" eller \"unsigned\"\n" -#: pg_resetwal.c:1216 +#: pg_resetwal.c:1225 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=STORLEK storlek på WAL-segment i megabyte\n" -#: pg_resetwal.c:1218 +#: pg_resetwal.c:1227 #, c-format msgid "" "\n" @@ -772,7 +767,7 @@ msgstr "" "\n" "Rapportera fel till <%s>.\n" -#: pg_resetwal.c:1219 +#: pg_resetwal.c:1228 #, c-format msgid "%s home page: <%s>\n" msgstr "hemsida för %s: <%s>\n" diff --git a/src/bin/pg_resetwal/po/uk.po b/src/bin/pg_resetwal/po/uk.po index 0b18f98387d..f596a1dac93 100644 --- a/src/bin/pg_resetwal/po/uk.po +++ b/src/bin/pg_resetwal/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:21+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:21+0000\n" +"PO-Revision-Date: 2026-01-02 15:48\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,36 +14,36 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_resetwal.pot\n" -"X-Crowdin-File-ID: 1010\n" +"X-Crowdin-File: /REL_18_STABLE/pg_resetwal.pot\n" +"X-Crowdin-File-ID: 1085\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " -#: ../../common/controldata_utils.c:97 pg_resetwal.c:370 pg_resetwal.c:525 -#: pg_resetwal.c:573 +#: ../../common/controldata_utils.c:97 pg_resetwal.c:394 pg_resetwal.c:552 +#: pg_resetwal.c:600 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "не вдалося відкрити файл \"%s\" для читання: %m" -#: ../../common/controldata_utils.c:110 pg_resetwal.c:534 pg_resetwal.c:588 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:561 pg_resetwal.c:615 #, c-format msgid "could not read file \"%s\": %m" msgstr "не вдалося прочитати файл \"%s\": %m" @@ -71,20 +71,20 @@ msgid "possible byte ordering mismatch\n" msgstr "можлива помилка у послідовності байтів.\n" "Порядок байтів, що використовують для зберігання файлу pg_control, може не відповідати тому, який використовується цією програмою. У такому випадку результати нижче будуть неправильним, і інсталяція PostgreSQL буде несумісною з цим каталогом даних." -#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:70 -#: ../../common/file_utils.c:347 ../../common/file_utils.c:406 -#: ../../common/file_utils.c:480 pg_resetwal.c:1134 +#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 +#: ../../common/file_utils.c:370 ../../common/file_utils.c:428 +#: ../../common/file_utils.c:502 pg_resetwal.c:1167 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: ../../common/controldata_utils.c:249 pg_resetwal.c:1142 pg_resetwal.c:1154 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1175 pg_resetwal.c:1187 #, c-format msgid "could not write file \"%s\": %m" msgstr "не вдалося записати файл \"%s\": %m" -#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:418 -#: ../../common/file_utils.c:488 +#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:440 +#: ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" @@ -100,35 +100,35 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 -#: pg_resetwal.c:928 pg_resetwal.c:981 pg_resetwal.c:1016 pg_resetwal.c:1054 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 +#: pg_resetwal.c:961 pg_resetwal.c:1014 pg_resetwal.c:1049 pg_resetwal.c:1087 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 -#: pg_resetwal.c:954 pg_resetwal.c:995 pg_resetwal.c:1033 pg_resetwal.c:1068 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 +#: pg_resetwal.c:987 pg_resetwal.c:1028 pg_resetwal.c:1066 pg_resetwal.c:1101 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -179,152 +179,147 @@ msgid "unrecognized sync method: %s" msgstr "нерозпізнаний метод синхронізації: %s" #. translator: the second %s is a command line argument (-e, etc) -#: pg_resetwal.c:164 pg_resetwal.c:177 pg_resetwal.c:190 pg_resetwal.c:203 -#: pg_resetwal.c:210 pg_resetwal.c:229 pg_resetwal.c:242 pg_resetwal.c:250 -#: pg_resetwal.c:270 pg_resetwal.c:281 +#: pg_resetwal.c:169 pg_resetwal.c:182 pg_resetwal.c:195 pg_resetwal.c:208 +#: pg_resetwal.c:215 pg_resetwal.c:234 pg_resetwal.c:247 pg_resetwal.c:255 +#: pg_resetwal.c:274 pg_resetwal.c:288 pg_resetwal.c:322 #, c-format msgid "invalid argument for option %s" msgstr "неприпустимий аргумент для параметру %s" -#: pg_resetwal.c:165 pg_resetwal.c:178 pg_resetwal.c:191 pg_resetwal.c:204 -#: pg_resetwal.c:211 pg_resetwal.c:230 pg_resetwal.c:243 pg_resetwal.c:251 -#: pg_resetwal.c:271 pg_resetwal.c:282 pg_resetwal.c:307 pg_resetwal.c:320 -#: pg_resetwal.c:327 +#: pg_resetwal.c:170 pg_resetwal.c:183 pg_resetwal.c:196 pg_resetwal.c:209 +#: pg_resetwal.c:216 pg_resetwal.c:235 pg_resetwal.c:248 pg_resetwal.c:256 +#: pg_resetwal.c:275 pg_resetwal.c:289 pg_resetwal.c:323 pg_resetwal.c:331 +#: pg_resetwal.c:344 pg_resetwal.c:351 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_resetwal.c:169 +#: pg_resetwal.c:174 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "епоха ID транзакції (-e) не повинна бути -1" -#: pg_resetwal.c:182 +#: pg_resetwal.c:187 #, c-format msgid "oldest transaction ID (-u) must be greater than or equal to %u" msgstr "найстаріший ID транзакції (-u) має бути більший або рівним %u" -#: pg_resetwal.c:195 +#: pg_resetwal.c:200 #, c-format msgid "transaction ID (-x) must be greater than or equal to %u" msgstr "ID транзакції (-x) має бути більшим чи рівним %u" -#: pg_resetwal.c:217 pg_resetwal.c:221 +#: pg_resetwal.c:222 pg_resetwal.c:226 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "ідентифікатор транзакції (-c) має бути або %u, або більше чи дорівнювати %u" -#: pg_resetwal.c:234 +#: pg_resetwal.c:239 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) не може бути 0" -#: pg_resetwal.c:255 -#, c-format -msgid "multitransaction ID (-m) must not be 0" -msgstr "ID мультитранзакції (-m) не повинен бути 0" - -#: pg_resetwal.c:262 +#: pg_resetwal.c:265 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "найстарший ID мультитранзакції (-m) не повинен бути 0" -#: pg_resetwal.c:275 +#: pg_resetwal.c:279 #, c-format -msgid "multitransaction offset (-O) must not be -1" -msgstr "зсув мультитранзакції (-O) не повинен бути -1" +msgid "multitransaction offset (-O) must be between 0 and %u" +msgstr "зсув мультитранзакції (O) повинен бути між 0 і %u" -#: pg_resetwal.c:301 +#: pg_resetwal.c:308 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "аргумент %s має бути ступенем двійки в діапазоні від 1 до 1024" -#: pg_resetwal.c:318 +#: pg_resetwal.c:342 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: pg_resetwal.c:326 +#: pg_resetwal.c:350 #, c-format msgid "no data directory specified" msgstr "каталог даних не вказано" -#: pg_resetwal.c:340 +#: pg_resetwal.c:364 #, c-format msgid "cannot be executed by \"root\"" msgstr "\"root\" не може це виконувати" -#: pg_resetwal.c:341 +#: pg_resetwal.c:365 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Запускати %s треба від суперкористувача PostgreSQL." -#: pg_resetwal.c:351 +#: pg_resetwal.c:375 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "не вдалося прочитати дозволи на каталог \"%s\": %m" -#: pg_resetwal.c:357 +#: pg_resetwal.c:381 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "не вдалося змінити каталог на \"%s\": %m" -#: pg_resetwal.c:375 +#: pg_resetwal.c:399 #, c-format msgid "lock file \"%s\" exists" msgstr "файл блокування \"%s\" вже існує" -#: pg_resetwal.c:376 +#: pg_resetwal.c:400 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "Чи запущений сервер? Якщо ні, видаліть файл блокування і спробуйте знову." -#: pg_resetwal.c:475 +#: pg_resetwal.c:502 #, c-format msgid "not proceeding because control file values were guessed" msgstr "не виконується, оскільки значення контрольного файлу були вгадані" -#: pg_resetwal.c:476 +#: pg_resetwal.c:503 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "Якщо ці значення здаються прийнятними, використовуйте -f для примусового скидання." -#: pg_resetwal.c:485 +#: pg_resetwal.c:512 #, c-format msgid "database server was not shut down cleanly" msgstr "сервер бази даних завершив роботу некоректно" -#: pg_resetwal.c:486 +#: pg_resetwal.c:513 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "Скидання журналу попереднього запису може призвести до втрати даних." -#: pg_resetwal.c:487 +#: pg_resetwal.c:514 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "Якщо ви все одно хочете продовжити, використовуйте -f для примусового скидання." -#: pg_resetwal.c:500 +#: pg_resetwal.c:527 #, c-format msgid "Write-ahead log reset\n" msgstr "Журнал передзапису скинуто\n" -#: pg_resetwal.c:532 +#: pg_resetwal.c:559 #, c-format msgid "unexpected empty file \"%s\"" msgstr "неочікуваний порожній файл \"%s\"" -#: pg_resetwal.c:542 +#: pg_resetwal.c:569 #, c-format msgid "data directory is of wrong version" msgstr "каталог даних неправильної версії" -#: pg_resetwal.c:543 +#: pg_resetwal.c:570 #, c-format msgid "File \"%s\" contains \"%s\", which is not compatible with this program's version \"%s\"." msgstr "Файл \"%s\" містить \"%s\", який не сумісний з версією цієї програми \"%s\"." -#: pg_resetwal.c:576 +#: pg_resetwal.c:603 #, c-format msgid "If you are sure the data directory path is correct, execute\n" " touch %s\n" @@ -333,12 +328,12 @@ msgstr "Якщо Ви впевнені, що шлях каталогу дани " touch %s\n" "і спробуйте знову." -#: pg_resetwal.c:604 +#: pg_resetwal.c:631 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "pg_control існує, але має недопустимий CRC; продовжуйте з обережністю" -#: pg_resetwal.c:613 +#: pg_resetwal.c:640 #, c-format msgid "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" msgid_plural "pg_control specifies invalid WAL segment size (%d bytes); proceed with caution" @@ -347,320 +342,333 @@ msgstr[1] "pg_control вказує неприпустимий розмір се msgstr[2] "pg_control вказує неприпустимий розмір сегмента WAL (%d байтів); продовжуйте з обережністю" msgstr[3] "pg_control вказує неприпустимий розмір сегмента WAL (%d байтів); продовжуйте з обережністю" -#: pg_resetwal.c:624 +#: pg_resetwal.c:651 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "pg_control існує, але зламаний або неправильної версії; ігнорується" -#: pg_resetwal.c:719 +#: pg_resetwal.c:746 #, c-format msgid "Guessed pg_control values:\n\n" msgstr "Припустимі значення pg_control:\n\n" -#: pg_resetwal.c:721 +#: pg_resetwal.c:748 #, c-format msgid "Current pg_control values:\n\n" msgstr "Поточні значення pg_control:\n\n" -#: pg_resetwal.c:723 +#: pg_resetwal.c:750 #, c-format msgid "pg_control version number: %u\n" msgstr "pg_control номер версії: %u\n" -#: pg_resetwal.c:725 +#: pg_resetwal.c:752 #, c-format msgid "Catalog version number: %u\n" msgstr "Номер версії каталогу: %u\n" -#: pg_resetwal.c:727 +#: pg_resetwal.c:754 #, c-format -msgid "Database system identifier: %llu\n" -msgstr "Системний ідентифікатор бази даних: %llu\n" +msgid "Database system identifier: %\n" +msgstr "Ідентифікатор системи бази даних: %\n" -#: pg_resetwal.c:729 +#: pg_resetwal.c:756 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "Останній TimeLineID контрольної точки: %u\n" -#: pg_resetwal.c:731 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "Останній full_page_writes контрольної точки: %s\n" -#: pg_resetwal.c:732 +#: pg_resetwal.c:759 msgid "off" msgstr "вимк" -#: pg_resetwal.c:732 +#: pg_resetwal.c:759 msgid "on" msgstr "увімк" -#: pg_resetwal.c:733 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "Останній NextXID контрольної точки: %u%u\n" -#: pg_resetwal.c:736 +#: pg_resetwal.c:763 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "Останній NextOID контрольної точки: %u\n" -#: pg_resetwal.c:738 +#: pg_resetwal.c:765 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "Останній NextMultiXactId контрольної точки: %u\n" -#: pg_resetwal.c:740 +#: pg_resetwal.c:767 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "Останній NextMultiOffset контрольної точки: %u\n" -#: pg_resetwal.c:742 +#: pg_resetwal.c:769 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "Останній oldestXID контрольної точки: %u\n" -#: pg_resetwal.c:744 +#: pg_resetwal.c:771 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "Остання DB останнього oldestXID контрольної точки: %u\n" -#: pg_resetwal.c:746 +#: pg_resetwal.c:773 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "Останній oldestActiveXID контрольної точки: %u\n" -#: pg_resetwal.c:748 +#: pg_resetwal.c:775 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "Останній oldestMultiXid контрольної точки: %u \n" -#: pg_resetwal.c:750 +#: pg_resetwal.c:777 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "Остання DB останньої oldestMulti контрольної точки: %u\n" -#: pg_resetwal.c:752 +#: pg_resetwal.c:779 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "Останній oldestCommitTsXid контрольної точки:%u\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:781 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "Останній newestCommitTsXid контрольної точки: %u\n" -#: pg_resetwal.c:756 +#: pg_resetwal.c:783 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Максимальне вирівнювання даних: %u\n" -#: pg_resetwal.c:759 +#: pg_resetwal.c:786 #, c-format msgid "Database block size: %u\n" msgstr "Розмір блоку бази даних: %u\n" -#: pg_resetwal.c:761 +#: pg_resetwal.c:788 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Блоків на сегмент великого відношення: %u\n" -#: pg_resetwal.c:763 +#: pg_resetwal.c:790 #, c-format msgid "WAL block size: %u\n" msgstr "Pозмір блоку WAL: %u\n" -#: pg_resetwal.c:765 pg_resetwal.c:851 +#: pg_resetwal.c:792 pg_resetwal.c:884 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Байтів на сегмент WAL: %u\n" -#: pg_resetwal.c:767 +#: pg_resetwal.c:794 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Максимальна довжина ідентифікаторів: %u\n" -#: pg_resetwal.c:769 +#: pg_resetwal.c:796 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "Максимальна кількість стовпців в індексі: %u\n" -#: pg_resetwal.c:771 +#: pg_resetwal.c:798 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Максимальний розмір сегменту TOAST: %u\n" -#: pg_resetwal.c:773 +#: pg_resetwal.c:800 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "Розмір сегменту великих обїєктів: %u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:803 #, c-format msgid "Date/time type storage: %s\n" msgstr "Дата/час типу сховища: %s\n" -#: pg_resetwal.c:777 +#: pg_resetwal.c:804 msgid "64-bit integers" msgstr "64-бітні цілі" -#: pg_resetwal.c:778 +#: pg_resetwal.c:805 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Передача аргументу Float8: %s\n" -#: pg_resetwal.c:779 +#: pg_resetwal.c:806 msgid "by reference" msgstr "за посиланням" -#: pg_resetwal.c:779 +#: pg_resetwal.c:806 msgid "by value" msgstr "за значенням" -#: pg_resetwal.c:780 +#: pg_resetwal.c:807 #, c-format msgid "Data page checksum version: %u\n" msgstr "Версія контрольних сум сторінок даних: %u\n" -#: pg_resetwal.c:794 +#: pg_resetwal.c:809 +#, c-format +msgid "Default char data signedness: %s\n" +msgstr "Знаковість символьних даних за замовчуванням: %s\n" + +#: pg_resetwal.c:810 +msgid "signed" +msgstr "знаковий" + +#: pg_resetwal.c:810 +msgid "unsigned" +msgstr "беззнаковий" + +#: pg_resetwal.c:823 #, c-format msgid "\n\n" "Values to be changed:\n\n" msgstr "\n\n" "Значення, що потребують зміни:\n\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:827 #, c-format msgid "First log segment after reset: %s\n" msgstr "Перший сегмент журналу після скидання: %s\n" -#: pg_resetwal.c:802 +#: pg_resetwal.c:831 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:833 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:806 +#: pg_resetwal.c:835 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "OldestMulti's DB: %u\n" -#: pg_resetwal.c:812 +#: pg_resetwal.c:841 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:818 +#: pg_resetwal.c:847 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:824 +#: pg_resetwal.c:853 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:859 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:861 #, c-format msgid "OldestXID's DB: %u\n" msgstr "OldestXID's DB: %u\n" -#: pg_resetwal.c:834 +#: pg_resetwal.c:867 #, c-format msgid "NextXID epoch: %u\n" msgstr "Епоха NextXID: %u\n" -#: pg_resetwal.c:840 +#: pg_resetwal.c:873 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:845 +#: pg_resetwal.c:878 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "newestCommitTsXid: %u\n" -#: pg_resetwal.c:957 pg_resetwal.c:998 pg_resetwal.c:1036 pg_resetwal.c:1071 +#: pg_resetwal.c:990 pg_resetwal.c:1031 pg_resetwal.c:1069 pg_resetwal.c:1104 #, c-format msgid "could not close directory \"%s\": %m" msgstr "не вдалося закрити каталог \"%s\": %m" -#: pg_resetwal.c:990 pg_resetwal.c:1028 pg_resetwal.c:1063 +#: pg_resetwal.c:1023 pg_resetwal.c:1061 pg_resetwal.c:1096 #, c-format msgid "could not delete file \"%s\": %m" msgstr "не вдалося видалити файл \"%s\": %m" -#: pg_resetwal.c:1159 +#: pg_resetwal.c:1192 #, c-format msgid "fsync error: %m" msgstr "помилка fsync: %m" -#: pg_resetwal.c:1168 +#: pg_resetwal.c:1201 #, c-format msgid "%s resets the PostgreSQL write-ahead log.\n\n" msgstr "%s скидає журнал передзапису PostgreSQL.\n\n" -#: pg_resetwal.c:1169 +#: pg_resetwal.c:1202 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_resetwal.c:1170 +#: pg_resetwal.c:1203 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [OPTION]... DATADIR\n" -#: pg_resetwal.c:1172 +#: pg_resetwal.c:1205 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: pg_resetwal.c:1173 +#: pg_resetwal.c:1206 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR каталог з даними\n" -#: pg_resetwal.c:1174 +#: pg_resetwal.c:1207 #, c-format msgid " -f, --force force update to be done even after unclean shutdown or\n" " if pg_control values had to be guessed\n" msgstr " -f, --force змусити оновлення виконуватися навіть після нечистого вимкнення або\n" " якщо значення pg_control потрібно було вгадувати\n" -#: pg_resetwal.c:1176 +#: pg_resetwal.c:1209 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr " -n, --dry-run не оновлювати, просто показати, що було б зроблено\n" -#: pg_resetwal.c:1177 +#: pg_resetwal.c:1210 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: pg_resetwal.c:1178 +#: pg_resetwal.c:1211 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку потім вийти\n" -#: pg_resetwal.c:1180 +#: pg_resetwal.c:1213 #, c-format msgid "\n" "Options to override control file values:\n" msgstr "\n" "Опції для перевизначення значень контрольного файлу:\n" -#: pg_resetwal.c:1181 +#: pg_resetwal.c:1214 #, c-format msgid " -c, --commit-timestamp-ids=XID,XID\n" " set oldest and newest transactions bearing\n" @@ -669,54 +677,59 @@ msgstr " -c, --commit-timestamp-ids=XID,XID\n" " встановити найстарішу та найновішу транзакції\n" " затвердити позначку часу (нуль означає залишити без змін)\n" -#: pg_resetwal.c:1184 +#: pg_resetwal.c:1217 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr " -e, --epoch=XIDEPOCH встановити наступну епоху ID транзакцій\n" -#: pg_resetwal.c:1185 +#: pg_resetwal.c:1218 #, c-format msgid " -l, --next-wal-file=WALFILE set minimum starting location for new WAL\n" msgstr " -l, --next-wal-file=WALFILE задати мінімальне початкове розташування для нового WAL\n" -#: pg_resetwal.c:1186 +#: pg_resetwal.c:1219 #, c-format msgid " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" msgstr " -m, --multixact-ids=MXID,MXID задати ID наступної і найстарішої мультитранзакції\n" -#: pg_resetwal.c:1187 +#: pg_resetwal.c:1220 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID задати наступний OID\n" -#: pg_resetwal.c:1188 +#: pg_resetwal.c:1221 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr " -O, --multixact-offset=OFFSET задати зсув наступної мультитранзакції\n" -#: pg_resetwal.c:1189 +#: pg_resetwal.c:1222 #, c-format msgid " -u, --oldest-transaction-id=XID set oldest transaction ID\n" msgstr " -u, --oldest-transaction-id=XID задати ID найстарішої транзакції\n" -#: pg_resetwal.c:1190 +#: pg_resetwal.c:1223 #, c-format msgid " -x, --next-transaction-id=XID set next transaction ID\n" msgstr " -x, --next-transaction-id=XID задати ID наступної транзакції\n" -#: pg_resetwal.c:1191 +#: pg_resetwal.c:1224 +#, c-format +msgid " --char-signedness=OPTION set char signedness to \"signed\" or \"unsigned\"\n" +msgstr " --char-signedness=OPTION встановити знаковість char в \"signed\" або \"unsigned\"\n" + +#: pg_resetwal.c:1225 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=SIZE розмір сегментів WAL, у мегабайтах\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1227 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1228 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" diff --git a/src/bin/pg_resetwal/t/001_basic.pl b/src/bin/pg_resetwal/t/001_basic.pl index d6bbbd0ceda..90ecb8afe18 100644 --- a/src/bin/pg_resetwal/t/001_basic.pl +++ b/src/bin/pg_resetwal/t/001_basic.pl @@ -119,10 +119,12 @@ [ 'pg_resetwal', '-m' => '10,bar', $node->data_dir ], qr/error: invalid argument for option -m/, 'fails with incorrect -m option part 2'); -command_fails_like( - [ 'pg_resetwal', '-m' => '0,10', $node->data_dir ], - qr/must not be 0/, - 'fails with -m value 0 part 1'); + +# This used to be forbidden, but nextMulti can legitimately be 0 after +# wraparound, so we now accept it in pg_resetwal too. +command_ok([ 'pg_resetwal', '-m' => '0,10', $node->data_dir ], + 'succeeds with -m value 0 part 1'); + command_fails_like( [ 'pg_resetwal', '-m' => '10,0', $node->data_dir ], qr/must not be 0/, @@ -143,7 +145,7 @@ 'fails with incorrect -O option'); command_fails_like( [ 'pg_resetwal', '-O' => '-1', $node->data_dir ], - qr/must not be -1/, + qr/must be between 0 and 4294967295/, 'fails with -O value -1'); # --wal-segsize command_fails_like( diff --git a/src/bin/pg_rewind/file_ops.c b/src/bin/pg_rewind/file_ops.c index 55659ce201f..649fdd15591 100644 --- a/src/bin/pg_rewind/file_ops.c +++ b/src/bin/pg_rewind/file_ops.c @@ -327,7 +327,7 @@ slurpFile(const char *datadir, const char *path, size_t *filesize) fullpath); if (fstat(fd, &statbuf) < 0) - pg_fatal("could not open file \"%s\" for reading: %m", + pg_fatal("could not stat file \"%s\": %m", fullpath); len = statbuf.st_size; diff --git a/src/bin/pg_rewind/po/es.po b/src/bin/pg_rewind/po/es.po index 77d731c1b8f..199af89c494 100644 --- a/src/bin/pg_rewind/po/es.po +++ b/src/bin/pg_rewind/po/es.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_rewind (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:22+0000\n" -"PO-Revision-Date: 2025-09-21 11:39+0200\n" +"POT-Creation-Date: 2026-02-06 23:21+0000\n" +"PO-Revision-Date: 2026-02-07 09:58+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -41,7 +41,7 @@ msgstr "detalle: " msgid "hint: " msgstr "consejo: " -#: ../../common/controldata_utils.c:97 file_ops.c:326 file_ops.c:330 +#: ../../common/controldata_utils.c:97 file_ops.c:326 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "no se pudo abrir archivo «%s» para lectura: %m" @@ -315,6 +315,12 @@ msgstr "no se pudo crear el link simbólico en «%s»: %m" msgid "could not remove symbolic link \"%s\": %m" msgstr "no se pudo eliminar el enlace simbólico «%s»: %m" +#: file_ops.c:330 +#, c-format +#| msgid "could not open file \"%s\" for reading: %m" +msgid "could not stat file \"%s\" for reading: %m" +msgstr "no se pudo hacer “stat” al archivo «%s» para lectura: %m" + #: file_ops.c:441 #, c-format msgid "could not read symbolic link \"%s\": %m" diff --git a/src/bin/pg_rewind/po/ru.po b/src/bin/pg_rewind/po/ru.po index d8591efa8a0..8fe863c097f 100644 --- a/src/bin/pg_rewind/po/ru.po +++ b/src/bin/pg_rewind/po/ru.po @@ -1,13 +1,13 @@ # Russian message translation file for pg_rewind # Copyright (C) 2015-2016 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# SPDX-FileCopyrightText: 2015-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2015-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_rewind (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-30 15:59+0300\n" -"PO-Revision-Date: 2025-09-13 18:56+0300\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 09:14+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -37,7 +37,7 @@ msgstr "подробности: " msgid "hint: " msgstr "подсказка: " -#: ../../common/controldata_utils.c:97 file_ops.c:326 file_ops.c:330 +#: ../../common/controldata_utils.c:97 file_ops.c:326 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "не удалось открыть файл \"%s\" для чтения: %m" @@ -314,6 +314,11 @@ msgstr "не удалось создать символическую ссылк msgid "could not remove symbolic link \"%s\": %m" msgstr "ошибка при удалении символической ссылки \"%s\": %m" +#: file_ops.c:330 +#, c-format +msgid "could not stat file \"%s\" for reading: %m" +msgstr "не удалось получить информацию о файле \"%s\" для чтения: %m" + #: file_ops.c:441 #, c-format msgid "could not read symbolic link \"%s\": %m" diff --git a/src/bin/pg_rewind/po/sv.po b/src/bin/pg_rewind/po/sv.po index 1ceed3419be..ed614e4ef5d 100644 --- a/src/bin/pg_rewind/po/sv.po +++ b/src/bin/pg_rewind/po/sv.po @@ -1,14 +1,14 @@ # Swedish message translation file for pg_rewind # Copyright (C) 2017 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# Dennis Björklund , 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025. +# Dennis Björklund , 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026. # msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-05-16 16:23+0000\n" -"PO-Revision-Date: 2025-05-16 20:19+0200\n" +"POT-Creation-Date: 2026-02-07 08:23+0000\n" +"PO-Revision-Date: 2026-02-07 09:30+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -37,7 +37,7 @@ msgstr "detalj: " msgid "hint: " msgstr "tips: " -#: ../../common/controldata_utils.c:97 file_ops.c:326 file_ops.c:330 +#: ../../common/controldata_utils.c:97 file_ops.c:326 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "kunde inte öppna filen \"%s\" för läsning: %m" @@ -310,6 +310,11 @@ msgstr "kunde inte skapa en symnbolisk länk vid \"%s\": %m" msgid "could not remove symbolic link \"%s\": %m" msgstr "kan inte ta bort symbolisk länk \"%s\": %m" +#: file_ops.c:330 +#, c-format +msgid "could not stat file \"%s\" for reading: %m" +msgstr "kunde inte göra stat() på filen \"%s\" för läsning: %m" + #: file_ops.c:441 #, c-format msgid "could not read symbolic link \"%s\": %m" @@ -923,147 +928,147 @@ msgstr "ogiltig postlängd vid %X/%X: förväntade minst %u, fick %u" msgid "contrecord is requested by %X/%X" msgstr "contrecord är begärd vid %X/%X" -#: xlogreader.c:670 xlogreader.c:1135 +#: xlogreader.c:670 xlogreader.c:1145 #, c-format msgid "invalid record length at %X/%X: expected at least %u, got %u" msgstr "ogiltig postlängd vid %X/%X: förväntade minst %u, fick %u" -#: xlogreader.c:759 +#: xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" msgstr "det finns ingen contrecord-flagga vid %X/%X" -#: xlogreader.c:772 +#: xlogreader.c:773 #, c-format msgid "invalid contrecord length %u (expected %lld) at %X/%X" msgstr "ogiltig contrecord-längd %u (förväntade %lld) vid %X/%X" -#: xlogreader.c:1143 +#: xlogreader.c:1153 #, c-format msgid "invalid resource manager ID %u at %X/%X" msgstr "ogiltigt resurshanterar-ID %u vid %X/%X" -#: xlogreader.c:1156 xlogreader.c:1172 +#: xlogreader.c:1166 xlogreader.c:1182 #, c-format msgid "record with incorrect prev-link %X/%X at %X/%X" msgstr "post med inkorrekt prev-link %X/%X vid %X/%X" -#: xlogreader.c:1210 +#: xlogreader.c:1220 #, c-format msgid "incorrect resource manager data checksum in record at %X/%X" msgstr "felaktig resurshanterardatakontrollsumma i post vid %X/%X" -#: xlogreader.c:1244 +#: xlogreader.c:1254 #, c-format msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "felaktigt magiskt nummer %04X i WAL-segment %s, LSN %X/%X, offset %u" -#: xlogreader.c:1259 xlogreader.c:1301 +#: xlogreader.c:1269 xlogreader.c:1311 #, c-format msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "ogiltiga infobitar %04X i WAL-segment %s, LSN %X/%X, offset %u" -#: xlogreader.c:1275 +#: xlogreader.c:1285 #, c-format msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" msgstr "WAL-fil är från ett annat databassystem: WAL-filens databassystemidentifierare är %, pg_control databassystemidentifierare är %" -#: xlogreader.c:1283 +#: xlogreader.c:1293 #, c-format msgid "WAL file is from different database system: incorrect segment size in page header" msgstr "WAL-fil är från ett annat databassystem: inkorrekt segmentstorlek i sidhuvud" -#: xlogreader.c:1289 +#: xlogreader.c:1299 #, c-format msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header" msgstr "WAL-fil är från ett annat databassystem: inkorrekt XLOG_BLCKSZ i sidhuvud" -#: xlogreader.c:1321 +#: xlogreader.c:1331 #, c-format msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u" msgstr "oväntad sidadress %X/%X i WAL-segment %s, LSN %X/%X, offset %u" -#: xlogreader.c:1347 +#: xlogreader.c:1357 #, c-format msgid "out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, offset %u" msgstr "ej-i-sekvens för tidslinje-ID %u (efter %u) i WAL-segment %s, LSN %X/%X, offset %u" -#: xlogreader.c:1759 +#: xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "ej-i-sekvens block_id %u vid %X/%X" -#: xlogreader.c:1783 +#: xlogreader.c:1793 #, c-format msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X" msgstr "BKPBLOCK_HAS_DATA är satt men ingen data inkluderad vid %X/%X" -#: xlogreader.c:1790 +#: xlogreader.c:1800 #, c-format msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X" msgstr "BKPBLOCK_HAS_DATA är ej satt men datalängden är %u vid %X/%X" -#: xlogreader.c:1826 +#: xlogreader.c:1836 #, c-format msgid "BKPIMAGE_HAS_HOLE set, but hole offset %u length %u block image length %u at %X/%X" msgstr "BKPIMAGE_HAS_HOLE är satt men håloffset %u längd %u blockavbildlängd %u vid %X/%X" -#: xlogreader.c:1842 +#: xlogreader.c:1852 #, c-format msgid "BKPIMAGE_HAS_HOLE not set, but hole offset %u length %u at %X/%X" msgstr "BKPIMAGE_HAS_HOLE är inte satt men håloffset %u längd %u vid %X/%X" -#: xlogreader.c:1856 +#: xlogreader.c:1866 #, c-format msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X" msgstr "BKPIMAGE_COMPRESSED är satt men blockavbildlängd %u vid %X/%X" -#: xlogreader.c:1871 +#: xlogreader.c:1881 #, c-format msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_COMPRESSED set, but block image length is %u at %X/%X" msgstr "varken BKPIMAGE_HAS_HOLE eller BKPIMAGE_COMPRESSED är satt men blockavbildlängd är %u vid %X/%X" -#: xlogreader.c:1887 +#: xlogreader.c:1897 #, c-format msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X" msgstr "BKPBLOCK_SAME_REL är satt men ingen tidigare rel vid %X/%X" -#: xlogreader.c:1899 +#: xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "ogiltig block_id %u vid %X/%X" -#: xlogreader.c:1966 +#: xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "post med ogiltig längd vid %X/%X" -#: xlogreader.c:1992 +#: xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "kunde inte hitta backup-block med ID %d i WAL-post" -#: xlogreader.c:2076 +#: xlogreader.c:2086 #, c-format msgid "could not restore image at %X/%X with invalid block %d specified" msgstr "kunde inte återställa avbild vid %X/%X med ogiltigt block %d angivet" -#: xlogreader.c:2083 +#: xlogreader.c:2093 #, c-format msgid "could not restore image at %X/%X with invalid state, block %d" msgstr "kunde inte återställa avbild vid %X/%X med ogiltigt state, block %d" -#: xlogreader.c:2110 xlogreader.c:2127 +#: xlogreader.c:2120 xlogreader.c:2137 #, c-format msgid "could not restore image at %X/%X compressed with %s not supported by build, block %d" msgstr "kunde inte återställa avbild vid %X/%X, komprimerad med %s stöds inte av bygget, block %d" -#: xlogreader.c:2136 +#: xlogreader.c:2146 #, c-format msgid "could not restore image at %X/%X compressed with unknown method, block %d" msgstr "kunde inte återställa avbild vid %X/%X, komprimerad med okänd metod, block %d" -#: xlogreader.c:2144 +#: xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "kunde inte packa upp avbild vid %X/%X, block %d" diff --git a/src/bin/pg_rewind/po/uk.po b/src/bin/pg_rewind/po/uk.po index dfcc9ac3269..bb7bf614ff2 100644 --- a/src/bin/pg_rewind/po/uk.po +++ b/src/bin/pg_rewind/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:23+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:23+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_rewind.pot\n" -"X-Crowdin-File-ID: 1030\n" +"X-Crowdin-File: /REL_18_STABLE/pg_rewind.pot\n" +"X-Crowdin-File-ID: 1093\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -42,19 +42,19 @@ msgstr "підказка: " msgid "could not open file \"%s\" for reading: %m" msgstr "не вдалося відкрити файл \"%s\" для читання: %m" -#: ../../common/controldata_utils.c:110 file_ops.c:341 local_source.c:104 -#: local_source.c:163 parsexlog.c:350 +#: ../../common/controldata_utils.c:110 file_ops.c:341 local_source.c:102 +#: local_source.c:161 parsexlog.c:371 #, c-format msgid "could not read file \"%s\": %m" msgstr "не вдалося прочитати файл \"%s\": %m" -#: ../../common/controldata_utils.c:119 file_ops.c:344 parsexlog.c:352 +#: ../../common/controldata_utils.c:119 file_ops.c:344 parsexlog.c:373 #, c-format msgid "could not read file \"%s\": read %d of %zu" msgstr "не вдалося прочитати файл \"%s\": прочитано %d з %zu" #: ../../common/controldata_utils.c:132 ../../common/controldata_utils.c:280 -#: local_source.c:121 local_source.c:172 +#: local_source.c:119 local_source.c:170 #, c-format msgid "could not close file \"%s\": %m" msgstr "неможливо закрити файл \"%s\": %m" @@ -72,10 +72,10 @@ msgid "possible byte ordering mismatch\n" msgstr "можлива помилка у послідовності байтів.\n" "Порядок байтів, що використовують для зберігання файлу pg_control, може не відповідати тому, який використовується цією програмою. У такому випадку результати нижче будуть неправильним, і інсталяція PostgreSQL буде несумісною з цим каталогом даних." -#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:70 -#: ../../common/file_utils.c:347 ../../common/file_utils.c:406 -#: ../../common/file_utils.c:480 ../../fe_utils/recovery_gen.c:140 -#: parsexlog.c:312 +#: ../../common/controldata_utils.c:230 ../../common/file_utils.c:69 +#: ../../common/file_utils.c:370 ../../common/file_utils.c:428 +#: ../../common/file_utils.c:502 ../../fe_utils/recovery_gen.c:141 +#: parsexlog.c:333 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" @@ -85,8 +85,8 @@ msgstr "не можливо відкрити файл \"%s\": %m" msgid "could not write file \"%s\": %m" msgstr "не вдалося записати файл \"%s\": %m" -#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:418 -#: ../../common/file_utils.c:488 +#: ../../common/controldata_utils.c:268 ../../common/file_utils.c:440 +#: ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" @@ -102,34 +102,34 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #: ../../fe_utils/archive.c:86 file_ops.c:417 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 file_ops.c:388 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 file_ops.c:388 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 file_ops.c:462 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 file_ops.c:462 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -214,29 +214,34 @@ msgstr "%s має бути в діапазоні %d..%d" msgid "unrecognized sync method: %s" msgstr "нерозпізнаний метод синхронізації: %s" -#: ../../fe_utils/recovery_gen.c:39 ../../fe_utils/recovery_gen.c:50 -#: ../../fe_utils/recovery_gen.c:89 ../../fe_utils/recovery_gen.c:109 -#: ../../fe_utils/recovery_gen.c:168 +#: ../../fe_utils/recovery_gen.c:40 ../../fe_utils/recovery_gen.c:51 +#: ../../fe_utils/recovery_gen.c:90 ../../fe_utils/recovery_gen.c:110 +#: ../../fe_utils/recovery_gen.c:169 ../../fe_utils/recovery_gen.c:230 #, c-format msgid "out of memory" msgstr "недостатньо пам'яті" -#: ../../fe_utils/recovery_gen.c:143 +#: ../../fe_utils/recovery_gen.c:144 #, c-format msgid "could not write to file \"%s\": %m" msgstr "неможливо записати до файлу \"%s\": %m" -#: ../../fe_utils/recovery_gen.c:152 +#: ../../fe_utils/recovery_gen.c:153 #, c-format msgid "could not create file \"%s\": %m" msgstr "неможливо створити файл \"%s\": %m" -#: ../../fe_utils/string_utils.c:434 +#: ../../fe_utils/recovery_gen.c:215 pg_rewind.c:311 +#, c-format +msgid "%s" +msgstr "%s" + +#: ../../fe_utils/string_utils.c:587 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"\n" msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" -#: ../../fe_utils/string_utils.c:607 +#: ../../fe_utils/string_utils.c:760 #, c-format msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" @@ -316,177 +321,177 @@ msgstr "таргет символічного посилання \"%s\" задо msgid "could not close directory \"%s\": %m" msgstr "не вдалося закрити каталог \"%s\": %m" -#: filemap.c:235 +#: filemap.c:298 #, c-format msgid "data file \"%s\" in source is not a regular file" msgstr "файл даних \"%s\" в джерелі не є регулярним файлом" -#: filemap.c:240 filemap.c:273 +#: filemap.c:303 filemap.c:336 #, c-format msgid "duplicate source file \"%s\"" msgstr "дублікат вихідного файлу \"%s\"" -#: filemap.c:328 +#: filemap.c:391 #, c-format msgid "unexpected page modification for non-regular file \"%s\"" msgstr "неочікувана модифікація сторінки для нерегулярного файлу \"%s\"" -#: filemap.c:682 filemap.c:776 +#: filemap.c:744 filemap.c:846 #, c-format msgid "unknown file type for \"%s\"" msgstr "невідомий тип файлу для \"%s\"" -#: filemap.c:709 +#: filemap.c:779 #, c-format msgid "file \"%s\" is of different type in source and target" msgstr "файл \"%s\" має різні типи у джерелі та цілі" -#: filemap.c:781 +#: filemap.c:851 #, c-format msgid "could not decide what to do with file \"%s\"" msgstr "не вдалося вирішити, що робити з файлом \"%s\"" -#: libpq_source.c:131 +#: libpq_source.c:130 #, c-format msgid "could not clear \"search_path\": %s" msgstr "не вдалося очистити \"search_path\": %s" -#: libpq_source.c:142 +#: libpq_source.c:141 #, c-format msgid "\"full_page_writes\" must be enabled in the source server" msgstr "\"full_page_writes\" слід ввімкнути на вихідному сервері" -#: libpq_source.c:153 +#: libpq_source.c:152 #, c-format msgid "could not prepare statement to fetch file contents: %s" msgstr "не вдалося підготувати інструкцію щоб отримати вміст файлу: %s" -#: libpq_source.c:172 +#: libpq_source.c:171 #, c-format msgid "error running query (%s) on source server: %s" msgstr "помилка при виконанні запиту (%s) на вихідному сервері: %s" -#: libpq_source.c:177 +#: libpq_source.c:176 #, c-format msgid "unexpected result set from query" msgstr "неочікуваний результат запиту" -#: libpq_source.c:199 +#: libpq_source.c:198 #, c-format msgid "error running query (%s) in source server: %s" msgstr "помилка при виконанні запиту (%s) на початковому сервері: %s" -#: libpq_source.c:220 +#: libpq_source.c:219 #, c-format msgid "unrecognized result \"%s\" for current WAL insert location" msgstr "нерозпізнаний результат \"%s\" замість поточної добавленої позиції WAL" -#: libpq_source.c:271 +#: libpq_source.c:270 #, c-format msgid "could not fetch file list: %s" msgstr "не вдалося отримати список файлів: %s" -#: libpq_source.c:276 +#: libpq_source.c:275 #, c-format msgid "unexpected result set while fetching file list" msgstr "неочікуваний результат при отриманні списку файлів" -#: libpq_source.c:477 +#: libpq_source.c:476 #, c-format msgid "could not send query: %s" msgstr "не вдалося надіслати запит: %s" -#: libpq_source.c:480 +#: libpq_source.c:479 #, c-format msgid "could not set libpq connection to single row mode" msgstr "не вдалося встановити libpq з'єднання для однорядкового режиму" -#: libpq_source.c:510 +#: libpq_source.c:509 #, c-format msgid "unexpected result while fetching remote files: %s" msgstr "неочікуваний результат при отриманні віддалених файлів: %s" -#: libpq_source.c:515 +#: libpq_source.c:514 #, c-format msgid "received more data chunks than requested" msgstr "отримано більше фрагментів даних, ніж запитувалось" -#: libpq_source.c:519 +#: libpq_source.c:518 #, c-format msgid "unexpected result set size while fetching remote files" msgstr "неочікуваний розмір набору результатів при отриманні віддалених файлів" -#: libpq_source.c:525 +#: libpq_source.c:524 #, c-format msgid "unexpected data types in result set while fetching remote files: %u %u %u" msgstr "неочікувані типи даних в результаті при отриманні віддалених файлів: %u %u %u" -#: libpq_source.c:533 +#: libpq_source.c:532 #, c-format msgid "unexpected result format while fetching remote files" msgstr "неочікуваний формат результату при отриманні віддалених файлів" -#: libpq_source.c:539 +#: libpq_source.c:538 #, c-format msgid "unexpected null values in result while fetching remote files" msgstr "неочікувані нульові значення в результаті при отриманні віддалених файлів" -#: libpq_source.c:543 +#: libpq_source.c:542 #, c-format msgid "unexpected result length while fetching remote files" msgstr "неочікувана довжина результату при отриманні віддалених файлів" -#: libpq_source.c:576 +#: libpq_source.c:575 #, c-format msgid "received data for file \"%s\", when requested for \"%s\"" msgstr "отримані дані для файлу \"%s\", коли запитувалось для \"%s\"" -#: libpq_source.c:580 +#: libpq_source.c:579 #, c-format -msgid "received data at offset %lld of file \"%s\", when requested for offset %lld" -msgstr "отримано дані по зсуву %lld файлу \"%s\", коли запитувалось про зсув %lld" +msgid "received data at offset % of file \"%s\", when requested for offset %lld" +msgstr "отримано дані по зсуву % файлу \"%s\", коли запитувалось про зсув %lld" -#: libpq_source.c:592 +#: libpq_source.c:591 #, c-format msgid "received more than requested for file \"%s\"" msgstr "отримано більше, ніж запитувалось для файлу \"%s\"" -#: libpq_source.c:605 +#: libpq_source.c:604 #, c-format msgid "unexpected number of data chunks received" msgstr "отримано неочікувану кількість фрагментів даних" -#: libpq_source.c:648 +#: libpq_source.c:647 #, c-format msgid "could not fetch remote file \"%s\": %s" msgstr "не вдалося отримати віддалений файл \"%s\": %s" -#: libpq_source.c:653 +#: libpq_source.c:652 #, c-format msgid "unexpected result set while fetching remote file \"%s\"" msgstr "неочікуваний набір результатів при отриманні віддаленого файлу \"%s\"" -#: local_source.c:90 local_source.c:142 +#: local_source.c:88 local_source.c:140 #, c-format msgid "could not open source file \"%s\": %m" msgstr "не вдалося відкрити вихідний файл \"%s\": %m" -#: local_source.c:117 +#: local_source.c:115 #, c-format msgid "size of source file \"%s\" changed concurrently: %d bytes expected, %d copied" msgstr "розмір вихідного файлу \"%s\" паралельно змінився: очікувалося %d байт, %d скопійовано" -#: local_source.c:146 +#: local_source.c:144 #, c-format msgid "could not seek in source file: %m" msgstr "не вдалося знайти у вихідному файлі: %m" -#: local_source.c:165 +#: local_source.c:163 #, c-format msgid "unexpected EOF while reading file \"%s\"" msgstr "неочікуваний кінець при читанні файлу \"%s\"" -#: parsexlog.c:80 parsexlog.c:139 parsexlog.c:199 +#: parsexlog.c:80 parsexlog.c:139 parsexlog.c:201 #, c-format msgid "out of memory while allocating a WAL reading processor" msgstr "недостатньо пам'яті під час виділення обробника читання WAL" @@ -506,22 +511,22 @@ msgstr "не вдалося прочитати запис WAL на %X/%X" msgid "end pointer %X/%X is not a valid end point; expected %X/%X" msgstr "кінцевий покажчик %X/%X не є допустимою кінцевою точкою; очікувалось %X/%X" -#: parsexlog.c:212 +#: parsexlog.c:214 #, c-format msgid "could not find previous WAL record at %X/%X: %s" msgstr "не вдалося знайти попередній запис WAL на %X/%X: %s" -#: parsexlog.c:216 +#: parsexlog.c:218 #, c-format msgid "could not find previous WAL record at %X/%X" msgstr "не вдалося знайти попередній запис WAL на %X/%X" -#: parsexlog.c:341 +#: parsexlog.c:362 #, c-format msgid "could not seek in file \"%s\": %m" msgstr "не вдалося знайти в файлі \"%s\": %m" -#: parsexlog.c:440 +#: parsexlog.c:461 #, c-format msgid "WAL record modifies a relation, but record type is not recognized: lsn: %X/%X, rmid: %d, rmgr: %s, info: %02X" msgstr "WAL модифікує відношення, але тип запису не розпізнано: lsn: %X/%X, rmid: %d, rmgr: %s, info: %02X" @@ -678,11 +683,6 @@ msgstr "Запускати %s треба від суперкористувача msgid "could not read permissions of directory \"%s\": %m" msgstr "не вдалося прочитати дозволи на каталог \"%s\": %m" -#: pg_rewind.c:311 -#, c-format -msgid "%s" -msgstr "%s" - #: pg_rewind.c:314 #, c-format msgid "connected to server" @@ -703,112 +703,112 @@ msgstr "сервери розійшлись в позиції WAL %X/%X на л msgid "no rewind required" msgstr "перемотування не потрібне" -#: pg_rewind.c:460 +#: pg_rewind.c:464 #, c-format msgid "rewinding from last common checkpoint at %X/%X on timeline %u" msgstr "перемотування від останньої спільної контрольної точки на %X/%X на лінії часу %u" -#: pg_rewind.c:470 +#: pg_rewind.c:474 #, c-format msgid "reading source file list" msgstr "читання списку файлів із джерела" -#: pg_rewind.c:474 +#: pg_rewind.c:478 #, c-format msgid "reading target file list" msgstr "читання списку цільових файлів" -#: pg_rewind.c:483 +#: pg_rewind.c:487 #, c-format msgid "reading WAL in target" msgstr "читання WAL у цілі" -#: pg_rewind.c:504 +#: pg_rewind.c:508 #, c-format msgid "need to copy %lu MB (total source directory size is %lu MB)" msgstr "треба скопіювати %lu МБ (загальний розмір каталогу джерела становить %lu МБ)" -#: pg_rewind.c:522 +#: pg_rewind.c:526 #, c-format msgid "syncing target data directory" msgstr "синхронізація цільового каталогу даних" -#: pg_rewind.c:538 +#: pg_rewind.c:543 #, c-format msgid "Done!" msgstr "Готово!" -#: pg_rewind.c:618 +#: pg_rewind.c:623 #, c-format msgid "no action decided for file \"%s\"" msgstr "жодних дій щодо файлу \"%s\" не прийнято" -#: pg_rewind.c:650 +#: pg_rewind.c:655 #, c-format msgid "source system was modified while pg_rewind was running" msgstr "вихідну систему було змінено під час роботи pg_rewind" -#: pg_rewind.c:654 +#: pg_rewind.c:659 #, c-format msgid "creating backup label and updating control file" msgstr "створення мітки резервного копіювання і оновлення контрольного файлу" -#: pg_rewind.c:704 +#: pg_rewind.c:709 #, c-format msgid "source system was in unexpected state at end of rewind" msgstr "вихідна система була в неочікуваному стані наприкінці перемотування" -#: pg_rewind.c:736 +#: pg_rewind.c:741 #, c-format msgid "source and target clusters are from different systems" msgstr "початковий і цільовий кластер належать до різних систем" -#: pg_rewind.c:744 +#: pg_rewind.c:749 #, c-format msgid "clusters are not compatible with this version of pg_rewind" msgstr "кластери не сумісні з даною версією pg_rewind" -#: pg_rewind.c:754 +#: pg_rewind.c:759 #, c-format msgid "target server needs to use either data checksums or \"wal_log_hints = on\"" msgstr "цільовий сервер потребує використання контрольної суми даних або \"wal_log_hints = on\"" -#: pg_rewind.c:765 +#: pg_rewind.c:770 #, c-format msgid "target server must be shut down cleanly" msgstr "цільовий сервер повинен бути вимкненим штатно" -#: pg_rewind.c:775 +#: pg_rewind.c:780 #, c-format msgid "source data directory must be shut down cleanly" msgstr "робота з початковим каталогом даних повинна бути завершена штатно" -#: pg_rewind.c:822 +#: pg_rewind.c:827 #, c-format msgid "%*s/%s kB (%d%%) copied" msgstr "скопійовано %*s/%s кБ (%d%%)" -#: pg_rewind.c:948 +#: pg_rewind.c:953 #, c-format msgid "could not find common ancestor of the source and target cluster's timelines" msgstr "не вдалося знайти спільного предка ліній часу початкового та цільового кластерів" -#: pg_rewind.c:989 +#: pg_rewind.c:994 #, c-format msgid "backup label buffer too small" msgstr "буфер для мітки резервного копіювання замалий" -#: pg_rewind.c:1012 +#: pg_rewind.c:1017 #, c-format msgid "unexpected control file CRC" msgstr "неочікуваний контрольний файл CRC" -#: pg_rewind.c:1024 +#: pg_rewind.c:1029 #, c-format msgid "unexpected control file size %d, expected %d" msgstr "неочікуваний розмір контрольного файлу %d, очікувалося %d" -#: pg_rewind.c:1034 +#: pg_rewind.c:1039 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -817,42 +817,42 @@ msgstr[1] "невірний розмір сегмента WAL у файлі ке msgstr[2] "невірний розмір сегмента WAL у файлі керування (%d байтів)" msgstr[3] "невірний розмір сегмента WAL у файлі керування (%d байтів)" -#: pg_rewind.c:1038 +#: pg_rewind.c:1043 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "Розмір сегмента WAL повинен бути степенем двійки від 1 МБ до 1 ГБ." -#: pg_rewind.c:1075 pg_rewind.c:1143 +#: pg_rewind.c:1080 pg_rewind.c:1148 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "програма \"%s\" потрібна для %s, але не знайдена в тому ж каталозі, що й \"%s\"" -#: pg_rewind.c:1078 pg_rewind.c:1146 +#: pg_rewind.c:1083 pg_rewind.c:1151 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "програма \"%s\" знайдена для \"%s\", але має відмінну версію від %s" -#: pg_rewind.c:1107 +#: pg_rewind.c:1112 #, c-format -msgid "could not read restore_command from target cluster" +msgid "could not read \"restore_command\" from target cluster" msgstr "не вдалося прочитати \"restore_command\" з цільового кластеру" -#: pg_rewind.c:1112 +#: pg_rewind.c:1117 #, c-format msgid "\"restore_command\" is not set in the target cluster" msgstr "команда \"restore_command\" не встановлена в цільовому кластері" -#: pg_rewind.c:1150 +#: pg_rewind.c:1155 #, c-format msgid "executing \"%s\" for target server to complete crash recovery" msgstr "виконання \"%s\" для цільового серверу, щоб завершити відновлення після аварійного завершення роботи" -#: pg_rewind.c:1188 +#: pg_rewind.c:1193 #, c-format msgid "postgres single-user mode in target cluster failed" msgstr "не вдалося ввімкнути однокористувацький режим postgres в цільовому кластері" -#: pg_rewind.c:1189 +#: pg_rewind.c:1194 #, c-format msgid "Command was: %s" msgstr "Команда була: %s" @@ -892,157 +892,157 @@ msgstr "неприпустимі дані у файлі історії" msgid "Timeline IDs must be less than child timeline's ID." msgstr "Ідентифікатори ліній часу повинні бути меншими від ідентифікатора дочірньої лінії." -#: xlogreader.c:619 +#: xlogreader.c:620 #, c-format msgid "invalid record offset at %X/%X: expected at least %u, got %u" msgstr "неприпустиме зміщення запису в %X/%X: очікувалось хоча б %u, отримано %u" -#: xlogreader.c:628 +#: xlogreader.c:629 #, c-format msgid "contrecord is requested by %X/%X" msgstr "по зсуву %X/%X запитано продовження запису" -#: xlogreader.c:669 xlogreader.c:1134 +#: xlogreader.c:670 xlogreader.c:1145 #, c-format msgid "invalid record length at %X/%X: expected at least %u, got %u" msgstr "неприпустима довжина запису %X/%X: очікувалась мінімум %u, отримано %u" -#: xlogreader.c:758 +#: xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" -msgstr "немає прапорця contrecord в позиції %X/%X" +msgstr "немає прапора contrecord на %X/%X" -#: xlogreader.c:771 +#: xlogreader.c:773 #, c-format msgid "invalid contrecord length %u (expected %lld) at %X/%X" msgstr "неприпустима довжина contrecord %u (очікувалось %lld) на %X/%X" -#: xlogreader.c:1142 +#: xlogreader.c:1153 #, c-format msgid "invalid resource manager ID %u at %X/%X" msgstr "невірний ID менеджера ресурсів %u в %X/%X" -#: xlogreader.c:1155 xlogreader.c:1171 +#: xlogreader.c:1166 xlogreader.c:1182 #, c-format msgid "record with incorrect prev-link %X/%X at %X/%X" msgstr "запис з неправильним попереднім посиланням %X/%X на %X/%X" -#: xlogreader.c:1209 +#: xlogreader.c:1220 #, c-format msgid "incorrect resource manager data checksum in record at %X/%X" msgstr "некоректна контрольна сума даних менеджера ресурсів у запису по зсуву %X/%X" -#: xlogreader.c:1243 +#: xlogreader.c:1254 #, c-format msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "невірне магічне число %04X в сегменті WAL %s, LSN %X/%X, зсув %u" -#: xlogreader.c:1258 xlogreader.c:1300 +#: xlogreader.c:1269 xlogreader.c:1311 #, c-format msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "невірні інформаційні біти %04X в сегменті WAL %s, LSN %X/%X, зсув %u" -#: xlogreader.c:1274 +#: xlogreader.c:1285 #, c-format -msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" -msgstr "WAL файл належить іншій системі баз даних: ідентифікатор системи баз даних де міститься WAL файл - %llu, а ідентифікатор системи баз даних pg_control - %llu" +msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" +msgstr "WAL файл належить іншій системі баз даних: ідентифікатор системи баз даних де міститься WAL файл - %, а ідентифікатор системи баз даних pg_control - %" -#: xlogreader.c:1282 +#: xlogreader.c:1293 #, c-format msgid "WAL file is from different database system: incorrect segment size in page header" msgstr "Файл WAL належить іншій системі баз даних: некоректний розмір сегменту в заголовку сторінки" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header" msgstr "Файл WAL належить іншій системі баз даних: некоректний XLOG_BLCKSZ в заголовку сторінки" -#: xlogreader.c:1320 +#: xlogreader.c:1331 #, c-format msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u" msgstr "неочікуваний pageaddr %X/%X у сегменті WAL %s, LSN %X/%X, зміщення %u" -#: xlogreader.c:1346 +#: xlogreader.c:1357 #, c-format msgid "out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, offset %u" msgstr "порушення послідовності ID лінії часу %u (після %u) у сегменті WAL %s, LSN %X/%X, зсув %u" -#: xlogreader.c:1749 +#: xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "ідентифікатор блока %u out-of-order в позиції %X/%X" -#: xlogreader.c:1773 +#: xlogreader.c:1793 #, c-format msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X" msgstr "BKPBLOCK_HAS_DATA встановлений, але немає даних в позиції %X/%X" -#: xlogreader.c:1780 +#: xlogreader.c:1800 #, c-format msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X" msgstr "BKPBLOCK_HAS_DATA встановлений, але довжина даних дорівнює %u в позиції %X/%X" -#: xlogreader.c:1816 +#: xlogreader.c:1836 #, 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" -#: xlogreader.c:1832 +#: xlogreader.c:1852 #, 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" -#: xlogreader.c:1846 +#: xlogreader.c:1866 #, c-format msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X" msgstr "BKPIMAGE_COMPRESSED встановлений, але довжина образу блока дорівнює %u в позиції %X/%X" -#: xlogreader.c:1861 +#: xlogreader.c:1881 #, c-format msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_COMPRESSED set, but block image length is %u at %X/%X" msgstr "ні BKPIMAGE_HAS_HOLE, ні BKPIMAGE_COMPRESSED не встановлені, але довжина образу блока дорівнює %u в позиції %X/%X" -#: xlogreader.c:1877 +#: xlogreader.c:1897 #, c-format msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X" msgstr "BKPBLOCK_SAME_REL встановлений, але попереднє значення не задано в позиції %X/%X" -#: xlogreader.c:1889 +#: xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "невірний ідентифікатор блоку %u в позиції %X/%X" -#: xlogreader.c:1956 +#: xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "запис з невірною довжиною на %X/%X" -#: xlogreader.c:1982 +#: xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "не вдалося знайти блок резервної копії з ID %d у записі WAL" -#: xlogreader.c:2066 +#: xlogreader.c:2086 #, c-format msgid "could not restore image at %X/%X with invalid block %d specified" msgstr "не вдалося відновити зображення %X/%X з недійсним вказаним блоком %d" -#: xlogreader.c:2073 +#: xlogreader.c:2093 #, c-format msgid "could not restore image at %X/%X with invalid state, block %d" msgstr "не вдалося відновити зображення %X/%X з недійсним станом, блок %d" -#: xlogreader.c:2100 xlogreader.c:2117 +#: xlogreader.c:2120 xlogreader.c:2137 #, c-format msgid "could not restore image at %X/%X compressed with %s not supported by build, block %d" msgstr "не вдалося відновити зображення в %X/%X, стиснуте %s, не підтримується збіркою, блок %d" -#: xlogreader.c:2126 +#: xlogreader.c:2146 #, c-format msgid "could not restore image at %X/%X compressed with unknown method, block %d" msgstr "не вдалося відновити зображення %X/%X стиснуте з невідомим методом, блок %d" -#: xlogreader.c:2134 +#: xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "не вдалося розпакувати зображення на %X/%X, блок %d" diff --git a/src/bin/pg_test_fsync/po/es.po b/src/bin/pg_test_fsync/po/es.po index 5c22d6a67aa..d231455cde5 100644 --- a/src/bin/pg_test_fsync/po/es.po +++ b/src/bin/pg_test_fsync/po/es.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_test_fsync (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:23+0000\n" +"POT-Creation-Date: 2026-02-06 23:22+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_test_timing/po/es.po b/src/bin/pg_test_timing/po/es.po index fbab389ceff..58b2dec510f 100644 --- a/src/bin/pg_test_timing/po/es.po +++ b/src/bin/pg_test_timing/po/es.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_test_timing (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:20+0000\n" +"POT-Creation-Date: 2026-02-06 23:19+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_test_timing/po/uk.po b/src/bin/pg_test_timing/po/uk.po index 52837fbbda2..a9a0536d5ab 100644 --- a/src/bin/pg_test_timing/po/uk.po +++ b/src/bin/pg_test_timing/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:21+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:51+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,8 +14,8 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_test_timing.pot\n" -"X-Crowdin-File-ID: 1002\n" +"X-Crowdin-File: /REL_18_STABLE/pg_test_timing.pot\n" +"X-Crowdin-File-ID: 1057\n" #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75 #: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161 diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c index 1e04fc4c165..7fd4b3886da 100644 --- a/src/bin/pg_upgrade/check.c +++ b/src/bin/pg_upgrade/check.c @@ -2327,9 +2327,9 @@ check_old_cluster_subscription_state(void) * states listed below are not supported: * * a) SUBREL_STATE_DATASYNC: A relation upgraded while in this state would - * retain a replication slot, which could not be dropped by the sync - * worker spawned after the upgrade because the subscription ID used for - * the slot name won't match anymore. + * retain a replication slot and origin. The sync worker spawned after the + * upgrade cannot drop them because the subscription ID used for the slot + * and origin name no longer matches. * * b) SUBREL_STATE_SYNCDONE: A relation upgraded while in this state would * retain the replication origin when there is a failure in tablesync diff --git a/src/bin/pg_upgrade/po/es.po b/src/bin/pg_upgrade/po/es.po index 9239dc2a833..369bf1dec5b 100644 --- a/src/bin/pg_upgrade/po/es.po +++ b/src/bin/pg_upgrade/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_upgrade (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:20+0000\n" +"POT-Creation-Date: 2026-02-06 23:19+0000\n" "PO-Revision-Date: 2025-11-08 19:07+0100\n" "Last-Translator: Álvaro Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_upgrade/po/uk.po b/src/bin/pg_upgrade/po/uk.po index 4a0ec9a1eda..2329a111937 100644 --- a/src/bin/pg_upgrade/po/uk.po +++ b/src/bin/pg_upgrade/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:20+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:20+0000\n" +"PO-Revision-Date: 2026-01-02 14:40\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,8 +14,8 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_upgrade.pot\n" -"X-Crowdin-File-ID: 1028\n" +"X-Crowdin-File: /REL_18_STABLE/pg_upgrade.pot\n" +"X-Crowdin-File-ID: 1055\n" #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75 #: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161 @@ -47,21 +47,21 @@ msgstr "користувача не існує" msgid "user name lookup failure: error code %lu" msgstr "невдала підстановка імені користувача: код помилки %lu" -#: ../../fe_utils/string_utils.c:434 +#: ../../fe_utils/string_utils.c:587 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"\n" msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" -#: ../../fe_utils/string_utils.c:607 +#: ../../fe_utils/string_utils.c:760 #, c-format msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" -#: check.c:111 +#: check.c:112 msgid "Checking for system-defined composite types in user tables" msgstr "Перевірка складених типів визначених системою у таблицях користувача" -#: check.c:118 +#: check.c:119 msgid "Your installation contains system-defined composite types in user tables.\n" "These type OIDs are not stable across PostgreSQL versions,\n" "so this cluster cannot currently be upgraded. You can drop the\n" @@ -70,11 +70,11 @@ msgstr "Ваша інсталяція містить системно визна "OID цих типів не стабільні між версіями PostgreSQL, тому цей кластер наразі не може бути оновлений.\n" "Ви можете видалити проблемні стовпці та перезапустити оновлення.\n" -#: check.c:132 +#: check.c:133 msgid "Checking for incompatible \"line\" data type" msgstr "Перевірка несумісного типу даних \"line\"" -#: check.c:137 +#: check.c:138 msgid "Your installation contains the \"line\" data type in user tables.\n" "This data type changed its internal and input/output format\n" "between your old and new versions so this\n" @@ -85,11 +85,11 @@ msgstr "Ваша інсталяція містить тип даних \"line\" "тому цей кластер наразі не може бути оновлений.\n" "Ви можете видалити проблемні стовпці та перезапустити оновлення.\n" -#: check.c:154 +#: check.c:155 msgid "Checking for reg* data types in user tables" msgstr "Перевірка типів даних reg* в користувацьких таблицях" -#: check.c:181 +#: check.c:182 msgid "Your installation contains one of the reg* data types in user tables.\n" "These data types reference system OIDs that are not preserved by\n" "pg_upgrade, so this cluster cannot currently be upgraded. You can\n" @@ -98,11 +98,11 @@ msgstr "Ваша інсталяція містить один з типів да "Ці типи даних посилаються на OID системи, які не зберігаються за допомогою pg_upgrade, тому цей кластер наразі не може бути оновлений.\n" "Ви можете видалити проблемні стовпці та перезапустити оновлення.\n" -#: check.c:193 +#: check.c:194 msgid "Checking for incompatible \"aclitem\" data type" msgstr "Перевірка несумісного типу даних \"aclitem\"" -#: check.c:198 +#: check.c:199 msgid "Your installation contains the \"aclitem\" data type in user tables.\n" "The internal format of \"aclitem\" changed in PostgreSQL version 16\n" "so this cluster cannot currently be upgraded. You can drop the\n" @@ -111,11 +111,11 @@ msgstr "Ваша інсталяція містить тип даних \"aclitem "тому цей кластер наразі не може бути оновлений.\n" "Ви можете видалити проблемні стовпці та перезапустити оновлення.\n" -#: check.c:217 +#: check.c:218 msgid "Checking for invalid \"unknown\" user columns" msgstr "Перевірка неприпустимих користувацьких стовпців \"unknown\"" -#: check.c:222 +#: check.c:223 msgid "Your installation contains the \"unknown\" data type in user tables.\n" "This data type is no longer allowed in tables, so this cluster\n" "cannot currently be upgraded. You can drop the problem columns\n" @@ -125,11 +125,11 @@ msgstr "Ваша інсталяція містить \"unknown\" тип дани "тому цей кластер наразі не може бути оновлений.\n" "Ви можете видалити проблемні стовпці та перезапустити оновлення.\n" -#: check.c:239 +#: check.c:240 msgid "Checking for invalid \"sql_identifier\" user columns" msgstr "Перевірка неприпустимих користувацьких стовпців \"sql_identifier\"" -#: check.c:244 +#: check.c:245 msgid "Your installation contains the \"sql_identifier\" data type in user tables.\n" "The on-disk format for this data type has changed, so this\n" "cluster cannot currently be upgraded. You can drop the problem\n" @@ -139,11 +139,11 @@ msgstr "Ваша інсталяція містить \"sql_identifier\" тип "тому цей кластер наразі не може бути оновлений.\n" "Ви можете видалити проблемні стовпці та перезапустити оновлення.\n" -#: check.c:255 +#: check.c:256 msgid "Checking for incompatible \"jsonb\" data type in user tables" msgstr "Перевірка несумісного типу даних \"jsonb\" в користувацьких таблицях" -#: check.c:260 +#: check.c:261 msgid "Your installation contains the \"jsonb\" data type in user tables.\n" "The internal format of \"jsonb\" changed during 9.4 beta so this\n" "cluster cannot currently be upgraded. You can drop the problem \n" @@ -153,11 +153,11 @@ msgstr "Ваша інсталяція містить тип даних \"jsonb\" "тому цей кластер наразі не може бути оновлений.\n" "Ви можете видалити проблемні стовпці та перезапустити оновлення.\n" -#: check.c:272 +#: check.c:273 msgid "Checking for removed \"abstime\" data type in user tables" msgstr "Перевірка видаленого типу даних \"abstime\" в користувацьких таблицях" -#: check.c:277 +#: check.c:278 msgid "Your installation contains the \"abstime\" data type in user tables.\n" "The \"abstime\" type has been removed in PostgreSQL version 12,\n" "so this cluster cannot currently be upgraded. You can drop the\n" @@ -169,11 +169,11 @@ msgstr "Користувацькі таблиці у вашій інсталяц "стовпці або змінити їх на інший тип даних, і перезапустити\n" "оновлення.\n" -#: check.c:285 +#: check.c:286 msgid "Checking for removed \"reltime\" data type in user tables" msgstr "Перевірка видаленого типу даних \"reltime\" в користувацьких таблицях" -#: check.c:290 +#: check.c:291 msgid "Your installation contains the \"reltime\" data type in user tables.\n" "The \"reltime\" type has been removed in PostgreSQL version 12,\n" "so this cluster cannot currently be upgraded. You can drop the\n" @@ -185,11 +185,11 @@ msgstr "Користувацькі таблиці у вашій інсталяц "стовпці або змінити їх на інший тип даних, і перезапустити\n" "оновлення.\n" -#: check.c:298 +#: check.c:299 msgid "Checking for removed \"tinterval\" data type in user tables" msgstr "Перевірка видаленого типу даних \"tinterval\" в користувацьких таблицях" -#: check.c:303 +#: check.c:304 msgid "Your installation contains the \"tinterval\" data type in user tables.\n" "The \"tinterval\" type has been removed in PostgreSQL version 12,\n" "so this cluster cannot currently be upgraded. You can drop the\n" @@ -201,55 +201,60 @@ msgstr "Користувацькі таблиці у вашій інсталяц "стовпці або змінити їх на інший тип даних, і перезапустити\n" "оновлення.\n" -#: check.c:345 +#: check.c:422 #, c-format -msgid "Checking data type usage" -msgstr "Перевірка використання типів даних" +msgid "failed check: %s" +msgstr "невдала перевірка: %s" -#: check.c:480 -#, c-format -msgid " failed check: %s" -msgstr " помилка перевірки: %s" - -#: check.c:483 +#: check.c:425 msgid "A list of the problem columns is in the file:" msgstr "Список проблемних стовпців знаходиться у файлі:" -#: check.c:495 check.c:963 check.c:1136 check.c:1251 check.c:1345 check.c:1473 -#: check.c:1549 check.c:1613 check.c:1686 check.c:1865 check.c:1884 -#: check.c:1953 check.c:2005 file.c:378 file.c:415 function.c:189 option.c:493 -#: version.c:79 version.c:177 +#: check.c:431 check.c:1038 check.c:1189 check.c:1272 check.c:1361 check.c:1452 +#: check.c:1584 check.c:1656 check.c:1757 check.c:1804 check.c:1884 +#: check.c:2194 check.c:2213 check.c:2259 check.c:2312 file.c:378 file.c:415 +#: function.c:208 option.c:519 version.c:79 version.c:162 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: check.c:522 +#: check.c:473 +#, c-format +msgid "Checking data type usage" +msgstr "Перевірка використання типів даних" + +#: check.c:527 #, c-format msgid "Data type checks failed: %s" msgstr "Помилка перевірки типів даних: %s" -#: check.c:563 +#: check.c:576 #, c-format msgid "Performing Consistency Checks on Old Live Server\n" "------------------------------------------------" msgstr "Перевірка цілістності на старому працюючому сервері\n" "------------------------------------------------" -#: check.c:569 +#: check.c:582 #, c-format msgid "Performing Consistency Checks\n" "-----------------------------" msgstr "Проведення перевірок цілістності\n" "-----------------------------" -#: check.c:718 +#: check.c:754 +#, c-format +msgid "Swap mode can only upgrade clusters from PostgreSQL version %s and later." +msgstr "Режим заміни може оновлювати лише кластери з PostgreSQL версії %s та новіші." + +#: check.c:777 #, c-format msgid "\n" "*Clusters are compatible*" msgstr "\n" "*Кластери сумісні*" -#: check.c:726 +#: check.c:785 #, c-format msgid "\n" "If pg_upgrade fails after this point, you must re-initdb the\n" @@ -258,23 +263,25 @@ msgstr "\n" "Якщо робота pg_upgrade після цієї точки перерветься, вам потрібно буде заново виконати initdb \n" "для нового кластера, перед продовженням." -#: check.c:767 +#: check.c:826 #, c-format -msgid "Optimizer statistics are not transferred by pg_upgrade.\n" -"Once you start the new server, consider running:\n" -" %s/vacuumdb %s--all --analyze-in-stages" -msgstr "Статистика оптимізатора не передається за допомогою pg_upgrade.\n" -"Після запуску нового серверу розгляньте можливість запуску:\n" -" %s/vacuumdb %s--all --analyze-in-stages" +msgid "Some statistics are not transferred by pg_upgrade.\n" +"Once you start the new server, consider running these two commands:\n" +" %s/vacuumdb %s--all --analyze-in-stages --missing-stats-only\n" +" %s/vacuumdb %s--all --analyze-only" +msgstr "Деякі статистики не переносяться за допомогою pg_upgrade.\n" +"Після запуску нового серверу розгляньте можливість виконання цих двох команд:\n" +" %s/vacuumdb %s--all --analyze-in-stages --missing-stats-only\n" +" %s/vacuumdb %s--all --analyze-only" -#: check.c:773 +#: check.c:835 #, c-format msgid "Running this script will delete the old cluster's data files:\n" " %s" msgstr "При запуску цього скрипту файли даних старого кластера будуть видалені:\n" " %s" -#: check.c:778 +#: check.c:840 #, c-format msgid "Could not create a script to delete the old cluster's data files\n" "because user-defined tablespaces or the new cluster's data directory\n" @@ -285,154 +292,160 @@ msgstr "Не вдалося створити скрипт для видален "простори або каталог даних нового кластера. Вміст старого кластера\n" "треба буде видалити вручну." -#: check.c:790 +#: check.c:852 #, c-format msgid "Checking cluster versions" msgstr "Перевірка версій кластерів" -#: check.c:802 +#: check.c:864 #, c-format msgid "This utility can only upgrade from PostgreSQL version %s and later." msgstr "Ця утиліта може виконувати оновлення тільки з версії PostgreSQL %s і новіше." -#: check.c:807 +#: check.c:869 #, c-format msgid "This utility can only upgrade to PostgreSQL version %s." msgstr "Ця утиліта може тільки підвищувати версію PostgreSQL до версії %s." -#: check.c:816 +#: check.c:878 #, c-format msgid "This utility cannot be used to downgrade to older major PostgreSQL versions." msgstr "Ця утиліта не може використовуватись для пониження версії до більш старих основних версій PostgreSQL." -#: check.c:821 +#: check.c:883 #, c-format msgid "Old cluster data and binary directories are from different major versions." msgstr "Каталог даних і двійковий каталог старого кластера з різних основних версій." -#: check.c:824 +#: check.c:886 #, c-format msgid "New cluster data and binary directories are from different major versions." msgstr "Каталог даних нового кластера і двійковий каталог з різних основних версій." -#: check.c:839 +#: check.c:897 +#, c-format +msgid "The option %s cannot be used for upgrades from PostgreSQL %s and later." +msgstr "Параметр %s не може використовуватися для оновлень з PostgreSQL %s та новіших." + +#: check.c:913 #, c-format msgid "When checking a live server, the old and new port numbers must be different." msgstr "Для перевірки працюючого сервера, старий і новий номер порта повинні бути різними." -#: check.c:859 +#: check.c:933 #, c-format msgid "New cluster database \"%s\" is not empty: found relation \"%s.%s\"" msgstr "Новий кластер бази даних \"%s\" не порожній: знайдено відношення \"%s.%s\"" -#: check.c:882 +#: check.c:956 #, c-format msgid "Checking for new cluster tablespace directories" msgstr "Перевірка каталогів табличних просторів кластера" -#: check.c:893 +#: check.c:967 #, c-format msgid "new cluster tablespace directory already exists: \"%s\"" msgstr "каталог нового кластерного табличного простору вже існує: \"%s\"" -#: check.c:926 +#: check.c:1001 #, c-format msgid "\n" "WARNING: new data directory should not be inside the old data directory, i.e. %s" msgstr "\n" "ПОПЕРЕДЖЕННЯ: новий каталог даних не повинен бути всередині старого каталогу даних, наприклад %s" -#: check.c:950 +#: check.c:1025 #, c-format msgid "\n" "WARNING: user-defined tablespace locations should not be inside the data directory, i.e. %s" msgstr "\n" "ПОПЕРЕДЖЕННЯ: користувацькі розташування табличних просторів не повинні бути всередині каталогу даних, наприклад %s" -#: check.c:960 +#: check.c:1035 #, c-format msgid "Creating script to delete old cluster" msgstr "Створення скрипту для видалення старого кластеру" -#: check.c:1014 +#: check.c:1063 #, c-format msgid "could not add execute permission to file \"%s\": %m" msgstr "не вдалося додати право виконання для файлу \"%s\": %m" -#: check.c:1034 +#: check.c:1083 #, c-format msgid "Checking database user is the install user" msgstr "Перевірка, чи є користувач бази даних стартовим користувачем" -#: check.c:1050 +#: check.c:1099 #, c-format msgid "database user \"%s\" is not the install user" msgstr "користувач бази даних \"%s\" не є стартовим користувачем" -#: check.c:1061 +#: check.c:1110 #, c-format msgid "could not determine the number of users" msgstr "не вдалося визначити кількість користувачів" -#: check.c:1069 +#: check.c:1118 #, c-format msgid "Only the install user can be defined in the new cluster." msgstr "В новому кластері може бути визначеним тільки стартовий користувач." -#: check.c:1098 +#: check.c:1148 #, c-format msgid "Checking database connection settings" msgstr "Перевірка параметрів підключення до бази даних" -#: check.c:1124 +#: check.c:1176 #, c-format msgid "template0 must not allow connections, i.e. its pg_database.datallowconn must be false" msgstr "template0 не повинна дозволяти підключення, тобто pg_database.datallowconn повинно бути false" -#: check.c:1150 check.c:1270 check.c:1367 check.c:1492 check.c:1568 -#: check.c:1626 check.c:1706 check.c:1897 check.c:2022 function.c:210 +#: check.c:1203 check.c:1324 check.c:1420 check.c:1548 check.c:1624 +#: check.c:1710 check.c:1770 check.c:1853 check.c:2226 check.c:2368 +#: function.c:229 #, c-format msgid "fatal" msgstr "збій" -#: check.c:1151 +#: check.c:1204 #, c-format msgid "All non-template0 databases must allow connections, i.e. their\n" -"pg_database.datallowconn must be true. Your installation contains\n" -"non-template0 databases with their pg_database.datallowconn set to\n" -"false. Consider allowing connection for all non-template0 databases\n" -"or drop the databases which do not allow connections. A list of\n" -"databases with the problem is in the file:\n" +"pg_database.datallowconn must be true and pg_database.datconnlimit\n" +"must not be -2. Your installation contains non-template0 databases\n" +"which cannot be connected to. Consider allowing connection for all\n" +"non-template0 databases or drop the databases which do not allow\n" +"connections. A list of databases with the problem is in the file:\n" " %s" -msgstr "Всі бази даних, окрім template0, повинні дозволяти підключення, тобто\n" -"pg_database.datallowconn повинно бути true. Ваша інсталяція містить\n" -"бази даних окрім template0 значення pg_database.datallowconn яких дорівнює \n" -"false. Розгляньте можливість надати дозвіл на з’єднання для всіх баз даних, \n" -"які не є шаблоном, або видалити баз даних, які не дозволяють з’єднання. \n" -"Список баз даних з проблемою знаходиться у файлі:\n" +msgstr "Всі бази даних, крім template0, повинні дозволяти з'єднання, тобто\n" +"їх pg_database.datallowconn має бути true, а pg_database.datconnlimit\n" +"не повинен бути -2. Ваша інсталяція містить бази даних, що не є template0,\n" +"до яких неможливо приєднатися. Розгляньте можливість дозволу з'єднань\n" +"для всіх баз даних, що не є template0, або видаліть бази даних, які не\n" +"дозволяють з'єднання. Список баз даних з цією проблемою знаходиться у файлі:\n" " %s" -#: check.c:1176 +#: check.c:1229 #, c-format msgid "Checking for prepared transactions" msgstr "Перевірка підготовлених транзакцій" -#: check.c:1185 +#: check.c:1238 #, c-format msgid "The source cluster contains prepared transactions" msgstr "Початковий кластер містить підготовлені транзакції" -#: check.c:1187 +#: check.c:1240 #, c-format msgid "The target cluster contains prepared transactions" msgstr "Цільовий кластер містить підготовлені транзакції" -#: check.c:1212 +#: check.c:1300 #, c-format msgid "Checking for contrib/isn with bigint-passing mismatch" msgstr "Перевірка невідповідності при передаванні bigint в contrib/isn" -#: check.c:1271 +#: check.c:1325 #, c-format msgid "Your installation contains \"contrib/isn\" functions which rely on the\n" "bigint data type. Your old and new clusters pass bigint values\n" @@ -444,12 +457,12 @@ msgid "Your installation contains \"contrib/isn\" functions which rely on the\n" msgstr "Ваша інсталяція містить функції \"contrib/isn\", що використовують тип даних bigint. Старі та нові кластери передають значення bigint по-різному, тому цей кластер наразі неможливо оновити. Ви можете вручну вивантажити бази даних зі старого кластеру, що використовує засоби \"contrib/isn\", видалити їх, виконати оновлення, а потім відновити їх. Список проблемних функцій подано у файлі:\n" " %s" -#: check.c:1293 +#: check.c:1405 #, c-format msgid "Checking for user-defined postfix operators" msgstr "Перевірка постфіксних операторів визначених користувачем" -#: check.c:1368 +#: check.c:1421 #, c-format msgid "Your installation contains user-defined postfix operators, which are not\n" "supported anymore. Consider dropping the postfix operators and replacing\n" @@ -461,12 +474,12 @@ msgstr "Ваша інсталяція містить користувацькі "Список користувацьких постфіксних операторів знаходиться у файлі:\n" " %s" -#: check.c:1392 +#: check.c:1476 #, c-format msgid "Checking for incompatible polymorphic functions" msgstr "Перевірка несумісних поліморфних функцій" -#: check.c:1493 +#: check.c:1549 #, c-format msgid "Your installation contains user-defined objects that refer to internal\n" "polymorphic functions with arguments of type \"anyarray\" or \"anyelement\".\n" @@ -483,12 +496,12 @@ msgstr "У вашій інсталяції містяться користува "Список проблемних об'єктів знаходиться у файлі:\n" " %s" -#: check.c:1517 +#: check.c:1609 #, c-format msgid "Checking for tables WITH OIDS" msgstr "Перевірка таблиць WITH OIDS" -#: check.c:1569 +#: check.c:1625 #, c-format msgid "Your installation contains tables declared WITH OIDS, which is not\n" "supported anymore. Consider removing the oid column using\n" @@ -500,12 +513,33 @@ msgstr "Ваша інсталяція містить таблиці, створ "Список проблемних таблиць подано у файлі:\n" " %s" -#: check.c:1596 +#: check.c:1684 +#, c-format +msgid "Checking for not-null constraint inconsistencies" +msgstr "Перевірка невідповідності обмеженням-null" + +#: check.c:1711 +#, c-format +msgid "Your installation contains inconsistent NOT NULL constraints.\n" +"If the parent column(s) are NOT NULL, then the child column must\n" +"also be marked NOT NULL, or the upgrade will fail.\n" +"You can fix this by running\n" +" ALTER TABLE tablename ALTER column SET NOT NULL;\n" +"on each column listed in the file:\n" +" %s" +msgstr "Ваша інсталяція містить суперечливі обмеження NOT NULL.\n" +"Якщо батьківські стовпці мають значення NOT NULL, то дочірні стовпці також повинні бути позначені як NOT NULL, інакше оновлення не відбудеться.\n" +"Ви можете виправити це, виконавши команду\n" +" ALTER TABLE tablename ALTER column SET NOT NULL;\n" +"для кожного стовпця, зазначеного у файлі:\n" +" %s" + +#: check.c:1740 #, c-format msgid "Checking for roles starting with \"pg_\"" msgstr "Перевірка ролей, які починаються з \"pg_\"" -#: check.c:1627 +#: check.c:1771 #, c-format msgid "Your installation contains roles starting with \"pg_\".\n" "\"pg_\" is a reserved prefix for system roles. The cluster\n" @@ -518,12 +552,12 @@ msgstr "Ваша інсталяція містить ролі, які почин "Список ролей, які починаються з \"pg_\" у файлі:\n" " %s" -#: check.c:1647 +#: check.c:1825 #, c-format msgid "Checking for user-defined encoding conversions" msgstr "Перевірка користувацьких перетворення кодувань" -#: check.c:1707 +#: check.c:1854 #, c-format msgid "Your installation contains user-defined encoding conversions.\n" "The conversion function parameters changed in PostgreSQL version 14\n" @@ -538,52 +572,71 @@ msgstr "Ваша інсталяція містить користувацькі "Список перетворень кодувань знаходиться у файлі:\n" " %s" -#: check.c:1746 +#: check.c:1939 +#, c-format +msgid "Checking for objects affected by Unicode update" +msgstr "Перевірка об'єктів, що можуть бути зачеплені оновленням Unicode" + +#: check.c:2038 version.c:121 +#, c-format +msgid "warning" +msgstr "попередження" + +#: check.c:2039 +#, c-format +msgid "Your installation contains relations that might be affected by a new version of Unicode.\n" +"A list of potentially-affected relations is in the file:\n" +" %s" +msgstr "Ваша інсталяція містить відношення, які можуть бути зачеплені новою версією Unicode.\n" +"Список потенційно зачеплених відношень знаходиться у файлі:\n" +" %s" + +#: check.c:2075 #, c-format msgid "Checking for new cluster logical replication slots" msgstr "Перевірка наявності нових слотів логічної реплікації кластера" -#: check.c:1754 +#: check.c:2083 #, c-format msgid "could not count the number of logical replication slots" msgstr "не вдалося порахувати кількість слотів логічної реплікації" -#: check.c:1759 +#: check.c:2088 #, c-format msgid "expected 0 logical replication slots but found %d" msgstr "очікувалося 0 слотів логічної реплікації, але знайдено %d" -#: check.c:1769 check.c:1820 +#: check.c:2098 check.c:2149 #, c-format msgid "could not determine parameter settings on new cluster" msgstr "не вдалося визначити налаштування параметрів на новому кластері" -#: check.c:1774 +#: check.c:2103 #, c-format msgid "\"wal_level\" must be \"logical\" but is set to \"%s\"" msgstr "\"wal_level\" має бути \"logical\", але встановлено значення \"%s\"" -#: check.c:1780 +#: check.c:2109 #, c-format msgid "\"max_replication_slots\" (%d) must be greater than or equal to the number of logical replication slots (%d) on the old cluster" msgstr "\"max_replication_slots\" (%d) має бути більше або дорівнювати кількості слотів логічної реплікації (%d) на старому кластері" -#: check.c:1812 +#: check.c:2141 #, c-format msgid "Checking for new cluster configuration for subscriptions" msgstr "Перевірка нової конфігурації кластера для підписок" -#: check.c:1824 +#: check.c:2153 #, c-format -msgid "\"max_replication_slots\" (%d) must be greater than or equal to the number of subscriptions (%d) on the old cluster" -msgstr "\"max_replication_slots\" (%d) має бути більше або дорівнювати кількості підписок (%d) на старому кластері" +msgid "\"max_active_replication_origins\" (%d) must be greater than or equal to the number of subscriptions (%d) on the old cluster" +msgstr "\"max_active_replication_origins\" (%d) має бути більше або дорівнювати кількості підписок (%d) на старому кластері" -#: check.c:1846 +#: check.c:2175 #, c-format msgid "Checking for valid logical replication slots" msgstr "Перевірка дійсних слотів логічної реплікації" -#: check.c:1898 +#: check.c:2227 #, c-format msgid "Your installation contains logical replication slots that cannot be upgraded.\n" "You can remove invalid slots and/or consume the pending WAL for other slots,\n" @@ -596,12 +649,12 @@ msgstr "Ваша інсталяція містить слоти логічної "Список проблемних слотів знаходиться у файлі:\n" " %s" -#: check.c:1922 +#: check.c:2287 #, c-format msgid "Checking for subscription state" msgstr "Перевірка стану підписки" -#: check.c:2023 +#: check.c:2369 #, c-format msgid "Your installation contains subscriptions without origin or having relations not in i (initialize) or r (ready) state.\n" "You can allow the initial sync to finish for all relations and then restart the upgrade.\n" @@ -612,272 +665,293 @@ msgstr "У вашій інсталяції є підписки, які не ма "Список проблемних підписок знаходиться у файлі:\n" " %s" -#: controldata.c:129 controldata.c:199 +#: controldata.c:133 controldata.c:203 #, c-format msgid "could not get control data using %s: %m" msgstr "не вдалося отримати контрольні дані за допомогою %s: %m" -#: controldata.c:139 +#: controldata.c:143 #, c-format msgid "%d: database cluster state problem" msgstr "%d: неприпустимий стан кластера баз даних" -#: controldata.c:158 +#: controldata.c:162 #, c-format msgid "The source cluster was shut down while in recovery mode. To upgrade, use \"rsync\" as documented or shut it down as a primary." msgstr "Початковий кластер завершив роботу в режимі відновлення. Щоб виконати оновлення, використайте документований спосіб з \"rsync\" або вимкніть його в режимі головного серверу." -#: controldata.c:160 +#: controldata.c:164 #, c-format msgid "The target cluster was shut down while in recovery mode. To upgrade, use \"rsync\" as documented or shut it down as a primary." msgstr "Цільовий кластер завершив роботу в режимі відновлення. Щоб виконати оновлення, використайте документований спосіб з \"rsync\" або вимкніть його в режимі головного серверу." -#: controldata.c:165 +#: controldata.c:169 #, c-format msgid "The source cluster was not shut down cleanly, state reported as: \"%s\"" msgstr "Кластер джерел не був вимкнений повністю, про що повідомлялося у звітах стану: \"%s\"" -#: controldata.c:167 +#: controldata.c:171 #, c-format msgid "The target cluster was not shut down cleanly, state reported as: \"%s\"" msgstr "Цільовий кластер не був закритий \"чисто\", про що повідомив стан: \"%s\"" -#: controldata.c:175 controldata.c:507 +#: controldata.c:179 controldata.c:530 #, c-format msgid "could not get control data using %s: %s" msgstr "не вдалося отримати контрольні дані за допомогою %s: %s" -#: controldata.c:181 +#: controldata.c:185 #, c-format msgid "The source cluster lacks cluster state information:" msgstr "В початковому кластері відсутня інформація про стан кластера:" -#: controldata.c:183 +#: controldata.c:187 #, c-format msgid "The target cluster lacks cluster state information:" msgstr "В цільовому кластері відсутня інформація про стан кластера:" -#: controldata.c:213 dump.c:50 exec.c:118 pg_upgrade.c:556 pg_upgrade.c:596 -#: pg_upgrade.c:945 relfilenumber.c:233 server.c:34 util.c:337 +#: controldata.c:217 dump.c:50 exec.c:118 pg_upgrade.c:606 pg_upgrade.c:646 +#: pg_upgrade.c:995 relfilenumber.c:610 server.c:34 util.c:337 #, c-format msgid "%s" msgstr "%s" -#: controldata.c:220 +#: controldata.c:224 #, c-format msgid "%d: pg_resetwal problem" msgstr "%d: проблема pg_resetwal" -#: controldata.c:230 controldata.c:240 controldata.c:251 controldata.c:262 -#: controldata.c:273 controldata.c:292 controldata.c:303 controldata.c:314 -#: controldata.c:325 controldata.c:336 controldata.c:347 controldata.c:358 -#: controldata.c:361 controldata.c:365 controldata.c:375 controldata.c:387 -#: controldata.c:398 controldata.c:409 controldata.c:420 controldata.c:431 -#: controldata.c:442 controldata.c:453 controldata.c:464 controldata.c:475 -#: controldata.c:486 controldata.c:497 +#: controldata.c:234 controldata.c:244 controldata.c:255 controldata.c:266 +#: controldata.c:277 controldata.c:296 controldata.c:307 controldata.c:318 +#: controldata.c:329 controldata.c:340 controldata.c:351 controldata.c:362 +#: controldata.c:365 controldata.c:369 controldata.c:379 controldata.c:391 +#: controldata.c:402 controldata.c:413 controldata.c:424 controldata.c:435 +#: controldata.c:446 controldata.c:457 controldata.c:468 controldata.c:479 +#: controldata.c:490 controldata.c:501 controldata.c:512 controldata.c:521 #, c-format msgid "%d: controldata retrieval problem" msgstr "%d: проблема з отриманням контрольних даних" -#: controldata.c:578 +#: controldata.c:618 #, c-format msgid "The source cluster lacks some required control information:" msgstr "У початковому кластері відсутня необхідна контрольна інформація:" -#: controldata.c:581 +#: controldata.c:621 #, c-format msgid "The target cluster lacks some required control information:" msgstr "У цільовому кластері відсутня необхідна контрольна інформація:" -#: controldata.c:584 +#: controldata.c:624 #, c-format msgid " checkpoint next XID" msgstr " наступний XID контрольної точки" -#: controldata.c:587 +#: controldata.c:627 #, c-format msgid " latest checkpoint next OID" msgstr " наступний OID останньої контрольної точки" -#: controldata.c:590 +#: controldata.c:630 #, c-format msgid " latest checkpoint next MultiXactId" msgstr " наступний MultiXactId останньої контрольної точки" -#: controldata.c:594 +#: controldata.c:634 #, c-format msgid " latest checkpoint oldest MultiXactId" msgstr " найстарший MultiXactId останньої контрольної точки" -#: controldata.c:597 +#: controldata.c:637 #, c-format msgid " latest checkpoint oldestXID" msgstr " найстарший oldestXID останньої контрольної точки" -#: controldata.c:600 +#: controldata.c:640 #, c-format msgid " latest checkpoint next MultiXactOffset" msgstr " наступний MultiXactOffset останньої контрольної точки" -#: controldata.c:603 +#: controldata.c:643 #, c-format msgid " first WAL segment after reset" msgstr " перший сегмет WAL після скидання" -#: controldata.c:606 +#: controldata.c:646 #, c-format msgid " float8 argument passing method" msgstr " метод передачі аргументу float8" -#: controldata.c:609 +#: controldata.c:649 #, c-format msgid " maximum alignment" msgstr " максимальне вирівнювання" -#: controldata.c:612 +#: controldata.c:652 #, c-format msgid " block size" msgstr " розмір блоку" -#: controldata.c:615 +#: controldata.c:655 #, c-format msgid " large relation segment size" msgstr " розмір сегменту великого відношення" -#: controldata.c:618 +#: controldata.c:658 #, c-format msgid " WAL block size" msgstr " розмір блоку WAL" -#: controldata.c:621 +#: controldata.c:661 #, c-format msgid " WAL segment size" msgstr " розмір сегменту WAL" -#: controldata.c:624 +#: controldata.c:664 #, c-format msgid " maximum identifier length" msgstr " максимальна довжина ідентифікатора" -#: controldata.c:627 +#: controldata.c:667 #, c-format msgid " maximum number of indexed columns" msgstr " максимальна кількість індексованих стовпців" -#: controldata.c:630 +#: controldata.c:670 #, c-format msgid " maximum TOAST chunk size" msgstr " максимальний розмір порції TOAST" -#: controldata.c:634 +#: controldata.c:674 #, c-format msgid " large-object chunk size" msgstr " розмір порції великого об'єкту" -#: controldata.c:637 +#: controldata.c:677 #, c-format msgid " dates/times are integers?" msgstr " дата/час представлені цілими числами?" -#: controldata.c:641 +#: controldata.c:681 #, c-format msgid " data checksum version" msgstr " версія контрольних сум даних" -#: controldata.c:643 +#: controldata.c:685 +#, c-format +msgid " default char signedness" +msgstr " знаковість символів за замовчуванням" + +#: controldata.c:687 #, c-format msgid "Cannot continue without required control information, terminating" msgstr "Не можна продовжити без необхідної контрольної інформації, завершення" -#: controldata.c:658 +#: controldata.c:702 #, c-format msgid "old and new pg_controldata alignments are invalid or do not match.\n" "Likely one cluster is a 32-bit install, the other 64-bit" msgstr "старе і нове вирівнювання в pg_controldata неприпустимі або не збігаються\n" "Ймовірно, один кластер встановлений у 32-бітній системі, а інший - у 64-бітній" -#: controldata.c:662 +#: controldata.c:706 #, c-format msgid "old and new pg_controldata block sizes are invalid or do not match" msgstr "старий і новий розмір блоків в pg_controldata неприпустимі або не збігаються" -#: controldata.c:665 +#: controldata.c:709 #, c-format msgid "old and new pg_controldata maximum relation segment sizes are invalid or do not match" msgstr "старий і новий максимальний розмір сегментів відношень в pg_controldata неприпустимі або не збігаються" -#: controldata.c:668 +#: controldata.c:712 #, c-format msgid "old and new pg_controldata WAL block sizes are invalid or do not match" msgstr "старий і новий розмір блоків WAL в pg_controldata неприпустимі або не збігаються" -#: controldata.c:671 +#: controldata.c:715 #, c-format msgid "old and new pg_controldata WAL segment sizes are invalid or do not match" msgstr "старий і новий розмір сегментів WAL в pg_controldata неприпустимі або не збігаються" -#: controldata.c:674 +#: controldata.c:718 #, c-format msgid "old and new pg_controldata maximum identifier lengths are invalid or do not match" msgstr "стара і нова максимальна довжина ідентифікаторів в pg_controldata неприпустимі або не збігаються" -#: controldata.c:677 +#: controldata.c:721 #, c-format msgid "old and new pg_controldata maximum indexed columns are invalid or do not match" msgstr "стара і нова максимальна кількість індексованих стовпців в pg_controldata неприпустимі або не збігаються" -#: controldata.c:680 +#: controldata.c:724 #, c-format msgid "old and new pg_controldata maximum TOAST chunk sizes are invalid or do not match" msgstr "старий і новий максимальний розмір порції TOAST в pg_controldata неприпустимі або не збігаються" -#: controldata.c:685 +#: controldata.c:729 #, c-format msgid "old and new pg_controldata large-object chunk sizes are invalid or do not match" msgstr "старий і новий розмір порції великого об'єкту в pg_controldata неприпустимі або не збігаються" -#: controldata.c:688 +#: controldata.c:732 #, c-format msgid "old and new pg_controldata date/time storage types do not match" msgstr "старий і новий тип сховища дати/часу в pg_controldata неприпустимі або не збігаються" -#: controldata.c:701 +#: controldata.c:745 #, c-format msgid "old cluster does not use data checksums but the new one does" msgstr "старий кластер не використовує контрольні суми даних, але новий використовує" -#: controldata.c:704 +#: controldata.c:748 #, c-format msgid "old cluster uses data checksums but the new one does not" msgstr "старий кластер використовує контрольні суми даних, але новий не використовує" -#: controldata.c:706 +#: controldata.c:750 #, c-format msgid "old and new cluster pg_controldata checksum versions do not match" msgstr "стара і нова версія контрольних сум кластера в pg_controldata не збігаються" -#: controldata.c:717 +#. translator: %s is the file path of the control file +#: controldata.c:762 #, c-format -msgid "Adding \".old\" suffix to old global/pg_control" -msgstr "Додавання суфікса \".old\" до старого файла global/pg_control" +msgid "Adding \".old\" suffix to old \"%s\"" +msgstr "Додавання суфікса \".old\" до старого \"%s\"" -#: controldata.c:722 +#: controldata.c:767 relfilenumber.c:393 relfilenumber.c:420 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" -#: controldata.c:726 +#. translator: %s/%s is the file path of the control file +#: controldata.c:773 #, c-format msgid "\n" "If you want to start the old cluster, you will need to remove\n" -"the \".old\" suffix from %s/global/pg_control.old.\n" +"the \".old\" suffix from \"%s/%s.old\".\n" "Because \"link\" mode was used, the old cluster cannot be safely\n" "started once the new cluster has been started." msgstr "\n" -"Якщо ви хочете запустити старий кластер, вам необхідно видалити\n" -"суфікс \".old\" з файлу %s/global/pg_control.old. Через використання\n" -"режиму \"link\" робота старого кластера після запуску нового може бути\n" -"небезпечна." +"Якщо ви хочете запустити старий кластер, вам потрібно буде видалити\n" +"суфікс \".old\" з \"%s/%s.old\".\n" +"Через використання режиму \"link\" старий кластер не може бути безпечно\n" +"запущений після того, як новий кластер був запущений." + +#: controldata.c:780 +#, c-format +msgid "\n" +"Because \"swap\" mode was used, the old cluster can no longer be\n" +"safely started." +msgstr "\n" +"Через використання режиму \"swap\" старий кластер більше не може бути\n" +"безпечно запущений." + +#: controldata.c:784 file.c:455 +#, c-format +msgid "unrecognized transfer mode" +msgstr "нерозпізнаний режим передачі" #: dump.c:20 #, c-format @@ -909,7 +983,7 @@ msgstr "не вдалося отримати версію pg_ctl з резуль msgid "command too long" msgstr "команда занадто довга" -#: exec.c:160 pg_upgrade.c:311 +#: exec.c:160 pg_upgrade.c:315 #, c-format msgid "could not open log file \"%s\": %m" msgstr "не вдалося відкрити файл журналу \"%s\": %m" @@ -940,7 +1014,7 @@ msgid "Consult the last few lines of \"%s\" for\n" msgstr "Щоб зрозуміти причину неполадки, зверніться до декількох останніх рядків\n" "файлу \"%s\"." -#: exec.c:218 pg_upgrade.c:321 +#: exec.c:218 pg_upgrade.c:325 #, c-format msgid "could not write to log file \"%s\": %m" msgstr "не вдалося записати до файлу журналу \"%s\": %m" @@ -1065,29 +1139,36 @@ msgstr "не вдалося скопіювати діапазон файлу м msgid "copy_file_range not supported on this platform" msgstr "copy_file_range не підтримується на цій платформі" -#: file.c:447 +#: file.c:449 #, c-format msgid "could not create hard link between old and new data directories: %m\n" "In link mode the old and new data directories must be on the same file system." msgstr "не вдалося створити жорстке посилання між старим і новим каталогами даних: %m\n" "В режимі посилань старий і новий каталоги даних повинні знаходитись в одній файловій системі." -#: function.c:154 +#: file.c:452 +#, c-format +msgid "could not create hard link between old and new data directories: %m\n" +"In swap mode the old and new data directories must be on the same file system." +msgstr "не вдалося створити жорстке посилання між старим і новим каталогами даних: %m\n" +"В режимі заміни старий і новий каталоги даних повинні знаходитись в одній файловій системі." + +#: function.c:173 #, c-format msgid "Checking for presence of required libraries" msgstr "Перевірка наявності необхідних бібліотек" -#: function.c:190 +#: function.c:209 #, c-format msgid "could not load library \"%s\": %s" msgstr "не вдалося завантажити бібліотеку \"%s\": %s" -#: function.c:201 +#: function.c:220 #, c-format msgid "In database: %s\n" msgstr "У базі даних: %s\n" -#: function.c:211 +#: function.c:230 #, c-format msgid "Your installation references loadable libraries that are missing from the\n" "new installation. You can add these libraries to the new installation,\n" @@ -1100,278 +1181,300 @@ msgstr "У вашій інсталяції є посилання на заван "проблемних бібліотек подано у файлі:\n" " %s" -#: info.c:128 +#: info.c:131 #, c-format msgid "Relation names for OID %u in database \"%s\" do not match: old name \"%s.%s\", new name \"%s.%s\"" msgstr "Імена відношень з OID %u в базі даних \"%s\" не збігаються: старе ім'я \"%s.%s\", нове ім'я \"%s.%s\"" -#: info.c:148 +#: info.c:151 #, c-format msgid "Failed to match up old and new tables in database \"%s\"" msgstr "Не вдалося зіставити старі таблиці з новими в базі даних \"%s\"" -#: info.c:229 +#: info.c:232 #, c-format msgid " which is an index on \"%s.%s\"" msgstr " це індекс в \"%s.%s\"" -#: info.c:239 +#: info.c:242 #, c-format msgid " which is an index on OID %u" msgstr " це індекс у відношенні з OID %u" -#: info.c:251 +#: info.c:254 #, c-format msgid " which is the TOAST table for \"%s.%s\"" msgstr " це TOAST-таблиця для \"%s.%s\"" -#: info.c:259 +#: info.c:262 #, c-format msgid " which is the TOAST table for OID %u" msgstr " це TOAST-таблиця для відношення з OID %u" -#: info.c:263 +#: info.c:266 #, c-format msgid "No match found in old cluster for new relation with OID %u in database \"%s\": %s" msgstr "У старому кластері не знайдено відповідності для нового відношення з OID %u в базі даних %s\": %s" -#: info.c:266 +#: info.c:269 #, c-format msgid "No match found in new cluster for old relation with OID %u in database \"%s\": %s" msgstr "У новому кластері не знайдено відповідності для старого відношення з OID %u в базі даних \"%s\": %s" -#: info.c:300 +#: info.c:325 #, c-format msgid "\n" "source databases:" msgstr "\n" "вихідні бази даних:" -#: info.c:302 +#: info.c:327 #, c-format msgid "\n" "target databases:" msgstr "\n" "цільові бази даних:" -#: info.c:346 +#: info.c:371 #, c-format msgid "template0 not found" msgstr "template0 не знайдено" -#: info.c:805 +#: info.c:817 #, c-format msgid "Database: \"%s\"" msgstr "База даних: %s\"" -#: info.c:818 +#: info.c:830 #, c-format msgid "relname: \"%s.%s\", reloid: %u, reltblspace: \"%s\"" msgstr "relname: \"%s.%s\", reloid: %u, reltblspace: \"%s\"" -#: info.c:832 +#: info.c:844 #, c-format msgid "Logical replication slots in the database:" msgstr "Логічні слоти реплікації в базі даних:" -#: info.c:838 +#: info.c:850 #, c-format msgid "slot name: \"%s\", output plugin: \"%s\", two_phase: %s" msgstr "назва слоту: \"%s\", плагін виводу: \"%s\", two_phase: %s" -#: option.c:105 +#: option.c:110 #, c-format msgid "%s: cannot be run as root" msgstr "%s: не можна запустити як root" -#: option.c:172 +#: option.c:177 #, c-format msgid "invalid old port number" msgstr "неприпустимий старий номер порту" -#: option.c:177 +#: option.c:182 #, c-format msgid "invalid new port number" msgstr "неприпустимий новий номер порту" -#: option.c:216 +#: option.c:230 +#, c-format +msgid "invalid argument for option %s" +msgstr "неприпустимий аргумент для параметру %s" + +#: option.c:238 #, c-format msgid "Try \"%s --help\" for more information.\n" msgstr "Спробуйте \"%s --help\" для додаткової інформації.\n" -#: option.c:223 +#: option.c:245 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: option.c:229 +#: option.c:251 #, c-format msgid "Running in verbose mode" msgstr "Виконується в детальному режимі" -#: option.c:247 +#: option.c:269 msgid "old cluster binaries reside" msgstr "розташування двійкових даних старого кластера" -#: option.c:249 +#: option.c:271 msgid "new cluster binaries reside" msgstr "розташування двійкових даних нового кластера" -#: option.c:251 +#: option.c:273 msgid "old cluster data resides" msgstr "розташування даних старого кластера" -#: option.c:253 +#: option.c:275 msgid "new cluster data resides" msgstr "розташування даних нового кластера" -#: option.c:255 +#: option.c:277 msgid "sockets will be created" msgstr "сокети будуть створені" -#: option.c:272 option.c:374 +#: option.c:294 option.c:400 #, c-format msgid "could not determine current directory" msgstr "не вдалося визначити поточний каталог" -#: option.c:275 +#: option.c:297 #, c-format msgid "cannot run pg_upgrade from inside the new cluster data directory on Windows" msgstr "у Windows не можна виконати pg_upgrade всередині каталогу даних нового кластера" -#: option.c:284 +#: option.c:306 #, c-format msgid "pg_upgrade upgrades a PostgreSQL cluster to a different major version.\n\n" msgstr "pg_upgrade оновлює кластер PostgreSQL до іншої основної версії.\n\n" -#: option.c:285 +#: option.c:307 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: option.c:286 +#: option.c:308 #, c-format msgid " pg_upgrade [OPTION]...\n\n" msgstr " pg_upgrade [OPTION]...\n\n" -#: option.c:287 +#: option.c:309 #, c-format msgid "Options:\n" msgstr "Параметри:\n" -#: option.c:288 +#: option.c:310 #, c-format msgid " -b, --old-bindir=BINDIR old cluster executable directory\n" msgstr " -b, --old-bindir=BINDIR каталог виконуваних файлів старого кластера\n" -#: option.c:289 +#: option.c:311 #, c-format msgid " -B, --new-bindir=BINDIR new cluster executable directory (default\n" " same directory as pg_upgrade)\n" msgstr " -B, --new-bindir=BINDIR каталог виконуваних файлів нового кластера (за замовчуванням\n" " той самий каталог, що і pg_upgrade)\n" -#: option.c:291 +#: option.c:313 #, c-format msgid " -c, --check check clusters only, don't change any data\n" msgstr " -c, --check тільки перевірити кластери, не змінювати ніякі дані\n" -#: option.c:292 +#: option.c:314 #, c-format msgid " -d, --old-datadir=DATADIR old cluster data directory\n" msgstr " -d, --old-datadir=DATADIR каталог даних старого кластера\n" -#: option.c:293 +#: option.c:315 #, c-format msgid " -D, --new-datadir=DATADIR new cluster data directory\n" msgstr " -D, --new-datadir=DATADIR каталог даних нового кластера\n" -#: option.c:294 +#: option.c:316 #, c-format msgid " -j, --jobs=NUM number of simultaneous processes or threads to use\n" msgstr " -j, --jobs=NUM число одночасних процесів або потоків для використання\n" -#: option.c:295 +#: option.c:317 #, c-format msgid " -k, --link link instead of copying files to new cluster\n" msgstr " -k, --link встановлювати посилання замість копіювання файлів до нового кластера\n" -#: option.c:296 +#: option.c:318 #, c-format msgid " -N, --no-sync do not wait for changes to be written safely to disk\n" msgstr " -N, --no-sync не чекати завершення збереження змін на диску\n" -#: option.c:297 +#: option.c:319 #, c-format msgid " -o, --old-options=OPTIONS old cluster options to pass to the server\n" msgstr " -o, --old-options=OPTIONS параметри старого кластера, які передаються серверу\n" -#: option.c:298 +#: option.c:320 #, c-format msgid " -O, --new-options=OPTIONS new cluster options to pass to the server\n" msgstr " -O, --new-options=OPTIONS параметри нового кластера, які передаються серверу\n" -#: option.c:299 +#: option.c:321 #, c-format msgid " -p, --old-port=PORT old cluster port number (default %d)\n" msgstr " -p, --old-port=PORT номер порту старого кластера (за замовчуванням %d)\n" -#: option.c:300 +#: option.c:322 #, c-format msgid " -P, --new-port=PORT new cluster port number (default %d)\n" msgstr " -P, --new-port=PORT номер порту нового кластера (за замовчуванням %d)\n" -#: option.c:301 +#: option.c:323 #, c-format msgid " -r, --retain retain SQL and log files after success\n" msgstr " -r, --retain зберегти файли журналів і SQL після успішного завершення\n" -#: option.c:302 +#: option.c:324 #, c-format msgid " -s, --socketdir=DIR socket directory to use (default current dir.)\n" msgstr " -s, --socketdir=DIR директорія сокету для використання (за замовчування поточна директорія)\n" -#: option.c:303 +#: option.c:325 #, c-format msgid " -U, --username=NAME cluster superuser (default \"%s\")\n" msgstr " -U, --username=NAME суперкористувач кластера (за замовчуванням \"%s\")\n" -#: option.c:304 +#: option.c:326 #, c-format msgid " -v, --verbose enable verbose internal logging\n" msgstr " -v, --verbose активувати виведення детальних внутрішніх повідомлень\n" -#: option.c:305 +#: option.c:327 #, c-format msgid " -V, --version display version information, then exit\n" msgstr " -V, --version відобразити інформацію про версію, потім вийти\n" -#: option.c:306 +#: option.c:328 #, c-format msgid " --clone clone instead of copying files to new cluster\n" msgstr " --clone клонувати замість копіювання файлів до нового кластера\n" -#: option.c:307 +#: option.c:329 #, c-format msgid " --copy copy files to new cluster (default)\n" msgstr " --copy копіювати файли до нового кластеру (за замовчуванням)\n" -#: option.c:308 +#: option.c:330 #, c-format msgid " --copy-file-range copy files to new cluster with copy_file_range\n" msgstr " --copy-file-range копіювати файли в новий кластер за допомогою copy_file_range\n" -#: option.c:309 +#: option.c:331 +#, c-format +msgid " --no-statistics do not import statistics from old cluster\n" +msgstr " --no-statistics не імпортувати статистику з старого кластера\n" + +#: option.c:332 +#, c-format +msgid " --set-char-signedness=OPTION set new cluster char signedness to \"signed\" or\n" +" \"unsigned\"\n" +msgstr " --set-char-signedness=OPTION встановити знаковість символів нового кластера на \"signed\" або\n" +" \"unsigned\"\n" + +#: option.c:334 +#, c-format +msgid " --swap move data directories to new cluster\n" +msgstr " --swap переміщення каталогів даних до нового кластера\n" + +#: option.c:335 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METHOD встановити метод синхронізації файлів на диск\n" -#: option.c:310 +#: option.c:336 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: option.c:311 +#: option.c:337 #, c-format msgid "\n" "Before running pg_upgrade you must:\n" @@ -1384,7 +1487,7 @@ msgstr "\n" " завершити процес postmaster, який обслуговує старий кластер\n" " завершити процес postmaster, який обслуговує новий кластер\n" -#: option.c:316 +#: option.c:342 #, c-format msgid "\n" "When you run pg_upgrade, you must provide the following information:\n" @@ -1399,7 +1502,7 @@ msgstr "\n" " каталог \"bin\" старого кластера (-b BINDIR)\n" " каталог \"bin\" нового кластера (-B BINDIR)\n" -#: option.c:322 +#: option.c:348 #, c-format msgid "\n" "For example:\n" @@ -1410,7 +1513,7 @@ msgstr "\n" " pg_upgrade -d старий_кластер/data -D новий_кластер/data -b старий_кластер/bin -B новий_кластер/bin\n" "або\n" -#: option.c:327 +#: option.c:353 #, c-format msgid " $ export PGDATAOLD=oldCluster/data\n" " $ export PGDATANEW=newCluster/data\n" @@ -1423,7 +1526,7 @@ msgstr " $ export PGDATAOLD=старий_кластер/data\n" " $ export PGBINNEW=новий_кластер/bin\n" " $ pg_upgrade\n" -#: option.c:333 +#: option.c:359 #, c-format msgid " C:\\> set PGDATAOLD=oldCluster/data\n" " C:\\> set PGDATANEW=newCluster/data\n" @@ -1436,51 +1539,51 @@ msgstr " C:\\> set PGDATAOLD=старий_кластер/data\n" " C:\\> set PGBINNEW=новий_кластер/bin\n" " C:\\> pg_upgrade\n" -#: option.c:339 +#: option.c:365 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: option.c:340 +#: option.c:366 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: option.c:380 +#: option.c:406 #, c-format msgid "You must identify the directory where the %s.\n" "Please use the %s command-line option or the %s environment variable." msgstr "Ви повинні визначити каталог, де знаходиться %s.\n" "Будь ласка, використайте параметр командного рядка %s або змінну середовища %s." -#: option.c:433 +#: option.c:459 #, c-format msgid "Finding the real data directory for the source cluster" msgstr "Пошук дійсного каталогу даних для початкового кластера" -#: option.c:435 +#: option.c:461 #, c-format msgid "Finding the real data directory for the target cluster" msgstr "Пошук дійсного каталогу даних для цільового кластера" -#: option.c:448 +#: option.c:474 #, c-format msgid "could not get data directory using %s: %m" msgstr "не вдалося отримати каталог даних, виконавши %s: %m" -#: option.c:452 +#: option.c:478 #, c-format msgid "could not get data directory using %s: %s" msgstr "не вдалося отримати каталог даних, виконавши %s: %s" -#: option.c:500 +#: option.c:526 #, c-format msgid "could not read line %d from file \"%s\": %m" msgstr "не вдалося прочитати рядок %d з файлу \"%s\": %m" -#: option.c:517 +#: option.c:543 #, c-format msgid "user-supplied old port number %hu corrected to %hu" msgstr "вказаний користувачем старий номер порту %hu змінений на %hu" @@ -1495,7 +1598,7 @@ msgstr "не вдалося створити робочий процес: %m" msgid "could not create worker thread: %m" msgstr "не вдалося створити робочий потік: %m" -#: parallel.c:294 +#: parallel.c:294 task.c:404 #, c-format msgid "%s() failed: %m" msgstr "%s() помилка: %m" @@ -1510,12 +1613,12 @@ msgstr "дочірній процес завершився ненормальн msgid "child worker exited abnormally: %m" msgstr "дочірній процес завершився аварійно: %m" -#: pg_upgrade.c:115 +#: pg_upgrade.c:114 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "не вдалося прочитати дозволи на каталог \"%s\": %m" -#: pg_upgrade.c:147 +#: pg_upgrade.c:146 #, c-format msgid "\n" "Performing Upgrade\n" @@ -1524,17 +1627,17 @@ msgstr "\n" "Виконання оновлення\n" "------------------" -#: pg_upgrade.c:192 +#: pg_upgrade.c:194 #, c-format msgid "Setting next OID for new cluster" msgstr "Встановлення наступного OID для нового кластера" -#: pg_upgrade.c:216 +#: pg_upgrade.c:218 #, c-format msgid "Sync data directory to disk" msgstr "Синхронізація каталогу даних на диск" -#: pg_upgrade.c:230 +#: pg_upgrade.c:234 #, c-format msgid "\n" "Upgrade Complete\n" @@ -1543,171 +1646,222 @@ msgstr "\n" "Оновлення завершено\n" "----------------" -#: pg_upgrade.c:263 pg_upgrade.c:276 pg_upgrade.c:283 pg_upgrade.c:290 -#: pg_upgrade.c:308 pg_upgrade.c:319 +#: pg_upgrade.c:267 pg_upgrade.c:280 pg_upgrade.c:287 pg_upgrade.c:294 +#: pg_upgrade.c:312 pg_upgrade.c:323 #, c-format msgid "directory path for new cluster is too long" msgstr "шлях каталогу для нового кластеру занадто довгий" -#: pg_upgrade.c:297 pg_upgrade.c:299 pg_upgrade.c:301 pg_upgrade.c:303 +#: pg_upgrade.c:301 pg_upgrade.c:303 pg_upgrade.c:305 pg_upgrade.c:307 +#: relfilenumber.c:293 relfilenumber.c:297 #, c-format msgid "could not create directory \"%s\": %m" msgstr "не вдалося створити каталог \"%s\": %m" -#: pg_upgrade.c:352 +#: pg_upgrade.c:356 #, c-format msgid "%s: could not find own program executable" msgstr "%s: не вдалося знайти файл виконання власної програми" -#: pg_upgrade.c:378 +#: pg_upgrade.c:382 #, c-format msgid "There seems to be a postmaster servicing the old cluster.\n" "Please shutdown that postmaster and try again." msgstr "Мабуть, запущений процес postmaster, який обслуговує старий кластер.\n" "Будь ласка, завершіть роботу процесу і спробуйте знову." -#: pg_upgrade.c:391 +#: pg_upgrade.c:395 #, c-format msgid "There seems to be a postmaster servicing the new cluster.\n" "Please shutdown that postmaster and try again." msgstr "Мабуть, запущений процес postmaster, який обслуговує новий кластер.\n" "Будь ласка, завершіть роботу процесу і спробуйте знову." -#: pg_upgrade.c:413 +#: pg_upgrade.c:421 +#, c-format +msgid "Setting the default char signedness for new cluster" +msgstr "Встановлення знаковості символів за замовчуванням для нового кластера" + +#: pg_upgrade.c:449 #, c-format msgid "Setting locale and encoding for new cluster" msgstr "Установка локалі та кодування для нового кластеру" -#: pg_upgrade.c:489 +#: pg_upgrade.c:527 #, c-format msgid "Analyzing all rows in the new cluster" msgstr "Аналіз всіх рядків у новому кластері" -#: pg_upgrade.c:502 +#: pg_upgrade.c:540 #, c-format msgid "Freezing all rows in the new cluster" msgstr "Закріплення всіх рядків у новому кластері" -#: pg_upgrade.c:522 +#: pg_upgrade.c:560 #, c-format msgid "Restoring global objects in the new cluster" msgstr "Відновлення глобальних об'єктів у новому кластері" -#: pg_upgrade.c:538 +#: pg_upgrade.c:577 #, c-format msgid "Restoring database schemas in the new cluster" msgstr "Відновлення схем баз даних у новому кластері" -#: pg_upgrade.c:662 +#: pg_upgrade.c:712 #, c-format msgid "Deleting files from new %s" msgstr "Видалення файлів з нового %s" -#: pg_upgrade.c:666 +#: pg_upgrade.c:716 #, c-format msgid "could not delete directory \"%s\"" msgstr "не вдалося видалити каталог \"%s\"" -#: pg_upgrade.c:685 +#: pg_upgrade.c:735 #, c-format msgid "Copying old %s to new server" msgstr "Копіювання старого %s до нового серверу" -#: pg_upgrade.c:711 +#: pg_upgrade.c:761 #, c-format msgid "Setting oldest XID for new cluster" msgstr "Встановлення найстарішого XID для нового кластеру" -#: pg_upgrade.c:719 +#: pg_upgrade.c:769 #, c-format msgid "Setting next transaction ID and epoch for new cluster" msgstr "Установка наступного ID транзакції й епохи для нового кластера" -#: pg_upgrade.c:749 +#: pg_upgrade.c:799 #, c-format msgid "Setting next multixact ID and offset for new cluster" msgstr "Установка наступного ID і зсуву мультитранзакції для нового кластера" -#: pg_upgrade.c:773 +#: pg_upgrade.c:823 #, c-format msgid "Setting oldest multixact ID in new cluster" msgstr "Установка найстаршого ID мультитранзакції в новому кластері" -#: pg_upgrade.c:793 +#: pg_upgrade.c:843 #, c-format msgid "Resetting WAL archives" msgstr "Скидання архівів WAL" -#: pg_upgrade.c:836 +#: pg_upgrade.c:886 #, c-format msgid "Setting frozenxid and minmxid counters in new cluster" msgstr "Установка лічильників frozenxid і minmxid у новому кластері" -#: pg_upgrade.c:838 +#: pg_upgrade.c:888 #, c-format msgid "Setting minmxid counter in new cluster" msgstr "Установка лічильника minmxid у новому кластері" -#: pg_upgrade.c:929 +#: pg_upgrade.c:979 #, c-format msgid "Restoring logical replication slots in the new cluster" msgstr "Відновлення слотів логічної реплікації в новому кластері" -#: relfilenumber.c:35 +#: relfilenumber.c:68 +#, c-format +msgid "could not synchronize file \"%s\": %m" +msgstr "не вдалося синхронізувати файл \"%s\": %m" + +#: relfilenumber.c:114 #, c-format msgid "Cloning user relation files" msgstr "Клонування файлів користувацьких відношень" -#: relfilenumber.c:38 +#: relfilenumber.c:117 #, c-format msgid "Copying user relation files" msgstr "Копіювання файлів користувацьких відношень" -#: relfilenumber.c:41 +#: relfilenumber.c:120 #, c-format msgid "Copying user relation files with copy_file_range" msgstr "Копіювання файлів користувацьких відношень за допомогою copy_file_range" -#: relfilenumber.c:44 +#: relfilenumber.c:123 #, c-format msgid "Linking user relation files" msgstr "Приєднання файлів користувацьких відношень" -#: relfilenumber.c:118 +#: relfilenumber.c:126 +#, c-format +msgid "Swapping data directories" +msgstr "Заміна каталогів даних" + +#: relfilenumber.c:200 #, c-format msgid "old database \"%s\" not found in the new cluster" msgstr "стара база даних \"%s\" не знайдена в новому кластері" -#: relfilenumber.c:221 +#: relfilenumber.c:287 +#, c-format +msgid "could not stat file \"%s\": %m" +msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" + +#: relfilenumber.c:301 relfilenumber.c:305 +#, c-format +msgid "could not rename directory \"%s\" to \"%s\": %m" +msgstr "не вдалося перейменувати каталог \"%s\" на \"%s\": %m" + +#: relfilenumber.c:375 relfilenumber.c:402 +#, c-format +msgid "could not open directory \"%s\": %m" +msgstr "не вдалося відкрити каталог \"%s\": %m" + +#: relfilenumber.c:396 relfilenumber.c:434 +#, c-format +msgid "could not read directory \"%s\": %m" +msgstr "не вдалося прочитати каталог \"%s\": %m" + +#: relfilenumber.c:439 +#, c-format +msgid "could not synchronize directory \"%s\": %m" +msgstr "не вдалося синхронізувати каталог \"%s\": %m" + +#: relfilenumber.c:441 +#, c-format +msgid "could not synchronize parent directory of \"%s\": %m" +msgstr "не вдалося синхронізувати батьківський каталог \"%s\": %m" + +#: relfilenumber.c:598 #, c-format msgid "error while checking for file existence \"%s.%s\" (\"%s\" to \"%s\"): %m" msgstr "помилка під час перевірки існування файлу \"%s.%s\" (з \"%s\" в \"%s\"): %m" -#: relfilenumber.c:238 +#: relfilenumber.c:615 #, c-format msgid "rewriting \"%s\" to \"%s\"" msgstr "переписування \"%s\" на \"%s\"" -#: relfilenumber.c:246 +#: relfilenumber.c:623 #, c-format msgid "cloning \"%s\" to \"%s\"" msgstr "клонування \"%s\" до \"%s\"" -#: relfilenumber.c:251 +#: relfilenumber.c:628 #, c-format msgid "copying \"%s\" to \"%s\"" msgstr "копіювання \"%s\" в \"%s\"" -#: relfilenumber.c:256 +#: relfilenumber.c:633 #, c-format msgid "copying \"%s\" to \"%s\" with copy_file_range" -msgstr "" +msgstr "копіювання \"%s\" в \"%s\" з copy_file_range" -#: relfilenumber.c:261 +#: relfilenumber.c:638 #, c-format msgid "linking \"%s\" to \"%s\"" msgstr "створення посилання на \"%s\" в \"%s\"" +#: relfilenumber.c:644 +#, c-format +msgid "should never happen" +msgstr "ніколи не повинно трапитися" + #: server.c:39 server.c:143 util.c:248 util.c:278 #, c-format msgid "Failure, exiting\n" @@ -1737,43 +1891,43 @@ msgstr "не вдалося відкрити файл версії \"%s\": %m" msgid "could not parse version file \"%s\"" msgstr "не вдалося проаналізувати файл версії \"%s\"" -#: server.c:310 +#: server.c:299 #, c-format msgid "\n" "%s" msgstr "\n" "%s" -#: server.c:314 +#: server.c:303 #, c-format msgid "could not connect to source postmaster started with the command:\n" "%s" msgstr "не вдалося підключитися до початкового процесу postmaster, запущеного командою:\n" "%s" -#: server.c:318 +#: server.c:307 #, c-format msgid "could not connect to target postmaster started with the command:\n" "%s" msgstr "не вдалося підключитися до цільового процесу postmaster, запущеного командою:\n" "%s" -#: server.c:332 +#: server.c:321 #, c-format msgid "pg_ctl failed to start the source server, or connection failed" msgstr "pg_ctl не зміг запустити початковий сервер або сталася помилка підключення" -#: server.c:334 +#: server.c:323 #, c-format msgid "pg_ctl failed to start the target server, or connection failed" msgstr "pg_ctl не зміг запустити цільовий сервер або сталася помилка підключення" -#: server.c:379 +#: server.c:368 task.c:195 #, c-format msgid "out of memory" msgstr "недостатньо пам'яті" -#: server.c:392 +#: server.c:381 #, c-format msgid "libpq environment variable %s has a non-local server value: %s" msgstr "у змінній середовища для libpq %s задано не локальне значення: %s" @@ -1793,13 +1947,23 @@ msgstr "каталог табличного простору \"%s\" не існ #: tablespace.c:87 #, c-format msgid "could not stat tablespace directory \"%s\": %m" -msgstr "" +msgstr "не вдалося отримати стан каталогу табличного простору \"%s\": %m" #: tablespace.c:92 #, c-format msgid "tablespace path \"%s\" is not a directory" msgstr "шлях табличного простору \"%s\" не вказує на каталог" +#: task.c:216 task.c:267 task.c:282 task.c:293 +#, c-format +msgid "connection failure: %s" +msgstr "помилка з'єднання: %s" + +#: task.c:395 +#, c-format +msgid "invalid socket" +msgstr "неприпустимий сокет" + #: util.c:53 util.c:56 util.c:139 util.c:170 util.c:172 #, c-format msgid "%-*s" @@ -1820,11 +1984,6 @@ msgstr "ok" msgid "Checking for hash indexes" msgstr "Перевірка геш-індексів" -#: version.c:121 -#, c-format -msgid "warning" -msgstr "попередження" - #: version.c:123 #, c-format msgid "\n" @@ -1854,17 +2013,17 @@ msgstr "\n" "після виконання суперкористувачем бази даних в psql, повторно створить\n" "всі неприпустимі індекси; до цього ніякі геш-індекси не будуть використовуватись." -#: version.c:153 +#: version.c:187 #, c-format msgid "Checking for extension updates" msgstr "Перевірка оновлень розширення" -#: version.c:200 +#: version.c:201 #, c-format msgid "notice" msgstr "повідомлення" -#: version.c:201 +#: version.c:202 #, c-format msgid "\n" "Your installation contains extensions that should be updated\n" diff --git a/src/bin/pg_upgrade/t/004_subscription.pl b/src/bin/pg_upgrade/t/004_subscription.pl index e46f02c6cc6..37fd7071df3 100644 --- a/src/bin/pg_upgrade/t/004_subscription.pl +++ b/src/bin/pg_upgrade/t/004_subscription.pl @@ -200,23 +200,27 @@ rmtree($new_sub->data_dir . "/pg_upgrade_output.d"); # Verify that the upgrade should be successful with tables in 'ready'/'init' -# state along with retaining the replication origin's remote lsn, subscription's -# running status, and failover option. +# state along with retaining the replication origin's remote lsn, +# subscription's running status, and failover option. Use multiple tables to +# verify deterministic pg_dump ordering of subscription relations during +# --binary-upgrade. $publisher->safe_psql( 'postgres', qq[ + CREATE TABLE tab_upgraded(id int); CREATE TABLE tab_upgraded1(id int); - CREATE PUBLICATION regress_pub4 FOR TABLE tab_upgraded1; + CREATE PUBLICATION regress_pub4 FOR TABLE tab_upgraded, tab_upgraded1; ]); $old_sub->safe_psql( 'postgres', qq[ + CREATE TABLE tab_upgraded(id int); CREATE TABLE tab_upgraded1(id int); CREATE SUBSCRIPTION regress_sub4 CONNECTION '$connstr' PUBLICATION regress_pub4 WITH (failover = true); ]); -# Wait till the table tab_upgraded1 reaches 'ready' state +# Wait till the tables tab_upgraded and tab_upgraded1 reach 'ready' state my $synced_query = - "SELECT count(1) = 1 FROM pg_subscription_rel WHERE srsubstate = 'r'"; + "SELECT count(1) = 2 FROM pg_subscription_rel WHERE srsubstate = 'r'"; $old_sub->poll_query_until('postgres', $synced_query) or die "Timed out while waiting for the table to reach ready state"; @@ -254,6 +258,8 @@ # Have the subscription in disabled state before upgrade $old_sub->safe_psql('postgres', "ALTER SUBSCRIPTION regress_sub5 DISABLE"); +my $tab_upgraded_oid = $old_sub->safe_psql('postgres', + "SELECT oid FROM pg_class WHERE relname = 'tab_upgraded'"); my $tab_upgraded1_oid = $old_sub->safe_psql('postgres', "SELECT oid FROM pg_class WHERE relname = 'tab_upgraded1'"); my $tab_upgraded2_oid = $old_sub->safe_psql('postgres', @@ -268,9 +274,9 @@ # ------------------------------------------------------ # Check that pg_upgrade is successful when all tables are in ready or in -# init state (tab_upgraded1 table is in ready state and tab_upgraded2 table is -# in init state) along with retaining the replication origin's remote lsn, -# subscription's running status, and failover option. +# init state (tab_upgraded and tab_upgraded1 tables are in ready state and +# tab_upgraded2 table is in init state) along with retaining the replication +# origin's remote lsn, subscription's running status, and failover option. # ------------------------------------------------------ command_ok( [ @@ -317,9 +323,10 @@ # Subscription relations should be preserved $result = $new_sub->safe_psql('postgres', "SELECT srrelid, srsubstate FROM pg_subscription_rel ORDER BY srrelid"); -is( $result, qq($tab_upgraded1_oid|r +is( $result, qq($tab_upgraded_oid|r +$tab_upgraded1_oid|r $tab_upgraded2_oid|i), - "there should be 2 rows in pg_subscription_rel(representing tab_upgraded1 and tab_upgraded2)" + "there should be 3 rows in pg_subscription_rel(representing tab_upgraded, tab_upgraded1 and tab_upgraded2)" ); # The replication origin's remote_lsn should be preserved diff --git a/src/bin/pg_verifybackup/po/es.po b/src/bin/pg_verifybackup/po/es.po index 36596cccba8..d660b92b11f 100644 --- a/src/bin/pg_verifybackup/po/es.po +++ b/src/bin/pg_verifybackup/po/es.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_verifybackup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:17+0000\n" +"POT-Creation-Date: 2026-02-06 23:17+0000\n" "PO-Revision-Date: 2025-09-21 10:28+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-ayuda \n" diff --git a/src/bin/pg_verifybackup/po/uk.po b/src/bin/pg_verifybackup/po/uk.po index 034b9764232..8ee669d9bde 100644 --- a/src/bin/pg_verifybackup/po/uk.po +++ b/src/bin/pg_verifybackup/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2023-04-19 11:17+0000\n" -"PO-Revision-Date: 2023-12-19 15:37\n" +"POT-Creation-Date: 2025-12-31 02:18+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,29 +14,100 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_16_STABLE/pg_verifybackup.pot\n" -"X-Crowdin-File-ID: 959\n" +"X-Crowdin-File: /REL_18_STABLE/pg_verifybackup.pot\n" +"X-Crowdin-File-ID: 1059\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " +#: ../../common/controldata_utils.c:97 +#, c-format +msgid "could not open file \"%s\" for reading: %m" +msgstr "не вдалося відкрити файл \"%s\" для читання: %m" + +#: ../../common/controldata_utils.c:110 pg_verifybackup.c:440 +#: pg_verifybackup.c:478 pg_verifybackup.c:1025 pg_verifybackup.c:1144 +#, c-format +msgid "could not read file \"%s\": %m" +msgstr "не вдалося прочитати файл \"%s\": %m" + +#: ../../common/controldata_utils.c:119 +#, c-format +msgid "could not read file \"%s\": read %d of %zu" +msgstr "не вдалося прочитати файл \"%s\": прочитано %d з %zu" + +#: ../../common/controldata_utils.c:132 ../../common/controldata_utils.c:280 +#: pg_verifybackup.c:1030 pg_verifybackup.c:1150 +#, c-format +msgid "could not close file \"%s\": %m" +msgstr "неможливо закрити файл \"%s\": %m" + +#: ../../common/controldata_utils.c:168 +msgid "byte ordering mismatch" +msgstr "неправильний порядок байтів" + +#: ../../common/controldata_utils.c:170 +#, c-format +msgid "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" +"the PostgreSQL installation would be incompatible with this data directory." +msgstr "можлива помилка у послідовності байтів.\n" +"Порядок байтів, що використовують для зберігання файлу pg_control, може не відповідати тому, який використовується цією програмою. У такому випадку результати нижче будуть неправильним, і інсталяція PostgreSQL буде несумісною з цим каталогом даних." + +#: ../../common/controldata_utils.c:230 pg_verifybackup.c:408 +#: pg_verifybackup.c:1005 pg_verifybackup.c:1113 +#, c-format +msgid "could not open file \"%s\": %m" +msgstr "не можливо відкрити файл \"%s\": %m" + +#: ../../common/controldata_utils.c:249 +#, c-format +msgid "could not write file \"%s\": %m" +msgstr "не вдалося записати файл \"%s\": %m" + +#: ../../common/controldata_utils.c:268 +#, c-format +msgid "could not fsync file \"%s\": %m" +msgstr "не вдалося fsync файл \"%s\": %m" + +#: ../../common/cryptohash.c:261 ../../common/cryptohash_openssl.c:356 +#: ../../common/jsonapi.c:2410 ../../common/parse_manifest.c:157 +#: ../../common/parse_manifest.c:852 +#, c-format +msgid "out of memory" +msgstr "недостатньо пам'яті" + +#: ../../common/cryptohash.c:266 ../../common/cryptohash.c:272 +#: ../../common/cryptohash_openssl.c:368 ../../common/cryptohash_openssl.c:376 +msgid "success" +msgstr "успіх" + +#: ../../common/cryptohash.c:268 ../../common/cryptohash_openssl.c:370 +msgid "destination buffer too small" +msgstr "буфер призначення занадто малий" + +#: ../../common/cryptohash_openssl.c:372 +msgid "OpenSSL failure" +msgstr "Помилка OpenSSL" + #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75 #: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161 #, c-format @@ -48,463 +119,682 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/jsonapi.c:1144 +#: ../../common/jsonapi.c:2435 +msgid "Recursive descent parser cannot use incremental lexer." +msgstr "Рекурсивний спуск не може використовувати інкрементний лексичний аналізатор." + +#: ../../common/jsonapi.c:2437 +msgid "Incremental parser requires incremental lexer." +msgstr "Інкрементний аналізатор потребує Інкрементний лексичний аналізатор." + +#: ../../common/jsonapi.c:2439 +msgid "JSON nested too deep, maximum permitted depth is 6400." +msgstr "JSON вкладений занадто глибокий, максимально дозволена глибина - 6400." + +#: ../../common/jsonapi.c:2441 #, c-format -msgid "Escape sequence \"\\%s\" is invalid." -msgstr "Неприпустима спеціальна послідовність \"\\%s\"." +msgid "Escape sequence \"\\%.*s\" is invalid." +msgstr "Неприпустима спеціальна послідовність \"\\%.*s\"." -#: ../../common/jsonapi.c:1147 +#: ../../common/jsonapi.c:2445 #, c-format msgid "Character with value 0x%02x must be escaped." msgstr "Символ зі значенням 0x%02x повинен бути пропущений." -#: ../../common/jsonapi.c:1150 +#: ../../common/jsonapi.c:2449 #, c-format -msgid "Expected end of input, but found \"%s\"." -msgstr "Очікувався кінець введення, але знайдено \"%s\"." +msgid "Expected end of input, but found \"%.*s\"." +msgstr "Очікувався кінець введення, але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1153 +#: ../../common/jsonapi.c:2452 #, c-format -msgid "Expected array element or \"]\", but found \"%s\"." -msgstr "Очікувався елемент масиву або \"]\", але знайдено \"%s\"." +msgid "Expected array element or \"]\", but found \"%.*s\"." +msgstr "Очікувався елемент масиву або \"]\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1156 +#: ../../common/jsonapi.c:2455 #, c-format -msgid "Expected \",\" or \"]\", but found \"%s\"." -msgstr "Очікувалось \",\" або \"]\", але знайдено \"%s\"." +msgid "Expected \",\" or \"]\", but found \"%.*s\"." +msgstr "Очікувалось \",\" або \"]\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1159 +#: ../../common/jsonapi.c:2458 #, c-format -msgid "Expected \":\", but found \"%s\"." -msgstr "Очікувалось \":\", але знайдено \"%s\"." +msgid "Expected \":\", but found \"%.*s\"." +msgstr "Очікувалось \":\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1162 +#: ../../common/jsonapi.c:2461 #, c-format -msgid "Expected JSON value, but found \"%s\"." -msgstr "Очікувалось значення JSON, але знайдено \"%s\"." +msgid "Expected JSON value, but found \"%.*s\"." +msgstr "Очікувалось значення JSON, але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1165 +#: ../../common/jsonapi.c:2464 msgid "The input string ended unexpectedly." msgstr "Несподіваний кінець вхідного рядка." -#: ../../common/jsonapi.c:1167 +#: ../../common/jsonapi.c:2466 #, c-format -msgid "Expected string or \"}\", but found \"%s\"." -msgstr "Очікувався рядок або \"}\", але знайдено \"%s\"." +msgid "Expected string or \"}\", but found \"%.*s\"." +msgstr "Очікувався рядок або \"}\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1170 +#: ../../common/jsonapi.c:2469 #, c-format -msgid "Expected \",\" or \"}\", but found \"%s\"." -msgstr "Очікувалось \",\" або \"}\", але знайдено \"%s\"." +msgid "Expected \",\" or \"}\", but found \"%.*s\"." +msgstr "Очікувалось \",\" або \"}\", але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1173 +#: ../../common/jsonapi.c:2472 #, c-format -msgid "Expected string, but found \"%s\"." -msgstr "Очікувався рядок, але знайдено \"%s\"." +msgid "Expected string, but found \"%.*s\"." +msgstr "Очікувався рядок, але знайдено \"%.*s\"." -#: ../../common/jsonapi.c:1176 +#: ../../common/jsonapi.c:2475 #, c-format -msgid "Token \"%s\" is invalid." -msgstr "Неприпустимий маркер \"%s\"." +msgid "Token \"%.*s\" is invalid." +msgstr "Неприпустимий маркер \"%.*s\"." -#: ../../common/jsonapi.c:1179 +#: ../../common/jsonapi.c:2481 msgid "\\u0000 cannot be converted to text." msgstr "\\u0000 не можна перетворити в текст." -#: ../../common/jsonapi.c:1181 +#: ../../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "За \"\\u\" повинні прямувати чотири шістнадцяткових числа." -#: ../../common/jsonapi.c:1184 +#: ../../common/jsonapi.c:2486 msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8." msgstr "Значення виходу Unicode не можна використовувати для значень кодових точок більше 007F, якщо кодування не UTF8." -#: ../../common/jsonapi.c:1187 +#: ../../common/jsonapi.c:2495 #, c-format msgid "Unicode escape value could not be translated to the server's encoding %s." msgstr "Значення символу Unicode не вдалося перекласти в кодування сервера %s." -#: ../../common/jsonapi.c:1190 +#: ../../common/jsonapi.c:2502 msgid "Unicode high surrogate must not follow a high surrogate." msgstr "Старший сурогат Unicode не повинен прямувати за іншим старшим сурогатом." -#: ../../common/jsonapi.c:1192 +#: ../../common/jsonapi.c:2504 msgid "Unicode low surrogate must follow a high surrogate." msgstr "Молодший сурогат Unicode не повинен прямувати за іншим молодшим сурогатом." -#: parse_manifest.c:150 -msgid "parsing failed" -msgstr "помилка парсингу" +#: ../../common/jsonapi.c:2526 +msgid "out of memory while constructing error description" +msgstr "недостатньо пам'яті під час створення опису помилки" + +#: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:854 +#, c-format +msgid "could not initialize checksum of manifest" +msgstr "не вдалося ініціалізувати контрольну суму маніфесту" -#: parse_manifest.c:152 +#: ../../common/parse_manifest.c:203 ../../common/parse_manifest.c:260 msgid "manifest ended unexpectedly" msgstr "маніфест закінчився несподівано" -#: parse_manifest.c:191 +#: ../../common/parse_manifest.c:209 ../../common/parse_manifest.c:861 +#, c-format +msgid "could not update checksum of manifest" +msgstr "не вдалося оновити контрольну суму маніфесту" + +#: ../../common/parse_manifest.c:301 msgid "unexpected object start" msgstr "неочікуваний початок об'єкта" -#: parse_manifest.c:226 +#: ../../common/parse_manifest.c:336 msgid "unexpected object end" msgstr "неочікуваний кінець об'єкта" -#: parse_manifest.c:255 +#: ../../common/parse_manifest.c:365 msgid "unexpected array start" msgstr "неочікуваний початок масиву" -#: parse_manifest.c:280 +#: ../../common/parse_manifest.c:390 msgid "unexpected array end" msgstr "неочікуваний кінець масиву" -#: parse_manifest.c:307 +#: ../../common/parse_manifest.c:417 msgid "expected version indicator" msgstr "індикатор очікуваної версії" -#: parse_manifest.c:336 +#: ../../common/parse_manifest.c:453 msgid "unrecognized top-level field" msgstr "нерозпізнане поле верхнього рівня" -#: parse_manifest.c:355 +#: ../../common/parse_manifest.c:472 msgid "unexpected file field" msgstr "неочікуване поле файлу" -#: parse_manifest.c:369 +#: ../../common/parse_manifest.c:486 msgid "unexpected WAL range field" msgstr "неочікуване поле діапазону WAL" -#: parse_manifest.c:375 +#: ../../common/parse_manifest.c:492 msgid "unexpected object field" msgstr "неочікуване поле об'єкта" -#: parse_manifest.c:407 +#: ../../common/parse_manifest.c:582 +msgid "unexpected scalar" +msgstr "неочікуваний скаляр" + +#: ../../common/parse_manifest.c:608 +msgid "manifest version not an integer" +msgstr "версія маніфесту не ціле число" + +#: ../../common/parse_manifest.c:612 msgid "unexpected manifest version" msgstr "неочікувана версія маніфесту" -#: parse_manifest.c:458 -msgid "unexpected scalar" -msgstr "неочікуваний скаляр" +#: ../../common/parse_manifest.c:636 +msgid "system identifier in manifest not an integer" +msgstr "системний ідентифікатор в маніфесті не ціле число" -#: parse_manifest.c:484 +#: ../../common/parse_manifest.c:661 msgid "missing path name" msgstr "пропущено шлях" -#: parse_manifest.c:487 +#: ../../common/parse_manifest.c:664 msgid "both path name and encoded path name" msgstr "і ім'я шляху, і закодований шлях" -#: parse_manifest.c:489 +#: ../../common/parse_manifest.c:666 msgid "missing size" msgstr "відсутній розмір" -#: parse_manifest.c:492 +#: ../../common/parse_manifest.c:669 msgid "checksum without algorithm" msgstr "контрольна сума без алгоритму" -#: parse_manifest.c:506 +#: ../../common/parse_manifest.c:683 msgid "could not decode file name" msgstr "не вдалося декодувати ім'я файлу" -#: parse_manifest.c:516 +#: ../../common/parse_manifest.c:693 msgid "file size is not an integer" msgstr "розмір файлу не є цілим числом" -#: parse_manifest.c:522 +#: ../../common/parse_manifest.c:699 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "нерозпізнаний алгоритм контрольної суми: \"%s\"" -#: parse_manifest.c:541 +#: ../../common/parse_manifest.c:718 #, c-format msgid "invalid checksum for file \"%s\": \"%s\"" msgstr "неприпустима контрольна сума для файлу \"%s\": \"%s\"" -#: parse_manifest.c:584 +#: ../../common/parse_manifest.c:761 msgid "missing timeline" msgstr "відсутня часова шкала" -#: parse_manifest.c:586 +#: ../../common/parse_manifest.c:763 msgid "missing start LSN" msgstr "відсутній LSN початку" -#: parse_manifest.c:588 +#: ../../common/parse_manifest.c:765 msgid "missing end LSN" msgstr "відсутній LSN кінця" -#: parse_manifest.c:594 +#: ../../common/parse_manifest.c:771 msgid "timeline is not an integer" msgstr "часова лінія не є цілим числом" -#: parse_manifest.c:597 +#: ../../common/parse_manifest.c:774 msgid "could not parse start LSN" msgstr "не вдалося проаналізувати початковий LSN" -#: parse_manifest.c:600 +#: ../../common/parse_manifest.c:777 msgid "could not parse end LSN" msgstr "не вдалося проаналізувати кінцевий LSN" -#: parse_manifest.c:661 +#: ../../common/parse_manifest.c:842 msgid "expected at least 2 lines" msgstr "очікувалося принаймні 2 рядки" -#: parse_manifest.c:664 +#: ../../common/parse_manifest.c:845 msgid "last line not newline-terminated" msgstr "останній рядок не завершений новим рядком" -#: parse_manifest.c:669 -#, c-format -msgid "out of memory" -msgstr "недостатньо пам'яті" - -#: parse_manifest.c:671 -#, c-format -msgid "could not initialize checksum of manifest" -msgstr "не вдалося ініціалізувати контрольну суму маніфесту" - -#: parse_manifest.c:673 -#, c-format -msgid "could not update checksum of manifest" -msgstr "не вдалося оновити контрольну суму маніфесту" - -#: parse_manifest.c:676 +#: ../../common/parse_manifest.c:864 #, c-format msgid "could not finalize checksum of manifest" msgstr "не вдалося остаточно завершити контрольну суму маніфесту" -#: parse_manifest.c:680 +#: ../../common/parse_manifest.c:868 #, c-format msgid "manifest has no checksum" msgstr "у маніфесті немає контрольної суми" -#: parse_manifest.c:684 +#: ../../common/parse_manifest.c:872 #, c-format msgid "invalid manifest checksum: \"%s\"" msgstr "неприпустима контрольна сума маніфесту: \"%s\"" -#: parse_manifest.c:688 +#: ../../common/parse_manifest.c:876 #, c-format msgid "manifest checksum mismatch" msgstr "невідповідність контрольної суми маніфесту" -#: parse_manifest.c:703 +#: ../../common/parse_manifest.c:891 #, c-format msgid "could not parse backup manifest: %s" msgstr "не вдалося проаналізувати маніфест резервної копії: %s" -#: pg_verifybackup.c:273 pg_verifybackup.c:282 pg_verifybackup.c:293 +#: ../../fe_utils/astreamer_gzip.c:115 +#, c-format +msgid "could not create compressed file \"%s\": %m" +msgstr "не вдалося створити стиснутий файл \"%s\": %m" + +#: ../../fe_utils/astreamer_gzip.c:127 +#, c-format +msgid "could not duplicate stdout: %m" +msgstr "не вдалося дублювати stdout: %m" + +#: ../../fe_utils/astreamer_gzip.c:131 +#, c-format +msgid "could not open output file: %m" +msgstr "не вдалося відкрити вихідний файл: %m" + +#: ../../fe_utils/astreamer_gzip.c:135 +#, c-format +msgid "could not set compression level %d: %s" +msgstr "не вдалося встановити рівень стискання %d: %s" + +#: ../../fe_utils/astreamer_gzip.c:140 ../../fe_utils/astreamer_gzip.c:273 +#: ../../fe_utils/astreamer_lz4.c:102 ../../fe_utils/astreamer_lz4.c:300 +#: ../../fe_utils/astreamer_zstd.c:133 ../../fe_utils/astreamer_zstd.c:288 +#, c-format +msgid "this build does not support compression with %s" +msgstr "ця збірка не підтримує стиснення з %s" + +#: ../../fe_utils/astreamer_gzip.c:167 +#, c-format +msgid "could not write to compressed file \"%s\": %s" +msgstr "не вдалося записати до стиснутого файлу \"%s\": %s" + +#: ../../fe_utils/astreamer_gzip.c:191 +#, c-format +msgid "could not close compressed file \"%s\": %m" +msgstr "не вдалося закрити стиснутий файл \"%s\": %m" + +#: ../../fe_utils/astreamer_gzip.c:269 +#, c-format +msgid "could not initialize compression library" +msgstr "не вдалося ініціалізувати бібліотеку стискання" + +#: ../../fe_utils/astreamer_gzip.c:320 ../../fe_utils/astreamer_lz4.c:356 +#: ../../fe_utils/astreamer_zstd.c:333 +#, c-format +msgid "could not decompress data: %s" +msgstr "не вдалося розпакувати дані: %s" + +#: ../../fe_utils/astreamer_lz4.c:97 +#, c-format +msgid "could not create lz4 compression context: %s" +msgstr "не вдалося створити контекст стиснення lz4: %s" + +#: ../../fe_utils/astreamer_lz4.c:142 +#, c-format +msgid "could not write lz4 header: %s" +msgstr "не вдалося записати заголовок lz4: %s" + +#: ../../fe_utils/astreamer_lz4.c:191 ../../fe_utils/astreamer_zstd.c:185 +#: ../../fe_utils/astreamer_zstd.c:227 +#, c-format +msgid "could not compress data: %s" +msgstr "не вдалося стиснути дані: %s" + +#: ../../fe_utils/astreamer_lz4.c:243 +#, c-format +msgid "could not end lz4 compression: %s" +msgstr "не вдалося закінчити стискання lz4: %s" + +#: ../../fe_utils/astreamer_lz4.c:295 +#, c-format +msgid "could not initialize compression library: %s" +msgstr "не вдалося ініціалізувати бібліотеку стиснення: %s" + +#: ../../fe_utils/astreamer_tar.c:244 +#, c-format +msgid "tar file trailer exceeds 2 blocks" +msgstr "причіп файлу tar перевищує 2 блоки" + +#: ../../fe_utils/astreamer_tar.c:249 astreamer_verify.c:130 +#, c-format +msgid "unexpected state while parsing tar archive" +msgstr "неочікуваний стан під час розбору архіву tar" + +#: ../../fe_utils/astreamer_tar.c:292 +#, c-format +msgid "tar member has empty name" +msgstr "частина tar містить порожню назву" + +#: ../../fe_utils/astreamer_tar.c:326 +#, c-format +msgid "COPY stream ended before last file was finished" +msgstr "потік COPY завершився до завершення останнього файлу" + +#: ../../fe_utils/astreamer_zstd.c:89 +#, c-format +msgid "could not create zstd compression context" +msgstr "не вдалося створити контекст стиснення zstd" + +#: ../../fe_utils/astreamer_zstd.c:95 +#, c-format +msgid "could not set zstd compression level to %d: %s" +msgstr "не вдалося встановити рівень стискання zstd на %d: %s" + +#: ../../fe_utils/astreamer_zstd.c:109 +#, c-format +msgid "could not set compression worker count to %d: %s" +msgstr "не вдалося встановити кількість процесів стискання на %d: %s" + +#: ../../fe_utils/astreamer_zstd.c:120 +#, c-format +msgid "could not enable long-distance mode: %s" +msgstr "не вдалося включити режим довгої відстані: %s" + +#: ../../fe_utils/astreamer_zstd.c:279 +#, c-format +msgid "could not create zstd decompression context" +msgstr "не вдалося створити контекст zstd декомпресії" + +#: astreamer_verify.c:198 +#, c-format +msgid "file \"%s\" is present in archive \"%s\" but not in the manifest" +msgstr "файл \"%s\" присутній в архіві \"%s\", але відсутній у маніфесті" + +#: astreamer_verify.c:211 +#, c-format +msgid "file \"%s\" has size %llu in archive \"%s\" but size % in the manifest" +msgstr "файл \"%s\" має розмір %llu в архіві \"%s\", але розмір % у маніфесті" + +#: astreamer_verify.c:236 +#, c-format +msgid "%s: could not initialize checksum of file \"%s\"" +msgstr "%s: не вдалося ініціалізувати контрольну суму файлу \"%s\"" + +#: astreamer_verify.c:274 pg_verifybackup.c:1133 +#, c-format +msgid "could not update checksum of file \"%s\"" +msgstr "не вдалося оновити контрольну суму файлу \"%s\"" + +#: astreamer_verify.c:300 +#, c-format +msgid "file \"%s\" in archive \"%s\" should contain % bytes, but % bytes were read" +msgstr "файл \"%s\" в архіві \"%s\" повинен містити % байтів, але було прочитано % байтів" + +#: astreamer_verify.c:312 pg_verifybackup.c:1179 +#, c-format +msgid "could not finalize checksum of file \"%s\"" +msgstr "не вдалося остаточно завершити контрольну суму файлу \"%s\"" + +#: astreamer_verify.c:320 +#, c-format +msgid "file \"%s\" in archive \"%s\" has checksum of length %d, but expected %d" +msgstr "файл \"%s\" в архіві \"%s\" має контрольну суму довжини %d, але очікувалось %d" + +#: astreamer_verify.c:325 +#, c-format +msgid "checksum mismatch for file \"%s\" in archive \"%s\"" +msgstr "невідповідність контрольної суми для файлу \"%s\" в архіві \"%s\"" + +#: astreamer_verify.c:387 +#, c-format +msgid "unexpected control file size %d, expected %d" +msgstr "неочікуваний розмір контрольного файлу %d, очікувалося %d" + +#: astreamer_verify.c:399 +#, c-format +msgid "%s: %s: CRC is incorrect" +msgstr "%s: %s: CRC невірний" + +#: astreamer_verify.c:405 +#, c-format +msgid "%s: %s: unexpected control file version" +msgstr "%s: %s: неочікувана версія контрольного файлу" + +#: astreamer_verify.c:412 +#, c-format +msgid "%s: %s: manifest system identifier is %, but control file has %" +msgstr "%s: %s: системний ідентифікатор маніфесту %, але контрольний файл має %" + +#: pg_verifybackup.c:208 +#, c-format +msgid "invalid backup format \"%s\", must be \"plain\" or \"tar\"" +msgstr "неприпустимий формат резервної копії \"%s\", має бути \"plain\" або \"tar\"" + +#: pg_verifybackup.c:229 pg_verifybackup.c:238 pg_verifybackup.c:249 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_verifybackup.c:281 +#: pg_verifybackup.c:237 #, c-format msgid "no backup directory specified" msgstr "не вказано папку резервної копії" -#: pg_verifybackup.c:291 +#: pg_verifybackup.c:247 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: pg_verifybackup.c:299 +#: pg_verifybackup.c:255 #, c-format msgid "cannot specify both %s and %s" msgstr "не можна вказати як %s, так і %s" -#: pg_verifybackup.c:319 +#: pg_verifybackup.c:275 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "програма \"%s\" потрібна для %s, але не знайдена в тому ж каталозі, що й \"%s\"" -#: pg_verifybackup.c:322 +#: pg_verifybackup.c:278 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "програма \"%s\" знайдена для \"%s\", але має відмінну версію від %s" -#: pg_verifybackup.c:378 -#, c-format -msgid "backup successfully verified\n" -msgstr "резервну копію успішно перевірено\n" - -#: pg_verifybackup.c:404 pg_verifybackup.c:748 +#: pg_verifybackup.c:304 pg_verifybackup.c:625 #, c-format -msgid "could not open file \"%s\": %m" -msgstr "не можливо відкрити файл \"%s\": %m" +msgid "could not open directory \"%s\": %m" +msgstr "не вдалося відкрити каталог \"%s\": %m" -#: pg_verifybackup.c:408 +#: pg_verifybackup.c:323 pg_verifybackup.c:412 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: pg_verifybackup.c:428 pg_verifybackup.c:779 +#: pg_verifybackup.c:340 #, c-format -msgid "could not read file \"%s\": %m" -msgstr "не вдалося прочитати файл \"%s\": %m" +msgid "pg_waldump cannot read tar files" +msgstr "pg_waldump не може читати файли tar" + +#: pg_verifybackup.c:341 +#, c-format +msgid "You must use -n/--no-parse-wal when verifying a tar-format backup." +msgstr "Ви повинні використовувати -n/--no-parse-wal при перевірці резервної копії tar-формату." -#: pg_verifybackup.c:431 +#: pg_verifybackup.c:383 +#, c-format +msgid "backup successfully verified\n" +msgstr "резервну копію успішно перевірено\n" + +#: pg_verifybackup.c:442 #, c-format msgid "could not read file \"%s\": read %d of %lld" msgstr "не вдалося прочитати файл \"%s\": прочитано %d з %lld" -#: pg_verifybackup.c:491 +#: pg_verifybackup.c:480 #, c-format -msgid "duplicate path name in backup manifest: \"%s\"" -msgstr "дубльований шлях у маніфесті резервного копіювання: \"%s\"" +msgid "could not read file \"%s\": read %lld of %lld" +msgstr "не вдалося прочитати файл \"%s\": прочитано %lld з %lld" -#: pg_verifybackup.c:554 pg_verifybackup.c:561 +#: pg_verifybackup.c:563 #, c-format -msgid "could not open directory \"%s\": %m" -msgstr "не вдалося відкрити каталог \"%s\": %m" +msgid "duplicate path name in backup manifest: \"%s\"" +msgstr "дубльований шлях у маніфесті резервного копіювання: \"%s\"" -#: pg_verifybackup.c:593 +#: pg_verifybackup.c:657 pg_verifybackup.c:827 #, c-format msgid "could not close directory \"%s\": %m" msgstr "не вдалося закрити каталог \"%s\": %m" -#: pg_verifybackup.c:613 +#: pg_verifybackup.c:678 pg_verifybackup.c:897 #, c-format msgid "could not stat file or directory \"%s\": %m" msgstr "не вдалося отримати інформацію про файл або каталог \"%s\": %m" -#: pg_verifybackup.c:636 +#: pg_verifybackup.c:701 #, c-format -msgid "\"%s\" is not a file or directory" -msgstr "\"%s\" не є файлом або каталогом" +msgid "\"%s\" is not a regular file or directory" +msgstr "\"%s\" не є звичайним файлом або каталогом" -#: pg_verifybackup.c:646 +#: pg_verifybackup.c:711 #, c-format msgid "\"%s\" is present on disk but not in the manifest" msgstr "\"%s\" присутній на диску, але не у маніфесті" -#: pg_verifybackup.c:658 +#: pg_verifybackup.c:723 #, c-format -msgid "\"%s\" has size %lld on disk but size %zu in the manifest" -msgstr "\"%s\" має розмір %lld на диску, але розмір %zu у маніфесті" +msgid "\"%s\" has size %llu on disk but size %llu in the manifest" +msgstr "\"%s\" має розмір %llu на диску, але розмір %llu у маніфесті" -#: pg_verifybackup.c:689 +#: pg_verifybackup.c:765 #, c-format -msgid "\"%s\" is present in the manifest but not on disk" -msgstr "\"%s\" присутній у маніфесті, але не на диску" +msgid "%s: CRC is incorrect" +msgstr "%s: CRC невірний" -#: pg_verifybackup.c:756 +#: pg_verifybackup.c:769 #, c-format -msgid "could not initialize checksum of file \"%s\"" -msgstr "не вдалося ініціалізувати контрольну суму файлу \"%s\"" +msgid "%s: unexpected control file version" +msgstr "%s: неочікувана версія контрольного файлу" -#: pg_verifybackup.c:768 +#: pg_verifybackup.c:774 #, c-format -msgid "could not update checksum of file \"%s\"" -msgstr "не вдалося оновити контрольну суму файлу \"%s\"" +msgid "%s: manifest system identifier is %, but control file has %" +msgstr "%s: системний ідентифікатор маніфесту %, але контрольний файл має %" -#: pg_verifybackup.c:785 +#: pg_verifybackup.c:906 #, c-format -msgid "could not close file \"%s\": %m" -msgstr "неможливо закрити файл \"%s\": %m" +msgid "file \"%s\" is not a regular file" +msgstr "файл \"%s\" не є звичайним файлом" -#: pg_verifybackup.c:804 +#: pg_verifybackup.c:936 pg_verifybackup.c:957 #, c-format -msgid "file \"%s\" should contain %zu bytes, but read %zu bytes" -msgstr "файл \"%s\" мусить містити %zu байтів, але прочитано %zu байтів" +msgid "file \"%s\" is not expected in a tar format backup" +msgstr "файл \"%s\" не очікується у резервній копії формату tar" -#: pg_verifybackup.c:814 +#: pg_verifybackup.c:1049 #, c-format -msgid "could not finalize checksum of file \"%s\"" -msgstr "не вдалося остаточно завершити контрольну суму файлу \"%s\"" +msgid "\"%s\" is present in the manifest but not on disk" +msgstr "\"%s\" присутній у маніфесті, але не на диску" -#: pg_verifybackup.c:822 +#: pg_verifybackup.c:1121 +#, c-format +msgid "could not initialize checksum of file \"%s\"" +msgstr "не вдалося ініціалізувати контрольну суму файлу \"%s\"" + +#: pg_verifybackup.c:1169 +#, c-format +msgid "file \"%s\" should contain % bytes, but read %" +msgstr "файл \"%s\" повинен містити % байтів, але прочитано %" + +#: pg_verifybackup.c:1187 #, c-format msgid "file \"%s\" has checksum of length %d, but expected %d" msgstr "файл \"%s\" має контрольну суму довжини %d, але очікувалось %d" -#: pg_verifybackup.c:826 +#: pg_verifybackup.c:1191 #, c-format msgid "checksum mismatch for file \"%s\"" msgstr "невідповідність контрольної суми для файлу \"%s\"" -#: pg_verifybackup.c:851 +#: pg_verifybackup.c:1217 #, c-format msgid "WAL parsing failed for timeline %u" msgstr "не вдалося проаналізувати WAL для часової шкали %u" -#: pg_verifybackup.c:965 +#: pg_verifybackup.c:1351 #, c-format msgid "%*s/%s kB (%d%%) verified" msgstr "%*s/%s MB (%d%%) перевірено" -#: pg_verifybackup.c:982 +#: pg_verifybackup.c:1368 #, c-format msgid "%s verifies a backup against the backup manifest.\n\n" msgstr "%s перевіряє резервну копію відповідно до маніфесту резервного копіювання.\n\n" -#: pg_verifybackup.c:983 +#: pg_verifybackup.c:1369 #, c-format msgid "Usage:\n" " %s [OPTION]... BACKUPDIR\n\n" msgstr "Використання:\n" " %s [OPTION]... КАТАЛОГ_КОПІЮВАННЯ\n\n" -#: pg_verifybackup.c:984 +#: pg_verifybackup.c:1370 #, c-format msgid "Options:\n" msgstr "Параметри:\n" -#: pg_verifybackup.c:985 +#: pg_verifybackup.c:1371 #, c-format msgid " -e, --exit-on-error exit immediately on error\n" msgstr " -e, --exit-on-error вийти при помилці\n" -#: pg_verifybackup.c:986 +#: pg_verifybackup.c:1372 +#, c-format +msgid " -F, --format=p|t backup format (plain, tar)\n" +msgstr " -F, --format=p|t формат резервної копії (plain, tar)\n" + +#: pg_verifybackup.c:1373 #, c-format msgid " -i, --ignore=RELATIVE_PATH ignore indicated path\n" msgstr " -i, --ignore=RELATIVE_PATH ігнорувати вказаний шлях\n" -#: pg_verifybackup.c:987 +#: pg_verifybackup.c:1374 #, c-format msgid " -m, --manifest-path=PATH use specified path for manifest\n" msgstr " -m, --manifest-path=PATH використовувати вказаний шлях для маніфесту\n" -#: pg_verifybackup.c:988 +#: pg_verifybackup.c:1375 #, c-format msgid " -n, --no-parse-wal do not try to parse WAL files\n" msgstr " -n, --no-parse-wal не намагатися аналізувати файли WAL\n" -#: pg_verifybackup.c:989 +#: pg_verifybackup.c:1376 #, c-format msgid " -P, --progress show progress information\n" msgstr " -P, --progress повідомляти про хід процесу\n" -#: pg_verifybackup.c:990 +#: pg_verifybackup.c:1377 #, c-format msgid " -q, --quiet do not print any output, except for errors\n" msgstr " -q, --quiet не друкувати жодного виводу, окрім помилок\n" -#: pg_verifybackup.c:991 +#: pg_verifybackup.c:1378 #, c-format msgid " -s, --skip-checksums skip checksum verification\n" msgstr " -s, --skip-checksums не перевіряти контрольні суми\n" -#: pg_verifybackup.c:992 +#: pg_verifybackup.c:1379 #, c-format msgid " -w, --wal-directory=PATH use specified path for WAL files\n" msgstr " -w, --wal-directory=PATH використовувати вказаний шлях для файлів WAL\n" -#: pg_verifybackup.c:993 +#: pg_verifybackup.c:1380 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію, потім вийти\n" -#: pg_verifybackup.c:994 +#: pg_verifybackup.c:1381 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: pg_verifybackup.c:995 +#: pg_verifybackup.c:1382 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: pg_verifybackup.c:996 +#: pg_verifybackup.c:1383 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" diff --git a/src/bin/pg_waldump/po/es.po b/src/bin/pg_waldump/po/es.po index 3509e55c8d1..6d937a65f0b 100644 --- a/src/bin/pg_waldump/po/es.po +++ b/src/bin/pg_waldump/po/es.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_waldump (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:19+0000\n" +"POT-Creation-Date: 2026-02-06 23:18+0000\n" "PO-Revision-Date: 2025-09-21 11:39+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_waldump/po/uk.po b/src/bin/pg_waldump/po/uk.po index 09da6eebce3..f7f7cc74eb3 100644 --- a/src/bin/pg_waldump/po/uk.po +++ b/src/bin/pg_waldump/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:19+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:19+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_waldump.pot\n" -"X-Crowdin-File-ID: 984\n" +"X-Crowdin-File: /REL_18_STABLE/pg_waldump.pot\n" +"X-Crowdin-File-ID: 1041\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -48,45 +48,45 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:70 ../../common/file_utils.c:347 -#: ../../common/file_utils.c:406 ../../common/file_utils.c:480 pg_waldump.c:199 +#: ../../common/file_utils.c:69 ../../common/file_utils.c:370 +#: ../../common/file_utils.c:428 ../../common/file_utils.c:502 pg_waldump.c:199 #: pg_waldump.c:532 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 #: pg_waldump.c:1104 pg_waldump.c:1127 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:418 ../../common/file_utils.c:488 +#: ../../common/file_utils.c:440 ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -434,157 +434,157 @@ msgstr "помилка у записі WAL у %X/%X: %s" msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: xlogreader.c:619 +#: xlogreader.c:620 #, c-format msgid "invalid record offset at %X/%X: expected at least %u, got %u" msgstr "неприпустиме зміщення запису в %X/%X: очікувалось хоча б %u, отримано %u" -#: xlogreader.c:628 +#: xlogreader.c:629 #, c-format msgid "contrecord is requested by %X/%X" msgstr "по зсуву %X/%X запитано продовження запису" -#: xlogreader.c:669 xlogreader.c:1134 +#: xlogreader.c:670 xlogreader.c:1145 #, c-format msgid "invalid record length at %X/%X: expected at least %u, got %u" msgstr "неприпустима довжина запису %X/%X: очікувалась мінімум %u, отримано %u" -#: xlogreader.c:758 +#: xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" -msgstr "немає прапорця contrecord в позиції %X/%X" +msgstr "немає прапора contrecord на %X/%X" -#: xlogreader.c:771 +#: xlogreader.c:773 #, c-format msgid "invalid contrecord length %u (expected %lld) at %X/%X" msgstr "неприпустима довжина contrecord %u (очікувалось %lld) на %X/%X" -#: xlogreader.c:1142 +#: xlogreader.c:1153 #, c-format msgid "invalid resource manager ID %u at %X/%X" msgstr "невірний ID менеджера ресурсів %u в %X/%X" -#: xlogreader.c:1155 xlogreader.c:1171 +#: xlogreader.c:1166 xlogreader.c:1182 #, c-format msgid "record with incorrect prev-link %X/%X at %X/%X" msgstr "запис з неправильним попереднім посиланням %X/%X на %X/%X" -#: xlogreader.c:1209 +#: xlogreader.c:1220 #, c-format msgid "incorrect resource manager data checksum in record at %X/%X" msgstr "некоректна контрольна сума даних менеджера ресурсів у запису по зсуву %X/%X" -#: xlogreader.c:1243 +#: xlogreader.c:1254 #, c-format msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "невірне магічне число %04X в сегменті WAL %s, LSN %X/%X, зсув %u" -#: xlogreader.c:1258 xlogreader.c:1300 +#: xlogreader.c:1269 xlogreader.c:1311 #, c-format msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "невірні інформаційні біти %04X в сегменті WAL %s, LSN %X/%X, зсув %u" -#: xlogreader.c:1274 +#: xlogreader.c:1285 #, c-format -msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" -msgstr "WAL файл належить іншій системі баз даних: ідентифікатор системи баз даних де міститься WAL файл - %llu, а ідентифікатор системи баз даних pg_control - %llu" +msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" +msgstr "WAL файл належить іншій системі баз даних: ідентифікатор системи баз даних де міститься WAL файл - %, а ідентифікатор системи баз даних pg_control - %" -#: xlogreader.c:1282 +#: xlogreader.c:1293 #, c-format msgid "WAL file is from different database system: incorrect segment size in page header" msgstr "Файл WAL належить іншій системі баз даних: некоректний розмір сегменту в заголовку сторінки" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header" msgstr "Файл WAL належить іншій системі баз даних: некоректний XLOG_BLCKSZ в заголовку сторінки" -#: xlogreader.c:1320 +#: xlogreader.c:1331 #, c-format msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u" msgstr "неочікуваний pageaddr %X/%X у сегменті WAL %s, LSN %X/%X, зміщення %u" -#: xlogreader.c:1346 +#: xlogreader.c:1357 #, c-format msgid "out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, offset %u" msgstr "порушення послідовності ID лінії часу %u (після %u) у сегменті WAL %s, LSN %X/%X, зсув %u" -#: xlogreader.c:1749 +#: xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "ідентифікатор блока %u out-of-order в позиції %X/%X" -#: xlogreader.c:1773 +#: xlogreader.c:1793 #, c-format msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X" msgstr "BKPBLOCK_HAS_DATA встановлений, але немає даних в позиції %X/%X" -#: xlogreader.c:1780 +#: xlogreader.c:1800 #, c-format msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X" msgstr "BKPBLOCK_HAS_DATA встановлений, але довжина даних дорівнює %u в позиції %X/%X" -#: xlogreader.c:1816 +#: xlogreader.c:1836 #, 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" -#: xlogreader.c:1832 +#: xlogreader.c:1852 #, 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" -#: xlogreader.c:1846 +#: xlogreader.c:1866 #, c-format msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X" msgstr "BKPIMAGE_COMPRESSED встановлений, але довжина образу блока дорівнює %u в позиції %X/%X" -#: xlogreader.c:1861 +#: xlogreader.c:1881 #, c-format msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_COMPRESSED set, but block image length is %u at %X/%X" msgstr "ні BKPIMAGE_HAS_HOLE, ні BKPIMAGE_COMPRESSED не встановлені, але довжина образу блока дорівнює %u в позиції %X/%X" -#: xlogreader.c:1877 +#: xlogreader.c:1897 #, c-format msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X" msgstr "BKPBLOCK_SAME_REL встановлений, але попереднє значення не задано в позиції %X/%X" -#: xlogreader.c:1889 +#: xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "невірний ідентифікатор блоку %u в позиції %X/%X" -#: xlogreader.c:1956 +#: xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "запис з невірною довжиною на %X/%X" -#: xlogreader.c:1982 +#: xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "не вдалося знайти блок резервної копії з ID %d у записі WAL" -#: xlogreader.c:2066 +#: xlogreader.c:2086 #, c-format msgid "could not restore image at %X/%X with invalid block %d specified" msgstr "не вдалося відновити зображення %X/%X з недійсним вказаним блоком %d" -#: xlogreader.c:2073 +#: xlogreader.c:2093 #, c-format msgid "could not restore image at %X/%X with invalid state, block %d" msgstr "не вдалося відновити зображення %X/%X з недійсним станом, блок %d" -#: xlogreader.c:2100 xlogreader.c:2117 +#: xlogreader.c:2120 xlogreader.c:2137 #, c-format msgid "could not restore image at %X/%X compressed with %s not supported by build, block %d" msgstr "не вдалося відновити зображення в %X/%X, стиснуте %s, не підтримується збіркою, блок %d" -#: xlogreader.c:2126 +#: xlogreader.c:2146 #, c-format msgid "could not restore image at %X/%X compressed with unknown method, block %d" msgstr "не вдалося відновити зображення %X/%X стиснуте з невідомим методом, блок %d" -#: xlogreader.c:2134 +#: xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "не вдалося розпакувати зображення на %X/%X, блок %d" diff --git a/src/bin/pg_waldump/t/002_save_fullpage.pl b/src/bin/pg_waldump/t/002_save_fullpage.pl index 17b15e3a649..bed3e6c3ef8 100644 --- a/src/bin/pg_waldump/t/002_save_fullpage.pl +++ b/src/bin/pg_waldump/t/002_save_fullpage.pl @@ -105,8 +105,9 @@ sub get_block_lsn my ($hi_lsn_bk, $lo_lsn_bk) = get_block_lsn($fullpath, $blocksize); # The LSN on the block comes before the file's LSN. - ok( $hi_lsn_fn . $lo_lsn_fn gt $hi_lsn_bk . $lo_lsn_bk, - 'LSN stored in the file precedes the one stored in the block'); + ok( $hi_lsn_fn . $lo_lsn_fn ge $hi_lsn_bk . $lo_lsn_bk, + "LSN stored in the file $hi_lsn_fn/$lo_lsn_fn precedes the one stored in the block $hi_lsn_bk/$lo_lsn_bk" + ); } ok($file_count > 0, 'verify that at least one block has been saved'); diff --git a/src/bin/pg_walsummary/po/es.po b/src/bin/pg_walsummary/po/es.po index f73f6eb25be..7afad71250c 100644 --- a/src/bin/pg_walsummary/po/es.po +++ b/src/bin/pg_walsummary/po/es.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_walsummary (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:23+0000\n" +"POT-Creation-Date: 2026-02-06 23:22+0000\n" "PO-Revision-Date: 2024-08-01 12:41-0400\n" "Last-Translator: Álvaor Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/bin/pg_walsummary/po/uk.po b/src/bin/pg_walsummary/po/uk.po index 523b46a7f12..e4a5d1aa256 100644 --- a/src/bin/pg_walsummary/po/uk.po +++ b/src/bin/pg_walsummary/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:24+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:54+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pg_walsummary.pot\n" -"X-Crowdin-File-ID: 992\n" +"X-Crowdin-File: /REL_18_STABLE/pg_walsummary.pot\n" +"X-Crowdin-File-ID: 1049\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -48,45 +48,45 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:70 ../../common/file_utils.c:347 -#: ../../common/file_utils.c:406 ../../common/file_utils.c:480 -#: pg_walsummary.c:109 +#: ../../common/file_utils.c:69 ../../common/file_utils.c:370 +#: ../../common/file_utils.c:428 ../../common/file_utils.c:502 +#: pg_walsummary.c:108 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:418 ../../common/file_utils.c:488 +#: ../../common/file_utils.c:440 ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -106,71 +106,71 @@ msgstr "%s має бути в діапазоні %d..%d" msgid "unrecognized sync method: %s" msgstr "нерозпізнаний метод синхронізації: %s" -#: pg_walsummary.c:87 pg_walsummary.c:95 +#: pg_walsummary.c:86 pg_walsummary.c:94 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: pg_walsummary.c:94 +#: pg_walsummary.c:93 #, c-format msgid "no input files specified" msgstr "не вказано вхідні файли" -#: pg_walsummary.c:252 +#: pg_walsummary.c:251 #, c-format msgid "could not read file \"%s\": %m" msgstr "не вдалося прочитати файл \"%s\": %m" -#: pg_walsummary.c:267 +#: pg_walsummary.c:266 #, c-format msgid "%s prints the contents of a WAL summary file.\n\n" msgstr "%s друкує вміст файлу зведення WAL.\n\n" -#: pg_walsummary.c:268 +#: pg_walsummary.c:267 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: pg_walsummary.c:269 +#: pg_walsummary.c:268 #, c-format msgid " %s [OPTION]... FILE...\n" msgstr " %s [OPTION]... FILE...\n" -#: pg_walsummary.c:270 +#: pg_walsummary.c:269 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: pg_walsummary.c:271 +#: pg_walsummary.c:270 #, c-format msgid " -i, --individual list block numbers individually, not as ranges\n" msgstr " -i, --individual вивести номера блоків індивідуально, не як діапазони\n" -#: pg_walsummary.c:272 +#: pg_walsummary.c:271 #, c-format msgid " -q, --quiet don't print anything, just parse the files\n" msgstr " -q, --quiet не друкувати нічого, просто розібрати файли\n" -#: pg_walsummary.c:273 +#: pg_walsummary.c:272 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: pg_walsummary.c:274 +#: pg_walsummary.c:273 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: pg_walsummary.c:276 +#: pg_walsummary.c:275 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: pg_walsummary.c:277 +#: pg_walsummary.c:276 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c index 27adec17908..ac008421a62 100644 --- a/src/bin/pgbench/pgbench.c +++ b/src/bin/pgbench/pgbench.c @@ -3906,14 +3906,18 @@ doRetry(CState *st, pg_time_usec_t *now) } /* - * Read results and discard it until a sync point. + * Read and discard results until the last sync point. */ static int discardUntilSync(CState *st) { bool received_sync = false; - /* send a sync */ + /* + * Send a Sync message to ensure at least one PGRES_PIPELINE_SYNC is + * received and to avoid an infinite loop, since all earlier ones may have + * already been received. + */ if (!PQpipelineSync(st->con)) { pg_log_error("client %d aborted: failed to send a pipeline sync", @@ -3921,29 +3925,42 @@ discardUntilSync(CState *st) return 0; } - /* receive PGRES_PIPELINE_SYNC and null following it */ + /* + * Continue reading results until the last sync point, i.e., until + * reaching null just after PGRES_PIPELINE_SYNC. + */ for (;;) { PGresult *res = PQgetResult(st->con); + if (PQstatus(st->con) == CONNECTION_BAD) + { + pg_log_error("client %d aborted while rolling back the transaction after an error; perhaps the backend died while processing", + st->id); + PQclear(res); + return 0; + } + if (PQresultStatus(res) == PGRES_PIPELINE_SYNC) received_sync = true; - else if (received_sync) + else if (received_sync && res == NULL) { - /* - * PGRES_PIPELINE_SYNC must be followed by another - * PGRES_PIPELINE_SYNC or NULL; otherwise, assert failure. - */ - Assert(res == NULL); - /* * Reset ongoing sync count to 0 since all PGRES_PIPELINE_SYNC * results have been discarded. */ st->num_syncs = 0; - PQclear(res); break; } + else + { + /* + * If a PGRES_PIPELINE_SYNC is followed by something other than + * PGRES_PIPELINE_SYNC or NULL, another PGRES_PIPELINE_SYNC will + * appear later. Reset received_sync to false to wait for it. + */ + received_sync = false; + } PQclear(res); } diff --git a/src/bin/psql/po/de.po b/src/bin/psql/po/de.po index 10c0351a6ff..a48d230996e 100644 --- a/src/bin/psql/po/de.po +++ b/src/bin/psql/po/de.po @@ -1,5 +1,5 @@ # German message translation file for psql -# Peter Eisentraut , 2001 - 2025. +# Peter Eisentraut , 2001 - 2026. # # Use these quotes: »%s« # @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-06 08:48+0000\n" -"PO-Revision-Date: 2025-11-06 10:13+0100\n" +"POT-Creation-Date: 2026-02-04 18:48+0000\n" +"PO-Revision-Date: 2026-02-05 14:19+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -4446,189 +4446,189 @@ msgstr "%s: Speicher aufgebraucht" #: sql_help.c:746 sql_help.c:750 sql_help.c:771 sql_help.c:774 sql_help.c:777 #: sql_help.c:806 sql_help.c:818 sql_help.c:826 sql_help.c:829 sql_help.c:832 #: sql_help.c:847 sql_help.c:850 sql_help.c:879 sql_help.c:884 sql_help.c:889 -#: sql_help.c:894 sql_help.c:899 sql_help.c:926 sql_help.c:928 sql_help.c:930 -#: sql_help.c:932 sql_help.c:935 sql_help.c:937 sql_help.c:984 sql_help.c:1029 -#: sql_help.c:1034 sql_help.c:1039 sql_help.c:1044 sql_help.c:1049 -#: sql_help.c:1068 sql_help.c:1079 sql_help.c:1081 sql_help.c:1102 -#: sql_help.c:1112 sql_help.c:1113 sql_help.c:1115 sql_help.c:1117 -#: sql_help.c:1129 sql_help.c:1133 sql_help.c:1135 sql_help.c:1147 -#: sql_help.c:1149 sql_help.c:1151 sql_help.c:1153 sql_help.c:1172 -#: sql_help.c:1174 sql_help.c:1178 sql_help.c:1182 sql_help.c:1186 -#: sql_help.c:1189 sql_help.c:1190 sql_help.c:1191 sql_help.c:1194 -#: sql_help.c:1197 sql_help.c:1199 sql_help.c:1341 sql_help.c:1343 -#: sql_help.c:1346 sql_help.c:1349 sql_help.c:1351 sql_help.c:1353 -#: sql_help.c:1356 sql_help.c:1359 sql_help.c:1487 sql_help.c:1489 -#: sql_help.c:1491 sql_help.c:1494 sql_help.c:1515 sql_help.c:1518 -#: sql_help.c:1521 sql_help.c:1524 sql_help.c:1528 sql_help.c:1530 -#: sql_help.c:1532 sql_help.c:1534 sql_help.c:1548 sql_help.c:1551 -#: sql_help.c:1553 sql_help.c:1555 sql_help.c:1565 sql_help.c:1567 -#: sql_help.c:1577 sql_help.c:1579 sql_help.c:1589 sql_help.c:1592 -#: sql_help.c:1615 sql_help.c:1617 sql_help.c:1619 sql_help.c:1621 -#: sql_help.c:1624 sql_help.c:1626 sql_help.c:1629 sql_help.c:1632 -#: sql_help.c:1683 sql_help.c:1726 sql_help.c:1729 sql_help.c:1731 -#: sql_help.c:1733 sql_help.c:1736 sql_help.c:1738 sql_help.c:1740 -#: sql_help.c:1743 sql_help.c:1793 sql_help.c:1809 sql_help.c:2044 -#: sql_help.c:2113 sql_help.c:2132 sql_help.c:2145 sql_help.c:2203 -#: sql_help.c:2211 sql_help.c:2221 sql_help.c:2249 sql_help.c:2282 -#: sql_help.c:2300 sql_help.c:2328 sql_help.c:2451 sql_help.c:2497 -#: sql_help.c:2522 sql_help.c:2545 sql_help.c:2549 sql_help.c:2583 -#: sql_help.c:2603 sql_help.c:2625 sql_help.c:2639 sql_help.c:2660 -#: sql_help.c:2689 sql_help.c:2722 sql_help.c:2745 sql_help.c:2794 -#: sql_help.c:3098 sql_help.c:3111 sql_help.c:3128 sql_help.c:3144 -#: sql_help.c:3184 sql_help.c:3238 sql_help.c:3242 sql_help.c:3244 -#: sql_help.c:3251 sql_help.c:3270 sql_help.c:3297 sql_help.c:3332 -#: sql_help.c:3344 sql_help.c:3353 sql_help.c:3399 sql_help.c:3413 -#: sql_help.c:3441 sql_help.c:3449 sql_help.c:3461 sql_help.c:3471 -#: sql_help.c:3479 sql_help.c:3487 sql_help.c:3495 sql_help.c:3503 -#: sql_help.c:3512 sql_help.c:3523 sql_help.c:3531 sql_help.c:3539 -#: sql_help.c:3547 sql_help.c:3555 sql_help.c:3565 sql_help.c:3574 -#: sql_help.c:3583 sql_help.c:3591 sql_help.c:3601 sql_help.c:3612 -#: sql_help.c:3620 sql_help.c:3629 sql_help.c:3640 sql_help.c:3649 -#: sql_help.c:3657 sql_help.c:3665 sql_help.c:3673 sql_help.c:3681 -#: sql_help.c:3689 sql_help.c:3697 sql_help.c:3705 sql_help.c:3713 -#: sql_help.c:3721 sql_help.c:3729 sql_help.c:3746 sql_help.c:3755 -#: sql_help.c:3763 sql_help.c:3780 sql_help.c:3795 sql_help.c:4110 -#: sql_help.c:4233 sql_help.c:4262 sql_help.c:4278 sql_help.c:4280 -#: sql_help.c:4784 sql_help.c:4832 sql_help.c:4991 +#: sql_help.c:894 sql_help.c:899 sql_help.c:935 sql_help.c:937 sql_help.c:939 +#: sql_help.c:941 sql_help.c:944 sql_help.c:946 sql_help.c:998 sql_help.c:1043 +#: sql_help.c:1048 sql_help.c:1053 sql_help.c:1058 sql_help.c:1063 +#: sql_help.c:1082 sql_help.c:1093 sql_help.c:1095 sql_help.c:1116 +#: sql_help.c:1126 sql_help.c:1127 sql_help.c:1129 sql_help.c:1131 +#: sql_help.c:1143 sql_help.c:1147 sql_help.c:1149 sql_help.c:1161 +#: sql_help.c:1163 sql_help.c:1165 sql_help.c:1167 sql_help.c:1186 +#: sql_help.c:1188 sql_help.c:1192 sql_help.c:1196 sql_help.c:1200 +#: sql_help.c:1203 sql_help.c:1204 sql_help.c:1205 sql_help.c:1208 +#: sql_help.c:1211 sql_help.c:1213 sql_help.c:1355 sql_help.c:1357 +#: sql_help.c:1360 sql_help.c:1363 sql_help.c:1365 sql_help.c:1367 +#: sql_help.c:1370 sql_help.c:1373 sql_help.c:1501 sql_help.c:1503 +#: sql_help.c:1505 sql_help.c:1508 sql_help.c:1529 sql_help.c:1532 +#: sql_help.c:1535 sql_help.c:1538 sql_help.c:1542 sql_help.c:1544 +#: sql_help.c:1546 sql_help.c:1548 sql_help.c:1562 sql_help.c:1565 +#: sql_help.c:1567 sql_help.c:1569 sql_help.c:1579 sql_help.c:1581 +#: sql_help.c:1591 sql_help.c:1593 sql_help.c:1603 sql_help.c:1606 +#: sql_help.c:1629 sql_help.c:1631 sql_help.c:1633 sql_help.c:1635 +#: sql_help.c:1638 sql_help.c:1640 sql_help.c:1643 sql_help.c:1646 +#: sql_help.c:1697 sql_help.c:1740 sql_help.c:1743 sql_help.c:1745 +#: sql_help.c:1747 sql_help.c:1750 sql_help.c:1752 sql_help.c:1754 +#: sql_help.c:1757 sql_help.c:1807 sql_help.c:1823 sql_help.c:2058 +#: sql_help.c:2127 sql_help.c:2146 sql_help.c:2159 sql_help.c:2217 +#: sql_help.c:2225 sql_help.c:2235 sql_help.c:2263 sql_help.c:2296 +#: sql_help.c:2314 sql_help.c:2342 sql_help.c:2465 sql_help.c:2511 +#: sql_help.c:2536 sql_help.c:2559 sql_help.c:2563 sql_help.c:2597 +#: sql_help.c:2617 sql_help.c:2639 sql_help.c:2653 sql_help.c:2674 +#: sql_help.c:2707 sql_help.c:2742 sql_help.c:2765 sql_help.c:2814 +#: sql_help.c:3118 sql_help.c:3131 sql_help.c:3148 sql_help.c:3164 +#: sql_help.c:3204 sql_help.c:3258 sql_help.c:3262 sql_help.c:3264 +#: sql_help.c:3271 sql_help.c:3290 sql_help.c:3317 sql_help.c:3352 +#: sql_help.c:3364 sql_help.c:3373 sql_help.c:3419 sql_help.c:3433 +#: sql_help.c:3461 sql_help.c:3469 sql_help.c:3481 sql_help.c:3491 +#: sql_help.c:3499 sql_help.c:3507 sql_help.c:3515 sql_help.c:3523 +#: sql_help.c:3532 sql_help.c:3543 sql_help.c:3551 sql_help.c:3559 +#: sql_help.c:3567 sql_help.c:3575 sql_help.c:3585 sql_help.c:3594 +#: sql_help.c:3603 sql_help.c:3611 sql_help.c:3621 sql_help.c:3632 +#: sql_help.c:3640 sql_help.c:3649 sql_help.c:3660 sql_help.c:3669 +#: sql_help.c:3677 sql_help.c:3685 sql_help.c:3693 sql_help.c:3701 +#: sql_help.c:3709 sql_help.c:3717 sql_help.c:3725 sql_help.c:3733 +#: sql_help.c:3741 sql_help.c:3749 sql_help.c:3766 sql_help.c:3775 +#: sql_help.c:3783 sql_help.c:3800 sql_help.c:3815 sql_help.c:4130 +#: sql_help.c:4253 sql_help.c:4282 sql_help.c:4298 sql_help.c:4300 +#: sql_help.c:4804 sql_help.c:4852 sql_help.c:5011 msgid "name" msgstr "Name" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1886 -#: sql_help.c:3414 sql_help.c:4551 +#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1900 +#: sql_help.c:3434 sql_help.c:4571 msgid "aggregate_signature" msgstr "Aggregatsignatur" #: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:274 #: sql_help.c:295 sql_help.c:426 sql_help.c:473 sql_help.c:552 sql_help.c:600 #: sql_help.c:618 sql_help.c:645 sql_help.c:698 sql_help.c:773 sql_help.c:828 -#: sql_help.c:849 sql_help.c:888 sql_help.c:938 sql_help.c:985 sql_help.c:1038 -#: sql_help.c:1070 sql_help.c:1080 sql_help.c:1116 sql_help.c:1136 -#: sql_help.c:1150 sql_help.c:1200 sql_help.c:1350 sql_help.c:1488 -#: sql_help.c:1531 sql_help.c:1552 sql_help.c:1566 sql_help.c:1578 -#: sql_help.c:1591 sql_help.c:1618 sql_help.c:1684 sql_help.c:1737 +#: sql_help.c:849 sql_help.c:888 sql_help.c:947 sql_help.c:999 sql_help.c:1052 +#: sql_help.c:1084 sql_help.c:1094 sql_help.c:1130 sql_help.c:1150 +#: sql_help.c:1164 sql_help.c:1214 sql_help.c:1364 sql_help.c:1502 +#: sql_help.c:1545 sql_help.c:1566 sql_help.c:1580 sql_help.c:1592 +#: sql_help.c:1605 sql_help.c:1632 sql_help.c:1698 sql_help.c:1751 msgid "new_name" msgstr "neuer_Name" #: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:272 #: sql_help.c:293 sql_help.c:424 sql_help.c:509 sql_help.c:557 sql_help.c:647 #: sql_help.c:656 sql_help.c:721 sql_help.c:745 sql_help.c:776 sql_help.c:831 -#: sql_help.c:893 sql_help.c:936 sql_help.c:1043 sql_help.c:1082 -#: sql_help.c:1114 sql_help.c:1134 sql_help.c:1148 sql_help.c:1198 -#: sql_help.c:1417 sql_help.c:1490 sql_help.c:1533 sql_help.c:1554 -#: sql_help.c:1616 sql_help.c:1732 sql_help.c:3084 +#: sql_help.c:893 sql_help.c:945 sql_help.c:1057 sql_help.c:1096 +#: sql_help.c:1128 sql_help.c:1148 sql_help.c:1162 sql_help.c:1212 +#: sql_help.c:1431 sql_help.c:1504 sql_help.c:1547 sql_help.c:1568 +#: sql_help.c:1630 sql_help.c:1746 sql_help.c:3104 msgid "new_owner" msgstr "neuer_Eigentümer" #: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:276 sql_help.c:346 #: sql_help.c:475 sql_help.c:562 sql_help.c:700 sql_help.c:749 sql_help.c:779 -#: sql_help.c:834 sql_help.c:898 sql_help.c:1048 sql_help.c:1118 -#: sql_help.c:1152 sql_help.c:1352 sql_help.c:1535 sql_help.c:1556 -#: sql_help.c:1568 sql_help.c:1580 sql_help.c:1620 sql_help.c:1739 +#: sql_help.c:834 sql_help.c:898 sql_help.c:1062 sql_help.c:1132 +#: sql_help.c:1166 sql_help.c:1366 sql_help.c:1549 sql_help.c:1570 +#: sql_help.c:1582 sql_help.c:1594 sql_help.c:1634 sql_help.c:1753 msgid "new_schema" msgstr "neues_Schema" -#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 +#: sql_help.c:44 sql_help.c:1964 sql_help.c:3435 sql_help.c:4600 msgid "where aggregate_signature is:" msgstr "wobei Aggregatsignatur Folgendes ist:" #: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:364 sql_help.c:377 #: sql_help.c:381 sql_help.c:397 sql_help.c:400 sql_help.c:403 sql_help.c:544 #: sql_help.c:549 sql_help.c:554 sql_help.c:559 sql_help.c:564 sql_help.c:880 -#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1030 -#: sql_help.c:1035 sql_help.c:1040 sql_help.c:1045 sql_help.c:1050 -#: sql_help.c:1904 sql_help.c:1921 sql_help.c:1927 sql_help.c:1951 -#: sql_help.c:1954 sql_help.c:1957 sql_help.c:2114 sql_help.c:2133 -#: sql_help.c:2136 sql_help.c:2452 sql_help.c:2661 sql_help.c:3416 -#: sql_help.c:3419 sql_help.c:3422 sql_help.c:3513 sql_help.c:3602 -#: sql_help.c:3630 sql_help.c:3983 sql_help.c:4450 sql_help.c:4557 -#: sql_help.c:4564 sql_help.c:4570 sql_help.c:4581 sql_help.c:4584 -#: sql_help.c:4587 +#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1044 +#: sql_help.c:1049 sql_help.c:1054 sql_help.c:1059 sql_help.c:1064 +#: sql_help.c:1918 sql_help.c:1935 sql_help.c:1941 sql_help.c:1965 +#: sql_help.c:1968 sql_help.c:1971 sql_help.c:2128 sql_help.c:2147 +#: sql_help.c:2150 sql_help.c:2466 sql_help.c:2675 sql_help.c:3436 +#: sql_help.c:3439 sql_help.c:3442 sql_help.c:3533 sql_help.c:3622 +#: sql_help.c:3650 sql_help.c:4003 sql_help.c:4470 sql_help.c:4577 +#: sql_help.c:4584 sql_help.c:4590 sql_help.c:4601 sql_help.c:4604 +#: sql_help.c:4607 msgid "argmode" msgstr "Argmodus" #: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:365 sql_help.c:378 #: sql_help.c:382 sql_help.c:398 sql_help.c:401 sql_help.c:404 sql_help.c:545 #: sql_help.c:550 sql_help.c:555 sql_help.c:560 sql_help.c:565 sql_help.c:881 -#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1031 -#: sql_help.c:1036 sql_help.c:1041 sql_help.c:1046 sql_help.c:1051 -#: sql_help.c:1905 sql_help.c:1922 sql_help.c:1928 sql_help.c:1952 -#: sql_help.c:1955 sql_help.c:1958 sql_help.c:2115 sql_help.c:2134 -#: sql_help.c:2137 sql_help.c:2453 sql_help.c:2662 sql_help.c:3417 -#: sql_help.c:3420 sql_help.c:3423 sql_help.c:3514 sql_help.c:3603 -#: sql_help.c:3631 sql_help.c:4558 sql_help.c:4565 sql_help.c:4571 -#: sql_help.c:4582 sql_help.c:4585 sql_help.c:4588 +#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1045 +#: sql_help.c:1050 sql_help.c:1055 sql_help.c:1060 sql_help.c:1065 +#: sql_help.c:1919 sql_help.c:1936 sql_help.c:1942 sql_help.c:1966 +#: sql_help.c:1969 sql_help.c:1972 sql_help.c:2129 sql_help.c:2148 +#: sql_help.c:2151 sql_help.c:2467 sql_help.c:2676 sql_help.c:3437 +#: sql_help.c:3440 sql_help.c:3443 sql_help.c:3534 sql_help.c:3623 +#: sql_help.c:3651 sql_help.c:4578 sql_help.c:4585 sql_help.c:4591 +#: sql_help.c:4602 sql_help.c:4605 sql_help.c:4608 msgid "argname" msgstr "Argname" #: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:366 sql_help.c:379 #: sql_help.c:383 sql_help.c:399 sql_help.c:402 sql_help.c:405 sql_help.c:546 #: sql_help.c:551 sql_help.c:556 sql_help.c:561 sql_help.c:566 sql_help.c:882 -#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1032 -#: sql_help.c:1037 sql_help.c:1042 sql_help.c:1047 sql_help.c:1052 -#: sql_help.c:1906 sql_help.c:1923 sql_help.c:1929 sql_help.c:1953 -#: sql_help.c:1956 sql_help.c:1959 sql_help.c:2454 sql_help.c:2663 -#: sql_help.c:3418 sql_help.c:3421 sql_help.c:3424 sql_help.c:3515 -#: sql_help.c:3604 sql_help.c:3632 sql_help.c:4559 sql_help.c:4566 -#: sql_help.c:4572 sql_help.c:4583 sql_help.c:4586 sql_help.c:4589 +#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1046 +#: sql_help.c:1051 sql_help.c:1056 sql_help.c:1061 sql_help.c:1066 +#: sql_help.c:1920 sql_help.c:1937 sql_help.c:1943 sql_help.c:1967 +#: sql_help.c:1970 sql_help.c:1973 sql_help.c:2468 sql_help.c:2677 +#: sql_help.c:3438 sql_help.c:3441 sql_help.c:3444 sql_help.c:3535 +#: sql_help.c:3624 sql_help.c:3652 sql_help.c:4579 sql_help.c:4586 +#: sql_help.c:4592 sql_help.c:4603 sql_help.c:4606 sql_help.c:4609 msgid "argtype" msgstr "Argtyp" -#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:979 -#: sql_help.c:1131 sql_help.c:1549 sql_help.c:1678 sql_help.c:1710 -#: sql_help.c:1762 sql_help.c:1821 sql_help.c:2011 sql_help.c:2018 -#: sql_help.c:2331 sql_help.c:2389 sql_help.c:2398 sql_help.c:2407 -#: sql_help.c:2498 sql_help.c:2723 sql_help.c:2816 sql_help.c:3113 -#: sql_help.c:3298 sql_help.c:3320 sql_help.c:3462 sql_help.c:3819 -#: sql_help.c:4027 sql_help.c:4277 sql_help.c:4279 sql_help.c:5059 +#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:993 +#: sql_help.c:1145 sql_help.c:1563 sql_help.c:1692 sql_help.c:1724 +#: sql_help.c:1776 sql_help.c:1835 sql_help.c:2025 sql_help.c:2032 +#: sql_help.c:2345 sql_help.c:2403 sql_help.c:2412 sql_help.c:2421 +#: sql_help.c:2512 sql_help.c:2743 sql_help.c:2836 sql_help.c:3133 +#: sql_help.c:3318 sql_help.c:3340 sql_help.c:3482 sql_help.c:3839 +#: sql_help.c:4047 sql_help.c:4297 sql_help.c:4299 sql_help.c:5079 msgid "option" msgstr "Option" -#: sql_help.c:115 sql_help.c:980 sql_help.c:1679 sql_help.c:2499 -#: sql_help.c:2724 sql_help.c:3299 sql_help.c:3463 +#: sql_help.c:115 sql_help.c:994 sql_help.c:1693 sql_help.c:2513 +#: sql_help.c:2744 sql_help.c:3319 sql_help.c:3483 msgid "where option can be:" msgstr "wobei Option Folgendes sein kann:" -#: sql_help.c:116 sql_help.c:2263 +#: sql_help.c:116 sql_help.c:2277 msgid "allowconn" msgstr "allowconn" -#: sql_help.c:117 sql_help.c:981 sql_help.c:1680 sql_help.c:2264 -#: sql_help.c:2500 sql_help.c:2725 sql_help.c:3300 +#: sql_help.c:117 sql_help.c:995 sql_help.c:1694 sql_help.c:2278 +#: sql_help.c:2514 sql_help.c:2745 sql_help.c:3320 msgid "connlimit" msgstr "Verbindungslimit" -#: sql_help.c:118 sql_help.c:2265 +#: sql_help.c:118 sql_help.c:2279 msgid "istemplate" msgstr "istemplate" -#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1355 -#: sql_help.c:1410 sql_help.c:4283 +#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1369 +#: sql_help.c:1424 sql_help.c:4303 msgid "new_tablespace" msgstr "neuer_Tablespace" #: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:572 sql_help.c:574 -#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:988 -#: sql_help.c:992 sql_help.c:995 sql_help.c:1057 sql_help.c:1059 -#: sql_help.c:1060 sql_help.c:1211 sql_help.c:1213 sql_help.c:1687 -#: sql_help.c:1691 sql_help.c:1694 sql_help.c:2464 sql_help.c:2667 -#: sql_help.c:3995 sql_help.c:4301 sql_help.c:4462 sql_help.c:4772 +#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:1002 +#: sql_help.c:1006 sql_help.c:1009 sql_help.c:1071 sql_help.c:1073 +#: sql_help.c:1074 sql_help.c:1225 sql_help.c:1227 sql_help.c:1701 +#: sql_help.c:1705 sql_help.c:1708 sql_help.c:2478 sql_help.c:2681 +#: sql_help.c:4015 sql_help.c:4321 sql_help.c:4482 sql_help.c:4792 msgid "configuration_parameter" msgstr "Konfigurationsparameter" #: sql_help.c:128 sql_help.c:422 sql_help.c:493 sql_help.c:499 sql_help.c:511 #: sql_help.c:573 sql_help.c:627 sql_help.c:709 sql_help.c:719 sql_help.c:906 -#: sql_help.c:934 sql_help.c:989 sql_help.c:1058 sql_help.c:1132 -#: sql_help.c:1177 sql_help.c:1181 sql_help.c:1185 sql_help.c:1188 -#: sql_help.c:1193 sql_help.c:1196 sql_help.c:1212 sql_help.c:1388 -#: sql_help.c:1412 sql_help.c:1465 sql_help.c:1473 sql_help.c:1493 -#: sql_help.c:1550 sql_help.c:1634 sql_help.c:1688 sql_help.c:1711 -#: sql_help.c:2332 sql_help.c:2390 sql_help.c:2399 sql_help.c:2408 -#: sql_help.c:2465 sql_help.c:2466 sql_help.c:2530 sql_help.c:2533 -#: sql_help.c:2567 sql_help.c:2668 sql_help.c:2669 sql_help.c:2692 -#: sql_help.c:2817 sql_help.c:2856 sql_help.c:2967 sql_help.c:2980 -#: sql_help.c:2994 sql_help.c:3040 sql_help.c:3048 sql_help.c:3070 -#: sql_help.c:3087 sql_help.c:3114 sql_help.c:3321 sql_help.c:4028 -#: sql_help.c:4773 sql_help.c:4774 sql_help.c:4775 sql_help.c:4776 +#: sql_help.c:943 sql_help.c:1003 sql_help.c:1072 sql_help.c:1146 +#: sql_help.c:1191 sql_help.c:1195 sql_help.c:1199 sql_help.c:1202 +#: sql_help.c:1207 sql_help.c:1210 sql_help.c:1226 sql_help.c:1402 +#: sql_help.c:1426 sql_help.c:1479 sql_help.c:1487 sql_help.c:1507 +#: sql_help.c:1564 sql_help.c:1648 sql_help.c:1702 sql_help.c:1725 +#: sql_help.c:2346 sql_help.c:2404 sql_help.c:2413 sql_help.c:2422 +#: sql_help.c:2479 sql_help.c:2480 sql_help.c:2544 sql_help.c:2547 +#: sql_help.c:2581 sql_help.c:2682 sql_help.c:2683 sql_help.c:2710 +#: sql_help.c:2837 sql_help.c:2876 sql_help.c:2987 sql_help.c:3000 +#: sql_help.c:3014 sql_help.c:3060 sql_help.c:3068 sql_help.c:3090 +#: sql_help.c:3107 sql_help.c:3134 sql_help.c:3341 sql_help.c:4048 +#: sql_help.c:4793 sql_help.c:4794 sql_help.c:4795 sql_help.c:4796 msgid "value" msgstr "Wert" @@ -4636,10 +4636,10 @@ msgstr "Wert" msgid "target_role" msgstr "Zielrolle" -#: sql_help.c:215 sql_help.c:943 sql_help.c:2316 sql_help.c:2697 -#: sql_help.c:2770 sql_help.c:2775 sql_help.c:3958 sql_help.c:3967 -#: sql_help.c:3986 sql_help.c:3998 sql_help.c:4425 sql_help.c:4434 -#: sql_help.c:4453 sql_help.c:4465 +#: sql_help.c:215 sql_help.c:950 sql_help.c:953 sql_help.c:2330 sql_help.c:2713 +#: sql_help.c:2790 sql_help.c:2795 sql_help.c:3978 sql_help.c:3987 +#: sql_help.c:4006 sql_help.c:4018 sql_help.c:4445 sql_help.c:4454 +#: sql_help.c:4473 sql_help.c:4485 msgid "schema_name" msgstr "Schemaname" @@ -4654,57 +4654,57 @@ msgstr "wobei abgekürztes_Grant_oder_Revoke Folgendes sein kann:" #: sql_help.c:218 sql_help.c:219 sql_help.c:220 sql_help.c:221 sql_help.c:222 #: sql_help.c:223 sql_help.c:224 sql_help.c:225 sql_help.c:226 sql_help.c:227 #: sql_help.c:228 sql_help.c:229 sql_help.c:598 sql_help.c:634 sql_help.c:702 -#: sql_help.c:852 sql_help.c:999 sql_help.c:1354 sql_help.c:1698 -#: sql_help.c:2503 sql_help.c:2504 sql_help.c:2505 sql_help.c:2506 -#: sql_help.c:2507 sql_help.c:2641 sql_help.c:2728 sql_help.c:2729 -#: sql_help.c:2730 sql_help.c:3303 sql_help.c:3304 sql_help.c:3305 -#: sql_help.c:3306 sql_help.c:3307 sql_help.c:4007 sql_help.c:4011 -#: sql_help.c:4474 sql_help.c:4478 sql_help.c:4794 +#: sql_help.c:852 sql_help.c:1013 sql_help.c:1368 sql_help.c:1712 +#: sql_help.c:2517 sql_help.c:2518 sql_help.c:2519 sql_help.c:2520 +#: sql_help.c:2521 sql_help.c:2655 sql_help.c:2748 sql_help.c:2749 +#: sql_help.c:2750 sql_help.c:3323 sql_help.c:3324 sql_help.c:3325 +#: sql_help.c:3326 sql_help.c:3327 sql_help.c:4027 sql_help.c:4031 +#: sql_help.c:4494 sql_help.c:4498 sql_help.c:4814 msgid "role_name" msgstr "Rollenname" -#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:942 sql_help.c:1370 -#: sql_help.c:1372 sql_help.c:1376 sql_help.c:1427 sql_help.c:1439 -#: sql_help.c:1469 sql_help.c:1728 sql_help.c:2285 sql_help.c:2289 -#: sql_help.c:2411 sql_help.c:2417 sql_help.c:2526 sql_help.c:2696 -#: sql_help.c:2833 sql_help.c:2838 sql_help.c:2840 sql_help.c:2962 -#: sql_help.c:2975 sql_help.c:2989 sql_help.c:2998 sql_help.c:3010 -#: sql_help.c:3044 sql_help.c:4060 sql_help.c:4076 sql_help.c:4078 -#: sql_help.c:4176 sql_help.c:4179 sql_help.c:4181 sql_help.c:4644 -#: sql_help.c:4645 sql_help.c:4654 sql_help.c:4701 sql_help.c:4702 -#: sql_help.c:4703 sql_help.c:4704 sql_help.c:4705 sql_help.c:4706 -#: sql_help.c:4747 sql_help.c:4748 sql_help.c:4753 sql_help.c:4758 -#: sql_help.c:4902 sql_help.c:4903 sql_help.c:4912 sql_help.c:4959 -#: sql_help.c:4960 sql_help.c:4961 sql_help.c:4962 sql_help.c:4963 -#: sql_help.c:4964 sql_help.c:5020 sql_help.c:5022 sql_help.c:5089 -#: sql_help.c:5149 sql_help.c:5150 sql_help.c:5159 sql_help.c:5206 -#: sql_help.c:5207 sql_help.c:5208 sql_help.c:5209 sql_help.c:5210 -#: sql_help.c:5211 +#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:957 sql_help.c:1384 +#: sql_help.c:1386 sql_help.c:1390 sql_help.c:1441 sql_help.c:1453 +#: sql_help.c:1483 sql_help.c:1742 sql_help.c:2299 sql_help.c:2303 +#: sql_help.c:2425 sql_help.c:2431 sql_help.c:2540 sql_help.c:2717 +#: sql_help.c:2853 sql_help.c:2858 sql_help.c:2860 sql_help.c:2982 +#: sql_help.c:2995 sql_help.c:3009 sql_help.c:3018 sql_help.c:3030 +#: sql_help.c:3064 sql_help.c:4080 sql_help.c:4096 sql_help.c:4098 +#: sql_help.c:4196 sql_help.c:4199 sql_help.c:4201 sql_help.c:4664 +#: sql_help.c:4665 sql_help.c:4674 sql_help.c:4721 sql_help.c:4722 +#: sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 sql_help.c:4726 +#: sql_help.c:4767 sql_help.c:4768 sql_help.c:4773 sql_help.c:4778 +#: sql_help.c:4922 sql_help.c:4923 sql_help.c:4932 sql_help.c:4979 +#: sql_help.c:4980 sql_help.c:4981 sql_help.c:4982 sql_help.c:4983 +#: sql_help.c:4984 sql_help.c:5040 sql_help.c:5042 sql_help.c:5109 +#: sql_help.c:5169 sql_help.c:5170 sql_help.c:5179 sql_help.c:5226 +#: sql_help.c:5227 sql_help.c:5228 sql_help.c:5229 sql_help.c:5230 +#: sql_help.c:5231 msgid "expression" msgstr "Ausdruck" -#: sql_help.c:263 sql_help.c:2286 +#: sql_help.c:263 sql_help.c:2300 msgid "domain_constraint" msgstr "Domänen-Constraint" #: sql_help.c:265 sql_help.c:267 sql_help.c:270 sql_help.c:278 sql_help.c:501 -#: sql_help.c:502 sql_help.c:1347 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:1398 sql_help.c:1399 sql_help.c:1426 sql_help.c:1438 -#: sql_help.c:1460 sql_help.c:1892 sql_help.c:1894 sql_help.c:2288 -#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2997 sql_help.c:3009 -#: sql_help.c:4073 +#: sql_help.c:502 sql_help.c:1361 sql_help.c:1410 sql_help.c:1411 +#: sql_help.c:1412 sql_help.c:1413 sql_help.c:1440 sql_help.c:1452 +#: sql_help.c:1474 sql_help.c:1906 sql_help.c:1908 sql_help.c:2302 +#: sql_help.c:2424 sql_help.c:2429 sql_help.c:3017 sql_help.c:3029 +#: sql_help.c:4093 msgid "constraint_name" msgstr "Constraint-Name" -#: sql_help.c:268 sql_help.c:1348 +#: sql_help.c:268 sql_help.c:1362 msgid "new_constraint_name" msgstr "neuer_Constraint-Name" -#: sql_help.c:277 sql_help.c:2287 +#: sql_help.c:277 sql_help.c:2301 msgid "where domain_constraint is:" msgstr "wobei Domänen-Constraint Folgendes ist:" -#: sql_help.c:344 sql_help.c:1130 +#: sql_help.c:344 sql_help.c:1144 msgid "new_version" msgstr "neue_Version" @@ -4720,82 +4720,82 @@ msgstr "wobei Elementobjekt Folgendes ist:" #: sql_help.c:361 sql_help.c:362 sql_help.c:367 sql_help.c:371 sql_help.c:373 #: sql_help.c:375 sql_help.c:384 sql_help.c:385 sql_help.c:386 sql_help.c:387 #: sql_help.c:388 sql_help.c:389 sql_help.c:390 sql_help.c:391 sql_help.c:394 -#: sql_help.c:395 sql_help.c:1884 sql_help.c:1889 sql_help.c:1896 -#: sql_help.c:1897 sql_help.c:1898 sql_help.c:1899 sql_help.c:1900 -#: sql_help.c:1901 sql_help.c:1902 sql_help.c:1907 sql_help.c:1909 -#: sql_help.c:1913 sql_help.c:1915 sql_help.c:1919 sql_help.c:1924 -#: sql_help.c:1925 sql_help.c:1932 sql_help.c:1933 sql_help.c:1934 -#: sql_help.c:1935 sql_help.c:1936 sql_help.c:1937 sql_help.c:1938 -#: sql_help.c:1939 sql_help.c:1940 sql_help.c:1941 sql_help.c:1942 -#: sql_help.c:1947 sql_help.c:1948 sql_help.c:4547 sql_help.c:4552 -#: sql_help.c:4553 sql_help.c:4554 sql_help.c:4555 sql_help.c:4561 -#: sql_help.c:4562 sql_help.c:4567 sql_help.c:4568 sql_help.c:4573 -#: sql_help.c:4574 sql_help.c:4575 sql_help.c:4576 sql_help.c:4577 -#: sql_help.c:4578 +#: sql_help.c:395 sql_help.c:1898 sql_help.c:1903 sql_help.c:1910 +#: sql_help.c:1911 sql_help.c:1912 sql_help.c:1913 sql_help.c:1914 +#: sql_help.c:1915 sql_help.c:1916 sql_help.c:1921 sql_help.c:1923 +#: sql_help.c:1927 sql_help.c:1929 sql_help.c:1933 sql_help.c:1938 +#: sql_help.c:1939 sql_help.c:1946 sql_help.c:1947 sql_help.c:1948 +#: sql_help.c:1949 sql_help.c:1950 sql_help.c:1951 sql_help.c:1952 +#: sql_help.c:1953 sql_help.c:1954 sql_help.c:1955 sql_help.c:1956 +#: sql_help.c:1961 sql_help.c:1962 sql_help.c:4567 sql_help.c:4572 +#: sql_help.c:4573 sql_help.c:4574 sql_help.c:4575 sql_help.c:4581 +#: sql_help.c:4582 sql_help.c:4587 sql_help.c:4588 sql_help.c:4593 +#: sql_help.c:4594 sql_help.c:4595 sql_help.c:4596 sql_help.c:4597 +#: sql_help.c:4598 msgid "object_name" msgstr "Objektname" -#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 +#: sql_help.c:353 sql_help.c:1899 sql_help.c:4570 msgid "aggregate_name" msgstr "Aggregatname" -#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 -#: sql_help.c:2185 sql_help.c:3432 +#: sql_help.c:355 sql_help.c:1901 sql_help.c:2193 sql_help.c:2197 +#: sql_help.c:2199 sql_help.c:3452 msgid "source_type" msgstr "Quelltyp" -#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 -#: sql_help.c:2186 sql_help.c:3433 +#: sql_help.c:356 sql_help.c:1902 sql_help.c:2194 sql_help.c:2198 +#: sql_help.c:2200 sql_help.c:3453 msgid "target_type" msgstr "Zieltyp" -#: sql_help.c:363 sql_help.c:816 sql_help.c:1903 sql_help.c:2181 -#: sql_help.c:2224 sql_help.c:2304 sql_help.c:2584 sql_help.c:2615 -#: sql_help.c:3190 sql_help.c:4449 sql_help.c:4556 sql_help.c:4673 -#: sql_help.c:4677 sql_help.c:4681 sql_help.c:4684 sql_help.c:4931 -#: sql_help.c:4935 sql_help.c:4939 sql_help.c:4942 sql_help.c:5178 -#: sql_help.c:5182 sql_help.c:5186 sql_help.c:5189 +#: sql_help.c:363 sql_help.c:816 sql_help.c:1917 sql_help.c:2195 +#: sql_help.c:2238 sql_help.c:2318 sql_help.c:2598 sql_help.c:2629 +#: sql_help.c:3210 sql_help.c:4469 sql_help.c:4576 sql_help.c:4693 +#: sql_help.c:4697 sql_help.c:4701 sql_help.c:4704 sql_help.c:4951 +#: sql_help.c:4955 sql_help.c:4959 sql_help.c:4962 sql_help.c:5198 +#: sql_help.c:5202 sql_help.c:5206 sql_help.c:5209 msgid "function_name" msgstr "Funktionsname" -#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1924 sql_help.c:2622 msgid "operator_name" msgstr "Operatorname" -#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1911 -#: sql_help.c:2585 sql_help.c:3556 +#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1925 +#: sql_help.c:2599 sql_help.c:3576 msgid "left_type" msgstr "linker_Typ" -#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1912 -#: sql_help.c:2586 sql_help.c:3557 +#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1926 +#: sql_help.c:2600 sql_help.c:3577 msgid "right_type" msgstr "rechter_Typ" #: sql_help.c:372 sql_help.c:374 sql_help.c:772 sql_help.c:775 sql_help.c:778 #: sql_help.c:807 sql_help.c:819 sql_help.c:827 sql_help.c:830 sql_help.c:833 -#: sql_help.c:1447 sql_help.c:1914 sql_help.c:1916 sql_help.c:2605 -#: sql_help.c:2626 sql_help.c:3018 sql_help.c:3566 sql_help.c:3575 +#: sql_help.c:1461 sql_help.c:1928 sql_help.c:1930 sql_help.c:2619 +#: sql_help.c:2640 sql_help.c:3038 sql_help.c:3586 sql_help.c:3595 msgid "index_method" msgstr "Indexmethode" -#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 +#: sql_help.c:376 sql_help.c:1934 sql_help.c:4583 msgid "procedure_name" msgstr "Prozedurname" -#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 +#: sql_help.c:380 sql_help.c:1940 sql_help.c:4002 sql_help.c:4589 msgid "routine_name" msgstr "Routinenname" -#: sql_help.c:392 sql_help.c:1416 sql_help.c:1943 sql_help.c:2460 -#: sql_help.c:2666 sql_help.c:2970 sql_help.c:3157 sql_help.c:3737 -#: sql_help.c:4004 sql_help.c:4471 +#: sql_help.c:392 sql_help.c:1430 sql_help.c:1957 sql_help.c:2474 +#: sql_help.c:2680 sql_help.c:2990 sql_help.c:3177 sql_help.c:3757 +#: sql_help.c:4024 sql_help.c:4491 msgid "type_name" msgstr "Typname" -#: sql_help.c:393 sql_help.c:1944 sql_help.c:2459 sql_help.c:2665 -#: sql_help.c:3158 sql_help.c:3390 sql_help.c:3738 sql_help.c:3989 -#: sql_help.c:4456 +#: sql_help.c:393 sql_help.c:1958 sql_help.c:2473 sql_help.c:2679 +#: sql_help.c:3178 sql_help.c:3410 sql_help.c:3758 sql_help.c:4009 +#: sql_help.c:4476 msgid "lang_name" msgstr "Sprachname" @@ -4803,149 +4803,149 @@ msgstr "Sprachname" msgid "and aggregate_signature is:" msgstr "und Aggregatsignatur Folgendes ist:" -#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 +#: sql_help.c:419 sql_help.c:2060 sql_help.c:2343 msgid "handler_function" msgstr "Handler-Funktion" -#: sql_help.c:420 sql_help.c:2330 +#: sql_help.c:420 sql_help.c:2344 msgid "validator_function" msgstr "Validator-Funktion" -#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1033 -#: sql_help.c:1342 sql_help.c:1625 +#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1047 +#: sql_help.c:1356 sql_help.c:1639 msgid "action" msgstr "Aktion" #: sql_help.c:470 sql_help.c:477 sql_help.c:481 sql_help.c:482 sql_help.c:485 #: sql_help.c:487 sql_help.c:488 sql_help.c:489 sql_help.c:491 sql_help.c:494 #: sql_help.c:496 sql_help.c:497 sql_help.c:695 sql_help.c:705 sql_help.c:707 -#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:941 sql_help.c:1111 -#: sql_help.c:1344 sql_help.c:1362 sql_help.c:1366 sql_help.c:1367 -#: sql_help.c:1371 sql_help.c:1373 sql_help.c:1374 sql_help.c:1375 -#: sql_help.c:1377 sql_help.c:1378 sql_help.c:1380 sql_help.c:1383 -#: sql_help.c:1384 sql_help.c:1386 sql_help.c:1389 sql_help.c:1391 -#: sql_help.c:1392 sql_help.c:1440 sql_help.c:1441 sql_help.c:1442 -#: sql_help.c:1444 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1463 sql_help.c:1468 sql_help.c:1475 sql_help.c:1476 -#: sql_help.c:1727 sql_help.c:1730 sql_help.c:1734 sql_help.c:1770 -#: sql_help.c:1891 sql_help.c:2008 sql_help.c:2014 sql_help.c:2028 -#: sql_help.c:2029 sql_help.c:2030 sql_help.c:2387 sql_help.c:2402 -#: sql_help.c:2416 sql_help.c:2457 sql_help.c:2525 sql_help.c:2531 -#: sql_help.c:2564 sql_help.c:2695 sql_help.c:2802 sql_help.c:2837 -#: sql_help.c:2839 sql_help.c:2952 sql_help.c:2961 sql_help.c:2971 -#: sql_help.c:2974 sql_help.c:2984 sql_help.c:2988 sql_help.c:3011 -#: sql_help.c:3012 sql_help.c:3013 sql_help.c:3015 sql_help.c:3016 -#: sql_help.c:3023 sql_help.c:3024 sql_help.c:3038 sql_help.c:3043 -#: sql_help.c:3050 sql_help.c:3051 sql_help.c:3067 sql_help.c:3193 -#: sql_help.c:3333 sql_help.c:3961 sql_help.c:3962 sql_help.c:4059 -#: sql_help.c:4075 sql_help.c:4077 sql_help.c:4079 sql_help.c:4175 -#: sql_help.c:4178 sql_help.c:4180 sql_help.c:4182 sql_help.c:4428 -#: sql_help.c:4429 sql_help.c:4549 sql_help.c:4710 sql_help.c:4717 -#: sql_help.c:4719 sql_help.c:4968 sql_help.c:4975 sql_help.c:4977 -#: sql_help.c:5019 sql_help.c:5021 sql_help.c:5023 sql_help.c:5077 -#: sql_help.c:5215 sql_help.c:5222 sql_help.c:5224 +#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:956 sql_help.c:1125 +#: sql_help.c:1358 sql_help.c:1376 sql_help.c:1380 sql_help.c:1381 +#: sql_help.c:1385 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1391 sql_help.c:1392 sql_help.c:1394 sql_help.c:1397 +#: sql_help.c:1398 sql_help.c:1400 sql_help.c:1403 sql_help.c:1405 +#: sql_help.c:1406 sql_help.c:1454 sql_help.c:1455 sql_help.c:1456 +#: sql_help.c:1458 sql_help.c:1459 sql_help.c:1466 sql_help.c:1467 +#: sql_help.c:1477 sql_help.c:1482 sql_help.c:1489 sql_help.c:1490 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:1748 sql_help.c:1784 +#: sql_help.c:1905 sql_help.c:2022 sql_help.c:2028 sql_help.c:2042 +#: sql_help.c:2043 sql_help.c:2044 sql_help.c:2401 sql_help.c:2416 +#: sql_help.c:2430 sql_help.c:2471 sql_help.c:2539 sql_help.c:2545 +#: sql_help.c:2578 sql_help.c:2716 sql_help.c:2822 sql_help.c:2857 +#: sql_help.c:2859 sql_help.c:2972 sql_help.c:2981 sql_help.c:2991 +#: sql_help.c:2994 sql_help.c:3004 sql_help.c:3008 sql_help.c:3031 +#: sql_help.c:3032 sql_help.c:3033 sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:3043 sql_help.c:3044 sql_help.c:3058 sql_help.c:3063 +#: sql_help.c:3070 sql_help.c:3071 sql_help.c:3087 sql_help.c:3213 +#: sql_help.c:3353 sql_help.c:3981 sql_help.c:3982 sql_help.c:4079 +#: sql_help.c:4095 sql_help.c:4097 sql_help.c:4099 sql_help.c:4195 +#: sql_help.c:4198 sql_help.c:4200 sql_help.c:4202 sql_help.c:4448 +#: sql_help.c:4449 sql_help.c:4569 sql_help.c:4730 sql_help.c:4737 +#: sql_help.c:4739 sql_help.c:4988 sql_help.c:4995 sql_help.c:4997 +#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5043 sql_help.c:5097 +#: sql_help.c:5235 sql_help.c:5242 sql_help.c:5244 msgid "column_name" msgstr "Spaltenname" -#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1359 sql_help.c:1749 msgid "new_column_name" msgstr "neuer_Spaltenname" -#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1054 -#: sql_help.c:1361 sql_help.c:1635 +#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1068 +#: sql_help.c:1375 sql_help.c:1649 msgid "where action is one of:" msgstr "wobei Aktion Folgendes sein kann:" -#: sql_help.c:478 sql_help.c:483 sql_help.c:1103 sql_help.c:1363 -#: sql_help.c:1368 sql_help.c:1637 sql_help.c:1641 sql_help.c:2283 -#: sql_help.c:2388 sql_help.c:2604 sql_help.c:2795 sql_help.c:2953 -#: sql_help.c:3240 sql_help.c:4234 +#: sql_help.c:478 sql_help.c:483 sql_help.c:1117 sql_help.c:1377 +#: sql_help.c:1382 sql_help.c:1651 sql_help.c:1655 sql_help.c:2297 +#: sql_help.c:2402 sql_help.c:2618 sql_help.c:2815 sql_help.c:2973 +#: sql_help.c:3260 sql_help.c:4254 msgid "data_type" msgstr "Datentyp" -#: sql_help.c:479 sql_help.c:484 sql_help.c:1364 sql_help.c:1369 -#: sql_help.c:1470 sql_help.c:1638 sql_help.c:1642 sql_help.c:2284 -#: sql_help.c:2391 sql_help.c:2527 sql_help.c:2955 sql_help.c:2963 -#: sql_help.c:2976 sql_help.c:2990 sql_help.c:3045 sql_help.c:3241 -#: sql_help.c:3247 sql_help.c:4070 +#: sql_help.c:479 sql_help.c:484 sql_help.c:1378 sql_help.c:1383 +#: sql_help.c:1484 sql_help.c:1652 sql_help.c:1656 sql_help.c:2298 +#: sql_help.c:2405 sql_help.c:2541 sql_help.c:2975 sql_help.c:2983 +#: sql_help.c:2996 sql_help.c:3010 sql_help.c:3065 sql_help.c:3261 +#: sql_help.c:3267 sql_help.c:4090 msgid "collation" msgstr "Sortierfolge" -#: sql_help.c:480 sql_help.c:1365 sql_help.c:2392 sql_help.c:2403 -#: sql_help.c:2956 sql_help.c:2972 sql_help.c:2985 +#: sql_help.c:480 sql_help.c:1379 sql_help.c:2406 sql_help.c:2417 +#: sql_help.c:2976 sql_help.c:2992 sql_help.c:3005 msgid "column_constraint" msgstr "Spalten-Constraint" -#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1399 sql_help.c:5091 msgid "integer" msgstr "ganze_Zahl" -#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 -#: sql_help.c:1390 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1401 +#: sql_help.c:1404 msgid "attribute_option" msgstr "Attributoption" -#: sql_help.c:500 sql_help.c:1394 sql_help.c:2393 sql_help.c:2404 -#: sql_help.c:2957 sql_help.c:2973 sql_help.c:2986 +#: sql_help.c:500 sql_help.c:1408 sql_help.c:2407 sql_help.c:2418 +#: sql_help.c:2977 sql_help.c:2993 sql_help.c:3006 msgid "table_constraint" msgstr "Tabellen-Constraint" -#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1400 -#: sql_help.c:1401 sql_help.c:1402 sql_help.c:1403 sql_help.c:1945 +#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1414 +#: sql_help.c:1415 sql_help.c:1416 sql_help.c:1417 sql_help.c:1959 msgid "trigger_name" msgstr "Triggername" -#: sql_help.c:507 sql_help.c:508 sql_help.c:1414 sql_help.c:1415 -#: sql_help.c:2396 sql_help.c:2401 sql_help.c:2960 sql_help.c:2983 +#: sql_help.c:507 sql_help.c:508 sql_help.c:1428 sql_help.c:1429 +#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2980 sql_help.c:3003 msgid "parent_table" msgstr "Elterntabelle" -#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1053 -#: sql_help.c:1594 sql_help.c:2315 +#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1067 +#: sql_help.c:1608 sql_help.c:2329 msgid "extension_name" msgstr "Erweiterungsname" -#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 +#: sql_help.c:569 sql_help.c:1069 sql_help.c:2475 msgid "execution_cost" msgstr "Ausführungskosten" -#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 +#: sql_help.c:570 sql_help.c:1070 sql_help.c:2476 msgid "result_rows" msgstr "Ergebniszeilen" -#: sql_help.c:571 sql_help.c:2463 +#: sql_help.c:571 sql_help.c:2477 msgid "support_function" msgstr "Support-Funktion" -#: sql_help.c:593 sql_help.c:595 sql_help.c:978 sql_help.c:986 sql_help.c:990 -#: sql_help.c:993 sql_help.c:996 sql_help.c:1677 sql_help.c:1685 -#: sql_help.c:1689 sql_help.c:1692 sql_help.c:1695 sql_help.c:2771 -#: sql_help.c:2773 sql_help.c:2776 sql_help.c:2777 sql_help.c:3959 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:3965 sql_help.c:3968 -#: sql_help.c:3969 sql_help.c:3971 sql_help.c:3972 sql_help.c:3974 -#: sql_help.c:3975 sql_help.c:3977 sql_help.c:3978 sql_help.c:3980 -#: sql_help.c:3981 sql_help.c:3987 sql_help.c:3988 sql_help.c:3990 -#: sql_help.c:3991 sql_help.c:3993 sql_help.c:3994 sql_help.c:3996 -#: sql_help.c:3997 sql_help.c:3999 sql_help.c:4000 sql_help.c:4002 -#: sql_help.c:4003 sql_help.c:4005 sql_help.c:4006 sql_help.c:4008 -#: sql_help.c:4009 sql_help.c:4426 sql_help.c:4427 sql_help.c:4431 -#: sql_help.c:4432 sql_help.c:4435 sql_help.c:4436 sql_help.c:4438 -#: sql_help.c:4439 sql_help.c:4441 sql_help.c:4442 sql_help.c:4444 -#: sql_help.c:4445 sql_help.c:4447 sql_help.c:4448 sql_help.c:4454 -#: sql_help.c:4455 sql_help.c:4457 sql_help.c:4458 sql_help.c:4460 -#: sql_help.c:4461 sql_help.c:4463 sql_help.c:4464 sql_help.c:4466 -#: sql_help.c:4467 sql_help.c:4469 sql_help.c:4470 sql_help.c:4472 -#: sql_help.c:4473 sql_help.c:4475 sql_help.c:4476 +#: sql_help.c:593 sql_help.c:595 sql_help.c:992 sql_help.c:1000 sql_help.c:1004 +#: sql_help.c:1007 sql_help.c:1010 sql_help.c:1691 sql_help.c:1699 +#: sql_help.c:1703 sql_help.c:1706 sql_help.c:1709 sql_help.c:2791 +#: sql_help.c:2793 sql_help.c:2796 sql_help.c:2797 sql_help.c:3979 +#: sql_help.c:3980 sql_help.c:3984 sql_help.c:3985 sql_help.c:3988 +#: sql_help.c:3989 sql_help.c:3991 sql_help.c:3992 sql_help.c:3994 +#: sql_help.c:3995 sql_help.c:3997 sql_help.c:3998 sql_help.c:4000 +#: sql_help.c:4001 sql_help.c:4007 sql_help.c:4008 sql_help.c:4010 +#: sql_help.c:4011 sql_help.c:4013 sql_help.c:4014 sql_help.c:4016 +#: sql_help.c:4017 sql_help.c:4019 sql_help.c:4020 sql_help.c:4022 +#: sql_help.c:4023 sql_help.c:4025 sql_help.c:4026 sql_help.c:4028 +#: sql_help.c:4029 sql_help.c:4446 sql_help.c:4447 sql_help.c:4451 +#: sql_help.c:4452 sql_help.c:4455 sql_help.c:4456 sql_help.c:4458 +#: sql_help.c:4459 sql_help.c:4461 sql_help.c:4462 sql_help.c:4464 +#: sql_help.c:4465 sql_help.c:4467 sql_help.c:4468 sql_help.c:4474 +#: sql_help.c:4475 sql_help.c:4477 sql_help.c:4478 sql_help.c:4480 +#: sql_help.c:4481 sql_help.c:4483 sql_help.c:4484 sql_help.c:4486 +#: sql_help.c:4487 sql_help.c:4489 sql_help.c:4490 sql_help.c:4492 +#: sql_help.c:4493 sql_help.c:4495 sql_help.c:4496 msgid "role_specification" msgstr "Rollenangabe" -#: sql_help.c:594 sql_help.c:596 sql_help.c:1708 sql_help.c:2250 -#: sql_help.c:2779 sql_help.c:3318 sql_help.c:3771 sql_help.c:4804 +#: sql_help.c:594 sql_help.c:596 sql_help.c:1722 sql_help.c:2264 +#: sql_help.c:2799 sql_help.c:3338 sql_help.c:3791 sql_help.c:4824 msgid "user_name" msgstr "Benutzername" -#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 -#: sql_help.c:4010 sql_help.c:4477 +#: sql_help.c:597 sql_help.c:1012 sql_help.c:1711 sql_help.c:2798 +#: sql_help.c:4030 sql_help.c:4497 msgid "where role_specification can be:" msgstr "wobei Rollenangabe Folgendes sein kann:" @@ -4953,22 +4953,22 @@ msgstr "wobei Rollenangabe Folgendes sein kann:" msgid "group_name" msgstr "Gruppenname" -#: sql_help.c:620 sql_help.c:1466 sql_help.c:2262 sql_help.c:2534 -#: sql_help.c:2568 sql_help.c:2968 sql_help.c:2981 sql_help.c:2995 -#: sql_help.c:3041 sql_help.c:3071 sql_help.c:3083 sql_help.c:4001 -#: sql_help.c:4468 +#: sql_help.c:620 sql_help.c:1480 sql_help.c:2276 sql_help.c:2548 +#: sql_help.c:2582 sql_help.c:2988 sql_help.c:3001 sql_help.c:3015 +#: sql_help.c:3061 sql_help.c:3091 sql_help.c:3103 sql_help.c:4021 +#: sql_help.c:4488 msgid "tablespace_name" msgstr "Tablespace-Name" -#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 -#: sql_help.c:1461 sql_help.c:1823 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1422 sql_help.c:1432 +#: sql_help.c:1475 sql_help.c:1837 msgid "index_name" msgstr "Indexname" -#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1411 -#: sql_help.c:1413 sql_help.c:1464 sql_help.c:2532 sql_help.c:2566 -#: sql_help.c:2966 sql_help.c:2979 sql_help.c:2993 sql_help.c:3039 -#: sql_help.c:3069 +#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1425 +#: sql_help.c:1427 sql_help.c:1478 sql_help.c:2546 sql_help.c:2580 +#: sql_help.c:2986 sql_help.c:2999 sql_help.c:3013 sql_help.c:3059 +#: sql_help.c:3089 msgid "storage_parameter" msgstr "Storage-Parameter" @@ -4976,1916 +4976,1924 @@ msgstr "Storage-Parameter" msgid "column_number" msgstr "Spaltennummer" -#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 +#: sql_help.c:655 sql_help.c:1922 sql_help.c:4580 msgid "large_object_oid" msgstr "Large-Object-OID" -#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 +#: sql_help.c:714 sql_help.c:1407 sql_help.c:2974 msgid "compression_method" msgstr "Kompressionsmethode" -#: sql_help.c:716 sql_help.c:1409 +#: sql_help.c:716 sql_help.c:1423 msgid "new_access_method" msgstr "neue_Zugriffsmethode" -#: sql_help.c:753 sql_help.c:2589 +#: sql_help.c:753 sql_help.c:2603 msgid "res_proc" msgstr "Res-Funktion" -#: sql_help.c:754 sql_help.c:2590 +#: sql_help.c:754 sql_help.c:2604 msgid "join_proc" msgstr "Join-Funktion" -#: sql_help.c:755 sql_help.c:2587 +#: sql_help.c:755 sql_help.c:2601 msgid "com_op" msgstr "Kommutator-Op" -#: sql_help.c:756 sql_help.c:2588 +#: sql_help.c:756 sql_help.c:2602 msgid "neg_op" msgstr "Umkehrungs-Op" -#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2621 msgid "strategy_number" msgstr "Strategienummer" #: sql_help.c:810 sql_help.c:811 sql_help.c:814 sql_help.c:815 sql_help.c:821 -#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2609 sql_help.c:2610 -#: sql_help.c:2613 sql_help.c:2614 +#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2623 sql_help.c:2624 +#: sql_help.c:2627 sql_help.c:2628 msgid "op_type" msgstr "Optyp" -#: sql_help.c:812 sql_help.c:2611 +#: sql_help.c:812 sql_help.c:2625 msgid "sort_family_name" msgstr "Sortierfamilienname" -#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2626 msgid "support_number" msgstr "Unterst-Nummer" -#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 -#: sql_help.c:3162 +#: sql_help.c:817 sql_help.c:2196 sql_help.c:2630 sql_help.c:3180 +#: sql_help.c:3182 msgid "argument_type" msgstr "Argumenttyp" -#: sql_help.c:848 sql_help.c:851 sql_help.c:940 sql_help.c:1069 sql_help.c:1110 -#: sql_help.c:1590 sql_help.c:1593 sql_help.c:1769 sql_help.c:1822 -#: sql_help.c:1893 sql_help.c:1918 sql_help.c:1931 sql_help.c:1946 -#: sql_help.c:2007 sql_help.c:2013 sql_help.c:2386 sql_help.c:2400 -#: sql_help.c:2523 sql_help.c:2563 sql_help.c:2640 sql_help.c:2694 -#: sql_help.c:2747 sql_help.c:2801 sql_help.c:2834 sql_help.c:2841 -#: sql_help.c:2951 sql_help.c:2969 sql_help.c:2982 sql_help.c:3066 -#: sql_help.c:3186 sql_help.c:3368 sql_help.c:3592 sql_help.c:3641 -#: sql_help.c:3747 sql_help.c:3957 sql_help.c:3963 sql_help.c:4024 -#: sql_help.c:4057 sql_help.c:4424 sql_help.c:4430 sql_help.c:4548 -#: sql_help.c:4661 sql_help.c:4724 sql_help.c:4763 sql_help.c:4919 -#: sql_help.c:4982 sql_help.c:5017 sql_help.c:5076 sql_help.c:5166 -#: sql_help.c:5229 +#: sql_help.c:848 sql_help.c:851 sql_help.c:952 sql_help.c:955 sql_help.c:1083 +#: sql_help.c:1124 sql_help.c:1604 sql_help.c:1607 sql_help.c:1783 +#: sql_help.c:1836 sql_help.c:1907 sql_help.c:1932 sql_help.c:1945 +#: sql_help.c:1960 sql_help.c:2021 sql_help.c:2027 sql_help.c:2400 +#: sql_help.c:2414 sql_help.c:2537 sql_help.c:2577 sql_help.c:2654 +#: sql_help.c:2715 sql_help.c:2767 sql_help.c:2821 sql_help.c:2854 +#: sql_help.c:2861 sql_help.c:2971 sql_help.c:2989 sql_help.c:3002 +#: sql_help.c:3086 sql_help.c:3206 sql_help.c:3388 sql_help.c:3612 +#: sql_help.c:3661 sql_help.c:3767 sql_help.c:3977 sql_help.c:3983 +#: sql_help.c:4044 sql_help.c:4077 sql_help.c:4444 sql_help.c:4450 +#: sql_help.c:4568 sql_help.c:4681 sql_help.c:4744 sql_help.c:4783 +#: sql_help.c:4939 sql_help.c:5002 sql_help.c:5037 sql_help.c:5096 +#: sql_help.c:5186 sql_help.c:5249 msgid "table_name" msgstr "Tabellenname" -#: sql_help.c:853 sql_help.c:2642 +#: sql_help.c:853 sql_help.c:2656 msgid "using_expression" msgstr "Using-Ausdruck" -#: sql_help.c:854 sql_help.c:2643 +#: sql_help.c:854 sql_help.c:2657 msgid "check_expression" msgstr "Check-Ausdruck" -#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 +#: sql_help.c:936 sql_help.c:938 sql_help.c:2708 msgid "publication_object" msgstr "Publikationsobjekt" -#: sql_help.c:933 sql_help.c:2691 +#: sql_help.c:940 +msgid "publication_drop_object" +msgstr "Publikations-Drop-Objekt" + +#: sql_help.c:942 sql_help.c:2709 msgid "publication_parameter" msgstr "Publikationsparameter" -#: sql_help.c:939 sql_help.c:2693 +#: sql_help.c:948 sql_help.c:2711 msgid "where publication_object is one of:" msgstr "wobei Publikationsobjekt Folgendes sein kann:" -#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 -#: sql_help.c:3301 +#: sql_help.c:949 sql_help.c:1777 sql_help.c:2712 sql_help.c:5080 +msgid "table_and_columns" +msgstr "Tabelle-und-Spalten" + +#: sql_help.c:951 +msgid "and publication_drop_object is one of:" +msgstr "wobei Publikations-Drop-Objekt Folgendes sein kann:" + +#: sql_help.c:954 sql_help.c:1782 sql_help.c:2714 sql_help.c:5095 +msgid "and table_and_columns is:" +msgstr "und Tabelle-und-Spalten Folgendes ist:" + +#: sql_help.c:996 sql_help.c:1695 sql_help.c:2515 sql_help.c:2746 +#: sql_help.c:3321 msgid "password" msgstr "Passwort" -#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 -#: sql_help.c:3302 +#: sql_help.c:997 sql_help.c:1696 sql_help.c:2516 sql_help.c:2747 +#: sql_help.c:3322 msgid "timestamp" msgstr "Zeit" -#: sql_help.c:987 sql_help.c:991 sql_help.c:994 sql_help.c:997 sql_help.c:1686 -#: sql_help.c:1690 sql_help.c:1693 sql_help.c:1696 sql_help.c:3970 -#: sql_help.c:4437 +#: sql_help.c:1001 sql_help.c:1005 sql_help.c:1008 sql_help.c:1011 +#: sql_help.c:1700 sql_help.c:1704 sql_help.c:1707 sql_help.c:1710 +#: sql_help.c:3990 sql_help.c:4457 msgid "database_name" msgstr "Datenbankname" -#: sql_help.c:1104 sql_help.c:2796 +#: sql_help.c:1118 sql_help.c:2816 msgid "increment" msgstr "Inkrement" -#: sql_help.c:1105 sql_help.c:2797 +#: sql_help.c:1119 sql_help.c:2817 msgid "minvalue" msgstr "Minwert" -#: sql_help.c:1106 sql_help.c:2798 +#: sql_help.c:1120 sql_help.c:2818 msgid "maxvalue" msgstr "Maxwert" -#: sql_help.c:1107 sql_help.c:2799 sql_help.c:4657 sql_help.c:4761 -#: sql_help.c:4915 sql_help.c:5093 sql_help.c:5162 +#: sql_help.c:1121 sql_help.c:2819 sql_help.c:4677 sql_help.c:4781 +#: sql_help.c:4935 sql_help.c:5113 sql_help.c:5182 msgid "start" msgstr "Start" -#: sql_help.c:1108 sql_help.c:1382 +#: sql_help.c:1122 sql_help.c:1396 msgid "restart" msgstr "Restart" -#: sql_help.c:1109 sql_help.c:2800 +#: sql_help.c:1123 sql_help.c:2820 msgid "cache" msgstr "Cache" -#: sql_help.c:1154 +#: sql_help.c:1168 msgid "new_target" msgstr "neues_Ziel" -#: sql_help.c:1173 sql_help.c:2853 +#: sql_help.c:1187 sql_help.c:2873 msgid "conninfo" msgstr "Verbindungsinfo" -#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 +#: sql_help.c:1189 sql_help.c:1193 sql_help.c:1197 sql_help.c:2874 msgid "publication_name" msgstr "Publikationsname" -#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 +#: sql_help.c:1190 sql_help.c:1194 sql_help.c:1198 msgid "publication_option" msgstr "Publikationsoption" -#: sql_help.c:1187 +#: sql_help.c:1201 msgid "refresh_option" msgstr "Refresh-Option" -#: sql_help.c:1192 sql_help.c:2855 +#: sql_help.c:1206 sql_help.c:2875 msgid "subscription_parameter" msgstr "Subskriptionsparameter" -#: sql_help.c:1195 +#: sql_help.c:1209 msgid "skip_option" msgstr "Skip-Option" -#: sql_help.c:1357 sql_help.c:1360 +#: sql_help.c:1371 sql_help.c:1374 msgid "partition_name" msgstr "Partitionsname" -#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 +#: sql_help.c:1372 sql_help.c:2419 sql_help.c:3007 msgid "partition_bound_spec" msgstr "Partitionsbegrenzungsangabe" -#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 +#: sql_help.c:1393 sql_help.c:1444 sql_help.c:3021 msgid "sequence_options" msgstr "Sequenzoptionen" -#: sql_help.c:1381 +#: sql_help.c:1395 msgid "sequence_option" msgstr "Sequenzoption" -#: sql_help.c:1395 +#: sql_help.c:1409 msgid "table_constraint_using_index" msgstr "Tabellen-Constraint-für-Index" -#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 +#: sql_help.c:1418 sql_help.c:1419 sql_help.c:1420 sql_help.c:1421 msgid "rewrite_rule_name" msgstr "Regelname" -#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 +#: sql_help.c:1433 sql_help.c:2433 sql_help.c:3051 msgid "and partition_bound_spec is:" msgstr "und Partitionsbegrenzungsangabe Folgendes ist:" -#: sql_help.c:1420 sql_help.c:1421 sql_help.c:1422 sql_help.c:2420 -#: sql_help.c:2421 sql_help.c:2422 sql_help.c:3032 sql_help.c:3033 -#: sql_help.c:3034 +#: sql_help.c:1434 sql_help.c:1435 sql_help.c:1436 sql_help.c:2434 +#: sql_help.c:2435 sql_help.c:2436 sql_help.c:3052 sql_help.c:3053 +#: sql_help.c:3054 msgid "partition_bound_expr" msgstr "Partitionsbegrenzungsausdruck" -#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 -#: sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:1437 sql_help.c:1438 sql_help.c:2437 sql_help.c:2438 +#: sql_help.c:3055 sql_help.c:3056 msgid "numeric_literal" msgstr "numerische_Konstante" -#: sql_help.c:1425 +#: sql_help.c:1439 msgid "and column_constraint is:" msgstr "und Spalten-Constraint Folgendes ist:" -#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 -#: sql_help.c:2999 +#: sql_help.c:1442 sql_help.c:2426 sql_help.c:2469 sql_help.c:2678 +#: sql_help.c:3019 msgid "default_expr" msgstr "Vorgabeausdruck" -#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 +#: sql_help.c:1443 sql_help.c:2427 sql_help.c:3020 msgid "generation_expr" msgstr "Generierungsausdruck" -#: sql_help.c:1431 sql_help.c:1432 sql_help.c:1443 sql_help.c:1446 -#: sql_help.c:1450 sql_help.c:3002 sql_help.c:3003 sql_help.c:3014 -#: sql_help.c:3017 sql_help.c:3021 +#: sql_help.c:1445 sql_help.c:1446 sql_help.c:1457 sql_help.c:1460 +#: sql_help.c:1464 sql_help.c:3022 sql_help.c:3023 sql_help.c:3034 +#: sql_help.c:3037 sql_help.c:3041 msgid "index_parameters" msgstr "Indexparameter" -#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 +#: sql_help.c:1447 sql_help.c:1468 sql_help.c:3024 sql_help.c:3045 msgid "reftable" msgstr "Reftabelle" -#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 -#: sql_help.c:3026 sql_help.c:3027 +#: sql_help.c:1448 sql_help.c:1469 sql_help.c:1470 sql_help.c:3025 +#: sql_help.c:3046 sql_help.c:3047 msgid "refcolumn" msgstr "Refspalte" -#: sql_help.c:1435 sql_help.c:1436 sql_help.c:1457 sql_help.c:1458 -#: sql_help.c:3006 sql_help.c:3007 sql_help.c:3028 sql_help.c:3029 +#: sql_help.c:1449 sql_help.c:1450 sql_help.c:1471 sql_help.c:1472 +#: sql_help.c:3026 sql_help.c:3027 sql_help.c:3048 sql_help.c:3049 msgid "referential_action" msgstr "Fremdschlüsselaktion" -#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 +#: sql_help.c:1451 sql_help.c:2428 sql_help.c:3028 msgid "and table_constraint is:" msgstr "und Tabellen-Constraint Folgendes ist:" -#: sql_help.c:1448 sql_help.c:3019 +#: sql_help.c:1462 sql_help.c:3039 msgid "exclude_element" msgstr "Exclude-Element" -#: sql_help.c:1449 sql_help.c:3020 sql_help.c:4655 sql_help.c:4759 -#: sql_help.c:4913 sql_help.c:5091 sql_help.c:5160 +#: sql_help.c:1463 sql_help.c:3040 sql_help.c:4675 sql_help.c:4779 +#: sql_help.c:4933 sql_help.c:5111 sql_help.c:5180 msgid "operator" msgstr "Operator" -#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 +#: sql_help.c:1465 sql_help.c:2549 sql_help.c:3042 msgid "predicate" msgstr "Prädikat" -#: sql_help.c:1459 +#: sql_help.c:1473 msgid "and table_constraint_using_index is:" msgstr "und Tabellen-Constraint-für-Index Folgendes ist:" -#: sql_help.c:1462 sql_help.c:3037 +#: sql_help.c:1476 sql_help.c:3057 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "Indexparameter bei UNIQUE-, PRIMARY KEY- und EXCLUDE-Constraints sind:" -#: sql_help.c:1467 sql_help.c:3042 +#: sql_help.c:1481 sql_help.c:3062 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "Exclude-Element in einem EXCLUDE-Constraint ist:" -#: sql_help.c:1471 sql_help.c:2528 sql_help.c:2964 sql_help.c:2977 -#: sql_help.c:2991 sql_help.c:3046 sql_help.c:4071 +#: sql_help.c:1485 sql_help.c:2542 sql_help.c:2984 sql_help.c:2997 +#: sql_help.c:3011 sql_help.c:3066 sql_help.c:4091 msgid "opclass" msgstr "Opklasse" -#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 +#: sql_help.c:1486 sql_help.c:2543 sql_help.c:3067 msgid "opclass_parameter" msgstr "Opklassen-Parameter" -#: sql_help.c:1474 sql_help.c:3049 +#: sql_help.c:1488 sql_help.c:3069 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "Fremdschlüsselaktion in FOREIGN KEY/REFERENCES ist:" -#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 +#: sql_help.c:1506 sql_help.c:1509 sql_help.c:3106 msgid "tablespace_option" msgstr "Tablespace-Option" -#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 +#: sql_help.c:1530 sql_help.c:1533 sql_help.c:1539 sql_help.c:1543 msgid "token_type" msgstr "Tokentyp" -#: sql_help.c:1517 sql_help.c:1520 +#: sql_help.c:1531 sql_help.c:1534 msgid "dictionary_name" msgstr "Wörterbuchname" -#: sql_help.c:1522 sql_help.c:1526 +#: sql_help.c:1536 sql_help.c:1540 msgid "old_dictionary" msgstr "altes_Wörterbuch" -#: sql_help.c:1523 sql_help.c:1527 +#: sql_help.c:1537 sql_help.c:1541 msgid "new_dictionary" msgstr "neues_Wörterbuch" -#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 -#: sql_help.c:3239 +#: sql_help.c:1636 sql_help.c:1650 sql_help.c:1653 sql_help.c:1654 +#: sql_help.c:3259 msgid "attribute_name" msgstr "Attributname" -#: sql_help.c:1623 +#: sql_help.c:1637 msgid "new_attribute_name" msgstr "neuer_Attributname" -#: sql_help.c:1627 sql_help.c:1631 +#: sql_help.c:1641 sql_help.c:1645 msgid "new_enum_value" msgstr "neuer_Enum-Wert" -#: sql_help.c:1628 +#: sql_help.c:1642 msgid "neighbor_enum_value" msgstr "Nachbar-Enum-Wert" -#: sql_help.c:1630 +#: sql_help.c:1644 msgid "existing_enum_value" msgstr "existierender_Enum-Wert" -#: sql_help.c:1633 +#: sql_help.c:1647 msgid "property" msgstr "Eigenschaft" -#: sql_help.c:1709 sql_help.c:2397 sql_help.c:2406 sql_help.c:2812 -#: sql_help.c:3319 sql_help.c:3772 sql_help.c:3979 sql_help.c:4025 -#: sql_help.c:4446 +#: sql_help.c:1723 sql_help.c:2411 sql_help.c:2420 sql_help.c:2832 +#: sql_help.c:3339 sql_help.c:3792 sql_help.c:3999 sql_help.c:4045 +#: sql_help.c:4466 msgid "server_name" msgstr "Servername" -#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 +#: sql_help.c:1755 sql_help.c:1758 sql_help.c:3354 msgid "view_option_name" msgstr "Sichtoptionsname" -#: sql_help.c:1742 sql_help.c:3335 +#: sql_help.c:1756 sql_help.c:3355 msgid "view_option_value" msgstr "Sichtoptionswert" -#: sql_help.c:1763 sql_help.c:5060 -msgid "table_and_columns" -msgstr "Tabelle-und-Spalten" - -#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 -#: sql_help.c:4281 sql_help.c:5061 +#: sql_help.c:1778 sql_help.c:1838 sql_help.c:2033 sql_help.c:3841 +#: sql_help.c:4301 sql_help.c:5081 msgid "where option can be one of:" msgstr "wobei Option eine der folgenden sein kann:" -#: sql_help.c:1765 sql_help.c:1766 sql_help.c:1825 sql_help.c:2021 -#: sql_help.c:2025 sql_help.c:2208 sql_help.c:3822 sql_help.c:3823 -#: sql_help.c:3824 sql_help.c:3825 sql_help.c:3826 sql_help.c:3827 -#: sql_help.c:3828 sql_help.c:3829 sql_help.c:3830 sql_help.c:3831 -#: sql_help.c:4282 sql_help.c:4284 sql_help.c:5062 sql_help.c:5063 -#: sql_help.c:5064 sql_help.c:5065 sql_help.c:5066 sql_help.c:5067 -#: sql_help.c:5068 sql_help.c:5069 sql_help.c:5070 sql_help.c:5072 -#: sql_help.c:5073 +#: sql_help.c:1779 sql_help.c:1780 sql_help.c:1839 sql_help.c:2035 +#: sql_help.c:2039 sql_help.c:2222 sql_help.c:3842 sql_help.c:3843 +#: sql_help.c:3844 sql_help.c:3845 sql_help.c:3846 sql_help.c:3847 +#: sql_help.c:3848 sql_help.c:3849 sql_help.c:3850 sql_help.c:3851 +#: sql_help.c:4302 sql_help.c:4304 sql_help.c:5082 sql_help.c:5083 +#: sql_help.c:5084 sql_help.c:5085 sql_help.c:5086 sql_help.c:5087 +#: sql_help.c:5088 sql_help.c:5089 sql_help.c:5090 sql_help.c:5092 +#: sql_help.c:5093 msgid "boolean" msgstr "boolean" -#: sql_help.c:1767 sql_help.c:5074 +#: sql_help.c:1781 sql_help.c:5094 msgid "size" msgstr "Größe" -#: sql_help.c:1768 sql_help.c:5075 -msgid "and table_and_columns is:" -msgstr "und Tabelle-und-Spalten Folgendes ist:" - -#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 +#: sql_help.c:1798 sql_help.c:4840 sql_help.c:4842 sql_help.c:4866 msgid "transaction_mode" msgstr "Transaktionsmodus" -#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 +#: sql_help.c:1799 sql_help.c:4843 sql_help.c:4867 msgid "where transaction_mode is one of:" msgstr "wobei Transaktionsmodus Folgendes sein kann:" -#: sql_help.c:1794 sql_help.c:4665 sql_help.c:4674 sql_help.c:4678 -#: sql_help.c:4682 sql_help.c:4685 sql_help.c:4923 sql_help.c:4932 -#: sql_help.c:4936 sql_help.c:4940 sql_help.c:4943 sql_help.c:5170 -#: sql_help.c:5179 sql_help.c:5183 sql_help.c:5187 sql_help.c:5190 +#: sql_help.c:1808 sql_help.c:4685 sql_help.c:4694 sql_help.c:4698 +#: sql_help.c:4702 sql_help.c:4705 sql_help.c:4943 sql_help.c:4952 +#: sql_help.c:4956 sql_help.c:4960 sql_help.c:4963 sql_help.c:5190 +#: sql_help.c:5199 sql_help.c:5203 sql_help.c:5207 sql_help.c:5210 msgid "argument" msgstr "Argument" -#: sql_help.c:1890 +#: sql_help.c:1904 msgid "relation_name" msgstr "Relationsname" -#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 +#: sql_help.c:1909 sql_help.c:3993 sql_help.c:4460 msgid "domain_name" msgstr "Domänenname" -#: sql_help.c:1917 +#: sql_help.c:1931 msgid "policy_name" msgstr "Policy-Name" -#: sql_help.c:1930 +#: sql_help.c:1944 msgid "rule_name" msgstr "Regelname" -#: sql_help.c:1949 sql_help.c:4579 +#: sql_help.c:1963 sql_help.c:4599 msgid "string_literal" msgstr "Zeichenkettenkonstante" -#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 +#: sql_help.c:1988 sql_help.c:4263 sql_help.c:4513 msgid "transaction_id" msgstr "Transaktions-ID" -#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 +#: sql_help.c:2023 sql_help.c:2030 sql_help.c:4117 msgid "filename" msgstr "Dateiname" -#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 -#: sql_help.c:2751 +#: sql_help.c:2024 sql_help.c:2031 sql_help.c:2769 sql_help.c:2770 +#: sql_help.c:2771 msgid "command" msgstr "Befehl" -#: sql_help.c:2012 sql_help.c:2748 sql_help.c:3189 sql_help.c:3371 -#: sql_help.c:4081 sql_help.c:4166 sql_help.c:4169 sql_help.c:4172 -#: sql_help.c:4648 sql_help.c:4650 sql_help.c:4752 sql_help.c:4754 -#: sql_help.c:4906 sql_help.c:4908 sql_help.c:5026 sql_help.c:5153 -#: sql_help.c:5155 +#: sql_help.c:2026 sql_help.c:2768 sql_help.c:3209 sql_help.c:3391 +#: sql_help.c:4101 sql_help.c:4186 sql_help.c:4189 sql_help.c:4192 +#: sql_help.c:4668 sql_help.c:4670 sql_help.c:4772 sql_help.c:4774 +#: sql_help.c:4926 sql_help.c:4928 sql_help.c:5046 sql_help.c:5173 +#: sql_help.c:5175 msgid "condition" msgstr "Bedingung" -#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 -#: sql_help.c:3354 sql_help.c:4061 +#: sql_help.c:2029 sql_help.c:2583 sql_help.c:3092 sql_help.c:3356 +#: sql_help.c:3374 sql_help.c:4081 msgid "query" msgstr "Anfrage" -#: sql_help.c:2020 +#: sql_help.c:2034 msgid "format_name" msgstr "Formatname" -#: sql_help.c:2022 +#: sql_help.c:2036 msgid "delimiter_character" msgstr "Trennzeichen" -#: sql_help.c:2023 +#: sql_help.c:2037 msgid "null_string" msgstr "Null-Zeichenkette" -#: sql_help.c:2024 +#: sql_help.c:2038 msgid "default_string" msgstr "Vorgabewert-Zeichenkette" -#: sql_help.c:2026 +#: sql_help.c:2040 msgid "quote_character" msgstr "Quote-Zeichen" -#: sql_help.c:2027 +#: sql_help.c:2041 msgid "escape_character" msgstr "Escape-Zeichen" -#: sql_help.c:2031 +#: sql_help.c:2045 msgid "error_action" msgstr "Fehleraktion" -#: sql_help.c:2032 +#: sql_help.c:2046 msgid "maxerror" msgstr "Max-Fehler" -#: sql_help.c:2033 +#: sql_help.c:2047 msgid "encoding_name" msgstr "Kodierungsname" -#: sql_help.c:2034 +#: sql_help.c:2048 msgid "verbosity" msgstr "Verbose-Modus" -#: sql_help.c:2045 +#: sql_help.c:2059 msgid "access_method_type" msgstr "Zugriffsmethodentyp" -#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 +#: sql_help.c:2130 sql_help.c:2149 sql_help.c:2152 msgid "arg_data_type" msgstr "Arg-Datentyp" -#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 +#: sql_help.c:2131 sql_help.c:2153 sql_help.c:2161 msgid "sfunc" msgstr "Übergangsfunktion" -#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 +#: sql_help.c:2132 sql_help.c:2154 sql_help.c:2162 msgid "state_data_type" msgstr "Zustandsdatentyp" -#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 +#: sql_help.c:2133 sql_help.c:2155 sql_help.c:2163 msgid "state_data_size" msgstr "Zustandsdatengröße" -#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 +#: sql_help.c:2134 sql_help.c:2156 sql_help.c:2164 msgid "ffunc" msgstr "Abschlussfunktion" -#: sql_help.c:2121 sql_help.c:2151 +#: sql_help.c:2135 sql_help.c:2165 msgid "combinefunc" msgstr "Combine-Funktion" -#: sql_help.c:2122 sql_help.c:2152 +#: sql_help.c:2136 sql_help.c:2166 msgid "serialfunc" msgstr "Serialisierungsfunktion" -#: sql_help.c:2123 sql_help.c:2153 +#: sql_help.c:2137 sql_help.c:2167 msgid "deserialfunc" msgstr "Deserialisierungsfunktion" -#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 +#: sql_help.c:2138 sql_help.c:2157 sql_help.c:2168 msgid "initial_condition" msgstr "Anfangswert" -#: sql_help.c:2125 sql_help.c:2155 +#: sql_help.c:2139 sql_help.c:2169 msgid "msfunc" msgstr "Moving-Übergangsfunktion" -#: sql_help.c:2126 sql_help.c:2156 +#: sql_help.c:2140 sql_help.c:2170 msgid "minvfunc" msgstr "Moving-Inversfunktion" -#: sql_help.c:2127 sql_help.c:2157 +#: sql_help.c:2141 sql_help.c:2171 msgid "mstate_data_type" msgstr "Moving-Zustandsdatentyp" -#: sql_help.c:2128 sql_help.c:2158 +#: sql_help.c:2142 sql_help.c:2172 msgid "mstate_data_size" msgstr "Moving-Zustandsdatengröße" -#: sql_help.c:2129 sql_help.c:2159 +#: sql_help.c:2143 sql_help.c:2173 msgid "mffunc" msgstr "Moving-Abschlussfunktion" -#: sql_help.c:2130 sql_help.c:2160 +#: sql_help.c:2144 sql_help.c:2174 msgid "minitial_condition" msgstr "Moving-Anfangswert" -#: sql_help.c:2131 sql_help.c:2161 +#: sql_help.c:2145 sql_help.c:2175 msgid "sort_operator" msgstr "Sortieroperator" -#: sql_help.c:2144 +#: sql_help.c:2158 msgid "or the old syntax" msgstr "oder die alte Syntax" -#: sql_help.c:2146 +#: sql_help.c:2160 msgid "base_type" msgstr "Basistyp" -#: sql_help.c:2204 sql_help.c:2254 +#: sql_help.c:2218 sql_help.c:2268 msgid "locale" msgstr "Locale" -#: sql_help.c:2205 sql_help.c:2255 +#: sql_help.c:2219 sql_help.c:2269 msgid "lc_collate" msgstr "lc_collate" -#: sql_help.c:2206 sql_help.c:2256 +#: sql_help.c:2220 sql_help.c:2270 msgid "lc_ctype" msgstr "lc_ctype" -#: sql_help.c:2207 sql_help.c:4546 +#: sql_help.c:2221 sql_help.c:4566 msgid "provider" msgstr "Provider" -#: sql_help.c:2209 +#: sql_help.c:2223 msgid "rules" msgstr "Regeln" -#: sql_help.c:2210 sql_help.c:2317 +#: sql_help.c:2224 sql_help.c:2331 msgid "version" msgstr "Version" -#: sql_help.c:2212 +#: sql_help.c:2226 msgid "existing_collation" msgstr "existierende_Sortierfolge" -#: sql_help.c:2222 +#: sql_help.c:2236 msgid "source_encoding" msgstr "Quellkodierung" -#: sql_help.c:2223 +#: sql_help.c:2237 msgid "dest_encoding" msgstr "Zielkodierung" -#: sql_help.c:2251 sql_help.c:3112 +#: sql_help.c:2265 sql_help.c:3132 msgid "template" msgstr "Vorlage" -#: sql_help.c:2252 +#: sql_help.c:2266 msgid "encoding" msgstr "Kodierung" -#: sql_help.c:2253 +#: sql_help.c:2267 msgid "strategy" msgstr "Strategie" -#: sql_help.c:2257 +#: sql_help.c:2271 msgid "builtin_locale" msgstr "Builtin-Locale" -#: sql_help.c:2258 +#: sql_help.c:2272 msgid "icu_locale" msgstr "ICU-Locale" -#: sql_help.c:2259 +#: sql_help.c:2273 msgid "icu_rules" msgstr "ICU-Regeln" -#: sql_help.c:2260 +#: sql_help.c:2274 msgid "locale_provider" msgstr "Locale-Provider" -#: sql_help.c:2261 +#: sql_help.c:2275 msgid "collation_version" msgstr "Sortierfolgenversion" -#: sql_help.c:2266 +#: sql_help.c:2280 msgid "oid" msgstr "OID" -#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 +#: sql_help.c:2315 sql_help.c:2766 sql_help.c:3205 msgid "event" msgstr "Ereignis" -#: sql_help.c:2302 +#: sql_help.c:2316 msgid "filter_variable" msgstr "Filtervariable" -#: sql_help.c:2303 +#: sql_help.c:2317 msgid "filter_value" msgstr "Filterwert" -#: sql_help.c:2394 sql_help.c:2958 +#: sql_help.c:2408 sql_help.c:2978 msgid "source_table" msgstr "Quelltabelle" -#: sql_help.c:2395 sql_help.c:2959 +#: sql_help.c:2409 sql_help.c:2979 msgid "like_option" msgstr "Like-Option" -#: sql_help.c:2409 sql_help.c:2996 +#: sql_help.c:2423 sql_help.c:3016 msgid "where column_constraint is:" msgstr "wobei Spalten-Constraint Folgendes ist:" -#: sql_help.c:2418 sql_help.c:3030 +#: sql_help.c:2432 sql_help.c:3050 msgid "and like_option is:" msgstr "und Like-Option Folgendes ist:" -#: sql_help.c:2456 +#: sql_help.c:2470 msgid "rettype" msgstr "Rückgabetyp" -#: sql_help.c:2458 +#: sql_help.c:2472 msgid "column_type" msgstr "Spaltentyp" -#: sql_help.c:2467 sql_help.c:2670 +#: sql_help.c:2481 sql_help.c:2684 msgid "definition" msgstr "Definition" -#: sql_help.c:2468 sql_help.c:2671 +#: sql_help.c:2482 sql_help.c:2685 msgid "obj_file" msgstr "Objektdatei" -#: sql_help.c:2469 sql_help.c:2672 +#: sql_help.c:2483 sql_help.c:2686 msgid "link_symbol" msgstr "Linksymbol" -#: sql_help.c:2470 sql_help.c:2673 +#: sql_help.c:2484 sql_help.c:2687 msgid "sql_body" msgstr "SQL-Rumpf" -#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 +#: sql_help.c:2522 sql_help.c:2751 sql_help.c:3328 msgid "uid" msgstr "Uid" -#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 -#: sql_help.c:2992 sql_help.c:3068 +#: sql_help.c:2538 sql_help.c:2579 sql_help.c:2985 sql_help.c:2998 +#: sql_help.c:3012 sql_help.c:3088 msgid "method" msgstr "Methode" -#: sql_help.c:2546 +#: sql_help.c:2560 msgid "call_handler" msgstr "Handler" -#: sql_help.c:2547 +#: sql_help.c:2561 msgid "inline_handler" msgstr "Inline-Handler" -#: sql_help.c:2548 +#: sql_help.c:2562 msgid "valfunction" msgstr "Valfunktion" -#: sql_help.c:2606 +#: sql_help.c:2620 msgid "family_name" msgstr "Familienname" -#: sql_help.c:2617 +#: sql_help.c:2631 msgid "storage_type" msgstr "Storage-Typ" -#: sql_help.c:2752 sql_help.c:3192 +#: sql_help.c:2772 sql_help.c:3212 msgid "where event can be one of:" msgstr "wobei Ereignis eins der folgenden sein kann:" -#: sql_help.c:2772 sql_help.c:2774 +#: sql_help.c:2792 sql_help.c:2794 msgid "schema_element" msgstr "Schemaelement" -#: sql_help.c:2813 +#: sql_help.c:2833 msgid "server_type" msgstr "Servertyp" -#: sql_help.c:2814 +#: sql_help.c:2834 msgid "server_version" msgstr "Serverversion" -#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 +#: sql_help.c:2835 sql_help.c:3996 sql_help.c:4463 msgid "fdw_name" msgstr "FDW-Name" -#: sql_help.c:2832 sql_help.c:2835 +#: sql_help.c:2852 sql_help.c:2855 msgid "statistics_name" msgstr "Statistikname" -#: sql_help.c:2836 +#: sql_help.c:2856 msgid "statistics_kind" msgstr "Statistikart" -#: sql_help.c:2852 +#: sql_help.c:2872 msgid "subscription_name" msgstr "Subskriptionsname" -#: sql_help.c:3085 +#: sql_help.c:3105 msgid "directory" msgstr "Verzeichnis" -#: sql_help.c:3099 +#: sql_help.c:3119 msgid "parser_name" msgstr "Parser-Name" -#: sql_help.c:3100 +#: sql_help.c:3120 msgid "source_config" msgstr "Quellkonfig" -#: sql_help.c:3129 +#: sql_help.c:3149 msgid "start_function" msgstr "Startfunktion" -#: sql_help.c:3130 +#: sql_help.c:3150 msgid "gettoken_function" msgstr "Gettext-Funktion" -#: sql_help.c:3131 +#: sql_help.c:3151 msgid "end_function" msgstr "Endfunktion" -#: sql_help.c:3132 +#: sql_help.c:3152 msgid "lextypes_function" msgstr "Lextypenfunktion" -#: sql_help.c:3133 +#: sql_help.c:3153 msgid "headline_function" msgstr "Headline-Funktion" -#: sql_help.c:3145 +#: sql_help.c:3165 msgid "init_function" msgstr "Init-Funktion" -#: sql_help.c:3146 +#: sql_help.c:3166 msgid "lexize_function" msgstr "Lexize-Funktion" -#: sql_help.c:3159 +#: sql_help.c:3179 msgid "from_sql_function_name" msgstr "From-SQL-Funktionsname" -#: sql_help.c:3161 +#: sql_help.c:3181 msgid "to_sql_function_name" msgstr "To-SQL-Funktionsname" -#: sql_help.c:3187 +#: sql_help.c:3207 msgid "referenced_table_name" msgstr "verwiesener_Tabellenname" -#: sql_help.c:3188 +#: sql_help.c:3208 msgid "transition_relation_name" msgstr "Übergangsrelationsname" -#: sql_help.c:3191 +#: sql_help.c:3211 msgid "arguments" msgstr "Argumente" -#: sql_help.c:3243 +#: sql_help.c:3263 msgid "label" msgstr "Label" -#: sql_help.c:3245 +#: sql_help.c:3265 msgid "subtype" msgstr "Untertyp" -#: sql_help.c:3246 +#: sql_help.c:3266 msgid "subtype_operator_class" msgstr "Untertyp-Operatorklasse" -#: sql_help.c:3248 +#: sql_help.c:3268 msgid "canonical_function" msgstr "Canonical-Funktion" -#: sql_help.c:3249 +#: sql_help.c:3269 msgid "subtype_diff_function" msgstr "Untertyp-Diff-Funktion" -#: sql_help.c:3250 +#: sql_help.c:3270 msgid "multirange_type_name" msgstr "Multirange-Typname" -#: sql_help.c:3252 +#: sql_help.c:3272 msgid "input_function" msgstr "Eingabefunktion" -#: sql_help.c:3253 +#: sql_help.c:3273 msgid "output_function" msgstr "Ausgabefunktion" -#: sql_help.c:3254 +#: sql_help.c:3274 msgid "receive_function" msgstr "Empfangsfunktion" -#: sql_help.c:3255 +#: sql_help.c:3275 msgid "send_function" msgstr "Sendefunktion" -#: sql_help.c:3256 +#: sql_help.c:3276 msgid "type_modifier_input_function" msgstr "Typmod-Eingabefunktion" -#: sql_help.c:3257 +#: sql_help.c:3277 msgid "type_modifier_output_function" msgstr "Typmod-Ausgabefunktion" -#: sql_help.c:3258 +#: sql_help.c:3278 msgid "analyze_function" msgstr "Analyze-Funktion" -#: sql_help.c:3259 +#: sql_help.c:3279 msgid "subscript_function" msgstr "Subscript-Funktion" -#: sql_help.c:3260 +#: sql_help.c:3280 msgid "internallength" msgstr "interne_Länge" -#: sql_help.c:3261 +#: sql_help.c:3281 msgid "alignment" msgstr "Ausrichtung" -#: sql_help.c:3262 +#: sql_help.c:3282 msgid "storage" msgstr "Speicherung" -#: sql_help.c:3263 +#: sql_help.c:3283 msgid "like_type" msgstr "wie_Typ" -#: sql_help.c:3264 +#: sql_help.c:3284 msgid "category" msgstr "Kategorie" -#: sql_help.c:3265 +#: sql_help.c:3285 msgid "preferred" msgstr "bevorzugt" -#: sql_help.c:3266 +#: sql_help.c:3286 msgid "default" msgstr "Vorgabewert" -#: sql_help.c:3267 +#: sql_help.c:3287 msgid "element" msgstr "Element" -#: sql_help.c:3268 +#: sql_help.c:3288 msgid "delimiter" msgstr "Trennzeichen" -#: sql_help.c:3269 +#: sql_help.c:3289 msgid "collatable" msgstr "sortierbar" -#: sql_help.c:3367 sql_help.c:4056 sql_help.c:4152 sql_help.c:4643 -#: sql_help.c:4746 sql_help.c:4901 sql_help.c:5016 sql_help.c:5148 +#: sql_help.c:3387 sql_help.c:4076 sql_help.c:4172 sql_help.c:4663 +#: sql_help.c:4766 sql_help.c:4921 sql_help.c:5036 sql_help.c:5168 msgid "with_query" msgstr "With-Anfrage" -#: sql_help.c:3369 sql_help.c:4058 sql_help.c:4662 sql_help.c:4668 -#: sql_help.c:4671 sql_help.c:4675 sql_help.c:4679 sql_help.c:4687 -#: sql_help.c:4920 sql_help.c:4926 sql_help.c:4929 sql_help.c:4933 -#: sql_help.c:4937 sql_help.c:4945 sql_help.c:5018 sql_help.c:5167 -#: sql_help.c:5173 sql_help.c:5176 sql_help.c:5180 sql_help.c:5184 -#: sql_help.c:5192 +#: sql_help.c:3389 sql_help.c:4078 sql_help.c:4682 sql_help.c:4688 +#: sql_help.c:4691 sql_help.c:4695 sql_help.c:4699 sql_help.c:4707 +#: sql_help.c:4940 sql_help.c:4946 sql_help.c:4949 sql_help.c:4953 +#: sql_help.c:4957 sql_help.c:4965 sql_help.c:5038 sql_help.c:5187 +#: sql_help.c:5193 sql_help.c:5196 sql_help.c:5200 sql_help.c:5204 +#: sql_help.c:5212 msgid "alias" msgstr "Alias" -#: sql_help.c:3370 sql_help.c:4647 sql_help.c:4689 sql_help.c:4691 -#: sql_help.c:4695 sql_help.c:4697 sql_help.c:4698 sql_help.c:4699 -#: sql_help.c:4751 sql_help.c:4905 sql_help.c:4947 sql_help.c:4949 -#: sql_help.c:4953 sql_help.c:4955 sql_help.c:4956 sql_help.c:4957 -#: sql_help.c:5025 sql_help.c:5152 sql_help.c:5194 sql_help.c:5196 -#: sql_help.c:5200 sql_help.c:5202 sql_help.c:5203 sql_help.c:5204 +#: sql_help.c:3390 sql_help.c:4667 sql_help.c:4709 sql_help.c:4711 +#: sql_help.c:4715 sql_help.c:4717 sql_help.c:4718 sql_help.c:4719 +#: sql_help.c:4771 sql_help.c:4925 sql_help.c:4967 sql_help.c:4969 +#: sql_help.c:4973 sql_help.c:4975 sql_help.c:4976 sql_help.c:4977 +#: sql_help.c:5045 sql_help.c:5172 sql_help.c:5214 sql_help.c:5216 +#: sql_help.c:5220 sql_help.c:5222 sql_help.c:5223 sql_help.c:5224 msgid "from_item" msgstr "From-Element" -#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 +#: sql_help.c:3392 sql_help.c:3877 sql_help.c:4230 sql_help.c:5047 msgid "cursor_name" msgstr "Cursor-Name" -#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +#: sql_help.c:3393 sql_help.c:4084 sql_help.c:4178 sql_help.c:5048 msgid "output_alias" msgstr "Ausgabealias" -#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 +#: sql_help.c:3394 sql_help.c:4085 sql_help.c:4179 sql_help.c:5049 msgid "output_expression" msgstr "Ausgabeausdruck" -#: sql_help.c:3375 sql_help.c:4066 sql_help.c:4160 sql_help.c:4646 -#: sql_help.c:4749 sql_help.c:4904 sql_help.c:5030 sql_help.c:5151 +#: sql_help.c:3395 sql_help.c:4086 sql_help.c:4180 sql_help.c:4666 +#: sql_help.c:4769 sql_help.c:4924 sql_help.c:5050 sql_help.c:5171 msgid "output_name" msgstr "Ausgabename" -#: sql_help.c:3391 +#: sql_help.c:3411 msgid "code" msgstr "Code" -#: sql_help.c:3796 +#: sql_help.c:3816 msgid "parameter" msgstr "Parameter" -#: sql_help.c:3820 sql_help.c:4235 +#: sql_help.c:3840 sql_help.c:4255 msgid "statement" msgstr "Anweisung" -#: sql_help.c:3856 sql_help.c:4209 +#: sql_help.c:3876 sql_help.c:4229 msgid "direction" msgstr "Richtung" -#: sql_help.c:3858 sql_help.c:4211 +#: sql_help.c:3878 sql_help.c:4231 msgid "where direction can be one of:" msgstr "wobei Richtung eine der folgenden sein kann:" -#: sql_help.c:3859 sql_help.c:3860 sql_help.c:3861 sql_help.c:3862 -#: sql_help.c:3863 sql_help.c:4212 sql_help.c:4213 sql_help.c:4214 -#: sql_help.c:4215 sql_help.c:4216 sql_help.c:4656 sql_help.c:4658 -#: sql_help.c:4760 sql_help.c:4762 sql_help.c:4914 sql_help.c:4916 -#: sql_help.c:5092 sql_help.c:5094 sql_help.c:5161 sql_help.c:5163 +#: sql_help.c:3879 sql_help.c:3880 sql_help.c:3881 sql_help.c:3882 +#: sql_help.c:3883 sql_help.c:4232 sql_help.c:4233 sql_help.c:4234 +#: sql_help.c:4235 sql_help.c:4236 sql_help.c:4676 sql_help.c:4678 +#: sql_help.c:4780 sql_help.c:4782 sql_help.c:4934 sql_help.c:4936 +#: sql_help.c:5112 sql_help.c:5114 sql_help.c:5181 sql_help.c:5183 msgid "count" msgstr "Anzahl" -#: sql_help.c:3966 sql_help.c:4433 +#: sql_help.c:3986 sql_help.c:4453 msgid "sequence_name" msgstr "Sequenzname" -#: sql_help.c:3984 sql_help.c:4451 +#: sql_help.c:4004 sql_help.c:4471 msgid "arg_name" msgstr "Argname" -#: sql_help.c:3985 sql_help.c:4452 +#: sql_help.c:4005 sql_help.c:4472 msgid "arg_type" msgstr "Argtyp" -#: sql_help.c:3992 sql_help.c:4459 +#: sql_help.c:4012 sql_help.c:4479 msgid "loid" msgstr "Large-Object-OID" -#: sql_help.c:4023 +#: sql_help.c:4043 msgid "remote_schema" msgstr "fernes_Schema" -#: sql_help.c:4026 +#: sql_help.c:4046 msgid "local_schema" msgstr "lokales_Schema" -#: sql_help.c:4062 +#: sql_help.c:4082 msgid "conflict_target" msgstr "Konfliktziel" -#: sql_help.c:4063 +#: sql_help.c:4083 msgid "conflict_action" msgstr "Konfliktaktion" -#: sql_help.c:4067 +#: sql_help.c:4087 msgid "where conflict_target can be one of:" msgstr "wobei Konfliktziel Folgendes sein kann:" -#: sql_help.c:4068 +#: sql_help.c:4088 msgid "index_column_name" msgstr "Indexspaltenname" -#: sql_help.c:4069 +#: sql_help.c:4089 msgid "index_expression" msgstr "Indexausdruck" -#: sql_help.c:4072 +#: sql_help.c:4092 msgid "index_predicate" msgstr "Indexprädikat" -#: sql_help.c:4074 +#: sql_help.c:4094 msgid "and conflict_action is one of:" msgstr "und Konfliktaktion Folgendes sein kann:" -#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 +#: sql_help.c:4100 sql_help.c:4203 sql_help.c:5044 msgid "sub-SELECT" msgstr "Sub-SELECT" -#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 +#: sql_help.c:4109 sql_help.c:4244 sql_help.c:5019 msgid "channel" msgstr "Kanal" -#: sql_help.c:4111 +#: sql_help.c:4131 msgid "lockmode" msgstr "Sperrmodus" -#: sql_help.c:4112 +#: sql_help.c:4132 msgid "where lockmode is one of:" msgstr "wobei Sperrmodus Folgendes sein kann:" -#: sql_help.c:4153 +#: sql_help.c:4173 msgid "target_table_name" msgstr "Zieltabellenname" -#: sql_help.c:4154 +#: sql_help.c:4174 msgid "target_alias" msgstr "Zielalias" -#: sql_help.c:4155 +#: sql_help.c:4175 msgid "data_source" msgstr "Datenquelle" -#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 +#: sql_help.c:4176 sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "join_condition" msgstr "Verbundbedingung" -#: sql_help.c:4157 +#: sql_help.c:4177 msgid "when_clause" msgstr "When-Klausel" -#: sql_help.c:4161 +#: sql_help.c:4181 msgid "where data_source is:" msgstr "wobei Datenquelle Folgendes ist:" -#: sql_help.c:4162 +#: sql_help.c:4182 msgid "source_table_name" msgstr "Quelltabellenname" -#: sql_help.c:4163 +#: sql_help.c:4183 msgid "source_query" msgstr "Quellanfrage" -#: sql_help.c:4164 +#: sql_help.c:4184 msgid "source_alias" msgstr "Quellalias" -#: sql_help.c:4165 +#: sql_help.c:4185 msgid "and when_clause is:" msgstr "und When-Klausel Folgendes ist:" -#: sql_help.c:4167 sql_help.c:4170 +#: sql_help.c:4187 sql_help.c:4190 msgid "merge_update" msgstr "Merge-Update" -#: sql_help.c:4168 sql_help.c:4171 +#: sql_help.c:4188 sql_help.c:4191 msgid "merge_delete" msgstr "Merge-Delete" -#: sql_help.c:4173 +#: sql_help.c:4193 msgid "merge_insert" msgstr "Merge-Insert" -#: sql_help.c:4174 +#: sql_help.c:4194 msgid "and merge_insert is:" msgstr "und Merge-Insert Folgendes ist:" -#: sql_help.c:4177 +#: sql_help.c:4197 msgid "and merge_update is:" msgstr "und Merge-Update Folgendes ist:" -#: sql_help.c:4184 +#: sql_help.c:4204 msgid "and merge_delete is:" msgstr "und Merge-Delete Folgendes ist:" -#: sql_help.c:4225 +#: sql_help.c:4245 msgid "payload" msgstr "Payload" -#: sql_help.c:4252 +#: sql_help.c:4272 msgid "old_role" msgstr "alte_Rolle" -#: sql_help.c:4253 +#: sql_help.c:4273 msgid "new_role" msgstr "neue_Rolle" -#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 +#: sql_help.c:4312 sql_help.c:4521 sql_help.c:4529 msgid "savepoint_name" msgstr "Sicherungspunktsname" -#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 -#: sql_help.c:5154 sql_help.c:5212 +#: sql_help.c:4669 sql_help.c:4727 sql_help.c:4927 sql_help.c:4985 +#: sql_help.c:5174 sql_help.c:5232 msgid "grouping_element" msgstr "Gruppierelement" -#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 +#: sql_help.c:4671 sql_help.c:4775 sql_help.c:4929 sql_help.c:5176 msgid "window_name" msgstr "Fenstername" -#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 +#: sql_help.c:4672 sql_help.c:4776 sql_help.c:4930 sql_help.c:5177 msgid "window_definition" msgstr "Fensterdefinition" -#: sql_help.c:4653 sql_help.c:4667 sql_help.c:4711 sql_help.c:4757 -#: sql_help.c:4911 sql_help.c:4925 sql_help.c:4969 sql_help.c:5158 -#: sql_help.c:5172 sql_help.c:5216 +#: sql_help.c:4673 sql_help.c:4687 sql_help.c:4731 sql_help.c:4777 +#: sql_help.c:4931 sql_help.c:4945 sql_help.c:4989 sql_help.c:5178 +#: sql_help.c:5192 sql_help.c:5236 msgid "select" msgstr "Select" -#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 +#: sql_help.c:4679 sql_help.c:4937 sql_help.c:5184 msgid "from_reference" msgstr "From-Referenz" -#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 +#: sql_help.c:4680 sql_help.c:4938 sql_help.c:5185 msgid "where from_item can be one of:" msgstr "wobei From-Element Folgendes sein kann:" -#: sql_help.c:4663 sql_help.c:4669 sql_help.c:4672 sql_help.c:4676 -#: sql_help.c:4688 sql_help.c:4921 sql_help.c:4927 sql_help.c:4930 -#: sql_help.c:4934 sql_help.c:4946 sql_help.c:5168 sql_help.c:5174 -#: sql_help.c:5177 sql_help.c:5181 sql_help.c:5193 +#: sql_help.c:4683 sql_help.c:4689 sql_help.c:4692 sql_help.c:4696 +#: sql_help.c:4708 sql_help.c:4941 sql_help.c:4947 sql_help.c:4950 +#: sql_help.c:4954 sql_help.c:4966 sql_help.c:5188 sql_help.c:5194 +#: sql_help.c:5197 sql_help.c:5201 sql_help.c:5213 msgid "column_alias" msgstr "Spaltenalias" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 +#: sql_help.c:4684 sql_help.c:4942 sql_help.c:5189 msgid "sampling_method" msgstr "Stichprobenmethode" -#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 +#: sql_help.c:4686 sql_help.c:4944 sql_help.c:5191 msgid "seed" msgstr "Startwert" -#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 -#: sql_help.c:5175 sql_help.c:5214 +#: sql_help.c:4690 sql_help.c:4729 sql_help.c:4948 sql_help.c:4987 +#: sql_help.c:5195 sql_help.c:5234 msgid "with_query_name" msgstr "With-Anfragename" -#: sql_help.c:4680 sql_help.c:4683 sql_help.c:4686 sql_help.c:4938 -#: sql_help.c:4941 sql_help.c:4944 sql_help.c:5185 sql_help.c:5188 -#: sql_help.c:5191 +#: sql_help.c:4700 sql_help.c:4703 sql_help.c:4706 sql_help.c:4958 +#: sql_help.c:4961 sql_help.c:4964 sql_help.c:5205 sql_help.c:5208 +#: sql_help.c:5211 msgid "column_definition" msgstr "Spaltendefinition" -#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 -#: sql_help.c:5195 sql_help.c:5201 +#: sql_help.c:4710 sql_help.c:4716 sql_help.c:4968 sql_help.c:4974 +#: sql_help.c:5215 sql_help.c:5221 msgid "join_type" msgstr "Verbundtyp" -#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "join_column" msgstr "Verbundspalte" -#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "join_using_alias" msgstr "Join-Using-Alias" -#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "and grouping_element can be one of:" msgstr "und Gruppierelement eins der folgenden sein kann:" -#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 +#: sql_help.c:4728 sql_help.c:4986 sql_help.c:5233 msgid "and with_query is:" msgstr "und With-Anfrage ist:" -#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 +#: sql_help.c:4732 sql_help.c:4990 sql_help.c:5237 msgid "values" msgstr "values" -#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 +#: sql_help.c:4733 sql_help.c:4991 sql_help.c:5238 msgid "insert" msgstr "insert" -#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 +#: sql_help.c:4734 sql_help.c:4992 sql_help.c:5239 msgid "update" msgstr "update" -#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 +#: sql_help.c:4735 sql_help.c:4993 sql_help.c:5240 msgid "delete" msgstr "delete" -#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 +#: sql_help.c:4736 sql_help.c:4994 sql_help.c:5241 msgid "merge" msgstr "merge" -#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 +#: sql_help.c:4738 sql_help.c:4996 sql_help.c:5243 msgid "search_seq_col_name" msgstr "Search-Seq-Spaltenname" -#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 +#: sql_help.c:4740 sql_help.c:4998 sql_help.c:5245 msgid "cycle_mark_col_name" msgstr "Cycle-Mark-Spaltenname" -#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 +#: sql_help.c:4741 sql_help.c:4999 sql_help.c:5246 msgid "cycle_mark_value" msgstr "Cycle-Mark-Wert" -#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 +#: sql_help.c:4742 sql_help.c:5000 sql_help.c:5247 msgid "cycle_mark_default" msgstr "Cycle-Mark-Standard" -#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 +#: sql_help.c:4743 sql_help.c:5001 sql_help.c:5248 msgid "cycle_path_col_name" msgstr "Cycle-Pfad-Spaltenname" -#: sql_help.c:4750 +#: sql_help.c:4770 msgid "new_table" msgstr "neue_Tabelle" -#: sql_help.c:4821 +#: sql_help.c:4841 msgid "snapshot_id" msgstr "Snapshot-ID" -#: sql_help.c:5090 +#: sql_help.c:5110 msgid "sort_expression" msgstr "Sortierausdruck" -#: sql_help.c:5235 sql_help.c:6219 +#: sql_help.c:5255 sql_help.c:6239 msgid "abort the current transaction" msgstr "bricht die aktuelle Transaktion ab" -#: sql_help.c:5241 +#: sql_help.c:5261 msgid "change the definition of an aggregate function" msgstr "ändert die Definition einer Aggregatfunktion" -#: sql_help.c:5247 +#: sql_help.c:5267 msgid "change the definition of a collation" msgstr "ändert die Definition einer Sortierfolge" -#: sql_help.c:5253 +#: sql_help.c:5273 msgid "change the definition of a conversion" msgstr "ändert die Definition einer Zeichensatzkonversion" -#: sql_help.c:5259 +#: sql_help.c:5279 msgid "change a database" msgstr "ändert eine Datenbank" -#: sql_help.c:5265 +#: sql_help.c:5285 msgid "define default access privileges" msgstr "definiert vorgegebene Zugriffsprivilegien" -#: sql_help.c:5271 +#: sql_help.c:5291 msgid "change the definition of a domain" msgstr "ändert die Definition einer Domäne" -#: sql_help.c:5277 +#: sql_help.c:5297 msgid "change the definition of an event trigger" msgstr "ändert die Definition eines Ereignistriggers" -#: sql_help.c:5283 +#: sql_help.c:5303 msgid "change the definition of an extension" msgstr "ändert die Definition einer Erweiterung" -#: sql_help.c:5289 +#: sql_help.c:5309 msgid "change the definition of a foreign-data wrapper" msgstr "ändert die Definition eines Fremddaten-Wrappers" -#: sql_help.c:5295 +#: sql_help.c:5315 msgid "change the definition of a foreign table" msgstr "ändert die Definition einer Fremdtabelle" -#: sql_help.c:5301 +#: sql_help.c:5321 msgid "change the definition of a function" msgstr "ändert die Definition einer Funktion" -#: sql_help.c:5307 +#: sql_help.c:5327 msgid "change role name or membership" msgstr "ändert Rollenname oder -mitglieder" -#: sql_help.c:5313 +#: sql_help.c:5333 msgid "change the definition of an index" msgstr "ändert die Definition eines Index" -#: sql_help.c:5319 +#: sql_help.c:5339 msgid "change the definition of a procedural language" msgstr "ändert die Definition einer prozeduralen Sprache" -#: sql_help.c:5325 +#: sql_help.c:5345 msgid "change the definition of a large object" msgstr "ändert die Definition eines Large Object" -#: sql_help.c:5331 +#: sql_help.c:5351 msgid "change the definition of a materialized view" msgstr "ändert die Definition einer materialisierten Sicht" -#: sql_help.c:5337 +#: sql_help.c:5357 msgid "change the definition of an operator" msgstr "ändert die Definition eines Operators" -#: sql_help.c:5343 +#: sql_help.c:5363 msgid "change the definition of an operator class" msgstr "ändert die Definition einer Operatorklasse" -#: sql_help.c:5349 +#: sql_help.c:5369 msgid "change the definition of an operator family" msgstr "ändert die Definition einer Operatorfamilie" -#: sql_help.c:5355 +#: sql_help.c:5375 msgid "change the definition of a row-level security policy" msgstr "ändert die Definition einer Policy für Sicherheit auf Zeilenebene" -#: sql_help.c:5361 +#: sql_help.c:5381 msgid "change the definition of a procedure" msgstr "ändert die Definition einer Prozedur" -#: sql_help.c:5367 +#: sql_help.c:5387 msgid "change the definition of a publication" msgstr "ändert die Definition einer Publikation" -#: sql_help.c:5373 sql_help.c:5475 +#: sql_help.c:5393 sql_help.c:5495 msgid "change a database role" msgstr "ändert eine Datenbankrolle" -#: sql_help.c:5379 +#: sql_help.c:5399 msgid "change the definition of a routine" msgstr "ändert die Definition einer Routine" -#: sql_help.c:5385 +#: sql_help.c:5405 msgid "change the definition of a rule" msgstr "ändert die Definition einer Regel" -#: sql_help.c:5391 +#: sql_help.c:5411 msgid "change the definition of a schema" msgstr "ändert die Definition eines Schemas" -#: sql_help.c:5397 +#: sql_help.c:5417 msgid "change the definition of a sequence generator" msgstr "ändert die Definition eines Sequenzgenerators" -#: sql_help.c:5403 +#: sql_help.c:5423 msgid "change the definition of a foreign server" msgstr "ändert die Definition eines Fremdservers" -#: sql_help.c:5409 +#: sql_help.c:5429 msgid "change the definition of an extended statistics object" msgstr "ändert die Definition eines erweiterten Statistikobjekts" -#: sql_help.c:5415 +#: sql_help.c:5435 msgid "change the definition of a subscription" msgstr "ändert die Definition einer Subskription" -#: sql_help.c:5421 +#: sql_help.c:5441 msgid "change a server configuration parameter" msgstr "ändert einen Server-Konfigurationsparameter" -#: sql_help.c:5427 +#: sql_help.c:5447 msgid "change the definition of a table" msgstr "ändert die Definition einer Tabelle" -#: sql_help.c:5433 +#: sql_help.c:5453 msgid "change the definition of a tablespace" msgstr "ändert die Definition eines Tablespace" -#: sql_help.c:5439 +#: sql_help.c:5459 msgid "change the definition of a text search configuration" msgstr "ändert die Definition einer Textsuchekonfiguration" -#: sql_help.c:5445 +#: sql_help.c:5465 msgid "change the definition of a text search dictionary" msgstr "ändert die Definition eines Textsuchewörterbuchs" -#: sql_help.c:5451 +#: sql_help.c:5471 msgid "change the definition of a text search parser" msgstr "ändert die Definition eines Textsucheparsers" -#: sql_help.c:5457 +#: sql_help.c:5477 msgid "change the definition of a text search template" msgstr "ändert die Definition einer Textsuchevorlage" -#: sql_help.c:5463 +#: sql_help.c:5483 msgid "change the definition of a trigger" msgstr "ändert die Definition eines Triggers" -#: sql_help.c:5469 +#: sql_help.c:5489 msgid "change the definition of a type" msgstr "ändert die Definition eines Typs" -#: sql_help.c:5481 +#: sql_help.c:5501 msgid "change the definition of a user mapping" msgstr "ändert die Definition einer Benutzerabbildung" -#: sql_help.c:5487 +#: sql_help.c:5507 msgid "change the definition of a view" msgstr "ändert die Definition einer Sicht" -#: sql_help.c:5493 +#: sql_help.c:5513 msgid "collect statistics about a database" msgstr "sammelt Statistiken über eine Datenbank" -#: sql_help.c:5499 sql_help.c:6297 +#: sql_help.c:5519 sql_help.c:6317 msgid "start a transaction block" msgstr "startet einen Transaktionsblock" -#: sql_help.c:5505 +#: sql_help.c:5525 msgid "invoke a procedure" msgstr "ruft eine Prozedur auf" -#: sql_help.c:5511 +#: sql_help.c:5531 msgid "force a write-ahead log checkpoint" msgstr "erzwingt einen Checkpoint im Write-Ahead-Log" -#: sql_help.c:5517 +#: sql_help.c:5537 msgid "close a cursor" msgstr "schließt einen Cursor" -#: sql_help.c:5523 +#: sql_help.c:5543 msgid "cluster a table according to an index" msgstr "clustert eine Tabelle nach einem Index" -#: sql_help.c:5529 +#: sql_help.c:5549 msgid "define or change the comment of an object" msgstr "definiert oder ändert den Kommentar eines Objektes" -#: sql_help.c:5535 sql_help.c:6093 +#: sql_help.c:5555 sql_help.c:6113 msgid "commit the current transaction" msgstr "schließt die aktuelle Transaktion ab" -#: sql_help.c:5541 +#: sql_help.c:5561 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "schließt eine Transaktion ab, die vorher für Two-Phase-Commit vorbereitet worden war" -#: sql_help.c:5547 +#: sql_help.c:5567 msgid "copy data between a file and a table" msgstr "kopiert Daten zwischen einer Datei und einer Tabelle" -#: sql_help.c:5553 +#: sql_help.c:5573 msgid "define a new access method" msgstr "definiert eine neue Zugriffsmethode" -#: sql_help.c:5559 +#: sql_help.c:5579 msgid "define a new aggregate function" msgstr "definiert eine neue Aggregatfunktion" -#: sql_help.c:5565 +#: sql_help.c:5585 msgid "define a new cast" msgstr "definiert eine neue Typumwandlung" -#: sql_help.c:5571 +#: sql_help.c:5591 msgid "define a new collation" msgstr "definiert eine neue Sortierfolge" -#: sql_help.c:5577 +#: sql_help.c:5597 msgid "define a new encoding conversion" msgstr "definiert eine neue Kodierungskonversion" -#: sql_help.c:5583 +#: sql_help.c:5603 msgid "create a new database" msgstr "erzeugt eine neue Datenbank" -#: sql_help.c:5589 +#: sql_help.c:5609 msgid "define a new domain" msgstr "definiert eine neue Domäne" -#: sql_help.c:5595 +#: sql_help.c:5615 msgid "define a new event trigger" msgstr "definiert einen neuen Ereignistrigger" -#: sql_help.c:5601 +#: sql_help.c:5621 msgid "install an extension" msgstr "installiert eine Erweiterung" -#: sql_help.c:5607 +#: sql_help.c:5627 msgid "define a new foreign-data wrapper" msgstr "definiert einen neuen Fremddaten-Wrapper" -#: sql_help.c:5613 +#: sql_help.c:5633 msgid "define a new foreign table" msgstr "definiert eine neue Fremdtabelle" -#: sql_help.c:5619 +#: sql_help.c:5639 msgid "define a new function" msgstr "definiert eine neue Funktion" -#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 +#: sql_help.c:5645 sql_help.c:5705 sql_help.c:5807 msgid "define a new database role" msgstr "definiert eine neue Datenbankrolle" -#: sql_help.c:5631 +#: sql_help.c:5651 msgid "define a new index" msgstr "definiert einen neuen Index" -#: sql_help.c:5637 +#: sql_help.c:5657 msgid "define a new procedural language" msgstr "definiert eine neue prozedurale Sprache" -#: sql_help.c:5643 +#: sql_help.c:5663 msgid "define a new materialized view" msgstr "definiert eine neue materialisierte Sicht" -#: sql_help.c:5649 +#: sql_help.c:5669 msgid "define a new operator" msgstr "definiert einen neuen Operator" -#: sql_help.c:5655 +#: sql_help.c:5675 msgid "define a new operator class" msgstr "definiert eine neue Operatorklasse" -#: sql_help.c:5661 +#: sql_help.c:5681 msgid "define a new operator family" msgstr "definiert eine neue Operatorfamilie" -#: sql_help.c:5667 +#: sql_help.c:5687 msgid "define a new row-level security policy for a table" msgstr "definiert eine neue Policy für Sicherheit auf Zeilenebene für eine Tabelle" -#: sql_help.c:5673 +#: sql_help.c:5693 msgid "define a new procedure" msgstr "definiert eine neue Prozedur" -#: sql_help.c:5679 +#: sql_help.c:5699 msgid "define a new publication" msgstr "definiert eine neue Publikation" -#: sql_help.c:5691 +#: sql_help.c:5711 msgid "define a new rewrite rule" msgstr "definiert eine neue Umschreiberegel" -#: sql_help.c:5697 +#: sql_help.c:5717 msgid "define a new schema" msgstr "definiert ein neues Schema" -#: sql_help.c:5703 +#: sql_help.c:5723 msgid "define a new sequence generator" msgstr "definiert einen neuen Sequenzgenerator" -#: sql_help.c:5709 +#: sql_help.c:5729 msgid "define a new foreign server" msgstr "definiert einen neuen Fremdserver" -#: sql_help.c:5715 +#: sql_help.c:5735 msgid "define extended statistics" msgstr "definiert erweiterte Statistiken" -#: sql_help.c:5721 +#: sql_help.c:5741 msgid "define a new subscription" msgstr "definiert eine neue Subskription" -#: sql_help.c:5727 +#: sql_help.c:5747 msgid "define a new table" msgstr "definiert eine neue Tabelle" -#: sql_help.c:5733 sql_help.c:6255 +#: sql_help.c:5753 sql_help.c:6275 msgid "define a new table from the results of a query" msgstr "definiert eine neue Tabelle aus den Ergebnissen einer Anfrage" -#: sql_help.c:5739 +#: sql_help.c:5759 msgid "define a new tablespace" msgstr "definiert einen neuen Tablespace" -#: sql_help.c:5745 +#: sql_help.c:5765 msgid "define a new text search configuration" msgstr "definiert eine neue Textsuchekonfiguration" -#: sql_help.c:5751 +#: sql_help.c:5771 msgid "define a new text search dictionary" msgstr "definiert ein neues Textsuchewörterbuch" -#: sql_help.c:5757 +#: sql_help.c:5777 msgid "define a new text search parser" msgstr "definiert einen neuen Textsucheparser" -#: sql_help.c:5763 +#: sql_help.c:5783 msgid "define a new text search template" msgstr "definiert eine neue Textsuchevorlage" -#: sql_help.c:5769 +#: sql_help.c:5789 msgid "define a new transform" msgstr "definiert eine neue Transformation" -#: sql_help.c:5775 +#: sql_help.c:5795 msgid "define a new trigger" msgstr "definiert einen neuen Trigger" -#: sql_help.c:5781 +#: sql_help.c:5801 msgid "define a new data type" msgstr "definiert einen neuen Datentyp" -#: sql_help.c:5793 +#: sql_help.c:5813 msgid "define a new mapping of a user to a foreign server" msgstr "definiert eine neue Abbildung eines Benutzers auf einen Fremdserver" -#: sql_help.c:5799 +#: sql_help.c:5819 msgid "define a new view" msgstr "definiert eine neue Sicht" -#: sql_help.c:5805 +#: sql_help.c:5825 msgid "deallocate a prepared statement" msgstr "gibt einen vorbereiteten Befehl frei" -#: sql_help.c:5811 +#: sql_help.c:5831 msgid "define a cursor" msgstr "definiert einen Cursor" -#: sql_help.c:5817 +#: sql_help.c:5837 msgid "delete rows of a table" msgstr "löscht Zeilen einer Tabelle" -#: sql_help.c:5823 +#: sql_help.c:5843 msgid "discard session state" msgstr "verwirft den Sitzungszustand" -#: sql_help.c:5829 +#: sql_help.c:5849 msgid "execute an anonymous code block" msgstr "führt einen anonymen Codeblock aus" -#: sql_help.c:5835 +#: sql_help.c:5855 msgid "remove an access method" msgstr "entfernt eine Zugriffsmethode" -#: sql_help.c:5841 +#: sql_help.c:5861 msgid "remove an aggregate function" msgstr "entfernt eine Aggregatfunktion" -#: sql_help.c:5847 +#: sql_help.c:5867 msgid "remove a cast" msgstr "entfernt eine Typumwandlung" -#: sql_help.c:5853 +#: sql_help.c:5873 msgid "remove a collation" msgstr "entfernt eine Sortierfolge" -#: sql_help.c:5859 +#: sql_help.c:5879 msgid "remove a conversion" msgstr "entfernt eine Zeichensatzkonversion" -#: sql_help.c:5865 +#: sql_help.c:5885 msgid "remove a database" msgstr "entfernt eine Datenbank" -#: sql_help.c:5871 +#: sql_help.c:5891 msgid "remove a domain" msgstr "entfernt eine Domäne" -#: sql_help.c:5877 +#: sql_help.c:5897 msgid "remove an event trigger" msgstr "entfernt einen Ereignistrigger" -#: sql_help.c:5883 +#: sql_help.c:5903 msgid "remove an extension" msgstr "entfernt eine Erweiterung" -#: sql_help.c:5889 +#: sql_help.c:5909 msgid "remove a foreign-data wrapper" msgstr "entfernt einen Fremddaten-Wrapper" -#: sql_help.c:5895 +#: sql_help.c:5915 msgid "remove a foreign table" msgstr "entfernt eine Fremdtabelle" -#: sql_help.c:5901 +#: sql_help.c:5921 msgid "remove a function" msgstr "entfernt eine Funktion" -#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 +#: sql_help.c:5927 sql_help.c:5993 sql_help.c:6095 msgid "remove a database role" msgstr "entfernt eine Datenbankrolle" -#: sql_help.c:5913 +#: sql_help.c:5933 msgid "remove an index" msgstr "entfernt einen Index" -#: sql_help.c:5919 +#: sql_help.c:5939 msgid "remove a procedural language" msgstr "entfernt eine prozedurale Sprache" -#: sql_help.c:5925 +#: sql_help.c:5945 msgid "remove a materialized view" msgstr "entfernt eine materialisierte Sicht" -#: sql_help.c:5931 +#: sql_help.c:5951 msgid "remove an operator" msgstr "entfernt einen Operator" -#: sql_help.c:5937 +#: sql_help.c:5957 msgid "remove an operator class" msgstr "entfernt eine Operatorklasse" -#: sql_help.c:5943 +#: sql_help.c:5963 msgid "remove an operator family" msgstr "entfernt eine Operatorfamilie" -#: sql_help.c:5949 +#: sql_help.c:5969 msgid "remove database objects owned by a database role" msgstr "entfernt die einer Datenbankrolle gehörenden Datenbankobjekte" -#: sql_help.c:5955 +#: sql_help.c:5975 msgid "remove a row-level security policy from a table" msgstr "entfernt eine Policy für Sicherheit auf Zeilenebene von einer Tabelle" -#: sql_help.c:5961 +#: sql_help.c:5981 msgid "remove a procedure" msgstr "entfernt eine Prozedur" -#: sql_help.c:5967 +#: sql_help.c:5987 msgid "remove a publication" msgstr "entfernt eine Publikation" -#: sql_help.c:5979 +#: sql_help.c:5999 msgid "remove a routine" msgstr "entfernt eine Routine" -#: sql_help.c:5985 +#: sql_help.c:6005 msgid "remove a rewrite rule" msgstr "entfernt eine Umschreiberegel" -#: sql_help.c:5991 +#: sql_help.c:6011 msgid "remove a schema" msgstr "entfernt ein Schema" -#: sql_help.c:5997 +#: sql_help.c:6017 msgid "remove a sequence" msgstr "entfernt eine Sequenz" -#: sql_help.c:6003 +#: sql_help.c:6023 msgid "remove a foreign server descriptor" msgstr "entfernt einen Fremdserverdeskriptor" -#: sql_help.c:6009 +#: sql_help.c:6029 msgid "remove extended statistics" msgstr "entfernt erweiterte Statistiken" -#: sql_help.c:6015 +#: sql_help.c:6035 msgid "remove a subscription" msgstr "entfernt eine Subskription" -#: sql_help.c:6021 +#: sql_help.c:6041 msgid "remove a table" msgstr "entfernt eine Tabelle" -#: sql_help.c:6027 +#: sql_help.c:6047 msgid "remove a tablespace" msgstr "entfernt einen Tablespace" -#: sql_help.c:6033 +#: sql_help.c:6053 msgid "remove a text search configuration" msgstr "entfernt eine Textsuchekonfiguration" -#: sql_help.c:6039 +#: sql_help.c:6059 msgid "remove a text search dictionary" msgstr "entfernt ein Textsuchewörterbuch" -#: sql_help.c:6045 +#: sql_help.c:6065 msgid "remove a text search parser" msgstr "entfernt einen Textsucheparser" -#: sql_help.c:6051 +#: sql_help.c:6071 msgid "remove a text search template" msgstr "entfernt eine Textsuchevorlage" -#: sql_help.c:6057 +#: sql_help.c:6077 msgid "remove a transform" msgstr "entfernt eine Transformation" -#: sql_help.c:6063 +#: sql_help.c:6083 msgid "remove a trigger" msgstr "entfernt einen Trigger" -#: sql_help.c:6069 +#: sql_help.c:6089 msgid "remove a data type" msgstr "entfernt einen Datentyp" -#: sql_help.c:6081 +#: sql_help.c:6101 msgid "remove a user mapping for a foreign server" msgstr "entfernt eine Benutzerabbildung für einen Fremdserver" -#: sql_help.c:6087 +#: sql_help.c:6107 msgid "remove a view" msgstr "entfernt eine Sicht" -#: sql_help.c:6099 +#: sql_help.c:6119 msgid "execute a prepared statement" msgstr "führt einen vorbereiteten Befehl aus" -#: sql_help.c:6105 +#: sql_help.c:6125 msgid "show the execution plan of a statement" msgstr "zeigt den Ausführungsplan eines Befehls" -#: sql_help.c:6111 +#: sql_help.c:6131 msgid "retrieve rows from a query using a cursor" msgstr "liest Zeilen aus einer Anfrage mit einem Cursor" -#: sql_help.c:6117 +#: sql_help.c:6137 msgid "define access privileges" msgstr "definiert Zugriffsprivilegien" -#: sql_help.c:6123 +#: sql_help.c:6143 msgid "import table definitions from a foreign server" msgstr "importiert Tabellendefinitionen von einem Fremdserver" -#: sql_help.c:6129 +#: sql_help.c:6149 msgid "create new rows in a table" msgstr "erzeugt neue Zeilen in einer Tabelle" -#: sql_help.c:6135 +#: sql_help.c:6155 msgid "listen for a notification" msgstr "hört auf eine Benachrichtigung" -#: sql_help.c:6141 +#: sql_help.c:6161 msgid "load a shared library file" msgstr "lädt eine dynamische Bibliotheksdatei" -#: sql_help.c:6147 +#: sql_help.c:6167 msgid "lock a table" msgstr "sperrt eine Tabelle" -#: sql_help.c:6153 +#: sql_help.c:6173 msgid "conditionally insert, update, or delete rows of a table" msgstr "fügt Zeilen in eine Tabelle ein oder ändert oder löscht Zeilen einer Tabelle, abhängig von Bedingungen" -#: sql_help.c:6159 +#: sql_help.c:6179 msgid "position a cursor" msgstr "positioniert einen Cursor" -#: sql_help.c:6165 +#: sql_help.c:6185 msgid "generate a notification" msgstr "erzeugt eine Benachrichtigung" -#: sql_help.c:6171 +#: sql_help.c:6191 msgid "prepare a statement for execution" msgstr "bereitet einen Befehl zur Ausführung vor" -#: sql_help.c:6177 +#: sql_help.c:6197 msgid "prepare the current transaction for two-phase commit" msgstr "bereitet die aktuelle Transaktion für Two-Phase-Commit vor" -#: sql_help.c:6183 +#: sql_help.c:6203 msgid "change the ownership of database objects owned by a database role" msgstr "ändert den Eigentümer der der Rolle gehörenden Datenbankobjekte" -#: sql_help.c:6189 +#: sql_help.c:6209 msgid "replace the contents of a materialized view" msgstr "ersetzt den Inhalt einer materialisierten Sicht" -#: sql_help.c:6195 +#: sql_help.c:6215 msgid "rebuild indexes" msgstr "baut Indexe neu" -#: sql_help.c:6201 +#: sql_help.c:6221 msgid "release a previously defined savepoint" msgstr "gibt einen zuvor definierten Sicherungspunkt frei" -#: sql_help.c:6207 +#: sql_help.c:6227 msgid "restore the value of a run-time parameter to the default value" msgstr "setzt einen Konfigurationsparameter auf die Voreinstellung zurück" -#: sql_help.c:6213 +#: sql_help.c:6233 msgid "remove access privileges" msgstr "entfernt Zugriffsprivilegien" -#: sql_help.c:6225 +#: sql_help.c:6245 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "storniert eine Transaktion, die vorher für Two-Phase-Commit vorbereitet worden war" -#: sql_help.c:6231 +#: sql_help.c:6251 msgid "roll back to a savepoint" msgstr "rollt eine Transaktion bis zu einem Sicherungspunkt zurück" -#: sql_help.c:6237 +#: sql_help.c:6257 msgid "define a new savepoint within the current transaction" msgstr "definiert einen neuen Sicherungspunkt in der aktuellen Transaktion" -#: sql_help.c:6243 +#: sql_help.c:6263 msgid "define or change a security label applied to an object" msgstr "definiert oder ändert ein Security-Label eines Objektes" -#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 +#: sql_help.c:6269 sql_help.c:6323 sql_help.c:6359 msgid "retrieve rows from a table or view" msgstr "liest Zeilen aus einer Tabelle oder Sicht" -#: sql_help.c:6261 +#: sql_help.c:6281 msgid "change a run-time parameter" msgstr "ändert einen Konfigurationsparameter" -#: sql_help.c:6267 +#: sql_help.c:6287 msgid "set constraint check timing for the current transaction" msgstr "setzt die Zeitsteuerung für Check-Constraints in der aktuellen Transaktion" -#: sql_help.c:6273 +#: sql_help.c:6293 msgid "set the current user identifier of the current session" msgstr "setzt den aktuellen Benutzernamen der aktuellen Sitzung" -#: sql_help.c:6279 +#: sql_help.c:6299 msgid "set the session user identifier and the current user identifier of the current session" msgstr "setzt den Sitzungsbenutzernamen und den aktuellen Benutzernamen der aktuellen Sitzung" -#: sql_help.c:6285 +#: sql_help.c:6305 msgid "set the characteristics of the current transaction" msgstr "setzt die Charakteristika der aktuellen Transaktion" -#: sql_help.c:6291 +#: sql_help.c:6311 msgid "show the value of a run-time parameter" msgstr "zeigt den Wert eines Konfigurationsparameters" -#: sql_help.c:6309 +#: sql_help.c:6329 msgid "empty a table or set of tables" msgstr "leert eine oder mehrere Tabellen" -#: sql_help.c:6315 +#: sql_help.c:6335 msgid "stop listening for a notification" msgstr "beendet das Hören auf eine Benachrichtigung" -#: sql_help.c:6321 +#: sql_help.c:6341 msgid "update rows of a table" msgstr "aktualisiert Zeilen einer Tabelle" -#: sql_help.c:6327 +#: sql_help.c:6347 msgid "garbage-collect and optionally analyze a database" msgstr "säubert und analysiert eine Datenbank" -#: sql_help.c:6333 +#: sql_help.c:6353 msgid "compute a set of rows" msgstr "berechnet eine Zeilenmenge" @@ -6928,7 +6936,7 @@ msgstr "überflüssiges Kommandozeilenargument »%s« ignoriert" msgid "could not find own program executable" msgstr "konnte eigene Programmdatei nicht finden" -#: tab-complete.in.c:6633 +#: tab-complete.in.c:6639 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/es.po b/src/bin/psql/po/es.po index f446e64d7e1..9347d9d2ef3 100644 --- a/src/bin/psql/po/es.po +++ b/src/bin/psql/po/es.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: psql (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:18+0000\n" -"PO-Revision-Date: 2025-11-08 19:28+0100\n" +"POT-Creation-Date: 2026-02-06 23:17+0000\n" +"PO-Revision-Date: 2025-12-06 09:44+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -3841,15 +3841,13 @@ msgstr "" msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" -msgstr "" -" SHELL_ERROR «true» si la última orden de shell falló, «false» si tuvo éxito\n" +msgstr " SHELL_ERROR «true» si la última orden de shell falló, «false» si tuvo éxito\n" #: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" -msgstr "" -" SHELL_EXIT_CODE estado de salida de la última orden de shell\n" +msgstr " SHELL_EXIT_CODE estado de salida de la última orden de shell\n" #: help.c:453 msgid "" @@ -4355,189 +4353,189 @@ msgstr "%s: memoria agotada" #: sql_help.c:746 sql_help.c:750 sql_help.c:771 sql_help.c:774 sql_help.c:777 #: sql_help.c:806 sql_help.c:818 sql_help.c:826 sql_help.c:829 sql_help.c:832 #: sql_help.c:847 sql_help.c:850 sql_help.c:879 sql_help.c:884 sql_help.c:889 -#: sql_help.c:894 sql_help.c:899 sql_help.c:926 sql_help.c:928 sql_help.c:930 -#: sql_help.c:932 sql_help.c:935 sql_help.c:937 sql_help.c:984 sql_help.c:1029 -#: sql_help.c:1034 sql_help.c:1039 sql_help.c:1044 sql_help.c:1049 -#: sql_help.c:1068 sql_help.c:1079 sql_help.c:1081 sql_help.c:1102 -#: sql_help.c:1112 sql_help.c:1113 sql_help.c:1115 sql_help.c:1117 -#: sql_help.c:1129 sql_help.c:1133 sql_help.c:1135 sql_help.c:1147 -#: sql_help.c:1149 sql_help.c:1151 sql_help.c:1153 sql_help.c:1172 -#: sql_help.c:1174 sql_help.c:1178 sql_help.c:1182 sql_help.c:1186 -#: sql_help.c:1189 sql_help.c:1190 sql_help.c:1191 sql_help.c:1194 -#: sql_help.c:1197 sql_help.c:1199 sql_help.c:1341 sql_help.c:1343 -#: sql_help.c:1346 sql_help.c:1349 sql_help.c:1351 sql_help.c:1353 -#: sql_help.c:1356 sql_help.c:1359 sql_help.c:1487 sql_help.c:1489 -#: sql_help.c:1491 sql_help.c:1494 sql_help.c:1515 sql_help.c:1518 -#: sql_help.c:1521 sql_help.c:1524 sql_help.c:1528 sql_help.c:1530 -#: sql_help.c:1532 sql_help.c:1534 sql_help.c:1548 sql_help.c:1551 -#: sql_help.c:1553 sql_help.c:1555 sql_help.c:1565 sql_help.c:1567 -#: sql_help.c:1577 sql_help.c:1579 sql_help.c:1589 sql_help.c:1592 -#: sql_help.c:1615 sql_help.c:1617 sql_help.c:1619 sql_help.c:1621 -#: sql_help.c:1624 sql_help.c:1626 sql_help.c:1629 sql_help.c:1632 -#: sql_help.c:1683 sql_help.c:1726 sql_help.c:1729 sql_help.c:1731 -#: sql_help.c:1733 sql_help.c:1736 sql_help.c:1738 sql_help.c:1740 -#: sql_help.c:1743 sql_help.c:1793 sql_help.c:1809 sql_help.c:2044 -#: sql_help.c:2113 sql_help.c:2132 sql_help.c:2145 sql_help.c:2203 -#: sql_help.c:2211 sql_help.c:2221 sql_help.c:2249 sql_help.c:2282 -#: sql_help.c:2300 sql_help.c:2328 sql_help.c:2451 sql_help.c:2497 -#: sql_help.c:2522 sql_help.c:2545 sql_help.c:2549 sql_help.c:2583 -#: sql_help.c:2603 sql_help.c:2625 sql_help.c:2639 sql_help.c:2660 -#: sql_help.c:2689 sql_help.c:2722 sql_help.c:2745 sql_help.c:2794 -#: sql_help.c:3098 sql_help.c:3111 sql_help.c:3128 sql_help.c:3144 -#: sql_help.c:3184 sql_help.c:3238 sql_help.c:3242 sql_help.c:3244 -#: sql_help.c:3251 sql_help.c:3270 sql_help.c:3297 sql_help.c:3332 -#: sql_help.c:3344 sql_help.c:3353 sql_help.c:3399 sql_help.c:3413 -#: sql_help.c:3441 sql_help.c:3449 sql_help.c:3461 sql_help.c:3471 -#: sql_help.c:3479 sql_help.c:3487 sql_help.c:3495 sql_help.c:3503 -#: sql_help.c:3512 sql_help.c:3523 sql_help.c:3531 sql_help.c:3539 -#: sql_help.c:3547 sql_help.c:3555 sql_help.c:3565 sql_help.c:3574 -#: sql_help.c:3583 sql_help.c:3591 sql_help.c:3601 sql_help.c:3612 -#: sql_help.c:3620 sql_help.c:3629 sql_help.c:3640 sql_help.c:3649 -#: sql_help.c:3657 sql_help.c:3665 sql_help.c:3673 sql_help.c:3681 -#: sql_help.c:3689 sql_help.c:3697 sql_help.c:3705 sql_help.c:3713 -#: sql_help.c:3721 sql_help.c:3729 sql_help.c:3746 sql_help.c:3755 -#: sql_help.c:3763 sql_help.c:3780 sql_help.c:3795 sql_help.c:4110 -#: sql_help.c:4233 sql_help.c:4262 sql_help.c:4278 sql_help.c:4280 -#: sql_help.c:4784 sql_help.c:4832 sql_help.c:4991 +#: sql_help.c:894 sql_help.c:899 sql_help.c:935 sql_help.c:937 sql_help.c:939 +#: sql_help.c:941 sql_help.c:944 sql_help.c:946 sql_help.c:998 sql_help.c:1043 +#: sql_help.c:1048 sql_help.c:1053 sql_help.c:1058 sql_help.c:1063 +#: sql_help.c:1082 sql_help.c:1093 sql_help.c:1095 sql_help.c:1116 +#: sql_help.c:1126 sql_help.c:1127 sql_help.c:1129 sql_help.c:1131 +#: sql_help.c:1143 sql_help.c:1147 sql_help.c:1149 sql_help.c:1161 +#: sql_help.c:1163 sql_help.c:1165 sql_help.c:1167 sql_help.c:1186 +#: sql_help.c:1188 sql_help.c:1192 sql_help.c:1196 sql_help.c:1200 +#: sql_help.c:1203 sql_help.c:1204 sql_help.c:1205 sql_help.c:1208 +#: sql_help.c:1211 sql_help.c:1213 sql_help.c:1355 sql_help.c:1357 +#: sql_help.c:1360 sql_help.c:1363 sql_help.c:1365 sql_help.c:1367 +#: sql_help.c:1370 sql_help.c:1373 sql_help.c:1501 sql_help.c:1503 +#: sql_help.c:1505 sql_help.c:1508 sql_help.c:1529 sql_help.c:1532 +#: sql_help.c:1535 sql_help.c:1538 sql_help.c:1542 sql_help.c:1544 +#: sql_help.c:1546 sql_help.c:1548 sql_help.c:1562 sql_help.c:1565 +#: sql_help.c:1567 sql_help.c:1569 sql_help.c:1579 sql_help.c:1581 +#: sql_help.c:1591 sql_help.c:1593 sql_help.c:1603 sql_help.c:1606 +#: sql_help.c:1629 sql_help.c:1631 sql_help.c:1633 sql_help.c:1635 +#: sql_help.c:1638 sql_help.c:1640 sql_help.c:1643 sql_help.c:1646 +#: sql_help.c:1697 sql_help.c:1740 sql_help.c:1743 sql_help.c:1745 +#: sql_help.c:1747 sql_help.c:1750 sql_help.c:1752 sql_help.c:1754 +#: sql_help.c:1757 sql_help.c:1807 sql_help.c:1823 sql_help.c:2058 +#: sql_help.c:2127 sql_help.c:2146 sql_help.c:2159 sql_help.c:2217 +#: sql_help.c:2225 sql_help.c:2235 sql_help.c:2263 sql_help.c:2296 +#: sql_help.c:2314 sql_help.c:2342 sql_help.c:2465 sql_help.c:2511 +#: sql_help.c:2536 sql_help.c:2559 sql_help.c:2563 sql_help.c:2597 +#: sql_help.c:2617 sql_help.c:2639 sql_help.c:2653 sql_help.c:2674 +#: sql_help.c:2707 sql_help.c:2742 sql_help.c:2765 sql_help.c:2814 +#: sql_help.c:3118 sql_help.c:3131 sql_help.c:3148 sql_help.c:3164 +#: sql_help.c:3204 sql_help.c:3258 sql_help.c:3262 sql_help.c:3264 +#: sql_help.c:3271 sql_help.c:3290 sql_help.c:3317 sql_help.c:3352 +#: sql_help.c:3364 sql_help.c:3373 sql_help.c:3419 sql_help.c:3433 +#: sql_help.c:3461 sql_help.c:3469 sql_help.c:3481 sql_help.c:3491 +#: sql_help.c:3499 sql_help.c:3507 sql_help.c:3515 sql_help.c:3523 +#: sql_help.c:3532 sql_help.c:3543 sql_help.c:3551 sql_help.c:3559 +#: sql_help.c:3567 sql_help.c:3575 sql_help.c:3585 sql_help.c:3594 +#: sql_help.c:3603 sql_help.c:3611 sql_help.c:3621 sql_help.c:3632 +#: sql_help.c:3640 sql_help.c:3649 sql_help.c:3660 sql_help.c:3669 +#: sql_help.c:3677 sql_help.c:3685 sql_help.c:3693 sql_help.c:3701 +#: sql_help.c:3709 sql_help.c:3717 sql_help.c:3725 sql_help.c:3733 +#: sql_help.c:3741 sql_help.c:3749 sql_help.c:3766 sql_help.c:3775 +#: sql_help.c:3783 sql_help.c:3800 sql_help.c:3815 sql_help.c:4130 +#: sql_help.c:4253 sql_help.c:4282 sql_help.c:4298 sql_help.c:4300 +#: sql_help.c:4804 sql_help.c:4852 sql_help.c:5011 msgid "name" msgstr "nombre" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1886 -#: sql_help.c:3414 sql_help.c:4551 +#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1900 +#: sql_help.c:3434 sql_help.c:4571 msgid "aggregate_signature" msgstr "signatura_func_agregación" #: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:274 #: sql_help.c:295 sql_help.c:426 sql_help.c:473 sql_help.c:552 sql_help.c:600 #: sql_help.c:618 sql_help.c:645 sql_help.c:698 sql_help.c:773 sql_help.c:828 -#: sql_help.c:849 sql_help.c:888 sql_help.c:938 sql_help.c:985 sql_help.c:1038 -#: sql_help.c:1070 sql_help.c:1080 sql_help.c:1116 sql_help.c:1136 -#: sql_help.c:1150 sql_help.c:1200 sql_help.c:1350 sql_help.c:1488 -#: sql_help.c:1531 sql_help.c:1552 sql_help.c:1566 sql_help.c:1578 -#: sql_help.c:1591 sql_help.c:1618 sql_help.c:1684 sql_help.c:1737 +#: sql_help.c:849 sql_help.c:888 sql_help.c:947 sql_help.c:999 sql_help.c:1052 +#: sql_help.c:1084 sql_help.c:1094 sql_help.c:1130 sql_help.c:1150 +#: sql_help.c:1164 sql_help.c:1214 sql_help.c:1364 sql_help.c:1502 +#: sql_help.c:1545 sql_help.c:1566 sql_help.c:1580 sql_help.c:1592 +#: sql_help.c:1605 sql_help.c:1632 sql_help.c:1698 sql_help.c:1751 msgid "new_name" msgstr "nuevo_nombre" #: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:272 #: sql_help.c:293 sql_help.c:424 sql_help.c:509 sql_help.c:557 sql_help.c:647 #: sql_help.c:656 sql_help.c:721 sql_help.c:745 sql_help.c:776 sql_help.c:831 -#: sql_help.c:893 sql_help.c:936 sql_help.c:1043 sql_help.c:1082 -#: sql_help.c:1114 sql_help.c:1134 sql_help.c:1148 sql_help.c:1198 -#: sql_help.c:1417 sql_help.c:1490 sql_help.c:1533 sql_help.c:1554 -#: sql_help.c:1616 sql_help.c:1732 sql_help.c:3084 +#: sql_help.c:893 sql_help.c:945 sql_help.c:1057 sql_help.c:1096 +#: sql_help.c:1128 sql_help.c:1148 sql_help.c:1162 sql_help.c:1212 +#: sql_help.c:1431 sql_help.c:1504 sql_help.c:1547 sql_help.c:1568 +#: sql_help.c:1630 sql_help.c:1746 sql_help.c:3104 msgid "new_owner" msgstr "nuevo_dueño" #: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:276 sql_help.c:346 #: sql_help.c:475 sql_help.c:562 sql_help.c:700 sql_help.c:749 sql_help.c:779 -#: sql_help.c:834 sql_help.c:898 sql_help.c:1048 sql_help.c:1118 -#: sql_help.c:1152 sql_help.c:1352 sql_help.c:1535 sql_help.c:1556 -#: sql_help.c:1568 sql_help.c:1580 sql_help.c:1620 sql_help.c:1739 +#: sql_help.c:834 sql_help.c:898 sql_help.c:1062 sql_help.c:1132 +#: sql_help.c:1166 sql_help.c:1366 sql_help.c:1549 sql_help.c:1570 +#: sql_help.c:1582 sql_help.c:1594 sql_help.c:1634 sql_help.c:1753 msgid "new_schema" msgstr "nuevo_esquema" -#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 +#: sql_help.c:44 sql_help.c:1964 sql_help.c:3435 sql_help.c:4600 msgid "where aggregate_signature is:" msgstr "donde signatura_func_agregación es:" #: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:364 sql_help.c:377 #: sql_help.c:381 sql_help.c:397 sql_help.c:400 sql_help.c:403 sql_help.c:544 #: sql_help.c:549 sql_help.c:554 sql_help.c:559 sql_help.c:564 sql_help.c:880 -#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1030 -#: sql_help.c:1035 sql_help.c:1040 sql_help.c:1045 sql_help.c:1050 -#: sql_help.c:1904 sql_help.c:1921 sql_help.c:1927 sql_help.c:1951 -#: sql_help.c:1954 sql_help.c:1957 sql_help.c:2114 sql_help.c:2133 -#: sql_help.c:2136 sql_help.c:2452 sql_help.c:2661 sql_help.c:3416 -#: sql_help.c:3419 sql_help.c:3422 sql_help.c:3513 sql_help.c:3602 -#: sql_help.c:3630 sql_help.c:3983 sql_help.c:4450 sql_help.c:4557 -#: sql_help.c:4564 sql_help.c:4570 sql_help.c:4581 sql_help.c:4584 -#: sql_help.c:4587 +#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1044 +#: sql_help.c:1049 sql_help.c:1054 sql_help.c:1059 sql_help.c:1064 +#: sql_help.c:1918 sql_help.c:1935 sql_help.c:1941 sql_help.c:1965 +#: sql_help.c:1968 sql_help.c:1971 sql_help.c:2128 sql_help.c:2147 +#: sql_help.c:2150 sql_help.c:2466 sql_help.c:2675 sql_help.c:3436 +#: sql_help.c:3439 sql_help.c:3442 sql_help.c:3533 sql_help.c:3622 +#: sql_help.c:3650 sql_help.c:4003 sql_help.c:4470 sql_help.c:4577 +#: sql_help.c:4584 sql_help.c:4590 sql_help.c:4601 sql_help.c:4604 +#: sql_help.c:4607 msgid "argmode" msgstr "modo_arg" #: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:365 sql_help.c:378 #: sql_help.c:382 sql_help.c:398 sql_help.c:401 sql_help.c:404 sql_help.c:545 #: sql_help.c:550 sql_help.c:555 sql_help.c:560 sql_help.c:565 sql_help.c:881 -#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1031 -#: sql_help.c:1036 sql_help.c:1041 sql_help.c:1046 sql_help.c:1051 -#: sql_help.c:1905 sql_help.c:1922 sql_help.c:1928 sql_help.c:1952 -#: sql_help.c:1955 sql_help.c:1958 sql_help.c:2115 sql_help.c:2134 -#: sql_help.c:2137 sql_help.c:2453 sql_help.c:2662 sql_help.c:3417 -#: sql_help.c:3420 sql_help.c:3423 sql_help.c:3514 sql_help.c:3603 -#: sql_help.c:3631 sql_help.c:4558 sql_help.c:4565 sql_help.c:4571 -#: sql_help.c:4582 sql_help.c:4585 sql_help.c:4588 +#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1045 +#: sql_help.c:1050 sql_help.c:1055 sql_help.c:1060 sql_help.c:1065 +#: sql_help.c:1919 sql_help.c:1936 sql_help.c:1942 sql_help.c:1966 +#: sql_help.c:1969 sql_help.c:1972 sql_help.c:2129 sql_help.c:2148 +#: sql_help.c:2151 sql_help.c:2467 sql_help.c:2676 sql_help.c:3437 +#: sql_help.c:3440 sql_help.c:3443 sql_help.c:3534 sql_help.c:3623 +#: sql_help.c:3651 sql_help.c:4578 sql_help.c:4585 sql_help.c:4591 +#: sql_help.c:4602 sql_help.c:4605 sql_help.c:4608 msgid "argname" msgstr "nombre_arg" #: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:366 sql_help.c:379 #: sql_help.c:383 sql_help.c:399 sql_help.c:402 sql_help.c:405 sql_help.c:546 #: sql_help.c:551 sql_help.c:556 sql_help.c:561 sql_help.c:566 sql_help.c:882 -#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1032 -#: sql_help.c:1037 sql_help.c:1042 sql_help.c:1047 sql_help.c:1052 -#: sql_help.c:1906 sql_help.c:1923 sql_help.c:1929 sql_help.c:1953 -#: sql_help.c:1956 sql_help.c:1959 sql_help.c:2454 sql_help.c:2663 -#: sql_help.c:3418 sql_help.c:3421 sql_help.c:3424 sql_help.c:3515 -#: sql_help.c:3604 sql_help.c:3632 sql_help.c:4559 sql_help.c:4566 -#: sql_help.c:4572 sql_help.c:4583 sql_help.c:4586 sql_help.c:4589 +#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1046 +#: sql_help.c:1051 sql_help.c:1056 sql_help.c:1061 sql_help.c:1066 +#: sql_help.c:1920 sql_help.c:1937 sql_help.c:1943 sql_help.c:1967 +#: sql_help.c:1970 sql_help.c:1973 sql_help.c:2468 sql_help.c:2677 +#: sql_help.c:3438 sql_help.c:3441 sql_help.c:3444 sql_help.c:3535 +#: sql_help.c:3624 sql_help.c:3652 sql_help.c:4579 sql_help.c:4586 +#: sql_help.c:4592 sql_help.c:4603 sql_help.c:4606 sql_help.c:4609 msgid "argtype" msgstr "tipo_arg" -#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:979 -#: sql_help.c:1131 sql_help.c:1549 sql_help.c:1678 sql_help.c:1710 -#: sql_help.c:1762 sql_help.c:1821 sql_help.c:2011 sql_help.c:2018 -#: sql_help.c:2331 sql_help.c:2389 sql_help.c:2398 sql_help.c:2407 -#: sql_help.c:2498 sql_help.c:2723 sql_help.c:2816 sql_help.c:3113 -#: sql_help.c:3298 sql_help.c:3320 sql_help.c:3462 sql_help.c:3819 -#: sql_help.c:4027 sql_help.c:4277 sql_help.c:4279 sql_help.c:5059 +#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:993 +#: sql_help.c:1145 sql_help.c:1563 sql_help.c:1692 sql_help.c:1724 +#: sql_help.c:1776 sql_help.c:1835 sql_help.c:2025 sql_help.c:2032 +#: sql_help.c:2345 sql_help.c:2403 sql_help.c:2412 sql_help.c:2421 +#: sql_help.c:2512 sql_help.c:2743 sql_help.c:2836 sql_help.c:3133 +#: sql_help.c:3318 sql_help.c:3340 sql_help.c:3482 sql_help.c:3839 +#: sql_help.c:4047 sql_help.c:4297 sql_help.c:4299 sql_help.c:5079 msgid "option" msgstr "opción" -#: sql_help.c:115 sql_help.c:980 sql_help.c:1679 sql_help.c:2499 -#: sql_help.c:2724 sql_help.c:3299 sql_help.c:3463 +#: sql_help.c:115 sql_help.c:994 sql_help.c:1693 sql_help.c:2513 +#: sql_help.c:2744 sql_help.c:3319 sql_help.c:3483 msgid "where option can be:" msgstr "donde opción puede ser:" -#: sql_help.c:116 sql_help.c:2263 +#: sql_help.c:116 sql_help.c:2277 msgid "allowconn" msgstr "allowconn" -#: sql_help.c:117 sql_help.c:981 sql_help.c:1680 sql_help.c:2264 -#: sql_help.c:2500 sql_help.c:2725 sql_help.c:3300 +#: sql_help.c:117 sql_help.c:995 sql_help.c:1694 sql_help.c:2278 +#: sql_help.c:2514 sql_help.c:2745 sql_help.c:3320 msgid "connlimit" msgstr "límite_conexiones" -#: sql_help.c:118 sql_help.c:2265 +#: sql_help.c:118 sql_help.c:2279 msgid "istemplate" msgstr "esplantilla" -#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1355 -#: sql_help.c:1410 sql_help.c:4283 +#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1369 +#: sql_help.c:1424 sql_help.c:4303 msgid "new_tablespace" msgstr "nuevo_tablespace" #: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:572 sql_help.c:574 -#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:988 -#: sql_help.c:992 sql_help.c:995 sql_help.c:1057 sql_help.c:1059 -#: sql_help.c:1060 sql_help.c:1211 sql_help.c:1213 sql_help.c:1687 -#: sql_help.c:1691 sql_help.c:1694 sql_help.c:2464 sql_help.c:2667 -#: sql_help.c:3995 sql_help.c:4301 sql_help.c:4462 sql_help.c:4772 +#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:1002 +#: sql_help.c:1006 sql_help.c:1009 sql_help.c:1071 sql_help.c:1073 +#: sql_help.c:1074 sql_help.c:1225 sql_help.c:1227 sql_help.c:1701 +#: sql_help.c:1705 sql_help.c:1708 sql_help.c:2478 sql_help.c:2681 +#: sql_help.c:4015 sql_help.c:4321 sql_help.c:4482 sql_help.c:4792 msgid "configuration_parameter" msgstr "parámetro_de_configuración" #: sql_help.c:128 sql_help.c:422 sql_help.c:493 sql_help.c:499 sql_help.c:511 #: sql_help.c:573 sql_help.c:627 sql_help.c:709 sql_help.c:719 sql_help.c:906 -#: sql_help.c:934 sql_help.c:989 sql_help.c:1058 sql_help.c:1132 -#: sql_help.c:1177 sql_help.c:1181 sql_help.c:1185 sql_help.c:1188 -#: sql_help.c:1193 sql_help.c:1196 sql_help.c:1212 sql_help.c:1388 -#: sql_help.c:1412 sql_help.c:1465 sql_help.c:1473 sql_help.c:1493 -#: sql_help.c:1550 sql_help.c:1634 sql_help.c:1688 sql_help.c:1711 -#: sql_help.c:2332 sql_help.c:2390 sql_help.c:2399 sql_help.c:2408 -#: sql_help.c:2465 sql_help.c:2466 sql_help.c:2530 sql_help.c:2533 -#: sql_help.c:2567 sql_help.c:2668 sql_help.c:2669 sql_help.c:2692 -#: sql_help.c:2817 sql_help.c:2856 sql_help.c:2967 sql_help.c:2980 -#: sql_help.c:2994 sql_help.c:3040 sql_help.c:3048 sql_help.c:3070 -#: sql_help.c:3087 sql_help.c:3114 sql_help.c:3321 sql_help.c:4028 -#: sql_help.c:4773 sql_help.c:4774 sql_help.c:4775 sql_help.c:4776 +#: sql_help.c:943 sql_help.c:1003 sql_help.c:1072 sql_help.c:1146 +#: sql_help.c:1191 sql_help.c:1195 sql_help.c:1199 sql_help.c:1202 +#: sql_help.c:1207 sql_help.c:1210 sql_help.c:1226 sql_help.c:1402 +#: sql_help.c:1426 sql_help.c:1479 sql_help.c:1487 sql_help.c:1507 +#: sql_help.c:1564 sql_help.c:1648 sql_help.c:1702 sql_help.c:1725 +#: sql_help.c:2346 sql_help.c:2404 sql_help.c:2413 sql_help.c:2422 +#: sql_help.c:2479 sql_help.c:2480 sql_help.c:2544 sql_help.c:2547 +#: sql_help.c:2581 sql_help.c:2682 sql_help.c:2683 sql_help.c:2710 +#: sql_help.c:2837 sql_help.c:2876 sql_help.c:2987 sql_help.c:3000 +#: sql_help.c:3014 sql_help.c:3060 sql_help.c:3068 sql_help.c:3090 +#: sql_help.c:3107 sql_help.c:3134 sql_help.c:3341 sql_help.c:4048 +#: sql_help.c:4793 sql_help.c:4794 sql_help.c:4795 sql_help.c:4796 msgid "value" msgstr "valor" @@ -4545,10 +4543,10 @@ msgstr "valor" msgid "target_role" msgstr "rol_destino" -#: sql_help.c:215 sql_help.c:943 sql_help.c:2316 sql_help.c:2697 -#: sql_help.c:2770 sql_help.c:2775 sql_help.c:3958 sql_help.c:3967 -#: sql_help.c:3986 sql_help.c:3998 sql_help.c:4425 sql_help.c:4434 -#: sql_help.c:4453 sql_help.c:4465 +#: sql_help.c:215 sql_help.c:950 sql_help.c:953 sql_help.c:2330 sql_help.c:2713 +#: sql_help.c:2790 sql_help.c:2795 sql_help.c:3978 sql_help.c:3987 +#: sql_help.c:4006 sql_help.c:4018 sql_help.c:4445 sql_help.c:4454 +#: sql_help.c:4473 sql_help.c:4485 msgid "schema_name" msgstr "nombre_de_esquema" @@ -4563,57 +4561,57 @@ msgstr "donde grant_o_revoke_abreviado es uno de:" #: sql_help.c:218 sql_help.c:219 sql_help.c:220 sql_help.c:221 sql_help.c:222 #: sql_help.c:223 sql_help.c:224 sql_help.c:225 sql_help.c:226 sql_help.c:227 #: sql_help.c:228 sql_help.c:229 sql_help.c:598 sql_help.c:634 sql_help.c:702 -#: sql_help.c:852 sql_help.c:999 sql_help.c:1354 sql_help.c:1698 -#: sql_help.c:2503 sql_help.c:2504 sql_help.c:2505 sql_help.c:2506 -#: sql_help.c:2507 sql_help.c:2641 sql_help.c:2728 sql_help.c:2729 -#: sql_help.c:2730 sql_help.c:3303 sql_help.c:3304 sql_help.c:3305 -#: sql_help.c:3306 sql_help.c:3307 sql_help.c:4007 sql_help.c:4011 -#: sql_help.c:4474 sql_help.c:4478 sql_help.c:4794 +#: sql_help.c:852 sql_help.c:1013 sql_help.c:1368 sql_help.c:1712 +#: sql_help.c:2517 sql_help.c:2518 sql_help.c:2519 sql_help.c:2520 +#: sql_help.c:2521 sql_help.c:2655 sql_help.c:2748 sql_help.c:2749 +#: sql_help.c:2750 sql_help.c:3323 sql_help.c:3324 sql_help.c:3325 +#: sql_help.c:3326 sql_help.c:3327 sql_help.c:4027 sql_help.c:4031 +#: sql_help.c:4494 sql_help.c:4498 sql_help.c:4814 msgid "role_name" msgstr "nombre_de_rol" -#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:942 sql_help.c:1370 -#: sql_help.c:1372 sql_help.c:1376 sql_help.c:1427 sql_help.c:1439 -#: sql_help.c:1469 sql_help.c:1728 sql_help.c:2285 sql_help.c:2289 -#: sql_help.c:2411 sql_help.c:2417 sql_help.c:2526 sql_help.c:2696 -#: sql_help.c:2833 sql_help.c:2838 sql_help.c:2840 sql_help.c:2962 -#: sql_help.c:2975 sql_help.c:2989 sql_help.c:2998 sql_help.c:3010 -#: sql_help.c:3044 sql_help.c:4060 sql_help.c:4076 sql_help.c:4078 -#: sql_help.c:4176 sql_help.c:4179 sql_help.c:4181 sql_help.c:4644 -#: sql_help.c:4645 sql_help.c:4654 sql_help.c:4701 sql_help.c:4702 -#: sql_help.c:4703 sql_help.c:4704 sql_help.c:4705 sql_help.c:4706 -#: sql_help.c:4747 sql_help.c:4748 sql_help.c:4753 sql_help.c:4758 -#: sql_help.c:4902 sql_help.c:4903 sql_help.c:4912 sql_help.c:4959 -#: sql_help.c:4960 sql_help.c:4961 sql_help.c:4962 sql_help.c:4963 -#: sql_help.c:4964 sql_help.c:5020 sql_help.c:5022 sql_help.c:5089 -#: sql_help.c:5149 sql_help.c:5150 sql_help.c:5159 sql_help.c:5206 -#: sql_help.c:5207 sql_help.c:5208 sql_help.c:5209 sql_help.c:5210 -#: sql_help.c:5211 +#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:957 sql_help.c:1384 +#: sql_help.c:1386 sql_help.c:1390 sql_help.c:1441 sql_help.c:1453 +#: sql_help.c:1483 sql_help.c:1742 sql_help.c:2299 sql_help.c:2303 +#: sql_help.c:2425 sql_help.c:2431 sql_help.c:2540 sql_help.c:2717 +#: sql_help.c:2853 sql_help.c:2858 sql_help.c:2860 sql_help.c:2982 +#: sql_help.c:2995 sql_help.c:3009 sql_help.c:3018 sql_help.c:3030 +#: sql_help.c:3064 sql_help.c:4080 sql_help.c:4096 sql_help.c:4098 +#: sql_help.c:4196 sql_help.c:4199 sql_help.c:4201 sql_help.c:4664 +#: sql_help.c:4665 sql_help.c:4674 sql_help.c:4721 sql_help.c:4722 +#: sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 sql_help.c:4726 +#: sql_help.c:4767 sql_help.c:4768 sql_help.c:4773 sql_help.c:4778 +#: sql_help.c:4922 sql_help.c:4923 sql_help.c:4932 sql_help.c:4979 +#: sql_help.c:4980 sql_help.c:4981 sql_help.c:4982 sql_help.c:4983 +#: sql_help.c:4984 sql_help.c:5040 sql_help.c:5042 sql_help.c:5109 +#: sql_help.c:5169 sql_help.c:5170 sql_help.c:5179 sql_help.c:5226 +#: sql_help.c:5227 sql_help.c:5228 sql_help.c:5229 sql_help.c:5230 +#: sql_help.c:5231 msgid "expression" msgstr "expresión" -#: sql_help.c:263 sql_help.c:2286 +#: sql_help.c:263 sql_help.c:2300 msgid "domain_constraint" msgstr "restricción_de_dominio" #: sql_help.c:265 sql_help.c:267 sql_help.c:270 sql_help.c:278 sql_help.c:501 -#: sql_help.c:502 sql_help.c:1347 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:1398 sql_help.c:1399 sql_help.c:1426 sql_help.c:1438 -#: sql_help.c:1460 sql_help.c:1892 sql_help.c:1894 sql_help.c:2288 -#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2997 sql_help.c:3009 -#: sql_help.c:4073 +#: sql_help.c:502 sql_help.c:1361 sql_help.c:1410 sql_help.c:1411 +#: sql_help.c:1412 sql_help.c:1413 sql_help.c:1440 sql_help.c:1452 +#: sql_help.c:1474 sql_help.c:1906 sql_help.c:1908 sql_help.c:2302 +#: sql_help.c:2424 sql_help.c:2429 sql_help.c:3017 sql_help.c:3029 +#: sql_help.c:4093 msgid "constraint_name" msgstr "nombre_restricción" -#: sql_help.c:268 sql_help.c:1348 +#: sql_help.c:268 sql_help.c:1362 msgid "new_constraint_name" msgstr "nuevo_nombre_restricción" -#: sql_help.c:277 sql_help.c:2287 +#: sql_help.c:277 sql_help.c:2301 msgid "where domain_constraint is:" msgstr "donde restricción_de_dominio es:" -#: sql_help.c:344 sql_help.c:1130 +#: sql_help.c:344 sql_help.c:1144 msgid "new_version" msgstr "nueva_versión" @@ -4629,82 +4627,82 @@ msgstr "dondo objeto_miembro es:" #: sql_help.c:361 sql_help.c:362 sql_help.c:367 sql_help.c:371 sql_help.c:373 #: sql_help.c:375 sql_help.c:384 sql_help.c:385 sql_help.c:386 sql_help.c:387 #: sql_help.c:388 sql_help.c:389 sql_help.c:390 sql_help.c:391 sql_help.c:394 -#: sql_help.c:395 sql_help.c:1884 sql_help.c:1889 sql_help.c:1896 -#: sql_help.c:1897 sql_help.c:1898 sql_help.c:1899 sql_help.c:1900 -#: sql_help.c:1901 sql_help.c:1902 sql_help.c:1907 sql_help.c:1909 -#: sql_help.c:1913 sql_help.c:1915 sql_help.c:1919 sql_help.c:1924 -#: sql_help.c:1925 sql_help.c:1932 sql_help.c:1933 sql_help.c:1934 -#: sql_help.c:1935 sql_help.c:1936 sql_help.c:1937 sql_help.c:1938 -#: sql_help.c:1939 sql_help.c:1940 sql_help.c:1941 sql_help.c:1942 -#: sql_help.c:1947 sql_help.c:1948 sql_help.c:4547 sql_help.c:4552 -#: sql_help.c:4553 sql_help.c:4554 sql_help.c:4555 sql_help.c:4561 -#: sql_help.c:4562 sql_help.c:4567 sql_help.c:4568 sql_help.c:4573 -#: sql_help.c:4574 sql_help.c:4575 sql_help.c:4576 sql_help.c:4577 -#: sql_help.c:4578 +#: sql_help.c:395 sql_help.c:1898 sql_help.c:1903 sql_help.c:1910 +#: sql_help.c:1911 sql_help.c:1912 sql_help.c:1913 sql_help.c:1914 +#: sql_help.c:1915 sql_help.c:1916 sql_help.c:1921 sql_help.c:1923 +#: sql_help.c:1927 sql_help.c:1929 sql_help.c:1933 sql_help.c:1938 +#: sql_help.c:1939 sql_help.c:1946 sql_help.c:1947 sql_help.c:1948 +#: sql_help.c:1949 sql_help.c:1950 sql_help.c:1951 sql_help.c:1952 +#: sql_help.c:1953 sql_help.c:1954 sql_help.c:1955 sql_help.c:1956 +#: sql_help.c:1961 sql_help.c:1962 sql_help.c:4567 sql_help.c:4572 +#: sql_help.c:4573 sql_help.c:4574 sql_help.c:4575 sql_help.c:4581 +#: sql_help.c:4582 sql_help.c:4587 sql_help.c:4588 sql_help.c:4593 +#: sql_help.c:4594 sql_help.c:4595 sql_help.c:4596 sql_help.c:4597 +#: sql_help.c:4598 msgid "object_name" msgstr "nombre_de_objeto" -#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 +#: sql_help.c:353 sql_help.c:1899 sql_help.c:4570 msgid "aggregate_name" msgstr "nombre_función_agregación" -#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 -#: sql_help.c:2185 sql_help.c:3432 +#: sql_help.c:355 sql_help.c:1901 sql_help.c:2193 sql_help.c:2197 +#: sql_help.c:2199 sql_help.c:3452 msgid "source_type" msgstr "tipo_fuente" -#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 -#: sql_help.c:2186 sql_help.c:3433 +#: sql_help.c:356 sql_help.c:1902 sql_help.c:2194 sql_help.c:2198 +#: sql_help.c:2200 sql_help.c:3453 msgid "target_type" msgstr "tipo_destino" -#: sql_help.c:363 sql_help.c:816 sql_help.c:1903 sql_help.c:2181 -#: sql_help.c:2224 sql_help.c:2304 sql_help.c:2584 sql_help.c:2615 -#: sql_help.c:3190 sql_help.c:4449 sql_help.c:4556 sql_help.c:4673 -#: sql_help.c:4677 sql_help.c:4681 sql_help.c:4684 sql_help.c:4931 -#: sql_help.c:4935 sql_help.c:4939 sql_help.c:4942 sql_help.c:5178 -#: sql_help.c:5182 sql_help.c:5186 sql_help.c:5189 +#: sql_help.c:363 sql_help.c:816 sql_help.c:1917 sql_help.c:2195 +#: sql_help.c:2238 sql_help.c:2318 sql_help.c:2598 sql_help.c:2629 +#: sql_help.c:3210 sql_help.c:4469 sql_help.c:4576 sql_help.c:4693 +#: sql_help.c:4697 sql_help.c:4701 sql_help.c:4704 sql_help.c:4951 +#: sql_help.c:4955 sql_help.c:4959 sql_help.c:4962 sql_help.c:5198 +#: sql_help.c:5202 sql_help.c:5206 sql_help.c:5209 msgid "function_name" msgstr "nombre_de_función" -#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1924 sql_help.c:2622 msgid "operator_name" msgstr "nombre_operador" -#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1911 -#: sql_help.c:2585 sql_help.c:3556 +#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1925 +#: sql_help.c:2599 sql_help.c:3576 msgid "left_type" msgstr "tipo_izq" -#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1912 -#: sql_help.c:2586 sql_help.c:3557 +#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1926 +#: sql_help.c:2600 sql_help.c:3577 msgid "right_type" msgstr "tipo_der" #: sql_help.c:372 sql_help.c:374 sql_help.c:772 sql_help.c:775 sql_help.c:778 #: sql_help.c:807 sql_help.c:819 sql_help.c:827 sql_help.c:830 sql_help.c:833 -#: sql_help.c:1447 sql_help.c:1914 sql_help.c:1916 sql_help.c:2605 -#: sql_help.c:2626 sql_help.c:3018 sql_help.c:3566 sql_help.c:3575 +#: sql_help.c:1461 sql_help.c:1928 sql_help.c:1930 sql_help.c:2619 +#: sql_help.c:2640 sql_help.c:3038 sql_help.c:3586 sql_help.c:3595 msgid "index_method" msgstr "método_de_índice" -#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 +#: sql_help.c:376 sql_help.c:1934 sql_help.c:4583 msgid "procedure_name" msgstr "nombre_de_procedimiento" -#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 +#: sql_help.c:380 sql_help.c:1940 sql_help.c:4002 sql_help.c:4589 msgid "routine_name" msgstr "nombre_de_rutina" -#: sql_help.c:392 sql_help.c:1416 sql_help.c:1943 sql_help.c:2460 -#: sql_help.c:2666 sql_help.c:2970 sql_help.c:3157 sql_help.c:3737 -#: sql_help.c:4004 sql_help.c:4471 +#: sql_help.c:392 sql_help.c:1430 sql_help.c:1957 sql_help.c:2474 +#: sql_help.c:2680 sql_help.c:2990 sql_help.c:3177 sql_help.c:3757 +#: sql_help.c:4024 sql_help.c:4491 msgid "type_name" msgstr "nombre_de_tipo" -#: sql_help.c:393 sql_help.c:1944 sql_help.c:2459 sql_help.c:2665 -#: sql_help.c:3158 sql_help.c:3390 sql_help.c:3738 sql_help.c:3989 -#: sql_help.c:4456 +#: sql_help.c:393 sql_help.c:1958 sql_help.c:2473 sql_help.c:2679 +#: sql_help.c:3178 sql_help.c:3410 sql_help.c:3758 sql_help.c:4009 +#: sql_help.c:4476 msgid "lang_name" msgstr "nombre_lenguaje" @@ -4712,149 +4710,149 @@ msgstr "nombre_lenguaje" msgid "and aggregate_signature is:" msgstr "y signatura_func_agregación es:" -#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 +#: sql_help.c:419 sql_help.c:2060 sql_help.c:2343 msgid "handler_function" msgstr "función_manejadora" -#: sql_help.c:420 sql_help.c:2330 +#: sql_help.c:420 sql_help.c:2344 msgid "validator_function" msgstr "función_validadora" -#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1033 -#: sql_help.c:1342 sql_help.c:1625 +#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1047 +#: sql_help.c:1356 sql_help.c:1639 msgid "action" msgstr "acción" #: sql_help.c:470 sql_help.c:477 sql_help.c:481 sql_help.c:482 sql_help.c:485 #: sql_help.c:487 sql_help.c:488 sql_help.c:489 sql_help.c:491 sql_help.c:494 #: sql_help.c:496 sql_help.c:497 sql_help.c:695 sql_help.c:705 sql_help.c:707 -#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:941 sql_help.c:1111 -#: sql_help.c:1344 sql_help.c:1362 sql_help.c:1366 sql_help.c:1367 -#: sql_help.c:1371 sql_help.c:1373 sql_help.c:1374 sql_help.c:1375 -#: sql_help.c:1377 sql_help.c:1378 sql_help.c:1380 sql_help.c:1383 -#: sql_help.c:1384 sql_help.c:1386 sql_help.c:1389 sql_help.c:1391 -#: sql_help.c:1392 sql_help.c:1440 sql_help.c:1441 sql_help.c:1442 -#: sql_help.c:1444 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1463 sql_help.c:1468 sql_help.c:1475 sql_help.c:1476 -#: sql_help.c:1727 sql_help.c:1730 sql_help.c:1734 sql_help.c:1770 -#: sql_help.c:1891 sql_help.c:2008 sql_help.c:2014 sql_help.c:2028 -#: sql_help.c:2029 sql_help.c:2030 sql_help.c:2387 sql_help.c:2402 -#: sql_help.c:2416 sql_help.c:2457 sql_help.c:2525 sql_help.c:2531 -#: sql_help.c:2564 sql_help.c:2695 sql_help.c:2802 sql_help.c:2837 -#: sql_help.c:2839 sql_help.c:2952 sql_help.c:2961 sql_help.c:2971 -#: sql_help.c:2974 sql_help.c:2984 sql_help.c:2988 sql_help.c:3011 -#: sql_help.c:3012 sql_help.c:3013 sql_help.c:3015 sql_help.c:3016 -#: sql_help.c:3023 sql_help.c:3024 sql_help.c:3038 sql_help.c:3043 -#: sql_help.c:3050 sql_help.c:3051 sql_help.c:3067 sql_help.c:3193 -#: sql_help.c:3333 sql_help.c:3961 sql_help.c:3962 sql_help.c:4059 -#: sql_help.c:4075 sql_help.c:4077 sql_help.c:4079 sql_help.c:4175 -#: sql_help.c:4178 sql_help.c:4180 sql_help.c:4182 sql_help.c:4428 -#: sql_help.c:4429 sql_help.c:4549 sql_help.c:4710 sql_help.c:4717 -#: sql_help.c:4719 sql_help.c:4968 sql_help.c:4975 sql_help.c:4977 -#: sql_help.c:5019 sql_help.c:5021 sql_help.c:5023 sql_help.c:5077 -#: sql_help.c:5215 sql_help.c:5222 sql_help.c:5224 +#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:956 sql_help.c:1125 +#: sql_help.c:1358 sql_help.c:1376 sql_help.c:1380 sql_help.c:1381 +#: sql_help.c:1385 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1391 sql_help.c:1392 sql_help.c:1394 sql_help.c:1397 +#: sql_help.c:1398 sql_help.c:1400 sql_help.c:1403 sql_help.c:1405 +#: sql_help.c:1406 sql_help.c:1454 sql_help.c:1455 sql_help.c:1456 +#: sql_help.c:1458 sql_help.c:1459 sql_help.c:1466 sql_help.c:1467 +#: sql_help.c:1477 sql_help.c:1482 sql_help.c:1489 sql_help.c:1490 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:1748 sql_help.c:1784 +#: sql_help.c:1905 sql_help.c:2022 sql_help.c:2028 sql_help.c:2042 +#: sql_help.c:2043 sql_help.c:2044 sql_help.c:2401 sql_help.c:2416 +#: sql_help.c:2430 sql_help.c:2471 sql_help.c:2539 sql_help.c:2545 +#: sql_help.c:2578 sql_help.c:2716 sql_help.c:2822 sql_help.c:2857 +#: sql_help.c:2859 sql_help.c:2972 sql_help.c:2981 sql_help.c:2991 +#: sql_help.c:2994 sql_help.c:3004 sql_help.c:3008 sql_help.c:3031 +#: sql_help.c:3032 sql_help.c:3033 sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:3043 sql_help.c:3044 sql_help.c:3058 sql_help.c:3063 +#: sql_help.c:3070 sql_help.c:3071 sql_help.c:3087 sql_help.c:3213 +#: sql_help.c:3353 sql_help.c:3981 sql_help.c:3982 sql_help.c:4079 +#: sql_help.c:4095 sql_help.c:4097 sql_help.c:4099 sql_help.c:4195 +#: sql_help.c:4198 sql_help.c:4200 sql_help.c:4202 sql_help.c:4448 +#: sql_help.c:4449 sql_help.c:4569 sql_help.c:4730 sql_help.c:4737 +#: sql_help.c:4739 sql_help.c:4988 sql_help.c:4995 sql_help.c:4997 +#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5043 sql_help.c:5097 +#: sql_help.c:5235 sql_help.c:5242 sql_help.c:5244 msgid "column_name" msgstr "nombre_de_columna" -#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1359 sql_help.c:1749 msgid "new_column_name" msgstr "nuevo_nombre_de_columna" -#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1054 -#: sql_help.c:1361 sql_help.c:1635 +#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1068 +#: sql_help.c:1375 sql_help.c:1649 msgid "where action is one of:" msgstr "donde acción es una de:" -#: sql_help.c:478 sql_help.c:483 sql_help.c:1103 sql_help.c:1363 -#: sql_help.c:1368 sql_help.c:1637 sql_help.c:1641 sql_help.c:2283 -#: sql_help.c:2388 sql_help.c:2604 sql_help.c:2795 sql_help.c:2953 -#: sql_help.c:3240 sql_help.c:4234 +#: sql_help.c:478 sql_help.c:483 sql_help.c:1117 sql_help.c:1377 +#: sql_help.c:1382 sql_help.c:1651 sql_help.c:1655 sql_help.c:2297 +#: sql_help.c:2402 sql_help.c:2618 sql_help.c:2815 sql_help.c:2973 +#: sql_help.c:3260 sql_help.c:4254 msgid "data_type" msgstr "tipo_de_dato" -#: sql_help.c:479 sql_help.c:484 sql_help.c:1364 sql_help.c:1369 -#: sql_help.c:1470 sql_help.c:1638 sql_help.c:1642 sql_help.c:2284 -#: sql_help.c:2391 sql_help.c:2527 sql_help.c:2955 sql_help.c:2963 -#: sql_help.c:2976 sql_help.c:2990 sql_help.c:3045 sql_help.c:3241 -#: sql_help.c:3247 sql_help.c:4070 +#: sql_help.c:479 sql_help.c:484 sql_help.c:1378 sql_help.c:1383 +#: sql_help.c:1484 sql_help.c:1652 sql_help.c:1656 sql_help.c:2298 +#: sql_help.c:2405 sql_help.c:2541 sql_help.c:2975 sql_help.c:2983 +#: sql_help.c:2996 sql_help.c:3010 sql_help.c:3065 sql_help.c:3261 +#: sql_help.c:3267 sql_help.c:4090 msgid "collation" msgstr "ordenamiento" -#: sql_help.c:480 sql_help.c:1365 sql_help.c:2392 sql_help.c:2403 -#: sql_help.c:2956 sql_help.c:2972 sql_help.c:2985 +#: sql_help.c:480 sql_help.c:1379 sql_help.c:2406 sql_help.c:2417 +#: sql_help.c:2976 sql_help.c:2992 sql_help.c:3005 msgid "column_constraint" msgstr "restricción_de_columna" -#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1399 sql_help.c:5091 msgid "integer" msgstr "entero" -#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 -#: sql_help.c:1390 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1401 +#: sql_help.c:1404 msgid "attribute_option" msgstr "opción_de_atributo" -#: sql_help.c:500 sql_help.c:1394 sql_help.c:2393 sql_help.c:2404 -#: sql_help.c:2957 sql_help.c:2973 sql_help.c:2986 +#: sql_help.c:500 sql_help.c:1408 sql_help.c:2407 sql_help.c:2418 +#: sql_help.c:2977 sql_help.c:2993 sql_help.c:3006 msgid "table_constraint" msgstr "restricción_de_tabla" -#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1400 -#: sql_help.c:1401 sql_help.c:1402 sql_help.c:1403 sql_help.c:1945 +#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1414 +#: sql_help.c:1415 sql_help.c:1416 sql_help.c:1417 sql_help.c:1959 msgid "trigger_name" msgstr "nombre_disparador" -#: sql_help.c:507 sql_help.c:508 sql_help.c:1414 sql_help.c:1415 -#: sql_help.c:2396 sql_help.c:2401 sql_help.c:2960 sql_help.c:2983 +#: sql_help.c:507 sql_help.c:508 sql_help.c:1428 sql_help.c:1429 +#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2980 sql_help.c:3003 msgid "parent_table" msgstr "tabla_padre" -#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1053 -#: sql_help.c:1594 sql_help.c:2315 +#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1067 +#: sql_help.c:1608 sql_help.c:2329 msgid "extension_name" msgstr "nombre_de_extensión" -#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 +#: sql_help.c:569 sql_help.c:1069 sql_help.c:2475 msgid "execution_cost" msgstr "costo_de_ejecución" -#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 +#: sql_help.c:570 sql_help.c:1070 sql_help.c:2476 msgid "result_rows" msgstr "núm_de_filas" -#: sql_help.c:571 sql_help.c:2463 +#: sql_help.c:571 sql_help.c:2477 msgid "support_function" msgstr "función_de_soporte" -#: sql_help.c:593 sql_help.c:595 sql_help.c:978 sql_help.c:986 sql_help.c:990 -#: sql_help.c:993 sql_help.c:996 sql_help.c:1677 sql_help.c:1685 -#: sql_help.c:1689 sql_help.c:1692 sql_help.c:1695 sql_help.c:2771 -#: sql_help.c:2773 sql_help.c:2776 sql_help.c:2777 sql_help.c:3959 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:3965 sql_help.c:3968 -#: sql_help.c:3969 sql_help.c:3971 sql_help.c:3972 sql_help.c:3974 -#: sql_help.c:3975 sql_help.c:3977 sql_help.c:3978 sql_help.c:3980 -#: sql_help.c:3981 sql_help.c:3987 sql_help.c:3988 sql_help.c:3990 -#: sql_help.c:3991 sql_help.c:3993 sql_help.c:3994 sql_help.c:3996 -#: sql_help.c:3997 sql_help.c:3999 sql_help.c:4000 sql_help.c:4002 -#: sql_help.c:4003 sql_help.c:4005 sql_help.c:4006 sql_help.c:4008 -#: sql_help.c:4009 sql_help.c:4426 sql_help.c:4427 sql_help.c:4431 -#: sql_help.c:4432 sql_help.c:4435 sql_help.c:4436 sql_help.c:4438 -#: sql_help.c:4439 sql_help.c:4441 sql_help.c:4442 sql_help.c:4444 -#: sql_help.c:4445 sql_help.c:4447 sql_help.c:4448 sql_help.c:4454 -#: sql_help.c:4455 sql_help.c:4457 sql_help.c:4458 sql_help.c:4460 -#: sql_help.c:4461 sql_help.c:4463 sql_help.c:4464 sql_help.c:4466 -#: sql_help.c:4467 sql_help.c:4469 sql_help.c:4470 sql_help.c:4472 -#: sql_help.c:4473 sql_help.c:4475 sql_help.c:4476 +#: sql_help.c:593 sql_help.c:595 sql_help.c:992 sql_help.c:1000 sql_help.c:1004 +#: sql_help.c:1007 sql_help.c:1010 sql_help.c:1691 sql_help.c:1699 +#: sql_help.c:1703 sql_help.c:1706 sql_help.c:1709 sql_help.c:2791 +#: sql_help.c:2793 sql_help.c:2796 sql_help.c:2797 sql_help.c:3979 +#: sql_help.c:3980 sql_help.c:3984 sql_help.c:3985 sql_help.c:3988 +#: sql_help.c:3989 sql_help.c:3991 sql_help.c:3992 sql_help.c:3994 +#: sql_help.c:3995 sql_help.c:3997 sql_help.c:3998 sql_help.c:4000 +#: sql_help.c:4001 sql_help.c:4007 sql_help.c:4008 sql_help.c:4010 +#: sql_help.c:4011 sql_help.c:4013 sql_help.c:4014 sql_help.c:4016 +#: sql_help.c:4017 sql_help.c:4019 sql_help.c:4020 sql_help.c:4022 +#: sql_help.c:4023 sql_help.c:4025 sql_help.c:4026 sql_help.c:4028 +#: sql_help.c:4029 sql_help.c:4446 sql_help.c:4447 sql_help.c:4451 +#: sql_help.c:4452 sql_help.c:4455 sql_help.c:4456 sql_help.c:4458 +#: sql_help.c:4459 sql_help.c:4461 sql_help.c:4462 sql_help.c:4464 +#: sql_help.c:4465 sql_help.c:4467 sql_help.c:4468 sql_help.c:4474 +#: sql_help.c:4475 sql_help.c:4477 sql_help.c:4478 sql_help.c:4480 +#: sql_help.c:4481 sql_help.c:4483 sql_help.c:4484 sql_help.c:4486 +#: sql_help.c:4487 sql_help.c:4489 sql_help.c:4490 sql_help.c:4492 +#: sql_help.c:4493 sql_help.c:4495 sql_help.c:4496 msgid "role_specification" msgstr "especificación_de_rol" -#: sql_help.c:594 sql_help.c:596 sql_help.c:1708 sql_help.c:2250 -#: sql_help.c:2779 sql_help.c:3318 sql_help.c:3771 sql_help.c:4804 +#: sql_help.c:594 sql_help.c:596 sql_help.c:1722 sql_help.c:2264 +#: sql_help.c:2799 sql_help.c:3338 sql_help.c:3791 sql_help.c:4824 msgid "user_name" msgstr "nombre_de_usuario" -#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 -#: sql_help.c:4010 sql_help.c:4477 +#: sql_help.c:597 sql_help.c:1012 sql_help.c:1711 sql_help.c:2798 +#: sql_help.c:4030 sql_help.c:4497 msgid "where role_specification can be:" msgstr "donde especificación_de_rol puede ser:" @@ -4862,22 +4860,22 @@ msgstr "donde especificación_de_rol puede ser:" msgid "group_name" msgstr "nombre_de_grupo" -#: sql_help.c:620 sql_help.c:1466 sql_help.c:2262 sql_help.c:2534 -#: sql_help.c:2568 sql_help.c:2968 sql_help.c:2981 sql_help.c:2995 -#: sql_help.c:3041 sql_help.c:3071 sql_help.c:3083 sql_help.c:4001 -#: sql_help.c:4468 +#: sql_help.c:620 sql_help.c:1480 sql_help.c:2276 sql_help.c:2548 +#: sql_help.c:2582 sql_help.c:2988 sql_help.c:3001 sql_help.c:3015 +#: sql_help.c:3061 sql_help.c:3091 sql_help.c:3103 sql_help.c:4021 +#: sql_help.c:4488 msgid "tablespace_name" msgstr "nombre_de_tablespace" -#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 -#: sql_help.c:1461 sql_help.c:1823 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1422 sql_help.c:1432 +#: sql_help.c:1475 sql_help.c:1837 msgid "index_name" msgstr "nombre_índice" -#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1411 -#: sql_help.c:1413 sql_help.c:1464 sql_help.c:2532 sql_help.c:2566 -#: sql_help.c:2966 sql_help.c:2979 sql_help.c:2993 sql_help.c:3039 -#: sql_help.c:3069 +#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1425 +#: sql_help.c:1427 sql_help.c:1478 sql_help.c:2546 sql_help.c:2580 +#: sql_help.c:2986 sql_help.c:2999 sql_help.c:3013 sql_help.c:3059 +#: sql_help.c:3089 msgid "storage_parameter" msgstr "parámetro_de_almacenamiento" @@ -4885,1918 +4883,1926 @@ msgstr "parámetro_de_almacenamiento" msgid "column_number" msgstr "número_de_columna" -#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 +#: sql_help.c:655 sql_help.c:1922 sql_help.c:4580 msgid "large_object_oid" msgstr "oid_de_objeto_grande" -#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 +#: sql_help.c:714 sql_help.c:1407 sql_help.c:2974 msgid "compression_method" msgstr "método_de_compresión" -#: sql_help.c:716 sql_help.c:1409 +#: sql_help.c:716 sql_help.c:1423 msgid "new_access_method" msgstr "nuevo_método_de_acceso" -#: sql_help.c:753 sql_help.c:2589 +#: sql_help.c:753 sql_help.c:2603 msgid "res_proc" msgstr "proc_res" -#: sql_help.c:754 sql_help.c:2590 +#: sql_help.c:754 sql_help.c:2604 msgid "join_proc" msgstr "proc_join" -#: sql_help.c:755 sql_help.c:2587 +#: sql_help.c:755 sql_help.c:2601 msgid "com_op" msgstr "op_conm" -#: sql_help.c:756 sql_help.c:2588 +#: sql_help.c:756 sql_help.c:2602 msgid "neg_op" msgstr "op_neg" -#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2621 msgid "strategy_number" msgstr "número_de_estrategia" #: sql_help.c:810 sql_help.c:811 sql_help.c:814 sql_help.c:815 sql_help.c:821 -#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2609 sql_help.c:2610 -#: sql_help.c:2613 sql_help.c:2614 +#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2623 sql_help.c:2624 +#: sql_help.c:2627 sql_help.c:2628 msgid "op_type" msgstr "tipo_op" -#: sql_help.c:812 sql_help.c:2611 +#: sql_help.c:812 sql_help.c:2625 msgid "sort_family_name" msgstr "nombre_familia_ordenamiento" -#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2626 msgid "support_number" msgstr "número_de_soporte" -#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 -#: sql_help.c:3162 +#: sql_help.c:817 sql_help.c:2196 sql_help.c:2630 sql_help.c:3180 +#: sql_help.c:3182 msgid "argument_type" msgstr "tipo_argumento" -#: sql_help.c:848 sql_help.c:851 sql_help.c:940 sql_help.c:1069 sql_help.c:1110 -#: sql_help.c:1590 sql_help.c:1593 sql_help.c:1769 sql_help.c:1822 -#: sql_help.c:1893 sql_help.c:1918 sql_help.c:1931 sql_help.c:1946 -#: sql_help.c:2007 sql_help.c:2013 sql_help.c:2386 sql_help.c:2400 -#: sql_help.c:2523 sql_help.c:2563 sql_help.c:2640 sql_help.c:2694 -#: sql_help.c:2747 sql_help.c:2801 sql_help.c:2834 sql_help.c:2841 -#: sql_help.c:2951 sql_help.c:2969 sql_help.c:2982 sql_help.c:3066 -#: sql_help.c:3186 sql_help.c:3368 sql_help.c:3592 sql_help.c:3641 -#: sql_help.c:3747 sql_help.c:3957 sql_help.c:3963 sql_help.c:4024 -#: sql_help.c:4057 sql_help.c:4424 sql_help.c:4430 sql_help.c:4548 -#: sql_help.c:4661 sql_help.c:4724 sql_help.c:4763 sql_help.c:4919 -#: sql_help.c:4982 sql_help.c:5017 sql_help.c:5076 sql_help.c:5166 -#: sql_help.c:5229 +#: sql_help.c:848 sql_help.c:851 sql_help.c:952 sql_help.c:955 sql_help.c:1083 +#: sql_help.c:1124 sql_help.c:1604 sql_help.c:1607 sql_help.c:1783 +#: sql_help.c:1836 sql_help.c:1907 sql_help.c:1932 sql_help.c:1945 +#: sql_help.c:1960 sql_help.c:2021 sql_help.c:2027 sql_help.c:2400 +#: sql_help.c:2414 sql_help.c:2537 sql_help.c:2577 sql_help.c:2654 +#: sql_help.c:2715 sql_help.c:2767 sql_help.c:2821 sql_help.c:2854 +#: sql_help.c:2861 sql_help.c:2971 sql_help.c:2989 sql_help.c:3002 +#: sql_help.c:3086 sql_help.c:3206 sql_help.c:3388 sql_help.c:3612 +#: sql_help.c:3661 sql_help.c:3767 sql_help.c:3977 sql_help.c:3983 +#: sql_help.c:4044 sql_help.c:4077 sql_help.c:4444 sql_help.c:4450 +#: sql_help.c:4568 sql_help.c:4681 sql_help.c:4744 sql_help.c:4783 +#: sql_help.c:4939 sql_help.c:5002 sql_help.c:5037 sql_help.c:5096 +#: sql_help.c:5186 sql_help.c:5249 msgid "table_name" msgstr "nombre_de_tabla" -#: sql_help.c:853 sql_help.c:2642 +#: sql_help.c:853 sql_help.c:2656 msgid "using_expression" msgstr "expresión_using" -#: sql_help.c:854 sql_help.c:2643 +#: sql_help.c:854 sql_help.c:2657 msgid "check_expression" msgstr "expresión_check" -#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 +#: sql_help.c:936 sql_help.c:938 sql_help.c:2708 msgid "publication_object" msgstr "objeto_de_publicación" -#: sql_help.c:933 sql_help.c:2691 +#: sql_help.c:940 +msgid "publication_drop_object" +msgstr "objeto_drop_publicación" + +#: sql_help.c:942 sql_help.c:2709 msgid "publication_parameter" msgstr "parámetro_de_publicación" -#: sql_help.c:939 sql_help.c:2693 +#: sql_help.c:948 sql_help.c:2711 msgid "where publication_object is one of:" msgstr "donde objeto_de_publicación es uno de:" -#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 -#: sql_help.c:3301 +#: sql_help.c:949 sql_help.c:1777 sql_help.c:2712 sql_help.c:5080 +msgid "table_and_columns" +msgstr "tabla_y_columnas" + +#: sql_help.c:951 +msgid "and publication_drop_object is one of:" +msgstr "donde objeto_drop_publicación es uno de:" + +#: sql_help.c:954 sql_help.c:1782 sql_help.c:2714 sql_help.c:5095 +msgid "and table_and_columns is:" +msgstr "y tabla_y_columnas es:" + +#: sql_help.c:996 sql_help.c:1695 sql_help.c:2515 sql_help.c:2746 +#: sql_help.c:3321 msgid "password" msgstr "contraseña" -#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 -#: sql_help.c:3302 +#: sql_help.c:997 sql_help.c:1696 sql_help.c:2516 sql_help.c:2747 +#: sql_help.c:3322 msgid "timestamp" msgstr "fecha_hora" -#: sql_help.c:987 sql_help.c:991 sql_help.c:994 sql_help.c:997 sql_help.c:1686 -#: sql_help.c:1690 sql_help.c:1693 sql_help.c:1696 sql_help.c:3970 -#: sql_help.c:4437 +#: sql_help.c:1001 sql_help.c:1005 sql_help.c:1008 sql_help.c:1011 +#: sql_help.c:1700 sql_help.c:1704 sql_help.c:1707 sql_help.c:1710 +#: sql_help.c:3990 sql_help.c:4457 msgid "database_name" msgstr "nombre_de_base_de_datos" -#: sql_help.c:1104 sql_help.c:2796 +#: sql_help.c:1118 sql_help.c:2816 msgid "increment" msgstr "incremento" -#: sql_help.c:1105 sql_help.c:2797 +#: sql_help.c:1119 sql_help.c:2817 msgid "minvalue" msgstr "valormin" -#: sql_help.c:1106 sql_help.c:2798 +#: sql_help.c:1120 sql_help.c:2818 msgid "maxvalue" msgstr "valormax" -#: sql_help.c:1107 sql_help.c:2799 sql_help.c:4657 sql_help.c:4761 -#: sql_help.c:4915 sql_help.c:5093 sql_help.c:5162 +#: sql_help.c:1121 sql_help.c:2819 sql_help.c:4677 sql_help.c:4781 +#: sql_help.c:4935 sql_help.c:5113 sql_help.c:5182 msgid "start" msgstr "inicio" -#: sql_help.c:1108 sql_help.c:1382 +#: sql_help.c:1122 sql_help.c:1396 msgid "restart" msgstr "reinicio" -#: sql_help.c:1109 sql_help.c:2800 +#: sql_help.c:1123 sql_help.c:2820 msgid "cache" msgstr "cache" -#: sql_help.c:1154 +#: sql_help.c:1168 msgid "new_target" msgstr "nuevo_valor" -#: sql_help.c:1173 sql_help.c:2853 +#: sql_help.c:1187 sql_help.c:2873 msgid "conninfo" msgstr "conninfo" -#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 +#: sql_help.c:1189 sql_help.c:1193 sql_help.c:1197 sql_help.c:2874 msgid "publication_name" msgstr "nombre_de_publicación" -#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 +#: sql_help.c:1190 sql_help.c:1194 sql_help.c:1198 msgid "publication_option" msgstr "opción_de_publicación" -#: sql_help.c:1187 +#: sql_help.c:1201 msgid "refresh_option" msgstr "opción_refresh" -#: sql_help.c:1192 sql_help.c:2855 +#: sql_help.c:1206 sql_help.c:2875 msgid "subscription_parameter" msgstr "parámetro_de_suscripción" -#: sql_help.c:1195 +#: sql_help.c:1209 msgid "skip_option" msgstr "opción_skip" -#: sql_help.c:1357 sql_help.c:1360 +#: sql_help.c:1371 sql_help.c:1374 msgid "partition_name" msgstr "nombre_de_partición" -#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 +#: sql_help.c:1372 sql_help.c:2419 sql_help.c:3007 msgid "partition_bound_spec" msgstr "borde_de_partición" -#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 +#: sql_help.c:1393 sql_help.c:1444 sql_help.c:3021 msgid "sequence_options" msgstr "opciones_de_secuencia" -#: sql_help.c:1381 +#: sql_help.c:1395 msgid "sequence_option" msgstr "opción_de_secuencia" -#: sql_help.c:1395 +#: sql_help.c:1409 msgid "table_constraint_using_index" msgstr "restricción_de_tabla_con_índice" -#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 +#: sql_help.c:1418 sql_help.c:1419 sql_help.c:1420 sql_help.c:1421 msgid "rewrite_rule_name" msgstr "nombre_regla_de_reescritura" -#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 +#: sql_help.c:1433 sql_help.c:2433 sql_help.c:3051 msgid "and partition_bound_spec is:" msgstr "y borde_de_partición es:" -#: sql_help.c:1420 sql_help.c:1421 sql_help.c:1422 sql_help.c:2420 -#: sql_help.c:2421 sql_help.c:2422 sql_help.c:3032 sql_help.c:3033 -#: sql_help.c:3034 +#: sql_help.c:1434 sql_help.c:1435 sql_help.c:1436 sql_help.c:2434 +#: sql_help.c:2435 sql_help.c:2436 sql_help.c:3052 sql_help.c:3053 +#: sql_help.c:3054 msgid "partition_bound_expr" msgstr "expresión_de_borde_de_partición" -#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 -#: sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:1437 sql_help.c:1438 sql_help.c:2437 sql_help.c:2438 +#: sql_help.c:3055 sql_help.c:3056 msgid "numeric_literal" msgstr "literal_numérico" -#: sql_help.c:1425 +#: sql_help.c:1439 msgid "and column_constraint is:" msgstr "donde restricción_de_columna es:" -#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 -#: sql_help.c:2999 +#: sql_help.c:1442 sql_help.c:2426 sql_help.c:2469 sql_help.c:2678 +#: sql_help.c:3019 msgid "default_expr" msgstr "expr_por_omisión" -#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 +#: sql_help.c:1443 sql_help.c:2427 sql_help.c:3020 msgid "generation_expr" msgstr "expr_de_generación" -#: sql_help.c:1431 sql_help.c:1432 sql_help.c:1443 sql_help.c:1446 -#: sql_help.c:1450 sql_help.c:3002 sql_help.c:3003 sql_help.c:3014 -#: sql_help.c:3017 sql_help.c:3021 +#: sql_help.c:1445 sql_help.c:1446 sql_help.c:1457 sql_help.c:1460 +#: sql_help.c:1464 sql_help.c:3022 sql_help.c:3023 sql_help.c:3034 +#: sql_help.c:3037 sql_help.c:3041 msgid "index_parameters" msgstr "parámetros_de_índice" -#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 +#: sql_help.c:1447 sql_help.c:1468 sql_help.c:3024 sql_help.c:3045 msgid "reftable" msgstr "tabla_ref" -#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 -#: sql_help.c:3026 sql_help.c:3027 +#: sql_help.c:1448 sql_help.c:1469 sql_help.c:1470 sql_help.c:3025 +#: sql_help.c:3046 sql_help.c:3047 msgid "refcolumn" msgstr "columna_ref" -#: sql_help.c:1435 sql_help.c:1436 sql_help.c:1457 sql_help.c:1458 -#: sql_help.c:3006 sql_help.c:3007 sql_help.c:3028 sql_help.c:3029 +#: sql_help.c:1449 sql_help.c:1450 sql_help.c:1471 sql_help.c:1472 +#: sql_help.c:3026 sql_help.c:3027 sql_help.c:3048 sql_help.c:3049 msgid "referential_action" msgstr "acción_referencial" -#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 +#: sql_help.c:1451 sql_help.c:2428 sql_help.c:3028 msgid "and table_constraint is:" msgstr "y restricción_de_tabla es:" -#: sql_help.c:1448 sql_help.c:3019 +#: sql_help.c:1462 sql_help.c:3039 msgid "exclude_element" msgstr "elemento_de_exclusión" -#: sql_help.c:1449 sql_help.c:3020 sql_help.c:4655 sql_help.c:4759 -#: sql_help.c:4913 sql_help.c:5091 sql_help.c:5160 +#: sql_help.c:1463 sql_help.c:3040 sql_help.c:4675 sql_help.c:4779 +#: sql_help.c:4933 sql_help.c:5111 sql_help.c:5180 msgid "operator" msgstr "operador" -#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 +#: sql_help.c:1465 sql_help.c:2549 sql_help.c:3042 msgid "predicate" msgstr "predicado" -#: sql_help.c:1459 +#: sql_help.c:1473 msgid "and table_constraint_using_index is:" msgstr "y restricción_de_tabla_con_índice es:" -#: sql_help.c:1462 sql_help.c:3037 +#: sql_help.c:1476 sql_help.c:3057 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "parámetros_de_índice en UNIQUE, PRIMARY KEY y EXCLUDE son:" -#: sql_help.c:1467 sql_help.c:3042 +#: sql_help.c:1481 sql_help.c:3062 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "elemento_de_exclusión en una restricción EXCLUDE es:" -#: sql_help.c:1471 sql_help.c:2528 sql_help.c:2964 sql_help.c:2977 -#: sql_help.c:2991 sql_help.c:3046 sql_help.c:4071 +#: sql_help.c:1485 sql_help.c:2542 sql_help.c:2984 sql_help.c:2997 +#: sql_help.c:3011 sql_help.c:3066 sql_help.c:4091 msgid "opclass" msgstr "clase_de_ops" -#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 +#: sql_help.c:1486 sql_help.c:2543 sql_help.c:3067 msgid "opclass_parameter" msgstr "parámetro_opclass" -#: sql_help.c:1474 sql_help.c:3049 +#: sql_help.c:1488 sql_help.c:3069 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "acción_referencial en una restricción FOREIGN KEY/REFERENCES es:" -#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 +#: sql_help.c:1506 sql_help.c:1509 sql_help.c:3106 msgid "tablespace_option" msgstr "opción_de_tablespace" -#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 +#: sql_help.c:1530 sql_help.c:1533 sql_help.c:1539 sql_help.c:1543 msgid "token_type" msgstr "tipo_de_token" -#: sql_help.c:1517 sql_help.c:1520 +#: sql_help.c:1531 sql_help.c:1534 msgid "dictionary_name" msgstr "nombre_diccionario" -#: sql_help.c:1522 sql_help.c:1526 +#: sql_help.c:1536 sql_help.c:1540 msgid "old_dictionary" msgstr "diccionario_antiguo" -#: sql_help.c:1523 sql_help.c:1527 +#: sql_help.c:1537 sql_help.c:1541 msgid "new_dictionary" msgstr "diccionario_nuevo" -#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 -#: sql_help.c:3239 +#: sql_help.c:1636 sql_help.c:1650 sql_help.c:1653 sql_help.c:1654 +#: sql_help.c:3259 msgid "attribute_name" msgstr "nombre_atributo" -#: sql_help.c:1623 +#: sql_help.c:1637 msgid "new_attribute_name" msgstr "nuevo_nombre_atributo" -#: sql_help.c:1627 sql_help.c:1631 +#: sql_help.c:1641 sql_help.c:1645 msgid "new_enum_value" msgstr "nuevo_valor_enum" -#: sql_help.c:1628 +#: sql_help.c:1642 msgid "neighbor_enum_value" msgstr "valor_enum_vecino" -#: sql_help.c:1630 +#: sql_help.c:1644 msgid "existing_enum_value" msgstr "valor_enum_existente" -#: sql_help.c:1633 +#: sql_help.c:1647 msgid "property" msgstr "propiedad" -#: sql_help.c:1709 sql_help.c:2397 sql_help.c:2406 sql_help.c:2812 -#: sql_help.c:3319 sql_help.c:3772 sql_help.c:3979 sql_help.c:4025 -#: sql_help.c:4446 +#: sql_help.c:1723 sql_help.c:2411 sql_help.c:2420 sql_help.c:2832 +#: sql_help.c:3339 sql_help.c:3792 sql_help.c:3999 sql_help.c:4045 +#: sql_help.c:4466 msgid "server_name" msgstr "nombre_de_servidor" -#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 +#: sql_help.c:1755 sql_help.c:1758 sql_help.c:3354 msgid "view_option_name" msgstr "nombre_opción_de_vista" -#: sql_help.c:1742 sql_help.c:3335 +#: sql_help.c:1756 sql_help.c:3355 msgid "view_option_value" msgstr "valor_opción_de_vista" -#: sql_help.c:1763 sql_help.c:5060 -msgid "table_and_columns" -msgstr "tabla_y_columnas" - -#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 -#: sql_help.c:4281 sql_help.c:5061 +#: sql_help.c:1778 sql_help.c:1838 sql_help.c:2033 sql_help.c:3841 +#: sql_help.c:4301 sql_help.c:5081 msgid "where option can be one of:" msgstr "donde opción puede ser una de:" -#: sql_help.c:1765 sql_help.c:1766 sql_help.c:1825 sql_help.c:2021 -#: sql_help.c:2025 sql_help.c:2208 sql_help.c:3822 sql_help.c:3823 -#: sql_help.c:3824 sql_help.c:3825 sql_help.c:3826 sql_help.c:3827 -#: sql_help.c:3828 sql_help.c:3829 sql_help.c:3830 sql_help.c:3831 -#: sql_help.c:4282 sql_help.c:4284 sql_help.c:5062 sql_help.c:5063 -#: sql_help.c:5064 sql_help.c:5065 sql_help.c:5066 sql_help.c:5067 -#: sql_help.c:5068 sql_help.c:5069 sql_help.c:5070 sql_help.c:5072 -#: sql_help.c:5073 +#: sql_help.c:1779 sql_help.c:1780 sql_help.c:1839 sql_help.c:2035 +#: sql_help.c:2039 sql_help.c:2222 sql_help.c:3842 sql_help.c:3843 +#: sql_help.c:3844 sql_help.c:3845 sql_help.c:3846 sql_help.c:3847 +#: sql_help.c:3848 sql_help.c:3849 sql_help.c:3850 sql_help.c:3851 +#: sql_help.c:4302 sql_help.c:4304 sql_help.c:5082 sql_help.c:5083 +#: sql_help.c:5084 sql_help.c:5085 sql_help.c:5086 sql_help.c:5087 +#: sql_help.c:5088 sql_help.c:5089 sql_help.c:5090 sql_help.c:5092 +#: sql_help.c:5093 msgid "boolean" msgstr "booleano" -#: sql_help.c:1767 sql_help.c:5074 +#: sql_help.c:1781 sql_help.c:5094 msgid "size" msgstr "tamaño" -#: sql_help.c:1768 sql_help.c:5075 -msgid "and table_and_columns is:" -msgstr "y tabla_y_columnas es:" - -#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 +#: sql_help.c:1798 sql_help.c:4840 sql_help.c:4842 sql_help.c:4866 msgid "transaction_mode" msgstr "modo_de_transacción" -#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 +#: sql_help.c:1799 sql_help.c:4843 sql_help.c:4867 msgid "where transaction_mode is one of:" msgstr "donde modo_de_transacción es uno de:" -#: sql_help.c:1794 sql_help.c:4665 sql_help.c:4674 sql_help.c:4678 -#: sql_help.c:4682 sql_help.c:4685 sql_help.c:4923 sql_help.c:4932 -#: sql_help.c:4936 sql_help.c:4940 sql_help.c:4943 sql_help.c:5170 -#: sql_help.c:5179 sql_help.c:5183 sql_help.c:5187 sql_help.c:5190 +#: sql_help.c:1808 sql_help.c:4685 sql_help.c:4694 sql_help.c:4698 +#: sql_help.c:4702 sql_help.c:4705 sql_help.c:4943 sql_help.c:4952 +#: sql_help.c:4956 sql_help.c:4960 sql_help.c:4963 sql_help.c:5190 +#: sql_help.c:5199 sql_help.c:5203 sql_help.c:5207 sql_help.c:5210 msgid "argument" msgstr "argumento" -#: sql_help.c:1890 +#: sql_help.c:1904 msgid "relation_name" msgstr "nombre_relación" -#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 +#: sql_help.c:1909 sql_help.c:3993 sql_help.c:4460 msgid "domain_name" msgstr "nombre_de_dominio" -#: sql_help.c:1917 +#: sql_help.c:1931 msgid "policy_name" msgstr "nombre_de_política" -#: sql_help.c:1930 +#: sql_help.c:1944 msgid "rule_name" msgstr "nombre_regla" -#: sql_help.c:1949 sql_help.c:4579 +#: sql_help.c:1963 sql_help.c:4599 msgid "string_literal" msgstr "literal_de_cadena" -#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 +#: sql_help.c:1988 sql_help.c:4263 sql_help.c:4513 msgid "transaction_id" msgstr "id_de_transacción" -#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 +#: sql_help.c:2023 sql_help.c:2030 sql_help.c:4117 msgid "filename" msgstr "nombre_de_archivo" -#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 -#: sql_help.c:2751 +#: sql_help.c:2024 sql_help.c:2031 sql_help.c:2769 sql_help.c:2770 +#: sql_help.c:2771 msgid "command" msgstr "orden" -#: sql_help.c:2012 sql_help.c:2748 sql_help.c:3189 sql_help.c:3371 -#: sql_help.c:4081 sql_help.c:4166 sql_help.c:4169 sql_help.c:4172 -#: sql_help.c:4648 sql_help.c:4650 sql_help.c:4752 sql_help.c:4754 -#: sql_help.c:4906 sql_help.c:4908 sql_help.c:5026 sql_help.c:5153 -#: sql_help.c:5155 +#: sql_help.c:2026 sql_help.c:2768 sql_help.c:3209 sql_help.c:3391 +#: sql_help.c:4101 sql_help.c:4186 sql_help.c:4189 sql_help.c:4192 +#: sql_help.c:4668 sql_help.c:4670 sql_help.c:4772 sql_help.c:4774 +#: sql_help.c:4926 sql_help.c:4928 sql_help.c:5046 sql_help.c:5173 +#: sql_help.c:5175 msgid "condition" msgstr "condición" -#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 -#: sql_help.c:3354 sql_help.c:4061 +#: sql_help.c:2029 sql_help.c:2583 sql_help.c:3092 sql_help.c:3356 +#: sql_help.c:3374 sql_help.c:4081 msgid "query" msgstr "consulta" -#: sql_help.c:2020 +#: sql_help.c:2034 msgid "format_name" msgstr "nombre_de_formato" -#: sql_help.c:2022 +#: sql_help.c:2036 msgid "delimiter_character" msgstr "carácter_delimitador" -#: sql_help.c:2023 +#: sql_help.c:2037 msgid "null_string" msgstr "cadena_null" -#: sql_help.c:2024 +#: sql_help.c:2038 msgid "default_string" msgstr "cadena_por_omisión" -#: sql_help.c:2026 +#: sql_help.c:2040 msgid "quote_character" msgstr "carácter_de_comilla" -#: sql_help.c:2027 +#: sql_help.c:2041 msgid "escape_character" msgstr "carácter_de_escape" -#: sql_help.c:2031 +#: sql_help.c:2045 msgid "error_action" msgstr "acción_en_error" -#: sql_help.c:2032 +#: sql_help.c:2046 msgid "maxerror" msgstr "máx.error" -#: sql_help.c:2033 +#: sql_help.c:2047 msgid "encoding_name" msgstr "nombre_codificación" -#: sql_help.c:2034 +#: sql_help.c:2048 msgid "verbosity" msgstr "verbosidad" -#: sql_help.c:2045 +#: sql_help.c:2059 msgid "access_method_type" msgstr "tipo_de_método_de_acceso" -#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 +#: sql_help.c:2130 sql_help.c:2149 sql_help.c:2152 msgid "arg_data_type" msgstr "tipo_de_dato_arg" -#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 +#: sql_help.c:2131 sql_help.c:2153 sql_help.c:2161 msgid "sfunc" msgstr "func_transición" -#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 +#: sql_help.c:2132 sql_help.c:2154 sql_help.c:2162 msgid "state_data_type" msgstr "tipo_de_dato_de_estado" -#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 +#: sql_help.c:2133 sql_help.c:2155 sql_help.c:2163 msgid "state_data_size" msgstr "tamaño_de_dato_de_estado" -#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 +#: sql_help.c:2134 sql_help.c:2156 sql_help.c:2164 msgid "ffunc" msgstr "func_final" -#: sql_help.c:2121 sql_help.c:2151 +#: sql_help.c:2135 sql_help.c:2165 msgid "combinefunc" msgstr "func_combinación" -#: sql_help.c:2122 sql_help.c:2152 +#: sql_help.c:2136 sql_help.c:2166 msgid "serialfunc" msgstr "func_serial" -#: sql_help.c:2123 sql_help.c:2153 +#: sql_help.c:2137 sql_help.c:2167 msgid "deserialfunc" msgstr "func_deserial" -#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 +#: sql_help.c:2138 sql_help.c:2157 sql_help.c:2168 msgid "initial_condition" msgstr "condición_inicial" -#: sql_help.c:2125 sql_help.c:2155 +#: sql_help.c:2139 sql_help.c:2169 msgid "msfunc" msgstr "func_transición_m" -#: sql_help.c:2126 sql_help.c:2156 +#: sql_help.c:2140 sql_help.c:2170 msgid "minvfunc" msgstr "func_inv_m" -#: sql_help.c:2127 sql_help.c:2157 +#: sql_help.c:2141 sql_help.c:2171 msgid "mstate_data_type" msgstr "tipo_de_dato_de_estado_m" -#: sql_help.c:2128 sql_help.c:2158 +#: sql_help.c:2142 sql_help.c:2172 msgid "mstate_data_size" msgstr "tamaño_de_dato_de_estado_m" -#: sql_help.c:2129 sql_help.c:2159 +#: sql_help.c:2143 sql_help.c:2173 msgid "mffunc" msgstr "func_final_m" -#: sql_help.c:2130 sql_help.c:2160 +#: sql_help.c:2144 sql_help.c:2174 msgid "minitial_condition" msgstr "condición_inicial_m" -#: sql_help.c:2131 sql_help.c:2161 +#: sql_help.c:2145 sql_help.c:2175 msgid "sort_operator" msgstr "operador_de_ordenamiento" -#: sql_help.c:2144 +#: sql_help.c:2158 msgid "or the old syntax" msgstr "o la sintaxis antigua" -#: sql_help.c:2146 +#: sql_help.c:2160 msgid "base_type" msgstr "tipo_base" -#: sql_help.c:2204 sql_help.c:2254 +#: sql_help.c:2218 sql_help.c:2268 msgid "locale" msgstr "configuración regional" -#: sql_help.c:2205 sql_help.c:2255 +#: sql_help.c:2219 sql_help.c:2269 msgid "lc_collate" msgstr "lc_collate" -#: sql_help.c:2206 sql_help.c:2256 +#: sql_help.c:2220 sql_help.c:2270 msgid "lc_ctype" msgstr "lc_ctype" -#: sql_help.c:2207 sql_help.c:4546 +#: sql_help.c:2221 sql_help.c:4566 msgid "provider" msgstr "proveedor" -#: sql_help.c:2209 +#: sql_help.c:2223 msgid "rules" msgstr "reglas" -#: sql_help.c:2210 sql_help.c:2317 +#: sql_help.c:2224 sql_help.c:2331 msgid "version" msgstr "versión" -#: sql_help.c:2212 +#: sql_help.c:2226 msgid "existing_collation" msgstr "ordenamiento_existente" -#: sql_help.c:2222 +#: sql_help.c:2236 msgid "source_encoding" msgstr "codificación_origen" -#: sql_help.c:2223 +#: sql_help.c:2237 msgid "dest_encoding" msgstr "codificación_destino" -#: sql_help.c:2251 sql_help.c:3112 +#: sql_help.c:2265 sql_help.c:3132 msgid "template" msgstr "plantilla" -#: sql_help.c:2252 +#: sql_help.c:2266 msgid "encoding" msgstr "codificación" -#: sql_help.c:2253 +#: sql_help.c:2267 msgid "strategy" msgstr "estrategia" -#: sql_help.c:2257 +#: sql_help.c:2271 msgid "builtin_locale" msgstr "locale_builtin" -#: sql_help.c:2258 +#: sql_help.c:2272 msgid "icu_locale" msgstr "locale_icu" -#: sql_help.c:2259 +#: sql_help.c:2273 msgid "icu_rules" msgstr "reglas_icu" -#: sql_help.c:2260 +#: sql_help.c:2274 msgid "locale_provider" msgstr "proveedor_locale" -#: sql_help.c:2261 +#: sql_help.c:2275 msgid "collation_version" msgstr "versión_ordenamiento" -#: sql_help.c:2266 +#: sql_help.c:2280 msgid "oid" msgstr "oid" -#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 +#: sql_help.c:2315 sql_help.c:2766 sql_help.c:3205 msgid "event" msgstr "evento" -#: sql_help.c:2302 +#: sql_help.c:2316 msgid "filter_variable" msgstr "variable_de_filtrado" -#: sql_help.c:2303 +#: sql_help.c:2317 msgid "filter_value" msgstr "valor_de_filtrado" -#: sql_help.c:2394 sql_help.c:2958 +#: sql_help.c:2408 sql_help.c:2978 msgid "source_table" msgstr "tabla_origen" -#: sql_help.c:2395 sql_help.c:2959 +#: sql_help.c:2409 sql_help.c:2979 msgid "like_option" msgstr "opción_de_like" -#: sql_help.c:2409 sql_help.c:2996 +#: sql_help.c:2423 sql_help.c:3016 msgid "where column_constraint is:" msgstr "donde restricción_de_columna es:" -#: sql_help.c:2418 sql_help.c:3030 +#: sql_help.c:2432 sql_help.c:3050 msgid "and like_option is:" msgstr "y opción_de_like es:" -#: sql_help.c:2456 +#: sql_help.c:2470 msgid "rettype" msgstr "tipo_ret" -#: sql_help.c:2458 +#: sql_help.c:2472 msgid "column_type" msgstr "tipo_columna" -#: sql_help.c:2467 sql_help.c:2670 +#: sql_help.c:2481 sql_help.c:2684 msgid "definition" msgstr "definición" -#: sql_help.c:2468 sql_help.c:2671 +#: sql_help.c:2482 sql_help.c:2685 msgid "obj_file" msgstr "archivo_obj" -#: sql_help.c:2469 sql_help.c:2672 +#: sql_help.c:2483 sql_help.c:2686 msgid "link_symbol" msgstr "símbolo_enlace" -#: sql_help.c:2470 sql_help.c:2673 +#: sql_help.c:2484 sql_help.c:2687 msgid "sql_body" msgstr "contenido_sql" -#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 +#: sql_help.c:2522 sql_help.c:2751 sql_help.c:3328 msgid "uid" msgstr "uid" -#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 -#: sql_help.c:2992 sql_help.c:3068 +#: sql_help.c:2538 sql_help.c:2579 sql_help.c:2985 sql_help.c:2998 +#: sql_help.c:3012 sql_help.c:3088 msgid "method" msgstr "método" -#: sql_help.c:2546 +#: sql_help.c:2560 msgid "call_handler" msgstr "manejador_de_llamada" -#: sql_help.c:2547 +#: sql_help.c:2561 msgid "inline_handler" msgstr "manejador_en_línea" -#: sql_help.c:2548 +#: sql_help.c:2562 msgid "valfunction" msgstr "función_val" -#: sql_help.c:2606 +#: sql_help.c:2620 msgid "family_name" msgstr "nombre_familia" -#: sql_help.c:2617 +#: sql_help.c:2631 msgid "storage_type" msgstr "tipo_almacenamiento" -#: sql_help.c:2752 sql_help.c:3192 +#: sql_help.c:2772 sql_help.c:3212 msgid "where event can be one of:" msgstr "donde evento puede ser una de:" -#: sql_help.c:2772 sql_help.c:2774 +#: sql_help.c:2792 sql_help.c:2794 msgid "schema_element" msgstr "elemento_de_esquema" -#: sql_help.c:2813 +#: sql_help.c:2833 msgid "server_type" msgstr "tipo_de_servidor" -#: sql_help.c:2814 +#: sql_help.c:2834 msgid "server_version" msgstr "versión_de_servidor" -#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 +#: sql_help.c:2835 sql_help.c:3996 sql_help.c:4463 msgid "fdw_name" msgstr "nombre_fdw" -#: sql_help.c:2832 sql_help.c:2835 +#: sql_help.c:2852 sql_help.c:2855 msgid "statistics_name" msgstr "nombre_de_estadística" -#: sql_help.c:2836 +#: sql_help.c:2856 msgid "statistics_kind" msgstr "tipo_de_estadística" -#: sql_help.c:2852 +#: sql_help.c:2872 msgid "subscription_name" msgstr "nombre_de_suscripción" -#: sql_help.c:3085 +#: sql_help.c:3105 msgid "directory" msgstr "directorio" -#: sql_help.c:3099 +#: sql_help.c:3119 msgid "parser_name" msgstr "nombre_de_parser" -#: sql_help.c:3100 +#: sql_help.c:3120 msgid "source_config" msgstr "config_origen" -#: sql_help.c:3129 +#: sql_help.c:3149 msgid "start_function" msgstr "función_inicio" -#: sql_help.c:3130 +#: sql_help.c:3150 msgid "gettoken_function" msgstr "función_gettoken" -#: sql_help.c:3131 +#: sql_help.c:3151 msgid "end_function" msgstr "función_fin" -#: sql_help.c:3132 +#: sql_help.c:3152 msgid "lextypes_function" msgstr "función_lextypes" -#: sql_help.c:3133 +#: sql_help.c:3153 msgid "headline_function" msgstr "función_headline" -#: sql_help.c:3145 +#: sql_help.c:3165 msgid "init_function" msgstr "función_init" -#: sql_help.c:3146 +#: sql_help.c:3166 msgid "lexize_function" msgstr "función_lexize" -#: sql_help.c:3159 +#: sql_help.c:3179 msgid "from_sql_function_name" msgstr "nombre_de_función_from" -#: sql_help.c:3161 +#: sql_help.c:3181 msgid "to_sql_function_name" msgstr "nombre_de_función_to" -#: sql_help.c:3187 +#: sql_help.c:3207 msgid "referenced_table_name" msgstr "nombre_tabla_referenciada" -#: sql_help.c:3188 +#: sql_help.c:3208 msgid "transition_relation_name" msgstr "nombre_de_relación_de_transición" -#: sql_help.c:3191 +#: sql_help.c:3211 msgid "arguments" msgstr "argumentos" -#: sql_help.c:3243 +#: sql_help.c:3263 msgid "label" msgstr "etiqueta" -#: sql_help.c:3245 +#: sql_help.c:3265 msgid "subtype" msgstr "subtipo" -#: sql_help.c:3246 +#: sql_help.c:3266 msgid "subtype_operator_class" msgstr "clase_de_operador_del_subtipo" -#: sql_help.c:3248 +#: sql_help.c:3268 msgid "canonical_function" msgstr "función_canónica" -#: sql_help.c:3249 +#: sql_help.c:3269 msgid "subtype_diff_function" msgstr "función_diff_del_subtipo" -#: sql_help.c:3250 +#: sql_help.c:3270 msgid "multirange_type_name" msgstr "nombre_de_tipo_de_multirango" -#: sql_help.c:3252 +#: sql_help.c:3272 msgid "input_function" msgstr "función_entrada" -#: sql_help.c:3253 +#: sql_help.c:3273 msgid "output_function" msgstr "función_salida" -#: sql_help.c:3254 +#: sql_help.c:3274 msgid "receive_function" msgstr "función_receive" -#: sql_help.c:3255 +#: sql_help.c:3275 msgid "send_function" msgstr "función_send" -#: sql_help.c:3256 +#: sql_help.c:3276 msgid "type_modifier_input_function" msgstr "función_entrada_del_modificador_de_tipo" -#: sql_help.c:3257 +#: sql_help.c:3277 msgid "type_modifier_output_function" msgstr "función_salida_del_modificador_de_tipo" -#: sql_help.c:3258 +#: sql_help.c:3278 msgid "analyze_function" msgstr "función_analyze" -#: sql_help.c:3259 +#: sql_help.c:3279 msgid "subscript_function" msgstr "función_de_subíndice" -#: sql_help.c:3260 +#: sql_help.c:3280 msgid "internallength" msgstr "largo_interno" -#: sql_help.c:3261 +#: sql_help.c:3281 msgid "alignment" msgstr "alineamiento" -#: sql_help.c:3262 +#: sql_help.c:3282 msgid "storage" msgstr "almacenamiento" -#: sql_help.c:3263 +#: sql_help.c:3283 msgid "like_type" msgstr "como_tipo" -#: sql_help.c:3264 +#: sql_help.c:3284 msgid "category" msgstr "categoría" -#: sql_help.c:3265 +#: sql_help.c:3285 msgid "preferred" msgstr "preferido" -#: sql_help.c:3266 +#: sql_help.c:3286 msgid "default" msgstr "valor_por_omisión" -#: sql_help.c:3267 +#: sql_help.c:3287 msgid "element" msgstr "elemento" -#: sql_help.c:3268 +#: sql_help.c:3288 msgid "delimiter" msgstr "delimitador" -#: sql_help.c:3269 +#: sql_help.c:3289 msgid "collatable" msgstr "ordenable" -#: sql_help.c:3367 sql_help.c:4056 sql_help.c:4152 sql_help.c:4643 -#: sql_help.c:4746 sql_help.c:4901 sql_help.c:5016 sql_help.c:5148 +#: sql_help.c:3387 sql_help.c:4076 sql_help.c:4172 sql_help.c:4663 +#: sql_help.c:4766 sql_help.c:4921 sql_help.c:5036 sql_help.c:5168 msgid "with_query" msgstr "consulta_with" -#: sql_help.c:3369 sql_help.c:4058 sql_help.c:4662 sql_help.c:4668 -#: sql_help.c:4671 sql_help.c:4675 sql_help.c:4679 sql_help.c:4687 -#: sql_help.c:4920 sql_help.c:4926 sql_help.c:4929 sql_help.c:4933 -#: sql_help.c:4937 sql_help.c:4945 sql_help.c:5018 sql_help.c:5167 -#: sql_help.c:5173 sql_help.c:5176 sql_help.c:5180 sql_help.c:5184 -#: sql_help.c:5192 +#: sql_help.c:3389 sql_help.c:4078 sql_help.c:4682 sql_help.c:4688 +#: sql_help.c:4691 sql_help.c:4695 sql_help.c:4699 sql_help.c:4707 +#: sql_help.c:4940 sql_help.c:4946 sql_help.c:4949 sql_help.c:4953 +#: sql_help.c:4957 sql_help.c:4965 sql_help.c:5038 sql_help.c:5187 +#: sql_help.c:5193 sql_help.c:5196 sql_help.c:5200 sql_help.c:5204 +#: sql_help.c:5212 msgid "alias" msgstr "alias" -#: sql_help.c:3370 sql_help.c:4647 sql_help.c:4689 sql_help.c:4691 -#: sql_help.c:4695 sql_help.c:4697 sql_help.c:4698 sql_help.c:4699 -#: sql_help.c:4751 sql_help.c:4905 sql_help.c:4947 sql_help.c:4949 -#: sql_help.c:4953 sql_help.c:4955 sql_help.c:4956 sql_help.c:4957 -#: sql_help.c:5025 sql_help.c:5152 sql_help.c:5194 sql_help.c:5196 -#: sql_help.c:5200 sql_help.c:5202 sql_help.c:5203 sql_help.c:5204 +#: sql_help.c:3390 sql_help.c:4667 sql_help.c:4709 sql_help.c:4711 +#: sql_help.c:4715 sql_help.c:4717 sql_help.c:4718 sql_help.c:4719 +#: sql_help.c:4771 sql_help.c:4925 sql_help.c:4967 sql_help.c:4969 +#: sql_help.c:4973 sql_help.c:4975 sql_help.c:4976 sql_help.c:4977 +#: sql_help.c:5045 sql_help.c:5172 sql_help.c:5214 sql_help.c:5216 +#: sql_help.c:5220 sql_help.c:5222 sql_help.c:5223 sql_help.c:5224 msgid "from_item" msgstr "item_de_from" -#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 +#: sql_help.c:3392 sql_help.c:3877 sql_help.c:4230 sql_help.c:5047 msgid "cursor_name" msgstr "nombre_de_cursor" -#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +#: sql_help.c:3393 sql_help.c:4084 sql_help.c:4178 sql_help.c:5048 msgid "output_alias" msgstr "alias_de_salida" -#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 +#: sql_help.c:3394 sql_help.c:4085 sql_help.c:4179 sql_help.c:5049 msgid "output_expression" msgstr "expresión_de_salida" -#: sql_help.c:3375 sql_help.c:4066 sql_help.c:4160 sql_help.c:4646 -#: sql_help.c:4749 sql_help.c:4904 sql_help.c:5030 sql_help.c:5151 +#: sql_help.c:3395 sql_help.c:4086 sql_help.c:4180 sql_help.c:4666 +#: sql_help.c:4769 sql_help.c:4924 sql_help.c:5050 sql_help.c:5171 msgid "output_name" msgstr "nombre_de_salida" -#: sql_help.c:3391 +#: sql_help.c:3411 msgid "code" msgstr "código" -#: sql_help.c:3796 +#: sql_help.c:3816 msgid "parameter" msgstr "parámetro" -#: sql_help.c:3820 sql_help.c:4235 +#: sql_help.c:3840 sql_help.c:4255 msgid "statement" msgstr "sentencia" -#: sql_help.c:3856 sql_help.c:4209 +#: sql_help.c:3876 sql_help.c:4229 msgid "direction" msgstr "dirección" -#: sql_help.c:3858 sql_help.c:4211 +#: sql_help.c:3878 sql_help.c:4231 msgid "where direction can be one of:" msgstr "donde dirección puede ser una de:" -#: sql_help.c:3859 sql_help.c:3860 sql_help.c:3861 sql_help.c:3862 -#: sql_help.c:3863 sql_help.c:4212 sql_help.c:4213 sql_help.c:4214 -#: sql_help.c:4215 sql_help.c:4216 sql_help.c:4656 sql_help.c:4658 -#: sql_help.c:4760 sql_help.c:4762 sql_help.c:4914 sql_help.c:4916 -#: sql_help.c:5092 sql_help.c:5094 sql_help.c:5161 sql_help.c:5163 +#: sql_help.c:3879 sql_help.c:3880 sql_help.c:3881 sql_help.c:3882 +#: sql_help.c:3883 sql_help.c:4232 sql_help.c:4233 sql_help.c:4234 +#: sql_help.c:4235 sql_help.c:4236 sql_help.c:4676 sql_help.c:4678 +#: sql_help.c:4780 sql_help.c:4782 sql_help.c:4934 sql_help.c:4936 +#: sql_help.c:5112 sql_help.c:5114 sql_help.c:5181 sql_help.c:5183 msgid "count" msgstr "cantidad" -#: sql_help.c:3966 sql_help.c:4433 +#: sql_help.c:3986 sql_help.c:4453 msgid "sequence_name" msgstr "nombre_secuencia" -#: sql_help.c:3984 sql_help.c:4451 +#: sql_help.c:4004 sql_help.c:4471 msgid "arg_name" msgstr "nombre_arg" -#: sql_help.c:3985 sql_help.c:4452 +#: sql_help.c:4005 sql_help.c:4472 msgid "arg_type" msgstr "tipo_arg" -#: sql_help.c:3992 sql_help.c:4459 +#: sql_help.c:4012 sql_help.c:4479 msgid "loid" msgstr "loid" -#: sql_help.c:4023 +#: sql_help.c:4043 msgid "remote_schema" msgstr "esquema_remoto" -#: sql_help.c:4026 +#: sql_help.c:4046 msgid "local_schema" msgstr "esquema_local" -#: sql_help.c:4062 +#: sql_help.c:4082 msgid "conflict_target" msgstr "destino_de_conflict" -#: sql_help.c:4063 +#: sql_help.c:4083 msgid "conflict_action" msgstr "acción_de_conflict" -#: sql_help.c:4067 +#: sql_help.c:4087 msgid "where conflict_target can be one of:" msgstr "donde destino_de_conflict puede ser uno de:" -#: sql_help.c:4068 +#: sql_help.c:4088 msgid "index_column_name" msgstr "nombre_de_columna_de_índice" -#: sql_help.c:4069 +#: sql_help.c:4089 msgid "index_expression" msgstr "expresión_de_índice" -#: sql_help.c:4072 +#: sql_help.c:4092 msgid "index_predicate" msgstr "predicado_de_índice" -#: sql_help.c:4074 +#: sql_help.c:4094 msgid "and conflict_action is one of:" msgstr "donde acción_de_conflict es una de:" -#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 +#: sql_help.c:4100 sql_help.c:4203 sql_help.c:5044 msgid "sub-SELECT" msgstr "sub-SELECT" -#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 +#: sql_help.c:4109 sql_help.c:4244 sql_help.c:5019 msgid "channel" msgstr "canal" -#: sql_help.c:4111 +#: sql_help.c:4131 msgid "lockmode" msgstr "modo_bloqueo" -#: sql_help.c:4112 +#: sql_help.c:4132 msgid "where lockmode is one of:" msgstr "donde modo_bloqueo es uno de:" -#: sql_help.c:4153 +#: sql_help.c:4173 msgid "target_table_name" msgstr "nombre_de_tabla_destino" -#: sql_help.c:4154 +#: sql_help.c:4174 msgid "target_alias" msgstr "alias_de_destino" -#: sql_help.c:4155 +#: sql_help.c:4175 msgid "data_source" msgstr "origin_de_datos" -#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 +#: sql_help.c:4176 sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "join_condition" msgstr "condición_de_join" -#: sql_help.c:4157 +#: sql_help.c:4177 msgid "when_clause" msgstr "cláusula_when" -#: sql_help.c:4161 +#: sql_help.c:4181 msgid "where data_source is:" msgstr "donde origen_de_datos es:" -#: sql_help.c:4162 +#: sql_help.c:4182 msgid "source_table_name" msgstr "nombre_tabla_origen" -#: sql_help.c:4163 +#: sql_help.c:4183 msgid "source_query" msgstr "consulta_origen" -#: sql_help.c:4164 +#: sql_help.c:4184 msgid "source_alias" msgstr "alias_origen" -#: sql_help.c:4165 +#: sql_help.c:4185 msgid "and when_clause is:" msgstr "y cláusula_when es:" -#: sql_help.c:4167 sql_help.c:4170 +#: sql_help.c:4187 sql_help.c:4190 msgid "merge_update" msgstr "update_de_merge" -#: sql_help.c:4168 sql_help.c:4171 +#: sql_help.c:4188 sql_help.c:4191 msgid "merge_delete" msgstr "delete_de_merge" -#: sql_help.c:4173 +#: sql_help.c:4193 msgid "merge_insert" msgstr "insert_de_merge" -#: sql_help.c:4174 +#: sql_help.c:4194 msgid "and merge_insert is:" msgstr "y insert_de_merge es:" -#: sql_help.c:4177 +#: sql_help.c:4197 msgid "and merge_update is:" msgstr "y update_de_merge es:" -#: sql_help.c:4184 +#: sql_help.c:4204 msgid "and merge_delete is:" msgstr "y delete_de_merge es:" -#: sql_help.c:4225 +#: sql_help.c:4245 msgid "payload" msgstr "carga" -#: sql_help.c:4252 +#: sql_help.c:4272 msgid "old_role" msgstr "rol_antiguo" -#: sql_help.c:4253 +#: sql_help.c:4273 msgid "new_role" msgstr "rol_nuevo" -#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 +#: sql_help.c:4312 sql_help.c:4521 sql_help.c:4529 msgid "savepoint_name" msgstr "nombre_de_savepoint" -#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 -#: sql_help.c:5154 sql_help.c:5212 +#: sql_help.c:4669 sql_help.c:4727 sql_help.c:4927 sql_help.c:4985 +#: sql_help.c:5174 sql_help.c:5232 msgid "grouping_element" msgstr "elemento_agrupante" -#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 +#: sql_help.c:4671 sql_help.c:4775 sql_help.c:4929 sql_help.c:5176 msgid "window_name" msgstr "nombre_de_ventana" -#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 +#: sql_help.c:4672 sql_help.c:4776 sql_help.c:4930 sql_help.c:5177 msgid "window_definition" msgstr "definición_de_ventana" -#: sql_help.c:4653 sql_help.c:4667 sql_help.c:4711 sql_help.c:4757 -#: sql_help.c:4911 sql_help.c:4925 sql_help.c:4969 sql_help.c:5158 -#: sql_help.c:5172 sql_help.c:5216 +#: sql_help.c:4673 sql_help.c:4687 sql_help.c:4731 sql_help.c:4777 +#: sql_help.c:4931 sql_help.c:4945 sql_help.c:4989 sql_help.c:5178 +#: sql_help.c:5192 sql_help.c:5236 msgid "select" msgstr "select" -#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 +#: sql_help.c:4679 sql_help.c:4937 sql_help.c:5184 msgid "from_reference" msgstr "referencia_en_from" -#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 +#: sql_help.c:4680 sql_help.c:4938 sql_help.c:5185 msgid "where from_item can be one of:" msgstr "donde item_de_from puede ser uno de:" -#: sql_help.c:4663 sql_help.c:4669 sql_help.c:4672 sql_help.c:4676 -#: sql_help.c:4688 sql_help.c:4921 sql_help.c:4927 sql_help.c:4930 -#: sql_help.c:4934 sql_help.c:4946 sql_help.c:5168 sql_help.c:5174 -#: sql_help.c:5177 sql_help.c:5181 sql_help.c:5193 +#: sql_help.c:4683 sql_help.c:4689 sql_help.c:4692 sql_help.c:4696 +#: sql_help.c:4708 sql_help.c:4941 sql_help.c:4947 sql_help.c:4950 +#: sql_help.c:4954 sql_help.c:4966 sql_help.c:5188 sql_help.c:5194 +#: sql_help.c:5197 sql_help.c:5201 sql_help.c:5213 msgid "column_alias" msgstr "alias_de_columna" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 +#: sql_help.c:4684 sql_help.c:4942 sql_help.c:5189 msgid "sampling_method" msgstr "método_de_sampleo" -#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 +#: sql_help.c:4686 sql_help.c:4944 sql_help.c:5191 msgid "seed" msgstr "semilla" -#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 -#: sql_help.c:5175 sql_help.c:5214 +#: sql_help.c:4690 sql_help.c:4729 sql_help.c:4948 sql_help.c:4987 +#: sql_help.c:5195 sql_help.c:5234 msgid "with_query_name" msgstr "nombre_consulta_with" -#: sql_help.c:4680 sql_help.c:4683 sql_help.c:4686 sql_help.c:4938 -#: sql_help.c:4941 sql_help.c:4944 sql_help.c:5185 sql_help.c:5188 -#: sql_help.c:5191 +#: sql_help.c:4700 sql_help.c:4703 sql_help.c:4706 sql_help.c:4958 +#: sql_help.c:4961 sql_help.c:4964 sql_help.c:5205 sql_help.c:5208 +#: sql_help.c:5211 msgid "column_definition" msgstr "definición_de_columna" -#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 -#: sql_help.c:5195 sql_help.c:5201 +#: sql_help.c:4710 sql_help.c:4716 sql_help.c:4968 sql_help.c:4974 +#: sql_help.c:5215 sql_help.c:5221 msgid "join_type" msgstr "tipo_de_join" -#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "join_column" msgstr "columna_de_join" -#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "join_using_alias" msgstr "join_con_alias" -#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "and grouping_element can be one of:" msgstr "donde elemento_agrupante puede ser una de:" -#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 +#: sql_help.c:4728 sql_help.c:4986 sql_help.c:5233 msgid "and with_query is:" msgstr "y consulta_with es:" -#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 +#: sql_help.c:4732 sql_help.c:4990 sql_help.c:5237 msgid "values" msgstr "valores" -#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 +#: sql_help.c:4733 sql_help.c:4991 sql_help.c:5238 msgid "insert" msgstr "insert" -#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 +#: sql_help.c:4734 sql_help.c:4992 sql_help.c:5239 msgid "update" msgstr "update" -#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 +#: sql_help.c:4735 sql_help.c:4993 sql_help.c:5240 msgid "delete" msgstr "delete" -#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 +#: sql_help.c:4736 sql_help.c:4994 sql_help.c:5241 msgid "merge" msgstr "merge" -#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 +#: sql_help.c:4738 sql_help.c:4996 sql_help.c:5243 msgid "search_seq_col_name" msgstr "nombre_col_para_sec_de_búsqueda" -#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 +#: sql_help.c:4740 sql_help.c:4998 sql_help.c:5245 msgid "cycle_mark_col_name" msgstr "nombre_col_para_marca_de_ciclo" -#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 +#: sql_help.c:4741 sql_help.c:4999 sql_help.c:5246 msgid "cycle_mark_value" msgstr "valor_marca_de_ciclo" -#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 +#: sql_help.c:4742 sql_help.c:5000 sql_help.c:5247 msgid "cycle_mark_default" msgstr "valor_predet_marca_de_ciclo" -#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 +#: sql_help.c:4743 sql_help.c:5001 sql_help.c:5248 msgid "cycle_path_col_name" msgstr "nombre_col_para_ruta_de_ciclo" -#: sql_help.c:4750 +#: sql_help.c:4770 msgid "new_table" msgstr "nueva_tabla" -#: sql_help.c:4821 +#: sql_help.c:4841 msgid "snapshot_id" msgstr "id_de_snapshot" -#: sql_help.c:5090 +#: sql_help.c:5110 msgid "sort_expression" msgstr "expresión_orden" -#: sql_help.c:5235 sql_help.c:6219 +#: sql_help.c:5255 sql_help.c:6239 msgid "abort the current transaction" msgstr "aborta la transacción en curso" -#: sql_help.c:5241 +#: sql_help.c:5261 msgid "change the definition of an aggregate function" msgstr "cambia la definición de una función de agregación" -#: sql_help.c:5247 +#: sql_help.c:5267 msgid "change the definition of a collation" msgstr "cambia la definición de un ordenamiento" -#: sql_help.c:5253 +#: sql_help.c:5273 msgid "change the definition of a conversion" msgstr "cambia la definición de una conversión" -#: sql_help.c:5259 +#: sql_help.c:5279 msgid "change a database" msgstr "cambia una base de datos" -#: sql_help.c:5265 +#: sql_help.c:5285 msgid "define default access privileges" msgstr "define privilegios de acceso por omisión" -#: sql_help.c:5271 +#: sql_help.c:5291 msgid "change the definition of a domain" msgstr "cambia la definición de un dominio" -#: sql_help.c:5277 +#: sql_help.c:5297 msgid "change the definition of an event trigger" msgstr "cambia la definición de un disparador por evento" -#: sql_help.c:5283 +#: sql_help.c:5303 msgid "change the definition of an extension" msgstr "cambia la definición de una extensión" -#: sql_help.c:5289 +#: sql_help.c:5309 msgid "change the definition of a foreign-data wrapper" msgstr "cambia la definición de un conector de datos externos" -#: sql_help.c:5295 +#: sql_help.c:5315 msgid "change the definition of a foreign table" msgstr "cambia la definición de una tabla foránea" -#: sql_help.c:5301 +#: sql_help.c:5321 msgid "change the definition of a function" msgstr "cambia la definición de una función" -#: sql_help.c:5307 +#: sql_help.c:5327 msgid "change role name or membership" msgstr "cambiar nombre del rol o membresía" -#: sql_help.c:5313 +#: sql_help.c:5333 msgid "change the definition of an index" msgstr "cambia la definición de un índice" -#: sql_help.c:5319 +#: sql_help.c:5339 msgid "change the definition of a procedural language" msgstr "cambia la definición de un lenguaje procedural" -#: sql_help.c:5325 +#: sql_help.c:5345 msgid "change the definition of a large object" msgstr "cambia la definición de un objeto grande" -#: sql_help.c:5331 +#: sql_help.c:5351 msgid "change the definition of a materialized view" msgstr "cambia la definición de una vista materializada" -#: sql_help.c:5337 +#: sql_help.c:5357 msgid "change the definition of an operator" msgstr "cambia la definición de un operador" -#: sql_help.c:5343 +#: sql_help.c:5363 msgid "change the definition of an operator class" msgstr "cambia la definición de una clase de operadores" -#: sql_help.c:5349 +#: sql_help.c:5369 msgid "change the definition of an operator family" msgstr "cambia la definición de una familia de operadores" -#: sql_help.c:5355 +#: sql_help.c:5375 msgid "change the definition of a row-level security policy" msgstr "cambia la definición de una política de seguridad a nivel de registros" -#: sql_help.c:5361 +#: sql_help.c:5381 msgid "change the definition of a procedure" msgstr "cambia la definición de un procedimiento" -#: sql_help.c:5367 +#: sql_help.c:5387 msgid "change the definition of a publication" msgstr "cambia la definición de una publicación" -#: sql_help.c:5373 sql_help.c:5475 +#: sql_help.c:5393 sql_help.c:5495 msgid "change a database role" msgstr "cambia un rol de la base de datos" -#: sql_help.c:5379 +#: sql_help.c:5399 msgid "change the definition of a routine" msgstr "cambia la definición de una rutina" -#: sql_help.c:5385 +#: sql_help.c:5405 msgid "change the definition of a rule" msgstr "cambia la definición de una regla" -#: sql_help.c:5391 +#: sql_help.c:5411 msgid "change the definition of a schema" msgstr "cambia la definición de un esquema" -#: sql_help.c:5397 +#: sql_help.c:5417 msgid "change the definition of a sequence generator" msgstr "cambia la definición de un generador secuencial" -#: sql_help.c:5403 +#: sql_help.c:5423 msgid "change the definition of a foreign server" msgstr "cambia la definición de un servidor foráneo" -#: sql_help.c:5409 +#: sql_help.c:5429 msgid "change the definition of an extended statistics object" msgstr "cambia la definición de un objeto de estadísticas extendidas" -#: sql_help.c:5415 +#: sql_help.c:5435 msgid "change the definition of a subscription" msgstr "cambia la definición de una suscripción" -#: sql_help.c:5421 +#: sql_help.c:5441 msgid "change a server configuration parameter" msgstr "cambia un parámetro de configuración del servidor" -#: sql_help.c:5427 +#: sql_help.c:5447 msgid "change the definition of a table" msgstr "cambia la definición de una tabla" -#: sql_help.c:5433 +#: sql_help.c:5453 msgid "change the definition of a tablespace" msgstr "cambia la definición de un tablespace" -#: sql_help.c:5439 +#: sql_help.c:5459 msgid "change the definition of a text search configuration" msgstr "cambia la definición de una configuración de búsqueda en texto" -#: sql_help.c:5445 +#: sql_help.c:5465 msgid "change the definition of a text search dictionary" msgstr "cambia la definición de un diccionario de búsqueda en texto" -#: sql_help.c:5451 +#: sql_help.c:5471 msgid "change the definition of a text search parser" msgstr "cambia la definición de un analizador de búsqueda en texto" -#: sql_help.c:5457 +#: sql_help.c:5477 msgid "change the definition of a text search template" msgstr "cambia la definición de una plantilla de búsqueda en texto" -#: sql_help.c:5463 +#: sql_help.c:5483 msgid "change the definition of a trigger" msgstr "cambia la definición de un disparador" -#: sql_help.c:5469 +#: sql_help.c:5489 msgid "change the definition of a type" msgstr "cambia la definición de un tipo" -#: sql_help.c:5481 +#: sql_help.c:5501 msgid "change the definition of a user mapping" msgstr "cambia la definición de un mapeo de usuario" -#: sql_help.c:5487 +#: sql_help.c:5507 msgid "change the definition of a view" msgstr "cambia la definición de una vista" -#: sql_help.c:5493 +#: sql_help.c:5513 msgid "collect statistics about a database" msgstr "recolecta estadísticas sobre una base de datos" -#: sql_help.c:5499 sql_help.c:6297 +#: sql_help.c:5519 sql_help.c:6317 msgid "start a transaction block" msgstr "inicia un bloque de transacción" -#: sql_help.c:5505 +#: sql_help.c:5525 msgid "invoke a procedure" msgstr "invocar un procedimiento" -#: sql_help.c:5511 +#: sql_help.c:5531 msgid "force a write-ahead log checkpoint" msgstr "fuerza un checkpoint de wal" -#: sql_help.c:5517 +#: sql_help.c:5537 msgid "close a cursor" msgstr "cierra un cursor" -#: sql_help.c:5523 +#: sql_help.c:5543 msgid "cluster a table according to an index" msgstr "reordena una tabla siguiendo un índice" -#: sql_help.c:5529 +#: sql_help.c:5549 msgid "define or change the comment of an object" msgstr "define o cambia un comentario sobre un objeto" -#: sql_help.c:5535 sql_help.c:6093 +#: sql_help.c:5555 sql_help.c:6113 msgid "commit the current transaction" msgstr "compromete la transacción en curso" -#: sql_help.c:5541 +#: sql_help.c:5561 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "confirma una transacción que fue preparada para two-phase commit" -#: sql_help.c:5547 +#: sql_help.c:5567 msgid "copy data between a file and a table" msgstr "copia datos entre un archivo y una tabla" -#: sql_help.c:5553 +#: sql_help.c:5573 msgid "define a new access method" msgstr "define un nuevo método de acceso" -#: sql_help.c:5559 +#: sql_help.c:5579 msgid "define a new aggregate function" msgstr "define una nueva función de agregación" -#: sql_help.c:5565 +#: sql_help.c:5585 msgid "define a new cast" msgstr "define una nueva conversión de tipo" -#: sql_help.c:5571 +#: sql_help.c:5591 msgid "define a new collation" msgstr "define un nuevo ordenamiento" -#: sql_help.c:5577 +#: sql_help.c:5597 msgid "define a new encoding conversion" msgstr "define una nueva conversión de codificación" -#: sql_help.c:5583 +#: sql_help.c:5603 msgid "create a new database" msgstr "crea una nueva base de datos" -#: sql_help.c:5589 +#: sql_help.c:5609 msgid "define a new domain" msgstr "define un nuevo dominio" -#: sql_help.c:5595 +#: sql_help.c:5615 msgid "define a new event trigger" msgstr "define un nuevo disparador por evento" -#: sql_help.c:5601 +#: sql_help.c:5621 msgid "install an extension" msgstr "instala una extensión" -#: sql_help.c:5607 +#: sql_help.c:5627 msgid "define a new foreign-data wrapper" msgstr "define un nuevo conector de datos externos" -#: sql_help.c:5613 +#: sql_help.c:5633 msgid "define a new foreign table" msgstr "define una nueva tabla foránea" -#: sql_help.c:5619 +#: sql_help.c:5639 msgid "define a new function" msgstr "define una nueva función" -#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 +#: sql_help.c:5645 sql_help.c:5705 sql_help.c:5807 msgid "define a new database role" msgstr "define un nuevo rol de la base de datos" -#: sql_help.c:5631 +#: sql_help.c:5651 msgid "define a new index" msgstr "define un nuevo índice" -#: sql_help.c:5637 +#: sql_help.c:5657 msgid "define a new procedural language" msgstr "define un nuevo lenguaje procedural" -#: sql_help.c:5643 +#: sql_help.c:5663 msgid "define a new materialized view" msgstr "define una nueva vista materializada" -#: sql_help.c:5649 +#: sql_help.c:5669 msgid "define a new operator" msgstr "define un nuevo operador" -#: sql_help.c:5655 +#: sql_help.c:5675 msgid "define a new operator class" msgstr "define una nueva clase de operadores" -#: sql_help.c:5661 +#: sql_help.c:5681 msgid "define a new operator family" msgstr "define una nueva familia de operadores" -#: sql_help.c:5667 +#: sql_help.c:5687 msgid "define a new row-level security policy for a table" msgstr "define una nueva política de seguridad a nivel de registros para una tabla" -#: sql_help.c:5673 +#: sql_help.c:5693 msgid "define a new procedure" msgstr "define un nuevo procedimiento" -#: sql_help.c:5679 +#: sql_help.c:5699 msgid "define a new publication" msgstr "define una nueva publicación" -#: sql_help.c:5691 +#: sql_help.c:5711 msgid "define a new rewrite rule" msgstr "define una nueva regla de reescritura" -#: sql_help.c:5697 +#: sql_help.c:5717 msgid "define a new schema" msgstr "define un nuevo esquema" -#: sql_help.c:5703 +#: sql_help.c:5723 msgid "define a new sequence generator" msgstr "define un nuevo generador secuencial" -#: sql_help.c:5709 +#: sql_help.c:5729 msgid "define a new foreign server" msgstr "define un nuevo servidor foráneo" -#: sql_help.c:5715 +#: sql_help.c:5735 msgid "define extended statistics" msgstr "define estadísticas extendidas" -#: sql_help.c:5721 +#: sql_help.c:5741 msgid "define a new subscription" msgstr "define una nueva suscripción" -#: sql_help.c:5727 +#: sql_help.c:5747 msgid "define a new table" msgstr "define una nueva tabla" -#: sql_help.c:5733 sql_help.c:6255 +#: sql_help.c:5753 sql_help.c:6275 msgid "define a new table from the results of a query" msgstr "crea una nueva tabla usando los resultados de una consulta" -#: sql_help.c:5739 +#: sql_help.c:5759 msgid "define a new tablespace" msgstr "define un nuevo tablespace" -#: sql_help.c:5745 +#: sql_help.c:5765 msgid "define a new text search configuration" msgstr "define una nueva configuración de búsqueda en texto" -#: sql_help.c:5751 +#: sql_help.c:5771 msgid "define a new text search dictionary" msgstr "define un nuevo diccionario de búsqueda en texto" -#: sql_help.c:5757 +#: sql_help.c:5777 msgid "define a new text search parser" msgstr "define un nuevo analizador de búsqueda en texto" -#: sql_help.c:5763 +#: sql_help.c:5783 msgid "define a new text search template" msgstr "define una nueva plantilla de búsqueda en texto" -#: sql_help.c:5769 +#: sql_help.c:5789 msgid "define a new transform" msgstr "define una nueva transformación" -#: sql_help.c:5775 +#: sql_help.c:5795 msgid "define a new trigger" msgstr "define un nuevo disparador" -#: sql_help.c:5781 +#: sql_help.c:5801 msgid "define a new data type" msgstr "define un nuevo tipo de datos" -#: sql_help.c:5793 +#: sql_help.c:5813 msgid "define a new mapping of a user to a foreign server" msgstr "define un nuevo mapa de usuario a servidor foráneo" -#: sql_help.c:5799 +#: sql_help.c:5819 msgid "define a new view" msgstr "define una nueva vista" -#: sql_help.c:5805 +#: sql_help.c:5825 msgid "deallocate a prepared statement" msgstr "elimina una sentencia preparada" -#: sql_help.c:5811 +#: sql_help.c:5831 msgid "define a cursor" msgstr "define un nuevo cursor" -#: sql_help.c:5817 +#: sql_help.c:5837 msgid "delete rows of a table" msgstr "elimina filas de una tabla" -#: sql_help.c:5823 +#: sql_help.c:5843 msgid "discard session state" msgstr "descartar datos de la sesión" -#: sql_help.c:5829 +#: sql_help.c:5849 msgid "execute an anonymous code block" msgstr "ejecutar un bloque anónimo de código" -#: sql_help.c:5835 +#: sql_help.c:5855 msgid "remove an access method" msgstr "elimina un método de acceso" -#: sql_help.c:5841 +#: sql_help.c:5861 msgid "remove an aggregate function" msgstr "elimina una función de agregación" -#: sql_help.c:5847 +#: sql_help.c:5867 msgid "remove a cast" msgstr "elimina una conversión de tipo" -#: sql_help.c:5853 +#: sql_help.c:5873 msgid "remove a collation" msgstr "elimina un ordenamiento" -#: sql_help.c:5859 +#: sql_help.c:5879 msgid "remove a conversion" msgstr "elimina una conversión de codificación" -#: sql_help.c:5865 +#: sql_help.c:5885 msgid "remove a database" msgstr "elimina una base de datos" -#: sql_help.c:5871 +#: sql_help.c:5891 msgid "remove a domain" msgstr "elimina un dominio" -#: sql_help.c:5877 +#: sql_help.c:5897 msgid "remove an event trigger" msgstr "elimina un disparador por evento" -#: sql_help.c:5883 +#: sql_help.c:5903 msgid "remove an extension" msgstr "elimina una extensión" -#: sql_help.c:5889 +#: sql_help.c:5909 msgid "remove a foreign-data wrapper" msgstr "elimina un conector de datos externos" -#: sql_help.c:5895 +#: sql_help.c:5915 msgid "remove a foreign table" msgstr "elimina una tabla foránea" -#: sql_help.c:5901 +#: sql_help.c:5921 msgid "remove a function" msgstr "elimina una función" -#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 +#: sql_help.c:5927 sql_help.c:5993 sql_help.c:6095 msgid "remove a database role" msgstr "elimina un rol de base de datos" -#: sql_help.c:5913 +#: sql_help.c:5933 msgid "remove an index" msgstr "elimina un índice" -#: sql_help.c:5919 +#: sql_help.c:5939 msgid "remove a procedural language" msgstr "elimina un lenguaje procedural" -#: sql_help.c:5925 +#: sql_help.c:5945 msgid "remove a materialized view" msgstr "elimina una vista materializada" -#: sql_help.c:5931 +#: sql_help.c:5951 msgid "remove an operator" msgstr "elimina un operador" -#: sql_help.c:5937 +#: sql_help.c:5957 msgid "remove an operator class" msgstr "elimina una clase de operadores" -#: sql_help.c:5943 +#: sql_help.c:5963 msgid "remove an operator family" msgstr "elimina una familia de operadores" -#: sql_help.c:5949 +#: sql_help.c:5969 msgid "remove database objects owned by a database role" msgstr "elimina objetos de propiedad de un rol de la base de datos" -#: sql_help.c:5955 +#: sql_help.c:5975 msgid "remove a row-level security policy from a table" msgstr "elimina una política de seguridad a nivel de registros de una tabla" -#: sql_help.c:5961 +#: sql_help.c:5981 msgid "remove a procedure" msgstr "elimina un procedimiento" -#: sql_help.c:5967 +#: sql_help.c:5987 msgid "remove a publication" msgstr "elimina una publicación" -#: sql_help.c:5979 +#: sql_help.c:5999 msgid "remove a routine" msgstr "elimina una rutina" -#: sql_help.c:5985 +#: sql_help.c:6005 msgid "remove a rewrite rule" msgstr "elimina una regla de reescritura" -#: sql_help.c:5991 +#: sql_help.c:6011 msgid "remove a schema" msgstr "elimina un esquema" -#: sql_help.c:5997 +#: sql_help.c:6017 msgid "remove a sequence" msgstr "elimina un generador secuencial" -#: sql_help.c:6003 +#: sql_help.c:6023 msgid "remove a foreign server descriptor" msgstr "elimina un descriptor de servidor foráneo" -#: sql_help.c:6009 +#: sql_help.c:6029 msgid "remove extended statistics" msgstr "elimina estadísticas extendidas" -#: sql_help.c:6015 +#: sql_help.c:6035 msgid "remove a subscription" msgstr "elimina una suscripción" -#: sql_help.c:6021 +#: sql_help.c:6041 msgid "remove a table" msgstr "elimina una tabla" -#: sql_help.c:6027 +#: sql_help.c:6047 msgid "remove a tablespace" msgstr "elimina un tablespace" -#: sql_help.c:6033 +#: sql_help.c:6053 msgid "remove a text search configuration" msgstr "elimina una configuración de búsqueda en texto" -#: sql_help.c:6039 +#: sql_help.c:6059 msgid "remove a text search dictionary" msgstr "elimina un diccionario de búsqueda en texto" -#: sql_help.c:6045 +#: sql_help.c:6065 msgid "remove a text search parser" msgstr "elimina un analizador de búsqueda en texto" -#: sql_help.c:6051 +#: sql_help.c:6071 msgid "remove a text search template" msgstr "elimina una plantilla de búsqueda en texto" -#: sql_help.c:6057 +#: sql_help.c:6077 msgid "remove a transform" msgstr "elimina una transformación" -#: sql_help.c:6063 +#: sql_help.c:6083 msgid "remove a trigger" msgstr "elimina un disparador" -#: sql_help.c:6069 +#: sql_help.c:6089 msgid "remove a data type" msgstr "elimina un tipo de datos" -#: sql_help.c:6081 +#: sql_help.c:6101 msgid "remove a user mapping for a foreign server" msgstr "elimina un mapeo de usuario para un servidor remoto" -#: sql_help.c:6087 +#: sql_help.c:6107 msgid "remove a view" msgstr "elimina una vista" -#: sql_help.c:6099 +#: sql_help.c:6119 msgid "execute a prepared statement" msgstr "ejecuta una sentencia preparada" -#: sql_help.c:6105 +#: sql_help.c:6125 msgid "show the execution plan of a statement" msgstr "muestra el plan de ejecución de una sentencia" -#: sql_help.c:6111 +#: sql_help.c:6131 msgid "retrieve rows from a query using a cursor" msgstr "recupera filas de una consulta usando un cursor" -#: sql_help.c:6117 +#: sql_help.c:6137 msgid "define access privileges" msgstr "define privilegios de acceso" -#: sql_help.c:6123 +#: sql_help.c:6143 msgid "import table definitions from a foreign server" msgstr "importa definiciones de tablas desde un servidor foráneo" -#: sql_help.c:6129 +#: sql_help.c:6149 msgid "create new rows in a table" msgstr "crea nuevas filas en una tabla" -#: sql_help.c:6135 +#: sql_help.c:6155 msgid "listen for a notification" msgstr "escucha notificaciones" -#: sql_help.c:6141 +#: sql_help.c:6161 msgid "load a shared library file" msgstr "carga un archivo de biblioteca compartida" -#: sql_help.c:6147 +#: sql_help.c:6167 msgid "lock a table" msgstr "bloquea una tabla" -#: sql_help.c:6153 +#: sql_help.c:6173 msgid "conditionally insert, update, or delete rows of a table" msgstr "condicionalmente inserta, actualiza o elimina filas de una tabla" -#: sql_help.c:6159 +#: sql_help.c:6179 msgid "position a cursor" msgstr "reposiciona un cursor" -#: sql_help.c:6165 +#: sql_help.c:6185 msgid "generate a notification" msgstr "genera una notificación" -#: sql_help.c:6171 +#: sql_help.c:6191 msgid "prepare a statement for execution" msgstr "prepara una sentencia para ejecución" -#: sql_help.c:6177 +#: sql_help.c:6197 msgid "prepare the current transaction for two-phase commit" msgstr "prepara la transacción actual para two-phase commit" -#: sql_help.c:6183 +#: sql_help.c:6203 msgid "change the ownership of database objects owned by a database role" msgstr "cambia de dueño a los objetos de propiedad de un rol de la base de datos" -#: sql_help.c:6189 +#: sql_help.c:6209 msgid "replace the contents of a materialized view" msgstr "reemplaza los contenidos de una vista materializada" -#: sql_help.c:6195 +#: sql_help.c:6215 msgid "rebuild indexes" msgstr "reconstruye índices" -#: sql_help.c:6201 +#: sql_help.c:6221 msgid "release a previously defined savepoint" msgstr "libera un “savepoint” definido previamente" -#: sql_help.c:6207 +#: sql_help.c:6227 msgid "restore the value of a run-time parameter to the default value" msgstr "restaura el valor de un parámetro de configuración al valor inicial" -#: sql_help.c:6213 +#: sql_help.c:6233 msgid "remove access privileges" msgstr "revoca privilegios de acceso" -#: sql_help.c:6225 +#: sql_help.c:6245 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "cancela una transacción que fue previamente preparada para two-phase commit" -#: sql_help.c:6231 +#: sql_help.c:6251 msgid "roll back to a savepoint" msgstr "descartar hacia un “savepoint”" -#: sql_help.c:6237 +#: sql_help.c:6257 msgid "define a new savepoint within the current transaction" msgstr "define un nuevo ”savepoint” en la transacción en curso" -#: sql_help.c:6243 +#: sql_help.c:6263 msgid "define or change a security label applied to an object" msgstr "define o cambia una etiqueta de seguridad sobre un objeto" -#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 +#: sql_help.c:6269 sql_help.c:6323 sql_help.c:6359 msgid "retrieve rows from a table or view" msgstr "recupera filas desde una tabla o vista" -#: sql_help.c:6261 +#: sql_help.c:6281 msgid "change a run-time parameter" msgstr "cambia un parámetro de configuración" -#: sql_help.c:6267 +#: sql_help.c:6287 msgid "set constraint check timing for the current transaction" msgstr "define el modo de verificación de las restricciones de la transacción en curso" -#: sql_help.c:6273 +#: sql_help.c:6293 msgid "set the current user identifier of the current session" msgstr "define el identificador de usuario actual de la sesión actual" -#: sql_help.c:6279 +#: sql_help.c:6299 msgid "set the session user identifier and the current user identifier of the current session" msgstr "" "define el identificador del usuario de sesión y el identificador\n" "del usuario actual de la sesión en curso" -#: sql_help.c:6285 +#: sql_help.c:6305 msgid "set the characteristics of the current transaction" msgstr "define las características de la transacción en curso" -#: sql_help.c:6291 +#: sql_help.c:6311 msgid "show the value of a run-time parameter" msgstr "muestra el valor de un parámetro de configuración" -#: sql_help.c:6309 +#: sql_help.c:6329 msgid "empty a table or set of tables" msgstr "vacía una tabla o conjunto de tablas" -#: sql_help.c:6315 +#: sql_help.c:6335 msgid "stop listening for a notification" msgstr "deja de escuchar una notificación" -#: sql_help.c:6321 +#: sql_help.c:6341 msgid "update rows of a table" msgstr "actualiza filas de una tabla" -#: sql_help.c:6327 +#: sql_help.c:6347 msgid "garbage-collect and optionally analyze a database" msgstr "recolecta basura y opcionalmente estadísticas sobre una base de datos" -#: sql_help.c:6333 +#: sql_help.c:6353 msgid "compute a set of rows" msgstr "calcula un conjunto de registros" @@ -6839,7 +6845,7 @@ msgstr "se ignoró argumento extra «%s» en línea de órdenes" msgid "could not find own program executable" msgstr "no se pudo encontrar el ejecutable propio" -#: tab-complete.in.c:6633 +#: tab-complete.in.c:6639 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/ja.po b/src/bin/psql/po/ja.po index 7cccdf08410..534a9049865 100644 --- a/src/bin/psql/po/ja.po +++ b/src/bin/psql/po/ja.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: psql (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-05 10:32+0900\n" -"PO-Revision-Date: 2025-11-05 11:18+0900\n" +"POT-Creation-Date: 2025-11-28 14:19+0900\n" +"PO-Revision-Date: 2025-11-28 15:44+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -4439,189 +4439,189 @@ msgstr "%s: メモリ不足です" #: sql_help.c:746 sql_help.c:750 sql_help.c:771 sql_help.c:774 sql_help.c:777 #: sql_help.c:806 sql_help.c:818 sql_help.c:826 sql_help.c:829 sql_help.c:832 #: sql_help.c:847 sql_help.c:850 sql_help.c:879 sql_help.c:884 sql_help.c:889 -#: sql_help.c:894 sql_help.c:899 sql_help.c:926 sql_help.c:928 sql_help.c:930 -#: sql_help.c:932 sql_help.c:935 sql_help.c:937 sql_help.c:984 sql_help.c:1029 -#: sql_help.c:1034 sql_help.c:1039 sql_help.c:1044 sql_help.c:1049 -#: sql_help.c:1068 sql_help.c:1079 sql_help.c:1081 sql_help.c:1102 -#: sql_help.c:1112 sql_help.c:1113 sql_help.c:1115 sql_help.c:1117 -#: sql_help.c:1129 sql_help.c:1133 sql_help.c:1135 sql_help.c:1147 -#: sql_help.c:1149 sql_help.c:1151 sql_help.c:1153 sql_help.c:1172 -#: sql_help.c:1174 sql_help.c:1178 sql_help.c:1182 sql_help.c:1186 -#: sql_help.c:1189 sql_help.c:1190 sql_help.c:1191 sql_help.c:1194 -#: sql_help.c:1197 sql_help.c:1199 sql_help.c:1341 sql_help.c:1343 -#: sql_help.c:1346 sql_help.c:1349 sql_help.c:1351 sql_help.c:1353 -#: sql_help.c:1356 sql_help.c:1359 sql_help.c:1487 sql_help.c:1489 -#: sql_help.c:1491 sql_help.c:1494 sql_help.c:1515 sql_help.c:1518 -#: sql_help.c:1521 sql_help.c:1524 sql_help.c:1528 sql_help.c:1530 -#: sql_help.c:1532 sql_help.c:1534 sql_help.c:1548 sql_help.c:1551 -#: sql_help.c:1553 sql_help.c:1555 sql_help.c:1565 sql_help.c:1567 -#: sql_help.c:1577 sql_help.c:1579 sql_help.c:1589 sql_help.c:1592 -#: sql_help.c:1615 sql_help.c:1617 sql_help.c:1619 sql_help.c:1621 -#: sql_help.c:1624 sql_help.c:1626 sql_help.c:1629 sql_help.c:1632 -#: sql_help.c:1683 sql_help.c:1726 sql_help.c:1729 sql_help.c:1731 -#: sql_help.c:1733 sql_help.c:1736 sql_help.c:1738 sql_help.c:1740 -#: sql_help.c:1743 sql_help.c:1793 sql_help.c:1809 sql_help.c:2044 -#: sql_help.c:2113 sql_help.c:2132 sql_help.c:2145 sql_help.c:2203 -#: sql_help.c:2211 sql_help.c:2221 sql_help.c:2249 sql_help.c:2282 -#: sql_help.c:2300 sql_help.c:2328 sql_help.c:2451 sql_help.c:2497 -#: sql_help.c:2522 sql_help.c:2545 sql_help.c:2549 sql_help.c:2583 -#: sql_help.c:2603 sql_help.c:2625 sql_help.c:2639 sql_help.c:2660 -#: sql_help.c:2689 sql_help.c:2722 sql_help.c:2745 sql_help.c:2794 -#: sql_help.c:3098 sql_help.c:3111 sql_help.c:3128 sql_help.c:3144 -#: sql_help.c:3184 sql_help.c:3238 sql_help.c:3242 sql_help.c:3244 -#: sql_help.c:3251 sql_help.c:3270 sql_help.c:3297 sql_help.c:3332 -#: sql_help.c:3344 sql_help.c:3353 sql_help.c:3399 sql_help.c:3413 -#: sql_help.c:3441 sql_help.c:3449 sql_help.c:3461 sql_help.c:3471 -#: sql_help.c:3479 sql_help.c:3487 sql_help.c:3495 sql_help.c:3503 -#: sql_help.c:3512 sql_help.c:3523 sql_help.c:3531 sql_help.c:3539 -#: sql_help.c:3547 sql_help.c:3555 sql_help.c:3565 sql_help.c:3574 -#: sql_help.c:3583 sql_help.c:3591 sql_help.c:3601 sql_help.c:3612 -#: sql_help.c:3620 sql_help.c:3629 sql_help.c:3640 sql_help.c:3649 -#: sql_help.c:3657 sql_help.c:3665 sql_help.c:3673 sql_help.c:3681 -#: sql_help.c:3689 sql_help.c:3697 sql_help.c:3705 sql_help.c:3713 -#: sql_help.c:3721 sql_help.c:3729 sql_help.c:3746 sql_help.c:3755 -#: sql_help.c:3763 sql_help.c:3780 sql_help.c:3795 sql_help.c:4110 -#: sql_help.c:4233 sql_help.c:4262 sql_help.c:4278 sql_help.c:4280 -#: sql_help.c:4784 sql_help.c:4832 sql_help.c:4991 +#: sql_help.c:894 sql_help.c:899 sql_help.c:935 sql_help.c:937 sql_help.c:939 +#: sql_help.c:941 sql_help.c:944 sql_help.c:946 sql_help.c:998 sql_help.c:1043 +#: sql_help.c:1048 sql_help.c:1053 sql_help.c:1058 sql_help.c:1063 +#: sql_help.c:1082 sql_help.c:1093 sql_help.c:1095 sql_help.c:1116 +#: sql_help.c:1126 sql_help.c:1127 sql_help.c:1129 sql_help.c:1131 +#: sql_help.c:1143 sql_help.c:1147 sql_help.c:1149 sql_help.c:1161 +#: sql_help.c:1163 sql_help.c:1165 sql_help.c:1167 sql_help.c:1186 +#: sql_help.c:1188 sql_help.c:1192 sql_help.c:1196 sql_help.c:1200 +#: sql_help.c:1203 sql_help.c:1204 sql_help.c:1205 sql_help.c:1208 +#: sql_help.c:1211 sql_help.c:1213 sql_help.c:1355 sql_help.c:1357 +#: sql_help.c:1360 sql_help.c:1363 sql_help.c:1365 sql_help.c:1367 +#: sql_help.c:1370 sql_help.c:1373 sql_help.c:1501 sql_help.c:1503 +#: sql_help.c:1505 sql_help.c:1508 sql_help.c:1529 sql_help.c:1532 +#: sql_help.c:1535 sql_help.c:1538 sql_help.c:1542 sql_help.c:1544 +#: sql_help.c:1546 sql_help.c:1548 sql_help.c:1562 sql_help.c:1565 +#: sql_help.c:1567 sql_help.c:1569 sql_help.c:1579 sql_help.c:1581 +#: sql_help.c:1591 sql_help.c:1593 sql_help.c:1603 sql_help.c:1606 +#: sql_help.c:1629 sql_help.c:1631 sql_help.c:1633 sql_help.c:1635 +#: sql_help.c:1638 sql_help.c:1640 sql_help.c:1643 sql_help.c:1646 +#: sql_help.c:1697 sql_help.c:1740 sql_help.c:1743 sql_help.c:1745 +#: sql_help.c:1747 sql_help.c:1750 sql_help.c:1752 sql_help.c:1754 +#: sql_help.c:1757 sql_help.c:1807 sql_help.c:1823 sql_help.c:2058 +#: sql_help.c:2127 sql_help.c:2146 sql_help.c:2159 sql_help.c:2217 +#: sql_help.c:2225 sql_help.c:2235 sql_help.c:2263 sql_help.c:2296 +#: sql_help.c:2314 sql_help.c:2342 sql_help.c:2465 sql_help.c:2511 +#: sql_help.c:2536 sql_help.c:2559 sql_help.c:2563 sql_help.c:2597 +#: sql_help.c:2617 sql_help.c:2639 sql_help.c:2653 sql_help.c:2674 +#: sql_help.c:2707 sql_help.c:2742 sql_help.c:2765 sql_help.c:2814 +#: sql_help.c:3118 sql_help.c:3131 sql_help.c:3148 sql_help.c:3164 +#: sql_help.c:3204 sql_help.c:3258 sql_help.c:3262 sql_help.c:3264 +#: sql_help.c:3271 sql_help.c:3290 sql_help.c:3317 sql_help.c:3352 +#: sql_help.c:3364 sql_help.c:3373 sql_help.c:3419 sql_help.c:3433 +#: sql_help.c:3461 sql_help.c:3469 sql_help.c:3481 sql_help.c:3491 +#: sql_help.c:3499 sql_help.c:3507 sql_help.c:3515 sql_help.c:3523 +#: sql_help.c:3532 sql_help.c:3543 sql_help.c:3551 sql_help.c:3559 +#: sql_help.c:3567 sql_help.c:3575 sql_help.c:3585 sql_help.c:3594 +#: sql_help.c:3603 sql_help.c:3611 sql_help.c:3621 sql_help.c:3632 +#: sql_help.c:3640 sql_help.c:3649 sql_help.c:3660 sql_help.c:3669 +#: sql_help.c:3677 sql_help.c:3685 sql_help.c:3693 sql_help.c:3701 +#: sql_help.c:3709 sql_help.c:3717 sql_help.c:3725 sql_help.c:3733 +#: sql_help.c:3741 sql_help.c:3749 sql_help.c:3766 sql_help.c:3775 +#: sql_help.c:3783 sql_help.c:3800 sql_help.c:3815 sql_help.c:4130 +#: sql_help.c:4253 sql_help.c:4282 sql_help.c:4298 sql_help.c:4300 +#: sql_help.c:4804 sql_help.c:4852 sql_help.c:5011 msgid "name" msgstr "名前" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1886 -#: sql_help.c:3414 sql_help.c:4551 +#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1900 +#: sql_help.c:3434 sql_help.c:4571 msgid "aggregate_signature" msgstr "集約関数のシグニチャー" #: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:274 #: sql_help.c:295 sql_help.c:426 sql_help.c:473 sql_help.c:552 sql_help.c:600 #: sql_help.c:618 sql_help.c:645 sql_help.c:698 sql_help.c:773 sql_help.c:828 -#: sql_help.c:849 sql_help.c:888 sql_help.c:938 sql_help.c:985 sql_help.c:1038 -#: sql_help.c:1070 sql_help.c:1080 sql_help.c:1116 sql_help.c:1136 -#: sql_help.c:1150 sql_help.c:1200 sql_help.c:1350 sql_help.c:1488 -#: sql_help.c:1531 sql_help.c:1552 sql_help.c:1566 sql_help.c:1578 -#: sql_help.c:1591 sql_help.c:1618 sql_help.c:1684 sql_help.c:1737 +#: sql_help.c:849 sql_help.c:888 sql_help.c:947 sql_help.c:999 sql_help.c:1052 +#: sql_help.c:1084 sql_help.c:1094 sql_help.c:1130 sql_help.c:1150 +#: sql_help.c:1164 sql_help.c:1214 sql_help.c:1364 sql_help.c:1502 +#: sql_help.c:1545 sql_help.c:1566 sql_help.c:1580 sql_help.c:1592 +#: sql_help.c:1605 sql_help.c:1632 sql_help.c:1698 sql_help.c:1751 msgid "new_name" msgstr "新しい名前" #: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:272 #: sql_help.c:293 sql_help.c:424 sql_help.c:509 sql_help.c:557 sql_help.c:647 #: sql_help.c:656 sql_help.c:721 sql_help.c:745 sql_help.c:776 sql_help.c:831 -#: sql_help.c:893 sql_help.c:936 sql_help.c:1043 sql_help.c:1082 -#: sql_help.c:1114 sql_help.c:1134 sql_help.c:1148 sql_help.c:1198 -#: sql_help.c:1417 sql_help.c:1490 sql_help.c:1533 sql_help.c:1554 -#: sql_help.c:1616 sql_help.c:1732 sql_help.c:3084 +#: sql_help.c:893 sql_help.c:945 sql_help.c:1057 sql_help.c:1096 +#: sql_help.c:1128 sql_help.c:1148 sql_help.c:1162 sql_help.c:1212 +#: sql_help.c:1431 sql_help.c:1504 sql_help.c:1547 sql_help.c:1568 +#: sql_help.c:1630 sql_help.c:1746 sql_help.c:3104 msgid "new_owner" msgstr "新しい所有者" #: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:276 sql_help.c:346 #: sql_help.c:475 sql_help.c:562 sql_help.c:700 sql_help.c:749 sql_help.c:779 -#: sql_help.c:834 sql_help.c:898 sql_help.c:1048 sql_help.c:1118 -#: sql_help.c:1152 sql_help.c:1352 sql_help.c:1535 sql_help.c:1556 -#: sql_help.c:1568 sql_help.c:1580 sql_help.c:1620 sql_help.c:1739 +#: sql_help.c:834 sql_help.c:898 sql_help.c:1062 sql_help.c:1132 +#: sql_help.c:1166 sql_help.c:1366 sql_help.c:1549 sql_help.c:1570 +#: sql_help.c:1582 sql_help.c:1594 sql_help.c:1634 sql_help.c:1753 msgid "new_schema" msgstr "新しいスキーマ" -#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 +#: sql_help.c:44 sql_help.c:1964 sql_help.c:3435 sql_help.c:4600 msgid "where aggregate_signature is:" msgstr "集約関数のシグニチャーには以下のものがあります:" #: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:364 sql_help.c:377 #: sql_help.c:381 sql_help.c:397 sql_help.c:400 sql_help.c:403 sql_help.c:544 #: sql_help.c:549 sql_help.c:554 sql_help.c:559 sql_help.c:564 sql_help.c:880 -#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1030 -#: sql_help.c:1035 sql_help.c:1040 sql_help.c:1045 sql_help.c:1050 -#: sql_help.c:1904 sql_help.c:1921 sql_help.c:1927 sql_help.c:1951 -#: sql_help.c:1954 sql_help.c:1957 sql_help.c:2114 sql_help.c:2133 -#: sql_help.c:2136 sql_help.c:2452 sql_help.c:2661 sql_help.c:3416 -#: sql_help.c:3419 sql_help.c:3422 sql_help.c:3513 sql_help.c:3602 -#: sql_help.c:3630 sql_help.c:3983 sql_help.c:4450 sql_help.c:4557 -#: sql_help.c:4564 sql_help.c:4570 sql_help.c:4581 sql_help.c:4584 -#: sql_help.c:4587 +#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1044 +#: sql_help.c:1049 sql_help.c:1054 sql_help.c:1059 sql_help.c:1064 +#: sql_help.c:1918 sql_help.c:1935 sql_help.c:1941 sql_help.c:1965 +#: sql_help.c:1968 sql_help.c:1971 sql_help.c:2128 sql_help.c:2147 +#: sql_help.c:2150 sql_help.c:2466 sql_help.c:2675 sql_help.c:3436 +#: sql_help.c:3439 sql_help.c:3442 sql_help.c:3533 sql_help.c:3622 +#: sql_help.c:3650 sql_help.c:4003 sql_help.c:4470 sql_help.c:4577 +#: sql_help.c:4584 sql_help.c:4590 sql_help.c:4601 sql_help.c:4604 +#: sql_help.c:4607 msgid "argmode" msgstr "引数のモード" #: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:365 sql_help.c:378 #: sql_help.c:382 sql_help.c:398 sql_help.c:401 sql_help.c:404 sql_help.c:545 #: sql_help.c:550 sql_help.c:555 sql_help.c:560 sql_help.c:565 sql_help.c:881 -#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1031 -#: sql_help.c:1036 sql_help.c:1041 sql_help.c:1046 sql_help.c:1051 -#: sql_help.c:1905 sql_help.c:1922 sql_help.c:1928 sql_help.c:1952 -#: sql_help.c:1955 sql_help.c:1958 sql_help.c:2115 sql_help.c:2134 -#: sql_help.c:2137 sql_help.c:2453 sql_help.c:2662 sql_help.c:3417 -#: sql_help.c:3420 sql_help.c:3423 sql_help.c:3514 sql_help.c:3603 -#: sql_help.c:3631 sql_help.c:4558 sql_help.c:4565 sql_help.c:4571 -#: sql_help.c:4582 sql_help.c:4585 sql_help.c:4588 +#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1045 +#: sql_help.c:1050 sql_help.c:1055 sql_help.c:1060 sql_help.c:1065 +#: sql_help.c:1919 sql_help.c:1936 sql_help.c:1942 sql_help.c:1966 +#: sql_help.c:1969 sql_help.c:1972 sql_help.c:2129 sql_help.c:2148 +#: sql_help.c:2151 sql_help.c:2467 sql_help.c:2676 sql_help.c:3437 +#: sql_help.c:3440 sql_help.c:3443 sql_help.c:3534 sql_help.c:3623 +#: sql_help.c:3651 sql_help.c:4578 sql_help.c:4585 sql_help.c:4591 +#: sql_help.c:4602 sql_help.c:4605 sql_help.c:4608 msgid "argname" msgstr "引数の名前" #: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:366 sql_help.c:379 #: sql_help.c:383 sql_help.c:399 sql_help.c:402 sql_help.c:405 sql_help.c:546 #: sql_help.c:551 sql_help.c:556 sql_help.c:561 sql_help.c:566 sql_help.c:882 -#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1032 -#: sql_help.c:1037 sql_help.c:1042 sql_help.c:1047 sql_help.c:1052 -#: sql_help.c:1906 sql_help.c:1923 sql_help.c:1929 sql_help.c:1953 -#: sql_help.c:1956 sql_help.c:1959 sql_help.c:2454 sql_help.c:2663 -#: sql_help.c:3418 sql_help.c:3421 sql_help.c:3424 sql_help.c:3515 -#: sql_help.c:3604 sql_help.c:3632 sql_help.c:4559 sql_help.c:4566 -#: sql_help.c:4572 sql_help.c:4583 sql_help.c:4586 sql_help.c:4589 +#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1046 +#: sql_help.c:1051 sql_help.c:1056 sql_help.c:1061 sql_help.c:1066 +#: sql_help.c:1920 sql_help.c:1937 sql_help.c:1943 sql_help.c:1967 +#: sql_help.c:1970 sql_help.c:1973 sql_help.c:2468 sql_help.c:2677 +#: sql_help.c:3438 sql_help.c:3441 sql_help.c:3444 sql_help.c:3535 +#: sql_help.c:3624 sql_help.c:3652 sql_help.c:4579 sql_help.c:4586 +#: sql_help.c:4592 sql_help.c:4603 sql_help.c:4606 sql_help.c:4609 msgid "argtype" msgstr "引数の型" -#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:979 -#: sql_help.c:1131 sql_help.c:1549 sql_help.c:1678 sql_help.c:1710 -#: sql_help.c:1762 sql_help.c:1821 sql_help.c:2011 sql_help.c:2018 -#: sql_help.c:2331 sql_help.c:2389 sql_help.c:2398 sql_help.c:2407 -#: sql_help.c:2498 sql_help.c:2723 sql_help.c:2816 sql_help.c:3113 -#: sql_help.c:3298 sql_help.c:3320 sql_help.c:3462 sql_help.c:3819 -#: sql_help.c:4027 sql_help.c:4277 sql_help.c:4279 sql_help.c:5059 +#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:993 +#: sql_help.c:1145 sql_help.c:1563 sql_help.c:1692 sql_help.c:1724 +#: sql_help.c:1776 sql_help.c:1835 sql_help.c:2025 sql_help.c:2032 +#: sql_help.c:2345 sql_help.c:2403 sql_help.c:2412 sql_help.c:2421 +#: sql_help.c:2512 sql_help.c:2743 sql_help.c:2836 sql_help.c:3133 +#: sql_help.c:3318 sql_help.c:3340 sql_help.c:3482 sql_help.c:3839 +#: sql_help.c:4047 sql_help.c:4297 sql_help.c:4299 sql_help.c:5079 msgid "option" msgstr "オプション" -#: sql_help.c:115 sql_help.c:980 sql_help.c:1679 sql_help.c:2499 -#: sql_help.c:2724 sql_help.c:3299 sql_help.c:3463 +#: sql_help.c:115 sql_help.c:994 sql_help.c:1693 sql_help.c:2513 +#: sql_help.c:2744 sql_help.c:3319 sql_help.c:3483 msgid "where option can be:" msgstr "オプションには以下のものがあります:" -#: sql_help.c:116 sql_help.c:2263 +#: sql_help.c:116 sql_help.c:2277 msgid "allowconn" msgstr "接続の可否(真偽値)" -#: sql_help.c:117 sql_help.c:981 sql_help.c:1680 sql_help.c:2264 -#: sql_help.c:2500 sql_help.c:2725 sql_help.c:3300 +#: sql_help.c:117 sql_help.c:995 sql_help.c:1694 sql_help.c:2278 +#: sql_help.c:2514 sql_help.c:2745 sql_help.c:3320 msgid "connlimit" msgstr "最大同時接続数" -#: sql_help.c:118 sql_help.c:2265 +#: sql_help.c:118 sql_help.c:2279 msgid "istemplate" msgstr "テンプレートかどうか(真偽値)" -#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1355 -#: sql_help.c:1410 sql_help.c:4283 +#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1369 +#: sql_help.c:1424 sql_help.c:4303 msgid "new_tablespace" msgstr "新しいテーブル空間名" #: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:572 sql_help.c:574 -#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:988 -#: sql_help.c:992 sql_help.c:995 sql_help.c:1057 sql_help.c:1059 -#: sql_help.c:1060 sql_help.c:1211 sql_help.c:1213 sql_help.c:1687 -#: sql_help.c:1691 sql_help.c:1694 sql_help.c:2464 sql_help.c:2667 -#: sql_help.c:3995 sql_help.c:4301 sql_help.c:4462 sql_help.c:4772 +#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:1002 +#: sql_help.c:1006 sql_help.c:1009 sql_help.c:1071 sql_help.c:1073 +#: sql_help.c:1074 sql_help.c:1225 sql_help.c:1227 sql_help.c:1701 +#: sql_help.c:1705 sql_help.c:1708 sql_help.c:2478 sql_help.c:2681 +#: sql_help.c:4015 sql_help.c:4321 sql_help.c:4482 sql_help.c:4792 msgid "configuration_parameter" msgstr "設定パラメータ" #: sql_help.c:128 sql_help.c:422 sql_help.c:493 sql_help.c:499 sql_help.c:511 #: sql_help.c:573 sql_help.c:627 sql_help.c:709 sql_help.c:719 sql_help.c:906 -#: sql_help.c:934 sql_help.c:989 sql_help.c:1058 sql_help.c:1132 -#: sql_help.c:1177 sql_help.c:1181 sql_help.c:1185 sql_help.c:1188 -#: sql_help.c:1193 sql_help.c:1196 sql_help.c:1212 sql_help.c:1388 -#: sql_help.c:1412 sql_help.c:1465 sql_help.c:1473 sql_help.c:1493 -#: sql_help.c:1550 sql_help.c:1634 sql_help.c:1688 sql_help.c:1711 -#: sql_help.c:2332 sql_help.c:2390 sql_help.c:2399 sql_help.c:2408 -#: sql_help.c:2465 sql_help.c:2466 sql_help.c:2530 sql_help.c:2533 -#: sql_help.c:2567 sql_help.c:2668 sql_help.c:2669 sql_help.c:2692 -#: sql_help.c:2817 sql_help.c:2856 sql_help.c:2967 sql_help.c:2980 -#: sql_help.c:2994 sql_help.c:3040 sql_help.c:3048 sql_help.c:3070 -#: sql_help.c:3087 sql_help.c:3114 sql_help.c:3321 sql_help.c:4028 -#: sql_help.c:4773 sql_help.c:4774 sql_help.c:4775 sql_help.c:4776 +#: sql_help.c:943 sql_help.c:1003 sql_help.c:1072 sql_help.c:1146 +#: sql_help.c:1191 sql_help.c:1195 sql_help.c:1199 sql_help.c:1202 +#: sql_help.c:1207 sql_help.c:1210 sql_help.c:1226 sql_help.c:1402 +#: sql_help.c:1426 sql_help.c:1479 sql_help.c:1487 sql_help.c:1507 +#: sql_help.c:1564 sql_help.c:1648 sql_help.c:1702 sql_help.c:1725 +#: sql_help.c:2346 sql_help.c:2404 sql_help.c:2413 sql_help.c:2422 +#: sql_help.c:2479 sql_help.c:2480 sql_help.c:2544 sql_help.c:2547 +#: sql_help.c:2581 sql_help.c:2682 sql_help.c:2683 sql_help.c:2710 +#: sql_help.c:2837 sql_help.c:2876 sql_help.c:2987 sql_help.c:3000 +#: sql_help.c:3014 sql_help.c:3060 sql_help.c:3068 sql_help.c:3090 +#: sql_help.c:3107 sql_help.c:3134 sql_help.c:3341 sql_help.c:4048 +#: sql_help.c:4793 sql_help.c:4794 sql_help.c:4795 sql_help.c:4796 msgid "value" msgstr "値" @@ -4629,10 +4629,10 @@ msgstr "値" msgid "target_role" msgstr "対象のロール" -#: sql_help.c:215 sql_help.c:943 sql_help.c:2316 sql_help.c:2697 -#: sql_help.c:2770 sql_help.c:2775 sql_help.c:3958 sql_help.c:3967 -#: sql_help.c:3986 sql_help.c:3998 sql_help.c:4425 sql_help.c:4434 -#: sql_help.c:4453 sql_help.c:4465 +#: sql_help.c:215 sql_help.c:950 sql_help.c:953 sql_help.c:2330 sql_help.c:2713 +#: sql_help.c:2790 sql_help.c:2795 sql_help.c:3978 sql_help.c:3987 +#: sql_help.c:4006 sql_help.c:4018 sql_help.c:4445 sql_help.c:4454 +#: sql_help.c:4473 sql_help.c:4485 msgid "schema_name" msgstr "スキーマ名" @@ -4647,57 +4647,57 @@ msgstr "GRANT/REVOKEの省略形は以下のいずれかです:" #: sql_help.c:218 sql_help.c:219 sql_help.c:220 sql_help.c:221 sql_help.c:222 #: sql_help.c:223 sql_help.c:224 sql_help.c:225 sql_help.c:226 sql_help.c:227 #: sql_help.c:228 sql_help.c:229 sql_help.c:598 sql_help.c:634 sql_help.c:702 -#: sql_help.c:852 sql_help.c:999 sql_help.c:1354 sql_help.c:1698 -#: sql_help.c:2503 sql_help.c:2504 sql_help.c:2505 sql_help.c:2506 -#: sql_help.c:2507 sql_help.c:2641 sql_help.c:2728 sql_help.c:2729 -#: sql_help.c:2730 sql_help.c:3303 sql_help.c:3304 sql_help.c:3305 -#: sql_help.c:3306 sql_help.c:3307 sql_help.c:4007 sql_help.c:4011 -#: sql_help.c:4474 sql_help.c:4478 sql_help.c:4794 +#: sql_help.c:852 sql_help.c:1013 sql_help.c:1368 sql_help.c:1712 +#: sql_help.c:2517 sql_help.c:2518 sql_help.c:2519 sql_help.c:2520 +#: sql_help.c:2521 sql_help.c:2655 sql_help.c:2748 sql_help.c:2749 +#: sql_help.c:2750 sql_help.c:3323 sql_help.c:3324 sql_help.c:3325 +#: sql_help.c:3326 sql_help.c:3327 sql_help.c:4027 sql_help.c:4031 +#: sql_help.c:4494 sql_help.c:4498 sql_help.c:4814 msgid "role_name" msgstr "ロール名" -#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:942 sql_help.c:1370 -#: sql_help.c:1372 sql_help.c:1376 sql_help.c:1427 sql_help.c:1439 -#: sql_help.c:1469 sql_help.c:1728 sql_help.c:2285 sql_help.c:2289 -#: sql_help.c:2411 sql_help.c:2417 sql_help.c:2526 sql_help.c:2696 -#: sql_help.c:2833 sql_help.c:2838 sql_help.c:2840 sql_help.c:2962 -#: sql_help.c:2975 sql_help.c:2989 sql_help.c:2998 sql_help.c:3010 -#: sql_help.c:3044 sql_help.c:4060 sql_help.c:4076 sql_help.c:4078 -#: sql_help.c:4176 sql_help.c:4179 sql_help.c:4181 sql_help.c:4644 -#: sql_help.c:4645 sql_help.c:4654 sql_help.c:4701 sql_help.c:4702 -#: sql_help.c:4703 sql_help.c:4704 sql_help.c:4705 sql_help.c:4706 -#: sql_help.c:4747 sql_help.c:4748 sql_help.c:4753 sql_help.c:4758 -#: sql_help.c:4902 sql_help.c:4903 sql_help.c:4912 sql_help.c:4959 -#: sql_help.c:4960 sql_help.c:4961 sql_help.c:4962 sql_help.c:4963 -#: sql_help.c:4964 sql_help.c:5020 sql_help.c:5022 sql_help.c:5089 -#: sql_help.c:5149 sql_help.c:5150 sql_help.c:5159 sql_help.c:5206 -#: sql_help.c:5207 sql_help.c:5208 sql_help.c:5209 sql_help.c:5210 -#: sql_help.c:5211 +#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:957 sql_help.c:1384 +#: sql_help.c:1386 sql_help.c:1390 sql_help.c:1441 sql_help.c:1453 +#: sql_help.c:1483 sql_help.c:1742 sql_help.c:2299 sql_help.c:2303 +#: sql_help.c:2425 sql_help.c:2431 sql_help.c:2540 sql_help.c:2717 +#: sql_help.c:2853 sql_help.c:2858 sql_help.c:2860 sql_help.c:2982 +#: sql_help.c:2995 sql_help.c:3009 sql_help.c:3018 sql_help.c:3030 +#: sql_help.c:3064 sql_help.c:4080 sql_help.c:4096 sql_help.c:4098 +#: sql_help.c:4196 sql_help.c:4199 sql_help.c:4201 sql_help.c:4664 +#: sql_help.c:4665 sql_help.c:4674 sql_help.c:4721 sql_help.c:4722 +#: sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 sql_help.c:4726 +#: sql_help.c:4767 sql_help.c:4768 sql_help.c:4773 sql_help.c:4778 +#: sql_help.c:4922 sql_help.c:4923 sql_help.c:4932 sql_help.c:4979 +#: sql_help.c:4980 sql_help.c:4981 sql_help.c:4982 sql_help.c:4983 +#: sql_help.c:4984 sql_help.c:5040 sql_help.c:5042 sql_help.c:5109 +#: sql_help.c:5169 sql_help.c:5170 sql_help.c:5179 sql_help.c:5226 +#: sql_help.c:5227 sql_help.c:5228 sql_help.c:5229 sql_help.c:5230 +#: sql_help.c:5231 msgid "expression" msgstr "評価式" -#: sql_help.c:263 sql_help.c:2286 +#: sql_help.c:263 sql_help.c:2300 msgid "domain_constraint" msgstr "ドメイン制約" #: sql_help.c:265 sql_help.c:267 sql_help.c:270 sql_help.c:278 sql_help.c:501 -#: sql_help.c:502 sql_help.c:1347 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:1398 sql_help.c:1399 sql_help.c:1426 sql_help.c:1438 -#: sql_help.c:1460 sql_help.c:1892 sql_help.c:1894 sql_help.c:2288 -#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2997 sql_help.c:3009 -#: sql_help.c:4073 +#: sql_help.c:502 sql_help.c:1361 sql_help.c:1410 sql_help.c:1411 +#: sql_help.c:1412 sql_help.c:1413 sql_help.c:1440 sql_help.c:1452 +#: sql_help.c:1474 sql_help.c:1906 sql_help.c:1908 sql_help.c:2302 +#: sql_help.c:2424 sql_help.c:2429 sql_help.c:3017 sql_help.c:3029 +#: sql_help.c:4093 msgid "constraint_name" msgstr "制約名" -#: sql_help.c:268 sql_help.c:1348 +#: sql_help.c:268 sql_help.c:1362 msgid "new_constraint_name" msgstr "新しい制約名" -#: sql_help.c:277 sql_help.c:2287 +#: sql_help.c:277 sql_help.c:2301 msgid "where domain_constraint is:" msgstr "ドメイン制約は以下の通りです:" -#: sql_help.c:344 sql_help.c:1130 +#: sql_help.c:344 sql_help.c:1144 msgid "new_version" msgstr "新しいバージョン" @@ -4713,82 +4713,82 @@ msgstr "メンバーオブジェクトは以下の通りです:" #: sql_help.c:361 sql_help.c:362 sql_help.c:367 sql_help.c:371 sql_help.c:373 #: sql_help.c:375 sql_help.c:384 sql_help.c:385 sql_help.c:386 sql_help.c:387 #: sql_help.c:388 sql_help.c:389 sql_help.c:390 sql_help.c:391 sql_help.c:394 -#: sql_help.c:395 sql_help.c:1884 sql_help.c:1889 sql_help.c:1896 -#: sql_help.c:1897 sql_help.c:1898 sql_help.c:1899 sql_help.c:1900 -#: sql_help.c:1901 sql_help.c:1902 sql_help.c:1907 sql_help.c:1909 -#: sql_help.c:1913 sql_help.c:1915 sql_help.c:1919 sql_help.c:1924 -#: sql_help.c:1925 sql_help.c:1932 sql_help.c:1933 sql_help.c:1934 -#: sql_help.c:1935 sql_help.c:1936 sql_help.c:1937 sql_help.c:1938 -#: sql_help.c:1939 sql_help.c:1940 sql_help.c:1941 sql_help.c:1942 -#: sql_help.c:1947 sql_help.c:1948 sql_help.c:4547 sql_help.c:4552 -#: sql_help.c:4553 sql_help.c:4554 sql_help.c:4555 sql_help.c:4561 -#: sql_help.c:4562 sql_help.c:4567 sql_help.c:4568 sql_help.c:4573 -#: sql_help.c:4574 sql_help.c:4575 sql_help.c:4576 sql_help.c:4577 -#: sql_help.c:4578 +#: sql_help.c:395 sql_help.c:1898 sql_help.c:1903 sql_help.c:1910 +#: sql_help.c:1911 sql_help.c:1912 sql_help.c:1913 sql_help.c:1914 +#: sql_help.c:1915 sql_help.c:1916 sql_help.c:1921 sql_help.c:1923 +#: sql_help.c:1927 sql_help.c:1929 sql_help.c:1933 sql_help.c:1938 +#: sql_help.c:1939 sql_help.c:1946 sql_help.c:1947 sql_help.c:1948 +#: sql_help.c:1949 sql_help.c:1950 sql_help.c:1951 sql_help.c:1952 +#: sql_help.c:1953 sql_help.c:1954 sql_help.c:1955 sql_help.c:1956 +#: sql_help.c:1961 sql_help.c:1962 sql_help.c:4567 sql_help.c:4572 +#: sql_help.c:4573 sql_help.c:4574 sql_help.c:4575 sql_help.c:4581 +#: sql_help.c:4582 sql_help.c:4587 sql_help.c:4588 sql_help.c:4593 +#: sql_help.c:4594 sql_help.c:4595 sql_help.c:4596 sql_help.c:4597 +#: sql_help.c:4598 msgid "object_name" msgstr "オブジェクト名" -#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 +#: sql_help.c:353 sql_help.c:1899 sql_help.c:4570 msgid "aggregate_name" msgstr "集約関数名" -#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 -#: sql_help.c:2185 sql_help.c:3432 +#: sql_help.c:355 sql_help.c:1901 sql_help.c:2193 sql_help.c:2197 +#: sql_help.c:2199 sql_help.c:3452 msgid "source_type" msgstr "変換前の型" -#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 -#: sql_help.c:2186 sql_help.c:3433 +#: sql_help.c:356 sql_help.c:1902 sql_help.c:2194 sql_help.c:2198 +#: sql_help.c:2200 sql_help.c:3453 msgid "target_type" msgstr "変換後の型" -#: sql_help.c:363 sql_help.c:816 sql_help.c:1903 sql_help.c:2181 -#: sql_help.c:2224 sql_help.c:2304 sql_help.c:2584 sql_help.c:2615 -#: sql_help.c:3190 sql_help.c:4449 sql_help.c:4556 sql_help.c:4673 -#: sql_help.c:4677 sql_help.c:4681 sql_help.c:4684 sql_help.c:4931 -#: sql_help.c:4935 sql_help.c:4939 sql_help.c:4942 sql_help.c:5178 -#: sql_help.c:5182 sql_help.c:5186 sql_help.c:5189 +#: sql_help.c:363 sql_help.c:816 sql_help.c:1917 sql_help.c:2195 +#: sql_help.c:2238 sql_help.c:2318 sql_help.c:2598 sql_help.c:2629 +#: sql_help.c:3210 sql_help.c:4469 sql_help.c:4576 sql_help.c:4693 +#: sql_help.c:4697 sql_help.c:4701 sql_help.c:4704 sql_help.c:4951 +#: sql_help.c:4955 sql_help.c:4959 sql_help.c:4962 sql_help.c:5198 +#: sql_help.c:5202 sql_help.c:5206 sql_help.c:5209 msgid "function_name" msgstr "関数名" -#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1924 sql_help.c:2622 msgid "operator_name" msgstr "演算子名" -#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1911 -#: sql_help.c:2585 sql_help.c:3556 +#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1925 +#: sql_help.c:2599 sql_help.c:3576 msgid "left_type" msgstr "左辺の型" -#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1912 -#: sql_help.c:2586 sql_help.c:3557 +#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1926 +#: sql_help.c:2600 sql_help.c:3577 msgid "right_type" msgstr "右辺の型" #: sql_help.c:372 sql_help.c:374 sql_help.c:772 sql_help.c:775 sql_help.c:778 #: sql_help.c:807 sql_help.c:819 sql_help.c:827 sql_help.c:830 sql_help.c:833 -#: sql_help.c:1447 sql_help.c:1914 sql_help.c:1916 sql_help.c:2605 -#: sql_help.c:2626 sql_help.c:3018 sql_help.c:3566 sql_help.c:3575 +#: sql_help.c:1461 sql_help.c:1928 sql_help.c:1930 sql_help.c:2619 +#: sql_help.c:2640 sql_help.c:3038 sql_help.c:3586 sql_help.c:3595 msgid "index_method" msgstr "インデックスメソッド" -#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 +#: sql_help.c:376 sql_help.c:1934 sql_help.c:4583 msgid "procedure_name" msgstr "プロシージャ名" -#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 +#: sql_help.c:380 sql_help.c:1940 sql_help.c:4002 sql_help.c:4589 msgid "routine_name" msgstr "ルーチン名" -#: sql_help.c:392 sql_help.c:1416 sql_help.c:1943 sql_help.c:2460 -#: sql_help.c:2666 sql_help.c:2970 sql_help.c:3157 sql_help.c:3737 -#: sql_help.c:4004 sql_help.c:4471 +#: sql_help.c:392 sql_help.c:1430 sql_help.c:1957 sql_help.c:2474 +#: sql_help.c:2680 sql_help.c:2990 sql_help.c:3177 sql_help.c:3757 +#: sql_help.c:4024 sql_help.c:4491 msgid "type_name" msgstr "型名" -#: sql_help.c:393 sql_help.c:1944 sql_help.c:2459 sql_help.c:2665 -#: sql_help.c:3158 sql_help.c:3390 sql_help.c:3738 sql_help.c:3989 -#: sql_help.c:4456 +#: sql_help.c:393 sql_help.c:1958 sql_help.c:2473 sql_help.c:2679 +#: sql_help.c:3178 sql_help.c:3410 sql_help.c:3758 sql_help.c:4009 +#: sql_help.c:4476 msgid "lang_name" msgstr "言語名" @@ -4796,149 +4796,149 @@ msgstr "言語名" msgid "and aggregate_signature is:" msgstr "集約関数のシグニチャーは以下の通りです:" -#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 +#: sql_help.c:419 sql_help.c:2060 sql_help.c:2343 msgid "handler_function" msgstr "ハンドラー関数" -#: sql_help.c:420 sql_help.c:2330 +#: sql_help.c:420 sql_help.c:2344 msgid "validator_function" msgstr "バリデーター関数" -#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1033 -#: sql_help.c:1342 sql_help.c:1625 +#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1047 +#: sql_help.c:1356 sql_help.c:1639 msgid "action" msgstr "アクション" #: sql_help.c:470 sql_help.c:477 sql_help.c:481 sql_help.c:482 sql_help.c:485 #: sql_help.c:487 sql_help.c:488 sql_help.c:489 sql_help.c:491 sql_help.c:494 #: sql_help.c:496 sql_help.c:497 sql_help.c:695 sql_help.c:705 sql_help.c:707 -#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:941 sql_help.c:1111 -#: sql_help.c:1344 sql_help.c:1362 sql_help.c:1366 sql_help.c:1367 -#: sql_help.c:1371 sql_help.c:1373 sql_help.c:1374 sql_help.c:1375 -#: sql_help.c:1377 sql_help.c:1378 sql_help.c:1380 sql_help.c:1383 -#: sql_help.c:1384 sql_help.c:1386 sql_help.c:1389 sql_help.c:1391 -#: sql_help.c:1392 sql_help.c:1440 sql_help.c:1441 sql_help.c:1442 -#: sql_help.c:1444 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1463 sql_help.c:1468 sql_help.c:1475 sql_help.c:1476 -#: sql_help.c:1727 sql_help.c:1730 sql_help.c:1734 sql_help.c:1770 -#: sql_help.c:1891 sql_help.c:2008 sql_help.c:2014 sql_help.c:2028 -#: sql_help.c:2029 sql_help.c:2030 sql_help.c:2387 sql_help.c:2402 -#: sql_help.c:2416 sql_help.c:2457 sql_help.c:2525 sql_help.c:2531 -#: sql_help.c:2564 sql_help.c:2695 sql_help.c:2802 sql_help.c:2837 -#: sql_help.c:2839 sql_help.c:2952 sql_help.c:2961 sql_help.c:2971 -#: sql_help.c:2974 sql_help.c:2984 sql_help.c:2988 sql_help.c:3011 -#: sql_help.c:3012 sql_help.c:3013 sql_help.c:3015 sql_help.c:3016 -#: sql_help.c:3023 sql_help.c:3024 sql_help.c:3038 sql_help.c:3043 -#: sql_help.c:3050 sql_help.c:3051 sql_help.c:3067 sql_help.c:3193 -#: sql_help.c:3333 sql_help.c:3961 sql_help.c:3962 sql_help.c:4059 -#: sql_help.c:4075 sql_help.c:4077 sql_help.c:4079 sql_help.c:4175 -#: sql_help.c:4178 sql_help.c:4180 sql_help.c:4182 sql_help.c:4428 -#: sql_help.c:4429 sql_help.c:4549 sql_help.c:4710 sql_help.c:4717 -#: sql_help.c:4719 sql_help.c:4968 sql_help.c:4975 sql_help.c:4977 -#: sql_help.c:5019 sql_help.c:5021 sql_help.c:5023 sql_help.c:5077 -#: sql_help.c:5215 sql_help.c:5222 sql_help.c:5224 +#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:956 sql_help.c:1125 +#: sql_help.c:1358 sql_help.c:1376 sql_help.c:1380 sql_help.c:1381 +#: sql_help.c:1385 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1391 sql_help.c:1392 sql_help.c:1394 sql_help.c:1397 +#: sql_help.c:1398 sql_help.c:1400 sql_help.c:1403 sql_help.c:1405 +#: sql_help.c:1406 sql_help.c:1454 sql_help.c:1455 sql_help.c:1456 +#: sql_help.c:1458 sql_help.c:1459 sql_help.c:1466 sql_help.c:1467 +#: sql_help.c:1477 sql_help.c:1482 sql_help.c:1489 sql_help.c:1490 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:1748 sql_help.c:1784 +#: sql_help.c:1905 sql_help.c:2022 sql_help.c:2028 sql_help.c:2042 +#: sql_help.c:2043 sql_help.c:2044 sql_help.c:2401 sql_help.c:2416 +#: sql_help.c:2430 sql_help.c:2471 sql_help.c:2539 sql_help.c:2545 +#: sql_help.c:2578 sql_help.c:2716 sql_help.c:2822 sql_help.c:2857 +#: sql_help.c:2859 sql_help.c:2972 sql_help.c:2981 sql_help.c:2991 +#: sql_help.c:2994 sql_help.c:3004 sql_help.c:3008 sql_help.c:3031 +#: sql_help.c:3032 sql_help.c:3033 sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:3043 sql_help.c:3044 sql_help.c:3058 sql_help.c:3063 +#: sql_help.c:3070 sql_help.c:3071 sql_help.c:3087 sql_help.c:3213 +#: sql_help.c:3353 sql_help.c:3981 sql_help.c:3982 sql_help.c:4079 +#: sql_help.c:4095 sql_help.c:4097 sql_help.c:4099 sql_help.c:4195 +#: sql_help.c:4198 sql_help.c:4200 sql_help.c:4202 sql_help.c:4448 +#: sql_help.c:4449 sql_help.c:4569 sql_help.c:4730 sql_help.c:4737 +#: sql_help.c:4739 sql_help.c:4988 sql_help.c:4995 sql_help.c:4997 +#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5043 sql_help.c:5097 +#: sql_help.c:5235 sql_help.c:5242 sql_help.c:5244 msgid "column_name" msgstr "列名" -#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1359 sql_help.c:1749 msgid "new_column_name" msgstr "新しい列名" -#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1054 -#: sql_help.c:1361 sql_help.c:1635 +#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1068 +#: sql_help.c:1375 sql_help.c:1649 msgid "where action is one of:" msgstr "アクションは以下のいずれかです:" -#: sql_help.c:478 sql_help.c:483 sql_help.c:1103 sql_help.c:1363 -#: sql_help.c:1368 sql_help.c:1637 sql_help.c:1641 sql_help.c:2283 -#: sql_help.c:2388 sql_help.c:2604 sql_help.c:2795 sql_help.c:2953 -#: sql_help.c:3240 sql_help.c:4234 +#: sql_help.c:478 sql_help.c:483 sql_help.c:1117 sql_help.c:1377 +#: sql_help.c:1382 sql_help.c:1651 sql_help.c:1655 sql_help.c:2297 +#: sql_help.c:2402 sql_help.c:2618 sql_help.c:2815 sql_help.c:2973 +#: sql_help.c:3260 sql_help.c:4254 msgid "data_type" msgstr "データ型" -#: sql_help.c:479 sql_help.c:484 sql_help.c:1364 sql_help.c:1369 -#: sql_help.c:1470 sql_help.c:1638 sql_help.c:1642 sql_help.c:2284 -#: sql_help.c:2391 sql_help.c:2527 sql_help.c:2955 sql_help.c:2963 -#: sql_help.c:2976 sql_help.c:2990 sql_help.c:3045 sql_help.c:3241 -#: sql_help.c:3247 sql_help.c:4070 +#: sql_help.c:479 sql_help.c:484 sql_help.c:1378 sql_help.c:1383 +#: sql_help.c:1484 sql_help.c:1652 sql_help.c:1656 sql_help.c:2298 +#: sql_help.c:2405 sql_help.c:2541 sql_help.c:2975 sql_help.c:2983 +#: sql_help.c:2996 sql_help.c:3010 sql_help.c:3065 sql_help.c:3261 +#: sql_help.c:3267 sql_help.c:4090 msgid "collation" msgstr "照合順序" -#: sql_help.c:480 sql_help.c:1365 sql_help.c:2392 sql_help.c:2403 -#: sql_help.c:2956 sql_help.c:2972 sql_help.c:2985 +#: sql_help.c:480 sql_help.c:1379 sql_help.c:2406 sql_help.c:2417 +#: sql_help.c:2976 sql_help.c:2992 sql_help.c:3005 msgid "column_constraint" msgstr "カラム制約" -#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1399 sql_help.c:5091 msgid "integer" msgstr "整数" -#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 -#: sql_help.c:1390 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1401 +#: sql_help.c:1404 msgid "attribute_option" msgstr "属性オプション" -#: sql_help.c:500 sql_help.c:1394 sql_help.c:2393 sql_help.c:2404 -#: sql_help.c:2957 sql_help.c:2973 sql_help.c:2986 +#: sql_help.c:500 sql_help.c:1408 sql_help.c:2407 sql_help.c:2418 +#: sql_help.c:2977 sql_help.c:2993 sql_help.c:3006 msgid "table_constraint" msgstr "テーブル制約" -#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1400 -#: sql_help.c:1401 sql_help.c:1402 sql_help.c:1403 sql_help.c:1945 +#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1414 +#: sql_help.c:1415 sql_help.c:1416 sql_help.c:1417 sql_help.c:1959 msgid "trigger_name" msgstr "トリガー名" -#: sql_help.c:507 sql_help.c:508 sql_help.c:1414 sql_help.c:1415 -#: sql_help.c:2396 sql_help.c:2401 sql_help.c:2960 sql_help.c:2983 +#: sql_help.c:507 sql_help.c:508 sql_help.c:1428 sql_help.c:1429 +#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2980 sql_help.c:3003 msgid "parent_table" msgstr "親テーブル" -#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1053 -#: sql_help.c:1594 sql_help.c:2315 +#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1067 +#: sql_help.c:1608 sql_help.c:2329 msgid "extension_name" msgstr "拡張名" -#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 +#: sql_help.c:569 sql_help.c:1069 sql_help.c:2475 msgid "execution_cost" msgstr "実行コスト" -#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 +#: sql_help.c:570 sql_help.c:1070 sql_help.c:2476 msgid "result_rows" msgstr "結果の行数" -#: sql_help.c:571 sql_help.c:2463 +#: sql_help.c:571 sql_help.c:2477 msgid "support_function" msgstr "サポート関数" -#: sql_help.c:593 sql_help.c:595 sql_help.c:978 sql_help.c:986 sql_help.c:990 -#: sql_help.c:993 sql_help.c:996 sql_help.c:1677 sql_help.c:1685 -#: sql_help.c:1689 sql_help.c:1692 sql_help.c:1695 sql_help.c:2771 -#: sql_help.c:2773 sql_help.c:2776 sql_help.c:2777 sql_help.c:3959 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:3965 sql_help.c:3968 -#: sql_help.c:3969 sql_help.c:3971 sql_help.c:3972 sql_help.c:3974 -#: sql_help.c:3975 sql_help.c:3977 sql_help.c:3978 sql_help.c:3980 -#: sql_help.c:3981 sql_help.c:3987 sql_help.c:3988 sql_help.c:3990 -#: sql_help.c:3991 sql_help.c:3993 sql_help.c:3994 sql_help.c:3996 -#: sql_help.c:3997 sql_help.c:3999 sql_help.c:4000 sql_help.c:4002 -#: sql_help.c:4003 sql_help.c:4005 sql_help.c:4006 sql_help.c:4008 -#: sql_help.c:4009 sql_help.c:4426 sql_help.c:4427 sql_help.c:4431 -#: sql_help.c:4432 sql_help.c:4435 sql_help.c:4436 sql_help.c:4438 -#: sql_help.c:4439 sql_help.c:4441 sql_help.c:4442 sql_help.c:4444 -#: sql_help.c:4445 sql_help.c:4447 sql_help.c:4448 sql_help.c:4454 -#: sql_help.c:4455 sql_help.c:4457 sql_help.c:4458 sql_help.c:4460 -#: sql_help.c:4461 sql_help.c:4463 sql_help.c:4464 sql_help.c:4466 -#: sql_help.c:4467 sql_help.c:4469 sql_help.c:4470 sql_help.c:4472 -#: sql_help.c:4473 sql_help.c:4475 sql_help.c:4476 +#: sql_help.c:593 sql_help.c:595 sql_help.c:992 sql_help.c:1000 sql_help.c:1004 +#: sql_help.c:1007 sql_help.c:1010 sql_help.c:1691 sql_help.c:1699 +#: sql_help.c:1703 sql_help.c:1706 sql_help.c:1709 sql_help.c:2791 +#: sql_help.c:2793 sql_help.c:2796 sql_help.c:2797 sql_help.c:3979 +#: sql_help.c:3980 sql_help.c:3984 sql_help.c:3985 sql_help.c:3988 +#: sql_help.c:3989 sql_help.c:3991 sql_help.c:3992 sql_help.c:3994 +#: sql_help.c:3995 sql_help.c:3997 sql_help.c:3998 sql_help.c:4000 +#: sql_help.c:4001 sql_help.c:4007 sql_help.c:4008 sql_help.c:4010 +#: sql_help.c:4011 sql_help.c:4013 sql_help.c:4014 sql_help.c:4016 +#: sql_help.c:4017 sql_help.c:4019 sql_help.c:4020 sql_help.c:4022 +#: sql_help.c:4023 sql_help.c:4025 sql_help.c:4026 sql_help.c:4028 +#: sql_help.c:4029 sql_help.c:4446 sql_help.c:4447 sql_help.c:4451 +#: sql_help.c:4452 sql_help.c:4455 sql_help.c:4456 sql_help.c:4458 +#: sql_help.c:4459 sql_help.c:4461 sql_help.c:4462 sql_help.c:4464 +#: sql_help.c:4465 sql_help.c:4467 sql_help.c:4468 sql_help.c:4474 +#: sql_help.c:4475 sql_help.c:4477 sql_help.c:4478 sql_help.c:4480 +#: sql_help.c:4481 sql_help.c:4483 sql_help.c:4484 sql_help.c:4486 +#: sql_help.c:4487 sql_help.c:4489 sql_help.c:4490 sql_help.c:4492 +#: sql_help.c:4493 sql_help.c:4495 sql_help.c:4496 msgid "role_specification" msgstr "ロールの指定" -#: sql_help.c:594 sql_help.c:596 sql_help.c:1708 sql_help.c:2250 -#: sql_help.c:2779 sql_help.c:3318 sql_help.c:3771 sql_help.c:4804 +#: sql_help.c:594 sql_help.c:596 sql_help.c:1722 sql_help.c:2264 +#: sql_help.c:2799 sql_help.c:3338 sql_help.c:3791 sql_help.c:4824 msgid "user_name" msgstr "ユーザー名" -#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 -#: sql_help.c:4010 sql_help.c:4477 +#: sql_help.c:597 sql_help.c:1012 sql_help.c:1711 sql_help.c:2798 +#: sql_help.c:4030 sql_help.c:4497 msgid "where role_specification can be:" msgstr "ロール指定は以下の通りです:" @@ -4946,22 +4946,22 @@ msgstr "ロール指定は以下の通りです:" msgid "group_name" msgstr "グループ名" -#: sql_help.c:620 sql_help.c:1466 sql_help.c:2262 sql_help.c:2534 -#: sql_help.c:2568 sql_help.c:2968 sql_help.c:2981 sql_help.c:2995 -#: sql_help.c:3041 sql_help.c:3071 sql_help.c:3083 sql_help.c:4001 -#: sql_help.c:4468 +#: sql_help.c:620 sql_help.c:1480 sql_help.c:2276 sql_help.c:2548 +#: sql_help.c:2582 sql_help.c:2988 sql_help.c:3001 sql_help.c:3015 +#: sql_help.c:3061 sql_help.c:3091 sql_help.c:3103 sql_help.c:4021 +#: sql_help.c:4488 msgid "tablespace_name" msgstr "テーブル空間名" -#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 -#: sql_help.c:1461 sql_help.c:1823 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1422 sql_help.c:1432 +#: sql_help.c:1475 sql_help.c:1837 msgid "index_name" msgstr "インデックス名" -#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1411 -#: sql_help.c:1413 sql_help.c:1464 sql_help.c:2532 sql_help.c:2566 -#: sql_help.c:2966 sql_help.c:2979 sql_help.c:2993 sql_help.c:3039 -#: sql_help.c:3069 +#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1425 +#: sql_help.c:1427 sql_help.c:1478 sql_help.c:2546 sql_help.c:2580 +#: sql_help.c:2986 sql_help.c:2999 sql_help.c:3013 sql_help.c:3059 +#: sql_help.c:3089 msgid "storage_parameter" msgstr "ストレージパラメータ" @@ -4969,1916 +4969,1924 @@ msgstr "ストレージパラメータ" msgid "column_number" msgstr "列番号" -#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 +#: sql_help.c:655 sql_help.c:1922 sql_help.c:4580 msgid "large_object_oid" msgstr "ラージオブジェクトのOID" -#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 +#: sql_help.c:714 sql_help.c:1407 sql_help.c:2974 msgid "compression_method" msgstr "圧縮方式" -#: sql_help.c:716 sql_help.c:1409 +#: sql_help.c:716 sql_help.c:1423 msgid "new_access_method" msgstr "新しいアクセスメソッド" -#: sql_help.c:753 sql_help.c:2589 +#: sql_help.c:753 sql_help.c:2603 msgid "res_proc" msgstr "制約選択評価関数" -#: sql_help.c:754 sql_help.c:2590 +#: sql_help.c:754 sql_help.c:2604 msgid "join_proc" msgstr "結合選択評価関数" -#: sql_help.c:755 sql_help.c:2587 +#: sql_help.c:755 sql_help.c:2601 msgid "com_op" msgstr "交代演算子" -#: sql_help.c:756 sql_help.c:2588 +#: sql_help.c:756 sql_help.c:2602 msgid "neg_op" msgstr "否定演算子" -#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2621 msgid "strategy_number" msgstr "戦略番号" #: sql_help.c:810 sql_help.c:811 sql_help.c:814 sql_help.c:815 sql_help.c:821 -#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2609 sql_help.c:2610 -#: sql_help.c:2613 sql_help.c:2614 +#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2623 sql_help.c:2624 +#: sql_help.c:2627 sql_help.c:2628 msgid "op_type" msgstr "演算子の型" -#: sql_help.c:812 sql_help.c:2611 +#: sql_help.c:812 sql_help.c:2625 msgid "sort_family_name" msgstr "ソートファミリー名" -#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2626 msgid "support_number" msgstr "サポート番号" -#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 -#: sql_help.c:3162 +#: sql_help.c:817 sql_help.c:2196 sql_help.c:2630 sql_help.c:3180 +#: sql_help.c:3182 msgid "argument_type" msgstr "引数の型" -#: sql_help.c:848 sql_help.c:851 sql_help.c:940 sql_help.c:1069 sql_help.c:1110 -#: sql_help.c:1590 sql_help.c:1593 sql_help.c:1769 sql_help.c:1822 -#: sql_help.c:1893 sql_help.c:1918 sql_help.c:1931 sql_help.c:1946 -#: sql_help.c:2007 sql_help.c:2013 sql_help.c:2386 sql_help.c:2400 -#: sql_help.c:2523 sql_help.c:2563 sql_help.c:2640 sql_help.c:2694 -#: sql_help.c:2747 sql_help.c:2801 sql_help.c:2834 sql_help.c:2841 -#: sql_help.c:2951 sql_help.c:2969 sql_help.c:2982 sql_help.c:3066 -#: sql_help.c:3186 sql_help.c:3368 sql_help.c:3592 sql_help.c:3641 -#: sql_help.c:3747 sql_help.c:3957 sql_help.c:3963 sql_help.c:4024 -#: sql_help.c:4057 sql_help.c:4424 sql_help.c:4430 sql_help.c:4548 -#: sql_help.c:4661 sql_help.c:4724 sql_help.c:4763 sql_help.c:4919 -#: sql_help.c:4982 sql_help.c:5017 sql_help.c:5076 sql_help.c:5166 -#: sql_help.c:5229 +#: sql_help.c:848 sql_help.c:851 sql_help.c:952 sql_help.c:955 sql_help.c:1083 +#: sql_help.c:1124 sql_help.c:1604 sql_help.c:1607 sql_help.c:1783 +#: sql_help.c:1836 sql_help.c:1907 sql_help.c:1932 sql_help.c:1945 +#: sql_help.c:1960 sql_help.c:2021 sql_help.c:2027 sql_help.c:2400 +#: sql_help.c:2414 sql_help.c:2537 sql_help.c:2577 sql_help.c:2654 +#: sql_help.c:2715 sql_help.c:2767 sql_help.c:2821 sql_help.c:2854 +#: sql_help.c:2861 sql_help.c:2971 sql_help.c:2989 sql_help.c:3002 +#: sql_help.c:3086 sql_help.c:3206 sql_help.c:3388 sql_help.c:3612 +#: sql_help.c:3661 sql_help.c:3767 sql_help.c:3977 sql_help.c:3983 +#: sql_help.c:4044 sql_help.c:4077 sql_help.c:4444 sql_help.c:4450 +#: sql_help.c:4568 sql_help.c:4681 sql_help.c:4744 sql_help.c:4783 +#: sql_help.c:4939 sql_help.c:5002 sql_help.c:5037 sql_help.c:5096 +#: sql_help.c:5186 sql_help.c:5249 msgid "table_name" msgstr "テーブル名" -#: sql_help.c:853 sql_help.c:2642 +#: sql_help.c:853 sql_help.c:2656 msgid "using_expression" msgstr "USING式" -#: sql_help.c:854 sql_help.c:2643 +#: sql_help.c:854 sql_help.c:2657 msgid "check_expression" msgstr "CHECK式" -#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 +#: sql_help.c:936 sql_help.c:938 sql_help.c:2708 msgid "publication_object" msgstr "発行オブジェクト" -#: sql_help.c:933 sql_help.c:2691 +#: sql_help.c:940 +msgid "publication_drop_object" +msgstr "削除発行オブジェクト" + +#: sql_help.c:942 sql_help.c:2709 msgid "publication_parameter" msgstr "パブリケーションパラメータ" -#: sql_help.c:939 sql_help.c:2693 +#: sql_help.c:948 sql_help.c:2711 msgid "where publication_object is one of:" msgstr "発行オブジェクトは以下のいずれかです:" -#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 -#: sql_help.c:3301 +#: sql_help.c:949 sql_help.c:1777 sql_help.c:2712 sql_help.c:5080 +msgid "table_and_columns" +msgstr "テーブルおよび列" + +#: sql_help.c:951 +msgid "and publication_drop_object is one of:" +msgstr "また、削除発行オブジェクトは以下のいずれかです:" + +#: sql_help.c:954 sql_help.c:1782 sql_help.c:2714 sql_help.c:5095 +msgid "and table_and_columns is:" +msgstr "そしてテーブルと列の指定は以下の通りです:" + +#: sql_help.c:996 sql_help.c:1695 sql_help.c:2515 sql_help.c:2746 +#: sql_help.c:3321 msgid "password" msgstr "パスワード" -#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 -#: sql_help.c:3302 +#: sql_help.c:997 sql_help.c:1696 sql_help.c:2516 sql_help.c:2747 +#: sql_help.c:3322 msgid "timestamp" msgstr "タイムスタンプ" -#: sql_help.c:987 sql_help.c:991 sql_help.c:994 sql_help.c:997 sql_help.c:1686 -#: sql_help.c:1690 sql_help.c:1693 sql_help.c:1696 sql_help.c:3970 -#: sql_help.c:4437 +#: sql_help.c:1001 sql_help.c:1005 sql_help.c:1008 sql_help.c:1011 +#: sql_help.c:1700 sql_help.c:1704 sql_help.c:1707 sql_help.c:1710 +#: sql_help.c:3990 sql_help.c:4457 msgid "database_name" msgstr "データベース名" -#: sql_help.c:1104 sql_help.c:2796 +#: sql_help.c:1118 sql_help.c:2816 msgid "increment" msgstr "増分値" -#: sql_help.c:1105 sql_help.c:2797 +#: sql_help.c:1119 sql_help.c:2817 msgid "minvalue" msgstr "最小値" -#: sql_help.c:1106 sql_help.c:2798 +#: sql_help.c:1120 sql_help.c:2818 msgid "maxvalue" msgstr "最大値" -#: sql_help.c:1107 sql_help.c:2799 sql_help.c:4657 sql_help.c:4761 -#: sql_help.c:4915 sql_help.c:5093 sql_help.c:5162 +#: sql_help.c:1121 sql_help.c:2819 sql_help.c:4677 sql_help.c:4781 +#: sql_help.c:4935 sql_help.c:5113 sql_help.c:5182 msgid "start" msgstr "開始番号" -#: sql_help.c:1108 sql_help.c:1382 +#: sql_help.c:1122 sql_help.c:1396 msgid "restart" msgstr "再開始番号" -#: sql_help.c:1109 sql_help.c:2800 +#: sql_help.c:1123 sql_help.c:2820 msgid "cache" msgstr "キャッシュ割り当て数" -#: sql_help.c:1154 +#: sql_help.c:1168 msgid "new_target" msgstr "新しいターゲット" -#: sql_help.c:1173 sql_help.c:2853 +#: sql_help.c:1187 sql_help.c:2873 msgid "conninfo" msgstr "接続文字列" -#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 +#: sql_help.c:1189 sql_help.c:1193 sql_help.c:1197 sql_help.c:2874 msgid "publication_name" msgstr "パブリケーション名" -#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 +#: sql_help.c:1190 sql_help.c:1194 sql_help.c:1198 msgid "publication_option" msgstr "パブリケーション・オプション" -#: sql_help.c:1187 +#: sql_help.c:1201 msgid "refresh_option" msgstr "{REFRESH PUBLICATION の追加オプション}" -#: sql_help.c:1192 sql_help.c:2855 +#: sql_help.c:1206 sql_help.c:2875 msgid "subscription_parameter" msgstr "{SUBSCRIPTION パラメータ名}" -#: sql_help.c:1195 +#: sql_help.c:1209 msgid "skip_option" msgstr "スキップオプション" -#: sql_help.c:1357 sql_help.c:1360 +#: sql_help.c:1371 sql_help.c:1374 msgid "partition_name" msgstr "パーティション名" -#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 +#: sql_help.c:1372 sql_help.c:2419 sql_help.c:3007 msgid "partition_bound_spec" msgstr "パーティション境界の仕様" -#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 +#: sql_help.c:1393 sql_help.c:1444 sql_help.c:3021 msgid "sequence_options" msgstr "シーケンスオプション" -#: sql_help.c:1381 +#: sql_help.c:1395 msgid "sequence_option" msgstr "シーケンスオプション" -#: sql_help.c:1395 +#: sql_help.c:1409 msgid "table_constraint_using_index" msgstr "インデックスを使うテーブルの制約" -#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 +#: sql_help.c:1418 sql_help.c:1419 sql_help.c:1420 sql_help.c:1421 msgid "rewrite_rule_name" msgstr "書き換えルール名" -#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 +#: sql_help.c:1433 sql_help.c:2433 sql_help.c:3051 msgid "and partition_bound_spec is:" msgstr "パーティション境界の仕様は以下の通りです:" -#: sql_help.c:1420 sql_help.c:1421 sql_help.c:1422 sql_help.c:2420 -#: sql_help.c:2421 sql_help.c:2422 sql_help.c:3032 sql_help.c:3033 -#: sql_help.c:3034 +#: sql_help.c:1434 sql_help.c:1435 sql_help.c:1436 sql_help.c:2434 +#: sql_help.c:2435 sql_help.c:2436 sql_help.c:3052 sql_help.c:3053 +#: sql_help.c:3054 msgid "partition_bound_expr" msgstr "パーティション境界式" -#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 -#: sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:1437 sql_help.c:1438 sql_help.c:2437 sql_help.c:2438 +#: sql_help.c:3055 sql_help.c:3056 msgid "numeric_literal" msgstr "numericリテラル" -#: sql_help.c:1425 +#: sql_help.c:1439 msgid "and column_constraint is:" msgstr "そしてカラム制約は以下の通りです:" -#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 -#: sql_help.c:2999 +#: sql_help.c:1442 sql_help.c:2426 sql_help.c:2469 sql_help.c:2678 +#: sql_help.c:3019 msgid "default_expr" msgstr "デフォルト表現" -#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 +#: sql_help.c:1443 sql_help.c:2427 sql_help.c:3020 msgid "generation_expr" msgstr "生成式" -#: sql_help.c:1431 sql_help.c:1432 sql_help.c:1443 sql_help.c:1446 -#: sql_help.c:1450 sql_help.c:3002 sql_help.c:3003 sql_help.c:3014 -#: sql_help.c:3017 sql_help.c:3021 +#: sql_help.c:1445 sql_help.c:1446 sql_help.c:1457 sql_help.c:1460 +#: sql_help.c:1464 sql_help.c:3022 sql_help.c:3023 sql_help.c:3034 +#: sql_help.c:3037 sql_help.c:3041 msgid "index_parameters" msgstr "インデックスパラメータ" -#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 +#: sql_help.c:1447 sql_help.c:1468 sql_help.c:3024 sql_help.c:3045 msgid "reftable" msgstr "参照テーブル" -#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 -#: sql_help.c:3026 sql_help.c:3027 +#: sql_help.c:1448 sql_help.c:1469 sql_help.c:1470 sql_help.c:3025 +#: sql_help.c:3046 sql_help.c:3047 msgid "refcolumn" msgstr "参照列" -#: sql_help.c:1435 sql_help.c:1436 sql_help.c:1457 sql_help.c:1458 -#: sql_help.c:3006 sql_help.c:3007 sql_help.c:3028 sql_help.c:3029 +#: sql_help.c:1449 sql_help.c:1450 sql_help.c:1471 sql_help.c:1472 +#: sql_help.c:3026 sql_help.c:3027 sql_help.c:3048 sql_help.c:3049 msgid "referential_action" msgstr "参照動作" -#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 +#: sql_help.c:1451 sql_help.c:2428 sql_help.c:3028 msgid "and table_constraint is:" msgstr "テーブル制約は以下の通りです:" -#: sql_help.c:1448 sql_help.c:3019 +#: sql_help.c:1462 sql_help.c:3039 msgid "exclude_element" msgstr "除外対象要素" -#: sql_help.c:1449 sql_help.c:3020 sql_help.c:4655 sql_help.c:4759 -#: sql_help.c:4913 sql_help.c:5091 sql_help.c:5160 +#: sql_help.c:1463 sql_help.c:3040 sql_help.c:4675 sql_help.c:4779 +#: sql_help.c:4933 sql_help.c:5111 sql_help.c:5180 msgid "operator" msgstr "演算子" -#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 +#: sql_help.c:1465 sql_help.c:2549 sql_help.c:3042 msgid "predicate" msgstr "インデックスの述語" -#: sql_help.c:1459 +#: sql_help.c:1473 msgid "and table_constraint_using_index is:" msgstr "テーブル制約は以下の通りです:" -#: sql_help.c:1462 sql_help.c:3037 +#: sql_help.c:1476 sql_help.c:3057 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "UNIQUE, PRIMARY KEY, EXCLUDE 制約のインデックスパラメータは以下の通りです:" -#: sql_help.c:1467 sql_help.c:3042 +#: sql_help.c:1481 sql_help.c:3062 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "EXCLUDE 制約の除外対象要素は以下の通りです:" -#: sql_help.c:1471 sql_help.c:2528 sql_help.c:2964 sql_help.c:2977 -#: sql_help.c:2991 sql_help.c:3046 sql_help.c:4071 +#: sql_help.c:1485 sql_help.c:2542 sql_help.c:2984 sql_help.c:2997 +#: sql_help.c:3011 sql_help.c:3066 sql_help.c:4091 msgid "opclass" msgstr "演算子クラス" -#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 +#: sql_help.c:1486 sql_help.c:2543 sql_help.c:3067 msgid "opclass_parameter" msgstr "演算子クラスパラメータ" -#: sql_help.c:1474 sql_help.c:3049 +#: sql_help.c:1488 sql_help.c:3069 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "FOREIGN KEY/REFERENCES制約の参照動作は以下の通り:" -#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 +#: sql_help.c:1506 sql_help.c:1509 sql_help.c:3106 msgid "tablespace_option" msgstr "テーブル空間のオプション" -#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 +#: sql_help.c:1530 sql_help.c:1533 sql_help.c:1539 sql_help.c:1543 msgid "token_type" msgstr "トークンの型" -#: sql_help.c:1517 sql_help.c:1520 +#: sql_help.c:1531 sql_help.c:1534 msgid "dictionary_name" msgstr "辞書名" -#: sql_help.c:1522 sql_help.c:1526 +#: sql_help.c:1536 sql_help.c:1540 msgid "old_dictionary" msgstr "元の辞書" -#: sql_help.c:1523 sql_help.c:1527 +#: sql_help.c:1537 sql_help.c:1541 msgid "new_dictionary" msgstr "新しい辞書" -#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 -#: sql_help.c:3239 +#: sql_help.c:1636 sql_help.c:1650 sql_help.c:1653 sql_help.c:1654 +#: sql_help.c:3259 msgid "attribute_name" msgstr "属性名" -#: sql_help.c:1623 +#: sql_help.c:1637 msgid "new_attribute_name" msgstr "新しい属性名" -#: sql_help.c:1627 sql_help.c:1631 +#: sql_help.c:1641 sql_help.c:1645 msgid "new_enum_value" msgstr "新しい列挙値" -#: sql_help.c:1628 +#: sql_help.c:1642 msgid "neighbor_enum_value" msgstr "隣接した列挙値" -#: sql_help.c:1630 +#: sql_help.c:1644 msgid "existing_enum_value" msgstr "既存の列挙値" -#: sql_help.c:1633 +#: sql_help.c:1647 msgid "property" msgstr "プロパティ" -#: sql_help.c:1709 sql_help.c:2397 sql_help.c:2406 sql_help.c:2812 -#: sql_help.c:3319 sql_help.c:3772 sql_help.c:3979 sql_help.c:4025 -#: sql_help.c:4446 +#: sql_help.c:1723 sql_help.c:2411 sql_help.c:2420 sql_help.c:2832 +#: sql_help.c:3339 sql_help.c:3792 sql_help.c:3999 sql_help.c:4045 +#: sql_help.c:4466 msgid "server_name" msgstr "サーバー名" -#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 +#: sql_help.c:1755 sql_help.c:1758 sql_help.c:3354 msgid "view_option_name" msgstr "ビューのオプション名" -#: sql_help.c:1742 sql_help.c:3335 +#: sql_help.c:1756 sql_help.c:3355 msgid "view_option_value" msgstr "ビューオプションの値" -#: sql_help.c:1763 sql_help.c:5060 -msgid "table_and_columns" -msgstr "テーブルおよび列" - -#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 -#: sql_help.c:4281 sql_help.c:5061 +#: sql_help.c:1778 sql_help.c:1838 sql_help.c:2033 sql_help.c:3841 +#: sql_help.c:4301 sql_help.c:5081 msgid "where option can be one of:" msgstr "オプションには以下のうちのいずれかを指定します:" -#: sql_help.c:1765 sql_help.c:1766 sql_help.c:1825 sql_help.c:2021 -#: sql_help.c:2025 sql_help.c:2208 sql_help.c:3822 sql_help.c:3823 -#: sql_help.c:3824 sql_help.c:3825 sql_help.c:3826 sql_help.c:3827 -#: sql_help.c:3828 sql_help.c:3829 sql_help.c:3830 sql_help.c:3831 -#: sql_help.c:4282 sql_help.c:4284 sql_help.c:5062 sql_help.c:5063 -#: sql_help.c:5064 sql_help.c:5065 sql_help.c:5066 sql_help.c:5067 -#: sql_help.c:5068 sql_help.c:5069 sql_help.c:5070 sql_help.c:5072 -#: sql_help.c:5073 +#: sql_help.c:1779 sql_help.c:1780 sql_help.c:1839 sql_help.c:2035 +#: sql_help.c:2039 sql_help.c:2222 sql_help.c:3842 sql_help.c:3843 +#: sql_help.c:3844 sql_help.c:3845 sql_help.c:3846 sql_help.c:3847 +#: sql_help.c:3848 sql_help.c:3849 sql_help.c:3850 sql_help.c:3851 +#: sql_help.c:4302 sql_help.c:4304 sql_help.c:5082 sql_help.c:5083 +#: sql_help.c:5084 sql_help.c:5085 sql_help.c:5086 sql_help.c:5087 +#: sql_help.c:5088 sql_help.c:5089 sql_help.c:5090 sql_help.c:5092 +#: sql_help.c:5093 msgid "boolean" msgstr "真偽値" -#: sql_help.c:1767 sql_help.c:5074 +#: sql_help.c:1781 sql_help.c:5094 msgid "size" msgstr "サイズ" -#: sql_help.c:1768 sql_help.c:5075 -msgid "and table_and_columns is:" -msgstr "そしてテーブルと列の指定は以下の通りです:" - -#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 +#: sql_help.c:1798 sql_help.c:4840 sql_help.c:4842 sql_help.c:4866 msgid "transaction_mode" msgstr "トランザクションのモード" -#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 +#: sql_help.c:1799 sql_help.c:4843 sql_help.c:4867 msgid "where transaction_mode is one of:" msgstr "トランザクションのモードは以下の通りです:" -#: sql_help.c:1794 sql_help.c:4665 sql_help.c:4674 sql_help.c:4678 -#: sql_help.c:4682 sql_help.c:4685 sql_help.c:4923 sql_help.c:4932 -#: sql_help.c:4936 sql_help.c:4940 sql_help.c:4943 sql_help.c:5170 -#: sql_help.c:5179 sql_help.c:5183 sql_help.c:5187 sql_help.c:5190 +#: sql_help.c:1808 sql_help.c:4685 sql_help.c:4694 sql_help.c:4698 +#: sql_help.c:4702 sql_help.c:4705 sql_help.c:4943 sql_help.c:4952 +#: sql_help.c:4956 sql_help.c:4960 sql_help.c:4963 sql_help.c:5190 +#: sql_help.c:5199 sql_help.c:5203 sql_help.c:5207 sql_help.c:5210 msgid "argument" msgstr "引数" -#: sql_help.c:1890 +#: sql_help.c:1904 msgid "relation_name" msgstr "リレーション名" -#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 +#: sql_help.c:1909 sql_help.c:3993 sql_help.c:4460 msgid "domain_name" msgstr "ドメイン名" -#: sql_help.c:1917 +#: sql_help.c:1931 msgid "policy_name" msgstr "ポリシー名" -#: sql_help.c:1930 +#: sql_help.c:1944 msgid "rule_name" msgstr "ルール名" -#: sql_help.c:1949 sql_help.c:4579 +#: sql_help.c:1963 sql_help.c:4599 msgid "string_literal" msgstr "文字列リテラル" -#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 +#: sql_help.c:1988 sql_help.c:4263 sql_help.c:4513 msgid "transaction_id" msgstr "トランザクションID" -#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 +#: sql_help.c:2023 sql_help.c:2030 sql_help.c:4117 msgid "filename" msgstr "ファイル名" -#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 -#: sql_help.c:2751 +#: sql_help.c:2024 sql_help.c:2031 sql_help.c:2769 sql_help.c:2770 +#: sql_help.c:2771 msgid "command" msgstr "コマンド" -#: sql_help.c:2012 sql_help.c:2748 sql_help.c:3189 sql_help.c:3371 -#: sql_help.c:4081 sql_help.c:4166 sql_help.c:4169 sql_help.c:4172 -#: sql_help.c:4648 sql_help.c:4650 sql_help.c:4752 sql_help.c:4754 -#: sql_help.c:4906 sql_help.c:4908 sql_help.c:5026 sql_help.c:5153 -#: sql_help.c:5155 +#: sql_help.c:2026 sql_help.c:2768 sql_help.c:3209 sql_help.c:3391 +#: sql_help.c:4101 sql_help.c:4186 sql_help.c:4189 sql_help.c:4192 +#: sql_help.c:4668 sql_help.c:4670 sql_help.c:4772 sql_help.c:4774 +#: sql_help.c:4926 sql_help.c:4928 sql_help.c:5046 sql_help.c:5173 +#: sql_help.c:5175 msgid "condition" msgstr "条件" -#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 -#: sql_help.c:3354 sql_help.c:4061 +#: sql_help.c:2029 sql_help.c:2583 sql_help.c:3092 sql_help.c:3356 +#: sql_help.c:3374 sql_help.c:4081 msgid "query" msgstr "問い合わせ" -#: sql_help.c:2020 +#: sql_help.c:2034 msgid "format_name" msgstr "フォーマット名" -#: sql_help.c:2022 +#: sql_help.c:2036 msgid "delimiter_character" msgstr "区切り文字" -#: sql_help.c:2023 +#: sql_help.c:2037 msgid "null_string" msgstr "NULL文字列" -#: sql_help.c:2024 +#: sql_help.c:2038 msgid "default_string" msgstr "デフォルト文字列" -#: sql_help.c:2026 +#: sql_help.c:2040 msgid "quote_character" msgstr "引用符文字" -#: sql_help.c:2027 +#: sql_help.c:2041 msgid "escape_character" msgstr "エスケープ文字" -#: sql_help.c:2031 +#: sql_help.c:2045 msgid "error_action" msgstr "エラー処理" -#: sql_help.c:2032 +#: sql_help.c:2046 msgid "maxerror" msgstr "許容エラー数" -#: sql_help.c:2033 +#: sql_help.c:2047 msgid "encoding_name" msgstr "エンコーディング名" -#: sql_help.c:2034 +#: sql_help.c:2048 msgid "verbosity" msgstr "詳細度" -#: sql_help.c:2045 +#: sql_help.c:2059 msgid "access_method_type" msgstr "アクセスメソッドの型" -#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 +#: sql_help.c:2130 sql_help.c:2149 sql_help.c:2152 msgid "arg_data_type" msgstr "入力データ型" -#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 +#: sql_help.c:2131 sql_help.c:2153 sql_help.c:2161 msgid "sfunc" msgstr "状態遷移関数" -#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 +#: sql_help.c:2132 sql_help.c:2154 sql_help.c:2162 msgid "state_data_type" msgstr "状態データの型" -#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 +#: sql_help.c:2133 sql_help.c:2155 sql_help.c:2163 msgid "state_data_size" msgstr "状態データのサイズ" -#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 +#: sql_help.c:2134 sql_help.c:2156 sql_help.c:2164 msgid "ffunc" msgstr "終了関数" -#: sql_help.c:2121 sql_help.c:2151 +#: sql_help.c:2135 sql_help.c:2165 msgid "combinefunc" msgstr "結合関数" -#: sql_help.c:2122 sql_help.c:2152 +#: sql_help.c:2136 sql_help.c:2166 msgid "serialfunc" msgstr "シリアライズ関数" -#: sql_help.c:2123 sql_help.c:2153 +#: sql_help.c:2137 sql_help.c:2167 msgid "deserialfunc" msgstr "デシリアライズ関数" -#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 +#: sql_help.c:2138 sql_help.c:2157 sql_help.c:2168 msgid "initial_condition" msgstr "初期条件" -#: sql_help.c:2125 sql_help.c:2155 +#: sql_help.c:2139 sql_help.c:2169 msgid "msfunc" msgstr "前方状態遷移関数" -#: sql_help.c:2126 sql_help.c:2156 +#: sql_help.c:2140 sql_help.c:2170 msgid "minvfunc" msgstr "逆状態遷移関数" -#: sql_help.c:2127 sql_help.c:2157 +#: sql_help.c:2141 sql_help.c:2171 msgid "mstate_data_type" msgstr "移動集約モード時の状態値のデータ型" -#: sql_help.c:2128 sql_help.c:2158 +#: sql_help.c:2142 sql_help.c:2172 msgid "mstate_data_size" msgstr "移動集約モード時の状態値のデータサイズ" -#: sql_help.c:2129 sql_help.c:2159 +#: sql_help.c:2143 sql_help.c:2173 msgid "mffunc" msgstr "移動集約モード時の終了関数" -#: sql_help.c:2130 sql_help.c:2160 +#: sql_help.c:2144 sql_help.c:2174 msgid "minitial_condition" msgstr "移動集約モード時の初期条件" -#: sql_help.c:2131 sql_help.c:2161 +#: sql_help.c:2145 sql_help.c:2175 msgid "sort_operator" msgstr "ソート演算子" -#: sql_help.c:2144 +#: sql_help.c:2158 msgid "or the old syntax" msgstr "または古い構文" -#: sql_help.c:2146 +#: sql_help.c:2160 msgid "base_type" msgstr "基本の型" -#: sql_help.c:2204 sql_help.c:2254 +#: sql_help.c:2218 sql_help.c:2268 msgid "locale" msgstr "ロケール" -#: sql_help.c:2205 sql_help.c:2255 +#: sql_help.c:2219 sql_help.c:2269 msgid "lc_collate" msgstr "照合順序" -#: sql_help.c:2206 sql_help.c:2256 +#: sql_help.c:2220 sql_help.c:2270 msgid "lc_ctype" msgstr "Ctype(変換演算子)" -#: sql_help.c:2207 sql_help.c:4546 +#: sql_help.c:2221 sql_help.c:4566 msgid "provider" msgstr "プロバイダ" -#: sql_help.c:2209 +#: sql_help.c:2223 msgid "rules" msgstr "ルール" -#: sql_help.c:2210 sql_help.c:2317 +#: sql_help.c:2224 sql_help.c:2331 msgid "version" msgstr "バージョン" -#: sql_help.c:2212 +#: sql_help.c:2226 msgid "existing_collation" msgstr "既存の照合順序" -#: sql_help.c:2222 +#: sql_help.c:2236 msgid "source_encoding" msgstr "変換元のエンコーディング" -#: sql_help.c:2223 +#: sql_help.c:2237 msgid "dest_encoding" msgstr "変換先のエンコーディング" -#: sql_help.c:2251 sql_help.c:3112 +#: sql_help.c:2265 sql_help.c:3132 msgid "template" msgstr "テンプレート" -#: sql_help.c:2252 +#: sql_help.c:2266 msgid "encoding" msgstr "エンコード" -#: sql_help.c:2253 +#: sql_help.c:2267 msgid "strategy" msgstr "ストラテジ" -#: sql_help.c:2257 +#: sql_help.c:2271 msgid "builtin_locale" msgstr "組み込みロケール" -#: sql_help.c:2258 +#: sql_help.c:2272 msgid "icu_locale" msgstr "ICUロケール" -#: sql_help.c:2259 +#: sql_help.c:2273 msgid "icu_rules" msgstr "ICUルール(群)" -#: sql_help.c:2260 +#: sql_help.c:2274 msgid "locale_provider" msgstr "ロケールプロバイダ" -#: sql_help.c:2261 +#: sql_help.c:2275 msgid "collation_version" msgstr "照合順序バージョン" -#: sql_help.c:2266 +#: sql_help.c:2280 msgid "oid" msgstr "オブジェクトID" -#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 +#: sql_help.c:2315 sql_help.c:2766 sql_help.c:3205 msgid "event" msgstr "イベント" -#: sql_help.c:2302 +#: sql_help.c:2316 msgid "filter_variable" msgstr "フィルター変数" -#: sql_help.c:2303 +#: sql_help.c:2317 msgid "filter_value" msgstr "フィルター値" -#: sql_help.c:2394 sql_help.c:2958 +#: sql_help.c:2408 sql_help.c:2978 msgid "source_table" msgstr "コピー元のテーブル" -#: sql_help.c:2395 sql_help.c:2959 +#: sql_help.c:2409 sql_help.c:2979 msgid "like_option" msgstr "LIKEオプション" -#: sql_help.c:2409 sql_help.c:2996 +#: sql_help.c:2423 sql_help.c:3016 msgid "where column_constraint is:" msgstr "カラム制約は以下の通りです:" -#: sql_help.c:2418 sql_help.c:3030 +#: sql_help.c:2432 sql_help.c:3050 msgid "and like_option is:" msgstr "LIKE オプションは以下の通りです:" -#: sql_help.c:2456 +#: sql_help.c:2470 msgid "rettype" msgstr "戻り値の型" -#: sql_help.c:2458 +#: sql_help.c:2472 msgid "column_type" msgstr "列の型" -#: sql_help.c:2467 sql_help.c:2670 +#: sql_help.c:2481 sql_help.c:2684 msgid "definition" msgstr "定義" -#: sql_help.c:2468 sql_help.c:2671 +#: sql_help.c:2482 sql_help.c:2685 msgid "obj_file" msgstr "オブジェクトファイル名" -#: sql_help.c:2469 sql_help.c:2672 +#: sql_help.c:2483 sql_help.c:2686 msgid "link_symbol" msgstr "リンクシンボル" -#: sql_help.c:2470 sql_help.c:2673 +#: sql_help.c:2484 sql_help.c:2687 msgid "sql_body" msgstr "SQL本体" -#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 +#: sql_help.c:2522 sql_help.c:2751 sql_help.c:3328 msgid "uid" msgstr "UID" -#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 -#: sql_help.c:2992 sql_help.c:3068 +#: sql_help.c:2538 sql_help.c:2579 sql_help.c:2985 sql_help.c:2998 +#: sql_help.c:3012 sql_help.c:3088 msgid "method" msgstr "インデックスメソッド" -#: sql_help.c:2546 +#: sql_help.c:2560 msgid "call_handler" msgstr "呼び出しハンドラー" -#: sql_help.c:2547 +#: sql_help.c:2561 msgid "inline_handler" msgstr "インラインハンドラー" -#: sql_help.c:2548 +#: sql_help.c:2562 msgid "valfunction" msgstr "バリデーション関数" -#: sql_help.c:2606 +#: sql_help.c:2620 msgid "family_name" msgstr "演算子族の名前" -#: sql_help.c:2617 +#: sql_help.c:2631 msgid "storage_type" msgstr "ストレージタイプ" -#: sql_help.c:2752 sql_help.c:3192 +#: sql_help.c:2772 sql_help.c:3212 msgid "where event can be one of:" msgstr "イベントは以下のいずれかです:" -#: sql_help.c:2772 sql_help.c:2774 +#: sql_help.c:2792 sql_help.c:2794 msgid "schema_element" msgstr "スキーマ要素" -#: sql_help.c:2813 +#: sql_help.c:2833 msgid "server_type" msgstr "サーバーのタイプ" -#: sql_help.c:2814 +#: sql_help.c:2834 msgid "server_version" msgstr "サーバーのバージョン" -#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 +#: sql_help.c:2835 sql_help.c:3996 sql_help.c:4463 msgid "fdw_name" msgstr "外部データラッパ名" -#: sql_help.c:2832 sql_help.c:2835 +#: sql_help.c:2852 sql_help.c:2855 msgid "statistics_name" msgstr "統計オブジェクト名" -#: sql_help.c:2836 +#: sql_help.c:2856 msgid "statistics_kind" msgstr "統計種別" -#: sql_help.c:2852 +#: sql_help.c:2872 msgid "subscription_name" msgstr "サブスクリプション名" -#: sql_help.c:3085 +#: sql_help.c:3105 msgid "directory" msgstr "ディレクトリ" -#: sql_help.c:3099 +#: sql_help.c:3119 msgid "parser_name" msgstr "パーサ名" -#: sql_help.c:3100 +#: sql_help.c:3120 msgid "source_config" msgstr "複製元の設定" -#: sql_help.c:3129 +#: sql_help.c:3149 msgid "start_function" msgstr "開始関数" -#: sql_help.c:3130 +#: sql_help.c:3150 msgid "gettoken_function" msgstr "トークン取得関数" -#: sql_help.c:3131 +#: sql_help.c:3151 msgid "end_function" msgstr "終了関数" -#: sql_help.c:3132 +#: sql_help.c:3152 msgid "lextypes_function" msgstr "LEXTYPE関数" -#: sql_help.c:3133 +#: sql_help.c:3153 msgid "headline_function" msgstr "見出し関数" -#: sql_help.c:3145 +#: sql_help.c:3165 msgid "init_function" msgstr "初期処理関数" -#: sql_help.c:3146 +#: sql_help.c:3166 msgid "lexize_function" msgstr "LEXIZE関数" -#: sql_help.c:3159 +#: sql_help.c:3179 msgid "from_sql_function_name" msgstr "{FROM SQL 関数名}" -#: sql_help.c:3161 +#: sql_help.c:3181 msgid "to_sql_function_name" msgstr "{TO SQL 関数名}" -#: sql_help.c:3187 +#: sql_help.c:3207 msgid "referenced_table_name" msgstr "被参照テーブル名" -#: sql_help.c:3188 +#: sql_help.c:3208 msgid "transition_relation_name" msgstr "移行用リレーション名" -#: sql_help.c:3191 +#: sql_help.c:3211 msgid "arguments" msgstr "引数" -#: sql_help.c:3243 +#: sql_help.c:3263 msgid "label" msgstr "ラベル" -#: sql_help.c:3245 +#: sql_help.c:3265 msgid "subtype" msgstr "当該範囲のデータ型" -#: sql_help.c:3246 +#: sql_help.c:3266 msgid "subtype_operator_class" msgstr "当該範囲のデータ型の演算子クラス" -#: sql_help.c:3248 +#: sql_help.c:3268 msgid "canonical_function" msgstr "正規化関数" -#: sql_help.c:3249 +#: sql_help.c:3269 msgid "subtype_diff_function" msgstr "当該範囲のデータ型の差分抽出関数" -#: sql_help.c:3250 +#: sql_help.c:3270 msgid "multirange_type_name" msgstr "複範囲型名" -#: sql_help.c:3252 +#: sql_help.c:3272 msgid "input_function" msgstr "入力関数" -#: sql_help.c:3253 +#: sql_help.c:3273 msgid "output_function" msgstr "出力関数" -#: sql_help.c:3254 +#: sql_help.c:3274 msgid "receive_function" msgstr "受信関数" -#: sql_help.c:3255 +#: sql_help.c:3275 msgid "send_function" msgstr "送信関数" -#: sql_help.c:3256 +#: sql_help.c:3276 msgid "type_modifier_input_function" msgstr "型修飾子の入力関数" -#: sql_help.c:3257 +#: sql_help.c:3277 msgid "type_modifier_output_function" msgstr "型修飾子の出力関数" -#: sql_help.c:3258 +#: sql_help.c:3278 msgid "analyze_function" msgstr "分析関数" -#: sql_help.c:3259 +#: sql_help.c:3279 msgid "subscript_function" msgstr "添字関数" -#: sql_help.c:3260 +#: sql_help.c:3280 msgid "internallength" msgstr "内部長" -#: sql_help.c:3261 +#: sql_help.c:3281 msgid "alignment" msgstr "バイト境界" -#: sql_help.c:3262 +#: sql_help.c:3282 msgid "storage" msgstr "ストレージ" -#: sql_help.c:3263 +#: sql_help.c:3283 msgid "like_type" msgstr "LIKEの型" -#: sql_help.c:3264 +#: sql_help.c:3284 msgid "category" msgstr "カテゴリー" -#: sql_help.c:3265 +#: sql_help.c:3285 msgid "preferred" msgstr "優先データ型かどうか(真偽値)" -#: sql_help.c:3266 +#: sql_help.c:3286 msgid "default" msgstr "デフォルト" -#: sql_help.c:3267 +#: sql_help.c:3287 msgid "element" msgstr "要素のデータ型" -#: sql_help.c:3268 +#: sql_help.c:3288 msgid "delimiter" msgstr "区切り記号" -#: sql_help.c:3269 +#: sql_help.c:3289 msgid "collatable" msgstr "照合可能" -#: sql_help.c:3367 sql_help.c:4056 sql_help.c:4152 sql_help.c:4643 -#: sql_help.c:4746 sql_help.c:4901 sql_help.c:5016 sql_help.c:5148 +#: sql_help.c:3387 sql_help.c:4076 sql_help.c:4172 sql_help.c:4663 +#: sql_help.c:4766 sql_help.c:4921 sql_help.c:5036 sql_help.c:5168 msgid "with_query" msgstr "WITH問い合わせ" -#: sql_help.c:3369 sql_help.c:4058 sql_help.c:4662 sql_help.c:4668 -#: sql_help.c:4671 sql_help.c:4675 sql_help.c:4679 sql_help.c:4687 -#: sql_help.c:4920 sql_help.c:4926 sql_help.c:4929 sql_help.c:4933 -#: sql_help.c:4937 sql_help.c:4945 sql_help.c:5018 sql_help.c:5167 -#: sql_help.c:5173 sql_help.c:5176 sql_help.c:5180 sql_help.c:5184 -#: sql_help.c:5192 +#: sql_help.c:3389 sql_help.c:4078 sql_help.c:4682 sql_help.c:4688 +#: sql_help.c:4691 sql_help.c:4695 sql_help.c:4699 sql_help.c:4707 +#: sql_help.c:4940 sql_help.c:4946 sql_help.c:4949 sql_help.c:4953 +#: sql_help.c:4957 sql_help.c:4965 sql_help.c:5038 sql_help.c:5187 +#: sql_help.c:5193 sql_help.c:5196 sql_help.c:5200 sql_help.c:5204 +#: sql_help.c:5212 msgid "alias" msgstr "別名" -#: sql_help.c:3370 sql_help.c:4647 sql_help.c:4689 sql_help.c:4691 -#: sql_help.c:4695 sql_help.c:4697 sql_help.c:4698 sql_help.c:4699 -#: sql_help.c:4751 sql_help.c:4905 sql_help.c:4947 sql_help.c:4949 -#: sql_help.c:4953 sql_help.c:4955 sql_help.c:4956 sql_help.c:4957 -#: sql_help.c:5025 sql_help.c:5152 sql_help.c:5194 sql_help.c:5196 -#: sql_help.c:5200 sql_help.c:5202 sql_help.c:5203 sql_help.c:5204 +#: sql_help.c:3390 sql_help.c:4667 sql_help.c:4709 sql_help.c:4711 +#: sql_help.c:4715 sql_help.c:4717 sql_help.c:4718 sql_help.c:4719 +#: sql_help.c:4771 sql_help.c:4925 sql_help.c:4967 sql_help.c:4969 +#: sql_help.c:4973 sql_help.c:4975 sql_help.c:4976 sql_help.c:4977 +#: sql_help.c:5045 sql_help.c:5172 sql_help.c:5214 sql_help.c:5216 +#: sql_help.c:5220 sql_help.c:5222 sql_help.c:5223 sql_help.c:5224 msgid "from_item" msgstr "FROM項目" -#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 +#: sql_help.c:3392 sql_help.c:3877 sql_help.c:4230 sql_help.c:5047 msgid "cursor_name" msgstr "カーソル名" -#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +#: sql_help.c:3393 sql_help.c:4084 sql_help.c:4178 sql_help.c:5048 msgid "output_alias" msgstr "出力別名" -#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 +#: sql_help.c:3394 sql_help.c:4085 sql_help.c:4179 sql_help.c:5049 msgid "output_expression" msgstr "出力表現" -#: sql_help.c:3375 sql_help.c:4066 sql_help.c:4160 sql_help.c:4646 -#: sql_help.c:4749 sql_help.c:4904 sql_help.c:5030 sql_help.c:5151 +#: sql_help.c:3395 sql_help.c:4086 sql_help.c:4180 sql_help.c:4666 +#: sql_help.c:4769 sql_help.c:4924 sql_help.c:5050 sql_help.c:5171 msgid "output_name" msgstr "出力名" -#: sql_help.c:3391 +#: sql_help.c:3411 msgid "code" msgstr "コードブロック" -#: sql_help.c:3796 +#: sql_help.c:3816 msgid "parameter" msgstr "パラメータ" -#: sql_help.c:3820 sql_help.c:4235 +#: sql_help.c:3840 sql_help.c:4255 msgid "statement" msgstr "文" -#: sql_help.c:3856 sql_help.c:4209 +#: sql_help.c:3876 sql_help.c:4229 msgid "direction" msgstr "方向" -#: sql_help.c:3858 sql_help.c:4211 +#: sql_help.c:3878 sql_help.c:4231 msgid "where direction can be one of:" msgstr "方向 は以下のうちのいずれか:" -#: sql_help.c:3859 sql_help.c:3860 sql_help.c:3861 sql_help.c:3862 -#: sql_help.c:3863 sql_help.c:4212 sql_help.c:4213 sql_help.c:4214 -#: sql_help.c:4215 sql_help.c:4216 sql_help.c:4656 sql_help.c:4658 -#: sql_help.c:4760 sql_help.c:4762 sql_help.c:4914 sql_help.c:4916 -#: sql_help.c:5092 sql_help.c:5094 sql_help.c:5161 sql_help.c:5163 +#: sql_help.c:3879 sql_help.c:3880 sql_help.c:3881 sql_help.c:3882 +#: sql_help.c:3883 sql_help.c:4232 sql_help.c:4233 sql_help.c:4234 +#: sql_help.c:4235 sql_help.c:4236 sql_help.c:4676 sql_help.c:4678 +#: sql_help.c:4780 sql_help.c:4782 sql_help.c:4934 sql_help.c:4936 +#: sql_help.c:5112 sql_help.c:5114 sql_help.c:5181 sql_help.c:5183 msgid "count" msgstr "取り出す位置や行数" -#: sql_help.c:3966 sql_help.c:4433 +#: sql_help.c:3986 sql_help.c:4453 msgid "sequence_name" msgstr "シーケンス名" -#: sql_help.c:3984 sql_help.c:4451 +#: sql_help.c:4004 sql_help.c:4471 msgid "arg_name" msgstr "引数名" -#: sql_help.c:3985 sql_help.c:4452 +#: sql_help.c:4005 sql_help.c:4472 msgid "arg_type" msgstr "引数の型" -#: sql_help.c:3992 sql_help.c:4459 +#: sql_help.c:4012 sql_help.c:4479 msgid "loid" msgstr "ラージオブジェクトid" -#: sql_help.c:4023 +#: sql_help.c:4043 msgid "remote_schema" msgstr "リモートスキーマ" -#: sql_help.c:4026 +#: sql_help.c:4046 msgid "local_schema" msgstr "ローカルスキーマ" -#: sql_help.c:4062 +#: sql_help.c:4082 msgid "conflict_target" msgstr "競合ターゲット" -#: sql_help.c:4063 +#: sql_help.c:4083 msgid "conflict_action" msgstr "競合時アクション" -#: sql_help.c:4067 +#: sql_help.c:4087 msgid "where conflict_target can be one of:" msgstr "競合ターゲットは以下のいずれかです:" -#: sql_help.c:4068 +#: sql_help.c:4088 msgid "index_column_name" msgstr "インデックスのカラム名" -#: sql_help.c:4069 +#: sql_help.c:4089 msgid "index_expression" msgstr "インデックス表現" -#: sql_help.c:4072 +#: sql_help.c:4092 msgid "index_predicate" msgstr "インデックスの述語" -#: sql_help.c:4074 +#: sql_help.c:4094 msgid "and conflict_action is one of:" msgstr "競合時アクションは以下のいずれかです:" -#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 +#: sql_help.c:4100 sql_help.c:4203 sql_help.c:5044 msgid "sub-SELECT" msgstr "副問い合わせ句" -#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 +#: sql_help.c:4109 sql_help.c:4244 sql_help.c:5019 msgid "channel" msgstr "チャネル" -#: sql_help.c:4111 +#: sql_help.c:4131 msgid "lockmode" msgstr "ロックモード" -#: sql_help.c:4112 +#: sql_help.c:4132 msgid "where lockmode is one of:" msgstr "ロックモードは以下のいずれかです:" -#: sql_help.c:4153 +#: sql_help.c:4173 msgid "target_table_name" msgstr "ターゲットテーブル名" -#: sql_help.c:4154 +#: sql_help.c:4174 msgid "target_alias" msgstr "ターゲット別名" -#: sql_help.c:4155 +#: sql_help.c:4175 msgid "data_source" msgstr "データ源" -#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 +#: sql_help.c:4176 sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "join_condition" msgstr "JOIN条件" -#: sql_help.c:4157 +#: sql_help.c:4177 msgid "when_clause" msgstr "WHEN句" -#: sql_help.c:4161 +#: sql_help.c:4181 msgid "where data_source is:" msgstr "ここで\"データ源\"は以下の通り:" -#: sql_help.c:4162 +#: sql_help.c:4182 msgid "source_table_name" msgstr "データ源テーブル名" -#: sql_help.c:4163 +#: sql_help.c:4183 msgid "source_query" msgstr "データ源問い合わせ" -#: sql_help.c:4164 +#: sql_help.c:4184 msgid "source_alias" msgstr "データ源別名" -#: sql_help.c:4165 +#: sql_help.c:4185 msgid "and when_clause is:" msgstr "WHEN句は以下の通り:" -#: sql_help.c:4167 sql_help.c:4170 +#: sql_help.c:4187 sql_help.c:4190 msgid "merge_update" msgstr "マージ更新" -#: sql_help.c:4168 sql_help.c:4171 +#: sql_help.c:4188 sql_help.c:4191 msgid "merge_delete" msgstr "マージ削除" -#: sql_help.c:4173 +#: sql_help.c:4193 msgid "merge_insert" msgstr "マージ挿入" -#: sql_help.c:4174 +#: sql_help.c:4194 msgid "and merge_insert is:" msgstr "そして\"マージ挿入\"は以下の通り:" -#: sql_help.c:4177 +#: sql_help.c:4197 msgid "and merge_update is:" msgstr "そして\"マージ更新\"は以下の通り:" -#: sql_help.c:4184 +#: sql_help.c:4204 msgid "and merge_delete is:" msgstr "そして\"マージ削除\"は以下の通り:" -#: sql_help.c:4225 +#: sql_help.c:4245 msgid "payload" msgstr "ペイロード" -#: sql_help.c:4252 +#: sql_help.c:4272 msgid "old_role" msgstr "元のロール" -#: sql_help.c:4253 +#: sql_help.c:4273 msgid "new_role" msgstr "新しいロール" -#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 +#: sql_help.c:4312 sql_help.c:4521 sql_help.c:4529 msgid "savepoint_name" msgstr "セーブポイント名" -#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 -#: sql_help.c:5154 sql_help.c:5212 +#: sql_help.c:4669 sql_help.c:4727 sql_help.c:4927 sql_help.c:4985 +#: sql_help.c:5174 sql_help.c:5232 msgid "grouping_element" msgstr "グルーピング要素" -#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 +#: sql_help.c:4671 sql_help.c:4775 sql_help.c:4929 sql_help.c:5176 msgid "window_name" msgstr "ウィンドウ名" -#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 +#: sql_help.c:4672 sql_help.c:4776 sql_help.c:4930 sql_help.c:5177 msgid "window_definition" msgstr "ウィンドウ定義" -#: sql_help.c:4653 sql_help.c:4667 sql_help.c:4711 sql_help.c:4757 -#: sql_help.c:4911 sql_help.c:4925 sql_help.c:4969 sql_help.c:5158 -#: sql_help.c:5172 sql_help.c:5216 +#: sql_help.c:4673 sql_help.c:4687 sql_help.c:4731 sql_help.c:4777 +#: sql_help.c:4931 sql_help.c:4945 sql_help.c:4989 sql_help.c:5178 +#: sql_help.c:5192 sql_help.c:5236 msgid "select" msgstr "SELECT句" -#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 +#: sql_help.c:4679 sql_help.c:4937 sql_help.c:5184 msgid "from_reference" msgstr "FROM参照" -#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 +#: sql_help.c:4680 sql_help.c:4938 sql_help.c:5185 msgid "where from_item can be one of:" msgstr "FROM項目は以下のいずれかです:" -#: sql_help.c:4663 sql_help.c:4669 sql_help.c:4672 sql_help.c:4676 -#: sql_help.c:4688 sql_help.c:4921 sql_help.c:4927 sql_help.c:4930 -#: sql_help.c:4934 sql_help.c:4946 sql_help.c:5168 sql_help.c:5174 -#: sql_help.c:5177 sql_help.c:5181 sql_help.c:5193 +#: sql_help.c:4683 sql_help.c:4689 sql_help.c:4692 sql_help.c:4696 +#: sql_help.c:4708 sql_help.c:4941 sql_help.c:4947 sql_help.c:4950 +#: sql_help.c:4954 sql_help.c:4966 sql_help.c:5188 sql_help.c:5194 +#: sql_help.c:5197 sql_help.c:5201 sql_help.c:5213 msgid "column_alias" msgstr "列別名" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 +#: sql_help.c:4684 sql_help.c:4942 sql_help.c:5189 msgid "sampling_method" msgstr "サンプリングメソッド" -#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 +#: sql_help.c:4686 sql_help.c:4944 sql_help.c:5191 msgid "seed" msgstr "乱数シード" -#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 -#: sql_help.c:5175 sql_help.c:5214 +#: sql_help.c:4690 sql_help.c:4729 sql_help.c:4948 sql_help.c:4987 +#: sql_help.c:5195 sql_help.c:5234 msgid "with_query_name" msgstr "WITH問い合わせ名" -#: sql_help.c:4680 sql_help.c:4683 sql_help.c:4686 sql_help.c:4938 -#: sql_help.c:4941 sql_help.c:4944 sql_help.c:5185 sql_help.c:5188 -#: sql_help.c:5191 +#: sql_help.c:4700 sql_help.c:4703 sql_help.c:4706 sql_help.c:4958 +#: sql_help.c:4961 sql_help.c:4964 sql_help.c:5205 sql_help.c:5208 +#: sql_help.c:5211 msgid "column_definition" msgstr "カラム定義" -#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 -#: sql_help.c:5195 sql_help.c:5201 +#: sql_help.c:4710 sql_help.c:4716 sql_help.c:4968 sql_help.c:4974 +#: sql_help.c:5215 sql_help.c:5221 msgid "join_type" msgstr "JOINタイプ" -#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "join_column" msgstr "JOINカラム" -#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "join_using_alias" msgstr "JOIN用別名" -#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "and grouping_element can be one of:" msgstr "グルーピング要素は以下のいずれかです:" -#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 +#: sql_help.c:4728 sql_help.c:4986 sql_help.c:5233 msgid "and with_query is:" msgstr "WITH問い合わせは以下のいずれかです:" -#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 +#: sql_help.c:4732 sql_help.c:4990 sql_help.c:5237 msgid "values" msgstr "VALUES句" -#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 +#: sql_help.c:4733 sql_help.c:4991 sql_help.c:5238 msgid "insert" msgstr "INSERT句" -#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 +#: sql_help.c:4734 sql_help.c:4992 sql_help.c:5239 msgid "update" msgstr "UPDATE句" -#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 +#: sql_help.c:4735 sql_help.c:4993 sql_help.c:5240 msgid "delete" msgstr "DELETE句" -#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 +#: sql_help.c:4736 sql_help.c:4994 sql_help.c:5241 msgid "merge" msgstr "MERGE句" -#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 +#: sql_help.c:4738 sql_help.c:4996 sql_help.c:5243 msgid "search_seq_col_name" msgstr "SEARCH順序列名" -#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 +#: sql_help.c:4740 sql_help.c:4998 sql_help.c:5245 msgid "cycle_mark_col_name" msgstr "循環識別列名" -#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 +#: sql_help.c:4741 sql_help.c:4999 sql_help.c:5246 msgid "cycle_mark_value" msgstr "循環識別値" -#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 +#: sql_help.c:4742 sql_help.c:5000 sql_help.c:5247 msgid "cycle_mark_default" msgstr "循環識別デフォルト" -#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 +#: sql_help.c:4743 sql_help.c:5001 sql_help.c:5248 msgid "cycle_path_col_name" msgstr "循環パス列名" -#: sql_help.c:4750 +#: sql_help.c:4770 msgid "new_table" msgstr "新しいテーブル" -#: sql_help.c:4821 +#: sql_help.c:4841 msgid "snapshot_id" msgstr "スナップショットID" -#: sql_help.c:5090 +#: sql_help.c:5110 msgid "sort_expression" msgstr "ソート表現" -#: sql_help.c:5235 sql_help.c:6219 +#: sql_help.c:5255 sql_help.c:6239 msgid "abort the current transaction" msgstr "現在のトランザクションを中止します" -#: sql_help.c:5241 +#: sql_help.c:5261 msgid "change the definition of an aggregate function" msgstr "集約関数の定義を変更します" -#: sql_help.c:5247 +#: sql_help.c:5267 msgid "change the definition of a collation" msgstr "照合順序の定義を変更します" -#: sql_help.c:5253 +#: sql_help.c:5273 msgid "change the definition of a conversion" msgstr "エンコーディング変換ルールの定義を変更します" -#: sql_help.c:5259 +#: sql_help.c:5279 msgid "change a database" msgstr "データベースを変更します" -#: sql_help.c:5265 +#: sql_help.c:5285 msgid "define default access privileges" msgstr "デフォルトのアクセス権限を定義します" -#: sql_help.c:5271 +#: sql_help.c:5291 msgid "change the definition of a domain" msgstr "ドメインの定義を変更します" -#: sql_help.c:5277 +#: sql_help.c:5297 msgid "change the definition of an event trigger" msgstr "イベントトリガーの定義を変更します" -#: sql_help.c:5283 +#: sql_help.c:5303 msgid "change the definition of an extension" msgstr "機能拡張の定義を変更します" -#: sql_help.c:5289 +#: sql_help.c:5309 msgid "change the definition of a foreign-data wrapper" msgstr "外部データラッパの定義を変更します" -#: sql_help.c:5295 +#: sql_help.c:5315 msgid "change the definition of a foreign table" msgstr "外部テーブルの定義を変更します" -#: sql_help.c:5301 +#: sql_help.c:5321 msgid "change the definition of a function" msgstr "関数の定義を変更します" -#: sql_help.c:5307 +#: sql_help.c:5327 msgid "change role name or membership" msgstr "ロール名またはメンバーシップを変更します" -#: sql_help.c:5313 +#: sql_help.c:5333 msgid "change the definition of an index" msgstr "インデックスの定義を変更します" -#: sql_help.c:5319 +#: sql_help.c:5339 msgid "change the definition of a procedural language" msgstr "手続き言語の定義を変更します" -#: sql_help.c:5325 +#: sql_help.c:5345 msgid "change the definition of a large object" msgstr "ラージオブジェクトの定義を変更します" -#: sql_help.c:5331 +#: sql_help.c:5351 msgid "change the definition of a materialized view" msgstr "実体化ビューの定義を変更します" -#: sql_help.c:5337 +#: sql_help.c:5357 msgid "change the definition of an operator" msgstr "演算子の定義を変更します" -#: sql_help.c:5343 +#: sql_help.c:5363 msgid "change the definition of an operator class" msgstr "演算子クラスの定義を変更します" -#: sql_help.c:5349 +#: sql_help.c:5369 msgid "change the definition of an operator family" msgstr "演算子族の定義を変更します" -#: sql_help.c:5355 +#: sql_help.c:5375 msgid "change the definition of a row-level security policy" msgstr "行レベルのセキュリティ ポリシーの定義を変更します" -#: sql_help.c:5361 +#: sql_help.c:5381 msgid "change the definition of a procedure" msgstr "プロシージャの定義を変更します" -#: sql_help.c:5367 +#: sql_help.c:5387 msgid "change the definition of a publication" msgstr "パブリケーションの定義を変更します" -#: sql_help.c:5373 sql_help.c:5475 +#: sql_help.c:5393 sql_help.c:5495 msgid "change a database role" msgstr "データベースロールを変更します" -#: sql_help.c:5379 +#: sql_help.c:5399 msgid "change the definition of a routine" msgstr "ルーチンの定義を変更します" -#: sql_help.c:5385 +#: sql_help.c:5405 msgid "change the definition of a rule" msgstr "ルールの定義を変更します" -#: sql_help.c:5391 +#: sql_help.c:5411 msgid "change the definition of a schema" msgstr "スキーマの定義を変更します" -#: sql_help.c:5397 +#: sql_help.c:5417 msgid "change the definition of a sequence generator" msgstr "シーケンス生成器の定義を変更します" -#: sql_help.c:5403 +#: sql_help.c:5423 msgid "change the definition of a foreign server" msgstr "外部サーバーの定義を変更します" -#: sql_help.c:5409 +#: sql_help.c:5429 msgid "change the definition of an extended statistics object" msgstr "拡張統計情報オブジェクトの定義を変更します" -#: sql_help.c:5415 +#: sql_help.c:5435 msgid "change the definition of a subscription" msgstr "サブスクリプションの定義を変更します" -#: sql_help.c:5421 +#: sql_help.c:5441 msgid "change a server configuration parameter" msgstr "サーバーの設定パラメータを変更します" -#: sql_help.c:5427 +#: sql_help.c:5447 msgid "change the definition of a table" msgstr "テーブルの定義を変更します。" -#: sql_help.c:5433 +#: sql_help.c:5453 msgid "change the definition of a tablespace" msgstr "テーブル空間の定義を変更します" -#: sql_help.c:5439 +#: sql_help.c:5459 msgid "change the definition of a text search configuration" msgstr "テキスト検索設定の定義を変更します" -#: sql_help.c:5445 +#: sql_help.c:5465 msgid "change the definition of a text search dictionary" msgstr "テキスト検索辞書の定義を変更します" -#: sql_help.c:5451 +#: sql_help.c:5471 msgid "change the definition of a text search parser" msgstr "テキスト検索パーサーの定義を変更します" -#: sql_help.c:5457 +#: sql_help.c:5477 msgid "change the definition of a text search template" msgstr "テキスト検索テンプレートの定義を変更します" -#: sql_help.c:5463 +#: sql_help.c:5483 msgid "change the definition of a trigger" msgstr "トリガーの定義を変更します" -#: sql_help.c:5469 +#: sql_help.c:5489 msgid "change the definition of a type" msgstr "型の定義を変更します" -#: sql_help.c:5481 +#: sql_help.c:5501 msgid "change the definition of a user mapping" msgstr "ユーザーマッピングの定義を変更します" -#: sql_help.c:5487 +#: sql_help.c:5507 msgid "change the definition of a view" msgstr "ビューの定義を変更します" -#: sql_help.c:5493 +#: sql_help.c:5513 msgid "collect statistics about a database" msgstr "データベースの統計情報を収集します" -#: sql_help.c:5499 sql_help.c:6297 +#: sql_help.c:5519 sql_help.c:6317 msgid "start a transaction block" msgstr "トランザクション区間を開始します" -#: sql_help.c:5505 +#: sql_help.c:5525 msgid "invoke a procedure" msgstr "プロシージャを実行します" -#: sql_help.c:5511 +#: sql_help.c:5531 msgid "force a write-ahead log checkpoint" msgstr "先行書き込みログのチェックポイントを強制的に実行します" -#: sql_help.c:5517 +#: sql_help.c:5537 msgid "close a cursor" msgstr "カーソルを閉じます" -#: sql_help.c:5523 +#: sql_help.c:5543 msgid "cluster a table according to an index" msgstr "インデックスに従ってテーブルをクラスタ化します" -#: sql_help.c:5529 +#: sql_help.c:5549 msgid "define or change the comment of an object" msgstr "オブジェクトのコメントを定義または変更します" -#: sql_help.c:5535 sql_help.c:6093 +#: sql_help.c:5555 sql_help.c:6113 msgid "commit the current transaction" msgstr "現在のトランザクションをコミットします" -#: sql_help.c:5541 +#: sql_help.c:5561 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "二相コミットのために事前に準備されたトランザクションをコミットします" -#: sql_help.c:5547 +#: sql_help.c:5567 msgid "copy data between a file and a table" msgstr "ファイルとテーブルとの間でデータをコピーします" -#: sql_help.c:5553 +#: sql_help.c:5573 msgid "define a new access method" msgstr "新しいアクセスメソッドを定義します" -#: sql_help.c:5559 +#: sql_help.c:5579 msgid "define a new aggregate function" msgstr "新しい集約関数を定義します" -#: sql_help.c:5565 +#: sql_help.c:5585 msgid "define a new cast" msgstr "新しい型変換を定義します" -#: sql_help.c:5571 +#: sql_help.c:5591 msgid "define a new collation" msgstr "新しい照合順序を定義します" -#: sql_help.c:5577 +#: sql_help.c:5597 msgid "define a new encoding conversion" msgstr "新しいエンコーディング変換を定義します" -#: sql_help.c:5583 +#: sql_help.c:5603 msgid "create a new database" msgstr "新しいデータベースを作成します" -#: sql_help.c:5589 +#: sql_help.c:5609 msgid "define a new domain" msgstr "新しいドメインを定義します" -#: sql_help.c:5595 +#: sql_help.c:5615 msgid "define a new event trigger" msgstr "新しいイベントトリガーを定義します" -#: sql_help.c:5601 +#: sql_help.c:5621 msgid "install an extension" msgstr "機能拡張をインストールします" -#: sql_help.c:5607 +#: sql_help.c:5627 msgid "define a new foreign-data wrapper" msgstr "新しい外部データラッパを定義します" -#: sql_help.c:5613 +#: sql_help.c:5633 msgid "define a new foreign table" msgstr "新しい外部テーブルを定義します" -#: sql_help.c:5619 +#: sql_help.c:5639 msgid "define a new function" msgstr "新しい関数を定義します" -#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 +#: sql_help.c:5645 sql_help.c:5705 sql_help.c:5807 msgid "define a new database role" msgstr "新しいデータベースロールを定義します" -#: sql_help.c:5631 +#: sql_help.c:5651 msgid "define a new index" msgstr "新しいインデックスを定義します" -#: sql_help.c:5637 +#: sql_help.c:5657 msgid "define a new procedural language" msgstr "新しい手続き言語を定義します" -#: sql_help.c:5643 +#: sql_help.c:5663 msgid "define a new materialized view" msgstr "新しい実体化ビューを定義します" -#: sql_help.c:5649 +#: sql_help.c:5669 msgid "define a new operator" msgstr "新しい演算子を定義します" -#: sql_help.c:5655 +#: sql_help.c:5675 msgid "define a new operator class" msgstr "新しい演算子クラスを定義します" -#: sql_help.c:5661 +#: sql_help.c:5681 msgid "define a new operator family" msgstr "新しい演算子族を定義します" -#: sql_help.c:5667 +#: sql_help.c:5687 msgid "define a new row-level security policy for a table" msgstr "テーブルに対して新しい行レベルセキュリティポリシーを定義します" -#: sql_help.c:5673 +#: sql_help.c:5693 msgid "define a new procedure" msgstr "新しいプロシージャを定義します" -#: sql_help.c:5679 +#: sql_help.c:5699 msgid "define a new publication" msgstr "新しいパブリケーションを定義します" -#: sql_help.c:5691 +#: sql_help.c:5711 msgid "define a new rewrite rule" msgstr "新しい書き換えルールを定義します" -#: sql_help.c:5697 +#: sql_help.c:5717 msgid "define a new schema" msgstr "新しいスキーマを定義します" -#: sql_help.c:5703 +#: sql_help.c:5723 msgid "define a new sequence generator" msgstr "新しいシーケンス生成器を定義します。" -#: sql_help.c:5709 +#: sql_help.c:5729 msgid "define a new foreign server" msgstr "新しい外部サーバーを定義します" -#: sql_help.c:5715 +#: sql_help.c:5735 msgid "define extended statistics" msgstr "拡張統計情報を定義します" -#: sql_help.c:5721 +#: sql_help.c:5741 msgid "define a new subscription" msgstr "新しいサブスクリプションを定義します" -#: sql_help.c:5727 +#: sql_help.c:5747 msgid "define a new table" msgstr "新しいテーブルを定義します" -#: sql_help.c:5733 sql_help.c:6255 +#: sql_help.c:5753 sql_help.c:6275 msgid "define a new table from the results of a query" msgstr "問い合わせの結果から新しいテーブルを定義します" -#: sql_help.c:5739 +#: sql_help.c:5759 msgid "define a new tablespace" msgstr "新しいテーブル空間を定義します" -#: sql_help.c:5745 +#: sql_help.c:5765 msgid "define a new text search configuration" msgstr "新しいテキスト検索設定を定義します" -#: sql_help.c:5751 +#: sql_help.c:5771 msgid "define a new text search dictionary" msgstr "新しいテキスト検索辞書を定義します" -#: sql_help.c:5757 +#: sql_help.c:5777 msgid "define a new text search parser" msgstr "新しいテキスト検索パーサーを定義します" -#: sql_help.c:5763 +#: sql_help.c:5783 msgid "define a new text search template" msgstr "新しいテキスト検索テンプレートを定義します" -#: sql_help.c:5769 +#: sql_help.c:5789 msgid "define a new transform" msgstr "新しいデータ変換を定義します" -#: sql_help.c:5775 +#: sql_help.c:5795 msgid "define a new trigger" msgstr "新しいトリガーを定義します" -#: sql_help.c:5781 +#: sql_help.c:5801 msgid "define a new data type" msgstr "新しいデータ型を定義します" -#: sql_help.c:5793 +#: sql_help.c:5813 msgid "define a new mapping of a user to a foreign server" msgstr "外部サーバーに対するユーザーの新しいマッピングを定義します。" -#: sql_help.c:5799 +#: sql_help.c:5819 msgid "define a new view" msgstr "新しいビューを定義します" -#: sql_help.c:5805 +#: sql_help.c:5825 msgid "deallocate a prepared statement" msgstr "準備した文を解放します" -#: sql_help.c:5811 +#: sql_help.c:5831 msgid "define a cursor" msgstr "カーソルを定義します" -#: sql_help.c:5817 +#: sql_help.c:5837 msgid "delete rows of a table" msgstr "テーブルの行を削除します" -#: sql_help.c:5823 +#: sql_help.c:5843 msgid "discard session state" msgstr "セッション状態を破棄します" -#: sql_help.c:5829 +#: sql_help.c:5849 msgid "execute an anonymous code block" msgstr "無名コードブロックを実行します" -#: sql_help.c:5835 +#: sql_help.c:5855 msgid "remove an access method" msgstr "アクセスメソッドを削除します" -#: sql_help.c:5841 +#: sql_help.c:5861 msgid "remove an aggregate function" msgstr "集約関数を削除します" -#: sql_help.c:5847 +#: sql_help.c:5867 msgid "remove a cast" msgstr "型変換を削除します" -#: sql_help.c:5853 +#: sql_help.c:5873 msgid "remove a collation" msgstr "照合順序を削除します" -#: sql_help.c:5859 +#: sql_help.c:5879 msgid "remove a conversion" msgstr "符号化方式変換を削除します" -#: sql_help.c:5865 +#: sql_help.c:5885 msgid "remove a database" msgstr "データベースを削除します" -#: sql_help.c:5871 +#: sql_help.c:5891 msgid "remove a domain" msgstr "ドメインを削除します" -#: sql_help.c:5877 +#: sql_help.c:5897 msgid "remove an event trigger" msgstr "イベントトリガーを削除します" -#: sql_help.c:5883 +#: sql_help.c:5903 msgid "remove an extension" msgstr "機能拡張を削除します" -#: sql_help.c:5889 +#: sql_help.c:5909 msgid "remove a foreign-data wrapper" msgstr "外部データラッパを削除します" -#: sql_help.c:5895 +#: sql_help.c:5915 msgid "remove a foreign table" msgstr "外部テーブルを削除します" -#: sql_help.c:5901 +#: sql_help.c:5921 msgid "remove a function" msgstr "関数を削除します" -#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 +#: sql_help.c:5927 sql_help.c:5993 sql_help.c:6095 msgid "remove a database role" msgstr "データベースロールを削除します" -#: sql_help.c:5913 +#: sql_help.c:5933 msgid "remove an index" msgstr "インデックスを削除します" -#: sql_help.c:5919 +#: sql_help.c:5939 msgid "remove a procedural language" msgstr "手続き言語を削除します" -#: sql_help.c:5925 +#: sql_help.c:5945 msgid "remove a materialized view" msgstr "実体化ビューを削除します" -#: sql_help.c:5931 +#: sql_help.c:5951 msgid "remove an operator" msgstr "演算子を削除します" -#: sql_help.c:5937 +#: sql_help.c:5957 msgid "remove an operator class" msgstr "演算子クラスを削除します" -#: sql_help.c:5943 +#: sql_help.c:5963 msgid "remove an operator family" msgstr "演算子族を削除します" -#: sql_help.c:5949 +#: sql_help.c:5969 msgid "remove database objects owned by a database role" msgstr "データベースロールが所有するデータベースオブジェクトを削除します" -#: sql_help.c:5955 +#: sql_help.c:5975 msgid "remove a row-level security policy from a table" msgstr "テーブルから行レベルのセキュリティポリシーを削除します" -#: sql_help.c:5961 +#: sql_help.c:5981 msgid "remove a procedure" msgstr "プロシージャを削除します" -#: sql_help.c:5967 +#: sql_help.c:5987 msgid "remove a publication" msgstr "パブリケーションを削除します" -#: sql_help.c:5979 +#: sql_help.c:5999 msgid "remove a routine" msgstr "ルーチンを削除します" -#: sql_help.c:5985 +#: sql_help.c:6005 msgid "remove a rewrite rule" msgstr "書き換えルールを削除します" -#: sql_help.c:5991 +#: sql_help.c:6011 msgid "remove a schema" msgstr "スキーマを削除します" -#: sql_help.c:5997 +#: sql_help.c:6017 msgid "remove a sequence" msgstr "シーケンスを削除します" -#: sql_help.c:6003 +#: sql_help.c:6023 msgid "remove a foreign server descriptor" msgstr "外部サーバー記述子を削除します" -#: sql_help.c:6009 +#: sql_help.c:6029 msgid "remove extended statistics" msgstr "拡張統計情報を削除します" -#: sql_help.c:6015 +#: sql_help.c:6035 msgid "remove a subscription" msgstr "サブスクリプションを削除します" -#: sql_help.c:6021 +#: sql_help.c:6041 msgid "remove a table" msgstr "テーブルを削除します" -#: sql_help.c:6027 +#: sql_help.c:6047 msgid "remove a tablespace" msgstr "テーブル空間を削除します" -#: sql_help.c:6033 +#: sql_help.c:6053 msgid "remove a text search configuration" msgstr "テキスト検索設定を削除します" -#: sql_help.c:6039 +#: sql_help.c:6059 msgid "remove a text search dictionary" msgstr "テキスト検索辞書を削除します" -#: sql_help.c:6045 +#: sql_help.c:6065 msgid "remove a text search parser" msgstr "テキスト検索パーサーを削除します" -#: sql_help.c:6051 +#: sql_help.c:6071 msgid "remove a text search template" msgstr "テキスト検索テンプレートを削除します" -#: sql_help.c:6057 +#: sql_help.c:6077 msgid "remove a transform" msgstr "データ変換を削除します" -#: sql_help.c:6063 +#: sql_help.c:6083 msgid "remove a trigger" msgstr "トリガーを削除します" -#: sql_help.c:6069 +#: sql_help.c:6089 msgid "remove a data type" msgstr "データ型を削除します" -#: sql_help.c:6081 +#: sql_help.c:6101 msgid "remove a user mapping for a foreign server" msgstr "外部サーバーのユーザーマッピングを削除します" -#: sql_help.c:6087 +#: sql_help.c:6107 msgid "remove a view" msgstr "ビューを削除します" -#: sql_help.c:6099 +#: sql_help.c:6119 msgid "execute a prepared statement" msgstr "準備した文を実行します" -#: sql_help.c:6105 +#: sql_help.c:6125 msgid "show the execution plan of a statement" msgstr "文の実行計画を表示します" -#: sql_help.c:6111 +#: sql_help.c:6131 msgid "retrieve rows from a query using a cursor" msgstr "カーソルを使って問い合わせから行を取り出します" -#: sql_help.c:6117 +#: sql_help.c:6137 msgid "define access privileges" msgstr "アクセス権限を定義します" -#: sql_help.c:6123 +#: sql_help.c:6143 msgid "import table definitions from a foreign server" msgstr "外部サーバーからテーブル定義をインポートします" -#: sql_help.c:6129 +#: sql_help.c:6149 msgid "create new rows in a table" msgstr "テーブルに新しい行を作成します" -#: sql_help.c:6135 +#: sql_help.c:6155 msgid "listen for a notification" msgstr "通知メッセージを監視します" -#: sql_help.c:6141 +#: sql_help.c:6161 msgid "load a shared library file" msgstr "共有ライブラリファイルをロードします" -#: sql_help.c:6147 +#: sql_help.c:6167 msgid "lock a table" msgstr "テーブルをロックします" -#: sql_help.c:6153 +#: sql_help.c:6173 msgid "conditionally insert, update, or delete rows of a table" msgstr "条件によってテーブルの行を挿入、更新または削除する" -#: sql_help.c:6159 +#: sql_help.c:6179 msgid "position a cursor" msgstr "カーソルを位置づけます" -#: sql_help.c:6165 +#: sql_help.c:6185 msgid "generate a notification" msgstr "通知を生成します" -#: sql_help.c:6171 +#: sql_help.c:6191 msgid "prepare a statement for execution" msgstr "実行に備えて文を準備します" -#: sql_help.c:6177 +#: sql_help.c:6197 msgid "prepare the current transaction for two-phase commit" msgstr "二相コミットに備えて現在のトランザクションを準備します" -#: sql_help.c:6183 +#: sql_help.c:6203 msgid "change the ownership of database objects owned by a database role" msgstr "データベースロールが所有するデータベースオブジェクトの所有権を変更します" -#: sql_help.c:6189 +#: sql_help.c:6209 msgid "replace the contents of a materialized view" msgstr "実体化ビューの内容を置き換えます" -#: sql_help.c:6195 +#: sql_help.c:6215 msgid "rebuild indexes" msgstr "インデックスを再構築します" -#: sql_help.c:6201 +#: sql_help.c:6221 msgid "release a previously defined savepoint" msgstr "以前に定義されたセーブポイントを解放します" -#: sql_help.c:6207 +#: sql_help.c:6227 msgid "restore the value of a run-time parameter to the default value" msgstr "実行時パラメータの値をデフォルト値に戻します" -#: sql_help.c:6213 +#: sql_help.c:6233 msgid "remove access privileges" msgstr "アクセス権限を削除します" -#: sql_help.c:6225 +#: sql_help.c:6245 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "二相コミットのために事前に準備されたトランザクションをキャンセルします" -#: sql_help.c:6231 +#: sql_help.c:6251 msgid "roll back to a savepoint" msgstr "セーブポイントまでロールバックします" -#: sql_help.c:6237 +#: sql_help.c:6257 msgid "define a new savepoint within the current transaction" msgstr "現在のトランザクション内で新しいセーブポイントを定義します" -#: sql_help.c:6243 +#: sql_help.c:6263 msgid "define or change a security label applied to an object" msgstr "オブジェクトに適用されるセキュリティラベルを定義または変更します" -#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 +#: sql_help.c:6269 sql_help.c:6323 sql_help.c:6359 msgid "retrieve rows from a table or view" msgstr "テーブルまたはビューから行を取得します" -#: sql_help.c:6261 +#: sql_help.c:6281 msgid "change a run-time parameter" msgstr "実行時パラメータを変更します" -#: sql_help.c:6267 +#: sql_help.c:6287 msgid "set constraint check timing for the current transaction" msgstr "現在のトランザクションについて、制約チェックのタイミングを設定します" -#: sql_help.c:6273 +#: sql_help.c:6293 msgid "set the current user identifier of the current session" msgstr "現在のセッションの現在のユーザー識別子を設定します" -#: sql_help.c:6279 +#: sql_help.c:6299 msgid "set the session user identifier and the current user identifier of the current session" msgstr "セッションのユーザー識別子および現在のセッションの現在のユーザー識別子を設定します" -#: sql_help.c:6285 +#: sql_help.c:6305 msgid "set the characteristics of the current transaction" msgstr "現在のトランザクションの特性を設定します" -#: sql_help.c:6291 +#: sql_help.c:6311 msgid "show the value of a run-time parameter" msgstr "実行時パラメータの値を表示します" -#: sql_help.c:6309 +#: sql_help.c:6329 msgid "empty a table or set of tables" msgstr "一つの、または複数のテーブルを空にします" -#: sql_help.c:6315 +#: sql_help.c:6335 msgid "stop listening for a notification" msgstr "通知メッセージの監視を中止します" -#: sql_help.c:6321 +#: sql_help.c:6341 msgid "update rows of a table" msgstr "テーブルの行を更新します" -#: sql_help.c:6327 +#: sql_help.c:6347 msgid "garbage-collect and optionally analyze a database" msgstr "ガーベッジコレクションを行い、また必要に応じてデータベースを分析します" -#: sql_help.c:6333 +#: sql_help.c:6353 msgid "compute a set of rows" msgstr "行セットを計算します" diff --git a/src/bin/psql/po/ru.po b/src/bin/psql/po/ru.po index cdcc99f984c..be1beb51489 100644 --- a/src/bin/psql/po/ru.po +++ b/src/bin/psql/po/ru.po @@ -4,14 +4,14 @@ # Serguei A. Mokhov , 2001-2005. # Oleg Bartunov , 2004-2005. # Sergey Burladyan , 2012. -# SPDX-FileCopyrightText: 2012-2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2012-2025, 2026 Alexander Lakhin # Maxim Yablokov , 2021. msgid "" msgstr "" "Project-Id-Version: psql (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-09 06:28+0200\n" -"PO-Revision-Date: 2025-11-09 08:23+0200\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 09:12+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -4722,189 +4722,189 @@ msgstr "%s: нехватка памяти" #: sql_help.c:746 sql_help.c:750 sql_help.c:771 sql_help.c:774 sql_help.c:777 #: sql_help.c:806 sql_help.c:818 sql_help.c:826 sql_help.c:829 sql_help.c:832 #: sql_help.c:847 sql_help.c:850 sql_help.c:879 sql_help.c:884 sql_help.c:889 -#: sql_help.c:894 sql_help.c:899 sql_help.c:926 sql_help.c:928 sql_help.c:930 -#: sql_help.c:932 sql_help.c:935 sql_help.c:937 sql_help.c:984 sql_help.c:1029 -#: sql_help.c:1034 sql_help.c:1039 sql_help.c:1044 sql_help.c:1049 -#: sql_help.c:1068 sql_help.c:1079 sql_help.c:1081 sql_help.c:1102 -#: sql_help.c:1112 sql_help.c:1113 sql_help.c:1115 sql_help.c:1117 -#: sql_help.c:1129 sql_help.c:1133 sql_help.c:1135 sql_help.c:1147 -#: sql_help.c:1149 sql_help.c:1151 sql_help.c:1153 sql_help.c:1172 -#: sql_help.c:1174 sql_help.c:1178 sql_help.c:1182 sql_help.c:1186 -#: sql_help.c:1189 sql_help.c:1190 sql_help.c:1191 sql_help.c:1194 -#: sql_help.c:1197 sql_help.c:1199 sql_help.c:1341 sql_help.c:1343 -#: sql_help.c:1346 sql_help.c:1349 sql_help.c:1351 sql_help.c:1353 -#: sql_help.c:1356 sql_help.c:1359 sql_help.c:1487 sql_help.c:1489 -#: sql_help.c:1491 sql_help.c:1494 sql_help.c:1515 sql_help.c:1518 -#: sql_help.c:1521 sql_help.c:1524 sql_help.c:1528 sql_help.c:1530 -#: sql_help.c:1532 sql_help.c:1534 sql_help.c:1548 sql_help.c:1551 -#: sql_help.c:1553 sql_help.c:1555 sql_help.c:1565 sql_help.c:1567 -#: sql_help.c:1577 sql_help.c:1579 sql_help.c:1589 sql_help.c:1592 -#: sql_help.c:1615 sql_help.c:1617 sql_help.c:1619 sql_help.c:1621 -#: sql_help.c:1624 sql_help.c:1626 sql_help.c:1629 sql_help.c:1632 -#: sql_help.c:1683 sql_help.c:1726 sql_help.c:1729 sql_help.c:1731 -#: sql_help.c:1733 sql_help.c:1736 sql_help.c:1738 sql_help.c:1740 -#: sql_help.c:1743 sql_help.c:1793 sql_help.c:1809 sql_help.c:2044 -#: sql_help.c:2113 sql_help.c:2132 sql_help.c:2145 sql_help.c:2203 -#: sql_help.c:2211 sql_help.c:2221 sql_help.c:2249 sql_help.c:2282 -#: sql_help.c:2300 sql_help.c:2328 sql_help.c:2451 sql_help.c:2497 -#: sql_help.c:2522 sql_help.c:2545 sql_help.c:2549 sql_help.c:2583 -#: sql_help.c:2603 sql_help.c:2625 sql_help.c:2639 sql_help.c:2660 -#: sql_help.c:2689 sql_help.c:2722 sql_help.c:2745 sql_help.c:2794 -#: sql_help.c:3098 sql_help.c:3111 sql_help.c:3128 sql_help.c:3144 -#: sql_help.c:3184 sql_help.c:3238 sql_help.c:3242 sql_help.c:3244 -#: sql_help.c:3251 sql_help.c:3270 sql_help.c:3297 sql_help.c:3332 -#: sql_help.c:3344 sql_help.c:3353 sql_help.c:3399 sql_help.c:3413 -#: sql_help.c:3441 sql_help.c:3449 sql_help.c:3461 sql_help.c:3471 -#: sql_help.c:3479 sql_help.c:3487 sql_help.c:3495 sql_help.c:3503 -#: sql_help.c:3512 sql_help.c:3523 sql_help.c:3531 sql_help.c:3539 -#: sql_help.c:3547 sql_help.c:3555 sql_help.c:3565 sql_help.c:3574 -#: sql_help.c:3583 sql_help.c:3591 sql_help.c:3601 sql_help.c:3612 -#: sql_help.c:3620 sql_help.c:3629 sql_help.c:3640 sql_help.c:3649 -#: sql_help.c:3657 sql_help.c:3665 sql_help.c:3673 sql_help.c:3681 -#: sql_help.c:3689 sql_help.c:3697 sql_help.c:3705 sql_help.c:3713 -#: sql_help.c:3721 sql_help.c:3729 sql_help.c:3746 sql_help.c:3755 -#: sql_help.c:3763 sql_help.c:3780 sql_help.c:3795 sql_help.c:4110 -#: sql_help.c:4233 sql_help.c:4262 sql_help.c:4278 sql_help.c:4280 -#: sql_help.c:4784 sql_help.c:4832 sql_help.c:4991 +#: sql_help.c:894 sql_help.c:899 sql_help.c:935 sql_help.c:937 sql_help.c:939 +#: sql_help.c:941 sql_help.c:944 sql_help.c:946 sql_help.c:998 sql_help.c:1043 +#: sql_help.c:1048 sql_help.c:1053 sql_help.c:1058 sql_help.c:1063 +#: sql_help.c:1082 sql_help.c:1093 sql_help.c:1095 sql_help.c:1116 +#: sql_help.c:1126 sql_help.c:1127 sql_help.c:1129 sql_help.c:1131 +#: sql_help.c:1143 sql_help.c:1147 sql_help.c:1149 sql_help.c:1161 +#: sql_help.c:1163 sql_help.c:1165 sql_help.c:1167 sql_help.c:1186 +#: sql_help.c:1188 sql_help.c:1192 sql_help.c:1196 sql_help.c:1200 +#: sql_help.c:1203 sql_help.c:1204 sql_help.c:1205 sql_help.c:1208 +#: sql_help.c:1211 sql_help.c:1213 sql_help.c:1355 sql_help.c:1357 +#: sql_help.c:1360 sql_help.c:1363 sql_help.c:1365 sql_help.c:1367 +#: sql_help.c:1370 sql_help.c:1373 sql_help.c:1501 sql_help.c:1503 +#: sql_help.c:1505 sql_help.c:1508 sql_help.c:1529 sql_help.c:1532 +#: sql_help.c:1535 sql_help.c:1538 sql_help.c:1542 sql_help.c:1544 +#: sql_help.c:1546 sql_help.c:1548 sql_help.c:1562 sql_help.c:1565 +#: sql_help.c:1567 sql_help.c:1569 sql_help.c:1579 sql_help.c:1581 +#: sql_help.c:1591 sql_help.c:1593 sql_help.c:1603 sql_help.c:1606 +#: sql_help.c:1629 sql_help.c:1631 sql_help.c:1633 sql_help.c:1635 +#: sql_help.c:1638 sql_help.c:1640 sql_help.c:1643 sql_help.c:1646 +#: sql_help.c:1697 sql_help.c:1740 sql_help.c:1743 sql_help.c:1745 +#: sql_help.c:1747 sql_help.c:1750 sql_help.c:1752 sql_help.c:1754 +#: sql_help.c:1757 sql_help.c:1807 sql_help.c:1823 sql_help.c:2058 +#: sql_help.c:2127 sql_help.c:2146 sql_help.c:2159 sql_help.c:2217 +#: sql_help.c:2225 sql_help.c:2235 sql_help.c:2263 sql_help.c:2296 +#: sql_help.c:2314 sql_help.c:2342 sql_help.c:2465 sql_help.c:2511 +#: sql_help.c:2536 sql_help.c:2559 sql_help.c:2563 sql_help.c:2597 +#: sql_help.c:2617 sql_help.c:2639 sql_help.c:2653 sql_help.c:2674 +#: sql_help.c:2707 sql_help.c:2742 sql_help.c:2765 sql_help.c:2814 +#: sql_help.c:3118 sql_help.c:3131 sql_help.c:3148 sql_help.c:3164 +#: sql_help.c:3204 sql_help.c:3258 sql_help.c:3262 sql_help.c:3264 +#: sql_help.c:3271 sql_help.c:3290 sql_help.c:3317 sql_help.c:3352 +#: sql_help.c:3364 sql_help.c:3373 sql_help.c:3419 sql_help.c:3433 +#: sql_help.c:3461 sql_help.c:3469 sql_help.c:3481 sql_help.c:3491 +#: sql_help.c:3499 sql_help.c:3507 sql_help.c:3515 sql_help.c:3523 +#: sql_help.c:3532 sql_help.c:3543 sql_help.c:3551 sql_help.c:3559 +#: sql_help.c:3567 sql_help.c:3575 sql_help.c:3585 sql_help.c:3594 +#: sql_help.c:3603 sql_help.c:3611 sql_help.c:3621 sql_help.c:3632 +#: sql_help.c:3640 sql_help.c:3649 sql_help.c:3660 sql_help.c:3669 +#: sql_help.c:3677 sql_help.c:3685 sql_help.c:3693 sql_help.c:3701 +#: sql_help.c:3709 sql_help.c:3717 sql_help.c:3725 sql_help.c:3733 +#: sql_help.c:3741 sql_help.c:3749 sql_help.c:3766 sql_help.c:3775 +#: sql_help.c:3783 sql_help.c:3800 sql_help.c:3815 sql_help.c:4130 +#: sql_help.c:4253 sql_help.c:4282 sql_help.c:4298 sql_help.c:4300 +#: sql_help.c:4804 sql_help.c:4852 sql_help.c:5011 msgid "name" msgstr "имя" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1886 -#: sql_help.c:3414 sql_help.c:4551 +#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1900 +#: sql_help.c:3434 sql_help.c:4571 msgid "aggregate_signature" msgstr "сигнатура_агр_функции" #: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:274 #: sql_help.c:295 sql_help.c:426 sql_help.c:473 sql_help.c:552 sql_help.c:600 #: sql_help.c:618 sql_help.c:645 sql_help.c:698 sql_help.c:773 sql_help.c:828 -#: sql_help.c:849 sql_help.c:888 sql_help.c:938 sql_help.c:985 sql_help.c:1038 -#: sql_help.c:1070 sql_help.c:1080 sql_help.c:1116 sql_help.c:1136 -#: sql_help.c:1150 sql_help.c:1200 sql_help.c:1350 sql_help.c:1488 -#: sql_help.c:1531 sql_help.c:1552 sql_help.c:1566 sql_help.c:1578 -#: sql_help.c:1591 sql_help.c:1618 sql_help.c:1684 sql_help.c:1737 +#: sql_help.c:849 sql_help.c:888 sql_help.c:947 sql_help.c:999 sql_help.c:1052 +#: sql_help.c:1084 sql_help.c:1094 sql_help.c:1130 sql_help.c:1150 +#: sql_help.c:1164 sql_help.c:1214 sql_help.c:1364 sql_help.c:1502 +#: sql_help.c:1545 sql_help.c:1566 sql_help.c:1580 sql_help.c:1592 +#: sql_help.c:1605 sql_help.c:1632 sql_help.c:1698 sql_help.c:1751 msgid "new_name" msgstr "новое_имя" #: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:272 #: sql_help.c:293 sql_help.c:424 sql_help.c:509 sql_help.c:557 sql_help.c:647 #: sql_help.c:656 sql_help.c:721 sql_help.c:745 sql_help.c:776 sql_help.c:831 -#: sql_help.c:893 sql_help.c:936 sql_help.c:1043 sql_help.c:1082 -#: sql_help.c:1114 sql_help.c:1134 sql_help.c:1148 sql_help.c:1198 -#: sql_help.c:1417 sql_help.c:1490 sql_help.c:1533 sql_help.c:1554 -#: sql_help.c:1616 sql_help.c:1732 sql_help.c:3084 +#: sql_help.c:893 sql_help.c:945 sql_help.c:1057 sql_help.c:1096 +#: sql_help.c:1128 sql_help.c:1148 sql_help.c:1162 sql_help.c:1212 +#: sql_help.c:1431 sql_help.c:1504 sql_help.c:1547 sql_help.c:1568 +#: sql_help.c:1630 sql_help.c:1746 sql_help.c:3104 msgid "new_owner" msgstr "новый_владелец" #: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:276 sql_help.c:346 #: sql_help.c:475 sql_help.c:562 sql_help.c:700 sql_help.c:749 sql_help.c:779 -#: sql_help.c:834 sql_help.c:898 sql_help.c:1048 sql_help.c:1118 -#: sql_help.c:1152 sql_help.c:1352 sql_help.c:1535 sql_help.c:1556 -#: sql_help.c:1568 sql_help.c:1580 sql_help.c:1620 sql_help.c:1739 +#: sql_help.c:834 sql_help.c:898 sql_help.c:1062 sql_help.c:1132 +#: sql_help.c:1166 sql_help.c:1366 sql_help.c:1549 sql_help.c:1570 +#: sql_help.c:1582 sql_help.c:1594 sql_help.c:1634 sql_help.c:1753 msgid "new_schema" msgstr "новая_схема" -#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 +#: sql_help.c:44 sql_help.c:1964 sql_help.c:3435 sql_help.c:4600 msgid "where aggregate_signature is:" msgstr "где сигнатура_агр_функции:" #: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:364 sql_help.c:377 #: sql_help.c:381 sql_help.c:397 sql_help.c:400 sql_help.c:403 sql_help.c:544 #: sql_help.c:549 sql_help.c:554 sql_help.c:559 sql_help.c:564 sql_help.c:880 -#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1030 -#: sql_help.c:1035 sql_help.c:1040 sql_help.c:1045 sql_help.c:1050 -#: sql_help.c:1904 sql_help.c:1921 sql_help.c:1927 sql_help.c:1951 -#: sql_help.c:1954 sql_help.c:1957 sql_help.c:2114 sql_help.c:2133 -#: sql_help.c:2136 sql_help.c:2452 sql_help.c:2661 sql_help.c:3416 -#: sql_help.c:3419 sql_help.c:3422 sql_help.c:3513 sql_help.c:3602 -#: sql_help.c:3630 sql_help.c:3983 sql_help.c:4450 sql_help.c:4557 -#: sql_help.c:4564 sql_help.c:4570 sql_help.c:4581 sql_help.c:4584 -#: sql_help.c:4587 +#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1044 +#: sql_help.c:1049 sql_help.c:1054 sql_help.c:1059 sql_help.c:1064 +#: sql_help.c:1918 sql_help.c:1935 sql_help.c:1941 sql_help.c:1965 +#: sql_help.c:1968 sql_help.c:1971 sql_help.c:2128 sql_help.c:2147 +#: sql_help.c:2150 sql_help.c:2466 sql_help.c:2675 sql_help.c:3436 +#: sql_help.c:3439 sql_help.c:3442 sql_help.c:3533 sql_help.c:3622 +#: sql_help.c:3650 sql_help.c:4003 sql_help.c:4470 sql_help.c:4577 +#: sql_help.c:4584 sql_help.c:4590 sql_help.c:4601 sql_help.c:4604 +#: sql_help.c:4607 msgid "argmode" msgstr "режим_аргумента" #: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:365 sql_help.c:378 #: sql_help.c:382 sql_help.c:398 sql_help.c:401 sql_help.c:404 sql_help.c:545 #: sql_help.c:550 sql_help.c:555 sql_help.c:560 sql_help.c:565 sql_help.c:881 -#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1031 -#: sql_help.c:1036 sql_help.c:1041 sql_help.c:1046 sql_help.c:1051 -#: sql_help.c:1905 sql_help.c:1922 sql_help.c:1928 sql_help.c:1952 -#: sql_help.c:1955 sql_help.c:1958 sql_help.c:2115 sql_help.c:2134 -#: sql_help.c:2137 sql_help.c:2453 sql_help.c:2662 sql_help.c:3417 -#: sql_help.c:3420 sql_help.c:3423 sql_help.c:3514 sql_help.c:3603 -#: sql_help.c:3631 sql_help.c:4558 sql_help.c:4565 sql_help.c:4571 -#: sql_help.c:4582 sql_help.c:4585 sql_help.c:4588 +#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1045 +#: sql_help.c:1050 sql_help.c:1055 sql_help.c:1060 sql_help.c:1065 +#: sql_help.c:1919 sql_help.c:1936 sql_help.c:1942 sql_help.c:1966 +#: sql_help.c:1969 sql_help.c:1972 sql_help.c:2129 sql_help.c:2148 +#: sql_help.c:2151 sql_help.c:2467 sql_help.c:2676 sql_help.c:3437 +#: sql_help.c:3440 sql_help.c:3443 sql_help.c:3534 sql_help.c:3623 +#: sql_help.c:3651 sql_help.c:4578 sql_help.c:4585 sql_help.c:4591 +#: sql_help.c:4602 sql_help.c:4605 sql_help.c:4608 msgid "argname" msgstr "имя_аргумента" #: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:366 sql_help.c:379 #: sql_help.c:383 sql_help.c:399 sql_help.c:402 sql_help.c:405 sql_help.c:546 #: sql_help.c:551 sql_help.c:556 sql_help.c:561 sql_help.c:566 sql_help.c:882 -#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1032 -#: sql_help.c:1037 sql_help.c:1042 sql_help.c:1047 sql_help.c:1052 -#: sql_help.c:1906 sql_help.c:1923 sql_help.c:1929 sql_help.c:1953 -#: sql_help.c:1956 sql_help.c:1959 sql_help.c:2454 sql_help.c:2663 -#: sql_help.c:3418 sql_help.c:3421 sql_help.c:3424 sql_help.c:3515 -#: sql_help.c:3604 sql_help.c:3632 sql_help.c:4559 sql_help.c:4566 -#: sql_help.c:4572 sql_help.c:4583 sql_help.c:4586 sql_help.c:4589 +#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1046 +#: sql_help.c:1051 sql_help.c:1056 sql_help.c:1061 sql_help.c:1066 +#: sql_help.c:1920 sql_help.c:1937 sql_help.c:1943 sql_help.c:1967 +#: sql_help.c:1970 sql_help.c:1973 sql_help.c:2468 sql_help.c:2677 +#: sql_help.c:3438 sql_help.c:3441 sql_help.c:3444 sql_help.c:3535 +#: sql_help.c:3624 sql_help.c:3652 sql_help.c:4579 sql_help.c:4586 +#: sql_help.c:4592 sql_help.c:4603 sql_help.c:4606 sql_help.c:4609 msgid "argtype" msgstr "тип_аргумента" -#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:979 -#: sql_help.c:1131 sql_help.c:1549 sql_help.c:1678 sql_help.c:1710 -#: sql_help.c:1762 sql_help.c:1821 sql_help.c:2011 sql_help.c:2018 -#: sql_help.c:2331 sql_help.c:2389 sql_help.c:2398 sql_help.c:2407 -#: sql_help.c:2498 sql_help.c:2723 sql_help.c:2816 sql_help.c:3113 -#: sql_help.c:3298 sql_help.c:3320 sql_help.c:3462 sql_help.c:3819 -#: sql_help.c:4027 sql_help.c:4277 sql_help.c:4279 sql_help.c:5059 +#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:993 +#: sql_help.c:1145 sql_help.c:1563 sql_help.c:1692 sql_help.c:1724 +#: sql_help.c:1776 sql_help.c:1835 sql_help.c:2025 sql_help.c:2032 +#: sql_help.c:2345 sql_help.c:2403 sql_help.c:2412 sql_help.c:2421 +#: sql_help.c:2512 sql_help.c:2743 sql_help.c:2836 sql_help.c:3133 +#: sql_help.c:3318 sql_help.c:3340 sql_help.c:3482 sql_help.c:3839 +#: sql_help.c:4047 sql_help.c:4297 sql_help.c:4299 sql_help.c:5079 msgid "option" msgstr "параметр" -#: sql_help.c:115 sql_help.c:980 sql_help.c:1679 sql_help.c:2499 -#: sql_help.c:2724 sql_help.c:3299 sql_help.c:3463 +#: sql_help.c:115 sql_help.c:994 sql_help.c:1693 sql_help.c:2513 +#: sql_help.c:2744 sql_help.c:3319 sql_help.c:3483 msgid "where option can be:" msgstr "где допустимые параметры:" -#: sql_help.c:116 sql_help.c:2263 +#: sql_help.c:116 sql_help.c:2277 msgid "allowconn" msgstr "разр_подключения" -#: sql_help.c:117 sql_help.c:981 sql_help.c:1680 sql_help.c:2264 -#: sql_help.c:2500 sql_help.c:2725 sql_help.c:3300 +#: sql_help.c:117 sql_help.c:995 sql_help.c:1694 sql_help.c:2278 +#: sql_help.c:2514 sql_help.c:2745 sql_help.c:3320 msgid "connlimit" msgstr "предел_подключений" -#: sql_help.c:118 sql_help.c:2265 +#: sql_help.c:118 sql_help.c:2279 msgid "istemplate" msgstr "это_шаблон" -#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1355 -#: sql_help.c:1410 sql_help.c:4283 +#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1369 +#: sql_help.c:1424 sql_help.c:4303 msgid "new_tablespace" msgstr "новое_табл_пространство" #: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:572 sql_help.c:574 -#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:988 -#: sql_help.c:992 sql_help.c:995 sql_help.c:1057 sql_help.c:1059 -#: sql_help.c:1060 sql_help.c:1211 sql_help.c:1213 sql_help.c:1687 -#: sql_help.c:1691 sql_help.c:1694 sql_help.c:2464 sql_help.c:2667 -#: sql_help.c:3995 sql_help.c:4301 sql_help.c:4462 sql_help.c:4772 +#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:1002 +#: sql_help.c:1006 sql_help.c:1009 sql_help.c:1071 sql_help.c:1073 +#: sql_help.c:1074 sql_help.c:1225 sql_help.c:1227 sql_help.c:1701 +#: sql_help.c:1705 sql_help.c:1708 sql_help.c:2478 sql_help.c:2681 +#: sql_help.c:4015 sql_help.c:4321 sql_help.c:4482 sql_help.c:4792 msgid "configuration_parameter" msgstr "параметр_конфигурации" #: sql_help.c:128 sql_help.c:422 sql_help.c:493 sql_help.c:499 sql_help.c:511 #: sql_help.c:573 sql_help.c:627 sql_help.c:709 sql_help.c:719 sql_help.c:906 -#: sql_help.c:934 sql_help.c:989 sql_help.c:1058 sql_help.c:1132 -#: sql_help.c:1177 sql_help.c:1181 sql_help.c:1185 sql_help.c:1188 -#: sql_help.c:1193 sql_help.c:1196 sql_help.c:1212 sql_help.c:1388 -#: sql_help.c:1412 sql_help.c:1465 sql_help.c:1473 sql_help.c:1493 -#: sql_help.c:1550 sql_help.c:1634 sql_help.c:1688 sql_help.c:1711 -#: sql_help.c:2332 sql_help.c:2390 sql_help.c:2399 sql_help.c:2408 -#: sql_help.c:2465 sql_help.c:2466 sql_help.c:2530 sql_help.c:2533 -#: sql_help.c:2567 sql_help.c:2668 sql_help.c:2669 sql_help.c:2692 -#: sql_help.c:2817 sql_help.c:2856 sql_help.c:2967 sql_help.c:2980 -#: sql_help.c:2994 sql_help.c:3040 sql_help.c:3048 sql_help.c:3070 -#: sql_help.c:3087 sql_help.c:3114 sql_help.c:3321 sql_help.c:4028 -#: sql_help.c:4773 sql_help.c:4774 sql_help.c:4775 sql_help.c:4776 +#: sql_help.c:943 sql_help.c:1003 sql_help.c:1072 sql_help.c:1146 +#: sql_help.c:1191 sql_help.c:1195 sql_help.c:1199 sql_help.c:1202 +#: sql_help.c:1207 sql_help.c:1210 sql_help.c:1226 sql_help.c:1402 +#: sql_help.c:1426 sql_help.c:1479 sql_help.c:1487 sql_help.c:1507 +#: sql_help.c:1564 sql_help.c:1648 sql_help.c:1702 sql_help.c:1725 +#: sql_help.c:2346 sql_help.c:2404 sql_help.c:2413 sql_help.c:2422 +#: sql_help.c:2479 sql_help.c:2480 sql_help.c:2544 sql_help.c:2547 +#: sql_help.c:2581 sql_help.c:2682 sql_help.c:2683 sql_help.c:2710 +#: sql_help.c:2837 sql_help.c:2876 sql_help.c:2987 sql_help.c:3000 +#: sql_help.c:3014 sql_help.c:3060 sql_help.c:3068 sql_help.c:3090 +#: sql_help.c:3107 sql_help.c:3134 sql_help.c:3341 sql_help.c:4048 +#: sql_help.c:4793 sql_help.c:4794 sql_help.c:4795 sql_help.c:4796 msgid "value" msgstr "значение" @@ -4912,10 +4912,10 @@ msgstr "значение" msgid "target_role" msgstr "целевая_роль" -#: sql_help.c:215 sql_help.c:943 sql_help.c:2316 sql_help.c:2697 -#: sql_help.c:2770 sql_help.c:2775 sql_help.c:3958 sql_help.c:3967 -#: sql_help.c:3986 sql_help.c:3998 sql_help.c:4425 sql_help.c:4434 -#: sql_help.c:4453 sql_help.c:4465 +#: sql_help.c:215 sql_help.c:950 sql_help.c:953 sql_help.c:2330 sql_help.c:2713 +#: sql_help.c:2790 sql_help.c:2795 sql_help.c:3978 sql_help.c:3987 +#: sql_help.c:4006 sql_help.c:4018 sql_help.c:4445 sql_help.c:4454 +#: sql_help.c:4473 sql_help.c:4485 msgid "schema_name" msgstr "имя_схемы" @@ -4930,57 +4930,57 @@ msgstr "где допустимое предложение_GRANT_или_REVOKE:" #: sql_help.c:218 sql_help.c:219 sql_help.c:220 sql_help.c:221 sql_help.c:222 #: sql_help.c:223 sql_help.c:224 sql_help.c:225 sql_help.c:226 sql_help.c:227 #: sql_help.c:228 sql_help.c:229 sql_help.c:598 sql_help.c:634 sql_help.c:702 -#: sql_help.c:852 sql_help.c:999 sql_help.c:1354 sql_help.c:1698 -#: sql_help.c:2503 sql_help.c:2504 sql_help.c:2505 sql_help.c:2506 -#: sql_help.c:2507 sql_help.c:2641 sql_help.c:2728 sql_help.c:2729 -#: sql_help.c:2730 sql_help.c:3303 sql_help.c:3304 sql_help.c:3305 -#: sql_help.c:3306 sql_help.c:3307 sql_help.c:4007 sql_help.c:4011 -#: sql_help.c:4474 sql_help.c:4478 sql_help.c:4794 +#: sql_help.c:852 sql_help.c:1013 sql_help.c:1368 sql_help.c:1712 +#: sql_help.c:2517 sql_help.c:2518 sql_help.c:2519 sql_help.c:2520 +#: sql_help.c:2521 sql_help.c:2655 sql_help.c:2748 sql_help.c:2749 +#: sql_help.c:2750 sql_help.c:3323 sql_help.c:3324 sql_help.c:3325 +#: sql_help.c:3326 sql_help.c:3327 sql_help.c:4027 sql_help.c:4031 +#: sql_help.c:4494 sql_help.c:4498 sql_help.c:4814 msgid "role_name" msgstr "имя_роли" -#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:942 sql_help.c:1370 -#: sql_help.c:1372 sql_help.c:1376 sql_help.c:1427 sql_help.c:1439 -#: sql_help.c:1469 sql_help.c:1728 sql_help.c:2285 sql_help.c:2289 -#: sql_help.c:2411 sql_help.c:2417 sql_help.c:2526 sql_help.c:2696 -#: sql_help.c:2833 sql_help.c:2838 sql_help.c:2840 sql_help.c:2962 -#: sql_help.c:2975 sql_help.c:2989 sql_help.c:2998 sql_help.c:3010 -#: sql_help.c:3044 sql_help.c:4060 sql_help.c:4076 sql_help.c:4078 -#: sql_help.c:4176 sql_help.c:4179 sql_help.c:4181 sql_help.c:4644 -#: sql_help.c:4645 sql_help.c:4654 sql_help.c:4701 sql_help.c:4702 -#: sql_help.c:4703 sql_help.c:4704 sql_help.c:4705 sql_help.c:4706 -#: sql_help.c:4747 sql_help.c:4748 sql_help.c:4753 sql_help.c:4758 -#: sql_help.c:4902 sql_help.c:4903 sql_help.c:4912 sql_help.c:4959 -#: sql_help.c:4960 sql_help.c:4961 sql_help.c:4962 sql_help.c:4963 -#: sql_help.c:4964 sql_help.c:5020 sql_help.c:5022 sql_help.c:5089 -#: sql_help.c:5149 sql_help.c:5150 sql_help.c:5159 sql_help.c:5206 -#: sql_help.c:5207 sql_help.c:5208 sql_help.c:5209 sql_help.c:5210 -#: sql_help.c:5211 +#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:957 sql_help.c:1384 +#: sql_help.c:1386 sql_help.c:1390 sql_help.c:1441 sql_help.c:1453 +#: sql_help.c:1483 sql_help.c:1742 sql_help.c:2299 sql_help.c:2303 +#: sql_help.c:2425 sql_help.c:2431 sql_help.c:2540 sql_help.c:2717 +#: sql_help.c:2853 sql_help.c:2858 sql_help.c:2860 sql_help.c:2982 +#: sql_help.c:2995 sql_help.c:3009 sql_help.c:3018 sql_help.c:3030 +#: sql_help.c:3064 sql_help.c:4080 sql_help.c:4096 sql_help.c:4098 +#: sql_help.c:4196 sql_help.c:4199 sql_help.c:4201 sql_help.c:4664 +#: sql_help.c:4665 sql_help.c:4674 sql_help.c:4721 sql_help.c:4722 +#: sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 sql_help.c:4726 +#: sql_help.c:4767 sql_help.c:4768 sql_help.c:4773 sql_help.c:4778 +#: sql_help.c:4922 sql_help.c:4923 sql_help.c:4932 sql_help.c:4979 +#: sql_help.c:4980 sql_help.c:4981 sql_help.c:4982 sql_help.c:4983 +#: sql_help.c:4984 sql_help.c:5040 sql_help.c:5042 sql_help.c:5109 +#: sql_help.c:5169 sql_help.c:5170 sql_help.c:5179 sql_help.c:5226 +#: sql_help.c:5227 sql_help.c:5228 sql_help.c:5229 sql_help.c:5230 +#: sql_help.c:5231 msgid "expression" msgstr "выражение" -#: sql_help.c:263 sql_help.c:2286 +#: sql_help.c:263 sql_help.c:2300 msgid "domain_constraint" msgstr "ограничение_домена" #: sql_help.c:265 sql_help.c:267 sql_help.c:270 sql_help.c:278 sql_help.c:501 -#: sql_help.c:502 sql_help.c:1347 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:1398 sql_help.c:1399 sql_help.c:1426 sql_help.c:1438 -#: sql_help.c:1460 sql_help.c:1892 sql_help.c:1894 sql_help.c:2288 -#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2997 sql_help.c:3009 -#: sql_help.c:4073 +#: sql_help.c:502 sql_help.c:1361 sql_help.c:1410 sql_help.c:1411 +#: sql_help.c:1412 sql_help.c:1413 sql_help.c:1440 sql_help.c:1452 +#: sql_help.c:1474 sql_help.c:1906 sql_help.c:1908 sql_help.c:2302 +#: sql_help.c:2424 sql_help.c:2429 sql_help.c:3017 sql_help.c:3029 +#: sql_help.c:4093 msgid "constraint_name" msgstr "имя_ограничения" -#: sql_help.c:268 sql_help.c:1348 +#: sql_help.c:268 sql_help.c:1362 msgid "new_constraint_name" msgstr "имя_нового_ограничения" -#: sql_help.c:277 sql_help.c:2287 +#: sql_help.c:277 sql_help.c:2301 msgid "where domain_constraint is:" msgstr "где ограничение_домена может быть следующим:" -#: sql_help.c:344 sql_help.c:1130 +#: sql_help.c:344 sql_help.c:1144 msgid "new_version" msgstr "новая_версия" @@ -4996,83 +4996,83 @@ msgstr "где элемент_объект:" #: sql_help.c:361 sql_help.c:362 sql_help.c:367 sql_help.c:371 sql_help.c:373 #: sql_help.c:375 sql_help.c:384 sql_help.c:385 sql_help.c:386 sql_help.c:387 #: sql_help.c:388 sql_help.c:389 sql_help.c:390 sql_help.c:391 sql_help.c:394 -#: sql_help.c:395 sql_help.c:1884 sql_help.c:1889 sql_help.c:1896 -#: sql_help.c:1897 sql_help.c:1898 sql_help.c:1899 sql_help.c:1900 -#: sql_help.c:1901 sql_help.c:1902 sql_help.c:1907 sql_help.c:1909 -#: sql_help.c:1913 sql_help.c:1915 sql_help.c:1919 sql_help.c:1924 -#: sql_help.c:1925 sql_help.c:1932 sql_help.c:1933 sql_help.c:1934 -#: sql_help.c:1935 sql_help.c:1936 sql_help.c:1937 sql_help.c:1938 -#: sql_help.c:1939 sql_help.c:1940 sql_help.c:1941 sql_help.c:1942 -#: sql_help.c:1947 sql_help.c:1948 sql_help.c:4547 sql_help.c:4552 -#: sql_help.c:4553 sql_help.c:4554 sql_help.c:4555 sql_help.c:4561 -#: sql_help.c:4562 sql_help.c:4567 sql_help.c:4568 sql_help.c:4573 -#: sql_help.c:4574 sql_help.c:4575 sql_help.c:4576 sql_help.c:4577 -#: sql_help.c:4578 +#: sql_help.c:395 sql_help.c:1898 sql_help.c:1903 sql_help.c:1910 +#: sql_help.c:1911 sql_help.c:1912 sql_help.c:1913 sql_help.c:1914 +#: sql_help.c:1915 sql_help.c:1916 sql_help.c:1921 sql_help.c:1923 +#: sql_help.c:1927 sql_help.c:1929 sql_help.c:1933 sql_help.c:1938 +#: sql_help.c:1939 sql_help.c:1946 sql_help.c:1947 sql_help.c:1948 +#: sql_help.c:1949 sql_help.c:1950 sql_help.c:1951 sql_help.c:1952 +#: sql_help.c:1953 sql_help.c:1954 sql_help.c:1955 sql_help.c:1956 +#: sql_help.c:1961 sql_help.c:1962 sql_help.c:4567 sql_help.c:4572 +#: sql_help.c:4573 sql_help.c:4574 sql_help.c:4575 sql_help.c:4581 +#: sql_help.c:4582 sql_help.c:4587 sql_help.c:4588 sql_help.c:4593 +#: sql_help.c:4594 sql_help.c:4595 sql_help.c:4596 sql_help.c:4597 +#: sql_help.c:4598 msgid "object_name" msgstr "имя_объекта" # well-spelled: агр -#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 +#: sql_help.c:353 sql_help.c:1899 sql_help.c:4570 msgid "aggregate_name" msgstr "имя_агр_функции" -#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 -#: sql_help.c:2185 sql_help.c:3432 +#: sql_help.c:355 sql_help.c:1901 sql_help.c:2193 sql_help.c:2197 +#: sql_help.c:2199 sql_help.c:3452 msgid "source_type" msgstr "исходный_тип" -#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 -#: sql_help.c:2186 sql_help.c:3433 +#: sql_help.c:356 sql_help.c:1902 sql_help.c:2194 sql_help.c:2198 +#: sql_help.c:2200 sql_help.c:3453 msgid "target_type" msgstr "целевой_тип" -#: sql_help.c:363 sql_help.c:816 sql_help.c:1903 sql_help.c:2181 -#: sql_help.c:2224 sql_help.c:2304 sql_help.c:2584 sql_help.c:2615 -#: sql_help.c:3190 sql_help.c:4449 sql_help.c:4556 sql_help.c:4673 -#: sql_help.c:4677 sql_help.c:4681 sql_help.c:4684 sql_help.c:4931 -#: sql_help.c:4935 sql_help.c:4939 sql_help.c:4942 sql_help.c:5178 -#: sql_help.c:5182 sql_help.c:5186 sql_help.c:5189 +#: sql_help.c:363 sql_help.c:816 sql_help.c:1917 sql_help.c:2195 +#: sql_help.c:2238 sql_help.c:2318 sql_help.c:2598 sql_help.c:2629 +#: sql_help.c:3210 sql_help.c:4469 sql_help.c:4576 sql_help.c:4693 +#: sql_help.c:4697 sql_help.c:4701 sql_help.c:4704 sql_help.c:4951 +#: sql_help.c:4955 sql_help.c:4959 sql_help.c:4962 sql_help.c:5198 +#: sql_help.c:5202 sql_help.c:5206 sql_help.c:5209 msgid "function_name" msgstr "имя_функции" -#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1924 sql_help.c:2622 msgid "operator_name" msgstr "имя_оператора" -#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1911 -#: sql_help.c:2585 sql_help.c:3556 +#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1925 +#: sql_help.c:2599 sql_help.c:3576 msgid "left_type" msgstr "тип_слева" -#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1912 -#: sql_help.c:2586 sql_help.c:3557 +#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1926 +#: sql_help.c:2600 sql_help.c:3577 msgid "right_type" msgstr "тип_справа" #: sql_help.c:372 sql_help.c:374 sql_help.c:772 sql_help.c:775 sql_help.c:778 #: sql_help.c:807 sql_help.c:819 sql_help.c:827 sql_help.c:830 sql_help.c:833 -#: sql_help.c:1447 sql_help.c:1914 sql_help.c:1916 sql_help.c:2605 -#: sql_help.c:2626 sql_help.c:3018 sql_help.c:3566 sql_help.c:3575 +#: sql_help.c:1461 sql_help.c:1928 sql_help.c:1930 sql_help.c:2619 +#: sql_help.c:2640 sql_help.c:3038 sql_help.c:3586 sql_help.c:3595 msgid "index_method" msgstr "метод_индекса" -#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 +#: sql_help.c:376 sql_help.c:1934 sql_help.c:4583 msgid "procedure_name" msgstr "имя_процедуры" -#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 +#: sql_help.c:380 sql_help.c:1940 sql_help.c:4002 sql_help.c:4589 msgid "routine_name" msgstr "имя_подпрограммы" -#: sql_help.c:392 sql_help.c:1416 sql_help.c:1943 sql_help.c:2460 -#: sql_help.c:2666 sql_help.c:2970 sql_help.c:3157 sql_help.c:3737 -#: sql_help.c:4004 sql_help.c:4471 +#: sql_help.c:392 sql_help.c:1430 sql_help.c:1957 sql_help.c:2474 +#: sql_help.c:2680 sql_help.c:2990 sql_help.c:3177 sql_help.c:3757 +#: sql_help.c:4024 sql_help.c:4491 msgid "type_name" msgstr "имя_типа" -#: sql_help.c:393 sql_help.c:1944 sql_help.c:2459 sql_help.c:2665 -#: sql_help.c:3158 sql_help.c:3390 sql_help.c:3738 sql_help.c:3989 -#: sql_help.c:4456 +#: sql_help.c:393 sql_help.c:1958 sql_help.c:2473 sql_help.c:2679 +#: sql_help.c:3178 sql_help.c:3410 sql_help.c:3758 sql_help.c:4009 +#: sql_help.c:4476 msgid "lang_name" msgstr "имя_языка" @@ -5080,149 +5080,149 @@ msgstr "имя_языка" msgid "and aggregate_signature is:" msgstr "и сигнатура_агр_функции:" -#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 +#: sql_help.c:419 sql_help.c:2060 sql_help.c:2343 msgid "handler_function" msgstr "функция_обработчик" -#: sql_help.c:420 sql_help.c:2330 +#: sql_help.c:420 sql_help.c:2344 msgid "validator_function" msgstr "функция_проверки" -#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1033 -#: sql_help.c:1342 sql_help.c:1625 +#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1047 +#: sql_help.c:1356 sql_help.c:1639 msgid "action" msgstr "действие" #: sql_help.c:470 sql_help.c:477 sql_help.c:481 sql_help.c:482 sql_help.c:485 #: sql_help.c:487 sql_help.c:488 sql_help.c:489 sql_help.c:491 sql_help.c:494 #: sql_help.c:496 sql_help.c:497 sql_help.c:695 sql_help.c:705 sql_help.c:707 -#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:941 sql_help.c:1111 -#: sql_help.c:1344 sql_help.c:1362 sql_help.c:1366 sql_help.c:1367 -#: sql_help.c:1371 sql_help.c:1373 sql_help.c:1374 sql_help.c:1375 -#: sql_help.c:1377 sql_help.c:1378 sql_help.c:1380 sql_help.c:1383 -#: sql_help.c:1384 sql_help.c:1386 sql_help.c:1389 sql_help.c:1391 -#: sql_help.c:1392 sql_help.c:1440 sql_help.c:1441 sql_help.c:1442 -#: sql_help.c:1444 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1463 sql_help.c:1468 sql_help.c:1475 sql_help.c:1476 -#: sql_help.c:1727 sql_help.c:1730 sql_help.c:1734 sql_help.c:1770 -#: sql_help.c:1891 sql_help.c:2008 sql_help.c:2014 sql_help.c:2028 -#: sql_help.c:2029 sql_help.c:2030 sql_help.c:2387 sql_help.c:2402 -#: sql_help.c:2416 sql_help.c:2457 sql_help.c:2525 sql_help.c:2531 -#: sql_help.c:2564 sql_help.c:2695 sql_help.c:2802 sql_help.c:2837 -#: sql_help.c:2839 sql_help.c:2952 sql_help.c:2961 sql_help.c:2971 -#: sql_help.c:2974 sql_help.c:2984 sql_help.c:2988 sql_help.c:3011 -#: sql_help.c:3012 sql_help.c:3013 sql_help.c:3015 sql_help.c:3016 -#: sql_help.c:3023 sql_help.c:3024 sql_help.c:3038 sql_help.c:3043 -#: sql_help.c:3050 sql_help.c:3051 sql_help.c:3067 sql_help.c:3193 -#: sql_help.c:3333 sql_help.c:3961 sql_help.c:3962 sql_help.c:4059 -#: sql_help.c:4075 sql_help.c:4077 sql_help.c:4079 sql_help.c:4175 -#: sql_help.c:4178 sql_help.c:4180 sql_help.c:4182 sql_help.c:4428 -#: sql_help.c:4429 sql_help.c:4549 sql_help.c:4710 sql_help.c:4717 -#: sql_help.c:4719 sql_help.c:4968 sql_help.c:4975 sql_help.c:4977 -#: sql_help.c:5019 sql_help.c:5021 sql_help.c:5023 sql_help.c:5077 -#: sql_help.c:5215 sql_help.c:5222 sql_help.c:5224 +#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:956 sql_help.c:1125 +#: sql_help.c:1358 sql_help.c:1376 sql_help.c:1380 sql_help.c:1381 +#: sql_help.c:1385 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1391 sql_help.c:1392 sql_help.c:1394 sql_help.c:1397 +#: sql_help.c:1398 sql_help.c:1400 sql_help.c:1403 sql_help.c:1405 +#: sql_help.c:1406 sql_help.c:1454 sql_help.c:1455 sql_help.c:1456 +#: sql_help.c:1458 sql_help.c:1459 sql_help.c:1466 sql_help.c:1467 +#: sql_help.c:1477 sql_help.c:1482 sql_help.c:1489 sql_help.c:1490 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:1748 sql_help.c:1784 +#: sql_help.c:1905 sql_help.c:2022 sql_help.c:2028 sql_help.c:2042 +#: sql_help.c:2043 sql_help.c:2044 sql_help.c:2401 sql_help.c:2416 +#: sql_help.c:2430 sql_help.c:2471 sql_help.c:2539 sql_help.c:2545 +#: sql_help.c:2578 sql_help.c:2716 sql_help.c:2822 sql_help.c:2857 +#: sql_help.c:2859 sql_help.c:2972 sql_help.c:2981 sql_help.c:2991 +#: sql_help.c:2994 sql_help.c:3004 sql_help.c:3008 sql_help.c:3031 +#: sql_help.c:3032 sql_help.c:3033 sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:3043 sql_help.c:3044 sql_help.c:3058 sql_help.c:3063 +#: sql_help.c:3070 sql_help.c:3071 sql_help.c:3087 sql_help.c:3213 +#: sql_help.c:3353 sql_help.c:3981 sql_help.c:3982 sql_help.c:4079 +#: sql_help.c:4095 sql_help.c:4097 sql_help.c:4099 sql_help.c:4195 +#: sql_help.c:4198 sql_help.c:4200 sql_help.c:4202 sql_help.c:4448 +#: sql_help.c:4449 sql_help.c:4569 sql_help.c:4730 sql_help.c:4737 +#: sql_help.c:4739 sql_help.c:4988 sql_help.c:4995 sql_help.c:4997 +#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5043 sql_help.c:5097 +#: sql_help.c:5235 sql_help.c:5242 sql_help.c:5244 msgid "column_name" msgstr "имя_столбца" -#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1359 sql_help.c:1749 msgid "new_column_name" msgstr "новое_имя_столбца" -#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1054 -#: sql_help.c:1361 sql_help.c:1635 +#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1068 +#: sql_help.c:1375 sql_help.c:1649 msgid "where action is one of:" msgstr "где допустимое действие:" -#: sql_help.c:478 sql_help.c:483 sql_help.c:1103 sql_help.c:1363 -#: sql_help.c:1368 sql_help.c:1637 sql_help.c:1641 sql_help.c:2283 -#: sql_help.c:2388 sql_help.c:2604 sql_help.c:2795 sql_help.c:2953 -#: sql_help.c:3240 sql_help.c:4234 +#: sql_help.c:478 sql_help.c:483 sql_help.c:1117 sql_help.c:1377 +#: sql_help.c:1382 sql_help.c:1651 sql_help.c:1655 sql_help.c:2297 +#: sql_help.c:2402 sql_help.c:2618 sql_help.c:2815 sql_help.c:2973 +#: sql_help.c:3260 sql_help.c:4254 msgid "data_type" msgstr "тип_данных" -#: sql_help.c:479 sql_help.c:484 sql_help.c:1364 sql_help.c:1369 -#: sql_help.c:1470 sql_help.c:1638 sql_help.c:1642 sql_help.c:2284 -#: sql_help.c:2391 sql_help.c:2527 sql_help.c:2955 sql_help.c:2963 -#: sql_help.c:2976 sql_help.c:2990 sql_help.c:3045 sql_help.c:3241 -#: sql_help.c:3247 sql_help.c:4070 +#: sql_help.c:479 sql_help.c:484 sql_help.c:1378 sql_help.c:1383 +#: sql_help.c:1484 sql_help.c:1652 sql_help.c:1656 sql_help.c:2298 +#: sql_help.c:2405 sql_help.c:2541 sql_help.c:2975 sql_help.c:2983 +#: sql_help.c:2996 sql_help.c:3010 sql_help.c:3065 sql_help.c:3261 +#: sql_help.c:3267 sql_help.c:4090 msgid "collation" msgstr "правило_сортировки" -#: sql_help.c:480 sql_help.c:1365 sql_help.c:2392 sql_help.c:2403 -#: sql_help.c:2956 sql_help.c:2972 sql_help.c:2985 +#: sql_help.c:480 sql_help.c:1379 sql_help.c:2406 sql_help.c:2417 +#: sql_help.c:2976 sql_help.c:2992 sql_help.c:3005 msgid "column_constraint" msgstr "ограничение_столбца" -#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1399 sql_help.c:5091 msgid "integer" msgstr "целое" -#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 -#: sql_help.c:1390 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1401 +#: sql_help.c:1404 msgid "attribute_option" msgstr "атрибут" -#: sql_help.c:500 sql_help.c:1394 sql_help.c:2393 sql_help.c:2404 -#: sql_help.c:2957 sql_help.c:2973 sql_help.c:2986 +#: sql_help.c:500 sql_help.c:1408 sql_help.c:2407 sql_help.c:2418 +#: sql_help.c:2977 sql_help.c:2993 sql_help.c:3006 msgid "table_constraint" msgstr "ограничение_таблицы" -#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1400 -#: sql_help.c:1401 sql_help.c:1402 sql_help.c:1403 sql_help.c:1945 +#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1414 +#: sql_help.c:1415 sql_help.c:1416 sql_help.c:1417 sql_help.c:1959 msgid "trigger_name" msgstr "имя_триггера" -#: sql_help.c:507 sql_help.c:508 sql_help.c:1414 sql_help.c:1415 -#: sql_help.c:2396 sql_help.c:2401 sql_help.c:2960 sql_help.c:2983 +#: sql_help.c:507 sql_help.c:508 sql_help.c:1428 sql_help.c:1429 +#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2980 sql_help.c:3003 msgid "parent_table" msgstr "таблица_родитель" -#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1053 -#: sql_help.c:1594 sql_help.c:2315 +#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1067 +#: sql_help.c:1608 sql_help.c:2329 msgid "extension_name" msgstr "имя_расширения" -#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 +#: sql_help.c:569 sql_help.c:1069 sql_help.c:2475 msgid "execution_cost" msgstr "стоимость_выполнения" -#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 +#: sql_help.c:570 sql_help.c:1070 sql_help.c:2476 msgid "result_rows" msgstr "строк_в_результате" -#: sql_help.c:571 sql_help.c:2463 +#: sql_help.c:571 sql_help.c:2477 msgid "support_function" msgstr "вспомогательная_функция" -#: sql_help.c:593 sql_help.c:595 sql_help.c:978 sql_help.c:986 sql_help.c:990 -#: sql_help.c:993 sql_help.c:996 sql_help.c:1677 sql_help.c:1685 -#: sql_help.c:1689 sql_help.c:1692 sql_help.c:1695 sql_help.c:2771 -#: sql_help.c:2773 sql_help.c:2776 sql_help.c:2777 sql_help.c:3959 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:3965 sql_help.c:3968 -#: sql_help.c:3969 sql_help.c:3971 sql_help.c:3972 sql_help.c:3974 -#: sql_help.c:3975 sql_help.c:3977 sql_help.c:3978 sql_help.c:3980 -#: sql_help.c:3981 sql_help.c:3987 sql_help.c:3988 sql_help.c:3990 -#: sql_help.c:3991 sql_help.c:3993 sql_help.c:3994 sql_help.c:3996 -#: sql_help.c:3997 sql_help.c:3999 sql_help.c:4000 sql_help.c:4002 -#: sql_help.c:4003 sql_help.c:4005 sql_help.c:4006 sql_help.c:4008 -#: sql_help.c:4009 sql_help.c:4426 sql_help.c:4427 sql_help.c:4431 -#: sql_help.c:4432 sql_help.c:4435 sql_help.c:4436 sql_help.c:4438 -#: sql_help.c:4439 sql_help.c:4441 sql_help.c:4442 sql_help.c:4444 -#: sql_help.c:4445 sql_help.c:4447 sql_help.c:4448 sql_help.c:4454 -#: sql_help.c:4455 sql_help.c:4457 sql_help.c:4458 sql_help.c:4460 -#: sql_help.c:4461 sql_help.c:4463 sql_help.c:4464 sql_help.c:4466 -#: sql_help.c:4467 sql_help.c:4469 sql_help.c:4470 sql_help.c:4472 -#: sql_help.c:4473 sql_help.c:4475 sql_help.c:4476 +#: sql_help.c:593 sql_help.c:595 sql_help.c:992 sql_help.c:1000 sql_help.c:1004 +#: sql_help.c:1007 sql_help.c:1010 sql_help.c:1691 sql_help.c:1699 +#: sql_help.c:1703 sql_help.c:1706 sql_help.c:1709 sql_help.c:2791 +#: sql_help.c:2793 sql_help.c:2796 sql_help.c:2797 sql_help.c:3979 +#: sql_help.c:3980 sql_help.c:3984 sql_help.c:3985 sql_help.c:3988 +#: sql_help.c:3989 sql_help.c:3991 sql_help.c:3992 sql_help.c:3994 +#: sql_help.c:3995 sql_help.c:3997 sql_help.c:3998 sql_help.c:4000 +#: sql_help.c:4001 sql_help.c:4007 sql_help.c:4008 sql_help.c:4010 +#: sql_help.c:4011 sql_help.c:4013 sql_help.c:4014 sql_help.c:4016 +#: sql_help.c:4017 sql_help.c:4019 sql_help.c:4020 sql_help.c:4022 +#: sql_help.c:4023 sql_help.c:4025 sql_help.c:4026 sql_help.c:4028 +#: sql_help.c:4029 sql_help.c:4446 sql_help.c:4447 sql_help.c:4451 +#: sql_help.c:4452 sql_help.c:4455 sql_help.c:4456 sql_help.c:4458 +#: sql_help.c:4459 sql_help.c:4461 sql_help.c:4462 sql_help.c:4464 +#: sql_help.c:4465 sql_help.c:4467 sql_help.c:4468 sql_help.c:4474 +#: sql_help.c:4475 sql_help.c:4477 sql_help.c:4478 sql_help.c:4480 +#: sql_help.c:4481 sql_help.c:4483 sql_help.c:4484 sql_help.c:4486 +#: sql_help.c:4487 sql_help.c:4489 sql_help.c:4490 sql_help.c:4492 +#: sql_help.c:4493 sql_help.c:4495 sql_help.c:4496 msgid "role_specification" msgstr "указание_роли" -#: sql_help.c:594 sql_help.c:596 sql_help.c:1708 sql_help.c:2250 -#: sql_help.c:2779 sql_help.c:3318 sql_help.c:3771 sql_help.c:4804 +#: sql_help.c:594 sql_help.c:596 sql_help.c:1722 sql_help.c:2264 +#: sql_help.c:2799 sql_help.c:3338 sql_help.c:3791 sql_help.c:4824 msgid "user_name" msgstr "имя_пользователя" -#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 -#: sql_help.c:4010 sql_help.c:4477 +#: sql_help.c:597 sql_help.c:1012 sql_help.c:1711 sql_help.c:2798 +#: sql_help.c:4030 sql_help.c:4497 msgid "where role_specification can be:" msgstr "где допустимое указание_роли:" @@ -5230,22 +5230,22 @@ msgstr "где допустимое указание_роли:" msgid "group_name" msgstr "имя_группы" -#: sql_help.c:620 sql_help.c:1466 sql_help.c:2262 sql_help.c:2534 -#: sql_help.c:2568 sql_help.c:2968 sql_help.c:2981 sql_help.c:2995 -#: sql_help.c:3041 sql_help.c:3071 sql_help.c:3083 sql_help.c:4001 -#: sql_help.c:4468 +#: sql_help.c:620 sql_help.c:1480 sql_help.c:2276 sql_help.c:2548 +#: sql_help.c:2582 sql_help.c:2988 sql_help.c:3001 sql_help.c:3015 +#: sql_help.c:3061 sql_help.c:3091 sql_help.c:3103 sql_help.c:4021 +#: sql_help.c:4488 msgid "tablespace_name" msgstr "табл_пространство" -#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 -#: sql_help.c:1461 sql_help.c:1823 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1422 sql_help.c:1432 +#: sql_help.c:1475 sql_help.c:1837 msgid "index_name" msgstr "имя_индекса" -#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1411 -#: sql_help.c:1413 sql_help.c:1464 sql_help.c:2532 sql_help.c:2566 -#: sql_help.c:2966 sql_help.c:2979 sql_help.c:2993 sql_help.c:3039 -#: sql_help.c:3069 +#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1425 +#: sql_help.c:1427 sql_help.c:1478 sql_help.c:2546 sql_help.c:2580 +#: sql_help.c:2986 sql_help.c:2999 sql_help.c:3013 sql_help.c:3059 +#: sql_help.c:3089 msgid "storage_parameter" msgstr "параметр_хранения" @@ -5253,1888 +5253,1896 @@ msgstr "параметр_хранения" msgid "column_number" msgstr "номер_столбца" -#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 +#: sql_help.c:655 sql_help.c:1922 sql_help.c:4580 msgid "large_object_oid" msgstr "oid_большого_объекта" -#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 +#: sql_help.c:714 sql_help.c:1407 sql_help.c:2974 msgid "compression_method" msgstr "метод_сжатия" -#: sql_help.c:716 sql_help.c:1409 +#: sql_help.c:716 sql_help.c:1423 msgid "new_access_method" msgstr "новый_метод_доступа" -#: sql_help.c:753 sql_help.c:2589 +#: sql_help.c:753 sql_help.c:2603 msgid "res_proc" msgstr "процедура_ограничения" -#: sql_help.c:754 sql_help.c:2590 +#: sql_help.c:754 sql_help.c:2604 msgid "join_proc" msgstr "процедура_соединения" -#: sql_help.c:755 sql_help.c:2587 +#: sql_help.c:755 sql_help.c:2601 msgid "com_op" msgstr "коммут_оператор" -#: sql_help.c:756 sql_help.c:2588 +#: sql_help.c:756 sql_help.c:2602 msgid "neg_op" msgstr "обратный_оператор" -#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2621 msgid "strategy_number" msgstr "номер_стратегии" #: sql_help.c:810 sql_help.c:811 sql_help.c:814 sql_help.c:815 sql_help.c:821 -#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2609 sql_help.c:2610 -#: sql_help.c:2613 sql_help.c:2614 +#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2623 sql_help.c:2624 +#: sql_help.c:2627 sql_help.c:2628 msgid "op_type" msgstr "тип_операции" -#: sql_help.c:812 sql_help.c:2611 +#: sql_help.c:812 sql_help.c:2625 msgid "sort_family_name" msgstr "семейство_сортировки" -#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2626 msgid "support_number" msgstr "номер_опорной_процедуры" -#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 -#: sql_help.c:3162 +#: sql_help.c:817 sql_help.c:2196 sql_help.c:2630 sql_help.c:3180 +#: sql_help.c:3182 msgid "argument_type" msgstr "тип_аргумента" -#: sql_help.c:848 sql_help.c:851 sql_help.c:940 sql_help.c:1069 sql_help.c:1110 -#: sql_help.c:1590 sql_help.c:1593 sql_help.c:1769 sql_help.c:1822 -#: sql_help.c:1893 sql_help.c:1918 sql_help.c:1931 sql_help.c:1946 -#: sql_help.c:2007 sql_help.c:2013 sql_help.c:2386 sql_help.c:2400 -#: sql_help.c:2523 sql_help.c:2563 sql_help.c:2640 sql_help.c:2694 -#: sql_help.c:2747 sql_help.c:2801 sql_help.c:2834 sql_help.c:2841 -#: sql_help.c:2951 sql_help.c:2969 sql_help.c:2982 sql_help.c:3066 -#: sql_help.c:3186 sql_help.c:3368 sql_help.c:3592 sql_help.c:3641 -#: sql_help.c:3747 sql_help.c:3957 sql_help.c:3963 sql_help.c:4024 -#: sql_help.c:4057 sql_help.c:4424 sql_help.c:4430 sql_help.c:4548 -#: sql_help.c:4661 sql_help.c:4724 sql_help.c:4763 sql_help.c:4919 -#: sql_help.c:4982 sql_help.c:5017 sql_help.c:5076 sql_help.c:5166 -#: sql_help.c:5229 +#: sql_help.c:848 sql_help.c:851 sql_help.c:952 sql_help.c:955 sql_help.c:1083 +#: sql_help.c:1124 sql_help.c:1604 sql_help.c:1607 sql_help.c:1783 +#: sql_help.c:1836 sql_help.c:1907 sql_help.c:1932 sql_help.c:1945 +#: sql_help.c:1960 sql_help.c:2021 sql_help.c:2027 sql_help.c:2400 +#: sql_help.c:2414 sql_help.c:2537 sql_help.c:2577 sql_help.c:2654 +#: sql_help.c:2715 sql_help.c:2767 sql_help.c:2821 sql_help.c:2854 +#: sql_help.c:2861 sql_help.c:2971 sql_help.c:2989 sql_help.c:3002 +#: sql_help.c:3086 sql_help.c:3206 sql_help.c:3388 sql_help.c:3612 +#: sql_help.c:3661 sql_help.c:3767 sql_help.c:3977 sql_help.c:3983 +#: sql_help.c:4044 sql_help.c:4077 sql_help.c:4444 sql_help.c:4450 +#: sql_help.c:4568 sql_help.c:4681 sql_help.c:4744 sql_help.c:4783 +#: sql_help.c:4939 sql_help.c:5002 sql_help.c:5037 sql_help.c:5096 +#: sql_help.c:5186 sql_help.c:5249 msgid "table_name" msgstr "имя_таблицы" -#: sql_help.c:853 sql_help.c:2642 +#: sql_help.c:853 sql_help.c:2656 msgid "using_expression" msgstr "выражение_использования" -#: sql_help.c:854 sql_help.c:2643 +#: sql_help.c:854 sql_help.c:2657 msgid "check_expression" msgstr "выражение_проверки" -#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 +#: sql_help.c:936 sql_help.c:938 sql_help.c:2708 msgid "publication_object" msgstr "объект_публикации" -#: sql_help.c:933 sql_help.c:2691 +#: sql_help.c:940 +msgid "publication_drop_object" +msgstr "удаляемый_объект_публикации" + +#: sql_help.c:942 sql_help.c:2709 msgid "publication_parameter" msgstr "параметр_публикации" -#: sql_help.c:939 sql_help.c:2693 +#: sql_help.c:948 sql_help.c:2711 msgid "where publication_object is one of:" msgstr "где объект_публикации:" -#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 -#: sql_help.c:3301 +#: sql_help.c:949 sql_help.c:1777 sql_help.c:2712 sql_help.c:5080 +msgid "table_and_columns" +msgstr "таблица_и_столбцы" + +#: sql_help.c:951 +msgid "and publication_drop_object is one of:" +msgstr "и удаляемый_объект_публикации:" + +#: sql_help.c:954 sql_help.c:1782 sql_help.c:2714 sql_help.c:5095 +msgid "and table_and_columns is:" +msgstr "и таблица_и_столбцы:" + +#: sql_help.c:996 sql_help.c:1695 sql_help.c:2515 sql_help.c:2746 +#: sql_help.c:3321 msgid "password" msgstr "пароль" -#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 -#: sql_help.c:3302 +#: sql_help.c:997 sql_help.c:1696 sql_help.c:2516 sql_help.c:2747 +#: sql_help.c:3322 msgid "timestamp" msgstr "timestamp" -#: sql_help.c:987 sql_help.c:991 sql_help.c:994 sql_help.c:997 sql_help.c:1686 -#: sql_help.c:1690 sql_help.c:1693 sql_help.c:1696 sql_help.c:3970 -#: sql_help.c:4437 +#: sql_help.c:1001 sql_help.c:1005 sql_help.c:1008 sql_help.c:1011 +#: sql_help.c:1700 sql_help.c:1704 sql_help.c:1707 sql_help.c:1710 +#: sql_help.c:3990 sql_help.c:4457 msgid "database_name" msgstr "имя_БД" -#: sql_help.c:1104 sql_help.c:2796 +#: sql_help.c:1118 sql_help.c:2816 msgid "increment" msgstr "шаг" -#: sql_help.c:1105 sql_help.c:2797 +#: sql_help.c:1119 sql_help.c:2817 msgid "minvalue" msgstr "мин_значение" -#: sql_help.c:1106 sql_help.c:2798 +#: sql_help.c:1120 sql_help.c:2818 msgid "maxvalue" msgstr "макс_значение" -#: sql_help.c:1107 sql_help.c:2799 sql_help.c:4657 sql_help.c:4761 -#: sql_help.c:4915 sql_help.c:5093 sql_help.c:5162 +#: sql_help.c:1121 sql_help.c:2819 sql_help.c:4677 sql_help.c:4781 +#: sql_help.c:4935 sql_help.c:5113 sql_help.c:5182 msgid "start" msgstr "начальное_значение" -#: sql_help.c:1108 sql_help.c:1382 +#: sql_help.c:1122 sql_help.c:1396 msgid "restart" msgstr "значение_перезапуска" -#: sql_help.c:1109 sql_help.c:2800 +#: sql_help.c:1123 sql_help.c:2820 msgid "cache" msgstr "кеш" -#: sql_help.c:1154 +#: sql_help.c:1168 msgid "new_target" msgstr "новое_имя" -#: sql_help.c:1173 sql_help.c:2853 +#: sql_help.c:1187 sql_help.c:2873 msgid "conninfo" msgstr "строка_подключения" -#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 +#: sql_help.c:1189 sql_help.c:1193 sql_help.c:1197 sql_help.c:2874 msgid "publication_name" msgstr "имя_публикации" -#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 +#: sql_help.c:1190 sql_help.c:1194 sql_help.c:1198 msgid "publication_option" msgstr "параметр_публикации" -#: sql_help.c:1187 +#: sql_help.c:1201 msgid "refresh_option" msgstr "параметр_обновления" -#: sql_help.c:1192 sql_help.c:2855 +#: sql_help.c:1206 sql_help.c:2875 msgid "subscription_parameter" msgstr "параметр_подписки" -#: sql_help.c:1195 +#: sql_help.c:1209 msgid "skip_option" msgstr "параметр_пропуска" -#: sql_help.c:1357 sql_help.c:1360 +#: sql_help.c:1371 sql_help.c:1374 msgid "partition_name" msgstr "имя_секции" -#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 +#: sql_help.c:1372 sql_help.c:2419 sql_help.c:3007 msgid "partition_bound_spec" msgstr "указание_границ_секции" -#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 +#: sql_help.c:1393 sql_help.c:1444 sql_help.c:3021 msgid "sequence_options" msgstr "параметры_последовательности" -#: sql_help.c:1381 +#: sql_help.c:1395 msgid "sequence_option" msgstr "параметр_последовательности" -#: sql_help.c:1395 +#: sql_help.c:1409 msgid "table_constraint_using_index" msgstr "ограничение_таблицы_с_индексом" -#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 +#: sql_help.c:1418 sql_help.c:1419 sql_help.c:1420 sql_help.c:1421 msgid "rewrite_rule_name" msgstr "имя_правила_перезаписи" -#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 +#: sql_help.c:1433 sql_help.c:2433 sql_help.c:3051 msgid "and partition_bound_spec is:" msgstr "и указание_границ_секции:" -#: sql_help.c:1420 sql_help.c:1421 sql_help.c:1422 sql_help.c:2420 -#: sql_help.c:2421 sql_help.c:2422 sql_help.c:3032 sql_help.c:3033 -#: sql_help.c:3034 +#: sql_help.c:1434 sql_help.c:1435 sql_help.c:1436 sql_help.c:2434 +#: sql_help.c:2435 sql_help.c:2436 sql_help.c:3052 sql_help.c:3053 +#: sql_help.c:3054 msgid "partition_bound_expr" msgstr "выражение_границ_секции" -#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 -#: sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:1437 sql_help.c:1438 sql_help.c:2437 sql_help.c:2438 +#: sql_help.c:3055 sql_help.c:3056 msgid "numeric_literal" msgstr "числовая_константа" -#: sql_help.c:1425 +#: sql_help.c:1439 msgid "and column_constraint is:" msgstr "и ограничение_столбца:" -#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 -#: sql_help.c:2999 +#: sql_help.c:1442 sql_help.c:2426 sql_help.c:2469 sql_help.c:2678 +#: sql_help.c:3019 msgid "default_expr" msgstr "выражение_по_умолчанию" -#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 +#: sql_help.c:1443 sql_help.c:2427 sql_help.c:3020 msgid "generation_expr" msgstr "генерирующее_выражение" -#: sql_help.c:1431 sql_help.c:1432 sql_help.c:1443 sql_help.c:1446 -#: sql_help.c:1450 sql_help.c:3002 sql_help.c:3003 sql_help.c:3014 -#: sql_help.c:3017 sql_help.c:3021 +#: sql_help.c:1445 sql_help.c:1446 sql_help.c:1457 sql_help.c:1460 +#: sql_help.c:1464 sql_help.c:3022 sql_help.c:3023 sql_help.c:3034 +#: sql_help.c:3037 sql_help.c:3041 msgid "index_parameters" msgstr "параметры_индекса" -#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 +#: sql_help.c:1447 sql_help.c:1468 sql_help.c:3024 sql_help.c:3045 msgid "reftable" msgstr "целевая_таблица" -#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 -#: sql_help.c:3026 sql_help.c:3027 +#: sql_help.c:1448 sql_help.c:1469 sql_help.c:1470 sql_help.c:3025 +#: sql_help.c:3046 sql_help.c:3047 msgid "refcolumn" msgstr "целевой_столбец" -#: sql_help.c:1435 sql_help.c:1436 sql_help.c:1457 sql_help.c:1458 -#: sql_help.c:3006 sql_help.c:3007 sql_help.c:3028 sql_help.c:3029 +#: sql_help.c:1449 sql_help.c:1450 sql_help.c:1471 sql_help.c:1472 +#: sql_help.c:3026 sql_help.c:3027 sql_help.c:3048 sql_help.c:3049 msgid "referential_action" msgstr "ссылочное_действие" -#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 +#: sql_help.c:1451 sql_help.c:2428 sql_help.c:3028 msgid "and table_constraint is:" msgstr "и ограничение_таблицы:" -#: sql_help.c:1448 sql_help.c:3019 +#: sql_help.c:1462 sql_help.c:3039 msgid "exclude_element" msgstr "объект_исключения" -#: sql_help.c:1449 sql_help.c:3020 sql_help.c:4655 sql_help.c:4759 -#: sql_help.c:4913 sql_help.c:5091 sql_help.c:5160 +#: sql_help.c:1463 sql_help.c:3040 sql_help.c:4675 sql_help.c:4779 +#: sql_help.c:4933 sql_help.c:5111 sql_help.c:5180 msgid "operator" msgstr "оператор" -#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 +#: sql_help.c:1465 sql_help.c:2549 sql_help.c:3042 msgid "predicate" msgstr "предикат" -#: sql_help.c:1459 +#: sql_help.c:1473 msgid "and table_constraint_using_index is:" msgstr "и ограничение_таблицы_с_индексом:" -#: sql_help.c:1462 sql_help.c:3037 +#: sql_help.c:1476 sql_help.c:3057 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "параметры_индекса в ограничениях UNIQUE, PRIMARY KEY и EXCLUDE:" -#: sql_help.c:1467 sql_help.c:3042 +#: sql_help.c:1481 sql_help.c:3062 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "объект_исключения в ограничении EXCLUDE:" -#: sql_help.c:1471 sql_help.c:2528 sql_help.c:2964 sql_help.c:2977 -#: sql_help.c:2991 sql_help.c:3046 sql_help.c:4071 +#: sql_help.c:1485 sql_help.c:2542 sql_help.c:2984 sql_help.c:2997 +#: sql_help.c:3011 sql_help.c:3066 sql_help.c:4091 msgid "opclass" msgstr "класс_оператора" -#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 +#: sql_help.c:1486 sql_help.c:2543 sql_help.c:3067 msgid "opclass_parameter" msgstr "параметр_класса_оп" -#: sql_help.c:1474 sql_help.c:3049 +#: sql_help.c:1488 sql_help.c:3069 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "ссылочное действие в ограничении FOREIGN KEY/REFERENCES:" -#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 +#: sql_help.c:1506 sql_help.c:1509 sql_help.c:3106 msgid "tablespace_option" msgstr "параметр_табл_пространства" -#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 +#: sql_help.c:1530 sql_help.c:1533 sql_help.c:1539 sql_help.c:1543 msgid "token_type" msgstr "тип_фрагмента" -#: sql_help.c:1517 sql_help.c:1520 +#: sql_help.c:1531 sql_help.c:1534 msgid "dictionary_name" msgstr "имя_словаря" -#: sql_help.c:1522 sql_help.c:1526 +#: sql_help.c:1536 sql_help.c:1540 msgid "old_dictionary" msgstr "старый_словарь" -#: sql_help.c:1523 sql_help.c:1527 +#: sql_help.c:1537 sql_help.c:1541 msgid "new_dictionary" msgstr "новый_словарь" -#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 -#: sql_help.c:3239 +#: sql_help.c:1636 sql_help.c:1650 sql_help.c:1653 sql_help.c:1654 +#: sql_help.c:3259 msgid "attribute_name" msgstr "имя_атрибута" -#: sql_help.c:1623 +#: sql_help.c:1637 msgid "new_attribute_name" msgstr "новое_имя_атрибута" -#: sql_help.c:1627 sql_help.c:1631 +#: sql_help.c:1641 sql_help.c:1645 msgid "new_enum_value" msgstr "новое_значение_перечисления" -#: sql_help.c:1628 +#: sql_help.c:1642 msgid "neighbor_enum_value" msgstr "соседнее_значение_перечисления" -#: sql_help.c:1630 +#: sql_help.c:1644 msgid "existing_enum_value" msgstr "существующее_значение_перечисления" -#: sql_help.c:1633 +#: sql_help.c:1647 msgid "property" msgstr "свойство" -#: sql_help.c:1709 sql_help.c:2397 sql_help.c:2406 sql_help.c:2812 -#: sql_help.c:3319 sql_help.c:3772 sql_help.c:3979 sql_help.c:4025 -#: sql_help.c:4446 +#: sql_help.c:1723 sql_help.c:2411 sql_help.c:2420 sql_help.c:2832 +#: sql_help.c:3339 sql_help.c:3792 sql_help.c:3999 sql_help.c:4045 +#: sql_help.c:4466 msgid "server_name" msgstr "имя_сервера" -#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 +#: sql_help.c:1755 sql_help.c:1758 sql_help.c:3354 msgid "view_option_name" msgstr "имя_параметра_представления" -#: sql_help.c:1742 sql_help.c:3335 +#: sql_help.c:1756 sql_help.c:3355 msgid "view_option_value" msgstr "значение_параметра_представления" -#: sql_help.c:1763 sql_help.c:5060 -msgid "table_and_columns" -msgstr "таблица_и_столбцы" - -#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 -#: sql_help.c:4281 sql_help.c:5061 +#: sql_help.c:1778 sql_help.c:1838 sql_help.c:2033 sql_help.c:3841 +#: sql_help.c:4301 sql_help.c:5081 msgid "where option can be one of:" msgstr "где допустимый параметр:" -#: sql_help.c:1765 sql_help.c:1766 sql_help.c:1825 sql_help.c:2021 -#: sql_help.c:2025 sql_help.c:2208 sql_help.c:3822 sql_help.c:3823 -#: sql_help.c:3824 sql_help.c:3825 sql_help.c:3826 sql_help.c:3827 -#: sql_help.c:3828 sql_help.c:3829 sql_help.c:3830 sql_help.c:3831 -#: sql_help.c:4282 sql_help.c:4284 sql_help.c:5062 sql_help.c:5063 -#: sql_help.c:5064 sql_help.c:5065 sql_help.c:5066 sql_help.c:5067 -#: sql_help.c:5068 sql_help.c:5069 sql_help.c:5070 sql_help.c:5072 -#: sql_help.c:5073 +#: sql_help.c:1779 sql_help.c:1780 sql_help.c:1839 sql_help.c:2035 +#: sql_help.c:2039 sql_help.c:2222 sql_help.c:3842 sql_help.c:3843 +#: sql_help.c:3844 sql_help.c:3845 sql_help.c:3846 sql_help.c:3847 +#: sql_help.c:3848 sql_help.c:3849 sql_help.c:3850 sql_help.c:3851 +#: sql_help.c:4302 sql_help.c:4304 sql_help.c:5082 sql_help.c:5083 +#: sql_help.c:5084 sql_help.c:5085 sql_help.c:5086 sql_help.c:5087 +#: sql_help.c:5088 sql_help.c:5089 sql_help.c:5090 sql_help.c:5092 +#: sql_help.c:5093 msgid "boolean" msgstr "логическое_значение" -#: sql_help.c:1767 sql_help.c:5074 +#: sql_help.c:1781 sql_help.c:5094 msgid "size" msgstr "размер" -#: sql_help.c:1768 sql_help.c:5075 -msgid "and table_and_columns is:" -msgstr "и таблица_и_столбцы:" - -#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 +#: sql_help.c:1798 sql_help.c:4840 sql_help.c:4842 sql_help.c:4866 msgid "transaction_mode" msgstr "режим_транзакции" -#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 +#: sql_help.c:1799 sql_help.c:4843 sql_help.c:4867 msgid "where transaction_mode is one of:" msgstr "где допустимый режим_транзакции:" -#: sql_help.c:1794 sql_help.c:4665 sql_help.c:4674 sql_help.c:4678 -#: sql_help.c:4682 sql_help.c:4685 sql_help.c:4923 sql_help.c:4932 -#: sql_help.c:4936 sql_help.c:4940 sql_help.c:4943 sql_help.c:5170 -#: sql_help.c:5179 sql_help.c:5183 sql_help.c:5187 sql_help.c:5190 +#: sql_help.c:1808 sql_help.c:4685 sql_help.c:4694 sql_help.c:4698 +#: sql_help.c:4702 sql_help.c:4705 sql_help.c:4943 sql_help.c:4952 +#: sql_help.c:4956 sql_help.c:4960 sql_help.c:4963 sql_help.c:5190 +#: sql_help.c:5199 sql_help.c:5203 sql_help.c:5207 sql_help.c:5210 msgid "argument" msgstr "аргумент" -#: sql_help.c:1890 +#: sql_help.c:1904 msgid "relation_name" msgstr "имя_отношения" -#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 +#: sql_help.c:1909 sql_help.c:3993 sql_help.c:4460 msgid "domain_name" msgstr "имя_домена" -#: sql_help.c:1917 +#: sql_help.c:1931 msgid "policy_name" msgstr "имя_политики" -#: sql_help.c:1930 +#: sql_help.c:1944 msgid "rule_name" msgstr "имя_правила" -#: sql_help.c:1949 sql_help.c:4579 +#: sql_help.c:1963 sql_help.c:4599 msgid "string_literal" msgstr "строковая_константа" -#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 +#: sql_help.c:1988 sql_help.c:4263 sql_help.c:4513 msgid "transaction_id" msgstr "код_транзакции" -#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 +#: sql_help.c:2023 sql_help.c:2030 sql_help.c:4117 msgid "filename" msgstr "имя_файла" -#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 -#: sql_help.c:2751 +#: sql_help.c:2024 sql_help.c:2031 sql_help.c:2769 sql_help.c:2770 +#: sql_help.c:2771 msgid "command" msgstr "команда" -#: sql_help.c:2012 sql_help.c:2748 sql_help.c:3189 sql_help.c:3371 -#: sql_help.c:4081 sql_help.c:4166 sql_help.c:4169 sql_help.c:4172 -#: sql_help.c:4648 sql_help.c:4650 sql_help.c:4752 sql_help.c:4754 -#: sql_help.c:4906 sql_help.c:4908 sql_help.c:5026 sql_help.c:5153 -#: sql_help.c:5155 +#: sql_help.c:2026 sql_help.c:2768 sql_help.c:3209 sql_help.c:3391 +#: sql_help.c:4101 sql_help.c:4186 sql_help.c:4189 sql_help.c:4192 +#: sql_help.c:4668 sql_help.c:4670 sql_help.c:4772 sql_help.c:4774 +#: sql_help.c:4926 sql_help.c:4928 sql_help.c:5046 sql_help.c:5173 +#: sql_help.c:5175 msgid "condition" msgstr "условие" -#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 -#: sql_help.c:3354 sql_help.c:4061 +#: sql_help.c:2029 sql_help.c:2583 sql_help.c:3092 sql_help.c:3356 +#: sql_help.c:3374 sql_help.c:4081 msgid "query" msgstr "запрос" -#: sql_help.c:2020 +#: sql_help.c:2034 msgid "format_name" msgstr "имя_формата" -#: sql_help.c:2022 +#: sql_help.c:2036 msgid "delimiter_character" msgstr "символ_разделитель" -#: sql_help.c:2023 +#: sql_help.c:2037 msgid "null_string" msgstr "представление_NULL" -#: sql_help.c:2024 +#: sql_help.c:2038 msgid "default_string" msgstr "представление_DEFAULT" -#: sql_help.c:2026 +#: sql_help.c:2040 msgid "quote_character" msgstr "символ_кавычек" -#: sql_help.c:2027 +#: sql_help.c:2041 msgid "escape_character" msgstr "спецсимвол" -#: sql_help.c:2031 +#: sql_help.c:2045 msgid "error_action" msgstr "действие_при_ошибке" -#: sql_help.c:2032 +#: sql_help.c:2046 msgid "maxerror" msgstr "макс_ошибок" -#: sql_help.c:2033 +#: sql_help.c:2047 msgid "encoding_name" msgstr "имя_кодировки" -#: sql_help.c:2034 +#: sql_help.c:2048 msgid "verbosity" msgstr "детализация" -#: sql_help.c:2045 +#: sql_help.c:2059 msgid "access_method_type" msgstr "тип_метода_доступа" -#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 +#: sql_help.c:2130 sql_help.c:2149 sql_help.c:2152 msgid "arg_data_type" msgstr "тип_данных_аргумента" -#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 +#: sql_help.c:2131 sql_help.c:2153 sql_help.c:2161 msgid "sfunc" msgstr "функция_состояния" -#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 +#: sql_help.c:2132 sql_help.c:2154 sql_help.c:2162 msgid "state_data_type" msgstr "тип_данных_состояния" -#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 +#: sql_help.c:2133 sql_help.c:2155 sql_help.c:2163 msgid "state_data_size" msgstr "размер_данных_состояния" -#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 +#: sql_help.c:2134 sql_help.c:2156 sql_help.c:2164 msgid "ffunc" msgstr "функция_завершения" -#: sql_help.c:2121 sql_help.c:2151 +#: sql_help.c:2135 sql_help.c:2165 msgid "combinefunc" msgstr "комбинирующая_функция" -#: sql_help.c:2122 sql_help.c:2152 +#: sql_help.c:2136 sql_help.c:2166 msgid "serialfunc" msgstr "функция_сериализации" -#: sql_help.c:2123 sql_help.c:2153 +#: sql_help.c:2137 sql_help.c:2167 msgid "deserialfunc" msgstr "функция_десериализации" -#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 +#: sql_help.c:2138 sql_help.c:2157 sql_help.c:2168 msgid "initial_condition" msgstr "начальное_условие" -#: sql_help.c:2125 sql_help.c:2155 +#: sql_help.c:2139 sql_help.c:2169 msgid "msfunc" msgstr "функция_состояния_движ" -#: sql_help.c:2126 sql_help.c:2156 +#: sql_help.c:2140 sql_help.c:2170 msgid "minvfunc" msgstr "обратная_функция_движ" -#: sql_help.c:2127 sql_help.c:2157 +#: sql_help.c:2141 sql_help.c:2171 msgid "mstate_data_type" msgstr "тип_данных_состояния_движ" -#: sql_help.c:2128 sql_help.c:2158 +#: sql_help.c:2142 sql_help.c:2172 msgid "mstate_data_size" msgstr "размер_данных_состояния_движ" -#: sql_help.c:2129 sql_help.c:2159 +#: sql_help.c:2143 sql_help.c:2173 msgid "mffunc" msgstr "функция_завершения_движ" -#: sql_help.c:2130 sql_help.c:2160 +#: sql_help.c:2144 sql_help.c:2174 msgid "minitial_condition" msgstr "начальное_условие_движ" -#: sql_help.c:2131 sql_help.c:2161 +#: sql_help.c:2145 sql_help.c:2175 msgid "sort_operator" msgstr "оператор_сортировки" -#: sql_help.c:2144 +#: sql_help.c:2158 msgid "or the old syntax" msgstr "или старый синтаксис" -#: sql_help.c:2146 +#: sql_help.c:2160 msgid "base_type" msgstr "базовый_тип" -#: sql_help.c:2204 sql_help.c:2254 +#: sql_help.c:2218 sql_help.c:2268 msgid "locale" msgstr "код_локали" -#: sql_help.c:2205 sql_help.c:2255 +#: sql_help.c:2219 sql_help.c:2269 msgid "lc_collate" msgstr "код_правила_сортировки" -#: sql_help.c:2206 sql_help.c:2256 +#: sql_help.c:2220 sql_help.c:2270 msgid "lc_ctype" msgstr "код_классификации_символов" -#: sql_help.c:2207 sql_help.c:4546 +#: sql_help.c:2221 sql_help.c:4566 msgid "provider" msgstr "провайдер" -#: sql_help.c:2209 +#: sql_help.c:2223 msgid "rules" msgstr "правила" -#: sql_help.c:2210 sql_help.c:2317 +#: sql_help.c:2224 sql_help.c:2331 msgid "version" msgstr "версия" -#: sql_help.c:2212 +#: sql_help.c:2226 msgid "existing_collation" msgstr "существующее_правило_сортировки" -#: sql_help.c:2222 +#: sql_help.c:2236 msgid "source_encoding" msgstr "исходная_кодировка" -#: sql_help.c:2223 +#: sql_help.c:2237 msgid "dest_encoding" msgstr "целевая_кодировка" -#: sql_help.c:2251 sql_help.c:3112 +#: sql_help.c:2265 sql_help.c:3132 msgid "template" msgstr "шаблон" -#: sql_help.c:2252 +#: sql_help.c:2266 msgid "encoding" msgstr "кодировка" -#: sql_help.c:2253 +#: sql_help.c:2267 msgid "strategy" msgstr "стратегия" -#: sql_help.c:2257 +#: sql_help.c:2271 msgid "builtin_locale" msgstr "встроенная_локаль" -#: sql_help.c:2258 +#: sql_help.c:2272 msgid "icu_locale" msgstr "локаль_icu" -#: sql_help.c:2259 +#: sql_help.c:2273 msgid "icu_rules" msgstr "правила_icu" -#: sql_help.c:2260 +#: sql_help.c:2274 msgid "locale_provider" msgstr "провайдер_локали" -#: sql_help.c:2261 +#: sql_help.c:2275 msgid "collation_version" msgstr "версия_правила_сортировки" -#: sql_help.c:2266 +#: sql_help.c:2280 msgid "oid" msgstr "oid" -#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 +#: sql_help.c:2315 sql_help.c:2766 sql_help.c:3205 msgid "event" msgstr "событие" -#: sql_help.c:2302 +#: sql_help.c:2316 msgid "filter_variable" msgstr "переменная_фильтра" -#: sql_help.c:2303 +#: sql_help.c:2317 msgid "filter_value" msgstr "значение_фильтра" -#: sql_help.c:2394 sql_help.c:2958 +#: sql_help.c:2408 sql_help.c:2978 msgid "source_table" msgstr "исходная_таблица" -#: sql_help.c:2395 sql_help.c:2959 +#: sql_help.c:2409 sql_help.c:2979 msgid "like_option" msgstr "параметр_порождения" -#: sql_help.c:2409 sql_help.c:2996 +#: sql_help.c:2423 sql_help.c:3016 msgid "where column_constraint is:" msgstr "где ограничение_столбца:" -#: sql_help.c:2418 sql_help.c:3030 +#: sql_help.c:2432 sql_help.c:3050 msgid "and like_option is:" msgstr "и параметр_порождения:" -#: sql_help.c:2456 +#: sql_help.c:2470 msgid "rettype" msgstr "тип_возврата" -#: sql_help.c:2458 +#: sql_help.c:2472 msgid "column_type" msgstr "тип_столбца" -#: sql_help.c:2467 sql_help.c:2670 +#: sql_help.c:2481 sql_help.c:2684 msgid "definition" msgstr "определение" -#: sql_help.c:2468 sql_help.c:2671 +#: sql_help.c:2482 sql_help.c:2685 msgid "obj_file" msgstr "объектный_файл" -#: sql_help.c:2469 sql_help.c:2672 +#: sql_help.c:2483 sql_help.c:2686 msgid "link_symbol" msgstr "символ_в_экспорте" -#: sql_help.c:2470 sql_help.c:2673 +#: sql_help.c:2484 sql_help.c:2687 msgid "sql_body" msgstr "тело_sql" -#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 +#: sql_help.c:2522 sql_help.c:2751 sql_help.c:3328 msgid "uid" msgstr "uid" -#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 -#: sql_help.c:2992 sql_help.c:3068 +#: sql_help.c:2538 sql_help.c:2579 sql_help.c:2985 sql_help.c:2998 +#: sql_help.c:3012 sql_help.c:3088 msgid "method" msgstr "метод" -#: sql_help.c:2546 +#: sql_help.c:2560 msgid "call_handler" msgstr "обработчик_вызова" -#: sql_help.c:2547 +#: sql_help.c:2561 msgid "inline_handler" msgstr "обработчик_внедрённого_кода" -#: sql_help.c:2548 +#: sql_help.c:2562 msgid "valfunction" msgstr "функция_проверки" -#: sql_help.c:2606 +#: sql_help.c:2620 msgid "family_name" msgstr "имя_семейства" -#: sql_help.c:2617 +#: sql_help.c:2631 msgid "storage_type" msgstr "тип_хранения" -#: sql_help.c:2752 sql_help.c:3192 +#: sql_help.c:2772 sql_help.c:3212 msgid "where event can be one of:" msgstr "где допустимое событие:" -#: sql_help.c:2772 sql_help.c:2774 +#: sql_help.c:2792 sql_help.c:2794 msgid "schema_element" msgstr "элемент_схемы" -#: sql_help.c:2813 +#: sql_help.c:2833 msgid "server_type" msgstr "тип_сервера" -#: sql_help.c:2814 +#: sql_help.c:2834 msgid "server_version" msgstr "версия_сервера" -#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 +#: sql_help.c:2835 sql_help.c:3996 sql_help.c:4463 msgid "fdw_name" msgstr "имя_обёртки_сторонних_данных" -#: sql_help.c:2832 sql_help.c:2835 +#: sql_help.c:2852 sql_help.c:2855 msgid "statistics_name" msgstr "имя_статистики" -#: sql_help.c:2836 +#: sql_help.c:2856 msgid "statistics_kind" msgstr "вид_статистики" -#: sql_help.c:2852 +#: sql_help.c:2872 msgid "subscription_name" msgstr "имя_подписки" -#: sql_help.c:3085 +#: sql_help.c:3105 msgid "directory" msgstr "каталог" -#: sql_help.c:3099 +#: sql_help.c:3119 msgid "parser_name" msgstr "имя_анализатора" -#: sql_help.c:3100 +#: sql_help.c:3120 msgid "source_config" msgstr "исходная_конфигурация" -#: sql_help.c:3129 +#: sql_help.c:3149 msgid "start_function" msgstr "функция_начала" -#: sql_help.c:3130 +#: sql_help.c:3150 msgid "gettoken_function" msgstr "функция_выдачи_фрагмента" -#: sql_help.c:3131 +#: sql_help.c:3151 msgid "end_function" msgstr "функция_окончания" -#: sql_help.c:3132 +#: sql_help.c:3152 msgid "lextypes_function" msgstr "функция_лекс_типов" -#: sql_help.c:3133 +#: sql_help.c:3153 msgid "headline_function" msgstr "функция_создания_выдержек" -#: sql_help.c:3145 +#: sql_help.c:3165 msgid "init_function" msgstr "функция_инициализации" -#: sql_help.c:3146 +#: sql_help.c:3166 msgid "lexize_function" msgstr "функция_выделения_лексем" -#: sql_help.c:3159 +#: sql_help.c:3179 msgid "from_sql_function_name" msgstr "имя_функции_из_sql" -#: sql_help.c:3161 +#: sql_help.c:3181 msgid "to_sql_function_name" msgstr "имя_функции_в_sql" -#: sql_help.c:3187 +#: sql_help.c:3207 msgid "referenced_table_name" msgstr "целевая_таблица" -#: sql_help.c:3188 +#: sql_help.c:3208 msgid "transition_relation_name" msgstr "имя_переходного_отношения" -#: sql_help.c:3191 +#: sql_help.c:3211 msgid "arguments" msgstr "аргументы" -#: sql_help.c:3243 +#: sql_help.c:3263 msgid "label" msgstr "метка" -#: sql_help.c:3245 +#: sql_help.c:3265 msgid "subtype" msgstr "подтип" -#: sql_help.c:3246 +#: sql_help.c:3266 msgid "subtype_operator_class" msgstr "класс_оператора_подтипа" -#: sql_help.c:3248 +#: sql_help.c:3268 msgid "canonical_function" msgstr "каноническая_функция" -#: sql_help.c:3249 +#: sql_help.c:3269 msgid "subtype_diff_function" msgstr "функция_различий_подтипа" -#: sql_help.c:3250 +#: sql_help.c:3270 msgid "multirange_type_name" msgstr "имя_мультидиапазонного_типа" -#: sql_help.c:3252 +#: sql_help.c:3272 msgid "input_function" msgstr "функция_ввода" -#: sql_help.c:3253 +#: sql_help.c:3273 msgid "output_function" msgstr "функция_вывода" -#: sql_help.c:3254 +#: sql_help.c:3274 msgid "receive_function" msgstr "функция_получения" -#: sql_help.c:3255 +#: sql_help.c:3275 msgid "send_function" msgstr "функция_отправки" -#: sql_help.c:3256 +#: sql_help.c:3276 msgid "type_modifier_input_function" msgstr "функция_ввода_модификатора_типа" -#: sql_help.c:3257 +#: sql_help.c:3277 msgid "type_modifier_output_function" msgstr "функция_вывода_модификатора_типа" -#: sql_help.c:3258 +#: sql_help.c:3278 msgid "analyze_function" msgstr "функция_анализа" -#: sql_help.c:3259 +#: sql_help.c:3279 msgid "subscript_function" msgstr "функция_обращения_по_индексу" -#: sql_help.c:3260 +#: sql_help.c:3280 msgid "internallength" msgstr "внутр_длина" -#: sql_help.c:3261 +#: sql_help.c:3281 msgid "alignment" msgstr "выравнивание" -#: sql_help.c:3262 +#: sql_help.c:3282 msgid "storage" msgstr "хранение" -#: sql_help.c:3263 +#: sql_help.c:3283 msgid "like_type" msgstr "тип_образец" -#: sql_help.c:3264 +#: sql_help.c:3284 msgid "category" msgstr "категория" -#: sql_help.c:3265 +#: sql_help.c:3285 msgid "preferred" msgstr "предпочитаемый" -#: sql_help.c:3266 +#: sql_help.c:3286 msgid "default" msgstr "по_умолчанию" -#: sql_help.c:3267 +#: sql_help.c:3287 msgid "element" msgstr "элемент" -#: sql_help.c:3268 +#: sql_help.c:3288 msgid "delimiter" msgstr "разделитель" -#: sql_help.c:3269 +#: sql_help.c:3289 msgid "collatable" msgstr "сортируемый" -#: sql_help.c:3367 sql_help.c:4056 sql_help.c:4152 sql_help.c:4643 -#: sql_help.c:4746 sql_help.c:4901 sql_help.c:5016 sql_help.c:5148 +#: sql_help.c:3387 sql_help.c:4076 sql_help.c:4172 sql_help.c:4663 +#: sql_help.c:4766 sql_help.c:4921 sql_help.c:5036 sql_help.c:5168 msgid "with_query" msgstr "запрос_WITH" -#: sql_help.c:3369 sql_help.c:4058 sql_help.c:4662 sql_help.c:4668 -#: sql_help.c:4671 sql_help.c:4675 sql_help.c:4679 sql_help.c:4687 -#: sql_help.c:4920 sql_help.c:4926 sql_help.c:4929 sql_help.c:4933 -#: sql_help.c:4937 sql_help.c:4945 sql_help.c:5018 sql_help.c:5167 -#: sql_help.c:5173 sql_help.c:5176 sql_help.c:5180 sql_help.c:5184 -#: sql_help.c:5192 +#: sql_help.c:3389 sql_help.c:4078 sql_help.c:4682 sql_help.c:4688 +#: sql_help.c:4691 sql_help.c:4695 sql_help.c:4699 sql_help.c:4707 +#: sql_help.c:4940 sql_help.c:4946 sql_help.c:4949 sql_help.c:4953 +#: sql_help.c:4957 sql_help.c:4965 sql_help.c:5038 sql_help.c:5187 +#: sql_help.c:5193 sql_help.c:5196 sql_help.c:5200 sql_help.c:5204 +#: sql_help.c:5212 msgid "alias" msgstr "псевдоним" -#: sql_help.c:3370 sql_help.c:4647 sql_help.c:4689 sql_help.c:4691 -#: sql_help.c:4695 sql_help.c:4697 sql_help.c:4698 sql_help.c:4699 -#: sql_help.c:4751 sql_help.c:4905 sql_help.c:4947 sql_help.c:4949 -#: sql_help.c:4953 sql_help.c:4955 sql_help.c:4956 sql_help.c:4957 -#: sql_help.c:5025 sql_help.c:5152 sql_help.c:5194 sql_help.c:5196 -#: sql_help.c:5200 sql_help.c:5202 sql_help.c:5203 sql_help.c:5204 +#: sql_help.c:3390 sql_help.c:4667 sql_help.c:4709 sql_help.c:4711 +#: sql_help.c:4715 sql_help.c:4717 sql_help.c:4718 sql_help.c:4719 +#: sql_help.c:4771 sql_help.c:4925 sql_help.c:4967 sql_help.c:4969 +#: sql_help.c:4973 sql_help.c:4975 sql_help.c:4976 sql_help.c:4977 +#: sql_help.c:5045 sql_help.c:5172 sql_help.c:5214 sql_help.c:5216 +#: sql_help.c:5220 sql_help.c:5222 sql_help.c:5223 sql_help.c:5224 msgid "from_item" msgstr "источник_данных" -#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 +#: sql_help.c:3392 sql_help.c:3877 sql_help.c:4230 sql_help.c:5047 msgid "cursor_name" msgstr "имя_курсора" -#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +#: sql_help.c:3393 sql_help.c:4084 sql_help.c:4178 sql_help.c:5048 msgid "output_alias" msgstr "псевдоним_результата" -#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 +#: sql_help.c:3394 sql_help.c:4085 sql_help.c:4179 sql_help.c:5049 msgid "output_expression" msgstr "выражение_результата" -#: sql_help.c:3375 sql_help.c:4066 sql_help.c:4160 sql_help.c:4646 -#: sql_help.c:4749 sql_help.c:4904 sql_help.c:5030 sql_help.c:5151 +#: sql_help.c:3395 sql_help.c:4086 sql_help.c:4180 sql_help.c:4666 +#: sql_help.c:4769 sql_help.c:4924 sql_help.c:5050 sql_help.c:5171 msgid "output_name" msgstr "имя_результата" -#: sql_help.c:3391 +#: sql_help.c:3411 msgid "code" msgstr "внедрённый_код" -#: sql_help.c:3796 +#: sql_help.c:3816 msgid "parameter" msgstr "параметр" -#: sql_help.c:3820 sql_help.c:4235 +#: sql_help.c:3840 sql_help.c:4255 msgid "statement" msgstr "оператор" -#: sql_help.c:3856 sql_help.c:4209 +#: sql_help.c:3876 sql_help.c:4229 msgid "direction" msgstr "направление" -#: sql_help.c:3858 sql_help.c:4211 +#: sql_help.c:3878 sql_help.c:4231 msgid "where direction can be one of:" msgstr "где допустимое направление:" -#: sql_help.c:3859 sql_help.c:3860 sql_help.c:3861 sql_help.c:3862 -#: sql_help.c:3863 sql_help.c:4212 sql_help.c:4213 sql_help.c:4214 -#: sql_help.c:4215 sql_help.c:4216 sql_help.c:4656 sql_help.c:4658 -#: sql_help.c:4760 sql_help.c:4762 sql_help.c:4914 sql_help.c:4916 -#: sql_help.c:5092 sql_help.c:5094 sql_help.c:5161 sql_help.c:5163 +#: sql_help.c:3879 sql_help.c:3880 sql_help.c:3881 sql_help.c:3882 +#: sql_help.c:3883 sql_help.c:4232 sql_help.c:4233 sql_help.c:4234 +#: sql_help.c:4235 sql_help.c:4236 sql_help.c:4676 sql_help.c:4678 +#: sql_help.c:4780 sql_help.c:4782 sql_help.c:4934 sql_help.c:4936 +#: sql_help.c:5112 sql_help.c:5114 sql_help.c:5181 sql_help.c:5183 msgid "count" msgstr "число" -#: sql_help.c:3966 sql_help.c:4433 +#: sql_help.c:3986 sql_help.c:4453 msgid "sequence_name" msgstr "имя_последовательности" -#: sql_help.c:3984 sql_help.c:4451 +#: sql_help.c:4004 sql_help.c:4471 msgid "arg_name" msgstr "имя_аргумента" -#: sql_help.c:3985 sql_help.c:4452 +#: sql_help.c:4005 sql_help.c:4472 msgid "arg_type" msgstr "тип_аргумента" -#: sql_help.c:3992 sql_help.c:4459 +#: sql_help.c:4012 sql_help.c:4479 msgid "loid" msgstr "код_БО" -#: sql_help.c:4023 +#: sql_help.c:4043 msgid "remote_schema" msgstr "удалённая_схема" -#: sql_help.c:4026 +#: sql_help.c:4046 msgid "local_schema" msgstr "локальная_схема" -#: sql_help.c:4062 +#: sql_help.c:4082 msgid "conflict_target" msgstr "объект_конфликта" -#: sql_help.c:4063 +#: sql_help.c:4083 msgid "conflict_action" msgstr "действие_при_конфликте" -#: sql_help.c:4067 +#: sql_help.c:4087 msgid "where conflict_target can be one of:" msgstr "где допустимый объект_конфликта:" -#: sql_help.c:4068 +#: sql_help.c:4088 msgid "index_column_name" msgstr "имя_столбца_индекса" -#: sql_help.c:4069 +#: sql_help.c:4089 msgid "index_expression" msgstr "выражение_индекса" -#: sql_help.c:4072 +#: sql_help.c:4092 msgid "index_predicate" msgstr "предикат_индекса" -#: sql_help.c:4074 +#: sql_help.c:4094 msgid "and conflict_action is one of:" msgstr "а допустимое действие_при_конфликте:" -#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 +#: sql_help.c:4100 sql_help.c:4203 sql_help.c:5044 msgid "sub-SELECT" msgstr "вложенный_SELECT" -#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 +#: sql_help.c:4109 sql_help.c:4244 sql_help.c:5019 msgid "channel" msgstr "канал" -#: sql_help.c:4111 +#: sql_help.c:4131 msgid "lockmode" msgstr "режим_блокировки" -#: sql_help.c:4112 +#: sql_help.c:4132 msgid "where lockmode is one of:" msgstr "где допустимый режим_блокировки:" -#: sql_help.c:4153 +#: sql_help.c:4173 msgid "target_table_name" msgstr "имя_целевой_таблицы" -#: sql_help.c:4154 +#: sql_help.c:4174 msgid "target_alias" msgstr "псевдоним_назначения" -#: sql_help.c:4155 +#: sql_help.c:4175 msgid "data_source" msgstr "источник_данных" -#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 +#: sql_help.c:4176 sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "join_condition" msgstr "условие_соединения" -#: sql_help.c:4157 +#: sql_help.c:4177 msgid "when_clause" msgstr "предложение_when" -#: sql_help.c:4161 +#: sql_help.c:4181 msgid "where data_source is:" msgstr "где источник_данных:" -#: sql_help.c:4162 +#: sql_help.c:4182 msgid "source_table_name" msgstr "имя_исходной_таблицы" -#: sql_help.c:4163 +#: sql_help.c:4183 msgid "source_query" msgstr "исходный_запрос" -#: sql_help.c:4164 +#: sql_help.c:4184 msgid "source_alias" msgstr "псевдоним_источника" -#: sql_help.c:4165 +#: sql_help.c:4185 msgid "and when_clause is:" msgstr "и предложение_when:" -#: sql_help.c:4167 sql_help.c:4170 +#: sql_help.c:4187 sql_help.c:4190 msgid "merge_update" msgstr "merge_update" -#: sql_help.c:4168 sql_help.c:4171 +#: sql_help.c:4188 sql_help.c:4191 msgid "merge_delete" msgstr "merge_delete" -#: sql_help.c:4173 +#: sql_help.c:4193 msgid "merge_insert" msgstr "merge_insert" -#: sql_help.c:4174 +#: sql_help.c:4194 msgid "and merge_insert is:" msgstr "и merge_insert:" -#: sql_help.c:4177 +#: sql_help.c:4197 msgid "and merge_update is:" msgstr "и merge_update:" -#: sql_help.c:4184 +#: sql_help.c:4204 msgid "and merge_delete is:" msgstr "и merge_delete:" -#: sql_help.c:4225 +#: sql_help.c:4245 msgid "payload" msgstr "сообщение_нагрузка" -#: sql_help.c:4252 +#: sql_help.c:4272 msgid "old_role" msgstr "старая_роль" -#: sql_help.c:4253 +#: sql_help.c:4273 msgid "new_role" msgstr "новая_роль" -#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 +#: sql_help.c:4312 sql_help.c:4521 sql_help.c:4529 msgid "savepoint_name" msgstr "имя_точки_сохранения" -#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 -#: sql_help.c:5154 sql_help.c:5212 +#: sql_help.c:4669 sql_help.c:4727 sql_help.c:4927 sql_help.c:4985 +#: sql_help.c:5174 sql_help.c:5232 msgid "grouping_element" msgstr "элемент_группирования" -#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 +#: sql_help.c:4671 sql_help.c:4775 sql_help.c:4929 sql_help.c:5176 msgid "window_name" msgstr "имя_окна" -#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 +#: sql_help.c:4672 sql_help.c:4776 sql_help.c:4930 sql_help.c:5177 msgid "window_definition" msgstr "определение_окна" -#: sql_help.c:4653 sql_help.c:4667 sql_help.c:4711 sql_help.c:4757 -#: sql_help.c:4911 sql_help.c:4925 sql_help.c:4969 sql_help.c:5158 -#: sql_help.c:5172 sql_help.c:5216 +#: sql_help.c:4673 sql_help.c:4687 sql_help.c:4731 sql_help.c:4777 +#: sql_help.c:4931 sql_help.c:4945 sql_help.c:4989 sql_help.c:5178 +#: sql_help.c:5192 sql_help.c:5236 msgid "select" msgstr "select" -#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 +#: sql_help.c:4679 sql_help.c:4937 sql_help.c:5184 msgid "from_reference" msgstr "ссылка_FROM" -#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 +#: sql_help.c:4680 sql_help.c:4938 sql_help.c:5185 msgid "where from_item can be one of:" msgstr "где допустимый источник_данных:" -#: sql_help.c:4663 sql_help.c:4669 sql_help.c:4672 sql_help.c:4676 -#: sql_help.c:4688 sql_help.c:4921 sql_help.c:4927 sql_help.c:4930 -#: sql_help.c:4934 sql_help.c:4946 sql_help.c:5168 sql_help.c:5174 -#: sql_help.c:5177 sql_help.c:5181 sql_help.c:5193 +#: sql_help.c:4683 sql_help.c:4689 sql_help.c:4692 sql_help.c:4696 +#: sql_help.c:4708 sql_help.c:4941 sql_help.c:4947 sql_help.c:4950 +#: sql_help.c:4954 sql_help.c:4966 sql_help.c:5188 sql_help.c:5194 +#: sql_help.c:5197 sql_help.c:5201 sql_help.c:5213 msgid "column_alias" msgstr "псевдоним_столбца" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 +#: sql_help.c:4684 sql_help.c:4942 sql_help.c:5189 msgid "sampling_method" msgstr "метод_выборки" -#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 +#: sql_help.c:4686 sql_help.c:4944 sql_help.c:5191 msgid "seed" msgstr "начальное_число" -#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 -#: sql_help.c:5175 sql_help.c:5214 +#: sql_help.c:4690 sql_help.c:4729 sql_help.c:4948 sql_help.c:4987 +#: sql_help.c:5195 sql_help.c:5234 msgid "with_query_name" msgstr "имя_запроса_WITH" -#: sql_help.c:4680 sql_help.c:4683 sql_help.c:4686 sql_help.c:4938 -#: sql_help.c:4941 sql_help.c:4944 sql_help.c:5185 sql_help.c:5188 -#: sql_help.c:5191 +#: sql_help.c:4700 sql_help.c:4703 sql_help.c:4706 sql_help.c:4958 +#: sql_help.c:4961 sql_help.c:4964 sql_help.c:5205 sql_help.c:5208 +#: sql_help.c:5211 msgid "column_definition" msgstr "определение_столбца" -#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 -#: sql_help.c:5195 sql_help.c:5201 +#: sql_help.c:4710 sql_help.c:4716 sql_help.c:4968 sql_help.c:4974 +#: sql_help.c:5215 sql_help.c:5221 msgid "join_type" msgstr "тип_соединения" -#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "join_column" msgstr "столбец_соединения" -#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "join_using_alias" msgstr "псевдоним_использования_соединения" -#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "and grouping_element can be one of:" msgstr "где допустимый элемент_группирования:" -#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 +#: sql_help.c:4728 sql_help.c:4986 sql_help.c:5233 msgid "and with_query is:" msgstr "и запрос_WITH:" -#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 +#: sql_help.c:4732 sql_help.c:4990 sql_help.c:5237 msgid "values" msgstr "значения" -#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 +#: sql_help.c:4733 sql_help.c:4991 sql_help.c:5238 msgid "insert" msgstr "insert" -#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 +#: sql_help.c:4734 sql_help.c:4992 sql_help.c:5239 msgid "update" msgstr "update" -#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 +#: sql_help.c:4735 sql_help.c:4993 sql_help.c:5240 msgid "delete" msgstr "delete" -#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 +#: sql_help.c:4736 sql_help.c:4994 sql_help.c:5241 msgid "merge" msgstr "merge" -#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 +#: sql_help.c:4738 sql_help.c:4996 sql_help.c:5243 msgid "search_seq_col_name" msgstr "имя_столбца_послед_поиска" -#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 +#: sql_help.c:4740 sql_help.c:4998 sql_help.c:5245 msgid "cycle_mark_col_name" msgstr "имя_столбца_пометки_цикла" -#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 +#: sql_help.c:4741 sql_help.c:4999 sql_help.c:5246 msgid "cycle_mark_value" msgstr "значение_пометки_цикла" -#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 +#: sql_help.c:4742 sql_help.c:5000 sql_help.c:5247 msgid "cycle_mark_default" msgstr "пометка_цикла_по_умолчанию" -#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 +#: sql_help.c:4743 sql_help.c:5001 sql_help.c:5248 msgid "cycle_path_col_name" msgstr "имя_столбца_пути_цикла" -#: sql_help.c:4750 +#: sql_help.c:4770 msgid "new_table" msgstr "новая_таблица" -#: sql_help.c:4821 +#: sql_help.c:4841 msgid "snapshot_id" msgstr "код_снимка" -#: sql_help.c:5090 +#: sql_help.c:5110 msgid "sort_expression" msgstr "выражение_сортировки" -#: sql_help.c:5235 sql_help.c:6219 +#: sql_help.c:5255 sql_help.c:6239 msgid "abort the current transaction" msgstr "прервать текущую транзакцию" -#: sql_help.c:5241 +#: sql_help.c:5261 msgid "change the definition of an aggregate function" msgstr "изменить определение агрегатной функции" -#: sql_help.c:5247 +#: sql_help.c:5267 msgid "change the definition of a collation" msgstr "изменить определение правила сортировки" -#: sql_help.c:5253 +#: sql_help.c:5273 msgid "change the definition of a conversion" msgstr "изменить определение преобразования" -#: sql_help.c:5259 +#: sql_help.c:5279 msgid "change a database" msgstr "изменить атрибуты базы данных" -#: sql_help.c:5265 +#: sql_help.c:5285 msgid "define default access privileges" msgstr "определить права доступа по умолчанию" -#: sql_help.c:5271 +#: sql_help.c:5291 msgid "change the definition of a domain" msgstr "изменить определение домена" -#: sql_help.c:5277 +#: sql_help.c:5297 msgid "change the definition of an event trigger" msgstr "изменить определение событийного триггера" -#: sql_help.c:5283 +#: sql_help.c:5303 msgid "change the definition of an extension" msgstr "изменить определение расширения" -#: sql_help.c:5289 +#: sql_help.c:5309 msgid "change the definition of a foreign-data wrapper" msgstr "изменить определение обёртки сторонних данных" -#: sql_help.c:5295 +#: sql_help.c:5315 msgid "change the definition of a foreign table" msgstr "изменить определение сторонней таблицы" -#: sql_help.c:5301 +#: sql_help.c:5321 msgid "change the definition of a function" msgstr "изменить определение функции" -#: sql_help.c:5307 +#: sql_help.c:5327 msgid "change role name or membership" msgstr "изменить имя роли или членство" -#: sql_help.c:5313 +#: sql_help.c:5333 msgid "change the definition of an index" msgstr "изменить определение индекса" -#: sql_help.c:5319 +#: sql_help.c:5339 msgid "change the definition of a procedural language" msgstr "изменить определение процедурного языка" -#: sql_help.c:5325 +#: sql_help.c:5345 msgid "change the definition of a large object" msgstr "изменить определение большого объекта" -#: sql_help.c:5331 +#: sql_help.c:5351 msgid "change the definition of a materialized view" msgstr "изменить определение материализованного представления" -#: sql_help.c:5337 +#: sql_help.c:5357 msgid "change the definition of an operator" msgstr "изменить определение оператора" -#: sql_help.c:5343 +#: sql_help.c:5363 msgid "change the definition of an operator class" msgstr "изменить определение класса операторов" -#: sql_help.c:5349 +#: sql_help.c:5369 msgid "change the definition of an operator family" msgstr "изменить определение семейства операторов" -#: sql_help.c:5355 +#: sql_help.c:5375 msgid "change the definition of a row-level security policy" msgstr "изменить определение политики защиты на уровне строк" -#: sql_help.c:5361 +#: sql_help.c:5381 msgid "change the definition of a procedure" msgstr "изменить определение процедуры" -#: sql_help.c:5367 +#: sql_help.c:5387 msgid "change the definition of a publication" msgstr "изменить определение публикации" -#: sql_help.c:5373 sql_help.c:5475 +#: sql_help.c:5393 sql_help.c:5495 msgid "change a database role" msgstr "изменить роль пользователя БД" -#: sql_help.c:5379 +#: sql_help.c:5399 msgid "change the definition of a routine" msgstr "изменить определение подпрограммы" -#: sql_help.c:5385 +#: sql_help.c:5405 msgid "change the definition of a rule" msgstr "изменить определение правила" -#: sql_help.c:5391 +#: sql_help.c:5411 msgid "change the definition of a schema" msgstr "изменить определение схемы" -#: sql_help.c:5397 +#: sql_help.c:5417 msgid "change the definition of a sequence generator" msgstr "изменить определение генератора последовательности" -#: sql_help.c:5403 +#: sql_help.c:5423 msgid "change the definition of a foreign server" msgstr "изменить определение стороннего сервера" -#: sql_help.c:5409 +#: sql_help.c:5429 msgid "change the definition of an extended statistics object" msgstr "изменить определение объекта расширенной статистики" -#: sql_help.c:5415 +#: sql_help.c:5435 msgid "change the definition of a subscription" msgstr "изменить определение подписки" -#: sql_help.c:5421 +#: sql_help.c:5441 msgid "change a server configuration parameter" msgstr "изменить параметр конфигурации сервера" -#: sql_help.c:5427 +#: sql_help.c:5447 msgid "change the definition of a table" msgstr "изменить определение таблицы" -#: sql_help.c:5433 +#: sql_help.c:5453 msgid "change the definition of a tablespace" msgstr "изменить определение табличного пространства" -#: sql_help.c:5439 +#: sql_help.c:5459 msgid "change the definition of a text search configuration" msgstr "изменить определение конфигурации текстового поиска" -#: sql_help.c:5445 +#: sql_help.c:5465 msgid "change the definition of a text search dictionary" msgstr "изменить определение словаря текстового поиска" -#: sql_help.c:5451 +#: sql_help.c:5471 msgid "change the definition of a text search parser" msgstr "изменить определение анализатора текстового поиска" -#: sql_help.c:5457 +#: sql_help.c:5477 msgid "change the definition of a text search template" msgstr "изменить определение шаблона текстового поиска" -#: sql_help.c:5463 +#: sql_help.c:5483 msgid "change the definition of a trigger" msgstr "изменить определение триггера" -#: sql_help.c:5469 +#: sql_help.c:5489 msgid "change the definition of a type" msgstr "изменить определение типа" -#: sql_help.c:5481 +#: sql_help.c:5501 msgid "change the definition of a user mapping" msgstr "изменить сопоставление пользователей" -#: sql_help.c:5487 +#: sql_help.c:5507 msgid "change the definition of a view" msgstr "изменить определение представления" -#: sql_help.c:5493 +#: sql_help.c:5513 msgid "collect statistics about a database" msgstr "собрать статистику о базе данных" -#: sql_help.c:5499 sql_help.c:6297 +#: sql_help.c:5519 sql_help.c:6317 msgid "start a transaction block" msgstr "начать транзакцию" -#: sql_help.c:5505 +#: sql_help.c:5525 msgid "invoke a procedure" msgstr "вызвать процедуру" -#: sql_help.c:5511 +#: sql_help.c:5531 msgid "force a write-ahead log checkpoint" msgstr "произвести контрольную точку в журнале предзаписи" -#: sql_help.c:5517 +#: sql_help.c:5537 msgid "close a cursor" msgstr "закрыть курсор" -#: sql_help.c:5523 +#: sql_help.c:5543 msgid "cluster a table according to an index" msgstr "перегруппировать таблицу по индексу" -#: sql_help.c:5529 +#: sql_help.c:5549 msgid "define or change the comment of an object" msgstr "задать или изменить комментарий объекта" -#: sql_help.c:5535 sql_help.c:6093 +#: sql_help.c:5555 sql_help.c:6113 msgid "commit the current transaction" msgstr "зафиксировать текущую транзакцию" -#: sql_help.c:5541 +#: sql_help.c:5561 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "зафиксировать транзакцию, ранее подготовленную для двухфазной фиксации" -#: sql_help.c:5547 +#: sql_help.c:5567 msgid "copy data between a file and a table" msgstr "импорт/экспорт данных в файл" -#: sql_help.c:5553 +#: sql_help.c:5573 msgid "define a new access method" msgstr "создать новый метод доступа" -#: sql_help.c:5559 +#: sql_help.c:5579 msgid "define a new aggregate function" msgstr "создать агрегатную функцию" -#: sql_help.c:5565 +#: sql_help.c:5585 msgid "define a new cast" msgstr "создать приведение типов" -#: sql_help.c:5571 +#: sql_help.c:5591 msgid "define a new collation" msgstr "создать правило сортировки" -#: sql_help.c:5577 +#: sql_help.c:5597 msgid "define a new encoding conversion" msgstr "создать преобразование кодировки" -#: sql_help.c:5583 +#: sql_help.c:5603 msgid "create a new database" msgstr "создать базу данных" -#: sql_help.c:5589 +#: sql_help.c:5609 msgid "define a new domain" msgstr "создать домен" -#: sql_help.c:5595 +#: sql_help.c:5615 msgid "define a new event trigger" msgstr "создать событийный триггер" -#: sql_help.c:5601 +#: sql_help.c:5621 msgid "install an extension" msgstr "установить расширение" -#: sql_help.c:5607 +#: sql_help.c:5627 msgid "define a new foreign-data wrapper" msgstr "создать обёртку сторонних данных" -#: sql_help.c:5613 +#: sql_help.c:5633 msgid "define a new foreign table" msgstr "создать стороннюю таблицу" -#: sql_help.c:5619 +#: sql_help.c:5639 msgid "define a new function" msgstr "создать функцию" -#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 +#: sql_help.c:5645 sql_help.c:5705 sql_help.c:5807 msgid "define a new database role" msgstr "создать роль пользователя БД" -#: sql_help.c:5631 +#: sql_help.c:5651 msgid "define a new index" msgstr "создать индекс" -#: sql_help.c:5637 +#: sql_help.c:5657 msgid "define a new procedural language" msgstr "создать процедурный язык" -#: sql_help.c:5643 +#: sql_help.c:5663 msgid "define a new materialized view" msgstr "создать материализованное представление" -#: sql_help.c:5649 +#: sql_help.c:5669 msgid "define a new operator" msgstr "создать оператор" -#: sql_help.c:5655 +#: sql_help.c:5675 msgid "define a new operator class" msgstr "создать класс операторов" -#: sql_help.c:5661 +#: sql_help.c:5681 msgid "define a new operator family" msgstr "создать семейство операторов" -#: sql_help.c:5667 +#: sql_help.c:5687 msgid "define a new row-level security policy for a table" msgstr "создать новую политику защиты на уровне строк для таблицы" -#: sql_help.c:5673 +#: sql_help.c:5693 msgid "define a new procedure" msgstr "создать процедуру" -#: sql_help.c:5679 +#: sql_help.c:5699 msgid "define a new publication" msgstr "создать публикацию" -#: sql_help.c:5691 +#: sql_help.c:5711 msgid "define a new rewrite rule" msgstr "создать правило перезаписи" -#: sql_help.c:5697 +#: sql_help.c:5717 msgid "define a new schema" msgstr "создать схему" -#: sql_help.c:5703 +#: sql_help.c:5723 msgid "define a new sequence generator" msgstr "создать генератор последовательностей" -#: sql_help.c:5709 +#: sql_help.c:5729 msgid "define a new foreign server" msgstr "создать сторонний сервер" -#: sql_help.c:5715 +#: sql_help.c:5735 msgid "define extended statistics" msgstr "создать расширенную статистику" -#: sql_help.c:5721 +#: sql_help.c:5741 msgid "define a new subscription" msgstr "создать подписку" -#: sql_help.c:5727 +#: sql_help.c:5747 msgid "define a new table" msgstr "создать таблицу" -#: sql_help.c:5733 sql_help.c:6255 +#: sql_help.c:5753 sql_help.c:6275 msgid "define a new table from the results of a query" msgstr "создать таблицу из результатов запроса" -#: sql_help.c:5739 +#: sql_help.c:5759 msgid "define a new tablespace" msgstr "создать табличное пространство" -#: sql_help.c:5745 +#: sql_help.c:5765 msgid "define a new text search configuration" msgstr "создать конфигурацию текстового поиска" -#: sql_help.c:5751 +#: sql_help.c:5771 msgid "define a new text search dictionary" msgstr "создать словарь текстового поиска" -#: sql_help.c:5757 +#: sql_help.c:5777 msgid "define a new text search parser" msgstr "создать анализатор текстового поиска" -#: sql_help.c:5763 +#: sql_help.c:5783 msgid "define a new text search template" msgstr "создать шаблон текстового поиска" -#: sql_help.c:5769 +#: sql_help.c:5789 msgid "define a new transform" msgstr "создать преобразование" -#: sql_help.c:5775 +#: sql_help.c:5795 msgid "define a new trigger" msgstr "создать триггер" -#: sql_help.c:5781 +#: sql_help.c:5801 msgid "define a new data type" msgstr "создать тип данных" -#: sql_help.c:5793 +#: sql_help.c:5813 msgid "define a new mapping of a user to a foreign server" msgstr "создать сопоставление пользователя для стороннего сервера" -#: sql_help.c:5799 +#: sql_help.c:5819 msgid "define a new view" msgstr "создать представление" -#: sql_help.c:5805 +#: sql_help.c:5825 msgid "deallocate a prepared statement" msgstr "освободить подготовленный оператор" -#: sql_help.c:5811 +#: sql_help.c:5831 msgid "define a cursor" msgstr "создать курсор" -#: sql_help.c:5817 +#: sql_help.c:5837 msgid "delete rows of a table" msgstr "удалить записи таблицы" -#: sql_help.c:5823 +#: sql_help.c:5843 msgid "discard session state" msgstr "очистить состояние сеанса" -#: sql_help.c:5829 +#: sql_help.c:5849 msgid "execute an anonymous code block" msgstr "выполнить анонимный блок кода" -#: sql_help.c:5835 +#: sql_help.c:5855 msgid "remove an access method" msgstr "удалить метод доступа" -#: sql_help.c:5841 +#: sql_help.c:5861 msgid "remove an aggregate function" msgstr "удалить агрегатную функцию" -#: sql_help.c:5847 +#: sql_help.c:5867 msgid "remove a cast" msgstr "удалить приведение типа" -#: sql_help.c:5853 +#: sql_help.c:5873 msgid "remove a collation" msgstr "удалить правило сортировки" -#: sql_help.c:5859 +#: sql_help.c:5879 msgid "remove a conversion" msgstr "удалить преобразование" -#: sql_help.c:5865 +#: sql_help.c:5885 msgid "remove a database" msgstr "удалить базу данных" -#: sql_help.c:5871 +#: sql_help.c:5891 msgid "remove a domain" msgstr "удалить домен" -#: sql_help.c:5877 +#: sql_help.c:5897 msgid "remove an event trigger" msgstr "удалить событийный триггер" -#: sql_help.c:5883 +#: sql_help.c:5903 msgid "remove an extension" msgstr "удалить расширение" -#: sql_help.c:5889 +#: sql_help.c:5909 msgid "remove a foreign-data wrapper" msgstr "удалить обёртку сторонних данных" -#: sql_help.c:5895 +#: sql_help.c:5915 msgid "remove a foreign table" msgstr "удалить стороннюю таблицу" -#: sql_help.c:5901 +#: sql_help.c:5921 msgid "remove a function" msgstr "удалить функцию" -#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 +#: sql_help.c:5927 sql_help.c:5993 sql_help.c:6095 msgid "remove a database role" msgstr "удалить роль пользователя БД" -#: sql_help.c:5913 +#: sql_help.c:5933 msgid "remove an index" msgstr "удалить индекс" -#: sql_help.c:5919 +#: sql_help.c:5939 msgid "remove a procedural language" msgstr "удалить процедурный язык" -#: sql_help.c:5925 +#: sql_help.c:5945 msgid "remove a materialized view" msgstr "удалить материализованное представление" -#: sql_help.c:5931 +#: sql_help.c:5951 msgid "remove an operator" msgstr "удалить оператор" -#: sql_help.c:5937 +#: sql_help.c:5957 msgid "remove an operator class" msgstr "удалить класс операторов" -#: sql_help.c:5943 +#: sql_help.c:5963 msgid "remove an operator family" msgstr "удалить семейство операторов" -#: sql_help.c:5949 +#: sql_help.c:5969 msgid "remove database objects owned by a database role" msgstr "удалить объекты базы данных, принадлежащие роли" -#: sql_help.c:5955 +#: sql_help.c:5975 msgid "remove a row-level security policy from a table" msgstr "удалить из таблицы политику защиты на уровне строк" -#: sql_help.c:5961 +#: sql_help.c:5981 msgid "remove a procedure" msgstr "удалить процедуру" -#: sql_help.c:5967 +#: sql_help.c:5987 msgid "remove a publication" msgstr "удалить публикацию" -#: sql_help.c:5979 +#: sql_help.c:5999 msgid "remove a routine" msgstr "удалить подпрограмму" -#: sql_help.c:5985 +#: sql_help.c:6005 msgid "remove a rewrite rule" msgstr "удалить правило перезаписи" -#: sql_help.c:5991 +#: sql_help.c:6011 msgid "remove a schema" msgstr "удалить схему" -#: sql_help.c:5997 +#: sql_help.c:6017 msgid "remove a sequence" msgstr "удалить последовательность" -#: sql_help.c:6003 +#: sql_help.c:6023 msgid "remove a foreign server descriptor" msgstr "удалить описание стороннего сервера" -#: sql_help.c:6009 +#: sql_help.c:6029 msgid "remove extended statistics" msgstr "удалить расширенную статистику" -#: sql_help.c:6015 +#: sql_help.c:6035 msgid "remove a subscription" msgstr "удалить подписку" -#: sql_help.c:6021 +#: sql_help.c:6041 msgid "remove a table" msgstr "удалить таблицу" -#: sql_help.c:6027 +#: sql_help.c:6047 msgid "remove a tablespace" msgstr "удалить табличное пространство" -#: sql_help.c:6033 +#: sql_help.c:6053 msgid "remove a text search configuration" msgstr "удалить конфигурацию текстового поиска" -#: sql_help.c:6039 +#: sql_help.c:6059 msgid "remove a text search dictionary" msgstr "удалить словарь текстового поиска" -#: sql_help.c:6045 +#: sql_help.c:6065 msgid "remove a text search parser" msgstr "удалить анализатор текстового поиска" -#: sql_help.c:6051 +#: sql_help.c:6071 msgid "remove a text search template" msgstr "удалить шаблон текстового поиска" -#: sql_help.c:6057 +#: sql_help.c:6077 msgid "remove a transform" msgstr "удалить преобразование" -#: sql_help.c:6063 +#: sql_help.c:6083 msgid "remove a trigger" msgstr "удалить триггер" -#: sql_help.c:6069 +#: sql_help.c:6089 msgid "remove a data type" msgstr "удалить тип данных" -#: sql_help.c:6081 +#: sql_help.c:6101 msgid "remove a user mapping for a foreign server" msgstr "удалить сопоставление пользователя для стороннего сервера" -#: sql_help.c:6087 +#: sql_help.c:6107 msgid "remove a view" msgstr "удалить представление" -#: sql_help.c:6099 +#: sql_help.c:6119 msgid "execute a prepared statement" msgstr "выполнить подготовленный оператор" -#: sql_help.c:6105 +#: sql_help.c:6125 msgid "show the execution plan of a statement" msgstr "показать план выполнения оператора" -#: sql_help.c:6111 +#: sql_help.c:6131 msgid "retrieve rows from a query using a cursor" msgstr "получить результат запроса через курсор" -#: sql_help.c:6117 +#: sql_help.c:6137 msgid "define access privileges" msgstr "определить права доступа" -#: sql_help.c:6123 +#: sql_help.c:6143 msgid "import table definitions from a foreign server" msgstr "импортировать определения таблиц со стороннего сервера" -#: sql_help.c:6129 +#: sql_help.c:6149 msgid "create new rows in a table" msgstr "добавить строки в таблицу" -#: sql_help.c:6135 +#: sql_help.c:6155 msgid "listen for a notification" msgstr "ожидать уведомления" -#: sql_help.c:6141 +#: sql_help.c:6161 msgid "load a shared library file" msgstr "загрузить файл разделяемой библиотеки" -#: sql_help.c:6147 +#: sql_help.c:6167 msgid "lock a table" msgstr "заблокировать таблицу" -#: sql_help.c:6153 +#: sql_help.c:6173 msgid "conditionally insert, update, or delete rows of a table" msgstr "добавление, изменение или удаление строк таблицы по условию" -#: sql_help.c:6159 +#: sql_help.c:6179 msgid "position a cursor" msgstr "установить курсор" -#: sql_help.c:6165 +#: sql_help.c:6185 msgid "generate a notification" msgstr "сгенерировать уведомление" -#: sql_help.c:6171 +#: sql_help.c:6191 msgid "prepare a statement for execution" msgstr "подготовить оператор для выполнения" -#: sql_help.c:6177 +#: sql_help.c:6197 msgid "prepare the current transaction for two-phase commit" msgstr "подготовить текущую транзакцию для двухфазной фиксации" -#: sql_help.c:6183 +#: sql_help.c:6203 msgid "change the ownership of database objects owned by a database role" msgstr "изменить владельца объектов БД, принадлежащих заданной роли" -#: sql_help.c:6189 +#: sql_help.c:6209 msgid "replace the contents of a materialized view" msgstr "заменить содержимое материализованного представления" -#: sql_help.c:6195 +#: sql_help.c:6215 msgid "rebuild indexes" msgstr "перестроить индексы" -#: sql_help.c:6201 +#: sql_help.c:6221 msgid "release a previously defined savepoint" msgstr "освободить ранее определённую точку сохранения" -#: sql_help.c:6207 +#: sql_help.c:6227 msgid "restore the value of a run-time parameter to the default value" msgstr "восстановить исходное значение параметра выполнения" -#: sql_help.c:6213 +#: sql_help.c:6233 msgid "remove access privileges" msgstr "удалить права доступа" -#: sql_help.c:6225 +#: sql_help.c:6245 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "отменить транзакцию, подготовленную ранее для двухфазной фиксации" -#: sql_help.c:6231 +#: sql_help.c:6251 msgid "roll back to a savepoint" msgstr "откатиться к точке сохранения" -#: sql_help.c:6237 +#: sql_help.c:6257 msgid "define a new savepoint within the current transaction" msgstr "определить новую точку сохранения в текущей транзакции" -#: sql_help.c:6243 +#: sql_help.c:6263 msgid "define or change a security label applied to an object" msgstr "задать или изменить метку безопасности, применённую к объекту" -#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 +#: sql_help.c:6269 sql_help.c:6323 sql_help.c:6359 msgid "retrieve rows from a table or view" msgstr "выбрать строки из таблицы или представления" -#: sql_help.c:6261 +#: sql_help.c:6281 msgid "change a run-time parameter" msgstr "изменить параметр выполнения" -#: sql_help.c:6267 +#: sql_help.c:6287 msgid "set constraint check timing for the current transaction" msgstr "установить время проверки ограничений для текущей транзакции" -#: sql_help.c:6273 +#: sql_help.c:6293 msgid "set the current user identifier of the current session" msgstr "задать идентификатор текущего пользователя в текущем сеансе" -#: sql_help.c:6279 +#: sql_help.c:6299 msgid "" "set the session user identifier and the current user identifier of the " "current session" @@ -7142,31 +7150,31 @@ msgstr "" "задать идентификатор пользователя сеанса и идентификатор текущего " "пользователя в текущем сеансе" -#: sql_help.c:6285 +#: sql_help.c:6305 msgid "set the characteristics of the current transaction" msgstr "задать свойства текущей транзакции" -#: sql_help.c:6291 +#: sql_help.c:6311 msgid "show the value of a run-time parameter" msgstr "показать значение параметра выполнения" -#: sql_help.c:6309 +#: sql_help.c:6329 msgid "empty a table or set of tables" msgstr "опустошить таблицу или набор таблиц" -#: sql_help.c:6315 +#: sql_help.c:6335 msgid "stop listening for a notification" msgstr "прекратить ожидание уведомлений" -#: sql_help.c:6321 +#: sql_help.c:6341 msgid "update rows of a table" msgstr "изменить строки таблицы" -#: sql_help.c:6327 +#: sql_help.c:6347 msgid "garbage-collect and optionally analyze a database" msgstr "произвести сборку мусора и проанализировать базу данных" -#: sql_help.c:6333 +#: sql_help.c:6353 msgid "compute a set of rows" msgstr "получить набор строк" @@ -7209,7 +7217,7 @@ msgstr "лишний аргумент \"%s\" проигнорирован" msgid "could not find own program executable" msgstr "не удалось найти свой исполняемый файл" -#: tab-complete.in.c:6633 +#: tab-complete.in.c:6639 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/sv.po b/src/bin/psql/po/sv.po index 483a2570b97..a9e50b32141 100644 --- a/src/bin/psql/po/sv.po +++ b/src/bin/psql/po/sv.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-16 15:18+0000\n" -"PO-Revision-Date: 2025-09-07 15:44+0200\n" +"POT-Creation-Date: 2026-02-02 01:48+0000\n" +"PO-Revision-Date: 2026-02-02 23:07+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -2733,7 +2733,7 @@ msgstr "" "psql är den interaktiva PostgreSQL-terminalen.\n" "\n" -#: help.c:61 help.c:389 help.c:476 help.c:522 +#: help.c:61 help.c:389 help.c:476 help.c:525 msgid "Usage:\n" msgstr "Användning:\n" @@ -3955,6 +3955,15 @@ msgstr "" " målvidd för wrappade format\n" #: help.c:483 +#, c-format +msgid "" +" csv_fieldsep\n" +" field separator for CSV output format (default \"%c\")\n" +msgstr "" +" csv_fieldsep\n" +" fältseparator för utdataformatet CSV (standard \"%c\")\n" + +#: help.c:486 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -3962,7 +3971,7 @@ msgstr "" " expanded (eller x)\n" " expanderat utmatningsläge [on, off, auto]\n" -#: help.c:485 +#: help.c:488 #, c-format msgid "" " fieldsep\n" @@ -3971,7 +3980,7 @@ msgstr "" " fieldsep\n" " fältseparator för ej justerad utdata (standard \"%s\")\n" -#: help.c:488 +#: help.c:491 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -3979,7 +3988,7 @@ msgstr "" " fieldsep_zero\n" " sätt fältseparator för ej justerad utdata till noll-byte\n" -#: help.c:490 +#: help.c:493 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -3987,7 +3996,7 @@ msgstr "" " footer\n" " slå på/av visning av tabellfot [on, off]\n" -#: help.c:492 +#: help.c:495 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -3995,7 +4004,7 @@ msgstr "" " format\n" " sätt utdataformat [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:494 +#: help.c:497 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -4003,7 +4012,7 @@ msgstr "" " linestyle\n" " sätt ramlinjestil [ascii, old-ascii, unicode]\n" -#: help.c:496 +#: help.c:499 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -4011,7 +4020,7 @@ msgstr "" " null\n" " sätt sträng som visas istället för null-värden\n" -#: help.c:498 +#: help.c:501 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -4019,7 +4028,7 @@ msgstr "" " numericlocale\n" " slå på visning av lokalspecifika tecken för gruppering av siffror\n" -#: help.c:500 +#: help.c:503 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4027,7 +4036,7 @@ msgstr "" " pager\n" " styr när en extern pagenerare används [yes, no, always]\n" -#: help.c:502 +#: help.c:505 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4035,7 +4044,7 @@ msgstr "" " recordsep\n" " post (rad) separator för ej justerad utdata\n" -#: help.c:504 +#: help.c:507 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4043,7 +4052,7 @@ msgstr "" " recordsep_zero\n" " sätt postseparator för ej justerad utdata till noll-byte\n" -#: help.c:506 +#: help.c:509 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4053,7 +4062,7 @@ msgstr "" " ange attribut för tabelltaggen i html-format eller proportionella\n" " kolumnvidder för vänsterjusterade datatypet i latex-longtable-format\n" -#: help.c:509 +#: help.c:512 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4061,7 +4070,7 @@ msgstr "" " title\n" " sätt tabelltitel för efterkommande tabellutskrifter\n" -#: help.c:511 +#: help.c:514 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4069,7 +4078,7 @@ msgstr "" " tuples_only\n" " om satt, bara tabelldatan visas\n" -#: help.c:513 +#: help.c:516 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4081,7 +4090,7 @@ msgstr "" " unicode_header_linestyle\n" " sätter stilen på Unicode-linjer [single, double]\n" -#: help.c:517 +#: help.c:520 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4091,7 +4100,7 @@ msgstr "" " sätt maximal bredd på rubriken för expanderat utmatningsläge\n" " [full, column, page, integer value]\n" -#: help.c:521 +#: help.c:524 msgid "" "\n" "Environment variables:\n" @@ -4099,7 +4108,7 @@ msgstr "" "\n" "Omgivningsvariabler:\n" -#: help.c:525 +#: help.c:528 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4109,7 +4118,7 @@ msgstr "" " eller \\setenv NAMN [VÄRDE] inne psql\n" "\n" -#: help.c:527 +#: help.c:530 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4121,7 +4130,7 @@ msgstr "" " eller \\setenv NAMN [VÄRDE] inne i psql\n" "\n" -#: help.c:530 +#: help.c:533 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4129,7 +4138,7 @@ msgstr "" " COLUMNS\n" " antal kolumner i wrappade format\n" -#: help.c:532 +#: help.c:535 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4137,7 +4146,7 @@ msgstr "" " PGAPPNAME\n" " samma som anslutningsparametern \"application_name\"\n" -#: help.c:534 +#: help.c:537 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4145,7 +4154,7 @@ msgstr "" " PGDATABASE\n" " samma som anslutningsparametern \"dbname\"\n" -#: help.c:536 +#: help.c:539 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4153,7 +4162,7 @@ msgstr "" " PGHOST\n" " samma som anslutningsparametern \"host\"\n" -#: help.c:538 +#: help.c:541 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4161,7 +4170,7 @@ msgstr "" " PGPASSFILE\n" " lösenordsfilnamn\n" -#: help.c:540 +#: help.c:543 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4169,7 +4178,7 @@ msgstr "" " PGPASSWORD\n" " uppkoppingens lösenord (rekommenderas inte)\n" -#: help.c:542 +#: help.c:545 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4177,7 +4186,7 @@ msgstr "" " PGPORT\n" " samma som anslutingsparametern \"port\"\n" -#: help.c:544 +#: help.c:547 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4185,7 +4194,7 @@ msgstr "" " PGUSER\n" " samma som anslutningsparametern \"user\"\n" -#: help.c:546 +#: help.c:549 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4193,7 +4202,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " redigerare som används av kommanona \\e, \\ef och \\ev\n" -#: help.c:548 +#: help.c:551 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4201,7 +4210,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " hur radnummer anges när redigerare startas\n" -#: help.c:550 +#: help.c:553 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4209,7 +4218,7 @@ msgstr "" " PSQL_HISTORY\n" " alternativ plats för kommandohistorikfilen\n" -#: help.c:552 +#: help.c:555 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4217,7 +4226,7 @@ msgstr "" " PAGER\n" " namnet på den externa pageneraren\n" -#: help.c:555 +#: help.c:558 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4225,7 +4234,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " namn på externt paginerarprogram för \\watch\n" -#: help.c:558 +#: help.c:561 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4233,7 +4242,7 @@ msgstr "" " PSQLRC\n" " alternativ plats för användarens \".psqlrc\"-fil\n" -#: help.c:560 +#: help.c:563 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4241,7 +4250,7 @@ msgstr "" " SHELL\n" " skalet som används av kommandot \\!\n" -#: help.c:562 +#: help.c:565 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4249,11 +4258,11 @@ msgstr "" " TMPDIR\n" " katalog för temporärfiler\n" -#: help.c:622 +#: help.c:625 msgid "Available help:\n" msgstr "Tillgänglig hjälp:\n" -#: help.c:717 +#: help.c:720 #, c-format msgid "" "Command: %s\n" @@ -4272,7 +4281,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:740 +#: help.c:743 #, c-format msgid "" "No help available for \"%s\".\n" @@ -4404,189 +4413,189 @@ msgstr "%s: slut på minne" #: sql_help.c:746 sql_help.c:750 sql_help.c:771 sql_help.c:774 sql_help.c:777 #: sql_help.c:806 sql_help.c:818 sql_help.c:826 sql_help.c:829 sql_help.c:832 #: sql_help.c:847 sql_help.c:850 sql_help.c:879 sql_help.c:884 sql_help.c:889 -#: sql_help.c:894 sql_help.c:899 sql_help.c:926 sql_help.c:928 sql_help.c:930 -#: sql_help.c:932 sql_help.c:935 sql_help.c:937 sql_help.c:984 sql_help.c:1029 -#: sql_help.c:1034 sql_help.c:1039 sql_help.c:1044 sql_help.c:1049 -#: sql_help.c:1068 sql_help.c:1079 sql_help.c:1081 sql_help.c:1102 -#: sql_help.c:1112 sql_help.c:1113 sql_help.c:1115 sql_help.c:1117 -#: sql_help.c:1129 sql_help.c:1133 sql_help.c:1135 sql_help.c:1147 -#: sql_help.c:1149 sql_help.c:1151 sql_help.c:1153 sql_help.c:1172 -#: sql_help.c:1174 sql_help.c:1178 sql_help.c:1182 sql_help.c:1186 -#: sql_help.c:1189 sql_help.c:1190 sql_help.c:1191 sql_help.c:1194 -#: sql_help.c:1197 sql_help.c:1199 sql_help.c:1341 sql_help.c:1343 -#: sql_help.c:1346 sql_help.c:1349 sql_help.c:1351 sql_help.c:1353 -#: sql_help.c:1356 sql_help.c:1359 sql_help.c:1487 sql_help.c:1489 -#: sql_help.c:1491 sql_help.c:1494 sql_help.c:1515 sql_help.c:1518 -#: sql_help.c:1521 sql_help.c:1524 sql_help.c:1528 sql_help.c:1530 -#: sql_help.c:1532 sql_help.c:1534 sql_help.c:1548 sql_help.c:1551 -#: sql_help.c:1553 sql_help.c:1555 sql_help.c:1565 sql_help.c:1567 -#: sql_help.c:1577 sql_help.c:1579 sql_help.c:1589 sql_help.c:1592 -#: sql_help.c:1615 sql_help.c:1617 sql_help.c:1619 sql_help.c:1621 -#: sql_help.c:1624 sql_help.c:1626 sql_help.c:1629 sql_help.c:1632 -#: sql_help.c:1683 sql_help.c:1726 sql_help.c:1729 sql_help.c:1731 -#: sql_help.c:1733 sql_help.c:1736 sql_help.c:1738 sql_help.c:1740 -#: sql_help.c:1743 sql_help.c:1793 sql_help.c:1809 sql_help.c:2044 -#: sql_help.c:2113 sql_help.c:2132 sql_help.c:2145 sql_help.c:2203 -#: sql_help.c:2211 sql_help.c:2221 sql_help.c:2249 sql_help.c:2282 -#: sql_help.c:2300 sql_help.c:2328 sql_help.c:2451 sql_help.c:2497 -#: sql_help.c:2522 sql_help.c:2545 sql_help.c:2549 sql_help.c:2583 -#: sql_help.c:2603 sql_help.c:2625 sql_help.c:2639 sql_help.c:2660 -#: sql_help.c:2689 sql_help.c:2722 sql_help.c:2745 sql_help.c:2794 -#: sql_help.c:3098 sql_help.c:3111 sql_help.c:3128 sql_help.c:3144 -#: sql_help.c:3184 sql_help.c:3238 sql_help.c:3242 sql_help.c:3244 -#: sql_help.c:3251 sql_help.c:3270 sql_help.c:3297 sql_help.c:3332 -#: sql_help.c:3344 sql_help.c:3353 sql_help.c:3399 sql_help.c:3413 -#: sql_help.c:3441 sql_help.c:3449 sql_help.c:3461 sql_help.c:3471 -#: sql_help.c:3479 sql_help.c:3487 sql_help.c:3495 sql_help.c:3503 -#: sql_help.c:3512 sql_help.c:3523 sql_help.c:3531 sql_help.c:3539 -#: sql_help.c:3547 sql_help.c:3555 sql_help.c:3565 sql_help.c:3574 -#: sql_help.c:3583 sql_help.c:3591 sql_help.c:3601 sql_help.c:3612 -#: sql_help.c:3620 sql_help.c:3629 sql_help.c:3640 sql_help.c:3649 -#: sql_help.c:3657 sql_help.c:3665 sql_help.c:3673 sql_help.c:3681 -#: sql_help.c:3689 sql_help.c:3697 sql_help.c:3705 sql_help.c:3713 -#: sql_help.c:3721 sql_help.c:3729 sql_help.c:3746 sql_help.c:3755 -#: sql_help.c:3763 sql_help.c:3780 sql_help.c:3795 sql_help.c:4110 -#: sql_help.c:4233 sql_help.c:4262 sql_help.c:4278 sql_help.c:4280 -#: sql_help.c:4784 sql_help.c:4832 sql_help.c:4991 +#: sql_help.c:894 sql_help.c:899 sql_help.c:935 sql_help.c:937 sql_help.c:939 +#: sql_help.c:941 sql_help.c:944 sql_help.c:946 sql_help.c:998 sql_help.c:1043 +#: sql_help.c:1048 sql_help.c:1053 sql_help.c:1058 sql_help.c:1063 +#: sql_help.c:1082 sql_help.c:1093 sql_help.c:1095 sql_help.c:1116 +#: sql_help.c:1126 sql_help.c:1127 sql_help.c:1129 sql_help.c:1131 +#: sql_help.c:1143 sql_help.c:1147 sql_help.c:1149 sql_help.c:1161 +#: sql_help.c:1163 sql_help.c:1165 sql_help.c:1167 sql_help.c:1186 +#: sql_help.c:1188 sql_help.c:1192 sql_help.c:1196 sql_help.c:1200 +#: sql_help.c:1203 sql_help.c:1204 sql_help.c:1205 sql_help.c:1208 +#: sql_help.c:1211 sql_help.c:1213 sql_help.c:1355 sql_help.c:1357 +#: sql_help.c:1360 sql_help.c:1363 sql_help.c:1365 sql_help.c:1367 +#: sql_help.c:1370 sql_help.c:1373 sql_help.c:1501 sql_help.c:1503 +#: sql_help.c:1505 sql_help.c:1508 sql_help.c:1529 sql_help.c:1532 +#: sql_help.c:1535 sql_help.c:1538 sql_help.c:1542 sql_help.c:1544 +#: sql_help.c:1546 sql_help.c:1548 sql_help.c:1562 sql_help.c:1565 +#: sql_help.c:1567 sql_help.c:1569 sql_help.c:1579 sql_help.c:1581 +#: sql_help.c:1591 sql_help.c:1593 sql_help.c:1603 sql_help.c:1606 +#: sql_help.c:1629 sql_help.c:1631 sql_help.c:1633 sql_help.c:1635 +#: sql_help.c:1638 sql_help.c:1640 sql_help.c:1643 sql_help.c:1646 +#: sql_help.c:1697 sql_help.c:1740 sql_help.c:1743 sql_help.c:1745 +#: sql_help.c:1747 sql_help.c:1750 sql_help.c:1752 sql_help.c:1754 +#: sql_help.c:1757 sql_help.c:1807 sql_help.c:1823 sql_help.c:2058 +#: sql_help.c:2127 sql_help.c:2146 sql_help.c:2159 sql_help.c:2217 +#: sql_help.c:2225 sql_help.c:2235 sql_help.c:2263 sql_help.c:2296 +#: sql_help.c:2314 sql_help.c:2342 sql_help.c:2465 sql_help.c:2511 +#: sql_help.c:2536 sql_help.c:2559 sql_help.c:2563 sql_help.c:2597 +#: sql_help.c:2617 sql_help.c:2639 sql_help.c:2653 sql_help.c:2674 +#: sql_help.c:2707 sql_help.c:2742 sql_help.c:2765 sql_help.c:2814 +#: sql_help.c:3118 sql_help.c:3131 sql_help.c:3148 sql_help.c:3164 +#: sql_help.c:3204 sql_help.c:3258 sql_help.c:3262 sql_help.c:3264 +#: sql_help.c:3271 sql_help.c:3290 sql_help.c:3317 sql_help.c:3352 +#: sql_help.c:3364 sql_help.c:3373 sql_help.c:3419 sql_help.c:3433 +#: sql_help.c:3461 sql_help.c:3469 sql_help.c:3481 sql_help.c:3491 +#: sql_help.c:3499 sql_help.c:3507 sql_help.c:3515 sql_help.c:3523 +#: sql_help.c:3532 sql_help.c:3543 sql_help.c:3551 sql_help.c:3559 +#: sql_help.c:3567 sql_help.c:3575 sql_help.c:3585 sql_help.c:3594 +#: sql_help.c:3603 sql_help.c:3611 sql_help.c:3621 sql_help.c:3632 +#: sql_help.c:3640 sql_help.c:3649 sql_help.c:3660 sql_help.c:3669 +#: sql_help.c:3677 sql_help.c:3685 sql_help.c:3693 sql_help.c:3701 +#: sql_help.c:3709 sql_help.c:3717 sql_help.c:3725 sql_help.c:3733 +#: sql_help.c:3741 sql_help.c:3749 sql_help.c:3766 sql_help.c:3775 +#: sql_help.c:3783 sql_help.c:3800 sql_help.c:3815 sql_help.c:4130 +#: sql_help.c:4253 sql_help.c:4282 sql_help.c:4298 sql_help.c:4300 +#: sql_help.c:4804 sql_help.c:4852 sql_help.c:5011 msgid "name" msgstr "namn" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1886 -#: sql_help.c:3414 sql_help.c:4551 +#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1900 +#: sql_help.c:3434 sql_help.c:4571 msgid "aggregate_signature" msgstr "aggregatsignatur" #: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:274 #: sql_help.c:295 sql_help.c:426 sql_help.c:473 sql_help.c:552 sql_help.c:600 #: sql_help.c:618 sql_help.c:645 sql_help.c:698 sql_help.c:773 sql_help.c:828 -#: sql_help.c:849 sql_help.c:888 sql_help.c:938 sql_help.c:985 sql_help.c:1038 -#: sql_help.c:1070 sql_help.c:1080 sql_help.c:1116 sql_help.c:1136 -#: sql_help.c:1150 sql_help.c:1200 sql_help.c:1350 sql_help.c:1488 -#: sql_help.c:1531 sql_help.c:1552 sql_help.c:1566 sql_help.c:1578 -#: sql_help.c:1591 sql_help.c:1618 sql_help.c:1684 sql_help.c:1737 +#: sql_help.c:849 sql_help.c:888 sql_help.c:947 sql_help.c:999 sql_help.c:1052 +#: sql_help.c:1084 sql_help.c:1094 sql_help.c:1130 sql_help.c:1150 +#: sql_help.c:1164 sql_help.c:1214 sql_help.c:1364 sql_help.c:1502 +#: sql_help.c:1545 sql_help.c:1566 sql_help.c:1580 sql_help.c:1592 +#: sql_help.c:1605 sql_help.c:1632 sql_help.c:1698 sql_help.c:1751 msgid "new_name" msgstr "nytt_namn" #: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:272 #: sql_help.c:293 sql_help.c:424 sql_help.c:509 sql_help.c:557 sql_help.c:647 #: sql_help.c:656 sql_help.c:721 sql_help.c:745 sql_help.c:776 sql_help.c:831 -#: sql_help.c:893 sql_help.c:936 sql_help.c:1043 sql_help.c:1082 -#: sql_help.c:1114 sql_help.c:1134 sql_help.c:1148 sql_help.c:1198 -#: sql_help.c:1417 sql_help.c:1490 sql_help.c:1533 sql_help.c:1554 -#: sql_help.c:1616 sql_help.c:1732 sql_help.c:3084 +#: sql_help.c:893 sql_help.c:945 sql_help.c:1057 sql_help.c:1096 +#: sql_help.c:1128 sql_help.c:1148 sql_help.c:1162 sql_help.c:1212 +#: sql_help.c:1431 sql_help.c:1504 sql_help.c:1547 sql_help.c:1568 +#: sql_help.c:1630 sql_help.c:1746 sql_help.c:3104 msgid "new_owner" msgstr "ny_ägare" #: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:276 sql_help.c:346 #: sql_help.c:475 sql_help.c:562 sql_help.c:700 sql_help.c:749 sql_help.c:779 -#: sql_help.c:834 sql_help.c:898 sql_help.c:1048 sql_help.c:1118 -#: sql_help.c:1152 sql_help.c:1352 sql_help.c:1535 sql_help.c:1556 -#: sql_help.c:1568 sql_help.c:1580 sql_help.c:1620 sql_help.c:1739 +#: sql_help.c:834 sql_help.c:898 sql_help.c:1062 sql_help.c:1132 +#: sql_help.c:1166 sql_help.c:1366 sql_help.c:1549 sql_help.c:1570 +#: sql_help.c:1582 sql_help.c:1594 sql_help.c:1634 sql_help.c:1753 msgid "new_schema" msgstr "nytt_schema" -#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 +#: sql_help.c:44 sql_help.c:1964 sql_help.c:3435 sql_help.c:4600 msgid "where aggregate_signature is:" msgstr "där aggregatsignatur är:" #: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:364 sql_help.c:377 #: sql_help.c:381 sql_help.c:397 sql_help.c:400 sql_help.c:403 sql_help.c:544 #: sql_help.c:549 sql_help.c:554 sql_help.c:559 sql_help.c:564 sql_help.c:880 -#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1030 -#: sql_help.c:1035 sql_help.c:1040 sql_help.c:1045 sql_help.c:1050 -#: sql_help.c:1904 sql_help.c:1921 sql_help.c:1927 sql_help.c:1951 -#: sql_help.c:1954 sql_help.c:1957 sql_help.c:2114 sql_help.c:2133 -#: sql_help.c:2136 sql_help.c:2452 sql_help.c:2661 sql_help.c:3416 -#: sql_help.c:3419 sql_help.c:3422 sql_help.c:3513 sql_help.c:3602 -#: sql_help.c:3630 sql_help.c:3983 sql_help.c:4450 sql_help.c:4557 -#: sql_help.c:4564 sql_help.c:4570 sql_help.c:4581 sql_help.c:4584 -#: sql_help.c:4587 +#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1044 +#: sql_help.c:1049 sql_help.c:1054 sql_help.c:1059 sql_help.c:1064 +#: sql_help.c:1918 sql_help.c:1935 sql_help.c:1941 sql_help.c:1965 +#: sql_help.c:1968 sql_help.c:1971 sql_help.c:2128 sql_help.c:2147 +#: sql_help.c:2150 sql_help.c:2466 sql_help.c:2675 sql_help.c:3436 +#: sql_help.c:3439 sql_help.c:3442 sql_help.c:3533 sql_help.c:3622 +#: sql_help.c:3650 sql_help.c:4003 sql_help.c:4470 sql_help.c:4577 +#: sql_help.c:4584 sql_help.c:4590 sql_help.c:4601 sql_help.c:4604 +#: sql_help.c:4607 msgid "argmode" msgstr "arg_läge" #: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:365 sql_help.c:378 #: sql_help.c:382 sql_help.c:398 sql_help.c:401 sql_help.c:404 sql_help.c:545 #: sql_help.c:550 sql_help.c:555 sql_help.c:560 sql_help.c:565 sql_help.c:881 -#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1031 -#: sql_help.c:1036 sql_help.c:1041 sql_help.c:1046 sql_help.c:1051 -#: sql_help.c:1905 sql_help.c:1922 sql_help.c:1928 sql_help.c:1952 -#: sql_help.c:1955 sql_help.c:1958 sql_help.c:2115 sql_help.c:2134 -#: sql_help.c:2137 sql_help.c:2453 sql_help.c:2662 sql_help.c:3417 -#: sql_help.c:3420 sql_help.c:3423 sql_help.c:3514 sql_help.c:3603 -#: sql_help.c:3631 sql_help.c:4558 sql_help.c:4565 sql_help.c:4571 -#: sql_help.c:4582 sql_help.c:4585 sql_help.c:4588 +#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1045 +#: sql_help.c:1050 sql_help.c:1055 sql_help.c:1060 sql_help.c:1065 +#: sql_help.c:1919 sql_help.c:1936 sql_help.c:1942 sql_help.c:1966 +#: sql_help.c:1969 sql_help.c:1972 sql_help.c:2129 sql_help.c:2148 +#: sql_help.c:2151 sql_help.c:2467 sql_help.c:2676 sql_help.c:3437 +#: sql_help.c:3440 sql_help.c:3443 sql_help.c:3534 sql_help.c:3623 +#: sql_help.c:3651 sql_help.c:4578 sql_help.c:4585 sql_help.c:4591 +#: sql_help.c:4602 sql_help.c:4605 sql_help.c:4608 msgid "argname" msgstr "arg_namn" #: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:366 sql_help.c:379 #: sql_help.c:383 sql_help.c:399 sql_help.c:402 sql_help.c:405 sql_help.c:546 #: sql_help.c:551 sql_help.c:556 sql_help.c:561 sql_help.c:566 sql_help.c:882 -#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1032 -#: sql_help.c:1037 sql_help.c:1042 sql_help.c:1047 sql_help.c:1052 -#: sql_help.c:1906 sql_help.c:1923 sql_help.c:1929 sql_help.c:1953 -#: sql_help.c:1956 sql_help.c:1959 sql_help.c:2454 sql_help.c:2663 -#: sql_help.c:3418 sql_help.c:3421 sql_help.c:3424 sql_help.c:3515 -#: sql_help.c:3604 sql_help.c:3632 sql_help.c:4559 sql_help.c:4566 -#: sql_help.c:4572 sql_help.c:4583 sql_help.c:4586 sql_help.c:4589 +#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1046 +#: sql_help.c:1051 sql_help.c:1056 sql_help.c:1061 sql_help.c:1066 +#: sql_help.c:1920 sql_help.c:1937 sql_help.c:1943 sql_help.c:1967 +#: sql_help.c:1970 sql_help.c:1973 sql_help.c:2468 sql_help.c:2677 +#: sql_help.c:3438 sql_help.c:3441 sql_help.c:3444 sql_help.c:3535 +#: sql_help.c:3624 sql_help.c:3652 sql_help.c:4579 sql_help.c:4586 +#: sql_help.c:4592 sql_help.c:4603 sql_help.c:4606 sql_help.c:4609 msgid "argtype" msgstr "arg_typ" -#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:979 -#: sql_help.c:1131 sql_help.c:1549 sql_help.c:1678 sql_help.c:1710 -#: sql_help.c:1762 sql_help.c:1821 sql_help.c:2011 sql_help.c:2018 -#: sql_help.c:2331 sql_help.c:2389 sql_help.c:2398 sql_help.c:2407 -#: sql_help.c:2498 sql_help.c:2723 sql_help.c:2816 sql_help.c:3113 -#: sql_help.c:3298 sql_help.c:3320 sql_help.c:3462 sql_help.c:3819 -#: sql_help.c:4027 sql_help.c:4277 sql_help.c:4279 sql_help.c:5059 +#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:993 +#: sql_help.c:1145 sql_help.c:1563 sql_help.c:1692 sql_help.c:1724 +#: sql_help.c:1776 sql_help.c:1835 sql_help.c:2025 sql_help.c:2032 +#: sql_help.c:2345 sql_help.c:2403 sql_help.c:2412 sql_help.c:2421 +#: sql_help.c:2512 sql_help.c:2743 sql_help.c:2836 sql_help.c:3133 +#: sql_help.c:3318 sql_help.c:3340 sql_help.c:3482 sql_help.c:3839 +#: sql_help.c:4047 sql_help.c:4297 sql_help.c:4299 sql_help.c:5079 msgid "option" msgstr "flaggor" -#: sql_help.c:115 sql_help.c:980 sql_help.c:1679 sql_help.c:2499 -#: sql_help.c:2724 sql_help.c:3299 sql_help.c:3463 +#: sql_help.c:115 sql_help.c:994 sql_help.c:1693 sql_help.c:2513 +#: sql_help.c:2744 sql_help.c:3319 sql_help.c:3483 msgid "where option can be:" msgstr "där flaggor kan vara:" -#: sql_help.c:116 sql_help.c:2263 +#: sql_help.c:116 sql_help.c:2277 msgid "allowconn" msgstr "tillåtansl" -#: sql_help.c:117 sql_help.c:981 sql_help.c:1680 sql_help.c:2264 -#: sql_help.c:2500 sql_help.c:2725 sql_help.c:3300 +#: sql_help.c:117 sql_help.c:995 sql_help.c:1694 sql_help.c:2278 +#: sql_help.c:2514 sql_help.c:2745 sql_help.c:3320 msgid "connlimit" msgstr "anslutningstak" -#: sql_help.c:118 sql_help.c:2265 +#: sql_help.c:118 sql_help.c:2279 msgid "istemplate" msgstr "ärmall" -#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1355 -#: sql_help.c:1410 sql_help.c:4283 +#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1369 +#: sql_help.c:1424 sql_help.c:4303 msgid "new_tablespace" msgstr "nytt_tabellutrymme" #: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:572 sql_help.c:574 -#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:988 -#: sql_help.c:992 sql_help.c:995 sql_help.c:1057 sql_help.c:1059 -#: sql_help.c:1060 sql_help.c:1211 sql_help.c:1213 sql_help.c:1687 -#: sql_help.c:1691 sql_help.c:1694 sql_help.c:2464 sql_help.c:2667 -#: sql_help.c:3995 sql_help.c:4301 sql_help.c:4462 sql_help.c:4772 +#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:1002 +#: sql_help.c:1006 sql_help.c:1009 sql_help.c:1071 sql_help.c:1073 +#: sql_help.c:1074 sql_help.c:1225 sql_help.c:1227 sql_help.c:1701 +#: sql_help.c:1705 sql_help.c:1708 sql_help.c:2478 sql_help.c:2681 +#: sql_help.c:4015 sql_help.c:4321 sql_help.c:4482 sql_help.c:4792 msgid "configuration_parameter" msgstr "konfigurationsparameter" #: sql_help.c:128 sql_help.c:422 sql_help.c:493 sql_help.c:499 sql_help.c:511 #: sql_help.c:573 sql_help.c:627 sql_help.c:709 sql_help.c:719 sql_help.c:906 -#: sql_help.c:934 sql_help.c:989 sql_help.c:1058 sql_help.c:1132 -#: sql_help.c:1177 sql_help.c:1181 sql_help.c:1185 sql_help.c:1188 -#: sql_help.c:1193 sql_help.c:1196 sql_help.c:1212 sql_help.c:1388 -#: sql_help.c:1412 sql_help.c:1465 sql_help.c:1473 sql_help.c:1493 -#: sql_help.c:1550 sql_help.c:1634 sql_help.c:1688 sql_help.c:1711 -#: sql_help.c:2332 sql_help.c:2390 sql_help.c:2399 sql_help.c:2408 -#: sql_help.c:2465 sql_help.c:2466 sql_help.c:2530 sql_help.c:2533 -#: sql_help.c:2567 sql_help.c:2668 sql_help.c:2669 sql_help.c:2692 -#: sql_help.c:2817 sql_help.c:2856 sql_help.c:2967 sql_help.c:2980 -#: sql_help.c:2994 sql_help.c:3040 sql_help.c:3048 sql_help.c:3070 -#: sql_help.c:3087 sql_help.c:3114 sql_help.c:3321 sql_help.c:4028 -#: sql_help.c:4773 sql_help.c:4774 sql_help.c:4775 sql_help.c:4776 +#: sql_help.c:943 sql_help.c:1003 sql_help.c:1072 sql_help.c:1146 +#: sql_help.c:1191 sql_help.c:1195 sql_help.c:1199 sql_help.c:1202 +#: sql_help.c:1207 sql_help.c:1210 sql_help.c:1226 sql_help.c:1402 +#: sql_help.c:1426 sql_help.c:1479 sql_help.c:1487 sql_help.c:1507 +#: sql_help.c:1564 sql_help.c:1648 sql_help.c:1702 sql_help.c:1725 +#: sql_help.c:2346 sql_help.c:2404 sql_help.c:2413 sql_help.c:2422 +#: sql_help.c:2479 sql_help.c:2480 sql_help.c:2544 sql_help.c:2547 +#: sql_help.c:2581 sql_help.c:2682 sql_help.c:2683 sql_help.c:2710 +#: sql_help.c:2837 sql_help.c:2876 sql_help.c:2987 sql_help.c:3000 +#: sql_help.c:3014 sql_help.c:3060 sql_help.c:3068 sql_help.c:3090 +#: sql_help.c:3107 sql_help.c:3134 sql_help.c:3341 sql_help.c:4048 +#: sql_help.c:4793 sql_help.c:4794 sql_help.c:4795 sql_help.c:4796 msgid "value" msgstr "värde" @@ -4594,10 +4603,10 @@ msgstr "värde" msgid "target_role" msgstr "målroll" -#: sql_help.c:215 sql_help.c:943 sql_help.c:2316 sql_help.c:2697 -#: sql_help.c:2770 sql_help.c:2775 sql_help.c:3958 sql_help.c:3967 -#: sql_help.c:3986 sql_help.c:3998 sql_help.c:4425 sql_help.c:4434 -#: sql_help.c:4453 sql_help.c:4465 +#: sql_help.c:215 sql_help.c:950 sql_help.c:953 sql_help.c:2330 sql_help.c:2713 +#: sql_help.c:2790 sql_help.c:2795 sql_help.c:3978 sql_help.c:3987 +#: sql_help.c:4006 sql_help.c:4018 sql_help.c:4445 sql_help.c:4454 +#: sql_help.c:4473 sql_help.c:4485 msgid "schema_name" msgstr "schemanamn" @@ -4612,57 +4621,57 @@ msgstr "där förkortad_grant_eller_revok är en av:" #: sql_help.c:218 sql_help.c:219 sql_help.c:220 sql_help.c:221 sql_help.c:222 #: sql_help.c:223 sql_help.c:224 sql_help.c:225 sql_help.c:226 sql_help.c:227 #: sql_help.c:228 sql_help.c:229 sql_help.c:598 sql_help.c:634 sql_help.c:702 -#: sql_help.c:852 sql_help.c:999 sql_help.c:1354 sql_help.c:1698 -#: sql_help.c:2503 sql_help.c:2504 sql_help.c:2505 sql_help.c:2506 -#: sql_help.c:2507 sql_help.c:2641 sql_help.c:2728 sql_help.c:2729 -#: sql_help.c:2730 sql_help.c:3303 sql_help.c:3304 sql_help.c:3305 -#: sql_help.c:3306 sql_help.c:3307 sql_help.c:4007 sql_help.c:4011 -#: sql_help.c:4474 sql_help.c:4478 sql_help.c:4794 +#: sql_help.c:852 sql_help.c:1013 sql_help.c:1368 sql_help.c:1712 +#: sql_help.c:2517 sql_help.c:2518 sql_help.c:2519 sql_help.c:2520 +#: sql_help.c:2521 sql_help.c:2655 sql_help.c:2748 sql_help.c:2749 +#: sql_help.c:2750 sql_help.c:3323 sql_help.c:3324 sql_help.c:3325 +#: sql_help.c:3326 sql_help.c:3327 sql_help.c:4027 sql_help.c:4031 +#: sql_help.c:4494 sql_help.c:4498 sql_help.c:4814 msgid "role_name" msgstr "rollnamn" -#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:942 sql_help.c:1370 -#: sql_help.c:1372 sql_help.c:1376 sql_help.c:1427 sql_help.c:1439 -#: sql_help.c:1469 sql_help.c:1728 sql_help.c:2285 sql_help.c:2289 -#: sql_help.c:2411 sql_help.c:2417 sql_help.c:2526 sql_help.c:2696 -#: sql_help.c:2833 sql_help.c:2838 sql_help.c:2840 sql_help.c:2962 -#: sql_help.c:2975 sql_help.c:2989 sql_help.c:2998 sql_help.c:3010 -#: sql_help.c:3044 sql_help.c:4060 sql_help.c:4076 sql_help.c:4078 -#: sql_help.c:4176 sql_help.c:4179 sql_help.c:4181 sql_help.c:4644 -#: sql_help.c:4645 sql_help.c:4654 sql_help.c:4701 sql_help.c:4702 -#: sql_help.c:4703 sql_help.c:4704 sql_help.c:4705 sql_help.c:4706 -#: sql_help.c:4747 sql_help.c:4748 sql_help.c:4753 sql_help.c:4758 -#: sql_help.c:4902 sql_help.c:4903 sql_help.c:4912 sql_help.c:4959 -#: sql_help.c:4960 sql_help.c:4961 sql_help.c:4962 sql_help.c:4963 -#: sql_help.c:4964 sql_help.c:5020 sql_help.c:5022 sql_help.c:5089 -#: sql_help.c:5149 sql_help.c:5150 sql_help.c:5159 sql_help.c:5206 -#: sql_help.c:5207 sql_help.c:5208 sql_help.c:5209 sql_help.c:5210 -#: sql_help.c:5211 +#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:957 sql_help.c:1384 +#: sql_help.c:1386 sql_help.c:1390 sql_help.c:1441 sql_help.c:1453 +#: sql_help.c:1483 sql_help.c:1742 sql_help.c:2299 sql_help.c:2303 +#: sql_help.c:2425 sql_help.c:2431 sql_help.c:2540 sql_help.c:2717 +#: sql_help.c:2853 sql_help.c:2858 sql_help.c:2860 sql_help.c:2982 +#: sql_help.c:2995 sql_help.c:3009 sql_help.c:3018 sql_help.c:3030 +#: sql_help.c:3064 sql_help.c:4080 sql_help.c:4096 sql_help.c:4098 +#: sql_help.c:4196 sql_help.c:4199 sql_help.c:4201 sql_help.c:4664 +#: sql_help.c:4665 sql_help.c:4674 sql_help.c:4721 sql_help.c:4722 +#: sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 sql_help.c:4726 +#: sql_help.c:4767 sql_help.c:4768 sql_help.c:4773 sql_help.c:4778 +#: sql_help.c:4922 sql_help.c:4923 sql_help.c:4932 sql_help.c:4979 +#: sql_help.c:4980 sql_help.c:4981 sql_help.c:4982 sql_help.c:4983 +#: sql_help.c:4984 sql_help.c:5040 sql_help.c:5042 sql_help.c:5109 +#: sql_help.c:5169 sql_help.c:5170 sql_help.c:5179 sql_help.c:5226 +#: sql_help.c:5227 sql_help.c:5228 sql_help.c:5229 sql_help.c:5230 +#: sql_help.c:5231 msgid "expression" msgstr "uttryck" -#: sql_help.c:263 sql_help.c:2286 +#: sql_help.c:263 sql_help.c:2300 msgid "domain_constraint" msgstr "domain_villkor" #: sql_help.c:265 sql_help.c:267 sql_help.c:270 sql_help.c:278 sql_help.c:501 -#: sql_help.c:502 sql_help.c:1347 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:1398 sql_help.c:1399 sql_help.c:1426 sql_help.c:1438 -#: sql_help.c:1460 sql_help.c:1892 sql_help.c:1894 sql_help.c:2288 -#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2997 sql_help.c:3009 -#: sql_help.c:4073 +#: sql_help.c:502 sql_help.c:1361 sql_help.c:1410 sql_help.c:1411 +#: sql_help.c:1412 sql_help.c:1413 sql_help.c:1440 sql_help.c:1452 +#: sql_help.c:1474 sql_help.c:1906 sql_help.c:1908 sql_help.c:2302 +#: sql_help.c:2424 sql_help.c:2429 sql_help.c:3017 sql_help.c:3029 +#: sql_help.c:4093 msgid "constraint_name" msgstr "villkorsnamn" -#: sql_help.c:268 sql_help.c:1348 +#: sql_help.c:268 sql_help.c:1362 msgid "new_constraint_name" msgstr "nyy_villkorsnamn" -#: sql_help.c:277 sql_help.c:2287 +#: sql_help.c:277 sql_help.c:2301 msgid "where domain_constraint is:" msgstr "där domän_villkor är:" -#: sql_help.c:344 sql_help.c:1130 +#: sql_help.c:344 sql_help.c:1144 msgid "new_version" msgstr "ny_version" @@ -4678,82 +4687,82 @@ msgstr "där medlemsobjekt är:" #: sql_help.c:361 sql_help.c:362 sql_help.c:367 sql_help.c:371 sql_help.c:373 #: sql_help.c:375 sql_help.c:384 sql_help.c:385 sql_help.c:386 sql_help.c:387 #: sql_help.c:388 sql_help.c:389 sql_help.c:390 sql_help.c:391 sql_help.c:394 -#: sql_help.c:395 sql_help.c:1884 sql_help.c:1889 sql_help.c:1896 -#: sql_help.c:1897 sql_help.c:1898 sql_help.c:1899 sql_help.c:1900 -#: sql_help.c:1901 sql_help.c:1902 sql_help.c:1907 sql_help.c:1909 -#: sql_help.c:1913 sql_help.c:1915 sql_help.c:1919 sql_help.c:1924 -#: sql_help.c:1925 sql_help.c:1932 sql_help.c:1933 sql_help.c:1934 -#: sql_help.c:1935 sql_help.c:1936 sql_help.c:1937 sql_help.c:1938 -#: sql_help.c:1939 sql_help.c:1940 sql_help.c:1941 sql_help.c:1942 -#: sql_help.c:1947 sql_help.c:1948 sql_help.c:4547 sql_help.c:4552 -#: sql_help.c:4553 sql_help.c:4554 sql_help.c:4555 sql_help.c:4561 -#: sql_help.c:4562 sql_help.c:4567 sql_help.c:4568 sql_help.c:4573 -#: sql_help.c:4574 sql_help.c:4575 sql_help.c:4576 sql_help.c:4577 -#: sql_help.c:4578 +#: sql_help.c:395 sql_help.c:1898 sql_help.c:1903 sql_help.c:1910 +#: sql_help.c:1911 sql_help.c:1912 sql_help.c:1913 sql_help.c:1914 +#: sql_help.c:1915 sql_help.c:1916 sql_help.c:1921 sql_help.c:1923 +#: sql_help.c:1927 sql_help.c:1929 sql_help.c:1933 sql_help.c:1938 +#: sql_help.c:1939 sql_help.c:1946 sql_help.c:1947 sql_help.c:1948 +#: sql_help.c:1949 sql_help.c:1950 sql_help.c:1951 sql_help.c:1952 +#: sql_help.c:1953 sql_help.c:1954 sql_help.c:1955 sql_help.c:1956 +#: sql_help.c:1961 sql_help.c:1962 sql_help.c:4567 sql_help.c:4572 +#: sql_help.c:4573 sql_help.c:4574 sql_help.c:4575 sql_help.c:4581 +#: sql_help.c:4582 sql_help.c:4587 sql_help.c:4588 sql_help.c:4593 +#: sql_help.c:4594 sql_help.c:4595 sql_help.c:4596 sql_help.c:4597 +#: sql_help.c:4598 msgid "object_name" msgstr "objektnamn" -#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 +#: sql_help.c:353 sql_help.c:1899 sql_help.c:4570 msgid "aggregate_name" msgstr "aggregatnamn" -#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 -#: sql_help.c:2185 sql_help.c:3432 +#: sql_help.c:355 sql_help.c:1901 sql_help.c:2193 sql_help.c:2197 +#: sql_help.c:2199 sql_help.c:3452 msgid "source_type" msgstr "källtyp" -#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 -#: sql_help.c:2186 sql_help.c:3433 +#: sql_help.c:356 sql_help.c:1902 sql_help.c:2194 sql_help.c:2198 +#: sql_help.c:2200 sql_help.c:3453 msgid "target_type" msgstr "måltyp" -#: sql_help.c:363 sql_help.c:816 sql_help.c:1903 sql_help.c:2181 -#: sql_help.c:2224 sql_help.c:2304 sql_help.c:2584 sql_help.c:2615 -#: sql_help.c:3190 sql_help.c:4449 sql_help.c:4556 sql_help.c:4673 -#: sql_help.c:4677 sql_help.c:4681 sql_help.c:4684 sql_help.c:4931 -#: sql_help.c:4935 sql_help.c:4939 sql_help.c:4942 sql_help.c:5178 -#: sql_help.c:5182 sql_help.c:5186 sql_help.c:5189 +#: sql_help.c:363 sql_help.c:816 sql_help.c:1917 sql_help.c:2195 +#: sql_help.c:2238 sql_help.c:2318 sql_help.c:2598 sql_help.c:2629 +#: sql_help.c:3210 sql_help.c:4469 sql_help.c:4576 sql_help.c:4693 +#: sql_help.c:4697 sql_help.c:4701 sql_help.c:4704 sql_help.c:4951 +#: sql_help.c:4955 sql_help.c:4959 sql_help.c:4962 sql_help.c:5198 +#: sql_help.c:5202 sql_help.c:5206 sql_help.c:5209 msgid "function_name" msgstr "funktionsnamn" -#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1924 sql_help.c:2622 msgid "operator_name" msgstr "operatornamn" -#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1911 -#: sql_help.c:2585 sql_help.c:3556 +#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1925 +#: sql_help.c:2599 sql_help.c:3576 msgid "left_type" msgstr "vänster_typ" -#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1912 -#: sql_help.c:2586 sql_help.c:3557 +#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1926 +#: sql_help.c:2600 sql_help.c:3577 msgid "right_type" msgstr "höger_typ" #: sql_help.c:372 sql_help.c:374 sql_help.c:772 sql_help.c:775 sql_help.c:778 #: sql_help.c:807 sql_help.c:819 sql_help.c:827 sql_help.c:830 sql_help.c:833 -#: sql_help.c:1447 sql_help.c:1914 sql_help.c:1916 sql_help.c:2605 -#: sql_help.c:2626 sql_help.c:3018 sql_help.c:3566 sql_help.c:3575 +#: sql_help.c:1461 sql_help.c:1928 sql_help.c:1930 sql_help.c:2619 +#: sql_help.c:2640 sql_help.c:3038 sql_help.c:3586 sql_help.c:3595 msgid "index_method" msgstr "indexmetod" -#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 +#: sql_help.c:376 sql_help.c:1934 sql_help.c:4583 msgid "procedure_name" msgstr "procedurnamn" -#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 +#: sql_help.c:380 sql_help.c:1940 sql_help.c:4002 sql_help.c:4589 msgid "routine_name" msgstr "rutinnamn" -#: sql_help.c:392 sql_help.c:1416 sql_help.c:1943 sql_help.c:2460 -#: sql_help.c:2666 sql_help.c:2970 sql_help.c:3157 sql_help.c:3737 -#: sql_help.c:4004 sql_help.c:4471 +#: sql_help.c:392 sql_help.c:1430 sql_help.c:1957 sql_help.c:2474 +#: sql_help.c:2680 sql_help.c:2990 sql_help.c:3177 sql_help.c:3757 +#: sql_help.c:4024 sql_help.c:4491 msgid "type_name" msgstr "typnamn" -#: sql_help.c:393 sql_help.c:1944 sql_help.c:2459 sql_help.c:2665 -#: sql_help.c:3158 sql_help.c:3390 sql_help.c:3738 sql_help.c:3989 -#: sql_help.c:4456 +#: sql_help.c:393 sql_help.c:1958 sql_help.c:2473 sql_help.c:2679 +#: sql_help.c:3178 sql_help.c:3410 sql_help.c:3758 sql_help.c:4009 +#: sql_help.c:4476 msgid "lang_name" msgstr "språknamn" @@ -4761,149 +4770,149 @@ msgstr "språknamn" msgid "and aggregate_signature is:" msgstr "och aggregatsignatur är:" -#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 +#: sql_help.c:419 sql_help.c:2060 sql_help.c:2343 msgid "handler_function" msgstr "hanterarfunktion" -#: sql_help.c:420 sql_help.c:2330 +#: sql_help.c:420 sql_help.c:2344 msgid "validator_function" msgstr "valideringsfunktion" -#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1033 -#: sql_help.c:1342 sql_help.c:1625 +#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1047 +#: sql_help.c:1356 sql_help.c:1639 msgid "action" msgstr "aktion" #: sql_help.c:470 sql_help.c:477 sql_help.c:481 sql_help.c:482 sql_help.c:485 #: sql_help.c:487 sql_help.c:488 sql_help.c:489 sql_help.c:491 sql_help.c:494 #: sql_help.c:496 sql_help.c:497 sql_help.c:695 sql_help.c:705 sql_help.c:707 -#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:941 sql_help.c:1111 -#: sql_help.c:1344 sql_help.c:1362 sql_help.c:1366 sql_help.c:1367 -#: sql_help.c:1371 sql_help.c:1373 sql_help.c:1374 sql_help.c:1375 -#: sql_help.c:1377 sql_help.c:1378 sql_help.c:1380 sql_help.c:1383 -#: sql_help.c:1384 sql_help.c:1386 sql_help.c:1389 sql_help.c:1391 -#: sql_help.c:1392 sql_help.c:1440 sql_help.c:1441 sql_help.c:1442 -#: sql_help.c:1444 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1463 sql_help.c:1468 sql_help.c:1475 sql_help.c:1476 -#: sql_help.c:1727 sql_help.c:1730 sql_help.c:1734 sql_help.c:1770 -#: sql_help.c:1891 sql_help.c:2008 sql_help.c:2014 sql_help.c:2028 -#: sql_help.c:2029 sql_help.c:2030 sql_help.c:2387 sql_help.c:2402 -#: sql_help.c:2416 sql_help.c:2457 sql_help.c:2525 sql_help.c:2531 -#: sql_help.c:2564 sql_help.c:2695 sql_help.c:2802 sql_help.c:2837 -#: sql_help.c:2839 sql_help.c:2952 sql_help.c:2961 sql_help.c:2971 -#: sql_help.c:2974 sql_help.c:2984 sql_help.c:2988 sql_help.c:3011 -#: sql_help.c:3012 sql_help.c:3013 sql_help.c:3015 sql_help.c:3016 -#: sql_help.c:3023 sql_help.c:3024 sql_help.c:3038 sql_help.c:3043 -#: sql_help.c:3050 sql_help.c:3051 sql_help.c:3067 sql_help.c:3193 -#: sql_help.c:3333 sql_help.c:3961 sql_help.c:3962 sql_help.c:4059 -#: sql_help.c:4075 sql_help.c:4077 sql_help.c:4079 sql_help.c:4175 -#: sql_help.c:4178 sql_help.c:4180 sql_help.c:4182 sql_help.c:4428 -#: sql_help.c:4429 sql_help.c:4549 sql_help.c:4710 sql_help.c:4717 -#: sql_help.c:4719 sql_help.c:4968 sql_help.c:4975 sql_help.c:4977 -#: sql_help.c:5019 sql_help.c:5021 sql_help.c:5023 sql_help.c:5077 -#: sql_help.c:5215 sql_help.c:5222 sql_help.c:5224 +#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:956 sql_help.c:1125 +#: sql_help.c:1358 sql_help.c:1376 sql_help.c:1380 sql_help.c:1381 +#: sql_help.c:1385 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1391 sql_help.c:1392 sql_help.c:1394 sql_help.c:1397 +#: sql_help.c:1398 sql_help.c:1400 sql_help.c:1403 sql_help.c:1405 +#: sql_help.c:1406 sql_help.c:1454 sql_help.c:1455 sql_help.c:1456 +#: sql_help.c:1458 sql_help.c:1459 sql_help.c:1466 sql_help.c:1467 +#: sql_help.c:1477 sql_help.c:1482 sql_help.c:1489 sql_help.c:1490 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:1748 sql_help.c:1784 +#: sql_help.c:1905 sql_help.c:2022 sql_help.c:2028 sql_help.c:2042 +#: sql_help.c:2043 sql_help.c:2044 sql_help.c:2401 sql_help.c:2416 +#: sql_help.c:2430 sql_help.c:2471 sql_help.c:2539 sql_help.c:2545 +#: sql_help.c:2578 sql_help.c:2716 sql_help.c:2822 sql_help.c:2857 +#: sql_help.c:2859 sql_help.c:2972 sql_help.c:2981 sql_help.c:2991 +#: sql_help.c:2994 sql_help.c:3004 sql_help.c:3008 sql_help.c:3031 +#: sql_help.c:3032 sql_help.c:3033 sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:3043 sql_help.c:3044 sql_help.c:3058 sql_help.c:3063 +#: sql_help.c:3070 sql_help.c:3071 sql_help.c:3087 sql_help.c:3213 +#: sql_help.c:3353 sql_help.c:3981 sql_help.c:3982 sql_help.c:4079 +#: sql_help.c:4095 sql_help.c:4097 sql_help.c:4099 sql_help.c:4195 +#: sql_help.c:4198 sql_help.c:4200 sql_help.c:4202 sql_help.c:4448 +#: sql_help.c:4449 sql_help.c:4569 sql_help.c:4730 sql_help.c:4737 +#: sql_help.c:4739 sql_help.c:4988 sql_help.c:4995 sql_help.c:4997 +#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5043 sql_help.c:5097 +#: sql_help.c:5235 sql_help.c:5242 sql_help.c:5244 msgid "column_name" msgstr "kolumnnamn" -#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1359 sql_help.c:1749 msgid "new_column_name" msgstr "nytt_kolumnnamn" -#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1054 -#: sql_help.c:1361 sql_help.c:1635 +#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1068 +#: sql_help.c:1375 sql_help.c:1649 msgid "where action is one of:" msgstr "där aktion är en av:" -#: sql_help.c:478 sql_help.c:483 sql_help.c:1103 sql_help.c:1363 -#: sql_help.c:1368 sql_help.c:1637 sql_help.c:1641 sql_help.c:2283 -#: sql_help.c:2388 sql_help.c:2604 sql_help.c:2795 sql_help.c:2953 -#: sql_help.c:3240 sql_help.c:4234 +#: sql_help.c:478 sql_help.c:483 sql_help.c:1117 sql_help.c:1377 +#: sql_help.c:1382 sql_help.c:1651 sql_help.c:1655 sql_help.c:2297 +#: sql_help.c:2402 sql_help.c:2618 sql_help.c:2815 sql_help.c:2973 +#: sql_help.c:3260 sql_help.c:4254 msgid "data_type" msgstr "datatyp" -#: sql_help.c:479 sql_help.c:484 sql_help.c:1364 sql_help.c:1369 -#: sql_help.c:1470 sql_help.c:1638 sql_help.c:1642 sql_help.c:2284 -#: sql_help.c:2391 sql_help.c:2527 sql_help.c:2955 sql_help.c:2963 -#: sql_help.c:2976 sql_help.c:2990 sql_help.c:3045 sql_help.c:3241 -#: sql_help.c:3247 sql_help.c:4070 +#: sql_help.c:479 sql_help.c:484 sql_help.c:1378 sql_help.c:1383 +#: sql_help.c:1484 sql_help.c:1652 sql_help.c:1656 sql_help.c:2298 +#: sql_help.c:2405 sql_help.c:2541 sql_help.c:2975 sql_help.c:2983 +#: sql_help.c:2996 sql_help.c:3010 sql_help.c:3065 sql_help.c:3261 +#: sql_help.c:3267 sql_help.c:4090 msgid "collation" msgstr "jämförelse" -#: sql_help.c:480 sql_help.c:1365 sql_help.c:2392 sql_help.c:2403 -#: sql_help.c:2956 sql_help.c:2972 sql_help.c:2985 +#: sql_help.c:480 sql_help.c:1379 sql_help.c:2406 sql_help.c:2417 +#: sql_help.c:2976 sql_help.c:2992 sql_help.c:3005 msgid "column_constraint" msgstr "kolumnvillkor" -#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1399 sql_help.c:5091 msgid "integer" msgstr "heltal" -#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 -#: sql_help.c:1390 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1401 +#: sql_help.c:1404 msgid "attribute_option" msgstr "attributalternativ" -#: sql_help.c:500 sql_help.c:1394 sql_help.c:2393 sql_help.c:2404 -#: sql_help.c:2957 sql_help.c:2973 sql_help.c:2986 +#: sql_help.c:500 sql_help.c:1408 sql_help.c:2407 sql_help.c:2418 +#: sql_help.c:2977 sql_help.c:2993 sql_help.c:3006 msgid "table_constraint" msgstr "tabellvillkor" -#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1400 -#: sql_help.c:1401 sql_help.c:1402 sql_help.c:1403 sql_help.c:1945 +#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1414 +#: sql_help.c:1415 sql_help.c:1416 sql_help.c:1417 sql_help.c:1959 msgid "trigger_name" msgstr "triggernamn" -#: sql_help.c:507 sql_help.c:508 sql_help.c:1414 sql_help.c:1415 -#: sql_help.c:2396 sql_help.c:2401 sql_help.c:2960 sql_help.c:2983 +#: sql_help.c:507 sql_help.c:508 sql_help.c:1428 sql_help.c:1429 +#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2980 sql_help.c:3003 msgid "parent_table" msgstr "föräldertabell" -#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1053 -#: sql_help.c:1594 sql_help.c:2315 +#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1067 +#: sql_help.c:1608 sql_help.c:2329 msgid "extension_name" msgstr "utökningsnamn" -#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 +#: sql_help.c:569 sql_help.c:1069 sql_help.c:2475 msgid "execution_cost" msgstr "körkostnad" -#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 +#: sql_help.c:570 sql_help.c:1070 sql_help.c:2476 msgid "result_rows" msgstr "resultatrader" -#: sql_help.c:571 sql_help.c:2463 +#: sql_help.c:571 sql_help.c:2477 msgid "support_function" msgstr "supportfunktion" -#: sql_help.c:593 sql_help.c:595 sql_help.c:978 sql_help.c:986 sql_help.c:990 -#: sql_help.c:993 sql_help.c:996 sql_help.c:1677 sql_help.c:1685 -#: sql_help.c:1689 sql_help.c:1692 sql_help.c:1695 sql_help.c:2771 -#: sql_help.c:2773 sql_help.c:2776 sql_help.c:2777 sql_help.c:3959 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:3965 sql_help.c:3968 -#: sql_help.c:3969 sql_help.c:3971 sql_help.c:3972 sql_help.c:3974 -#: sql_help.c:3975 sql_help.c:3977 sql_help.c:3978 sql_help.c:3980 -#: sql_help.c:3981 sql_help.c:3987 sql_help.c:3988 sql_help.c:3990 -#: sql_help.c:3991 sql_help.c:3993 sql_help.c:3994 sql_help.c:3996 -#: sql_help.c:3997 sql_help.c:3999 sql_help.c:4000 sql_help.c:4002 -#: sql_help.c:4003 sql_help.c:4005 sql_help.c:4006 sql_help.c:4008 -#: sql_help.c:4009 sql_help.c:4426 sql_help.c:4427 sql_help.c:4431 -#: sql_help.c:4432 sql_help.c:4435 sql_help.c:4436 sql_help.c:4438 -#: sql_help.c:4439 sql_help.c:4441 sql_help.c:4442 sql_help.c:4444 -#: sql_help.c:4445 sql_help.c:4447 sql_help.c:4448 sql_help.c:4454 -#: sql_help.c:4455 sql_help.c:4457 sql_help.c:4458 sql_help.c:4460 -#: sql_help.c:4461 sql_help.c:4463 sql_help.c:4464 sql_help.c:4466 -#: sql_help.c:4467 sql_help.c:4469 sql_help.c:4470 sql_help.c:4472 -#: sql_help.c:4473 sql_help.c:4475 sql_help.c:4476 +#: sql_help.c:593 sql_help.c:595 sql_help.c:992 sql_help.c:1000 sql_help.c:1004 +#: sql_help.c:1007 sql_help.c:1010 sql_help.c:1691 sql_help.c:1699 +#: sql_help.c:1703 sql_help.c:1706 sql_help.c:1709 sql_help.c:2791 +#: sql_help.c:2793 sql_help.c:2796 sql_help.c:2797 sql_help.c:3979 +#: sql_help.c:3980 sql_help.c:3984 sql_help.c:3985 sql_help.c:3988 +#: sql_help.c:3989 sql_help.c:3991 sql_help.c:3992 sql_help.c:3994 +#: sql_help.c:3995 sql_help.c:3997 sql_help.c:3998 sql_help.c:4000 +#: sql_help.c:4001 sql_help.c:4007 sql_help.c:4008 sql_help.c:4010 +#: sql_help.c:4011 sql_help.c:4013 sql_help.c:4014 sql_help.c:4016 +#: sql_help.c:4017 sql_help.c:4019 sql_help.c:4020 sql_help.c:4022 +#: sql_help.c:4023 sql_help.c:4025 sql_help.c:4026 sql_help.c:4028 +#: sql_help.c:4029 sql_help.c:4446 sql_help.c:4447 sql_help.c:4451 +#: sql_help.c:4452 sql_help.c:4455 sql_help.c:4456 sql_help.c:4458 +#: sql_help.c:4459 sql_help.c:4461 sql_help.c:4462 sql_help.c:4464 +#: sql_help.c:4465 sql_help.c:4467 sql_help.c:4468 sql_help.c:4474 +#: sql_help.c:4475 sql_help.c:4477 sql_help.c:4478 sql_help.c:4480 +#: sql_help.c:4481 sql_help.c:4483 sql_help.c:4484 sql_help.c:4486 +#: sql_help.c:4487 sql_help.c:4489 sql_help.c:4490 sql_help.c:4492 +#: sql_help.c:4493 sql_help.c:4495 sql_help.c:4496 msgid "role_specification" msgstr "rollspecifikation" -#: sql_help.c:594 sql_help.c:596 sql_help.c:1708 sql_help.c:2250 -#: sql_help.c:2779 sql_help.c:3318 sql_help.c:3771 sql_help.c:4804 +#: sql_help.c:594 sql_help.c:596 sql_help.c:1722 sql_help.c:2264 +#: sql_help.c:2799 sql_help.c:3338 sql_help.c:3791 sql_help.c:4824 msgid "user_name" msgstr "användarnamn" -#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 -#: sql_help.c:4010 sql_help.c:4477 +#: sql_help.c:597 sql_help.c:1012 sql_help.c:1711 sql_help.c:2798 +#: sql_help.c:4030 sql_help.c:4497 msgid "where role_specification can be:" msgstr "där rollspecifikation kan vara:" @@ -4911,22 +4920,22 @@ msgstr "där rollspecifikation kan vara:" msgid "group_name" msgstr "gruppnamn" -#: sql_help.c:620 sql_help.c:1466 sql_help.c:2262 sql_help.c:2534 -#: sql_help.c:2568 sql_help.c:2968 sql_help.c:2981 sql_help.c:2995 -#: sql_help.c:3041 sql_help.c:3071 sql_help.c:3083 sql_help.c:4001 -#: sql_help.c:4468 +#: sql_help.c:620 sql_help.c:1480 sql_help.c:2276 sql_help.c:2548 +#: sql_help.c:2582 sql_help.c:2988 sql_help.c:3001 sql_help.c:3015 +#: sql_help.c:3061 sql_help.c:3091 sql_help.c:3103 sql_help.c:4021 +#: sql_help.c:4488 msgid "tablespace_name" msgstr "tabellutrymmesnamn" -#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 -#: sql_help.c:1461 sql_help.c:1823 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1422 sql_help.c:1432 +#: sql_help.c:1475 sql_help.c:1837 msgid "index_name" msgstr "indexnamn" -#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1411 -#: sql_help.c:1413 sql_help.c:1464 sql_help.c:2532 sql_help.c:2566 -#: sql_help.c:2966 sql_help.c:2979 sql_help.c:2993 sql_help.c:3039 -#: sql_help.c:3069 +#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1425 +#: sql_help.c:1427 sql_help.c:1478 sql_help.c:2546 sql_help.c:2580 +#: sql_help.c:2986 sql_help.c:2999 sql_help.c:3013 sql_help.c:3059 +#: sql_help.c:3089 msgid "storage_parameter" msgstr "lagringsparameter" @@ -4934,1916 +4943,1924 @@ msgstr "lagringsparameter" msgid "column_number" msgstr "kolumnnummer" -#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 +#: sql_help.c:655 sql_help.c:1922 sql_help.c:4580 msgid "large_object_oid" msgstr "stort_objekt_oid" -#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 +#: sql_help.c:714 sql_help.c:1407 sql_help.c:2974 msgid "compression_method" msgstr "komprimeringsmetod" -#: sql_help.c:716 sql_help.c:1409 +#: sql_help.c:716 sql_help.c:1423 msgid "new_access_method" msgstr "ny_accessmetod" -#: sql_help.c:753 sql_help.c:2589 +#: sql_help.c:753 sql_help.c:2603 msgid "res_proc" msgstr "res_proc" -#: sql_help.c:754 sql_help.c:2590 +#: sql_help.c:754 sql_help.c:2604 msgid "join_proc" msgstr "join_proc" -#: sql_help.c:755 sql_help.c:2587 +#: sql_help.c:755 sql_help.c:2601 msgid "com_op" msgstr "com_op" -#: sql_help.c:756 sql_help.c:2588 +#: sql_help.c:756 sql_help.c:2602 msgid "neg_op" msgstr "neg_op" -#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2621 msgid "strategy_number" msgstr "strateginummer" #: sql_help.c:810 sql_help.c:811 sql_help.c:814 sql_help.c:815 sql_help.c:821 -#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2609 sql_help.c:2610 -#: sql_help.c:2613 sql_help.c:2614 +#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2623 sql_help.c:2624 +#: sql_help.c:2627 sql_help.c:2628 msgid "op_type" msgstr "op_typ" -#: sql_help.c:812 sql_help.c:2611 +#: sql_help.c:812 sql_help.c:2625 msgid "sort_family_name" msgstr "sorteringsfamiljnamn" -#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2626 msgid "support_number" msgstr "supportnummer" -#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 -#: sql_help.c:3162 +#: sql_help.c:817 sql_help.c:2196 sql_help.c:2630 sql_help.c:3180 +#: sql_help.c:3182 msgid "argument_type" msgstr "argumenttyp" -#: sql_help.c:848 sql_help.c:851 sql_help.c:940 sql_help.c:1069 sql_help.c:1110 -#: sql_help.c:1590 sql_help.c:1593 sql_help.c:1769 sql_help.c:1822 -#: sql_help.c:1893 sql_help.c:1918 sql_help.c:1931 sql_help.c:1946 -#: sql_help.c:2007 sql_help.c:2013 sql_help.c:2386 sql_help.c:2400 -#: sql_help.c:2523 sql_help.c:2563 sql_help.c:2640 sql_help.c:2694 -#: sql_help.c:2747 sql_help.c:2801 sql_help.c:2834 sql_help.c:2841 -#: sql_help.c:2951 sql_help.c:2969 sql_help.c:2982 sql_help.c:3066 -#: sql_help.c:3186 sql_help.c:3368 sql_help.c:3592 sql_help.c:3641 -#: sql_help.c:3747 sql_help.c:3957 sql_help.c:3963 sql_help.c:4024 -#: sql_help.c:4057 sql_help.c:4424 sql_help.c:4430 sql_help.c:4548 -#: sql_help.c:4661 sql_help.c:4724 sql_help.c:4763 sql_help.c:4919 -#: sql_help.c:4982 sql_help.c:5017 sql_help.c:5076 sql_help.c:5166 -#: sql_help.c:5229 +#: sql_help.c:848 sql_help.c:851 sql_help.c:952 sql_help.c:955 sql_help.c:1083 +#: sql_help.c:1124 sql_help.c:1604 sql_help.c:1607 sql_help.c:1783 +#: sql_help.c:1836 sql_help.c:1907 sql_help.c:1932 sql_help.c:1945 +#: sql_help.c:1960 sql_help.c:2021 sql_help.c:2027 sql_help.c:2400 +#: sql_help.c:2414 sql_help.c:2537 sql_help.c:2577 sql_help.c:2654 +#: sql_help.c:2715 sql_help.c:2767 sql_help.c:2821 sql_help.c:2854 +#: sql_help.c:2861 sql_help.c:2971 sql_help.c:2989 sql_help.c:3002 +#: sql_help.c:3086 sql_help.c:3206 sql_help.c:3388 sql_help.c:3612 +#: sql_help.c:3661 sql_help.c:3767 sql_help.c:3977 sql_help.c:3983 +#: sql_help.c:4044 sql_help.c:4077 sql_help.c:4444 sql_help.c:4450 +#: sql_help.c:4568 sql_help.c:4681 sql_help.c:4744 sql_help.c:4783 +#: sql_help.c:4939 sql_help.c:5002 sql_help.c:5037 sql_help.c:5096 +#: sql_help.c:5186 sql_help.c:5249 msgid "table_name" msgstr "tabellnamn" -#: sql_help.c:853 sql_help.c:2642 +#: sql_help.c:853 sql_help.c:2656 msgid "using_expression" msgstr "using-uttryck" -#: sql_help.c:854 sql_help.c:2643 +#: sql_help.c:854 sql_help.c:2657 msgid "check_expression" msgstr "check-uttryck" -#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 +#: sql_help.c:936 sql_help.c:938 sql_help.c:2708 msgid "publication_object" msgstr "publiceringsobject" -#: sql_help.c:933 sql_help.c:2691 +#: sql_help.c:940 +msgid "publication_drop_object" +msgstr "publiceringsslängobject" + +#: sql_help.c:942 sql_help.c:2709 msgid "publication_parameter" msgstr "publiceringsparameter" -#: sql_help.c:939 sql_help.c:2693 +#: sql_help.c:948 sql_help.c:2711 msgid "where publication_object is one of:" msgstr "där publiceringsobjekt är en av:" -#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 -#: sql_help.c:3301 +#: sql_help.c:949 sql_help.c:1777 sql_help.c:2712 sql_help.c:5080 +msgid "table_and_columns" +msgstr "tabell_och_kolumner" + +#: sql_help.c:951 +msgid "and publication_drop_object is one of:" +msgstr "där publiceringsslängobjekt är en av:" + +#: sql_help.c:954 sql_help.c:1782 sql_help.c:2714 sql_help.c:5095 +msgid "and table_and_columns is:" +msgstr "och tabell_och_kolumner är:" + +#: sql_help.c:996 sql_help.c:1695 sql_help.c:2515 sql_help.c:2746 +#: sql_help.c:3321 msgid "password" msgstr "lösenord" -#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 -#: sql_help.c:3302 +#: sql_help.c:997 sql_help.c:1696 sql_help.c:2516 sql_help.c:2747 +#: sql_help.c:3322 msgid "timestamp" msgstr "tidsstämpel" -#: sql_help.c:987 sql_help.c:991 sql_help.c:994 sql_help.c:997 sql_help.c:1686 -#: sql_help.c:1690 sql_help.c:1693 sql_help.c:1696 sql_help.c:3970 -#: sql_help.c:4437 +#: sql_help.c:1001 sql_help.c:1005 sql_help.c:1008 sql_help.c:1011 +#: sql_help.c:1700 sql_help.c:1704 sql_help.c:1707 sql_help.c:1710 +#: sql_help.c:3990 sql_help.c:4457 msgid "database_name" msgstr "databasnamn" -#: sql_help.c:1104 sql_help.c:2796 +#: sql_help.c:1118 sql_help.c:2816 msgid "increment" msgstr "ökningsvärde" -#: sql_help.c:1105 sql_help.c:2797 +#: sql_help.c:1119 sql_help.c:2817 msgid "minvalue" msgstr "minvärde" -#: sql_help.c:1106 sql_help.c:2798 +#: sql_help.c:1120 sql_help.c:2818 msgid "maxvalue" msgstr "maxvärde" -#: sql_help.c:1107 sql_help.c:2799 sql_help.c:4657 sql_help.c:4761 -#: sql_help.c:4915 sql_help.c:5093 sql_help.c:5162 +#: sql_help.c:1121 sql_help.c:2819 sql_help.c:4677 sql_help.c:4781 +#: sql_help.c:4935 sql_help.c:5113 sql_help.c:5182 msgid "start" msgstr "start" -#: sql_help.c:1108 sql_help.c:1382 +#: sql_help.c:1122 sql_help.c:1396 msgid "restart" msgstr "starta om" -#: sql_help.c:1109 sql_help.c:2800 +#: sql_help.c:1123 sql_help.c:2820 msgid "cache" msgstr "cache" -#: sql_help.c:1154 +#: sql_help.c:1168 msgid "new_target" msgstr "nytt_mål" -#: sql_help.c:1173 sql_help.c:2853 +#: sql_help.c:1187 sql_help.c:2873 msgid "conninfo" msgstr "anslinfo" -#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 +#: sql_help.c:1189 sql_help.c:1193 sql_help.c:1197 sql_help.c:2874 msgid "publication_name" msgstr "publiceringsnamn" -#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 +#: sql_help.c:1190 sql_help.c:1194 sql_help.c:1198 msgid "publication_option" msgstr "publicerings_alternativ" -#: sql_help.c:1187 +#: sql_help.c:1201 msgid "refresh_option" msgstr "refresh_alternativ" -#: sql_help.c:1192 sql_help.c:2855 +#: sql_help.c:1206 sql_help.c:2875 msgid "subscription_parameter" msgstr "prenumerationsparameter" -#: sql_help.c:1195 +#: sql_help.c:1209 msgid "skip_option" msgstr "skip_alternativ" -#: sql_help.c:1357 sql_help.c:1360 +#: sql_help.c:1371 sql_help.c:1374 msgid "partition_name" msgstr "partitionsnamn" -#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 +#: sql_help.c:1372 sql_help.c:2419 sql_help.c:3007 msgid "partition_bound_spec" msgstr "partitionsgränsspec" -#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 +#: sql_help.c:1393 sql_help.c:1444 sql_help.c:3021 msgid "sequence_options" msgstr "sekvensalternativ" -#: sql_help.c:1381 +#: sql_help.c:1395 msgid "sequence_option" msgstr "sekvensalternativ" -#: sql_help.c:1395 +#: sql_help.c:1409 msgid "table_constraint_using_index" msgstr "tabellvillkor_för_index" -#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 +#: sql_help.c:1418 sql_help.c:1419 sql_help.c:1420 sql_help.c:1421 msgid "rewrite_rule_name" msgstr "omskrivningsregelnamn" -#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 +#: sql_help.c:1433 sql_help.c:2433 sql_help.c:3051 msgid "and partition_bound_spec is:" msgstr "och partitionsgränsspec är:" -#: sql_help.c:1420 sql_help.c:1421 sql_help.c:1422 sql_help.c:2420 -#: sql_help.c:2421 sql_help.c:2422 sql_help.c:3032 sql_help.c:3033 -#: sql_help.c:3034 +#: sql_help.c:1434 sql_help.c:1435 sql_help.c:1436 sql_help.c:2434 +#: sql_help.c:2435 sql_help.c:2436 sql_help.c:3052 sql_help.c:3053 +#: sql_help.c:3054 msgid "partition_bound_expr" msgstr "partitionsgränsuttryck" -#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 -#: sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:1437 sql_help.c:1438 sql_help.c:2437 sql_help.c:2438 +#: sql_help.c:3055 sql_help.c:3056 msgid "numeric_literal" msgstr "numerisk_literal" -#: sql_help.c:1425 +#: sql_help.c:1439 msgid "and column_constraint is:" msgstr "och kolumnvillkor är:" -#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 -#: sql_help.c:2999 +#: sql_help.c:1442 sql_help.c:2426 sql_help.c:2469 sql_help.c:2678 +#: sql_help.c:3019 msgid "default_expr" msgstr "default_uttryck" -#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 +#: sql_help.c:1443 sql_help.c:2427 sql_help.c:3020 msgid "generation_expr" msgstr "generatoruttryck" -#: sql_help.c:1431 sql_help.c:1432 sql_help.c:1443 sql_help.c:1446 -#: sql_help.c:1450 sql_help.c:3002 sql_help.c:3003 sql_help.c:3014 -#: sql_help.c:3017 sql_help.c:3021 +#: sql_help.c:1445 sql_help.c:1446 sql_help.c:1457 sql_help.c:1460 +#: sql_help.c:1464 sql_help.c:3022 sql_help.c:3023 sql_help.c:3034 +#: sql_help.c:3037 sql_help.c:3041 msgid "index_parameters" msgstr "indexparametrar" -#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 +#: sql_help.c:1447 sql_help.c:1468 sql_help.c:3024 sql_help.c:3045 msgid "reftable" msgstr "reftabell" -#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 -#: sql_help.c:3026 sql_help.c:3027 +#: sql_help.c:1448 sql_help.c:1469 sql_help.c:1470 sql_help.c:3025 +#: sql_help.c:3046 sql_help.c:3047 msgid "refcolumn" msgstr "refkolumn" -#: sql_help.c:1435 sql_help.c:1436 sql_help.c:1457 sql_help.c:1458 -#: sql_help.c:3006 sql_help.c:3007 sql_help.c:3028 sql_help.c:3029 +#: sql_help.c:1449 sql_help.c:1450 sql_help.c:1471 sql_help.c:1472 +#: sql_help.c:3026 sql_help.c:3027 sql_help.c:3048 sql_help.c:3049 msgid "referential_action" msgstr "referentiell_aktion" -#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 +#: sql_help.c:1451 sql_help.c:2428 sql_help.c:3028 msgid "and table_constraint is:" msgstr "och tabellvillkor är:" -#: sql_help.c:1448 sql_help.c:3019 +#: sql_help.c:1462 sql_help.c:3039 msgid "exclude_element" msgstr "uteslutelement" -#: sql_help.c:1449 sql_help.c:3020 sql_help.c:4655 sql_help.c:4759 -#: sql_help.c:4913 sql_help.c:5091 sql_help.c:5160 +#: sql_help.c:1463 sql_help.c:3040 sql_help.c:4675 sql_help.c:4779 +#: sql_help.c:4933 sql_help.c:5111 sql_help.c:5180 msgid "operator" msgstr "operator" -#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 +#: sql_help.c:1465 sql_help.c:2549 sql_help.c:3042 msgid "predicate" msgstr "predikat" -#: sql_help.c:1459 +#: sql_help.c:1473 msgid "and table_constraint_using_index is:" msgstr "och tabellvillkor_för_index är:" -#: sql_help.c:1462 sql_help.c:3037 +#: sql_help.c:1476 sql_help.c:3057 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "indexparametrar i UNIQUE-, PRIMARY KEY- och EXCLUDE-villkor är:" -#: sql_help.c:1467 sql_help.c:3042 +#: sql_help.c:1481 sql_help.c:3062 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "uteslutelement i ett EXCLUDE-villkort är:" -#: sql_help.c:1471 sql_help.c:2528 sql_help.c:2964 sql_help.c:2977 -#: sql_help.c:2991 sql_help.c:3046 sql_help.c:4071 +#: sql_help.c:1485 sql_help.c:2542 sql_help.c:2984 sql_help.c:2997 +#: sql_help.c:3011 sql_help.c:3066 sql_help.c:4091 msgid "opclass" msgstr "op-klass" -#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 +#: sql_help.c:1486 sql_help.c:2543 sql_help.c:3067 msgid "opclass_parameter" msgstr "opclass_parameter" -#: sql_help.c:1474 sql_help.c:3049 +#: sql_help.c:1488 sql_help.c:3069 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "referentiell_aktion i ett FOREIGN KEY/REFERENCES-villkor är:" -#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 +#: sql_help.c:1506 sql_help.c:1509 sql_help.c:3106 msgid "tablespace_option" msgstr "tabellutrymmesalternativ" -#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 +#: sql_help.c:1530 sql_help.c:1533 sql_help.c:1539 sql_help.c:1543 msgid "token_type" msgstr "symboltyp" -#: sql_help.c:1517 sql_help.c:1520 +#: sql_help.c:1531 sql_help.c:1534 msgid "dictionary_name" msgstr "ordlistnamn" -#: sql_help.c:1522 sql_help.c:1526 +#: sql_help.c:1536 sql_help.c:1540 msgid "old_dictionary" msgstr "gammal_ordlista" -#: sql_help.c:1523 sql_help.c:1527 +#: sql_help.c:1537 sql_help.c:1541 msgid "new_dictionary" msgstr "ny_ordlista" -#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 -#: sql_help.c:3239 +#: sql_help.c:1636 sql_help.c:1650 sql_help.c:1653 sql_help.c:1654 +#: sql_help.c:3259 msgid "attribute_name" msgstr "attributnamn" -#: sql_help.c:1623 +#: sql_help.c:1637 msgid "new_attribute_name" msgstr "nytt_attributnamn" -#: sql_help.c:1627 sql_help.c:1631 +#: sql_help.c:1641 sql_help.c:1645 msgid "new_enum_value" msgstr "nytt_enumvärde" -#: sql_help.c:1628 +#: sql_help.c:1642 msgid "neighbor_enum_value" msgstr "närliggande_enumvärde" -#: sql_help.c:1630 +#: sql_help.c:1644 msgid "existing_enum_value" msgstr "existerande_enumvärde" -#: sql_help.c:1633 +#: sql_help.c:1647 msgid "property" msgstr "egenskap" -#: sql_help.c:1709 sql_help.c:2397 sql_help.c:2406 sql_help.c:2812 -#: sql_help.c:3319 sql_help.c:3772 sql_help.c:3979 sql_help.c:4025 -#: sql_help.c:4446 +#: sql_help.c:1723 sql_help.c:2411 sql_help.c:2420 sql_help.c:2832 +#: sql_help.c:3339 sql_help.c:3792 sql_help.c:3999 sql_help.c:4045 +#: sql_help.c:4466 msgid "server_name" msgstr "servernamn" -#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 +#: sql_help.c:1755 sql_help.c:1758 sql_help.c:3354 msgid "view_option_name" msgstr "visningsalternativnamn" -#: sql_help.c:1742 sql_help.c:3335 +#: sql_help.c:1756 sql_help.c:3355 msgid "view_option_value" msgstr "visningsalternativvärde" -#: sql_help.c:1763 sql_help.c:5060 -msgid "table_and_columns" -msgstr "tabell_och_kolumner" - -#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 -#: sql_help.c:4281 sql_help.c:5061 +#: sql_help.c:1778 sql_help.c:1838 sql_help.c:2033 sql_help.c:3841 +#: sql_help.c:4301 sql_help.c:5081 msgid "where option can be one of:" msgstr "där flaggor kan vara en av:" -#: sql_help.c:1765 sql_help.c:1766 sql_help.c:1825 sql_help.c:2021 -#: sql_help.c:2025 sql_help.c:2208 sql_help.c:3822 sql_help.c:3823 -#: sql_help.c:3824 sql_help.c:3825 sql_help.c:3826 sql_help.c:3827 -#: sql_help.c:3828 sql_help.c:3829 sql_help.c:3830 sql_help.c:3831 -#: sql_help.c:4282 sql_help.c:4284 sql_help.c:5062 sql_help.c:5063 -#: sql_help.c:5064 sql_help.c:5065 sql_help.c:5066 sql_help.c:5067 -#: sql_help.c:5068 sql_help.c:5069 sql_help.c:5070 sql_help.c:5072 -#: sql_help.c:5073 +#: sql_help.c:1779 sql_help.c:1780 sql_help.c:1839 sql_help.c:2035 +#: sql_help.c:2039 sql_help.c:2222 sql_help.c:3842 sql_help.c:3843 +#: sql_help.c:3844 sql_help.c:3845 sql_help.c:3846 sql_help.c:3847 +#: sql_help.c:3848 sql_help.c:3849 sql_help.c:3850 sql_help.c:3851 +#: sql_help.c:4302 sql_help.c:4304 sql_help.c:5082 sql_help.c:5083 +#: sql_help.c:5084 sql_help.c:5085 sql_help.c:5086 sql_help.c:5087 +#: sql_help.c:5088 sql_help.c:5089 sql_help.c:5090 sql_help.c:5092 +#: sql_help.c:5093 msgid "boolean" msgstr "boolean" -#: sql_help.c:1767 sql_help.c:5074 +#: sql_help.c:1781 sql_help.c:5094 msgid "size" msgstr "storlek" -#: sql_help.c:1768 sql_help.c:5075 -msgid "and table_and_columns is:" -msgstr "och tabell_och_kolumner är:" - -#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 +#: sql_help.c:1798 sql_help.c:4840 sql_help.c:4842 sql_help.c:4866 msgid "transaction_mode" msgstr "transaktionsläge" -#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 +#: sql_help.c:1799 sql_help.c:4843 sql_help.c:4867 msgid "where transaction_mode is one of:" msgstr "där transaktionsläge är en av:" -#: sql_help.c:1794 sql_help.c:4665 sql_help.c:4674 sql_help.c:4678 -#: sql_help.c:4682 sql_help.c:4685 sql_help.c:4923 sql_help.c:4932 -#: sql_help.c:4936 sql_help.c:4940 sql_help.c:4943 sql_help.c:5170 -#: sql_help.c:5179 sql_help.c:5183 sql_help.c:5187 sql_help.c:5190 +#: sql_help.c:1808 sql_help.c:4685 sql_help.c:4694 sql_help.c:4698 +#: sql_help.c:4702 sql_help.c:4705 sql_help.c:4943 sql_help.c:4952 +#: sql_help.c:4956 sql_help.c:4960 sql_help.c:4963 sql_help.c:5190 +#: sql_help.c:5199 sql_help.c:5203 sql_help.c:5207 sql_help.c:5210 msgid "argument" msgstr "argument" -#: sql_help.c:1890 +#: sql_help.c:1904 msgid "relation_name" msgstr "relationsnamn" -#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 +#: sql_help.c:1909 sql_help.c:3993 sql_help.c:4460 msgid "domain_name" msgstr "domännamn" -#: sql_help.c:1917 +#: sql_help.c:1931 msgid "policy_name" msgstr "policynamn" -#: sql_help.c:1930 +#: sql_help.c:1944 msgid "rule_name" msgstr "regelnamn" -#: sql_help.c:1949 sql_help.c:4579 +#: sql_help.c:1963 sql_help.c:4599 msgid "string_literal" msgstr "sträng_literal" -#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 +#: sql_help.c:1988 sql_help.c:4263 sql_help.c:4513 msgid "transaction_id" msgstr "transaktions-id" -#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 +#: sql_help.c:2023 sql_help.c:2030 sql_help.c:4117 msgid "filename" msgstr "filnamn" -#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 -#: sql_help.c:2751 +#: sql_help.c:2024 sql_help.c:2031 sql_help.c:2769 sql_help.c:2770 +#: sql_help.c:2771 msgid "command" msgstr "kommando" -#: sql_help.c:2012 sql_help.c:2748 sql_help.c:3189 sql_help.c:3371 -#: sql_help.c:4081 sql_help.c:4166 sql_help.c:4169 sql_help.c:4172 -#: sql_help.c:4648 sql_help.c:4650 sql_help.c:4752 sql_help.c:4754 -#: sql_help.c:4906 sql_help.c:4908 sql_help.c:5026 sql_help.c:5153 -#: sql_help.c:5155 +#: sql_help.c:2026 sql_help.c:2768 sql_help.c:3209 sql_help.c:3391 +#: sql_help.c:4101 sql_help.c:4186 sql_help.c:4189 sql_help.c:4192 +#: sql_help.c:4668 sql_help.c:4670 sql_help.c:4772 sql_help.c:4774 +#: sql_help.c:4926 sql_help.c:4928 sql_help.c:5046 sql_help.c:5173 +#: sql_help.c:5175 msgid "condition" msgstr "villkor" -#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 -#: sql_help.c:3354 sql_help.c:4061 +#: sql_help.c:2029 sql_help.c:2583 sql_help.c:3092 sql_help.c:3356 +#: sql_help.c:3374 sql_help.c:4081 msgid "query" msgstr "fråga" -#: sql_help.c:2020 +#: sql_help.c:2034 msgid "format_name" msgstr "formatnamn" -#: sql_help.c:2022 +#: sql_help.c:2036 msgid "delimiter_character" msgstr "avdelartecken" -#: sql_help.c:2023 +#: sql_help.c:2037 msgid "null_string" msgstr "null-sträng" -#: sql_help.c:2024 +#: sql_help.c:2038 msgid "default_string" msgstr "standard-sträng" -#: sql_help.c:2026 +#: sql_help.c:2040 msgid "quote_character" msgstr "citattecken" -#: sql_help.c:2027 +#: sql_help.c:2041 msgid "escape_character" msgstr "escape-tecken" -#: sql_help.c:2031 +#: sql_help.c:2045 msgid "error_action" msgstr "fel_aktion" -#: sql_help.c:2032 +#: sql_help.c:2046 msgid "maxerror" msgstr "maxfel" -#: sql_help.c:2033 +#: sql_help.c:2047 msgid "encoding_name" msgstr "kodningsnamn" -#: sql_help.c:2034 +#: sql_help.c:2048 msgid "verbosity" msgstr "verbosity" -#: sql_help.c:2045 +#: sql_help.c:2059 msgid "access_method_type" msgstr "accessmetodtyp" -#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 +#: sql_help.c:2130 sql_help.c:2149 sql_help.c:2152 msgid "arg_data_type" msgstr "arg_datatyp" -#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 +#: sql_help.c:2131 sql_help.c:2153 sql_help.c:2161 msgid "sfunc" msgstr "sfunc" -#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 +#: sql_help.c:2132 sql_help.c:2154 sql_help.c:2162 msgid "state_data_type" msgstr "tillståndsdatatyp" -#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 +#: sql_help.c:2133 sql_help.c:2155 sql_help.c:2163 msgid "state_data_size" msgstr "tillståndsdatastorlek" -#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 +#: sql_help.c:2134 sql_help.c:2156 sql_help.c:2164 msgid "ffunc" msgstr "ffunc" -#: sql_help.c:2121 sql_help.c:2151 +#: sql_help.c:2135 sql_help.c:2165 msgid "combinefunc" msgstr "kombinerafunk" -#: sql_help.c:2122 sql_help.c:2152 +#: sql_help.c:2136 sql_help.c:2166 msgid "serialfunc" msgstr "serialiseringsfunk" -#: sql_help.c:2123 sql_help.c:2153 +#: sql_help.c:2137 sql_help.c:2167 msgid "deserialfunc" msgstr "deserialiseringsfunk" -#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 +#: sql_help.c:2138 sql_help.c:2157 sql_help.c:2168 msgid "initial_condition" msgstr "startvärde" -#: sql_help.c:2125 sql_help.c:2155 +#: sql_help.c:2139 sql_help.c:2169 msgid "msfunc" msgstr "msfunk" -#: sql_help.c:2126 sql_help.c:2156 +#: sql_help.c:2140 sql_help.c:2170 msgid "minvfunc" msgstr "minvfunk" -#: sql_help.c:2127 sql_help.c:2157 +#: sql_help.c:2141 sql_help.c:2171 msgid "mstate_data_type" msgstr "mtillståndsdatatyp" -#: sql_help.c:2128 sql_help.c:2158 +#: sql_help.c:2142 sql_help.c:2172 msgid "mstate_data_size" msgstr "ntillståndsstorlek" -#: sql_help.c:2129 sql_help.c:2159 +#: sql_help.c:2143 sql_help.c:2173 msgid "mffunc" msgstr "mffunk" -#: sql_help.c:2130 sql_help.c:2160 +#: sql_help.c:2144 sql_help.c:2174 msgid "minitial_condition" msgstr "mstartvärde" -#: sql_help.c:2131 sql_help.c:2161 +#: sql_help.c:2145 sql_help.c:2175 msgid "sort_operator" msgstr "sorteringsoperator" -#: sql_help.c:2144 +#: sql_help.c:2158 msgid "or the old syntax" msgstr "eller gamla syntaxen" -#: sql_help.c:2146 +#: sql_help.c:2160 msgid "base_type" msgstr "bastyp" -#: sql_help.c:2204 sql_help.c:2254 +#: sql_help.c:2218 sql_help.c:2268 msgid "locale" msgstr "lokal" -#: sql_help.c:2205 sql_help.c:2255 +#: sql_help.c:2219 sql_help.c:2269 msgid "lc_collate" msgstr "lc_collate" -#: sql_help.c:2206 sql_help.c:2256 +#: sql_help.c:2220 sql_help.c:2270 msgid "lc_ctype" msgstr "lc_ctype" -#: sql_help.c:2207 sql_help.c:4546 +#: sql_help.c:2221 sql_help.c:4566 msgid "provider" msgstr "leverantör" -#: sql_help.c:2209 +#: sql_help.c:2223 msgid "rules" msgstr "regler" -#: sql_help.c:2210 sql_help.c:2317 +#: sql_help.c:2224 sql_help.c:2331 msgid "version" msgstr "version" -#: sql_help.c:2212 +#: sql_help.c:2226 msgid "existing_collation" msgstr "existerande_jämförelse" -#: sql_help.c:2222 +#: sql_help.c:2236 msgid "source_encoding" msgstr "källkodning" -#: sql_help.c:2223 +#: sql_help.c:2237 msgid "dest_encoding" msgstr "målkodning" -#: sql_help.c:2251 sql_help.c:3112 +#: sql_help.c:2265 sql_help.c:3132 msgid "template" msgstr "mall" -#: sql_help.c:2252 +#: sql_help.c:2266 msgid "encoding" msgstr "kodning" -#: sql_help.c:2253 +#: sql_help.c:2267 msgid "strategy" msgstr "strategi" -#: sql_help.c:2257 +#: sql_help.c:2271 msgid "builtin_locale" msgstr "inbyggd_lokal" -#: sql_help.c:2258 +#: sql_help.c:2272 msgid "icu_locale" msgstr "icu_lokal" -#: sql_help.c:2259 +#: sql_help.c:2273 msgid "icu_rules" msgstr "icu_regler" -#: sql_help.c:2260 +#: sql_help.c:2274 msgid "locale_provider" msgstr "lokal_leverantör" -#: sql_help.c:2261 +#: sql_help.c:2275 msgid "collation_version" msgstr "jämförelse_version" -#: sql_help.c:2266 +#: sql_help.c:2280 msgid "oid" msgstr "oid" -#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 +#: sql_help.c:2315 sql_help.c:2766 sql_help.c:3205 msgid "event" msgstr "händelse" -#: sql_help.c:2302 +#: sql_help.c:2316 msgid "filter_variable" msgstr "filtervariabel" -#: sql_help.c:2303 +#: sql_help.c:2317 msgid "filter_value" msgstr "filtervärde" -#: sql_help.c:2394 sql_help.c:2958 +#: sql_help.c:2408 sql_help.c:2978 msgid "source_table" msgstr "källtabell" -#: sql_help.c:2395 sql_help.c:2959 +#: sql_help.c:2409 sql_help.c:2979 msgid "like_option" msgstr "like_alternativ" -#: sql_help.c:2409 sql_help.c:2996 +#: sql_help.c:2423 sql_help.c:3016 msgid "where column_constraint is:" msgstr "där kolumnvillkor är:" -#: sql_help.c:2418 sql_help.c:3030 +#: sql_help.c:2432 sql_help.c:3050 msgid "and like_option is:" msgstr "och likealternativ är:" -#: sql_help.c:2456 +#: sql_help.c:2470 msgid "rettype" msgstr "rettyp" -#: sql_help.c:2458 +#: sql_help.c:2472 msgid "column_type" msgstr "kolumntyp" -#: sql_help.c:2467 sql_help.c:2670 +#: sql_help.c:2481 sql_help.c:2684 msgid "definition" msgstr "definition" -#: sql_help.c:2468 sql_help.c:2671 +#: sql_help.c:2482 sql_help.c:2685 msgid "obj_file" msgstr "obj-fil" -#: sql_help.c:2469 sql_help.c:2672 +#: sql_help.c:2483 sql_help.c:2686 msgid "link_symbol" msgstr "linksymbol" -#: sql_help.c:2470 sql_help.c:2673 +#: sql_help.c:2484 sql_help.c:2687 msgid "sql_body" msgstr "sql-kropp" -#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 +#: sql_help.c:2522 sql_help.c:2751 sql_help.c:3328 msgid "uid" msgstr "uid" -#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 -#: sql_help.c:2992 sql_help.c:3068 +#: sql_help.c:2538 sql_help.c:2579 sql_help.c:2985 sql_help.c:2998 +#: sql_help.c:3012 sql_help.c:3088 msgid "method" msgstr "metod" -#: sql_help.c:2546 +#: sql_help.c:2560 msgid "call_handler" msgstr "anropshanterare" -#: sql_help.c:2547 +#: sql_help.c:2561 msgid "inline_handler" msgstr "inline-hanterare" -#: sql_help.c:2548 +#: sql_help.c:2562 msgid "valfunction" msgstr "val-funktion" -#: sql_help.c:2606 +#: sql_help.c:2620 msgid "family_name" msgstr "familjenamn" -#: sql_help.c:2617 +#: sql_help.c:2631 msgid "storage_type" msgstr "lagringstyp" -#: sql_help.c:2752 sql_help.c:3192 +#: sql_help.c:2772 sql_help.c:3212 msgid "where event can be one of:" msgstr "där händelse kan vara en av:" -#: sql_help.c:2772 sql_help.c:2774 +#: sql_help.c:2792 sql_help.c:2794 msgid "schema_element" msgstr "schema-element" -#: sql_help.c:2813 +#: sql_help.c:2833 msgid "server_type" msgstr "servertyp" -#: sql_help.c:2814 +#: sql_help.c:2834 msgid "server_version" msgstr "serverversion" -#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 +#: sql_help.c:2835 sql_help.c:3996 sql_help.c:4463 msgid "fdw_name" msgstr "fdw-namn" -#: sql_help.c:2832 sql_help.c:2835 +#: sql_help.c:2852 sql_help.c:2855 msgid "statistics_name" msgstr "statistiknamn" -#: sql_help.c:2836 +#: sql_help.c:2856 msgid "statistics_kind" msgstr "statistiksort" -#: sql_help.c:2852 +#: sql_help.c:2872 msgid "subscription_name" msgstr "prenumerationsnamn" -#: sql_help.c:3085 +#: sql_help.c:3105 msgid "directory" msgstr "katalog" -#: sql_help.c:3099 +#: sql_help.c:3119 msgid "parser_name" msgstr "parsernamn" -#: sql_help.c:3100 +#: sql_help.c:3120 msgid "source_config" msgstr "källkonfig" -#: sql_help.c:3129 +#: sql_help.c:3149 msgid "start_function" msgstr "startfunktion" -#: sql_help.c:3130 +#: sql_help.c:3150 msgid "gettoken_function" msgstr "gettoken_funktion" -#: sql_help.c:3131 +#: sql_help.c:3151 msgid "end_function" msgstr "slutfunktion" -#: sql_help.c:3132 +#: sql_help.c:3152 msgid "lextypes_function" msgstr "symboltypfunktion" -#: sql_help.c:3133 +#: sql_help.c:3153 msgid "headline_function" msgstr "rubrikfunktion" -#: sql_help.c:3145 +#: sql_help.c:3165 msgid "init_function" msgstr "init_funktion" -#: sql_help.c:3146 +#: sql_help.c:3166 msgid "lexize_function" msgstr "symboluppdelningsfunktion" -#: sql_help.c:3159 +#: sql_help.c:3179 msgid "from_sql_function_name" msgstr "från_sql_funktionsnamn" -#: sql_help.c:3161 +#: sql_help.c:3181 msgid "to_sql_function_name" msgstr "till_sql_funktionsnamn" -#: sql_help.c:3187 +#: sql_help.c:3207 msgid "referenced_table_name" msgstr "refererat_tabellnamn" -#: sql_help.c:3188 +#: sql_help.c:3208 msgid "transition_relation_name" msgstr "övergångsrelationsnamn" -#: sql_help.c:3191 +#: sql_help.c:3211 msgid "arguments" msgstr "argument" -#: sql_help.c:3243 +#: sql_help.c:3263 msgid "label" msgstr "etikett" -#: sql_help.c:3245 +#: sql_help.c:3265 msgid "subtype" msgstr "subtyp" -#: sql_help.c:3246 +#: sql_help.c:3266 msgid "subtype_operator_class" msgstr "subtypoperatorklass" -#: sql_help.c:3248 +#: sql_help.c:3268 msgid "canonical_function" msgstr "kanonisk_funktion" -#: sql_help.c:3249 +#: sql_help.c:3269 msgid "subtype_diff_function" msgstr "subtyp_diff_funktion" -#: sql_help.c:3250 +#: sql_help.c:3270 msgid "multirange_type_name" msgstr "multirange_typnamn" -#: sql_help.c:3252 +#: sql_help.c:3272 msgid "input_function" msgstr "inmatningsfunktion" -#: sql_help.c:3253 +#: sql_help.c:3273 msgid "output_function" msgstr "utmatningsfunktion" -#: sql_help.c:3254 +#: sql_help.c:3274 msgid "receive_function" msgstr "mottagarfunktion" -#: sql_help.c:3255 +#: sql_help.c:3275 msgid "send_function" msgstr "sändfunktion" -#: sql_help.c:3256 +#: sql_help.c:3276 msgid "type_modifier_input_function" msgstr "typmodifiering_indatafunktion" -#: sql_help.c:3257 +#: sql_help.c:3277 msgid "type_modifier_output_function" msgstr "typmodifiering_utdatafunktion" -#: sql_help.c:3258 +#: sql_help.c:3278 msgid "analyze_function" msgstr "analysfunktion" -#: sql_help.c:3259 +#: sql_help.c:3279 msgid "subscript_function" msgstr "arrayindexfunktion" -#: sql_help.c:3260 +#: sql_help.c:3280 msgid "internallength" msgstr "internlängd" -#: sql_help.c:3261 +#: sql_help.c:3281 msgid "alignment" msgstr "justering" -#: sql_help.c:3262 +#: sql_help.c:3282 msgid "storage" msgstr "lagring" -#: sql_help.c:3263 +#: sql_help.c:3283 msgid "like_type" msgstr "liketyp" -#: sql_help.c:3264 +#: sql_help.c:3284 msgid "category" msgstr "kategori" -#: sql_help.c:3265 +#: sql_help.c:3285 msgid "preferred" msgstr "föredragen" -#: sql_help.c:3266 +#: sql_help.c:3286 msgid "default" msgstr "standard" -#: sql_help.c:3267 +#: sql_help.c:3287 msgid "element" msgstr "element" -#: sql_help.c:3268 +#: sql_help.c:3288 msgid "delimiter" msgstr "avskiljare" -#: sql_help.c:3269 +#: sql_help.c:3289 msgid "collatable" msgstr "sorterbar" -#: sql_help.c:3367 sql_help.c:4056 sql_help.c:4152 sql_help.c:4643 -#: sql_help.c:4746 sql_help.c:4901 sql_help.c:5016 sql_help.c:5148 +#: sql_help.c:3387 sql_help.c:4076 sql_help.c:4172 sql_help.c:4663 +#: sql_help.c:4766 sql_help.c:4921 sql_help.c:5036 sql_help.c:5168 msgid "with_query" msgstr "with_fråga" -#: sql_help.c:3369 sql_help.c:4058 sql_help.c:4662 sql_help.c:4668 -#: sql_help.c:4671 sql_help.c:4675 sql_help.c:4679 sql_help.c:4687 -#: sql_help.c:4920 sql_help.c:4926 sql_help.c:4929 sql_help.c:4933 -#: sql_help.c:4937 sql_help.c:4945 sql_help.c:5018 sql_help.c:5167 -#: sql_help.c:5173 sql_help.c:5176 sql_help.c:5180 sql_help.c:5184 -#: sql_help.c:5192 +#: sql_help.c:3389 sql_help.c:4078 sql_help.c:4682 sql_help.c:4688 +#: sql_help.c:4691 sql_help.c:4695 sql_help.c:4699 sql_help.c:4707 +#: sql_help.c:4940 sql_help.c:4946 sql_help.c:4949 sql_help.c:4953 +#: sql_help.c:4957 sql_help.c:4965 sql_help.c:5038 sql_help.c:5187 +#: sql_help.c:5193 sql_help.c:5196 sql_help.c:5200 sql_help.c:5204 +#: sql_help.c:5212 msgid "alias" msgstr "alias" -#: sql_help.c:3370 sql_help.c:4647 sql_help.c:4689 sql_help.c:4691 -#: sql_help.c:4695 sql_help.c:4697 sql_help.c:4698 sql_help.c:4699 -#: sql_help.c:4751 sql_help.c:4905 sql_help.c:4947 sql_help.c:4949 -#: sql_help.c:4953 sql_help.c:4955 sql_help.c:4956 sql_help.c:4957 -#: sql_help.c:5025 sql_help.c:5152 sql_help.c:5194 sql_help.c:5196 -#: sql_help.c:5200 sql_help.c:5202 sql_help.c:5203 sql_help.c:5204 +#: sql_help.c:3390 sql_help.c:4667 sql_help.c:4709 sql_help.c:4711 +#: sql_help.c:4715 sql_help.c:4717 sql_help.c:4718 sql_help.c:4719 +#: sql_help.c:4771 sql_help.c:4925 sql_help.c:4967 sql_help.c:4969 +#: sql_help.c:4973 sql_help.c:4975 sql_help.c:4976 sql_help.c:4977 +#: sql_help.c:5045 sql_help.c:5172 sql_help.c:5214 sql_help.c:5216 +#: sql_help.c:5220 sql_help.c:5222 sql_help.c:5223 sql_help.c:5224 msgid "from_item" msgstr "frånval" -#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 +#: sql_help.c:3392 sql_help.c:3877 sql_help.c:4230 sql_help.c:5047 msgid "cursor_name" msgstr "markörnamn" -#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +#: sql_help.c:3393 sql_help.c:4084 sql_help.c:4178 sql_help.c:5048 msgid "output_alias" msgstr "utdataalias" -#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 +#: sql_help.c:3394 sql_help.c:4085 sql_help.c:4179 sql_help.c:5049 msgid "output_expression" msgstr "utdatauttryck" -#: sql_help.c:3375 sql_help.c:4066 sql_help.c:4160 sql_help.c:4646 -#: sql_help.c:4749 sql_help.c:4904 sql_help.c:5030 sql_help.c:5151 +#: sql_help.c:3395 sql_help.c:4086 sql_help.c:4180 sql_help.c:4666 +#: sql_help.c:4769 sql_help.c:4924 sql_help.c:5050 sql_help.c:5171 msgid "output_name" msgstr "utdatanamn" -#: sql_help.c:3391 +#: sql_help.c:3411 msgid "code" msgstr "kod" -#: sql_help.c:3796 +#: sql_help.c:3816 msgid "parameter" msgstr "parameter" -#: sql_help.c:3820 sql_help.c:4235 +#: sql_help.c:3840 sql_help.c:4255 msgid "statement" msgstr "sats" -#: sql_help.c:3856 sql_help.c:4209 +#: sql_help.c:3876 sql_help.c:4229 msgid "direction" msgstr "riktning" -#: sql_help.c:3858 sql_help.c:4211 +#: sql_help.c:3878 sql_help.c:4231 msgid "where direction can be one of:" msgstr "där riktning kan vara en av:" -#: sql_help.c:3859 sql_help.c:3860 sql_help.c:3861 sql_help.c:3862 -#: sql_help.c:3863 sql_help.c:4212 sql_help.c:4213 sql_help.c:4214 -#: sql_help.c:4215 sql_help.c:4216 sql_help.c:4656 sql_help.c:4658 -#: sql_help.c:4760 sql_help.c:4762 sql_help.c:4914 sql_help.c:4916 -#: sql_help.c:5092 sql_help.c:5094 sql_help.c:5161 sql_help.c:5163 +#: sql_help.c:3879 sql_help.c:3880 sql_help.c:3881 sql_help.c:3882 +#: sql_help.c:3883 sql_help.c:4232 sql_help.c:4233 sql_help.c:4234 +#: sql_help.c:4235 sql_help.c:4236 sql_help.c:4676 sql_help.c:4678 +#: sql_help.c:4780 sql_help.c:4782 sql_help.c:4934 sql_help.c:4936 +#: sql_help.c:5112 sql_help.c:5114 sql_help.c:5181 sql_help.c:5183 msgid "count" msgstr "antal" -#: sql_help.c:3966 sql_help.c:4433 +#: sql_help.c:3986 sql_help.c:4453 msgid "sequence_name" msgstr "sekvensnamn" -#: sql_help.c:3984 sql_help.c:4451 +#: sql_help.c:4004 sql_help.c:4471 msgid "arg_name" msgstr "arg_namn" -#: sql_help.c:3985 sql_help.c:4452 +#: sql_help.c:4005 sql_help.c:4472 msgid "arg_type" msgstr "arg_typ" -#: sql_help.c:3992 sql_help.c:4459 +#: sql_help.c:4012 sql_help.c:4479 msgid "loid" msgstr "loid" -#: sql_help.c:4023 +#: sql_help.c:4043 msgid "remote_schema" msgstr "externt_schema" -#: sql_help.c:4026 +#: sql_help.c:4046 msgid "local_schema" msgstr "lokalt_schema" -#: sql_help.c:4062 +#: sql_help.c:4082 msgid "conflict_target" msgstr "konfliktmål" -#: sql_help.c:4063 +#: sql_help.c:4083 msgid "conflict_action" msgstr "konfliktaktion" -#: sql_help.c:4067 +#: sql_help.c:4087 msgid "where conflict_target can be one of:" msgstr "där konfliktmål kan vara en av:" -#: sql_help.c:4068 +#: sql_help.c:4088 msgid "index_column_name" msgstr "indexkolumnnamn" -#: sql_help.c:4069 +#: sql_help.c:4089 msgid "index_expression" msgstr "indexuttryck" -#: sql_help.c:4072 +#: sql_help.c:4092 msgid "index_predicate" msgstr "indexpredikat" -#: sql_help.c:4074 +#: sql_help.c:4094 msgid "and conflict_action is one of:" msgstr "och konfliktaktion är en av:" -#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 +#: sql_help.c:4100 sql_help.c:4203 sql_help.c:5044 msgid "sub-SELECT" msgstr "sub-SELECT" -#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 +#: sql_help.c:4109 sql_help.c:4244 sql_help.c:5019 msgid "channel" msgstr "kanal" -#: sql_help.c:4111 +#: sql_help.c:4131 msgid "lockmode" msgstr "låsläge" -#: sql_help.c:4112 +#: sql_help.c:4132 msgid "where lockmode is one of:" msgstr "där låsläge är en av:" -#: sql_help.c:4153 +#: sql_help.c:4173 msgid "target_table_name" msgstr "måltabellnamn" -#: sql_help.c:4154 +#: sql_help.c:4174 msgid "target_alias" msgstr "målalias" -#: sql_help.c:4155 +#: sql_help.c:4175 msgid "data_source" msgstr "datakälla" -#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 +#: sql_help.c:4176 sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "join_condition" msgstr "join-villkor" -#: sql_help.c:4157 +#: sql_help.c:4177 msgid "when_clause" msgstr "when_sats" -#: sql_help.c:4161 +#: sql_help.c:4181 msgid "where data_source is:" msgstr "där datakälla är:" -#: sql_help.c:4162 +#: sql_help.c:4182 msgid "source_table_name" msgstr "källtabellnamn" -#: sql_help.c:4163 +#: sql_help.c:4183 msgid "source_query" msgstr "källfråga" -#: sql_help.c:4164 +#: sql_help.c:4184 msgid "source_alias" msgstr "källalias" -#: sql_help.c:4165 +#: sql_help.c:4185 msgid "and when_clause is:" msgstr "och when_sats är:" -#: sql_help.c:4167 sql_help.c:4170 +#: sql_help.c:4187 sql_help.c:4190 msgid "merge_update" msgstr "merge_update" -#: sql_help.c:4168 sql_help.c:4171 +#: sql_help.c:4188 sql_help.c:4191 msgid "merge_delete" msgstr "merge_delete" -#: sql_help.c:4173 +#: sql_help.c:4193 msgid "merge_insert" msgstr "merge_insert" -#: sql_help.c:4174 +#: sql_help.c:4194 msgid "and merge_insert is:" msgstr "och merge_insert är:" -#: sql_help.c:4177 +#: sql_help.c:4197 msgid "and merge_update is:" msgstr "och merge_update är:" -#: sql_help.c:4184 +#: sql_help.c:4204 msgid "and merge_delete is:" msgstr "och merge_delete är:" -#: sql_help.c:4225 +#: sql_help.c:4245 msgid "payload" msgstr "innehåll" -#: sql_help.c:4252 +#: sql_help.c:4272 msgid "old_role" msgstr "gammal_roll" -#: sql_help.c:4253 +#: sql_help.c:4273 msgid "new_role" msgstr "ny_roll" -#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 +#: sql_help.c:4312 sql_help.c:4521 sql_help.c:4529 msgid "savepoint_name" msgstr "sparpunktnamn" -#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 -#: sql_help.c:5154 sql_help.c:5212 +#: sql_help.c:4669 sql_help.c:4727 sql_help.c:4927 sql_help.c:4985 +#: sql_help.c:5174 sql_help.c:5232 msgid "grouping_element" msgstr "gruperingselement" -#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 +#: sql_help.c:4671 sql_help.c:4775 sql_help.c:4929 sql_help.c:5176 msgid "window_name" msgstr "fönsternamn" -#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 +#: sql_help.c:4672 sql_help.c:4776 sql_help.c:4930 sql_help.c:5177 msgid "window_definition" msgstr "fönsterdefinition" -#: sql_help.c:4653 sql_help.c:4667 sql_help.c:4711 sql_help.c:4757 -#: sql_help.c:4911 sql_help.c:4925 sql_help.c:4969 sql_help.c:5158 -#: sql_help.c:5172 sql_help.c:5216 +#: sql_help.c:4673 sql_help.c:4687 sql_help.c:4731 sql_help.c:4777 +#: sql_help.c:4931 sql_help.c:4945 sql_help.c:4989 sql_help.c:5178 +#: sql_help.c:5192 sql_help.c:5236 msgid "select" msgstr "select" -#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 +#: sql_help.c:4679 sql_help.c:4937 sql_help.c:5184 msgid "from_reference" msgstr "från_referens" -#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 +#: sql_help.c:4680 sql_help.c:4938 sql_help.c:5185 msgid "where from_item can be one of:" msgstr "där frånval kan vara en av:" -#: sql_help.c:4663 sql_help.c:4669 sql_help.c:4672 sql_help.c:4676 -#: sql_help.c:4688 sql_help.c:4921 sql_help.c:4927 sql_help.c:4930 -#: sql_help.c:4934 sql_help.c:4946 sql_help.c:5168 sql_help.c:5174 -#: sql_help.c:5177 sql_help.c:5181 sql_help.c:5193 +#: sql_help.c:4683 sql_help.c:4689 sql_help.c:4692 sql_help.c:4696 +#: sql_help.c:4708 sql_help.c:4941 sql_help.c:4947 sql_help.c:4950 +#: sql_help.c:4954 sql_help.c:4966 sql_help.c:5188 sql_help.c:5194 +#: sql_help.c:5197 sql_help.c:5201 sql_help.c:5213 msgid "column_alias" msgstr "kolumnalias" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 +#: sql_help.c:4684 sql_help.c:4942 sql_help.c:5189 msgid "sampling_method" msgstr "samplingsmetod" -#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 +#: sql_help.c:4686 sql_help.c:4944 sql_help.c:5191 msgid "seed" msgstr "frö" -#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 -#: sql_help.c:5175 sql_help.c:5214 +#: sql_help.c:4690 sql_help.c:4729 sql_help.c:4948 sql_help.c:4987 +#: sql_help.c:5195 sql_help.c:5234 msgid "with_query_name" msgstr "with_frågenamn" -#: sql_help.c:4680 sql_help.c:4683 sql_help.c:4686 sql_help.c:4938 -#: sql_help.c:4941 sql_help.c:4944 sql_help.c:5185 sql_help.c:5188 -#: sql_help.c:5191 +#: sql_help.c:4700 sql_help.c:4703 sql_help.c:4706 sql_help.c:4958 +#: sql_help.c:4961 sql_help.c:4964 sql_help.c:5205 sql_help.c:5208 +#: sql_help.c:5211 msgid "column_definition" msgstr "kolumndefinition" -#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 -#: sql_help.c:5195 sql_help.c:5201 +#: sql_help.c:4710 sql_help.c:4716 sql_help.c:4968 sql_help.c:4974 +#: sql_help.c:5215 sql_help.c:5221 msgid "join_type" msgstr "join-typ" -#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "join_column" msgstr "join-kolumn" -#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "join_using_alias" msgstr "join_using_alias" -#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "and grouping_element can be one of:" msgstr "och grupperingselement kan vara en av:" -#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 +#: sql_help.c:4728 sql_help.c:4986 sql_help.c:5233 msgid "and with_query is:" msgstr "och with_fråga är:" -#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 +#: sql_help.c:4732 sql_help.c:4990 sql_help.c:5237 msgid "values" msgstr "värden" -#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 +#: sql_help.c:4733 sql_help.c:4991 sql_help.c:5238 msgid "insert" msgstr "insert" -#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 +#: sql_help.c:4734 sql_help.c:4992 sql_help.c:5239 msgid "update" msgstr "update" -#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 +#: sql_help.c:4735 sql_help.c:4993 sql_help.c:5240 msgid "delete" msgstr "delete" -#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 +#: sql_help.c:4736 sql_help.c:4994 sql_help.c:5241 msgid "merge" msgstr "merge" -#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 +#: sql_help.c:4738 sql_help.c:4996 sql_help.c:5243 msgid "search_seq_col_name" msgstr "söksekvens_kolumnnamn" -#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 +#: sql_help.c:4740 sql_help.c:4998 sql_help.c:5245 msgid "cycle_mark_col_name" msgstr "cykelmarkering_kolumnnamn" -#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 +#: sql_help.c:4741 sql_help.c:4999 sql_help.c:5246 msgid "cycle_mark_value" msgstr "cykelmarkering_värde" -#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 +#: sql_help.c:4742 sql_help.c:5000 sql_help.c:5247 msgid "cycle_mark_default" msgstr "cykelmarkering_standard" -#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 +#: sql_help.c:4743 sql_help.c:5001 sql_help.c:5248 msgid "cycle_path_col_name" msgstr "cykelväg_kolumnnamn" -#: sql_help.c:4750 +#: sql_help.c:4770 msgid "new_table" msgstr "ny_tabell" -#: sql_help.c:4821 +#: sql_help.c:4841 msgid "snapshot_id" msgstr "snapshot_id" -#: sql_help.c:5090 +#: sql_help.c:5110 msgid "sort_expression" msgstr "sorteringsuttryck" -#: sql_help.c:5235 sql_help.c:6219 +#: sql_help.c:5255 sql_help.c:6239 msgid "abort the current transaction" msgstr "avbryt aktuell transaktion" -#: sql_help.c:5241 +#: sql_help.c:5261 msgid "change the definition of an aggregate function" msgstr "ändra definitionen av en aggregatfunktion" -#: sql_help.c:5247 +#: sql_help.c:5267 msgid "change the definition of a collation" msgstr "ändra definitionen av en jämförelse" -#: sql_help.c:5253 +#: sql_help.c:5273 msgid "change the definition of a conversion" msgstr "ändra definitionen av en konvertering" -#: sql_help.c:5259 +#: sql_help.c:5279 msgid "change a database" msgstr "ändra en databas" -#: sql_help.c:5265 +#: sql_help.c:5285 msgid "define default access privileges" msgstr "definiera standardaccessrättigheter" -#: sql_help.c:5271 +#: sql_help.c:5291 msgid "change the definition of a domain" msgstr "ändra definitionen av en domän" -#: sql_help.c:5277 +#: sql_help.c:5297 msgid "change the definition of an event trigger" msgstr "ändra definitionen av en händelsetrigger" -#: sql_help.c:5283 +#: sql_help.c:5303 msgid "change the definition of an extension" msgstr "ändra definitionen av en utökning" -#: sql_help.c:5289 +#: sql_help.c:5309 msgid "change the definition of a foreign-data wrapper" msgstr "ändra definitionen av en främmande data-omvandlare" -#: sql_help.c:5295 +#: sql_help.c:5315 msgid "change the definition of a foreign table" msgstr "ändra definitionen av en främmande tabell" -#: sql_help.c:5301 +#: sql_help.c:5321 msgid "change the definition of a function" msgstr "ändra definitionen av en funktion" -#: sql_help.c:5307 +#: sql_help.c:5327 msgid "change role name or membership" msgstr "ändra rollnamn eller medlemskap" -#: sql_help.c:5313 +#: sql_help.c:5333 msgid "change the definition of an index" msgstr "ändra definitionen av ett index" -#: sql_help.c:5319 +#: sql_help.c:5339 msgid "change the definition of a procedural language" msgstr "ändra definitionen av ett procedur-språk" -#: sql_help.c:5325 +#: sql_help.c:5345 msgid "change the definition of a large object" msgstr "ändra definitionen av ett stort objekt" -#: sql_help.c:5331 +#: sql_help.c:5351 msgid "change the definition of a materialized view" msgstr "ändra definitionen av en materialiserad vy" -#: sql_help.c:5337 +#: sql_help.c:5357 msgid "change the definition of an operator" msgstr "ändra definitionen av en operator" -#: sql_help.c:5343 +#: sql_help.c:5363 msgid "change the definition of an operator class" msgstr "ändra definitionen av en operatorklass" -#: sql_help.c:5349 +#: sql_help.c:5369 msgid "change the definition of an operator family" msgstr "ändra definitionen av en operatorfamilj" -#: sql_help.c:5355 +#: sql_help.c:5375 msgid "change the definition of a row-level security policy" msgstr "ändra definitionen av en säkerhetspolicy på radnivå" -#: sql_help.c:5361 +#: sql_help.c:5381 msgid "change the definition of a procedure" msgstr "ändra definitionen av en procedur" -#: sql_help.c:5367 +#: sql_help.c:5387 msgid "change the definition of a publication" msgstr "ändra definitionen av en publicering" -#: sql_help.c:5373 sql_help.c:5475 +#: sql_help.c:5393 sql_help.c:5495 msgid "change a database role" msgstr "ändra databasroll" -#: sql_help.c:5379 +#: sql_help.c:5399 msgid "change the definition of a routine" msgstr "ändra definitionen av en rutin" -#: sql_help.c:5385 +#: sql_help.c:5405 msgid "change the definition of a rule" msgstr "ändra definitionen av en regel" -#: sql_help.c:5391 +#: sql_help.c:5411 msgid "change the definition of a schema" msgstr "ändra definitionen av ett schema" -#: sql_help.c:5397 +#: sql_help.c:5417 msgid "change the definition of a sequence generator" msgstr "ändra definitionen av en sekvensgenerator" -#: sql_help.c:5403 +#: sql_help.c:5423 msgid "change the definition of a foreign server" msgstr "ändra definitionen av en främmande server" -#: sql_help.c:5409 +#: sql_help.c:5429 msgid "change the definition of an extended statistics object" msgstr "ändra definitionen av ett utökat statistikobjekt" -#: sql_help.c:5415 +#: sql_help.c:5435 msgid "change the definition of a subscription" msgstr "ändra definitionen av en prenumerering" -#: sql_help.c:5421 +#: sql_help.c:5441 msgid "change a server configuration parameter" msgstr "ändra en servers konfigurationsparameter" -#: sql_help.c:5427 +#: sql_help.c:5447 msgid "change the definition of a table" msgstr "ändra definitionen av en tabell" -#: sql_help.c:5433 +#: sql_help.c:5453 msgid "change the definition of a tablespace" msgstr "ändra definitionen av ett tabellutrymme" -#: sql_help.c:5439 +#: sql_help.c:5459 msgid "change the definition of a text search configuration" msgstr "ändra definitionen av en textsökkonfiguration" -#: sql_help.c:5445 +#: sql_help.c:5465 msgid "change the definition of a text search dictionary" msgstr "ändra definitionen av en textsökordlista" -#: sql_help.c:5451 +#: sql_help.c:5471 msgid "change the definition of a text search parser" msgstr "ändra definitionen av en textsökparser" -#: sql_help.c:5457 +#: sql_help.c:5477 msgid "change the definition of a text search template" msgstr "ändra definitionen av en textsökmall" -#: sql_help.c:5463 +#: sql_help.c:5483 msgid "change the definition of a trigger" msgstr "ändra definitionen av en trigger" -#: sql_help.c:5469 +#: sql_help.c:5489 msgid "change the definition of a type" msgstr "ändra definitionen av en typ" -#: sql_help.c:5481 +#: sql_help.c:5501 msgid "change the definition of a user mapping" msgstr "ändra definitionen av en användarmappning" -#: sql_help.c:5487 +#: sql_help.c:5507 msgid "change the definition of a view" msgstr "ändra definitionen av en vy" -#: sql_help.c:5493 +#: sql_help.c:5513 msgid "collect statistics about a database" msgstr "samla in statistik om en databas" -#: sql_help.c:5499 sql_help.c:6297 +#: sql_help.c:5519 sql_help.c:6317 msgid "start a transaction block" msgstr "starta ett transaktionsblock" -#: sql_help.c:5505 +#: sql_help.c:5525 msgid "invoke a procedure" msgstr "anropa en procedur" -#: sql_help.c:5511 +#: sql_help.c:5531 msgid "force a write-ahead log checkpoint" msgstr "tvinga checkpoint i transaktionsloggen" -#: sql_help.c:5517 +#: sql_help.c:5537 msgid "close a cursor" msgstr "stäng en markör" -#: sql_help.c:5523 +#: sql_help.c:5543 msgid "cluster a table according to an index" msgstr "klustra en tabell efter ett index" -#: sql_help.c:5529 +#: sql_help.c:5549 msgid "define or change the comment of an object" msgstr "definiera eller ändra en kommentar på ett objekt" -#: sql_help.c:5535 sql_help.c:6093 +#: sql_help.c:5555 sql_help.c:6113 msgid "commit the current transaction" msgstr "utför den aktuella transaktionen" -#: sql_help.c:5541 +#: sql_help.c:5561 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "utför commit på en transaktion som tidigare förberetts för två-fas-commit" -#: sql_help.c:5547 +#: sql_help.c:5567 msgid "copy data between a file and a table" msgstr "kopiera data mellan en fil och en tabell" -#: sql_help.c:5553 +#: sql_help.c:5573 msgid "define a new access method" msgstr "definiera en ny accessmetod" -#: sql_help.c:5559 +#: sql_help.c:5579 msgid "define a new aggregate function" msgstr "definiera en ny aggregatfunktion" -#: sql_help.c:5565 +#: sql_help.c:5585 msgid "define a new cast" msgstr "definiera en ny typomvandling" -#: sql_help.c:5571 +#: sql_help.c:5591 msgid "define a new collation" msgstr "definiera en ny jämförelse" -#: sql_help.c:5577 +#: sql_help.c:5597 msgid "define a new encoding conversion" msgstr "definiera en ny teckenkodningskonvertering" -#: sql_help.c:5583 +#: sql_help.c:5603 msgid "create a new database" msgstr "skapa en ny databas" -#: sql_help.c:5589 +#: sql_help.c:5609 msgid "define a new domain" msgstr "definiera en ny domän" -#: sql_help.c:5595 +#: sql_help.c:5615 msgid "define a new event trigger" msgstr "definiera en ny händelsetrigger" -#: sql_help.c:5601 +#: sql_help.c:5621 msgid "install an extension" msgstr "installera en utökning" -#: sql_help.c:5607 +#: sql_help.c:5627 msgid "define a new foreign-data wrapper" msgstr "definiera en ny främmande data-omvandlare" -#: sql_help.c:5613 +#: sql_help.c:5633 msgid "define a new foreign table" msgstr "definiera en ny främmande tabell" -#: sql_help.c:5619 +#: sql_help.c:5639 msgid "define a new function" msgstr "definiera en ny funktion" -#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 +#: sql_help.c:5645 sql_help.c:5705 sql_help.c:5807 msgid "define a new database role" msgstr "definiera en ny databasroll" -#: sql_help.c:5631 +#: sql_help.c:5651 msgid "define a new index" msgstr "skapa ett nytt index" -#: sql_help.c:5637 +#: sql_help.c:5657 msgid "define a new procedural language" msgstr "definiera ett nytt procedur-språk" -#: sql_help.c:5643 +#: sql_help.c:5663 msgid "define a new materialized view" msgstr "definiera en ny materialiserad vy" -#: sql_help.c:5649 +#: sql_help.c:5669 msgid "define a new operator" msgstr "definiera en ny operator" -#: sql_help.c:5655 +#: sql_help.c:5675 msgid "define a new operator class" msgstr "definiera en ny operatorklass" -#: sql_help.c:5661 +#: sql_help.c:5681 msgid "define a new operator family" msgstr "definiera en ny operatorfamilj" -#: sql_help.c:5667 +#: sql_help.c:5687 msgid "define a new row-level security policy for a table" msgstr "definiera en ny säkerhetspolicy på radnivå för en tabell" -#: sql_help.c:5673 +#: sql_help.c:5693 msgid "define a new procedure" msgstr "definiera ett ny procedur" -#: sql_help.c:5679 +#: sql_help.c:5699 msgid "define a new publication" msgstr "definiera en ny publicering" -#: sql_help.c:5691 +#: sql_help.c:5711 msgid "define a new rewrite rule" msgstr "definiera en ny omskrivningsregel" -#: sql_help.c:5697 +#: sql_help.c:5717 msgid "define a new schema" msgstr "definiera ett nytt schema" -#: sql_help.c:5703 +#: sql_help.c:5723 msgid "define a new sequence generator" msgstr "definiera en ny sekvensgenerator" -#: sql_help.c:5709 +#: sql_help.c:5729 msgid "define a new foreign server" msgstr "definiera en ny främmande server" -#: sql_help.c:5715 +#: sql_help.c:5735 msgid "define extended statistics" msgstr "definiera utökad statistik" -#: sql_help.c:5721 +#: sql_help.c:5741 msgid "define a new subscription" msgstr "definiera en ny prenumeration" -#: sql_help.c:5727 +#: sql_help.c:5747 msgid "define a new table" msgstr "definiera en ny tabell" -#: sql_help.c:5733 sql_help.c:6255 +#: sql_help.c:5753 sql_help.c:6275 msgid "define a new table from the results of a query" msgstr "definiera en ny tabell utifrån resultatet av en fråga" -#: sql_help.c:5739 +#: sql_help.c:5759 msgid "define a new tablespace" msgstr "definiera ett nytt tabellutrymme" -#: sql_help.c:5745 +#: sql_help.c:5765 msgid "define a new text search configuration" msgstr "definiera en ny textsökkonfiguration" -#: sql_help.c:5751 +#: sql_help.c:5771 msgid "define a new text search dictionary" msgstr "definiera en ny textsökordlista" -#: sql_help.c:5757 +#: sql_help.c:5777 msgid "define a new text search parser" msgstr "definiera en ny textsökparser" -#: sql_help.c:5763 +#: sql_help.c:5783 msgid "define a new text search template" msgstr "definiera en ny textsökmall" -#: sql_help.c:5769 +#: sql_help.c:5789 msgid "define a new transform" msgstr "definiera en ny transform" -#: sql_help.c:5775 +#: sql_help.c:5795 msgid "define a new trigger" msgstr "definiera en ny trigger" -#: sql_help.c:5781 +#: sql_help.c:5801 msgid "define a new data type" msgstr "definiera en ny datatyp" -#: sql_help.c:5793 +#: sql_help.c:5813 msgid "define a new mapping of a user to a foreign server" msgstr "definiera en ny mappning av en användare till en främmande server" -#: sql_help.c:5799 +#: sql_help.c:5819 msgid "define a new view" msgstr "definiera en ny vy" -#: sql_help.c:5805 +#: sql_help.c:5825 msgid "deallocate a prepared statement" msgstr "deallokera en förberedd sats" -#: sql_help.c:5811 +#: sql_help.c:5831 msgid "define a cursor" msgstr "definiera en markör" -#: sql_help.c:5817 +#: sql_help.c:5837 msgid "delete rows of a table" msgstr "radera rader i en tabell" -#: sql_help.c:5823 +#: sql_help.c:5843 msgid "discard session state" msgstr "släng sessionstillstånd" -#: sql_help.c:5829 +#: sql_help.c:5849 msgid "execute an anonymous code block" msgstr "kör ett annonymt kodblock" -#: sql_help.c:5835 +#: sql_help.c:5855 msgid "remove an access method" msgstr "ta bort en accessmetod" -#: sql_help.c:5841 +#: sql_help.c:5861 msgid "remove an aggregate function" msgstr "ta bort en aggregatfunktioner" -#: sql_help.c:5847 +#: sql_help.c:5867 msgid "remove a cast" msgstr "ta bort en typomvandling" -#: sql_help.c:5853 +#: sql_help.c:5873 msgid "remove a collation" msgstr "ta bort en jämförelse" -#: sql_help.c:5859 +#: sql_help.c:5879 msgid "remove a conversion" msgstr "ta bort en konvertering" -#: sql_help.c:5865 +#: sql_help.c:5885 msgid "remove a database" msgstr "ta bort en databas" -#: sql_help.c:5871 +#: sql_help.c:5891 msgid "remove a domain" msgstr "ta bort en domän" -#: sql_help.c:5877 +#: sql_help.c:5897 msgid "remove an event trigger" msgstr "ta bort en händelsetrigger" -#: sql_help.c:5883 +#: sql_help.c:5903 msgid "remove an extension" msgstr "ta bort en utökning" -#: sql_help.c:5889 +#: sql_help.c:5909 msgid "remove a foreign-data wrapper" msgstr "ta bort en frammande data-omvandlare" -#: sql_help.c:5895 +#: sql_help.c:5915 msgid "remove a foreign table" msgstr "ta bort en främmande tabell" -#: sql_help.c:5901 +#: sql_help.c:5921 msgid "remove a function" msgstr "ta bort en funktion" -#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 +#: sql_help.c:5927 sql_help.c:5993 sql_help.c:6095 msgid "remove a database role" msgstr "ta bort en databasroll" -#: sql_help.c:5913 +#: sql_help.c:5933 msgid "remove an index" msgstr "ta bort ett index" -#: sql_help.c:5919 +#: sql_help.c:5939 msgid "remove a procedural language" msgstr "ta bort ett procedur-språk" -#: sql_help.c:5925 +#: sql_help.c:5945 msgid "remove a materialized view" msgstr "ta bort en materialiserad vy" -#: sql_help.c:5931 +#: sql_help.c:5951 msgid "remove an operator" msgstr "ta bort en operator" -#: sql_help.c:5937 +#: sql_help.c:5957 msgid "remove an operator class" msgstr "ta bort en operatorklass" -#: sql_help.c:5943 +#: sql_help.c:5963 msgid "remove an operator family" msgstr "ta bort en operatorfamilj" -#: sql_help.c:5949 +#: sql_help.c:5969 msgid "remove database objects owned by a database role" msgstr "ta bort databasobjekt som ägs av databasroll" -#: sql_help.c:5955 +#: sql_help.c:5975 msgid "remove a row-level security policy from a table" msgstr "ta bort en säkerhetspolicy på radnivå från en tabell" -#: sql_help.c:5961 +#: sql_help.c:5981 msgid "remove a procedure" msgstr "ta bort en procedur" -#: sql_help.c:5967 +#: sql_help.c:5987 msgid "remove a publication" msgstr "ta bort en publicering" -#: sql_help.c:5979 +#: sql_help.c:5999 msgid "remove a routine" msgstr "ta bort en rutin" -#: sql_help.c:5985 +#: sql_help.c:6005 msgid "remove a rewrite rule" msgstr "ta bort en omskrivningsregel" -#: sql_help.c:5991 +#: sql_help.c:6011 msgid "remove a schema" msgstr "ta bort ett schema" -#: sql_help.c:5997 +#: sql_help.c:6017 msgid "remove a sequence" msgstr "ta bort en sekvens" -#: sql_help.c:6003 +#: sql_help.c:6023 msgid "remove a foreign server descriptor" msgstr "ta bort en främmande server-deskriptor" -#: sql_help.c:6009 +#: sql_help.c:6029 msgid "remove extended statistics" msgstr "ta bort utökad statistik" -#: sql_help.c:6015 +#: sql_help.c:6035 msgid "remove a subscription" msgstr "ta bort en prenumeration" -#: sql_help.c:6021 +#: sql_help.c:6041 msgid "remove a table" msgstr "ta bort en tabell" -#: sql_help.c:6027 +#: sql_help.c:6047 msgid "remove a tablespace" msgstr "ta bort ett tabellutrymme" -#: sql_help.c:6033 +#: sql_help.c:6053 msgid "remove a text search configuration" msgstr "ta bort en textsökkonfiguration" -#: sql_help.c:6039 +#: sql_help.c:6059 msgid "remove a text search dictionary" msgstr "ta bort en textsökordlista" -#: sql_help.c:6045 +#: sql_help.c:6065 msgid "remove a text search parser" msgstr "ta bort en textsökparser" -#: sql_help.c:6051 +#: sql_help.c:6071 msgid "remove a text search template" msgstr "ta bort en textsökmall" -#: sql_help.c:6057 +#: sql_help.c:6077 msgid "remove a transform" msgstr "ta bort en transform" -#: sql_help.c:6063 +#: sql_help.c:6083 msgid "remove a trigger" msgstr "ta bort en trigger" -#: sql_help.c:6069 +#: sql_help.c:6089 msgid "remove a data type" msgstr "ta bort en datatyp" -#: sql_help.c:6081 +#: sql_help.c:6101 msgid "remove a user mapping for a foreign server" msgstr "ta bort en användarmappning för en främmande server" -#: sql_help.c:6087 +#: sql_help.c:6107 msgid "remove a view" msgstr "ta bort en vy" -#: sql_help.c:6099 +#: sql_help.c:6119 msgid "execute a prepared statement" msgstr "utför en förberedd sats" -#: sql_help.c:6105 +#: sql_help.c:6125 msgid "show the execution plan of a statement" msgstr "visa körningsplanen för en sats" -#: sql_help.c:6111 +#: sql_help.c:6131 msgid "retrieve rows from a query using a cursor" msgstr "hämta rader från en fråga med hjälp av en markör" -#: sql_help.c:6117 +#: sql_help.c:6137 msgid "define access privileges" msgstr "definera åtkomsträttigheter" -#: sql_help.c:6123 +#: sql_help.c:6143 msgid "import table definitions from a foreign server" msgstr "importera tabelldefinitioner från en främmande server" -#: sql_help.c:6129 +#: sql_help.c:6149 msgid "create new rows in a table" msgstr "skapa nya rader i en tabell" -#: sql_help.c:6135 +#: sql_help.c:6155 msgid "listen for a notification" msgstr "lyssna efter notifiering" -#: sql_help.c:6141 +#: sql_help.c:6161 msgid "load a shared library file" msgstr "ladda en delad biblioteksfil (shared library)" -#: sql_help.c:6147 +#: sql_help.c:6167 msgid "lock a table" msgstr "lås en tabell" -#: sql_help.c:6153 +#: sql_help.c:6173 msgid "conditionally insert, update, or delete rows of a table" msgstr "villkorlig insert, updare eller delete av rader i en tabell" -#: sql_help.c:6159 +#: sql_help.c:6179 msgid "position a cursor" msgstr "flytta en markör" -#: sql_help.c:6165 +#: sql_help.c:6185 msgid "generate a notification" msgstr "generera en notifiering" -#: sql_help.c:6171 +#: sql_help.c:6191 msgid "prepare a statement for execution" msgstr "förbered en sats för körning" -#: sql_help.c:6177 +#: sql_help.c:6197 msgid "prepare the current transaction for two-phase commit" msgstr "avbryt aktuell transaktion för två-fas-commit" -#: sql_help.c:6183 +#: sql_help.c:6203 msgid "change the ownership of database objects owned by a database role" msgstr "byt ägare på databasobjekt som ägs av en databasroll" -#: sql_help.c:6189 +#: sql_help.c:6209 msgid "replace the contents of a materialized view" msgstr "ersätt innehållet av en materialiserad vy" -#: sql_help.c:6195 +#: sql_help.c:6215 msgid "rebuild indexes" msgstr "återskapa index" -#: sql_help.c:6201 +#: sql_help.c:6221 msgid "release a previously defined savepoint" msgstr "frigör en tidigare definierad sparpunkt" -#: sql_help.c:6207 +#: sql_help.c:6227 msgid "restore the value of a run-time parameter to the default value" msgstr "återställ värde av körningsparameter till standardvärdet" -#: sql_help.c:6213 +#: sql_help.c:6233 msgid "remove access privileges" msgstr "ta bort åtkomsträttigheter" -#: sql_help.c:6225 +#: sql_help.c:6245 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "avbryt en transaktion som tidigare förberetts för två-fas-commit" -#: sql_help.c:6231 +#: sql_help.c:6251 msgid "roll back to a savepoint" msgstr "rulla tillbaka till sparpunkt" -#: sql_help.c:6237 +#: sql_help.c:6257 msgid "define a new savepoint within the current transaction" msgstr "definera en ny sparpunkt i den aktuella transaktionen" -#: sql_help.c:6243 +#: sql_help.c:6263 msgid "define or change a security label applied to an object" msgstr "definiera eller ändra en säkerhetsetikett på ett objekt" -#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 +#: sql_help.c:6269 sql_help.c:6323 sql_help.c:6359 msgid "retrieve rows from a table or view" msgstr "hämta rader från en tabell eller vy" -#: sql_help.c:6261 +#: sql_help.c:6281 msgid "change a run-time parameter" msgstr "ändra en körningsparameter" -#: sql_help.c:6267 +#: sql_help.c:6287 msgid "set constraint check timing for the current transaction" msgstr "sätt integritetsvillkorstiming för nuvarande transaktion" -#: sql_help.c:6273 +#: sql_help.c:6293 msgid "set the current user identifier of the current session" msgstr "sätt användare för den aktiva sessionen" -#: sql_help.c:6279 +#: sql_help.c:6299 msgid "set the session user identifier and the current user identifier of the current session" msgstr "sätt sessionsanvändaridentifierare och nuvarande användaridentifierare för den aktiva sessionen" -#: sql_help.c:6285 +#: sql_help.c:6305 msgid "set the characteristics of the current transaction" msgstr "sätt inställningar för nuvarande transaktionen" -#: sql_help.c:6291 +#: sql_help.c:6311 msgid "show the value of a run-time parameter" msgstr "visa värde på en körningsparameter" -#: sql_help.c:6309 +#: sql_help.c:6329 msgid "empty a table or set of tables" msgstr "töm en eller flera tabeller" -#: sql_help.c:6315 +#: sql_help.c:6335 msgid "stop listening for a notification" msgstr "sluta att lyssna efter notifiering" -#: sql_help.c:6321 +#: sql_help.c:6341 msgid "update rows of a table" msgstr "uppdatera rader i en tabell" -#: sql_help.c:6327 +#: sql_help.c:6347 msgid "garbage-collect and optionally analyze a database" msgstr "skräpsamla och eventuellt analysera en databas" -#: sql_help.c:6333 +#: sql_help.c:6353 msgid "compute a set of rows" msgstr "beräkna en mängd rader" @@ -6886,7 +6903,7 @@ msgstr "extra kommandoradsargument \"%s\" ignorerad" msgid "could not find own program executable" msgstr "kunde inte hitta det egna programmets körbara fil" -#: tab-complete.in.c:6633 +#: tab-complete.in.c:6639 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/uk.po b/src/bin/psql/po/uk.po index bd64a745d18..4da22a8e08f 100644 --- a/src/bin/psql/po/uk.po +++ b/src/bin/psql/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-23 10:48+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:18+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/psql.pot\n" -"X-Crowdin-File-ID: 996\n" +"X-Crowdin-File: /REL_18_STABLE/psql.pot\n" +"X-Crowdin-File-ID: 1061\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -57,28 +57,28 @@ msgstr "неможливо знайти \"%s\" для виконання" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "не вдалося знайти абсолютний шлях \"%s\": %m" -#: ../../common/exec.c:382 copy.c:326 +#: ../../common/exec.c:363 copy.c:326 #, c-format msgid "could not execute command \"%s\": %m" msgstr "не вдалося виконати команду \"%s\": %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "не вдалося прочитати висновок команди \"%s\": %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "команда \"%s\" не повернула жодних даних" -#: ../../common/exec.c:424 +#: ../../common/exec.c:405 #, c-format msgid "%s() failed: %m" msgstr "%s() помилка: %m" -#: ../../common/exec.c:562 ../../common/exec.c:607 ../../common/exec.c:699 -#: command.c:1372 command.c:3458 command.c:3507 command.c:3632 input.c:225 +#: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 +#: command.c:1660 command.c:4078 command.c:4127 command.c:4252 input.c:225 #: mainloop.c:80 mainloop.c:398 #, c-format msgid "out of memory" @@ -100,7 +100,7 @@ msgstr "неможливо дублювати нульовий покажчик msgid "could not look up effective user ID %ld: %s" msgstr "не можу знайти користувача з ефективним ID %ld: %s" -#: ../../common/username.c:45 command.c:616 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "користувача не існує" @@ -163,8 +163,8 @@ msgstr "Перервано\n" #: ../../fe_utils/print.c:3188 #, c-format -msgid "Cannot print table contents: number of cells %lld is equal to or exceeds maximum %lld.\n" -msgstr "Неможливо надрукувати вміст таблиці: кількість комірок %lld дорівнює або перевищує максимальне значення %lld.\n" +msgid "Cannot print table contents: number of cells % is equal to or exceeds maximum %zu.\n" +msgstr "Неможливо надрукувати вміст таблиці: кількість клітинок % дорівнює або перевищує максимум %zu.\n" #: ../../fe_utils/print.c:3229 #, c-format @@ -173,358 +173,457 @@ msgstr "Неможливо додати заголовок до вмісту т #: ../../fe_utils/print.c:3272 #, c-format -msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" -msgstr "Неможливо додати комірку до вмісту таблиці: перевищено загальну кількість комірок %lld.\n" +msgid "Cannot add cell to table content: total cell count of % exceeded.\n" +msgstr "Неможливо додати клітинку до вмісту таблиці: загальна кількість клітинок % перевищена.\n" #: ../../fe_utils/print.c:3530 #, c-format msgid "invalid output format (internal error): %d" msgstr "невірний формат виводу (внутрішня помилка): %d" -#: ../../fe_utils/psqlscan.l:732 +#: ../../fe_utils/psqlscan.l:723 #, c-format msgid "skipping recursive expansion of variable \"%s\"" msgstr "пропуск рекурсивного розгортання змінної \"%s\"" -#: ../../fe_utils/string_utils.c:434 +#: ../../fe_utils/string_utils.c:587 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"\n" msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" -#: ../../fe_utils/string_utils.c:607 +#: ../../fe_utils/string_utils.c:760 #, c-format msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" -#: ../../port/user.c:43 ../../port/user.c:79 +#: command.c:254 #, c-format -msgid "could not look up local user ID %d: %s" -msgstr "не вдалося знайти локального користувача з ідентифікатором %d: %s" +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "команди зі зворотною косою рискою обмежені; дозволена лише \\unrestrict" -#: ../../port/user.c:48 ../../port/user.c:84 -#, c-format -msgid "local user with ID %d does not exist" -msgstr "локального користувача з ідентифікатором %d не існує" - -#: command.c:235 +#: command.c:262 #, c-format msgid "invalid command \\%s" msgstr "Невірна команда \\%s" -#: command.c:237 +#: command.c:264 #, c-format msgid "Try \\? for help." msgstr "Спробуйте \\? для отримання довідки." -#: command.c:255 +#: command.c:282 #, c-format msgid "\\%s: extra argument \"%s\" ignored" msgstr "\\%s: зайвий аргумент \"%s\" проігноровано" -#: command.c:307 +#: command.c:334 #, c-format msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block" msgstr "\\%s команду проігноровано; скористайтесь \\endif або Ctrl-C, щоб вийти з поточного блоку \\if" -#: command.c:614 +#: command.c:573 command.c:768 command.c:1906 command.c:2074 command.c:2387 +#: command.c:2401 command.c:2433 command.c:2522 command.c:2635 command.c:2794 +#: command.c:2942 command.c:3202 command.c:3244 command.c:3284 +#, c-format +msgid "\\%s: missing required argument" +msgstr "\\%s: не вистачає обов'язкового аргументу" + +#: command.c:719 #, c-format msgid "could not get home directory for user ID %ld: %s" msgstr "неможливо отримати домашню директорію для користувача ID %ld: %s" -#: command.c:633 +#: command.c:738 #, c-format msgid "\\%s: could not change directory to \"%s\": %m" msgstr "\\%s: неможливо змінити директорію на \"%s\": %m" -#: command.c:657 +#: command.c:811 #, c-format msgid "You are currently not connected to a database.\n" msgstr "На даний момент ви від'єднанні від бази даних.\n" -#: command.c:667 -#, c-format -msgid "You are connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" -msgstr "Ви під'єднані до бази даних \"%s\" як користувач \"%s\" за аресою \"%s\" на порту \"%s\".\n" +#: command.c:839 +msgid "Connection Information" +msgstr "Інформація про підключення" -#: command.c:670 -#, c-format -msgid "You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n" -msgstr "Ви під'єднані до бази даних \"%s\" як користувач \"%s\" через сокет в \"%s\" на порту \"%s\".\n" +#: command.c:840 describe.c:4722 +msgid "Parameter" +msgstr "Параметр" -#: command.c:676 -#, c-format -msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n" -msgstr "Ви під'єднані до бази даних \"%s\" як користувач \"%s\" на хості \"%s\" (за аресою \"%s\") на порту \"%s\".\n" +#: command.c:841 describe.c:4723 +msgid "Value" +msgstr "Значення" -#: command.c:679 -#, c-format -msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" -msgstr "Ви під'єднані до бази даних \"%s\" як користувач \"%s\" на хості \"%s\" на порту \"%s\".\n" +#: command.c:844 describe.c:3874 +msgid "Database" +msgstr "База даних" + +#: command.c:848 +msgid "Client User" +msgstr "Користувач клієнта" + +#: command.c:857 command.c:872 +msgid "Host Address" +msgstr "Адреса хоста" + +#: command.c:862 +msgid "Socket Directory" +msgstr "Каталог сокетів" + +#: command.c:868 +msgid "Host" +msgstr "Хост" + +#: command.c:878 +msgid "Server Port" +msgstr "Порт сервера" + +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 +msgid "Options" +msgstr "Параметри" + +#: command.c:886 +msgid "Protocol Version" +msgstr "Версія Протоколу" + +#: command.c:890 +msgid "Password Used" +msgstr "Пароль використано" + +#: command.c:891 command.c:895 command.c:903 command.c:936 +msgid "false" +msgstr "хибно" + +#: command.c:891 command.c:895 command.c:903 command.c:936 +msgid "true" +msgstr "істинно" -#: command.c:1069 command.c:1170 command.c:2675 +#: command.c:894 +msgid "GSSAPI Authenticated" +msgstr "Автентифіковано GSSAPI" + +#: command.c:898 +msgid "Backend PID" +msgstr "PID бекенда" + +#: command.c:902 +msgid "SSL Connection" +msgstr "SSL з'єднання" + +#: command.c:922 +msgid "SSL Library" +msgstr "SSL бібліотека" + +#: command.c:923 command.c:926 command.c:929 command.c:932 command.c:944 +#: command.c:948 command.c:4516 command.c:4517 +msgid "unknown" +msgstr "невідомо" + +#: command.c:925 +msgid "SSL Protocol" +msgstr "SSL протокол" + +#: command.c:928 +msgid "SSL Key Bits" +msgstr "Біти SSL ключа" + +#: command.c:931 +msgid "SSL Cipher" +msgstr "SSL шифр" + +#: command.c:934 +msgid "SSL Compression" +msgstr "SSL стиснення" + +#: command.c:938 +msgid "ALPN" +msgstr "ALPN" + +#: command.c:939 command.c:4519 +msgid "none" +msgstr "нічого" + +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "немає буферу запитів" -#: command.c:1102 command.c:5771 +#: command.c:1389 command.c:6405 #, c-format msgid "invalid line number: %s" msgstr "невірний номер рядка: %s" -#: command.c:1248 +#: command.c:1535 msgid "No changes" msgstr "Без змін" -#: command.c:1333 +#: command.c:1620 #, c-format msgid "%s: invalid encoding name or conversion procedure not found" msgstr "%s: невірне ім'я кодування або не знайдено процедуру конверсії" -#: command.c:1368 command.c:2157 command.c:3454 command.c:3652 command.c:5877 -#: common.c:221 common.c:270 common.c:440 common.c:1142 common.c:1160 -#: common.c:1228 common.c:1340 common.c:1378 common.c:1475 common.c:1541 -#: copy.c:486 copy.c:722 large_obj.c:157 large_obj.c:192 large_obj.c:254 -#: startup.c:304 +#: command.c:1656 command.c:2596 command.c:4074 command.c:4272 command.c:6511 +#: common.c:233 common.c:282 common.c:455 common.c:1178 common.c:1196 +#: common.c:1264 common.c:1376 common.c:1414 common.c:1705 common.c:1785 +#: copy.c:486 copy.c:731 large_obj.c:157 large_obj.c:192 large_obj.c:254 +#: startup.c:309 #, c-format msgid "%s" msgstr "%s" -#: command.c:1375 +#: command.c:1663 msgid "There is no previous error." msgstr "Попередня помилка відсутня." -#: command.c:1488 +#: command.c:1766 command.c:1973 command.c:1999 command.c:3380 +#, c-format +msgid "\\%s not allowed in pipeline mode" +msgstr "\\%s не дозволено в режимі конвеєра" + +#: command.c:1822 #, c-format msgid "\\%s: missing right parenthesis" msgstr "\\%s: відсутня права дужка" -#: command.c:1572 command.c:1691 command.c:1995 command.c:2009 command.c:2028 -#: command.c:2196 command.c:2437 command.c:2642 command.c:2682 +#: command.c:1948 #, c-format -msgid "\\%s: missing required argument" -msgstr "\\%s: не вистачає обов'язкового аргументу" +msgid "\\getresults: invalid number of requested results" +msgstr "\\getresults: недійсна кількість запитуваних результатів" -#: command.c:1822 +#: command.c:2205 #, c-format msgid "\\elif: cannot occur after \\else" msgstr "\\elif: не може йти після \\else" -#: command.c:1827 +#: command.c:2210 #, c-format msgid "\\elif: no matching \\if" msgstr "\\elif: немає відповідного \\if" -#: command.c:1891 +#: command.c:2274 #, c-format msgid "\\else: cannot occur after \\else" msgstr "\\else: не може йти після \\else" -#: command.c:1896 +#: command.c:2279 #, c-format msgid "\\else: no matching \\if" msgstr "\\else: немає відповідного \\if" -#: command.c:1936 +#: command.c:2319 #, c-format msgid "\\endif: no matching \\if" msgstr "\\endif: немає відповідного \\if" -#: command.c:2092 +#: command.c:2497 msgid "Query buffer is empty." msgstr "Буфер запиту порожній." -#: command.c:2135 +#: command.c:2574 #, c-format msgid "Enter new password for user \"%s\": " msgstr "Введіть новий пароль користувача \"%s\": " -#: command.c:2139 +#: command.c:2578 msgid "Enter it again: " msgstr "Введіть знову: " -#: command.c:2148 +#: command.c:2587 #, c-format msgid "Passwords didn't match." msgstr "Паролі не співпадають." -#: command.c:2231 +#: command.c:2670 #, c-format msgid "\\%s: could not read value for variable" msgstr "\\%s: не вдалося прочитати значення змінної" -#: command.c:2333 +#: command.c:2772 msgid "Query buffer reset (cleared)." msgstr "Буфер запитів скинуто (очищено)." -#: command.c:2355 +#: command.c:2823 #, c-format msgid "Wrote history to file \"%s\".\n" msgstr "Історію записано до файлу \"%s\".\n" -#: command.c:2442 +#: command.c:2853 +#, c-format +msgid "\\sendpipeline must be used after \\bind or \\bind_named" +msgstr "\\sendpipeline повинна використовуватися після \\bind або \\bind_named" + +#: command.c:2860 +#, c-format +msgid "\\sendpipeline not allowed outside of pipeline mode" +msgstr "\\sendpipeline не дозволена поза режимом конвеєра" + +#: command.c:2947 #, c-format msgid "\\%s: environment variable name must not contain \"=\"" msgstr "\\%s: змінна середовища не повинна містити \"=\"" -#: command.c:2490 +#: command.c:2995 #, c-format msgid "function name is required" msgstr "необхідне ім'я функції" -#: command.c:2492 +#: command.c:2997 #, c-format msgid "view name is required" msgstr "необхідне ім'я подання" -#: command.c:2614 +#: command.c:3176 msgid "Timing is on." msgstr "Таймер увімкнено." -#: command.c:2616 +#: command.c:3178 msgid "Timing is off." msgstr "Таймер вимкнено." -#: command.c:2702 command.c:2740 command.c:4163 command.c:4166 command.c:4169 -#: command.c:4175 command.c:4177 command.c:4203 command.c:4213 command.c:4225 -#: command.c:4239 command.c:4266 command.c:4324 common.c:77 copy.c:329 -#: copy.c:401 psqlscanslash.l:805 psqlscanslash.l:817 psqlscanslash.l:835 +#: command.c:3208 +#, c-format +msgid "\\%s: not currently in restricted mode" +msgstr "\\%s: наразі не в обмеженому режимі" + +#: command.c:3218 +#, c-format +msgid "\\%s: wrong key" +msgstr "\\%s: неправильний ключ" + +#: command.c:3304 command.c:3342 command.c:4792 command.c:4795 command.c:4798 +#: command.c:4804 command.c:4806 command.c:4832 command.c:4842 command.c:4854 +#: command.c:4868 command.c:4895 command.c:4953 common.c:77 copy.c:329 +#: copy.c:401 psqlscanslash.l:797 psqlscanslash.l:809 psqlscanslash.l:827 #, c-format msgid "%s: %m" msgstr "%s: %m" -#: command.c:2729 copy.c:388 +#: command.c:3331 copy.c:388 #, c-format msgid "%s: %s" msgstr "%s: %s" -#: command.c:2801 command.c:2867 +#: command.c:3412 command.c:3478 #, c-format msgid "\\watch: interval value is specified more than once" msgstr "\\watch: інтервал зазначається неодноразово" -#: command.c:2811 command.c:2877 +#: command.c:3422 command.c:3488 #, c-format msgid "\\watch: incorrect interval value \"%s\"" msgstr "\\watch: неправильне значення інтервалу \"%s\"" -#: command.c:2821 +#: command.c:3432 #, c-format msgid "\\watch: iteration count is specified more than once" msgstr "\\watch: інтервал зазначається неодноразово" -#: command.c:2831 +#: command.c:3442 #, c-format msgid "\\watch: incorrect iteration count \"%s\"" msgstr "\\watch: неправильна кількість ітерацій \"%s\"" -#: command.c:2841 +#: command.c:3452 #, c-format msgid "\\watch: minimum row count specified more than once" msgstr "\\watch: мінімальна кількість рядків вказана більше одного разу" -#: command.c:2851 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch: неправильна мінімальна кількість рядків \"%s\"" -#: command.c:2858 +#: command.c:3469 #, c-format msgid "\\watch: unrecognized parameter \"%s\"" msgstr "\\watch: нерозпізнаний параметр \"%s\"" -#: command.c:3255 startup.c:243 startup.c:293 +#: command.c:3875 startup.c:248 startup.c:298 msgid "Password: " msgstr "Пароль: " -#: command.c:3260 startup.c:290 +#: command.c:3880 startup.c:295 #, c-format msgid "Password for user %s: " msgstr "Пароль користувача %s:" -#: command.c:3316 +#: command.c:3936 #, c-format msgid "Do not give user, host, or port separately when using a connection string" msgstr "Не надайте користувачеві, хосту або порту окремо під час використання рядка підключення" -#: command.c:3351 +#: command.c:3971 #, c-format msgid "No database connection exists to re-use parameters from" msgstr "Не існує підключення до бази даних для повторного використання параметрів" -#: command.c:3658 +#: command.c:4278 #, c-format msgid "Previous connection kept" msgstr "Попереднє підключення триває" -#: command.c:3664 +#: command.c:4284 #, c-format msgid "\\connect: %s" msgstr "\\connect: %s" -#: command.c:3720 +#: command.c:4340 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" msgstr "Ви під'єднані до бази даних \"%s\" як користувач \"%s\" за адресою \"%s\" на порту \"%s\".\n" -#: command.c:3723 +#: command.c:4343 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n" msgstr "Ви тепер під'єднані до бази даних \"%s\" як користувач \"%s\" через сокет в \"%s\" на порту \"%s\".\n" -#: command.c:3729 +#: command.c:4349 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n" msgstr "Ви під'єднані до бази даних \"%s\" як користувач \"%s\" на хості \"%s\" (за адресою \"%s\") на порту \"%s\".\n" -#: command.c:3732 +#: command.c:4352 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" msgstr "Ви тепер під'єднані до бази даних \"%s\" як користувач \"%s\" на хості \"%s\" на порту \"%s\".\n" -#: command.c:3737 +#: command.c:4357 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\".\n" msgstr "Ви тепер під'єднані до бази даних \"%s\" як користувач \"%s\".\n" -#: command.c:3843 +#: command.c:4463 #, c-format msgid "%s (%s, server %s)\n" msgstr "%s (%s, сервер %s)\n" -#: command.c:3856 +#: command.c:4476 #, c-format msgid "WARNING: %s major version %s, server major version %s.\n" " Some psql features might not work.\n" msgstr "УВАГА: мажорна версія %s %s, мажорна версія сервера %s.\n" " Деякі функції psql можуть не працювати.\n" -#: command.c:3895 +#: command.c:4515 #, c-format msgid "SSL connection (protocol: %s, cipher: %s, compression: %s, ALPN: %s)\n" msgstr "З'єднання SSL (протокол: %s, шифр: %s, компресія: %s, ALPN: %s)\n" -#: command.c:3896 command.c:3897 -msgid "unknown" -msgstr "невідомо" - -#: command.c:3898 help.c:42 +#: command.c:4518 help.c:39 msgid "off" msgstr "вимк" -#: command.c:3898 help.c:42 +#: command.c:4518 help.c:39 msgid "on" msgstr "увімк" -#: command.c:3899 -msgid "none" -msgstr "нічого" - -#: command.c:3913 +#: command.c:4533 #, c-format msgid "GSSAPI-encrypted connection\n" msgstr "З'єднання зашифровано GSSAPI\n" -#: command.c:3933 +#: command.c:4553 #, c-format msgid "WARNING: Console code page (%u) differs from Windows code page (%u)\n" " 8-bit characters might not work correctly. See psql reference\n" @@ -533,187 +632,187 @@ msgstr "УВАГА: Кодова сторінка консолі (%u) відрі " 8-бітові символи можуть працювати неправильно. Детальніше у розділі \n" " \"Нотатки для користувачів Windows\" у документації psql.\n" -#: command.c:4038 +#: command.c:4667 #, c-format msgid "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a line number" msgstr "змінна середовища PSQL_EDITOR_LINENUMBER_ARG має бути встановлена, щоб вказувати номер рядка" -#: command.c:4068 +#: command.c:4697 #, c-format msgid "could not start editor \"%s\"" msgstr "неможливо запустити редактор \"%s\"" -#: command.c:4070 +#: command.c:4699 #, c-format msgid "could not start /bin/sh" msgstr "неможливо запустити /bin/sh" -#: command.c:4120 +#: command.c:4749 #, c-format msgid "could not locate temporary directory: %s" msgstr "неможливо знайти тимчасову директорію: %s" -#: command.c:4147 +#: command.c:4776 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "неможливо відкрити тимчасовий файл \"%s\": %m" -#: command.c:4483 +#: command.c:5112 #, c-format msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\"" msgstr "\\pset: неоднозначна абревіатура \"%s\" відповідає обом \"%s\" і \"%s" -#: command.c:4503 +#: command.c:5132 #, c-format msgid "\\pset: allowed formats are aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" msgstr "\\pset: дозволені формати: aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" -#: command.c:4522 +#: command.c:5151 #, c-format msgid "\\pset: allowed line styles are ascii, old-ascii, unicode" msgstr "\\pset: дозволені стилі ліній: ascii, old-ascii, unicode" -#: command.c:4537 +#: command.c:5166 #, c-format msgid "\\pset: allowed Unicode border line styles are single, double" msgstr "\\pset: дозволені стилі ліній рамок Unicode: single, double" -#: command.c:4552 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset: дозволені стилі ліній стовпців для Unicode: single, double" -#: command.c:4567 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset: дозволені стилі ліній заголовків для Unicode: single, double" -#: command.c:4619 +#: command.c:5248 #, c-format msgid "\\pset: allowed xheader_width values are \"%s\" (default), \"%s\", \"%s\", or a number specifying the exact width" msgstr "\\pset: дозволені значення xheader_width є \"%s\" (за замовчуванням), \"%s\", \"%s\" або число, яке визначає точну ширину" -#: command.c:4636 +#: command.c:5265 #, c-format msgid "\\pset: csv_fieldsep must be a single one-byte character" msgstr "\\pset: csv_fieldsep повинен бути однобайтовим символом" -#: command.c:4641 +#: command.c:5270 #, c-format msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return" msgstr "\\pset: csv_fieldsep не може бути подвійною лапкою, новим рядком або поверненням каретки" -#: command.c:4779 command.c:4980 +#: command.c:5408 command.c:5609 #, c-format msgid "\\pset: unknown option: %s" msgstr "\\pset: невідомий параметр: %s" -#: command.c:4799 +#: command.c:5428 #, c-format msgid "Border style is %d.\n" msgstr "Стиль рамки %d.\n" -#: command.c:4805 +#: command.c:5434 #, c-format msgid "Target width is unset.\n" msgstr "Цільова ширина не встановлена.\n" -#: command.c:4807 +#: command.c:5436 #, c-format msgid "Target width is %d.\n" msgstr "Цільова ширина %d.\n" -#: command.c:4814 +#: command.c:5443 #, c-format msgid "Expanded display is on.\n" msgstr "Розширене відображення увімкнуто.\n" -#: command.c:4816 +#: command.c:5445 #, c-format msgid "Expanded display is used automatically.\n" msgstr "Розширене відображення використовується автоматично.\n" -#: command.c:4818 +#: command.c:5447 #, c-format msgid "Expanded display is off.\n" msgstr "Розширене відображення вимкнуто.\n" -#: command.c:4825 command.c:4827 command.c:4829 +#: command.c:5454 command.c:5456 command.c:5458 #, c-format msgid "Expanded header width is \"%s\".\n" msgstr "Розширена ширина заголовка \"%s\".\n" -#: command.c:4831 +#: command.c:5460 #, c-format msgid "Expanded header width is %d.\n" msgstr "Розширена ширина заголовка %d.\n" -#: command.c:4837 +#: command.c:5466 #, c-format msgid "Field separator for CSV is \"%s\".\n" msgstr "Розділювач полів CSV: \"%s\".\n" -#: command.c:4845 command.c:4853 +#: command.c:5474 command.c:5482 #, c-format msgid "Field separator is zero byte.\n" msgstr "Розділювач полів - нульовий байт.\n" -#: command.c:4847 +#: command.c:5476 #, c-format msgid "Field separator is \"%s\".\n" msgstr "Розділювач полів \"%s\".\n" -#: command.c:4860 +#: command.c:5489 #, c-format msgid "Default footer is on.\n" msgstr "Нинжній колонтитул увімкнуто за замовчуванням.\n" -#: command.c:4862 +#: command.c:5491 #, c-format msgid "Default footer is off.\n" msgstr "Нинжній колонтитул вимкнуто за замовчуванням.\n" -#: command.c:4868 +#: command.c:5497 #, c-format msgid "Output format is %s.\n" msgstr "Формат виводу %s.\n" -#: command.c:4874 +#: command.c:5503 #, c-format msgid "Line style is %s.\n" msgstr "Стиль лінії %s.\n" -#: command.c:4881 +#: command.c:5510 #, c-format msgid "Null display is \"%s\".\n" msgstr "Null відображається як \"%s\".\n" -#: command.c:4889 +#: command.c:5518 #, c-format msgid "Locale-adjusted numeric output is on.\n" msgstr "Локалізоване виведення чисел ввімкнено.\n" -#: command.c:4891 +#: command.c:5520 #, c-format msgid "Locale-adjusted numeric output is off.\n" msgstr "Локалізоване виведення чисел вимкнено.\n" -#: command.c:4898 +#: command.c:5527 #, c-format msgid "Pager is used for long output.\n" msgstr "Пейджер використовується для виведення довгого тексту.\n" -#: command.c:4900 +#: command.c:5529 #, c-format msgid "Pager is always used.\n" msgstr "Завжди використовується пейджер.\n" -#: command.c:4902 +#: command.c:5531 #, c-format msgid "Pager usage is off.\n" msgstr "Пейджер не використовується.\n" -#: command.c:4908 +#: command.c:5537 #, c-format msgid "Pager won't be used for less than %d line.\n" msgid_plural "Pager won't be used for less than %d lines.\n" @@ -722,97 +821,97 @@ msgstr[1] "Пейджер не буде використовуватися дл msgstr[2] "Пейджер не буде використовуватися для менш ніж %d рядків.\n" msgstr[3] "Пейджер не буде використовуватися для менш ніж %d рядка.\n" -#: command.c:4918 command.c:4928 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "Розділювач записів - нульовий байт.\n" -#: command.c:4920 +#: command.c:5549 #, c-format msgid "Record separator is .\n" msgstr "Розділювач записів: .\n" -#: command.c:4922 +#: command.c:5551 #, c-format msgid "Record separator is \"%s\".\n" msgstr "Розділювач записів: \"%s\".\n" -#: command.c:4935 +#: command.c:5564 #, c-format msgid "Table attributes are \"%s\".\n" msgstr "Табличні атрибути \"%s\".\n" -#: command.c:4938 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "Атрибути таблиць не задані.\n" -#: command.c:4945 +#: command.c:5574 #, c-format msgid "Title is \"%s\".\n" msgstr "Заголовок: \"%s\".\n" -#: command.c:4947 +#: command.c:5576 #, c-format msgid "Title is unset.\n" msgstr "Заголовок не встановлено.\n" -#: command.c:4954 +#: command.c:5583 #, c-format msgid "Tuples only is on.\n" msgstr "Увімкнуто тільки кортежі.\n" -#: command.c:4956 +#: command.c:5585 #, c-format msgid "Tuples only is off.\n" msgstr "Вимкнуто тільки кортежі.\n" -#: command.c:4962 +#: command.c:5591 #, c-format msgid "Unicode border line style is \"%s\".\n" msgstr "Стиль ліній рамки для Unicode: \"%s\".\n" -#: command.c:4968 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "Стиль ліній стовпців для Unicode: \"%s\".\n" -#: command.c:4974 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "Стиль ліній заголовків для Unicode: \"%s\".\n" -#: command.c:5223 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\!: помилка" -#: command.c:5257 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch не може бути використано із пустим запитом" -#: command.c:5289 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "не вдалося встановити таймер: %m" -#: command.c:5358 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (кожні %g сек)\n" -#: command.c:5361 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (кожні %g сек)\n" -#: command.c:5424 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "не вдалося дочекатися сигналів: %m" -#: command.c:5480 command.c:5487 common.c:632 common.c:639 common.c:1123 +#: command.c:6114 command.c:6121 common.c:667 common.c:674 common.c:1159 #, c-format msgid "/******** QUERY *********/\n" "%s\n" @@ -821,107 +920,107 @@ msgstr "/******** ЗАПИТ *********/\n" "%s\n" "/************************/\n\n" -#: command.c:5666 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "\"%s.%s\" не є поданням" -#: command.c:5682 +#: command.c:6316 #, c-format msgid "could not parse reloptions array" msgstr "неможливо розібрати масив reloptions" -#: common.c:206 +#: common.c:218 #, c-format msgid "cannot escape without active connection" msgstr "не можна вийти без активного з'єднання" -#: common.c:247 +#: common.c:259 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"" msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"" -#: common.c:351 +#: common.c:363 #, c-format msgid "connection to server was lost" msgstr "з'єднання із сервером втрачено" -#: common.c:355 +#: common.c:367 #, c-format msgid "The connection to the server was lost. Attempting reset: " msgstr "З'єднання із сервером втрачено. Спроба перевстановити:" -#: common.c:360 +#: common.c:373 #, c-format msgid "Failed.\n" msgstr "Помилка.\n" -#: common.c:377 +#: common.c:390 #, c-format msgid "Succeeded.\n" msgstr "Вдало.\n" -#: common.c:430 common.c:1061 +#: common.c:445 common.c:1097 #, c-format msgid "unexpected PQresultStatus: %d" msgstr "неочікуваний PQresultStatus: %d" -#: common.c:571 +#: common.c:606 #, c-format msgid "Time: %.3f ms\n" msgstr "Час: %.3f мс\n" -#: common.c:586 +#: common.c:621 #, c-format msgid "Time: %.3f ms (%02d:%06.3f)\n" msgstr "Час: %.3f мс (%02d:%06.3f)\n" -#: common.c:595 +#: common.c:630 #, c-format msgid "Time: %.3f ms (%02d:%02d:%06.3f)\n" msgstr "Час: %.3f мс (%02d:%02d:%06.3f)\n" -#: common.c:602 +#: common.c:637 #, c-format msgid "Time: %.3f ms (%.0f d %02d:%02d:%06.3f)\n" msgstr "Час: %.3f мс (%.0f d %02d:%02d:%06.3f)\n" -#: common.c:626 common.c:683 common.c:1094 describe.c:6192 +#: common.c:661 common.c:718 common.c:1130 describe.c:6371 #, c-format msgid "You are currently not connected to a database." msgstr "На даний момент ви від'єднанні від бази даних." -#: common.c:714 +#: common.c:749 #, c-format msgid "Asynchronous notification \"%s\" with payload \"%s\" received from server process with PID %d.\n" msgstr "Асинхронне сповіщення \"%s\" з навантаженням \"%s\" отримане від серверного процесу з PID %d.\n" -#: common.c:717 +#: common.c:752 #, c-format msgid "Asynchronous notification \"%s\" received from server process with PID %d.\n" msgstr "Асинхронне сповіщення \"%s\" отримане від серверного процесу з PID %d.\n" -#: common.c:748 +#: common.c:783 #, c-format msgid "could not print result table: %m" msgstr "не вдалося надрукувати таблицю результатів: %m" -#: common.c:768 +#: common.c:803 #, c-format msgid "no rows returned for \\gset" msgstr "немає рядків повернутих для \\gset" -#: common.c:773 +#: common.c:808 #, c-format msgid "more than one row returned for \\gset" msgstr "більш, ніж один рядок повернуто для \\gset" -#: common.c:791 +#: common.c:826 #, c-format msgid "attempt to \\gset into specially treated variable \"%s\" ignored" msgstr "спробу виконати \\gset в спеціальну змінну \"%s\" проігноровано" -#: common.c:1103 +#: common.c:1139 #, c-format msgid "/**(Single step mode: verify command)******************************************/\n" "%s\n" @@ -930,37 +1029,52 @@ msgstr "/**(Однокроковий режим: команда verify)********* "%s\n" "/**(натисніть клавішу Return, щоб продовжити, або введіть x і Return, щоб скасувати.)*******************/\n" -#: common.c:1180 +#: common.c:1216 #, c-format msgid "STATEMENT: %s" msgstr "ІНСТРУКЦІЯ: %s" -#: common.c:1216 +#: common.c:1252 #, c-format msgid "unexpected transaction status (%d)" msgstr "неочікуваний стан транзакції (%d)" -#: common.c:1362 describe.c:2025 +#: common.c:1398 describe.c:2064 msgid "Column" msgstr "Стовпець" -#: common.c:1363 describe.c:169 describe.c:355 describe.c:373 describe.c:1043 -#: describe.c:1201 describe.c:1731 describe.c:1755 describe.c:2026 -#: describe.c:3956 describe.c:4167 describe.c:4404 describe.c:4564 -#: describe.c:5829 +#: common.c:1399 describe.c:176 describe.c:363 describe.c:381 describe.c:1082 +#: describe.c:1244 describe.c:1774 describe.c:1798 describe.c:2065 +#: describe.c:4058 describe.c:4322 describe.c:4569 describe.c:4729 +#: describe.c:6005 msgid "Type" msgstr "Тип" -#: common.c:1412 +#: common.c:1448 #, c-format msgid "The command has no result, or the result has no columns.\n" msgstr "Команда не має результату або результат не має стовпців.\n" -#: common.c:1504 +#: common.c:1670 +#, c-format +msgid "No pending results to get" +msgstr "Немає очікуваних результатів для отримання" + +#: common.c:1748 #, c-format msgid "fetching results in chunked mode failed" msgstr "помилка отримання результатів у режимі частинами" +#: common.c:1797 +#, c-format +msgid "Pipeline aborted, command did not run" +msgstr "Конвеєр перервано, команда не виконалася" + +#: common.c:1893 +#, c-format +msgid "COPY in a pipeline is not supported, aborting connection" +msgstr "COPY в конвеєрі не підтримується, перериваємо з'єднання" + #: copy.c:98 #, c-format msgid "\\copy: arguments required" @@ -1011,11 +1125,11 @@ msgid "Enter data to be copied followed by a newline.\n" msgstr "Введіть дані для копювання, розділяючи переносом рядка.\n" "Завершіть введення за допомогою \"\\.\" або за допомогою сигналу EOF." -#: copy.c:684 +#: copy.c:693 msgid "aborted because of read failure" msgstr "перервано через помилку читання" -#: copy.c:718 +#: copy.c:727 msgid "trying to exit copy mode" msgstr "спроба вийти з режиму копіювання" @@ -1064,763 +1178,776 @@ msgstr "\\crosstabview: неоднозначна назва стовпця: \"%s msgid "\\crosstabview: column name not found: \"%s\"" msgstr "\\crosstabview: ім'я стовпця не знайдено: \"%s\"" -#: describe.c:87 describe.c:335 describe.c:626 describe.c:802 describe.c:1035 -#: describe.c:1190 describe.c:1264 describe.c:3945 describe.c:4154 -#: describe.c:4402 describe.c:4483 describe.c:4715 describe.c:4921 -#: describe.c:5165 describe.c:5406 describe.c:5475 describe.c:5486 -#: describe.c:5542 describe.c:5941 describe.c:6018 +#: describe.c:94 describe.c:343 describe.c:650 describe.c:827 describe.c:1074 +#: describe.c:1231 describe.c:1307 describe.c:4047 describe.c:4309 +#: describe.c:4567 describe.c:4648 describe.c:4880 describe.c:5092 +#: describe.c:5341 describe.c:5582 describe.c:5651 describe.c:5662 +#: describe.c:5718 describe.c:6117 describe.c:6197 msgid "Schema" msgstr "Схема" -#: describe.c:88 describe.c:166 describe.c:227 describe.c:336 describe.c:627 -#: describe.c:803 describe.c:924 describe.c:1036 describe.c:1265 -#: describe.c:3946 describe.c:4155 describe.c:4319 describe.c:4403 -#: describe.c:4484 describe.c:4645 describe.c:4716 describe.c:4922 -#: describe.c:5038 describe.c:5166 describe.c:5407 describe.c:5476 -#: describe.c:5487 describe.c:5543 describe.c:5740 describe.c:5810 -#: describe.c:6016 describe.c:6243 describe.c:6551 +#: describe.c:95 describe.c:173 describe.c:234 describe.c:344 describe.c:651 +#: describe.c:828 describe.c:959 describe.c:1075 describe.c:1308 +#: describe.c:4048 describe.c:4310 describe.c:4484 describe.c:4568 +#: describe.c:4649 describe.c:4810 describe.c:4881 describe.c:5093 +#: describe.c:5214 describe.c:5342 describe.c:5583 describe.c:5652 +#: describe.c:5663 describe.c:5719 describe.c:5916 describe.c:5986 +#: describe.c:6194 describe.c:6422 describe.c:6768 msgid "Name" msgstr "Назва" -#: describe.c:89 describe.c:348 describe.c:366 +#: describe.c:96 describe.c:356 describe.c:374 msgid "Result data type" msgstr "Тип даних результату" -#: describe.c:90 describe.c:349 describe.c:367 +#: describe.c:97 describe.c:357 describe.c:375 msgid "Argument data types" msgstr "Типи даних аргументів" -#: describe.c:98 describe.c:105 describe.c:177 describe.c:241 describe.c:415 -#: describe.c:658 describe.c:818 describe.c:972 describe.c:1267 describe.c:2046 -#: describe.c:3676 describe.c:4000 describe.c:4201 describe.c:4343 -#: describe.c:4416 describe.c:4493 describe.c:4658 describe.c:4834 -#: describe.c:4975 describe.c:5047 describe.c:5167 describe.c:5317 -#: describe.c:5358 describe.c:5423 describe.c:5479 describe.c:5488 -#: describe.c:5544 describe.c:5758 describe.c:5832 describe.c:5955 -#: describe.c:6019 describe.c:7078 +#: describe.c:105 describe.c:112 describe.c:184 describe.c:248 describe.c:433 +#: describe.c:682 describe.c:847 describe.c:1011 describe.c:1310 +#: describe.c:2085 describe.c:3774 describe.c:4106 describe.c:4363 +#: describe.c:4508 describe.c:4581 describe.c:4658 describe.c:4823 +#: describe.c:5005 describe.c:5151 describe.c:5223 describe.c:5343 +#: describe.c:5493 describe.c:5534 describe.c:5599 describe.c:5655 +#: describe.c:5664 describe.c:5720 describe.c:5934 describe.c:6008 +#: describe.c:6131 describe.c:6198 describe.c:7304 msgid "Description" msgstr "Опис" -#: describe.c:127 +#: describe.c:134 msgid "List of aggregate functions" msgstr "Перелік агрегатних функцій" -#: describe.c:152 +#: describe.c:159 #, c-format msgid "The server (version %s) does not support access methods." msgstr "Сервер (версія %s) не підтримує методи доступу." -#: describe.c:167 +#: describe.c:174 msgid "Index" msgstr "Індекс" -#: describe.c:168 describe.c:3964 describe.c:4180 describe.c:5942 +#: describe.c:175 describe.c:4066 describe.c:4335 describe.c:6118 msgid "Table" msgstr "Таблиця" -#: describe.c:176 describe.c:5742 +#: describe.c:183 describe.c:5918 msgid "Handler" msgstr "Обробник" -#: describe.c:199 +#: describe.c:206 msgid "List of access methods" msgstr "Список методів доступу" -#: describe.c:228 describe.c:401 describe.c:651 describe.c:925 describe.c:1189 -#: describe.c:3957 describe.c:4156 describe.c:4320 describe.c:4647 -#: describe.c:5039 describe.c:5741 describe.c:5811 describe.c:6244 -#: describe.c:6431 describe.c:6552 describe.c:6722 describe.c:6807 -#: describe.c:7066 +#: describe.c:235 describe.c:416 describe.c:675 describe.c:960 describe.c:1230 +#: describe.c:4059 describe.c:4311 describe.c:4485 describe.c:4812 +#: describe.c:5215 describe.c:5917 describe.c:5987 describe.c:6423 +#: describe.c:6644 describe.c:6769 describe.c:6939 describe.c:7024 +#: describe.c:7292 msgid "Owner" msgstr "Власник" -#: describe.c:229 +#: describe.c:236 msgid "Location" msgstr "Розташування" -#: describe.c:239 describe.c:3517 describe.c:3857 -msgid "Options" -msgstr "Параметри" - -#: describe.c:240 describe.c:649 describe.c:970 describe.c:3999 +#: describe.c:247 describe.c:673 describe.c:1009 describe.c:4105 msgid "Size" msgstr "Розмір" -#: describe.c:263 +#: describe.c:270 msgid "List of tablespaces" msgstr "Список табличних просторів" -#: describe.c:308 +#: describe.c:316 #, c-format -msgid "\\df only takes [anptwS+] as options" -msgstr "\\df приймає в якості параметрів тільки [anptwS+]" +msgid "\\df only takes [%s] as options" +msgstr "\\df приймає лише [%s] як параметри" -#: describe.c:316 +#: describe.c:324 #, c-format msgid "\\df does not take a \"%c\" option with server version %s" msgstr "\\df не приймає параметр \"%c\" із сервером версії %s" #. translator: "agg" is short for "aggregate" -#: describe.c:351 describe.c:369 +#: describe.c:359 describe.c:377 msgid "agg" msgstr "агр." -#: describe.c:352 describe.c:370 +#: describe.c:360 describe.c:378 msgid "window" msgstr "вікно" -#: describe.c:353 +#: describe.c:361 msgid "proc" msgstr "проц" -#: describe.c:354 describe.c:372 +#: describe.c:362 describe.c:380 msgid "func" msgstr "функ" -#: describe.c:371 describe.c:1397 +#: describe.c:379 describe.c:1440 msgid "trigger" msgstr "тригер" -#: describe.c:383 +#: describe.c:394 msgid "immutable" msgstr "постійна" -#: describe.c:384 +#: describe.c:395 msgid "stable" msgstr "стабільна" -#: describe.c:385 +#: describe.c:396 msgid "volatile" msgstr "мінлива" -#: describe.c:386 +#: describe.c:397 msgid "Volatility" msgstr "Мінливість" -#: describe.c:394 +#: describe.c:408 msgid "restricted" msgstr "обмежений" -#: describe.c:395 +#: describe.c:409 msgid "safe" msgstr "безпечний" -#: describe.c:396 +#: describe.c:410 msgid "unsafe" msgstr "небезпечний" -#: describe.c:397 +#: describe.c:411 msgid "Parallel" msgstr "Паралельність" -#: describe.c:402 +#: describe.c:417 msgid "definer" msgstr "визначник" -#: describe.c:403 +#: describe.c:418 msgid "invoker" msgstr "викликач" -#: describe.c:404 +#: describe.c:419 msgid "Security" msgstr "Безпека" -#: describe.c:409 +#: describe.c:420 describe.c:838 describe.c:1779 describe.c:1803 +#: describe.c:1932 describe.c:4652 describe.c:4993 describe.c:5002 +#: describe.c:5140 describe.c:5145 describe.c:6927 describe.c:7126 +msgid "yes" +msgstr "так" + +#: describe.c:421 describe.c:839 describe.c:1780 describe.c:1804 +#: describe.c:1933 describe.c:4652 describe.c:4990 describe.c:5003 +#: describe.c:5140 describe.c:6928 describe.c:7127 +msgid "no" +msgstr "ні" + +#: describe.c:422 describe.c:840 describe.c:5004 describe.c:7128 +msgid "Leakproof?" +msgstr "Захищено від витоків?" + +#: describe.c:427 msgid "Language" msgstr "Мова" -#: describe.c:412 describe.c:648 +#: describe.c:430 describe.c:672 msgid "Internal name" msgstr "Внутрішнє назва" -#: describe.c:585 +#: describe.c:609 msgid "List of functions" msgstr "Список функцій" -#: describe.c:650 +#: describe.c:674 msgid "Elements" msgstr "Елементи" -#: describe.c:701 +#: describe.c:725 msgid "List of data types" msgstr "Список типів даних" -#: describe.c:804 +#: describe.c:829 msgid "Left arg type" msgstr "Тип лівого аргумента" -#: describe.c:805 +#: describe.c:830 msgid "Right arg type" msgstr "Тип правого аргумента" -#: describe.c:806 +#: describe.c:831 msgid "Result type" msgstr "Результуючий тип" -#: describe.c:811 describe.c:4653 describe.c:4817 describe.c:5316 -#: describe.c:6996 describe.c:7000 +#: describe.c:837 describe.c:4818 describe.c:4982 describe.c:5492 +#: describe.c:7222 describe.c:7226 msgid "Function" msgstr "Функція" -#: describe.c:891 +#: describe.c:924 msgid "List of operators" msgstr "Список операторів" -#: describe.c:926 +#: describe.c:961 msgid "Encoding" msgstr "Кодування" -#: describe.c:930 describe.c:934 +#: describe.c:969 describe.c:973 msgid "Locale Provider" msgstr "Постачальник локалі" -#: describe.c:938 describe.c:4936 +#: describe.c:977 describe.c:5112 msgid "Collate" msgstr "Порядок сортування" -#: describe.c:939 describe.c:4937 +#: describe.c:978 describe.c:5113 msgid "Ctype" msgstr "Ctype" -#: describe.c:943 describe.c:947 describe.c:951 describe.c:4942 describe.c:4946 -#: describe.c:4950 +#: describe.c:982 describe.c:986 describe.c:990 describe.c:5118 describe.c:5122 +#: describe.c:5126 msgid "Locale" msgstr "Локаль" -#: describe.c:955 describe.c:959 describe.c:4955 describe.c:4959 +#: describe.c:994 describe.c:998 describe.c:5131 describe.c:5135 msgid "ICU Rules" msgstr "Правила ICU" -#: describe.c:971 +#: describe.c:1010 msgid "Tablespace" msgstr "Табличний простір" -#: describe.c:996 +#: describe.c:1035 msgid "List of databases" msgstr "Список баз даних" -#: describe.c:1037 describe.c:1192 describe.c:3947 +#: describe.c:1076 describe.c:1233 describe.c:4049 msgid "table" msgstr "таблиця" -#: describe.c:1038 describe.c:3948 +#: describe.c:1077 describe.c:4050 msgid "view" msgstr "подання" -#: describe.c:1039 describe.c:3949 +#: describe.c:1078 describe.c:4051 msgid "materialized view" msgstr "матеріалізоване подання" -#: describe.c:1040 describe.c:1194 describe.c:3951 +#: describe.c:1079 describe.c:1235 describe.c:4053 msgid "sequence" msgstr "послідовність" -#: describe.c:1041 describe.c:3953 +#: describe.c:1080 describe.c:4055 msgid "foreign table" msgstr "зовнішня таблиця" -#: describe.c:1042 describe.c:3954 describe.c:4165 +#: describe.c:1081 describe.c:4056 describe.c:4320 msgid "partitioned table" msgstr "секційна таблиця" -#: describe.c:1058 +#: describe.c:1097 msgid "Column privileges" msgstr "Права для стовпців" -#: describe.c:1089 describe.c:1123 +#: describe.c:1128 describe.c:1162 msgid "Policies" msgstr "Політики" -#: describe.c:1151 describe.c:4570 describe.c:6667 +#: describe.c:1190 describe.c:4735 describe.c:6884 msgid "Access privileges" msgstr "Права доступу" -#: describe.c:1196 +#: describe.c:1237 msgid "function" msgstr "функція" -#: describe.c:1198 +#: describe.c:1239 msgid "type" msgstr "тип" -#: describe.c:1200 +#: describe.c:1241 msgid "schema" msgstr "схема" -#: describe.c:1222 +#: describe.c:1243 +msgid "large object" +msgstr "великий об'єкт" + +#: describe.c:1265 msgid "Default access privileges" msgstr "Права доступу за замовчуванням" -#: describe.c:1266 +#: describe.c:1309 msgid "Object" msgstr "Об'єкт" -#: describe.c:1280 +#: describe.c:1323 msgid "table constraint" msgstr "обмеження таблиці" -#: describe.c:1304 +#: describe.c:1347 msgid "domain constraint" msgstr "обмеження домену" -#: describe.c:1328 +#: describe.c:1371 msgid "operator class" msgstr "клас операторів" -#: describe.c:1352 +#: describe.c:1395 msgid "operator family" msgstr "сімейство операторів" -#: describe.c:1375 +#: describe.c:1418 msgid "rule" msgstr "правило" -#: describe.c:1420 +#: describe.c:1463 msgid "Object descriptions" msgstr "Опис об'єкту" -#: describe.c:1485 describe.c:4072 +#: describe.c:1528 #, c-format msgid "Did not find any relation named \"%s\"." msgstr "Не знайдено жодного відношення під назвою \"%s\"." -#: describe.c:1488 describe.c:4075 +#: describe.c:1531 describe.c:4207 #, c-format msgid "Did not find any relations." msgstr "Не знайдено жодного відношення." -#: describe.c:1684 +#: describe.c:1727 #, c-format msgid "Did not find any relation with OID %s." msgstr "Не знайдено жодного відношення з OID %s." -#: describe.c:1732 describe.c:1756 +#: describe.c:1775 describe.c:1799 msgid "Start" msgstr "Початок" -#: describe.c:1733 describe.c:1757 +#: describe.c:1776 describe.c:1800 msgid "Minimum" msgstr "Мінімум" -#: describe.c:1734 describe.c:1758 +#: describe.c:1777 describe.c:1801 msgid "Maximum" msgstr "Максимум" -#: describe.c:1735 describe.c:1759 +#: describe.c:1778 describe.c:1802 msgid "Increment" msgstr "Приріст" -#: describe.c:1736 describe.c:1760 describe.c:1889 describe.c:4487 -#: describe.c:4828 describe.c:4964 describe.c:4969 describe.c:6710 -msgid "yes" -msgstr "так" - -#: describe.c:1737 describe.c:1761 describe.c:1890 describe.c:4487 -#: describe.c:4825 describe.c:4964 describe.c:6711 -msgid "no" -msgstr "ні" - -#: describe.c:1738 describe.c:1762 +#: describe.c:1781 describe.c:1805 msgid "Cycles?" msgstr "Цикли?" -#: describe.c:1739 describe.c:1763 +#: describe.c:1782 describe.c:1806 msgid "Cache" msgstr "Кеш" -#: describe.c:1804 +#: describe.c:1847 #, c-format msgid "Owned by: %s" msgstr "Власник: %s" -#: describe.c:1808 +#: describe.c:1851 #, c-format msgid "Sequence for identity column: %s" msgstr "Послідовність для стовпця identity: %s" -#: describe.c:1816 +#: describe.c:1859 #, c-format msgid "Unlogged sequence \"%s.%s\"" msgstr "Послідовність без журналювання \"%s.%s\"" -#: describe.c:1819 +#: describe.c:1862 #, c-format msgid "Sequence \"%s.%s\"" msgstr "Послідовність \"%s.%s\"" -#: describe.c:1962 +#: describe.c:2005 #, c-format msgid "Unlogged table \"%s.%s\"" msgstr "Таблиця без журналювання \"%s.%s\"" -#: describe.c:1965 +#: describe.c:2008 #, c-format msgid "Table \"%s.%s\"" msgstr "Таблиця \"%s.%s\"" -#: describe.c:1969 +#: describe.c:2012 #, c-format msgid "View \"%s.%s\"" msgstr "Подання \"%s.%s\"" -#: describe.c:1974 -#, c-format -msgid "Unlogged materialized view \"%s.%s\"" -msgstr "Матеріалізоване подання без журналювання \"%s.%s\"" - -#: describe.c:1977 +#: describe.c:2016 #, c-format msgid "Materialized view \"%s.%s\"" msgstr "Матеріалізоване подання \"%s.%s\"" -#: describe.c:1982 +#: describe.c:2021 #, c-format msgid "Unlogged index \"%s.%s\"" msgstr "Індекс без журналювання \"%s.%s\"" -#: describe.c:1985 +#: describe.c:2024 #, c-format msgid "Index \"%s.%s\"" msgstr "Індекс \"%s.%s\"" -#: describe.c:1990 +#: describe.c:2029 #, c-format msgid "Unlogged partitioned index \"%s.%s\"" msgstr "Секційний індекс без журналювання \"%s.%s\"" -#: describe.c:1993 +#: describe.c:2032 #, c-format msgid "Partitioned index \"%s.%s\"" msgstr "Секційний індекс \"%s.%s\"" -#: describe.c:1997 +#: describe.c:2036 #, c-format msgid "TOAST table \"%s.%s\"" msgstr "Таблиця TOAST \"%s.%s\"" -#: describe.c:2001 +#: describe.c:2040 #, c-format msgid "Composite type \"%s.%s\"" msgstr "Композитний тип \"%s.%s\"" -#: describe.c:2005 +#: describe.c:2044 #, c-format msgid "Foreign table \"%s.%s\"" msgstr "Зовнішня таблиця \"%s.%s\"" -#: describe.c:2010 +#: describe.c:2049 #, c-format msgid "Unlogged partitioned table \"%s.%s\"" msgstr "Секційна таблиця без журналювання \"%s.%s\"" -#: describe.c:2013 +#: describe.c:2052 #, c-format msgid "Partitioned table \"%s.%s\"" msgstr "Секційна таблиця \"%s.%s\"" -#: describe.c:2029 describe.c:4405 +#: describe.c:2068 describe.c:4570 msgid "Collation" msgstr "Сортування" -#: describe.c:2030 describe.c:4406 +#: describe.c:2069 describe.c:4571 msgid "Nullable" msgstr "Обнуляється" -#: describe.c:2031 describe.c:4407 +#: describe.c:2070 describe.c:4572 msgid "Default" msgstr "За замовчуванням" -#: describe.c:2034 +#: describe.c:2073 msgid "Key?" msgstr "Ключ?" -#: describe.c:2036 describe.c:4723 describe.c:4734 +#: describe.c:2075 describe.c:4888 describe.c:4899 msgid "Definition" msgstr "Визначення" -#: describe.c:2038 describe.c:5757 describe.c:5831 describe.c:5896 -#: describe.c:5954 +#: describe.c:2077 describe.c:5933 describe.c:6007 describe.c:6072 +#: describe.c:6130 msgid "FDW options" msgstr "Налаштування FDW" -#: describe.c:2040 +#: describe.c:2079 msgid "Storage" msgstr "Сховище" -#: describe.c:2042 +#: describe.c:2081 msgid "Compression" msgstr "Стискання" -#: describe.c:2044 +#: describe.c:2083 msgid "Stats target" msgstr "Статистична ціль" -#: describe.c:2180 +#: describe.c:2225 #, c-format msgid "Partition of: %s %s%s" msgstr "Розділ: %s %s%s" -#: describe.c:2193 +#: describe.c:2238 msgid "No partition constraint" msgstr "Відсутнє розділове обмеження" -#: describe.c:2195 +#: describe.c:2240 #, c-format msgid "Partition constraint: %s" msgstr "Обмеження секції: %s" -#: describe.c:2219 +#: describe.c:2264 #, c-format msgid "Partition key: %s" msgstr "Ключ розділу: %s" -#: describe.c:2245 +#: describe.c:2290 #, c-format msgid "Owning table: \"%s.%s\"" msgstr "Таблиця, що володіє: \"%s.%s\"" -#: describe.c:2314 +#: describe.c:2363 msgid "primary key, " msgstr "первинний ключ," -#: describe.c:2317 +#: describe.c:2366 msgid "unique" msgstr "унікальний" -#: describe.c:2319 +#: describe.c:2368 msgid " nulls not distinct" msgstr " nulls не відрізняються" -#: describe.c:2320 +#: describe.c:2369 msgid ", " msgstr ", " -#: describe.c:2327 +#: describe.c:2376 #, c-format msgid "for table \"%s.%s\"" msgstr "для таблиці \"%s.%s\"" -#: describe.c:2331 +#: describe.c:2380 #, c-format msgid ", predicate (%s)" msgstr ", предикат (%s)" -#: describe.c:2334 +#: describe.c:2383 msgid ", clustered" msgstr ", кластеризовано" -#: describe.c:2337 +#: describe.c:2386 msgid ", invalid" msgstr ", недійсний" -#: describe.c:2340 +#: describe.c:2389 msgid ", deferrable" msgstr ", відтермінований" -#: describe.c:2343 +#: describe.c:2392 msgid ", initially deferred" msgstr ", від початку відтермінований" -#: describe.c:2346 +#: describe.c:2395 msgid ", replica identity" msgstr ", ідентичність репліки" -#: describe.c:2400 +#: describe.c:2456 msgid "Indexes:" msgstr "Індекси:" -#: describe.c:2483 +#: describe.c:2544 msgid "Check constraints:" msgstr "Обмеження перевірки:" -#: describe.c:2551 +#: describe.c:2605 msgid "Foreign-key constraints:" msgstr "Обмеження зовнішнього ключа:" -#: describe.c:2614 +#: describe.c:2664 msgid "Referenced by:" msgstr "Посилання ззовні:" -#: describe.c:2664 +#: describe.c:2713 msgid "Policies:" msgstr "Політики:" -#: describe.c:2667 +#: describe.c:2716 msgid "Policies (forced row security enabled):" msgstr "Політики (посилений захист рядків активовано):" -#: describe.c:2670 +#: describe.c:2719 msgid "Policies (row security enabled): (none)" msgstr "Політики (захист рядків ввімкнуто): (ні)" -#: describe.c:2673 +#: describe.c:2722 msgid "Policies (forced row security enabled): (none)" msgstr "Політики (посилений захист рядків ввімкнуто): (ні)" -#: describe.c:2676 +#: describe.c:2725 msgid "Policies (row security disabled):" msgstr "Політики (захист рядків вимкнуто):" -#: describe.c:2736 describe.c:2841 +#: describe.c:2785 describe.c:2890 msgid "Statistics objects:" msgstr "Об'єкти статистики:" -#: describe.c:2943 describe.c:3096 +#: describe.c:2992 describe.c:3192 msgid "Rules:" msgstr "Правила:" -#: describe.c:2946 +#: describe.c:2995 msgid "Disabled rules:" msgstr "Вимкнені правила:" -#: describe.c:2949 +#: describe.c:2998 msgid "Rules firing always:" msgstr "Правила, що завжди працюють:" -#: describe.c:2952 +#: describe.c:3001 msgid "Rules firing on replica only:" msgstr "Правила, що працюють тільки на репліці:" -#: describe.c:3031 describe.c:5100 +#: describe.c:3080 describe.c:5276 msgid "Publications:" msgstr "Публікації:" -#: describe.c:3079 +#: describe.c:3127 +msgid "Not-null constraints:" +msgstr "Обмеження не-NULL:" + +#: describe.c:3141 +msgid " (local, inherited)" +msgstr " (локально, успадковано)" + +#: describe.c:3142 +msgid " (inherited)" +msgstr " (успадковано)" + +#: describe.c:3175 msgid "View definition:" msgstr "Визначення подання:" -#: describe.c:3242 +#: describe.c:3338 msgid "Triggers:" msgstr "Тригери:" -#: describe.c:3245 +#: describe.c:3341 msgid "Disabled user triggers:" msgstr "Вимкнені користувацькі тригери:" -#: describe.c:3248 +#: describe.c:3344 msgid "Disabled internal triggers:" msgstr "Вимкнені внутрішні тригери:" -#: describe.c:3251 +#: describe.c:3347 msgid "Triggers firing always:" msgstr "Тригери, що завжди працюють:" -#: describe.c:3254 +#: describe.c:3350 msgid "Triggers firing on replica only:" msgstr "Тригери, що працюють тільки на репліці:" -#: describe.c:3325 +#: describe.c:3421 #, c-format msgid "Server: %s" msgstr "Сервер: %s" -#: describe.c:3333 +#: describe.c:3429 #, c-format msgid "FDW options: (%s)" msgstr "Налаштування FDW: (%s)" -#: describe.c:3354 +#: describe.c:3450 msgid "Inherits" msgstr "Успадковує" -#: describe.c:3419 +#: describe.c:3515 #, c-format msgid "Number of partitions: %d" msgstr "Число секцій: %d" -#: describe.c:3428 +#: describe.c:3524 #, c-format msgid "Number of partitions: %d (Use \\d+ to list them.)" msgstr "Кількість розділів: %d (\\d+ для списку)" -#: describe.c:3430 +#: describe.c:3526 #, c-format msgid "Number of child tables: %d (Use \\d+ to list them.)" msgstr "Кількість дочірніх таблиць: %d (\\d+ для списку)" -#: describe.c:3437 +#: describe.c:3533 msgid "Child tables" msgstr "Дочірні таблиці" -#: describe.c:3437 +#: describe.c:3533 msgid "Partitions" msgstr "Розділи" -#: describe.c:3470 +#: describe.c:3566 #, c-format msgid "Typed table of type: %s" msgstr "Типізована таблиця типу: %s" -#: describe.c:3486 +#: describe.c:3584 msgid "Replica Identity" msgstr "Ідентичність репліки" -#: describe.c:3499 +#: describe.c:3597 msgid "Has OIDs: yes" msgstr "Має OIDs: так" -#: describe.c:3508 +#: describe.c:3606 #, c-format msgid "Access method: %s" msgstr "Метод доступу: %s" -#: describe.c:3585 +#: describe.c:3683 #, c-format msgid "Tablespace: \"%s\"" msgstr "Табличний простір: \"%s\"" #. translator: before this string there's an index description like #. '"foo_pkey" PRIMARY KEY, btree (a)' -#: describe.c:3597 +#: describe.c:3695 #, c-format msgid ", tablespace \"%s\"" msgstr ", табличний простір \"%s\"" -#: describe.c:3670 +#: describe.c:3768 msgid "List of roles" msgstr "Список ролей" -#: describe.c:3672 describe.c:3840 +#: describe.c:3770 describe.c:3938 msgid "Role name" msgstr "Ім'я ролі" -#: describe.c:3673 +#: describe.c:3771 msgid "Attributes" msgstr "Атрибути" -#: describe.c:3684 +#: describe.c:3782 msgid "Superuser" msgstr "Суперкористувач" -#: describe.c:3687 +#: describe.c:3785 msgid "No inheritance" msgstr "Без успадкування" -#: describe.c:3690 +#: describe.c:3788 msgid "Create role" msgstr "Створити роль" -#: describe.c:3693 +#: describe.c:3791 msgid "Create DB" msgstr "Створити базу даних" -#: describe.c:3696 +#: describe.c:3794 msgid "Cannot login" msgstr "Не може увійти" -#: describe.c:3699 +#: describe.c:3797 msgid "Replication" msgstr "Реплікація" -#: describe.c:3703 +#: describe.c:3801 msgid "Bypass RLS" msgstr "Обхід RLC" -#: describe.c:3712 +#: describe.c:3810 msgid "No connections" msgstr "Без підключень" -#: describe.c:3714 +#: describe.c:3812 #, c-format msgid "%d connection" msgid_plural "%d connections" @@ -1829,711 +1956,792 @@ msgstr[1] "%d підключення" msgstr[2] "%d підключень" msgstr[3] "%d підключення" -#: describe.c:3724 +#: describe.c:3822 msgid "Password valid until " msgstr "Пароль дійнсий до" -#: describe.c:3775 +#: describe.c:3873 msgid "Role" msgstr "Роль" -#: describe.c:3776 -msgid "Database" -msgstr "База даних" - -#: describe.c:3777 +#: describe.c:3875 msgid "Settings" msgstr "Параметри" -#: describe.c:3801 +#: describe.c:3899 #, c-format msgid "Did not find any settings for role \"%s\" and database \"%s\"." msgstr "Не знайдено жодного параметра для ролі \"%s\" і бази даних \"%s\"." -#: describe.c:3804 +#: describe.c:3902 #, c-format msgid "Did not find any settings for role \"%s\"." msgstr "Не знайдено жодного параметру для ролі \"%s\"." -#: describe.c:3807 +#: describe.c:3905 #, c-format msgid "Did not find any settings." msgstr "Не знайдено жодного параметру." -#: describe.c:3811 +#: describe.c:3909 msgid "List of settings" msgstr "Список параметрів" -#: describe.c:3841 +#: describe.c:3939 msgid "Member of" msgstr "Член" -#: describe.c:3858 +#: describe.c:3956 msgid "Grantor" msgstr "Надавач" -#: describe.c:3884 +#: describe.c:3982 msgid "List of role grants" msgstr "Перелік наданих ролей" -#: describe.c:3950 +#: describe.c:4052 msgid "index" msgstr "індекс" -#: describe.c:3952 +#: describe.c:4054 msgid "TOAST table" msgstr "Таблиця TOAST" -#: describe.c:3955 describe.c:4166 +#: describe.c:4057 describe.c:4321 msgid "partitioned index" msgstr "секційний індекс" -#: describe.c:3975 +#: describe.c:4081 msgid "permanent" msgstr "постійна" -#: describe.c:3976 +#: describe.c:4082 msgid "temporary" msgstr "тимчасова" -#: describe.c:3977 +#: describe.c:4083 msgid "unlogged" msgstr "нежурнальована" -#: describe.c:3978 +#: describe.c:4084 msgid "Persistence" msgstr "Стійкість" -#: describe.c:3994 +#: describe.c:4100 describe.c:4344 msgid "Access method" msgstr "Метод доступу" -#: describe.c:4079 +#: describe.c:4180 +#, c-format +msgid "Did not find any relations named \"%s\"." +msgstr "Не знайдено жодного відношення з назвою \"%s\"." + +#: describe.c:4183 +#, c-format +msgid "Did not find any tables named \"%s\"." +msgstr "Не знайдено жодної таблиці з назвою \"%s\"." + +#: describe.c:4186 +#, c-format +msgid "Did not find any indexes named \"%s\"." +msgstr "Не знайдено жодного індексу з назвою \"%s\"." + +#: describe.c:4189 +#, c-format +msgid "Did not find any views named \"%s\"." +msgstr "Не знайдено жодного подання з назвою \"%s\"." + +#: describe.c:4192 +#, c-format +msgid "Did not find any materialized views named \"%s\"." +msgstr "Не знайдено жодного матеріалізованого подання з назвою \"%s\"." + +#: describe.c:4195 +#, c-format +msgid "Did not find any sequences named \"%s\"." +msgstr "Не знайдено жодної послідовності з назвою \"%s\"." + +#: describe.c:4198 +#, c-format +msgid "Did not find any foreign tables named \"%s\"." +msgstr "Не знайдено жодної сторонньої таблиці з назвою \"%s\"." + +#: describe.c:4209 +#, c-format +msgid "Did not find any tables." +msgstr "Не знайдено жодної таблиці." + +#: describe.c:4211 +#, c-format +msgid "Did not find any indexes." +msgstr "Не знайдено жодного індексу." + +#: describe.c:4213 +#, c-format +msgid "Did not find any views." +msgstr "Не знайдено жодного подання." + +#: describe.c:4215 +#, c-format +msgid "Did not find any materialized views." +msgstr "Не знайдено жодного матеріалізованого подання." + +#: describe.c:4217 +#, c-format +msgid "Did not find any sequences." +msgstr "Не знайдено жодної послідовності." + +#: describe.c:4219 +#, c-format +msgid "Did not find any foreign tables." +msgstr "Не знайдено жодної сторонньої таблиці." + +#: describe.c:4227 msgid "List of relations" msgstr "Список відношень" -#: describe.c:4127 +#: describe.c:4228 +msgid "List of tables" +msgstr "Список таблиць" + +#: describe.c:4229 +msgid "List of indexes" +msgstr "Список індексів" + +#: describe.c:4230 +msgid "List of views" +msgstr "Список виглядів" + +#: describe.c:4231 +msgid "List of materialized views" +msgstr "Список матеріалізованих подань" + +#: describe.c:4232 +msgid "List of sequences" +msgstr "Список послідовностей" + +#: describe.c:4233 describe.c:6163 +msgid "List of foreign tables" +msgstr "Список сторонніх таблиць" + +#: describe.c:4282 #, c-format msgid "The server (version %s) does not support declarative table partitioning." msgstr "Сервер (версія %s) не підтримує декларативне секціонування таблиць." -#: describe.c:4138 +#: describe.c:4293 msgid "List of partitioned indexes" msgstr "Список секційних індексів" -#: describe.c:4140 +#: describe.c:4295 msgid "List of partitioned tables" msgstr "Список секційних таблиць" -#: describe.c:4144 +#: describe.c:4299 msgid "List of partitioned relations" msgstr "Список секційних відношень" -#: describe.c:4175 +#: describe.c:4330 msgid "Parent name" msgstr "Батьківська назва" -#: describe.c:4188 +#: describe.c:4350 msgid "Leaf partition size" msgstr "Розмір дочірньої секції" -#: describe.c:4191 describe.c:4197 +#: describe.c:4353 describe.c:4359 msgid "Total size" msgstr "Загальний розмір" -#: describe.c:4321 +#: describe.c:4486 msgid "Trusted" msgstr "Надійний" -#: describe.c:4330 +#: describe.c:4495 msgid "Internal language" msgstr "Внутрішня мова" -#: describe.c:4331 +#: describe.c:4496 msgid "Call handler" msgstr "Обробник виклику" -#: describe.c:4332 describe.c:5743 +#: describe.c:4497 describe.c:5919 msgid "Validator" msgstr "Функція перевірки" -#: describe.c:4333 +#: describe.c:4498 msgid "Inline handler" msgstr "Оброблювач впровадженого коду" -#: describe.c:4367 +#: describe.c:4532 msgid "List of languages" msgstr "Список мов" -#: describe.c:4408 +#: describe.c:4573 msgid "Check" msgstr "Перевірка" -#: describe.c:4451 +#: describe.c:4616 msgid "List of domains" msgstr "Список доменів" -#: describe.c:4485 +#: describe.c:4650 msgid "Source" msgstr "Джерело" -#: describe.c:4486 +#: describe.c:4651 msgid "Destination" msgstr "Призначення" -#: describe.c:4488 describe.c:6712 +#: describe.c:4653 describe.c:6929 msgid "Default?" msgstr "За замовчуванням?" -#: describe.c:4529 +#: describe.c:4694 msgid "List of conversions" msgstr "Список перетворень" -#: describe.c:4557 -msgid "Parameter" -msgstr "Параметр" - -#: describe.c:4558 -msgid "Value" -msgstr "Значення" - -#: describe.c:4565 +#: describe.c:4730 msgid "Context" msgstr "Контекст" -#: describe.c:4597 +#: describe.c:4762 msgid "List of configuration parameters" msgstr "Список параметрів конфігурації" -#: describe.c:4599 +#: describe.c:4764 msgid "List of non-default configuration parameters" msgstr "Список параметрів конфігурації не за замовчуванням" -#: describe.c:4626 +#: describe.c:4791 #, c-format msgid "The server (version %s) does not support event triggers." msgstr "Сервер (версія %s) не підтримує тригери подій." -#: describe.c:4646 +#: describe.c:4811 msgid "Event" msgstr "Подія" -#: describe.c:4648 +#: describe.c:4813 msgid "enabled" msgstr "увімкнено" -#: describe.c:4649 +#: describe.c:4814 msgid "replica" msgstr "репліка" -#: describe.c:4650 +#: describe.c:4815 msgid "always" msgstr "завжди" -#: describe.c:4651 +#: describe.c:4816 msgid "disabled" msgstr "вимкнено" -#: describe.c:4652 describe.c:6553 +#: describe.c:4817 describe.c:6770 msgid "Enabled" msgstr "Увімкнено" -#: describe.c:4654 +#: describe.c:4819 msgid "Tags" msgstr "Теги" -#: describe.c:4677 +#: describe.c:4842 msgid "List of event triggers" msgstr "Список тригерів подій" -#: describe.c:4704 +#: describe.c:4869 #, c-format msgid "The server (version %s) does not support extended statistics." msgstr "Сервер (версія %s) не підтримує розширену статистику." -#: describe.c:4741 +#: describe.c:4906 msgid "Ndistinct" msgstr "Ndistinct" -#: describe.c:4742 +#: describe.c:4907 msgid "Dependencies" msgstr "Залежності" -#: describe.c:4752 +#: describe.c:4917 msgid "MCV" msgstr "MCV" -#: describe.c:4775 +#: describe.c:4940 msgid "List of extended statistics" msgstr "Список розширеної статистики" -#: describe.c:4802 +#: describe.c:4967 msgid "Source type" msgstr "Початковий тип" -#: describe.c:4803 +#: describe.c:4968 msgid "Target type" msgstr "Тип цілі" -#: describe.c:4827 +#: describe.c:4992 msgid "in assignment" msgstr "у призначенні" -#: describe.c:4829 +#: describe.c:4994 msgid "Implicit?" msgstr "Приховане?" -#: describe.c:4887 +#: describe.c:5058 msgid "List of casts" msgstr "Список приведення типів" -#: describe.c:4927 describe.c:4931 +#: describe.c:5103 describe.c:5107 msgid "Provider" msgstr "Постачальник" -#: describe.c:4965 describe.c:4970 +#: describe.c:5141 describe.c:5146 msgid "Deterministic?" msgstr "Детермінований?" -#: describe.c:5009 +#: describe.c:5185 msgid "List of collations" msgstr "Список правил сортування" -#: describe.c:5070 +#: describe.c:5246 msgid "List of schemas" msgstr "Список схем" -#: describe.c:5186 +#: describe.c:5362 msgid "List of text search parsers" msgstr "Список парсерів текстового пошуку" -#: describe.c:5236 +#: describe.c:5412 #, c-format msgid "Did not find any text search parser named \"%s\"." msgstr "Не знайдено жодного парсера текстового пошуку \"%s\"." -#: describe.c:5239 +#: describe.c:5415 #, c-format msgid "Did not find any text search parsers." msgstr "Не знайдено жодного парсера текстового пошуку." -#: describe.c:5314 +#: describe.c:5490 msgid "Start parse" msgstr "Почати розбір" -#: describe.c:5315 +#: describe.c:5491 msgid "Method" msgstr "Метод" -#: describe.c:5319 +#: describe.c:5495 msgid "Get next token" msgstr "Отримати наступний токен" -#: describe.c:5321 +#: describe.c:5497 msgid "End parse" msgstr "Закінчити розбір" -#: describe.c:5323 +#: describe.c:5499 msgid "Get headline" msgstr "Отримати заголовок" -#: describe.c:5325 +#: describe.c:5501 msgid "Get token types" msgstr "Отримати типи токенів" -#: describe.c:5335 +#: describe.c:5511 #, c-format msgid "Text search parser \"%s.%s\"" msgstr "Парсер текстового пошуку \"%s.%s\"" -#: describe.c:5338 +#: describe.c:5514 #, c-format msgid "Text search parser \"%s\"" msgstr "Парсер текстового пошуку \"%s\"" -#: describe.c:5357 +#: describe.c:5533 msgid "Token name" msgstr "Ім'я токену" -#: describe.c:5370 +#: describe.c:5546 #, c-format msgid "Token types for parser \"%s.%s\"" msgstr "Типи токенів для парсера \"%s.%s\"" -#: describe.c:5373 +#: describe.c:5549 #, c-format msgid "Token types for parser \"%s\"" msgstr "Типи токенів для парсера \"%s\"" -#: describe.c:5417 +#: describe.c:5593 msgid "Template" msgstr "Шаблон" -#: describe.c:5418 +#: describe.c:5594 msgid "Init options" msgstr "Параметри ініціалізації" -#: describe.c:5444 +#: describe.c:5620 msgid "List of text search dictionaries" msgstr "Список словників текстового пошуку" -#: describe.c:5477 +#: describe.c:5653 msgid "Init" msgstr "Ініціалізація" -#: describe.c:5478 +#: describe.c:5654 msgid "Lexize" msgstr "Виділення лексем" -#: describe.c:5509 +#: describe.c:5685 msgid "List of text search templates" msgstr "Список шаблонів текстового пошуку" -#: describe.c:5563 +#: describe.c:5739 msgid "List of text search configurations" msgstr "Список конфігурацій текстового пошуку" -#: describe.c:5614 +#: describe.c:5790 #, c-format msgid "Did not find any text search configuration named \"%s\"." msgstr "Не знайдено жодної конфігурації текстового пошуку під назвою \"%s\"." -#: describe.c:5617 +#: describe.c:5793 #, c-format msgid "Did not find any text search configurations." msgstr "Не знайдено жодної конфігурації текствого пошуку." -#: describe.c:5683 +#: describe.c:5859 msgid "Token" msgstr "Токен" -#: describe.c:5684 +#: describe.c:5860 msgid "Dictionaries" msgstr "Словники" -#: describe.c:5695 +#: describe.c:5871 #, c-format msgid "Text search configuration \"%s.%s\"" msgstr "Конфігурація пошуку тексту \"%s.%s\"" -#: describe.c:5698 +#: describe.c:5874 #, c-format msgid "Text search configuration \"%s\"" msgstr "Конфігурація пошуку тексту \"%s\"" -#: describe.c:5702 +#: describe.c:5878 #, c-format msgid "\n" "Parser: \"%s.%s\"" msgstr "\n" "Парсер: \"%s.%s\"" -#: describe.c:5705 +#: describe.c:5881 #, c-format msgid "\n" "Parser: \"%s\"" msgstr "\n" "Парсер: \"%s\"" -#: describe.c:5784 +#: describe.c:5960 msgid "List of foreign-data wrappers" msgstr "Список джерел сторонніх даних" -#: describe.c:5812 +#: describe.c:5988 msgid "Foreign-data wrapper" msgstr "Джерело сторонніх даних" -#: describe.c:5830 describe.c:6017 +#: describe.c:6006 describe.c:6195 msgid "Version" msgstr "Версія" -#: describe.c:5860 +#: describe.c:6036 msgid "List of foreign servers" msgstr "Список сторонніх серверів" -#: describe.c:5885 describe.c:5943 +#: describe.c:6061 describe.c:6119 msgid "Server" msgstr "Сервер" -#: describe.c:5886 +#: describe.c:6062 msgid "User name" msgstr "Ім'я користувача" -#: describe.c:5915 +#: describe.c:6091 msgid "List of user mappings" msgstr "Список зіставлень користувачів" -#: describe.c:5987 -msgid "List of foreign tables" -msgstr "Список сторонніх таблиць" +#: describe.c:6196 +msgid "Default version" +msgstr "Версія за замовчуванням" -#: describe.c:6038 +#: describe.c:6217 msgid "List of installed extensions" msgstr "Список встановлених розширень" -#: describe.c:6086 +#: describe.c:6265 #, c-format msgid "Did not find any extension named \"%s\"." msgstr "Не знайдено жодного розширення під назвою \"%s\"." -#: describe.c:6089 +#: describe.c:6268 #, c-format msgid "Did not find any extensions." msgstr "Не знайдено жодного розширення." -#: describe.c:6133 +#: describe.c:6312 msgid "Object description" msgstr "Опис об'єкту" -#: describe.c:6142 +#: describe.c:6321 #, c-format msgid "Objects in extension \"%s\"" msgstr "Об'єкти в розширенні \"%s\"" -#: describe.c:6183 +#: describe.c:6362 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "неправильне повне ім'я (забагато компонентів): %s" -#: describe.c:6197 +#: describe.c:6376 #, c-format msgid "cross-database references are not implemented: %s" msgstr "міжбазові посилання не реалізовані: %s" -#: describe.c:6228 describe.c:6354 +#: describe.c:6407 describe.c:6543 #, c-format msgid "The server (version %s) does not support publications." msgstr "Сервер (версія %s) не підтримує публікації." -#: describe.c:6245 describe.c:6432 +#: describe.c:6424 describe.c:6645 msgid "All tables" msgstr "Усі таблиці" -#: describe.c:6246 describe.c:6433 +#: describe.c:6425 describe.c:6646 msgid "Inserts" msgstr "Вставки" -#: describe.c:6247 describe.c:6434 +#: describe.c:6426 describe.c:6647 msgid "Updates" msgstr "Оновлення" -#: describe.c:6248 describe.c:6435 +#: describe.c:6427 describe.c:6648 msgid "Deletes" msgstr "Видалення" -#: describe.c:6252 describe.c:6437 +#: describe.c:6431 describe.c:6650 msgid "Truncates" msgstr "Очищення" -#: describe.c:6256 describe.c:6439 +#: describe.c:6440 describe.c:6574 describe.c:6652 +msgid "Generated columns" +msgstr "Генеровані стовпці" + +#: describe.c:6444 describe.c:6654 msgid "Via root" msgstr "Через root" -#: describe.c:6277 +#: describe.c:6465 msgid "List of publications" msgstr "Список публікацій" -#: describe.c:6401 +#: describe.c:6612 #, c-format msgid "Did not find any publication named \"%s\"." msgstr "Не знайдено жодної публікації під назвою \"%s\"." -#: describe.c:6404 +#: describe.c:6615 #, c-format msgid "Did not find any publications." msgstr "Не знайдено жодної публікації." -#: describe.c:6428 +#: describe.c:6641 #, c-format msgid "Publication %s" msgstr "Публікація %s" -#: describe.c:6481 +#: describe.c:6698 msgid "Tables:" msgstr "Таблиці:" -#: describe.c:6493 +#: describe.c:6710 msgid "Tables from schemas:" msgstr "Таблиці зі схеми:" -#: describe.c:6538 +#: describe.c:6755 #, c-format msgid "The server (version %s) does not support subscriptions." msgstr "Сервер (версія %s) не підтримує підписки." -#: describe.c:6554 +#: describe.c:6771 msgid "Publication" msgstr "Публікація" -#: describe.c:6563 +#: describe.c:6780 msgid "Binary" msgstr "Бінарний" -#: describe.c:6572 describe.c:6576 +#: describe.c:6789 describe.c:6793 msgid "Streaming" msgstr "Потокова передача" -#: describe.c:6584 +#: describe.c:6801 msgid "Two-phase commit" msgstr "Двофазовий коміт" -#: describe.c:6585 +#: describe.c:6802 msgid "Disable on error" msgstr "Вимкнути при помилці" -#: describe.c:6592 +#: describe.c:6809 msgid "Origin" msgstr "Джерело" -#: describe.c:6593 +#: describe.c:6810 msgid "Password required" msgstr "Потрібен пароль" -#: describe.c:6594 +#: describe.c:6811 msgid "Run as owner?" msgstr "Запустити як власник?" -#: describe.c:6599 +#: describe.c:6816 msgid "Failover" msgstr "Відновлення після збою" -#: describe.c:6604 +#: describe.c:6821 msgid "Synchronous commit" msgstr "Синхронні затвердження" -#: describe.c:6605 +#: describe.c:6822 msgid "Conninfo" msgstr "Conninfo" -#: describe.c:6611 +#: describe.c:6828 msgid "Skip LSN" msgstr "Пропустити LSN" -#: describe.c:6637 +#: describe.c:6854 msgid "List of subscriptions" msgstr "Список підписок" -#: describe.c:6666 +#: describe.c:6883 msgid "(none)" msgstr "(нічого)" -#: describe.c:6706 describe.c:6801 describe.c:6893 describe.c:6987 +#: describe.c:6923 describe.c:7018 describe.c:7110 describe.c:7213 msgid "AM" msgstr "АМ" -#: describe.c:6707 +#: describe.c:6924 msgid "Input type" msgstr "Тип вводу" -#: describe.c:6708 +#: describe.c:6925 msgid "Storage type" msgstr "Тип сховища" -#: describe.c:6709 +#: describe.c:6926 msgid "Operator class" msgstr "Клас операторів" -#: describe.c:6721 describe.c:6802 describe.c:6894 describe.c:6988 +#: describe.c:6938 describe.c:7019 describe.c:7111 describe.c:7214 msgid "Operator family" msgstr "Сімейство операторів" -#: describe.c:6756 +#: describe.c:6973 msgid "List of operator classes" msgstr "Список класів операторів" -#: describe.c:6803 +#: describe.c:7020 msgid "Applicable types" msgstr "Типи для застосування" -#: describe.c:6844 +#: describe.c:7061 msgid "List of operator families" msgstr "Список сімейств операторів" -#: describe.c:6895 +#: describe.c:7112 msgid "Operator" msgstr "Оператор" -#: describe.c:6896 +#: describe.c:7113 msgid "Strategy" msgstr "Стратегія" -#: describe.c:6897 +#: describe.c:7114 msgid "ordering" msgstr "упорядкування" -#: describe.c:6898 +#: describe.c:7115 msgid "search" msgstr "пошук" -#: describe.c:6899 +#: describe.c:7116 msgid "Purpose" msgstr "Ціль" -#: describe.c:6904 +#: describe.c:7125 msgid "Sort opfamily" msgstr "Сімейство операторів сортування" -#: describe.c:6942 +#: describe.c:7168 msgid "List of operators of operator families" msgstr "Список операторів сімейств операторів" -#: describe.c:6989 +#: describe.c:7215 msgid "Registered left type" msgstr "Зареєстрований лівий тип" -#: describe.c:6990 +#: describe.c:7216 msgid "Registered right type" msgstr "Зареєстрований правий тип" -#: describe.c:6991 +#: describe.c:7217 msgid "Number" msgstr "Число" -#: describe.c:7034 +#: describe.c:7260 msgid "List of support functions of operator families" msgstr "Список функцій підтримки сімейств операторів" -#: describe.c:7065 +#: describe.c:7291 msgid "ID" msgstr "ID" -#: describe.c:7085 +#: describe.c:7311 msgid "Large objects" msgstr "Великі об'єкти" -#: help.c:63 +#: help.c:60 msgid "psql is the PostgreSQL interactive terminal.\n\n" msgstr "psql - це інтерактивний термінал PostgreSQL.\n\n" -#: help.c:64 help.c:372 help.c:456 help.c:499 +#: help.c:61 help.c:389 help.c:476 help.c:525 msgid "Usage:\n" msgstr "Використання:\n" -#: help.c:65 +#: help.c:62 msgid " psql [OPTION]... [DBNAME [USERNAME]]\n\n" msgstr " psql [ОПЦІЯ]... [БД [КОРИСТУВАЧ]]\n\n" -#: help.c:67 +#: help.c:64 msgid "General options:\n" msgstr "Основні налаштування:\n" -#: help.c:68 +#: help.c:65 msgid " -c, --command=COMMAND run only single command (SQL or internal) and exit\n" msgstr " -c, --command=КОМАНДА виконати лише одну команду (SQL або внутрішню) і вийти\n" -#: help.c:69 +#: help.c:66 msgid " -d, --dbname=DBNAME database name to connect to\n" msgstr " -d, --dbname=DBNAME назва бази даних для підключення\n" -#: help.c:70 +#: help.c:67 msgid " -f, --file=FILENAME execute commands from file, then exit\n" msgstr " -f, --file=FILENAME виконує команди з файлу, потім виходить\n" -#: help.c:71 +#: help.c:68 msgid " -l, --list list available databases, then exit\n" msgstr " -l, --list виводить список доступних баз даних, потім виходить\n" -#: help.c:72 +#: help.c:69 msgid " -v, --set=, --variable=NAME=VALUE\n" " set psql variable NAME to VALUE\n" " (e.g., -v ON_ERROR_STOP=1)\n" @@ -2541,93 +2749,93 @@ msgstr " -v, --set=, --variable=NAME=VALUE\n" " присвоїти змінній psql NAME значення VALUE\n" " (наприклад, -v ON_ERROR_STOP=1)\n" -#: help.c:75 +#: help.c:72 msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію, потім вийти\n" -#: help.c:76 +#: help.c:73 msgid " -X, --no-psqlrc do not read startup file (~/.psqlrc)\n" msgstr " -X, --no-psqlrc ігнорувати файл параметрів запуска (~/.psqlrc)\n" -#: help.c:77 +#: help.c:74 msgid " -1 (\"one\"), --single-transaction\n" " execute as a single transaction (if non-interactive)\n" msgstr " -1 (\"один\"), --single-transaction\n" " виконує як одну транзакцію (якщо не інтерактивна)\n" -#: help.c:79 +#: help.c:76 msgid " -?, --help[=options] show this help, then exit\n" msgstr " -?, --help [=options] показати цю довідку, потім вийти\n" -#: help.c:80 +#: help.c:77 msgid " --help=commands list backslash commands, then exit\n" msgstr " --help=commands перерахувати команди, потім вийти\n" -#: help.c:81 +#: help.c:78 msgid " --help=variables list special variables, then exit\n" msgstr " --help=variables перерахувати спеціальні змінні, потім вийти\n" -#: help.c:83 +#: help.c:80 msgid "\n" "Input and output options:\n" msgstr "\n" "Параметри вводу і виводу:\n" -#: help.c:84 +#: help.c:81 msgid " -a, --echo-all echo all input from script\n" msgstr " -a, --echo-all відобразити всі вхідні дані з скрипта\n" -#: help.c:85 +#: help.c:82 msgid " -b, --echo-errors echo failed commands\n" msgstr " -b, --echo-errors відобразити команди з помилками\n" -#: help.c:86 +#: help.c:83 msgid " -e, --echo-queries echo commands sent to server\n" msgstr " -e, --echo-queries відобразити команди, відправлені на сервер\n" -#: help.c:87 +#: help.c:84 msgid " -E, --echo-hidden display queries that internal commands generate\n" msgstr " -E, --echo-hidden відобразити запити, згенеровані внутрішніми командами\n" -#: help.c:88 +#: help.c:85 msgid " -L, --log-file=FILENAME send session log to file\n" msgstr " -L, --log-file=FILENAME зберегти протокол роботи у файл\n" -#: help.c:89 +#: help.c:86 msgid " -n, --no-readline disable enhanced command line editing (readline)\n" msgstr " -n, --no-readline вимкнути розширене редагування командного рядка (readline)\n" -#: help.c:90 +#: help.c:87 msgid " -o, --output=FILENAME send query results to file (or |pipe)\n" msgstr " -o, --output=FILENAME надсилати результати запиту до файлу (або до каналу |)\n" -#: help.c:91 +#: help.c:88 msgid " -q, --quiet run quietly (no messages, only query output)\n" msgstr " -q, --quiet тихий запуск (ніяких повідомлень, лише результат запитів)\n" -#: help.c:92 +#: help.c:89 msgid " -s, --single-step single-step mode (confirm each query)\n" msgstr " -s, --single-step покроковий режим (підтвердження кожного запиту)\n" -#: help.c:93 +#: help.c:90 msgid " -S, --single-line single-line mode (end of line terminates SQL command)\n" msgstr " -S, --single-line однорядковий режим (кінець рядка завершує команду)\n" -#: help.c:95 +#: help.c:92 msgid "\n" "Output format options:\n" msgstr "\n" "Параметри формату виводу:\n" -#: help.c:96 +#: help.c:93 msgid " -A, --no-align unaligned table output mode\n" msgstr " -A, --no-align режим виводу не вирівняної таблиці\n" -#: help.c:97 +#: help.c:94 msgid " --csv CSV (Comma-Separated Values) table output mode\n" msgstr " --csv режим виводу таблиць CSV (Comma-Separated Values)\n" -#: help.c:98 +#: help.c:95 #, c-format msgid " -F, --field-separator=STRING\n" " field separator for unaligned output (default: \"%s\")\n" @@ -2635,72 +2843,72 @@ msgstr " -F, --field-separator=СТРОКА\n" " розділювач полів при не вирівняному виводі\n" " (за замовчуванням: \"%s\")\n" -#: help.c:101 +#: help.c:98 msgid " -H, --html HTML table output mode\n" msgstr " -H, --html вивід таблиці у форматі HTML\n" -#: help.c:102 +#: help.c:99 msgid " -P, --pset=VAR[=ARG] set printing option VAR to ARG (see \\pset command)\n" msgstr " -P, --pset=VAR[=ARG] встановити параметр виводу змінної VAR значенню ARG (див. команду \"\\pset\")\n" -#: help.c:103 +#: help.c:100 msgid " -R, --record-separator=STRING\n" " record separator for unaligned output (default: newline)\n" msgstr " -R, --record-separator=СТРОКА\n" " розділювач записів при не вирівняному виводі\n" " (за замовчуванням: новий рядок)\n" -#: help.c:105 +#: help.c:102 msgid " -t, --tuples-only print rows only\n" msgstr " -t, --tuples-only виводити лише рядки\n" -#: help.c:106 +#: help.c:103 msgid " -T, --table-attr=TEXT set HTML table tag attributes (e.g., width, border)\n" msgstr " -T, --table-attr=ТЕКСТ встановити атрибути HTML-таблиці (width, border)\n" -#: help.c:107 +#: help.c:104 msgid " -x, --expanded turn on expanded table output\n" msgstr " -x, --expanded ввімкнути розширене виведення таблиці\n" -#: help.c:108 +#: help.c:105 msgid " -z, --field-separator-zero\n" " set field separator for unaligned output to zero byte\n" msgstr " -z, --field-separator-zero\n" " встановити розділювач полів для не вирівняного виводу в нульовий байт\n" -#: help.c:110 +#: help.c:107 msgid " -0, --record-separator-zero\n" " set record separator for unaligned output to zero byte\n" msgstr " -0, --record-separator-zero\n" " встановити розділювач записів для не вирівняного виводу в нульовий байт\n" -#: help.c:113 +#: help.c:110 msgid "\n" "Connection options:\n" msgstr "\n" "Налаштування з'єднання:\n" -#: help.c:114 +#: help.c:111 msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=HOSTNAME хост серверу баз даних або каталог сокетів\n" -#: help.c:115 +#: help.c:112 msgid " -p, --port=PORT database server port\n" msgstr " -p, --port=ПОРТ порт сервера бази даних\n" -#: help.c:116 +#: help.c:113 msgid " -U, --username=USERNAME database user name\n" msgstr " -U, --username=USERNAME ім'я користувача бази даних\n" -#: help.c:117 +#: help.c:114 msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password ніколи не запитувати пароль\n" -#: help.c:118 +#: help.c:115 msgid " -W, --password force password prompt (should happen automatically)\n" msgstr " -W, --password запитувати пароль завжди (повинно траплятись автоматично)\n" -#: help.c:120 +#: help.c:117 msgid "\n" "For more information, type \"\\?\" (for internal commands) or \"\\help\" (for SQL\n" "commands) from within psql, or consult the psql section in the PostgreSQL\n" @@ -2708,62 +2916,70 @@ msgid "\n" msgstr "\n" "Щоб дізнатися більше, введіть \"\\?\" (для внутрішніх команд) або \"\\help\"(для команд SQL) в psql, або звіртеся з розділом psql документації PostgreSQL. \n\n" -#: help.c:123 +#: help.c:120 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Повідомляти про помилки на <%s>.\n" -#: help.c:124 +#: help.c:121 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: help.c:166 +#: help.c:163 msgid "General\n" msgstr "Загальні\n" -#: help.c:167 -msgid " \\bind [PARAM]... set query parameters\n" -msgstr " \\bind [PARAM]... встановити параметри запиту\n" - -#: help.c:168 +#: help.c:164 msgid " \\copyright show PostgreSQL usage and distribution terms\n" msgstr " \\copyright умови використання і розповсюдження PostgreSQL\n" -#: help.c:169 +#: help.c:165 msgid " \\crosstabview [COLUMNS] execute query and display result in crosstab\n" msgstr " \\crosstabview [COLUMNS] виконати запит і відобразити результат у перехресній таблиці\n" -#: help.c:170 +#: help.c:166 msgid " \\errverbose show most recent error message at maximum verbosity\n" msgstr " \\errverbose вивести максимально докладне повідомлення про останню помилку\n" -#: help.c:171 +#: help.c:167 msgid " \\g [(OPTIONS)] [FILE] execute query (and send result to file or |pipe);\n" " \\g with no arguments is equivalent to a semicolon\n" msgstr " \\g [(OPTIONS)] [FILE] виконати запит (і надіслати результат до файлу або |каналу);\n" " \\g без аргументів рівнозначно крапці з комою\n" -#: help.c:173 +#: help.c:169 msgid " \\gdesc describe result of query, without executing it\n" msgstr " \\gdesc описати результат запиту без виконання\n" -#: help.c:174 +#: help.c:170 msgid " \\gexec execute query, then execute each value in its result\n" msgstr " \\gexec виконати запит, потім виконати кожне значення в його результаті\n" -#: help.c:175 +#: help.c:171 msgid " \\gset [PREFIX] execute query and store result in psql variables\n" msgstr " \\gset [PREFIX] виконати запит та зберегти результат в змінних psql \n" -#: help.c:176 +#: help.c:172 msgid " \\gx [(OPTIONS)] [FILE] as \\g, but forces expanded output mode\n" msgstr " \\gx [(OPTIONS)] [FILE] як \\g, але вмикає розширений режим виводу\n" -#: help.c:177 +#: help.c:173 msgid " \\q quit psql\n" msgstr " \\q вийти з psql\n" +#: help.c:174 +msgid " \\restrict RESTRICT_KEY\n" +" enter restricted mode with provided key\n" +msgstr " \\restrict RESTRICT_KEY\n" +" увійти в обмежений режим з наданим ключем\n" + +#: help.c:176 +msgid " \\unrestrict RESTRICT_KEY\n" +" exit restricted mode if key matches\n" +msgstr " \\unrestrict RESTRICT_KEY\n" +" вийти з обмеженого режиму, якщо ключ співпадає\n" + #: help.c:178 msgid " \\watch [[i=]SEC] [c=N] [m=MIN]\n" " execute query every SEC seconds, up to N times,\n" @@ -2772,8 +2988,8 @@ msgstr " \\watch [[i=]SEC] [c=N] [m=MIN]\n" " виконувати запит кожні SEC секунд, до N разів або\n" " зупинитися, якщо повернуто менше ніж MIN рядків\n" -#: help.c:181 help.c:189 help.c:201 help.c:211 help.c:218 help.c:275 help.c:283 -#: help.c:303 help.c:316 help.c:325 +#: help.c:181 help.c:189 help.c:201 help.c:211 help.c:218 help.c:276 help.c:284 +#: help.c:304 help.c:317 help.c:326 help.c:332 msgid "\n" msgstr "\n" @@ -2886,383 +3102,437 @@ msgid "Informational\n" msgstr "Інформаційний\n" #: help.c:221 -msgid " (options: S = show system objects, + = additional detail)\n" -msgstr " (параметри: S = показати системні об'єкти, + = додаткові деталі)\n" +msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" +msgstr " (параметри: S = показати системні об'єкти, x = розширений режим, + = додаткові деталі)\n" #: help.c:222 -msgid " \\d[S+] list tables, views, and sequences\n" -msgstr " \\d[S+] вивести таблиці, подання і послідовності\n" +msgid " \\d[Sx+] list tables, views, and sequences\n" +msgstr " \\d[Sx+] список таблиць, подань і послідовностей\n" #: help.c:223 -msgid " \\d[S+] NAME describe table, view, sequence, or index\n" -msgstr " \\d[S+] NAME описати таблицю, подання, послідовність або індекс\n" +msgid " \\d[S+] NAME describe table, view, sequence, or index\n" +msgstr " \\d[S+] NAME опис таблиці, подання, послідовності або індексу\n" #: help.c:224 -msgid " \\da[S] [PATTERN] list aggregates\n" -msgstr " \\da[S] [PATTERN] вивести агрегати\n" +msgid " \\da[Sx] [PATTERN] list aggregates\n" +msgstr " \\da[Sx] [PATTERN] список агрегатних функцій\n" #: help.c:225 -msgid " \\dA[+] [PATTERN] list access methods\n" -msgstr " \\dA[+] [PATTERN] вивести методи доступу\n" +msgid " \\dA[x+] [PATTERN] list access methods\n" +msgstr " \\dA[x+] [PATTERN] список методів доступу\n" #: help.c:226 -msgid " \\dAc[+] [AMPTRN [TYPEPTRN]] list operator classes\n" -msgstr " \\dAc[+] [AMPTRN [TYPEPTRN]] список класів операторів\n" +msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" +msgstr " \\dAc[x+] [AMPTRN [TYPEPTRN]] список класів операторів\n" #: help.c:227 -msgid " \\dAf[+] [AMPTRN [TYPEPTRN]] list operator families\n" -msgstr " \\dAf[+] [AMPTRN [TYPEPTRN]] список сімейств операторів\n" +msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" +msgstr " \\dAf[x+] [AMPTRN [TYPEPTRN]] список сімейств операторів\n" #: help.c:228 -msgid " \\dAo[+] [AMPTRN [OPFPTRN]] list operators of operator families\n" -msgstr " \\dAo[+] [AMPTRN [OPFPTRN]] список операторів сімейств операторів\n" +msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" +msgstr " \\dAo[x+] [AMPTRN [OPFPTRN]] список операторів сімейств операторів\n" #: help.c:229 -msgid " \\dAp[+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" -msgstr " \\dAp[+] [AMPTRN [OPFPTRN]] список функцій підтримки сімейств операторів\n" +msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" +msgstr " \\dAp[x+] [AMPTRN [OPFPTRN]] список функцій підтримки сімейств операторів\n" #: help.c:230 -msgid " \\db[+] [PATTERN] list tablespaces\n" -msgstr " \\db[+] [PATTERN] вивести табличні простори\n" +msgid " \\db[x+] [PATTERN] list tablespaces\n" +msgstr " \\db[x+] [PATTERN] список табличних просторів\n" #: help.c:231 -msgid " \\dc[S+] [PATTERN] list conversions\n" -msgstr " \\dc[S+] [PATTERN] вивести перетворення\n" +msgid " \\dc[Sx+] [PATTERN] list conversions\n" +msgstr " \\dc[Sx+] [PATTERN] список перетворень\n" #: help.c:232 -msgid " \\dconfig[+] [PATTERN] list configuration parameters\n" -msgstr " \\dconfig[+] [PATTERN] вивести параметри конфігурації\n" +msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" +msgstr " \\dconfig[x+] [PATTERN] список параметрів конфігурації\n" #: help.c:233 -msgid " \\dC[+] [PATTERN] list casts\n" -msgstr " \\dC[+] [PATTERN] вивести приведення типів\n" +msgid " \\dC[x+] [PATTERN] list casts\n" +msgstr " \\dC[x+] [PATTERN] список перетворень типів\n" #: help.c:234 -msgid " \\dd[S] [PATTERN] show object descriptions not displayed elsewhere\n" -msgstr " \\dd[S] [PATTERN] показати опис об'єкта, що не відображається в іншому місці\n" +msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" +msgstr " \\dd[Sx] [PATTERN] показати описи об'єктів, не показані де інде\n" #: help.c:235 -msgid " \\dD[S+] [PATTERN] list domains\n" -msgstr " \\dD[S+] [PATTERN] вивести домени\n" +msgid " \\dD[Sx+] [PATTERN] list domains\n" +msgstr " \\dD[Sx+] [PATTERN] список доменів\n" #: help.c:236 -msgid " \\ddp [PATTERN] list default privileges\n" -msgstr " \\ddp [PATTERN] вивести привілеї за замовчуванням\n" +msgid " \\ddp[x] [PATTERN] list default privileges\n" +msgstr " \\ddp[x] [PATTERN] список прав за замовчуванням\n" #: help.c:237 -msgid " \\dE[S+] [PATTERN] list foreign tables\n" -msgstr " \\dE[S+] [PATTERN] вивести зовнішні таблиці\n" +msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" +msgstr " \\dE[Sx+] [PATTERN] список сторонніх таблиць\n" #: help.c:238 -msgid " \\des[+] [PATTERN] list foreign servers\n" -msgstr " \\des[+] [PATTERN] вивести зовнішні сервери\n" +msgid " \\des[x+] [PATTERN] list foreign servers\n" +msgstr " \\des[x+] [PATTERN] список сторонніх серверів\n" #: help.c:239 -msgid " \\det[+] [PATTERN] list foreign tables\n" -msgstr " \\dE[S+] [PATTERN] вивести зовнішні таблиці\n" +msgid " \\det[x+] [PATTERN] list foreign tables\n" +msgstr " \\det[x+] [PATTERN] список сторонніх таблиць\n" #: help.c:240 -msgid " \\deu[+] [PATTERN] list user mappings\n" -msgstr " \\deu[+] [PATTERN] вивести користувацькі зіставлення\n" +msgid " \\deu[x+] [PATTERN] list user mappings\n" +msgstr " \\deu[x+] [PATTERN] список зіставлень користувачів\n" #: help.c:241 -msgid " \\dew[+] [PATTERN] list foreign-data wrappers\n" -msgstr " \\dew[+] [PATTERN] список джерел сторонніх даних\n" +msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" +msgstr " \\dew[x+] [PATTERN] список обгорток сторонніх даних\n" #: help.c:242 -msgid " \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" +msgid " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" -msgstr " \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" -" список [лише агрегатних/нормальних/процедурних/тригерних/віконних] функцій\n" +msgstr " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" +" список [лише агрегатні/звичайні/процедури/тригерні/віконні] функцій\n" #: help.c:244 -msgid " \\dF[+] [PATTERN] list text search configurations\n" -msgstr " \\dF[+] [PATTERN] вивести конфігурації текстового пошуку\n" +msgid " \\dF[x+] [PATTERN] list text search configurations\n" +msgstr " \\dF[x+] [PATTERN] список конфігурацій текстового пошуку\n" #: help.c:245 -msgid " \\dFd[+] [PATTERN] list text search dictionaries\n" -msgstr " \\dFd[+] [PATTERN] вивести словники текстового пошуку\n" +msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" +msgstr " \\dFd[x+] [PATTERN] список словників текстового пошуку\n" #: help.c:246 -msgid " \\dFp[+] [PATTERN] list text search parsers\n" -msgstr " \\dFp[+] [PATTERN] вивести парсери текстового пошуку\n" +msgid " \\dFp[x+] [PATTERN] list text search parsers\n" +msgstr " \\dFp[x+] [PATTERN] список аналізаторів текстового пошуку\n" #: help.c:247 -msgid " \\dFt[+] [PATTERN] list text search templates\n" -msgstr " \\dFt[+] [PATTERN] вивести шаблони текстового пошуку\n" +msgid " \\dFt[x+] [PATTERN] list text search templates\n" +msgstr " \\dFt[x+] [PATTERN] список шаблонів текстового пошуку\n" #: help.c:248 -msgid " \\dg[S+] [PATTERN] list roles\n" -msgstr " \\dg[S+] [PATTERN] вивести ролі\n" +msgid " \\dg[Sx+] [PATTERN] list roles\n" +msgstr " \\dg[Sx+] [PATTERN] список ролей\n" #: help.c:249 -msgid " \\di[S+] [PATTERN] list indexes\n" -msgstr " \\di[S+] [PATTERN] вивести індекси\n" +msgid " \\di[Sx+] [PATTERN] list indexes\n" +msgstr " \\di[Sx+] [PATTERN] список індексів\n" #: help.c:250 -msgid " \\dl[+] list large objects, same as \\lo_list\n" -msgstr " \\dl[+] вивести великі об'єкти, те саме, що \\lo_list\n" +msgid " \\dl[x+] list large objects, same as \\lo_list\n" +msgstr " \\dl[x+] список великих об'єктів, те саме, що й \\lo_list\n" #: help.c:251 -msgid " \\dL[S+] [PATTERN] list procedural languages\n" -msgstr " \\dL[S+] [PATTERN] вивести процедурні мови\n" +msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" +msgstr " \\dL[Sx+] [PATTERN] список процедурних мов\n" #: help.c:252 -msgid " \\dm[S+] [PATTERN] list materialized views\n" -msgstr " \\dm[S+] [PATTERN] вивести матеріалізовані подання\n" +msgid " \\dm[Sx+] [PATTERN] list materialized views\n" +msgstr " \\dm[Sx+] [PATTERN] список матеріалізованих подань\n" #: help.c:253 -msgid " \\dn[S+] [PATTERN] list schemas\n" -msgstr " \\dn[S+] [PATTERN] вивести схеми\n" +msgid " \\dn[Sx+] [PATTERN] list schemas\n" +msgstr " \\dn[Sx+] [PATTERN] список схем\n" #: help.c:254 -msgid " \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" +msgid " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" -msgstr " \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" +msgstr " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " список операторів\n" #: help.c:256 -msgid " \\dO[S+] [PATTERN] list collations\n" -msgstr " \\dO[S+] [PATTERN] вивести правила сортування\n" +msgid " \\dO[Sx+] [PATTERN] list collations\n" +msgstr " \\dO[Sx+] [PATTERN] список правил сортування\n" #: help.c:257 -msgid " \\dp[S] [PATTERN] list table, view, and sequence access privileges\n" -msgstr " \\dp[S] [PATTERN] вивести привілеї доступу до таблиць, подань або послідовностей \n" +msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" +msgstr " \\dp[Sx] [PATTERN] список прав доступу до таблиць, подань і послідовностей\n" #: help.c:258 -msgid " \\dP[itn+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" -msgstr " \\dP[itn+] [PATTERN] вивести [тільки індекс/таблицю] секційні відношення [n=вкладені]\n" +msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" +msgstr " \\dP[itnx+] [PATTERN] список [лише індекси/таблиці] секціонованих відношень [n=вкладені]\n" #: help.c:259 -msgid " \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n" -msgstr " \\drds [ROLEPTRN [DBPTRN]] вивести налаштування ролей побазово\n" - -#: help.c:260 -msgid " \\drg[S] [PATTERN] list role grants\n" -msgstr " \\drg[S] [PATTERN] вивести надані ролі\n" +msgid " \\drds[x] [ROLEPTRN [DBPTRN]]\n" +" list per-database role settings\n" +msgstr " \\drds[x] [ROLEPTRN [DBPTRN]]\n" +" список налаштувань ролі для бази даних\n" #: help.c:261 -msgid " \\dRp[+] [PATTERN] list replication publications\n" -msgstr " \\dRp[+] [PATTERN] вивести реплікаційні публікації\n" +msgid " \\drg[Sx] [PATTERN] list role grants\n" +msgstr " \\drg[Sx] [PATTERN] список надання ролей\n" #: help.c:262 -msgid " \\dRs[+] [PATTERN] list replication subscriptions\n" -msgstr " \\dRs[+] [PATTERN] вивести реплікаційні підписки\n" +msgid " \\dRp[x+] [PATTERN] list replication publications\n" +msgstr " \\dRp[x+] [PATTERN] список публікацій реплікації\n" #: help.c:263 -msgid " \\ds[S+] [PATTERN] list sequences\n" -msgstr " \\ds[S+] [PATTERN] вивести послідовності\n" +msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" +msgstr " \\dRs[x+] [PATTERN] список підписок реплікації\n" #: help.c:264 -msgid " \\dt[S+] [PATTERN] list tables\n" -msgstr " \\dt[S+] [PATTERN] вивести таблиці\n" +msgid " \\ds[Sx+] [PATTERN] list sequences\n" +msgstr " \\ds[Sx+] [PATTERN] список послідовностей\n" #: help.c:265 -msgid " \\dT[S+] [PATTERN] list data types\n" -msgstr " \\dT[S+] [PATTERN] вивести типи даних\n" +msgid " \\dt[Sx+] [PATTERN] list tables\n" +msgstr " \\dt[Sx+] [PATTERN] список таблиць\n" #: help.c:266 -msgid " \\du[S+] [PATTERN] list roles\n" -msgstr " \\du[S+] [PATTERN] вивести ролі\n" +msgid " \\dT[Sx+] [PATTERN] list data types\n" +msgstr " \\dT[Sx+] [PATTERN] список типів даних\n" #: help.c:267 -msgid " \\dv[S+] [PATTERN] list views\n" -msgstr " \\dv[S+] [PATTERN] вивести подання\n" +msgid " \\du[Sx+] [PATTERN] list roles\n" +msgstr " \\du[Sx+] [PATTERN] список ролей\n" #: help.c:268 -msgid " \\dx[+] [PATTERN] list extensions\n" -msgstr " \\dx[+] [PATTERN] вивести розширення\n" +msgid " \\dv[Sx+] [PATTERN] list views\n" +msgstr " \\dv[Sx+] [PATTERN] список подань\n" #: help.c:269 -msgid " \\dX [PATTERN] list extended statistics\n" -msgstr " \\dX [PATTERN] список розширеної статистики\n" +msgid " \\dx[x+] [PATTERN] list extensions\n" +msgstr " \\dx[x+] [PATTERN] список розширень\n" #: help.c:270 -msgid " \\dy[+] [PATTERN] list event triggers\n" -msgstr " \\dy[+] [PATTERN] вивести тригери подій\n" +msgid " \\dX[x] [PATTERN] list extended statistics\n" +msgstr " \\dX[x] [PATTERN] список розширеної статистики\n" #: help.c:271 -msgid " \\l[+] [PATTERN] list databases\n" -msgstr " \\l[+] [PATTERN] вивести бази даних\n" +msgid " \\dy[x+] [PATTERN] list event triggers\n" +msgstr " \\dy[x+] [PATTERN] список тригерів подій\n" #: help.c:272 -msgid " \\sf[+] FUNCNAME show a function's definition\n" -msgstr " \\sf[+] FUNCNAME відобразити визначення функції\n" +msgid " \\l[x+] [PATTERN] list databases\n" +msgstr " \\l[x+] [PATTERN] список баз даних\n" #: help.c:273 -msgid " \\sv[+] VIEWNAME show a view's definition\n" -msgstr " \\sv[+] VIEWNAME відобразити визначення подання\n" +msgid " \\sf[+] FUNCNAME show a function's definition\n" +msgstr " \\sf[+] FUNCNAME показати визначення функції\n" #: help.c:274 -msgid " \\z[S] [PATTERN] same as \\dp\n" -msgstr " \\z[S] [PATTERN] те саме, що \\dp\n" +msgid " \\sv[+] VIEWNAME show a view's definition\n" +msgstr " \\sv[+] VIEWNAME показати визначення подання\n" + +#: help.c:275 +msgid " \\z[Sx] [PATTERN] same as \\dp\n" +msgstr " \\z[Sx] [PATTERN] те саме, що й \\dp\n" -#: help.c:277 +#: help.c:278 msgid "Large Objects\n" msgstr "Великі об'єкти\n" -#: help.c:278 +#: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" msgstr " \\lo_export LOBOID FILE записати великий об'єкт в файл\n" -#: help.c:279 +#: help.c:280 msgid " \\lo_import FILE [COMMENT]\n" " read large object from file\n" msgstr " \\lo_import FILE [COMMENT]\n" " читати великий об'єкт з файлу\n" -#: help.c:281 -msgid " \\lo_list[+] list large objects\n" -msgstr " \\lo_list[+] вивести великі об'єкти\n" - #: help.c:282 +msgid " \\lo_list[x+] list large objects\n" +msgstr " \\lo_list[x+] список великих об'єктів\n" + +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink LOBOID видалити великий об’єкт\n" -#: help.c:285 +#: help.c:286 msgid "Formatting\n" msgstr "Форматування\n" -#: help.c:286 +#: help.c:287 msgid " \\a toggle between unaligned and aligned output mode\n" msgstr " \\a перемикання між режимами виводу: unaligned, aligned\n" -#: help.c:287 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr " \\C [STRING] встановити заголовок таблиці або прибрати, якщо не задано\n" -#: help.c:288 +#: help.c:289 msgid " \\f [STRING] show or set field separator for unaligned query output\n" msgstr " \\f [STRING] показати або встановити розділювач полів для не вирівняного виводу запиту\n" -#: help.c:289 +#: help.c:290 #, c-format msgid " \\H toggle HTML output mode (currently %s)\n" msgstr " \\H переключити режим виводу HTML (поточний: %s)\n" -#: help.c:291 +#: help.c:292 msgid " \\pset [NAME [VALUE]] set table output option\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" " fieldsep_zero|footer|format|linestyle|null|\n" " numericlocale|pager|pager_min_lines|recordsep|\n" " recordsep_zero|tableattr|title|tuples_only|\n" " unicode_border_linestyle|unicode_column_linestyle|\n" -" unicode_header_linestyle)\n" +" unicode_header_linestyle|xheader_width)\n" msgstr " \\pset [NAME [VALUE]] встановити параметр виводу таблиці\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" " fieldsep_zero|footer|format|linestyle|null|\n" " numericlocale|pager|pager_min_lines|recordsep|\n" " recordsep_zero|tableattr|title|tuples_only|\n" " unicode_border_linestyle|unicode_column_linestyle|\n" -" unicode_header_linestyle)\n" +" unicode_header_linestyle|xheader_width)\n" -#: help.c:298 +#: help.c:299 #, c-format msgid " \\t [on|off] show only rows (currently %s)\n" msgstr " \\t [on|off] показувати лише рядки (поточно %s)\n" -#: help.c:300 +#: help.c:301 msgid " \\T [STRING] set HTML
tag attributes, or unset if none\n" msgstr " \\T [STRING] встановити атрибути для HTML
або прибрати, якщо не задані\n" -#: help.c:301 +#: help.c:302 #, c-format msgid " \\x [on|off|auto] toggle expanded output (currently %s)\n" msgstr " \\x [on|off|auto] переключити розширений вивід (поточний: %s)\n" -#: help.c:302 +#: help.c:303 msgid "auto" msgstr "авто" -#: help.c:305 +#: help.c:306 msgid "Connection\n" msgstr "Підключення\n" -#: help.c:307 +#: help.c:308 #, c-format msgid " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " connect to new database (currently \"%s\")\n" msgstr " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo} під'єднатися до нової бази даних (поточно \"%s\")\n" -#: help.c:311 +#: help.c:312 msgid " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " connect to new database (currently no connection)\n" msgstr " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo} під'єднатися до нової бази даних (зараз з'єднання відсутнє)\n" -#: help.c:313 +#: help.c:314 msgid " \\conninfo display information about current connection\n" msgstr " \\conninfo показати інформацію про поточне з'єднання\n" -#: help.c:314 +#: help.c:315 msgid " \\encoding [ENCODING] show or set client encoding\n" msgstr " \\encoding [ENCODING] показати або встановити кодування клієнта\n" -#: help.c:315 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr " \\password [USERNAME] безпечно змінити пароль користувача \n" -#: help.c:318 +#: help.c:319 msgid "Operating System\n" msgstr "Операційна система\n" -#: help.c:319 +#: help.c:320 msgid " \\cd [DIR] change the current working directory\n" msgstr " \\cd [DIR] змінити поточний робочий каталог\n" -#: help.c:320 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr " \\getenv PSQLVAR ENVAR отримати змінну середовища\n" -#: help.c:321 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr " \\setenv NAME [VALUE] встановити або скинути змінну середовища\n" -#: help.c:322 +#: help.c:323 #, c-format msgid " \\timing [on|off] toggle timing of commands (currently %s)\n" msgstr " \\timing [on|off] переключити таймер команд (поточний: %s)\n" -#: help.c:324 +#: help.c:325 msgid " \\! [COMMAND] execute command in shell or start interactive shell\n" msgstr " \\! [COMMAND] виконати команду в оболонці або запустити інтерактивну оболонку\n" -#: help.c:327 +#: help.c:328 msgid "Variables\n" msgstr "Змінні\n" -#: help.c:328 +#: help.c:329 msgid " \\prompt [TEXT] NAME prompt user to set internal variable\n" msgstr " \\prompt [TEXT] NAME запитати користувача значення внутрішньої змінної\n" -#: help.c:329 +#: help.c:330 msgid " \\set [NAME [VALUE]] set internal variable, or list all if no parameters\n" msgstr " \\set [NAME [VALUE]] встановити внутрішню змінну або вивести всі, якщо не задані параметри\n" -#: help.c:330 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset NAME скинути (видалити) значення внутрішньої змінної\n" -#: help.c:369 +#: help.c:334 +msgid "Extended Query Protocol\n" +msgstr "Розширений протокол запитів\n" + +#: help.c:335 +msgid " \\bind [PARAM]... set query parameters\n" +msgstr " \\bind [PARAM]... встановити параметри запиту\n" + +#: help.c:336 +msgid " \\bind_named STMT_NAME [PARAM]...\n" +" set query parameters for an existing prepared statement\n" +msgstr " \\bind_named STMT_NAME [PARAM]...\n" +" встановити параметри запиту для існуючого підготовленого оператора\n" + +#: help.c:338 +msgid " \\close_prepared STMT_NAME\n" +" close an existing prepared statement\n" +msgstr " \\close_prepared STMT_NAME\n" +" закрити існуючий підготовлений оператор\n" + +#: help.c:340 +msgid " \\endpipeline exit pipeline mode\n" +msgstr " \\endpipeline вийти з режиму конвеєра\n" + +#: help.c:341 +msgid " \\flush flush output data to the server\n" +msgstr " \\flush скинути вихідні дані на сервер\n" + +#: help.c:342 +msgid " \\flushrequest send request to the server to flush its output buffer\n" +msgstr " \\flushrequest надіслати запит серверу на очищення буферу виводу\n" + +#: help.c:343 +msgid " \\getresults [NUM_RES] read NUM_RES pending results, or all if no argument\n" +msgstr " \\getresults [NUM_RES] прочитати NUM_RES очікуваних результатів або всі, якщо немає аргументів\n" + +#: help.c:344 +msgid " \\parse STMT_NAME create a prepared statement\n" +msgstr " \\parse STMT_NAME створити підготовлений оператор\n" + +#: help.c:345 +msgid " \\sendpipeline send an extended query to an ongoing pipeline\n" +msgstr " \\sendpipeline надіслати розширений запит в поточний конвеєр\n" + +#: help.c:346 +msgid " \\startpipeline enter pipeline mode\n" +msgstr " \\startpipeline увійти в режим конвеєра\n" + +#: help.c:347 +msgid " \\syncpipeline add a synchronisation point to an ongoing pipeline\n" +msgstr " \\syncpipeline додати точку синхронізації в поточний конвеєр\n" + +#: help.c:386 msgid "List of specially treated variables\n\n" msgstr "Список спеціальних змінних\n\n" -#: help.c:371 +#: help.c:388 msgid "psql variables:\n" msgstr "змінні psql:\n" -#: help.c:373 +#: help.c:390 msgid " psql --set=NAME=VALUE\n" " or \\set NAME VALUE inside psql\n\n" msgstr " psql --set=ІМ'Я=ЗНАЧЕННЯ\n" " або \\set ІМ'Я ЗНАЧЕННЯ усередині psql\n\n" -#: help.c:375 +#: help.c:392 msgid " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" msgstr " AUTOCOMMIT\n" " якщо встановлений, успішні SQL-команди підтверджуються автоматично\n" -#: help.c:377 +#: help.c:394 msgid " COMP_KEYWORD_CASE\n" " determines the case used to complete SQL key words\n" " [lower, upper, preserve-lower, preserve-upper]\n" @@ -3270,18 +3540,18 @@ msgstr " COMP_KEYWORD_CASE\n" " визначає регістр для автодоповнення ключових слів SQL\n" " [lower, upper, preserve-lower, preserve-upper]\n" -#: help.c:380 +#: help.c:397 msgid " DBNAME\n" " the currently connected database name\n" msgstr " DBNAME назва під'єднаної бази даних\n" -#: help.c:382 +#: help.c:399 msgid " ECHO\n" " controls what input is written to standard output\n" " [all, errors, none, queries]\n" msgstr " ECHO контролює ввід, що виводиться на стандартний вивід [all, errors, none, queries]\n" -#: help.c:385 +#: help.c:402 msgid " ECHO_HIDDEN\n" " if set, display internal queries executed by backslash commands;\n" " if set to \"noexec\", just show them without execution\n" @@ -3289,67 +3559,67 @@ msgstr " ECHO_HIDDEN\n" " якщо ввімкнено, виводить внутрішні запити, виконані за допомогою \"\\\";\n" " якщо встановлено значення \"noexec\", тільки виводяться, але не виконуються\n" -#: help.c:388 +#: help.c:405 msgid " ENCODING\n" " current client character set encoding\n" msgstr " ENCODING\n" " поточне кодування набору символів клієнта\n" -#: help.c:390 +#: help.c:407 msgid " ERROR\n" " \"true\" if last query failed, else \"false\"\n" msgstr " ERROR\n" " \"true\", якщо в останньому запиті є помилка, в іншому разі - \"false\"\n" -#: help.c:392 +#: help.c:409 msgid " FETCH_COUNT\n" " the number of result rows to fetch and display at a time (0 = unlimited)\n" msgstr " FETCH_COUNT\n" " число рядків з результатами для передачі та відображення за один раз (0 = необмежено)\n" -#: help.c:394 +#: help.c:411 msgid " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" msgstr " HIDE_TABLEAM\n" " якщо вказано, методи доступу до таблиць не відображаються\n" -#: help.c:396 +#: help.c:413 msgid " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" msgstr " HIDE_TOAST_COMPRESSION\n" " якщо встановлено, методи стискання не відображаються\n" -#: help.c:398 +#: help.c:415 msgid " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" msgstr " HISTCONTROL контролює історію команд [ignorespace, ignoredups, ignoreboth]\n" -#: help.c:400 +#: help.c:417 msgid " HISTFILE\n" " file name used to store the command history\n" msgstr " HISTFILE ім'я файлу для зберігання історії команд\n" -#: help.c:402 +#: help.c:419 msgid " HISTSIZE\n" " maximum number of commands to store in the command history\n" msgstr " HISTSIZE максимальна кількість команд для зберігання в історії команд\n" -#: help.c:404 +#: help.c:421 msgid " HOST\n" " the currently connected database server host\n" msgstr " HOST поточний підключений хост сервера бази даних\n" -#: help.c:406 +#: help.c:423 msgid " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" msgstr " IGNOREEOF кількість EOF для завершення інтерактивної сесії\n" -#: help.c:408 +#: help.c:425 msgid " LASTOID\n" " value of the last affected OID\n" msgstr " LASTOID значення останнього залученого OID\n" -#: help.c:410 +#: help.c:427 msgid " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" " message and SQLSTATE of last error, or empty string and \"00000\" if none\n" @@ -3357,55 +3627,55 @@ msgstr " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" " повідомлення та код SQLSTATE останньої помилки, або пустий рядок та \"00000\", якщо помилки не було\n" -#: help.c:413 +#: help.c:430 msgid " ON_ERROR_ROLLBACK\n" " if set, an error doesn't stop a transaction (uses implicit savepoints)\n" msgstr " ON_ERROR_ROLLBACK\n" " якщо встановлено, транзакція не припиняється у разі помилки (використовуються неявні точки збереження)\n" -#: help.c:415 +#: help.c:432 msgid " ON_ERROR_STOP\n" " stop batch execution after error\n" msgstr " ON_ERROR_STOP\n" " зупиняти виконання пакету команд після помилки\n" -#: help.c:417 +#: help.c:434 msgid " PORT\n" " server port of the current connection\n" msgstr " PORT\n" " порт сервера для поточного з'єднання\n" -#: help.c:419 +#: help.c:436 msgid " PROMPT1\n" " specifies the standard psql prompt\n" msgstr " PROMPT1\n" " визначає стандратне запрошення psql \n" -#: help.c:421 +#: help.c:438 msgid " PROMPT2\n" " specifies the prompt used when a statement continues from a previous line\n" msgstr " PROMPT2\n" " визначає запрошення, яке використовується при продовженні команди з попереднього рядка\n" -#: help.c:423 +#: help.c:440 msgid " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" msgstr " PROMPT3\n" " визначає запрошення, яке виконується під час COPY ... FROM STDIN\n" -#: help.c:425 +#: help.c:442 msgid " QUIET\n" " run quietly (same as -q option)\n" msgstr " QUIET\n" " тихий запуск ( як із параметром -q)\n" -#: help.c:427 +#: help.c:444 msgid " ROW_COUNT\n" " number of rows returned or affected by last query, or 0\n" msgstr " ROW_COUNT\n" " число повернених або оброблених рядків останнім запитом, або 0\n" -#: help.c:429 +#: help.c:446 msgid " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" " server's version (in short string or numeric format)\n" @@ -3413,61 +3683,61 @@ msgstr " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" " версія серевера (у короткому текстовому або числовому форматі)\n" -#: help.c:432 +#: help.c:449 msgid " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" msgstr " SHELL_ERROR\n" " \"true\", якщо остання команда оболонки завершилася помилкою, \"false\", якщо успішно\n" -#: help.c:434 +#: help.c:451 msgid " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" msgstr " SHEL_EXIT_CODE\n" " статус виконання останньої команди оболонки\n" -#: help.c:436 +#: help.c:453 msgid " SHOW_ALL_RESULTS\n" " show all results of a combined query (\\;) instead of only the last\n" msgstr " SHOW_ALL_RESULTS\n" " показати всі результати комбінованого запиту (\\;) замість тільки останнього\n" -#: help.c:438 +#: help.c:455 msgid " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" msgstr " SHOW_CONTEXT\n" " керує відображенням полів контексту повідомлень [never, errors, always]\n" -#: help.c:440 +#: help.c:457 msgid " SINGLELINE\n" " if set, end of line terminates SQL commands (same as -S option)\n" msgstr " SINGLELINE\n" " якщо встановлено, кінець рядка завершує режим вводу SQL-команди (як з параметром -S)\n" -#: help.c:442 +#: help.c:459 msgid " SINGLESTEP\n" " single-step mode (same as -s option)\n" msgstr " SINGLESTEP\n" " покроковий режим (як з параметром -s)\n" -#: help.c:444 +#: help.c:461 msgid " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" msgstr " SQLSTATE\n" " SQLSTATE останнього запиту, або \"00000\" якщо немає помилок\n" -#: help.c:446 +#: help.c:463 msgid " USER\n" " the currently connected database user\n" msgstr " USER\n" " поточний користувач, підключений до бази даних\n" -#: help.c:448 +#: help.c:465 msgid " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" msgstr " VERBOSITY\n" " контролює докладність звітів про помилку [default, verbose, terse, sqlstate]\n" -#: help.c:450 +#: help.c:467 msgid " VERSION\n" " VERSION_NAME\n" " VERSION_NUM\n" @@ -3477,98 +3747,112 @@ msgstr " VERSION\n" " VERSION_NUM\n" " psql версія (в розгорнутому, в короткому текстовому або числовому форматі)\n" -#: help.c:455 +#: help.c:471 +#, c-format +msgid " WATCH_INTERVAL\n" +" number of seconds \\watch waits between executions (default %s)\n" +msgstr " WATCH_INTERVAL\n" +" кількість секунд, які \\watch чекає між виконаннями (за замовчуванням %s)\n" + +#: help.c:475 msgid "\n" "Display settings:\n" msgstr "\n" "Налаштування відобреження:\n" -#: help.c:457 +#: help.c:477 msgid " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n\n" msgstr " psql --pset=NAME[=VALUE]\n" " або \\pset ІМ'Я [VALUE] всередині psql\n\n" -#: help.c:459 +#: help.c:479 msgid " border\n" " border style (number)\n" msgstr " border\n" " стиль рамки (число)\n" -#: help.c:461 +#: help.c:481 msgid " columns\n" " target width for the wrapped format\n" msgstr " columns\n" " цільова ширина для формату з переносом\n" -#: help.c:463 +#: help.c:483 +#, c-format +msgid " csv_fieldsep\n" +" field separator for CSV output format (default \"%c\")\n" +msgstr " csv_fieldsep\n" +" роздільник полів для формату CSV (за замовчуванням \"%c\")\n" + +#: help.c:486 msgid " expanded (or x)\n" " expanded output [on, off, auto]\n" msgstr " expanded (or x)\n" " розширений вивід [on, off, auto]\n" -#: help.c:465 +#: help.c:488 #, c-format msgid " fieldsep\n" " field separator for unaligned output (default \"%s\")\n" msgstr " fieldsep\n" " розділювач полів для не вирівняного виводу (за замовчуванням \"%s\")\n" -#: help.c:468 +#: help.c:491 msgid " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" msgstr " fieldsep_zero\n" " встановити розділювач полів для невирівняного виводу на нульовий байт\n" -#: help.c:470 +#: help.c:493 msgid " footer\n" " enable or disable display of the table footer [on, off]\n" msgstr " footer\n" " вмикає або вимикає вивід підписів таблиці [on, off]\n" -#: help.c:472 +#: help.c:495 msgid " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" msgstr " format\n" " встановити формат виводу [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:474 +#: help.c:497 msgid " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" msgstr " linestyle\n" " встановлює стиль малювання ліній рамки [ascii, old-ascii, unicode]\n" -#: help.c:476 +#: help.c:499 msgid " null\n" " set the string to be printed in place of a null value\n" msgstr " null\n" " встановлює рядок, який буде виведено замість значення (null)\n" -#: help.c:478 +#: help.c:501 msgid " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" msgstr " numericlocale\n" " вмикає виведення заданого локалью роздільника групи цифр\n" -#: help.c:480 +#: help.c:503 msgid " pager\n" " control when an external pager is used [yes, no, always]\n" msgstr " pager\n" " контролює використання зовнішнього пейджера [yes, no, always]\n" -#: help.c:482 +#: help.c:505 msgid " recordsep\n" " record (line) separator for unaligned output\n" msgstr " recordsep\n" " розділювач записів (рядків) для не вирівняного виводу\n" -#: help.c:484 +#: help.c:507 msgid " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" msgstr " recordsep_zero\n" " встановлює розділювач записів для невирівняного виводу на нульовий байт\n" -#: help.c:486 +#: help.c:509 msgid " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" " column widths for left-aligned data types in latex-longtable format\n" @@ -3576,19 +3860,19 @@ msgstr " tableattr (або T)\n" " вказує атрибути для тегу table у html форматі або пропорційні \n" " ширини стовпців для вирівняних вліво даних, у latex-longtable форматі\n" -#: help.c:489 +#: help.c:512 msgid " title\n" " set the table title for subsequently printed tables\n" msgstr " title\n" " задає заголовок таблиці для послідовно друкованих таблиць\n" -#: help.c:491 +#: help.c:514 msgid " tuples_only\n" " if set, only actual table data is shown\n" msgstr " tuples_only\n" " якщо встановлено, виводяться лише фактичні табличні дані\n" -#: help.c:493 +#: help.c:516 msgid " unicode_border_linestyle\n" " unicode_column_linestyle\n" " unicode_header_linestyle\n" @@ -3598,19 +3882,27 @@ msgstr " unicode_border_linestyle\n" " unicode_header_linestyle\n" " задає стиль мальювання ліній (Unicode) [single, double]\n" -#: help.c:498 +#: help.c:520 +msgid " xheader_width\n" +" set the maximum width of the header for expanded output\n" +" [full, column, page, integer value]\n" +msgstr " xheader_width\n" +" встановити максимальну ширину заголовка для розширеного виводу\n" +" [full, column, page, integer value]\n" + +#: help.c:524 msgid "\n" "Environment variables:\n" msgstr "\n" "Змінні оточення:\n" -#: help.c:502 +#: help.c:528 msgid " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n\n" msgstr " ІМ'Я=ЗНАЧЕННЯ [ІМ'Я=ЗНАЧЕННЯ] psql ...\n" " або \\setenv ІМ'Я [VALUE] всередині psql\n\n" -#: help.c:504 +#: help.c:530 msgid " set NAME=VALUE\n" " psql ...\n" " or \\setenv NAME [VALUE] inside psql\n\n" @@ -3618,107 +3910,107 @@ msgstr " встановлює ІМ'Я=ЗНАЧЕННЯ\n" " psql ...\n" " або \\setenv ІМ'Я [VALUE] всередині psql\n\n" -#: help.c:507 +#: help.c:533 msgid " COLUMNS\n" " number of columns for wrapped format\n" msgstr " COLUMNS\n" " число стовпців для форматування з переносом\n" -#: help.c:509 +#: help.c:535 msgid " PGAPPNAME\n" " same as the application_name connection parameter\n" msgstr " PGAPPNAME\n" " те саме, що параметр підключення application_name\n" -#: help.c:511 +#: help.c:537 msgid " PGDATABASE\n" " same as the dbname connection parameter\n" msgstr " PGDATABASE\n" " те саме, що параметр підключення dbname\n" -#: help.c:513 +#: help.c:539 msgid " PGHOST\n" " same as the host connection parameter\n" msgstr " PGHOST\n" " те саме, що параметр підключення host\n" -#: help.c:515 +#: help.c:541 msgid " PGPASSFILE\n" " password file name\n" msgstr " PGPASSFILE\n" " назва файлу з паролем\n" -#: help.c:517 +#: help.c:543 msgid " PGPASSWORD\n" " connection password (not recommended)\n" msgstr " PGPASSWORD\n" " пароль для підключення (не рекомендується)\n" -#: help.c:519 +#: help.c:545 msgid " PGPORT\n" " same as the port connection parameter\n" msgstr " PGPORT\n" " те саме, що параметр підключення port\n" -#: help.c:521 +#: help.c:547 msgid " PGUSER\n" " same as the user connection parameter\n" msgstr " PGUSER\n" " те саме, що параметр підключення user\n" -#: help.c:523 +#: help.c:549 msgid " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" msgstr " PSQL_EDITOR, EDITOR, VISUAL\n" " редактор для команд \\e, \\ef і \\ev\n" -#: help.c:525 +#: help.c:551 msgid " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" msgstr " PSQL_EDITOR_LINENUMBER_ARG\n" " як вказати номер рядка при виклику редактора\n" -#: help.c:527 +#: help.c:553 msgid " PSQL_HISTORY\n" " alternative location for the command history file\n" msgstr " PSQL_HISTORY\n" " альтернативне розміщення файлу з історією команд\n" -#: help.c:529 +#: help.c:555 msgid " PSQL_PAGER, PAGER\n" " name of external pager program\n" msgstr " PSQL_PAGER, PAGER\n" " ім'я програми зовнішнього пейджеру\n" -#: help.c:532 +#: help.c:558 msgid " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" msgstr " PSQL_WATCH_PAGER\n" " назва зовнішньої програми-пейджера для використання з \\watch\n" -#: help.c:535 +#: help.c:561 msgid " PSQLRC\n" " alternative location for the user's .psqlrc file\n" msgstr " PSQLRC\n" " альтернативне розміщення користувацького файла .psqlrc\n" -#: help.c:537 +#: help.c:563 msgid " SHELL\n" " shell used by the \\! command\n" msgstr " SHELL\n" " оболонка, що використовується командою \\!\n" -#: help.c:539 +#: help.c:565 msgid " TMPDIR\n" " directory for temporary files\n" msgstr " TMPDIR\n" " каталог для тимчасових файлів\n" -#: help.c:599 +#: help.c:625 msgid "Available help:\n" msgstr "Доступна довідка:\n" -#: help.c:694 +#: help.c:720 #, c-format msgid "Command: %s\n" "Description: %s\n" @@ -3731,7 +4023,7 @@ msgstr "Команда: %s\n" "%s\n\n" "URL: %s\n\n" -#: help.c:717 +#: help.c:743 #, c-format msgid "No help available for \"%s\".\n" "Try \\h with no arguments to see available help.\n" @@ -3831,12 +4123,12 @@ msgstr "запит ігнорується; введіть \\endif або нат msgid "reached EOF without finding closing \\endif(s)" msgstr "досягнуто кінця файлу без завершального \\endif" -#: psqlscanslash.l:642 +#: psqlscanslash.l:633 #, c-format msgid "unterminated quoted string" msgstr "незавершений рядок в лапках" -#: psqlscanslash.l:842 +#: psqlscanslash.l:834 #, c-format msgid "%s: out of memory" msgstr "%s: бракує пам'яті" @@ -3844,2485 +4136,2506 @@ msgstr "%s: бракує пам'яті" #: sql_help.c:35 sql_help.c:38 sql_help.c:41 sql_help.c:65 sql_help.c:66 #: sql_help.c:68 sql_help.c:70 sql_help.c:81 sql_help.c:83 sql_help.c:85 #: sql_help.c:113 sql_help.c:119 sql_help.c:121 sql_help.c:123 sql_help.c:125 -#: sql_help.c:126 sql_help.c:129 sql_help.c:131 sql_help.c:133 sql_help.c:240 -#: sql_help.c:242 sql_help.c:243 sql_help.c:245 sql_help.c:247 sql_help.c:250 -#: sql_help.c:252 sql_help.c:254 sql_help.c:256 sql_help.c:268 sql_help.c:269 -#: sql_help.c:270 sql_help.c:272 sql_help.c:321 sql_help.c:323 sql_help.c:325 -#: sql_help.c:327 sql_help.c:396 sql_help.c:401 sql_help.c:403 sql_help.c:445 -#: sql_help.c:447 sql_help.c:450 sql_help.c:452 sql_help.c:521 sql_help.c:526 -#: sql_help.c:531 sql_help.c:536 sql_help.c:541 sql_help.c:595 sql_help.c:597 -#: sql_help.c:599 sql_help.c:601 sql_help.c:603 sql_help.c:606 sql_help.c:608 -#: sql_help.c:611 sql_help.c:622 sql_help.c:624 sql_help.c:668 sql_help.c:670 -#: sql_help.c:672 sql_help.c:675 sql_help.c:677 sql_help.c:679 sql_help.c:720 -#: sql_help.c:724 sql_help.c:728 sql_help.c:749 sql_help.c:752 sql_help.c:755 -#: sql_help.c:784 sql_help.c:796 sql_help.c:804 sql_help.c:807 sql_help.c:810 -#: sql_help.c:825 sql_help.c:828 sql_help.c:857 sql_help.c:862 sql_help.c:867 -#: sql_help.c:872 sql_help.c:877 sql_help.c:904 sql_help.c:906 sql_help.c:908 -#: sql_help.c:910 sql_help.c:913 sql_help.c:915 sql_help.c:962 sql_help.c:1007 -#: sql_help.c:1012 sql_help.c:1017 sql_help.c:1022 sql_help.c:1027 -#: sql_help.c:1046 sql_help.c:1057 sql_help.c:1059 sql_help.c:1079 -#: sql_help.c:1089 sql_help.c:1090 sql_help.c:1092 sql_help.c:1094 -#: sql_help.c:1106 sql_help.c:1110 sql_help.c:1112 sql_help.c:1124 -#: sql_help.c:1126 sql_help.c:1128 sql_help.c:1130 sql_help.c:1149 -#: sql_help.c:1151 sql_help.c:1155 sql_help.c:1159 sql_help.c:1163 -#: sql_help.c:1166 sql_help.c:1167 sql_help.c:1168 sql_help.c:1171 -#: sql_help.c:1174 sql_help.c:1176 sql_help.c:1316 sql_help.c:1318 -#: sql_help.c:1321 sql_help.c:1324 sql_help.c:1326 sql_help.c:1328 -#: sql_help.c:1331 sql_help.c:1334 sql_help.c:1456 sql_help.c:1458 -#: sql_help.c:1460 sql_help.c:1463 sql_help.c:1484 sql_help.c:1487 -#: sql_help.c:1490 sql_help.c:1493 sql_help.c:1497 sql_help.c:1499 -#: sql_help.c:1501 sql_help.c:1503 sql_help.c:1517 sql_help.c:1520 -#: sql_help.c:1522 sql_help.c:1524 sql_help.c:1534 sql_help.c:1536 -#: sql_help.c:1546 sql_help.c:1548 sql_help.c:1558 sql_help.c:1561 -#: sql_help.c:1584 sql_help.c:1586 sql_help.c:1588 sql_help.c:1590 -#: sql_help.c:1593 sql_help.c:1595 sql_help.c:1598 sql_help.c:1601 -#: sql_help.c:1652 sql_help.c:1695 sql_help.c:1698 sql_help.c:1700 -#: sql_help.c:1702 sql_help.c:1705 sql_help.c:1707 sql_help.c:1709 -#: sql_help.c:1712 sql_help.c:1762 sql_help.c:1778 sql_help.c:2011 -#: sql_help.c:2080 sql_help.c:2099 sql_help.c:2112 sql_help.c:2170 -#: sql_help.c:2178 sql_help.c:2188 sql_help.c:2216 sql_help.c:2249 -#: sql_help.c:2267 sql_help.c:2295 sql_help.c:2406 sql_help.c:2452 -#: sql_help.c:2477 sql_help.c:2500 sql_help.c:2504 sql_help.c:2538 -#: sql_help.c:2558 sql_help.c:2580 sql_help.c:2594 sql_help.c:2615 -#: sql_help.c:2644 sql_help.c:2677 sql_help.c:2700 sql_help.c:2747 -#: sql_help.c:3045 sql_help.c:3058 sql_help.c:3075 sql_help.c:3091 -#: sql_help.c:3131 sql_help.c:3185 sql_help.c:3189 sql_help.c:3191 -#: sql_help.c:3198 sql_help.c:3217 sql_help.c:3244 sql_help.c:3279 -#: sql_help.c:3291 sql_help.c:3300 sql_help.c:3344 sql_help.c:3358 -#: sql_help.c:3386 sql_help.c:3394 sql_help.c:3406 sql_help.c:3416 -#: sql_help.c:3424 sql_help.c:3432 sql_help.c:3440 sql_help.c:3448 -#: sql_help.c:3457 sql_help.c:3468 sql_help.c:3476 sql_help.c:3484 -#: sql_help.c:3492 sql_help.c:3500 sql_help.c:3510 sql_help.c:3519 -#: sql_help.c:3528 sql_help.c:3536 sql_help.c:3546 sql_help.c:3557 -#: sql_help.c:3565 sql_help.c:3574 sql_help.c:3585 sql_help.c:3594 -#: sql_help.c:3602 sql_help.c:3610 sql_help.c:3618 sql_help.c:3626 -#: sql_help.c:3634 sql_help.c:3642 sql_help.c:3650 sql_help.c:3658 -#: sql_help.c:3666 sql_help.c:3674 sql_help.c:3691 sql_help.c:3700 -#: sql_help.c:3708 sql_help.c:3725 sql_help.c:3740 sql_help.c:4053 -#: sql_help.c:4174 sql_help.c:4203 sql_help.c:4219 sql_help.c:4221 -#: sql_help.c:4725 sql_help.c:4773 sql_help.c:4932 +#: sql_help.c:126 sql_help.c:129 sql_help.c:131 sql_help.c:133 sql_help.c:259 +#: sql_help.c:261 sql_help.c:262 sql_help.c:264 sql_help.c:266 sql_help.c:269 +#: sql_help.c:271 sql_help.c:273 sql_help.c:275 sql_help.c:290 sql_help.c:291 +#: sql_help.c:292 sql_help.c:294 sql_help.c:343 sql_help.c:345 sql_help.c:347 +#: sql_help.c:349 sql_help.c:418 sql_help.c:423 sql_help.c:425 sql_help.c:467 +#: sql_help.c:469 sql_help.c:472 sql_help.c:474 sql_help.c:543 sql_help.c:548 +#: sql_help.c:553 sql_help.c:558 sql_help.c:563 sql_help.c:617 sql_help.c:619 +#: sql_help.c:621 sql_help.c:623 sql_help.c:625 sql_help.c:628 sql_help.c:630 +#: sql_help.c:633 sql_help.c:644 sql_help.c:646 sql_help.c:690 sql_help.c:692 +#: sql_help.c:694 sql_help.c:697 sql_help.c:699 sql_help.c:701 sql_help.c:742 +#: sql_help.c:746 sql_help.c:750 sql_help.c:771 sql_help.c:774 sql_help.c:777 +#: sql_help.c:806 sql_help.c:818 sql_help.c:826 sql_help.c:829 sql_help.c:832 +#: sql_help.c:847 sql_help.c:850 sql_help.c:879 sql_help.c:884 sql_help.c:889 +#: sql_help.c:894 sql_help.c:899 sql_help.c:935 sql_help.c:937 sql_help.c:939 +#: sql_help.c:941 sql_help.c:944 sql_help.c:946 sql_help.c:998 sql_help.c:1043 +#: sql_help.c:1048 sql_help.c:1053 sql_help.c:1058 sql_help.c:1063 +#: sql_help.c:1082 sql_help.c:1093 sql_help.c:1095 sql_help.c:1116 +#: sql_help.c:1126 sql_help.c:1127 sql_help.c:1129 sql_help.c:1131 +#: sql_help.c:1143 sql_help.c:1147 sql_help.c:1149 sql_help.c:1161 +#: sql_help.c:1163 sql_help.c:1165 sql_help.c:1167 sql_help.c:1186 +#: sql_help.c:1188 sql_help.c:1192 sql_help.c:1196 sql_help.c:1200 +#: sql_help.c:1203 sql_help.c:1204 sql_help.c:1205 sql_help.c:1208 +#: sql_help.c:1211 sql_help.c:1213 sql_help.c:1355 sql_help.c:1357 +#: sql_help.c:1360 sql_help.c:1363 sql_help.c:1365 sql_help.c:1367 +#: sql_help.c:1370 sql_help.c:1373 sql_help.c:1501 sql_help.c:1503 +#: sql_help.c:1505 sql_help.c:1508 sql_help.c:1529 sql_help.c:1532 +#: sql_help.c:1535 sql_help.c:1538 sql_help.c:1542 sql_help.c:1544 +#: sql_help.c:1546 sql_help.c:1548 sql_help.c:1562 sql_help.c:1565 +#: sql_help.c:1567 sql_help.c:1569 sql_help.c:1579 sql_help.c:1581 +#: sql_help.c:1591 sql_help.c:1593 sql_help.c:1603 sql_help.c:1606 +#: sql_help.c:1629 sql_help.c:1631 sql_help.c:1633 sql_help.c:1635 +#: sql_help.c:1638 sql_help.c:1640 sql_help.c:1643 sql_help.c:1646 +#: sql_help.c:1697 sql_help.c:1740 sql_help.c:1743 sql_help.c:1745 +#: sql_help.c:1747 sql_help.c:1750 sql_help.c:1752 sql_help.c:1754 +#: sql_help.c:1757 sql_help.c:1807 sql_help.c:1823 sql_help.c:2058 +#: sql_help.c:2127 sql_help.c:2146 sql_help.c:2159 sql_help.c:2217 +#: sql_help.c:2225 sql_help.c:2235 sql_help.c:2263 sql_help.c:2296 +#: sql_help.c:2314 sql_help.c:2342 sql_help.c:2465 sql_help.c:2511 +#: sql_help.c:2536 sql_help.c:2559 sql_help.c:2563 sql_help.c:2597 +#: sql_help.c:2617 sql_help.c:2639 sql_help.c:2653 sql_help.c:2674 +#: sql_help.c:2707 sql_help.c:2742 sql_help.c:2765 sql_help.c:2814 +#: sql_help.c:3118 sql_help.c:3131 sql_help.c:3148 sql_help.c:3164 +#: sql_help.c:3204 sql_help.c:3258 sql_help.c:3262 sql_help.c:3264 +#: sql_help.c:3271 sql_help.c:3290 sql_help.c:3317 sql_help.c:3352 +#: sql_help.c:3364 sql_help.c:3373 sql_help.c:3419 sql_help.c:3433 +#: sql_help.c:3461 sql_help.c:3469 sql_help.c:3481 sql_help.c:3491 +#: sql_help.c:3499 sql_help.c:3507 sql_help.c:3515 sql_help.c:3523 +#: sql_help.c:3532 sql_help.c:3543 sql_help.c:3551 sql_help.c:3559 +#: sql_help.c:3567 sql_help.c:3575 sql_help.c:3585 sql_help.c:3594 +#: sql_help.c:3603 sql_help.c:3611 sql_help.c:3621 sql_help.c:3632 +#: sql_help.c:3640 sql_help.c:3649 sql_help.c:3660 sql_help.c:3669 +#: sql_help.c:3677 sql_help.c:3685 sql_help.c:3693 sql_help.c:3701 +#: sql_help.c:3709 sql_help.c:3717 sql_help.c:3725 sql_help.c:3733 +#: sql_help.c:3741 sql_help.c:3749 sql_help.c:3766 sql_help.c:3775 +#: sql_help.c:3783 sql_help.c:3800 sql_help.c:3815 sql_help.c:4130 +#: sql_help.c:4253 sql_help.c:4282 sql_help.c:4298 sql_help.c:4300 +#: sql_help.c:4804 sql_help.c:4852 sql_help.c:5011 msgid "name" msgstr "назва" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:332 sql_help.c:1855 -#: sql_help.c:3359 sql_help.c:4492 +#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:354 sql_help.c:1900 +#: sql_help.c:3434 sql_help.c:4571 msgid "aggregate_signature" msgstr "сигнатура_агр_функції" -#: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:255 -#: sql_help.c:273 sql_help.c:404 sql_help.c:451 sql_help.c:530 sql_help.c:578 -#: sql_help.c:596 sql_help.c:623 sql_help.c:676 sql_help.c:751 sql_help.c:806 -#: sql_help.c:827 sql_help.c:866 sql_help.c:916 sql_help.c:963 sql_help.c:1016 -#: sql_help.c:1048 sql_help.c:1058 sql_help.c:1093 sql_help.c:1113 -#: sql_help.c:1127 sql_help.c:1177 sql_help.c:1325 sql_help.c:1457 -#: sql_help.c:1500 sql_help.c:1521 sql_help.c:1535 sql_help.c:1547 -#: sql_help.c:1560 sql_help.c:1587 sql_help.c:1653 sql_help.c:1706 +#: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:274 +#: sql_help.c:295 sql_help.c:426 sql_help.c:473 sql_help.c:552 sql_help.c:600 +#: sql_help.c:618 sql_help.c:645 sql_help.c:698 sql_help.c:773 sql_help.c:828 +#: sql_help.c:849 sql_help.c:888 sql_help.c:947 sql_help.c:999 sql_help.c:1052 +#: sql_help.c:1084 sql_help.c:1094 sql_help.c:1130 sql_help.c:1150 +#: sql_help.c:1164 sql_help.c:1214 sql_help.c:1364 sql_help.c:1502 +#: sql_help.c:1545 sql_help.c:1566 sql_help.c:1580 sql_help.c:1592 +#: sql_help.c:1605 sql_help.c:1632 sql_help.c:1698 sql_help.c:1751 msgid "new_name" msgstr "нова_назва" -#: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:253 -#: sql_help.c:271 sql_help.c:402 sql_help.c:487 sql_help.c:535 sql_help.c:625 -#: sql_help.c:634 sql_help.c:699 sql_help.c:723 sql_help.c:754 sql_help.c:809 -#: sql_help.c:871 sql_help.c:914 sql_help.c:1021 sql_help.c:1060 -#: sql_help.c:1091 sql_help.c:1111 sql_help.c:1125 sql_help.c:1175 -#: sql_help.c:1391 sql_help.c:1459 sql_help.c:1502 sql_help.c:1523 -#: sql_help.c:1585 sql_help.c:1701 sql_help.c:3031 +#: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:272 +#: sql_help.c:293 sql_help.c:424 sql_help.c:509 sql_help.c:557 sql_help.c:647 +#: sql_help.c:656 sql_help.c:721 sql_help.c:745 sql_help.c:776 sql_help.c:831 +#: sql_help.c:893 sql_help.c:945 sql_help.c:1057 sql_help.c:1096 +#: sql_help.c:1128 sql_help.c:1148 sql_help.c:1162 sql_help.c:1212 +#: sql_help.c:1431 sql_help.c:1504 sql_help.c:1547 sql_help.c:1568 +#: sql_help.c:1630 sql_help.c:1746 sql_help.c:3104 msgid "new_owner" msgstr "новий_власник" -#: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:257 sql_help.c:324 -#: sql_help.c:453 sql_help.c:540 sql_help.c:678 sql_help.c:727 sql_help.c:757 -#: sql_help.c:812 sql_help.c:876 sql_help.c:1026 sql_help.c:1095 -#: sql_help.c:1129 sql_help.c:1327 sql_help.c:1504 sql_help.c:1525 -#: sql_help.c:1537 sql_help.c:1549 sql_help.c:1589 sql_help.c:1708 +#: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:276 sql_help.c:346 +#: sql_help.c:475 sql_help.c:562 sql_help.c:700 sql_help.c:749 sql_help.c:779 +#: sql_help.c:834 sql_help.c:898 sql_help.c:1062 sql_help.c:1132 +#: sql_help.c:1166 sql_help.c:1366 sql_help.c:1549 sql_help.c:1570 +#: sql_help.c:1582 sql_help.c:1594 sql_help.c:1634 sql_help.c:1753 msgid "new_schema" msgstr "нова_схема" -#: sql_help.c:44 sql_help.c:1919 sql_help.c:3360 sql_help.c:4521 +#: sql_help.c:44 sql_help.c:1964 sql_help.c:3435 sql_help.c:4600 msgid "where aggregate_signature is:" msgstr "де сигнатура_агр_функції:" -#: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:342 sql_help.c:355 -#: sql_help.c:359 sql_help.c:375 sql_help.c:378 sql_help.c:381 sql_help.c:522 -#: sql_help.c:527 sql_help.c:532 sql_help.c:537 sql_help.c:542 sql_help.c:858 -#: sql_help.c:863 sql_help.c:868 sql_help.c:873 sql_help.c:878 sql_help.c:1008 -#: sql_help.c:1013 sql_help.c:1018 sql_help.c:1023 sql_help.c:1028 -#: sql_help.c:1873 sql_help.c:1890 sql_help.c:1896 sql_help.c:1920 -#: sql_help.c:1923 sql_help.c:1926 sql_help.c:2081 sql_help.c:2100 -#: sql_help.c:2103 sql_help.c:2407 sql_help.c:2616 sql_help.c:3361 -#: sql_help.c:3364 sql_help.c:3367 sql_help.c:3458 sql_help.c:3547 -#: sql_help.c:3575 sql_help.c:3928 sql_help.c:4391 sql_help.c:4498 -#: sql_help.c:4505 sql_help.c:4511 sql_help.c:4522 sql_help.c:4525 -#: sql_help.c:4528 +#: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:364 sql_help.c:377 +#: sql_help.c:381 sql_help.c:397 sql_help.c:400 sql_help.c:403 sql_help.c:544 +#: sql_help.c:549 sql_help.c:554 sql_help.c:559 sql_help.c:564 sql_help.c:880 +#: sql_help.c:885 sql_help.c:890 sql_help.c:895 sql_help.c:900 sql_help.c:1044 +#: sql_help.c:1049 sql_help.c:1054 sql_help.c:1059 sql_help.c:1064 +#: sql_help.c:1918 sql_help.c:1935 sql_help.c:1941 sql_help.c:1965 +#: sql_help.c:1968 sql_help.c:1971 sql_help.c:2128 sql_help.c:2147 +#: sql_help.c:2150 sql_help.c:2466 sql_help.c:2675 sql_help.c:3436 +#: sql_help.c:3439 sql_help.c:3442 sql_help.c:3533 sql_help.c:3622 +#: sql_help.c:3650 sql_help.c:4003 sql_help.c:4470 sql_help.c:4577 +#: sql_help.c:4584 sql_help.c:4590 sql_help.c:4601 sql_help.c:4604 +#: sql_help.c:4607 msgid "argmode" msgstr "режим_аргументу" -#: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:343 sql_help.c:356 -#: sql_help.c:360 sql_help.c:376 sql_help.c:379 sql_help.c:382 sql_help.c:523 -#: sql_help.c:528 sql_help.c:533 sql_help.c:538 sql_help.c:543 sql_help.c:859 -#: sql_help.c:864 sql_help.c:869 sql_help.c:874 sql_help.c:879 sql_help.c:1009 -#: sql_help.c:1014 sql_help.c:1019 sql_help.c:1024 sql_help.c:1029 -#: sql_help.c:1874 sql_help.c:1891 sql_help.c:1897 sql_help.c:1921 -#: sql_help.c:1924 sql_help.c:1927 sql_help.c:2082 sql_help.c:2101 -#: sql_help.c:2104 sql_help.c:2408 sql_help.c:2617 sql_help.c:3362 -#: sql_help.c:3365 sql_help.c:3368 sql_help.c:3459 sql_help.c:3548 -#: sql_help.c:3576 sql_help.c:4499 sql_help.c:4506 sql_help.c:4512 -#: sql_help.c:4523 sql_help.c:4526 sql_help.c:4529 +#: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:365 sql_help.c:378 +#: sql_help.c:382 sql_help.c:398 sql_help.c:401 sql_help.c:404 sql_help.c:545 +#: sql_help.c:550 sql_help.c:555 sql_help.c:560 sql_help.c:565 sql_help.c:881 +#: sql_help.c:886 sql_help.c:891 sql_help.c:896 sql_help.c:901 sql_help.c:1045 +#: sql_help.c:1050 sql_help.c:1055 sql_help.c:1060 sql_help.c:1065 +#: sql_help.c:1919 sql_help.c:1936 sql_help.c:1942 sql_help.c:1966 +#: sql_help.c:1969 sql_help.c:1972 sql_help.c:2129 sql_help.c:2148 +#: sql_help.c:2151 sql_help.c:2467 sql_help.c:2676 sql_help.c:3437 +#: sql_help.c:3440 sql_help.c:3443 sql_help.c:3534 sql_help.c:3623 +#: sql_help.c:3651 sql_help.c:4578 sql_help.c:4585 sql_help.c:4591 +#: sql_help.c:4602 sql_help.c:4605 sql_help.c:4608 msgid "argname" msgstr "ім'я_аргументу" -#: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:344 sql_help.c:357 -#: sql_help.c:361 sql_help.c:377 sql_help.c:380 sql_help.c:383 sql_help.c:524 -#: sql_help.c:529 sql_help.c:534 sql_help.c:539 sql_help.c:544 sql_help.c:860 -#: sql_help.c:865 sql_help.c:870 sql_help.c:875 sql_help.c:880 sql_help.c:1010 -#: sql_help.c:1015 sql_help.c:1020 sql_help.c:1025 sql_help.c:1030 -#: sql_help.c:1875 sql_help.c:1892 sql_help.c:1898 sql_help.c:1922 -#: sql_help.c:1925 sql_help.c:1928 sql_help.c:2409 sql_help.c:2618 -#: sql_help.c:3363 sql_help.c:3366 sql_help.c:3369 sql_help.c:3460 -#: sql_help.c:3549 sql_help.c:3577 sql_help.c:4500 sql_help.c:4507 -#: sql_help.c:4513 sql_help.c:4524 sql_help.c:4527 sql_help.c:4530 +#: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:366 sql_help.c:379 +#: sql_help.c:383 sql_help.c:399 sql_help.c:402 sql_help.c:405 sql_help.c:546 +#: sql_help.c:551 sql_help.c:556 sql_help.c:561 sql_help.c:566 sql_help.c:882 +#: sql_help.c:887 sql_help.c:892 sql_help.c:897 sql_help.c:902 sql_help.c:1046 +#: sql_help.c:1051 sql_help.c:1056 sql_help.c:1061 sql_help.c:1066 +#: sql_help.c:1920 sql_help.c:1937 sql_help.c:1943 sql_help.c:1967 +#: sql_help.c:1970 sql_help.c:1973 sql_help.c:2468 sql_help.c:2677 +#: sql_help.c:3438 sql_help.c:3441 sql_help.c:3444 sql_help.c:3535 +#: sql_help.c:3624 sql_help.c:3652 sql_help.c:4579 sql_help.c:4586 +#: sql_help.c:4592 sql_help.c:4603 sql_help.c:4606 sql_help.c:4609 msgid "argtype" msgstr "тип_аргументу" -#: sql_help.c:114 sql_help.c:399 sql_help.c:476 sql_help.c:488 sql_help.c:957 -#: sql_help.c:1108 sql_help.c:1518 sql_help.c:1647 sql_help.c:1679 -#: sql_help.c:1731 sql_help.c:1790 sql_help.c:1979 sql_help.c:1986 -#: sql_help.c:2298 sql_help.c:2348 sql_help.c:2355 sql_help.c:2364 -#: sql_help.c:2453 sql_help.c:2678 sql_help.c:2769 sql_help.c:3060 -#: sql_help.c:3245 sql_help.c:3267 sql_help.c:3407 sql_help.c:3764 -#: sql_help.c:3972 sql_help.c:4218 sql_help.c:4220 sql_help.c:4998 +#: sql_help.c:114 sql_help.c:421 sql_help.c:498 sql_help.c:510 sql_help.c:993 +#: sql_help.c:1145 sql_help.c:1563 sql_help.c:1692 sql_help.c:1724 +#: sql_help.c:1776 sql_help.c:1835 sql_help.c:2025 sql_help.c:2032 +#: sql_help.c:2345 sql_help.c:2403 sql_help.c:2412 sql_help.c:2421 +#: sql_help.c:2512 sql_help.c:2743 sql_help.c:2836 sql_help.c:3133 +#: sql_help.c:3318 sql_help.c:3340 sql_help.c:3482 sql_help.c:3839 +#: sql_help.c:4047 sql_help.c:4297 sql_help.c:4299 sql_help.c:5079 msgid "option" msgstr "параметр" -#: sql_help.c:115 sql_help.c:958 sql_help.c:1648 sql_help.c:2454 -#: sql_help.c:2679 sql_help.c:3246 sql_help.c:3408 +#: sql_help.c:115 sql_help.c:994 sql_help.c:1693 sql_help.c:2513 +#: sql_help.c:2744 sql_help.c:3319 sql_help.c:3483 msgid "where option can be:" msgstr "де параметр може бути:" -#: sql_help.c:116 sql_help.c:2230 +#: sql_help.c:116 sql_help.c:2277 msgid "allowconn" msgstr "дозвол_підкл" -#: sql_help.c:117 sql_help.c:959 sql_help.c:1649 sql_help.c:2231 -#: sql_help.c:2455 sql_help.c:2680 sql_help.c:3247 +#: sql_help.c:117 sql_help.c:995 sql_help.c:1694 sql_help.c:2278 +#: sql_help.c:2514 sql_help.c:2745 sql_help.c:3320 msgid "connlimit" msgstr "ліміт_підключень" -#: sql_help.c:118 sql_help.c:2232 +#: sql_help.c:118 sql_help.c:2279 msgid "istemplate" msgstr "чи_шаблон" -#: sql_help.c:124 sql_help.c:613 sql_help.c:681 sql_help.c:695 sql_help.c:1330 -#: sql_help.c:1384 sql_help.c:4224 +#: sql_help.c:124 sql_help.c:635 sql_help.c:703 sql_help.c:717 sql_help.c:1369 +#: sql_help.c:1424 sql_help.c:4303 msgid "new_tablespace" msgstr "новий_табл_простір" -#: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:550 sql_help.c:552 -#: sql_help.c:553 sql_help.c:883 sql_help.c:885 sql_help.c:886 sql_help.c:966 -#: sql_help.c:970 sql_help.c:973 sql_help.c:1035 sql_help.c:1037 -#: sql_help.c:1038 sql_help.c:1188 sql_help.c:1190 sql_help.c:1656 -#: sql_help.c:1660 sql_help.c:1663 sql_help.c:2419 sql_help.c:2622 -#: sql_help.c:3940 sql_help.c:4242 sql_help.c:4403 sql_help.c:4713 +#: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:572 sql_help.c:574 +#: sql_help.c:575 sql_help.c:905 sql_help.c:907 sql_help.c:908 sql_help.c:1002 +#: sql_help.c:1006 sql_help.c:1009 sql_help.c:1071 sql_help.c:1073 +#: sql_help.c:1074 sql_help.c:1225 sql_help.c:1227 sql_help.c:1701 +#: sql_help.c:1705 sql_help.c:1708 sql_help.c:2478 sql_help.c:2681 +#: sql_help.c:4015 sql_help.c:4321 sql_help.c:4482 sql_help.c:4792 msgid "configuration_parameter" msgstr "параметр_конфігурації" -#: sql_help.c:128 sql_help.c:400 sql_help.c:471 sql_help.c:477 sql_help.c:489 -#: sql_help.c:551 sql_help.c:605 sql_help.c:687 sql_help.c:697 sql_help.c:884 -#: sql_help.c:912 sql_help.c:967 sql_help.c:1036 sql_help.c:1109 -#: sql_help.c:1154 sql_help.c:1158 sql_help.c:1162 sql_help.c:1165 -#: sql_help.c:1170 sql_help.c:1173 sql_help.c:1189 sql_help.c:1363 -#: sql_help.c:1386 sql_help.c:1434 sql_help.c:1442 sql_help.c:1462 -#: sql_help.c:1519 sql_help.c:1603 sql_help.c:1657 sql_help.c:1680 -#: sql_help.c:2299 sql_help.c:2349 sql_help.c:2356 sql_help.c:2365 -#: sql_help.c:2420 sql_help.c:2421 sql_help.c:2485 sql_help.c:2488 -#: sql_help.c:2522 sql_help.c:2623 sql_help.c:2624 sql_help.c:2647 -#: sql_help.c:2770 sql_help.c:2809 sql_help.c:2919 sql_help.c:2932 -#: sql_help.c:2946 sql_help.c:2987 sql_help.c:2995 sql_help.c:3017 -#: sql_help.c:3034 sql_help.c:3061 sql_help.c:3268 sql_help.c:3973 -#: sql_help.c:4714 sql_help.c:4715 sql_help.c:4716 sql_help.c:4717 +#: sql_help.c:128 sql_help.c:422 sql_help.c:493 sql_help.c:499 sql_help.c:511 +#: sql_help.c:573 sql_help.c:627 sql_help.c:709 sql_help.c:719 sql_help.c:906 +#: sql_help.c:943 sql_help.c:1003 sql_help.c:1072 sql_help.c:1146 +#: sql_help.c:1191 sql_help.c:1195 sql_help.c:1199 sql_help.c:1202 +#: sql_help.c:1207 sql_help.c:1210 sql_help.c:1226 sql_help.c:1402 +#: sql_help.c:1426 sql_help.c:1479 sql_help.c:1487 sql_help.c:1507 +#: sql_help.c:1564 sql_help.c:1648 sql_help.c:1702 sql_help.c:1725 +#: sql_help.c:2346 sql_help.c:2404 sql_help.c:2413 sql_help.c:2422 +#: sql_help.c:2479 sql_help.c:2480 sql_help.c:2544 sql_help.c:2547 +#: sql_help.c:2581 sql_help.c:2682 sql_help.c:2683 sql_help.c:2710 +#: sql_help.c:2837 sql_help.c:2876 sql_help.c:2987 sql_help.c:3000 +#: sql_help.c:3014 sql_help.c:3060 sql_help.c:3068 sql_help.c:3090 +#: sql_help.c:3107 sql_help.c:3134 sql_help.c:3341 sql_help.c:4048 +#: sql_help.c:4793 sql_help.c:4794 sql_help.c:4795 sql_help.c:4796 msgid "value" msgstr "значення" -#: sql_help.c:202 +#: sql_help.c:214 msgid "target_role" msgstr "цільова_роль" -#: sql_help.c:203 sql_help.c:921 sql_help.c:2283 sql_help.c:2652 -#: sql_help.c:2725 sql_help.c:2730 sql_help.c:3903 sql_help.c:3912 -#: sql_help.c:3931 sql_help.c:3943 sql_help.c:4366 sql_help.c:4375 -#: sql_help.c:4394 sql_help.c:4406 +#: sql_help.c:215 sql_help.c:950 sql_help.c:953 sql_help.c:2330 sql_help.c:2713 +#: sql_help.c:2790 sql_help.c:2795 sql_help.c:3978 sql_help.c:3987 +#: sql_help.c:4006 sql_help.c:4018 sql_help.c:4445 sql_help.c:4454 +#: sql_help.c:4473 sql_help.c:4485 msgid "schema_name" msgstr "ім'я_схеми" -#: sql_help.c:204 +#: sql_help.c:216 msgid "abbreviated_grant_or_revoke" msgstr "скорочено_GRANT_або_REVOKE" -#: sql_help.c:205 +#: sql_help.c:217 msgid "where abbreviated_grant_or_revoke is one of:" msgstr "де скорочено_GRANT_або_REVOKE є одним з:" -#: sql_help.c:206 sql_help.c:207 sql_help.c:208 sql_help.c:209 sql_help.c:210 -#: sql_help.c:211 sql_help.c:212 sql_help.c:213 sql_help.c:214 sql_help.c:215 -#: sql_help.c:576 sql_help.c:612 sql_help.c:680 sql_help.c:830 sql_help.c:977 -#: sql_help.c:1329 sql_help.c:1667 sql_help.c:2458 sql_help.c:2459 -#: sql_help.c:2460 sql_help.c:2461 sql_help.c:2462 sql_help.c:2596 -#: sql_help.c:2683 sql_help.c:2684 sql_help.c:2685 sql_help.c:3250 -#: sql_help.c:3251 sql_help.c:3252 sql_help.c:3253 sql_help.c:3254 -#: sql_help.c:3952 sql_help.c:3956 sql_help.c:4415 sql_help.c:4419 -#: sql_help.c:4735 +#: sql_help.c:218 sql_help.c:219 sql_help.c:220 sql_help.c:221 sql_help.c:222 +#: sql_help.c:223 sql_help.c:224 sql_help.c:225 sql_help.c:226 sql_help.c:227 +#: sql_help.c:228 sql_help.c:229 sql_help.c:598 sql_help.c:634 sql_help.c:702 +#: sql_help.c:852 sql_help.c:1013 sql_help.c:1368 sql_help.c:1712 +#: sql_help.c:2517 sql_help.c:2518 sql_help.c:2519 sql_help.c:2520 +#: sql_help.c:2521 sql_help.c:2655 sql_help.c:2748 sql_help.c:2749 +#: sql_help.c:2750 sql_help.c:3323 sql_help.c:3324 sql_help.c:3325 +#: sql_help.c:3326 sql_help.c:3327 sql_help.c:4027 sql_help.c:4031 +#: sql_help.c:4494 sql_help.c:4498 sql_help.c:4814 msgid "role_name" msgstr "ім'я_ролі" -#: sql_help.c:241 sql_help.c:464 sql_help.c:920 sql_help.c:1345 sql_help.c:1347 -#: sql_help.c:1351 sql_help.c:1401 sql_help.c:1413 sql_help.c:1438 -#: sql_help.c:1697 sql_help.c:2252 sql_help.c:2256 sql_help.c:2368 -#: sql_help.c:2373 sql_help.c:2481 sql_help.c:2651 sql_help.c:2786 -#: sql_help.c:2791 sql_help.c:2793 sql_help.c:2914 sql_help.c:2927 -#: sql_help.c:2941 sql_help.c:2950 sql_help.c:2962 sql_help.c:2991 -#: sql_help.c:4004 sql_help.c:4019 sql_help.c:4021 sql_help.c:4117 -#: sql_help.c:4120 sql_help.c:4122 sql_help.c:4585 sql_help.c:4586 -#: sql_help.c:4595 sql_help.c:4642 sql_help.c:4643 sql_help.c:4644 -#: sql_help.c:4645 sql_help.c:4646 sql_help.c:4647 sql_help.c:4688 -#: sql_help.c:4689 sql_help.c:4694 sql_help.c:4699 sql_help.c:4843 -#: sql_help.c:4844 sql_help.c:4853 sql_help.c:4900 sql_help.c:4901 -#: sql_help.c:4902 sql_help.c:4903 sql_help.c:4904 sql_help.c:4905 -#: sql_help.c:4960 sql_help.c:4962 sql_help.c:5028 sql_help.c:5088 -#: sql_help.c:5089 sql_help.c:5098 sql_help.c:5145 sql_help.c:5146 -#: sql_help.c:5147 sql_help.c:5148 sql_help.c:5149 sql_help.c:5150 +#: sql_help.c:260 sql_help.c:279 sql_help.c:486 sql_help.c:957 sql_help.c:1384 +#: sql_help.c:1386 sql_help.c:1390 sql_help.c:1441 sql_help.c:1453 +#: sql_help.c:1483 sql_help.c:1742 sql_help.c:2299 sql_help.c:2303 +#: sql_help.c:2425 sql_help.c:2431 sql_help.c:2540 sql_help.c:2717 +#: sql_help.c:2853 sql_help.c:2858 sql_help.c:2860 sql_help.c:2982 +#: sql_help.c:2995 sql_help.c:3009 sql_help.c:3018 sql_help.c:3030 +#: sql_help.c:3064 sql_help.c:4080 sql_help.c:4096 sql_help.c:4098 +#: sql_help.c:4196 sql_help.c:4199 sql_help.c:4201 sql_help.c:4664 +#: sql_help.c:4665 sql_help.c:4674 sql_help.c:4721 sql_help.c:4722 +#: sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 sql_help.c:4726 +#: sql_help.c:4767 sql_help.c:4768 sql_help.c:4773 sql_help.c:4778 +#: sql_help.c:4922 sql_help.c:4923 sql_help.c:4932 sql_help.c:4979 +#: sql_help.c:4980 sql_help.c:4981 sql_help.c:4982 sql_help.c:4983 +#: sql_help.c:4984 sql_help.c:5040 sql_help.c:5042 sql_help.c:5109 +#: sql_help.c:5169 sql_help.c:5170 sql_help.c:5179 sql_help.c:5226 +#: sql_help.c:5227 sql_help.c:5228 sql_help.c:5229 sql_help.c:5230 +#: sql_help.c:5231 msgid "expression" msgstr "вираз" -#: sql_help.c:244 sql_help.c:2253 +#: sql_help.c:263 sql_help.c:2300 msgid "domain_constraint" msgstr "обмеження_домену" -#: sql_help.c:246 sql_help.c:248 sql_help.c:251 sql_help.c:479 sql_help.c:480 -#: sql_help.c:1322 sql_help.c:1371 sql_help.c:1372 sql_help.c:1373 -#: sql_help.c:1400 sql_help.c:1412 sql_help.c:1429 sql_help.c:1861 -#: sql_help.c:1863 sql_help.c:2255 sql_help.c:2367 sql_help.c:2372 -#: sql_help.c:2949 sql_help.c:2961 sql_help.c:4016 +#: sql_help.c:265 sql_help.c:267 sql_help.c:270 sql_help.c:278 sql_help.c:501 +#: sql_help.c:502 sql_help.c:1361 sql_help.c:1410 sql_help.c:1411 +#: sql_help.c:1412 sql_help.c:1413 sql_help.c:1440 sql_help.c:1452 +#: sql_help.c:1474 sql_help.c:1906 sql_help.c:1908 sql_help.c:2302 +#: sql_help.c:2424 sql_help.c:2429 sql_help.c:3017 sql_help.c:3029 +#: sql_help.c:4093 msgid "constraint_name" msgstr "ім'я_обмеження" -#: sql_help.c:249 sql_help.c:1323 +#: sql_help.c:268 sql_help.c:1362 msgid "new_constraint_name" msgstr "ім'я_нового_обмеження" -#: sql_help.c:322 sql_help.c:1107 +#: sql_help.c:277 sql_help.c:2301 +msgid "where domain_constraint is:" +msgstr "де обмеження_домену:" + +#: sql_help.c:344 sql_help.c:1144 msgid "new_version" msgstr "нова_версія" -#: sql_help.c:326 sql_help.c:328 +#: sql_help.c:348 sql_help.c:350 msgid "member_object" msgstr "елемент_об'єкт" -#: sql_help.c:329 +#: sql_help.c:351 msgid "where member_object is:" msgstr "де елемент_об'єкт є:" -#: sql_help.c:330 sql_help.c:335 sql_help.c:336 sql_help.c:337 sql_help.c:338 -#: sql_help.c:339 sql_help.c:340 sql_help.c:345 sql_help.c:349 sql_help.c:351 -#: sql_help.c:353 sql_help.c:362 sql_help.c:363 sql_help.c:364 sql_help.c:365 -#: sql_help.c:366 sql_help.c:367 sql_help.c:368 sql_help.c:369 sql_help.c:372 -#: sql_help.c:373 sql_help.c:1853 sql_help.c:1858 sql_help.c:1865 -#: sql_help.c:1866 sql_help.c:1867 sql_help.c:1868 sql_help.c:1869 -#: sql_help.c:1870 sql_help.c:1871 sql_help.c:1876 sql_help.c:1878 -#: sql_help.c:1882 sql_help.c:1884 sql_help.c:1888 sql_help.c:1893 -#: sql_help.c:1894 sql_help.c:1901 sql_help.c:1902 sql_help.c:1903 -#: sql_help.c:1904 sql_help.c:1905 sql_help.c:1906 sql_help.c:1907 -#: sql_help.c:1908 sql_help.c:1909 sql_help.c:1910 sql_help.c:1911 -#: sql_help.c:1916 sql_help.c:1917 sql_help.c:4488 sql_help.c:4493 -#: sql_help.c:4494 sql_help.c:4495 sql_help.c:4496 sql_help.c:4502 -#: sql_help.c:4503 sql_help.c:4508 sql_help.c:4509 sql_help.c:4514 -#: sql_help.c:4515 sql_help.c:4516 sql_help.c:4517 sql_help.c:4518 -#: sql_help.c:4519 +#: sql_help.c:352 sql_help.c:357 sql_help.c:358 sql_help.c:359 sql_help.c:360 +#: sql_help.c:361 sql_help.c:362 sql_help.c:367 sql_help.c:371 sql_help.c:373 +#: sql_help.c:375 sql_help.c:384 sql_help.c:385 sql_help.c:386 sql_help.c:387 +#: sql_help.c:388 sql_help.c:389 sql_help.c:390 sql_help.c:391 sql_help.c:394 +#: sql_help.c:395 sql_help.c:1898 sql_help.c:1903 sql_help.c:1910 +#: sql_help.c:1911 sql_help.c:1912 sql_help.c:1913 sql_help.c:1914 +#: sql_help.c:1915 sql_help.c:1916 sql_help.c:1921 sql_help.c:1923 +#: sql_help.c:1927 sql_help.c:1929 sql_help.c:1933 sql_help.c:1938 +#: sql_help.c:1939 sql_help.c:1946 sql_help.c:1947 sql_help.c:1948 +#: sql_help.c:1949 sql_help.c:1950 sql_help.c:1951 sql_help.c:1952 +#: sql_help.c:1953 sql_help.c:1954 sql_help.c:1955 sql_help.c:1956 +#: sql_help.c:1961 sql_help.c:1962 sql_help.c:4567 sql_help.c:4572 +#: sql_help.c:4573 sql_help.c:4574 sql_help.c:4575 sql_help.c:4581 +#: sql_help.c:4582 sql_help.c:4587 sql_help.c:4588 sql_help.c:4593 +#: sql_help.c:4594 sql_help.c:4595 sql_help.c:4596 sql_help.c:4597 +#: sql_help.c:4598 msgid "object_name" msgstr "ім'я_об'єкту" -#: sql_help.c:331 sql_help.c:1854 sql_help.c:4491 +#: sql_help.c:353 sql_help.c:1899 sql_help.c:4570 msgid "aggregate_name" msgstr "ім'я_агр_функції" -#: sql_help.c:333 sql_help.c:1856 sql_help.c:2146 sql_help.c:2150 -#: sql_help.c:2152 sql_help.c:3377 +#: sql_help.c:355 sql_help.c:1901 sql_help.c:2193 sql_help.c:2197 +#: sql_help.c:2199 sql_help.c:3452 msgid "source_type" msgstr "початковий_тип" -#: sql_help.c:334 sql_help.c:1857 sql_help.c:2147 sql_help.c:2151 -#: sql_help.c:2153 sql_help.c:3378 +#: sql_help.c:356 sql_help.c:1902 sql_help.c:2194 sql_help.c:2198 +#: sql_help.c:2200 sql_help.c:3453 msgid "target_type" msgstr "тип_цілі" -#: sql_help.c:341 sql_help.c:794 sql_help.c:1872 sql_help.c:2148 -#: sql_help.c:2191 sql_help.c:2271 sql_help.c:2539 sql_help.c:2570 -#: sql_help.c:3137 sql_help.c:4390 sql_help.c:4497 sql_help.c:4614 -#: sql_help.c:4618 sql_help.c:4622 sql_help.c:4625 sql_help.c:4872 -#: sql_help.c:4876 sql_help.c:4880 sql_help.c:4883 sql_help.c:5117 -#: sql_help.c:5121 sql_help.c:5125 sql_help.c:5128 +#: sql_help.c:363 sql_help.c:816 sql_help.c:1917 sql_help.c:2195 +#: sql_help.c:2238 sql_help.c:2318 sql_help.c:2598 sql_help.c:2629 +#: sql_help.c:3210 sql_help.c:4469 sql_help.c:4576 sql_help.c:4693 +#: sql_help.c:4697 sql_help.c:4701 sql_help.c:4704 sql_help.c:4951 +#: sql_help.c:4955 sql_help.c:4959 sql_help.c:4962 sql_help.c:5198 +#: sql_help.c:5202 sql_help.c:5206 sql_help.c:5209 msgid "function_name" msgstr "ім'я_функції" -#: sql_help.c:346 sql_help.c:787 sql_help.c:1879 sql_help.c:2563 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1924 sql_help.c:2622 msgid "operator_name" msgstr "ім'я_оператора" -#: sql_help.c:347 sql_help.c:721 sql_help.c:725 sql_help.c:729 sql_help.c:1880 -#: sql_help.c:2540 sql_help.c:3501 +#: sql_help.c:369 sql_help.c:743 sql_help.c:747 sql_help.c:751 sql_help.c:1925 +#: sql_help.c:2599 sql_help.c:3576 msgid "left_type" msgstr "тип_ліворуч" -#: sql_help.c:348 sql_help.c:722 sql_help.c:726 sql_help.c:730 sql_help.c:1881 -#: sql_help.c:2541 sql_help.c:3502 +#: sql_help.c:370 sql_help.c:744 sql_help.c:748 sql_help.c:752 sql_help.c:1926 +#: sql_help.c:2600 sql_help.c:3577 msgid "right_type" msgstr "тип_праворуч" -#: sql_help.c:350 sql_help.c:352 sql_help.c:750 sql_help.c:753 sql_help.c:756 -#: sql_help.c:785 sql_help.c:797 sql_help.c:805 sql_help.c:808 sql_help.c:811 -#: sql_help.c:1418 sql_help.c:1883 sql_help.c:1885 sql_help.c:2560 -#: sql_help.c:2581 sql_help.c:2967 sql_help.c:3511 sql_help.c:3520 +#: sql_help.c:372 sql_help.c:374 sql_help.c:772 sql_help.c:775 sql_help.c:778 +#: sql_help.c:807 sql_help.c:819 sql_help.c:827 sql_help.c:830 sql_help.c:833 +#: sql_help.c:1461 sql_help.c:1928 sql_help.c:1930 sql_help.c:2619 +#: sql_help.c:2640 sql_help.c:3038 sql_help.c:3586 sql_help.c:3595 msgid "index_method" msgstr "метод_індексу" -#: sql_help.c:354 sql_help.c:1889 sql_help.c:4504 +#: sql_help.c:376 sql_help.c:1934 sql_help.c:4583 msgid "procedure_name" msgstr "назва_процедури" -#: sql_help.c:358 sql_help.c:1895 sql_help.c:3927 sql_help.c:4510 +#: sql_help.c:380 sql_help.c:1940 sql_help.c:4002 sql_help.c:4589 msgid "routine_name" msgstr "ім'я_підпрограми" -#: sql_help.c:370 sql_help.c:1390 sql_help.c:1912 sql_help.c:2415 -#: sql_help.c:2621 sql_help.c:2922 sql_help.c:3104 sql_help.c:3682 -#: sql_help.c:3949 sql_help.c:4412 +#: sql_help.c:392 sql_help.c:1430 sql_help.c:1957 sql_help.c:2474 +#: sql_help.c:2680 sql_help.c:2990 sql_help.c:3177 sql_help.c:3757 +#: sql_help.c:4024 sql_help.c:4491 msgid "type_name" msgstr "назва_типу" -#: sql_help.c:371 sql_help.c:1913 sql_help.c:2414 sql_help.c:2620 -#: sql_help.c:3105 sql_help.c:3335 sql_help.c:3683 sql_help.c:3934 -#: sql_help.c:4397 +#: sql_help.c:393 sql_help.c:1958 sql_help.c:2473 sql_help.c:2679 +#: sql_help.c:3178 sql_help.c:3410 sql_help.c:3758 sql_help.c:4009 +#: sql_help.c:4476 msgid "lang_name" msgstr "назва_мови" -#: sql_help.c:374 +#: sql_help.c:396 msgid "and aggregate_signature is:" msgstr "і сигнатура_агр_функції:" -#: sql_help.c:397 sql_help.c:2013 sql_help.c:2296 +#: sql_help.c:419 sql_help.c:2060 sql_help.c:2343 msgid "handler_function" msgstr "функція_обробник" -#: sql_help.c:398 sql_help.c:2297 +#: sql_help.c:420 sql_help.c:2344 msgid "validator_function" msgstr "функція_перевірки" -#: sql_help.c:446 sql_help.c:525 sql_help.c:669 sql_help.c:861 sql_help.c:1011 -#: sql_help.c:1317 sql_help.c:1594 +#: sql_help.c:468 sql_help.c:547 sql_help.c:691 sql_help.c:883 sql_help.c:1047 +#: sql_help.c:1356 sql_help.c:1639 msgid "action" msgstr "дія" -#: sql_help.c:448 sql_help.c:455 sql_help.c:459 sql_help.c:460 sql_help.c:463 -#: sql_help.c:465 sql_help.c:466 sql_help.c:467 sql_help.c:469 sql_help.c:472 -#: sql_help.c:474 sql_help.c:475 sql_help.c:673 sql_help.c:683 sql_help.c:685 -#: sql_help.c:688 sql_help.c:690 sql_help.c:691 sql_help.c:919 sql_help.c:1088 -#: sql_help.c:1319 sql_help.c:1337 sql_help.c:1341 sql_help.c:1342 -#: sql_help.c:1346 sql_help.c:1348 sql_help.c:1349 sql_help.c:1350 -#: sql_help.c:1352 sql_help.c:1353 sql_help.c:1355 sql_help.c:1358 -#: sql_help.c:1359 sql_help.c:1361 sql_help.c:1364 sql_help.c:1366 -#: sql_help.c:1367 sql_help.c:1414 sql_help.c:1416 sql_help.c:1423 -#: sql_help.c:1432 sql_help.c:1437 sql_help.c:1444 sql_help.c:1445 -#: sql_help.c:1696 sql_help.c:1699 sql_help.c:1703 sql_help.c:1739 -#: sql_help.c:1860 sql_help.c:1976 sql_help.c:1982 sql_help.c:1996 -#: sql_help.c:1997 sql_help.c:1998 sql_help.c:2346 sql_help.c:2359 -#: sql_help.c:2412 sql_help.c:2480 sql_help.c:2486 sql_help.c:2519 -#: sql_help.c:2650 sql_help.c:2755 sql_help.c:2790 sql_help.c:2792 -#: sql_help.c:2904 sql_help.c:2913 sql_help.c:2923 sql_help.c:2926 -#: sql_help.c:2936 sql_help.c:2940 sql_help.c:2963 sql_help.c:2965 -#: sql_help.c:2972 sql_help.c:2985 sql_help.c:2990 sql_help.c:2997 -#: sql_help.c:2998 sql_help.c:3014 sql_help.c:3140 sql_help.c:3280 -#: sql_help.c:3906 sql_help.c:3907 sql_help.c:4003 sql_help.c:4018 -#: sql_help.c:4020 sql_help.c:4022 sql_help.c:4116 sql_help.c:4119 -#: sql_help.c:4121 sql_help.c:4123 sql_help.c:4369 sql_help.c:4370 -#: sql_help.c:4490 sql_help.c:4651 sql_help.c:4658 sql_help.c:4660 -#: sql_help.c:4909 sql_help.c:4916 sql_help.c:4918 sql_help.c:4959 -#: sql_help.c:4961 sql_help.c:4963 sql_help.c:5016 sql_help.c:5154 -#: sql_help.c:5161 sql_help.c:5163 +#: sql_help.c:470 sql_help.c:477 sql_help.c:481 sql_help.c:482 sql_help.c:485 +#: sql_help.c:487 sql_help.c:488 sql_help.c:489 sql_help.c:491 sql_help.c:494 +#: sql_help.c:496 sql_help.c:497 sql_help.c:695 sql_help.c:705 sql_help.c:707 +#: sql_help.c:710 sql_help.c:712 sql_help.c:713 sql_help.c:956 sql_help.c:1125 +#: sql_help.c:1358 sql_help.c:1376 sql_help.c:1380 sql_help.c:1381 +#: sql_help.c:1385 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1391 sql_help.c:1392 sql_help.c:1394 sql_help.c:1397 +#: sql_help.c:1398 sql_help.c:1400 sql_help.c:1403 sql_help.c:1405 +#: sql_help.c:1406 sql_help.c:1454 sql_help.c:1455 sql_help.c:1456 +#: sql_help.c:1458 sql_help.c:1459 sql_help.c:1466 sql_help.c:1467 +#: sql_help.c:1477 sql_help.c:1482 sql_help.c:1489 sql_help.c:1490 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:1748 sql_help.c:1784 +#: sql_help.c:1905 sql_help.c:2022 sql_help.c:2028 sql_help.c:2042 +#: sql_help.c:2043 sql_help.c:2044 sql_help.c:2401 sql_help.c:2416 +#: sql_help.c:2430 sql_help.c:2471 sql_help.c:2539 sql_help.c:2545 +#: sql_help.c:2578 sql_help.c:2716 sql_help.c:2822 sql_help.c:2857 +#: sql_help.c:2859 sql_help.c:2972 sql_help.c:2981 sql_help.c:2991 +#: sql_help.c:2994 sql_help.c:3004 sql_help.c:3008 sql_help.c:3031 +#: sql_help.c:3032 sql_help.c:3033 sql_help.c:3035 sql_help.c:3036 +#: sql_help.c:3043 sql_help.c:3044 sql_help.c:3058 sql_help.c:3063 +#: sql_help.c:3070 sql_help.c:3071 sql_help.c:3087 sql_help.c:3213 +#: sql_help.c:3353 sql_help.c:3981 sql_help.c:3982 sql_help.c:4079 +#: sql_help.c:4095 sql_help.c:4097 sql_help.c:4099 sql_help.c:4195 +#: sql_help.c:4198 sql_help.c:4200 sql_help.c:4202 sql_help.c:4448 +#: sql_help.c:4449 sql_help.c:4569 sql_help.c:4730 sql_help.c:4737 +#: sql_help.c:4739 sql_help.c:4988 sql_help.c:4995 sql_help.c:4997 +#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5043 sql_help.c:5097 +#: sql_help.c:5235 sql_help.c:5242 sql_help.c:5244 msgid "column_name" msgstr "назва_стовпця" -#: sql_help.c:449 sql_help.c:674 sql_help.c:1320 sql_help.c:1704 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1359 sql_help.c:1749 msgid "new_column_name" msgstr "нова_назва_стовпця" -#: sql_help.c:454 sql_help.c:546 sql_help.c:682 sql_help.c:882 sql_help.c:1032 -#: sql_help.c:1336 sql_help.c:1604 +#: sql_help.c:476 sql_help.c:568 sql_help.c:704 sql_help.c:904 sql_help.c:1068 +#: sql_help.c:1375 sql_help.c:1649 msgid "where action is one of:" msgstr "де допустима дія:" -#: sql_help.c:456 sql_help.c:461 sql_help.c:1080 sql_help.c:1338 -#: sql_help.c:1343 sql_help.c:1606 sql_help.c:1610 sql_help.c:2250 -#: sql_help.c:2347 sql_help.c:2559 sql_help.c:2748 sql_help.c:2905 -#: sql_help.c:3187 sql_help.c:4175 +#: sql_help.c:478 sql_help.c:483 sql_help.c:1117 sql_help.c:1377 +#: sql_help.c:1382 sql_help.c:1651 sql_help.c:1655 sql_help.c:2297 +#: sql_help.c:2402 sql_help.c:2618 sql_help.c:2815 sql_help.c:2973 +#: sql_help.c:3260 sql_help.c:4254 msgid "data_type" msgstr "тип_даних" -#: sql_help.c:457 sql_help.c:462 sql_help.c:1339 sql_help.c:1344 -#: sql_help.c:1439 sql_help.c:1607 sql_help.c:1611 sql_help.c:2251 -#: sql_help.c:2350 sql_help.c:2482 sql_help.c:2907 sql_help.c:2915 -#: sql_help.c:2928 sql_help.c:2942 sql_help.c:2992 sql_help.c:3188 -#: sql_help.c:3194 sql_help.c:4013 +#: sql_help.c:479 sql_help.c:484 sql_help.c:1378 sql_help.c:1383 +#: sql_help.c:1484 sql_help.c:1652 sql_help.c:1656 sql_help.c:2298 +#: sql_help.c:2405 sql_help.c:2541 sql_help.c:2975 sql_help.c:2983 +#: sql_help.c:2996 sql_help.c:3010 sql_help.c:3065 sql_help.c:3261 +#: sql_help.c:3267 sql_help.c:4090 msgid "collation" msgstr "правила_сортування" -#: sql_help.c:458 sql_help.c:1340 sql_help.c:2351 sql_help.c:2360 -#: sql_help.c:2908 sql_help.c:2924 sql_help.c:2937 +#: sql_help.c:480 sql_help.c:1379 sql_help.c:2406 sql_help.c:2417 +#: sql_help.c:2976 sql_help.c:2992 sql_help.c:3005 msgid "column_constraint" msgstr "обмеження_стовпця" -#: sql_help.c:468 sql_help.c:610 sql_help.c:684 sql_help.c:1360 sql_help.c:5010 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1399 sql_help.c:5091 msgid "integer" msgstr "ціле" -#: sql_help.c:470 sql_help.c:473 sql_help.c:686 sql_help.c:689 sql_help.c:1362 -#: sql_help.c:1365 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1401 +#: sql_help.c:1404 msgid "attribute_option" msgstr "параметр_атрибуту" -#: sql_help.c:478 sql_help.c:1369 sql_help.c:2352 sql_help.c:2361 -#: sql_help.c:2909 sql_help.c:2925 sql_help.c:2938 +#: sql_help.c:500 sql_help.c:1408 sql_help.c:2407 sql_help.c:2418 +#: sql_help.c:2977 sql_help.c:2993 sql_help.c:3006 msgid "table_constraint" msgstr "обмеження_таблиці" -#: sql_help.c:481 sql_help.c:482 sql_help.c:483 sql_help.c:484 sql_help.c:1374 -#: sql_help.c:1375 sql_help.c:1376 sql_help.c:1377 sql_help.c:1914 +#: sql_help.c:503 sql_help.c:504 sql_help.c:505 sql_help.c:506 sql_help.c:1414 +#: sql_help.c:1415 sql_help.c:1416 sql_help.c:1417 sql_help.c:1959 msgid "trigger_name" msgstr "ім'я_тригеру" -#: sql_help.c:485 sql_help.c:486 sql_help.c:1388 sql_help.c:1389 -#: sql_help.c:2353 sql_help.c:2358 sql_help.c:2912 sql_help.c:2935 +#: sql_help.c:507 sql_help.c:508 sql_help.c:1428 sql_help.c:1429 +#: sql_help.c:2410 sql_help.c:2415 sql_help.c:2980 sql_help.c:3003 msgid "parent_table" msgstr "батьківська_таблиця" -#: sql_help.c:545 sql_help.c:602 sql_help.c:671 sql_help.c:881 sql_help.c:1031 -#: sql_help.c:1563 sql_help.c:2282 +#: sql_help.c:567 sql_help.c:624 sql_help.c:693 sql_help.c:903 sql_help.c:1067 +#: sql_help.c:1608 sql_help.c:2329 msgid "extension_name" msgstr "ім'я_розширення" -#: sql_help.c:547 sql_help.c:1033 sql_help.c:2416 +#: sql_help.c:569 sql_help.c:1069 sql_help.c:2475 msgid "execution_cost" msgstr "вартість_виконання" -#: sql_help.c:548 sql_help.c:1034 sql_help.c:2417 +#: sql_help.c:570 sql_help.c:1070 sql_help.c:2476 msgid "result_rows" msgstr "рядки_результату" -#: sql_help.c:549 sql_help.c:2418 +#: sql_help.c:571 sql_help.c:2477 msgid "support_function" msgstr "функція_підтримки" -#: sql_help.c:571 sql_help.c:573 sql_help.c:956 sql_help.c:964 sql_help.c:968 -#: sql_help.c:971 sql_help.c:974 sql_help.c:1646 sql_help.c:1654 -#: sql_help.c:1658 sql_help.c:1661 sql_help.c:1664 sql_help.c:2726 -#: sql_help.c:2728 sql_help.c:2731 sql_help.c:2732 sql_help.c:3904 -#: sql_help.c:3905 sql_help.c:3909 sql_help.c:3910 sql_help.c:3913 -#: sql_help.c:3914 sql_help.c:3916 sql_help.c:3917 sql_help.c:3919 -#: sql_help.c:3920 sql_help.c:3922 sql_help.c:3923 sql_help.c:3925 -#: sql_help.c:3926 sql_help.c:3932 sql_help.c:3933 sql_help.c:3935 -#: sql_help.c:3936 sql_help.c:3938 sql_help.c:3939 sql_help.c:3941 -#: sql_help.c:3942 sql_help.c:3944 sql_help.c:3945 sql_help.c:3947 -#: sql_help.c:3948 sql_help.c:3950 sql_help.c:3951 sql_help.c:3953 -#: sql_help.c:3954 sql_help.c:4367 sql_help.c:4368 sql_help.c:4372 -#: sql_help.c:4373 sql_help.c:4376 sql_help.c:4377 sql_help.c:4379 -#: sql_help.c:4380 sql_help.c:4382 sql_help.c:4383 sql_help.c:4385 -#: sql_help.c:4386 sql_help.c:4388 sql_help.c:4389 sql_help.c:4395 -#: sql_help.c:4396 sql_help.c:4398 sql_help.c:4399 sql_help.c:4401 -#: sql_help.c:4402 sql_help.c:4404 sql_help.c:4405 sql_help.c:4407 -#: sql_help.c:4408 sql_help.c:4410 sql_help.c:4411 sql_help.c:4413 -#: sql_help.c:4414 sql_help.c:4416 sql_help.c:4417 +#: sql_help.c:593 sql_help.c:595 sql_help.c:992 sql_help.c:1000 sql_help.c:1004 +#: sql_help.c:1007 sql_help.c:1010 sql_help.c:1691 sql_help.c:1699 +#: sql_help.c:1703 sql_help.c:1706 sql_help.c:1709 sql_help.c:2791 +#: sql_help.c:2793 sql_help.c:2796 sql_help.c:2797 sql_help.c:3979 +#: sql_help.c:3980 sql_help.c:3984 sql_help.c:3985 sql_help.c:3988 +#: sql_help.c:3989 sql_help.c:3991 sql_help.c:3992 sql_help.c:3994 +#: sql_help.c:3995 sql_help.c:3997 sql_help.c:3998 sql_help.c:4000 +#: sql_help.c:4001 sql_help.c:4007 sql_help.c:4008 sql_help.c:4010 +#: sql_help.c:4011 sql_help.c:4013 sql_help.c:4014 sql_help.c:4016 +#: sql_help.c:4017 sql_help.c:4019 sql_help.c:4020 sql_help.c:4022 +#: sql_help.c:4023 sql_help.c:4025 sql_help.c:4026 sql_help.c:4028 +#: sql_help.c:4029 sql_help.c:4446 sql_help.c:4447 sql_help.c:4451 +#: sql_help.c:4452 sql_help.c:4455 sql_help.c:4456 sql_help.c:4458 +#: sql_help.c:4459 sql_help.c:4461 sql_help.c:4462 sql_help.c:4464 +#: sql_help.c:4465 sql_help.c:4467 sql_help.c:4468 sql_help.c:4474 +#: sql_help.c:4475 sql_help.c:4477 sql_help.c:4478 sql_help.c:4480 +#: sql_help.c:4481 sql_help.c:4483 sql_help.c:4484 sql_help.c:4486 +#: sql_help.c:4487 sql_help.c:4489 sql_help.c:4490 sql_help.c:4492 +#: sql_help.c:4493 sql_help.c:4495 sql_help.c:4496 msgid "role_specification" msgstr "вказання_ролі" -#: sql_help.c:572 sql_help.c:574 sql_help.c:1677 sql_help.c:2217 -#: sql_help.c:2734 sql_help.c:3265 sql_help.c:3716 sql_help.c:4745 +#: sql_help.c:594 sql_help.c:596 sql_help.c:1722 sql_help.c:2264 +#: sql_help.c:2799 sql_help.c:3338 sql_help.c:3791 sql_help.c:4824 msgid "user_name" msgstr "ім'я_користувача" -#: sql_help.c:575 sql_help.c:976 sql_help.c:1666 sql_help.c:2733 -#: sql_help.c:3955 sql_help.c:4418 +#: sql_help.c:597 sql_help.c:1012 sql_help.c:1711 sql_help.c:2798 +#: sql_help.c:4030 sql_help.c:4497 msgid "where role_specification can be:" msgstr "де вказання_ролі може бути:" -#: sql_help.c:577 +#: sql_help.c:599 msgid "group_name" msgstr "ім'я_групи" -#: sql_help.c:598 sql_help.c:1435 sql_help.c:2229 sql_help.c:2489 -#: sql_help.c:2523 sql_help.c:2920 sql_help.c:2933 sql_help.c:2947 -#: sql_help.c:2988 sql_help.c:3018 sql_help.c:3030 sql_help.c:3946 -#: sql_help.c:4409 +#: sql_help.c:620 sql_help.c:1480 sql_help.c:2276 sql_help.c:2548 +#: sql_help.c:2582 sql_help.c:2988 sql_help.c:3001 sql_help.c:3015 +#: sql_help.c:3061 sql_help.c:3091 sql_help.c:3103 sql_help.c:4021 +#: sql_help.c:4488 msgid "tablespace_name" msgstr "ім'я_табличного_простору" -#: sql_help.c:600 sql_help.c:693 sql_help.c:1382 sql_help.c:1392 -#: sql_help.c:1430 sql_help.c:1792 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1422 sql_help.c:1432 +#: sql_help.c:1475 sql_help.c:1837 msgid "index_name" msgstr "назва_індексу" -#: sql_help.c:604 sql_help.c:607 sql_help.c:696 sql_help.c:698 sql_help.c:1385 -#: sql_help.c:1387 sql_help.c:1433 sql_help.c:2487 sql_help.c:2521 -#: sql_help.c:2918 sql_help.c:2931 sql_help.c:2945 sql_help.c:2986 -#: sql_help.c:3016 +#: sql_help.c:626 sql_help.c:629 sql_help.c:718 sql_help.c:720 sql_help.c:1425 +#: sql_help.c:1427 sql_help.c:1478 sql_help.c:2546 sql_help.c:2580 +#: sql_help.c:2986 sql_help.c:2999 sql_help.c:3013 sql_help.c:3059 +#: sql_help.c:3089 msgid "storage_parameter" msgstr "параметр_зберігання" -#: sql_help.c:609 +#: sql_help.c:631 msgid "column_number" msgstr "номер_стовпця" -#: sql_help.c:633 sql_help.c:1877 sql_help.c:4501 +#: sql_help.c:655 sql_help.c:1922 sql_help.c:4580 msgid "large_object_oid" msgstr "oid_великого_об'єкта" -#: sql_help.c:692 sql_help.c:1368 sql_help.c:2906 +#: sql_help.c:714 sql_help.c:1407 sql_help.c:2974 msgid "compression_method" msgstr "compression_method" -#: sql_help.c:694 sql_help.c:1383 +#: sql_help.c:716 sql_help.c:1423 msgid "new_access_method" msgstr "новий_метод_доступа" -#: sql_help.c:731 sql_help.c:2544 +#: sql_help.c:753 sql_help.c:2603 msgid "res_proc" msgstr "res_процедура" -#: sql_help.c:732 sql_help.c:2545 +#: sql_help.c:754 sql_help.c:2604 msgid "join_proc" msgstr "процедура_приєднання" -#: sql_help.c:733 sql_help.c:2542 +#: sql_help.c:755 sql_help.c:2601 msgid "com_op" msgstr "комут_оператор" -#: sql_help.c:734 sql_help.c:2543 +#: sql_help.c:756 sql_help.c:2602 msgid "neg_op" msgstr "зворотній_оператор" -#: sql_help.c:786 sql_help.c:798 sql_help.c:2562 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2621 msgid "strategy_number" msgstr "номер_стратегії" -#: sql_help.c:788 sql_help.c:789 sql_help.c:792 sql_help.c:793 sql_help.c:799 -#: sql_help.c:800 sql_help.c:802 sql_help.c:803 sql_help.c:2564 sql_help.c:2565 -#: sql_help.c:2568 sql_help.c:2569 +#: sql_help.c:810 sql_help.c:811 sql_help.c:814 sql_help.c:815 sql_help.c:821 +#: sql_help.c:822 sql_help.c:824 sql_help.c:825 sql_help.c:2623 sql_help.c:2624 +#: sql_help.c:2627 sql_help.c:2628 msgid "op_type" msgstr "тип_операції" -#: sql_help.c:790 sql_help.c:2566 +#: sql_help.c:812 sql_help.c:2625 msgid "sort_family_name" msgstr "ім'я_родини_сортування" -#: sql_help.c:791 sql_help.c:801 sql_help.c:2567 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2626 msgid "support_number" msgstr "номер_підтримки" -#: sql_help.c:795 sql_help.c:2149 sql_help.c:2571 sql_help.c:3107 -#: sql_help.c:3109 +#: sql_help.c:817 sql_help.c:2196 sql_help.c:2630 sql_help.c:3180 +#: sql_help.c:3182 msgid "argument_type" msgstr "тип_аргументу" -#: sql_help.c:826 sql_help.c:829 sql_help.c:918 sql_help.c:1047 sql_help.c:1087 -#: sql_help.c:1559 sql_help.c:1562 sql_help.c:1738 sql_help.c:1791 -#: sql_help.c:1862 sql_help.c:1887 sql_help.c:1900 sql_help.c:1915 -#: sql_help.c:1975 sql_help.c:1981 sql_help.c:2345 sql_help.c:2357 -#: sql_help.c:2478 sql_help.c:2518 sql_help.c:2595 sql_help.c:2649 -#: sql_help.c:2702 sql_help.c:2754 sql_help.c:2787 sql_help.c:2794 -#: sql_help.c:2903 sql_help.c:2921 sql_help.c:2934 sql_help.c:3013 -#: sql_help.c:3133 sql_help.c:3314 sql_help.c:3537 sql_help.c:3586 -#: sql_help.c:3692 sql_help.c:3902 sql_help.c:3908 sql_help.c:3969 -#: sql_help.c:4001 sql_help.c:4365 sql_help.c:4371 sql_help.c:4489 -#: sql_help.c:4602 sql_help.c:4665 sql_help.c:4704 sql_help.c:4860 -#: sql_help.c:4923 sql_help.c:4957 sql_help.c:5015 sql_help.c:5105 -#: sql_help.c:5168 +#: sql_help.c:848 sql_help.c:851 sql_help.c:952 sql_help.c:955 sql_help.c:1083 +#: sql_help.c:1124 sql_help.c:1604 sql_help.c:1607 sql_help.c:1783 +#: sql_help.c:1836 sql_help.c:1907 sql_help.c:1932 sql_help.c:1945 +#: sql_help.c:1960 sql_help.c:2021 sql_help.c:2027 sql_help.c:2400 +#: sql_help.c:2414 sql_help.c:2537 sql_help.c:2577 sql_help.c:2654 +#: sql_help.c:2715 sql_help.c:2767 sql_help.c:2821 sql_help.c:2854 +#: sql_help.c:2861 sql_help.c:2971 sql_help.c:2989 sql_help.c:3002 +#: sql_help.c:3086 sql_help.c:3206 sql_help.c:3388 sql_help.c:3612 +#: sql_help.c:3661 sql_help.c:3767 sql_help.c:3977 sql_help.c:3983 +#: sql_help.c:4044 sql_help.c:4077 sql_help.c:4444 sql_help.c:4450 +#: sql_help.c:4568 sql_help.c:4681 sql_help.c:4744 sql_help.c:4783 +#: sql_help.c:4939 sql_help.c:5002 sql_help.c:5037 sql_help.c:5096 +#: sql_help.c:5186 sql_help.c:5249 msgid "table_name" msgstr "ім'я_таблиці" -#: sql_help.c:831 sql_help.c:2597 +#: sql_help.c:853 sql_help.c:2656 msgid "using_expression" msgstr "вираз_використання" -#: sql_help.c:832 sql_help.c:2598 +#: sql_help.c:854 sql_help.c:2657 msgid "check_expression" msgstr "вираз_перевірки" -#: sql_help.c:905 sql_help.c:907 sql_help.c:909 sql_help.c:2645 +#: sql_help.c:936 sql_help.c:938 sql_help.c:2708 msgid "publication_object" msgstr "об'єкт_публікація" -#: sql_help.c:911 sql_help.c:2646 +#: sql_help.c:940 +msgid "publication_drop_object" +msgstr "об'єкт_видалення_публікації" + +#: sql_help.c:942 sql_help.c:2709 msgid "publication_parameter" msgstr "параметр_публікації" -#: sql_help.c:917 sql_help.c:2648 +#: sql_help.c:948 sql_help.c:2711 msgid "where publication_object is one of:" msgstr "де об'єкт_публікація є одним з:" -#: sql_help.c:960 sql_help.c:1650 sql_help.c:2456 sql_help.c:2681 -#: sql_help.c:3248 +#: sql_help.c:949 sql_help.c:1777 sql_help.c:2712 sql_help.c:5080 +msgid "table_and_columns" +msgstr "таблиця_і_стовпці" + +#: sql_help.c:951 +msgid "and publication_drop_object is one of:" +msgstr "і об'єкт_видалення_публікації є одним з:" + +#: sql_help.c:954 sql_help.c:1782 sql_help.c:2714 sql_help.c:5095 +msgid "and table_and_columns is:" +msgstr "і таблиця_і_стовпці:" + +#: sql_help.c:996 sql_help.c:1695 sql_help.c:2515 sql_help.c:2746 +#: sql_help.c:3321 msgid "password" msgstr "пароль" -#: sql_help.c:961 sql_help.c:1651 sql_help.c:2457 sql_help.c:2682 -#: sql_help.c:3249 +#: sql_help.c:997 sql_help.c:1696 sql_help.c:2516 sql_help.c:2747 +#: sql_help.c:3322 msgid "timestamp" msgstr "мітка часу" -#: sql_help.c:965 sql_help.c:969 sql_help.c:972 sql_help.c:975 sql_help.c:1655 -#: sql_help.c:1659 sql_help.c:1662 sql_help.c:1665 sql_help.c:3915 -#: sql_help.c:4378 +#: sql_help.c:1001 sql_help.c:1005 sql_help.c:1008 sql_help.c:1011 +#: sql_help.c:1700 sql_help.c:1704 sql_help.c:1707 sql_help.c:1710 +#: sql_help.c:3990 sql_help.c:4457 msgid "database_name" msgstr "назва_бази_даних" -#: sql_help.c:1081 sql_help.c:2749 +#: sql_help.c:1118 sql_help.c:2816 msgid "increment" msgstr "інкремент" -#: sql_help.c:1082 sql_help.c:2750 +#: sql_help.c:1119 sql_help.c:2817 msgid "minvalue" msgstr "мін_значення" -#: sql_help.c:1083 sql_help.c:2751 +#: sql_help.c:1120 sql_help.c:2818 msgid "maxvalue" msgstr "макс_значення" -#: sql_help.c:1084 sql_help.c:2752 sql_help.c:4598 sql_help.c:4702 -#: sql_help.c:4856 sql_help.c:5032 sql_help.c:5101 +#: sql_help.c:1121 sql_help.c:2819 sql_help.c:4677 sql_help.c:4781 +#: sql_help.c:4935 sql_help.c:5113 sql_help.c:5182 msgid "start" msgstr "початок" -#: sql_help.c:1085 sql_help.c:1357 +#: sql_help.c:1122 sql_help.c:1396 msgid "restart" msgstr "перезапуск" -#: sql_help.c:1086 sql_help.c:2753 +#: sql_help.c:1123 sql_help.c:2820 msgid "cache" msgstr "кеш" -#: sql_help.c:1131 +#: sql_help.c:1168 msgid "new_target" msgstr "нова_ціль" -#: sql_help.c:1150 sql_help.c:2806 +#: sql_help.c:1187 sql_help.c:2873 msgid "conninfo" msgstr "інформація_підключення" -#: sql_help.c:1152 sql_help.c:1156 sql_help.c:1160 sql_help.c:2807 +#: sql_help.c:1189 sql_help.c:1193 sql_help.c:1197 sql_help.c:2874 msgid "publication_name" msgstr "назва_публікації" -#: sql_help.c:1153 sql_help.c:1157 sql_help.c:1161 +#: sql_help.c:1190 sql_help.c:1194 sql_help.c:1198 msgid "publication_option" msgstr "publication_option" -#: sql_help.c:1164 +#: sql_help.c:1201 msgid "refresh_option" msgstr "опція_оновлення" -#: sql_help.c:1169 sql_help.c:2808 +#: sql_help.c:1206 sql_help.c:2875 msgid "subscription_parameter" msgstr "параметр_підписки" -#: sql_help.c:1172 +#: sql_help.c:1209 msgid "skip_option" msgstr "опція_пропуска" -#: sql_help.c:1332 sql_help.c:1335 +#: sql_help.c:1371 sql_help.c:1374 msgid "partition_name" msgstr "ім'я_розділу" -#: sql_help.c:1333 sql_help.c:2362 sql_help.c:2939 +#: sql_help.c:1372 sql_help.c:2419 sql_help.c:3007 msgid "partition_bound_spec" msgstr "специфікація_рамок_розділу" -#: sql_help.c:1354 sql_help.c:1404 sql_help.c:2953 +#: sql_help.c:1393 sql_help.c:1444 sql_help.c:3021 msgid "sequence_options" msgstr "опції_послідовності" -#: sql_help.c:1356 +#: sql_help.c:1395 msgid "sequence_option" msgstr "опція_послідовності" -#: sql_help.c:1370 +#: sql_help.c:1409 msgid "table_constraint_using_index" msgstr "індекс_обмеження_таблиці" -#: sql_help.c:1378 sql_help.c:1379 sql_help.c:1380 sql_help.c:1381 +#: sql_help.c:1418 sql_help.c:1419 sql_help.c:1420 sql_help.c:1421 msgid "rewrite_rule_name" msgstr "ім'я_правила_перезапису" -#: sql_help.c:1393 sql_help.c:2374 sql_help.c:2978 +#: sql_help.c:1433 sql_help.c:2433 sql_help.c:3051 msgid "and partition_bound_spec is:" msgstr "і специфікація_рамок_розділу:" -#: sql_help.c:1394 sql_help.c:1395 sql_help.c:1396 sql_help.c:2375 -#: sql_help.c:2376 sql_help.c:2377 sql_help.c:2979 sql_help.c:2980 -#: sql_help.c:2981 +#: sql_help.c:1434 sql_help.c:1435 sql_help.c:1436 sql_help.c:2434 +#: sql_help.c:2435 sql_help.c:2436 sql_help.c:3052 sql_help.c:3053 +#: sql_help.c:3054 msgid "partition_bound_expr" msgstr "код_секції" -#: sql_help.c:1397 sql_help.c:1398 sql_help.c:2378 sql_help.c:2379 -#: sql_help.c:2982 sql_help.c:2983 +#: sql_help.c:1437 sql_help.c:1438 sql_help.c:2437 sql_help.c:2438 +#: sql_help.c:3055 sql_help.c:3056 msgid "numeric_literal" msgstr "числовий_літерал" -#: sql_help.c:1399 +#: sql_help.c:1439 msgid "and column_constraint is:" msgstr "і обмеження_стовпця:" -#: sql_help.c:1402 sql_help.c:2369 sql_help.c:2410 sql_help.c:2619 -#: sql_help.c:2951 +#: sql_help.c:1442 sql_help.c:2426 sql_help.c:2469 sql_help.c:2678 +#: sql_help.c:3019 msgid "default_expr" msgstr "вираз_за_замовчуванням" -#: sql_help.c:1403 sql_help.c:2370 sql_help.c:2952 +#: sql_help.c:1443 sql_help.c:2427 sql_help.c:3020 msgid "generation_expr" msgstr "код_генерації" -#: sql_help.c:1405 sql_help.c:1406 sql_help.c:1415 sql_help.c:1417 -#: sql_help.c:1421 sql_help.c:2954 sql_help.c:2955 sql_help.c:2964 -#: sql_help.c:2966 sql_help.c:2970 +#: sql_help.c:1445 sql_help.c:1446 sql_help.c:1457 sql_help.c:1460 +#: sql_help.c:1464 sql_help.c:3022 sql_help.c:3023 sql_help.c:3034 +#: sql_help.c:3037 sql_help.c:3041 msgid "index_parameters" msgstr "параметри_індексу" -#: sql_help.c:1407 sql_help.c:1424 sql_help.c:2956 sql_help.c:2973 +#: sql_help.c:1447 sql_help.c:1468 sql_help.c:3024 sql_help.c:3045 msgid "reftable" msgstr "залежна_таблиця" -#: sql_help.c:1408 sql_help.c:1425 sql_help.c:2957 sql_help.c:2974 +#: sql_help.c:1448 sql_help.c:1469 sql_help.c:1470 sql_help.c:3025 +#: sql_help.c:3046 sql_help.c:3047 msgid "refcolumn" msgstr "залежний_стовпець" -#: sql_help.c:1409 sql_help.c:1410 sql_help.c:1426 sql_help.c:1427 -#: sql_help.c:2958 sql_help.c:2959 sql_help.c:2975 sql_help.c:2976 +#: sql_help.c:1449 sql_help.c:1450 sql_help.c:1471 sql_help.c:1472 +#: sql_help.c:3026 sql_help.c:3027 sql_help.c:3048 sql_help.c:3049 msgid "referential_action" msgstr "дія_посилання" -#: sql_help.c:1411 sql_help.c:2371 sql_help.c:2960 +#: sql_help.c:1451 sql_help.c:2428 sql_help.c:3028 msgid "and table_constraint is:" msgstr "і обмеження_таблиці:" -#: sql_help.c:1419 sql_help.c:2968 +#: sql_help.c:1462 sql_help.c:3039 msgid "exclude_element" msgstr "об'єкт_виключення" -#: sql_help.c:1420 sql_help.c:2969 sql_help.c:4596 sql_help.c:4700 -#: sql_help.c:4854 sql_help.c:5030 sql_help.c:5099 +#: sql_help.c:1463 sql_help.c:3040 sql_help.c:4675 sql_help.c:4779 +#: sql_help.c:4933 sql_help.c:5111 sql_help.c:5180 msgid "operator" msgstr "оператор" -#: sql_help.c:1422 sql_help.c:2490 sql_help.c:2971 +#: sql_help.c:1465 sql_help.c:2549 sql_help.c:3042 msgid "predicate" msgstr "предикат" -#: sql_help.c:1428 +#: sql_help.c:1473 msgid "and table_constraint_using_index is:" msgstr "і індекс_обмеження_таблиці:" -#: sql_help.c:1431 sql_help.c:2984 +#: sql_help.c:1476 sql_help.c:3057 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "параметри_індексу в обмеженнях UNIQUE, PRIMARY KEY, EXCLUDE:" -#: sql_help.c:1436 sql_help.c:2989 +#: sql_help.c:1481 sql_help.c:3062 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "елемент_виключення в обмеженні EXCLUDE:" -#: sql_help.c:1440 sql_help.c:2483 sql_help.c:2916 sql_help.c:2929 -#: sql_help.c:2943 sql_help.c:2993 sql_help.c:4014 +#: sql_help.c:1485 sql_help.c:2542 sql_help.c:2984 sql_help.c:2997 +#: sql_help.c:3011 sql_help.c:3066 sql_help.c:4091 msgid "opclass" msgstr "клас_оператора" -#: sql_help.c:1441 sql_help.c:2484 sql_help.c:2994 +#: sql_help.c:1486 sql_help.c:2543 sql_help.c:3067 msgid "opclass_parameter" msgstr "opclass_parameter" -#: sql_help.c:1443 sql_help.c:2996 +#: sql_help.c:1488 sql_help.c:3069 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "посилання на дію в обмеженні FOREIGN KEY/REFERENCES:" -#: sql_help.c:1461 sql_help.c:1464 sql_help.c:3033 +#: sql_help.c:1506 sql_help.c:1509 sql_help.c:3106 msgid "tablespace_option" msgstr "опція_табличного_простору" -#: sql_help.c:1485 sql_help.c:1488 sql_help.c:1494 sql_help.c:1498 +#: sql_help.c:1530 sql_help.c:1533 sql_help.c:1539 sql_help.c:1543 msgid "token_type" msgstr "тип_токену" -#: sql_help.c:1486 sql_help.c:1489 +#: sql_help.c:1531 sql_help.c:1534 msgid "dictionary_name" msgstr "ім'я_словника" -#: sql_help.c:1491 sql_help.c:1495 +#: sql_help.c:1536 sql_help.c:1540 msgid "old_dictionary" msgstr "старий_словник" -#: sql_help.c:1492 sql_help.c:1496 +#: sql_help.c:1537 sql_help.c:1541 msgid "new_dictionary" msgstr "новий_словник" -#: sql_help.c:1591 sql_help.c:1605 sql_help.c:1608 sql_help.c:1609 -#: sql_help.c:3186 +#: sql_help.c:1636 sql_help.c:1650 sql_help.c:1653 sql_help.c:1654 +#: sql_help.c:3259 msgid "attribute_name" msgstr "ім'я_атрибута" -#: sql_help.c:1592 +#: sql_help.c:1637 msgid "new_attribute_name" msgstr "нове_ім'я_атрибута" -#: sql_help.c:1596 sql_help.c:1600 +#: sql_help.c:1641 sql_help.c:1645 msgid "new_enum_value" msgstr "нове_значення_перерахування" -#: sql_help.c:1597 +#: sql_help.c:1642 msgid "neighbor_enum_value" msgstr "сусіднє_значення_перерахування" -#: sql_help.c:1599 +#: sql_help.c:1644 msgid "existing_enum_value" msgstr "існуюче_значення_перерахування" -#: sql_help.c:1602 +#: sql_help.c:1647 msgid "property" msgstr "властивість" -#: sql_help.c:1678 sql_help.c:2354 sql_help.c:2363 sql_help.c:2765 -#: sql_help.c:3266 sql_help.c:3717 sql_help.c:3924 sql_help.c:3970 -#: sql_help.c:4387 +#: sql_help.c:1723 sql_help.c:2411 sql_help.c:2420 sql_help.c:2832 +#: sql_help.c:3339 sql_help.c:3792 sql_help.c:3999 sql_help.c:4045 +#: sql_help.c:4466 msgid "server_name" msgstr "назва_серверу" -#: sql_help.c:1710 sql_help.c:1713 sql_help.c:3281 +#: sql_help.c:1755 sql_help.c:1758 sql_help.c:3354 msgid "view_option_name" msgstr "ім'я_параметра_представлення" -#: sql_help.c:1711 sql_help.c:3282 +#: sql_help.c:1756 sql_help.c:3355 msgid "view_option_value" msgstr "значення_параметра_представлення" -#: sql_help.c:1732 sql_help.c:4999 -msgid "table_and_columns" -msgstr "таблиця_і_стовпці" - -#: sql_help.c:1733 sql_help.c:1793 sql_help.c:1987 sql_help.c:3766 -#: sql_help.c:4222 sql_help.c:5000 +#: sql_help.c:1778 sql_help.c:1838 sql_help.c:2033 sql_help.c:3841 +#: sql_help.c:4301 sql_help.c:5081 msgid "where option can be one of:" msgstr "де параметр може бути одним із:" -#: sql_help.c:1734 sql_help.c:1735 sql_help.c:1794 sql_help.c:1989 -#: sql_help.c:1993 sql_help.c:2175 sql_help.c:3767 sql_help.c:3768 -#: sql_help.c:3769 sql_help.c:3770 sql_help.c:3771 sql_help.c:3772 -#: sql_help.c:3773 sql_help.c:3774 sql_help.c:3775 sql_help.c:3776 -#: sql_help.c:4223 sql_help.c:4225 sql_help.c:5001 sql_help.c:5002 -#: sql_help.c:5003 sql_help.c:5004 sql_help.c:5005 sql_help.c:5006 -#: sql_help.c:5007 sql_help.c:5008 sql_help.c:5009 sql_help.c:5011 -#: sql_help.c:5012 +#: sql_help.c:1779 sql_help.c:1780 sql_help.c:1839 sql_help.c:2035 +#: sql_help.c:2039 sql_help.c:2222 sql_help.c:3842 sql_help.c:3843 +#: sql_help.c:3844 sql_help.c:3845 sql_help.c:3846 sql_help.c:3847 +#: sql_help.c:3848 sql_help.c:3849 sql_help.c:3850 sql_help.c:3851 +#: sql_help.c:4302 sql_help.c:4304 sql_help.c:5082 sql_help.c:5083 +#: sql_help.c:5084 sql_help.c:5085 sql_help.c:5086 sql_help.c:5087 +#: sql_help.c:5088 sql_help.c:5089 sql_help.c:5090 sql_help.c:5092 +#: sql_help.c:5093 msgid "boolean" msgstr "логічний" -#: sql_help.c:1736 sql_help.c:5013 +#: sql_help.c:1781 sql_help.c:5094 msgid "size" msgstr "розмір" -#: sql_help.c:1737 sql_help.c:5014 -msgid "and table_and_columns is:" -msgstr "і таблиця_і_стовпці:" - -#: sql_help.c:1753 sql_help.c:4761 sql_help.c:4763 sql_help.c:4787 +#: sql_help.c:1798 sql_help.c:4840 sql_help.c:4842 sql_help.c:4866 msgid "transaction_mode" msgstr "режим_транзакції" -#: sql_help.c:1754 sql_help.c:4764 sql_help.c:4788 +#: sql_help.c:1799 sql_help.c:4843 sql_help.c:4867 msgid "where transaction_mode is one of:" msgstr "де режим_транзакції один з:" -#: sql_help.c:1763 sql_help.c:4606 sql_help.c:4615 sql_help.c:4619 -#: sql_help.c:4623 sql_help.c:4626 sql_help.c:4864 sql_help.c:4873 -#: sql_help.c:4877 sql_help.c:4881 sql_help.c:4884 sql_help.c:5109 -#: sql_help.c:5118 sql_help.c:5122 sql_help.c:5126 sql_help.c:5129 +#: sql_help.c:1808 sql_help.c:4685 sql_help.c:4694 sql_help.c:4698 +#: sql_help.c:4702 sql_help.c:4705 sql_help.c:4943 sql_help.c:4952 +#: sql_help.c:4956 sql_help.c:4960 sql_help.c:4963 sql_help.c:5190 +#: sql_help.c:5199 sql_help.c:5203 sql_help.c:5207 sql_help.c:5210 msgid "argument" msgstr "аргумент" -#: sql_help.c:1859 +#: sql_help.c:1904 msgid "relation_name" msgstr "назва_відношення" -#: sql_help.c:1864 sql_help.c:3918 sql_help.c:4381 +#: sql_help.c:1909 sql_help.c:3993 sql_help.c:4460 msgid "domain_name" msgstr "назва_домену" -#: sql_help.c:1886 +#: sql_help.c:1931 msgid "policy_name" msgstr "назва_політики" -#: sql_help.c:1899 +#: sql_help.c:1944 msgid "rule_name" msgstr "назва_правила" -#: sql_help.c:1918 sql_help.c:4520 +#: sql_help.c:1963 sql_help.c:4599 msgid "string_literal" msgstr "рядковий_літерал" -#: sql_help.c:1943 sql_help.c:4184 sql_help.c:4434 +#: sql_help.c:1988 sql_help.c:4263 sql_help.c:4513 msgid "transaction_id" msgstr "ідентифікатор_транзакції" -#: sql_help.c:1977 sql_help.c:1984 sql_help.c:4040 +#: sql_help.c:2023 sql_help.c:2030 sql_help.c:4117 msgid "filename" msgstr "ім'я файлу" -#: sql_help.c:1978 sql_help.c:1985 sql_help.c:2704 sql_help.c:2705 -#: sql_help.c:2706 +#: sql_help.c:2024 sql_help.c:2031 sql_help.c:2769 sql_help.c:2770 +#: sql_help.c:2771 msgid "command" msgstr "команда" -#: sql_help.c:1980 sql_help.c:2703 sql_help.c:3136 sql_help.c:3317 -#: sql_help.c:4024 sql_help.c:4107 sql_help.c:4110 sql_help.c:4113 -#: sql_help.c:4589 sql_help.c:4591 sql_help.c:4693 sql_help.c:4695 -#: sql_help.c:4847 sql_help.c:4849 sql_help.c:4966 sql_help.c:5092 -#: sql_help.c:5094 +#: sql_help.c:2026 sql_help.c:2768 sql_help.c:3209 sql_help.c:3391 +#: sql_help.c:4101 sql_help.c:4186 sql_help.c:4189 sql_help.c:4192 +#: sql_help.c:4668 sql_help.c:4670 sql_help.c:4772 sql_help.c:4774 +#: sql_help.c:4926 sql_help.c:4928 sql_help.c:5046 sql_help.c:5173 +#: sql_help.c:5175 msgid "condition" msgstr "умова" -#: sql_help.c:1983 sql_help.c:2524 sql_help.c:3019 sql_help.c:3283 -#: sql_help.c:3301 sql_help.c:4005 +#: sql_help.c:2029 sql_help.c:2583 sql_help.c:3092 sql_help.c:3356 +#: sql_help.c:3374 sql_help.c:4081 msgid "query" msgstr "запит" -#: sql_help.c:1988 +#: sql_help.c:2034 msgid "format_name" msgstr "назва_формату" -#: sql_help.c:1990 +#: sql_help.c:2036 msgid "delimiter_character" msgstr "символ_роздільник" -#: sql_help.c:1991 +#: sql_help.c:2037 msgid "null_string" msgstr "представлення_NULL" -#: sql_help.c:1992 +#: sql_help.c:2038 msgid "default_string" msgstr "рядок_за_замовчуванням" -#: sql_help.c:1994 +#: sql_help.c:2040 msgid "quote_character" msgstr "символ_лапок" -#: sql_help.c:1995 +#: sql_help.c:2041 msgid "escape_character" msgstr "символ_екранування" -#: sql_help.c:1999 +#: sql_help.c:2045 msgid "error_action" msgstr "error_action" -#: sql_help.c:2000 +#: sql_help.c:2046 +msgid "maxerror" +msgstr "макс_помилок" + +#: sql_help.c:2047 msgid "encoding_name" msgstr "ім'я_кодування" -#: sql_help.c:2001 +#: sql_help.c:2048 msgid "verbosity" msgstr "детальність" -#: sql_help.c:2012 +#: sql_help.c:2059 msgid "access_method_type" msgstr "тип_метода_доступа" -#: sql_help.c:2083 sql_help.c:2102 sql_help.c:2105 +#: sql_help.c:2130 sql_help.c:2149 sql_help.c:2152 msgid "arg_data_type" msgstr "тип_даних_аргумента" -#: sql_help.c:2084 sql_help.c:2106 sql_help.c:2114 +#: sql_help.c:2131 sql_help.c:2153 sql_help.c:2161 msgid "sfunc" msgstr "функція_стану" -#: sql_help.c:2085 sql_help.c:2107 sql_help.c:2115 +#: sql_help.c:2132 sql_help.c:2154 sql_help.c:2162 msgid "state_data_type" msgstr "тип_даних_стану" -#: sql_help.c:2086 sql_help.c:2108 sql_help.c:2116 +#: sql_help.c:2133 sql_help.c:2155 sql_help.c:2163 msgid "state_data_size" msgstr "розмір_даних_стану" -#: sql_help.c:2087 sql_help.c:2109 sql_help.c:2117 +#: sql_help.c:2134 sql_help.c:2156 sql_help.c:2164 msgid "ffunc" msgstr "функція_завершення" -#: sql_help.c:2088 sql_help.c:2118 +#: sql_help.c:2135 sql_help.c:2165 msgid "combinefunc" msgstr "комбінуюча_функція" -#: sql_help.c:2089 sql_help.c:2119 +#: sql_help.c:2136 sql_help.c:2166 msgid "serialfunc" msgstr "функція_серіалізації" -#: sql_help.c:2090 sql_help.c:2120 +#: sql_help.c:2137 sql_help.c:2167 msgid "deserialfunc" msgstr "функція_десеріалізації" -#: sql_help.c:2091 sql_help.c:2110 sql_help.c:2121 +#: sql_help.c:2138 sql_help.c:2157 sql_help.c:2168 msgid "initial_condition" msgstr "початкова_умова" -#: sql_help.c:2092 sql_help.c:2122 +#: sql_help.c:2139 sql_help.c:2169 msgid "msfunc" msgstr "функція_стану_рух" -#: sql_help.c:2093 sql_help.c:2123 +#: sql_help.c:2140 sql_help.c:2170 msgid "minvfunc" msgstr "зворотна_функція_рух" -#: sql_help.c:2094 sql_help.c:2124 +#: sql_help.c:2141 sql_help.c:2171 msgid "mstate_data_type" msgstr "тип_даних_стану_рух" -#: sql_help.c:2095 sql_help.c:2125 +#: sql_help.c:2142 sql_help.c:2172 msgid "mstate_data_size" msgstr "розмір_даних_стану_рух" -#: sql_help.c:2096 sql_help.c:2126 +#: sql_help.c:2143 sql_help.c:2173 msgid "mffunc" msgstr "функція_завершення_рух" -#: sql_help.c:2097 sql_help.c:2127 +#: sql_help.c:2144 sql_help.c:2174 msgid "minitial_condition" msgstr "початкова_умова_рух" -#: sql_help.c:2098 sql_help.c:2128 +#: sql_help.c:2145 sql_help.c:2175 msgid "sort_operator" msgstr "оператор_сортування" -#: sql_help.c:2111 +#: sql_help.c:2158 msgid "or the old syntax" msgstr "або старий синтаксис" -#: sql_help.c:2113 +#: sql_help.c:2160 msgid "base_type" msgstr "базовий_тип" -#: sql_help.c:2171 sql_help.c:2221 +#: sql_help.c:2218 sql_help.c:2268 msgid "locale" msgstr "локаль" -#: sql_help.c:2172 sql_help.c:2222 +#: sql_help.c:2219 sql_help.c:2269 msgid "lc_collate" msgstr "код_правила_сортування" -#: sql_help.c:2173 sql_help.c:2223 +#: sql_help.c:2220 sql_help.c:2270 msgid "lc_ctype" msgstr "код_класифікації_символів" -#: sql_help.c:2174 sql_help.c:4487 +#: sql_help.c:2221 sql_help.c:4566 msgid "provider" msgstr "постачальник" -#: sql_help.c:2176 +#: sql_help.c:2223 msgid "rules" msgstr "правила" -#: sql_help.c:2177 sql_help.c:2284 +#: sql_help.c:2224 sql_help.c:2331 msgid "version" msgstr "версія" -#: sql_help.c:2179 +#: sql_help.c:2226 msgid "existing_collation" msgstr "існуюче_правило_сортування" -#: sql_help.c:2189 +#: sql_help.c:2236 msgid "source_encoding" msgstr "початкове_кодування" -#: sql_help.c:2190 +#: sql_help.c:2237 msgid "dest_encoding" msgstr "цільве_кодування" -#: sql_help.c:2218 sql_help.c:3059 +#: sql_help.c:2265 sql_help.c:3132 msgid "template" msgstr "шаблон" -#: sql_help.c:2219 +#: sql_help.c:2266 msgid "encoding" msgstr "кодування" -#: sql_help.c:2220 +#: sql_help.c:2267 msgid "strategy" msgstr "стратегія" -#: sql_help.c:2224 +#: sql_help.c:2271 msgid "builtin_locale" msgstr "вбудована_локаль" -#: sql_help.c:2225 +#: sql_help.c:2272 msgid "icu_locale" msgstr "icu_locale" -#: sql_help.c:2226 +#: sql_help.c:2273 msgid "icu_rules" msgstr "правила_icu" -#: sql_help.c:2227 +#: sql_help.c:2274 msgid "locale_provider" msgstr "локаль_провайдер" -#: sql_help.c:2228 +#: sql_help.c:2275 msgid "collation_version" msgstr "версія_сортування" -#: sql_help.c:2233 +#: sql_help.c:2280 msgid "oid" msgstr "oid" -#: sql_help.c:2254 -msgid "where domain_constraint is:" -msgstr "де обмеження_домену:" - -#: sql_help.c:2268 sql_help.c:2701 sql_help.c:3132 +#: sql_help.c:2315 sql_help.c:2766 sql_help.c:3205 msgid "event" msgstr "подія" -#: sql_help.c:2269 +#: sql_help.c:2316 msgid "filter_variable" msgstr "змінна_фільтру" -#: sql_help.c:2270 +#: sql_help.c:2317 msgid "filter_value" msgstr "значення_фільтру" -#: sql_help.c:2366 sql_help.c:2948 +#: sql_help.c:2408 sql_help.c:2978 +msgid "source_table" +msgstr "вихідна_таблиця" + +#: sql_help.c:2409 sql_help.c:2979 +msgid "like_option" +msgstr "параметр_породження" + +#: sql_help.c:2423 sql_help.c:3016 msgid "where column_constraint is:" msgstr "де обмеження_стовпців:" -#: sql_help.c:2411 +#: sql_help.c:2432 sql_help.c:3050 +msgid "and like_option is:" +msgstr "і параметр_породження:" + +#: sql_help.c:2470 msgid "rettype" msgstr "тип_результату" -#: sql_help.c:2413 +#: sql_help.c:2472 msgid "column_type" msgstr "тип_стовпця" -#: sql_help.c:2422 sql_help.c:2625 +#: sql_help.c:2481 sql_help.c:2684 msgid "definition" msgstr "визначення" -#: sql_help.c:2423 sql_help.c:2626 +#: sql_help.c:2482 sql_help.c:2685 msgid "obj_file" msgstr "об'єктний_файл" -#: sql_help.c:2424 sql_help.c:2627 +#: sql_help.c:2483 sql_help.c:2686 msgid "link_symbol" msgstr "символ_експорту" -#: sql_help.c:2425 sql_help.c:2628 +#: sql_help.c:2484 sql_help.c:2687 msgid "sql_body" msgstr "sql_body" -#: sql_help.c:2463 sql_help.c:2686 sql_help.c:3255 +#: sql_help.c:2522 sql_help.c:2751 sql_help.c:3328 msgid "uid" msgstr "uid" -#: sql_help.c:2479 sql_help.c:2520 sql_help.c:2917 sql_help.c:2930 -#: sql_help.c:2944 sql_help.c:3015 +#: sql_help.c:2538 sql_help.c:2579 sql_help.c:2985 sql_help.c:2998 +#: sql_help.c:3012 sql_help.c:3088 msgid "method" msgstr "метод" -#: sql_help.c:2501 +#: sql_help.c:2560 msgid "call_handler" msgstr "обробник_виклику" -#: sql_help.c:2502 +#: sql_help.c:2561 msgid "inline_handler" msgstr "обробник_впровадженого_коду" -#: sql_help.c:2503 +#: sql_help.c:2562 msgid "valfunction" msgstr "функція_перевірки" -#: sql_help.c:2561 +#: sql_help.c:2620 msgid "family_name" msgstr "назва_сімейства" -#: sql_help.c:2572 +#: sql_help.c:2631 msgid "storage_type" msgstr "тип_зберігання" -#: sql_help.c:2707 sql_help.c:3139 +#: sql_help.c:2772 sql_help.c:3212 msgid "where event can be one of:" msgstr "де подія може бути однією з:" -#: sql_help.c:2727 sql_help.c:2729 +#: sql_help.c:2792 sql_help.c:2794 msgid "schema_element" msgstr "елемент_схеми" -#: sql_help.c:2766 +#: sql_help.c:2833 msgid "server_type" msgstr "тип_серверу" -#: sql_help.c:2767 +#: sql_help.c:2834 msgid "server_version" msgstr "версія_серверу" -#: sql_help.c:2768 sql_help.c:3921 sql_help.c:4384 +#: sql_help.c:2835 sql_help.c:3996 sql_help.c:4463 msgid "fdw_name" msgstr "назва_fdw" -#: sql_help.c:2785 sql_help.c:2788 +#: sql_help.c:2852 sql_help.c:2855 msgid "statistics_name" msgstr "назва_статистики" -#: sql_help.c:2789 +#: sql_help.c:2856 msgid "statistics_kind" msgstr "вид_статистики" -#: sql_help.c:2805 +#: sql_help.c:2872 msgid "subscription_name" msgstr "назва_підписки" -#: sql_help.c:2910 -msgid "source_table" -msgstr "вихідна_таблиця" - -#: sql_help.c:2911 -msgid "like_option" -msgstr "параметр_породження" - -#: sql_help.c:2977 -msgid "and like_option is:" -msgstr "і параметр_породження:" - -#: sql_help.c:3032 +#: sql_help.c:3105 msgid "directory" msgstr "каталог" -#: sql_help.c:3046 +#: sql_help.c:3119 msgid "parser_name" msgstr "назва_парсера" -#: sql_help.c:3047 +#: sql_help.c:3120 msgid "source_config" msgstr "початкова_конфігурація" -#: sql_help.c:3076 +#: sql_help.c:3149 msgid "start_function" msgstr "функція_початку" -#: sql_help.c:3077 +#: sql_help.c:3150 msgid "gettoken_function" msgstr "функція_видачі_токену" -#: sql_help.c:3078 +#: sql_help.c:3151 msgid "end_function" msgstr "функція_завершення" -#: sql_help.c:3079 +#: sql_help.c:3152 msgid "lextypes_function" msgstr "функція_лекс_типів" -#: sql_help.c:3080 +#: sql_help.c:3153 msgid "headline_function" msgstr "функція_створення_заголовків" -#: sql_help.c:3092 +#: sql_help.c:3165 msgid "init_function" msgstr "функція_ініціалізації" -#: sql_help.c:3093 +#: sql_help.c:3166 msgid "lexize_function" msgstr "функція_виділення_лексем" -#: sql_help.c:3106 +#: sql_help.c:3179 msgid "from_sql_function_name" msgstr "ім'я_функції_з_sql" -#: sql_help.c:3108 +#: sql_help.c:3181 msgid "to_sql_function_name" msgstr "ім'я_функції_в_sql" -#: sql_help.c:3134 +#: sql_help.c:3207 msgid "referenced_table_name" msgstr "ім'я_залежної_таблиці" -#: sql_help.c:3135 +#: sql_help.c:3208 msgid "transition_relation_name" msgstr "ім'я_перехідного_відношення" -#: sql_help.c:3138 +#: sql_help.c:3211 msgid "arguments" msgstr "аргументи" -#: sql_help.c:3190 +#: sql_help.c:3263 msgid "label" msgstr "мітка" -#: sql_help.c:3192 +#: sql_help.c:3265 msgid "subtype" msgstr "підтип" -#: sql_help.c:3193 +#: sql_help.c:3266 msgid "subtype_operator_class" msgstr "клас_оператора_підтипу" -#: sql_help.c:3195 +#: sql_help.c:3268 msgid "canonical_function" msgstr "канонічна_функція" -#: sql_help.c:3196 +#: sql_help.c:3269 msgid "subtype_diff_function" msgstr "функція_розбіжностей_підтипу" -#: sql_help.c:3197 +#: sql_help.c:3270 msgid "multirange_type_name" msgstr "multirange_type_name" -#: sql_help.c:3199 +#: sql_help.c:3272 msgid "input_function" msgstr "функція_вводу" -#: sql_help.c:3200 +#: sql_help.c:3273 msgid "output_function" msgstr "функція_виводу" -#: sql_help.c:3201 +#: sql_help.c:3274 msgid "receive_function" msgstr "функція_отримання" -#: sql_help.c:3202 +#: sql_help.c:3275 msgid "send_function" msgstr "функція_відправки" -#: sql_help.c:3203 +#: sql_help.c:3276 msgid "type_modifier_input_function" msgstr "функція_введення_модифікатора_типу" -#: sql_help.c:3204 +#: sql_help.c:3277 msgid "type_modifier_output_function" msgstr "функція_виводу_модифікатора_типу" -#: sql_help.c:3205 +#: sql_help.c:3278 msgid "analyze_function" msgstr "функція_аналізу" -#: sql_help.c:3206 +#: sql_help.c:3279 msgid "subscript_function" msgstr "subscript_function" -#: sql_help.c:3207 +#: sql_help.c:3280 msgid "internallength" msgstr "внутр_довжина" -#: sql_help.c:3208 +#: sql_help.c:3281 msgid "alignment" msgstr "вирівнювання" -#: sql_help.c:3209 +#: sql_help.c:3282 msgid "storage" msgstr "зберігання" -#: sql_help.c:3210 +#: sql_help.c:3283 msgid "like_type" msgstr "тип_зразок" -#: sql_help.c:3211 +#: sql_help.c:3284 msgid "category" msgstr "категорія" -#: sql_help.c:3212 +#: sql_help.c:3285 msgid "preferred" msgstr "привілейований" -#: sql_help.c:3213 +#: sql_help.c:3286 msgid "default" msgstr "за_замовчуванням" -#: sql_help.c:3214 +#: sql_help.c:3287 msgid "element" msgstr "елемент" -#: sql_help.c:3215 +#: sql_help.c:3288 msgid "delimiter" msgstr "роздільник" -#: sql_help.c:3216 +#: sql_help.c:3289 msgid "collatable" msgstr "сортувальний" -#: sql_help.c:3313 sql_help.c:4000 sql_help.c:4094 sql_help.c:4584 -#: sql_help.c:4687 sql_help.c:4842 sql_help.c:4956 sql_help.c:5087 +#: sql_help.c:3387 sql_help.c:4076 sql_help.c:4172 sql_help.c:4663 +#: sql_help.c:4766 sql_help.c:4921 sql_help.c:5036 sql_help.c:5168 msgid "with_query" msgstr "with_запит" -#: sql_help.c:3315 sql_help.c:4002 sql_help.c:4603 sql_help.c:4609 -#: sql_help.c:4612 sql_help.c:4616 sql_help.c:4620 sql_help.c:4628 -#: sql_help.c:4861 sql_help.c:4867 sql_help.c:4870 sql_help.c:4874 -#: sql_help.c:4878 sql_help.c:4886 sql_help.c:4958 sql_help.c:5106 -#: sql_help.c:5112 sql_help.c:5115 sql_help.c:5119 sql_help.c:5123 -#: sql_help.c:5131 +#: sql_help.c:3389 sql_help.c:4078 sql_help.c:4682 sql_help.c:4688 +#: sql_help.c:4691 sql_help.c:4695 sql_help.c:4699 sql_help.c:4707 +#: sql_help.c:4940 sql_help.c:4946 sql_help.c:4949 sql_help.c:4953 +#: sql_help.c:4957 sql_help.c:4965 sql_help.c:5038 sql_help.c:5187 +#: sql_help.c:5193 sql_help.c:5196 sql_help.c:5200 sql_help.c:5204 +#: sql_help.c:5212 msgid "alias" msgstr "псевдонім" -#: sql_help.c:3316 sql_help.c:4588 sql_help.c:4630 sql_help.c:4632 -#: sql_help.c:4636 sql_help.c:4638 sql_help.c:4639 sql_help.c:4640 -#: sql_help.c:4692 sql_help.c:4846 sql_help.c:4888 sql_help.c:4890 -#: sql_help.c:4894 sql_help.c:4896 sql_help.c:4897 sql_help.c:4898 -#: sql_help.c:4965 sql_help.c:5091 sql_help.c:5133 sql_help.c:5135 -#: sql_help.c:5139 sql_help.c:5141 sql_help.c:5142 sql_help.c:5143 +#: sql_help.c:3390 sql_help.c:4667 sql_help.c:4709 sql_help.c:4711 +#: sql_help.c:4715 sql_help.c:4717 sql_help.c:4718 sql_help.c:4719 +#: sql_help.c:4771 sql_help.c:4925 sql_help.c:4967 sql_help.c:4969 +#: sql_help.c:4973 sql_help.c:4975 sql_help.c:4976 sql_help.c:4977 +#: sql_help.c:5045 sql_help.c:5172 sql_help.c:5214 sql_help.c:5216 +#: sql_help.c:5220 sql_help.c:5222 sql_help.c:5223 sql_help.c:5224 msgid "from_item" msgstr "джерело_даних" -#: sql_help.c:3318 sql_help.c:3802 sql_help.c:4151 sql_help.c:4967 +#: sql_help.c:3392 sql_help.c:3877 sql_help.c:4230 sql_help.c:5047 msgid "cursor_name" msgstr "ім'я_курсору" -#: sql_help.c:3319 sql_help.c:4008 sql_help.c:4100 sql_help.c:4968 +#: sql_help.c:3393 sql_help.c:4084 sql_help.c:4178 sql_help.c:5048 +msgid "output_alias" +msgstr "псевдонім_виводу" + +#: sql_help.c:3394 sql_help.c:4085 sql_help.c:4179 sql_help.c:5049 msgid "output_expression" msgstr "вираз_результату" -#: sql_help.c:3320 sql_help.c:4009 sql_help.c:4101 sql_help.c:4587 -#: sql_help.c:4690 sql_help.c:4845 sql_help.c:4969 sql_help.c:5090 +#: sql_help.c:3395 sql_help.c:4086 sql_help.c:4180 sql_help.c:4666 +#: sql_help.c:4769 sql_help.c:4924 sql_help.c:5050 sql_help.c:5171 msgid "output_name" msgstr "ім'я_результату" -#: sql_help.c:3336 +#: sql_help.c:3411 msgid "code" msgstr "код" -#: sql_help.c:3741 +#: sql_help.c:3816 msgid "parameter" msgstr "параметр" -#: sql_help.c:3765 sql_help.c:4176 +#: sql_help.c:3840 sql_help.c:4255 msgid "statement" msgstr "оператор" -#: sql_help.c:3801 sql_help.c:4150 +#: sql_help.c:3876 sql_help.c:4229 msgid "direction" msgstr "напрямок" -#: sql_help.c:3803 sql_help.c:4152 +#: sql_help.c:3878 sql_help.c:4231 msgid "where direction can be one of:" msgstr "де напрямок може бути одним із:" -#: sql_help.c:3804 sql_help.c:3805 sql_help.c:3806 sql_help.c:3807 -#: sql_help.c:3808 sql_help.c:4153 sql_help.c:4154 sql_help.c:4155 -#: sql_help.c:4156 sql_help.c:4157 sql_help.c:4597 sql_help.c:4599 -#: sql_help.c:4701 sql_help.c:4703 sql_help.c:4855 sql_help.c:4857 -#: sql_help.c:5031 sql_help.c:5033 sql_help.c:5100 sql_help.c:5102 +#: sql_help.c:3879 sql_help.c:3880 sql_help.c:3881 sql_help.c:3882 +#: sql_help.c:3883 sql_help.c:4232 sql_help.c:4233 sql_help.c:4234 +#: sql_help.c:4235 sql_help.c:4236 sql_help.c:4676 sql_help.c:4678 +#: sql_help.c:4780 sql_help.c:4782 sql_help.c:4934 sql_help.c:4936 +#: sql_help.c:5112 sql_help.c:5114 sql_help.c:5181 sql_help.c:5183 msgid "count" msgstr "кількість" -#: sql_help.c:3911 sql_help.c:4374 +#: sql_help.c:3986 sql_help.c:4453 msgid "sequence_name" msgstr "ім'я_послідовності" -#: sql_help.c:3929 sql_help.c:4392 +#: sql_help.c:4004 sql_help.c:4471 msgid "arg_name" msgstr "ім'я_аргументу" -#: sql_help.c:3930 sql_help.c:4393 +#: sql_help.c:4005 sql_help.c:4472 msgid "arg_type" msgstr "тип_аргументу" -#: sql_help.c:3937 sql_help.c:4400 +#: sql_help.c:4012 sql_help.c:4479 msgid "loid" msgstr "код_вел_об'єкту" -#: sql_help.c:3968 +#: sql_help.c:4043 msgid "remote_schema" msgstr "віддалена_схема" -#: sql_help.c:3971 +#: sql_help.c:4046 msgid "local_schema" msgstr "локальна_схема" -#: sql_help.c:4006 +#: sql_help.c:4082 msgid "conflict_target" msgstr "ціль_конфлікту" -#: sql_help.c:4007 +#: sql_help.c:4083 msgid "conflict_action" msgstr "дія_при_конфлікті" -#: sql_help.c:4010 +#: sql_help.c:4087 msgid "where conflict_target can be one of:" msgstr "де ціль_конфлікту може бути одним з:" -#: sql_help.c:4011 +#: sql_help.c:4088 msgid "index_column_name" msgstr "ім'я_стовпця_індексу" -#: sql_help.c:4012 +#: sql_help.c:4089 msgid "index_expression" msgstr "вираз_індексу" -#: sql_help.c:4015 +#: sql_help.c:4092 msgid "index_predicate" msgstr "предикат_індексу" -#: sql_help.c:4017 +#: sql_help.c:4094 msgid "and conflict_action is one of:" msgstr "і дія_при_конфлікті одна з:" -#: sql_help.c:4023 sql_help.c:4124 sql_help.c:4964 +#: sql_help.c:4100 sql_help.c:4203 sql_help.c:5044 msgid "sub-SELECT" msgstr "вкладений-SELECT" -#: sql_help.c:4032 sql_help.c:4165 sql_help.c:4940 +#: sql_help.c:4109 sql_help.c:4244 sql_help.c:5019 msgid "channel" msgstr "канал" -#: sql_help.c:4054 +#: sql_help.c:4131 msgid "lockmode" msgstr "режим_блокування" -#: sql_help.c:4055 +#: sql_help.c:4132 msgid "where lockmode is one of:" msgstr "де режим_блокування один з:" -#: sql_help.c:4095 +#: sql_help.c:4173 msgid "target_table_name" msgstr "ім'я_цілі_таблиці" -#: sql_help.c:4096 +#: sql_help.c:4174 msgid "target_alias" msgstr "псевдонім_цілі" -#: sql_help.c:4097 +#: sql_help.c:4175 msgid "data_source" msgstr "джерело_даних" -#: sql_help.c:4098 sql_help.c:4633 sql_help.c:4891 sql_help.c:5136 +#: sql_help.c:4176 sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "join_condition" msgstr "умова_поєднання" -#: sql_help.c:4099 +#: sql_help.c:4177 msgid "when_clause" msgstr "when_твердження" -#: sql_help.c:4102 +#: sql_help.c:4181 msgid "where data_source is:" msgstr "де джерело_даних:" -#: sql_help.c:4103 +#: sql_help.c:4182 msgid "source_table_name" msgstr "ім'я_початкова_таблиці" -#: sql_help.c:4104 +#: sql_help.c:4183 msgid "source_query" msgstr "джерело_запит" -#: sql_help.c:4105 +#: sql_help.c:4184 msgid "source_alias" msgstr "джерело_псевдоніма" -#: sql_help.c:4106 +#: sql_help.c:4185 msgid "and when_clause is:" msgstr "і when_clause:" -#: sql_help.c:4108 sql_help.c:4111 +#: sql_help.c:4187 sql_help.c:4190 msgid "merge_update" msgstr "merge_update" -#: sql_help.c:4109 sql_help.c:4112 +#: sql_help.c:4188 sql_help.c:4191 msgid "merge_delete" msgstr "merge_delete" -#: sql_help.c:4114 +#: sql_help.c:4193 msgid "merge_insert" msgstr "merge_insert" -#: sql_help.c:4115 +#: sql_help.c:4194 msgid "and merge_insert is:" msgstr "і merge_insert:" -#: sql_help.c:4118 +#: sql_help.c:4197 msgid "and merge_update is:" msgstr "і merge_update:" -#: sql_help.c:4125 +#: sql_help.c:4204 msgid "and merge_delete is:" msgstr "і merge_delete:" -#: sql_help.c:4166 +#: sql_help.c:4245 msgid "payload" msgstr "зміст" -#: sql_help.c:4193 +#: sql_help.c:4272 msgid "old_role" msgstr "стара_роль" -#: sql_help.c:4194 +#: sql_help.c:4273 msgid "new_role" msgstr "нова_роль" -#: sql_help.c:4233 sql_help.c:4442 sql_help.c:4450 +#: sql_help.c:4312 sql_help.c:4521 sql_help.c:4529 msgid "savepoint_name" msgstr "ім'я_точки_збереження" -#: sql_help.c:4590 sql_help.c:4648 sql_help.c:4848 sql_help.c:4906 -#: sql_help.c:5093 sql_help.c:5151 +#: sql_help.c:4669 sql_help.c:4727 sql_help.c:4927 sql_help.c:4985 +#: sql_help.c:5174 sql_help.c:5232 msgid "grouping_element" msgstr "елемент_групування" -#: sql_help.c:4592 sql_help.c:4696 sql_help.c:4850 sql_help.c:5095 +#: sql_help.c:4671 sql_help.c:4775 sql_help.c:4929 sql_help.c:5176 msgid "window_name" msgstr "назва_вікна" -#: sql_help.c:4593 sql_help.c:4697 sql_help.c:4851 sql_help.c:5096 +#: sql_help.c:4672 sql_help.c:4776 sql_help.c:4930 sql_help.c:5177 msgid "window_definition" msgstr "визначення_вікна" -#: sql_help.c:4594 sql_help.c:4608 sql_help.c:4652 sql_help.c:4698 -#: sql_help.c:4852 sql_help.c:4866 sql_help.c:4910 sql_help.c:5097 -#: sql_help.c:5111 sql_help.c:5155 +#: sql_help.c:4673 sql_help.c:4687 sql_help.c:4731 sql_help.c:4777 +#: sql_help.c:4931 sql_help.c:4945 sql_help.c:4989 sql_help.c:5178 +#: sql_help.c:5192 sql_help.c:5236 msgid "select" msgstr "виберіть" -#: sql_help.c:4600 sql_help.c:4858 sql_help.c:5103 +#: sql_help.c:4679 sql_help.c:4937 sql_help.c:5184 msgid "from_reference" msgstr "from_reference" -#: sql_help.c:4601 sql_help.c:4859 sql_help.c:5104 +#: sql_help.c:4680 sql_help.c:4938 sql_help.c:5185 msgid "where from_item can be one of:" msgstr "де джерело_даних може бути одним з:" -#: sql_help.c:4604 sql_help.c:4610 sql_help.c:4613 sql_help.c:4617 -#: sql_help.c:4629 sql_help.c:4862 sql_help.c:4868 sql_help.c:4871 -#: sql_help.c:4875 sql_help.c:4887 sql_help.c:5107 sql_help.c:5113 -#: sql_help.c:5116 sql_help.c:5120 sql_help.c:5132 +#: sql_help.c:4683 sql_help.c:4689 sql_help.c:4692 sql_help.c:4696 +#: sql_help.c:4708 sql_help.c:4941 sql_help.c:4947 sql_help.c:4950 +#: sql_help.c:4954 sql_help.c:4966 sql_help.c:5188 sql_help.c:5194 +#: sql_help.c:5197 sql_help.c:5201 sql_help.c:5213 msgid "column_alias" msgstr "псевдонім_стовпця" -#: sql_help.c:4605 sql_help.c:4863 sql_help.c:5108 +#: sql_help.c:4684 sql_help.c:4942 sql_help.c:5189 msgid "sampling_method" msgstr "метод_вибірки" -#: sql_help.c:4607 sql_help.c:4865 sql_help.c:5110 +#: sql_help.c:4686 sql_help.c:4944 sql_help.c:5191 msgid "seed" msgstr "початкове_число" -#: sql_help.c:4611 sql_help.c:4650 sql_help.c:4869 sql_help.c:4908 -#: sql_help.c:5114 sql_help.c:5153 +#: sql_help.c:4690 sql_help.c:4729 sql_help.c:4948 sql_help.c:4987 +#: sql_help.c:5195 sql_help.c:5234 msgid "with_query_name" msgstr "ім'я_запиту_WITH" -#: sql_help.c:4621 sql_help.c:4624 sql_help.c:4627 sql_help.c:4879 -#: sql_help.c:4882 sql_help.c:4885 sql_help.c:5124 sql_help.c:5127 -#: sql_help.c:5130 +#: sql_help.c:4700 sql_help.c:4703 sql_help.c:4706 sql_help.c:4958 +#: sql_help.c:4961 sql_help.c:4964 sql_help.c:5205 sql_help.c:5208 +#: sql_help.c:5211 msgid "column_definition" msgstr "визначення_стовпця" -#: sql_help.c:4631 sql_help.c:4637 sql_help.c:4889 sql_help.c:4895 -#: sql_help.c:5134 sql_help.c:5140 +#: sql_help.c:4710 sql_help.c:4716 sql_help.c:4968 sql_help.c:4974 +#: sql_help.c:5215 sql_help.c:5221 msgid "join_type" msgstr "тип_поєднання" -#: sql_help.c:4634 sql_help.c:4892 sql_help.c:5137 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "join_column" msgstr "стовпець_поєднання" -#: sql_help.c:4635 sql_help.c:4893 sql_help.c:5138 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "join_using_alias" msgstr "join_using_alias" -#: sql_help.c:4641 sql_help.c:4899 sql_help.c:5144 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "and grouping_element can be one of:" msgstr "і елемент_групування може бути одним з:" -#: sql_help.c:4649 sql_help.c:4907 sql_help.c:5152 +#: sql_help.c:4728 sql_help.c:4986 sql_help.c:5233 msgid "and with_query is:" msgstr "і запит_WITH:" -#: sql_help.c:4653 sql_help.c:4911 sql_help.c:5156 +#: sql_help.c:4732 sql_help.c:4990 sql_help.c:5237 msgid "values" msgstr "значення" -#: sql_help.c:4654 sql_help.c:4912 sql_help.c:5157 +#: sql_help.c:4733 sql_help.c:4991 sql_help.c:5238 msgid "insert" msgstr "вставка" -#: sql_help.c:4655 sql_help.c:4913 sql_help.c:5158 +#: sql_help.c:4734 sql_help.c:4992 sql_help.c:5239 msgid "update" msgstr "оновлення" -#: sql_help.c:4656 sql_help.c:4914 sql_help.c:5159 +#: sql_help.c:4735 sql_help.c:4993 sql_help.c:5240 msgid "delete" msgstr "видалення" -#: sql_help.c:4657 sql_help.c:4915 sql_help.c:5160 +#: sql_help.c:4736 sql_help.c:4994 sql_help.c:5241 msgid "merge" msgstr "об’єднати" -#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5162 +#: sql_help.c:4738 sql_help.c:4996 sql_help.c:5243 msgid "search_seq_col_name" msgstr "search_seq_col_name" -#: sql_help.c:4661 sql_help.c:4919 sql_help.c:5164 +#: sql_help.c:4740 sql_help.c:4998 sql_help.c:5245 msgid "cycle_mark_col_name" msgstr "cycle_mark_col_name" -#: sql_help.c:4662 sql_help.c:4920 sql_help.c:5165 +#: sql_help.c:4741 sql_help.c:4999 sql_help.c:5246 msgid "cycle_mark_value" msgstr "cycle_mark_value" -#: sql_help.c:4663 sql_help.c:4921 sql_help.c:5166 +#: sql_help.c:4742 sql_help.c:5000 sql_help.c:5247 msgid "cycle_mark_default" msgstr "cycle_mark_default" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5167 +#: sql_help.c:4743 sql_help.c:5001 sql_help.c:5248 msgid "cycle_path_col_name" msgstr "cycle_path_col_name" -#: sql_help.c:4691 +#: sql_help.c:4770 msgid "new_table" msgstr "нова_таблиця" -#: sql_help.c:4762 +#: sql_help.c:4841 msgid "snapshot_id" msgstr "код_знімку" -#: sql_help.c:5029 +#: sql_help.c:5110 msgid "sort_expression" msgstr "вираз_сортування" -#: sql_help.c:5174 sql_help.c:6158 +#: sql_help.c:5255 sql_help.c:6239 msgid "abort the current transaction" msgstr "перервати поточну транзакцію" -#: sql_help.c:5180 +#: sql_help.c:5261 msgid "change the definition of an aggregate function" msgstr "змінити визначення агрегатної функції" -#: sql_help.c:5186 +#: sql_help.c:5267 msgid "change the definition of a collation" msgstr "змінити визначення правила сортування" -#: sql_help.c:5192 +#: sql_help.c:5273 msgid "change the definition of a conversion" msgstr "змінити визначення перетворення" -#: sql_help.c:5198 +#: sql_help.c:5279 msgid "change a database" msgstr "змінити базу даних" -#: sql_help.c:5204 +#: sql_help.c:5285 msgid "define default access privileges" msgstr "визначити права доступу за замовчуванням" -#: sql_help.c:5210 +#: sql_help.c:5291 msgid "change the definition of a domain" msgstr "змінити визначення домену" -#: sql_help.c:5216 +#: sql_help.c:5297 msgid "change the definition of an event trigger" msgstr "змінити визначення тригеру події" -#: sql_help.c:5222 +#: sql_help.c:5303 msgid "change the definition of an extension" msgstr "змінити визначення розширення" -#: sql_help.c:5228 +#: sql_help.c:5309 msgid "change the definition of a foreign-data wrapper" msgstr "змінити визначення джерела сторонніх даних" -#: sql_help.c:5234 +#: sql_help.c:5315 msgid "change the definition of a foreign table" msgstr "змінити визначення сторонньої таблиці" -#: sql_help.c:5240 +#: sql_help.c:5321 msgid "change the definition of a function" msgstr "змінити визначення функції" -#: sql_help.c:5246 +#: sql_help.c:5327 msgid "change role name or membership" msgstr "змінити назву ролі або членства" -#: sql_help.c:5252 +#: sql_help.c:5333 msgid "change the definition of an index" msgstr "змінити визначення індексу" -#: sql_help.c:5258 +#: sql_help.c:5339 msgid "change the definition of a procedural language" msgstr "змінити визначення процедурної мови" -#: sql_help.c:5264 +#: sql_help.c:5345 msgid "change the definition of a large object" msgstr "змінити визначення великого об'єкту" -#: sql_help.c:5270 +#: sql_help.c:5351 msgid "change the definition of a materialized view" msgstr "змінити визначення матеріалізованого подання" -#: sql_help.c:5276 +#: sql_help.c:5357 msgid "change the definition of an operator" msgstr "змінити визначення оператора" -#: sql_help.c:5282 +#: sql_help.c:5363 msgid "change the definition of an operator class" msgstr "змінити визначення класа операторів" -#: sql_help.c:5288 +#: sql_help.c:5369 msgid "change the definition of an operator family" msgstr "змінити визначення сімейства операторів" -#: sql_help.c:5294 +#: sql_help.c:5375 msgid "change the definition of a row-level security policy" msgstr "змінити визначення політики безпеки на рівні рядків" -#: sql_help.c:5300 +#: sql_help.c:5381 msgid "change the definition of a procedure" msgstr "змінити визначення процедури" -#: sql_help.c:5306 +#: sql_help.c:5387 msgid "change the definition of a publication" msgstr "змінити визначення публікації" -#: sql_help.c:5312 sql_help.c:5414 +#: sql_help.c:5393 sql_help.c:5495 msgid "change a database role" msgstr "змінити роль бази даних" -#: sql_help.c:5318 +#: sql_help.c:5399 msgid "change the definition of a routine" msgstr "змінити визначення підпрограми" -#: sql_help.c:5324 +#: sql_help.c:5405 msgid "change the definition of a rule" msgstr "змінити визначення правила" -#: sql_help.c:5330 +#: sql_help.c:5411 msgid "change the definition of a schema" msgstr "змінити визначення схеми" -#: sql_help.c:5336 +#: sql_help.c:5417 msgid "change the definition of a sequence generator" msgstr "змінити визначення генератору послідовності" -#: sql_help.c:5342 +#: sql_help.c:5423 msgid "change the definition of a foreign server" msgstr "змінити визначення стороннього серверу" -#: sql_help.c:5348 +#: sql_help.c:5429 msgid "change the definition of an extended statistics object" msgstr "змінити визначення об'єкту розширеної статистики" -#: sql_help.c:5354 +#: sql_help.c:5435 msgid "change the definition of a subscription" msgstr "змінити визначення підписки" -#: sql_help.c:5360 +#: sql_help.c:5441 msgid "change a server configuration parameter" msgstr "змінити параметр конфігурації сервера" -#: sql_help.c:5366 +#: sql_help.c:5447 msgid "change the definition of a table" msgstr "змінити визначення таблиці" -#: sql_help.c:5372 +#: sql_help.c:5453 msgid "change the definition of a tablespace" msgstr "змінити визначення табличного простору" -#: sql_help.c:5378 +#: sql_help.c:5459 msgid "change the definition of a text search configuration" msgstr "змінити визначення конфігурації текстового пошуку" -#: sql_help.c:5384 +#: sql_help.c:5465 msgid "change the definition of a text search dictionary" msgstr "змінити визначення словника текстового пошуку" -#: sql_help.c:5390 +#: sql_help.c:5471 msgid "change the definition of a text search parser" msgstr "змінити визначення парсера текстового пошуку" -#: sql_help.c:5396 +#: sql_help.c:5477 msgid "change the definition of a text search template" msgstr "змінити визначення шаблона текстового пошуку" -#: sql_help.c:5402 +#: sql_help.c:5483 msgid "change the definition of a trigger" msgstr "змінити визначення тригеру" -#: sql_help.c:5408 +#: sql_help.c:5489 msgid "change the definition of a type" msgstr "змінити визначення типу" -#: sql_help.c:5420 +#: sql_help.c:5501 msgid "change the definition of a user mapping" msgstr "змінити визначення зіставлень користувачів" -#: sql_help.c:5426 +#: sql_help.c:5507 msgid "change the definition of a view" msgstr "змінити визначення подання" -#: sql_help.c:5432 +#: sql_help.c:5513 msgid "collect statistics about a database" msgstr "зібрати статистику про базу даних" -#: sql_help.c:5438 sql_help.c:6236 +#: sql_help.c:5519 sql_help.c:6317 msgid "start a transaction block" msgstr "розпочати транзакцію" -#: sql_help.c:5444 +#: sql_help.c:5525 msgid "invoke a procedure" msgstr "викликати процедуру" -#: sql_help.c:5450 +#: sql_help.c:5531 msgid "force a write-ahead log checkpoint" msgstr "провести контрольну точку в журналі попереднього запису" -#: sql_help.c:5456 +#: sql_help.c:5537 msgid "close a cursor" msgstr "закрити курсор" -#: sql_help.c:5462 +#: sql_help.c:5543 msgid "cluster a table according to an index" msgstr "перегрупувати таблицю за індексом" -#: sql_help.c:5468 +#: sql_help.c:5549 msgid "define or change the comment of an object" msgstr "задати або змінити коментар об'єкта" -#: sql_help.c:5474 sql_help.c:6032 +#: sql_help.c:5555 sql_help.c:6113 msgid "commit the current transaction" msgstr "затвердити поточну транзакцію" -#: sql_help.c:5480 +#: sql_help.c:5561 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "затвердити транзакцію, раніше підготовлену до двохфазного затвердження" -#: sql_help.c:5486 +#: sql_help.c:5567 msgid "copy data between a file and a table" msgstr "копіювати дані між файлом та таблицею" -#: sql_help.c:5492 +#: sql_help.c:5573 msgid "define a new access method" msgstr "визначити новий метод доступу" -#: sql_help.c:5498 +#: sql_help.c:5579 msgid "define a new aggregate function" msgstr "визначити нову агрегатну функцію" -#: sql_help.c:5504 +#: sql_help.c:5585 msgid "define a new cast" msgstr "визначити приведення типів" -#: sql_help.c:5510 +#: sql_help.c:5591 msgid "define a new collation" msgstr "визначити нове правило сортування" -#: sql_help.c:5516 +#: sql_help.c:5597 msgid "define a new encoding conversion" msgstr "визначити нове перетворення кодування" -#: sql_help.c:5522 +#: sql_help.c:5603 msgid "create a new database" msgstr "створити нову базу даних" -#: sql_help.c:5528 +#: sql_help.c:5609 msgid "define a new domain" msgstr "визначити новий домен" -#: sql_help.c:5534 +#: sql_help.c:5615 msgid "define a new event trigger" msgstr "визначити новий тригер події" -#: sql_help.c:5540 +#: sql_help.c:5621 msgid "install an extension" msgstr "встановити розширення" -#: sql_help.c:5546 +#: sql_help.c:5627 msgid "define a new foreign-data wrapper" msgstr "визначити нове джерело сторонніх даних" -#: sql_help.c:5552 +#: sql_help.c:5633 msgid "define a new foreign table" msgstr "визначити нову сторонню таблицю" -#: sql_help.c:5558 +#: sql_help.c:5639 msgid "define a new function" msgstr "визначити нову функцію" -#: sql_help.c:5564 sql_help.c:5624 sql_help.c:5726 +#: sql_help.c:5645 sql_help.c:5705 sql_help.c:5807 msgid "define a new database role" msgstr "визначити нову роль бази даних" -#: sql_help.c:5570 +#: sql_help.c:5651 msgid "define a new index" msgstr "визначити новий індекс" -#: sql_help.c:5576 +#: sql_help.c:5657 msgid "define a new procedural language" msgstr "визначити нову процедурну мову" -#: sql_help.c:5582 +#: sql_help.c:5663 msgid "define a new materialized view" msgstr "визначити нове матеріалізоване подання" -#: sql_help.c:5588 +#: sql_help.c:5669 msgid "define a new operator" msgstr "визначити новий оператор" -#: sql_help.c:5594 +#: sql_help.c:5675 msgid "define a new operator class" msgstr "визначити новий клас оператора" -#: sql_help.c:5600 +#: sql_help.c:5681 msgid "define a new operator family" msgstr "визначити нове сімейство операторів" -#: sql_help.c:5606 +#: sql_help.c:5687 msgid "define a new row-level security policy for a table" msgstr "визначити нову політику безпеки на рівні рядків для таблиці" -#: sql_help.c:5612 +#: sql_help.c:5693 msgid "define a new procedure" msgstr "визначити нову процедуру" -#: sql_help.c:5618 +#: sql_help.c:5699 msgid "define a new publication" msgstr "визначити нову публікацію" -#: sql_help.c:5630 +#: sql_help.c:5711 msgid "define a new rewrite rule" msgstr "визначити нове правило перезапису" -#: sql_help.c:5636 +#: sql_help.c:5717 msgid "define a new schema" msgstr "визначити нову схему" -#: sql_help.c:5642 +#: sql_help.c:5723 msgid "define a new sequence generator" msgstr "визначити новий генератор послідовностей" -#: sql_help.c:5648 +#: sql_help.c:5729 msgid "define a new foreign server" msgstr "визначити новий сторонній сервер" -#: sql_help.c:5654 +#: sql_help.c:5735 msgid "define extended statistics" msgstr "визначити розширену статистику" -#: sql_help.c:5660 +#: sql_help.c:5741 msgid "define a new subscription" msgstr "визначити нову підписку" -#: sql_help.c:5666 +#: sql_help.c:5747 msgid "define a new table" msgstr "визначити нову таблицю" -#: sql_help.c:5672 sql_help.c:6194 +#: sql_help.c:5753 sql_help.c:6275 msgid "define a new table from the results of a query" msgstr "визначити нову таблицю з результатів запиту" -#: sql_help.c:5678 +#: sql_help.c:5759 msgid "define a new tablespace" msgstr "визначити новий табличний простір" -#: sql_help.c:5684 +#: sql_help.c:5765 msgid "define a new text search configuration" msgstr "визначити нову конфігурацію текстового пошуку" -#: sql_help.c:5690 +#: sql_help.c:5771 msgid "define a new text search dictionary" msgstr "визначити новий словник текстового пошуку" -#: sql_help.c:5696 +#: sql_help.c:5777 msgid "define a new text search parser" msgstr "визначити новий аналізатор текстового пошуку" -#: sql_help.c:5702 +#: sql_help.c:5783 msgid "define a new text search template" msgstr "визначити новий шаблон текстового пошуку" -#: sql_help.c:5708 +#: sql_help.c:5789 msgid "define a new transform" msgstr "визначити нове перетворення" -#: sql_help.c:5714 +#: sql_help.c:5795 msgid "define a new trigger" msgstr "визначити новий тригер" -#: sql_help.c:5720 +#: sql_help.c:5801 msgid "define a new data type" msgstr "визначити новий тип даних" -#: sql_help.c:5732 +#: sql_help.c:5813 msgid "define a new mapping of a user to a foreign server" msgstr "визначити нове зіставлення користувача для стороннього сервера" -#: sql_help.c:5738 +#: sql_help.c:5819 msgid "define a new view" msgstr "визначити нове подання" -#: sql_help.c:5744 +#: sql_help.c:5825 msgid "deallocate a prepared statement" msgstr "звільнити підготовлену команду" -#: sql_help.c:5750 +#: sql_help.c:5831 msgid "define a cursor" msgstr "визначити курсор" -#: sql_help.c:5756 +#: sql_help.c:5837 msgid "delete rows of a table" msgstr "видалити рядки таблиці" -#: sql_help.c:5762 +#: sql_help.c:5843 msgid "discard session state" msgstr "очистити стан сесії" -#: sql_help.c:5768 +#: sql_help.c:5849 msgid "execute an anonymous code block" msgstr "виконати анонімний блок коду" -#: sql_help.c:5774 +#: sql_help.c:5855 msgid "remove an access method" msgstr "видалити метод доступу" -#: sql_help.c:5780 +#: sql_help.c:5861 msgid "remove an aggregate function" msgstr "видалити агрегатну функцію" -#: sql_help.c:5786 +#: sql_help.c:5867 msgid "remove a cast" msgstr "видалити приведення типів" -#: sql_help.c:5792 +#: sql_help.c:5873 msgid "remove a collation" msgstr "видалити правило сортування" -#: sql_help.c:5798 +#: sql_help.c:5879 msgid "remove a conversion" msgstr "видалити перетворення" -#: sql_help.c:5804 +#: sql_help.c:5885 msgid "remove a database" msgstr "видалити базу даних" -#: sql_help.c:5810 +#: sql_help.c:5891 msgid "remove a domain" msgstr "видалити домен" -#: sql_help.c:5816 +#: sql_help.c:5897 msgid "remove an event trigger" msgstr "видалити тригер події" -#: sql_help.c:5822 +#: sql_help.c:5903 msgid "remove an extension" msgstr "видалити розширення" -#: sql_help.c:5828 +#: sql_help.c:5909 msgid "remove a foreign-data wrapper" msgstr "видалити джерело сторонніх даних" -#: sql_help.c:5834 +#: sql_help.c:5915 msgid "remove a foreign table" msgstr "видалити сторонню таблицю" -#: sql_help.c:5840 +#: sql_help.c:5921 msgid "remove a function" msgstr "видалити функцію" -#: sql_help.c:5846 sql_help.c:5912 sql_help.c:6014 +#: sql_help.c:5927 sql_help.c:5993 sql_help.c:6095 msgid "remove a database role" msgstr "видалити роль бази даних" -#: sql_help.c:5852 +#: sql_help.c:5933 msgid "remove an index" msgstr "видалити індекс" -#: sql_help.c:5858 +#: sql_help.c:5939 msgid "remove a procedural language" msgstr "видалити процедурну мову" -#: sql_help.c:5864 +#: sql_help.c:5945 msgid "remove a materialized view" msgstr "видалити матеріалізоване подання" -#: sql_help.c:5870 +#: sql_help.c:5951 msgid "remove an operator" msgstr "видалити оператор" -#: sql_help.c:5876 +#: sql_help.c:5957 msgid "remove an operator class" msgstr "видалити клас операторів" -#: sql_help.c:5882 +#: sql_help.c:5963 msgid "remove an operator family" msgstr "видалити сімейство операторів" -#: sql_help.c:5888 +#: sql_help.c:5969 msgid "remove database objects owned by a database role" msgstr "видалити об'єкти бази даних, що належать ролі" -#: sql_help.c:5894 +#: sql_help.c:5975 msgid "remove a row-level security policy from a table" msgstr "видалити політику безпеки на рівні рядків з таблиці" -#: sql_help.c:5900 +#: sql_help.c:5981 msgid "remove a procedure" msgstr "видалити процедуру" -#: sql_help.c:5906 +#: sql_help.c:5987 msgid "remove a publication" msgstr "видалити публікацію" -#: sql_help.c:5918 +#: sql_help.c:5999 msgid "remove a routine" msgstr "видалити підпрограму" -#: sql_help.c:5924 +#: sql_help.c:6005 msgid "remove a rewrite rule" msgstr "видалити правило перезапису" -#: sql_help.c:5930 +#: sql_help.c:6011 msgid "remove a schema" msgstr "видалити схему" -#: sql_help.c:5936 +#: sql_help.c:6017 msgid "remove a sequence" msgstr "видалити послідовність" -#: sql_help.c:5942 +#: sql_help.c:6023 msgid "remove a foreign server descriptor" msgstr "видалити опис стороннього серверу" -#: sql_help.c:5948 +#: sql_help.c:6029 msgid "remove extended statistics" msgstr "видалити розширену статистику" -#: sql_help.c:5954 +#: sql_help.c:6035 msgid "remove a subscription" msgstr "видалити підписку" -#: sql_help.c:5960 +#: sql_help.c:6041 msgid "remove a table" msgstr "видалити таблицю" -#: sql_help.c:5966 +#: sql_help.c:6047 msgid "remove a tablespace" msgstr "видалити табличний простір" -#: sql_help.c:5972 +#: sql_help.c:6053 msgid "remove a text search configuration" msgstr "видалити конфігурацію тектового пошуку" -#: sql_help.c:5978 +#: sql_help.c:6059 msgid "remove a text search dictionary" msgstr "видалити словник тектового пошуку" -#: sql_help.c:5984 +#: sql_help.c:6065 msgid "remove a text search parser" msgstr "видалити парсер тектового пошуку" -#: sql_help.c:5990 +#: sql_help.c:6071 msgid "remove a text search template" msgstr "видалити шаблон тектового пошуку" -#: sql_help.c:5996 +#: sql_help.c:6077 msgid "remove a transform" msgstr "видалити перетворення" -#: sql_help.c:6002 +#: sql_help.c:6083 msgid "remove a trigger" msgstr "видалити тригер" -#: sql_help.c:6008 +#: sql_help.c:6089 msgid "remove a data type" msgstr "видалити тип даних" -#: sql_help.c:6020 +#: sql_help.c:6101 msgid "remove a user mapping for a foreign server" msgstr "видалити зіставлення користувача для стороннього серверу" -#: sql_help.c:6026 +#: sql_help.c:6107 msgid "remove a view" msgstr "видалити подання" -#: sql_help.c:6038 +#: sql_help.c:6119 msgid "execute a prepared statement" msgstr "виконати підготовлену команду" -#: sql_help.c:6044 +#: sql_help.c:6125 msgid "show the execution plan of a statement" msgstr "показати план виконання команди" -#: sql_help.c:6050 +#: sql_help.c:6131 msgid "retrieve rows from a query using a cursor" msgstr "отримати рядки запиту з курсору" -#: sql_help.c:6056 +#: sql_help.c:6137 msgid "define access privileges" msgstr "визначити права доступу" -#: sql_help.c:6062 +#: sql_help.c:6143 msgid "import table definitions from a foreign server" msgstr "імпортувати визначення таблиць зі стороннього серверу" -#: sql_help.c:6068 +#: sql_help.c:6149 msgid "create new rows in a table" msgstr "створити нові рядки в таблиці" -#: sql_help.c:6074 +#: sql_help.c:6155 msgid "listen for a notification" msgstr "очікувати на повідомлення" -#: sql_help.c:6080 +#: sql_help.c:6161 msgid "load a shared library file" msgstr "завантажити файл спільної бібліотеки" -#: sql_help.c:6086 +#: sql_help.c:6167 msgid "lock a table" msgstr "заблокувати таблицю" -#: sql_help.c:6092 +#: sql_help.c:6173 msgid "conditionally insert, update, or delete rows of a table" msgstr "умовно вставити, оновити або видалити рядки таблиці" -#: sql_help.c:6098 +#: sql_help.c:6179 msgid "position a cursor" msgstr "розташувати курсор" -#: sql_help.c:6104 +#: sql_help.c:6185 msgid "generate a notification" msgstr "згенерувати повідомлення" -#: sql_help.c:6110 +#: sql_help.c:6191 msgid "prepare a statement for execution" msgstr "підготувати команду для виконання" -#: sql_help.c:6116 +#: sql_help.c:6197 msgid "prepare the current transaction for two-phase commit" msgstr "підготувати поточну транзакцію для двохфазного затвердження" -#: sql_help.c:6122 +#: sql_help.c:6203 msgid "change the ownership of database objects owned by a database role" msgstr "змінити власника об'єктів БД, що належать заданій ролі" -#: sql_help.c:6128 +#: sql_help.c:6209 msgid "replace the contents of a materialized view" msgstr "замінити вміст матеріалізованого подання" -#: sql_help.c:6134 +#: sql_help.c:6215 msgid "rebuild indexes" msgstr "перебудувати індекси" -#: sql_help.c:6140 +#: sql_help.c:6221 msgid "release a previously defined savepoint" msgstr "звільнити раніше визначену точку збереження" -#: sql_help.c:6146 +#: sql_help.c:6227 msgid "restore the value of a run-time parameter to the default value" msgstr "відновити початкове значення параметру виконання" -#: sql_help.c:6152 +#: sql_help.c:6233 msgid "remove access privileges" msgstr "видалити права доступу" -#: sql_help.c:6164 +#: sql_help.c:6245 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "скасувати транзакцію, раніше підготовлену до двохфазного затвердження" -#: sql_help.c:6170 +#: sql_help.c:6251 msgid "roll back to a savepoint" msgstr "відкотитися до точки збереження" -#: sql_help.c:6176 +#: sql_help.c:6257 msgid "define a new savepoint within the current transaction" msgstr "визначити нову точку збереження в рамках поточної транзакції" -#: sql_help.c:6182 +#: sql_help.c:6263 msgid "define or change a security label applied to an object" msgstr "визначити або змінити мітку безпеки, застосовану до об'єкта" -#: sql_help.c:6188 sql_help.c:6242 sql_help.c:6278 +#: sql_help.c:6269 sql_help.c:6323 sql_help.c:6359 msgid "retrieve rows from a table or view" msgstr "отримати рядки з таблиці або подання" -#: sql_help.c:6200 +#: sql_help.c:6281 msgid "change a run-time parameter" msgstr "змінити параметр виконання" -#: sql_help.c:6206 +#: sql_help.c:6287 msgid "set constraint check timing for the current transaction" msgstr "встановити час перевірки обмеження для поточної транзакції" -#: sql_help.c:6212 +#: sql_help.c:6293 msgid "set the current user identifier of the current session" msgstr "встановити ідентифікатор поточного користувача в поточній сесії" -#: sql_help.c:6218 +#: sql_help.c:6299 msgid "set the session user identifier and the current user identifier of the current session" msgstr "встановити ідентифікатор користувача сесії й ідентифікатор поточного користувача в поточній сесії" -#: sql_help.c:6224 +#: sql_help.c:6305 msgid "set the characteristics of the current transaction" msgstr "встановити характеристики поточної транзакції" -#: sql_help.c:6230 +#: sql_help.c:6311 msgid "show the value of a run-time parameter" msgstr "показати значення параметра виконання" -#: sql_help.c:6248 +#: sql_help.c:6329 msgid "empty a table or set of tables" msgstr "очистити таблицю або декілька таблиць" -#: sql_help.c:6254 +#: sql_help.c:6335 msgid "stop listening for a notification" msgstr "припинити очікування повідомлень" -#: sql_help.c:6260 +#: sql_help.c:6341 msgid "update rows of a table" msgstr "змінити рядки таблиці" -#: sql_help.c:6266 +#: sql_help.c:6347 msgid "garbage-collect and optionally analyze a database" msgstr "виконати збір сміття і проаналізувати базу даних" -#: sql_help.c:6272 +#: sql_help.c:6353 msgid "compute a set of rows" msgstr "отримати набір рядків" -#: startup.c:220 +#: startup.c:225 #, c-format msgid "-1 can only be used in non-interactive mode" msgstr "-1 можна використовувати лише в неінтерактивному режимі" -#: startup.c:343 +#: startup.c:348 #, c-format msgid "could not open log file \"%s\": %m" msgstr "не вдалося відкрити файл журналу \"%s\": %m" -#: startup.c:460 +#: startup.c:465 #, c-format msgid "Type \"help\" for help.\n\n" msgstr "Введіть \"help\", щоб отримати допомогу.\n\n" -#: startup.c:612 +#: startup.c:617 #, c-format msgid "could not set printing parameter \"%s\"" msgstr "не вдалося встановити параметр друку \"%s\"" -#: startup.c:719 +#: startup.c:724 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: startup.c:735 +#: startup.c:740 #, c-format msgid "extra command-line argument \"%s\" ignored" msgstr "зайвий аргумент \"%s\" проігнорований" -#: startup.c:783 +#: startup.c:788 #, c-format msgid "could not find own program executable" msgstr "не вдалося знайти ехе файл власної програми" -#: tab-complete.c:6216 +#: tab-complete.in.c:6639 #, c-format msgid "tab completion query failed: %s\n" "Query was:\n" @@ -6331,22 +6644,47 @@ msgstr "помилка запиту Tab-доповнення: %s\n" "Запит:\n" "%s" -#: variables.c:139 +#: variables.c:141 #, c-format msgid "unrecognized value \"%s\" for \"%s\": Boolean expected" msgstr "нерозпізнане значення \"%s\" для \"%s\": очікувалося логічне значення" -#: variables.c:176 +#: variables.c:178 #, c-format msgid "invalid value \"%s\" for \"%s\": integer expected" msgstr "неправильне значення \"%s\" для \"%s\": очікувалося ціле число" -#: variables.c:224 +#: variables.c:207 +#, c-format +msgid "invalid input syntax for variable \"%s\"" +msgstr "невірний синтаксис вводу для змінної \"%s\"" + +#: variables.c:218 +#, c-format +msgid "invalid value \"%s\" for variable \"%s\": must be greater than %.2f" +msgstr "невірне значення \"%s\" для змінної \"%s\": повинно бути більше %.2f" + +#: variables.c:225 +#, c-format +msgid "invalid value \"%s\" for variable \"%s\": must be less than %.2f" +msgstr "невірне значення \"%s\" для змінної \"%s\": повинно бути менше %.2f" + +#: variables.c:241 +#, c-format +msgid "value \"%s\" is out of range for variable \"%s\"" +msgstr "значення \"%s\" виходить за межі для змінної \"%s\"" + +#: variables.c:247 +#, c-format +msgid "invalid value \"%s\" for variable \"%s\"" +msgstr "невірне значення \"%s\" для змінної \"%s\"" + +#: variables.c:294 #, c-format msgid "invalid variable name: \"%s\"" msgstr "неправильне ім'я змінної: \"%s\"" -#: variables.c:418 +#: variables.c:488 #, c-format msgid "unrecognized value \"%s\" for \"%s\"\n" "Available values are: %s." diff --git a/src/bin/psql/prompt.c b/src/bin/psql/prompt.c index b08d7328fbf..92f01f900b1 100644 --- a/src/bin/psql/prompt.c +++ b/src/bin/psql/prompt.c @@ -188,6 +188,7 @@ get_prompt(promptStatus_t status, ConditionalStack cstack) break; /* pipeline status */ case 'P': + if (pset.db) { PGpipelineStatus status = PQpipelineStatus(pset.db); @@ -197,9 +198,8 @@ get_prompt(promptStatus_t status, ConditionalStack cstack) strlcpy(buf, "abort", sizeof(buf)); else strlcpy(buf, "off", sizeof(buf)); - break; } - + break; case '0': case '1': case '2': diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c index 263fc93fa95..fdd7e2308ca 100644 --- a/src/bin/psql/tab-complete.in.c +++ b/src/bin/psql/tab-complete.in.c @@ -3116,6 +3116,9 @@ match_previous_words(int pattern_id, else if (TailMatches("VERBOSE|SKIP_LOCKED")) COMPLETE_WITH("ON", "OFF"); } + else if (Matches("ANALYZE", "(*)")) + COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_analyzables, + "ONLY"); else if (Matches("ANALYZE", MatchAnyN, "(")) /* "ANALYZE (" should be caught above, so assume we want columns */ COMPLETE_WITH_ATTR(prev2_wd); @@ -5169,24 +5172,6 @@ match_previous_words(int pattern_id, "VERBOSE", "ANALYZE", "ONLY"); - else if (Matches("VACUUM", "FULL")) - COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, - "FREEZE", - "VERBOSE", - "ANALYZE", - "ONLY"); - else if (Matches("VACUUM", MatchAnyN, "FREEZE")) - COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, - "VERBOSE", - "ANALYZE", - "ONLY"); - else if (Matches("VACUUM", MatchAnyN, "VERBOSE")) - COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, - "ANALYZE", - "ONLY"); - else if (Matches("VACUUM", MatchAnyN, "ANALYZE")) - COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, - "ONLY"); else if (HeadMatches("VACUUM", "(*") && !HeadMatches("VACUUM", "(*)")) { @@ -5206,6 +5191,27 @@ match_previous_words(int pattern_id, else if (TailMatches("INDEX_CLEANUP")) COMPLETE_WITH("AUTO", "ON", "OFF"); } + else if (Matches("VACUUM", "(*)")) + COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, + "ONLY"); + else if (Matches("VACUUM", "FULL")) + COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, + "FREEZE", + "VERBOSE", + "ANALYZE", + "ONLY"); + else if (Matches("VACUUM", MatchAnyN, "FREEZE")) + COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, + "VERBOSE", + "ANALYZE", + "ONLY"); + else if (Matches("VACUUM", MatchAnyN, "VERBOSE")) + COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, + "ANALYZE", + "ONLY"); + else if (Matches("VACUUM", MatchAnyN, "ANALYZE")) + COMPLETE_WITH_SCHEMA_QUERY_PLUS(Query_for_list_of_vacuumables, + "ONLY"); else if (Matches("VACUUM", MatchAnyN, "(")) /* "VACUUM (" should be caught above, so assume we want columns */ COMPLETE_WITH_ATTR(prev2_wd); diff --git a/src/bin/scripts/po/es.po b/src/bin/scripts/po/es.po index 6871acf87e8..22a89880214 100644 --- a/src/bin/scripts/po/es.po +++ b/src/bin/scripts/po/es.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: pgscripts (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:21+0000\n" +"POT-Creation-Date: 2026-02-06 23:20+0000\n" "PO-Revision-Date: 2025-11-08 19:08+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -715,8 +715,7 @@ msgstr " -S, --no-superuser el rol no será un superusuario (predetermin msgid "" " -v, --valid-until=TIMESTAMP\n" " password expiration date and time for role\n" -msgstr "" -" -v, --valid-until=TIEMPO fecha/hora de expiración de contraseña para el rol\n" +msgstr " -v, --valid-until=TIEMPO fecha/hora de expiración de contraseña para el rol\n" #: createuser.c:442 #, c-format diff --git a/src/bin/scripts/po/uk.po b/src/bin/scripts/po/uk.po index 5ba97aa5045..5c558418dce 100644 --- a/src/bin/scripts/po/uk.po +++ b/src/bin/scripts/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:22+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:22+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pgscripts.pot\n" -"X-Crowdin-File-ID: 1038\n" +"X-Crowdin-File: /REL_18_STABLE/pgscripts.pot\n" +"X-Crowdin-File-ID: 1053\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "помилка: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "попередження: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "деталі: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "підказка: " @@ -48,44 +48,44 @@ msgstr "недостатньо пам'яті\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "неможливо дублювати нульовий покажчик (внутрішня помилка)\n" -#: ../../common/file_utils.c:70 ../../common/file_utils.c:347 -#: ../../common/file_utils.c:406 ../../common/file_utils.c:480 +#: ../../common/file_utils.c:69 ../../common/file_utils.c:370 +#: ../../common/file_utils.c:428 ../../common/file_utils.c:502 #, c-format msgid "could not open file \"%s\": %m" msgstr "не можливо відкрити файл \"%s\": %m" -#: ../../common/file_utils.c:76 +#: ../../common/file_utils.c:75 #, c-format msgid "could not synchronize file system for file \"%s\": %m" msgstr "не вдалося синхронізувати файлову систему для файлу \"%s\": %m" -#: ../../common/file_utils.c:120 ../../common/file_utils.c:566 +#: ../../common/file_utils.c:123 ../../common/file_utils.c:588 #, c-format msgid "could not stat file \"%s\": %m" msgstr "не вдалося отримати інформацію від файлу \"%s\": %m" -#: ../../common/file_utils.c:130 ../../common/file_utils.c:227 +#: ../../common/file_utils.c:133 ../../common/file_utils.c:243 #: ../../fe_utils/option_utils.c:99 #, c-format msgid "this build does not support sync method \"%s\"" msgstr "ця збірка не підтримує метод синхронізації \"%s\"" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 #, c-format msgid "could not open directory \"%s\": %m" msgstr "не вдалося відкрити каталог \"%s\": %m" -#: ../../common/file_utils.c:169 ../../common/file_utils.c:315 +#: ../../common/file_utils.c:174 ../../common/file_utils.c:338 #, c-format msgid "could not read directory \"%s\": %m" msgstr "не вдалося прочитати каталог \"%s\": %m" -#: ../../common/file_utils.c:418 ../../common/file_utils.c:488 +#: ../../common/file_utils.c:440 ../../common/file_utils.c:510 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не вдалося fsync файл \"%s\": %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "не вдалося перейменувати файл \"%s\" на \"%s\": %m" @@ -177,8 +177,8 @@ msgstr "Перервано\n" #: ../../fe_utils/print.c:3188 #, c-format -msgid "Cannot print table contents: number of cells %lld is equal to or exceeds maximum %lld.\n" -msgstr "Неможливо надрукувати вміст таблиці: кількість комірок %lld дорівнює або перевищує максимальне значення %lld.\n" +msgid "Cannot print table contents: number of cells % is equal to or exceeds maximum %zu.\n" +msgstr "Неможливо надрукувати вміст таблиці: кількість клітинок % дорівнює або перевищує максимум %zu.\n" #: ../../fe_utils/print.c:3229 #, c-format @@ -187,8 +187,8 @@ msgstr "Неможливо додати заголовок до вмісту т #: ../../fe_utils/print.c:3272 #, c-format -msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" -msgstr "Неможливо додати комірку до вмісту таблиці: перевищено загальну кількість комірок %lld.\n" +msgid "Cannot add cell to table content: total cell count of % exceeded.\n" +msgstr "Неможливо додати клітинку до вмісту таблиці: загальна кількість клітинок % перевищена.\n" #: ../../fe_utils/print.c:3530 #, c-format @@ -205,174 +205,174 @@ msgstr "запит не вдався: %s" msgid "Query was: %s" msgstr "Запит був: %s" -#: ../../fe_utils/string_utils.c:434 +#: ../../fe_utils/string_utils.c:587 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"\n" msgstr "аргумент командної оболонки містить символ нового рядка або повернення каретки: \"%s\"\n" -#: ../../fe_utils/string_utils.c:607 +#: ../../fe_utils/string_utils.c:760 #, c-format msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "назва бази даних містить символ нового рядка або повернення каретки: \"%s\"\n" -#: clusterdb.c:114 clusterdb.c:133 createdb.c:149 createdb.c:168 +#: clusterdb.c:113 clusterdb.c:132 createdb.c:149 createdb.c:168 #: createuser.c:195 createuser.c:210 dropdb.c:104 dropdb.c:113 dropdb.c:121 #: dropuser.c:95 dropuser.c:110 dropuser.c:123 pg_isready.c:97 pg_isready.c:111 -#: reindexdb.c:177 reindexdb.c:196 vacuumdb.c:280 vacuumdb.c:300 +#: reindexdb.c:184 reindexdb.c:203 vacuumdb.c:292 vacuumdb.c:312 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Спробуйте \"%s --help\" для додаткової інформації." -#: clusterdb.c:131 createdb.c:166 createuser.c:208 dropdb.c:119 dropuser.c:108 -#: pg_isready.c:109 reindexdb.c:194 vacuumdb.c:298 +#: clusterdb.c:130 createdb.c:166 createuser.c:208 dropdb.c:119 dropuser.c:108 +#: pg_isready.c:109 reindexdb.c:201 vacuumdb.c:310 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "забагато аргументів у командному рядку (перший \"%s\")" -#: clusterdb.c:149 +#: clusterdb.c:148 #, c-format msgid "cannot cluster all databases and a specific one at the same time" msgstr "неможливо кластеризувати всі бази даних і одну вказану одночасно" -#: clusterdb.c:214 +#: clusterdb.c:213 #, c-format msgid "clustering of table \"%s\" in database \"%s\" failed: %s" msgstr "кластеризувати таблицю \"%s\" у базі даних \"%s\" не вдалося: %s" -#: clusterdb.c:217 +#: clusterdb.c:216 #, c-format msgid "clustering of database \"%s\" failed: %s" msgstr "кластеризувати базу даних \"%s\" не вдалося: %s" -#: clusterdb.c:248 +#: clusterdb.c:247 #, c-format msgid "%s: clustering database \"%s\"\n" msgstr "%s: кластеризація бази даних \"%s\"\n" -#: clusterdb.c:274 +#: clusterdb.c:273 #, c-format msgid "%s clusters all previously clustered tables in a database.\n\n" msgstr "%s кластеризація усіх попередньо кластеризованих таблиць в базі даних.\n\n" -#: clusterdb.c:275 createdb.c:298 createuser.c:415 dropdb.c:172 dropuser.c:170 -#: pg_isready.c:226 reindexdb.c:868 vacuumdb.c:1147 +#: clusterdb.c:274 createdb.c:300 createuser.c:417 dropdb.c:171 dropuser.c:171 +#: pg_isready.c:226 reindexdb.c:898 vacuumdb.c:1337 #, c-format msgid "Usage:\n" msgstr "Використання:\n" -#: clusterdb.c:276 reindexdb.c:869 vacuumdb.c:1148 +#: clusterdb.c:275 reindexdb.c:899 vacuumdb.c:1338 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPTION]... [DBNAME]\n" -#: clusterdb.c:277 createdb.c:300 createuser.c:417 dropdb.c:174 dropuser.c:172 -#: pg_isready.c:229 reindexdb.c:870 vacuumdb.c:1149 +#: clusterdb.c:276 createdb.c:302 createuser.c:419 dropdb.c:173 dropuser.c:173 +#: pg_isready.c:229 reindexdb.c:900 vacuumdb.c:1339 #, c-format msgid "\n" "Options:\n" msgstr "\n" "Параметри:\n" -#: clusterdb.c:278 +#: clusterdb.c:277 #, c-format msgid " -a, --all cluster all databases\n" msgstr " -a, --all кластеризація усіх баз даних\n" -#: clusterdb.c:279 +#: clusterdb.c:278 #, c-format msgid " -d, --dbname=DBNAME database to cluster\n" msgstr " -d, --dbname=ІМ'Я_БД база даних для кластеризації\n" -#: clusterdb.c:280 createuser.c:423 dropdb.c:175 dropuser.c:173 +#: clusterdb.c:279 createuser.c:425 dropdb.c:174 dropuser.c:174 #, c-format msgid " -e, --echo show the commands being sent to the server\n" msgstr " -e, --echo показати команди, надіслані серверу\n" -#: clusterdb.c:281 +#: clusterdb.c:280 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet не виводити жодних повідомлень\n" -#: clusterdb.c:282 +#: clusterdb.c:281 #, c-format msgid " -t, --table=TABLE cluster specific table(s) only\n" msgstr " -t, --table=ТАБЛИЦЯ кластеризувати тільки вказані таблиці\n" -#: clusterdb.c:283 +#: clusterdb.c:282 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose виводити багато інформації\n" -#: clusterdb.c:284 createuser.c:439 dropdb.c:178 dropuser.c:176 +#: clusterdb.c:283 createuser.c:441 dropdb.c:177 dropuser.c:177 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: clusterdb.c:285 createuser.c:447 dropdb.c:180 dropuser.c:178 +#: clusterdb.c:284 createuser.c:449 dropdb.c:179 dropuser.c:179 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: clusterdb.c:286 createdb.c:317 createuser.c:448 dropdb.c:181 dropuser.c:179 -#: pg_isready.c:235 reindexdb.c:885 vacuumdb.c:1178 +#: clusterdb.c:285 createdb.c:319 createuser.c:450 dropdb.c:180 dropuser.c:180 +#: pg_isready.c:235 reindexdb.c:915 vacuumdb.c:1369 #, c-format msgid "\n" "Connection options:\n" msgstr "\n" "Налаштування з'єднання:\n" -#: clusterdb.c:287 createuser.c:449 dropdb.c:182 dropuser.c:180 vacuumdb.c:1179 +#: clusterdb.c:286 createuser.c:451 dropdb.c:181 dropuser.c:181 vacuumdb.c:1370 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=HOSTNAME хост сервера бази даних або каталог сокетів\n" -#: clusterdb.c:288 createuser.c:450 dropdb.c:183 dropuser.c:181 vacuumdb.c:1180 +#: clusterdb.c:287 createuser.c:452 dropdb.c:182 dropuser.c:182 vacuumdb.c:1371 #, c-format msgid " -p, --port=PORT database server port\n" msgstr " -p, --port=PORT порт сервера бази даних\n" -#: clusterdb.c:289 dropdb.c:184 vacuumdb.c:1181 +#: clusterdb.c:288 dropdb.c:183 vacuumdb.c:1372 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=ІМ'Я_КОРИСТУВАЧА ім'я користувача для з'єднання з сервером\n" -#: clusterdb.c:290 createuser.c:452 dropdb.c:185 dropuser.c:183 vacuumdb.c:1182 +#: clusterdb.c:289 createuser.c:454 dropdb.c:184 dropuser.c:184 vacuumdb.c:1373 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password ніколи не запитувати пароль\n" -#: clusterdb.c:291 createuser.c:453 dropdb.c:186 dropuser.c:184 vacuumdb.c:1183 +#: clusterdb.c:290 createuser.c:455 dropdb.c:185 dropuser.c:185 vacuumdb.c:1374 #, c-format msgid " -W, --password force password prompt\n" msgstr " -W, --password запросити пароль\n" -#: clusterdb.c:292 dropdb.c:187 vacuumdb.c:1184 +#: clusterdb.c:291 dropdb.c:186 vacuumdb.c:1375 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=DBNAME альтернативна бази даних для обслуговування\n" -#: clusterdb.c:293 +#: clusterdb.c:292 #, c-format msgid "\n" "Read the description of the SQL command CLUSTER for details.\n" msgstr "\n" "Для деталей читайте опис команди SQL CLUSTER.\n" -#: clusterdb.c:294 createdb.c:325 createuser.c:454 dropdb.c:188 dropuser.c:185 -#: pg_isready.c:240 reindexdb.c:893 vacuumdb.c:1186 +#: clusterdb.c:293 createdb.c:327 createuser.c:456 dropdb.c:187 dropuser.c:186 +#: pg_isready.c:240 reindexdb.c:923 vacuumdb.c:1377 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: clusterdb.c:295 createdb.c:326 createuser.c:455 dropdb.c:189 dropuser.c:186 -#: pg_isready.c:241 reindexdb.c:894 vacuumdb.c:1187 +#: clusterdb.c:294 createdb.c:328 createuser.c:457 dropdb.c:188 dropuser.c:187 +#: pg_isready.c:241 reindexdb.c:924 vacuumdb.c:1378 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" -#: common.c:107 +#: common.c:106 #, c-format msgid "query returned %d row instead of one: %s" msgid_plural "query returned %d rows instead of one: %s" @@ -408,134 +408,134 @@ msgstr "Відповідь має бути \"%s\" або \"%s\".\n" msgid "\"%s\" is not a valid encoding name" msgstr "\"%s\" не є невірним ім'ям кодування" -#: createdb.c:260 +#: createdb.c:262 #, c-format msgid "database creation failed: %s" msgstr "створити базу даних не вдалося: %s" -#: createdb.c:279 +#: createdb.c:281 #, c-format msgid "comment creation failed (database was created): %s" msgstr "не вдалося створити коментарі (база даних була створена): %s" -#: createdb.c:297 +#: createdb.c:299 #, c-format msgid "%s creates a PostgreSQL database.\n\n" msgstr "%s створює базу даних PostgreSQL.\n\n" -#: createdb.c:299 +#: createdb.c:301 #, c-format msgid " %s [OPTION]... [DBNAME] [DESCRIPTION]\n" msgstr " %s [OPTION]... [DBNAME] [DESCRIPTION]\n" -#: createdb.c:301 +#: createdb.c:303 #, c-format msgid " -D, --tablespace=TABLESPACE default tablespace for the database\n" msgstr " -D, --tablespace=ТАБЛИЧНИЙ_ПРОСТІР табличний простір для бази даних за замовчуванням\n" -#: createdb.c:302 reindexdb.c:874 +#: createdb.c:304 reindexdb.c:904 #, c-format msgid " -e, --echo show the commands being sent to the server\n" msgstr " -e, --echo показати команди, надіслані серверу\n" -#: createdb.c:303 +#: createdb.c:305 #, c-format msgid " -E, --encoding=ENCODING encoding for the database\n" msgstr " -E, --encoding=КОДУВАННЯ кодування бази даних\n" -#: createdb.c:304 +#: createdb.c:306 #, c-format msgid " -l, --locale=LOCALE locale settings for the database\n" msgstr " -l, --locale=ЛОКАЛЬ параметри локалі бази даних\n" -#: createdb.c:305 +#: createdb.c:307 #, c-format msgid " --lc-collate=LOCALE LC_COLLATE setting for the database\n" msgstr " --lc-collate=ЛОКАЛЬ параметр LC_COLLATE для бази даних\n" -#: createdb.c:306 +#: createdb.c:308 #, c-format msgid " --lc-ctype=LOCALE LC_CTYPE setting for the database\n" msgstr " --lc-ctype=ЛОКАЛЬ параметр LC_CTYPE для бази даних\n" -#: createdb.c:307 +#: createdb.c:309 #, c-format msgid " --builtin-locale=LOCALE builtin locale setting for the database\n" msgstr " --builtin-locale=LOCALE параметри вбудованої локалі бази даних\n" -#: createdb.c:308 +#: createdb.c:310 #, c-format msgid " --icu-locale=LOCALE ICU locale setting for the database\n" msgstr " --icu-locale=LOCALE параметр локалі ICU бази даних\n" -#: createdb.c:309 +#: createdb.c:311 #, c-format msgid " --icu-rules=RULES ICU rules setting for the database\n" msgstr " --icu-locale=RULES правила ICU для бази даних\n" -#: createdb.c:310 +#: createdb.c:312 #, c-format msgid " --locale-provider={builtin|libc|icu}\n" " locale provider for the database's default collation\n" msgstr " --locale-provider={builtin|libc|icu}\n" " провайдер локалі для сортування бази даних за замовчуванням\n" -#: createdb.c:312 +#: createdb.c:314 #, c-format msgid " -O, --owner=OWNER database user to own the new database\n" msgstr " -O, --власник=ВЛАСНИК користувач-власник нової бази даних\n" -#: createdb.c:313 +#: createdb.c:315 #, c-format msgid " -S, --strategy=STRATEGY database creation strategy wal_log or file_copy\n" msgstr " -S, --strategy=STRATEGY стратегія створення бази даних для wal_log або file_copy\n" -#: createdb.c:314 +#: createdb.c:316 #, c-format msgid " -T, --template=TEMPLATE template database to copy\n" msgstr " -T, --шаблон=ШАБЛОН шаблонна база даних для копіювання\n" -#: createdb.c:315 reindexdb.c:883 +#: createdb.c:317 reindexdb.c:913 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію, потім вийти\n" -#: createdb.c:316 reindexdb.c:884 +#: createdb.c:318 reindexdb.c:914 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: createdb.c:318 reindexdb.c:886 +#: createdb.c:320 reindexdb.c:916 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=ІМ'Я_ХОСТА хост сервера бази даних або каталог сокетів\n" -#: createdb.c:319 reindexdb.c:887 +#: createdb.c:321 reindexdb.c:917 #, c-format msgid " -p, --port=PORT database server port\n" msgstr " -p, --port=ПОРТ порт сервера бази даних\n" -#: createdb.c:320 reindexdb.c:888 +#: createdb.c:322 reindexdb.c:918 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=ІМ'Я_КОРИСТУВАЧА ім'я користувача для з'єднання з сервером\n" -#: createdb.c:321 reindexdb.c:889 +#: createdb.c:323 reindexdb.c:919 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password ніколи не запитувати пароль\n" -#: createdb.c:322 reindexdb.c:890 +#: createdb.c:324 reindexdb.c:920 #, c-format msgid " -W, --password force password prompt\n" msgstr " -W, --password запросити пароль\n" -#: createdb.c:323 reindexdb.c:891 +#: createdb.c:325 reindexdb.c:921 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=DBNAME альтернативна бази даних для обслуговування\n" -#: createdb.c:324 +#: createdb.c:326 #, c-format msgid "\n" "By default, a database with the same name as the current user is created.\n" @@ -571,146 +571,146 @@ msgstr "Чи дозволено новій ролі створювати баз msgid "Shall the new role be allowed to create more new roles?" msgstr "Чи дозволено новій ролі створювати інші нові ролі?" -#: createuser.c:309 +#: createuser.c:311 #, c-format msgid "password encryption failed: %s" msgstr "помилка шифрування пароля: %s" -#: createuser.c:400 +#: createuser.c:402 #, c-format msgid "creation of new role failed: %s" msgstr "не вдалося створити нову роль: %s" -#: createuser.c:414 +#: createuser.c:416 #, c-format msgid "%s creates a new PostgreSQL role.\n\n" msgstr "%s створює нову роль PostgreSQL.\n\n" -#: createuser.c:416 dropuser.c:171 +#: createuser.c:418 dropuser.c:172 #, c-format msgid " %s [OPTION]... [ROLENAME]\n" msgstr " %s [OPTION]... [ROLENAME]\n" -#: createuser.c:418 +#: createuser.c:420 #, c-format msgid " -a, --with-admin=ROLE ROLE will be a member of new role with admin\n" " option\n" msgstr " -a, --with-admin=ROLE ROLE стане членом нової ролі з правом\n" " адміністратора\n" -#: createuser.c:420 +#: createuser.c:422 #, c-format msgid " -c, --connection-limit=N connection limit for role (default: no limit)\n" msgstr " -c, --connection-limit=N ліміт під'єднань для ролі (за замовчуванням ліміту немає)\n" -#: createuser.c:421 +#: createuser.c:423 #, c-format msgid " -d, --createdb role can create new databases\n" msgstr " -d, --createdb роль може створювати нові бази даних\n" -#: createuser.c:422 +#: createuser.c:424 #, c-format msgid " -D, --no-createdb role cannot create databases (default)\n" msgstr " -D, --no-createdb роль не може створювати нові бази даних (за замовчуванням)\n" -#: createuser.c:424 +#: createuser.c:426 #, c-format msgid " -g, --member-of=ROLE new role will be a member of ROLE\n" msgstr " -g, --member-of=ROLE нова роль буде членом ROLE\n" -#: createuser.c:425 +#: createuser.c:427 #, c-format msgid " --role=ROLE (same as --member-of, deprecated)\n" msgstr " --role=ROLE (те саме, що --member-of, застаріло)\n" -#: createuser.c:426 +#: createuser.c:428 #, c-format msgid " -i, --inherit role inherits privileges of roles it is a\n" " member of (default)\n" msgstr " -i, --inherit роль переймає права від ролей до яких вона\n" " включена (за замовчуванням)\n" -#: createuser.c:428 +#: createuser.c:430 #, c-format msgid " -I, --no-inherit role does not inherit privileges\n" msgstr " -I, --no-inherit роль не переймає права\n" -#: createuser.c:429 +#: createuser.c:431 #, c-format msgid " -l, --login role can login (default)\n" msgstr " -l, --login роль може увійти (за замовчуванням)\n" -#: createuser.c:430 +#: createuser.c:432 #, c-format msgid " -L, --no-login role cannot login\n" msgstr " -L, --no-login роль не може увійти\n" -#: createuser.c:431 +#: createuser.c:433 #, c-format msgid " -m, --with-member=ROLE ROLE will be a member of new role\n" msgstr " -m, --with-member=ROLE ROLE буде членом нової ролі\n" -#: createuser.c:432 +#: createuser.c:434 #, c-format msgid " -P, --pwprompt assign a password to new role\n" msgstr " -P, --pwprompt призначення паролю для нової ролі\n" -#: createuser.c:433 +#: createuser.c:435 #, c-format msgid " -r, --createrole role can create new roles\n" msgstr " -r, --createrole роль може створювати нові ролі\n" -#: createuser.c:434 +#: createuser.c:436 #, c-format msgid " -R, --no-createrole role cannot create roles (default)\n" msgstr " -R, --no-createrole роль не може створювати нові бази даних (за замовчуванням)\n" -#: createuser.c:435 +#: createuser.c:437 #, c-format msgid " -s, --superuser role will be superuser\n" msgstr " -s, --superuser роль буде суперкористувачем\n" -#: createuser.c:436 +#: createuser.c:438 #, c-format msgid " -S, --no-superuser role will not be superuser (default)\n" msgstr " -S, --no-superuser роль не буде суперкористувачем (за замовчуванням)\n" -#: createuser.c:437 +#: createuser.c:439 #, c-format msgid " -v, --valid-until=TIMESTAMP\n" " password expiration date and time for role\n" msgstr " -v, --valid-until=TIMESTAMP\n" " термін дії пароля для ролі\n" -#: createuser.c:440 +#: createuser.c:442 #, c-format msgid " --interactive prompt for missing role name and attributes rather\n" " than using defaults\n" msgstr " --interactive запитати пропущені ім’я ролі та атрибути, а не використовувати стандартні\n" -#: createuser.c:442 +#: createuser.c:444 #, c-format msgid " --bypassrls role can bypass row-level security (RLS) policy\n" msgstr " --bypassrls роль може обійти політику безпеки на рівні рядків (RLS)\n" -#: createuser.c:443 +#: createuser.c:445 #, c-format msgid " --no-bypassrls role cannot bypass row-level security (RLS) policy\n" " (default)\n" msgstr " --no-bypassrls роль не може обходити політику на рівні рядків (RLS)\n" " (за замовчуванням)\n" -#: createuser.c:445 +#: createuser.c:447 #, c-format msgid " --replication role can initiate replication\n" msgstr " --replication роль може ініціювати реплікацію\n" -#: createuser.c:446 +#: createuser.c:448 #, c-format msgid " --no-replication role cannot initiate replication (default)\n" msgstr " --no-replication роль не може ініціювати реплікацію (за замовчуванням)\n" -#: createuser.c:451 +#: createuser.c:453 #, c-format msgid " -U, --username=USERNAME user name to connect as (not the one to create)\n" msgstr " -U, --username=USERNAME ім'я користувача для підключення (не для створення)\n" @@ -729,32 +729,32 @@ msgstr "База даних \"%s\" буде назавжди видалена.\n msgid "Are you sure?" msgstr "Ви впевнені?" -#: dropdb.c:157 +#: dropdb.c:156 #, c-format msgid "database removal failed: %s" msgstr "помилка при видаленні бази даних: %s" -#: dropdb.c:171 +#: dropdb.c:170 #, c-format msgid "%s removes a PostgreSQL database.\n\n" msgstr "%s видаляє базу даних PostgreSQL.\n\n" -#: dropdb.c:173 +#: dropdb.c:172 #, c-format msgid " %s [OPTION]... DBNAME\n" msgstr " %s [OPTION]... ІМ'Я_БД\n" -#: dropdb.c:176 +#: dropdb.c:175 #, c-format msgid " -f, --force try to terminate other connections before dropping\n" msgstr " -f, --force спробувати завершити інші підключення перед видаленням\n" -#: dropdb.c:177 +#: dropdb.c:176 #, c-format msgid " -i, --interactive prompt before deleting anything\n" msgstr " -i, --interactive запитувати перед видаленням чого-небудь\n" -#: dropdb.c:179 +#: dropdb.c:178 #, c-format msgid " --if-exists don't report error if database doesn't exist\n" msgstr " --if-exists не повідомляти про помилку, якщо бази даних не існує\n" @@ -773,29 +773,29 @@ msgstr "немає запитаного аргументу: імені ролі" msgid "Role \"%s\" will be permanently removed.\n" msgstr "Роль \"%s\" буде назавжди видалена.\n" -#: dropuser.c:154 +#: dropuser.c:155 #, c-format msgid "removal of role \"%s\" failed: %s" msgstr "помилка при видаленні ролі \"%s\": %s" -#: dropuser.c:169 +#: dropuser.c:170 #, c-format msgid "%s removes a PostgreSQL role.\n\n" msgstr "%s видаляє роль PostgreSQL.\n\n" -#: dropuser.c:174 +#: dropuser.c:175 #, c-format msgid " -i, --interactive prompt before deleting anything, and prompt for\n" " role name if not specified\n" msgstr " -i, --interactive запитувати перед видаленням чого-небудь і запитувати\n" " ім'я ролі, якщо не вказано\n" -#: dropuser.c:177 +#: dropuser.c:178 #, c-format msgid " --if-exists don't report error if user doesn't exist\n" msgstr " --if-exists не повідомляти про помилку, якщо користувача не існує\n" -#: dropuser.c:182 +#: dropuser.c:183 #, c-format msgid " -U, --username=USERNAME user name to connect as (not the one to drop)\n" msgstr " -U, --username=USERNAME ім'я користувача для підключення (не для розривання)\n" @@ -880,335 +880,345 @@ msgstr " -t, --timeout=SECS секунд для очікування пр msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=ІМ'Я_КОРИСТУВАЧА ім'я користувача для з'єднання з сервером\n" -#: reindexdb.c:210 +#: reindexdb.c:217 #, c-format msgid "cannot use multiple jobs to reindex system catalogs" msgstr "не можна використовувати декілька завдань для переіндексування системних каталогів" -#: reindexdb.c:215 +#: reindexdb.c:222 #, c-format msgid "cannot reindex all databases and a specific one at the same time" msgstr "неможливо переіндексувати всі бази даних і одну вказану одночасно" -#: reindexdb.c:296 reindexdb.c:303 vacuumdb.c:515 vacuumdb.c:522 vacuumdb.c:529 -#: vacuumdb.c:536 vacuumdb.c:543 vacuumdb.c:550 vacuumdb.c:557 vacuumdb.c:562 -#: vacuumdb.c:566 vacuumdb.c:570 vacuumdb.c:574 +#: reindexdb.c:302 reindexdb.c:309 vacuumdb.c:559 vacuumdb.c:566 vacuumdb.c:573 +#: vacuumdb.c:580 vacuumdb.c:587 vacuumdb.c:594 vacuumdb.c:601 vacuumdb.c:608 +#: vacuumdb.c:615 vacuumdb.c:622 vacuumdb.c:629 vacuumdb.c:636 #, c-format msgid "cannot use the \"%s\" option on server versions older than PostgreSQL %s" msgstr "не можна використовувати параметр \"%s\" на серверній версії старішій за PostgreSQL %s" -#: reindexdb.c:584 +#: reindexdb.c:597 #, c-format msgid "reindexing of database \"%s\" failed: %s" msgstr "переіндексувати базу даних \"%s\" не вдалося: %s" -#: reindexdb.c:588 +#: reindexdb.c:601 #, c-format msgid "reindexing of index \"%s\" in database \"%s\" failed: %s" msgstr "переіндексувати індекси \"%s\" в базі даних \"%s\" не вдалося: %s" -#: reindexdb.c:592 +#: reindexdb.c:605 #, c-format msgid "reindexing of schema \"%s\" in database \"%s\" failed: %s" msgstr "переіндексувати схему \"%s\" в базі даних \"%s\" не вдалося: %s" -#: reindexdb.c:596 +#: reindexdb.c:609 #, c-format msgid "reindexing of system catalogs in database \"%s\" failed: %s" msgstr "переіндексування системних каталогів в базі даних \"%s\" не вдалося: %s" -#: reindexdb.c:600 +#: reindexdb.c:613 #, c-format msgid "reindexing of table \"%s\" in database \"%s\" failed: %s" msgstr "переіндексувати таблиці \"%s\" в базі даних \"%s\" не вдалося: %s" -#: reindexdb.c:824 +#: reindexdb.c:854 #, c-format msgid "%s: reindexing database \"%s\"\n" msgstr "%s: переіндексування бази даних \"%s\"\n" -#: reindexdb.c:867 +#: reindexdb.c:897 #, c-format msgid "%s reindexes a PostgreSQL database.\n\n" msgstr "%s переіндексовує базу даних PostgreSQL.\n\n" -#: reindexdb.c:871 +#: reindexdb.c:901 #, c-format msgid " -a, --all reindex all databases\n" msgstr " -a, --all переіндексувати всі бази даних\n" -#: reindexdb.c:872 +#: reindexdb.c:902 #, c-format msgid " --concurrently reindex concurrently\n" msgstr " --concurrently переіндексувати одночасно\n" -#: reindexdb.c:873 +#: reindexdb.c:903 #, c-format msgid " -d, --dbname=DBNAME database to reindex\n" msgstr " -d, --dbname=DBNAME база даних для переіндексування\n" -#: reindexdb.c:875 +#: reindexdb.c:905 #, c-format msgid " -i, --index=INDEX recreate specific index(es) only\n" msgstr " -i, --index=INDEX повторно створити лише вказані індекси\n" -#: reindexdb.c:876 +#: reindexdb.c:906 #, c-format msgid " -j, --jobs=NUM use this many concurrent connections to reindex\n" msgstr " -j, --jobs=NUM використати цю кількість паралельних підключень для переіндексування\n" -#: reindexdb.c:877 +#: reindexdb.c:907 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet не писати жодних повідомлень\n" -#: reindexdb.c:878 +#: reindexdb.c:908 #, c-format msgid " -s, --system reindex system catalogs only\n" msgstr " -s, --system переіндексувати тільки системні каталоги\n" -#: reindexdb.c:879 +#: reindexdb.c:909 #, c-format msgid " -S, --schema=SCHEMA reindex specific schema(s) only\n" msgstr " -S, --schema=SCHEMA переіндексувати лише вказані схеми\n" -#: reindexdb.c:880 +#: reindexdb.c:910 #, c-format msgid " -t, --table=TABLE reindex specific table(s) only\n" msgstr " -t, --table=TABLE переіндексувати лише вказані таблиці\n" -#: reindexdb.c:881 +#: reindexdb.c:911 #, c-format msgid " --tablespace=TABLESPACE tablespace where indexes are rebuilt\n" msgstr " --tablespace=TABLESPACE табличний простір для перебудованих індексів\n" -#: reindexdb.c:882 +#: reindexdb.c:912 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose виводити багато повідомлень\n" -#: reindexdb.c:892 +#: reindexdb.c:922 #, c-format msgid "\n" "Read the description of the SQL command REINDEX for details.\n" msgstr "\n" "Для деталей читайте опис команди SQL REINDEX.\n" -#: vacuumdb.c:313 vacuumdb.c:316 vacuumdb.c:319 vacuumdb.c:322 vacuumdb.c:325 -#: vacuumdb.c:328 vacuumdb.c:331 vacuumdb.c:334 vacuumdb.c:343 +#: vacuumdb.c:325 vacuumdb.c:328 vacuumdb.c:331 vacuumdb.c:334 vacuumdb.c:337 +#: vacuumdb.c:340 vacuumdb.c:343 vacuumdb.c:346 vacuumdb.c:355 #, c-format msgid "cannot use the \"%s\" option when performing only analyze" msgstr "не можна використовувати параметр \"%s\" під час виконання лише аналіза" -#: vacuumdb.c:346 +#: vacuumdb.c:358 #, c-format msgid "cannot use the \"%s\" option when performing full vacuum" msgstr "не можна використовувати параметр \"%s\" під час виконання VACUUM FULL" -#: vacuumdb.c:352 vacuumdb.c:360 +#: vacuumdb.c:364 vacuumdb.c:372 #, c-format msgid "cannot use the \"%s\" option with the \"%s\" option" msgstr "використовувати параметр \"%s\" з параметром \"%s\" не можна" -#: vacuumdb.c:432 +#: vacuumdb.c:380 +#, c-format +msgid "cannot use the \"%s\" option without \"%s\" or \"%s\"" +msgstr "не можна використовувати параметр \"%s\" без \"%s\" або \"%s\"" + +#: vacuumdb.c:454 #, c-format msgid "cannot vacuum all databases and a specific one at the same time" msgstr "неможливо очистити всі бази даних і одну вказану одночасно" -#: vacuumdb.c:436 +#: vacuumdb.c:458 #, c-format msgid "cannot vacuum all tables in schema(s) and specific table(s) at the same time" msgstr "неможливо очистити всі таблиці в схемах та вказані таблиці одночасно" -#: vacuumdb.c:440 +#: vacuumdb.c:462 #, c-format msgid "cannot vacuum specific table(s) and exclude schema(s) at the same time" msgstr "неможливо очистити вказані таблиці і виключити схеми одночасно" -#: vacuumdb.c:444 +#: vacuumdb.c:466 #, c-format msgid "cannot vacuum all tables in schema(s) and exclude schema(s) at the same time" msgstr "неможливо очистити всі таблиці в схемах та виключити схеми одночасно" -#: vacuumdb.c:457 +#: vacuumdb.c:479 #, c-format msgid "out of memory" msgstr "недостатньо пам'яті" -#: vacuumdb.c:502 +#: vacuumdb.c:546 msgid "Generating minimal optimizer statistics (1 target)" msgstr "Генерування мінімальної статистики для оптімизатора (1 мета)" -#: vacuumdb.c:503 +#: vacuumdb.c:547 msgid "Generating medium optimizer statistics (10 targets)" msgstr "Генерування середньої статистики для оптимізатора (10 цілей)" -#: vacuumdb.c:504 +#: vacuumdb.c:548 msgid "Generating default (full) optimizer statistics" msgstr "Генерування статистики для оптимізатора за замовчуванням (повністю)" -#: vacuumdb.c:583 +#: vacuumdb.c:646 #, c-format msgid "%s: processing database \"%s\": %s\n" msgstr "%s: обробка бази даних \"%s\": %s\n" -#: vacuumdb.c:586 +#: vacuumdb.c:649 #, c-format msgid "%s: vacuuming database \"%s\"\n" msgstr "%s: очищення бази даних \"%s\"\n" -#: vacuumdb.c:1135 +#: vacuumdb.c:1325 #, c-format msgid "vacuuming of table \"%s\" in database \"%s\" failed: %s" msgstr "очистити таблиці \"%s\" в базі даних \"%s\" не вдалося: %s" -#: vacuumdb.c:1138 +#: vacuumdb.c:1328 #, c-format msgid "vacuuming of database \"%s\" failed: %s" msgstr "очистити базу даних \"%s\" не вдалося: %s" -#: vacuumdb.c:1146 +#: vacuumdb.c:1336 #, c-format msgid "%s cleans and analyzes a PostgreSQL database.\n\n" msgstr "%s очищує й аналізує базу даних PostgreSQL.\n\n" -#: vacuumdb.c:1150 +#: vacuumdb.c:1340 #, c-format msgid " -a, --all vacuum all databases\n" msgstr " -a, --all очистити усі бази даних\n" -#: vacuumdb.c:1151 +#: vacuumdb.c:1341 #, c-format msgid " --buffer-usage-limit=SIZE size of ring buffer used for vacuum\n" msgstr " --buffer-usage-limit=SIZE розмір кільцевого буферу для очистки\n" -#: vacuumdb.c:1152 +#: vacuumdb.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to vacuum\n" msgstr " -d, --dbname=ІМ'Я_БД база даних для очищення\n" -#: vacuumdb.c:1153 +#: vacuumdb.c:1343 #, c-format msgid " --disable-page-skipping disable all page-skipping behavior\n" msgstr " --disable-page-skipping відключити пропуск сторінок\n" -#: vacuumdb.c:1154 +#: vacuumdb.c:1344 #, c-format msgid " -e, --echo show the commands being sent to the server\n" msgstr " -e, --echo показати команди, надіслані серверу\n" -#: vacuumdb.c:1155 +#: vacuumdb.c:1345 #, c-format msgid " -f, --full do full vacuuming\n" msgstr " -f, --full зробити повне очищення\n" -#: vacuumdb.c:1156 +#: vacuumdb.c:1346 #, c-format msgid " -F, --freeze freeze row transaction information\n" msgstr " -F, --freeze заморозити інформацію щодо транзакцій в рядках\n" -#: vacuumdb.c:1157 +#: vacuumdb.c:1347 #, c-format msgid " --force-index-cleanup always remove index entries that point to dead tuples\n" msgstr " --force-index-cleanup завжди видаляти записи індексів, які вказують на мертві кортежі\n" -#: vacuumdb.c:1158 +#: vacuumdb.c:1348 #, c-format msgid " -j, --jobs=NUM use this many concurrent connections to vacuum\n" msgstr " -j, --jobs=ЧИСЛО використати ці паралельні підключення для очищення\n" -#: vacuumdb.c:1159 +#: vacuumdb.c:1349 #, c-format msgid " --min-mxid-age=MXID_AGE minimum multixact ID age of tables to vacuum\n" msgstr " --min-mxid-age=MXID_AGE мінімальний ID ери мультитранзакції таблиць для вакууму\n" -#: vacuumdb.c:1160 +#: vacuumdb.c:1350 #, c-format msgid " --min-xid-age=XID_AGE minimum transaction ID age of tables to vacuum\n" msgstr " --min-mxid-age=MXID_AGE мінімальний ID ери транзакції таблиць для вакууму\n" -#: vacuumdb.c:1161 +#: vacuumdb.c:1351 +#, c-format +msgid " --missing-stats-only only analyze relations with missing statistics\n" +msgstr " --missing-stats-only аналізувати лише відношення з відсутніми статистиками\n" + +#: vacuumdb.c:1352 #, c-format msgid " --no-index-cleanup don't remove index entries that point to dead tuples\n" msgstr " --no-index-cleanup не видаляти записи індексів, які вказують на мертві кортежі\n" -#: vacuumdb.c:1162 +#: vacuumdb.c:1353 #, c-format msgid " --no-process-main skip the main relation\n" msgstr " --no-process-main пропустити головне відношення\n" -#: vacuumdb.c:1163 +#: vacuumdb.c:1354 #, c-format msgid " --no-process-toast skip the TOAST table associated with the table to vacuum\n" msgstr " --no-process-toast пропускати таблицю TOAST, пов'язану з таблицею для очищення\n" -#: vacuumdb.c:1164 +#: vacuumdb.c:1355 #, c-format msgid " --no-truncate don't truncate empty pages at the end of the table\n" msgstr " --no-truncate не скорочувати пусті сторінки наприкінці таблиці\n" -#: vacuumdb.c:1165 +#: vacuumdb.c:1356 #, c-format msgid " -n, --schema=SCHEMA vacuum tables in the specified schema(s) only\n" msgstr " -n, --schema=SCHEMA очистити тільки таблиці у вказаних схемах\n" -#: vacuumdb.c:1166 +#: vacuumdb.c:1357 #, c-format msgid " -N, --exclude-schema=SCHEMA do not vacuum tables in the specified schema(s)\n" msgstr " -N, --exclude-schema=SCHEMA не очищати таблиці у вказаних схемах\n" -#: vacuumdb.c:1167 +#: vacuumdb.c:1358 #, c-format msgid " -P, --parallel=PARALLEL_WORKERS use this many background workers for vacuum, if available\n" msgstr " -P, --parallel=PARALLEL_WORKERS використати таку кількість фонових робітників для очищення, якщо вони доступні\n" -#: vacuumdb.c:1168 +#: vacuumdb.c:1359 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet не писати жодних повідомлень\n" -#: vacuumdb.c:1169 +#: vacuumdb.c:1360 #, c-format msgid " --skip-locked skip relations that cannot be immediately locked\n" msgstr " --skip-locked пропустити відношення, що не можуть бути заблоковані негайно\n" -#: vacuumdb.c:1170 +#: vacuumdb.c:1361 #, c-format msgid " -t, --table='TABLE[(COLUMNS)]' vacuum specific table(s) only\n" msgstr " -t, --table='ТАБЛИЦЯ[(СТОВПЦІ)]' очистити тільки вказані таблиці\n" -#: vacuumdb.c:1171 +#: vacuumdb.c:1362 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose виводити багато інформації\n" -#: vacuumdb.c:1172 +#: vacuumdb.c:1363 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version вивести інформацію про версію і вийти\n" -#: vacuumdb.c:1173 +#: vacuumdb.c:1364 #, c-format msgid " -z, --analyze update optimizer statistics\n" msgstr " -z, --analyze оновити статистику для оптимізатора\n" -#: vacuumdb.c:1174 +#: vacuumdb.c:1365 #, c-format msgid " -Z, --analyze-only only update optimizer statistics; no vacuum\n" msgstr " -Z, --analyze-only оновити лише статистику для оптимізатора, не очищати\n" -#: vacuumdb.c:1175 +#: vacuumdb.c:1366 #, c-format msgid " --analyze-in-stages only update optimizer statistics, in multiple\n" " stages for faster results; no vacuum\n" msgstr " --analyze-in-stages оновити лише статистику для оптимізатора, у декілька стадій для швидших результатів, не очищати\n" -#: vacuumdb.c:1177 +#: vacuumdb.c:1368 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю справку, потім вийти\n" -#: vacuumdb.c:1185 +#: vacuumdb.c:1376 #, c-format msgid "\n" "Read the description of the SQL command VACUUM for details.\n" diff --git a/src/common/wchar.c b/src/common/wchar.c index a4bc29921de..4bc5afb85df 100644 --- a/src/common/wchar.c +++ b/src/common/wchar.c @@ -63,6 +63,9 @@ * subset to the ASCII routines to ensure consistency. */ +/* No error-reporting facility. Ignore incomplete trailing byte sequence. */ +#define MB2CHAR_NEED_AT_LEAST(len, need) if ((len) < (need)) break + /* * SQL/ASCII */ @@ -108,22 +111,24 @@ pg_euc2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) while (len > 0 && *from) { - if (*from == SS2 && len >= 2) /* JIS X 0201 (so called "1 byte - * KANA") */ + if (*from == SS2) /* JIS X 0201 (so called "1 byte KANA") */ { + MB2CHAR_NEED_AT_LEAST(len, 2); from++; *to = (SS2 << 8) | *from++; len -= 2; } - else if (*from == SS3 && len >= 3) /* JIS X 0212 KANJI */ + else if (*from == SS3) /* JIS X 0212 KANJI */ { + MB2CHAR_NEED_AT_LEAST(len, 3); from++; *to = (SS3 << 16) | (*from++ << 8); *to |= *from++; len -= 3; } - else if (IS_HIGHBIT_SET(*from) && len >= 2) /* JIS X 0208 KANJI */ + else if (IS_HIGHBIT_SET(*from)) /* JIS X 0208 KANJI */ { + MB2CHAR_NEED_AT_LEAST(len, 2); *to = *from++ << 8; *to |= *from++; len -= 2; @@ -235,22 +240,25 @@ pg_euccn2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) while (len > 0 && *from) { - if (*from == SS2 && len >= 3) /* code set 2 (unused?) */ + if (*from == SS2) /* code set 2 (unused?) */ { + MB2CHAR_NEED_AT_LEAST(len, 3); from++; *to = (SS2 << 16) | (*from++ << 8); *to |= *from++; len -= 3; } - else if (*from == SS3 && len >= 3) /* code set 3 (unused ?) */ + else if (*from == SS3) /* code set 3 (unused ?) */ { + MB2CHAR_NEED_AT_LEAST(len, 3); from++; *to = (SS3 << 16) | (*from++ << 8); *to |= *from++; len -= 3; } - else if (IS_HIGHBIT_SET(*from) && len >= 2) /* code set 1 */ + else if (IS_HIGHBIT_SET(*from)) /* code set 1 */ { + MB2CHAR_NEED_AT_LEAST(len, 2); *to = *from++ << 8; *to |= *from++; len -= 2; @@ -267,12 +275,22 @@ pg_euccn2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) return cnt; } +/* + * mbverifychar does not accept SS2 or SS3 (CS2 and CS3 are not defined for + * EUC_CN), but mb2wchar_with_len does. Tell a coherent story for code that + * relies on agreement between mb2wchar_with_len and mblen. Invalid text + * datums (e.g. from shared catalogs) reach this. + */ static int pg_euccn_mblen(const unsigned char *s) { int len; - if (IS_HIGHBIT_SET(*s)) + if (*s == SS2) + len = 3; + else if (*s == SS3) + len = 3; + else if (IS_HIGHBIT_SET(*s)) len = 2; else len = 1; @@ -302,23 +320,26 @@ pg_euctw2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) while (len > 0 && *from) { - if (*from == SS2 && len >= 4) /* code set 2 */ + if (*from == SS2) /* code set 2 */ { + MB2CHAR_NEED_AT_LEAST(len, 4); from++; *to = (((uint32) SS2) << 24) | (*from++ << 16); *to |= *from++ << 8; *to |= *from++; len -= 4; } - else if (*from == SS3 && len >= 3) /* code set 3 (unused?) */ + else if (*from == SS3) /* code set 3 (unused?) */ { + MB2CHAR_NEED_AT_LEAST(len, 3); from++; *to = (SS3 << 16) | (*from++ << 8); *to |= *from++; len -= 3; } - else if (IS_HIGHBIT_SET(*from) && len >= 2) /* code set 2 */ + else if (IS_HIGHBIT_SET(*from)) /* code set 2 */ { + MB2CHAR_NEED_AT_LEAST(len, 2); *to = *from++ << 8; *to |= *from++; len -= 2; @@ -455,8 +476,7 @@ pg_utf2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) } else if ((*from & 0xe0) == 0xc0) { - if (len < 2) - break; /* drop trailing incomplete char */ + MB2CHAR_NEED_AT_LEAST(len, 2); c1 = *from++ & 0x1f; c2 = *from++ & 0x3f; *to = (c1 << 6) | c2; @@ -464,8 +484,7 @@ pg_utf2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) } else if ((*from & 0xf0) == 0xe0) { - if (len < 3) - break; /* drop trailing incomplete char */ + MB2CHAR_NEED_AT_LEAST(len, 3); c1 = *from++ & 0x0f; c2 = *from++ & 0x3f; c3 = *from++ & 0x3f; @@ -474,8 +493,7 @@ pg_utf2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) } else if ((*from & 0xf8) == 0xf0) { - if (len < 4) - break; /* drop trailing incomplete char */ + MB2CHAR_NEED_AT_LEAST(len, 4); c1 = *from++ & 0x07; c2 = *from++ & 0x3f; c3 = *from++ & 0x3f; @@ -677,28 +695,32 @@ pg_mule2wchar_with_len(const unsigned char *from, pg_wchar *to, int len) while (len > 0 && *from) { - if (IS_LC1(*from) && len >= 2) + if (IS_LC1(*from)) { + MB2CHAR_NEED_AT_LEAST(len, 2); *to = *from++ << 16; *to |= *from++; len -= 2; } - else if (IS_LCPRV1(*from) && len >= 3) + else if (IS_LCPRV1(*from)) { + MB2CHAR_NEED_AT_LEAST(len, 3); from++; *to = *from++ << 16; *to |= *from++; len -= 3; } - else if (IS_LC2(*from) && len >= 3) + else if (IS_LC2(*from)) { + MB2CHAR_NEED_AT_LEAST(len, 3); *to = *from++ << 16; *to |= *from++ << 8; *to |= *from++; len -= 3; } - else if (IS_LCPRV2(*from) && len >= 4) + else if (IS_LCPRV2(*from)) { + MB2CHAR_NEED_AT_LEAST(len, 4); from++; *to = *from++ << 16; *to |= *from++ << 8; @@ -2064,7 +2086,7 @@ pg_encoding_set_invalid(int encoding, char *dst) const pg_wchar_tbl pg_wchar_table[] = { [PG_SQL_ASCII] = {pg_ascii2wchar_with_len, pg_wchar2single_with_len, pg_ascii_mblen, pg_ascii_dsplen, pg_ascii_verifychar, pg_ascii_verifystr, 1}, [PG_EUC_JP] = {pg_eucjp2wchar_with_len, pg_wchar2euc_with_len, pg_eucjp_mblen, pg_eucjp_dsplen, pg_eucjp_verifychar, pg_eucjp_verifystr, 3}, - [PG_EUC_CN] = {pg_euccn2wchar_with_len, pg_wchar2euc_with_len, pg_euccn_mblen, pg_euccn_dsplen, pg_euccn_verifychar, pg_euccn_verifystr, 2}, + [PG_EUC_CN] = {pg_euccn2wchar_with_len, pg_wchar2euc_with_len, pg_euccn_mblen, pg_euccn_dsplen, pg_euccn_verifychar, pg_euccn_verifystr, 3}, [PG_EUC_KR] = {pg_euckr2wchar_with_len, pg_wchar2euc_with_len, pg_euckr_mblen, pg_euckr_dsplen, pg_euckr_verifychar, pg_euckr_verifystr, 3}, [PG_EUC_TW] = {pg_euctw2wchar_with_len, pg_wchar2euc_with_len, pg_euctw_mblen, pg_euctw_dsplen, pg_euctw_verifychar, pg_euctw_verifystr, 4}, [PG_EUC_JIS_2004] = {pg_eucjp2wchar_with_len, pg_wchar2euc_with_len, pg_eucjp_mblen, pg_eucjp_dsplen, pg_eucjp_verifychar, pg_eucjp_verifystr, 3}, diff --git a/src/include/Makefile b/src/include/Makefile index 3f94543f327..62e222ceb20 100644 --- a/src/include/Makefile +++ b/src/include/Makefile @@ -73,6 +73,7 @@ uninstall: clean: rm -f utils/fmgroids.h utils/fmgrprotos.h utils/errcodes.h utils/header-stamp + rm -f utils/pgstat_wait_event.c utils/wait_event_funcs_data.c rm -f storage/lwlocknames.h utils/probes.h utils/wait_event_types.h rm -f nodes/nodetags.h nodes/header-stamp $(MAKE) -C catalog clean diff --git a/src/include/access/xlog.h b/src/include/access/xlog.h index 597570c6bf4..3bcd20d0e9c 100644 --- a/src/include/access/xlog.h +++ b/src/include/access/xlog.h @@ -233,6 +233,7 @@ extern XLogSegNo XLogGetLastRemovedSegno(void); extern XLogSegNo XLogGetOldestSegno(TimeLineID tli); extern void XLogSetAsyncXactLSN(XLogRecPtr asyncXactLSN); extern void XLogSetReplicationSlotMinimumLSN(XLogRecPtr lsn); +extern XLogRecPtr XLogGetReplicationSlotMinimumLSN(void); extern void xlog_redo(struct XLogReaderState *record); extern void xlog_desc(StringInfo buf, struct XLogReaderState *record); diff --git a/src/include/catalog/dependency.h b/src/include/catalog/dependency.h index 0ea7ccf5243..4b9fcec0e5d 100644 --- a/src/include/catalog/dependency.h +++ b/src/include/catalog/dependency.h @@ -175,6 +175,8 @@ extern long changeDependenciesOn(Oid refClassId, Oid oldRefObjectId, extern Oid getExtensionOfObject(Oid classId, Oid objectId); extern List *getAutoExtensionsOfObject(Oid classId, Oid objectId); +extern Oid getExtensionType(Oid extensionOid, const char *typname); + extern bool sequenceIsOwned(Oid seqId, char deptype, Oid *tableId, int32 *colId); extern List *getOwnedSequences(Oid relid); extern Oid getIdentitySequence(Relation rel, AttrNumber attnum, bool missing_ok); diff --git a/src/include/catalog/pg_constraint.h b/src/include/catalog/pg_constraint.h index 4afceb5c692..3a03b8d801a 100644 --- a/src/include/catalog/pg_constraint.h +++ b/src/include/catalog/pg_constraint.h @@ -263,7 +263,7 @@ extern HeapTuple findNotNullConstraintAttnum(Oid relid, AttrNumber attnum); extern HeapTuple findNotNullConstraint(Oid relid, const char *colname); extern HeapTuple findDomainNotNullConstraint(Oid typid); extern AttrNumber extractNotNullColumn(HeapTuple constrTup); -extern bool AdjustNotNullInheritance(Oid relid, AttrNumber attnum, +extern bool AdjustNotNullInheritance(Oid relid, AttrNumber attnum, const char *new_conname, bool is_local, bool is_no_inherit, bool is_notvalid); extern List *RelationGetNotNullConstraints(Oid relid, bool cooked, bool include_noinh); diff --git a/src/include/commands/async.h b/src/include/commands/async.h index f75c3df9556..aaec7314c10 100644 --- a/src/include/commands/async.h +++ b/src/include/commands/async.h @@ -46,4 +46,7 @@ extern void HandleNotifyInterrupt(void); /* process interrupts */ extern void ProcessNotifyInterrupt(bool flush); +/* freeze old transaction IDs in notify queue (called by VACUUM) */ +extern void AsyncNotifyFreezeXids(TransactionId newFrozenXid); + #endif /* ASYNC_H */ diff --git a/src/include/commands/extension.h b/src/include/commands/extension.h index 24419bfb5c9..6525f443c79 100644 --- a/src/include/commands/extension.h +++ b/src/include/commands/extension.h @@ -52,6 +52,8 @@ extern char *get_extension_name(Oid ext_oid); extern Oid get_extension_schema(Oid ext_oid); extern bool extension_file_exists(const char *extensionName); +extern Oid get_function_sibling_type(Oid funcoid, const char *typname); + extern ObjectAddress AlterExtensionNamespace(const char *extensionName, const char *newschema, Oid *oldschema); diff --git a/src/include/commands/trigger.h b/src/include/commands/trigger.h index cfd7daa20ed..54be07c9e42 100644 --- a/src/include/commands/trigger.h +++ b/src/include/commands/trigger.h @@ -78,7 +78,9 @@ typedef struct TransitionCaptureState /* * Private data including the tuplestore(s) into which to insert tuples. */ - struct AfterTriggersTableData *tcs_private; + struct AfterTriggersTableData *tcs_insert_private; + struct AfterTriggersTableData *tcs_update_private; + struct AfterTriggersTableData *tcs_delete_private; } TransitionCaptureState; /* diff --git a/src/include/mb/pg_wchar.h b/src/include/mb/pg_wchar.h index 4b4a9974b75..95744830555 100644 --- a/src/include/mb/pg_wchar.h +++ b/src/include/mb/pg_wchar.h @@ -697,7 +697,14 @@ extern int pg_char_and_wchar_strcmp(const char *s1, const pg_wchar *s2); extern int pg_wchar_strncmp(const pg_wchar *s1, const pg_wchar *s2, size_t n); extern int pg_char_and_wchar_strncmp(const char *s1, const pg_wchar *s2, size_t n); extern size_t pg_wchar_strlen(const pg_wchar *str); +extern int pg_mblen_cstr(const char *mbstr); +extern int pg_mblen_range(const char *mbstr, const char *end); +extern int pg_mblen_with_len(const char *mbstr, int limit); +extern int pg_mblen_unbounded(const char *mbstr); + +/* deprecated */ extern int pg_mblen(const char *mbstr); + extern int pg_dsplen(const char *mbstr); extern int pg_mbstrlen(const char *mbstr); extern int pg_mbstrlen_with_len(const char *mbstr, int limit); diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h index ba12678d1cb..161b09fd04b 100644 --- a/src/include/nodes/parsenodes.h +++ b/src/include/nodes/parsenodes.h @@ -1265,7 +1265,7 @@ typedef struct RangeTblEntry * Fields valid for a GROUP RTE (else NIL): */ /* list of grouping expressions */ - List *groupexprs pg_node_attr(query_jumble_ignore); + List *groupexprs; /* * Fields valid in all RTEs: diff --git a/src/include/nodes/pathnodes.h b/src/include/nodes/pathnodes.h index 6567759595d..6eef1450e04 100644 --- a/src/include/nodes/pathnodes.h +++ b/src/include/nodes/pathnodes.h @@ -1099,9 +1099,10 @@ typedef struct RelOptInfo * IndexOptInfo * Per-index information for planning/optimization * - * indexkeys[], indexcollations[] each have ncolumns entries. - * opfamily[], and opcintype[] each have nkeycolumns entries. They do - * not contain any information about included attributes. + * indexkeys[] and canreturn[] each have ncolumns entries. + * + * indexcollations[], opfamily[], and opcintype[] each have nkeycolumns + * entries. These don't contain any information about INCLUDE columns. * * sortopfamily[], reverse_sort[], and nulls_first[] have * nkeycolumns entries, if the index is ordered; but if it is unordered, diff --git a/src/include/optimizer/paths.h b/src/include/optimizer/paths.h index 8410531f2d6..70380276c84 100644 --- a/src/include/optimizer/paths.h +++ b/src/include/optimizer/paths.h @@ -80,6 +80,7 @@ extern bool indexcol_is_bool_constant_for_query(PlannerInfo *root, int indexcol); extern bool match_index_to_operand(Node *operand, int indexcol, IndexOptInfo *index); +extern Node *strip_phvs_in_index_operand(Node *operand); extern void check_index_predicates(PlannerInfo *root, RelOptInfo *rel); /* diff --git a/src/include/optimizer/tlist.h b/src/include/optimizer/tlist.h index 9c355bf1179..8d2c1ec08ba 100644 --- a/src/include/optimizer/tlist.h +++ b/src/include/optimizer/tlist.h @@ -48,6 +48,11 @@ extern void apply_pathtarget_labeling_to_tlist(List *tlist, PathTarget *target); extern void split_pathtarget_at_srfs(PlannerInfo *root, PathTarget *target, PathTarget *input_target, List **targets, List **targets_contain_srfs); +extern void split_pathtarget_at_srfs_grouping(PlannerInfo *root, + PathTarget *target, + PathTarget *input_target, + List **targets, + List **targets_contain_srfs); /* Convenience macro to get a PathTarget with valid cost/width fields */ #define create_pathtarget(root, tlist) \ diff --git a/src/include/port.h b/src/include/port.h index 3964d3b1293..caf65cef5c8 100644 --- a/src/include/port.h +++ b/src/include/port.h @@ -338,7 +338,6 @@ extern bool rmtree(const char *path, bool rmtopdir); * open() and fopen() replacements to allow deletion of open files and * passing of other special options. */ -#define O_DIRECT 0x80000000 extern HANDLE pgwin32_open_handle(const char *, int, bool); extern int pgwin32_open(const char *, int,...); extern FILE *pgwin32_fopen(const char *, const char *); diff --git a/src/include/port/win32_port.h b/src/include/port/win32_port.h index ff7028bdc81..14f97815f81 100644 --- a/src/include/port/win32_port.h +++ b/src/include/port/win32_port.h @@ -335,18 +335,15 @@ extern int _pglstat64(const char *name, struct stat *buf); /* * Supplement to . - * This is the same value as _O_NOINHERIT in the MS header file. This is - * to ensure that we don't collide with a future definition. It means - * we cannot use _O_NOINHERIT ourselves. - */ -#define O_DSYNC 0x0080 - -/* - * Our open() replacement does not create inheritable handles, so it is safe to - * ignore O_CLOEXEC. (If we were using Windows' own open(), it might be - * necessary to convert this to _O_NOINHERIT.) + * + * We borrow bits from the high end when we have to, to avoid colliding with + * the system-defined values. Our open() replacement in src/port/open.c + * converts these to the equivalent CreateFile() flags, along with the ones + * from fcntl.h. */ -#define O_CLOEXEC 0 +#define O_CLOEXEC 0x04000000 +#define O_DIRECT 0x80000000 +#define O_DSYNC _O_NOINHERIT /* * Supplement to . diff --git a/src/include/storage/fd.h b/src/include/storage/fd.h index ee6f52879d3..a3762bb30d7 100644 --- a/src/include/storage/fd.h +++ b/src/include/storage/fd.h @@ -55,12 +55,23 @@ typedef int File; #define IO_DIRECT_WAL 0x02 #define IO_DIRECT_WAL_INIT 0x04 +enum FileExtendMethod +{ +#ifdef HAVE_POSIX_FALLOCATE + FILE_EXTEND_METHOD_POSIX_FALLOCATE, +#endif + FILE_EXTEND_METHOD_WRITE_ZEROS, +}; + +/* Default to the first available file_extend_method. */ +#define DEFAULT_FILE_EXTEND_METHOD 0 /* GUC parameter */ extern PGDLLIMPORT int max_files_per_process; extern PGDLLIMPORT bool data_sync_retry; extern PGDLLIMPORT int recovery_init_sync_method; extern PGDLLIMPORT int io_direct_flags; +extern PGDLLIMPORT int file_extend_method; /* * This is private to fd.c, but exported for save/restore_backend_variables() diff --git a/src/include/tsearch/ts_locale.h b/src/include/tsearch/ts_locale.h index c29588d8532..378d9ba7088 100644 --- a/src/include/tsearch/ts_locale.h +++ b/src/include/tsearch/ts_locale.h @@ -37,10 +37,34 @@ typedef struct /* The second argument of t_iseq() must be a plain ASCII character */ #define t_iseq(x,c) (TOUCHAR(x) == (unsigned char) (c)) -#define COPYCHAR(d,s) memcpy(d, s, pg_mblen(s)) +/* Copy multibyte character of known byte length, return byte length. */ +static inline int +ts_copychar_with_len(void *dest, const void *src, int length) +{ + memcpy(dest, src, length); + return length; +} + +/* Copy multibyte character from null-terminated string, return byte length. */ +static inline int +ts_copychar_cstr(void *dest, const void *src) +{ + return ts_copychar_with_len(dest, src, pg_mblen_cstr((const char *) src)); +} + +/* Historical macro for the above. */ +#define COPYCHAR ts_copychar_cstr + +#define GENERATE_T_ISCLASS_DECL(character_class) \ +extern int t_is##character_class##_with_len(const char *ptr, int len); \ +extern int t_is##character_class##_cstr(const char *ptr); \ +extern int t_is##character_class##_unbounded(const char *ptr); \ +\ +/* deprecated */ \ +extern int t_is##character_class(const char *ptr); -extern int t_isalpha(const char *ptr); -extern int t_isalnum(const char *ptr); +GENERATE_T_ISCLASS_DECL(alnum); +GENERATE_T_ISCLASS_DECL(alpha); extern bool tsearch_readline_begin(tsearch_readline_state *stp, const char *filename); diff --git a/src/include/tsearch/ts_utils.h b/src/include/tsearch/ts_utils.h index 7debc85ed80..80ba533882b 100644 --- a/src/include/tsearch/ts_utils.h +++ b/src/include/tsearch/ts_utils.h @@ -40,14 +40,12 @@ extern bool gettoken_tsvector(TSVectorParseState state, extern void close_tsvector_parser(TSVectorParseState state); /* phrase operator begins with '<' */ -#define ISOPERATOR(x) \ - ( pg_mblen(x) == 1 && ( *(x) == '!' || \ - *(x) == '&' || \ - *(x) == '|' || \ - *(x) == '(' || \ - *(x) == ')' || \ - *(x) == '<' \ - ) ) +#define ISOPERATOR(x) (*(x) == '!' || \ + *(x) == '&' || \ + *(x) == '|' || \ + *(x) == '(' || \ + *(x) == ')' || \ + *(x) == '<') /* parse_tsquery */ diff --git a/src/include/utils/.gitignore b/src/include/utils/.gitignore index c1b4c662139..e4ba4ce8dc4 100644 --- a/src/include/utils/.gitignore +++ b/src/include/utils/.gitignore @@ -3,4 +3,6 @@ /probes.h /errcodes.h /header-stamp +/pgstat_wait_event.c +/wait_event_funcs_data.c /wait_event_types.h diff --git a/src/include/utils/builtins.h b/src/include/utils/builtins.h index 1c98c7d2255..64b3f534e9a 100644 --- a/src/include/utils/builtins.h +++ b/src/include/utils/builtins.h @@ -68,6 +68,7 @@ extern char *pg_ultostr(char *str, uint32 value); /* oid.c */ extern oidvector *buildoidvector(const Oid *oids, int n); +extern void check_valid_oidvector(const oidvector *oidArray); extern Oid oidparse(Node *node); extern int oid_cmp(const void *p1, const void *p2); diff --git a/src/include/utils/inval.h b/src/include/utils/inval.h index 9b871caef62..b5fbd754c2c 100644 --- a/src/include/utils/inval.h +++ b/src/include/utils/inval.h @@ -43,8 +43,7 @@ extern void CacheInvalidateHeapTuple(Relation relation, HeapTuple tuple, HeapTuple newtuple); extern void CacheInvalidateHeapTupleInplace(Relation relation, - HeapTuple tuple, - HeapTuple newtuple); + HeapTuple key_equivalent_tuple); extern void CacheInvalidateCatalog(Oid catalogId); diff --git a/src/include/utils/meson.build b/src/include/utils/meson.build index 78c6b9b0a23..c7d2597db5c 100644 --- a/src/include/utils/meson.build +++ b/src/include/utils/meson.build @@ -72,8 +72,6 @@ generated_backend_headers += fmgrtab_target[1] # autoconf generates the file there, ensure we get a conflict generated_sources_ac += { - 'src/backend/utils': fmgrtab_output + ['errcodes.h', 'probes.h', 'fmgr-stamp'], + 'src/backend/utils': fmgrtab_output + ['errcodes.h', 'wait_event_types.h', 'probes.h', 'fmgr-stamp'], 'src/include/utils': ['header-stamp'], } - -generated_sources_ac += {'src/backend/utils/activity': ['wait_event_types.h']} diff --git a/src/include/utils/pg_locale.h b/src/include/utils/pg_locale.h index 953e185f92d..3a758256591 100644 --- a/src/include/utils/pg_locale.h +++ b/src/include/utils/pg_locale.h @@ -24,6 +24,20 @@ /* use for libc locale names */ #define LOCALE_NAME_BUFLEN 128 +/* + * Maximum number of bytes needed to map a single codepoint. Useful for + * mapping and processing a single input codepoint at a time with a + * statically-allocated buffer. + * + * With full case mapping, an input codepoint may be mapped to as many as + * three output codepoints. See Unicode 16.0.0, section 5.18.2, "Change in + * Length": + * + * https://www.unicode.org/versions/Unicode16.0.0/core-spec/chapter-5/#G29675 + */ +#define UNICODE_CASEMAP_LEN 3 +#define UNICODE_CASEMAP_BUFSZ (UNICODE_CASEMAP_LEN * MAX_MULTIBYTE_CHAR_LEN) + /* GUC settings */ extern PGDLLIMPORT char *locale_messages; extern PGDLLIMPORT char *locale_monetary; diff --git a/src/interfaces/ecpg/ecpglib/po/es.po b/src/interfaces/ecpg/ecpglib/po/es.po index a8bead07d89..f6e677d005a 100644 --- a/src/interfaces/ecpg/ecpglib/po/es.po +++ b/src/interfaces/ecpg/ecpglib/po/es.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: ecpglib (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:09+0000\n" +"POT-Creation-Date: 2026-02-06 23:09+0000\n" "PO-Revision-Date: 2024-11-16 14:23+0100\n" "Last-Translator: Emanuel Calvo Franco \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/interfaces/ecpg/preproc/po/es.po b/src/interfaces/ecpg/preproc/po/es.po index a3804271c54..fee381f2ccd 100644 --- a/src/interfaces/ecpg/preproc/po/es.po +++ b/src/interfaces/ecpg/preproc/po/es.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: ecpg (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:10+0000\n" +"POT-Creation-Date: 2026-02-06 23:10+0000\n" "PO-Revision-Date: 2025-09-21 11:11+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/interfaces/ecpg/preproc/po/uk.po b/src/interfaces/ecpg/preproc/po/uk.po index 27ca851c33d..af2879f95f8 100644 --- a/src/interfaces/ecpg/preproc/po/uk.po +++ b/src/interfaces/ecpg/preproc/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-23 10:40+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:10+0000\n" +"PO-Revision-Date: 2026-01-02 14:40\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,138 +14,138 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/ecpg.pot\n" -"X-Crowdin-File-ID: 990\n" +"X-Crowdin-File: /REL_18_STABLE/ecpg.pot\n" +"X-Crowdin-File-ID: 1075\n" -#: descriptor.c:64 +#: descriptor.c:63 #, c-format msgid "variable \"%s\" must have a numeric type" msgstr "змінна \"%s\" повинна мати числовий тип" -#: descriptor.c:124 descriptor.c:155 +#: descriptor.c:119 descriptor.c:149 #, c-format msgid "descriptor %s bound to connection %s does not exist" msgstr "дескриптор %s, прив'язаний до підключення %s, не існує" -#: descriptor.c:126 descriptor.c:157 +#: descriptor.c:121 descriptor.c:151 #, c-format msgid "descriptor %s bound to the default connection does not exist" msgstr "дескриптор %s, прив'язаний до підключення за замовчуванням, не існує" -#: descriptor.c:172 descriptor.c:224 +#: descriptor.c:166 descriptor.c:218 #, c-format msgid "descriptor header item \"%d\" does not exist" msgstr "елемент заголовка дескриптору \"%d\" не існує" -#: descriptor.c:194 +#: descriptor.c:188 #, c-format msgid "nullable is always 1" msgstr "nullable завжди 1" -#: descriptor.c:197 +#: descriptor.c:191 #, c-format msgid "key_member is always 0" msgstr "key_member завжди 0" -#: descriptor.c:291 +#: descriptor.c:285 #, c-format msgid "descriptor item \"%s\" is not implemented" msgstr "елемент дескриптору \"%s\" не реалізовано" -#: descriptor.c:301 +#: descriptor.c:295 #, c-format msgid "descriptor item \"%s\" cannot be set" msgstr "елемент дескриптору \"%s\" не можна встановити" -#: ecpg.c:36 +#: ecpg.c:37 #, c-format msgid "%s is the PostgreSQL embedded SQL preprocessor for C programs.\n\n" msgstr "%s - це препроцесор SQL-вставок PostgreSQL для C програм.\n\n" -#: ecpg.c:38 +#: ecpg.c:39 #, c-format msgid "Usage:\n" " %s [OPTION]... FILE...\n\n" msgstr "Використання: \n" " %s [OPTION]... FILE...\n\n" -#: ecpg.c:41 +#: ecpg.c:42 #, c-format msgid "Options:\n" msgstr "Параметри:\n" -#: ecpg.c:42 +#: ecpg.c:43 #, c-format msgid " -c automatically generate C code from embedded SQL code;\n" " this affects EXEC SQL TYPE\n" msgstr " -c автоматично генерувати C-код з вбудованого SQL-коду;\n" " це стосується EXEC SQL TYPE\n" -#: ecpg.c:44 +#: ecpg.c:45 #, c-format msgid " -C MODE set compatibility mode; MODE can be one of\n" " \"INFORMIX\", \"INFORMIX_SE\", \"ORACLE\"\n" msgstr " -C MODE встановити режим сумісності; допустимий режим може бути одним з:\n" " \"INFORMIX\", \"INFORMIX_SE\", \"ORACLE\"\n" -#: ecpg.c:47 +#: ecpg.c:48 #, c-format msgid " -d generate parser debug output\n" msgstr " -d генерувати налагоджувальні повідомлення при аналізі\n" -#: ecpg.c:49 +#: ecpg.c:50 #, c-format msgid " -D SYMBOL define SYMBOL\n" msgstr " -D SYMBOL визначити СИМВОЛ\n" -#: ecpg.c:50 +#: ecpg.c:51 #, c-format msgid " -h parse a header file, this option includes option \"-c\"\n" msgstr " -h аналізувати файл заголовку, цей параметр включає параметр \"-c\"\n" -#: ecpg.c:51 +#: ecpg.c:52 #, c-format msgid " -i parse system include files as well\n" msgstr " -i аналізувати системні файли include\n" -#: ecpg.c:52 +#: ecpg.c:53 #, c-format msgid " -I DIRECTORY search DIRECTORY for include files\n" msgstr " -I DIRECTORY шукати файли для включення у зазначенному каталозі\n" -#: ecpg.c:53 +#: ecpg.c:54 #, c-format msgid " -o OUTFILE write result to OUTFILE\n" msgstr " -o OUTFILE записати результат до OUTFILE\n" -#: ecpg.c:54 +#: ecpg.c:55 #, c-format msgid " -r OPTION specify run-time behavior; OPTION can be:\n" " \"no_indicator\", \"prepare\", \"questionmarks\"\n" msgstr " -r OPTION визначити поведінку під час виконання; допустимий парамтер може бути:\n" " \"no_indicator\", \"prepare\", \"questionmarks\"\n" -#: ecpg.c:56 +#: ecpg.c:57 #, c-format msgid " --regression run in regression testing mode\n" msgstr " --regression запустити в режимі тестування регресії\n" -#: ecpg.c:57 +#: ecpg.c:58 #, c-format msgid " -t turn on autocommit of transactions\n" msgstr " -t увімкнути автопідтвердження транзакцій\n" -#: ecpg.c:58 +#: ecpg.c:59 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показати версію, потім вийти\n" -#: ecpg.c:59 +#: ecpg.c:60 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показати цю довідку, потім вийти\n" -#: ecpg.c:60 +#: ecpg.c:61 #, c-format msgid "\n" "If no output file is specified, the name is formed by adding .c to the\n" @@ -153,14 +153,14 @@ msgid "\n" msgstr "\n" "Якщо файл виводу не вказано, ім'я файла формується додаванням .c до введеного імені файла, після обрізання розширення .pgc, якщо присутнє.\n" -#: ecpg.c:62 +#: ecpg.c:63 #, c-format msgid "\n" "Report bugs to <%s>.\n" msgstr "\n" "Повідомляти про помилки на <%s>.\n" -#: ecpg.c:63 +#: ecpg.c:64 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашня сторінка %s: <%s>\n" @@ -210,7 +210,7 @@ msgstr "%s: не вказано вхідні файли\n" msgid "cursor \"%s\" has been declared but not opened" msgstr "курсор \"%s\" був оголошений, але не відкритий" -#: ecpg.c:504 preproc.y:130 +#: ecpg.c:504 util.c:75 #, c-format msgid "could not remove output file \"%s\"\n" msgstr "не вдалося видалити файл виводу \"%s\"\n" @@ -220,413 +220,418 @@ msgstr "не вдалося видалити файл виводу \"%s\"\n" msgid "unterminated /* comment" msgstr "незавершений коментар /*" -#: pgc.l:559 +#: pgc.l:560 #, c-format msgid "unterminated bit string literal" msgstr "незавершений бітовий рядок" -#: pgc.l:567 +#: pgc.l:570 #, c-format msgid "unterminated hexadecimal string literal" msgstr "незавершений шістнадцятковий рядок" -#: pgc.l:642 +#: pgc.l:644 #, c-format msgid "invalid bit string literal" msgstr "неприпустимий літерал бітового рядка" -#: pgc.l:647 +#: pgc.l:649 #, c-format msgid "invalid hexadecimal string literal" msgstr "неприпустимий шістнадцятковий рядок" -#: pgc.l:665 +#: pgc.l:667 #, c-format msgid "unhandled previous state in xqs\n" msgstr "необроблений попередній стан у xqs\n" -#: pgc.l:691 pgc.l:800 +#: pgc.l:700 pgc.l:820 #, c-format msgid "unterminated quoted string" msgstr "незавершений рядок в лапках" -#: pgc.l:742 +#: pgc.l:753 #, c-format msgid "unterminated dollar-quoted string" msgstr "незавершений рядок з $" -#: pgc.l:760 pgc.l:780 +#: pgc.l:772 pgc.l:793 #, c-format msgid "zero-length delimited identifier" msgstr "пустий ідентифікатор із роздільниками" -#: pgc.l:791 +#: pgc.l:809 #, c-format msgid "unterminated quoted identifier" msgstr "незавершений ідентифікатор в лапках" -#: pgc.l:960 +#: pgc.l:985 +#, c-format +msgid "parameter number too large" +msgstr "номер параметра занадто великий" + +#: pgc.l:990 #, c-format msgid "trailing junk after parameter" msgstr "сміття після параметру" -#: pgc.l:1012 pgc.l:1015 pgc.l:1018 +#: pgc.l:1042 pgc.l:1045 pgc.l:1048 #, c-format msgid "trailing junk after numeric literal" msgstr "сміття після числового літерала" -#: pgc.l:1141 +#: pgc.l:1177 #, c-format msgid "nested /* ... */ comments" msgstr "вкладені /* ... */ коменарі" -#: pgc.l:1240 +#: pgc.l:1279 #, c-format msgid "missing identifier in EXEC SQL UNDEF command" msgstr "відсутній ідентифікатор у команді EXEC SQL UNDEF" -#: pgc.l:1258 pgc.l:1271 pgc.l:1287 pgc.l:1300 +#: pgc.l:1299 pgc.l:1312 pgc.l:1328 pgc.l:1341 #, c-format msgid "too many nested EXEC SQL IFDEF conditions" msgstr "забагато вкладених умов EXEC SQL IFDEF" -#: pgc.l:1316 pgc.l:1327 pgc.l:1342 pgc.l:1364 +#: pgc.l:1357 pgc.l:1368 pgc.l:1384 pgc.l:1406 #, c-format msgid "missing matching \"EXEC SQL IFDEF\" / \"EXEC SQL IFNDEF\"" msgstr "немає відповідного \"EXEC SQL IFDEF\" / \"EXEC SQL IFNDEF\"" -#: pgc.l:1318 pgc.l:1329 pgc.l:1522 +#: pgc.l:1359 pgc.l:1370 pgc.l:1565 #, c-format msgid "missing \"EXEC SQL ENDIF;\"" msgstr "відсутній \"EXEC SQL ENDIF;\"" -#: pgc.l:1344 pgc.l:1366 +#: pgc.l:1386 pgc.l:1408 #, c-format msgid "more than one EXEC SQL ELSE" msgstr "більше ніж один EXEC SQL ELSE" -#: pgc.l:1389 pgc.l:1403 +#: pgc.l:1431 pgc.l:1445 #, c-format msgid "unmatched EXEC SQL ENDIF" msgstr "невідповідний EXEC SQL ENDIF" -#: pgc.l:1464 +#: pgc.l:1507 #, c-format msgid "missing identifier in EXEC SQL IFDEF command" msgstr "відсутній ідентифікатор у команді EXEC SQL IFDEF" -#: pgc.l:1473 +#: pgc.l:1516 #, c-format msgid "missing identifier in EXEC SQL DEFINE command" msgstr "відсутній ідентифікатор у команді EXEC SQL DEFINE" -#: pgc.l:1511 +#: pgc.l:1554 #, c-format msgid "syntax error in EXEC SQL INCLUDE command" msgstr "синтаксична помилка у команді EXEC SQL INCLUDE" -#: pgc.l:1566 +#: pgc.l:1609 #, c-format msgid "internal error: unreachable state; please report this to <%s>" msgstr "внутрішня помилка: недосяжний стан; будь ласка, повідомте про це на <%s>" -#: pgc.l:1718 +#: pgc.l:1766 #, c-format msgid "Error: include path \"%s/%s\" is too long on line %d, skipping\n" msgstr "Помилка: шлях включення \"%s/%s\" занадто довгий у рядку %d, пропускається\n" -#: pgc.l:1741 +#: pgc.l:1793 #, c-format msgid "could not open include file \"%s\" on line %d" msgstr "не вдалося відкрити файл включення \"%s\" у рядку %d" -#: preproc.y:31 +#: preproc.y:28 msgid "syntax error" msgstr "синтаксична помилка" -#: preproc.y:84 -#, c-format -msgid "WARNING: " -msgstr "ПОПЕРЕДЖЕННЯ: " - -#: preproc.y:87 -#, c-format -msgid "ERROR: " -msgstr "ПОМИЛКА: " - -#: preproc.y:514 +#: preproc.y:467 #, c-format msgid "cursor \"%s\" does not exist" msgstr "курсор \"%s\" не існує" -#: preproc.y:543 +#: preproc.y:503 #, c-format msgid "initializer not allowed in type definition" msgstr "ініціалізація заборонена у визначенні типу" -#: preproc.y:545 +#: preproc.y:505 #, c-format msgid "type name \"string\" is reserved in Informix mode" msgstr "ім’я типу \"string\" зарезервовано у режимі Informix" -#: preproc.y:552 preproc.y:19034 +#: preproc.y:512 preproc.y:8818 #, c-format msgid "type \"%s\" is already defined" msgstr "тип \"%s\" вже визначений" -#: preproc.y:577 preproc.y:19669 preproc.y:19991 variable.c:625 +#: preproc.y:539 preproc.y:9532 preproc.y:9877 variable.c:652 #, c-format msgid "multidimensional arrays for simple data types are not supported" msgstr "багатовимірні масиви для простих типів даних не підтримуються" -#: preproc.y:599 +#: preproc.y:562 #, c-format msgid "connection %s is overwritten with %s by DECLARE statement %s" msgstr "підключення %s було перезаписано з %s командою DECLARE %s" -#: preproc.y:1831 +#: preproc.y:932 #, c-format msgid "AT option not allowed in CLOSE DATABASE statement" msgstr "Параметр AT не дозволений в інструкції CLOSE DATABASE" -#: preproc.y:2081 +#: preproc.y:1184 #, c-format msgid "AT option not allowed in CONNECT statement" msgstr "Параметр AT не дозволений в інструкції CONNECT" -#: preproc.y:2121 +#: preproc.y:1221 #, c-format msgid "AT option not allowed in DISCONNECT statement" msgstr "Параметр AT не дозволений в інструкції DISCONNECT" -#: preproc.y:2176 +#: preproc.y:1274 #, c-format msgid "AT option not allowed in SET CONNECTION statement" msgstr "Параметр AT не дозволений в інструкції SET CONNECTION" -#: preproc.y:2198 +#: preproc.y:1292 #, c-format msgid "AT option not allowed in TYPE statement" msgstr "Параметр AT не дозволений в інструкції TYPE" -#: preproc.y:2207 +#: preproc.y:1300 #, c-format msgid "AT option not allowed in VAR statement" msgstr "Параметр AT не дозволений в інструкції VAR" -#: preproc.y:2214 +#: preproc.y:1307 #, c-format msgid "AT option not allowed in WHENEVER statement" msgstr "Параметр AT не дозволений в інструкції WHENEVER" -#: preproc.y:2339 preproc.y:2626 preproc.y:4349 preproc.y:5021 preproc.y:5891 -#: preproc.y:6095 preproc.y:6196 preproc.y:12460 +#: preproc.y:1375 preproc.y:1498 preproc.y:2259 preproc.y:2585 preproc.y:3016 +#: preproc.y:3103 preproc.y:6088 #, c-format msgid "unsupported feature will be passed to server" msgstr "непідтримувана функція буде передана до сервера" -#: preproc.y:2884 +#: preproc.y:1610 #, c-format msgid "SHOW ALL is not implemented" msgstr "SHOW ALL не реалізовано" -#: preproc.y:3596 +#: preproc.y:1895 #, c-format msgid "COPY FROM STDIN is not implemented" msgstr "COPY FROM STDIN не реалізовано" -#: preproc.y:10444 preproc.y:18503 +#: preproc.y:5146 preproc.y:8269 #, c-format msgid "\"database\" cannot be used as cursor name in INFORMIX mode" msgstr "\"database\" не може використовуватись як назва курсора в режимі INFORMIX" -#: preproc.y:10451 preproc.y:18513 +#: preproc.y:5153 preproc.y:8279 #, c-format msgid "using variable \"%s\" in different declare statements is not supported" msgstr "використання змінної \"%s\" у різних інструкціях declare не підтримується" -#: preproc.y:10453 preproc.y:18515 +#: preproc.y:5155 preproc.y:8281 #, c-format msgid "cursor \"%s\" is already defined" msgstr "курсор \"%s\" вже визначено" -#: preproc.y:10927 +#: preproc.y:5402 #, c-format msgid "no longer supported LIMIT #,# syntax passed to server" msgstr "непідтримуваний синтаксис LIMIT #,# передано до сервера" -#: preproc.y:18195 preproc.y:18202 +#: preproc.y:7917 preproc.y:7925 #, c-format msgid "CREATE TABLE AS cannot specify INTO" msgstr "CREATE TABLE AS не може містити INTO" -#: preproc.y:18238 +#: preproc.y:7970 #, c-format msgid "expected \"@\", found \"%s\"" msgstr "очікувалося \"@\", знайдено \"%s\"" -#: preproc.y:18250 +#: preproc.y:7982 #, c-format msgid "only protocols \"tcp\" and \"unix\" and database type \"postgresql\" are supported" msgstr "підтримуються лише протоколи \"tcp\" та \"unix\" і тип бази даних \"postgresql\"" -#: preproc.y:18253 +#: preproc.y:7985 #, c-format msgid "expected \"://\", found \"%s\"" msgstr "очікувалося \"://\", знайдено \"%s\"" -#: preproc.y:18258 +#: preproc.y:7990 #, c-format msgid "Unix-domain sockets only work on \"localhost\" but not on \"%s\"" msgstr "Unix-сокети працюють лише з \"localhost\", але не з \"%s\"" -#: preproc.y:18284 +#: preproc.y:8017 #, c-format msgid "expected \"postgresql\", found \"%s\"" msgstr "очікувалось \"postgresql\", знайдено \"%s\"" -#: preproc.y:18287 +#: preproc.y:8020 #, c-format msgid "invalid connection type: %s" msgstr "неприпустимий тип підключення: %s" -#: preproc.y:18296 +#: preproc.y:8029 #, c-format msgid "expected \"@\" or \"://\", found \"%s\"" msgstr "очікувалось \"@\" або \"://\", знайдено \"%s\"" -#: preproc.y:18371 preproc.y:18389 +#: preproc.y:8127 preproc.y:8145 #, c-format msgid "invalid data type" msgstr "неприпустимий тип даних" -#: preproc.y:18400 preproc.y:18417 +#: preproc.y:8156 preproc.y:8173 #, c-format msgid "incomplete statement" msgstr "неповний оператор" -#: preproc.y:18403 preproc.y:18420 +#: preproc.y:8159 preproc.y:8176 #, c-format msgid "unrecognized token \"%s\"" msgstr "нерозпізнаний токен \"%s\"" -#: preproc.y:18465 +#: preproc.y:8231 #, c-format msgid "name \"%s\" is already declared" msgstr "ім'я \"%s\" вже оголошена" -#: preproc.y:18754 +#: preproc.y:8534 #, c-format msgid "only data types numeric and decimal have precision/scale argument" msgstr "точність/масштаб можна вказати лише для типів даних numeric і decimal" -#: preproc.y:18853 +#: preproc.y:8633 #, c-format msgid "interval specification not allowed here" msgstr "специфікація інтервалу тут не допускається" -#: preproc.y:19009 preproc.y:19061 +#: preproc.y:8789 preproc.y:8847 #, c-format msgid "too many levels in nested structure/union definition" msgstr "занадто багато рівнів у визначенні вкладеної структури/об'єднання" -#: preproc.y:19184 +#: preproc.y:8982 #, c-format msgid "pointers to varchar are not implemented" msgstr "вказівників на varchar не реалізовано" -#: preproc.y:19635 +#: preproc.y:9497 #, c-format msgid "initializer not allowed in EXEC SQL VAR command" msgstr "команда EXEC SQL VAR не допускає ініціалізатор" -#: preproc.y:19949 +#: preproc.y:9820 #, c-format msgid "arrays of indicators are not allowed on input" msgstr "вхідні масиви індикаторів не допускаються" -#: preproc.y:20136 +#: preproc.y:10054 #, c-format msgid "operator not allowed in variable definition" msgstr "у визначенні змінної оператор не допускається" #. translator: %s is typically the translation of "syntax error" -#: preproc.y:20177 +#: preproc.y:10099 #, c-format msgid "%s at or near \"%s\"" msgstr "%s в або поблизу \"%s\"" -#: type.c:18 type.c:30 -#, c-format -msgid "out of memory" -msgstr "недостатньо пам'яті" - -#: type.c:214 type.c:685 +#: type.c:191 type.c:661 #, c-format msgid "unrecognized variable type code %d" msgstr "нерозпізнаний код типу змінної %d" -#: type.c:263 +#: type.c:240 #, c-format msgid "variable \"%s\" is hidden by a local variable of a different type" msgstr "змінна \"%s\" прихована локальною змінною іншого типу" -#: type.c:265 +#: type.c:242 #, c-format msgid "variable \"%s\" is hidden by a local variable" msgstr "змінна \"%s\" прихована локальною змінною" -#: type.c:277 +#: type.c:254 #, c-format msgid "indicator variable \"%s\" is hidden by a local variable of a different type" msgstr "змінна-індикатор \"%s\" прихована локальною змінною іншого типу" -#: type.c:279 +#: type.c:256 #, c-format msgid "indicator variable \"%s\" is hidden by a local variable" msgstr "змінна-індикатор \"%s\" прихована локальною змінною" -#: type.c:287 +#: type.c:264 #, c-format msgid "indicator for array/pointer has to be array/pointer" msgstr "індикатор для масиву/вказівника повинен бути масивом/вказівником" -#: type.c:291 +#: type.c:268 #, c-format msgid "nested arrays are not supported (except strings)" msgstr "вкладені масиви не підтримуються (окрім рядків)" -#: type.c:333 +#: type.c:310 #, c-format msgid "indicator for struct has to be a struct" msgstr "індикатор структури повинен бути структурою" -#: type.c:353 type.c:374 type.c:394 +#: type.c:330 type.c:351 type.c:371 #, c-format msgid "indicator for simple data type has to be simple" msgstr "індикатор для простого типу даних повинен бути простим" -#: type.c:625 +#: type.c:602 #, c-format msgid "indicator struct \"%s\" has too few members" msgstr "індикатор структури \"%s\" має занадто мало елементів" -#: type.c:633 +#: type.c:610 #, c-format msgid "indicator struct \"%s\" has too many members" msgstr "індикатор структури \"%s\" має занадто багато елементів" -#: type.c:744 +#: type.c:723 #, c-format msgid "unrecognized descriptor item code %d" msgstr "нерозпізнаний код елементу дескриптора %d" +#: util.c:26 +#, c-format +msgid "WARNING: " +msgstr "ПОПЕРЕДЖЕННЯ: " + +#: util.c:29 +#, c-format +msgid "ERROR: " +msgstr "ПОМИЛКА: " + +#: util.c:90 util.c:102 +#, c-format +msgid "out of memory" +msgstr "недостатньо пам'яті" + #: variable.c:89 variable.c:115 #, c-format msgid "incorrectly formed variable \"%s\"" msgstr "неправильно створена змінна \"%s\"" -#: variable.c:138 +#: variable.c:138 variable.c:237 #, c-format msgid "variable \"%s\" is not a pointer" msgstr "змінна \"%s\" не є вказівником" @@ -646,27 +651,32 @@ msgstr "змінна \"%s\" не є структурою або об'єднан msgid "variable \"%s\" is not an array" msgstr "змінна \"%s\" не є масивом" -#: variable.c:232 variable.c:254 +#: variable.c:220 +#, c-format +msgid "unmatched bracket in variable \"%s\"" +msgstr "незіставлена дужка у змінній \"%s\"" + +#: variable.c:235 variable.c:258 #, c-format msgid "variable \"%s\" is not declared" msgstr "змінна \"%s\" не проголошена" -#: variable.c:493 +#: variable.c:517 #, c-format msgid "indicator variable must have an integer type" msgstr "змінна-індикатор повинна бути цілим числом" -#: variable.c:510 +#: variable.c:534 #, c-format msgid "unrecognized data type name \"%s\"" msgstr "нерозпізнане ім'я типу даних \"%s\"" -#: variable.c:521 variable.c:529 variable.c:546 variable.c:549 +#: variable.c:548 variable.c:556 variable.c:573 variable.c:576 #, c-format msgid "multidimensional arrays are not supported" msgstr "багатовимірні масиви не підтримуються" -#: variable.c:538 +#: variable.c:565 #, c-format msgid "multilevel pointers (more than 2 levels) are not supported; found %d level" msgid_plural "multilevel pointers (more than 2 levels) are not supported; found %d levels" @@ -675,12 +685,12 @@ msgstr[1] "багаторівневі вказівники (більше 2 рі msgstr[2] "багаторівневі вказівники (більше 2 рівнів) не підтримуються; знайдено %d рівнів" msgstr[3] "багаторівневі вказівники (більше 2 рівнів) не підтримуються; знайдено %d рівень" -#: variable.c:543 +#: variable.c:570 #, c-format msgid "pointer to pointer is not supported for this data type" msgstr "для цього типу даних вказівники на вказівники не підтримуються" -#: variable.c:563 +#: variable.c:590 #, c-format msgid "multidimensional arrays for structures are not supported" msgstr "багатовимірні масиви структур не підтримуються" diff --git a/src/interfaces/libpq-oauth/meson.build b/src/interfaces/libpq-oauth/meson.build index df064c59a40..4f006e2c381 100644 --- a/src/interfaces/libpq-oauth/meson.build +++ b/src/interfaces/libpq-oauth/meson.build @@ -40,7 +40,7 @@ libpq_oauth_name = 'libpq-oauth-@0@'.format(pg_version_major) libpq_oauth_so = shared_module(libpq_oauth_name, libpq_oauth_sources + libpq_oauth_so_sources, include_directories: [libpq_oauth_inc, postgres_inc], - c_args: libpq_so_c_args, + c_args: libpq_oauth_so_c_args, c_pch: pch_postgres_fe_h, dependencies: [frontend_shlib_code, libpq, libpq_oauth_deps], link_depends: export_file, diff --git a/src/interfaces/libpq-oauth/oauth-curl.c b/src/interfaces/libpq-oauth/oauth-curl.c index aa50b00d053..64b5306372a 100644 --- a/src/interfaces/libpq-oauth/oauth-curl.c +++ b/src/interfaces/libpq-oauth/oauth-curl.c @@ -247,7 +247,8 @@ struct async_ctx * our entry point, errors have three parts: * * - errctx: an optional static string, describing the global operation - * currently in progress. It'll be translated for you. + * currently in progress. Should be translated with + * libpq_gettext(). * * - errbuf: contains the actual error message. Generally speaking, use * actx_error[_str] to manipulate this. This must be filled @@ -367,13 +368,16 @@ pg_fe_cleanup_oauth_flow(PGconn *conn) /* * Macros for manipulating actx->errbuf. actx_error() translates and formats a - * string for you; actx_error_str() appends a string directly without - * translation. + * string for you, actx_error_internal() is the untranslated equivalent, and + * actx_error_str() appends a string directly (also without translation). */ #define actx_error(ACTX, FMT, ...) \ appendPQExpBuffer(&(ACTX)->errbuf, libpq_gettext(FMT), ##__VA_ARGS__) +#define actx_error_internal(ACTX, FMT, ...) \ + appendPQExpBuffer(&(ACTX)->errbuf, FMT, ##__VA_ARGS__) + #define actx_error_str(ACTX, S) \ appendPQExpBufferStr(&(ACTX)->errbuf, S) @@ -461,6 +465,9 @@ struct oauth_parse #define oauth_parse_set_error(ctx, fmt, ...) \ appendPQExpBuffer((ctx)->errbuf, libpq_gettext(fmt), ##__VA_ARGS__) +#define oauth_parse_set_error_internal(ctx, fmt, ...) \ + appendPQExpBuffer((ctx)->errbuf, fmt, ##__VA_ARGS__) + static void report_type_mismatch(struct oauth_parse *ctx) { @@ -475,20 +482,20 @@ report_type_mismatch(struct oauth_parse *ctx) switch (ctx->active->type) { case JSON_TOKEN_STRING: - msgfmt = "field \"%s\" must be a string"; + msgfmt = gettext_noop("field \"%s\" must be a string"); break; case JSON_TOKEN_NUMBER: - msgfmt = "field \"%s\" must be a number"; + msgfmt = gettext_noop("field \"%s\" must be a number"); break; case JSON_TOKEN_ARRAY_START: - msgfmt = "field \"%s\" must be an array of strings"; + msgfmt = gettext_noop("field \"%s\" must be an array of strings"); break; default: Assert(false); - msgfmt = "field \"%s\" has unexpected type"; + msgfmt = gettext_noop("field \"%s\" has unexpected type"); } oauth_parse_set_error(ctx, msgfmt, ctx->active->name); @@ -536,9 +543,9 @@ oauth_json_object_field_start(void *state, char *name, bool isnull) if (ctx->active) { Assert(false); - oauth_parse_set_error(ctx, - "internal error: started field '%s' before field '%s' was finished", - name, ctx->active->name); + oauth_parse_set_error_internal(ctx, + "internal error: started field \"%s\" before field \"%s\" was finished", + name, ctx->active->name); return JSON_SEM_ACTION_FAILED; } @@ -588,9 +595,9 @@ oauth_json_object_end(void *state) if (!ctx->nested && ctx->active) { Assert(false); - oauth_parse_set_error(ctx, - "internal error: field '%s' still active at end of object", - ctx->active->name); + oauth_parse_set_error_internal(ctx, + "internal error: field \"%s\" still active at end of object", + ctx->active->name); return JSON_SEM_ACTION_FAILED; } @@ -644,9 +651,9 @@ oauth_json_array_end(void *state) if (ctx->nested != 2 || ctx->active->type != JSON_TOKEN_ARRAY_START) { Assert(false); - oauth_parse_set_error(ctx, - "internal error: found unexpected array end while parsing field '%s'", - ctx->active->name); + oauth_parse_set_error_internal(ctx, + "internal error: found unexpected array end while parsing field \"%s\"", + ctx->active->name); return JSON_SEM_ACTION_FAILED; } @@ -699,9 +706,9 @@ oauth_json_scalar(void *state, char *token, JsonTokenType type) if (ctx->nested != 1) { Assert(false); - oauth_parse_set_error(ctx, - "internal error: scalar target found at nesting level %d", - ctx->nested); + oauth_parse_set_error_internal(ctx, + "internal error: scalar target found at nesting level %d", + ctx->nested); return JSON_SEM_ACTION_FAILED; } @@ -709,9 +716,9 @@ oauth_json_scalar(void *state, char *token, JsonTokenType type) if (*field->target.scalar) { Assert(false); - oauth_parse_set_error(ctx, - "internal error: scalar field '%s' would be assigned twice", - ctx->active->name); + oauth_parse_set_error_internal(ctx, + "internal error: scalar field \"%s\" would be assigned twice", + ctx->active->name); return JSON_SEM_ACTION_FAILED; } @@ -731,9 +738,9 @@ oauth_json_scalar(void *state, char *token, JsonTokenType type) if (ctx->nested != 2) { Assert(false); - oauth_parse_set_error(ctx, - "internal error: array member found at nesting level %d", - ctx->nested); + oauth_parse_set_error_internal(ctx, + "internal error: array member found at nesting level %d", + ctx->nested); return JSON_SEM_ACTION_FAILED; } @@ -1087,7 +1094,7 @@ parse_token_error(struct async_ctx *actx, struct token_error *err) * override the errctx if parsing explicitly fails. */ if (!result) - actx->errctx = "failed to parse token error response"; + actx->errctx = libpq_gettext("failed to parse token error response"); return result; } @@ -1115,8 +1122,8 @@ record_token_error(struct async_ctx *actx, const struct token_error *err) if (response_code == 401) { actx_error(actx, actx->used_basic_auth - ? "provider rejected the oauth_client_secret" - : "provider requires client authentication, and no oauth_client_secret is set"); + ? gettext_noop("provider rejected the oauth_client_secret") + : gettext_noop("provider requires client authentication, and no oauth_client_secret is set")); actx_error_str(actx, " "); } } @@ -1179,20 +1186,20 @@ setup_multiplexer(struct async_ctx *actx) actx->mux = epoll_create1(EPOLL_CLOEXEC); if (actx->mux < 0) { - actx_error(actx, "failed to create epoll set: %m"); + actx_error_internal(actx, "failed to create epoll set: %m"); return false; } actx->timerfd = timerfd_create(CLOCK_MONOTONIC, TFD_CLOEXEC); if (actx->timerfd < 0) { - actx_error(actx, "failed to create timerfd: %m"); + actx_error_internal(actx, "failed to create timerfd: %m"); return false; } if (epoll_ctl(actx->mux, EPOLL_CTL_ADD, actx->timerfd, &ev) < 0) { - actx_error(actx, "failed to add timerfd to epoll set: %m"); + actx_error_internal(actx, "failed to add timerfd to epoll set: %m"); return false; } @@ -1201,8 +1208,7 @@ setup_multiplexer(struct async_ctx *actx) actx->mux = kqueue(); if (actx->mux < 0) { - /*- translator: the term "kqueue" (kernel queue) should not be translated */ - actx_error(actx, "failed to create kqueue: %m"); + actx_error_internal(actx, "failed to create kqueue: %m"); return false; } @@ -1215,7 +1221,7 @@ setup_multiplexer(struct async_ctx *actx) actx->timerfd = kqueue(); if (actx->timerfd < 0) { - actx_error(actx, "failed to create timer kqueue: %m"); + actx_error_internal(actx, "failed to create timer kqueue: %m"); return false; } @@ -1259,7 +1265,7 @@ register_socket(CURL *curl, curl_socket_t socket, int what, void *ctx, break; default: - actx_error(actx, "unknown libcurl socket operation: %d", what); + actx_error_internal(actx, "unknown libcurl socket operation: %d", what); return -1; } @@ -1276,15 +1282,15 @@ register_socket(CURL *curl, curl_socket_t socket, int what, void *ctx, switch (op) { case EPOLL_CTL_ADD: - actx_error(actx, "could not add to epoll set: %m"); + actx_error_internal(actx, "could not add to epoll set: %m"); break; case EPOLL_CTL_DEL: - actx_error(actx, "could not delete from epoll set: %m"); + actx_error_internal(actx, "could not delete from epoll set: %m"); break; default: - actx_error(actx, "could not update epoll set: %m"); + actx_error_internal(actx, "could not update epoll set: %m"); } return -1; @@ -1334,7 +1340,7 @@ register_socket(CURL *curl, curl_socket_t socket, int what, void *ctx, break; default: - actx_error(actx, "unknown libcurl socket operation: %d", what); + actx_error_internal(actx, "unknown libcurl socket operation: %d", what); return -1; } @@ -1344,7 +1350,7 @@ register_socket(CURL *curl, curl_socket_t socket, int what, void *ctx, res = kevent(actx->mux, ev, nev, ev_out, nev, &timeout); if (res < 0) { - actx_error(actx, "could not modify kqueue: %m"); + actx_error_internal(actx, "could not modify kqueue: %m"); return -1; } @@ -1368,10 +1374,10 @@ register_socket(CURL *curl, curl_socket_t socket, int what, void *ctx, switch (what) { case CURL_POLL_REMOVE: - actx_error(actx, "could not delete from kqueue: %m"); + actx_error_internal(actx, "could not delete from kqueue: %m"); break; default: - actx_error(actx, "could not add to kqueue: %m"); + actx_error_internal(actx, "could not add to kqueue: %m"); } return -1; } @@ -1420,7 +1426,7 @@ comb_multiplexer(struct async_ctx *actx) */ if (kevent(actx->mux, NULL, 0, &ev, 1, &timeout) < 0) { - actx_error(actx, "could not comb kqueue: %m"); + actx_error_internal(actx, "could not comb kqueue: %m"); return false; } @@ -1470,7 +1476,7 @@ set_timer(struct async_ctx *actx, long timeout) if (timerfd_settime(actx->timerfd, 0 /* no flags */ , &spec, NULL) < 0) { - actx_error(actx, "setting timerfd to %ld: %m", timeout); + actx_error_internal(actx, "setting timerfd to %ld: %m", timeout); return false; } @@ -1500,14 +1506,14 @@ set_timer(struct async_ctx *actx, long timeout) EV_SET(&ev, 1, EVFILT_TIMER, EV_DELETE, 0, 0, 0); if (kevent(actx->timerfd, &ev, 1, NULL, 0, NULL) < 0 && errno != ENOENT) { - actx_error(actx, "deleting kqueue timer: %m"); + actx_error_internal(actx, "deleting kqueue timer: %m"); return false; } EV_SET(&ev, actx->timerfd, EVFILT_READ, EV_DELETE, 0, 0, 0); if (kevent(actx->mux, &ev, 1, NULL, 0, NULL) < 0 && errno != ENOENT) { - actx_error(actx, "removing kqueue timer from multiplexer: %m"); + actx_error_internal(actx, "removing kqueue timer from multiplexer: %m"); return false; } @@ -1518,14 +1524,14 @@ set_timer(struct async_ctx *actx, long timeout) EV_SET(&ev, 1, EVFILT_TIMER, (EV_ADD | EV_ONESHOT), 0, timeout, 0); if (kevent(actx->timerfd, &ev, 1, NULL, 0, NULL) < 0) { - actx_error(actx, "setting kqueue timer to %ld: %m", timeout); + actx_error_internal(actx, "setting kqueue timer to %ld: %m", timeout); return false; } EV_SET(&ev, actx->timerfd, EVFILT_READ, EV_ADD, 0, 0, 0); if (kevent(actx->mux, &ev, 1, NULL, 0, NULL) < 0) { - actx_error(actx, "adding kqueue timer to multiplexer: %m"); + actx_error_internal(actx, "adding kqueue timer to multiplexer: %m"); return false; } @@ -1919,6 +1925,12 @@ start_request(struct async_ctx *actx) #define CURL_IGNORE_DEPRECATION(x) x #endif +/* + * Add another macro layer that inserts the needed semicolon, to avoid having + * to write a literal semicolon in the call below, which would break pgindent. + */ +#define PG_CURL_IGNORE_DEPRECATION(x) CURL_IGNORE_DEPRECATION(x;) + /* * Drives the multi handle towards completion. The caller should have already * set up an asynchronous request via start_request(). @@ -1948,11 +1960,10 @@ drive_request(struct async_ctx *actx) * to remove or break this API, so ignore the deprecation. See * * https://curl.se/mail/lib-2024-11/0028.html - * */ - CURL_IGNORE_DEPRECATION( - err = curl_multi_socket_all(actx->curlm, &actx->running); - ) + PG_CURL_IGNORE_DEPRECATION(err = + curl_multi_socket_all(actx->curlm, + &actx->running)); if (err) { @@ -2148,7 +2159,7 @@ finish_discovery(struct async_ctx *actx) /* * Pull the fields we care about from the document. */ - actx->errctx = "failed to parse OpenID discovery document"; + actx->errctx = libpq_gettext("failed to parse OpenID discovery document"); if (!parse_provider(actx, &actx->provider)) return false; /* error message already set */ @@ -2416,7 +2427,7 @@ finish_device_authz(struct async_ctx *actx) */ if (response_code == 200) { - actx->errctx = "failed to parse device authorization"; + actx->errctx = libpq_gettext("failed to parse device authorization"); if (!parse_device_authz(actx, &actx->authz)) return false; /* error message already set */ @@ -2504,7 +2515,7 @@ finish_token_request(struct async_ctx *actx, struct token *tok) */ if (response_code == 200) { - actx->errctx = "failed to parse access token response"; + actx->errctx = libpq_gettext("failed to parse access token response"); if (!parse_access_token(actx, tok)) return false; /* error message already set */ @@ -2883,7 +2894,7 @@ pg_fe_run_oauth_flow_impl(PGconn *conn) switch (actx->step) { case OAUTH_STEP_INIT: - actx->errctx = "failed to fetch OpenID discovery document"; + actx->errctx = libpq_gettext("failed to fetch OpenID discovery document"); if (!start_discovery(actx, conn_oauth_discovery_uri(conn))) goto error_return; @@ -2897,11 +2908,11 @@ pg_fe_run_oauth_flow_impl(PGconn *conn) if (!check_issuer(actx, conn)) goto error_return; - actx->errctx = "cannot run OAuth device authorization"; + actx->errctx = libpq_gettext("cannot run OAuth device authorization"); if (!check_for_device_flow(actx)) goto error_return; - actx->errctx = "failed to obtain device authorization"; + actx->errctx = libpq_gettext("failed to obtain device authorization"); if (!start_device_authz(actx, conn)) goto error_return; @@ -2912,7 +2923,7 @@ pg_fe_run_oauth_flow_impl(PGconn *conn) if (!finish_device_authz(actx)) goto error_return; - actx->errctx = "failed to obtain access token"; + actx->errctx = libpq_gettext("failed to obtain access token"); if (!start_token_request(actx, conn)) goto error_return; @@ -2963,7 +2974,7 @@ pg_fe_run_oauth_flow_impl(PGconn *conn) break; case OAUTH_STEP_WAIT_INTERVAL: - actx->errctx = "failed to obtain access token"; + actx->errctx = libpq_gettext("failed to obtain access token"); if (!start_token_request(actx, conn)) goto error_return; @@ -2989,7 +3000,7 @@ pg_fe_run_oauth_flow_impl(PGconn *conn) * also the documentation for struct async_ctx. */ if (actx->errctx) - appendPQExpBuffer(errbuf, "%s: ", libpq_gettext(actx->errctx)); + appendPQExpBuffer(errbuf, "%s: ", actx->errctx); if (PQExpBufferDataBroken(actx->errbuf)) appendPQExpBufferStr(errbuf, libpq_gettext("out of memory")); diff --git a/src/interfaces/libpq/fe-auth-oauth.c b/src/interfaces/libpq/fe-auth-oauth.c index d146c5f567c..fb63a3249d6 100644 --- a/src/interfaces/libpq/fe-auth-oauth.c +++ b/src/interfaces/libpq/fe-auth-oauth.c @@ -183,7 +183,14 @@ struct json_ctx #define oauth_json_has_error(ctx) \ (PQExpBufferDataBroken((ctx)->errbuf) || (ctx)->errmsg) -#define oauth_json_set_error(ctx, ...) \ +#define oauth_json_set_error(ctx, fmt, ...) \ + do { \ + appendPQExpBuffer(&(ctx)->errbuf, libpq_gettext(fmt), ##__VA_ARGS__); \ + (ctx)->errmsg = (ctx)->errbuf.data; \ + } while (0) + +/* An untranslated version of oauth_json_set_error(). */ +#define oauth_json_set_error_internal(ctx, ...) \ do { \ appendPQExpBuffer(&(ctx)->errbuf, __VA_ARGS__); \ (ctx)->errmsg = (ctx)->errbuf.data; \ @@ -199,13 +206,13 @@ oauth_json_object_start(void *state) Assert(ctx->nested == 1); oauth_json_set_error(ctx, - libpq_gettext("field \"%s\" must be a string"), + "field \"%s\" must be a string", ctx->target_field_name); } ++ctx->nested; if (ctx->nested > MAX_SASL_NESTING_LEVEL) - oauth_json_set_error(ctx, libpq_gettext("JSON is too deeply nested")); + oauth_json_set_error(ctx, "JSON is too deeply nested"); return oauth_json_has_error(ctx) ? JSON_SEM_ACTION_FAILED : JSON_SUCCESS; } @@ -254,20 +261,20 @@ oauth_json_array_start(void *state) if (!ctx->nested) { - ctx->errmsg = libpq_gettext("top-level element must be an object"); + oauth_json_set_error(ctx, "top-level element must be an object"); } else if (ctx->target_field) { Assert(ctx->nested == 1); oauth_json_set_error(ctx, - libpq_gettext("field \"%s\" must be a string"), + "field \"%s\" must be a string", ctx->target_field_name); } ++ctx->nested; if (ctx->nested > MAX_SASL_NESTING_LEVEL) - oauth_json_set_error(ctx, libpq_gettext("JSON is too deeply nested")); + oauth_json_set_error(ctx, "JSON is too deeply nested"); return oauth_json_has_error(ctx) ? JSON_SEM_ACTION_FAILED : JSON_SUCCESS; } @@ -288,7 +295,7 @@ oauth_json_scalar(void *state, char *token, JsonTokenType type) if (!ctx->nested) { - ctx->errmsg = libpq_gettext("top-level element must be an object"); + oauth_json_set_error(ctx, "top-level element must be an object"); return JSON_SEM_ACTION_FAILED; } @@ -301,9 +308,9 @@ oauth_json_scalar(void *state, char *token, JsonTokenType type) * Assert and don't continue any further for production builds. */ Assert(false); - oauth_json_set_error(ctx, - "internal error: target scalar found at nesting level %d during OAUTHBEARER parsing", - ctx->nested); + oauth_json_set_error_internal(ctx, + "internal error: target scalar found at nesting level %d during OAUTHBEARER parsing", + ctx->nested); return JSON_SEM_ACTION_FAILED; } @@ -314,7 +321,7 @@ oauth_json_scalar(void *state, char *token, JsonTokenType type) if (*ctx->target_field) { oauth_json_set_error(ctx, - libpq_gettext("field \"%s\" is duplicated"), + "field \"%s\" is duplicated", ctx->target_field_name); return JSON_SEM_ACTION_FAILED; } @@ -323,7 +330,7 @@ oauth_json_scalar(void *state, char *token, JsonTokenType type) if (type != JSON_TOKEN_STRING) { oauth_json_set_error(ctx, - libpq_gettext("field \"%s\" must be a string"), + "field \"%s\" must be a string", ctx->target_field_name); return JSON_SEM_ACTION_FAILED; } diff --git a/src/interfaces/libpq/fe-secure-openssl.c b/src/interfaces/libpq/fe-secure-openssl.c index 51dd7b9fec0..d2045c73ae6 100644 --- a/src/interfaces/libpq/fe-secure-openssl.c +++ b/src/interfaces/libpq/fe-secure-openssl.c @@ -694,7 +694,7 @@ static unsigned char alpn_protos[] = PG_ALPN_PROTOCOL_VECTOR; * 3.5 introduced stub function to set the callback for OpenSSL compatibility * but the callback is never invoked. * - * Error messages added to the connection object wont be printed anywhere if + * Error messages added to the connection object won't be printed anywhere if * the connection is successful. Errors in processing keylogging are printed * to stderr to overcome this. */ diff --git a/src/interfaces/libpq/libpq-fe.h b/src/interfaces/libpq/libpq-fe.h index 0852584edae..877a6483b34 100644 --- a/src/interfaces/libpq/libpq-fe.h +++ b/src/interfaces/libpq/libpq-fe.h @@ -738,11 +738,15 @@ typedef struct _PGpromptOAuthDevice int expires_in; /* seconds until user code expires */ } PGpromptOAuthDevice; -/* for PGoauthBearerRequest.async() */ +/* + * For PGoauthBearerRequest.async(). This macro just allows clients to avoid + * depending on libpq-int.h or Winsock for the "socket" type; it's undefined + * immediately below. + */ #ifdef _WIN32 -#define SOCKTYPE uintptr_t /* avoids depending on winsock2.h for SOCKET */ +#define PQ_SOCKTYPE uintptr_t /* avoids depending on winsock2.h for SOCKET */ #else -#define SOCKTYPE int +#define PQ_SOCKTYPE int #endif typedef struct PGoauthBearerRequest @@ -768,10 +772,13 @@ typedef struct PGoauthBearerRequest * blocking during the original call to the PQAUTHDATA_OAUTH_BEARER_TOKEN * hook, it may be returned directly, but one of request->async or * request->token must be set by the hook. + * + * The (PQ_SOCKTYPE *) in the signature is a placeholder for the platform's + * native socket type: (SOCKET *) on Windows, and (int *) everywhere else. */ PostgresPollingStatusType (*async) (PGconn *conn, struct PGoauthBearerRequest *request, - SOCKTYPE * altsock); + PQ_SOCKTYPE * altsock); /* * Callback to clean up custom allocations. A hook implementation may use @@ -798,7 +805,7 @@ typedef struct PGoauthBearerRequest void *user; } PGoauthBearerRequest; -#undef SOCKTYPE +#undef PQ_SOCKTYPE extern char *PQencryptPassword(const char *passwd, const char *user); extern char *PQencryptPasswordConn(PGconn *conn, const char *passwd, const char *user, const char *algorithm); diff --git a/src/interfaces/libpq/nls.mk b/src/interfaces/libpq/nls.mk index b87df277d93..3fa87a0aaac 100644 --- a/src/interfaces/libpq/nls.mk +++ b/src/interfaces/libpq/nls.mk @@ -1,6 +1,7 @@ # src/interfaces/libpq/nls.mk CATALOG_NAME = libpq GETTEXT_FILES = fe-auth.c \ + fe-auth-oauth.c \ fe-auth-scram.c \ fe-cancel.c \ fe-connect.c \ @@ -21,6 +22,7 @@ GETTEXT_TRIGGERS = actx_error:2 \ libpq_append_error:2 \ libpq_gettext \ libpq_ngettext:1,2 \ + oauth_json_set_error:2 \ oauth_parse_set_error:2 \ pqInternalNotice:2 GETTEXT_FLAGS = actx_error:2:c-format \ @@ -29,5 +31,6 @@ GETTEXT_FLAGS = actx_error:2:c-format \ libpq_gettext:1:pass-c-format \ libpq_ngettext:1:pass-c-format \ libpq_ngettext:2:pass-c-format \ + oauth_json_set_error:2:c-format \ oauth_parse_set_error:2:c-format \ pqInternalNotice:2:c-format diff --git a/src/interfaces/libpq/po/de.po b/src/interfaces/libpq/po/de.po index e416fe08921..7f3a1bd8172 100644 --- a/src/interfaces/libpq/po/de.po +++ b/src/interfaces/libpq/po/de.po @@ -1,5 +1,5 @@ # German message translation file for libpq -# Peter Eisentraut , 2001 - 2025. +# Peter Eisentraut , 2001 - 2026. # # Use these quotes: »%s« # @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-28 18:10+0000\n" -"PO-Revision-Date: 2025-08-28 21:25+0200\n" +"POT-Creation-Date: 2026-02-04 18:40+0000\n" +"PO-Revision-Date: 2026-02-06 12:38+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -17,280 +17,206 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#: ../libpq-oauth/oauth-curl.c:308 ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "libcurl-Easy-Handle-Removal fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:327 +#: ../libpq-oauth/oauth-curl.c:328 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "libcurl-Multi-Handle-Cleanup fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#: ../libpq-oauth/oauth-curl.c:394 ../libpq-oauth/oauth-curl.c:405 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "konnte %s nicht setzen für die OAuth-Verbindung: %s" -#: ../libpq-oauth/oauth-curl.c:412 +#: ../libpq-oauth/oauth-curl.c:416 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "konnte %s nicht ermitteln aus der OAuth-Antwort: %s" -#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 +#: ../libpq-oauth/oauth-curl.c:485 fe-auth-oauth.c:209 fe-auth-oauth.c:271 +#: fe-auth-oauth.c:333 #, c-format -msgid "JSON is too deeply nested" -msgstr "JSON ist zu tief geschachtelt" - -#: ../libpq-oauth/oauth-curl.c:540 -#, c-format -msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "interner Fehler: startete Feld »%s« bevor Feld »%s« beendet war" +msgid "field \"%s\" must be a string" +msgstr "Feld »%s« muss eine Zeichenkette sein" -#: ../libpq-oauth/oauth-curl.c:567 +#: ../libpq-oauth/oauth-curl.c:489 #, c-format -msgid "field \"%s\" is duplicated" -msgstr "Feld »%s« ist doppelt vorhanden" +msgid "field \"%s\" must be a number" +msgstr "Feld »%s« muss eine Zahl sein" -#: ../libpq-oauth/oauth-curl.c:592 +#: ../libpq-oauth/oauth-curl.c:493 #, c-format -msgid "internal error: field '%s' still active at end of object" -msgstr "interner Fehler: Feld »%s« ist am Ende des Objekts noch aktiv" +msgid "field \"%s\" must be an array of strings" +msgstr "Feld »%s« muss ein Array von Zeichenketten sein" -#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 +#: ../libpq-oauth/oauth-curl.c:498 #, c-format -msgid "top-level element must be an object" -msgstr "Element auf oberster Ebene muss ein Objekt sein" +msgid "field \"%s\" has unexpected type" +msgstr "Feld »%s« hat unerwarteten Typ" -#: ../libpq-oauth/oauth-curl.c:648 +#: ../libpq-oauth/oauth-curl.c:522 ../libpq-oauth/oauth-curl.c:632 +#: fe-auth-oauth.c:215 fe-auth-oauth.c:277 #, c-format -msgid "internal error: found unexpected array end while parsing field '%s'" -msgstr "interner Fehler: unerwartetes Array-Ende gefunden beim Parsen von Feld »%s«" - -#: ../libpq-oauth/oauth-curl.c:703 -#, c-format -msgid "internal error: scalar target found at nesting level %d" -msgstr "interner Fehler: skalares Ziel auf Verschachtelungsebene %d gefunden" +msgid "JSON is too deeply nested" +msgstr "JSON ist zu tief geschachtelt" -#: ../libpq-oauth/oauth-curl.c:713 +#: ../libpq-oauth/oauth-curl.c:574 fe-auth-oauth.c:324 #, c-format -msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "interner Fehler: skalares Feld »%s« würde zweimal zugewiesen werden" +msgid "field \"%s\" is duplicated" +msgstr "Feld »%s« ist doppelt vorhanden" -#: ../libpq-oauth/oauth-curl.c:735 +#: ../libpq-oauth/oauth-curl.c:614 ../libpq-oauth/oauth-curl.c:674 +#: fe-auth-oauth.c:264 fe-auth-oauth.c:298 #, c-format -msgid "internal error: array member found at nesting level %d" -msgstr "interner Fehler: Array-Mitglied gefunden auf Verschachtelungsebene %d" +msgid "top-level element must be an object" +msgstr "Element auf oberster Ebene muss ein Objekt sein" -#: ../libpq-oauth/oauth-curl.c:770 +#: ../libpq-oauth/oauth-curl.c:777 #, c-format msgid "no content type was provided" msgstr "kein Content-Typ wurde angegeben" -#: ../libpq-oauth/oauth-curl.c:809 +#: ../libpq-oauth/oauth-curl.c:816 #, c-format msgid "unexpected content type: \"%s\"" msgstr "unerwarteter Content-Typ: »%s«" -#: ../libpq-oauth/oauth-curl.c:834 +#: ../libpq-oauth/oauth-curl.c:841 #, c-format msgid "response contains embedded NULLs" msgstr "Antwort enthält Null-Bytes" -#: ../libpq-oauth/oauth-curl.c:844 +#: ../libpq-oauth/oauth-curl.c:851 #, c-format msgid "response is not valid UTF-8" msgstr "Antwort ist kein gültiges UTF-8" -#: ../libpq-oauth/oauth-curl.c:884 +#: ../libpq-oauth/oauth-curl.c:891 #, c-format msgid "field \"%s\" is missing" msgstr "Feld »%s« fehlt" -#: ../libpq-oauth/oauth-curl.c:1118 +#: ../libpq-oauth/oauth-curl.c:1097 +msgid "failed to parse token error response" +msgstr "konnte Token-Fehler-Antwort nicht parsen" + +#: ../libpq-oauth/oauth-curl.c:1125 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "Provider hat das oauth_client_secret abgelehnt" -#: ../libpq-oauth/oauth-curl.c:1182 -#, c-format -msgid "failed to create epoll set: %m" -msgstr "konnte epoll-Set nicht erzeugen: %m" - -#: ../libpq-oauth/oauth-curl.c:1189 -#, c-format -msgid "failed to create timerfd: %m" -msgstr "konnte timerfd nicht erzeugen: %m" - -#: ../libpq-oauth/oauth-curl.c:1195 -#, c-format -msgid "failed to add timerfd to epoll set: %m" -msgstr "konnte timerfd nicht zum epoll-Set hinzufügen: %m" - -#. translator: the term "kqueue" (kernel queue) should not be translated -#: ../libpq-oauth/oauth-curl.c:1205 -#, c-format -msgid "failed to create kqueue: %m" -msgstr "konnte kqueue nicht erzeugen: %m" - -#: ../libpq-oauth/oauth-curl.c:1218 -#, c-format -msgid "failed to create timer kqueue: %m" -msgstr "konnte Timer-kqueue nicht erzeugen: %m" - -#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 -#, c-format -msgid "unknown libcurl socket operation: %d" -msgstr "unbekannte libcurl-Socket-Operation: %d" - -#: ../libpq-oauth/oauth-curl.c:1279 -#, c-format -msgid "could not add to epoll set: %m" -msgstr "konnte nicht zum epoll-Set hinzufügen: %m" - -#: ../libpq-oauth/oauth-curl.c:1283 -#, c-format -msgid "could not delete from epoll set: %m" -msgstr "konnte nicht aus dem epoll-Set löschen: %m" - -#: ../libpq-oauth/oauth-curl.c:1287 -#, c-format -msgid "could not update epoll set: %m" -msgstr "konnte epoll-Set nicht aktualisieren: %m" - -#: ../libpq-oauth/oauth-curl.c:1347 -#, c-format -msgid "could not modify kqueue: %m" -msgstr "konnte kqueue nicht modifizieren: %m" - -#: ../libpq-oauth/oauth-curl.c:1371 -#, c-format -msgid "could not delete from kqueue: %m" -msgstr "konnte nicht aus kqueue löschen: %m" - -#: ../libpq-oauth/oauth-curl.c:1374 -#, c-format -msgid "could not add to kqueue: %m" -msgstr "konnte nicht zur kqueue hinzufügen: %m" - -#: ../libpq-oauth/oauth-curl.c:1423 -#, c-format -msgid "could not comb kqueue: %m" -msgstr "konnte kqueue nicht auf unlesbar schalten (comb): %m" - -#: ../libpq-oauth/oauth-curl.c:1473 -#, c-format -msgid "setting timerfd to %ld: %m" -msgstr "setze timerfd auf %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1503 +#: ../libpq-oauth/oauth-curl.c:1126 #, c-format -msgid "deleting kqueue timer: %m" -msgstr "lösche kqueue-Timer: %m" +msgid "provider requires client authentication, and no oauth_client_secret is set" +msgstr "Provider erfordert Client-Authentifizierung, aber kein oauth_client_secret ist gesetzt" -#: ../libpq-oauth/oauth-curl.c:1510 -#, c-format -msgid "removing kqueue timer from multiplexer: %m" -msgstr "entferne kqueue-Timer aus dem Multiplexer: %m" - -#: ../libpq-oauth/oauth-curl.c:1521 -#, c-format -msgid "setting kqueue timer to %ld: %m" -msgstr "setze kqueue-Timer auf %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1528 -#, c-format -msgid "adding kqueue timer to multiplexer: %m" -msgstr "füge kqueue-Timer zum Multiplexer hinzu: %m" - -#: ../libpq-oauth/oauth-curl.c:1553 +#: ../libpq-oauth/oauth-curl.c:1559 #, c-format msgid "checking timer expiration: %m" msgstr "prüfe Ablauf des Timers: %m" -#: ../libpq-oauth/oauth-curl.c:1715 +#: ../libpq-oauth/oauth-curl.c:1721 #, c-format msgid "failed to create libcurl multi handle" msgstr "konnte libcurl-Multi-Handle nicht erzeugen" -#: ../libpq-oauth/oauth-curl.c:1735 +#: ../libpq-oauth/oauth-curl.c:1741 #, c-format msgid "failed to create libcurl handle" msgstr "konnte libcurl-Handle nicht erzeugen" -#: ../libpq-oauth/oauth-curl.c:1819 ../libpq-oauth/oauth-curl.c:1860 -#: ../libpq-oauth/oauth-curl.c:2173 ../libpq-oauth/oauth-curl.c:2334 -#: ../libpq-oauth/oauth-curl.c:2395 ../libpq-oauth/oauth-curl.c:2484 -#: ../libpq-oauth/oauth-curl.c:2778 ../libpq-oauth/oauth-curl.c:2995 +#: ../libpq-oauth/oauth-curl.c:1825 ../libpq-oauth/oauth-curl.c:1866 +#: ../libpq-oauth/oauth-curl.c:2184 ../libpq-oauth/oauth-curl.c:2345 +#: ../libpq-oauth/oauth-curl.c:2406 ../libpq-oauth/oauth-curl.c:2495 +#: ../libpq-oauth/oauth-curl.c:2789 ../libpq-oauth/oauth-curl.c:3006 +#: fe-auth-oauth.c:146 fe-auth-oauth.c:489 fe-auth-oauth.c:561 +#: fe-auth-oauth.c:723 fe-auth-oauth.c:1016 fe-auth-oauth.c:1029 +#: fe-auth-oauth.c:1117 fe-auth-oauth.c:1130 fe-auth-oauth.c:1266 #: fe-auth-scram.c:374 fe-auth-scram.c:447 fe-auth-scram.c:599 #: fe-auth-scram.c:619 fe-auth-scram.c:643 fe-auth-scram.c:657 #: fe-auth-scram.c:703 fe-auth-scram.c:739 fe-auth-scram.c:931 fe-auth.c:308 #: fe-auth.c:382 fe-auth.c:416 fe-auth.c:694 fe-auth.c:827 fe-auth.c:1330 -#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1011 fe-connect.c:1051 -#: fe-connect.c:2171 fe-connect.c:2333 fe-connect.c:3726 fe-connect.c:5182 -#: fe-connect.c:5495 fe-connect.c:5750 fe-connect.c:5868 fe-connect.c:6115 -#: fe-connect.c:6195 fe-connect.c:6293 fe-connect.c:6544 fe-connect.c:6571 -#: fe-connect.c:6647 fe-connect.c:6670 fe-connect.c:6694 fe-connect.c:6729 -#: fe-connect.c:6815 fe-connect.c:6823 fe-connect.c:7180 fe-connect.c:7362 -#: fe-exec.c:530 fe-exec.c:1326 fe-exec.c:3265 fe-exec.c:4304 fe-exec.c:4470 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:211 fe-protocol3.c:234 -#: fe-protocol3.c:257 fe-protocol3.c:274 fe-protocol3.c:295 fe-protocol3.c:369 -#: fe-protocol3.c:750 fe-protocol3.c:990 fe-protocol3.c:1542 -#: fe-protocol3.c:1596 fe-protocol3.c:1642 fe-protocol3.c:1663 -#: fe-protocol3.c:1920 fe-protocol3.c:2321 fe-secure-common.c:110 -#: fe-secure-gssapi.c:506 fe-secure-gssapi.c:696 fe-secure-openssl.c:405 +#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1012 fe-connect.c:1052 +#: fe-connect.c:2172 fe-connect.c:2334 fe-connect.c:3727 fe-connect.c:5183 +#: fe-connect.c:5496 fe-connect.c:5765 fe-connect.c:5883 fe-connect.c:6130 +#: fe-connect.c:6210 fe-connect.c:6308 fe-connect.c:6559 fe-connect.c:6586 +#: fe-connect.c:6662 fe-connect.c:6685 fe-connect.c:6709 fe-connect.c:6744 +#: fe-connect.c:6830 fe-connect.c:6838 fe-connect.c:7195 fe-connect.c:7377 +#: fe-exec.c:530 fe-exec.c:1331 fe-exec.c:3270 fe-exec.c:4341 fe-exec.c:4534 +#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:212 fe-protocol3.c:235 +#: fe-protocol3.c:258 fe-protocol3.c:275 fe-protocol3.c:296 fe-protocol3.c:370 +#: fe-protocol3.c:751 fe-protocol3.c:991 fe-protocol3.c:1556 +#: fe-protocol3.c:1610 fe-protocol3.c:1656 fe-protocol3.c:1677 +#: fe-protocol3.c:1934 fe-protocol3.c:2335 fe-secure-common.c:110 +#: fe-secure-gssapi.c:508 fe-secure-gssapi.c:699 fe-secure-openssl.c:405 #: fe-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "Speicher aufgebraucht" -#: ../libpq-oauth/oauth-curl.c:1847 +#: ../libpq-oauth/oauth-curl.c:1853 #, c-format msgid "response is too large" msgstr "Antwort ist zu groß" -#: ../libpq-oauth/oauth-curl.c:1889 +#: ../libpq-oauth/oauth-curl.c:1895 #, c-format msgid "failed to queue HTTP request: %s" msgstr "Einreihen der HTTP-Anfrage fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#: ../libpq-oauth/oauth-curl.c:1912 ../libpq-oauth/oauth-curl.c:1970 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "asynchrone HTTP-Anfrage fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:2011 +#: ../libpq-oauth/oauth-curl.c:2022 #, c-format msgid "no result was retrieved for the finished handle" msgstr "für die abgeschlossene Handle wurde kein Ergebnis abgerufen" -#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 -#: ../libpq-oauth/oauth-curl.c:2529 +#: ../libpq-oauth/oauth-curl.c:2155 ../libpq-oauth/oauth-curl.c:2461 +#: ../libpq-oauth/oauth-curl.c:2540 #, c-format msgid "unexpected response code %ld" msgstr "unerwarteter Antwortcode %ld" -#: ../libpq-oauth/oauth-curl.c:2216 +#: ../libpq-oauth/oauth-curl.c:2162 +msgid "failed to parse OpenID discovery document" +msgstr "konnte OpenID-Discovery-Dokument nicht parsen" + +#: ../libpq-oauth/oauth-curl.c:2227 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "der Issuer-Identifier (%s) stimmt nicht mit oauth_issuer (%s) überein" -#: ../libpq-oauth/oauth-curl.c:2243 +#: ../libpq-oauth/oauth-curl.c:2254 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "Issuer »%s« stellt keinen Device-Authorization-Endpunkt zur Verfügung" -#: ../libpq-oauth/oauth-curl.c:2269 +#: ../libpq-oauth/oauth-curl.c:2280 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "Device-Authorization-Endpunkt »%s« muss HTTPS verwenden" -#: ../libpq-oauth/oauth-curl.c:2278 +#: ../libpq-oauth/oauth-curl.c:2289 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "Token-Endpunkt »%s« muss HTTPS verwenden" -#: ../libpq-oauth/oauth-curl.c:2587 +#: ../libpq-oauth/oauth-curl.c:2430 +msgid "failed to parse device authorization" +msgstr "konnte Device-Authorization nicht parsen" + +#: ../libpq-oauth/oauth-curl.c:2518 +msgid "failed to parse access token response" +msgstr "konnte Access-Token-Antwort nicht parsen" + +#: ../libpq-oauth/oauth-curl.c:2598 #, c-format msgid "slow_down interval overflow" msgstr "slow_down Intervall-Überlauf" @@ -298,27 +224,27 @@ msgstr "slow_down Intervall-Überlauf" #. translator: The first %s is a URL for the user to visit in a #. browser, and the second %s is a code to be copy-pasted there. #. -#: ../libpq-oauth/oauth-curl.c:2623 +#: ../libpq-oauth/oauth-curl.c:2634 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "Besuchen Sie %s und geben Sie den Code ein: %s\n" -#: ../libpq-oauth/oauth-curl.c:2628 +#: ../libpq-oauth/oauth-curl.c:2639 #, c-format msgid "device prompt failed" msgstr "Device-Prompt fehlgeschlagen" -#: ../libpq-oauth/oauth-curl.c:2684 +#: ../libpq-oauth/oauth-curl.c:2695 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init zuvor beim OAuth-Setup fehlgeschlagen" -#: ../libpq-oauth/oauth-curl.c:2703 +#: ../libpq-oauth/oauth-curl.c:2714 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init beim OAuth-Setup fehlgeschlagen" -#: ../libpq-oauth/oauth-curl.c:2724 +#: ../libpq-oauth/oauth-curl.c:2735 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -333,6 +259,152 @@ msgstr "" "\tberichtet, dass sie nicht thread-safe ist. Kompilieren Sie libpq neu\n" "\tmit der installierten Version von libcurl." +#: ../libpq-oauth/oauth-curl.c:2897 +msgid "failed to fetch OpenID discovery document" +msgstr "konnte OpenID-Discovery-Dokument nicht holen" + +#: ../libpq-oauth/oauth-curl.c:2911 +msgid "cannot run OAuth device authorization" +msgstr "kann OAuth-Device-Authorization nicht ausführen" + +#: ../libpq-oauth/oauth-curl.c:2915 +msgid "failed to obtain device authorization" +msgstr "konnte Device-Authorization nicht erhalten" + +#: ../libpq-oauth/oauth-curl.c:2926 ../libpq-oauth/oauth-curl.c:2977 +msgid "failed to obtain access token" +msgstr "konnte Access-Token nicht erhalten" + +#: fe-auth-oauth.c:133 +#, c-format +msgid "internal error: no OAuth token was set for the connection" +msgstr "interner Fehler: für die Verbindung war kein OAuth-Token gesetzt" + +#: fe-auth-oauth.c:396 +#, c-format +msgid "OAuth discovery URI \"%s\" must use HTTPS" +msgstr "OAuth-Discovery-URI »%s« muss HTTPS verwenden" + +#: fe-auth-oauth.c:413 +#, c-format +msgid "OAuth discovery URI \"%s\" must not contain query or fragment components" +msgstr "OAuth-Discovery-URI »%s« darf keine Query- oder Fragment-Komponenten enthalten" + +#: fe-auth-oauth.c:428 +#, c-format +msgid "OAuth discovery URI \"%s\" is not a .well-known URI" +msgstr "OAuth-Discovery-URI »%s« ist keine ».well-known«-URI" + +#: fe-auth-oauth.c:454 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an unsupported .well-known suffix" +msgstr "OAuth-Discovery-URI »%s« verwendet ein nicht unterstütztes ».well-known«-Suffix" + +#: fe-auth-oauth.c:479 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an invalid format" +msgstr "OAuth-Discovery-URI »%s« verwendet ein ungültiges Format" + +#: fe-auth-oauth.c:528 +#, c-format +msgid "server's error message contained an embedded NULL, and was discarded" +msgstr "Fehlermeldung vom Server enthielt Null-Byte und wurde verworfen" + +#: fe-auth-oauth.c:539 +#, c-format +msgid "server's error response is not valid UTF-8" +msgstr "Fehlerantwort vom Server ist kein gültiges UTF-8" + +#: fe-auth-oauth.c:579 +#, c-format +msgid "failed to parse server's error response: %s" +msgstr "konnte Fehlerantwort des Servers nicht parsen: %s" + +#: fe-auth-oauth.c:610 +#, c-format +msgid "server's discovery document at %s (issuer \"%s\") is incompatible with oauth_issuer (%s)" +msgstr "Discovery-Dokument des Servers auf %s (Issuer »%s«) ist inkompatibel mit oauth_issuer (%s)" + +#: fe-auth-oauth.c:631 +#, c-format +msgid "server's discovery document has moved to %s (previous location was %s)" +msgstr "Discovery-Dokument des Servers wurde nach %s verschoben (vorherige Stelle war %s)" + +#: fe-auth-oauth.c:652 +#, c-format +msgid "server sent error response without a status" +msgstr "Server hat Fehlerantwort ohne Status gesendet" + +#: fe-auth-oauth.c:663 +#, c-format +msgid "server rejected OAuth bearer token: %s" +msgstr "Server hat OAuth-Bearer-Token abgelehnt: %s" + +#: fe-auth-oauth.c:696 +#, c-format +msgid "user-defined OAuth flow provided neither a token nor an async callback" +msgstr "benutzerdefinierter OAuth-Flow hat weder ein Token noch einen asynchronen Callback zur Verfügung gestellt" + +#: fe-auth-oauth.c:703 fe-auth-oauth.c:1041 +#, c-format +msgid "user-defined OAuth flow failed" +msgstr "benutzerdefinierter OAuth-Flow fehlgeschlagen" + +#: fe-auth-oauth.c:716 +#, c-format +msgid "user-defined OAuth flow did not provide a token" +msgstr "benutzerdefinierter OAuth-Flow lieferte kein Token" + +#: fe-auth-oauth.c:734 +#, c-format +msgid "user-defined OAuth flow did not provide a socket for polling" +msgstr "benutzerdefinierter OAuth-Flow hat kein Socket für Polling zur Verfügung gestellt" + +#: fe-auth-oauth.c:917 +#, c-format +msgid "failed to lock mutex (%d)" +msgstr "konnte Mutex nicht sperren (%d)" + +#: fe-auth-oauth.c:1046 +#, c-format +msgid "no OAuth flows are available (try installing the libpq-oauth package)" +msgstr "keine OAuth-Flows sind verfügbar (versuchen Sie, das Paket libpq-oauth zu installieren)" + +#: fe-auth-oauth.c:1095 +#, c-format +msgid "server requires OAuth authentication, but oauth_issuer and oauth_client_id are not both set" +msgstr "Server verlangt OAuth-Authentifizierung, aber oauth_issuer und oauth_client_id sind nicht beide gesetzt" + +#: fe-auth-oauth.c:1255 +#, c-format +msgid "server sent unexpected additional OAuth data" +msgstr "Server hat unerwartete zusätzliche OAuth-Daten gesendet" + +#: fe-auth-oauth.c:1295 +#, c-format +msgid "server requires OAuth authentication, but no discovery metadata was provided" +msgstr "Server verlangt OAuth-Authentifizierung, aber es wurden keine Discovery-Metadaten zur Verfügung gestellt" + +#: fe-auth-oauth.c:1333 +#, c-format +msgid "internal error: OAuth flow did not set a token" +msgstr "interner Fehler: OAuth-Flow hat kein Token gesetzt" + +#: fe-auth-oauth.c:1351 +#, c-format +msgid "server sent additional OAuth data after error" +msgstr "Server hat nach einem Fehler zusätzliche OAuth-Daten gesendet" + +#: fe-auth-oauth.c:1355 +#, c-format +msgid "invalid OAuth exchange state" +msgstr "ungültiger Zustand des OAuth-Austauschs" + +#: fe-auth-oauth.c:1368 +#, c-format +msgid "retrying connection with new bearer token" +msgstr "Verbindung wird erneut versucht mit neuem Bearer-Token" + #: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" @@ -658,695 +730,710 @@ msgstr "Stornierungsanfrage wird auf dieser Verbindung bereits gesendet" msgid "unexpected response from server" msgstr "unerwartete Antwort vom Server" -#: fe-connect.c:1308 +#: fe-connect.c:1309 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "fehlerhafte Angabe: %d Hostnamen und %d hostaddr-Angaben" -#: fe-connect.c:1388 +#: fe-connect.c:1389 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "fehlerhafte Angabe: %d Portnummern und %d Hosts" -#: fe-connect.c:1516 +#: fe-connect.c:1517 #, c-format msgid "negative require_auth method \"%s\" cannot be mixed with non-negative methods" msgstr "negative require_auth-Methode »%s« kann nicht mit nicht-negativen Methoden vermischt werden" -#: fe-connect.c:1529 +#: fe-connect.c:1530 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "require_auth-Methode »%s« kann nicht mit negativen Methoden vermischt werden" -#: fe-connect.c:1605 fe-connect.c:1734 fe-connect.c:1776 fe-connect.c:1819 -#: fe-connect.c:1922 fe-connect.c:1968 fe-connect.c:2008 fe-connect.c:2075 -#: fe-connect.c:8248 +#: fe-connect.c:1606 fe-connect.c:1735 fe-connect.c:1777 fe-connect.c:1820 +#: fe-connect.c:1923 fe-connect.c:1969 fe-connect.c:2009 fe-connect.c:2076 +#: fe-connect.c:8263 #, c-format msgid "invalid %s value: \"%s\"" msgstr "ungültiger %s-Wert: »%s«" -#: fe-connect.c:1647 +#: fe-connect.c:1648 #, c-format msgid "internal error: no space in allowed_sasl_mechs" msgstr "interner Fehler: kein Platz in allowed_sasl_mechs" -#: fe-connect.c:1686 +#: fe-connect.c:1687 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "require_auth-Methode »%s« ist mehrmals angegeben" -#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 +#: fe-connect.c:1758 fe-connect.c:1797 fe-connect.c:1829 fe-connect.c:1931 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "%s-Wert »%s« ist ungültig, wenn SSL-Unterstützung nicht einkompiliert worden ist" -#: fe-connect.c:1848 +#: fe-connect.c:1849 #, c-format msgid "weak sslmode \"%s\" may not be used with sslnegotiation=direct (use \"require\", \"verify-ca\", or \"verify-full\")" msgstr "schwacher sslmode »%s« darf nicht mit sslnegotiation=direct verwendet werden (»require«, »verify-ca« oder »verify-full« verwenden)" -#: fe-connect.c:1870 +#: fe-connect.c:1871 #, c-format msgid "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-full\")" msgstr "schwacher sslmode »%s« darf nicht mit sslrootcert=system verwendet werden (»verify-full« verwenden)" -#: fe-connect.c:1883 fe-connect.c:1891 +#: fe-connect.c:1884 fe-connect.c:1892 #, c-format msgid "invalid \"%s\" value: \"%s\"" msgstr "ungültiger »%s«-Wert: »%s«" -#: fe-connect.c:1908 +#: fe-connect.c:1909 #, c-format msgid "invalid SSL protocol version range" msgstr "ungültiges SSL-Protokollsintervall" -#: fe-connect.c:1945 +#: fe-connect.c:1946 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "%s-Wert »%s« wird nicht unterstützt (OpenSSL-Version prüfen)" -#: fe-connect.c:1975 +#: fe-connect.c:1976 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "gssencmode-Wert »%s« ist ungültig, wenn GSSAPI-Unterstützung nicht einkompiliert worden ist" -#: fe-connect.c:2029 +#: fe-connect.c:2030 #, c-format msgid "invalid SCRAM client key" msgstr "ungültiger SCRAM-Client-Schlüssel" -#: fe-connect.c:2034 +#: fe-connect.c:2035 #, c-format msgid "invalid SCRAM client key length: %d" msgstr "ungültige SCRAM-Client-Schlüssel-Länge: %d" -#: fe-connect.c:2052 +#: fe-connect.c:2053 #, c-format msgid "invalid SCRAM server key" msgstr "ungültiger SCRAM-Server-Schlüssel" -#: fe-connect.c:2057 +#: fe-connect.c:2058 #, c-format msgid "invalid SCRAM server key length: %d" msgstr "ungültige SCRAM-Server-Schlüssel-Länge: %d" -#: fe-connect.c:2144 +#: fe-connect.c:2145 #, c-format msgid "\"%s\" is greater than \"%s\"" msgstr "»%s« ist größer als »%s«" -#: fe-connect.c:2356 +#: fe-connect.c:2357 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "konnte Socket nicht auf TCP »No Delay«-Modus umstellen: %s" -#: fe-connect.c:2415 +#: fe-connect.c:2416 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "Verbindung zum Server auf Socket »%s« fehlgeschlagen: " -#: fe-connect.c:2441 +#: fe-connect.c:2442 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "Verbindung zum Server auf »%s« (%s), Port %s fehlgeschlagen: " -#: fe-connect.c:2446 +#: fe-connect.c:2447 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "Verbindung zum Server auf »%s«, Port %s fehlgeschlagen: " -#: fe-connect.c:2469 +#: fe-connect.c:2470 #, c-format msgid "\tIs the server running locally and accepting connections on that socket?" msgstr "\tLäuft der Server lokal und akzeptiert er Verbindungen auf diesem Socket?" -#: fe-connect.c:2471 +#: fe-connect.c:2472 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "\tLäuft der Server auf diesem Host und akzeptiert er TCP/IP-Verbindungen?" -#: fe-connect.c:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 -#: fe-connect.c:3410 +#: fe-connect.c:2518 fe-connect.c:2552 fe-connect.c:2587 fe-connect.c:2685 +#: fe-connect.c:3411 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s) fehlgeschlagen: %s" -#: fe-connect.c:2650 +#: fe-connect.c:2651 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) fehlgeschlagen: Fehlercode %d" -#: fe-connect.c:2962 +#: fe-connect.c:2963 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "ungültiger Verbindungszustand, möglicherweise ein Speicherproblem" -#: fe-connect.c:3045 +#: fe-connect.c:3046 #, c-format msgid "invalid port number: \"%s\"" msgstr "ungültige Portnummer: »%s«" -#: fe-connect.c:3059 +#: fe-connect.c:3060 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "konnte Hostnamen »%s« nicht in Adresse übersetzen: %s" -#: fe-connect.c:3071 +#: fe-connect.c:3072 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "konnte Netzwerkadresse »%s« nicht interpretieren: %s" -#: fe-connect.c:3082 +#: fe-connect.c:3083 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "Unix-Domain-Socket-Pfad »%s« ist zu lang (maximal %d Bytes)" -#: fe-connect.c:3096 +#: fe-connect.c:3097 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "konnte Unix-Domain-Socket-Pfad »%s« nicht in Adresse übersetzen: %s" -#: fe-connect.c:3262 fe-connect.c:4709 +#: fe-connect.c:3263 fe-connect.c:4710 #, c-format msgid "GSSAPI encryption required but it is not supported over a local socket" msgstr "GSSAPI-Verschlüsselung war gefordert aber wird über lokales Socket nicht unterstützt" -#: fe-connect.c:3270 fe-connect.c:4838 +#: fe-connect.c:3271 fe-connect.c:4839 #, c-format msgid "GSSAPI encryption required but no credential cache" msgstr "GSSAPI-Verschlüsselung war gefordert aber kein Credential-Cache" -#: fe-connect.c:3338 +#: fe-connect.c:3339 #, c-format msgid "could not create socket: %s" msgstr "konnte Socket nicht erzeugen: %s" -#: fe-connect.c:3369 +#: fe-connect.c:3370 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "konnte Socket nicht auf nicht-blockierenden Modus umstellen: %s" -#: fe-connect.c:3380 +#: fe-connect.c:3381 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "konnte Socket nicht auf »Close on exec«-Modus umstellen: %s" -#: fe-connect.c:3537 +#: fe-connect.c:3538 #, c-format msgid "could not get socket error status: %s" msgstr "konnte Socket-Fehlerstatus nicht ermitteln: %s" -#: fe-connect.c:3564 +#: fe-connect.c:3565 #, c-format msgid "could not get client address from socket: %s" msgstr "konnte Client-Adresse vom Socket nicht ermitteln: %s" -#: fe-connect.c:3590 +#: fe-connect.c:3591 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "Parameter »requirepeer« wird auf dieser Plattform nicht unterstützt" -#: fe-connect.c:3592 +#: fe-connect.c:3593 #, c-format msgid "could not get peer credentials: %s" msgstr "konnte Credentials von Gegenstelle nicht ermitteln: %s" -#: fe-connect.c:3605 +#: fe-connect.c:3606 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "requirepeer gibt »%s« an, aber tatsächlicher Benutzername der Gegenstelle ist »%s«" -#: fe-connect.c:3643 +#: fe-connect.c:3644 #, c-format msgid "could not send GSSAPI negotiation packet: %s" msgstr "konnte Paket zur GSSAPI-Verhandlung nicht senden: %s" -#: fe-connect.c:3682 +#: fe-connect.c:3683 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "konnte Paket zur SSL-Verhandlung nicht senden: %s" -#: fe-connect.c:3708 +#: fe-connect.c:3709 #, c-format msgid "could not send cancel packet: %s" msgstr "konnte Cancel-Paket nicht senden: %s" -#: fe-connect.c:3738 +#: fe-connect.c:3739 #, c-format msgid "could not send startup packet: %s" msgstr "konnte Startpaket nicht senden: %s" -#: fe-connect.c:3811 +#: fe-connect.c:3812 msgid "server does not support SSL, but SSL was required" msgstr "Server unterstützt kein SSL, aber SSL wurde verlangt" -#: fe-connect.c:3821 +#: fe-connect.c:3822 #, c-format msgid "server sent an error response during SSL exchange" msgstr "Server hat während des SSL-Austauschs eine Fehlermeldung gesendet" -#: fe-connect.c:3826 +#: fe-connect.c:3827 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "ungültige Antwort auf SSL-Verhandlungspaket empfangen: %c" -#: fe-connect.c:3846 +#: fe-connect.c:3847 #, c-format msgid "received unencrypted data after SSL response" msgstr "unverschlüsselte Daten nach SSL-Antwort empfangen" -#: fe-connect.c:3909 +#: fe-connect.c:3910 #, c-format msgid "server sent an error response during GSS encryption exchange" msgstr "Server hat während des GSS-Verschlüsselungsaustauschs eine Fehlermeldung gesendet" -#: fe-connect.c:3927 +#: fe-connect.c:3928 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "Server unterstützt keine GSSAPI-Verschlüsselung, sie wurde aber verlangt" -#: fe-connect.c:3931 +#: fe-connect.c:3932 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "ungültige Antwort auf GSSAPI-Verhandlungspaket empfangen: %c" -#: fe-connect.c:3953 +#: fe-connect.c:3954 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "unverschlüsselte Daten nach GSSAPI-Verschlüsselungsantwort empfangen" -#: fe-connect.c:4014 +#: fe-connect.c:4015 #, c-format msgid "expected authentication request from server, but received %c" msgstr "Authentifizierungsanfrage wurde vom Server erwartet, aber %c wurde empfangen" -#: fe-connect.c:4042 fe-connect.c:4174 +#: fe-connect.c:4043 fe-connect.c:4175 #, c-format msgid "received invalid authentication request" msgstr "ungültige Authentifizierungsanforderung empfangen" -#: fe-connect.c:4048 +#: fe-connect.c:4049 #, c-format msgid "received invalid protocol negotiation message" msgstr "ungültige Protokollverhandlungsnachricht empfangen" -#: fe-connect.c:4067 fe-connect.c:4121 +#: fe-connect.c:4068 fe-connect.c:4122 #, c-format msgid "received invalid error message" msgstr "ungültige Fehlermeldung empfangen" -#: fe-connect.c:4151 +#: fe-connect.c:4152 #, c-format msgid "received duplicate protocol negotiation message" msgstr "doppelte Protokollverhandlungsnachricht empfangen" -#: fe-connect.c:4253 +#: fe-connect.c:4254 #, c-format msgid "internal error: async authentication has no handler" msgstr "interner Fehler: async authentication has no handler" -#: fe-connect.c:4278 +#: fe-connect.c:4279 #, c-format msgid "internal error: async cleanup did not release polling socket" msgstr "interner Fehler: async cleanup did not release polling socket" -#: fe-connect.c:4301 +#: fe-connect.c:4302 #, c-format msgid "internal error: async authentication did not set a socket for polling" msgstr "interner Fehler: async authentication did not set a socket for polling" -#: fe-connect.c:4334 +#: fe-connect.c:4335 #, c-format msgid "unexpected message from server during startup" msgstr "unerwartete Nachricht vom Server beim Start" -#: fe-connect.c:4425 +#: fe-connect.c:4426 #, c-format msgid "session is read-only" msgstr "Sitzung ist read-only" -#: fe-connect.c:4427 +#: fe-connect.c:4428 #, c-format msgid "session is not read-only" msgstr "Sitzung ist nicht read-only" -#: fe-connect.c:4480 +#: fe-connect.c:4481 #, c-format msgid "server is in hot standby mode" msgstr "Server ist im Hot-Standby-Modus" -#: fe-connect.c:4482 +#: fe-connect.c:4483 #, c-format msgid "server is not in hot standby mode" msgstr "Server ist nicht im Hot-Standby-Modus" -#: fe-connect.c:4607 fe-connect.c:4657 +#: fe-connect.c:4608 fe-connect.c:4658 #, c-format msgid "\"%s\" failed" msgstr "»%s« fehlgeschlagen" -#: fe-connect.c:4671 +#: fe-connect.c:4672 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "ungültiger Verbindungszustand %d, möglicherweise ein Speicherproblem" -#: fe-connect.c:5508 +#: fe-connect.c:5509 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "ungültige LDAP-URL »%s«: Schema muss ldap:// sein" -#: fe-connect.c:5523 +#: fe-connect.c:5524 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "ungültige LDAP-URL »%s«: Distinguished Name fehlt" -#: fe-connect.c:5535 fe-connect.c:5593 +#: fe-connect.c:5536 fe-connect.c:5594 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "ungültige LDAP-URL »%s«: muss genau ein Attribut haben" -#: fe-connect.c:5547 fe-connect.c:5609 +#: fe-connect.c:5548 fe-connect.c:5610 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "ungültige LDAP-URL »%s«: Suchbereich fehlt (base/one/sub)" -#: fe-connect.c:5559 +#: fe-connect.c:5560 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "ungültige LDAP-URL »%s«: kein Filter" -#: fe-connect.c:5581 +#: fe-connect.c:5582 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "ungültige LDAP-URL »%s«: ungültige Portnummer" -#: fe-connect.c:5618 +#: fe-connect.c:5619 #, c-format msgid "could not create LDAP structure" msgstr "konnte LDAP-Struktur nicht erzeugen" -#: fe-connect.c:5693 +#: fe-connect.c:5694 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "Suche auf LDAP-Server fehlgeschlagen: %s" -#: fe-connect.c:5703 +#: fe-connect.c:5704 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "LDAP-Suche ergab mehr als einen Eintrag" -#: fe-connect.c:5705 fe-connect.c:5716 +#: fe-connect.c:5706 fe-connect.c:5717 #, c-format msgid "no entry found on LDAP lookup" msgstr "kein Eintrag gefunden bei LDAP-Suche" -#: fe-connect.c:5726 fe-connect.c:5738 +#: fe-connect.c:5727 fe-connect.c:5739 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "Attribut hat keine Werte bei LDAP-Suche" -#: fe-connect.c:5789 fe-connect.c:5808 fe-connect.c:6332 +#: fe-connect.c:5753 +#, c-format +msgid "connection info string size exceeds the maximum allowed (%d)" +msgstr "Größe der Verbindungsinfo-Zeichenkette überschreitet erlaubtes Maximum (%d)" + +#: fe-connect.c:5804 fe-connect.c:5823 fe-connect.c:6347 #, c-format msgid "missing \"=\" after \"%s\" in connection info string" msgstr "fehlendes »=« nach »%s« in der Zeichenkette der Verbindungsdaten" -#: fe-connect.c:5879 fe-connect.c:6515 fe-connect.c:7345 +#: fe-connect.c:5894 fe-connect.c:6530 fe-connect.c:7360 #, c-format msgid "invalid connection option \"%s\"" msgstr "ungültige Verbindungsoption »%s«" -#: fe-connect.c:5894 fe-connect.c:6380 +#: fe-connect.c:5909 fe-connect.c:6395 #, c-format msgid "unterminated quoted string in connection info string" msgstr "fehlendes schließendes Anführungszeichen (\") in der Zeichenkette der Verbindungsdaten" -#: fe-connect.c:5974 +#: fe-connect.c:5989 #, c-format msgid "definition of service \"%s\" not found" msgstr "Definition von Service »%s« nicht gefunden" -#: fe-connect.c:6000 +#: fe-connect.c:6015 #, c-format msgid "service file \"%s\" not found" msgstr "Servicedatei »%s« nicht gefunden" -#: fe-connect.c:6013 +#: fe-connect.c:6028 #, c-format msgid "line %d too long in service file \"%s\"" msgstr "Zeile %d zu lang in Servicedatei »%s«" -#: fe-connect.c:6084 fe-connect.c:6127 +#: fe-connect.c:6099 fe-connect.c:6142 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "Syntaxfehler in Servicedatei »%s«, Zeile %d" -#: fe-connect.c:6095 +#: fe-connect.c:6110 #, c-format msgid "nested service specifications not supported in service file \"%s\", line %d" msgstr "geschachtelte »service«-Definitionen werden nicht unterstützt in Servicedatei »%s«, Zeile %d" -#: fe-connect.c:6834 +#: fe-connect.c:6849 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "ungültige URI an interne Parserroutine weitergeleitet: »%s«" -#: fe-connect.c:6911 +#: fe-connect.c:6926 #, c-format msgid "end of string reached when looking for matching \"]\" in IPv6 host address in URI: \"%s\"" msgstr "Ende der Eingabezeichenkette gefunden beim Suchen nach passendem »]« in IPv6-Hostadresse in URI: »%s«" -#: fe-connect.c:6918 +#: fe-connect.c:6933 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "IPv6-Hostadresse darf nicht leer sein in URI: »%s«" -#: fe-connect.c:6933 +#: fe-connect.c:6948 #, c-format msgid "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): \"%s\"" msgstr "unerwartetes Zeichen »%c« an Position %d in URI (»:« oder »/« erwartet): »%s«" -#: fe-connect.c:7062 +#: fe-connect.c:7077 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "zusätzliches Schlüssel/Wert-Trennzeichen »=« in URI-Query-Parameter: »%s«" -#: fe-connect.c:7082 +#: fe-connect.c:7097 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "fehlendes Schlüssel/Wert-Trennzeichen »=« in URI-Query-Parameter: »%s«" -#: fe-connect.c:7134 +#: fe-connect.c:7149 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "ungültiger URI-Query-Parameter: »%s«" -#: fe-connect.c:7218 +#: fe-connect.c:7233 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "ungültiges Prozent-kodiertes Token: »%s«" -#: fe-connect.c:7228 +#: fe-connect.c:7243 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "verbotener Wert %%00 in Prozent-kodiertem Wert: »%s«" -#: fe-connect.c:7250 +#: fe-connect.c:7265 #, c-format msgid "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" msgstr "unerwartete Leerzeichen in »%s« gefunden, verwenden Sie stattdessen Prozent-kodierte Leerzeichen (%%20)" -#: fe-connect.c:7626 +#: fe-connect.c:7641 msgid "connection pointer is NULL\n" msgstr "Verbindung ist ein NULL-Zeiger\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 -#: fe-protocol3.c:1005 fe-protocol3.c:1038 +#: fe-connect.c:7649 fe-exec.c:718 fe-exec.c:980 fe-exec.c:3475 +#: fe-protocol3.c:1006 fe-protocol3.c:1039 msgid "out of memory\n" msgstr "Speicher aufgebraucht\n" -#: fe-connect.c:7936 +#: fe-connect.c:7951 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "WARNUNG: Passwortdatei »%s« ist keine normale Datei\n" -#: fe-connect.c:7946 +#: fe-connect.c:7961 #, c-format msgid "WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n" msgstr "WARNUNG: Passwortdatei »%s« erlaubt Lesezugriff für Gruppe oder Andere; Rechte sollten u=rw (0600) oder weniger sein\n" -#: fe-connect.c:8050 +#: fe-connect.c:8065 #, c-format msgid "password retrieved from file \"%s\"" msgstr "Passwort wurde aus Datei »%s« gelesen" -#: fe-connect.c:8216 +#: fe-connect.c:8231 #, c-format msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "ungültiger Zahlenwert »%s« für Verbindungsoption »%s«" -#: fe-exec.c:469 fe-exec.c:3544 +#: fe-exec.c:469 fe-exec.c:3549 #, c-format msgid "row number %d is out of range 0..%d" msgstr "Zeilennummer %d ist außerhalb des zulässigen Bereichs 0..%d" -#: fe-exec.c:531 fe-protocol3.c:2126 +#: fe-exec.c:531 fe-protocol3.c:2140 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:834 +#: fe-exec.c:839 #, c-format msgid "write to server failed" msgstr "Schreiben zum Server fehlgeschlagen" -#: fe-exec.c:874 +#: fe-exec.c:879 #, c-format msgid "no error text available" msgstr "kein Fehlertext verfügbar" -#: fe-exec.c:963 +#: fe-exec.c:968 msgid "NOTICE" msgstr "HINWEIS" -#: fe-exec.c:1021 +#: fe-exec.c:1026 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult kann nicht mehr als INT_MAX Tupel enthalten" -#: fe-exec.c:1033 +#: fe-exec.c:1038 msgid "size_t overflow" msgstr "Überlauf von size_t" -#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 +#: fe-exec.c:1454 fe-exec.c:1523 fe-exec.c:1569 #, c-format msgid "command string is a null pointer" msgstr "Befehlszeichenkette ist ein NULL-Zeiger" -#: fe-exec.c:1455 fe-exec.c:3014 +#: fe-exec.c:1460 fe-exec.c:3019 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%s im Pipeline-Modus nicht erlaubt" -#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 +#: fe-exec.c:1528 fe-exec.c:1574 fe-exec.c:1668 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "Anzahl der Parameter muss zwischen 0 und %d sein" -#: fe-exec.c:1559 fe-exec.c:1658 +#: fe-exec.c:1564 fe-exec.c:1663 #, c-format msgid "statement name is a null pointer" msgstr "Anweisungsname ist ein NULL-Zeiger" -#: fe-exec.c:1700 fe-exec.c:3390 +#: fe-exec.c:1705 fe-exec.c:3395 #, c-format msgid "no connection to the server" msgstr "keine Verbindung mit dem Server" -#: fe-exec.c:1708 fe-exec.c:3398 +#: fe-exec.c:1713 fe-exec.c:3403 #, c-format msgid "another command is already in progress" msgstr "ein anderer Befehl ist bereits in Ausführung" -#: fe-exec.c:1738 +#: fe-exec.c:1743 #, c-format msgid "cannot queue commands during COPY" msgstr "während COPY können keine Befehle aufgereiht werden" -#: fe-exec.c:1857 +#: fe-exec.c:1862 #, c-format msgid "length must be given for binary parameter" msgstr "für binäre Parameter muss eine Länge angegeben werden" -#: fe-exec.c:2216 +#: fe-exec.c:2221 #, c-format msgid "unexpected asyncStatus: %d" msgstr "unerwarteter asyncStatus: %d" -#: fe-exec.c:2372 +#: fe-exec.c:2377 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "synchrone Befehlsausführungsfunktionen sind im Pipeline-Modus nicht erlaubt" -#: fe-exec.c:2389 +#: fe-exec.c:2394 msgid "COPY terminated by new PQexec" msgstr "COPY von neuem PQexec beendet" -#: fe-exec.c:2405 +#: fe-exec.c:2410 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec ist während COPY BOTH nicht erlaubt" -#: fe-exec.c:2641 +#: fe-exec.c:2646 #, c-format msgid "unrecognized message type \"%c\"" msgstr "unbekannter Message-Typ »%c«" -#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 +#: fe-exec.c:2718 fe-exec.c:2772 fe-exec.c:2840 fe-protocol3.c:2071 #, c-format msgid "no COPY in progress" msgstr "keine COPY in Ausführung" -#: fe-exec.c:3021 +#: fe-exec.c:3026 #, c-format msgid "connection in wrong state" msgstr "Verbindung im falschen Zustand" -#: fe-exec.c:3064 +#: fe-exec.c:3069 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "kann Pipeline-Modus nicht einschalten, Verbindung ist nicht inaktiv" -#: fe-exec.c:3100 fe-exec.c:3121 +#: fe-exec.c:3105 fe-exec.c:3126 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "kann Pipeline-Modus nicht beenden, wegen nicht eingesammelter Ergebnisse" -#: fe-exec.c:3104 +#: fe-exec.c:3109 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "kann Pipeline-Modus nicht beenden während die Verbindung beschäftigt ist" -#: fe-exec.c:3115 +#: fe-exec.c:3120 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "kann Pipeline-Modus nicht beenden während COPY aktiv ist" -#: fe-exec.c:3314 +#: fe-exec.c:3319 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "Pipeline kann nicht gesendet werden, wenn der Pipeline-Modus aus ist" -#: fe-exec.c:3433 +#: fe-exec.c:3438 msgid "invalid ExecStatusType code" msgstr "ungültiger ExecStatusType-Kode" -#: fe-exec.c:3460 +#: fe-exec.c:3465 msgid "PGresult is not an error result\n" msgstr "PGresult ist kein Fehlerresultat\n" -#: fe-exec.c:3528 fe-exec.c:3551 +#: fe-exec.c:3533 fe-exec.c:3556 #, c-format msgid "column number %d is out of range 0..%d" msgstr "Spaltennummer %d ist außerhalb des zulässigen Bereichs 0..%d" -#: fe-exec.c:3566 +#: fe-exec.c:3571 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "Parameternummer %d ist außerhalb des zulässigen Bereichs 0..%d" -#: fe-exec.c:3877 +#: fe-exec.c:3882 #, c-format msgid "could not interpret result from server: %s" msgstr "konnte Ergebnis vom Server nicht interpretieren: %s" -#: fe-exec.c:4152 fe-exec.c:4266 +#: fe-exec.c:4157 fe-exec.c:4292 #, c-format msgid "incomplete multibyte character" msgstr "unvollständiges Mehrbyte-Zeichen" -#: fe-exec.c:4154 fe-exec.c:4285 +#: fe-exec.c:4159 fe-exec.c:4311 #, c-format msgid "invalid multibyte character" msgstr "ungültiges Mehrbytezeichen" +#: fe-exec.c:4413 +#, c-format +msgid "escaped string size exceeds the maximum allowed (%zu)" +msgstr "Größe der escapten Zeichenkette überschreitet erlaubtes Maximum (%zu)" + +#: fe-exec.c:4590 +#, c-format +msgid "escaped bytea size exceeds the maximum allowed (%zu)" +msgstr "Größe des escapten bytea-Wertes überschreitet erlaubtes Maximum (%zu)" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "GSSAPI-Namensimportfehler" @@ -1434,196 +1521,196 @@ msgstr "ungültiges Socket" msgid "%s() failed: %s" msgstr "%s() fehlgeschlagen: %s" -#: fe-protocol3.c:189 +#: fe-protocol3.c:190 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "Nachricht vom Typ 0x%02x kam vom Server im Ruhezustand" -#: fe-protocol3.c:402 +#: fe-protocol3.c:403 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "Server sendete Daten (»D«-Nachricht) ohne vorherige Zeilenbeschreibung (»T«-Nachricht)" -#: fe-protocol3.c:444 +#: fe-protocol3.c:445 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "unerwartete Antwort vom Server; erstes empfangenes Zeichen war »%c«" -#: fe-protocol3.c:468 +#: fe-protocol3.c:469 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "Nachrichteninhalt stimmt nicht mit Länge in Nachrichtentyp »%c« überein" -#: fe-protocol3.c:503 +#: fe-protocol3.c:504 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "Synchronisation mit Server verloren: Nachrichtentyp »%c« empfangen, Länge %d" -#: fe-protocol3.c:550 fe-protocol3.c:590 +#: fe-protocol3.c:551 fe-protocol3.c:591 msgid "insufficient data in \"T\" message" msgstr "nicht genug Daten in »T«-Nachricht" -#: fe-protocol3.c:661 fe-protocol3.c:867 +#: fe-protocol3.c:662 fe-protocol3.c:868 msgid "out of memory for query result" msgstr "Speicher für Anfrageergebnis aufgebraucht" -#: fe-protocol3.c:730 +#: fe-protocol3.c:731 msgid "insufficient data in \"t\" message" msgstr "nicht genug Daten in »t«-Nachricht" -#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 +#: fe-protocol3.c:790 fe-protocol3.c:822 fe-protocol3.c:840 msgid "insufficient data in \"D\" message" msgstr "nicht genug Daten in »D«-Nachricht" -#: fe-protocol3.c:795 +#: fe-protocol3.c:796 msgid "unexpected field count in \"D\" message" msgstr "unerwartete Feldzahl in »D«-Nachricht" -#: fe-protocol3.c:1051 +#: fe-protocol3.c:1052 msgid "no error message available\n" msgstr "keine Fehlermeldung verfügbar\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1099 fe-protocol3.c:1118 +#: fe-protocol3.c:1100 fe-protocol3.c:1119 #, c-format msgid " at character %s" msgstr " bei Zeichen %s" -#: fe-protocol3.c:1131 +#: fe-protocol3.c:1132 #, c-format msgid "DETAIL: %s\n" msgstr "DETAIL: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1135 #, c-format msgid "HINT: %s\n" msgstr "TIP: %s\n" -#: fe-protocol3.c:1137 +#: fe-protocol3.c:1138 #, c-format msgid "QUERY: %s\n" msgstr "ANFRAGE: %s\n" -#: fe-protocol3.c:1144 +#: fe-protocol3.c:1145 #, c-format msgid "CONTEXT: %s\n" msgstr "KONTEXT: %s\n" -#: fe-protocol3.c:1153 +#: fe-protocol3.c:1154 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "SCHEMANAME: %s\n" -#: fe-protocol3.c:1157 +#: fe-protocol3.c:1158 #, c-format msgid "TABLE NAME: %s\n" msgstr "TABELLENNAME: %s\n" -#: fe-protocol3.c:1161 +#: fe-protocol3.c:1162 #, c-format msgid "COLUMN NAME: %s\n" msgstr "SPALTENNAME: %s\n" -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1166 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "DATENTYPNAME: %s\n" -#: fe-protocol3.c:1169 +#: fe-protocol3.c:1170 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "CONSTRAINT-NAME: %s\n" -#: fe-protocol3.c:1181 +#: fe-protocol3.c:1182 msgid "LOCATION: " msgstr "ORT: " -#: fe-protocol3.c:1183 +#: fe-protocol3.c:1184 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1185 +#: fe-protocol3.c:1186 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1380 +#: fe-protocol3.c:1394 #, c-format msgid "LINE %d: " msgstr "ZEILE %d: " -#: fe-protocol3.c:1442 +#: fe-protocol3.c:1456 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Server verlangte Herabstufung auf eine Version mit einer höheren Nummer" -#: fe-protocol3.c:1448 +#: fe-protocol3.c:1462 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Server verlangte Herabstufung auf eine Protokollversion vor 3.0" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1469 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Server verlangte Herabstufung auf nicht existierende Protokollversion 3.1" -#: fe-protocol3.c:1461 +#: fe-protocol3.c:1475 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Server berichtete eine negative Anzahl nicht unterstützter Parameter" -#: fe-protocol3.c:1467 +#: fe-protocol3.c:1481 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Server hat verhandelt aber keine Änderungen verlangt" -#: fe-protocol3.c:1473 +#: fe-protocol3.c:1487 #, c-format msgid "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" msgstr "Server unterstützt nur Protokollversion %d.%d, aber »%s« war auf %d.%d gesetzt" -#: fe-protocol3.c:1498 +#: fe-protocol3.c:1512 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Server sendete nicht unterstützten Parameter ohne Präfix »%s« (»%s«)" -#: fe-protocol3.c:1501 +#: fe-protocol3.c:1515 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Server sendete nicht unterstützten Parameter, der nicht angefordert war (»%s«)" -#: fe-protocol3.c:1508 +#: fe-protocol3.c:1522 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Nachricht zu kurz" -#: fe-protocol3.c:1574 +#: fe-protocol3.c:1588 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d not allowed in protocol version 3.0 (must be 4 bytes)" msgstr "ungültige BackendKeyData-Nachricht empfangen: Stornierungsschlüssel mit Länge %d nicht erlaubt in Protokoll 3.0 (muss 4 Bytes sein)" -#: fe-protocol3.c:1581 +#: fe-protocol3.c:1595 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too short (minimum 4 bytes)" msgstr "ungültige BackendKeyData-Nachricht empfangen: Stornierungsschlüssel mit Länge %d ist zu kurz (Minimum 4 Bytes)" -#: fe-protocol3.c:1588 +#: fe-protocol3.c:1602 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too long (maximum 256 bytes)" msgstr "ungültige BackendKeyData-Nachricht empfangen: Stornierungsschlüssel mit Länge %d ist zu lang (Maximum 256 Bytes)" -#: fe-protocol3.c:1952 +#: fe-protocol3.c:1966 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: Text COPY OUT nicht ausgeführt" -#: fe-protocol3.c:2327 +#: fe-protocol3.c:2341 #, c-format msgid "protocol error: no function result" msgstr "Protokollfehler: kein Funktionsergebnis" -#: fe-protocol3.c:2339 +#: fe-protocol3.c:2353 #, c-format msgid "protocol error: id=0x%x" msgstr "Protokollfehler: id=0x%x" @@ -1674,12 +1761,12 @@ msgstr "GSSAPI-Wrap-Fehler" msgid "outgoing GSSAPI message would not use confidentiality" msgstr "ausgehende GSSAPI-Nachricht würde keine Vertraulichkeit verwenden" -#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:723 +#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:726 #, c-format msgid "client tried to send oversize GSSAPI packet (%zu > %zu)" msgstr "Client versuchte übergroßes GSSAPI-Paket zu senden (%zu > %zu)" -#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:599 +#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:602 #, c-format msgid "oversize GSSAPI packet sent by the server (%zu > %zu)" msgstr "übergroßes GSSAPI-Paket vom Server gesendet (%zu > %zu)" @@ -1693,11 +1780,11 @@ msgstr "GSSAPI-Unwrap-Fehler" msgid "incoming GSSAPI message did not use confidentiality" msgstr "eingehende GSSAPI-Nachricht verwendete keine Vertraulichkeit" -#: fe-secure-gssapi.c:662 +#: fe-secure-gssapi.c:665 msgid "could not initiate GSSAPI security context" msgstr "konnte GSSAPI-Sicherheitskontext nicht initiieren" -#: fe-secure-gssapi.c:712 +#: fe-secure-gssapi.c:715 msgid "GSSAPI size check error" msgstr "GSSAPI-Fehler bei der Größenprüfung" diff --git a/src/interfaces/libpq/po/es.po b/src/interfaces/libpq/po/es.po index fe453999387..f54844091bc 100644 --- a/src/interfaces/libpq/po/es.po +++ b/src/interfaces/libpq/po/es.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: libpq (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:10+0000\n" -"PO-Revision-Date: 2025-11-08 09:42+0100\n" +"POT-Creation-Date: 2026-02-06 23:10+0000\n" +"PO-Revision-Date: 2026-02-07 09:55+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -23,280 +23,214 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: BlackCAT 1.1\n" -#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#: ../libpq-oauth/oauth-curl.c:308 ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "falló la eliminación del “easy handle” de libcurl: %s" -#: ../libpq-oauth/oauth-curl.c:327 +#: ../libpq-oauth/oauth-curl.c:328 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "falló la limpieza del “multi handle” de libcurl: %s" -#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#: ../libpq-oauth/oauth-curl.c:394 ../libpq-oauth/oauth-curl.c:405 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "no se pudo establecer %s conexión OAuth: %s" -#: ../libpq-oauth/oauth-curl.c:412 +#: ../libpq-oauth/oauth-curl.c:416 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "no se pudo obtener %s de la respuesta OAuth: %s" -#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 +#: ../libpq-oauth/oauth-curl.c:485 fe-auth-oauth.c:209 fe-auth-oauth.c:271 +#: fe-auth-oauth.c:333 #, c-format -msgid "JSON is too deeply nested" -msgstr "JSON está anidado demasiado profundamente" +#| msgid "field \"%s\" is missing" +msgid "field \"%s\" must be a string" +msgstr "el campo «%s» debe ser una cadena" -#: ../libpq-oauth/oauth-curl.c:540 +#: ../libpq-oauth/oauth-curl.c:489 #, c-format -msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "error interno: se inició el campo '%s' antes de terminar el campo '%s'" +#| msgid "variable \"%s\" must have a numeric type" +msgid "field \"%s\" must be a number" +msgstr "el campo «%s» debe ser un número" -#: ../libpq-oauth/oauth-curl.c:567 +#: ../libpq-oauth/oauth-curl.c:493 #, c-format -msgid "field \"%s\" is duplicated" -msgstr "el campo %s está duplicado" +#| msgid "argument of %s must be an array of objects" +msgid "field \"%s\" must be an array of strings" +msgstr "el campo «%s» debe ser un array de cadenas" -#: ../libpq-oauth/oauth-curl.c:592 +#: ../libpq-oauth/oauth-curl.c:498 #, c-format -msgid "internal error: field '%s' still active at end of object" -msgstr "error interno: el campo '%s' sigue activo al final del objeto" +#| msgid "field \"%s\" is duplicated" +msgid "field \"%s\" has unexpected type" +msgstr "el campo «%s» tiene tipo inesperado" -#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 +#: ../libpq-oauth/oauth-curl.c:522 ../libpq-oauth/oauth-curl.c:632 +#: fe-auth-oauth.c:215 fe-auth-oauth.c:277 #, c-format -msgid "top-level element must be an object" -msgstr "el elemento de nivel superior debe ser un objeto" - -#: ../libpq-oauth/oauth-curl.c:648 -#, c-format -msgid "internal error: found unexpected array end while parsing field '%s'" -msgstr "error interno: se encontró un fin de array inesperado mientras se interpretaba el campo «%s»" - -#: ../libpq-oauth/oauth-curl.c:703 -#, c-format -msgid "internal error: scalar target found at nesting level %d" -msgstr "error interno: se encontró destino escalar en el nivel de anidamiento %d" +msgid "JSON is too deeply nested" +msgstr "JSON está anidado demasiado profundamente" -#: ../libpq-oauth/oauth-curl.c:713 +#: ../libpq-oauth/oauth-curl.c:574 fe-auth-oauth.c:324 #, c-format -msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "error interno: el campo escalar '%s' sería asignado dos veces" +msgid "field \"%s\" is duplicated" +msgstr "el campo %s está duplicado" -#: ../libpq-oauth/oauth-curl.c:735 +#: ../libpq-oauth/oauth-curl.c:614 ../libpq-oauth/oauth-curl.c:674 +#: fe-auth-oauth.c:264 fe-auth-oauth.c:298 #, c-format -msgid "internal error: array member found at nesting level %d" -msgstr "error interno: miembro de array encontrado en el nivel de anidamiento %d" +msgid "top-level element must be an object" +msgstr "el elemento de nivel superior debe ser un objeto" -#: ../libpq-oauth/oauth-curl.c:770 +#: ../libpq-oauth/oauth-curl.c:777 #, c-format msgid "no content type was provided" msgstr "no se entregó un tipo de contenido" -#: ../libpq-oauth/oauth-curl.c:809 +#: ../libpq-oauth/oauth-curl.c:816 #, c-format msgid "unexpected content type: \"%s\"" msgstr "tipo de contenido inesperado: «%s»" -#: ../libpq-oauth/oauth-curl.c:834 +#: ../libpq-oauth/oauth-curl.c:841 #, c-format msgid "response contains embedded NULLs" msgstr "la respuesta contiene caracteres NULL" -#: ../libpq-oauth/oauth-curl.c:844 +#: ../libpq-oauth/oauth-curl.c:851 #, c-format msgid "response is not valid UTF-8" msgstr "la respuesta no es UTF-8 válido" -#: ../libpq-oauth/oauth-curl.c:884 +#: ../libpq-oauth/oauth-curl.c:891 #, c-format msgid "field \"%s\" is missing" msgstr "falta el campo «%s»" -#: ../libpq-oauth/oauth-curl.c:1118 +#: ../libpq-oauth/oauth-curl.c:1097 +#| msgid "failed to send SSL negotiation response: %m" +msgid "failed to parse token error response" +msgstr "no se pudo interpretar la respuesta de error de token" + +#: ../libpq-oauth/oauth-curl.c:1125 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "el proveedor rechazó el oauth_client_secret" -#: ../libpq-oauth/oauth-curl.c:1182 -#, c-format -msgid "failed to create epoll set: %m" -msgstr "no se pudo crear el grupo de “epoll”: %m" - -#: ../libpq-oauth/oauth-curl.c:1189 -#, c-format -msgid "failed to create timerfd: %m" -msgstr "no se pudo crear el “timerfd”: %m" - -#: ../libpq-oauth/oauth-curl.c:1195 +#: ../libpq-oauth/oauth-curl.c:1126 #, c-format -msgid "failed to add timerfd to epoll set: %m" -msgstr "no se pudo agregar el “timerfd” al grupo de “epoll”: %m" +#| msgid "provider rejected the oauth_client_secret" +msgid "provider requires client authentication, and no oauth_client_secret is set" +msgstr "el proveedor requiere autenticación de cliente, y no hay ningún oauth_client_secret definido" -#. translator: the term "kqueue" (kernel queue) should not be translated -#: ../libpq-oauth/oauth-curl.c:1205 -#, c-format -msgid "failed to create kqueue: %m" -msgstr "no se pudo crear el “kqueue”: %m" - -#: ../libpq-oauth/oauth-curl.c:1218 -#, c-format -msgid "failed to create timer kqueue: %m" -msgstr "no se pudo crear el temporizador ”kqueue”: %m" - -#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 -#, c-format -msgid "unknown libcurl socket operation: %d" -msgstr "operación de socket libcurl desconocida: %d" - -#: ../libpq-oauth/oauth-curl.c:1279 -#, c-format -msgid "could not add to epoll set: %m" -msgstr "no se pudo agregar al grupo de ”epoll”: %m" - -#: ../libpq-oauth/oauth-curl.c:1283 -#, c-format -msgid "could not delete from epoll set: %m" -msgstr "no se pudo borrar el grupo de “epoll”: %m" - -#: ../libpq-oauth/oauth-curl.c:1287 -#, c-format -msgid "could not update epoll set: %m" -msgstr "no se pudo actualizar el grupo de “epoll”: %m" - -#: ../libpq-oauth/oauth-curl.c:1347 -#, c-format -msgid "could not modify kqueue: %m" -msgstr "no se pudo modificar el “kqueue”: %m" - -#: ../libpq-oauth/oauth-curl.c:1371 -#, c-format -msgid "could not delete from kqueue: %m" -msgstr "no se pudo borrar del “kqueue”: %m" - -#: ../libpq-oauth/oauth-curl.c:1374 -#, c-format -msgid "could not add to kqueue: %m" -msgstr "no se pudo agregar al “kqueue”: %m" - -#: ../libpq-oauth/oauth-curl.c:1423 -#, c-format -msgid "could not comb kqueue: %m" -msgstr "no se pudo “rastrear” el “kqueue”: %m" - -#: ../libpq-oauth/oauth-curl.c:1473 -#, c-format -msgid "setting timerfd to %ld: %m" -msgstr "definiendo “timerfd” a %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1503 -#, c-format -msgid "deleting kqueue timer: %m" -msgstr "eliminando el temporizador “kqueue”: %m" - -#: ../libpq-oauth/oauth-curl.c:1510 -#, c-format -msgid "removing kqueue timer from multiplexer: %m" -msgstr "eliminando el temporizador “kqueue” del multiplexor: %m" - -#: ../libpq-oauth/oauth-curl.c:1521 -#, c-format -msgid "setting kqueue timer to %ld: %m" -msgstr "definiendo el temporizador “kqueue” a %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1528 -#, c-format -msgid "adding kqueue timer to multiplexer: %m" -msgstr "agregando el temporizador ”kqueue” al multiplexor: %m" - -#: ../libpq-oauth/oauth-curl.c:1553 +#: ../libpq-oauth/oauth-curl.c:1559 #, c-format msgid "checking timer expiration: %m" msgstr "verificando la expiración del temporizador: %m" -#: ../libpq-oauth/oauth-curl.c:1715 +#: ../libpq-oauth/oauth-curl.c:1721 #, c-format msgid "failed to create libcurl multi handle" msgstr "no se pudo crear el “multi handle” de libcurl" -#: ../libpq-oauth/oauth-curl.c:1735 +#: ../libpq-oauth/oauth-curl.c:1741 #, c-format msgid "failed to create libcurl handle" msgstr "no se pudo crear el “handle” de libcurl" -#: ../libpq-oauth/oauth-curl.c:1819 ../libpq-oauth/oauth-curl.c:1860 -#: ../libpq-oauth/oauth-curl.c:2173 ../libpq-oauth/oauth-curl.c:2334 -#: ../libpq-oauth/oauth-curl.c:2395 ../libpq-oauth/oauth-curl.c:2484 -#: ../libpq-oauth/oauth-curl.c:2778 ../libpq-oauth/oauth-curl.c:2995 +#: ../libpq-oauth/oauth-curl.c:1825 ../libpq-oauth/oauth-curl.c:1866 +#: ../libpq-oauth/oauth-curl.c:2184 ../libpq-oauth/oauth-curl.c:2345 +#: ../libpq-oauth/oauth-curl.c:2406 ../libpq-oauth/oauth-curl.c:2495 +#: ../libpq-oauth/oauth-curl.c:2789 ../libpq-oauth/oauth-curl.c:3006 +#: fe-auth-oauth.c:146 fe-auth-oauth.c:489 fe-auth-oauth.c:561 +#: fe-auth-oauth.c:723 fe-auth-oauth.c:1016 fe-auth-oauth.c:1029 +#: fe-auth-oauth.c:1117 fe-auth-oauth.c:1130 fe-auth-oauth.c:1266 #: fe-auth-scram.c:374 fe-auth-scram.c:447 fe-auth-scram.c:599 #: fe-auth-scram.c:619 fe-auth-scram.c:643 fe-auth-scram.c:657 #: fe-auth-scram.c:703 fe-auth-scram.c:739 fe-auth-scram.c:931 fe-auth.c:308 #: fe-auth.c:382 fe-auth.c:416 fe-auth.c:694 fe-auth.c:827 fe-auth.c:1330 -#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1011 fe-connect.c:1051 -#: fe-connect.c:2171 fe-connect.c:2333 fe-connect.c:3726 fe-connect.c:5182 -#: fe-connect.c:5495 fe-connect.c:5750 fe-connect.c:5868 fe-connect.c:6115 -#: fe-connect.c:6195 fe-connect.c:6293 fe-connect.c:6544 fe-connect.c:6571 -#: fe-connect.c:6647 fe-connect.c:6670 fe-connect.c:6694 fe-connect.c:6729 -#: fe-connect.c:6815 fe-connect.c:6823 fe-connect.c:7180 fe-connect.c:7362 -#: fe-exec.c:530 fe-exec.c:1326 fe-exec.c:3265 fe-exec.c:4304 fe-exec.c:4470 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:211 fe-protocol3.c:234 -#: fe-protocol3.c:257 fe-protocol3.c:274 fe-protocol3.c:295 fe-protocol3.c:369 -#: fe-protocol3.c:750 fe-protocol3.c:990 fe-protocol3.c:1542 -#: fe-protocol3.c:1596 fe-protocol3.c:1642 fe-protocol3.c:1663 -#: fe-protocol3.c:1920 fe-protocol3.c:2321 fe-secure-common.c:110 +#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1012 fe-connect.c:1052 +#: fe-connect.c:2172 fe-connect.c:2334 fe-connect.c:3727 fe-connect.c:5183 +#: fe-connect.c:5496 fe-connect.c:5765 fe-connect.c:5883 fe-connect.c:6130 +#: fe-connect.c:6210 fe-connect.c:6308 fe-connect.c:6559 fe-connect.c:6586 +#: fe-connect.c:6662 fe-connect.c:6685 fe-connect.c:6709 fe-connect.c:6744 +#: fe-connect.c:6830 fe-connect.c:6838 fe-connect.c:7195 fe-connect.c:7377 +#: fe-exec.c:530 fe-exec.c:1331 fe-exec.c:3270 fe-exec.c:4341 fe-exec.c:4534 +#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:212 fe-protocol3.c:235 +#: fe-protocol3.c:258 fe-protocol3.c:275 fe-protocol3.c:296 fe-protocol3.c:370 +#: fe-protocol3.c:751 fe-protocol3.c:991 fe-protocol3.c:1556 +#: fe-protocol3.c:1610 fe-protocol3.c:1656 fe-protocol3.c:1677 +#: fe-protocol3.c:1934 fe-protocol3.c:2335 fe-secure-common.c:110 #: fe-secure-gssapi.c:508 fe-secure-gssapi.c:699 fe-secure-openssl.c:405 #: fe-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "memoria agotada" -#: ../libpq-oauth/oauth-curl.c:1847 +#: ../libpq-oauth/oauth-curl.c:1853 #, c-format msgid "response is too large" msgstr "la respuesta es demasiado grande" -#: ../libpq-oauth/oauth-curl.c:1889 +#: ../libpq-oauth/oauth-curl.c:1895 #, c-format msgid "failed to queue HTTP request: %s" msgstr "no se pudo encolar la petición HTTP: %s" -#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#: ../libpq-oauth/oauth-curl.c:1912 ../libpq-oauth/oauth-curl.c:1970 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "petición HTTP asíncrona falló: %s" -#: ../libpq-oauth/oauth-curl.c:2011 +#: ../libpq-oauth/oauth-curl.c:2022 #, c-format msgid "no result was retrieved for the finished handle" msgstr "no se obtuvo ningún resultado desde el “handle” terminado" -#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 -#: ../libpq-oauth/oauth-curl.c:2529 +#: ../libpq-oauth/oauth-curl.c:2155 ../libpq-oauth/oauth-curl.c:2461 +#: ../libpq-oauth/oauth-curl.c:2540 #, c-format msgid "unexpected response code %ld" msgstr "código de respuesta %ld inesperado" -#: ../libpq-oauth/oauth-curl.c:2216 +#: ../libpq-oauth/oauth-curl.c:2162 +msgid "failed to parse OpenID discovery document" +msgstr "no se pudo interpretar el documento de descubrimiento OpenID" + +#: ../libpq-oauth/oauth-curl.c:2227 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "el identificador del emisor (%s) no coincide con oauth_issuer «%s»" -#: ../libpq-oauth/oauth-curl.c:2243 +#: ../libpq-oauth/oauth-curl.c:2254 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "el emisor «%s» no provee un “endpoint” de autorización de dispositivo" -#: ../libpq-oauth/oauth-curl.c:2269 +#: ../libpq-oauth/oauth-curl.c:2280 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "el “endpoint” de autorización de dispositivo «%s» debe usar HTTPS" -#: ../libpq-oauth/oauth-curl.c:2278 +#: ../libpq-oauth/oauth-curl.c:2289 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "el punto de término de token «%s» debe usar HTTPS" -#: ../libpq-oauth/oauth-curl.c:2587 +#: ../libpq-oauth/oauth-curl.c:2430 +#| msgid "issuer \"%s\" does not provide a device authorization endpoint" +msgid "failed to parse device authorization" +msgstr "no se pudo interpretar la autorización de dispositivo" + +#: ../libpq-oauth/oauth-curl.c:2518 +#| msgid "failed to send SSL negotiation response: %m" +msgid "failed to parse access token response" +msgstr "no se pudo interpretar la respuesta de token de acceso" + +#: ../libpq-oauth/oauth-curl.c:2598 #, c-format msgid "slow_down interval overflow" msgstr "desbordamiento del intervalo de “slow_down”" @@ -304,27 +238,27 @@ msgstr "desbordamiento del intervalo de “slow_down”" #. translator: The first %s is a URL for the user to visit in a #. browser, and the second %s is a code to be copy-pasted there. #. -#: ../libpq-oauth/oauth-curl.c:2623 +#: ../libpq-oauth/oauth-curl.c:2634 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "Visit %s e ingrese el código: %s\n" -#: ../libpq-oauth/oauth-curl.c:2628 +#: ../libpq-oauth/oauth-curl.c:2639 #, c-format msgid "device prompt failed" msgstr "la petición en el dispositivo falló" -#: ../libpq-oauth/oauth-curl.c:2684 +#: ../libpq-oauth/oauth-curl.c:2695 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init falló anteriormente mientras se establecía OAuth" -#: ../libpq-oauth/oauth-curl.c:2703 +#: ../libpq-oauth/oauth-curl.c:2714 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init falló mientras se establecía OAuth" -#: ../libpq-oauth/oauth-curl.c:2724 +#: ../libpq-oauth/oauth-curl.c:2735 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -339,6 +273,167 @@ msgstr "" "\treporta que no lo es. Recompile libpq contra la versión instalada\n" "\tde libcurl." +#: ../libpq-oauth/oauth-curl.c:2897 +msgid "failed to fetch OpenID discovery document" +msgstr "no se pudo obtener el documento de descubrimiento OpenID" + +#: ../libpq-oauth/oauth-curl.c:2911 +#| msgid "%s cannot run inside a subtransaction" +msgid "cannot run OAuth device authorization" +msgstr "no se puede ejecutar la autorización de dispositivo OAuth" + +#: ../libpq-oauth/oauth-curl.c:2915 +msgid "failed to obtain device authorization" +msgstr "no se pudo obtener la autorización de dispositivo" + +#: ../libpq-oauth/oauth-curl.c:2926 ../libpq-oauth/oauth-curl.c:2977 +msgid "failed to obtain access token" +msgstr "no se pudo obtener el token de acceso" + +#: fe-auth-oauth.c:133 +#, c-format +#| msgid "internal error in OAuth validator module" +msgid "internal error: no OAuth token was set for the connection" +msgstr "error interno: no se definió un token OAuth para la conexión" + +#: fe-auth-oauth.c:396 +#, c-format +#| msgid "token endpoint \"%s\" must use HTTPS" +msgid "OAuth discovery URI \"%s\" must use HTTPS" +msgstr "la URI de descubrimiento OAuth «%s» debe usar HTTPS" + +#: fe-auth-oauth.c:413 +#, c-format +msgid "OAuth discovery URI \"%s\" must not contain query or fragment components" +msgstr "la URI de descubrimiento OAuth «%s» no debe contener componentes de “query” o fragmentos" + +#: fe-auth-oauth.c:428 +#, c-format +msgid "OAuth discovery URI \"%s\" is not a .well-known URI" +msgstr "la URI de descubrimiento OAuth «%s» no es una URI .well-known" + +#: fe-auth-oauth.c:454 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an unsupported .well-known suffix" +msgstr "la URI de descubrimiento OAuth «%s» usa un sufijo .well-known no soportado" + +#: fe-auth-oauth.c:479 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an invalid format" +msgstr "la URI de descubrimiento OAuth «%s» usa un formato no válido" + +#: fe-auth-oauth.c:528 +#, c-format +msgid "server's error message contained an embedded NULL, and was discarded" +msgstr "el mensaje de error del servidor contenía un NULL embebido, y fue descartado" + +#: fe-auth-oauth.c:539 +#, c-format +#| msgid "response is not valid UTF-8" +msgid "server's error response is not valid UTF-8" +msgstr "la respuesta de error del servidor no es UTF-8 válido" + +#: fe-auth-oauth.c:579 +#, c-format +#| msgid "failed to get %s from OAuth response: %s" +msgid "failed to parse server's error response: %s" +msgstr "no se pudo interpretar la respuesta de error del servidor: %s" + +#: fe-auth-oauth.c:610 +#, c-format +#| msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" +msgid "server's discovery document at %s (issuer \"%s\") is incompatible with oauth_issuer (%s)" +msgstr "el documento de descubrimiento del servidor en %s (emisor «%s») es incompatible con oauth_issuer (%s)" + +#: fe-auth-oauth.c:631 +#, c-format +msgid "server's discovery document has moved to %s (previous location was %s)" +msgstr "el documento de descubrimiento del servidor se ha movido a %s (la ubicación previa era %s)" + +#: fe-auth-oauth.c:652 +#, c-format +#| msgid "server sent an error response during SSL exchange" +msgid "server sent error response without a status" +msgstr "el servidor envió una respuesta de error sin un status" + +#: fe-auth-oauth.c:663 +#, c-format +#| msgid "malformed JSON array" +msgid "server rejected OAuth bearer token: %s" +msgstr "el servidor rechazó el token OAuth “bearer”: %s" + +#: fe-auth-oauth.c:696 +#, c-format +msgid "user-defined OAuth flow provided neither a token nor an async callback" +msgstr "el flujo OAuth definido por el usuario no proveyó un token ni un “callback” asíncrono" + +#: fe-auth-oauth.c:703 fe-auth-oauth.c:1041 +#, c-format +#| msgid "reading user-defined operator families" +msgid "user-defined OAuth flow failed" +msgstr "el flujo OAuth definido por el usuario falló" + +#: fe-auth-oauth.c:716 +#, c-format +msgid "user-defined OAuth flow did not provide a token" +msgstr "el flujo OAuth definido por el usuario no proveyó un token" + +#: fe-auth-oauth.c:734 +#, c-format +#| msgid "internal error: async authentication did not set a socket for polling" +msgid "user-defined OAuth flow did not provide a socket for polling" +msgstr "el flujo OAuth definido por el usuario no proveyó un socket para polling" + +#: fe-auth-oauth.c:917 +#, c-format +#| msgid "failed to create kqueue: %m" +msgid "failed to lock mutex (%d)" +msgstr "no se pudo bloquear el mutex (%d)" + +#: fe-auth-oauth.c:1046 +#, c-format +msgid "no OAuth flows are available (try installing the libpq-oauth package)" +msgstr "no hay flujos OAuth disponibles (intente instalar el paquete libpq-oauth)" + +#: fe-auth-oauth.c:1095 +#, c-format +msgid "server requires OAuth authentication, but oauth_issuer and oauth_client_id are not both set" +msgstr "el servidor requiere autenticación OAuth, pero oauth_issuer y oauth_client_id no están ambos definidos" + +#: fe-auth-oauth.c:1255 +#, c-format +msgid "server sent unexpected additional OAuth data" +msgstr "el servidor envió datos OAuth adicionales inesperados" + +#: fe-auth-oauth.c:1295 +#, c-format +msgid "server requires OAuth authentication, but no discovery metadata was provided" +msgstr "el servidor requiere autenticación OAuth, pero no se proveyó metadatos de descubrimiento" + +#: fe-auth-oauth.c:1333 +#, c-format +#| msgid "internal error: async authentication did not set a socket for polling" +msgid "internal error: OAuth flow did not set a token" +msgstr "error interno: el flujo OAuth no definió un token" + +#: fe-auth-oauth.c:1351 +#, c-format +#| msgid "Message contains additional data after the final terminator." +msgid "server sent additional OAuth data after error" +msgstr "el servidor envió datos OAuth adicionales después del error" + +#: fe-auth-oauth.c:1355 +#, c-format +#| msgid "invalid SCRAM exchange state" +msgid "invalid OAuth exchange state" +msgstr "estado de intercambio OAuth no válido" + +#: fe-auth-oauth.c:1368 +#, c-format +#| msgid "no connection to the server" +msgid "retrying connection with new bearer token" +msgstr "reintentando la conexión con el nuevo token “bearer”" + #: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" @@ -664,695 +759,710 @@ msgstr "petición de cancelación ya fue enviada en esta conexión" msgid "unexpected response from server" msgstr "respuesta inesperada del servidor" -#: fe-connect.c:1308 +#: fe-connect.c:1309 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "no se pudo emparejar %d nombres de host a %d direcciones de host" -#: fe-connect.c:1388 +#: fe-connect.c:1389 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "no se pudo emparejar %d números de puertos a %d hosts" -#: fe-connect.c:1516 +#: fe-connect.c:1517 #, c-format msgid "negative require_auth method \"%s\" cannot be mixed with non-negative methods" msgstr "el método negativo require_auth «%s» no puede mezclarse con métodos no negativos" -#: fe-connect.c:1529 +#: fe-connect.c:1530 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "el método require_auth «%s» no puede mezclarse con métodos negativos" -#: fe-connect.c:1605 fe-connect.c:1734 fe-connect.c:1776 fe-connect.c:1819 -#: fe-connect.c:1922 fe-connect.c:1968 fe-connect.c:2008 fe-connect.c:2075 -#: fe-connect.c:8248 +#: fe-connect.c:1606 fe-connect.c:1735 fe-connect.c:1777 fe-connect.c:1820 +#: fe-connect.c:1923 fe-connect.c:1969 fe-connect.c:2009 fe-connect.c:2076 +#: fe-connect.c:8263 #, c-format msgid "invalid %s value: \"%s\"" msgstr "valor %s no válido: «%s»" -#: fe-connect.c:1647 +#: fe-connect.c:1648 #, c-format msgid "internal error: no space in allowed_sasl_mechs" msgstr "error interno: no hay espacio en allowed_sasl_mechs" -#: fe-connect.c:1686 +#: fe-connect.c:1687 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "el método “require_auth” «%s» se especifica más de una vez" -#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 +#: fe-connect.c:1758 fe-connect.c:1797 fe-connect.c:1829 fe-connect.c:1931 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "el valor «%2$s» de %1$s no es válido cuando el soporte SSL no está compilado" -#: fe-connect.c:1848 +#: fe-connect.c:1849 #, c-format msgid "weak sslmode \"%s\" may not be used with sslnegotiation=direct (use \"require\", \"verify-ca\", or \"verify-full\")" msgstr "el sslmode «%s» débil no puede usarse con sslnegotiation=direct (use «require», «verify-ca» o «verify-full»)" -#: fe-connect.c:1870 +#: fe-connect.c:1871 #, c-format msgid "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-full\")" msgstr "el sslmode «%s» débil no puede usarse con sslrootcert=system (use «verify-full»)" -#: fe-connect.c:1883 fe-connect.c:1891 +#: fe-connect.c:1884 fe-connect.c:1892 #, c-format msgid "invalid \"%s\" value: \"%s\"" msgstr "valor «%s» no válido: «%s»" -#: fe-connect.c:1908 +#: fe-connect.c:1909 #, c-format msgid "invalid SSL protocol version range" msgstr "rango de versión de protocolo SSL no válido " -#: fe-connect.c:1945 +#: fe-connect.c:1946 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "el valor «%s» de %s no está soportado (verifique la versión de OpenSSL)" -#: fe-connect.c:1975 +#: fe-connect.c:1976 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "el valor gssencmode «%s» no es válido cuando no se ha compilado con soporte GSSAPI" -#: fe-connect.c:2029 +#: fe-connect.c:2030 #, c-format msgid "invalid SCRAM client key" msgstr "llave de cliente SCRAM no válida" -#: fe-connect.c:2034 +#: fe-connect.c:2035 #, c-format msgid "invalid SCRAM client key length: %d" msgstr "largo de llave de cliente SCRAM no válido: %d" -#: fe-connect.c:2052 +#: fe-connect.c:2053 #, c-format msgid "invalid SCRAM server key" msgstr "llave de servidor SCRAM no válida" -#: fe-connect.c:2057 +#: fe-connect.c:2058 #, c-format msgid "invalid SCRAM server key length: %d" msgstr "largo de llave de servidor SCRAM no válido: %d" -#: fe-connect.c:2144 +#: fe-connect.c:2145 #, c-format msgid "\"%s\" is greater than \"%s\"" msgstr "«%s» es mayor que «%s»" -#: fe-connect.c:2356 +#: fe-connect.c:2357 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "no se pudo establecer el socket en modo TCP sin retardo: %s" -#: fe-connect.c:2415 +#: fe-connect.c:2416 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "falló la conexión al servidor en el socket «%s»: " -#: fe-connect.c:2441 +#: fe-connect.c:2442 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "falló la conexión al servidor en «%s» (%s), puerto %s: " -#: fe-connect.c:2446 +#: fe-connect.c:2447 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "falló la conexión al servidor en «%s», puerto %s: " -#: fe-connect.c:2469 +#: fe-connect.c:2470 #, c-format msgid "\tIs the server running locally and accepting connections on that socket?" msgstr "\t¿Está el servidor en ejecución localmente y aceptando conexiones en ese socket?" -#: fe-connect.c:2471 +#: fe-connect.c:2472 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "\t¿Está el servidor en ejecución en ese host y aceptando conexiones TCP/IP?" -#: fe-connect.c:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 -#: fe-connect.c:3410 +#: fe-connect.c:2518 fe-connect.c:2552 fe-connect.c:2587 fe-connect.c:2685 +#: fe-connect.c:3411 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s) falló: %s" -#: fe-connect.c:2650 +#: fe-connect.c:2651 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) falló: código de error %d" -#: fe-connect.c:2962 +#: fe-connect.c:2963 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "el estado de conexión no es válido, probablemente por corrupción de memoria" -#: fe-connect.c:3045 +#: fe-connect.c:3046 #, c-format msgid "invalid port number: \"%s\"" msgstr "número de puerto no válido: «%s»" -#: fe-connect.c:3059 +#: fe-connect.c:3060 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "no se pudo traducir el nombre «%s» a una dirección: %s" -#: fe-connect.c:3071 +#: fe-connect.c:3072 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "no se pudo interpretar la dirección de red «%s»: %s" -#: fe-connect.c:3082 +#: fe-connect.c:3083 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "la ruta al socket de dominio Unix «%s» es demasiado larga (máximo %d bytes)" -#: fe-connect.c:3096 +#: fe-connect.c:3097 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "no se pudo traducir la ruta del socket Unix «%s» a una dirección: %s" -#: fe-connect.c:3262 fe-connect.c:4709 +#: fe-connect.c:3263 fe-connect.c:4710 #, c-format msgid "GSSAPI encryption required but it is not supported over a local socket" msgstr "cifrado GSSAPI requerido pero no está soportado en un socket local" -#: fe-connect.c:3270 fe-connect.c:4838 +#: fe-connect.c:3271 fe-connect.c:4839 #, c-format msgid "GSSAPI encryption required but no credential cache" msgstr "cifrado GSSAPI requerido pero no hay caché de credenciales" -#: fe-connect.c:3338 +#: fe-connect.c:3339 #, c-format msgid "could not create socket: %s" msgstr "no se pudo crear el socket: %s" -#: fe-connect.c:3369 +#: fe-connect.c:3370 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "no se pudo establecer el socket en modo no bloqueante: %s" -#: fe-connect.c:3380 +#: fe-connect.c:3381 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "no se pudo poner el socket en modo close-on-exec: %s" -#: fe-connect.c:3537 +#: fe-connect.c:3538 #, c-format msgid "could not get socket error status: %s" msgstr "no se pudo determinar el estado de error del socket: %s" -#: fe-connect.c:3564 +#: fe-connect.c:3565 #, c-format msgid "could not get client address from socket: %s" msgstr "no se pudo obtener la dirección del cliente desde el socket: %s" -#: fe-connect.c:3590 +#: fe-connect.c:3591 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "el parámetro requirepeer no está soportado en esta plataforma" -#: fe-connect.c:3592 +#: fe-connect.c:3593 #, c-format msgid "could not get peer credentials: %s" msgstr "no se pudo obtener credenciales de la contraparte: %s" -#: fe-connect.c:3605 +#: fe-connect.c:3606 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "requirepeer especifica «%s», pero el nombre de usuario de la contraparte es «%s»" -#: fe-connect.c:3643 +#: fe-connect.c:3644 #, c-format msgid "could not send GSSAPI negotiation packet: %s" msgstr "no se pudo enviar el paquete de negociación GSSAPI: %s" -#: fe-connect.c:3682 +#: fe-connect.c:3683 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "no se pudo enviar el paquete de negociación SSL: %s" -#: fe-connect.c:3708 +#: fe-connect.c:3709 #, c-format msgid "could not send cancel packet: %s" msgstr "no se pudo enviar el paquete de cancelación: %s" -#: fe-connect.c:3738 +#: fe-connect.c:3739 #, c-format msgid "could not send startup packet: %s" msgstr "no se pudo enviar el paquete de inicio: %s" -#: fe-connect.c:3811 +#: fe-connect.c:3812 msgid "server does not support SSL, but SSL was required" msgstr "el servidor no soporta SSL, pero SSL es requerida" -#: fe-connect.c:3821 +#: fe-connect.c:3822 #, c-format msgid "server sent an error response during SSL exchange" msgstr "el servidor envió una respuesta de error durante el intercambio SSL" -#: fe-connect.c:3826 +#: fe-connect.c:3827 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "se ha recibido una respuesta no válida en la negociación SSL: %c" -#: fe-connect.c:3846 +#: fe-connect.c:3847 #, c-format msgid "received unencrypted data after SSL response" msgstr "se recibieron datos no cifrados después de la respuesta SSL" -#: fe-connect.c:3909 +#: fe-connect.c:3910 #, c-format msgid "server sent an error response during GSS encryption exchange" msgstr "el servidor envió una respuesta de error durante un intercambio de cifrado GSS" -#: fe-connect.c:3927 +#: fe-connect.c:3928 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "el servidor no soporta cifrado GSSAPI, pero es requerida" -#: fe-connect.c:3931 +#: fe-connect.c:3932 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "se ha recibido una respuesta no válida en la negociación GSSAPI: %c" -#: fe-connect.c:3953 +#: fe-connect.c:3954 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "se recibieron datos no cifrados después de la respuesta de cifrado GSSAPI" -#: fe-connect.c:4014 +#: fe-connect.c:4015 #, c-format msgid "expected authentication request from server, but received %c" msgstr "se esperaba una petición de autentificación desde el servidor, pero se ha recibido %c" -#: fe-connect.c:4042 fe-connect.c:4174 +#: fe-connect.c:4043 fe-connect.c:4175 #, c-format msgid "received invalid authentication request" msgstr "se recibió una solicitud de autentificación no válida" -#: fe-connect.c:4048 +#: fe-connect.c:4049 #, c-format msgid "received invalid protocol negotiation message" msgstr "se recibió un mensaje de negociación de protocolo no válido" -#: fe-connect.c:4067 fe-connect.c:4121 +#: fe-connect.c:4068 fe-connect.c:4122 #, c-format msgid "received invalid error message" msgstr "se recibió un mensaje de error no válido" -#: fe-connect.c:4151 +#: fe-connect.c:4152 #, c-format msgid "received duplicate protocol negotiation message" msgstr "se recibió un mensaje de negociación de protocolo duplicado" -#: fe-connect.c:4253 +#: fe-connect.c:4254 #, c-format msgid "internal error: async authentication has no handler" msgstr "error interno: la autentificación async no tiene manejador" -#: fe-connect.c:4278 +#: fe-connect.c:4279 #, c-format msgid "internal error: async cleanup did not release polling socket" msgstr "error interno: la limpieza async no liberó el socket de polling" -#: fe-connect.c:4301 +#: fe-connect.c:4302 #, c-format msgid "internal error: async authentication did not set a socket for polling" msgstr "error interno: la autentificación async no definió un socket para polling" -#: fe-connect.c:4334 +#: fe-connect.c:4335 #, c-format msgid "unexpected message from server during startup" msgstr "se ha recibido un mensaje inesperado del servidor durante el inicio" -#: fe-connect.c:4425 +#: fe-connect.c:4426 #, c-format msgid "session is read-only" msgstr "la sesión es de solo lectura" -#: fe-connect.c:4427 +#: fe-connect.c:4428 #, c-format msgid "session is not read-only" msgstr "la sesión no es de solo lectura" -#: fe-connect.c:4480 +#: fe-connect.c:4481 #, c-format msgid "server is in hot standby mode" msgstr "el servidor está en modo hot standby" -#: fe-connect.c:4482 +#: fe-connect.c:4483 #, c-format msgid "server is not in hot standby mode" msgstr "el servidor no está en modo hot standby" -#: fe-connect.c:4607 fe-connect.c:4657 +#: fe-connect.c:4608 fe-connect.c:4658 #, c-format msgid "\"%s\" failed" msgstr "«%s» falló" -#: fe-connect.c:4671 +#: fe-connect.c:4672 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "estado de conexión no válido %d, probablemente por corrupción de memoria" -#: fe-connect.c:5508 +#: fe-connect.c:5509 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "URL LDAP no válida «%s»: el esquema debe ser ldap://" -#: fe-connect.c:5523 +#: fe-connect.c:5524 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "URL LDAP no válida «%s»: distinguished name faltante" -#: fe-connect.c:5535 fe-connect.c:5593 +#: fe-connect.c:5536 fe-connect.c:5594 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "URL LDAP no válida «%s»: debe tener exactamente un atributo" -#: fe-connect.c:5547 fe-connect.c:5609 +#: fe-connect.c:5548 fe-connect.c:5610 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "URL LDAP no válida «%s»: debe tener ámbito de búsqueda (base/one/sub)" -#: fe-connect.c:5559 +#: fe-connect.c:5560 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "URL LDAP no válida «%s»: no tiene filtro" -#: fe-connect.c:5581 +#: fe-connect.c:5582 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "URL LDAP no válida «%s»: número de puerto no válido" -#: fe-connect.c:5618 +#: fe-connect.c:5619 #, c-format msgid "could not create LDAP structure" msgstr "no se pudo crear estructura LDAP" -#: fe-connect.c:5693 +#: fe-connect.c:5694 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "búsqueda en servidor LDAP falló: %s" -#: fe-connect.c:5703 +#: fe-connect.c:5704 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "se encontro más de una entrada en búsqueda LDAP" -#: fe-connect.c:5705 fe-connect.c:5716 +#: fe-connect.c:5706 fe-connect.c:5717 #, c-format msgid "no entry found on LDAP lookup" msgstr "no se encontró ninguna entrada en búsqueda LDAP" -#: fe-connect.c:5726 fe-connect.c:5738 +#: fe-connect.c:5727 fe-connect.c:5739 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "la búsqueda LDAP entregó atributo sin valores" -#: fe-connect.c:5789 fe-connect.c:5808 fe-connect.c:6332 +#: fe-connect.c:5753 +#, c-format +msgid "connection info string size exceeds the maximum allowed (%d)" +msgstr "el tamaño de la cadena de conexión excede el máximo permitido (%d)" + +#: fe-connect.c:5804 fe-connect.c:5823 fe-connect.c:6347 #, c-format msgid "missing \"=\" after \"%s\" in connection info string" msgstr "falta «=» después de «%s» en la cadena de información de la conexión" -#: fe-connect.c:5879 fe-connect.c:6515 fe-connect.c:7345 +#: fe-connect.c:5894 fe-connect.c:6530 fe-connect.c:7360 #, c-format msgid "invalid connection option \"%s\"" msgstr "opción de conexión no válida «%s»" -#: fe-connect.c:5894 fe-connect.c:6380 +#: fe-connect.c:5909 fe-connect.c:6395 #, c-format msgid "unterminated quoted string in connection info string" msgstr "cadena de caracteres entre comillas sin terminar en la cadena de información de conexión" -#: fe-connect.c:5974 +#: fe-connect.c:5989 #, c-format msgid "definition of service \"%s\" not found" msgstr "la definición de servicio «%s» no fue encontrada" -#: fe-connect.c:6000 +#: fe-connect.c:6015 #, c-format msgid "service file \"%s\" not found" msgstr "el archivo de servicio «%s» no fue encontrado" -#: fe-connect.c:6013 +#: fe-connect.c:6028 #, c-format msgid "line %d too long in service file \"%s\"" msgstr "la línea %d es demasiado larga en archivo de servicio «%s»" -#: fe-connect.c:6084 fe-connect.c:6127 +#: fe-connect.c:6099 fe-connect.c:6142 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "error de sintaxis en archivo de servicio «%s», línea %d" -#: fe-connect.c:6095 +#: fe-connect.c:6110 #, c-format msgid "nested service specifications not supported in service file \"%s\", line %d" msgstr "especificaciones de servicio anidadas no soportadas en archivo de servicio «%s», línea %d" -#: fe-connect.c:6834 +#: fe-connect.c:6849 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "URI no válida propagada a rutina interna de procesamiento: «%s»" -#: fe-connect.c:6911 +#: fe-connect.c:6926 #, c-format msgid "end of string reached when looking for matching \"]\" in IPv6 host address in URI: \"%s\"" msgstr "se encontró el fin de la cadena mientras se buscaba el «]» correspondiente en dirección IPv6 en URI: «%s»" -#: fe-connect.c:6918 +#: fe-connect.c:6933 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "la dirección IPv6 no puede ser vacía en la URI: «%s»" -#: fe-connect.c:6933 +#: fe-connect.c:6948 #, c-format msgid "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): \"%s\"" msgstr "carácter «%c» inesperado en la posición %d en URI (se esperaba «:» o «/»): «%s»" -#: fe-connect.c:7062 +#: fe-connect.c:7077 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "separador llave/valor «=» extra en parámetro de la URI: «%s»" -#: fe-connect.c:7082 +#: fe-connect.c:7097 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "separador llave/valor «=» faltante en parámetro de la URI: «%s»" -#: fe-connect.c:7134 +#: fe-connect.c:7149 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "parámetro de URI no válido: «%s»" -#: fe-connect.c:7218 +#: fe-connect.c:7233 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "elemento escapado con %% no válido: «%s»" -#: fe-connect.c:7228 +#: fe-connect.c:7243 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "valor no permitido %%00 en valor escapado con %%: «%s»" -#: fe-connect.c:7250 +#: fe-connect.c:7265 #, c-format msgid "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" msgstr "se encontraron espacios inesperados en «%s», use espacios codificados con el símbolo %% (%%20) en su lugar" -#: fe-connect.c:7626 +#: fe-connect.c:7641 msgid "connection pointer is NULL\n" msgstr "el puntero de conexión es NULL\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 -#: fe-protocol3.c:1005 fe-protocol3.c:1038 +#: fe-connect.c:7649 fe-exec.c:718 fe-exec.c:980 fe-exec.c:3475 +#: fe-protocol3.c:1006 fe-protocol3.c:1039 msgid "out of memory\n" msgstr "memoria agotada\n" -#: fe-connect.c:7936 +#: fe-connect.c:7951 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "ADVERTENCIA: El archivo de claves «%s» no es un archivo plano\n" -#: fe-connect.c:7946 +#: fe-connect.c:7961 #, c-format msgid "WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n" msgstr "ADVERTENCIA: El archivo de claves «%s» tiene permiso de lectura para el grupo u otros; los permisos deberían ser u=rw (0600) o menos\n" -#: fe-connect.c:8050 +#: fe-connect.c:8065 #, c-format msgid "password retrieved from file \"%s\"" msgstr "contraseña obtenida desde el archivo «%s»" -#: fe-connect.c:8216 +#: fe-connect.c:8231 #, c-format msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "valor entero «%s» no válido para la opción de conexión «%s»" -#: fe-exec.c:469 fe-exec.c:3544 +#: fe-exec.c:469 fe-exec.c:3549 #, c-format msgid "row number %d is out of range 0..%d" msgstr "el número de fila %d está fuera del rango 0..%d" -#: fe-exec.c:531 fe-protocol3.c:2126 +#: fe-exec.c:531 fe-protocol3.c:2140 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:834 +#: fe-exec.c:839 #, c-format msgid "write to server failed" msgstr "falló escritura al servidor" -#: fe-exec.c:874 +#: fe-exec.c:879 #, c-format msgid "no error text available" msgstr "no hay mensaje de error disponible" -#: fe-exec.c:963 +#: fe-exec.c:968 msgid "NOTICE" msgstr "AVISO" -#: fe-exec.c:1021 +#: fe-exec.c:1026 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult no puede soportar un número de tuplas mayor que INT_MAX" -#: fe-exec.c:1033 +#: fe-exec.c:1038 msgid "size_t overflow" msgstr "desbordamiento de size_t" -#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 +#: fe-exec.c:1454 fe-exec.c:1523 fe-exec.c:1569 #, c-format msgid "command string is a null pointer" msgstr "la cadena de orden es un puntero nulo" -#: fe-exec.c:1455 fe-exec.c:3014 +#: fe-exec.c:1460 fe-exec.c:3019 #, c-format msgid "%s not allowed in pipeline mode" msgstr "no se permite %s en modo pipeline" -#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 +#: fe-exec.c:1528 fe-exec.c:1574 fe-exec.c:1668 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "el número de parámetros debe estar entre 0 y %d" -#: fe-exec.c:1559 fe-exec.c:1658 +#: fe-exec.c:1564 fe-exec.c:1663 #, c-format msgid "statement name is a null pointer" msgstr "el nombre de sentencia es un puntero nulo" -#: fe-exec.c:1700 fe-exec.c:3390 +#: fe-exec.c:1705 fe-exec.c:3395 #, c-format msgid "no connection to the server" msgstr "no hay conexión con el servidor" -#: fe-exec.c:1708 fe-exec.c:3398 +#: fe-exec.c:1713 fe-exec.c:3403 #, c-format msgid "another command is already in progress" msgstr "hay otra orden en ejecución" -#: fe-exec.c:1738 +#: fe-exec.c:1743 #, c-format msgid "cannot queue commands during COPY" msgstr "no se puede agregar órdenes a la cola mientras se hace COPY" -#: fe-exec.c:1857 +#: fe-exec.c:1862 #, c-format msgid "length must be given for binary parameter" msgstr "el largo debe ser especificado para un parámetro binario" -#: fe-exec.c:2216 +#: fe-exec.c:2221 #, c-format msgid "unexpected asyncStatus: %d" msgstr "asyncStatus no esperado: %d" -#: fe-exec.c:2372 +#: fe-exec.c:2377 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "no se permiten funciones que ejecuten órdenes sincrónicas en modo pipeline" -#: fe-exec.c:2389 +#: fe-exec.c:2394 msgid "COPY terminated by new PQexec" msgstr "COPY terminado por un nuevo PQexec" -#: fe-exec.c:2405 +#: fe-exec.c:2410 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec no está permitido durante COPY BOTH" -#: fe-exec.c:2641 +#: fe-exec.c:2646 #, c-format msgid "unrecognized message type \"%c\"" msgstr "tipo de mensaje «%c» no reconocido" -#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 +#: fe-exec.c:2718 fe-exec.c:2772 fe-exec.c:2840 fe-protocol3.c:2071 #, c-format msgid "no COPY in progress" msgstr "no hay COPY alguno en ejecución" -#: fe-exec.c:3021 +#: fe-exec.c:3026 #, c-format msgid "connection in wrong state" msgstr "la conexión está en un estado incorrecto" -#: fe-exec.c:3064 +#: fe-exec.c:3069 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "no se puede entrar en modo pipeline, la conexión no está inactiva" -#: fe-exec.c:3100 fe-exec.c:3121 +#: fe-exec.c:3105 fe-exec.c:3126 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "no se puede salir de modo pipeline al tener resultados sin recolectar" -#: fe-exec.c:3104 +#: fe-exec.c:3109 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "no se puede salir de modo pipeline mientras haya actividad" -#: fe-exec.c:3115 +#: fe-exec.c:3120 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "no se puede salir de modo pipeline mientras se está en COPY" -#: fe-exec.c:3314 +#: fe-exec.c:3319 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "no se puede enviar pipeline cuando no se está en modo pipeline" -#: fe-exec.c:3433 +#: fe-exec.c:3438 msgid "invalid ExecStatusType code" msgstr "el código de ExecStatusType no es válido" -#: fe-exec.c:3460 +#: fe-exec.c:3465 msgid "PGresult is not an error result\n" msgstr "PGresult no es un resultado de error\n" -#: fe-exec.c:3528 fe-exec.c:3551 +#: fe-exec.c:3533 fe-exec.c:3556 #, c-format msgid "column number %d is out of range 0..%d" msgstr "el número de columna %d está fuera del rango 0..%d" -#: fe-exec.c:3566 +#: fe-exec.c:3571 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "el número de parámetro %d está fuera del rango 0..%d" -#: fe-exec.c:3877 +#: fe-exec.c:3882 #, c-format msgid "could not interpret result from server: %s" msgstr "no se pudo interpretar el resultado del servidor: %s" -#: fe-exec.c:4152 fe-exec.c:4266 +#: fe-exec.c:4157 fe-exec.c:4292 #, c-format msgid "incomplete multibyte character" msgstr "carácter multibyte incompleto" -#: fe-exec.c:4154 fe-exec.c:4285 +#: fe-exec.c:4159 fe-exec.c:4311 #, c-format msgid "invalid multibyte character" msgstr "carácter multibyte no válido" +#: fe-exec.c:4413 +#, c-format +msgid "escaped string size exceeds the maximum allowed (%zu)" +msgstr "el tamaño de la cadena escapada excede el máximo permitido (%zu)" + +#: fe-exec.c:4590 +#, c-format +msgid "escaped bytea size exceeds the maximum allowed (%zu)" +msgstr "el tamaño del bytea escapado excede el máximo permitido (%zu)" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "error de importación de nombre de GSSAPI" @@ -1440,196 +1550,196 @@ msgstr "socket no válido" msgid "%s() failed: %s" msgstr "%s() falló: %s" -#: fe-protocol3.c:189 +#: fe-protocol3.c:190 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "un mensaje de tipo 0x%02x llegó del servidor estando inactivo" -#: fe-protocol3.c:402 +#: fe-protocol3.c:403 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "el servidor envió datos (mensaje «D») sin precederlos con una descripción de fila (mensaje «T»)" -#: fe-protocol3.c:444 +#: fe-protocol3.c:445 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "se ha recibido una respuesta inesperada del servidor; el primer carácter recibido fue «%c»" -#: fe-protocol3.c:468 +#: fe-protocol3.c:469 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "el contenido del mensaje no concuerda con el largo, en el mensaje tipo «%c»" -#: fe-protocol3.c:503 +#: fe-protocol3.c:504 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "se perdió la sincronía con el servidor: se recibió un mensaje de tipo «%c», largo %d" -#: fe-protocol3.c:550 fe-protocol3.c:590 +#: fe-protocol3.c:551 fe-protocol3.c:591 msgid "insufficient data in \"T\" message" msgstr "datos insuficientes en el mensaje «T»" -#: fe-protocol3.c:661 fe-protocol3.c:867 +#: fe-protocol3.c:662 fe-protocol3.c:868 msgid "out of memory for query result" msgstr "no hay suficiente memoria para el resultado de la consulta" -#: fe-protocol3.c:730 +#: fe-protocol3.c:731 msgid "insufficient data in \"t\" message" msgstr "datos insuficientes en el mensaje «t»" -#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 +#: fe-protocol3.c:790 fe-protocol3.c:822 fe-protocol3.c:840 msgid "insufficient data in \"D\" message" msgstr "datos insuficientes en el mensaje «D»" -#: fe-protocol3.c:795 +#: fe-protocol3.c:796 msgid "unexpected field count in \"D\" message" msgstr "cantidad de campos inesperada en mensaje «D»" -#: fe-protocol3.c:1051 +#: fe-protocol3.c:1052 msgid "no error message available\n" msgstr "no hay mensaje de error disponible\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1099 fe-protocol3.c:1118 +#: fe-protocol3.c:1100 fe-protocol3.c:1119 #, c-format msgid " at character %s" msgstr " en el carácter %s" -#: fe-protocol3.c:1131 +#: fe-protocol3.c:1132 #, c-format msgid "DETAIL: %s\n" msgstr "DETALLE: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1135 #, c-format msgid "HINT: %s\n" msgstr "SUGERENCIA: %s\n" -#: fe-protocol3.c:1137 +#: fe-protocol3.c:1138 #, c-format msgid "QUERY: %s\n" msgstr "CONSULTA: %s\n" -#: fe-protocol3.c:1144 +#: fe-protocol3.c:1145 #, c-format msgid "CONTEXT: %s\n" msgstr "CONTEXTO: %s\n" -#: fe-protocol3.c:1153 +#: fe-protocol3.c:1154 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "NOMBRE DE ESQUEMA: %s\n" -#: fe-protocol3.c:1157 +#: fe-protocol3.c:1158 #, c-format msgid "TABLE NAME: %s\n" msgstr "NOMBRE DE TABLA: %s\n" -#: fe-protocol3.c:1161 +#: fe-protocol3.c:1162 #, c-format msgid "COLUMN NAME: %s\n" msgstr "NOMBRE DE COLUMNA: %s\n" -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1166 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "NOMBRE TIPO DE DATO: %s\n" -#: fe-protocol3.c:1169 +#: fe-protocol3.c:1170 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "NOMBRE DE RESTRICCIÓN: %s\n" -#: fe-protocol3.c:1181 +#: fe-protocol3.c:1182 msgid "LOCATION: " msgstr "UBICACIÓN: " -#: fe-protocol3.c:1183 +#: fe-protocol3.c:1184 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1185 +#: fe-protocol3.c:1186 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1380 +#: fe-protocol3.c:1394 #, c-format msgid "LINE %d: " msgstr "LÍNEA %d: " -#: fe-protocol3.c:1442 +#: fe-protocol3.c:1456 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "se recibió un mensaje de negociación de protocolo no válido: el servidor solicitó degradación a una versión con un número mayor" -#: fe-protocol3.c:1448 +#: fe-protocol3.c:1462 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "se recibió un mensaje de negociación de protocolo no válido: el servidor solicitó degradación a una versión de protocolo anterior a 3.0" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1469 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "se recibió un mensaje de negociación de protocolo no válido: el servidor pidió degradación a la versión de protocolo inexistente 3.1" -#: fe-protocol3.c:1461 +#: fe-protocol3.c:1475 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "se recibió un mensaje de negociación de protocolo no válido: el servidor reportó una cantidad negativa de parámetros no soportados" -#: fe-protocol3.c:1467 +#: fe-protocol3.c:1481 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "se recibió un mensaje de negociación de protocolo no válido: el servidor solicitó negociar pero no pidió ningún cambio" -#: fe-protocol3.c:1473 +#: fe-protocol3.c:1487 #, c-format msgid "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" msgstr "el servidor sólo soporta la versión de protocolo %d.%d, pero «%s» fue definido a %d.%d" -#: fe-protocol3.c:1498 +#: fe-protocol3.c:1512 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "se recibió un mensaje de negociación de protocolo no válido: el servidor reportó el nombre de parámetro no soportado sin el prefijo «%s» («%s»)" -#: fe-protocol3.c:1501 +#: fe-protocol3.c:1515 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "se recibió un mensaje de negociación de protocolo no válido: el servidor reportó un parámetro no soportado que no fue solicitado («%s»)" -#: fe-protocol3.c:1508 +#: fe-protocol3.c:1522 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "se recibió un mensaje de negociación de protocolo no válido: mensaje demasiado corto" -#: fe-protocol3.c:1574 +#: fe-protocol3.c:1588 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d not allowed in protocol version 3.0 (must be 4 bytes)" msgstr "se recibió un mensaje BackendKeyData no válido: la llave de cancelación con largo %d no está permitida en la versión de protocolo 3.0 (debe ser 4 bytes)" -#: fe-protocol3.c:1581 +#: fe-protocol3.c:1595 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too short (minimum 4 bytes)" msgstr "se recibió un mensaje BackendKeyData no válido: la llave de cancelación con largo %d es demasiado corta (mínimo 4 bytes)" -#: fe-protocol3.c:1588 +#: fe-protocol3.c:1602 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too long (maximum 256 bytes)" msgstr "se recibió un mensaje BackendKeyData no válido: la llave de cancelación con largo %d es demasiado larga (máximo 256 bytes)" -#: fe-protocol3.c:1952 +#: fe-protocol3.c:1966 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: no se está haciendo COPY OUT de texto" -#: fe-protocol3.c:2327 +#: fe-protocol3.c:2341 #, c-format msgid "protocol error: no function result" msgstr "error de protocolo: no hay resultado de función" -#: fe-protocol3.c:2339 +#: fe-protocol3.c:2353 #, c-format msgid "protocol error: id=0x%x" msgstr "error de protocolo: id=0x%x" @@ -1959,3 +2069,95 @@ msgstr "no se pudo enviar datos al servidor: %s" #, c-format msgid "unrecognized socket error: 0x%08X/%d" msgstr "código de error de socket no reconocido: 0x%08X/%d" + +#, c-format +#~ msgid "internal error: started field '%s' before field '%s' was finished" +#~ msgstr "error interno: se inició el campo '%s' antes de terminar el campo '%s'" + +#, c-format +#~ msgid "internal error: field '%s' still active at end of object" +#~ msgstr "error interno: el campo '%s' sigue activo al final del objeto" + +#, c-format +#~ msgid "internal error: found unexpected array end while parsing field '%s'" +#~ msgstr "error interno: se encontró un fin de array inesperado mientras se interpretaba el campo «%s»" + +#, c-format +#~ msgid "internal error: scalar target found at nesting level %d" +#~ msgstr "error interno: se encontró destino escalar en el nivel de anidamiento %d" + +#, c-format +#~ msgid "internal error: scalar field '%s' would be assigned twice" +#~ msgstr "error interno: el campo escalar '%s' sería asignado dos veces" + +#, c-format +#~ msgid "internal error: array member found at nesting level %d" +#~ msgstr "error interno: miembro de array encontrado en el nivel de anidamiento %d" + +#, c-format +#~ msgid "failed to create epoll set: %m" +#~ msgstr "no se pudo crear el grupo de “epoll”: %m" + +#, c-format +#~ msgid "failed to create timerfd: %m" +#~ msgstr "no se pudo crear el “timerfd”: %m" + +#, c-format +#~ msgid "failed to add timerfd to epoll set: %m" +#~ msgstr "no se pudo agregar el “timerfd” al grupo de “epoll”: %m" + +#, c-format +#~ msgid "failed to create timer kqueue: %m" +#~ msgstr "no se pudo crear el temporizador ”kqueue”: %m" + +#, c-format +#~ msgid "unknown libcurl socket operation: %d" +#~ msgstr "operación de socket libcurl desconocida: %d" + +#, c-format +#~ msgid "could not add to epoll set: %m" +#~ msgstr "no se pudo agregar al grupo de ”epoll”: %m" + +#, c-format +#~ msgid "could not delete from epoll set: %m" +#~ msgstr "no se pudo borrar el grupo de “epoll”: %m" + +#, c-format +#~ msgid "could not update epoll set: %m" +#~ msgstr "no se pudo actualizar el grupo de “epoll”: %m" + +#, c-format +#~ msgid "could not modify kqueue: %m" +#~ msgstr "no se pudo modificar el “kqueue”: %m" + +#, c-format +#~ msgid "could not delete from kqueue: %m" +#~ msgstr "no se pudo borrar del “kqueue”: %m" + +#, c-format +#~ msgid "could not add to kqueue: %m" +#~ msgstr "no se pudo agregar al “kqueue”: %m" + +#, c-format +#~ msgid "could not comb kqueue: %m" +#~ msgstr "no se pudo “rastrear” el “kqueue”: %m" + +#, c-format +#~ msgid "setting timerfd to %ld: %m" +#~ msgstr "definiendo “timerfd” a %ld: %m" + +#, c-format +#~ msgid "deleting kqueue timer: %m" +#~ msgstr "eliminando el temporizador “kqueue”: %m" + +#, c-format +#~ msgid "removing kqueue timer from multiplexer: %m" +#~ msgstr "eliminando el temporizador “kqueue” del multiplexor: %m" + +#, c-format +#~ msgid "setting kqueue timer to %ld: %m" +#~ msgstr "definiendo el temporizador “kqueue” a %ld: %m" + +#, c-format +#~ msgid "adding kqueue timer to multiplexer: %m" +#~ msgstr "agregando el temporizador ”kqueue” al multiplexor: %m" diff --git a/src/interfaces/libpq/po/fr.po b/src/interfaces/libpq/po/fr.po index d860f858e9b..c8920f31ddd 100644 --- a/src/interfaces/libpq/po/fr.po +++ b/src/interfaces/libpq/po/fr.po @@ -1731,7 +1731,7 @@ msgstr "erreur SSL : %s" #: fe-secure-openssl.c:215 fe-secure-openssl.c:321 #, c-format msgid "SSL connection has been closed unexpectedly" -msgstr "la connexion SSL a été fermée de façon inattendu" +msgstr "la connexion SSL a été fermée de façon inattendue" #: fe-secure-openssl.c:220 fe-secure-openssl.c:326 fe-secure-openssl.c:1440 #, c-format diff --git a/src/interfaces/libpq/po/ja.po b/src/interfaces/libpq/po/ja.po index 70105dc627f..2b28c05029c 100644 --- a/src/interfaces/libpq/po/ja.po +++ b/src/interfaces/libpq/po/ja.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: libpq (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-10-10 15:47+0900\n" -"PO-Revision-Date: 2025-10-10 16:10+0900\n" +"POT-Creation-Date: 2025-12-16 09:30+0900\n" +"PO-Revision-Date: 2025-12-16 11:17+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -20,280 +20,206 @@ msgstr "" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 1.8.13\n" -#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#: ../libpq-oauth/oauth-curl.c:308 ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "libcurl簡易ハンドルの削除に失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:327 +#: ../libpq-oauth/oauth-curl.c:328 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "libcurlマルチハンドルのクリーンアップに失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#: ../libpq-oauth/oauth-curl.c:394 ../libpq-oauth/oauth-curl.c:405 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "OAuth接続での%sの設定に失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:412 +#: ../libpq-oauth/oauth-curl.c:416 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "OAuth応答からの%sの取得に失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 +#: ../libpq-oauth/oauth-curl.c:485 fe-auth-oauth.c:209 fe-auth-oauth.c:271 +#: fe-auth-oauth.c:333 #, c-format -msgid "JSON is too deeply nested" -msgstr "JSONのネストが深すぎます" +msgid "field \"%s\" must be a string" +msgstr "フィールド\"%s\"は文字列でなければなりません" -#: ../libpq-oauth/oauth-curl.c:540 +#: ../libpq-oauth/oauth-curl.c:489 #, c-format -msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "内部エラー: フィールド '%2$s' の終了前にフィールド '%1$s' が開始されました" +msgid "field \"%s\" must be a number" +msgstr "フィールド\"%s\"は数値でなければなりません" -#: ../libpq-oauth/oauth-curl.c:567 +#: ../libpq-oauth/oauth-curl.c:493 #, c-format -msgid "field \"%s\" is duplicated" -msgstr "フィールド\"%s\"は重複しています。" - -#: ../libpq-oauth/oauth-curl.c:592 -#, c-format -msgid "internal error: field '%s' still active at end of object" -msgstr "内部エラー: オブジェクト終了時点でフィールド '%s' が未終了です" - -#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 -#, c-format -msgid "top-level element must be an object" -msgstr "最上位要素はオブジェクトでなければなりません" +msgid "field \"%s\" must be an array of strings" +msgstr "フィールド\"%s\"は文字列配列でなければなりません" -#: ../libpq-oauth/oauth-curl.c:648 +#: ../libpq-oauth/oauth-curl.c:498 #, c-format -msgid "internal error: found unexpected array end while parsing field '%s'" -msgstr "内部エラー: フィールド'%s'のパース中に予期しない配列がありました" +msgid "field \"%s\" has unexpected type" +msgstr "フィールド\"%s\"が想定外の型です" -#: ../libpq-oauth/oauth-curl.c:703 +#: ../libpq-oauth/oauth-curl.c:522 ../libpq-oauth/oauth-curl.c:632 +#: fe-auth-oauth.c:215 fe-auth-oauth.c:277 #, c-format -msgid "internal error: scalar target found at nesting level %d" -msgstr "内部エラー: ネストレベル%dにーターゲットがありました" +msgid "JSON is too deeply nested" +msgstr "JSONのネストが深すぎます" -#: ../libpq-oauth/oauth-curl.c:713 +#: ../libpq-oauth/oauth-curl.c:574 fe-auth-oauth.c:324 #, c-format -msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "内部エラー: フィールド '%s' に2回代入されます" +msgid "field \"%s\" is duplicated" +msgstr "フィールド\"%s\"は重複しています。" -#: ../libpq-oauth/oauth-curl.c:735 +#: ../libpq-oauth/oauth-curl.c:614 ../libpq-oauth/oauth-curl.c:674 +#: fe-auth-oauth.c:264 fe-auth-oauth.c:298 #, c-format -msgid "internal error: array member found at nesting level %d" -msgstr "内部エラー: ネストレベル%dに配列の要素がありました" +msgid "top-level element must be an object" +msgstr "最上位要素はオブジェクトでなければなりません" -#: ../libpq-oauth/oauth-curl.c:770 +#: ../libpq-oauth/oauth-curl.c:777 #, c-format msgid "no content type was provided" msgstr "Content-Typeヘッダーがありませんでした" -#: ../libpq-oauth/oauth-curl.c:809 +#: ../libpq-oauth/oauth-curl.c:816 #, c-format msgid "unexpected content type: \"%s\"" msgstr "想定しないContent-Typeヘッダーの値: \"%s\"" -#: ../libpq-oauth/oauth-curl.c:834 +#: ../libpq-oauth/oauth-curl.c:841 #, c-format msgid "response contains embedded NULLs" msgstr "応答の途中にnullが含まれています" -#: ../libpq-oauth/oauth-curl.c:844 +#: ../libpq-oauth/oauth-curl.c:851 #, c-format msgid "response is not valid UTF-8" msgstr "応答は有効なUTF-8ではありません" -#: ../libpq-oauth/oauth-curl.c:884 +#: ../libpq-oauth/oauth-curl.c:891 #, c-format msgid "field \"%s\" is missing" msgstr "フィールド\"%s\"が存在しません" -#: ../libpq-oauth/oauth-curl.c:1118 +#: ../libpq-oauth/oauth-curl.c:1097 +msgid "failed to parse token error response" +msgstr "トークンのエラーレスポンスのパースに失敗しました" + +#: ../libpq-oauth/oauth-curl.c:1125 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "プロバイダがoauth_client_secretを拒否しました" -#: ../libpq-oauth/oauth-curl.c:1182 -#, c-format -msgid "failed to create epoll set: %m" -msgstr "epollセットの作成に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1189 -#, c-format -msgid "failed to create timerfd: %m" -msgstr "timerfd の作成に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1195 -#, c-format -msgid "failed to add timerfd to epoll set: %m" -msgstr "epollセットへのtimerfdの追加に失敗しました: %m" - -#. translator: the term "kqueue" (kernel queue) should not be translated -#: ../libpq-oauth/oauth-curl.c:1205 -#, c-format -msgid "failed to create kqueue: %m" -msgstr "kqueueの作成に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1218 -#, c-format -msgid "failed to create timer kqueue: %m" -msgstr "タイマーkqueueの作成に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 -#, c-format -msgid "unknown libcurl socket operation: %d" -msgstr "未知のlibcurlソケット操作: %d" - -#: ../libpq-oauth/oauth-curl.c:1279 -#, c-format -msgid "could not add to epoll set: %m" -msgstr "epollセットに追加できませんでした: %m" - -#: ../libpq-oauth/oauth-curl.c:1283 -#, c-format -msgid "could not delete from epoll set: %m" -msgstr "epollセットから削除できませんでした: %m" - -#: ../libpq-oauth/oauth-curl.c:1287 -#, c-format -msgid "could not update epoll set: %m" -msgstr "epollセットの設定変更に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1347 -#, c-format -msgid "could not modify kqueue: %m" -msgstr "kqueueの設定変更に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1371 -#, c-format -msgid "could not delete from kqueue: %m" -msgstr "kqueueからの削除に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1374 -#, c-format -msgid "could not add to kqueue: %m" -msgstr "kqueueへの追加に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1423 -#, c-format -msgid "could not comb kqueue: %m" -msgstr "kqueue の走査に失敗しました: %m" - -#: ../libpq-oauth/oauth-curl.c:1473 -#, c-format -msgid "setting timerfd to %ld: %m" -msgstr "timerfdの%ldへの設定中にエラー: %m" - -#: ../libpq-oauth/oauth-curl.c:1503 +#: ../libpq-oauth/oauth-curl.c:1126 #, c-format -msgid "deleting kqueue timer: %m" -msgstr "kqueue タイマー削除中にエラー: %m" +msgid "provider requires client authentication, and no oauth_client_secret is set" +msgstr "プロバイダはクライアント認証を必須としていますが、oauth_client_secret が設定されていません" -#: ../libpq-oauth/oauth-curl.c:1510 -#, c-format -msgid "removing kqueue timer from multiplexer: %m" -msgstr "マルチプレクサからのkqueueタイマー削除中にエラー: %m" - -#: ../libpq-oauth/oauth-curl.c:1521 -#, c-format -msgid "setting kqueue timer to %ld: %m" -msgstr "kqueueタイマーの%ldへの設定中にエラー: %m" - -#: ../libpq-oauth/oauth-curl.c:1528 -#, c-format -msgid "adding kqueue timer to multiplexer: %m" -msgstr "マルチプレクサへのkqueueタイマー追加中にエラー: %m" - -#: ../libpq-oauth/oauth-curl.c:1553 +#: ../libpq-oauth/oauth-curl.c:1559 #, c-format msgid "checking timer expiration: %m" msgstr "タイマー満了確認中: %m" -#: ../libpq-oauth/oauth-curl.c:1715 +#: ../libpq-oauth/oauth-curl.c:1721 #, c-format msgid "failed to create libcurl multi handle" msgstr "libcurl のマルチハンドルの作成に失敗しました" -#: ../libpq-oauth/oauth-curl.c:1735 +#: ../libpq-oauth/oauth-curl.c:1741 #, c-format msgid "failed to create libcurl handle" msgstr "libcurl ハンドルの作成に失敗しました" -#: ../libpq-oauth/oauth-curl.c:1819 ../libpq-oauth/oauth-curl.c:1860 -#: ../libpq-oauth/oauth-curl.c:2173 ../libpq-oauth/oauth-curl.c:2334 -#: ../libpq-oauth/oauth-curl.c:2395 ../libpq-oauth/oauth-curl.c:2484 -#: ../libpq-oauth/oauth-curl.c:2778 ../libpq-oauth/oauth-curl.c:2995 +#: ../libpq-oauth/oauth-curl.c:1825 ../libpq-oauth/oauth-curl.c:1866 +#: ../libpq-oauth/oauth-curl.c:2184 ../libpq-oauth/oauth-curl.c:2345 +#: ../libpq-oauth/oauth-curl.c:2406 ../libpq-oauth/oauth-curl.c:2495 +#: ../libpq-oauth/oauth-curl.c:2789 ../libpq-oauth/oauth-curl.c:3006 +#: fe-auth-oauth.c:146 fe-auth-oauth.c:489 fe-auth-oauth.c:561 +#: fe-auth-oauth.c:723 fe-auth-oauth.c:1016 fe-auth-oauth.c:1029 +#: fe-auth-oauth.c:1117 fe-auth-oauth.c:1130 fe-auth-oauth.c:1266 #: fe-auth-scram.c:374 fe-auth-scram.c:447 fe-auth-scram.c:599 #: fe-auth-scram.c:619 fe-auth-scram.c:643 fe-auth-scram.c:657 #: fe-auth-scram.c:703 fe-auth-scram.c:739 fe-auth-scram.c:931 fe-auth.c:308 #: fe-auth.c:382 fe-auth.c:416 fe-auth.c:694 fe-auth.c:827 fe-auth.c:1330 -#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1011 fe-connect.c:1051 -#: fe-connect.c:2171 fe-connect.c:2333 fe-connect.c:3726 fe-connect.c:5182 -#: fe-connect.c:5495 fe-connect.c:5750 fe-connect.c:5868 fe-connect.c:6115 -#: fe-connect.c:6195 fe-connect.c:6293 fe-connect.c:6544 fe-connect.c:6571 -#: fe-connect.c:6647 fe-connect.c:6670 fe-connect.c:6694 fe-connect.c:6729 -#: fe-connect.c:6815 fe-connect.c:6823 fe-connect.c:7180 fe-connect.c:7362 -#: fe-exec.c:530 fe-exec.c:1326 fe-exec.c:3265 fe-exec.c:4304 fe-exec.c:4470 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:211 fe-protocol3.c:234 -#: fe-protocol3.c:257 fe-protocol3.c:274 fe-protocol3.c:295 fe-protocol3.c:369 -#: fe-protocol3.c:750 fe-protocol3.c:990 fe-protocol3.c:1542 -#: fe-protocol3.c:1596 fe-protocol3.c:1642 fe-protocol3.c:1663 -#: fe-protocol3.c:1920 fe-protocol3.c:2321 fe-secure-common.c:110 +#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1012 fe-connect.c:1052 +#: fe-connect.c:2172 fe-connect.c:2334 fe-connect.c:3727 fe-connect.c:5183 +#: fe-connect.c:5496 fe-connect.c:5765 fe-connect.c:5883 fe-connect.c:6130 +#: fe-connect.c:6210 fe-connect.c:6308 fe-connect.c:6559 fe-connect.c:6586 +#: fe-connect.c:6662 fe-connect.c:6685 fe-connect.c:6709 fe-connect.c:6744 +#: fe-connect.c:6830 fe-connect.c:6838 fe-connect.c:7195 fe-connect.c:7377 +#: fe-exec.c:530 fe-exec.c:1331 fe-exec.c:3270 fe-exec.c:4341 fe-exec.c:4534 +#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:212 fe-protocol3.c:235 +#: fe-protocol3.c:258 fe-protocol3.c:275 fe-protocol3.c:296 fe-protocol3.c:370 +#: fe-protocol3.c:751 fe-protocol3.c:991 fe-protocol3.c:1556 +#: fe-protocol3.c:1610 fe-protocol3.c:1656 fe-protocol3.c:1677 +#: fe-protocol3.c:1934 fe-protocol3.c:2335 fe-secure-common.c:110 #: fe-secure-gssapi.c:508 fe-secure-gssapi.c:699 fe-secure-openssl.c:405 #: fe-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "メモリ不足です" -#: ../libpq-oauth/oauth-curl.c:1847 +#: ../libpq-oauth/oauth-curl.c:1853 #, c-format msgid "response is too large" msgstr "応答が大きすぎます" -#: ../libpq-oauth/oauth-curl.c:1889 +#: ../libpq-oauth/oauth-curl.c:1895 #, c-format msgid "failed to queue HTTP request: %s" msgstr "HTTPリクエストのキューイングに失敗: %s" -#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#: ../libpq-oauth/oauth-curl.c:1912 ../libpq-oauth/oauth-curl.c:1970 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "非同期HTTPリクエストが失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:2011 +#: ../libpq-oauth/oauth-curl.c:2022 #, c-format msgid "no result was retrieved for the finished handle" msgstr "終了済みのハンドルから結果が得られませんでした" -#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 -#: ../libpq-oauth/oauth-curl.c:2529 +#: ../libpq-oauth/oauth-curl.c:2155 ../libpq-oauth/oauth-curl.c:2461 +#: ../libpq-oauth/oauth-curl.c:2540 #, c-format msgid "unexpected response code %ld" msgstr "想定外のレスポンスコード %ld" -#: ../libpq-oauth/oauth-curl.c:2216 +#: ../libpq-oauth/oauth-curl.c:2162 +msgid "failed to parse OpenID discovery document" +msgstr "OpenIDディスカバリードキュメントのパースに失敗しました" + +#: ../libpq-oauth/oauth-curl.c:2227 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "issuer識別子(%s)がoauth_issuer (%s)と一致しません" -#: ../libpq-oauth/oauth-curl.c:2243 +#: ../libpq-oauth/oauth-curl.c:2254 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "issuer\"%s\"はデバイス認証エンドポイントを提供していません" -#: ../libpq-oauth/oauth-curl.c:2269 +#: ../libpq-oauth/oauth-curl.c:2280 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "デバイス認証エンドポイント\"%s\"はHTTPSを使用しなければなりません" -#: ../libpq-oauth/oauth-curl.c:2278 +#: ../libpq-oauth/oauth-curl.c:2289 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "トークン・エンドポイント \"%s\" はHTTPSを使用しなければなりません" -#: ../libpq-oauth/oauth-curl.c:2587 +#: ../libpq-oauth/oauth-curl.c:2430 +msgid "failed to parse device authorization" +msgstr "デバイス認証のパースに失敗しました" + +#: ../libpq-oauth/oauth-curl.c:2518 +msgid "failed to parse access token response" +msgstr "アクセストークン応答のパースに失敗しました" + +#: ../libpq-oauth/oauth-curl.c:2598 #, c-format msgid "slow_down interval overflow" msgstr "slow_down間隔のオーバーフロー" @@ -301,27 +227,27 @@ msgstr "slow_down間隔のオーバーフロー" #. translator: The first %s is a URL for the user to visit in a #. browser, and the second %s is a code to be copy-pasted there. #. -#: ../libpq-oauth/oauth-curl.c:2623 +#: ../libpq-oauth/oauth-curl.c:2634 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "%sにアクセスしてコードを入力してください: %s\n" -#: ../libpq-oauth/oauth-curl.c:2628 +#: ../libpq-oauth/oauth-curl.c:2639 #, c-format msgid "device prompt failed" msgstr "デバイス認証の開始に失敗しました" -#: ../libpq-oauth/oauth-curl.c:2684 +#: ../libpq-oauth/oauth-curl.c:2695 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init は過去の OAuth セットアップ中に失敗しています" -#: ../libpq-oauth/oauth-curl.c:2703 +#: ../libpq-oauth/oauth-curl.c:2714 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init が OAuth セットアップ中に失敗しました" -#: ../libpq-oauth/oauth-curl.c:2724 +#: ../libpq-oauth/oauth-curl.c:2735 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -335,6 +261,152 @@ msgstr "" "現在インストールされている libcurl はそうではないと報告しています。 libpq を\n" "このインストールされているバージョンの libcurl でコンパイルしてください。" +#: ../libpq-oauth/oauth-curl.c:2897 +msgid "failed to fetch OpenID discovery document" +msgstr "OpenIDディスカバリードキュメントの取得に失敗しました" + +#: ../libpq-oauth/oauth-curl.c:2911 +msgid "cannot run OAuth device authorization" +msgstr "OAuthデバイス認証を実行できません" + +#: ../libpq-oauth/oauth-curl.c:2915 +msgid "failed to obtain device authorization" +msgstr "デバイス認可の取得に失敗しました" + +#: ../libpq-oauth/oauth-curl.c:2926 ../libpq-oauth/oauth-curl.c:2977 +msgid "failed to obtain access token" +msgstr "アクセストークンの取得に失敗しました" + +#: fe-auth-oauth.c:133 +#, c-format +msgid "internal error: no OAuth token was set for the connection" +msgstr "内部エラー: 接続にOAuthトークンが設定されていません" + +#: fe-auth-oauth.c:396 +#, c-format +msgid "OAuth discovery URI \"%s\" must use HTTPS" +msgstr "OAuthディスカバリーURI \"%s\" はHTTPSを使用しなければなりません" + +#: fe-auth-oauth.c:413 +#, c-format +msgid "OAuth discovery URI \"%s\" must not contain query or fragment components" +msgstr "OAuthディスカバリーURI \"%s\" にはクエリ要素やフラグメント要素を含めることはできません" + +#: fe-auth-oauth.c:428 +#, c-format +msgid "OAuth discovery URI \"%s\" is not a .well-known URI" +msgstr "OAuthディスカバリーURI \"%s\" は /.well-known で始まるURIではありません" + +#: fe-auth-oauth.c:454 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an unsupported .well-known suffix" +msgstr "OAuthディスカバリーURI \"%s\" は、サポートされていない .well-known のサフィックスを使用しています" + +#: fe-auth-oauth.c:479 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an invalid format" +msgstr "OAuthディスカバリーURI \"%s\" のフォーマットが不正です" + +#: fe-auth-oauth.c:528 +#, c-format +msgid "server's error message contained an embedded NULL, and was discarded" +msgstr "サーバーのエラーメッセージの途中にNULLが含まれていたため、メッセージは破棄されました" + +#: fe-auth-oauth.c:539 +#, c-format +msgid "server's error response is not valid UTF-8" +msgstr "サーバーのエラー応答は有効なUTF-8ではありません" + +#: fe-auth-oauth.c:579 +#, c-format +msgid "failed to parse server's error response: %s" +msgstr "サーバーのエラー応答のパースに失敗しました: %s" + +#: fe-auth-oauth.c:610 +#, c-format +msgid "server's discovery document at %s (issuer \"%s\") is incompatible with oauth_issuer (%s)" +msgstr "%s のサーバーのディスカバリー・ドキュメントの発行者 \"%s\"が oauth_issuer (%s)と一致していません" + +#: fe-auth-oauth.c:631 +#, c-format +msgid "server's discovery document has moved to %s (previous location was %s)" +msgstr "サーバーのディスカバリードキュメントは %s に移動しました (以前は %s にありました)" + +#: fe-auth-oauth.c:652 +#, c-format +msgid "server sent error response without a status" +msgstr "サーバーがステータスを持たないエラー応答を送出しました" + +#: fe-auth-oauth.c:663 +#, c-format +msgid "server rejected OAuth bearer token: %s" +msgstr "サーバーがOAuth Bearer トークンを拒否しました: %s" + +#: fe-auth-oauth.c:696 +#, c-format +msgid "user-defined OAuth flow provided neither a token nor an async callback" +msgstr "ユーザー定義のOAuthフローは、トークンも非同期コールバックも返しませんでした" + +#: fe-auth-oauth.c:703 fe-auth-oauth.c:1041 +#, c-format +msgid "user-defined OAuth flow failed" +msgstr "ユーザー定義のOAuthフローが失敗しました" + +#: fe-auth-oauth.c:716 +#, c-format +msgid "user-defined OAuth flow did not provide a token" +msgstr "ユーザー定義のOAuthフローは、トークンが返しませんでした" + +#: fe-auth-oauth.c:734 +#, c-format +msgid "user-defined OAuth flow did not provide a socket for polling" +msgstr "ユーザー定義OAuthフローがポーリング対象のソケットを指定しませんでした" + +#: fe-auth-oauth.c:917 +#, c-format +msgid "failed to lock mutex (%d)" +msgstr "mutexのロックに失敗しました (%d)" + +#: fe-auth-oauth.c:1046 +#, c-format +msgid "no OAuth flows are available (try installing the libpq-oauth package)" +msgstr "使用可能なOAuthフローがありません (libpq-oauthパッケージをインストールしてみてください)" + +#: fe-auth-oauth.c:1095 +#, c-format +msgid "server requires OAuth authentication, but oauth_issuer and oauth_client_id are not both set" +msgstr "サーバーは OAuth 認証を必須としていますが、oauth_issuer と oauth_client_id が両方とも設定されていません" + +#: fe-auth-oauth.c:1255 +#, c-format +msgid "server sent unexpected additional OAuth data" +msgstr "サーバーが予期しない追加のOAuthデータを送ってきました" + +#: fe-auth-oauth.c:1295 +#, c-format +msgid "server requires OAuth authentication, but no discovery metadata was provided" +msgstr "サーバーが OAuth 認証を必須としていますが、ディスカバリー・メタデータが提供されていません" + +#: fe-auth-oauth.c:1333 +#, c-format +msgid "internal error: OAuth flow did not set a token" +msgstr "内部エラー: OAuthフローがトークンを設定しませんでした" + +#: fe-auth-oauth.c:1351 +#, c-format +msgid "server sent additional OAuth data after error" +msgstr "サーバーがエラーに続いて追加のOAuthデータを送出しました" + +#: fe-auth-oauth.c:1355 +#, c-format +msgid "invalid OAuth exchange state" +msgstr "不正な OAuth exchange state" + +#: fe-auth-oauth.c:1368 +#, c-format +msgid "retrying connection with new bearer token" +msgstr "新しい Bearer トークンで接続を再試行します" + #: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" @@ -358,7 +430,7 @@ msgstr "正しくないサーバー署名" #: fe-auth-scram.c:292 #, c-format msgid "invalid SCRAM exchange state" -msgstr "不正なSCRAM交換状態" +msgstr "不正な SCRAM exchange state" #: fe-auth-scram.c:316 #, c-format @@ -660,695 +732,710 @@ msgstr "このセッションではすでにキャンセル要求を送出済み msgid "unexpected response from server" msgstr "サーバーからの想定外の応答" -#: fe-connect.c:1308 +#: fe-connect.c:1309 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "%d個のホスト名と%d個のhostaddrの値との突き合せはできません" -#: fe-connect.c:1388 +#: fe-connect.c:1389 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "%d個のポート番号と%d個のホストとの突き合せはできません" -#: fe-connect.c:1516 +#: fe-connect.c:1517 #, c-format msgid "negative require_auth method \"%s\" cannot be mixed with non-negative methods" msgstr "require_authの方式否定\"%s\"は方式要求と同時に指定することはできません" -#: fe-connect.c:1529 +#: fe-connect.c:1530 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "require_authの方式要求\"%s\"は方式否定と同時に指定することはできません" -#: fe-connect.c:1605 fe-connect.c:1734 fe-connect.c:1776 fe-connect.c:1819 -#: fe-connect.c:1922 fe-connect.c:1968 fe-connect.c:2008 fe-connect.c:2075 -#: fe-connect.c:8248 +#: fe-connect.c:1606 fe-connect.c:1735 fe-connect.c:1777 fe-connect.c:1820 +#: fe-connect.c:1923 fe-connect.c:1969 fe-connect.c:2009 fe-connect.c:2076 +#: fe-connect.c:8263 #, c-format msgid "invalid %s value: \"%s\"" msgstr "%s の値が不正: \"%s\"" -#: fe-connect.c:1647 +#: fe-connect.c:1648 #, c-format msgid "internal error: no space in allowed_sasl_mechs" msgstr "内部エラー: allowed_sasl_mechs に空きがありません" -#: fe-connect.c:1686 +#: fe-connect.c:1687 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "require_authで方式\"%s\"が複数回指定されました" -#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 +#: fe-connect.c:1758 fe-connect.c:1797 fe-connect.c:1829 fe-connect.c:1931 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "%s 値\"%s\"はSSLサポートがコンパイルされていない場合は無効です" -#: fe-connect.c:1848 +#: fe-connect.c:1849 #, c-format msgid "weak sslmode \"%s\" may not be used with sslnegotiation=direct (use \"require\", \"verify-ca\", or \"verify-full\")" msgstr "弱いsslmode\"%s\"はsslnegotiation=direct とともには使用できません( \"require\", \"verify-ca\"または\"verify-full\"を使用してください)" -#: fe-connect.c:1870 +#: fe-connect.c:1871 #, c-format msgid "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-full\")" msgstr "弱いsslmode\"%s\"はsslrootcert=systemとともには使用できません(\"verify-full\"を使用してください)" -#: fe-connect.c:1883 fe-connect.c:1891 +#: fe-connect.c:1884 fe-connect.c:1892 #, c-format msgid "invalid \"%s\" value: \"%s\"" msgstr "\"%s\"の値が不正: \"%s\"" -#: fe-connect.c:1908 +#: fe-connect.c:1909 #, c-format msgid "invalid SSL protocol version range" msgstr "不正なSSLプロトコルバージョン範囲" -#: fe-connect.c:1945 +#: fe-connect.c:1946 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "%s 値\"%s\"はサポートされていません(OpenSSLのバージョンを確認してください)" -#: fe-connect.c:1975 +#: fe-connect.c:1976 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "gssencmodeの値\"%s\"はGSSAPIサポートがコンパイルされていない場合は不正" -#: fe-connect.c:2029 +#: fe-connect.c:2030 #, c-format msgid "invalid SCRAM client key" msgstr "不正なSCRAMクライアントキー" -#: fe-connect.c:2034 +#: fe-connect.c:2035 #, c-format msgid "invalid SCRAM client key length: %d" msgstr "不正なSCRAMクライアントキー長: %d" -#: fe-connect.c:2052 +#: fe-connect.c:2053 #, c-format msgid "invalid SCRAM server key" msgstr "不正なSCRAMサーバーキー" -#: fe-connect.c:2057 +#: fe-connect.c:2058 #, c-format msgid "invalid SCRAM server key length: %d" msgstr "不正なSCRAMサーバーキー長: %d" -#: fe-connect.c:2144 +#: fe-connect.c:2145 #, c-format msgid "\"%s\" is greater than \"%s\"" msgstr "\"%s\"が\"%s\"より大きいです" -#: fe-connect.c:2356 +#: fe-connect.c:2357 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "TCPソケットを非遅延モードに設定できませんでした: %s" -#: fe-connect.c:2415 +#: fe-connect.c:2416 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "ソケット\"%s\"のサーバーへの接続に失敗しました: " -#: fe-connect.c:2441 +#: fe-connect.c:2442 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "\"%s\"(%s)、ポート%sのサーバーへの接続に失敗しました: " -#: fe-connect.c:2446 +#: fe-connect.c:2447 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "\"%s\"、ポート%sのサーバーへの接続に失敗しました: " -#: fe-connect.c:2469 +#: fe-connect.c:2470 #, c-format msgid "\tIs the server running locally and accepting connections on that socket?" msgstr "\tサーバーはローカルで稼働していてそのソケットで接続を受け付けていますか?" -#: fe-connect.c:2471 +#: fe-connect.c:2472 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "\tサーバーはそのホスト上で稼働していてTCP/IP接続を受け付けていますか?" -#: fe-connect.c:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 -#: fe-connect.c:3410 +#: fe-connect.c:2518 fe-connect.c:2552 fe-connect.c:2587 fe-connect.c:2685 +#: fe-connect.c:3411 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s)が失敗しました: %s" -#: fe-connect.c:2650 +#: fe-connect.c:2651 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s)が失敗しました: エラーコード %d" -#: fe-connect.c:2962 +#: fe-connect.c:2963 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "接続状態が不正です。メモリ障害の可能性があります" -#: fe-connect.c:3045 +#: fe-connect.c:3046 #, c-format msgid "invalid port number: \"%s\"" msgstr "不正なポート番号です: \"%s\"" -#: fe-connect.c:3059 +#: fe-connect.c:3060 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "ホスト名\"%s\"をアドレスに変換できませんでした: %s" -#: fe-connect.c:3071 +#: fe-connect.c:3072 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "ネットワークアドレス\"%s\"をパースできませんでした: %s" -#: fe-connect.c:3082 +#: fe-connect.c:3083 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "Unixドメインソケットのパス\"%s\"が長すぎます(最大 %d バイト)" -#: fe-connect.c:3096 +#: fe-connect.c:3097 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "Unixドメインソケットのパス\"%s\"をアドレスに変換できませんでした: %s" -#: fe-connect.c:3262 fe-connect.c:4709 +#: fe-connect.c:3263 fe-connect.c:4710 #, c-format msgid "GSSAPI encryption required but it is not supported over a local socket" msgstr "GSSAPI暗号化が要求されていますが、ローカルソケットではサポートされません" -#: fe-connect.c:3270 fe-connect.c:4838 +#: fe-connect.c:3271 fe-connect.c:4839 #, c-format msgid "GSSAPI encryption required but no credential cache" msgstr "GSSAPI暗号化が要求されましたが、資格証明キャッシュがありません" -#: fe-connect.c:3338 +#: fe-connect.c:3339 #, c-format msgid "could not create socket: %s" msgstr "ソケットを作成できませんでした: %s" -#: fe-connect.c:3369 +#: fe-connect.c:3370 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "ソケットを非ブロッキングモードに設定できませんでした: %s\\" -#: fe-connect.c:3380 +#: fe-connect.c:3381 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "ソケットをclose-on-execモードに設定できませんでした: %s" -#: fe-connect.c:3537 +#: fe-connect.c:3538 #, c-format msgid "could not get socket error status: %s" msgstr "ソケットのエラー状態を取得できませんでした: %s" -#: fe-connect.c:3564 +#: fe-connect.c:3565 #, c-format msgid "could not get client address from socket: %s" msgstr "ソケットからクライアントアドレスを取得できませんでした: %s" -#: fe-connect.c:3590 +#: fe-connect.c:3591 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "このプラットフォームでは requirepeer パラメータはサポートされていません" -#: fe-connect.c:3592 +#: fe-connect.c:3593 #, c-format msgid "could not get peer credentials: %s" msgstr "接続先の資格証明を取得できませんでした: %s" -#: fe-connect.c:3605 +#: fe-connect.c:3606 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "requirepeerは\"%s\"を指定していますが、実際の接続先名は\"%s\"です" -#: fe-connect.c:3643 +#: fe-connect.c:3644 #, c-format msgid "could not send GSSAPI negotiation packet: %s" msgstr "GSSAPIネゴシエーションパケットを送信できませんでした: %s" -#: fe-connect.c:3682 +#: fe-connect.c:3683 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "SSLネゴシエーションパケットを送信できませんでした: %s" -#: fe-connect.c:3708 +#: fe-connect.c:3709 #, c-format msgid "could not send cancel packet: %s" msgstr "キャンセルパケットを送信できませんでした: %s" -#: fe-connect.c:3738 +#: fe-connect.c:3739 #, c-format msgid "could not send startup packet: %s" msgstr "開始パケットを送信できませんでした: %s" -#: fe-connect.c:3811 +#: fe-connect.c:3812 msgid "server does not support SSL, but SSL was required" msgstr "サーバーはSSLをサポートしていませんが、要求されています" -#: fe-connect.c:3821 +#: fe-connect.c:3822 #, c-format msgid "server sent an error response during SSL exchange" msgstr "SSLハンドシェイク中にサーバーからエラー応答が返されました" -#: fe-connect.c:3826 +#: fe-connect.c:3827 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "SSLネゴシエーションに対して不正な応答を受信しました: %c" -#: fe-connect.c:3846 +#: fe-connect.c:3847 #, c-format msgid "received unencrypted data after SSL response" msgstr "SSL応答の後に非暗号化データを受信しました" -#: fe-connect.c:3909 +#: fe-connect.c:3910 #, c-format msgid "server sent an error response during GSS encryption exchange" msgstr "GSS暗号化ハンドシェイク中にサーバーからエラー応答が返されました" -#: fe-connect.c:3927 +#: fe-connect.c:3928 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "サーバーがGSSAPI暗号化サポートしていませんが、要求されてます" -#: fe-connect.c:3931 +#: fe-connect.c:3932 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "GSSAPIネゴシエーションに対して不正な応答を受信しました: %c" -#: fe-connect.c:3953 +#: fe-connect.c:3954 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "GSSAPI暗号化応答の後に非暗号化データを受信しました" -#: fe-connect.c:4014 +#: fe-connect.c:4015 #, c-format msgid "expected authentication request from server, but received %c" msgstr "サーバーからの認証要求を想定していましたが、%cを受信しました" -#: fe-connect.c:4042 fe-connect.c:4174 +#: fe-connect.c:4043 fe-connect.c:4175 #, c-format msgid "received invalid authentication request" msgstr "不正な認証要求を受信しました" -#: fe-connect.c:4048 +#: fe-connect.c:4049 #, c-format msgid "received invalid protocol negotiation message" msgstr "不正なプロトコルネゴシエーションメッセージを受信しました" -#: fe-connect.c:4067 fe-connect.c:4121 +#: fe-connect.c:4068 fe-connect.c:4122 #, c-format msgid "received invalid error message" msgstr "不正なエラーメッセージを受信しました" -#: fe-connect.c:4151 +#: fe-connect.c:4152 #, c-format msgid "received duplicate protocol negotiation message" msgstr "重複したプロトコルネゴシエーションメッセージを受信しました" -#: fe-connect.c:4253 +#: fe-connect.c:4254 #, c-format msgid "internal error: async authentication has no handler" msgstr "内部エラー: 非同期認証のハンドラーがありません" -#: fe-connect.c:4278 +#: fe-connect.c:4279 #, c-format msgid "internal error: async cleanup did not release polling socket" msgstr "内部エラー: 非同期クリーンアップがポーリング中のソケットを解放しませんでした" -#: fe-connect.c:4301 +#: fe-connect.c:4302 #, c-format msgid "internal error: async authentication did not set a socket for polling" msgstr "内部エラー: 非同期認証がポーリング対象のソケットを設定しませんでした" -#: fe-connect.c:4334 +#: fe-connect.c:4335 #, c-format msgid "unexpected message from server during startup" msgstr "起動中にサーバーから想定外のメッセージがありました" -#: fe-connect.c:4425 +#: fe-connect.c:4426 #, c-format msgid "session is read-only" msgstr "セッションは読み取り専用です" -#: fe-connect.c:4427 +#: fe-connect.c:4428 #, c-format msgid "session is not read-only" msgstr "セッションは読み取り専用ではありません" -#: fe-connect.c:4480 +#: fe-connect.c:4481 #, c-format msgid "server is in hot standby mode" msgstr "サーバーはホットスタンバイモードです" -#: fe-connect.c:4482 +#: fe-connect.c:4483 #, c-format msgid "server is not in hot standby mode" msgstr "サーバーはスタンバイモードではありません" -#: fe-connect.c:4607 fe-connect.c:4657 +#: fe-connect.c:4608 fe-connect.c:4658 #, c-format msgid "\"%s\" failed" msgstr "\"%s\"が失敗しました" -#: fe-connect.c:4671 +#: fe-connect.c:4672 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "接続状態%dは不正です。メモリ障害の可能性があります" -#: fe-connect.c:5508 +#: fe-connect.c:5509 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "不正なLDAP URL\"%s\":スキームはldap://でなければなりません" -#: fe-connect.c:5523 +#: fe-connect.c:5524 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "不正なLDAP URL \"%s\": 識別名がありません" -#: fe-connect.c:5535 fe-connect.c:5593 +#: fe-connect.c:5536 fe-connect.c:5594 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "不正なLDAP URL \"%s\": ちょうど1つの属性を持たなければなりません" -#: fe-connect.c:5547 fe-connect.c:5609 +#: fe-connect.c:5548 fe-connect.c:5610 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "不正なLDAP URL \"%s\": 検索スコープ(base/one/sub)を持たなければなりません" -#: fe-connect.c:5559 +#: fe-connect.c:5560 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "不正なLDAP URL \"%s\": フィルタがありません" -#: fe-connect.c:5581 +#: fe-connect.c:5582 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "不正なLDAP URL \"%s\": ポート番号が不正です" -#: fe-connect.c:5618 +#: fe-connect.c:5619 #, c-format msgid "could not create LDAP structure" msgstr "LDAP構造体を作成できませんでした" -#: fe-connect.c:5693 +#: fe-connect.c:5694 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "LDAPサーバーで検索に失敗しました: %s" -#: fe-connect.c:5703 +#: fe-connect.c:5704 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "LDAP参照で複数のエントリが見つかりました" -#: fe-connect.c:5705 fe-connect.c:5716 +#: fe-connect.c:5706 fe-connect.c:5717 #, c-format msgid "no entry found on LDAP lookup" msgstr "LDAP参照でエントリが見つかりません" -#: fe-connect.c:5726 fe-connect.c:5738 +#: fe-connect.c:5727 fe-connect.c:5739 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "LDAP参照で属性に値がありません" -#: fe-connect.c:5789 fe-connect.c:5808 fe-connect.c:6332 +#: fe-connect.c:5753 +#, c-format +msgid "connection info string size exceeds the maximum allowed (%d)" +msgstr "接続情報文字列の長さが上限値(%d)を超えています" + +#: fe-connect.c:5804 fe-connect.c:5823 fe-connect.c:6347 #, c-format msgid "missing \"=\" after \"%s\" in connection info string" msgstr "接続情報文字列において\"%s\"の後に\"=\"がありませんでした" -#: fe-connect.c:5879 fe-connect.c:6515 fe-connect.c:7345 +#: fe-connect.c:5894 fe-connect.c:6530 fe-connect.c:7360 #, c-format msgid "invalid connection option \"%s\"" msgstr "不正な接続オプション\"%s\"" -#: fe-connect.c:5894 fe-connect.c:6380 +#: fe-connect.c:5909 fe-connect.c:6395 #, c-format msgid "unterminated quoted string in connection info string" msgstr "接続情報文字列内の閉じていない引用符" -#: fe-connect.c:5974 +#: fe-connect.c:5989 #, c-format msgid "definition of service \"%s\" not found" msgstr "サービス定義\"%s\"がみつかりません" -#: fe-connect.c:6000 +#: fe-connect.c:6015 #, c-format msgid "service file \"%s\" not found" msgstr "サービスファイル\"%s\"がみつかりません" -#: fe-connect.c:6013 +#: fe-connect.c:6028 #, c-format msgid "line %d too long in service file \"%s\"" msgstr "サービスファイル\"%2$s\"の行%1$dが長すぎます" -#: fe-connect.c:6084 fe-connect.c:6127 +#: fe-connect.c:6099 fe-connect.c:6142 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "サービスファイル\"%s\"の行%dで構文エラー" -#: fe-connect.c:6095 +#: fe-connect.c:6110 #, c-format msgid "nested service specifications not supported in service file \"%s\", line %d" msgstr "サービスファイル\"%s\"、行%dでのネストしたサービス指定はサポートされていません" -#: fe-connect.c:6834 +#: fe-connect.c:6849 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "内部パーサ処理へ伝播した不正なURI: \"%s\"" -#: fe-connect.c:6911 +#: fe-connect.c:6926 #, c-format msgid "end of string reached when looking for matching \"]\" in IPv6 host address in URI: \"%s\"" msgstr "URI \"%s\"内のIPv6ホストアドレスにおいて対応する\"]\"を探している間に文字列が終わりました" -#: fe-connect.c:6918 +#: fe-connect.c:6933 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "URI内ではIPv6ホストアドレスは空であってはなりません: \"%s\"" -#: fe-connect.c:6933 +#: fe-connect.c:6948 #, c-format msgid "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): \"%s\"" msgstr "URI内の位置%2$dに想定外の文字\"%1$c\"があります(\":\"または\"/\"を期待していました): \"%3$s\"" -#: fe-connect.c:7062 +#: fe-connect.c:7077 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "URI問い合わせパラメータ内にキーと値を分ける\"=\"が余分にあります: \"%s\"" -#: fe-connect.c:7082 +#: fe-connect.c:7097 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "URI問い合わせパラメータ内にキーと値を分ける\\\"=\\\"がありません: \"%s\"" -#: fe-connect.c:7134 +#: fe-connect.c:7149 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "不正なURI問い合わせパラメータ:\"%s\"" -#: fe-connect.c:7218 +#: fe-connect.c:7233 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "不正なパーセント符号化トークン: \"%s\"" -#: fe-connect.c:7228 +#: fe-connect.c:7243 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "パーセント符号化された値では値%%00は許されません: \"%s\"" -#: fe-connect.c:7250 +#: fe-connect.c:7265 #, c-format msgid "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" msgstr "\"%s\"に予期しない空白文字があります、代わりにパーセントエンコードされた空白文字(%%20)を使用してください" -#: fe-connect.c:7626 +#: fe-connect.c:7641 msgid "connection pointer is NULL\n" msgstr "接続ポインタはNULLです\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 -#: fe-protocol3.c:1005 fe-protocol3.c:1038 +#: fe-connect.c:7649 fe-exec.c:718 fe-exec.c:980 fe-exec.c:3475 +#: fe-protocol3.c:1006 fe-protocol3.c:1039 msgid "out of memory\n" msgstr "メモリ不足\n" -#: fe-connect.c:7936 +#: fe-connect.c:7951 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "WARNING: パスワードファイル\"%s\"がテキストファイルではありません\n" -#: fe-connect.c:7946 +#: fe-connect.c:7961 #, c-format msgid "WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n" msgstr "警告: パスワードファイル \"%s\" がグループメンバもしくは他のユーザーから読める状態になっています。この権限はu=rw (0600)以下にすべきです\n" -#: fe-connect.c:8050 +#: fe-connect.c:8065 #, c-format msgid "password retrieved from file \"%s\"" msgstr "パスワードはファイル\"%s\"から取り出しました" -#: fe-connect.c:8216 +#: fe-connect.c:8231 #, c-format msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "接続オプション\"%2$s\"に対する不正な整数値\"%1$s\"" -#: fe-exec.c:469 fe-exec.c:3544 +#: fe-exec.c:469 fe-exec.c:3549 #, c-format msgid "row number %d is out of range 0..%d" msgstr "行番号%dは0..%dの範囲を超えています" -#: fe-exec.c:531 fe-protocol3.c:2126 +#: fe-exec.c:531 fe-protocol3.c:2140 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:834 +#: fe-exec.c:839 #, c-format msgid "write to server failed" msgstr "サーバーへの書き込みに失敗" -#: fe-exec.c:874 +#: fe-exec.c:879 #, c-format msgid "no error text available" msgstr "エラー文字列がありません" -#: fe-exec.c:963 +#: fe-exec.c:968 msgid "NOTICE" msgstr "注意" -#: fe-exec.c:1021 +#: fe-exec.c:1026 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresultはINT_MAX個以上のタプルを扱えません" -#: fe-exec.c:1033 +#: fe-exec.c:1038 msgid "size_t overflow" msgstr "size_t オーバーフロー" -#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 +#: fe-exec.c:1454 fe-exec.c:1523 fe-exec.c:1569 #, c-format msgid "command string is a null pointer" msgstr "コマンド文字列がヌルポインタです" -#: fe-exec.c:1455 fe-exec.c:3014 +#: fe-exec.c:1460 fe-exec.c:3019 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%sはパイプラインモードでは使用できません" -#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 +#: fe-exec.c:1528 fe-exec.c:1574 fe-exec.c:1668 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "パラメータ数は0から%dまでの間でなければなりません" -#: fe-exec.c:1559 fe-exec.c:1658 +#: fe-exec.c:1564 fe-exec.c:1663 #, c-format msgid "statement name is a null pointer" msgstr "文の名前がヌルポインタです" -#: fe-exec.c:1700 fe-exec.c:3390 +#: fe-exec.c:1705 fe-exec.c:3395 #, c-format msgid "no connection to the server" msgstr "サーバーへの接続がありません" -#: fe-exec.c:1708 fe-exec.c:3398 +#: fe-exec.c:1713 fe-exec.c:3403 #, c-format msgid "another command is already in progress" msgstr "他のコマンドがすでに処理中です" -#: fe-exec.c:1738 +#: fe-exec.c:1743 #, c-format msgid "cannot queue commands during COPY" msgstr "COPY中はコマンドのキューイングはできません" -#: fe-exec.c:1857 +#: fe-exec.c:1862 #, c-format msgid "length must be given for binary parameter" msgstr "バイナリパラメータには長さを指定する必要があります" -#: fe-exec.c:2216 +#: fe-exec.c:2221 #, c-format msgid "unexpected asyncStatus: %d" msgstr "想定外のasyncStatus: %d" -#: fe-exec.c:2372 +#: fe-exec.c:2377 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "同期的にコマンドを実行する関数はパイプラインモード中は実行できません" -#: fe-exec.c:2389 +#: fe-exec.c:2394 msgid "COPY terminated by new PQexec" msgstr "新たなPQexec\"によりCOPYが終了しました" -#: fe-exec.c:2405 +#: fe-exec.c:2410 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "COPY BOTH 実行中の PQexec は許可されていません" -#: fe-exec.c:2641 +#: fe-exec.c:2646 #, c-format msgid "unrecognized message type \"%c\"" msgstr "認識できないメッセージタイプ\"%c\"" -#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 +#: fe-exec.c:2718 fe-exec.c:2772 fe-exec.c:2840 fe-protocol3.c:2071 #, c-format msgid "no COPY in progress" msgstr "実行中のCOPYはありません" -#: fe-exec.c:3021 +#: fe-exec.c:3026 #, c-format msgid "connection in wrong state" msgstr "接続状態が異常です" -#: fe-exec.c:3064 +#: fe-exec.c:3069 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "パイプラインモードに入れません、接続がアイドル状態ではありません" -#: fe-exec.c:3100 fe-exec.c:3121 +#: fe-exec.c:3105 fe-exec.c:3126 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "未回収の結果が残っている状態でパイプラインモードを抜けることはできません" -#: fe-exec.c:3104 +#: fe-exec.c:3109 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "ビジー状態でパイプラインモードを抜けることはできません" -#: fe-exec.c:3115 +#: fe-exec.c:3120 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "COPY実行中にパイプラインモードを抜けることはできません" -#: fe-exec.c:3314 +#: fe-exec.c:3319 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "パイプラインモード外でパイプライン送出はできません" -#: fe-exec.c:3433 +#: fe-exec.c:3438 msgid "invalid ExecStatusType code" msgstr "ExecStatusTypeコードが不正です" -#: fe-exec.c:3460 +#: fe-exec.c:3465 msgid "PGresult is not an error result\n" msgstr "PGresutがエラー結果ではありません\n" -#: fe-exec.c:3528 fe-exec.c:3551 +#: fe-exec.c:3533 fe-exec.c:3556 #, c-format msgid "column number %d is out of range 0..%d" msgstr "列番号%dは0..%dの範囲を超えています" -#: fe-exec.c:3566 +#: fe-exec.c:3571 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "パラメータ%dは0..%dの範囲を超えています" -#: fe-exec.c:3877 +#: fe-exec.c:3882 #, c-format msgid "could not interpret result from server: %s" msgstr "サーバーからの結果を解釈できませんでした: %s" -#: fe-exec.c:4152 fe-exec.c:4266 +#: fe-exec.c:4157 fe-exec.c:4292 #, c-format msgid "incomplete multibyte character" msgstr "不完全なマルチバイト文字" -#: fe-exec.c:4154 fe-exec.c:4285 +#: fe-exec.c:4159 fe-exec.c:4311 #, c-format msgid "invalid multibyte character" msgstr "不正なマルチバイト文字" +#: fe-exec.c:4413 +#, c-format +msgid "escaped string size exceeds the maximum allowed (%zu)" +msgstr "エスケープされた文字列のサイズが上限(%zu)を超えています" + +#: fe-exec.c:4590 +#, c-format +msgid "escaped bytea size exceeds the maximum allowed (%zu)" +msgstr "エスケープされたbyteaのサイズが上限(%zu)を超えています" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "GSSAPI名のインポートエラー" @@ -1436,196 +1523,196 @@ msgstr "不正なソケットです" msgid "%s() failed: %s" msgstr "%s() が失敗しました: %s" -#: fe-protocol3.c:189 +#: fe-protocol3.c:190 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "待機中にサーバーからメッセージ種類0x%02xが届きました" -#: fe-protocol3.c:402 +#: fe-protocol3.c:403 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "サーバーが先行の行記述(\"T\"メッセージ)なしでデータ(\"D\"メッセージ)を送信しました" -#: fe-protocol3.c:444 +#: fe-protocol3.c:445 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "サーバーから想定外の応答がありました。受け付けた先頭文字は\"%c\"です" -#: fe-protocol3.c:468 +#: fe-protocol3.c:469 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "メッセージの内容がメッセージタイプ\"%c\"での長さと合っていません" -#: fe-protocol3.c:503 +#: fe-protocol3.c:504 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "サーバーとの同期が失われました。受信したメッセージタイプは\"%c\"、長さは%d" -#: fe-protocol3.c:550 fe-protocol3.c:590 +#: fe-protocol3.c:551 fe-protocol3.c:591 msgid "insufficient data in \"T\" message" msgstr "\"T\"メッセージ内のデータが不十分です" -#: fe-protocol3.c:661 fe-protocol3.c:867 +#: fe-protocol3.c:662 fe-protocol3.c:868 msgid "out of memory for query result" msgstr "問い合わせ結果用のメモリが不足しています" -#: fe-protocol3.c:730 +#: fe-protocol3.c:731 msgid "insufficient data in \"t\" message" msgstr "\"t\"メッセージ内のデータが足りません" -#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 +#: fe-protocol3.c:790 fe-protocol3.c:822 fe-protocol3.c:840 msgid "insufficient data in \"D\" message" msgstr "\"D\"\"メッセージ内のデータが不十分です" -#: fe-protocol3.c:795 +#: fe-protocol3.c:796 msgid "unexpected field count in \"D\" message" msgstr "\"D\"メッセージ内のフィールド数が想定外です。" -#: fe-protocol3.c:1051 +#: fe-protocol3.c:1052 msgid "no error message available\n" msgstr "エラーメッセージがありません\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1099 fe-protocol3.c:1118 +#: fe-protocol3.c:1100 fe-protocol3.c:1119 #, c-format msgid " at character %s" msgstr "(文字位置: %s)" -#: fe-protocol3.c:1131 +#: fe-protocol3.c:1132 #, c-format msgid "DETAIL: %s\n" msgstr "DETAIL: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1135 #, c-format msgid "HINT: %s\n" msgstr "HINT: %s\n" -#: fe-protocol3.c:1137 +#: fe-protocol3.c:1138 #, c-format msgid "QUERY: %s\n" msgstr "QUERY: %s\n" -#: fe-protocol3.c:1144 +#: fe-protocol3.c:1145 #, c-format msgid "CONTEXT: %s\n" msgstr "CONTEXT: %s\n" -#: fe-protocol3.c:1153 +#: fe-protocol3.c:1154 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "SCHEMA NAME: %s\n" -#: fe-protocol3.c:1157 +#: fe-protocol3.c:1158 #, c-format msgid "TABLE NAME: %s\n" msgstr "TABLE NAME: %s\n" -#: fe-protocol3.c:1161 +#: fe-protocol3.c:1162 #, c-format msgid "COLUMN NAME: %s\n" msgstr "COLUMN NAME: %s\n" -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1166 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "DATATYPE NAME: %s\n" -#: fe-protocol3.c:1169 +#: fe-protocol3.c:1170 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "CONSTRAINT NAME: %s\n" -#: fe-protocol3.c:1181 +#: fe-protocol3.c:1182 msgid "LOCATION: " msgstr "LOCATION: " -#: fe-protocol3.c:1183 +#: fe-protocol3.c:1184 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1185 +#: fe-protocol3.c:1186 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1380 +#: fe-protocol3.c:1394 #, c-format msgid "LINE %d: " msgstr "行 %d: " -#: fe-protocol3.c:1442 +#: fe-protocol3.c:1456 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーがより大きなバージョン番号へのダウングレードを要求しました" -#: fe-protocol3.c:1448 +#: fe-protocol3.c:1462 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが3.0より前のプロトコルバージョンへのダウングレードを要求しました" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1469 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが、存在しない 3.1 プロトコルバージョンへのダウングレードを要求しました" -#: fe-protocol3.c:1461 +#: fe-protocol3.c:1475 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーがサポート外パラメータの数として負数を通知しました" -#: fe-protocol3.c:1467 +#: fe-protocol3.c:1481 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーがネゴシエーションを行いましたが、変更要求がありませんでした" -#: fe-protocol3.c:1473 +#: fe-protocol3.c:1487 #, c-format msgid "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" msgstr "サーバーはプロトコルバージョン %d.%d のみサポートしていますが、\"%s\"は %d.%d に設定されています" -#: fe-protocol3.c:1498 +#: fe-protocol3.c:1512 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが\"%s\"プレフィクスのないサポートされていないパラメータ名(\"%s\")を報告しました" -#: fe-protocol3.c:1501 +#: fe-protocol3.c:1515 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが要求されていないサポート外のパラメータ(\"%s\")を通知しました" -#: fe-protocol3.c:1508 +#: fe-protocol3.c:1522 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "不正なプロトコルネゴシエーションメッセージを受信: メッセージが短すぎます" -#: fe-protocol3.c:1574 +#: fe-protocol3.c:1588 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d not allowed in protocol version 3.0 (must be 4 bytes)" msgstr "不正なBackendKeyDataデータを受信しました: 長さ%dのキャンセルキーはプロトコルバージョン3.0では許可されません(4バイトでなければなりません)" -#: fe-protocol3.c:1581 +#: fe-protocol3.c:1595 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too short (minimum 4 bytes)" msgstr "不正なBackendKeyDataデータを受信しました: 長さ%dのキャンセルキーは短すぎます (最低4バイト)" -#: fe-protocol3.c:1588 +#: fe-protocol3.c:1602 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too long (maximum 256 bytes)" msgstr "不正なBackendKeyDataデータを受信しました: 長さ%dのキャンセルキーは長すぎます (最高256バイト)" -#: fe-protocol3.c:1952 +#: fe-protocol3.c:1966 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: テキストのCOPY OUTを行っていません" -#: fe-protocol3.c:2327 +#: fe-protocol3.c:2341 #, c-format msgid "protocol error: no function result" msgstr "プロトコルエラー: 関数の結果がありません" -#: fe-protocol3.c:2339 +#: fe-protocol3.c:2353 #, c-format msgid "protocol error: id=0x%x" msgstr "プロトコルエラー: id=0x%x" @@ -1955,5 +2042,74 @@ msgstr "サーバーにデータを送信できませんでした: %s" msgid "unrecognized socket error: 0x%08X/%d" msgstr "不明なソケットエラー 0x%08X/%d" +#~ msgid "adding kqueue timer to multiplexer: %m" +#~ msgstr "マルチプレクサへのkqueueタイマー追加中にエラー: %m" + +#~ msgid "could not add to epoll set: %m" +#~ msgstr "epollセットに追加できませんでした: %m" + +#~ msgid "could not add to kqueue: %m" +#~ msgstr "kqueueへの追加に失敗しました: %m" + +#~ msgid "could not comb kqueue: %m" +#~ msgstr "kqueue の走査に失敗しました: %m" + +#~ msgid "could not delete from epoll set: %m" +#~ msgstr "epollセットから削除できませんでした: %m" + +#~ msgid "could not delete from kqueue: %m" +#~ msgstr "kqueueからの削除に失敗しました: %m" + +#~ msgid "could not modify kqueue: %m" +#~ msgstr "kqueueの設定変更に失敗しました: %m" + +#~ msgid "could not update epoll set: %m" +#~ msgstr "epollセットの設定変更に失敗しました: %m" + +#~ msgid "deleting kqueue timer: %m" +#~ msgstr "kqueue タイマー削除中にエラー: %m" + +#~ msgid "failed to add timerfd to epoll set: %m" +#~ msgstr "epollセットへのtimerfdの追加に失敗しました: %m" + +#~ msgid "failed to create epoll set: %m" +#~ msgstr "epollセットの作成に失敗しました: %m" + +#~ msgid "failed to create timer kqueue: %m" +#~ msgstr "タイマーkqueueの作成に失敗しました: %m" + +#~ msgid "failed to create timerfd: %m" +#~ msgstr "timerfd の作成に失敗しました: %m" + #~ msgid "getting timerfd value: %m" #~ msgstr "timerfdの値の取得中にエラー: %m" + +#~ msgid "internal error: array member found at nesting level %d" +#~ msgstr "内部エラー: ネストレベル%dに配列の要素がありました" + +#~ msgid "internal error: field '%s' still active at end of object" +#~ msgstr "内部エラー: オブジェクト終了時点でフィールド '%s' が未終了です" + +#~ msgid "internal error: found unexpected array end while parsing field '%s'" +#~ msgstr "内部エラー: フィールド'%s'のパース中に予期しない配列がありました" + +#~ msgid "internal error: scalar field '%s' would be assigned twice" +#~ msgstr "内部エラー: フィールド '%s' に2回代入されます" + +#~ msgid "internal error: scalar target found at nesting level %d" +#~ msgstr "内部エラー: ネストレベル%dにーターゲットがありました" + +#~ msgid "internal error: started field '%s' before field '%s' was finished" +#~ msgstr "内部エラー: フィールド '%2$s' の終了前にフィールド '%1$s' が開始されました" + +#~ msgid "removing kqueue timer from multiplexer: %m" +#~ msgstr "マルチプレクサからのkqueueタイマー削除中にエラー: %m" + +#~ msgid "setting kqueue timer to %ld: %m" +#~ msgstr "kqueueタイマーの%ldへの設定中にエラー: %m" + +#~ msgid "setting timerfd to %ld: %m" +#~ msgstr "timerfdの%ldへの設定中にエラー: %m" + +#~ msgid "unknown libcurl socket operation: %d" +#~ msgstr "未知のlibcurlソケット操作: %d" diff --git a/src/interfaces/libpq/po/ka.po b/src/interfaces/libpq/po/ka.po index 13c37ff3a05..0651c388960 100644 --- a/src/interfaces/libpq/po/ka.po +++ b/src/interfaces/libpq/po/ka.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: libpq (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-24 00:10+0000\n" -"PO-Revision-Date: 2025-08-24 09:40+0200\n" +"POT-Creation-Date: 2025-12-21 05:10+0000\n" +"PO-Revision-Date: 2025-12-22 04:47+0100\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -16,282 +16,208 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.7\n" +"X-Generator: Poedit 3.8\n" -#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#: ../libpq-oauth/oauth-curl.c:308 ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "libcurl-ის ადვილი დამმუშავებლის წაშლა ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:327 +#: ../libpq-oauth/oauth-curl.c:328 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "libcurl-ის დამმუშავებლების მოსუფთავება ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#: ../libpq-oauth/oauth-curl.c:394 ../libpq-oauth/oauth-curl.c:405 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "%s-ის დაყენება OAuth კავშირზე ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:412 +#: ../libpq-oauth/oauth-curl.c:416 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "OAuth-ის პასუხიდან %s-ის მიღება ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 +#: ../libpq-oauth/oauth-curl.c:485 fe-auth-oauth.c:209 fe-auth-oauth.c:271 +#: fe-auth-oauth.c:333 #, c-format -msgid "JSON is too deeply nested" -msgstr "JSON მეტისმეტად ღრმადაა ჩადგმული" +msgid "field \"%s\" must be a string" +msgstr "ველი \"%s\" სტრიქონი უნდა იყოს" -#: ../libpq-oauth/oauth-curl.c:540 +#: ../libpq-oauth/oauth-curl.c:489 #, c-format -msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "შიდა შეცდომა: დაიწყო ველი '%s' მანამდე, სანამ დასრულდა ველი '%s'" +msgid "field \"%s\" must be a number" +msgstr "ველი \"%s\" რიცხვი უნდა იყოს" -#: ../libpq-oauth/oauth-curl.c:567 +#: ../libpq-oauth/oauth-curl.c:493 #, c-format -msgid "field \"%s\" is duplicated" -msgstr "ველი \"%s\" დუბლირებულია" +msgid "field \"%s\" must be an array of strings" +msgstr "ველი \"%s\" სტრიქონების მასივი უნდა იყოს" -#: ../libpq-oauth/oauth-curl.c:592 +#: ../libpq-oauth/oauth-curl.c:498 #, c-format -msgid "internal error: field '%s' still active at end of object" -msgstr "შიდა შეცდომა: ველი '%s' ჯერ კიდევ აქტიურია ობიექტის ბოლოში" +msgid "field \"%s\" has unexpected type" +msgstr "ველის \"%s\" ტიპი მოულოდნელია" -#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 +#: ../libpq-oauth/oauth-curl.c:522 ../libpq-oauth/oauth-curl.c:632 +#: fe-auth-oauth.c:215 fe-auth-oauth.c:277 #, c-format -msgid "top-level element must be an object" -msgstr "უმაღლესი დონის ელემენტი ობიექტი უნდა იყოს" - -#: ../libpq-oauth/oauth-curl.c:648 -#, c-format -msgid "internal error: found unexpected array end while parsing field '%s'" -msgstr "შიდა შეცდომა: აღმოჩენილია მოულოდნელი მასივის დასასრული '%s' ველის დამუშავებისას" - -#: ../libpq-oauth/oauth-curl.c:703 -#, c-format -msgid "internal error: scalar target found at nesting level %d" -msgstr "შიდა შეცდომა: აღმოჩენილია სკალარული სამიზნე ერთმანეთში ჩალაგების დონეზე %d" +msgid "JSON is too deeply nested" +msgstr "JSON მეტისმეტად ღრმადაა ჩადგმული" -#: ../libpq-oauth/oauth-curl.c:713 +#: ../libpq-oauth/oauth-curl.c:574 fe-auth-oauth.c:324 #, c-format -msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "შიდა შეცდომა: შეიძლება, სკალარული ველი '%s' ორჯერაა მინიჭებული" +msgid "field \"%s\" is duplicated" +msgstr "ველი \"%s\" დუბლირებულია" -#: ../libpq-oauth/oauth-curl.c:735 +#: ../libpq-oauth/oauth-curl.c:614 ../libpq-oauth/oauth-curl.c:674 +#: fe-auth-oauth.c:264 fe-auth-oauth.c:298 #, c-format -msgid "internal error: array member found at nesting level %d" -msgstr "შიდა შეცდომა: ერთმანეთში ჩალაგების დონეზე %d აღმოჩენილია მასივის წევრი" +msgid "top-level element must be an object" +msgstr "უმაღლესი დონის ელემენტი ობიექტი უნდა იყოს" -#: ../libpq-oauth/oauth-curl.c:770 +#: ../libpq-oauth/oauth-curl.c:777 #, c-format msgid "no content type was provided" msgstr "შემცველობის ტიპი მოწოდებული არაა" -#: ../libpq-oauth/oauth-curl.c:809 +#: ../libpq-oauth/oauth-curl.c:816 #, c-format msgid "unexpected content type: \"%s\"" msgstr "მოულოდნელი შემცველობის ტიპი: \"%s\"" -#: ../libpq-oauth/oauth-curl.c:834 +#: ../libpq-oauth/oauth-curl.c:841 #, c-format msgid "response contains embedded NULLs" msgstr "პასუხი ჩაშენებულ NULL-ებს შეიცავს" -#: ../libpq-oauth/oauth-curl.c:844 +#: ../libpq-oauth/oauth-curl.c:851 #, c-format msgid "response is not valid UTF-8" msgstr "პასუხი არასწორი UTF-8-ა" -#: ../libpq-oauth/oauth-curl.c:884 +#: ../libpq-oauth/oauth-curl.c:891 #, c-format msgid "field \"%s\" is missing" msgstr "ველი \"%s\" აკლია" -#: ../libpq-oauth/oauth-curl.c:1118 +#: ../libpq-oauth/oauth-curl.c:1097 +msgid "failed to parse token error response" +msgstr "ტოკენის შეცდომის პასუხის დამუშავება ჩავარდა" + +#: ../libpq-oauth/oauth-curl.c:1125 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "პროვაიდერმა უარჰყო oauth_client_secret" -#: ../libpq-oauth/oauth-curl.c:1182 -#, c-format -msgid "failed to create epoll set: %m" -msgstr "epoll-ის ნაკრების შექმნა ჩავარდა: %m" - -#: ../libpq-oauth/oauth-curl.c:1189 -#, c-format -msgid "failed to create timerfd: %m" -msgstr "timerfd-ის შექმნა ჩავარდა: %m" - -#: ../libpq-oauth/oauth-curl.c:1195 +#: ../libpq-oauth/oauth-curl.c:1126 #, c-format -msgid "failed to add timerfd to epoll set: %m" -msgstr "epoll-ის ნაკრებში timerfd-ის ჩამატება ჩავარდა; %m" +msgid "provider requires client authentication, and no oauth_client_secret is set" +msgstr "პროვაიდერმა უარჰყო კლიენტის ავთენტიკაცია და oauth_client_secret დაყენებული არაა" -#. translator: the term "kqueue" (kernel queue) should not be translated -#: ../libpq-oauth/oauth-curl.c:1205 -#, c-format -msgid "failed to create kqueue: %m" -msgstr "kqueue-ის შექმნა ჩავარდა: %m" - -#: ../libpq-oauth/oauth-curl.c:1218 -#, c-format -msgid "failed to create timer kqueue: %m" -msgstr "ტაიმერის kqueue-ის შექმნა ჩავარდა: %m" - -#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 -#, c-format -msgid "unknown libcurl socket operation: %d" -msgstr "libcurl-ის სოკეტის უცნობი ოპერაცია: %d" - -#: ../libpq-oauth/oauth-curl.c:1279 -#, c-format -msgid "could not add to epoll set: %m" -msgstr "epoll-ის ნაკრებში ჩამატება შეუძლებელია: %m" - -#: ../libpq-oauth/oauth-curl.c:1283 -#, c-format -msgid "could not delete from epoll set: %m" -msgstr "epoll-ის ნაკრებიდან წაშლა შეუძლებელია: %m" - -#: ../libpq-oauth/oauth-curl.c:1287 -#, c-format -msgid "could not update epoll set: %m" -msgstr "epoll-ების ნაკრების განახლება ჩავარდა: %m" - -#: ../libpq-oauth/oauth-curl.c:1347 -#, c-format -msgid "could not modify kqueue: %m" -msgstr "kqueue-ის შეცვლა შეუძლებელია: %m" - -#: ../libpq-oauth/oauth-curl.c:1371 -#, c-format -msgid "could not delete from kqueue: %m" -msgstr "kqueue-დან წაშლა შეუძლებელია: %m" - -#: ../libpq-oauth/oauth-curl.c:1374 -#, c-format -msgid "could not add to kqueue: %m" -msgstr "kqueue-ში ჩამატება შეუძლებელია: %m" - -#: ../libpq-oauth/oauth-curl.c:1423 -#, c-format -msgid "could not comb kqueue: %m" -msgstr "kqueue-ის კომბინგი შეუძლებელია: %m" - -#: ../libpq-oauth/oauth-curl.c:1473 -#, c-format -msgid "setting timerfd to %ld: %m" -msgstr "%ld-ზე timerfd-ის დაყენება: %m" - -#: ../libpq-oauth/oauth-curl.c:1503 -#, c-format -msgid "deleting kqueue timer: %m" -msgstr "kqueue-ის ტაიმერის წაშლა: %m" - -#: ../libpq-oauth/oauth-curl.c:1510 -#, c-format -msgid "removing kqueue timer from multiplexer: %m" -msgstr "kqueue-ის ტაიმერის წაშლა მულტიპლექსერიდან: %m" - -#: ../libpq-oauth/oauth-curl.c:1521 -#, c-format -msgid "setting kqueue timer to %ld: %m" -msgstr "kqueue-ის ტაიმერის დაყენება %ld-ზე: %m" - -#: ../libpq-oauth/oauth-curl.c:1528 -#, c-format -msgid "adding kqueue timer to multiplexer: %m" -msgstr "kqueue-ის ტაიმერის დამატება მულტიპლექსერზე: %m" - -#: ../libpq-oauth/oauth-curl.c:1553 +#: ../libpq-oauth/oauth-curl.c:1559 #, c-format msgid "checking timer expiration: %m" msgstr "შემოწმება მოლოდინის დროის ამოწურვაზე: %m" -#: ../libpq-oauth/oauth-curl.c:1715 +#: ../libpq-oauth/oauth-curl.c:1721 #, c-format msgid "failed to create libcurl multi handle" msgstr "libcurl-ის ერთზე მეტი დამმუშავებლის შექმნა ჩავარდა" -#: ../libpq-oauth/oauth-curl.c:1735 +#: ../libpq-oauth/oauth-curl.c:1741 #, c-format msgid "failed to create libcurl handle" msgstr "libcurl-ის დამმუშავებლის შექმნა ჩავარდა" -#: ../libpq-oauth/oauth-curl.c:1819 ../libpq-oauth/oauth-curl.c:1860 -#: ../libpq-oauth/oauth-curl.c:2173 ../libpq-oauth/oauth-curl.c:2334 -#: ../libpq-oauth/oauth-curl.c:2395 ../libpq-oauth/oauth-curl.c:2484 -#: ../libpq-oauth/oauth-curl.c:2778 ../libpq-oauth/oauth-curl.c:2995 +#: ../libpq-oauth/oauth-curl.c:1825 ../libpq-oauth/oauth-curl.c:1866 +#: ../libpq-oauth/oauth-curl.c:2184 ../libpq-oauth/oauth-curl.c:2345 +#: ../libpq-oauth/oauth-curl.c:2406 ../libpq-oauth/oauth-curl.c:2495 +#: ../libpq-oauth/oauth-curl.c:2789 ../libpq-oauth/oauth-curl.c:3006 +#: fe-auth-oauth.c:146 fe-auth-oauth.c:489 fe-auth-oauth.c:561 +#: fe-auth-oauth.c:723 fe-auth-oauth.c:1016 fe-auth-oauth.c:1029 +#: fe-auth-oauth.c:1117 fe-auth-oauth.c:1130 fe-auth-oauth.c:1266 #: fe-auth-scram.c:374 fe-auth-scram.c:447 fe-auth-scram.c:599 #: fe-auth-scram.c:619 fe-auth-scram.c:643 fe-auth-scram.c:657 #: fe-auth-scram.c:703 fe-auth-scram.c:739 fe-auth-scram.c:931 fe-auth.c:308 #: fe-auth.c:382 fe-auth.c:416 fe-auth.c:694 fe-auth.c:827 fe-auth.c:1330 -#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1011 fe-connect.c:1051 -#: fe-connect.c:2171 fe-connect.c:2333 fe-connect.c:3726 fe-connect.c:5182 -#: fe-connect.c:5495 fe-connect.c:5750 fe-connect.c:5868 fe-connect.c:6115 -#: fe-connect.c:6195 fe-connect.c:6293 fe-connect.c:6544 fe-connect.c:6571 -#: fe-connect.c:6647 fe-connect.c:6670 fe-connect.c:6694 fe-connect.c:6729 -#: fe-connect.c:6815 fe-connect.c:6823 fe-connect.c:7180 fe-connect.c:7362 -#: fe-exec.c:530 fe-exec.c:1326 fe-exec.c:3265 fe-exec.c:4304 fe-exec.c:4470 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:211 fe-protocol3.c:234 -#: fe-protocol3.c:257 fe-protocol3.c:274 fe-protocol3.c:295 fe-protocol3.c:369 -#: fe-protocol3.c:750 fe-protocol3.c:990 fe-protocol3.c:1542 -#: fe-protocol3.c:1596 fe-protocol3.c:1642 fe-protocol3.c:1663 -#: fe-protocol3.c:1920 fe-protocol3.c:2321 fe-secure-common.c:110 -#: fe-secure-gssapi.c:506 fe-secure-gssapi.c:696 fe-secure-openssl.c:405 +#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1012 fe-connect.c:1052 +#: fe-connect.c:2172 fe-connect.c:2334 fe-connect.c:3727 fe-connect.c:5183 +#: fe-connect.c:5496 fe-connect.c:5765 fe-connect.c:5883 fe-connect.c:6130 +#: fe-connect.c:6210 fe-connect.c:6308 fe-connect.c:6559 fe-connect.c:6586 +#: fe-connect.c:6662 fe-connect.c:6685 fe-connect.c:6709 fe-connect.c:6744 +#: fe-connect.c:6830 fe-connect.c:6838 fe-connect.c:7195 fe-connect.c:7377 +#: fe-exec.c:530 fe-exec.c:1331 fe-exec.c:3270 fe-exec.c:4341 fe-exec.c:4534 +#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:212 fe-protocol3.c:235 +#: fe-protocol3.c:258 fe-protocol3.c:275 fe-protocol3.c:296 fe-protocol3.c:370 +#: fe-protocol3.c:751 fe-protocol3.c:991 fe-protocol3.c:1556 +#: fe-protocol3.c:1610 fe-protocol3.c:1656 fe-protocol3.c:1677 +#: fe-protocol3.c:1934 fe-protocol3.c:2335 fe-secure-common.c:110 +#: fe-secure-gssapi.c:508 fe-secure-gssapi.c:699 fe-secure-openssl.c:405 #: fe-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "არასაკმარისი მეხსიერება" -#: ../libpq-oauth/oauth-curl.c:1847 +#: ../libpq-oauth/oauth-curl.c:1853 #, c-format msgid "response is too large" msgstr "პასუხი მეტისმეტად დიდია" -#: ../libpq-oauth/oauth-curl.c:1889 +#: ../libpq-oauth/oauth-curl.c:1895 #, c-format msgid "failed to queue HTTP request: %s" msgstr "HTTP მოთხოვნის რიგში ჩამატება ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#: ../libpq-oauth/oauth-curl.c:1912 ../libpq-oauth/oauth-curl.c:1970 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "ასინქრონული HTTP მოთხოვნა ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:2011 +#: ../libpq-oauth/oauth-curl.c:2022 #, c-format msgid "no result was retrieved for the finished handle" msgstr "დასრულებული დამმუშავებლიდან შედეგი მიღებული არაა" -#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 -#: ../libpq-oauth/oauth-curl.c:2529 +#: ../libpq-oauth/oauth-curl.c:2155 ../libpq-oauth/oauth-curl.c:2461 +#: ../libpq-oauth/oauth-curl.c:2540 #, c-format msgid "unexpected response code %ld" msgstr "მოულოდნელი პასუხის კოდი %ld" -#: ../libpq-oauth/oauth-curl.c:2216 +#: ../libpq-oauth/oauth-curl.c:2162 +msgid "failed to parse OpenID discovery document" +msgstr "OpenID-ის აღმოჩენის დოკუმენტის დამუშავება ჩავარდა" + +#: ../libpq-oauth/oauth-curl.c:2227 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "გამომცემლის იდენტიფიკატორი (%s) oauth_issuer-ს (%s) არ ემთხვევა" -#: ../libpq-oauth/oauth-curl.c:2243 +#: ../libpq-oauth/oauth-curl.c:2254 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "გამომცემელმა \"%s\" არ მოგვაწოდა მოწყობილობის ავტორიზაციის ბოლოწერტილი" -#: ../libpq-oauth/oauth-curl.c:2269 +#: ../libpq-oauth/oauth-curl.c:2280 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "მოწყობილობის ავტორიზაციის ბოლოწერტილი \"%s\" HTTPS-ს უნდა იყენებდეს" -#: ../libpq-oauth/oauth-curl.c:2278 +#: ../libpq-oauth/oauth-curl.c:2289 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "კოდის ბოლოწერტილი \"%s\" HTTPS-ს უნდა იყენებდეს" -#: ../libpq-oauth/oauth-curl.c:2587 +#: ../libpq-oauth/oauth-curl.c:2430 +msgid "failed to parse device authorization" +msgstr "მოწყობილობის ავტორიზაციის დამუშავება ჩავარდა" + +#: ../libpq-oauth/oauth-curl.c:2518 +msgid "failed to parse access token response" +msgstr "წვდომის ტოკენის პასუხის დამუშავება ჩავარდა" + +#: ../libpq-oauth/oauth-curl.c:2598 #, c-format msgid "slow_down interval overflow" msgstr "slow_down-ის ინტერვალის გადავსება" @@ -299,27 +225,27 @@ msgstr "slow_down-ის ინტერვალის გადავსებ #. translator: The first %s is a URL for the user to visit in a #. browser, and the second %s is a code to be copy-pasted there. #. -#: ../libpq-oauth/oauth-curl.c:2623 +#: ../libpq-oauth/oauth-curl.c:2634 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "გადადით %s-ზე და შეიყვანეთ კოდი: %s\n" -#: ../libpq-oauth/oauth-curl.c:2628 +#: ../libpq-oauth/oauth-curl.c:2639 #, c-format msgid "device prompt failed" msgstr "მოწყობილობის მოთხოვნა ჩავარდა" -#: ../libpq-oauth/oauth-curl.c:2684 +#: ../libpq-oauth/oauth-curl.c:2695 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init უკვე ჩავარდა OAuth-ის მორგებისას" -#: ../libpq-oauth/oauth-curl.c:2703 +#: ../libpq-oauth/oauth-curl.c:2714 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init ჩავარდა OAuth-ის მორგებისას" -#: ../libpq-oauth/oauth-curl.c:2724 +#: ../libpq-oauth/oauth-curl.c:2735 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -334,6 +260,152 @@ msgstr "" "\tამჟამადაა დაყენებული, როგორც ჩანს, არაა. ააგეთ libpq-ი libcurl-ით, რომელიც\n" "\tახლა გაქვთ დაყენებული." +#: ../libpq-oauth/oauth-curl.c:2897 +msgid "failed to fetch OpenID discovery document" +msgstr "OpenID-ის აღმოჩენის დოკუმენტის გამოთხოვა ჩავარდა" + +#: ../libpq-oauth/oauth-curl.c:2911 +msgid "cannot run OAuth device authorization" +msgstr "OAuth მოწყობილობის ავტორიზაციის გაშვება შეუძლებელია" + +#: ../libpq-oauth/oauth-curl.c:2915 +msgid "failed to obtain device authorization" +msgstr "მოწყობილობის ავტორიზაციის მიღება ჩავარდა" + +#: ../libpq-oauth/oauth-curl.c:2926 ../libpq-oauth/oauth-curl.c:2977 +msgid "failed to obtain access token" +msgstr "წვდომის ტოკენის მიღება ჩავარდა" + +#: fe-auth-oauth.c:133 +#, c-format +msgid "internal error: no OAuth token was set for the connection" +msgstr "შიდა შეცდომა: კავშირისთვის OAuth ტოკენი დაყენებული არ იყო" + +#: fe-auth-oauth.c:396 +#, c-format +msgid "OAuth discovery URI \"%s\" must use HTTPS" +msgstr "OAuth-ის აღმოჩენის URI \"%s\" HTTPS-ს უნდა იყენებდეს" + +#: fe-auth-oauth.c:413 +#, c-format +msgid "OAuth discovery URI \"%s\" must not contain query or fragment components" +msgstr "OAuth-ის აღმოჩენის URI \"%s\" არ უნდა შეიცავდეს მოთხოვნის ან ფრაგმენტის კომპონენტებს" + +#: fe-auth-oauth.c:428 +#, c-format +msgid "OAuth discovery URI \"%s\" is not a .well-known URI" +msgstr "OAuth-ის აღმოჩენის URI \"%s\" .well-known URI არაა" + +#: fe-auth-oauth.c:454 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an unsupported .well-known suffix" +msgstr "OAuth-ის აღმოჩენის URI \"%s\" მხარდაუჭერელ .well-known სუფიქსს იყენებს" + +#: fe-auth-oauth.c:479 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an invalid format" +msgstr "OAuth-ის აღმოჩენილს URI \"%s\" არასწორ ფორმატს იყენებს" + +#: fe-auth-oauth.c:528 +#, c-format +msgid "server's error message contained an embedded NULL, and was discarded" +msgstr "სერვერის შეცდომის შეტყობინება შეიცავდა ჩაშენებულ NULL-ს და მოცილებული იყო" + +#: fe-auth-oauth.c:539 +#, c-format +msgid "server's error response is not valid UTF-8" +msgstr "სერვერის შეცდომის პასუხი არასწორი UTF-8-ია" + +#: fe-auth-oauth.c:579 +#, c-format +msgid "failed to parse server's error response: %s" +msgstr "სერვერის შეცდომის დამუშავება ჩავარდა: %s" + +#: fe-auth-oauth.c:610 +#, c-format +msgid "server's discovery document at %s (issuer \"%s\") is incompatible with oauth_issuer (%s)" +msgstr "სერვერის აღმოჩენის დოკუმენტი მისამართზე %s (გამომცემი %s) oauth_issuer-თან (%s) თავსებადი არაა" + +#: fe-auth-oauth.c:631 +#, c-format +msgid "server's discovery document has moved to %s (previous location was %s)" +msgstr "სერვერის აღმოჩენის დოკუმენტი გადატანილია %s-ზე (წინა მდებარეობა იყო %s)" + +#: fe-auth-oauth.c:652 +#, c-format +msgid "server sent error response without a status" +msgstr "სერვერმა გამოაგზავნა შეცდომის შემცველი პასუხი SSL სტატუსის გარეშე" + +#: fe-auth-oauth.c:663 +#, c-format +msgid "server rejected OAuth bearer token: %s" +msgstr "სერვერმა უარჰყო OAuth-ის წარმდგენის ტოკენი: %s" + +#: fe-auth-oauth.c:696 +#, c-format +msgid "user-defined OAuth flow provided neither a token nor an async callback" +msgstr "მომხმარებლის მიერ აღწერილი OAuth-ის დინებას არც ტოკენი მოუწოდებია, არც ასინქრონული უკუგამოძახება" + +#: fe-auth-oauth.c:703 fe-auth-oauth.c:1041 +#, c-format +msgid "user-defined OAuth flow failed" +msgstr "მომხმარებლის მიერ განსაზღვრული OAuth-ის დინება ჩავარდა" + +#: fe-auth-oauth.c:716 +#, c-format +msgid "user-defined OAuth flow did not provide a token" +msgstr "მომხმარებლის მიერ აღწერილ OAuth დინებას ტოკენი არ მოუწოდებია" + +#: fe-auth-oauth.c:734 +#, c-format +msgid "user-defined OAuth flow did not provide a socket for polling" +msgstr "მომხმარებლის მიერ აღწერილმა OAuth-დინებამ არ წარმოადგინა სოკეტი პოლინგისთვის" + +#: fe-auth-oauth.c:917 +#, c-format +msgid "failed to lock mutex (%d)" +msgstr "მუტექსის დაბლოკვა ჩავარდა (%d)" + +#: fe-auth-oauth.c:1046 +#, c-format +msgid "no OAuth flows are available (try installing the libpq-oauth package)" +msgstr "OAuth-ის დინებები ხელმისაწვდომი არაა (სცადეთ, დააყენოთ პაკეტი libpq-oauth)" + +#: fe-auth-oauth.c:1095 +#, c-format +msgid "server requires OAuth authentication, but oauth_issuer and oauth_client_id are not both set" +msgstr "სერვერი ითხოვს OAuth-იტ ავთენტიკაციას, მაგრამ oauth_issuer და oauth_client_id ორივე დაყენებული არაა" + +#: fe-auth-oauth.c:1255 +#, c-format +msgid "server sent unexpected additional OAuth data" +msgstr "სერვერმა გამოაგზავნა მოულოდნელი დამატებითი OAuth-ის მონაცემები" + +#: fe-auth-oauth.c:1295 +#, c-format +msgid "server requires OAuth authentication, but no discovery metadata was provided" +msgstr "სერვერი ითხოვს OAuth-ით ავთენტიკაციას, მაგრამ აღმოჩენის მეტამონაცემები წარმოდგენილი არაა" + +#: fe-auth-oauth.c:1333 +#, c-format +msgid "internal error: OAuth flow did not set a token" +msgstr "შიდა შეცდომა: OAuth-ის დინებამ სოკეტი არ დააყენა" + +#: fe-auth-oauth.c:1351 +#, c-format +msgid "server sent additional OAuth data after error" +msgstr "სერვერმა გამოაგზავნა დამატებითი OAuth-ის მონაცემები შეცდომის შემდეგ" + +#: fe-auth-oauth.c:1355 +#, c-format +msgid "invalid OAuth exchange state" +msgstr "არასწორი OAuth-ის გაცვლის მდგომარეობა" + +#: fe-auth-oauth.c:1368 +#, c-format +msgid "retrying connection with new bearer token" +msgstr "დაკავშირების თავიდან ცდა ახალი წარმდგენის ტოკენით" + #: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" @@ -659,695 +731,710 @@ msgstr "ამ მიერთებით გაუქმების მოთ msgid "unexpected response from server" msgstr "მოულოდნელი პასუხი სერვერიდან" -#: fe-connect.c:1308 +#: fe-connect.c:1309 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "%d ჰოსტის სახელები %d ჰოსტის მისამართების მნიშვნელობებს არ ემთხვევა" -#: fe-connect.c:1388 +#: fe-connect.c:1389 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "%d პორტის ნომრები %d ჰოსტს არ ემთხვევა" -#: fe-connect.c:1516 +#: fe-connect.c:1517 #, c-format msgid "negative require_auth method \"%s\" cannot be mixed with non-negative methods" msgstr "უარყოფითი require_auth მეთოდი \"%s\" არ შეიძლება სხვა არაუარყოფით მეთოდებს შეურიოთ" -#: fe-connect.c:1529 +#: fe-connect.c:1530 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "require_auth-ის მეთოდს \"%s\" უარყოფით მეთოდებს ვერ შეურევთ" -#: fe-connect.c:1605 fe-connect.c:1734 fe-connect.c:1776 fe-connect.c:1819 -#: fe-connect.c:1922 fe-connect.c:1968 fe-connect.c:2008 fe-connect.c:2075 -#: fe-connect.c:8248 +#: fe-connect.c:1606 fe-connect.c:1735 fe-connect.c:1777 fe-connect.c:1820 +#: fe-connect.c:1923 fe-connect.c:1969 fe-connect.c:2009 fe-connect.c:2076 +#: fe-connect.c:8263 #, c-format msgid "invalid %s value: \"%s\"" msgstr "%s-ის არასწორი მნიშვნელობა: \"%s\"" -#: fe-connect.c:1647 +#: fe-connect.c:1648 #, c-format msgid "internal error: no space in allowed_sasl_mechs" msgstr "შიდა შეცდომა: 'allowed_sasl_merchs'-ში ჰარე არაა" -#: fe-connect.c:1686 +#: fe-connect.c:1687 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "პარამეტრი \"%s\" ერთზე მეტჯერაა მითითებული" -#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 +#: fe-connect.c:1758 fe-connect.c:1797 fe-connect.c:1829 fe-connect.c:1931 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "%s-ის მნიშვნელობა \"%s\" არასწორია, როცა SSL-ის მხარდაჭერა გამორთული იყო აგების დროს" -#: fe-connect.c:1848 +#: fe-connect.c:1849 #, c-format msgid "weak sslmode \"%s\" may not be used with sslnegotiation=direct (use \"require\", \"verify-ca\", or \"verify-full\")" msgstr "სუსტი sslmode \"%s\" არ შეიძლება გამოყენებული იქნას sslrootcert=system-თან ერთად (გამოიყენეთ \"require\", \"verify-ca\", ან \"verify-full\")" -#: fe-connect.c:1870 +#: fe-connect.c:1871 #, c-format msgid "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-full\")" msgstr "სუსტი sslmode \"%s\" არ შეიძლება გამოყენებული იქნას sslrootcert=system-თან ერთად (გამოიყენეთ \"verify-full\")" -#: fe-connect.c:1883 fe-connect.c:1891 +#: fe-connect.c:1884 fe-connect.c:1892 #, c-format msgid "invalid \"%s\" value: \"%s\"" msgstr "\"%s\"-ის არასწორი მნიშვნელობა: \"%s\"" -#: fe-connect.c:1908 +#: fe-connect.c:1909 #, c-format msgid "invalid SSL protocol version range" msgstr "არასწორი SSL პროტოკოლის ვერსიის დიაპაზონი" -#: fe-connect.c:1945 +#: fe-connect.c:1946 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "%s-ის მნიშვნელობა \"%s\" მხარდაჭერილი არაა (შეამოწმეთ OpenSSL-ის ვერსია)" -#: fe-connect.c:1975 +#: fe-connect.c:1976 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "gssencmode -ის მნიშვნელობა \"%s\" არასწორია. GSSAPI-ის მხარდაჭერა გამორთული იყო აგების დროს" -#: fe-connect.c:2029 +#: fe-connect.c:2030 #, c-format msgid "invalid SCRAM client key" msgstr "არასწორი SCRAM კლიენტის გასაღები" -#: fe-connect.c:2034 +#: fe-connect.c:2035 #, c-format msgid "invalid SCRAM client key length: %d" msgstr "არასწორი SCRAM კლიენტის გასაღების სიგრძე: %d" -#: fe-connect.c:2052 +#: fe-connect.c:2053 #, c-format msgid "invalid SCRAM server key" msgstr "არასწორი SCRAM სერვერის გასაღები" -#: fe-connect.c:2057 +#: fe-connect.c:2058 #, c-format msgid "invalid SCRAM server key length: %d" msgstr "არასწორი SCRAM სერვერის გასაღების სიგრძე: %d" -#: fe-connect.c:2144 +#: fe-connect.c:2145 #, c-format msgid "\"%s\" is greater than \"%s\"" msgstr "\"%s\" \"%s\"-ზე მეტია" -#: fe-connect.c:2356 +#: fe-connect.c:2357 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "სოკეტის TCP no_delay რეჟიმის ჩართვის შეცდომა: %s" -#: fe-connect.c:2415 +#: fe-connect.c:2416 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "სოკეტით (\"%s\")სერვერთან მიერთების შეცდომა: " -#: fe-connect.c:2441 +#: fe-connect.c:2442 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "სერვერის (\"%s\" (%s)) %s-ე პორტზე მიერთების შეცდომა: " -#: fe-connect.c:2446 +#: fe-connect.c:2447 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "სერვერის (\"%s\" ) %s-ე პორტზე მიერთების შეცდომა: " -#: fe-connect.c:2469 +#: fe-connect.c:2470 #, c-format msgid "\tIs the server running locally and accepting connections on that socket?" msgstr "\tარს სერვერი ლოკალურად გაშვებული და მზადაა სოკეტითა დასაკავშირებლად?" -#: fe-connect.c:2471 +#: fe-connect.c:2472 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "\tარის სერვერი გაშვებული ამ ჰოსტზე და ეთანხმება TCP/IP შეერთებებს?" -#: fe-connect.c:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 -#: fe-connect.c:3410 +#: fe-connect.c:2518 fe-connect.c:2552 fe-connect.c:2587 fe-connect.c:2685 +#: fe-connect.c:3411 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s) -ის შეცდომა: %s" -#: fe-connect.c:2650 +#: fe-connect.c:2651 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) -ის შეცდომა: შეცდომის კოდი %d" -#: fe-connect.c:2962 +#: fe-connect.c:2963 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "შეერთების არასწორი მდგომარეობა. დიდი შანსით ნიშნავს მეხსიერების დაზიანებას" -#: fe-connect.c:3045 +#: fe-connect.c:3046 #, c-format msgid "invalid port number: \"%s\"" msgstr "პორტის არასწორი ნომერი: \"%s\"" -#: fe-connect.c:3059 +#: fe-connect.c:3060 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "ჰოსტის სახელის (%s) მისამართში თარგმნის შეცდომა: %s" -#: fe-connect.c:3071 +#: fe-connect.c:3072 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "ქსელური მისამართის (\"%s\") დამუშავების პრობლემა: %s" -#: fe-connect.c:3082 +#: fe-connect.c:3083 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "Unix-დომენის სოკეტის მისამართი \"%s\" ძალიან გრძელია (დასაშვებია %d ბაიტი)" -#: fe-connect.c:3096 +#: fe-connect.c:3097 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "unix-დომენის სოკეტის ბილიკის (\"%s\") მისამართად თარგმნის შეცდომა: %s" -#: fe-connect.c:3262 fe-connect.c:4709 +#: fe-connect.c:3263 fe-connect.c:4710 #, c-format msgid "GSSAPI encryption required but it is not supported over a local socket" msgstr "GSSAPI დაშიფვრა მოთხოვნილია, მაგრამ შეუძლებელია ლოკალური სოკეტის გამოყენებით" -#: fe-connect.c:3270 fe-connect.c:4838 +#: fe-connect.c:3271 fe-connect.c:4839 #, c-format msgid "GSSAPI encryption required but no credential cache" msgstr "GSSAPI დაშიფვრა მოთხოვნილია, მაგრამ ავტორიზაციის დეტალების კეში არ არსებობს" -#: fe-connect.c:3338 +#: fe-connect.c:3339 #, c-format msgid "could not create socket: %s" msgstr "სოკეტის შექმნის შეცდომა: %s" -#: fe-connect.c:3369 +#: fe-connect.c:3370 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "სოკეტის არაბლოკირებული რეჟიმის დაყენების შეცდომა: %s" -#: fe-connect.c:3380 +#: fe-connect.c:3381 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "სოკეტის დახურვა-შესრულებისას რეჟიმის დაყენების შეცდომა: %s" -#: fe-connect.c:3537 +#: fe-connect.c:3538 #, c-format msgid "could not get socket error status: %s" msgstr "სოკეტის შეცდომის სტატუსის მიღების შეცდომა: %s" -#: fe-connect.c:3564 +#: fe-connect.c:3565 #, c-format msgid "could not get client address from socket: %s" msgstr "კლიენტის მისამართის სოკეტიდან მიღების შეცდომა: %s" -#: fe-connect.c:3590 +#: fe-connect.c:3591 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "პარამეტრი requirepeer ამ პლატფორმაზე მხარდაჭერილი არაა" -#: fe-connect.c:3592 +#: fe-connect.c:3593 #, c-format msgid "could not get peer credentials: %s" msgstr "პარტნიორის ავტორიზაციის დეტალების მიღების შეცდომა: %s" -#: fe-connect.c:3605 +#: fe-connect.c:3606 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "requrepeer-ის მნიშვნელობაა \"%s\", მაგრამ პარტნიორის მომხმარებლის ნამდვილი ასხელია: \"%s\"" -#: fe-connect.c:3643 +#: fe-connect.c:3644 #, c-format msgid "could not send GSSAPI negotiation packet: %s" msgstr "შეცდომა GSSAPI-ის მიმოცვლის პაკეტის გაგზავნისას: %s" -#: fe-connect.c:3682 +#: fe-connect.c:3683 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "შეცდომა SSL მიმოცვლის პაკეტის გაგზავნისას: %s" -#: fe-connect.c:3708 +#: fe-connect.c:3709 #, c-format msgid "could not send cancel packet: %s" msgstr "გაუქმების პაკეტის გაგზავნა შეუძლებელია: %s" -#: fe-connect.c:3738 +#: fe-connect.c:3739 #, c-format msgid "could not send startup packet: %s" msgstr "გაშვების პაკეტის გაგზავნის შეცდომა: %s" -#: fe-connect.c:3811 +#: fe-connect.c:3812 msgid "server does not support SSL, but SSL was required" msgstr "სერვერს SSL-ის მხარდაჭერა არ გააჩნია, მაგრამ SSL-ი აუცილებელია" -#: fe-connect.c:3821 +#: fe-connect.c:3822 #, c-format msgid "server sent an error response during SSL exchange" msgstr "სერვერმა გამოაგზავნა შეცდომის შემცველი პასუხი SSL მიმოცვლის დროს" -#: fe-connect.c:3826 +#: fe-connect.c:3827 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "არასწორი პასუხი SSL მიმოცვლისას: %c" -#: fe-connect.c:3846 +#: fe-connect.c:3847 #, c-format msgid "received unencrypted data after SSL response" msgstr "'SSL' პასუხის შემდეგ მიღებული მონაცემები დაუშიფრავია" -#: fe-connect.c:3909 +#: fe-connect.c:3910 #, c-format msgid "server sent an error response during GSS encryption exchange" msgstr "სერვერმა გამოაგზავნა შეცდომის შემცველი პასუხი GSS დაშიფვრის მიმოცვლის დროს" -#: fe-connect.c:3927 +#: fe-connect.c:3928 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "სერვერს GSSAPI დაშიფვრის მხარდაჭერა არ გააჩნა, მაგრამ ის მოთხოვილია" -#: fe-connect.c:3931 +#: fe-connect.c:3932 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "'GSSAPI' მიმოცვლის არასწორი პასუხი: %c" -#: fe-connect.c:3953 +#: fe-connect.c:3954 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "'GSSAPI' პასუხის შემდეგ მიღებული მონაცემები დაუშიფრავია" -#: fe-connect.c:4014 +#: fe-connect.c:4015 #, c-format msgid "expected authentication request from server, but received %c" msgstr "სერვერიდან მოსალოდნელი იყო ავთენტიკაციის მოთხოვნა, მაგრამ მიღებულია %c" -#: fe-connect.c:4042 fe-connect.c:4174 +#: fe-connect.c:4043 fe-connect.c:4175 #, c-format msgid "received invalid authentication request" msgstr "დუბლირებული GSS ავთენტიკაციის მოთხოვნა" -#: fe-connect.c:4048 +#: fe-connect.c:4049 #, c-format msgid "received invalid protocol negotiation message" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება" -#: fe-connect.c:4067 fe-connect.c:4121 +#: fe-connect.c:4068 fe-connect.c:4122 #, c-format msgid "received invalid error message" msgstr "მიღებულია არასწორი შეცდომის შეტყობინება" -#: fe-connect.c:4151 +#: fe-connect.c:4152 #, c-format msgid "received duplicate protocol negotiation message" msgstr "მიღებულია გამეორებული პროტოკოლის მიმოცვლის შეტყობინება" -#: fe-connect.c:4253 +#: fe-connect.c:4254 #, c-format msgid "internal error: async authentication has no handler" msgstr "შიდა შეცდომა: ასინქრონულ ავთენტიკატორს დამმუშავებელი არ აქვს" -#: fe-connect.c:4278 +#: fe-connect.c:4279 #, c-format msgid "internal error: async cleanup did not release polling socket" msgstr "შიდა შეცდომა: ასინქრონულმა მოსუფთავებამ სოკეტი არ გაათავისუფლა" -#: fe-connect.c:4301 +#: fe-connect.c:4302 #, c-format msgid "internal error: async authentication did not set a socket for polling" msgstr "შიდა შეცდომა: ასინქრონულმა ავთენტიკაციამ პოლინგისთვის სოკეტი არ დააყენა" -#: fe-connect.c:4334 +#: fe-connect.c:4335 #, c-format msgid "unexpected message from server during startup" msgstr "სერვერის გაშვებისას მიღებულია მოულოდნელი შეტყობინება" -#: fe-connect.c:4425 +#: fe-connect.c:4426 #, c-format msgid "session is read-only" msgstr "სესია მხოლოდ კითხვადია" -#: fe-connect.c:4427 +#: fe-connect.c:4428 #, c-format msgid "session is not read-only" msgstr "სესია მხოლოდ კითხვადი არა" -#: fe-connect.c:4480 +#: fe-connect.c:4481 #, c-format msgid "server is in hot standby mode" msgstr "სერვერი მზა-უქმე რეჟიმშია" -#: fe-connect.c:4482 +#: fe-connect.c:4483 #, c-format msgid "server is not in hot standby mode" msgstr "სერვერი მზა-უქმე რეჟიმში არაა" -#: fe-connect.c:4607 fe-connect.c:4657 +#: fe-connect.c:4608 fe-connect.c:4658 #, c-format msgid "\"%s\" failed" msgstr "\"%s\"-ის შეცდომა" -#: fe-connect.c:4671 +#: fe-connect.c:4672 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "შეერთების არასწორი მდგომარეობა (%d). დიდი შანსით ნიშნავს მეხსიერების დაზიანებას" -#: fe-connect.c:5508 +#: fe-connect.c:5509 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "'LDAP'-ის არასწორი URL: \"%s\": სქემა ldap:// უნდა იყოს" -#: fe-connect.c:5523 +#: fe-connect.c:5524 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "'LDAP'-ის არასწორი URL: \"%s\": აკლია გამოყოფილი სახელი" -#: fe-connect.c:5535 fe-connect.c:5593 +#: fe-connect.c:5536 fe-connect.c:5594 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "'LDAP'-ის არასწორი URL \"%s\": ზუსტად ერთი ატრიბუტი უნდა ჰქონდეს" -#: fe-connect.c:5547 fe-connect.c:5609 +#: fe-connect.c:5548 fe-connect.c:5610 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "'LDAP'-ის არასწორი URL: \"%s\": საჭიროა ძებნის ფარგლების ქონა (საბაზისო/ერთი/ქვე)" -#: fe-connect.c:5559 +#: fe-connect.c:5560 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "'LDAP'-ის არასწორი URL: \"%s\":ფილტრი არ არსებობს" -#: fe-connect.c:5581 +#: fe-connect.c:5582 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "'LDAP'-ის არასწორი URL: \"%s\": პორტის არასწორი ნომერი" -#: fe-connect.c:5618 +#: fe-connect.c:5619 #, c-format msgid "could not create LDAP structure" msgstr "შეცდომა LDAP-ის სტრუქტურის შექმნისას" -#: fe-connect.c:5693 +#: fe-connect.c:5694 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "'LDAP' სერვერის მოძებნის შეცდომა: %s" -#: fe-connect.c:5703 +#: fe-connect.c:5704 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "ძებნისას (LDAP) ნაპოვნია ერთზე მეტი ჩანაწერი" -#: fe-connect.c:5705 fe-connect.c:5716 +#: fe-connect.c:5706 fe-connect.c:5717 #, c-format msgid "no entry found on LDAP lookup" msgstr "ძებნისას (LDAP) ჩანაწერები ნაპოვნი არაა" -#: fe-connect.c:5726 fe-connect.c:5738 +#: fe-connect.c:5727 fe-connect.c:5739 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "'LDAP' ძებნის ატრიბუტს მნიშვნელობა არ გააჩნია" -#: fe-connect.c:5789 fe-connect.c:5808 fe-connect.c:6332 +#: fe-connect.c:5753 +#, c-format +msgid "connection info string size exceeds the maximum allowed (%d)" +msgstr "დაკავშირების ინფორმაციის სტრიქონის ზომა მაქსიმალურ დასაშვებს (%d) აღემატება" + +#: fe-connect.c:5804 fe-connect.c:5823 fe-connect.c:6347 #, c-format msgid "missing \"=\" after \"%s\" in connection info string" msgstr "შეერთების სტრიქონში \"%s\"-ის შემდეგ \"=\" აკლია" -#: fe-connect.c:5879 fe-connect.c:6515 fe-connect.c:7345 +#: fe-connect.c:5894 fe-connect.c:6530 fe-connect.c:7360 #, c-format msgid "invalid connection option \"%s\"" msgstr "შეერთების არასწორი პარამეტრი: \"%s\"" -#: fe-connect.c:5894 fe-connect.c:6380 +#: fe-connect.c:5909 fe-connect.c:6395 #, c-format msgid "unterminated quoted string in connection info string" msgstr "შეერთების ინფორმაციის სტრიქონში ბრჭყალებში ჩასმული სტრიქონი დაუსრულებელია" -#: fe-connect.c:5974 +#: fe-connect.c:5989 #, c-format msgid "definition of service \"%s\" not found" msgstr "სერვისის აღწერა არ არსებობს: \"%s\"" -#: fe-connect.c:6000 +#: fe-connect.c:6015 #, c-format msgid "service file \"%s\" not found" msgstr "სერვისის ფაილი არ არსებობს: \"%s\"" -#: fe-connect.c:6013 +#: fe-connect.c:6028 #, c-format msgid "line %d too long in service file \"%s\"" msgstr "ძალიან გრძელი ხაზი (%d) სერვისის ფაილში \"%s\"" -#: fe-connect.c:6084 fe-connect.c:6127 +#: fe-connect.c:6099 fe-connect.c:6142 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "სინტაქსის შეცდომა სერვისის ფაილში \"%s\" ხაზზე %d" -#: fe-connect.c:6095 +#: fe-connect.c:6110 #, c-format msgid "nested service specifications not supported in service file \"%s\", line %d" msgstr "სერვისის ფაილში \"%s\" ჩადგმული სერვისის მითითება მხარდაუჭერელია. ხაზი %d" -#: fe-connect.c:6834 +#: fe-connect.c:6849 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "დამუშავებს შიდა ფუნქციაში გადაცემული URI არასწორია: %s" -#: fe-connect.c:6911 +#: fe-connect.c:6926 #, c-format msgid "end of string reached when looking for matching \"]\" in IPv6 host address in URI: \"%s\"" msgstr "სტრიქონის დასასრული \"]\"-ს IPv6 ჰოსტის მისამართში URI-ში ძებნისას: \"%s\"" -#: fe-connect.c:6918 +#: fe-connect.c:6933 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "ჰოსტის IPv6 მისამართი URI-ში ცარიელი ვერ იქნება: \"%s\"" -#: fe-connect.c:6933 +#: fe-connect.c:6948 #, c-format msgid "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): \"%s\"" msgstr "უცნობი სიმბოლო (\"%c\") URI-ში პოზიციაზე %d (მოველოდი \":\"-ს ან \"/\"-ს): \"%s\"" -#: fe-connect.c:7062 +#: fe-connect.c:7077 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "მოთხოვნის URI არამეტრში მითითებულია გასაღები/მნიშვნელობის ზედმეტი \"=\": \"%s\"" -#: fe-connect.c:7082 +#: fe-connect.c:7097 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "მოთხოვნის URI პარამეტრში მითითებულია გასაღები/მნიშვნელობის წყვილს \"=\" აკლია: \"%s\"" -#: fe-connect.c:7134 +#: fe-connect.c:7149 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "მოთხოვნის არასწორი პარამეტრი: \"%s\"" -#: fe-connect.c:7218 +#: fe-connect.c:7233 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "არასწორი პროცენტულად-კოდირებული კოდი: \"%s\"" -#: fe-connect.c:7228 +#: fe-connect.c:7243 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "პროცენტში კოდირებული მნიშვნელობის აკრძალული მნიშვნელობა %%00: \"%s\"" -#: fe-connect.c:7250 +#: fe-connect.c:7265 #, c-format msgid "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" msgstr "\"%s\"-ში აღმოჩენილია მოულოდნელი ჰარეები. მათ მაგიერ გამოიყენეთ პროცენტით კოდირებული (%%20)" -#: fe-connect.c:7626 +#: fe-connect.c:7641 msgid "connection pointer is NULL\n" msgstr "შეერთების მაჩვენებელი ნულოვანია\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 -#: fe-protocol3.c:1005 fe-protocol3.c:1038 +#: fe-connect.c:7649 fe-exec.c:718 fe-exec.c:980 fe-exec.c:3475 +#: fe-protocol3.c:1006 fe-protocol3.c:1039 msgid "out of memory\n" msgstr "არასაკმარისი მეხსიერება\n" -#: fe-connect.c:7936 +#: fe-connect.c:7951 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "გაფრთხილება. პაროლის ფაილი \"%s\" უბრალოდ ფაილს არ წარმოადგენს\n" -#: fe-connect.c:7946 +#: fe-connect.c:7961 #, c-format msgid "WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n" msgstr "გაფრთხილება: პაროლების ფაილს \"%s\" ჯგუფზე ან დანარჩენ ყველაზე წვდომა გააჩნია. წვდომა 0600 ან ნაკლები უნდა იყოს\n" -#: fe-connect.c:8050 +#: fe-connect.c:8065 #, c-format msgid "password retrieved from file \"%s\"" msgstr "პაროლი მიღებულია ფაილიდან \"%s\"" -#: fe-connect.c:8216 +#: fe-connect.c:8231 #, c-format msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "არასწორი მნიშვნელობა: \"%s\" (უნდა იყოს მთელი რიცხვი) შეერთების პარამეტრისთვის \"%s\"" -#: fe-exec.c:469 fe-exec.c:3544 +#: fe-exec.c:469 fe-exec.c:3549 #, c-format msgid "row number %d is out of range 0..%d" msgstr "მწკრივების რაოდენობა %d ზღვარს (0..%d) გარეთაა" -#: fe-exec.c:531 fe-protocol3.c:2126 +#: fe-exec.c:531 fe-protocol3.c:2140 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:834 +#: fe-exec.c:839 #, c-format msgid "write to server failed" msgstr "სერვერზე ჩაწერის შეცდომა" -#: fe-exec.c:874 +#: fe-exec.c:879 #, c-format msgid "no error text available" msgstr "შეცდომის ტექსტი ხელმიუწვდომელია" -#: fe-exec.c:963 +#: fe-exec.c:968 msgid "NOTICE" msgstr "გაფრთხილება" -#: fe-exec.c:1021 +#: fe-exec.c:1026 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult-ს INT_MAX-ზე მეტი სტრუქტურის მხარდაჭერა არ გააჩნია" -#: fe-exec.c:1033 +#: fe-exec.c:1038 msgid "size_t overflow" msgstr "size_t -ის გადავსება" -#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 +#: fe-exec.c:1454 fe-exec.c:1523 fe-exec.c:1569 #, c-format msgid "command string is a null pointer" msgstr "ბრძანების სტრიქონი ნულოვანი მაჩვენებელია" -#: fe-exec.c:1455 fe-exec.c:3014 +#: fe-exec.c:1460 fe-exec.c:3019 #, c-format msgid "%s not allowed in pipeline mode" msgstr "კომუნიკაციის არხის რეჟიმში %s დაუშვებელია" -#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 +#: fe-exec.c:1528 fe-exec.c:1574 fe-exec.c:1668 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "პარამეტრების რაოდენობა 0-სა და %d-ს შორის შეიძლება იყოს" -#: fe-exec.c:1559 fe-exec.c:1658 +#: fe-exec.c:1564 fe-exec.c:1663 #, c-format msgid "statement name is a null pointer" msgstr "გამოსახულების სახელი ნულოვანი მაჩვენებელია" -#: fe-exec.c:1700 fe-exec.c:3390 +#: fe-exec.c:1705 fe-exec.c:3395 #, c-format msgid "no connection to the server" msgstr "სერვერთან შეერთება არ არსებობს" -#: fe-exec.c:1708 fe-exec.c:3398 +#: fe-exec.c:1713 fe-exec.c:3403 #, c-format msgid "another command is already in progress" msgstr "უკვე გაშვებულია სხვა ბრძანება" -#: fe-exec.c:1738 +#: fe-exec.c:1743 #, c-format msgid "cannot queue commands during COPY" msgstr "როცა გაშვებულია ბრძანება COPY, სხვა ბრძანებებს ვერ გაუშვებთ" -#: fe-exec.c:1857 +#: fe-exec.c:1862 #, c-format msgid "length must be given for binary parameter" msgstr "ბინარული პარამეტრისთვის სიგრძის მითითება აუცილებელია" -#: fe-exec.c:2216 +#: fe-exec.c:2221 #, c-format msgid "unexpected asyncStatus: %d" msgstr "მოულოდნელი asyncStatus: %d" -#: fe-exec.c:2372 +#: fe-exec.c:2377 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "კომუნიკაციის არხის რეჟიმში ბრძანების სინქრონული შესრულების ფუნქციები მიუწვდომელია" -#: fe-exec.c:2389 +#: fe-exec.c:2394 msgid "COPY terminated by new PQexec" msgstr "COPY შეწყვეტილია ახალი PQexec-ის მიერ" -#: fe-exec.c:2405 +#: fe-exec.c:2410 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "COPY BOTH-ის დროს PQexec დაუშვებელია" -#: fe-exec.c:2641 +#: fe-exec.c:2646 #, c-format msgid "unrecognized message type \"%c\"" msgstr "შეტყობინების უცნობი ტიპი: \"%c\"" -#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 +#: fe-exec.c:2718 fe-exec.c:2772 fe-exec.c:2840 fe-protocol3.c:2071 #, c-format msgid "no COPY in progress" msgstr "ბრძანება COPY გაშვებული არაა" -#: fe-exec.c:3021 +#: fe-exec.c:3026 #, c-format msgid "connection in wrong state" msgstr "შეერთების მდგომარეობა არასწორია" -#: fe-exec.c:3064 +#: fe-exec.c:3069 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "კომუნიკაციის არხის რეჟიმზე გადართვის შეცდომა. შეერთება უქმე არაა" -#: fe-exec.c:3100 fe-exec.c:3121 +#: fe-exec.c:3105 fe-exec.c:3126 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "მოგროვებული შედეგების გარეშე კომუნიკაციის არხის რეჟიმიდან ვერ გახვალთ" -#: fe-exec.c:3104 +#: fe-exec.c:3109 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "კომუნიკაციის არხის რეჟიმიდან გასვლა მაშინ, როცა ის დაკავებულია, შეუძლებელია" -#: fe-exec.c:3115 +#: fe-exec.c:3120 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "კომუნიკაციის არხის რეჟიმიდან გასვლა მაშინ, როცა ის დაკავებულია, შეუძლებელია" -#: fe-exec.c:3314 +#: fe-exec.c:3319 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "კომუნიკაციის არხის გაგზავნა, როცა კომუნიკაციის არხის რეჟიმში არ ხართ, შეუძლებელია" -#: fe-exec.c:3433 +#: fe-exec.c:3438 msgid "invalid ExecStatusType code" msgstr "'ExecStatusType'-ის არასწორი კოდი" -#: fe-exec.c:3460 +#: fe-exec.c:3465 msgid "PGresult is not an error result\n" msgstr "PGresult შეცდომითი შედეგი არაა\n" -#: fe-exec.c:3528 fe-exec.c:3551 +#: fe-exec.c:3533 fe-exec.c:3556 #, c-format msgid "column number %d is out of range 0..%d" msgstr "სვეტების რაოდენობა %d ზღვარს (0..%d) გარეთაა" -#: fe-exec.c:3566 +#: fe-exec.c:3571 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "პარამეტრების რაოდენობა %d ზღვარს (0..%d) გარეთაა" -#: fe-exec.c:3877 +#: fe-exec.c:3882 #, c-format msgid "could not interpret result from server: %s" msgstr "სერვერის პასუხის გაურკვეველია: %s" -#: fe-exec.c:4152 fe-exec.c:4266 +#: fe-exec.c:4157 fe-exec.c:4292 #, c-format msgid "incomplete multibyte character" msgstr "დაუსრულებელი მრავალბაიტიანი სიმბოლო" -#: fe-exec.c:4154 fe-exec.c:4285 +#: fe-exec.c:4159 fe-exec.c:4311 #, c-format msgid "invalid multibyte character" msgstr "არასწორი მრავალბაიტიანი სიმბოლო" +#: fe-exec.c:4413 +#, c-format +msgid "escaped string size exceeds the maximum allowed (%zu)" +msgstr "სპეცსიმბოლოების შემცველი სტრიქონის ზომა მაქსიმალურად დასაშვებს (%zu) აღემატება" + +#: fe-exec.c:4590 +#, c-format +msgid "escaped bytea size exceeds the maximum allowed (%zu)" +msgstr "სპეცსიმბოლოების bytea სტრიქონის ზომა მაქსიმალურად დასაშვებს (%zu) აღემატება" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "GSSAPI-ის სახელის შემოტანის შეცდომა" @@ -1435,196 +1522,196 @@ msgstr "არასწორი სოკეტი" msgid "%s() failed: %s" msgstr "%s()-ის შეცდომა: %s" -#: fe-protocol3.c:189 +#: fe-protocol3.c:190 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "შეტყობინების ტიპი 0x%02x მოვიდა სერვერიდან, როცა უქმე ვიყავი" -#: fe-protocol3.c:402 +#: fe-protocol3.c:403 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "სერვერმა მონაცემები (\"D\" შეტყობინება) მწკრივების წინასწარი აღწერის (\"T\" შეტყობინება) გარეშე გამოაგზავნა" -#: fe-protocol3.c:444 +#: fe-protocol3.c:445 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "სერვერის მოულოდნელი პასუხი; პირველი მიღებული სიმბოლოა \"%c\"" -#: fe-protocol3.c:468 +#: fe-protocol3.c:469 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "შეტყობინების შიგთავსი შეტყობინების ამ ტიპის (%c) სიგრძეს არ ემთხვევა" -#: fe-protocol3.c:503 +#: fe-protocol3.c:504 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "სერვერთან სინქრონიზაციის შეცდომა: შეტყობინების ტიპი: \"%c\", სიგრძე %d" -#: fe-protocol3.c:550 fe-protocol3.c:590 +#: fe-protocol3.c:551 fe-protocol3.c:591 msgid "insufficient data in \"T\" message" msgstr "არასაკმარისი მონაცემები \"T\" შეტყობინებაში" -#: fe-protocol3.c:661 fe-protocol3.c:867 +#: fe-protocol3.c:662 fe-protocol3.c:868 msgid "out of memory for query result" msgstr "არასაკმარისი მეხსიერება მოთხოვნის შედეგისთვის" -#: fe-protocol3.c:730 +#: fe-protocol3.c:731 msgid "insufficient data in \"t\" message" msgstr "არასაკმარისი მონაცემები \"t\" შეტყობინებაში" -#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 +#: fe-protocol3.c:790 fe-protocol3.c:822 fe-protocol3.c:840 msgid "insufficient data in \"D\" message" msgstr "არასაკმარისი მონაცემები \"D\" შეტყობინებაში" -#: fe-protocol3.c:795 +#: fe-protocol3.c:796 msgid "unexpected field count in \"D\" message" msgstr "ველების მოულოდნელი რაოდენობა \"D\" შეტყობინებაში" -#: fe-protocol3.c:1051 +#: fe-protocol3.c:1052 msgid "no error message available\n" msgstr "შეცდომის შეტყობინების გარეშე\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1099 fe-protocol3.c:1118 +#: fe-protocol3.c:1100 fe-protocol3.c:1119 #, c-format msgid " at character %s" msgstr " სიმბოლოსთან %s" -#: fe-protocol3.c:1131 +#: fe-protocol3.c:1132 #, c-format msgid "DETAIL: %s\n" msgstr "დეტალი: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1135 #, c-format msgid "HINT: %s\n" msgstr "მინიშნება: %s\n" -#: fe-protocol3.c:1137 +#: fe-protocol3.c:1138 #, c-format msgid "QUERY: %s\n" msgstr "მოთხოვნა: %s\n" -#: fe-protocol3.c:1144 +#: fe-protocol3.c:1145 #, c-format msgid "CONTEXT: %s\n" msgstr "კონტექსტი: %s\n" -#: fe-protocol3.c:1153 +#: fe-protocol3.c:1154 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "სქემის სახელი: %s\n" -#: fe-protocol3.c:1157 +#: fe-protocol3.c:1158 #, c-format msgid "TABLE NAME: %s\n" msgstr "ცხრილის სახელი: %s\n" -#: fe-protocol3.c:1161 +#: fe-protocol3.c:1162 #, c-format msgid "COLUMN NAME: %s\n" msgstr "სვეტის სახელი: %s\n" -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1166 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "მონ. ტიპის სახელი: %s\n" -#: fe-protocol3.c:1169 +#: fe-protocol3.c:1170 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "შეზღუდვის სახელი: %s\n" -#: fe-protocol3.c:1181 +#: fe-protocol3.c:1182 msgid "LOCATION: " msgstr "მდებარეობა: " -#: fe-protocol3.c:1183 +#: fe-protocol3.c:1184 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1185 +#: fe-protocol3.c:1186 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1380 +#: fe-protocol3.c:1394 #, c-format msgid "LINE %d: " msgstr "ხაზი %d: " -#: fe-protocol3.c:1442 +#: fe-protocol3.c:1456 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მოითხოვა ვერსიის ჩამოწევა უფრო მაღალ ვერსიაზე" -#: fe-protocol3.c:1448 +#: fe-protocol3.c:1462 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მოითხოვა ვერსიის ჩამოწევა 3.0-მდელ ვერსიაზე" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1469 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "მიღებულია არასწორი პროტოკოლის ხელის ჩამორთმევის შეტყობინება: სერვერი ითხოვს ვერსიის ჩამოწევას არარსებულ პროტოკოლის ვერსიაზე 3.1" -#: fe-protocol3.c:1461 +#: fe-protocol3.c:1475 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მხარდაუჭერელი პარამეტრების უარყოფითი რაოდენობა გადმოგვცა" -#: fe-protocol3.c:1467 +#: fe-protocol3.c:1481 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერთან კავშირი დამყარდა, მაგრამ ის ცვლილებებს არ ითხოვს" -#: fe-protocol3.c:1473 +#: fe-protocol3.c:1487 #, c-format msgid "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" msgstr "სერვერს, მხოლოდ, %d.%d ვერსიის პროტოკოლის მხარდაჭერა აქვს, მაგრამ \"%s\"-ის მნიშვნელობაა %d.%d" -#: fe-protocol3.c:1498 +#: fe-protocol3.c:1512 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "მიღებულია არასწორი პროტოკოლის მოლაპარაკების შეტყობინება: სერვერმა მოიწერა მხარდაუჭერელი პარამეტრის სახელი \"%s\" პრეფიქსის გარეშე (\"%s\")" -#: fe-protocol3.c:1501 +#: fe-protocol3.c:1515 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მოიწერა მხარდაუჭერელი პარამეტრი, რომელიც მას არ მოუთხოვია (\"%s\")" -#: fe-protocol3.c:1508 +#: fe-protocol3.c:1522 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება; შეტყობინება მეტისმეტად მოკლეა" -#: fe-protocol3.c:1574 +#: fe-protocol3.c:1588 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d not allowed in protocol version 3.0 (must be 4 bytes)" msgstr "მიღებულია არასწორი შეტყობინება BackendKeyData: გაუქმების გასაღები სიგრძით %d დაუშვებელია პროტოკოლის ვერსიაში 3.0 (უნდა იყო 4 ბაიტი)" -#: fe-protocol3.c:1581 +#: fe-protocol3.c:1595 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too short (minimum 4 bytes)" msgstr "მიღებულია არასწორი შეტყობინება BackendKeyData: გაუქმების გასაღები სიგრძით %d ძალიან მოკლეა (უნდა იყო 4 ბაიტი)" -#: fe-protocol3.c:1588 +#: fe-protocol3.c:1602 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too long (maximum 256 bytes)" msgstr "მიღებულია არასწორი შეტყობინება BackendKeyData: გაუქმების გასაღები სიგრძით %d ძალიან გრძელია (მაქს 256 ბაიტი)" -#: fe-protocol3.c:1952 +#: fe-protocol3.c:1966 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: ტექსტის COPY OUT-ს არ გავაკეთებ" -#: fe-protocol3.c:2327 +#: fe-protocol3.c:2341 #, c-format msgid "protocol error: no function result" msgstr "პროტოკოლის შეცდომა: ფუნქციის შედეგის გარეშე" -#: fe-protocol3.c:2339 +#: fe-protocol3.c:2353 #, c-format msgid "protocol error: id=0x%x" msgstr "პროტოკოლის შეცდომა: id=0x%x" @@ -1675,12 +1762,12 @@ msgstr "GSSAPI -ის გადატანის შეცდომა" msgid "outgoing GSSAPI message would not use confidentiality" msgstr "გამავალი GSSAPI შეტყობინება კონფიდენციალობას ვერ იყენებს" -#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:723 +#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:726 #, c-format msgid "client tried to send oversize GSSAPI packet (%zu > %zu)" msgstr "კლიენტი ძალიან დიდი GSSAPI პაკეტების გაგზავნას ცდილობს (%zu > %zu)" -#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:599 +#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:602 #, c-format msgid "oversize GSSAPI packet sent by the server (%zu > %zu)" msgstr "სერვერის მიერ გამოგზავნილი GSSAPI-ის პაკეტი ძალიან დიდია (%zu > %zu)" @@ -1694,11 +1781,11 @@ msgstr "GSSAPI-ის გადატანის მოხსნის შე msgid "incoming GSSAPI message did not use confidentiality" msgstr "შემომავალი GSSAPI შეტყობინება კონფიდენციალობას ვერ იყენებს" -#: fe-secure-gssapi.c:662 +#: fe-secure-gssapi.c:665 msgid "could not initiate GSSAPI security context" msgstr "'GSSAPI' უსაფრთხოების კონტექსტის დაწყების შეცდომა" -#: fe-secure-gssapi.c:712 +#: fe-secure-gssapi.c:715 msgid "GSSAPI size check error" msgstr "GSSAPI-ის ზომის შემოწმების შეცდომა" @@ -1977,10 +2064,34 @@ msgstr "სოკეტის უცნობი შეცდომა: 0x%08X/% #~ msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)\n" #~ msgstr "Unix-დომენის სოკეტის მისამართი \"%s\" ძალიან გრძელია (დასაშვებია %d ბაიტი)\n" +#, c-format +#~ msgid "adding kqueue timer to multiplexer: %m" +#~ msgstr "kqueue-ის ტაიმერის დამატება მულტიპლექსერზე: %m" + +#, c-format +#~ msgid "could not add to epoll set: %m" +#~ msgstr "epoll-ის ნაკრებში ჩამატება შეუძლებელია: %m" + +#, c-format +#~ msgid "could not add to kqueue: %m" +#~ msgstr "kqueue-ში ჩამატება შეუძლებელია: %m" + +#, c-format +#~ msgid "could not comb kqueue: %m" +#~ msgstr "kqueue-ის კომბინგი შეუძლებელია: %m" + #, c-format #~ msgid "could not create SSL context: %s\n" #~ msgstr "შეცდომა SSL კონტექსტის შექმნისას: %s\n" +#, c-format +#~ msgid "could not delete from epoll set: %m" +#~ msgstr "epoll-ის ნაკრებიდან წაშლა შეუძლებელია: %m" + +#, c-format +#~ msgid "could not delete from kqueue: %m" +#~ msgstr "kqueue-დან წაშლა შეუძლებელია: %m" + #, c-format #~ msgid "could not load private key file \"%s\": %s\n" #~ msgstr "პირადი გასაღების ფაილის \"%s\" ჩატვირთვის შეცდომა: %s\n" @@ -1989,10 +2100,38 @@ msgstr "სოკეტის უცნობი შეცდომა: 0x%08X/% #~ msgid "could not look up local user ID %d: %s" #~ msgstr "ლოკალური მომხმარებლის ID-ის (%d) ამოხსნა შეუძლებელია: %s" +#, c-format +#~ msgid "could not modify kqueue: %m" +#~ msgstr "kqueue-ის შეცვლა შეუძლებელია: %m" + #, c-format #~ msgid "could not open file \"%s\": %s\n" #~ msgstr "ფაილის გახსნის შეცდომა \"%s\": %s\n" +#, c-format +#~ msgid "could not update epoll set: %m" +#~ msgstr "epoll-ების ნაკრების განახლება ჩავარდა: %m" + +#, c-format +#~ msgid "deleting kqueue timer: %m" +#~ msgstr "kqueue-ის ტაიმერის წაშლა: %m" + +#, c-format +#~ msgid "failed to add timerfd to epoll set: %m" +#~ msgstr "epoll-ის ნაკრებში timerfd-ის ჩამატება ჩავარდა; %m" + +#, c-format +#~ msgid "failed to create epoll set: %m" +#~ msgstr "epoll-ის ნაკრების შექმნა ჩავარდა: %m" + +#, c-format +#~ msgid "failed to create timer kqueue: %m" +#~ msgstr "ტაიმერის kqueue-ის შექმნა ჩავარდა: %m" + +#, c-format +#~ msgid "failed to create timerfd: %m" +#~ msgstr "timerfd-ის შექმნა ჩავარდა: %m" + #, c-format #~ msgid "getting timerfd value: %m" #~ msgstr "timerfd-ის მნიშვნელობის მიღება: %m" @@ -2000,6 +2139,30 @@ msgstr "სოკეტის უცნობი შეცდომა: 0x%08X/% #~ msgid "incoming GSSAPI message did not use confidentiality\n" #~ msgstr "შემომავალი GSSAPI შეტყობინება კონფიდენციალობას არ იყენებს\n" +#, c-format +#~ msgid "internal error: array member found at nesting level %d" +#~ msgstr "შიდა შეცდომა: ერთმანეთში ჩალაგების დონეზე %d აღმოჩენილია მასივის წევრი" + +#, c-format +#~ msgid "internal error: field '%s' still active at end of object" +#~ msgstr "შიდა შეცდომა: ველი '%s' ჯერ კიდევ აქტიურია ობიექტის ბოლოში" + +#, c-format +#~ msgid "internal error: found unexpected array end while parsing field '%s'" +#~ msgstr "შიდა შეცდომა: აღმოჩენილია მოულოდნელი მასივის დასასრული '%s' ველის დამუშავებისას" + +#, c-format +#~ msgid "internal error: scalar field '%s' would be assigned twice" +#~ msgstr "შიდა შეცდომა: შეიძლება, სკალარული ველი '%s' ორჯერაა მინიჭებული" + +#, c-format +#~ msgid "internal error: scalar target found at nesting level %d" +#~ msgstr "შიდა შეცდომა: აღმოჩენილია სკალარული სამიზნე ერთმანეთში ჩალაგების დონეზე %d" + +#, c-format +#~ msgid "internal error: started field '%s' before field '%s' was finished" +#~ msgstr "შიდა შეცდომა: დაიწყო ველი '%s' მანამდე, სანამ დასრულდა ველი '%s'" + #, c-format #~ msgid "invalid %s message" #~ msgstr "არასწორი %s შეტყობინება" @@ -2045,6 +2208,18 @@ msgstr "სოკეტის უცნობი შეცდომა: 0x%08X/% #~ msgid "protocol version not supported by server: client uses %u.%u, server supports up to %u.%u" #~ msgstr "პროტოკოლის ვერსია სერვერის მიერ მხარდაჭერილი არაა: კლიენტი იყენებს %u.%u, სერვერის მხარდაჭერილი ვერსიის მაქსიმუმია %u.%u" +#, c-format +#~ msgid "removing kqueue timer from multiplexer: %m" +#~ msgstr "kqueue-ის ტაიმერის წაშლა მულტიპლექსერიდან: %m" + +#, c-format +#~ msgid "setting kqueue timer to %ld: %m" +#~ msgstr "kqueue-ის ტაიმერის დაყენება %ld-ზე: %m" + +#, c-format +#~ msgid "setting timerfd to %ld: %m" +#~ msgstr "%ld-ზე timerfd-ის დაყენება: %m" + #, c-format #~ msgid "sslnegotiation value \"%s\" invalid when SSL support is not compiled in" #~ msgstr "sslnegotiation-ის მნიშვნელობა \"%s\" არასწორია, როცა SSL-ის მხარდაჭერა გამორთული იყო აგების დროს" @@ -2053,6 +2228,10 @@ msgstr "სოკეტის უცნობი შეცდომა: 0x%08X/% #~ msgid "unknown command type provided" #~ msgstr "მითითებულია უცნობი ბრძანების ტიპი" +#, c-format +#~ msgid "unknown libcurl socket operation: %d" +#~ msgstr "libcurl-ის სოკეტის უცნობი ოპერაცია: %d" + #, c-format #~ msgid "unrecognized SSL error code: %d\n" #~ msgstr "უცნობი SSL-ის შეცდომის კოდი: %d\n" diff --git a/src/interfaces/libpq/po/ru.po b/src/interfaces/libpq/po/ru.po index f24c3ba7403..16cb5c66728 100644 --- a/src/interfaces/libpq/po/ru.po +++ b/src/interfaces/libpq/po/ru.po @@ -4,14 +4,14 @@ # Serguei A. Mokhov , 2001-2004. # Oleg Bartunov , 2005. # Andrey Sudnik , 2010. -# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026 Alexander Lakhin # Maxim Yablokov , 2021. msgid "" msgstr "" "Project-Id-Version: libpq (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-09 06:28+0200\n" -"PO-Revision-Date: 2025-09-03 08:20+0300\n" +"POT-Creation-Date: 2026-02-07 08:57+0200\n" +"PO-Revision-Date: 2026-02-07 10:48+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -21,283 +21,211 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#: ../libpq-oauth/oauth-curl.c:308 ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "ошибка при удалении простого указателя libcurl: %s" -#: ../libpq-oauth/oauth-curl.c:327 +#: ../libpq-oauth/oauth-curl.c:328 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "ошибка при очистке множественного указателя libcurl: %s" -#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#: ../libpq-oauth/oauth-curl.c:394 ../libpq-oauth/oauth-curl.c:405 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "не удалось задать %s для подключения OAuth: %s" -#: ../libpq-oauth/oauth-curl.c:412 +#: ../libpq-oauth/oauth-curl.c:416 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "не удалось получить %s из ответа OAuth: %s" -#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 +#: ../libpq-oauth/oauth-curl.c:485 fe-auth-oauth.c:209 fe-auth-oauth.c:271 +#: fe-auth-oauth.c:333 #, c-format -msgid "JSON is too deeply nested" -msgstr "слишком большая вложенность в JSON" - -#: ../libpq-oauth/oauth-curl.c:540 -#, c-format -msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "внутренняя ошибка: поле '%s' началось прежде чем закончилось поле '%s'" - -#: ../libpq-oauth/oauth-curl.c:567 -#, c-format -msgid "field \"%s\" is duplicated" -msgstr "поле \"%s\" дублируется" +msgid "field \"%s\" must be a string" +msgstr "поле \"%s\" должно быть строковым" -#: ../libpq-oauth/oauth-curl.c:592 +#: ../libpq-oauth/oauth-curl.c:489 #, c-format -msgid "internal error: field '%s' still active at end of object" -msgstr "внутренняя ошибка: поле '%s' активно, но объект завершён" +msgid "field \"%s\" must be a number" +msgstr "поле \"%s\" должно быть числовым" -#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 +#: ../libpq-oauth/oauth-curl.c:493 #, c-format -msgid "top-level element must be an object" -msgstr "элементом верхнего уровня должен быть объект" +msgid "field \"%s\" must be an array of strings" +msgstr "поле \"%s\" должно содержать массив строк" -#: ../libpq-oauth/oauth-curl.c:648 +#: ../libpq-oauth/oauth-curl.c:498 #, c-format -msgid "internal error: found unexpected array end while parsing field '%s'" -msgstr "" -"внутренняя ошибка: при разборе поля '%s' неожиданно обнаружен конец массива" +msgid "field \"%s\" has unexpected type" +msgstr "поле \"%s\" имеет неожиданный тип" -#: ../libpq-oauth/oauth-curl.c:703 +#: ../libpq-oauth/oauth-curl.c:522 ../libpq-oauth/oauth-curl.c:632 +#: fe-auth-oauth.c:215 fe-auth-oauth.c:277 #, c-format -msgid "internal error: scalar target found at nesting level %d" -msgstr "" -"внутрення ошибка: скалярное значение обнаружено на уровне вложенности %d" +msgid "JSON is too deeply nested" +msgstr "слишком большая вложенность в JSON" -#: ../libpq-oauth/oauth-curl.c:713 +#: ../libpq-oauth/oauth-curl.c:574 fe-auth-oauth.c:324 #, c-format -msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "внутренняя ошибка: попытка двойного присвоения скалярному полю '%s'" +msgid "field \"%s\" is duplicated" +msgstr "поле \"%s\" дублируется" -#: ../libpq-oauth/oauth-curl.c:735 +#: ../libpq-oauth/oauth-curl.c:614 ../libpq-oauth/oauth-curl.c:674 +#: fe-auth-oauth.c:264 fe-auth-oauth.c:298 #, c-format -msgid "internal error: array member found at nesting level %d" -msgstr "внутренняя ошибка: элемент массива найден на уровне вложенности %d" +msgid "top-level element must be an object" +msgstr "элементом верхнего уровня должен быть объект" -#: ../libpq-oauth/oauth-curl.c:770 +#: ../libpq-oauth/oauth-curl.c:777 #, c-format msgid "no content type was provided" msgstr "тип содержимого не передан" -#: ../libpq-oauth/oauth-curl.c:809 +#: ../libpq-oauth/oauth-curl.c:816 #, c-format msgid "unexpected content type: \"%s\"" msgstr "неожиданный тип содержимого: \"%s\"" -#: ../libpq-oauth/oauth-curl.c:834 +#: ../libpq-oauth/oauth-curl.c:841 #, c-format msgid "response contains embedded NULLs" msgstr "ответ содержит в себе NUL" -#: ../libpq-oauth/oauth-curl.c:844 +#: ../libpq-oauth/oauth-curl.c:851 #, c-format msgid "response is not valid UTF-8" msgstr "ответ не является текстом в кодировке UTF-8" -#: ../libpq-oauth/oauth-curl.c:884 +#: ../libpq-oauth/oauth-curl.c:891 #, c-format msgid "field \"%s\" is missing" msgstr "поле \"%s\" отсутствует" -#: ../libpq-oauth/oauth-curl.c:1118 +#: ../libpq-oauth/oauth-curl.c:1097 +msgid "failed to parse token error response" +msgstr "не удалось разобрать ответ с ошибкой токена" + +#: ../libpq-oauth/oauth-curl.c:1125 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "провайдер не принял oauth_client_secret" -#: ../libpq-oauth/oauth-curl.c:1182 -#, c-format -msgid "failed to create epoll set: %m" -msgstr "не удалось создать набор epoll: %m" - -#: ../libpq-oauth/oauth-curl.c:1189 -#, c-format -msgid "failed to create timerfd: %m" -msgstr "не удалось создать timerfd: %m" - -#: ../libpq-oauth/oauth-curl.c:1195 -#, c-format -msgid "failed to add timerfd to epoll set: %m" -msgstr "не удалось добавить timerfd в набор epoll: %m" - -#. translator: the term "kqueue" (kernel queue) should not be translated -#: ../libpq-oauth/oauth-curl.c:1205 -#, c-format -msgid "failed to create kqueue: %m" -msgstr "не удалось создать kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1218 -#, c-format -msgid "failed to create timer kqueue: %m" -msgstr "не удалось создать kqueue для таймера: %m" - -#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 -#, c-format -msgid "unknown libcurl socket operation: %d" -msgstr "неизвестная операция для сокета libcurl: %d" - -#: ../libpq-oauth/oauth-curl.c:1279 -#, c-format -msgid "could not add to epoll set: %m" -msgstr "ошибка при добавлении в набор epoll: %m" - -#: ../libpq-oauth/oauth-curl.c:1283 -#, c-format -msgid "could not delete from epoll set: %m" -msgstr "ошибка при удалении из набора epoll: %m" - -#: ../libpq-oauth/oauth-curl.c:1287 -#, c-format -msgid "could not update epoll set: %m" -msgstr "ошибка при изменении набора epoll: %m" - -#: ../libpq-oauth/oauth-curl.c:1347 -#, c-format -msgid "could not modify kqueue: %m" -msgstr "не удалось модифицировать kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1371 -#, c-format -msgid "could not delete from kqueue: %m" -msgstr "ошибка при удалении из kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1374 -#, c-format -msgid "could not add to kqueue: %m" -msgstr "ошибка при добавлении в kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1423 -#, c-format -msgid "could not comb kqueue: %m" -msgstr "не удалось упорядочить kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1473 -#, c-format -msgid "setting timerfd to %ld: %m" -msgstr "установка для timerfd значения %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1503 +#: ../libpq-oauth/oauth-curl.c:1126 #, c-format -msgid "deleting kqueue timer: %m" -msgstr "удаление таймера kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1510 -#, c-format -msgid "removing kqueue timer from multiplexer: %m" -msgstr "удаление таймера kqueue из мультиплексора: %m" - -#: ../libpq-oauth/oauth-curl.c:1521 -#, c-format -msgid "setting kqueue timer to %ld: %m" -msgstr "установка для таймера kqueue значения %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1528 -#, c-format -msgid "adding kqueue timer to multiplexer: %m" -msgstr "добавление таймера kqueue в мультиплексор: %m" +msgid "" +"provider requires client authentication, and no oauth_client_secret is set" +msgstr "" +"провайдер требует проверку подлинности клиента, но oauth_client_secret " +"отсутствует" -#: ../libpq-oauth/oauth-curl.c:1553 +#: ../libpq-oauth/oauth-curl.c:1559 #, c-format msgid "checking timer expiration: %m" msgstr "проверка состояния таймера: %m" -#: ../libpq-oauth/oauth-curl.c:1715 +#: ../libpq-oauth/oauth-curl.c:1721 #, c-format msgid "failed to create libcurl multi handle" msgstr "не удалось создать множественный указатель libcurl" -#: ../libpq-oauth/oauth-curl.c:1735 +#: ../libpq-oauth/oauth-curl.c:1741 #, c-format msgid "failed to create libcurl handle" msgstr "не удалось создать указатель libcurl" -#: ../libpq-oauth/oauth-curl.c:1819 ../libpq-oauth/oauth-curl.c:1860 -#: ../libpq-oauth/oauth-curl.c:2173 ../libpq-oauth/oauth-curl.c:2334 -#: ../libpq-oauth/oauth-curl.c:2395 ../libpq-oauth/oauth-curl.c:2484 -#: ../libpq-oauth/oauth-curl.c:2778 ../libpq-oauth/oauth-curl.c:2995 +#: ../libpq-oauth/oauth-curl.c:1825 ../libpq-oauth/oauth-curl.c:1866 +#: ../libpq-oauth/oauth-curl.c:2184 ../libpq-oauth/oauth-curl.c:2345 +#: ../libpq-oauth/oauth-curl.c:2406 ../libpq-oauth/oauth-curl.c:2495 +#: ../libpq-oauth/oauth-curl.c:2789 ../libpq-oauth/oauth-curl.c:3006 +#: fe-auth-oauth.c:146 fe-auth-oauth.c:489 fe-auth-oauth.c:561 +#: fe-auth-oauth.c:723 fe-auth-oauth.c:1016 fe-auth-oauth.c:1029 +#: fe-auth-oauth.c:1117 fe-auth-oauth.c:1130 fe-auth-oauth.c:1266 #: fe-auth-scram.c:374 fe-auth-scram.c:447 fe-auth-scram.c:599 #: fe-auth-scram.c:619 fe-auth-scram.c:643 fe-auth-scram.c:657 #: fe-auth-scram.c:703 fe-auth-scram.c:739 fe-auth-scram.c:931 fe-auth.c:308 #: fe-auth.c:382 fe-auth.c:416 fe-auth.c:694 fe-auth.c:827 fe-auth.c:1330 -#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1011 fe-connect.c:1051 -#: fe-connect.c:2171 fe-connect.c:2333 fe-connect.c:3726 fe-connect.c:5182 -#: fe-connect.c:5495 fe-connect.c:5750 fe-connect.c:5868 fe-connect.c:6115 -#: fe-connect.c:6195 fe-connect.c:6293 fe-connect.c:6544 fe-connect.c:6571 -#: fe-connect.c:6647 fe-connect.c:6670 fe-connect.c:6694 fe-connect.c:6729 -#: fe-connect.c:6815 fe-connect.c:6823 fe-connect.c:7180 fe-connect.c:7362 -#: fe-exec.c:530 fe-exec.c:1326 fe-exec.c:3265 fe-exec.c:4304 fe-exec.c:4470 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:211 fe-protocol3.c:234 -#: fe-protocol3.c:257 fe-protocol3.c:274 fe-protocol3.c:295 fe-protocol3.c:369 -#: fe-protocol3.c:750 fe-protocol3.c:990 fe-protocol3.c:1542 -#: fe-protocol3.c:1596 fe-protocol3.c:1642 fe-protocol3.c:1663 -#: fe-protocol3.c:1920 fe-protocol3.c:2321 fe-secure-common.c:110 +#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1012 fe-connect.c:1052 +#: fe-connect.c:2172 fe-connect.c:2334 fe-connect.c:3727 fe-connect.c:5183 +#: fe-connect.c:5496 fe-connect.c:5765 fe-connect.c:5883 fe-connect.c:6130 +#: fe-connect.c:6210 fe-connect.c:6308 fe-connect.c:6559 fe-connect.c:6586 +#: fe-connect.c:6662 fe-connect.c:6685 fe-connect.c:6709 fe-connect.c:6744 +#: fe-connect.c:6830 fe-connect.c:6838 fe-connect.c:7195 fe-connect.c:7377 +#: fe-exec.c:530 fe-exec.c:1331 fe-exec.c:3270 fe-exec.c:4341 fe-exec.c:4534 +#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:212 fe-protocol3.c:235 +#: fe-protocol3.c:258 fe-protocol3.c:275 fe-protocol3.c:296 fe-protocol3.c:370 +#: fe-protocol3.c:751 fe-protocol3.c:991 fe-protocol3.c:1556 +#: fe-protocol3.c:1610 fe-protocol3.c:1656 fe-protocol3.c:1677 +#: fe-protocol3.c:1934 fe-protocol3.c:2335 fe-secure-common.c:110 #: fe-secure-gssapi.c:508 fe-secure-gssapi.c:699 fe-secure-openssl.c:405 #: fe-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "нехватка памяти" -#: ../libpq-oauth/oauth-curl.c:1847 +#: ../libpq-oauth/oauth-curl.c:1853 #, c-format msgid "response is too large" msgstr "ответ слишком большой" -#: ../libpq-oauth/oauth-curl.c:1889 +#: ../libpq-oauth/oauth-curl.c:1895 #, c-format msgid "failed to queue HTTP request: %s" msgstr "добавить HTTP-запрос в очередь не удалось: %s" -#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#: ../libpq-oauth/oauth-curl.c:1912 ../libpq-oauth/oauth-curl.c:1970 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "ошибка асинхронного HTTP-запроса: %s" -#: ../libpq-oauth/oauth-curl.c:2011 +#: ../libpq-oauth/oauth-curl.c:2022 #, c-format msgid "no result was retrieved for the finished handle" msgstr "для завершённого указателя не был получен результат" -#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 -#: ../libpq-oauth/oauth-curl.c:2529 +#: ../libpq-oauth/oauth-curl.c:2155 ../libpq-oauth/oauth-curl.c:2461 +#: ../libpq-oauth/oauth-curl.c:2540 #, c-format msgid "unexpected response code %ld" msgstr "неожиданный код ответа %ld" -#: ../libpq-oauth/oauth-curl.c:2216 +#: ../libpq-oauth/oauth-curl.c:2162 +msgid "failed to parse OpenID discovery document" +msgstr "не удалось разобрать документ обнаружения OpenID" + +#: ../libpq-oauth/oauth-curl.c:2227 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "идентификатор издателя (%s) не совпадает с oauth_issuer (%s)" -#: ../libpq-oauth/oauth-curl.c:2243 +#: ../libpq-oauth/oauth-curl.c:2254 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "издатель \"%s\" не передал конечную точку авторизации устройств" -#: ../libpq-oauth/oauth-curl.c:2269 +#: ../libpq-oauth/oauth-curl.c:2280 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "конечная точка авторизации устройств \"%s\" должна использовать HTTPS" # well-spelled: токенов -#: ../libpq-oauth/oauth-curl.c:2278 +#: ../libpq-oauth/oauth-curl.c:2289 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "конечная точка токенов \"%s\" должна использовать HTTPS" -#: ../libpq-oauth/oauth-curl.c:2587 +#: ../libpq-oauth/oauth-curl.c:2430 +msgid "failed to parse device authorization" +msgstr "не удалось разобрать сообщение авторизации устройства" + +# well-spelled: токеном +#: ../libpq-oauth/oauth-curl.c:2518 +msgid "failed to parse access token response" +msgstr "не удалось разобрать ответ с токеном доступа" + +#: ../libpq-oauth/oauth-curl.c:2598 #, c-format msgid "slow_down interval overflow" msgstr "переполнение интервала замедления (slow_down)" @@ -305,27 +233,27 @@ msgstr "переполнение интервала замедления (slow_d #. translator: The first %s is a URL for the user to visit in a #. browser, and the second %s is a code to be copy-pasted there. #. -#: ../libpq-oauth/oauth-curl.c:2623 +#: ../libpq-oauth/oauth-curl.c:2634 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "Посетите %s и введите код: %s\n" -#: ../libpq-oauth/oauth-curl.c:2628 +#: ../libpq-oauth/oauth-curl.c:2639 #, c-format msgid "device prompt failed" msgstr "ошибка при запросе устройства" -#: ../libpq-oauth/oauth-curl.c:2684 +#: ../libpq-oauth/oauth-curl.c:2695 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "в curl_global_init ранее возникла ошибка при настройке OAuth" -#: ../libpq-oauth/oauth-curl.c:2703 +#: ../libpq-oauth/oauth-curl.c:2714 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "в curl_global_init возникла ошибка при настройке OAuth" -#: ../libpq-oauth/oauth-curl.c:2724 +#: ../libpq-oauth/oauth-curl.c:2735 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -340,6 +268,174 @@ msgstr "" "\tlibcurl сообщает, что таковой не является. Перекомпилируйте\n" "\tlibpq с установленной версией libcurl." +#: ../libpq-oauth/oauth-curl.c:2897 +msgid "failed to fetch OpenID discovery document" +msgstr "не удалось получить документ обнаружения OpenID" + +#: ../libpq-oauth/oauth-curl.c:2911 +msgid "cannot run OAuth device authorization" +msgstr "не удалось запустить авторизацию устройства OAuth" + +#: ../libpq-oauth/oauth-curl.c:2915 +msgid "failed to obtain device authorization" +msgstr "не удалось получить авторизацию устройства" + +#: ../libpq-oauth/oauth-curl.c:2926 ../libpq-oauth/oauth-curl.c:2977 +msgid "failed to obtain access token" +msgstr "не удалось получить токен доступа" + +#: fe-auth-oauth.c:133 +#, c-format +msgid "internal error: no OAuth token was set for the connection" +msgstr "внутренняя ошибка: отсутствует токен OAuth для текущего подключения" + +# well-spelled: токенов +#: fe-auth-oauth.c:396 +#, c-format +msgid "OAuth discovery URI \"%s\" must use HTTPS" +msgstr "в URI обнаружения OAuth \"%s\" должен использоваться HTTPS" + +#: fe-auth-oauth.c:413 +#, c-format +msgid "" +"OAuth discovery URI \"%s\" must not contain query or fragment components" +msgstr "URI обнаружения OAuth \"%s\" должен содержать запрос или фрагменты" + +# skip-rule: space-before-period +#: fe-auth-oauth.c:428 +#, c-format +msgid "OAuth discovery URI \"%s\" is not a .well-known URI" +msgstr "URI обнаружения OAuth \"%s\" не соответствует формату .well-known" + +# skip-rule: space-before-period +#: fe-auth-oauth.c:454 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an unsupported .well-known suffix" +msgstr "" +"в URI обнаружения OAuth \"%s\" используется неподдерживаемый суффикс .well-" +"known" + +#: fe-auth-oauth.c:479 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an invalid format" +msgstr "URI обнаружения OAuth \"%s\" имеет неправильный формат" + +#: fe-auth-oauth.c:528 +#, c-format +msgid "server's error message contained an embedded NULL, and was discarded" +msgstr "" +"сообщение ошибки сервера игнорируется, так как оно содержит NULL внутри" + +#: fe-auth-oauth.c:539 +#, c-format +msgid "server's error response is not valid UTF-8" +msgstr "ответ с ошибкой сервера не является текстом в кодировке UTF-8" + +#: fe-auth-oauth.c:579 +#, c-format +msgid "failed to parse server's error response: %s" +msgstr "не удалось разобрать ответ с ошибкой сервера: %s" + +#: fe-auth-oauth.c:610 +#, c-format +msgid "" +"server's discovery document at %s (issuer \"%s\") is incompatible with " +"oauth_issuer (%s)" +msgstr "" +"документ обнаружения сервера по адресу %s (издатель \"%s\") несовместим с " +"издателем oauth (%s)" + +#: fe-auth-oauth.c:631 +#, c-format +msgid "server's discovery document has moved to %s (previous location was %s)" +msgstr "" +"документ обнаружения сервера перемещён в %s (предыдущее расположение: %s)" + +#: fe-auth-oauth.c:652 +#, c-format +msgid "server sent error response without a status" +msgstr "сервер передал ответ с ошибкой без текста статуса" + +#: fe-auth-oauth.c:663 +#, c-format +msgid "server rejected OAuth bearer token: %s" +msgstr "сервер не принял токен предъявителя OAuth: %s" + +#: fe-auth-oauth.c:696 +#, c-format +msgid "user-defined OAuth flow provided neither a token nor an async callback" +msgstr "" +"в пользовательском потоке OAuth не был получен ни токен, ни асинхронный " +"обратный вызов" + +#: fe-auth-oauth.c:703 fe-auth-oauth.c:1041 +#, c-format +msgid "user-defined OAuth flow failed" +msgstr "ошибка пользовательского потока OAuth" + +#: fe-auth-oauth.c:716 +#, c-format +msgid "user-defined OAuth flow did not provide a token" +msgstr "в пользовательском потоке OAuth не был получен токен" + +#: fe-auth-oauth.c:734 +#, c-format +msgid "user-defined OAuth flow did not provide a socket for polling" +msgstr "в пользовательском потоке OAuth не был получен сокет для опроса" + +#: fe-auth-oauth.c:917 +#, c-format +msgid "failed to lock mutex (%d)" +msgstr "не удалось получить исключительную блокировку (%d)" + +#: fe-auth-oauth.c:1046 +#, c-format +msgid "no OAuth flows are available (try installing the libpq-oauth package)" +msgstr "потоки OAuth недоступны (попробуйте установить пакет libpq-oauth)" + +#: fe-auth-oauth.c:1095 +#, c-format +msgid "" +"server requires OAuth authentication, but oauth_issuer and oauth_client_id " +"are not both set" +msgstr "" +"сервер требует проверку подлинности OAuth, но значения oauth_issuer и " +"oauth_client_id не определены" + +#: fe-auth-oauth.c:1255 +#, c-format +msgid "server sent unexpected additional OAuth data" +msgstr "сервер передал неожиданные дополнительные данные OAuth" + +#: fe-auth-oauth.c:1295 +#, c-format +msgid "" +"server requires OAuth authentication, but no discovery metadata was provided" +msgstr "" +"сервер требует проверку подлинности OAuth, но метаданные обнаружения не " +"предоставлены" + +#: fe-auth-oauth.c:1333 +#, c-format +msgid "internal error: OAuth flow did not set a token" +msgstr "внутренняя ошибка: в потоке OAuth не был установлен токен" + +#: fe-auth-oauth.c:1351 +#, c-format +msgid "server sent additional OAuth data after error" +msgstr "сервер передал дополнительные данные OAuth после ошибки" + +#: fe-auth-oauth.c:1355 +#, c-format +msgid "invalid OAuth exchange state" +msgstr "ошибочное состояние обмена OAuth" + +# well-spelled: токеном +#: fe-auth-oauth.c:1368 +#, c-format +msgid "retrying connection with new bearer token" +msgstr "повторение подключения с новым токеном предъявителя" + #: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" @@ -688,17 +784,17 @@ msgstr "через это соединение уже передаётся за msgid "unexpected response from server" msgstr "неожиданный ответ сервера" -#: fe-connect.c:1308 +#: fe-connect.c:1309 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "не удалось сопоставить имена узлов (%d) со значениями hostaddr (%d)" -#: fe-connect.c:1388 +#: fe-connect.c:1389 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "не удалось сопоставить номера портов (%d) с узлами (%d)" -#: fe-connect.c:1516 +#: fe-connect.c:1517 #, c-format msgid "" "negative require_auth method \"%s\" cannot be mixed with non-negative methods" @@ -706,35 +802,35 @@ msgstr "" "отрицательный метод require_auth \"%s\" не может совмещаться с " "неотрицательными методами" -#: fe-connect.c:1529 +#: fe-connect.c:1530 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "" "метод require_auth \"%s\" не может совмещаться с отрицательными методами" -#: fe-connect.c:1605 fe-connect.c:1734 fe-connect.c:1776 fe-connect.c:1819 -#: fe-connect.c:1922 fe-connect.c:1968 fe-connect.c:2008 fe-connect.c:2075 -#: fe-connect.c:8248 +#: fe-connect.c:1606 fe-connect.c:1735 fe-connect.c:1777 fe-connect.c:1820 +#: fe-connect.c:1923 fe-connect.c:1969 fe-connect.c:2009 fe-connect.c:2076 +#: fe-connect.c:8263 #, c-format msgid "invalid %s value: \"%s\"" msgstr "неверное значение %s: \"%s\"" -#: fe-connect.c:1647 +#: fe-connect.c:1648 #, c-format msgid "internal error: no space in allowed_sasl_mechs" msgstr "внутренняя ошибка: в allowed_sasl_mechs нет места" -#: fe-connect.c:1686 +#: fe-connect.c:1687 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "метод require_auth \"%s\" указан неоднократно" -#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 +#: fe-connect.c:1758 fe-connect.c:1797 fe-connect.c:1829 fe-connect.c:1931 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "значение %s \"%s\" недопустимо для сборки без поддержки SSL" -#: fe-connect.c:1848 +#: fe-connect.c:1849 #, c-format msgid "" "weak sslmode \"%s\" may not be used with sslnegotiation=direct (use " @@ -743,7 +839,7 @@ msgstr "" "слабый режим sslmode \"%s\" не может использоваться с sslnegotiation=direct " "(используйте режим \"require\", \"verify-ca\" или \"verify-full\")" -#: fe-connect.c:1870 +#: fe-connect.c:1871 #, c-format msgid "" "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-" @@ -752,72 +848,72 @@ msgstr "" "слабый режим sslmode \"%s\" не может использоваться с sslrootcert=system " "(используйте режим \"verify-full\")" -#: fe-connect.c:1883 fe-connect.c:1891 +#: fe-connect.c:1884 fe-connect.c:1892 #, c-format msgid "invalid \"%s\" value: \"%s\"" msgstr "неверное значение \"%s\": \"%s\"" -#: fe-connect.c:1908 +#: fe-connect.c:1909 #, c-format msgid "invalid SSL protocol version range" msgstr "неверный диапазон версий протокола SSL" -#: fe-connect.c:1945 +#: fe-connect.c:1946 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "значение %s \"%s\" не поддерживается (проверьте версию OpenSSL)" -#: fe-connect.c:1975 +#: fe-connect.c:1976 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "значение gssencmode \"%s\" недопустимо для сборки без поддержки GSSAPI" -#: fe-connect.c:2029 +#: fe-connect.c:2030 #, c-format msgid "invalid SCRAM client key" msgstr "неправильный клиентский ключ SCRAM" -#: fe-connect.c:2034 +#: fe-connect.c:2035 #, c-format msgid "invalid SCRAM client key length: %d" msgstr "некорректная длина клиентского ключа SCRAM: %d" -#: fe-connect.c:2052 +#: fe-connect.c:2053 #, c-format msgid "invalid SCRAM server key" msgstr "неправильный серверный ключ SCRAM" -#: fe-connect.c:2057 +#: fe-connect.c:2058 #, c-format msgid "invalid SCRAM server key length: %d" msgstr "некорректная длина серверного ключа SCRAM: %d" -#: fe-connect.c:2144 +#: fe-connect.c:2145 #, c-format msgid "\"%s\" is greater than \"%s\"" msgstr "\"%s\" больше чем \"%s\"" -#: fe-connect.c:2356 +#: fe-connect.c:2357 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "не удалось перевести сокет в режим TCP-передачи без задержки: %s" -#: fe-connect.c:2415 +#: fe-connect.c:2416 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "подключиться к серверу через сокет \"%s\" не удалось: " -#: fe-connect.c:2441 +#: fe-connect.c:2442 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "подключиться к серверу \"%s\" (%s), порту %s не удалось: " -#: fe-connect.c:2446 +#: fe-connect.c:2447 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "подключиться к серверу \"%s\", порту %s не удалось: " -#: fe-connect.c:2469 +#: fe-connect.c:2470 #, c-format msgid "" "\tIs the server running locally and accepting connections on that socket?" @@ -825,338 +921,345 @@ msgstr "" "\tСервер действительно работает локально и принимает подключения через этот " "сокет?" -#: fe-connect.c:2471 +#: fe-connect.c:2472 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "" "\tСервер действительно работает по данному адресу и принимает TCP-соединения?" -#: fe-connect.c:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 -#: fe-connect.c:3410 +#: fe-connect.c:2518 fe-connect.c:2552 fe-connect.c:2587 fe-connect.c:2685 +#: fe-connect.c:3411 #, c-format msgid "%s(%s) failed: %s" msgstr "ошибка в %s(%s): %s" -#: fe-connect.c:2650 +#: fe-connect.c:2651 #, c-format msgid "%s(%s) failed: error code %d" msgstr "ошибка в %s(%s): код ошибки %d" -#: fe-connect.c:2962 +#: fe-connect.c:2963 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "неверное состояние соединения - возможно разрушение памяти" -#: fe-connect.c:3045 +#: fe-connect.c:3046 #, c-format msgid "invalid port number: \"%s\"" msgstr "неверный номер порта: \"%s\"" -#: fe-connect.c:3059 +#: fe-connect.c:3060 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "преобразовать имя \"%s\" в адрес не удалось: %s" -#: fe-connect.c:3071 +#: fe-connect.c:3072 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "не удалось разобрать сетевой адрес \"%s\": %s" -#: fe-connect.c:3082 +#: fe-connect.c:3083 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "длина пути Unix-сокета \"%s\" превышает предел (%d байт)" -#: fe-connect.c:3096 +#: fe-connect.c:3097 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "преобразовать путь Unix-сокета \"%s\" в адрес не удалось: %s" -#: fe-connect.c:3262 fe-connect.c:4709 +#: fe-connect.c:3263 fe-connect.c:4710 #, c-format msgid "GSSAPI encryption required but it is not supported over a local socket" msgstr "" "затребовано шифрование GSSAPI, но оно не поддерживается для локального сокета" -#: fe-connect.c:3270 fe-connect.c:4838 +#: fe-connect.c:3271 fe-connect.c:4839 #, c-format msgid "GSSAPI encryption required but no credential cache" msgstr "шифрование GSSAPI затребовано в отсутствие кеша учётных данных" -#: fe-connect.c:3338 +#: fe-connect.c:3339 #, c-format msgid "could not create socket: %s" msgstr "не удалось создать сокет: %s" -#: fe-connect.c:3369 +#: fe-connect.c:3370 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "не удалось перевести сокет в неблокирующий режим: %s" -#: fe-connect.c:3380 +#: fe-connect.c:3381 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "" "не удалось перевести сокет в режим закрытия при выполнении (close-on-exec): " "%s" -#: fe-connect.c:3537 +#: fe-connect.c:3538 #, c-format msgid "could not get socket error status: %s" msgstr "не удалось получить статус ошибки сокета: %s" -#: fe-connect.c:3564 +#: fe-connect.c:3565 #, c-format msgid "could not get client address from socket: %s" msgstr "не удалось получить адрес клиента из сокета: %s" -#: fe-connect.c:3590 +#: fe-connect.c:3591 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "параметр requirepeer не поддерживается в этой ОС" -#: fe-connect.c:3592 +#: fe-connect.c:3593 #, c-format msgid "could not get peer credentials: %s" msgstr "не удалось получить учётные данные сервера: %s" -#: fe-connect.c:3605 +#: fe-connect.c:3606 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "" "requirepeer допускает подключение только к \"%s\", но сервер работает под " "именем \"%s\"" -#: fe-connect.c:3643 +#: fe-connect.c:3644 #, c-format msgid "could not send GSSAPI negotiation packet: %s" msgstr "не удалось отправить пакет согласования GSSAPI: %s" -#: fe-connect.c:3682 +#: fe-connect.c:3683 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "не удалось отправить пакет согласования SSL: %s" -#: fe-connect.c:3708 +#: fe-connect.c:3709 #, c-format msgid "could not send cancel packet: %s" msgstr "не удалось отправить пакет отмены: %s" -#: fe-connect.c:3738 +#: fe-connect.c:3739 #, c-format msgid "could not send startup packet: %s" msgstr "не удалось отправить стартовый пакет: %s" -#: fe-connect.c:3811 +#: fe-connect.c:3812 msgid "server does not support SSL, but SSL was required" msgstr "затребовано подключение через SSL, но сервер не поддерживает SSL" -#: fe-connect.c:3821 +#: fe-connect.c:3822 #, c-format msgid "server sent an error response during SSL exchange" msgstr "сервер передал ошибочный ответ во время обмена сообщениями SSL" -#: fe-connect.c:3826 +#: fe-connect.c:3827 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "получен неверный ответ при согласовании SSL: %c" -#: fe-connect.c:3846 +#: fe-connect.c:3847 #, c-format msgid "received unencrypted data after SSL response" msgstr "после ответа SSL получены незашифрованные данные" -#: fe-connect.c:3909 +#: fe-connect.c:3910 #, c-format msgid "server sent an error response during GSS encryption exchange" msgstr "сервер передал ошибочный ответ во время шифрования GSS" -#: fe-connect.c:3927 +#: fe-connect.c:3928 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "затребовано шифрование GSSAPI, но сервер его не поддерживает" -#: fe-connect.c:3931 +#: fe-connect.c:3932 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "получен неверный ответ при согласовании GSSAPI: %c" -#: fe-connect.c:3953 +#: fe-connect.c:3954 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "" "после ответа на запрос шифрования GSSAPI получены незашифрованные данные" -#: fe-connect.c:4014 +#: fe-connect.c:4015 #, c-format msgid "expected authentication request from server, but received %c" msgstr "ожидался запрос аутентификации от сервера, но получено: %c" -#: fe-connect.c:4042 fe-connect.c:4174 +#: fe-connect.c:4043 fe-connect.c:4175 #, c-format msgid "received invalid authentication request" msgstr "получен некорректный запрос аутентификации" -#: fe-connect.c:4048 +#: fe-connect.c:4049 #, c-format msgid "received invalid protocol negotiation message" msgstr "получено некорректное сообщение согласования протокола" -#: fe-connect.c:4067 fe-connect.c:4121 +#: fe-connect.c:4068 fe-connect.c:4122 #, c-format msgid "received invalid error message" msgstr "получено некорректное сообщение об ошибке" -#: fe-connect.c:4151 +#: fe-connect.c:4152 #, c-format msgid "received duplicate protocol negotiation message" msgstr "получено повторное сообщение согласования протокола" -#: fe-connect.c:4253 +#: fe-connect.c:4254 #, c-format msgid "internal error: async authentication has no handler" msgstr "внутренняя ошибка: нет обработчика для асинхронной аутентификации" -#: fe-connect.c:4278 +#: fe-connect.c:4279 #, c-format msgid "internal error: async cleanup did not release polling socket" msgstr "" "внутренняя ошибка: при асинхронной очистке не был освобождён опрашивающий " "сокет" -#: fe-connect.c:4301 +#: fe-connect.c:4302 #, c-format msgid "internal error: async authentication did not set a socket for polling" msgstr "" "внутренняя ошибка: при асинхронной аутентификации не был настроен сокет для " "опроса" -#: fe-connect.c:4334 +#: fe-connect.c:4335 #, c-format msgid "unexpected message from server during startup" msgstr "неожиданное сообщение от сервера в начале работы" -#: fe-connect.c:4425 +#: fe-connect.c:4426 #, c-format msgid "session is read-only" msgstr "сеанс не допускает запись" -#: fe-connect.c:4427 +#: fe-connect.c:4428 #, c-format msgid "session is not read-only" msgstr "сеанс допускает запись" -#: fe-connect.c:4480 +#: fe-connect.c:4481 #, c-format msgid "server is in hot standby mode" msgstr "сервер работает в режиме горячего резерва" -#: fe-connect.c:4482 +#: fe-connect.c:4483 #, c-format msgid "server is not in hot standby mode" msgstr "сервер работает не в режиме горячего резерва" -#: fe-connect.c:4607 fe-connect.c:4657 +#: fe-connect.c:4608 fe-connect.c:4658 #, c-format msgid "\"%s\" failed" msgstr "выполнить \"%s\" не удалось" -#: fe-connect.c:4671 +#: fe-connect.c:4672 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "неверное состояние соединения %d - возможно разрушение памяти" -#: fe-connect.c:5508 +#: fe-connect.c:5509 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "некорректный адрес LDAP \"%s\": схема должна быть ldap://" -#: fe-connect.c:5523 +#: fe-connect.c:5524 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "некорректный адрес LDAP \"%s\": отсутствует уникальное имя" -#: fe-connect.c:5535 fe-connect.c:5593 +#: fe-connect.c:5536 fe-connect.c:5594 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "некорректный адрес LDAP \"%s\": должен быть только один атрибут" -#: fe-connect.c:5547 fe-connect.c:5609 +#: fe-connect.c:5548 fe-connect.c:5610 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "" "некорректный адрес LDAP \"%s\": не указана область поиска (base/one/sub)" -#: fe-connect.c:5559 +#: fe-connect.c:5560 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "некорректный адрес LDAP \"%s\": нет фильтра" -#: fe-connect.c:5581 +#: fe-connect.c:5582 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "некорректный адрес LDAP \"%s\": неверный номер порта" -#: fe-connect.c:5618 +#: fe-connect.c:5619 #, c-format msgid "could not create LDAP structure" msgstr "не удалось создать структуру LDAP" -#: fe-connect.c:5693 +#: fe-connect.c:5694 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "ошибка поиска на сервере LDAP: %s" -#: fe-connect.c:5703 +#: fe-connect.c:5704 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "при поиске LDAP найдено более одного вхождения" -#: fe-connect.c:5705 fe-connect.c:5716 +#: fe-connect.c:5706 fe-connect.c:5717 #, c-format msgid "no entry found on LDAP lookup" msgstr "при поиске LDAP ничего не найдено" -#: fe-connect.c:5726 fe-connect.c:5738 +#: fe-connect.c:5727 fe-connect.c:5739 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "атрибут не содержит значений при поиске LDAP" -#: fe-connect.c:5789 fe-connect.c:5808 fe-connect.c:6332 +#: fe-connect.c:5753 +#, c-format +msgid "connection info string size exceeds the maximum allowed (%d)" +msgstr "" +"размер строки с информацией о подключении превышает максимально допустимый " +"(%d)" + +#: fe-connect.c:5804 fe-connect.c:5823 fe-connect.c:6347 #, c-format msgid "missing \"=\" after \"%s\" in connection info string" msgstr "в строке соединения нет \"=\" после \"%s\"" -#: fe-connect.c:5879 fe-connect.c:6515 fe-connect.c:7345 +#: fe-connect.c:5894 fe-connect.c:6530 fe-connect.c:7360 #, c-format msgid "invalid connection option \"%s\"" msgstr "неверный параметр соединения \"%s\"" -#: fe-connect.c:5894 fe-connect.c:6380 +#: fe-connect.c:5909 fe-connect.c:6395 #, c-format msgid "unterminated quoted string in connection info string" msgstr "в строке соединения не хватает закрывающей кавычки" -#: fe-connect.c:5974 +#: fe-connect.c:5989 #, c-format msgid "definition of service \"%s\" not found" msgstr "определение службы \"%s\" не найдено" -#: fe-connect.c:6000 +#: fe-connect.c:6015 #, c-format msgid "service file \"%s\" not found" msgstr "файл определений служб \"%s\" не найден" -#: fe-connect.c:6013 +#: fe-connect.c:6028 #, c-format msgid "line %d too long in service file \"%s\"" msgstr "слишком длинная строка (%d) в файле определений служб \"%s\"" -#: fe-connect.c:6084 fe-connect.c:6127 +#: fe-connect.c:6099 fe-connect.c:6142 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "синтаксическая ошибка в файле определения служб \"%s\" (строка %d)" -#: fe-connect.c:6095 +#: fe-connect.c:6110 #, c-format msgid "" "nested service specifications not supported in service file \"%s\", line %d" @@ -1164,24 +1267,24 @@ msgstr "" "рекурсивные определения служб не поддерживаются (файл определения служб " "\"%s\", строка %d)" -#: fe-connect.c:6834 +#: fe-connect.c:6849 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "во внутреннюю процедуру разбора строки передан ошибочный URI: \"%s\"" -#: fe-connect.c:6911 +#: fe-connect.c:6926 #, c-format msgid "" "end of string reached when looking for matching \"]\" in IPv6 host address " "in URI: \"%s\"" msgstr "URI не содержит символ \"]\" после адреса IPv6: \"%s\"" -#: fe-connect.c:6918 +#: fe-connect.c:6933 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "IPv6, содержащийся в URI, не может быть пустым: \"%s\"" -#: fe-connect.c:6933 +#: fe-connect.c:6948 #, c-format msgid "" "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): " @@ -1190,53 +1293,53 @@ msgstr "" "неожиданный символ \"%c\" в позиции %d в URI (ожидалось \":\" или \"/\"): " "\"%s\"" -#: fe-connect.c:7062 +#: fe-connect.c:7077 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "лишний разделитель ключа/значения \"=\" в параметрах URI: \"%s\"" -#: fe-connect.c:7082 +#: fe-connect.c:7097 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "в параметрах URI не хватает разделителя ключа/значения \"=\": \"%s\"" -#: fe-connect.c:7134 +#: fe-connect.c:7149 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "неверный параметр в URI: \"%s\"" -#: fe-connect.c:7218 +#: fe-connect.c:7233 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "неверный символ, закодированный с %%: \"%s\"" -#: fe-connect.c:7228 +#: fe-connect.c:7243 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "недопустимое значение %%00 для символа, закодированного с %%: \"%s\"" -#: fe-connect.c:7250 +#: fe-connect.c:7265 #, c-format msgid "" "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" msgstr "" "в \"%s\" обнаружены недопустимые пробелы, замените их закодированными (%%20)" -#: fe-connect.c:7626 +#: fe-connect.c:7641 msgid "connection pointer is NULL\n" msgstr "нулевой указатель соединения\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 -#: fe-protocol3.c:1005 fe-protocol3.c:1038 +#: fe-connect.c:7649 fe-exec.c:718 fe-exec.c:980 fe-exec.c:3475 +#: fe-protocol3.c:1006 fe-protocol3.c:1039 msgid "out of memory\n" msgstr "нехватка памяти\n" -#: fe-connect.c:7936 +#: fe-connect.c:7951 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: файл паролей \"%s\" - не обычный файл\n" -#: fe-connect.c:7946 +#: fe-connect.c:7961 #, c-format msgid "" "WARNING: password file \"%s\" has group or world access; permissions should " @@ -1245,182 +1348,193 @@ msgstr "" "ПРЕДУПРЕЖДЕНИЕ: к файлу паролей \"%s\" имеют доступ все или группа; права " "должны быть u=rw (0600) или более ограниченные\n" -#: fe-connect.c:8050 +#: fe-connect.c:8065 #, c-format msgid "password retrieved from file \"%s\"" msgstr "пароль получен из файла \"%s\"" -#: fe-connect.c:8216 +#: fe-connect.c:8231 #, c-format msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "неверное целочисленное значение \"%s\" для параметра соединения \"%s\"" -#: fe-exec.c:469 fe-exec.c:3544 +#: fe-exec.c:469 fe-exec.c:3549 #, c-format msgid "row number %d is out of range 0..%d" msgstr "номер записи %d вне диапазона 0..%d" -#: fe-exec.c:531 fe-protocol3.c:2126 +#: fe-exec.c:531 fe-protocol3.c:2140 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:834 +#: fe-exec.c:839 #, c-format msgid "write to server failed" msgstr "ошибка при передаче данных серверу" -#: fe-exec.c:874 +#: fe-exec.c:879 #, c-format msgid "no error text available" msgstr "текст ошибки отсутствует" -#: fe-exec.c:963 +#: fe-exec.c:968 msgid "NOTICE" msgstr "ЗАМЕЧАНИЕ" -#: fe-exec.c:1021 +#: fe-exec.c:1026 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult не может вместить больше чем INT_MAX кортежей" -#: fe-exec.c:1033 +#: fe-exec.c:1038 msgid "size_t overflow" msgstr "переполнение size_t" -#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 +#: fe-exec.c:1454 fe-exec.c:1523 fe-exec.c:1569 #, c-format msgid "command string is a null pointer" msgstr "указатель на командную строку нулевой" -#: fe-exec.c:1455 fe-exec.c:3014 +#: fe-exec.c:1460 fe-exec.c:3019 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%s не допускается в конвейерном режиме" -#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 +#: fe-exec.c:1528 fe-exec.c:1574 fe-exec.c:1668 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "число параметров должно быть от 0 до %d" -#: fe-exec.c:1559 fe-exec.c:1658 +#: fe-exec.c:1564 fe-exec.c:1663 #, c-format msgid "statement name is a null pointer" msgstr "указатель на имя оператора нулевой" -#: fe-exec.c:1700 fe-exec.c:3390 +#: fe-exec.c:1705 fe-exec.c:3395 #, c-format msgid "no connection to the server" msgstr "нет соединения с сервером" -#: fe-exec.c:1708 fe-exec.c:3398 +#: fe-exec.c:1713 fe-exec.c:3403 #, c-format msgid "another command is already in progress" msgstr "уже выполняется другая команда" -#: fe-exec.c:1738 +#: fe-exec.c:1743 #, c-format msgid "cannot queue commands during COPY" msgstr "во время COPY нельзя добавлять команды в очередь" -#: fe-exec.c:1857 +#: fe-exec.c:1862 #, c-format msgid "length must be given for binary parameter" msgstr "для двоичного параметра должна быть указана длина" -#: fe-exec.c:2216 +#: fe-exec.c:2221 #, c-format msgid "unexpected asyncStatus: %d" msgstr "неожиданный asyncStatus: %d" -#: fe-exec.c:2372 +#: fe-exec.c:2377 #, c-format msgid "" "synchronous command execution functions are not allowed in pipeline mode" msgstr "" "функции синхронного выполнения команд не допускаются в конвейерном режиме" -#: fe-exec.c:2389 +#: fe-exec.c:2394 msgid "COPY terminated by new PQexec" msgstr "операция COPY прервана вызовом PQexec" -#: fe-exec.c:2405 +#: fe-exec.c:2410 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "вызов PQexec не допускается в процессе COPY BOTH" -#: fe-exec.c:2641 +#: fe-exec.c:2646 #, c-format msgid "unrecognized message type \"%c\"" msgstr "нераспознанный тип сообщения \"%c\"" -#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 +#: fe-exec.c:2718 fe-exec.c:2772 fe-exec.c:2840 fe-protocol3.c:2071 #, c-format msgid "no COPY in progress" msgstr "операция COPY не выполняется" -#: fe-exec.c:3021 +#: fe-exec.c:3026 #, c-format msgid "connection in wrong state" msgstr "соединение в неправильном состоянии" -#: fe-exec.c:3064 +#: fe-exec.c:3069 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "перейти в конвейерный режиме нельзя, соединение не простаивает" -#: fe-exec.c:3100 fe-exec.c:3121 +#: fe-exec.c:3105 fe-exec.c:3126 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "выйти из конвейерного режима нельзя, не собрав все результаты" -#: fe-exec.c:3104 +#: fe-exec.c:3109 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "выйти из конвейерного режима в занятом состоянии нельзя" -#: fe-exec.c:3115 +#: fe-exec.c:3120 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "выйти из конвейерного режима во время COPY нельзя" -#: fe-exec.c:3314 +#: fe-exec.c:3319 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "отправить конвейер, не перейдя в конвейерный режим, нельзя" -#: fe-exec.c:3433 +#: fe-exec.c:3438 msgid "invalid ExecStatusType code" msgstr "неверный код ExecStatusType" -#: fe-exec.c:3460 +#: fe-exec.c:3465 msgid "PGresult is not an error result\n" msgstr "В PGresult не передан результат ошибки\n" -#: fe-exec.c:3528 fe-exec.c:3551 +#: fe-exec.c:3533 fe-exec.c:3556 #, c-format msgid "column number %d is out of range 0..%d" msgstr "номер столбца %d вне диапазона 0..%d" -#: fe-exec.c:3566 +#: fe-exec.c:3571 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "номер параметра %d вне диапазона 0..%d" -#: fe-exec.c:3877 +#: fe-exec.c:3882 #, c-format msgid "could not interpret result from server: %s" msgstr "не удалось интерпретировать ответ сервера: %s" -#: fe-exec.c:4152 fe-exec.c:4266 +#: fe-exec.c:4157 fe-exec.c:4292 #, c-format msgid "incomplete multibyte character" msgstr "неполный многобайтный символ" -#: fe-exec.c:4154 fe-exec.c:4285 +#: fe-exec.c:4159 fe-exec.c:4311 #, c-format msgid "invalid multibyte character" msgstr "неверный многобайтный символ" +#: fe-exec.c:4413 +#, c-format +msgid "escaped string size exceeds the maximum allowed (%zu)" +msgstr "размер строки с экранированием превышает максимально допустимый (%zu)" + +#: fe-exec.c:4590 +#, c-format +msgid "escaped bytea size exceeds the maximum allowed (%zu)" +msgstr "" +"размер значения bytea с экранированием превышает максимально допустимый (%zu)" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "ошибка импорта имени в GSSAPI" @@ -1508,12 +1622,12 @@ msgstr "неверный сокет" msgid "%s() failed: %s" msgstr "ошибка в %s(): %s" -#: fe-protocol3.c:189 +#: fe-protocol3.c:190 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "от сервера во время простоя получено сообщение типа 0x%02x" -#: fe-protocol3.c:402 +#: fe-protocol3.c:403 #, c-format msgid "" "server sent data (\"D\" message) without prior row description (\"T\" " @@ -1522,117 +1636,117 @@ msgstr "" "сервер отправил данные (сообщение \"D\") без предварительного описания " "строки (сообщение \"T\")" -#: fe-protocol3.c:444 +#: fe-protocol3.c:445 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "неожиданный ответ сервера; первый полученный символ: \"%c\"" -#: fe-protocol3.c:468 +#: fe-protocol3.c:469 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "содержимое не соответствует длине в сообщении типа \"%c\"" -#: fe-protocol3.c:503 +#: fe-protocol3.c:504 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "" "потеряна синхронизация с сервером: получено сообщение типа \"%c\", длина %d" -#: fe-protocol3.c:550 fe-protocol3.c:590 +#: fe-protocol3.c:551 fe-protocol3.c:591 msgid "insufficient data in \"T\" message" msgstr "недостаточно данных в сообщении \"T\"" -#: fe-protocol3.c:661 fe-protocol3.c:867 +#: fe-protocol3.c:662 fe-protocol3.c:868 msgid "out of memory for query result" msgstr "недостаточно памяти для результата запроса" -#: fe-protocol3.c:730 +#: fe-protocol3.c:731 msgid "insufficient data in \"t\" message" msgstr "недостаточно данных в сообщении \"t\"" -#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 +#: fe-protocol3.c:790 fe-protocol3.c:822 fe-protocol3.c:840 msgid "insufficient data in \"D\" message" msgstr "недостаточно данных в сообщении \"D\"" -#: fe-protocol3.c:795 +#: fe-protocol3.c:796 msgid "unexpected field count in \"D\" message" msgstr "неверное число полей в сообщении \"D\"" -#: fe-protocol3.c:1051 +#: fe-protocol3.c:1052 msgid "no error message available\n" msgstr "нет сообщения об ошибке\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1099 fe-protocol3.c:1118 +#: fe-protocol3.c:1100 fe-protocol3.c:1119 #, c-format msgid " at character %s" msgstr " символ %s" -#: fe-protocol3.c:1131 +#: fe-protocol3.c:1132 #, c-format msgid "DETAIL: %s\n" msgstr "ПОДРОБНОСТИ: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1135 #, c-format msgid "HINT: %s\n" msgstr "ПОДСКАЗКА: %s\n" -#: fe-protocol3.c:1137 +#: fe-protocol3.c:1138 #, c-format msgid "QUERY: %s\n" msgstr "ЗАПРОС: %s\n" -#: fe-protocol3.c:1144 +#: fe-protocol3.c:1145 #, c-format msgid "CONTEXT: %s\n" msgstr "КОНТЕКСТ: %s\n" -#: fe-protocol3.c:1153 +#: fe-protocol3.c:1154 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "СХЕМА: %s\n" -#: fe-protocol3.c:1157 +#: fe-protocol3.c:1158 #, c-format msgid "TABLE NAME: %s\n" msgstr "ТАБЛИЦА: %s\n" -#: fe-protocol3.c:1161 +#: fe-protocol3.c:1162 #, c-format msgid "COLUMN NAME: %s\n" msgstr "СТОЛБЕЦ: %s\n" -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1166 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "ТИП ДАННЫХ: %s\n" -#: fe-protocol3.c:1169 +#: fe-protocol3.c:1170 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "ОГРАНИЧЕНИЕ: %s\n" -#: fe-protocol3.c:1181 +#: fe-protocol3.c:1182 msgid "LOCATION: " msgstr "ПОЛОЖЕНИЕ: " -#: fe-protocol3.c:1183 +#: fe-protocol3.c:1184 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1185 +#: fe-protocol3.c:1186 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1380 +#: fe-protocol3.c:1394 #, c-format msgid "LINE %d: " msgstr "СТРОКА %d: " -#: fe-protocol3.c:1442 +#: fe-protocol3.c:1456 #, c-format msgid "" "received invalid protocol negotiation message: server requested downgrade to " @@ -1641,7 +1755,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: сервер запросил " "понижение версии на версию выше" -#: fe-protocol3.c:1448 +#: fe-protocol3.c:1462 #, c-format msgid "" "received invalid protocol negotiation message: server requested downgrade to " @@ -1650,7 +1764,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: сервер запросил " "понижение на версию протокола, предшествующую 3.0" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1469 #, c-format msgid "" "received invalid protocol negotiation message: server requested downgrade to " @@ -1659,7 +1773,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: сервер запросил " "понижение на несуществующую версию протокола 3.1" -#: fe-protocol3.c:1461 +#: fe-protocol3.c:1475 #, c-format msgid "" "received invalid protocol negotiation message: server reported negative " @@ -1668,7 +1782,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: сервер передал " "отрицательное число неподдерживаемых параметров" -#: fe-protocol3.c:1467 +#: fe-protocol3.c:1481 #, c-format msgid "" "received invalid protocol negotiation message: server negotiated but asks " @@ -1677,7 +1791,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: сервер согласовал " "версию и не требует никаких изменений" -#: fe-protocol3.c:1473 +#: fe-protocol3.c:1487 #, c-format msgid "" "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" @@ -1685,7 +1799,7 @@ msgstr "" "сервер поддерживает только версию протокола %d.%d, но параметр \"%s\" равен " "%d.%d" -#: fe-protocol3.c:1498 +#: fe-protocol3.c:1512 #, c-format msgid "" "received invalid protocol negotiation message: server reported unsupported " @@ -1694,7 +1808,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: сервер выдал " "неподдерживаемое имя параметра без префикса \"%s\" (\"%s\")" -#: fe-protocol3.c:1501 +#: fe-protocol3.c:1515 #, c-format msgid "" "received invalid protocol negotiation message: server reported an " @@ -1703,14 +1817,14 @@ msgstr "" "получено некорректное сообщение согласования протокола: сервер выдал " "неподдерживаемый параметр, который не был запрошен (\"%s\")" -#: fe-protocol3.c:1508 +#: fe-protocol3.c:1522 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "" "получено некорректное сообщение согласования протокола: сообщение слишком " "короткое" -#: fe-protocol3.c:1574 +#: fe-protocol3.c:1588 #, c-format msgid "" "received invalid BackendKeyData message: cancel key with length %d not " @@ -1719,7 +1833,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: ключ отмены длиной " "%d в протоколе версии 3.0 не допускается (длина должна быть 4 байта)" -#: fe-protocol3.c:1581 +#: fe-protocol3.c:1595 #, c-format msgid "" "received invalid BackendKeyData message: cancel key with length %d is too " @@ -1728,7 +1842,7 @@ msgstr "" "получено некорректное сообщение согласования протокола: ключ отмены длиной " "%d слишком короткий (минимальная длина 4 байта)" -#: fe-protocol3.c:1588 +#: fe-protocol3.c:1602 #, c-format msgid "" "received invalid BackendKeyData message: cancel key with length %d is too " @@ -1737,17 +1851,17 @@ msgstr "" "получено некорректное сообщение согласования протокола: ключ отмены длиной " "%d слишком длинный (максимальная длина 256 байт)" -#: fe-protocol3.c:1952 +#: fe-protocol3.c:1966 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline можно вызывать только во время COPY OUT с текстом" -#: fe-protocol3.c:2327 +#: fe-protocol3.c:2341 #, c-format msgid "protocol error: no function result" msgstr "ошибка протокола: нет результата функции" -#: fe-protocol3.c:2339 +#: fe-protocol3.c:2353 #, c-format msgid "protocol error: id=0x%x" msgstr "ошибка протокола: id=0x%x" @@ -2115,6 +2229,98 @@ msgstr "не удалось передать данные серверу: %s" msgid "unrecognized socket error: 0x%08X/%d" msgstr "нераспознанная ошибка сокета: 0x%08X/%d" +#, c-format +#~ msgid "internal error: started field '%s' before field '%s' was finished" +#~ msgstr "" +#~ "внутренняя ошибка: поле '%s' началось прежде чем закончилось поле '%s'" + +#, c-format +#~ msgid "internal error: field '%s' still active at end of object" +#~ msgstr "внутренняя ошибка: поле '%s' активно, но объект завершён" + +#, c-format +#~ msgid "internal error: found unexpected array end while parsing field '%s'" +#~ msgstr "" +#~ "внутренняя ошибка: при разборе поля '%s' неожиданно обнаружен конец " +#~ "массива" + +#, c-format +#~ msgid "internal error: scalar target found at nesting level %d" +#~ msgstr "" +#~ "внутрення ошибка: скалярное значение обнаружено на уровне вложенности %d" + +#, c-format +#~ msgid "internal error: scalar field '%s' would be assigned twice" +#~ msgstr "внутренняя ошибка: попытка двойного присвоения скалярному полю '%s'" + +#, c-format +#~ msgid "internal error: array member found at nesting level %d" +#~ msgstr "внутренняя ошибка: элемент массива найден на уровне вложенности %d" + +#, c-format +#~ msgid "failed to create timerfd: %m" +#~ msgstr "не удалось создать timerfd: %m" + +#, c-format +#~ msgid "failed to add timerfd to epoll set: %m" +#~ msgstr "не удалось добавить timerfd в набор epoll: %m" + +#, c-format +#~ msgid "failed to create timer kqueue: %m" +#~ msgstr "не удалось создать kqueue для таймера: %m" + +#, c-format +#~ msgid "unknown libcurl socket operation: %d" +#~ msgstr "неизвестная операция для сокета libcurl: %d" + +#, c-format +#~ msgid "could not add to epoll set: %m" +#~ msgstr "ошибка при добавлении в набор epoll: %m" + +#, c-format +#~ msgid "could not delete from epoll set: %m" +#~ msgstr "ошибка при удалении из набора epoll: %m" + +#, c-format +#~ msgid "could not update epoll set: %m" +#~ msgstr "ошибка при изменении набора epoll: %m" + +#, c-format +#~ msgid "could not modify kqueue: %m" +#~ msgstr "не удалось модифицировать kqueue: %m" + +#, c-format +#~ msgid "could not delete from kqueue: %m" +#~ msgstr "ошибка при удалении из kqueue: %m" + +#, c-format +#~ msgid "could not add to kqueue: %m" +#~ msgstr "ошибка при добавлении в kqueue: %m" + +#, c-format +#~ msgid "could not comb kqueue: %m" +#~ msgstr "не удалось упорядочить kqueue: %m" + +#, c-format +#~ msgid "setting timerfd to %ld: %m" +#~ msgstr "установка для timerfd значения %ld: %m" + +#, c-format +#~ msgid "deleting kqueue timer: %m" +#~ msgstr "удаление таймера kqueue: %m" + +#, c-format +#~ msgid "removing kqueue timer from multiplexer: %m" +#~ msgstr "удаление таймера kqueue из мультиплексора: %m" + +#, c-format +#~ msgid "setting kqueue timer to %ld: %m" +#~ msgstr "установка для таймера kqueue значения %ld: %m" + +#, c-format +#~ msgid "adding kqueue timer to multiplexer: %m" +#~ msgstr "добавление таймера kqueue в мультиплексор: %m" + #, c-format #~ msgid "" #~ "protocol version not supported by server: client uses %u.%u, server " diff --git a/src/interfaces/libpq/po/sv.po b/src/interfaces/libpq/po/sv.po index 7ade5216cb9..4f3ed1133c2 100644 --- a/src/interfaces/libpq/po/sv.po +++ b/src/interfaces/libpq/po/sv.po @@ -1,6 +1,7 @@ # Swedish message translation file for libpq # Peter Eisentraut , 2001, 2010. -# Dennis Björklund , 2002, 2003, 2004, 2005, 2006, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025. +# Dennis Björklund , 2002, 2003, 2004, 2005, 2006, 2017, +# 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026. # # Use these quotes: "%s" # @@ -8,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-04 11:10+0000\n" -"PO-Revision-Date: 2025-09-07 15:43+0200\n" +"POT-Creation-Date: 2026-02-03 14:40+0000\n" +"PO-Revision-Date: 2026-02-04 07:30+0100\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -18,280 +19,206 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#: ../libpq-oauth/oauth-curl.c:308 ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "borttagning av libcurl easy handle misslyckades: %s" -#: ../libpq-oauth/oauth-curl.c:327 +#: ../libpq-oauth/oauth-curl.c:328 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "uppstädning av libcurl multi handle misslyckades: %s" -#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#: ../libpq-oauth/oauth-curl.c:394 ../libpq-oauth/oauth-curl.c:405 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "misslyckades att sätta %s på OAuth-anslutning: %s" -#: ../libpq-oauth/oauth-curl.c:412 +#: ../libpq-oauth/oauth-curl.c:416 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "misslyckades att hämta %s från OAuth-svar: %s" -#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 +#: ../libpq-oauth/oauth-curl.c:485 fe-auth-oauth.c:209 fe-auth-oauth.c:271 +#: fe-auth-oauth.c:333 #, c-format -msgid "JSON is too deeply nested" -msgstr "JSON är nästlad för djupt" - -#: ../libpq-oauth/oauth-curl.c:540 -#, c-format -msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "internt fel: startade fältet '%s' innan fältet '%s' var klart" +msgid "field \"%s\" must be a string" +msgstr "fältet \"%s\" måste vara en sträng" -#: ../libpq-oauth/oauth-curl.c:567 +#: ../libpq-oauth/oauth-curl.c:489 #, c-format -msgid "field \"%s\" is duplicated" -msgstr "fältet \"%s\" är duplicerat." +msgid "field \"%s\" must be a number" +msgstr "fältet \"%s\" måste vara ett nummer" -#: ../libpq-oauth/oauth-curl.c:592 +#: ../libpq-oauth/oauth-curl.c:493 #, c-format -msgid "internal error: field '%s' still active at end of object" -msgstr "internt fel: fältet '%s' är fortfarande aktivt vid objektslutet" +msgid "field \"%s\" must be an array of strings" +msgstr "fältet \"%s\" måste vara en array med strängar" -#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 +#: ../libpq-oauth/oauth-curl.c:498 #, c-format -msgid "top-level element must be an object" -msgstr "elementet på toppnivå måste vara ett objekt" +msgid "field \"%s\" has unexpected type" +msgstr "fältet \"%s\" har en oväntad typ" -#: ../libpq-oauth/oauth-curl.c:648 +#: ../libpq-oauth/oauth-curl.c:522 ../libpq-oauth/oauth-curl.c:632 +#: fe-auth-oauth.c:215 fe-auth-oauth.c:277 #, c-format -msgid "internal error: found unexpected array end while parsing field '%s'" -msgstr "internt fel: hittade oväntat array-slut vid parsning av fältet '%s'" - -#: ../libpq-oauth/oauth-curl.c:703 -#, c-format -msgid "internal error: scalar target found at nesting level %d" -msgstr "internt fel: skalär hittad vid nästlingsnivå %d" +msgid "JSON is too deeply nested" +msgstr "JSON är nästlad för djupt" -#: ../libpq-oauth/oauth-curl.c:713 +#: ../libpq-oauth/oauth-curl.c:574 fe-auth-oauth.c:324 #, c-format -msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "internt fel: skalärfält '%s' skulle tilldelas två gånger" +msgid "field \"%s\" is duplicated" +msgstr "fältet \"%s\" är duplicerat." -#: ../libpq-oauth/oauth-curl.c:735 +#: ../libpq-oauth/oauth-curl.c:614 ../libpq-oauth/oauth-curl.c:674 +#: fe-auth-oauth.c:264 fe-auth-oauth.c:298 #, c-format -msgid "internal error: array member found at nesting level %d" -msgstr "internt fel: array-medlem hittad vid nästlingsnivå %d" +msgid "top-level element must be an object" +msgstr "elementet på toppnivå måste vara ett objekt" -#: ../libpq-oauth/oauth-curl.c:770 +#: ../libpq-oauth/oauth-curl.c:777 #, c-format msgid "no content type was provided" msgstr "ingen innehållstyp angiven" -#: ../libpq-oauth/oauth-curl.c:809 +#: ../libpq-oauth/oauth-curl.c:816 #, c-format msgid "unexpected content type: \"%s\"" msgstr "oväntad innehållstyp \"%s\"" -#: ../libpq-oauth/oauth-curl.c:834 +#: ../libpq-oauth/oauth-curl.c:841 #, c-format msgid "response contains embedded NULLs" msgstr "svaret innehåller inbäddade NULL-värden" -#: ../libpq-oauth/oauth-curl.c:844 +#: ../libpq-oauth/oauth-curl.c:851 #, c-format msgid "response is not valid UTF-8" msgstr "svaret är inte korrekt UTF-8" -#: ../libpq-oauth/oauth-curl.c:884 +#: ../libpq-oauth/oauth-curl.c:891 #, c-format msgid "field \"%s\" is missing" msgstr "fältet \"%s\" saknas" -#: ../libpq-oauth/oauth-curl.c:1118 +#: ../libpq-oauth/oauth-curl.c:1097 +msgid "failed to parse token error response" +msgstr "misslyckades att tolka token-felsvar" + +#: ../libpq-oauth/oauth-curl.c:1125 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "leverantör avvisade oauth_client_secret" -#: ../libpq-oauth/oauth-curl.c:1182 -#, c-format -msgid "failed to create epoll set: %m" -msgstr "kunde inte skapa epoll-mängd: %m" - -#: ../libpq-oauth/oauth-curl.c:1189 -#, c-format -msgid "failed to create timerfd: %m" -msgstr "kunde inte skapa timerfd: %m" - -#: ../libpq-oauth/oauth-curl.c:1195 -#, c-format -msgid "failed to add timerfd to epoll set: %m" -msgstr "kunde inte addera timerfd till epoll-mängd: %m" - -#. translator: the term "kqueue" (kernel queue) should not be translated -#: ../libpq-oauth/oauth-curl.c:1205 -#, c-format -msgid "failed to create kqueue: %m" -msgstr "kunde inte skapa kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1218 -#, c-format -msgid "failed to create timer kqueue: %m" -msgstr "kunde inte skapa timer-kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 -#, c-format -msgid "unknown libcurl socket operation: %d" -msgstr "okänd operation på libcurl-socket: %d" - -#: ../libpq-oauth/oauth-curl.c:1279 -#, c-format -msgid "could not add to epoll set: %m" -msgstr "kunde inte addera till epoll-mängd: %m" - -#: ../libpq-oauth/oauth-curl.c:1283 -#, c-format -msgid "could not delete from epoll set: %m" -msgstr "kunde inte ta bort från epoll-mängd: %m" - -#: ../libpq-oauth/oauth-curl.c:1287 -#, c-format -msgid "could not update epoll set: %m" -msgstr "kunde inte uppdatera epoll-mängd: %m" - -#: ../libpq-oauth/oauth-curl.c:1347 -#, c-format -msgid "could not modify kqueue: %m" -msgstr "kunde inte ändra på kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1371 -#, c-format -msgid "could not delete from kqueue: %m" -msgstr "kunde inte radera från kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1374 -#, c-format -msgid "could not add to kqueue: %m" -msgstr "kunde inte addera till kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1423 -#, c-format -msgid "could not comb kqueue: %m" -msgstr "kunde inte kamma (comb) kqueue: %m" - -#: ../libpq-oauth/oauth-curl.c:1473 -#, c-format -msgid "setting timerfd to %ld: %m" -msgstr "sätter timerfd till %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1503 +#: ../libpq-oauth/oauth-curl.c:1126 #, c-format -msgid "deleting kqueue timer: %m" -msgstr "tar bort kqueue-timer: %m" +msgid "provider requires client authentication, and no oauth_client_secret is set" +msgstr "leverantör kräver klientautentisering men ingen oauth_client_secret är satt" -#: ../libpq-oauth/oauth-curl.c:1510 -#, c-format -msgid "removing kqueue timer from multiplexer: %m" -msgstr "tar bort kqueue-timer från multiplexer: %m" - -#: ../libpq-oauth/oauth-curl.c:1521 -#, c-format -msgid "setting kqueue timer to %ld: %m" -msgstr "sätter kqueue-timer till %ld: %m" - -#: ../libpq-oauth/oauth-curl.c:1528 -#, c-format -msgid "adding kqueue timer to multiplexer: %m" -msgstr "lägger till kqueue-timer till multiplexer: %m" - -#: ../libpq-oauth/oauth-curl.c:1553 +#: ../libpq-oauth/oauth-curl.c:1559 #, c-format msgid "checking timer expiration: %m" msgstr "kontrollerar om timer löpt ut: %m" -#: ../libpq-oauth/oauth-curl.c:1715 +#: ../libpq-oauth/oauth-curl.c:1721 #, c-format msgid "failed to create libcurl multi handle" msgstr "misslyckades med skapa multi-handle för libcurl" -#: ../libpq-oauth/oauth-curl.c:1735 +#: ../libpq-oauth/oauth-curl.c:1741 #, c-format msgid "failed to create libcurl handle" msgstr "misslyckades med att skapa handle för libcurl" -#: ../libpq-oauth/oauth-curl.c:1819 ../libpq-oauth/oauth-curl.c:1860 -#: ../libpq-oauth/oauth-curl.c:2173 ../libpq-oauth/oauth-curl.c:2334 -#: ../libpq-oauth/oauth-curl.c:2395 ../libpq-oauth/oauth-curl.c:2484 -#: ../libpq-oauth/oauth-curl.c:2778 ../libpq-oauth/oauth-curl.c:2995 +#: ../libpq-oauth/oauth-curl.c:1825 ../libpq-oauth/oauth-curl.c:1866 +#: ../libpq-oauth/oauth-curl.c:2184 ../libpq-oauth/oauth-curl.c:2345 +#: ../libpq-oauth/oauth-curl.c:2406 ../libpq-oauth/oauth-curl.c:2495 +#: ../libpq-oauth/oauth-curl.c:2789 ../libpq-oauth/oauth-curl.c:3006 +#: fe-auth-oauth.c:146 fe-auth-oauth.c:489 fe-auth-oauth.c:561 +#: fe-auth-oauth.c:723 fe-auth-oauth.c:1016 fe-auth-oauth.c:1029 +#: fe-auth-oauth.c:1117 fe-auth-oauth.c:1130 fe-auth-oauth.c:1266 #: fe-auth-scram.c:374 fe-auth-scram.c:447 fe-auth-scram.c:599 #: fe-auth-scram.c:619 fe-auth-scram.c:643 fe-auth-scram.c:657 #: fe-auth-scram.c:703 fe-auth-scram.c:739 fe-auth-scram.c:931 fe-auth.c:308 #: fe-auth.c:382 fe-auth.c:416 fe-auth.c:694 fe-auth.c:827 fe-auth.c:1330 -#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1011 fe-connect.c:1051 -#: fe-connect.c:2171 fe-connect.c:2333 fe-connect.c:3726 fe-connect.c:5182 -#: fe-connect.c:5495 fe-connect.c:5750 fe-connect.c:5868 fe-connect.c:6115 -#: fe-connect.c:6195 fe-connect.c:6293 fe-connect.c:6544 fe-connect.c:6571 -#: fe-connect.c:6647 fe-connect.c:6670 fe-connect.c:6694 fe-connect.c:6729 -#: fe-connect.c:6815 fe-connect.c:6823 fe-connect.c:7180 fe-connect.c:7362 -#: fe-exec.c:530 fe-exec.c:1326 fe-exec.c:3265 fe-exec.c:4304 fe-exec.c:4470 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:211 fe-protocol3.c:234 -#: fe-protocol3.c:257 fe-protocol3.c:274 fe-protocol3.c:295 fe-protocol3.c:369 -#: fe-protocol3.c:750 fe-protocol3.c:990 fe-protocol3.c:1542 -#: fe-protocol3.c:1596 fe-protocol3.c:1642 fe-protocol3.c:1663 -#: fe-protocol3.c:1920 fe-protocol3.c:2321 fe-secure-common.c:110 -#: fe-secure-gssapi.c:506 fe-secure-gssapi.c:696 fe-secure-openssl.c:405 +#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1012 fe-connect.c:1052 +#: fe-connect.c:2172 fe-connect.c:2334 fe-connect.c:3727 fe-connect.c:5183 +#: fe-connect.c:5496 fe-connect.c:5765 fe-connect.c:5883 fe-connect.c:6130 +#: fe-connect.c:6210 fe-connect.c:6308 fe-connect.c:6559 fe-connect.c:6586 +#: fe-connect.c:6662 fe-connect.c:6685 fe-connect.c:6709 fe-connect.c:6744 +#: fe-connect.c:6830 fe-connect.c:6838 fe-connect.c:7195 fe-connect.c:7377 +#: fe-exec.c:530 fe-exec.c:1331 fe-exec.c:3270 fe-exec.c:4341 fe-exec.c:4534 +#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:212 fe-protocol3.c:235 +#: fe-protocol3.c:258 fe-protocol3.c:275 fe-protocol3.c:296 fe-protocol3.c:370 +#: fe-protocol3.c:751 fe-protocol3.c:991 fe-protocol3.c:1556 +#: fe-protocol3.c:1610 fe-protocol3.c:1656 fe-protocol3.c:1677 +#: fe-protocol3.c:1934 fe-protocol3.c:2335 fe-secure-common.c:110 +#: fe-secure-gssapi.c:508 fe-secure-gssapi.c:699 fe-secure-openssl.c:405 #: fe-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "slut på minne" -#: ../libpq-oauth/oauth-curl.c:1847 +#: ../libpq-oauth/oauth-curl.c:1853 #, c-format msgid "response is too large" msgstr "svaret är för stort" -#: ../libpq-oauth/oauth-curl.c:1889 +#: ../libpq-oauth/oauth-curl.c:1895 #, c-format msgid "failed to queue HTTP request: %s" msgstr "misslyckades att köa HTTP-anrop: %s" -#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#: ../libpq-oauth/oauth-curl.c:1912 ../libpq-oauth/oauth-curl.c:1970 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "asynkront HTTP-anrop misslyckades: %s" -#: ../libpq-oauth/oauth-curl.c:2011 +#: ../libpq-oauth/oauth-curl.c:2022 #, c-format msgid "no result was retrieved for the finished handle" msgstr "inget resultat kom från avslutad handle" -#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 -#: ../libpq-oauth/oauth-curl.c:2529 +#: ../libpq-oauth/oauth-curl.c:2155 ../libpq-oauth/oauth-curl.c:2461 +#: ../libpq-oauth/oauth-curl.c:2540 #, c-format msgid "unexpected response code %ld" msgstr "oväntad svarskod %ld" -#: ../libpq-oauth/oauth-curl.c:2216 +#: ../libpq-oauth/oauth-curl.c:2162 +msgid "failed to parse OpenID discovery document" +msgstr "kunde inte tolka upptäcktsdokument för OpenID" + +#: ../libpq-oauth/oauth-curl.c:2227 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "utfärdarens identifierare (%s) matchar inte oauth_issuer (%s)" -#: ../libpq-oauth/oauth-curl.c:2243 +#: ../libpq-oauth/oauth-curl.c:2254 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "utfärdaren \"%s\" tillhandahåller inte en auktoriseringsändpunkt för en enhet" -#: ../libpq-oauth/oauth-curl.c:2269 +#: ../libpq-oauth/oauth-curl.c:2280 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "en enhets auktoriseringsändpunkt \"%s\" måste använda HTTPS" -#: ../libpq-oauth/oauth-curl.c:2278 +#: ../libpq-oauth/oauth-curl.c:2289 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "token-ändpunkt \"%s\" måste använda HTTPS" -#: ../libpq-oauth/oauth-curl.c:2587 +#: ../libpq-oauth/oauth-curl.c:2430 +msgid "failed to parse device authorization" +msgstr "misslyckades att tolka enhetsauktorisering" + +#: ../libpq-oauth/oauth-curl.c:2518 +msgid "failed to parse access token response" +msgstr "misslyckades att tolka access-token-svar" + +#: ../libpq-oauth/oauth-curl.c:2598 #, c-format msgid "slow_down interval overflow" msgstr "overflow i intervall för slow_down" @@ -299,27 +226,27 @@ msgstr "overflow i intervall för slow_down" #. translator: The first %s is a URL for the user to visit in a #. browser, and the second %s is a code to be copy-pasted there. #. -#: ../libpq-oauth/oauth-curl.c:2623 +#: ../libpq-oauth/oauth-curl.c:2634 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "Gå till %s och skriv in koden: %s\n" -#: ../libpq-oauth/oauth-curl.c:2628 +#: ../libpq-oauth/oauth-curl.c:2639 #, c-format msgid "device prompt failed" msgstr "misslyckades att skapa inmatningsfråga för enhet" -#: ../libpq-oauth/oauth-curl.c:2684 +#: ../libpq-oauth/oauth-curl.c:2695 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init misslyckades tidigare vid uppsättning av OAuth" -#: ../libpq-oauth/oauth-curl.c:2703 +#: ../libpq-oauth/oauth-curl.c:2714 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init misslyckades vid uppsättning av OAuth" -#: ../libpq-oauth/oauth-curl.c:2724 +#: ../libpq-oauth/oauth-curl.c:2735 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -334,6 +261,152 @@ msgstr "" "\trapporterar att den inte är det. Kompilera om libpq\n" "\tmot den installerade versionen av libcurl." +#: ../libpq-oauth/oauth-curl.c:2897 +msgid "failed to fetch OpenID discovery document" +msgstr "kunde inte hämta upptäcktsdokument för OpenID" + +#: ../libpq-oauth/oauth-curl.c:2911 +msgid "cannot run OAuth device authorization" +msgstr "kan inte köra enhetsauktorisering för OAuth" + +#: ../libpq-oauth/oauth-curl.c:2915 +msgid "failed to obtain device authorization" +msgstr "misslyckades att hämta enhetsauktorisering" + +#: ../libpq-oauth/oauth-curl.c:2926 ../libpq-oauth/oauth-curl.c:2977 +msgid "failed to obtain access token" +msgstr "misslyckades att hämta access-token" + +#: fe-auth-oauth.c:133 +#, c-format +msgid "internal error: no OAuth token was set for the connection" +msgstr "internt fel: ingen OAuth-token har satts för anslutningen" + +#: fe-auth-oauth.c:396 +#, c-format +msgid "OAuth discovery URI \"%s\" must use HTTPS" +msgstr "URI för att hitta OAuth \"%s\" måste använda HTTPS" + +#: fe-auth-oauth.c:413 +#, c-format +msgid "OAuth discovery URI \"%s\" must not contain query or fragment components" +msgstr "OAuth upptäckts-URI \"%s\" får inte innehålla fråge- eller fragment-komponenter" + +#: fe-auth-oauth.c:428 +#, c-format +msgid "OAuth discovery URI \"%s\" is not a .well-known URI" +msgstr "OAuth upptäckts-URI \"%s\" är inte en .well-known-URI" + +#: fe-auth-oauth.c:454 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an unsupported .well-known suffix" +msgstr "OAuth upptäckts-URI \"%s\" använder ett suffix för .well-known som inte stöds" + +#: fe-auth-oauth.c:479 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an invalid format" +msgstr "OAuth upptäckts-URI \"%s\" använder ett ogiltigt format" + +#: fe-auth-oauth.c:528 +#, c-format +msgid "server's error message contained an embedded NULL, and was discarded" +msgstr "serverns felmeddelande innehåller NULL och slängdes" + +#: fe-auth-oauth.c:539 +#, c-format +msgid "server's error response is not valid UTF-8" +msgstr "serverns felsvar är inte korrekt UTF-8" + +#: fe-auth-oauth.c:579 +#, c-format +msgid "failed to parse server's error response: %s" +msgstr "misslyckades att tolka serverns felsvar: %s" + +#: fe-auth-oauth.c:610 +#, c-format +msgid "server's discovery document at %s (issuer \"%s\") is incompatible with oauth_issuer (%s)" +msgstr "serverns upptäcktsdokument hos %s (utfärdare \"%s\") är inte kompatibel med oauth_issuer (%s)" + +#: fe-auth-oauth.c:631 +#, c-format +msgid "server's discovery document has moved to %s (previous location was %s)" +msgstr "serverns upptäcktsdokument har flyttat till %s (tidigare plats var %s)" + +#: fe-auth-oauth.c:652 +#, c-format +msgid "server sent error response without a status" +msgstr "servern skickade ett felmeddelande utan status" + +#: fe-auth-oauth.c:663 +#, c-format +msgid "server rejected OAuth bearer token: %s" +msgstr "servern avvisade OAuth bärartoken: %s" + +#: fe-auth-oauth.c:696 +#, c-format +msgid "user-defined OAuth flow provided neither a token nor an async callback" +msgstr "användardefinierat OAuth-flöde gav varken en token eller en async callback" + +#: fe-auth-oauth.c:703 fe-auth-oauth.c:1041 +#, c-format +msgid "user-defined OAuth flow failed" +msgstr "användardefinierat OAuth-flöde misslyckades" + +#: fe-auth-oauth.c:716 +#, c-format +msgid "user-defined OAuth flow did not provide a token" +msgstr "användardefinierat OAuth-flöde gav ingen token" + +#: fe-auth-oauth.c:734 +#, c-format +msgid "user-defined OAuth flow did not provide a socket for polling" +msgstr "användardefinierat OAuth-flöde angav ingen socket för pollning" + +#: fe-auth-oauth.c:917 +#, c-format +msgid "failed to lock mutex (%d)" +msgstr "misslyckades att låsa mutex (%d)" + +#: fe-auth-oauth.c:1046 +#, c-format +msgid "no OAuth flows are available (try installing the libpq-oauth package)" +msgstr "inga OAUth-flöden är tillgängliga (testa att installera paketet libpq-oauth)" + +#: fe-auth-oauth.c:1095 +#, c-format +msgid "server requires OAuth authentication, but oauth_issuer and oauth_client_id are not both set" +msgstr "servern kräver OAuth autentisering men oauth_issuer och oauth_client_id är inte båda satta" + +#: fe-auth-oauth.c:1255 +#, c-format +msgid "server sent unexpected additional OAuth data" +msgstr "servern skickade oväntat ytterligare OAuth-data" + +#: fe-auth-oauth.c:1295 +#, c-format +msgid "server requires OAuth authentication, but no discovery metadata was provided" +msgstr "servern kräver OAuth-autentisering men ingen upptäcktsmetadata tillhandahölls" + +#: fe-auth-oauth.c:1333 +#, c-format +msgid "internal error: OAuth flow did not set a token" +msgstr "internt fel: OAuth-flöde satte ingen token" + +#: fe-auth-oauth.c:1351 +#, c-format +msgid "server sent additional OAuth data after error" +msgstr "servern skickade ytterligare OAuth-data efter fel" + +#: fe-auth-oauth.c:1355 +#, c-format +msgid "invalid OAuth exchange state" +msgstr "ogiltig OAuth-utbytesstatus" + +#: fe-auth-oauth.c:1368 +#, c-format +msgid "retrying connection with new bearer token" +msgstr "försöker ansluta igen med ny bärartoken" + #: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" @@ -659,695 +732,710 @@ msgstr "förfrågan för att avbryta har redan skickats på denna anslutning" msgid "unexpected response from server" msgstr "oväntad resultat från servern" -#: fe-connect.c:1308 +#: fe-connect.c:1309 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "kunde inte matcha %d värdnamn till %d värdadresser" -#: fe-connect.c:1388 +#: fe-connect.c:1389 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "kunde inte matcha %d portnummer med %d värdar" -#: fe-connect.c:1516 +#: fe-connect.c:1517 #, c-format msgid "negative require_auth method \"%s\" cannot be mixed with non-negative methods" msgstr "negativ require_auth-metod \"%s\" kan inte blandas med icke-negativa metoder" -#: fe-connect.c:1529 +#: fe-connect.c:1530 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "require_auth-metod \"%s\" kan inte blandas med negativa metoder" -#: fe-connect.c:1605 fe-connect.c:1734 fe-connect.c:1776 fe-connect.c:1819 -#: fe-connect.c:1922 fe-connect.c:1968 fe-connect.c:2008 fe-connect.c:2075 -#: fe-connect.c:8248 +#: fe-connect.c:1606 fe-connect.c:1735 fe-connect.c:1777 fe-connect.c:1820 +#: fe-connect.c:1923 fe-connect.c:1969 fe-connect.c:2009 fe-connect.c:2076 +#: fe-connect.c:8263 #, c-format msgid "invalid %s value: \"%s\"" msgstr "ogiltigt %s-värde: \"%s\"" -#: fe-connect.c:1647 +#: fe-connect.c:1648 #, c-format msgid "internal error: no space in allowed_sasl_mechs" msgstr "internt fel: mellanslag tillåts inte i allowed_sasl_mechs" -#: fe-connect.c:1686 +#: fe-connect.c:1687 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "require_auth-metod \"%s\" angiven mer än en gång" -#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 +#: fe-connect.c:1758 fe-connect.c:1797 fe-connect.c:1829 fe-connect.c:1931 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "%s värde \"%s\", är ogiltigt när SSL-stöd inte kompilerats in" -#: fe-connect.c:1848 +#: fe-connect.c:1849 #, c-format msgid "weak sslmode \"%s\" may not be used with sslnegotiation=direct (use \"require\", \"verify-ca\", or \"verify-full\")" msgstr "svagt ssl-läge \"%s\" kan inte användas med sslnegotiation=direct (använd \"require\", \"verify-ca\" eller \"verify-full\")" -#: fe-connect.c:1870 +#: fe-connect.c:1871 #, c-format msgid "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-full\")" msgstr "svagt ssl-läge \"%s\" kan inte användas med sslrootcert=system (använd \"verify-full\")" -#: fe-connect.c:1883 fe-connect.c:1891 +#: fe-connect.c:1884 fe-connect.c:1892 #, c-format msgid "invalid \"%s\" value: \"%s\"" msgstr "ogiltigt \"%s\"-värde: \"%s\"" -#: fe-connect.c:1908 +#: fe-connect.c:1909 #, c-format msgid "invalid SSL protocol version range" msgstr "ogiltigt intervall för SSL-protokollversion" -#: fe-connect.c:1945 +#: fe-connect.c:1946 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "%s-värde \"%s\" stöds inte (kontrollera OpenSSL-versionen)" -#: fe-connect.c:1975 +#: fe-connect.c:1976 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "värde för gssenc-läge, \"%s\", är ogiltigt när GSSAPI-stöd inte kompilerats in" -#: fe-connect.c:2029 +#: fe-connect.c:2030 #, c-format msgid "invalid SCRAM client key" msgstr "ogiltig SCRAM-klientnyckel" -#: fe-connect.c:2034 +#: fe-connect.c:2035 #, c-format msgid "invalid SCRAM client key length: %d" msgstr "ogiltig längd på SCRAM-klientnyckel: %d" -#: fe-connect.c:2052 +#: fe-connect.c:2053 #, c-format msgid "invalid SCRAM server key" msgstr "ogiltig SCRAM-servernyckel" -#: fe-connect.c:2057 +#: fe-connect.c:2058 #, c-format msgid "invalid SCRAM server key length: %d" msgstr "ogiltig längd på SCRAM-servernyckel: %d" -#: fe-connect.c:2144 +#: fe-connect.c:2145 #, c-format msgid "\"%s\" is greater than \"%s\"" msgstr "\"%s\" är större än \"%s\"" -#: fe-connect.c:2356 +#: fe-connect.c:2357 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "kunde inte sätta socket till läget TCP-ingen-fördröjning: %s" -#: fe-connect.c:2415 +#: fe-connect.c:2416 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "anslutning till server på socket \"%s\" misslyckades: " -#: fe-connect.c:2441 +#: fe-connect.c:2442 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "anslutning til server på \"%s\" (%s), port %s misslyckades: " -#: fe-connect.c:2446 +#: fe-connect.c:2447 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "anslutning till server på \"%s\", port %s misslyckades: " -#: fe-connect.c:2469 +#: fe-connect.c:2470 #, c-format msgid "\tIs the server running locally and accepting connections on that socket?" msgstr "\tKör servern lokalt och accepterar den anslutningar till denna socket?" -#: fe-connect.c:2471 +#: fe-connect.c:2472 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "\tKör servern på den värden och accepterar den TCP/IP-anslutningar?" -#: fe-connect.c:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 -#: fe-connect.c:3410 +#: fe-connect.c:2518 fe-connect.c:2552 fe-connect.c:2587 fe-connect.c:2685 +#: fe-connect.c:3411 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s) misslyckades: %s" -#: fe-connect.c:2650 +#: fe-connect.c:2651 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) misslyckades: felkod %d" -#: fe-connect.c:2962 +#: fe-connect.c:2963 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "ogiltigt tillstånd i anslutning, antagligen korrupt minne" -#: fe-connect.c:3045 +#: fe-connect.c:3046 #, c-format msgid "invalid port number: \"%s\"" msgstr "ogiltigt portnummer \"%s\"" -#: fe-connect.c:3059 +#: fe-connect.c:3060 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "kunde inte översätta värdnamn \"%s\" till adress: %s" -#: fe-connect.c:3071 +#: fe-connect.c:3072 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "kunde inte parsa nätverksadress \"%s\": %s" -#: fe-connect.c:3082 +#: fe-connect.c:3083 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "Sökväg till unix-socket \"%s\" är för lång (maximalt %d byte)" -#: fe-connect.c:3096 +#: fe-connect.c:3097 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "kunde inte översätta sökväg till Unix-socket \"%s\" till adress: %s" -#: fe-connect.c:3262 fe-connect.c:4709 +#: fe-connect.c:3263 fe-connect.c:4710 #, c-format msgid "GSSAPI encryption required but it is not supported over a local socket" msgstr "GSSAPI-kryptering krävdes men stöds inte över en lokal socket" -#: fe-connect.c:3270 fe-connect.c:4838 +#: fe-connect.c:3271 fe-connect.c:4839 #, c-format msgid "GSSAPI encryption required but no credential cache" msgstr "GSSAPI-kryptering krävdes men det finns ingen credential-cache" -#: fe-connect.c:3338 +#: fe-connect.c:3339 #, c-format msgid "could not create socket: %s" msgstr "kan inte skapa socket: %s" -#: fe-connect.c:3369 +#: fe-connect.c:3370 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "kunde inte sätta socket till ickeblockerande läge: %s" -#: fe-connect.c:3380 +#: fe-connect.c:3381 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "kunde inte ställa in socket i \"close-on-exec\"-läge: %s" -#: fe-connect.c:3537 +#: fe-connect.c:3538 #, c-format msgid "could not get socket error status: %s" msgstr "kunde inte hämta felstatus för socket: %s" -#: fe-connect.c:3564 +#: fe-connect.c:3565 #, c-format msgid "could not get client address from socket: %s" msgstr "kunde inte få klientadressen från socket: %s" -#: fe-connect.c:3590 +#: fe-connect.c:3591 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "requirepeer-parameter stöds inte på denna plattform" -#: fe-connect.c:3592 +#: fe-connect.c:3593 #, c-format msgid "could not get peer credentials: %s" msgstr "kunde inte hämta andra sidans autentiseringsuppgifter: %s" -#: fe-connect.c:3605 +#: fe-connect.c:3606 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "requirepeer anger \"%s\", men andra sidans användarnamn är \"%s\"" -#: fe-connect.c:3643 +#: fe-connect.c:3644 #, c-format msgid "could not send GSSAPI negotiation packet: %s" msgstr "kunde inte skicka GSSAPI-paket för anslutningsförhandling: %s" -#: fe-connect.c:3682 +#: fe-connect.c:3683 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "kunde inte skicka SSL-paket för anslutningsförhandling: %s" -#: fe-connect.c:3708 +#: fe-connect.c:3709 #, c-format msgid "could not send cancel packet: %s" msgstr "kunde inte skicka avbrottspaket: %s" -#: fe-connect.c:3738 +#: fe-connect.c:3739 #, c-format msgid "could not send startup packet: %s" msgstr "kan inte skicka startpaketet: %s" -#: fe-connect.c:3811 +#: fe-connect.c:3812 msgid "server does not support SSL, but SSL was required" msgstr "SSL stöds inte av servern, men SSL krävdes" -#: fe-connect.c:3821 +#: fe-connect.c:3822 #, c-format msgid "server sent an error response during SSL exchange" msgstr "servern skickade ett felmeddelande vid SSL-utbyte" -#: fe-connect.c:3826 +#: fe-connect.c:3827 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "tog emot ogiltigt svar till SSL-anslutningsförhandling: %c" -#: fe-connect.c:3846 +#: fe-connect.c:3847 #, c-format msgid "received unencrypted data after SSL response" msgstr "tog emot okrypterad data efter SSL-svar" -#: fe-connect.c:3909 +#: fe-connect.c:3910 #, c-format msgid "server sent an error response during GSS encryption exchange" msgstr "servern skickade ett felmeddelande vid GSS-krypteringsutbyte" -#: fe-connect.c:3927 +#: fe-connect.c:3928 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "GSSAPI-kryptering stöds inte av servern, men det krävdes" -#: fe-connect.c:3931 +#: fe-connect.c:3932 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "tog emot ogiltigt svar till GSSAPI-anslutningsförhandling: %c" -#: fe-connect.c:3953 +#: fe-connect.c:3954 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "tog emot okrypterad data efter GSSAPI-krypteringssvar" -#: fe-connect.c:4014 +#: fe-connect.c:4015 #, c-format msgid "expected authentication request from server, but received %c" msgstr "förväntade autentiseringsförfrågan från servern, men fick %c" -#: fe-connect.c:4042 fe-connect.c:4174 +#: fe-connect.c:4043 fe-connect.c:4175 #, c-format msgid "received invalid authentication request" msgstr "tog emot ogiltig autentiseringsförfrågan" -#: fe-connect.c:4048 +#: fe-connect.c:4049 #, c-format msgid "received invalid protocol negotiation message" msgstr "tog emot ogiltigt meddelande för protokollets anslutningsförhandling" -#: fe-connect.c:4067 fe-connect.c:4121 +#: fe-connect.c:4068 fe-connect.c:4122 #, c-format msgid "received invalid error message" msgstr "tog emot ogiltigt felmeddelande" -#: fe-connect.c:4151 +#: fe-connect.c:4152 #, c-format msgid "received duplicate protocol negotiation message" msgstr "tog emot dubble meddelande för protokollets anslutningsförhandling" -#: fe-connect.c:4253 +#: fe-connect.c:4254 #, c-format msgid "internal error: async authentication has no handler" msgstr "internt fel: async-authentiserng har ingen hanterare" -#: fe-connect.c:4278 +#: fe-connect.c:4279 #, c-format msgid "internal error: async cleanup did not release polling socket" msgstr "internt fel: uppstädning av async lämnade inte tillbaka socket för pollning" -#: fe-connect.c:4301 +#: fe-connect.c:4302 #, c-format msgid "internal error: async authentication did not set a socket for polling" msgstr "internt fel: async autentisering har inte angivit en socket för pollning" -#: fe-connect.c:4334 +#: fe-connect.c:4335 #, c-format msgid "unexpected message from server during startup" msgstr "oväntat meddelande från servern under uppstarten" -#: fe-connect.c:4425 +#: fe-connect.c:4426 #, c-format msgid "session is read-only" msgstr "sessionen är i readonly-läge" -#: fe-connect.c:4427 +#: fe-connect.c:4428 #, c-format msgid "session is not read-only" msgstr "sessionen är inte i readonly-läge" -#: fe-connect.c:4480 +#: fe-connect.c:4481 #, c-format msgid "server is in hot standby mode" msgstr "servern är i \"hot standby\"-läge" -#: fe-connect.c:4482 +#: fe-connect.c:4483 #, c-format msgid "server is not in hot standby mode" msgstr "servern är inte i \"hot standby\"-läge" -#: fe-connect.c:4607 fe-connect.c:4657 +#: fe-connect.c:4608 fe-connect.c:4658 #, c-format msgid "\"%s\" failed" msgstr "\"%s\" misslyckades" -#: fe-connect.c:4671 +#: fe-connect.c:4672 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "ogiltigt tillstånd %d i anslutning, antagligen korrupt minne" -#: fe-connect.c:5508 +#: fe-connect.c:5509 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "ogiltig LDAP URL \"%s\": schemat måste vara ldap://" -#: fe-connect.c:5523 +#: fe-connect.c:5524 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "ogiltig LDAP URL \"%s\": saknar \"distinguished name\"" -#: fe-connect.c:5535 fe-connect.c:5593 +#: fe-connect.c:5536 fe-connect.c:5594 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "ogiltig LDAP URL \"%s\": måste finnas exakt ett attribut" -#: fe-connect.c:5547 fe-connect.c:5609 +#: fe-connect.c:5548 fe-connect.c:5610 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "ogiltig LDAP URL \"%s\": måste ha sök-scope (base/one/sub)" -#: fe-connect.c:5559 +#: fe-connect.c:5560 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "ogiltigt LDAP URL \"%s\": inget filter" -#: fe-connect.c:5581 +#: fe-connect.c:5582 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "ogiltig LDAP URL \"%s\": ogiltigt portnummer" -#: fe-connect.c:5618 +#: fe-connect.c:5619 #, c-format msgid "could not create LDAP structure" msgstr "kunde inte skapa LDAP-struktur" -#: fe-connect.c:5693 +#: fe-connect.c:5694 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "uppslagning av LDAP-server misslyckades: %s" -#: fe-connect.c:5703 +#: fe-connect.c:5704 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "mer än en post hittad i LDAP-uppslagning" -#: fe-connect.c:5705 fe-connect.c:5716 +#: fe-connect.c:5706 fe-connect.c:5717 #, c-format msgid "no entry found on LDAP lookup" msgstr "ingen post hittad i LDAP-uppslagning" -#: fe-connect.c:5726 fe-connect.c:5738 +#: fe-connect.c:5727 fe-connect.c:5739 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "attributet har inga värden i LDAP-uppslagning" -#: fe-connect.c:5789 fe-connect.c:5808 fe-connect.c:6332 +#: fe-connect.c:5753 +#, c-format +msgid "connection info string size exceeds the maximum allowed (%d)" +msgstr "anslutningssträng överskrider det maximalt tillåtna (%d)" + +#: fe-connect.c:5804 fe-connect.c:5823 fe-connect.c:6347 #, c-format msgid "missing \"=\" after \"%s\" in connection info string" msgstr "\"=\" efter \"%s\" saknas i anslutningssträng" -#: fe-connect.c:5879 fe-connect.c:6515 fe-connect.c:7345 +#: fe-connect.c:5894 fe-connect.c:6530 fe-connect.c:7360 #, c-format msgid "invalid connection option \"%s\"" msgstr "ogiltig anslutningsparameter \"%s\"" -#: fe-connect.c:5894 fe-connect.c:6380 +#: fe-connect.c:5909 fe-connect.c:6395 #, c-format msgid "unterminated quoted string in connection info string" msgstr "icke terminerad sträng i anslutningsinformationen" -#: fe-connect.c:5974 +#: fe-connect.c:5989 #, c-format msgid "definition of service \"%s\" not found" msgstr "definition av service \"%s\" hittades inte" -#: fe-connect.c:6000 +#: fe-connect.c:6015 #, c-format msgid "service file \"%s\" not found" msgstr "servicefil \"%s\" hittades inte" -#: fe-connect.c:6013 +#: fe-connect.c:6028 #, c-format msgid "line %d too long in service file \"%s\"" msgstr "rad %d för lång i servicefil \"%s\"" -#: fe-connect.c:6084 fe-connect.c:6127 +#: fe-connect.c:6099 fe-connect.c:6142 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "syntaxfel i servicefel \"%s\", rad %d" -#: fe-connect.c:6095 +#: fe-connect.c:6110 #, c-format msgid "nested service specifications not supported in service file \"%s\", line %d" msgstr "nästlade servicespecifikationer stöds inte i servicefil \"%s\", rad %d" -#: fe-connect.c:6834 +#: fe-connect.c:6849 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "ogiltig URI propagerad till intern parsningsrutin: \"%s\"" -#: fe-connect.c:6911 +#: fe-connect.c:6926 #, c-format msgid "end of string reached when looking for matching \"]\" in IPv6 host address in URI: \"%s\"" msgstr "nådde slutet på strängen när vi letade efter matchande \"]\" i IPv6-värdadress i URI: \"%s\"" -#: fe-connect.c:6918 +#: fe-connect.c:6933 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "IPv6-värdadress får ej vara tom i URI: \"%s\"" -#: fe-connect.c:6933 +#: fe-connect.c:6948 #, c-format msgid "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): \"%s\"" msgstr "oväntat tecken \"%c\" vid position %d i URI (förväntade \":\" eller \"/\"): \"%s\"" -#: fe-connect.c:7062 +#: fe-connect.c:7077 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "extra nyckel/värde-separator \"=\" i URI-frågeparameter: \"%s\"" -#: fe-connect.c:7082 +#: fe-connect.c:7097 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "saknar nyckel/värde-separator \"=\" i URI-frågeparameter: \"%s\"" -#: fe-connect.c:7134 +#: fe-connect.c:7149 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "ogiltig URI-frågeparameter: \"%s\"" -#: fe-connect.c:7218 +#: fe-connect.c:7233 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "ogiltigt procent-kodad symbol: \"%s\"" -#: fe-connect.c:7228 +#: fe-connect.c:7243 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "förbjudet värde %%00 i procentkodat värde: \"%s\"" -#: fe-connect.c:7250 +#: fe-connect.c:7265 #, c-format msgid "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" msgstr "oväntade mellanslag hittade i \"%s\", använd procent-kodade mellanslag (%%20) istället" -#: fe-connect.c:7626 +#: fe-connect.c:7641 msgid "connection pointer is NULL\n" msgstr "anslutningspekare är NULL\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 -#: fe-protocol3.c:1005 fe-protocol3.c:1038 +#: fe-connect.c:7649 fe-exec.c:718 fe-exec.c:980 fe-exec.c:3475 +#: fe-protocol3.c:1006 fe-protocol3.c:1039 msgid "out of memory\n" msgstr "slut på minne\n" -#: fe-connect.c:7936 +#: fe-connect.c:7951 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "FEL: lösenordsfil \"%s\" är inte en vanlig fil\n" -#: fe-connect.c:7946 +#: fe-connect.c:7961 #, c-format msgid "WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n" msgstr "VARNING: lösenordsfilen \"%s\" har läsrättigheter för gruppen eller världen; rättigheten skall vara u=rw (0600) eller mindre\n" -#: fe-connect.c:8050 +#: fe-connect.c:8065 #, c-format msgid "password retrieved from file \"%s\"" msgstr "lösenord hämtat från fil \"%s\"" -#: fe-connect.c:8216 +#: fe-connect.c:8231 #, c-format msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "ogiltigt heltalsvärde \"%s\" för anslutningsflagga \"%s\"" -#: fe-exec.c:469 fe-exec.c:3544 +#: fe-exec.c:469 fe-exec.c:3549 #, c-format msgid "row number %d is out of range 0..%d" msgstr "radnummer %d är utanför giltigt intervall 0..%d" -#: fe-exec.c:531 fe-protocol3.c:2126 +#: fe-exec.c:531 fe-protocol3.c:2140 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:834 +#: fe-exec.c:839 #, c-format msgid "write to server failed" msgstr "skrivning till servern misslyckades" -#: fe-exec.c:874 +#: fe-exec.c:879 #, c-format msgid "no error text available" msgstr "inget feltext finns tillgänglig" -#: fe-exec.c:963 +#: fe-exec.c:968 msgid "NOTICE" msgstr "NOTIS" -#: fe-exec.c:1021 +#: fe-exec.c:1026 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult stöder inte mer än INT_MAX tupler" -#: fe-exec.c:1033 +#: fe-exec.c:1038 msgid "size_t overflow" msgstr "size_t-överspill" -#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 +#: fe-exec.c:1454 fe-exec.c:1523 fe-exec.c:1569 #, c-format msgid "command string is a null pointer" msgstr "kommandosträngen är en null-pekare" -#: fe-exec.c:1455 fe-exec.c:3014 +#: fe-exec.c:1460 fe-exec.c:3019 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%s tillåts inte i pipeline-läge" -#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 +#: fe-exec.c:1528 fe-exec.c:1574 fe-exec.c:1668 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "antal parametrar måste vara mellan 0 och %d" -#: fe-exec.c:1559 fe-exec.c:1658 +#: fe-exec.c:1564 fe-exec.c:1663 #, c-format msgid "statement name is a null pointer" msgstr "satsens namn är en null-pekare" -#: fe-exec.c:1700 fe-exec.c:3390 +#: fe-exec.c:1705 fe-exec.c:3395 #, c-format msgid "no connection to the server" msgstr "inte ansluten till servern" -#: fe-exec.c:1708 fe-exec.c:3398 +#: fe-exec.c:1713 fe-exec.c:3403 #, c-format msgid "another command is already in progress" msgstr "ett annat kommando körs redan" -#: fe-exec.c:1738 +#: fe-exec.c:1743 #, c-format msgid "cannot queue commands during COPY" msgstr "kan inte köa kommandon när COPY körs" -#: fe-exec.c:1857 +#: fe-exec.c:1862 #, c-format msgid "length must be given for binary parameter" msgstr "längden måste anges för en binär parameter" -#: fe-exec.c:2216 +#: fe-exec.c:2221 #, c-format msgid "unexpected asyncStatus: %d" msgstr "oväntad asyncStatus: %d" -#: fe-exec.c:2372 +#: fe-exec.c:2377 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "synkrona kommandoexekveringsfunktioner tillåts inte i pipeline-läge" -#: fe-exec.c:2389 +#: fe-exec.c:2394 msgid "COPY terminated by new PQexec" msgstr "COPY terminerad av ny PQexec" -#: fe-exec.c:2405 +#: fe-exec.c:2410 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec tillåts inte under COPY BOTH" -#: fe-exec.c:2641 +#: fe-exec.c:2646 #, c-format msgid "unrecognized message type \"%c\"" msgstr "okänd meddelandetyp \"%c\"" -#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 +#: fe-exec.c:2718 fe-exec.c:2772 fe-exec.c:2840 fe-protocol3.c:2071 #, c-format msgid "no COPY in progress" msgstr "ingen COPY körs" -#: fe-exec.c:3021 +#: fe-exec.c:3026 #, c-format msgid "connection in wrong state" msgstr "anslutning i felaktigt tillstånd" -#: fe-exec.c:3064 +#: fe-exec.c:3069 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "kan inte byta till pipeline-läge, anslutningen är inte inaktiv" -#: fe-exec.c:3100 fe-exec.c:3121 +#: fe-exec.c:3105 fe-exec.c:3126 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "kan inte anvsluta pipeline-läge när alla svar inte tagits emot" -#: fe-exec.c:3104 +#: fe-exec.c:3109 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "är upptagen och kan inte avsluta pipeline-läge" -#: fe-exec.c:3115 +#: fe-exec.c:3120 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "kan inte avsluta pipeline-läge inne i en COPY" -#: fe-exec.c:3314 +#: fe-exec.c:3319 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "kan inte skicka en pipeline när vi inte är i pipeline-läge" -#: fe-exec.c:3433 +#: fe-exec.c:3438 msgid "invalid ExecStatusType code" msgstr "ogiltig ExecStatusType-kod" -#: fe-exec.c:3460 +#: fe-exec.c:3465 msgid "PGresult is not an error result\n" msgstr "PGresult är inte ett felresultat\n" -#: fe-exec.c:3528 fe-exec.c:3551 +#: fe-exec.c:3533 fe-exec.c:3556 #, c-format msgid "column number %d is out of range 0..%d" msgstr "kolumnnummer %d är utanför giltigt intervall 0..%d" -#: fe-exec.c:3566 +#: fe-exec.c:3571 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "parameter nummer %d är utanför giltigt intervall 0..%d" -#: fe-exec.c:3877 +#: fe-exec.c:3882 #, c-format msgid "could not interpret result from server: %s" msgstr "kunde inte tolka svaret från servern: %s" -#: fe-exec.c:4152 fe-exec.c:4266 +#: fe-exec.c:4157 fe-exec.c:4292 #, c-format msgid "incomplete multibyte character" msgstr "ofullständigt multibyte-tecken" -#: fe-exec.c:4154 fe-exec.c:4285 +#: fe-exec.c:4159 fe-exec.c:4311 #, c-format msgid "invalid multibyte character" msgstr "ogiltigt multibyte-tecken" +#: fe-exec.c:4413 +#, c-format +msgid "escaped string size exceeds the maximum allowed (%zu)" +msgstr "escape:ad strängstorlek överskrider maximalt tillåtna (%zu)" + +#: fe-exec.c:4590 +#, c-format +msgid "escaped bytea size exceeds the maximum allowed (%zu)" +msgstr "escape:ad bytea-storlek överskrider maximalt tillåtna (%zu)" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "GSSAPI-fel vid import av namn" @@ -1435,196 +1523,196 @@ msgstr "ogiltig socket" msgid "%s() failed: %s" msgstr "%s() misslyckades: %s" -#: fe-protocol3.c:189 +#: fe-protocol3.c:190 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "meddelandetyp 0x%02x kom från server under viloperiod" -#: fe-protocol3.c:402 +#: fe-protocol3.c:403 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "servern skickade data (meddelande \"D\") utan att först skicka en radbeskrivning (meddelande \"T\")" -#: fe-protocol3.c:444 +#: fe-protocol3.c:445 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "oväntat svar för servern; första mottagna tecknet var \"%c\"" -#: fe-protocol3.c:468 +#: fe-protocol3.c:469 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "meddelandeinnehåll stämmer inte med längden för meddelandetyp \"%c\"" -#: fe-protocol3.c:503 +#: fe-protocol3.c:504 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "tappade synkronisering med servern: fick meddelandetyp \"%c\", längd %d" -#: fe-protocol3.c:550 fe-protocol3.c:590 +#: fe-protocol3.c:551 fe-protocol3.c:591 msgid "insufficient data in \"T\" message" msgstr "otillräckligt med data i \"T\"-meddelande" -#: fe-protocol3.c:661 fe-protocol3.c:867 +#: fe-protocol3.c:662 fe-protocol3.c:868 msgid "out of memory for query result" msgstr "slut på minnet för frågeresultat" -#: fe-protocol3.c:730 +#: fe-protocol3.c:731 msgid "insufficient data in \"t\" message" msgstr "otillräckligt med data i \"t\"-meddelande" -#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 +#: fe-protocol3.c:790 fe-protocol3.c:822 fe-protocol3.c:840 msgid "insufficient data in \"D\" message" msgstr "otillräckligt med data i \"D\"-meddelande" -#: fe-protocol3.c:795 +#: fe-protocol3.c:796 msgid "unexpected field count in \"D\" message" msgstr "oväntat fältantal i \"D\"-meddelande" -#: fe-protocol3.c:1051 +#: fe-protocol3.c:1052 msgid "no error message available\n" msgstr "inget felmeddelande finns tillgängligt\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1099 fe-protocol3.c:1118 +#: fe-protocol3.c:1100 fe-protocol3.c:1119 #, c-format msgid " at character %s" msgstr " vid tecken %s" -#: fe-protocol3.c:1131 +#: fe-protocol3.c:1132 #, c-format msgid "DETAIL: %s\n" msgstr "DETALJ: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1135 #, c-format msgid "HINT: %s\n" msgstr "TIPS: %s\n" -#: fe-protocol3.c:1137 +#: fe-protocol3.c:1138 #, c-format msgid "QUERY: %s\n" msgstr "FRÅGA: %s\n" -#: fe-protocol3.c:1144 +#: fe-protocol3.c:1145 #, c-format msgid "CONTEXT: %s\n" msgstr "KONTEXT: %s\n" -#: fe-protocol3.c:1153 +#: fe-protocol3.c:1154 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "SCHEMANAMN: %s\n" -#: fe-protocol3.c:1157 +#: fe-protocol3.c:1158 #, c-format msgid "TABLE NAME: %s\n" msgstr "TABELLNAMN: %s\n" -#: fe-protocol3.c:1161 +#: fe-protocol3.c:1162 #, c-format msgid "COLUMN NAME: %s\n" msgstr "KOLUMNNAMN: %s\n" -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1166 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "DATATYPNAMN: %s\n" -#: fe-protocol3.c:1169 +#: fe-protocol3.c:1170 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "VILLKORSNAMN: %s\n" -#: fe-protocol3.c:1181 +#: fe-protocol3.c:1182 msgid "LOCATION: " msgstr "PLATS: " -#: fe-protocol3.c:1183 +#: fe-protocol3.c:1184 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1185 +#: fe-protocol3.c:1186 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1380 +#: fe-protocol3.c:1394 #, c-format msgid "LINE %d: " msgstr "RAD %d: " -#: fe-protocol3.c:1442 +#: fe-protocol3.c:1456 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: servern efterfrågade nedgradering till en version med högre versionsnummer" -#: fe-protocol3.c:1448 +#: fe-protocol3.c:1462 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: servern efterfrågade nedgradering till en tidigare version än 3.0" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1469 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: servern efterfrågade nedgradering till en ickeexisterande 3.1-protokollversion" -#: fe-protocol3.c:1461 +#: fe-protocol3.c:1475 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: servern angav negativt nummer för ej stödd parameter" -#: fe-protocol3.c:1467 +#: fe-protocol3.c:1481 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: servern efterfrågade förhandling men ville inte ändra något" -#: fe-protocol3.c:1473 +#: fe-protocol3.c:1487 #, c-format msgid "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" msgstr "servern stöder bara protokollversion %d.%d, men \"%s\" är satt till %d.%d" -#: fe-protocol3.c:1498 +#: fe-protocol3.c:1512 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: servern angav parameter som inte stöds med ett namn utan ett \"%s\"-prefix (\"%s\")" -#: fe-protocol3.c:1501 +#: fe-protocol3.c:1515 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: servern angav parameter som inte stöds och som inte efterfrågades (\"%s\")" -#: fe-protocol3.c:1508 +#: fe-protocol3.c:1522 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "tog emot ogiltig anslutningsförhandling för protokoll: meddelandet är för kort" -#: fe-protocol3.c:1574 +#: fe-protocol3.c:1588 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d not allowed in protocol version 3.0 (must be 4 bytes)" msgstr "tog emot felaktigt BackendKeyData-meddelande: cancel-nyckel med längd %d tillåts inte i protokollversion 3.0 (måsta vara 4 byte)" -#: fe-protocol3.c:1581 +#: fe-protocol3.c:1595 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too short (minimum 4 bytes)" msgstr "tog emot felaktigt BackendKeyData-meddelande: cancel-nyckel med längd %d är för kort (minst 4 byte)" -#: fe-protocol3.c:1588 +#: fe-protocol3.c:1602 #, c-format msgid "received invalid BackendKeyData message: cancel key with length %d is too long (maximum 256 bytes)" msgstr "tog emot felaktigt BackendKeyData-meddelande: cancel-nyckel med längd %d är för lång (maximalt 256 byte)" -#: fe-protocol3.c:1952 +#: fe-protocol3.c:1966 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: utför inte text-COPY OUT" -#: fe-protocol3.c:2327 +#: fe-protocol3.c:2341 #, c-format msgid "protocol error: no function result" msgstr "protokollfel: inget funktionsresultat" -#: fe-protocol3.c:2339 +#: fe-protocol3.c:2353 #, c-format msgid "protocol error: id=0x%x" msgstr "protokollfel: id=0x%x" @@ -1675,12 +1763,12 @@ msgstr "GSSAPI-fel vid inpackning" msgid "outgoing GSSAPI message would not use confidentiality" msgstr "utående GSSAPI-meddelande skulle inte använda sekretess" -#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:723 +#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:726 #, c-format msgid "client tried to send oversize GSSAPI packet (%zu > %zu)" msgstr "klienten försökte skicka för stort GSSAPI-paket (%zu > %zu)" -#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:599 +#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:602 #, c-format msgid "oversize GSSAPI packet sent by the server (%zu > %zu)" msgstr "för stort GSSAPI-paket skickat av servern (%zu > %zu)" @@ -1694,11 +1782,11 @@ msgstr "GSSAPI-fel vid uppackning" msgid "incoming GSSAPI message did not use confidentiality" msgstr "inkommande GSSAPI-meddelande använde inte sekretess" -#: fe-secure-gssapi.c:662 +#: fe-secure-gssapi.c:665 msgid "could not initiate GSSAPI security context" msgstr "kunde inte initiera GSSAPI-säkerhetskontext" -#: fe-secure-gssapi.c:712 +#: fe-secure-gssapi.c:715 msgid "GSSAPI size check error" msgstr "GSSAPI-fel vid kontroll av storlek" diff --git a/src/interfaces/libpq/po/uk.po b/src/interfaces/libpq/po/uk.po index 4d5cdf1b724..2eaadf00f2f 100644 --- a/src/interfaces/libpq/po/uk.po +++ b/src/interfaces/libpq/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-02-09 18:10+0000\n" -"PO-Revision-Date: 2024-02-11 16:35\n" +"POT-Creation-Date: 2025-12-31 02:10+0000\n" +"PO-Revision-Date: 2026-01-02 14:40\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,924 +14,1425 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_16_STABLE/libpq.pot\n" -"X-Crowdin-File-ID: 971\n" +"X-Crowdin-File: /REL_18_STABLE/libpq.pot\n" +"X-Crowdin-File-ID: 1073\n" -#: ../../port/thread.c:50 ../../port/thread.c:86 +#: ../libpq-oauth/oauth-curl.c:308 ../libpq-oauth/oauth-curl.c:2011 #, c-format -msgid "could not look up local user ID %d: %s" -msgstr "не вдалося знайти локального користувача з ідентифікатором %d: %s" +msgid "libcurl easy handle removal failed: %s" +msgstr "не вдалося видалити easy-дескриптор libcurl: %s" -#: ../../port/thread.c:55 ../../port/thread.c:91 +#: ../libpq-oauth/oauth-curl.c:328 #, c-format -msgid "local user with ID %d does not exist" -msgstr "локального користувача з ідентифікатором %d не існує" +msgid "libcurl multi handle cleanup failed: %s" +msgstr "не вдалося очистити multi-дескриптор libcurl: %s" -#: fe-auth-scram.c:227 +#: ../libpq-oauth/oauth-curl.c:394 ../libpq-oauth/oauth-curl.c:405 +#, c-format +msgid "failed to set %s on OAuth connection: %s" +msgstr "не вдалося встановити %s для OAuth підключення: %s" + +#: ../libpq-oauth/oauth-curl.c:416 +#, c-format +msgid "failed to get %s from OAuth response: %s" +msgstr "не вдалося отримати %s з OAuth відповіді: %s" + +#: ../libpq-oauth/oauth-curl.c:485 fe-auth-oauth.c:209 fe-auth-oauth.c:271 +#: fe-auth-oauth.c:333 +#, c-format +msgid "field \"%s\" must be a string" +msgstr "поле \"%s\" має бути рядком" + +#: ../libpq-oauth/oauth-curl.c:489 +#, c-format +msgid "field \"%s\" must be a number" +msgstr "поле \"%s\" має бути числом" + +#: ../libpq-oauth/oauth-curl.c:493 +#, c-format +msgid "field \"%s\" must be an array of strings" +msgstr "поле \"%s\" має бути масивом рядків" + +#: ../libpq-oauth/oauth-curl.c:498 +#, c-format +msgid "field \"%s\" has unexpected type" +msgstr "поле \"%s\" має неочікуваний тип" + +#: ../libpq-oauth/oauth-curl.c:522 ../libpq-oauth/oauth-curl.c:632 +#: fe-auth-oauth.c:215 fe-auth-oauth.c:277 +#, c-format +msgid "JSON is too deeply nested" +msgstr "JSON має занадто глибокий рівень вкладеності" + +#: ../libpq-oauth/oauth-curl.c:574 fe-auth-oauth.c:324 +#, c-format +msgid "field \"%s\" is duplicated" +msgstr "поле \"%s\" дублюється" + +#: ../libpq-oauth/oauth-curl.c:614 ../libpq-oauth/oauth-curl.c:674 +#: fe-auth-oauth.c:264 fe-auth-oauth.c:298 +#, c-format +msgid "top-level element must be an object" +msgstr "елемент верхнього рівня має бути об'єктом" + +#: ../libpq-oauth/oauth-curl.c:777 +#, c-format +msgid "no content type was provided" +msgstr "тип вмісту не було надано" + +#: ../libpq-oauth/oauth-curl.c:816 +#, c-format +msgid "unexpected content type: \"%s\"" +msgstr "неочікуваний тип вмісту: \"%s\"" + +#: ../libpq-oauth/oauth-curl.c:841 +#, c-format +msgid "response contains embedded NULLs" +msgstr "відповідь містить вбудовані NULL-символи" + +#: ../libpq-oauth/oauth-curl.c:851 +#, c-format +msgid "response is not valid UTF-8" +msgstr "відповідь не є коректним UTF-8" + +#: ../libpq-oauth/oauth-curl.c:891 +#, c-format +msgid "field \"%s\" is missing" +msgstr "поле \"%s\" відсутнє" + +#: ../libpq-oauth/oauth-curl.c:1097 +msgid "failed to parse token error response" +msgstr "не вдалося розібрати відповідь з помилкою токену" + +#: ../libpq-oauth/oauth-curl.c:1125 +#, c-format +msgid "provider rejected the oauth_client_secret" +msgstr "провайдер відхилив oauth_client_secret" + +#: ../libpq-oauth/oauth-curl.c:1126 +#, c-format +msgid "provider requires client authentication, and no oauth_client_secret is set" +msgstr "провайдер вимагає автентифікації клієнта, але oauth_client_secret не встановлено" + +#: ../libpq-oauth/oauth-curl.c:1559 +#, c-format +msgid "checking timer expiration: %m" +msgstr "перевірка завершення таймеру: %m" + +#: ../libpq-oauth/oauth-curl.c:1721 +#, c-format +msgid "failed to create libcurl multi handle" +msgstr "не вдалося створити multi-дескриптор libcurl" + +#: ../libpq-oauth/oauth-curl.c:1741 +#, c-format +msgid "failed to create libcurl handle" +msgstr "не вдалося створити дескриптор libcurl" + +#: ../libpq-oauth/oauth-curl.c:1825 ../libpq-oauth/oauth-curl.c:1866 +#: ../libpq-oauth/oauth-curl.c:2184 ../libpq-oauth/oauth-curl.c:2345 +#: ../libpq-oauth/oauth-curl.c:2406 ../libpq-oauth/oauth-curl.c:2495 +#: ../libpq-oauth/oauth-curl.c:2789 ../libpq-oauth/oauth-curl.c:3006 +#: fe-auth-oauth.c:146 fe-auth-oauth.c:489 fe-auth-oauth.c:561 +#: fe-auth-oauth.c:723 fe-auth-oauth.c:1016 fe-auth-oauth.c:1029 +#: fe-auth-oauth.c:1117 fe-auth-oauth.c:1130 fe-auth-oauth.c:1266 +#: fe-auth-scram.c:374 fe-auth-scram.c:447 fe-auth-scram.c:599 +#: fe-auth-scram.c:619 fe-auth-scram.c:643 fe-auth-scram.c:657 +#: fe-auth-scram.c:703 fe-auth-scram.c:739 fe-auth-scram.c:931 fe-auth.c:308 +#: fe-auth.c:382 fe-auth.c:416 fe-auth.c:694 fe-auth.c:827 fe-auth.c:1330 +#: fe-auth.c:1493 fe-cancel.c:178 fe-connect.c:1012 fe-connect.c:1052 +#: fe-connect.c:2172 fe-connect.c:2334 fe-connect.c:3727 fe-connect.c:5183 +#: fe-connect.c:5496 fe-connect.c:5765 fe-connect.c:5883 fe-connect.c:6130 +#: fe-connect.c:6210 fe-connect.c:6308 fe-connect.c:6559 fe-connect.c:6586 +#: fe-connect.c:6662 fe-connect.c:6685 fe-connect.c:6709 fe-connect.c:6744 +#: fe-connect.c:6830 fe-connect.c:6838 fe-connect.c:7195 fe-connect.c:7377 +#: fe-exec.c:530 fe-exec.c:1331 fe-exec.c:3270 fe-exec.c:4341 fe-exec.c:4534 +#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:212 fe-protocol3.c:235 +#: fe-protocol3.c:258 fe-protocol3.c:275 fe-protocol3.c:296 fe-protocol3.c:370 +#: fe-protocol3.c:751 fe-protocol3.c:991 fe-protocol3.c:1556 +#: fe-protocol3.c:1610 fe-protocol3.c:1656 fe-protocol3.c:1677 +#: fe-protocol3.c:1934 fe-protocol3.c:2335 fe-secure-common.c:110 +#: fe-secure-gssapi.c:508 fe-secure-gssapi.c:699 fe-secure-openssl.c:405 +#: fe-secure-openssl.c:1135 +#, c-format +msgid "out of memory" +msgstr "недостатньо пам'яті" + +#: ../libpq-oauth/oauth-curl.c:1853 +#, c-format +msgid "response is too large" +msgstr "відповідь занадто велика" + +#: ../libpq-oauth/oauth-curl.c:1895 +#, c-format +msgid "failed to queue HTTP request: %s" +msgstr "не вдалося поставити HTTP запит у чергу: %s" + +#: ../libpq-oauth/oauth-curl.c:1912 ../libpq-oauth/oauth-curl.c:1970 +#, c-format +msgid "asynchronous HTTP request failed: %s" +msgstr "асинхронний HTTP запит не вдався: %s" + +#: ../libpq-oauth/oauth-curl.c:2022 +#, c-format +msgid "no result was retrieved for the finished handle" +msgstr "не отримано результату для завершеного дескриптора" + +#: ../libpq-oauth/oauth-curl.c:2155 ../libpq-oauth/oauth-curl.c:2461 +#: ../libpq-oauth/oauth-curl.c:2540 +#, c-format +msgid "unexpected response code %ld" +msgstr "неочікуваний код відповіді %ld" + +#: ../libpq-oauth/oauth-curl.c:2162 +msgid "failed to parse OpenID discovery document" +msgstr "не вдалося розібрати документ виявлення OpenID" + +#: ../libpq-oauth/oauth-curl.c:2227 +#, c-format +msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" +msgstr "ідентифікатор видавця (%s) не відповідає oauth_issuer (%s)" + +#: ../libpq-oauth/oauth-curl.c:2254 +#, c-format +msgid "issuer \"%s\" does not provide a device authorization endpoint" +msgstr "видавець \"%s\" не надає кінцеву точку авторизації пристрою" + +#: ../libpq-oauth/oauth-curl.c:2280 +#, c-format +msgid "device authorization endpoint \"%s\" must use HTTPS" +msgstr "кінцева точка авторизації пристрою \"%s\" має використовувати HTTPS" + +#: ../libpq-oauth/oauth-curl.c:2289 +#, c-format +msgid "token endpoint \"%s\" must use HTTPS" +msgstr "кінцева точка токену \"%s\" має використовувати HTTPS" + +#: ../libpq-oauth/oauth-curl.c:2430 +msgid "failed to parse device authorization" +msgstr "не вдалося розібрати авторизацію пристрою" + +#: ../libpq-oauth/oauth-curl.c:2518 +msgid "failed to parse access token response" +msgstr "не вдалося розібрати відповідь токена доступу" + +#: ../libpq-oauth/oauth-curl.c:2598 +#, c-format +msgid "slow_down interval overflow" +msgstr "переповнення інтервалу slow_down" + +#. translator: The first %s is a URL for the user to visit in a +#. browser, and the second %s is a code to be copy-pasted there. +#. +#: ../libpq-oauth/oauth-curl.c:2634 +#, c-format +msgid "Visit %s and enter the code: %s\n" +msgstr "Відвідайте %s і введіть код: %s\n" + +#: ../libpq-oauth/oauth-curl.c:2639 +#, c-format +msgid "device prompt failed" +msgstr "помилка запиту пристрою" + +#: ../libpq-oauth/oauth-curl.c:2695 +#, c-format +msgid "curl_global_init previously failed during OAuth setup" +msgstr "curl_global_init раніше не вдалася під час налаштування OAuth" + +#: ../libpq-oauth/oauth-curl.c:2714 +#, c-format +msgid "curl_global_init failed during OAuth setup" +msgstr "curl_global_init не вдалася під час налаштування OAuth" + +#: ../libpq-oauth/oauth-curl.c:2735 +#, c-format +msgid "libcurl is no longer thread-safe\n" +"\tCurl initialization was reported thread-safe when libpq\n" +"\twas compiled, but the currently installed version of\n" +"\tlibcurl reports that it is not. Recompile libpq against\n" +"\tthe installed version of libcurl." +msgstr "libcurl більше не є потокобезпечною\n" +"\tПри компіляції libpq ініціалізація Curl\n" +"\tбула заявлена як потокобезпечна, але\n" +"\tпоточна встановлена версія libcurl\n" +"\tповідомляє, що вона не є. Перекомпілюйте libpq\n" +"\tдля встановленої версії libcurl." + +#: ../libpq-oauth/oauth-curl.c:2897 +msgid "failed to fetch OpenID discovery document" +msgstr "не вдалося отримати документ виявлення OpenID" + +#: ../libpq-oauth/oauth-curl.c:2911 +msgid "cannot run OAuth device authorization" +msgstr "не можна запустити авторизацію пристрою OAuth" + +#: ../libpq-oauth/oauth-curl.c:2915 +msgid "failed to obtain device authorization" +msgstr "не вдалося отримати авторизацію пристрою" + +#: ../libpq-oauth/oauth-curl.c:2926 ../libpq-oauth/oauth-curl.c:2977 +msgid "failed to obtain access token" +msgstr "не вдалося отримати токен доступу" + +#: fe-auth-oauth.c:133 +#, c-format +msgid "internal error: no OAuth token was set for the connection" +msgstr "внутрішня помилка: OAuth токен не був встановлений для підключення" + +#: fe-auth-oauth.c:396 +#, c-format +msgid "OAuth discovery URI \"%s\" must use HTTPS" +msgstr "URI виявлення OAuth \"%s\" має використовувати HTTPS" + +#: fe-auth-oauth.c:413 +#, c-format +msgid "OAuth discovery URI \"%s\" must not contain query or fragment components" +msgstr "URI виявлення OAuth \"%s\" не має містити компоненти запиту чи фрагменти" + +#: fe-auth-oauth.c:428 +#, c-format +msgid "OAuth discovery URI \"%s\" is not a .well-known URI" +msgstr "URI виявлення OAuth \"%s\" не є .well-known URI" + +#: fe-auth-oauth.c:454 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an unsupported .well-known suffix" +msgstr "URI виявлення OAuth \"%s\" використовує непідтримуваний суфікс .well-known" + +#: fe-auth-oauth.c:479 +#, c-format +msgid "OAuth discovery URI \"%s\" uses an invalid format" +msgstr "URI виявлення OAuth \"%s\" використовує неправильний формат" + +#: fe-auth-oauth.c:528 +#, c-format +msgid "server's error message contained an embedded NULL, and was discarded" +msgstr "повідомлення про помилку сервера містило вбудований NULL і було відкинуто" + +#: fe-auth-oauth.c:539 +#, c-format +msgid "server's error response is not valid UTF-8" +msgstr "відповідь сервера про помилку не є коректним UTF-8" + +#: fe-auth-oauth.c:579 +#, c-format +msgid "failed to parse server's error response: %s" +msgstr "не вдалося розібрати відповідь сервера про помилку: %s" + +#: fe-auth-oauth.c:610 +#, c-format +msgid "server's discovery document at %s (issuer \"%s\") is incompatible with oauth_issuer (%s)" +msgstr "документ виявлення сервера за адресою %s (видавець \"%s\") несумісний з oauth_issuer (%s)" + +#: fe-auth-oauth.c:631 +#, c-format +msgid "server's discovery document has moved to %s (previous location was %s)" +msgstr "документ виявлення сервера переміщено до %s (попереднє місцезнаходження: %s)" + +#: fe-auth-oauth.c:652 +#, c-format +msgid "server sent error response without a status" +msgstr "сервер надіслав відповідь про помилку без статусу" + +#: fe-auth-oauth.c:663 +#, c-format +msgid "server rejected OAuth bearer token: %s" +msgstr "сервер відхилив OAuth bearer токен: %s" + +#: fe-auth-oauth.c:696 +#, c-format +msgid "user-defined OAuth flow provided neither a token nor an async callback" +msgstr "користувацький OAuth потік не надав ні токену, ні асинхронного зворотного виклику" + +#: fe-auth-oauth.c:703 fe-auth-oauth.c:1041 +#, c-format +msgid "user-defined OAuth flow failed" +msgstr "користувацький OAuth потік не вдався" + +#: fe-auth-oauth.c:716 +#, c-format +msgid "user-defined OAuth flow did not provide a token" +msgstr "користувацький OAuth потік не надав токен" + +#: fe-auth-oauth.c:734 +#, c-format +msgid "user-defined OAuth flow did not provide a socket for polling" +msgstr "користувацький OAuth потік не надав сокет для опитування" + +#: fe-auth-oauth.c:917 +#, c-format +msgid "failed to lock mutex (%d)" +msgstr "не вдалося блокувати м'ютекс (%d)" + +#: fe-auth-oauth.c:1046 +#, c-format +msgid "no OAuth flows are available (try installing the libpq-oauth package)" +msgstr "OAuth потоки недоступні (спробуйте встановити пакунок libpq-oauth)" + +#: fe-auth-oauth.c:1095 +#, c-format +msgid "server requires OAuth authentication, but oauth_issuer and oauth_client_id are not both set" +msgstr "сервер вимагає OAuth автентифікації, але oauth_issuer і oauth_client_id обидва не встановлені" + +#: fe-auth-oauth.c:1255 +#, c-format +msgid "server sent unexpected additional OAuth data" +msgstr "сервер надіслав неочікувані додаткові дані OAuth" + +#: fe-auth-oauth.c:1295 +#, c-format +msgid "server requires OAuth authentication, but no discovery metadata was provided" +msgstr "сервер вимагає OAuth автентифікації, але метадані виявлення не надано" + +#: fe-auth-oauth.c:1333 +#, c-format +msgid "internal error: OAuth flow did not set a token" +msgstr "внутрішня помилка: OAuth потік не встановив токен" + +#: fe-auth-oauth.c:1351 +#, c-format +msgid "server sent additional OAuth data after error" +msgstr "сервер надіслав додаткові дані OAuth після помилки" + +#: fe-auth-oauth.c:1355 +#, c-format +msgid "invalid OAuth exchange state" +msgstr "неправильний стан обміну OAuth" + +#: fe-auth-oauth.c:1368 +#, c-format +msgid "retrying connection with new bearer token" +msgstr "повторна спроба підключення з новим bearer токеном" + +#: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" msgstr "неправильне повідомлення SCRAM (пусте повідомлення)" -#: fe-auth-scram.c:232 +#: fe-auth-scram.c:233 #, c-format msgid "malformed SCRAM message (length mismatch)" msgstr "неправильне повідомлення SCRAM (невідповідність довжини)" -#: fe-auth-scram.c:275 +#: fe-auth-scram.c:277 #, c-format msgid "could not verify server signature: %s" msgstr "не вдалося перевірити підпис сервера: %s" -#: fe-auth-scram.c:281 +#: fe-auth-scram.c:283 #, c-format msgid "incorrect server signature" msgstr "невірний підпис сервера" -#: fe-auth-scram.c:290 +#: fe-auth-scram.c:292 #, c-format msgid "invalid SCRAM exchange state" msgstr "неприпустимий стан обміну SCRAM" -#: fe-auth-scram.c:317 +#: fe-auth-scram.c:316 #, c-format msgid "malformed SCRAM message (attribute \"%c\" expected)" msgstr "неправильне повідомлення SCRAM (очікувався атрибут \"%c\")" -#: fe-auth-scram.c:326 +#: fe-auth-scram.c:325 #, c-format msgid "malformed SCRAM message (expected character \"=\" for attribute \"%c\")" msgstr "неправильне повідомлення SCRAM (очікувався символ \"=\" для атрибута \"%c\")" -#: fe-auth-scram.c:366 +#: fe-auth-scram.c:365 #, c-format msgid "could not generate nonce" msgstr "не вдалося згенерувати одноразовий ідентифікатор" -#: fe-auth-scram.c:375 fe-auth-scram.c:448 fe-auth-scram.c:600 -#: fe-auth-scram.c:620 fe-auth-scram.c:644 fe-auth-scram.c:658 -#: fe-auth-scram.c:704 fe-auth-scram.c:740 fe-auth-scram.c:914 fe-auth.c:296 -#: fe-auth.c:369 fe-auth.c:403 fe-auth.c:618 fe-auth.c:729 fe-auth.c:1210 -#: fe-auth.c:1375 fe-connect.c:925 fe-connect.c:1759 fe-connect.c:1921 -#: fe-connect.c:3291 fe-connect.c:4496 fe-connect.c:5161 fe-connect.c:5416 -#: fe-connect.c:5534 fe-connect.c:5781 fe-connect.c:5861 fe-connect.c:5959 -#: fe-connect.c:6210 fe-connect.c:6237 fe-connect.c:6313 fe-connect.c:6336 -#: fe-connect.c:6360 fe-connect.c:6395 fe-connect.c:6481 fe-connect.c:6489 -#: fe-connect.c:6846 fe-connect.c:6996 fe-exec.c:527 fe-exec.c:1323 -#: fe-exec.c:3132 fe-exec.c:4100 fe-exec.c:4264 fe-gssapi-common.c:109 -#: fe-lobj.c:870 fe-protocol3.c:204 fe-protocol3.c:228 fe-protocol3.c:251 -#: fe-protocol3.c:268 fe-protocol3.c:348 fe-protocol3.c:715 fe-protocol3.c:954 -#: fe-protocol3.c:1765 fe-protocol3.c:2165 fe-secure-common.c:110 -#: fe-secure-gssapi.c:496 fe-secure-openssl.c:435 fe-secure-openssl.c:1271 -#, c-format -msgid "out of memory" -msgstr "недостатньо пам'яті" - -#: fe-auth-scram.c:382 +#: fe-auth-scram.c:381 #, c-format msgid "could not encode nonce" msgstr "не вдалося закодувати одноразовий ідентифікатор" -#: fe-auth-scram.c:570 +#: fe-auth-scram.c:569 #, c-format msgid "could not calculate client proof: %s" msgstr "не вдалося обчислити підтвердження клієнта: %s" -#: fe-auth-scram.c:585 +#: fe-auth-scram.c:584 #, c-format msgid "could not encode client proof" msgstr "не вдалося закодувати підтвердження клієнта" -#: fe-auth-scram.c:637 +#: fe-auth-scram.c:636 #, c-format msgid "invalid SCRAM response (nonce mismatch)" msgstr "неприпустима відповідь SCRAM (невідповідність одноразового ідентифікатора)" -#: fe-auth-scram.c:667 +#: fe-auth-scram.c:666 #, c-format msgid "malformed SCRAM message (invalid salt)" msgstr "неправильне повідомлення SCRAM (неприпустима сіль)" -#: fe-auth-scram.c:680 +#: fe-auth-scram.c:679 #, c-format msgid "malformed SCRAM message (invalid iteration count)" msgstr "неправильне повідомлення SCRAM (неприпустима кількість ітерацій)" -#: fe-auth-scram.c:685 +#: fe-auth-scram.c:684 #, c-format msgid "malformed SCRAM message (garbage at end of server-first-message)" msgstr "неправильне повідомлення SCRAM (сміття в кінці першого повідомлення сервера)" -#: fe-auth-scram.c:719 +#: fe-auth-scram.c:718 #, c-format msgid "error received from server in SCRAM exchange: %s" msgstr "отримано помилку від сервера під час обміну SCRAM: %s" -#: fe-auth-scram.c:734 +#: fe-auth-scram.c:733 #, c-format msgid "malformed SCRAM message (garbage at end of server-final-message)" msgstr "неправильне повідомлення SCRAM (сміття в кінці останнього повідомлення сервера)" -#: fe-auth-scram.c:751 +#: fe-auth-scram.c:750 #, c-format msgid "malformed SCRAM message (invalid server signature)" msgstr "неправильне повідомлення SCRAM (неприпустимий підпис сервера)" -#: fe-auth-scram.c:923 +#: fe-auth-scram.c:940 msgid "could not generate random salt" msgstr "не вдалося згенерувати випадкову сіль" -#: fe-auth.c:77 +#: fe-auth.c:80 #, c-format msgid "out of memory allocating GSSAPI buffer (%d)" msgstr "недостатньо пам'яті для буфера GSSAPI (%d)" -#: fe-auth.c:138 +#: fe-auth.c:146 msgid "GSSAPI continuation error" msgstr "Помилка продовження у GSSAPI" -#: fe-auth.c:168 fe-auth.c:397 fe-gssapi-common.c:97 fe-secure-common.c:99 +#: fe-auth.c:176 fe-auth.c:410 fe-gssapi-common.c:97 fe-secure-common.c:99 #: fe-secure-common.c:173 #, c-format msgid "host name must be specified" msgstr "необхідно вказати ім'я хосту" -#: fe-auth.c:174 +#: fe-auth.c:182 #, c-format msgid "duplicate GSS authentication request" msgstr "дублікат запиту автентифікації GSS" -#: fe-auth.c:238 +#: fe-auth.c:246 #, c-format msgid "out of memory allocating SSPI buffer (%d)" msgstr "недостатньо пам'яті для буфера SSPI (%d)" -#: fe-auth.c:285 +#: fe-auth.c:297 msgid "SSPI continuation error" msgstr "Помилка продовження SSPI" -#: fe-auth.c:359 +#: fe-auth.c:372 #, c-format msgid "duplicate SSPI authentication request" msgstr "дублікат запиту автентифікації SSPI" -#: fe-auth.c:384 +#: fe-auth.c:397 msgid "could not acquire SSPI credentials" msgstr "не вдалось отримати облікові дані SSPI" -#: fe-auth.c:437 +#: fe-auth.c:449 #, c-format msgid "channel binding required, but SSL not in use" msgstr "необхідно зв’язування каналів, але SSL не використовується" -#: fe-auth.c:443 +#: fe-auth.c:455 #, c-format msgid "duplicate SASL authentication request" msgstr "дублікат запиту автентифікації SASL" -#: fe-auth.c:501 +#: fe-auth.c:513 #, c-format msgid "channel binding is required, but client does not support it" msgstr "потрібно зв'язування каналів, але клієнт не підтримує його" -#: fe-auth.c:517 +#: fe-auth.c:529 #, c-format msgid "server offered SCRAM-SHA-256-PLUS authentication over a non-SSL connection" msgstr "сервер запропонував автентифікацію SCRAM-SHA-256-PLUS через підключення без SSL" -#: fe-auth.c:531 +#: fe-auth.c:551 #, c-format msgid "none of the server's SASL authentication mechanisms are supported" msgstr "жоден з серверних механізмів автентифікації SASL не підтримується" -#: fe-auth.c:538 +#: fe-auth.c:571 +#, c-format +msgid "authentication method requirement \"%s\" failed: server requested %s authentication" +msgstr "помилка вимоги методу автентифікації \"%s\": сервер вимагав автентифікації %s" + +#: fe-auth.c:580 #, c-format msgid "channel binding is required, but server did not offer an authentication method that supports channel binding" msgstr "потрібно зв'язування каналів, але сервер не запропонував метод аутентифікації, який підтримує зв’язування каналів" -#: fe-auth.c:641 +#: fe-auth.c:716 #, c-format msgid "out of memory allocating SASL buffer (%d)" msgstr "недостатньо пам'яті для буфера SASL (%d)" -#: fe-auth.c:665 +#: fe-auth.c:758 #, c-format msgid "AuthenticationSASLFinal received from server, but SASL authentication was not completed" msgstr "Від сервера отримано AuthenticationSASLFinal, але автентифікація SASL не була завершена" -#: fe-auth.c:675 +#: fe-auth.c:768 #, c-format msgid "no client response found after SASL exchange success" msgstr "після успішного обміну SASL немає відповіді клієнта" -#: fe-auth.c:738 fe-auth.c:745 fe-auth.c:1358 fe-auth.c:1369 +#: fe-auth.c:836 fe-auth.c:843 fe-auth.c:1476 fe-auth.c:1487 #, c-format msgid "could not encrypt password: %s" msgstr "не вдалося зашифрувати пароль: %s" -#: fe-auth.c:773 +#: fe-auth.c:873 msgid "server requested a cleartext password" msgstr "сервер надіслав запит на пароль простим текстом" -#: fe-auth.c:775 +#: fe-auth.c:875 msgid "server requested a hashed password" msgstr "сервер надіслав запит на хешований пароль" -#: fe-auth.c:778 +#: fe-auth.c:878 msgid "server requested GSSAPI authentication" msgstr "сервер запросив автентифікацію GSSAPI" -#: fe-auth.c:780 +#: fe-auth.c:880 msgid "server requested SSPI authentication" msgstr "сервер запросив автентифікацію SSPI" -#: fe-auth.c:784 +#: fe-auth.c:884 msgid "server requested SASL authentication" msgstr "сервер запросив автентифікацію SASL" -#: fe-auth.c:787 +#: fe-auth.c:887 msgid "server requested an unknown authentication type" msgstr "сервер надіслав запит невідомого типу автентифікації" -#: fe-auth.c:820 +#: fe-auth.c:920 #, c-format msgid "server did not request an SSL certificate" msgstr "сервер не запитував SSL-сертифікат" -#: fe-auth.c:825 +#: fe-auth.c:925 #, c-format msgid "server accepted connection without a valid SSL certificate" msgstr "сервер приймає підключення без дійсного SSL-сертифікату" -#: fe-auth.c:879 +#: fe-auth.c:979 msgid "server did not complete authentication" msgstr "сервер не пройшов автентифікацію" -#: fe-auth.c:913 +#: fe-auth.c:1013 #, c-format msgid "authentication method requirement \"%s\" failed: %s" msgstr "помилка вимоги \"%s\" методу автентифікації: %s" -#: fe-auth.c:936 +#: fe-auth.c:1036 #, c-format msgid "channel binding required, but server authenticated client without channel binding" msgstr "потрібно зв'язування каналів, але сервер автентифікував клієнта без зв’язування каналів" -#: fe-auth.c:941 +#: fe-auth.c:1041 #, c-format msgid "channel binding required but not supported by server's authentication request" msgstr "потрібно зв'язування каналів, але не підтримується запитом на аутентифікацію сервера" -#: fe-auth.c:975 +#: fe-auth.c:1081 #, c-format msgid "Kerberos 4 authentication not supported" msgstr "Автентифікація Kerberos 4 не підтримується" -#: fe-auth.c:979 +#: fe-auth.c:1085 #, c-format msgid "Kerberos 5 authentication not supported" msgstr "Автентифікація Kerberos 5 не підтримується" -#: fe-auth.c:1049 +#: fe-auth.c:1155 #, c-format msgid "GSSAPI authentication not supported" msgstr "Автентифікація GSSAPI не підтримується" -#: fe-auth.c:1080 +#: fe-auth.c:1186 #, c-format msgid "SSPI authentication not supported" msgstr "Автентифікація SSPI не підтримується" -#: fe-auth.c:1087 +#: fe-auth.c:1193 #, c-format msgid "Crypt authentication not supported" msgstr "Автентифікація Crypt не підтримується" -#: fe-auth.c:1151 +#: fe-auth.c:1267 #, c-format msgid "authentication method %u not supported" msgstr "спосіб автентифікації %u не підтримується" -#: fe-auth.c:1197 +#: fe-auth.c:1307 #, c-format msgid "user name lookup failure: error code %lu" msgstr "невдала підстановка імені користувача: код помилки %lu" -#: fe-auth.c:1321 +#: fe-auth.c:1315 +#, c-format +msgid "could not look up local user ID %ld: %m" +msgstr "не вдалося знайти локального користувача з ідентифікатором %ld: %m" + +#: fe-auth.c:1320 +#, c-format +msgid "local user with ID %ld does not exist" +msgstr "локального користувача з ідентифікатором %ld не існує" + +#: fe-auth.c:1439 #, c-format msgid "unexpected shape of result set returned for SHOW" msgstr "неочікувана форма набору результатів повернулася для SHOW" -#: fe-auth.c:1329 +#: fe-auth.c:1447 #, c-format -msgid "password_encryption value too long" -msgstr "занадто довге значення password_encryption" +msgid "\"password_encryption\" value too long" +msgstr "занадто довге значення \"password_encryption\"" -#: fe-auth.c:1379 +#: fe-auth.c:1497 #, c-format msgid "unrecognized password encryption algorithm \"%s\"" msgstr "нерозпізнаний алгоритм шифрування пароля \"%s\"" -#: fe-connect.c:1132 +#: fe-cancel.c:79 +#, c-format +msgid "connection pointer is NULL" +msgstr "нульове значення вказівника підключення" + +#: fe-cancel.c:85 fe-misc.c:613 +#, c-format +msgid "connection not open" +msgstr "підключення не відкрито" + +#: fe-cancel.c:92 +#, c-format +msgid "no cancellation key received" +msgstr "ключ скасування не отримано" + +#: fe-cancel.c:212 +#, c-format +msgid "cancel request is already being sent on this connection" +msgstr "запит на скасування вже надсилається при цьому підключенні" + +#: fe-cancel.c:282 +#, c-format +msgid "unexpected response from server" +msgstr "неочікувана відповідь сервера" + +#: fe-connect.c:1309 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "не вдалося зіставити імена хостів %d для значень %d hostaddr" -#: fe-connect.c:1212 +#: fe-connect.c:1389 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "не вдалося зіставити %d номерів портів з %d хостами" -#: fe-connect.c:1337 +#: fe-connect.c:1517 #, c-format msgid "negative require_auth method \"%s\" cannot be mixed with non-negative methods" msgstr "від'ємний метод require_auth \"%s\" не може бути змішаний з позитивними методами" -#: fe-connect.c:1350 +#: fe-connect.c:1530 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "метод require_auth \"%s\" не може бути змішаний з негативними методами" -#: fe-connect.c:1410 fe-connect.c:1461 fe-connect.c:1503 fe-connect.c:1559 -#: fe-connect.c:1567 fe-connect.c:1598 fe-connect.c:1644 fe-connect.c:1684 -#: fe-connect.c:1705 +#: fe-connect.c:1606 fe-connect.c:1735 fe-connect.c:1777 fe-connect.c:1820 +#: fe-connect.c:1923 fe-connect.c:1969 fe-connect.c:2009 fe-connect.c:2076 +#: fe-connect.c:8263 #, c-format msgid "invalid %s value: \"%s\"" msgstr "неприпустиме значення %s: \"%s\"" -#: fe-connect.c:1443 +#: fe-connect.c:1648 +#, c-format +msgid "internal error: no space in allowed_sasl_mechs" +msgstr "внутрішня помилка: неприпустимий пробіл в allowed_sasl_mechs" + +#: fe-connect.c:1687 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "require_auth метод \"%s\" вказаний неодноразово" -#: fe-connect.c:1484 fe-connect.c:1523 fe-connect.c:1606 +#: fe-connect.c:1758 fe-connect.c:1797 fe-connect.c:1829 fe-connect.c:1931 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "%s значення \"%s\" неприпустиме, якщо підтримку протоколу SSL не скомпільовано" -#: fe-connect.c:1546 +#: fe-connect.c:1849 +#, c-format +msgid "weak sslmode \"%s\" may not be used with sslnegotiation=direct (use \"require\", \"verify-ca\", or \"verify-full\")" +msgstr "слабкий sslmode \"%s\" не може використовуватися з sslnegotiation=direct (використовуйте \"require\", \"verify-ca\" або \"verify-full\")" + +#: fe-connect.c:1871 #, c-format msgid "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-full\")" msgstr "слабкий sslmode \"%s\" не може використовуватися з sslrootcert=system (використайте \"verify-full\")" -#: fe-connect.c:1584 +#: fe-connect.c:1884 fe-connect.c:1892 +#, c-format +msgid "invalid \"%s\" value: \"%s\"" +msgstr "неприпустиме значення \"%s\": \"%s\"" + +#: fe-connect.c:1909 #, c-format msgid "invalid SSL protocol version range" msgstr "неприпустимий діапазон версії протоколу SSL" -#: fe-connect.c:1621 +#: fe-connect.c:1946 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "%s значення \"%s\" не підтримується (перевірте версію OpenSSL)" -#: fe-connect.c:1651 +#: fe-connect.c:1976 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "значення gssencmode \"%s\" неприпустиме, якщо підтримку протоколу GSSAPI не скомпільовано" -#: fe-connect.c:1944 +#: fe-connect.c:2030 +#, c-format +msgid "invalid SCRAM client key" +msgstr "неприпустимий ключ клієнта SCRAM" + +#: fe-connect.c:2035 +#, c-format +msgid "invalid SCRAM client key length: %d" +msgstr "неприпустима довжина ключа SCRAM: %d" + +#: fe-connect.c:2053 +#, c-format +msgid "invalid SCRAM server key" +msgstr "неприпустимий ключ сервера SCRAM" + +#: fe-connect.c:2058 +#, c-format +msgid "invalid SCRAM server key length: %d" +msgstr "неприпустима довжина ключа SCRAM: %d" + +#: fe-connect.c:2145 +#, c-format +msgid "\"%s\" is greater than \"%s\"" +msgstr "\"%s\" більше за \"%s\"" + +#: fe-connect.c:2357 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "не вдалося встановити сокет у TCP-режим без затримки: %s" -#: fe-connect.c:2003 +#: fe-connect.c:2416 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "помилка при з'єднанні з сервером через сокет \"%s\": " -#: fe-connect.c:2029 +#: fe-connect.c:2442 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "підключення до серверу \"%s\" (%s), порт %s провалено: " -#: fe-connect.c:2034 +#: fe-connect.c:2447 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "підключення до серверу \"%s\", порт %s провалено: " -#: fe-connect.c:2057 +#: fe-connect.c:2470 #, c-format msgid "\tIs the server running locally and accepting connections on that socket?" msgstr "\tЧи працює сервер локально і приймає підключення до цього сокету?" -#: fe-connect.c:2059 +#: fe-connect.c:2472 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "\tЧи працює сервер на цьому хості і приймає TCP/IP підключення?" -#: fe-connect.c:2122 -#, c-format -msgid "invalid integer value \"%s\" for connection option \"%s\"" -msgstr "неприпустиме ціле значення \"%s\" для параметра з'єднання \"%s\"" - -#: fe-connect.c:2151 fe-connect.c:2185 fe-connect.c:2220 fe-connect.c:2318 -#: fe-connect.c:2973 +#: fe-connect.c:2518 fe-connect.c:2552 fe-connect.c:2587 fe-connect.c:2685 +#: fe-connect.c:3411 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s) помилка: %s" -#: fe-connect.c:2284 +#: fe-connect.c:2651 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) помилка: код помилки %d" -#: fe-connect.c:2597 +#: fe-connect.c:2963 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "неприпустимий стан підключення, можливо, пошкоджена пам'ять" -#: fe-connect.c:2676 +#: fe-connect.c:3046 #, c-format msgid "invalid port number: \"%s\"" msgstr "неприпустимий номер порту: \"%s\"" -#: fe-connect.c:2690 +#: fe-connect.c:3060 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "не вдалося перекласти ім’я хоста \"%s\" в адресу: %s" -#: fe-connect.c:2702 +#: fe-connect.c:3072 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "не вдалося проаналізувати адресу мережі \"%s\": %s" -#: fe-connect.c:2713 +#: fe-connect.c:3083 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "Шлях Unix-сокету \"%s\" занадто довгий (максимум %d байтів)" -#: fe-connect.c:2727 +#: fe-connect.c:3097 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "не вдалося перекласти шлях Unix-сокету \"%s\" в адресу: %s" -#: fe-connect.c:2901 +#: fe-connect.c:3263 fe-connect.c:4710 +#, c-format +msgid "GSSAPI encryption required but it is not supported over a local socket" +msgstr "Потрібне шифрування GSSAPI, але воно не підтримується над локальним сокетом" + +#: fe-connect.c:3271 fe-connect.c:4839 +#, c-format +msgid "GSSAPI encryption required but no credential cache" +msgstr "Шифрування GSSAPI необхідне, але немає кешу облікових даних" + +#: fe-connect.c:3339 #, c-format msgid "could not create socket: %s" msgstr "не вдалося створити сокет: %s" -#: fe-connect.c:2932 +#: fe-connect.c:3370 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "не вдалося встановити сокет у режим без блокування: %s" -#: fe-connect.c:2943 +#: fe-connect.c:3381 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "не вдалося встановити сокет у режим закриття по виконанню: %s" -#: fe-connect.c:2961 -#, c-format -msgid "keepalives parameter must be an integer" -msgstr "параметр keepalives має бути цілим числом" - -#: fe-connect.c:3100 +#: fe-connect.c:3538 #, c-format msgid "could not get socket error status: %s" msgstr "не вдалося отримати статус помилки сокету: %s" -#: fe-connect.c:3127 +#: fe-connect.c:3565 #, c-format msgid "could not get client address from socket: %s" msgstr "не вдалося отримати адресу клієнта з сокету: %s" -#: fe-connect.c:3165 +#: fe-connect.c:3591 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "параметр requirepeer не підтримується на цій платформі" -#: fe-connect.c:3167 +#: fe-connect.c:3593 #, c-format msgid "could not get peer credentials: %s" msgstr "не вдалось отримати облікові дані учасника: %s" -#: fe-connect.c:3180 +#: fe-connect.c:3606 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "requirepeer вказує на \"%s\", але фактичне ім'я вузла \"%s\"" -#: fe-connect.c:3221 +#: fe-connect.c:3644 #, c-format msgid "could not send GSSAPI negotiation packet: %s" msgstr "не вдалося передати пакет узгодження протоколу GSSAPI: %s" -#: fe-connect.c:3233 -#, c-format -msgid "GSSAPI encryption required but was impossible (possibly no credential cache, no server support, or using a local socket)" -msgstr "вимагалося шифрування GSSAPI, але не було неможливим (можливо, без кешу облікових даних, підтримки сервера, або використання локального сокета)" - -#: fe-connect.c:3274 +#: fe-connect.c:3683 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "не вдалося передати пакет узгодження протоколу SSL: %s" -#: fe-connect.c:3303 +#: fe-connect.c:3709 +#, c-format +msgid "could not send cancel packet: %s" +msgstr "не вдалося надіслати запит на скасування: %s" + +#: fe-connect.c:3739 #, c-format msgid "could not send startup packet: %s" msgstr "не вдалося передати стартовий пакет: %s" -#: fe-connect.c:3378 -#, c-format +#: fe-connect.c:3812 msgid "server does not support SSL, but SSL was required" msgstr "сервер не підтримує протокол SSL, але протокол SSL вимагається" -#: fe-connect.c:3404 +#: fe-connect.c:3822 +#, c-format +msgid "server sent an error response during SSL exchange" +msgstr "сервер відповів помилкою під час обміну SSL" + +#: fe-connect.c:3827 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "отримано неприпустиму відповідь на узгодження SSL: %c" -#: fe-connect.c:3424 +#: fe-connect.c:3847 #, c-format msgid "received unencrypted data after SSL response" msgstr "отримані незашифровані дані після відповіді SSL" -#: fe-connect.c:3504 +#: fe-connect.c:3910 #, c-format +msgid "server sent an error response during GSS encryption exchange" +msgstr "сервер відповів помилкою під час обміну шифруванням GSS" + +#: fe-connect.c:3928 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "сервер не підтримує шифрування GSSAPI, але це було необхідно" -#: fe-connect.c:3515 +#: fe-connect.c:3932 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "отримано неприпустиму відповідь на узгодження GSSAPI: %c" -#: fe-connect.c:3533 +#: fe-connect.c:3954 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "отримані незашифровані дані після відповіді шифрування GSSAPI" -#: fe-connect.c:3598 +#: fe-connect.c:4015 #, c-format msgid "expected authentication request from server, but received %c" msgstr "очікувався запит автентифікації від сервера, але отримано %c" -#: fe-connect.c:3625 fe-connect.c:3794 +#: fe-connect.c:4043 fe-connect.c:4175 #, c-format msgid "received invalid authentication request" msgstr "отримано неприпустимий запит на аутентифікацію" -#: fe-connect.c:3630 fe-connect.c:3779 +#: fe-connect.c:4049 #, c-format msgid "received invalid protocol negotiation message" msgstr "отримано неприпустиме повідомлення узгодження протоколу" -#: fe-connect.c:3648 fe-connect.c:3702 +#: fe-connect.c:4068 fe-connect.c:4122 #, c-format msgid "received invalid error message" msgstr "отримано неприпустиме повідомлення про помилку" -#: fe-connect.c:3865 +#: fe-connect.c:4152 +#, c-format +msgid "received duplicate protocol negotiation message" +msgstr "отримано дубльоване повідомлення про узгодження протоколу" + +#: fe-connect.c:4254 +#, c-format +msgid "internal error: async authentication has no handler" +msgstr "внутрішня помилка: асинхронна автентифікація не має обробника" + +#: fe-connect.c:4279 +#, c-format +msgid "internal error: async cleanup did not release polling socket" +msgstr "внутрішня помилка: асинхронне очищення не звільнило приймальний сокет" + +#: fe-connect.c:4302 +#, c-format +msgid "internal error: async authentication did not set a socket for polling" +msgstr "внутрішня помилка: асинхронна автентифікація не встановила сокет для приймання" + +#: fe-connect.c:4335 #, c-format msgid "unexpected message from server during startup" msgstr "неочікуване повідомлення від сервера під час запуску" -#: fe-connect.c:3956 +#: fe-connect.c:4426 #, c-format msgid "session is read-only" msgstr "сесія доступна тільки для читання" -#: fe-connect.c:3958 +#: fe-connect.c:4428 #, c-format msgid "session is not read-only" msgstr "сесія доступна не лише для читання" -#: fe-connect.c:4011 +#: fe-connect.c:4481 #, c-format msgid "server is in hot standby mode" msgstr "сервер знаходиться у режимі hot standby" -#: fe-connect.c:4013 +#: fe-connect.c:4483 #, c-format msgid "server is not in hot standby mode" msgstr "сервер не в режимі hot standby" -#: fe-connect.c:4129 fe-connect.c:4179 +#: fe-connect.c:4608 fe-connect.c:4658 #, c-format msgid "\"%s\" failed" msgstr "\"%s\" помилка" -#: fe-connect.c:4193 +#: fe-connect.c:4672 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "неприпустимий стан підключення %d, можливо, пошкоджена пам'ять" -#: fe-connect.c:5174 +#: fe-connect.c:5509 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "неприпустима URL-адреса протоколу LDAP \"%s\": схема має бути ldap://" -#: fe-connect.c:5189 +#: fe-connect.c:5524 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "неприпустима URL-адреса протоколу LDAP \"%s\": відсутнє унікальне ім'я" -#: fe-connect.c:5201 fe-connect.c:5259 +#: fe-connect.c:5536 fe-connect.c:5594 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "неприпустима URL-адреса протоколу LDAP \"%s\": має бути лише один атрибут" -#: fe-connect.c:5213 fe-connect.c:5275 +#: fe-connect.c:5548 fe-connect.c:5610 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "неприпустима URL-адреса протоколу LDAP \"%s\": відсутня область пошуку (base/one/sub)" -#: fe-connect.c:5225 +#: fe-connect.c:5560 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "неприпустима URL-адреса протоколу LDAP \"%s\": відсутній фільтр" -#: fe-connect.c:5247 +#: fe-connect.c:5582 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "неприпустима URL-адреса протоколу LDAP \"%s\": неприпустимий номер порту" -#: fe-connect.c:5284 +#: fe-connect.c:5619 #, c-format msgid "could not create LDAP structure" msgstr "не вдалось створити структуру LDAP" -#: fe-connect.c:5359 +#: fe-connect.c:5694 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "помилка підстановки на сервері протоколу LDAP: %s" -#: fe-connect.c:5369 +#: fe-connect.c:5704 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "знайдено більше одного входження при підстановці протоколу LDAP" -#: fe-connect.c:5371 fe-connect.c:5382 +#: fe-connect.c:5706 fe-connect.c:5717 #, c-format msgid "no entry found on LDAP lookup" msgstr "не знайдено входження при підстановці протоколу LDAP" -#: fe-connect.c:5392 fe-connect.c:5404 +#: fe-connect.c:5727 fe-connect.c:5739 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "атрибут не має значення при підстановці протоколу LDAP" -#: fe-connect.c:5455 fe-connect.c:5474 fe-connect.c:5998 +#: fe-connect.c:5753 +#, c-format +msgid "connection info string size exceeds the maximum allowed (%d)" +msgstr "розмір рядка з'єднання з інформацією перевищує максимально дозволену (%d)" + +#: fe-connect.c:5804 fe-connect.c:5823 fe-connect.c:6347 #, c-format msgid "missing \"=\" after \"%s\" in connection info string" msgstr "відсутній \"=\" після \"%s\" у рядку інформації про підключення" -#: fe-connect.c:5545 fe-connect.c:6181 fe-connect.c:6979 +#: fe-connect.c:5894 fe-connect.c:6530 fe-connect.c:7360 #, c-format msgid "invalid connection option \"%s\"" msgstr "неприпустимий параметр підключення \"%s\"" -#: fe-connect.c:5560 fe-connect.c:6046 +#: fe-connect.c:5909 fe-connect.c:6395 #, c-format msgid "unterminated quoted string in connection info string" msgstr "відкриті лапки у рядку інформації про підключення" -#: fe-connect.c:5640 +#: fe-connect.c:5989 #, c-format msgid "definition of service \"%s\" not found" msgstr "не знайдено визначення сервера \"%s\"" -#: fe-connect.c:5666 +#: fe-connect.c:6015 #, c-format msgid "service file \"%s\" not found" msgstr "не знайдено сервісний файл \"%s\"" -#: fe-connect.c:5679 +#: fe-connect.c:6028 #, c-format msgid "line %d too long in service file \"%s\"" msgstr "рядок %d занадто довгий у сервісному файлі \"%s\"" -#: fe-connect.c:5750 fe-connect.c:5793 +#: fe-connect.c:6099 fe-connect.c:6142 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "синтаксична помилка у сервісному файлі \"%s\", рядок %d" -#: fe-connect.c:5761 +#: fe-connect.c:6110 #, c-format msgid "nested service specifications not supported in service file \"%s\", line %d" msgstr "вкладені сервісні специфікації не підтримуються у сервісному файлі \"%s\", рядок %d" -#: fe-connect.c:6500 +#: fe-connect.c:6849 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "у внутрішню процедуру аналізу рядка передано помилковий URI: \"%s\"" -#: fe-connect.c:6577 +#: fe-connect.c:6926 #, c-format msgid "end of string reached when looking for matching \"]\" in IPv6 host address in URI: \"%s\"" msgstr "досягнуто кінця рядка під час пошуку відповідного \"]\" в адресі IPv6 URI: \"%s\"" -#: fe-connect.c:6584 +#: fe-connect.c:6933 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "IPv6 адреса хоста не може бути порожньою в URI: \"%s\"" -#: fe-connect.c:6599 +#: fe-connect.c:6948 #, c-format msgid "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): \"%s\"" msgstr "неочікуваний символ \"%c\" на позиції %d в URI (очікувалося \":\" або \"/\"): \"%s\"" -#: fe-connect.c:6728 +#: fe-connect.c:7077 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "зайвий розділювач ключа/значення \"=\" в параметрі запиту URI: \"%s\"" -#: fe-connect.c:6748 +#: fe-connect.c:7097 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "відсутній розділювач ключа/значення \"=\" у параметрі запиту URI: \"%s\"" -#: fe-connect.c:6800 +#: fe-connect.c:7149 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "неприпустимий параметр запиту URI: \"%s\"" -#: fe-connect.c:6874 +#: fe-connect.c:7233 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "неприпустимий токен, закодований відсотками: \"%s\"" -#: fe-connect.c:6884 +#: fe-connect.c:7243 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "неприпустиме значення %%00 в відсотковому значенні: \"%s\"" -#: fe-connect.c:7248 +#: fe-connect.c:7265 +#, c-format +msgid "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" +msgstr "знайдено неочікувані пробіли в \"%s\", використовуйте пробіли, закодовані відсотками (%%20)" + +#: fe-connect.c:7641 msgid "connection pointer is NULL\n" msgstr "нульове значення вказівника підключення \n" -#: fe-connect.c:7256 fe-exec.c:710 fe-exec.c:972 fe-exec.c:3321 -#: fe-protocol3.c:969 fe-protocol3.c:1002 +#: fe-connect.c:7649 fe-exec.c:718 fe-exec.c:980 fe-exec.c:3475 +#: fe-protocol3.c:1006 fe-protocol3.c:1039 msgid "out of memory\n" msgstr "недостатньо пам'яті\n" -#: fe-connect.c:7547 +#: fe-connect.c:7951 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "ПОПЕРЕДЖЕННЯ: файл паролів \"%s\" не є простим файлом\n" -#: fe-connect.c:7556 +#: fe-connect.c:7961 #, c-format msgid "WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n" msgstr "ПОПЕРЕДЖЕННЯ: до файлу паролів \"%s\" мають доступ група або всі; дозволи мають бути u=rw (0600) або менше\n" -#: fe-connect.c:7663 +#: fe-connect.c:8065 #, c-format msgid "password retrieved from file \"%s\"" msgstr "пароль отримано з файлу \"%s\"" -#: fe-exec.c:466 fe-exec.c:3395 +#: fe-connect.c:8231 +#, c-format +msgid "invalid integer value \"%s\" for connection option \"%s\"" +msgstr "неприпустиме ціле значення \"%s\" для параметра з'єднання \"%s\"" + +#: fe-exec.c:469 fe-exec.c:3549 #, c-format msgid "row number %d is out of range 0..%d" msgstr "число рядків %d поза діапазоном 0..%d" -#: fe-exec.c:528 fe-protocol3.c:1971 +#: fe-exec.c:531 fe-protocol3.c:2140 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:831 +#: fe-exec.c:839 #, c-format msgid "write to server failed" msgstr "не вдалося записати на сервер" -#: fe-exec.c:871 +#: fe-exec.c:879 #, c-format msgid "no error text available" msgstr "немає доступного тексту помилки" -#: fe-exec.c:960 +#: fe-exec.c:968 msgid "NOTICE" msgstr "ПОВІДОМЛЕННЯ" -#: fe-exec.c:1018 +#: fe-exec.c:1026 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult не може підтримувати більше ніж INT_MAX кортежів" -#: fe-exec.c:1030 +#: fe-exec.c:1038 msgid "size_t overflow" msgstr "переповнення size_t" -#: fe-exec.c:1446 fe-exec.c:1515 fe-exec.c:1561 +#: fe-exec.c:1454 fe-exec.c:1523 fe-exec.c:1569 #, c-format msgid "command string is a null pointer" msgstr "рядок команди є нульовим вказівником" -#: fe-exec.c:1452 fe-exec.c:2883 +#: fe-exec.c:1460 fe-exec.c:3019 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%s не дозволено в режимі конвеєра" -#: fe-exec.c:1520 fe-exec.c:1566 fe-exec.c:1660 +#: fe-exec.c:1528 fe-exec.c:1574 fe-exec.c:1668 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "кількість параметрів має бути між 0 і %d" -#: fe-exec.c:1556 fe-exec.c:1655 +#: fe-exec.c:1564 fe-exec.c:1663 #, c-format msgid "statement name is a null pointer" msgstr "ім’я оператора є пустим вказівником" -#: fe-exec.c:1697 fe-exec.c:3241 +#: fe-exec.c:1705 fe-exec.c:3395 #, c-format msgid "no connection to the server" msgstr "немає з'єднання з сервером" -#: fe-exec.c:1705 fe-exec.c:3249 +#: fe-exec.c:1713 fe-exec.c:3403 #, c-format msgid "another command is already in progress" msgstr "інша команда вже виконується" -#: fe-exec.c:1735 +#: fe-exec.c:1743 #, c-format msgid "cannot queue commands during COPY" msgstr "не можна поставити в чергу команди під час COPY" -#: fe-exec.c:1852 +#: fe-exec.c:1862 #, c-format msgid "length must be given for binary parameter" msgstr "для бінарного параметра має бути надана довжина" -#: fe-exec.c:2166 +#: fe-exec.c:2221 #, c-format msgid "unexpected asyncStatus: %d" msgstr "неочікуваний asyncStatus: %d" -#: fe-exec.c:2322 +#: fe-exec.c:2377 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "функції синхронного виконання команд заборонені в режимі конвеєра" -#: fe-exec.c:2339 +#: fe-exec.c:2394 msgid "COPY terminated by new PQexec" msgstr "COPY завершено новим PQexec" -#: fe-exec.c:2355 +#: fe-exec.c:2410 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec не дозволяється під час COPY BOTH" -#: fe-exec.c:2581 fe-exec.c:2636 fe-exec.c:2704 fe-protocol3.c:1902 +#: fe-exec.c:2646 +#, c-format +msgid "unrecognized message type \"%c\"" +msgstr "нерозпізнаний тип повідомлення \"%c\"" + +#: fe-exec.c:2718 fe-exec.c:2772 fe-exec.c:2840 fe-protocol3.c:2071 #, c-format msgid "no COPY in progress" msgstr "немає COPY у процесі" -#: fe-exec.c:2890 +#: fe-exec.c:3026 #, c-format msgid "connection in wrong state" msgstr "підключення у неправильному стані" -#: fe-exec.c:2933 +#: fe-exec.c:3069 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "не можна увійти в режим конвеєра, підключення не в очікуванні" -#: fe-exec.c:2969 fe-exec.c:2990 +#: fe-exec.c:3105 fe-exec.c:3126 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "не можна вийти з режиму конвеєра з незібраними результатами" -#: fe-exec.c:2973 +#: fe-exec.c:3109 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "не можна вийти з режиму конвеєра, коли зайнято" -#: fe-exec.c:2984 +#: fe-exec.c:3120 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "не можна вийти з режиму конвеєра під час COPY" -#: fe-exec.c:3175 +#: fe-exec.c:3319 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "неможливо скористатися конвеєром не у режимі конвеєра" -#: fe-exec.c:3284 +#: fe-exec.c:3438 msgid "invalid ExecStatusType code" msgstr "неприпустимий код ExecStatusType" -#: fe-exec.c:3311 +#: fe-exec.c:3465 msgid "PGresult is not an error result\n" msgstr "PGresult не є помилковим результатом\n" -#: fe-exec.c:3379 fe-exec.c:3402 +#: fe-exec.c:3533 fe-exec.c:3556 #, c-format msgid "column number %d is out of range 0..%d" msgstr "число стовпців %d поза діапазоном 0..%d" -#: fe-exec.c:3417 +#: fe-exec.c:3571 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "число параметрів %d поза діапазоном 0..%d" -#: fe-exec.c:3728 +#: fe-exec.c:3882 #, c-format msgid "could not interpret result from server: %s" msgstr "не вдалося інтерпретувати результат від сервера: %s" -#: fe-exec.c:3993 fe-exec.c:4083 +#: fe-exec.c:4157 fe-exec.c:4292 #, c-format msgid "incomplete multibyte character" msgstr "неповний мультибайтний символ" +#: fe-exec.c:4159 fe-exec.c:4311 +#, c-format +msgid "invalid multibyte character" +msgstr "неприпустимий мультибайтний символ" + +#: fe-exec.c:4413 +#, c-format +msgid "escaped string size exceeds the maximum allowed (%zu)" +msgstr "довжина екранованого рядка перевищує максимально допустиму (%zu)" + +#: fe-exec.c:4590 +#, c-format +msgid "escaped bytea size exceeds the maximum allowed (%zu)" +msgstr "розмір bytea перевищує максимальний допустимий розмір (%zu)" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "Помилка імпорту імені у GSSAPI" @@ -978,23 +1479,18 @@ msgstr "неможливо записати до файлу \"%s\": %s" msgid "query to initialize large object functions did not return data" msgstr "запит на ініціалізацію функцій для великих об’єктів не повернув дані" -#: fe-misc.c:240 +#: fe-misc.c:239 #, c-format msgid "integer of size %lu not supported by pqGetInt" msgstr "pqGetInt не підтримує ціле число розміром %lu" -#: fe-misc.c:273 +#: fe-misc.c:272 #, c-format msgid "integer of size %lu not supported by pqPutInt" msgstr "pqPutInt не підтримує ціле число розміром %lu" -#: fe-misc.c:573 -#, c-format -msgid "connection not open" -msgstr "підключення не відкрито" - -#: fe-misc.c:751 fe-secure-openssl.c:210 fe-secure-openssl.c:316 -#: fe-secure.c:259 fe-secure.c:426 +#: fe-misc.c:791 fe-secure-openssl.c:181 fe-secure-openssl.c:287 +#: fe-secure.c:222 fe-secure.c:389 #, c-format msgid "server closed the connection unexpectedly\n" "\tThis probably means the server terminated abnormally\n" @@ -1002,174 +1498,215 @@ msgid "server closed the connection unexpectedly\n" msgstr "сервер неочікувано закрив підключення\n" " Це може означати, що сервер завершив роботу ненормально до або під час обробки запиту." -#: fe-misc.c:818 +#: fe-misc.c:858 msgid "connection not open\n" msgstr "підключення не відкрито\n" -#: fe-misc.c:1003 +#: fe-misc.c:1046 #, c-format msgid "timeout expired" msgstr "час очікування минув" -#: fe-misc.c:1047 +#: fe-misc.c:1098 #, c-format msgid "invalid socket" msgstr "неприпустимий сокет" -#: fe-misc.c:1069 +#: fe-misc.c:1121 #, c-format msgid "%s() failed: %s" msgstr "%s() помилка: %s" -#: fe-protocol3.c:182 +#: fe-protocol3.c:190 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "отримано тип повідомлення 0x%02x від сервера під час бездіяльності" -#: fe-protocol3.c:380 +#: fe-protocol3.c:403 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "сервер передав дані (повідомлення \"D\") без попереднього опису рядка (повідомлення \"T\")" -#: fe-protocol3.c:422 +#: fe-protocol3.c:445 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "неочікувана відповідь від сервера; перший отриманий символ був \"%c\"" -#: fe-protocol3.c:445 +#: fe-protocol3.c:469 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "вміст повідомлення не відповідає довжині у типі повідомлення \"%c\"" -#: fe-protocol3.c:463 +#: fe-protocol3.c:504 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "втрачено синхронізацію з сервером: отримано тип повідомлення \"%c\", довжина %d" -#: fe-protocol3.c:515 fe-protocol3.c:555 +#: fe-protocol3.c:551 fe-protocol3.c:591 msgid "insufficient data in \"T\" message" msgstr "недостатньо даних у повідомленні \"T\"" -#: fe-protocol3.c:626 fe-protocol3.c:832 +#: fe-protocol3.c:662 fe-protocol3.c:868 msgid "out of memory for query result" msgstr "недостатньо пам'яті для результату запиту" -#: fe-protocol3.c:695 +#: fe-protocol3.c:731 msgid "insufficient data in \"t\" message" msgstr "недостатньо даних у повідомленні \"t\"" -#: fe-protocol3.c:754 fe-protocol3.c:786 fe-protocol3.c:804 +#: fe-protocol3.c:790 fe-protocol3.c:822 fe-protocol3.c:840 msgid "insufficient data in \"D\" message" msgstr "зайві дані у повідомленні \"D\"" -#: fe-protocol3.c:760 +#: fe-protocol3.c:796 msgid "unexpected field count in \"D\" message" msgstr "неочікувана кількість полів у повідомленні \"D\"" -#: fe-protocol3.c:1015 +#: fe-protocol3.c:1052 msgid "no error message available\n" msgstr "немає доступного повідомлення про помилку\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1063 fe-protocol3.c:1082 +#: fe-protocol3.c:1100 fe-protocol3.c:1119 #, c-format msgid " at character %s" msgstr " в символі %s" -#: fe-protocol3.c:1095 +#: fe-protocol3.c:1132 #, c-format msgid "DETAIL: %s\n" msgstr "ДЕТАЛІ: %s\n" -#: fe-protocol3.c:1098 +#: fe-protocol3.c:1135 #, c-format msgid "HINT: %s\n" msgstr "ПІДКАЗКА: %s\n" -#: fe-protocol3.c:1101 +#: fe-protocol3.c:1138 #, c-format msgid "QUERY: %s\n" msgstr "ЗАПИТ: %s\n" -#: fe-protocol3.c:1108 +#: fe-protocol3.c:1145 #, c-format msgid "CONTEXT: %s\n" msgstr "КОНТЕКСТ: %s\n" -#: fe-protocol3.c:1117 +#: fe-protocol3.c:1154 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "ІМ'Я СХЕМИ: %s\n" -#: fe-protocol3.c:1121 +#: fe-protocol3.c:1158 #, c-format msgid "TABLE NAME: %s\n" msgstr "ІМ'Я ТАБЛИЦІ: %s\n" -#: fe-protocol3.c:1125 +#: fe-protocol3.c:1162 #, c-format msgid "COLUMN NAME: %s\n" msgstr "ІМ'Я СТОВПЦЯ: %s\n" -#: fe-protocol3.c:1129 +#: fe-protocol3.c:1166 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "ІМ'Я ТИПУ ДАНИХ: %s\n" -#: fe-protocol3.c:1133 +#: fe-protocol3.c:1170 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "ІМ'Я ОБМЕЖЕННЯ: %s\n" -#: fe-protocol3.c:1145 +#: fe-protocol3.c:1182 msgid "LOCATION: " msgstr "РОЗТАШУВАННЯ: " -#: fe-protocol3.c:1147 +#: fe-protocol3.c:1184 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1149 +#: fe-protocol3.c:1186 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1344 +#: fe-protocol3.c:1394 #, c-format msgid "LINE %d: " msgstr "РЯДОК %d: " -#: fe-protocol3.c:1418 +#: fe-protocol3.c:1456 +#, c-format +msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" +msgstr "отримано неправильне повідомлення про узгодження протоколу: сервер запросив пониження до вищої версії" + +#: fe-protocol3.c:1462 +#, c-format +msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" +msgstr "отримано неправильне повідомлення про узгодження протоколу: сервер запросив пониження до протоколу версії 3.0 і раніше" + +#: fe-protocol3.c:1469 +#, c-format +msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" +msgstr "отримано неправильне повідомлення про узгодження протоколу: сервер запросив пониження до неіснуючої версії 3.1 протоколу" + +#: fe-protocol3.c:1475 +#, c-format +msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" +msgstr "отримано неправильне повідомлення про узгодження протоколу: сервер повідомив негативну кількість непідтримуваних параметрів" + +#: fe-protocol3.c:1481 +#, c-format +msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" +msgstr "отримано неправильне повідомлення про узгодження протоколу: сервер провів узгодження, але не просить жодних змін" + +#: fe-protocol3.c:1487 +#, c-format +msgid "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" +msgstr "сервер підтримує лише версію протоколу %d.%d, але \"%s\" було встановлено на %d.%d" + +#: fe-protocol3.c:1512 +#, c-format +msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" +msgstr "отримано неправильне повідомлення про узгодження протоколу: сервер повідомив непідтримувану назву параметра без префіксу \"%s\" (\"%s\")" + +#: fe-protocol3.c:1515 +#, c-format +msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" +msgstr "отримано неправильне повідомлення про узгодження протоколу: сервер повідомив непідтримуваний параметр, який не був запитаний (\"%s\")" + +#: fe-protocol3.c:1522 +#, c-format +msgid "received invalid protocol negotiation message: message too short" +msgstr "отримано неправильне повідомлення про узгодження протоколу: повідомлення занадто коротке" + +#: fe-protocol3.c:1588 #, c-format -msgid "protocol version not supported by server: client uses %u.%u, server supports up to %u.%u" -msgstr "Версія протоколу не підтримується сервером: клієнт використовує %u.%u, сервер підтримує %u.%u" +msgid "received invalid BackendKeyData message: cancel key with length %d not allowed in protocol version 3.0 (must be 4 bytes)" +msgstr "отримано неправильне повідомлення BackendKeyData: ключ скасування з довжиною %d не дозволено для протоколу версії 3.0 (має бути 4 байти)" -#: fe-protocol3.c:1424 +#: fe-protocol3.c:1595 #, c-format -msgid "protocol extension not supported by server: %s" -msgid_plural "protocol extensions not supported by server: %s" -msgstr[0] "розширення протоколу не підтримується сервером: %s" -msgstr[1] "розширення протоколів не підтримується сервером: %s" -msgstr[2] "розширення протоколів не підтримується сервером: %s" -msgstr[3] "розширення протоколів не підтримується сервером: %s" +msgid "received invalid BackendKeyData message: cancel key with length %d is too short (minimum 4 bytes)" +msgstr "отримано неправильне повідомлення BackendKeyData: ключ скасування з довжиною %d занадто короткий (мінімум 4 байти)" -#: fe-protocol3.c:1432 +#: fe-protocol3.c:1602 #, c-format -msgid "invalid %s message" -msgstr "неприпустиме %s повідомлення" +msgid "received invalid BackendKeyData message: cancel key with length %d is too long (maximum 256 bytes)" +msgstr "отримано неправильне повідомлення BackendKeyData: ключ скасування з довжиною %d занадто довгий (максимум 256 байтів)" -#: fe-protocol3.c:1797 +#: fe-protocol3.c:1966 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: не викликати для текстового COPY OUT" -#: fe-protocol3.c:2171 +#: fe-protocol3.c:2341 #, c-format msgid "protocol error: no function result" msgstr "помилка протоколу: результат функції відсутній" -#: fe-protocol3.c:2182 +#: fe-protocol3.c:2353 #, c-format msgid "protocol error: id=0x%x" msgstr "помилка протоколу: id=0x%x" @@ -1213,251 +1750,282 @@ msgstr "серверний сертифікат \"%s\" не співпадає msgid "could not get server's host name from server certificate" msgstr "не вдалося отримати ім'я хосту від серверного сертифікату" -#: fe-secure-gssapi.c:194 +#: fe-secure-gssapi.c:201 msgid "GSSAPI wrap error" msgstr "помилка при згортанні GSSAPI" -#: fe-secure-gssapi.c:201 +#: fe-secure-gssapi.c:208 #, c-format msgid "outgoing GSSAPI message would not use confidentiality" msgstr "вихідне повідомлення GSSAPI не буде використовувати конфіденційність" -#: fe-secure-gssapi.c:208 +#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:726 #, c-format msgid "client tried to send oversize GSSAPI packet (%zu > %zu)" msgstr "клієнт намагався відправити переповнений пакет GSSAPI (%zu > %zu)" -#: fe-secure-gssapi.c:347 fe-secure-gssapi.c:589 +#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:602 #, c-format msgid "oversize GSSAPI packet sent by the server (%zu > %zu)" msgstr "переповнений пакет GSSAPI відправлений сервером (%zu > %zu)" -#: fe-secure-gssapi.c:386 +#: fe-secure-gssapi.c:393 msgid "GSSAPI unwrap error" msgstr "помилка при розгортанні GSSAPI" -#: fe-secure-gssapi.c:395 +#: fe-secure-gssapi.c:402 #, c-format msgid "incoming GSSAPI message did not use confidentiality" msgstr "вхідне повідомлення GSSAPI не використовувало конфіденційність" -#: fe-secure-gssapi.c:652 +#: fe-secure-gssapi.c:665 msgid "could not initiate GSSAPI security context" msgstr "не вдалося ініціювати контекст безпеки GSSAPI" -#: fe-secure-gssapi.c:681 +#: fe-secure-gssapi.c:715 msgid "GSSAPI size check error" msgstr "помилка перевірки розміру GSSAPI" -#: fe-secure-gssapi.c:692 -msgid "GSSAPI context establishment error" -msgstr "помилка встановлення контексту GSSAPI" - -#: fe-secure-openssl.c:214 fe-secure-openssl.c:320 fe-secure-openssl.c:1518 +#: fe-secure-openssl.c:185 fe-secure-openssl.c:291 fe-secure-openssl.c:1382 #, c-format msgid "SSL SYSCALL error: %s" msgstr "Помилка SSL SYSCALL: %s" -#: fe-secure-openssl.c:220 fe-secure-openssl.c:326 fe-secure-openssl.c:1521 +#: fe-secure-openssl.c:191 fe-secure-openssl.c:297 fe-secure-openssl.c:1385 #, c-format msgid "SSL SYSCALL error: EOF detected" msgstr "Помилка SSL SYSCALL: виявлено EOF" -#: fe-secure-openssl.c:230 fe-secure-openssl.c:336 fe-secure-openssl.c:1529 +#: fe-secure-openssl.c:201 fe-secure-openssl.c:307 fe-secure-openssl.c:1393 #, c-format msgid "SSL error: %s" msgstr "Помилка SSL: %s" -#: fe-secure-openssl.c:244 fe-secure-openssl.c:350 +#: fe-secure-openssl.c:215 fe-secure-openssl.c:321 #, c-format msgid "SSL connection has been closed unexpectedly" msgstr "SSL-з'єднання було несподівано перервано" -#: fe-secure-openssl.c:249 fe-secure-openssl.c:355 fe-secure-openssl.c:1576 +#: fe-secure-openssl.c:220 fe-secure-openssl.c:326 fe-secure-openssl.c:1440 #, c-format msgid "unrecognized SSL error code: %d" msgstr "нерозпізнаний код помилки SSL: %d" -#: fe-secure-openssl.c:398 +#: fe-secure-openssl.c:368 #, c-format msgid "could not determine server certificate signature algorithm" msgstr "не вдалося визначити алгоритм підпису сервера сертифіката" -#: fe-secure-openssl.c:418 +#: fe-secure-openssl.c:388 #, c-format msgid "could not find digest for NID %s" msgstr "не вдалося знайти дайджест для NID %s" -#: fe-secure-openssl.c:427 +#: fe-secure-openssl.c:397 #, c-format msgid "could not generate peer certificate hash" msgstr "не вдалося згенерувати хеш сертифікату вузла" -#: fe-secure-openssl.c:510 +#: fe-secure-openssl.c:479 #, c-format msgid "SSL certificate's name entry is missing" msgstr "Відсутня ім'я в сертифікаті SSL" -#: fe-secure-openssl.c:544 +#: fe-secure-openssl.c:509 #, c-format msgid "SSL certificate's address entry is missing" msgstr "відсутній елемент адреси SSL-сертифікату" -#: fe-secure-openssl.c:946 +#: fe-secure-openssl.c:715 +#, c-format +msgid "WARNING: could not open SSL key logging file \"%s\": %m\n" +msgstr "ПОПЕРЕДЖЕННЯ: не вдалося відкрити файл логування SSL ключів \"%s\": %m\n" + +#: fe-secure-openssl.c:723 +#, c-format +msgid "WARNING: could not write to SSL key logging file \"%s\": %m\n" +msgstr "ПОПЕРЕДЖЕННЯ: не вдалося записати до файлу логування SSL ключів \"%s\": %m\n" + +#: fe-secure-openssl.c:776 #, c-format msgid "could not create SSL context: %s" msgstr "не вдалося створити контекст SSL: %s" -#: fe-secure-openssl.c:988 +#: fe-secure-openssl.c:818 #, c-format msgid "invalid value \"%s\" for minimum SSL protocol version" msgstr "неприпустиме значення \"%s\" для мінімальної версії протоколу SSL" -#: fe-secure-openssl.c:998 +#: fe-secure-openssl.c:828 #, c-format msgid "could not set minimum SSL protocol version: %s" msgstr "не вдалося встановити мінімальну версію протоколу SSL: %s" -#: fe-secure-openssl.c:1014 +#: fe-secure-openssl.c:844 #, c-format msgid "invalid value \"%s\" for maximum SSL protocol version" msgstr "неприпустиме значення \"%s\" для максимальної версії протоколу SSL" -#: fe-secure-openssl.c:1024 +#: fe-secure-openssl.c:854 #, c-format msgid "could not set maximum SSL protocol version: %s" msgstr "не вдалося встановити максимальну версію протоколу SSL: %s" -#: fe-secure-openssl.c:1062 +#: fe-secure-openssl.c:892 #, c-format msgid "could not load system root certificate paths: %s" msgstr "не вдалося завантажити шляхи кореневого сертифікату системи: %s" -#: fe-secure-openssl.c:1079 +#: fe-secure-openssl.c:909 #, c-format msgid "could not read root certificate file \"%s\": %s" msgstr "не вдалося прочитати файл кореневого сертифікату \"%s\": %s" -#: fe-secure-openssl.c:1131 +#: fe-secure-openssl.c:961 #, c-format msgid "could not get home directory to locate root certificate file\n" "Either provide the file, use the system's trusted roots with sslrootcert=system, or change sslmode to disable server certificate verification." msgstr "не вдалося отримати домашній каталог, щоб знайти файл кореневого сертифікату\n" "Надайте файл, використайте системні кореневі за допомогою sslrootcert=system, або змініть sslmode, щоб вимкнути перевірку серверного сертифікату." -#: fe-secure-openssl.c:1134 +#: fe-secure-openssl.c:964 #, c-format msgid "root certificate file \"%s\" does not exist\n" "Either provide the file, use the system's trusted roots with sslrootcert=system, or change sslmode to disable server certificate verification." msgstr "файл кореневого сертифікату \"%s\" не існує\n" "Надайте файл, використайте системні кореневі за допомогою sslrootcert=system, або змініть sslmode, щоб вимкнути перевірку серверного сертифікату." -#: fe-secure-openssl.c:1169 +#: fe-secure-openssl.c:999 #, c-format msgid "could not open certificate file \"%s\": %s" msgstr "не вдалося відкрити файл сертифікату \"%s\": %s" -#: fe-secure-openssl.c:1187 +#: fe-secure-openssl.c:1017 #, c-format msgid "could not read certificate file \"%s\": %s" msgstr "не вдалося прочитати файл сертифікату \"%s\": %s" -#: fe-secure-openssl.c:1211 +#: fe-secure-openssl.c:1041 #, c-format msgid "could not establish SSL connection: %s" msgstr "не вдалося встановити SSL-підключення: %s" -#: fe-secure-openssl.c:1243 +#: fe-secure-openssl.c:1058 +#, c-format +msgid "WARNING: sslkeylogfile support requires OpenSSL\n" +msgstr "ПОПЕРЕДЖЕННЯ: підтримка sslkeylogfile вимагає OpenSSL\n" + +#: fe-secure-openssl.c:1060 +#, c-format +msgid "WARNING: libpq was not built with sslkeylogfile support\n" +msgstr "ПОПЕРЕДЖЕННЯ: libpq було скомпільовано без підтримки sslkeylogfile\n" + +#: fe-secure-openssl.c:1090 #, c-format msgid "could not set SSL Server Name Indication (SNI): %s" msgstr "не вдалося встановити позначку назви сервера SSL (SNI): %s" -#: fe-secure-openssl.c:1286 +#: fe-secure-openssl.c:1107 +#, c-format +msgid "could not set SSL ALPN extension: %s" +msgstr "не вдалося встановити розширення SSL ALPN: %s" + +#: fe-secure-openssl.c:1150 #, c-format msgid "could not load SSL engine \"%s\": %s" msgstr "не вдалося завантажити модуль SSL \"%s\": %s" -#: fe-secure-openssl.c:1297 +#: fe-secure-openssl.c:1161 #, c-format msgid "could not initialize SSL engine \"%s\": %s" msgstr "не вдалося ініціалізувати модуль SSL \"%s\": %s" -#: fe-secure-openssl.c:1312 +#: fe-secure-openssl.c:1176 #, c-format msgid "could not read private SSL key \"%s\" from engine \"%s\": %s" msgstr "не вдалося прочитати закритий ключ SSL \"%s\" з модуля \"%s\": %s" -#: fe-secure-openssl.c:1325 +#: fe-secure-openssl.c:1189 #, c-format msgid "could not load private SSL key \"%s\" from engine \"%s\": %s" msgstr "не вдалося завантажити закритий ключ SSL \"%s\" з модуля \"%s\": %s" -#: fe-secure-openssl.c:1362 +#: fe-secure-openssl.c:1226 #, c-format msgid "certificate present, but not private key file \"%s\"" msgstr "сертифікат присутній, але файл закритого ключа \"%s\" ні" -#: fe-secure-openssl.c:1365 +#: fe-secure-openssl.c:1229 #, c-format msgid "could not stat private key file \"%s\": %m" msgstr "не вдалося отримати інформацію про файл закритого ключа\"%s\": %m" -#: fe-secure-openssl.c:1373 +#: fe-secure-openssl.c:1237 #, c-format msgid "private key file \"%s\" is not a regular file" msgstr "файл закритого ключа \"%s\" не є звичайним" -#: fe-secure-openssl.c:1406 +#: fe-secure-openssl.c:1270 #, c-format msgid "private key file \"%s\" has group or world access; file must have permissions u=rw (0600) or less if owned by the current user, or permissions u=rw,g=r (0640) or less if owned by root" msgstr "файл закритого ключа \"%s\" має груповий або загальний доступ; файл повинен мати права u=rw (0600) або менше, якщо він належить поточному користувачу, або права u=rw,g=r (0640) або менше, якщо належить root" -#: fe-secure-openssl.c:1430 +#: fe-secure-openssl.c:1294 #, c-format msgid "could not load private key file \"%s\": %s" msgstr "не вдалось завантажити файл закритого ключа \"%s\": %s" -#: fe-secure-openssl.c:1446 +#: fe-secure-openssl.c:1310 #, c-format msgid "certificate does not match private key file \"%s\": %s" msgstr "сертифікат не відповідає файлу закритого ключа \"%s\": %s" -#: fe-secure-openssl.c:1515 +#: fe-secure-openssl.c:1379 #, c-format msgid "SSL error: certificate verify failed: %s" msgstr "помилка SSL: помилка перевірки сертифіката %s" -#: fe-secure-openssl.c:1560 +#: fe-secure-openssl.c:1424 #, c-format msgid "This may indicate that the server does not support any SSL protocol version between %s and %s." msgstr "Це може вказувати, що сервер не підтримує жодної версії протоколу SSL між %s і %s." -#: fe-secure-openssl.c:1593 +#: fe-secure-openssl.c:1456 +#, c-format +msgid "direct SSL connection was established without ALPN protocol negotiation extension" +msgstr "пряме SSL підключення було встановлено без розширення протоколу ALPN" + +#: fe-secure-openssl.c:1468 +#, c-format +msgid "SSL connection was established with unexpected ALPN protocol" +msgstr "SSL підключення було встановлено з неочікуваним протоколом ALPN" + +#: fe-secure-openssl.c:1485 #, c-format msgid "certificate could not be obtained: %s" msgstr "не вдалося отримати сертифікат: %s" -#: fe-secure-openssl.c:1698 +#: fe-secure-openssl.c:1564 #, c-format msgid "no SSL error reported" msgstr "немає повідомлення про помилку SSL" -#: fe-secure-openssl.c:1707 +#: fe-secure-openssl.c:1607 #, c-format msgid "SSL error code %lu" msgstr "Код помилки SSL %lu" -#: fe-secure-openssl.c:1997 +#: fe-secure-openssl.c:1909 #, c-format msgid "WARNING: sslpassword truncated\n" msgstr "ПОПЕРЕДЖЕННЯ: sslpassword скорочено\n" -#: fe-secure.c:270 +#: fe-secure.c:233 #, c-format msgid "could not receive data from server: %s" msgstr "не вдалося отримати дані з серверу: %s" -#: fe-secure.c:441 +#: fe-secure.c:404 #, c-format msgid "could not send data to server: %s" msgstr "не вдалося передати дані серверу: %s" diff --git a/src/pl/plperl/po/es.po b/src/pl/plperl/po/es.po index b547051a17c..a54ee0afc75 100644 --- a/src/pl/plperl/po/es.po +++ b/src/pl/plperl/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: plperl (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:09+0000\n" +"POT-Creation-Date: 2026-02-06 23:09+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/pl/plperl/po/uk.po b/src/pl/plperl/po/uk.po index fcb64b7d80a..5b91d1ecc91 100644 --- a/src/pl/plperl/po/uk.po +++ b/src/pl/plperl/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-02-24 00:09+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:39+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,153 +14,153 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/plperl.pot\n" -"X-Crowdin-File-ID: 1012\n" +"X-Crowdin-File: /REL_18_STABLE/plperl.pot\n" +"X-Crowdin-File-ID: 1095\n" -#: plperl.c:405 +#: plperl.c:407 msgid "If true, trusted and untrusted Perl code will be compiled in strict mode." msgstr "Якщо увімкнено, надійний і ненадійний код Perl буде скомпільований в суворому режимі." -#: plperl.c:419 +#: plperl.c:421 msgid "Perl initialization code to execute when a Perl interpreter is initialized." msgstr "Виконати ініціалізаційний код під час ініціалізації інтерпретатора Perl." -#: plperl.c:441 +#: plperl.c:443 msgid "Perl initialization code to execute once when plperl is first used." msgstr "Виконати код ініціалізації один раз під час першого використання plperl." -#: plperl.c:449 +#: plperl.c:451 msgid "Perl initialization code to execute once when plperlu is first used." msgstr "Виконати код ініціалізації один раз під час першого використання plperlu." -#: plperl.c:643 +#: plperl.c:645 #, c-format msgid "cannot allocate multiple Perl interpreters on this platform" msgstr "не можна розмістити декілька Perl інтерпретаторів на цій платформі" -#: plperl.c:666 plperl.c:850 plperl.c:856 plperl.c:973 plperl.c:985 -#: plperl.c:1028 plperl.c:1051 plperl.c:2151 plperl.c:2259 plperl.c:2327 -#: plperl.c:2390 +#: plperl.c:668 plperl.c:852 plperl.c:858 plperl.c:975 plperl.c:987 +#: plperl.c:1030 plperl.c:1053 plperl.c:2152 plperl.c:2260 plperl.c:2328 +#: plperl.c:2391 #, c-format msgid "%s" msgstr "%s" -#: plperl.c:667 +#: plperl.c:669 #, c-format msgid "while executing PostgreSQL::InServer::SPI::bootstrap" msgstr "під час виконання PostgreSQL::InServer::SPI::bootstrap" -#: plperl.c:851 +#: plperl.c:853 #, c-format msgid "while parsing Perl initialization" msgstr "під час обробки ініціалізації Perl" -#: plperl.c:857 +#: plperl.c:859 #, c-format msgid "while running Perl initialization" msgstr "під час запуску Perl ініціалізації" -#: plperl.c:974 +#: plperl.c:976 #, c-format msgid "while executing PLC_TRUSTED" msgstr "під час виконання PLC_TRUSTED" -#: plperl.c:986 +#: plperl.c:988 #, c-format msgid "while executing utf8fix" msgstr "під час виконання utf8fix" -#: plperl.c:1029 +#: plperl.c:1031 #, c-format msgid "while executing plperl.on_plperl_init" msgstr "під час виконання plperl.on_plperl_init" -#: plperl.c:1052 +#: plperl.c:1054 #, c-format msgid "while executing plperl.on_plperlu_init" msgstr "під час виконання plperl.on_plperlu_init" -#: plperl.c:1098 plperl.c:1804 +#: plperl.c:1100 plperl.c:1806 #, c-format msgid "Perl hash contains nonexistent column \"%s\"" msgstr "хеш Perl містить неіснуючу колонку \"%s\"" -#: plperl.c:1103 plperl.c:1809 +#: plperl.c:1105 plperl.c:1811 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "не вдалося встановити системний атрибут \"%s\"" -#: plperl.c:1199 plperl.c:1214 plperl.c:1231 +#: plperl.c:1201 plperl.c:1216 plperl.c:1233 #, c-format msgid "multidimensional arrays must have array expressions with matching dimensions" msgstr "для багатовимірних масивів повинні задаватись вирази з відповідними вимірами" -#: plperl.c:1204 +#: plperl.c:1206 #, c-format msgid "number of array dimensions exceeds the maximum allowed (%d)" msgstr "кількість вимірів масиву перевищує максимально дозволену (%d)" -#: plperl.c:1274 +#: plperl.c:1276 #, c-format msgid "cannot convert Perl array to non-array type %s" msgstr "неможливо конвертувати масив Perl у тип не масиву %s" -#: plperl.c:1375 +#: plperl.c:1377 #, c-format msgid "cannot convert Perl hash to non-composite type %s" msgstr "неможливо конвертувати хеш Perl у нескладений тип %s" -#: plperl.c:1397 plperl.c:3315 +#: plperl.c:1399 plperl.c:3316 #, c-format msgid "function returning record called in context that cannot accept type record" msgstr "функція, що повертає набір, викликана у контексті, що не приймає тип запис" -#: plperl.c:1458 +#: plperl.c:1460 #, c-format msgid "lookup failed for type %s" msgstr "неможливо фільтрувати для типу %s" -#: plperl.c:1779 +#: plperl.c:1781 #, c-format msgid "$_TD->{new} does not exist" msgstr "$_TD->{new} не існує" -#: plperl.c:1783 +#: plperl.c:1785 #, c-format msgid "$_TD->{new} is not a hash reference" msgstr "$_TD->{new} не є посиланням на хеш" -#: plperl.c:1814 +#: plperl.c:1816 #, c-format msgid "cannot set generated column \"%s\"" msgstr "неможливо оновити згенерований стовпець \"%s\"" -#: plperl.c:2026 plperl.c:2867 +#: plperl.c:2027 plperl.c:2865 #, c-format msgid "PL/Perl functions cannot return type %s" msgstr "функції PL/Perl не можуть повертати тип %s" -#: plperl.c:2039 plperl.c:2906 +#: plperl.c:2040 plperl.c:2904 #, c-format msgid "PL/Perl functions cannot accept type %s" msgstr "функції PL/Perl не можуть приймати тип %s" -#: plperl.c:2156 +#: plperl.c:2157 #, c-format msgid "didn't get a CODE reference from compiling function \"%s\"" msgstr "не отримано посилання CODE з функції компіляції \"%s\"" -#: plperl.c:2247 +#: plperl.c:2248 #, c-format msgid "didn't get a return item from function" msgstr "не отримано елемент результату з функції" -#: plperl.c:2291 plperl.c:2358 +#: plperl.c:2292 plperl.c:2359 #, c-format msgid "couldn't fetch $_TD" msgstr "не вдалось отримати $_TD" -#: plperl.c:2315 plperl.c:2378 +#: plperl.c:2316 plperl.c:2379 #, c-format msgid "didn't get a return item from trigger function" msgstr "не отримано елемент результату з функції-тригеру" @@ -180,47 +180,47 @@ msgstr "необхідний режим матеріалізації (materializ msgid "set-returning PL/Perl function must return reference to array or use return_next" msgstr "функція PL/Perl, що вертає набір значень, повинна посилатися на масив або використовувати return_next" -#: plperl.c:2606 +#: plperl.c:2605 #, c-format msgid "ignoring modified row in DELETE trigger" msgstr "ігнорується змінений рядок у тригері DELETE" -#: plperl.c:2614 +#: plperl.c:2613 #, c-format msgid "result of PL/Perl trigger function must be undef, \"SKIP\", or \"MODIFY\"" msgstr "результат тригерної функції PL/Perl повинен бути undef, \"SKIP\" або \"MODIFY\"" -#: plperl.c:2862 +#: plperl.c:2860 #, c-format msgid "trigger functions can only be called as triggers" msgstr "тригер-функція може викликатися лише як тригер" -#: plperl.c:3220 +#: plperl.c:3221 #, c-format msgid "query result has too many rows to fit in a Perl array" msgstr "результат запиту має забагато рядків для відповідності в масиві Perl" -#: plperl.c:3292 +#: plperl.c:3293 #, c-format msgid "cannot use return_next in a non-SETOF function" msgstr "не можна використовувати return_next в функціях, що не повертають набори даних" -#: plperl.c:3366 +#: plperl.c:3367 #, c-format msgid "SETOF-composite-returning PL/Perl function must call return_next with reference to hash" msgstr "Функція PL/Perl, що повертає набір композитних даних, повинна викликати return_next з посиланням на хеш" -#: plperl.c:4148 +#: plperl.c:4149 #, c-format msgid "PL/Perl function \"%s\"" msgstr "PL/Perl функція \"%s\"" -#: plperl.c:4160 +#: plperl.c:4161 #, c-format msgid "compilation of PL/Perl function \"%s\"" msgstr "компіляція функції PL/Perl \"%s\"" -#: plperl.c:4169 +#: plperl.c:4170 #, c-format msgid "PL/Perl anonymous code block" msgstr "анонімний блок коду PL/Perl" diff --git a/src/pl/plpgsql/src/po/es.po b/src/pl/plpgsql/src/po/es.po index bf986f7642d..e20f2d44d96 100644 --- a/src/pl/plpgsql/src/po/es.po +++ b/src/pl/plpgsql/src/po/es.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: plpgsql (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:09+0000\n" +"POT-Creation-Date: 2026-02-06 23:09+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/pl/plpgsql/src/po/uk.po b/src/pl/plpgsql/src/po/uk.po index 044dd5fa4c3..5e286b71d1b 100644 --- a/src/pl/plpgsql/src/po/uk.po +++ b/src/pl/plpgsql/src/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:09+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:09+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,177 +14,172 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/plpgsql.pot\n" -"X-Crowdin-File-ID: 998\n" +"X-Crowdin-File: /REL_18_STABLE/plpgsql.pot\n" +"X-Crowdin-File-ID: 1087\n" -#: pl_comp.c:434 pl_handler.c:496 +#: pl_comp.c:329 pl_handler.c:496 #, c-format msgid "PL/pgSQL functions cannot accept type %s" msgstr "Функції PL/pgSQL не можуть приймати тип %s" -#: pl_comp.c:526 +#: pl_comp.c:421 #, c-format msgid "could not determine actual return type for polymorphic function \"%s\"" msgstr "не вдалося визначити фактичний тип результату поліморфної функції \"%s\"" -#: pl_comp.c:556 +#: pl_comp.c:451 #, c-format msgid "trigger functions can only be called as triggers" msgstr "тригер-функція може викликатися лише як тригер" -#: pl_comp.c:560 pl_handler.c:480 +#: pl_comp.c:455 pl_handler.c:480 #, c-format msgid "PL/pgSQL functions cannot return type %s" msgstr "Функції PL/pgSQL не можуть повертати тип %s" -#: pl_comp.c:600 +#: pl_comp.c:495 #, c-format msgid "trigger functions cannot have declared arguments" msgstr "тригер-функції не можуть мати задекларованих аргументи" -#: pl_comp.c:601 +#: pl_comp.c:496 #, c-format msgid "The arguments of the trigger can be accessed through TG_NARGS and TG_ARGV instead." msgstr "Аргументи тригеру доступні через TG_NARGS та TG_ARGV замість цього." -#: pl_comp.c:734 +#: pl_comp.c:629 #, c-format msgid "event trigger functions cannot have declared arguments" msgstr "функції тригерів подій не можуть мати задекларовані аргументи" -#: pl_comp.c:998 +#: pl_comp.c:906 #, c-format msgid "compilation of PL/pgSQL function \"%s\" near line %d" msgstr "компіляція функції PL/pgSQL \"%s\" біля рядка %d" -#: pl_comp.c:1021 +#: pl_comp.c:929 #, c-format msgid "parameter name \"%s\" used more than once" msgstr "ім'я параметру «%s» використано декілька разів" -#: pl_comp.c:1135 +#: pl_comp.c:1043 #, c-format msgid "column reference \"%s\" is ambiguous" msgstr "посилання на стовпець \"%s\" є неоднозначним" -#: pl_comp.c:1137 +#: pl_comp.c:1045 #, c-format msgid "It could refer to either a PL/pgSQL variable or a table column." msgstr "Це може відноситися до змінної PL/pgSQL або стовпця таблиці." -#: pl_comp.c:1314 pl_exec.c:5260 pl_exec.c:5433 pl_exec.c:5520 pl_exec.c:5611 -#: pl_exec.c:6636 +#: pl_comp.c:1222 pl_exec.c:5252 pl_exec.c:5425 pl_exec.c:5512 pl_exec.c:5603 +#: pl_exec.c:6800 #, c-format msgid "record \"%s\" has no field \"%s\"" msgstr "запис \"%s\" не має поля \"%s\"" -#: pl_comp.c:1633 pl_gram.y:645 pl_gram.y:660 pl_gram.y:686 +#: pl_comp.c:1541 pl_gram.y:665 pl_gram.y:680 pl_gram.y:706 #, c-format msgid "variable \"%s\" does not exist" msgstr "змінної \"%s\" не існує" -#: pl_comp.c:1722 +#: pl_comp.c:1630 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "стовпець \"%s\" зв'язку \"%s\" не існує" -#: pl_comp.c:1775 +#: pl_comp.c:1683 #, c-format msgid "relation \"%s\" does not exist" msgstr "відношення \"%s\" не існує" -#: pl_comp.c:1782 pl_comp.c:1820 +#: pl_comp.c:1690 pl_comp.c:1728 #, c-format msgid "relation \"%s\" does not have a composite type" msgstr "відношення \"%s\" не має складеного типу" -#: pl_comp.c:1886 +#: pl_comp.c:1794 #, c-format msgid "variable \"%s\" has pseudo-type %s" msgstr "змінна \"%s\" має псевдотип %s" -#: pl_comp.c:2075 +#: pl_comp.c:1983 #, c-format msgid "type \"%s\" is only a shell" msgstr "тип \"%s\" є лише оболонкою" -#: pl_comp.c:2157 pl_exec.c:6937 +#: pl_comp.c:2065 pl_exec.c:7101 #, c-format msgid "type %s is not composite" msgstr "тип %s не є складеним" -#: pl_comp.c:2193 +#: pl_comp.c:2101 #, c-format msgid "could not find array type for data type %s" msgstr "не вдалося знайти тип масиву для типу даних %s" -#: pl_comp.c:2232 pl_comp.c:2285 +#: pl_comp.c:2140 pl_comp.c:2189 #, c-format msgid "unrecognized exception condition \"%s\"" msgstr "нерозпізнана умова виключення \"%s\"" -#: pl_comp.c:2514 -#, c-format -msgid "could not determine actual argument type for polymorphic function \"%s\"" -msgstr "не вдалося визначити фактичний тип аргумента поліморфної функції \"%s\"" - -#: pl_exec.c:512 pl_exec.c:951 pl_exec.c:1186 +#: pl_exec.c:523 pl_exec.c:963 pl_exec.c:1198 msgid "during initialization of execution state" msgstr "під час ініціалізації стану виконання" -#: pl_exec.c:518 +#: pl_exec.c:529 msgid "while storing call arguments into local variables" msgstr "під час зберігання аргументів виклику до локальних змінних" -#: pl_exec.c:606 pl_exec.c:1024 +#: pl_exec.c:618 pl_exec.c:1036 msgid "during function entry" msgstr "під час входу до функції" -#: pl_exec.c:629 +#: pl_exec.c:641 #, c-format msgid "control reached end of function without RETURN" msgstr "досягнуто кінця функції без RETURN" -#: pl_exec.c:635 +#: pl_exec.c:647 msgid "while casting return value to function's return type" msgstr "під час приведення значення, що повертається, до типу результата функції" -#: pl_exec.c:647 pl_exec.c:3683 +#: pl_exec.c:659 pl_exec.c:3695 #, c-format msgid "set-valued function called in context that cannot accept a set" msgstr "функція \"set-valued\" викликана в контексті, де йому немає місця" -#: pl_exec.c:652 pl_exec.c:3689 +#: pl_exec.c:664 pl_exec.c:3701 #, c-format msgid "materialize mode required, but it is not allowed in this context" msgstr "необхідний режим матеріалізації (materialize mode), але він неприпустимий у цьому контексті" -#: pl_exec.c:779 pl_exec.c:1050 pl_exec.c:1208 +#: pl_exec.c:791 pl_exec.c:1062 pl_exec.c:1220 msgid "during function exit" msgstr "під час виходу з функції" -#: pl_exec.c:834 pl_exec.c:898 pl_exec.c:3482 +#: pl_exec.c:846 pl_exec.c:910 pl_exec.c:3494 msgid "returned record type does not match expected record type" msgstr "тип запису, що повертається, не відповідає очікуваному типу" -#: pl_exec.c:1047 pl_exec.c:1205 +#: pl_exec.c:1059 pl_exec.c:1217 #, c-format msgid "control reached end of trigger procedure without RETURN" msgstr "досягнуто кінця тригерної процедури без RETURN" -#: pl_exec.c:1055 +#: pl_exec.c:1067 #, c-format msgid "trigger procedure cannot return a set" msgstr "тригерна процедура не може повернути набір" -#: pl_exec.c:1094 pl_exec.c:1122 +#: pl_exec.c:1106 pl_exec.c:1134 msgid "returned row structure does not match the structure of the triggering table" msgstr "структура рядка, що повертається, не відповідає структурі таблиці, яка викликала тригер" #. translator: last %s is a phrase such as "during statement block #. local variable initialization" #. -#: pl_exec.c:1263 +#: pl_exec.c:1275 #, c-format msgid "PL/pgSQL function %s line %d %s" msgstr "Функція PL/pgSQL %s рядок %d %s" @@ -192,288 +187,288 @@ msgstr "Функція PL/pgSQL %s рядок %d %s" #. translator: last %s is a phrase such as "while storing call #. arguments into local variables" #. -#: pl_exec.c:1274 +#: pl_exec.c:1286 #, c-format msgid "PL/pgSQL function %s %s" msgstr "Функція PL/pgSQL %s %s" #. translator: last %s is a plpgsql statement type name -#: pl_exec.c:1282 +#: pl_exec.c:1294 #, c-format msgid "PL/pgSQL function %s line %d at %s" msgstr "Функція PL/pgSQL %s рядок %d в %s" -#: pl_exec.c:1288 +#: pl_exec.c:1300 #, c-format msgid "PL/pgSQL function %s" msgstr "Функція PL/pgSQL %s" -#: pl_exec.c:1659 +#: pl_exec.c:1671 msgid "during statement block local variable initialization" msgstr "під час ініціалізації локальної змінної в блоці операторів" -#: pl_exec.c:1764 +#: pl_exec.c:1776 msgid "during statement block entry" msgstr "під час входу в блок операторів" -#: pl_exec.c:1796 +#: pl_exec.c:1808 msgid "during statement block exit" msgstr "під час виходу з блоку операторів" -#: pl_exec.c:1834 +#: pl_exec.c:1846 msgid "during exception cleanup" msgstr "під час очищення винятку" -#: pl_exec.c:2370 +#: pl_exec.c:2382 #, c-format msgid "procedure parameter \"%s\" is an output parameter but corresponding argument is not writable" msgstr "параметр процедури \"%s\" є вихідним, але відповідний аргумент не допускає запис" -#: pl_exec.c:2375 +#: pl_exec.c:2387 #, c-format msgid "procedure parameter %d is an output parameter but corresponding argument is not writable" msgstr "параметр процедури %d є вихідним, але відповідний аргумент не допускає запис" -#: pl_exec.c:2411 +#: pl_exec.c:2423 #, c-format msgid "GET STACKED DIAGNOSTICS cannot be used outside an exception handler" msgstr "GET STACKED DIAGNOSTICS не може використовуватись поза блоком обробника винятків" -#: pl_exec.c:2617 +#: pl_exec.c:2629 #, c-format msgid "case not found" msgstr "гілку не знайдено" -#: pl_exec.c:2618 +#: pl_exec.c:2630 #, c-format msgid "CASE statement is missing ELSE part." msgstr "В операторі CASE пропущено частину ELSE." -#: pl_exec.c:2711 +#: pl_exec.c:2723 #, c-format msgid "lower bound of FOR loop cannot be null" msgstr "нижня границя циклу FOR не може бути null" -#: pl_exec.c:2727 +#: pl_exec.c:2739 #, c-format msgid "upper bound of FOR loop cannot be null" msgstr "верхня границя циклу FOR не може бути null" -#: pl_exec.c:2745 +#: pl_exec.c:2757 #, c-format msgid "BY value of FOR loop cannot be null" msgstr "Значення BY циклу FOR не може бути null" -#: pl_exec.c:2751 +#: pl_exec.c:2763 #, c-format msgid "BY value of FOR loop must be greater than zero" msgstr "Значення BY циклу FOR повинно бути більше нуля" -#: pl_exec.c:2885 pl_exec.c:4693 +#: pl_exec.c:2897 pl_exec.c:4699 #, c-format msgid "cursor \"%s\" already in use" msgstr "курсор \"%s\" вже використовується" -#: pl_exec.c:2908 pl_exec.c:4763 +#: pl_exec.c:2920 pl_exec.c:4769 #, c-format msgid "arguments given for cursor without arguments" msgstr "аргументи, надані курсору без аргументів" -#: pl_exec.c:2927 pl_exec.c:4782 +#: pl_exec.c:2939 pl_exec.c:4788 #, c-format msgid "arguments required for cursor" msgstr "аргументи, необхідні для курсора" -#: pl_exec.c:3018 +#: pl_exec.c:3030 #, c-format msgid "FOREACH expression must not be null" msgstr "Вираз FOREACH не може бути null" -#: pl_exec.c:3033 +#: pl_exec.c:3045 #, c-format msgid "FOREACH expression must yield an array, not type %s" msgstr "Вираз в FOREACH повинен бути масивом, не типом %s" -#: pl_exec.c:3050 +#: pl_exec.c:3062 #, c-format msgid "slice dimension (%d) is out of the valid range 0..%d" msgstr "розмір зрізу (%d) поза припустимим діапазоном 0..%d" -#: pl_exec.c:3077 +#: pl_exec.c:3089 #, c-format msgid "FOREACH ... SLICE loop variable must be of an array type" msgstr "Змінна циклу FOREACH ... SLICE повинна бути масивом" -#: pl_exec.c:3081 +#: pl_exec.c:3093 #, c-format msgid "FOREACH loop variable must not be of an array type" msgstr "Змінна циклу FOREACH не повинна бути масивом" -#: pl_exec.c:3243 pl_exec.c:3300 pl_exec.c:3475 +#: pl_exec.c:3255 pl_exec.c:3312 pl_exec.c:3487 #, c-format msgid "cannot return non-composite value from function returning composite type" msgstr "функція, що повертає складений тип, не може повернути не складене значення" -#: pl_exec.c:3339 pl_gram.y:3375 +#: pl_exec.c:3351 pl_gram.y:3444 #, c-format msgid "cannot use RETURN NEXT in a non-SETOF function" msgstr "не можна використовувати RETURN NEXT в функціях, що не повертають набори даних" -#: pl_exec.c:3380 pl_exec.c:3512 +#: pl_exec.c:3392 pl_exec.c:3524 #, c-format msgid "wrong result type supplied in RETURN NEXT" msgstr "в RETURN NEXT вказано неправильний тип результату" -#: pl_exec.c:3418 pl_exec.c:3439 +#: pl_exec.c:3430 pl_exec.c:3451 #, c-format msgid "wrong record type supplied in RETURN NEXT" msgstr "в RETURN NEXT вказано неправильний тип запису" -#: pl_exec.c:3531 +#: pl_exec.c:3543 #, c-format msgid "RETURN NEXT must have a parameter" msgstr "RETURN NEXT повинен мати параметр" -#: pl_exec.c:3559 pl_gram.y:3439 +#: pl_exec.c:3571 pl_gram.y:3508 #, c-format msgid "cannot use RETURN QUERY in a non-SETOF function" msgstr "не можна використовувати RETURN QUERY в функціях, що не повертають набір" -#: pl_exec.c:3577 +#: pl_exec.c:3589 msgid "structure of query does not match function result type" msgstr "структура запиту не відповідає типу результата функції" -#: pl_exec.c:3632 pl_exec.c:4469 pl_exec.c:8759 +#: pl_exec.c:3644 pl_exec.c:4475 pl_exec.c:8988 #, c-format msgid "query string argument of EXECUTE is null" msgstr "текстовий аргумент запиту EXECUTE є null" -#: pl_exec.c:3717 pl_exec.c:3855 +#: pl_exec.c:3729 pl_exec.c:3867 #, c-format msgid "RAISE option already specified: %s" msgstr "Параметр RAISE вже вказано: %s" -#: pl_exec.c:3751 +#: pl_exec.c:3763 #, c-format msgid "RAISE without parameters cannot be used outside an exception handler" msgstr "RAISE без параметрів не можна використовувати поза блоком обробника винятків" -#: pl_exec.c:3845 +#: pl_exec.c:3857 #, c-format msgid "RAISE statement option cannot be null" msgstr "Параметром оператора RAISE не може бути null" -#: pl_exec.c:3915 +#: pl_exec.c:3927 #, c-format msgid "%s" msgstr "%s" -#: pl_exec.c:3970 +#: pl_exec.c:3982 #, c-format msgid "assertion failed" msgstr "порушення істинності" -#: pl_exec.c:4342 pl_exec.c:4532 +#: pl_exec.c:4348 pl_exec.c:4538 #, c-format msgid "cannot COPY to/from client in PL/pgSQL" msgstr "в PL/pgSQL не можна виконати COPY за участю клієнта" -#: pl_exec.c:4348 +#: pl_exec.c:4354 #, c-format msgid "unsupported transaction command in PL/pgSQL" msgstr "непідтримувана транзакційна команда в PL/pgSQL" -#: pl_exec.c:4371 pl_exec.c:4561 +#: pl_exec.c:4377 pl_exec.c:4567 #, c-format msgid "INTO used with a command that cannot return data" msgstr "INTO використаний з командою, що не може повертати дані" -#: pl_exec.c:4394 pl_exec.c:4584 +#: pl_exec.c:4400 pl_exec.c:4590 #, c-format msgid "query returned no rows" msgstr "запит не повернув рядки" -#: pl_exec.c:4416 pl_exec.c:4603 pl_exec.c:5755 +#: pl_exec.c:4422 pl_exec.c:4609 pl_exec.c:5747 #, c-format msgid "query returned more than one row" msgstr "запит повернув декілька рядків" -#: pl_exec.c:4418 +#: pl_exec.c:4424 #, c-format msgid "Make sure the query returns a single row, or use LIMIT 1." msgstr "Переконайтеся, що запит повертає один рядок, або використовуйте LIMIT 1." -#: pl_exec.c:4434 +#: pl_exec.c:4440 #, c-format msgid "query has no destination for result data" msgstr "запит не має призначення для даних результату" -#: pl_exec.c:4435 +#: pl_exec.c:4441 #, c-format msgid "If you want to discard the results of a SELECT, use PERFORM instead." msgstr "Якщо ви хочете відкинути результати SELECT, використайте PERFORM." -#: pl_exec.c:4524 +#: pl_exec.c:4530 #, c-format msgid "EXECUTE of SELECT ... INTO is not implemented" msgstr "EXECUTE виразу SELECT ... INTO не реалізовано" -#: pl_exec.c:4525 +#: pl_exec.c:4531 #, c-format msgid "You might want to use EXECUTE ... INTO or EXECUTE CREATE TABLE ... AS instead." msgstr "Альтернативою може стати EXECUTE ... INTO або EXECUTE CREATE TABLE ... AS." -#: pl_exec.c:4538 +#: pl_exec.c:4544 #, c-format msgid "EXECUTE of transaction commands is not implemented" msgstr "EXECUTE з транзакційними командами не реалізовано" -#: pl_exec.c:4848 pl_exec.c:4936 +#: pl_exec.c:4854 pl_exec.c:4942 #, c-format msgid "cursor variable \"%s\" is null" msgstr "змінна курсора \"%s\" дорівнює null" -#: pl_exec.c:4859 pl_exec.c:4947 +#: pl_exec.c:4865 pl_exec.c:4953 #, c-format msgid "cursor \"%s\" does not exist" msgstr "курсор \"%s\" не існує" -#: pl_exec.c:4872 +#: pl_exec.c:4878 #, c-format msgid "relative or absolute cursor position is null" msgstr "відносна або абсолютна позиція курсора дорівнює null" -#: pl_exec.c:5110 pl_exec.c:5205 +#: pl_exec.c:5102 pl_exec.c:5197 #, c-format msgid "null value cannot be assigned to variable \"%s\" declared NOT NULL" msgstr "значення null не можна призначити змінній \"%s\", оголошеній NOT NULL" -#: pl_exec.c:5186 +#: pl_exec.c:5178 #, c-format msgid "cannot assign non-composite value to a row variable" msgstr "змінній типу кортеж можна призначити лише складене значення" -#: pl_exec.c:5218 +#: pl_exec.c:5210 #, c-format msgid "cannot assign non-composite value to a record variable" msgstr "змінній типу запис можна призначити лише складене значення" -#: pl_exec.c:5269 +#: pl_exec.c:5261 #, c-format msgid "cannot assign to system column \"%s\"" msgstr "призначити значення системному стовпцю \"%s\" не можна" -#: pl_exec.c:5718 +#: pl_exec.c:5710 #, c-format msgid "query did not return data" msgstr "запит не повернув даних" -#: pl_exec.c:5719 pl_exec.c:5731 pl_exec.c:5756 pl_exec.c:5832 pl_exec.c:5837 +#: pl_exec.c:5711 pl_exec.c:5723 pl_exec.c:5748 pl_exec.c:5828 pl_exec.c:5833 #, c-format msgid "query: %s" msgstr "запит: %s" -#: pl_exec.c:5727 +#: pl_exec.c:5719 #, c-format msgid "query returned %d column" msgid_plural "query returned %d columns" @@ -482,48 +477,48 @@ msgstr[1] "запит повернув %d колонки" msgstr[2] "запит повернув %d колонок" msgstr[3] "запит повернув %d колонок" -#: pl_exec.c:5831 +#: pl_exec.c:5827 #, c-format msgid "query is SELECT INTO, but it should be plain SELECT" msgstr "запит є SELECT INTO, але має бути звичайним SELECT" -#: pl_exec.c:5836 +#: pl_exec.c:5832 #, c-format msgid "query is not a SELECT" msgstr "запит не є SELECT" -#: pl_exec.c:6650 pl_exec.c:6690 pl_exec.c:6730 +#: pl_exec.c:6814 pl_exec.c:6854 pl_exec.c:6894 #, c-format msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)" msgstr "тип параметру %d (%s) не відповідає тому, з котрим тривала підготовка плану (%s)" -#: pl_exec.c:7141 pl_exec.c:7175 pl_exec.c:7249 pl_exec.c:7275 +#: pl_exec.c:7305 pl_exec.c:7339 pl_exec.c:7413 pl_exec.c:7439 #, c-format msgid "number of source and target fields in assignment does not match" msgstr "кількість вихідних і цільових полів у присвоюванні не збігається" #. translator: %s represents a name of an extra check -#: pl_exec.c:7143 pl_exec.c:7177 pl_exec.c:7251 pl_exec.c:7277 +#: pl_exec.c:7307 pl_exec.c:7341 pl_exec.c:7415 pl_exec.c:7441 #, c-format msgid "%s check of %s is active." msgstr "%s перевірка %s активна." -#: pl_exec.c:7147 pl_exec.c:7181 pl_exec.c:7255 pl_exec.c:7281 +#: pl_exec.c:7311 pl_exec.c:7345 pl_exec.c:7419 pl_exec.c:7445 #, c-format msgid "Make sure the query returns the exact list of columns." msgstr "Переконайтеся, що запит повертає точний список стовпців." -#: pl_exec.c:7668 +#: pl_exec.c:7832 #, c-format msgid "record \"%s\" is not assigned yet" msgstr "запис \"%s\" ще не призначено" -#: pl_exec.c:7669 +#: pl_exec.c:7833 #, c-format msgid "The tuple structure of a not-yet-assigned record is indeterminate." msgstr "Для запису, котрому не призначене значення, структура кортежа не визначена." -#: pl_exec.c:8357 pl_gram.y:3498 +#: pl_exec.c:8586 pl_gram.y:3567 #, c-format msgid "variable \"%s\" is declared CONSTANT" msgstr "змінна \"%s\" оголошена як CONSTANT" @@ -560,306 +555,306 @@ msgstr "SQL-оператор" msgid "FOR over EXECUTE statement" msgstr "FOR за результатами EXECUTE" -#: pl_gram.y:485 +#: pl_gram.y:501 #, c-format msgid "block label must be placed before DECLARE, not after" msgstr "мітка блоку повинна бути розміщена до DECLARE, а не після" -#: pl_gram.y:505 +#: pl_gram.y:521 #, c-format msgid "collations are not supported by type %s" msgstr "тип %s не підтримує правила сортування" -#: pl_gram.y:524 +#: pl_gram.y:540 #, c-format msgid "variable \"%s\" must have a default value, since it's declared NOT NULL" msgstr "змінна \"%s\" повинна мати значення за замовчуванням після того, як вона оголошена як NOT NULL" -#: pl_gram.y:704 pl_gram.y:732 +#: pl_gram.y:724 pl_gram.y:752 msgid "duplicate declaration" msgstr "дублікат оголошення" -#: pl_gram.y:715 pl_gram.y:743 +#: pl_gram.y:735 pl_gram.y:763 #, c-format msgid "variable \"%s\" shadows a previously defined variable" msgstr "змінна \"%s\" приховує раніше оголошену змінну" -#: pl_gram.y:1017 +#: pl_gram.y:1040 #, c-format msgid "diagnostics item %s is not allowed in GET STACKED DIAGNOSTICS" msgstr "команда GET STACKED DIAGNOSTICS не дозволяє елемент діагностування %s" -#: pl_gram.y:1035 +#: pl_gram.y:1058 #, c-format msgid "diagnostics item %s is not allowed in GET CURRENT DIAGNOSTICS" msgstr "команда GET CURRENT DIAGNOSTICS не дозволяє елемент діагностування %s" -#: pl_gram.y:1133 +#: pl_gram.y:1156 msgid "unrecognized GET DIAGNOSTICS item" msgstr "нерозпізнаний елемент GET DIAGNOSTICS" -#: pl_gram.y:1149 pl_gram.y:3614 +#: pl_gram.y:1172 pl_gram.y:3685 #, c-format msgid "\"%s\" is not a scalar variable" msgstr "\"%s\" не є скалярною змінною" -#: pl_gram.y:1379 pl_gram.y:1572 +#: pl_gram.y:1402 pl_gram.y:1595 #, c-format msgid "loop variable of loop over rows must be a record variable or list of scalar variables" msgstr "змінна циклу по кортежах повинна бути змінною типу запис або списком скалярних змінних" -#: pl_gram.y:1414 +#: pl_gram.y:1437 #, c-format msgid "cursor FOR loop must have only one target variable" msgstr "курсор в циклі FOR повинен мати лише одну цільову змінну" -#: pl_gram.y:1421 +#: pl_gram.y:1444 #, c-format msgid "cursor FOR loop must use a bound cursor variable" msgstr "цикл курсора FOR повинен використовувати обмежуючу змінну курсора" -#: pl_gram.y:1511 +#: pl_gram.y:1534 #, c-format msgid "integer FOR loop must have only one target variable" msgstr "цілочисельний цикл FOR повинен мати лише одну цільову змінну" -#: pl_gram.y:1545 +#: pl_gram.y:1568 #, c-format msgid "cannot specify REVERSE in query FOR loop" msgstr "в циклі FOR з запитом не можна вказати REVERSE" -#: pl_gram.y:1675 +#: pl_gram.y:1700 #, c-format msgid "loop variable of FOREACH must be a known variable or list of variables" msgstr "змінній циклу FOREACH повинна бути відома змінна або список змінних" -#: pl_gram.y:1717 +#: pl_gram.y:1742 #, c-format msgid "there is no label \"%s\" attached to any block or loop enclosing this statement" msgstr "в блоку або циклу, розділеному цим оператором, немає мітки \"%s\"" -#: pl_gram.y:1725 +#: pl_gram.y:1750 #, c-format msgid "block label \"%s\" cannot be used in CONTINUE" msgstr "мітку блока \"%s\" не можна використовувати в CONTINUE" -#: pl_gram.y:1740 +#: pl_gram.y:1765 #, c-format msgid "EXIT cannot be used outside a loop, unless it has a label" msgstr "EXIT можна використовувати поза циклом, тільки з зазначенням мітки" -#: pl_gram.y:1741 +#: pl_gram.y:1766 #, c-format msgid "CONTINUE cannot be used outside a loop" msgstr "CONTINUE не можна використовувати поза циклом" -#: pl_gram.y:1765 pl_gram.y:1803 pl_gram.y:1851 pl_gram.y:3061 pl_gram.y:3149 -#: pl_gram.y:3260 pl_gram.y:4009 +#: pl_gram.y:1790 pl_gram.y:1828 pl_gram.y:1876 pl_gram.y:3136 pl_gram.y:3218 +#: pl_gram.y:3329 pl_gram.y:4081 msgid "unexpected end of function definition" msgstr "неочікуваний кінец визначення функції" -#: pl_gram.y:1871 pl_gram.y:1895 pl_gram.y:1911 pl_gram.y:1917 pl_gram.y:2042 -#: pl_gram.y:2050 pl_gram.y:2064 pl_gram.y:2159 pl_gram.y:2383 pl_gram.y:2473 -#: pl_gram.y:2632 pl_gram.y:3856 pl_gram.y:3917 pl_gram.y:3990 +#: pl_gram.y:1896 pl_gram.y:1921 pl_gram.y:1937 pl_gram.y:1943 pl_gram.y:2069 +#: pl_gram.y:2077 pl_gram.y:2092 pl_gram.y:2187 pl_gram.y:2413 pl_gram.y:2503 +#: pl_gram.y:2662 pl_gram.y:3930 pl_gram.y:3994 pl_gram.y:4062 msgid "syntax error" msgstr "синтаксична помилка" -#: pl_gram.y:1899 pl_gram.y:1901 pl_gram.y:2387 pl_gram.y:2389 +#: pl_gram.y:1925 pl_gram.y:1927 pl_gram.y:2417 pl_gram.y:2419 msgid "invalid SQLSTATE code" msgstr "неприпустимий код SQLSTATE" -#: pl_gram.y:2107 +#: pl_gram.y:2135 msgid "syntax error, expected \"FOR\"" msgstr "помилка синтаксису, очікувався \"FOR\"" -#: pl_gram.y:2168 +#: pl_gram.y:2196 #, c-format msgid "FETCH statement cannot return multiple rows" msgstr "Оператор FETCH не може повернути декілька рядків" -#: pl_gram.y:2265 +#: pl_gram.y:2293 #, c-format msgid "cursor variable must be a simple variable" msgstr "змінна-курсор повинна бути простою змінною" -#: pl_gram.y:2271 +#: pl_gram.y:2299 #, c-format msgid "variable \"%s\" must be of type cursor or refcursor" msgstr "змінна \"%s\" повинна бути типу cursor або refcursor" -#: pl_gram.y:2603 pl_gram.y:2614 +#: pl_gram.y:2633 pl_gram.y:2644 #, c-format msgid "\"%s\" is not a known variable" msgstr "\"%s\" - невідома змінна" -#: pl_gram.y:2719 pl_gram.y:2729 pl_gram.y:2911 +#: pl_gram.y:2799 pl_gram.y:2810 pl_gram.y:2986 msgid "mismatched parentheses" msgstr "неузгоджені дужки" -#: pl_gram.y:2733 +#: pl_gram.y:2814 #, c-format msgid "missing \"%s\" at end of SQL expression" msgstr "пропущено \"%s\" в кінці виразу SQL" -#: pl_gram.y:2739 +#: pl_gram.y:2820 #, c-format msgid "missing \"%s\" at end of SQL statement" msgstr "пропущено \"%s\" в кінці оператора SQL" -#: pl_gram.y:2758 +#: pl_gram.y:2839 msgid "missing expression" msgstr "пропущено вираз" -#: pl_gram.y:2760 +#: pl_gram.y:2841 msgid "missing SQL statement" msgstr "пропущений оператор SQL" -#: pl_gram.y:2889 +#: pl_gram.y:2964 msgid "syntax error, expected \"]\"" msgstr "помилка синтаксису, очікувалось \"]\"" -#: pl_gram.y:2913 +#: pl_gram.y:2988 msgid "incomplete data type declaration" msgstr "неповне оголошення типу даних" -#: pl_gram.y:2936 +#: pl_gram.y:3011 msgid "missing data type declaration" msgstr "пропущено оголошення типу даних" -#: pl_gram.y:3071 +#: pl_gram.y:3146 msgid "INTO specified more than once" msgstr "INTO вказано неодноразово" -#: pl_gram.y:3241 +#: pl_gram.y:3310 msgid "expected FROM or IN" msgstr "очікувалось FROM або IN" -#: pl_gram.y:3302 +#: pl_gram.y:3371 #, c-format msgid "RETURN cannot have a parameter in function returning set" msgstr "В функції, яка повертає набір, RETURN не може мати параметр" -#: pl_gram.y:3303 +#: pl_gram.y:3372 #, c-format msgid "Use RETURN NEXT or RETURN QUERY." msgstr "Використайте RETURN NEXT або RETURN QUERY." -#: pl_gram.y:3313 +#: pl_gram.y:3382 #, c-format msgid "RETURN cannot have a parameter in a procedure" msgstr "В процедурі RETURN не може мати параметр" -#: pl_gram.y:3318 +#: pl_gram.y:3387 #, c-format msgid "RETURN cannot have a parameter in function returning void" msgstr "В функції, яка не повертає нічого, RETURN не може мати параметр" -#: pl_gram.y:3327 +#: pl_gram.y:3396 #, c-format msgid "RETURN cannot have a parameter in function with OUT parameters" msgstr "В функції з параметрами OUT, RETURN не може мати параметр" -#: pl_gram.y:3390 +#: pl_gram.y:3459 #, c-format msgid "RETURN NEXT cannot have a parameter in function with OUT parameters" msgstr "В функції з параметрами OUT, RETURN NEXT не може мати параметр" -#: pl_gram.y:3556 +#: pl_gram.y:3625 #, c-format msgid "record variable cannot be part of multiple-item INTO list" msgstr "змінна типу запис не може бути частиною списка INTO з декількома елементами" -#: pl_gram.y:3602 +#: pl_gram.y:3673 #, c-format msgid "too many INTO variables specified" msgstr "вказано занадто багато змінних INTO" -#: pl_gram.y:3810 +#: pl_gram.y:3884 #, c-format msgid "end label \"%s\" specified for unlabeled block" msgstr "кінцева мітка \"%s\" вказана для невідміченого блоку" -#: pl_gram.y:3817 +#: pl_gram.y:3891 #, c-format msgid "end label \"%s\" differs from block's label \"%s\"" msgstr "кінцева мітка \"%s\" відрізняється від мітки блоку \"%s\"" -#: pl_gram.y:3851 +#: pl_gram.y:3925 #, c-format msgid "cursor \"%s\" has no arguments" msgstr "курсор \"%s\" не має аргументів" -#: pl_gram.y:3865 +#: pl_gram.y:3939 #, c-format msgid "cursor \"%s\" has arguments" msgstr "курсор \"%s\" має аргументи" -#: pl_gram.y:3907 +#: pl_gram.y:3984 #, c-format msgid "cursor \"%s\" has no argument named \"%s\"" msgstr "курсор \"%s\" не має аргументу \"%s\"" -#: pl_gram.y:3927 +#: pl_gram.y:4004 #, c-format msgid "value for parameter \"%s\" of cursor \"%s\" specified more than once" msgstr "значення параметра \"%s\" курсора \"%s\" вказано неодноразово" -#: pl_gram.y:3948 +#: pl_gram.y:4026 #, c-format msgid "not enough arguments for cursor \"%s\"" msgstr "недостатньо аргументів для курсора \"%s\"" -#: pl_gram.y:3955 +#: pl_gram.y:4033 #, c-format msgid "too many arguments for cursor \"%s\"" msgstr "занадто багато аргументів для курсора \"%s\"" -#: pl_gram.y:4041 +#: pl_gram.y:4113 msgid "unrecognized RAISE statement option" msgstr "нерозпізнаний параметр оператора RAISE" -#: pl_gram.y:4045 +#: pl_gram.y:4117 msgid "syntax error, expected \"=\"" msgstr "помилка синтаксису, очікувалось \"=\"" -#: pl_gram.y:4086 +#: pl_gram.y:4158 #, c-format msgid "too many parameters specified for RAISE" msgstr "занадто багато параметрів вказано для RAISE" -#: pl_gram.y:4090 +#: pl_gram.y:4162 #, c-format msgid "too few parameters specified for RAISE" msgstr "занадто мало параметрів вказано для RAISE" -#: pl_handler.c:156 +#: pl_handler.c:159 msgid "Sets handling of conflicts between PL/pgSQL variable names and table column names." msgstr "Обирає режим вирішення конфліктів між іменами змінних PL/pgSQL та іменами стовпців таблиць." -#: pl_handler.c:165 +#: pl_handler.c:168 msgid "Print information about parameters in the DETAIL part of the error messages generated on INTO ... STRICT failures." msgstr "Додає інформацію про параметри в частину DETAIL повідомлень, які виводяться під час помилок в INTO ... STRICT." -#: pl_handler.c:173 +#: pl_handler.c:176 msgid "Perform checks given in ASSERT statements." msgstr "Виконує перевірки, задані в операторах ASSERT." -#: pl_handler.c:181 +#: pl_handler.c:184 msgid "List of programming constructs that should produce a warning." msgstr "Список програмних конструкцій, які повинні видавати попередження." -#: pl_handler.c:191 +#: pl_handler.c:194 msgid "List of programming constructs that should produce an error." msgstr "Список програмних конструкцій, які повинні видавати помилку." #. translator: %s is typically the translation of "syntax error" -#: pl_scanner.c:525 +#: pl_scanner.c:543 #, c-format msgid "%s at end of input" msgstr "%s в кінці введення" #. translator: first %s is typically the translation of "syntax error" -#: pl_scanner.c:541 +#: pl_scanner.c:559 #, c-format msgid "%s at or near \"%s\"" msgstr "%s в або поблизу \"%s\"" diff --git a/src/pl/plpython/po/es.po b/src/pl/plpython/po/es.po index 08b01d6909e..06d72916610 100644 --- a/src/pl/plpython/po/es.po +++ b/src/pl/plpython/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: plpython (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:08+0000\n" +"POT-Creation-Date: 2026-02-06 23:08+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/pl/plpython/po/uk.po b/src/pl/plpython/po/uk.po index 22ef7bc349b..03834b71442 100644 --- a/src/pl/plpython/po/uk.po +++ b/src/pl/plpython/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:09+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-12-31 02:09+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,25 +14,25 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/plpython.pot\n" -"X-Crowdin-File-ID: 1014\n" +"X-Crowdin-File: /REL_18_STABLE/plpython.pot\n" +"X-Crowdin-File-ID: 1065\n" -#: plpy_cursorobject.c:72 +#: plpy_cursorobject.c:91 #, c-format msgid "plpy.cursor expected a query or a plan" msgstr "plpy.cursor очікував запит або план" -#: plpy_cursorobject.c:155 +#: plpy_cursorobject.c:177 #, c-format msgid "plpy.cursor takes a sequence as its second argument" msgstr "plpy.сursor приймає як другий аргумент послідовність" -#: plpy_cursorobject.c:171 plpy_spi.c:205 +#: plpy_cursorobject.c:193 plpy_spi.c:200 #, c-format msgid "could not execute plan" msgstr "не вдалося виконати план" -#: plpy_cursorobject.c:174 plpy_spi.c:208 +#: plpy_cursorobject.c:196 plpy_spi.c:203 #, c-format msgid "Expected sequence of %d argument, got %d: %s" msgid_plural "Expected sequence of %d arguments, got %d: %s" @@ -41,246 +41,246 @@ msgstr[1] "Очікувалась послідовність %d аргумент msgstr[2] "Очікувалась послідовність %d аргументів, отримано %d: %s" msgstr[3] "Очікувалась послідовність %d аргумента, отримано %d: %s" -#: plpy_cursorobject.c:321 +#: plpy_cursorobject.c:349 #, c-format msgid "iterating a closed cursor" msgstr "ітерація закритого курсора" -#: plpy_cursorobject.c:329 plpy_cursorobject.c:395 +#: plpy_cursorobject.c:357 plpy_cursorobject.c:423 #, c-format msgid "iterating a cursor in an aborted subtransaction" msgstr "ітерація курсора в перерваній субтранзакції" -#: plpy_cursorobject.c:387 +#: plpy_cursorobject.c:415 #, c-format msgid "fetch from a closed cursor" msgstr "витяг з закритого курсору" -#: plpy_cursorobject.c:430 plpy_spi.c:401 +#: plpy_cursorobject.c:458 plpy_spi.c:389 #, c-format msgid "query result has too many rows to fit in a Python list" msgstr "результат запиту має забагато рядків для передачі у список Python" -#: plpy_cursorobject.c:482 +#: plpy_cursorobject.c:510 #, c-format msgid "closing a cursor in an aborted subtransaction" msgstr "закриття курсора в перерваній транзакції" -#: plpy_elog.c:122 plpy_elog.c:123 plpy_plpymodule.c:530 +#: plpy_elog.c:127 plpy_elog.c:128 plpy_plpymodule.c:527 #, c-format msgid "%s" msgstr "%s" -#: plpy_exec.c:139 +#: plpy_exec.c:137 #, c-format msgid "unsupported set function return mode" msgstr "режим не підтримується для функцій, що повертають набір" -#: plpy_exec.c:140 +#: plpy_exec.c:138 #, c-format msgid "PL/Python set-returning functions only support returning one value per call." msgstr "функції PL/Python підтримують лише одне значення на виклик, коли повертають набір." -#: plpy_exec.c:153 +#: plpy_exec.c:151 #, c-format msgid "returned object cannot be iterated" msgstr "повернутий об'єкт не підтримує ітерації" -#: plpy_exec.c:154 +#: plpy_exec.c:152 #, c-format msgid "PL/Python set-returning functions must return an iterable object." msgstr "функції PL/Python повинні повертати об'єкт з підтримкою ітерації, коли повертають набір." -#: plpy_exec.c:168 +#: plpy_exec.c:166 #, c-format msgid "error fetching next item from iterator" msgstr "помилка отримання наступного елемента від ітератора" -#: plpy_exec.c:211 +#: plpy_exec.c:209 #, c-format msgid "PL/Python procedure did not return None" msgstr "процедура PL/Python не повернула None" -#: plpy_exec.c:215 +#: plpy_exec.c:213 #, c-format msgid "PL/Python function with return type \"void\" did not return None" msgstr "PL/Python функція з типом результату \"void\" не повернули None" -#: plpy_exec.c:246 +#: plpy_exec.c:244 #, c-format msgid "function returning record called in context that cannot accept type record" msgstr "функція, що повертає набір, викликана у контексті, що не приймає тип запис" -#: plpy_exec.c:392 plpy_exec.c:416 +#: plpy_exec.c:390 plpy_exec.c:414 #, c-format msgid "unexpected return value from trigger procedure" msgstr "неочікуване значення процедури тригера" -#: plpy_exec.c:393 +#: plpy_exec.c:391 #, c-format msgid "Expected None or a string." msgstr "Очікувалось None або рядок." -#: plpy_exec.c:406 +#: plpy_exec.c:404 #, c-format msgid "PL/Python trigger function returned \"MODIFY\" in a DELETE trigger -- ignored" msgstr "Тригерна функція PL/Python повернула \"MODIFY\" в тригері DELETE -- проігноровано" -#: plpy_exec.c:417 +#: plpy_exec.c:415 #, c-format msgid "Expected None, \"OK\", \"SKIP\", or \"MODIFY\"." msgstr "Очікувалось None, \"OK\", \"SKIP\" або \"MODIFY\"." -#: plpy_exec.c:468 +#: plpy_exec.c:466 #, c-format msgid "PyList_SetItem() failed, while setting up arguments" msgstr "помилка PyList_SetItem() під час встановлення параметрів" -#: plpy_exec.c:472 +#: plpy_exec.c:470 #, c-format msgid "PyDict_SetItemString() failed, while setting up arguments" msgstr "помилка PyDict_SetItemString() під час встановлення параметрів" -#: plpy_exec.c:701 +#: plpy_exec.c:699 #, c-format msgid "while creating return value" msgstr "під час створення значення результату" -#: plpy_exec.c:952 +#: plpy_exec.c:950 #, c-format msgid "TD[\"new\"] deleted, cannot modify row" msgstr "TD[\"new\"] видалено, неможливо змінити рядок" -#: plpy_exec.c:957 +#: plpy_exec.c:955 #, c-format msgid "TD[\"new\"] is not a dictionary" msgstr "TD[\"new\"] не є словником" -#: plpy_exec.c:982 +#: plpy_exec.c:980 #, c-format msgid "TD[\"new\"] dictionary key at ordinal position %d is not a string" msgstr "ключ словника TD[\"new\"] на порядковий позиції %d не є рядком" -#: plpy_exec.c:989 +#: plpy_exec.c:987 #, c-format msgid "key \"%s\" found in TD[\"new\"] does not exist as a column in the triggering row" msgstr "ключ \"%s\" знайдений у TD[\"new\"] не існує як стовпець у рядку тригера" -#: plpy_exec.c:994 +#: plpy_exec.c:992 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "не вдалося встановити системний атрибут \"%s\"" -#: plpy_exec.c:999 +#: plpy_exec.c:997 #, c-format msgid "cannot set generated column \"%s\"" msgstr "неможливо оновити згенерований стовпець \"%s\"" -#: plpy_exec.c:1057 +#: plpy_exec.c:1055 #, c-format msgid "while modifying trigger row" msgstr "під час зміни рядка тригера" -#: plpy_exec.c:1115 +#: plpy_exec.c:1107 #, c-format msgid "forcibly aborting a subtransaction that has not been exited" msgstr "примусове переривання субтранзакції, яка не вийшла" -#: plpy_main.c:109 +#: plpy_main.c:112 #, c-format msgid "multiple Python libraries are present in session" msgstr "декілька бібліотек Python присутні у сесії" -#: plpy_main.c:110 +#: plpy_main.c:113 #, c-format msgid "Only one Python major version can be used in one session." msgstr "За один сеанс може використовуватися лише одна основна версія Python." -#: plpy_main.c:122 +#: plpy_main.c:125 #, c-format msgid "untrapped error in initialization" msgstr "неопрацьована помилка під час ініціалізації" -#: plpy_main.c:145 +#: plpy_main.c:148 #, c-format msgid "could not import \"__main__\" module" msgstr "не вдалося імпортувати \"__main__\" модуль" -#: plpy_main.c:154 +#: plpy_main.c:157 #, c-format msgid "could not initialize globals" msgstr "не вдалося ініціалізувати globals" -#: plpy_main.c:352 +#: plpy_main.c:353 #, c-format msgid "PL/Python procedure \"%s\"" msgstr "PL/Python процедура \"%s\"" -#: plpy_main.c:355 +#: plpy_main.c:356 #, c-format msgid "PL/Python function \"%s\"" msgstr "PL/Python функція \"%s\"" -#: plpy_main.c:363 +#: plpy_main.c:364 #, c-format msgid "PL/Python anonymous code block" msgstr "анонімні коди блоку PL/Python" -#: plpy_plpymodule.c:168 plpy_plpymodule.c:171 +#: plpy_plpymodule.c:165 plpy_plpymodule.c:168 #, c-format msgid "could not import \"plpy\" module" msgstr "не вдалося імпортувати \"plpy\" модуль" -#: plpy_plpymodule.c:182 +#: plpy_plpymodule.c:179 #, c-format msgid "could not create the spiexceptions module" msgstr "не вдалося створити spiexceptions модуль" -#: plpy_plpymodule.c:190 +#: plpy_plpymodule.c:187 #, c-format msgid "could not add the spiexceptions module" msgstr "не вдалося додати spiexceptions модуль" -#: plpy_plpymodule.c:257 +#: plpy_plpymodule.c:254 #, c-format msgid "could not generate SPI exceptions" msgstr "не вдається створити винятки SPI" -#: plpy_plpymodule.c:425 +#: plpy_plpymodule.c:422 #, c-format msgid "could not unpack arguments in plpy.elog" msgstr "не вдалося розпакувати аргументи в plpy.elog" -#: plpy_plpymodule.c:434 +#: plpy_plpymodule.c:431 msgid "could not parse error message in plpy.elog" msgstr "не вдалося проаналізувати повідомлення про помилку в plpy.elog" -#: plpy_plpymodule.c:451 +#: plpy_plpymodule.c:448 #, c-format msgid "argument 'message' given by name and position" msgstr "аргумент 'повідомлення' виданий за ім'ям та розташуванням" -#: plpy_plpymodule.c:478 +#: plpy_plpymodule.c:475 #, c-format msgid "'%s' is an invalid keyword argument for this function" msgstr "'%s' є неприпустимим ключовим словом-аргументом для цієї функції" -#: plpy_plpymodule.c:489 plpy_plpymodule.c:495 +#: plpy_plpymodule.c:486 plpy_plpymodule.c:492 #, c-format msgid "invalid SQLSTATE code" msgstr "неприпустимий код SQLSTATE" -#: plpy_procedure.c:226 +#: plpy_procedure.c:223 #, c-format msgid "trigger functions can only be called as triggers" msgstr "тригер-функція може викликатися лише як тригер" -#: plpy_procedure.c:230 +#: plpy_procedure.c:227 #, c-format msgid "PL/Python functions cannot return type %s" msgstr "PL/Python функції не можуть повернути тип %s" -#: plpy_procedure.c:308 +#: plpy_procedure.c:305 #, c-format msgid "PL/Python functions cannot accept type %s" msgstr "PL/Python функції не можуть прийняти тип %s" @@ -295,57 +295,57 @@ msgstr "не вдалося скомпілювати функцію PL/Python \" msgid "could not compile anonymous PL/Python code block" msgstr "не вдалося скомпілювати анонімні коди блоку PL/Python" -#: plpy_resultobject.c:117 plpy_resultobject.c:143 plpy_resultobject.c:169 +#: plpy_resultobject.c:148 plpy_resultobject.c:174 plpy_resultobject.c:200 #, c-format msgid "command did not produce a result set" msgstr "команда не створила набір результатів" -#: plpy_spi.c:56 +#: plpy_spi.c:53 #, c-format msgid "second argument of plpy.prepare must be a sequence" msgstr "другий аргумент plpy.prepare має бути послідовністю" -#: plpy_spi.c:98 +#: plpy_spi.c:94 #, c-format msgid "plpy.prepare: type name at ordinal position %d is not a string" msgstr "plpy.prepare: ім'я на порядковий позиції %d не є рядком" -#: plpy_spi.c:170 +#: plpy_spi.c:166 #, c-format msgid "plpy.execute expected a query or a plan" msgstr "plpy.execute очікував запит або план" -#: plpy_spi.c:189 +#: plpy_spi.c:184 #, c-format msgid "plpy.execute takes a sequence as its second argument" msgstr "plpy.execute приймає як другий аргумент послідовність" -#: plpy_spi.c:297 +#: plpy_spi.c:285 #, c-format msgid "SPI_execute_plan failed: %s" msgstr "SPI_execute_plan не спрацював: %s" -#: plpy_spi.c:339 +#: plpy_spi.c:327 #, c-format msgid "SPI_execute failed: %s" msgstr "SPI_execute не спрацював: %s" -#: plpy_subxactobject.c:92 +#: plpy_subxactobject.c:102 #, c-format msgid "this subtransaction has already been entered" msgstr "ця субтранзакція вже почалась" -#: plpy_subxactobject.c:98 plpy_subxactobject.c:156 +#: plpy_subxactobject.c:108 plpy_subxactobject.c:166 #, c-format msgid "this subtransaction has already been exited" msgstr "ця субтранзакція вже вийшла" -#: plpy_subxactobject.c:150 +#: plpy_subxactobject.c:160 #, c-format msgid "this subtransaction has not been entered" msgstr "ця субтранзакція ще не почалася" -#: plpy_subxactobject.c:162 +#: plpy_subxactobject.c:172 #, c-format msgid "there is no subtransaction to exit from" msgstr "немає субтранзакції, щоб з неї вийти" @@ -365,87 +365,87 @@ msgstr "відсутній атрибут Decimal у модулі" msgid "conversion from numeric to Decimal failed" msgstr "не вдалося виконати перетворення з numeric на Decimal" -#: plpy_typeio.c:912 +#: plpy_typeio.c:915 #, c-format msgid "could not create bytes representation of Python object" msgstr "не вдалося створити байтову репрезентацію об'єкта Python" -#: plpy_typeio.c:1049 +#: plpy_typeio.c:1052 #, c-format msgid "could not create string representation of Python object" msgstr "не вдалося створити рядкову репрезентацію об'єкта Python" -#: plpy_typeio.c:1060 +#: plpy_typeio.c:1063 #, c-format msgid "could not convert Python object into cstring: Python string representation appears to contain null bytes" msgstr "не вдалося перетворити об'єкт Python на cstring: репрезентація рядка Python містить значення null-байти" -#: plpy_typeio.c:1157 +#: plpy_typeio.c:1160 #, c-format msgid "return value of function with array return type is not a Python sequence" msgstr "значення функції з масивом в якості результату не є послідовністю Python" -#: plpy_typeio.c:1202 +#: plpy_typeio.c:1205 #, c-format msgid "could not determine sequence length for function return value" msgstr "не вдалося визначити довжину послідовності для значення функція" -#: plpy_typeio.c:1222 plpy_typeio.c:1237 plpy_typeio.c:1253 +#: plpy_typeio.c:1225 plpy_typeio.c:1240 plpy_typeio.c:1256 #, c-format msgid "multidimensional arrays must have array expressions with matching dimensions" msgstr "для багатовимірних масивів повинні задаватись вирази з відповідними вимірами" -#: plpy_typeio.c:1227 +#: plpy_typeio.c:1230 #, c-format msgid "number of array dimensions exceeds the maximum allowed (%d)" msgstr "кількість вимірів масиву перевищує максимально дозволену (%d)" -#: plpy_typeio.c:1329 +#: plpy_typeio.c:1332 #, c-format msgid "malformed record literal: \"%s\"" msgstr "невірно сформований літерал запису: \"%s\"" -#: plpy_typeio.c:1330 +#: plpy_typeio.c:1333 #, c-format msgid "Missing left parenthesis." msgstr "Відсутня ліва дужка." -#: plpy_typeio.c:1331 plpy_typeio.c:1532 +#: plpy_typeio.c:1334 plpy_typeio.c:1535 #, c-format msgid "To return a composite type in an array, return the composite type as a Python tuple, e.g., \"[('foo',)]\"." msgstr "Щоб повернути складений тип в масиві, треба повернути композитний тип як кортеж Python, наприклад, \"[('foo',)]\"." -#: plpy_typeio.c:1378 +#: plpy_typeio.c:1381 #, c-format msgid "key \"%s\" not found in mapping" msgstr "ключ \"%s\" не знайдено в зіставленні" -#: plpy_typeio.c:1379 +#: plpy_typeio.c:1382 #, c-format msgid "To return null in a column, add the value None to the mapping with the key named after the column." msgstr "Для повернення значення null в стовпці, додайте значення None з ключом, що дорівнює імені стовпця." -#: plpy_typeio.c:1432 +#: plpy_typeio.c:1435 #, c-format msgid "length of returned sequence did not match number of columns in row" msgstr "довжина повернутої послідовності не відповідає кількості стовпців у рядку" -#: plpy_typeio.c:1530 +#: plpy_typeio.c:1533 #, c-format msgid "attribute \"%s\" does not exist in Python object" msgstr "атрибут \"%s\" не існує в об'єкті Python" -#: plpy_typeio.c:1533 +#: plpy_typeio.c:1536 #, c-format msgid "To return null in a column, let the returned object have an attribute named after column with value None." msgstr "Щоб повернути null в стовпці, результуючий об'єкт має мати атрибут з іменем стовпця зі значенням None." -#: plpy_util.c:31 +#: plpy_util.c:29 #, c-format msgid "could not convert Python Unicode object to bytes" msgstr "не вдалося конвертувати об'єкт Python Unicode в байти" -#: plpy_util.c:37 +#: plpy_util.c:35 #, c-format msgid "could not extract bytes from encoded string" msgstr "не можливо отримати байт з закодованого рядка" diff --git a/src/pl/tcl/po/es.po b/src/pl/tcl/po/es.po index ef585025506..62c863e9a45 100644 --- a/src/pl/tcl/po/es.po +++ b/src/pl/tcl/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pltcl (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-11-08 00:08+0000\n" +"POT-Creation-Date: 2026-02-06 23:08+0000\n" "PO-Revision-Date: 2025-09-21 11:42+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" diff --git a/src/pl/tcl/po/uk.po b/src/pl/tcl/po/uk.po index 6caba5446ef..d0a06f205d0 100644 --- a/src/pl/tcl/po/uk.po +++ b/src/pl/tcl/po/uk.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: postgresql\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-08-31 06:08+0000\n" -"PO-Revision-Date: 2024-09-23 19:38\n" +"POT-Creation-Date: 2025-04-01 10:38+0000\n" +"PO-Revision-Date: 2026-01-02 15:22\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -14,106 +14,106 @@ msgstr "" "X-Crowdin-Project: postgresql\n" "X-Crowdin-Project-ID: 324573\n" "X-Crowdin-Language: uk\n" -"X-Crowdin-File: /REL_17_STABLE/pltcl.pot\n" -"X-Crowdin-File-ID: 1016\n" +"X-Crowdin-File: /REL_18_STABLE/pltcl.pot\n" +"X-Crowdin-File-ID: 1079\n" -#: pltcl.c:462 +#: pltcl.c:470 msgid "PL/Tcl function to call once when pltcl is first used." msgstr "Функція PL/Tcl використовується для виклику коли pltcl вперше використаний." -#: pltcl.c:469 +#: pltcl.c:477 msgid "PL/TclU function to call once when pltclu is first used." msgstr "Функція PL/TclU використовується для виклику коли pltclu вперше використаний." -#: pltcl.c:636 +#: pltcl.c:644 #, c-format msgid "function \"%s\" is in the wrong language" msgstr "функція «%s» написана неправильною мовою" -#: pltcl.c:647 +#: pltcl.c:655 #, c-format msgid "function \"%s\" must not be SECURITY DEFINER" msgstr "функція \"%s\" не має бути SECURITY DEFINER" #. translator: %s is "pltcl.start_proc" or "pltclu.start_proc" -#: pltcl.c:681 +#: pltcl.c:689 #, c-format msgid "processing %s parameter" msgstr "обробляється параметр %s" -#: pltcl.c:834 +#: pltcl.c:841 #, c-format msgid "set-valued function called in context that cannot accept a set" msgstr "функція \"set-valued\" викликана в контексті, де йому немає місця" -#: pltcl.c:839 +#: pltcl.c:846 #, c-format msgid "materialize mode required, but it is not allowed in this context" msgstr "необхідний режим матеріалізації (materialize mode), але він неприпустимий у цьому контексті" -#: pltcl.c:1012 +#: pltcl.c:1019 #, c-format msgid "function returning record called in context that cannot accept type record" msgstr "функція, що повертає набір, викликана у контексті, що не приймає тип запис" -#: pltcl.c:1031 +#: pltcl.c:1038 #, c-format msgid "could not parse function return value: %s" msgstr "не вдалося проаналізувати значення функції: %s" -#: pltcl.c:1298 +#: pltcl.c:1304 #, c-format msgid "could not parse trigger return value: %s" msgstr "не вдалося проаналізувати значення тригера: %s" -#: pltcl.c:1383 pltcl.c:1810 +#: pltcl.c:1404 pltcl.c:1898 #, c-format msgid "%s" msgstr "%s" -#: pltcl.c:1384 +#: pltcl.c:1405 #, c-format msgid "%s\n" -"in PL/Tcl function \"%s\"" +"in PL/Tcl function %s" msgstr "%s\n" -"у функції PL/Tcl \"%s\"" +"у функції PL/Tcl %s" -#: pltcl.c:1547 +#: pltcl.c:1633 #, c-format msgid "trigger functions can only be called as triggers" msgstr "тригер-функція може викликатися лише як тригер" -#: pltcl.c:1551 +#: pltcl.c:1637 #, c-format msgid "PL/Tcl functions cannot return type %s" msgstr "Функції PL/Tcl не можуть повертати тип %s" -#: pltcl.c:1590 +#: pltcl.c:1676 #, c-format msgid "PL/Tcl functions cannot accept type %s" msgstr "Функції PL/Tcl не можуть приймати тип %s" -#: pltcl.c:1702 +#: pltcl.c:1788 #, c-format msgid "could not create internal procedure \"%s\": %s" msgstr "не вдалося створити внутрішню процедуру \"%s\": %s" -#: pltcl.c:3207 +#: pltcl.c:3298 #, c-format msgid "column name/value list must have even number of elements" msgstr "список імен і значень стовпців повинен мати парну кількість елементів" -#: pltcl.c:3225 +#: pltcl.c:3316 #, c-format msgid "column name/value list contains nonexistent column name \"%s\"" msgstr "список імен і значень стовпців містить неіснуєче ім'я стовпця \"%s\"" -#: pltcl.c:3232 +#: pltcl.c:3323 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "не вдалося встановити системний атрибут \"%s\"" -#: pltcl.c:3238 +#: pltcl.c:3329 #, c-format msgid "cannot set generated column \"%s\"" msgstr "неможливо оновити згенерований стовпець \"%s\"" diff --git a/src/port/open.c b/src/port/open.c index 4a31c5d7b77..ec0fbf29e92 100644 --- a/src/port/open.c +++ b/src/port/open.c @@ -74,13 +74,23 @@ pgwin32_open_handle(const char *fileName, int fileFlags, bool backup_semantics) /* Check that we can handle the request */ assert((fileFlags & ((O_RDONLY | O_WRONLY | O_RDWR) | O_APPEND | (O_RANDOM | O_SEQUENTIAL | O_TEMPORARY) | - _O_SHORT_LIVED | O_DSYNC | O_DIRECT | + _O_SHORT_LIVED | O_DSYNC | O_DIRECT | O_CLOEXEC | (O_CREAT | O_TRUNC | O_EXCL) | (O_TEXT | O_BINARY))) == fileFlags); sa.nLength = sizeof(sa); - sa.bInheritHandle = TRUE; sa.lpSecurityDescriptor = NULL; + /* + * If O_CLOEXEC is specified, create a non-inheritable handle. Otherwise, + * create an inheritable handle (the default Windows behavior). + * + * Note: We could instead use SetHandleInformation() after CreateFile() to + * clear HANDLE_FLAG_INHERIT, but this way avoids rare leaks in + * multi-threaded programs that create processes, just like POSIX + * O_CLOEXEC. + */ + sa.bInheritHandle = !(fileFlags & O_CLOEXEC); + while ((h = CreateFile(fileName, /* cannot use O_RDONLY, as it == 0 */ (fileFlags & O_RDWR) ? (GENERIC_WRITE | GENERIC_READ) : diff --git a/src/port/pg_crc32c_armv8_choose.c b/src/port/pg_crc32c_armv8_choose.c index ec12be1bbc3..c0001cfe2dc 100644 --- a/src/port/pg_crc32c_armv8_choose.c +++ b/src/port/pg_crc32c_armv8_choose.c @@ -26,7 +26,8 @@ #if defined(HAVE_ELF_AUX_INFO) || defined(HAVE_GETAUXVAL) #include -#if defined(__linux__) && !defined(__aarch64__) && !defined(HWCAP2_CRC32) +/* Ancient glibc releases don't include the HWCAPxxx macros in sys/auxv.h */ +#if defined(__linux__) && (defined(__aarch64__) ? !defined(HWCAP_CRC32) : !defined(HWCAP2_CRC32)) #include #endif #endif diff --git a/src/port/pg_numa.c b/src/port/pg_numa.c index 3368a43a338..540ada3f8ef 100644 --- a/src/port/pg_numa.c +++ b/src/port/pg_numa.c @@ -47,7 +47,17 @@ int pg_numa_init(void) { - int r = numa_available(); + int r; + + /* + * XXX libnuma versions before 2.0.19 don't handle EPERM by disabling + * NUMA, which then leads to unexpected failures later. This affects + * containers that disable get_mempolicy by a seccomp profile. + */ + if (get_mempolicy(NULL, NULL, 0, 0, 0) < 0 && (errno == EPERM)) + r = -1; + else + r = numa_available(); return r; } diff --git a/src/port/pg_popcount_aarch64.c b/src/port/pg_popcount_aarch64.c index e515e4d45b8..0b6b86de4d0 100644 --- a/src/port/pg_popcount_aarch64.c +++ b/src/port/pg_popcount_aarch64.c @@ -23,6 +23,10 @@ #if defined(HAVE_ELF_AUX_INFO) || defined(HAVE_GETAUXVAL) #include +/* Ancient glibc releases don't include the HWCAPxxx macros in sys/auxv.h */ +#if defined(__linux__) && !defined(HWCAP_SVE) +#include +#endif #endif #endif diff --git a/src/test/isolation/expected/eval-plan-qual.out b/src/test/isolation/expected/eval-plan-qual.out index 05fffe0d570..a122047fd2a 100644 --- a/src/test/isolation/expected/eval-plan-qual.out +++ b/src/test/isolation/expected/eval-plan-qual.out @@ -1473,3 +1473,23 @@ step s2pp4: DELETE FROM another_parttbl WHERE a = (SELECT 1); step c1: COMMIT; step s2pp4: <... completed> step c2: COMMIT; + +starting permutation: updateformergevalues mergevalues c1 c2 read +step updateformergevalues: UPDATE accounts SET balance = balance + 100; +step mergevalues: + MERGE INTO accounts + USING (VALUES ('checking', 610), ('savings', 620)) v(accountid, balance) + ON v.accountid = accounts.accountid + WHEN MATCHED THEN UPDATE SET balance = v.balance + WHEN NOT MATCHED THEN INSERT VALUES ('unmatched', -1); + +step c1: COMMIT; +step mergevalues: <... completed> +step c2: COMMIT; +step read: SELECT * FROM accounts ORDER BY accountid; +accountid|balance|balance2 +---------+-------+-------- +checking | 610| 1220 +savings | 620| 1240 +(2 rows) + diff --git a/src/test/isolation/expected/insert-conflict-do-update-4.out b/src/test/isolation/expected/insert-conflict-do-update-4.out new file mode 100644 index 00000000000..6e96e0d12da --- /dev/null +++ b/src/test/isolation/expected/insert-conflict-do-update-4.out @@ -0,0 +1,63 @@ +Parsed test spec with 2 sessions + +starting permutation: lock2 insert1 update2a c2 select1 c1 +step lock2: SELECT * FROM upsert WHERE i = 1 FOR UPDATE; +i| j| k +-+--+--- +1|10|100 +(1 row) + +step insert1: INSERT INTO upsert VALUES (1, 11, 111) + ON CONFLICT (i) DO UPDATE SET k = EXCLUDED.k; +step update2a: UPDATE upsert SET i = i + 10 WHERE i = 1; +step c2: COMMIT; +step insert1: <... completed> +step select1: SELECT * FROM upsert; + i| j| k +--+--+--- +11|10|100 + 1|11|111 +(2 rows) + +step c1: COMMIT; + +starting permutation: lock2 insert1 update2b c2 select1 c1 +step lock2: SELECT * FROM upsert WHERE i = 1 FOR UPDATE; +i| j| k +-+--+--- +1|10|100 +(1 row) + +step insert1: INSERT INTO upsert VALUES (1, 11, 111) + ON CONFLICT (i) DO UPDATE SET k = EXCLUDED.k; +step update2b: UPDATE upsert SET i = i + 150 WHERE i = 1; +step c2: COMMIT; +step insert1: <... completed> +step select1: SELECT * FROM upsert; + i| j| k +---+--+--- + 1|11|111 +151|10|100 +(2 rows) + +step c1: COMMIT; + +starting permutation: lock2 insert1 delete2 c2 select1 c1 +step lock2: SELECT * FROM upsert WHERE i = 1 FOR UPDATE; +i| j| k +-+--+--- +1|10|100 +(1 row) + +step insert1: INSERT INTO upsert VALUES (1, 11, 111) + ON CONFLICT (i) DO UPDATE SET k = EXCLUDED.k; +step delete2: DELETE FROM upsert WHERE i = 1; +step c2: COMMIT; +step insert1: <... completed> +step select1: SELECT * FROM upsert; +i| j| k +-+--+--- +1|11|111 +(1 row) + +step c1: COMMIT; diff --git a/src/test/isolation/expected/merge-update.out b/src/test/isolation/expected/merge-update.out index 677263d1ec1..feceacf4818 100644 --- a/src/test/isolation/expected/merge-update.out +++ b/src/test/isolation/expected/merge-update.out @@ -57,6 +57,52 @@ key|val step c2: COMMIT; +starting permutation: merge1 c1 explain_merge2a select2 c2 +step merge1: + MERGE INTO target t + USING (SELECT 1 as key, 'merge1' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set key = t.key + 1, val = t.val || ' updated by ' || s.val; + +step c1: COMMIT; +step explain_merge2a: + SELECT explain_filter($$ + EXPLAIN (ANALYZE, COSTS OFF, TIMING OFF, SUMMARY OFF, BUFFERS OFF) + MERGE INTO target t + USING (SELECT 1 as key, 'merge2a' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set key = t.key + 1, val = t.val || ' updated by ' || s.val + WHEN NOT MATCHED BY SOURCE THEN + UPDATE set key = t.key + 1, val = t.val || ' source not matched by merge2a' + RETURNING merge_action(), old, new, t.* + $$); + +explain_filter +----------------------------------------------------------- +Merge on target t (actual rows=2.00 loops=1) + Tuples: inserted=1 updated=1 + -> Hash Full Join (actual rows=2.00 loops=1) + Hash Cond: (t.key = (1)) + -> Seq Scan on target t (actual rows=1.00 loops=1) + -> Hash (actual rows=1.00 loops=1) + -> Result (actual rows=1.00 loops=1) +(7 rows) + +step select2: SELECT * FROM target; +key|val +---+------------------------------------------------------ + 3|setup1 updated by merge1 source not matched by merge2a + 1|merge2a +(2 rows) + +step c2: COMMIT; + starting permutation: pa_merge1 c1 pa_merge2c_dup a2 step pa_merge1: MERGE INTO pa_target t @@ -117,6 +163,53 @@ key|val step c2: COMMIT; +starting permutation: merge1 explain_merge2a c1 select2 c2 +step merge1: + MERGE INTO target t + USING (SELECT 1 as key, 'merge1' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set key = t.key + 1, val = t.val || ' updated by ' || s.val; + +step explain_merge2a: + SELECT explain_filter($$ + EXPLAIN (ANALYZE, COSTS OFF, TIMING OFF, SUMMARY OFF, BUFFERS OFF) + MERGE INTO target t + USING (SELECT 1 as key, 'merge2a' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set key = t.key + 1, val = t.val || ' updated by ' || s.val + WHEN NOT MATCHED BY SOURCE THEN + UPDATE set key = t.key + 1, val = t.val || ' source not matched by merge2a' + RETURNING merge_action(), old, new, t.* + $$); + +step c1: COMMIT; +step explain_merge2a: <... completed> +explain_filter +----------------------------------------------------------- +Merge on target t (actual rows=2.00 loops=1) + Tuples: inserted=1 updated=1 + -> Hash Full Join (actual rows=2.00 loops=1) + Hash Cond: (t.key = (1)) + -> Seq Scan on target t (actual rows=1.00 loops=1) + -> Hash (actual rows=1.00 loops=1) + -> Result (actual rows=1.00 loops=1) +(7 rows) + +step select2: SELECT * FROM target; +key|val +---+------------------------------------------------------ + 3|setup1 updated by merge1 source not matched by merge2a + 1|merge2a +(2 rows) + +step c2: COMMIT; + starting permutation: merge1 merge2a a1 select2 c2 step merge1: MERGE INTO target t @@ -253,6 +346,59 @@ key|val step c2: COMMIT; +starting permutation: pa_merge1 explain_pa_merge2a c1 pa_select2 c2 +step pa_merge1: + MERGE INTO pa_target t + USING (SELECT 1 as key, 'pa_merge1' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set val = t.val || ' updated by ' || s.val; + +step explain_pa_merge2a: + SELECT explain_filter($$ + EXPLAIN (ANALYZE, COSTS OFF, TIMING OFF, SUMMARY OFF, BUFFERS OFF) + MERGE INTO pa_target t + USING (SELECT 1 as key, 'pa_merge2a' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set key = t.key + 1, val = t.val || ' updated by ' || s.val + WHEN NOT MATCHED BY SOURCE THEN + UPDATE set key = t.key + 1, val = t.val || ' source not matched by pa_merge2a' + RETURNING merge_action(), old, new, t.* + $$); + +step c1: COMMIT; +step explain_pa_merge2a: <... completed> +explain_filter +------------------------------------------------------------------ +Merge on pa_target t (actual rows=2.00 loops=1) + Merge on part1 t_1 + Merge on part2 t_2 + Merge on part3 t_3 + Tuples: updated=2 + -> Hash Full Join (actual rows=2.00 loops=1) + Hash Cond: (t.key = (1)) + -> Append (actual rows=2.00 loops=1) + -> Seq Scan on part1 t_1 (actual rows=1.00 loops=1) + -> Seq Scan on part2 t_2 (actual rows=1.00 loops=1) + -> Seq Scan on part3 t_3 (actual rows=0.00 loops=1) + -> Hash (actual rows=1.00 loops=1) + -> Result (actual rows=1.00 loops=1) +(13 rows) + +step pa_select2: SELECT * FROM pa_target; +key|val +---+-------------------------------------------------- + 2|initial updated by pa_merge1 updated by pa_merge2a + 3|initial source not matched by pa_merge2a +(2 rows) + +step c2: COMMIT; + starting permutation: pa_merge2 pa_merge2a c1 pa_select2 c2 step pa_merge2: MERGE INTO pa_target t diff --git a/src/test/isolation/isolation_schedule b/src/test/isolation/isolation_schedule index e3c669a29c7..abac824ec9e 100644 --- a/src/test/isolation/isolation_schedule +++ b/src/test/isolation/isolation_schedule @@ -50,6 +50,7 @@ test: insert-conflict-do-nothing-2 test: insert-conflict-do-update test: insert-conflict-do-update-2 test: insert-conflict-do-update-3 +test: insert-conflict-do-update-4 test: insert-conflict-specconflict test: merge-insert-update test: merge-delete diff --git a/src/test/isolation/specs/eval-plan-qual.spec b/src/test/isolation/specs/eval-plan-qual.spec index 80e1e6bb307..fb57fb237dd 100644 --- a/src/test/isolation/specs/eval-plan-qual.spec +++ b/src/test/isolation/specs/eval-plan-qual.spec @@ -206,6 +206,8 @@ step sys1 { step s1pp1 { UPDATE another_parttbl SET b = b + 1 WHERE a = 1; } +step updateformergevalues { UPDATE accounts SET balance = balance + 100; } + session s2 setup { BEGIN ISOLATION LEVEL READ COMMITTED; } step wx2 { UPDATE accounts SET balance = balance + 450 WHERE accountid = 'checking' RETURNING balance; } @@ -318,6 +320,14 @@ step s2pp2 { PREPARE epd AS DELETE FROM another_parttbl WHERE a = $1; } step s2pp3 { EXECUTE epd(1); } step s2pp4 { DELETE FROM another_parttbl WHERE a = (SELECT 1); } +step mergevalues { + MERGE INTO accounts + USING (VALUES ('checking', 610), ('savings', 620)) v(accountid, balance) + ON v.accountid = accounts.accountid + WHEN MATCHED THEN UPDATE SET balance = v.balance + WHEN NOT MATCHED THEN INSERT VALUES ('unmatched', -1); +} + session s3 setup { BEGIN ISOLATION LEVEL READ COMMITTED; } step read { SELECT * FROM accounts ORDER BY accountid; } @@ -425,3 +435,6 @@ permutation sys1 sysmerge2 c1 c2 # Exercise run-time partition pruning code in an EPQ recheck permutation s1pp1 s2pp1 s2pp2 s2pp3 c1 c2 permutation s1pp1 s2pp4 c1 c2 + +# test EPQ recheck in MERGE from VALUES_RTE, cf bug #19355 +permutation updateformergevalues mergevalues c1 c2 read diff --git a/src/test/isolation/specs/insert-conflict-do-update-4.spec b/src/test/isolation/specs/insert-conflict-do-update-4.spec new file mode 100644 index 00000000000..6297b1d1d6c --- /dev/null +++ b/src/test/isolation/specs/insert-conflict-do-update-4.spec @@ -0,0 +1,42 @@ +# INSERT...ON CONFLICT DO UPDATE test with partitioned table +# +# We use SELECT FOR UPDATE to block the INSERT at the point where +# it has found an existing tuple and is attempting to update it. +# Then we can execute a conflicting update and verify the results. +# Of course, this only works in READ COMMITTED mode, else we'd get an error. + +setup +{ + CREATE TABLE upsert (i int PRIMARY KEY, j int, k int) PARTITION BY RANGE (i); + CREATE TABLE upsert_1 PARTITION OF upsert FOR VALUES FROM (1) TO (100); + CREATE TABLE upsert_2 PARTITION OF upsert FOR VALUES FROM (100) TO (200); + + INSERT INTO upsert VALUES (1, 10, 100); +} + +teardown +{ + DROP TABLE upsert; +} + +session s1 +setup { BEGIN ISOLATION LEVEL READ COMMITTED; } +step insert1 { INSERT INTO upsert VALUES (1, 11, 111) + ON CONFLICT (i) DO UPDATE SET k = EXCLUDED.k; } +step select1 { SELECT * FROM upsert; } +step c1 { COMMIT; } + +session s2 +setup { BEGIN ISOLATION LEVEL READ COMMITTED; } +step lock2 { SELECT * FROM upsert WHERE i = 1 FOR UPDATE; } +step update2a { UPDATE upsert SET i = i + 10 WHERE i = 1; } +step update2b { UPDATE upsert SET i = i + 150 WHERE i = 1; } +step delete2 { DELETE FROM upsert WHERE i = 1; } +step c2 { COMMIT; } + +# Test case where concurrent update moves the target row within the partition +permutation lock2 insert1 update2a c2 select1 c1 +# Test case where concurrent update moves the target row to another partition +permutation lock2 insert1 update2b c2 select1 c1 +# Test case where target row is concurrently deleted +permutation lock2 insert1 delete2 c2 select1 c1 diff --git a/src/test/isolation/specs/merge-update.spec b/src/test/isolation/specs/merge-update.spec index c718ff646b2..771ee5b70cf 100644 --- a/src/test/isolation/specs/merge-update.spec +++ b/src/test/isolation/specs/merge-update.spec @@ -23,12 +23,27 @@ setup INSERT INTO pa_target VALUES (1, 'initial'); INSERT INTO pa_target VALUES (2, 'initial'); + + CREATE FUNCTION explain_filter(text) RETURNS SETOF text + LANGUAGE plpgsql AS + $$ + DECLARE + ln text; + BEGIN + FOR ln IN EXECUTE $1 LOOP + -- Ignore hash memory usage because it varies depending on the system + CONTINUE WHEN (ln ~ 'Memory Usage'); + RETURN NEXT ln; + END LOOP; + END; + $$; } teardown { DROP TABLE target; DROP TABLE pa_target CASCADE; + DROP FUNCTION explain_filter; } session "s1" @@ -97,6 +112,22 @@ step "merge2a" UPDATE set key = t.key + 1, val = t.val || ' source not matched by merge2a' RETURNING merge_action(), old, new, t.*; } +step "explain_merge2a" +{ + SELECT explain_filter($$ + EXPLAIN (ANALYZE, COSTS OFF, TIMING OFF, SUMMARY OFF, BUFFERS OFF) + MERGE INTO target t + USING (SELECT 1 as key, 'merge2a' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set key = t.key + 1, val = t.val || ' updated by ' || s.val + WHEN NOT MATCHED BY SOURCE THEN + UPDATE set key = t.key + 1, val = t.val || ' source not matched by merge2a' + RETURNING merge_action(), old, new, t.* + $$); +} step "merge2b" { MERGE INTO target t @@ -130,6 +161,22 @@ step "pa_merge2a" UPDATE set key = t.key + 1, val = t.val || ' source not matched by pa_merge2a' RETURNING merge_action(), old, new, t.*; } +step "explain_pa_merge2a" +{ + SELECT explain_filter($$ + EXPLAIN (ANALYZE, COSTS OFF, TIMING OFF, SUMMARY OFF, BUFFERS OFF) + MERGE INTO pa_target t + USING (SELECT 1 as key, 'pa_merge2a' as val) s + ON s.key = t.key + WHEN NOT MATCHED THEN + INSERT VALUES (s.key, s.val) + WHEN MATCHED THEN + UPDATE set key = t.key + 1, val = t.val || ' updated by ' || s.val + WHEN NOT MATCHED BY SOURCE THEN + UPDATE set key = t.key + 1, val = t.val || ' source not matched by pa_merge2a' + RETURNING merge_action(), old, new, t.* + $$); +} # MERGE proceeds only if 'val' unchanged step "pa_merge2b_when" { @@ -160,14 +207,17 @@ permutation "merge1" "c1" "select2" "c2" # One after the other, no concurrency permutation "merge1" "c1" "merge2a" "select2" "c2" +permutation "merge1" "c1" "explain_merge2a" "select2" "c2" permutation "pa_merge1" "c1" "pa_merge2c_dup" "a2" # Now with concurrency permutation "merge1" "merge2a" "c1" "select2" "c2" +permutation "merge1" "explain_merge2a" "c1" "select2" "c2" permutation "merge1" "merge2a" "a1" "select2" "c2" permutation "merge1" "merge2b" "c1" "select2" "c2" permutation "merge1" "merge2c" "c1" "select2" "c2" permutation "pa_merge1" "pa_merge2a" "c1" "pa_select2" "c2" +permutation "pa_merge1" "explain_pa_merge2a" "c1" "pa_select2" "c2" permutation "pa_merge2" "pa_merge2a" "c1" "pa_select2" "c2" # fails permutation "pa_merge2" "c1" "pa_merge2a" "pa_select2" "c2" # succeeds permutation "pa_merge3" "pa_merge2b_when" "c1" "pa_select2" "c2" # WHEN not satisfied by updated tuple diff --git a/src/test/modules/Makefile b/src/test/modules/Makefile index aa1d27bbed3..6851d7f5adf 100644 --- a/src/test/modules/Makefile +++ b/src/test/modules/Makefile @@ -16,6 +16,7 @@ SUBDIRS = \ spgist_name_ops \ test_aio \ test_bloomfilter \ + test_cloexec \ test_copy_callbacks \ test_custom_rmgrs \ test_ddl_deparse \ diff --git a/src/test/modules/gin/expected/gin_incomplete_splits.out b/src/test/modules/gin/expected/gin_incomplete_splits.out index 15574e547ac..0f3ac9a0466 100644 --- a/src/test/modules/gin/expected/gin_incomplete_splits.out +++ b/src/test/modules/gin/expected/gin_incomplete_splits.out @@ -192,3 +192,4 @@ SELECT injection_points_detach('gin-finish-incomplete-split'); (1 row) +drop extension injection_points; diff --git a/src/test/modules/gin/sql/gin_incomplete_splits.sql b/src/test/modules/gin/sql/gin_incomplete_splits.sql index ebf0f620f0c..d451257c275 100644 --- a/src/test/modules/gin/sql/gin_incomplete_splits.sql +++ b/src/test/modules/gin/sql/gin_incomplete_splits.sql @@ -148,3 +148,5 @@ select insert_n(:next_i, 10) as next_i select verify(:next_i); SELECT injection_points_detach('gin-finish-incomplete-split'); + +drop extension injection_points; diff --git a/src/test/modules/injection_points/Makefile b/src/test/modules/injection_points/Makefile index fc82cd67f6c..2e49d30f942 100644 --- a/src/test/modules/injection_points/Makefile +++ b/src/test/modules/injection_points/Makefile @@ -14,7 +14,10 @@ PGFILEDESC = "injection_points - facility for injection points" REGRESS = injection_points hashagg reindex_conc vacuum REGRESS_OPTS = --dlpath=$(top_builddir)/src/test/regress -ISOLATION = basic inplace syscache-update-pruned +ISOLATION = basic \ + inplace \ + syscache-update-pruned \ + heap_lock_update TAP_TESTS = 1 diff --git a/src/test/modules/injection_points/expected/heap_lock_update.out b/src/test/modules/injection_points/expected/heap_lock_update.out new file mode 100644 index 00000000000..1ec8d876414 --- /dev/null +++ b/src/test/modules/injection_points/expected/heap_lock_update.out @@ -0,0 +1,83 @@ +Parsed test spec with 2 sessions + +starting permutation: s1begin s1update s2lock s1abort vacuum reinsert wake +step s1begin: BEGIN; +step s1update: UPDATE t SET id = 10000 WHERE id = 1 RETURNING ctid; +ctid +----- +(1,2) +(1 row) + +step s2lock: select * from t where id = 1 for update; +step s1abort: ABORT; +step vacuum: VACUUM t; +step reinsert: + INSERT INTO t VALUES (10001) RETURNING ctid; + UPDATE t SET id = 10002 WHERE id = 10001 RETURNING ctid; + +ctid +----- +(1,2) +(1 row) + +ctid +----- +(1,3) +(1 row) + +step wake: + SELECT FROM injection_points_detach('heap_lock_updated_tuple'); + SELECT FROM injection_points_wakeup('heap_lock_updated_tuple'); + +step s2lock: <... completed> +id +-- + 1 +(1 row) + +step wake: <... completed> + +starting permutation: s1begin s1update s2lock s1abort vacuum reinsert_and_lock wake +step s1begin: BEGIN; +step s1update: UPDATE t SET id = 10000 WHERE id = 1 RETURNING ctid; +ctid +----- +(1,2) +(1 row) + +step s2lock: select * from t where id = 1 for update; +step s1abort: ABORT; +step vacuum: VACUUM t; +step reinsert_and_lock: + BEGIN; + INSERT INTO t VALUES (10001) RETURNING ctid; + SELECT ctid, * FROM t WHERE id = 1 FOR UPDATE; + COMMIT; + UPDATE t SET id = 10002 WHERE id = 10001 returning ctid; + +ctid +----- +(1,2) +(1 row) + +ctid |id +-----+-- +(0,1)| 1 +(1 row) + +ctid +----- +(1,3) +(1 row) + +step wake: + SELECT FROM injection_points_detach('heap_lock_updated_tuple'); + SELECT FROM injection_points_wakeup('heap_lock_updated_tuple'); + +step s2lock: <... completed> +id +-- + 1 +(1 row) + +step wake: <... completed> diff --git a/src/test/modules/injection_points/meson.build b/src/test/modules/injection_points/meson.build index ce778ccf9ac..a73e1fe6c34 100644 --- a/src/test/modules/injection_points/meson.build +++ b/src/test/modules/injection_points/meson.build @@ -48,6 +48,7 @@ tests += { 'basic', 'inplace', 'syscache-update-pruned', + 'heap_lock_update', ], 'runningcheck': false, # see syscache-update-pruned }, diff --git a/src/test/modules/injection_points/regress_injection.c b/src/test/modules/injection_points/regress_injection.c index 7bba1c97d0f..524790a90ed 100644 --- a/src/test/modules/injection_points/regress_injection.c +++ b/src/test/modules/injection_points/regress_injection.c @@ -50,7 +50,7 @@ removable_cutoff(PG_FUNCTION_ARGS) if (!PG_ARGISNULL(0)) rel = table_open(PG_GETARG_OID(0), AccessShareLock); - if (!rel->rd_rel->relisshared && autovacuum_start_daemon) + if (rel != NULL && !rel->rd_rel->relisshared && autovacuum_start_daemon) elog(WARNING, "removable_cutoff(non-shared-rel) can move backward under autovacuum=on"); diff --git a/src/test/modules/injection_points/specs/heap_lock_update.spec b/src/test/modules/injection_points/specs/heap_lock_update.spec new file mode 100644 index 00000000000..b3992a1eb7a --- /dev/null +++ b/src/test/modules/injection_points/specs/heap_lock_update.spec @@ -0,0 +1,117 @@ +# Test race condition in tuple locking +# +# This is a reproducer for the bug reported at: +# https://www.postgresql.org/message-id/CAOG%2BRQ74x0q%3DkgBBQ%3DmezuvOeZBfSxM1qu_o0V28bwDz3dHxLw%40mail.gmail.com +# +# The bug was that when following an update chain when locking tuples, +# we sometimes failed to check that the xmin on the next tuple matched +# the prior's xmax. If the updated tuple version was vacuumed away and +# the slot was reused for an unrelated tuple, we'd incorrectly follow +# and lock the unrelated tuple. + + +# Set up a test table with enough rows to fill a page. We need the +# UPDATE used in the test to put the new tuple on a different page, +# because otherwise the VACUUM cannot remove the aborted tuple because +# we hold a pin on the first page. +# +# The exact number of rows inserted doesn't otherwise matter, but we +# arrange things in a deterministic fashion so that the last inserted +# tuple goes to (1,1), and the updated and aborted tuple goes to +# (1,2). That way we can just memorize those ctids in the expected +# output, to verify that the test exercises the scenario we want. +setup +{ + CREATE EXTENSION injection_points; + + CREATE TABLE t (id int PRIMARY KEY); + do $$ + DECLARE + i int; + tid tid; + BEGIN + FOR i IN 1..5000 LOOP + INSERT INTO t VALUES (i) RETURNING ctid INTO tid; + IF tid = '(1,1)' THEN + RETURN; + END IF; + END LOOP; + RAISE 'expected to insert tuple to (1,1)'; + END; + $$; +} +teardown +{ + DROP TABLE t; + DROP EXTENSION injection_points; +} + +session s1 +step s1begin { BEGIN; } +step s1update { UPDATE t SET id = 10000 WHERE id = 1 RETURNING ctid; } +step s1abort { ABORT; } +step vacuum { VACUUM t; } + +# Insert a new tuple, and update it. +step reinsert { + INSERT INTO t VALUES (10001) RETURNING ctid; + UPDATE t SET id = 10002 WHERE id = 10001 RETURNING ctid; +} + +# Same as the 'reinsert' step, but for extra confusion, we also stamp +# the original tuple with the same 'xmax' as the re-inserted one. +step reinsert_and_lock { + BEGIN; + INSERT INTO t VALUES (10001) RETURNING ctid; + SELECT ctid, * FROM t WHERE id = 1 FOR UPDATE; + COMMIT; + UPDATE t SET id = 10002 WHERE id = 10001 returning ctid; +} + +step wake { + SELECT FROM injection_points_detach('heap_lock_updated_tuple'); + SELECT FROM injection_points_wakeup('heap_lock_updated_tuple'); +} + +session s2 +setup { + SELECT FROM injection_points_set_local(); + SELECT FROM injection_points_attach('heap_lock_updated_tuple', 'wait'); +} +step s2lock { select * from t where id = 1 for update; } + +permutation + # Begin transaction, update a row. Because of how we set up the + # test table, the updated tuple lands at (1,2) + s1begin + s1update + + # While the updating transaction is open, start a new session that + # tries to lock the row. This blocks on the open transaction. + s2lock + + # Abort the updating transaction. This unblocks session 2, but it + # will immediately hit the injection point and block on that. + s1abort + # Vacuum away the updated, aborted tuple. + vacuum + + # Insert a new tuple. It lands at the same location where the + # updated tuple was. + reinsert + + # Let the locking transaction continue. It should lock the + # original tuple, ignoring the re-inserted tuple. + wake(s2lock) + +# Variant where the re-inserted tuple is also locked by the inserting +# transaction. This failed an earlier version of the fix during +# development. +permutation + s1begin + s1update + s2lock + s1abort + vacuum + reinsert_and_lock + wake(s2lock) diff --git a/src/test/modules/meson.build b/src/test/modules/meson.build index 9de0057bd1d..9cdc0666ffb 100644 --- a/src/test/modules/meson.build +++ b/src/test/modules/meson.build @@ -15,6 +15,7 @@ subdir('spgist_name_ops') subdir('ssl_passphrase_callback') subdir('test_aio') subdir('test_bloomfilter') +subdir('test_cloexec') subdir('test_copy_callbacks') subdir('test_custom_rmgrs') subdir('test_ddl_deparse') diff --git a/src/test/modules/oauth_validator/meson.build b/src/test/modules/oauth_validator/meson.build index e190f9cf15a..6661eb33cab 100644 --- a/src/test/modules/oauth_validator/meson.build +++ b/src/test/modules/oauth_validator/meson.build @@ -81,5 +81,6 @@ tests += { 'with_libcurl': oauth_flow_supported ? 'yes' : 'no', 'with_python': 'yes', }, + 'deps': [oauth_hook_client], }, } diff --git a/src/test/modules/oauth_validator/t/002_client.pl b/src/test/modules/oauth_validator/t/002_client.pl index aac0220d215..e6c91fc911c 100644 --- a/src/test/modules/oauth_validator/t/002_client.pl +++ b/src/test/modules/oauth_validator/t/002_client.pl @@ -29,6 +29,8 @@ $node->append_conf('postgresql.conf', "log_connections = all\n"); $node->append_conf('postgresql.conf', "oauth_validator_libraries = 'validator'\n"); +# Needed to inspect postmaster log after connection failure: +$node->append_conf('postgresql.conf', "log_min_messages = debug2"); $node->start; $node->safe_psql('postgres', 'CREATE USER test;'); @@ -47,7 +49,7 @@ }); $node->reload; -my $log_start = $node->wait_for_log(qr/reloading configuration files/); +$node->wait_for_log(qr/reloading configuration files/); $ENV{PGOAUTHDEBUG} = "UNSAFE"; @@ -73,6 +75,7 @@ sub test my @cmd = ("oauth_hook_client", @{$flags}, $common_connstr); note "running '" . join("' '", @cmd) . "'"; + my $log_start = -s $node->logfile; my ($stdout, $stderr) = run_command(\@cmd); if (defined($params{expected_stdout})) @@ -88,6 +91,18 @@ sub test { is($stderr, "", "$test_name: no stderr"); } + + if (defined($params{log_like})) + { + # See Cluster::connect_fails(). To avoid races, we have to wait for the + # postmaster to flush the log for the finished connection. + $node->wait_for_log( + qr/DEBUG: (?:00000: )?forked new client backend, pid=(\d+) socket.*DEBUG: (?:00000: )?client backend \(PID \1\) exited with exit code \d/s, + $log_start); + + $node->log_check("$test_name: log matches", + $log_start, log_like => $params{log_like}); + } } test( @@ -97,11 +112,8 @@ sub test "--expected-uri", "$issuer/.well-known/openid-configuration", "--expected-scope", $scope, ], - expected_stdout => qr/connection succeeded/); - -$node->log_check("validator receives correct token", - $log_start, - log_like => [ qr/oauth_validator: token="my-token", role="$user"/, ]); + expected_stdout => qr/connection succeeded/, + log_like => [qr/oauth_validator: token="my-token", role="$user"/]); if ($ENV{with_libcurl} ne 'yes') { diff --git a/src/test/modules/oauth_validator/t/oauth_server.py b/src/test/modules/oauth_validator/t/oauth_server.py index 0f8836aadf3..c70783ecbe4 100755 --- a/src/test/modules/oauth_validator/t/oauth_server.py +++ b/src/test/modules/oauth_validator/t/oauth_server.py @@ -257,13 +257,33 @@ def _access_token(self): return token + def _log_response(self, js: JsonObject) -> None: + """ + Trims the response JSON, if necessary, and logs it for later debugging. + """ + # At the moment the biggest problem for tests is the _pad_ member, which + # is a megabyte in size, so truncate that to something more reasonable. + if "_pad_" in js: + pad = js["_pad_"] + + # Don't modify the original dict. + js = dict(js) + js["_pad_"] = pad[:64] + f"[...truncated from {len(pad)} bytes]" + + resp = json.dumps(js).encode("ascii") + self.log_message("sending JSON response: %s", resp) + + # If you've tripped this assertion, please truncate the new addition as + # above, or else come up with a new strategy. + assert len(resp) < 1024, "_log_response must be adjusted for new JSON" + def _send_json(self, js: JsonObject) -> None: """ Sends the provided JSON dict as an application/json response. self._response_code can be modified to send JSON error responses. """ resp = json.dumps(js).encode("ascii") - self.log_message("sending JSON response: %s", resp) + self._log_response(js) self.send_response(self._response_code) self.send_header("Content-Type", self._content_type) diff --git a/src/test/modules/test_cloexec/.gitignore b/src/test/modules/test_cloexec/.gitignore new file mode 100644 index 00000000000..0234e9d8406 --- /dev/null +++ b/src/test/modules/test_cloexec/.gitignore @@ -0,0 +1,3 @@ +/test_cloexec +# Generated subdirectories +/tmp_check/ diff --git a/src/test/modules/test_cloexec/Makefile b/src/test/modules/test_cloexec/Makefile new file mode 100644 index 00000000000..db3876f21e4 --- /dev/null +++ b/src/test/modules/test_cloexec/Makefile @@ -0,0 +1,21 @@ +# src/test/modules/test_cloexec/Makefile + +PGFILEDESC = "test_cloexec - test O_CLOEXEC flag handling" +PGAPPICON = win32 + +PROGRAM = test_cloexec +OBJS = $(WIN32RES) test_cloexec.o + +NO_INSTALLCHECK = 1 +TAP_TESTS = 1 + +ifdef USE_PGXS +PG_CONFIG = pg_config +PGXS := $(shell $(PG_CONFIG) --pgxs) +include $(PGXS) +else +subdir = src/test/modules/test_cloexec +top_builddir = ../../../.. +include $(top_builddir)/src/Makefile.global +include $(top_srcdir)/contrib/contrib-global.mk +endif diff --git a/src/test/modules/test_cloexec/meson.build b/src/test/modules/test_cloexec/meson.build new file mode 100644 index 00000000000..63c8658b04e --- /dev/null +++ b/src/test/modules/test_cloexec/meson.build @@ -0,0 +1,26 @@ +# src/test/modules/test_cloexec/meson.build + +# This test is Windows-only +if host_system != 'windows' + subdir_done() +endif + +test_cloexec_sources = files('test_cloexec.c') + +test_cloexec = executable('test_cloexec', + test_cloexec_sources, + dependencies: [frontend_code], + link_with: [pgport[''], pgcommon['']], + kwargs: default_bin_args, +) + +tests += { + 'name': 'test_cloexec', + 'sd': meson.current_source_dir(), + 'bd': meson.current_build_dir(), + 'tap': { + 'tests': [ + 't/001_cloexec.pl', + ], + }, +} diff --git a/src/test/modules/test_cloexec/t/001_cloexec.pl b/src/test/modules/test_cloexec/t/001_cloexec.pl new file mode 100644 index 00000000000..4c56eb3a4be --- /dev/null +++ b/src/test/modules/test_cloexec/t/001_cloexec.pl @@ -0,0 +1,60 @@ +# Test O_CLOEXEC flag handling on Windows +# +# This test verifies that file handles opened with O_CLOEXEC are not +# inherited by child processes, while handles opened without O_CLOEXEC +# are inherited. + +use strict; +use warnings FATAL => 'all'; +use PostgreSQL::Test::Utils; +use Test::More; +use IPC::Run qw(run); +use File::Spec; +use Cwd 'abs_path'; + +if (!$PostgreSQL::Test::Utils::windows_os) +{ + plan skip_all => 'test is Windows-specific'; +} + +plan tests => 1; + +my $test_prog; +foreach my $dir (split(/$Config::Config{path_sep}/, $ENV{PATH})) +{ + my $candidate = File::Spec->catfile($dir, 'test_cloexec.exe'); + if (-f $candidate && -x $candidate) + { + $test_prog = $candidate; + last; + } +} + +if (!$test_prog) +{ + $test_prog = './test_cloexec.exe'; +} + +if (!-f $test_prog) +{ + BAIL_OUT("test program not found: $test_prog"); +} + +note("Using test program: $test_prog"); + +my ($stdout, $stderr); +my $result = run [ $test_prog ], '>', \$stdout, '2>', \$stderr; + +note("Test program output:"); +note($stdout) if $stdout; + +if ($stderr) +{ + diag("Test program stderr:"); + diag($stderr); +} + +ok($result && $stdout =~ /SUCCESS.*O_CLOEXEC behavior verified/s, + "O_CLOEXEC prevents handle inheritance"); + +done_testing(); \ No newline at end of file diff --git a/src/test/modules/test_cloexec/test_cloexec.c b/src/test/modules/test_cloexec/test_cloexec.c new file mode 100644 index 00000000000..aec8af9937d --- /dev/null +++ b/src/test/modules/test_cloexec/test_cloexec.c @@ -0,0 +1,240 @@ +/*------------------------------------------------------------------------- + * + * test_cloexec.c + * Test O_CLOEXEC flag handling on Windows + * + * This program tests that: + * 1. File handles opened with O_CLOEXEC are NOT inherited by child processes + * 2. File handles opened without O_CLOEXEC ARE inherited by child processes + * + * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group + * + *------------------------------------------------------------------------- + */ + +#include "postgres.h" + +#include +#include + +#ifdef WIN32 +#include +#endif + +#include "common/file_utils.h" +#include "port.h" + +#ifdef WIN32 +static void run_parent_tests(const char *testfile1, const char *testfile2); +static void run_child_tests(const char *handle1_str, const char *handle2_str); +static bool try_write_to_handle(HANDLE h, const char *label); +#endif + +int +main(int argc, char *argv[]) +{ + /* Windows-only test */ +#ifndef WIN32 + fprintf(stderr, "This test only runs on Windows\n"); + return 0; +#else + char testfile1[MAXPGPATH]; + char testfile2[MAXPGPATH]; + + if (argc == 3) + { + /* + * Child mode: receives two handle values as hex strings and attempts + * to write to them. + */ + run_child_tests(argv[1], argv[2]); + return 0; + } + else if (argc == 1) + { + /* Parent mode: opens files and spawns child */ + snprintf(testfile1, sizeof(testfile1), "test_cloexec_1_%d.tmp", (int) getpid()); + snprintf(testfile2, sizeof(testfile2), "test_cloexec_2_%d.tmp", (int) getpid()); + + run_parent_tests(testfile1, testfile2); + + /* Clean up test files */ + unlink(testfile1); + unlink(testfile2); + + return 0; + } + else + { + fprintf(stderr, "Usage: %s [handle1_hex handle2_hex]\n", argv[0]); + return 1; + } +#endif +} + +#ifdef WIN32 +static void +run_parent_tests(const char *testfile1, const char *testfile2) +{ + int fd1, + fd2; + HANDLE h1, + h2; + char exe_path[MAXPGPATH]; + char cmdline[MAXPGPATH + 100]; + STARTUPINFO si = {.cb = sizeof(si)}; + PROCESS_INFORMATION pi = {0}; + DWORD exit_code; + + printf("Parent: Opening test files...\n"); + + /* Open first file WITH O_CLOEXEC - should NOT be inherited */ + fd1 = open(testfile1, O_RDWR | O_CREAT | O_TRUNC | O_CLOEXEC, 0600); + if (fd1 < 0) + { + fprintf(stderr, "Failed to open %s: %s\n", testfile1, strerror(errno)); + exit(1); + } + + /* Open second file WITHOUT O_CLOEXEC - should be inherited */ + fd2 = open(testfile2, O_RDWR | O_CREAT | O_TRUNC, 0600); + if (fd2 < 0) + { + fprintf(stderr, "Failed to open %s: %s\n", testfile2, strerror(errno)); + close(fd1); + exit(1); + } + + /* Get Windows HANDLEs from file descriptors */ + h1 = (HANDLE) _get_osfhandle(fd1); + h2 = (HANDLE) _get_osfhandle(fd2); + + if (h1 == INVALID_HANDLE_VALUE || h2 == INVALID_HANDLE_VALUE) + { + fprintf(stderr, "Failed to get OS handles\n"); + close(fd1); + close(fd2); + exit(1); + } + + printf("Parent: fd1=%d (O_CLOEXEC) -> HANDLE=%p\n", fd1, h1); + printf("Parent: fd2=%d (no O_CLOEXEC) -> HANDLE=%p\n", fd2, h2); + + /* + * Find the actual executable path by removing any arguments from + * GetCommandLine(), and add our new arguments. + */ + GetModuleFileName(NULL, exe_path, sizeof(exe_path)); + snprintf(cmdline, sizeof(cmdline), "\"%s\" %p %p", exe_path, h1, h2); + + printf("Parent: Spawning child process...\n"); + printf("Parent: Command line: %s\n", cmdline); + + if (!CreateProcess(NULL, /* application name */ + cmdline, /* command line */ + NULL, /* process security attributes */ + NULL, /* thread security attributes */ + TRUE, /* bInheritHandles - CRITICAL! */ + 0, /* creation flags */ + NULL, /* environment */ + NULL, /* current directory */ + &si, /* startup info */ + &pi)) /* process information */ + { + fprintf(stderr, "CreateProcess failed: %lu\n", GetLastError()); + close(fd1); + close(fd2); + exit(1); + } + + printf("Parent: Waiting for child process...\n"); + + /* Wait for child to complete */ + WaitForSingleObject(pi.hProcess, INFINITE); + GetExitCodeProcess(pi.hProcess, &exit_code); + + CloseHandle(pi.hProcess); + CloseHandle(pi.hThread); + + close(fd1); + close(fd2); + + printf("Parent: Child exit code: %lu\n", exit_code); + + if (exit_code == 0) + { + printf("Parent: SUCCESS - O_CLOEXEC behavior verified\n"); + } + else + { + printf("Parent: FAILURE - O_CLOEXEC not working correctly\n"); + exit(1); + } +} + +static void +run_child_tests(const char *handle1_str, const char *handle2_str) +{ + HANDLE h1, + h2; + bool h1_worked, + h2_worked; + + /* Parse handle values from hex strings */ + if (sscanf(handle1_str, "%p", &h1) != 1 || + sscanf(handle2_str, "%p", &h2) != 1) + { + fprintf(stderr, "Child: Failed to parse handle values\n"); + exit(1); + } + + printf("Child: Received HANDLE1=%p (should fail - O_CLOEXEC)\n", h1); + printf("Child: Received HANDLE2=%p (should work - no O_CLOEXEC)\n", h2); + + /* Try to write to both handles */ + h1_worked = try_write_to_handle(h1, "HANDLE1"); + h2_worked = try_write_to_handle(h2, "HANDLE2"); + + printf("Child: HANDLE1 (O_CLOEXEC): %s\n", + h1_worked ? "ACCESSIBLE (BAD!)" : "NOT ACCESSIBLE (GOOD!)"); + printf("Child: HANDLE2 (no O_CLOEXEC): %s\n", + h2_worked ? "ACCESSIBLE (GOOD!)" : "NOT ACCESSIBLE (BAD!)"); + + /* + * For O_CLOEXEC to work correctly, h1 should NOT be accessible (h1_worked + * == false) and h2 SHOULD be accessible (h2_worked == true). + */ + if (!h1_worked && h2_worked) + { + printf("Child: Test PASSED - O_CLOEXEC working correctly\n"); + exit(0); + } + else + { + printf("Child: Test FAILED - O_CLOEXEC not working correctly\n"); + exit(1); + } +} + +static bool +try_write_to_handle(HANDLE h, const char *label) +{ + const char *test_data = "test\n"; + DWORD bytes_written; + BOOL result; + + result = WriteFile(h, test_data, strlen(test_data), &bytes_written, NULL); + + if (result && bytes_written == strlen(test_data)) + { + printf("Child: Successfully wrote to %s\n", label); + return true; + } + else + { + printf("Child: Failed to write to %s (error %lu)\n", + label, GetLastError()); + return false; + } +} +#endif diff --git a/src/test/modules/test_regex/test_regex.c b/src/test/modules/test_regex/test_regex.c index 2548a0ef7b1..df69f897833 100644 --- a/src/test/modules/test_regex/test_regex.c +++ b/src/test/modules/test_regex/test_regex.c @@ -413,7 +413,8 @@ parse_test_flags(test_re_flags *flags, text *opts) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("invalid regular expression test option: \"%.*s\"", - pg_mblen(opt_p + i), opt_p + i))); + pg_mblen_range(opt_p + i, opt_p + opt_len), + opt_p + i))); break; } } diff --git a/src/test/modules/test_slru/t/001_multixact.pl b/src/test/modules/test_slru/t/001_multixact.pl index e2b567a603d..7837eb810f0 100644 --- a/src/test/modules/test_slru/t/001_multixact.pl +++ b/src/test/modules/test_slru/t/001_multixact.pl @@ -1,10 +1,6 @@ # Copyright (c) 2024-2025, PostgreSQL Global Development Group -# This test verifies edge case of reading a multixact: -# when we have multixact that is followed by exactly one another multixact, -# and another multixact have no offset yet, we must wait until this offset -# becomes observable. Previously we used to wait for 1ms in a loop in this -# case, but now we use CV for this. This test is exercising such a sleep. +# Test multixid corner cases. use strict; use warnings FATAL => 'all'; @@ -19,9 +15,7 @@ plan skip_all => 'Injection points not supported by this build'; } -my ($node, $result); - -$node = PostgreSQL::Test::Cluster->new('mike'); +my $node = PostgreSQL::Test::Cluster->new('main'); $node->init; $node->append_conf('postgresql.conf', "shared_preload_libraries = 'test_slru,injection_points'"); @@ -29,95 +23,47 @@ $node->safe_psql('postgres', q(CREATE EXTENSION injection_points)); $node->safe_psql('postgres', q(CREATE EXTENSION test_slru)); -# Test for Multixact generation edge case -$node->safe_psql('postgres', - q{select injection_points_attach('test-multixact-read','wait')}); -$node->safe_psql('postgres', - q{select injection_points_attach('multixact-get-members-cv-sleep','wait')} -); +# This test creates three multixacts. The middle one is never +# WAL-logged or recorded on the offsets page, because we pause the +# backend and crash the server before that. After restart, verify that +# the other multixacts are readable, despite the middle one being +# lost. -# This session must observe sleep on the condition variable while generating a -# multixact. To achieve this it first will create a multixact, then pause -# before reading it. -my $observer = $node->background_psql('postgres'); - -# This query will create a multixact, and hang just before reading it. -$observer->query_until( - qr/start/, - q{ - \echo start - SELECT test_read_multixact(test_create_multixact()); -}); -$node->wait_for_event('client backend', 'test-multixact-read'); - -# This session will create the next Multixact. This is necessary to avoid -# multixact.c's non-sleeping edge case 1. -my $creator = $node->background_psql('postgres'); +# Create the first multixact +my $bg_psql = $node->background_psql('postgres'); +my $multi1 = $bg_psql->query_safe(q(SELECT test_create_multixact();)); + +# Assign the middle multixact. Use an injection point to prevent it +# from being fully recorded. $node->safe_psql('postgres', q{SELECT injection_points_attach('multixact-create-from-members','wait');} ); -# We expect this query to hang in the critical section after generating new -# multixact, but before filling its offset into SLRU. -# Running an injection point inside a critical section requires it to be -# loaded beforehand. -$creator->query_until( - qr/start/, q{ - \echo start +$bg_psql->query_until( + qr/assigning lost multi/, q( +\echo assigning lost multi SELECT test_create_multixact(); -}); +)); $node->wait_for_event('client backend', 'multixact-create-from-members'); - -# Ensure we have the backends waiting that we expect -is( $node->safe_psql( - 'postgres', - q{SELECT string_agg(wait_event, ', ' ORDER BY wait_event) - FROM pg_stat_activity WHERE wait_event_type = 'InjectionPoint'} - ), - 'multixact-create-from-members, test-multixact-read', - "matching injection point waits"); - -# Now wake observer to get it to read the initial multixact. A subsequent -# multixact already exists, but that one doesn't have an offset assigned, so -# this will hit multixact.c's edge case 2. -$node->safe_psql('postgres', - q{SELECT injection_points_wakeup('test-multixact-read')}); -$node->wait_for_event('client backend', 'multixact-get-members-cv-sleep'); - -# Ensure we have the backends waiting that we expect -is( $node->safe_psql( - 'postgres', - q{SELECT string_agg(wait_event, ', ' ORDER BY wait_event) - FROM pg_stat_activity WHERE wait_event_type = 'InjectionPoint'} - ), - 'multixact-create-from-members, multixact-get-members-cv-sleep', - "matching injection point waits"); - -# Now we have two backends waiting in multixact-create-from-members and -# multixact-get-members-cv-sleep. Also we have 3 injections points set to wait. -# If we wakeup multixact-get-members-cv-sleep it will happen again, so we must -# detach it first. So let's detach all injection points, then wake up all -# backends. - -$node->safe_psql('postgres', - q{SELECT injection_points_detach('test-multixact-read')}); $node->safe_psql('postgres', q{SELECT injection_points_detach('multixact-create-from-members')}); -$node->safe_psql('postgres', - q{SELECT injection_points_detach('multixact-get-members-cv-sleep')}); -$node->safe_psql('postgres', - q{SELECT injection_points_wakeup('multixact-create-from-members')}); -$node->safe_psql('postgres', - q{SELECT injection_points_wakeup('multixact-get-members-cv-sleep')}); +# Create the third multixid +my $multi2 = $node->safe_psql('postgres', q{SELECT test_create_multixact();}); + +# All set and done, it's time for hard restart +$node->stop('immediate'); +$node->start; +$bg_psql->{run}->finish; -# Background psql will now be able to read the result and disconnect. -$observer->quit; -$creator->quit; +# Verify that the recorded multixids are readable +is( $node->safe_psql('postgres', qq{SELECT test_read_multixact('$multi1');}), + '', + 'first recorded multi is readable'); -$node->stop; +is( $node->safe_psql('postgres', qq{SELECT test_read_multixact('$multi2');}), + '', + 'second recorded multi is readable'); -# If we reached this point - everything is OK. -ok(1); done_testing(); diff --git a/src/test/modules/test_slru/test_multixact.c b/src/test/modules/test_slru/test_multixact.c index 6c9b0420717..8fb6c19d70f 100644 --- a/src/test/modules/test_slru/test_multixact.c +++ b/src/test/modules/test_slru/test_multixact.c @@ -17,7 +17,6 @@ #include "access/multixact.h" #include "access/xact.h" #include "fmgr.h" -#include "utils/injection_point.h" PG_FUNCTION_INFO_V1(test_create_multixact); PG_FUNCTION_INFO_V1(test_read_multixact); @@ -37,8 +36,7 @@ test_create_multixact(PG_FUNCTION_ARGS) } /* - * Reads given multixact after running an injection point. Discards local cache - * to make a real read. Tailored for multixact testing. + * Reads given multixact. Discards local cache to make a real read. */ Datum test_read_multixact(PG_FUNCTION_ARGS) @@ -46,7 +44,6 @@ test_read_multixact(PG_FUNCTION_ARGS) MultiXactId id = PG_GETARG_TRANSACTIONID(0); MultiXactMember *members; - INJECTION_POINT("test-multixact-read", NULL); /* discard caches */ AtEOXact_MultiXact(); diff --git a/src/test/modules/typcache/expected/typcache_rel_type_cache.out b/src/test/modules/typcache/expected/typcache_rel_type_cache.out index a91bd72b9bd..54c61602d08 100644 --- a/src/test/modules/typcache/expected/typcache_rel_type_cache.out +++ b/src/test/modules/typcache/expected/typcache_rel_type_cache.out @@ -39,3 +39,4 @@ SELECT '(1,2)'::t; (1,2) (1 row) +DROP EXTENSION injection_points; diff --git a/src/test/modules/typcache/sql/typcache_rel_type_cache.sql b/src/test/modules/typcache/sql/typcache_rel_type_cache.sql index c1a3af509c0..f004a31c32a 100644 --- a/src/test/modules/typcache/sql/typcache_rel_type_cache.sql +++ b/src/test/modules/typcache/sql/typcache_rel_type_cache.sql @@ -19,3 +19,5 @@ SELECT '(1)'::t; SELECT injection_points_detach('typecache-before-rel-type-cache-insert'); ALTER TABLE t ADD COLUMN j int; SELECT '(1,2)'::t; + +DROP EXTENSION injection_points; diff --git a/src/test/modules/xid_wraparound/meson.build b/src/test/modules/xid_wraparound/meson.build index f7dada67f67..3aec430df8c 100644 --- a/src/test/modules/xid_wraparound/meson.build +++ b/src/test/modules/xid_wraparound/meson.build @@ -30,6 +30,7 @@ tests += { 't/001_emergency_vacuum.pl', 't/002_limits.pl', 't/003_wraparounds.pl', + 't/004_notify_freeze.pl', ], }, } diff --git a/src/test/modules/xid_wraparound/t/004_notify_freeze.pl b/src/test/modules/xid_wraparound/t/004_notify_freeze.pl new file mode 100644 index 00000000000..5400af1e554 --- /dev/null +++ b/src/test/modules/xid_wraparound/t/004_notify_freeze.pl @@ -0,0 +1,71 @@ +# Copyright (c) 2024-2025, PostgreSQL Global Development Group +# +# Test freezing XIDs in the async notification queue. This isn't +# really wraparound-related, but the test depends on the +# consume_xids() helper function. + +use strict; +use warnings FATAL => 'all'; +use PostgreSQL::Test::Cluster; +use Test::More; + +my $node = PostgreSQL::Test::Cluster->new('node'); +$node->init; +$node->start; + +if (!$ENV{PG_TEST_EXTRA} || $ENV{PG_TEST_EXTRA} !~ /\bxid_wraparound\b/) +{ + plan skip_all => "test xid_wraparound not enabled in PG_TEST_EXTRA"; +} + +# Setup +$node->safe_psql('postgres', 'CREATE EXTENSION xid_wraparound'); +$node->safe_psql('postgres', + 'ALTER DATABASE template0 WITH ALLOW_CONNECTIONS true'); + +# Start Session 1 and leave it idle in transaction +my $psql_session1 = $node->background_psql('postgres'); +$psql_session1->query_safe('listen s;'); +$psql_session1->query_safe('begin;'); + +# Send some notifys from other sessions +for my $i (1 .. 10) +{ + $node->safe_psql('postgres', "NOTIFY s, '$i'"); +} + +# Consume enough XIDs to trigger truncation, and one more with +# 'txid_current' to bump up the freeze horizon. +$node->safe_psql('postgres', 'select consume_xids(10000000);'); +$node->safe_psql('postgres', 'select txid_current()'); + +# Remember current datfrozenxid before vacuum freeze so that we can +# check that it is advanced. (Taking the min() this way assumes that +# XID wraparound doesn't happen.) +my $datafronzenxid = $node->safe_psql('postgres', + "select min(datfrozenxid::text::bigint) from pg_database"); + +# Execute vacuum freeze on all databases +$node->command_ok([ 'vacuumdb', '--all', '--freeze', '--port', $node->port ], + "vacuumdb --all --freeze"); + +# Check that vacuumdb advanced datfrozenxid +my $datafronzenxid_freeze = $node->safe_psql('postgres', + "select min(datfrozenxid::text::bigint) from pg_database"); +ok($datafronzenxid_freeze > $datafronzenxid, 'datfrozenxid advanced'); + +# On Session 1, commit and ensure that the all the notifications are +# received. This depends on correctly freezing the XIDs in the pending +# notification entries. +my $res = $psql_session1->query_safe('commit;'); +my $notifications_count = 0; +foreach my $i (split('\n', $res)) +{ + $notifications_count++; + like($i, + qr/Asynchronous notification "s" with payload "$notifications_count" received/ + ); +} +is($notifications_count, 10, 'received all committed notifications'); + +done_testing(); diff --git a/src/test/perl/PostgreSQL/Test/BackgroundPsql.pm b/src/test/perl/PostgreSQL/Test/BackgroundPsql.pm index 60bbd5dd445..18ff7bca5e8 100644 --- a/src/test/perl/PostgreSQL/Test/BackgroundPsql.pm +++ b/src/test/perl/PostgreSQL/Test/BackgroundPsql.pm @@ -155,11 +155,11 @@ sub wait_connect # # See query() for details about why/how the banner is used. my $banner = "background_psql: ready"; - my $banner_match = qr/(^|\n)$banner\r?\n/; - $self->{stdin} .= "\\echo $banner\n\\warn $banner\n"; + my $banner_match = qr/$banner\r?\n/; + $self->{stdin} .= "\\echo '$banner'\n\\warn '$banner'\n"; $self->{run}->pump() until ($self->{stdout} =~ /$banner_match/ - && $self->{stderr} =~ /$banner\r?\n/) + && $self->{stderr} =~ /$banner_match/) || $self->{timeout}->is_expired; note "connect output:\n", @@ -259,22 +259,17 @@ sub query # stderr (or vice versa), even if psql printed them in the opposite # order. We therefore wait on both. # - # We need to match for the newline, because we try to remove it below, and - # it's possible to consume just the input *without* the newline. In - # interactive psql we emit \r\n, so we need to allow for that. Also need - # to be careful that we don't e.g. match the echoed \echo command, rather - # than its output. + # In interactive psql we emit \r\n, so we need to allow for that. + # Also, include quotes around the banner string in the \echo and \warn + # commands, not because the string needs quoting but so that $banner_match + # can't match readline's echoing of these commands. my $banner = "background_psql: QUERY_SEPARATOR $query_cnt:"; - my $banner_match = qr/(^|\n)$banner\r?\n/; - $self->{stdin} .= "$query\n;\n\\echo $banner\n\\warn $banner\n"; - pump_until( - $self->{run}, $self->{timeout}, - \$self->{stdout}, qr/$banner_match/); - pump_until( - $self->{run}, $self->{timeout}, - \$self->{stderr}, qr/$banner_match/); - - die "psql query timed out" if $self->{timeout}->is_expired; + my $banner_match = qr/$banner\r?\n/; + $self->{stdin} .= "$query\n;\n\\echo '$banner'\n\\warn '$banner'\n"; + $self->{run}->pump() + until ($self->{stdout} =~ /$banner_match/ + && $self->{stderr} =~ /$banner_match/) + || $self->{timeout}->is_expired; note "results query $query_cnt:\n", explain { @@ -282,9 +277,12 @@ sub query stderr => $self->{stderr}, }; - # Remove banner from stdout and stderr, our caller doesn't care. The - # first newline is optional, as there would not be one if consuming an - # empty query result. + die "psql query timed out" if $self->{timeout}->is_expired; + + # Remove banner from stdout and stderr, our caller doesn't want it. + # Also remove the query output's trailing newline, if present (there + # would not be one if consuming an empty query result). + $banner_match = qr/\r?\n?$banner\r?\n/; $output = $self->{stdout}; $output =~ s/$banner_match//; $self->{stderr} =~ s/$banner_match//; diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm index 1c11750ac1d..2e31c23a6ac 100644 --- a/src/test/perl/PostgreSQL/Test/Cluster.pm +++ b/src/test/perl/PostgreSQL/Test/Cluster.pm @@ -1620,10 +1620,10 @@ sub new or BAIL_OUT("could not create data directory \"$node->{_basedir}\": $!"); - $node->dump_info; - $node->_set_pg_version; + $node->dump_info; + my $ver = $node->{_pg_version}; # Use a subclass as defined below (or elsewhere) if this version diff --git a/src/test/postmaster/t/002_connection_limits.pl b/src/test/postmaster/t/002_connection_limits.pl index 4a7fb16261f..2fc821ad0b4 100644 --- a/src/test/postmaster/t/002_connection_limits.pl +++ b/src/test/postmaster/t/002_connection_limits.pl @@ -74,6 +74,11 @@ sub connect_fails_wait ok(1, "$test_name: client backend process exited"); } +# Restart the server to ensure that any backends launched for the +# initialization steps are gone. Otherwise they could still be using +# up connection slots and mess with our expectations. +$node->restart; + my @sessions = (); my @raw_connections = (); diff --git a/src/test/postmaster/t/003_start_stop.pl b/src/test/postmaster/t/003_start_stop.pl index 58e7ba6cc42..25d6f667217 100644 --- a/src/test/postmaster/t/003_start_stop.pl +++ b/src/test/postmaster/t/003_start_stop.pl @@ -46,6 +46,11 @@ plan skip_all => "this test requires working raw_connect()"; } +# Restart the server to ensure that the backend launched for +# raw_connect_works() is gone. Otherwise, it might free up the +# connection slot later, when we expect all the slots to be in use. +$node->restart; + my @raw_connections = (); # Open a lot of TCP (or Unix domain socket) connections to use up all @@ -81,7 +86,7 @@ # clients already" instead of "role does not exist" error. Test that # to ensure that we have used up all the slots. $node->connect_fails("dbname=postgres user=invalid_user", - "connect ", + "connection is rejected when all slots are in use", expected_stderr => qr/FATAL: sorry, too many clients already/); # Open one more connection, to really ensure that we have at least one diff --git a/src/test/recovery/t/046_checkpoint_logical_slot.pl b/src/test/recovery/t/046_checkpoint_logical_slot.pl index 4fd709e3a03..406b208cccd 100644 --- a/src/test/recovery/t/046_checkpoint_logical_slot.pl +++ b/src/test/recovery/t/046_checkpoint_logical_slot.pl @@ -20,8 +20,7 @@ my ($node, $result); $node = PostgreSQL::Test::Cluster->new('mike'); -$node->init; -$node->append_conf('postgresql.conf', "wal_level = 'logical'"); +$node->init(allows_streaming => 'logical'); $node->start; # Check if the extension injection_points is available, as it may be @@ -139,4 +138,91 @@ }; is($@, '', "Logical slot still valid"); +# If we send \q with $->quit the command can be sent to the +# session already closed. So \q is in initial script, here we only finish +# IPC::Run +$xacts->{run}->finish; +$checkpoint->{run}->finish; +$logical->{run}->finish; + +# Verify that the synchronized slots won't be invalidated immediately after +# synchronization in the presence of a concurrent checkpoint. +my $primary = $node; + +$primary->append_conf('postgresql.conf', "autovacuum = off"); +$primary->reload; + +my $backup_name = 'backup'; + +$primary->backup($backup_name); + +# Create a standby +my $standby = PostgreSQL::Test::Cluster->new('standby'); +$standby->init_from_backup( + $primary, $backup_name, + has_streaming => 1); + +my $connstr_1 = $primary->connstr; +$standby->append_conf( + 'postgresql.conf', qq( +hot_standby_feedback = on +primary_slot_name = 'phys_slot' +primary_conninfo = '$connstr_1 dbname=postgres' +)); + +$primary->safe_psql('postgres', + q{SELECT pg_create_logical_replication_slot('failover_slot', 'test_decoding', false, false, true); + SELECT pg_create_physical_replication_slot('phys_slot');} +); + +$standby->start; + +# Generate some activity and switch WAL file on the primary +$primary->advance_wal(1); +$primary->safe_psql('postgres', "CHECKPOINT"); +$primary->wait_for_replay_catchup($standby); + +# checkpoint on the standby and make it wait on the injection point so that the +# checkpoint stops right before invalidating replication slots. +note('starting checkpoint'); + +$checkpoint = $standby->background_psql('postgres'); +$checkpoint->query_safe( + q(select injection_points_attach('restartpoint-before-slot-invalidation','wait')) +); +$checkpoint->query_until( + qr/starting_checkpoint/, + q(\echo starting_checkpoint +checkpoint; +)); + +# Wait until the checkpoint stops right before invalidating slots +note('waiting for injection_point'); +$standby->wait_for_event('checkpointer', 'restartpoint-before-slot-invalidation'); +note('injection_point is reached'); + +# Enable slot sync worker to synchronize the failover slot to the standby +$standby->append_conf('postgresql.conf', qq(sync_replication_slots = on)); +$standby->reload; + +# Wait for the slot to be synced +$standby->poll_query_until( + 'postgres', + "SELECT COUNT(*) > 0 FROM pg_replication_slots WHERE slot_name = 'failover_slot'"); + +# Release the checkpointer +$standby->safe_psql('postgres', + q{select injection_points_wakeup('restartpoint-before-slot-invalidation'); + select injection_points_detach('restartpoint-before-slot-invalidation')}); + +$checkpoint->quit; + +# Confirm that the slot is not invalidated +is( $standby->safe_psql( + 'postgres', + q{SELECT invalidation_reason IS NULL AND synced FROM pg_replication_slots WHERE slot_name = 'failover_slot';} + ), + "t", + 'logical slot is not invalidated'); + done_testing(); diff --git a/src/test/regress/expected/arrays.out b/src/test/regress/expected/arrays.out index b815473f414..af725009cd6 100644 --- a/src/test/regress/expected/arrays.out +++ b/src/test/regress/expected/arrays.out @@ -1737,6 +1737,11 @@ select '[-2147483648:-2147483647]={1,2}'::int[]; (1 row) -- all of the above should be accepted +-- some day we might allow these cases, but for now they're errors: +select array[]::oidvector; +ERROR: array is not a valid oidvector +select array[]::int2vector; +ERROR: array is not a valid int2vector -- tests for array aggregates CREATE TEMP TABLE arraggtest ( f1 INT[], f2 TEXT[][], f3 FLOAT[]); INSERT INTO arraggtest (f1, f2, f3) VALUES diff --git a/src/test/regress/expected/collate.icu.utf8.out b/src/test/regress/expected/collate.icu.utf8.out index 7f892182800..96379ce30a2 100644 --- a/src/test/regress/expected/collate.icu.utf8.out +++ b/src/test/regress/expected/collate.icu.utf8.out @@ -1484,6 +1484,13 @@ SELECT array_sort('{a,B}'::text[] COLLATE "C"); {B,a} (1 row) +-- test replace() at the end of the string (bug #19341) +SELECT replace('testX' COLLATE case_insensitive, 'x' COLLATE case_insensitive, 'er'); + replace +--------- + tester +(1 row) + -- test language tags CREATE COLLATION lt_insensitive (provider = icu, locale = 'en-u-ks-level1', deterministic = false); SELECT 'aBcD' COLLATE lt_insensitive = 'AbCd' COLLATE lt_insensitive; diff --git a/src/test/regress/expected/constraints.out b/src/test/regress/expected/constraints.out index 1bbf59cca02..ebc892a2a42 100644 --- a/src/test/regress/expected/constraints.out +++ b/src/test/regress/expected/constraints.out @@ -846,8 +846,12 @@ CREATE TABLE notnull_tbl1 (a INTEGER NOT NULL NOT NULL); Not-null constraints: "notnull_tbl1_a_not_null" NOT NULL "a" --- no-op +-- specifying an existing constraint is a no-op +ALTER TABLE notnull_tbl1 ADD CONSTRAINT notnull_tbl1_a_not_null NOT NULL a; +-- but using a different constraint name is not allowed ALTER TABLE notnull_tbl1 ADD CONSTRAINT nn NOT NULL a; +ERROR: cannot create not-null constraint "nn" on column "a" of table "notnull_tbl1" +DETAIL: A not-null constraint named "notnull_tbl1_a_not_null" already exists for this column. \d+ notnull_tbl1 Table "public.notnull_tbl1" Column | Type | Collation | Nullable | Default | Storage | Stats target | Description diff --git a/src/test/regress/expected/encoding.out b/src/test/regress/expected/encoding.out new file mode 100644 index 00000000000..ea1f38cff41 --- /dev/null +++ b/src/test/regress/expected/encoding.out @@ -0,0 +1,401 @@ +/* skip test if not UTF8 server encoding */ +SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset +\if :skip_test +\quit +\endif +\getenv libdir PG_LIBDIR +\getenv dlsuffix PG_DLSUFFIX +\set regresslib :libdir '/regress' :dlsuffix +CREATE FUNCTION test_bytea_to_text(bytea) RETURNS text + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_text_to_bytea(text) RETURNS bytea + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_mblen_func(text, text, text, int) RETURNS int + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_text_to_wchars(text, text) RETURNS int[] + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_wchars_to_text(text, int[]) RETURNS text + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_valid_server_encoding(text) RETURNS boolean + AS :'regresslib' LANGUAGE C STRICT; +CREATE TABLE regress_encoding(good text, truncated text, with_nul text, truncated_with_nul text); +INSERT INTO regress_encoding +VALUES ('café', + 'caf' || test_bytea_to_text('\xc3'), + 'café' || test_bytea_to_text('\x00') || 'dcba', + 'caf' || test_bytea_to_text('\xc300') || 'dcba'); +SELECT good, truncated, with_nul FROM regress_encoding; + good | truncated | with_nul +------+-----------+---------- + café | caf | café +(1 row) + +SELECT length(good) FROM regress_encoding; + length +-------- + 4 +(1 row) + +SELECT substring(good, 3, 1) FROM regress_encoding; + substring +----------- + f +(1 row) + +SELECT substring(good, 4, 1) FROM regress_encoding; + substring +----------- + é +(1 row) + +SELECT regexp_replace(good, '^caf(.)$', '\1') FROM regress_encoding; + regexp_replace +---------------- + é +(1 row) + +SELECT reverse(good) FROM regress_encoding; + reverse +--------- + éfac +(1 row) + +-- invalid short mb character = error +SELECT length(truncated) FROM regress_encoding; +ERROR: invalid byte sequence for encoding "UTF8": 0xc3 +SELECT substring(truncated, 1, 1) FROM regress_encoding; +ERROR: invalid byte sequence for encoding "UTF8": 0xc3 +SELECT reverse(truncated) FROM regress_encoding; +ERROR: invalid byte sequence for encoding "UTF8": 0xc3 +-- invalid short mb character = silently dropped +SELECT regexp_replace(truncated, '^caf(.)$', '\1') FROM regress_encoding; + regexp_replace +---------------- + caf +(1 row) + +-- PostgreSQL doesn't allow strings to contain NUL. If a corrupted string +-- contains NUL at a character boundary position, some functions treat it as a +-- character while others treat it as a terminator, as implementation details. +-- NUL = terminator +SELECT length(with_nul) FROM regress_encoding; + length +-------- + 4 +(1 row) + +SELECT substring(with_nul, 3, 1) FROM regress_encoding; + substring +----------- + f +(1 row) + +SELECT substring(with_nul, 4, 1) FROM regress_encoding; + substring +----------- + é +(1 row) + +SELECT substring(with_nul, 5, 1) FROM regress_encoding; + substring +----------- + +(1 row) + +SELECT convert_to(substring(with_nul, 5, 1), 'UTF8') FROM regress_encoding; + convert_to +------------ + \x +(1 row) + +SELECT regexp_replace(with_nul, '^caf(.)$', '\1') FROM regress_encoding; + regexp_replace +---------------- + é +(1 row) + +-- NUL = character +SELECT with_nul, reverse(with_nul), reverse(reverse(with_nul)) FROM regress_encoding; + with_nul | reverse | reverse +----------+---------+--------- + café | abcd | café +(1 row) + +-- If a corrupted string contains NUL in the tail bytes of a multibyte +-- character (invalid in all encodings), it is considered part of the +-- character for length purposes. An error will only be raised in code paths +-- that convert or verify encodings. +SELECT length(truncated_with_nul) FROM regress_encoding; + length +-------- + 8 +(1 row) + +SELECT substring(truncated_with_nul, 3, 1) FROM regress_encoding; + substring +----------- + f +(1 row) + +SELECT substring(truncated_with_nul, 4, 1) FROM regress_encoding; + substring +----------- + +(1 row) + +SELECT convert_to(substring(truncated_with_nul, 4, 1), 'UTF8') FROM regress_encoding; +ERROR: invalid byte sequence for encoding "UTF8": 0xc3 0x00 +SELECT substring(truncated_with_nul, 5, 1) FROM regress_encoding; + substring +----------- + d +(1 row) + +SELECT regexp_replace(truncated_with_nul, '^caf(.)dcba$', '\1') = test_bytea_to_text('\xc300') FROM regress_encoding; + ?column? +---------- + t +(1 row) + +SELECT reverse(truncated_with_nul) FROM regress_encoding; + reverse +--------- + abcd +(1 row) + +-- unbounded: sequence would overrun the string! +SELECT test_mblen_func('pg_mblen_unbounded', 'UTF8', truncated, 3) +FROM regress_encoding; + test_mblen_func +----------------- + 2 +(1 row) + +-- condition detected when using the length/range variants +SELECT test_mblen_func('pg_mblen_with_len', 'UTF8', truncated, 3) +FROM regress_encoding; +ERROR: invalid byte sequence for encoding "UTF8": 0xc3 +SELECT test_mblen_func('pg_mblen_range', 'UTF8', truncated, 3) +FROM regress_encoding; +ERROR: invalid byte sequence for encoding "UTF8": 0xc3 +-- unbounded: sequence would overrun the string, if the terminator were really +-- the end of it +SELECT test_mblen_func('pg_mblen_unbounded', 'UTF8', truncated_with_nul, 3) +FROM regress_encoding; + test_mblen_func +----------------- + 2 +(1 row) + +SELECT test_mblen_func('pg_encoding_mblen', 'GB18030', truncated_with_nul, 3) +FROM regress_encoding; + test_mblen_func +----------------- + 2 +(1 row) + +-- condition detected when using the cstr variants +SELECT test_mblen_func('pg_mblen_cstr', 'UTF8', truncated_with_nul, 3) +FROM regress_encoding; +ERROR: invalid byte sequence for encoding "UTF8": 0xc3 +DROP TABLE regress_encoding; +-- mb<->wchar conversions +CREATE FUNCTION test_encoding(encoding text, description text, input bytea) +RETURNS VOID LANGUAGE plpgsql AS +$$ +DECLARE + prefix text; + len int; + wchars int[]; + round_trip bytea; + result text; +BEGIN + prefix := rpad(encoding || ' ' || description || ':', 28); + + -- XXX could also test validation, length functions and include client + -- only encodings with these test cases + + IF test_valid_server_encoding(encoding) THEN + wchars := test_text_to_wchars(encoding, test_bytea_to_text(input)); + round_trip = test_text_to_bytea(test_wchars_to_text(encoding, wchars)); + if input = round_trip then + result := 'OK'; + elsif length(input) > length(round_trip) and round_trip = substr(input, 1, length(round_trip)) then + result := 'truncated'; + else + result := 'failed'; + end if; + RAISE NOTICE '% % -> % -> % = %', prefix, input, wchars, round_trip, result; + END IF; +END; +$$; +-- No validation is done on the encoding itself, just the length to avoid +-- overruns, so some of the byte sequences below are bogus. They cover +-- all code branches, server encodings only for now. +CREATE TABLE encoding_tests (encoding text, description text, input bytea); +INSERT INTO encoding_tests VALUES + -- LATIN1, other single-byte encodings + ('LATIN1', 'ASCII', 'a'), + ('LATIN1', 'extended', '\xe9'), + -- EUC_JP, EUC_JIS_2004, EUR_KR (for the purposes of wchar conversion): + -- 2 8e (CS2, not used by EUR_KR but arbitrarily considered to have EUC_JP length) + -- 3 8f (CS3, not used by EUR_KR but arbitrarily considered to have EUC_JP length) + -- 2 80..ff (CS1) + ('EUC_JP', 'ASCII', 'a'), + ('EUC_JP', 'CS1, short', '\x80'), + ('EUC_JP', 'CS1', '\x8002'), + ('EUC_JP', 'CS2, short', '\x8e'), + ('EUC_JP', 'CS2', '\x8e02'), + ('EUC_JP', 'CS3, short', '\x8f'), + ('EUC_JP', 'CS3, short', '\x8f02'), + ('EUC_JP', 'CS3', '\x8f0203'), + -- EUC_CN + -- 3 8e (CS2, not used but arbitrarily considered to have length 3) + -- 3 8f (CS3, not used but arbitrarily considered to have length 3) + -- 2 80..ff (CS1) + ('EUC_CN', 'ASCII', 'a'), + ('EUC_CN', 'CS1, short', '\x80'), + ('EUC_CN', 'CS1', '\x8002'), + ('EUC_CN', 'CS2, short', '\x8e'), + ('EUC_CN', 'CS2, short', '\x8e02'), + ('EUC_CN', 'CS2', '\x8e0203'), + ('EUC_CN', 'CS3, short', '\x8f'), + ('EUC_CN', 'CS3, short', '\x8f02'), + ('EUC_CN', 'CS3', '\x8f0203'), + -- EUC_TW: + -- 4 8e (CS2) + -- 3 8f (CS3, not used but arbitrarily considered to have length 3) + -- 2 80..ff (CS1) + ('EUC_TW', 'ASCII', 'a'), + ('EUC_TW', 'CS1, short', '\x80'), + ('EUC_TW', 'CS1', '\x8002'), + ('EUC_TW', 'CS2, short', '\x8e'), + ('EUC_TW', 'CS2, short', '\x8e02'), + ('EUC_TW', 'CS2, short', '\x8e0203'), + ('EUC_TW', 'CS2', '\x8e020304'), + ('EUC_TW', 'CS3, short', '\x8f'), + ('EUC_TW', 'CS3, short', '\x8f02'), + ('EUC_TW', 'CS3', '\x8f0203'), + -- UTF8 + -- 2 c0..df + -- 3 e0..ef + -- 4 f0..f7 (but maximum real codepoint U+10ffff has f4) + -- 5 f8..fb (not supported) + -- 6 fc..fd (not supported) + ('UTF8', 'ASCII', 'a'), + ('UTF8', '2 byte, short', '\xdf'), + ('UTF8', '2 byte', '\xdf82'), + ('UTF8', '3 byte, short', '\xef'), + ('UTF8', '3 byte, short', '\xef82'), + ('UTF8', '3 byte', '\xef8283'), + ('UTF8', '4 byte, short', '\xf7'), + ('UTF8', '4 byte, short', '\xf782'), + ('UTF8', '4 byte, short', '\xf78283'), + ('UTF8', '4 byte', '\xf7828384'), + ('UTF8', '5 byte, unsupported', '\xfb'), + ('UTF8', '5 byte, unsupported', '\xfb82'), + ('UTF8', '5 byte, unsupported', '\xfb8283'), + ('UTF8', '5 byte, unsupported', '\xfb828384'), + ('UTF8', '5 byte, unsupported', '\xfb82838485'), + ('UTF8', '6 byte, unsupported', '\xfd'), + ('UTF8', '6 byte, unsupported', '\xfd82'), + ('UTF8', '6 byte, unsupported', '\xfd8283'), + ('UTF8', '6 byte, unsupported', '\xfd828384'), + ('UTF8', '6 byte, unsupported', '\xfd82838485'), + ('UTF8', '6 byte, unsupported', '\xfd8283848586'), + -- MULE_INTERNAL + -- 2 81..8d LC1 + -- 3 90..99 LC2 + ('MULE_INTERNAL', 'ASCII', 'a'), + ('MULE_INTERNAL', 'LC1, short', '\x81'), + ('MULE_INTERNAL', 'LC1', '\x8182'), + ('MULE_INTERNAL', 'LC2, short', '\x90'), + ('MULE_INTERNAL', 'LC2, short', '\x9082'), + ('MULE_INTERNAL', 'LC2', '\x908283'); +SELECT COUNT(test_encoding(encoding, description, input)) > 0 +FROM encoding_tests; +NOTICE: LATIN1 ASCII: \x61 -> {97} -> \x61 = OK +NOTICE: LATIN1 extended: \xe9 -> {233} -> \xe9 = OK +NOTICE: EUC_JP ASCII: \x61 -> {97} -> \x61 = OK +NOTICE: EUC_JP CS1, short: \x80 -> {} -> \x = truncated +NOTICE: EUC_JP CS1: \x8002 -> {32770} -> \x8002 = OK +NOTICE: EUC_JP CS2, short: \x8e -> {} -> \x = truncated +NOTICE: EUC_JP CS2: \x8e02 -> {36354} -> \x8e02 = OK +NOTICE: EUC_JP CS3, short: \x8f -> {} -> \x = truncated +NOTICE: EUC_JP CS3, short: \x8f02 -> {} -> \x = truncated +NOTICE: EUC_JP CS3: \x8f0203 -> {9372163} -> \x8f0203 = OK +NOTICE: EUC_CN ASCII: \x61 -> {97} -> \x61 = OK +NOTICE: EUC_CN CS1, short: \x80 -> {} -> \x = truncated +NOTICE: EUC_CN CS1: \x8002 -> {32770} -> \x8002 = OK +NOTICE: EUC_CN CS2, short: \x8e -> {} -> \x = truncated +NOTICE: EUC_CN CS2, short: \x8e02 -> {} -> \x = truncated +NOTICE: EUC_CN CS2: \x8e0203 -> {9306627} -> \x8e0203 = OK +NOTICE: EUC_CN CS3, short: \x8f -> {} -> \x = truncated +NOTICE: EUC_CN CS3, short: \x8f02 -> {} -> \x = truncated +NOTICE: EUC_CN CS3: \x8f0203 -> {9372163} -> \x8f0203 = OK +NOTICE: EUC_TW ASCII: \x61 -> {97} -> \x61 = OK +NOTICE: EUC_TW CS1, short: \x80 -> {} -> \x = truncated +NOTICE: EUC_TW CS1: \x8002 -> {32770} -> \x8002 = OK +NOTICE: EUC_TW CS2, short: \x8e -> {} -> \x = truncated +NOTICE: EUC_TW CS2, short: \x8e02 -> {} -> \x = truncated +NOTICE: EUC_TW CS2, short: \x8e0203 -> {} -> \x = truncated +NOTICE: EUC_TW CS2: \x8e020304 -> {-1912470780} -> \x8e020304 = OK +NOTICE: EUC_TW CS3, short: \x8f -> {} -> \x = truncated +NOTICE: EUC_TW CS3, short: \x8f02 -> {} -> \x = truncated +NOTICE: EUC_TW CS3: \x8f0203 -> {9372163} -> \x8f0203 = OK +NOTICE: UTF8 ASCII: \x61 -> {97} -> \x61 = OK +NOTICE: UTF8 2 byte, short: \xdf -> {} -> \x = truncated +NOTICE: UTF8 2 byte: \xdf82 -> {1986} -> \xdf82 = OK +NOTICE: UTF8 3 byte, short: \xef -> {} -> \x = truncated +NOTICE: UTF8 3 byte, short: \xef82 -> {} -> \x = truncated +NOTICE: UTF8 3 byte: \xef8283 -> {61571} -> \xef8283 = OK +NOTICE: UTF8 4 byte, short: \xf7 -> {} -> \x = truncated +NOTICE: UTF8 4 byte, short: \xf782 -> {} -> \x = truncated +NOTICE: UTF8 4 byte, short: \xf78283 -> {} -> \x = truncated +NOTICE: UTF8 4 byte: \xf7828384 -> {1843396} -> \xf7828384 = OK +NOTICE: UTF8 5 byte, unsupported: \xfb -> {251} -> \xc3bb = failed +NOTICE: UTF8 5 byte, unsupported: \xfb82 -> {251,130} -> \xc3bbc282 = failed +NOTICE: UTF8 5 byte, unsupported: \xfb8283 -> {251,130,131} -> \xc3bbc282c283 = failed +NOTICE: UTF8 5 byte, unsupported: \xfb828384 -> {251,130,131,132} -> \xc3bbc282c283c284 = failed +NOTICE: UTF8 5 byte, unsupported: \xfb82838485 -> {251,130,131,132,133} -> \xc3bbc282c283c284c285 = failed +NOTICE: UTF8 6 byte, unsupported: \xfd -> {253} -> \xc3bd = failed +NOTICE: UTF8 6 byte, unsupported: \xfd82 -> {253,130} -> \xc3bdc282 = failed +NOTICE: UTF8 6 byte, unsupported: \xfd8283 -> {253,130,131} -> \xc3bdc282c283 = failed +NOTICE: UTF8 6 byte, unsupported: \xfd828384 -> {253,130,131,132} -> \xc3bdc282c283c284 = failed +NOTICE: UTF8 6 byte, unsupported: \xfd82838485 -> {253,130,131,132,133} -> \xc3bdc282c283c284c285 = failed +NOTICE: UTF8 6 byte, unsupported: \xfd8283848586 -> {253,130,131,132,133,134} -> \xc3bdc282c283c284c285c286 = failed +NOTICE: MULE_INTERNAL ASCII: \x61 -> {97} -> \x61 = OK +NOTICE: MULE_INTERNAL LC1, short: \x81 -> {} -> \x = truncated +NOTICE: MULE_INTERNAL LC1: \x8182 -> {8454274} -> \x8182 = OK +NOTICE: MULE_INTERNAL LC2, short: \x90 -> {} -> \x = truncated +NOTICE: MULE_INTERNAL LC2, short: \x9082 -> {} -> \x = truncated +NOTICE: MULE_INTERNAL LC2: \x908283 -> {9470595} -> \x908283 = OK + ?column? +---------- + t +(1 row) + +DROP TABLE encoding_tests; +DROP FUNCTION test_encoding; +DROP FUNCTION test_text_to_wchars; +DROP FUNCTION test_mblen_func; +DROP FUNCTION test_bytea_to_text; +DROP FUNCTION test_text_to_bytea; +-- substring slow path: multi-byte escape char vs. multi-byte pattern char. +SELECT SUBSTRING('a' SIMILAR U&'\00AC' ESCAPE U&'\00A7'); + substring +----------- + +(1 row) + +-- Levenshtein distance metric: exercise character length cache. +SELECT U&"real\00A7_name" FROM (select 1) AS x(real_name); +ERROR: column "real§_name" does not exist +LINE 1: SELECT U&"real\00A7_name" FROM (select 1) AS x(real_name); + ^ +HINT: Perhaps you meant to reference the column "x.real_name". +-- JSON errcontext: truncate long data. +SELECT repeat(U&'\00A7', 30)::json; +ERROR: invalid input syntax for type json +DETAIL: Token "§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§" is invalid. +CONTEXT: JSON data, line 1: ...§§§§§§§§§§§§§§§§§§§§§§§§ diff --git a/src/test/regress/expected/encoding_1.out b/src/test/regress/expected/encoding_1.out new file mode 100644 index 00000000000..a5b02090901 --- /dev/null +++ b/src/test/regress/expected/encoding_1.out @@ -0,0 +1,4 @@ +/* skip test if not UTF8 server encoding */ +SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset +\if :skip_test +\quit diff --git a/src/test/regress/expected/euc_kr.out b/src/test/regress/expected/euc_kr.out new file mode 100644 index 00000000000..7a61c89a43a --- /dev/null +++ b/src/test/regress/expected/euc_kr.out @@ -0,0 +1,16 @@ +-- This test is about EUC_KR encoding, chosen as perhaps the most prevalent +-- non-UTF8, multibyte encoding as of 2026-01. Since UTF8 can represent all +-- of EUC_KR, also run the test in UTF8. +SELECT getdatabaseencoding() NOT IN ('EUC_KR', 'UTF8') AS skip_test \gset +\if :skip_test +\quit +\endif +-- Exercise is_multibyte_char_in_char (non-UTF8) slow path. +SELECT POSITION( + convert_from('\xbcf6c7d0', 'EUC_KR') IN + convert_from('\xb0fac7d02c20bcf6c7d02c20b1e2bcfa2c20bbee', 'EUC_KR')); + position +---------- + 5 +(1 row) + diff --git a/src/test/regress/expected/euc_kr_1.out b/src/test/regress/expected/euc_kr_1.out new file mode 100644 index 00000000000..faaac5d6355 --- /dev/null +++ b/src/test/regress/expected/euc_kr_1.out @@ -0,0 +1,6 @@ +-- This test is about EUC_KR encoding, chosen as perhaps the most prevalent +-- non-UTF8, multibyte encoding as of 2026-01. Since UTF8 can represent all +-- of EUC_KR, also run the test in UTF8. +SELECT getdatabaseencoding() NOT IN ('EUC_KR', 'UTF8') AS skip_test \gset +\if :skip_test +\quit diff --git a/src/test/regress/expected/groupingsets.out b/src/test/regress/expected/groupingsets.out index 4c9b439f1c7..ca6f2207ab1 100644 --- a/src/test/regress/expected/groupingsets.out +++ b/src/test/regress/expected/groupingsets.out @@ -463,6 +463,101 @@ select x, y || 'y' | 3y (8 rows) +-- check that operands wrapped in PlaceHolderVars are capable of index matching +begin; +set local enable_bitmapscan = off; +explain (costs off) +select x, y + from (select unique1 as x, unique2 as y from tenk1) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + QUERY PLAN +----------------------------------------------------- + Sort + Sort Key: tenk1.unique1, tenk1.unique2 + -> GroupAggregate + Group Key: tenk1.unique1 + Sort Key: tenk1.unique2 + Group Key: tenk1.unique2 + -> Index Scan using tenk1_unique1 on tenk1 + Index Cond: (unique1 = 1) +(8 rows) + +select x, y + from (select unique1 as x, unique2 as y from tenk1) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + x | y +---+------ + 1 | + | 2838 +(2 rows) + +explain (costs off) +select x, y + from (select unique1::oid as x, unique2 as y from tenk1) as t + where x::integer = 1 + group by grouping sets (x, y) + order by 1, 2; + QUERY PLAN +----------------------------------------------------------------- + Sort + Sort Key: ((tenk1.unique1)::oid), tenk1.unique2 + -> GroupAggregate + Group Key: ((tenk1.unique1)::oid) + Sort Key: tenk1.unique2 + Group Key: tenk1.unique2 + -> Sort + Sort Key: ((tenk1.unique1)::oid) + -> Index Scan using tenk1_unique1 on tenk1 + Index Cond: (((unique1)::oid)::integer = 1) +(10 rows) + +select x, y + from (select unique1::oid as x, unique2 as y from tenk1) as t + where x::integer = 1 + group by grouping sets (x, y) + order by 1, 2; + x | y +---+------ + 1 | + | 2838 +(2 rows) + +explain (costs off) +select x, y + from (select t1.unique1 as x, t1.unique2 as y from tenk1 t1, tenk1 t2) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + QUERY PLAN +------------------------------------------------------------------- + Sort + Sort Key: t1.unique1, t1.unique2 + -> GroupAggregate + Group Key: t1.unique1 + Sort Key: t1.unique2 + Group Key: t1.unique2 + -> Nested Loop + -> Index Scan using tenk1_unique1 on tenk1 t1 + Index Cond: (unique1 = 1) + -> Index Only Scan using tenk1_hundred on tenk1 t2 +(10 rows) + +select x, y + from (select t1.unique1 as x, t1.unique2 as y from tenk1 t1, tenk1 t2) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + x | y +---+------ + 1 | + | 2838 +(2 rows) + +rollback; -- check qual push-down rules for a subquery with grouping sets explain (verbose, costs off) select * from ( @@ -2558,4 +2653,71 @@ group by grouping sets((a, b), (a)); 2 | 2 | 4 (4 rows) +-- test handling of SRFs with grouping sets +explain (verbose, costs off) +select generate_series(1, a) as g +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(g) +order by 1; + QUERY PLAN +-------------------------------------------------------------- + Sort + Output: (generate_series(1, "*VALUES*".column1)) + Sort Key: (generate_series(1, "*VALUES*".column1)) + -> MixedAggregate + Output: (generate_series(1, "*VALUES*".column1)) + Hash Key: generate_series(1, "*VALUES*".column1) + Group Key: () + -> ProjectSet + Output: generate_series(1, "*VALUES*".column1) + -> Values Scan on "*VALUES*" + Output: "*VALUES*".column1 +(11 rows) + +select generate_series(1, a) as g +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(g) +order by 1; + g +--- + 1 + 2 + +(3 rows) + +explain (verbose, costs off) +select generate_series(1, a) as g, a+b as ab +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(a, ab) +order by 1, 2; + QUERY PLAN +------------------------------------------------------------------------------------------------------------------------- + Sort + Output: (generate_series(1, "*VALUES*".column1)), (("*VALUES*".column1 + "*VALUES*".column2)), "*VALUES*".column1 + Sort Key: (generate_series(1, "*VALUES*".column1)), (("*VALUES*".column1 + "*VALUES*".column2)) + -> ProjectSet + Output: generate_series(1, "*VALUES*".column1), (("*VALUES*".column1 + "*VALUES*".column2)), "*VALUES*".column1 + -> MixedAggregate + Output: "*VALUES*".column1, (("*VALUES*".column1 + "*VALUES*".column2)) + Hash Key: "*VALUES*".column1, ("*VALUES*".column1 + "*VALUES*".column2) + Hash Key: "*VALUES*".column1 + Group Key: () + -> Values Scan on "*VALUES*" + Output: ("*VALUES*".column1 + "*VALUES*".column2), "*VALUES*".column1 +(12 rows) + +select generate_series(1, a) as g, a+b as ab +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(a, ab) +order by 1, 2; + g | ab +---+---- + 1 | 2 + 1 | 4 + 1 | + 1 | + 2 | 4 + 2 | +(6 rows) + -- end diff --git a/src/test/regress/expected/hash_index.out b/src/test/regress/expected/hash_index.out index 0d4bdb2adef..04035400f12 100644 --- a/src/test/regress/expected/hash_index.out +++ b/src/test/regress/expected/hash_index.out @@ -40,6 +40,8 @@ CREATE INDEX hash_name_index ON hash_name_heap USING hash (random name_ops); CREATE INDEX hash_txt_index ON hash_txt_heap USING hash (random text_ops); CREATE INDEX hash_f8_index ON hash_f8_heap USING hash (random float8_ops) WITH (fillfactor=60); +CREATE INDEX hash_i4_partial_index ON hash_i4_heap USING hash (seqno) + WHERE seqno = 9999; -- -- Also try building functional, expressional, and partial indexes on -- tables that already contain data. @@ -131,6 +133,25 @@ SELECT * FROM hash_f8_heap -------+-------- (0 rows) +-- +-- partial hash index +-- +EXPLAIN (COSTS OFF) +SELECT * FROM hash_i4_heap + WHERE seqno = 9999; + QUERY PLAN +-------------------------------------------------------- + Index Scan using hash_i4_partial_index on hash_i4_heap + Index Cond: (seqno = 9999) +(2 rows) + +SELECT * FROM hash_i4_heap + WHERE seqno = 9999; + seqno | random +-------+------------ + 9999 | 1227676208 +(1 row) + -- -- hash index -- grep '^90[^0-9]' hashovfl.data diff --git a/src/test/regress/expected/join.out b/src/test/regress/expected/join.out index 6738ba316e6..b61b6af441c 100644 --- a/src/test/regress/expected/join.out +++ b/src/test/regress/expected/join.out @@ -6774,10 +6774,10 @@ where ss.a = ss.phv and f1 = 0; QUERY PLAN ------------------------------------ Nested Loop - -> Seq Scan on int4_tbl - Filter: (f1 = 0) -> Seq Scan on parttbl1 parttbl Filter: (a = 12) + -> Seq Scan on int4_tbl + Filter: (f1 = 0) (5 rows) select * from @@ -9774,6 +9774,29 @@ GROUP BY s.c1, s.c2; (7 rows) DROP TABLE group_tbl; +-- Test that we ignore PlaceHolderVars when looking up statistics +EXPLAIN (COSTS OFF) +SELECT t1.unique1 FROM tenk1 t1 LEFT JOIN + (SELECT *, 42 AS phv FROM tenk1 t2) ss ON t1.unique2 = ss.unique2 +WHERE ss.unique1 = ss.phv AND t1.unique1 < 100; + QUERY PLAN +-------------------------------------------------- + Nested Loop + -> Seq Scan on tenk1 t2 + Filter: (unique1 = 42) + -> Index Scan using tenk1_unique2 on tenk1 t1 + Index Cond: (unique2 = t2.unique2) + Filter: (unique1 < 100) +(6 rows) + +SELECT t1.unique1 FROM tenk1 t1 LEFT JOIN + (SELECT *, 42 AS phv FROM tenk1 t2) ss ON t1.unique2 = ss.unique2 +WHERE ss.unique1 = ss.phv AND t1.unique1 < 100; + unique1 +--------- + 42 +(1 row) + -- -- Test for a nested loop join involving index scan, transforming OR-clauses -- to SAOP. diff --git a/src/test/regress/expected/jsonb.out b/src/test/regress/expected/jsonb.out index 5a1eb18aba2..36c31c14576 100644 --- a/src/test/regress/expected/jsonb.out +++ b/src/test/regress/expected/jsonb.out @@ -3099,6 +3099,7 @@ SELECT count(*) FROM testjsonb WHERE j @? '$.bar'; 0 (1 row) +ALTER TABLE testjsonb SET (parallel_workers = 2); CREATE INDEX jidx ON testjsonb USING gin (j); SET enable_seqscan = off; SELECT count(*) FROM testjsonb WHERE j @> '{"wait":null}'; @@ -3475,7 +3476,7 @@ SELECT count(*) FROM testjsonb WHERE j = '{"pos":98, "line":371, "node":"CBA", " --gin path opclass DROP INDEX jidx; -CREATE INDEX jidx ON testjsonb USING gin (j jsonb_path_ops); +CREATE INDEX CONCURRENTLY jidx ON testjsonb USING gin (j jsonb_path_ops); SET enable_seqscan = off; SELECT count(*) FROM testjsonb WHERE j @> '{"wait":null}'; count diff --git a/src/test/regress/expected/sqljson_queryfuncs.out b/src/test/regress/expected/sqljson_queryfuncs.out index 5a35aeb7bba..53145f50f18 100644 --- a/src/test/regress/expected/sqljson_queryfuncs.out +++ b/src/test/regress/expected/sqljson_queryfuncs.out @@ -1331,6 +1331,10 @@ SELECT JSON_QUERY(jsonb '{"a": 123}', '$' || '.' || 'a' WITH WRAPPER); [123] (1 row) +SELECT JSON_QUERY(jsonb '{"a": 123}', ('$' || '.' || 'a' || NULL)::date WITH WRAPPER); +ERROR: JSON path expression must be of type jsonpath, not of type date +LINE 1: SELECT JSON_QUERY(jsonb '{"a": 123}', ('$' || '.' || 'a' || ... + ^ -- Should fail (invalid path) SELECT JSON_QUERY(jsonb '{"a": 123}', 'error' || ' ' || 'error'); ERROR: syntax error at or near " " of jsonpath input @@ -1355,6 +1359,10 @@ SELECT json_value('"aaa"', path RETURNING json) FROM jsonpaths; "aaa" (1 row) +SELECT json_value('"aaa"', jsonpaths RETURNING json) FROM jsonpaths; +ERROR: JSON path expression must be of type jsonpath, not of type jsonpaths +LINE 1: SELECT json_value('"aaa"', jsonpaths RETURNING json) FROM js... + ^ -- Test PASSING argument parsing SELECT JSON_QUERY(jsonb 'null', '$xyz' PASSING 1 AS xy); ERROR: could not find jsonpath variable "xyz" diff --git a/src/test/regress/expected/subselect.out b/src/test/regress/expected/subselect.out index ff667bec8ba..323429d896f 100644 --- a/src/test/regress/expected/subselect.out +++ b/src/test/regress/expected/subselect.out @@ -676,6 +676,23 @@ select * from ( 0 (1 row) +-- +-- Test cases for interactions between PARAM_EXEC, subplans and array +-- subscripts +-- +-- check that array subscription doesn't conflict with PARAM_EXEC (see #19370) +SELECT (array[1,2])[(SELECT g.i)] FROM generate_series(1, 1) g(i); + array +------- + 1 +(1 row) + +SELECT (array[1,2])[(SELECT g.i):(SELECT g.i + 1)] FROM generate_series(1, 1) g(i); + array +------- + {1,2} +(1 row) + -- -- Test that an IN implemented using a UniquePath does unique-ification -- with the right semantics, as per bug #4113. (Unfortunately we have @@ -1714,6 +1731,110 @@ NOTICE: x = 9, y = 13 9 | 3 (3 rows) +-- +-- check that an upper-level qual is not pushed down if it references a grouped +-- Var whose underlying expression contains SRFs +-- +explain (verbose, costs off) +select * from + (select generate_series(1, ten) as g, count(*) from tenk1 group by 1) ss + where ss.g = 1; + QUERY PLAN +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Subquery Scan on ss + Output: ss.g, ss.count + Filter: (ss.g = 1) + -> HashAggregate + Output: (generate_series(1, tenk1.ten)), count(*) + Group Key: generate_series(1, tenk1.ten) + -> ProjectSet + Output: generate_series(1, tenk1.ten) + -> Seq Scan on public.tenk1 + Output: tenk1.unique1, tenk1.unique2, tenk1.two, tenk1.four, tenk1.ten, tenk1.twenty, tenk1.hundred, tenk1.thousand, tenk1.twothousand, tenk1.fivethous, tenk1.tenthous, tenk1.odd, tenk1.even, tenk1.stringu1, tenk1.stringu2, tenk1.string4 +(10 rows) + +select * from + (select generate_series(1, ten) as g, count(*) from tenk1 group by 1) ss + where ss.g = 1; + g | count +---+------- + 1 | 9000 +(1 row) + +-- +-- check that an upper-level qual is not pushed down if it references a grouped +-- Var whose underlying expression contains volatile functions +-- +alter function tattle(x int, y int) volatile; +explain (verbose, costs off) +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; + QUERY PLAN +------------------------------------------------------------ + Subquery Scan on ss + Output: ss.v, ss.count + Filter: ss.v + -> GroupAggregate + Output: (tattle(3, tenk1.ten)), count(*) + Group Key: (tattle(3, tenk1.ten)) + -> Sort + Output: (tattle(3, tenk1.ten)) + Sort Key: (tattle(3, tenk1.ten)) + -> Bitmap Heap Scan on public.tenk1 + Output: tattle(3, tenk1.ten) + Recheck Cond: (tenk1.unique1 < 3) + -> Bitmap Index Scan on tenk1_unique1 + Index Cond: (tenk1.unique1 < 3) +(14 rows) + +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; +NOTICE: x = 3, y = 2 +NOTICE: x = 3, y = 1 +NOTICE: x = 3, y = 0 + v | count +---+------- + t | 3 +(1 row) + +-- if we pretend it's stable, we get different results: +alter function tattle(x int, y int) stable; +explain (verbose, costs off) +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; + QUERY PLAN +------------------------------------------------------ + GroupAggregate + Output: (tattle(3, tenk1.ten)), count(*) + Group Key: (tattle(3, tenk1.ten)) + -> Sort + Output: (tattle(3, tenk1.ten)) + Sort Key: (tattle(3, tenk1.ten)) + -> Bitmap Heap Scan on public.tenk1 + Output: tattle(3, tenk1.ten) + Recheck Cond: (tenk1.unique1 < 3) + Filter: tattle(3, tenk1.ten) + -> Bitmap Index Scan on tenk1_unique1 + Index Cond: (tenk1.unique1 < 3) +(12 rows) + +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; +NOTICE: x = 3, y = 2 +NOTICE: x = 3, y = 2 +NOTICE: x = 3, y = 1 +NOTICE: x = 3, y = 1 +NOTICE: x = 3, y = 0 +NOTICE: x = 3, y = 0 + v | count +---+------- + t | 3 +(1 row) + drop function tattle(x int, y int); -- -- Test that LIMIT can be pushed to SORT through a subquery that just projects diff --git a/src/test/regress/expected/triggers.out b/src/test/regress/expected/triggers.out index c9d0c44db8b..fac786cb5d1 100644 --- a/src/test/regress/expected/triggers.out +++ b/src/test/regress/expected/triggers.out @@ -3012,13 +3012,19 @@ NOTICE: trigger = table1_trig, new table = (42) with wcte as (insert into table1 values (43)) insert into table1 values (44); NOTICE: trigger = table1_trig, new table = (43), (44) +with wcte as (insert into table1 values (45)) + merge into table1 using (values (46)) as v(a) on table1.a = v.a + when not matched then insert values (v.a); +NOTICE: trigger = table1_trig, new table = (45), (46) select * from table1; a ---- 42 44 43 -(3 rows) + 46 + 45 +(5 rows) select * from table2; a diff --git a/src/test/regress/expected/tsearch.out b/src/test/regress/expected/tsearch.out index 9fad6c8b04b..9287c440709 100644 --- a/src/test/regress/expected/tsearch.out +++ b/src/test/regress/expected/tsearch.out @@ -870,6 +870,7 @@ RESET enable_seqscan; RESET enable_indexscan; RESET enable_bitmapscan; DROP INDEX wowidx; +ALTER TABLE test_tsvector SET (parallel_workers = 2); CREATE INDEX wowidx ON test_tsvector USING gin (a); SET enable_seqscan=OFF; -- GIN only supports bitmapscan, so no need to test plain indexscan diff --git a/src/test/regress/expected/with.out b/src/test/regress/expected/with.out index 61409197dbf..7b1969e609f 100644 --- a/src/test/regress/expected/with.out +++ b/src/test/regress/expected/with.out @@ -2299,36 +2299,44 @@ from int4_tbl; -- -- test for bug #19055: interaction of WITH with aggregates -- --- The reference to cte1 must determine the aggregate's level, --- even though it contains no Vars referencing cte1 -explain (verbose, costs off) +-- For now, we just throw an error if there's a use of a CTE below the +-- semantic level that the SQL standard assigns to the aggregate. +-- It's not entirely clear what we could do instead that doesn't risk +-- breaking more things than it fixes. select f1, (with cte1(x,y) as (select 1,2) select count((select i4.f1 from cte1))) as ss from int4_tbl i4; +ERROR: outer-level aggregate cannot use a nested CTE +LINE 2: select count((select i4.f1 from cte1))) as ss + ^ +DETAIL: CTE "cte1" is below the aggregate's semantic level. +-- +-- test for bug #19106: interaction of WITH with aggregates +-- +-- the initial fix for #19055 was too aggressive and broke this case +explain (verbose, costs off) +with a as ( select id from (values (1), (2)) as v(id) ), + b as ( select max((select sum(id) from a)) as agg ) +select agg from b; QUERY PLAN -------------------------------------------- - Seq Scan on public.int4_tbl i4 - Output: i4.f1, (SubPlan 2) - SubPlan 2 + Aggregate + Output: max((InitPlan 1).col1) + InitPlan 1 -> Aggregate - Output: count((InitPlan 1).col1) - InitPlan 1 - -> Result - Output: i4.f1 - -> Result -(9 rows) + Output: sum("*VALUES*".column1) + -> Values Scan on "*VALUES*" + Output: "*VALUES*".column1 + -> Result +(8 rows) -select f1, (with cte1(x,y) as (select 1,2) - select count((select i4.f1 from cte1))) as ss -from int4_tbl i4; - f1 | ss --------------+---- - 0 | 1 - 123456 | 1 - -123456 | 1 - 2147483647 | 1 - -2147483647 | 1 -(5 rows) +with a as ( select id from (values (1), (2)) as v(id) ), + b as ( select max((select sum(id) from a)) as agg ) +select agg from b; + agg +----- + 3 +(1 row) -- -- test for nested-recursive-WITH bug @@ -2863,6 +2871,47 @@ SELECT * FROM bug6051_3; --- (0 rows) +-- check that recursive CTE processing doesn't rewrite a CTE more than once +-- (must not try to expand GENERATED ALWAYS IDENTITY columns more than once) +CREATE TEMP TABLE id_alw1 (i int GENERATED ALWAYS AS IDENTITY); +CREATE TEMP TABLE id_alw2 (i int GENERATED ALWAYS AS IDENTITY); +CREATE TEMP VIEW id_alw2_view AS SELECT * FROM id_alw2; +CREATE TEMP TABLE id_alw3 (i int GENERATED ALWAYS AS IDENTITY); +CREATE RULE id_alw3_ins AS ON INSERT TO id_alw3 DO INSTEAD + WITH t1 AS (INSERT INTO id_alw1 DEFAULT VALUES RETURNING i) + INSERT INTO id_alw2_view DEFAULT VALUES RETURNING i; +CREATE TEMP VIEW id_alw3_view AS SELECT * FROM id_alw3; +CREATE TEMP TABLE id_alw4 (i int GENERATED ALWAYS AS IDENTITY); +WITH t4 AS (INSERT INTO id_alw4 DEFAULT VALUES RETURNING i) + INSERT INTO id_alw3_view DEFAULT VALUES RETURNING i; + i +--- + 1 +(1 row) + +SELECT * from id_alw1; + i +--- + 1 +(1 row) + +SELECT * from id_alw2; + i +--- + 1 +(1 row) + +SELECT * from id_alw3; + i +--- +(0 rows) + +SELECT * from id_alw4; + i +--- + 1 +(1 row) + -- check case where CTE reference is removed due to optimization EXPLAIN (VERBOSE, COSTS OFF) SELECT q1 FROM diff --git a/src/test/regress/parallel_schedule b/src/test/regress/parallel_schedule index a424be2a6bf..b774d24dc02 100644 --- a/src/test/regress/parallel_schedule +++ b/src/test/regress/parallel_schedule @@ -28,7 +28,7 @@ test: strings md5 numerology point lseg line box path polygon circle date time t # geometry depends on point, lseg, line, box, path, polygon, circle # horology depends on date, time, timetz, timestamp, timestamptz, interval # ---------- -test: geometry horology tstypes regex type_sanity opr_sanity misc_sanity comments expressions unicode xid mvcc database stats_import +test: geometry horology tstypes regex type_sanity opr_sanity misc_sanity comments expressions unicode xid mvcc database stats_import encoding euc_kr # ---------- # Load huge amounts of data diff --git a/src/test/regress/regress.c b/src/test/regress/regress.c index 3dbba069024..fc16b7b4307 100644 --- a/src/test/regress/regress.c +++ b/src/test/regress/regress.c @@ -990,6 +990,145 @@ test_enc_conversion(PG_FUNCTION_ARGS) PG_RETURN_DATUM(HeapTupleGetDatum(tuple)); } +/* Convert bytea to text without validation for corruption tests from SQL. */ +PG_FUNCTION_INFO_V1(test_bytea_to_text); +Datum +test_bytea_to_text(PG_FUNCTION_ARGS) +{ + PG_RETURN_TEXT_P(PG_GETARG_BYTEA_PP(0)); +} + +/* And the reverse. */ +PG_FUNCTION_INFO_V1(test_text_to_bytea); +Datum +test_text_to_bytea(PG_FUNCTION_ARGS) +{ + PG_RETURN_BYTEA_P(PG_GETARG_TEXT_PP(0)); +} + +/* Corruption tests in C. */ +PG_FUNCTION_INFO_V1(test_mblen_func); +Datum +test_mblen_func(PG_FUNCTION_ARGS) +{ + const char *func = text_to_cstring(PG_GETARG_BYTEA_PP(0)); + const char *encoding = text_to_cstring(PG_GETARG_BYTEA_PP(1)); + text *string = PG_GETARG_BYTEA_PP(2); + int offset = PG_GETARG_INT32(3); + const char *data = VARDATA_ANY(string); + size_t size = VARSIZE_ANY_EXHDR(string); + int result = 0; + + if (strcmp(func, "pg_mblen_unbounded") == 0) + result = pg_mblen_unbounded(data + offset); + else if (strcmp(func, "pg_mblen_cstr") == 0) + result = pg_mblen_cstr(data + offset); + else if (strcmp(func, "pg_mblen_with_len") == 0) + result = pg_mblen_with_len(data + offset, size - offset); + else if (strcmp(func, "pg_mblen_range") == 0) + result = pg_mblen_range(data + offset, data + size); + else if (strcmp(func, "pg_encoding_mblen") == 0) + result = pg_encoding_mblen(pg_char_to_encoding(encoding), data + offset); + else + elog(ERROR, "unknown function"); + + PG_RETURN_INT32(result); +} + +PG_FUNCTION_INFO_V1(test_text_to_wchars); +Datum +test_text_to_wchars(PG_FUNCTION_ARGS) +{ + const char *encoding_name = text_to_cstring(PG_GETARG_BYTEA_PP(0)); + text *string = PG_GETARG_TEXT_PP(1); + const char *data = VARDATA_ANY(string); + size_t size = VARSIZE_ANY_EXHDR(string); + pg_wchar *wchars = palloc(sizeof(pg_wchar) * (size + 1)); + Datum *datums; + int wlen; + int encoding; + + encoding = pg_char_to_encoding(encoding_name); + if (encoding < 0) + elog(ERROR, "unknown encoding name: %s", encoding_name); + + if (size > 0) + { + datums = palloc(sizeof(Datum) * size); + wlen = pg_encoding_mb2wchar_with_len(encoding, + data, + wchars, + size); + Assert(wlen >= 0); + Assert(wlen <= size); + Assert(wchars[wlen] == 0); + + for (int i = 0; i < wlen; ++i) + datums[i] = UInt32GetDatum(wchars[i]); + } + else + { + datums = NULL; + wlen = 0; + } + + PG_RETURN_ARRAYTYPE_P(construct_array_builtin(datums, wlen, INT4OID)); +} + +PG_FUNCTION_INFO_V1(test_wchars_to_text); +Datum +test_wchars_to_text(PG_FUNCTION_ARGS) +{ + const char *encoding_name = text_to_cstring(PG_GETARG_BYTEA_PP(0)); + ArrayType *array = PG_GETARG_ARRAYTYPE_P(1); + Datum *datums; + bool *nulls; + char *mb; + text *result; + int wlen; + int bytes; + int encoding; + + encoding = pg_char_to_encoding(encoding_name); + if (encoding < 0) + elog(ERROR, "unknown encoding name: %s", encoding_name); + + deconstruct_array_builtin(array, INT4OID, &datums, &nulls, &wlen); + + if (wlen > 0) + { + pg_wchar *wchars = palloc(sizeof(pg_wchar) * wlen); + + for (int i = 0; i < wlen; ++i) + { + if (nulls[i]) + elog(ERROR, "unexpected NULL in array"); + wchars[i] = DatumGetInt32(datums[i]); + } + + mb = palloc(pg_encoding_max_length(encoding) * wlen + 1); + bytes = pg_encoding_wchar2mb_with_len(encoding, wchars, mb, wlen); + } + else + { + mb = ""; + bytes = 0; + } + + result = palloc(bytes + VARHDRSZ); + SET_VARSIZE(result, bytes + VARHDRSZ); + memcpy(VARDATA(result), mb, bytes); + + PG_RETURN_TEXT_P(result); +} + +PG_FUNCTION_INFO_V1(test_valid_server_encoding); +Datum +test_valid_server_encoding(PG_FUNCTION_ARGS) +{ + return pg_valid_server_encoding(text_to_cstring(PG_GETARG_TEXT_PP(0))); +} + /* Provide SQL access to IsBinaryCoercible() */ PG_FUNCTION_INFO_V1(binary_coercible); Datum diff --git a/src/test/regress/sql/arrays.sql b/src/test/regress/sql/arrays.sql index 47d62c1d38d..ddd496e80ed 100644 --- a/src/test/regress/sql/arrays.sql +++ b/src/test/regress/sql/arrays.sql @@ -528,6 +528,10 @@ select '[2147483646:2147483646]={1}'::int[]; select '[-2147483648:-2147483647]={1,2}'::int[]; -- all of the above should be accepted +-- some day we might allow these cases, but for now they're errors: +select array[]::oidvector; +select array[]::int2vector; + -- tests for array aggregates CREATE TEMP TABLE arraggtest ( f1 INT[], f2 TEXT[][], f3 FLOAT[]); diff --git a/src/test/regress/sql/collate.icu.utf8.sql b/src/test/regress/sql/collate.icu.utf8.sql index 6f5abac0dc0..b6c54503d21 100644 --- a/src/test/regress/sql/collate.icu.utf8.sql +++ b/src/test/regress/sql/collate.icu.utf8.sql @@ -568,6 +568,9 @@ SELECT 'abc' <= 'ABC' COLLATE case_insensitive, 'abc' >= 'ABC' COLLATE case_inse SELECT array_sort('{a,B}'::text[] COLLATE case_insensitive); SELECT array_sort('{a,B}'::text[] COLLATE "C"); +-- test replace() at the end of the string (bug #19341) +SELECT replace('testX' COLLATE case_insensitive, 'x' COLLATE case_insensitive, 'er'); + -- test language tags CREATE COLLATION lt_insensitive (provider = icu, locale = 'en-u-ks-level1', deterministic = false); SELECT 'aBcD' COLLATE lt_insensitive = 'AbCd' COLLATE lt_insensitive; diff --git a/src/test/regress/sql/constraints.sql b/src/test/regress/sql/constraints.sql index 733a1dbccfe..1e9989698b6 100644 --- a/src/test/regress/sql/constraints.sql +++ b/src/test/regress/sql/constraints.sql @@ -623,7 +623,9 @@ DROP TABLE deferred_excl; -- verify constraints created for NOT NULL clauses CREATE TABLE notnull_tbl1 (a INTEGER NOT NULL NOT NULL); \d+ notnull_tbl1 --- no-op +-- specifying an existing constraint is a no-op +ALTER TABLE notnull_tbl1 ADD CONSTRAINT notnull_tbl1_a_not_null NOT NULL a; +-- but using a different constraint name is not allowed ALTER TABLE notnull_tbl1 ADD CONSTRAINT nn NOT NULL a; \d+ notnull_tbl1 -- duplicate name diff --git a/src/test/regress/sql/encoding.sql b/src/test/regress/sql/encoding.sql new file mode 100644 index 00000000000..b9543c0cb32 --- /dev/null +++ b/src/test/regress/sql/encoding.sql @@ -0,0 +1,228 @@ +/* skip test if not UTF8 server encoding */ +SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset +\if :skip_test +\quit +\endif + +\getenv libdir PG_LIBDIR +\getenv dlsuffix PG_DLSUFFIX + +\set regresslib :libdir '/regress' :dlsuffix + +CREATE FUNCTION test_bytea_to_text(bytea) RETURNS text + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_text_to_bytea(text) RETURNS bytea + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_mblen_func(text, text, text, int) RETURNS int + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_text_to_wchars(text, text) RETURNS int[] + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_wchars_to_text(text, int[]) RETURNS text + AS :'regresslib' LANGUAGE C STRICT; +CREATE FUNCTION test_valid_server_encoding(text) RETURNS boolean + AS :'regresslib' LANGUAGE C STRICT; + + +CREATE TABLE regress_encoding(good text, truncated text, with_nul text, truncated_with_nul text); +INSERT INTO regress_encoding +VALUES ('café', + 'caf' || test_bytea_to_text('\xc3'), + 'café' || test_bytea_to_text('\x00') || 'dcba', + 'caf' || test_bytea_to_text('\xc300') || 'dcba'); + +SELECT good, truncated, with_nul FROM regress_encoding; + +SELECT length(good) FROM regress_encoding; +SELECT substring(good, 3, 1) FROM regress_encoding; +SELECT substring(good, 4, 1) FROM regress_encoding; +SELECT regexp_replace(good, '^caf(.)$', '\1') FROM regress_encoding; +SELECT reverse(good) FROM regress_encoding; + +-- invalid short mb character = error +SELECT length(truncated) FROM regress_encoding; +SELECT substring(truncated, 1, 1) FROM regress_encoding; +SELECT reverse(truncated) FROM regress_encoding; +-- invalid short mb character = silently dropped +SELECT regexp_replace(truncated, '^caf(.)$', '\1') FROM regress_encoding; + +-- PostgreSQL doesn't allow strings to contain NUL. If a corrupted string +-- contains NUL at a character boundary position, some functions treat it as a +-- character while others treat it as a terminator, as implementation details. + +-- NUL = terminator +SELECT length(with_nul) FROM regress_encoding; +SELECT substring(with_nul, 3, 1) FROM regress_encoding; +SELECT substring(with_nul, 4, 1) FROM regress_encoding; +SELECT substring(with_nul, 5, 1) FROM regress_encoding; +SELECT convert_to(substring(with_nul, 5, 1), 'UTF8') FROM regress_encoding; +SELECT regexp_replace(with_nul, '^caf(.)$', '\1') FROM regress_encoding; +-- NUL = character +SELECT with_nul, reverse(with_nul), reverse(reverse(with_nul)) FROM regress_encoding; + +-- If a corrupted string contains NUL in the tail bytes of a multibyte +-- character (invalid in all encodings), it is considered part of the +-- character for length purposes. An error will only be raised in code paths +-- that convert or verify encodings. + +SELECT length(truncated_with_nul) FROM regress_encoding; +SELECT substring(truncated_with_nul, 3, 1) FROM regress_encoding; +SELECT substring(truncated_with_nul, 4, 1) FROM regress_encoding; +SELECT convert_to(substring(truncated_with_nul, 4, 1), 'UTF8') FROM regress_encoding; +SELECT substring(truncated_with_nul, 5, 1) FROM regress_encoding; +SELECT regexp_replace(truncated_with_nul, '^caf(.)dcba$', '\1') = test_bytea_to_text('\xc300') FROM regress_encoding; +SELECT reverse(truncated_with_nul) FROM regress_encoding; + +-- unbounded: sequence would overrun the string! +SELECT test_mblen_func('pg_mblen_unbounded', 'UTF8', truncated, 3) +FROM regress_encoding; + +-- condition detected when using the length/range variants +SELECT test_mblen_func('pg_mblen_with_len', 'UTF8', truncated, 3) +FROM regress_encoding; +SELECT test_mblen_func('pg_mblen_range', 'UTF8', truncated, 3) +FROM regress_encoding; + +-- unbounded: sequence would overrun the string, if the terminator were really +-- the end of it +SELECT test_mblen_func('pg_mblen_unbounded', 'UTF8', truncated_with_nul, 3) +FROM regress_encoding; +SELECT test_mblen_func('pg_encoding_mblen', 'GB18030', truncated_with_nul, 3) +FROM regress_encoding; + +-- condition detected when using the cstr variants +SELECT test_mblen_func('pg_mblen_cstr', 'UTF8', truncated_with_nul, 3) +FROM regress_encoding; + +DROP TABLE regress_encoding; + +-- mb<->wchar conversions +CREATE FUNCTION test_encoding(encoding text, description text, input bytea) +RETURNS VOID LANGUAGE plpgsql AS +$$ +DECLARE + prefix text; + len int; + wchars int[]; + round_trip bytea; + result text; +BEGIN + prefix := rpad(encoding || ' ' || description || ':', 28); + + -- XXX could also test validation, length functions and include client + -- only encodings with these test cases + + IF test_valid_server_encoding(encoding) THEN + wchars := test_text_to_wchars(encoding, test_bytea_to_text(input)); + round_trip = test_text_to_bytea(test_wchars_to_text(encoding, wchars)); + if input = round_trip then + result := 'OK'; + elsif length(input) > length(round_trip) and round_trip = substr(input, 1, length(round_trip)) then + result := 'truncated'; + else + result := 'failed'; + end if; + RAISE NOTICE '% % -> % -> % = %', prefix, input, wchars, round_trip, result; + END IF; +END; +$$; +-- No validation is done on the encoding itself, just the length to avoid +-- overruns, so some of the byte sequences below are bogus. They cover +-- all code branches, server encodings only for now. +CREATE TABLE encoding_tests (encoding text, description text, input bytea); +INSERT INTO encoding_tests VALUES + -- LATIN1, other single-byte encodings + ('LATIN1', 'ASCII', 'a'), + ('LATIN1', 'extended', '\xe9'), + -- EUC_JP, EUC_JIS_2004, EUR_KR (for the purposes of wchar conversion): + -- 2 8e (CS2, not used by EUR_KR but arbitrarily considered to have EUC_JP length) + -- 3 8f (CS3, not used by EUR_KR but arbitrarily considered to have EUC_JP length) + -- 2 80..ff (CS1) + ('EUC_JP', 'ASCII', 'a'), + ('EUC_JP', 'CS1, short', '\x80'), + ('EUC_JP', 'CS1', '\x8002'), + ('EUC_JP', 'CS2, short', '\x8e'), + ('EUC_JP', 'CS2', '\x8e02'), + ('EUC_JP', 'CS3, short', '\x8f'), + ('EUC_JP', 'CS3, short', '\x8f02'), + ('EUC_JP', 'CS3', '\x8f0203'), + -- EUC_CN + -- 3 8e (CS2, not used but arbitrarily considered to have length 3) + -- 3 8f (CS3, not used but arbitrarily considered to have length 3) + -- 2 80..ff (CS1) + ('EUC_CN', 'ASCII', 'a'), + ('EUC_CN', 'CS1, short', '\x80'), + ('EUC_CN', 'CS1', '\x8002'), + ('EUC_CN', 'CS2, short', '\x8e'), + ('EUC_CN', 'CS2, short', '\x8e02'), + ('EUC_CN', 'CS2', '\x8e0203'), + ('EUC_CN', 'CS3, short', '\x8f'), + ('EUC_CN', 'CS3, short', '\x8f02'), + ('EUC_CN', 'CS3', '\x8f0203'), + -- EUC_TW: + -- 4 8e (CS2) + -- 3 8f (CS3, not used but arbitrarily considered to have length 3) + -- 2 80..ff (CS1) + ('EUC_TW', 'ASCII', 'a'), + ('EUC_TW', 'CS1, short', '\x80'), + ('EUC_TW', 'CS1', '\x8002'), + ('EUC_TW', 'CS2, short', '\x8e'), + ('EUC_TW', 'CS2, short', '\x8e02'), + ('EUC_TW', 'CS2, short', '\x8e0203'), + ('EUC_TW', 'CS2', '\x8e020304'), + ('EUC_TW', 'CS3, short', '\x8f'), + ('EUC_TW', 'CS3, short', '\x8f02'), + ('EUC_TW', 'CS3', '\x8f0203'), + -- UTF8 + -- 2 c0..df + -- 3 e0..ef + -- 4 f0..f7 (but maximum real codepoint U+10ffff has f4) + -- 5 f8..fb (not supported) + -- 6 fc..fd (not supported) + ('UTF8', 'ASCII', 'a'), + ('UTF8', '2 byte, short', '\xdf'), + ('UTF8', '2 byte', '\xdf82'), + ('UTF8', '3 byte, short', '\xef'), + ('UTF8', '3 byte, short', '\xef82'), + ('UTF8', '3 byte', '\xef8283'), + ('UTF8', '4 byte, short', '\xf7'), + ('UTF8', '4 byte, short', '\xf782'), + ('UTF8', '4 byte, short', '\xf78283'), + ('UTF8', '4 byte', '\xf7828384'), + ('UTF8', '5 byte, unsupported', '\xfb'), + ('UTF8', '5 byte, unsupported', '\xfb82'), + ('UTF8', '5 byte, unsupported', '\xfb8283'), + ('UTF8', '5 byte, unsupported', '\xfb828384'), + ('UTF8', '5 byte, unsupported', '\xfb82838485'), + ('UTF8', '6 byte, unsupported', '\xfd'), + ('UTF8', '6 byte, unsupported', '\xfd82'), + ('UTF8', '6 byte, unsupported', '\xfd8283'), + ('UTF8', '6 byte, unsupported', '\xfd828384'), + ('UTF8', '6 byte, unsupported', '\xfd82838485'), + ('UTF8', '6 byte, unsupported', '\xfd8283848586'), + -- MULE_INTERNAL + -- 2 81..8d LC1 + -- 3 90..99 LC2 + ('MULE_INTERNAL', 'ASCII', 'a'), + ('MULE_INTERNAL', 'LC1, short', '\x81'), + ('MULE_INTERNAL', 'LC1', '\x8182'), + ('MULE_INTERNAL', 'LC2, short', '\x90'), + ('MULE_INTERNAL', 'LC2, short', '\x9082'), + ('MULE_INTERNAL', 'LC2', '\x908283'); + +SELECT COUNT(test_encoding(encoding, description, input)) > 0 +FROM encoding_tests; + +DROP TABLE encoding_tests; +DROP FUNCTION test_encoding; +DROP FUNCTION test_text_to_wchars; +DROP FUNCTION test_mblen_func; +DROP FUNCTION test_bytea_to_text; +DROP FUNCTION test_text_to_bytea; + + +-- substring slow path: multi-byte escape char vs. multi-byte pattern char. +SELECT SUBSTRING('a' SIMILAR U&'\00AC' ESCAPE U&'\00A7'); +-- Levenshtein distance metric: exercise character length cache. +SELECT U&"real\00A7_name" FROM (select 1) AS x(real_name); +-- JSON errcontext: truncate long data. +SELECT repeat(U&'\00A7', 30)::json; diff --git a/src/test/regress/sql/euc_kr.sql b/src/test/regress/sql/euc_kr.sql new file mode 100644 index 00000000000..1851b2a8c14 --- /dev/null +++ b/src/test/regress/sql/euc_kr.sql @@ -0,0 +1,12 @@ +-- This test is about EUC_KR encoding, chosen as perhaps the most prevalent +-- non-UTF8, multibyte encoding as of 2026-01. Since UTF8 can represent all +-- of EUC_KR, also run the test in UTF8. +SELECT getdatabaseencoding() NOT IN ('EUC_KR', 'UTF8') AS skip_test \gset +\if :skip_test +\quit +\endif + +-- Exercise is_multibyte_char_in_char (non-UTF8) slow path. +SELECT POSITION( + convert_from('\xbcf6c7d0', 'EUC_KR') IN + convert_from('\xb0fac7d02c20bcf6c7d02c20b1e2bcfa2c20bbee', 'EUC_KR')); diff --git a/src/test/regress/sql/groupingsets.sql b/src/test/regress/sql/groupingsets.sql index 6d875475fae..826ac5f5dbf 100644 --- a/src/test/regress/sql/groupingsets.sql +++ b/src/test/regress/sql/groupingsets.sql @@ -183,6 +183,52 @@ select x, y || 'y' group by grouping sets (x, y) order by 1, 2; +-- check that operands wrapped in PlaceHolderVars are capable of index matching +begin; + +set local enable_bitmapscan = off; + +explain (costs off) +select x, y + from (select unique1 as x, unique2 as y from tenk1) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + +select x, y + from (select unique1 as x, unique2 as y from tenk1) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + +explain (costs off) +select x, y + from (select unique1::oid as x, unique2 as y from tenk1) as t + where x::integer = 1 + group by grouping sets (x, y) + order by 1, 2; + +select x, y + from (select unique1::oid as x, unique2 as y from tenk1) as t + where x::integer = 1 + group by grouping sets (x, y) + order by 1, 2; + +explain (costs off) +select x, y + from (select t1.unique1 as x, t1.unique2 as y from tenk1 t1, tenk1 t2) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + +select x, y + from (select t1.unique1 as x, t1.unique2 as y from tenk1 t1, tenk1 t2) as t + where x = 1 + group by grouping sets (x, y) + order by 1, 2; + +rollback; + -- check qual push-down rules for a subquery with grouping sets explain (verbose, costs off) select * from ( @@ -721,4 +767,27 @@ select a, b, row_number() over (order by a, b nulls first) from (values (1, 1), (2, 2)) as t (a, b) where a = b group by grouping sets((a, b), (a)); +-- test handling of SRFs with grouping sets +explain (verbose, costs off) +select generate_series(1, a) as g +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(g) +order by 1; + +select generate_series(1, a) as g +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(g) +order by 1; + +explain (verbose, costs off) +select generate_series(1, a) as g, a+b as ab +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(a, ab) +order by 1, 2; + +select generate_series(1, a) as g, a+b as ab +from (values (1, 1), (2, 2)) as t (a, b) +group by rollup(a, ab) +order by 1, 2; + -- end diff --git a/src/test/regress/sql/hash_index.sql b/src/test/regress/sql/hash_index.sql index 219da829816..60571f6cdf1 100644 --- a/src/test/regress/sql/hash_index.sql +++ b/src/test/regress/sql/hash_index.sql @@ -53,6 +53,9 @@ CREATE INDEX hash_txt_index ON hash_txt_heap USING hash (random text_ops); CREATE INDEX hash_f8_index ON hash_f8_heap USING hash (random float8_ops) WITH (fillfactor=60); +CREATE INDEX hash_i4_partial_index ON hash_i4_heap USING hash (seqno) + WHERE seqno = 9999; + -- -- Also try building functional, expressional, and partial indexes on -- tables that already contain data. @@ -117,6 +120,16 @@ SELECT * FROM hash_f8_heap SELECT * FROM hash_f8_heap WHERE hash_f8_heap.random = '88888888'::float8; +-- +-- partial hash index +-- +EXPLAIN (COSTS OFF) +SELECT * FROM hash_i4_heap + WHERE seqno = 9999; + +SELECT * FROM hash_i4_heap + WHERE seqno = 9999; + -- -- hash index -- grep '^90[^0-9]' hashovfl.data diff --git a/src/test/regress/sql/join.sql b/src/test/regress/sql/join.sql index 87865041e34..a41e06dc8a6 100644 --- a/src/test/regress/sql/join.sql +++ b/src/test/regress/sql/join.sql @@ -3732,6 +3732,16 @@ GROUP BY s.c1, s.c2; DROP TABLE group_tbl; +-- Test that we ignore PlaceHolderVars when looking up statistics +EXPLAIN (COSTS OFF) +SELECT t1.unique1 FROM tenk1 t1 LEFT JOIN + (SELECT *, 42 AS phv FROM tenk1 t2) ss ON t1.unique2 = ss.unique2 +WHERE ss.unique1 = ss.phv AND t1.unique1 < 100; + +SELECT t1.unique1 FROM tenk1 t1 LEFT JOIN + (SELECT *, 42 AS phv FROM tenk1 t2) ss ON t1.unique2 = ss.unique2 +WHERE ss.unique1 = ss.phv AND t1.unique1 < 100; + -- -- Test for a nested loop join involving index scan, transforming OR-clauses -- to SAOP. diff --git a/src/test/regress/sql/jsonb.sql b/src/test/regress/sql/jsonb.sql index 57c11acddfe..07295b46929 100644 --- a/src/test/regress/sql/jsonb.sql +++ b/src/test/regress/sql/jsonb.sql @@ -851,6 +851,7 @@ SELECT count(*) FROM testjsonb WHERE j @? '$'; SELECT count(*) FROM testjsonb WHERE j @? '$.public'; SELECT count(*) FROM testjsonb WHERE j @? '$.bar'; +ALTER TABLE testjsonb SET (parallel_workers = 2); CREATE INDEX jidx ON testjsonb USING gin (j); SET enable_seqscan = off; @@ -939,7 +940,7 @@ SELECT count(*) FROM testjsonb WHERE j = '{"pos":98, "line":371, "node":"CBA", " --gin path opclass DROP INDEX jidx; -CREATE INDEX jidx ON testjsonb USING gin (j jsonb_path_ops); +CREATE INDEX CONCURRENTLY jidx ON testjsonb USING gin (j jsonb_path_ops); SET enable_seqscan = off; SELECT count(*) FROM testjsonb WHERE j @> '{"wait":null}'; diff --git a/src/test/regress/sql/sqljson_queryfuncs.sql b/src/test/regress/sql/sqljson_queryfuncs.sql index 8d7b225b612..a5d5e256d7f 100644 --- a/src/test/regress/sql/sqljson_queryfuncs.sql +++ b/src/test/regress/sql/sqljson_queryfuncs.sql @@ -450,6 +450,7 @@ SELECT JSON_VALUE(jsonb '{"a": 123}', '$' || '.' || 'a'); SELECT JSON_VALUE(jsonb '{"a": 123}', '$' || '.' || 'b' DEFAULT 'foo' ON EMPTY); SELECT JSON_QUERY(jsonb '{"a": 123}', '$' || '.' || 'a'); SELECT JSON_QUERY(jsonb '{"a": 123}', '$' || '.' || 'a' WITH WRAPPER); +SELECT JSON_QUERY(jsonb '{"a": 123}', ('$' || '.' || 'a' || NULL)::date WITH WRAPPER); -- Should fail (invalid path) SELECT JSON_QUERY(jsonb '{"a": 123}', 'error' || ' ' || 'error'); @@ -460,6 +461,7 @@ SELECT JSON_QUERY(NULL FORMAT JSON, '$'); -- Test non-const jsonpath CREATE TEMP TABLE jsonpaths (path) AS SELECT '$'; SELECT json_value('"aaa"', path RETURNING json) FROM jsonpaths; +SELECT json_value('"aaa"', jsonpaths RETURNING json) FROM jsonpaths; -- Test PASSING argument parsing SELECT JSON_QUERY(jsonb 'null', '$xyz' PASSING 1 AS xy); diff --git a/src/test/regress/sql/subselect.sql b/src/test/regress/sql/subselect.sql index d77588ea91f..c729d6d1970 100644 --- a/src/test/regress/sql/subselect.sql +++ b/src/test/regress/sql/subselect.sql @@ -340,6 +340,17 @@ select * from ( where not exists (select 1 from tenk1 as b where b.unique2 = 10000) ) ss; + +-- +-- Test cases for interactions between PARAM_EXEC, subplans and array +-- subscripts +-- + +-- check that array subscription doesn't conflict with PARAM_EXEC (see #19370) +SELECT (array[1,2])[(SELECT g.i)] FROM generate_series(1, 1) g(i); +SELECT (array[1,2])[(SELECT g.i):(SELECT g.i + 1)] FROM generate_series(1, 1) g(i); + + -- -- Test that an IN implemented using a UniquePath does unique-ification -- with the right semantics, as per bug #4113. (Unfortunately we have @@ -872,6 +883,46 @@ select * from (select 9 as x, unnest(array[1,2,3,11,12,13]) as u) ss where tattle(x, u); +-- +-- check that an upper-level qual is not pushed down if it references a grouped +-- Var whose underlying expression contains SRFs +-- +explain (verbose, costs off) +select * from + (select generate_series(1, ten) as g, count(*) from tenk1 group by 1) ss + where ss.g = 1; + +select * from + (select generate_series(1, ten) as g, count(*) from tenk1 group by 1) ss + where ss.g = 1; + +-- +-- check that an upper-level qual is not pushed down if it references a grouped +-- Var whose underlying expression contains volatile functions +-- +alter function tattle(x int, y int) volatile; + +explain (verbose, costs off) +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; + +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; + +-- if we pretend it's stable, we get different results: +alter function tattle(x int, y int) stable; + +explain (verbose, costs off) +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; + +select * from + (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss + where ss.v; + drop function tattle(x int, y int); -- diff --git a/src/test/regress/sql/triggers.sql b/src/test/regress/sql/triggers.sql index 4e9df63f2ee..ddf42af64ed 100644 --- a/src/test/regress/sql/triggers.sql +++ b/src/test/regress/sql/triggers.sql @@ -2215,6 +2215,10 @@ with wcte as (insert into table1 values (42)) with wcte as (insert into table1 values (43)) insert into table1 values (44); +with wcte as (insert into table1 values (45)) + merge into table1 using (values (46)) as v(a) on table1.a = v.a + when not matched then insert values (v.a); + select * from table1; select * from table2; diff --git a/src/test/regress/sql/tsearch.sql b/src/test/regress/sql/tsearch.sql index fbd26cdba45..dc74aa0c889 100644 --- a/src/test/regress/sql/tsearch.sql +++ b/src/test/regress/sql/tsearch.sql @@ -222,6 +222,7 @@ RESET enable_bitmapscan; DROP INDEX wowidx; +ALTER TABLE test_tsvector SET (parallel_workers = 2); CREATE INDEX wowidx ON test_tsvector USING gin (a); SET enable_seqscan=OFF; diff --git a/src/test/regress/sql/with.sql b/src/test/regress/sql/with.sql index d88d5abb91a..2255befda89 100644 --- a/src/test/regress/sql/with.sql +++ b/src/test/regress/sql/with.sql @@ -1100,16 +1100,26 @@ from int4_tbl; -- -- test for bug #19055: interaction of WITH with aggregates -- --- The reference to cte1 must determine the aggregate's level, --- even though it contains no Vars referencing cte1 -explain (verbose, costs off) +-- For now, we just throw an error if there's a use of a CTE below the +-- semantic level that the SQL standard assigns to the aggregate. +-- It's not entirely clear what we could do instead that doesn't risk +-- breaking more things than it fixes. select f1, (with cte1(x,y) as (select 1,2) select count((select i4.f1 from cte1))) as ss from int4_tbl i4; -select f1, (with cte1(x,y) as (select 1,2) - select count((select i4.f1 from cte1))) as ss -from int4_tbl i4; +-- +-- test for bug #19106: interaction of WITH with aggregates +-- +-- the initial fix for #19055 was too aggressive and broke this case +explain (verbose, costs off) +with a as ( select id from (values (1), (2)) as v(id) ), + b as ( select max((select sum(id) from a)) as agg ) +select agg from b; + +with a as ( select id from (values (1), (2)) as v(id) ), + b as ( select max((select sum(id) from a)) as agg ) +select agg from b; -- -- test for nested-recursive-WITH bug @@ -1350,6 +1360,29 @@ COMMIT; SELECT * FROM bug6051_3; +-- check that recursive CTE processing doesn't rewrite a CTE more than once +-- (must not try to expand GENERATED ALWAYS IDENTITY columns more than once) +CREATE TEMP TABLE id_alw1 (i int GENERATED ALWAYS AS IDENTITY); + +CREATE TEMP TABLE id_alw2 (i int GENERATED ALWAYS AS IDENTITY); +CREATE TEMP VIEW id_alw2_view AS SELECT * FROM id_alw2; + +CREATE TEMP TABLE id_alw3 (i int GENERATED ALWAYS AS IDENTITY); +CREATE RULE id_alw3_ins AS ON INSERT TO id_alw3 DO INSTEAD + WITH t1 AS (INSERT INTO id_alw1 DEFAULT VALUES RETURNING i) + INSERT INTO id_alw2_view DEFAULT VALUES RETURNING i; +CREATE TEMP VIEW id_alw3_view AS SELECT * FROM id_alw3; + +CREATE TEMP TABLE id_alw4 (i int GENERATED ALWAYS AS IDENTITY); + +WITH t4 AS (INSERT INTO id_alw4 DEFAULT VALUES RETURNING i) + INSERT INTO id_alw3_view DEFAULT VALUES RETURNING i; + +SELECT * from id_alw1; +SELECT * from id_alw2; +SELECT * from id_alw3; +SELECT * from id_alw4; + -- check case where CTE reference is removed due to optimization EXPLAIN (VERBOSE, COSTS OFF) SELECT q1 FROM diff --git a/src/test/subscription/t/001_rep_changes.pl b/src/test/subscription/t/001_rep_changes.pl index ca55d8df50d..4fdee085227 100644 --- a/src/test/subscription/t/001_rep_changes.pl +++ b/src/test/subscription/t/001_rep_changes.pl @@ -353,7 +353,8 @@ # Note that the current location of the log file is not grabbed immediately # after reloading the configuration, but after sending one SQL command to # the node so as we are sure that the reloading has taken effect. -my $log_location = -s $node_subscriber->logfile; +my $log_location_pub = -s $node_publisher->logfile; +my $log_location_sub = -s $node_subscriber->logfile; $node_publisher->safe_psql('postgres', "UPDATE tab_full_pk SET b = 'quux' WHERE a = 1"); @@ -363,7 +364,7 @@ $node_publisher->wait_for_catchup('tap_sub'); -my $logfile = slurp_file($node_subscriber->logfile, $log_location); +my $logfile = slurp_file($node_subscriber->logfile, $log_location_sub); ok( $logfile =~ qr/conflict detected on relation "public.tab_full_pk": conflict=update_missing.*\n.*DETAIL:.* Could not find the row to be updated.*\n.*Remote row \(1, quux\); replica identity \(a\)=\(1\)/m, 'update target row is missing'); @@ -435,17 +436,35 @@ 22.22|bar|2), 'update works with dropped subscriber column'); +# Verify that GUC settings supplied in the CONNECTION string take effect on +# the publisher's walsender. We do this by enabling log_statement_stats in +# the CONNECTION string later and checking that the publisher's log contains a +# QUERY STATISTICS message. +# +# First, confirm that no such QUERY STATISTICS message appears before enabling +# log_statement_stats. +$logfile = slurp_file($node_publisher->logfile, $log_location_pub); +unlike( + $logfile, + qr/QUERY STATISTICS/, + 'log_statement_stats has not been enabled yet'); +$log_location_pub = -s $node_publisher->logfile; + # check that change of connection string and/or publication list causes # restart of subscription workers. We check the state along with # application_name to ensure that the walsender is (re)started. # # Not all of these are registered as tests as we need to poll for a change # but the test suite will fail nonetheless when something goes wrong. +# +# Enable log_statement_stats as the change of connection string, +# which is also for the above mentioned test of GUC settings passed through +# CONNECTION. my $oldpid = $node_publisher->safe_psql('postgres', "SELECT pid FROM pg_stat_replication WHERE application_name = 'tap_sub' AND state = 'streaming';" ); $node_subscriber->safe_psql('postgres', - "ALTER SUBSCRIPTION tap_sub CONNECTION '$publisher_connstr sslmode=disable'" + "ALTER SUBSCRIPTION tap_sub CONNECTION '$publisher_connstr options=''-c log_statement_stats=on'''" ); $node_publisher->poll_query_until('postgres', "SELECT pid != $oldpid FROM pg_stat_replication WHERE application_name = 'tap_sub' AND state = 'streaming';" @@ -453,6 +472,16 @@ or die "Timed out while waiting for apply to restart after changing CONNECTION"; +# Check that the expected QUERY STATISTICS message appears, +# which shows that log_statement_stats=on from the CONNECTION string +# was correctly passed through to and honored by the walsender. +$logfile = slurp_file($node_publisher->logfile, $log_location_pub); +like( + $logfile, + qr/QUERY STATISTICS/, + 'log_statement_stats in CONNECTION string had effect on publisher\'s walsender' +); + $oldpid = $node_publisher->safe_psql('postgres', "SELECT pid FROM pg_stat_replication WHERE application_name = 'tap_sub' AND state = 'streaming';" ); @@ -508,13 +537,13 @@ # Note that the current location of the log file is not grabbed immediately # after reloading the configuration, but after sending one SQL command to # the node so that we are sure that the reloading has taken effect. -$log_location = -s $node_publisher->logfile; +$log_location_pub = -s $node_publisher->logfile; $node_publisher->safe_psql('postgres', "INSERT INTO tab_notrep VALUES (11)"); $node_publisher->wait_for_catchup('tap_sub'); -$logfile = slurp_file($node_publisher->logfile, $log_location); +$logfile = slurp_file($node_publisher->logfile, $log_location_pub); ok($logfile =~ qr/skipped replication of an empty transaction with XID/, 'empty transaction is skipped'); diff --git a/src/test/subscription/t/004_sync.pl b/src/test/subscription/t/004_sync.pl index d5eac05a3b3..2c6ae2d023a 100644 --- a/src/test/subscription/t/004_sync.pl +++ b/src/test/subscription/t/004_sync.pl @@ -172,6 +172,12 @@ 'postgres', 'SELECT count(*) = 0 FROM pg_replication_slots'), 'DROP SUBSCRIPTION during error can clean up the slots on the publisher'); +# After dropping the subscription, all replication origins, whether created by +# an apply worker or table sync worker, should have been cleaned up. +$result = $node_subscriber->safe_psql('postgres', + "SELECT count(*) FROM pg_replication_origin_status"); +is($result, qq(0), 'all replication origins have been cleaned up'); + $node_subscriber->stop('fast'); $node_publisher->stop('fast'); diff --git a/src/test/subscription/t/023_twophase_stream.pl b/src/test/subscription/t/023_twophase_stream.pl index e01347ca699..dc629425daa 100644 --- a/src/test/subscription/t/023_twophase_stream.pl +++ b/src/test/subscription/t/023_twophase_stream.pl @@ -429,6 +429,51 @@ sub test_streaming $node_subscriber->safe_psql('postgres', "SELECT count(*) FROM test_tab_2"); is($result, qq(1), 'transaction is committed on subscriber'); +# Test the ability to re-apply a transaction when a parallel apply worker fails +# to prepare the transaction due to insufficient max_prepared_transactions +# setting. +$node_subscriber->append_conf( + 'postgresql.conf', qq( +max_prepared_transactions = 0 +debug_logical_replication_streaming = buffered +)); +$node_subscriber->restart; + +$node_publisher->safe_psql( + 'postgres', q{ + BEGIN; + INSERT INTO test_tab_2 values(2); + PREPARE TRANSACTION 'xact'; + COMMIT PREPARED 'xact'; + }); + +$offset = -s $node_subscriber->logfile; + +# Confirm the ERROR is reported because max_prepared_transactions is zero +$node_subscriber->wait_for_log( + qr/ERROR: ( [A-Z0-9]+:)? prepared transactions are disabled/, + $offset); + +# Confirm that the parallel apply worker has encountered an error. The check +# focuses on the worker type as a keyword, since the error message content may +# differ based on whether the leader initially detected the parallel apply +# worker's failure or received a signal from it. +$node_subscriber->wait_for_log( + qr/ERROR: .*logical replication parallel apply worker.*/, + $offset); + +# Set max_prepared_transactions to correct value to resume the replication +$node_subscriber->append_conf('postgresql.conf', + qq(max_prepared_transactions = 10)); +$node_subscriber->restart; + +$node_publisher->wait_for_catchup($appname); + +# Check that transaction is committed on subscriber +$result = + $node_subscriber->safe_psql('postgres', "SELECT count(*) FROM test_tab_2"); +is($result, qq(2), 'transaction is committed on subscriber after retrying'); + ############################### # check all the cleanup ############################### diff --git a/src/timezone/data/tzdata.zi b/src/timezone/data/tzdata.zi index a7fb52f1968..c56f67c02f6 100644 --- a/src/timezone/data/tzdata.zi +++ b/src/timezone/data/tzdata.zi @@ -1,4 +1,4 @@ -# version 2025b +# version 2025c # This zic input file is in the public domain. R d 1916 o - Jun 14 23s 1 S R d 1916 1919 - O Su>=1 23s 0 - @@ -2951,9 +2951,7 @@ Z America/Tijuana -7:48:4 - LMT 1922 Ja 1 7u -8 1 PDT 1951 S 30 2 -8 - PST 1952 Ap 27 2 -8 1 PDT 1952 S 28 2 --8 - PST 1954 --8 CA P%sT 1961 --8 - PST 1976 +-8 CA P%sT 1967 -8 u P%sT 1996 -8 m P%sT 2001 -8 u P%sT 2002 F 20 diff --git a/src/tools/pgindent/pgindent b/src/tools/pgindent/pgindent index b7d71808924..d14da3f01a9 100755 --- a/src/tools/pgindent/pgindent +++ b/src/tools/pgindent/pgindent @@ -245,14 +245,6 @@ sub pre_indent # Protect wrapping in CATALOG() $source =~ s!^(CATALOG\(.*)$!/*$1*/!gm; - # Treat a CURL_IGNORE_DEPRECATION() as braces for the purposes of - # indentation. (The recursive regex comes from the perlre documentation; it - # matches balanced parentheses as group $1 and the contents as group $2.) - my $curlopen = '{ /* CURL_IGNORE_DEPRECATION */'; - my $curlclose = '} /* CURL_IGNORE_DEPRECATION */'; - $source =~ - s!^[ \t]+CURL_IGNORE_DEPRECATION(\(((?:(?>[^()]+)|(?1))*)\))!$curlopen$2$curlclose!gms; - return $source; } @@ -267,12 +259,6 @@ sub post_indent $source =~ s!^/\* Open extern "C" \*/$!{!gm; $source =~ s!^/\* Close extern "C" \*/$!}!gm; - # Restore the CURL_IGNORE_DEPRECATION() macro, keeping in mind that our - # markers may have been re-indented. - $source =~ - s!{[ \t]+/\* CURL_IGNORE_DEPRECATION \*/!CURL_IGNORE_DEPRECATION(!gm; - $source =~ s!}[ \t]+/\* CURL_IGNORE_DEPRECATION \*/!)!gm; - ## Comments # Undo change of dash-protected block comments diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list index 58606898add..38620a595c1 100644 --- a/src/tools/pgindent/typedefs.list +++ b/src/tools/pgindent/typedefs.list @@ -787,6 +787,7 @@ ExtensibleNodeEntry ExtensibleNodeMethods ExtensionControlFile ExtensionInfo +ExtensionSiblingCache ExtensionVersionInfo FDWCollateState FD_SET @@ -3665,6 +3666,7 @@ gistxlogPageReuse gistxlogPageSplit gistxlogPageUpdate grouping_sets_data +growable_trgm_array gseg_picksplit_item gss_OID_set gss_buffer_desc